Коммуникации
134
TWD USE 10 AE
Шаг 4: Напишите приложение:
Прикладная программа написана используя TwidoSoft для master и slave. Для
slave, мы просто записываем в некоторые слова памяти набор известных
значений. Для master, таблица слов для инструкции EXCHx инициализируется
для чтения 4 слов из slave по Modbus адресу 2, начиная с положения %MW0.
Перед исполнением инструкции EXCH2, приложение проверяет
коммуникационный бит, связанный с %MSG2. В конце, статус ошибки %MSG2
считывается и хранится в первом выходном бите локальных базовых вх/вых
контроллера. Также можно добавить проверку ошибок при помощи %SW64.
Шаг 5: Инициализировать Редактор анимационных таблиц на master:
После загрузки и настройки каждого контроллера на запуск, откройте
анимационную таблицу на master. Проверьте в секции отклика таблицы, что
код отклика = 3 и что было прочитано верное количество байтов. Также в этом
примере обратите внимание, что слова, считанные с slave (начиная с %MW7)
правильно выровнены по границам слов в master.
Приложение: Обратите внимание, что смещение RX установлено на %MW1
Modbus master. Смещение на 3 добавит байт (значение = 0) на третью
позицию таблицы в области приема. Это выравнивает слова в master так, что
они попадают в границы слов. Без этого смещения каждое слово данных
разбивалось бы между двумя словами в блоке обмена. Это смещение
используется для удобства.
[%MW0 := 16#6566 ]
[%MW1 := 16#6768 ]
[%MW2 := 16#6970 ]
[%MW3 := 16#7172 ]
END
LD 1
[%MW0 := 16#0106 ]
[%MW1 := 16#0300 ]
[%MW2 := 16#0203 ]
[%MW3 := 16#0000 ]
[%MW4 := 16#0004 ]
LD 1
AND %MSG2.D
[EXCH2 %MW0:11]
LD %MSG2.E
ST %Q0.0
END
LD 1
Address Current Retained Format
1 %MW5 0203 0000 Hexadecimal
2 %MW6 0008 0000 Hexadecimal
3 %MW7 6566 0000 Hexadecimal
4 %MW8 6768 0000 Hexadecimal
5 %MW9 6970 0000 Hexadecimal
6 %MW10 7172 0000 Hexadecimal