Study/Robotics

자율주행형 수납식 관람석 개발

soohwan_justin 2022. 5. 14. 12:47

2021년 2학기, 대학원 캡스톤 디자인 과목에서 지역 산업체 '엔시팅' 회사의 애로기술 해결을 위해 자율주행형 수납식 관람석을 개발하였습니다.

 

http://nseating.net/shop/video.php

 

위 링크의 영상과 같은 수납식 관람석을 자율주행화 하는 과제였습니다.

 

 

 

1. 업체의 요구사항

 

- 하드웨어 스펙

폭 : 0.9m

너비 : 5~6m

높이 : 10m

무게 : 4t

 

- 요구사항

위치 오차 5cm 미만의 정밀도

500만원 미만으로 자율주행 구현

 

 

우리 팀은 기계공학 전공이 아니기 때문에 저 무거운 관람석을 움직이기 위한 기계적 구조의 설계(모터 선정 등)는 시간이 너무 오래 걸릴것으로 판단해서, 단지 "자율주행 시스템"을 구현하는것으로 협의하였습니다. 업체에서는 메카넘 휠을 사용할 것으로 요청하여 메카넘 휠로 제작하긴 했지만, 만약 저 시스템을 실제로 메카넘 휠로 구현한다면 잘 작동할지는 의문이긴 합니다.

 

메카넘 휠의 단점으로는

Unable to perform smooth motion.
When subjected to high lateral loads, the roller wears away and is damaged
The current weight of the wheel is a serious concern.
Expensive tooling is required to manufacture the wheel due to the complex design, tight tolerances, engineering development etc.

 

4톤의 무게를 움직일 수 있는 모터 + 4톤의 무게를 지탱할 수 있는 메카넘 휠 + 자율주행을 위한 센서 및 프로세서 < 500만원 이 가능할지는 모르겠습니다만, 아무튼 우리 팀에게 주어진건 "자율주행화"이니, 이 문제 해결에만 집중하였습니다.

 

 

2. 테스트 플랫폼 예상 스펙

-크기 : 30cm x 1500cm (기존 관람석 크기 = 1m x 5m를 약 1/3으로 축소)
-최대하중은 고려하지 않음 (실제 무게 4t)
-높이 부분의 물체는 만들지않고 하부 부분만 만들어 테스트 진행
-최대속도 : 2.0m/s
-최대 사용시간(배터리) : 2시간

 

 

3. 부품 선정

총 가격은 약 270만원이지만, 여기서 모터 및 드라이버, 배터리를 제외하고(4t을 움직이기 위한 모터와 jetson nano 및 센서의 전력 소비량을 비교하면 무시해도 될 수준이므로) 단지 "자율주행"을 위한 시스템에서 주요 부품의 가격은

 

jetson nano 키트 = 약 23만원

7인치 LCD 터치패널 = 약 6만원

IMU 센서 = 약 5만원

2D Lidar x 4 = 약 50만원

arduino mega = 약 4만원

 

총 88만원 + @ = 약 100만원 정도입니다.

arduino mega 대신 ATMEGA128을 사용한다면 2만원정도 더 절감 가능합니다.

 

4. 모델링 및 제작

 

mdf 판 1개면 부품들을 모두 올리기 충분할 것이라고 생각했지만, 전선들이 차지하는 부피가 생각보다 컸고, 모터 드라이버를 생각하지 못했어서 설계를 약간 수정하여 제작하였습니다.

 

 

5. 모터 테스트

 

 

6. 센서 테스트

위 그림과 같이 lidar를 장착하였으므로, 각 lidar가 제대로 데이터를 측정하는지 확인해보았습니다

 

로봇의 본체에 의해 가려지는 부분은 필터링하였습니다. 이렇게 들어온 4개의 데이터를 모두 나타내보면,

 

 

이때 ira_laser_tools 라는 ROS 패키지(http://wiki.ros.org/ira_laser_tools)를 사용하면 여러 개의 lidar 데이터를 fusion하여 한 개의 lidar에서 나온 데이터처럼 나타낼 수 있습니다. 우리는 ira_laser_tools 패키지를 사용하여 SLAM과 navigation을 테스트하였습니다.

 

 

7. SLAM 및 navigation 영상

 

 

 

 

두 번째 영상인 navigation 영상을 보시면, 로봇이 진행 중 누적된 오차를 보정하지 못하는 것을 확인할 수 있습니다.

 

 

이는 제가 이전에 포스트 했던 방법으로 개선하였습니다(https://soohwan-justin.tistory.com/51?category=1019797)