В силу известных политических событий, решено было оторваться от рутины и начать «строить ковчег до потопа», то есть исследовать Российских производителей контроллеров. Основной вопрос стоял в принципиальной возможности и технологичности их использования для автоматизации инженерных систем зданий.
Специфика задачи состояла в том, что часть текущих объектов это «долгострои», но не в смысле их заброшенности, а в том смысле что ввиду их огромных размеров, цикл строительства и реконструкций на них составляет много лет. В силу этого, существуют ситуации, когда на объекте уже внедрена система диспетчеризации, с ней уже несколько лет успешно работает служба эксплуатации объекта и о смене привычного рабочего инструмента речи не идет. Но в то же время, может возникнуть необходимость выбора альтернативного производителя и поставщика контроллеров, модулей ввода-вывода, датчиков и исполнительных устройств.
У любого автоматчика при словосочетании «российский контроллер» первым делом в голову приходит – «Овен». О том, что приходит в голову во вторую и в третью очередь, как-нибудь в другой раз, исследование отечественных производителей контроллеров не тема данной статьи.
Итак имеем:
- Контроллер — Овен ПЛК 150 (Технические характеристики на сайте производителя)
- СКАДА — Honeywell EBI 410.2 с опцией OPC Client
Про тонкости программирования в CoDeSys и найденных технологических решениях построения программы — не сейчас, скажу лишь что, по итогам, все переменные подлежащие диспетчеризации находятся в одном программном блоке с именем «Р1». Он управляет приточной установкой с горячим и холодным контурами.
Что необходимо сделать перед загрузкой программы в контроллер:
1. В настройках целевой платформы, на вкладке «Общие» , выбрать пункт «Загружать символьный файл» ;
2. Перейти в опции проекта ( «Проект» — «Опции» ), далее выбрать «Символьная конфигурация» , отметить «Создавать описания» и нажать кнопку «Настроить символьный файл» ;
3. Выбрать переменные подлежащие диспетчеризации.
Замечу один нюанс, в программном модуле могут быть переменные, которые вам абсолютно не нужны в системе диспетчеризации. Выискивать и выбирать в этом списке, что вам надо а что нет, занятие муторное, а в случае необходимости доработки программы и изменения списка переменных подлежащих экспорту еще и рискует быть не однократным. Поэтому рекомендую позаботится об этом заранее, а именно запретить экспорт части переменных в теле программы. Делается это инструкциями {flag noread, nowrite on} … {flag off} в секции объявления переменных. «Оберните» внутренние переменные в эти флаги и тогда в списке переменных для экспорта будут только нужные вам в системе диспетчеризации.
После этого можно загружать программу в контроллер и переходить к настройке CoDeSys OPC сервера. Он был установлен прямо на сервер с установленным Honeywell Enterprise Building Integrator 410.2. Несмотря на то, что контроллер программируется из среды CoDeSys 2.3.9.40, я использовал OPC сервер версии 3.5.5.0, т.е. от последней, на данный момент, версии CoDeSys. Делал я это намеренно, с прицелом на то, что через него же буду подключать контроллеры, программируемые из CoDeSys 3-й версии.
Как работать с OPC сервером из Honeywell Enterprise Building Integrator, в следующий раз.