Первые шаги в программирование

Современная автоматизация немыслима без
программирования.
И если вы ещё не пробовали это, то уже пора сделать...
...первые шаги в программирование

Программирование ПЛК

Разрабатываю ПО для ПЛК ОВЕН в CoDeSys. Могу написать программу целиком, или часть программы. Или разработать АСУ на базе ПЛК ОВЕН (включая схемы и чертежи). При необходимости могу создать ПО и для ПЛК других производителей. Цена зависит от сложности, объёма работ и сроков. Ваши задачи присылайте на почту: ks-app@mail.ru. Или пишите в личку в группе ВК. Подробности см. здесь...

ПЛК - это Программируемый Логический Контроллер. Он является основой почти любой современной АСУ.

Вообще, если следовать терминологии, то программирование ПЛК - это уже разработка. Но, поскольку проектирование является частью разработки, то вполне уместно говорить об этом в разделе ПРОЕКТИРОВАНИЕ.

Сегодня существует очень много производителей ПЛК. И некоторые из них позволяют себе разные вольности. Например, есть ПЛК, программы для которых пишут на С++ или других языках программирования. Однако я не считаю это правильным, поскольку ПЛК изначально задумывался как устройство, которое можно программировать, не являясь программистом. Поэтому “настоящими” ПЛК я считаю только устройства, которые программируются на языках, определённых стандартом ГОСТ Р МЭК 61131-3. А это:

  • Текстовые языки:
  • Графические языки:
    • LD. Релейно-контактные схемы. Этот язык понравится электрикам. Для создания программы вы просто составляете её логику на реле, что очень похоже на релейные схемы. Только эти схемы вы не рисуете на бумаге и не собираете потом огромные шкафы с реле, а делаете это в графическом редакторе среды разработки, а вместо большого шкафа с реле у вас будет один небольшой ПЛК.
    • FBD. Функциональные блоковые диаграммы. Этот язык понравится электронщикам. Он очень похож на функциональные схемы электронных устройств на цифровых и аналоговых микросхемах. Блоки FBD обычно можно включать в программы на LD и других языках.
    • SFC. Последовательная функциональная схема. Пожалуй, самый простой язык. Но и самый ограниченный по возможностям.

В одной из самых лучших (ну во всяком случае с моей точки зрения) среде разработки программ для ПЛК, CoDeSys, есть ещё один язык: CFC. Но это их язык, который не определён стандартом. Так что стандартных языков программирования для ПЛК всего пять.

Средства разработки для ПЛК можно разделить на два вида:

  • Универсальные
  • Под ПЛК определённого производителя

К универсальным можно отнести уже упоминавшуюся CoDeSys и некоторые другие, например, российскую Trace Mode. В такой среде можно создавать программы для ПЛК разных производителей. Многие российские производители ПЛК используют CoDeSys.

Программирование ПЛК

На рисунке один из моих проектов в среде разработки CoDeSys 2.3. На примере модуль (программа) на языке LD. Хотя я в большинстве случаев использую язык ST. Но здесь у каждого свои предпочтения. К тому же какие-то задачи проще решить на одном языке, какие-то на другом. CoDeSys хороша тем, что позволяет комбинировать в одном проекте все языки.

Чтобы иметь возможность создавать программу в CoDeSys для конкретной модели ПЛК конкретного производителя, вам надо установить на компьютер так называемый целевой файл (target-файл), в котором определяются все свойства конкретного ПЛК. Это нужно для связи этого ПЛК со средой разработки. Trace Mode работает немного по другому, но тоже рассчитана на открытые ПЛК, где могут быть установлены исполнительные модули от Trace Mode, которые обеспечивают работу программы на ПЛК конкретной модели.

Однако многие производители не хотят предоставлять все свои тайны широкой публике, поэтому не открывают свои ПЛК для универсальных сред разработки. Так что для создания программ к этим ПЛК необходимо использовать специальную среду разработки ТОЛЬКО от производителя. Часто такая среда разработки является платной (CoDeSys бесплатная для разработки ПО ПЛК).

Такими “жадными” производителями, являются, например, Omron, Siemens и многие другие раскрученные марки. Программу для ПЛК Omron вы сможете написать только в среде разработки от Omron, которая называется CX-Programmer, либо CX-One (более универсальная) и стоит дофига денег - около 200 тыс.руб. в зависимости от количества лицензий и прочих условий.

CX-Programmer довольно неплохая среда разработки, со своим фишками. Однако её применение ограничено только ПЛК Omron, к тому же там всего два языка программирования - смесь LD/FBD, и ешё ST. Причём ST ограничен по применению, а основная программа должна быть на LD/FBD. Может быть сейчас что-то и изменилось, но когда я эту среду тестировал, то это было так. Кстати, один из примеров моей работы в этой среде можно посмотреть здесь. Это учебный проект, поэтому он выполнен не на профессиональном уровне, хотя в целом всё работает.

Примерно такая же история с Сименс и другими производителями. Но надо сказать, что и качество их продукции довольно высокое, поэтому она пользуется заслуженным спросом. Хотя в связи с событиями 2022 года в России продукцию “вражеских” государств лучше не использовать. Во-первых, очень дорого, а во-вторых, иногда очень трудно достать. Хотя и “российские” производители, такие как ОВЕН, пользуясь случаем взвинтили цены на свои ПЛК и другое оборудования автоматики.

В общем, в этот раздел я буду добавлять по мере возможности статьи и видео о программировании ПЛК. А пока всё. Подписывайтесь на новости, чтобы ничего не пропустить (красная кнопка вверху справа).



Инфо-МАСТЕР ®
Все права защищены ©
e-mail: mail@info-master.su