Ви не увійшли.
- нужно перевести счетный вход в аналоговый режим - это как?
когда threshold falling < threshold rising, счетный вход будет в аналоговом режиме, иначе - в логическом, вот пример, как это устанавливается через веб-интерфейс:
В общем совсем не понятно, как реально настроить на эл.счетчик с 6400 испульсами на кВт/час
Вот статья, у Вас для электросчетчика будет использоваться фототранзистор, направленный на мигающий светодиод. Вам нужно настроить threshold-ы. Счетчик будет считать вспышки, Вам нужно количество вспышек читать со счетчика и переводить в киловаты.
Неактивний
Поставил owfs ow-shell еа линукс на ноуте.
Прописал с конфиге w1 сервер.
Подключил ESP по USB.
Захожу по ссылке http://honey.com.ua/counter/setup.htm
нажмаю ОКб но получаю только такое:
/ 127.0.0.1:2121
continuous
bus.0
settings
system
statistics
structure
owdir /uncached
/uncached/bus.0
/uncached/settings
/uncached/system
/uncached/statistics
/uncached/structure
Остання редакція Kirill2022 (2022-02-02 21:08:14)
Неактивний
Если бы Вы на ESP реализовали программный адаптер, то работало бы. Сделайте на таком адаптере:
https://arduino.ua/products_pictures/large_AOC741-7.jpg
Я реализовал - все работает - в логах порта передавало показания счетчика,
видимо не стартует автоматически owserver и owhttpd
Неактивний
Адаптер это посредник между компьютером (или мк) и шиной 1-wire, он не только читает с 1-wire и передает на компьютер, но и принимает команды от компьютера и передает их на шину 1-wire. Такое возможно, я выкладывал код программного адаптера на гитхабе, но это в качестве примера, он эмулирует аппаратный адаптер, но основная фишка аппаратного адаптера именно в аппаратной части - контроль скорости нарастания сигнала, активная подтяжка, это на мк не воспроизвести.
Есть статья про адаптеры.
Неактивний
Подлючился через ноут И почему-то показывает не полный адрес (было такой 1d71420f484e5988)!
только выдает ошибку - Following data is not valid, Error 200 OK
Что дальше настроить?
И Вы писали, что можно передавать уровень батарейки, что и где настроить?
Остання редакція Kirill2022 (2022-02-03 12:55:18)
Неактивний
Уточните, как именно Вы подключили?
1) Ноутбук <-> USB-UART <-> схема с диодом и резистором <-> счетчик
или
2) Ноутбук <-> ESP <-> счетчик
Во втором случае, чтобы owhttpd мог иметь доступ к счетчику, на ESP должен быть реализован программный адаптер. Тот код, который просто печатает показания счетчиков в Serial - это НЕ адаптер. Адаптер на ESP в принципе можно написать, но большого смысла в этом нет. Он будет либо эмулятором уже существуюших аппаратных адаптеров, для которых есть поддержка в owhttpd, либо можно придумать собственный протокол обмена, но тогда этот протокол нужно встроить в owhttpd.
В первом случае адаптер называется "пассивный" и его полная поддержка реализована в owhttpd.
Для настройки счетчика через веб-интерфейс самый простой способ (для ноутбука):
1. подключить по схеме 1 (через пассивный адаптер), картинка со схемой в сообщении #28
2. запустить owhttpd, в конфиге прописать server: passive /dev/ttyUSB0
3. открыть в браузере setup.htm
Это можно сделать один раз, настройки будут сохраняться в счетчике, пока в нем вставлена батарейка. Потом можно подключать к Arduino/ESP/чему угодно и писать программы для считывания показаний.
Узнать напряжение батарейки можно так:
vcc = 5.0; // in Volts
cnt.read(addr, buf, (word)32 * 6 + 24, 1); // page 6, offset 24
bat = (vcc - 0.68) * buf[0] / 256; // in Volts
Неактивний
Уточните, как именно Вы подключили?
1) Ноутбук <-> USB-UART <-> схема с диодом и резистором <-> счетчик
Так как у Вас на фото.
И с тем адаптером, который на сайте Вашем продается - с ним не работает. У меня был другой.
Я же фото уже подключенного прислал Зачем не опять про это писать?
и в файле конф прописал так: server: passive = /dev/ttyUSB0
В общем работает подключение.
1. почему красным ошибка? Как убрать?
2. Какие настройки сделать для подсчета импульсов диода на счетчике (у меня - 6400 имп кВт/час)
3. Вы дали код на батарейку - так батарейка же 3В а не 5??
Неактивний
И почему-то показывает не полный адрес (было такой 1d71420f484e5988)!
88 это контрольная сумма адреса, ее можно вычислить из 7 предыдущих байтов, в owserver/owhttpd ее не отображают (при проверке совпала, значит хорошо).
Неактивний
3. Вы дали код на батарейку - так батарейка же 3В а не 5??
Счетчик измеряет напряжение батарейки относительно своего vcc, которое ниже чем внешнее vcc примерно на 0.68В (падение напряжения на диоде). Если на шине 1-wire напряжение 5В, то напряжение питания микроконтроллера будет 5-0.68=4.32В, предположим с адреса [32 * 6 + 24] прочиталось значение 178, тогда по формуле получится (5-0.68)*178/256=~3В. Большой точности от этих показаний можно не ожидать, можно использовать для рисования графика, например.
Неактивний
Попробуйте owhttpd с версии v3.2p4, я им отправлял фикс, он какраз касается пассивного адаптера.
попробую, но пока не понятно как это сделать.
И Вы не написали - какие параметры устанавливать в вэб !!
И как правильно все это записать в счетчик!
Неактивний
Honey пише:Попробуйте owhttpd с версии v3.2p4, я им отправлял фикс, он какраз касается пассивного адаптера.
попробую, но пока не понятно как это сделать.
И Вы не написали - какие параметры устанавливать в вэб !!
И как правильно все это записать в счетчик!
Или найти скомпилированные пакеты для своего дистрибутива, например на таких сайтах как этот: https://pkgs.org/search/?q=owfs
Или скомпилировать из исходных кодов самому.
В вэб Вам понадобится установить параметры threshold - это значения от 0 до 255, которые соответствуют уровню перехода от одной освещенности фототранзистора к другой. У счетчика есть возможность просматривать через вэб текущий уровень, который он читает. Записываете этот уровень (число 0..255) при одной освещенности, записываете при другой. Диапазон приблизительно разделяете двумя точками на 3 части и эти две точки записываете меньшую в threshold falling, бОльшую в threshold rising
На картинке синяя и красная лини это threshold falling и threshold rising соответственно. Когда сигнал будет ниже синей линии, счетчик будет считать его low, когда выше красной - high, между синей и красной - зона гистерезиса, тут счетчик оставляет предыдущее значение.
Счетчик инкрементирует счетный регистр при переходе high->low или low->high или любой из этих переходов (задается опцией increment on).
А 6400 имп/кВт*ч это уже Вы в коде ESP преобразуете количество импульсов в кВт*ч путем деления.
Неактивний
Попробуйте owhttpd с версии v3.2p4, я им отправлял фикс, он какраз касается пассивного адаптера.
В общем фигня какая-то.
Скачал, сделал
./configure
make
make install
- установилось в /opt/
хотя когда я из под систем делал sudo apt-get install -y owfs ow-shell
установка была не в /opt/ !
В общем сейчас пишет что версия owhttpd и owserver 3.2p4, а owfs 3.2p3
Качал с гитхаба tar и из него делал установку по их мануалу,но как я увидел, там нет owfs
И в локалхосте не появляется устройство
Остання редакція Kirill2022 (2022-02-03 17:56:01)
Неактивний
Kirill2022 пише:И с тем адаптером, который на сайте Вашем продается - с ним не работает. У меня был другой.
С этим? Давайте разберемся.
Нет с USB-TTL на синей плате в термоусадке прозрачной
Неактивний
- установилось в /opt/
Я обычно делаю configure с такими опциями
./configure --prefix=/home/ow --disable-owpython --disable-owperl --disable-owphp --disable-owtcl
Замените /home/ow на /usr
Неактивний
Kirill2022 пише:- установилось в /opt/
Я обычно делаю configure с такими опциями
./configure --prefix=/home/ow --disable-owpython --disable-owperl --disable-owphp --disable-owtcl
Замените /home/ow на /usr
В общем все сервисы запущены, но теперь не появляется счетчик рустартовал их уже, перезагружался, не появляется, может с настройками не то что-то. Создана точка монтирования /mnt/1wire
Что должно быть точно в конфиге?
Неактивний
Вот пример конфига
server: passive /dev/ttyUSB0
server: port localhost:4304
server: pid_file /home/ow/run/owserver.pid
http: server localhost:4304
http: port localhost:2121
http: pid_file /home/ow/run/owhttpd.pid
Здесть указывается, что owserver будет слушать на порту 4304 и работать с 1-wire через пассивный адаптер, а owhttpd будет слушать на порту 2121 и запросы перенаправлять на owserver на его порт 4304.
Можно сделать и так, что owhttpd будет работать сам, и http-запросы обслуживать и работать через адаптер с шиной 1-wire.
Удобнее когда есть и owserver и owhttpd, можно делать запросы из командной строки:
owget /uncached
owget /uncached/1d.71420f484e59/counter.ALL ;echo
Неактивний
Вот пример конфига
server: passive /dev/ttyUSB0 server: port localhost:4304 server: pid_file /home/ow/run/owserver.pid http: server localhost:4304 http: port localhost:2121 http: pid_file /home/ow/run/owhttpd.pid
Здесть указывается, что owserver будет слушать на порту 4304 и работать с 1-wire через пассивный адаптер, а owhttpd будет слушать на порту 2121 и запросы перенаправлять на owserver на его порт 4304.
Можно сделать и так, что owhttpd будет работать сам, и http-запросы обслуживать и работать через адаптер с шиной 1-wire.
Удобнее когда есть и owserver и owhttpd, можно делать запросы из командной строки:
owget /uncached
owget /uncached/1d.71420f484e59/counter.ALL ;echo
owserver.pid - через поиск найти где лежит?
PS: его не нашел нет его
Остання редакція Kirill2022 (2022-02-03 19:42:55)
Неактивний
Приветствую, сделал установку Ubuntu с 0-ля на mini pc gigabyte, установил 3.2р4 версии всех компонентов owfs, owserver, owhttpd
создал директорию для монтирования /mnt/1wire
В конфиге прописал:
server: w1
server: passive /dev/ttyUSB0
Через браузер показывает датчик полностью!
А через Вашу ссылку на http://honey.com.ua/counter/setup.htm почемуто выдает ошибку сервера, фото прилагаю.
Неактивний
С адреса
http://127.0.0.1:2121/json/uncached/1d.71420f484e59/pages/page.8
должен скачиваться файл в формате json, содержимое должно быть такого формата
[ "0000000000000000000000000013000000E0540002580017110043431C013A01" ]
Неактивний
С адреса
http://127.0.0.1:2121/json/uncached/1d.71420f484e59/pages/page.8
должен скачиваться файл в формате json, содержимое должно быть такого формата[ "0000000000000000000000000013000000E0540002580017110043431C013A01" ]
ввел в браузер и получил:
[ "2D0000000000000000000000001300000060CC0002580017180043431C01ED00" ]
и почему ошибка сервера, как исправить?
Неактивний