Управляйте Arduino с помощью Bluetooth

  1. Требования
  2. Настройка оборудования
  3. Программирование Arduino
  4. Приложение для Android
  5. Редактирование AndroidManifest.xml
  6. Подключение к устройству
  7. Чтение входящих данных
  8. Передача данных
  9. Загрузите исходный код приложения
  10. Тестирование приложения

Используйте возможности Bluetooth для связи с Arduino!

Это вторая часть набор , который будет сосредоточен на использовании Bluetooth для связи с Arduino. Bluetooth является одной из популярных технологий беспроводной связи из-за низкого энергопотребления, низкой стоимости и небольшого стека, но компенсирует радиус действия.

Требования

  • Arduino
    Можно использовать любую модель Arduino, но весь код и схемы в этой статье будут Организация Объединенных Наций ,
  • Android-смартфон с Bluetooth
    Проверьте, есть ли в вашем телефоне Bluetooth, перейдя в «Беспроводные сети» в настройках.

  • Модуль Bluetooth HC-05
    Этот модуль является самым популярным модулем Bluetooth там. Базовая версия довольно недорогая. Устранить необходимость подключения проводов между модулем и Arduino можно с помощью Bluetooth Shield или версия в форме пчелы, BTBee и Пчелиный щит ,

  • Android Studio

  • USB-кабель для Arduino

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

Чтобы использовать модуль HC05, просто подключите VCC к выходу 5 В на Arduino, GND на землю, RX на TX на Arduino и наоборот. [Примечание редактора: вывод RX официально не допускает 5 В; он предназначен для сигналов 3,3 В. Arduino генерирует сигнал 5 В, поэтому вы должны использовать делитель напряжения или преобразователь логического уровня, чтобы гарантировать, что сигнал Arduino не повредит HC05.] Если вы используете модуль BTBee с экраном, установите перемычки на плате так что выводы DOUT и D0 закорочены, а выводы DIN и D1 закорочены. Это сделано потому, что вывод RX на Arduino - это вывод 0, а вывод TX - вывод 1. Вы можете использовать любые другие выводы в качестве выводов RX и TX, но вам придется использовать библиотеку SoftwareSerial для Arduino, чтобы включить тот. Не забудьте удалить перемычки при загрузке кода в Arduino, если вы выбрали контакты 0 и 1 в качестве последовательных контактов.

Подключение модуля HC05

Перемычка подключена к контактам 0 и 1 на экране BTBee

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

Для программирования модуля используется набор команд, известный как AT-команды. Вот некоторые из них:

AT Проверьте состояние соединения. AT + NAME = "ModuleName" Установите имя для устройства. AT + ADDR. Проверьте MAC-адрес. AT + UART. Проверьте скорость передачи данных AT + UART = "9600". Установите скорость передачи данных 9600. AT + PSWD. Проверьте пароль по умолчанию. AT + PSWD = "1234". Установите пароль. до 1234

Все установленные команды возвращают «ОК», когда они выполнены успешно.

Вот некоторый код для изменения имени. Перемычки подключены к 4 и 5, потому что ответ от модуля будет напечатан на последовательном мониторе. Полный код доступен в конце этой статьи в кнопке «Скачать код».

// Если вы не используете соединение BTBee, установите вывод, подключенный к выводу KEY, высоким #include & ltSoftwareSerial.h & gt SoftwareSerial BTSerial (4,5); void setup () {String setName = String ("AT + NAME = MyBTBee \ r \ n"); // Установка имени как «MyBTBee» Serial.begin (9600); BTSerial.begin (38400); BTSerial.print ( "AT \ г \ п"); // Проверка задержки состояния (500); while (BTSerial.available ()) {Serial.write (BTSerial.read ()); } BTSerial.print (setName); // Отправить команду для изменения имени delay (500); while (BTSerial.available ()) {Serial.write (BTSerial.read ()); }} void loop () {}

Программирование Arduino

Никакая дополнительная библиотека не используется для подключения к модулю Bluetooth, потому что контакты RX и TX Arduino закорочены с выводами модуля. Все данные - исходящие и входящие - должны будут пройти через модуль. Интерфейс модуля так просто.
Чтобы увидеть, как это работает, давайте подключим датчик температуры DHT-11 к Arduino. Когда получена буква "t", температура, влажность и индекс тепла будут переданы обратно. Чтобы использовать DHT-11, DHT библиотека Adafruit используется.

Щит и подключенный датчик DHT

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

#include "DHT.h" #define DHTPIN 2 #define DHTTYPE DHT11 DHT dht (DHTPIN, DHTTYPE); void setup () {Serial.begin (9600); dht.begin ();} void loop () {char c; if (Serial.available ()) {c = Serial.read (); if (c == 't') readSensor (); }} void readSensor () {float h = dht.readHumidity (); float t = dht.readTempera (); if (isnan (h) || isnan (t)) {Serial.println («Не удалось прочитать с датчика DHT!»); вернуть; } float hic = dht.computeHeatIndex (t, h, false); Serial.print («Влажность:»); Serial.print (ч); Serial.print ("% \ t"); Serial.print («Температура:»); Serial.print (т); Serial.print ("* C"); Serial.print («Тепловой индекс:»); Serial.print (HIC); Serial.print ("* C"); }

Приложение для Android

Посмотрите на п предыдущая статья краткое введение в приложения для Android, а также макет этого приложения.

Ход программы будет таким, как показано выше.

Редактирование AndroidManifest.xml

Поскольку дополнительным оборудованием, которое будет использовать это приложение, является встроенный адаптер Bluetooth, это должно быть упомянуто в манифесте.

использует разрешение android: name = "android.permission.BLUETOOTH" />

Подключение к устройству

Сначала проверьте наличие Bluetooth-адаптера.

BluetoothAdapter bluetoothAdapter = BluetoothAdapter.getDefaultAdapter (); if (bluetoothAdapter == null) {Toast.makeText (getApplicationContext (), «Устройство не поддерживает Bluetooth», Toast.LENGTH_SHORT) .show (); }

Если он присутствует, проверьте, включен ли он. Если он не включен, попросите у пользователя разрешения включить его.

if (! bluetoothAdapter.isEnabled ()) {Intent enableAdapter = new Intent (BluetoothAdapter.ACTION_REQUEST_ENABLE); startActivityForResult (enableAdapter, 0); }

Устройство должно быть сопряжено, прежде чем приложение сможет его использовать. Обратитесь к разделу ниже для получения подробной информации о том, как соединить модуль BT и телефон. Теперь, когда адаптер включен, проверьте наличие сопряженных / связанных устройств. Используя AT-команды из приведенного выше раздела, присвойте устройству соответствующее имя. Также узнайте его MAC-адрес. Здесь MAC-адреса сравниваются на предмет соответствия, поскольку имена часто меняются.

Set bondedDevices = bluetoothAdapter.getBondedDevices (); if (bondedDevices.isEmpty ()) {Toast.makeText (getApplicationContext (), «Сначала подключите устройство», Toast.LENGTH_SHORT) .show (); } else {for (итератор BluetoothDevice: bondedDevices) {if (iterator.getAddress (). equals (DEVICE_ADDRESS)) // Заменить на iterator.getName () при сравнении имен устройств. {устройство = итератор; // устройство является объектом типа BluetoothDevice found = true; перерыв; }}}

После получения BluetoothDevice необходимо создать сокет для обработки исходящего соединения. Здесь используется сокет RFCOMM. RFCOMM - также известный как профиль последовательного порта - по сути является протоколом Bluetooth для эмуляции кабеля RS232.

socket = device.createRfcommSocketToServiceRecord (PORT_UUID); Socket.connect ();

Затем получите входной и выходной потоки сокета.

OutputStream = socket.getOutputStream (); InputStream = socket.getInputStream ();

Чтение входящих данных

Поскольку данные могут быть получены в любой момент времени, лучше всего запустить поток для прослушивания данных. Сначала входной поток запрашивается на предмет доступных данных. Затем байты преобразуются в читаемый человеком формат UTF-8, и текст отправляется обработчику для публикации в пользовательском интерфейсе. Это сделано потому, что пользовательский интерфейс не может быть обновлен из фоновых потоков.

int byteCount = inputStream.available (); if (byteCount> 0) {byte [] rawBytes = новый байт [byteCount]; inputStream.read (rawBytes); final String string = new String (rawBytes, "UTF-8"); handler.post (new Runnable () {public void run () {textView.append (string);}}); }

Передача данных

Чтобы отправить данные, передайте String в OutputStream.

outputStream.write (String.getBytes ());

Загрузите исходный код приложения

Скачать код


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

Прежде всего, выполните сопряжение телефона и модуля путем сканирования новых устройств на вкладке Bluetooth в Системных настройках. Имя, которое было установлено ранее, должно появиться. Введите установленный пароль (по умолчанию 0000 или 1234).

После включения Arduino вы можете заметить, что индикатор состояния BTBee периодически мигает. Теперь откройте приложение и коснитесь Начать. Светодиод состояния должен погаснуть, а светодиод Conn будет светиться. Это показывает, что соединение установлено.

Когда «t» отправляется на Arduino, он отвечает с индексом температуры, влажности и тепла.

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

Попробуйте этот проект для себя! Получить спецификацию

Похожие

Загрузите наше приложение
Управляйте своими преимуществами и инвестициями с помощью моего приложения Sun Life Mobile Загрузите приложение my Sun Life Mobile, чтобы подавать заявки, проверять страховое покрытие, управлять пенсионными сбережениями на рабочем месте и просматривать свои личные инвестиции в любое время и на ходу. Доступно для устройств iPhone и Android:
YoWindow Weather - приложение для Android - Скачать - ЧИП
YoWindow для Android: бесплатное приложение погоды с живыми обоями и анимацией. YoWindow Weather - приложение для Android YoWindow для Windows занимает
Поделиться интернет-соединением по Bluetooth
Сначала я хотел поговорить с вами о EcoDroidLink программное обеспечение, которое превращает Raspberry Pi в точку доступа Bluetooth. Кроме того, на самом деле, это работает довольно плохо. Поэтому я просто заинтересован в создании «сети» Bluetooth для некоторых устройств iOS.
Viega - функциональный каталог приложения
Актуальная информация о продуктах и ​​системах производителя, решения которых мы используем на строительной площадке, так же важна, как и соответствующее оборудование для работы. Вот почему Viega предоставила установщикам и дизайнерам каталог приложений для смартфонов и планшетов. Благодаря этому вся необходимая информация всегда доступна «на месте» в любой ситуации. Разумеется, полный ассортимент решений Viega можно быстро и удобно просмотреть на веб-сайте производителя, который адаптирован
Скачать платные игры и приложения на Android бесплатно
... приложения, за которые Google заплатил бы нам в магазине Play. До сих пор Amazon, как часть своего магазина Appstore, время от времени предлагает акции с бесплатными играми и приложениями для Android. Однако теперь он отказывается от этой идеи. Больше не будет рекламных
Лучшие приложения для Android для гитаристов и гитаристов
... данных вкладок Ultimate-Guitar.com и позволяет просматривать коллекцию сайта, содержащую более 400 000 вкладок. Выучите или попрактикуйтесь в любимых песнях, будь то дома, на улице или с друзьями. Найдите песню с помощью функции быстрого поиска Ultimate Guitar Tabs, введя имя исполнителя или название песни. Если вы по-прежнему не можете найти нужные вкладки, воспользуйтесь инструментом расширенного поиска, чтобы указать тип вкладки, часть песни, уровень сложности, настройку и рейтинг.
Скачать приложение GOM Player для Windows 10 / 8.1
Как заядлый пользователь GOM Player Могу сказать, что это один из самых недооцененных медиаплееров. Я использую его с момента выпуска версии 1.0, и я всегда рекомендую его по сравнению с другими медиапроигрывателями за его красивый интерфейс, богатый набор функций и поддержку популярных кодеков из коробки. В первом квартале этого года метро или современная версия
Анатомия приложения для Android
Вы читаете пример главы из Android Studio 3.2 Edition этой книги. Приобретите полностью обновленную версию Android Studio 3.4 / Android 9 / Jetpack этой публикации в формате eBook (29,99 долл. США) или Print (45,99 долл. США). Основы разработки Android Studio 3.4 - Java Edition Печатные издания и электронные книги (ePub / PDF / Kindle) содержат 89 глав и более 700 страниц.
Топ-4 Bluetooth-менеджеров для Android: все о Bluetooth на устройствах Android
Одной из важнейших функций современных мультимедийных устройств, таких как смартфоны, системы видеоигр, КПК и ноутбуки, является использование Bluetooth. Bluetooth является самой популярной беспроводной технологией, которая используется для передачи или обмена данными между различными портативными и непереносимыми мультимедийными и электронными устройствами. Через Bluetooth отправка важных файлов и другой информации может быть выполнена быстро и безопасно. Bluetooth поставляется с ограничением
Лучшие 22 приложения для смартфонов для профессиональных фотографов
... приложения для смартфонов » Fotolia Мгновенное действие «Я регулярно продаю свои мобильные фотографии и пытаюсь оставить весь свой рабочий процесс на телефоне, поэтому синонимное редактирование и выгрузка изображений на ходу со смартфона для создания. Со временем появилось несколько приложений, которые гораздо лучше подходят, чем другие.
Лучшие приложения для iPad 2019 года
Приложения отличают iPad от других планшетов, будь то работа над офисом, изучение чего-то нового, создание музыки, просмотр фильмов или работа в качестве цифрового художника. Но какие приложения стоят ваших денег и времени? Мы протестировали тысячи, чтобы составить окончательный список лучших приложений для iPad прямо сейчас. Вы найдете их разделенными на категории на следующих страницах, но сначала посмотрите наше приложение для iPad недели.

Комментарии

Жизнь с BlackBerry: хромая утка или альтернатива подлинной Android?
Жизнь с BlackBerry: хромая утка или альтернатива подлинной Android? Жизнь с BlackBerry: хромая утка или альтернатива подлинной Android? Новый BlackBerry Z10, безусловно, впечатляет - но как его сравнить с использованием нового телефона на Android или Windows Phone? Я решил выяснить.
Процесс имеет радикально изменилось с Windows 7 дней Как настроить Bluetooth для ПК с Windows 7 Как настроить Bluetooth для ПК с Windows 7 Нужно использовать Bluetooth с Windows 7?
Как использовать SyncMate в качестве Android File Transfer Mac?
Как использовать SyncMate в качестве Android File Transfer Mac? Скачать SyncMate и установите его на свой Mac. Передача файлов между Mac и Android доступна в опции «Монтировать диск». Эта функция предлагается в версии Expert, поэтому вам необходимо обновить бесплатную версию. Вы можете обновить Вот (наш совет - протестировать SyncMate Free
Как использовать Bluetooth на телефоне или планшете Android?
Как использовать Bluetooth на телефоне или планшете Android? Операционная система Android гордится тем, что присоединилась к другим поставщикам операционных систем, таким как Microsoft, Blackberry и Apple, в использовании Bluetooth Smart Ready Revolution. Это говорит о том, что все последние интеллектуальные устройства Android с новейшей ОС Android могут подключаться и взаимодействовать с другими встроенными продуктами Bluetooth, такими как наушники и клавиатуры. Как
Что такое лучшее бесплатное приложение интернет-радио для Android?
Что такое лучшее бесплатное приложение интернет-радио для Android? Что такое лучшее бесплатное приложение интернет-радио для Android? Ищете потоковую музыку на вашем Android-устройстве? Эти приложения интернет-радио - отличный способ сделать это! Прочитайте больше , Вы, наверное, уже знаете все об этом, но если нет, просто
Но что, если вы в настоящее время используете iOS и хотите попробовать Android, фактически не приобретая устройство Android?
Что такое лучшее бесплатное приложение интернет-радио для Android? Что такое лучшее бесплатное приложение интернет-радио для Android? Ищете потоковую музыку на вашем Android-устройстве? Эти приложения интернет-радио - отличный способ сделать это! Прочитайте больше , Вы, наверное, уже знаете все об этом, но если нет, просто
Какие приложения вы используете, чтобы приспособить свой опыт работы с Android, и вам нравится определенный лаунчер или набор иконок?
Какие приложения вы используете, чтобы приспособить свой опыт работы с Android, и вам нравится определенный лаунчер или набор иконок? Вы неравнодушны к любому приложению или прыгаете с одного на другое? Где вы черпаете вдохновение? Пожалуйста, поделитесь своими мыслями в комментариях ниже.
Вы можете прочитать больше о почему 64-битная Windows больше не поддерживает 16-битные приложения здесь Почему 64-разрядные операционные системы не могут запускать 16-разрядные приложения?
Какие приложения вы используете, чтобы приспособить свой опыт работы с Android, и вам нравится определенный лаунчер или набор иконок? Вы неравнодушны к любому приложению или прыгаете с одного на другое? Где вы черпаете вдохновение? Пожалуйста, поделитесь своими мыслями в комментариях ниже.
Например, допустим, вы хотите печатать на беспроводном принтере с iPhone, телефона Android, iPad или планшета другого типа?
Например, допустим, вы хотите печатать на беспроводном принтере с iPhone, телефона Android, iPad или планшета другого типа? Как вы должны установить драйверы принтера на свой телефон или планшет? Bluetooth печать СВЯЗАННЫЕ С:
Если на нашем компьютере нет микрофона, возможно, у нас есть телефон с Android, iPhone или iPad?
Если на нашем компьютере нет микрофона, возможно, у нас есть телефон с Android, iPhone или iPad? Duolingo также доступен как приложение для Android и iOS. Конечно бесплатно. Так где Duolingo берет деньги для вашего бизнеса? Более продвинутые пользователи имеют возможность практиковать знания иностранных языков посредством перевода веб-сайтов, за которые переводы Duolingo оплачиваются. Обучение в Duolingo также приятно, потому что мы достигаем успехов на своем пути, мы можем приглашать
В какой формат файла вы должны экспортировать свое видео, и какая скорость передачи данных обеспечит вам высочайшее качество видео при непрерывном воспроизведении в Интернете?
В какой формат файла вы должны экспортировать свое видео, и какая скорость передачи данных обеспечит вам высочайшее качество видео при непрерывном воспроизведении в Интернете? Когда вы узнаете, что происходит за кулисами, вы поймете, какие настройки лучше всего использовать, и почему вы должны их использовать. Чтобы ответить на эти вопросы, полезно знать, как YouTube обрабатывает ваше видео после его загрузки на свои видеосерверы. Когда вы узнаете, что происходит за кулисами,

Но какие приложения стоят ваших денег и времени?
Жизнь с BlackBerry: хромая утка или альтернатива подлинной Android?
Жизнь с BlackBerry: хромая утка или альтернатива подлинной Android?
Новый BlackBerry Z10, безусловно, впечатляет - но как его сравнить с использованием нового телефона на Android или Windows Phone?
Процесс имеет радикально изменилось с Windows 7 дней Как настроить Bluetooth для ПК с Windows 7 Как настроить Bluetooth для ПК с Windows 7 Нужно использовать Bluetooth с Windows 7?
Как использовать SyncMate в качестве Android File Transfer Mac?
Как использовать SyncMate в качестве Android File Transfer Mac?
Как использовать Bluetooth на телефоне или планшете Android?
Что такое лучшее бесплатное приложение интернет-радио для Android?
Что такое лучшее бесплатное приложение интернет-радио для Android?