ИОИО

ИОИО
Плата IOIO-OTG с фирменной «полностью белой» печатной платой
Дата выпускаАпрель 2011 г. ; 13 лет назад ( 2011-04 )
Начальная цена$39.95 (IOIO-OTG) [1]
ПроцессорМикросхема PIC24FJ256 [1]
СвязностьХост  : USB / USB-OTG , Bluetooth
I/O  : GPIO , PWM , I2C , SPI , UART , захват входного сигнала, емкостное зондирование
Веб-сайтgithub.com/ytai/ioio/

IOIO (произносится как йо-йо ) — это серия плат с открытым исходным кодом на базе микроконтроллера PIC , которые позволяют мобильным приложениям Android взаимодействовать с внешней электроникой. [2] [3] [4] Устройство было изобретено Итаем Бен-Цви в 2011 году и впервые было произведено компанией SparkFun Electronics . [2] [5] [6] [7] Название «IOIO» происходит от функции устройства, которое позволяет приложениям получать внешний ввод («I») и производить внешний вывод («O»). [4]

Функции

Плата IOIO содержит один микроконтроллер PIC , который действует как USB-хост / USB-ведомый и взаимодействует с приложением Android, работающим на подключенном устройстве Android. [8] Плата обеспечивает подключение через USB , USB-OTG или Bluetooth и управляется из приложения Android с помощью Java API. [1] [4] [9] [10] [11]

В дополнение к базовому цифровому вводу/выводу и аналоговому вводу библиотека IOIO также обрабатывает PWM , I2C , SPI , UART , захват входного сигнала, емкостное зондирование и расширенное управление двигателем . [3] Для подключения к старым устройствам Android, использующим USB 2.0 в подчиненном режиме, более новые модели IOIO используют USB On-The-Go , чтобы выступать в качестве хоста для таких устройств. [1] Некоторые модели также поддерживают протокол Google Open Accessory USB. [4]

API управления двигателем IOIO может управлять до 9 двигателями и любым количеством двоичных приводов синхронно и с точностью цикла. [12] [13] Разработчики могут отправлять последовательность высокоуровневых команд в IOIO, который выполняет генерацию низкоуровневых сигналов на кристалле. [12] [13] Прошивка IOIO поддерживает 3 различных типа двигателей: шаговые двигатели , двигатели постоянного тока и серводвигатели . [12] [13]

Прошивку устройства пользователь может обновить на месте. [3] Для устройств первого поколения обновление выполняется с помощью устройства Android и приложения IOIO Manager, доступного в Google Play . [3] [14] Устройства IOIO-OTG второго поколения должны быть обновлены с помощью настольного компьютера, на котором запущено приложение IOIODude . [15]

IOIO поддерживает как компьютеры, так и устройства Android в качестве первоклассных хостов и предоставляет точный API на обоих типах устройств. [3] Устройства первого поколения могут взаимодействовать с ПК только через Bluetooth, в то время как устройства IOIO-OTG могут использовать как Bluetooth, так и USB. [3] Приложения для ПК могут использовать API для Java или C# для взаимодействия с платой; Java является официальным API. [11] [16]

Приложения

Аппаратное и программное обеспечение IOIO имеет полностью открытый исходный код [17] и позволило создать сотни проектов робототехники своими руками по всему миру. [18] [19] [20] [21] [22]

Доска была представлена ​​в различных учебных комплектах, цель которых — помочь студентам писать приложения Android, способные взаимодействовать с внешним миром. [3] [23] [24] [25]

Qualcomm Snapdragon Micro Rover — это 3D-печатный робот, который использует Android- смартфон и IOIO для управления двигателями и датчиками робота. [26] [27] Команда под руководством израильского изобретателя доктора Гая Хоффмана создала эмоционально-чувствительного робота, который использует IOIO для управления оборудованием робота. [28]

Обзоры

IOIO по-разному описывали как «рай для гиков», «простой способ получить ввод-вывод от USB-подключения устройства Android» и «плата USB-ввода-вывода для смартфонов Android, которая превращает ваш телефон в своего рода супер-Arduino». [18] [29] [30] [31] В статье Scientific Computing он упоминался как рекомендуемый «подарок для гиков» . [25]

По данным интернет-журнала об электронике SlashGear:

Вы можете подключить IOIO для Android и пару датчиков тепла и накрутить приложение, которое измеряет температуру в помещении, а затем отправляет вам электронное письмо, если становится слишком жарко. Благодаря ряду вариантов ввода-вывода, включая цифровой вход/выход, ШИМ, аналоговый вход, управление I2C, SPI и UART, вы также можете подключить домашний термостат для автоматической регулировки отопления в ответ.

—  Крис Дэвис, «IOIO для Android получает видеодемонстрации: рай для гиков!», SlashGear [18] [32]

По данным SparkFun , первого производителя устройства:

Вы можете объединить потрясающую вычислительную мощность, подключение к Интернету/Bluetooth, сенсорный экран и множество датчиков вашего устройства Android с возможностью легкого добавления периферийных устройств для взаимодействия с внешним миром. Кроме того, использование IOIO не требует никаких аппаратных или программных модификаций вашего устройства Android, что позволяет сохранить гарантию, а также сделать функционал доступным для нехакеров.

—  Издательская группа, «IOIO Android Interface Board Retail», SparkFun [8] [32]

По словам изобретателя устройства Итая Бен-Цви:

Телефоны Android — это мощные мобильные компьютеры с подключением к Интернету и богатым набором встроенных датчиков (камера, GPS, IMU, сенсорный экран). Для них также очень легко писать приложения благодаря большой работе, проделанной разработчиками Android SDK. Для многих приложений все, чего им действительно не хватает, — это подключения к внешним периферийным устройствам. Именно здесь и подходит IOIO: он обогащает внутренние возможности устройства Android возможностью связи с внешними цепями.

—  Ютай Бен-Цви, «Знакомьтесь: IOIO — ввод-вывод для Android» [33]

Технические подробности

IOIO V1

Схема контактов/подключений IOIO первого поколения

Платы IOIO первого поколения (известные как IOIO V1 ) содержат следующие встроенные функции: [34] [35] Это поколение поддерживает только режим USB-ведомого устройства и требует наличия USB-ведущего устройства в качестве хоста (ПК или более новые телефоны Android). [2] [7]

IOIO V1 — это логическое устройство уровня 3,3 В, которое оснащено импульсным стабилизатором постоянного тока 5 В и линейным стабилизатором 3,3 В. [36] Стабилизатор 5 В поддерживает входной диапазон 5–15 В и нагрузку до 1,5 А. [7] Это облегчает зарядку подключенного устройства Android, а также управление несколькими небольшими двигателями или аналогичными нагрузками.

ОсобенностьПодробностиОписание
USB-разъемтип А, женскийИспользуется для подключения к устройству Android.
Контакты заземления9 штифтовЗаземление.
VIN-коды3 штифтаИспользуется для питания платы. Должно подаваться напряжение от 5 до 15 В.
5 В контакты3 штифтаОбычно используется как выход 5 В для пользовательской электроники, когда плата питается от VIN. Может использоваться как вход 5 В, если VIN не подключен.
Контакты 3,3 В3 штифтаВыход 3,3 В для пользовательской электроники.
Контакты ввода/вывода48 штифтовКонтакты ввода/вывода общего назначения. Некоторые из них имеют специальные функции, такие как АЦП, захват входного сигнала, UART, ШИМ, компаратор или для программирования микроконтроллера PIC ( ICSP ).
Светодиод питанияЗагорается, когда на IOIO подается питание.
Статический светодиодЗагорается на короткое время при включении питания, а затем переходит под управление приложения.
штифт MCLRОбычно не используется. Его цель — программирование новой прошивки загрузчика на плате IOIO.
Регулятор тока заряда (CHG)Регулирует величину зарядного тока, подаваемого на линию VBUS USB к устройству Android. Поворот в направлении (+) увеличивает зарядный ток.

IOIO OTG

Схема распиновки/подключения IOIO-OTG

Платы IOIO второго поколения (известные как IOIO-OTG ) содержат следующие встроенные функции: [37] [38] [39] Как следует из названия, ключевой особенностью этого поколения является введение USB-OTG , поддерживающего режим USB master или slave. Это позволяет IOIO подключаться к старым телефонам Android, которые поддерживают только режим USB slave, кроме того. [1] [9]

IOIO-OTG — это логическое устройство уровня 3,3 В , некоторые контакты которого допускают напряжение 5 В. Он оснащен импульсным стабилизатором постоянного тока 5 В и линейным стабилизатором 3,3 В. Стабилизатор 5 В поддерживает входной диапазон 5–15 В и нагрузку до 3 А. [1] Это облегчает зарядку подключенного устройства Android , а также управление несколькими небольшими двигателями или аналогичными нагрузками.

ОсобенностьПодробностиОписание
USB-разъеммикро-AB, женскийИспользуется для подключения к хост-компьютеру, устройству Android или Bluetooth-модулю.
Разъем питания2-контактный JST, гнездовойИспользуется для питания платы. Должно подаваться напряжение от 5 до 15 В.
Контакты заземления10 штифтовЗаземление.
VIN-коды3 штифтаИспользуется для вывода напряжения питания в вашу схему или в качестве альтернативного входа в разъем питания.
5В контакты3 штифтаВыходное напряжение 5 В от встроенного регулятора, которое можно использовать в вашей схеме.
Контакты 3,3 В3 штифта3,3 В от встроенного регулятора, который можно использовать в вашей схеме.
Контакты ввода/вывода46 штифтовКонтакты ввода/вывода общего назначения. Некоторые из них имеют специальные функции, такие как АЦП, захват входного сигнала, UART, ШИМ, компаратор или для программирования микроконтроллера PIC ( ICSP ).
Светодиод питаниякрасныйЗагорается, когда на IOIO подается питание.
СВЕТОДИОД СТАТжелтыйВстроенный светодиод общего назначения, управляемый приложением.
штифт MCLRОбычно не используется. Его цель — программирование новой прошивки загрузчика на плате IOIO.
штифт BOOTСпециальный вывод, используемый для перевода IOIO в режим загрузчика при включении питания. Обратите внимание, что этот вывод используется совместно со светодиодом состояния.
Регулятор тока заряда (CHG)Регулирует величину тока, подаваемого на линию VBUS USB при работе в качестве USB-хоста. Обычно используется в приложениях с питанием от батареи с Android, чтобы предотвратить быструю разрядку батареи Android. Поворот в направлении (+) увеличивает ток заряда.
Переключатель хостаВ режиме «A» IOIO-OTG автоматически определит, должен ли он действовать как хост или как устройство, в зависимости от того, какой разъем USB подключен (micro-A или micro-B). Для поддержки нестандартных кабелей USB или адаптеров, использующих тип micro-B, переведите переключатель в положение «H», чтобы принудительно включить режим хоста.

Смотрите также

Ссылки

  1. ^ abcdef IOIO-OTG, DEV-12633, SparkFun
  2. ^ abc Lutz, Zachary (10 апреля 2011 г.). "SparkFun представляет IOIO для Android — свободный от хаков коммутационный блок, который заставит ваш мозг пошевелиться". Engadget .
  3. ^ abcdefg IOIO Mint — портативный комплект разработки для Android, AdaFruit
  4. ^ abcd SparkFun проводит занятия по разработке Android совместно с IOIO, PRNewsWire, Боулдер, Колорадо, 27 июня 2012 г.
  5. ^ IOIO Wiki, GitHub, «А это блог Ytai, изобретателя IOIO»
  6. ^ Блог Ютая Бен-Цви, Blogspot
  7. ^ abc IOIO для Android, DEV-10585, SparkFun
  8. ^ ab IOIO Android Interface Board Retail, SparkFun USA
  9. ^ ab O'Brien, Terrence (30 мая 2012 г.). «Второе поколение IOIO в разработке: охватывает беспроводную революцию, снижает стоимость». Engadget .
  10. ^ Руководство для начинающих по IOIO-OTG, SparkFun
  11. ^ ab Основы библиотеки Java IOIO, GitHub
  12. ^ abc Управление двигателем, IOIO Wiki
  13. ^ abc IOIO Plotter и библиотека управления двигателем, 14 МАЯ 2013 г., блог Ytai Ben-Tsvi
  14. ^ Менеджер IOIO, Google Play Store
  15. ^ Загрузчик IOIO-OTG и IOIODude, IOIO Wiki
  16. ^ IOIODotNet, GitHub
  17. ^ IOIO, GitHub
  18. ^ abc Дэвис, Крис (8 апреля 2011 г.). «IOIO для Android получает видеодемонстрации: рай для гиков!». Slashgear.
  19. ^ Проекты, созданные с помощью IOIO, Pinterest
  20. ^ Самодельный танк на базе Android, Эдвин Ки, 10.08.2011, Ubergeek
  21. ^ Термостат для смартфона своими руками заставляет нас задуматься, что случилось с Android@Home, 15 октября 2012 г., Кевин Краузе, Phandroid
  22. ^ Дыхание на плате IOIO для Android-алкотестера, GadgetMaster, Electronics Weekly , 11 мая 2012 г.
  23. ^ Набор изобретателя IOIO, RB-Spa-934 Архивировано 12 июля 2015 г. в Wayback Machine , RobotShop
  24. ^ SparkFun Набор изобретателя для IOIO, SparkFun
  25. ^ ab Джойс, Джон Р. (13 ноября 2014 г.). «Праздничный шопинг? 25 подарков, которые понравятся Шелдону и его друзьям». Научные вычисления .
  26. ^ Snapdragon Micro Rover, Qualcomm
  27. ^ МЕНДОСА, ХАННА РОУЗ (21 сентября 2014 г.). «3D-печатный микровездеход Qualcomm, управляемый смартфонами». 3DPrint.
  28. ^ Мейрав, Авнер (9 апреля 2014 г.). «Израильский робот реагирует «эмоционально» на то, как вы разговариваете». ShalomLife. Архивировано из оригинала 12 июля 2015 г. Получено 11 июля 2015 г.
  29. ^ SparkFun IOIO для Android упрощает хаки в стиле Arduino, Android Community, 7 апреля 2011 г., Крис Дэвис
  30. ^ Подробности IOIO для Android: Примеры проектов с платы USB-разъема, Android Community, 8 апреля 2011 г., Крис Дэвис
  31. ^ «Плата IOIO получает ввод-вывод от USB-подключения устройства Android». Electronics Weekly. 19 августа 2011 г.
  32. ^ ab "Android-телефоны прокладывают себе путь с помощью платы IOIO Breakout Board". Electronics Weekly, Gadget Master. 26 июля 2011 г.
  33. ^ Встречайте IOIO - I/O для Android, блог Ytai Ben-Tsvi
  34. ^ Знакомство с платой IOIO-V1, IOIO Wiki
  35. ^ IOIO V1, SparkFun США
  36. ^ "Reliance Electric FlexPak 3000 0-58770-420 | Automation Industrial". 0-58770-420.com . Получено 13 декабря 2023 г. .
  37. ^ Знакомство с платой IOIO-OTG, IOIO Wiki
  38. ^ IOIO OTG, SparkFun США
  39. ^ IOIO OTG, SparkFun США
Взято с "https://en.wikipedia.org/w/index.php?title=IOIO&oldid=1258769713"