[Модуль] Энергомера (energomera)
Модератор: immortal
-
- Сообщения: 2801
- Зарегистрирован: Пн дек 26, 2016 9:51 am
- Откуда: Екатеринбург
- Благодарил (а): 380 раз
- Поблагодарили: 694 раза
- Контактная информация:
Re: Модуль Энергомера
Не знаю как энергомера, но у других счетчиков не ИК порт, а оптический. И для сопряжения необходим кабель оптического сопряжения. Я купил для экспериментов такой, лежит без дела. Под виндой штатное ПО счетчиков через него работает, а вот корректно настроить при подключении к роутеру не полуилось. Вопрос в итоге решел переходником USB-RS485.
Если вам помогло данное сообщение, не поленитесь нажать кнопку "спасибо".
CONNECT | Оборудование | Блог | Дополнения | Email | Telegram
CONNECT | Оборудование | Блог | Дополнения | Email | Telegram
- dioxin
- Сообщения: 175
- Зарегистрирован: Вт фев 14, 2017 4:43 pm
- Откуда: Иваново
- Благодарил (а): 15 раз
- Поблагодарили: 46 раз
Re: Модуль Энергомера
Оптическое сопряжение - это не красный светодиодик мигает с частотой, чем больше нагрузка тем быстрее ? Кто-то умудряется считывать фотоэлементом эти мигания и конвертить в киловатты потребления. Если бы у меня не было на счетчике RS485, тоже бы пошел по этому пути.
Алиска прописана на Debian 11 | Мой канал на youtube по MajorDomo
-
- Сообщения: 2801
- Зарегистрирован: Пн дек 26, 2016 9:51 am
- Откуда: Екатеринбург
- Благодарил (а): 380 раз
- Поблагодарили: 694 раза
- Контактная информация:
Re: Модуль Энергомера
Нет, порт оптического сопряжения не мигает в видимом диаппазоне.
Если вам помогло данное сообщение, не поленитесь нажать кнопку "спасибо".
CONNECT | Оборудование | Блог | Дополнения | Email | Telegram
CONNECT | Оборудование | Блог | Дополнения | Email | Telegram
-
- Сообщения: 284
- Зарегистрирован: Сб ноя 24, 2012 11:47 am
- Благодарил (а): 29 раз
- Поблагодарили: 28 раз
Re: Модуль Энергомера
Может кто подскажет, что я делаю не так.
Исходные данные:
- МДМ на win7
- счетчик меркурий 233
- китайский переходник usb-rs485, в системе виден как порт COM3.
В родной программе от счетчика все данные считываются, все работает. В сниффере последовательного порта обмен идет при закрытии проги порт закрывается.
В МДМ в модуле 'Энергомера' ставлю настройки serial - COM3. Жму кнопку 'обновить' на странице модуля, но в сниффере вижу, что порт не открывается, никаких запросов к счетчику не идет. Соответственно в МДМ нет данных по счетчику. Цикл 'energomera' запускал, но он сразу же останавливается, но в логе пусто, просто останавливается и все. Может что-то в файлах нужно поправить под м
'Меркурий'? Но странно, что COM-порт даже не пытается открыться ...
Исходные данные:
- МДМ на win7
- счетчик меркурий 233
- китайский переходник usb-rs485, в системе виден как порт COM3.
В родной программе от счетчика все данные считываются, все работает. В сниффере последовательного порта обмен идет при закрытии проги порт закрывается.
В МДМ в модуле 'Энергомера' ставлю настройки serial - COM3. Жму кнопку 'обновить' на странице модуля, но в сниффере вижу, что порт не открывается, никаких запросов к счетчику не идет. Соответственно в МДМ нет данных по счетчику. Цикл 'energomera' запускал, но он сразу же останавливается, но в логе пусто, просто останавливается и все. Может что-то в файлах нужно поправить под м
'Меркурий'? Но странно, что COM-порт даже не пытается открыться ...
-
- Сообщения: 119
- Зарегистрирован: Вт ноя 08, 2016 4:27 pm
- Благодарил (а): 11 раз
- Поблагодарили: 10 раз
Re: [Модуль] Энергомера (energomera)
Кому интересно вот видео с настройкой энергомера СЕ 301:
https://www.youtube.com/watch?v=j1cXd8Aio9Q
https://www.youtube.com/watch?v=j1cXd8Aio9Q
- Рейтинг: 1.16%
- dioxin
- Сообщения: 175
- Зарегистрирован: Вт фев 14, 2017 4:43 pm
- Откуда: Иваново
- Благодарил (а): 15 раз
- Поблагодарили: 46 раз
Re: Модуль Энергомера
А разве этот модуль поддерживает меркурии? Я писал сам. Видосик на моем канале.denis писал(а): ↑Чт окт 11, 2018 1:28 pmМожет кто подскажет, что я делаю не так.
Исходные данные:
- МДМ на win7
- счетчик меркурий 233
- китайский переходник usb-rs485, в системе виден как порт COM3.
В родной программе от счетчика все данные считываются, все работает. В сниффере последовательного порта обмен идет при закрытии проги порт закрывается.
В МДМ в модуле 'Энергомера' ставлю настройки serial - COM3. Жму кнопку 'обновить' на странице модуля, но в сниффере вижу, что порт не открывается, никаких запросов к счетчику не идет. Соответственно в МДМ нет данных по счетчику. Цикл 'energomera' запускал, но он сразу же останавливается, но в логе пусто, просто останавливается и все. Может что-то в файлах нужно поправить под м
'Меркурий'? Но странно, что COM-порт даже не пытается открыться ...
Алиска прописана на Debian 11 | Мой канал на youtube по MajorDomo
-
- Сообщения: 1473
- Зарегистрирован: Сб окт 12, 2013 11:03 pm
- Благодарил (а): 49 раз
- Поблагодарили: 327 раз
Re: Модуль Энергомера
Сначало добавте переменные которые хотите читать. И перепустите цикл. Модуль видит что читать нечего и даже не соединяетсяdenis писал(а):Может кто подскажет, что я делаю не так.
Исходные данные:
- МДМ на win7
- счетчик меркурий 233
- китайский переходник usb-rs485, в системе виден как порт COM3.
В родной программе от счетчика все данные считываются, все работает. В сниффере последовательного порта обмен идет при закрытии проги порт закрывается.
В МДМ в модуле 'Энергомера' ставлю настройки serial - COM3. Жму кнопку 'обновить' на странице модуля, но в сниффере вижу, что порт не открывается, никаких запросов к счетчику не идет. Соответственно в МДМ нет данных по счетчику. Цикл 'energomera' запускал, но он сразу же останавливается, но в логе пусто, просто останавливается и все. Может что-то в файлах нужно поправить под м
'Меркурий'? Но странно, что COM-порт даже не пытается открыться ...
Отправлено с моего SM-J730FM через Tapatalk
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
-
- Сообщения: 264
- Зарегистрирован: Чт ноя 08, 2018 5:51 am
- Благодарил (а): 10 раз
- Поблагодарили: 83 раза
Re: [Модуль] Энергомера (energomera)
ребят, а кто-то пытался этим модулем работать с меркурием?
сюда по всему он даже в теории не может с ними работать.
потому что несмотря на класс mercury230.class.php для работы он никак не используется.
в классе есть явный косяк который не позволит работать с меркурием.
в функции crc16_modbus байты контрольной суммы перепутаны местами.(точнее должны слаться в обратном порядке)
mercury230.class.php:
test_mercury230.php:
я пока не силен в majordomo(точнее я вообще пока в нём не шарю ) чтобы переписать какой-либо модуль, но я быстро учусь
сюда по всему он даже в теории не может с ними работать.
потому что несмотря на класс mercury230.class.php для работы он никак не используется.
в классе есть явный косяк который не позволит работать с меркурием.
в функции crc16_modbus байты контрольной суммы перепутаны местами.(точнее должны слаться в обратном порядке)
mercury230.class.php:
Код: Выделить всё
function test(){
$data="000101010101010101";
$data.=crc16_modbus($data);
echo "Send ".$data."\n";
$result = $this->Serial->sendMessage(hex2bin($data),$this->WaitBeforeRead);
$this->Receive();
$data="000800";
$data.=crc16_modbus($data);
echo "Send ".$data."\n";
$result = $this->Serial->sendMessage(hex2bin($data),$this->WaitBeforeRead);
$this->Receive();
}
function crc16_modbus($msg)
{
$data = pack('H*',$msg);
$crc = 0xFFFF;
for ($i = 0; $i < strlen($data); $i++)
{
$crc ^=ord($data[$i]);
for ($j = 8; $j !=0; $j--)
{
if (($crc & 0x0001) !=0)
{
$crc >>= 1;
$crc ^= 0xA001;
}
else $crc >>= 1;
}
}
$crc=sprintf('%04X', $crc);
return substr($crc,2,2).substr($crc,0,2);
}
Код: Выделить всё
<?php
include_once("mercury230.class.php");
function ShowVal($dev, $val, $timeout = 3500)
{
$arr = $dev->getValue($val, $timeout);
echo "<pre>$val = ".htmlspecialchars(print_r($arr,true))."</pre><br>\n";
}
$dev = new mercury230("/dev/ttyUSB0");
$dev->debug = true;
$ret = $dev->connect();
if ($ret === false)
{
echo "ops1";
die;
}
$ret = $dev->test();
if ($ret === false)
{
echo "ops1";
die;
}
$dev->disconnect();
?>
я пока не силен в majordomo(точнее я вообще пока в нём не шарю ) чтобы переписать какой-либо модуль, но я быстро учусь
-
- Сообщения: 1473
- Зарегистрирован: Сб окт 12, 2013 11:03 pm
- Благодарил (а): 49 раз
- Поблагодарили: 327 раз
Re: [Модуль] Энергомера (energomera)
Да. Это была пробаstellhawk писал(а): ↑Пт ноя 09, 2018 12:36 pmребят, а кто-то пытался этим модулем работать с меркурием?
сюда по всему он даже в теории не может с ними работать.
потому что несмотря на класс mercury230.class.php для работы он никак не используется.
в классе есть явный косяк который не позволит работать с меркурием.
в функции crc16_modbus байты контрольной суммы перепутаны местами.(точнее должны слаться в обратном порядке)
Вроде для Меркурия есть модуль
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
-
- Сообщения: 264
- Зарегистрирован: Чт ноя 08, 2018 5:51 am
- Благодарил (а): 10 раз
- Поблагодарили: 83 раза
Re: [Модуль] Энергомера (energomera)
[*]
если да, то просьба сделать выбор типа счетчика в настройках, а я допинаю класс mercury230.class.php чтобы оттуда данные вернулись. по крайней мере с 230 счетчиком работать будет.
а есть желание\возможность дописать модуль?Ivan писал(а): ↑Пт ноя 09, 2018 6:27 pmДа. Это была пробаstellhawk писал(а): ↑Пт ноя 09, 2018 12:36 pmребят, а кто-то пытался этим модулем работать с меркурием?
сюда по всему он даже в теории не может с ними работать.
потому что несмотря на класс mercury230.class.php для работы он никак не используется.
в классе есть явный косяк который не позволит работать с меркурием.
в функции crc16_modbus байты контрольной суммы перепутаны местами.(точнее должны слаться в обратном порядке)
Вроде для Меркурия есть модуль
если да, то просьба сделать выбор типа счетчика в настройках, а я допинаю класс mercury230.class.php чтобы оттуда данные вернулись. по крайней мере с 230 счетчиком работать будет.