Вопросы и замечания по статьям и схемам, представленным на нашем сайте

При поддержке РадиоКОТструктор.ру


Ответить

Re: Модуль отображения информации МИРТ-830 из ардуины

Пн июн 27, 2022 06:54:04

У меня версия 2
Я думал, что речь идёт о прошивке пульта

v1 и v2 - прошивки отличаются, схемы тоже.

Re: Модуль отображения информации МИРТ-830 из ардуины

Пт авг 26, 2022 14:23:53

Всем привет. Собрал устройство. Прошивка последняя выложенная.
Есть ряд проблем.
1 не отображает тариф Т3 почему-то. В пульте он есть. Судя по сумме тоже есть.
2 вылезают аномальные значения по напряжению. Толи у меня на линии ток, толи так данные получает устройство. Проставки на одной фазе одновременно с повышением на другой.
Вложения
Screenshot_2022-08-26-14-21-45-128_com.opera.browser.jpg
(193.92 KiB) Скачиваний: 180
Screenshot_2022-08-26-14-21-50-211_com.opera.browser.jpg
(195.34 KiB) Скачиваний: 121
Screenshot_2022-08-26-14-21-39-363_com.opera.browser.jpg
(195.24 KiB) Скачиваний: 122

Re: Модуль отображения информации МИРТ-830 из ардуины

Вт авг 30, 2022 22:21:41

Всем привет. Собрал устройство. Прошивка последняя выложенная.
Есть ряд проблем.
1 не отображает тариф Т3 почему-то. В пульте он есть. Судя по сумме тоже есть.
2 вылезают аномальные значения по напряжению. Толи у меня на линии ток, толи так данные получает устройство. Проставки на одной фазе одновременно с повышением на другой.

Добрый день!
1. Ну я просто парсер для Т3 не делал - у меня двухтарифный счётчик. Но там в скетче можно понять, где допилить.
2. Я думаю, это ровно то, о чем писал я, и с чем столкнулся shev377. Я бросил эту затею, и не снимаю действующие параметры. Беру только Т1 и Т2

Добавлено after 1 minute 51 second:
У меня версия 2
Я думал, что речь идёт о прошивке пульта

v1 и v2 - прошивки отличаются, схемы тоже.

У меня, кстати, тоже пульт v2, и тоже нет вывода действующих значений. Только Т1, Т2 и сумма. А, ну ещё время выводит.

Re: Модуль отображения информации МИРТ-830 из ардуины

Ср окт 19, 2022 16:47:20

А как попасть в web интерфейс после того, как всё настроил?
Он у меня запрашивает логин/пароль. Что-то я не помню, при настройке такого пункта. В самой прошивке тоже не нашёл где вообще это есть.

_____________
Отвечу сам себе:
Используется библиотека IotWebConf

Для доступа в web имя пользователя "admin" пароль "пароль от wifi "

Re: Модуль отображения информации МИРТ-830 из ардуины

Чт окт 27, 2022 23:03:32

Надо бы докопаться до истины аномальных значений, но бросил на даче макетку год назад с кривым кодом - а оно шлёт себе значения, как-то работает - ну и нет ничего более постоянного, чем временное :))
Я склоняюсь к тому, что счётчик периодически ловит какой-нибудь запрос статуса или входит в какой-нибудь режим запроса доп информации и начинает отвечать не на наш запрос

Re: Модуль отображения информации МИРТ-830 из ардуины

Сб янв 21, 2023 19:43:30

Подниму тему. А никто протоколом от МИРТЕК не богат?

Есть в щитке счетчик "Каскад-1-MT-W1-A1-230-5-60A-S-OV3" однофазный, многотарифный. Хочу собрать оптопорт с возможность передавать данные удаленно (WiFi, Bluetooth).

К щитку не набегаешься. За 500 рублей купил на авито б/у точно такой же. Начал разбираться. Через оптопорт могу прочитать тарифы, напряжение, силу тока и т.п.

Но. Два счетчика присылают ответ разной длины на одну и туже команду. Тот который купил на один байт больше (например 42), а тот который в щитке на один меньше (например 41).

Вот например ответ на запрос тарифов.

Код:
735520008d4effff0500000000ae55 - запрос 15
73551a00ffffxxxx0530067500  |3af51400|a2203001|0000|44050600|91240600|65cb0800|00000000|bc55 - ответ 41
73551a00ffff8d4e053006731100|bad62300|a2203001|0000|ea260b00|598d0a00|77220e00|00000000|6d55 - ответ 42
              head          | sum    |    ?   | ?  | tariff1| tariff2| tariff3| tariff4|


MeterTools - оригинальная программа от производителя - читает оба корректно.

Не поняв, как определять размер хедера, тяжело написать универсальный код.

Спасибо.

Re: Модуль отображения информации МИРТ-830 из ардуины

Ср фев 01, 2023 01:34:32

Тоже хотел бы присоединиться к вопросу о протоколе.
На основе выложенных тут скетчей (спасибо!) собрал свой вариант, но словил проблемы, что уже описаны:
1. периодически счетчик перестаёт отвечать на запросы до смены тарифа в следующие сутки
поставил опрос раз в 30 минут, наблюдаю
2. иногда прилетают неадекватные значения напряжений и сил тока
после добавления контроля CRC проблема не ушла

А так добавил автообнаружение в homeassistant, отображение значений на странице настроек esp. Разобраться бы с протоколом и можно выкладывать.

Re: Модуль отображения информации МИРТ-830 из ардуины

Ср фев 01, 2023 21:27:47

Хорошо, протокола нет, но может кто поделится знаниями и мыслями, как быть с CRC? Сейчас объясню.

Есть абсолютно одинаковых два электросчетчика. Один в щитке, второй купил занедорого на авито для экспериментов. Так вот они на одни и теже запросы присылают ответы с разницей на один байт. Ну я это уже приводил https://www.radiokot.ru/forum/viewtopic ... 9#p4358269

Так вот. У того, который присылает на один байт меньше, с CRC все впорядке, пробегавшая здесь функция, немного мной адаптированная на любую длину пакета, прекрасно все проверяет и все сходится.


А вот у того, который присылает ответ на один байт больше эта функция не подходит, значение получается другое.

Вопрос - может кто-то знает алгоритм расчета таких ответов? А возможно кто-то и объяснит разницу в длине ответа и научит, как это определять?

Это ответы на один байт больше.

А это на один байт меньше, где все нормально.

А еще, третий байт, который содержит или 0x20, или 0x21 в зависимости от длины запроса. Так вот, у меня еще проскочил такой - 0x24


Не, я конечно пока сделал без проверки CRC, но это же не правильно.

Добавлено after 3 hours 6 minutes 13 seconds:
Короче, скажите спасибо моему сыну, я не смог найти эту информацию, а он смог.

https://habr.com/ru/company/spd/blog/576790/

Читать про самый последний счетчик - IEK «STAR 104/1». Полного конечно протокола нет, но хотя бы понятно, как построен пакет запроса и ответа.

Удачи.

Re: Модуль отображения информации МИРТ-830 из ардуины

Чт фев 02, 2023 16:15:08

В общем, если кому интересно, то я сделал удаленное снятие показаний через Bluetooth LE (для квартиры дальности хватает), с последующей передачей информации в Home Assistant.

Готового образца пока нет, но на макетке все работает.

Подробности тут.

В принципе, никто не мешает переписать код для той же esp32. Свое устройство я предполагаю разместить в обычной вилке на 220

Изображение

Изображение

Re: Модуль отображения информации МИРТ-830 из ардуины

Пн фев 06, 2023 12:17:58

Хорошо, протокола нет, но может кто поделится знаниями и мыслями, как быть с CRC? Сейчас объясню.
А еще, третий байт, который содержит или 0x20, или 0x21 в зависимости от длины запроса. Так вот, у меня еще проскочил такой - 0x24

Видимо, всё идет от битов третьего байта.

Перехватываю общение с пультом и в третьем байте получаю варианты
20 00100000
7 00000111
31 00110001
11 00010001
A0 10100000

Если старший бит равен 1, то CRC совпадает с указанной в запросе.
Следующий бит всегда 0.
Следующий - при запросе 1, при ответе 0.
Далее 5 бит, как писали выше, значения которых равны длине блока данных.

Re: Модуль отображения информации МИРТ-830 из ардуины

Вт фев 07, 2023 13:15:51

В общем у меня радостная весть :)

Почитав эту статью (которую я уже приводил), поступил точно так же, как автор - отправил запрос производителю счетчиков IEK. Вот они неделю думали и прислали мне вордовский документ. Никаких ограничений на распространение они не оговорили.

Ссылку на всякий случай уберу под спойлер. Удачи всем.

Re: Модуль отображения информации МИРТ-830 из ардуины

Пт фев 10, 2023 14:00:58

Братва! А кто нибудь копал в направлении счетчиков NP523.20D-1P1ALNI производства "Матрица"? Для их счетчиков есть гаджет по удаленному снятию информации RUD 512. Обмен данными через розетку. Радиоканала нет.

Re: Модуль отображения информации МИРТ-830 из ардуины

Чт мар 02, 2023 13:56:13

...RUD 512...


Как то рисовал схемку с платы.
Цифровую часть снял, а с аналоговой не стал возиться.
Потом не было времени, да и нужды особой тоже. Чип залочен.
Вложения
Schematic_RUD 512-L.7z
(18.39 KiB) Скачиваний: 82

Re: Модуль отображения информации МИРТ-830 из ардуины

Пн мар 06, 2023 14:38:41

Все это здорово но именно для миртека кто-нибудь победил проблему с аномальными значениями? Я не понял как поправить это. В Ноme Assistant я ограничил пики, но не сильно спасает.

Re: Модуль отображения информации МИРТ-830 из ардуины

Чт мар 16, 2023 17:12:33

Все это здорово но именно для миртека кто-нибудь победил проблему с аномальными значениями? Я не понял как поправить это. В Ноme Assistant я ограничил пики, но не сильно спасает.

Может замена управляющих символов происходит, а мы этого не учитываем? Ну как вариант ...

Re: Модуль отображения информации МИРТ-830 из ардуины

Пн май 15, 2023 09:30:11

Я например взял за основу My_Mirtek_GW_upd2, добавил себе вывод показаний на страничку с настройками.
Добавил переменные для того чтобы постоянно не делать преобразования и их вывожу, а так же для MQTT сделал простую проверку показаний перед отправкой, так как парсинг 5 (суммарные показания) и 7 (действующие значения токов и напряжения) вызываются сначала для серийного порта, а потом для передачи на MQTT, то в парсинге для серийного порта добавил в конец переменную err, если значения превышают пиковые то просто это все не проходит в MQTT.
Пока тестирую, но конечно это не дело.
А кто-то делал парсинг 1,2,3,4,6,8,9 посылок-ответов?
Как насчет даты/времени?
Вложения
My_Mirtek_GW.zip
за основу взят My_Mirtek_GW_upd2, сделал небольшие модификации
(6.92 KiB) Скачиваний: 56

Re: Модуль отображения информации МИРТ-830 из ардуины

Вс май 21, 2023 18:30:33

Немного поковырял код:
1. Добавлен парсер даты/времени в 1 запросе
2. На веб страницу и в MQTT выводится примерное последнее время запроса
3. Добавил вывод на веб страницу математического подсчета мощности по фазам
4. Добавил подуровень каталог топика MQTT = адресу счетчика, теперь можно чтобы несколько счетчиков присылались на один и тот же MQTT брокер, чтобы можно было различить какие данные от какого счетчика

ВАЖНО!!!
5. найдены пару багов:
Код:
#define STATUS_PIN 16
вроде указывает на несуществующий светодиод, поправил на 2 GPIO
Код:
#define STATUS_PIN 2


Частые мигания (первые 30 секунд) - поднята точка доступа для конфигурирования;
Редкие мигания - подключение к Wifi;
Горит и очень редкое мигание (как ни странно сделано на потухание, наверное надо библиотеку ковырять) - соединено с MQTT брокером.

Внутренний светодиод на ESP32 Dev Kit v1 висит там), соответственно GDO2 переместил на D22
было:
Код:
int gdo0 = 2

стало:
Код:
int gdo0 = 22

Сначала думал что именно из-за этого получаются аномальные значения, но вроде нет, работает в коде отсечка для постинга в MQTT если напряжения превышают 400В или 60А, можете поправить на свои значения:
Код:
v1>400 or v2>400 or v3>400 or i1>60 or i2>60 or i3>60

Костыль конечно, но вроде так будет правильнее.

Ковыряю дальше.
На столбе 3 счетчика у нас, 2 3-х фазные, 1-однофазный, с однофазного получает только суммарные показания кВт/ч, а с обоих 3-х фазных нормально получает все нужные параметры.

Кстати на китайском CC1101 с али надписи GDO написаны как GOD, а так же MISO не подписано, оно GDO/GOD1

Немного картинок:


Добавлено after 4 hours 34 minutes 4 seconds:
Если вдруг кто-то использует передачу команд для запросов через MQTT, то поправьте следующий код
Код:
mqttClient.subscribe("mirtek/" + (String)MeterAdressValue + "action");

на
Код:
mqttClient.subscribe("mirtek/" + (String)MeterAdressValue + "/action");

перед action слеш пропустил, когда еще уровень добавлял, чтобы на одном сервере можно было бы работать с разными счетчиками одновременно.
Вложения
My_Mirtek_GW_upd3.zip
Обновленный код прошивки, за основу взят My_Mirtek_GW_upd2
(7.33 KiB) Скачиваний: 61

Re: Модуль отображения информации МИРТ-830 из ардуины

Чт май 25, 2023 20:36:06

v1>400 or v2>400 or v3>400 or i1>60 or i2>60 or i3>60
Костыль конечно, но вроде так будет правильнее.

Увы, но делал более строгий контроль значений, так вот иногда они умудряются прилетать практически нормальными, но рандомными. Такое редко бывает, но прилетали показания с меньшими значениями по тарифам например, или нагрузка в 50А :) То есть, нужно всё-таки лезть в суть.

Эх, неужели за 3 года в форум так никто и не заглянул из миртековских программистов - энтузиастов, готовых помочь :))
Нам главное весь протокол-то не нужен, просто подсказка о том что это за случайные ответы счётчика и как с ними бороться)

Может быть у кого-то появилась возможность отправить запрос от обслуживающей организации, на получение протокола, для интеграции во "внутреннюю архитектуру мониторинга организации" или что-то вроде того? :))

SysCat, Спасибо за труд, пришло время обновить мой говнокод на что-то более прикольное с вебинтерфейсом :)

Re: Модуль отображения информации МИРТ-830 из ардуины

Чт май 25, 2023 21:33:08

shev377, спасибо за отзыв, может как-то онлайн собрать энтузиастов по этому счетчику и вместе сделать нормальный продукт для любителей, дачников много, не всем удобно в MQTT, вот на днях планирую народный мониторинг прикрутить, так же на столбе в доступе радиоканала есть несколько 3-х фазных счетчиков и несколько однофазных.

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

Там в парсере же проверяется номер счетчика, соответственно если номер не совпадает, то пакет не разбирается, это как раз и защита от ответа несколько счетчиков одновременно в эфир.

Можно вместе поковырять и сделать удобную вещь.
Думаю что если примерную плату сделать под размер USB свистка то воткнув в телефонную зарядку - любой дачник почти сможет пользоваться им. Надо найти оптимальный по цене вариант, может что-то попроще чем EPS32, может сделать и батарейное питание.
Например моему коллеге это стало интересно - получение показаний удаленно, летом не так критично, так как много и часто на дачу ездят, а вот снимать показания зимой для передачи в энергокомпанию - нужное дело.

Думаю что спрос на платки будет как и на само законченное решение, так что есть над чем подумать.

А так всегда рад критике и помощи, ну и от меня по-возможности помощь.

Могу попробовать от юр лица отправить письмо, если напишите рыбу.
А так же ребенок сейчас пробует переписать под ESP-IDF.

А так же думаю что парсинг надо в конец запросов перенести, что бы не разбирать отдельно для parsing_5 и parsing_5_mqtt, думаю что надо превратить parsing_mqtt просто в send_mqtt, так же сделать send_serial, а парсинг в запросах (RequestPacket_), а в сендерах просто отправка в нужное место значений уже разобранных переменных.

Может стоит временно ТГ канал сделать чтобы делится соображениями и мыслями?

Re: Модуль отображения информации МИРТ-830 из ардуины

Чт май 25, 2023 22:55:05

Думаю что спрос на платки будет как и на само законченное решение, так что есть над чем подумать.


Подозреваю, что лучше не делать коммерческий продукт, могут возникнуть вопросы насчёт прав пользования протоколов счётчиков и правомерности его получения)
Считайте вы сделаете пользователям выбор: купить кривой радиомодем от разработчиков за неадекватный прайс, или гораздо более функциональное, законченное устройство за копейки.
Так что я думаю логический финал проекта - опенсурс проект, со ссылкой на заказ готовых плат на JlcPcb и прошивкой на гитхабе


Можно вместе поковырять и сделать удобную вещь.
Надо найти оптимальный по цене вариант, может что-то попроще чем EPS32, может сделать и батарейное питание.

В идеале - должно быть реализовано несколько протоколов основных счётчиков: Меркуриев, Миртеков, Энергомеры (их сейчас в квартирах поголовно ставят), IEK, и прочих..
Возможно кастом в стиле "укажите строку для запроса и маску ответа".
С выбором куда слать запросы, в UART, в радио с выбором параметров связи и прочих штук.
Ну это прям оверкилл если делать.

Батарейное питание - нафиг, тогда нельзя будет сделать график нагрузки в веб/HomeAssistant, от частых запросов батарейка будет дохнуть слишком быстро.
С другой стороны, можно воткнуть мелкий ионистор или 3 AA развязанные диодом, и при пропаже питания (повесить оптрон на вход) - делать последний запрос в счётчик, определять пропало ли питание или просто выдернули девайс из розетки, слать куда-нибудь уведомление о событии и впадать в глубокий анабиоз.

В идеале - все данные должны отображаться в веб интерфейсе, возможно со статистикой (где ее хранить только вопрос), возможность отправки в телеграмм событий и показаний раз в n часов, ну и mqtt с автодискавери.

а вот снимать показания зимой для передачи в энергокомпанию - нужное дело.

Ну по сути, это уже не сильно актуально на самом деле. Практически везде, где устанавливаются подобные счетчики на столбах - автоматически собирают показания и отправляют их в личный кабинет раз в месяц, для этого их такие умные и устанавливали. А где нет - то в ближайшее время заменят на умные. Борьба с неплательщиками, типа. Потому и счётчики в недоступном месте, где-нибудь на столбе.
Так что это скорее баловство, как мне кажется. Лично для себя - хотел иметь текущие показания, нагрузку и напряжение по всем фазам, с обновлением раз в 10 минут

Могу попробовать от юр лица отправить письмо, если напишите рыбу.

Уфф, вот тут точно нужна помощь сторонних наблюдателей :))


Может стоит временно ТГ канал сделать чтобы делится соображениями и мыслями?

Я думаю нужно подождать энтузиастов с первых страниц, особенно Vittaly7 и уже делать чат. Вдвоём точно ничего путного не сообразим, я уже года два назад платку бросил в незаконченном виде, "авось и так работает" :))
Слишком намаялся со сбором протоколов ардуиной (ковырял параллельно еще irda-uart и modbus к другим счётчикам), без нормального логического анализатора, выработав аллергию к задумке) Особенно долго парили мозги как раз Энергомера с UART-IRDA портом, под который нужен особенный ик-порт-модуль, и Миртек)

UPD:
кстати, а может быть дело в том, что в какой-то момент управляющая организация может авторизовываться на счётчике и что-то запрашивать по таймеру, подвешивая порт счётчика? Может быть мы пытаемся сделать запрос от другого пользователя, и счётчик нас как-то блочит на полчасика? Тогда нужно попробовать сначала отправлять какую-то команду деавторизации/отключения от счётчика перед запросом. МетерТулз вроде что-то отсылал в счётчик при закрытии окна. Или может быть счётчик периодически загоняют в какой-нибудь режим настройки, отправляя новые тарифы/время, и "забывают" выйти из этого режима настройки? Кажется звучит как рабочий вариант
Ответить