Содержание:
В настоящее время в промышленности применяется широкий спектр способов связи технологических объектов. в качестве примера можно привести одни из наиболее распространённых — беспроводная связь по стандартам GPRS, 3G, 4G и проводные способы по интерфейсам RS-485 или Ethernet.
Они позволяют передавать относительно большие объёмы данных за малые промежутки времени. Однако, не всегда возможно применение указанных способов по разным причинам. К числу таких ограничений можно отнести технические (невозможность прокладки кабеля на местности или низкий уровень сигнала по стандарту GPRS/3G) или экономические (цена автоматических GPRS/3G роутеров выше чем цена GSM-модемов).
Cвязь, использующая пакетную передачу данных, зачастую требует наличия статического IP-адреса опрашиваемого узла сети, а также постоянных расходов на трафик. Поэтому использование сервиса коротких сообщений (SMS) для информирования персонала о ходе технологического процесса, а также управления им, ещё широко распространено. Однако, GSM-модемы не имеют встроенной логики и управляются с помощью АТ-команд.
Панели оператора ELHART имеют возможность программирования на языке С (написание макросов), что позволит в рамках конкретного примера исключить применение ПЛК для управления GSM-модемом. При помощи макросов панель оператора может получать прямой доступ к любому из интерфейсов и записывать в него последовательность символов в определённой кодировке. Расширением данного применения может быть использование макросов для установки соединения панелей оператора ELHART с устройствами, использующими нестандартные протоколы.
Настройка оборудования заключается в настройке GSM-модема Cinterion BGS2T-RS485+MC1,5/6-ST-3,81 и панели оператора ELHART ЕСР-07. Для реализации данного примера возможно использование любого GSM-модема.
Настройка GSM-модема заключается в настройке скорости обмена, количества битов данных, длины интервала стоп-бита и контроля чётности по используемому интерфейсу. Модем должен быть подключен к персональному компьютеру (ПК) по интерфейсу RS-485 через преобразователь интерфейсов RS-485/USB (например, Delta IFD6500), одновременно он может быть подключен и к панели оператора по тому же интерфейсу. Интерфейс RS-485 выбран для удобства, возможно использование RS-232 и, соответственно, модема с таким интерфейсом.
Для настройки модема возможно использовать любую программу для ПК, позволяющую записывать данные непосредственно в СОМ-порт (в данном примере используется ComPUMP).
Настройка скорости обмена GSM-модулей модемов, как правило, заключается в подаче АТ-команды «AT+IPR=9600». После последнего символа (в данном случае это «0») необходимо добавить символы возврата каретки и перевода строки, их коды в таблице ASCII - 0D и 0A соответственно. Программа ComPUMP должна изначально иметь настройки скорости обмена, количества битов данных, длины интервала стоп-бита и контроля чётности, соответствующие настройкам модема. в случае успешного приёма и исполнения команды модем ответит «AT+IPR=OK». Скорость обмена 9600 бод выбрана для примера и будет использоваться далее при настройке интерфейса RS-485 панели оператора.
Настройку скорости обмена также можно произвести с панели оператора, добавив соответствующий код в макрос, в данном примере это показано ниже. Настройки проверки чётности, количества стоп-битов и битов данных остаются по умолчанию.
Настройка модема завершена.
Настройка сенсорной панели оператора производится на примере модели ECP-07 и в данном случае сводится к написанию макроса. Графический интерфейс используется для визуализации процесса. Основными задачами при отправке SMS являются:
Основными задачами при приёме:
для создания макроса необходимо перейти в пункт меню «Макросы» - «Главный макрос» - «Создать макрос»:
Для макросов панелей оператора ELHART существуют понятия внешних и внутренних переменных. Внешними переменными являются все переменные из области памяти панели (например, область памяти LW). Внутренние переменные объявляются в теле макроса.
Внешними переменными в данном примере являются:
1. error_com_param: возвращает значение «0» в случае ошибки установки параметров интерфейса, «1» - в случае удачной передачи; адрес
2. error_outport: возвращает значение «-1» в случае ошибки передачи, в случае удачной передачи возвращает число переданных байтов;
3. error_inport: возвращает значение «-1» в случае ошибки приёма, в случае удачного приёма возвращает число принятых байтов;
4. Imm_alarm: стартовый адрес внешних битов регистров панели, запускающих цикл отправки SMS;
5. modemok: стартовый адрес байтовых регистров для записи строки признака успешной настройки модема;
6. LB50: битовый адрес, изменяемый по команде в SMS-сообщении;
7. Pressure: стартовый адрес байтовых регистров для записи значений в отправляемое SMS-сообщение;
8. number_input: байтовый регистр (тип данных «string») для ввода номера телефона.
Соответственно указанным на Рисунке 4 адресам регистров необходимо создать элементы визуализации на экране панели:
Элементу ввода «Ввод телефонного номера без +7» соответствует адрес LW3 (тип данных «строка», количество символов — 10, кодировки ASCII и Unicode), элементу «Имитация события No1» - LB0, «Значение параметра No1» - LW16 (тип данных «целое число», 1 разряд до запятой, 2 после), «Значение параметра No2» - LW17 (тип данных «целое число»), «Имитация события No4» - LB3, элементу отображения «Включение/выключение бита по СМС-команде» - LB50, элементу «Настройка модема прошла успешно» - LW18 (тип данных «строка», количество символов — 11, кодировки ASCII и Unicode).
Макрос решает следующие задачи:
1. Распознавание внешнего признака отправки SMS в виде битовой переменной памяти панели, в данном примере реализовано 10 признаков.
2. Запуск алгоритма отправки SMS по одному из внешних признаков. Если в один момент времени активно несколько признаков, они будут отработаны по очереди. СМС отправляется в текстовом режиме (латиница, кодировка ASCII). Ð