Laporan Proyek Arduino Fix [PDF]

  • 0 0 0
  • Suka dengan makalah ini dan mengunduhnya? Anda bisa menerbitkan file PDF Anda sendiri secara online secara gratis dalam beberapa menit saja! Sign Up
File loading please wait...
Citation preview

Laporan Praktikum Proyek Arduino Model Pengontrol Tirai dan Lampu dasar panggung dengan suara menggunakan Arduino UNO R3



Disusun oleh: Kelompok EK-3D / 02 - Ady Septian Nugroho NIM - Lailatul Septiani NIM - Muhammad Iqbal K.U NIM



3.32.14.3.02 3.32.14.3.12 3.32.14.3.15



Dosen: Dr. Samuel BETA; Ing-Tech.,M.T.



PROGRAM STUDI TEKNIK ELEKTRONIKA JURUSAN TEKNIK ELEKTRO POLITEKNIK NEGERI SEMARANG 2016



Lab. Mikrokontroler II



1



Proyek Arduino Model Pengontrol Tirai dan Lampu dasar panggung dengan suara menggunakan Arduino UNO R3 1. Tujuan Tujuan dari percobaan ini praktikan dapat : 



Memahami cara kerja sistem pengendali luaran digital secara keseluruhan dan mampu membuat sistem untuk menghasilkan luaran digital.







Memahami cara kerja perangkat keras (rangkaian) pengendali luaran digital dan mampu







Memahami cara kerja perangkat lunak (program Arduino) dan mampu membuat program untuk rangkaian luaran.







Memahami cara kerja sistem tunda pada perangkat lunak dan mampu membuat program tunda



2. Dasar Teori Driver Motor Stepper Rangkaian driver motor stepper merupakan rangkaian “open collector”, dimana output rangkaian ini terhubung dengan ground untuk mencatu lilitan-lilitan motor stepper. Arus keluaran mikrokontroler tidak dapat menggerakkan motor stepper. Maka diperlukan driver untuk mencatub arus motor stepper. Dengan menggunakan chip IC ULN2003 sebagai stepper motor driver. ULN2003 adalah sebuah IC yang berupa darlington array sebanyak 7 buah. Berikut ini adalah gambar IC ULN 2003. ULN2003 mempunyai arus keluaran sampai 500 mA. Pada saat ketujuh driver tersebut ON, IC ini dapat mencatu daya sampai 230 W (350 mA x 95 V). ULN2003 mempunyai resistor input serial yang dapat dipilih untuk operasi TTL atau CMOS 5 V.



Gambar 2.3 Pengendali Motor Langkah (Stepper Motor)



Proyek Arduino



Lab. Mikrokontroler II



2



Step



A



B



C



D



1



1



0



0



0



2



0



1



0



0



3



0



0



1



0



4



0



0



0



1



Tabel 2.1 Pengendali Motor Langkah (Stepper Motor) Motor Stepper Motor stepper adalah perangkat elektromekanis yang bekerja dengan mengubah pulsa elektronis menjadi gerakan mekanis diskrit. Motor stepper bergerak berdasarkan urutan pulsa yang diberikan kepada motor. Karena itu, untuk menggerakkan motor stepper diperlukan pengendali motor stepper yang membangkitkan pulsa-pulsa periodik. Penggunaan motor stepper memiliki beberapa keunggulan dibandingkan dengan penggunaan motor DC biasa. Keunggulannya antara lain adalah : 1. Sudut rotasi motor proporsional dengan pulsa masukan sehingga lebih mudah diatur. 2. Motor dapat langsung memberikan torsi penuh pada saat mulai bergerak. 3. Posisi dan pergerakan repetisinya dapat ditentukan secara presisi. 4. Memiliki respon yang sangat baik terhadap mulai, stop dan berbalik (perputaran). 5. Sangat realibel karena tidak adanya sikat yang bersentuhan dengan rotor seperti pada motor DC. 6. Dapat menghasilkan perputaran yang lambat sehingga beban dapat dikopel langsung ke porosnya. 7. Frekuensi perputaran dapat ditentukan secara bebas dan mudah pada range yang luas.



Gambar 2.4 Bentuk fisik Motor Stepper 28BYJ-48 Spesifikasi: 



Model No: 28BYJ-48.







Unipolar Stepper with 0.1" Spaced 5-pin Cable Connector. Proyek Arduino



Lab. Mikrokontroler II



3







8 Steps Per Revolution.







1/64 Geared Down Reduction.







5V DC Suggested Operation.







Weight: 37 g.







Dimensions: 28mm diameter, 20mm tall not including 9mm shaft with 5mm diameter.







9" / 23 cm long cable.







Holding Torque: 150 gram-force*cm, 15 N*mm/ 2 oz-force*in.







Shaft: 5mm diameter flattened.



LED (Light Emitting Dioda) LED (Light Emitting Dioda) adalah dioda yang dapat memancarkan cahaya pada saat mendapat arus bias maju (forward bias). LED (Light Emitting Dioda) dapat memancarkan cahaya karena menggunakan dopping galium, arsenic dan phosporus. Jenis doping yang berbeda diata dapat menhasilkan cahaya dengan warna yang berbeda. LED (Light Emitting Dioda) merupakann salah satu jenis dioda, sehingga hanya akan mengalirkan arus listrik satu arah saja. LED akan memancarkan cahaya apabil diberikan tegangan listrik dengan konfigurasi forward bias. Berbeda dengan dioda pada umumnya, kemampuan mengalirkan arus pada LED (Light Emitting Dioda) cukup rendah yaitu maksimal 20 mA. Apabila LED (Light Emitting Dioda) dialiri arus lebih besar dari 20 mA maka LED akan rusak, sehingga pada rangkaian LED dipasang sebuah resistor sebgai pembatas arus. Simbol dan bentuk fisik dari LED (Light Emitting Dioda) dapat dilihat pada gambar berikut :



Gambar 2.5 Simbol dan bentuk fisik LED Arduino Uno Arduino Uno adalah papan mikrokontroler berbasis ATmega328 yang memiliki 14 pin digital input/output (di mana 6 pin dapat digunakan sebagai output PWM), 6 input analog, clock speed 16 MHZ, koneksi USB, jack listrik, header ICSP, dan tornbol reset. Board ini menggunakan daya yang terhubung ke komputer dengan kabel USB atau daya eksternal dengan adaptor AC-DC atau baterai. Spesifikasi Arduino Uno : Mikrokontroler ATmega328 Proyek Arduino



Lab. Mikrokontroler II



4



Catu Daya 5V Teganan Input (rekomendasi) 7-12V Teganan Input (batasan) 6-20V Pin I/O Digital 14 (of which 6 provide PWM output) Pin Input Analog 6 Arus DC per Pin I/O 40 mA Arus DC per Pin I/O untuk PIN 3.3V 50 mA Flash Memory 32 KB (ATmega328) dimana 0.5 KB digunakan oleh bootloader SRAM 2 KB (ATmega328) EEPROM 1 KB (ATmega328) Clock Speed 16 MHz Mikrokontroler



membuat



program



untuk



mengendalikan



berbagai komponen



elektronika. Program yang kita buat dengan bahasa pemrograman didownload ke mikrokontroler, yang kemudian mikrokontroler akan bekerja sesua dengan program yang kita buat. Dengan Arduino Uno itu sendiri lebih memudahan pernggunanya untuk membuat berbagai hal yang berkaitan dengan mikrokontroler, karena didalamnya sudah tersedia yang dibutuhkan oleh mikrokontroler. Contohnya yang dapat dibuat dengan Arduino antara lain, untuk membuat robot, mengontrol motor stepper, pengatur suhu, mesin gate turnstile, display LCD, dan masih banyak lagi contoh yang lainnya.



Gambar 8. Arduino UNO Bluetooth HC-05 Bluetooth Module HC-05 merupakan module komunikasi nirkabel pada frekuensi 2.4GHz dengan pilihan koneksi bisa sebagai slave, ataupun sebagai master. Sangat mudah digunakan dengan mikrokontroler untuk membuat aplikasi wireless. Interface yang digunakan adalah serial RXD, TXD, VCC dan GND. Built in LED sebagai indikator koneksi bluetooth.



Tegangan input antara 3.6 ~ 6V, jangan menghubungkan dengan sumber daya lebih dari 7V. Proyek Arduino



Lab. Mikrokontroler II



5



Arus saat unpaired sekitar 30mA, dan saat paired (terhubung) sebesar 10mA. 4 pin interface 3.3V dapat langsung dihubungkan ke berbagai macam mikrokontroler (khusus Arduino, 8051, 8535, AVR, PIC, ARM, MSP430, etc.). Jarak efektif jangkauan sebesar 10 meter, meskipun dapat mencapai lebih dari 10 meter, namun kualitas koneksi makin berkurang. Bluetooth Specification v2.0+EDR Frequency: 2.4GHz ISM band Modulation: GFSK(Gaussian Frequency Shift Keying) Emission power: 4dBm, Class 2 Sensitivity: -84dBm at 0.1% BER Speed: Asynchronous: 2.1Mbps(Max) / 160 kbps, Synchronous: 1Mbps/1Mbps Security: Authentication and encryption Profiles: Bluetooth serial port Power supply: +3.3VDC 50Ma Working temperature: -20 ~ +75 Centigrade Dimension: 3.57cm x 1.52cm



3. Praktikum 3.1. Model Pengontrol Tirai dan Lampu dasar panggung dengan Suara menggunakan Arduino UNO R3 3.1.1. Permasalahan Membuat progam untuk mengontrol 1 motor Stepper dan LED berdasarkan masukan Suara ( Bluetooth ). Masukan



: Bluetooth



Proses



: Arduino UNO R3



Keluaran



: Driver Motor Stepper & Motor Stepper, LED



Proyek Arduino



Lab. Mikrokontroler II



6



Gambar rangkaian :



3.1.2. Penyelesaian 3.1.2.1. Diagram Alir



3.1.2.2. Program /* Model Pengontrol tirai dan lampu dasar panggung dengan Keypad menggunakan MIKROKONTROLER ARM NUC120 Ady Septian N Lailatul S M. Iqbal K.U ================================================================= ----------------------------------------------------------------komponen : -bluetooth -led -motor stepper -resistor ----------------------------------------------------------------Proyek Arduino



Lab. Mikrokontroler II int M1 = 2, stepper 1 M2 = 3, stepper 2 M3 = 4, stepper 3 M4 = 5, stepper 4 ledPin1 = 6, led hijau ledPin2 = 7, led merah ledPin3 = 8, led merah ledPin4 = 9, led biru ledPin5 = 10, led biru ledPin6 = 11, led hijau ledPin7 = 12, led hijau ledPin8 = 13, led hijau var = 0, sebagai bilangan bulat delayTime = 5; delay motor stepper char suatu variabel perintah; "perintah" sebagai suatu variabel



7 //Inisialisasi pin untuk //Inisialisasi pin untuk //Inisialisasi pin untuk //Inisialisasi pin untuk //Inisialisasi pin untuk //Inisialisasi pin untuk //Inisialisasi pin untuk //Inisialisasi pin untuk //Inisialisasi pin untuk //Inisialisasi pin untuk //Inisialisasi pin untuk //Inisialisasi pin untuk //Untuk variabel "var" //Inisialisasi untuk waktu //Untuk mendeklarasikan //Untuk mendeklarasikan



void setup() { //Mendeklarasikan M1-M4, ledPin1-ledPin8 sebagai OUTPUT pinMode(M1, OUTPUT); pinMode(M2, OUTPUT); pinMode(M3, OUTPUT); pinMode(M4, OUTPUT); pinMode(ledPin1, OUTPUT); pinMode(ledPin2, OUTPUT); pinMode(ledPin3, OUTPUT); pinMode(ledPin4, OUTPUT); pinMode(ledPin5, OUTPUT); pinMode(ledPin6, OUTPUT); pinMode(ledPin7, OUTPUT); pinMode(ledPin8, OUTPUT); Serial.begin(9600); //Memulai kominakasi serial dengan boud rate 9600 } void loop() { if(Serial.available() > 0) { perintah = Serial.read(); masuk dari komunikasi serial Serial.println(perintah); }



//cek apakah ada data yang



if(perintah == "buka") while (var< 1280) { digitalWrite(M1, HIGH); digitalWrite(M2, LOW); Proyek Arduino



Lab. Mikrokontroler II



8



digitalWrite(M3, LOW); digitalWrite(M4, LOW); delay(delayTime); digitalWrite(M1, LOW); digitalWrite(M2, HIGH); digitalWrite(M3, LOW); digitalWrite(M4, LOW); delay(delayTime); digitalWrite(M1, LOW); digitalWrite(M2, LOW); digitalWrite(M3, HIGH); digitalWrite(M4, LOW); delay(delayTime); digitalWrite(M1, LOW); digitalWrite(M2, LOW); digitalWrite(M3, LOW); digitalWrite(M4, HIGH); delay(delayTime); var ++; } else if(perintah == "tutup") while (var< 1280) { digitalWrite(M4, HIGH); digitalWrite(M3, LOW); digitalWrite(M2, LOW); digitalWrite(M1, LOW); delay(delayTime); digitalWrite(M4, LOW); digitalWrite(M3, HIGH); digitalWrite(M2, LOW); digitalWrite(M1, LOW); delay(delayTime); digitalWrite(M4, LOW); digitalWrite(M3, LOW); digitalWrite(M2, HIGH); digitalWrite(M1, LOW); delay(delayTime); digitalWrite(M4, LOW); digitalWrite(M3, LOW); digitalWrite(M2, LOW); digitalWrite(M1, HIGH); delay(delayTime); var ++; } else if(perintah == '1') { digitalWrite(6, HIGH); digitalWrite(7, HIGH); digitalWrite(8, HIGH); digitalWrite(9, HIGH); digitalWrite(10, HIGH); digitalWrite(11, HIGH); digitalWrite(12, HIGH); digitalWrite(13, HIGH); } else if(perintah == '2') { digitalWrite(11, LOW); digitalWrite(12, LOW); digitalWrite(13, LOW); }



Proyek Arduino



Lab. Mikrokontroler II



9



else if(perintah == '3') { digitalWrite(11, HIGH); } else if(perintah == '4') { digitalWrite(9, LOW); digitalWrite(10, LOW); digitalWrite(11, LOW); } else if(perintah == '5') { digitalWrite(7, LOW); digitalWrite(8, LOW); } else if(perintah == '6') { digitalWrite(6, LOW); digitalWrite(11, HIGH); digitalWrite(12, HIGH); digitalWrite(13, HIGH); } else if(perintah == '7') { digitalWrite(11, LOW); digitalWrite(12, LOW); digitalWrite(13, LOW); } else if(perintah == '8') while (var< 5){ digitalWrite(10, HIGH); delay(100); digitalWrite(10, LOW); digitalWrite(7, HIGH); delay(100); digitalWrite(7, LOW); digitalWrite(6, HIGH); delay(100); digitalWrite(6, LOW); digitalWrite(8, HIGH); delay(100); digitalWrite(8, LOW); digitalWrite(9, HIGH); delay(100); digitalWrite(9, LOW); digitalWrite(12, HIGH); delay(100); digitalWrite(12, LOW); digitalWrite(11, HIGH); delay(100); digitalWrite(11, LOW); digitalWrite(13, HIGH); delay(100); digitalWrite(13, LOW); var++; } else if(perintah == '9') { digitalWrite(6, LOW); digitalWrite(7, LOW); digitalWrite(8, LOW); digitalWrite(9, LOW); digitalWrite(10, LOW); Proyek Arduino



Lab. Mikrokontroler II



10



digitalWrite(11, LOW); digitalWrite(12, LOW); digitalWrite(13, LOW); } var = 0; }



3.1.2.3 Hasil Percobaan Setelah melaksanakan proses pengerjaan alat, dihasilkan dua buah kotak untuk menjalankan alat ini. Kotak yang pertama adalah digunakan sebagai wadah berbagai rangkaian-rangkaian elektronika seperti driver motor stepper serta tempat untuk meletakan mikrokontroler Arduino UNO R3.



Gambar 3.1 Kotak Pengendali / rangkaian elektronika



Kotak yang kedua adalah sebagai model tirai pada sebuah panggung yang telah dilengkapi dengan alat pembuka tirai panggung menggunakan motor stepper. Selain tirai juga terdapat model lampu dasar panggung menggunakan LED yang telah dipasang di titik-titik tertentu sebagai dasar pencahayaan pada sebuah panggung.



Proyek Arduino



Lab. Mikrokontroler II



11



Gambar 3.2 Model Tirai dan Lampu Dasar Panggung



Setelah semua rangkaian yang ada pada gambar 3.1 dihubungkan dengan model panggung gambar 3.2, selanjutnya program pengontrol tirai dan lampu dasar panggung kita masukan melalui mikrokontroller Arduino UNO R3. Setelah semua siap, maka Model Pengontrol Tirai dan Lampu Dasar Panggung siap dijalankan. Berikut adalah gambar hasil model pengontrol tirai dan lampu dasar panggung yang telah dijalankan : 1. Hasil Bluetooth menginisialisasi suara “ buka “ maka tirai akan membuka.



2. Hasil Bluetooth menginisialisasi suara “ Tutup “ maka tirai akan menutup.



Proyek Arduino



Lab. Mikrokontroler II



3.



1.



Hasil Bluetooth menginisialisasi suara “ satu “ maka lampu tampil variasi 1.



2.



Hasil Bluetooth menginisialisasi suara “ dua “ maka tampil lampu variasi 2.



12



Hasil Bluetooth menginisialisasi suara “ tiga “tampil lampu variasi 3.



Proyek Arduino



Lab. Mikrokontroler II



6.



13



4.



Hasil Bluetooth menginisialisasi suara “ empat “ maka tirai akan membuka tampil lampu variasi 4.



5.



Hasil Bluetooth menginisialisasi suara “ lima “ maka tampil lampu variasi 5.



Hasil Bluetooth menginisialisasi suara “ enam “tampil lampu variasi 6.



Proyek Arduino



Lab. Mikrokontroler II



7.



Hasil Bluetooth menginisialisasi suara “ tujuh “tampil lampu variasi 7.



8.



Hasil Bluetooth menginisialisasi suara “ delapan “ semua lampu akan tampil variasi 8.



9.



14



Hasil Bluetooth menginisialisasi suara “ sembilan “ semua lampu akan mati.



Proyek Arduino



Lab. Mikrokontroler II



15



3.1.3. Langkah Kerja Untuk mendapatkan hasil percobaan ini, langkah percobaan yang dilakukan adalah sebagai berikut: 1. Menyiapkan alat dan bahan yang akan digunakan 2. Membuat rangkaian-rangkaian elektronika yang diperlukan dalam model ini. Dimulai dari proses pembuatan layout pada proteus, pencetakan layout pada PCB, hinga pemasangan komponen. 3. Mendesain dan membuat kotak sebagai wadah rangkaian elektronika yang akan dihubungkan dengan model nantinya. Dibutuhkan desain rangkaian untuk bagian dalam maupun bagian luar. 4.



Menggabungkan semua rangkaian elektronika yang telah dibuat sebelumnya dengan memasangkannya didalam kotak. Lalu dihubungkan ke pin-pin rangkaian didalam kotak yang terhubung dengan pin-pin diluar kotak.



5. Mendesain dan membuat kotak sebagai model pengontrol tirai dan lampu dasar panggung. 6. Pasangkan komponen elektronika sebagai pengontrol tirai yaitu berupa motor stepper yang dihubungkan dengan tirai yang didesain sedemikian rupa sehingga terlihat seperti miniature panggung yang sebenarnya. Lalu pasangkan komponen lampu dasar panggung berupa LED dan tempatkan pada titik-titik tertentu seperti di bagian depan, samping, tengah, belakang, pojok, dan atas panggung. 7. Menghubungkan kotak 1 sebagai driver penggerak kotak 2 melalui pin-pin bagian luar kotak 1 yang telah terhubung dengan pin-pin rangkaian bagian dalam dengan menggunakan kabel jumper. 8. Masukan program pada mikrokontroller Arduino UNO R3. 9. Model pengontrol tirai dan lampu dasar panggung siap untuk dijalankan.



3.1.4. Pembahasan Model pengontrol tirai dan lampu dasar panggun ini adalah sebuah miniatur atau alat peraga yang digunakan untuk mensimulasikan proses mebukaan dan menutup tirai pada suatu panggung. Selain itu dalam suatu acara ataupun pertunjukan disebuah panggung biasanya juga memiliki tema yang berbeda-beda. Maka dari itu model ini juga diatur untuk dapat mengatur pencahayaan dasar sebuah panggung agar sesuai dengan tema yang diinginkan. Pada model ini kita menggunakan komponen elektronika sebagai masukan berupa suara yang Proyek Arduino



Lab. Mikrokontroler II



16



di inisialisasi melalui bluetooth. Diharapkan dengan menggunakan suara dapat memudahkan operator panggung mengatur proses membuka dan menutup panggung serta mengatur tema dasar panggung sesuai dengan keinginan. Berikut adalah program untuk Bluetooth : EDIT PROGRAM INI YA BAL ……. while(1) { _keypad = baca_key(); if(last_keypad != _keypad){ //pilih jika



last_keypad



!=/last_keypad = last_keypad = _keypad; if(_keypad==1){ //pilih jika _keypad==1 for(m=0; m