Pulsar-heat Serial protocol error


#1

Добрый день!
Возникла проблема. Добавляю устройство теплосчетчик пульсар. серийный номер 00756271
выбираю тип pulsar-heat
в логе после добавления каждые 2 секунды
May 28 11:07:45 wirenboard-AKUX5NII user.notice serial: TSerialDevice::ReadRegisterRange(): warning: Serial protocol error: request timed out [slave_id is pulsar:253113]
May 28 11:07:47 wirenboard-AKUX5NII user.notice serial: TSerialDevice::ReadRegisterRange(): warning: Serial protocol error: request timed out [slave_id is pulsar:253113]
May 28 11:07:49 wirenboard-AKUX5NII user.notice serial: TSerialDevice::ReadRegisterRange(): warning: Serial protocol error: request timed out [slave_id is pulsar:253113]


#2

изменил Slave id of the device на 756271
сыпятся ошибки
May 28 11:10:16 wirenboard-AKUX5NII user.notice serial: TSerialDevice::ReadRegisterRange(): warning: Serial protocol error: request timed out [slave_id is pulsar:756271]
May 28 11:10:18 wirenboard-AKUX5NII user.notice serial: TSerialDevice::ReadRegisterRange(): warning: Serial protocol error: request timed out [slave_id is pulsar:756271]
May 28 11:10:20 wirenboard-AKUX5NII user.notice serial: TSerialDevice::ReadRegisterRange(): warning: Serial protocol error: request timed out [slave_id is pulsar:756271]
May 28 11:10:22 wirenboard-AKUX5NII user.notice serial: TSerialDevice::ReadRegisterRange(): warning: Serial protocol error: request timed out [slave_id is pulsar:756271]
в любом случае в интерфейсе данные красным светятся, и по нулям.


#3

Евгений, добрый день! Понятно, что нет связи со счетчиком, но почему, из диагностики не ясно. Скажите, вы можете подключить его у ПК с Windows и USB адаптером RS-485, и опросить его Тепловодохрановским софтом http://teplovodokhran.ru/programmnoe-obespechenie/programmy-dlya-nastroyki-oborudovaniya-pri-pusko-naladochnykh-rabotakh.html/
?


#4

Да.это делал.по адресу 00756271 он опрашивается и отвечает, с помощью программы от тепловодохран. Просто вопрос почему я ввожу адрес 00756271 а в логе 253113


#5

В логе 253113 из-за нулей в начале адреса, когда их убираете, адрес становится верным.
Хочу попросить вас включить отладку на порту контроллера и показать фрагмент лога с данными, которые контроллер отправляет на счетчик.
И прислать лог опроса счетчика программой TestAll.


#6

Подскажите как отладку включить? )


#7

Да, конечно!
Вот эта галочка и Save:


#8

Сильно забивает /var/log/messages, отключите потом.


#9

пока кидаю лог из программы
Подключение: Тип Соединения = RS232; Время ожидания = 1500; Пауза перед запросом = 50; Повторные запросы = 3; Номер порта = 6; Скорость = 9600; Стоп биты = 1; Чётность = None; Биты данных = 8; Оптоголовка = False; Подключено
Определение сетевого адреса пульсара
Отправлено: [11 байтов]
F0 0F 0F F0 00 00 00 00 00 A5 44 …D

Получено: [10 байтов] [+00:089]
F0 0F 0F F0 00 75 62 71 08 3B …ubq.;

Определение модели пульсара, сет. адр. 00756271
Отправлено: [11 байтов]
00 75 62 71 03 02 46 00 01 E1 61 .ubq…F…a

Получено: [10 байтов] [+00:082]
00 75 62 71 03 02 18 01 7A C1 .ubq…z.

Определение модели пульсара, сет. адр. 00756271
Отправлено: [11 байтов]
00 75 62 71 03 02 46 00 01 E1 61 .ubq…F…a

Получено: [10 байтов] [+00:087]
00 75 62 71 03 02 18 01 7A C1 .ubq…z.

Отключено
Подключение: Тип Соединения = RS232; Время ожидания = 1500; Пауза перед запросом = 50; Повторные запросы = 3; Номер порта = 6; Скорость = 9600; Стоп биты = 1; Чётность = None; Биты данных = 8; Оптоголовка = False; Подключено
Чтение текущих с прибора: Пульсар теплосчётчик ультразвук. 00756271
Чтение параметров :K3; K4; K5; K6; K7; K8; K9; K10; K11; K12; K13; K20; K15; K21; K22; K23; K24; NPARAM0C; NPARAM0D;
Отправлено: [12 байтов]
00 75 62 71 0A 0C 0C 00 83 90 BE C4 .ubq…

Получено: [18 байтов] [+00:120]
00 75 62 71 0A 12 DE 03 00 00 00 00 00 00 83 90 82 54 .ubq…T

Отправлено: [12 байтов]
00 75 62 71 0A 0C 0D 00 12 45 13 37 .ubq…E.7

Получено: [18 байтов] [+00:123]
00 75 62 71 0A 12 DD 03 00 00 00 00 00 00 12 45 DE 54 .ubq…E.T

Отправлено: [14 байтов]
00 75 62 71 01 0E FC 5F F8 00 55 8B F5 43 .ubq…_…U…C

Получено: [11 байтов] [+00:117]
00 75 62 71 00 0B 02 55 8B 58 1F .ubq…U.X.

Определение модели пульсара, сет. адр. 00756271
Отправлено: [11 байтов]
00 75 62 71 03 02 46 00 01 E1 61 .ubq…F…a

Получено: [10 байтов] [+00:109]
00 75 62 71 03 02 18 01 7A C1 .ubq…z.

Определение сетевого адреса пульсара
Отправлено: [11 байтов]
F0 0F 0F F0 00 00 00 00 00 A5 44 …D

Получено: [10 байтов] [+00:095]
F0 0F 0F F0 00 75 62 71 08 3B …ubq.;

Определение модели пульсара, сет. адр. 00756271
Отправлено: [11 байтов]
00 75 62 71 03 02 46 00 01 E1 61 .ubq…F…a

Получено: [10 байтов] [+00:102]
00 75 62 71 03 02 18 01 7A C1 .ubq…z.

Чтение параметров :L; P; NPARAM20; NPARAM21; NPARAM23; NPARAM24; NPARAM26; NPARAM27; NPARAM29; NPARAM2A; NPARAM2C; NPARAM2D; NPARAM33; NPARAM34; NPARAM6; NPARAMD0; NPARAM0241; NPARAM0244; NPARAM1A; NPARAM1B; Чтение параметров :L; P; NPARAM20; NPARAM21; NPARAM23; NPARAM24; NPARAM26; NPARAM27; NPARAM29; NPARAM2A; NPARAM2C; NPARAM2D; NPARAM33; NPARAM34; NPARAM6; NPARAMD0; NPARAM0241; NPARAM0244; NPARAM1A; NPARAM1B;
Отправлено: [12 байтов]
00 75 62 71 0A 0C 01 00 14 0A 52 33 .ubq…R3

Получено: [18 байтов] [+00:119]
00 75 62 71 0A 12 00 00 00 00 00 00 00 00 14 0A 1D A3 .ubq…

Отправлено: [12 байтов]
00 75 62 71 0A 0C 05 00 A9 A9 62 2A .ubq…b*

Получено: [18 байтов] [+00:118]
00 75 62 71 0A 12 28 00 00 03 00 00 00 00 A9 A9 9F 0A .ubq…(…

Отправлено: [12 байтов]
00 75 62 71 0A 0C 20 00 AB 0B E9 FF .ubq…

Получено: [11 байтов] [+00:110]
00 75 62 71 00 0B 04 AB 0B F9 DE .ubq…

Отправлено: [12 байтов]
00 75 62 71 0A 0C 21 00 DD 8D 4F C1 .ubq…!..O.

Получено: [11 байтов] [+00:111]
00 75 62 71 00 0B 04 DD 8D 5E 1C .ubq…^.

Отправлено: [12 байтов]
00 75 62 71 0A 0C 23 00 82 11 77 E0 .ubq…#…w.

Получено: [11 байтов] [+00:112]
00 75 62 71 00 0B 04 82 11 67 85 .ubq…g.

Отправлено: [12 байтов]
00 75 62 71 0A 0C 24 00 F0 04 93 FB .ubq…$…

Получено: [11 байтов] [+00:103]
00 75 62 71 00 0B 04 F0 04 82 EA .ubq…

Отправлено: [12 байтов]
00 75 62 71 0A 0C 26 00 54 5B A8 BB .ubq…&.T[…

Получено: [11 байтов] [+00:111]
00 75 62 71 00 0B 04 54 5B B8 12 .ubq…T[…

Отправлено: [12 байтов]
00 75 62 71 0A 0C 27 00 EC AD 5B 01 .ubq…’…[.

Получено: [11 байтов] [+00:111]
00 75 62 71 00 0B 04 EC AD 4A 54 .ubq…JT

Отправлено: [12 байтов]
00 75 62 71 0A 0C 29 00 05 DA 56 5F .ubq…)…V_

Получено: [11 байтов] [+00:101]
00 75 62 71 00 0B 04 05 DA 45 E2 .ubq…E.

Отправлено: [12 байтов]
00 75 62 71 0A 0C 2A 00 EC 79 59 F2 .ubq…*…yY.

Получено: [11 байтов] [+00:111]
00 75 62 71 00 0B 04 EC 79 4A 0B .ubq…yJ.

Отправлено: [12 байтов]
00 75 62 71 0A 0C 2C 00 30 1A 41 93 .ubq…,.0.A.

Получено: [18 байтов] [+00:118]
00 75 62 71 0A 12 6F 12 83 3A 00 00 00 00 30 1A 32 37 .ubq…o…:…0.27

Отправлено: [12 байтов]
00 75 62 71 0A 0C 2D 00 D0 E8 88 2A .ubq…-…*

Получено: [18 байтов] [+00:101]
00 75 62 71 0A 12 00 00 C8 42 00 00 00 00 D0 E8 A0 D8 .ubq…B…

Отправлено: [12 байтов]
00 75 62 71 0A 0C 33 00 E6 6B D8 03 .ubq…3…k…

Получено: [18 байтов] [+00:355]
00 75 62 71 0A 12 5B 63 88 44 00 00 00 00 E6 6B 5A BF .ubq…[c.D…kZ.

Отправлено: [12 байтов]
00 75 62 71 0A 0C 34 00 0F 87 97 6A .ubq…4…j

Получено: [18 байтов] [+00:355]
00 75 62 71 0A 12 EC 47 88 44 00 00 00 00 0F 87 09 6E .ubq…G.D…n

Отправлено: [12 байтов]
00 75 62 71 0A 0C 06 00 1D D9 14 8A .ubq…

Получено: [18 байтов] [+00:104]
00 75 62 71 0A 12 00 00 01 00 00 00 00 00 1D D9 9B A2 .ubq…

Отправлено: [12 байтов]
00 75 62 71 0A 0C D0 00 79 8D 07 FD .ubq…y…

Получено: [18 байтов] [+00:119]
00 75 62 71 0A 12 00 00 00 00 00 00 00 00 79 8D 71 51 .ubq…y.qQ

Отправлено: [12 байтов]
00 75 62 71 0A 0C 41 02 72 66 CD BE .ubq…A.rf…

Получено: [18 байтов] [+00:118]
00 75 62 71 0A 12 00 00 00 00 00 00 00 00 72 66 36 2E .ubq…rf6.

Отправлено: [12 байтов]
00 75 62 71 0A 0C 44 02 04 6A EB 17 .ubq…D…j…

Получено: [18 байтов] [+00:111]
00 75 62 71 0A 12 00 00 00 00 00 00 00 00 04 6A 10 4B .ubq…j.K

Отправлено: [12 байтов]
00 75 62 71 0A 0C 1A 00 A0 B5 62 67 .ubq…bg

Получено: [18 байтов] [+00:118]
00 75 62 71 0A 12 00 22 00 00 00 00 00 00 A0 B5 AB B2 .ubq…"…

Отправлено: [12 байтов]
00 75 62 71 0A 0C 1B 00 A8 88 A5 8A .ubq…

Получено: [18 байтов] [+00:117]
00 75 62 71 0A 12 CC 00 08 80 00 00 00 00 A8 88 A8 6F .ubq…o

Чтение архивов Для прибора, Месячный : Пульсар теплосчётчик ультразвук. 00756271
Чтение интервала : 22.05.2019 00:00:00 - 27.05.2019 00:00:00
Для параметров:
K3 ; K4 ; K7 ; K8 ; K10 ; K11 ; K12 ; K13 ; K20 ; K22 ;

Отправлено: [10 байтов]
00 75 62 71 04 0A F6 5B 37 EC .ubq…[7.

Получено: [16 байтов] [+00:116]
00 75 62 71 04 10 13 05 1B 11 1C 24 F6 5B E9 6A .ubq…$.[.j

Определение сетевого адреса пульсара
Отключено


#10

а дебаг включать когда адрес вбит 00756271 или 756271 ?


#11

вот когда 756271

May 28 11:55:15 wirenboard-AKUX5NII user.notice serial: TSerialDevice::ReadRegisterRange(): warning: Serial protocol error: request timed out [slave_id is pulsar:756271]
May 28 11:55:15 wirenboard-AKUX5NII user.notice serial: Write: 00 75 62 71 01 0e 08 00 00 00 00 00 3a 6d
May 28 11:55:17 wirenboard-AKUX5NII user.notice serial: TSerialDevice::ReadRegisterRange(): warning: Serial protocol error: request timed out [slave_id is pulsar:756271]
May 28 11:55:17 wirenboard-AKUX5NII user.notice serial: Write: 00 75 62 71 01 0e 10 00 00 00 00 00 39 b5


#12

вот когда 00756271

May 28 11:57:40 wirenboard-AKUX5NII user.notice serial: TSerialDevice::ReadRegisterRange(): warning: Serial protocol error: request timed out [slave_id is pulsar:253113]
May 28 11:57:40 wirenboard-AKUX5NII user.notice serial: Write: 00 25 31 13 01 0e 00 01 00 00 00 00 45 c8
May 28 11:57:42 wirenboard-AKUX5NII user.notice serial: TSerialDevice::ReadRegisterRange(): warning: Serial protocol error: request timed out [slave_id is pulsar:253113]
May 28 11:57:42 wirenboard-AKUX5NII user.notice serial: Write: 00 25 31 13 01 0e 00 02 00 00 00 00 01 c8
May 28 11:57:44 wirenboard-AKUX5NII user.notice serial: TSerialDevice::ReadRegisterRange(): warning: Serial protocol error: request timed out [slave_id is pulsar:253113]
May 28 11:57:44 wirenboard-AKUX5NII user.notice serial: Write: 00 25 31 13 01 0e 00 04 00 00 00 00 89 c8
May 28 11:57:46 wirenboard-AKUX5NII user.notice serial: TSerialDevice::ReadRegisterRange(): warning: Serial protocol error: request timed out [slave_id is pulsar:253113]
May 28 11:57:47 wirenboard-AKUX5NII user.notice serial: Write: 00 25 31 13 01 0e 00 08 00 00 00 00 99 c9
May 28 11:57:49 wirenboard-AKUX5NII user.notice serial: TSerialDevice::ReadRegisterRange(): warning: Serial protocol error: request timed out [slave_id is pulsar:253113]
May 28 11:57:49 wirenboard-AKUX5NII user.notice serial: Write: 00 25 31 13 01 0e 00 10 00 00 00 00 b9 cb
May 28 11:57:51 wirenboard-AKUX5NII user.notice serial: TSerialDevice::ReadRegisterRange(): warning: Serial protocol error: request timed out [slave_id is pulsar:253113]
May 28 11:57:51 wirenboard-AKUX5NII user.notice serial: modbus: read 2 holding(s) @ 270 of device modbus:208
May 28 11:57:51 wirenboard-AKUX5NII user.notice serial: Write: d0 03 01 0e 00 02 b6 75
May 28 11:57:51 wirenboard-AKUX5NII user.notice serial: ReadFrame: D0 03 04 FE 30 2F 8F 57 4D
May 28 11:57:51 wirenboard-AKUX5NII user.notice serial: modbus: read 1 input(s) @ 121 of device modbus:208
May 28 11:57:51 wirenboard-AKUX5NII user.notice serial: Write: d0 04 00 79 00 01 f2 52
May 28 11:57:51 wirenboard-AKUX5NII user.notice serial: ReadFrame: D0 04 02 59 D1 BF 2E
May 28 11:57:51 wirenboard-AKUX5NII user.notice serial: new val for <modbus:208:input: 121>: 59d1
May 28 11:57:51 wirenboard-AKUX5NII user.notice serial: register value change: <modbus:208:input: 121> <- 22.993


#13

Без нулей который, 756271


#14

ну он выше чуть чуть . я и тот и тот кинул


#15

Да, похоже, что проблема. Ваш “Пульсар теплосчётчик ультразвук.” отличается от просто “Пульсар теплосчётчик” протоколом обмена и не поддерживается поддерживаться на уровне наших драйверов.


#16

это можно решить? ну тоесть с него данные можно получать?


#17

Нет, к сожалению. Напишем вам, если будут какие-то изменения.


#18

Единственный способ, который я могу сейчас предложить, это отправлять команды из движка правил, см. документ https://wirenboard.com/wiki/index.php/Движок_правил_wb-rules
раздел “Отправка команд по RS-485”. Можно подсмотреть, как опрашивает счетчки родная программа и повторять побайтово запросы.
У этого способа есть одно но: порт, к которому подключены счетчики, опрашиваемые движком правил, не должен использоваться для других устройств, которые wb-mqtt-serial опрашивает по шаблонам, то есть для всех устройств, подключенных к порту, придется отправлять набор байтов и читать ответы через движок правил.


#19

Я так думаю с водосчетчиком, который мы вам отправили такая же проблема. Когда я его подключаю вообще rs перестает работать, и в логе FATAL ERROR


#20

Пока попробуем так.

У контроллера 2 интерфейса rs. Можно ли на второй интерфейс повесить несколько теплосчетчиков и опрашивать их? можно ли одновременно их опрашивать? на сколько понял в ответе от счетчика будет адрес того который ответил.
получается нужно на этот интерфейс просто повесить что то свое. что будет отправлять команды и принимать ответы, что дальше делать с ответами уже как захочу?