Технические FAQs

Задать Вопрос

Как в коммуникационных модулях 140NOE771x1 линейки Quantum диагностировать обрыв Ethernet кабеля?

Для этого можно использовать функциональный блок MBP_MSTR  с кодом функции 3 - "Get Local Statistics", которая работает как по протоколу  TCP/IP Ethernet,   так и Modbus Plus   и  SY/MAX Ethernet.
Вам нужно обратить внимание на описание работы этого функционального блока по протоколу TCP/IP Ethernet .

Бит 15 слова №3 массива статистики и будет отвечать за состояние кабеля соединения. 0 - нет соединения, 1 - кабель подключен и соединение установлено.
Применение структур для блока  MBP_MSTR  не обосновано, достаточно создать  обычные массивы типа INT и WORD.
2. Размерности создаваемых массивов:
Массив CONTROL должен быть ARRAY[1...9] of INT
Массив DATABUF должен быть ARRAY[0...37] of WORD
- Код функции (3)  записывается в первое слово массива управления (CONTROL).
3. Все массивы обязательно должны быть локализованы, т.е. им должны быть присвоены начальные адреса в области %MW.
4. Задание значений в словах массива CONTROL ( слова [1], [3], [4] и [5])  , лучше всего производить не в анимационной таблице, а сразу в таблице переменных или в отдельной программной секции.
Тем самым Вы будете уверены, что они (значения)  у Вас постоянно заданы, и не обнулятся при очередной компиляции проекта.
5. Напоминаю, что в слове 3 массива управления (CONTROL) Вы должны задать Количество считываемых регистров   из таблицы локальной статистики ( до 38 для данной функции),
- в слове 4 начальный адрес для считывания в диапазоне от 0 до 37.
Размерность массива DATABUF должна быть не меньше числа записанного в слово 3 массива управления.
6. И наконец слово 5. В нем записывается номер слота в котором установлен коммуникационный модуль NOE.
Но ВНИМАТЕЛЬНО читайте документацию. Это число записывается в СТАРШИЙ байт (это  MSB) слова 5. Поэтому для 6 слота должно получиться 2#0000 0110 0000 0000 или что тоже самое 16#0600.
7. Запуск блока  будет происходить  по сигналу Enable =1,
Наличие логической 1 на выходе SUCCESS будет свидетельствовать о нормальной (без ошибок)  отработке блока.
 
Далее считываем слово 3 из массива DATABUF и анализируем бит 15.
Если он в единице - есть подключение кабеля Ethernet к порту модуля NOE.
Если в нуле - подключения нет или обрыв кабеля.
Количество одновременно работающих функций в программе пользователя ( в одном скане контроллера) не должно превышать 4.
Вы нашли ответ на свой вопрос?
Как мы можем улучшить информацию?