Организационный блок аппаратных ошибок CPU (OB84)
Операционная система CPU вызывает OB 84, если распознается ошибка в интерфейсе с сетью MPI, с внутренней коммуникационной шиной(K-шиной) или в сопряжении с интерфейсным модулем для децентрализованной периферии.
Если возникла такая ошибка, а OB 84 не был запрограммирован, то CPU переходит в состояние STOP. OB аппаратных ошибок CPU можно запретить или отложить и вновь разрешить с помощью SFC 39 - 42.
Локальные данные OB аппаратных ошибок
Следующая таблица содержит временные (TEMP) переменные OB аппаратных ошибок CPU. В качестве имен переменных взяты имена по умолчанию OB84.
Переменная | Тип | Описание |
---|---|---|
OB84_EV_CLASS | BYTE | Класс события и идентификатор: B#16#38: уходящее событие B#16#39: наступающее событие |
OB84_FLT_ID | BYTE | Код ошибок (B#16#81) |
OB84_PRIORITY | BYTE | Класс приоритета: 26 (по умолчанию для режима RUN или 28 (режим STARTUP) На резервном CPU H-системы в режиме LINK-UP, STARTUP или UPDATE: Биты 0 - 2: Номер стойки Бит 3: 0=резервный CPU, 1=основной CPU Биты 4 - 7: 1111 |
OB84_OB_NUMBR | BYTE | Номер OB (84) |
OB84_RESERVED_1 | BYTE | Номер OB (84) |
OB84_RESERVED_2 | BYTE | Резерв |
OB84_RESERVED_3 | WORD | Резерв |
OB84_RESERVED_4 | DWORD | Резерв |
OB84_DATE_TIME | DATE_AND_TIME | Дата и время, когда был вызван OB |
Организационный блок ошибок класса приоритета(OB85)
Операционная система CPU вызывает OB85 всякий раз, когда происходит одно из следующих событий:
- Стартовое событие для OB, который не был загружен.
- Ошибка при обращении операционной системы к модулю.
- Ошибка доступа к входам/выходам во время обновления образа процесса системой.
Если OB85 не был запрограммирован, то в случае обнаружения одной из этих ошибок CPU переходит в состояние STOP.
Можно заблокировать или задержать и вновь разблокировать OB ошибок класса приоритета,с помощью SFC 39 - 42
Локальные данные для OB ошибок класса приоритета
Таблица ниже описывает временные (TEMP) переменные для OB ошибок класса приоритета. Имена переменных являются заданными по умолчанию именами OB85.
Переменная | Тип | Характеристика |
---|---|---|
OB85_EV_CLASS | BYTE | Класс события и идентификаторы: B#16#35 B#16#38 (только с кодами ошибок B#16#B3 и B#16#B4) B#16#39 (только с кодами ошибок B#16#B1 и B#16#B2) |
OB85_FLT_ID | BYTE | Код ошибки (возможные значения: B#16#A1, B#16#A2, B#16#A3, B#16#B1, B#16#B2, B#16#B3, B#16#B4) |
OB85_PRIORITY | BYTE | Класс приоритета: 26 (значение по умолчанию для режима RUN) или 28 (режим STARTUP) В резервном CPU H-системы в режиме LINK-UP, STARTUP или UPDATE: Биты с 0 по 2: Номер стойки Бит 3: 0= резервный CPU, 1=основной CPU Биты с 4 по 7: 1111 |
OB85_OB_NUMBR | BYTE | Номер OB (85) |
OB85_RESERVED_1 | BYTE | Резерв |
OB85_RESERVED_2 | BYTE | Резерв |
OB85_RESERVED_3 | INT | Резерв |
OB85_ERR_EV_CLASS | BYTE | Класс события, вызвавшего ошибку |
OB85_ERR_EV_NUM | BYTE | Номер события, вызвавшего ошибку |
OB85_OB_PRIOR | BYTE | Класс приоритета OB, который был активен, когда произошла ошибка |
OB85_OB_NUM | BYTE | Номер OB, который был активен, когда произошла ошибка |
OB85_DATE_TIME | DATE_AND_TIME | Дата и время дня, когда вызывался OB |
Если хотите программировать OB85 в зависимости от возможных кодов ошибок, то рекомендую организовать локальные переменные следующим образом:
Переменная | Тип |
---|---|
OB85_EV_CLASS | BYTE |
OB85_FLT_ID | BYTE |
OB85_PRIORITY | BYTE |
OB85_OB_NUMBR | BYTE |
OB85_DKZ23 | BYTE |
OB85_RESERVED_2 | BYTE |
OB85_Z1 | WORD |
OB85_Z23 | DWORD |
OB85_DATE_TIME | DATE_AND_TIME |
Переменные, изменяемые по сравнению со значением по умолчанию, имеют в зависимости от кода ошибки следующее значение:
Код ошибки | |
B#16#A1 B#16#A2 OB85_Z1 OB85_Z23 |
В результате Вашей конфигурации, созданной с помощью STEP 7, Ваша программа или операционная система создает стартовое событие для OB, который не загружен в CPU. В результате Вашей конфигурации, созданной с помощью STEP 7, Ваша программа или операционная система создает стартовое событие для OB, который не загружен в CPU. Соответствующая локальная переменная запрошенного OB, которая определяется OB85_Z23. старшее слово: Класс и номер события, вызывающего вызов OB. младшее слово: Программный уровень и OB, активный во время ошибки. |
B#16#A3OB85_Z1 OB85_Z23 |
Ошибка при обращении операционной системы к модулю. Идентификатор ошибки операционной системы. старший байт:
старшее слово: Номер блока младшее слово: Относительный адрес команды MC7, вызывающей ошибку. Тип блока может быть взят из OB85_DKZ23 (B#16#88: OB, B#16#8C: FC, B#16#8E: FB, B#16#8A: DB). |
B#16#B1 B#16#B2 OB85_Z1 OB85_Z23 |
Ошибка доступа к входам/выходам во время обновления всего образа процесса на входах. Ошибка доступа к входам/выходам во время обновления всего образа процесса на выходах. Зарезервировано для внутреннего использования CPU. байт 0: Номер раздела образа процесса. байты 2,3: Номер байта входов/выходов, вызвавшего ошибку доступа к входам/выходам. |
Вы можете получить эти коды ошибки B#16#B1 и B#16#B2, если сконфигурировали повторную сигнализацию ошибок доступа к входам/выходам для обновления таблицы образа процесса системой. | |
B#16B3 B#16B4 OB85_Z1 OB85_Z23 |
Ошибка доступа к входам/выходам при обновлении входной таблицы образа процесса (появление/уход). Ошибка доступа к входам/выходам при передаче выходной таблицы образа процесса модулям вывода (появление/уход). байт 0: Номер раздела образа процесса. байты 2,3: Номер байта входов/выходов, вызвавшего ошибку доступа к входам/выходам. |
Вы получаете коды ошибки B#16#B3 и B#16#B4, если сконфигурировали сигнализацию ошибок доступа к входам/выходам при входе и выходе из состояния для обновления таблицы образа процесса системой. |
<-- Предыдущая статья | Следующая статья --> |