Драйвера ардуино для андроид

Драйвер чипа CH340 USB-Serial

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

Стандартным интерфейсом плат Arduino на микроконтроллерах ATmega328P является UART, а у современных компьютеров используется USB. Чип USB-UART CH340G служит мостом между микроконтроллером и USB-портом компьютера, который позволяет загружать прошивку в плату, а также передавать между собой данные.

Список поддерживаемых плат

Зачем нужен драйвер?

При подключении любого устройства к USB-порту компьютера необходимо подсказать операционной системе, как с ним общаться. На стороне компьютера таким переводчиком является специальная программа, называемая драйвером. Например, драйвер преобразователя USB-UART работает в режиме эмуляции последовательного COM-порта. Т. е. при подключении вашей платы к компьютеру чип моста с помощью драйвера попросит операционную систему открыть виртуальный COM-порт, через который начнётся общение между платой и ПК.

Каждый производитель делает свои чипы с соответствующими драйверами. К сожалению, не все драйверы предустановлены в операционных системах по умолчанию. Когда нужного драйвера нет, ОС пытается найти его для нового подключённого устройства, не находит, и вместо виртуального COM-порта вы видите надпись «USB 2.0 SERIAL» или «Неизвестное устройство». Для решения проблемы скачайте и установите драйвер для вашей операционной системы.

Установка драйвера

Рассмотрим установку драйвера на примере платы Iskra Uno в операционной системе Windows. С остальными платами ситуация будет аналогичная.

Источник

Android приложения для Arduino

Связка смартфона Andoid и Arduino предоставляет огромные возможности для создания современных проектов, упрощая удаленное программирование, управление и синхронизацию данных. Мобильные приложения на смартфоне дают взаимодействовать с реальным физическим миром из любой точки земли с помощью привычных всем гаджетов. Представляем вам обзор Android приложений для работы с Arduino. Для простоты мы выбрали несколько видов приложений, предназначенных для работы с ардуино: приложения, позволяющие создавать скетчи, справочники и Bluetooth/Wi-fi-контроллеры.

ArduinoDroid

ArduinoDroid – это бесплатное приложение, которое позволяет редактировать, компилировать и загружать эскизы к вашей плате Arduino прямо с телефона или планшета Android. Отличительной чертой этой программы является то, что в нее можно загружать уже готовый запрограммированный код или создавать новый. В случае с неполадками или сбоями программы, открытый код можно всегда отредактировать.

В настоящее время поддерживаются только платы Arduino Uno R3 и платы на базе FTDI (Duemilanove, Diecimila), но планируется поддержка Mega, Due и Nano. Другие функции, которые необходимо реализовать, включают расширенную настраиваемую подсветку синтаксиса, интеллектуальные подсказки кода (автозаполнение) и интеграцию сторонних приложений (руководства, запросы на компиляцию эскизов).

Стоит отметить то, что с помощью этого приложения начинают все осваивать ардуино, к тому же клон-плата Arduino и USB кабель OTG обойдутся всего в пару долларов.

Рейтинг на Google Play: 4.1 из 5

Количество скачиваний: более 500.000

Bluino Loader – Arduino IDE

Bluino Loader – это программное обеспечение для ардино (Arduino IDE), которое позволяет быстро и легко компилировать ваш код для создания файла и загружать его на плату ардуино через USB OTG.

Рейтинг на Google Play: 4.1 из 5

Количество скачиваний: более 50.000

Arduino Bluetooth Control

Приложение ABC – это простое приложение, которое предназначено для того, чтобы контролировать контакты Arduino, и иметь доступ основным функциям управления. Arduino Bluetooth Control используется для управления и/или мониторинга контактов Arduino через Bluetooth. Приложение является автономным, и вся инициализация выполняется из Arduino. Важно понимать, что приложение предназначено именно для контактов ардуино, а не для управления.

Работа приложения осуществляется при помощи нескольких инструментов:

  1. Metrics – этот инструмент осуществляет передачу данных с устройства ардуино, которые передают сигнал на телефон о сбоях или об изменениях значений. После того как кнопка сигнализации срабатывает, на телефон поступает уведомление о приостановки работы. Также есть функция встряхивания, при помощи которой отправлять данные путем встряхивания телефона.
  2. Кнопки со стрелками – здесь работа осуществляется кнопками, которые полностью регулируют отправку данных на плату.
  3. Терминал – стандартный терминал, получающий и отправляющий данные на плату с отметками времени.
  4. Кнопки – в горизонтальной ориентации доступно 6 полностью функционированных кнопок для отправки данных на системную плату ардуино.
  5. Accelometer – используются команды при помощи жестов. Ваш смартфон может стать рулем для управления вашим роботом.
  6. Голосовое управление – если вы когда-либо хотели пообщаться с роботами, то этот инструмент для вас. При помощи голосовой связи можно создавать собственные команды и использовать их для управления ардуино.
Читайте также:  Apple tv plus android

Рейтинг на Google Play: 4.2 из 5

Количество скачиваний: более 50.000

Arduino Bluetooth Controller

Arduino Bluetooth Controller – это простое и интуитивно понятное приложение для управления arduino через bluetooth с android. Работа приложения осуществляется в 4-х различных режимах:

  1. Режим контроллера: здесь приложение осуществляет демонстрацию интерфейса в виде игрового контроллера. Управление робота осуществляется при помощи экранных кнопок, что упрощает работу с ардуино.
  2. Режим переключения: переключение осуществляется при помощи одной кнопки, которая предназначена для удаленного доступа к переключателю.
  3. Режим диммера: в этом режиме доступна функция отправления значения в Arduino, которая позволяет удаленно регулировать яркость или скорость.
  4. Режим терминала: возможность отправлять индивидуальные команды для декодирования команд в самом ардуино.

Рейтинг на Google Play: 4.5 из 5

Количество скачиваний: более 100.000

Bluetooth Controller 8 Lamp

Приложение создано при помощи модулей Bluetooth HC-05, HC-06 и HC-07. Контроль 8 каналов позволяет быстро и удобно отрегулировать работу ардуино. В интерфейсе предоставлено 8 кнопок, которые соответствуют каждой лампе.

Рейтинг на Google Play: 4.3 из 5

Количество скачиваний: более 50.000

BT Voice Control for Arduino

С помощью этого приложения можно отправлять и получать данные с таких устройств, как ультразвуковой датчик, подключенный к Arduino через Bluetooth. Для подключения устройства Arduino к мобильному телефону через Bluetooth был использован модуль HC-05. После подключения ультразвуковой датчик будет передавать расстояние до ближайшего объекта, и это будет отображаться на мобильном телефоне в этом приложении.

Arduino был запрограммирован на список распознаваемых команд, таких как «Вперед», «Назад», «Влево», «Вправо» и «Стоп». Важно знать, что ультразвуковой датчик отправляет расстояние до ближайшего объекта в Arduino, а затем отправляет его в приложение с помощью модуля Bluetooth HC-05.

Рейтинг на Google Play: 4.4 из 5

Количество скачиваний: более 10.000

RemoteXY: Arduino Control

Осуществление управления это ардуино адроид приложения проходит через Bluetooth, Wi-Fi или интернет. Приложение позволяет пользователю сделать свой индивидуальный графический интерфейс, посетив его сайт http://remotexy.com. Удобное создание кнопок, переключателей и полная регулировка ардуино не даст отойти ни на шаг. Также доступно подключение через облачный сервер, что дает преимущество перед другими приложениями.

Рейтинг на Google Play: 4.1 из 5

Количество скачиваний: более 50.000

Virtuino

Virtuino – это бесплатное приложение из подкатегории System Maintenance, входящей в категорию System Utilities. Оно разрешает совмещать проекты в единое целое, что позволяет управлять более одной платы одновременно через Bluetooth или Wi-fi.

Создавайте визуальные интерфейсы для светодиодов, переключателей, диаграмм, аналоговых приборов, счетчиков и многого другого. Он поставляется с библиотечной поддержкой и множеством учебных пособий (включая видеоуроки), которые помогут вам в этом процессе. Добавьте несколько строк кода в приведенные примеры, и все готово. В настоящее время приложение доступно на английском языке.

Рейтинг на Google Play: 4.9 из 5

Количество скачиваний: более 50.000

Blynk

Это уникальное приложение c прекрасным дизайном разрешает разрабатывать проекты, которые напрямую имеют доступ к триггеру событий на плате ардуино. Однако, важно знать, что для работы в приложении необходимо интернет-подключение, иначе работа попросту невозможна. Независимо от того, подключен ли ваш Arduino или к Интернету через Wi-Fi, Ethernet или этот новый чип ESP8266, Blynk выведет вас в интернет и будет готов к работе.

Настройка занимает около 5 минут, после чего вы можете приступить к реализации своих проектов. Также программа поддерживает аппаратное обеспечение по вашему выбору.

Рейтинг на Google Play: 4.6 из 5

Количество скачиваний: более 500.000

IoT Wi-Fi контроллер

Этот Wi-Fi контроллер содержит интерфейс, который показывает конфигурацию каждого ввода-вывода Arduino. Возможность переключать значения GPIO в реальном времени, а также показ значений АЦП позволят легко управлять вашим гаджетом.

Рейтинг на Google Play: 4.6 из 5

Количество скачиваний: более 5.000

Справочник по Arduino 2

Это одно из важных приложений для обучения в ардуино. Новым пользователям потребуется всего пару недель для освоения материала с этим приложением. Приложение доступно в оффлайн режиме, что позволяет изучать материал в любом месте без подключения к интернету. Включены такие категории как: операторы, данные, функции и некоторые библиотеки Arduino.

Источник

Как программировать Arduino через Android

Сегодня мы покажем вам как загружать код на плату Arduino с помощью Android. Это очень просто с бесплатным программным обеспечением доступным под названием ArduinoDroid. Итак, давайте начнем.

Читайте также:  More android mod people playground

Шаг 1: Что нам нужно

Нам нужно, на самом деле, всего 4 вещи.

  1. Любая плата Arduino;
  2. Кабель OTG;
  3. Кабель USB, совместимый с платой Arduino;
  4. Устройство с Android.

Шаг 2: Устанавливаем ArduinoDroid на Android-устройство

Достаточно простой шаг, открыть Google Play, найти ArduinoDroid и установить. Скачать приложение можно здесь. Но не все смогут перейти по ссылке.

Теперь приготовьте кабели и плату Arduino. Мы на самом деле собираемся загрузить код.

Шаг 3: Подключаем все и открываем ArduinoDroid

Возьмите кабель OTG и подключите его к своему устройству Android. Возьмите USB-кабель и подключите его к кабелю OTG и плате Arduino. Откройте приложение ArduinoDroid на Android-устройстве.

Шаг 4: Наберите свой код в приложении ArduinoDroid

Наберите свой код, на который должна реагировать Arduino. Ввод кода происходит примерно также как в Arduino IDE на компьютере.

Чаще сохраняйте свой код, т.к. как многие говорят, что он иногда падает. Не переживайте, со временем у вас будет достаточно опыта по работе с приложением.

Шаг 5: Заключение

Поскольку приложение все еще находится в бета-версии, пока сложно загружать код в Arduino. Поэтому мы все еще программируем свои Arduino, используя ноутбук или компьютер.

Надеемся, вы получили представление о том, как загружать код на плату Arduino с помощью устройства Android.

Источник

Взаимодействие с Arduino через Android

Хотите послать текстовое сообщение с вашего смартфона с ОС Android на свою плату Arduino? В этой статье написано, как это сделать!

Что потребуется

  • смартфон на Android с поддержкой режима USB хоста (т.е. поддержка OTG) – большинство устройств, работающих с Android 3.1 и выше, поддерживают этот режим. Проверьте свой телефон с помощью USB Host Diagnostics App из Play Store;
  • Arduino – любая версия. Я буду использовать Uno R3;
  • USB кабель для Arduino;
  • USB OTG кабель – он необходим вам, чтобы подключить USB кабель Arduino к порту micro-USB телефона;
  • Android Studio – вам необходимо установить его. Это довольно просто сделать. Android Studio делает разработку приложений проще, благодаря своим предположениям и генерации кода. Это одна из лучших IDE. Вы также можете использовать эту статью в качестве руководства по установке Android IDE.

Основные компоненты приложения для Android

В Android приложении есть три основных файла:

MainActivity.java Здесь находится выполняемый код на Java, который управляет тем, как будет функционировать приложение. activity_main.xml Содержит макет приложения, то есть, компоненты: кнопки, компоненты отображения текста и т.д. AndroidManifest.xml Здесь вы определяете, когда приложение должно запускаться, в какие права ему нужны, и к какому аппаратному обеспечению ему необходимо получить доступ.

Еще есть множество других файлов, но все они связаны друг с другом с помощью этих трех.

Активность может быть охарактеризована, как экран, где пользователь взаимодействует с телефоном. Активности содержат такие виджеты, как кнопки, текстовые поля, изображения и т.д., которые помогают в передаче информации. Данное руководство будет использовать только одну активность, MainActivity , которая будет принимать введенный пользователем текст, чтобы отправить его на Arduino, а также отображать принятый текст.

Макет

Мы будем использовать тот же макет, что и в USB App и Bluetooth App. Он прост и содержит минимум виджетов, необходимых для проверки соединения между устройствами.

Как вы можете видеть, он содержит виджет EditText для получения данных от пользователя, кнопки для запуска соединения, передачи данных, завершения соединения и очистки TextView . Полученные данные отображаются в TextView (пустое пространство под кнопками).

Вот часть XML кода. Поскольку код для кнопок похож, здесь он не приводится. Полный код можно скачать по ссылке в конце статьи.

Я использовал здесь RelativeLayout , а это означает, что каждый виджет расположен относительно виджетов вокруг него. Макет может быть легко воссоздан на вкладке Design Tab , где вы можете перетащить виджеты туда, куда хотите. Нам необходимо описать, что будет происходить при нажатии на кнопку. Для этого используется метод onClick . Укажите имя метода в XML коде для кнопки. Для этого добавьте строку:

Теперь наведите курсор мыши на эту строку, слева должно будет появиться предупреждение, похожее на это:

Предупреждение в Android Studio

Нажмите на варианте «Создать onClick. ». Это автоматически добавит код метода onClick в MainActivity.java . Вам необходимо выполнить это для каждой кнопки.

Библиотека USB Serial

Настройка последовательного соединения в Android довольно трудоемка, так как требует от вас ручной настройки множества вещей, поэтому я нашел несколько библиотек, которые делают всё это автоматически. Я протестировал несколько из них и, наконец, остановился на библиотеке UsbSerial от Github пользователя felHR85. Среди подобных библиотек, что я нашел, она единственная до сих пор обновляется. Ее довольно легко настроить и использовать. Чтобы добавить библиотеку в свой проект, скачайте последнюю версию JAR файла на Github. Поместите его в подкаталог libs в каталоге вашего проекта. Затем в файловом проводнике в Android Studio кликните правой кнопкой мыши на JAR файле и выберите « Добавить как библиотеку » ( Add as Library ). Вот и всё!

Читайте также:  Перегрев батареи андроид что делать

Алгоритм выполнения программы

Это краткий план того, как мы будем действовать. Каждая активность имеет метод onCreate() , который запускается при создании активности. Какой бы код вы ни хотели запустить в начале, он должен быть помещен внутрь этого метода. Обратите внимание, что чтение из устройства является асинхронным, то есть оно будет работать в фоновом режиме. Это делается для того, чтобы данные были получены как можно скорее.

Открытие соединения

Во-первых, давайте определим метод onClick для кнопки Begin . При нажатии необходимо выполнить поиск всех подключенных устройств, а затем проверить, совпадает ли VendorID подключенного устройства (ID поставщика) с VendorID Arduino. Если совпадение найдено, то у пользователя должно быть запрошено разрешение. Каждое ведомое USB устройство имеет ID поставщика (Vendor ID) и ID продукта (Product ID), которые могут быть использованы для определения того, какие драйвера должны использоваться для этого устройства. Vendor ID для любой платы Arduino равен 0x2341 или 9025.

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

Если первое условие IF выполняется, и если пользователь дал разрешение, то начать соединение с устройством, у которого Vendor ID совпадает с необходимым нам Vendor ID. Кроме того, если принято широковещательное сообщение о подключении или отключении устройства, вручную вызывать методы onClick для кнопок Start и Stop . SerialPort определяется с использованием устройства и соединения в качестве аргументов. В случае успеха открыть SerialPort и установить соответствующие параметры. Значения параметров для Arduino Uno равны: 8 бит данных, 1 стоповый бит, бита четности нет, управление потоком выключено. Скорость передачи данных может быть 300, 600, 1200, 2400, 4800, 9600, 14400, 19200, 28800, 38400, 57600 или 115200 бит/с, но мы будем использовать стандартные 9600 бит/с.

Прием данных от устройства

Во фрагменте кода выше обратите внимание на строку, содержащую serialPort.read(mCallback) . Здесь функции read передается ссылка на объект Callback , который будет автоматически срабатывать при обнаружении входящих данных.

Полученные данные будут в форме необработанных байтов. Нам придется перекодировать их в читаемый формат, например, UTF-8. Затем они добавляются в TextView с помощью специального метода tvAppend() . Это делается так потому, что любые изменения в пользовательском интерфейсе могут выполняться только в потоке пользовательского интерфейса. Так как данный Callback будет запущен, как фоновый поток, то он не может напрямую повлиять на пользовательский интерфейс.

Передача данных на устройство

Передача данных относительно проста по сравнению с чтением данных с устройства. Это простой вызов функции с байтами данных, которые необходимо передать, в качестве аргумента. Это будет реализовано в методе onClick кнопки Send .

Закрытие соединения

Чтобы закрыть соединение, просто закройте последовательный порт.

Манифест приложения

Манифест объявляет, какие дополнительные разрешения могут потребоваться приложению. Единственное необходимое нам разрешение – это разрешение сделать телефон USB хостом. Добавьте следующую строку в манифест:

Приложение можно заставить запускаться автоматически, добавив фильтр интентов в главную активность MainActivity . Этот фильтр интентов будет срабатывать при подключении любого нового устройства. Вид устройства может быть указан явно с помощью ID поставщика (Vendor ID) и/или ID продукта (Product ID) в XML файле.

Обратите внимание на строку » android:resource=»@xml/device_filter «. Она говорит компилятору, что он может найти свойства устройства в файле с именем device_filter в каталоге src/main/res/xml , поэтому создайте подкаталог » xml » в каталоге src/main/res и поместите в него файл со следующим содержанием:

Тестирование приложения

Соберите приложение и запустите его на своем смартфоне. Теперь запустите Arduino IDE и настройте Arduino для простого эхо всего, что плата будет принимать через последовательный порт. Вот очень простой код, помогающий сделать это:

Теперь подключите Arduino к microUSB порту телефона, используя OTG кабель. Приложение должно запуститься автоматически. Попробуйте послать какой-нибудь текст, и те же данные будут возвращены обратно!

Тестирование Android приложения для взаимодействия с Arduino

Заключение

Данная статья показывает, как Arduino может общаться с вашим смартфоном. И возможности использования этого бесконечны! В случае, когда необходимы данные с любого датчика, которого нет среди встроенных в смартфон, можно воспользоваться любым микроконтроллером для считывания данных с этого датчика и передачи их на смартфон. В следующей статье будет показано, как подключить смартфон к Arduino, используя популярный bluetooth модуль HC05.

Источник

Оцените статью