Google ADK and Arduino
- Войдите на сайт для отправки комментариев
Втр, 28/08/2012 - 01:15
Привет,есть ли тут гуру Arduino? Появилось желание собрать свое ADK так-как гугл выдает такие вещи только разработчикам и только на руки,из этого становиться понятно что добыть такое крайне сложно,вот пример её использование http://youtu.be/XEe3dYBj7RE Можно ли собрать такое своими силами? Нашел тут плату,не знаю подойдет ли она http://tinyurl.com/9d8adlv + надо же еще какие-то датчики,сенсоры и т.п Может кто нибудь посоветовать что для этого надо? а собрать уже как нибудь сам постараюсь
как мне кажеться такую же штуку можно реализовать с любой ардуино платой имеющей USB host или с любым андроид смартом у которого есть такая потдержка.
а что вам мешвет стать 'разработчиком'.насколько я помню,Android ADK должна быть в свободном доступе,так как Android открытая ОС,сам скачивал года 2 назад для того чтобы сделать рут своему смарту посредством adb команд
хотя уж если совсем "никак",то самая простая,как мне кажеться, связка смарта и ардуины - через синий зуб.а управлять при помощи Arduino Commander-поищите в маркете,она кажеться даже бесплатна
И называется такая плата Arduino ADK :) http://arduino.cc/en/Main/ArduinoBoardADK
Вы совершенно верно говорите. ADK это не какая-то "особенная плата". Это просто Mega+Usb Host Shield "в одном флаконе". Просто спаяли их на одну плату. Для компактности.
Если взять обычную мегу и обычный USB Shield - с точки програмной точки зрения и электирической это будет ADK. Разница будет только в физических размерах.
Сильно подозреваю что и "Мега" тут нужна "постольку поскольку". И все стандартные ADK примеры с ютюба потянула-бы и солянка какой-нить UNO+Usb Shild.
>+ надо же еще какие-то датчики,сенсоры
Что значит "надо"? Ну вы решаете что за устройство вы хотите сделать, вот и берете такие датчики как вам нужно. Ну гугл сделали еще один шилд на котором есть некоторое количество кнопок, светодиодов, джойстик, переменный резистор... Но это, опять-таки, просто "еще один шилд с кнопками и датчиками". Не более того. Просто "для примера". Таких шилдов - сотни разных есть.
Лично я бы, на вашем месте. Купил-бы беспаячную макетку (фанат я их, да :), пополз на рынок, купил по "рубль ведро" кнопок (цифровой датчик :), светодиодов , парочку переменных резисторов (аналоговый датчик) - и вперед ;)
Вообщем никакой привязки "к железу" там нет. ADK это, по большому счету именно "софт", протоколы обмена, а не железо. Важнее что-бы его поддержка была в самом телефоне (некоторые производители "выпиливают" его). Со стороны железа. От ардуины "обязательно" требуется только USB Host. И то не уверен (возможно есть какие-то режимы где "хостом" может выступить Android устройство)
может я не допонимаю, но что даёт эта АДК??? Ну подключил мобилу по юсб к дуине, а дальше-то что???
может я не допонимаю, но что даёт эта АДК??? Ну подключил мобилу по юсб к дуине, а дальше-то что???
Микроконтроллер сам по себе мало кому интересен. Как правило, к нему цепляют некоторое количество исполнительных элементов, поручая программе рулить ими. Но это имеет не слишком много смысла - примерно как игра глухого на скрипке. Поэтому приходится дополнительно приделывать "глаза и уши", подсоединяя разнообразные датчики. Обрабатывая собранную с них информацию, микроконтроллеру значительно легче имитировать разумную деятельность.
Некоторые умники дополнительно вешают на свободные выводы МК кучу кнопок, чтобы иметь возможность влиять на выполнение залитой в него прошивки, меняя всякоразные коэффициенты. Отдельные джедаи идут дальше и пытаются к оставшимся после датчиков, исполнительных органов кнопок пины присоединить хоть какой-нибудь экранчик, чтобы держать руку на пульсе. А ведь данные еще можно и записывать на долгую память. А выводы - опаньки, кончились...
А тут пожертвовал всего парой-тройкой ножек и получил все в одном флаконе - и устройство ввода с целой клавиатурой, и устройство вывода, которое не только 32 символа за раз показать может, но даже график вывести или стрелочный индикатор сымитировать. Да и памяти для логгинга на коммуникаторе более, чем достаточно.
Неужели этого мало?
может я не допонимаю, но что даёт эта АДК??? Ну подключил мобилу по юсб к дуине, а дальше-то что???
Ну проблему голода на земле это точно не решит. Ответ тут скорее лежит в области ваших личных потребностей.
Ардуина решает какие-то ваши личные задачи? Наверное да. Раз вы ее купили (я так предполагаю). А кому-то будет "ну включили дуину, ну светится диод, а что дальше?". Если она их решает "автономно", то больше вам ничего и не нужно. АДК вам, действительно, ничего не даст.
Если сил дуины для решения поставленных вами задачь не хватает - начинаем ее подсоединять к компу, роутеру, ethernet-ту, андроиду и т.п. Вводить в систему еще одно устройство. Вот для прототипирования устройств состоящих из связки "микроконтроллер-андроид" и предназначена ADK.
А можно и с другой стороны прийти к этому результату. Вы - андроид разработчик. Но в какой-то момент поняли что для вашей игры/программы - уже не хватает возможности "три стандартные кнопки и экран", нужно еще какое-то внешние оборудование. Например вы пишите программу которая будет будить пользователя если ему приснился плохой сон. Причем глухого пользователя. И точности акселерометра встроенного, для определения фаз сна - вас не устраивает. Вы хотите еще и энцефалограму снимать. А как?
Ну вот значит берет датчики, подключаем их к Android ADK (дуине с USB-шилдом), ее - к телефону. На телефоне распознает "что происходит с человеком", пропускаем данные через какую-то распознающую систему. Как только "кошмар детектед", опять-таки через ADK начинаете его будет. Миганием люстры, разрядом тока, переворачиванием, с помощью сервы, тазика с водой и т.п.
Ну или вообще просто. Вы заядлый геймер и хотите сделать игровую клавиатуру которой нет ни у кого. И ставить рекорды на своем планшете.
Вообще ADK нужна для решения задач, где "отдельно андроида" или "отдельно дуины" - не хватает, а "вместе" они могут сделать что-то полезное.
Кстати, а никто не слышал, есть ли какие-то аналоги ADK для windows phone 8? А то даже как-то не приходит в голову как же гуглу правильно этот вопрос задать :(
ну теперь вроде более менее ясно) Значит можно в юсб хост воткнуть обычный блютус за 2 доллара и коннектиться с телефоном/планшетом? Там тоже появится виртуальный ком-порт, через который можно будет считать/отправлять данные? Если так, то круть)
to leshak у вас по моему есть какая-то .net дуина, она разве с win phone не подружится? Какие-то проекты уже есть
ну теперь вроде более менее ясно) Значит можно в юсб хост воткнуть обычный блютус за 2 доллара и коннектиться с телефоном/планшетом? Там тоже появится виртуальный ком-порт, через который можно будет считать/отправлять данные? Если так, то круть)
Могу ошибатся, но боюсь что нет. Когда вы "обычный блютус за 2 доллара" втыкаете в комп, то для него еще дрова ставятся. Которые часть "интелектуальной работы" берут на себя. И вы в любом случае юзаете какой-нибудь блюту-стек или микрософтовкий, или bluesoleil или тошибовский.
Так что для ардуины потребуется более "умный модуль". А значит и более дорогой (та же история с Wifi свистками). Которые "всю фигню" уже внутри себя переварить может, а ардуине выдать готовые RX,TX пины. И собственно промежуточные конвертации Blutooth->USB->Arduino уже не нужны.
К счастю они "дороже" не так уж и сильно. У нас (украина) их и по $10 найти можно. Возможон где-нить у китайцев еще дешевле будет.
Если у вас есть USB-хост шилд, то вы можете проводком к андроиду подрубатся. Если андроид старый и не поддерживает Android Open Accessory Protocol можно посмотреть в сторону в сторону ADB протокола (он изначально для отладки андроида предназначался, но умельцы еги и для общения с дуиной приспособили. Получается "неофициальный велосипед", зато работает на любых андроидах).
to leshak у вас по моему есть какая-то .net дуина, она разве с win phone не подружится? Какие-то проекты уже есть
Есть. Только затык-то не в плате. Самое главное что на андроиде есть "протокол". Стандарт. Для "сторонних устройств". " Android Open Accessory Protocol". Плата ADK - это частый случае реализации этого протокола. Вернее даже не плата, а библиотека для нее. Реализующая этот протокол. И в самом андроиде уже есть библиотеки умеющую работать по нему. Теоретически, ничего не мешает и .net плату по этому протоколу подрубить к андроиду.
Для win phone ничего подобного - пока не видел. Все ссылки которые находятся по вашему линку на гугл - это "велосипеды". Кто во что горазд. Посмотрел первые несколько штук. Там идет либо общение по WiFi, либо ввообще phone плата общается с компом, на котором крутится сервер, к которому через USB подключена .net плата.
А OAP подразумевает что устройство видится "более менее стандартно". Оно и расказать "сколько электричества кушать хочет" может, и выглядить как "стандартынй сенсор" или еще что-то подобное может.
Вообщем "сколхозить" конечно можно. И разницы на "ардуине или .net-плате" - особой нет. Хотя, возможно и чуток проще, все-таки в .net много готовых классов для работы с XML, WCF, SOAP и т.п. мденью (но можно и без них выстроить "кошмар" :)
Теоретически, ничего не мешает и .net плату по этому протоколу подрубить к андроиду.
Кстати вот теория превращенная в практику https://github.com/bcr/NetmfAndroidOpenAccessory - готовая либа для этого.