Подключаем к ANDROID планшету ARDUINO NANO и конвертор USB<-->485,распознование голоса

Сейчас появилась куча дешевых китайских планшетов USB хостом. Обычно с ними идет переходник USB OTG для подключения различных устройств (USB флещки, мыши, клавы и т.д) Через него также можно подключить и более полезные вещи. Итак имеем 7 дюймовый планшет MID A-13 Android 4.1 и плату-клон ARDUINO NANО на usb чипе CP2102. Делаем для примера простейшую систему контроля доступа на ключах DS1990 (те которые применяются в домофонах) Работает система так. Если ключ записан в базе то показываем фотку и открываем дверь. Так-же можно открыть дверь кнопкой с андроид или с платы ARDUINO. Программу под ARDUINO писал под WINAVR (исходники и пример с протеус в файле)

Вот как примерно это смотрится:
Контроль доступа
Видео работы: Контроль доступа ARDUINO NANO c чипом CP2102


Теперь по подключению конвертора USB<->485 к планшету с ANDROID.
Имеем платку конвертора на чипе FT232RL и MAX485 аппаратно присутствует «эхо» это удобно для проверки. На ANDROID планшет пишем программу терминал через которую отправляем данные в 485 сеть. Все теперь можем рулить устройствами на 485 сети.

Вот как это смотрится:
Терминал
Видео работы:USB485 c чипом FT232RL


Тестируем голосовые технологии Google на андроид планшете.Подключаем к аудио выходу планшета контроллер и голосом включаем нужное реле.Пока работает в online но c версии Android 4.1 Jelly Bean обещают offline распознование offline voice
Думаю может пригодится например в системах «Умный дом». Надо отметить что не все четко распознается, но у гугля есть фича позволяющаяя настроится под голос.Не знаю будет ли она работать в offline.
Пока вот что получилось:
Андроид включение голосом реле


Вывод:
Андроид становится все более привлекательным для построения интересных систем с микроконтроллерами. :)
Ссылка на файлы проекта
Файлы проекта

===================================================================
18.04.2013 сделал прогу терминал для тестирования микроконтроллеров и управления
устройствами чере переходники USB<-->COM для АNDROID устройств с USB OTG
Поддерживает USB чипы FT232L,CP2102,PL2303
Скачать можно тут:
TermUSB
Пишите замечания предложения.
  • -3
  • 05 марта 2013, 21:17
  • alexhi

Комментарии (67)

RSS свернуть / развернуть
ниачем
+5
Плюсую
+1
Как-то все сумбурно. Ни схемы, ни нормального описания устройства, ничего-то еще особенного. Никто собственно и не сомневается в способности Андроида работать с кастомными девайсами. Все зависит от того что в самом девайсе запишешь. Я вот сейчас html-ку скриптовую отлаживаю, чтоб в том числе и с телефона на девайс можно было зайти и сконфигурить…
+1
Я же написал не могу прикрепить файлы с исходниками, пишет
Недостаточно рейтинга для загрузки файла :( да и схемы на ARDUINO в инете и так есть.
0
было бы желание. линк на гитхаб/рыгхост/етц…
0
Вот залил Архив
0
ну хоть что то. добавь в статью и распиши подробнее.
а кат где?
0
Ну, проект можно также прикрепить ссылкой. Но самое ценное было бы разобрать с примером и описанием тонкости процесса подключения и возможные грабли, с которыми пришлось столкнуться. То что я воткнул одно в другое и оно что-то там сделало, особой ценности не несет. Интересен сам процесс интеграции.
Тогда кстати и рейтинг добавится, чтоб файлы прикреплять, а на текущей стадии — только к шахтерам в гости… :)
+1
В смысле на на девайсе Web сервер, а на телефоне клиента пишете?
0
на телефоне обычный браузер
0
тем более что телефон даже не Ведроид, а Симбиан
0
Да, забыл про режим зануды…
Поставьте тег cut до обеих картинок, т.к. они все равно никакой информации не несут. Только место на экране занимают.
0
кстате.
КАААТ!!!
и как я это проморгал… ;)
0
Вывод.Андроид становится все более привлекательным для построения интересных систем с микроконтроллерами. :)

Вывод не совсем корректный. То, что к любому USB хосту можно подключить любое USB устройство – это заслуга стандарта USB. То, что CP2102/FT232RL автоматически «подхватились» системой – это заслуга ядра Linux. Я не имею ничего против Андроид, но Вы слишком переоцениваете его роль (в данном случае, от Андроида у вас только UI).
+1
То, что CP2102/FT232RL автоматически «подхватились» системой – это заслуга ядра Linux.
а вот инихера. это заслуга конкретной сборки ведроида. и только. у меня СР2102 ни на одном ведроиде искаропки не подхватилась.
0
Не, в ядре как раз то и нет дров для USB<->COM все сделано на уровне сервиса и проги.Китайцы стандартно обычно подключают только дрова для флешек, клав и т.д.
0
Извиняюсь, я, честно говоря думал, что драйвера для распространённых конвертеров включены в поставку. В любом случае, еcли нет драйверов, значит поддержка реализована через USBFS (исправьте меня, если я не прав, но других способов работы с устройствами USB в Linux, кроме как через нативные драйвера или через USBFS я не знаю).

Я просто хотел сказать, что заслуга Андроида, в данном случае, преувеличена. Я, когда-то делал подобные вещи на КПК с USB хостом и Windows Mobile 6.0. Все чудесно работало, но ведь нельзя утверждать, что Windows Mobile была «привлекательным для построения интересных систем с микроконтроллерами».
0
Я хотел сказать что Андроид хорош тем, что при не очень большой цене (мой планшет на котором я это делал, покупал на МИТЬКЕ за 2600руб)можно делать неплохие вещи.Во многих случаях он может заменить комп.Да и просто как панель для устрой то же вполне ничего.Только куча нюансов.Китайцы накрутили :)
0
на МИТЬКЕ за 2600руб
т.е. ему красная цена полтинник с доставкой.
Да и просто как панель для устрой то же вполне ничего.
а вот это отличное применение ультрадешевым таблеткам. т.к. купить сенсорный 7" экранчик за полтинник — нереально. а тут еще и корпус, и мозгов немного, и вафля.
0
Да наверно у китайцев стоит около этого.Думаю свою прогу с контроллером перевести на Андроид.(Сейчас КОМП и коробка с контроллером на ATMEGA)Уже не имеет смысла коробки свои делать, не красиво да и по цене практически то на то и выходит.
0
ну, мозг лучше свой на кнтроллере. просто потому, что в контроллере ты все контролируешь (мнда. криво сказал). а что там в ведроиде вертится — хз. а вот как интеллектуальный терминал — он самое то.
0
Это да, но иногда практически все можно переложить на Андроид.А контроллер просто исполняет команды и реал тайм, да и для «защиты» от копирования контроллер очень полезен :)Стоят сейчас копейки.
0
Учитывая разнообразие всякого рода высокоинтелектуальных оконечных устройств (всякого рода датчиков и т.п.), коих, одних только видов, китайское народное хозяйство напроизводило чуть более, чем дохера, — прослойка в виде микроконтроллера в ряде задач становится просто ненужной!
Пример: термометр встроенный есть во многих моделях планшетов (китайцы любят совать всякие околополезные ненужности куда ни попадя), осталось прикрутить анемометр с барометром — и у вас уже готовая мобильная метеостанция с логгером и возможностью телепортации данных куда-нибудь на удаленный сервер где-то в аризонской пустыне…
0
Внезапно, промелькнули слова RS-485, Arduino, Android — чел не иначе как «Умный Дом» делать собирается. Когда же наконец на Cithub-е выложат подобие SCADA для «Умного Дома» на Android-е и под Web? Тоже хочу!
0
Я хотел сказать что Андроид хорош тем, что при не очень большой цене (мой планшет на котором я это делал, покупал на МИТЬКЕ за 2600руб)можно делать неплохие вещи.

Теперь я понял, что Вы имели в виду. Но, ИМХО, зря Вы ассоциируете «планшет» с «Андроид». «Китайский» планшет действительно интересен по соотношению цена/возможности как готовая платформа для использования ее в своих, эмбеддерских целях. Но планшет != Андроид. Лично я бы предпочел в, данном случае, планшет с полноценным дистрибутивом Linux (Ubuntu, насколько мне известно, активно движется в этом направлении). Просто, ИМХО, стандартный дистрибутив проще перекроить под свои, специфические задачи чем Андроид. А что касается аппаратной платформы – однозначно китайские планшеты выглядят привлекательно.
0
Да Ubuntu наверное доточат и под тачскрин Андроид, но то что я пробывал пока «костыли».Вся прелесть Андроида пальцами тыкать в большие красивые кнопки! Вы пробывали планшеты с Windows там вообще кто это придумал на кол сажать надо.Да Windows Mobile ненамного лучше было(давно писал под него)Только стилус! А Андроид строился под палец :)
0
Под большинство китайских планшетов и, вообще, Android устр-в Linux-а нет и не будет. Даже производители процов многие не делают BSP(Board Support Package) для Linux — только под Android. Кроме того, как уже сказано, поддержка тач-скрина и граф.интерфейсы Linux не идут ни в какое сравнение с Android. И последнее, разве Android не есть Linux, там ведь ядро от Linux?

Ловко проделали дельце в Google — взяли готовое opensource ядро, кое-что прикрутили уже готовое и бесплатное(java, например) поднастроили сверху кое-что и подняли неплохое весьма бабло, а Oracle и сам Linux в пролете полном в этом жирном секторе :)
0
Ловко проделали дельце в Google — взяли готовое opensource ядро, кое-что прикрутили уже готовое и бесплатное(java, например) поднастроили сверху кое-что и подняли неплохое весьма бабло, а Oracle и сам Linux в пролете полном в этом жирном секторе :)
Жаба там не готовая и отнюдь не бесплатная (в том смысле, что за контору, которая делала Dalvik они отвалили бабла). Ну и насчет «подняли бабло» это, пожалуй, отдельная забавная тема, учитывая, что андроид, вообще-то, бесплатен и раздается в сорсах всем желающим :)

P.S. бабла они подняли, но вовсе не на том, о чем вы написали.
0
Да и нахрена все в виртуалке Dalvik крутится то-же непонятно.Напрямую до железа хрен доберешся.C временем жизни Activity тоже не совсем удобно работать и т.д.Но Google конечно молодец :)
0
Я где то читал что это связано из безопасностью. То есть код выполняется только в строго обозначеных рамках и других ему не дано. Хочеш виполнять что то другое, ставь рут и будет тебе полный доступ к системе. Даже что то такое слышал что и майкрософт хотят забацать что то на подобее Дальвика.
0
Дальвик и безопасность несколько параллельны. Сам дальвик это просто программа, которая исполняется с правами пользователя. Из этого реюима сломать что-то крайне сложно.
0
Да и нахрена все в виртуалке Dalvik крутится то-же непонятно.
Жабе нужна виртуальная машина. Ну то есть ее, конечно, можно в нативный код скомпилировать, но это не имеет смысла.
0
Да и нахрена все в виртуалке Dalvik крутится то-же непонятно.
Но Dalvik — это вирт.машина для Java приложений, которые разрабатываются в Android SDK. Но у них же еще есть Android NDK, чтобы разрабатывать ПО на C/C++.
0
Я, честно говоря, не понял — как связанны ваши высказывания
Под большинство китайских планшетов и, вообще, Android устр-в Linux-а нет и не будет
И
И последнее, разве Android не есть Linux, там ведь ядро от Linux?

Да, там ядро Linux, именно оно обеспечивает HAL и т. д. Ели есть ядро Linux – то на основании этого можно, теоретически, поднять ОС на базе GNU/Linux либо, как частный случай, Android.

Кроме того, как уже сказано, поддержка тач-скрина и граф.интерфейсы Linux не идут ни в какое сравнение с Android.

Это исключительно вопрос высокоуровневого интерфейса, какая проблема написать свою графическую оболочку заточенную под тач-скрин?
0
Потому что нет BSP(Board Support Package) — ядро стандартное еще ничего не значит, есть периферия самого проца и устройства, которая у всех может быть разная + reference design самого устр-ва на базе проца + просто datashest, который «зашифрован». Некоторые производители ARM Cortex-Ax, выкладывают на сайте BSP и ядра отдельно под Android и Debian, например. Другие только под Android, третьи ничего не выкладывают(китайцы), но предоставляют ядро и BSP OEM производителю — он уже выкладывает готовые прошивки на своем сайте. Кое-что из закрытого тупят/ковыряют энтузиасты — но это не совсем серьезно, когда процы и устр-ва меняются, как перчатки каждые полгода/квартал.
0
Не сочтите за критику, может я сильно отстал от встраивания систем на основе ядра Linux, но все же ядро Linux имеет достаточно унифицированный механизм вызовов функций ядра. Более того, программисты редко напрямую вызывают функции ядра, обычно используют прослойку уровня libc, libm и т д.

Я мало знаком с идеологией Android, отсюда вопрос:

ядра отдельно под Android и Debian

Чем отличается ядро для Android и ядро для Debian? И, если уж на то пошло, чем отличается ядро для Debian от ядра для redhat? Окружение отличается однозначно, но чем отличается ядро Linux?
0
Я этого точно не знаю, но встречался с таким(Android отдельно, Linux отдельно) вот для Freescale i.Mx 6 нет общего BSP под просто процы, а под конкретные их платы(т.е. reference design), кроме того ядра могут иметь разную версию у Linux и Android.
0
Вот здесь еще в конце статейки я давал адрес ftp, но там здоровенные образы надо тянуть с ftp.
0
Иногда мне кажется, что я даже из своего Мухожопинска вижу блеск Ваших глаз при упоминании Ардуино и Ведроида!!! ;) Без обид. Это есть гут! Вот, Sparkfun разродился… Может заинтересует.
0
Я, честно говоря, не понял — как связанны ваши высказывания
Фраза «разве Android не есть Linux, там ведь ядро от Linux?» имела смысл, что Linuxer-у это вполне должно быть по душе — писать/дотачивать ПО для Android, это же не Windows 8 какой, например.
0
— Все, началось…
— Караул! Ардуинщики идут!
— Да они еще и на Андроидах дешевых китайских, как танках прут! Спасайся кто может!
— Что орешь? Куда бежать то — «у меня жена, трое детей и еще одна женьщина в Ростове-на-Дону»?!
— Подавайтся надо в нано-технологии, ну или в био-технологии — расхачим местных «ботанов»! Ну или на худой случай уходить в леса DSP и ПЛИС — здесь скоро уже будет есть нечего…
-2
Что за безсмысленной набор выражений? Вы что то приняли?
0
— Стой, кто идет! Пароль!
— ARDUINO.
— ANDROID. Проходи, брат.
-2
ждем лайфлавера. может хоть на ардуину отреагирует. ))))
0
Это точно я сам Ардуино не люблю, плата валялась.Тем более я написал что пишу для нее на WINAVR на чистом С :) Шутку оценил :)
0
Взять Arduino и написать на WinAVR на C — это изощренное издевательство!
0
Файлы можно залить на Гугл диск, Яндекс диск, Дропбокс ...
Попробуйте сейчас прикрепить файлы к статье, добавил вам рейтенга.
0
Я же написал что залил на webfile.ru/6414313
0
Дык и прикрепите в статье(отредактируйте). Смысл читать все комментарии чтобы найти ссылку.
0
А исходников для Андроида не будет. Меня они больше интересовали ))
В чем писали для Андроид??
0
Любят же у нас в России поднасрать.
0
Я про «караул ардуинщики».
0
Это юмор такой. Я сам люблю Android и Arduino, особенно Due, но и nano весьма хороша, да и классическая Uno впечатляюще смотрится на DIN-рейке.
0
Минусы же говорят о том, что это уже серьезно — это серьезное(денежное/полезное) дело, а не какие-то Хи-хи, ха-ха и бла-бла-бла B| «Какие такие смешки в реконструкционный период?»
0
Я тоже ничего не имею против ARDUINO, но для меня это просто удобная платка с бутлоадером не более того.Но судя по популярности много народа ее пользует, делает заказы получает деньги.Не вижу ничего в том плохого.Ну отбывают они у кого то клиентов(скачал/подправил скетч и вставил новый шилд), опять конкуренция полезное дело, а без головы все одно не сделаешь :)Дельфи вон сколько народа кормила, а сейчас JAVA.Просто наступают другие времена.Главное что-бы к месту было.Кстати у меня Ардуина осталась от одного проекта управление макетом здания(освещение включалось, крыша поднималась и т.д).Ребята взялись, но что-то у них не сложилось.Закрыл контроллером на АTMEGA16, роутером MR3020 и телефоном по WIFI.Я к тому что Ардуино не панацея.Как говорил наш барабанщик, не имей Амати, а умей Играти :) Думаю за праздник если подключить к Андроиду китайский переходник USB<--> RS232 на чипе Prolific PL2303(цена небольшая, да и полно их как «говна за баней» :) ) По идее должно получиться.Тогда все основные драйверы FT232RL,CP2102 и PL2303 будут закрыты.Как сделаю отпишу в блог.Пространных объяснений не будет, кому надо поймет и так, кто попи… ть тому и не надо.Это развращает.:)Лучше увидеть что работает и делать самому.И это правильно(С) :)
0
видио…
0
  • avatar
  • 21h
  • 06 марта 2013, 07:35
Снова спрошу: а почему не FT311D и AOA?
0
Потому что у меня ANDROID является хостом, он выдает и принимает данные в ком порт.И контроллеру вообще говоря до фонаря в АNDROID его воткнули или в PC, если ставить FT311D и др. то там наоборот контроллер становится хостом и должен питать Планшет что не вери гуд да и дорогие они :)
0
А не проще взять WR703 соединить его с arduino (или еще с каким нибудь фуфлом) и через wifi соединяться с любым androido'м. И не надо никаких переходников-проводов-ADK-Eclipse?
0
  • avatar
  • x893
  • 07 марта 2013, 03:58
Я так делал на TP-LINK MR3220 через консоль RS232 подсоединял контроллер, на роутере (OPENWRT)запускал ser2net, все работает.Но тут есть два но.Не всегда можно применять WI-FI (ну просто запрещают :( ), и второе на каждый контроллер роутер не поставишь(800руб) а ставить например роутер и 485 (не всегда можно, конструктив :( ) Да и во многоих случая проще купить для планшета переходник USB LAN(у китайцев 5$) и контроллеры через сеть рулить.Так вообще правильно.Но у меня часто конкретная задача.Есть контроллер(медицинский прибор) с USB(FTDI) подключеный к компьютеру, надо убрать компьютер и поставить вместо него планшет с красивымы кнопками :) Тогда мое решение(планшет <-->USB) по моему ложится правильно.

PS кстати получилось подключить и переходник USB<-->RS232 на чипе PROLIFIC PL2303 работает.На двух моих планщетах(MID-A13 и MID-721) работает.Надо потестировать на других планшетах.Китайцы могут хрен чего накрутить.
0
USB переходник подключали с использованием SerialPort_1.1.apk или как-то по другому? Если другое решение, поделитесь пожалуйста. Хочу заменить LAN, меня не устраивает: 1)ток потребления, причём с двух сторон:-) 2) исчезновение разъёма LAN на новых планшетах, только беспроводный.
У меня, кстати, переходник Пролифик не определился… А теперь и планшет в кирпич превратился. Есть второй, но он не хочет форматировать карту.
0
Нет не SerialPort, а вот это
code.google.com/p/usb-serial-for-android/
там и пример есть.У меня сделано то что apk в шапке лежит поддерживает cp2102 и ftdi. Проверил на двух разных планшетах работает.Если надо под профилик то могу выслать можете попробывать у меня работает.Но конечно за все китайские планшеты, сами понимаете не ручаюсь у них там много чего наверчено :) Делаю сейчас это под заказчика, он меня планшетами снабжает, насмотрелся :)
0
Да, я по этой статье и действовал. Она давно вышла. Но с этим планшетом, а у меня это просто терминал, не вышел каменный цветок… Только эзернет поднял, но там свои минусы. Второй планшет ещё не пробовал, пока руки не доходят. А так выгодно получается. Мои российские партнёры списывались с китайцами, они планшеты в разобранном виде в партии 10 шт по 30$ предлагали. Уже с Андроидом 4.х. Беспроводная связь не подходит, в метре от планшета работает импульсный генератор 1000В 50А. Входные цепи WiFi перегружаются и скорость падает жутко и часто рвётся.
0
Да 1000В и 50A не кисло:) А какой планшет у Вас на каком камне? и какой андроид.Ниже 3.1 работать с этой либой не будет.
0
Зто импульс 4нс, центральная частота 780МГц но всё же на связь влияет… Первый планшет на WM8650, версия была 2.2 заменял вроде на 2.6. Второй на каком-то АРМе, версия уже 4.1. Насчёт 3.1 что-то не заметил. Да и первые сообщения на Вики появились, когда ещё 2.2 в ходу была. Где-то в конце 2011. В середине 12-го я попробовал. Не получилось, перешёл на эзернет.
На Хабре вполне нормально подняли линк USB-RS232 на версии 2.2. У меня прошивка 2.6 встала как-то криво, может поэтому.
0
Нет они пишут что работает начиная с API 3.1
This is a driver library for communication with Arduinos and other USB serial hardware on Android, using the Android USB Host API available on Android 3.1+
Я не пробывал ниже 4.0, но верю.Там и SIP/VOIP протоколом ниже тоже проблемы(я делал SIP клиента для домофонии).Так что нужно ориентироваться на 4 :)Вообще стараюсь делать только на «стоковой» прошивке.Так и с гарантии не слетаешь, и не ловишь баги что там сборшики налепили(китайских хватает :) ) Посмотрите на 4PDA вопли не работает!!! кирпич! экран сдвинут :) и т.д Тем более стоковые сейчас идут вполне нормальные и с ROOT.
0
Да, я эти вопли читаю год уже… Поэтому и взял второй с 4.1, такой же дешевый, именно как терминал. Кстати, работает вполне нормально и батарея немного лучше. Только его у меня дочь отобрала:-)
Я вообще-то сейчас больше на смартфоны выше 600х800 рассчитываю. Мои клиенты предпочтут свой такой иметь или уже имеют. НТС, Самсунг и прочие. Им планшет не так интересен. Но тут неясно, как поведет себя смартфон при частом отваливании сети. Возможно, будет тратить много энергии на попытки восстановления связи, вот тут планшет лучше выглядит. В общем, пока и то, и другое имею в виду.
0
Только зарегистрированные и авторизованные пользователи могут оставлять комментарии.