PDA

Просмотр полной версии : Как правильно делать modbus RTU в проекте?



SlavikP
06.06.2017, 02:50
Потребовалось для контроллера PLC323 подключить устройство по modbus rtu. Скорость 19200, 8n1, ничего особенного.
Как всегда - документация или молчит, или ка-кто все неявно описано.
Сделал тестовый проект, подключил драйвер модбас на порт, и все... пошли ошибки.
Что делать дальше - не понял. Прошу помощи сообщества, что я делаю не так?
Пробовал перегружать библиотеки, создавал проект с нуля дважды. Эффект наблюдается стабильно :(
Codesys 3.5 sp5 patch5., таргеты последние.

Евгений Кислов
06.06.2017, 07:14
Попробуйте выбрать для Modbus Master версию 3.5.0.0 (ПКМ на компонент - Обновить устройство). После этого выполнить команды Очистить все и Перекомпиляция из меню Компиляция.

capzap
06.06.2017, 07:33
http://ftp.owen.ru/index.html/CoDeSys3/11_Documentation/01_SPK/SPK_Modbus_v.1.0.pdf а что из этого документа не понятно конкретно?

SlavikP
06.06.2017, 09:25
Попробуйте выбрать для Modbus Master версию 3.5.0.0 (ПКМ на компонент - Обновить устройство). После этого выполнить команды Очистить все и Перекомпиляция из меню Компиляция.
Сделал. Остались предупреждения и какая-то неявная ошибка. С этим можно жить?

Евгений Кислов
06.06.2017, 09:30
Сделал. Остались предупреждения и какая-то неявная ошибка. С этим можно жить?

Насколько я помню, то да, проблем они не должны создавать.

SlavikP
06.06.2017, 09:50
http://ftp.owen.ru/index.html/CoDeSys3/11_Documentation/01_SPK/SPK_Modbus_v.1.0.pdf а что из этого документа не понятно конкретно?

Многое непонятно.
1. Этот документ про СПК. Или для ПЛК-323 он тоже годится? В документе об этом ни слова. В документации по контроллеру тоже.
2. Т.к. у меня не модуль OWEN, а посторонее изделие, то, как я понял шаблонный способ не годится. Я прав или нет?
3. При попытке использовать "Стандартные средства конфигурирования (Modbus RTU)" я получил указанную ошибку. Эти средства не рабочие?

Теперь пробую через библиотеку MODBUS.
Я могу быть уверен, что остаток от этого руководства рабочий?


Попробовал через библиотеку. Тоже не работает чтото...

capzap
06.06.2017, 10:11
Многое непонятно.
1. Этот документ про СПК. Или для ПЛК-323 он тоже годится? В документе об этом ни слова. В документации по контроллеру тоже.
2. Т.к. у меня не модуль OWEN, а посторонее изделие, то, как я понял шаблонный способ не годится. Я прав или нет?
3. При попытке использовать "Стандартные средства конфигурирования (Modbus RTU)" я получил указанную ошибку. Эти средства не рабочие?

Теперь пробую через библиотеку MODBUS.
Я могу быть уверен, что остаток от этого руководства рабочий?


Попробовал через библиотеку. Тоже не работает чтото...

1) документ относится к КДС3.5, скорее было бы написано еслиб различия в конфигурировании имели место быть
2) Вы пользуетесь стандартным протоколом модбас, никакой разницы какого цвета и вкуса слейв не существует
3) рабочие, если они не пошли не чего и стараться использовать другие способы, скорее всего с физическим соединением проблемы

SlavikP
06.06.2017, 10:20
3) рабочие, если они не пошли не чего и стараться использовать другие способы, скорее всего с физическим соединением проблемы

При чем тут физическое соединение? Я скомпилировать проект не могу без ошибок.
Дело или в библиотеке или в моем непонимании чего-то. Причем непонимание скорее всего. Вот и прошу у сообщества совета.
Попробуйте собрать с нуля тестовый проект под ПЛК323, прикрепить к нему modbus rtu в типовой форме: (19200, 8, n, 1), адрес слейва=1, читаем 1 слово из регистра хранения 10.
И скомпилировать этот проект. Будут ли у вас ошибки?

capzap
06.06.2017, 10:34
При чем тут физическое соединение? Я скомпилировать проект не могу без ошибок.
если Вы про пост, где начали с библиотекой работать, то смотреть надо менеджер библиотек, либо что то не добавили, либо не та версия, в документе это всё расписано

И скомпилировать этот проект. Будут ли у вас ошибки?а слов рабочие не достаточно, да?

SlavikP
06.06.2017, 10:42
если Вы про пост, где начали с библиотекой работать, то смотреть надо менеджер библиотек, либо что то не добавили, либо не та версия, в документе это всё расписано

Проект специально прикрепил. Если возможно - посмотрите, ткните носом что я и где не сделал.
Не являюсь большим специалистом по ПЛК овен, понимаю, что могу накосячить.

capzap
06.06.2017, 11:03
я не могу посмотреть, у меня нет с собой ОС с третьим КДСом

SlavikP
06.06.2017, 11:24
я не могу посмотреть, у меня нет с собой ОС с третьим КДСом
Тогда спасибо за моральную поддержку. Запросил саппорт о помощи, посмотрим, что скажут.

capzap
06.06.2017, 11:33
так скрин то выложите менеджера библиотек, жельй треугольник должен стоять на бибке SysCom, если она вообще добавлена, ComService, тоже имеет внутри себя ссылку на эту бибку и видимо у Вас не установлена та версия бибки

Евгений Кислов
06.06.2017, 13:12
Объявлять нужно вот так:



set1: ComSerice.SysCom.COM_Settings;
Handle: ComSerice.SysCom.RTS_IEC_HANDLE;

SlavikP
07.06.2017, 03:11
Вчера получил от саппорта вроде как рабочее решение. Проблема была в несовместимости версий библиотек.
Рекоменодваный набор юного шамана:
Таргеты = 3.5.3.40
modbus = 3.3.0
comservice = 3.1.0
iostandard = 3.5.1.0
iodrvmodbus = 3.5.4.0

В иной комбинации наблюдаются разнообразные глюки.

При этом на сайте выложены таргеты только 3.5.0.40 ;)