일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | ||
6 | 7 | 8 | 9 | 10 | 11 | 12 |
13 | 14 | 15 | 16 | 17 | 18 | 19 |
20 | 21 | 22 | 23 | 24 | 25 | 26 |
27 | 28 | 29 | 30 |
- sf소설책
- 로봇대회
- 소프트웨어 아키텍처
- OpenCV
- 임베디드소프트웨어경진대회
- 대회
- sf소설
- software quality
- 티스토리챌린지
- 책추천
- 컴공대회
- 미키7
- raspbian
- PYTHON
- YOLOv4
- 소프트웨어대회
- 알고리즘대회
- raspberry pi
- 임베디드
- 로봇
- 단편선
- 미키17
- 오블완
- 소프트웨어아키텍처
- 휴머노이드
- Today
- Total
mjello 님의 개발 블로그
[후기-1 : 예선] 2023 임베디드 소프트웨어 경진대회 : 휴머노이드 골프 로봇 본문
드디어!! 작성하는 애증의 임소경 후기
개인적 기록 + 앞으로 도전하시는 분들께 도움이 됐으면 하는 마음에 작성합니다!
코드리뷰 & 배운점 : https://mjello.tistory.com/4
수상 결과
제 21회 임베디드 소프트웨어 경진대회
ESW오픈 부문 : 2등, 임베디드SW·System산업협회 회장상
지능형 휴머노이드 부문 : 입선
제 20회 임소경과 다르게, 2023년 21년 임소경 휴머노이드 로봇의 주제는 '로봇 골프' 였습니다.
과제목표 :
- 이족보행 로봇을 이용하여 지능형 로봇 골프 대회 진행
- 영상처리 및 로봇의 움직임 제어에 관련된 SW개발
예선
예선에서는 개발계획보고서와 영상제출을 통해 총 10팀을 선발해서 본선 진출 팀을 결정합니다.
저희 팀 [ROKO] 은 단과대 학술동아리에서 파생된 팀으로,
3-4월 경부터 동아리 내 CV스터디를 열어서 기본적인 python 영상처리 및 openCV에 익숙해지려고 노력했습니다.
예선 기술동영상 제출을 위해 미리 컴퓨터비전 공부를 하는 것을 추천합니다.
5월부터는 본격적인 예선 서류를 작업을 시작했습니다.
주최측에서 주신 자세한 경기 규칙과 로봇 사양 등의 서류를 바탕으로 개발계획보고서를 꼼꼼히 작성했습니다.
보통 골프 경기에서 가장 중요한 것은 퍼팅 횟수인데,
이를 위해서 휴머노이드 로봇 골프에서는 신경써야할 부분이 많았습니다.
저희 팀은 많은 논의를 통해 모든 경우의 수를 고려해서 작성했던 것 같습니다!
몇가지 예를 들자면,
1. 첫 퍼팅 후 굴러간 공을 어떻게 찾을 것인가
=> 로봇의 시야각이 굉장히 좁고, 라즈베리파이 카메라 화질과 흔들림 이슈로인해 효율적으로 공을 찾아야했음
2. 공까지의 거리 측정은 어떻게 할 것인가
=> 로봇의 부착된 거리 측정 레이저 센서가 부실해서 사용불가능, CV와 알고리즘이 필요했음
3. 목표지점과 공 사이의 각을 어떻게 계산해서 퍼팅할 것인가
4. 경기장 경계 인식 & 당일 랜덤으로 주어질 언덕과 모래사장 피해서 걷기
등등 고려할 요소들이 상당했습니다.
저희팀은 이 문제를 효율적이고 수학적으로 풀어내고 싶어서 밤마다 줌회의도 많이 하고 고군분투했던 기억이 납니다.
이런 노력 덕분인지 결과적으로 저희팀은 예선 1등으로 본선에 진출하게 되었습니다!
1차 기술 교육 (7월 말)
본선에 진출하는 10팀은 휴머노이드 로봇 회사의 이사님이 진행하시는 총 2번의 기술 교육을 듣게 됩니다.
휴머노이드 로봇은 라즈베리 파이를 본체로 하고 Robo Basic이라는 언어를 사용해서 작동합니다.
로보 베이직 언어 문법, 기본적인 로봇 작동법, 로봇의 특징 및 주의점 등을 교육받았습니다.
( 참고로 로보 베이직은 해당 회사에서 자체개발하여 구글링해도 얻을 수 있는 레퍼런스가 없습니다.
허락받으시고 클로바노트 꼭 쓰세요! )
근데, 이 친구...... 내구성이 상당히 약하고 ㅜㅠㅜ
바닥이 좀만 푹신하거나 약간의 단차로도 넘어지고..... 다루기 쉽지는 않았습니다. (고생했어한이연 ㅠ)
이때쯤 저희팀은 파트를 나눠서 로봇팀 & CV팀으로 분류했습니다.
로봇팀 2명은 기본적으로 로봇 제어 및 영점 조정, 로봇 모션 설계 및 테스트를 맡고,
CV팀 3명은 영상 처리, 알고리즘 구현, 맵에서의 로봇 테스트를 맡았습니다.
로봇 모션 자체보다 골프 경기를 잘 운용할 수 있는 알고리즘 개발에 더 관심있었던 저는 CV팀을 택했습니다.
준비성과 열정 넘치는 우리팀은 야무지게 줄자도 챙겨가서 예비 경기장 규격 세세하게 다 쟀다. 헤헤
경기장 만들기 (8월)
이제 방학 중에 뭐하면 되냐면
경기장을 만들면 됩니다 !~!
으악-!!
복지관 지하 1층의 풍경입니다 ~~
이렇게 파3, 파4를 모두 완성했습니다.
우리는 싱크로율 높게 만든다고 고생했지만, 미래에 당신들은 괜히 그러지마시오 ㅠㅠㅠ
어차피 대회 당일 경기장 재질이 달라서 공이 막 굴러다닙니다
그래도 만들어두니 연습하기 좋았어요
다음 편에는 본격적인 알고리즘 회의와 본선 준비과정 및 대회날 이야기를 기록하겠습니다!