реклама на сайте
подробности

 
 
> FreeModbus + TCP(lwip) + Serial, Научить FreeModbus работать одновременно по TCP и по 485
yanvasiij
сообщение Sep 8 2015, 11:55
Сообщение #1


Местный
***

Группа: Свой
Сообщений: 321
Регистрация: 23-12-11
Из: Уфа
Пользователь №: 69 041



Доброго времени суток!

Встала задача реализовать на одном устройстве одновременно modbus RTU по последовательной шине и modbus TCP. FreeModbus отлично умеет и то и другое, но НЕ ОДНОВРЕМЕННО. Покопавшись в исходниках понял, что без серьезных изменений его не научить работать параллельно по двум интерфейсам. Может кто-нибудь уже реализовал это? Буду признателен, если поделитесь исходниками.
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
yanvasiij
сообщение Sep 9 2015, 08:57
Сообщение #2


Местный
***

Группа: Свой
Сообщений: 321
Регистрация: 23-12-11
Из: Уфа
Пользователь №: 69 041



Цитата(Непомнящий Евгений @ Sep 9 2015, 09:22) *
Не сталкивался с фримодбасом, в свое время написал сам RTU. Вроде как ничего сложного там нет. TCP как я понимаю отличается только канальным уровнем.

Судя по примерам фримодбаса - там внутри один экземпляр глобальных данных. Если повезло - то они уже объединены в структуру (и надо сделать несколько экземпляров этой структуры + в каждую функцию добавить дескриптор); если не повезло - то это просто россыпь глобальных переменных (и надо их вначале соединить в структуру и далее как в пред пункте)


Собственно об том и речь - нужно сделать многоэкземплярный вариант, можно даже на C++. Я ищу готовое, если не найду возмусь сам.


Цитата(SasaVitebsk @ Sep 9 2015, 12:50) *
У меня это реализовано.
Не знаю что там с этим Freemodbus... Не пойму зачем он вообще.
Сделан драйвер USART, LwIP, и драйвер modbus который готовые пакеты разруливает.
Работает параллельно Modbus - TCP/Modbus - UDP/Modbus - HTTP.
Сам драйвер modbus настолько примитивен, что не пойму зачем себе ещё голову чужими исходниками забивать?
...
Единственное, на что обратите внимание, это в TCP пакете обеспечьте ID пакета. И в OPC сервере необходимо разруливать эти ID.
Иначе 2 устройства не будут в одной сети жить, да и с одним будут проблемы ... Нужна уверенность, что вы получили ответ именно на свой запрос.


Зачем забивать чужими исходниками? -> Я сторонник брать готовое проверенное решение, если оно есть, вместо написания с нуля. Может Вы поделитесь исходниками?
Go to the top of the page
 
+Quote Post
zltigo
сообщение Sep 9 2015, 18:49
Сообщение #3


Гуру
******

Группа: Свой
Сообщений: 13 372
Регистрация: 27-11-04
Из: Riga, Latvia
Пользователь №: 1 244



QUOTE (yanvasiij @ Sep 9 2015, 11:57) *
Я сторонник брать готовое проверенное решение, если оно есть, вместо написания с нуля.

sm.gif


--------------------
Feci, quod potui, faciant meliora potentes
Go to the top of the page
 
+Quote Post



Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 23rd July 2025 - 18:45
Рейтинг@Mail.ru


Страница сгенерированна за 0.01336 секунд с 7
ELECTRONIX ©2004-2016