Подключение сенсорной панели к Zelio через порт программирования
Недавно ко мне обратились из России с предложением написать программы для проекта, в котором используется продукция Schneider, в том числе логическое реле Zelio SR3 и сенсорная панель Magelis HMI STO 501.
Из всего оборудования я живьем видел только Zelio, но взялся за разработку программ. Писал программы в Запорожье, отправлял в Россию, там проверяли, я устранял ошибки и так пока все не заработало, как надо. В итоге все получилось и я хочу поделиться своими впечатлениями от проекта:
- Оргвопросы
- Сенсорная панель HMI STO501
- Создание программ для подключения сенсорной панели к Zelio через порт программирования
- Впечатления
За все фото оборудования и платы кабеля спасибо Даниэлю, который предложил мне поучаствовать в этом проекте.
1. Оргвопросы
Прежде всего, если вы имеете дело с продукцией Schneider (Zelio, Twido, Magelis) нужно включить повышенную внимательность. Sсhneider очень любит применять специфические кабели программирования: для Zelio, Twido и Magelis они свои. Эти кабели мало того, что дорогие, но еще и эксклюзивные.
В то же время китайцы, тайванцы и русские(«Овен») снабжают свои контроллеры и сенсорные панели возможностью программироваться через стандартные интерфейсы RS-232/485 и USB, шнуры для которых есть везде и стоят сущие копейки.
Поэтому при заказе продукции Шнайдер нужно предусмотреть покупку шнуров программирования.
Но если вы захотели купить эти шнуры, еще не факт, что вам их продадут. Потому что…
…обычно их нет в наличии и срок поставки- до 7 недель.
Я думал, что такое только на Украине, но в России, оказывается, точно так же. С чем это связано, я не знаю. Наверное, «Шнайдер» так демонстрирует свою элитарность. Типа, если надо- подождешь.
Программное обеспечение для Zelio бесплатное, для панелей Magelis платное.
2. Сенсорная панель HMI STO501
На данный момент к Zelio через порт программирования можно подключить одну-единственную модель сенсорной панели- Magelis HMI STO501:
Характеристики панели HMI STO501:
Тип устройства: Сенсорная панель с монохромным экраном Размер экрана: 3.4″ Разрешение: 200×80 px. Порты связи: 1xRS-232C, 2xUSB Протоколы: Zelio протокол для прямого подключения к Zelio Logic SR2/SR3, Modbus, Uni-Telway, SiemensPPI-MPI, OmronSysmacwayRockwellDF1 / DH485, MitsubishiMelsecFX/Q/A Память для хранения данных: 16 Мб, флеш Питание: 24V DC Габариты: 113 x 78 х 28 мм Цена: 260$
Если смотреть с точки зрения цена/характеристики, то виден перекос в сторону цены. Короче говоря, при своих возможностях HMI STO501 слишком дорого стоит. Я не могу себе представить, что кто-то купит 501-ю панель куда-нибудь, кроме как для Zelio.
Панель Magelis HMI STO501:
На заднем плане мы видим Zelio, к которому подсоединились самодельным кабелем программирования потому что фирменный кабель могут доставить только через 7 недель.
Панель монохромная, но это не значит, что черно-белая. В данном случае панель зелено-белая:
Для подключения HMI STO501 к Zelio используется кабель SR2CBL09:
Плата кабеля SR2CBL09 функционально аналогична плате кабеля программирования Zelio SR2CBL01:
SR2CBL09 принципиально отличается от SR2CBL01 только разъемом подключения к панели. В SR2CBL09 применяется разъем EC350V:
Поэтому, если очень надо SR2CBL09 а нету, но при этом есть SR2CBL01, можно самому сделать такой вот преобразователь:
Разъем DB9M стоит 0.3$ и продается везде, а EC350V входит в комплект сенсорной панели. Надо- программируешь Zelio, надо- одеваешь переходник и подключаешь Zelio к 501-й панели.
Для программирования HMI STO501, как и прочих семейства Magelis, используется среда разработки Vijeo Designer. Поддержка HMI STO501 в ней появилась начиная с 6 версии. Vijeo Designer программа платная, что создает очередные проблемы для клиентов «Шнайдера». Демо-версия не позволяет записать разработанный проект в панель, в остальном ограничений нет. Если поискать, в нете можно найти серийный номер для Vijeo Designer.
Загрузить программу в HMI STO501 можно 2-мя способами:
- Скинуть проект на флешку, вставить флешку в панель и переписать программу.
- Подключиться к панели через фирменный кабель BMXXCAUSBH018 и загрузить программу непосредственно из Vijeo Designer.
Кабеля BMXXCAUSBH018 у поставщика в России не оказалось(только под заказ и через 7 недель), но загрузить программу удалось через обычный кабель micro USB.
Еще один важный момент, который нужно иметь ввиду: подключить HMI STO501 можно не к какому попало Zelio, а только к тем моделям, которые имеют режим программирования FBD. Связано это с тем, что программные блоки передачи данных по последовательному порту в среде программирования LelioSoft 2 доступны в языке FBD, но отсутствуют в языке LD.
3. Создание программ для подключения сенсорной панели к Zelio через порт программирования
3.1 Программа для Zelio
Некоторые модели Zelio можно программировать только в LD и, следовательно, нельзя подключить к сенсорной панели через порт программирования:
Передача данных через порт программирования программируется очень просто. Для этого используются 2 функциональных блока- «Serial port input»(входящие данные по порту программирования) и «Serial port output»(исходящие данные по порту программирования).
Блок «Serial port input» объединяет в себе 8 слов по 16 бит, входящих в Zelio через порт программирования. Всего доступно 24 входящих слова или 3 блока(24 : 8 = 3) «Serial port input» на программу:
Блок «Serial port output» объединяет в себе 8 слов по 16 бит, исходящих из Zelio через порт программирования. Всего доступно 24 исходящих слова или 3 блока(24 : 8 = 3) «Serial port output» на программу:
Вот пример простой программы для управления Zelio через порт программирования:
Дискретный сигнал состояния входа i1 поступает на вход блока B01 (преобразование 16 отдельных бит в слово), далее попадает в блок B02( «Serial port output» ) и через порт программирования уходит в сенсорную панель как первый бит в слове №25.
Состоянием выхода Q1 управляет входящая команда от сенсорной панели: в блок B03( «Serial port input» ) через порт программирования приходит слово №1, в котором первый бит является управляющим для выхода Q1, далее слово попадает на блок B04(преобразование слова в 16 отдельных бит) и уходит далее на выход Q1.
3.1 Программа для HMI STO501
Для программирования HMI STO501 нужно использовать Vijeo Designer v6 или выше. Нужно указать подключение к Zelio через порт программирования, настроить исходящие(для записи в Zelio) и входящие(для чтения из Zelio) переменные типа «External» и подключить к этим переменным органы управления.
Создание простой программы для Zelio и HMI STO501:
Используется ZelioSoft2 v4.4 и VijeoDesigner 6.0 При нажатии кнопки « Q1 » на сенсорной панели, состояние выхода Q1 в Zelio SR2E121BD будет изменяться на противоположное. Цвет кнопки « Q1 » на сенсорной панели изменяется в зависимости от состояния выхода Q1 Zelio. Лампочка « i1 » на сенсорной панели меняет свой цвет(включается/выключается) в зависимости от состояния входа i1 Zelio.
4. Впечатления
Про Zelio SR2/SR3 я уже писал, это надежные устройства, но они созданы на основе микроконтроллера atmega128 с ядром AVR, т.е. на технологиях конца 90-х, начала 2000-х годов. Хотя для многих задач возможностей Zelio чаще всего хватает, но они во многом уступают своим конкурентам, построенным на современных процессорах.
Например, я писал про китайский ПР xLogic, в основе которого современный микроконтроллер NXP LPC1765fbd100 с ядром ARM Cortex-M3. xLogic своими возможностями значительно превосходит Zelio и стоит значительно дешевле. На стороне Zelio остается только проверенная временем надежность и репутация, что тоже немало.
Но вот некоторые особенности Zelio необъяснимы с точки зрения факта применения устаревшего микроконтроллера. К примеру, почему одни модели Zelio можно программировать на FBD а другие только на LD? И там и там процессоры одинаковые, а подключить HMI STO501 можно только к Zelio с программой на FBD.
Фирма « Шнайдер » предлагает только одну модель СП для подключения к Zelio через порт программирования. Эта СП маленькая, монохромная и дорогая. Хочешь панель больше- покупай модуль расширения для Ethernet или RS-232/485.
А у xLogic все модели можно подключить к какой угодно сенсорной панели, т.к. обмен через порт программирования идет по Modbus.
Например, даже самый слабый и дешевый(45$) xLogic ELC-6AC-R я через порт программирования подключил к 7-дюймовой цветной панели, которая стоит немного дешевле, чем 3-дюймовая монохромная для Zelio:
Ощущение, что « Шнайдер » не развивает линейку «Zelio» (в т.ч. в возможностях подключения сенсорных панелей), почивает на лаврах и думает, что их продукцию будут покупать только из-за бренда. Пока такой подход еще срабатывает, но в дальнейшем они рискуют растерять клиентов.
Порт программирования Zelio для обмена данными с СП использует не Modbus а свой нестандартный протокол. Но самое удивительное, что « Шнайдер » не засекретил этот протокол, а даже расписал его в справке ZelioSoft 2. Теоретически можно найти сенсорную панель другой фирмы, запрограммировать там протокол и подключить к Zelio. Многие китайские панели имеют такую возможность, как и русская СП270 фирмы «Овен»(если покопаться и разблокировать возможности ее китайского прародителя).
Среда программирования для шнайдеровских панелей платная и это создает проблему. Для меня странно, что производитель оборудования просит денег за софт для своей же продукции. Другие производители разделяют мое мнение и чаще всего распространяют ПО для своей продукции бесплатно.