ЛЕКЦИЯ №13

Цели

Действия

•Выполните сброс памяти CPU в соответствии с указаниями на рисунке.

• Проверьте успешность выполненного сброса памяти. Сброс памяти будет успешным, только если все пользовательские блоки (DB, FC, FB, OB) будут удалены из памяти CPU: в SIMATIC® Manager выберите раздел S7 Program "My_Program", затем переключите вид на интерактивный (Online) с помощью кнопки на панели инструментов:

 

Примечания

При сбросе памяти CPU все данные пользователя из CPU удаляются. Эта операция выполняется, чтобы в памяти CPU не осталось "старых" блоков. При сбросе памяти происходит следующее:

• Все данные пользователя из CPU удаляются (за исключением назначенных параметров MPI).

• Инициализируется процедура тестирования оборудования.

• Если вставлена карта памяти EPROM, то CPU копирует ее содержимое назад во внутреннюю память RAM (после сброса).

• Если карта памяти EPROM отсутствует, то установленный MPI-адрес сохраняется. Если карта памяти установлена, то загружается MPI-адрес, сохраненный на ней.

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

 

Рис.12.3. Архитектура блоков; редактирование блоков

 

После завершения изучения данной главы слушатели ...

…будут знать различные типы S7-блоков

…будут понимать принцип "структурного программирования"

…будут знать значение областей отображения процесса (PII, РIQ)

…смогут объяснить принцип циклического выполнения программы

…будут знать и будут способны выбрать язык программирования в STEP7 (LAD, FBD или STL) для требуемой задачи

… будут уметь редактировать, сохранять и загружать логический S7-блок в CPU с использованием редактора LAD/STL/FBD

… будут уметь выполнять отладку простой программы с помощью функции тестирования "Monitor Блок" ("Мониторинг блока")

… будут уметь выполнять настройку редактора LAD/STL/FBD

 

 

Рис.12.4. Типы кодовых блоков

 

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

 

Организационные Организационные блоки OB представляют собой блоки интерфейс между операционной системой и

программой пользователя.

OB Программа в целом может быть записана в блоке

OB1, который циклически вызывается операционной

системой (линейная программа). Или же программа

может быть разделена и сохранена в нескольких

блоках (структурированная программа).

 

Функции Функция FC содержит частное функциональное

FC, SFC решение целой программы. При этом функции

могут быть запрограммированы таким образом, что

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

 

ФункциональныеВ основном функциональные блоки имеют те же блоки FB, SFB возможности, что и функции. Кроме того

(instance DB). функциональные блоки имеют свою собственную

область памяти в виде экземплярных блоков данных

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

Системные функциональные блоки SFB - это функции с параметрами, встроенные в операционную систему CPU. Их имена (номера) и их функции жестко определены. Подробную информацию по ним можно найти в справочной системе.

 

Блоки данных Блоки данных DB - это области данных программы, в

DB которых данные пользователя организованы в

определенную структуру.

 

ДопустимыеВы можете использовать весь набор операций во

операции всех указанных выше блоках (FB, FC и OB).

 

 

Рис.12.5.Структура программы

 

Линейная Вся программа записывается в одном

программа последовательном программном блоке. Этот тип

программы подобен жестко запрограммированному

автомату на релейных схемах, которые в настоящее

время вытеснены программируемыми логическими

контроллерами. CPU обрабатывает отдельные

инструкции программы последовательно одну за

другой.

 

Составная Программа делится на отдельные блоки, каждый

программа из которых содержит подпрограмму для решения

части общей задачи. Внутри блока программа

может быть также разбита на составные части сегменты. Вы можете создавать шаблоны для однотипных сегментов.

Организационный блок OB1 содержит инструкции для вызова других блоков в определенной последовательности.

 

Структурированная Структурированная программа разбивается на

программа блоки. Программа ОВ1 функционально

минимизирована и служит для вызова отдельных

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

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

Пример:

• Блок “Pump” ("Насос") содержит команды для управления насосом.

• Программные блоки, отвечающие за управление отдельными насосами, вызывают блок “Pump” и передают ему информацию о конкретном насосе и соответствующие параметры для управления.

• Когда все инструкции в блоке "Pump" выполнены, управление передается вызвавшему блоку (например, OB1), где продолжается выполнение программы.

Рис.12.6. Отображение процесса

 

ВведениеCPU считывает состояния входов и выходов в

каждом цикле. В памяти CPU определены

специальные области, в которые загружаются

двоичные данные из модулей: PII и PIQ. В

процессе работы программа имеет доступ к этим

областям памяти.

PII В таблице отображения входов в памяти CPU

хранятся состояния сигналов на входах.

 

PIQ Таблица отображения выходов содержит

выходные величины, получаемые при выполнении

программы. Они пересылаются на фактические

выходы (Q) в конце цикла сканирования

программы.

 

Программа При опросе входов в польз A I 2.0) считывается

последнее состояние из PII. Это гарантирует, что

при многократном опросе входа в пределах одного

цикла, всегда используется одно и то же состояние

сигнала.

 

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