Arduino - Kontrol Motor DC melalui Bluetooth

Arduino - Kontrol Motor DC melalui Bluetooth

Dalam proyek ini kita akan mengontrol motor DC dengan smartphone melalui bluetooth. Proyek ini bagus untuk mempelajari lebih lanjut tentang:



  • Motor DC
  • Menghubungkan Arduino dengan smartphone Anda
  • Bluetooth
  • IC L293D

Jika Anda tidak memiliki IC L293 Anda dapat membuat rangkaian yang sama menggunakan bridge H, 

Bahan yang diperlukan:



  • Arduino UNO - baca Best Arduino Starter Kits
  • 1x Modul Bluetooth (misalnya: HC-05 atau 06)
  • 1x Smartphone (Android apa pun akan berfungsi)
  • Aplikasi BlueTerm
  • 1x L293D IC
  • 1x motor DC
  • 1x papan tempat memotong roti
  • Kabel jumper

Skema Rangkaian



Saya hanya dapat kabel TX dan RX setelah Anda mengunggah kode Arduino.

Dua kesalahan umum

Anda perlu melepas kabel RX dan TX saat Anda mengunggah sketsa ke Arduino Anda.

Terkadang orang menghubungkan TX dari modul bluetooth ke TX dari Arduino… itu salah dan itu tidak akan berhasil. Pastikan Anda menghubungkannya dengan benar, TX ke RX dan RX ke TX.

catatan:

Jika HC-05 Bluetooth Module meminta kata sandi, ini adalah '1234'.

Unggah kode ini di bawah

/*
 * Control DC motor with Smartphone via bluetooth
*/

int motorPin1 = 3; // pin 2 on L293D IC
int motorPin2 = 4; // pin 7 on L293D IC
int enablePin = 5; // pin 1 on L293D IC
int state;
int flag=0;        //makes sure that the serial only prints once the state
 
void setup() {
    // sets the pins as outputs:
    pinMode(motorPin1, OUTPUT);
    pinMode(motorPin2, OUTPUT);
    pinMode(enablePin, OUTPUT);
    // sets enablePin high so that motor can turn on:
    digitalWrite(enablePin, HIGH);
    // initialize serial communication at 9600 bits per second:
    Serial.begin(9600);
}
 
void loop() {
    //if some date is sent, reads it and saves in state
    if(Serial.available() > 0){     
      state = Serial.read();   
      flag=0;
    }   
    // if the state is '0' the DC motor will turn off
    if (state == '0') {
        digitalWrite(motorPin1, LOW); // set pin 2 on L293D low
        digitalWrite(motorPin2, LOW); // set pin 7 on L293D low
        if(flag == 0){
          Serial.println("Motor: off");
          flag=1;
        }
    }
    // if the state is '1' the motor will turn right
    else if (state == '1') {
        digitalWrite(motorPin1, LOW); // set pin 2 on L293D low
        digitalWrite(motorPin2, HIGH); // set pin 7 on L293D high
        if(flag == 0){
          Serial.println("Motor: right");
          flag=1;
        }
    }
    // if the state is '2' the motor will turn left
    else if (state == '2') {
        digitalWrite(motorPin1, HIGH); // set pin 2 on L293D high
        digitalWrite(motorPin2, LOW); // set pin 7 on L293D low
        if(flag == 0){
          Serial.println("Motor: left");
          flag=1;
        }
    }
}

Pastikan Anda melepas kabel dari RX dan TX jika tidak, kode tidak akan diunggah dengan benar!

Untuk komunikasi android dengan modul bluetooth kami, saya telah menggunakan aplikasi BlueTerm, Ini sepenuhnya gratis, jadi Anda hanya perlu pergi ke "Play store" dan mendownloadnya. Kemudian Anda tinggal menghubungkan smarthphone Anda dengan modul bluetooth. Ingatlah untuk melepaskan kabel TX dan RX. (Anda dapat melihat di video youtube di bawah ini bagaimana melakukannya).

Saya hanya menyetel 3 perintah untuk mengontrol motor DC:

'0' - Mematikan motor DC

'1' - Motor DC berputar ke kanan

'2' - Motor DC berputar ke kiri

Post a Comment

Previous Post Next Post

Contact Form