что такое теги в программировании контроллеров
Работа с тегами в IntegraXor
Как и в большинстве SCADA систем, IntegraXor работает с тегами (или точками), каждая из которых представляет собой определенный набор данных, передаваемых от ПЛК к SCADA системе и обратно. Количество доступных тегов ограничивается лицензией.
Вы можете БЕСПЛАТНО скачать полнофункциональную версию IntegraXor на 128 ModBus тегов.
IntegraXor поддерживает все стандартные типы тегов, определенных в выбраном драйвере.
Одним из полезных дополнений является возможность сортировки байтов внутри слов, двойных и четверичных слов. Данная функция доступна в настройках выбранного порта (драйвера) и называется «Data arrangement»:
С помощью этой функции Вы можете произвольно распределять не только байты внутри слов, но и биты внутри байта. Это дает возможность значительно облегчить трудозатраты при упаковывании (распаковывании) тегов. 😉
Элинк, ООО 192148, Россия, Санкт-Петербург, ул. Седова, д.53, Лит. «А».
Elincom Group, OU 10315, Estonia, Tallinn, Randla 13-201.
ПЛК — что это такое?
Доброго времени суток, уважаемые жители Хабра!
Прочитав пост про программирование ПЛК Siemens серии S7, я залез в поиск по Хабру, и был весьма удивлен, что тема промышленной автоматики вообще, и программирования ПЛК в частности, освещена весьма и весьма скудно. Возьму на себя смелость поделиться своим опытом в данной области, описав базовые принципы программирования ПЛК, в частности, производства компании Beckhoff.
Введение
Я занимаюсь автоматизацией зданий. Сложилось так, что в основном мы строим свои системы на базе ПЛК Beckhoff. Такой выбор был сделан прежде всего потому, что эти контроллеры являются свободно-программируемыми в полном смысле этих слов. Что это значит? Возьмите контроллер TAC Xenta, например, и попробуйте на нем реализовать обмен с внешним устройством через RS232 по собственному протоколу, на уровне «байт послал — байт принял». Не получится, эти контроллеры так не умеют — используйте только те протоколы, которые в них заложил разработчик. А Beckhoff умеет. Но прежде чем лезть в такие дебри, давайте посмотрим на среду разработки? На каком, собственно, языке, мы будем писать?
Стандарт МЭК 61131-3
Промышленные ПЛК программируются на языках стандарта МЭК 61131-3. Всего этих языков 5, некоторые производители добавляют свои. Языки друг на друга совсем не похожи, и, наблюдая за коллегами, могу предположить, что выбор того или иного языка связан прежде всего с тем, чем человек занимался до того, как он пришел в эту отрасль.
Из не всеми поддерживаемых языков стоит отметить язык CFC (continuous flow chart), Beckhoff его поддерживает. Это дальнейшее развитие языка FBD, одним из наиболее существенных отличий, на мой взгляд, является поддержка явной обратной связи в схемах. Зачем это нужно? Например, вот такой генератор коротких импульсов на CFC будет работать, а на FBD – нет.
Блок TON — это стандартный блок, таймер с задержкой включения. Логика работы: выход Q становится TRUE, когда на входе IN сигнал TRUE в течение не менее времени PT.
Самая популярная, наверное, среда разработки под ПЛК — это CoDeSys. Многие производители берут ее за основу, и либо делают к ней библиотеку для работы со своим ПЛК, либо доделывают среду под себя.
Как работает ПЛК?
Программа ПЛК работает циклично. Время цикла может быть от единиц миллисекунд до единиц секунд, в зависимости от задач, которые на этот ПЛК возложены. Большинство ПЛК позволяют задавать время цикла разработчику программы, однако в некоторых моделях такой возможности нет. Многие ПЛК, в частности Beckhoff, позволяют в одной программе создать более одной циклически выполняемой задачи, и задать приоритет для этих задач. Что нам дает эта возможность?
Представим ситуацию: ПЛК управляет вентиляционной установкой, и к нему подключена панель управления через RS232. Температура в помещениях меняется не быстро, и запускать алгоритм управления вентиляцией чаще, чем раз в 50 — 100 мс просто нет смысла. Зато панель оператора опрашивает контроллер постоянно, и задержка ответа ПЛК более 10 мс уже выражается в «притормаживании» интерфейса пользователя, а при задержке 20 мс у нас переполнится аппаратный буфер COM-порта. Наличие нескольких задач позволяет нам решить эту проблему красиво: пусть «быстрая» задача работает с COM-портом, и вызывается каждые 2 мс, а «медленная» реализует логику работы вентиляции, и вызывается каждые 50 мс. Все работает хорошо, панель оператора не тормозит, пользователь доволен.
А что у этих железок внутри?
А вот другой вариант — голова Beckhoff серии CX9000 (слева на фото) с набором модулей ввода-вывода.
Помимо всего прочего, на голове еще имеется некая шина, позволяющая объединять ПЛК в сеть, а зачастую еще и менять его программу через эту же сеть. Какая это будет сеть — зависит от ПЛК. Это могут быть и незнакомые тем, кто не сталкивался с промышленными сетями EIA-485, Profibus, CAN, а может быть и вполне привычный Ethernet. Именно через эту сеть, называемую fieldbus, и осуществляется подключение ПЛК к верхнему уровню — к СКАДА-системе, например. На фото выше хорошо видны 2 разъема 8P8C на голове Beckhoff’а — это Ethernet, а у Carel сверху слева видны (плоховато, правда) 2 разъема 6P4C — так они сделали RS-485. У этого интерфейса, к сожалению, нет общепринятого разъема.
Так все же, как под него программы писать-то?
Вообще, это тема не статьи, а целой книги. Но расскажу то, что увидел на личном опыте, и пусть это будет ложкой дегтя.
Для профессиональных программистов освоение ПЛК во многом покажется деградацией. ООП? Их нет у нас, есть только структуры, перечисления, и некое подобие класса, которое называется «функциональный блок». Что такое Private, Public и прочее, тоже можно забыть сразу — не пригодится. Из любого места вашей программы можно получить доступ к любому другому месту.
Динамическое выделение памяти? Их нет у нас совсем. Не уверен, сколько тебе пришлют данных? Выделяй буфер с запасом, и забудь про эту память — освободить ее не получится. Либо проявляй чудеса скорости и обрабатывай данные на лету, если успеешь уложиться в заданное время цикла.
Исключения? Да что вы… видел я одно чудо, которое намертво висло при выполнении конструкции вида:
Понятно, что переполнение, не влазит foo * bar в 16 бит, но зачем же виснуть-то? Да еще так, что ничего, кроме сброса по питанию не помогает.
Среда разработки? Не у всех CoDeSys, многим хочется пооригинальничать и написать что-нить свое. Одна из таких самописных сред вылетала с runtime error при попытке записать число 86400 в 16-битный INT. А вы говорите, обработка исключений на ПЛК. Ее и в среде разработки-то не всегда нормально могут сделать.
НО! Зато для любителей той тонкой грани, которая отделяет железо от программного обеспечения, софта в просторечии — это очень интересная ветвь ай-ти, правда.
Надеюсь, что этот небольшой обзор будет полезен. Если хабрасообществу будет интересна эта тема, то расскажу про ПЛК подробнее.
От измерения и обработки тегов к объектам и быстрой разработке автоматизированных систем
В настоящее время системы диспетчеризации, оперативного управления производством (MES) и интеллектуальные системы предприятия обеспечивают сбор, обработку и визуализацию данных о технологических процессах, рассчитывают производственные показатели, формируют отчеты, а также ведут историю и сохраняют данные в базах.
С момента своего появления эти системы прошли путь от измерения и обработки тегов до создания и тиражирования объектов, связанных с определенным ресурсом или оборудованием.
Объектно-ориентированная архитектура позволяет реализовать типовой подход к разработке автоматизированной системы контроля и управления, при котором на основе дублирования и объединения объектов из предметно-ориентированных библиотек формируется законченная система. Применение данных механизмов к разработке систем диспетчеризации и управления технологическими процессами позволяет значительно сократить сроки выполнения инжиниринговых работ и облегчить поддержку решений в будущем. Именно такой подход реализован в SCADA/HMI DataRate.
Объектная модель и предметно-ориентированные библиотеки
Основой архитектуры DataRate является объектная модель (рис.1), которая содержит:
Рис. 1. Объектно-ориентированная архитектура SCADA/HMI DataRate
Разработку автоматизированных систем обеспечивают средства быстрой разработки DataRate, а также объекты и сервисы промышленной автоматизации. Мастера создания и настройки объектов позволяют значительно ускорить процесс создания систем и автоматизируют ряд типовых функций. Добавить новый элемент на мнемосхему можно, перетащив его мышкой из соответствующей библиотеки. Точно так же можно добавить новый объект в библиотеку.
SCADA/HMI DataRate позволяет работать с набором шаблонов технологических объектов (включающих виды, теги, скрипты), которые объединены в библиотеки. В составе дистрибутива поставляется системная и две предметно-ориентированные библиотеки.
Рис. 2. Структура библиотеки объектов энергоучета
Библиотека объектов учета энергоресурсов
Библиотечный объект содержит вид прибора, панель выбора параметра и индикацию текущего значения выбранного параметра. Например, для счетчика электроэнергии на мнемосхеме объекта отображаются: накопленная потребленная активная/реактивная энергия; текущая потребляемая активная/реактивная мощность по трем фазам; текущая потребляемая полная мощность по трем фазам и др. Таким образом, объект «счетчик» позволяет осуществлять мониторинг и контроль потребления энергоресурса по конкретному прибору в заданный интервал времени.
Данная библиотека содержит объекты приборов учета наиболее популярных на рынке энергопотребления производителей (рис.2), таких как Нижегородский завод имени М.В. Фрунзе, «Энергомера», «ИНКОТЕКС», «Саранский приборостроительный завод», НПО «ВЗЛЕТ», НПФ «ТЭМ-Прибор», НПФ «Теплоком», «ТЕПЛОВОДОХРАН» и др. Библиотека постоянно расширяется выпускаемыми новыми приборами и предоставляет пользователям возможности для быстрого построения систем АСТУЭ/АСКУЭ.
Библиотека объектов электрических схем
Библиотека предназначена для создания, просмотра, распечатки и хранения нормальных и оперативных схем электрических соединений в проектах автоматизированных систем контроля и управления в энергетике.
Объекты элементов электрических схем разделены по функциональному назначению на несколько групп: устройства с неизменяющимся состоянием, трансформаторы (двух- и трехобмоточные), реакторы, линии электропередачи и сборные шины, устройства с изменяющимся состоянием (коммутационное оборудование с состояниями «Включен/Отключен»). Также в библиотеке содержатся паспорта устройств для каждой группы объектов.
Системная библиотека
В SCADA/HMI DataRate 4.1 была полностью обновлена системная библиотека. Новая структура дерева библиотеки четко разделяет объекты по их функциональному назначению. Системная библиотека содержит групповые аналитические тренды, панель переходов, удобные и информативные индикаторы (табло, термометры, стрелочные приборы, барограф и др.), элементы управления автоматизированных систем (переключатель, регулятор, кнопка, радиокнопка, флажок и др.) и отдельные объекты. Объекты новой версии системной библиотеки позволяют разрабатывать графические проекты с современным и понятным интерфейсом диспетчера.
Типовые проекты и примеры внедрений
Типовые проекты DataRate (рис. 3) для ускоренной разработки АИИС ТУЭ на основе предметно-ориентированных библиотек объектов ориентированы на приборы учета «Меркурий 230», СЕ-301, СЕ-303, СЭТ-4ТМ.02, СЭТ-4ТМ.03, ПСЧ-4ТМ.05 (и других, производства НЗиФ), ElNet MC и обеспечивают выполнение следующих функций:
Рассмотрим несколько примеров внедрений автоматизированных систем, построенных с использованием DataRate.
Рис. 3. Пример структуры типового проекта автоматизированной системы учета энергопотребления
Центр сбора технологической информации (ЦСТИ)
ЦСТИ Нижнекамской ТЭЦ построен на основе программного обеспечения WideTrack и SCADA/HMI DataRate. Система предназначена для сбора, обработки и визуализации технологических параметров локальных АСУ ТП Нижнекамской ТЭЦ: восемь АСУ ТП котлоагрегатов (рис. 4), семь АСУ ТП турбин, 37 АСУ ТП общестанционного оборудования.
Рис. 4. Мнемосхема АСУ ТП котлоагрегата
Отличительной особенностью системы является консолидация технологических данных от SCADA различных производителей, в т.ч. SCADA КРУГ-2000, Siemens Win CC, Trace Mode, Ovation и др.
Система автоматизации линии экспандирования комбикормов
Автоматизированная система экспандирования комбикормов ОАО «КХП им. Григоровича» (г.Челябинск, объединение «СоюзПищепром») позволяет осуществлять контроль на каждом из этапов обработки комбикорма, начиная от экспандирования, сушки комбикорма и до финальной обработки и отпуска готовой продукции (рис. 5).
Рис. 5. Фрагмент главного окна системы автоматизации линии экспандирования комбикормов ОАО КХП им. Григоровича
Одной из особенностей данной системы является работа со сложными Batch-процессами (вид технологического процесса, который предусматривает работу с рецептурами). В зависимости от рецептуры взаимосвязанно меняются не только количество и виды используемых компонентов, но и технологический процесс обработки комбикорма на разных участках.
Автоматизированная система технического учета электроэнергии (АСТУЭ)
АСТУЭ ОАО «Трубодеталь» (г. Челябинск) включает в себя 59 счетчиков электроэнергии, расположенных на электрических подстанциях, от которых осуществляется электроснабжение ключевых участков производства, девять контроллеров сбора данных, серверное оборудование. Визуализация данных на АРМ осуществляется при помощи DataRate. Специалистам отдела главного энергетика и энергоцеха предоставляется возможность удаленного просмотра данных системы.
АСТУЭ позволяет осуществлять анализ баланса потребления электроэнергии по производственным участкам. Для этого DataRate предоставляет механизм перегруппировки счетчиков без остановки работы АИИС ТУЭ (рис. 6).
Рис. 6. Мнемосхема с детальной информацией со счетчика электроэнергии
Заключение
SCADA/HMI DataRate — это современное и эффективное программное обеспечение для создания систем автоматизации, отличающееся простотой в эксплуатации и рассчитанное на пользователей с самым разным уровнем подготовки. Широкие функциональные возможности, открытость и обширная практика внедрений позволяют использовать DataRate в решениях разнообразных задач автоматизации, в том числе и для контроля специфических и сложных производственных процессов.
Обучение программированию контроллеров: автоматизация технологических процессов и программирование ПЛК Siemens в TIA Portal
Быстрое технологическое развитие последних десятилетий сопровождается необходимостью постоянно изучать и узнавать о новых процессах и технологиях, которые влияют на нашу жизнь.
Основы программирования ПЛК
Логические реле LOGO! и контроллеры SIMATIC PLC компании Siemens значительно ускоряют работу за счет ее полной автоматизации.
Компания Siemens давно прочно заняла первое место по количеству произведенных и применяемых контроллеров в мире. Это самый популярный бренд в этой сфере. Контроллеры Siemens, которые постоянно разрабатываются и совершенствуются, задают тенденции в области промышленной автоматизации.
Курсы программирования контроллеров Siemens
Применение программируемых логических контроллеров (ПЛК) в промышленности
Программируемые логические контроллеры на протяжении десятилетий были неотъемлемой частью промышленной автоматизации и управления автоматизированными и автоматическими технологическими процессами.
ПЛК управляют широким спектром приложений, от простых функций освещения до систем защиты окружающей среды и химических производств. Эти системы выполняют множество функций, обеспечивая множество аналоговых и цифровых интерфейсов ввода и вывода, обработку сигналов, конверсию данных и различные протоколы связи.
Все компоненты и функции ПЛК сосредоточены вокруг контроллера, который запрограммирован на выполнение определенной задачи.
Базовый модуль ПЛК достаточно гибкий. Входные сигналы (аналоговые или цифровые) поступают от машин, датчиков или технологических событий в виде напряжения или тока.
ПЛК должен точно интерпретировать и обрабатывать сигналы для ЦП, которые, в свою очередь, определяют набор инструкций для систем вывода, которые управляют исполнительными механизмами в здании, на улице, на заводе или в любой другой промышленной среде.
Промышленный контроллер SIEMENS
Логические модули Siemens LOGO!
Устройства LOGO! 8 сокращают затраты, связанные с выполнением электрических подключений по сравнению с традиционными элементами управления на основе реле и контакторов. Ими можно управлять с помощью кнопок на корпусе или с помощью программы LOGO! Soft Comfort.
Логические реле LOGO! 7 и LOGO! 6 являются более ранними версиями реле LOGO! 8.
Модульный логический контроллер SIEMENS LOGO 8
Контроллеры Siemens SIMATIC
Широкий спектр контроллеров SIMATIC позволяет выбирать подходящие решения для самых разнообразных приложений. Пользовательские программы построены единообразно и могут легко переноситься между ПЛК SIMATIC различной производительности.
Преимущества программируемых контроллеров Siemens SIMATIC:
Разработаны для многих промышленных приложений,
Модульная конструкция ЦП с возможностью расширения за счет дополнительных входов и выходов, технологических и коммуникационных модулей,
Интегрированные технологические функции для настройки, взвешивания, идентификации, высокоскоростного счета,
Связь: встроенные процессоры PROFINET и Modbus TCP-IP, PROFIBUS,
Защита данных: доступ и защита от копирования,
Быстрая диагностика благодаря сообщениям на портале TIA, на встроенном веб-сервере, приложениях SIMATIC и панелях HMI.
ПЛК Siemens Simatic S7-300
Обучение ПЛК SIMATIC S-7, программирование ПЛК с нуля
Это один из самых популярных программируемых контроллеров, используемых для построения как автоматических, так и распределенных систем управления на основе сетей связи.
Simatic S7-300 предоставляет универсальную платформу автоматизации для системных решений с упором на производственные технологии.
Эта система медленно отступает и заменяется новейшей системой управления S7-1200 или S7-1500.
Эта система медленно отступает и заменяется новейшей системой управления S7-1200 или S7-1500.
Программируемый логический контроллер серии SIMATIC S7
S7-1200/1500
Контроллеры серии S7-1200 имеют встроенные технологические функции, такие как: управление приводом ПИД-регулирование быстродействующие счетчики с частотой до 1 МГц поддержка аналоговых входов и выходов.
Они устранили необходимость в специальных модулях. В результате они требуют меньше места для установки и значительно сокращают расходы. Контроллеры серии S7-1200 поддерживают технологию TRACE, которая позволяет периодически сохранять до 16 переменных.
SIMATIC S7-1200 оснащены встроенными DIP-контроллерами для управления приводами с помощью непрерывных сигналов, ступенчатыми контроллерами и контроллерами для активных процессов нагрева и охлаждения. Благодаря функции автонастройки регуляторы самостоятельно выбирают оптимальные параметры управления.
Идентичные регуляторы имеют контроллеры S7-1500, благодаря которым можно легко переносить приложения между устройствами. Позиционирование оси позволяет управлять шаговыми двигателями, сервоприводами и преобразователями частоты.
Встроенные функции безопасности не нужно вызывать и использовать в программе пользователя. Устройство очень быстро реагирует на обнаружение сбоя, а диагностические сообщения и информация об ошибках отображаются в виде обычного текста на портале TIA, на устройстве HMI и на веб-сервере.
Кроме того, контроллер S7-1200 позволяет проводить диагностику определенных каналов, о состоянии которых сигнализируют светодиоды.
Программируемый контроллер S7-1500 обеспечивает гораздо более высокую производительность обработки данных по сравнению с другими доступными контроллерами SIMATIC.
Это также самый быстрый контроллер для автоматизации, благодаря шине объединительной платы он очень быстро обменивается данными с модулями расширения, подключенными к центральному блоку, что значительно повышает эффективность.
Контроллеры SIMATIC S7-1500 имеют модульную структуру и позволяют подключать до 32 модулей расширения. Это могут быть технологические модули, коммуникационные модули или модули ввода-вывода.
Они отличаются высоким уровнем сложности, но благодаря множеству удобств их работа исключительно прозрачна. Встроенный дисплей обеспечивает легкий доступ к функциям и диагностической информации в центральных и распределенных модулях.
Программное обеспечение SIMATIC STEP7 Basic позволяет программировать контроллеры SIMATIC и панели оператора. Структура окон программы позволяет оптимально использовать пространство для создания пользовательской программы.
Процесс проектирования значительно упрощается за счет интеграции программного обеспечения STEP7 на платформе TIA Portal для программирования и управления контроллерами, панелями HMI и сетями.
SIEMENS TIA Portal — программный продукт для проектирования компонентов автоматизации SIMATIC
Даже самое лучшее оборудование бесполезно без хорошего программного обеспечения. Для этого нужна среда программирования, которая позволяет создавать программный код, компилировать его и помещать в память программируемого логического контрллера.
С появлением нового контроллера SIMATIC S7-1200 компания Siemens представила современную среду TIA Portal (Totally Integrated Automation), характерной особенностью которой была интеграция различных систем SIMATIC.
Среда включает Step7 V13 для создания и тестирования программного кода для контроллера ПЛК и WinCC V13 для создания визуализации работы станка или процесса для панелей SIMATIC HMI (человеко-машинный интерфейс).
Проектная часть подготовлена таким образом, чтобы четко отделить проект, созданный для панели оператора HMI, от проекта для контроллера ПЛК, при одновременном сохранении предварительного просмотра обоих этих проектов.
Сохранен прямой доступ к аппаратной конфигурации контроллера ПЛК с уровня созданного программного кода. Объекты и переменные между проектами HMI и ПЛК можно перетаскивать с помощью мыши. Программирование осуществляется интуитивно благодаря удобному редактору.
Все редакторы доступны из одного места, и пользователь может свободно переключаться между ними. Вы можете создавать свои собственные библиотеки функций и объектов из проекта HMI, которые затем можно многократно использовать во вновь создаваемых проектах. Также имеются функции прямой диагностики и возможность предварительного просмотра работы контроллера в режиме онлайн.
Программирование контроллеров S iemens для начинающих
Компания Siemens представила две версии программного обеспечения:
Среда TIA Portal очень удобна и значительно ускоряет работу программиста ПЛК.
Хотите научиться программировать контроллеры SIEMENS?
Это можно сделать благодаря большому обучающему курсу по системам управления S7-300/400, S7-1200/1500 и программному обеспечению TIA PORTAL, который представляет собой сбалансированное сочетание теории и практики.
Курс ориентирован на практическое применение изучаемых вопросов. Все участники получат качественные знания об оборудовании компании SIEMENS, программном обеспечении и программировании. От слушателей курса не требуется специальных знаний в области информационных технологий и систем управления.
Это реально полезный курс от действительно толкового преподавателя с большим опытом в теме, который в простой и доступной форме делится своими навыками и знаниями.
Полное описание курса и дополнительная информация находится здесь:
Любите умные гаджеты и DIY? Станьте специалистом в сфере Internet of Things и создайте сеть умных гаджетов!
Записывайтесь в онлайн-университет от GeekBrains:
Изучить C, механизмы отладки и программирования микроконтроллеров;
Получить опыт работы с реальными проектами, в команде и самостоятельно;
Получить удостоверение и сертификат, подтверждающие полученные знания.
Starter box для первых экспериментов в подарок!
После прохождения курса в вашем портфолио будет: метостанция с функцией часов и встроенной игрой, распределенная сеть устройств, устройства регулирования температуры (ПИД-регулятор), устройство контроля влажности воздуха, система умного полива растений, устройство контроля протечки воды.
Вы получите диплом о профессиональной переподготовке и электронный сертификат, которые можно добавить в портфолио и показать работодателю.