[SIOR Quadruped] 사족보행 로봇 Spot Micro (with Aidin Robotics)

작성자
정연성
작성일
2020-11-30 01:32
조회
1658

사족보행 로봇 Spot Micro (with Aidin Robotics)

SIOR Quadruped🐕 팀 (정연성, 박수호, 안현철, 이형욱, 홍영진)



기계공학부 최혁렬 교수님 연구실의 사족보행 로봇 팀에서 우수학부연구생 활동을 하던 중 사족보행 로봇 관련 정보를 찾아보다 우연히 Boston Dynamics의 Spot Mini를 축소하여 저예산으로 만든 오픈소스 프로젝트 “Spot Micro”를 알게 되었습니다. 하지만 저예산임에도 5~60만원에 달하는 12개의 서보모터 비용이 부담되어 쉽사리 제작 결심을 내리지 못했는데 그 모습을 지켜보던 연구실 연계 창업기업 Aidin Robotics 대표님께서 재료비를 지원해 주셔 이번 프로젝트를 진행할 수 있었습니다.

 

개요



Spot Micro 오픈소스 프로젝트는 Deok-yeon Kim 님의 3D 모델링에서 시작되어서 많은 파생 버전을 만들었습니다. 저는 그 중에서 저에게 익숙한 ROS를 사용해서 로봇의 모션제어를 구현한 mike4192님의 코드를 일부 수정하여 사용했습니다.

로봇에 장착된 Jetson Nano의 전원을 켜고, 동일한 네트워크에 연결한 뒤 PC에서 Jetson Nano에 접속합니다. ROS를 이용하여 로봇을 제어하는 데 필요한 프로세스들을 동작시키면 Jetson Nano에서 서보모터 PWM 제어 보드에 I2C 통신을 시작합니다. PWM 제어 보드는 7.4V 리튬이온전지에게 전원을 공급받고 있는 12개의 서보모터에게 제어 명령을 내리고 로봇의 모션제어가 이루어집니다.

 

하드웨어

주 제어기: Jetson Nano

모터 제어 보드: PCA9685

서보모터: 12 x DGS-1199

서보모터 전력 공급원: 7.4V 리튬이온전지 (18650 3.7V 전지 직렬연결)

Jetson Nano 전력 공급원: Templer 5V/2A 보조배터리



Mike4192님의 오픈소스 프로젝트와 가장 크게 달라진 하드웨어 요소는 메인 제어기와 서보모터입니다. 기존에 Jetson Nano와 호환되는 부품들을 가지고 있었기에 라즈베리파이 대신 Jetson Nano를 택했고, 오픈소스 프로젝트에서 사용된 모터는 해외 구매를 해야 했기 때문에 적당한 스펙의 국내유통되는 다른 모터를 구매했습니다.

3D 모델은 Deok-yeon Kim 님의 모델링을 사용했습니다. 선택한 모터가 온라인에 게시된 서보모터와 치수가 비슷하여 호환 사용이 가능했습니다. 전면과 후면 커버에 각각 전원 버튼과 모터전원 스위치를 달기 위해 그 부분만 Inventor을 이용, 일부 수정하여 3D 프린팅 했습니다.



3D 프린팅은 Aidin Robotics의 지원을 받아 Markforged Onyx-One을 사용했습니다. PLA나 ABS 등의 필라멘트와 달리 Onyx라는 독특한 재료를 사용하는 3D프린터였는데, FDM 방식의 프린터임에도 재료의 특성상 출력물이 잘 부러지지 않고 탄력이 있어 사족보행 로봇의 다리나 몸체의 제작에 효과적이었습니다.

   

 

작동

처음에는 오픈소스 프로젝트를 따라하는 것이 쉬울 줄 알았습니다. 하지만 OS버전이 달라서, 전력이 부족해서, 모터 회전 방향이 반대여서 등 다양한 에러와 문제들을 겪으며 그렇지만은 않다는 것을 깨달았습니다. 그래서 완성에 생각보다 많은 시간이 들었습니다. 일부 코드를 수정하고 배터리를 교체해 가며 로봇을 완성시켰고 잘 작동하게 되었습니다.


로봇이 한 발씩 걷는 모습입니다.


대각선 위치에 있는 두 발을 동시에 움직이며 걷는 모습입니다. (Trot gait)

 

시연영상


도움 링크

Aidin Robotics: https://www.aidinrobotics.com/

Deok-yeon Kim 님의 모델링: https://www.thingiverse.com/kdy0523/designs

Mike4192 님의 GitHub: https://github.com/mike4192/spotMicro

Spot Mini Mini: https://github.com/OpenQuadruped/spot_mini_mini

전체 0