Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
STEP7_V53_Programming_r.pdf
Скачиваний:
2
Добавлен:
29.05.2025
Размер:
5.18 Mб
Скачать

Диагностика

PG в Industrial Ethernet

CP 443-5DX02, начиная с V3.0

Разрешена опция шлюза "Запись данных"

 

 

 

 

 

 

 

 

 

 

 

 

S7-400

 

 

CP

 

 

CP

 

 

CPU

 

 

443-1

 

 

443-5

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Ind. Ethernet

PROFIBUS DP

DP/PA Link

(IM 157+ соединитель DP/PA)

PG

PROFIBUS-PA

 

 

 

Полевое

 

устройство PA

 

 

 

 

23.6Диагностика в состоянии STOP

23.6.1Основная последовательность действий для определения причины перехода в STOP

Чтобы определить, почему CPU перешел в режим "STOP", действуйте следующим образом:

1.Выделите CPU, перешедший в STOP.

2.Выберите команду меню PLC > Module Information [ПЛК >

Информация о модуле].

3.Выберите закладку "Diagnostic Buffer [Диагностический буфер]".

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

Если встречается ошибка программирования:

1.Например, входное сообщение "STOP because programming error OB not loaded [STOP, так как OB обработки ошибок программирования не загружен]" означает, что CPU обнаружил ошибку в программе и затем попытался запустить (несуществующий) OB, чтобы обработать ошибку программирования. Предыдущие записи указывают на фактическую ошибку программирования.

2.Выберите сообщение, относящееся к ошибке программирования

3.Щелкните по кнопке "Open Block [Открыть блок]".

4.Выберите закладку "Stacks [Стеки]".

Программирование с помощью STEP 7 v5.3

23-13

A5E00261405-01

Диагностика

23.6.2Содержимое стеков в состоянии STOP

Оценивая содержимое диагностического буфера и стеков, Вы можете определить причину сбоя в обработке программы пользователя.

Например, если CPU перешел в STOP вследствие ошибки программирования или команды STOP, то закладка "Stacks [Стеки]" в информации о модулях отображает стек блоков. Вы можете отображать содержимое других стеков, используя кнопки ”I Stack [Стек прерываний]", ”L Stack [Локальный стек]" и ”Nesting Stack [Стек вложений]". Содержимое стека дает Вам информацию о том, какая команда и в каком блоке привела к переходу CPU в STOP.

Содержимое B-стека

B-стек, или стек блоков, перечисляет все блоки, которые вызывались перед переключением в режим STOP и не были обработаны полностью.

Содержимое I-стека

Когда Вы щелкаете по кнопке ”I Stack", отображаются данные в точке прерывания. I-стек, или стек прерываний, содержит данные или состояния, которые действовали в момент прерывания, например:

Содержимое аккумуляторов и регистров

Открытые блоки данных и их размер

Содержимое слова состояния

Класс приоритета (уровень вложения)

Прерванный блок

Блок, в котором продолжается обработка программы после прерывания.

Содержимое L-стека

Для каждого блока, указанного в B-стеке, Вы можете отобразить соответствующие локальные данные, выбирая этот блок и щелкая на кнопке

”L Stack".

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

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

Содержимое стека вложений

Когда Вы щелкаете на кнопке ”Nesting Stack [Стек вложений]", отображается содержимое стека вложений в точке прерывания.

Стек вложений – это область памяти, которую используют логические операции A(, AN(, O(, ON(, X( и XN( .

Эта кнопка активна только тогда, когда в момент прерывания оставались открытыми скобочные выражения.

23-14

Программирование с помощью STEP 7 v5.3

A5E00261405-01

Диагностика

23.7Проверка времен цикла сканирования во избежание временных ошибок

23.7.1Проверка времен цикла сканирования во избежание временных ошибок

Закладка "Scan Cycle Time [Время цикла сканирования]" в информации о модулях дает сведения о временах цикла сканирования программы пользователя.

Если продолжительность самого длинного цикла близка к сконфигурированному максимальному времени цикла, то имеется опасность того, что флуктуации времени цикла могут вызвать временную ошибку. Этого можно избежать, если Вы увеличите максимальное время цикла (контрольное время) для программы пользователя.

Если длительность цикла меньше, чем сконфигурированное минимальное время цикла сканирования, то CPU/FM автоматически продлевает цикл до сконфигурированного минимального времени цикла сканирования. В этом случае CPU в течение продленного времени обрабатывается фоновый OB (OB90) (если он был загружен).

Настройка времени цикла сканирования

Вы можете устанавливать максимальное и минимальное время цикла, когда конфигурируете аппаратные средства. Для этого в представлении конфигурационной таблицы в режиме offline дважды щелкните на CPU/FM, чтобы определить его характеристики. Вы можете вводить соответствующие значения в закладке ”Cycle/Clock Memory [Цикл/Тактовые меркеры]".

Программирование с помощью STEP 7 v5.3

23-15

A5E00261405-01

Диагностика

 

23.8

Поток диагностической информации

23.8.1

Поток диагностической информации

 

Следующий рисунок показывает поток диагностической информации в

 

SIMATIC S7.

 

 

CPU

Модули

 

Диагностическая функция CPU

Диагностическая

 

функция модуля

 

обнаруживает системную ошибку

 

обнаруживает

 

 

ошибку и

 

Диагностическая функция CPU

генерирует

 

обнаруживает ошибку в

диагностическое

 

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

прерывание

 

 

(OB 82).

 

Список состояний

Диагностическое

 

прерывание

 

системы

 

 

 

Диагностичес-

 

 

кий буфер

 

 

SFC

STEP 7

 

 

 

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

 

Отображение диагностической информации

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

Они предоставляют информацию о следующем:

Где и когда появилась ошибка

Тип диагностического события, к которому относится запись (определяемое пользователем диагностическое событие, синхронная/ асинхронная ошибка, смена режима работы).

Генерирование групповых сообщений системы управления процессом

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

23-16

Программирование с помощью STEP 7 v5.3

A5E00261405-01

Диагностика

Вы указали, чтобы сообщения системы управления процессом генерировались в STEP 7.

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

Групповое сообщение системы управления процессом генерируется только тогда, когда в текущий момент нет группового сообщения системы управления процессом соответствующего класса (имеется семь классов).

На класс может генерироваться одно групповое сообщение управления процессом.

23.8.2Список состояний системы (SSL)

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

Данные из списка состояний системы Вы можете только считывать, но не изменять. Это виртуальный список, создаваемый только по запросу.

Информацию, которую Вы можете отображать, используя список состояний системы, можно подразделить на четыре области.

Список состояний системы

Системные данные

Диагностические Диагностические данные состоя- данные модулей ния в CPU

Диагностический буфер

Считывание списка состояний системы

Есть два следующих способа считывания информации из списка состояний системы:

Неявный, через команды меню STEP 7 из устройства программирования (например, конфигурация памяти, статические данные CPU, диагностический буфер, отображение состояния).

Программирование с помощью STEP 7 v5.3

23-17

A5E00261405-01

Диагностика

Явный, через системную функцию SFC 51 RDSYSST в программе пользователя посредством ввода номера требуемого частного списка состояний системы (см. Help on Blocks [Справка о блоках]).

Системные данные из списка состояний системы

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

Тема

Информация

Идентификация модулей

Заказной номер, идентификатор типа и версия

 

модуля

Характеристики CPU

Система времени, характеристики системы

 

(например, многопроцессорная обработка) и

 

описание языка CPU

Области памяти

Конфигурация памяти модуля (объем рабочей

 

памяти)

Системные области

Системная память модуля (например, количество

 

меркеров, таймеров, счетчиков, тип памяти)

Типы блоков

Какие блоки (OB, DB, SDB, FC, FB) существуют в

 

модуле, максимальное число блоков одного типа и

 

максимальный размер блока каждого типа

Назначение прерываний и

Назначение прерываний/ошибок для OB

ошибок

 

Состояние прерывания

Текущее состояние обработки прерываний/

 

сгенерированных прерываний

Состояние классов приоритета

Какой блок обрабатывается, какой класс

 

приоритета заблокирован благодаря настройке

 

параметров

Режим работы и переключение

Какие режимы работы возможны, последнее

режима

переключение режима работы, текущий режим

 

работы

Диагностические данные состояния в CPU

Диагностические данные состояния описывают текущее состояние компонентов, контролируемых диагностикой системы. Следующая таблица показывает темы, по которым может отображаться информация (частные списки состояния системы):

Тема

Информация

Данные состояния связи

Все коммуникационные функции, установленные в системе в

 

текущий момент времени

Диагностика модулей

Модули с диагностическими возможностями, зарегистрированные

 

в CPU

Список стартовой

Стартовая информация организационных блоков CPU

информации OB

 

Список событий запуска

События запуска и классы приоритета OB

Информация о состоянии

Информация о состоянии всех назначенных модулей, которые

модулей

вставлены, неисправны или генерируют аппаратные прерывания

23-18

Программирование с помощью STEP 7 v5.3

A5E00261405-01

Диагностика

Диагностические данные модулей

Кроме CPU, имеются также другие модули с диагностическими возможностями (СМ, CP, FM), данные которых вводятся в список состояний системы. Следующая таблица показывает темы, по которым может отображаться информация (частный список состояний системы):

Тема

Информация

Диагностическая информация модуля

Начальный адрес модуля, внутренние /внешние отказы,

 

отказы каналов, ошибки параметров (4 байта)

Диагностические данные модуля

Все диагностические данные отдельного модуля

23.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.

Если передавать сообщения невозможно (например, потому что нет зарегистрированных устройств отображения или потому что буфер передачи заполнен), то определяемое пользователем диагностическое событие все же вводится в диагностический буфер.

Генерирование сообщения с подтверждением

Если Вы подтверждаете определяемое пользователем событие диагностики и хотите записать подтверждение, то действуйте следующим образом:

Программирование с помощью STEP 7 v5.3

23-19

A5E00261405-01

Диагностика

Когда событие входит в состояние, записывайте 1 в переменную типа BOOL, а когда событие покидает состояние, записывайте в эту переменную 0.

Тогда Вы сможете контролировать эту переменную, используя SFB33 ALARM.

23.8.4Диагностические функции

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

Диагностические события

В качестве диагностических событий отображаются, например, следующие входные сообщения:

внутренние и внешние неисправности в модуле

системные ошибки в CPU

переключения режимов работы (например, из RUN в STOP)

ошибки в программе пользователя

вставка/снятие модулей

сообщения пользователя, вводимые посредством системной функции

SFC52

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

Сбор диагностических данных

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

(SM, CP и FM).

Индикация неисправностей

Внутренние и внешние неисправности модулей отображаются на лицевых панелях модуля. Светодиоды и их анализ описаны в руководствах по аппаратным средствам S7. В случае S7-300 внутренние и внешние неисправности отображаются совместно как групповая ошибка.

CPU распознает системные ошибки и ошибки в программе пользователе и вводит диагностические сообщения в список состояний системы и в диагностический буфер. Эти диагностические сообщения можно читать в программаторе.

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

23-20

Программирование с помощью STEP 7 v5.3

A5E00261405-01