BAB III ANALISIS DAN DESAIN SISTEM
III.1. Analisis Masalah Dalam perancangan dan implementasi wajah animatronik berbasis mikrokontroler ini menggunakan beberapa metode rancang bangun yang pembuatannya terdapat beberapa masalah yang harus dipecahkan. Permasalahanpermasalahan tersebut adalah perancangan mekanik wajah yang menyerupai gerakan wajah manusia asli seperti gerakan mata, alis, mulut dan lain sebagainya. Semua pergerakan menggunakan motor servo. Perangkat juga dilengkapi dengan sensor jarak untuk mendeteksi adanya objek di depan perangkat. Sumber daya tegangan berasal dari adaptor, yang membutuhkan daya yang cukup besar untuk mengerakan dan mengontrol motor servo.
III.2. Strategi Pemecahan Masalah Ada beberapa permasalahan yang terjadi dalam perancangan wajah animatronik ini, dibutuhkan solusi atau pemecahan masalah, antara lain: 1. Perancangan mekanik wajah menggunakan skala 1 : 1 dengan ukuran wajah manusia dewasa dan konstruksi wajah manusia terdiri dari mata, alis, mulut dan konstruksi leher yang dapat bergerak sedangkan konstruksi lainnya dalam keadaan statis atau tetap. Bahan yang digunakan adalah plastik yang bersifat lentur mudah ditekuk dan papan polywood yang ringan. 2. Penggunaan motor servo sebagai pengendali gerakan wajah animatronik. 36
37
3. Sumber daya yang digunakan berasal dari adaptor 12 VDC dan regulator tegangan 5 VDC. 4. Penambahan sensor jarak untuk mendeteksi objek.
III.3. Identifikasi Kebutuhan Adapun identifikasi kebutuhan dari perancangan dan implementasi wajah animatronik berbasis mikrokontroler yaitu analisis kebutuhan software dan hardware. III.3.1 Kebutuhan Perangkat Keras (Hardware) Interface yang Digunakan Dalam perancangan wajah animatronik, membutuhkan perangkat keras (hardware) interface berupa notebook / laptop yang mempunyai spesifikasi minimal yaitu Intel Core i3; Processor 2,20 GHz, Hard disk : 320 GB, RAM 2 GB, Monitor LCD 14“ serta Keyboard dan Mouse. III.3.2 Kebutuhan Desain yang Digunakan Adapun kebutuhan perangkat interface antara lain : 1. Arduino Uno. 2. Servo micro dengan metal gear. 3. Hi-torque servo. 4. 1 set mekanik wajah. 5. Sensor Jarak Ultrasonik. 6. Power supply. 7. IC Regulator 5 VDC 2 A.
38
8. Solder dan timah. 9. Bor PCB (Printed Circuit Board). 10. Papan PCB (Printed Circuit Board). 11. Komponen-komponen pendukung lainnya.
III.3.3 Kebutuhan Perangkat Lunak (Software) Yang Digunakan Adapun perangkat lunak (software) yang dibutuhkan dalam perancangan ini adalah lingkungan sistem operasi MS-Windows 7 Ultimate 32 bit. Dan dalam perancangan ini juga menggunakan aplikasi Arduino IDE sebagai kompiler program, EAGLE PCB Designer dan software Fritzing sebagai perangkat lunak untuk skematik rangkaian, desain perangkat dan PCB.
III.4. Diagram Blok Rangkaian Secara garis besar, perancangan dan implementasi wajah animatronik ini terdiri dari Arduino Uno, Sensor Jarak Ulrasonic, Motor Servo, Adaptor 12 VDC, Regulator Tegangan 5V serta komponen pendukung lainnya. Diagram blok dari perancangan dan implementasi wajah animatronik ini ditunjukkan pada gambar III.1.
39
Mekanik + Servo Alis Mata Kanan [1]
Sensor Jarak UltraSonic SRF04
Mekanik + Servo Mata Kanan [2] Mekanik + Servo Alis Mata Kiri [1] Mekanik + Servo Mata Kiri [2] Mekanik + Servo Mulut [1]
ARDUINO UNO
Mekanik + Servo Sendi Leher [2] Regulator Tegangan 5 VDC
Adaptor 12 VDC
Gambar III.1. Diagram Blok Rangkaian 1. Arduino sebagai pengendali perangkat. Arduino yang digunakan adalah Arduino Uno. 2. Sensor jarak utrasonik SRF04 sebagai inputan. Sensor jarak berfungsi untuk mendeteksi objek di depan perangkat. 3. Motor servo sebagai penggerak wajah animatronik, setiap bagian terdiri dari beberapa motor servo dan mekanik, sebagai berikut : a. Mekanik alis mata kanan terdiri dari 1 motor servo. b. Mekanik mata kanan terdiri dari 2 motor servo. c. Mekanik alis mata kiri terdiri dari 1 motor servo. d. Mekanik mata kiri terdiri dari 2 motor servo. e. Mekanik mulut terdiri dari 1 motor servo. f. Mekanik leher terdiri dari 2 motor servo. 4. Adaptor 12 VDC 5A sebagai sumber tegangan. 5. Regulator tegangan 5VDC.
40
III.5. Perancangan Perancangan dan implementasi wajah animatronik ini terdiri dari 2 bagian bagian, yaitu perancangan secara elektronik dan perancangan secara mekanik. III.5.1. Perangkat Elektronik Perancangan wajah animatronik menggunakan beberapa perangkat seperti sensor dan kontrol output. Perangkat elektronik yang digunakan sebagai berikut. III.5.1.1. Ardunio Arduino adalah kit elektronik atau papan rangkaian elektronik open source yang di dalamnya terdapat komponen utama yaitu sebuah chip mikrokontroler dengan jenis AVR dari perusahaan Atmel. Mikrokontroler itu sendiri adalah chip atau IC (integrated circuit) yang bisa diprogram menggunakan komputer. Tujuan menanamkan program pada mikrokontroler adalah agar rangkaian elektronik dapat membaca input, memproses input tersebut dan kemudian menghasilkan output sesuai yang diinginkan. Berikut adalah tabel penggunaan port input/output pada perancangan dan implementasi wajah animatronik. Tabel III.1 Konfigurasi Pin Pada Arduino Nama PIN/PORT Arduino A0
Fungsi
Keterangan
Input
Sensor Jarak SRF04 I, Data 1
A1
Output
Sensor Jarak SRF04 I, Data 2
D2
Input
Sensor Jarak SRF04 II, Data 1
D3
Output
Sensor Jarak SRF04 II, Data 2
D4
Output
Motor Servo Alis Mata Kanan
D5
Output
Motor Servo Mata Kanan 1
D6
Output
Motor Servo Mata Kanan 2
41
D7
Output
Motor Servo Alis Mata Kiri
D8
Output
Motor Servo Mata Kiri 1
D9
Output
Motor Servo Mata Kiri 2
D10
Output
Motor Servo Mulut
D11
Output
Motor Servo Leher 1
D12
Output
Motor Servo Leher 2
D13
Output
Buzzer
Berikut adalah gambar dari skematik arduino uno sebagai berikut :
Gambar III.2. Skematik Rangkaian Arduino Uno III.5.1.2. Perancangan Sensor Jarak SRF04 Sensor Jarak Ultrasonik merupakan sensor yang digunakan untuk mengukur jarak sebuah benda dengan memanfaatkan sinyal suara ultrasonik. Sensor ini menghasilkan gelombang suara pada frekuensi tinggi yang kemudian
42
dipancarkan oleh bagian emitter. Pantulan gelombang suara (echo) yang mengenai benda di depannya akan ditangkap oleh bagian receiver. Rangkaian sensor jarak SRF04 yang terhubung pada pin arduino dapat dilihat pada gambar III.3. berikut:
Gambar III.3. Perancangan Rangkaian Flex Sensor Pada Arduino
Pada gambar III.3, sensor jarak SRF04 memiliki 2 kaki data, salah satu kaki dihubungkan ke pin D2 dan D3 sebagai data. Kaki VCC sensor jarak dihubungkan ke VCC. Kaki GND sensor jarak dihubungkan ke Gnd (Ground) Arduino. Kaki data sensor jarak SRF04 menggunakan pin A0 untuk sensor jarak 1 dan pin D2 untuk sensor jarak 2 pada arduino sebagai data input dan pin A1 untuk sensor jarak 1 dan pin D3 untuk sensor jarak 2 pada arduino sebagai data ouput. III.5.1.3. Perancangan Motor Servo Servo motor dilengkapi dengan motor DC untuk mengendalikan posisi sebuah robot. Rotor motor dapat diputar/diposisikan hingga 180 derajat.. Motor tersebut harus dapat menangani perubahan yang cepat pada posisi, kecepatan dan percepatan, serta harus mampu menangani intermittent torque.
43
Servo mempunyai 3 kabel, yaitu Vcc, Ground dan PW input. Tidak seperti PWM pada DC motor, input sinyal untuk servo tidak digunakan mengatur kecepatan, tetapi digunakan untuk mengatur posisi dari putaran servo. Sinyal PWM yang digunakan untuk servo mempunyai frekuensi 50 Hz sehigga pulsa dibuat setiap 20ms. Pada gambar III.4, kaki data motor servo (kuning) dihubungkan ke pin arduino sebagai data ouput. Kaki VCC motor servo (merah) dihubungkan ke VCC arduino dan kaki GND motor servo (hitam) dihubungkan ke Gnd (Ground). Kaki data motor servo yang digunakan sebagai data ouput pada arduino adalah pin D4 untuk alis mata kanan, pin D5 dan D6 untuk mata kanan, pin D7 untuk alis mata kiri, pin D8 dan D9 untuk mata kiri, pin D10 untuk mulut dan pin D11 dan D12 untuk mekanik leher. Total motor servo yang digunakan sebanyak 9 unit.
Gambar III.4. Perancangan Rangkaian Motor Servo Pada Arduino
44
III.5.1.4. Perancangan Elektronik Keseluruhan Setelah bagian – bagian pada perancangan elektronik telah dilakukan, tahap berikutnya adalah menggabungan setiap bagian yaitu perancangan motor servo dan perancangan sensor jarak. Berikut adalah gambar keseluruhan dari perancangan elektronik.
Gambar III.5. Perancangan Elektronik Keseluruhan
III.5.2. Perangkat Mekanik Perancangan mekanik dari wajah animatronik ini terdiri dari desain mekanik wajah dan mekanik leher. Dimensi mekanik wajah yang digunakan menyerupai dimensi wajah manusia dewasa. Bahan yang digunakan adalah polywood 3mm dan plastik yang mudah dibentuk seperti mata menggunakan bahan bola pingpong. Dimensi perangkat dengan panjang sebesar 30 cm, lebar
45
sebesar 25 cm dan tinggi sebesar 35 cm. Berikut adalah gambar dari perancangan mekanik wajah seperti di bawah ini : L=25 cm
P=30 cm
Alis Kiri
Mata Kiri
Alis Kanan
Mata Kanan Mulut
T=35 cm SRF04 -1
SRF04 -2
Gambar III.6. Perancangan Mekanik Wajah Animatronik
III.6. Flowchart Agar dapat melihat struktur jalannya program maka dibuat flowchart (diagram alur). Flowchart digunakan sebagai dasar acuan dalam membuat program. Struktur program akan lebih mudah dibuat atau didesain. Selain itu juga jika terdapat kesalahan akan lebih mudah untuk mendeteksi letak kesalahannya serta untuk lebih memudahkan dalam menambahkan instruksi-instruksi baru pada program jika nantinya terjadi pengembangan pada struktur programnya. Berikut adalah flowchart dari perancangan dan implementasi wajah animatronik :
46
START
Inisialisasi
Perangkat = ON
· · · ·
· · ·
Mekanik Servo Mata Posisi Netral Mekanik Servo Alis Mata Posisi Netral Mekanik Servo Mulut Posisi Netral Mekanik Servo Leher Posisi Netral
Baca Data Sensor Jarak SRF04 Kanan Baca Data Sensor Jarak SRF04 Kiri Kirim Data Sensor Pada Arduino
SRF04 Kanan >= 40 cm And SRF04 Kanan <= 100 cm?
YA
· ·
Gerakan Leher Ke Kanan Gerakan Wajah (Mata, Alis, Mulut)
YA
· ·
Gerakan Leher Ke Kiri Gerakan Wajah (Mata, Alis, Mulut)
TIDAK
SRF04 Kiri >= 40 cm And SRF04 Kiri <= 100 cm? TIDAK · ·
Gerakan Leher Pada Posisi Netral Gerakan Wajah (Mata, Alis, Mulut) Secara Random
FINISH
Gambar III.7. Flowchart Perancangan
Penjelasan : 1. Start. 2. Inisialisasi Perangkat, ini dimaksudkan apakah perangkat sudah terpasang dengan benar sesuai dengan skematik rangkaian.
47
3. Hidupkan
perangkat,
dengan
memberikan
tegangan
pada
rangkaian
pengendali, sensor dan motor servo. 4. Perangkat akan berada pada posisi normal, yaitu semua servo penggerakan dalam posisi netral (mimik wajah datar). 5. Sensor jarak SRF04 mengirimkan data ke arduino untuk mendeteksi objek bergerak yang ada pada sekitar perangkat berdasarkan data yang diterima. 6. Data yang diterima diterima akan dikondisikan sesuai dengan posisi sensor SRF04 dan untuk mengeksekusi program dengan kondisi ketika sensor jarak SRF04 mendeteksi objek dengan jarak 40 cm sampai dengan 100 cm. 7. Jika data yang diterima adalah data dari sensor SRF04 bagian kanan, maka arduino akan menggerakan wajah berupa gerakan alis, mata, mulut serta leher yang bergerak ke arah kanan. 8. Jika data yang diterima adalah data dari sensor SRF04 bagian kiri, maka arduino akan menggerakan wajah berupa gerakan alis, mata, mulut serta leher yang bergerak ke arah kiri. 9. Jika tidak ada objek yang mendekat, maka wajah animatronik akan bergerak ke posisi normal dan mengerakan wajah secara random. 10. Perangkat akan terus membaca data sensor jarak dan menggerakan mekanik wajah dalam keadaan random. 11. Perangkat berhenti digunakan atau sumber daya tegangan dihentikan. 12. Finish