Суббота, 14 ноября 2020 19:00

Изучение среды программ CoDeSys Избранное

Автор
Оцените материал
(0 голосов)

Основные положения

Программируемые логические контроллеры программируемые логические контроллеры, сокращенно ПЛК (PLC - Programmable Logic Controller) впервые появляются в 1969г. для автоматизации автомобильной промышленности.

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

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

Задачи управления требуют непрерывного циклического контроля. В каких - либо цифровых устройствах непрерывность достигается за счет применения дискретных алгоритмов, повторяющиеся через довольно малые промежутки времени. Таким образом, вычисления в ПЛК всегда повторяются циклически. Одна итерация, включающий измерения и расчетной к воздействию, называется рабочим циклом ПЛК. Выполняемые действия зависят от значения входов контроллера, предшествующего состояния и определяются пользовательской программой. При включении питания ПЛК выполняет самотестирования и настройки аппаратных ресурсов, очистки оперативной памяти данных (ОЗУ), контроль целостности приложения пользователя. Если приложение сохранена в памяти, ПЛК переходит к основной работе, состоящий из постоянного повторения последовательности действий, входящих в рабочего цикла. Рабочий цикл ПЛК состоит из нескольких фаз: 1. Начало цикла. 2. Чтение состояния входов. 3. Выполнение кода программы пользователя. 4. Запись состояния выходов. 5. Обслуживание аппаратных ресурсов ПЛК. 6. Монитор системы исполнения (системное программное обеспечение ПЛК). 7. Контроль времени цикла. 8. Переход на начало цикла. Стандарт МЭК 61131 стандарт МЭК 61131 был введен в 1982 г. с целью решения проблем унификации оборудования промышленной автоматизации. Он включает требования к аппаратным средствам, монтажа, тестирования, документации, связи в и программирования ПЛК. Языки программирования относятся к разделу МЭК 61131 - 3. Стандартом описывается 5 языков программирования. Текстовые: - Instruction List (IL) - список инструкции, образованные соединением контактов. Нагрузкой каждой цепи служит реле. Каждое реле имеет контакты, которые можно использовать в других цепях. Последовательное (I), параллель (ИЛИ) соединения контактов и инверсия (НЕ) образуют базис Буля. В результате LD идеально подходит не только для построения релейных автоматов, но и для программной реализации комбинационных логических схем. Благодаря возможности включения в LD функций и функциональных блоков, выполненных на других языках, сфера применения языка текстовые; - Structured Text (ST) - структурированный текст. Графические: - Sequential Function Chart (SFC) - последовательные функциональные диаграммы; - Function Block Diagram (FBD) - функционально - блочные диаграммы; - LadderDiagram (LD) - лестничных диаграмма, речь релейно - контактных схем. Рассмотрим каждую из этих языков подробнее. Язык IL - список инструкций - типично ассемблером с аккумулятором и переходами по меткам. Набор инструкций стандартизировано, он не зависит от конкретной целевой платформы. Язык IL позволяет работать с - любыми типами данных, вызывать функции и функциональные блоки, реализованы какие - языке. Таким образом, на IL можно реализовать алгоритм какой - либо сложности, хотя текст будет достаточно громоздким. Язык ST - структурированный текст - это язык высокого уровня. Синтаксически ST представляет собой несколько адаптированную язык Паскаль. С а содержат процедур языка Паскаль в ST используются компоненты программ стандарта МЭК. Для специалистов, знакомых с языком С, освоение ST также не вызовет никаких сложностей. В большинстве комплексов программирования ПЛК речь ST по умолчанию предлагается для описания работы и условий переходов SFC. Это действительно очень мощный тандем, позволяющий эффективно решать какие - либо задачи. В семействе языков МЭК SFC - диаграммы отдельно стоящие, а точнее, выше относительно других четырех языков. Диаграммы SFC является высокоуровневым графическим инструмент ом. Графическая диаграмма SFC состоит из шагов и переходов между ними. Разрешение перехода определяется условием. С шагом связаны определенные действия. Описание действия выполняется какой - либо языке МЭК. Сам SFC не содержит управляющих команд ПЛК, действия комплекса программирования ПЛК состоит из двух обязательных частей: системы исполнения и рабочего места программиста. Система исполнения функционирует в контроллере. Кроме непосредственного выполнения управляющей программы она обеспечивает загрузку я кода приложения и функции ее отладки. Система исполнения должна иметь связь с компьютером рабочего места программиста. Не важно как физически организована связь ПК и ПЛК, в простейшем случае ПЛК подключается к компьютеру через стандартний COM - порт (RS - 232) ноль - модемным кабелем. В условиях цеха может использоваться более помехоустойчивости и дальнобойный интерфейс (RS - 422, RS - 485 или токовая петля). В комплексе CoDeSys посредником между средой разработки и ПЛК служит специальное приложение - шлюз связи (gateway). Шлюз связи взаимодействует с интегрированной средой через Windows - сокет соединение, построенное на основе протокола TCP / IP. Такое соединение обеспечивает одинаковую взаимодействие приложений, работающих на одном компьютере или в сети (рис. 3). Благодаря этому программист может совершенно полноценно работать на удаленном компьютере. Причем удаленность не ограничивается рамками локальной сети. ПК, выполняющий роль шлюза связи, может одновременно взаимодействовать с ПК программиста через Интернет и с ПЛК через модемное соединение. По умолчанию шлюз связи настроен на локальную необходимо описать на IL, ST, LD или FBD. Язык FBD - функционально - блочные диаграммы - напоминает принципиальную схему электронного устройства на микросхемах. Проводники в FBD могут проводить сигналы (передавать переменные) какого - либо типа (логический, аналоговый, время и т.д.). Выходы блоков могут быть пидимкн Энни на входы других блоков или непосредственно на выходы ПЛК. Сами блоки, представленные на схеме как «черные ящики» могут выполнять какие - либо функции. FBD - схемы очень четко описывают взаимосвязь входов и выходов диаграммы. Если алгоритм хорошо описывается с позиции сигналов, то его FBD - представление всегда получается нагляднее, чем в текстовых языках. Язык LD - лестничных диаграмма или речь релейно - контактных схем (РКС) - графический язык, реализующий структуры электрических цепей. Графически LD - диаграмма представлена ??в виде двух вертикальных шин питания. Между ними размещены  не ограничено. Включение в стандарт пяти языков объясняется в первую очередь историческими причинами. Разработчики стандарта столкнулись с наличием огромного количества различных вариаций схожи х языков программирования ПЛК. Языка, вошедшие в стандарт, созданные на основе наиболее популярных языков программирования, широко распространенных в мире контроллеров. Если взять любой - какой контроллер, работающий в современном производстве, то его программу можно перенести в среда и МЭК 61131 - 3 из минимальными затратами. После принятия стандарта появилась возможность создания апаратно - независимых библиотек. Это регуляторы, фильтры, управления приводами, модули с нечеткой логикой и тому подобное. Комплекс CoDeSys CoDeSys - это современный инструмент т для программирования контроллеров (CoDeSys образуется от слов Controllers Development System). CoDeSys предоставляет программисту удобную среду для программирования контроллеров на языках стандарта МЭК 61131 - 3. Используемые редакторы и отладочные средства базируются на широко известных и хорошо зарекомендовавших принципах, знакомых по другим популярных средах профессионального программирования (Visual C ++ и т.д.). Комплекс CoDeSys не привязан к конкретной аппаратной платформы, существует несколько модификаций специально оптимизированных под различные процессоры. Для привязки к конкретному ПЛК нужна адаптация программы к низкоуровневый ресурсов - распределения памяти, интерфейсов связи и интерфейсов ввода - вывода. Среди особенностей среды CoDeSys можно отметить следующие: - прямая генерация машинного кода, обеспечивает высокое быстродействие программ пользователя; - Полноценная реализация языков МЭК; - «Умные» редакторы как построены таким образом, что не дают делать типичные для начинающих ошибки; - Встроенный эмулятор контроллера, позволяет проводить отладку проекта без дополнительных аппаратных средств; - Встроенные элементы визуализации позволяют создать модель объекта управления и проводить отладку проекта без изготовления средств имитации; - Набор библиотек и готовых сервисных функций. Базовый CoDeSys и запускается автоматически при установлении связи с ПЛК с интегрированной среды. Для соединения с ПЛК через СОМ - порт достаточно настроить параметры драйвера интерфейса в соответствии с руководством по применению ПЛК (Порт, скорость, контроль паритета и число стоп - битов). В состав какого - либо комплекса обязательно входит руководство по применению и электронная справочная система. Ассортимент дополнительных приложений CoDeSys включают серверы данных (DDE и OPC), утилиты конфигурирования комплекса, средства управления проектами и версиями, текстовые инструменты, специализированные библиотеки функций и функциональных блоков. Организация работы в среде разработки CoDeSys Программы в среди овищи разработки CoDeSys сохраняются в виде проектов. Жизненный цикл проекта имеет следующий вид: - определение конфигурации ПЛК в соответствии с аппаратных средств; - Создание программных компонентов, необходимых для решения проблемы; - Написание программного кода для створе них компонентов; компиляция проекта, исправления ошибок; - Налаживание проекта в режиме симуляции; - Запись результатов компиляции и отладки в ПЛК. Проект содержит ряд разнородных объектов: программные компоненты (POU - Program Organization Unit), данные разных типов, элементы визуализации и ресурсы. Каждый проект сохраняется в отдельном файле. К программным компонентам (POU) относятся функциональные блоки, функции и программы. Отдельные POU могут включать действия (подпрограммы). Первый программный компонент размещается в новом проекте автоматически и получает название PLC_PRG. Именно с него и начинается выполнение процесса (по аналогии с функцией main в языке С), из него будут вызываться другие программные блоки (программы, функции и функциональные блоки). POU могут вызывать другие POU, но рекурсии недопустимы. Каждый программный компонент состоит из раздела объявлений и кода. Для написания всего кода POU используется только один из языков МЭК программирования (IL, ST, FBD, SFC, LD или CFC). CoDeSys поддерживает все описанные стандартом МЭК компоненты. Для их использования достаточно включить в свой проект библиотеку standard.lib. Г лавный окно среды разработки CoDeSys (рис. 4) состоит из следующих элементов (в окне они размещены сверху вниз): меню. Панель инструментов. На ней находятся кнопки для быстрого вызова команд меню. Организатор объектов, имеет вкладки POU, Datatypes, Visualizations и Resources. Разделитель Организатора объектов и рабочей области CoDeSys. Рабочая область, в которой находится редактор. Окно сообщений. Строка состояния, содержащая информацию о текущем состоянии проекта.

Панель инструментов, Окно сообщений и строку статуса не являются обязательными элементами Главного окна. Меню находится в верхней части Главного окна. Оно содержит все команды CoDeSys. Кнопки н а Панели инструментов (см. Рис. 5) обеспечивают более быстрый доступ к командам меню. Вызвана с помощью кнопки на панели инструментов команда автоматически выполняется в активном окне. Команда выполнится, как только нажата на панели инструментов кнопка будет отпущена. Если установить указатель мыши на кнопку панели инструментов, то через небольшой промежуток времени увидите название этой кнопки в подсказке. Кнопки на панели инструментов различны для разных редакторов CoDeSys. Получить информацию о назначении я этих кнопок можно в описании редакторов.

Организатор объектов (Object Organizer) управляет списком всех объектов Вашего проекта. Он всегда находится в левой части Главного окна CoDeSys. В нижней части организатора объектов находятся вкладки POUs, Datatypes (типы данных), Visualizations (визуализации) и Resources (ресурсы). Переключаться между соответствующими объектами можно с помощью мыши или клавиш перемещения. Разделитель экрана - это граница между двумя незаурядными окнами. В CoDeSys есть такие разделители: между организатором объектов и рабочей областью, между разделом объявлений и разделом кода POU, между рабочей областью и окном сообщений. Вы можете перемещать разделители с помощью мыши, нажав ее левую кнопку. Разделитель сохраняет свое положение даже при изменении размеров окна. Если Вы больше не видите разделителя на экране, это означает, что нужно изменить размеры окна. Рабочая область находится в правой части главного окна CoDeSys. Все редакторы, а также менеджер библиотек открываются именно в этой области. Имя открытого объекта находится в заголовке окна. Окно сообщений отделено от рабочей области разделителем. Именно в этом окне появляются сообщения компилятора, результаты поиска и список перекрестных ссылок. При двойном щелчке мышью ю или при нажатии клавиши <Enter> на сообщении будет открыт объект, к которому относится данное сообщение. С помощью команд "Edit -> Next error" и "Edit -> Previous error" можно быстро перемещаться между сообщениями об ошибках. Окно сообщений можно убрать или включить с помощью команды "Window Message". Статусная строка находится в нижней части главного окна CoDeSys и предоставляет информацию о проекте и команды меню. При выборе пункта меню его описание появляется в левой части ни строчки статуса. Если Вы работаете в режиме online, то надпись Online в строке статуса выделяется черным цветом. В противном случае надпись серый. С помощью статусной строки в режиме online можно определить, в каком состоянии находится программа: SIM - в режиме эмуляции, RUN - программа запущена, BP - установлена ??точка останова, FORCE - происходит фиксация переменных. При работе в текстовом редакторе в строке статуса указывается позиция, в которой находится курсор (например, Line 5, Col.: 11). В режиме замены надпись "OV" выделяется черным цветом. Нажимая клавишу <Ins> можно переключаться между режимом вставки и замены. При визуализации в статусной строке выводятся координаты курсора X и Y, которые отсчитываются относительно верхнего левого угла окна. Если курсор мыши находится на элементе или над элементом и проводятся какие - либо действия, тогда указывается номер этого элемента. При вставке элемента в строке статуса указывается его название (например, Rectangle). Если Вы поместили курсор на пункт меню, то в строке статуса появляется его краткое описание. Вместо того, чтобы использовать главное меню для вызова команд, можно воспользоваться контекстным меню. Это меню, вызываемое правой кнопкой мыши, содержит наиболее часто используемые команды. Существует русскоязычная версия пакета CoDeSys (CoDeSysV 2.39 x). Перевод выполнен Промышленным комплексом ПК "Пролог", Россия м. Смол е НСК. Программный пакет CoDeSys постоянно совершенствуется и развивается. Поэтому его новые версии могут иметь несколько иной вид различных окон программ, дополнительные функцией семьи, опции и тому подобное.

ОВЕН ПЛК160 Программируемые логические контроллеры ОВЕН ПЛК160 выполнены в полном соответствии со стандартом ГОСТ Р 51840 - 2001 (IEC 61131 - 2), обеспечивает высокую аппаратную надежность. С электромагнитной совместимости контроллеры соответствуют классу А по ГОСТ Р 51522 - 99 (МЭК 61326 - 1 - 97) и ГОСТ Р 51841 - 2001, что подтверждено неоднократными испытаниями изделия. Вычислительные ресурсы В контроллере изначально заложены мощные вычислительные ресурсы при отсутствии операционной системы: • высокопроизводительный процесор RISC архитектуры ARM9 с частотой 180МГц компании Atmel; • большой объем оперативной памяти - 8МБ; • большой объем постоянной памяти - Flash память, 4МБ; • объем энергонезависимой памяти, для хранения значений переменных - до 16КБ; • время цикла по умолчу ем составляет 1мс при 50 логических операциях, при отсутствии сетевого обмена. Дополнительно Широкие возможности самодиагностики контроллера. Встроенный аккумулятор, позволяющий «пережидать» пропадание питания - выполнять программу при пропадании питания, и переводить выходные элементы в «безопасное состояние». Время «пережидание» настраивается пользователем при создании проекта. Встроенные часы реального времени. Возможность создавать и сохранять архивы на Flash контроллера. Условия эксплуатации • Расширенный температурный рабочий диапазон окружающего воздуха от минус 10 ° С до + 50 ° С • Закрытые взрывобезопасные помещения или шкафы электрооборудования без агрессивных паров и газов • Верхний предел относительной влажности воздуха - 80% при 25 ° С и более низких температурах без конденсации влаги • Атмосферное давление от 84 до 106,7 кПа по устойчивости к климатическим воздействиям при эксплуатации ПЛК160 соответствует группе исполнения В4 по ГОСТ 12997 - 84. по устойчивости к механическим воздействиям при эксплуатации ПЛК160 соответствует группе исполнения N2 по ГОСТ 12997. по устойчивости к возгоранию и распространению пламени FV1 корпус контроллера соответствует ГОСТ Р 51841, раздел 6. Конструктивные особенности Контроллеры выполнены в компактном DIN - рельсовом корпусе. Габаритные и установочные размеры отличаются в завис ости от модификации, и приведены в конце раздела. Расширение количества точек ввода \ вывода осуществляется путем подключения внешних модулей ввода \ вывода по каждому из встроенных интерфейсов. Электрические параметры Два варианта питания для каждого контроллера: • переменный ток: (90 - 265) В, (47 ... 63) Гц; • постоянный ток: (18 - 29) У Небольшая потребляемая мощность до 10Вт. Контроллер ПЛК160 Дискретные входы 16 Дискретные выходы 12 Аналоговые входы 8 Аналоговые выходы 4 Все дискретные входы контроллера измеряют сигнал 24В. Тип сигнала может быть как npn, так и pnp. Количество «быстрых» дискретных входов зависит от модификации контроллера. Дискретные выходы типа Р - реле. Количество быстрых дискретных выходов зависит от модификации контроллера. «Быстрые» ан алого входы для подключения унифицированных датчиков тока, напряжения. Дискретные выходы контроллеров данной линейки могут быть настроены на выдачу ШИМ, или генератора с высокой точностью. Аналоговые выходы могут быть • По тока 4 - 20мА • По напряжению 0 - 10В • Универсальные - програмно переключаемые ток \ напряжение Интерфейсы и протоколы Все контроллеры данной линейки имеют большое количество интерфейсов на борту, работающих независимо друг от друга: • Ethernet; • В трех последовательных портов; • USB Device для программирования контроллера. Программирование Программирование контроллеров осуществляется в профессиональной, распространенной среде CoDeSys v.2.3.x, максимально соответствует стандарту МЭК 61131: • поддержка 5 языков программирования, для специалистов какой - либо области; • мощное средство разработки и отладки комплексных проектов автоматизации на базе контроллеров; • функции документирования проектов; • количество логических операций ограничивается только количеством свободной памяти контроллера; • практически неограниченное количество используемого их в проекте счетчиков, триггеров, генераторов. Программируются контроллеры данной линейки с какого - либо из нижеперечисленных интерфейсов o Ethernet o Debug RS - 232 o USB Device Кабель для программирования идет в комплекте поставки (для Debug RS - 232), или используется стандартный кабель. Отличительные особенности линейки • Небольшое количество точек ввода \ вывода • Расширенное количество интерфейсов «на борту» контроллеров • Наличие порта Ethernet • Поддержка протоколов обмена ModBus (RTU, ASCII), ОВЕН, DCon • Возможность работы непосредственно с портами контроллера, позволяет подключать внешние устройства с нестандартными протоколами • Контроллер имеет встроенные часы, что позволяет создавать системы управления с учетом реального времени • встроенный аккумулятор позволяет организовать ряд дополнительных сервисных функций: возможность кратковременного пережидание исчезновения питания, перевод выходных элементов в безопасное состояние • Наличие Flash памяти позволяет организовывать архивирования данных на самом ПЛК.

 

 

Прочитано 73 раз
Другие материалы в этой категории: « Мой первый проект в Delphi Arduino UNO »

Добавить комментарий


Защитный код
Обновить