Mega2560-32 Channel RS485 Modbus RTU Controller

Использование протокола Modbus
Ответить
autoelectronica
Сержант
Сообщения: 118
Зарегистрирован: 18 окт 2016, 21:46
Откуда: Москва
Благодарил (а): 2 раза
Поблагодарили: 2 раза

Mega2560-32 Channel RS485 Modbus RTU Controller

Сообщение autoelectronica »

Господа, доброго дня. Вот приобрел на Али вот такую платку https://aliexpress.ru/item/400111228348 ... 4447968482 . Пытаюсь состыковать ее через плату max485 с мегой. По каким регистрам прописывать управление?
Mega-485.flp
У вас нет необходимых прав для просмотра вложений в этом сообщении.
Aviacode
Рядовой
Сообщения: 41
Зарегистрирован: 15 фев 2021, 15:04
Имя: Серго
Благодарил (а): 1 раз

Mega2560-32 Channel RS485 Modbus RTU Controller

Сообщение Aviacode »

Плату только одну купили? Для экспериментов лучше две-три, поясню почему.
Обычные проблемы для подобных плат с Али (а у меня их уже коллекция):
1. Протокол RTU кривой, либо таковым не является, несмотря на заявление продавца.
2. Разные версии прошивок даже в одной партии.
3. Только одна скорость обмена.
4. Регистры работают правильно, но использовать можно только одну плату, в сеть идет мусор, и при подключении нескольких, мешает нормальной работе вызывая пропуски пакетов.
Можно было бы заливать в плату свою прошивку, но и тут проблема, с которой мне на форуме пока не смогли помочь.
На каком чипе ваша плата? Расскажите, пожалуйста, о результатах испытаний.
Аватара пользователя
ViktorPetrov
Капитан
Сообщения: 807
Зарегистрирован: 09 апр 2018, 23:56
Имя: Виктор
Благодарил (а): 4 раза
Поблагодарили: 1 раз

Mega2560-32 Channel RS485 Modbus RTU Controller

Сообщение ViktorPetrov »

Если ,я правильно понял с универсального устройства Slave,регистры нужно с начало прочитать при помощи функций .
Формат запроса имеет следующий вид:
8cb39b67722744139d19331147018d88.png
ID — адрес устройства (1 байт),
FN — Modbus функция (1 байт),
[args] — аргументы функции (N байт, зависит от функции),
CRC — контрольная сумма CRC-16 (2 байта).

Ответ имеет схожий формат:
aa35503ea29c4637a285b9621ce7d27b.png
Поддерживаемые функции Modbus:

01: Read coil status
02: Read input status
03: Read holding registers
04: Read input registers
05: Write single coil
06: Write single register
15: Write multiple coils
16: Write multiple registers
22: Mask write register
23: Read/Write registers
У вас нет необходимых прав для просмотра вложений в этом сообщении.
autoelectronica
Сержант
Сообщения: 118
Зарегистрирован: 18 окт 2016, 21:46
Откуда: Москва
Благодарил (а): 2 раза
Поблагодарили: 2 раза

Mega2560-32 Channel RS485 Modbus RTU Controller

Сообщение autoelectronica »

ViktorPetrov, помогите реализовать это в FLPROG
Ответить

Вернуться в «Modbus»

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и 2 гостя