EnglishУкраїнськаmRussian
Login/New
Topic with no new replies

OpenSCADA как среда исполнения ПЛК


Author Message
Written on: 12. 12. 2012 [19:46]
Gregory
Григорий Рубцов
Topic creator
registered since: 12.12.2012
Posts: 4
Доброго времени суток, коллеги!
Пожалуйста, ответьте на такой вопрос. Если OpenSCADA может использоваться в качестве среды исполнения ПЛК, то правильно ли я понимаю, что этот же ПЛК можно запрограммировать при помощи OpenSCADA? Тогда на каких языках осуществляется программирование? МЭК 61131-3? Т.е., теперь OpenSCADA, в каком-то смысле, может служить заменой таким программным продуктам как CoDeSys и IsaGRAF? Может, кто-нибудь подcкажет есть ли какие-либо open source программы-аналоги CoDeSys? Буду признателен за любую информацию.
Written on: 13. 12. 2012 [08:15]
roman
Roman Savochenko
Moderator
Contributor
Developer
registered since: 12.12.2007
Posts: 3750
"Gregory" wrote:

Если OpenSCADA может использоваться в качестве среды исполнения ПЛК, то правильно ли я понимаю, что этот же ПЛК можно запрограммировать при помощи OpenSCADA?

Не всякий ПЛК можно запрограммировать, а те которые являются в значительной степени открыты, предполагают возможность смены среды исполнения ПЛК и обладают достаточными аппаратными ресурсами для исполнения ядра OpenSCADA и ряда нужных модулей. Примеров много в решениях: http://oscada.org/ru/glavnaja/reshenija/

"Gregory" wrote:

Тогда на каких языках осуществляется программирование? МЭК 61131-3?

На собственном внутреннем: http://oscada.org/ru/razrabotka/zadachi/posts/tasks_forming_formirovanie_zadach/plcs_programming_languages_iec_61131_3_en_61131/

"Gregory" wrote:

Т.е., теперь OpenSCADA, в каком-то смысле, может служить заменой таким программным продуктам как CoDeSys и IsaGRAF?

Не теперь, а давно.

Learn, learn and learn better than work, work and work.
Written on: 13. 12. 2012 [08:42]
almaz
Almaz Karimov
Contributor
registered since: 25.09.2008
Posts: 516
"Gregory" wrote:
Если OpenSCADA может использоваться в качестве среды исполнения ПЛК, то правильно ли я понимаю, что этот же ПЛК можно запрограммировать при помощи OpenSCADA?
В комплексе с ОС Linux OpenSCADA представляет собой универсальное решение, то есть одновременно среду исполнения и разработки как для ПЛК, так и для различных серверов и станций оператора. Соответственно, программировать как ПЛК, так и сервера с рабочими станциями, можно прямо в среде исполнения. Даже во время работы среды исполнения можно "вгорячую" менять алгоритмы и данные.
"Gregory" wrote:
Тогда на каких языках осуществляется программирование? МЭК 61131-3?
По сути, в OpenSCADA реализовано два языка программирования.
1. Графический язык позволяет "рисовать" схему алгоритма в виде блоков, соединённых между собой связями (потоками данных). Только визуальное графическое представление такой схемы на данный момент не реализовано. Схема "рисуется" в виде списка блоков и списков связей между блоками в дереве проекта (блочный вычислитель).
2. Java-подобный язык позволяет создавать внутренние алгоритмы блоков, элементов визуализации и интерфейса пользователя. Кроме того, есть системные вызовы, позволяющие использовать всю мощь языка программирования shell командной строки Linux.
"Gregory" wrote:
Т.е., теперь OpenSCADA, в каком-то смысле, может служить заменой таким программным продуктам как CoDeSys и IsaGRAF?
OpenSCADA может служить и уже давно служит заменой любых SoftLogic и SCADA систем.
"Gregory" wrote:
Может, кто-нибудь подcкажет есть ли какие-либо open source программы-аналоги CoDeSys?
OpenSCADA.

21 век - век повсеместной автоматизации. Главное - во благо всем людям.
Written on: 13. 12. 2012 [13:48]
Gregory
Григорий Рубцов
Topic creator
registered since: 12.12.2012
Posts: 4
Спасибо за ваши ответы!
Коротко расскажу, почему возник такой вопрос. Наша фирма занимается системной интеграцией в сфере АСУ ТП. Для реализации наших проектов мы закупаем порядка 250 ПЛК в год. Все ПЛК программируются на языках МЭК 61131-3, а именно, на ST и LD. Выбор этих языков не случаен. На ST мы пишем ту часть программы, которая не касается технологических алгоритмов, а на LD либо мы, либо технологи заказчика реализуют алгоритмы технологического процесса. Часть наших заказчиков согласились работать именно с нами, т.к. мы предоставили им возможность самим программировать ПЛК.
Сейчас мы стали думать о создании своего собственного ПЛК. Первоначально идея была такой: Сперва делаем железо на базе ARM9 (архитектуру ARM выбрали потому, что с ARM7 мы уже хорошо научились работать), затем ставим на ARM9 операционку, тот же Linux, например. Далее стыкуем операционку с Си-шными библиотеками, реализующими нужные нам интерфейсы ввода-вывода. И наконец поверх всего этого софта ставим в процессор адаптацию CoDeSys.
Но, когда мы прикинули стоимость лицензии на CoDeSys… пришли к выводу, что дороговато это будет для нас, т.к. 250 шт. ПЛК в год – это не очень много для того чтобы ставить CoDeSys. Так что стали теперь искать ему альтернативу.
Written on: 14. 12. 2012 [07:16]
almaz
Almaz Karimov
Contributor
registered since: 25.09.2008
Posts: 516
"Gregory" wrote:
Часть наших заказчиков согласились работать именно с нами, т.к. мы предоставили им возможность самим программировать ПЛК.
Используя OpenSCADA, сможете предоставить конечным пользователям гораздо больше. Не только модернизацию программ ПЛК, серверов и станций оператора (возможность изменения программ часто нужна при эксплуатации, модернизации техпроцессов), но и свободу выбора железа (контроллеров, блоков ввода-вывода). Заказчики будут только рады от отсутствия привязки к быстро устаревающему и дорогостоящему железу.
"Gregory" wrote:
Сейчас мы стали думать о создании своего собственного ПЛК.
С OpenSCADA можно использовать массу уже готовых и дешёвых ПЛК (начиная чуть ли не с 25$). Выгодно ли экономически создание своего ПЛК?
"Gregory" wrote:
Сперва делаем железо на базе ARM9
Подойдёт для несложных низкоскоростных задач. Сложные скоростные проекты требуют хорошую вычислительную мощь, поэтому пока пользуемся мощными компьютерами-ПЛК (NISE-2000, NISE-103, NISE-104). Скоро должны появится дешёвые минисуперкомпьютеры на ARM, на которых уже можно будет развернуть требовательные проекты на OpenSCADA. Интересно сможет ли OpenSCADA использовать десятки-сотни-тысячи ARM-ядер...
http://www.kickstarter.com/projects/adapteva/parallella-a-supercomputer-for-everyone/
http://www.adapteva.com/products/epiphany-ip/epiphany-architecture-ip/

21 век - век повсеместной автоматизации. Главное - во благо всем людям.
Written on: 18. 12. 2012 [07:40]
Gregory
Григорий Рубцов
Topic creator
registered since: 12.12.2012
Posts: 4
Заинтриговала меня ваша мысль по поводу того, что можно OpenSCADA ставить не только на ПЛК собственного производства, но и на уже готовые ПЛК сторонних производителей. Как Вы считаете, удастся ли следующий эксперимент. Берём полуфабрикатный ПЛК-модуль фирмы Beck, например, SC24 (проц: SC186-EX 96 МГц, ОЗУ 8 Мб, Flash диск 8 Мб), или помощней SC243 (проц: MPC5200/400 МГц, ОЗУ 64 Мб, Flash диск 32 Мб). Далее, сносим под чистую всё предустановленное на него ПО (там стоит их фирменная RTOS). И за тем, на этот ПЛК-модуль ставим Linux и среду исполнения OpenSCADA. На персональном компе у пользователя будет стоять среда разработки (та же самая OpenSCADA), в которой он будет писать код для контроллера на внутреннем языке OpenSCADA.
Written on: 18. 12. 2012 [08:31]
almaz
Almaz Karimov
Contributor
registered since: 25.09.2008
Posts: 516
Слабенькие машинки. Даже для нетребовательных проектов не стал бы использовать что-то слабее Raspberry Pi, чтобы не упереться в самый ответственный момент в вычислительный потолок железки. Для техпроцессов, требующих вычислений более 10 раз в секунду нескольких десятков-сотен блоков блочного вычислителя с внутренней программой блоков в десятки-сотни строк, на ARM вообще не стоит строить системы. На современных 2-х и 4-х ядерных ARM-процессорах, используемых в смартфонах и планшетах, конечно, не испытывал OpenSCADA. Возможно они будут работать хорошо с требовательными проектами. Поэтому пользуемся пока x86_32 и x86_64. На вышеуказанных многоядерных ARM (Parallella) можно будет попробовать...

К тому же важна распространённость железки, соответственно поддержка сообществом разработчиков (наличие готового системного ПО, методик прошивки и т.д.).
http://ru.wikipedia.org/wiki/Raspberry_Pi

Аппаратные требования OpenSCADA:
http://wiki.oscada.org/Function?v=dzh#h83-6

[This article was edited 1 times, at last 18.12.2012 at 08:43.]

21 век - век повсеместной автоматизации. Главное - во благо всем людям.
Written on: 18. 12. 2012 [08:45]
roman
Roman Savochenko
Moderator
Contributor
Developer
registered since: 12.12.2007
Posts: 3750
"Gregory" wrote:

Заинтриговала меня ваша мысль по поводу того, что можно OpenSCADA ставить не только на ПЛК собственного производства, но и на уже готовые ПЛК сторонних производителей.

Вы сюда смотрели?

"Gregory" wrote:

Как Вы считаете, удастся ли следующий эксперимент. Берём полуфабрикатный ПЛК-модуль фирмы Beck, например, SC24 (проц: SC186-EX 96 МГц, ОЗУ 8 Мб, Flash диск 8 Мб), или помощней SC243 (проц: MPC5200/400 МГц, ОЗУ 64 Мб, Flash диск 32 Мб). Далее, сносим под чистую всё предустановленное на него ПО (там стоит их фирменная RTOS). И за тем, на этот ПЛК-модуль ставим Linux и среду исполнения OpenSCADA.

Первый не годится в принципе, поскольку мало оперативки, флешки и проц похоже близок к музейному экспонату, поскольку 16-разрядный, на которых Linux никогда не работал. Второй вроде нормальный, хотя что-бы втиснуться на ту флешь прийдётся отказываться от полноценных дистрибутивов Linux и использовать прямую сборку КФС: http://wiki.oscada.org/Using/PLC#h1086-2

Learn, learn and learn better than work, work and work.



22524