Назначение
Приёмник получает пакеты от LoRa-датчиков, проверяет формат и CRC, затем публикует данные через Modbus RTU по RS485. Настраиваемое количество датчиков — от 1 до 25, значение по умолчанию — 10. Допустимые ID датчиков — от 1 до настроенного количества.
Подключение и первый запуск
- Подключите антенну LoRa до подачи питания.
- Подключите линии RS485
A,Bи общий проводGND. - Подайте питание согласно маркировке устройства.
- Настройте Modbus-мастер: адрес
40, скорость38400 бод, тайм-аут1000 мс, формат8N1, режим Modbus RTU. - После получения LoRa-пакета данные датчика появятся в блоке регистров, начинающемся с адреса
100.
Поменяйте местами линии A и B, проверьте общий провод и настройки порта.
Настройка через Bluetooth
Для удобной настройки используйте приложение LoRa Receiver Config v1.2.2. Найдите устройство LoRa-RS485-<серийный номер>, подключитесь и выполните сопряжение с PIN 123456.
Через приложение можно задать количество датчиков, параметры Modbus и LoRa, один раз записать серийный номер и перезапустить приёмник. Подробности приведены в инструкции по BLE-настройке.
Параметры LoRa по умолчанию
| Параметр | Значение |
|---|---|
| Адрес приёмника | 1 |
| Канал | 20 |
| Мощность | 10 |
| PAN ID | 150 |
| Ключ | 111 |
| HEAD | 0 |
Параметры LoRa должны совпадать с настройками передатчиков. Через Modbus они доступны только для чтения. Через BLE можно изменить адрес приёмника, канал, мощность, PAN ID и ключ; параметр HEAD изменить нельзя. Ключ доступен только для записи, а новые параметры начинают действовать после перезапуска.
Карта Modbus-регистров
Адреса указаны с нулевой нумерацией. Если программа использует нумерацию с единицы, прибавьте к адресу 1.
Состояние устройства — Input Registers, функция 04
| Адрес | Значение |
|---|---|
| 0 | Серийный номер устройства |
| 1 | Старшая версия прошивки |
| 2 | Младшая версия прошивки |
| 3 | Номер сборки прошивки |
| 4 | Время работы, младшие 16 бит |
| 5 | Время работы, старшие 16 бит |
| 6 | Количество датчиков |
| 7 | Причина последнего перезапуска |
| 8 | Частота процессора ×10 МГц |
| 9 | Температура процессора ×10 °C |
Полное время работы в секундах: (регистр 5 << 16) | регистр 4.
Настройки LoRa — Input Registers, функция 04
| Адрес | Значение |
|---|---|
| 50 | Адрес приёмника |
| 51 | Канал |
| 52 | Мощность |
| 53 | PAN ID |
| 54 | HEAD |
| 55–61 | Резерв |
Настройки Modbus — Holding Registers
| Адрес | Значение | Допустимые значения |
|---|---|---|
| 30 | Адрес Modbus | 1–247 |
| 31 | Индекс скорости | 0=9600, 1=19200, 2=38400, 3=115200 |
| 32 | Тайм-аут, мс | 0–65535 |
| 90 | Сохранение настроек | Записать 1 |
| 91 | Перезапуск | Записать 1 |
| 92–93 | Резерв | — |
Для изменения настроек запишите новые значения в регистры 30–32, затем запишите 1 в регистр 90. Изменение адреса применяется сразу. Новая скорость начинает действовать после перезапуска; для него запишите 1 в регистр 91.
Значение в регистре 32 сохраняется, но пока не используется рабочим Modbus-обменом.
Данные датчиков — Input Registers, функция 04
Каждому датчику выделено 10 регистров. Базовый адрес: 100 + (ID датчика - 1) × 10.
| Смещение | Значение |
|---|---|
| +0 | ID датчика |
| +1 | Тип датчика |
| +2 | Значение 1 |
| +3 | Значение 2 |
| +4 | Напряжение батареи, мВ |
| +5 | RSSI; интерпретировать как знаковое 16-битное число |
| +6 | Состояние |
| +7 | Время работы датчика, младшие 16 бит |
| +8 | Код ошибки |
| +9 | Время последнего приёма, младшие 16 бит |
Датчик 1 занимает адреса 100–109, датчик 2 — 110–119. Если пакет не поступал более 120 секунд, регистры датчика очищаются значением 0xFFFF.
Быстрая диагностика
- Нет ответа Modbus: проверьте адрес, скорость, линии
A/B, общий провод и формат8N1. - В регистрах датчика
0xFFFF: проверьте питание датчика, антенны и совпадение LoRa-канала, PAN ID и ключа. - После изменения скорости пропала связь: подключитесь на новой скорости после перезапуска приёмника.
- Версию установленной прошивки можно прочитать в регистрах
1–3.
Обновление через ESP Launchpad
Для обновления уже работающего приёмника используйте файл receiver-esp32s3-v1.0.8.bin.
- Закройте монитор последовательного порта и подключите приёмник по USB.
- Откройте ESP Launchpad в Chrome или Edge.
- Нажмите
Connectи выберите COM-порт приёмника. - Добавьте файл прошивки и укажите адрес
0x10000. - Не включайте полное стирание Flash (
Erase All). - Нажмите
Program, дождитесь завершения и перезапустите приёмник кнопкойRESET/EN.
Используйте recovery-архив и отдельную инструкцию по восстановлению.