[Модуль] Энергомера (energomera)
Модератор: immortal
-
- Сообщения: 1473
- Зарегистрирован: Сб окт 12, 2013 11:03 pm
- Благодарил (а): 49 раз
- Поблагодарили: 327 раз
Re: Модуль Энергомера
Выложил исправленную версию. На тест.
Первый символ пока пропатчил. По хорошему нужно разбираться
Также добавил:
- Документацию и логи
- Добавил тестовый набросок для Mercury230
- Добавил тестовый набросок для iek411152
Не помню чем закончились наброски у кого есть счётчики, попробуйте запустить тест
Первый символ пока пропатчил. По хорошему нужно разбираться
Также добавил:
- Документацию и логи
- Добавил тестовый набросок для Mercury230
- Добавил тестовый набросок для iek411152
Не помню чем закончились наброски у кого есть счётчики, попробуйте запустить тест
Linux, Raspberry PI, MySensors
Connect: http://connect.smartliving.ru/profile/53
Мои проекты: http://smartliving.ru/profile/4
Connect: http://connect.smartliving.ru/profile/53
Мои проекты: http://smartliving.ru/profile/4
-
- Сообщения: 1473
- Зарегистрирован: Сб окт 12, 2013 11:03 pm
- Благодарил (а): 49 раз
- Поблагодарили: 327 раз
Re: Модуль Энергомера
Добавил исправления получения пустых данных
Linux, Raspberry PI, MySensors
Connect: http://connect.smartliving.ru/profile/53
Мои проекты: http://smartliving.ru/profile/4
Connect: http://connect.smartliving.ru/profile/53
Мои проекты: http://smartliving.ru/profile/4
- lanket
- Сообщения: 1168
- Зарегистрирован: Вт окт 14, 2014 11:27 pm
- Откуда: Санкт-Петербург
- Благодарил (а): 260 раз
- Поблагодарили: 163 раза
Re: Модуль Энергомера
Делиться опытом никто не хочет, буду брать прибор учёта с закрытыми глазами.
Спасибо единственному отозвавшемся serghei.
Можно ли передавать считанные данные с прибора учёта газа и электроэнергии через сеть MySensors.
Если да, то подскажите пожалуйста набор железок для реализации. Nrf, ардуинку и шлюз MySensors это понятно.
И пример скетча ноды MySensors , если есть таковой, для передачи данных снятых с прибора учёта.
Заранее спасибо.
Отправлено с моего Redmi Note 3 через Tapatalk
Спасибо единственному отозвавшемся serghei.
Вопрос к Вам, если можно.Ivan писал(а):...
Можно ли передавать считанные данные с прибора учёта газа и электроэнергии через сеть MySensors.
Если да, то подскажите пожалуйста набор железок для реализации. Nrf, ардуинку и шлюз MySensors это понятно.
И пример скетча ноды MySensors , если есть таковой, для передачи данных снятых с прибора учёта.
Заранее спасибо.
Отправлено с моего Redmi Note 3 через Tapatalk
Разработка голосового асистента для Мажордомо по любому ключевому слову.
Обсужение
gitHub 2й версии терминала
GitHub модуля для МД
gitHub сырого модуля 2й версии
Connect
Rasberry Pi 2, MDM, MySensors. И говорящий апельсин.



gitHub сырого модуля 2й версии

Rasberry Pi 2, MDM, MySensors. И говорящий апельсин.
-
- Сообщения: 2575
- Зарегистрирован: Пт ноя 06, 2015 10:22 am
- Откуда: Кишинёв
- Благодарил (а): 303 раза
- Поблагодарили: 282 раза
Re: Модуль Энергомера
Если вопрос ко мне , то лучше спросить у Ивана. Самих счетчиков у нас не продают. Если выгорит один стащить во " временное пользование" ( через недельку ), то буду пробовать. Тут на форуме выкладывали скетч для ардуины с протоколом 485 . Пробовал скомпилить для ЕСП - вроде не ругается.
Так что увы - ничем помочь не могу. Только считать импульсы (( Внимательно перечитайте ветку , наверное Меркурии 230 работают.
Так что увы - ничем помочь не могу. Только считать импульсы (( Внимательно перечитайте ветку , наверное Меркурии 230 работают.
AMS : ESP32 + NRF24 + 1Wire-I2C мост DS2482 + счетчик DS2423 + сеть MySensors + редактирование страниц в браузере + Upload по воздуху + SPIFFS
-
- Сообщения: 28
- Зарегистрирован: Сб ноя 29, 2014 12:20 am
- Благодарил (а): 7 раз
- Поблагодарили: 0
Re: Модуль Энергомера
Там не один, а три первых символа мусорных.Ivan писал(а):Спасибо за помощь.AlexK-71 писал(а):Вот рабочий на Raspberry Pi iek61107.class.php
Только у меня теперь читаются лишние символы
Первый символ мусорный. Что с этим делать пока не понятноКод: Выделить всё
rET0PE(12366.61)(8120.67)(4245.76)(0.00)(0.00)(0.00) rET0PE(12366.61)(8120.67)(4245.76)(0.00)(0.00)(0.00) rFREQU(50.01) bPOWEP(0.403358) VOLTA(226.33)
СпойлерПоказать
pi@raspberrypi:/var/www/modules/energomera $ php test.php
2017-03-09 21:26:30 Connecting COM
2017-03-09 21:26:30 Connected
2017-03-09 21:26:31 Send init #1
2017-03-09 21:26:31 Device is /EKT5CE301v11
:
2017-03-09 21:26:31 Send init #2
2017-03-09 21:26:31 model:
2017-03-09 21:26:32 Send init #3
2017-03-09 21:26:32 model: 0150300228373737373737290320024d4f44454c2833290d0a P0(777777) MODEL(3)
<br>
2017-03-09 21:26:32 Read POWEP() read: 030f02504f57455028302e32363739290d0a POWEP(0.2679)
Array ( [POWEP] => Array ( [0] => 0.2679 ) )
<pre>POWEP() = Array
(
[POWEP] => Array
(
[0] => 0.2679
)
)
</pre><br>
2017-03-09 21:26:32 Read FREQU() read: 032c0246524551552835302e30290d0a ,FREQU(50.0)
Array ( [FREQU] => Array ( [0] => 50.0 ) )
<pre>FREQU() = Array
(
[FREQU] => Array
(
[0] => 50.0
)
)
</pre><br>
2017-03-09 21:26:33 Read ET0PE() read: 03310245543050452831323834382e30323330343336290d0a455430504528393432382e37393837323332290d0a455430504528333431392e32323433323034290d0a455430504528302e30290d0a455430504528302e30290d0a455430504528302e30290d0a 1ET0PE(12848.0230436)
ET0PE(9428.7987232)
ET0PE(3419.2243204)
ET0PE(0.0)
ET0PE(0.0)
ET0PE(0.0)
Array ( [ET0PE] => Array ( [0] => 12848.0230436 [1] => 9428.7987232 [2] => 3419.2243204 [3] => 0.0 [4] => 0.0 [5] => 0.0 ) )
<pre>ET0PE() = Array
(
[ET0PE] => Array
(
[0] => 12848.0230436
[1] => 9428.7987232
[2] => 3419.2243204
[3] => 0.0
[4] => 0.0
[5] => 0.0
)
)
</pre><br>
2017-03-09 21:26:34 Disconnected
2017-03-09 21:26:30 Connecting COM
2017-03-09 21:26:30 Connected
2017-03-09 21:26:31 Send init #1
2017-03-09 21:26:31 Device is /EKT5CE301v11
:
2017-03-09 21:26:31 Send init #2
2017-03-09 21:26:31 model:
2017-03-09 21:26:32 Send init #3
2017-03-09 21:26:32 model: 0150300228373737373737290320024d4f44454c2833290d0a P0(777777) MODEL(3)
<br>
2017-03-09 21:26:32 Read POWEP() read: 030f02504f57455028302e32363739290d0a POWEP(0.2679)
Array ( [POWEP] => Array ( [0] => 0.2679 ) )
<pre>POWEP() = Array
(
[POWEP] => Array
(
[0] => 0.2679
)
)
</pre><br>
2017-03-09 21:26:32 Read FREQU() read: 032c0246524551552835302e30290d0a ,FREQU(50.0)
Array ( [FREQU] => Array ( [0] => 50.0 ) )
<pre>FREQU() = Array
(
[FREQU] => Array
(
[0] => 50.0
)
)
</pre><br>
2017-03-09 21:26:33 Read ET0PE() read: 03310245543050452831323834382e30323330343336290d0a455430504528393432382e37393837323332290d0a455430504528333431392e32323433323034290d0a455430504528302e30290d0a455430504528302e30290d0a455430504528302e30290d0a 1ET0PE(12848.0230436)
ET0PE(9428.7987232)
ET0PE(3419.2243204)
ET0PE(0.0)
ET0PE(0.0)
ET0PE(0.0)
Array ( [ET0PE] => Array ( [0] => 12848.0230436 [1] => 9428.7987232 [2] => 3419.2243204 [3] => 0.0 [4] => 0.0 [5] => 0.0 ) )
<pre>ET0PE() = Array
(
[ET0PE] => Array
(
[0] => 12848.0230436
[1] => 9428.7987232
[2] => 3419.2243204
[3] => 0.0
[4] => 0.0
[5] => 0.0
)
)
</pre><br>
2017-03-09 21:26:34 Disconnected
PS Отдельно огромное спасибо за фильтр пустых данных. Еще бы добавить округление отдельных параметров. Ну не нужны милливольты и миллиамперы.
-
- Сообщения: 708
- Зарегистрирован: Сб авг 18, 2012 10:21 am
- Благодарил (а): 26 раз
- Поблагодарили: 183 раза
Re: Модуль Энергомера
Хотел протестировать обновление в свете анонса поддержки меркурий-230.
Обновил модуль, вижу свои старые хвосты от экспериментов.
Удаляю штатно, ничего не удаляется.
Переустановил модуль с удалением, все по прежнему.
Перед установкой удалил папку energomera в modules, опять тоже самое.
Где еще подчистить следы?
В текущей ситуации указываю нужный сом порт, а именно СОМ3, нет никакой реакции.
Родная программа работает по прежнему без проблем.
Обновил модуль, вижу свои старые хвосты от экспериментов.
Удаляю штатно, ничего не удаляется.
Переустановил модуль с удалением, все по прежнему.
Перед установкой удалил папку energomera в modules, опять тоже самое.
Где еще подчистить следы?
В текущей ситуации указываю нужный сом порт, а именно СОМ3, нет никакой реакции.
Родная программа работает по прежнему без проблем.
-
- Сообщения: 28
- Зарегистрирован: Сб ноя 29, 2014 12:20 am
- Благодарил (а): 7 раз
- Поблагодарили: 0
Re: Модуль Энергомера
Иван, установил обновление и перестали забираться другие значения из массива кроме 0.
Спасибо.
Спасибо.
-
- Сообщения: 1473
- Зарегистрирован: Сб окт 12, 2013 11:03 pm
- Благодарил (а): 49 раз
- Поблагодарили: 327 раз
Re: Модуль Энергомера
MySensors ищите в соответствующем разделе. Также выкладывал все в комерческой ветке.
Насчет меркурия, сам модуль еще не поддердивает его. Есть только файлы набросков в исходниках.
Насчет индексов. У меня вроде пашит. Пойду перепроверю
Насчет меркурия, сам модуль еще не поддердивает его. Есть только файлы набросков в исходниках.
Насчет индексов. У меня вроде пашит. Пойду перепроверю
Linux, Raspberry PI, MySensors
Connect: http://connect.smartliving.ru/profile/53
Мои проекты: http://smartliving.ru/profile/4
Connect: http://connect.smartliving.ru/profile/53
Мои проекты: http://smartliving.ru/profile/4
-
- Сообщения: 28
- Зарегистрирован: Сб ноя 29, 2014 12:20 am
- Благодарил (а): 7 раз
- Поблагодарили: 0
Re: Модуль Энергомера
Разобрался с массивами.
Почему то у меня без настройки stty -icrnl -F $device меняет /r на /n и в итоге получаю разделитель /n/n и массив строкой $arr = explode("\r\n", $data); естественно не разбирается.
Как то эти 0D 0A преследуют
. То плодятся, то меняются... 
PS пока вернулся к $data = substr($data, 3, strlen($data)-3);, т.к. при
у меня периодически проскакивает мусор.
Почему то у меня без настройки stty -icrnl -F $device меняет /r на /n и в итоге получаю разделитель /n/n и массив строкой $arr = explode("\r\n", $data); естественно не разбирается.
Как то эти 0D 0A преследуют


PS пока вернулся к $data = substr($data, 3, strlen($data)-3);, т.к. при
Код: Выделить всё
$data = substr($data, 1, strlen($data)-3);
//??? Patch first char
if ((ord($data[0]) < 0x41) || (ord($data[0]) > 0x5A)) {
$data = substr($data, 2, strlen($data));
}
-
- Сообщения: 1473
- Зарегистрирован: Сб окт 12, 2013 11:03 pm
- Благодарил (а): 49 раз
- Поблагодарили: 327 раз
Re: Модуль Энергомера
Странно это всё. Давайте приведём к одному видуAlexK-71 писал(а):Разобрался с массивами.
Почему то у меня без настройки stty -icrnl -F $device меняет /r на /n и в итоге получаю разделитель /n/n и массив строкой $arr = explode("\r\n", $data); естественно не разбирается.
Как то эти 0D 0A преследуют. То плодятся, то меняются...
PS пока вернулся к $data = substr($data, 3, strlen($data)-3);, т.к. приу меня периодически проскакивает мусор.Код: Выделить всё
$data = substr($data, 1, strlen($data)-3); //??? Patch first char if ((ord($data[0]) < 0x41) || (ord($data[0]) > 0x5A)) { $data = substr($data, 2, strlen($data)); }
У меня сейчас в модуле стоит:
Код: Выделить всё
public function confNotRNMode(){
...
"stty -onlcr -isig -echo -F " . $this->_device
...
}
Linux, Raspberry PI, MySensors
Connect: http://connect.smartliving.ru/profile/53
Мои проекты: http://smartliving.ru/profile/4
Connect: http://connect.smartliving.ru/profile/53
Мои проекты: http://smartliving.ru/profile/4