LINUX.ORG.RU

Вышла система программирования YAPLC

 ,


7

3

Вышла свободная система программирования ПЛК YAPLC.

Система представляет собой набор программ и бибилиотек со свободными лицензиями, которые позволяют создавать программное обеспечение ПЛК на базе микроконтроллеров.

Особенности YAPLC:

  • Прозрачность: компоненты системы являются свободным программным обеспечением с открытым исходным кодом.
  • Для программирования используются пять языков стандарта IEC-61131-3, для расширения программ можно использовать С.
  • В качестве формата обмена данными используется PLCopen XML.
  • Простота расширения:
    • для добавления новой аппаратной платформы достаточно:
      • создать проект среды выполнения,
      • добавить туда общие файлы,
      • написать BSP;
    • для связывания со средой разработки достаточно:
      • скопировать один из наборов целевых файлов,
      • внести изменения в соответствии с возможностями аппаратной платформы (периферия описывается простым декларативным языком);

По состоянию на 4 апреля 2017 г. YAPLC включает следующие компоненты:

  • Beremiz - интегрированная среда разработки программных ПЛК на языках IEC-61131-3;
  • matiec - транслятор языков програмрования IEC-61131-3, генерирует программный ПЛК на С;
  • GNU ARM Embedded Toolchain - легендарный набор инструментов разработчика на С и С++.
  • CanFestival - стек CanOpen;
  • FreeModbus - стек ModBus;
  • libopencm3 - библиотека драйверов периферии для микроконтроллеров с ядрами Cortex-Mх;
  • stm32flash - загрузчик для микрконтроллеров STM32;
  • YAPLC/RTE - минималистичная среда выполнения программмных ПЛК;
  • YAPLC/IDE - расширения для Beremiz, позволяющие создавать приложения YAPLC/RTE:
  • YaPySerial - динамическая библиотека для замены PySerial (замечено, что PySerial не всегда корректно определяет платформу).

В данный момент система YAPLC выходит на стадию открытого тестирования.

Текущий релиз системы предназначен для специалистов по АСУТП, желающих принять участие в тестировании системы и приборов на ее основе.

Авторы приглашают специалистов по АСУТП принять участие в этом увлекательном процессе.

>>> Подробности

anonymous

Проверено: Shaman007 ()

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

Alden ()
Последнее исправление: Alden (всего исправлений: 1)
Ответ на: комментарий от Deliverance

Это промышленная тема, там своё железо, софт и языки программирования. Инженер может вообще не знать языков общего назначения и при этом писать надежные программы на языке релейных диаграмм.

Alden ()
Ответ на: комментарий от Alden

и при этом писать надежные программы на языке релейных диаграмм

Там дело не только в этом. Программы на LD не только описывают алгоритм работы, но и позволяют наблюдать за его ходом в процессе. Это очень удобно, т.к. сразу видно, что где включено/выключено, с какими устройствами проблемы и т.п. Т.е. программа является одновременно подробной мнемосхемой.

no-such-file ★★★★★ ()

По-русски так и хочется прочитать:

Вышла система программирования YAPLACAL

Это ни в коем разе не наезд на авторов проекта, удачи им, просто выглядит забавно.

anonymous ()

Текущий релиз
Source code (tar.gz) там один файл README.md
YAPLC-0.9.9-setup.exe не знаю что такое
открыл ссыль Beremiz, там тоже как то непонятно
как на linux ставить ?

Rousk ()

Кто может подсказать, какой самый простой и дешёвый способ собрать простенький робот, который будет мерять температуру и открывать окошко в зависимости от полученных данных? Эта платформа как-то может помочь? Или как это проще всего сделать?

Wizard_ ★★★★★ ()
Ответ на: комментарий от Wizard_

Это определенно один из самых простых способов сделать это:

1. Берешь сабжевый контроллер, двигатель постоянного тока с редуктором и терморезистор от 3Д-принтера.

2. Делаешь открыватель окна.

3. Приделываешь мотор на релейные выходы по мостовой схеме, а терморезистор на аналоговый вход.

4. Рисуешь программу открывателя на языке, с которым справится даже электрик.

5. ??????

6. PROFFIT!!!

Алсо, если сабж приделать к http://www.openplcproject.com/ или хотя бы портировать на ардуину, то будет лютый ШИН!!!1

shkolnick-kun ★★ ()
Последнее исправление: shkolnick-kun (всего исправлений: 2)

Для системы программирования в новости за основу взята свободная среда разработки и система исполнения Beremiz!, одним из разработчиков коей я являюсь.

На сайте в разделе «Documentation/How To» есть описание сборки и запуска на GNU/Linux.

На youtube можно посмотреть, как это выглядит в действии. PLC на GNU/Linux заработает практически сразу, а вот с более ограниченными в ресурсах целевыми платформами, как в новости, придётся поработать.

С вопросами лучше всего обращаться в активный список рассылки beremiz-devel@lists.sourceforge.net. Единственно, что постить туда без подписки не получится.

skvorli ()
Ответ на: комментарий от shkolnick-kun

openplcproject - собственно использует редактор plcopen (PLCOpen Editor) из состава Beremiz. Однако он почему-то не захотел добавлять функционал в Beremiz и решил пилить свой проект. У него очень странный подход. Программа, созданная в редакторе, сохраняется в файл. После этого вручную через вэб-интерфейс загружается в ПЛК. И нет мониторинга и отладки. Кстати, у него есть поддержка ардуино, но она сделана так, что без ПК не работает.

skvorli ()

Кто-нибудь знает о библиотеке желательно на С под Linux, чтобы программировать PLC Controllogix от Allen-Bradley?

PLC подключен через роутер и имеет свой IP адрес.

lefsha ()

Для программирования используются пять языков стандарта IEC-61131-3

Это новость или выездная сессия «Что? Где? Когда?» Перечислите список используемых языков.

Napilnik ★★★★★ ()
Ответ на: комментарий от Napilnik

Стандартом МЭК 61131-3 описаны следующие языки

Графические:

  • LD (Ladder Diagram) — Язык релейных схем
  • FBD (Function Block Diagram) — Язык функциональных блоков
  • SFC (Sequential Function Chart) — Язык диаграмм состояний (используется для программирования конечных автоматов)

Текстовые:

  • IL (Instruction List) — Ассемблеро-подобный язык
  • ST (Structured Text) — Паскале-подобный язык

И все они поддерживаются средой разработки. Как они выглядят можно бегло посмотреть здесь, где пишется одна и та же небольшая программа на всех пяти языках программирования.

skvorli ()
Последнее исправление: skvorli (всего исправлений: 1)

Когда делал на заказ автоматизацию цеха, то там были ПЛК Mitsubishi. Пользовался GT Works. Интересно, этот ЕОПлакал мог бы заменить? Делал на Ladder, потом это транслировалось и в ПЛК грузилось.

Zubok ★★★★★ ()
Ответ на: комментарий от Zubok

В нынешнем состоянии - вряд ли.

Там вроде как программируемые реле на несколько входов/выходов.

Так что на цех явно не хватит, а вот на управление вентиляцией/отоплением в частном доме, или уличным светом - вполне подойдет.

anonymous ()

Утащил Беремиз в норку. как раз разбираю старый фануковский ладдер, на бумагах не удобно, надо интересные места записать.

Но почему в этом Беремизе можно чертить хоть наискосок? как по делать всё это ровненько, красивенько?

Chelobaka ★★★ ()
Ответ на: комментарий от Zubok

Когда делал на заказ автоматизацию цеха, то там были ПЛК Mitsubishi. Пользовался GT Works. Интересно, этот ЕОПлакал мог бы заменить? Делал на Ladder, потом это транслировалось и в ПЛК грузилось.

GXWorks наверное все-таки, GT Designer у них для панелек :) Заменить — едва ли, только если сама Мицубиши захочет поддержать

Alden ()
Ответ на: комментарий от anonymous

У мицухи есть вся линейка ПЛК от ПРок (Alpha) и небольших моноблочных контроллеров (FX) до мощных модульных System Q. На Кушке при желании можно хоть завод запилить. Цена соответствующая.

Alden ()
Последнее исправление: Alden (всего исправлений: 1)