Стандартом МЭК предусмотрено 5 языков программирования ПЛК: IL, LD, FBD, ST, SFC. При разработке проекта пользователь может выбратьлюбой из языков для написания конкретного программного модуля (POU).В рамках одного проекта могут присутствовать программные модули, написанные на разных языках. В CoDeSys поддержаны все 5 языков, а также один
дополнительный:
• IL (Instruction List) - Список инструкций - язык программирования, напоминающий ассемблер Siemens STEP7. Все операции производятся через ячейку памяти, «аккумулятор», в который программа записывает результаты произведенных действий.
• LD (Ladder Diagram) - Релейные диаграммы - графический язык программирования, использующий принципы построения электрических схем. С помощью элементов «контакт» и «катушка» пользователь собирает схему прохождения сигнала. Язык удобен для реализации логических алгоритмов работы с дискретными сигналами.
• FBD (Functional Block Diagram) -Диаграмма а функциональных блоков - графический язык
программирования. Все действия и операторы, используемые в данном языке, представляются в виде функциональных блоков (ФБ). ФБ имеют входы и выходы определенных типов, которые могут быть связаны между собой.Помимо стандартных ФБ пользователь может вставлять в алгоритм собственные POU, созданные в рамках данного проекта или реализованные в подключенных к проекту библиотеках.В CoDeSys реализован улучшенный язык программирования с помощью функциональных блоков, получивший обозначение CFC.
|
|
• ST (Structured Text) - Структурный текст - текстовый язык программирования, схожий с языком высокого уровня (С, Pascal). Язык ST удобен для реализации сложных вычислений, циклов и условий, для работы с аналоговыми сигналами.
• SFC (Sequentional Functional Chart) - Последовательные функциональные схемы - графический язык, приспособленный для создания последовательности этапов алгоритма работы.Каждый этап реализуется на любом удобном для пользователя языке.Язык удобен для создания алгоритмов управления сложными процессами, имеющими несколько ступеней, написания моделей автоматов.