Plc программирование siemens: Программирование ПЛК Siemens на Simatic Step7 / Habr – Обзор ПЛК фирмы SIEMENS

Языки программирования Step7 — PLC

Язык программирования Ladder Logic (LAD)

Графический язык программирования Ladder Logic (LAD) основан на представлении коммутационных схем. Элементы коммутационной схемы, такие как нормально открытые контакты и нормально замкнутые контакты, группируются в сегменты. Один или несколько сегментов образуют раздел кодов логического блока.

Создание программ в нем выполняется в редакторе пошагового ввода.

 пример сегментов в LAD

 Язык программирования. Функциональный план (FBD)

Язык программирования Функциональный план (FBD) использует для представления логики графические логические символы, известные из булевой алгебры. Сложные функции, такие как математические, также могут быть представлены непосредственно в соединении с логическими блоками.

Пример сегмента в FBD

 Язык программирования. Список команд (STL)

Представление языка программирования Список команд (STL) – это текстовый язык, подобный машинному коду. Каждая команда соответствует шагу работы CPU при обработке программы. Несколько команд могут быть связаны друг с другом, образуя сегменты.

Пример сегментов в Списке команд

 Язык программирования Список команд включен в стандартный пакет программного обеспечения STEP 7. Вы можете редактировать блоки S7 в этом представлении языка с помощью редакторов пошагового ввода или создавать свою программу с помощью редактора, работающего в режиме свободного редактирования в исходном файле на STL, а затем компилировать ее в блоки.

 Язык программирования S7 SCL

Язык программирования SCL (Structured Control Language [Структурированный язык управления]), доступный как дополнительный пакет, − это текстовый язык высокого уровня, определение которого в целом соответствует стандарту Международной электротехнической комиссии IEC 1131-3. Этот паскалеобразный язык благодаря своим командам высокого уровня упрощает в сравнении с STL программирование циклов и условных переходов. Поэтому SCL пригоден для расчетов, включая формулы, сложные оптимизационные алгоритмы или управление большими объемами данных.

 Создание программ на S7 SCL производится в режиме свободного редактирования в исходном файле.

Пример:

FUNCTION_BLOCK FB20

VAR_INPUT

ENDVAL: INT;

END_VAR

VAR_IN_OUT

IQ1 : REAL;

END_VAR

VAR

INDEX: INT;

END_VAR

BEGIN

CONTROL:=FALSE;

FOR INDEX:= 1 TO ENDVALUE DO

IQ1:= IQ1 * 2;

IF IQ1 >10000 THEN

CONTROL = TRUE

END_IF

END_FOR;

END_FUNCTION_BLOCK

Язык программирования S7 Graph (последовательное управление)

Графический язык программирования S7 Graph, доступный в виде дополнительного пакета, дает возможность программирования устройств последовательного управления. Это включает в себя создание последовательности шагов, определение содержания каждого шага и определение переходов. Вы программируете содержание шагов на специальном языке программирования (похожем на список команд) и вводите переходы в редакторе цепных логических схем (модернизированная версия языка КОР).

S7 Graph очень ясно представляет сложные последовательности и делает программирование и поиск неисправностей более эффективными.

Пример последовательного управления в S7 Graph

 Создаваемые блоки

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

Исходный файл

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

Язык программирования S7 HiGraph (граф состояний)

Графический язык программирования S7 HiGraph, доступный в качестве дополнительного пакета, позволяет программировать ряд блоков в вашей программе как графы состояний. Это разделяет вашу установку на отдельные функциональные агрегаты, каждый из которых может принимать различные состояния. Для изменения состояний определяются переходы. Вы описываете действия, поставленные в соответствие состояниям, и условия для переходов между состояниями на языке, похожем на список команд.

Вы создаете граф для каждого функционального агрегата, который описывает поведение этого агрегата. Графы для установки объединяются в группы графов. Для синхронизации функциональных агрегатов между графами может производиться обмен сообщениями. Ясное представление переходов между состояниями функционального агрегата делает возможным систематическое программирование и облегчает поиск ошибок. В отличие от S7 Graph, в S7 HiGraph в каждый момент времени активно только одно состояние (в S7 Graph: «шаг»). На следующем рисунке показано, как создавать графы для функциональных агрегатов (пример).

 

 Группа графов хранится в исходном файле HiGraph в папке «Source Files [Исходные файлы]» под программой S7. Затем исходный файл компилируется в блоки S7 для программы пользователя.

Синтаксис и формальные параметры проверяются на последнем элементе графа (при закрытии рабочего окна). Адреса и символы проверяются при компиляции исходного файла.

Язык программирования S7 CFC

Дополнительный пакет программного обеспечения CFC (Continuous Function Chart [Схема непрерывных функций]) – это язык программирования, используемый для графического связывания сложных функций.

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

Созданная программа хранится в виде схем CFC. Они находятся в папке «Charts [Схемы]» под программой S7. Эти схемы затем компилируются для формирования блоков S7 для программы пользователя. Возможно, Вы сами захотите создать подлежащие соединению блоки, в этом случае Вы программируете их для SIMATIC S7 с помощью одного из языков программирования S7, а для SIMATIC М7 – с помощью С/С++.

Мой блог находят по следующим фразам

Программирование контроллеров Siemens — АСУ ТП


Назначение и область применения контроллеров Siemens

ПЛК (Программируемый логический контроллер) – представляет собой микропроцессорное устройство, предназначенное для сбора, преобразования, обработки, хранения информации и выдачи команд управления.

ПЛК имеет конечное количество входов и выходов, подключаемых к ним датчиков и устройств.

Обработка сигналов и команд в ПЛК происходит в режиме реального времени.

ПЛК Siemens ориентированы, на управление технологическими процессами систем:

Основные цели программирования контроллеров Siemens.

Программирование ПЛК для использования в составе шкафа автоматики для управления оборудованием различного назначения и типа исходя из нужд Пользователя.

Разработка пользовательского интерфейса для ПЛК оборудованных дисплеем или подключенных к панели оператора (HMI панели).

Программирование обработки, хранения, архивирования (Создание журнала ПЛК, Графиков ПЛК и Трендов) и вывода значений показаний внешних датчиков, параметров подключенного оборудования и внутренних вычислений ПЛК.

Программирование взаимодействия ПЛК со SCADA системами.

Программирование взаимодействия ПЛК в составе крупных систем автоматизации и диспетчеризации с участием нескольких контроллеров.

Программирование взаимодействия ПЛК в режимах Master, Slave с различным оборудованием по промышленным протоколам связи (ModBus RTU, ModBus TCP, Lon, CAN).

Серии программируемых контроллеров Siemens.

Simatic S7-200 — Устаревшая серия ПЛК. Представляет собой малопроизводительные контроллеры применяемые для решения задач управления простыми локальными производственными процессами. Могут быть дополнены с помощью дополнительных модулей дискретного и аналогово ввода/вывода.

Программирование Simatic S7-200

Simatic S7-300 — ПЛК могут быть применены для решения задач управления простыми и средними по сложности технологическими процессами. Возможности контроллера могут быть расширены с помощью модулей дискретного и аналогово ввода/вывода и специализированными функциональными модулями.

Программирование Simatic S7-300


Simatic S7-400  —  Используются для построения систем автоматизации среднего и высокого уровня сложности. Возможности контроллера могут быть расширены с помощью модулей дискретного и аналогово ввода/вывода и специализированными функциональными модулями.

Программирование Simatic S7-400

Simatic S7-1200 — Относительно новые контроллеры пришедшие на замену серии S7-200. ПЛК могут быть применены для решения задач управления простыми и средними по сложности технологическими процессами. Возможности контроллера могут быть расширены с помощью модулей дискретного и аналогово ввода/вывода и специализированными функциональными модулями.

Программирование Simatic S7-1200

Simatic S7-1500 — Относительно новые контроллеры пришедшие на замену сериям S7-300, S7-400. Используются для построения систем автоматизации среднего и высокого уровня сложности. Возможности контроллера могут быть расширены с помощью модулей дискретного и аналогово ввода/вывода и специализированными функциональными модулями.

Программирование Simatic S7-1500

Среды программирования ПЛК Siemens.

TIA Portal (Totally Integrated Automation Portal) — среда разработки программного обеспечения для построения систем автоматизации технологических процессов различной степени сложности, которая включает в себя такие программные компоненты как:

TIA Portal

  • Simatic Step 7 — программное обеспечение фирмы Siemens для разработки систем автоматизации на основе программируемых логических контроллеров с использаванием языков программирования стандарта МЭК (LAD, FBD, STL). Применяется для программирования контроллеров S7-1200, S7-1500, S7-300, S7-400 

  • Simatic WinCC — приложение для разработки человеко-машинного интерфейса панелей оператора simatic или scada;

  • Simatic PLCSIM — ПО позволяющие эмулировать ПЛК необходимой конфигурации, HMI панели или SCADA.

Основные функции TIA Portal:
  • Создание конфигурации и настройка аппаратных и программных компонентов системы автоматизации.

  • Построение и настройка коммуникационных сетей системы автоматизации.

  • Создание программ для ПЛК.

  • Настройка панелей операторов SIMATIC и создание человеко-машинного интерфейса.


 

Программирование PLC-контроллеров Siemens Simatic S7-1200

Программирование PLC-контроллеров Siemens Simatic S7-1500

(CPU 1511-1, CPU 1511С-1, CPU 1512С-1, CPU 1513-1, CPU 1515-2, CPU 1516-3, CPU 1517-3, CPU 1518-4, CPU 1511-F1, CPU 1513F-1, CPU 1515F-2, CPU 1516F-3, CPU 1517F-3, 1CPU 518F-4)

Заказать у нас

Программирование PLC-контроллеров Siemens Simatic S7-300

(CPU 312, CPU 312C, CPU 313C, CPU 313C-2 DP, CPU313C-2 PtP, CPU 314, CPU314C-2 DP, CPU314C-2 PN/DP, CPU314C-2 PtP, CPU315-2 DP, CPU315-PN/DP, CPU317-2 PN/DP, CPU319-3 PN/DP, CPU315F-2 PN/DP, CPU315F-2 DP, CPU317F-2 PN/DP, CPU317F-2 DP, CPU319F-3 PN/DP)

Заказать у нас

Программирование PLC-контроллеров Siemens Simatic S7-400

(СPU 412-1, СPU 412-2 DP, СPU 412-2 PN, СPU 414-2 DP, СPU 414-3 DP, СPU 414-2 PN/DP, СPU 416-2 DP, СPU 416-3 DP, СPU 416-3 PN/DP, СPU 417-4, СPU 414F-3 PN/DP, СPU 414F-2 DP, СPU 416F-3 PN/DP)

Заказать у нас

Обучение программирование Siemens Simatic S7

Simatic S7, Курс, уроки, видео
«Первые шаги, без которых невозможно написать проект для Simatic S7» и «Рабочий проект для Simatic S7»

Курс по программированию состоит из двадцати трех уроков. Обучение проходит в формате «Смотришь видео и повторяешь за мной».

Предназначен как для начинающих программистов, для тех, кто делает первые шаги, так и для тех, кто уже чему-то самостоятельно научился и желает получить ответы на свои вопросы, структурировать материал. В результате прохождения курса возникнет понимание, как осознанно создавать проекты, настраивать контроллер, только-только начать писать простые программы, проверять первичную связь с CPU.

Представлены несколько практических задач для самостоятельного решения, что позволит эффективно освоить материал.

В результате появится достаточная уверенность самостоятельная писать с нуля программы на любом из следующих языков: STL, FBD и LAD; умение работать с дискретными и аналоговыми сигналами, с функциями, с функциональными блоками, с блоками данных.
Получите ряд наработок по написанию программ для основных производственных узлов.
Будете уверенно пользоваться всеми основными возможностями:
SIMATIC Manager,
S7-PLCSIM  Simulating Modules,
Setting the PG-PC Interface
и других.

Подробное описание курса и отзывы к нему можно прочитать здесь.

++++++++++++++++++++++++++++++++++++++++++++++++++++++

Мои курсы позволят в короткий срок получить структурированные понятия по началу работы с контроллером, по наладке, по нахождению причин неисправностей. Под руководством опытного наставника и отлаженной годами программы обучения сможете быстро освоить все премудрости работы с контроллером Siemens Simatic Step7. Благодаря выполнению практических задач, вы освоитесь в программе, выучите основной набор команд, поймете принцип программирования контроллера. Сэкономите уйму своего времени и нервов в постижении всего этого. А некоторые знания, полученные из моих курсов, вы не найдете больше нигде!

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

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

Все дело в том, что рабочая часть такой системы это отдельная зона, а вводы/выводы на/с ПУ это отдельный блок (зона) программы. Вся программа структурирована и каждая зона выполняет свои функции.

У меня на подходе следующий — третий «продвинутый» курс по программированию. В нем я баю азы прогрессивных технологий программирования объектно-ориентированного программирования. Ряд фишек, которые упрощают задачи программиста при написании проектов для широкого спектра производственных задач.
Обучение данному курсу возможно по Skype — пока, индивидуально.

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

++++++++++++++++++++++++++++++++++++++

В последнее время работаю в TIA PortalTIA Portal, Totally Integrated Automation Portal, Siemens Simatic TIA Portal v14.0 SP1
Обучаю работе и в этом софте. Помогаю в трудностях выполнения учебных и производственных задач с промышленными PLC-контроллерами Siemens, программированием операторских панелей, систем плавного запуска электродвигателей, преобразователей частоты.
Возможно провести обучение в WinCC, WinCC OA.

++++++++++++++++++++++++++++++++++++++

Для первого знакомства со мной пройдите
бесплатный курс по Основам SIMATIC S7
Получить его вы можете сразу после заполнения формы
в правой колонке сайта.

==============================

С уважением, Вячеслав Михайлович.

Сименс импорт в CoDeSys — PLC

В подменю «Проект» «Сименс импорт», вы найдете команды, которые позволяют импортировать компоненты (POU) и переменные из файлов Siemens STEP5/7.

Команда «Импорт SEQ файла» позволяет  импортировать глобальные переменные из символьных файлов STEP5. Эта команда выполняется перед командой «Импорт проекта S5» для создания удобочитаемых идентификаторов при импортировании компонентов. Две эти команды позволяют импортировать компоненты из файлов STEP5 в открытый проект CoDeSys. Вы можете оставить компоненты на языке STEP5 IL или конвертировать их в МЭК языки.

Мы рекомендуем, проводить импортирование в пустой проект CoDeSys. Обязательно включите библиотеку standard.lib, иначе вы не сможете импортировать таймеры.

Импорт из символьных файлов  SEQ

SEQ это обычный формат символьных файлов STEP5. Символьные определения считываются из файлов *. seq. Каждое определение включает абсолютный адрес S5 элемента программы (вход, выход, память, и т.д.), соответствующий идентификатор, а также может содержать комментарии. Это текстовый файл, каждое определение начинается с новой строки. Поля определения отделены пробелами. Каждый комментарий начинается с точки с запятой.

Определения из SEQ файла будут переведены в глобальные переменные в формате МЭК 61131-3, включая символьное имя, адрес и комментарий (если есть). Адрес будет приведен к требованиям МЭК 61131-3 (знак процента, и т.д.). Так как S5 имена могут содержать не разрешенные МЭК символы, они будут изменены, где это необходимо. Недействительные знаки будут заменены символом подчеркивания. Если потребуется больше чем одно подчеркивание, каждый последующий знак будет заменен допустимым символом (например, «0»). Если имя изменено в процессе преобразования, исходное имя будет добавлено в виде комментария. Исходные SEQ комментарии также импортируются. Может быть создано несколько модулей определения глобальных переменных. Каждый блок включает не более 64КБ текста.

Описанный SEQ формат используется в Siemens STEP5-PG, в большинстве версий Siemens STEP7-300/400 и ACCON-PG от DELTALOGIC. Формат поддерживается в STEP7-SEQ файлах версии 3.x или старше. Формат файлов STEP7 версии 2.x не поддерживается. Вместо разделительных табуляций он содержит символические имена фиксированной длины.

Для начала, вы указываете необходимый SEQ файл в стандартном диалоге Windows и запускаете процесс импортирования. В течение этого процесса могут возникать ошибки. Это может случиться, если разные STEP5/7 идентификаторы преобразуются в одинаковые МЭК идентификаторы. Например, два STEP5 идентификата «A!» И «A?» будут конвертированы в «A_». В этом случае возникнет следующее сообщение: «Повторное определение идентификатора A_». Измените одну из переменных.

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

Если проект, в который вы импортируете уже, содержит декларацию для глобальной переменной x с прямым адресом (например, «%MX4.0») то может случиться, что импорт из SEQ содержит переменную с тем же самым адресом. Это допускается в МЭК 61131-3, но возможно не запланировано пользователем. Никаких сообщений об ошибке не будет, но ваша программа может функционировать неверно. Чтобы избежать этой проблемы, лучше импортировать в пустой проект или в проект, в котором еще нет никаких абсолютных адресов.

После импортирования SEQ можно переходить к импортированию программных компонентов  STEP5/7. Вы можете также определить входы-выходы через конфигурацию ПЛК, это не требуется при импортировании, но позволяет своевременно обнаружить ошибки идентификаторов.

 

Импорт из файла проекта S5

Компоненты (POU) читаются из файла программы Siemens S5 (*.s5d). Исходным является MC5 код исполняемый S5 SPS. В целом, MC5 код соответствует знакомым программистам инструкциям STEP5 IL (без символьных имен). Кроме того, S5D включает комментарии из исходного текста STEP5. Поскольку S5D файл содержит абсолютные адреса без символических имен, CoDeSys отыскивает соответствующие символические имена, определенные в проекте. Если таковые отсутствуют, абсолютный адрес остается без изменений. Именно поэтому, символьный файл SEQ должен быть обработан до S5 файла.

Для начала, вы указываете необходимый S5D файл в стандартном диалоге Windows. В следующем диалоговом окне вы должны просмотреть список POU и выбрать необходимые. Наиболее простой путь — выбрать все. Здесь же вы решаете оставлять компоненты в STEP5 IL либо конвертировать их в IL, LD или FBD.

Везде где это возможно, CoDeSys будет отыскивать и включать в код символические имена. Так для инструкции «U M12.0» он возьмет имя переменной расположенной по адресу M12.0. Будет использовано первое объявление в проекте. В результате переменная будет импортирована как, например «U-Name» вместо «U M12.0».

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

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

Ваш адрес email не будет опубликован. Обязательные поля помечены *