Проект Android + Arduino: должен ли я заставить их говорить через Bluetooth или USB?
Я начинаю проект, в котором я собираюсь попробовать написать программу для Android, которая будет управлять и/или отправлять/получать входные данные в/из устройства Arduino. Например, заставить светодиод мигать, как самый простой пример. Я могу либо получить Bluetooth щит для платы Arduino и пойти по маршруту Bluetooth, как в Примере Андроино! Управляйте Arduino с Вашего Android устройства с помощью дешевого модуля Bluetooth.
Или я могу купить USB-хост-щит для платы Arduino и пусть телефон разговаривает с устройством Arduino через USB-соединение, как в Примере приключения в разработке Android ADK: аппаратное обеспечение.
Какой вариант реализации проще и более надежен как от настройки оборудования (пайки? проблемы совместимости?) и перспективы программирования (требуются дополнительные скрипты Python? "прослушивание" на Android устройства Bluetooth против USB-устройства и отправка данных туда и обратно?) Я занимался Андроидом. разработка уже пару месяцев, но у меня нет опыта работы с Arduino.
Я не хочу, чтобы это был ленивый вопрос - я в состоянии провести исследование, но я неопытен и пытаюсь сразу выбрать свою реализацию, чтобы я мог заказать правильный аппаратный материал в срок. Я должен убедиться, что я выбираю реализацию, которую я действительно могу сделать.
EDIT: может быть, еще проще использовать экран ethernet на плате Arduino и заставить Arduino-гаджет разговаривать с Телефон Android через TCP / IP? Не знаю, почему это не пришло мне в голову с самого начала. Но, по-видимому, существует гораздо меньше учебных пособий по этому виду реализации, по причинам, в которых я не уверен.
3 ответа:
В настоящее время я работаю над проектом, который соединяет Arduino и телефон Android через bluetooth. И из моего опыта до сих пор все, что я могу сказать, это держись подальше!
Все статьи в интернете о дешевых модулях bluetooth, работающих идеально, по меньшей мере, вводят в заблуждение. Это может быть легко и идеально, если вы покупаете щит за 80 долларов, но не тогда, когда у вас есть бюджет. Я купил щит за 30 долларов, и он, похоже, работает только на одном из семи устройств Android, которые я пытался использовать. Кроме того, он кажется совершенно не реагирующим на стандартную методику подключения bluetooth и требует множество обходных/хакерских вызовов методов, которые все очень небезопасны и нестабильны.
С другой стороны, USB-соединение намного надежнее, лучше поддерживается и, конечно, имеет неотъемлемое преимущество скорости, и поскольку оно хорошо поддерживается, не страдает от всех ловушек, которые делает подключение bluetooth. Это так же легко настроить с точки зрения аппаратного обеспечения (не требуется никакой работы если вы получаете приличный щит), по разумной цене по сравнению с Bluetooth-щитами и по моему опыту, как правило, легче кодировать.
Если у вас есть бюджет и вы можете использовать проводное соединение, я настоятельно рекомендую USB через bluetooth.
Я не знаю подробностей ни того, ни другого. Но я бы сказал, что если телефон будет оставаться с платой, то используйтеUSB . Для снижения задержки и в целом, я считаю, что проводное соединение лучше для всех приложений.
У меня нет опыта работы в Arduino и некоторого приличного опыта в Android, и я решил подключить usb-соединение для работы от телефона к arduino, чтобы зажечь светодиод.
Я использовал Nexus One и Arduino Mega ADK, и я получил usb-соединение, работающее примерно за 5 часов возни, и я был абсолютно взволнован, чтобы получить светодиод, чтобы загореться, когда я нажму кнопку. Но потом я решил перейти на следующий уровень, потому что bluetooth звучал слишком круто, чтобы пройти мимо.
В любом случае около 30 несколько часов спустя я, наконец, получил его работу, и я могу сказать, что это было полностью стоит. Там была тонна, которую мне нужно было изучить, но как только я заработал ее, я могу сказать, что все это было не напрасно.
Я купил Bluetooth Itead V2. 2 shield ($25 для меня), затем подключил его к моему arduino и использовал мой Nexus One с Amarino, чтобы послать сигнал на мой чип и выключить и включить светодиод.Http://iteadstudio.com/store/index.php?main_page=product_info&products_id=468
Из моего опыта это было определенно трудно, но кривая обучения-это то, что делает эти проекты такими забавными. Так что я бы сказал-Вперед!
Удачи вам в ваших будущих работах!