УДК 004.4'2
УПРАВЛЕНИЕ ШАГОВЫМ ДВИГАТЕЛЕМ НА БАЗЕ ОДНОПЛАТНОГО КОМПЬЮТЕРА RASPBERRY PI 2 В СРЕДЕ CODESYSV3.5
Адамян А. А., Аль-Тибби В. Х.
Донской Государственный Технический
Университет, Ростов-на-Дону, Российская
Феерация
UDC 004.4'2
STEP ENGINE CONTROL ON THE BASIS OF RASPBERRY PI 2 SINGLE BOARD COMPUTER IN CODESYSV3.5 ENVIRONMENT
Adamyan A.A., Al-Tibbi V. K.
Don State Technical University, Rostov-on-Don, Russian Federation
[email protected] [email protected]
Рассматриваются одноплатный
микрокомпьютер Raspberry Pi 2, версии его выпуска и варианты возможной операционной системы. Описана возможность применения одноплатного компьютера в качестве программируемого логического контроллера. Изложен подробный процесс установки системы исполнения CODESYS Control For Raspberry Pi. Приведены отличительные особенности платы расширения PiFace Digital 2, необходимой для управления реальным объектом. Показана схема управления двигателем 28byj-48 и приведен пример программы для управления. Отмечены преимущества и недостатки применения одноплатного компьютера в качестве программируемого логического контроллера. Ключевые слова: микрокомпьютер, Raspberry Pi, операционная система, CODESYS Control, программируемый логический контроллер, шаговый двигатель, плата расширения PiFace Digital 2.
The article considers Raspberry Pi 2 single board microcomputer, release versions of this microcomputer and options of a possible operating system. It describes the possibility of use of a single board computer as a programmable logical controller. The detailed process of installation of executive system CODESYS Control For Raspberry Pi is described. The paper provides the features of the accessory board PiFace Digital 2, which is necessary for real object control. The scheme of the step engine 28byj-48his control is shown and the example of control program is given. The advantages and shortcomings of the use of a single board computer as a programmable logical controller are provided.
Keywords: microcomputer, Raspberry Pi, operating system, CODESYS Control, programmable logic controller, step motor, PiFace Digital accessory board.
Введение. Первые программируемые логические контроллеры (ПЛК) появились в виде шкафов с набором соединённых между собой реле и контактов. Схема задавалась жёстко на этапе проектирования и не могла быть изменена далее. В первых ПЛК, пришедших на замену релейным логическим контроллерам, логика работы программировалась схемой соединений LD. Устройство имело тот же принцип работы, но реле и контакты (кроме входных и выходных) были виртуальными, то есть существовали в виде программы, выполняемой микроконтроллером ПЛК. Современные ПЛК являются свободно программируемыми, но отличаются высокой стоимостью. Возникает потребность снижения себестоимости при неизменных параметрах надежности средств визуализации.
В статье рассматривается способ решения поставленной задачи путем интегрирования системы исполнения и визуализация CODESYS V3.5 в одноплатный компьютер Raspberry Pi 2 на базе встроенной операционной системы Raspbian.
Одноплатный микрокомпьютер. Raspberry Pi 2 — это маленький компьютер, представляющий собой всего лишь одну небольшую плату, на которой расположены все компоненты. Девайс компактнее по размерам, чем большинство современных смартфонов — чуть меньше, чем 9*6 сантиметров (рис. 1.). Но по своим возможностям он способен с лёгкостью превзойти некоторые настольные ПК. В сети Интернет представлено большое количество проектов, основой для которых служит RaspberryPi: беспроводная точка доступа, конвертер речи, фотокамера, метеостанция, игровая консоль, робот, платформа для «умного дома», веб-сервер и многое другое [1].
Рис. 1. Одноплатный компьютер RaspberryPi 2 Существует несколько версий выпуска компьютера Raspberry Pi, которые представлены на рис. 2.
Версия Процессор ОЗУ С ПО USD Ethernet WiFi Bluetooth
А ARM! I76JZ-F, 700 МГц. 1 лДрО Мй 26 ПНнОЙ 1 порт Нет Пег Пет
А1 ARM 1176JZ-F, 700 МГц. 1 ядро 256 Мй 40 ПНнОЬ 1 порт Пет Нет Пет
Ei ARM 1176JZ-F, 700 МГц. 1 лДрО 512 Мй 26 ПНнОЙ 2 порта Есть Пег Пет
В4 ARM! I76JZ-F, 700 МГц. 1 ядро 512 Мй 40 ПИний 4 порта Есть Нет Пет
2В ARM Cortex-А7, 90(1 МГц, 4 ядра 1 Гй 40 ПНнОЬ 4 порта Есть Нет Пет
Zero ARM II176JZ-F, 1 ГГц, 1 ддро 512 Мй 40 ПНнОЬ 1 порт Пет Нет Пет
3Ei ARM Corcoi-А53 к64, 12 Г Гц, 4 ядра 1 Гй 40 ПНнОЙ 4 порта Есть 902. Ни 4.1
Рис. 2. Версии компьютера RaspberryPi 2
Поставляется это устройство без предустановленной операционной системы. Однако существует несколько пакетов операционной системы, включая различные варианты Linux. Одной из таких операционных систем является Raspbian, символьное изображение которой изображено на рис. 3.
Raspbian
Рис. 3. Обозначение операционной системы Raspbian
Для возможности работы в данной оболочке необходимо вставить записанную SD карту с образом операционной системы в микрокомпьютер и включить его в сеть. Первая загрузка займет продолжительное время, т.к. будет выполняться начальная настройки системы, после которой система загружается в нормальном режиме.
В результате проделанной работы на дисплее сенсорного экрана получим изображение рабочего стола установленной операционной системы Raspbian, представленное на рис. 4.
Рис. 4. Рабочий стол одноплатного компьютера RaspberryPi 2
Raspberry Pi, благодаря открытой архитектуре операционной системы, имеет преимущества при использовании его в качестве программируемого логического контроллера.
Программируемый логический контроллер (ПЛК). ПЛК — это программно-управляемый дискретный автомат (рис. 5.), имеющий некоторое множество входов, подключенных посредством датчиков к объекту управления, и множество выходов, подключенных к исполнительным устройствам. ПЛК контролирует состояния входов и вырабатывает определенные последовательности программно-заданных действий, отражающихся в изменении выходов [2].
Рис. 5. Программируемый логический контроллер ОВЕН ПЛК 100
В целях программирования Raspberry Pi загружается система исполнения, поддерживающая стандарт МЭК 61131-3. Одной из таких систем является CODESYS Control. Стоимость системы исполнения CODESYS Control составляет 35 €. Демонстрационная версия среды исполнения предоставляет пользователю всю функциональность без каких-либо ограничений, но требуется перезапуск каждые два часа.
CODESYS (акроним англ. Controller Development System) — инструментальный программный комплекс промышленной автоматизации, который производится и распространяется компанией 3S-Smart Software Solutions (Кемптен, Германия). Основой комплекса CODESYS является среда разработки прикладных программ для программируемых логических контроллеров. CODESYS поддерживает пять языков программирования, описанных в стандарте МЭК 61131-3: IL, ST, LD, FBD, SFC.
Для начала работы с микрокомпьютером, как с ПЛК, необходимо запустить CODESYS V3.5 и во вкладке «Инструменты» выбрать пункт «Менеджер пакетов». В открывшемся окне появится вкладка официального магазина «CODESYS Store», нажав на которую, появится возможность установки «CoDeSys Control For Raspberry Pi» на ваш ПК. Важно подметить, что версия прошивки должна быть не выше версии прошивки, установленной на ваш компьютер CODESYS V3.5. Данный процесс займет некоторое время, все зависит от скорости подключенного к вашему ПК интернета. По завершению установки во вкладке «Инструменты» необходимо выбрать пункт «Update Raspberry Pi». На данном этапе необходимо выполнить сопряжение микрокомпьютера и вашего рабочего ПК при помощи кабеля Ethernet. Во всплывшем окне, показанном на рис. 6, обозначаем версию прошивки, вводим пароль (по умолчанию «raspberry») и сканируем устройство при помощи кнопки «Scan». Программа CODESYS автоматически определит IP-адрес микрокомпьютера, останется согласиться с указанным адресом и нажать «OK». Завершающим шагом будет установка необходимых компонентов на МК при помощи кнопки «Install», что займет пару минут времени.
Рис. 6. Процесс сканирования Raspberry Pi 2
Данными действиями мы превратили микрокомпьютер в CODESYS-ПЛК. Осталось создать программу и загрузить ее в ПЛК.
Для управления реальными объектами с помощью одноплатного компьютера Raspberry Pi 2 необходима плата расширения PiFace Digital 2. Данная плата является модификацией платы PiFace Digital I/O Expander и «заточена» под новые версии одноплатного компьютера Raspberry Pi B+ и Pi 2. Плата PiFace 2 имеет форм-фактор размера кредитной карты и устанавливается сверху на Raspberry, как показано на рис. 7. После установки PiFace на Raspberry Pi свободными остаются все порты за исключением портов GPIO, в которые вставляется сам модуль. Питается плата от 3,3В (опционально) и 5В от Pi. Также можно поступить и наоборот, подключив питание к PiFace 2 с помощью винтовых клемм и запитав сам компьютер от платы расширения [4].
Основным активным элементом платы PiFace Digital 2 является 16-разрядный расширитель портов MCP23S17 фирмы Microchip с SPI интерфейсом. Он, посредством двух силовых реле на 10А и 8-канального драйвера (0,5 А) с открытым коллектором, позволяет управлять двигателями, лампами, силовыми реле, силовой нагрузкой, подключенной к сети 220В и др. устройствами. 8 входных каналов, в свою очередь, предоставляют возможность контролировать процессы управления с помощью различных датчиков, кнопок, тумблеров и переключателей. Клеммные колодки на плате упрощают подключение всех устройств ввода/вывода [4].
Отличительные особенности:
• 16-разрядный SPI расширитель портов I/O MCP23S17 Microchip;
• 8 светодиодов;
• 4 кнопки;
• 8 драйверов с открытым коллектором ULN2803A Texas Instruments (50 В, 0,5 A)
• колодка на 8 входных сигналов (до 5 В);
• колодка на 8 выходных сигналов (0,5 А);
Объектом дальнейшего исследования является 5-ти проводной шаговый двигатель 28Ьу]-48, который представлен на рис. 8.
Рис. 7. Плата расширения PiFace Digital 2
2 реле Omron G5LA-1 (10 А, ~250 В);
колодка для внешнего источника питания.
Рис. 8. Шаговый двигатель 28byj-48
Двигатель содержит две обмотки, причем каждая имеет отвод от середины, получается 4 фазы. Отводы обмоток соединены вместе как изображено на схеме (рис. 9.), в результате каждый из контактов четырех фаз соединен с красным проводом, к которому подключается питание. Вращение ротора происходит за счет коммутации фаз шаг за шагом. Для поворота на требуемый угол или выполнения некоторого количества оборотов на фазы двигателя подают серию импульсов, под действием которых вал поворачивается на серию шагов [5].
Рис. 9. Схема фаздвигателя 28Ьу)-48
Для управления данным двигателем необходимо написать программу, которая будет подавать импульсы тока на фазы двигателя в определенной последовательности. В данном случае она представлена на рис. 10. Импульсы подаются вначале на первую обмотку, затем на вторую, следом на третью, и, в заключительный раз, на четвертую. Выполнение данной последовательности в цикле обеспечивает вращение вала двигателя.
Рис. 10. Программа управления шаговым двигателем в среде CODESYSV3.5
Заключение. Использование в качестве управляющего элемента микрокомпьютера Raspberry Pi 2, по сравнению с программируемым логическим контроллером, безусловно является целесообразным, так как время рабочего цикла исполнения программы соизмеримо с современными панельными контроллерами при более низкой стоимости.
Одноплатные компьютеры Raspberry Pi не являются устройствами, предназначенными для применения в условиях промышленной среды. Тем не менее в областях, где требования к ресурсным испытаниям устройства и условиям его эксплуатации не столь жесткие (малые предприятия, домашняя автоматизация) они могут работать наравне с обычным ПЛК, обладая сравнимыми параметрами времени рабочего цикла при расширенных возможностях запуска на
одном устройстве нескольких исполнительных модулей (или программ), помимо исполнительного модуля CODESYS Control. Помимо производительности ПЛК, необходимо оценить скорость исполнения визуализации по сравнению с обычными панельными ПЛК, что будет выполнено в ходе дальнейших исследований.
Библиографический список
1. Красиков, Р. В. Использование исполнительного модуля «CoDeSys Control» совместно с «RaspberryPi» [текст] / Р. В. Красиков, В. Х. Аль-Тибби // Молодой исследователь Дона. — 2017. — №3(6). — С. 45-51.
2. Петров, И. В. Программируемые контроллеры. Стандартные языки и приемы прикладного проектирования / И. В. Петров, В. П. Дьяконов. — Москва: СОЛОН-Пресс, 2004. — 256 с.
3. Buy from one of our retailers [Электронный ресурс] / PiFace Digital. — Режим доступа: http://www.piface.org.uk/products/piface_digital/_(дата обращения 25.03.2018).
4. PiFace Digital 2 — плата расширения для Raspberry Pi B+/Pi 2 [Электронный ресурс] / Чип и Дип. Электронные компоненты и приборы. — Режим доступа: https://www.chipdip.ru/news/piface-digital-2-expansion-board-raspberry-pi (дата обращения 25.03.2018).
5. Arduino — это очень просто [Электронный ресурс] / ARDUINO+KIT. — Режим доступа: https://arduino-kit.ru/catalog/id/shagovyiy-4-h-faznyiy-dvigatel-5v-s-platoy-upravleniya-uln2003 (дата обращения 25.03.2018).