자율주행 프로젝트 모임
트랙 주행 사진
[초석을 다지다]
새로운 방면으로 공학적 경험을 해보고 싶어 캡스톤디자인 프로젝트에 참가하여 자율주행 자동차를 제작했습니다. 저에게 자율주행차량 제작은 코딩과 통신연결을 주로 다루어야 하는 생소한 주제였습니다. 저를 비롯한 조원들 모두가 코딩에 대한 경험이 적어 한 달간 주 2회의 코딩 스터디를 열어 Python 코딩에 대한 역량을 키웠습니다. 또한 프로젝트에 대한 이해력을 키우기 위해 여러 논문자료와 발표 자료를 참고하여 기본개념을 학습했습니다. 학습을 진행하면서 가장 취약한 부분이었던 프로그래밍에 대한 약점이 크게 보완되었고 제작에 필요한 코딩역량을 키울 수 있었습니다.
[돌발 상황 발생]
한 달간 기초역량을 쌓은 뒤 2달 동안 제작을 진행했습니다. 우선 통상적으로 사용되어 문제 발생 시 해결법을 쉽게 찾을 수 있는 라즈베리파이를 소형 컴퓨터로 사용하기로 결정했습니다. 노트북 핫스팟 기능을 이용하여 원격조종기능을 갖추었고 카메라를 부착한 뒤 사물인식 기능을 추가하였습니다. 연산에 필요한 코딩작업을 모두 끝낸 후 이상 없음을 확인하며 작업을 진행했습니다. 순조롭게 일이 진행되는 것을 보며 프로젝트가 무난히 끝날 것이라 생각했지만 곧바로 문제가 발생했습니다. 자율주행학습을 시켰지만 차선을 뒤늦게 인식하면서 차선이탈을 하는 것이었습니다. 예상치 못한 문제 상황에 직면한 저희 조는 해결책을 찾아야 했습니다.
[문제 원인 분석 및 해결]
저는 이 문제가 소형 컴퓨터의 성능상 방대한 양의 학습데이터를 혼자서 연산하는 것은 무리였기 때문이라고 판단하여 연산을 라즈베리파이 대신 노트북이 대신 할 수 있는 방법을 찾아보기로 했습니다. 소켓 통신이라는 통신 방법이 있음을 알게 되었고 제가 사용하기 적합하게 적용시켜 연산을 노트북이 대신 하는 대리연산체계를 갖출 수 있었습니다. 그 결과 성공적으로 자율주행 자동차를 완성할 수 있었고 조별 평가에서 1위를 하여 A+이라는 성적을 거두었습니다. 이 경험을 통해 예기치 못한 문제점에 대한 유연한 대처 능력을 기를 수 있었습니다.
[역량을 키우고 싶습니다]
저희 조가 프로젝트에서 제작한 자율주행 자동차는 크기가 작고, 소형컴퓨터의 한계로 인해 낮은성능과 적은 기능을 가진 자동차입니다. 저는 프로젝트를 통한 자율주행 자동차 제작을 겨우 맛보기를 한 것에 불과한 경험이라고 생각합니다. 좀더 넓고 원활한 환경에서 제 역량을 크게 기르고 싶습니다. 네이버 랩스의 인턴과정을 거치면서 국내 자율주행 자동차 연구 개발에 기여하는 엔지니어가 되고싶어 지원하게 되었습니다.