🎯 주요 성과
이동 로봇 목적지 도착 알고리즘 개선으로 작업 수행 정확도 2배 상승
ADEX 2025 전시회에서 시연 성공
프로젝트 개요
이동 로봇과 로봇팔을 협동시켜 특정 작업을 수행하는 이기종 로봇 협동 시스템을 개발했습니다. 이 프로젝트는 ADEX 2025 (국제방위산업전시회)에서 전시되었습니다.
이동 로봇(Limo)이 목적지까지 이동한 후, 로봇팔(Mycobot)이 물체를 운반하는 시나리오를 구현했습니다. 두 로봇이 서로 다른 제어 시스템을 사용하므로, 이를 통합하여 협동 작업을 수행할 수 있도록 시스템을 구축했습니다.
주요 개발 내용
1. 다중, 이기종 로봇 제어
- Gazebo 시뮬레이션: Gazebo를 활용한 다중 로봇 동시 제어 환경 구축
- Namespace 분리: 동일 Domain ID에서 통신하는 다중 로봇을 동시 제어하기 위한 Namespace 분리 및 동시 제어 노드 개발
- Domain Bridge: 동일 Domain ID에서 통신 과다로 인한 제어 불안정 문제 해결을 위해 각 로봇을 서로 다른 Domain ID로 분리하고 각 Domain을 연결하는 Bridge 생성
2. 이동 로봇 경로 생성 알고리즘
- Waypoint 기반 경로 생성: 이동 로봇이 단순 최단 경로로 이동하는 것이 아닌, 정해진 길로만 다니도록 제어
- L자/□자 경로: 목적지까지의 경로 중간에 Waypoint를 추가해 L자 혹은 □자로 경로가 생성되도록 Navigation 노드 개발
3. 주차 알고리즘
- 근접 주차: 이동 로봇이 로봇팔 도달 범위까지 근접할 수 있도록 목적지 도달 이후 주차 알고리즘 생성
- 후면 주차: 어려운 목적지의 경우 후면주차 방식으로 쉬운 목적지 도착 후 주차 알고리즘을 추가해 목적지 도달 확률 2배 이상 증가
- 충돌 방지: 이동 로봇 특성 상 목적지가 벽과 가까운 경우 벽과 충돌하지 않기 위한 알고리즘 동작으로 경로 도달 과정 최적화
4. Job Sequence 노드 구현
- 비동기 작업 스케줄러: 각 로봇이 발행하는 토픽, 서비스 정보를 바탕으로 기능 별 함수 구현, 동시 제어를 위해 비동기 방식으로 Queue 작업 Scheduler 생성
- 오류 처리 및 복구: 오류가 발생하거나 로봇에 문제가 생길 경우를 대비해 각 단계 별 검증 및 초기화 함수 구현
- OpenCV 기반 검증: OpenCV를 활용해 이동 로봇 정상 도착 여부 및 로봇팔 운반 성공 여부 판단 알고리즘 구현
기술적 도전과 해결
문제 1: 동일 Domain ID에서 다중 로봇이 통신할 때 통신 과다로 인한 제어 불안정
해결: 각 로봇을 서로 다른 Domain ID로 분리하고 Domain Bridge를 생성하여 통신 안정성 확보
문제 2: 이동 로봇이 목적지에 정확히 도달하지 못하거나 로봇팔 도달 범위 밖에 위치
해결: 주차 알고리즘과 후면 주차 방식을 도입하여 목적지 도달 확률 2배 이상 향상
문제 3: 두 로봇의 작업 동기화 및 오류 발생 시 복구
해결: Queue 기반 비동기 작업 스케줄러와 각 단계별 검증 로직 구현
프로젝트 성과
- 이동 로봇 목적지 도착 알고리즘 및 경로 생성 알고리즘 개선으로 작업 수행 정확도 2배 상승
- Queue 기반의 Job Scheduler 노드 구성, 작업 실패 시 복구 알고리즘 구축
- ROS Topic, Service, Action을 활용한 로봇 제어 시스템 구축
- ADEX 2025 전시회에서 성공적인 시연
- ROS 무경험자들 간 프로젝트 진행을 위한 팀 스터디 리드
배운 점
- ROS2의 Topic, Service, Action 메커니즘 이해 및 활용
- 다중 로봇 제어를 위한 Namespace 분리 및 Domain Bridge 구축
- Gazebo 시뮬레이션 환경 구축 및 활용
- 비동기 작업 스케줄링 및 오류 처리 방법론
- OpenCV를 활용한 로봇 상태 검증 알고리즘 개발
- 실제 전시 환경에서의 시스템 안정성 확보 경험