Урок 13
Контроль присутствия устройств в сети PROFINET или PROFIBUS для S7-1200 и S7-1500
Задание
Написать программу ПЛК S7-1500 для контроля наличия ведомых устройств в сети PROFINET.
Решение
Решение подходит как для сети PROFINET, так и для сети PROFIBUS (и для обеих серий ПЛК SIMATIC: S7-1200 и S7-1500).
-
Создаём блок данных DB_Device_State со следующими параметрами:
-
Создаём функцию FC1 "Диагностика сети":
-
Вызываем эту функцию в блоке OB1:
269 – это аппаратный идентификатор сети PROFINET или PROFIBUS:
![Рис.2](jpg/tia/13_2.jpg)
4 – это режим работы инструкции DeviceStates – IO devices exist:
![Рис.3](jpg/tia/13_3.jpg)
В цепочке 1 вызываем инструкцию DeviceStates с параметрами, привязанными к блоку данных DB_Device_State.
В цепочке 2 прописываем реакцию на исчезновение устройства с номером 1 из сети PROFINET.
Если устройство с номером 1 (ATV630) есть в сети:
![Рис.6](jpg/tia/13_6.jpg)
то соответствующий бит в массиве mySTATE = TRUE:
![Рис.7](jpg/tia/13_7.jpg)
А если устройство пропало из сети, то этот бит = FALSE:
![Рис.8](jpg/tia/13_8.jpg)
Номер устройства берём здесь:
![Рис.9](jpg/tia/13_9.jpg)