modul prak. robotika

49
Disusun Oleh : ADRIN THAMRIN, S. Kom SEKOLAH TINGGI MANAJEMEN INFORMATIKA DAN KOMPUTER STMIK ADHI GUNA PALU NAMA : ILHAM NIM : 5520109181 JURUSAN : TEKNIK INFORMATIKA

Upload: zchabar-jhie

Post on 01-Dec-2015

336 views

Category:

Documents


7 download

TRANSCRIPT

Page 1: Modul Prak. Robotika

Disusun Oleh :

ADRIN THAMRIN, S. Kom

SEKOLAH TINGGI MANAJEMEN INFORMATIKA DAN KOMPUTERSTMIK ADHI GUNA PALU

TAHUN 2011-2012

NAMA : ILHAM

NIM : 5520109181

JURUSAN : TEKNIK INFORMATIKA

Page 2: Modul Prak. Robotika

Kata pengantar

Assalamu alaikum Warahmatullahi Wabarakatu….

Selayaknya dan sepatutnyalah sebagai mahluk ciptaan Tuhan yang senantiasa dan setiap saat menikmati segala bentuk Nik’matNya untuk memanjatkan puji syukur atas segala karuniaNya. Salawat dan salam kepada baginda Rasulullah S.A.W sebagai sosok yang selalu memberikan pencerahan dalam mengarungi hidup untuk sebuah misi kemanusian yang sejati lagi hakiki.

Sebagai insan yang tak luput dari kesalahan dan kekhilafan, penulis selalu mencari dan terbuka dalam segala hal khususnya dalam penggunaan modul praktikum ini yang apabila didalam penggunaanya terdapat kekeliruan yang menyebabkan kesalahan dalam pengaplikasiannya. Untuk itu tentunya umpan balik dari pengguna modul ini daharapkan dapat menyampaikan kekeliruan yang terdapat didalamnya.

Terlepas dari hal diatas dan berangkat dari keinginan yang besar akan upaya membangkitkan minat dan keingintahuan mahasiswa secara umum tentang keilmuan robotika dan mahasiswa STMIK ADHI GUNA Palu khususnya, maka dengan ini penulis menyusun modul praktikum robotika. Dengan modul ini kelak diharapkan dapat memperjelas dan memberi kemudahan mahasiswa yang mengambil mata kuliah “robotika” dalam memahami keilmuan robotika.

Akhirnya, dengan penuh harapan yang besar dalam penggunaan modul praktikum ini benar-benar dimanfaatkan dengan baik untuk kepentingan pengembangan keilmuan robotika demi memajukan mahasiswa STMIK ADHI GUNA Palu. Besar pula harapan dalam diri penulis untuk diberikan saran dan kritik dalam pengembangan modul praktikum yang lebih baik lagi.

Paling penting dari segalanya bahwa manusia hanyalah senantiasa berusaha untuk menjadi yang terbaik tetapi Yang Kuasalah yang memberikan penilaian dari kebaikan yang dilakukan oleh manusia maka senantiasalah berbuat baik dalam menjadi yang terbaik. Amiinnn…

Palu, Oktober 2011

ttd

Penyusun

PROSES DAN TUJUAN PRAKTIKUM ROBOTIKA

Page 3: Modul Prak. Robotika

1. Setiap praktikum diberikan penjelasan mengenai Alat yang akan di praktikkan

2. Setiap Alat yang digunakan dilengkapi penjelasan atau datasheet alat

3. Pada setiap pertemuan praktikum diberikan penjelasan tujuan praktik

4. Pada setiap praktikum diharapkan mahasiswa dapat memahami perangkat yang

digunakan

5. Pada Evaluasi Akhir Praktikum mahasiswa diharapkan dapat mengintegrasikan antara

satu perangkat sensor dengan aktuator dalam satu bentuk robot sederhana

Page 4: Modul Prak. Robotika

PORT yang dipilih

Hubungan PORT dengan PIN LCD

PRAKTIKUM 1Penampil Liquid Cristal Display (LCD)

Liquid Cristal Display (LCD) adalah perangkat yang digunakan untuk menampilkan informasi dalam bentuk karakter (angka dan huruf) baik yang merupakan data informasi maupun keterangan tertentu. Pada praktikum kali ini, LCD yang akan digunakan adalah LCD type HD 8870 dengan banyaknya karakter yang dapat ditampilkan sebanyak jumlah baris dan kolom (4 x 16). Berikut gambar Lcd dan keterangan pin-pinnya diperlihatkan pada gambar dibawah ini.

Gambar 1. LCD 4x16

Untuk menampilkan karakter pada LCD diatas dapat dilakukan pemrograman pada tools yang tersedia dengan melakukan setting pada bagian window Codevision AVR dibawah ini. Pilih Tools – CodeWizzardAVR (shift+f2) kemudian pada window CodewizardAVR pilih tab LCD.

Gambar Setting PORT LCD

Setelah melakukan pengaturan seperti pada langkah-langkah diatas, maka selanjutnya menuliskan listing program utama untuk menampilkan kata “BELAJAR” dan “ ROBOTIKA” pada LCD sesuai dengan posisi koordinat yang telah ditentukan dalam listing program.

Page 5: Modul Prak. Robotika

Gambar Listing program LCD

Ada beberapa fungsi yang terdapat dalam file header (lcd.h) yang dapat digunakan untuk mendeklarasikan dalam program sesuai dengan kebutuhan program yang akan dibuat.

Page 6: Modul Prak. Robotika

Uraian dan Kesimpulan :

………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………….………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………….

………………………………………………………………………………………………………………………………………………….

Page 7: Modul Prak. Robotika

PRAKTIKUM 2KONTROL MOTOR DC

Salah satu actuator yang lazim digunakan dalam praktikum robotika adalah Motor DC (DC Magnet Permanen). Motor DC merupakan alat penggerak yang terhubung dengan bagian mekanik robot yang menghasilkan gerakan secara rotasi. Dalam menghasilkan gerakan rotasi (CW – CCW), Motor DC harus terkontrol oleh sebuah kontroler. Berikut gambar Motor DC dibawah ini.

Gambar Motor DC

Motor DC yang akan dikontrol dalam sebuah system robotik harus memiliki driver motor sebagai penerjemah data-data yang dikirim kontroler (apakah bergerak CW atau CCW). Dalam praktikum Motor DC, digunakan driver Motor Dual H – Bridge, dengan contoh pada gambar dibawah ini.

Gambar Driver Dual H – Bridge

Page 8: Modul Prak. Robotika

Bagian Konector Power dan Motor

Langkah-langkah penghubungan driver H – Bridge dengan Motor DC1. Hubungkan modul H-Bridge dengan beban motor seperti pada gambar diatas.2. Hubungkan sumber catu daya untuk input (VCC) dan catu daya untuk beban (V Mot).

Gambar Keterangan Conector pada Driver H – Bridge

Table Hubungan Konektor Power dan Motor

Page 9: Modul Prak. Robotika

PIN Header Driver H - Bridge

3. Lakukan pengujian dengan memberikan logika High (+5V) atau Low (0V) pada bagian input (M1IN1, M1IN2, M1EN, M2IN1, M2IN2, dan M2EN) sesuai dengan tabel kebenaran pada gambar dibawah.

Gambar Pin Interface Header Driver H – Bridge

Table Pin Interface Driver H - Bridge

4. Bagian output (M1OUT1, M1OUT2, M2OUT1, dan M2OUT2) akan menghasilkan tegangan keluaran dan motor akan bekerja sesuai dengan fungsi-fungsi yang tercantum tabel kebenaran dibawah ini.

Table kebenaran Driver H - Bridge

Page 10: Modul Prak. Robotika

Setelah selesai melakukan penguhubungan antara Modul driver H – bridge dengan Motor DC, maka selanjutnya dalam menggerakan Motor DC (CW – CCW) haruslah terhubung dengan mikrokontroler. Pada bagian berikut ini mikrokontroler harus terisi program yang dapat mengirim data sesuai dengan table kebenaran diatas. Berikut langkah-langkah program yang dibuat dalam menggerakan Motor DC.

Buka CodevisionAVR kemudian pilih tools – codewizardAVR dan atur PORT yang akan digunakan sebagai pengirim data dari mikrokontroler ke Driver Motor H – Bridge seperti pada gambar dibawah ini.

Gambar Setting codewizarAVR pada Tab PORT

Setelah setting dilakukan tuliskan listing program dibawah ini untuk dapat melihat gerakan motor (CW – CCW). Berikut listing programnya.

Gambar listing program dalam menggerakan Motor DC

Page 11: Modul Prak. Robotika

Sistem Pengaturan putaran Motor DC (cepat-lambat) dapat dilkukan dengan menerapkan system Pulsa Width Modulation (PWM). Penggunaan PWM pada dasarnya adalah mengatur banyak sedikitnya tegangan yang mengalir pada Motor DC. Sehingga pada kondisi putaran Motor DC cepat (MAX=12 Volt) dan putaran sangat lambat (MIN=5 Volt). Pengaturan pemberian tegangan pada Motor DC dengan menggunakan PWM dapat mengalirkan tegangan dalam interval 5 Volt – 12 Volt (spesifikasi motor DC 12 volt). Untuk sinyal PWM dan besarnya tegangan dapat dilihat pada gambar dibawah ini.

Gambar perbandingan Sinyal PWM dengan Tegangan

Berikut dalam menghasilkan sinyal PWM harus dilakukan pemrograman pada mikrokontorler dengan menggunakan timer. Pada contoh dibawah ini dapat dilakukan dengan mengatur timer 0 sebagai pengahasil sinyal dalam menghasilkan duty cycle PWM.

Nah sekarang bagaimana kita memanfaatkan mode 0 dari Timer 0 agar dapat bekerja sebagai PWM. Katakanlah kita mempunyai 2 pin enable ke motor kiri dan kanan. Kita buat sebuah penampung nilai PWM yang berperan sebagai duty cycle dari PWM. Anggaplah variabel duty cycle PWM ini mempunyai nilai 0 - 255 (unsigned char). Jika duty cycle-nya 100% maka nilai tersebut adalah 255. Full speed adalah 255, half-speed adalah 127 dan no-speed adalah 0. OK, kita tulis kodenya seperti berikut :

//bagian defenisi PORT untuk hubungan dengan Driver#define pwmKi PORTA.0#define mKi_plus PORTC.1#define mKi_min PORTC.2

#define pwmKa PORTA.3#define mKa_plus PORTC.4#define mKa_min PORTC.5

//deklarasi variabelunsigned char pwmKi_val,pwmKa_val,x = 0;

Page 12: Modul Prak. Robotika

//interrupt timer 0

interrupt [TIM0_OVF] void timer0_ovf_isr(void){

TCNT0 = 0xC0;

x++;

if (x>=pwmKa_val) { pwmKa=0; } else { pwmKa=1; } if (x>=pwmKi_val) { pwmKi=0; } else { pwmKi=1; }

}

Pada program utama tuliskan liasting program berikut ini

//setting nilai awal pwmKi = 1;pwmKa = 1;

mKi_plus = 1;mKi_min = 0;mKa_plus = 1;mKa_min = 0;

while (1) { pwmKa_val = 0xff; // kecepatan motor kanan pwmKi_val = 0x20; // kecepatan motor kiri delay_ms(1500); // waktu lamanya putaran pwmKa_val = 0x20; pwmKi_val = 0xff; // nilai PWMnya dibalik untuk delay_ms(1500); // motor kiri dan kanan};

Page 13: Modul Prak. Robotika

Uraian dan Kesimpulan :

………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………….………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………….………………………………………………………………………………………………………………………………………………….

Page 14: Modul Prak. Robotika

PRAKTIKUM 3KONTROL MOTOR STEPPER

Selain dari jenis motor DC terdapat pula motor stepper sebagai salah satu jenis actuator robot. Motor stepper pada dasarnya adalah motor DC yang bergerak dengan model step by step yang menghasilkan putaran dengan sudut tertentu. Sehinggga dalam penggunaannya pada robot dapat menghasilkan gerakan sudut yang presisi. Sebagai contoh dapat dilihat pada gambar dibwah ini.

Gambar Motor Stepper

Gambar perbedaan motor stepper Unipolar dan Bipolar

Page 15: Modul Prak. Robotika

Gambar Modul driver motor stepper

Pada modul driver motor stepeer, terdapat dua jalur control dalam menggerakan motor stepper yaitu I2C dan Paralel. Namun dalam praktikum kali ini menggunakan jalur parallel agar lebih mudah memahami data yang dikirim dengan gerakan yang terjadi.

Langkah-langkah dalam menghubungkan modul driver motor DC dengan Motor Stepper :

1. Hubungkan motor stepper dengan bagian konector pada modul 2. Hubungkan tegangan kerja modul sesuai dengan kebutuhan rangkaian3. Hubungkan bagian header RST, S4, S3, S2, S1 ke mikrokontroler4. Setelah semua terhubung dengan baik selanjutnya melangkah kepemrograman

I2C

PARALEL

Page 16: Modul Prak. Robotika

Uraian dan Kesimpulan :

………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………….………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………….………………………………………………………………………………………………………………………………………………….

Page 17: Modul Prak. Robotika

PRAKTIKUM 4KONTROL MOTOR SERVO

Motor servo adalah motor yang mampu bekerja dua arah (CW dan CCW) dimana arah dan sudut pergerakan rotornya dapat dikendalikan hanya dengan memberikan pengaturan duty cycle sinyal PWM pada bagian pin kontrolnya. Motor Servo merupakan sebuah motor DC yang memiliki rangkaian control elektronik dan internal gear untuk mengendalikan pergerakan dan sudut angularnya. Berikut contoh motor servo diperlihatkan pada gambar dibawah ini.

Gambar Motor Servo

Jenis-Jenis Motor Servo :1. Motor Servo Standar 180°

Motor servo jenis ini hanya mampu bergerak dua arah (CW dan CCW) dengan defleksi masing-masing sudut mencapai 90° sehingga total defleksi sudut dari kanan – tengah – kiri adalah 180°.

2. Motor Servo ContinuousMotor servo jenis ini mampu bergerak dua arah (CW dan CCW) tanpa batasan defleksi sudut putar (dapat berputar secara kontinyu).

Mode pensinyalan motor servo :

Gambar Sinyal PWM Control Motor Servo

Page 18: Modul Prak. Robotika

Contoh dimana bila diberikan pulsa dengan besar 1.5ms mencapai gerakan 90 derajat, maka bila kita berikan data kurang dari 1.5 ms maka posisi mendekati 0 derajat dan bila kita berikan data lebih dari 1.5 ms maka posisi mendekati 180 derajat.

Gambar Posisi dan Waktu Pemberian Pulsa Motor Servo

1. Motor Servo akan bekerja secara baik jika pada bagian pin kontrolnya diberikan sinyal PWM dengan frekuensi 50Hz.

2. Dimana pada saat sinyal dengan frekuensi 50Hz tersebut dicapai pada kondisi Ton duty cycle 1.5ms, maka rotor dari motor akan berhenti tepat di tengah-tengah (sudut 0° / netral).

3. Pada saat Ton duty cycle dari sinyal yang diberikan kurang dari 1.5ms, maka rotor akan berputar ke arah kiri dengan membentuk sudut yang besarnya linier terhadap besarnya Ton duty cycle, dan akan bertahan diposisi tersebut.

4. Dan sebaliknya, jika Ton duty cycle dari sinyal yang diberikan lebih dari 1.5ms, maka rotor akan berputar ke arah kanan dengan membentuk sudut yang linier pula terhadap besarnya Ton duty cycle, dan bertahan diposisi tersebut.

Gambar Pin dan hubungan Kebel Motor Servo

Page 19: Modul Prak. Robotika

Langkah- langkah pemrograman motor servo :

1. Buka program codevision AVR2. Pilih New – Project – Ok – Yes3. Tentukan PORT yang digunakan untuk mengatur Motor Servo4. Setting Timer 0 dan centang bagian Overflow

Gambar Setting CodewizarAVR untuk bagian PORT dan Timer

5. Pilih menu File – Save Generate and Exit6. Save file dengan nama servo sebanyak tiga kali dengan ekstensi masing-masing .c, .prj, .cwp7. Tuliskan listing program dibawah ini.

Gambar Listing Program Pada Bagian Overflow Timer0

Page 20: Modul Prak. Robotika

Gambar Listing Program utama Motor Servo

8. Compiler hasil program dan kirim kedalam mikrokontroler 9. Amati gerakan motor servo 10. Lakukan perubahan nilai pada servo data dan delay pada program untuk melihat

perbandingan gerakan motor servo.

Page 21: Modul Prak. Robotika

Uraian dan Kesimpulan :

………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………….………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………….………………………………………………………………………………………………………………………………………………….

Page 22: Modul Prak. Robotika

PRAKTIKUM 5SENSOR SUHU

Sensor suhu merupakan komponen elektronika yang berfungsi untuk mengubah besaran fisis yang berupa suhu menjadi besaran elektris tegangan. Pada praktikum sensor suhu digunakan type LM 35. Berikut bentuk fisik dari sensor suhu LM 35 pada gambar dibawah ini.

Gambar Sensor Suhu LM 35

Sensor suhu LM35 memiliki parameter bahwa setiap kenaikan 1ºC tegangan keluarannya naik sebesar 10mV dengan batas maksimal keluaran sensor adalah 1,5 V pada suhu 150°C. Vout adalah tegangan keluaran sensor yang terskala linear terhadap suhu terukur, yakni 10 milivolt per 1 derajad celcius. Jadi jika Vout = 530mV, maka suhu terukur adalah 53 derajad Celcius dan jika Vout = 320mV, maka suhu terukur adalah 32 derajad Celcius.

Gambar Keterangan Pin Sensor Suhu LM 35

Spesifikasi LM 35 :

1. Memiliki sensitivitas suhu, dengan faktor skala linier antara tegangan dan suhu 10 mVolt/ºC, sehingga dapat dikalibrasi langsung dalam celcius.

2. Memiliki ketepatan atau akurasi kalibrasi yaitu 0,5ºC pada suhu 25 ºC3. Memiliki jangkauan maksimal operasi suhu antara -55 ºC sampai +150 ºC.4. Bekerja pada tegangan 4 sampai 30 volt.5. Memiliki arus rendah yaitu kurang dari 60 µA.6. Memiliki pemanasan sendiri yang rendah (low-heating) yaitu kurang dari 0,1 ºC pada

udara diam.7. Memiliki impedansi keluaran yang rendah yaitu 0,1 W untuk beban 1 mA.8. Memiliki ketidaklinieran hanya sekitar ± ¼ ºC

Page 23: Modul Prak. Robotika

Langkah-langkah pemrograman sensor suhu1. Jalankan program codevisionAVR2. Setting pada codewizardAVR untuk LCD

Gambar Pengaturan PORT untuk LCD

3. Atur ADC untuk jalur PIN ADC pada PORTA yang akan digunakan4. Tuliskan listing program dibawah ini

// Read the AD conversion resultunsigned int Baca_adc(unsigned char adc_input){ADMUX=adc_input | (ADC_VREF & 0xff);delay_us(10);ADCSRA|=0x40;while ((ADCSRA & 0x10)==0);ADCSRA|=0x10;return ADCL;}

5. Tambahkan listing program berikut pada bagian program utama

while (1) {

data_adc=Baca_adc (1);suhu=data_adc;suhu=(5*data_adc* 100 ) /1024;sprintf (tampil, “SUHU : %3.2f *C”,suhu);lcd_gotoxy(0,0);lcd_puts(tampil);

};}

Page 24: Modul Prak. Robotika

Uraian dan Kesimpulan :

………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………….………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………….………………………………………………………………………………………………………………………………………………….

Page 25: Modul Prak. Robotika

PRAKTIKUM 6SENSOR UVITRON

Salah satu sensor yang dapat digunakan dalam proses mendeteksi api untuk keperluan rancangan robot pemadam api adalah sensor Uvitron (flame detector). Sensor uvitron ini dapat mendeteksi gelombang ultraviolet yang terdapat pada api (lilin) dengan range 185 – 256 nm. Pada praktikum sensor api digunankan Uvitron buatan Hamamatsu dengan type R2868. Seperti pada gambar dibawah ini.

a. Sensor Api b. DC Processing

Gambar sensor api dan DC processing

Sensor diatas sangat presisi dan sangat rentan sekali. Dalam perlakuannya sensor tersebut tidak boleh dipegang secara langsung oleh tangan manusia. Hal ini disebabkan karena bisa mengurangi sensitivitas dari sensor tersebut

Penjelasan singkat rangkaian pada gambar dari datasheet sebagai berikut :

Gambar datasheet DC processing Sensor Api

Page 26: Modul Prak. Robotika

Teknik PemrogramanAdapun teknik pemrograman yang digunakan adalah menggunakan mikrokontroler AVR ATMega 16 dengan menghubungkan :• Pin VCC + 5V• Pin GND 0V• Pin data output dari sensor ke Pin PortA bit ke-0• Tampilkan Data ke LCD• Tampilkan Data ke BarLED

Langkah-langkah :1. Buka program AVR2. Tentukan nilai Port A = Input, Port B = LCD, Port D = Output (BarLed)

Gambar Pengaturan PORT A dan PORT D

Gambar Pengaturan PORT untuk LCD

Page 27: Modul Prak. Robotika

3. Buat Program untuk mendeteksi panas api, tampilkan ke BarLed dan LCD

Gambar Listing program Sensor Api

Page 28: Modul Prak. Robotika

Uraian dan Kesimpulan :

………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………….………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………….………………………………………………………………………………………………………………………………………………….

Page 29: Modul Prak. Robotika

PRAKTIKUM 7SENSOR KOMPAS

Modul magnetic kompas ini digunakan sebagai sensor yang tujuannya untuk navigasi robot dengan mengetahui posisi arah. Kompas ini menggunakan dua sensor medan magnet KMZ51 buatan Philips yang cukup peka untuk mendeteksi medan magnet bumi. Dua sensor ini dipasang saling bersilangan. Pada modul kompas telah dipasang rangkaian pengkondisi sinyal dan mikrokontroler. Sehingga kita dapat mengakses berapa derajat posisi kompas sekarang secara langsung. Berikut gambar dan keterangan Pin Modul Compas (CMPS03) dibawah ini.

Gambar Sensor Kompas CMPS03

Modul kompas membutuhkan suplai tegangan sebesar 5VDC dengan konsumsi arus sekitar 15mA. Ada dua cara untuk membaca posisi magnet. Yaitu melalui sinyal PWM pada pin nomor 4 atau menggunakan protokol I2C pada pin nomor 2 dan 3.

Yakinkan bahwa pin untuk I2C, SDA dan SCL, dihubungkan ke suplai 5VDC melalui resistor pull-up, karena pin SDA dan pin SCL tidak mempunyai pull-up. Pin 2 dan 3 digunakan untuk berkomunikasi dengan protokol (bahasa) I2C untuk mengambil nilai posisi kompas.

Gambar sinyal dan register pada sensor kompas

Komunikasi dengan protokol I2C pada modul kompas mempunyai cara yang sama seperti mengakses eeprom serial tipe 24C04 misalnya. Pertama kirim start-bit, alamat kompas (0xC0) dengan bit R/W low, kemudian nomor register yang ingin diakses. Selanjutnya diulang dengan mengirimkan start-bit, alamat kompas dengan bit R/W high (0xC1). Kemudian isi register dibaca.

Page 30: Modul Prak. Robotika

Table Register dan fungsi Sensor Kompas

Pin I2C tidak mempunyai resistor pull-up pada board sehingga harus ditambahkan pada jalur komunikasi yang digunakan. Pembuat modul kompas menyarankan untuk memasang resistor 1k8 jika diinginkan bekerja pada kecepatan 400kHz dan 1k2 atau bahkan 1k bila ingin bekerja pada kecepatan 1MHz. Modul kompas didesain untuk bekerja pada frekuensi standar (SCL) sebesar 100kHz, walaupun kecepatan sinyal clock bisa ditingkatkan sampai 1Mhz dengan beberapa tindakan yang harus diperhatikan. Pada kecepatan diatas sekitar 160kHz, CPU tidak dapat merespon dengan cepat untuk membaca data I2C. oleh karena itu delay sesaat sebesar 50μ-detik harus ditambahkan diantara pengiriman alamat register.

PercobaanPada percobaan ini digunakan modul AVR Atmega 16 dengan sebuah LCD untuk menampilkan posisi kompas.1. Siapkan modul AVR dan modul kompas, hubungkan kedua modul tersebut dengan benar.2. Hubungkan modul AVR dengan PC, jalankan aplikasi CodeVision AVR.3. Gunakan wizard untuk mengakses LCD dan seting I2C pada pin yang sesuai.4. Tambahkan sub rutin berikut untuk membaca register pada modul kompas magnetik:

Gambar Listing Program sensor Kompas

Page 31: Modul Prak. Robotika

5. Program untuk menampilkan hasil posisi kompas pada LCD:

while (1){

data=compas_readb(1);sprintf(kata,"%d ",data);lcd_gotoxy(0,1);lcd_puts(kata);delay_ms(500);

}

6. Putar posisi kompas secara perlahan-lahan untuk mengetahui nilai berdasarkan arah yang diinginkan dan lihat tampilan nilai pada LCD.

Page 32: Modul Prak. Robotika

Uraian dan Kesimpulan :

………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………….………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………….………………………………………………………………………………………………………………………………………………….

Page 33: Modul Prak. Robotika

PRAKTIKUM 8SENSOR ULTRASONIK

Sensor jarak ultrasonik PING))) buatan Parallax merupakan sensor jarak yang presisi. Dapat melakukan pengukuran jarak 2 cm sampai 3 meter dan sangat mudah untuk dihubungkan ke mikrokontroler menggunakan sebuah pin I/O. Sensor PING))) bekerja dengan cara memancarkan sinyal ultrasonik sesaat dan menghasilkan pulsa output yang sesuai dengan waktu pantul sinyal ultrasonik sesaat kembali menuju sensor. Dengan mengukur lebar pulsa pantulan tersebut jarak target didepan sensor dapat diketahui. Berikut bentuk sensor ultrasonic ping dibwah ini.

Gambar Sensor Ultrasonik Ping

Fitur• Tegangan suplai : 5 VDC• Konsumsi arus : 30 mA typ; 35 mA max• Jarak : 2 cm to 3 m (0.8 in to 3.3 yrds)• Input Trigger : positive TTL pulse, 2 uS min, 5 μs typ.• Echo Pulse : positive TTL pulse, 115 uS to 18.5 ms• Echo Hold-off : 750 μs from fall of Trigger pulse• Burst Frequency : 40 kHz for 200 μs• Burst Indicator LED shows sensor activity• Delay before next measurement – 200 μs• Size – 22 mm H x 46 mm W x 16 mm D (0.84 in x 1.8 in x 0.6 in)

Gambar Keterangan Pin Pada Sensor Ultrasonic

Page 34: Modul Prak. Robotika

PercobaanPada percobaan ini digunakan modul AVR Atmega16 dengan sebuah LCD untuk menampilkan nilai counter dan jarak dalam sentimeter. 1. Siapkan modul AVR dan modul PING))), hubungkan kedua modul tersebut dengan benar.2. Hubungkan modul AVR dengan PC, jalankan aplikasi CodeVision AVR.3. Gunakan wizard untuk mengakses LCD4. Tambahkan deklarasi program berikut:

Gambar pengaturan PORT LCD

Gambar listing program bagian deklarasi variable

Page 35: Modul Prak. Robotika

Gambar listing program utama sensor ultrasonic

Page 36: Modul Prak. Robotika

PRAKTIKUM 9SENSOR PROXIMITY

Sensor proximity adalah sensor untuk mendeteksi ada atau tidaknya suatu obyek. Bila obyek berada didepan sensor dan dapat terjangkau oleh sensor maka output rangkaian sensor akan berlogika “1” atau “high” yang berarti obyek “ada”. Sebaliknya jika obyek berada pada posisi yang tidak terjangkau oleh sensor maka output rangkaian sensor akan bernilai “0” atau “low” yang berarti obyek “tidak ada”. Dalam dunia robotika, sensor proximity seringkali digunakan untuk mendeteksi ada atau tidaknya suatu garis pembimbing gerak robot atau yang lebih dikenal dengan istilah “line following” atau “line tracking”, juga biasa digunakan untuk mendeteksi adanya benda-benda penghalang seperti dinding atau benda-benda lainnya sehingga robot dapat menghindari tambrakan dengan benda-benda tersebut. Jenis sensor proximity meliputi limit switch (saklar mekanik), infrared proximity (infra merah), kamera dan lain sebagainya. Gambar dibawah ini adalah contoh pada aplikasi line following robot.

Gambar Robot Line Follower yang menggunakan sensor garis

Prinsip kerjaSalah satu kegunaan sensor proximity yang sering dijumpai dalam dunia robotika adalah sebagai sensor garis. Sensor ini dapat dibuat dari pasangan LED dan fototransistor seperti pada gambar 2. Bila cahaya LED memantul pada garis dan diterima oleh basis fototransistor maka phptotransistor menjadi saturasi (on) sehingga tegangan output (Vout) menjadi sama dengan VCE saturasi atau mendekati 0 volt. Sebaliknya jika tidak terdapat pantulan maka basis fototransistor tidak mendapat arus bias sehingga fototransistor menjadi cut-off (C-E open), dengan demikian nilai Vout sama dengan VCC.

Gambar Rangkaian infra red proximity sebagai sensor garis

Page 37: Modul Prak. Robotika

Gambar Prinsip Kerja Sensor Proximity

Untuk dapat diinterfacekan ke mikrokontroler, tegangan output harus selalu berada pada level 0 atau VCC. Output rangkaian gambar 1 masih memiliki kemungkinan tidak pada kondisi ideal bila intensitas pantulan cahaya LED pada garis lemah, misalnya karena perubahan warna atau lintasan yang kotor. Untuk mengatasi hal tersebut ditambahkan rangkaian pembanding yang membandingkan output sensor dengan dengan suatu tegangan threshold yang dapat diatur dengan memutar trimmer potensio (10K).Rangkaian lengkapnya seperti pada gambar 3. LED pada output berguna sebagai indikator logika output sehingga kerja sensor mudah diamati.

Gambar rangkaian sensor garis dengan bagian comparator

Untuk lebih dari satu sensor dapat dibuat rangkaian yang identik sesuai kebutuhan. Satu buah LM339N/LM324 berisi 4 pembanding yang dapat dipakai untuk 4 rangkaian sensor. Untuk kebutuhan jumlah sensor yang lebih besar, misalnya pada robot line tracer untuk keperluan lomba, rangkaian ini bisa digandakan sesuai kebutuhan.

Langkah pengujian sensor Garis1. Pada bagian sensor letakan permukaan berwarna putih 2. Perhatikan Led indicator apakah menyala atau tidak3. Atur variable resistor yang terdapat pada sensor untuk menyeragamkan nyala atau

padamnya Led indicator.4. Lakukan pengaturan sensor satu demi satu untuk mendapatkan kepekaan dan

keseragaman nyala padamnya Led indicator.5. Apabila pengaturan sensor sudah selesai maka sensor dapat dihubungkan ke

mikrokontorler untuk kemudian diprogram sebagai inputan (sensing garis).

Page 38: Modul Prak. Robotika

Langkah pemrograman sensor garis pada robot 1. Jalankan program codevisionAVR 2. Atur PORT mikrokontorler sebagai INPUTAN, missal PORTC = Inputan3. Atur PORT sebagai Output, misal PORTD = output4. Tuliskan Listing Program dibawah ini

Page 39: Modul Prak. Robotika

Uraian dan Kesimpulan :

………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………….………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………….………………………………………………………………………………………………………………………………………………….