Найти в Дзене

Как выбрать среду разработки для программирования ПЛК? Полный гайд для новичков

Когда вы впервые в жизни берете контроллер в руки с мыслью запрограммировать его, вы думаете – как это вообще сделать?
ПЛК для новичка – это коробка с кнопками, лампочками и разъемами. Ничего не может, пока инженер не вдохнет в нее жизнь!
Какими средствами это делается? Читайте в этой статье! Как вы понимаете, сердце ПЛК – это программа, которую он исполняет, некий алгоритм работы устройств, подключенных к нему. Но как написать эту программу и поместить ее в контроллер? Тут на помощь приходят среды разработки. Среда разработки (IDE, Integrated Development Environment) — это комплекс программных средств (проще говоря специальная программа, установленная на ваш компьютер), используемый программистами для разработки программного обеспечения (ПО). Среда разработки программируемых контроллеров призвана решать следующие задачи: Благодаря сочетанию этих функций среда разработки ПО для ПЛК – важнейшая платформа для инженеров, позволяющая эффективно проектировать, тестировать и обслуживать си
Оглавление

Когда вы впервые в жизни берете контроллер в руки с мыслью запрограммировать его, вы думаете – как это вообще сделать?
ПЛК для новичка – это коробка с кнопками, лампочками и разъемами. Ничего не может, пока инженер не вдохнет в нее жизнь!
Какими средствами это делается? Читайте в этой статье!

Среда разработки и ее задачи

Как вы понимаете, сердце ПЛК – это программа, которую он исполняет, некий алгоритм работы устройств, подключенных к нему. Но как написать эту программу и поместить ее в контроллер? Тут на помощь приходят среды разработки.

-2

Среда разработки (IDE, Integrated Development Environment) — это комплекс программных средств (проще говоря специальная программа, установленная на ваш компьютер), используемый программистами для разработки программного обеспечения (ПО).

Среда разработки программируемых контроллеров призвана решать следующие задачи:

  • Конфигурация оборудования. Настройка самого ПЛК, модулей ввода/вывода (I/O), связи и тп. перед началом программирования.
  • Разработка программного алгоритма. Написание логики системы автоматизации с использованием различных языков программирования.
  • Тестирование и отладка. Запуск программы в автономном режиме для проверки функциональности без использования реального оборудования.
  • Загрузка ПО и ввод устройств в эксплуатацию. Перенос протестированной программы в ПЛК и проверка его работы.
  • Устранение неполадок и мониторинг. Выявление неисправностей, проверка состояния входов/выходов в режиме реального времени и обеспечение безопасной работы предприятия.
  • Конфигурация модулей ввода/вывода. Настройка цифровых/аналоговых сигналов, фильтров и диапазонов.
  • Настройка связи. Настройка протоколов, таких как Modbus и Profibus/Profinet.
  • Обработка данных. Базы данных регистров/переменных/тегов, структуры, массивы, рецепты и регистрация данных.
  • Интеграция с HMI/SCADA. Привязка регистров ПЛК к панелям оператора и системам SCADA; тестирование экранов и сигналов тревоги.
  • Контроль версий и документирование. Сравнение проектов, создание отчетов, экспорт/импорт и ведение версий.
  • Безопасность и обслуживание. Роли пользователей, пароли контроллеров, обновление прошивки, резервное копирование/восстановление.

Благодаря сочетанию этих функций среда разработки ПО для ПЛК – важнейшая платформа для инженеров, позволяющая эффективно проектировать, тестировать и обслуживать системы автоматизации.

Какую программу выбрать для программирования ПЛК?

На первый взгляд, выбор среды разработки кажется свободным и зависящим от личных предпочтений. Однако в реальности программист ПЛК не выбирает среду — это делает производитель контроллера. Среда разработки является неотъемлемой частью экосистемы конкретного производителя ПЛК и тесно связана с архитектурой аппаратного обеспечения, системой команд, протоколами связи и внутренней структурой исполняемого кода. Попытка использовать стороннее ПО для программирования контроллера, не предназначенного для этого, приведёт к несовместимости или полному отказу системы.

-3

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

Но есть хорошая новость! ПЛК – это стандартизированное устройство. Все ПЛК, чтобы называться таковыми, должны поддерживать международный стандарт МЭК (IEC) 61131. В частности, МЭК 61131-3, этот раздел, описывает как раз программирование ПЛК. Поэтому все среды разработки так или иначе похожи, так как должны поддерживать этот стандарт. 
Тут как у автомобилей – у кого-то руль справа, у кого-то слева, у кого-то коробка, у кого-то автомат, рулевые лепестки разные и т.п. Да, может быть неудобно пересаживаться с одного авто на другое. Но если вы знаете ПДД и уже водили хотя бы одну машину – привыкнуть не составит труда.

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

Какие же среды разработки используют разные производители? Давайте разбираться.

OWEN Logic для программируемых реле Овен. Среда поддерживает язык FBD и частично ST. Также есть ПЛК Овен, которые программируются в средах CoDeSys, MASTERSCADA 4D, КРУГОЛ и Полигон.

SMLogix для ПЛК Segnetics. Поддерживает только язык FBD, который здесь, впрочем, частично напоминает CFC (не входит в стандарт МЭК 61131-3).

Astra IDE для ПЛК Regul. Поддерживает все языки стандарта МЭК 61131-3 (FBD, ST, LD, SFC, IL) и CFC. Очень похожа на CoDeSys.

EcoStruxure Machine Expert (ранее SoMachine) и EcoStruxure Control Expert (ранее Unity Pro) для контроллеров Schneider. Все языки стандарта МЭК и CFC. Очень похож на CoDeSys.

TIA Portal для Siemens. Наверное, самая «выпендрёжная» среда разработки. Почти все языки в ней названы по-другому и имеют какие-то особенности: FBD, ST - SCL, LD - LAD, SFC - S7-GRAPH, IL – STL. Есть также поддержка CFC за отдельную плату, хотя сама среда разработки, итак, оплачивается отдельно. Несмотря на все это, Siemens очень распространен за рубежом.

TwinCAT для Beckhoff. Поддерживает все языки: IL, FBD, LD, SFC, ST, CFC.

Studio 5000 Logix Designer для Allen-Bradley. LD, FBD, ST, SFC.

Sysmac Studio и CX-Programmer для Omron. LD, FBD, ST и SFC (только в CX-Programmer).

GX Works3 для Mitsubishi. Поддерживает языки LD, ST, FBD, SFC.

ISPSoft для Delta. Поддерживает все языки стандарта МЭК и CFC. Некоторые контроллеры также программируются в WPLSoft (только LD, IL и SFC), а некоторые в CoDeSys.

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

А есть ли универсальные программы, где можно программировать разные контроллеры?

И да, и нет. Да, есть среды разработки, в которые программируются ПЛК разных производителей. Но использование конкретной среды разработки по-прежнему зафиксировано производителем для каждого конкретного устройства.

-4

Примеры таких сред разработки:

ISaGRAF. Поддерживает все языки стандарта МЭК 61131-3. Используется для программирования некоторых моделей ПЛК Трансформер-SL, Wiren Board 6, MKLogic_500, Текон, АГАВА, Fastwel, МОХА.

Полигон. Программы пишутся на графическом языке, основанном на функциональных блоках. Используется для программирования: ОВЕН, АБАК, REGUL, Fastwell, Beckhoff, Octagon, MIC2000.

MASTERSCADA 4D. Поддерживает все языки стандарта МЭК 61131-3 и C#. Используется для программирования: RealLab, Овен, REGUL, WirenBoard 7, ONI, Bolid.

CoDeSys. Поддерживает все 5 языков МЭК 61131-3, а также язык CFC. Наиболее известная и широко распространённая среда для программирования контроллеров. Поддерживается более чем 500 производителями ПЛК, среди них: Weintek, Овен, RealLab, XINJE, HCFA, АГАВА, АБАК, Inovance, Optimus Drive, Systeme Electric и др.

Где скачать среду разработки для программирования ПЛК?

Среду разработки всегда можно найти на официальном сайте производителя или поставщика вашего контроллера. Обычно она размещается в разделах «Поддержка» (Support), «Загрузки» (Downloads), «Программное обеспечение» (Software) или «Разработчикам» (For developers, devs).

-5

Иногда для скачивания требуется регистрация, а иногда – приобретение лицензии. Но есть производители, которые предоставляют среду разработки бесплатно – что, несомненно, способствует их продвижению на рынке. Если же ПО для программирования платное – обычно производитель размещает бесплатные студенческие и демоверсии для обучения и тестирования.

Также на сайтах производителей часто доступны спецификации, руководства, примеры проектов, библиотеки функций и обучающие видео — всё это важно и для новичков, и помогает быстро познакомиться с новым оборудованием опытным пользователям.

Что еще нужно для программирования ПЛК?

Итак, вы установили среду разработки, что делать дальше? Помимо среды разработки иногда требуется скачать и установить дополнительное ПО для конфигурирования входов-выходов, диспетчеризации и визуализации или таргет-файлы. Уточнить, что еще вам нужно для конкретной конфигурации оборудования и системы можно на сайте поставщика или производителя.

Далее вам нужно написать программу. Опустим подробности этого процесса, расскажем об этом в других статьях, а еще лучше приходите к нам на курсы – там об этом подробно!

После того, как программа написана, ее нужно загрузить на контроллер. Для этого нужно к нему подключиться. Некоторые ПЛК подключаются к компьютеру обычным USB, некоторые через разъем RJ45 (Ethernet) и другие интерфейсы. Чаще всего на ПЛК нужно также подать питание – 220В или 24В (потребуется еще блок питания), но иногда достаточно питания USB. Также для отладки каких-то функций программы нужно подключить все датчики и исполнительные устройства (для тестов это не обязательно, можно обойтись математическими моделями или переменными-заглушками).

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

После этапа пусконаладки и устранения всех ошибок программирование ПЛК считается завершенным.

С какой среды разработки лучше начать новичку?

Для новичка, стремящегося быстрее влиться в профессию, наиболее разумным выбором в текущей рыночной ситуации в России будет CoDeSys. Почему?

  • Во-первых, эту среду разработки можно скачать совершенно бесплатно. Да, лицензия CoDeSys стоит денег, но обычно ее стоимость уже включена в стоимость оборудования.
  • Во-вторых – это широкая распространенность в России и за рубежом – более 500 производителей ПЛК используют CoDeSys.
  • В-третьих, CoDeSys является воплощением международного стандарта МЭК 61131-3, и принципы, изученные в нём, являются фундаментальными и переносимыми на другие среды разработки, такие как TIA Portal, TwinCAT, EcoStruxure и другие.
  • В-четвертых, в нем есть встроенный симулятор, который позволяет производить отладку без использования реального железа.
  • В-пятых, CoDeSys активно используется в образовательных учреждениях и входит в состав многих учебных лабораторий, включая российские. 
     Так у нас в школе есть стенды с симуляторами реальной насосной станции, где есть частотники и насосы, которые даже умеют выходить из строя и вызывать аварии.

Овладев логикой и языками программирования в CoDeSys, вы получите прочный фундамент, на котором можно строить свою дальнейшую карьеру. Затем, в зависимости от специфики работы и вашего региона, можно будет освоить и другие среды: SMLogix, TIA Portal, Studio 5000 или OWEN Logic; разобраться подробнее в железе и в техпроцессах.

А чтобы ваш путь в мире автоматизации шел быстрее и легче, приходите на курсы для инженеров АСУ ТП и КИП и А в нашу школу!

Занятия идут от простого к сложному, начиная от проектирования и создания таблицы сигналов и заканчивая нестандартной работой с протоколом ModBus и разработкой интерфейсов. Есть также занятия по контрольно-измерительным приборам и даже курс, где мы подробно разбираем 12 общепромышленных техпроцессов! 
Будет интересно как новичкам, так и практикующим специалистам.

Чтобы узнать больше о курсах - записывайтесь на наш ближайший онлайн-вебинар на сайте: plc-edu.pro.