Untuk mengendalikan Motor DC agar dapat berputar searah jarum jam atau Clock Wise (CW) dan dapat berputar berlawanan arah jarum jam atau Counter Clock Wise (CCW) dapat dengan menggunakan Ponsel Android yang sudah diinstalasi aplikasi tertentu. Ponsel dan Mikrokontroler terhubung melalui sinyal Bluetooth.
Perlu diperhatikan sebelum mengubah arah putaran motor DC dipastikan motor DC dalam keadaan berhenti terlebih dulu dengan menekan tombol OFF pada ponsel.
Rangkaian Skematik:
Layout PCB :
Letak Komponen
Komponen yang dibutuhkan :
- PCB Polos ukuran 10x10cm, 1 pcs
- Mikrokontroler STM32 Module, 1 pcs
- Bluetooth HC-05, 1 pcs
- Motor DC, 1 pcs
- Socket 40 pin, 1 pcs
- Transistor BC548 atau sejenisnnya, 4 pcs
- Resistor 10K, 2 pcs
- Resistor 330, 5 pcs
- LED 3 mm, 1 pcs
- Pin Header Male 1x2, 2 pcs
- Pin Header Female 1x6, 1 pcs
- Dioda 1N4002, 5 pcs
- Regulator 7805, 1 pcs
- Kapasitor Electrolic 100uF/25V, 1 pcs
- Kapasitor Elektrolic 10uF/25V, 1 pcs
- Kapasitor Tantalum 100nF, 1 pcs
- Ferric Chloride FeCl3, 100 gr
- Komputer yang memiliki perangkat lunak Arduino IDE, Eagle
- Ponsel yang memiliki perangkat lunak Serial Bluetooth Terminal
- Printer Laserjet
- Kertas foto, 1 lbr
Konfigurasi pin STM32F103
Pengaturan Ponsel
1. Aktifkan Bluetooth
2. Buka perangkat lunak Serial Bluetooth Terminal
3. Atur tombol icon sesuai program arduino
Program dibuat dalam perangkat lunak Arduino IDE dengan urutan perintah sebagai berikut :
#define CW PA6
#define CCW PA7
char data=0;
void setup() {
Serial.begin(9600);
pinMode(CW, OUTPUT);
pinMode(CCW, OUTPUT);
}
void loop() {
if (Serial.available() > 0)
{
data = Serial.read();
if (data == '0') {
digitalWrite(CW, LOW);
digitalWrite(CCW, LOW);
Serial.print("Motor OFF\n");
}
if (data == '1') {
digitalWrite(CW, HIGH);
digitalWrite(CCW, LOW);
Serial.print("Motor ON CW\n");
}
if (data == '2') {
digitalWrite(CW, LOW);
digitalWrite(CCW, HIGH);
Serial.print("Motor ON CCW\n");
}
}
}
#define CCW PA7
char data=0;
void setup() {
Serial.begin(9600);
pinMode(CW, OUTPUT);
pinMode(CCW, OUTPUT);
}
void loop() {
if (Serial.available() > 0)
{
data = Serial.read();
if (data == '0') {
digitalWrite(CW, LOW);
digitalWrite(CCW, LOW);
Serial.print("Motor OFF\n");
}
if (data == '1') {
digitalWrite(CW, HIGH);
digitalWrite(CCW, LOW);
Serial.print("Motor ON CW\n");
}
if (data == '2') {
digitalWrite(CW, LOW);
digitalWrite(CCW, HIGH);
Serial.print("Motor ON CCW\n");
}
}
}
Tutorial mengatur Serial Bluetooth Terminal di Ponsel :
Tutorial mengatur Arduino IDE penjelasan perintah program :
Comments
Post a Comment