MotorPlayer 0.4 - справка по командам

Документация iDM-RS в PDF (откроется в новой вкладке)


Команда nop

Описание: Эта команда ничего не делает

Обязательные аргументы:

Необязательные аргументы:


Команда sleep

Описание: Эта команда приостанавливает скрипт на указанное время

Обязательные аргументы:

  1. Число миллисекунд. Значения меньше или равно 0 игнорируются (приостановка не случается)

Необязательные аргументы:


Команда map

Описание: Эта команда создаёт ассоциацию, при помощи которой можно будет обращаться к мотору в дальнейшнем.

Обязательные аргументы:

  1. Логический ID, который должен быть использован для мотора (это не тот ID, который у мотора на линии MODBUS). Должен быть больше 0.
  2. Фактический ID (это тот ID, который задан у мотора на линии MODBUS). Должен быть на отрезке [1; 247].
  3. Хост шлюза MODBUS TCP/RTU.
  4. Порт, на котором на хосте доступен MODBUS TCP.

Необязательные аргументы:


Команда init

Описание: Инициализирует моторы. Эту команду нужно выполнять после каждого сброса моторов.

Для моторов задаются следующие параметры:

  1. PPR = 51200
  2. Peak current = 2A
  3. Hold current = 25%
  4. Homing direction = clockwise
  5. Homing high speed = 50 rpm
  6. Homing low speed = 20 rpm
  7. Homing acceleration = 5000 ms/1000rpm
  8. Homing deceleration = 5000 ms/1000rpm

Обязательные аргументы:

  1. Список моторов.

Необязательные аргументы:


Команда move

Описание: Задаёт маршрут движения моторов.

Обязательные аргументы:

  1. Список моторов.
  2. Смещение, int32_t.
  3. Скорость в rpm, [1; 65535]

Необязательные аргументы:

  1. Ускорение в ms/1000rpm, [1; 65535]
  2. Замедление в ms/1000rpm, [1; 65535]

Команда start

Описание: Запускает движение по указанному ранее маршруту.

Обязательные аргументы:

  1. Список моторов.

Необязательные аргументы:


Команда repeat

Описание: Команда для повтора действий несколько раз. Короче, примитивный цикл.

Обязательные аргументы:

  1. Имя метки, на которую нужно вернуться. Метка не может быть расположена после repeat.
  2. Число повторов. Если указать 1, то переход не будет выполнен ни разу. Можно использовать переменную. Значение переменной будет скопировано при первом выполнении repeat.

Необязательные аргументы:


Команда mark

Описание: Создаёт метку, которую можно использовать с repeat.

Обязательные аргументы:

  1. Имя метки.

Необязательные аргументы:


Команда homing

Описание: Запускает процесс поиска дома у моторов.

Обязательные аргументы:

  1. Список моторов.

Необязательные аргументы:


Команда stop

Описание: Останавливает моторы.

Обязательные аргументы:

  1. Список моторов.

Необязательные аргументы:

  1. Время остановки, мс, [50; 65535], по умолчанию 50

Команда netlog

Описание: Служебная команда для включения/отключения журналирования передаваемых по MODBUS TCP данных.

Обязательные аргументы:

  1. Включить журналирование сети? 1 = да, 0 = нет.

Необязательные аргументы:


Команда adv_ppr

Описание: Задать новое PPR для моторов.

Обязательные аргументы:

  1. Список моторов
  2. PPR, шагов на оборот, [200; 51200]

Необязательные аргументы:


Команда adv_dir

Описание: Задать новое положительное направление движения моторов.

Обязательные аргументы:

  1. Список моторов
  2. Направление. Либо CW, либо CCW, чувствительно к регистру

Необязательные аргументы:


Команда adv_pin

Описание: Задать назначение вывода GPIO для моторов.

Обязательные аргументы:

  1. Список моторов
  2. Номер GPIO. [1; 7]
  3. Назначение: PL = концевик+; NL = концевик-; HOME = датчик дома; NONE = отключить GPIO

Необязательные аргументы:

  1. Нормальное состояние: NC = нормально замкнут; NO = нормально разомкнут;

Команда adv_current

Описание: Задать пиковый ток для моторов.

Обязательные аргументы:

  1. Список моторов
  2. Ток, [0; 30], 1 у.е. = 0.1 А

Необязательные аргументы:


Команда adv_reset_alarm

Описание: Сбрасывает ошибку моторов.

Обязательные аргументы:

  1. Список моторов

Необязательные аргументы:


Команда adv_reset_factory

Описание: Сбрасывает моторы до заводских настроек.

Обязательные аргументы:

  1. Список моторов
  2. "confirm", чувствительно к регистру, без кавычек. Нужно, чтобы не выполнить команду по ошибке.

Необязательные аргументы:


Команда adv_spin

Описание: Задаёт моторам маршрут в виде бесконечного вращения. Скорость может быть отрицательной.

Обязательные аргументы:

  1. Список моторов
  2. Скорость, != 0, rpm

Необязательные аргументы:

  1. Ускорение, ms/1000rpm, [1; 65535], по умолчанию 200
  2. Замедление, ms/1000rpm, [1; 65535], по умолчанию 200

Команда adv_tcp

Описание: Запускает доступ к выполнению команд при помощи TCP подключения

Обязательные аргументы:

  1. Порт, [1; 65535]

Необязательные аргументы:


Команда adv_pos

Описание: Как move, но с абсолютными координатами)))

Обязательные аргументы:

  1. Примерно как у move, лень описывать, всё равно не используется и добавлена чисто для полноты картины
  2. Есть шанс что эта команда вообще не работает, по-моему я её ни разу не тестировал

Необязательные аргументы:


Команда adv_homing_config

Описание: Задаёт параметры поиска дома для моторов. Для любого необязательного аргумента (кроме Offset) можно указать 0, чтобы не изменять его текущее значение.

Обязательные аргументы:

  1. Список моторов.

Необязательные аргументы:

  1. Homing high speed, rpm, [1; 65535]
  2. Homing low speed, rpm, [1; 65535]
  3. Homing acceleration, ms/1000rpm, [1; 65535]
  4. Homing deceleration, ms/1000rpm, [1; 65535]
  5. Offset, steps

Команда set

Описание: Установить значение переменной.

Обязательные аргументы:

  1. Имя переменной.
  2. Значение переменной.

Необязательные аргументы:


Команда add

Описание: Прибавить значение к переменной.

Обязательные аргументы:

  1. Имя переменной
  2. Значение, которое нужно прибавить

Необязательные аргументы:


Команда sub

Описание: Вычесть значение из переменной.

Обязательные аргументы:

  1. Имя переменной
  2. Значение, которое нужно вычесть

Необязательные аргументы:


Команда mul

Описание: Умножить переменную на значение.

Обязательные аргументы:

  1. Имя переменной
  2. Значение, на которое нужно умножить

Необязательные аргументы:


Команда div

Описание: Целочисленно разделить переменную на значение.

Обязательные аргументы:

  1. Имя переменной
  2. Значение, на которое нужно разделить

Необязательные аргументы:


Команда mod

Описание: Записать в переменную остаток от её деления на значение.

Обязательные аргументы:

  1. Имя переменной
  2. Значение, на которое нужно разделить

Необязательные аргументы:


время 6:30 я очень хочу спать но от кофе уже тошнит