ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • 제13회 마이크로로봇 경연대회(2010.10.30)
    ZETIN 2010. 11. 1. 23:00
    이 사진 누가 찍었는지 참 못 찍었다.. 여러장 중 그나마 좀 밝게 나왔군.. 사진 찍는 센스 좀 키우자

    지난 2010.10.30 일산 KINTEX에서 서울과학기술대학교(구 서울산업대학교)에서 주최한 제 13회 마이크로로봇 경연대회가 있었다.
    오랜만에 참가한 대회이자 이제 마지막 대회라 이렇게 기록을 남긴다.

    1학년때(2005년) 산업대 대회때부터 참가해 온 대회인데 벌써 6년째 참가하였다.

    2005년만 해도 라인트레이서 대회가 아주 많았었던지라 한 시즌(한 해)에 10개가 넘는 대회가 있었을 정도로..
    10월 11월은 거의 격주로 대회가 있었고, 매주 대회가 있을 때도 있었다.
    그때 산업대 대회도 아주대 대회와 하루 차이로 열려서 아주대 대회 끝나고 바로 밤새 준비해서 산업대 대회를 나갔었다.
    그리고 지금은 대부분의 대회(몇 개 안되지만.. ㅠ)의 규정에서 로봇의 크기를 300mm x 300mm으로 제한하고 있지만
    그 당시만 해도 250mm x 250mm로 제한하는 대회가 있었다.
    아주대 대회가 250mm x 250mm 제한이어서 토요일은 작은 로봇으로 대회에 나가고, 일요일은 큰 로봇으로 대회에 나갔었다.
    그리고 당시는 스텝모터를 사용한 트레이서가 대부분(거의 다가 스텝)이어서 지금처럼 부문도 나누지 않았고,
    그래서 확연한 기록차이로 승패가 결정나지 않았고,
    스텝모터의 탈조 소리에 승패가 많이 결정되었으므로, 손에 땀을 쥐는 긴장감 속에서 대회가 진행되었다.
    요즘의 조금은 루즈한.. 그리고 조금은 썰렁한.. 대회와는 달리, 
    한 번의 주행에도 관람객과 참가자들의 집중도가 장난이 아니었다.
    한 번의 완주에도 박수가 나왔고, 한 번의 실패에도 모두들 아쉬워 했었다.
    이런.. 옛날 이야기를 하다니.. 나도 늙었나보다.. ㅋ

    어쨌든 첫 번째 산업대 대회는 넓은 체육관에서 다른 대회(전투로봇, RC카 경주 등)와 함께 치뤄졌는데
    천장의 공조기에서 뿜어대는 먼지 탓에 대회가 끝나도록 주행판이 먼지때문에 미끄러웠다.
    그리고 그 당시 판을 닦던 걸레는 자동차에 왁싱을 하는 기.름.걸.레. 헐ㅋ
    당시 겨우겨우 2차를 완성했었는데, 먼지와 턱 때문에 제대로 2차도 못 해보고,
    조별 예선에서 민우형과 만나면서 딱 한 번 굴려본 것이 다였다.
    그 대회에서 기억나는 건 은정이의 무적 On Off 주행.
    25cm의 고정곡률 턴을 단 3번의 보정으로 돌아나가는 그 주행은 현철이형을 땀나게 만들었었다는 ㅋㅋ

    2006년부터는 블라인드가 생기면서 블라인드 라인트레이서 대회가 되었다.
    초기 블라인드는 매우 단순해서 직선 중간에만 라인이 없어지는 곳이 있었다. 그냥 position = 0 하고 달림 ㅋㅋ
    그 해에도 매우 미끄러운 주행판 탓에 다들 제대로 된 경연을 하지 못 하였고,
    나는 프로그램을 3개 집어넣었다가 맵 영역이 한계를 넘어서는 바람에 주행 후 멈추지 않았다.
    그 다음날이 전자장 시험이어서 준비도 제대로 못하고 나간게 화근이었다. ㅠ
    1등 조민우(cc9900), 2등 최규쳘(미르나래), 3등 감근진, 4등 장호용, 5등 양현철 (다른 분들은 로봇 명이 기억 안남..)
    결과는 위와 같다. 당시까지만 해도 모두 스텝 트레이서여서 주행 기록도 아슬아슬한 차이였었다.(한 분 빼고 ㅋ)

    2007년은 3학년 때라 매우 바쁜 학교 생활을 보내느라 대회 참가는 하지 못했다.
    그 당시 한학기만 휴학하고 조기 졸업을 할까 고민할 정도로 로봇과 학업을 병행하기 힘들었던 거 같다.
    이 때 Step에서 DC로 트레이서의 주류가 바뀌던 격동의 한 해여서 DC트레이서에 집중되는 관심은 대단했다.
    당시 공개 됐던 문제의 동영상 하나로 그 트레이서의 경연에 많은 사람들이 카메라를 고정시켰다.
    대회는 DC군단들의 싸움이었고, COEX에서 치뤄진 대회는 많은 관람객들의 호응 속에 엄청난 먼지와의 싸움이었던 듯 ㅋ
    그리고 이 해에 드디어 완성된 민우형의 블라인드 솔루션 덕에 다들 블라인드는 마치 블라인드가 아닌 것 처럼 주행했었다.

    격동의 2007년을 지난 2008년 대회에서는 주류가 DC 트레이서가 되면서 DC와 Step으로 부문이 나뉘어졌다.
    이 대회는 우리 학교의 참패였다. DC부문에서 양현철이 겨우 2등을 한 게 전부였으니..
    민우형의 블라인드 솔루션이 빛을 발하지 못했던 유일한 대회가 아니었을까 싶다.
    솔루션을 만든 민우형 조차도 이상하게 블라인드에서 나갔으니..
    나는 겨우 블라인드만 갈 정도로 프로그래밍을 했었는데 연속턴 다음의 큰 턴을 제대로 넘어가지 못 했었다.

    2009년 대회는 부산 BEXCO에서 있었다.
    이 대회는 대학원에 진학 한 후여서 제대로 준비도 못 했다.
    대회 전 주와 대회 전날 그 전년도 소스를 많이 변경된 소스에 포팅하고 상수를 튜닝하는 정도였다.
    그런데 대회장의 상황은 연습판과 아주 많이 달라 상수를 많이 바꾸어야 했다.
    경연 직전까지 연습했었고, 결국 2차를 하지 못하였다. 그런데 우승(엥?) ㅋ
    다른 사람들도 어려운 블라인드(큰 턴 직후 직진 블라인드) 때문에 연습했던대로 주행하지 못하였고, 그 결과 우승을 했었다.
    졸업을 하더니 우승을 한다고 축하해주셨음 ㅋ


    드디어 2010년!!

    지난 10월 30일 새벽,
    대회 신청한 줄도 모르고 동방에 후배들 응원하러 갔더랬다.
    그런데 내가 신청을 했다는 것이다.. 한 것도 까먹고 준비도 안했는데..
    그래서 부랴부랴 로봇을 켜고 블라인드 모드로 바꾸어 주행했더니 잘 되었다.
    역시 작년에 해놓은게 있어서 그런지 상수만 조금 튜닝하는 정도로 대회 준비를 끝냈다.
    그런데 중간고사 시험 기간이 이제 막 끝나고 다른 대회까지 치르느라 대회준비를 제대로 한 사람이 없었다.
    이제 마크를 보고 있고, 블라인드만 가면 멈추고, 출발하자 마자 멈추고.. 상황은 심각했다.
    오현찬: 크로스를 넘어가지 못함. 크로스에서 만날 수 있는 센서의 state가 어떤 것이 있는지 설명해 주고 이럴 때는 이런 식으로, 이런 경우에는 이런식으로 조건이 성립하니까 이렇게 하면 되겠지? 하고 설명을 해 줬건만 이미 새벽이라 멍한 상태여서 제대로 입력이 안되었다. 그렇다고 코드를 내가 짜 줄 수는 없잖아......
    임진연: 블라인드가 잘 안됨. 블라인드 솔루션의 핵심은 적용하였으나, 언제 블라인드가 시작되고 블라인드가 끝날 때는 어떻게 해야하는 지를 모르고 있었음. 그래서 블라인드 시작의 조건과 끝날 때의 조건, 시작과 끝에서의 position의 처리를 어떻게 해야 하는지 알려주웠다. 거의 완전 알려준 듯 한데.. 어떤건지 다 알겠다고 했다. 한번만에 다 이해하는 임진연 대단해 ㅋ 근데 결과는? ...
    이재영: 마크를 보는데 문제가 있었음(오현찬도). 로봇이 주행 중에 만날 수 있는 라인과 마크 사이의 관계를 설명하고 그에 따른 힌트를 제시함. 
    장호용: 알아서 잘 함. 2차도 알아서 다 하고 ㅋㅋ 장함.
    1학년 애들은 호용이가 잘 알려줌.

    나도 간만에 완전 밤을 샜었던 지라 끝무렵에난 정신이 없어서 끝까지 봐주지 못했었다.
    그 전날 거의 밤새고 계룡산 등반을 해서 너무 피곤해서 정신이 더 없었다.

    대회장 가는 길..
    결론은 KINTEX는 너무 멀다는 것이다. 그리고 그날 아침 너무 추워서 가는 길이 힘들었다.
    지방으로 갈 때는 고속버스를 타고 가는 동안 숙면을 취하고 가지만.. 멀면 멀 수록 많이 잘 수 있음.
    킨텍스까지 지하철(1호선 - 종로3가 - 3호선 - 대화역)을 타고 가다보니 중간중간에 정차를 하고,
    사람들이 많아서 제대로 잠을 자기 힘들었다.
    그래도 밤을 샌 우리는 자리에 앉자 마자 딥슬립~ㅋ
    옆 사람 어깨를 빌리기도 하고 밀쳐내는 그들의 어깨짓에도 아랑곳 하지 않는 헤드뱅잉을 하면서 ㅋㅋ

    드디어 KINTEX도착..
    넓은 KINTEX 홀 한 구석에 마이크로로봇 경연대회장이 자리하고 있었다.
    늦을 까봐 부랴부랴 대회장으로 갔는데 다행히 대회는 조금 늦게 시작해서 라인을 점검하고 대회를 준비할 수 있었다.
    라인은 cross 주변의 턴마크가 라인에 너무 가까이 있는 것이 문제가 되었다.
    규정상 10cm은 떨어져 있어야 하는데 8cm, 9cm가 되는 마크가 있어서 다행히 대회 시작 전에 고칠 수 있었다.
    그리고 라인 테스트겸 모두에게 대회 전에 돌려볼 수 있는 기회가 있었는데, 먼지가 너무 많아서 제대로 테스트 해보지는 못하였다.
    다만 라인에 문제가 없다는 것만 확인 하였다.

    그리고 아쉬운 소식과 함께 대회가 시작되었다.
    라인트레이서로봇의 기술이 초보자가 입문하여 대회에 참가하기에 너무나 많은 발전이 있어 진입장벽이 높다는 이유때문에
    내년부터는 이 대회가 다른 대회로 바뀐다는 것이었다.
    사실 응원 겸 구경 겸 참가했는데 마지막 대회라는 생각에 더 열심히 해야겠다는 생각이 들었다.
    DC부문은 12명이 안되는 11명의 참가자로 예선은 조별 리그 없이 프리런닝으로 대체되었다.
    Step부분은 17명의 참가자고 조별예선을 하였는데, 1학년 Step부문 참가자 중 완주한 사람이 없었다.
    그런데 다행히 조별 예선의 Advantage로 그 중 가장 많이 주행한 사람이 본선에 올라갔고, 다른 사람은 와일드카드로 진출하게 되었다.
    그 결과 다행히 모두 본선진출을 했다.(Step예선을 주의 깊게 보지 못해서 대회 내용이 잘 기억이 안남)
    DC부문 프리런닝은 먼지를 닦고 어느 정도의 속도가 가능한 지를 가늠해 볼 수 있는 시간이었다.
    예선의 순번은 우리학교가 먼저고 다른 학교가 뒷 순번이었다.
    그래서 장호용 임진연 서지원 이재영 오현찬 김상현(순서 기억 안남) 이 먼저 경연을 하고 다른 학교 참가자들이 경연을 했다.
    그런데 내 이름을 부르지 않고 예선이 끝났다. 엥? ㅋ
    추최 측에서 실수로 내 이름을 entry에 넣지 않았던 것.
    그래서 나는 마지막 순번으로 모두가 먼지를 닦아준 판에서 경연을 하였다.
    그래서인지 나는 동방 연습판과 비슷한 속도로 경연을 하였고, 예선에서 28초대로 1위를 하였다.(본선 진출과는 관계없었음)

    예선에서 드러난 문제점은 다음과 같았다.
    1. Step트레이서에는 블라인드 솔루션이 적용되지 않았다.
    내가 Step트레이서를 할 때에는 복잡한 블라인드가 없어서 아주 간단하게 블라인드를 통과했었다.(단순히 position을 바꿔주는 정도, 혹은 0으로 해주는 정도) 다행히 새벽에 호용이가 준 꼼수로 단순한 블라인드는 무난하게 통과했지만, 성공률이 너무 낮았다.
    2. DC트레이서를 시작한 지 얼마 안된 2학년들이 마크를 잘 못 보고 이탈하는 경우가 많았다.
    16조의 센서 구조인 경우에는 8조의 단순한 센서 구조에 비해 많은 경우의 수가 발생한다. 단순히 센서의 수만 봐도 엄청난 차이다. 아직 8조의 센서 구조에 익숙한 2학년들에게 좀 더 긴 시간동안 테스트하고 튜닝할 시간이 필요하다. 필요한 지식은 언제든지 질문하면 답해줄 수 있음.
    3. 블라인드 솔루션을 완벽히 적용하지 못하였다.
    블라인드 솔루션이 어떻게 만들어진 건지, 그 특성이 어떠한지 좀 더 설명을 했어야 했는데,, 그것을 제대로 해주지 못 하였다.

    예선이 끝나고 본선을 기다리는 동안.. 솔직히.. 대회장 안이 너무나 추웠다.
    자다가 추워서 깼다는.. 그래서 재동이와 옆 홀에서 전시하는 거 구경하고 좀 많이 돌아다녔다.
    삼성 테크윈 부스에서 로봇 멤버십에서 만든 Self Balancing Robot(세그웨이 타입 로봇)이 전시되어 있었는데
    매우 없어 보였음 ㅋㅋ

    본선이 시작되었다.
    Step트레이서는 예선에서 완주자가 없어 블라인드 몇개를 제거하였다.
    그랬더니 재학이가 1등 ㅋㅋ 봉근이가 5등? 맞나? 기억이 잘 안남(늙었나봐 ㅠ)
    어려운 블라인드를 제거해서 그런지 2차도 하고 제법 잘 갔다.(사실 전시하는 거 구경하느라 못 봤음.. 미안~)

    다른 상황은 귀여운 후배들의 후기에서 확인 할 수 있을 것이라 생각된다.

    DC트레이서 본선은 예선과 똑같은 순서로 진행되었다. 그 말은 내가 또 맨 마지막 순번이라는 것 ㅋ
    DC트레이서 본선에서는 제거했던 블라인드를 다시 살려서 진행하였다.
    본선 시작까지 쉬는 시간이 길어서, 그리고 판을 닦았지만 닦지 않았으므로!! 먼지가 매우 많았다.
    KINTEX내에 사람이 많아서 먼지를 닦아도 금방 쌓였다.
    본선 중반까지 호용이가 1등 지원이가 2등이었다.
    이대로 계속 됐으면 좋았을 텐데 다른 학교 참가자들이 뒷 순번이어서 먼지가 적어서 인지 더 잘 했다.
    그래서 호용이가 3등으로 밀려났고, 정의정씨가 1등, 단국대 엄상훈씨가 2등을 했다.
    내심 호용이가 1등을 했으면 했는데 앞 순번의 불운은 어쩔 수가 없는 것이었다.
    내가 주행하기 전 까지 1등 기록은 30.xx. 나의 예선 기록보다는 못한 기록이었지만 가장 좋은 기록이었다.

    드디어 내차례..
    담담한 마음으로 올라가서 센서 튜닝을 하고 보통 때의 속도로 본선을 시작하였다.
    모든 구간을 아무 문제없이 돌고 맨 마지막 90도 턴의 블라인드에서 멈추는 것이 아닌가?
    작년에도 문제가 되었던 부분인데 예선에서는 별 문제가 없다가 본선에서 문제가 생겼다.
    아마 먼지가 많이 제거되어서 라인 안쪽을 파고들다 생긴 문제라보고 속도를 올렸다.
    그런데 두번째에도 똑간은 자리에서 멈췄다.
    그래서 또 다시 속도를 올렸다.
    1차로서는 빠른 속도는 2.6m/s로 한 결과 28초를 기록했다.
    그 뒤로 2차를 시도하였지만, 세팅하나를 잘못해서 블라인드를 통과하지 못했다.
    그렇게 경연이 끝나고 내가 1등을 했다. 2연승v^^v(지식경제부장관상 2개)
    그리고 시상식이 있기 전까지 무한 번외를 굴렸다.
    번외때 나온 내 최고 기록은 LCD상에서 24.4초.. 이 정도면 계수기에서는 23.9초 정도가 나왔을 것 같다.
    나중에는 블라인드를 메우고 제대로 테스트해 보지 못한 알고리즘까지 총 동원해서 돌려보았다.
    상상으로만 짠 코드라 좀 부자연스럽긴 했지만 어느 정도 구현이 되었다.(다듬을 부분도 찾을 수 있었다.)


    이번 대회가 마지막 블라인드 대회라 아쉬움이 많이 남는다.
    이제야 어느 정도 완성단계라 생각되는 블라인드 기술인데 대회가 없어진다니.. ㅠㅠ
    이번 대회에서 가장 크게 느낀점은 어떤 대회라도, 블라인드 대회든, 자유곡률 대회든, 오프로드 대회든(이젠 없어졌지만 ㅠ)
    트레이서의 기본기가 충실해야한다는 것이다. 정말 라인트레이서는 라인을 잘 따라가야한다. 
    보정을 함에 있어서 떨지 말아야 하고,
    마크는 어떠한 상황에서도 놓지지 않아야 하고,(놓치더라도 잘 보정하면 좋음)
    하드웨어는 정석대로 무게중심이 낮고 견고하게 그리고 가볍게,
    타이어는 접지력이 최대가 되도록 그러나 잘 미끄러지지 않게 잘 만들어야 한다.
    이 기본이 안 된 상태에서 블라인드를 하고, 자유곡률을 하게 되니 문제가 발생하게 된다.

    이번 기회에 돈 아깝다고 생각하지 말고 매끈한 바디하나 제작 맡겨 봄이 어떠한지...
    그리고 이제 추운 겨울이 왔으니 쥬신의 타이어를 기다려 봄 직이 어떠한지..
    잘 만든 타이어하나 열 바디 안부럽고, 제작한 바디 하나 50바디 안부럽다.

    ps. 그리고 이번 대회 상금 중 1/3을 쏜 듯.. 아침 점심 저녁 뒷풀이 ㅋ
Designed by Tistory.