PDA

Просмотр полной версии : Modbus - AC4 -> МУ110-8К структура пакета



Фарик
31.05.2015, 13:14
Добрый день господа! Пишу на delphi оболочку управления неким устройством которое подключено к ОВЕН МУ110-8К.
В системе так же имеется Autonics TM-4. С ним общение по протоколу Modbus получается без проблем.
Как я понял для себя - структура пакета должна быть:

AA FF MMMM dddd xxxx - где

AA - адрес устройства
FF - функция (03,04, 06, 15,16)
MMMM - адрес регистра
dddd - записываемые/читающие данные
xxxx - crc пакета.

В таком формате с Аутониксом получается передавать данные, а вот с ОВеном нет... Мало информации по работе с протоколом modbus, нужны примеры...
Вообщем написал небольшую прогу которая шлет в порт и читает байты. Прямое общение. Но какой только пакет не пытался построить для Овена - молчек полный....

Поясните - в чем особенность у Овена МУ110 работы по протоколу modbus?

P.S Autonics свободно отвечает на пакет в формате 010303E80001CRC, где 01 - адрес устройства, 03-функция чтения, 03E8 адрес регистра значений температуры...

capzap
31.05.2015, 13:52
ну и, а где то что Вы посылаете на овеновский модуль?

Фарик
31.05.2015, 18:14
Пакеты уже всякие пробовал посылать, например 530300000000crc хочу прочитать состояние 1-го порта...

Фарик
31.05.2015, 18:16
53 это адрес устройства которое отображается в программе Конфигуратор МУ110.. опять же то ли это в байтах то ли в нашей системе исчисления... пробовал и 35 (53 to hex = 35)

Фарик
31.05.2015, 18:26
Самое интересное, что контроллер вообще не отвечает.. даж ошибку.. как будто мимо него пакеты топают... Конфигуратор МУ110 работает с ним четко. Но по ОВЕН протоколу...

ASo
31.05.2015, 19:16
1. Для модуля надо указывать протокол МОДБАС в конфигураторе.
2. После адреса и функции в запросе идет число запрашиваемых регистров. У Вас вообще запрос не правильный.

Фарик
01.06.2015, 06:27
1. Для модуля надо указывать протокол МОДБАС в конфигураторе.

Любопытное дело... Открываем руководство по Конфигуратор М110, страница 3, цитата:"Программа "Конфигуратор М110" работает по протоколу ОВЕН", тогда получается, если переключить настройки устройства - прога с ним общаться перестанет? Второй момент, открываем руководство модуля - МУ110-8К, страница 6, цитата: "МУ110" работает в сети RS-485 по протоколам ОВЕН, ModBus-RTU, ModBus-ASCII, DCON. Тип протокола определяется прибором автоматически" - вопрос, а как автоматически тогда?


2. После адреса и функции в запросе идет число запрашиваемых регистров. У Вас вообще запрос не правильный.

Вот тут хотелось бы по подробней, я уже всяко эту документацию перелистал, по модбас инструкция минимальная...
Цитата: "Управление каждым ВЭ в отдельности осуществляется записью скважности ШИМ в регистры,
соответствующие каждому из дискретных ВЭ. Запись осуществляется командой 16 (0x10), чтение – командами 3 (0x03) или 4 (0x04).
Список регистров протокола ModBus приведен в Приложении В (таблицаВ.4)" Дальше идет табличка маленькая,

№бита |15 8 | 7 0|
значение| всегда равны 0 | состояние выходов с 8 до 1|

Вот тут понимаю, что мне нужны состояния выходов с 8 по 1, но какой формат записи пакета не понятен...
Таблица В.4 -Регистры протокола ModBus
18414

Как я понял эту таблицу - Адрес регистра это и есть адрес после функции, затем значение этого адреса думаю что должно быть 00, т.к читаем а не пишем... вот тут и загвоздка вся.... Обращаюсь к Вам за помощью ))

capzap
01.06.2015, 06:39
наберите в гугле: википедия модбас и Вам откроется тайна протокола, какое минимальное количество регистров нужно прочитать чтоб получить ответ от слейва,там приведен список действий слейвов в случае некорректного запроса. адрес устройства тоже желательно выбрать поменьше для начала,чтоб ге создавать себе лишних вопросов в какой системе исчисления указывать. приборы которые автоматом не определяют протокол,задаются в конфигурации и вступают всилу после перезагрузки, кстати кроме автомата и ручного,есть еще и промежуточная группа приборов,где изменения активируются командой

ASo
01.06.2015, 07:13
Как я понял эту таблицу - Адрес регистра это и есть адрес после функции, затем значение этого адреса думаю что должно быть 00, т.к читаем а не пишем... вот тут и загвоздка вся.... Обращаюсь к Вам за помощью ))Уважаемый, учитесь решать проблемы самостоятельно.
Даю последнюю подсказку. Скачайте MasterOPC сервер на 32 тэга - он бесплатный. Добейтесь обмена. Посмотрите запросы-ответы - они выводятся в соответствующее окно.

Фарик
01.06.2015, 08:51
1. Сначала добиваюсь соединения "родным" софтом с "родным" девайсом. В нашем случае это к Конфигуратор МВ (M110_v11035.exe).
2. Если связи добились - запускаете компортмонитор. Записываете лог пакетов обмена + конфигурируете начально параметры связи с устройством.
3. Добиваетесь в работе своего мастера посылки аналогичных логу запросов.

Работает способ - 100%

Сниффер Com порта у меня уже есть )) помониторил, но обмен идет по протоколу ОВЕН межу Конфигуратором М110 и девайсом...
Таким образом научился с Аутониксом работать ))


наберите в гугле: википедия модбас гугл - это первое что пришло мне в голову))) Теория есть, практики очень мало...


Даю последнюю подсказку. Скачайте MasterOPC сервер на 32 тэга - он бесплатный. Добейтесь обмена. Посмотрите запросы-ответы - они выводятся в соответствующее окно.

Спасибо за подсказку, ща поглядим что за чудесное ПО )))

Фарик
01.06.2015, 09:27
это действительно чудесное ПО!!! С ним можно любое устройство тестить))) СПАСИБО огромное!!! Будем изучать активно)