https://www.youtube.com/watch?v=Boarxmbo2s8

본 프로젝트는 스위스 스타트업 Ascento의 이륜 로봇을 참고하여 원격 경비 임무 수행을 위한 로봇 개발을 목표로 한다. 이 로봇은 이상 객체 및 변화 감지, 주차 차량 관리, 환경지물 탐색 등의 임무를 수행하며, 이상 상황 발생 시 관제센터로의 알림 전송 및 임무 로그에 대한 데이터베이스를 구축한다.

| serial_reciver | 소형 MCU에서 작동되는 각종 센서들과 송수신기 신호 등을 받아오는 센싱 패키지 |
|---|---|
| odrive_controller | O-drive에 맞는 형태로 변환하여 회로에 입력하는 역할을 하는 패키지 |
| controller | 전체 제어기를 총괄하는 패키지 |
| dubal_eye_AND_web | 로봇의 영상처리와 웹간의 연결 통신을 담당하는 패키지 |

로봇의 PC(ROS2)는 크게 3개의 thread로 구성되어 3가지 작업을 병렬로 수행한다. Control thread는 MCU, IMU로부터 로봇의 상태를 계산하고, 휠, 관절을 구동시킨다. Web thread는 로봇 상태, 이미지를 웹으로 송신하고 제어 입력을 수신한다. 이미지처리 thread는 카메라로부터 받은 이미지를 프로세싱을 거친 뒤 Web thread로 전송한다.

이 로봇은 카트 위에 역진자 구조를 가진 형태로, 카트의 수평 위치와 로봇의 역진자에 해당하는 부분의 각도를 조절하는 힘을 통해 균형을 유지할 수 있도록 설계되었다. 운동 방정식은 로봇의 수평 운동과 회전 운동을 기술하며, 첫 번째 방정식은 카트의 수평 운동을, 두 번째 방정식은 역진자에 해당하는 로봇 부분의 회전 운동을 나타낸다. 이 방정식은 비선형 항을 포함하고 있지만, 작은 각도 근처에서 테일러 전개를 통해 선형화할 수 있다.