MODUL AJAR
PRAKTIKUM OTOMASI DAN ROBOTIKA
KODE: 609321A
Penyusun: Noorman Rinanto, ST., MT. NIP. 197610142012121002 Syamsiar Kautsar S.ST, MT.
PROGRAM STUDI TEKNIK OTOMASI
JURUSAN TEKNIK KELISTRIKAN KAPAL
POLITEKNIK PERKAPALAN NEGERI SURABAYA
Assalamualaikum Wr.Wb.
Segala puji dan syukur penyusun haturkan kehadirat Allah SWT atas selesainya penyusunan buku “Modul ajar – Praktikum Otomasi dan Robotika”. Ucapan terima kasih penyusun sampaikan untuk istri, dan anak-anak tercinta yang senantiasa selalu memberi semangat dan inspirasi kepada penyusun. Selain itu, rasa terima kasih juga penyusun sampaikan untuk rekan kami Syamsiar Kautsar S.ST., MT. yang telah membantu dalam penyusunan modul ajar ini.
Modul tersebut merupakan penunjang mata kuliah Praktikum Otomasi dan Robotika dan berisi materi-materi percobaan atau implementasi antar muka perangkat keras Arduino dengan beberapa sensor dan aktuator. Tiap percobaan atau materi pada modul ajar ini dilaksanakan setiap satu kali pertemuan per minggu dengan total pertemuan sebanyak 16 (enam belas) dengan 14 (empat belas) pertemuan berupa materi praktikum dan 2 (dua) berupa evaluasi.
Tentunya modul ajar ini masih jauh dari kesempurnaan dan banyak kekurangan, oleh sebab itu kritik dan saran pembaca atau pengguna buku modul ajar ini sangat diharapakan untuk menyempurnakan modul ajar ini.
Wassalamualaikum Wr. Wb.
Surabaya, September 2015
Modul Ajar Praktikum Otomasi dan Robotika ii
DAFTAR ISI
Kata pengantar………. i
Daftar Isi………... ii
Pendahuluan……….. iii
MODUL 1 : Dasar Pemrograman Arduino
Pertemuan 1 - Dasar Pemrograman Arduino……….. 1
Pertemuan 2 - Arduino Digital I/O……….. 9
Pertemuan 3 - Arduino Analog Input – Digital Output……… 12
MODUL 2 : Dasar Sensor pada Arduino
Pertemuan 4 - Sensor Suhu LM35 menggunakan Arduino………….. 15
Pertemuan 5 - Sensor Cahaya menggunakan Arduino………... 18
Pertemuan 6 - Sensor Ultrasonik menggunakan Arduino……… 21
Pertemuan 7 - Sensor Kompas menggunakan Arduino……… 25
MODUL 3 : Dasar Aktuator pada Arduino
Pertemuan 8 - Kendali Relay menggunakan Arduino……….. 28
Pertemuan 9 - Kendali Relay menggunakan Komunikasi Serial
Arduino………. 33 Pertemuan 10 - Kendali Motor Servo menggunakan Arduino………. 37
Pertemuan 11 - Kendali Motor DC menggunakan H-Bridge dan
Arduino……….... 40
MODUL 4 : Evaluasi Tengah Semester 45
MODUL 5 : Aplikasi Robotika pada Arduino
Pertemuan 13 - Aplikasi LCD menggunakan Arduino……….. 46
Pertemuan 14 - Aplikasi Desktop Pengendali Relay Menggunakan Arduino………. 51 Pertemuan 15 - Aplikasi Kendali Robot Lengan Menggunakan
Arduino………. 56
PENDAHULUAN
A. KOMPETENSI
Memberikan keahlian kepada mahasiswa tentang bagaimana menerapkan dan mengintegerasikan sensor, actuator, controller dan manipulator robot industri dari yang semula manual menjadi otomatis.
B. GAMBARAN UMUM MATERI
Materi yang diajarkan pada modul ini ini meliputi perancangan rangkaian elektronik serta pemrograman interface I/O baik secara digital maupun analog menggunakan controller Arduino. Selain itu juga mengendalikan sebuah lengan robot secara jarak jauh dengan menggunakan sebuah aplikasi pemrograman desktop melalui komunikasi antarmuka serial.
C. WAKTU
Mata kuliah Praktikum Otomasi dan Robotika ini mempunyai bobot 2(dua) SKS atau 4 (empat) jam per minggu. Mahasiswa diharuskan untuk mengikuti perkuliahan ini selama 16 (enam belas) kali pertemuan termasuk didalamnya evaluasi materi. Sehingga total waktu yang diperlukan untuk mata kuliah ini selama satu semester adalah 4 jam x 16 tatap muka atau sama dengan 64 jam.
D. PRASYARAT
Untuk mencapai kompetensi yang diharapkan, maka mahasiswa diharuskan untuk menguasai mata kuliah dasar sebagai prasyarat mata kuliah ini. Adapun mata kuliah prasyarat tersebut antara lain:
Rangkaian Elektronika (Analog dan Digital) Pemrograman Komputer
Mikroprosesor dan Mikrokontroler Matematika Terapan
Interfacing
Sensor dan Aktuator
PENDAHULUAN
Modul Ajar Praktikum Otomasi dan Robotika 2
E. PETUNJUK PENGGUNAAN MODUL AJAR
Modul ajar ini telah disusun secara sistematis dengan mengacu pada SAP yang berlaku. Untuk itu mahasiswa dalam menggunakan modul ajar ini harus memperhatikan beberapa hal berikut :
1. Membawa modul ajar ini setiap mengikuti perkuliahan.
2. Membaca dengan baik setiap isi yang ada di dalam modul ajar.
3. Membuat daftar catatan kecil untuk sesuatu hal yang belum dimengerti. Untuk kemudian ditanyakan kepada dosen.
4. Mengerjakan semua latihan dan tugas yang ada di modul ini dengan baik dan benar.
5. Membuat laporan hasil percobaan atau analisa dari materi yang telah dipelajari per kelompok dan menyerahkannya ke dosen yang mengampu.
Penyusun:
Noorman Rinanto, ST., MT. NIP. 197610142012121002
Syamsiar Kautsar S.ST, MT.
PROGRAM STUDI TEKNIK OTOMASI
JURUSAN TEKNIK KELISTRIKAN KAPAL
POLITEKNIK PERKAPALAN NEGERI SURABAYA
Modul 1- Dasar Pemrograman Arduino
Modul Ajar Praktikum Otomasi dan Robotika 1
PERTEMUAN 1
DASAR PEMROGRAMAN ARDUINO
1.1 Sub Kompetensi:
- Mahasiswa mampu memahami dan mempraktekkan pemrograma pada mikrokontroler Arduino
- Mahasiswa memahami dan mempraktekkan komunikasi serial antara mikrokontroler Arduino dengan komputer
1.2 Waktu Pelaksanaan Praktikum:
- Pertemuan Minggu ke-1, Instalasi dan pemrograman Arduino
1.3 Dasar Teori:
Arduino merupakan platform open-source untuk membuat projek elektronik yang terdiri dari perangkat keras (papan Arduino) dan perangkat lunak (Arduino IDE). Papan Arduino mampu membaca masukan seperti: cahaya pada sensor, sentuhan jari pada tombol, atau pesan dari Twitter dan mengubahnya menjadi keluaran seperti: mengaktifkan motor, menyalakan LED, atau memposting artikel secara on-line. Anda dapat ‘memerintahkan’ mikrokontroler Anda untuk melakukan beberapa proses melalui program yang dibuat di Arduin IDE. Selama bertahun-tahun Arduino telah menjadi digunakan dalam berbagi proyek, seperti untuk membuat perangkat instrumen ilmiah yang kompleks. Arduino didukung sebuah komunitas di seluruh dunia yang terdiri dari pelajar, penggemar, seniman, programer, dan profesional. Mereka memberikan berbagai kontribusi yang luar biasa sehingga Arduino dapat digunakan untuk para pemula maupun tenaga ahli.
Arduino dikembangkan di Ivrea Interaction Design Institute untuk membuat prototipe yang mudah dan cepat, ditujukan untuk siswa tanpa latar belakang elektro dan pemrograman. Pada perkembangannya, papan Arduino mulai dikembangkan untuk berbagai macam kebutuhan dan tantangan baru, dari papan 8-bit sederhana untuk membuat prototipe, hingga aplikasi IOT, wearable, cetak 3D, dan embedded system. Semua papan Arduino bersifat open-source, sehingga pengguna dapat membangun prototipe mereka sendiri secara independen. Arduini IDE juga bersifat open source, dan semakin berkembang melalui kontribusi dari komunitas di seluruh dunia.
Untuk tipe data pada pemrograman arduino, dijabarkan sebagai berikut: - Int:
untuk penyimpanan bilangan bulat dengan rentang nilai -32,768 s/d 32,768 - byte:
untuk bilangan cacah dengan rentang nilai 0-255 (8 bit) - unsigned int:
untuk bilangan cacah dengan rentang nilai 0-65,535 (16 bit) - long:
untuk bilangan bulat dengan rentang nilai -2,147,483,648 s/d 2,147,483,647
- unsigned long:
Untuk bilangan cacah dengan rentang nilai 0-4,294,967,295 (32 bit) - float :
untuk bilangan rill (pecahan) dengan rentang nilai -3.4028235E+38 s/d 3.4028235E+38
- double:
pada Arduino uno, sama dengan tipe data float - char:
untuk karakter sesuai tabel ASCII - String:
Modul 1- Dasar Pemrograman Arduino
Modul Ajar Praktikum Otomasi dan Robotika 3
1.4 Peralatan yang Diperlukan
- Komputer / PC / Laptop dengan port USB - Board Arduino Uno + kabel
- Software Arduino IDE
1.5 Prosedur Percobaan
Untuk memprogram arduino, ikuti langkah-langkah berikut: 1. Hubungkan board Arduino Uno ke port USB komputer/laptop.
Gambar 1.2 Koneksi board Arduino Uno dengan komputer
2. Buka device manager, jika board Arduino Uno terhubung dengan benar, maka pada port serial akan muncul Arduino Uno dan nomor COMnya.
*Langkah tersebut diatas hanya untuk pengecekan koneksi antara Uno dengan komputer, untuk selanjutnya langkah ini dapat dilewati
3. Buka aplikasi Arduino IDE dan akan muncul tampilan awal seperti gambar 1.4.
Gambar 1.4 Tampilan awal Arduino IDE saat dijalankan
4. Pastikan beberapa konfigurasi sama seperti gambar 1.5, 1.6 dan 1.7.
Gambar 1.5 Pengaturan board arduino yang digunakan
Modul 1- Dasar Pemrograman Arduino
Modul Ajar Praktikum Otomasi dan Robotika 5
Gambar 1.7 Pengaturan cara meng-upload program ke mikrokontroler
5. Lalu buka contoh program “Blingking Led” melalui File Examples 01.Basics Blink
Gambar 1.7 Contoh program yang tersedia pada Arduino IDE
6. Untuk mencompile program, klik compile. Untuk mendownload program ke board Arduino, klik upload.
7. Setelah program terupload dengan benar, amati dan jelaskan perubahan yang terjadi pada papan Arduino Uno!
Tabel 1.1 Hasil keluaran program Blink
Detik ke- Kondisi LED di pin 13
1 ... 2 ... 3 ... 4 ... 5 ... 6 ... 7 ... 8 ... 9 ... ...
8. Jelaskan bagian code berikut (sesuai dengan hasil yang Anda amati pada langkah 7):
9. Berikutnya, buat jendela program baru melalui File New atau dengan menekan tombol Ctrl+N, lalu ketikkan code sebagai berikut:
Modul 1- Dasar Pemrograman Arduino
Modul Ajar Praktikum Otomasi dan Robotika 7
10. Simpan program dengan nama percobaan1_kelompokN (N diisi nomor kelompok). Upload program yang sudah dibuat, lalu buka serial port melalui Tools Serial Monitor. Ketikkan “ON” + enter dan “OFF” + enter secara bergantian pada jendela Serial Monitor. Amati perubahan yang terjadi pada board Arduino Uno!
Tabel 1.2 Hasil keluran program untuk komunikasi serial
Data Serial Kondisi LED di pin 13
“ON” ...
“OFF” ...
“ON” ...
“OFF” ...
11. Jelaskan bagian program yang telah Anda buat (berdasarkan hasil pengamatan Anda pada langkah 10)!
12. Buat kesimpulan dari percobaan yang telah Anda lakukan dalam sebuah laporan resmi praktikum!
Modul 2 – Dasar Sensor pada Arduino
Modul Ajar Praktikum Otomasi dan Robotika 9
PERTEMUAN 2
ARDUINO DIGITAL I/O
2.1 Sub Kompetensi
- Mahasiswa mampu memahami dan mempraktekkan interface dan pemrograman menggunakan pin digital I/O pada Arduino
2.2 Waktu Pelaksanaan Praktikum
- Pertemuan Minggu ke-2, Dasar digital I/O pada Arduino
2.3 Dasar Teori
Beberapa fungsi dari tiap pin yang ada pada board Arduino Uno dapat dilihat pada pin mapping IC atmega 328 seperti ditunjukkan gambar 2.1. Pada gambar tersebut terlihat bahwa Arduino memiliki 14 pin yang dapat difungsikan sebagai digital I/O dari mulai pin digital 0-13. Pada percobaan kali ini difokuskan untuk menggunakan pin digital tersebut sedangkan untuk fungsi pin yang lain dapat dilihat pada datasheet atau buku manual online pada websitewww.arduino.cc. Untuk menggunakan pin digital I/O pada board Arduino digunakan perintah
pinMode(), digitalWrite(), dan digitalRead().
2.4 Peralatan yang Diperlukan
- Komputer / PC / Laptop dengan port USB - Board Arduino Uno + kabel
- Software Arduino IDE - Push button (min. 2 pcs)
- Kabel jumper beserta konektornya (secukupnya) - Breadboard (1 pcs)
2.5 Prosedur Percobaan
1. Buatlah rangkaian pull-up digital input arduino seperti skematik yang ditunjukkan pada gambar 2.2. Dengan nomor pin digital input Arduino sesuai dengan nomor kelompok.
Gambar 2.2 Rangkaian Pull-Up digital input switch.
2. Setelah itu buatlah program untuk menjalankan rangkaian tersebut sesuai dengan kode program sebagai berikut:
Modul 2 – Dasar Sensor pada Arduino
Modul Ajar Praktikum Otomasi dan Robotika 11
3. Compile dan upload program tersebut ke board Arduino dan amati hasilnya serta isi tabel 2.1 berikut ini:
Tabel 2.1 Hasil pengamatan percobaan
Push Button Led pin 13 (On/Off)
Tidak ditekan …
Ditekan sebentar …
Ditekan lama …
4. Dengan menggunakan rangkaian yang sama, buatlah program Arduino untuk menyalakan dan mematikan led pin 13 dengan aturan sebagai berikut:
a. Jika push button ditekan sekali led akan menyala (ON) terus b. Jika push button ditekan sekali led akan mati (OFF) terus
5. Ubahlah rangkain tersebut menjadi rangkaian pull-down dan buatlah programmya serta gambarkan rangkaian skematiknya
6. Dari percobaan diatas buat analisa jalannya system berserta analisa perbaris tiap line program.
PERTEMUAN 3
ARDUINO ANALOG IN DIGITAL OUT
3.1 Sub Kompetensi
- Mahasiswa mampu memahami dan mempraktekkan interface dan pemrograman menggunakan pin analog sebagai input dan pin digital sebagai output pada Arduino
3.2 Waktu Pelaksanaan Praktikum
- Pertemuan Minggu ke-3, Dasar Analog Input Digital Output pada Arduino
3.3 Dasar Teori
Arduino Uno memilki 6 (enam) buah pin/channels Analog dari mulai A0 – A5 seperti ditunjukkan pada gambar 3.1. Pin tersebut dapat digunakan sebagai input maupun output dengan ADC 10 bit yang berarti mempunyai range nilai antara 0 – 1023 atau dengan kata lain mempunyai resolusi 5Volts/1024. Tegangan referensi pada pin AREF secara default adalah 5 volts atau 3.3 volts.
Untuk membaca nilai analog dari pin digunakan perintah analogRead(), sedangkan perintah mengeluarkan tegangan analog yaitu analaogWrite() dan untuk menggunakan pin digital I/O pada board Arduino digunakan perintah pinMode(),
digitalWrite(), dan digitalRead().
Modul 2 – Dasar Sensor pada Arduino
Modul Ajar Praktikum Otomasi dan Robotika 13
3.4 Peralatan yang Diperlukan
- Komputer / PC / Laptop dengan port USB - Board Arduino Uno + kabel
- Software Arduino IDE
- Potensiometer 10K Ohm (1 pcs)
- Kabel jumper beserta konektornya (secukupnya) - Breadboard (1 pcs)
- Avometer (1 pcs)
3.5 Prosedur Percobaan
1. Buatlah rangkaian potensiometer sebagai analog input pada Arduino seperti skematik yang ditunjukkan pada gambar 2.2. Dengan nomor pin digital input Arduino sesuai dengan nomor kelompok.
Gambar 3.2 Rangkaian Analog Input menggunakan potensiometer.
2. Setelah itu buatlah program untuk menjalankan rangkaian tersebut sesuai dengan kode program sebagai berikut:
3. Compile dan upload program tersebut ke board Arduino kemudian putar potensiometer sambil mengukur tegangan input menggunakan AVO meter sesuai dengan tegangan yang ada pada tabel 3.1 dan amati hasilnya pada terminal windows serta lengkapi pembacaan ADC pada tabel tersebut.
Tabel 3.1 Hasil pembacaan nilai analog input Potensiometer (Volts) Pembacaan Nilai ADC
0 … 1.2 … 2.5 … 3.4 … 4.7 … 5 …
4. Dengan menggunakan rangkaian yang sama, buatlah program Arduino untuk menyalakan dan mematikan led pin 13 dengan menggunakan program example -> Analog -> AnalogInput seperti ditunjukkan pada gambar 3.3.
Gambar 3.3 Folder example Analog Input.
5. Dari percobaan diatas buat analisa jalannya system berserta analisa perbaris tiap line program.
MODUL 2
Dasar Sensor pada Arduino
Penyusun:
Noorman Rinanto, ST., MT. NIP. 197610142012121002
Syamsiar Kautsar S.ST, MT.
PROGRAM STUDI TEKNIK OTOMASI
JURUSAN TEKNIK KELISTRIKAN KAPAL
POLITEKNIK PERKAPALAN NEGERI SURABAYA
PERTEMUAN 4
SENSOR SUHU LM35 MENGGUNAKAN ARDUINO
4.1 Sub Kompetensi:
- Mahasiswa dapat memahami dan menguasai prinsip kerja sensor suhu LM35 dan dapat menggunakannya pada beberapa aplikasi berbasis mikrokontroler Arduino.
4.2 Waktu Pelaksanaan Praktikum:
- Minggu ke-4, Sensor suhu LM35 dengan Arduino.
4.3 Dasar Teori:
Sensor suhu LM35 seperti ditunjukkan pada gambar 4.1 adalah komponen elektronika yang berfungsi untuk mengubah besaran suhu menjadi besaran listrik (dalam bentuk tegangan). LM35 memiliki keluaran impedansi yang rendah dan linieritas yang tinggi sehingga dapat dengan mudah dihubungkan dengan mirkokontroler serta tidak memerlukan penyetelan lanjutan yang rumit. LM35 hanya mengkonsumsi arus sebesar 60 µA selama beroperasi. Hal ini membuat LM35 mempunyai kemampuan menghasilkan panas (self-heating) dari sensor yang rendah, sehingga kesalahan pembacaan oleh sensor LM35 kurang dari 0,5 ºC pada suhu 25 ºC .
LM35 memiliki karakteristik sebagai berikut:
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 ºC. 3. Memiliki jangkauan maksimal operasi suhu antara -55 ºC sampai +150 ºC. 4. Bekerja pada tegangan 4 sampai 20 volt.
5. Memiliki arus rendah yaitu kurang dari 60 µA.
6. Memiliki pemanasan sendiri (self-heating) yang rendah 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 yang rendah, sekitar ± ¼ ºC.
Modul 2 – Dasar Sensor pada Arduino
Modul Ajar Praktikum Otomasi dan Robotika 16
Gambar 4.1 Bentuk fisik sensor suhu LM35. 4.4 Peralatan yang Diperlukan
- Komputer / PC / Laptop dengan port USB - Board Arduino Uno + kabel
- Software Arduino IDE - Sensor LM35 (1 pcs)
- Kabel jumper beserta konektornya (secukupnya) - Breadboard (1 pcs)
- Avometer (1 pcs)
4.5 Prosedur Percobaan
2. Hubungkan sensor LM35 dengan Arduino Uno dengan susunan sebagai berikut:
Tabel 4.1 Wiring sensor LM35 dengan Arduino UNO
LM35 Arduino UNO
Vcc 5volt
GND GND
Vout A0
3. Upload program compass_test.ino lalu buka Serial Monitor.
4. Catat suhu yang terbaca termometer dengan suhu yang tertera pada set point AC pada laboratorium.
Tabel 4.2 Perbandingan suhu ruangan dengan yang terbaca sensor
Menit ke Suhu Ruang Sensor LM35
1 ... ... 2 ... ... 3 ... ... 4 ... ... 5 ... ... 6 ... ...
5. Buat sebuah program, apabila suhu yang terbaca <25 derajat, maka mikrokontroler akan mengirim data serial “suhu rendah”. Apabila suhu yang terbaca antara 25 s/d 35 derajat, maka mikrokontroler akan mengirimkan data serial “suhu normal”. Apabila suhu yang terbaca >35 derajat, maka mikrokontroler akan mengirimkan data serial “suhu tinggi” dan LED pada pin 13 menyala. (dokumentasikan dalam laporan)
Modul 2 – Dasar Sensor pada Arduino
Modul Ajar Praktikum Otomasi dan Robotika 18
PERTEMUAN 5
SENSOR CAHAYA MENGGUNAKAN ARDUINO
5.1 Sub Kompetensi:
- Mahasiswa dapat memahami dan menguasai prinsip kerja sensor cahaya LDR, photodiode, phototransistor dan dapat menggunakannya pada beberapa aplikasi berbasis mikrokontroler Arduino.
5.2 Waktu Pelaksanaan Praktikum:
- Minggu ke-5, Deteksi cahaya menggunakan sensor LDR dengan Arduino.
5.3 Dasar Teori:
Sensor LDR (Light Dependent Resistor) seperti ditunjukkan pada gambar 5.1 adalah salah satu jenis resistor yang nilai resistantnya akan berubah sesuai dengan intesistas cahaya yang diterima komponen tersebut. Makanya sensor tersebut banyak digunakan untuk pendeteksi cahaya atau konversi level cahaya. LDR terdiri dari sebuah lempengan yang mempunyai 2 (dua) buah elektroda yang salah satunya mempunyai jalur meliuk-liuk berbahan semikonduktor Cadmium Sulphide (CdS).
Bahan Cadmium Sulphide tersebut sangat sensitive dengan cahaya, jika bahan tersebut terkena cahaya maka energi proton dari cahaya akan diserap sehingga banyak terjadi perpindahan electron yang mengakibatkan resistansi menjadi kecil, begitu juga sebaliknya jika intensitas cahaya berkurang maka nilai resistansi menjadi besar.
5.4 Peralatan yang Diperlukan
- Komputer / PC / Laptop dengan port USB - 1 x Board Arduino Uno + kabel
- Software Arduino IDE - 1 x Sensor LDR
- 1 x Resistor 10K Ohm, 1 x Resistor 1M Ohm, 1 x Resistor 1K Ohm - 1 x Kapasitor 0.1 uF
- Kabel jumper beserta konektornya (secukupnya) - 1 x Breadboard
- 1 x Avometer
- Kertas lipat berwarna/Origami (1 set)
5.5 Prosedur Percobaan
1. Buatlah rangkaian seperti ditunjukkan pada gambar 4.3. (Pilihan pin input analog disesuaikan dengan nomor kelompok)
Modul 2 – Dasar Sensor pada Arduino
Modul Ajar Praktikum Otomasi dan Robotika 20
3. Compile kemudian amati hasil program tersebut pada Serial Monitor dan isilah tabel percobaan 5.1. Ujilah dibeberapa lokasi yang terang dan gelap.
Tabel 5.1 Hasil percobaan LDR di tempat terang Tempat
(Terang) Nilai Tegangan LDR (Volt) Nilai Pembacaan ADC
1 2 3 4 5
4. Seperti langkah ke-3 namun tidak diuji di tempat yang gelap atau terang tetapi diuji menggunakan kertas lipat berwarna yang didekatkan dengan sensor LDR kemudian catat hasilnya seperti yang ditunjukkan pada tabel 5.2.
Tabel 5.2 Hasil percobaan LDR dengan menggunakan kertas berwarna. Kertas Nilai Tegangan LDR (Volt) Nilai Pembacaan ADC
Merah Biru Hijau Kuning
…
5. Gantilah sensor cahaya LDR menggunakan sensor cahaya yang lain yaitu photodiode dan phototransistor. Buat rangkaian dalam bentuk skematik dan programnya. Kemudian catat hasilnya seperti tabel 5.1 dan 5.2.
6. Dari semua percobaan analisa dan simpulkan kemudian tuangkan dalam bentuk laporan praktikum.
PERTEMUAN 6
SENSOR ULTRASONIK MENGGUNAKAN ARDUINO
6.1 Sub Kompetensi:
- Mahasiswa dapat memahami dan menguasai tentang konsep kerja dan troubleshooting dari sensor ultrasonik (PING) menggunakan papan kontroler Arduino.
6.2 Waktu Pelaksanaan Praktikum:
- Minggu ke-6, Sensor ultrasonic PING untuk pengukuran jarak
6.3 Dasar Teori:
Sensor PING merupakan sensor ultrasonik yang dapat digunakan untuk mendeteksi jarak obyek dengan cara memancarkan gelombang ultrasonik. Gelombang ultrasonik yang dipancarkan mempunyai frekuensi sebesar 40 KHz. Sensor ini dapat mengukur jarak antara 3 cm sampai 300 cm. Keluaran sensor PING berupa pulsa yang lebarnya merepresentasikan jarak objek terhadap sensor. Lebar pulsa bervariasi antara 115 uS sampai 18,5 mS tergantung pada lama penerimaan pantulan gelombag ultrasonik.
Pada dasanya, Ping terdiri dari sebuah chip pembangkit sinyal 40KHz, sebuah speaker ultrasonik dan sebuah mikrofon ultrasonik. Speaker ultrasonik mengubah sinyal 40 KHz menjadi gelombang suara, sementara mikropon ultrasonik berfungsi untuk mendeteksi pantulan balik suaranya. Pin signal pada sensor PING dapat langsung dihubungkan dengan mikrokontroler tanpa tambahan komponen apapun. Ping akan mengirimkan suara ultrasonik ketika sensor PING diberikan pulsa trigger dari mikrokontroler (pulsa high selama 5uS).
Suara ultrasonik dengan frekuensi sebesar 40KHz akan dipancarkan selama rentang waktu 200uS. Suara ini akan merambat di udara dengan kecepatan 344.424m/detik (atau 1cm/29.034uS), mengenai objek, dan kemudian terpantul kembali ke sensor Ping. Selama menunggu pantulan, Ping akan menghasilkan sebuah pulsa high. Pulsa akan akan berhenti / menjadi low ketika suara pantulan terdeteksi oleh Ping. Dengan menghitung lebar pulsa high tersebut, dapat diketahui jarak objek terhadap sensor.
Modul 2 – Dasar Sensor pada Arduino
Modul Ajar Praktikum Otomasi dan Robotika 22
Gambar 6.1 Sensor PING 6.4 Peralatan yang Diperlukan
- Komputer / PC / Laptop dengan port USB - 1x Board Arduino Uno + kabel
- Software Arduino IDE - 1x Sensor PING - 3x Kabel konektor
6.5 Prosedur Percobaan
1. Jalankan aplikasi Arduino IDE. Lalu buka File Examples 06.Sensors Ping
2. Hubungkan sensor PING dengan Arduino Uno dengan susunan sebagai berikut:
Tabel 6.1 Wiring sensor Ping dengan Arduino UNO
PING Arduino UNO
Vcc 5volt
GND GND
Data Pin7
3. Hubungkan board Arduino Uno pada USB komputer, lalu upload program PING pada mikrokontroler. Lalu, buka Serial Monitor. Letakkan sebuah objek di depan sensor PING dengan variasi jarak sesuai pada tabel 5.2. Catat jarak yang terbaca pada sensor PING dengan jarak yang tertera pada penggaris.
Tabel 6.2 Wiring sensor Ping dengan Arduino UNO
Jarak (Penggaris) Jarak (PING)
10 ...
20 ...
30 ...
50 ...
arahkan ke langit-langit ...
4. Letakkan sensor jarak 30 cm dari bidang datar. Lalu ubah orientasi sensor ping terhadap bidang datar sesuai tabel 5.3.
Modul 2 – Dasar Sensor pada Arduino
Modul Ajar Praktikum Otomasi dan Robotika 24
Tabel 6.3 Wiring sensor Ping dengan Arduino UNO
Orientasi Jarak (PING)
0 derajat ...
30 derajat ...
45 derajat ...
-30 derajat ...
-45 derajat ...
5. Jelaskan bagian code berikut berdasarkan hasil pengamatan dari percobaan yang telah Anda lakukan:
PERTEMUAN 7
SENSOR KOMPAS MENGGUNAKAN ARDUINO
7.1 Sub Kompetensi
- Mahasiswa dapat memahami dan menguasai tentang konsep kerja sensor kompas CMPS10 menggunakan port i2c pada papan kontroler Arduino.
7.2 Waktu Pelaksanaan Praktikum:
- Minggu ke-7, Sensor kompas CMPS10 menggunakan Arduino
7.3 Dasar Teori:
Modul sensor CMPS10 merupakan sensor Magnetometer 3-axis terintegrasi dengan accelerometer 3-axis. Modul CMPS10 menggunakan prosesor 16-bit. CMPS10 dirancang untuk mengurangi kesalahan yang disebabkan oleh kemiringkan mounting sensor. CMPS10 menghasilkan keluaran hasil 0-3599 mewakili 0-359,9 atau 0 sampai 255. Sistem kerja sensor kompas memanfaatkan medan magnet bumi. Modul CMPS10 membutuhkan catu daya pada 3,6 - 5V dan arus sebesar 25mA dalam penggunaannya . Ada tiga cara untuk mengakses data dari modul, yaitu antarmuka serial, I2C dan PWM.
Gambar 7.1 Sensor kompas CMPS10 7.4 Peralatan yang Diperlukan
- Komputer / PC / Laptop dengan port USB - 1x Board Arduino Uno + kabel data - Software Arduino IDE
Modul 2 – Dasar Sensor pada Arduino
Modul Ajar Praktikum Otomasi dan Robotika 26
- 1x Sensor CMPS 10 - 4x Kabel konektor
7.5 Prosedur Percobaan
1. Buka dan download library sensor kompas CMPS10 di alamat
https://github.com/kragniz/CMPS10.
2. Ekstrak file CMPS10-master.zip, lalu buka foler CMPS10-master examples compass_test compass_test.ino.
3. Hubungkan sensor CMPS 10 dengan Arduino Uno dengan susunan sebagai berikut:
Tabel 7.1 Koneksi sensor kompas dengan Arduino UNO
CMPS10 Arduino UNO
Vcc 5volt
GND GND
SDA SDA
SCL SCL
4. Upload program compass_test.ino lalu buka Serial Monitor.
5. Ubah-ubah orientasi sensor, lalu amati hasil pada Serial Monitor dan catat hasil pengamatan pada .
Tabel 7.2 Nilai sensor kompas berdasarkan arah mata angin
Arah Mata Angin Nilai Sensor Kompas
Utara ...
Selatan ...
Timur ...
Barat ...
6. Posisikan sensor kompas dengan arah yang tetap (misalkan sudut = 200 derajat). Lalu miringkan sensor kompas pada gerakan roll antara -20 derajat s/d 20 derajat. Apakah data bearing berubah? Seberapa besar perubahan data bearing?
7. Posisikan sensor kompas dengan arah yang tetap. Lalu dekatkan ujung obeng yang bermagnet sekitar 10 cm dari sensor. Apakah data bearing berubah? Jabarkan analisa saudara!
MODUL 3
Dasar Aktuator pada Arduino
Penyusun:
Noorman Rinanto, ST., MT. NIP. 197610142012121002
Syamsiar Kautsar S.ST, MT.
PROGRAM STUDI TEKNIK OTOMASI
JURUSAN TEKNIK KELISTRIKAN KAPAL
POLITEKNIK PERKAPALAN NEGERI SURABAYA
PERTEMUAN 8
KENDALI RELAY MENGGUNAKAN ARDUINO
8.1 Sub Kompetensi:
- Mahasiswa dapat memahami dan mempraktekkan konsep ouput digital pada papan mikrokontroler Arduino untuk mengaktifkan aktuator berupa relay.
8.2 Waktu Pelaksanaan Praktikum:
- Minggu ke-8, Kontrol On/Off rangkaian Relay dan modul Relay Bergantian.
8.3 Dasar Teori:
Relay merupakan salah satu aktuar dalam rangkaian elektronika yang berfungsi sebagai perangkat On-Off switching. Prinsip kerja relay berdasarkan induksi magnet dari arus listrik yang dialirkan di koil yang akan menarik lempengan kontaktor dari posisi ON ke OFF begitu juga sebaliknya. Umumnya sebuah relay memiliki 2 (dua) model kontak yaitu NO (Normally
Opened) dan NC (Normally Closed). Bentuk fisik dari relay bermacam-macam
seperti yang ditunjukkan pada gambar 8.1. Sedangkan untuk menyalakan relay menggunakan sebuah rangkaian driver elektronik seperti ditunjukkan pada gambar 8.2.
Modul 3 – Dasar Aktuator pada Arduino
Modul Ajar Praktikum Otomasi dan Robotika 29
Gambar 8.2 Rangkaian driver relay.
DT-I/O Neo Relay Board seperti yang ditunjukkan pada gambar 8.3 merupakan sebuah modul output yang terdiri dari 8 buah relay mekanik tipe SPDT (Single Pole Double Throw). Masing-masing relay dilengkapi dengan indikator LED serta konektor NO (Normally Open), NC (Normally Close), dan COM (Common). Terdiri dari 8 buah relay mekanik, masing-masing memiliki konektor NO, NC, COM. DT-I/O Neo Relay Board menggunakan plugable terminal block sehingga mempermudah instalasi peralatan ke kontak relay: - Masing-masing relay dilengkapi dengan indikator LED yang menandakan
aktif / tidaknya relay.
- Membutuhkan catu daya +5V DC untuk VCC rangkaian kendali.
- Dilengkapi EMI filter pada jalur input catu daya untuk menekan masuknya noise ke rangkaian kendali lain dalam sistem.
- Input kendali relay kompatibel dengan level tegangan TTL dan CMOS. - Dilengkapi dengan fitur delay untuk melindungi peralatan yang terhubung
ke kontak relay dari kondisi yang tidak pasti saat catu daya diaktifkan. - Opsional pemasangan MOV (Metal Oxide Varistor) di antara NO - COM
atau NC - COM untuk memperpanjang umur kontak dan mencegah timbulnya RFI.
Gambar 8.3 Modul DT I/O - Neo Relay Board
Gambar 8.4 Pin yang digunakan mengakses Neo Relay Board 8.4 Peralatan yang Diperlukan:
- Komputer / PC / Laptop dengan port USB - Board Arduino Uno + kabel
- Software Arduino IDE - 1 x Breadboard - 1 x Resistor 1K Ohm - 1 x Diode 1N4004
- 1 x NPN transistor low power - Modul DT-I/O Neo Relay Board
-8.5 Prosedur Percobaan
1. Buatlah rangkaian driver relay seperti yang ditunjukkan gambar 8.2 dengan no pin input digital sesuai dengan nomor kelompok dan buat programnya untuk menyalakan ON-OFF bergantian dengan selang waktu 1 detik.
Modul 3 – Dasar Aktuator pada Arduino
Modul Ajar Praktikum Otomasi dan Robotika 31
2. Dengan menggunakan modul relay DT-I/O, jalankan aplikasi Arduino IDE. Lalu buat code sebagai berikut:
3. Setelah proses compile berhasil, hubungkan board Arduino Uno dengan modul DT I/O Neo Relay dengan konfigurasi sebagai berikut:
Tabel 8.2 Koneksi antara Arduino Uno dengan modul relay
Arduino Uno Relay 8 Channel
Pin13 IN1 (J1) Pin12 IN2 (J1) Pin11 IN3 (J1) Pin10 IN4 (J1) Pin9 IN5 (J1) Pin8 IN6 (J1) Pin7 IN7 (J1) Pin6 IN8 (J1)
5Volt VCC & V Relay (J2 – J3) GND GND D & GND R (J2 – J3)
4. Upload program ke board Arduino Uno. Lalu amati dan jelaskan apa yang terjadi pada relay pada modul DT I/O Neo Relay.
5. Buat program baru agar relay1 s/d relay8 aktif bergantian dengan rentang waktu 1 deik! (dokumentasikan hasil percobaan Anda)
6. Apakah fungsi IC ULN2803 & IC 74HC541 pada board DT I/O NEO Relay?
Modul 3 – Dasar Aktuator pada Arduino
Modul Ajar Praktikum Otomasi dan Robotika 33
PERTEMUAN 9
Kendali Relay menggunakan Komunikasi Serial Arduino
9.1 Sub Kompetensi:
- Mahasiswa dapat memahami dan mempraktekkan konsep ouput digital pada papan mikrokontroler Arduino melalui komunikasi serial.
9.2 Waktu Pelaksanaan Praktikum:
- Minggu ke-9, kontrol on / off relay via serial
9.3 Dasar Teori:
DT-I/O Neo Relay Board merupakan sebuah modul output yang terdiri dari 8 buah relay mekanik tipe SPDT (Single Pole Double Throw). Masing-masing relay dilengkapi dengan indikator LED serta konektor NO (Normally Open), NC (Normally Close), dan COM (Common). DT-I/O Neo Relay Board menggunakan plugable terminal block sehingga mempermudah instalasi peralatan ke kontak relay. Membutuhkan catu daya +5V DC untuk VCC rangkaian kendali. Dilengkapi EMI filter pada jalur input catu daya untuk menekan masuknya noise ke rangkaian kendali lain dalam sistem. Input kendali relay kompatibel dengan level tegangan TTL dan CMOS. Dilengkapi dengan fitur delay untuk melindungi peralatan yang terhubung ke kontak relay dari kondisi yang tidak pasti saat catu daya diaktifkan. Opsional pemasangan MOV (Metal Oxide Varistor) di antara NO - COM atau NC - COM untuk memperpanjang umur kontak dan mencegah timbulnya RFI.
Gambar 9.2 Pin yang digunakan mengakses Neo Relay Board 9.4 Peralatan yang Diperlukan:
- Komputer / PC / Laptop dengan port USB - Board Arduino Uno + kabel
- Software Arduino IDE
- Modul DT-I/O Neo Relay Board - Kabel konektor
9.5 Prosedur Percobaan
Modul 3 – Dasar Aktuator pada Arduino
Modul Ajar Praktikum Otomasi dan Robotika 35
2. Setelah di-compile, dan tidak terdapat listing code yang salah, hubungkan board Arduino Uno dengan modul relay 8 channel dengan konfigurasi sebagai berikut:
Tabel 9.1 Koneksi antara Arduino Uno dengan modul relay
Arduino Uno Relay 8 Channel
Pin13 IN1 (J1) Pin12 IN2 (J1) Pin11 IN3 (J1) Pin10 IN4 (J1) Pin9 IN5 (J1) Pin8 IN6 (J1) Pin7 IN7 (J1) Pin6 IN8 (J1)
5Volt VCC & V Relay (J2 – J3) GND GND D & GND R (J2 – J3)
3. Buka Tools Serial Monitor, lalu ketikkan “A” + enter, “a” + enter, s/d “g” + enter secara berurutan sesua dengan tabel 2.1. Amati dan catat perubahan yang terjadi pada relay pada tabel 2.1 kolom Kondisi Relay!
Tabel 9.2 Kondisi relay pada Neo Relay Board berdasarkan karakter yang
dikirim
Karakter yang Dikirim Kondisi Relay
“A” + enter ...
“A” + enter ...
“B” + enter ...
“b” + enter ...
4. Jelaskan bagian program berikut, sesuai dengan hasil pengamatan Anda pada langkah 3:
5. Tambahkan program, sehingga Anda dapat mengendalikan kedelapan relay pada DT I/O Neo Relay Board via komunikasi serial!
6. Kenapa huruf besar dan huruf kecil pada percobaan di atas dapat memberikan hasil yang berbeda? Buat kesimpulan dari hasil percobaan saudara!
Modul 3 – Dasar Aktuator pada Arduino
Modul Ajar Praktikum Otomasi da Robotika 37
PERTEMUAN 10
KENDALI MOTOR SERVO MENGGUNAKAN ARDUINO
10.1 Sub Kompetensi:
- Mahasiswa dapat memahami tentang konsep dasar pengendalian motor servo DC menggunakan papan mikrokontroler Arduino.
10.2 Waktu Pelaksanaan Praktikum:
- Minggu ke-10, Kendali motor servo menggunakan Arduino
10.3 Dasar Teori:
Motor servo adalah jenis motor yang digunakan sebagai penggerak pada sistem servo mekanis seperti pada penggerak pada kontrol posisi lengan robot. Secara struktur mesin, motor servo terbagi menjadi 2 macam: servo motor DC dan servo motor AC. Servo motor DC mempunyai konstruksi yang mirip dengan konstruksi motor DC.
Motor servo merupakan sebuah motor DC yang dilengkapi rangkaian kendali dengan sistem closed feedback yang terintegrasi dalam motor tersebut. Pada motor servo posisi putaran sumbu (axis) dari motor akan diinformasikan kembali kerangkaian kontrol yang terdapat di dalam motor servo. Motor servo disusun dari sebuah motor DC, gearbox, variabel resistor (VR) atau potensiometer dan rangkaian kontrol. Potensiometer berfungsi untuk menentukan batas maksimum putaran sumbu (axis) motor servo. Sedangkan sudut dari sumbu motor servo diatur berdasarkan lebar pulsa yang diberikan pada pin kontrol motor servo.
Motor servo adalah motor yang mampu bekerja dua arah (CW dan CCW). Arah dan sudut pergerakan rotor motor servo dapat dikendalikan dengan memberikan variasi lebar pulsa (duty cycle) sinyal PWM pada bagian pin kontrolnya. Sudut kerja motor servo dikendalikan oleh sebuah pulsa selebar ± 20 ms, dimana lebar pulsa high antara 0.5 ms dan 2 ms. Ketika motor servo yang diberikan pulsa sebesar 1.5 ms mencapai gerakan 90°, maka apabila diberikan pulsa kurang dari 1.5 ms maka posisi mendekati 0°, dan apabila diberikan pulsa lebih dari 1.5 ms maka posisi mendekati 180°.
Gambar 10.1 Bentuk motor mini servo
Gambar 8.2 Lebar pulsa untuk mengendalikan posisi motor servo 10.4 Peralatan yang Diperlukan
- Komputer / PC / Laptop dengan port USB - Board Arduino Uno + kabel
- Software Arduino IDE - DC Mini Servo
10.5 Prosedur Percobaan
1. Buka File Examples Servo Sweep.
2. Hubungkan motor servo dengan Arduino Uno dengan susunan sebagai berikut:
Tabel 10.1 Wiring sensor Ping dengan Arduino UNO
Data Arduino UNO
Data Pin9
Vs 5v
Modul 3 – Dasar Aktuator pada Arduino
Modul Ajar Praktikum Otomasi da Robotika 39
3. Upload program Sweep.ino. Apakah yang terjadi pada motor servo?
4. Tambahkan program pada Sweep.ino agar nilai variabel ‘pos’ ditampilkan di serial monitor (sertakan program dan screen shoot hasil tampilan pada serial monitor dalam laporan)!
5. Buat program, untuk membaca masukan data serial, sehingga motor servo akan bergerak sesuai nilai pulsa yang diberikan. (misal “90” + enter, maka motor servo akan bergerak sesuai nilai pulsa = 90).
PERTEMUAN 11
KENDALI MOTOR DC MENGGUNAKAN H-BRIDGE DAN ARDUINO
11.1 Sub Kompetensi:
- Mahasiswa dapat memahami tentang konsep dasar pengendalian motor DC menggunakan rangkaian driver H-bridge dengan papan mikrokontroler Arduino.
11.2 Waktu Pelaksanaan Praktikum:
- Minggu ke-11, Kendali motor DC menggunakan H-Bridge dan Arduino
11.3 Dasar Teori:
Motor DC merupakan motor yang menggunakan sumber tegangan arus searah (Direct Current) dan untuk menjalankan motor tersebut cukup dengan memberikan beda tegangan pada kedua terminal maka motor akan bergerak searah. Apabila polaritas sumber tegangan dibalik dengan sebelumnya, maka arah putaran motor juga akan berlawanan dengan sebelumnya. Komponen dasar motor DC ada 2 (dua) yaitu bagian yang diam atau statis disebut Stator dan bagian yang bergerak atau dinamis disebut Rotor. Baik Rotor dan Stator terdiri dari lilitan yang pada saat digunakan mengandung aliran listrik. Umumnya motor DC mempunyai sumber tegangan bervariasi bergantung tipe motornya misalnya 5v, 12v, 24v dan sebagainya. Adapun bentuk dan skema motor DC dapat ditunjukkan pada gambar 11.1 dan 11.2.
Modul 3 – Dasar Aktuator pada Arduino
Modul Ajar Praktikum Otomasi da Robotika 41
Gambar 11.2 Bagian skema motor DC
Supaya motor DC dapat bergerak berubah ubah tanpa perlu membalik polaritas secara fisik maka dibuatlah sebuah rangkaian pengendali motor DC yang umum disebut H-Bridge driver karena bentuknya yang mirip dengan huruf H dan berfungsi sebagai menjembatani motor DC dalam membalik putaran. Gamabr skematik rangkaian driver tgersebut dapat ditunjukkan pada gambar 11.3. Pada gambar tersebut untuk memutar motor searah jarum jam berarti input A diberi tegangan logika 1 dan input B diberi logika 0. Sedangkan untuk berputar berlawanan dengan jarum jam input A diberi nilai ) dan input B nilai lolgika 1. Rangkaian tesebut menggunakan transistor low current jika dikehendaki untuk mengendalikan motor DC dengan arus yang besar maka dapat menggunakan transistor MOSFET.
Kecepatan putaran motor DC dapat diatur dengan menggunakan teknik manipulasi lebar sinyal dari sumber tegangan dalam satu periode atau yamg umum disebut PWM (Pulse Modulation Width). Teknik tersebut memanfatkan lebar pulsa waktu trigger pada saat On (T_ON) atau bernilai logika 1 dan waktu trigger pada saat Off (T_OFF) atau bernilai logika 0. Dalam perhitunganya setiap periode sinyal terdiri dari T_ON dan T_OFF seperti ditunjukkan pada gambar 11.4. Sedangkan satuan untuk menyatakan kecepatan putaran motor DC dengan menggunakan teknik PWM disebut dc (duty cycle) dimana dc adalah jumlah prosentase nilai T_ON dalam satu periode atau dirumuskan sebagai berikut:
= + = = Dimana: = = = = = =
Gambar 11.4 Ilustrasi sinyal PWM
11.4 Peralatan yang Diperlukan
- Komputer / PC / Laptop dengan port USB - Board Arduino Uno + kabel
- Software Arduino IDE - Motor DC 12v
Modul 3 – Dasar Aktuator pada Arduino
Modul Ajar Praktikum Otomasi da Robotika 43
- 4 x Resistor 150 Ohm - 4 x Diode IN41418 - 4 x Transistor BC548
11.5 Prosedur Percobaan
1. Buatlah rangkain driver H-Bridge seperti yang ditunjukkan pada skematik gambar 11.3. Kemudian buatlah program untuk menjalankan motor DC searah jarum jam dan berlawanan dengan jarum jam kemudian lengkapi tabel hasil percobaan 11.1.
Tabel 11.1 Hasil percobaan putar arah motor DC
A B Putaran motor DC
low Low …
low High …
high Low …
high High …
2. Dengan rangkaian yang sama buatlah program untuk mengatur kecepatan motor DC searah jarum jam dan kemudian lengkapi tabel percobaan 11.2. Ukur dengan menggunakan AVOmeter.
Tabel 11.2 Hasil percobaan kecepatan motor DC
Duty Cycle (%) Tegangan motor (volt)
0 … 25 … 50 … 67 … 78 … 85 … 93 …
3. Kerjakan seperti langkah 2 tetapi dengan membalik putaran berlawanan jarum jam dan catat hasil seperti tabel 11.2.
4. Dari semua percobaan yang telah dilakukan buat analisa dan kesimpulan secara detil.
MODUL 4
Evaluasi Tengah Semester
Penyusun:
Noorman Rinanto, ST., MT. NIP. 197610142012121002
Syamsiar Kautsar S.ST, MT.
PROGRAM STUDI TEKNIK OTOMASI
JURUSAN TEKNIK KELISTRIKAN KAPAL
POLITEKNIK PERKAPALAN NEGERI SURABAYA
PERTEMUAN 12
EVALUASI TENGAH SEMESTER
12.1 Sub Kompetensi:
- Mahasiswa dapat mengerjakan dan mempraktekkan soal-soal yang diujikan pada evaluasi tengah semester.
12.2 Waktu Pelaksanaan Praktikum:
- Minggu ke-12
12.3 Bahan Evaluasi:
MODUL 5
Aplikasi Robotika pada Arduino
Penyusun:
Noorman Rinanto, ST., MT. NIP. 197610142012121002
Syamsiar Kautsar S.ST, MT.
PROGRAM STUDI TEKNIK OTOMASI
JURUSAN TEKNIK KELISTRIKAN KAPAL
POLITEKNIK PERKAPALAN NEGERI SURABAYA
PERTEMUAN 13
APLIKASI LCD MENGGUNAKAN ARDUINO
13.1 Sub Kompetensi:
- Mahasiswa dapat memahami dan mempraktekkan tentang konsep dasar pengendalian LCD (Liquid Crystal Display) dengan papan mikrokontroler Arduino.
13.2 Waktu Pelaksanaan Praktikum:
- Minggu ke-13, Aplikasi kendali LCD menggunakan H-Bridge dan Arduino
13.3 Dasar Teori:
LCD (Liquid Crystal Dispaly) seperti yang ditunjukkan pada gambar 13.1 merupakan perangkat yang berfungsi sebagai pencetak data hasil berupa angka, huruf, karakter atau grafik. Materi LCD terdiri dari sebuah lapisan organik berupa elektroda indium oksida berbentuk seven segment yang diapit oleh 2 (dua) buah lapisan kaca bening. Elektroda-elektroda cair atau yang sering disebut Kristal cair akan mengumpul di daerah yang diberi tegangan. Lapisan polarizer vertical dan horizontal ditutupi oleh molekul-molekul yang terbentuk dari elektroda-elektroda yang mengumpul dan terlihat menjadi gelap.
Gambar 13.1 Bentuk fisik LCD (Liquid Crystal Display).
Dalam LCD dilengkapi dengan memori dan register. Adapaun tipe memori yang ada adalah sebagai berikut:
DDRAM (Display Data Random Access Memory) merupakan memori tempat karakter yang akan ditampilkan berada.
Modul 5 – Aplikasi Robotika pada Arduino
Modul Ajar Praktikum Otomasi da Robotika 47
CGRAM (Character Generator Random Access Memory) merupakan memori untuk menggambarkan pola sebuah karakter dimana bentuk dari karakter dapat diubah-ubah sesuai dengan keinginan.
CGROM (Character Generator Read Only Memory) merupakan memori untuk menggambarkan pola sebuah karakter dimana pola tersebut merupakan karakter dasar yang sudah ditentukan secara permanen oleh pabrikan pembuat LCD (Liquid Cristal Display) tersebut sehingga pengguna tinggal mangambilnya sesuai alamat memorinya dan tidak dapat merubah karakter dasar yang ada dalam CGROM.
Sedangakan register yang ada di LCD antara lain:
Register perintah yaitu register yang berisi perintah-perintah dari
mikrokontroler ke panel LCD (Liquid Cristal Display) pada saat proses penulisan data atau tempat status dari panel LCD (Liquid Cristal Display) dapat dibaca pada saat pembacaan data.
Register data yaitu register untuk menuliskan atau membaca data dari atau
keDDRAM. Penulisan data pada register akan menempatkan data tersebut keDDRAM sesuai dengan alamat yang telah diatur sebelumnya.
Pada LCD terdapat pin-pin yang mempunyai fungsi berbeda-beda yaitu: Pin data adalah jalur untuk memberikan data karakter yang ingin
ditampilkan menggunakan LCD (Liquid Cristal Display) dapat dihubungkan dengan bus data dari rangkaian lain seperti mikrokontroler dengan lebar data 8 bit.
Pin RS (Register Select) berfungsi sebagai indikator atau yang menentukan
jenis data yang masuk, apakah data atau perintah. Logika low menunjukan yang masuk adalah perintah, sedangkan logika high menunjukan data. Pin R/W (Read Write) berfungsi sebagai instruksi pada modul jika low tulis
data, sedangkan high baca data.
Pin E (Enable) digunakan untuk memegang data baik masuk atau keluar.
Pin VLCD berfungsi mengatur kecerahan tampilan (kontras) dimana pin ini
dihubungkan dengan trimpot 5 Kohm, jika tidak digunakan dihubungkan ke ground, sedangkan tegangan catu daya ke LCD sebesar 5 Volt
13.4 Peralatan yang Diperlukan
- Komputer / PC / Laptop dengan port USB - Board Arduino Uno + kabel
- Software Arduino IDE - LCD 2 x 16 Character - 1 x Potensiometer 10K Ohm - 16 x Jumper Wires
13.5 Prosedur Percobaan
1. Buatlah rangkain driver LCD seperti yang ditunjukkan pada skematik gambar 13.2. Dengan koneksi wiring seperti ditunjukkan pada tabel 13.1.
Tabel 13.1 Koneksi wiring rangakaina Driver LCD
No. Koneksi 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 GND 5V
the center pin on the potentiometer Arduino digital pin 12
GND
Arduino digital pin 11 (no connection)
(no connection) (no connection) (no connection) Arduino digital pin 5 Arduino digital pin 4 Arduino digital pin 3 Arduino digital pin 2 5V
Modul 5 – Aplikasi Robotika pada Arduino
Modul Ajar Praktikum Otomasi da Robotika 49
Gambar 13.2 Rangkaian Driver LCD.
1. Kemudian buatlah program seperti contoh kode program berikut:
2. Dengan memodifikasi program diatas coba buatlah beberapa program seperti yang ditunjukkan pada tabel hasil percobaan 13.2.
Tabel 13.2 Hasil percobaan LCD Tulisan LCD Hasil (Bisa / Tidak)
Berkedip 1 det … Berjalan ke kanan …
Berjalan ke kiri … Berjalan dan berkedip …
3. Dari semua percobaan yang telah dilakukan buat analisa dan kesimpulan secara detil.
Modul 5 – Aplikasi Robotika pada Arduino
Modul Ajar Praktikum Otomasi dan Robotika 51
PERTEMUAN 14
APLIKASI DESKTOP PENGENDALI RELAY MENGGUNAKAN
ARDUINO
14.1 Sub Kompetensi:
- Mahasiswa dapat membuat GUI menggunakan software VB.net untuk berkomunikasi dengan mikrokontroler Arduino
- Mahasiswa dapat memahami dan mempraktekkan konsep antar muka untuk mengendalikan aktuator melalui komputer
14.2 Waktu Pelaksanaan Praktikum:
- Minggu ke-14, kontrol on / off relay via serial
14.3 Dasar Teori:
Arduino merupakan platform open-source untuk membuat projek elektronik yang terdiri dari perangkat keras (papan Arduino) dan perangkat lunak (Arduino IDE). Papan Arduino mampu membaca masukan seperti: cahaya pada sensor, sentuhan jari pada tombol, atau pesan dari Twitter dan mengubahnya menjadi keluaran seperti: mengaktifkan motor, menyalakan LED, atau memposting artikel secara on-line. Anda dapat ‘memerintahkan’ mikrokontroler Anda untuk melakukan beberapa proses melalui program yang dibuat di Arduin IDE. Selama bertahun-tahun Arduino telah menjadi digunakan dalam berbagi proyek, seperti untuk membuat perangkat instrumen ilmiah yang kompleks. Arduino didukung sebuah komunitas di seluruh dunia yang terdiri dari pelajar, penggemar, seniman, programer, dan profesional. Mereka memberikan berbagai kontribusi yang luar biasa sehingga Arduino dapat digunakan untuk para pemula maupun tenaga ahli.
DT-I/O Neo Relay Board merupakan sebuah modul output yang terdiri dari 8 buah relay mekanik tipe SPDT (Single Pole Double Throw). Masing-masing relay dilengkapi dengan indikator LED serta konektor NO (Normally Open), NC (Normally Close), dan COM (Common). Terdiri dari 8 buah relay mekanik, masing-masing memiliki konektor NO, NC, COM. DT-I/O Neo Relay
Board menggunakan plugable terminal block sehingga mempermudah instalasi peralatan ke kontak relay:
- Masing-masing relay dilengkapi dengan indikator LED yang menandakan aktif / tidaknya relay.
- Membutuhkan catu daya +5V DC untuk VCC rangkaian kendali.
- Dilengkapi EMI filter pada jalur input catu daya untuk menekan masuknya noise ke rangkaian kendali lain dalam sistem.
- Input kendali relay kompatibel dengan level tegangan TTL dan CMOS. - Dilengkapi dengan fitur delay untuk melindungi peralatan yang terhubung
ke kontak relay dari kondisi yang tidak pasti saat catu daya diaktifkan. - Opsional pemasangan MOV (Metal Oxide Varistor) di antara NO - COM
atau NC - COM untuk memperpanjang umur kontak dan mencegah timbulnya RFI.
Gambar 14.1 Modul DT I/O - Neo Relay Board
Gambar 14.2 Pin yang digunakan mengakses Neo Relay Board 14.4 Peralatan yang Diperlukan:
Modul 5 – Aplikasi Robotika pada Arduino
Modul Ajar Praktikum Otomasi dan Robotika 53
- Komputer / PC / Laptop dengan port USB - Board Arduino Uno + kabel
- Software Arduino IDE & VB.net - Modul DT-I/O Neo Relay Board - Kabel konektor
14.5 Prosedur Percobaan
1. Buka Aplikasi VB.net lalu tambahkan komponen button & comport seperti pada gambar 9.1
Gambar 14.1 Aplikasi GUI pada VB.net
Pada tombol “L1 OFF”, tambahkan code sebagai berikut:
Pada tombol “L1 ON”, tambahkan code sebagai berikut:
Pada tombol “L2 OFF”, tambahkan code sebagai berikut:
Pada tombol “L2 ON”, tambahkan code sebagai berikut:
3. Hubungkan board Arduino Uno dengan modul relay 8 channel dengan konfigurasi sebagai berikut:
Tabel 14.1 Koneksi antara Arduino Uno dengan modul relay
Arduino Uno Relay 8 Channel
Pin13 IN1 (J1) Pin12 IN2 (J1) Pin11 IN3 (J1) Pin10 IN4 (J1) Pin9 IN5 (J1) Pin8 IN6 (J1)
Modul 5 – Aplikasi Robotika pada Arduino
Modul Ajar Praktikum Otomasi dan Robotika 55
Pin7 IN7 (J1)
Pin6 IN8 (J1)
5Volt VCC & V Relay (J2 – J3) GND GND D & GND R (J2 – J3)
4. Upload program kontrol relay via serial pada percobaan 3. Lalu jalankan aplikasi yang sudah dibuat di vb.net. Tekan tombol “Konek” lalu tekan tombol “L1 ON” s/d “L2 OFF” secara bergantian. Amati yang terjadi pada modul relay!
Tabel 14.2 Kondisi relay pada Neo Relay Board berdasarkan tombol yang
ditekan pada GUI
Karakter yang Dikirim Kondisi Relay
Tombol “L1 ON” ... Tombol “L1 OFF” ... Tombol “L2 ON” ... Tombol “L2 OFF” ...
5. Tambahkan komponen button baru, sehingga Anda dapat mengontrol kedelepan relay pada DT I/O Neo Relay Board! (dokumentasikan dalam bentuk gambar)
PERTEMUAN 15
APLIKASI ROBOT LENGAN MENGGUNAKAN ARDUINO
15.1 Sub Kompetensi:
- Mahasiswa memahami dan mempraktekkan konsep antar muka antara PC dengan mikrokontroler untuk mengendalikan aktuator.
15.2 Waktu Pelaksanaan Praktikum:
- Minggu ke-15, Kendali Robot Lengan menggunakan Arduino
15.3 Dasar Teori:
Movit Arm Robot merupakan kit lengan robot yang dibuat untuk kebutuhan komersial maupun edukasi. Movit Arm Robot terdiri dari 5 axis. Movit Arm Robot dilengkapi dengan papan antarmuka berupa joystick yang disertakan dengan kit. Board ini memungkinkan robot untuk dihubungkan ke piranti mikrokontroler. Pada percobaan ini, joystick pada movit arm robot digantikan dengan DT I/O Neo Relay Modul yang terhubung dengan Arduino Uno. Dengan menggunakna GUI dan program komunikasi serial yang telah dibuat dipercobaan sebelumnya, target akhir didapatkan sebuah aplikasi GUI untuk mengendalikan gerakan Movit Robot Arm.
Gambar 15.1 Movit Robot Arm 15.4 Peralatan yang Diperlukan
- Komputer / PC / Laptop dengan port USB - Board Arduino Uno + kabel
Modul 5 – Aplikasi Robotika pada Arduino
Modul Ajar Praktikum Otomasi dan Robotika 57
- Software Arduino IDE - Software VB.net - Power Supply - Movit Robot Arm
15.5 Prosedur Percobaan
1. Hubungkan setiap motor pada 2 buah relay pada DT I/O Neo Relay Board seperti gambar 15.2. (motor untuk gripper tidak digunakan). Tegangan +6 volt diambil dari power suplly.
Gambar 15.2 Wiring untuk kendali Movit Arm Robot
2. Koneksikan DT I/O Neo Relay Board pada board Arduino Uno dengan konfigurasi seperti pada tabal 15.1.
Tabel 15.1 Koneksi papan DT I/O Neo dengan Arduino
Arduino Uno Relay 8 Channel
Pin13 IN1 (J1)
Pin11 IN3 (J1) Pin10 IN4 (J1) Pin9 IN5 (J1) Pin8 IN6 (J1) Pin7 IN7 (J1) Pin6 IN8 (J1)
5Volt VCC & V Relay (J2 – J3) GND GND D & GND R (J2 – J3)
3. Buka aplikasi GUI yang telah Anda buat pada praktikum sebelumnya.
Gambar 15.2 Aplikasi GUI pada VB.net
4. Upload program kontol relay via komunikasi serial yang telah Anda buat pada board arduino Uno.
5. Jalankan aplikasi GUI pada VB.net. Lalu tekan tombol “L1 On” s/d “L8 Off” dan amati hasilnya!
Modul 5 – Aplikasi Robotika pada Arduino
Modul Ajar Praktikum Otomasi dan Robotika 59
Tabel 15.2 Kondisi motor pada Movit Robot Arm berdasarkan tombol yang
ditekan pada GUI
Karakter yang Dikirim Kondisi Motor
(CW/CCW/diam) Tombol “L1 ON” ... Tombol “L1 OFF” ... Tombol “L2 ON” ... Tombol “L2 OFF” ... Tombol “L3 ON” ... Tombol “L3 OFF” ... Tombol “L4 ON” ... Tombol “L4 OFF” ... Tombol “L5 ON” ... Tombol “L5 OFF” ... Tombol “L6 ON” ... Tombol “L6 OFF” ... Tombol “L7 ON” ... Tombol “L7 OFF” ... Tombol “L8 ON” ... Tombol “L8 OFF” ...
6. Ganti baudrate pada GUI sebesar 57600, lalu jalankan kembali program. Apakah lengan robot tetap dapat dikendalikan? Jika tidak, silahkan lakukan trouble shooting sehingga GUI tetap dapat digunakan untuk mengendalikan lengan robot dengan baud rate sebesar 57600!
7. Buat kesimpulan dari percobaan yang telah Anda lakukan dan tuangkan dalam bentuk laporan resmi praktikum!.
Penyusun:
Noorman Rinanto, ST., MT. NIP. 197610142012121002
Syamsiar Kautsar S.ST, MT.
PROGRAM STUDI TEKNIK OTOMASI
JURUSAN TEKNIK KELISTRIKAN KAPAL
POLITEKNIK PERKAPALAN NEGERI SURABAYA
Modul 6 – Evaluasi Akhir Semester
Modul Ajar Praktikum Otomasi da Robotika 60
PERTEMUAN 16
EVALUASI AKHIR SEMESTER
16.1 Sub Kompetensi:
- Mahasiswa dapat mengerjakan dan mempraktekkan soal-soal yang diujikan pada evaluasi akhir semester.
16.2 Waktu Pelaksanaan Praktikum:
- Minggu ke-16
16.3 Bahan Evaluasi:
DAFTAR KEBUTUHAN PERALATAN DAN BAHAN HABIS PRAKTIKUM OTOMASI DAN ROBOTIKA
1. Peralatan
2. Bahan Habis
No. Nama Barang Spesifikasi Jumlah Satuan
1 Komputer/PC Windows 8, Intel i5 Processor, 4
Gb RAM, HDD 1Tb 17 Unit 2 AVO/Multimeter Digital brand: fluke 17 Buah 3 Breadboard Ukuran besar 17 Buah 4 Installer Visual Studio CD Original 17 Buah 5 Solder 60 watt Brand: Dekko 17 Buah 6 DC Power Supply Voltage/Current supply Digital
I/O 17 Buah 7 Tang Potong, Tang Jepit (Cucut) Stainless 17 Buah 8 Penyedot Timah Brand: Dekko 17 Buah
No. Nama Barang Spesifikasi Jumlah Satuan
1 Arduino Uno + Kabel USB Atmega328, 14 DIO, 6 AIO 17 Buah 2 Kabel Jumper Arduino Male - Female 300 Buah 3 Kabel Jumper Arduino Male - Male 300 Buah 4 Push Button Switch Besar, 1Ampere 70 Buah 5 Toggle Switch Kecil, 2 Ampere 70 Buah 6 Motor DC 12V, 1-2 Ampere, With rotary
encoder 17 Buah 7 Relay 5v/12v 35 Buah 8 Potensiometer 10K Ohm 35 Buah 9 Potensiometer 50K Ohm 35 Buah 10 Resistor 1K Ohm ¼ watt 200 Buah 11 Resistor 10K Ohm ¼ watt 200 Buah 12 Resistor 330 Ohm ¼ watt 200 Buah 13 Resistor 1M Ohm ¼ watt 200 Buah 14 LM35 Sensor suhu 3 pin 200 Buah 15 Kapasitor 0.1 uF Non polar 200 Buah 16 Photodiode Besar 50 Buah 17 Phototransistor Standard 50 Buah 18 LDR Besar/Kecil 50 Buah 19 Sensor Ultrasonic PING Brand: Parallax 17 Buah 20 Sensor compass CMPS10 Brand: Sparkfun, etc 17 Buah 21 Motor Servo Standard/ Mini 17 Buah 22 Resistor 150 Ohm ¼ watt 200 Buah 23 Diode IN41418 2 Ampere 200 Buah 24 Transistor BC548 NPN transistor 200 Buah 25 LCD 2x16 Blue/Green screen, HD4470 17 Buah 26 Robot Arm Brand: Movit MR-999E 17 Buah 27 Timah Solder Besar 17 Buah 28 Modul driver motor DC IC driver L298 17 Buah 29 LED Red, Green, Blue 50 Buah 30 Modul Relay Neo DT I/O 17 Buah