Beispiel #1
0
        public void ChangeColor(SpheroColor color)
        {
            var currentTime = DateTime.Now;
            var deltaTime   = currentTime - _lastChangeTime;

            if (deltaTime.TotalMilliseconds > 100)
            {
                _colorLock      = false;
                _lastChangeTime = currentTime;
                //_robot.SetRGBLED(255, 255, 255);
            }

            if (_colorLock)
            {
                return;
            }

            if (color == SpheroColor.RED)
            {
                _robot.SetRGBLED(255, 0, 0);
                _lastChangeTime = currentTime;
                _colorLock      = true;
            }
            else if (color == SpheroColor.GREEN)
            {
                _robot.SetRGBLED(0, 255, 0);
                _lastChangeTime = currentTime;
                _colorLock      = true;
            }
            else
            {
                //_robot.SetRGBLED(255, 255, 255);
                _colorLock = false;
            }
        }
Beispiel #2
0
        //! @brief  when a robot is connected, get ready to drive!
        private void OnRobotConnected(object sender, Robot robot)
        {
            Debug.WriteLine(string.Format(kSpheroConnected, robot));
            //ConnectionToggle.IsOn = true;
            //ConnectionToggle.OnContent = "Connected";
            SpheroConnected = true;
            m_robot.SetRGBLED(255, 255, 255);
            SpheroName = string.Format(kSpheroConnected, robot.BluetoothName);

            m_robot.SensorControl.Hz = 10;
            m_robot.SensorControl.GyrometerUpdatedEvent     += OnGyrometerUpdated;
            m_robot.SensorControl.AccelerometerUpdatedEvent += OnAccelerometerUpdated;
            //m_robot.CollisionControl.StartDetectionForWallCollisions();
            //m_robot.CollisionControl.CollisionDetectedEvent += OnCollisionDetected;
        }
Beispiel #3
0
        //! @brief  when a robot is connected, get ready to drive!
        private void OnRobotConnected(object sender, Robot robot)
        {
            SpheroName = string.Format(kSpheroConnected, robot.BluetoothName);
            Debug.WriteLine(SpheroName);
            m_robot = (Sphero)robot;
            ConnectionToggle.IsOn      = true;
            ConnectionToggle.OnContent = "Connected";
            SpheroConnected            = true;
            m_robot.SetRGBLED(255, 255, 255);
            InitializeSensorReading.IsEnabled = true;

            m_robot.SensorControl.Hz = 15;
            Debug.WriteLine("SensorControl Hz Set");
            //m_robot.CollisionControl.StartDetectionForWallCollisions();
            //m_robot.CollisionControl.CollisionDetectedEvent += OnCollisionDetected;
        }
Beispiel #4
0
 //Начальное состояние робота. Он зеленый и неподвижно стоит
 private void SetRobotDefault()
 {
     m_robot.SetHeading(0);
     m_robot.SetRGBLED(0, 255, 0);
     m_robot.Roll(0, 0);
 }
Beispiel #5
0
 //Начальное состояние робота. Он зеленый и неподвижно стоит
 private void SetGreenColor()
 {
     m_robot.SetHeading(0);
     m_robot.SetBackLED(1.0f);
     m_robot.SetRGBLED(0, 255, 0);
 }