로봇신문사
> 오피니언 > 학생칼럼
로봇대회를 통해 협업의 의미를 배우다.
폰트키우기 폰트줄이기 프린트하기 메일보내기 신고하기
승인 2014.05.10  16:59:12
트위터 페이스북 구글+ 밴드

2014년 4월 21일, 경기북과학고등학교 과학의날 기념 행사가 개최되었다. 경기도내 유일의 특수목적 과학고교인만큼 과학의 날은 연중 가장 큰 체험활동 중 하나로서, 하루 종일 전교생의 참여로 진행된다. 과학의날 행사는 크게 1부와 2부로 나뉘는데 1부에서는 과학 노래 지어 부르기, 과학 골든벨 등 전교생이 함께 참여하는 행사가 진행되었고, 2부에서는 학생들마다 원하는 분야의 체험활동이나 대회에 참여한다. 나를 포함한 총 30명의 학생들이 지능형 협업 로봇설계 대회(이하 협업로봇 대회)에 참가하였는데, 나는 지난 해에 이어 다시 한 번 협업로봇 대회에 참여하였고, 입상에 실패했던 작년과는 달리 당당히 1등을 차지하였다.

협업로봇 대회는 그 대회 명칭에서도 알 수 있듯이, NXT 컨트롤러를 이용하여 해당 미션에 적합한 두 대의 로봇을 설계하고, 로봇을 자율적으로 제어할 수 있는 SW를 개발하여 로봇들 간의 상호 작용을 통해 미션을 수행하는 대회이다. 1학년 3명, 2학년 3명, 총 6명의 학생이 한 팀이 되는데 학년별로 로봇을 한 대 씩 만든 후, 블루투스 통신을 통한 로봇간의 상호작용으로 미션을 해결해야 한다.
▲ 협업로봇 대회의 경기장
대회 경기장은 크게 두 개의 트랙으로 나눌 수 있다. 먼저 2학년 로봇(AR)이 좌측 상단의 베이스캠프에서 출발하여 검정 라인을 따라서 트랙을 모두 주행한 후 센터 서클에 도착한다. 그리고 무작위로 배치되는 두 개의 공(파랑, 빨강) 중 하나를 밖으로 밀어내고 다시 베이스캠프로 돌아와야 한다. AR이 센터 서클에 진입하는 시점부터 1학년 로봇(BR)의 주행이 시작되는데, 이 시점을 맞추기 위해 블루투스 통신을 이용하게 된다. 1학년 로봇은 우측 하단의 베이스캠프에서 출발하여 작은 트랙을 주행한 후, 센터 서클을 지나 큰 트랙으로 이동한다. 그리고 좌측 상단의 베이스캠프로 돌아올 때까지의 시간을 겨루는 방식의 경기이다.

미션을 수행하는 정도를 겨루는 대회인 만큼, 점수를 계산하는 방법 또한 엄격하다. 구간별로 로봇이 얻는 점수가 다르며, 2학년 로봇은 주행을 통해 총 17점, 1학년 로봇은 13점을 얻을 수 있다. 이렇게 총 30점이 주행을 통해 얻을 수 있는 점수이다. 랜덤하게 배치된 공을 밀어내었는가의 여부에 따라 미션 점수로 10점을 얻게 된다. 만약 한 대의 로봇이라도 라인 밖으로 이탈할 경우에는 그 순간 모든 주행은 정지되고, 그 때까지의 주행점수와 미션점수를 합하여 최종 점수를 계산한다. 모든 팀이 한 번씩 주행한 후, 30분 동안의 보정 시간 이후 2차 주행을 진행하게 되는데, 1차 주행과 2차 주행의 점수 중 보다 높은 점수를 그 팀의 점수로 책정한다. 총 주행 시간은 3명의 계측원(주심, 우리 팀 중 1명, 다른 팀 중 1명)이 측정한 시간 중 중간 시간으로 결정하는데, 주행 점수와 미션 점수의 합이 동일한 팀이 존재할 경우 최종 순위를 판정하는데 활용된다.
▲ 협업로봇 대회의 점수 집계표
협업로봇 대회는 본교 정웅열 선생님(정보과학 교사)께서 전체적인 설계와 운영을 담당하시지만, 미션 대회의 특성상 사소하거나 애매한 기준은 토의를 통해 학생들과 함께 만들어 나간다. 로봇이 베이스캠프에서 출발하여 센터 서클에 도달했다는 것의 기준, 완주 및 이탈의 기준, 로봇의 크기나 주행 방법, 그리고 공을 쳐내는 방법 등 세부적인 기준들은 모든 참가자가 한 곳에 모여 회의를 통해 결정하며, 이 과정에서 규정이 바뀌기도 한다. 실제로 작년에는 한 대의 로봇이 이탈하더라도 다른 로봇은 끝까지 주행하여 점수를 충분히 얻을 수 있었지만, 올해는 한 대라도 로봇이 이탈할 경우 그 순간 주행을 종료하는 것으로 규정이 바뀌었다.

참가팀들은 대회가 열리기 일주일 전부터 로봇의 하드웨어를 설계하고, 미션 해결을 위한 SW를 프로그래밍 할 수 있다. 일반적으로 모든 팀들은 일주일동안 로봇을 만들고 모든 미션의 과정을 수행할 수 있는 프로그램까지 전부 개발한다. 여기까지만 보면 대회 시작 전에 이미 미션 해결이 끝나고, 우승 팀도 어느 정도 윤곽이 나올 것이라고 생각할 수 있다. 그러나 이 대회의 승패는 대회 시작 2시간 전 발표되는 서프라이즈 미션에서 갈린다.

해마다 새로운 서프라이즈 미션이 발표되는데, 올해의 서프라이즈 미션은 그 어느 때보다 흥미로웠다. 2학년 로봇이 센터 서클에 도착한 이후, 1학년 로봇이 출발하게 되는데 이때부터 모든 로봇은 지름 길 주행이 가능하며, 2학년 로봇의 도착 지점이 1학년 로봇의 베이스캠프로 바뀐 것이다. 대회를 운영하시는 정웅열 선생님께서는 1주일 동안 참가 팀들의 준비 상태를 점검하신 뒤, 하드웨어나 소프트웨어적으로 어느 팀에도 유리하지 않은 서프라이즈 미션을 고민하신다. 여담이지만 본래 선생님께서 계획하셨던 서프라이즈 미션은 적외선 공을 IR seeker를 사용해서 쳐내는 미션이었는데, 한 친구가 그것을 예상하고 로봇을 미리 만들어서 미션이 바뀌었다고도 한다. 서프라이즈 미션의 점수가 10점이므로, 공을 쳐내는 기본 미션과 합쳐져 전체 미션 점수는 20점이 된다.

얼핏 보면 서프라이즈 미션이 전체 미션 수행에 큰 변수가 되지 않을 것이라고 생각할 수 있다. 일반적으로 라인 트레이서를 개발할 때는 빛 센서가 장착되어있는 로봇을 설계하고 반사율에 따라 모터를 제어한다. 또한 크로스 라인을 인식하는 횟수에 따라 특정한 운동을 수행하도록 소프트웨어를 개발하면 되므로, 서프라이즈 미션을 위해서는 몇 줄의 코드만 수정하면 된다고 생각할 지도 모른다. 하지만 라인 트레이서를 직접 개발해 본 사람이라면 이 과정이 그렇게 쉽지 않다는 것을 알 것이다. 빛 센서는 아주 민감하기 때문에 주변의 광원이나 먼지 등 사소한 변인에도 크게 좌우된다. 따라서 여러 날을 준비하여 연습 주행에서 완주를 하더라도, 대회장의 상황이나 주위 환경의 변화에 따라서 지속적인 보정이 필요하다. 이밖에도 경기장의 굴곡이나 맵의 상황에 대한 미세 조건이 바뀌기 때문에 대회가 끝나기 전까지 어느 팀이 우승할지는 아무도 모른다.

내가 작년에 이 대회에 나왔을 때는 아쉽게도 완주를 하지 못해 좋은 성적을 거두진 못했지만, 올해에는 다시 도전하여 실전에서는 우리 팀만 완주에 성공해 1등을 할 수 있었다. 그렇다면 작년과 올해 무엇이 달라졌기 때문에 우승할 수 있었을까? 가장 큰 이유는 하드웨어의 변화이다. 작년 우리 팀의 로봇은 빛 센서 간의 간격이 매우 넓었다. 이것 때문에 라인트레이싱을 할 때는 매우 안정적이었지만, 회전을 할 때의 반경이 매우 컸기 때문에 트랙을 주행할 때 다른 라인을 침범하여 주행에 실패한 적이 많았다. 이러한 과거의 경험을 통해 로봇을 제작할 때 센서의 폭을 최대한 크게 하면서도 다른 부분의 라인과의 거리를 넘지 않는 크기로 빛 센서를 달았다.

또한, 전략적인 부분도 우리 팀의 우승에 한 몫을 하였다. 비슷한 알고리즘을 사용한 대부분의 팀들과는 달리, 우리 팀은 '속도보다는 안정성'을 추구하였다. 경기가 열리는 체육관이 시간에 따른 환경적인 변화가 큰 공간이라는 것을 경험한 학습의 효과였다. 물론, 시간적인 효율을 전혀 고려하지 않은 것은 아니다. 다소 평이한 구간을 주행할 때는 회전하는 정도와 반경을 줄이고, 급격한 곡선 주로에서만 회전의 양을 늘림으로써 주행 시간을 동적으로 제어하였다. 뿐만 아니라, 최적화된 제어 속도를 찾기 위해서 다수의 실험을 진행하였다. 이를 통해 가장 안정적이면서도 빠른 회전 속도를 찾을 수 있었고, 주행 구간의 곡률에 따른 제어 속도를 반영할 수 있었다.

마지막으로 빛 센서의 반사율을 꾸준히 측정한 것도 우승의 이유였다. 거의 매 번 주행을 할 때마다 빛 센서 값을 측정했는데 이를 통해 시간에 따라 달라지는 빛 센서 반사율의 평균적인 오차 범위를 알아낼 수 있었고, 실전 주행에서 지금까지의 빛 센서 값을 토대로 가장 알맞은 센서 값을 설정함으로써 두 번의 주행에서 모두 완주할 수 있었다. 하지만, 무엇보다 우리 팀을 우승으로 이끈 원동력은 바로 팀워크였다. 일주일간의 준비기간동안 서로 다른 스케줄 때문에 모두 함께 모인 적은 많지 않았지만, 팀원을 믿고 자신이 맡은 부분에 최선을 다해 노력함으로써 이렇게 좋은 결과를 얻게 되었다. 연습주행을 할 때도 완주에 실패하면 서로 어떤 부분이 잘못되었는지 질책하는 것이 아니라, 각자 자신이 맡은 부분에서 어떤 점이 잘못되었는지를 주의 깊게 관찰함으로써 더 많은 오차들을 발견하고 해결할 수 있었다.

우리 팀에게 협업로봇 대회는 단순히 1등을 목표로 하는 대회가 아니라 미션을 수행하는 과정에서 생기는 많은 변인과 오차를 찾아내는 과정에서 로봇공학자의 자세를 배울 수 있는 기회였다. 또한 팀원들과 함께 오차를 줄여감으로써 팀워크를 이해하고 배울 수 있는 계기가 되었다. 이러한 경험들이 훗날 공학자를 꿈꾸는 우리들에게 돈을 주고 살 수 없는 소중한 자산이 될 것이라 생각한다. 김윤성∙학생기자(경기북과학고 2학년)

로봇신문사  webmaster@irobotnews.com
로봇신문사의 다른기사 보기  
폰트키우기 폰트줄이기 프린트하기 메일보내기 신고하기
트위터 페이스북 구글+ 밴드 뒤로가기 위로가기
인기기사
1
국내 호텔 최초 '실외 자율주행 로봇' 시범 운영
2
코로나19 유행으로 로봇 도입이 예상되는 분야는?
3
신체 내부에서 바이오-잉크로 3D프린팅 하는 기술
4
모비어스앤밸류체인, 자율주행 이송 로봇 시연회 열어
5
[창립 10주년 행사] "서비스를 지향하는 로봇산업 육성해 나가자"
6
코드42-아이나비시스템즈-NHN,미래 모빌리티 플랫폼 개발 MOU 체결
7
한컴로보틱스, 카카오 계열사 키즈노트 통해 AI 로봇 ‘토키’ 판매
8
독일 프라운호퍼, '공장 생산라인' 전용 청소로봇 개발
9
두산로보틱스, 협동로봇 신제품 6종 출시
10
유진로봇, 로봇청소기 ‘아이클레보 지니 G5’ CJ오쇼핑 생방송 매진
이 기사에 대한 댓글 이야기 (0)
자동등록방지용 코드를 입력하세요!   
확인
- 200자까지 쓰실 수 있습니다. (현재 0 byte / 최대 400byte)
- 욕설등 인신공격성 글은 삭제 합니다. [운영원칙]
이 기사에 대한 댓글 이야기 (0)
로봇신문 소개기사제보광고문의불편신고개인정보취급방침이메일무단수집거부청소년보호정책    *국제표준간행물번호 ISSN 2636-0381 *본지는 인터넷신문위원회 자율심의 준수 서약사입니다
08298) 서울 구로구 공원로 41(구로동, 현대파크빌 427호)  |  대표전화 : 02)867-6200  |  팩스 : 02)867-6203
등록번호 : 서울 아 02659  |  등록일자 : 2013.5.21  |  발행인·편집인 : 조규남  |  청소년보호책임자 : 박경일
Copyright © 2013 로봇신문사. All rights reserved. mail to editor@irobotnews.com