600007 г. Владимир, ул. 16 лет Октября, д. 68А, литер "Ф", этаж 2, помещение 12
+7 (4922) 53-10-31
info@skb-proton.ru

Почему язык списка инструкций (IL) для ПЛК теряет популярность?

Преобразователи частоты

Международный стандарт IEC 61131-3 определяет языки программирования для программируемых контроллеров (они же программируемые логические контроллеры, или ПЛК), включая схема лестницы (LD), структурированный текст (ST), функциональный блок (FB), список инструкций (IL), и последовательная функциональная диаграмма (SFC). Из них список инструкций и структурированный текст считаются текстовыми языками, что означает, что они используют текст, цифры и знаки препинания, подобные естественному языку, в то время как другие считаются графическими, использующими символы и визуальные взаимосвязи для указания инструкций. МЭК представила этот стандартный набор языков для ПЛК, чтобы предоставить программистам набор языков, которые могут работать практически с любым приложением, сохраняя при этом независимость от поставщика программного обеспечения.

Обратите внимание, что диаграмма последовательных функций (SFC) технически не является языком, а скорее графическим средством разделения кода и визуального отображения состояния или режима машины.

Список инструкций был одним из первых языков программирования ПЛК, наряду с лестничной логикой. Язык списка инструкций считается языком низкого уровня, что означает, что он очень близок к машинному коду — двоичному языку, который процессор компьютера выполняет непосредственно. При использовании языка списка инструкций каждая инструкция или машинная команда помещается в новую строку. (Этот метод размещения команд в стековых строках иногда называют “логическим решателем на основе стека”, аналогичным тому, который используется в Логика RPN на некоторых калькуляторах.) Инструкции состоят из операторов, операндов и модификаторов, использующих мнемонику для операторов (например, “A” для “and” или “MOV” для “move”).

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

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

Другими словами, персонал службы поддержки должен быть специально обучен языку списка инструкций, что просто непрактично, особенно когда существуют другие языки (особенно графические), которые могут решать те же приложения и проблемы и более удобны для непрограммистов.

С этой целью редакция 3.0 технического отчета IEC TR 61131-8 (ноябрь 2017), Измерение и управление промышленными процессами – Программируемые контроллеры – Часть 8: Руководство по применению и реализации языков программирования, отмечает, что в стандарте IEC 61131-1:2013 язык списка инструкций помечен как осуждаемый (не рекомендуется использовать) для следующего выпуска стандарта. Заявленная комитетом причина такого отказа указывает на то, что “язык, подобный ассемблеру, не является актуальным в современных средах разработки”.

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

Автор изображения: RealPars