Анимированный экшн с частотниками Delta Electronics в главной роли |
22.01.2010 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Допустим – вы «гуру» в электроприводе и запустили не один преобразователь частоты и не на одном объекте. Тогда Вы наверняка встречались с тем, что вашим приводом (и не только им) в итоге управляет дистанционно оператор, с помощью некоей компьютерной системы, просто тыкая пальцем или мышкой в красивые «живые» картинки на экране, отображающие сам агрегат, меняющиеся цифры и бегущие графики параметров, столбики уровней, стрелки нарисованных приборов и целые мультфильмы с движущимися конвейерами, вращающимися насосами, вентиляторами и бегущей жидкостью. Хотите научиться самостоятельно делать такие системы? «Не хочу», -скорее всего, ответите Вы, «Потому что это дорого», или «Потому что у меня аллергия на программирование», «Потому что это не мой бизнес, в конце концов» — возможны любые другие варианты аргументации. Действительно, для создания подобных систем классическим путем, вам понадобится сотрудничество с еще одним гуру, причем часто капризным – гуру-программистом, а может и не с одним. В самом деле, даже составление спецификации покупных средств автоматизации подобных систем выливается в серьезную задачу, требующую хотя бы эскизного предварительного проектирования. Для каждой выбранной «железяки» нужно подобрать соответствующий «софт», выбрав из нескольких вариантов, отличающихся по цене в разы. Возможно, придется изучить, что такое «тэг», «точка ввода/вывода», «плавающая лицензия» и что под этим понимает конкретный производитель. Мало того, каждая недешевая «софтина» может требовать для работы ещё одной или нескольких, не менее недешевых программных компонент «общего назначения» от других производителей, например, SQL сервера, или серверной операционной системы.
Большинство производителей возвращают инвестиции в разработку, продавая лицензионное программное обеспечение, защищенное от копирования, имеющее к тому же те или иные ограничения, которые можно снять лишь за дополнительную плату. Наши же реалии приводят к тому, что по рукам ходят «ломанные» и не самые свежие версии, которые неизвестно как работают и по которым нельзя официально проконсультироваться. Данный материал расскажет читателю, как в этом случае просто и недорого осуществляется стыковка преобразователей частоты Delta Electronics с сенсорными операторскими панелями того же производителя для получения продвинутого человеко-машинного интерфейса, характерного для современных SCADA систем. Минимальное программирование, которое может потребоваться для написания макросов, гуру-приводчик вполне может поручить своему сыну – студенту, имеющему представление хотя бы о Бейсике.
Требуемое оборудование
2. Панель оператора Delta Electronics ( Все панели Delta так же имеют бесплатный порт Modbus и, к тому же бесплатный софт, в нашем случае берем монохромную панель с голубой задней подстветкой 3,8" DOP-AS38BSTD , листовая цена около 300 евро) 3. Источник питания 24В, способный выдавать 350 мА или больше 4. Отрезок кабеля (пойдет компьютерная витая пара) под разъем RJ-45 и сам разъем Это все ! Все остальное - бесплатно, кроме Вашего времени, которого потребуется около 3-х часов, если Вы видите панель и частотник Deltа в первый раз. Подключаем порт RJ-45 частотника с помощью кабеля к винтовым клемам порта RJ-45 панели, подаем питание 24 В.
Рис.2. На самом деле у нас был готовый стендик, но это совершенно не принципиально. Из-за панели выглядывает ПЛК Delta Electronics , но он в нашей задече не используется. Связь по протоколу
Использование данного стандарта позволяет обмениваться данными не только между частотником и операторской панелью, но позволяет включать в единую сеть обмена данными любые устройства – датчики, ПЛК, регуляторы температуры, передавать данные на операторские АРМы. Протоколы Modbus и сети передачи данных на основе стандарта RS-485, где информация передается по витой паре в виде токовых сигналов, подробнейшим образом описаны и здесь мы их обсуждать не будем. Мы займемся другим – научимся обмениваться данными между преобразователем частоты (а на его месте может быть любое другое устройство с Modbus), и операторской панелью. Первоначальная настройка
Для передачи данных физически используется только одна пара проводов (крайне желательно, чтобы она была витая), длиной – до 1200 метров. Физическое соединение обоих портов витой парой – это все, в чем заключается подготовка для передачи данных. Будем считать, что преобразователь частоты (ПЧ) – готов к работе, проверен и все необходимые параметры заданы. Единственное, что нужно проверить – это чтобы параметры коммуникации в ПЧ и в операторской панели были заданы единообразно. Для нашего примера возьмем такой случай – Modbus RTU, скорость передачи данных – 9600 бод, используются кадры с длиной сегмента данных 8 бит, 2 стоповых бита, без контроля четности. Эти настройки в ПЧ проводятся путем задания таких параметров, как 09-00=1 – коммуникационный адрес (равный 1), 09-01=1 – соответствует скорости передачи 9600 бит в секунду, и 09-04=3 – протокол Modbus <8,N,2>. Операторская панель настраивается на эти же параметры обмена данными с помощью своего программного обеспечения, в котором ведется разработка программы. К этому мы и приступаем. Программирование панели
На первом экране (рис. 1) мы показываем информацию о заданной частоте и выходной частоте – как в цифровом, так и в графическом виде (полосовой индикатор bargraph). Также мы здесь размещаем поле ввода числового задания на частоту, кнопки быстрого изменения заданной частоты в обе стороны, и кнопки управления – Пуск, Стоп, Реверс.Операторская панель DOP-AS38BSTD оснащена сенсорным экраном, поэтому оператору нужно будет нажимать «нарисованные» кнопки, как будто они настоящие. Графические объекты – кнопки, индикаторы, поля ввода и т. п., вводятся на экранную форму мышью из банка графических объектов. Разместив объекты на экране, и настроив их свойства (цвет, прозрачность, размер, тип шрифта), остается только настроить их поведение – то есть, заставить конкретные индикаторы читать информацию из указанных регистров преобразователя частоты, а поле ввода заданной частоты и кнопки Пуск, Стоп и Реверс – давать команды в соответствующие регистры частотника.
Рис. 3. Настройка объекта Настройка объектов
Требуемый нам регистр (заданная частота) имеет адрес 2001Н, и этот адрес мы задаем в поле адреса в окне настройки свойств графического поля ввода частоты – см. рисунок. На том же рисунке рядом, расположено окно настройки формата данных, где задаются размер данных (слово, потому что в случае с преобразователем частоты, мы всегда будем работать со словными регистрами), формат данных (Unsigned Decimal – десятичное число без знака), далее – минимум, максимум, число знаков до и после запятой, коэффициент усиления. Похожим образом настраиваются и все остальные объекты – кнопки быстрого изменения частоты (расположены слева и справа от поля ввода задания частоты). Также несложно программируются кнопки Пуск, Стоп и Реверс. Нужно всего лишь знать адрес регистров, в который нужно писать команды на запуск, останов и реверс, и сами коды этих команд – это все есть в документации. В нашем случае адрес регистров, в который пишутся команды Пуск, Стоп и Реверс – 2000Н, а сами команды – это десятичные числа 2, 1 и 48 соответственно. Рядом с кнопками Пуск и Стоп расположен анимированный объект – вращающаяся крыльчатка, который показывает текущее состояние привода – запущен он или остановлен. Анимация достойна отдельного разговора, о ней чуть позже. Создадим еще два экрана, на одном поместим список некоторых параметров ПЧ, которые можно будет изменять посредством операторской панели, на втором – построим графики изменения заданной и выходной частоты. Особого пояснения процесс создания этих окон не требует – все очень просто. Создаем новое окно, в него перетаскиваем нужные нам объекты (поля ввода данных, текстовые поля, кнопки), настраиваем их поведение и взаимодействие путем выставления нужных свойств в соответствующих окнах программы «ScreenEditor». Отладка программы
Кроме того, есть еще более интересный режим – симуляция On-Line – то есть, работа с подключением компьютера к реальному оборудованию (в нашем примере – к ПЧ). То есть, компьютер на котором стоит «ScreenEditor», имитирует собой поведение операторской панели. Это позволяет окончательно отладить программу, до загрузки ее в реальную операторскую панель. Внешний вид всех трех созданных окон в режиме симуляции On-Line приведен на рис. 4. После отладки программы в режиме симуляции On-Line, ее остается только загрузить в память операторской панели. Может быть, придется еще подкорректировать цвет и размер объектов, чтобы с ними удобнее было работать на реальном объекте. Время, затраченное на создание и отладку такого приложения, составило в районе 3 часов. И это с учетом того, что пришлось работать с незнакомым программным обеспечением, одновременно изучая документацию.
Рис. 4. Режим симуляции On-Line (то есть, с подключением компьютера, на котором стоит «ScreenEditor» и который имитирует собой поведение операторской панели, к реальному оборудованию) позволяет окончательно отладить программу, до загрузки ее в реальную операторскую панель Создание анимации
Теперь вернемся к одному интересному моменту, который мы оставили «на потом». Это создание анимаций – то есть, движущихся картинок, которые обладают весьма хорошей информативностью и оживляют любую программу. Пользовательские анимации, которые являются еще одной возможностью операторских панелей Delta Electronics – заслуживают внимания еще и потому, что для их создания нужно привлечь к работе Макроязык операторской панели – это мощный инструмент, который превращает операторскую панель в свободно программируемый «вычислитель», способный работать по заданному пользователем алгоритму. С помощью макроязыка можно получать и обрабатывать данные от различных подключенных к панели источников, выдавать команды на оборудование, видоизменять внешний вид графических объектов. Между тем, он предельно прост и очень похож на Бейсик. Для пояснения некоторых особенностей работы макроязыка, приведем здесь макрос, который осуществляет переключение рисунков, создавая анимированную картинку – вращающуюся крыльчатку на главном экране программы. В программах для операторской панели Delta Electronics можно писать несколько типов макросов – для нашей задачи «оживления» картинки и создания эффекта движения, мы применим «тактовый макрос», то есть такой, который будет выполняться в фоновом режиме каждый заданный промежуток времени (в нашем случае один раз в 250 миллисекунд). Вот его текст, в левом столбце – номера строк:
1 IFB 1@INVERTER == 2101.0 ON THEN GOTO LABEL 1 Дело в том, что объект «анимация» должен постоянно читать состояние переменной, в которой содержится номер показываемой в данный момент картинки – в нашем случае это переменная из внутренней памяти панели с адресом $160. Всего картинок 10 штук, поэтому переменная $160 будет содержать числовые значения от 0 до 9. Во второй строке макроса, которая выполнится только если бит 2101.0 в состоянии OFF (то есть – привод остановлен), идет передача управления на метку 2 (LABEL 2), после которой стоит команда завершения макроса END – cм. строки 9 и 10. В четвертой строке идет сравнение переменной $160, отвечающей за хранение номера картинки анимации, с максимальным числом этих картинок – 9. Если это число больше или равно 9, то идет передача управления на метку 10 (LABEL 10 в строке 7). В пятой строке идет увеличение переменной $160 на единицу, в шестой строке – переход на конец программы – LABEL 2. В восьмой строке переменная $160 (номер картинки) обнуляется. Данный макрос очень прост, но на самом деле команд в макроязыке достаточно для создания более серьезных программ. В составе встроенных команд макроязыка – основные арифметические и логические операции, операции сравнения и поиска максимума и минимума, операции смещения, переноса и копирования данных в памяти, преобразования данных в различные форматы, команды управления потоком (циклы), вызовы подпрограмм, работа с битовыми операндами. Кроме того, очень интересная группа макрофункций – это команды передачи данных. Эти команды служат цели осуществления обмена данными с устройствами, которые не поддерживают ни протокол Modbus, ни другие зашитые в операторской панели протоколы. При определенных усилиях, можно осуществлять обмен данными с устройствами, работающими по неким специализированным, фирменным протоколам – главное, чтобы был известен формат кадров передачи данных. Расширенные возможности
Благодаря таким особенностям, как наличие встроенного макроязыка и возможности установки внешних плат расширения, в некоторых случаях можно обойтись без внешнего контроллера. Для расширения сетевых возможностей панелей Delta Electronics, предусмотрена возможность установки модуля Ethernet, что позволит вести обмен данными также и по протоколу Modbus TCP.
Таблица 1. Контроллеры и панели, с которыми поддерживают обмен данными операторские панели Delta Electronics, приведены самые популярные, всего около 90-то устройств. Еще одну возможность операторских панелей Delta Electronics следует отметить. Все они содержат буфер памяти для хранения архива данных – например, истории аварийных сообщений или для построения трендов (графиков) изменения контролируемых переменных. В качестве контролируемых переменных могут выступать как регистры внутренней памяти панели, так и регистры внешнего оборудования, считываемые по сети. Именно такой возможностью хранения данных из сети в архиве мы и воспользовались, когда строили графики изменения заданной частоты и выходной частоты из ПЧ на экране номер 3 (рис. 4). В старших моделях семейства DOP объем этого архива данных может достигать 360 МБ, если данные хранятся во внутренней памяти, а с использованием внешнего накопителя данных, подключаемого к панели по USB, – он будет ограничен объемом самого внешнего накопителя. Данные могут записываться в формате CSV, понимаемом программой Excel. Всего можно создавать до 12 различных архивов. Цикл времени записи выборок данных в архив может выбираться в диапазоне 0 ~ 86400000 мс. Кроме того, архивом может управлять не только панель, но и внешнее устройство, подключенное к панели по сети – например, контроллер или даже преобразователь частоты.Инициировать сброс данных в архив можно выставлением какого-либо бита в адресном пространстве самой панели, либо извне. При работе с преобразователями частоты возможности архивирования данных операторских панелей могут оказаться незаменимыми при отладке системы, поиске неисправностей, «разборе полетов». Преобразователи частоты очень часто лишены часов реального времени, и сообщения об ошибках при этом фиксируют лишь факт события, но не его время, поэтому иногда бывает трудно найти причину сбоя в работе. Но поскольку панели оператора снабжены часами реального времени, то аварийные сообщения, при переносе их в операторскую панель, превращаются в полноценную запись о проблеме, снабженную информацией о времени и текстовым комментарием. В заключение отметим, что операторские панели Delta Electronics способны вести одновременный обмен данными по 4-м различным протоколам из списка, в котором на сегодня их уже более 90, и который постоянно обновляется. Таким образом, панели Delta Electronics не только работают практически со всеми известными ПЛК и преобразователями частоты, но и являются превосходным средством интеграции разнотипных систем.
Роман Федоряк Смотрите также:
Анимированный action с преобразователями Delta в главной роли ( Все под контролем) (1.07 Мбайт 2010-01-22 17:38:44) |