Содержание
demo_em2rs — демонстрационная кнофигурация драйвера шагового двигателя.
Документация: worksheet.
EM2RS — Драйвер шагового двигателя EM2RS-522 компании Leadshine
Драйвер разработан с использованием библиотеки NetLibrary и использует клиент &ModbusProxy в котором реализован протокол приемо-передачи modbus.
Задачи драйвера:
*);**);***);
*Единица измерения задается на этапе конфигурирования - указывается в генераторе em2rs_devices.cmd, в таблице :EM2RSDevices, значения Unit и SpeedUnit.
**В обычном режиме окно настройки параметров (EM2RS.Dx.PARAM) скрыто от пользователя. Оно доступно через диалог "Окна/Выбор окна" или клавиша F6; в диалоге "Инструменты", доступном по клику на метке девайса в окне управления контроллером; либо по кнопке "EM2RS.PARAM: Открыть окно диагностики" в панели команд ToolBar (Ctrl+Alt+1), окна управления контроллером.
***Подробности смотри в документации, раздел 5.4. Параметры Modbus RTU.
Для конфигурирования драйвера EM2RS используйте файл-генератор em2rs_devices.cmd или em2rs_devices.sh.
В генераторе описывается таблица устройств :EM2RSDevices.
В ней указываются следующие параметры:
_;В зависимости от требуемого типа подключения (COM/TCP) указываются параметры:
либо
Таблица логических портов MODBUS задается в секции [&ModbusProxy.StartupScript] файла em2rs_devices.cfg. Присутствие данного файла в DAQ-системе обязательно.
Для использования драйвера EM2RS в целевой DAQ-системе, необходимо скопировать файл-генератор em2rs_devices.cfg в каталог Config DAQ-системы, сконфигурировать таблицу устройств и запустить файл на исполнение. После успешного выполнения генератора, в каталог Config будут добавлены файлы:
В каталог Circuits будет добавлен файл em2rs_devices_link.crc с описанием сенсоров:
Для установки режима работы с обратной связью необходимо:
Драйвер EM2RS имеет функционал преобразования шагов электродвигателя в физические величины согласно калибровке: как линейной, так и нелинейной. Подключение калибровки происходит в файле em2rs_devices_hdw.cfg в секции описания драйвера:
Calibrations = 1
Calibration#0 = ..\Calibr\linear.CAL Step(st) Position(mm) Z SubZ Line 0 100В драйвер встроена готовая нелинейная калибровка для домкрата SX01-130-003.
Использовать со следующими параметрами:
Управление домкратом
Достигнут лимит калибровкиТакое случается в основном на нелинейной калибровке, когда используется обратное преобразование калибровки invCalibr. Если такая проблема встретилась на линейной калибровке - увеличьте значение invCalibrLimit, в остальных случаях см. далее.
function invCalibr(n:Integer; y,z,a,b:Real):Real; - функция обратной калибровки по отношению к calibr(n,x,z). Параметры a,b задают диапазон для возможных значений x (a<=x<=b). При удачном расчете функция возвратит такое значение x, что для него calibr(n,x,z)=y. При неудачном расчете (неверные входные параметры) функция возвратит
_NaN. Функция может оказаться ресурсоемкой (она связана с решением уравнения итерационным методом), поэтому вызавать ее очень часто не стоит.
Диапазон работы функции ограничен, так как бывают моменты когда функция находит несколько значений x (в результате _NaN). Для нелинейных калибровок рекомендую ставить значение invCalibrLimit равное максильманому значению калибровки +40%
При назначении на любой DI режима "CCW ручное управление" устройство выдает неправильный статус своей работы. Проблема устройства, то есть не решаема, такое проявляется только на DM2C-RS556. Замените устройство на EM2RS или CS2RS, если хотите использовать данную функцию.
Для именования кривых, тегов, сенсоров, окон и других программных объектов используются следующие соглашения о наименовании:
Система:
EM2RS Название
Подсистема:
D1 - EM2RS motor 1
D2 - EM2RS motor 2
Параметры:
POLLRATE.RX - Polling rate (Receive), Hz
POLLRATE.TX - Polling rate (Transmit), Hz
ERROR.COUNT - Error counter
ENABLE -
PULSE - Pulse/Revolution
CTRLMODE - Control Mode (CS2RS)
MOTDIRECT - Motor Direction
POSERROR - Allowed max pos follow error *
FORCED - Forced enable by software *
POSLOOPKP - Position loop Kp *
VELLOOPKI - Velocity loop Ki *
VELLOOPKP - Velocity loop Kp *
POSLOOPKPH - Position loop KpH *
CMDTIME - Command filter time *
VELOTOC - Vel swtch pnt: O to C loop *
VELCTOO - Vel swtch pnt: C to O loop *
DELAYOTOC - Delay of O to C loop *
DELAYCTOO - Delay of C to O loop *
CFGINPUT1 - Input port DI1
CFGINPUT2 - Input port DI2
CFGINPUT3 - Input port DI3
CFGINPUT4 - Input port DI4
CFGINPUT5 - Input port DI5
CFGINPUT6 - Input port DI6
CFGINPUT7 - Input port DI7
CFGOUTPUT1 - Output port DO1
CFGOUTPUT2 - Output port DO2
CFGOUTPUT3 - Output port DO3
ALRMDETECT - Alarm detection selection
DIST2SEND - Dist. 2send "In Pos" Out sign
BUSVOLT - Bus Voltage
DISTATUS - Digital Input Status
DOSTATUS - Digital Output Status
PEAKCUR - Peak Current
HOLDINCLSD - % of hold curr in closed-loop
HOLDINOPEN - % of hold curr in open-loop
BAUDRATE - Baudrate
ADDRESS - RS485 ID
RS485TYPE - Data type selection
STBCURPER - Standby Current Percentage
JOGVEL - JOG Velocity
JOGINTER - Interval
JOGRUNTIME - Running times
JOGACCDEC - Acc/Dec. time
SOFTWARE - Version Information
FIRMWARE - Firmare Version
ENCODERES - Encoder resolution
MOTSTATUS - Motion Status
CTRLWORD - Control Word
SAVEWORD - Save parameter status word
CURALARM - Current alarm
PRCONTROL - PR control register
TRIGGER - Trigger register
SOFTLIMPOS - Software limit positive
SOFTLIMNEG - Software limit positive
HOMINGMODE - Homing mode
AFTERHOMING - Move to specified location after homing
HOMHIGHVEL - Homing hight velocity
HOMLOWVEL - Homing low velocity
HOMINGACC - Homing Acc
HOMINGDEC - Homing Dec
LIMSTOPTIME - Limit stop time
ESTOPTIME - E-STOP time
ACTPOS - Actual position
MOTPATH0 - Motion of path 0
POSITION - $6202 Position
SPEED - Velocity
ACCELERAT - Acc
DECCELERAT - Dec
Например:
EM2RS.D1.ENABLE - Ток в обмотках
EM2RS.D1.SPEED - Скорость
EM2RS Copyright (c) 2001-2024 DaqGroup daqgroup@mail.ru.
CRW-DAQ Copyright (c) 2001-2024 Alexey Kuryakin daqgroup@mail.ru.