S7-PDIAG: вариант для формирования аварийных сообщений для HMI

По просьбе наших посетителей, данный материал перенесен с сайта plc4good.org.ua, в связи с полной его потерей. Всё возражения принимаются через форму обратной связи.

plc4good.org.ua/view_post.php?id=189

Доброго всем времени суток. Может быть кто-то уже знаком, а кто-то просто слышал, а кто-то вообще ничего об этом не знает, но всё же – предлагаю рассмотреть ещё один вариант для формирования аварийных сообщений для HMI.

Речь пойдёт о S7-PDIAG.

Итак, начнем. Конфигурация оборудования для проекта-примера

S7-PDIAG

Наша цель пройтись по данным пунктам

S7-PDIAG

Создадим FB10 с таким содержимым

S7-PDIAG

Поставим курсор на выход Q1.0 после этого вызовем меню

S7-PDIAG

После чего, в появившемся окне выберем шаблон ‘S7-PDIAG Address Monitoring’ и нажмём кнопку New. В появившемся окне необходимо указать параметры и текст сообщения

S7-PDIAG

Пройдёмся немного по данному окну.

Initial diagnostic address – необходимо указать область для отслеживания (монито-ринга)

В облаcти ‘Установки мониторинга /Monitoring Definition’ необходимо установить требуемые Вам параметры: какой уровень сигнала Вы будете отслеживать (‘0’, ‘1’ или же передний/задний фронт), время задержки (можете ввести в миллисекундах, в формате S7, или указать область, где хранится время задержки). Поля Monitoring Status & Acknowledgment status можно использовать для того, чтобы при срабатывании сигнала взвести какой-либо бит (I, Q, M, DB) и для квитации данного события.

В области Message нас интересует только текст сообщения. Хотя мы можем указать область, в которой будет храниться наше сообщение (через Symbol name), а также скон-фигурировать сообщение отдельно если мы будет использовать блок alarm_s. Если уста-новить флажок Acquire assoc. Value, то в момент ошибки будет взято значение сигнала, который отслеживается. Так же мы можем указать другое значение через поле Associated value.

Вызовем блок в ОВ1

S7-PDIAG

После чего закройте редактор и выполните компиляцию программы

После компиляции у Вас в проекте появятся блоки необходимые PDIAG

S7-PDIAG

В ОВ1 добавьте ещё один сегмент и вызовете FB44

S7-PDIAG

Сохраните и закройте ОВ1.

После этого на необходимо сконфигурировать сам PDIAG.

Выбрав Ваши блоки в редакторе, через меню

S7-PDIAG

После чего, в открывшемся редакторе, Вам необходимо выполнить компиляцию Prosecc Diagnostics-&gt,Compile , появится окно настроек

S7-PDIAG

Нажимаем ОК.

Как проверить нашу программу?

Поскольку ‘живого’ ПЛК не было под рукой использовался PLCSIM. Итак, запускаем эмулятор, загружаем в него нашу программу. После чего переходим в режим Online

S7-PDIAG

В эмуляторе добавим входной байт с адресом ‘0’, откроем сообщения ПЛК

S7-PDIAG

И установим следующий флажок в появившемся окне

S7-PDIAG

Теперь, если мы установим все входные биты с 0 по 3, мы увидим сообщение об ошибке

S7-PDIAG

Для отображения сообщения на панели необходимо на каком-либо экране добавить элемент Alarm_view и установить флажки возле классов Diagnostic Events & S7 Alarm

S7-PDIAG

Вот, вкратце, и все. Если информация была кому-то полезна и S7-PDIAG необходимо кому-то в работе уже сейчас, но есть вопросы – пишите.

Комментарии к материалу

Добавлен: den_vish Дата: 2013-07-31

‘После чего, в появившемся окне выберем шаблон ‘S7-PDIAG Address Monitoring”
дошел до этого пункта и увидел что кнопка – новый – неактивна, в чем подвох?

Добавлен: Гриценко Андрей Дата: 2013-07-31

Подвох в том, что у Вас неустановлен S7-PDIAG. Данный пакет необходимо ставить дополнительно. Лиценция приобретается у компании Siemens за отдельную плату.

Добавлен: kybernetic Дата: 2013-08-06

Хорошая статья! Давайте еще что-нибудь интересное.

Добавлен: Гриценко Андрей Дата: 2013-08-06

kybernetic, пожелание ‘что-нибудь’ расплывчатое 🙂 Обозначьте тему – будет статья.

Добавлен: Nikolay Дата: 2013-08-25

В чем преимущество этого способа перед вызовом функций Alarm_S

Добавлен: ignacio Дата: 2013-09-11

Хочу сказать спасибо автору сайта. Очень полезный ресурс 🙂

Добавлен: san Дата: 2013-09-21

Доступен ли даигностический буфер S7 средствам SCADA/HMI?

Добавлен: Гриценко Андрей Дата: 2013-10-09

Для Nikolay – если Вам надо выводить сообщения о состоянии 300 сигналов, сколько раз Вам надо вызвать Alarm_S? Как по мне, то PDIAG удобней….

Добавлен: Sergey Дата: 2014-03-05

Подскажите, а как вытащить нужный бит в аналайзер, зная текст сообщения в спдиаг? Спасибо.

Добавлен: Гриценко Андрей Дата: 2014-03-05

В какой аналайзер? Если Вы о сообщениях CPU, то у Вас там будут все сообщения.

Добавлен: Гриценко Андрей Дата: 2014-03-05

Но, вообще, Вы можете воспользоваться пунктом меню File-&gt,Export… PDIAG и сделать xml файл, где найти текст сообщения и сигнал, для данного сообщения.

Добавлен: Old Bell Дата: 2015-05-10

Для отображения сообщения на панели необходимо на каком-либо экране добавить элемент Alarm_view и установить флажки возле классов Diagnostic Events & S7 Alarm
————
подробнее может кто разъяснить?
Не пойму из данного, как привязать событие контроллера к HMI, нужно же адрес контроллера по которому результат отслеживания события находится?

Добавлен: Old Bell Дата: 2015-05-10

задать

0 0 голоса

Оцените статью!

guest
0 Комментарий
Межтекстовые Отзывы
Посмотреть все комментарии