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

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

8CMA28-10 размещён в обогреваемом модуле. При температуре ниже +10°С автоматически включается подогрев. Принципиальная схема модуля обогрева приведена на рис. 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.

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

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

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

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

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


В сети, по протоколу 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–4 кОм.
На элементах 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.
Если вам понравился материал, кликните значок — вы поможете нам узнать, каким статьям и новостям следует отдавать предпочтение. Если вы хотите обсудить материал —не стесняйтесь оставлять свои комментарии : возможно, они будут полезны другим нашим читателям!

