Глобальные блоки данных (DB)

В отличие от логических блоков, блоки данных не содержат команд STEP 7. Они используются для хранения данных пользователя, иными словами, блоки данных содержат переменные данные, с которыми работает программа пользователя. Глобальные блоки данных применяются для хранения пользовательских данных, к которым могут обратиться все остальные блоки.

Если логический блок (FC, FB или ОВ) вызывается, то он временно занимает место в области локальных данных (L-стек). В дополнение к этой области локальных данных логический блок может открыть область памяти в виде DB.

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

Каждый FB, FC или ОВ может читать данные из глобального DB или записывать данные в этот DB. Эти данные сохраняются в DB после выхода из него.

Глобальный и экземплярный DB могут быть открыты одновременно. На следующем рисунке показаны различные методы доступа к блокам данных

 

Рисунок 7.4 – Методы доступа к блокам данных

 

Инструкции с блоками данных:

OPN : Открыть блок данных

Обозначение

Инструкция «Открыть блок данных» используетсядля открытия глобального блока данных (DB) или экземплярного блока данных (DI). Номер блока данных заносится в DB или DI. Последующие инструкции обращения к данным соответствуют обращению к номеру блока данных ранее открытого через регистры DB и DI.

Пример

DB10 является текущим открытым блоком. Опрос бита DBX0.0 соответственно производится для бита 0 байта данных 0 блока данных DB10. Состояние сигнала этого бита присваивается выходу Q 4.0.

 

5. Системные функциональные блоки (SFB) и
системные функции (SFC)

CPU S7 предоставляют в распоряжение заранее запрограммированные блоки, которые могут быть вызваны в пользовательской программе.

Системный функциональный блок (SFB) – это функциональный блок, встроенный в CPU S7. SFB являются частью операционной системы и не загружаются как часть программы пользователя. Как и FB, SFB – это блоки "с памятью". Для SFB тоже нужно создавать экземплярные блоки данных и загружать их в CPU как часть программы.

CPU S7 предоставляют в распоряжение следующие SFB:

- для связи через проектируемые соединения;

- для встроенных специальных функций .

Системная функция – это заранее запрограммированная, оттестированная функция, встроенная в CPU S7. SFC может быть вызвана в программе. SFC являются частью операционной системы и не загружаются как часть программы. Как и FC, SFC являются блоками "без памяти".

CPU S7 предоставляют SFC для следующих функций:

- контроль программы;

- работа с часами и счетчиками рабочего времени;

- передача событий из CPU всем остальным CPU в мультипроцессорном режиме;

- информация о статических и динамических системных данных, например, диагностика;

- генерирование сообщений, относящихся к блокам и т.д.

 

Контрольные вопросы

1. Каково назначение функциональных блоков и функций?

2. В чем отличие функциональных блоков и функций?

3. Как осуществляется назначение экземплярных блоков данных функциональным блокам?

4. В чем отличие глобальных и экземплярных блоков данных?

5. Каково назначение системных функциональных блоков и функций?