/*private void connectViaMonoBrick() * { * var ev3 = new Brick<Sensor, Sensor, Sensor, Sensor>("COM3"); * try * { * ev3.Connection.Open(); * ev3.Mailbox.Send("Race","GO"); * Console.WriteLine("sending ev3 message"); * } * catch (Exception e) * { * Console.WriteLine("Unable to connect"); * Console.WriteLine(e.StackTrace); * Console.WriteLine("Error: " + e.Message); * } * finally * { * Console.WriteLine("closing ev3 connection"); * ev3.Connection.Close(); * } * }*/ public void sendEV3Message(string header, string message) { if (header == "Race") { Console.WriteLine("trying to send message: " + message + " With header: " + header); } if (mEV3Messenger.IsConnected) { mEV3Messenger.SendMessage(header, message); Console.WriteLine(mPlayerId + " " + header + " " + message); } }
//method public void SendInstruction(string order) { // Send a message to the Brick with title: MESSAGE and the message if (messenger.SendMessage("MESSAGE", order)) { //update output box EV3Message message = messenger.ReadMessage(); if (message != null) { status = message.ValueAsText.Split(); switch (status[3]) { default: status[3] = "Runway 1"; break; case "2": status[3] = "Pick-up Zone"; break; case "3": status[3] = "Runway 2"; break; case "4": status[3] = "Drop-off Zone"; break; case "5": status[3] = "Runway 3"; break; } // output list clear and update outputlistBox.Items.Clear(); outputlistBox.Items.Add("AGV: " + status[0]); outputlistBox.Items.Add("Load: " + status[1]); outputlistBox.Items.Add("Position: " + status[2]); outputlistBox.Items.Add("# of proxy triggers: " + status[3]); //outputlistBox.TopIndex = outputlistBox.Items.Count - 1; // no need for this //button disabling & enabling to default state btnStart.Enabled = true; btnPause.Enabled = false; btnStop.Enabled = false; } } }
private void inputButton_Click(object sender, EventArgs e) { string txtMsg = inputTextBox.Text; // Make sure a message has been typed if (!String.IsNullOrWhiteSpace(txtMsg)) { // Send a message to the Brick with title: MESSAGE and the message if (messenger.SendMessage("MESSAGE", txtMsg)) { inputTextBox.Text = ""; MessageBox.Show("The message has been send to the Brick"); } else { MessageBox.Show("Unable to send the message to the Brick. Please try again."); } } else { MessageBox.Show("Please type a message in the above textbox for the Brick"); } }
private void button2_Click(object sender, EventArgs e) { messenger.SendMessage("NumberMailbox", 2); messenger2.SendMessage("NumberMailbox", 2); }
private void sendMessageButton_Click(object sender, EventArgs e) { if (!messenger.IsConnected) { MessageBox.Show("Not connected."); return; } string mailboxTitle = mailboxTitleTextBox.Text; string message = messageTextBox.Text; if (mailboxTitle == "") { MessageBox.Show("No mailbox title entered. Please enter a mailbox title."); return; } if (message == "") { MessageBox.Show("No message entered. Please enter a message."); return; } switch (messageTypeComboBox.Text) { case "Text": { messenger.SendMessage(mailboxTitle, message); } break; case "Number": { float numberMessage; if (float.TryParse(message, out numberMessage)) { messenger.SendMessage(mailboxTitle, numberMessage); } else { MessageBox.Show("Please enter a valid single precision floating point number (float)."); } } break; case "Logic": { bool logicMessage; if (bool.TryParse(message, out logicMessage)) { messenger.SendMessage(mailboxTitle, logicMessage); } else { MessageBox.Show("Please enter a valid logic value (\"True\"/\"False\")."); } } break; default: MessageBox.Show("Unknown message type."); break; } }
private void button2_Click(object sender, EventArgs e) { messenger.SendMessage("MESSAGE", "stop"); }
private void MessageTimer_Tick(object sender, EventArgs e) { lboxPlayers.Items.Refresh(); labPlayerName.Content = ((Player)lboxPlayers.Items[lboxPlayers.SelectedIndex]).Name; labPlayerScore.Content = ((Player)lboxPlayers.Items[lboxPlayers.SelectedIndex]).Score.ToString(); labJackScore.Content = ((Player)lboxPlayers.Items[lboxPlayers.Items.Count - 1]).Score.ToString(); //Get the incoming messages // Get the messages with 1 sec interval if (ev3Messenger.IsConnected) { EV3Message message = ev3Messenger.ReadMessage(); if (message != null) { if (message.MailboxTitle == "Finished") { if (message.ValueAsLogic) { this.IsEnabled = true; this.Tag = "0"; } } if (message.MailboxTitle == "CardValue1") { val1 = message.ValueAsNumber; } if (message.MailboxTitle == "CardValue2" && val1 != 0) { #region get card value val2 = message.ValueAsNumber; string[] cardColors = new string[2]; float ActualValue = 0; //Color values int valueBlack = 0; int valueBlue = 6; int valueGreen = 11; int valueRed = 16; if (val1 >= valueBlack && val1 < valueBlue) { cardColors[0] = "Black"; } // Black else if (val1 >= valueBlue && val1 < valueGreen) { cardColors[0] = "Blue"; } // Blue else if (val1 >= valueGreen && val1 < valueRed) { cardColors[0] = "Green"; } // Green else if (val1 >= valueRed && val1 <= 100) { cardColors[0] = "Red"; } // Red if (val2 >= valueBlack && val2 < valueBlue) { cardColors[1] = "Black"; } // Black else if (val2 >= valueBlue && val2 < valueGreen) { cardColors[1] = "Blue"; } // Blue else if (val2 >= valueGreen && val2 < valueRed) { cardColors[1] = "Green"; } // Green else if (val2 >= valueRed && val2 <= 100) { cardColors[1] = "Red"; } // Red // Zwart : 0 - 5 // Blauw : 6 - 12 // Groen : 13 - 25 // Rood : 26-100 if (cardColors[0] == "Blue" && cardColors[1] == "Blue") { ActualValue = 11; } else if (cardColors[0] == "Green" && cardColors[1] == "Green") { ActualValue = 5; } else if (cardColors[0] == "Black" && cardColors[1] == "Black") { ActualValue = 8; } else if (cardColors[0] == "Red" && cardColors[1] == "Red") { ActualValue = 10; } else if (cardColors[0] == "Blue" && cardColors[1] == "Green" || cardColors[1] == "Blue" && cardColors[0] == "Green") { ActualValue = 2; } else if (cardColors[0] == "Black" && cardColors[1] == "Blue" || cardColors[1] == "Black" && cardColors[0] == "Blue") { ActualValue = 3; } else if (cardColors[0] == "Blue" && cardColors[1] == "Red" || cardColors[1] == "Blue" && cardColors[0] == "Red") { ActualValue = 4; } else if (cardColors[0] == "Black" && cardColors[1] == "Green" || cardColors[1] == "Black" && cardColors[0] == "Green") { ActualValue = 6; } else if (cardColors[0] == "Green" && cardColors[1] == "Red" || cardColors[1] == "Green" && cardColors[0] == "Red") { ActualValue = 7; } else if (cardColors[0] == "Black" && cardColors[1] == "Red" || cardColors[1] == "Black" && cardColors[0] == "Red") { ActualValue = 9; } //MessageBox.Show(ActualValue.ToString() + "\n 1:" + val1.ToString() + "\n 2:" + val2.ToString()); ev3Messenger.SendMessage("Gelezen", "True"); val1 = 0; val2 = 0; #endregion if (this.Tag.ToString() == "1") { ((Player)lboxPlayers.Items[playerTurn]).Cards.Add(ActualValue); if (playerTurn == lboxPlayers.Items.Count - 1) { playerTurn = 0; } else { playerTurn++; } lboxPlayers.Items.Refresh(); Thread.Sleep(1000); } else { ((Player)lboxPlayers.Items[lboxPlayers.SelectedIndex]).Cards.Add(ActualValue); lboxPlayers.Items.Refresh(); if (((Player)lboxPlayers.Items[lboxPlayers.SelectedIndex]).Dealer == true) { JacksTurn(((Player)lboxPlayers.Items[lboxPlayers.SelectedIndex])); } } //read card in C# ev3Messenger.SendMessage("Gelezen", "True"); if (((Player)lboxPlayers.Items[playerTurn]).Score >= 21) { butHit.IsEnabled = false; } } if (message.MailboxTitle == "CardReady") { } } } }
public static void SendMessage(string title, string value) { messenger.SendMessage(title, value); }
private void button1_Click_1(object sender, EventArgs e) { messenger.SendMessage("STATUS", "start"); }