POWER MONITOR на Arduino
Модератор: immortal
-
- Сообщения: 80
- Зарегистрирован: Пн апр 01, 2013 10:20 pm
- Откуда: Днепропетровск
- Благодарил (а): 7 раз
- Поблагодарили: 3 раза
Re: POWER MONITOR на Arduino
Так я оттуда и взял скрипт товарища ТНК. Помойму ваш код приведённый выше так же является адоптацией кода ТНК. И у меня там такие же проблемы с первым подключением как и у автора. Просто те кто ещё думает между выбором USB vs LAN можно наверное порекомендовать купить LAN, хоть он и дороже на 10-20дол, зато не иметь проблем на ровном месте.
-
- Сообщения: 107
- Зарегистрирован: Сб июн 30, 2012 7:54 am
- Благодарил (а): 0
- Поблагодарили: 14 раз
Re: POWER MONITOR на Arduino
Заказал себе под это дело LAN - RS485
http://www.aliexpress.com/snapshot/250062992.html
25.7 доллара с доставкой.
http://www.aliexpress.com/snapshot/250062992.html
25.7 доллара с доставкой.
-
- Сообщения: 80
- Зарегистрирован: Пн апр 01, 2013 10:20 pm
- Откуда: Днепропетровск
- Благодарил (а): 7 раз
- Поблагодарили: 3 раза
-
- Сообщения: 107
- Зарегистрирован: Сб июн 30, 2012 7:54 am
- Благодарил (а): 0
- Поблагодарили: 14 раз
Re: POWER MONITOR на Arduino
да, конечно отпишусь, сам жду!!!
сейчас ищу на avito.ru какой нить БУ счетчик меркурий 200.02 или какой нить 3-х фазный из серии 230 ART-01 PQCSIN
сейчас ищу на avito.ru какой нить БУ счетчик меркурий 200.02 или какой нить 3-х фазный из серии 230 ART-01 PQCSIN
-
- Сообщения: 107
- Зарегистрирован: Сб июн 30, 2012 7:54 am
- Благодарил (а): 0
- Поблагодарили: 14 раз
Re: POWER MONITOR на Arduino
Заказал себе под это дело LAN - RS485 http://www.aliexpress.com/snapshot/250062992.html 25,7 доллара с доставкой.
пришел мне таки данный конвертер.
Пока удалось только попробовать его работу с КОНФИГУРАТОРОМ от Меркурий. все работает.
там банально в винду устанавливается программа, которая создает виртуальный com- порт и связывает его с IP платки.
а в ПО просто указываем номер com- порта.
На днях доберусь до скрипта php, который написан тут в теме выше... по результатам отпишусь.
пришел мне таки данный конвертер.
Пока удалось только попробовать его работу с КОНФИГУРАТОРОМ от Меркурий. все работает.
там банально в винду устанавливается программа, которая создает виртуальный com- порт и связывает его с IP платки.
а в ПО просто указываем номер com- порта.
На днях доберусь до скрипта php, который написан тут в теме выше... по результатам отпишусь.
-
- Сообщения: 80
- Зарегистрирован: Пн апр 01, 2013 10:20 pm
- Откуда: Днепропетровск
- Благодарил (а): 7 раз
- Поблагодарили: 3 раза
Re: POWER MONITOR на Arduino
Былоб интересно работать именно напрямую поверх какого то tcp ip. протокола. Можете попробовать зайти браузером на его адрес? вдруг там есть вебморда. Накройняк поснифить трафик между програмкой и девайсом. Вдруг там всё просто и понятно.
-
- Сообщения: 107
- Зарегистрирован: Сб июн 30, 2012 7:54 am
- Благодарил (а): 0
- Поблагодарили: 14 раз
Re: POWER MONITOR на Arduino
dimitrystd
не веб морды там нет...учитывая его низкую стоимость... думаю в других аналогичных устройствах с ценой от 100 баксов веб морда есть.
получается, что если использовать ПО (по типу Конфигуратора) на компьютере - то только с клиентом-программой "виртуальный СОМ порт - LAN"
а вот если общаться с счетчиком через PHP скрипт, то данный клиент не нужен
на выходных попробую подключить через ваш PHP...отпишусь тогда.
счетчик купил МЕРКУРИЙ 200
не веб морды там нет...учитывая его низкую стоимость... думаю в других аналогичных устройствах с ценой от 100 баксов веб морда есть.
получается, что если использовать ПО (по типу Конфигуратора) на компьютере - то только с клиентом-программой "виртуальный СОМ порт - LAN"
а вот если общаться с счетчиком через PHP скрипт, то данный клиент не нужен
на выходных попробую подключить через ваш PHP...отпишусь тогда.
счетчик купил МЕРКУРИЙ 200
-
- Сообщения: 107
- Зарегистрирован: Сб июн 30, 2012 7:54 am
- Благодарил (а): 0
- Поблагодарили: 14 раз
Re: POWER MONITOR на Arduino
это могу. напишите, какое ПО под винды лучше для этого.dimitrystd писал(а): Накройняк поснифить трафик между програмкой и девайсом. Вдруг там всё просто и понятно.
-
- Сообщения: 469
- Зарегистрирован: Вт мар 12, 2013 1:22 am
- Благодарил (а): 41 раз
- Поблагодарили: 81 раз
Re: POWER MONITOR на Arduino
Кстати если не хотите связываться с расчетом контрольной суммы в каждой команде, то лучше проснифить.
Каждая команда счетчику выглядит так:
[адрес счетчика: 4 байта][комманда счетчику: 1-2 байта][контрольная сумма: 2 байта], например:
00 01 0B F0 28 10 20, где:
00 01 0B F0 - адрес счетчика 068592, это последние 6 цифр серийного номера
28 - команда "запрос версии ПО"
10 20 - контрольная сумма, алгоритм - Modbus CRC, полином: 0xA001
Если CRC будет неверен, счетчик никогда не ответит. Также в PHP нет целесообразности каждый раз высчитывать контрольную сумму чтобы правильно составить последовательность посылаемых счетчику байт, достаточно один раз жестко прописать в скрипте верную комбинацию и все. Легче всего CRC расчитать с помощю калькулятора: http://www.lammertbies.nl/comm/info/crc ... ation.html
Вводим нашу последовательность из примера выше: 00 01 0B F0 28 (тип HEX) и нас интересует CRC-16 (Modbus): 0x2010. Получаем: 00 01 0B F0 28 10 20.
Список информационных команд текущего состояния счетчика:
28 - Версия ПО
2F - Серийный номер
29 - Напряжение батареи
66 - Дата изготовления
63 - Текущие показания P, A, U
2C - Время последнего включения
2B - Время последнего выключения
21 - Текущие дата и время
24 - Автоматический перевод часов (да/нет)
27 - Показания счетчика наработки мощности за все время
32 00 - Показания счетчика наработки мощности за январь
32 01 - Показания счетчика наработки мощности за февраль
32 02 - Показания счетчика наработки мощности за март
и т.п.
Команды на программирование тарифов думаю будут не интересны.
А снифить можно с помощью Free Serial Port Monitor
Каждая команда счетчику выглядит так:
[адрес счетчика: 4 байта][комманда счетчику: 1-2 байта][контрольная сумма: 2 байта], например:
00 01 0B F0 28 10 20, где:
00 01 0B F0 - адрес счетчика 068592, это последние 6 цифр серийного номера
28 - команда "запрос версии ПО"
10 20 - контрольная сумма, алгоритм - Modbus CRC, полином: 0xA001
Если CRC будет неверен, счетчик никогда не ответит. Также в PHP нет целесообразности каждый раз высчитывать контрольную сумму чтобы правильно составить последовательность посылаемых счетчику байт, достаточно один раз жестко прописать в скрипте верную комбинацию и все. Легче всего CRC расчитать с помощю калькулятора: http://www.lammertbies.nl/comm/info/crc ... ation.html
Вводим нашу последовательность из примера выше: 00 01 0B F0 28 (тип HEX) и нас интересует CRC-16 (Modbus): 0x2010. Получаем: 00 01 0B F0 28 10 20.
Список информационных команд текущего состояния счетчика:
28 - Версия ПО
2F - Серийный номер
29 - Напряжение батареи
66 - Дата изготовления
63 - Текущие показания P, A, U
2C - Время последнего включения
2B - Время последнего выключения
21 - Текущие дата и время
24 - Автоматический перевод часов (да/нет)
27 - Показания счетчика наработки мощности за все время
32 00 - Показания счетчика наработки мощности за январь
32 01 - Показания счетчика наработки мощности за февраль
32 02 - Показания счетчика наработки мощности за март
и т.п.
Команды на программирование тарифов думаю будут не интересны.
А снифить можно с помощью Free Serial Port Monitor
-
- Сообщения: 107
- Зарегистрирован: Сб июн 30, 2012 7:54 am
- Благодарил (а): 0
- Поблагодарили: 14 раз
Re: POWER MONITOR на Arduino
dmw
Спасибо Вам за информацию!
Описанные Вами информационные команды относятся к определенной модели счетчика? или они одинаковы как для 200 серии, так и для 230 ?
Спасибо Вам за информацию!
Описанные Вами информационные команды относятся к определенной модели счетчика? или они одинаковы как для 200 серии, так и для 230 ?