arduino + wifi роутер

.c8r
.c8r аватар
Offline
Зарегистрирован: 15.11.2011

Добрый день!

Цель: контроль работы газового котла в загородном доме.

Задачи: считать состояние работы котла, если есть ошибки в работе, то перезагрузить котел.

Обьясню все по порядку. Котел информирует пользователя о своей работе при помощи свтодиодов, на данном этапе нам достаточно знать температуру воды (всего 6 лампочек, кождая символизирует свою температуру), если мигает только первая лампочка, то в работе котла была ошибка (отключили газ, ток или были скачки в подаче питания). Как ввести показания этих лампочек в arduino ясно, как выявить ошибку тоже ясно, главный вопрос: как подружть роутер и arduino.

На эту тему довольно много видео, но мало описания. Ардуино коннектиться к роутеру через usb, на роутер заливается новая прошивка и...дальше прошивки пустота. Кто может помочь собственным опытом или кто находил внятные статьи на данную тему, прошу вашей помощи, списибо.
 

Есть другой путь, ардуино+модуль LAN и затем передача состояния котла по сети, но это уже другая тема и цена.

.c8r
.c8r аватар
Offline
Зарегистрирован: 15.11.2011

Как вообще происходит общение arduino и компьютера через usb? 

76region
Offline
Зарегистрирован: 08.07.2011

.c8r пишет:

Как вообще происходит общение arduino и компьютера через usb? 

обмен происходит по ком порту через преобразователь USB/RS232

через лан точно проще реализовать будет, мне например как начинающему, на основе примеров, да и лан-шилд не дорого стоит, размороженная система отопления точно дороже будет :)

Ethernet Shield v2 примерно 1200-1300р

 

.c8r
.c8r аватар
Offline
Зарегистрирован: 15.11.2011

А какой минимальный набор, чтобы обеспечить передачу информации (элементарной, есть сигнал на входе, либо информации от датчика температуры) через LAN, с учетом того, что хотелось бы подключить 10-15 датчиков (такое кол-во вообще возможно)?

 

Спасибо за ответы, собираю информацию, т.к. планирую купить андурино и не прогадать с доп. платами.

76region
Offline
Зарегистрирован: 08.07.2011

ардуина+езернет-шилд подключенный к вашему роутеру наверное и хватит, а можно найти какой нибудь старенький мобильник (цена копейки) и слать инфу через смс на ваш телефон, и сеть не нужна, да и надежнее будет

76region
Offline
Зарегистрирован: 08.07.2011

А еще можно взять роутер умеющий работать с юсб модемом например DIR-320/NRU

Dmitry K
Offline
Зарегистрирован: 11.08.2011

а еще можно взять и почитать про роутеры по конкретней и вам вовсе не нужен будет эзернет шилд для затравки вот вам пример http://robocraft.ru/blog/electronics/406.html - в роутерах жевет линукс работающий на MIPS архитектуре а следовательно вы можете применять его гораздо масштабней чем просто передовать данные от ардуино насколько широки возможности можо подглядеть вот тут http://openwrt.org , http://www.dd-wrt.com. А чтобы подключить ардуину к роутеру без всяких эзернет шилдов просто откройте корпус и найдите чтото похожее на это http://dipcore.com/wp-content/uploads/2010/05/dir320_UART_pinout.jpg все подключается элементарно 3мя проводами прям к ардуине! :) п.с. чем навороченее ваш роутер тем больше ваше поле для фантазий (веб камеры, 3G модемы, GPS, + всевозможные ухищрения (роутер+дуино)) 

.c8r
.c8r аватар
Offline
Зарегистрирован: 15.11.2011

Лутше поздно, чем никогда), спасибо за ответ, у меня как-раз валяется 320, буду химичить!

carduino.ru
Offline
Зарегистрирован: 06.12.2011

Я опробывал роутер TP-LINK MR3020 совместно Arduino, рекомендую

В отличии от ethernet шилдов, на нем можно установить полноценный web сервер и управлять ардуиной из любого браузера

.c8r
.c8r аватар
Offline
Зарегистрирован: 15.11.2011

Роутер с процессором 400МГц, чОтко =). А в какую оно цену сейчас, в Яндексе разброс от 700 до 1600р. ?

medossa
Offline
Зарегистрирован: 10.07.2012

 столько и стоит) подключить к нему ардуину, я так понимаю, труда не составит. RXTX на плате разведены. Но можно и по юсб же подключить? Поправьте меня если я не прав.

vworld
vworld аватар
Offline
Зарегистрирован: 26.09.2011

вот еще вариант общения ардуины не с роутером, но с miniX

основной посыл - USB-UART ...возможно даже кто-то подскажет как сварганить такой шнурочек или купить готовый...я вот такое нашел - хз подойдет ли

.c8r
.c8r аватар
Offline
Зарегистрирован: 15.11.2011

Для работы arduino - usb - uart - роутер нужно, чтоб ардуина выступила в качестве юсб-хоста, так что контролеры до 1500р. отпадают...

medossa
Offline
Зарегистрирован: 10.07.2012

.c8r пишет:

Для работы arduino - usb - uart - роутер нужно, чтоб ардуина выступила в качестве юсб-хоста, так что контролеры до 1500р. отпадают...

может я чего-то не допонимаю, но теоретически должно быть так. При подключении ардуины к роутеру должно появиться новое устройство /dev/ttyUSB0, через которое и отправляются пакеты (RX TX)... 

.c8r
.c8r аватар
Offline
Зарегистрирован: 15.11.2011

Эт через uart напрямки, а я про юарт через юсб

carduino.ru
Offline
Зарегистрирован: 06.12.2011

medossa пишет:

 столько и стоит) подключить к нему ардуину, я так понимаю, труда не составит. RXTX на плате разведены. Но можно и по юсб же подключить? Поправьте меня если я не прав.


 

Я подключал Arduino как через RX, TX на плате роутера, так и через USB, в обоих случаях прекрасно работает.

Роутер имет USB Host

 

medossa
Offline
Зарегистрирован: 10.07.2012

carduino.ru пишет:

 в обоих случаях прекрасно работает.

Да я то и не спорю) Вопрос вам. Как туда сервер запихнуть? Что там за операционка? читал, что там просто wrt прошивка - а это какой-то донельзя урезанный линукс . Какие репозитарии у него, какое ядро? Что за сервер туда можно поставить? Сможет ли вебкамеру вещать? 

carduino.ru
Offline
Зарегистрирован: 06.12.2011

Заливается в роутер Линукс OpenWrt ядро 3.3.8-1

Я ставил из репозитория http + php + mysql и ftp сервер

Есть также пакеты для работы вебкамеры, USB монитора, клавиатуры, мышки, торренты, IPTV и т.д.

medossa
Offline
Зарегистрирован: 10.07.2012

carduino.ru пишет:

Заливается в роутер Линукс OpenWrt ядро 3.3.8-1

Я ставил из репозитория http + php + mysql и ftp сервер

Есть также пакеты для работы вебкамеры, USB монитора, клавиатуры, мышки, торренты, IPTV и т.д.

круть) прям rasperry pi получается)

axill
Offline
Зарегистрирован: 05.09.2011

76region пишет:

через лан точно проще реализовать будет, мне например как начинающему, на основе примеров, да и лан-шилд не дорого стоит, размороженная система отопления точно дороже будет :)

Ethernet Shield v2 примерно 1200-1300р 

соглашусь - ничего сложного через LAN нет. Перепрошивать роутер куда сложнее.

Кстати если есть месяц то за шилд на визнете можно уложиться в 400р :) www.buyincoins.com/new_en/details/ethernet-shield-w5100-for-arduino-2009-uno-mega-1280-2560-product-13785.html

а если не упираться в визнет, то и вовсе в 200р www.buyincoins.com/new_en/details/new-enc28j60-ethernet-lan-network-module-schematic-for-arduino-51-avr-lpc-stm32-product-9026.html

Второй вариант сам проверял - работает отлично

vworld
vworld аватар
Offline
Зарегистрирован: 26.09.2011

имхо роутер не тянет веб камеру - если только цеплять IP камеру и с нее транслироват в веб сервер (апач и т.п.), выдавать страницу

Цитата:

Кстати если есть месяц то за шилд на визнете можно уложиться в 400р :) www.buyincoins.com/new_en/details/ethernet-shield-w5100-for-arduino-2009...

а если не упираться в визнет, то и вовсе в 200р www.buyincoins.com/new_en/details/new-enc28j60-ethernet-lan-network-modu...

какие то совсем чумачечии цены...везде езернет шилды по 1200 руб. и т.п. лежат

carduino.ru
Offline
Зарегистрирован: 06.12.2011

axill пишет:

 

соглашусь - ничего сложного через LAN нет. Перепрошивать роутер куда сложнее.
 

Не соглашусь

Роутер перепрошивается, без заморочек за пуру кликов, через веб интерфейс, Вы скорее всего этого ни разу не делали.

Сравнивать ethernet shield c операционкой LInux, это все как сравнивать мерседес с таврией.

carduino.ru
Offline
Зарегистрирован: 06.12.2011

vworld пишет:

имхо роутер не тянет веб камеру


 

А вы пробывали подключать к нему камеру?

axill
Offline
Зарегистрирован: 05.09.2011

carduino.ru пишет:

Не соглашусь

Роутер перепрошивается, без заморочек за пуру кликов, через веб интерфейс, Вы скорее всего этого ни разу не делали.

Сравнивать ethernet shield c операционкой LInux, это все как сравнивать мерседес с таврией.

Мудрость гласит - никогда не делайте поспешных выводов

Прошивал и не раз и с dwrt знаком не по наслышке и с линуксом на ты с его самых первых версий в начале 90х

Я имел в виду не саму техническую прошивку. Я имел в виду, что програмирование ПО под роутер (об этом же идет речь) сложнее так как разбираться придется с куда более сложной системой чем ардуина. Но это мое личное мнение. 

carduino.ru
Offline
Зарегистрирован: 06.12.2011

А мое общение с линуксом было в первые когда я прошил этот роутер и мне хватило нескольких часов что бы все настроить и  разобратся.

P.S.

Оцените его размеры, он даже меньше чем Arduino Uno

axill
Offline
Зарегистрирован: 05.09.2011

carduino.ru пишет:

А мое общение с линуксом было в первые когда я прошил этот роутер и мне хватило нескольких часов что бы все настроить и  разобратся.

Рад за Вас ;) может тогда и ардуина не нужна? Железные входы выходы прикрутить и програмно управлять ими прямо из линукса

carduino.ru
Offline
Зарегистрирован: 06.12.2011

Я бы отказался от Arduino, но припаяться к IO пинам роутера невозможно.  

axill
Offline
Зарегистрирован: 05.09.2011

carduino.ru пишет:

Я бы отказался от Arduino, но припаяться к IO пинам роутера невозможно.  

Есть же готовые расширители портов через USB, у того же мастеркита. Например www.chipdip.ru/product/mp710.aspx

Еще как вариант взять переходник USB<->LPT. Я к чему, если логику можно зашить в роутер, то смысловой нагрузки аардуина нести не будет и тогда либо использовать ардуину как расширитель портов либо использовать готовый "железный" расширитель

carduino.ru
Offline
Зарегистрирован: 06.12.2011

Я лучше Arduino Nano буду использовать чем расширитель за 1300 руб 

Так как часть обработки может выпорнять еще и arduino

vworld
vworld аватар
Offline
Зарегистрирован: 26.09.2011

axill пишет:

Еще как вариант взять переходник USB<->LPT. Я к чему, если логику можно зашить в роутер, то смысловой нагрузки аардуина нести не будет и тогда либо использовать ардуину как расширитель портов либо использовать готовый "железный" расширитель

все верно, НО ардуино это - удобство, простота, сообщество, куча готовых примеров, и куча готовых шилдов и т.д. можно продолжать диферамбы...

axill
Offline
Зарегистрирован: 05.09.2011

vworld пишет:

все верно, НО ардуино это - удобство, простота, сообщество, куча готовых примеров, и куча готовых шилдов и т.д. можно продолжать диферамбы...

Согласен, жаль ардуину использовать как тупой расширитель портов, без логики

axill
Offline
Зарегистрирован: 05.09.2011

carduino.ru пишет:

Я лучше Arduino Nano буду использовать чем расширитель за 1300 руб 

Так как часть обработки может выпорнять еще и arduino

ну чипдип не дешовое место, такую штуку наверняка можно найти в разы дешевле )

а в чем смысл часть обработки делать на ардуине если все, как Вы говорите, легко програмируется на более крутом роутере? Зачем на таврии ездить если есть мерседес? :)

carduino.ru
Offline
Зарегистрирован: 06.12.2011

Что лучше иметь мерседем и таврию или только мерседес?

 

axill
Offline
Зарегистрирован: 05.09.2011

carduino.ru пишет:

Что лучше иметь мерседем и таврию или только мерседес?

это очень индивидуально ) по мне таврия нафиг не нужна, если есть мерседес

carduino.ru
Offline
Зарегистрирован: 06.12.2011

На таврии можно стройматериалы для ремонта квартиры подвозить , а ты предлагаешь поставить багажник на крышу мерседеса 

А если серьезно, то никто не предлагает отказыватся от Aduino .

Если человеку уже умеет программировать на ардуино, то пускай его и использует, а роутер (уже настроенный) может использовать как сервер с веб интерфейсом, через который можно удаленно будет управлять своими поделками

Вот пример не доделанной веб морды управления домом

Теперь я могу удаленно управлять своим домом из любого места и с любого устройства, имеющее интернет и браузер

carduino.ru
Offline
Зарегистрирован: 06.12.2011

А если серьезно, то никто не предлагает отказыватся от Aduino .

Если человеку уже умеет программировать на ардуино, то пускай его и использует, а роутер (уже настроенный) может использовать как сервер с веб интерфейсом, через который можно удаленно будет управлять своими поделками 

Вот пример не доделанной веб морды управления домом

Теперь я могу удаленно управлять своим домом из любого места и с любого устройства, имеющее интернет и браузер

axill
Offline
Зарегистрирован: 05.09.2011

carduino.ru пишет:

Теперь я могу удаленно управлять своим домом из любого места и с любого устройства, имеющее интернет и браузер

дело хорошее )) я тоже могу управлять почти всем и вся. Я сначала для построения умного дома выбрал коробочные решения на базе zwave и контроллера Vera3 от micasawerde. Этот контроллер тоже на базе линукса. Используя все это я выстроил управления всем освещением и частью других электроприборов, настроив сцены по времени суток, освещенности, температуре, датчикам движения и т.д. Ко всему этому есть готовый интерфейс управления как с компьютера так и с телефона. Очень развитая система, самому такое написать будет очень дорогого стоить. Но ардуина в моей жизни возникла, когда я захотел расширить границы своего проекта умного дома шире. Например первое устройство которое я сейчас сделал - это устройство по передаче данных расхода воды на контроллер умного дома (чтобы каждый месяц для снятия показаний не залезать в стояки), оно же сигнализирует на умный дом и дальше СМС по факту срабатывания системы против протечки воды и оно же позволяет с умного дома управлять закрытием-открытием кранов на стояках. Все это не возможно было осуществить с готовыми решениями умного дома. И таких идей у меня масса :) Именно для них я занимаюсь ардуинами и avr-ами.

carduino.ru
Offline
Зарегистрирован: 06.12.2011

Vera это тоже роутер с OpenWRT  и платить за него 300$ не каждый захочет.

У веры есть куча недостатков, например тормазнутость интерфейса, отсутствует возможность управлять своими устройствами на бызе того же Arduino и т.д. 

Я же предлагаю всем обьеденится всем сообществом и вместе использовать открытую и не дорогую систему, делится наработками и опытом

 

carduino.ru
Offline
Зарегистрирован: 06.12.2011

Я попробую слить веб интерфейс с веры и залить его MR3020, мне кажется что все должно работать 

Так же могу закупать роутеры настраивать их для работы с ардуино, веб мордой, камерой и продавать их по разумной цене 

 

axill
Offline
Зарегистрирован: 05.09.2011

carduino.ru пишет:

Vera это тоже роутер с OpenWRT  и платить за него 300$ не каждый захочет.

У веры есть куча недостатков, например тормазнутость интерфейса, отсутствует возможность управлять своими устройствами на бызе того же Arduino и т.д. 

По цене смотря с чем сравнивать. Вера самый недорогой контроллер сети zwave. Сами устройства zwave тоже не дешовые, выключатель стоит от 40 долларов. Если оборудовать большое помещение, 300 долларов за веру будут не большой прибавкой.И в общем нужно сказать, умный дом не для бедных )

Тормознутость интерфейса меня мало смущает, я им напрямую пользуюсь только когда настраиваю сцены, а вот тормознутость самих сцен - да, большой недостаток. Но не факт, что если сделать что-то похожее самому, оно с ходу получится лучше.

По последнему пункту не соглашусь. Вера как раз очень гибкая в части настройки управления чем угодно и у меня она управляет ардуиной по беспроводному интерфейсу.

dzmitry
Offline
Зарегистрирован: 12.08.2012

Интересно, если к этому роутеру подключить usb bluetooth донгл, будет ли он работать?

P.S. Ответ нашел сам (в смысле проверил сам :) ), работает вся перефирия, которую подключал (usb bluetooth, usb audio)

carduino.ru
Offline
Зарегистрирован: 06.12.2011

 Я жду звуковую карту , хочу сделать управление при помощи голоса 

medossa
Offline
Зарегистрирован: 10.07.2012

carduino.ru пишет:

 Я жду звуковую карту , хочу сделать управление при помощи голоса 

Эммммм, а подскажите, как с помощью такой звуковухи голосовое управление получить??

carduino.ru
Offline
Зарегистрирован: 06.12.2011

Звуковая карта нужна только для того что бы подключить микрофон к роутеру, на роутере нужно будет писать программу для записи FLAC и отправлять его в google для распознавания

medossa
Offline
Зарегистрирован: 10.07.2012

carduino.ru пишет:

в google для распознавания

интересно будет посмотреть. я так понимаю алгоритм следущий: запись звука->обработка на компе->отправка на сервер гугла->обработка на сервере->приём на компе. Так получается? Задержка большая? И если не сложно, дайте ссылку по теме.

carduino.ru
Offline
Зарегистрирован: 06.12.2011

А комп для чего? Я планирую сделать все на роутере.

На компе делал пол года назад,  задержка на нем только из-за того что микрофон автоматически определяет паузу и для этого ему нужно около 2-х сек. Вот видео на котором используется распознавние голоса Google

Сейчас алгоритм у гугла поменялся, теперь можно отправлять голос на лету мелкими пакетами  

leshak
Offline
Зарегистрирован: 29.09.2011

medossa пишет:

 И если не сложно, дайте ссылку по теме.

Распознавание речи на STM32F4-Discovery

Все-таки существует какое-то "общее поле идей" :) Только  "о я круть задумал", как сразу же начинают появлятся статьи и обсуждения на эту тему:)

Я вот планирую попробовать сделать аналогично этой статье только на ардуино mega+enc28j60+Music Shield

Music Shiled для захвата голоса и кодирования (он железно умеет это делать). Можно и подешевле что-нибудь взять (или вообще без шилда обойтись), на более младших чипах. Он достаточно дорогой потому что еще MIDI неплохо синтезить умеет. Просто "он есть у меня".

Правда думал что прийдется какое-то локальное распознавание мудрить. Для активации. Хотя-бы на одно слово "команда". Что-бы не гнать постоянно поток гуглу. Трафик, да и, фактически, без активации, выйдет прямая трансляцию гуглу всего что в комнате говорится. Итак слишком много знает он про нас :)

Ну на крайняк думаю сделать "два хлопка" детектить, и уж с них начинать запись-распознавание.

carduino.ru
Offline
Зарегистрирован: 06.12.2011

leshak пишет:

 

Правда думал что прийдется какое-то локальное распознавание мудрить. Для активации. Хотя-бы на одно слово "команда". Что-бы не гнать постоянно поток гуглу. Трафик, да и, фактически, без активации, выйдет прямая трансляцию гуглу всего что в комнате говорится. Итак слишком много знает он про нас :)

Ну на крайняк думаю сделать "два хлопка" детектить, и уж с них начинать запись-распознавание.

Локальное распознавание можно сделать на EasyVR, но это дополнительное железо.

На ардуино локального распознавания не сделать по причине маленького обьема оперативки

Можно сделать автоматический тригер реагирующий на громкий звук, детектировать его по длительности  и по  амплитуде, после этого отправлять фразу гуглу

Мне кажется что лучшего решения чем роутер за 20$ еще нет

leshak
Offline
Зарегистрирован: 29.09.2011

carduino.ru пишет:

Локальное распознавание можно сделать на EasyVR, но это дополнительное железо.

Это понятно. Не просто "дополнительное", а "дополнительное узкоспециализированное", в отличие от, скажем Ethernet шишлда, который много где может пригодится. На Easy и проблемы-то нет :) Уже все сделали за тебя.

carduino.ru пишет:

На ардуино локального распознавания не сделать по причине маленького обьема оперативки

Возможно вы правы. Я, пока, вообще плохо представляю как алгоритмически/математически это делается. Но теплится надежда, что за счет использования, например, SD карты и того факта что нужно распознать одно слово- получится выкрутится. Причем не просто "одно слово", а "одно конкретное слово" (у него могут найтись какие-то легкодетектируемые признаки).

carduino.ru пишет:

Можно сделать автоматический тригер реагирующий на громкий звук, детектировать его по длительности  и по  амплитуде, после этого отправлять фразу гуглу

Да. Как я говорил, именно с этого я и собираюсь начинать. Детектить "два хлопка" в ладони.

carduino.ru
Offline
Зарегистрирован: 06.12.2011

leshak пишет:

Я, пока, вообще плохо представляю как алгоритмически/математически это делается. Но теплится надежда, что за счет использования, например, SD карты и того факта что нужно распознать одно слово- получится выкрутится. Причем не просто "одно слово", а "одно конкретное слово" (у него могут найтись какие-то легкодетектируемые признаки).
 

Для распознавания используют нейронные сети. Понадобится как минимум  создать нейронную сеть, обучить ее нужным фразам и разными голосами. Если у нас одна короткая фраза будет занимать 1000 байт, то у каждого  нейрона перврго слоя должен быть массив по 4000 байт. Нейронов перврого слоя должно быть как минимум 30-50(30х4000=120000байт), еще нужны массивы нейронов скрытого слоя. Если ссве на флешке организовать, то будет очень долго думать

leshak
Offline
Зарегистрирован: 29.09.2011

carduino.ru пишет:

 Понадобится как минимум  создать нейронную сеть, обучить ее нужным фразам и разными голосами. 

Ну, нейронные сети - не единственный подход. Но самое главное - мне не нужно его учить "нужным фразам" (да и один голос меня устроит). Мне нужно ОДНО КОНКРЕТНОЕ СЛОВО. Слово "команда". Все. Больше ничего. Вполне возможно что оно имеет какие-то характерыне всплески в спектре. И это достаточно будет что-бы его опознать. Если не имеет, можно попытатся другое слово, например "дУина". Покороче какое-то подобрать подходящие по смыслу и т.п. Например английское "Do" и т.п. Или вообще без смысла. Лишь бы короткое и легко детектилось в качестве активатора. Дальше в игру вступает гугл (в том числе и для перепроверки слова). Так что "ложный детект" не очень страшен (главное не пропустить).

P.S. Но мы немного убежали от изначальной темы ветки. Логичней было-бы это тут обсуждать. Просто упомянули тут про гугл в качестве voice движка, вот и я не выдержал. дал ссылку где "это уже пробовали".