ArUco 마커 내비게이션과 AI 번호판 인식을 결합해 입차부터 주차, 출차까지 자동화한 스마트 자율주차 로봇
| 항목 | 내용 |
|---|---|
| 기간 | 2026.01 - 2026.02 |
| 형태 | SSAFY 팀 프로젝트 |
| 참여 범위 | ROS2 주행·주차 로직, 미션 통합, 마커 인식·추적, AI OCR·이상탐지 연동 |
| 핵심 기술 | ROS2 Humble, Python, OpenCV, ArUco, Kalman Filter, MQTT, Spring Boot |
| 공개 범위 | 공개용 설명·다이어그램, 실제 로봇 사진과 CAD만 수록, 소스 코드는 비공개 |
Balemale은 운전자가 입구에 차량을 맡기면 로봇이 번호판을 인식하고, 배정된 슬롯까지 차량을 운반한 뒤 다시 대기 위치로 복귀하는 자동 주차 시스템입니다.
프로젝트는 다음 세 가지 문제를 하나의 흐름으로 연결했습니다.
- 카메라 기반 번호판 인식과 차량 등록
- 28개 ArUco 마커를 이용한 로봇 위치 인식과 경로 주행
- 12개 슬롯의 입차·주차·출차 상태를 관리하는 18-state FSM
팀이 제작한 주차 로봇의 실제 테스트 장면과 적재 장치 CAD입니다. 대표 포스터는 이 실제 프로젝트 아티팩트만 사용해 구성했습니다. 하드웨어 전체 설계를 개인 단독 결과로 주장하지 않습니다.
입차와 출차는 모두 인식, 배차, 로봇 주행, 적재 장치 제어, 서버 상태 갱신을 거칩니다. 각 단계가 서로 다른 장치에서 실행되기 때문에 미션 상태를 명시적으로 관리하고 MQTT와 ROS2 메시지로 경계를 연결했습니다.
- 키오스크와 관리 화면은 차량 등록, 슬롯 상태, 결제 및 출차 요청을 담당합니다.
- 백엔드는 주차 슬롯과 경로 정보를 관리하고 로봇 미션을 MQTT로 전달합니다.
- 로봇에서는 ROS2 노드가 인지, 경로, 모션, 적재 장치를 분리해 실행합니다.
- 카메라 입력은 번호판 인식, ArUco 마커 검출, 이상 물체 감지에 사용됩니다.
| 기능 | 설명 |
|---|---|
| 번호판 인식 | YOLO 계열 탐지와 OCR 결과를 다중 프레임 투표로 안정화 |
| 마커 내비게이션 | ArUco 마커를 위치 기준으로 사용하고 소실 구간은 Kalman Filter로 추적 |
| 메카넘 주행 | 전후·횡·회전 명령을 결합해 좁은 주차 공간에서 정렬 |
| 미션 오케스트레이션 | 18개 상태로 인식, 적재, 주행, 주차, 하역, 복귀 흐름 관리 |
| 서버 연동 | MQTT로 배차·재경로·이상 이벤트를 교환하고 슬롯 상태 갱신 |
| 안전 대응 | 장애물 감지나 비정상 상태에서 정지하고 재개 또는 재경로 요청 |
공개 가능한 Git 이력과 프로젝트 기록을 기준으로 다음 작업 범위에 참여했습니다.
- ROS2 기반 주행·주차 제어와 미션 상태 통합
- ArUco 마커 검출·추적 및 주행 구간 튜닝
- 카메라, 모터, IMU, 적재 장치 노드를 포함한 시스템 통합 과정 참여
- 번호판 OCR 및 이상탐지 결과를 로봇 미션과 연결
- 실기 시험에서 공유 전원 구성으로 발생한 연산 보드 불안정 문제의 분리와 재현 조건 정리 참여
이 저장소는 팀 전체 결과와 개인 작업을 구분해 설명하며, 하드웨어 설계나 백엔드 전체를 개인 단독 결과로 주장하지 않습니다.
현상
12V 모터 네 개와 Jetson을 하나의 전원 계통에서 구동할 때, 모터 부하가 커지는 순간 전압이 떨어지며 컴퓨팅 보드가 불안정해졌습니다.
판단과 조치
- 소프트웨어 오류보다 부하 변화와 전원 계통의 상관관계를 먼저 확인했습니다.
- Jetson과 모터의 전원을 분리해 순간 부하가 연산 장치에 전달되지 않도록 구성했습니다.
- 공통 기준 전위와 통신 연결은 유지하면서 전력 경로만 분리했습니다.
결과
모터 구동 중 발생하던 연산 장치의 전원 불안정을 줄이고, 인지와 미션 노드를 지속적으로 실행할 수 있는 기반을 확보했습니다.
| 영역 | 기술 |
|---|---|
| Robot | ROS2 Humble, Python, OpenCV, ArUco, Kalman Filter |
| AI | YOLOv8, EasyOCR, TensorRT, ONNX Runtime |
| Communication | MQTT, WebSocket, Serial |
| Backend | Java, Spring Boot, PostgreSQL, Redis |
| Hardware | Jetson Orin Nano, Raspberry Pi, Arduino, 4WD Mecanum |
SSAFY 팀 프로젝트의 소스 코드는 공개하지 않습니다. 이 저장소의 다이어그램은 공개 가능한 범위에서 새로 작성했으며, 내부 설정값, 모델 파일, 데이터셋, 배포 정보와 원본 저장소 이력은 포함하지 않습니다.
자세한 기준은 NOTICE.md를 참고해 주세요.


