• Tidak ada hasil yang ditemukan

T1 612009034 BAB III

N/A
N/A
Protected

Academic year: 2017

Membagikan "T1 612009034 BAB III"

Copied!
23
0
0

Teks penuh

(1)

BAB III

PERANCANGAN SISTEM

Pada bab ini akan dijelaskan mengenai perancangan dari perangkat keras, serta perangkat lunak dari algoritma robot.

3.1. Gambaran Sistem

Sistem yang direalisasikan dalam skripsi ini adalah sebuah sistem yang berfungsi untuk mengendalikan sebuah robot humanoid. Dalam pengertian bahwa penulis tidak membuat robot humanoiddan servo controllernya akan tetapi penulis membuat sistem dan algoritma agar robot humanoid dapat berjalan secara cepat dan stabil. Sistem yang dibuat oleh penulis bertujuan untuk mengendalikan robot humanoid soccer dalam menyelesaikan misi perlombaan sepak bola pada Kontes Robot Sepak Bola Indonesia. Dalam Kontes Robot

Sepak Bola Indonesia, robot harus dapat bergerak dengan cepat dan stabil agar dapat mendekati bola dan menendang bola ke arah gawang dengan cepat. Penulis membuat sistem dengan berbagai macam sensor untuk membantu robot dalam memulai pergerakan yang cepat, stabil, dan dapat bangun sendiri ketika robot dalam posisi jatuh.

Atmega 324 Sma rtp hone Bluetooth

Bluetooth DF V3

To mbo l On/Off

Acce lerom e ter RAS-2

To mbo l On/Off

Gyrosco pe KRG-4 16 DOF Servo KRS-2552HV

TX TX

RX RX

Se rvo Ko ntroler RCB-4

Lithium po lymer 11.1 V 1300 m Ah Lithium po lymer

7.4 V 1000 mAh

(2)

Gambar 3.1. menunjukkan blok diagram sistem secara keseluruhan yang dirancang. Secara umum sistem yang dirancang terdiri dari kontrol utama, kontrol aktuator, konstruksi

robot, sensor, aktuator, komunikasi, dan sumber daya listrik.

1. Kontrol Utama

Kontrol utama dalam blok diagram sistem di atas adalah smartphone berbasis android samsung galaxy S3 dan sebuah mikrokontroler Atmega 324.

2. Kontrol Aktuator

Kontrol aktuator dalam blok diagram sistem di atas adalah servo kontroler RCB-4 yang berkomunikasi dengan mikrokontroler melalui komunikasi serial. 3. Sensor

Dalam bagian ini terdapat beberapa perangkat keras, diantaranya :

a. Accelerometer RAS-2

b. Gyroscope KRG-4

c. Tombol On/Off 4. Aktuator

Aktuator adalah penggerak dari robot. Dalam blok diagram sistem di atas terdapat 16 DOF servo yang bertugas sebagai alat penggerak robot. Servo yang digunakan adalah servo tipe KRS-2552HV.

5. Komunikasi

Komunikasi sangat diperlukan untuk dapat mengirim dan menerima data antara smartphone dengan mikrokontroler. Agar smartphone dapat berkomunikasi dengan mikrokontroler secara nirkabel, digunakan sebuah modul bluetooth tipe

DF-BluetoothV3 yang dipasang pada mikrokontroler. 6. SumberDayaListrik

Sumber Daya Listrik untuk robot ini dibagi menjadi dua bagian. Baterai

lithium polymer7.4 volt digunakan sebagai sumber daya listrik pada mikrokontroler,

accelerometer, dan modul bluetooth. Tegangan sebesar 7.4 volt akan diturunkan menggunakan regulator DC to DCmenjadi 5 volt.

Sedangkan baterai lithium polymer 11.1 volt digunakan sebagai sumber daya

(3)

3.2. Perancangan Perangkat Keras

Pada bagian ini akan dijelaskan mengenai perancangan perangkat keras. Perancangan

perangkat keras yang akan dijelaskan meliputi sistem kontrol, konstruksi robot, dan perangkat keras elektronik.

3.2.1. Sistem Kontrol

Pada bagian ini akan dijelaskan mengenai perancangan sistem kontrol robot. Gambar 3.2 menunjukkan gambaran sistem secara umum.

Sistem kontrol pada robot dibagi menjadi 2 bagian utama, yaitu kontrol aktuator robot dan kontrol utama. Kontrol aktuator robot dalam hal ini adalah servo controller untuk

mengontrol sistem gerak robot yang keseluruhannya terdiri dari motor servo, dimana servo controller mendapat perintah gerakan yang sudah didefinisikan di kontrol utama. Sedangkan kontrol utama bertugas untuk mensinkronisasi antara gerak robot dengan perintah yang telah diolah oleh mikrokontroler sehingga nantinya robot dapat melakukan tugas-tugas sesuai dengan perintah yang dikirim dari smartphone.

(4)

1. Kontrol Aktuator Robot

Robot akan memiliki 16 motor servo, dengan rincian 3 servo di setiap lengan dan 5 servo di setiap kaki. Dengan demikian robot akan memiliki 16 derajat kebebasan sehingga

pergerakan robot akan mendekati pergerakan dari manusia. Untuk mengontrol 16 servo di bagian lengan dan kaki digunakan servo controller yang akan dibantu oleh sebuah dual-axis gyroscopeyang berfungsi sebagai sensor keseimbangan dan stabilitas robot saat bergerak dan

dual-axis accelerometer yang berfungsi sebagai sensor kemiringan untuk mengetahui ketika posisi robot miring atau posisi robot dalam keadaan jatuh.

2. Kontrol Utama

Kontrol utama pada robot terdiri dari sebuah smartphone untuk mengirimkan perintah gerakan robot dan sebuah mikrokontroler untuk mengolah data yang berupa perintah. Modul

bluetooth digunakan untuk komunikasi secara serial antara smartphone dan mikrokontroler. Selain itu kontrol utama juga bertugas sebagai pengontrol servo controller.

Smartphonepada tugas akhir ini digunakan sebagai remote controluntuk mengendalikan robot secara wireless. Smartphone yang digunakan adalah Samsung galaxy S3 yang telah tertanam OS android di dalamnya. Aplikasi remote dibuat dengan software eclipse. Data yang dikirim dari smartphone android berupa paket data motion yang akan diterima oleh mikrokontroler. Pengiriman data dilakukan secara serial melalui bluetooth sehingga

pengiriman data dapat dilakukan secara wireless.

(5)

3.2.2 Konstruksi Robot

Pada bagian ini akan dijelaskan mengenai perancangan konstruksi dan realisasinya serta penjelasan lebih lanjut mengenai aktuator (servo) yang digunakan pada robot.

Gambar 3.4. Perancangan mekanik robot

(6)

Robot menggunakan perpaduan antara aluminium dan acrylic untuk bodinya. Perpaduan kedua bahan ini dimaksudkan agar robot memiliki bobot yang ringan sehingga dalam

bergerak diperoleh kecepatan dan keseimbangan yang baik. Robot ini akan memiliki 16

degree of freedom, dengan rincian 5 di setiap kaki, dan 3 di setiap lengan. Servo yang dipilih adalah servo yang memiliki torsi tinggi dengan gear berbahan metal dan yang mampu untuk mengembalikan nilai, seperti sudut, beban, torsi, dll. Sedangkan ukuran telapak kaki akan menyesuaikan dengan tinggi robot agar mampu menyokong robot agar tetap stabil.

Tabel 3.1. Tabel Keterangan Mekanik Robot.

HARDWARE

Dimensi (p×l×t) : 170×129×380 [mm]

Berat ± 1,5 [kg]

DOF 16 (tangan 3×2, kaki 5×2)

Koneksi RCB-4 Serial USB adapter HS

Tabel 3.2. Tabel Spesifikasi Servo KRS-2552HV.

Sudut Operasi Maksimal 270 derajat

Torsi Maksimal 14 kg

Kecepatan Tanpa Beban 0,14 s/60 derajat

Ukuran 41×21×30,55 mm

Berat 41,5 g

Tegangan Kerja 9-12 Volt

3.2.3 Perangkat Keras Elektronik

Pada bagian ini akan dijelaskan mengenai board sistem minimum mikrokontroler Atmega 324, sensor accelerometer RAS-2, sensor gyroscope KRG-4, modul DF-bluetooth V3, dan

servo controller RCB-4.

1. Board Sistem Minimum Mikrokontroler Tipe Atmega 324

(7)

Pada perancangan sistem minimum Atmega 324 digunakan kristal oscillator

(XTAL) dengan nilai 11.0592Mhz sebagai pembangkit / pemompa data yaitu bersifat

timer (semacam clock)/pulsa digital. Pada sistem minimum Atmega 324 juga digunakan IC MAX232 untuk mengubah level tegangan menjadi level tegangan TTL karena untuk berkomunikasi dengan port COM pada servo controller RCB-4 dibutuhkan level tegangan TTL.

Berikut adalah tabel konfigurasi penggunaan pin pada mikrokontroler utama Atmega 324 yang digunakan pada robot.

Tabel 3.3. Konfigurasi pin pada mikrokontroler utama.

No Nama Port Fungsi

1 PA4 Accelerometeraxis Y

2 PA5 Accelerometeraxis X

3 PB1 Flag inputdata motionberakhir

4 PB2 Flag outputdata motionkurva

5 PB3 Flag inputdata kaki kanan

6 PB4 Flag inputdata kaki kiri

7 PB5 Downloader

8 PB6 Downloader

9 PB7 Downloader

10 PD0 RecieverRCB-4 ke

mikrokontroler

11 PD1 Transmitermikrokontroler ke

RCB-4

12 PD2 Reciever mikrokontroler ke

android

13 PD3 Transmiterandroid ke

mikrokontroler

14 PD4 Kontrol servo pan

15 PD5 Kontrol servo tilt

16 PD6 Flag outputdata motion cut

17 PD7 Flag outputdata nilai awal

motion

2. Sensor Accelerometer RAS-2

Sensor accelerometer yang digunakan pada robot adalah accelerometer tipe RAS-2. Sensor ini memiliki enam pin dan dibuat dengan sangat kecil sehingga mempermudah dalam peletakan sensor di dalam robot. Tiga pin atas terdiri dari pin ADC, VCC, dan GND untuk sumbu x sedangkan tiga pin bawah terdiri dari pin ADC,

(8)

kemiringan sensor. Sebaliknya jika sensor dimiringkan kearah sumbu –x, maka pin ADC akan memberikan nilai negatif dan naik secara linear sesuai dengan kemiringan

sensor pada sumbu –x. Kerja sensor pada kemiringan sumbu y dan –y sama dengan kerja sensor pada kemiringan sumbu x dan –x.

Keuntungan menggunakan sensor ini adalah selain diduat sangat kecil, sensor ini memiliki tingkat ketelitian yang tinggi dan nilainya bertambah secara linear sehingga mempermudah untuk mengetahui posisi robot ketika sedang terjatuh.

Gambar 3.6. Sensor AccelerometerRAS-2

Data dari sensor ini akan dikonversi oleh mikrokontroler menjadi nilai digital dengan resolusi 10 bit dan dengan tegangan referensi sebesar 2.56 volt. Sumber

tegangan dari sensor ini didapat dari baterai lithium polimer 7.4 volt yang sudah diturunkan tegangannya menjadi 5 volt dengan regulator. Sedangkan pin output ADC axis x pada sensor akan diakses oleh pin ADC5 pada mikrokontroler dan pin output ADC axis y pada sensor akan diakses oleh pin ADC4 pada mikrokontroler. Data digital yang telah diolah oleh mikrokontroler akan digunakan sebagai pembanding untuk mengetahui posisi robot saat robot sedang dalam posisi jatuh.

Pemasangan sensor ini diletakkan pada bagian punggung robot. Penulis meletakkan sensor ini pada bagian punggung karena pada bagian punggung, robot tidak memiliki sendi sehingga posisi sensor tidak berubah. Jika posisi sensor berubah, maka data yang didapat akan berubah juga sehingga dapat menyebabkan kesalahan

saat data dibandingkan untuk mengetahui posisi robot sedang dalam posisi jatuh atau tidak.

3. Sensor Gyroscope KRG-4

(9)

memiliki 3 pin yaitu pin ADC, VCC, dan GND. Prinsip kerja hampir sama dengan sensor accelerometer hanya saja sensor gyroscope ini digunakan untuk mengubah

offset servo kaki robot jika robot berada dalam keadaan tidak seimbang sehingga robot menjadi seimbang kembali.

Gambar 3.7. Sensor GyroscopeKRG-4

Data dari sensor ini akan dikonversi oleh mikrokontroler menjadi nilai digital dengan resolusi 10 bit dan dengan tegangan referensi sebesar 2.56 volt. Sumber

tegangan dari sensor ini didapat dari batrai lithium polimer 11.1 volt yang sudah diturunkan tegangannya menjadi 5 volt dengan regulator. Sedangkan pin output ADC axis x pada sensor akan diakses oleh pin AD1 pada servo controller dan pin output ADC axis y pada sensor akan diakses oleh pin AD2 pada servo controller. Data digital yang telah diolah oleh servo controller akan digunakan sebagai pembanding

untuk mengetahui posisi robot saat robot mendapatkan gaya dorong ke depan, belakang, kanan, dan kiri

4. Modul Bluetooth

Modul bluetooth yang digunakan adalah modul bluetooth tipe DF-Bluetooth V3. Berikut adalah gambar dari DF-Bluetooth V3.

(10)

Modul Bluetooth ini akan diakses oleh mikrokontroler melalui USART0 agar

mikrokontroler dapat berkomunikasi dengan smartphone untuk mengambil data berupa perintah secara wireless.Sumber tegangan dari sensor ini didapat dari baterai

lithium polimer 7.4 volt yang sudah diturunkan tegangannya menjadi 5 volt dengan regulator. Pin TX pada modul Bluetooth akan dihubungkan dengan Pin RX pada mikrokontroler USART0. Sedangkan Pin RX pada modul Bluetooth akan dihubungkan dengan Pin TX pada mikrokontroler USART0.

Penulis menggunakan modul Bluetooth ini karena modul DF-Bluetooth V3 merupakan sebuah modul Bluetooth yang dapat diatur sesuai kebutuhan pemakai. Modul ini dapat diatur untuk memiliki password sehingga saat mode pairing

berlangsung, perangkat yang melakukan pairing dengan modul ini harus memberikan memasukkan password. Dengan adanya password, maka hal ini akan mengurangi kemungkinan adanya gangguan dari perangkat lain sehingga komunikasi antara

smartphone dengan mikrokontroler tidak terganggu.

Untuk dapat menerima dan mengirim data, USART0 pada mikrokontroler menggunakan parameter komunikasi 8 data, 1 stop, dan even parity dengan baud rate

115200 sehingga modul bluetooth harus diprogram atau diatur agar memiliki parameter komunikasi dan baud rateyang sama.

5. Servo Controller RCB-4

Pada robot humanoid R2C digunakan servo controller tipe RCB-4. Servo controller ini memiliki 10 port ADC, 10 port PIO, dan 8 port SIO. Port ADC dapat digunakan untuk konversi tegangan analog menjadi digital. Port ini dapat digunakan

(11)

Gambar 3.9. Konfigurasi ID Servo pada Robot Kondo KHR-3HV.

Pada gambar 3.11 dapat dilihat bahwa ada delapan servo ID yang memberi tanda enam belas serial servo yang digunakan sebagai aktuator robot yaitu servo ID nomor 1,2,4,6,7,8,9, dan 10. Setiap satu nomor servo ID digunakan untuk memberi tanda dua buah servo, satu sebelah kiri dan satu sebelah kanan. Servo ID 0 tidak

digunakan karena pada realisasinya, servo kepala menggunakan mikro servo biasa yang dikontrol dengan menggunakan mikrokontroler.

(12)

Pada gambar 3.12 dapat dilihat bahwa RCB-4 atau servo controller yang digunakan pada robot memiliki 8 buah port SIO. Satu port SIO akan digunakan untuk

mengendalikan 2 buah serial servo. Jadi port SIO1 digunakan untuk mengendalikan serial servo ID1 (kanan dan kiri), port SIO2 digunakan untuk mengendalikan serial servo ID2, port SIO3 digunakan untuk mengendalikan serial servo ID4, port SIO4 digunakan untuk mengendalikan serial servo ID6, port SIO5 digunakan untuk mengendalikan serial servo ID7, port SIO6 digunakan untuk mengendalikan serial servo ID8, port SIO7 digunakan untuk mengendalikan serial servo ID9, dan port SIO8

digunakan untuk mengendalikan serial servo ID10.

Pembuatan gerakan atau motion dilakukan dengan cara mengubah setiap nilai

offset serial servo yang dikontrol oleh port-port SIO pada RCB-4 dengan menggunakan software heart to heart yang telah disediakan oleh platform kondo. Dengan membuat serangkaian gerakan dengan cara mengubah nilai offset serial servo pada tiap delay waktu yang telah diperhitungkan akan dihasilkan sebuah gerakan

seperti berjalan, menendang, bangun dari jatuh, dll.

(13)

Berikut adalah tabel konfigurasi penggunaan pin pada servo controller RCB-4 yang digunakan pada robot.

Tabel 3.4. Konfigurasi pin pada RCB4.

No Nama Port Fungsi

1 COM Komunikasi serial dengan mikrokontroler

2 SIO1 Kontrol serial servo

3 SIO2 Kontrol serial servo

4 SIO3 Kontrol serial servo

5 SIO4 Kontrol serial servo

6 SIO5 Kontrol serial servo

7 SIO6 Kontrol serial servo

8 SIO7 Kontrol serial servo

9 SIO8 Kontrol serial servo

10 PIO1 Flag outputdata kaki kanan

11 PIO2 Flag outputdata kaki kiri

12 PIO3 Flag outputdata motionberakhir

13 PIO7 LED indikator kaki kanan 14 PIO8 LED indikator kaki kiri 15 PIO9 LED indikator awal motion

16 PIO10 LED indikator akhir motion

17 AD1 Gyroscopeaxis X

18 AD2 Gyroscopeaxis Y

19 AD5 Input datamotion cut

20 AD6 Input data awal motion

21 AD7 Inputdata motionkurva

3.3. Perancangan Perangkat Lunak

Penulis membuat algoritma baru agar robot dapat bergerak dengan cepat dan stabil dengan cara membuat robot dapat memotong gerakan secara paksa (motion cut)

dan melakukan metode pengecekan posisi kaki agar robot dapat mengetahui posisi kaki terakhir robot saat robot dipaksa untuk memotong gerakan. Algoritma saat robot melakukan satu dengan gerakan lainnya berbeda-beda. Oleh karena itu penulis

membuat tiga buah algoritma baru yang berbeda-beda yang diterapkan pada robot agar performa robot lebih optimal.

(14)

menentukan posisi kaki robot (Algoritma saat R2C mengikuti KRCI 2013). Flowchart

kedua adalah algoritma baru saat robot menerima instruksi motion berulang yang

bergerak maju. Flowchartketiga adalah algoritma baru saat robot menerima instruksi

motion berulang yang bergerak geser. Sedangkan flowchartkeempat adalah algoritma baru saat robot menerima instruksi motionyang tidak berulang.

3.3.1. FlowchartAlgoritma Pertama

Algoritma pertama ini adalah algoritma yang digunakan robot R2C dalam

perlombaan KRSBI 2013. Algoritma yang digunakan masih sangat sederhana. Robot belum dapat melakukan motion cut dan belum dapat mengetahui posisi terakhir kaki robot. Gambar 3.13. menunjukkan diagram alir algoritma pertama dimana sebelah kiri adalah algoritma pada mikrokontroler dan sebelah kanan adalah algoritma pada RCB-4 (servo controller).

Gambar 3.12. Diagram Alir Algoritma Pertama START

Kirim perintah paket data motion ke

RCB-4

Apakah ada perintah baru dari

smarthphone?

Lakukan motion Terima perintah dari

mikrokontroler Ya

Tidak

Tidak Algoritma

mikrokontroler

Algoritma RCB4

A

Ya

A

Apakah ada perintah dari

smartphone?

Terima Perintah dari Smarthphone

Apakah ada perintah dari

mikrokontroler?

(15)

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. FlowchartAlgoritma Kedua

Algoritma yang kedua ini merupakan algoritma baru yang dibuat oleh penulis

(16)

.

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

(17)

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

(18)

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. FlowchartAlgoritma Ketiga

(19)

Gambar 3.14. Diagram Alir Algoritma Ketiga

START

Kirim perintah motion geser 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 bergeser?

Kirim data ke RCB-4 agar robot melangkah dengan kaki kiri terlebih

dahulu

Apakah ada perintah baru dari

smarthphone?

Apakah motion geser kanan atau

geser kiri?

Start berjalan dengan kaki kanan

terlebih dahulu

Start berjalan dengan kaki kiri

terlebih dahulu

Lakukan motion geser kanan

Kirim data ke mikrokontroler bahwa kaki kanan sedang bergeser ke

kanan

Kirim data ke mikrokontroler bahwa kaki kanan sedang bergeser ke

kiri

Apakah ada cut motion? Terima perintah dari

mikrokontroler Ya Kiri Ya Tidak Kanan Kiri Kanan Tidak Ya Tidak Algoritma mikrokontroler Algoritma RCB4 A A Terima data dari

RCB-4 posisi kaki robot kanan atau kiri yang

bergeser

Kirim data ke RCB-4 agar robot melangkah dengan kaki kanan

terlebih dahulu C Tidak Ya A B B C C Lakukan motion geser kiri Apakah

ada perintah dari smartphone?

Terima Perintah dari Smarthphone

Apakah ada perintah dari

(20)

Berikut ini adalah penjelasan algoritma yang ketiga 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 geser kanan atau kiri 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 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 bergerak terlebih dahulu.

f. Setelah mendapat data informasi posisi kaki robot dari RCB-4, mikrokontroler akan melakukan pengecekan. Jika kaki robot kanan bergerak terlebih dahulu, 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 bergerak

terlebih dahulu. Proses pengiriman data langkah awal robot ini akan tetap dilakukan oleh mikrokontroler tetapi RCB-4 akan mengabaikan data yang dikirimkan karena untuk melakukan gerakan bergeser baik itu kanan ataupun kiri tidak dibutuhkan data tentang pergerakan kaki yang harus melangkah terlebih dahulu karena gerakan bergeser baik itu kanan ataupun kiri

pergerakannya selalu ke arah samping, berbeda dengan gerakan maju.

(21)

Berikut ini adalah penjelasan algoritma yang ketiga 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 gerakanyang dikirim oleh mikrokontroler.

c. RCB-4 akan melakukan pengecekan apakah perintah dari mikrokontroler berupa data geser kanan atau kiri. Jika kanan maka robot akan bergerak geser

ke kanan dengan kaki kanan terlebih dahulu. Jika kiri maka robot akan bergerak geser ke kiri dengan kaki kiri terlebih dahulu.

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. RCB-4 akan memberi perintah agar robot berjalan geser ke kanan atau ke kiri

sesuai dengan perintah yang diberikan oleh mikrokontroler.

f. Kemudian RCB-4 akan mengirimkan data berupa informasi apakah kaki kanan atau kiri yang bergerak terlebih dahulu ke mikrokontroler. Jika robot bergeser ke kanan berarti kaki kanan robot yang bergerak terlebih dahulu. Jika robot bergeser ke kiri berarti kaki kiri robot yang bergerak terlebih dahulu. g. 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 geser ke kanan atau geser ke kiri sesuai dengan perintah yang telah

dikirim oleh mikrokontroler.

3.3.4. FlowchartAlgoritma Keempat

(22)

Gambar 3.15. Diagram Alir Algoritma Keempat

Berikut ini adalah penjelasan algoritma yang keempat 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 melakukan gerakan yang tidak berulang dalam bentuk paket data ke RCB-4 atau servo controller.

START

Kirim perintah motion tidak berulang ke

RCB-4

Apakah nilai accelero menyatakan robot sedang

terjatuh?

Kirim perintah motion bangun ke

RCB-4

Apakah ada perintah baru dari

smarthphone?

Lakukan motion

Apakah ada cut motion? Terima perintah dari

mikrokontroler Ya Ya Tidak Tidak Ya Tidak Algoritma mikrokontroler Algoritma RCB4 A A Tidak Ya A Apakah ada perintah dari

smartphone?

Terima Perintah dari Smarthphone

Apakah ada perintah dari

mikrokontroler?

Ya Tidak

(23)

Gerakan yang tidak berulang adalah gerakan dimana tidak ada proses perulangan dalam pembuatan gerakan tersebut seperti gerakan menendang,

bangun dari jatuh, dan gerakan stand by.

d. Setelah menerima perintah, mikrokontroler akan melakukan pengecekan apakah robot sedang dalam posisi jatuh atau tidak. Jika ya, maka mikrokontoler mengirimkan perintah ke RCB-4 agar robot melakukan gerakan bangun dari jatuh. Jika tidak akan dilakukan pengecekan posisi kaki robot. e. 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 keempat 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 gerakanyang dikirim oleh mikrokontroler.

c. RCB-4 akan memberi perintah agar robot melakukan gerakan yang tidak berulang sesuai dengan perintah yang diberikan oleh mikrokontroler.

d. 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

Gambar

Gambar 3.1. Blok Diagram Sistem
Gambar 3.1. menunjukkan blok diagram sistem secara keseluruhan yang dirancang.
Gambar 3.2. Gambaran Sistem Secara Umum
Gambar 3.3. Samsung galaxy S3 dan aplikasi remote
+7

Referensi

Garis besar

Dokumen terkait

Sistem yang direalisasikan dalam skripsi ini adalah sebuah sistem yang digunakan untuk mempertahankan keseimbangan robot agar dapat berjalan dengan stabil saat

Data yang dikirimkan oleh remote control diterima mikrokontroler dan dimasukkan pada PORT D3 yang berfungsi sebagai interupsi eksternal 0 (nol).. Sebuah paket data

Pada saat state ini dipicu, parameter perintah arah gerak (x dan y) dari high layer application diubah menjadi set sudut untuk roll dan pitch yang dibatasi sampai ± 20°

Robot Lengan Pembuat pola batik Mikrokontroler Komputer Penerimaan dan Pengiriman Data Penerimaan dan Pengiriman Data Servo Controller Inverse Kinematics Graphical User

Pada micro based proses perubahan posisi shaft servo dilakukan di dalam mikrokontroler; PC hanya mengirimkan instruksi berupa konstanta variabel yang sesuai

Setelah membaca data dari push button, maka mikrokontroler memberikan perintah untuk menggerakkan motor servo pertama agar mengeluarkan minuman sesuai dengan perintah yang

Kemudian flex sensor akan mengirimkan data berupa nilai untuk menggerakkan motor servo sesuai dengan lekukan pada flex sensor dan robot akan menirukan gerakan yang

Blok Output Blok output atau hasil keluaran setelah diproses oleh mikrokontroler adalah perintah untuk memutar motor servo untuk membuka tempat sampah, led dan modul SIM800L sebagai