PLC, HMI, SCADA, INVERTERS, GSD PROFIBUS,
GSDML PROFINET, EDS CanOpen, INDUSTRIAL AUTOMATION

Step7 пример проекта Dp_diag
[ Скачать с сервера (22.2 Kb) ]09.02.2026, 21:49

Функция определения связи со станцией ЕТ200М 
Необходимо указать  входной параметр - диагностический адрес станций в 16 формате (смотри в HW Config, на выходе привязать к биту стыковки, а в дальнейшем бит стыковки используем по разумению (ну там для транспаранта, или в логике какой нибудь например)

У станции в HW config два диагностических адреса, возьмем тот который принадлежит самой станции в целом так же внутри есть процедура активации DP slave при обнаружении связи с ним (к вопросу обновления таблицы выходов станции)


Блок для тестинья связи DP слэйв-модуля (станции) с ЦПУ-мастером.
Для этого заюзаем SFC13, которая позволит нам читать диагностические данные slave-модуля, возвращаемые в переменной RECORD. В хелпе (см. Бергера) написано, что минимальная область памяти, куда пишется диагностическая инфа - 6 байт (максимальная - 244). Не верь этому. Для ЕТ-хи минимум 10 байт (подобрано 
опытным путем).
SFC13 (DPNRM_DG) возвращает диагностическую инфу в переменной RECORD, которую 
нам надо перегнать в соответствующую область памяти. Узнать из той инфы можно много, но нас интересует только линк. Линк отражается в 0-вом бите младшего байта диагностической инфы. Если бит установлен, то связь потеряна. Если бит в нуле - то все Ок. На каждую DP-станцию - свой вызов SFC13, которая узнает, какую станцию ей мониторить по адресу, передаваемому в LADDR.

 

Категория: SIEMENS | Добавил: gt7600
Просмотров: 25 | Загрузок: 4 | Рейтинг: 0.0/0
Всего комментариев: 0
avatar