Кодты іздеу

Ардуино коды және HC-06 Bluetooth AC шам бейне

Ардуино коды және HC-06 Bluetooth AC шам бейне

Бұл оқулықта біз HC-06 Bluetooth модулі мен Arduino көмегімен айнымалы ток шамын қалай басқаруға болатынын қарастырамыз. Жоба Bluetooth арқылы қосылған құрылғыдан жіберілген пәрмендер арқылы шамды қосуға және өшіруге мүмкіндік береді. Бұл қашықтан басқару мүмкіндігі оны Arduino жобаларына Bluetooth функционалын біріктіргісі келетін жаңадан бастаушыларға арналған практикалық және қызықты жоба етеді.

HC-06-module

Осы оқулықта көрсетілген қадамдарды орындау арқылы сіз аппараттық құралды орнатып, код жазып, смартфон немесе планшеттен жарықты басқара аласыз. Қосымша түсініктеме қажет болса, осы оқулыққа қатысты бейнені міндетті түрде қараңыз (бейнеде 0:00).

Аппараттық құрал түсіндірмесі

Бұл жобаның негізгі компоненттеріне HC-06 Bluetooth модулі, Arduino тақтасы және айнымалы ток шамын басқаруға арналған реле модулі кіреді. HC-06 модулі Bluetooth қосылымын орнатуға жауапты, бұл құрылғыңызға Arduino-мен сымсыз байланысуға мүмкіндік береді. Оның төрт түйреуіші бар: VCC (қуат), GND (жер), TX (тарату) және RX (қабылдау).

Реле модулі айнымалы ток шамын басқару үшін қосқыш ретінде жұмыс істейді. Ол шамның қуат сымына қосылады, бұл Arduino-дан алынған сигналдарға негізделген тізбекті жабуға (шамды қосу) немесе ашуға (шамды өшіру) мүмкіндік береді. Arduino операцияның миы ретінде қызмет етеді, Bluetooth модулінен жіберілген пәрмендерді түсіндіреді және релені сәйкесінше басқарады.

Деректер парағының мәліметтері

ӨндірушіHC
Бөлшек нөміріHC-06
Логика/IO кернеуі3.3 В – 6 В
Қоректендіру кернеуі3.3 В – 6 В
Шығыс тогы (арнаға)20 мА
Ең жоғары ток (арнаға)50 мА
PWM жиілігі бойынша нұсқауҚолданылмайды
Кіріс логикалық шектері0.2 В (төмен) / 0.7 В (жоғары)
Кернеу төмендеуі / RDS(on) / қанығу0.5 В
Жылулық шектер85 °C
ҚаптамаМодуль
Ескертулер / нұсқаларBluetooth 2.0

  • Модульді зақымдамау үшін дұрыс кернеу деңгейлерін қамтамасыз етіңіз.
  • Модуль жоғары жүктемелі қолданбаларда қолданылса, тиісті жылу таратқышты пайдаланыңыз.
  • Байланыс ақауларын болдырмау үшін TX және RX түйреуіштерін дұрыс қосыңыз.
  • Айнымалы ток шамының кернеуі мен ток көрсеткіштеріне сәйкес келуі үшін реле сипаттамаларын қайта тексеріңіз.
  • Айнымалы ток кернеуімен жұмыс істегенде қауіпсіздікті арттыру үшін тиісті оқшаулауды қамтамасыз етіңіз.

Сымды қосу нұсқаулары

HC-06_bluetooth_wiring

HC-06 Bluetooth модулі мен релені Arduino-ға қосу үшін алдымен HC-06-ның VCC түйреуішін Arduino-дағы 5V түйреуішіне, ал GND түйреуішін Arduino-ның жеріне қосыңыз. Әрі қарай, HC-06-ның TX түйреуішін Arduino-дағы 10-цифрлық түйреуішке, ал RX түйреуішін 11-цифрлық түйреуішке қосыңыз. Бұл орнату Arduino-ға Bluetooth модулімен байланысуға мүмкіндік береді.

Реле модулі үшін басқару түйреуішін (көбінесе IN деп белгіленеді) Arduino-дағы 2-цифрлық түйреуішке қосыңыз. Реленің VCC түйреуіші де 5V қуат көзіне қосылуы керек, ал жер түйреуіші ортақ жерге баруы керек. Шамның қуатын тиімді басқару үшін айнымалы ток шамының сымдарын реленің әдетте ашық (NO) және ортақ (COM) терминалдарына қосуды ұмытпаңыз.

Код мысалдары мен түсіндірме

Arduino коды SoftwareSerial кітапханасын қосудан басталады, бұл басқа цифрлық түйреуіштерде сериялық байланысқа мүмкіндік береді. Bluetooth модулі TX түйреуіші 10-түйреуішке, ал RX түйреуіші 11-түйреуішке қосылған күйде инициализацияланады:

SoftwareSerial BT(10, 11); // "виртуалды" сериялық порт/UART жасайды

Бұл орнату Arduino-ға HC-06 модулімен тиімді байланысуға мүмкіндік береді. Реле үшін басқару түйреуіші келесідей анықталады:

#define SW 2 // 2-түйреуішті басқару түйреуіші ретінде анықтау

setup() функциясы Bluetooth қосылымын инициализациялайды және реле басқару түйреуішін шығыс ретінде орнатады:

void setup() { pinMode(SW, OUTPUT); BT.begin(9600); }

loop() функциясында Arduino кіріс Bluetooth пәрмендерін тексереді. Егер '1' қабылданса, жарықты қосу үшін реле іске қосылады:

if (a=='1') { digitalWrite(SW, LOW); BT.println("Light on"); }

Керісінше, егер '2' қабылданса, жарықты өшіру үшін реле өшіріледі:

if (a=='2') { digitalWrite(SW, HIGH); BT.println("Light off"); }

Қосымша мәліметтер мен толық код үшін мақаланың астында жүктелген толық бағдарламаны қараңыз.

Демонстрация / Не күтуге болады

Барлығы дұрыс орнатылғаннан кейін, Bluetooth пәрмендерін пайдаланып айнымалы ток шамын қосуға және өшіруге болады. '1' тергенде шам қосылады, ал '2' тергенде өшеді. Пәрмендерді жібермес бұрын Bluetooth құрылғыңыздың HC-06 модулімен жұптастырылғанына көз жеткізіңіз. Егер пәрмендер танылмаса, сым қосылымдарын тексеріп, HC-06-ның дұрыс қосылғанына көз жеткізіңіз (бейнеде 3:30).

Бейне уақыт белгілері

  • 00:00 - Жобаға кіріспе
  • 01:45 - Аппараттық құралды орнату
  • 04:30 - Кодты түсіндіру
  • 06:15 - Қолданбаның демонстрациясы
  • 08:00 - Ақаулықтарды жою кеңестері

Суреттер

HC-06-module
HC-06-module
HC-06_bluetooth_wiring
HC-06_bluetooth_wiring
52-This is the Arduino code for an HC-06 Bluetooth AC bulb ON/OFF.
Тіл: C++
/*
 * This is the Arduino code for the HC-06 Bluetooth module
 * to measure the distance using Arduino for a robotic car and other applications
 * Watch the video https://youtu.be/-E9J9ExdZ20
 * 
 * Written by Ahmad Nejrabi for Robojax Video
 * Date: January 1, 2018, in Ajax, Ontario, Canada
 * Permission granted to share this code given that this
 * note is kept with the code.
 * Disclaimer: this code is "AS IS" and for educational purposes only.
 * 
 */

// original source code: https://github.com/tronixlabsAU/HC06
#include <SoftwareSerial.h>

SoftwareSerial BT(10, 11); 
// creates a "virtual" serial port/UART
// connect BT module TX to D10
// connect BT module RX to D11
// connect BT Vcc to 5V, GND to GND

#define SW 2 // define pin 2 as control pin
// by Robojax for Robojax.com, January 1, 2018
void setup()  
{
    
  // set digital pin to control as an output
  pinMode(SW, OUTPUT);

  // set the data rate for the SoftwareSerial port
  BT.begin(9600);

  // Send test message to other device
  BT.println("Hello from Arduino");
}

char a; // stores incoming character from other device

void loop() 
{
  if (BT.available())
  // if text arrived from BT serial...
  {
    a=(BT.read());
    if (a=='1')
    {
      digitalWrite(SW, LOW);// Turn LIGHT ON
      BT.println("Light on");
    }
    if (a=='2')
    {
      digitalWrite(SW, HIGH);// Turn LIGHT OFF
      BT.println("Light off");
    }
    if (a=='?')
    {
      BT.println("Send '1' to turn LIGHT on");
      BT.println("Send '2' to turn LIGHT off");
    }   
    
  }
}

Сізге қажет болуы мүмкін нәрселер

Ресурстар мен сілтемелер

Файлдар📁

Fritzing файлы