Untuk mengendalikan robot baik mobile robot, android, hexapod ataupun drone, joystick adalah sebuah perangkat HID yang seringkali digunakan. Joystick PS2 memiliki 14 input digital dan 4 buah analog input yang cukup variatif untuk memberikan masukan pada robot. Artikel berikut ini akan membahas cara menggunakan joystick ps2 pada mikrokontroler agar dapat digunakan untuk aplikasi robotik.
Di sini Joystick PS2 yang kita gunakan telah dimodifikasi dengan mengganti konektornya menjadi DB9 agar lebih mudah diperoleh konektor pasangannya
Data, pin ini berfungsi untuk mengirim data dari joystick ps2 ke mikrokontroler, data dikirim dengan bentuk serial sinkron 8 bit fallin edge.
Command, pin ini berfungsi untuk mengirim data dari mikrokontroler ke joystick ps2, data yang di kirim berbentuk serial sinkron 8 bit fallin edge.
Vcc, Joystick ps2 membutuhkan power suplly sebesar 5 volt.
ATT, adalah pin yang digunakan untuk memilih josystick ps2 mana yang aktif ( select ).
Clock, berfungsi untuk sinkronisasi pengiriman dan penerimaan data antara mikrokontroler dan joysick ps2. Sinyal clock dibangkitkan oleh mikrokontroler.
Acknolwedge adalah sinyal yang dikirim oleh joystick ps2 apabila telah menerima data dari mikrokontroler, ACK akan berlogika low kira-kira satu siklus clock pada saat data 8 bit telah terkirim.
Transmisi data
Semua transmisi data antara mikrokontroller dan joystick adalah 8 bit serial sinkron falling edge ( data masuk pada saat clock berubah dari tinggi ke rendah ). Jika mikrokontroller ingin mengambil data dari joystick maka mikrokontroller harus membuat pin ATT berlogika low dan mengirim data sebagai start command (0×01). Setelah start commad diterima oleh joystick maka joystick akan mengirim data yang menunjukkan ID dari joystick ( 0×41 untuk joystik digital dan 0×73 untuk joystick analog red mode ). Pada saat josytick mengirim ID mikrokontroller juga mengirim data ( 0×42 ) untuk meminta data dari joystick setelah data ( 0×42 ) diterima oleh joystick maka joystisk membalas dengan mengirimkan data ( 0×52 ) sebagai pemberitahuan bahwa data akan dikirim, setelah itu joystik mengirimkan data 6 x 8 bit yang berisi informasi tombol mana saja yang ditekan ( semua tombol adalah aktif low ).
Namun untuk pemula, pengambilan data joystick ps2 yang menggunakan transmisi synchronous serial tersebut bukanlah hal yang mudah. Untuk itu Delta Robotic Studio saat ini telah menyediakan makro untuk antarmuka joystick ps2 sehingga pembuatan program untuk menggunakan joystick ps2 dapat dilakukan dengan mudah karena menggunakan visual dan flowchart.
Walaupun pada gambar di atas tampak bahwa makro yang dibuat menggunakan skrip dalam assembler, bukan berarti pengguna harus menguasai bahasa assembler, karena pengguna hanya cukup memasang makro tersebut pada flowchart saja. Hanya saja pengguna tingkat advance yang menguasai bahasa assembler akan diperbolehkan untuk mengedit skrip tersebut.
Software Delta Robotic Studio dapat didownload di link berikut
Update Makro dan Library untuk aplikasi ini ada di link berikut
Update yang dilakukan adalah:
- Library DS1307
- Library Joystick
- Revisi board file ST-51 dan TRN-02
- Tambahan makro-makro LCD, DS1307 dan Joystick
File Flowchart Aplikasi Joystick dapat didownload di link berikut
DELTA ELECTRONIC, Paulus Andi Nalwan, ST








