public MotionControlCommand(byte vehicleNumber, eMoveDirection moveDirection, eSpeed speed, eLogicalDirection logicalDirection = eLogicalDirection.LogicalGo, byte movementTime = 0x00) : base(eAgvCommandWord.MotionControl, vehicleNumber) { DNHead = vehicleNumber; MoveDirection = moveDirection; Speed = speed; LogicalDirection = logicalDirection; MovementTime = movementTime; Check = (byte)(CommandWord + MoveDirection + (byte)Speed + (byte)LogicalDirection + MovementTime + Data5 + Data6 + Data7 + Data8 + Data9 + Data10 + Data11 + Data12 + Data13 + Data14 + Data15 + Data16); }
#pragma warning restore 1591 /// <summary> /// Converts the Speed option into a string. /// </summary> /// <param name="speed">Speed option to convert</param> /// <returns>Converted string</returns> public static string SpeedToString(eSpeed speed) { switch (speed) { case eSpeed.None: return ""; case eSpeed.Slow: return "slow"; case eSpeed.Normal: return "normal"; case eSpeed.Fast: return "fast"; } throw new ArgumentException(string.Format("Speed has an invalid value ({0}).", speed.ToString())); }