BAB III ANALISA DAN PERANCANGAN
3.1 Blok Diagram Blok Diagram adalah alur kerja sistem secara sederhana yang bertujuan untuk menerangkan cara kerja sistem tersebut secara garis besar berupa gambar dengan tujuan agar lebih mudah dimengerti dan dipahami. Gambar blok diagram kerja rangkaian pengendalian mobil mainan menggunakan handphone yang akan kita buat adalah sebagai berikut :
Media Komunikasi = Udara
(HP Rx, dg setting = Auto Answer)
(koneksi dg earphone)
(HP Tx) DTMF RECEIVER
MICROCONTROLLER
MOTOR DRIVER
MOTOR DC ( CCW) Gambar 3.1 Blok Diagram.
32
MOTOR DC ( CW)
33 3.1.1 Prinsip Kerja pada Blok Diagram Blok diagram diatas menjelaskan prinsip kerja yang nanti akan diintegrasikan dalam satu rangkaian yang terbagi atas 4 bagian yaitu DTMF Receiver, Mikrokontroler, Motor Driver dan 2 (dua) Motor DC. Berdasarkan Blok Diagram tersebut digambarkan bahwa alat ini bekerja setelah menerima input yaitu panggilan dari pengguna yang diterima handphone secara auto-answer yang terpasang pada rangkaian, yang dalam hal ini kita sebut dengan istilah handphone receiver.
Saat
handphone
receiver
dalam
kondisi
answer
memungkinkan untuk menerima suara tone/nada yang berasal dari tone/nada tombol handphone pengguna yang ditekan. Handphone receiver ini dihubungkan dengan DTMF Receiver melalui saluran kabel earphone. Fungsi dari DTMF Receiver adalah mengubah nada yang diterima menjadi rangkaian nada biner tertentu yang diterima oleh Mikrontroler. Selanjutnya Mikrokontroler bekerja sesuai nada biner yang diterima kemudian dikonversi menjadi kombinasi tegangan tertentu
yang diteruskan ke rangkaian Motor Driver untuk
mengerjakan 2 (dua) Motor DC secara bersamaan. Karena implementasi rangkaian tersebut selain dapat menggerakkan roda tetapi juga dibuat agar dapat diatur arah kemudinya maka digunakan 2 (dua) Motor DC yang masing-masing bergerak dengan putaran yang berbeda, yaitu terdiri dari Motor DC CW yang berputar searah jarum jam (menggerakkan roda kanan) dan Motor DC CCW berputar berlawanan arah jarum jam (menggerakkan roda kiri). Sehingga
34 Mikrokontroler melalui Motor driver selain menggerakkan Motor DC juga dapat menentukan arah kemudinya.
3.2 Perangkat Keras (Hardware) 3.2.1 Sistem Mikrokontroler ATMega 8 Sistem
Mikrokontroler
dimaksud
merupakan
rangkaian
komponen yang melengkapi kinerja mikrokontroler ATMega 8 agar dapat bekerja dengan baik. Rangkaian ini terdiri atas komponen utama yaitu Mikrokontroller dan rangkaian pendukung yang tersusun atas komponen Crystal, Electro Capacitor, saklar on/off reset, dan resistor dimana setiap komponen mempunyai fungsi masing-masing sesuai dengan bagiannya.
Gambar 3.2 Sistem Mikrokontroller ATMega 8.
35 3.2.2 Downloader Mikrokontroler ATMega 8 Mikrokontroler ATMega 8 agar dapat bekerja sendiri secara otomatis (stand alone) selain membutuhkan power supply juga perlu dilakukan pemograman terlebih dahulu melalui perangkat elektronik khusus
yaitu
Microcontroller
Downloader,
yang
berfungsi
menanamkan program melalui media kabel serial (misal : USB, RJ-45, RJ-12 dsb) ke dalam sebuah IC Mikrokontroler. Tujuan menanamkan program pada mikrokontroler adalah agar rangkaian elektronik dengan mikrokontroler
sebagai
pengendalinya
dapat
membaca
input,
memproses input tersebut dan kemudian menghasilkan output sesuai yang diinginkan. Jadi mikrokontroler bertugas layaknya sebuah ‘otak’ yang mengendalikan input, proses dan output sebuah rangkaian elektronik. Downloader Mikrokontroller untuk Mikrokontroller ATMega 8 ada banyak model sesuai dengan merk dan tipenya, karena sudah banyak perusahaan maupun industri kecil yang memproduksi dan dijual bebas. Dalam perancangan alat ini kami menggunakan downloader mikrokontroler Freeduino yang merupakan duplikasi dari downloader mikrokontroler Arduino yang cukup marak saat ini dan dapat diunduh rangkaian dan softwarenya secara gratis. Perlu disimak , bahwa pembuatan Arduino dimulai pada tahun 2005, dimana sebuah situs perusahaan komputer Olivetti di Ivrea, Italia membuat perangkat tersebut yang diklaim lebih murah dibandingkan
36 sistem yang ada pada saat itu. Dilanjutkan pada bulan Mei 2011, dimana sudah lebih dari 300.000 unit Arduino terjual. Pendiri dari Arduino itu sendiri adalah Massimo Banzi dan David Cuartielles. Awalnya mereka memberi nama proyek itu dengan sebutan Arduin dari Ivrea tetapi seturut dengan perkembangan zaman, maka nama proyek itu diubah menjadi Arduino yang berarti “teman yang kuat” atau dalam versi bahasa Inggrisnya dikenal dengan sebutan “Hardwin”. Awalnya Massimo Banzi membangun disekitar proyek Pengkabelan dari Hernando Barragan. Pengkabelan ini adalah proyek tesis Hernando di Desain Interaksi Institute Ivrea. Hal tersebut dimaksudkan untuk menjadi versi elektronik pengolahan yang digunakan di lingkungan pemrograman dan mengambil pola sintaks Processing tetapi dengan berkembangnya teknologi maka Arduino menjadi sangat popular dikalangan mahasiswa dan pelajar saat ini. Mereka mengembangkan Arduino dengan bootloader dan software yang
user friendly
sehingga menghasilkan
sebuah rangkaian
mikrokontroler yang bersifat open source yang bisa dipelajari dan dikembangkan oleh mahasiswa, pelajar, professional, pemula, dan penggemar elektronika maupun robotik di seluruh dunia. Arduino merupakan platform open source baik secara hardware dan software. Arduino terdiri dari Mikrokontroler MegaAVR seperti ATMega8,
ATMega168,
ATMega328,
ATMega1280,
dan
ATMega2560 dengan menggunakan Kristal Osilator 16 MHz, namun
37 ada beberapa tipe Arduino yang juga menggunakan Kristal Osilator 8 MHz. Setelah rangkaian ATMega-8 terisi program, agar ATmega-8 dapat berjalan secara mandiri (stand alone) membutuhkan minimal 5 VDC dan perlu dibuat rangkaian minimum system AT Mega-8 sesuai dengan datasheet sebagaimana gambar dibawah ini.
Gambar 3.3 Rangkaian minimum sistem IC ATmega-8
38 3.2.3 Rangkaian Penerima (DTMF Receiver) Perlu diketahui bahwa bahasa instruksi untuk menjalankan mesin elektronika adalah berupa kode biner yang terdiri dari bilangan “1” dan “0” yang dianalogikan sebagai perintah On dan Off, atau Ya dan Tidak, sehingga diharuskan nada/tone yang dikirim melalui sinyal handphone pengguna dapat diubah menjadi kode biner agar dapat menjadi sebuah instruksi yang akan dibaca oleh mikrokontroler. Maka perlu dibuat rangkaian Penerima DTMF (DTMF Receiver) yang berfungsi sebagai penerima sinyal DTMF selain itu fungsi
utamanya
sebagai
rangkaian
decoder
DTMF
untuk
mengkonversi sinyal DTMF yang berupa analog menjadi output data yang berbentuk digital. Secara sederhana konsep rangkaian Penerima DTMF dapat dilihat pada gambar dibawah ini :
Gambar 3.4 Rangkaian Penerima DTMF
39 Jenis IC yang digunakan adalah IC 8870 merupakan DTMF Receiver yang terintegrasikan dengan rangkaian filter band dan decoder. Rangkaian penerima DTMF tersebut dihubungkan Handphone Receiver yang terpasang melalui earphone tersambung dengan pin no.2 dan 3. Sinyal DTMF yang masuk melewati rangkain filter berupa perpaduan kapasitor dan resistor yang berperan sebagai Band Pass Filter. Kerja IC 8870 bekerja dengan catu daya 5VDC yang terpasang pada pin 18, 17 dan 16 untuk inisiasi DTMF akan bekerja, kemudian membutuhkan Kristal senilai 3,58MHz sebagai Oscillator yang berperan dalam melakukan pencacahan sinyal untuk mendukung fungsi Decoding menggunakan teknik digital counting (proses perhitungan secara digital) untuk mendeteksi dan men-decode semua 16 pasang nada DTMF kedalam bilangan biner yang terdiri dari 4 bit, seperti dalam tabel logika dibawah ini.
40
Tabel 3.1 Tabel Logika Output biner setiap tone DTMF
Output rangkaian tersebut berupa bilangan biner yang terdiri dari 4 bit dikeluarkan secara paralel melalui pin 11 s.d 14 yang akan diteruskan menuju IC Mikrokontroler.
(tersambung lewat earphone)
Rangkaian o/p biner Penerima4 bit DTMF
(Handphone Rx yang terpasang ) Gambar 3.5 Bagan alur kerja penerima DTMF
41
3.2.4 Rangkaian Pengendali Motor DC (Motor DC Driver) Motor DC tidak dapat dikendalikan secara langsung oleh Mikrokontroler, karena membutuhkan arus listrik yang besar pada Motor DC sedangkan arus keluaran pada Mikrokontroler sangat kecil. Sehingga solusi yang digunakan adalah memasang rangkaian tambahan untuk mengendalikan motor DC pada mesin beroda, yang disebut rangkaian Driver Motor DC. Pada dasarnya aplikasi yang menggunakan motor DC harus dapat mengatur kecepatan dan arah putar dari motor DC itu sendiri. Untuk dapat melakukan pengaturan kecepatan motor DC dapat menggunakan metode PWM (Pulse Width Modulation) sedangkan untuk mengatur arah putarannya dapat menggunakan rangkaian H-bridge yang tersusun dari 4 buah transistor. Seiring dengan perkembangan jaman saat ini khususnya produksi IC elektronika, sekarang telah diproduksi dan dijual secara bebas IC L293D yang merupakan rangkaian driver motor DC yang telah terintegrasi dalam sebuah chip dan jauh lebih praktis, namun tetap memiliki fungsi untuk mengatur arah putar dan mengatur kecepatan motor DC. Sebelum membahas tentang IC L293D, alangkah baiknya jika kita membahas driver motor DC menggunakan rangkaian analog terlebih dahulu.
42 Jika diinginkan sebuah motor DC yang dapat diatur kecepatannya tanpa dapat mengatur arah putarnya, maka secara sederhana kita dapat menggunakan sebuah transistor saja sebagai driver (pengendali). Kemudian untuk mengatur kecepatan putar motor DC digunakan rangkaian PWM yang dibangkitkan melalui fitur Timer pada mikrokontroler. Dibawah ini adalah gambar driver motor DC menggunakan transistor.
Gambar 3.6 Transistor untuk mengatur kecepatan Motor DC
Sedangkan jika diinginkan sebuah motor DC yang dapat diatur kecepatan atau arah putarnya maka digunakanlah rangkaian H-brigde yang tersusun dari 4 buah transistor.
43
Gambar 3.7 Rangkaian untuk mengatur arah Motor DC
Dari gambar diatas jika diinginkan motor DC berputar searah jarum jam maka harus mengaktifkan transistor1 dan transistor4 dengan cara memberikan logika high pada kaki Basis transistor tersebut. Sedangkan untuk berputar berlawanan arah jarum jam maka harus mengaktifkan transistor2 dan transistor 3 dengan cara memberikan logika high pada kaki Basis transistor tersebut. Untuk lebih jelasnya perhatikan gambar dibawah ini.
Gambar 3.8 Rangkaian untuk mengatur arah 2 (dua) SMotor DC
44
Dari gambar diatas terlihat jelas bahwa dengan mengaktifkan transistor1 dan transistor4 akan menyebabkan motor DC berputar searah jarum jam.
Dimana arus listrik akan mengalir dari power
supply melalui transistor1, lalu ke motor DC, lalu ke transistor4 dan akan berakhir di ground. Begitu juga sebaliknya untuk putaran berlawanan arah jarum jam. Selanjutnya, IC L293D adalah IC yang didesain khusus sebagai driver motor DC dan dapat dikendalikan dengan rangkaian TTL maupun mikrokontroler. Motor DC yang dikontrol dengan driver IC L293D dapat dihubungkan ke ground maupun ke sumber tegangan positif karena di dalam driver L293D system driver yang digunakan adalah totem pool. Dalam 1 unit chip IC L293D terdiri dari 4 buah driver motor DC yang berdiri sendiri sendiri dengan kemampuan mengalirkan arus 1 Ampere tiap drivernya. Sehingga dapat digunakan untuk membuat driver H-bridge untuk 2 buah motor DC. Konstruksi pin driver motor DC IC L293D adalah sebagai berikut.
45
Gambar 3.9 Konstruksi Pin pada IC L293D
Berikut ini adalah penjelasan konstruksi pin IC L293D yaitu : 1) Pin EN (Enable, EN1.2, EN3.4) berfungsi untuk mengijinkan driver menerima perintah untuk menggerakan motor DC; 2) Pin In (Input, 1A, 2A, 3A, 4A) adalah pin input sinyal kendali motor DC; 3) Pin Out (Output, 1Y, 2Y, 3Y, 4Y) adalah jalur output masingmasing driver yang dihubungkan ke motor DC; 4) Pin VCC (VCC1, VCC2) adalah jalur input tegangan sumber driver motor DC, dimana VCC1 adalah jalur input sumber tegangan rangkaian kontrol dirver dan VCC2 adalah jalur input sumber tegangan untuk motor DC yang dikendalikan. 5) Pin GND (Ground) adalah jalur yang harus dihubungkan ke ground, pin GND ini ada 4 buah yang berdekatan dan dapat dihubungkan ke sebuah pendingin kecil.
46 Sehingga didapatkan rancangan skematik rangkaian Motor DC Driver menggunakan IC L293D yang mendapatkan input dari IC Atmega 8, seperti gambar dibawah ini :
Gambar 3.10 Rangkaian IC L293D dengan IC Atmega 8
3.3 Desain Flowchart dan Listing Program Agar lebih mudah dalam membuat program yang akan ditanamkan pada Mikrokontroler agar bekerja sesuai rencana, maka penulis membuat analogi dari putaran dinamo, seperti berikut : a. Jika motor1(M1) berputar CW = ke kiri dan berputar CCW = ke kanan,; dan b. Jika
motor2(M2)
berputar
CW=
maju
dan
berputar
CCW= ke belakang Sehingga dapat dibuat flowchart programnya, yaitu sebagai berikut :
47
MULAI
BACA INPUT DARI DTMF RECEIVER
IF input = 1
M1 = CW M2 = CW
IF input = 2
M1 = diam M2 = CW
IF input = 3
M1 = CCW M2 = CW
IF input = 7
M1 = CW M2 = CCW
IF input = 8
M1 = diam M2 = CCW
IF input = 9
M1 = CCW M2 = CCW
IF input = 5
M1 = diam M2 = diam
BERHENTI
Gambar 3.11 Flowchart program mikrokontroler
48 Berdasarkan rancangan flowchart diatas dapat dibuat listing programnya yaitu sebagai berikut :
-----------------------------------------------------------------------------unsigned int k,h; void setup(void) { DDRB=0xFF; //parameter untuk mengatur PINB pada mikro sbg O/P DDRC=0xF0; //parameter untuk mengatur PINC pada mikro sbg I/P } void loop(void) { while (1) { k=~PINC; h= k & 0x0F; if(h==0x01) //tombol 1 ditekan { PORTB=0x1A; //gerak Motor2 CW dan Motor1 CW } else if(h==0x02) //tombol 2 ditekan { PORTB=0x18; //gerak Motor2 CW dan Motor1 diam } else if(h==0x03) //tombol 3 ditekan
49 { PORTB=0x19; //gerak motor2 cw dan motor1 ccw } else if(h==0x07) //tombol 7 ditekan { PORTB=0x16; //gerak motor2 ccw dan motor1 cw } else if(h==0x08) //tombol 8 ditekan { PORTB=0x14; //gerak motor2 ccw dan motor1 diam } else if(h==0x09) //tombol 9 ditekan { PORTB=0x15; //gerak motor2 ccw dan motor1 ccw } else if(h==0x00) //tombol 5 ditekan { PORTB=0x00; //gerak motor2 diam dan motor1 diam } else { } } }