Gambar 4.16 Implementasi sensor ultrasonic.
4.2. Implementasi Perangkat Lunak
Penulis menggunakan dua buah software pengembang program yaitu arduino ide untuk membuat program pada microcontroller dan basic 4 android untuk
pemrograman pada remot control android.
4.2.1. Implementasi Program Microcontroller
Program Mikrokontroler pada arduino uno dibuat menggunakan bahasa pemprograman c dengan software arduino ide. Program yang telah dibuat selanjutnya
dicopile dan di upload langsung ke arduino uno yang telah dihubungkan ke komputer menggunakan kabel usb. Implementasi pemrograman microcontroller pada arduino
uno dapat dilihat pada gambar 4.17.
Universitas Sumatera Utara
Universitas Sumatera Utara
Gambar 4.17 Implementasi pemrograman Microcontroller. 4.2.1.1. Potongan Program Microcontroller
Potongan Program untuk mengontrol pergerakan roda robot sehingga robot dapat bergerak maju, mundur, belok kiri dan belok kanan.
case STOP: digitalWritepinMtrBan [0],LOW;
digitalWritepinMtrBan [1],LOW; digitalWritepinMtrBan [2],LOW;
digitalWritepinMtrBan [3],LOW; digitalWritepinMtrNaikTurun [0],LOW;
digitalWritepinMtrNaikTurun [1],LOW; digitalWritepinMtrBor [0],LOW;
digitalWritepinMtrBor [1],LOW;
Universitas Sumatera Utara
Universitas Sumatera Utara
digitalWritepinMtrBor [2],LOW; digitalWritepinMtrBor [3],LOW;
break; case MAJU:
digitalWritepinMtrBan [0],HIGH; digitalWritepinMtrBan [1],LOW;
digitalWritepinMtrBan [2],HIGH; digitalWritepinMtrBan [3],LOW;
break; case MUNDUR:
digitalWritepinMtrBan [0],LOW; digitalWritepinMtrBan [1],HIGH;
digitalWritepinMtrBan [2],LOW; digitalWritepinMtrBan [3],HIGH;
break; case KANAN:
digitalWritepinMtrBan [0],HIGH; digitalWritepinMtrBan [1],LOW;
digitalWritepinMtrBan [2],LOW; digitalWritepinMtrBan [3],LOW;
break; case KIRI:
digitalWritepinMtrBan [0],LOW; digitalWritepinMtrBan [1],LOW;
digitalWritepinMtrBan [2],HIGH; digitalWritepinMtrBan [3],LOW;
break; case PUTARKANAN:
digitalWritepinMtrBan [0],HIGH; digitalWritepinMtrBan [1],LOW;
digitalWritepinMtrBan [2],LOW; digitalWritepinMtrBan [3],HIGH;
break; case PUTARKIRI:
digitalWritepinMtrBan [0],LOW; digitalWritepinMtrBan [1],HIGH;
digitalWritepinMtrBan [2],HIGH; digitalWritepinMtrBan [3],LOW;
break;
Universitas Sumatera Utara
Universitas Sumatera Utara
Potongan Program untuk mengontrol pergerakan penggerak mesin penggali sehingga mesin penggali dapat mengubah posisi mesin penggali dari posisi turun dan naik.
case NAIK: if jarak 2{
digitalWritepinMtrNaikTurun [0],LOW; digitalWritepinMtrNaikTurun [1],HIGH;
digitalWritepinMtrBor [0],LOW; digitalWritepinMtrBor [1],HIGH;
digitalWritepinMtrBor [2],LOW; digitalWritepinMtrBor [3],HIGH;
}else{ digitalWritepinMtrNaikTurun [0],LOW;
digitalWritepinMtrNaikTurun [1],LOW; digitalWritepinMtrBor [0],LOW;
digitalWritepinMtrBor [1],LOW; digitalWritepinMtrBor [2],LOW;
digitalWritepinMtrBor [3],LOW; }
break;
case TURUN: if jarak 12 {
digitalWritepinMtrNaikTurun [0],HIGH; digitalWritepinMtrNaikTurun [1],LOW;
digitalWritepinMtrBor [0],HIGH; digitalWritepinMtrBor [1],LOW;
digitalWritepinMtrBor [2],HIGH; digitalWritepinMtrBor [3],LOW;
}else{ digitalWritepinMtrNaikTurun [0],LOW;
digitalWritepinMtrNaikTurun [1],LOW; digitalWritepinMtrBor [0],LOW;
digitalWritepinMtrBor [1],LOW;
Universitas Sumatera Utara
Universitas Sumatera Utara
digitalWritepinMtrBor [2],LOW; digitalWritepinMtrBor [3],LOW;
} break;
Potongan Program untuk mengontrol mesin penggali sehingga mesin penggali dapat mengubah arah putaran mata bor dari kekanan, kekiri hingga berhenti.
case BORPUTARSTOP: digitalWritepinMtrBor [0],LOW;
digitalWritepinMtrBor [1],LOW; digitalWritepinMtrBor [2],LOW;
digitalWritepinMtrBor [3],LOW; break;
case BORPUTARKANAN: digitalWritepinMtrBor [0],HIGH;
digitalWritepinMtrBor [1],LOW; digitalWritepinMtrBor [2],HIGH;
digitalWritepinMtrBor [3],LOW; break;
case BORPUTARKIRI: digitalWritepinMtrBor [0],LOW;
digitalWritepinMtrBor [1],HIGH; digitalWritepinMtrBor [2],LOW;
digitalWritepinMtrBor [3],HIGH; break;
Output yang dikeluarkan dari arduino akan berubah-ubah sesuai perintah dari remote control. Arduino akan mengeluarkan output high dan low yang dikirimkan ke
masing-masing actuator sehingga arah putaran yang dihasilkan actuator dapat berubah. Setiap actuator akan menerima dua output dari arduino kedua outpout
tersebut akan menentukan arah puteran actuator. Ketika kedua output
Universitas Sumatera Utara
Universitas Sumatera Utara
bernilai low makan actuator tidak akan berputar. Ketika output bernilai high dan low maka motor akan berputar ke kanan begitupun sebaliknya.
4.2.1.2. Skema Proses Penanaman Program di Mikrokontroller. Penanaman program pada microcontroller yang terdapat dalam modul arduino uno
jauh lebih mudah dan praktis bila dibandingkan dengan penanaman program microcontroller pada umumnya. Biasanya proses penanaman program pada
microcontroller membutuhkan perangkat lain seperti downloader, software pendukung seperti progisp dan perangkat lainnya. Berbeda dengan proses penanaman program
pada arduino, listing program yang telah dibuat pada software arduino ide dapat langsung dicompile dan diupload ke microcontroller melalui software tersebut dengan
menggunakan kabel usb. Proses penanaman program pada microcontroller dapat dilihat pada gambar 4.18.
Gambar 4.18Penanaman pemrograman Microcontroller.
4.2.2. Implementasi Program Remote control