Современные технологии автоматизации» («СТА») —  журнал для квалифицированных специалистов по промышленной автоматизации Форум СТА — современные технологии автоматизации Домашняя страница
Домашняя страница форума CTA Домашняя страница форума CTA > II. АСУТП и SCADA > Архив
  Активные темы Активные темы
  FAQ FAQ  Искать в форуме   Зарегистрироваться Зарегистрироваться  Вход в систему Вход в систему

Новые языки программирования для ПЛК

 Ответить Ответить
Автор
Сообщение
_IP_ Смотреть выпадающим
Действительный член
Действительный член


Присоединился: 29 Январь 2004
Категория: Russian Federation
Online Status: Offline
Публикации: 293
Свойства публикации Свойства публикации   Ответить, цитируя автора - _IP_ Ответить, цитируя автора -  ОтветитьОтвет Прямая ссылка на эту публикацию Тема сообщения: Новые языки программирования для ПЛК
    Опубликовано: 09 Ноябрь 2005 14:56

Вопрос в том, какие технологии программирования ПЛК используются на практике, какие нужны для этого инструменты? Возможно, нужен специальный язык или дополнения к МЭК языкам?

Достаточно известен автоматный подход и его практическая реализация в виде SWITCH технологии. Но об этом говорят как о покойнике редкие люди с восторгом, остальные никак… О других подходах вообще нет публикаций.

Возможно, все это просто ни кому практически не нужно и не интересно?
(весной подобная тема заглохла практически без обсуждения
http://forum.cta.ru/forum_posts.asp?TID=1023)

Что касается собственно автоматного подхода к программированию контроллеров он не вызывает проблем. Четко выделить в задаче состояния и запрограммировать их не вопрос. Всегда так делали и 20 лет назад. Однако всегда есть нечто, что плохо выражается автоматом. Вычислительные задачи проще делать внутри некоторого состояния, не используя для этого автомат. В итоге получается некая вполне разумная комбинация.

Так даже в SWITCH технологии применяется расширенная модель автомата с таймерами и внешними сигналами. То есть нужно приложить усилия, чтобы нарисовать граф, оставаясь в рамках принятой модели.

Так я почти всегда  срываюсь на распараллеливание выполнения. В итоге граф превращаться в сеть Петри и SFC программу. Если все сделано аккуратно, то понимание такой программы не вызывает вопросов. Найти в чужой программе этап ответственный за выполнение определенной операции и поправить его не вызывает сложности.

Основной плюс SWITCH технологии в формальном получении программы по графу. Что дает надежный код. Отлично но… Сам граф составляется неформально по текстовым описаниям и др. Даже в примерах публикаций встречаются несоответствия описаний и графа, увы. Неоднозначности в графах это норма. Так получается ПО зависящее от порядка выполнения. В нормальных условиях это будет работать отлично. В аварийных ситуациях будут глюки. Например, из-за неисправности датчиков одновременно возникают условия, которых быть не может ни когда и в графе это естественно не отражено.

В итоге получается, что данная технология очень хороша в умелых руках, как собственно и любой инструмент.

Реально мы наблюдаем сближение ПЛК и компьютеров и явный интерес к привнесению в МЭК языки свойств популярных компьютерных языков, прежде всего ООП.

Вопросы в том нужны ли специальные инструменты для реализации на ПЛК автоматов? Что мешает использовать то, что уже есть? Почему мало кто из изготовителей инструментов стараются делать такие инструменты? Почему существующие реализации (например S7-HiGraph) не пользуются массовым признанием?

Igor Petrov
Наверх
remint Смотреть выпадающим
Действительный член
Действительный член


Присоединился: 24 Февраль 2004
Категория: Russian Federation
Online Status: Offline
Публикации: 185
Свойства публикации Свойства публикации   Ответить, цитируя автора - remint Ответить, цитируя автора -  ОтветитьОтвет Прямая ссылка на эту публикацию Опубликовано: 09 Ноябрь 2005 15:41
Первоначально опубликовано _IP_

Вопрос в том, какие технологии программирования ПЛК используются на практике, какие нужны для этого инструменты? Возможно, нужен специальный язык или дополнения к МЭК языкам?


Достаточно известен автоматный подход и его практическая реализация в виде SWITCH технологии. Но об этом говорят как о покойнике редкие люди с восторгом, остальные никак… О других подходах вообще нет публикаций.


Возможно, все это просто ни кому практически не нужно и не интересно?
(весной подобная тема заглохла практически без обсуждения
http://forum.cta.ru/forum_posts.asp?TID=1023)


Мы потом продолжили наше общение по этой теме по электронной почте и аське. Было "исписано" довольно много виртуальных страниц. Я даже попытался пообщаться с Шалыто, но как-то взаимопонимания не получилось, к сожалению... Возможно - стоит выложить историю переписки?

Первоначально опубликовано _IP_

Что касается собственно автоматного подхода к программированию контроллеров он не вызывает проблем. Четко выделить в задаче состояния и запрограммировать их не вопрос. Всегда так делали и 20 лет назад. Однако всегда есть нечто, что плохо выражается автоматом. Вычислительные задачи проще делать внутри некоторого состояния, не используя для этого автомат. В итоге получается некая вполне разумная комбинация.


Также думаю и я, и на данный момент мы пробуем реализовать эти идеи в нашей системе программирования контроллеров KLogic.

Первоначально опубликовано _IP_

Вопросы в том нужны ли специальные инструменты для реализации на ПЛК автоматов? Что мешает использовать то, что уже есть? Почему мало кто из изготовителей инструментов стараются делать такие инструменты? Почему существующие реализации (например S7-HiGraph) не пользуются массовым признанием?


Это Step7? Наверное потому, что это не такой уж массовый продукт, у него узкое применение только для "своих" контроллеров. В более широком IsaGRAF, например, такого языка нет. Ну и стиль мышления большой армии инженеров-внедренцев просто так не поменяешь.
Александр Бурмистров,
www.entels.ru
Наверх
_IP_ Смотреть выпадающим
Действительный член
Действительный член


Присоединился: 29 Январь 2004
Категория: Russian Federation
Online Status: Offline
Публикации: 293
Свойства публикации Свойства публикации   Ответить, цитируя автора - _IP_ Ответить, цитируя автора -  ОтветитьОтвет Прямая ссылка на эту публикацию Опубликовано: 09 Ноябрь 2005 16:23

Александр, спасибо за ответ!

HiGraph это опциональная надстройка к S7.
См. начальный курс по HiGraph

Планируете ли Вы в KLogic некий графический редактор или табличную реализацию, если не секрет?  

Igor Petrov
Наверх
remint Смотреть выпадающим
Действительный член
Действительный член


Присоединился: 24 Февраль 2004
Категория: Russian Federation
Online Status: Offline
Публикации: 185
Свойства публикации Свойства публикации   Ответить, цитируя автора - remint Ответить, цитируя автора -  ОтветитьОтвет Прямая ссылка на эту публикацию Опубликовано: 09 Ноябрь 2005 17:24
Первоначально опубликовано _IP_

HiGraph это опциональная надстройка к S7.
См. начальный курс по HiGraph


Напрямую эта ссылка что-то не работает, но я нашел этот документ, и другие, посмотрю.

Первоначально опубликовано _IP_

Планируете ли Вы в KLogic некий графический редактор или табличную реализацию, если не секрет?  


Визуально это должен быть обычный граф, который мы дизайним графически. Элементы этого графа - состояния, условия перехода - программируем на ФБД, в том числе с применением нашего универсального ФБ "Скрипт". Более точно пока не могу ничего сказать - как раз сейчас занимаюсь детальной проработкой, пишу дизайн-документ, еще много неясных вопросов. Потом могу выложить этот документ для ознакомления на общий доступ.
Александр Бурмистров,
www.entels.ru
Наверх
 Ответить Ответить

Переход на форум Права доступа на форуме Смотреть выпадающим

Bulletin Board Software by Web Wiz Forums® version 9.64
Powered by Web Wiz Forums Free Express Edition
Copyright ©2001-2009 Web Wiz