4.1.1. Pembahasan Pada Program Perangkat Lunak Arduino IDE
Pada penelitian dengan sistem lengan robot dengan penggerak motor stepper dan motor servo, program perangkat lunak arduino IDE digunakan untuk menulis program,
pembacaan data serial dilakukan dari perangkat lunak arduino IDE yang akan dikirimkan ke mikrokontroler arduino. Pengiriman berupa data pulsa - pulsa digital ke mikrokontroler
arduino dan nantinya akan diolah dan dikirimkan lagi ke driver motor stepper untuk menggerakan motor stepper. Program yang ditulis pada perangkat lunak arduino IDE selain
pembacaan dan pengiriman data adalah program untuk mengatur kecepatan motor stepper, kemudian step yang digunakan yang mempengaruhi berapa derajat yang dibuat dalam satu
step, karena motor stepper dapat menghasilkan step dari full step yang memiliki derajat 1,8° dalam setiap stepnya, kemudian ada half step yaitu setengah dari full step, 14 step
yaitu setengah dari half step, 18 step yaitu setengah dari 14 step, 116 step yaitu setengah dari 18 step, dan terakhir 132 step yaitu setengah dari 116 step. Karena driver motor
stepper
yang digunakan bisa mencapai 132 step maka nantinya yang akan digunakan adalah 132 step sehingga pergerakan akan bisa lebih teliti. Gambar 4.1. Merupakan
tampilan umum dari perangkat lunak arduino IDE yang akan digunakan dalam menulis program pada mikrokontroler arduino Uno R3
Gambar 4.1. Gambar Tampilan Perangkat Lunak Arduino IDE PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
Sebelum melakukan penulisan program utama untuk menjalankan sistem. Seluruh dungsi dan variable yang digunakan dalam proses pengoperasian program harus
dideklarasikan terlebih dahulu. Pendefinisian fungsi dan variable pada sistem lengan robot dengan penggerak motor stepper dan motor servo ini merupakan program inisiasi. Inisiasi
pada sistem adalah inisiasi untuk library motor servo dan driver motor stepper yang akan digunakan. Inisiasi batasan mapping pulsa pulsa digital yang dapat dibaca motor servo dan
driver
motor stepper. Gambar 4.2. di bawah ini adalah contoh dari program untuk menggerakan motor stepper
dengan konfigurasi full step dan berputar searah jarum jam sebanyak 200 step.
Gambar 4.2. Contoh Program Full Step
Dari percobaan yang dilakukan berhasil membuat motor stepper berputar searah jarum jam sebanyak 200 kali dengan radius setiap step adalah 1,8° pada titik pusatnya. Dari hasil
yang diamati maka untuk motor stepper dapat berputar satu putaran penuh adalah 200 step jika menggunakan konfigurasi full step.
Pada Gambar 4.3 konfigurasi yang digunakan adalah 132 step PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
Gambar 4.3 Konfigurasi Untuk 132 step
Pada gambar 4.3 konfigurasi yang digunakan adalah 132 step yaitu masukan sinyal pada pin MS1 dikondisikan HIGH, masukan sinyal pada MS2 dikondisikan HIGH dan masukan
sinyal pada MS3 juga dikondisikan HIGH sehingga jika setiap step pada konfigurasi full step adalah 1,8° maka setiap step pada konfigurasi 132 step adalah 0,05625° sehingga
untuk membuat motor stepper dapat berputar satu putaran penuh, pada konfigurasi 132 step membutuhkan 6400 step. pada driver DRV8825 untuk mengubah konfigurasi dari step
yang digunakan adalah dengan mengubah masukan sinyal pada MS1 MS2 dan MS3 dengan masukan sinyal high atau low, maka terdapat sembilan konfigurasi masukan high
dan low pada pin MS1 MS2 dan MS3. Pada tabel 4.1 di tunjukan konfigurasi dari sinyal masukan untuk MS1 MS2 dan MS3 dari full step hingga 132 step
Tabel 4.1 Konfigurasi Masukan sinyal MS1 MS2 dan MS3
M0MS1 M1MS2
M2MS3 Mikrostep
Low Low
Low Full step
High Low
Low Half step
Low High
Low 14 step
High High
Low 18 step
Low Low
High 116 step
High Low
High 132 step
Low High
High 132 step
High High
High 132 step
Penempatan kontroler joystick pada arduino adalah pada pin analog 0 A0 analog 1 A1 dan analog 2 A2 pada masing masing pin analog telah dihubungkan ke kontroler
sebagai berikut, untuk sudut X maka pin kontroler X dihubungkan ke pin analog 0 A0 pada arduino, kemudian untuk sudut Y maka pin kontroler Y dihubungkan ke pin analog 1
A1 Pada arduino sedangkan untuk sudut Z maka pin kontroler Z dihubungkan ke pin analog 2 A2 pada arduino. Karena pada satu controler hanya terdapat 2 pin analog yaitu
Pin X dan Y maka kontroler yang digunakan ada 2 buah kontroler joystick pada kontroler pertama akan digunakan sebagai sudut X dan sudut Y sedangkan pada kontroler kedua pin
X akan digunakan sebagai sudut Z. Pada gambar 4.4 adalah konfigurasi dari kontroler joystick
pada arduino
Gambar 4.4 konfigurasi kontroler pada arduino
Pada gambar 4.5 akan ditunjukan konfigurasi dari pin MS1 MS2 dan MS3 pada arduino.
Karena ketiga driver motor stepper menggunakan konfigurasi yang sama yaitu konfigurasi 132 step maka untuk MS1 pada ketiga driver dijadikan satu yaitu pada pin 5 pada arduino,
kemudian untuk MS2 pada ketiga driver dijadikan satu yaitu pada pin 4 pada arduino, PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
sedangkan untuk MS3 pada ketiga driver juga dijadikan satu yaitu pada pin 6 pada arduino sehingga lebih hemat dalam penggunaan pin pada arduino. Karena pin pada arduino hanya
terbatas pada pin digital sebanyak 13 pin dan analog sebanyak 8 pin
Gambar 4.5 konfigurasi dari MS1 MS2 dan MS3 pada pin arduino
Pada gambar 4.6 adalah konfigurasi untuk pin direction pin step dan pin sleep untuk ketiga driver stepper, untuk driver pertama pin direction dihubungkan ke pin digital 2
sedangkan pin step pada driver pertama dihubungkan ke pin digital 3 dan pin sleep pada driver
pertama dihubungkan ke pin digital 7. Konfigurasi untuk driver kedua adalah pada pin direction driver kedua dihubungkan ke pin digital 9 kemudian pin step pada driver
kedua dihubungkan ke pin digital 8 dan pin sleep pada driver kedua dihubungkan ke pin digital 10. Kemudian untuk konfigurasi untuk driver ketiga adalah pada pin direction driver
ketiga dihubungkan ke pin digital 12 kemudian untuk pin step pada driver ketiga dihubungkan ke pin digital 11 sedangkan untuk pin sleep pada driver ketiga dihubungkan
ke pin digital 13.
Gambar 4.6 konfigurasi pin direction, step dan sleep ketiga driver
Untuk program utama pada gambar 4.7 diperlihatkan inputan yang diberikan berupa pembacaan nilai analog dari kontroler joystick yaitu antara 0 sampai 1023. Untuk
menggerakan motor stepper maka dibuat jika nilai analog kurang dari 300 maka motor akan berputar CW dan jika joystick dilepas maka motor akan berhenti berputar. Dan jika
nilai analog diatas 400 maka motor stepper akan berputar CCW.
Gambar 4.7 program utama penggerak motor stepper
4.2. HASIL PERANCANGAN PERANGKAT KERAS