Flowchart Algoritma Kedua Perancangan Perangkat Lunak

27 Berikut ini adalah penjelasan algoritma yang pertama bagian mikrokontroler: a. Pertama kali mikrokontroler akan menunggu perintah dari smartphone. b. Mikrokontroler akan melakukan pengecekan apakah ada perintah atau tidak. Jika ada maka mikrokontroler akan menerima perintah itu dan jika tidak maka mikrokontroler akan menunggu sampai ada perintah yang dikirimkan dari smartphone. c. Mikrokontroler akan mengirimkan perintah agar robot bergerak dalam bentuk paket data ke RCB-4 atau servo controller. d. Kemudian mikrokontroler akan melakukan pengecekan apakah ada perintah baru dari smartphone atau tidak. Jika ada maka jalannya program pada mikrokontroler akan kembali ke awal dan siap untuk menerima perintah baru. Jika tidak maka mikrokontroler akan menunggu hingga ada perintah baru dari smartphone. Berikut ini adalah penjelasan algoritma yang pertama bagian RCB-4: a. Pertama kali RCB-4 akan melakukan pengecekan apakah ada perintah yang dikirim oleh mikrokontroler atau tidak. Jika ada maka RCB-4 akan menerima perintah yang dikirim oleh mikrokontroler. Jika tidak maka RCB-4 akan menunggu hingga adanya kiriman paket data gerakan yang dikirim oleh mikrokontroler. b. RCB-4 akan memerintahkan robot untuk bergerak sesuai perintah yang dikirim oleh mikrokontroler. c. Setelah melakukan gerakan, RCB-4 akan menunggu perintah baru yang dikirimkan oleh mikrokontroler.

3.3.2. Flowchart Algoritma Kedua

Algoritma yang kedua ini merupakan algoritma baru yang dibuat oleh penulis saat robot menerima perintah untuk melakukan gerakan berulang looping yang bergerak maju. 28 . Gambar 3.13. Diagram Alir Algoritma Kedua START Kirim perintah motion maju berulang ke RCB-4 Apakah nilai accelero menyatakan robot sedang terjatuh? Kirim perintah motion bangun ke RCB-4 Apakah posisi kaki robot sebelah kanan atau kiri yang berada di depan? Kirim data ke RCB-4 agar robot melangkah dengan kaki kiri terlebih dahulu Apakah ada perintah baru dari smarthphone? Apakah langkah awal robot kaki kanan atau kiri dahulu? Start berjalan dengan kaki kanan terlebih dahulu Start berjalan dengan kaki kiri terlebih dahulu Lakukan motion Apakah posisi kaki robot sebelah kanan atau kiri yang berada di depan? Kirim data ke mikrokontroler bahwa kaki kanan sedang berada di depan Kirim data ke mikrokontroler bahwa kaki kanan sedang berada di depan Apakah ada cut motion? Terima perintah dari mikrokontroler Ya Kiri Ya Tidak Kanan Kiri Kanan Tidak Kanan Kiri Ya Tidak Algoritma mikrokontroler Algoritma RCB4 A A Terima data posisi kaki robot kanan atau kiri yang berada di depan dari RCB-4 Kirim data ke RCB-4 agar robot melangkah dengan kaki kanan terlebih dahulu C Tidak Ya A Terima data langkah awal kaki robot dari mikrokontroler B B B C C Apakah ada perintah dari smartphone? Terima Perintah dari Smarthphone Apakah ada perintah dari mikrokontroler? Ya Tidak Lakukan cut motion 29 Berikut ini adalah penjelasan algoritma yang kedua bagian mikrokontroler : a. Pertama kali mikrokontroler akan menunggu perintah dari smartphone. b. Mikrokontroler akan melakukan pengecekan apakah ada perintah atau tidak. Jika ada maka mikrokontroler akan menerima perintah itu dan jika tidak maka mikrokontroler akan menunggu sampai ada perintah yang dikirimkan dari smartphone. c. Mikrokontroler akan mengirimkan perintah agar robot bergerak maju dalam bentuk paket data ke RCB-4 atau servo controller. d. Setelah menerima perintah, mikrokontroler akan melakukan pengecekan apakah robot sedang dalam posisi jatuh atau tidak. Jika ya, maka mikrokontoler akan mengirimkan perintah ke RCB-4 agar robot melakukan gerakan bangun dari jatuh. Jika tidak akan dilakukan pengecekan posisi kaki robot. e. Mikrokontroler akan menerima data yang dikirimkan balik oleh RCB-4. Data yang dikirimkan berupa informasi posisi kaki robot. Apakah kaki robot kanan berada di depan atau kiri yang berada di depan. f. Setelah mendapat data informasi posisi kaki robot dari RCB-4, mikrokontroler akan melakukan pengecekan. Jika kaki robot kanan berada di depan, maka mikrokontroler akan mengirim balik data ke RCB-4 agar RCB-4 memerintahkan robot agar bergerak maju dengan awalan kaki kiri maju terlebih dahulu. Demikian sama halnya ketika kaki robot kiri yang berada di depan. g. Mikrokontroler akan melakukan pengecekan apakah ada perintah baru atau tidak. Jika ada perintah baru, maka program akan kembali ke awal program, jika tidak maka program akan kembali ke pengecekan posisi robot jatuh atau tidak. Program akan berjalan berulang terus menerus hingga sistem dimatikan. Berikut ini adalah penjelasan algoritma yang kedua bagian RCB-4 : a. Pertama kali RCB-4 akan menunggu perintah dari mikrokontroler. b. RCB-4 akan melakukan pengecekan apakah ada perintah yang dikirim oleh mikrokontroler atau tidak. Jika ada maka RCB-4 akan menerima perintah yang dikirim oleh mikrokontroler. Jika tidak maka RCB-4 akan menunggu hingga adanya kiriman paket data gerakan yang dikirim oleh mikrokontroler. 30 c. Setelah menerima data berupa informasi awalan langkah kaki robot dari mikrokontroler, RCB-4 akan melakukan pengecekan robot harus bergerak dengan awalan kaki kanan atau kiri terlebih dahulu. Jika kanan maka robot akan bergerak maju dengan kaki kanan terlebih dahulu, demikian sebaliknya. d. RCB-4 akan memberi perintah kepada robot agar robot bergerak maju dengan langkah kaki awal sesuai dengan data yang telah diperoleh dari mikrokontroler. e. Kemudian RCB-4 akan melakukan pengecekan apakah posisi kaki robot kanan berada di depan atau posisi kaki robot kiri berada di depan. Jika kaki kanan berada di depan, maka RCB-4 akan mengirimkan data ke mikrokontroler bahwa posisi kaki robot kanan berada di depan. Demikan sebaliknya. f. Pada akhir program, RCB-4 akan mengecek apakah ada perintah motion cut. Perintah motion cut adalah kondisi dimana robot dipaksa untuk mengubah gerakannya. Jika ada maka RCB-4 akan melakukan proses motion cut dan kemudian kembali ke awal program untuk menunggu perintah dari mikrokontroler lagi. Jika tidak maka program akan kembali untuk melakukan gerakan maju secara berulang.

3.3.3. Flowchart Algoritma Ketiga