Komunikasi Robot Menggunakan Topologi
Gbest
dalam
Pertandingan KRCI 2012 Kategori
Humanoid
Soccer
Disusun Oleh:
Nama : Mario Kusuma NRP : 0822055
Jurusan Teknik Elektro, Fakultas Teknik Universitas Kristen Maranatha
Jl. Prof.Drg.Suria Sumantri, MPH no. 65, Bandung, Indonesia
ABSTRAK
Dalam pertandingan Kontes Robot Cerdas Indonesia (KRCI) tahun 2012, panitia menetapkan peraturan baru yaitu setiap robot yang bertanding dalam pertandingan KRCI kategori humanoid pemain bola harus diperlengkapi dengan kemampuan menerima perintah dari Referee Box yang dikirimkan secara nirkabel melalui Wi-Fi. Permasalahannya adalah dalam pertandingan yang mempertandingkan banyak robot dalam waktu bersamaan akan menimbulkan terjadinya tabrakan antar robot, bahkan terjadi perebutan bola antar robot dalam satu tim.
Untuk mengatasi permasalahan tersebut, dalam tugas akhir ini dilakukan perancangan robot humanoid yang dilengkapi dengan modul Wi-Fi dan penambahan modul komunikasi ZigBee sebagai sarana komunikasi antar robot. Komunikasi antar robot menggunakan topologi gbest.
Berdasarkan hasil pengamatan dalam tugas akhir ini, robot berhasil menerima seluruh perintah yang dikirimkan oleh referee box. Setelah penambahan kemampuan komunikasi antar robot, dalam 10 kali percobaan kick off terjadi satu kali tabrakan dan dalam simulasi pertandingan terjadi 2 kali tabrakan, namun perebutan bola antar sesama robot dalam tim tidak terjadi.
Robot Communication Using Gbest Topology in KRCI 2012
Competition Humanoid Soccer Category
Composed By:
Nama : Mario Kusuma NRP : 0822055
Electrical Engineering Maranatha Christian University
Jl. Prof.Drg.Suria Sumantri, MPH no.65, Bandung, Indonesia
ABSTRACT
Indonesian Intelligent Robot Contest 2012 comitee set a new rule for hummanoid soccer category. Each robot must be able to receive the instruction from the Referee Box, which is transmitted by a Wi-Fi device. Another problem comes when multiple robot competes in single games, there will be a collision with other robot or a struggle to get the ball between team mates.
To overcome those problem, a design of humanoid robot soccer which equipped with Wi-Fi and ZigBee module created in this final project. Inter robot communication using gbest topology.
Based on the experiment in this final project, the robot succeed to receive referee box instruction after the Wi-Fi module implemented. There were one collision in 10 times free kick simulation and two times collision in game simulation. Ball struggling did not occured in this final project experiment.
DAFTAR ISI
Halaman
LEMBAR PENGESAHAN
PERNYATAAN ORISINALITAS LAPORAN
LEMBAR PERNYATAAN PERSETUJUAN PUBLIKASIKARYA ILMIAH UNTUK KEPENTINGAN AKADEMIS
KATA PENGANTAR
ABSTRAK ... I
ABSTRACT ... II
DAFTAR ISI ... III
DAFTAR GAMBAR... VI
DAFTAR TABEL ... VIII
BAB I PENDAHULUAN
I.1 Latar Belakang Masalah ...1
I.2 Identifikasi Masalah ...1
I.3 Perumusan Masalah ...2
I.4 Tujuan ...2
I.5 Pembatasan Masalah...2
I.1 Sistematika Penulisan ...3
BAB II LANDASAN TEORI II.1 Peraturan Kontes Robot Cerdas Indonesia (KRCI) Robot Soccer Humanoid League 2012 [4] ...4
II.1.1 Spesifikasi Robot [4] ...5
II.1.2 Konfigurasi Sistem Wasit Menggunakan Referee Box [3] ...6
II.2 Komunikasi Antar Robot [1],[2] ...10
II.3 Pengoperasian CM-510 [7] ...13
II.4 CM-510 Communication Device Connection Jack [7] ...15
II.6 Wi-Fi shield V2.1 [6] ...18
II.7 Zig-110 [7] ...19
BAB III PERANCANGAN DAN REALISASI III. 1 Realisasi Robot...21
III.1.1 Sistem Mekanika Robot Humanoid...21
III.1.2 Sistem Elektronika Robot Pemain Bola ...23
III.1.3 Sistem Komunikasi Robot ...26
III. 2 Algoritma Pemrograman Robot Humanoid Pemain Bola ...28
III.2.1 Subroutine Ambil Data dari Kamera...30
III.2.2 Subroutine Cari Bola ...32
III.2.3 Subroutine Komunikasi Antar Robot ...33
III.2.4 Subroutine Ambil Data dari Referee Box ...35
III.2.5 Subroutine Gerakan Berjalan pada Robot ...36
III.2.6 Subroutine Gerakan Menendang Bola ...37
BAB IV DATA PENGAMATAN DAN ANALISIS IV.1 Data Pengamatan Kinerja Robot Pemain Bola ...39
IV.1.1 Pengujian Kemampuan Robot dalam Menendang Bola...39
IV.1.2 Pengujian Kecepatan Berjalan Robot ...40
IV.1.3 Pengujian Kemampuan Sensor Kamera Mendeteksi Bola ...41
IV.1.4 Pengujian Jarak Penerimaan ZigBee ...41
IV.1.5 Pengujian Jarak Maksimum Koneksi Modul Wi-Fi dengan Wi-Fi Acces Point ...42
IV.2 Pengujian Keluaran Pengontrol Mikro ATMEGA 8 ...43
IV.2.1 Tim Robot Berada Pada Tim Cyan...45
IV.2.2 Tim Robot Berada pada Tim Magenta ...47
IV.2.3 Tim Robot Tidak Terdaftar pada Referee Box...49
IV.3 Uji Coba Koordinasi antar Robot ...51
v
BAB VKESIMPULAN DAN SARAN
V.1 Kesimpulan ...56 V.2 Saran ...56
DAFTAR PUSTAKA ...IX
LAMPIRAN A PROGAM UTAMA PADA ROBOT NOMOR 2 LAMPIRAN B PROGRAM UTAMA PADA ROBOT NOMOR 3 LAMPIRAN C PROGRAM PADA ATMEGA 8
DAFTAR GAMBAR
Gambar 2.1 Graphic User Interface (GUI) Referee Box ... 6
Gambar 2.2 Data yang dikirimkan oleh referee box, diambil menggunakan software Wireshark ... 8
Gambar 2.3 Kedua perilaku umum PSO ... 12
Gambar 2.4 Pada topologi lingkaran (a), setiap individu berinteraksi dengan sejumlah k-buah tetangga terdekat (pada gambar k=2). Topologi Whell (b) ... 12
Gambar 2.5 Tampilan antar muka dari perangkat lunak RoboPlus Motion ... 14
Gambar 2.6 Tampilan antarmuka dari software RoboPlus Task ... 14
Gambar 2.7 Posisi dan fungsi dari masing-masing pin ... 15
Gambar 2.8 Struktur paket data serial pada CM-510 ... 16
Gambar 2.9 Tampilan perangkat lunak HaViMo GUI ... 17
Gambar 2.10 Wi-Fi Shield V2.1... 18
Gambar 2.11 Contoh perintah yang dikirimkan ke Wi-Fi Shield melalui software Putty 19 Gambar 2.12 Zig-110 yang terhubung dengan CM-510 ... 19
Gambar 2.13 ID modul Zigbee pada software Roboplus Manager ... 20
Gambar 3.1 Bagian robot yang diukur dan keterangan dimensi robot ... 21
Gambar 3.2 Struktur Bioloid Premium Type A dan peletakan motor servo pada robot 23 Gambar 3.3 Diagram blok sistem elektronika robot ... 23
Gambar 3.4 Posisi peletakan sistem elektronika pada robot ... 24
Gambar 3.5 Skema ATMEGA 8 ... 25
Gambar 3.6 Diagram blok sistem komunikasi robot ... 26
Gambar 3.7 Tampilan saat setting alamat remote id pada software roboplus manager. 28 Gambar 3.8 Diagram alir program utama robot ... 29
Gambar 3.9 Subroutine ambil data dari kamera ... 30
Gambar 3.10 Hubungan goal position dengan posisi sudut motor servo pada posisi horn servo tampak muka ... 31
Gambar 3.11 Subroutine cari bola ... 33
vii
Gambar 3.15 Subroutine gerakan berjalan robot ... 37
Gambar 3.16 Subroutine gerakan menendang bola ... 38
Gambar 4.1 Penempatan robot pada posisi kick off ... 51
Gambar 4.2 Pergerakan robot dan pergerakan bola ... 51
Gambar 4.3 Salah satu robot yang berada di area kick off bergerak mendekati bola . .. 53
Gambar 4. 4 Robot nomor 2 berhenti di luar lingkaran kick off ... 54
Gambar 4. 5 Robot nomor 2 mendekati bola ... 54
Gambar 4. 6 Robot nomor 2 bersiap menendang bola ... 54
DAFTAR TABEL
Tabel 2.1 Fungsi tombol-tombol pada software referee box ... 7
Tabel 2.2 Struktur data UDP dari referee box ... 8
Tabel 2.3 Spesifikasi kamera HaViMo 2.0 ... 16
Tabel 3.1 Dimensi robot ... 22
Tabel 3.2 Konfigurasi variabel warna pada kamera HaViMo ... 25
Tabel 3.3 Konfigurasi network pada modul Wi-Fi ... 27
Tabel 4.1 Kemampuan robot dalam menendang bola ... 39
Tabel 4.2 Kecepatan berjalan robot humanoid ... 40
Tabel 4.3 Jarak maksimum kamera dalam mendeteksi bola ... 41
Tabel 4.4 Jarak maksimum penerimaan ZigBee ... 42
Tabel 4.5 Jarak penerimaan dan kuat sinyal penerimaan modul Wi-Fi ... 43
Tabel 4.6 Respon robot terhadap perintah Referee Box ... 44
Tabel 4.7 Perubahan nilai port input digital pada CM-510 terhadap perintah dari referee box, tim robot berada pada tim cyan ... 45
Tabel 4.8 Perubahan nilai port input digital pada CM-510 terhadap perintah dari referee box, tim robot berada pada tim magenta ... 48
Tabel 4.9 Perubahan nilai port input digital pada CM-510 terhadap perintah dari referee box, pada referee box tidak terdapat tim robot tersebut ... 49
Tabel 4.10 Data pengamatan gerakan dan komunikasi antar robot ... 52
LAMPIRAN A
[Bioloid Premium]-Robot 2 v 2
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
22:
26:
27:
28:
29:
30:
31:
32:
33:
34:
35:
36:
37:
38:
39:
40:
41:
42:
43:
44:
45:
46:
47:
48:
49:
50:
52:
53:
54:
55:
56:
57:
58:
59:
60:
61:
62:
63:
64:
65:
66:
67:
68:
69:
70:
71:
72:
73:
74:
75:
78:
79:
80:
81:
82:
83:
84:
85:
86:
87:
88:
89:
90:
91:
92:
93:
94:
95:
96:
97:
98:
99:
100:
101:
102:
103:
105:
106:
107:
108:
109:
110:
111:
112:
113:
114:
115:
116:
117:
118:
119:
120:
121:
122:
123:
124:
125:
126:
127:
130:
131:
132:
133:
134:
135:
136:
137:
138:
139:
140:
141:
142:
143:
144:
145:
146:
147:
148:
149:
150:
153:
154:
155:
156:
157:
158:
159:
160:
161:
162:
163:
164:
165:
166:
167:
168:
169:
170:
171:
172:
173:
174:
175:
176:
177:
180:
181:
182:
183:
184:
185:
186:
187:
188:
189:
190:
191:
192:
193:
194:
195:
196:
197:
198:
199:
200:
201:
202:
203:
204:
206:
207:
208:
209:
210:
211:
212:
213:
214:
215:
216:
217:
218:
219:
220:
221:
222:
223:
224:
225:
226:
227:
228:
229:
230:
233:
234:
235:
236:
237:
238:
239:
240:
241:
242:
243:
244:
245:
246:
247:
248:
249:
250:
251:
252:
253:
254:
255:
258:
259:
260:
261:
262:
263:
264:
265:
266:
267:
268:
269:
270:
271:
272:
273:
274:
275:
276:
277:
278:
279:
280:
281:
282:
285:
286:
287:
288:
289:
290:
291:
292:
293:
294:
295:
296:
297:
298:
299:
300:
301:
302:
303:
304:
305:
306:
307:
310:
311:
312:
313:
314:
315:
316:
317:
318:
319:
320:
321:
322:
323:
324:
325:
326:
327:
328:
329:
330:
331:
334:
335:
336:
337:
338:
339:
340:
341:
342:
343:
344:
345:
346:
347:
348:
349:
350:
351:
352:
353:
354:
355:
358:
359:
360:
361:
362:
363:
364:
365:
366:
367:
368:
369:
370:
371:
372:
373:
374:
375:
376:
377:
378:
379:
380:
381:
384:
385:
386:
387:
388:
389:
390:
391:
392:
393:
394:
395:
396:
397:
398:
399:
400:
401:
402:
403:
404:
405:
406:
407:
408:
410:
411:
412:
413:
414:
415:
416:
417:
418:
419:
420:
421:
422:
423:
424:
425:
426:
427:
428:
429:
430:
431:
432:
433:
434:
437:
438:
439:
440:
441:
442:
443:
444:
445:
446:
447:
448:
449:
450:
451:
452:
453:
454:
455:
456:
457:
458:
459:
460:
461:
462:
464:
465:
466:
467:
468:
469:
470:
471:
472:
473:
474:
475:
476:
477:
478:
479:
480:
481:
482:
483:
484:
485:
486:
487:
488:
491:
492:
493:
494:
495:
496:
497:
498:
499:
500:
501:
502:
503:
504:
505:
506:
507:
508:
509:
510:
511:
512:
513:
514:
515:
517:
518:
519:
520:
521:
522:
523:
524:
525:
526:
527:
528:
529:
530:
531:
532:
533:
534:
535:
536:
537:
538:
539:
540:
541:
544:
545:
546:
547:
548:
549:
550:
551:
552:
553:
554:
555:
556:
557:
558:
559:
560:
561:
562:
563:
564:
565:
566:
567:
568:
569:
571:
572:
573:
574:
575:
576:
577:
LAMPIRAN B
[Bioloid Premium]-Robot 3v1
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
22:
26:
27:
28:
29:
30:
31:
32:
33:
34:
35:
36:
37:
38:
39:
40:
41:
42:
43:
44:
45:
46:
47:
48:
49:
51:
52:
53:
54:
55:
56:
57:
58:
59:
60:
61:
62:
63:
64:
65:
66:
67:
68:
69:
70:
71:
72:
73:
76:
77:
78:
79:
80:
81:
82:
83:
84:
85:
86:
87:
88:
89:
90:
91:
92:
93:
94:
95:
96:
97:
98:
99:
100:
102:
103:
104:
105:
106:
107:
108:
109:
110:
111:
112:
113:
114:
115:
116:
117:
118:
119:
120:
121:
122:
123:
124:
126:
127:
128:
129:
130:
131:
132:
133:
134:
135:
136:
137:
138:
139:
140:
141:
142:
143:
144:
145:
146:
147:
148:
151:
152:
153:
154:
155:
156:
157:
158:
159:
160:
161:
162:
163:
164:
165:
166:
167:
168:
169:
170:
171:
172:
173:
174:
177:
178:
179:
180:
181:
182:
183:
184:
185:
186:
187:
188:
189:
190:
191:
192:
193:
194:
195:
196:
197:
198:
199:
200:
201:
202:
204:
205:
206:
207:
208:
209:
210:
211:
212:
213:
214:
215:
216:
217:
218:
219:
220:
221:
222:
223:
224:
225:
226:
229:
230:
231:
232:
233:
234:
235:
236:
237:
238:
239:
240:
241:
242:
243:
244:
245:
246:
247:
248:
249:
250:
251:
252:
253:
254:
256:
257:
258:
259:
260:
261:
262:
263:
264:
265:
266:
267:
268:
269:
270:
271:
272:
273:
274:
275:
276:
277:
278:
279:
282:
283:
284:
285:
286:
287:
288:
289:
290:
291:
292:
293:
294:
295:
296:
297:
298:
299:
300:
301:
302:
303:
304:
307:
308:
309:
310:
311:
312:
313:
314:
315:
316:
317:
318:
319:
320:
321:
322:
323:
324:
325:
326:
327:
330:
331:
332:
333:
334:
335:
336:
337:
338:
339:
340:
341:
342:
343:
344:
345:
346:
347:
348:
349:
350:
351:
352:
355:
356:
357:
358:
359:
360:
361:
362:
363:
364:
365:
366:
367:
368:
369:
370:
371:
372:
373:
374:
375:
376:
377:
378:
381:
382:
383:
384:
385:
386:
387:
388:
389:
390:
391:
392:
393:
394:
395:
396:
397:
398:
399:
400:
401:
402:
403:
404:
405:
407:
408:
409:
410:
411:
412:
413:
414:
415:
416:
417:
418:
419:
420:
421:
422:
423:
424:
425:
426:
427:
428:
429:
430:
431:
434:
435:
436:
437:
438:
439:
440:
441:
442:
443:
444:
445:
446:
447:
448:
449:
450:
451:
452:
453:
454:
455:
456:
457:
458:
459:
461:
462:
463:
464:
465:
466:
467:
468:
469:
470:
471:
472:
473:
474:
475:
476:
477:
478:
479:
480:
481:
482:
483:
484:
485:
488:
489:
490:
491:
492:
493:
494:
495:
496:
497:
498:
499:
500:
501:
502:
503:
504:
505:
506:
507:
508:
509:
510:
511:
512:
514:
515:
516:
517:
518:
519:
520:
521:
522:
523:
524:
525:
526:
527:
528:
529:
530:
531:
532:
533:
534:
535:
536:
537:
538:
541:
542:
543:
544:
545:
546:
547:
548:
549:
550:
551:
552:
553:
554:
555:
556:
557:
558:
559:
560:
561:
562:
563:
564:
565:
567:
568:
569:
570:
571:
572:
573:
574:
575:
576:
577:
578:
579:
580:
581:
LAMPIRAN C
/***************************************************** This program was produced by the
CodeWizardAVR V2.05.0 Professional Automatic Program Generator
© Copyright 1998-2010 Pavel Haiduc, HP InfoTech s.r.l. http://www.hpinfotech.com
Project : Version :
Date : 6/27/2012 Author : NeVaDa Company : Comments:
Chip type : ATmega8L Program type : Application AVR Core Clock frequency: 7.372800 MHz Memory model : Small External RAM size : 0
Data Stack size : 256
*****************************************************/ #include <mega8.h>
#include <delay.h>
#include <stdio.h>
#include <stdlib.h>
#ifndef RXB8
#define RXB8 1
#endif
#ifndef TXB8
#define TXB8 0
#endif
#ifndef UPE
#define UPE 2
#endif
#ifndef DOR
#define DOR 3
#endif
#ifndef FE
#define FE 4
#endif
#ifndef UDRE
#define UDRE 5
#endif
#ifndef RXC
#define RXC 7
#endif
#define FRAMING_ERROR (1<<FE)
#define PARITY_ERROR (1<<UPE)
#define DATA_OVERRUN (1<<DOR)
#define DATA_REGISTER_EMPTY (1<<UDRE)
#define RX_COMPLETE (1<<RXC)
//GLOBAL VARIABLES //int test;
//int Start=0,Test; int Mulai=0;
// USART Receiver buffer #define RX_BUFFER_SIZE 32
char rx_buffer[RX_BUFFER_SIZE];
#else
unsigned int rx_wr_index,rx_rd_index,rx_counter;
#endif
// This flag is set on USART Receiver buffer overflow bit rx_buffer_overflow;
int udpPointer=0,z;
char udp[128]; //<-VARIABLE HERE // USART Receiver interrupt service routine
interrupt [USART_RXC] void usart_rx_isr(void) {
char status,data; status=UCSRA; data=UDR;
if (data==0x52) {
udpPointer=0; z=1;
}
if( z==1) {
udp[udpPointer]=data; udpPointer++;
if(udpPointer>=20)z=0; }
if ((status & (FRAMING_ERROR | PARITY_ERROR | DATA_OVERRUN))==0) {
rx_buffer[rx_wr_index++]=data;
#if RX_BUFFER_SIZE == 256
// special case for receiver buffer size=256 if (++rx_counter == 0)
{
#else
if (rx_wr_index == RX_BUFFER_SIZE) rx_wr_index=0;
if (++rx_counter == RX_BUFFER_SIZE) {
rx_counter=0;
#endif
rx_buffer_overflow=1; }
} }
#ifndef _DEBUG_TERMINAL_IO_
// Get a character from the USART Receiver buffer #define _ALTERNATE_GETCHAR_
#pragma used+ char getchar(void) {
char data;
while (rx_counter==0);
data=rx_buffer[rx_rd_index++];
#if RX_BUFFER_SIZE != 256
if (rx_rd_index == RX_BUFFER_SIZE) rx_rd_index=0;
#endif #asm("cli")
--rx_counter;
#asm("sei") return data; }
#pragma used-#endif
// Standard Input/Output functions #include <stdio.h>
// Declare your global variables here void main(void)
{
// Input/Output Ports initialization // Port B initialization
// Func7=In Func6=In Func5=In Func4=In Func3=In Func2=In Func1=In Func0=In // State7=T State6=T State5=T State4=T State3=T State2=T State1=T State0=T
PORTB=0x00; DDRB=0x00;
// Port C initialization
// Func6=In Func5=In Func4=In Func3=Out Func2=Out Func1=Out Func0=Out // State6=T State5=T State4=T State3=0 State2=0 State1=0 State0=0
PORTC=0x00; DDRC=0xFF;
// Port D initialization
// Func7=In Func6=In Func5=In Func4=In Func3=In Func2=In Func1=In Func0=In // State7=T State6=T State5=T State4=T State3=T State2=T State1=T State0=T
PORTD=0x00; DDRD=0x00;
// Timer/Counter 0 initialization // Clock source: System Clock // Clock value: Timer 0 Stopped
TCCR0=0x00; TCNT0=0x00;
// Timer/Counter 1 initialization // Clock source: System Clock // Clock value: Timer1 Stopped // Mode: Normal top=0xFFFF // OC1A output: Discon. // OC1B output: Discon. // Noise Canceler: Off
// Input Capture on Falling Edge // Timer1 Overflow Interrupt: Off // Input Capture Interrupt: Off // Compare A Match Interrupt: Off // Compare B Match Interrupt: Off
TCCR1A=0x00; TCCR1B=0x00; TCNT1H=0x00; TCNT1L=0x00; ICR1H=0x00; ICR1L=0x00; OCR1AH=0x00; OCR1AL=0x00; OCR1BH=0x00; OCR1BL=0x00;
// Timer/Counter 2 initialization // Clock source: System Clock // Clock value: Timer2 Stopped // Mode: Normal top=0xFF // OC2 output: Disconnected
ASSR=0x00; TCCR2=0x00; TCNT2=0x00; OCR2=0x00;
// External Interrupt(s) initialization // INT0: Off
// INT1: Off
MCUCR=0x00;
// Timer(s)/Counter(s) Interrupt(s) initialization
TIMSK=0x00;
// USART initialization
// Communication Parameters: 8 Data, 1 Stop, No Parity // USART Receiver: On
UCSRB=0x98; UCSRC=0x86; UBRRH=0x00; UBRRL=0x03;
// Analog Comparator initialization // Analog Comparator: Off
// Analog Comparator Input Capture by Timer/Counter 1: Off
ACSR=0x80; SFIOR=0x00;
// ADC initialization // ADC disabled
ADCSRA=0x00;
// SPI initialization // SPI disabled
SPCR=0x00;
// TWI initialization // TWI disabled
TWCR=0x00;
// Global enable interrupts #asm("sei")
while (1) {
//start(03)
if (udp[9]==0x03 && Mulai==1)PORTC.1=1;
if (udp[9]==0x03 && Mulai==0)PORTC.1=0;
if (udp[9]==0x02)PORTC.1=0;
if (udp[9]==0x01)PORTC.1=0;
if (udp[9]==0x03)PORTC.1=0;
//Periksa tim 03 yang akan kick off atau tidak if (udp[11]==0x03)PORTC.2=1;
else PORTC.2=0;
//Penalti untuk Robot 2
if (udp[20]==0x07) //periksa status untuk tim 07 atau yang lain?
{
if (udp[21]==0x01)PORTC.3=1; //Warna Tim Magenta if (udp[21]==0x00)PORTC.3=0; //Warna Tim Cyan if (udp[22]==0x01)PORTC.4=1; //Gawang Kuning if (udp[22]==0x00)PORTC.4=0; //Gawang Biru
if (udp[30]!=0x00) Mulai=0; //terjadi penalti (robot out) if (udp[30]==0x00) Mulai=1; // countdown penalti selesai
}
if (udp[68]==0x07) //periksa status untuk tim 07 atau yang lain?
{
if (udp[69]==0x01)PORTC.3=1; //Warna Tim Magenta if (udp[69]==0x00)PORTC.3=0; //Warna Tim Cyan if (udp[70]==0x01)PORTC.4=1; //Gawang Kuning if (udp[70]==0x00)PORTC.4=0; //Gawang Biru
if (udp[78]!=0x00) Mulai=0; //terjadi penalti (robot out) if (udp[78]==0x00) Mulai=1; // countdown penalti selesai
}
//Penalti untuk Robot 3
// if (udp[20]==0x07) //periksa status untuk tim 07 atau yang lain? // {
// if (udp[21]==0x01)PORTC.3=1; //Warna Tim Magenta // if (udp[21]==0x00)PORTC.3=0; //Warna Tim Cyan //
// if (udp[22]==0x00)PORTC.4=0; //Gawang Biru //
// if (udp[34]!=0x00) Mulai=0; //terjadi penalti (robot out) // if (udp[34]==0x00) Mulai=1; // countdown penalti selesai // }
//
// if (udp[68]==0x07) //periksa status untuk tim 07 atau yang lain? // {
// if (udp[69]==0x01)PORTC.3=1; //Warna Tim Magenta // if (udp[69]==0x00)PORTC.3=0; //Warna Tim Cyan //
// if (udp[70]==0x01)PORTC.4=1; //Gawang Kuning // if (udp[70]==0x00)PORTC.4=0; //Gawang Biru //
// if (udp[82]!=0x00) Mulai=0; //terjadi penalti (robot out) // if (udp[82]==0x00) Mulai=1; // countdown penalti selesai // }
// Test=0x03 ;
udp[udpPointer] = 0x00;
// delay_ms(100);
LAMPIRAN D
LAMPIRAN E
BAB I
PENDAHULUAN
Pada Bab ini dijelaskan mengenai latar belakang masalah, rumusan
masalah, tujuan penelitian, batasan masalah, spesifikasi alat yang digunakan, dan
sistematika penulisan.
I.1 Latar Belakang Masalah
Kontes Robot Cerdas Indonesia (KRCI) divisi Robot Soccer Humanoid
League (RSHL) tahun 2012 memperlombakan robot humanoid dengan
kemampuan bermain bola. Berbeda dengan RSHL pada tahun 2011 yang hanya
memperlombakan satu robot untuk masing-masing tim, RSHL tahun 2012
memperlombakan dua hingga tiga robot untuk setiap timnya.
Dalam pertandingan RSHL tahun 2012 panitia menambahkan peraturan
baru dalam hal pertandingan, yaitu robot harus dapat menerima perintah dari
game controller yang dioperasikan oleh juri. Perintah dari game controller
dikirimkan secara nirkabel dengan menggunakan wi-fi dengan format UDP (User
Datagram Protocol). Robot yang tidak dapat menerima perintah dari wi-fi
mendapat penalty 30 detik menunggu di luar arena pertandingan.
Saat robot dipertandingkan, ditemukan ada kebutuhan lain di luar
permintaan panitia KRCI yaitu kebutuhan komunikasi antar robot. Hal ini
diketahui saat dua buah robot dalam tim yang sama mengetahui keberadaan bola,
saat kedua robot tersebut tidak saling berkomunikasi, kedua robot tersebut akan
saling berebut bola. Dengan ditambahkan kemampuan komunikasi antar robot
dalam satu tim, robot diharapkan dapat memberitahu temannya sehingga tidak
terjadi perebutan bola antar teman dalam satu tim.
I.2 Identifikasi Masalah
1. Dalam pertandingan KRCI RSHL diperlukan robot yang dilengkapi
2
2. Di dalam tim robot pemain bola dibutuhkan komunikasi antar robot dalam
pertandingan agar dua buah robot pemain bola dalam satu tim tidak saling
berebut bola.
I.3 Perumusan Masalah
1. Bagaimana merealisasikan robot yang dapat menerima perintah dari
referee box dan melaksanakan perintah dari referee box tersebut?
2. Bagaimana merealisasikan robot humanoid agar dapat berkomunikasi
dengan robot humanoid satu tim?
I.4 Tujuan
Tujuan tugas akhir ini adalah merealisasikan robot pemain bola yang
dilengkapi kemampuan menerima perintah dari referee box dan dapat
ber-komunikasi antar pemain dalam satu tim.
I.5 Pembatasan Masalah
1. Robot yang dilengkapi dengan perangkat komunikasi hanya 2 robot
pemain,
2. Dimensi lapangan mengikuti aturan RoboCup kategori kid size (600 cm x
400 cm),
3. Perintah dari referee box yang dieksekusi oleh robot hanya meliputi :
Status pertandingan berupa ready, set, play, dan finish, warna tim, tim
yang akan kick off, penalti (jika robot melakukan pelanggaran),
4. Software referee box yang digunakan berasal dari referensi panitia,
5. Pengidentifikasian objek hanya pada warna bola dan gawang.
6. Pengujian dilakukan pada 2 robot pemain bola saja tanpa penjaga gawang.
I.1 Sistematika Penulisan
Laporan Tugas Akhir ini disusun dengan sistematika sebagai berikut :
BAB I PENDAHULUAN
Pada Bab ini dijelaskan mengenai latar belakang masalah, rumusan
masalah, tujuan penelitian, batasan masalah, alat-alat dan bahan, dan sistematika
penulisan laporan Tugas Akhir
BAB II LANDASAN TEORI
Pada bab ini dijelaskan peraturan yang diberikan panitia mengenai
pertandingan robot soccer humanoid league, perancangan robot humanoid, dan
perancangan sistem komunikasi robot.
BAB III PERANCANGAN DAN REALISASI
Pada bab ini dijelaskan tentang perancangan dan realisasi robot humanoid
pemain bola, perancangan penerima data dari referee box dengan menggunakan
modul Wi-Fi, perancangan komunikasi antar robot, dan algoritma robot pemain
bola.
BAB IV DATA PENGAMATAN DAN ANALISIS DATA
Pada bab ini ditampilkan data-data hasil pengamatan kinerja robot,
pengujian kinerja robot, pengujian kemampuan komunikasi antar robot, pengujian
kemampuan penerimaan data dari modul Wi-Fi.
BAB V KESIMPULAN DAN SARAN
Bab ini berisi tentang kesimpulan yang didapat dari keseluruhan
perancangan dan realisasi robot humanoid pemain bola dari awal hingga akhir.
Bab ini juga berisi saran yang diberikan untuk penelitian lebih lanjut oleh pihak
BAB V
KESIMPULAN DAN SARAN
Bab ini penulis akan menyatakan kesimpulan dari tugas akhir ini, serta
memberikan saran untuk dapat mengembangkan tugas akhir ini selanjutnya.
V.1 Kesimpulan
Kesimpulan yang dapat ditarik pada Tugas Akhir Komunikasi Robot
dalam Pertandingan KRCI 2012 Kategori Humanoid Soccer adalah sebagai
berikut :
1. Penambahan modul WiFi yang disertai ATMEGA 8 pada robot humanoid
memampukan robot untuk dapat menerima data status pertandingan, tim
yang akan kick off, status penalti robot dan warna gawang dari referee box
2. Penambahan kemampuan komunikasi antar robot telah berhasil
menghindari terjadinya perebutan bola antara robot pemain. Dalam 5 kali
uji simulasi pertandingan, tidak terjadi perebutan bola, namun terjadi
tabrakan sebanyak 2 kali karena salah satu robot tidak dapat mendeteksi
keberadaan bola.
3. Pada saat kedua robot berada pada posisi berdekatan pada saat kick off,
sistem komunikasi robot dengan topologi gbest berjalan dengan baik.
Terbukti dari 10 uji coba tidak terjadi perebutan bola, namun ada 1 kali
terjadi tabrakan karena salah satu robot tidak dapat mendeteksi
keberadaan bola.
V.2 Saran
Saran-saran yang dapat diberikan untuk pengembangan selanjutnya
mengenai Tugas Akhir ini adalah sebagai berikut:
1. Kamera yang digunakan untuk mengolah citra diharapkan memiliki
resolusi yang lebih tinggi dengan kecepatan pengolahan citra yang lebih
cepat sehingga proses tracking bola dapat berjalan mulus dan dapat
2. Untuk pengembangan selanjutnya diharapkan warna robot dalam tim
maupun tim lawan dapat dideteksi sehingga robot dapat mengoper bola
DAFTAR PUSTAKA
1. Ahmed, H. and Glasgow, J., 2012, Swarm Intelligence : Concepts, Models and Application, School of Computing Queen’s University, Kingston,
Ontario, Canada.
2. Kennedy, J. and Eberhart, R.C., 2001, Swarm Intelligence, Morgan Kaufmann, San Francisco.
3. Milis KRCI
(https://groups.eepis-
its.edu/mailman/private/krci/attachments/20120327/14bb008a/attachment-0001.pdf, diakses Agustus 2013)
4. Website Kontes Robot Nasional
(http://krn2012.itb.ac.id/index.php/sistem-mekanisme-perlombaan-krci-humanoid/, diakses Agustus 2013)
5. Website online shop RoboSavvy (HAVIMO)
(http://robosavvy.com/store/product_info.php/products_id/639, diakses Agustus 2013)
6. Website resmi DFRobot
(http://www.dfrobot.com/index.php?route=product/product&product_id= 548#.UhLCfz-nI5c, diakses Agustus 2013)
7. Website Resmi Robotis