В статье представлено техническое решение по управлению моторизованными приводами с шаговыми двигателями. Приведено схемное решение блока управления с применением контроллеров шаговых двигателей серии OSM и промышленного программируемого реле ПР200 с управлением по интерфейсу RS-485.
В оптических системах, а также в оптических трактах лазерных систем всегда можно встретить: линейные трансляторы, моторизованные держатели зеркал, моторизованные приводы. В вышеуказанных устройствах присутствуют шаговые двигатели, которыми необходимо управлять. В общем случае задача по управлению шаговым электродвигателем сводится к задаче коммутации его обмоток для вращения вала в нужном направлении и с нужной частотой (скоростью). Целесообразно применить готовое решение – контроллер шагового двигателя – КШД. Фирмы, реализующие на рынке шаговые двигатели и устройства, в которых присутствуют шаговые двигатели, как правило, предлагают к ним КШД со стандартными сетевыми интерфейсами управления: RS-485, CAN, USB, PROFIBUS, Ethernet и пр.
Рассмотрим конкретный пример реализации управления моторизованным приводом 8CMA28-10 с шаговым двигателем для управления затворами элементов оптических систем. Данные затворы могут быть установлены перед видеокамерами, юстировочными лазерами, измерителями мощности лазерного излучения и т.д. для их защиты при работе в тракте мощного лазера.
На рис. 1 приведена принципиальная схема и внешний вид моторизованного привода типа 8CMA28-10 (далее 8CMA28-10).

Рис. 1. Принципиальная схема и внешний вид моторизованного привода типа 8CMA28-1
С его техническими характеристиками можно ознакомиться на сайте [1]. Составная часть данного привода – шаговый двигатель типа 28. Рабочая температура 8CMA28-10 от +5 до +35°С. Затвор имеет два состояния открыто/закрыто. В 8CMA28-10 в состоянии «открыто» включается ключ SW1, шток при этом максимально выдвинут из корпуса. Соответственно в состоянии «закрыто» включается ключ SW2, шток при этом втянут в корпус 8CMA28-10. Автор не будет приводить конструкцию затвора. Самое простое и незатейливое, что можно придумать, – это через рычаг или систему рычагов 8CMA28-10 должен открывать (закрывать) шторку.
На рис. 2 приведена принципиальная схема блока управления для работы с моторизованным приводом 8CMA28-10 с применением промышленного программируемого реле ПР200.

Рис. 2. Принципиальная схема блока управления
8CMA28-10 размещён в обогреваемом модуле. При температуре ниже +10°С автоматически включается подогрев. Принципиальная схема модуля обогрева приведена на рис. 3.

Рис. 3. Принципиальная схема модуля обогрева
Два плоских нагревателя EK1, EK2 и датчик температуры RK1 расположены на корпусе 8CMA28-10, внутри кожуха. К соединителям ХР1, ХР2 и ХР3 модуля обогрева подключаются соответственно к соединителям ХS3, XS2, XS1 блока управления.
Шаговый двигатель 28 из состава 8CMA28-10 подключён к КШД типа OSM-17RА. С его техническими характеристиками можно ознакомиться на сайте [2]. Данный КШД предназначен для управления шаговыми двигателями небольшой и средней мощности. Он работает с 4-, 6-, 8-выводными шаговыми двигателями с током обмоток до 1,7 А в модификации 17RA и соответственно 4,2 А в модификации 42RA. КШД реализует несколько режимов работы. В режиме контроллера возможно управление по одному из двух типов интерфейса: RS-485 или RS-232. Данный КШД поддерживает протокол Modbus RTU. На рис. 4 приведён внешний вид КШД OSM-17RA.

Рис. 4. Внешний вид КШД OSM-17RA
В устройстве для управления КШД OSM-17RA задействовано программируемое реле ОВЕН ПР200 (далее ПР–200). ПР200 широко применяются для построения автоматизированных систем управления при решении задач локальной автоматизации. Внешний вид ПР200 приведён на рис. 5.

Рис. 5. Внешний вид реле ПР200
Прибор программируется в среде OwenLogic на языке FBD (очень напоминает язык CFC среды CODESYS V3). Пользовательская программа записывается в энергонезависимую флеш-память. Более подробно работа ПР200 приведена в [3]. Прибор изготавливается в различных модификациях и поддерживает следующие функции:
- работа по программе, записанной в память;
- работа в сети RS-485 по протоколу Modbus RTU / Modbus ASCII в режиме Master или Slave;
- обработка входных сигналов от датчиков;
- управление подключёнными устройствами с помощью дискретных или аналоговых сигналов;
- отображение данных на ЖКИ;
- ввод и редактирование данных с помощью кнопок на лицевой панели.
ПР-200 отвечает требованиям по устойчивости к воздействию помех в соответствии с ГОСТ 30804.6.2–2013. Устойчив к прерываниям, провалам и выбросам напряжения питания:
- для переменного тока в соответствии с требованиями ГОСТ 30804.4.11–2013 (степень жёсткости PS2);
- для постоянного тока в соответствии с требованиями ГОСТ IEC 61131–2–2012 – длительность прерывания напряжения питания до 10 мс включительно, длительность интервала от 1 с и более.

Таблица 1. Функциональное назначение дискретных и аналоговых входов реле ПР200
В табл. 2 приведено функциональное назначение дискретных выходов реле ПР200 в устройстве.

Таблица 2. Функциональное назначение дискретных выходов реле ПР200
Кнопки S1–S4 (без фиксации) имеют следующее функциональное назначение:
- S1 (ОТКРЫТЬ) – открывает затвор в ручном режиме, запускает работу затвора в автоматическом режиме;
- S2 (СТОП/СБРОС) – стоп, остановка затвора;
- S3 (ЗАКРЫТЬ) – закрывает затвор в ручном режиме, запускает работу затвора в автоматическом режиме;
- S4 (автоматический (демонстрационный) режим работы) – перевод устройства в автоматический режим работы. Далее для продолжения работы необходимо нажать кнопку S1 (либо S3). Начинаются бесконечные циклы закрывания и открывания затвора. Конечно, интерфейс управления ПР200 позволяет реализовать управление с кнопок на его лицевой панели, но выносные кнопки S1–S4 и индикаторы Н1–Н3 задействованы для более оперативного управления устройством.

Рис. 6. Скриншот управляющей программы для управления 8CMA28-10 в среде OWEN Logic
В табл. 3 приведены сетевые переменные, задействованные в OWEN Logic для обмена по протоколу Modbus RTU между 8CMA28-10 и КШД. Назначение бит в регистре Inputs приведено в табл. 4.

Таблица 3. Сетевые переменные, задействованные в OWEN Logic для обмена по протоколу Modbus RTU

Таблица 4. Назначение бит в регистре Inputs
В сети, по протоколу Modbus RTU, ПР200 работает в режиме Master, КШД работает в режиме Slave. Модуль управления шаговым двигателем в составе 8CMA28-10, в среде OWEN Logic на рис. 6 выполнен на базе следующих элементов: макросов SEL4-2BUL1 и EXTRACT161, генератора прямоугольных импульсов BLINK1, таймеров с задержкой включения TON1–TON3, RS-триггеров с приоритетом выключения RS1–RS6, тернарной операции сравнения SEL, а также элементов 2ИЛИ, 2И и НЕ.
В работе устройства предусмотрены два режима работы: ручной и автоматический (демонстрационный режим работы затвора). Рассмотрим ручной режим. После подачи питания на устройство, при инициализации, в сетевые переменные Current, Mikrostep, Sleep_Current, Speed, Steps_Number загружаются соответствующие числовые значения, которые определяются параметрами конкретного затвора. В сетевую переменную Enable записывается число 0 (двигатель обесточен). На выходе регистра RS5 устанавливается лог. 0, которая поступает на вход V1 макроса SEL4-2BUL1.
Это значит, что в данном макросе сигнал со входа С1-1 поступает на выход С1, а сигнал со входа С2-1 поступает на выход С1.
При нажатии на кнопку S1 «ОТКР» сигнал лог. 1 от S1 проходит через макрос SEL4-2BUL1 и поступает на вход S триггера RS1, тем самым устанавливая на его выходе лог. 1 и лог. 1 на выходе триггера RS2. При этом в сетевую переменную Enable записывается число 1 (двигатель включён). Дальше запускается таймер с задержкой включения TON1, который через 2 с устанавливает выход RS1 в лог. 0 (сбрасывает триггер RS1). Триггеры RS3 и RS4 устанавливается в лог. 0. При этом в сетевую переменную Сommand записывается номер команды 0х09 (движение до срабатывания датчика, подключённого ко входу In1 КШД).
В сетевую переменную Direction записывается 0. Далее начинается работа шагового двигателя в составе привода. Затвор открывается. Скорость открывания определяется параметрами при инициализации. По достижении 8CMA28-10 крайнего положения включается ключ SW1, открывается транзистор VT2, загорается индикатор HL2, лог. 0 поступает на вход D.in1. Это значит, устанавливается в 0, бит In1 в регистре Inputs. В программе биты из входного регистра Inputs читает макрос EXTRACT161. Бит In1 инвертируется в выходной булевской переменной In1 inver. Данный бит через элемент ИЛИ запускает модуль включения заданной длительности ТР1, который через 0,5 с с момента запуска устанавливает на выходе RS2 лог. 0. Соответственно в сетевую переменную Enable записывается число 0 (двигатель обесточен). Затвор – остановлен.
При нажатии на кнопку S2 «ЗАКР» сигнал логической 1 от S2 так же проходит через макрос SEL4-2BUL1 и поступает на вход S триггера RS1. В итоге, в сетевую переменную Enable записывается число 1 (двигатель включён). При этом в сетевую переменную Сommand записывается номер команды 0хА (движение до срабатывания датчика, подключённого ко входу In2 КШД).
В сетевую переменную Direction записывается 1 (противоположное вращение вала шагового двигателя). Далее начинается работа шагового двигателя в составе привода. Затвор закрывается. По достижении 8CMA28-10 крайнего положения включается ключ SW2, открывается транзистор VT1, загорается индикатор HL1, лог. 0 поступает на вход D.in2. Это значит, устанавливается в 0, бит In2 в регистре Inputs. Бит In2 инвертируется в выходной булевской переменной In2 inver. Данный бит через элемент ИЛИ запускает модуль включения заданной длительности ТР1, который через 0,5 с с момента запуска устанавливает на выходе RS2 лог. 0. Соответственно в сетевую переменную Enable записывается число 0 (двигатель обесточен). Затвор – остановлен.
При нажатии на кнопку S4 «АВТ» устройство переходит в автоматический (демонстрационный) режим. При этом загорается индикатор Н3 «Авт. режим». Далее необходимо нажать на кнопку S1 «ОТКР» либо на S2 «ЗАКР». Начинаются бесконечные циклы открывания-закрывания, закрывания-открывания и т.д. Рассмотрим подробнее работу в данном режиме.
После нажатия на кнопку S4 «АВТ» на выходе триггера RS5 устанавливается лог. 1, которая поступает на вход V1 макроса SEL4-2BUL1. Это значит, что в данном макросе сигнал со входа С1-2 поступает на выход С1, а сигнал со входа С2-2 поступает на выход С1. Далее при нажатии на кнопку S1 «ОТКР» начинаются процедуры аналогичные, как при ручном режиме. При этом в сетевые переменные Сommand, Direction, Enable записываются соответственно числа 0х09, 0, 1. Далее начинается работа шагового двигателя в составе привода. Затвор открывается. По достижении 8CMA28-10 крайнего положения № 1 (затвор открыт) устанавливается в 1 бит In1 inver, который устанавливает лог. 0 на выходе регистра RS2 и лог. 1 на выходе регистра RS7. То есть сначала шаговый двигатель останавливается, а потом запускается процедура закрывания затвора. По достижении 8CMA28-10 крайнего положения № 2 (затвор закрыт) устанавливается в 1 бит In2 inver, который устанавливает лог. 0 на выходе регистра RS2 и лог. 1 на выходе регистра RS6. То есть опять сначала шаговый двигатель останавливается (обесточивается), а потом запускается процедура открывания затвора и т.д. Вышеуказанный цикл может повторяться бесконечно.
Для остановки затвора во всех режимах необходимо нажать кнопку S3 «Стоп/сброс».
Система нагрева выполнена на базе макросов (Pt100)1 и 2PosHisReg1. Макрос 2PosHisReg1 представляет собой двухпозиционный регулятор, в котором только нужно задать уставку SP и гистерезис Delta. Датчик температуры RK1 подключается к аналоговому входу AI1 и далее к входу R, Ом макроса (Pt100)1. Температура выходной переменной Темп1 выводится на экран ПР200. Уставка 10°С задана программно. Если текущая температура принимает значения ниже уставки, начинает работать система обогрева привода. Датчик температуры (термопреобразователь сопротивления) RK1 имеет номинальную статическую характеристику – Pt100. Для работы ПР200 с данным датчиком необходимо аппаратно и программно сконфигурировать вход AI1 для работы в режиме измерения сопротивления 0–4000 Ом.
На элементах RTRIG3, RTRIG4 собран блок, контролирующий обрыв связи по каналу RS-485 со стороны ПР200. При отсутствии обмена по интерфейсу RS-485 между 8CMA28-10 и КШД на дисплее ПР200 индицируется сообщение «Нет связи по RS-485». На генераторе прямоугольных импульсов BLINK1 собран модуль, контролирующий обрыв связи по каналу RS-485 со стороны ПР200. При наличии связи по интерфейсу RS-485 между 8CMA28-10 и КШД индикатор HL3 «RS-485» мигает с периодом 2 с. При отсутствии связи по RS-485 индикатор HL3 «RS-485» выключен.
В модуле обогрева термопреобразователь сопротивления RK1 типа ЧЭПТ-24 ЭЛЕМЕР. Плоские нагреватели EK1, EK2 типа НП 78.54.200.230 Овен. В устройстве нет никаких настроек и регулировок, и если монтаж выполнен правильно, то оно начинает работать сразу после подачи на него напряжения питания. Сначала целесообразно проверить работоспособность блока управления без затвора. Затем выполнить монтаж 8CMA28-10 в затвор и проверить работоспособность изделия в целом.
ПР200 поддерживает управление до 16 устройств по каждому интерфейсу связи. Каждое устройство поддерживает до 256 переменных. Допускается использование одинаковых адресов и имён переменных для каждого устройства. То есть в ПР200 к слоту № 1 RS-485, можно подключить 16 КШД. На рис. 7 приведён скриншот программы для настройки ПР200 по интерфейсу RS-485 c подключением 16 КШД
в среде OWEN Logic.
Так как в данной модификации ПР200 два слота RS-485, можно организовать работу в двух независимых сетях.
Литература
- URL: www.lassard.ru.
- URL: www.onitex.ru.
- URL: www.owen.ru.
- URL: www.elemer.ru.
Комментарии