Диагностика
Программирование с помощью STEP 7 версии 5.0
C79000-G7076-C562-02
21-21
21.8.3 Передача ваших собственных диагностических сообщений
Вы можете также расширить стандартную диагностику системы SIMATIC S7,
используя системную функцию SFC 52 WRUSMSG для того, чтобы:
• Вводить вашу собственную диагностическую информацию в
диагностический буфер (например, информацию о выполнении
программы пользователя).
• Передавать определяемые пользователем диагностические сообщения
зарегистрированным станциям (контрольные устройства типа PG, OP или
TD).
Диагностические события, определяемые пользователем
Диагностические события подразделяются на классы событий с 1 по F.
Диагностические события, определяемые пользователем, принадлежат к
событиям классов с 8 по B. Их можно разбить на две группы следующим
образом:
• Классы событий 8 и 9 включают сообщения с фиксированным номером и
предопределенным текстом, которые Вы можете вызывать по номеру.
• Классы событий A и B включают сообщения, которым Вы можете
присваивать номер (с A000 по A0FF, с B000 по B0FF) и текст по вашему
собственному выбору.
Передача диагностических сообщений станциям
Кроме создания определяемой пользователем записи в диагностический
буфер, Вы можете также посылать ваши собственные, определяемые
пользователем диагностические сообщения зарегистрированным
устройствам отображения, используя SFC52 WRUSMSG. Когда SFC52
вызывается с SEND = 1, диагностическое сообщение з аписывается в буфер
передачи и автоматически передается станции или станциям,
зарегистрированным в CPU.
Если передавать сообщения невозможно (например, потому что не
зарегистрировано никакое устройство отображения или потому что буфер
передачи заполнен), то определяемое пользователем диагностическое
событие все же вводится в диагностический буфер.
Генерирование сообщения с подтверждением
Если Вы подтверждаете определяемое пользователем событие диагностики
и хотите записать подтверждение, то действуйте следующим образом:
• Когда событие входит в состояние события, записывайте 1 в переменную
типа BOOL, а когда событие покидает состояние события, записывайте в
эту переменную 0.
• Тогда вы сможете контролировать эту переменную, используя SFB33
ALARM.