BAB III PERANCANGAN

advertisement
BAB III
PERANCANGAN
Bab ini membahas perancangan otomatisasi peralatan rumah tangga
berbasis Platform Mikrocontroller Open Source Arduino Uno. Microcontroller
tersebut digunakan untuk mengolah informasi yang telah dikirimkan oleh
smartphone dan mengatur operasi kerja dari driver transistor. Pengaturan tersebut
berfungsi untuk menghidupkan dan mematikan peralatan rumah tangga yang ada
Pembuatan sistem meliputi perencanaan perangkat keras dan perencanaan
perangkat lunak.
3.1
Prinsip Kerja Sistem
Sistem yang telah dibangun, secara garis besar terdiri dari blok rangkaian
seperti terlihat pada gambar dibawah ini :
AMR_Voice
Smartphone
Android
Module
Bluetooth untuk
komunikasi data
Microcontroller
Kipas, Lampu, dan
peralatan rumah
tangga lainnya
Transistor
Driver peralatan
rumah tangga
Arduino Uno
Via Internet
Google Voice
Recognition
System
Gambar 3.1 Blok Rangkaian Peralatan rumah tangga dengan suara
Secara garis besar, cara kerja sistem ini adalah :

Pengguna akan menekan tombol pada aplikasi AMR_Voice pada
smartphone Android.

Aplikasi tersebut kemudian akan mengirimkan data-data digital (Voice
32
33
Digital) ke server Google.

Server Google kemudian akan menterjemahkan data-data tersebut (Voice
Digital) dan akan mengirimkan terjemahan data-data tersebut dalam
bentuk String Teks untuk aplikasi AMR_Voice tersebut.

AMR_Voice yang ada pada smartphone kemudian akan menerima datadata digital (String Teks) yang diberikan oleh google dan kemudian
memerintahkan agar data tersebut
dikirimkan melalui
Bluetooth
smartphone (Master) menuju module Bluetooth yang ada pada
Microcontroller Arduino Uno (Slave).

Module Bluetooth yang ada pada Microcontroller Arduino Uno (Slave)
kemudian menerima data-data digital (String Teks) yang dikirimkan oleh
Bluetooth Master.

Kemudian module Bluetooth yang ada pada Microcontroller Arduino Uno
(Slave) akan berkomunikasi dengan Microcontroller Arduino Uno via PIN
Serial (7 dan 6) dan mengirimkan data-data (String Teks) tersebut kepada
Microcontroller Arduino Uno untuk di proses.

Microcontroller Arduino Uno kemudian akan memproses data-data digital
(String Teks) yang telah dikirimkan oleh module Bluetooth (Slave) dan
kemudian dengan data-data (String Teks) tersebut microcontroller arduino
uno akan memutuskan untuk mematikan/menghidupkan peralatan rumah
tangga via transistor driver.

Transistor driver akan menerima logika High/Low yang akan digunakan
untuk memutus arus listrik peralatan rumah tangga yang telah ditentukan
sebelumnya.
3.2
Perancangan Perangkat Keras
Dalam pemilihan komponen pada sistem-sistem ini maka sangatlah penting untuk
memperhatikan beberapa hal berikut ini :
1. Menggunakan microcontroller dengan platform Open Source sehingga
untuk pengembangannya dapat di support oleh komunitas pengguna
microcontroller ini.
34
2. Menggunakan komponen-komponen yang tersedia di pasaran, sehingga
harganya murah dan mudah di dapat.
3. Rangkaian yang sederhana sehingga mudah untuk dilakukan penambahan
untuk pengembangan lebih lanjut.
3.2.1. Smartphone
Smartphone adalah sebuah gagdet handphone dengan dibekali operating
sistem sehingga dapat digunakan banyak hal, seperti email, sms, live streaming
dan lain-lain. Khusus untuk aplikasi otomatisasi peralatan rumah tangga dengan
menggunakan suara ini ada beberapa spesifikasi yang harus dimiliki yaitu :
1. Memiliki OS yang mendukung Google Ekosystem ( Android ).
2. Mendukung untuk operating system android minimum 2.2 Froyo.
3. Memiliki fitur komunikasi data dengan perangkat yang lain via Bluetooth.
4. Memiliki fitur komunikasi data via jaringan seluler dengan teknologi
minimum GPRS sehingga dapat terhubung dengan intenet.
5. Menggunakan layar sentuh sebagai input dari smartphone tersebut.
6. Minimum memory 5 Mb untuk penyimpanan aplikasi (460 Kb) dan untuk
operasi kerja.
Gambar 3.2 Samsung Galaxy Mini
35
3.2.2. Module Bluetooth Shield SLD63030P SeedStudio
Module Bluetooth ini adalah merupakan Bluetooth module yang dibuat
dalam bentuk shield sesuai dengan namanya namanya. module ini berfungsi untuk
menambahkan fitur Microcontroller Arduino Unosehingga dapat memiliki
kemampuan berkirim data secara wireless. Pertimbangan-pertimbangan yang
digunakan untuk memilih sensor ini adalah sebagai berikut:
1. Komponen tersedia di mana-mana
2. Berbentuk Module shield Arduino sehingga mudah dilakukan penggantian
apabila terjadi kerusakan.
3. Memiliki fitur Software serial port sehingga mudah untuk dilakukan
penggantian PIN untuk komunikasi data apabila mengalami kerusakan.
4. Kompatible dengan board Arduino / Seeeduino / DFRduino
5. Jarak komunikasi hingga 10 meter di dalam ruangan tanpa halangan
6. Interface UART (TTL) dengan baud rate terprogram (firmware SPP telah
terinstall)
7. Default Baud rate: 38400, Data bits: 8, Stop bit: 1, Parity: No parity
8. Memiliki fitur PIN dengan Default PINCODE:”0000”, sehingga seseorang
yang tidak berkepentingan tidak dapat mengakses module ini
9. On board PCB Antenna
10. Telah memiliki sertifikat FCC ID sehingga aman digunakan
11. Merupakan module Bluetooth yang popular sehingga memiliki banyak contoh
untuk listing program yang digunakan oleh pengguna module ini di internet.
Gambar 3.3 Module Bluetooth
36
3.2.3. Minimum Sistem Microcontroller Arduino Uno
Rangkaian mikrokontroler berfungsi untuk mengolah informasi yang
dihasilkan oleh smartphone dan menghasilkan perintah untuk mematikan dan
menghidupkan peralatan elektronik. Rangkaian microcontroller ini menggunakan
minimum sistem yang pada awalnya digunakan untuk mendownload listing
program dari computer ke Chipset microcontroller. Diharapkan dengan minimum
sistem ini akan dapat menghemat biaya yang dikeluarkan untuk membangun
sistem ini. Berikut adalah minimum sistem dari Microcontroller Arduino Uno.
Gambar 3.4 Minimum sistem Microcontroller Arduino Uno
Spesifikasi Hardware :
Microcontroller Chipset
ATmega328
Operating Voltage
5V
Input Voltage (recommended) 7-12V
Input Voltage (limits)
6-20V
Digital I/O Pins
14 (of which 6 provide PWM output)
37
Analog Input Pins
6
DC Current per I/O Pin
40 mA
DC Current for 3.3V Pin
50 mA
Flash Memory
32 KB (ATmega328) of which 0.5 KB used by bootloader
SRAM
2 KB (ATmega328)
EEPROM
1 KB (ATmega328)
Clock Speed
16 MHz
3.2.4. Power Supply
Sebuah rangkaian elektronika yang terdiri dari komponen-komponen aktif
seperti IC dan transistor, agar dapat bekerja maka diperlukan sebuah sumber catu
daya. Modul Mikrokontroler Arduino Uno dan driver transistor memerlukan
tegangan untuk catu daya sebesar 12 Volt DC. Tegangan catu daya tersebut
didapatkan dari transformer CT yang telah diturunkan tegangannya dari 220 Volt
AC menjadi 12 Volt AC. Kemudian dengan bantuan 2 buah diode tegangan 12
volt AC tersebut diubah kembali menjadi 12 Volt DC. gambar dibawah ini
merupakan skematik rangkaian untuk power supply.
Transformator_2201
D1
CT
PLN1
220Vrms
60Hz
0°
12_VDC
D2
C1
100µF
Gambar 3.5 Rangkaian Power Supply
0_VDC
38
3.2.5. Rangkaian Driver Transistor C9013
Rangkaian di bawah ini merupakan driver untuk memutuskan atau
menyambungkan arus listrik yang akan melewati peralatan elektronik yang lain.
Rangkaian ini berkerja seperti sakelar elektronik namun yang membedakannya
adalah sakelar elektronik ini dikendalikan oleh logika High/Low yang dikeluarkan
oleh Microcontroller Arduino Uno.
12_VDC
to_220_VAC
RELAY_NC
X1
K
D1
1N4001
to_peralatan_elektronik
Pin_Digital_IO
R1 1kΩ
Q1
S9013
Gambar 3.6 Rangkaian Driver transistor
Transistor bekerja dengan Karakteristik saturasi dan cut off. ketika
transistor berkerja pada saturasi maka relay akan mati untuk sementara. Namun
ketika transistor berkerja pada daerah cut off maka arus akan mengalir dari catu
daya menuju kolektor transistor melewati relay sehingga akan menyebabkan
kumparan relay aktif dan menginduksi. pada saat relay berkerja menginduksi,
maka relay akan berkerja untuk menghubungkan catudaya positif 220 VAC
dengan peralatan elektronik rumah tangga. Pada saat peralatan rumah tangga
tersebut mendapatkan catudaya 220 VAC maka peralatan tersebut akan hidup, dan
ketika relay tidak menginduksi maka jalur catudaya 220 VAC akan terputus
sehingga peralatan elektronik akan mati.
3.3
Perancangan Perangkat Lunak
Perancangan perangkat lunak dibagi menjadi beberapa bagian, hal itu
disebabkan tidak semua perangkat lunak di buat melainkan ada juga yang
39
menggunakan perangkat lunak yang tersedia di google play store. Berikut adalah
perancangan perangkat lunak yang digunakan :
3.3.1. Komunikasi data Bluetooth (slave) - Arduino
Port yang digunakan adalah Port I/O digital 6 dan Port I/O digital 7. Port
I/O digital 6 berfungsi sebagai penerima input data (Rx) dari module bluetooth
dan PORT I/O Digital 7 berfungsi sebagai pengirim data (Tx) untuk module
Bluetooth.
#include <SoftwareSerial.h> //Software Serial Port
#define RxD 6
#define TxD 7
SoftwareSerial blueToothSerial(RxD,TxD);
void setup()
{
pinMode(RxD, INPUT);
pinMode(TxD, OUTPUT);
setupBlueToothConnection();
}
void setupBlueToothConnection()
{
blueToothSerial.begin(38400);
//Set BluetoothBee BaudRate to default baud rate 38400
delay(2000); // This delay is required.
blueToothSerial.flush();
}
3.3.2. Komunikasi data Bluetooth (master) - Bluetooth (slave)
Listing program dibawah ini berfungsi untuk mengatur Bluetooth yang ada
pada Microcontroller Arduino Uno menjadi mode slave, memperbolehkan setiap
hubungan bluetooth yang pernah terverifikasi dengan PIN untuk terhubung
otomatis, memberikan nama kepada bluetooth (slave) menjadi “SeeedBTSlave”,
dan menonaktifkan fitur koneksi otomatis apabila hubungan yang telah dibangun
putus secara tiba-tiba.
void setupBlueToothConnection()
40
{
blueToothSerial.print("\r\n+STWMOD=0\r\n"); //set the bluetooth work in slave
mode
blueToothSerial.print("\r\n+STNA=SeeedBTSlave\r\n"); //set the bluetooth
name as "SeeedBTSlave"
blueToothSerial.print("\r\n+STOAUT=1\r\n"); // Permit Paired device to connect
me
blueToothSerial.print("\r\n+STAUTO=0\r\n"); // Auto-connection should be
forbidden here
delay(2000); // This delay is required.
blueToothSerial.print("\r\n+INQ=1\r\n"); //make the slave bluetooth inquirable
Serial.println("The slave bluetooth is inquirable!");
}
3.3.3. Listing untuk menghidupkan/mematikan peralatan elektronik
Listing program dibawah ini berfungsi untuk mengatur Port I/O digital 11
dan Port I/O digital 12 menjadi output sebagai perintah kepada driver transistor
untuk memutus/menyambungkan catudaya listrik dengan peralatan elektronik.
Microcontroller Arduino Uno memastikan adanya string teks yang diterima oleh
Bluetooth slave dan apabila sesuai dengan kondisi yang pengguna inginkan maka
dapat dilakukan pemutusan maupun penyambungan catudaya listrik dengan
peralatan elektronik.
#define pinLed0 11
#define pinLed1 12
String voice;
void setup()
{
Serial.begin(9600);
pinMode(pinLed0, OUTPUT);
pinMode(pinLed1, OUTPUT);
}
void loop()
{
char recvChar;
while (blueToothSerial.available())
{
//check if there's any data sent from the remote bluetooth shield
delay(10);
recvChar = blueToothSerial.read();
Serial.print(recvChar);
if(recvChar == '#') break;
41
voice += recvChar;
}
if (voice.length() > 0)
{
Serial.println(voice);
if (voice == "*nyalakan lampu") digitalWrite(pinLed0, HIGH);
if (voice == "*nyalakan kipas angin") digitalWrite(pinLed1, HIGH);
if (voice == "*matikan lampu") digitalWrite(pinLed0, LOW);
if (voice == "*matikan kipas angin") digitalWrite(pinLed1, LOW);
voice = "";
}
}
3.3.4. Komunikasi data Google Server – Smartphone
Perangkat lunak ini merupakan perangkat lunak buatan sebuah perusahaan
di india. Perangkat lunak ini berjalan di smartphone android untuk pengenalan
suara dengan bantuann google voice recognition system. Dengan komunikasi via
module Bluetooth Serial dan mengirimkan suara yang telah diterjemahkan oleh
google tersebut menjadi string teks. Ketika pengguna mengatakan “Halo” ponsel
android akan menuliskan * Hello # pada layar smartphone androidnya. karakter *
dan # menunjukkan tanda untuk start bit dan stop bit. Perangkat lunak ini bisa
digunakan untuk banyak microcontroller lainnya sebagai Contoh Platform:
Arduino, ARM, PICAXE, MSP430, 8051 dan lain-lainnya.
Gambar 3.7 Perangkat Lunak AMR_Voice
Download