Для этого можно использовать функциональный блок 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.
Вам нужно обратить внимание на описание работы этого функционального блока по протоколу 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.
Опубліковано для:Schneider Electric Україна



