Перейти к содержанию

Sokol-M1 + Modbus: различия между версиями

м
нет описания правки
(Новая страница: «мини|317x317пкс|Sokol-M1 + Modbus = <big>'''Общая информация'''</big> = При работе со станцией '''Сокол-М1''' данные можно получать не только через '''GSM-связь''' или при прямом подключении '''по USB''', но и выполнять опрос с помощью '''сторонних программ'''...»)
 
мНет описания правки
Строка 126: Строка 126:


Стоп-биты - '''1'''
Стоп-биты - '''1'''
В качестве примера опроса мы будем использовать программу '''[https://drive.google.com/file/d/10i7v4TZ9-JDJYPAh-9JSh4x6vkM93BVV/view?usp=sharing Terminal.exe]'''
'''<u>Команда опроса: 01 03 00 00 00 5A C5 F1</u>'''
'''01''' – адрес
'''03''' – код команды
'''00 00''' – номер регистра, начиная с которого запрашивается количество регистров
'''00 5А''' – количество запрашиваемых регистров '''<u>(5А –  90 регистров)</u>'''
'''С5 F1''' – '''CRC-16 Modbus''' с обратным порядком байтов;
[[Файл:Пример опроса Sokol-M1 в Terminal.png|центр|мини|590x590пкс|В программе Terminal, в качестве разделителя используется знак "$"]]
'''<u>Ответ:</u>'''
<u>01</u> <u>03</u> <u>B4</u> <u>82 80</u> <u>00 00</u> <u>00 00</u> <u>09 A1</u> <u>27 1D</u> <u>00 19</u> <u>00 00</u> <u>01 01</u> <u>00 1D</u> <u>00 00</u> <u>00 92</u> <u>00 00</u> <u>00 00</u> <u>00 00</u> <u>00 00</u> <u>00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00</u> <u>00 00</u> <u>00 00</u> <u>00 00</u> <u>00 00</u> <u>00 00</u> <u>00 00</u> <u>00 00</u> <u>00 00</u> <u>00 00</u> <u>00 00</u> <u>00 00</u> <u>00 00</u> <u>00 00</u> <u>00 00</u> <u>00 00</u> <u>00 00</u> <u>00 06</u> <u>01 10</u> <u>0E 03</u>
'''<u>01 (адрес) 03 (команда) B4 (кол-во байт – 180 или 90 регистров)</u>'''
# 82 80 – прошивка (82-1.3.0) и тип устройства+номер банка регистров+наличие ошибки в работе сенсоров (подробнее в 90-м регистре)
# 00 00  - старшие 16 разрядов UNIX TIME
# 00 00  - младшие 16 разрядов UNIX TIME
# 09 A1 - температура  беззнаковое; разрешение 0,01 град, т.е. 09A1 – 2465 или 24.65°С
# 27 1D -  атмосферное давление  беззнаковое; разрешение 10Ра; 271D – 10013 т.е. 100130 Па
# 00 19 -  относительная влажность  беззнаковое; разрешение 1%; 19 – 25%
# 00 00 - скорость ветра  беззнаковое; разрешение 0.01 m/s
# 01 01 - направление ветра   беззнаковое; разрешение 1 град; 101 – 257°
# 00 1D - Уровень осадков беззнаковое; разрешение 0.1 мм; 2.9
# 00 00 - Уровень ультрафиолетового излучения беззнаковое; разрешение 0.01 W/m2
# 00 92 - Уровень освещенности беззнаковое; разрешение 1 lux; 92 - 146
# 00 00  - скорость ветра УЗ анемометра беззнаковое; разрешение 0.01 m/s
# 00 00 - направление ветра УЗ анемометра беззнаковое; разрешение 1 град.
# 00 00 - Расстояние до препятствия (снежный покров) беззнаковое; разрешение 1 см. ДГВ должен иметь сетевой адрес 160
# 00 00 - Солнечная радиация  беззнаковое; разрешение 1 Вт/м2. Пиргелиометр должен иметь сетевой адрес 181
# 00 00  - БМВД1
# 00 00
# 00 00
# 00 00
# 00 00
# 00 00
# 00 00
# 00 00 - БМВД2
# 00 00
# 00 00
# 00 00
# 00 00
# 00 00
# 00 00
# 00 00 - БМВД3
# 00 00
# 00 00
# 00 00
# 00 00
# 00 00
# 00 00
# 00 00 - БМВД4
# 00 00
# 00 00
# 00 00
# 00 00
# 00 00
# 00 00
# 00 00 - БМВД5
# 00 00
# 00 00
# 00 00
# 00 00
# 00 00
# 00 00
# 00 00 - БМВД6
# 00 00
# 00 00
# 00 00
# 00 00
# 00 00
# 00 00
# 00 00 - БМВД7
# 00 00
# 00 00
# 00 00
# 00 00
# 00 00
# 00 00
# 00 00 - БМВД8
# 00 00
# 00 00
# 00 00
# 00 00
# 00 00
# 00 00
# 00 00 - Пыль 2,5 мкм  беззнаковое; разрешение
# 00 00 - Пыль 10 мкм  беззнаковое; разрешение 00 00
# 00 00 - уровень СО2  беззнаковое; разрешение
# 00 00 - уровень СО  беззнаковое; разрешение
# 00 00 - уровень NO  беззнаковое; разрешение
# 00 00  - уровень NO2  беззнаковое; разрешение
# 00 00 - уровень SO2  беззнаковое; разрешение
# 00 00  - уровень H2S  беззнаковое; разрешение
# 00 00 - уровень HCN  беззнаковое; разрешение
# 00 00 - уровень NH3  беззнаковое; разрешение
# 00 00 - уровень CH2O  беззнаковое; разрешение
# 00 00 - резерв 1
# 00 00 - резерв 2
# 00 00 - резерв 3
# 00 00 - резерв 4
# 00 00 - резерв 5
# 00 00 - резерв 2
# 00 06 - флаги выгрузки черного ящика
# 01 10 - events
'''<u>0E 03 – CRC-16 modbus</u>'''
Если в '''команде''' указать '''<u>другой регистр, начиная с которого нужно выгрузить данные</u>''', и указать '''<u>другое количество запрашиваемых регистров</u>''', то в ответе будет содержаться '''<u>меньшее количество регистров.</u>'''
'''<u>Например:</u>'''
[[Файл:Terminal пример запрос данных от станции 1.png|центр|безрамки|606x606пкс]]
Запрос '''10 регистров''', следующих за '''5-м'''
'''<u>Запрос:</u>'''
'''<u>01 03 00 05 00 0A D5 CC</u>'''
01 – адрес
03 – команда
00 05 – запрос выдать регистры после 5-го, т.е. в ответе будут регистры начиная с 6го
00 0А – запрос выдать 10 регистров
D5 CC – контрольная сумма (обратный порядок байтов)
'''<u>Ответ:</u>'''
'''<u>01 03 14 00 19 00 00 01 01 00 00 00 00 00 8D 00 00 00 00 00 00 00 00 81 FF</u>'''
01 адрес
03 команда
14 количество байт – 20, т.е 10 регистров
00 19 - влажность
00 00  - скорость ветра
01 01 - направление ветра
00 00 - Уровень осадков беззнаковое; разрешение 0.1 мм; 2.9
00 00 - Уровень ультрафиолетового излучения беззнаковое; разрешение 0.01 W/m2
00 8D - Уровень освещенности беззнаковое; разрешение 1 lux; 92 - 146
00 00 - скорость ветра УЗ анемометра беззнаковое; разрешение 0.01 m/s
00 00 - направление ветра УЗ анемометра беззнаковое; разрешение 1 град.
00 00 - Расстояние до препятствия (снежный покров) беззнаковое; разрешение 1 см. ДГВ должен иметь сетевой адрес 160
00 00 - Солнечная радиация  беззнаковое; разрешение 1 Вт/м2. Пиргелиометр должен иметь сетевой адрес 181
'''<u>81 FF – контрольная сумма</u>'''
= '''Полезные ссылки''' =
'''[https://docs.google.com/document/d/1iw94kPgIUvSKXPNKiFgnPNRrkLLWsRIv/edit Разбор строки опроса станции по Modbus]'''
'''[https://rutube.ru/video/a6b0352076af28222bd0a9f9e5ea675d/?playlist=718716 Подключение станции по Modbus (ВИДЕО)]'''
'''[https://rutube.ru/video/41aaa276f25b198b8043a09d451f1b88/?playlist=718716 Подключение питания станции (ВИДЕО)]'''
975

правок