Форум обсуждения систем  

Вернуться   Форум обсуждения систем "Умный дом", проектов Ардуино, OpenWRT и других DIY устройств > Форум умного дома > Сделай сам > OpenWRT/LEDE

Ответ
 
Опции темы Поиск в этой теме Опции просмотра
Старый 24.12.2012, 10:47   #1
narodmon
Junior Member
 
Регистрация: 24.12.2012
Сообщений: 23
Вес репутации: 0
narodmon is an unknown quantity at this point
Отправить сообщение для narodmon с помощью ICQ Отправить сообщение для narodmon с помощью Skype™
Question Сбор и отправка показаний датчиков на MR3020/WR703N

Доброго всем! И с Наступающим 2013 !

Нужна помощь в настройке роутера TP-LINK MR3020/WR703N на сбор показаний с 1-wire датчика к примеру ds18b20 подключенного к UART и отправку их согласно протоколу на сервер http://narodmon.ru по tcp.

Подключение датчиков чем проще тем лучше, к примеру как описано тут: http://we.easyelectronics.ru/electro...-s-kompom.html

Это необходимо для проекта Народный мониторинг, благодаря его малогабаритности и поддержке 3G модемов. Очень нужно решение(пользователи просят) для автономной работы в полевых условиях. Протокол передачи на сайте проекта после регистрации, но для начала хотелось бы увидеть саму процедуру считывания показаний и серийного номера датчиков подключенных к UART - как минимум 1-wire ds18b20, но если возможно подключение i2c датчиков dht22(влажность+темп) и bmp085(атм.давление) было бы просто замечательно! Самое удачное решение обязательно опубликую у себя в каталоге.

PS Признаться я сам не спец по железу и софту роутеров, но руки прямые, держать паяльник умеют) Да и по пошаговому мануалу действия необходимые произведу с накатыванием и настройкой OpenWRT+digitemp или иным способом.
narodmon вне форума   Ответить с цитированием
Старый 24.12.2012, 11:06   #2
Admin
Administrator
 
Аватар для Admin
 
Регистрация: 12.04.2010
Адрес: Москва
Сообщений: 9,616
Вес репутации: 9821
Admin has a brilliant futureAdmin has a brilliant futureAdmin has a brilliant futureAdmin has a brilliant futureAdmin has a brilliant futureAdmin has a brilliant futureAdmin has a brilliant futureAdmin has a brilliant futureAdmin has a brilliant futureAdmin has a brilliant futureAdmin has a brilliant future
По умолчанию

Читал статью про подключение датчика DS18B20 к роутеру WR703N, через мост USB -> UART CP2102
Но если следовать аналогии , то можно попробовать подключить таким же способом и к хардверному UART порту роутера

Подключить датчик к UART можно по ниже приведенному рисунку
Соеденить RX и TX вместе и подключить к ним data линию 1-Wire датчика DS18B20
VCC к VCC
GND к GND

Название: ds18b20-dallas.JPG
Просмотров: 13152

Размер: 13.1 Кб

Устанавливаются требуемые пакеты
opkg update
opkg install digitemp

Инициализация датчика
digitemp_DS9097 -i -s /dev/ttyATH0

Прочитать температуру с датчика
digitemp_DS9097 -a
Admin вне форума   Ответить с цитированием
Старый 24.12.2012, 11:19   #3
narodmon
Junior Member
 
Регистрация: 24.12.2012
Сообщений: 23
Вес репутации: 0
narodmon is an unknown quantity at this point
Отправить сообщение для narodmon с помощью ICQ Отправить сообщение для narodmon с помощью Skype™
По умолчанию

Как подключить это было написано уже в ссылке, что я приводил выше, а вот как настроить считывание и отправку? Какие пакеты нужны и скрипты для отправки настроить?
narodmon вне форума   Ответить с цитированием
Старый 24.12.2012, 13:20   #4
Admin
Administrator
 
Аватар для Admin
 
Регистрация: 12.04.2010
Адрес: Москва
Сообщений: 9,616
Вес репутации: 9821
Admin has a brilliant futureAdmin has a brilliant futureAdmin has a brilliant futureAdmin has a brilliant futureAdmin has a brilliant futureAdmin has a brilliant futureAdmin has a brilliant futureAdmin has a brilliant futureAdmin has a brilliant futureAdmin has a brilliant futureAdmin has a brilliant future
По умолчанию

Цитата:
Сообщение от naromon Посмотреть сообщение
Как подключить это было написано уже в ссылке, что я приводил выше, а вот как настроить считывание и отправку? Какие пакеты нужны и скрипты для отправки настроить?
У них на сайте есть пример отправки показаний на PHP:
PHP код:
$data = array('ID'=>'00-1C-C0-7A-B0-18''001CC07AB01801'=>760'0123456789ABCD28'=>13.54);
$context stream_context_create(array('http' => array('method'=>'POST','content' => http_build_query($data))));
$fp = @fopen("http://narodmon.ru/post.php"'r'false$context);
if(
$fp
 { 
   
fpassthru($fp); fclose($fp); 
 } 
Admin вне форума   Ответить с цитированием
Старый 24.12.2012, 12:17   #5
Sirocco
Senior Member
 
Регистрация: 12.10.2012
Адрес: Moscow-Voronezg
Сообщений: 272
Вес репутации: 0
Sirocco has a brilliant futureSirocco has a brilliant futureSirocco has a brilliant futureSirocco has a brilliant futureSirocco has a brilliant futureSirocco has a brilliant futureSirocco has a brilliant futureSirocco has a brilliant futureSirocco has a brilliant futureSirocco has a brilliant futureSirocco has a brilliant future
По умолчанию

Эт чё, получается имея UART и утилиту digitemp можно без доп железа прямо в консоли температуру видеть? Офигеть! Это приятное открытие для меня. А как на счёт других 1wire устройств? Передача/приём поддерживается?
P.S. Всё, иду пихать DS18B20 во все железки, роутеры, NAS... Там везде есть UART
Sirocco вне форума   Ответить с цитированием
Старый 24.12.2012, 14:04   #6
narodmon
Junior Member
 
Регистрация: 24.12.2012
Сообщений: 23
Вес репутации: 0
narodmon is an unknown quantity at this point
Отправить сообщение для narodmon с помощью ICQ Отправить сообщение для narodmon с помощью Skype™
По умолчанию

2Admin: Ну да, я сам написал этот простецкий пример на php, однако лучше всеже использовать telnet-tcp для отправки(пример на сайте http://narodmon.ru также имеется), а не HTTP POST ибо xinetd надежнее работает, да и хотелось бы на роутере без установки php обойтись)

Спасибо за то что дополнили описание, но ещеб примерчик на bash например как в cron на роутере добавить отправку данных каждые 10-15 минут, ну и само собой как еще серийный номер ds18 запросить.

Последний раз редактировалось narodmon; 24.12.2012 в 14:22.
narodmon вне форума   Ответить с цитированием
Старый 25.12.2012, 00:30   #7
Sirocco
Senior Member
 
Регистрация: 12.10.2012
Адрес: Moscow-Voronezg
Сообщений: 272
Вес репутации: 0
Sirocco has a brilliant futureSirocco has a brilliant futureSirocco has a brilliant futureSirocco has a brilliant futureSirocco has a brilliant futureSirocco has a brilliant futureSirocco has a brilliant futureSirocco has a brilliant futureSirocco has a brilliant futureSirocco has a brilliant futureSirocco has a brilliant future
По умолчанию

А можно по подробнее о подключении и настройке датчика для успешной работы с роутером через UART. А то описанный вариант не работает.
PHP код:
Errorserial port '' does not exists
Как сделать его существующим?

Последний раз редактировалось Sirocco; 25.12.2012 в 00:36.
Sirocco вне форума   Ответить с цитированием
Старый 01.11.2014, 22:50   #8
icecat
Junior Member
 
Регистрация: 01.11.2014
Сообщений: 8
Вес репутации: 0
icecat is an unknown quantity at this point
По умолчанию Re: Сбор и отправка показаний датчиков на MR3020/WR703N

Цитата:
Сообщение от Sirocco Посмотреть сообщение
А можно по подробнее о подключении и настройке датчика для успешной работы с роутером через UART. А то описанный вариант не работает.
PHP код:
Errorserial port '' does not exists
Как сделать его существующим?
Расскажи как решил данную проблему, я в таком же положении.
Подключил DS18B20 как тут пишут,
ФОТО:


установил все нужные пакеты, проверяю:





Пытаюсь инициализировать датчик:


и получаю результат как у вас.

Что я не так сделал?
ЗЫ: Шнур рабочий, т.к. им же прошил свой бывший "кирпич" DIR-620, на котором сейчас издеваюсь.

ЗЗЫ: Решил проверить шнурок с датчиком в windows - работает!



делаю вывод, с железом все нормально, что-то с софтом на роутере не так.

Да, уточняю железо:
Модель маршрутизатора - D-Link DIR-620 A1
Версия прошивки - OpenWrt Attitude Adjustment 12.09 / LuCI 0.11.1 Release (0.11.1)
Версия ядра - 3.3.8

Спасибо за ответ!

Последний раз редактировалось icecat; 02.11.2014 в 11:11.
icecat вне форума   Ответить с цитированием
Старый 02.11.2014, 21:12   #9
melsem
Moderator
 
Регистрация: 19.10.2013
Сообщений: 479
Вес репутации: 599
melsem has much to be proud ofmelsem has much to be proud ofmelsem has much to be proud ofmelsem has much to be proud ofmelsem has much to be proud ofmelsem has much to be proud ofmelsem has much to be proud ofmelsem has much to be proud of
По умолчанию Re: Сбор и отправка показаний датчиков на MR3020/WR703N

Инициализация в начале: digitemp_DS9097 -i -r 500 -s /dev/ttyUSB3
А потом чтение: digitemp_DS9097 -a

Но если не сам собирал прошу. И пакеты к digitemp до устанавливал, то не всегда и работает.
Глючный он.

Последний раз редактировалось melsem; 02.11.2014 в 21:15.
melsem вне форума   Ответить с цитированием
Старый 06.11.2014, 21:04   #10
icecat
Junior Member
 
Регистрация: 01.11.2014
Сообщений: 8
Вес репутации: 0
icecat is an unknown quantity at this point
По умолчанию Re: Сбор и отправка показаний датчиков на MR3020/WR703N

Цитата:
Сообщение от melsem Посмотреть сообщение
Инициализация в начале: digitemp_DS9097 -i -r 500 -s /dev/ttyUSB3
А потом чтение: digitemp_DS9097 -a

Но если не сам собирал прошу. И пакеты к digitemp до устанавливал, то не всегда и работает.
Глючный он.
Нет, не получается. С ключом -r 500 ждет до бесконечности.
Как собрать digitemp, если под рукой только dlink 620-й с OpenWRT?
icecat вне форума   Ответить с цитированием
Ответ

Метки
1-wire, digitemp, narodmon, openwrt, uart


Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
 

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход


Текущее время: 02:54. Часовой пояс GMT +3.


Powered by vBulletin® Version 3.8.5
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd. Перевод: zCarot
Яндекс.Метрика