Exemple #1
0
        /// <summary>
        /// Устанавливает в конструктивные параметры <see cref="DesignParameters"/> новое положения плеча <paramref name="leverType"/> исходя из
        /// текущего положения и количества импульсов <paramref name="stepsCount"/>.
        /// </summary>
        /// <param name="leverType"></param>
        /// <param name="stepsCount"></param>
        public void SetNewLeverPosition(LeverType leverType, long stepsCount)
        {
            var lever      = GetRobotLeverByType(leverType);
            var newABvalue = PulseCalculation.GetNewAB(lever, stepsCount);

            lever.AB = newABvalue;
        }
Exemple #2
0
        /// <summary>
        /// Возвращает значение координат X (<paramref name="x"/>) и Y(<paramref name="y"/>) при перемещении плеча <paramref name="type"/>
        /// от его текущего положения на заданное количестве импульсов <paramref name="stepsCount"/>.
        /// </summary>
        public void GetXY(LeverType type, long stepsCount, out double x, out double y)
        {
            if (type == LeverType.Horizontal)
            {
                throw new ArgumentException();
            }

            var newABvalue = PulseCalculation.GetNewAB(GetRobotLeverByType(type), stepsCount);

            var lever1Ab = type == LeverType.Lever1 ? newABvalue : DesignParameters.Lever1.AB;
            var lever2Ab = type == LeverType.Lever2 ? newABvalue : DesignParameters.Lever2.AB;

            GetXYByABValues(lever1Ab, lever2Ab, out x, out y);
        }
Exemple #3
0
 /// <summary>
 /// Возвращает значение координаты Z при перемещении каретки робота от
 /// его текущего положения на заданное количестве импульсов <paramref name="stepsCount"/>.
 /// </summary>
 public double GetZ(long stepsCount)
 {
     return(PulseCalculation.GetNewAB(DesignParameters.HorizontalLever, stepsCount));
 }
Exemple #4
0
 /// <summary>
 /// Возвращает новое положения плеча <paramref name="leverType"/> исходя из текущего положения и
 /// количества импульсов <paramref name="stepsCount"/>.
 /// </summary>
 public double GetNewLeverPosition(LeverType leverType, long stepsCount)
 {
     return(PulseCalculation.GetNewAB(GetRobotLeverByType(leverType), stepsCount));
 }