Материал: Программируемые логические контроллеры SIMATIC S7-300 400. лабораторный практикум. Таратынов О.Ю., Ткалич С.А

Внимание! Если размещение файла нарушает Ваши авторские права, то обязательно сообщите нам

то она может быть расширена за счет использования внешних модулей памяти (RAM, FEPROM). В компактной серии CPU 31xC (и других CPU серии S7-300) в качестве загрузочной памяти используются микрокарты памяти (MMC). В этом случае работа CPU без установки MMC не возможна. Микрокарты

MMC выбираются из ряда 64 Kb, 128 Kb, 512 Kb, 2 Mb, 4 Mb, 8 Mb и заказываются отдельно.

Для обновления/сохранения версии операционной системы (firmware) необходимо иметь ММС объемом от 2 до 8MB (в зависимости от CPU). Файлы обновлений firmware находят-

ся в Интернете по адресу http://www.siemens.com/automation /service&support.

Рабочая память (всегда RAM) встроена в CPU и не может быть расширена. Она служит для размещения исполняемого кода программы и данных. Доступ к рабочей памяти имеет только операционная система CPU.

Системная память встроена в CPU и не может быть ра с- ширена. Следующая таблица показывает программно доступные области системной памяти.

Область адресов

Доступ

Запись в STEP 7

Области отображе-

Бит

Ix.y / Qx.y

ния процесса на

Байт

IBx / QBx

входах (PII) и вы-

Слово

IWx / QWx

ходах (PIQ)

Двойное слово

IDx / QDx

Меркеры

Бит

Mx.y

 

Байт

MBx

 

Слово

MWx

 

Двойное слово

MDx

Данные локального

Бит

Lx.y

стека

Байт

LBx

 

Слово

LWx

 

Двойное слово

LDx

Таймеры/

Таймер

Tx

Счетчики

Счетчик

Cx

40

Системная память содержит:

образы процесса на входах и выходах (RAM);

области меркеров/флагов (RAM);

данные локального стека (RAM);

области таймеров и счетчиков (RAM);

диагностический буфер, MPI адрес, счетчики времени работы - (сохраняемая память).

Совокупность программно доступных адресов модулей ввода-вывода образуют адресное пространство CPU (I/O address area). В системе памяти S7-CPU это система адресов разделена на 2 равные области - для чтения и записи (рис. 4.2).

Рис. 4.2. Области отображения процесса

Операционная система CPU опрашивает состояние входов и выходов в каждом цикле. В ОЗУ ( RAM) определены специальные области памяти, в которые загружаются двоичные

41

данные из модулей: PII и PIQ. В процессе работы программа имеет доступ к этим областям памяти.

PII - область отображение входов находится в памяти CPU. В ней хранятся состояния сигналов на входах.

PIQ - область отображения выходов содержит выходные величины, получаемые при выполнении программы. Они пересылаются на фактический выход (Q) в конце цикла.

Когда Вы опрашиваете входы в пользовательской программе, например, командой A I2.0, оценивается последнее состояние из PII. Это гарантирует, что при многократном опросе входа в пределах одного цикла, всегда используется одно и то же сигнальное состояние.

Области отображения процесса представляют ячейки системной памяти, которые по диапазону адресов совпадают с адресным пространством только по младшим адресам. Например, CPU 314C-2DP имеет размер PII 128 байт, область PI – 1024 байта. Это означает, что вся считываемая информация из модулей ввода, имеющих адреса с 0 по 127 (от PIB0 до PIB127), размещается по адресам области PII с IB0 по IB127.

В таблице доступных областей памяти обозначено: x – номер байта (8 бит), слова (16 бит), двойного слова (16 бит), номер таймера, счетчика. После точки y – номер бита.

Пример адресации области маркеров слова MD100 приведен на рис. 4.3.

Рис. 4.3. Пример адресации

42

5.ОБРАБОТКА ПРОГРАММЫ S7

Вцелом программное обеспечение для CPU состоит из операционной системы (operating system) и пользовательской программы (user program).

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

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

спомощью которых осуществляется управление предприятием (процессом) в соответствии с определенной задачей автоматизации.

Пользовательская программа может состоять из программных разделов, которые обрабатываются CPU в зависимости от определенных событий. Таким событием может быть запуск системы автоматизации, прерывание или обнаружение программной ошибки. Программы, назначенные для обработки событий, разделяются на приоритетные классы (priority classes), которые определяют порядок обработки программы, когда происходит несколько событий.

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

Каждому событию соответствует специальный организационный блок (organization block – OB). Организационные

43

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

Перед началом обработки главной программы CPU выполняет программу запуска (startup routine). Эта программа может быть запущена включением питания, поворотом переключателя режимов на передней панели CPU или с помощью программирующего устройства. Обработка программы, следующая за исполнением программы запуска, в системах S7-300 начинается всегда с начала главной программы (полный рестарт – complete restart); в системах S7-400 также возможно продолжить сканирование программы с точки, в которой оно было прервано («теплый» рестарт – warm restart).

Главная программа располагается в организационном блоке ОВ 1, который всегда обрабатывается центральным процессором. Начало пользовательской программы идентично первому сегменту (сети, network) в ОВ 1. По завершению обработки ОВ 1 (конец программы) CPU передает управление операционной системе, и после вызова различных функций операционной системы, таких как обновление образа процесса, центральный процессор снова вызывает ОВ 1.

Событиями, которые могут вмешиваться в работу программы, являются прерывания (interrupts) и ошибки (errors).

Источником прерываний может быть процесс (аппаратные прерывания), или они могут исходить от CPU (циклические прерывания – watchdog interrupts, прерывания по времени суток – time-of-day interrupts и другие).

Что касается ошибок, то различают синхронные и асинхронные ошибки. Асинхронной является ошибка, которая не зависит от выполнения программы, к примеру, отказ электропитания в устройстве расширения или замена модуля. Синхронные ошибки возникают при выполнении программы. К

44

Источник: https://studfile.net/preview/16568750/