private void Connect_btn_Click(object sender, EventArgs e) { // Try to connect then check connection and throw error if found try { // Setup the NXT Brick _nxt = new NxtBrick(NxtCommLinkType.Bluetooth, Convert.ToByte(Port_txt.Text)) { MotorA = _ar, MotorC = _cr }; _nxt.Connect(); if (_nxt.IsConnected) { _defaultEngine.RecognizeAsync(RecognizeMode.Multiple); Connected_lbl.Visible = true; Port_txt.BackColor = Color.Green; Connect_btn.Enabled = false; Battery_checker.Enabled = true; } } catch (Exception ex) { MessageBox.Show(ex.Message); Connected_lbl.Visible = false; Port_txt.BackColor = Color.Red; // Writes the Exception to the Log WriteToLog(ex.Message); } }
public Motor(INxtBrick nxtBrick, NxtBrick.Motor motor) { Brick = nxtBrick; MotorPort = motor; RegulationMode = NxtBrick.MotorRegulationMode.Idle; }
static void SetupBluetoothConnection() { Console.WriteLine("\n\nEnter your Bluetooth COM-Port (Default: 40)"); byte comport = Convert.ToByte(Console.ReadLine()); brick = new NxtBrick(NxtCommLinkType.Bluetooth, comport); Console.WriteLine("\nBluetooth connection set up at port " + comport + "."); }
internal async Task Attach(NxtBrick brick, SensorPort port) { await Task.Run(() => { this.SensorPort = port; this.brick = brick; }); }
private void Execute(NxtBrick.MotorState state) { // parellelize this slow command Task.Factory.StartNew(() => { Brick.SetMotorState(MotorPort, state); Debug.WriteLine("Motor on Port " + MotorPort.ToString() + ": " + state.Power + "%"); }); }
public RobotEngine() { _brick = new NxtBrick(NxtCommLinkType.Bluetooth, Config.SerialPortNo) { MotorA = new NxtMotor(), MotorB = new NxtMotor(), MotorC = new NxtMotor() }; _motorSync = new NxtMotorSync(_brick.MotorA, _brick.MotorB); }
public Robot() { m_brick = new NxtBrick(NxtCommLinkType.Bluetooth, 3); m_leftMotor = new NxtMotor(); m_rightMotor = new NxtMotor(); m_brick.MotorB = m_leftMotor; m_brick.MotorC = m_rightMotor; m_motors = new NxtMotorSync(m_leftMotor, m_rightMotor); }
static void Main() { Init(); brick = new NxtBrick(NxtCommLinkType.USB, 0); //brick = new NxtBrick(NxtCommLinkType.Bluetooth, 40); var sound = new NxtSoundSensor(); var touch = new NxtTouchSensor(); var sonar = new NxtUltrasonicSensor(); brick.MotorA = new NxtMotor(); brick.MotorC = new NxtMotor(); motorPair = new NxtMotorSync(brick.MotorA, brick.MotorC); brick.Sensor1 = sonar; brick.Sensor3 = touch; brick.Sensor4 = sound; sound.PollInterval = 50; sound.OnPolled += sound_OnPolled; sonar.PollInterval = 50; sonar.ThresholdDistanceCm = 25; sonar.OnPolled += sonar_OnPolled; sonar.OnWithinThresholdDistanceCm += OnWithinThreshold; sonar.ContinuousMeasurementCommand(); touch.PollInterval = 50; touch.OnPressed += OnCollision; brick.Connect(); motorPair.Run(75, 0, 0); Console.WriteLine("Press any key to stop."); Console.ReadKey(); brick.Disconnect(); }
static void SetupUSBConnection() { brick = new NxtBrick(NxtCommLinkType.USB, 0); Console.WriteLine("\nUSB connection set up."); }
internal CommandsBase(NxtBrick brick) { this.brick = brick; }
internal SystemCommands(NxtBrick brick) : base(brick) { }
internal ConnectionCommands(NxtBrick brick) : base(brick) { }
internal DirectCommands(NxtBrick brick) : base(brick) { }
//Brick connection procedure logic private void button_connect_Click(object sender, EventArgs e) { if (!isConnectedToBrick) { byte COMport = byte.Parse(COMportInput.Text); if (RB_McRXE.Checked) { //Create Motor Control NXT Brick and Bluetooth use USB to communicate with it. if (RB_Bluetooth.Checked) { McBrick = new McNxtBrick(NxtCommLinkType.Bluetooth, COMport); } //Create Motor Control NXT Brick, and use USB to communicate with it. if (RB_USB.Checked) { brick = new McNxtBrick(NxtCommLinkType.USB, COMport); } // Create a Motor Control motor. McMotorA = new McNxtMotor(); McMotorB = new McNxtMotor(); McMotorC = new McNxtMotor(); //Synched motors McMotorPair = new McNxtMotorSync(McMotorB, McMotorC); // Attach it to port A of the NXT brick. McBrick.MotorA = McMotorA; McBrick.MotorB = McMotorB; McBrick.MotorC = McMotorC; // Connect to the NXT. McBrick.Connect(); if (!McBrick.IsMotorControlRunning()) { McBrick.StartMotorControl(); } motorControlActive = true; } else { //Create NXT Brick and Bluetooth use USB to communicate with it. if (RB_Bluetooth.Checked) { NxtBrick brick = new NxtBrick(NxtCommLinkType.Bluetooth, COMport); } // Create a NXT brick, and use USB to communicate with it. if (RB_USB.Checked) { NxtBrick brick = new NxtBrick(NxtCommLinkType.USB, COMport); } // Create a motor. motorA = new NxtMotor(); motorB = new NxtMotor(); motorC = new NxtMotor(); // Attach it to port A of the NXT brick. brick.MotorA = motorA; brick.MotorB = motorB; brick.MotorC = motorC; // Connect to the NXT. brick.Connect(); } ConnectedText.Visible = true; isConnectedToBrick = true; } }