소형 자동 균형 로봇, Cubli_Mini를 직접 제작해보세요
Cubli_Mini는 10cm 크기의 미니멀한 정육면체 형태로, 테이블 위에서 스스로 서 있는 독특한 기계 장치입니다. 이 프로젝트는 단순한 하드웨어 조립을 넘어, 제어 알고리즘과 전자 시스템의 통합을 경험할 수 있는 완전한 오픈소스 로봇입니다.
핵심 설계 철학: 작고, 저렴하며, 강력한 성능
본 제품은 세 가지 원칙에 따라 설계되었습니다: 소형화, 저비용, 고성능. 복잡한 브레이크 시스템 없이도, 세 개의 정교하게 배치된 회전 운동량 휠과 선형 2차 조절(정규화) 제어 알고리즘을 통해 지속적인 균형 유지가 가능합니다. 충전 후에는 무방향 환경에서도 최대 5시간 이상 안정적으로 점 균형 상태를 유지합니다.
핵심 기술은 SimpleFOC 기반 모터 드라이버와 LQR 제어기의 결합입니다. 총 비용은 800위안 미만으로 유지되어, 누구나 접근 가능한 하드웨어 프로젝트입니다.
구성 요소 분석: 하드웨어 아키텍처 이해
메커닉 구조: 경량이며 강성 있는 프레임
내부 구조는 검은 탄소섬유봉으로 구성되며, 가벼우면서도 높은 강성을 제공합니다. 각 모서리는 두 종류의 3D 프린팅 부품(각 4개씩)으로 이루어져 있으며, 양극 산화 알루미늄 기둥으로 연결됩니다.
정육면체 외관: 검은 프레임과 붉은 회전 휠의 대비, 흰색 구조물은 고정용 역할
주요 설계 사항:
- 외곽 프레임: 유리 섬유 보드 사용으로 강성과 비용을 동시에 확보
- 회전 휠: 소형화에도 불구하고 충분한 관성 모멘트를 제공하는 304 스테인리스강
- 모든 구조 부품 비용은 350위안 이내, 동축 축을 사용하면 290위안까지 낮출 수 있음
전자 제어장치: 이중 ESP32의 실시간 협업
왜 두 개의 ESP32가 필요한가? 하나의 마이크로컨트롤러는 최대 6개의 PWM 출력만 지원하지만, 세 개의 모터를 각각 양방향 제어하기 위해 6개의 신호가 필요합니다. 이를 해결하기 위해 CAN 통신 기반 이중 마이크로컨트롤러 아키텍처를 도입했습니다.
녹색 기판 위에 위치한 ESP32 UART 모듈, USB-C 포트 및 디버깅용 헤더 포함
제어 보드의 주요 기능:
- 3채널 모터 드라이브 회로 (SimpleFOC 기반)
- 리튬 배터리 충전/방전 관리
- 전압 안정화 회로
- CAN 통신 인터페이스
센서 시스템: 정밀한 자세 감지
균형 제어를 위해서는 정확한 자세 정보가 필수입니다. MPU6050 IMU는 기울기와 각속도를 측정하고, AS5600 자기식 각도 센서는 각 모터의 회전 위치를 정밀하게 감지합니다.
흰색 3D 프린팅 지지대 위에 설치된 MPU6050, 검은 기판에 위치한 센서가 균형 제어의 핵심
센서 최적화 팁:
- 센서 설치 영역은 압력을 줄이기 위해 홈 처리
- 실장 시 MPU6050가 기판과 평행하고, 솔더 패드 중심에 위치하도록 확인
- 저속 동작에서는 고가격 대비 우수한 성능을 보이는 AS5600 활용
초보자도 쉽게 시작: 4단계로 완성하기
1단계: 프로젝트 다운로드 및 재료 준비
터미널에서 다음 명령어로 프로젝트 저장소를 복제하세요:
git clone https://gitcode.com/gh_mirrors/cu/Cubli_Mini
프로젝트 폴더 내부에는 다음과 같은 구조가 있습니다:
1.Hardware/– 하드웨어 설계 파일2.Firmware/– MCU1 및 MCU2용 펌웨어 코드4.Model/– 3D 모델 파일5.Doc/– 사용 설명서6.Process/– 제작 과정 및 BOM 목록
필수 부품 목록:
- ESP32 개발 보드 ×2
- MPU6050 센서 ×1
- AS5600 각도 센서 ×3
- 직류 모터 및 DRV8313 드라이버 ×3
- 리튬 배터리 및 충전 모듈
2단계: 3D 프린팅 및 메카닉 조립
모든 구조 부품은 6.Process/3D打印/ 폴더에 있습니다. 광경화 방식의 3D 프린터를 사용하면 표면 품질이 우수합니다. 조립 순서는 다음과 같습니다:
- 프레임 조립: 검은 탄소섬유봉을 흰색 각지점에 삽입
- 모터 고정: 내부 지정 위치에 세 개의 모터 부착
- 회전 휠 장착: 스테인리스 휠을 모터 축에 결합
- 보드 고정: 제어 보드, IMU, 센서 보드를 정확히 설치
후면 시점에서 본 내부 구조: 붉은 회전 휠과 검은 프레임의 대비
주의사항: 8개의 모서리 부품은 각각 다른 형식(각1, 각2)으로 나뉘며, 각 4개씩 필요. 외곽과 연결부는 45도 대칭이 아니므로 설치 방향을 반드시 확인해야 합니다.
3단계: 회로 접선 및 연결
1.Hardware/ 폴더의 보드 설계 파일을 참고하여 접선을 수행하세요. 초보자는 다음 절차를 추천합니다:
- JLCPCB 무료 샘플링을 통해 보드 제작
- BOM 목록에 따라 부품 구매 (특히 센서 3세트)
- 층별 접선: 먼저 표면 실장 부품부터, 그다음 직립 부품
- 정밀 점검: 특히 DRV8313 드라이버 칩의 접선 상태 확인
안전 경고: 회전 휠은 고속 회전 시 큰 운동 에너지를 가집니다. 테스트 시 반드시 안전 거리를 유지하세요.
4단계: 펌웨어 업로드 및 기본 테스트
PlatformIO 환경을 사용하여 두 개의 마이크로컨트롤러 펌웨어를 업로드하세요:
# MCU1 폴더로 이동
cd 2.Firmware/Mcu1
pio run -t upload
# MCU2 폴더로 이동
cd ../Mcu2
pio run -t upload
초기 전원 공급 테스트:
- 배터리 연결 후 녹색 LED 상태 확인
- 시리얼 툴로 시스템 시작 로그 확인
- 수동으로 정육면체를 기울여 모터 반응 확인
고도화: 맞춤형 제어로 로봇을 자유롭게 조종
알고리즘 계층: 균형 제어의 원리 탐구
핵심 제어 코드는 2.Firmware/Mcu1/control/cubli_mini.cpp에 위치합니다. 두 가지 균형 모드를 지원합니다:
- 변 균형 모드: 일차 역립자 모델 기반 제어, LQR 알고리즘 적용. 매개변수 조정은 이론적 지식이 필요하나, 실용적인 "직관적 튜닝" 방법도 제공됨.
- 점 균형 모드: 변 균형 기반으로 추가로 X, Z 축 제어를 도입, 단일 점에서의 안정적 서있는 상태 구현.
붉은 회전 휠과 모터 조립부의 특수 촬영, 균형 제어의 동력원
통신 계층: 다양한 통신 방식 선택 가능
기본적으로는 CAN 통신을 사용하지만, I2C, SPI, UART로 변경도 가능합니다. can.h 파일 및 관련 구현 파일을 수정하면 됩니다.
또한, WiFi 기반 원격 조정 기능을 통해 실시간 제어 파라미터 조정이 가능합니다:
wifi_commander.cpp파일에서 네트워크 이름과 비밀번호 설정3.Software/네트워크디버그도구V3.8.exe를 사용해 TCP 서버 연결- 실시간 커맨드 전송으로 효과 즉시 확인
메카닉 계층: 개별화된 개선 아이디어
성능을 더 높이고 싶다면 다음과 같은 개선을 시도해보세요:
- 재료 교체: 유리섬유판 → 탄소섬유판으로 교체해 무게 감소
- 모터 업그레이드: 더 높은 KV 값의 모터로 응답 시간 향상
- 회전 휠 설계 변경: 질량 분포 조정으로 관성 모멘트 최적화
디버깅 팁: 초보에서 전문가로의 전환
자주 발생하는 문제 해결
문제: 균형 유지 불가
- IMU 보정 확인: 정육면체를 수평으로 놓고 자세 데이터 확인
- 제어 매개변수 조정:
VOLTAGE_LIMIT값을 점진적으로 증가 - 모터 방향 확인: 세 모터의 회전 방향이 일치하는지 점검
문제: 모터가 작동하지 않거나 진동
- 센서 연결 확인: AS5600의 I2C 주소 설정 오류 여부 확인
- 전원 전압 확인: 배터리 잔량 충분한지 확인
- 드라이버 칩 테스트: DRV8313 정상 작동 여부 점검
파라미터 최적화 실전 가이드
파라미터 설정 파일 param.h을 열어 모든 조정 가능한 값 확인 가능. 조정 순서 권장:
- 기본 파라미터: 모터 PID 매개변수 조정 → 단일 모터 안정성 확보
- 균형 매개변수: 낮은 전압에서 시작해 LQR 가중치 조정
- 성능 최적화: 안정성 확보 후 응답 속도 및 간섭 저항력 향상
황금 법칙: 매번 한 가지 매개변수만 조정하고, 변화 효과 기록하기!
창의적 확장: 원래 설계를 넘어서는 가능성
기본 기능을 익힌 후, 다음과 같은 프로젝트를 시도해볼 수 있습니다:
프로젝트 1: 원격 제어 정육면체
- 블루투스 모듈 추가 → 스마트폰 앱으로 움직임 제어
- 원격 자세 조정 및 모드 전환 기능 구현
프로젝트 2: 자율 이동 정육면체
- 카메라 모듈 통합 → 시각적 위치 인식
- 경로 계획 알고리즘 개발 → 자율 이동 구현
프로젝트 3: 다중 로봇 협업 시스템
- 여러 개의 Cubli_Mini 제작 → 집단 균형 시스템 구축
- 분산 제어 알고리즘 연구 → 군집 지능 탐구
학습 자료 및 커뮤니티 지원
공식 문서는 학습에 매우 유용합니다:
- 하드웨어 설명서 – 회로 설계 원리 상세 분석
- 제어 이론 설명서 – 알고리즘 깊이 이해
- 초보자를 위한 무료 가이드 – 처음부터 시작하는 방법
- 자주 묻는 질문 – 문제 해결 팁
지금 시작하세요
Cubli_Mini는 단순한 로봇이 아니라, 로봇 공학 세계로 들어가는 문입니다. 직접 제작하고, 디버깅하며, 최적화하는 과정을 통해 다음과 같은 능력을 얻게 됩니다:
- 임베디드 시스템 개발 실무 경험
- 제어 이론과 실제 적용의 융합
- 기계·전자·소프트웨어 통합 설계 사고
- 오픈소스 하드웨어 프로젝트 전체 프로세스 이해
코드는 이미 준비되어 있고, 설계 파일은 바로 다운로드 가능합니다. 이제 첫 번째 STL 파일을 다운로드하고, 테이블 위에서 정육면체가 스스로 서는 순간을 목격하세요. 이 여정의 모든 도전이 당신의 기술 성장을 이끄는 발걸음이 될 것입니다.
최고의 학습법은 직접 해보는 것입니다. 오늘 바로 자신의 Cubli_Mini 프로젝트를 시작하세요. 이 작은 정육면체가 당신의 기술 이력에 가장 빛나는 장면이 되길 바랍니다!