Ejemplo n.º 1
0
        /// <summary>
        /// Depreciated, replaced by TurnByPid
        /// </summary>
        /// <param name="d"></param>
        /// <param name="tr"></param>
        /// <param name="gear"></param>
        public void TurnBy(int d, int tr, byte gear)
        {
            if (gear > 0)
            {
                SetGear(gear);
            }
            int degrees   = d;
            int turnRate  = tr == 0 ? defaultTurnRate : tr;
            int direction = Math.Sign(degrees);

            SetTurn(direction * turnRate);
            positionSensor.StartCheckingAngle(degrees, turnTokenSource.Token);
            turnResetEvent.WaitOne();
            SetTurn(0);
            turnTokenSource = new CancellationTokenSource();
        }