Версия для печати

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

Дата: 2013-07-30

Добавлено: Гриценко А.

Тема: Step7



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



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



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



S7-PDIAG



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



S7-PDIAG



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



S7-PDIAG



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



S7-PDIAG



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



S7-PDIAG



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



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



В области "Установки мониторинга /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->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 необходимо кому-то в работе уже сейчас, но есть вопросы - пишите.





Просмотров: 8726

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

Добавлен: 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->Export... PDIAG и сделать xml файл, где найти текст сообщения и сигнал, для данного сообщения.

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

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

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

задать

Добавить комментарий

Ваше имя:

Текст комментария (4000 max):

Введите сумму с картинки: