ЖУРНАЛ «СТА» 4/2016

56 СТА 4/2016 ОБЗОР /ПРОГРАММНОЕ ОБЕСПЕЧЕНИЕ www.cta.ru В ВЕДЕНИЕ На фоне экономических санкций и заданного государством вектора на за- мещение программного и аппаратного обеспечения возникает вопрос: а как выглядит ситуация в контексте АСУ ТП? Точнее, в плане замены непригод- ных для дальнейшей работы иностран- ных контроллеров на их российские аналоги. К сожалению, в отличие от обычных персональных компьютеров, где процесс миграции с одной опера- ционной системы на другую может осу- ществляться относительно просто, в том числе за счёт технологий виртуализа- ции, в случае с переносом технологиче- ского процесса (ТП) с одной аппаратно- программной базы на другую дела об- стоят менее радужно. Основные пробле- мы – излишняя закрытость существую- щих систем и отсутствие строгих стан- дартов на внутреннее устройство ком- понентов промышленных логических контроллеров (ПЛК). В этой статье рас- смотрены методы решения одной из за- дач миграции ТП – перенос программ управления (ПУ) между контроллерами различных производителей. Стоит от- метить, что исходный промышленный проект (ИПП), являющийся результа- том миграции, отличается от ПУ тем, что предназначен не для исполнения в ПЛК, а для изменения разработчиком. Первая часть статьи является ознако- мительной, она описывает существую- щие подходы к построению программ- ного обеспечения для языков стандарта МЭК 61131-3. В двух следующих частях изложен материал, необходимый для понимания того, какие данные об устройстве программного обеспечения производителей контроллеров нужны, чтобы успешно автоматизировать от- дельные этапы процесса миграции ПУ ПЛК. В последней части в общих чер- тах представлены методы решения этой задачи. В качестве конкретного приме- ра взяты контроллеры SIEMENS S7- 300, SIEMENS S5-101U и REGUL R600 производства российской компании «ПРОСОФТ-Системы». О БЗОР ПОДХОДОВ К ПОСТРОЕНИЮ ИНСТРУМЕНТАЛЬНЫХ СРЕДСТВ ДЛЯ МЭК 61131-3 Современное программное обеспече- ние работает под управлением большо- го количества операционных систем на базе широкого спектра микропроцес- сорных архитектур. Одна и та же про- грамма может существовать как для распространённой среди пользователей домашних ПК архитектуры IA-32 (Intel Architecture, 32-bit), так и для популяр- ных в телекоммуникационном обору- довании архитектур MIPS и PowerPC. Тем не менее имеется целый класс про- граммного обеспечения, исполняюще- гося в так называемых виртуальных ма- шинах (ВМ). Они представляют собой модель реальной ЭВМ, которая обычно включает в себя микропроцессор, па- мять и периферию. Но несмотря на важность каждого её компонента, цент- ральное место в ВМ занимает виртуаль- ный процессор. Фактически это про- граммно реализованный конечный ав- томат, на вход которого подаются ин- струкции в закодированном виде (байт- коде), переводящие его из одного со- стояния в другое. Виртуальные машины в основном бывают двух типов – ре- гистровые и стековые. В первом случае операции с данными выполняются че- рез ограниченное количество ячеек па- мяти фиксированного размера (регист- ры), а во втором – через структуру дан- ных типа стек. Известным примером программной платформы, использую- щей виртуальную машину для выпол- нения своего байт-кода, является Oracle Java. Не осталась без внимания данная технология и в программном обеспече- нии АСУ ТП, где она используется для исполнения ПУ на ПЛК. Наиболее важная и понятная причина выбора та- кого решения – переносимость. У про- изводителя контроллеров может быть несколько несовместимых между собой линеек устройств, а в каждой из них – десятки различных версий используе- мой платформы. Поддерживать и со- вершенствовать средство генерации ко- да в таких условиях – процесс весьма трудоёмкий. В случае же с виртуальной машиной достаточно лишь перекомпи- лировать её исходные тексты под дру- Необычные компиляторы для необычных окружений Сергей Федонин, Александр Наумов Необходимость миграции технологических процессов со старых зарубежных контроллеров на новые отечественные потребовала от разработчиков изучения устройства компиляторов промышленных языков программирования и сред разработки для них. Статья даёт представление о структуре и принципах построения данных компонентов, а также рассказывает о возможных путях оптимизации процессов миграции.

RkJQdWJsaXNoZXIy MTQ4NjUy