Featured image of post [AD -SHARP0] 제2회 국제 대학생 EV자율주행 후기

[AD #0] 제2회 국제 대학생 EV자율주행 후기

Team Building & Kickoff Meeting

Introduction

1년마다 글을 쓰는 것 같지만… 이번 공모전은 참여했던 공모전 중 가장 체계적이고 재미있게 준비했던 공모전이라 꼭 글을 기록하고 싶어서 작성했다. 대회는 총 세가지 분야가 있었으며, 실제 자동차를 이용하여 정해진 규칙에 따라 경로를 완주하면 되는 AA(AI Autonomous) Racer 1/51/10과 시뮬레이션 형태의 ADSC(Autonomous Driving Simulation Challenge)가 있다. 처음에 나는 이왕 참가하는 김에 상금이 더 많은 AA 1/5 부문을 참가하려 했지만, 해당 부분은 아이들이 타는 장감 차량, GPS, Lidar, 카메라 등과 같은 다양한 센서들을 복합적으로 사용해야 했기에 한 달 반이라는 준비 기간 동안 참가하기 어렵다고 생각했다. 그래서 오직 카메라와 초음파 센서 만을 이용하는 AA 1/10 부문을 선택했다.

Team Building

우선 나는 대학원을 갓 졸업한 신분이었기에 규정 중 대학원생 1명과 학부생 4명으로 무조건 구성해야 한다고 하여 전기공학과(5,4,3학년)과 컴퓨터공학과(3학년)으로 팀을 구성하였다. 그리고 반드시 지도교수가 필요하다고 하여 전기공학과에 관련 교수님에게 부탁하여 팀 구성을 마쳤다. 마침 전기공학과에서 관련된 사업이 시작하던 시기여서 대회 참가를 위한 참가비와 자동차 제작에 필요한 장비를 지원 받을 수 있었다. 대회에 참가하기 위해서는 지정된 키트의 구동부를 무조건 사용해야 했는데, 해당 키트는 대회 시작 일주일 전에 도착한다고 하여 우리는 연구실에서 제공 받은 Raspberry 기반의 SunFounder사의 PiCar와 CSI 카메라를 이용하여 미리 프로토타입을 개발했다.

Kickoff Meeting

지도교수님께 지원을 받는 만큼 우리도 체계적인 계획을 통해 대회 입상을 하고자 했다. 아래와 같이 구체적인 계획을 작성했지만… 대회기간이 촉박해지면서 계획은 완전 뒷전이였다. 그리고 대회 하루 전 코드를 완전 엎어버려야 했기 때문에… 사실상 지켜진 계획은 아무것도 없는듯…

  1. 우리 계획을 간단히 설명 하자면, 대회는 Jetson Nano를 이용하여 개발해야 했다. 우리는 연구실에서 더 고사양의 Jetson Orin을 제공받았고 해당 머신에서 아두이노 및 센서들의 통신을 위한 ROS 환경을 테스트 하고자 했다.

  2. 대회는 카메라를 통해 검은 바탕의 노란색 선을 따라가면 되는 간단한 규칙과 장애물에서 정지해야 하는 두 가지 규칙으로 개입 없이 빠른 시간안에 결승점에 도착하면 된다. 그래서 카메라를 통한 Line Tracking, 곡선에서 조향 각도를 위한 Curvature 계산, 장애물과의 거리 계산을 위한 Depth Estimation, 곡률 제거를 위한 Camera Calibration 알고리즘을 이용하기로 했다.

  3. 이후 완성된 알고리즘을 실시간으로 모니터링하고 디버깅 할 수 있는 로그 작성 프로그램과 모니터링 프로그램을 개발하고 필요한 차체 부품을 3D 프린터를 통해 출력하고자 했다. 추가로 대회에서는 사용 불가능 하지만 IMU와 엔코더를 통해 정밀하게 테스트를 진행하고자 했다.

  4. 차체 개발이 완료 된다면 모든 계산이 필요한 부분을 테이블화 하여 최대한 계산 지연 시간을 제거하고자 하였으며, 바닥 재질 마다 제동 거리를 테스트하고 조도에 따른 주행 오차를 제거하고자 했다.

🦉 마무리 🦉

3년전 하드웨어 실험에서 해본 프로젝트의 기억을 더듬으며 프로젝트를 진행했다. 하드웨어 개발이 항상 그렇듯 디버깅 하는 것이 너무 어렵다. 하드웨어와 소프트웨어 사이의 결함일 수도 있고, 하드웨어 간의 결함, 전압&전류 규격 문제 등과 같은 알 수 없는 오류들을 해결하기 쉽지 않다. 사실 이런 오류는 인터넷에도 잘 나오지 않아 직접 삽질 해가면서 알아내는 방법밖에 없다. 그 많은 삽질을 통해 해결한 오류가 다른 개발자들에게 조금이나 도움이 되었으면 좋겠다고 생각하여 자세히 포스팅 하겠다.

Built with Hugo
Theme Stack designed by Jimmy