Управляем 5В реле через Bluetooth с помощью Arduino и Android Smartwatch

Создадим проект по управлению 5В реле через Bluetooth с помощью Arduino и умных часов Android Smartwatch.

Вы хотите использовать свои умные часы для управления вещами вокруг вас? Это можно сделать очень легко в течение, буквально, нескольких часов.

В этом уроке мы покажем вам, как контролировать свою бытовую технику с помощью часов Android Wear. Мы будем использовать часы Moto360, но вы можете установить приложение в любой Wear OS (ранее Android Wear). В конце этого проекта вы сможете управлять любым электрическим устройством.

Требования к оборудованию

Нам потребуются несколько комплектующих:

  1. Arduino Uno
  2. Реле 5в
  3. HC-06 Bluetooth модуль
  4. Любые часы Wear OS

Аппаратная сборка

Подключите оборудование, как показано на приведенных ниже схемах.

Подключите плату Arduino UNO к модулю Bluetooth HC-06.
Будьте осторожны с этим шагом! Сначала отключите электропитание. Это будет работать как переключатель, поэтому удалите физический переключатель и подключите к контакту реле NC и COM и затяните винт.

Подключите IN1 вывод к GPIO13.

Установка программного обеспечения Arduino

Вы можете скачать Arduino IDE с нашего сайта здесь или с официального сайта Arduino.

После установки откройте Arduino IDE и подключите Arduino UNO с помощью USB-кабеля.

Выбираем плату:

Выбираем порт:

Загрузка исходного кода

Этот код использует протокол последовательной связи Arduino с модулем Bluetooth. Выводы RX и TX Arduino подключаются к выводам TX и RX модуля HC-06 Bluetooth соответственно.

Модуль Bluetooth получает данные от сопряженного смартфона Android и запускает реле на основе полученных данных.

Код, стоящий за этим, довольно прост. Если принятые данные являются символом «1», то реле включается, а включается если принятыми данными является символ «0» (реле будет отключено).

Вы можете скачать или скопировать код ниже:

//--------BT app control---------//
//Программа для четырех переключателей, но в нашем случае мы используем вывод pin 11

int switch1=11;
int switch2=12;
int switch3=8;
int switch4=7;

int Received=0;
int switch1_state =0;
int switch2_state =0;
int switch3_state = 0;
int switch4_state = 0;


void setup(){
  
  Serial.begin(9600);
  pinMode(switch1,OUTPUT);
  pinMode(switch2,OUTPUT);
  pinMode(switch3,OUTPUT);
  pinMode(switch4,OUTPUT);
  
}

void loop(){
 
 if(Serial.available()>0)
 { 
    Received = Serial.read();
    
 }

////////////////switch1/////////////////////

if (switch1_state == 0 && Received == '1')
  {
    digitalWrite(switch1,HIGH);
    switch1_state=1;
    Received=0;  
  }
if (switch1_state ==1 && Received == '1')
  {
    digitalWrite(switch1,LOW);
    switch1_state=0;
    Received=0;
  }

////////////////switch2/////////////////////
if (switch2_state == 0 && Received == '2')
  {
    digitalWrite(switch2,HIGH);
    switch2_state=1;
    Received=0;  
  }
if (switch2_state ==1 && Received == '2')
  {
    digitalWrite(switch2,LOW);
    switch2_state=0;
    Received=0;
  }
///////////////////////////////////////////
////////////////switch3/////////////////////
if (switch3_state == 0 && Received == '3')
  {
    digitalWrite(switch3,HIGH);
    switch3_state=1;
    Received=0;  
  }
if (switch3_state ==1 && Received == '3')
  {
    digitalWrite(switch3,LOW);
    switch3_state=0;
    Received=0;
  }
///////////////////////////////////////////
////////////////switch4/////////////////////
if (switch4_state == 0 && Received == '4')
  {
    digitalWrite(switch4,HIGH);
    switch4_state=1;
    Received=0;  
  }
if (switch4_state ==1 && Received == '4')
  {
    digitalWrite(switch4,LOW);
    switch4_state=0;
    Received=0;
  }
}

Установка apk в Wear OS

Загрузите файл apk для приложения smartwatch.

Используя ADB через Wi-Fi, выполните следующие действия, чтобы установить приложение на свои смартчасы:

  1. Перейдите в настройку dev на часах и включите ADB и Bluetooth ADB.
  2. Перейдите в настройку Bluetooth в приложении Android Wear на телефоне и включите ADB через Bluetooth.
  3. Скачайте базовый adb на ваш компьютер:
  4. Подключите телефон к компьютеру и включите опцию ADB USB в приложении разработчика
  5. После этой настройки на вашем компьютере откройте консоль в папке, содержащей файлы ADB и apk.
  6. Выполните команду:
    adb Devices, adb forward tcp:6666, localabstract:/adb-hub, adb connect localhost:6666
  7. После установления соединения с часами выберите:
    adb -e install apkname.apk
  8. Замените apkname на BluetoothWatch-debug.apk с правильным путем, если вы находитесь за пределами каталога, содержащего файл.

Так будут выглядеть команды после правильной установки приложения:

Как связать всё по Bluetooth

После установки подключите смартчасы к модулю HC-06.

Вам необходимо подключить модуль Bluetooth HC-06 с помощью смартфона Android, прежде чем вы сможете использовать его в приложении.

Вы должны увидеть устройство HC-06, доступное на ваших часах.

Теперь выполните следующие действия:

  1. Откройте настройки Bluetooth вашего устройства и найдите новые устройства, убедитесь, что светодиод на модуле HC-06 постоянно мигает (режим сопряжения).
  2. Выберите HC-06 (или вы увидите адрес, заканчивающийся на «C», как показано на рисунках).
  3. Введите PIN-код «1234» и нажмите OK.
  4. Откройте приложение «Wear OS» и нажмите кнопку Bluetooth в верхней части экрана.
  5. Выберите «HC-06» из списка.
  6. Используйте переключатель со значком лампочки или встряхните часы, чтобы включить / выключить реле. Убедитесь, что в ваш Arduino уже загружен приведенный выше код.
  7. Щелкните на значок настроек, если вы хотите настроить калибровку встряхивания.

Вот так проходил процесс создания проекта:

Вот и все! Теперь ваши умные часы подключены и вы можете управлять реле 5В через через Bluetooth.

Ардуино+