Перейти к содержимому
Черновик: материал сгенерирован и ещё не вычитан.

Электросчётчики

Прибор Galileosky умеет опрашивать трёхфазный электросчётчик по RS-485 и передавать его показания на сервер мониторинга в теге «Массив пользователя». Сам прибор данные не конвертирует — разбирает их сервер.

Поддерживаются два счётчика:

  • Меркурий 230 AR-03 R — алгоритм galileosky/mercury_230 (и вариант с ДУТ galileosky/mercury230_lls_5);
  • Pilot SPM93 — алгоритм galileosky/pilot_spm93.
СчётчикПорт107x7x LiteXS
Меркурий 230 AR-03 RRS-485дададанет
Меркурий 230 + до 4 ДУТRS-485дададанет
Pilot SPM93RS-485дададанет

RS-485 есть у всех четырёх исполнений, но оба алгоритма хранят свои настройки в CAN-тегах, а у XS в прошивке 48.28 нет HAS_CAN — ни CAN-сканера, ни команд CANREGIME. Поэтому на XS эти алгоритмы работать не будут.

Электросчётчик Меркурий 230 AR-03 R

Счётчик ведёт однотарифный учёт активной и реактивной энергии и мощности и измеряет параметры сети: мгновенные значения активной, реактивной и полной мощности по каждой фазе и по сумме фаз с направлением вектора, действующие значения фазных токов и напряжений, углы между фазными напряжениями, частоту сети и коэффициенты мощности.

Литера «R» в маркировке означает наличие интерфейса RS-485 — именно по нему прибор читает данные. Без «R» счётчик не подойдёт.

Отсутствие литеры «S» означает внешнее питание интерфейса RS-485: потребуется дополнительные 5–9 В на контакты 18 и 23.

Отсутствие литеры «D» означает, что без основного питания на фазных и токовых клеммах счётчик данные не передаёт.

Схема подключения Меркурий 230 к прибору

  1. В секции «Система» включите модули RS485 и Запись архива точек в память, примените настройки и перезагрузите прибор.

  2. Алгоритм хранит свои настройки в CAN-тегах CAN16BITR0CAN16BITR3, поэтому в CAN-сканере нужно выставить режим Easy Logic и отметить Не обнулять данные — иначе настроечные теги обнулятся.

    ⚙ CAN-сканер

    Использовать теги CAN16BITR0CAN16BITR3 в других алгоритмах нельзя. После перезагрузки прибора настройки восстанавливаются из них, и опрос счётчика возобновляется автоматически, если его не остановили командой merc_stop до перезагрузки.

  3. Включите в основном пакете тег Массив пользователя.

    ⚙ Основной пакет

  4. Тип периферии RS-485 — Отключен.

    ⚙ Тип периферии RS-485

    Правила подключения шины RS-485, адреса и терминаторы — в статье «Последовательные порты RS-232 и RS-485».

    Алгоритм захватывает порт RS-485 монопольно. Другие алгоритмы, использующие RS-485, вместе с ним работать не будут.

  5. Убедитесь, что прибор в сети, и загрузите алгоритм:

    SCRIPT galileosky/mercury_230

    При локальном подключении по USB или BLE алгоритм можно залить бинарным файлом .bin.

    ⚙ Загрузка бинарника Easy Logic

  6. Дождитесь появления имени алгоритма в идентификационных данных прибора и перезагрузите его (RESET), затем выполните стартовую инициализацию командой merc_start.

    ⚙ Устройство

CANREGIME 11,0,0,1
CAN1REGIME 11,0,0,1
MAINPACKBIT 185,1
RS485FN 5
SCRIPT galileosky/mercury_230

После загрузки алгоритма — RESET.

⚙ Консоль команд

КомандаЧто делаетОтвет
merc_start <address>,<timeout>начать опросaddress - <address>, timeout - <timeout>
merc_stopпрекратить опросMercury stopped
merc_addr <address>сменить адрес счётчикаaddress - <address>, timeout - <timeout>
merc_timeout <timeout>сменить интервал опросаtimeout <timeout>
merc_status <parameter>получить показаниезначение параметра
  • address — сетевой адрес счётчика: три последние цифры серийного номера. Если это число больше 254, берутся две последние цифры. По умолчанию 1.
  • timeout — интервал между опросами в секундах, по умолчанию 5.

Серийный номер на корпусе счётчика

Пример:

merc_start 35,100
→ address - 35, timeout - 100

Номера параметров для merc_status:

parameterПоказание
0активная энергия
1текущая потребляемая мощность
2, 3, 4напряжение на фазах 1, 2, 3
5, 6, 7потребление тока по фазам 1, 2, 3
8реактивная энергия

Совместная работа с датчиками уровня топлива

Заголовок раздела «Совместная работа с датчиками уровня топлива»

Алгоритм galileosky/mercury230_lls_5 поддерживает одновременную работу счётчика и до четырёх ДУТ с адресами 1…4.

Схема подключения счётчика вместе с ДУТ

Отличия в настройке: тип периферии RS-485 выбирается по составу периферии на шине —

Что висит на RS-485Тип периферии
только счётчик и ДУТТолько обработчики RS485 в Easy Logic (RS485FN 4)
+ фотокамера GalileoskyФотокамера Galileosky и ДУТ (RS485FN 2)
+ фотокамера стороннего производителяОбработчик фотокамеры в Easy Logic и ДУТ (RS485FN 7)
+ ModbusModbus (RS485FN 8)
+ Modbus и ДУТДУТ и Modbus (RS485FN 9)

Совместная работа с Modbus доступна на приборах 10 с прошивкой 2.9 и выше и 7x с прошивкой 47.13 и выше.

Дополнительно включите в основном пакете теги RS485. ДУТ[x], где x — индекс датчика (адрес минус 1).

SCRIPT galileosky/mercury230_lls_5

После опроса счётчика прибор опрашивает ДУТ и пишет полученные данные в теги ДУТ. Данные уходят на сервер при записи очередной точки или вместе с данными счётчика.

Команда merc_status в этом алгоритме не поддерживается.

БайтСодержимое
0тег 02h — данные от Меркурий 230 AR-03 R
1сетевой адрес счётчика (hex → десятичное)
2статус: 0 — канал открыт, 1 — ошибка связи, 2 — CRC Error
3…5реактивная мощность суммарная
6…8, 9…11, 12…14реактивная мощность по фазам 1, 2, 3
15…17активная мощность суммарная
18…20, 21…23, 24…26активная мощность по фазам 1, 2, 3
27…29, 30…32, 33…35углы между гармониками фаз 1-2, 2-3, 1-3
36…38, 39…41, 42…44напряжение по фазам 1, 2, 3
45…47, 48…50, 51…53ток по фазам 1, 2, 3
54…56коэффициент мощности суммарный
57…59, 60…62, 63…65коэффициент мощности по фазам 1, 2, 3
66…67, 68…69, 70…71коэффициент искажения синусоидальности по фазам 1, 2, 3
72…74частота электросети
75…76температура внутри корпуса
77…80активная прямая энергия с момента сброса
81…84активная обратная энергия с момента сброса
85…88реактивная прямая энергия с момента сброса
89…92реактивная обратная энергия с момента сброса

Правила разбора (по протоколу счётчика):

  • Мощности (3…26). Два старших бита первого байта задают направления: левый — активной мощности, правый — реактивной; 0 — прямое, 1 — обратное. Второй и третий байты меняются местами, результат делится на 100. Пример: 40h 54h 04h0454h = 1108 → 11,08 вар/ч, направление обратное. Пример активной: 40h 28h 01h0128h = 296 → 2,96 Вт/ч, прямое.
  • Углы (27…35). Второй и третий байты меняются местами, результат делится на 100. Пример: 00h E0h 2Eh002EE0h = 12000 → 120°.
  • Токи (45…53). Второй и третий байты меняются местами, результат делится на 1000. Пример: 00h 1Ah 00h00001Ah = 26 → 0,026 А.
  • Коэффициенты мощности (54…65). Второй и третий байты меняются местами, делится на 1000. Пример: 40h AFh 01h01AFh = 431 → 0,431.
  • Коэффициенты искажения (66…71). Байты пары меняются местами, делится на 100. Пример: C9h 00h00C9h = 201 → 2,01.
  • Частота (72…74). Байты меняются местами, делится на 100. Пример: 00h 88h 13h001388h = 5000 → 50,00 Гц.
  • Температура (75…76). 0018h = 24 → 24 °C.
  • Энергия (77…92). Меняются местами байты в парах (1↔2 и 3↔4). Пример: 00h 00h 39h 04h0439h = 1081 Вт·ч = 1,081 кВт·ч.

Момент сброса изначально — момент сброса на заводе-изготовителе.

ПараметрОписание
mercury_qs, mercury_q1…q3реактивная энергия суммарная и по фазам, вар·ч
mercury_ps, mercury_p1…p3активная энергия суммарная и по фазам, Вт·ч
mercury_a12, mercury_a23, mercury_a13углы между гармониками фаз, градусы
mercury_u1…u3напряжение по фазам, В
mercury_i1…i3ток по фазам, А
mercury_kss, mercury_ks1…ks3коэффициенты мощности
mercury_fчастота сети
mercury_idсетевой адрес счётчика
mercury_state0 — канал открыт, 1 — ошибка связи, 2 — CRC Error
mercury_kg1…kg3коэффициенты искажения синусоидальности
mercury_tтемпература внутри корпуса
mercury_pa_plus, mercury_pa_minusактивная прямая и обратная энергия, кВт·ч
mercury_pr_plus, mercury_pr_minusреактивная прямая и обратная энергия, квар·ч
mercury_*_directionнаправления активной и реактивной мощностей
СообщениеЧто означает
settings had loadedнастройки загружены из CAN-тегов
Timeout %d secсколько осталось до следующего опроса; печатается каждые 10 с
Адрес счетчика - %d, Запрашиваемый адрес - %dзапрашиваемый адрес
Онлайн адрес - %dадрес счётчика, который отвечает; 0 — счётчик не в сети
Response is not receivedканал открыт, но на запрос счётчик не ответил — проверьте подключение
Channel is not openот счётчика с этим адресом не пришло ни байта — проверьте подключение
Mercury. CRC Errorканал повреждён или счётчик передаёт неверные данные

В диагностику также выводятся текущая потребляемая мощность, напряжения и токи по трём фазам и показания активной и реактивной энергии.

Для варианта с ДУТ дополнительно: Адрес сч-ка - <addr>, CRC: <crc> — ожидаемая контрольная сумма, crc[0]: <crc> — полученная, Res. OK — данные получены и отправлены, Dev. N <addr> no response — ДУТ не отвечает, Temp %d Level %d — температура и уровень от ДУТ.

⚙ Каналы диагностики

Счётчик учитывает активную и реактивную энергию нарастающим итогом, измеряет мгновенные значения активной, реактивной и полной мощности по фазам и по сумме, фазные токи и напряжения, углы между фазными напряжениями, частоту сети и коэффициенты мощности. Ставится на DIN-рейку 35 мм, предназначен для работы внутри помещений (в шкафу, щитке). Поддерживает протоколы DL/T645 и Modbus RTU по RS-485.

Схема подключения Pilot SPM93 Схема подключения Pilot SPM93, вариант 2

Счётчик не передаёт данные, если рабочее напряжение подано только на одну фазу — нужно напряжение минимум на двух.

  1. Сетевой адрес — 1. Войдите в меню настроек клавишей 3, ещё раз нажмите 3 для изменения настроек, подтвердите стандартный пин-код 0000 клавишей 3, выберите изменение адреса клавишей 3, клавишами 1 и 2 выставьте 001 и подтвердите клавишей 3. Клавишей 2 переходите к следующему параметру; символ 4 означает наличие связи по RS-485.

    Настройка сетевого адреса Pilot SPM93

  2. Скорость — 9600 бод.

    Настройка скорости Pilot SPM93

  3. Протокол — Modbus RTU.

    Выбор протокола Pilot SPM93

  1. Включите в основном пакете тег Массив пользователя.

  2. Выберите тип периферии RS-485. Если на шине только счётчик — Только обработка RS485 в Easy Logic (RS485FN 4). Если есть другая периферия: Фотокамера Galileosky и ДУТ (RS485FN 2) либо Обработчик фотокамеры в Easy Logic и ДУТ (RS485FN 7).

    Порядок опроса периферии зависит от выбранного типа; обработка RS-485 в алгоритмах всегда идёт последней.

  3. В CAN-сканере отметьте Не обнулять данные — алгоритм хранит период записи внеочередных точек в теге CAN32BITR14.

  4. Загрузите алгоритм и дождитесь появления его имени в идентификационных данных прибора. Если этого не произошло за 10 минут — перезагрузите прибор и повторите загрузку.

Быстрая настройка списком команд:

MAINPACKBIT 185,1
RS485FN 4
SCRIPT galileosky/pilot_spm93
КомандаЧто делаетОтвет
pilot_save_p_timeout <N>период записи внеочередных точек, с
pilot_addr <n>,<m>опрашивать датчики с адресами от n до mAddreses - <n>, <m>
pilot_sp_flag <n>1 — включить запись внеочередных точек, 0 — отключитьSPflag - <n>

По умолчанию внеочередные точки пишутся раз в секунду; остальные точки — по общим настройкам трека. pilot_save_p_timeout 0 отключает запись внеочередных точек. Заданный интервал пишется в тег CAN32BITR14не используйте этот тег в других алгоритмах и при работе с CAN-шиной машины.

По умолчанию опрашивается один датчик; pilot_addr 1,5 заставит опрашивать адреса 1, 2, 3, 4, 5 по порядку.

БайтыСодержимоеДелитель
0тип данных — 09h, данные от электросчётчика
1сетевой адрес счётчика
2состояние связи
3резервный байт
4…7, 8…11, 12…15напряжение по фазам A, B, C, В÷ 100
16…19, 20…23, 24…27линейное напряжение A-B, B-C, A-C, В÷ 100
28…31, 32…35, 36…39ток по фазам A, B, C, А÷ 1000
40…43среднее потребление тока по фазам, А÷ 100
44…47, 48…51, 52…55активная мощность по фазам A, B, C, Вт÷ 100
56…59суммарная активная мощность, Вт÷ 100
60…63, 64…67, 68…71реактивная мощность по фазам A, B, C, вар÷ 100
72…75суммарная реактивная мощность, вар÷ 100
76…79, 80…83, 84…87полная мощность по фазам A, B, C, В·А÷ 100
88…91суммарная полная мощность, В·А÷ 100
92…95, 96…99, 100…103коэффициент мощности по фазам A, B, C÷ 1000
104…107суммарный коэффициент мощности÷ 1000
108…111частота, Гц÷ 100
112…115активная прямая энергия, кВт·ч÷ 10
116…119активная обратная энергия, кВт·ч÷ 10
120…123общая активная энергия, кВт·ч÷ 10
124…127реактивная прямая энергия, квар·ч÷ 10
128…131реактивная обратная энергия, квар·ч÷ 10
132…135общая реактивная энергия, квар·ч÷ 10

Байт 2 массива, на сервере — e_meter_state:

КодЗначение
0успешный обмен данными
1принятый код функции не может быть обработан
2адрес данных, указанный в запросе, недоступен
3значение в поле данных запроса недопустимо
4невосстанавливаемая ошибка при выполнении затребованного действия
5запрос принят и обрабатывается, но это требует много времени (защита от тайм-аута)
6устройство занято, повторите запрос позже
7устройство не может выполнить заданную программную функцию
8ошибка паритета при чтении расширенной памяти
9ошибка контрольной суммы
10получен ответ некорректного размера
ПараметрОписание
e_meter_addrсетевой адрес счётчика
e_meter_stateсостояние связи (см. таблицу выше)
e_meter_u_a, _u_b, _u_c, _u_ab, _u_bc, _u_acнапряжения по фазам и линейные, В
e_meter_i_a, _i_b, _i_c, _i_mтоки по фазам и среднее, А
e_meter_active_p_a…_p_tактивная мощность по фазам и суммарная, Вт
e_meter_reactive_p_a…_p_tреактивная мощность по фазам и суммарная, вар
e_meter_apparent_p_a…_p_tполная мощность по фазам и суммарная, В·А
e_meter_p_factor_a…_tкоэффициенты мощности
e_meter_freqчастота сети
e_meter_imp_kwh, e_meter_exp_kwh, e_meter_total_kwhактивная прямая, обратная и общая энергия, кВт·ч
e_meter_imp_kvarh, e_meter_exp_kvarh, e_meter_total_kvarhреактивная прямая, обратная и общая энергия, квар·ч
  • Схемы подключения к Base Block (BaseBlockConnect, BaseBlockConnectLls) — прибор вне области поддержки.
  • Скриншоты конфигуратора 5 и окна Wialon заменены ссылками go:// и текстом.
  • Донорская обзорная страница «Электросчётчики» без собственного содержания слита в эту статью.

См. также: Последовательные порты RS-232 и RS-485 · Поиск параметров в CAN-шине · Внешние CAN-модули: CAN-LOG, SEO CANlog, DTA-CAN · Тахографы · Передача данных на сервер · Вкладка «Терминал»