Время на прочтение
4 мин
Количество просмотров 426K
Добрый день, хабровчане! Полазив по Хабру, мною было обнаружено всего несколько топиков, в котором упоминалось бы словосочетание «Simatic Step 7». Хочу поделиться с Вами небольшой частью информации, накопленной мною за все время работы с программируемыми логическими контроллерами, и показать, что из себя представляют ПЛК, оболочка и что мне приходилось на них строить.
Данный пост содержит общую ознакомительную информацию о программировании ПЛК Siemens.
Введение
Устроилась я в эту фирму еще на 5м курсе института. К слову, образование мое к программированию относится весьма косвенно и было это больше увлечением. Познания мои на тот момент ограничивались курсом Delphi и весьма базовым Ассемблером. Компания занималась (да и занимается) проектированием, строительством и обслуживанием грузоподъемных машин, таких как погрузчики, портальные, козловые, мостовые и прочие краны. К ГП машинам мое образование имело еще меньше отношения. Поэтому я решила попробовать.
Программируемые логические контроллеры Siemens
ПЛК фирмы Siemens — это промышленные контроллеры и используются для автоматизации технологических процессов. У нас, в частности, использовались для автоматизации работы грузоподъемных машин.
Simatic включает в себя несколько линеек ПЛК — Simatic S5 и Simatic S7. В свою очередь линейка Simatic S7 содержит семейства S7-200, S7-300, S7-400 и S7-1200.
Чаще всего мы использовали ПЛК семейств S7-300 и S7-400, для которых компанией Siemens было разработано собственное программное обеспечение Simatic Step 7.
ПЛК включали в себя:
- модуль центрального процессора (CPU);
- блоки питания (PS) для питания контроллера от сети переменного или постоянного тока;
- сигнальные модули (SM), предназначенные для ввода/вывода дискретных и аналоговых сигналов;
- коммуникационные процессоры (CP), выполняющие автономную обработку коммуникационных задач в промышленных сетях Profibus, Industrial Ethernet и др.;
- функциональные модули (FM), которые выполняли задачи автоматического регулирования, взвешивания, позиционирования и пр.;
- интерфейсные модули (IM) для подключения стоек расширения к базовому блоку контроллера.
Кроме этого, к ПЛК через сеть Profibus подключалось большое количество ведомых устройств, таких как частотные преобразователи, приводы, абсолютные/инкрементные энкодеры и пр.
Вся работа ГП машины по максимуму автоматизировалась и крановщику нужно применять минимум усилий для управления оной.
Что из себя представляет Simatic Step 7?
Главной утилитой является Step 7 — Simatic Manager, которая позволяет производить конфигурацию ПЛК и сетей (утилиты HWConfig и NetPro).
В процессе конфигурации определяется состав оборудования, способы подключения, используемые сети, адреса, выбираются настройки для используемых модулей. Готовая конфигурация загружается в ПЛК, что так же является настройкой оборудования.
Утилиты конфигурации позволяют осуществлять диагностику оборудования, обнаруживать аппаратные ошибки или неправильный монтаж.
Программирование ПЛК производится так же с помощью Simatic Manager, обеспечивающий написание программ в трех редакторах:
- LAD (Ladder Diagram) — релейные диаграммы. Редактор отображает программу в графическом представлении, похожем на электрическую монтажную схему. Логические схемы позволяют программе имитировать протекание электрического тока от источника напряжения через ряд логических условий на входах, которые активизируют условия на выходах. Источником напряжения выступает шина, находящаяся слева.
Основными элементами являются нормально замкнутые и нормально разомкнутые контакты.Соответственно, замкнутые контакты позволяют потоку сигнала протекать через них к следующему элементу, разомкнутые контакты — препятствуют протеканию потока сигнала.
Логика делится на сегменты, т.н. нэтворки (Network), программа исполняется слева направо и сверху вниз.
Особенностями редактора LAD является простота в использовании и понимании для начинающих программистов. - FBD (Function Block Diagram) — функциональные блочные диаграммы. Этот редактор отображает программу в виде обычных логических схем. Контактов нет, но есть эквивалентные функциональные блоки. В данном редакторе не используется понятие «поток сигнала», как в LAD, его выражает аналогичное понятие потока управления через логические блоки FBD.
Потоком сигнала называется пусть состояния «1» через элементы FBD. Логика программы вытекает из связей между функциональными блоками, обозначающими команды.
Графическое представление функционального плана хорошо отражает процесс выполнения программы. - STL (Statement List) — список инструкций. Данный редактор дает возможность создавать программы, вводя мнемонические обозначения команд. В этом редакторе можно создавать программы, которые невозможно создать в редакторах LAD и FBD. Программирование в STL очень похоже на программирование на Ассемблере, несколько специфическое.
ПЛК выполняет команды в порядке, определяемом программой, сверху вниз, затем начинает сначала.
С помощью редактора STL всегда можно посмотреть или отредактировать программы, созданные на LAD или FBD, обратное не всегда возможно.
Я работала с самого начала в STL, пробовала LAD, мне показался слишком непонятным и многие вещи таки не удавалась так просто в нем сделать, как в STL. Плюс еще в том, что при загрузке программы в ПЛК, она компилируется в STL и, соответственно, при выкачке ее из ПЛК на программатор она так же представлена в STL.
Вместо заключения
Программирование ПЛК занятие увлекательное, особенно когда это не стенд, а реальное оборудование.
Моя работа заключалась в создании программы на ПЛК для управления всей ГП машины либо отдельных ее частей, а так же загрузке программного обеспечения непосредственно в оборудование и его отладке.
Случалось разное, но работать с железом было очень интересно, хоть и не легко иногда.
А строили мы вот такие ГП машины:
2. ОСНОВНЫЕ ПОНЯТИЯ ЯЗЫКА STEP 7
2.1. Структура программы
Программное обеспечение ПЛК состоит из следующих частей:
Операционная система: содержит общую часть всех инструкций и соглашений для
реализации внутренних функций (например, сохранение данных при сбросе напряжения питания, управление реакцией на прерывания и т. д.). Она расположена на так называемом EPROM (Erasable Programmable Read Only Memory) и является фиксированной составной частью процессора. Пользователь не имеет возможности изменять части операционной системы.
Программа пользователя: содержит набор всех написанных пользователем инструкций
и соглашений для обработки сигналов, с помощью которых производится управление процессом или машиной. Программа пользователя разделяется на блоки. Деление программы на блоки делает ее структуру более понятной и подчеркивает программно-технические связи отдельных частей установки.
Блоком называется часть программы пользователя, ограниченная функционально и структурно или по целям использования.
Различают блоки содержащие:
Рекомендуемые материалы
· инструкции для обработки сигналов;
· блоки, содержащие данные (блоки данных).
Блоки идентифицируются:
• типом блока (OB, PB, SB, FB, FX, DB, DX);
• номером блока (число от 0 до 255).
2.2. Инструкции языка STEP.
Инструкция языка STEP является наименьшей самостоятельной единицей программы пользователя. Она является предписанием для работы процессора. Инструкция может быть представлена в виде:
· Списка команд (инструкций) – STL. Представляет собой список команд подобно обычному языку Ассемблера.
· Контактный план — LAD. Управляющая программа записывается при помощи изображений элементов релейных контактных схем.
· Функциональный план – FDB. Для отображения программы используются схемы логических элементов.
STL-программа состоит из ряда отдельных выражений (statement), наименьших самостоятельных единиц пользовательской программы.
Выражение содержит описание работы для CPU. На рисунке 4 показана общая структура STL-выражения. Инструкция языка STEP состоит из операции и операнда.
Операнд может быть представлен абсолютно или символически (через список
соответствия).
а) в)
Рисунок 4 — Инструкции языка STEP7
а)структура STL-выражения; в) виды представления инструкций языка STEP7
2.3. Типы блоков
Таблица 1 содержит перечень и краткое описание программных блоков для контроллеров SIMATIC S7, а также блоков данных.
Таблица 1-Программные блоки и блоки данных
Блок |
Выполняемые функции |
ОВ |
Организационные блоки. Предназначены для: организации циклического выполнения программы пользователя (ОВ1), обработки событий: · включения питания (ОВ100), · циклического прерывания (ОВЗ0-ОВ38), · прерывания по дате и времени (ОВ10-ОВ17), · прерывания по задержке времени (ОВ20-ОВ23), · возникновения ошибки (ОВ40-ОВ47, ОВ80-ОВ87, ОВ121, ОВ122). Блоки вызываются автоматически операционной системой контроллера в случае возникновения того или иного события.1 |
FC |
Функция. Может быть вызвана из любого блока. Допускается передача параметров в функцию и обратно. Функция может также иметь локальные переменные, которые теряются при выходе из блока. |
FB |
Функциональный блок. Также может быть вызван из любого блока и может иметь формальные и локальные параметры. Особенностью FB является наличие переменных типа STAT, которые сохраняют свое значение при выходе из блока. Поэтому функциональный блок имеет один или несколько связанных с ним блоков |
SFC |
Системная функция. Это функция, уже имеющаяся в ОС CPU. Предназначена для выполнения определенных стандартных действий. |
SFB |
Системный функциональный блок. Аналогичен FB, но, как и SFC, уже имеется в составе ОС контроллера. |
DB |
Блок данных программы пользователя. Предназначен для долговременного хранения информации. |
DI |
Блок данных функционального блока. Используется для хранения значений переменных функционального блока. Отличается от DB наличием жесткой структуры, определяемой связанным с ним функциональным блоком. |
В контроллерах SIMATIC S7 существует несколько способов обработки управляющей программы:
1. Циклическая обработка. Состоит из периодически повторяющихся обработок управляющей программы, которая начинается с вызова организационного блока ОВ1. В начале цикла обработки программы ОС заполняет область отображения входов, сбрасывает таймер контроля длительности цикла, после этого вызывает для обработки блок ОВ1. В конце цикла обработки ОС переписывает в выходные модули значения из области отображения выходов, после чего начинается следующий цикл обработки. В блоке ОВ1 можно вызывать функции и функциональные блоки. После обработки вызванного блока управление передается блоку, из которого был произведен вызов данного блока.
2. Циклические прерывания. При управлении ТП всегда существуют программы, которые должны обрабатываться через одинаковые, заранее заданные, промежутки времени. Для этих целей в контроллерах SIMATIC S7 существуют блоки обработки циклических прерываний. Промежуток времени, через который должен вызываться данный блок, задается программистом.
3. Прерывания по дате и времени. Существуют программы, которые
должны выполниться один раз в определенный день и час или выполняться периодически, начиная с определенных даты и времени. Для этих целей в контроллерах SIMATIC S7 можно запрограммировать блоки прерываний по дате и времени.
4. Прерывания по задержке времени. Такие блоки вызываются по истечении определенного времени после возникновения какого-либо события.
5. Обработка включения питания. Часто при включении питания необходимо выполнить какие-либо однократные действия: первичную
установку, инициализацию и т.д. Для этих целей предусмотрены блоки обработки включения
питания.
6. Обработка ошибок. Такие блоки выполняются в случае возникновения
аппаратных или программных ошибок.
Организационные блоки обрабатываются циклически. Период и приоритет
обработки определяется номером организационного блока (см. таблицу 2).
Таблица 2 — Период и приоритет обработки организационных блоков
Организационный блок |
Условия вызова |
Приоритет |
|
по умолчанию |
изменения |
||
OB1 |
Вызывается операционной системой |
1 |
Нет |
OB10 – OB17 |
В заданное время |
2 |
2 … 24 |
OB20 – OB23 |
По истечении времени |
3 … 6 |
2 … 24 |
Организационный блок |
Условия вызова |
Приоритет |
|
по умолчанию |
изменения |
||
OB30 – OB38 |
Через заданный интервал |
7 … 15 |
2 … 24 |
OB40 – OB47 |
От входов и выходов |
16 … 23 |
2 … 24 |
OB60 |
Мультипроцессорное |
25 |
Нет |
OB70, OB72, OB73 |
Ошибки резервирования |
25, 28, 25 |
2 … 28 |
OB80 – OB85 |
Асинхронные ошибки |
26 |
2 … 26 |
OB90 |
Фоновая обработка |
29 |
Нет |
OB100 |
При запуске |
27 |
Нет |
OB121, OB122 |
Ошибки выполнения программы |
Приоритет блока, вызвавшего программу |
2.4. Типы данных
Контроллеры SIMATIC S7 могут работать со следующими типами данных:
1. Элементарные типы данных (до 32 бит)
a. Битовые типы данных представлены следующими типами:
Бит (BOOL)
Бит — это единица, соответствующая одному двоичному разряду. Два возможных значения бита обозначаются «0» (FALSE) и «1» (TRUE).
Байт (BYTE)
Байт состоит из 8 бит, которым соответствуют битовые адреса от 0 до 7 (справа налево).
Старшим является бит с большим адресом. Байт могут образовать только те биты, адрес младшего из которых кратен 8, например: 0, 8, 16 и т.д. В контроллерах Simatic S7 байт может интерпретироваться как просто байт (набор бит) или как ASCII-символ.
Слово (WORD)
Слово — это следующая после байта по величине единица, ее длина 16 бит. Любые два соседних байта можно объединить в слово, старшим будет являться байт с меньшим адресом.
Адрес слова — это адрес байта с меньшим адресом. В контроллерах Simatic S7 слово может интерпретироваться как просто слово (набор бит), целое число со знаком, дата, время и т.д.
Двойное слово (DWORD)
Любые два соседних слова можно объединить в двойное слово, его длина — 32 бита или 4
байта. Старшим словом (байтом) является слово (байт) с меньшим адресом. Адрес двойного слова — это адрес байта с меньшим адресом. В контроллерах Simatic S7 двойное слово можно интерпретировать как просто двойное слово, длинное целое число со знаком, вещественное число в формате IEEE и т.д.
Таблица 3 — Представление битовых типов данных
Char (литера)
Переменная типа CHAR (character, литера) занимает один байт. Тип данных CHAR
представляет одну литеру в ASCII-формате, например, ‘А’.
Работая с этим типом данных, вы можете использовать любую печатную литеру в апострофах.
b. Математические типы данных представлены следующими типами:
INT (целое число)
Переменная типа INT (integer) хранится как целое число (16-битное число с фикси-
рованной запятой или десятичной точкой). Тип данных INT не имеет специального идентификатора.
Целочисленная переменная занимает одно машинное слово. Сигнальные состояния битов с 0-го по 14-ый представляют цифровые разряды (позиции) числа. Сигнальное состояние 15-го
бита представляет знак (sign, S).
DINT (двойное целое число)
Переменная типа DINT хранится как целое число (32-битное число с фиксированной запятой). Целое сохраняется в DINT-переменной. когда оно превышает 32 767 или меньше -32
768, или когда число предваряется идентификатором типа L#.
Под переменную типа DINT отводится двойное слово. Сигнальные состояния битов с 0-го
по 30-ый представляют цифровые позиции числа. Знак хранится в 31-м бите.
REAL (вещественный)
Переменная типа REAL представляет дробь и хранится как 32-битное число с плавающей запятой (десятичной точкой). Целое сохраняется как переменная типа REAL при добавлении
десятичной точки и тая.
В экспоненциальном представлении вы можете предварить «е» или «Е» целым числом
или дробью из семи соответствующих чисел и знака. Цифры, которые расположены за «е» или
«Е» представляют экспоненту по базе 10. STEP 7 производит преобразование REAL-переменной
во внутренне представление числа с плавающей точкой.
c. Временные типы данных представлены следующими типами:
S5TIME
Переменная типа S5TIME используется в базовых языках STL, LAD и FBD для установки
таймеров системы SIMATIC. Она занимает одно 16-битное слово с 1 + 3 декадами.
Время устанавливается в часах (hours), минутах (minutes), секундах (seconds) и мил-
лисекундах (milliseconds).
DATE (Дата)
Переменная типа DATE хранится в машинном слове как число с фиксированной точкой без знака. Содержимое переменной соответствует количеству дней, начиная с 01.01.1990. Ее
представление показывает год, месяц и день, разделенные дефисом.
TIME (Время)
Переменная типа TIME резервирует одно двойное слово. Ее представление содержит информацию о днях (d), часах (li), минутах (т), секундах (s) и миллисекундах (ms), отдельные
элементы этих данных могут быть опущены. Содержимое переменной интерпретируется в миллисекундах (ms) и хранится как 32-битное число с фиксированной точкой со знаком.
TIME_OF_DAY (Время суток)
Переменная типа данных TTMEOFDAY резервирует для себя одно двойное слово. Она
содержит количество миллисекунд с начала суток (со времени 00:00) в виде числа с фиксированной точкой без знака. Ее представление содержит информацию о часах, минутах и секундах, разделенных двоеточием. Миллисекунды, которые следуют за секундами, отделены от них десятичной точкой. Миллисекунды могут отсутствовать.
2. Сложные типы данных (более чем 32 бита)
STEP 7 определяет следующие четыре сложных типа данных:
Ø DATE_AND_TIME (DT, Дата и время) Дата и время (в формате BCD-числа);
Ø STRING (Строка) Строка литер длиной до 254 знаков;
Ø ARRAY (Массив) Переменная-массив (совокупность переменных одного типа);
Ø STRUCT (Структура) Переменная-структура (совокупность переменных разных типов).
Типы данных предопределяются пользователем при их использовании: задается длина в
типе STRING (строка литер), сочетание и размер в типах ARRAY и STRUCT (структура).
3. Типы данных определенные пользователем (более чем 32 бита)
User data type — UDT (Пользовательский тип данных) соответствует структуре (ком-
бинация компонентов любых типов) с действием на глобальном уровне. Вы можете воспользоваться пользовательским типом данных, если в вашей программе часто фигурирует структурный тип и переменные, или вы хотите структуре данных присвоить имя.
Типы UDT обладают глобальным действием; то есть, они описываются один раз и
доступны для использования во всех блоках.
При объявлении переменных определяются следующие их свойства:
• символическое имя
• тип данных
• видимость переменной
Переменные могут быть объявлены:
Ø в глобальной символьной таблице (элементарные типы данных)
Ø в таблице описаний глобального блока данных (все типы данных)
Ø в таблице описаний логического блока (OB, FB и FC)
Рисунок 5 — Типы данных языка STEP 7
2.5. Виды адресации
При написании программ в STEP 7 можно применять прямую или косвенную адресации.
Прямая адресация может быть представлена в виде
· абсолютной адресации;
· символьной адресации.
Абсолютная адресация состоит из следующих основных полей – идентификатор области памяти и адрес в этой области.
Однако при большом числе переменных такая адресация неудобна, поэтому для придания смысловой нагрузки переменных вводятся их символьные обозначения, те
применяется символьная адресация.
Для хранения символьных обозначений используется специальная таблица,
содержащая четыре столбца, с названием, адресом, типом данных и комментарием.
Символьное имя Symbol содержит до 24 символов, начинается с буквы, может содержать подчеркивания.
Например, если входной дискретный модуль занимает адреса от 0 до 3, то входы
могут обозначаться как I 0.0, I 0.1 и т.д. Аналогично выходы для цифрового модуля вывода, который занимает адреса с 4 по 7, обозначаются как Q 4.0, Q 4.1 и т.д.
Косвенная адресация является более сложным видом адресации и здесь не рассматривается. Основные виды адресации доступные с STEP 7 представлены на рисунке.
Рисунок 6 — Виды адресаций доступные в языке STEP 7
2.6. Обращение к данным в областях памяти
Контроллер S7 хранит информацию в различных местах памяти, которые имеют однозначные адреса. Программист может явно указать адрес в памяти, к которому он хочет обратиться.
Для обращения к биту в некоторой области памяти программист должен указать
адрес бита, состоящий из идентификатора области памяти, адреса байта и номера бита.
В контроллере S7 существуют следующие области памяти
Память входов образа процесса: обозначается — I
В начале каждого цикла S7 опрашивает физические входы и записывает
полученные значения в регистр входов образа процесса. К образу процесса можно обратиться в формате бита, байта, слова и двойного слова:
Тип данных Обращение Пример
Бит |
I[адрес байта]. [адрес бита] |
I0.1 |
Байт Слово |
I[длина(B)][начальный адрес байта] I[длина(W)][начальный адрес байта] |
IB4 IW4 |
Двойное слово |
I[длина(D)][начальный адрес байта] |
ID4 |
Память выходов образа процесса: Q
В конце цикла S7 копирует значения, хранящиеся в регистре выходов образа процесса, в физические выходы. К образу процесса можно обратиться в формате бита,
байта, слова и двойного слова:
Тип данных |
Обращение |
Пример |
Бит Байт |
Q[адрес байта]. [адрес бита] Q[длина(B)][начальный адрес байта] |
Q0.1 QB4 |
Слово Двойное слово |
Q[длина(W)][начальный адрес байта] Q[длина(D)][начальный адрес байта] |
QW4 QD4 |
Память памяти переменных: V
Память переменных можно использовать для хранения промежуточных результатов операций, выполняемых в вашей программе. В памяти переменных можно
хранить также другие данные, имеющие отношение к процессу или к решению конкретной задачи автоматизации. К памяти переменных можно обратиться в формате
бита, байта, слова и двойного слова:
Тип данных Обращение Пример
Бит Байт |
V[адрес байта]. [адрес бита] V[длина(B)][начальный адрес байта] |
V10.2 VB100 |
Слово Двойное слово |
V[длина(W)][начальный адрес байта] V[длина(D)][начальный адрес байта] |
VW200 VD200 |
Область битовой памяти (меркерная память): М
Биты памяти (меркеры) можно использовать как управляющие реле для хранения промежуточных результатов операций или другой управляющей информации. К битам
памяти можно обратиться в формате бита, байта, слова и двойного слова:
Тип данных |
Обращение |
Пример |
Бит Байт |
M[адрес байта]. [адрес бита] M[длина(B)][начальный адрес байта] |
M10.2 MB100 |
Слово Двойное слово |
M[длина(W)][начальный адрес байта] M[длина(D)][начальный адрес байта] |
MW200 MD200 |
К данным в других областях памяти
· Область памяти таймеров – Т;
· Область памяти счетчиков – С;
· Аккумуляторам
обращаются, указывая в качестве адреса идентификатор области и номер элемента.
Тип данных |
Обращение |
Пример |
Область памяти таймеров Область памяти счетчиков |
Т[номер элемента] С[номер элемента] |
Т37 Бесплатная лекция: «3. Эколого-экономическая оптимизация» также доступна. С5 |
Аккумуляторам |
АС[номер элемента] |
АС0 |
Рисунок 7 — Пример обращения к одному и тому же адресу в формате байта, слова и двойного слова
1. Где скачать и как установить (я себе установил SIMATIC STEP 7 v5.5 SP2) подсказывать не буду, это тема отдельная, и решать ее Вам самим лично.
2. То же касается SIMATIC S7 PLCSIM (в этой статье нам не понадобится).
Пакет S7-PLCSIM позволяет эмулировать работу программируемых контроллеров SIMATIC 7-300/S7-400/C7/WinAC на программаторе/компьютере и предназначен для отладки программ пользователя без наличия реальной аппаратуры управления. Это позволяет обнаруживать программные ошибки на ранних стадиях реализации проекта, повышать качество программ, ускорять и удешевить выполнение пусконаладочных работ. S7-PLCSIM позволяет выполнять отладку программ, написанных в STEP 7 (STL, LAD, FBD), S7-GRAPH, 7-HiGraph, S7-SCL.
S7-PLCSIM имитирует работу S7-CPU, взаимодействующего с областью отображением процесса. Для выполнения отладки тестируемая программа загружается в эмулируемый контроллер.
S7-PLCSIM интегрируется в STEP 7 и обеспечивает поддержку множества функций:
• Непрерывное выполнение программы, выполнение одного или заданного количества циклов.
• Отображение содержимого аккумуляторов и регистров.
• Отображение и модификация состояний входов, выходов, флагов, таймеров, данных и т.п.
3. Запускаем Simatic Manager, перед нами появляется вот такое окно:
4. Создаем новый проект: File>>New
5. В открывшемся окне (USER projects ) в поле Name вводим название проекта, в поле Storage Location вібираем место размещения проекта на диске:
6. Добавим тип платформы в проекте: Insert>>Station>>Simatic 300 (можно и для 400-й серии взять для примера)
7. Проведем параметрирование нашей системы, а именно с каким железом будем работать. Двойным щелчком по значку Hardware откроется окно программы HW Config Simatic 300
8. Первым объектом нужно разместить шину обычным перетягиванием мыши на рабочее поле: Simatic 300>>RACK-300>>Rail.
9. Следующим (так же перетягиванием на рабочее поле) добавим блок питания: Simatic 300>>PS-300>>PS307 10А (24 В, 10 А) .
10. Далее нужно добавить наш процессор, работать будем с CPU 315-2 DP: Simatic 300>>CPU300>>CPU 315-2 DP
Откроется окно с параметрами модуля, главный параметр — адрес модуля (оставим без изменений).
11. Добавим модуль ввода-вывода цифровых сигналов DI8/DO8x24V/0,5A: Simatic 300>>SM300>>DI/DO-300>>DI8/DO8x24V/0,5A. По восемь цифровых входов и восемь выходов.
12. Теперь на нашей шине размещены:
- PS 307 — 10A (блок питания);
- CPU 315-2 DP (процесорный блок);
- DI8/DO8x24V/0,5A (модуль с 8ю входами и 8ю выходами).
13. Осталось самое главное, проверить на ошибки и сохранить проект.
Для проверки: Station>>Consistency Check
Проверка без ошибок заканчивается следующим сообшением
Для сохранения есть два пути, просто сохранить:
Station>>Save
и сохранить с компиляцией:
Station>>Save and Compile
При выполнении второго варианта наша система не только сохранится но и скомпилируется вся система
16. Переходим в Simulink Manager, выбираем вкладку blocks, двойным щелчком по ярлыку блока OB1
Откроется окно Properties
Нас интересует только поле Created in Launguage в котором нужно выбрать один из трех языков программирования ( LAD, FBD, STL).
Выберем LAD (релейные диаграммы) и нажмем Ok.
17. Перед нами откроется окно редактора
В результате нехитрых махинаций создали и подготовили проект для начала изучения программирования ПЛК Siemens. Создание простой программы и проверка ее работоспособности (с помощью SIMATIC S7 PLCSIM) будут рассмотрены в следующей статье.
Источник: https://redblot.ru/