PDA

Просмотр полной версии : Pеализация кода на ПЛК63 ModBUS ASCII



CheeryNick
03.04.2013, 20:40
Я конечно чайник в этом но хотел разобратся, что к чему. У меня есть ПЛК63 подключен к порту СОМ1 и АС4 видит его как СОМ3. Подключен также МВА8 и МВУ8. МВА8 и МВУ8 установлены следующие настройки скорость 115200 с адресом 32 МВУ8 с адресом 64. Специально разнес что б не было случайностей. ПЛК64 с адресом 1. С протоколом обмена ОВЕН разобрался, но охота разобратся до конца с МОДБАСОМ. У меня вопрос, как правильно организовать запрос по МБ что б получить правильный ответ. Есть описание, согласно которому формирую запрос [32|04|04|02|E7|07].
32 - адрес прибора в сети
04 - функция чтения
04 - адрес регистра
02 - число регистров
Е7, 07 CRC
И конечно в ответ тишина индикатор запросов молчит (в смыле не мигает), в чем грабли и где я наступил. Может у когото есть исходник как пример, что б понять как это все работает. Буду благодарен.

petera
03.04.2013, 21:00
Я конечно чайник в этом но хотел разобратся, что к чему. У меня есть ПЛК63 подключен к порту СОМ1 и АС4 видит его как СОМ3. Подключен также МВА8 и МВУ8. МВА8 и МВУ8 установлены следующие настройки скорость 115200 с адресом 32 МВУ8 с адресом 64. Специально разнес что б не было случайностей. ПЛК64 с адресом 1. С протоколом обмена ОВЕН разобрался, но охота разобратся до конца с МОДБАСОМ. У меня вопрос, как правильно организовать запрос по МБ что б получить правильный ответ. Есть описание, согласно которому формирую запрос [32|04|04|02|E7|07].
32 - адрес прибора в сети
04 - функция чтения
04 - адрес регистра
02 - число регистров
Е7, 07 CRC
И конечно в отЭ, вет тишина индикатор запросов молчит (в смыле не мигает), в чем грабли и где я наступил. Может у когото есть исходник как пример, что б понять как это все работает. Буду благодарен.
Команда Modbus: адрес ¦функция ¦ данные ¦ CRC, где
адрес -1 байт
функция -1 байт
данные
4 байта для функций чтения (0х01, 0х02, 0х03, 0х04) и записи одного значения (0х05 и 0х06)
адрес начального регистра -2 байта, сначала Hi затем Lo
количество регистров -2 байта, сначала Hi затем Lo
CRC -2 байта, сначала Lo затем Hi
Сравните с тем, что Вы написали

CheeryNick
03.04.2013, 21:20
Если можно по подробнее, я понял что я что то нахимичил если не затруднит то какой правильный будет запрос для получения данных с МВА* с адресом 32.

kgsh82
04.04.2013, 05:25
Пробовали читать спецификацию по Modbus? Ну или хотя бы статью в википедии...

Как вариант: скачать opc-сервер Lectus, настроить на работу с модулем, а потом подсмотреть лог

CheeryNick
06.04.2013, 19:46
Пробовал и читал. Я по человечески спросил может ли кто нибуть дать нормальный ответ если нет так нет:mad: В примерех легче вснго разобратся, я не очень пока силен в этом поэтому и спрашиваю.

Kostic77
06.04.2013, 22:06
адрес регистра двухбайтный должен быть.
например, команда чтения регистров
01 03 00 15 00 0b 15 c9
или прочитать 11 регистров с начальным адресом 0х15 из устройства с адресом 1

kgsh82
07.04.2013, 10:20
Пробовал и читал. Я по человечески спросил может ли кто нибуть дать нормальный ответ если нет так нет:mad: В примерех легче вснго разобратся, я не очень пока силен в этом поэтому и спрашиваю.

В википедии как раз с примером статья....

Вот ещё что...Мы тут подсказки даем по Modbus RTU, а нужен вроде как ASCII. Там почти всё так, только передаётся символами и в конце контрольная сумма другая.

lara197a
07.04.2013, 10:28
У ООО "Веспер автоматика" на сайте, в разделе документация-
Протокол управления преобразователями Е2-8300 по последовательной линии (MODBUS)
разжовано, дальше некуда.

ASo
07.04.2013, 15:03
А библиотеку МОДБАС не лучше использовать?

CheeryNick
29.04.2013, 09:47
Ясно! Реального примерера ни у кого нет!!!:mad: Только рекомедации.:confused:

kgsh82
29.04.2013, 13:55
А что конкретно непонятно?
Чтобы было непонятно всё - так не бывает
В данном случае лучше подключить модуль расширения к эвм через преобразователь и научится посылать правильные запросы

Валенок
29.04.2013, 16:32
Ясно! Реального примерера ни у кого нет!!!:mad: Только рекомедации.:confused:
А Вы серъёзно считаете что каждый раз когда нужно опрашивать - все создают руками какие-то последовательности байтов ?

А библиотеку МОДБАС не лучше использовать?