Поддержка счетчиков Энергомера

Попробуйте вручную открыть файл /etc/wb-mqtt-serial.conf на диске (через интерфейс нельзя), поменять там slave_id вашего счётчика на "" (пустую строку). Если счётчик на линии один - должно работать. Это работает только для Энергомеры и Невы.

Попробовал - не помогло. Тоже пустые значения.
А есть вообще какой-то способ проверить наличие связи со счетчиком?

Пришлите фото подключения, чтобы было видно клеммники контроллера, счётчика, блока питания.

фото


4-жильный кабель, прямое подключение к порту RS-485-2 (больше на нем ничего нет): коричневый GND, зеленый Vout, желтый A, белый B. Напряжение на контактах 14, 15 счетчика есть, 12, 13 тестером прозвонил - все ок.
Вроде бы ошибиться негде.
Может быть конечно что-то накручено в самом счетчике.
Попробую еще купить адаптер usb-rs485 и подключиться напрямую.
Но если как-то можно посмотреть в логах, что твориться на шине в момент обмена - просьба подсказать! Спасибо!

Докладываю: все заработало!
Оказалось надо указать в качестве slave_id полный серийный номер с этикетки!
В моем случае это был 120262927
Разобраться удалось благодаря скрипту c102m.py упомянутому выше: он находил счетчик и при входе в режим программирования показывал серийный номер:

1 лайк

Возможно кому-нибудь пригодится: модифицировал шаблон для CE301 - убрал реактивную энергию и добавил отображение тарифов Т1 и Т2 (обычно день/ночь).

config-energomera-ce301-T2.json

{
“device_type”: “Energomera CE301/CE303 T2”,
“device”: {
“name”: “Energomera CE301/CE303 T2”,
“id”: “energomera301-T2”,
“protocol” : “energomera_iec”,
“frame_timeout_ms” : 100,
“channels”: [
{
“name”: “Total A energy”,
“reg_type”: “group_single”,
“type”: “power_consumption”,
“address”: “0x100101”
},
{
“name”: “Total T1 energy”,
“reg_type”: “group_single”,
“type”: “power_consumption”,
“address”: “0x100102”
},
{
“name”: “Total T2 energy”,
“reg_type”: “group_single”,
“type”: “power_consumption”,
“address”: “0x100103”
},
{
“name”: “Total P”,
“reg_type”: “group_single”,
“type”: “power”,
“scale” : 1000,
“address”: “0x400304”
},
{
“name”: “P L1”,
“reg_type”: “group_single”,
“type”: “power”,
“scale” : 1000,
“address”: “0x400301”
},
{
“name”: “P L2”,
“reg_type”: “group_single”,
“type”: “power”,
“scale” : 1000,
“address”: “0x400302”
},
{
“name”: “P L3”,
“reg_type”: “group_single”,
“type”: “power”,
“scale” : 1000,
“address”: “0x400303”
},
{
“name”: “Urms L1”,
“reg_type”: “group_single”,
“type”: “voltage”,
“address”: “0x400101”
},
{
“name”: “Urms L2”,
“reg_type”: “group_single”,
“type”: “voltage”,
“address”: “0x400102”
},
{
“name”: “Urms L3”,
“reg_type”: “group_single”,
“type”: “voltage”,
“address”: “0x400103”
},
{
“name”: “Irms L1”,
“reg_type”: “group_single”,
“type”: “current”,
“address”: “0x400201”
},
{
“name”: “Irms L2”,
“reg_type”: “group_single”,
“type”: “current”,
“address”: “0x400202”
},
{
“name”: “Irms L3”,
“reg_type”: “group_single”,
“type”: “current”,
“address”: “0x400203”
},
{
“name”: “Frequency”,
“reg_type”: “group_single”,
“type”: “value”,
“address”: “0x400D01”
},
{
“name”: “Voltage angle L1-L2”,
“reg_type”: “group_single”,
“type”: “value”,
“address”: “0x400B01”
},
{
“name”: “Voltage angle L3-L1”,
“reg_type”: “group_single”,
“type”: “value”,
“address”: “0x400B03”
},
{
“name”: “Voltage angle L2-L3”,
“reg_type”: “group_single”,
“type”: “value”,
“address”: “0x400B02”
},
{
“name”: “PF L1”,
“reg_type”: “group_single”,
“type”: “value”,
“address”: “0x400701”
},
{
“name”: “PF L2”,
“reg_type”: “group_single”,
“type”: “value”,
“address”: “0x400702”
},
{
“name”: “PF L3”,
“reg_type”: “group_single”,
“type”: “value”,
“address”: “0x400703”
},
{
“name”: “Total PF”,
“reg_type”: “group_single”,
“type”: “value”,
“address”: “0x400704”
},
{
“name”: “Serial”,
“reg_type”: “group_single”,
“type”: “value”,
“address”: “0x500301”
}
]
}
}

1 лайк

Добрый день. Есть ли надежна на поддержку Энергомеры СЕ102М” из “коробки”?
Протокол ГОСТ МЭК 61107.

Добрый день!
Пока что не знаем. Протокол там отличается от поддержанных нами CE301 / CE303.
Было бы здоров как-то понять, многим ли это требуется.

Опрос надо сделать ? :slight_smile: Протокол ГОСТ МЭК 61107 похож со счетчиками Нева. На сколько я понял отличие в контрольной сумме.

Добрый день. Решил провести эксперимент со счетчиком CE301 подключив через конвертор RS485 Ethernet. Добавил порт TCP port (Serial over TCP). Прописал IP и порт конвертора.
Прописал номер счетчика и шаблон. Не работает. Проверил через софт энергомеры AdminTools, работает. Я что-то настроил не так в WirenBord или не должно так работать ?

Добрый день!
А просто через RS-485 работает?
Пришлите фото конвертера и скриншоты настроек из веб-интерфейса.

Ранее был подключен через RS-485. Выше в переписке есть мои фотки настроек се301. Пробовал 2 разный конвертора. USR-DR302 и Elfin-EW11A-0 . Через оба конвертора AdminTools успешно читает прибор. Смею предположить, если родной софт читает прибор , то настройки конвертора правильные. Завтра могу еще через teleofis попробовать. Настройки “стандартны” TCP-SERVER.

Пришлите, пожалуйста, скриншоты:

  1. как настраиваете AdminTools,
  2. как настраиваете Wiren Board

для работы через конвертер.

Попробуйте запустить wb-mqtt-serial в отладочном режиме, и пришлите полный вывод: https://wirenboard.com/wiki/Драйвер_wb-mqtt-serial#.D0.9A.D0.BE.D0.BD.D1.84.D0.B8.D0.B3.D1.83.D1.80.D0.B8.D1.80.D0.BE.D0.B2.D0.B0.D0.BD.D0.B8.D0.B5_.D0.B8_.D0.B7.D0.B0.D0.BF.D1.83.D1.81.D0.BA_.D0.B4.D1.80.D0.B0.D0.B9.D0.B2.D0.B5.D1.80.D0.B0

root@wirenboard-AITG6DRV:~# wb-mqtt-serial -c /etc/wb-mqtt-serial.conf -d -3
DEBUG: [serial port driver] setting up devices at <10.14.60.216:8899 5000ms, 2>
DEBUG: [serial client] CreateDevice: energomera301_0677 (Energomera CE301/CE303) @ 0677 – protocol: energomera_iec
DEBUG: [serial client] AddRegister: 0x8127a030
DEBUG: [serial client] AddRegister: 0x8127ac60
DEBUG: [serial client] AddRegister: 0x8124b048
DEBUG: [serial client] AddRegister: 0x8124c458
DEBUG: [serial client] AddRegister: 0x8124cde8
DEBUG: [serial client] AddRegister: 0x8124d6b0
DEBUG: [serial client] AddRegister: 0x8124df10
DEBUG: [serial client] AddRegister: 0x8124c088
DEBUG: [serial client] AddRegister: 0x8124e6a0
DEBUG: [serial client] AddRegister: 0x8124efc8
DEBUG: [serial client] AddRegister: 0x8124f868
DEBUG: [serial client] AddRegister: 0x8124db58
DEBUG: [serial client] AddRegister: 0x812503d0
DEBUG: [serial client] AddRegister: 0x81250d40
DEBUG: [serial client] AddRegister: 0x812515d0
DEBUG: [serial client] AddRegister: 0x81252000
DEBUG: [serial client] AddRegister: 0x81252a58
DEBUG: [serial client] AddRegister: 0x81253508
DEBUG: [serial client] AddRegister: 0x81253e18
DEBUG: [serial client] AddRegister: 0x812542e0
DEBUG: [serial client] AddRegister: 0x81254908
DEBUG: [serial client] AddRegister: 0x81255120
DEBUG: [port] Sleep 100000 us
DEBUG: [Energomera] Write: /?0677!R1GROUP(1001(1)1004(1)1008(1)4001(7)4002(7)4003(3))"
DEBUG: [port] Write: 2f 3f 30 36 37 37 21 01 52 31 02 47 52 4f 55 50 28 31 30 30 31 28 31 29 31 30 30 34 28 31 29 31 30 30 38 28 31 29 34 30 30 31 28 37 29 34 30 30 32 28 37 29 34 30 30 33 28 33 29 29 03 22
WARNING: [Energomera] TEnergomeraIecDevice::ReadRegisterRange(): Serial protocol error: request timed out
DEBUG: [port] 148433950: Wait until 148434740
DEBUG: [port] Sleep 100000 us
DEBUG: [Energomera] Write: /?0677!R1GROUP(1001(1)1004(1)1008(1)4001(7)4002(7)4003(3))"
DEBUG: [port] Write: 2f 3f 30 36 37 37 21 01 52 31 02 47 52 4f 55 50 28 31 30 30 31 28 31 29 31 30 30 34 28 31 29 31 30 30 38 28 31 29 34 30 30 31 28 37 29 34 30 30 32 28 37 29 34 30 30 33 28 33 29 29 03 22
WARNING: [Energomera] TEnergomeraIecDevice::ReadRegisterRange(): Serial protocol error: request timed out
DEBUG: [port] 148435770: Wait until 148436740
DEBUG: [port] Sleep 100000 us

Настройки порта на конвертере - 7E1?

Порт на конвертере 9600 8N1

Пожалуйста поставьте 9600 7E1, так в стандарте.

7E1 заработал.
При выборе 9600 8N1 физически обмен с счётчиками происходит в режиме 9600 7E1, в соответствии с МЭК 61107, но бит чётности эмулируется программно за счёт восьмого бита посылки., не работает