8-900-374-94-44
[email protected]
Slide Image
Меню

Mega adk подключить по usb: Купить USB Host совместимый с arduino Android ADK Arduino/ESP/Raspberry Pi (Доставка РФ,СНГ)

USB устройства для Android / Хабр

blo

Время на прочтение 2 мин

Количество просмотров

76K

Разработка под Android *

Одной из самых интересных новинок, представленных на Google I/O 2011, можно считать анонс полноценной работы Android устройств с USB.
Новый Android поддерживает два USB режима — хост (Host mode) и устройство (Accessory mode).

С хост режимом все просто и понятно — это подключение к Android устройству клавиатуры, мыши, цифровой камеры, внешних накопителей и т.д.
А вот с режимом USB устройства все намного интереснее. В этом режиме внешнее USB оборудование выступает в роли хоста для Android устройства и таким внешним оборудованием могут выступать док станции, роботизированные контроллеры, диагностическое и музыкальное оборудование, спортивные тренажеры, кардридеры и многое другое.

USB оборудование для Android должно поддерживать протокол (Android accessory communication protocol)

Наглядно понять разницу между двумя режимами можно по схеме:

Когда Android устройство выступает в роли USB хоста, то оно питает шину. Когда же Android устройство находится в режиме USB устройства, то шину питает подключенное к нему оборудование.

Режимы USB хоста и USB устройства поддерживаются начиная с Android 3.1 (API level 12). Режим USB устройства также портирован в Android 2.3.4 (API level 10) в виде библиотеки, поддерживающей большой набор устройств. Производители оборудования сами решают добавить им в системный образ эту библиотеку или нет.

Для разработки USB оборудования для Android предлагается Android Open Accessory Development Kit (ADK), который является имплементацией USB оборудования для Android и включает в себя макет на основе Arduino, код прошивки для Accessory mode и Android приложение для взаимодействия с оборудованием.

В роли аппаратного средства для разработки выступает набор RT-ADK&RT-ADS, который нам пытаются продать за ~390$

Хотя это это всего лишь Arduino Mega2560, Circuits@Home USB Host Shield интегрированный в плату, и набор датчиков и элементов управления. Такой набор обойдется до 100$.

Кроме различных датчиков и индикаторов для Arduino существует большое количество плат расширения (Arduino shield), способных превратить USB устройство, например, в робота.


Презентация Android Open Accessory API and Development Kit (ADK) на Google I/O 2011

Android Open Accessory должен способствовать появлению большого числа разных аксессуаров для Android устройств.

В будущем планируется что Android Open Accessory кроме USB интерфейса будет также поддерживать и Bluetooth.

Теги:

  • android
  • arduino
  • adk
  • usb

Хабы:

  • Разработка под Android

Всего голосов 29: ↑26 и ↓3 +23

Комментарии 25

Алексей Журбицкий @blo

Пользователь

Комментарии Комментарии 25

Начало работы с MALT — Windows drivers

Twitter LinkedIn Facebook Адрес электронной почты

  • Статья
  • Чтение занимает 4 мин

В этом разделе описано, как передать встроенное ПО в MALT, а также как выполнить калибровку датчиков с помощью SensorExplorer. Рекомендуется, чтобы компьютер, контролируемый микроконтроллером, также был тестируемым системой или устройством (SUT/DUT).

Ориентируясь на MALT

Передний план MALT (AMBIENT FACING)Задняя часть MALT (ЭКРАН С ВЫХОДОМ)

Настройка оборудования

  1. Подключение Arduino Mega на устройство с помощью кабеля USB 2.0 типа A/B.

  2. Подключение платы контроллера MALT на задние контакты Arduino Mega с помощью кабеля ленты радуги.

  3. Подключение платы контроллера MALT до платы датчика MALT с помощью кабеля CAT5(x) или CAT6(x). (Например, CAT5, CAT5e, CAT6 и т. д.)

    Примечание

    Кабель Ethernet, используемый для подключения платы контроллера MALT к плате датчика MALT, должен иметь все 8 проводов, и эти провода не должны пересекать.

  4. Нажмите кнопку сброса на Arduino Mega.

Получение необходимых файлов

  1. Создайте папку с именем MALT на диске C компьютера. Путь к файлу должен быть C:\MALT. Здесь мы разместим все необходимые файлы и клонированные репозитории.

  2. Клонируйте репозиторий busiotools в папку MALT . Путь к файлу должен быть C:\MALT\busiotools.

  3. Клонируйте репозитории SerialCommand и SoftI2CMaster в папку

    MALT . Пути к файлам должны быть C:\MALT\Arduino-SerialCommand и C:\MALT\SoftI2CMaster соответственно.

Обновление встроенного ПО MALT

MALT выполняется Arduino, для которого требуется встроенное ПО для настройки и взаимодействия с датчиками на плате MALT.

  1. Получите и настройте интерфейс командной строки Arduino.

    1. Скачайте последнюю версию arduino-cli и сохраните ее на компьютере.

    2. Добавьте arduino-cli в переменную PATH, если вы еще не сделали этого.

      Примечание

      Закройте командную строку и откройте новую командную строку после добавления arduino-cli в переменную PATH!

    3. Выполните следующую команду из командной строки с повышенными привилегиями:

      arduino-cli config init
      arduino-cli core update-index
      arduino-cli core install arduino:avr
      
  2. Добавьте необходимые библиотеки из диспетчера библиотек Arduino, выполнив следующую команду из командной строки с повышенными привилегиями:

    arduino-cli lib install MatrixMath
    arduino-cli lib install AsyncDelay
    
  3. Определите COM-порт, назначенный Arduino, выполнив следующую команду из командной строки с повышенными привилегиями:

    arduino-cli board list
    
  4. Отправьте встроенное ПО в Arduino, выполнив следующую команду из командной строки с повышенными привилегиями и заменив X в COMX на номер COM-порта, указанный на предыдущем шаге:

    arduino-cli compile --fqbn arduino:avr:mega --port COMX --upload --library C:\MALT\Arduino-SerialCommand --library C:\MALT\SoftI2CMaster C:\MALT\busiotools\sensors\tools\MALT\Code\malt
    

    Ожидаемые выходные данные приведены ниже.

Калибровка датчиков цвета MALT

Датчики цвета MALT не поступают на заводе, откалиброванные для реальных цветов мира. Ниже приведен процесс калибровки, чтобы обеспечить точное чтение.

Калибровка для MALT должна выполняться для датчика цвета окружающей среды и датчика цвета экрана. Этот процесс должен выполняться только один раз на доску датчика, а микросхемы памяти на PCB сохранят этот параметр. Чтобы обновить параметр, нажмите кнопку сброса на arduino.

  1. Подключите MALT к USB-порту на SUT.

  2. Откройте SensorExplorer и перейдите на вкладку MALT слева (No 3). Выберите правильный тип Vid/Pid в области выбора устройства» и выберите Подключение на устройство.

  3. Выберите вкладку «Калибровка» в верхней части окна.

  4. Известные значения цвета являются ключом к любому процессу калибровки и поступают от датчика, который уже был откалиброван и имеет правильные значения.

    Соберите эти значения с помощью ручного устройства с внешней калибровкой, например i1Display Pro для захвата значений XYZ и трех цветных источников света, представляющих красный, зеленый и синий. Вы можете использовать цветные коробки ниже для калибровки ручного устройства. Для поиска этих чисел можно использовать любое устройство с проверяемо правильными значениями, например существующий откалиброванный компьютер. Эти значения XYZ должны быть примерно в диапазоне от 0 до 100, чтобы быть наиболее эффективным. Сделайте это для красного, синего и зеленого.

    Поместите наблюдаемые значения в матрицу известных значений 3×3, используя следующий шаблон:

    ┌                                                            ┐
    │Known RED X value | Known BLUE X value | Known GREEN X value│
    │Known RED Y value | Known BLUE Y value | Known GREEN Y value│
    |Known RED Z value | Known BLUE Z value | Known GREEN Z value│
    └                                                            ┘
    

  5. Необработанные или немасштабируемые значения — это значения, которые выходят из немасштабируемого датчика цвета MALT до применения любой математики или калибровки. Соберите эти значения, указывая MALT на те же цвета отображения, из которые были собраны известные значения. Этот шаг важен и делает уравнение надежным. Определите, выполняется ли калибровка датчика с экрана или внешнего датчика. Это решение определяет, какая кнопка пользовательского интерфейса нажимается при сборе данных.

    Наведите нужный датчик на цветовые блоки, указанные ниже, и выберите«Экран чтения» или«Внешний вид » для каждого цвета, определяемого датчиком, который вы калибровки.

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

  6. После заполнения известных значений и необработанных немасштабируемых значений нажмите кнопку «Вычислить » в нижней части экрана. Матрица калиброванных значений 3×3 должна заполняться примерно так же, как на следующем снимке экрана.

    После создания этих чисел выберите«Топ»или«Снизу калибровки » в соответствии с датчиком, который вы выполняете калибровку.

Тестирование калибровки MALT

После правильной калибровки датчика цвета экрана и датчика внешнего цвета вернитесь на домашнюю вкладку раздела MALT, выбрав «Главная » в верхней части окна.

На вкладке «Главная» вы сможете выбрать любую кнопку под заголовком данных датчика и вернуть не отрицательные числа.

Устранение неполадок

  1. При калибровке необработанные значения совпадают с тем, нажимаете ли вы клавиши Read Screen RED, Read Screen GREEN или Read Screen BLUE (аналогично true с read Ambient).

    • Убедитесь, что плата датчика MALT подключена через кабель Ethernet.

    • Затем убедитесь, что кабель, который вы используете, может поддерживать Power Over Ethernet (POE). Все кабели CAT5 или лучше поддерживают это.

    • Наконец, попробуйте нажать кнопку сброса на Arduino Mega, если вы уверены, что ваш кабель suppports POE.

  2. При калибровке матрица калибровки содержит «NaN» в одном из квадратов после нажатия кнопки «Вычислить «.

    • Убедитесь, что необработанные значения предоставляют разные числа для RED, GREEN и BLUE.

    • При нажатии клавиши RED, зеленый при нажатии клавиши GREEN и синего при нажатии клавиши BLUE убедитесь, что датчик MALT содержит красный цвет.

    • Если необработанные значения по-прежнему не отличаются, проверьте значение 1 выше.

  3. После завершения калибровки (т. е. вы выбрали калибровку сверху или снизу калибровки) датчик считывает необоснованные значения на начальном экране.

    • Убедитесь, что вы на самом деле выбрали кнопки Calibrate Top или Calibrate Bottom .

    • Если вы уверены, что вы правильно откалиброли верхний и нижний датчики, учитывая приведенные выше инструкции, по электронной почте sensortools@microsoft. com.

Если этот раздел устранения неполадок не устраняет проблемы, отправьте сообщение электронной почты [email protected].

android — Не удается подключить плату arduino mega ADK с помощью USB-хоста

спросил

Изменено 10 лет, 9 месяцев назад

Просмотрено 3к раз

Я безуспешно пытался подключить Arduino Mega ADK с помощью исходников Demokit к нескольким телефонам.

Я скомпилировал и загрузил скетч Arduino «Demokit.pde» с помощью arduino 0022. Выглядит нормально, так как плата отправляет «старт» на клиентский USB-порт.

Я скомпилировал приложение Demokit под Eclipse, используя Google API 10 (для телефонов с Gingerbread) и Android API 15 (для ICS). Все в порядке.

Со стороны телефона я попробовал следующие настройки:

И ничего не произошло. В журнале eclipse есть только предупреждение:

W/PowerUI(654): неизвестное намерение: намерение {act=android.intent.action.ACTION_POWER_CONNECTED flg=0x10000010}

Больше ничего. Интересно, может ли плата иметь проблемы с USB-хостом…

Есть у кого идеи?

Спасибо

  • android
  • usb
  • arduino
  • adk

Есть несколько мест, где что-то идет не так.

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

Далее при подключении к плате телефон начинает заряжаться? Это покажет, есть ли какие-либо проблемы с подключением телефона к плате.

Из 3 телефонов я бы посоветовал вам попробовать nexus S со стандартным ПЗУ, так как CM (даже после нажатия банок) имеет проблемы с включением ADK.

2

Проблема возникла из-за процедуры настройки в скетче Demokit. pde. Я использовал макетную плату для его запуска, но я не подключил все компоненты, а для инициализации джойстика i2c необходимо, чтобы компонент был подключен, иначе процедура переходит в бесконечный цикл. Поэтому, если вы попытаетесь запустить Demokit.pde без платы demokit, обязательно подключите правильный джойстик или прокомментируйте вызов процедуры инициализации.

Пример демонстрационного комплекта на самом деле довольно сложен для начального теста. Я бы посоветовал после запуска программы мигания убедиться, что ваш Arduino Mega ADK работает, чтобы попробовать более простой первый тест.

Есть пара хороших примеров, которые намного проще demokit.

http://allaboutee.com/2011/12/31/arduino-adk-board-blink-an-led-with-your-phone-code-and-explanation/

http://digitalhacksblog.blogspot. com/2012/05/arduino-to-android-turning-led-on-and_29.html

Ни один из них не предназначен для Arduino Mega ADK, поэтому потребуются некоторые изменения, но они должны быть хорошим началом.

Зарегистрируйтесь или войдите в систему

Зарегистрируйтесь с помощью Google

Зарегистрироваться через Facebook

Зарегистрируйтесь, используя электронную почту и пароль

Опубликовать как гость

Электронная почта

Требуется, но не отображается

Опубликовать как гость

Электронная почта

Требуется, но не отображается

Последовательный порт

— Android Mega ADK 2560 Arduino Светодиодный интерфейс без экранов

спросил

Изменено 9 лет, 9 месяцев назад

Просмотрено 908 раз

У меня есть Arduino Mega ADK 2560, могу ли я управлять светодиодом из приложения для Android без каких-либо экранов, подключенных к Arduino, то есть через последовательный кабель USB?

Я просмотрел это, и большинство из них используют экран Bluetooth/любые другие экраны. Можете ли вы предоставить некоторые рекомендации или ссылки, содержащие код Arduino и Android, который работает для этой простой задачи?

  • android
  • последовательный порт
  • arduino
  • led

для Arduino Mega ADK 2560 вам необходимо купить хост-щит USB или bluetooth, чтобы вы могли подключить его к телефону Android с помощью Android ADK .

Если вы хотите использовать свой телефон Android в качестве USB-хоста, а Arduino Mega ADK 2560 в качестве ведомого USB, это возможно, но вам придется много работать над кодом. Поэтому я предлагаю вам купить щит и вместо этого использовать библиотеку Android ADK.

1

Да, для умеренно слаботочных светодиодов больше ничего не нужно, кроме токоограничительного резистора.

Это связано с тем, что Arduino Mega ADK 2560 уже включает в себя микросхему интерфейса USB-хоста, часть, которую необходимо добавить к обычной плате Arduino через экран.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *