Kod Ara

Arduino Kodu ve HC-06 Bluetooth AC Ampul Videosu

Arduino Kodu ve HC-06 Bluetooth AC Ampul Videosu

Bu eğitimde, HC-06 Bluetooth modülü ve bir Arduino kullanarak bir AC ampulü nasıl kontrol edeceğimizi keşfedeceğiz. Proje, Bluetooth bağlantılı bir cihaz üzerinden gönderilen komutlarla ampulü açıp kapatmanıza olanak tanır. Bu uzaktan kumanda özelliği, Arduino projelerine Bluetooth işlevselliği entegre etmek isteyen yeni başlayanlar için pratik ve eğlenceli bir proje haline getirir.

HC-06-module

Bu eğitimde özetlenen adımları izleyerek donanımı kurmayı, kodu yazmayı ve ışığı akıllı telefonunuzdan veya tabletinizden kontrol etmeyi başarabileceksiniz. Daha fazla açıklamaya ihtiyacınız olursa, bu eğitimle ilişkili videoyu kontrol ettiğinizden emin olun (videoda 0:00).

Donanım Açıklaması

Bu projenin ana bileşenleri HC-06 Bluetooth modülü, bir Arduino kartı ve AC ampulü kontrol etmek için bir röle modülüdür. HC-06 modülü, cihazınızın Arduino ile kablosuz olarak iletişim kurmasını sağlayan bir Bluetooth bağlantısı kurmaktan sorumludur. Dört pini vardır: VCC (güç), GND (toprak), TX (verici) ve RX (alıcı).

Röle modülü, AC ampulü kontrol etmek için bir anahtar görevi görür. Ampulün güç hattına bağlanır ve Arduino'dan alınan sinyallere göre devreyi tamamlamasına (ampulü açmasına) veya devreyi kesmesine (ampulü kapatmasına) olanak tanır. Arduino, Bluetooth modülünden gönderilen komutları yorumlayan ve röleyi buna göre kontrol eden işlemin beyni olarak hizmet eder.

Veri Sayfası Ayrıntıları

ÜreticiHC
Parça numarasıHC-06
Mantık/IO voltajı3,3 V – 6 V
Besleme voltajı3,3 V – 6 V
Çıkış akımı (kanal başına)20 mA
Tepe akımı (kanal başına)50 mA
PWM frekansı kılavuzuUygulanamaz
Giriş mantık eşikleri0,2 V (düşük) / 0,7 V (yüksek)
Gerilim düşümü / RDS(on) / doyum0,5 V
Termal sınırlar85 °C
PaketModül
Notlar / varyantlarBluetooth 2.0

  • Modüle zarar vermemek için uygun voltaj seviyelerini sağlayın.
  • Modül yüksek yük uygulamalarında kullanılıyorsa uygun ısı emici kullanın.
  • İletişim sorunlarını önlemek için TX ve RX pinlerini doğru şekilde bağlayın.
  • AC ampulün voltaj ve akım değerleriyle eşleşmesi için röle özelliklerini çift kontrol edin.
  • AC voltajıyla çalışırken güvenliği artırmak için uygun izolasyon uygulayın.

Bağlantı Talimatları

HC-06_bluetooth_wiring

HC-06 Bluetooth modülünü ve röleyi Arduino'ya bağlamak için, HC-06'nın VCC pinini Arduino'daki 5V pinine ve GND pinini Arduino'nun toprağına bağlayarak başlayın. Ardından, HC-06'nın TX pinini Arduino'daki dijital pin 10'a ve RX pinini dijital pin 11'e bağlayın. Bu kurulum, Arduino'nun Bluetooth modülüyle iletişim kurmasını sağlar.

Röle modülü için, kontrol pinini (genellikle IN olarak etiketlenir) Arduino'daki dijital pin 2'ye bağlayın. Rölenin VCC pini de 5V güç kaynağına bağlanmalı ve toprak pini ortak toprağa gitmelidir. Ampulün gücünü etkili bir şekilde kontrol etmek için AC ampul kablolarını rölenin normalde açık (NO) ve ortak (COM) terminallerine bağladığınızdan emin olun.

Kod Örnekleri ve Açıklama

Arduino kodu, diğer dijital pinlerde seri iletişime izin veren SoftwareSerial kütüphanesini dahil ederek başlar. Bluetooth modülü, TX pini pin 10'a ve RX pini pin 11'e bağlı olarak başlatılır:

SoftwareSerial BT(10, 11); // sanal bir seri port/UART oluşturur

Bu kurulum, Arduino'nun HC-06 modülüyle etkili bir şekilde iletişim kurmasını sağlar. Röle için kontrol pini şu şekilde tanımlanır:

#define SW 2 // pin 2'yi kontrol pini olarak tanımla

setup() işlevi Bluetooth bağlantısını başlatır ve röle kontrol pinini çıkış olarak ayarlar:

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

loop() işlevinde, Arduino gelen Bluetooth komutlarını kontrol eder. Bir '1' alınırsa, ışığı açmak için röle etkinleştirilir:

if (a=='1') { digitalWrite(SW, LOW); BT.println("Işık açık"); }

Tersine, bir '2' alınırsa, ışığı kapatmak için röle devre dışı bırakılır:

if (a=='2') { digitalWrite(SW, HIGH); BT.println("Işık kapalı"); }

Daha fazla ayrıntı ve tam kod için lütfen makalenin altında yüklenen tam programa bakın.

Gösterim / Beklentiler

Her şey doğru şekilde kurulduğunda, Bluetooth komutlarını kullanarak AC ampulü açıp kapatabilirsiniz. '1' yazmak ampulü açar, '2' yazmak ise kapatır. Komut göndermeden önce Bluetooth cihazınızın HC-06 modülüyle eşleştirildiğinden emin olun. Komutlar tanınmazsa, bağlantılarınızı kontrol edin ve HC-06'nın doğru şekilde bağlandığından emin olun (videoda 3:30).

Video Zaman Damgaları

  • 00:00 - Projeye giriş
  • 01:45 - Donanım kurulumu
  • 04:30 - Kod açıklaması
  • 06:15 - Uygulamanın gösterimi
  • 08:00 - Sorun giderme ipuçları

Görseller

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.
Dil: 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");
    }   
    
  }
}

İhtiyacın olabileceğini düşünüyor

Kaynaklar ve referanslar

Dosyalar📁

Fritzing Dosyası