Codesys руководство по программированию

Как программировать на codesys 2.3 новичку? Легко

Перед тем, как программировать ПЛК в среде разработки CoDeSyS 2.3 новички часто задаются вопросом: А какие системы требуется установить для корректной работы с аппаратом?? А как конфигурировать входы и выходы контроллера?? А каким образом связать устройство с ПК?? И снова, а как, а как?? Все мы с вами понимаем, устройства сложные и алгоритмы объёмные, и на изучение потребуется время. Я вот думаю, может написать небольшую книжку и назвать codesys для чайников? А вы согласны?

Из этой статьи вы узнаете:

Здравствуйте уважаемые коллеги и гости. Пишет вам автор блога kip-world.ru, Гридин Семён, и в этой статье я вам расскажу, как правильно программировать контроллер. Тема достаточно актуальная, я надеюсь после прочтения статьи, некоторые вопросы отпадут самим собой. =)

Как работает ПЛК?

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

Вычисления в устройстве выполняются циклически. То есть одни и те же действия выполнения программы выполняются в короткий промежуток времени.

В один цикл осуществляемый прибором выполняются следующие операции:

  1. Начало цикла;
  2. Чтение состояния входа;
  3. Выполнение кода пользователя;
  4. Запись состояния выходов;
  5. Обслуживание аппаратных ресурсов;
  6. Монитор системы исполнения;
  7. Контроль времени цикла;
  8. Переход на начало цикла;

Не буду больше разглагольствовать по теории. Давайте сразу перейдём к практике.

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

Конечно вам поначалу покажется, что слишком много нужно знать, чтобы связать друг с другом основное приложение и утилитки, а потом соединить устройство. Я хочу вам сказать, что ничего сложного в процессе установки и связей — нет. В этом поможет моя статья.

Для начала нам нужно установить основной дистрибутив CoDeSyS 2.3 c официального сайта ОВЕН . А, я предлагаю во многих постах, касающихся программирования, использовать устройство ОВЕН ПЛК63 . Так как это универсальное устройство с экраном. У него на борту есть и дискретные входы, и аналоговые входы, и релейные выходы.

Итак, скачиваем программу:

Затем следует стандартная процедура установки. Указываем путь и все время жмём “Далее”, “Далее”.

Следующим этапом будет установка таргетов для плк. Таргет — это некое описание о конфигурации ПЛК. Инструкция подсказывает CoDeSyS 2.3, какое количество и какие входы/выходы имеет устройство.
Скачиваем также с сайта ОВЕН . Рекомендую установить все таргеты, которые там есть. Чтобы потом не искать и не думать об этом, если придется писать алгоритм на другой ПЛК.

Запускаем автоматический установщик, устанавливаем инструкции. Всё, половину пути мы с вами уже сделали в этой работе! После этих всех процедур можно устанавливать библиотеки, но о них позже. Переходим к следующему пункту.

Рабочее окно программы

Дистрибутив мы с вами установили, таргеты тоже. Давайте мы с вами рассмотрим рабочее окно среды разработки, элементы меню и основные вкладки.

Основное поле на рисунке выше делится на три области:

  1. Редактор переменных и их типов;
  2. Дерево объектов;
  3. Редактор основного алгоритма программы;

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

Дерево объектов — в этом окне располагаются такие объекты, как функции, функциональные блоки, подпрограммы, конфигурация ПЛК, библиотеки. Об этом я расскажу позже.

Редактор программы — тут мы с вами описываем основной алгоритм программы работы контроллера. Пишется на любом языке стандарта МЭК. Более подробно, можете прочитать статью .

Простой пример на ST

Для удобства восприятия информации я постарался структурировать. Поэтапно расписал последовательность действий. Если возникнут вопросы или пожелания, обязательно пишите в комментариях.

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

Структура программного кода и практическое использование блока «Функциональный генератор» при программировании в среде CoDeSys

Рубрика: Технические науки

Дата публикации: 14.04.2014 2014-04-14

Статья просмотрена: 2706 раз

Библиографическое описание:

Поздняков А. Г., Аль-Тибби В. Х. Структура программного кода и практическое использование блока «Функциональный генератор» при программировании в среде CoDeSys // Молодой ученый. — 2014. — №5. — С. 88-93. — URL https://moluch.ru/archive/64/10266/ (дата обращения: 17.01.2020).

Введение, постановка проблемы. Современное производство предъявляет все более высокие требования к инструментам управления, контроля и автоматики. Персональные компьютеры применяются в настоящее время на всех уровнях промышленной автоматизации. Для большинства задач автоматизации применение промышленных ПК не оправдано экономически и технически сложно. Решать задачи автоматизации максимально просто, в кратчайшие сроки и с минимальным привлечением специалистов в области прикладного и системного программного обеспечения позволяют программируемые логические контроллеры (ПЛК). ПЛК — это программно управляемый дискретный автомат, имеющий некоторое множество вхо­дов, подключенных посредством датчиков к объекту управления, и множество выходов, подключенных к исполнительным устройствам. ПЛК контролирует состояния входов и вырабатывает опре­деленные последовательности программно заданных действий, от­ражающихся в изменении выходов. ПЛК предназначен для работы в режиме реального времени в условиях промышленной среды и должен быть доступен для про­граммирования неспециалистом в области информатики [1].

Программирование большинства современных ПЛК осуществляется на языках стандарта международной электротехнической комиссии (МЭК) 61131 [2]. Стандарт содержит описание аппаратных средств, требования к мон­тажу, тестированию, документации и связи по промышленной сети. Часть 3 стандарта описывает требования к языкам программирования, всего таких языков описывается пять: IL – ассемблероподобный текстовый язык; LD – графический язык релейно-контактных схем; ST – паскалеподобный текстовый язык; FBD – графический язык функциональных блоков; SFC – графический язык последовательных функциональных схем. Для программиро­вания ПЛК не требуется знание всех пяти языков МЭК 61131-3, но выбор языка существенно влияет на способ реализации задачи.

В качестве компонентов организации программ в стандарте указываются функции, функциональные блоки и программы. Любой программный компонент обладает свойством инкапсуляции, т.е. работает как «черный ящик», скрывая детали своей реализации. Для работы с компонентом достаточно знать описание его входов и выходов, а особенности реализации внутреннего алгоритма работы знать необязательно. На базе свойства инкапсуляции программные компоненты позволяют осуществлять структурную декомпозицию проекта. На верхнем уровне функционируют крупные компоненты (программы), излишние подробности на этом уровне мешают комплексному пониманию проблемы. Изучая более мелкие (вложенные) компоненты, можно раскрыть детальное представление программной реализации алгоритма работы системы. Теоретически любой компонент можно изучить и исправить по своему усмотрению. Это, безусловно, относится только к открытым для просмотра и редактирования пользовательским компонентам или библиотекам.

Читать еще:  Dvb t dvb t2 в чем разница

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

3S CoDeSys [3] это одна из самых полных и удачно реализованных сред программирования МЭК 61131-3. CoDeSys обладает набором открытых функциональных библиотек, предназначенных для решения широкого круга наиболее распространенных задач автоматизации. Одна из таких библиотек — Util.lib содержит дополнительный набор различных функций и функциональных блоков, применяемых регуляторов, генераторов и преобразований аналоговых сигналов. Рассмотрим работу функционального блока (ФБ) GEN, входящего в состав данной библиотеки среды CoDeSys v2.3. Данный блок предназначен для генерации периодически изменяющихся сигналов различных предустановленных форм: треугольный (двуполярный и однополярный), двуполярный пилообразный (нарастающий и ниспадающий), меандр, синусоида и косинусоида.

Описание принципа работы функционального блока. Библиотека Util.lib имеет открытый программный код. Для доступа к коду функциональных блоков, входящих в библиотеку необходимо ее открыть из меню «Открыть» вновь созданного проекта. Листинг программы с авторскими комментариями и описанием используемых переменных представлен ниже.

(*функциональный блок для генерации некоторых периодических функций*)

(*Раздел описания переменных*)

VAR_INPUT (*входной интерфейс блока*)

(*определение типа генерируемого сигнала:

TRIANGLE — сигнал треугольной формы от отрицательного значения амплитуды до положительного значения амплитуды сигнала.

TRIANGLE_POS — сигнал треугольной формы от нуля до положительного значения амплитуды сигнала.

SAWTOOTH_RISE — пилообразный сигнал увеличивающийся от отрицательного значения амплитуды до положительного значения амплитуды сигнала.

SAWTOOTH_FALL — пилообразный сигнал увеличивающийся от положительного значения амплитуды до отрицательного значения амплитуды.

RECTANGLE — сигнал прямоугольной формы от отрицательного значения амплитуды до положительного значения амплитуды сигнала.

SINUS — синусоидальный сигнал.

COSINUS — косинусоидальный сигнал. *)

BASE: BOOL;(* FALSE: период определяется как количество вызовов функционального блока; TRUE: период определяется заданным временем *)

PERIOD: TIME:=T#1s; (*время периода сигнала, учитывается только, если BASE=TRUE*)

CYCLES: INT:=1000; (*число вызовов блока за период, учитывается только, если BASE=FALSE *)

RESET: BOOL; (*обнуление выхода и остановка генерации сигнала*)

VAR_OUTPUT (*выходной интерфейс блока*)

OUT: INT; (*переменная генерируемого сигнала*)

VAR (*локальные переменные функционального блока*)

CET: DINT; (*переменная, используемая для отсчета времени генерируемого сигнала (шаг дискретизации по времени)*)

PER: DINT; (*переменная, определяющая длительность периода генерируемого сигнала *)

COUNTER: INT; (*счетчик вызовов блока*)

help: REAL; (*промежуточная переменная для вычисления значения синусоидального и косинусоидального сигналов*)

Видеокурс по работе с контроллером ОВЕН ПЛК110 в среде CODESYS2.3

Видеокурс выпустила компания ОВЕН. Автор — Кирилл Гайнутдинов. Курс позволяет научиться с легкостью работать с контроллером ОВЕН ПЛК110. Видеоинструкции дают наглядные рекомендации по наиболее часто встречающимся вопросам.

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

Программируемый логический контроллер ОВЕН ПЛК110 предназначен для создания систем автоматизированного управления технологическим оборудованием в различных областях промышленности, жилищно-коммунального и сельского хозяйства. Логика работы ПЛК110 определяется потребителем в процессе программирования контроллера.

Вебинар ОВЕН. Обзор контроллеров ОВЕН ПЛК1хх, ОВЕН ПЛК110:

Программирование осуществляется с помощью системы программирования CoDeSys 2.3 – специализированная среда программирования логических контроллеров. Торговая марка компании 3S-Software. Бесплатные обновления версий программы СoDeSys доступны на сайтах https://www.codesys.com Подробнее про эту среду программирования читайте здесь: Языки программирования ПЛК и программная платформа автоматизации CoDeSys

Наиболее популярные языки программирования ПЛК:

Урок 1. Почему работать с ОВЕН ПЛК просто, или «мы не боимся CODESYS».

Просмотрев данный ролик, Вы будете уметь произвести все предварительные настройки, чтобы начать создавать свой проект: Что такое Target файлы, и зачем они нужны. Насколько просто начать создавать проект под свой новый контроллер в CODESYS.

Урок 2. Конфигурация входов и выходов.

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

Урок 3. Входы и выходы здорово, а как же программа?

Пишем простую программу на языке CFC, понятном для автоматчиков. Используем в своей первой программе физические входы-выходы.

Урок 4. Вы полагаете, все это будет работать?

Важный урок, где мы не только учимся запускать и проверять работу нашей программы. Главное – мы учимся как нам подключить наш контроллер к системе программирования на компьютере по интерфейсу Ethernet.

Урок 5. Я Вам ни какой-то «сис. админ»…

Подключаем контроллер к ПЛК через стандартный COM порт. Для обладателей современных ноутбуков – через стандартный USB порт.

Урок 6. Даешь сигналов, больше и разных.

Подключаем к ОВЕН ПЛК110 модули расширения Мх110 по интерфейсу RS-485, используя протокол ModBus RTU. Считываем значение аналоговых входов с модуля МВ110-2А. Считываем значение дискретных входов, и управляем дискретными выходами на модуле МК110-8Д.4Р.

Урок 7. А как же визуализация тех. процесса?

Первая серия триллера по сопряжению контроллера ОВЕН ПЛК110 и панельного контроллера ОВЕН СПК107, под названием: «Это скучно… это мы уже умеем». Начинаем настраивать обмен между устройствами с конфигурирования (заметьте – никакого программирования) контроллера ПЛК110 в CODESYS v.2. Все как обычно, но в данном случае настраиваем ПЛК110 как Slave устройство.

Урок 8. Она же вторая часть урока 7.

Вторая серия триллера по сопряжению контроллера ОВЕН ПЛК110 и панельного контроллера ОВЕН СПК107, под названием: Не так страшен CODESYS v.2, как не страшен CODESYS v.3. Легкий экскурс в особенности CODESYS v.3 (подробнее работа с панельными контроллерами ОВЕН СПК освящается в отдельных инструкциях и видео-уроках). Настраиваем обмен по протоколу RS-485. Связываем устройства. Управляем выходами контроллера ПЛК110 непосредственно с дисплея СПК107.

Урок 9. И все-таки он вертится…

Управляем вращением двигателя, с использованием частотного преобразователя из программы контроллера ОВЕН ПЛК110 по интерфейсу RS. До сегодняшнего урока подключение ОВЕН ПЧВ по RS-485 к ПЛК казалось сложным.

Теперь мы знаем, что это не так. Все стандартно. Конфигуратор ПЛК, настраиваем обмен по сети, указываем параметры обмена между ОВЕН ПЛК110 и ОВЕН ПЧВ. Настраиваем частотный привод. Управляем двигателем с помощью ПЧВ непосредственно из управляющей программы контроллера.

Читать еще:  Nxp semiconductors страна производитель

Урок 10. ОВЕН ПЛК110. Ну, наконец-то энкодер.

Когда нам необходима быстрая реакция контроллера на внешние воздействия мы используем в контроллерах ОВЕН ПЛК110 конфигуратор задач. Создаем новую программу. Настраиваем вызов данной программы не в основном цикле, а по прерыванию программного таймера. Для примера работы с быстрыми входами ПЛК110 подключаем к контроллеру энкодер. Измеряем на столе длину листа бумаги А4.

Урок 11. А как же начальство, или передаем данные в SCADA систему.

Интегрировать контроллеры ОВЕН ПЛК110 в SCADA системы неожиданно просто. Делаем два паса мышкой в CODESYS. Важно не забыть произвести все приведенные манипуляции, и именно в этом порядке. В OPC сервере нам требуется настроить только лишь канал связи, по которому ОВЕН ПЛК110 будет подключаться к Вашей SCADA системе. Вуаля. Все готово. Можно использовать переменные в своем проекте в SCADA системе.

Урок 12. А давайте позвоним на ОВЕН ПЛК.

Часто встречается задача удаленного обновления пользовательского проекта в ОВЕН ПЛК. Один из вариантов представлен в этом видео-уроке. Самый простой и легко реализуемый вариант, при котором Вам не нужно с ужасом вспоминать страшные слова GPRS, Static IP, VPN, DDNS и прочее. Подключаем стандартный GSM модем ОВЕН ПМ01 к ПК с установленным CODESYS с одной стороны, и ОВЕН ПЛК110 с подключенным модемом ПМ01 с другой. Все что нам необходимо сделать – настроить модемы, и записать в контроллер несколько созданных на компьютере файлов.

Урок 13. Напиши мне, напиши…

Как нам оперативно получать информацию с объекта, если мы не можем все время находиться рядом? А давайте контроллер ОВЕН ПЛК110 будет слать Вам смс, в случае, если что-то случилось на объекте, или просто информационные сообщения о состоянии объекта. Например: «Котел в работе», «Темп. воды 27», «Несанкционированный доступ». Ну, или мы будем посылать смс с командами для контроллера, и контроллер будет производить управляющие воздействия на систему. Например: «Включить котел», «Остановить печь», «Выключить электропитание». При этом количество сообщений, тип сообщений и информация в смс ограничивается только Вашей фантазией.

Настраиваем подключение модема ОВЕН ПМ01 к контроллеру ОВЕН ПЛК110. Подключаем специальную библиотеку для работы с смс. Определяем необходимое количество смс, и текст, который они будут нести.

ПРОГРАММНОГО КОМПЛЕКСА CoDeSys

Кафедра «Мехатронные системы»

Р.Гартянски, Ю.Никитин

Методическое пособие к выполнению лабораторной работы

«Изучение языков программирования CoDeSys»

Рецензент: А.Б.Турыгин, канд. техн. наук, доцент

Зав. кафедрой: Ю.В.Турыгин, докт. техн. наук, профессор

В пособии рассмотрены вопросы использования программного комплекса CoDeSys. Приведены основные требования к содержанию лабораторной работы и отчета. Рассмотрены назначение, особенности программного комплекса CoDeSys, компоненты и языки программирования CoDeSys – Список Инструкций (IL), Диаграммы Функциональных блоков (FBD) и Релейно-контактные схемы (LD). Приведен порядок выполнения проекта в программном комплексе CoDeSys. Даны контрольные вопросы и список рекомендуемой методической и справочной литературы. В приложении приведен пример.

СОДЕРЖАНИЕ

1 Цели и задачи лабораторной работы……………………. … 4

2 Содержание лабораторной работы и требования к содержанию отчета 4

3 Назначение и особенности программного комплекса CoDeSys……… 5

4 Языки программирования программного комплекса CoDeSys………. 7

4.1 Язык IL (Instruction list)………………………………………………. 7

4.2 Язык релейно-контактных схем (LD)…………………………………. 9

4.3 Язык функциональных блоковых диаграмм (FBD)………………….. 10

5 Порядок выполнения работы……………………………………………. 16

6 Контрольные вопросы……………………………………………. ….…. 18

Приложение А (обязательное) Варианты заданий………………………. 19

Приложение Б (рекомендуемое) Примеры программ CoDeSys………… 20

ВВЕДЕНИЕ

В данном пособии рассмотрены вопросы использования программного продукта CoDeSys для автоматизации технологических процессов. Приведены основные требования к содержанию лабораторной работы и отчета. Рассмотрены назначение, особенности программного комплекса CoDeSys, компоненты и языки программирования CoDeSys – Список Инструкций (IL), Диаграммы Функциональных блоков (FBD) и Релейно-контактные схемы (LD). Приведен порядок выполнения работы в программном комплексе CoDeSys. Даны контрольные вопросы и список рекомендуемой методической и справочной литературы. В приложении А даны индивидуальные задания на лабораторную работу. В приложении Б приведены примеры программ и визуализации.

ЦЕЛИ И ЗАДАЧИ ЛАБОРАТОРНОЙ РАБОТЫ

Основной целью выполнения лабораторной работы является закрепление навыков программирования в среде программного комплекса CoDeSys на трех языках программирования. Задачами лабораторной работы являются закрепление навыков программирования в системе МЭК 61131-3 на трех языках программирования (Список Инструкций (IL), Диаграммы Функциональных блоков (FBD) и Релейно-контактные схемы (LD)) и визуализации.

СОДЕРЖАНИЕ ЛАБОРАТОРНОЙ РАБОТЫ И

ТРЕБОВАНИЯ К СОДЕРЖАНИЮ ОТЧЕТА

В результате выполнения лабораторной работы должны быть разработаны:

— главная программа PLC_PRG на трех языках программирования (Список Инструкций (IL), Диаграммы Функциональных блоков (FBD) и Релейно-контактные схемы (LD));

— визуализация проекта для каждого языка программирования;

Отчет должен содержать следующие разделы:

— введение, в котором описывается решаемая задача, кратко описываются разделы лабораторной работы;

— разработка главной программы PLC_PRG на трех языках программирования (Список Инструкций (IL), Диаграммы Функциональных блоков (FBD) и Релейно-контактные схемы (LD));

— разработка визуализации проекта для каждого языка программирования;

— результаты вычислительного эксперимента

НАЗНАЧЕНИЕ И ОСОБЕННОСТИ

ПРОГРАММНОГО КОМПЛЕКСА CoDeSys

Программный комплекс CoDeSys разработан компанией 3S-Smart Software Solutions GmbH (3S). Основным его назначением является программирование ПЛК и промышленных компьютеров в стандарте МЭК 61131-3. Ряд неординарных решений 3S привел к тому, что CoDeSys стал штатным инструментом программирования ПЛК более 100 ведущих европейских изготовителей: ABB, Beckhoff, Beck IPC, Berger Lahr, Bosch Rexroth, ifm, Keb, Kontron, Lenze, Moeller, WAGO, Fastwel и др. Некоторые из них используют CoDeSys как базовое ядро собственных систем программирования, известных под собственными торговыми марками.

Несмотря на очевидно наметившееся развитие CoDeSys в сторону обеспечения требований ПЛК высшего класса, комплекс можно применять и с недорогими моделями контроллеров. Специализированные встроенные компиляторы машинного кода и гибко адаптируемая система исполнения позволяют «выжать» максимум из ограниченных аппаратных ресурсов.

CoDeSys один из мощнейших инструментов МЭК 61131-3 программирования контроллеров, доступных для операционной системы Windows. Он полноценно поддерживает все пять стандартных языков программирования. CoDeSys непосредственно способен генерировать машинный код для большинства широко распространенных процессоров. CoDeSys объединяет мощь высококлассных инструментов программирования для языков высокого уровня, таких как C или Паскаль с простотой работы и практической функциональностью ПЛК систем программирования.

CoDeSys обладает рядом особенностей, выделяющих его среди конкурирующих систем:

— эффективные средства ввода;

3.1 Быстрое внедрение

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

3.2 Эффективные средства ввода

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

3.3 Высокая производительность

Встроенный компилятор непосредственно генерирует быстрый машинный код. Это обеспечивает максимально высокую производительность прикладных проектов. Современные интеллектуальные технологии, включая «инкрементальный компилятор», позволяют обрабатывать проекты, содержащие тысячи переменных и сотни программных компонентов очень быстро. CoDeSys обеспечивает разработчика набором высокоэффективных инструментальных средств, включая полноценную эмуляцию ПЛК, отладку по шагам, точки останова, визуализацию объекта управления, трассировку значений переменных, «горячую» корректировку кода.

Читать еще:  Аккумулятор зарядное устройство для телефона

CoDeSys содержит следующие компоненты:

2 Редакторы для программирования на языках:

— Список Инструкций (IL);

— Диаграммы Функциональных блоков (FBD);

— Релейно-контактные схемы (LD);

— Структурированный текст (ST);

— Последовательные функциональные схемы (SFC);

— Непрерывные функциональные диаграммы (CFC).

3 Генераторы кода для:

— Intel 8051 и программно совместимые с ним;

— Intel 80×86, 80386, 80486, Pentium и совместимые;

— ARM (т.е. StrongARM, NET+ARM);

— Infineon (Siemens) 80C16x;

— Texas Instruments DSP TMS32028x.

4 DDE и OPC серверы

5 Элементы визуализации

6 Графический иерархический ПЛК конфигуратор

7 Менеджер библиотек

8 Он-лайн функции:

— мониторинг значений переменных;

— запись и фиксация значений переменных в ПЛК;

— отладка проекта (точки останова, выполнение по шагам и по циклам, контроль стека вызовов);

— горячая коррекция кода, без остановки ПЛК;

— контроль процесса выполнения;

В CoDeSys имеются следующие языки программирования:

1 Список Инструкций (IL). Простой машинно-независимый ассемблер.

2 Структурированный текст (ST) Высокоуровневый ‘Паскаль-подобный’ язык.

3 Функциональные блоковые диаграммы (FBD). Графический язык описания логических и аналоговых вычислений в очень простой и выразительной форме. CoDeSys автоматизирует составление FBD диаграмм самостоятельно размещая программные компоненты и соединения.

4 Релейно-контактные схемы (LD). Графический язык, описывающий логику работы программы в форме соединения контактов и обмоток реле. Как и в FBD, редактор LD автоматически размещает и проводит соединения компонентов схемы.

5 Последовательные функциональные схемы (SFC). Графический язык, ориентированный на описание взаимосвязанных состояний и действий системы. CoDeSys поддерживает все без исключения типы действий предусмотренные стандартом.

6 Непрерывные функциональные схемы (CFC). Редактор CFC аналогичен FBD, но в отличие от него не разделяет диаграмму на цепи, а оперирует со свободно размещаемыми компонентами. Диаграммы могут иметь обратные связи и настраиваемый порядок выполнения.

Непосредственно в CoDeSys есть возможность создать произвольное визуальное отображение. Атрибутами (цвет, размер, положение и т.д.) графических объектов управляют значения переменных проекта.

Графическая трассировка позволяет наглядно отслеживать изменения значений переменных во времени. Одновременно можно контролировать до 20 переменных и синхронизировать запуск трассировки с определенным событием.

Работа в системе программирования CoDeSys

Работа в системе программирования

Краткое описание функций и возможностей.

Что такое CoDeSys?

CoDeSys (сокращение от слов Controller Development System) – это инструмент программирования промышленных компьютеров и контроллеров, опирающийся на международный стандарт МЭК 61131-3.

Редакторы CoDeSys

CoDeSys предоставляет встроенные специализированные редакторы для всех пяти языков МЭК 61131-3 и дополнительный CFC редактор:

    Список Инструкций (IL); Функциональные блоковые диаграммы (FBD); Релейно-контактные схемы (LD); Структурированный текст (ST); Последовательные функциональные схемы (SFC):

– мониторинг времени исполнения шагов;

– автоматический анализатор причин ошибок;

– набор управляющих флагов: сброс, разрешение мониторинга, фиксация переходов и т. д.

    Непрерывные функциональные диаграммы (CFC):

– автоматическая расстановка и соединение;

– макро опция для структурирования больших диаграмм.

Два специальных редактора управляют прикладной средой исполнения:

· Конфигуратор задач задает:

– циклические задачи и задачи, исполняемые по событиям;

– параметры сторожевого таймера;

· Конфигуратор ввода-вывода обеспечивает:

Profibus конфигурирование на основе GSD файлов;

CANopen конфигурирование на основе EDS файлов;

— специфическое конфигурирование модульных I/O систем.

Технические особенности редакторов CoDeSys

Структурирующие графические редакторы

Редакторы FBD, LD и SFC автоматически размещают свои графические элементы и соединения в соответствии со структурой диаграммы. Это ускоряет ввод, гарантирует логически согласованное отображение и практически избавляет от ручного ввода.

В соответствии с требованиями МЭК 61131-3 переменные проекта должны быть объявлены явным образом. Для этого окна редакторов имеют отдельный раздел объявлений, представленный в виде текста или таблицы. CoDeSys помогает пользователю при создании объявлений. Переменные и их свойства задаются в диалоговом окне, которое открывается автоматически при вводе нового идентификатора.

Автоматическое форматирование и Синтаксическое цветовое выделение

По желанию пользователя текст кода и объявлений автоматически форматируется и выделяется цветом. Это облегчает восприятие и положительно влияет на качество и эффективность работы.

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

Комфортабельное сравнение проектов

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

Компилятор

Встроенный компилятор CoDeSys создает быстрый машинный код непосредственно из МЭК приложения. Помимо логических переменных, компилятор поддерживает: целые и битовые переменные, длительность, время дня и дату, вычисления в формате с плавающей запятой, строки, массивы, структуры и перечисления.

Сверх требований стандарта МЭК реализованы:

– концепции объектно-ориентированного программирования.

Средства отладки и сопровождения

Мониторинг/ Запись/ Фиксация значений переменных

В режиме Online текущие значения переменных «оживают» непосредственно в окнах редакторов. В любое время пользователь может изменить либо принудительно зафиксировать нужное значение.

Точки останова/ Пошаговое выполнение/ Выполнение одного цикла/ Контроль процесса исполнения

Установка точек останова и возможность пошагового исполнения позволяют легко обнаружить допущенные ошибки. В режиме выполнения по циклам исполняется один рабочий цикл контроллера. При включенном контроле исполнения, в зависимости от редактора, доступны полезные вспомогательные переменные, например, текущее и предшествующее значения аккумулятора в IL.

Онлайн коррекция кода

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

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

Эмулятор позволяет проверить работу приложения без подключения контроллера. CoDeSys имеет встроенный эмулятор, работа с которым практически не отличается от работы в режиме Online с подключенным контроллером.

Главное окно

Главное окно CoDeSys состоит из следующих элементов (в окне они расположены сверху вниз):

· Панель инструментов. На ней находятся кнопки для быстрого вызова команд меню.

· Организатор объектов, имеющий вкладки POU, Data types, Visualizations и Resources.

· Разделитель Организатора объектов и рабочей области CoDeSys.

· Рабочая область, в которой находится редактор.

· Строка статуса, содержащая информацию о текущем состоянии проекта.

Панель инструментов, окно сообщений и строка статуса не являются обязательными элементами главного окна.

Меню находится в верхней части главного окна. Оно содержит все команды CoDeSys.

Ссылка на основную публикацию
Adblock
detector