blackcoffeerobotics/bcr_bot
A mobile robot simulation with differential drive, depth camera, IMU and 2D LiDAR that supports ROS, ROS2, Gazebo, Ignition, Mujoco, and ISAAC Sim
BCR Bot – 다중 ROS/Gazebo 로봇 시뮬레이션
무엇인가요 – 차동 구동 로봇을 위한 즉시 실행 가능한 시뮬레이션 패키지로, IMU, 깊이 카메라, 스테레오 쌍, 2D LiDAR를 탑재하고 있습니다. 이 저장소는 여러 일반적인 ROS/Gazebo 스택 및 NVIDIA Isaac Sim을 위한 로봇 설명, 월드 파일, ROS 실행 파일을 제공합니다.
왜 중요한가요 – 로봇 연구 및 교육은 ROS 1(Noetic)과 ROS 2(Humble) 모두에서 작동하며, 다양한 Gazebo 릴리스(Classic 11, Fortress, Harmonic) 및 새로운 Isaac Sim에서도 안정적으로 작동하는 시뮬레이션 플랫폼이 필요합니다. BCR Bot은 이러한 요구를 정확히 충족시키며, 단지 실행 파일/브랜치만 변경하면 기반 시뮬레이터를 쉽게 전환할 수 있게 해줍니다.
주요 기능 (README에 설명된 내용)
- 다섯 가지 ROS-시뮬레이터 조합을 지원:
- ROS Noetic + Gazebo Classic 11
- ROS 2 Humble + Gazebo Classic 11
- ROS 2 Humble + Gazebo Fortress
- ROS 2 Humble + Gazebo Harmonic
- ROS 2 Humble + Isaac Sim
- 센서: IMU, 깊이 카메라, 스테레오 카메라, 2D LiDAR.
- 실행 파일은 많은 매개변수를 노출합니다 (카메라 on/off, 라이다 on/off, 초기 자세, 월드 파일, 네임스페이스, 오도메트리 소스 등).
- 준비된 월드 파일(
small_warehouse.world/.sdf)과 Isaac Sim용 USD 장면(warehouse_scene.usd,scene.usd,bcr_bot.usd)을 제공합니다. - SLAM Toolbox 매핑 및 Nav2 내비게이션을 위한 예제 파이프라인을 포함하며, 지원되는 모든 시뮬레이터에서 사용 가능합니다.
- ROS 1 및 ROS 2 배포판 모두에서
apt를 통해 바이너리 패키지를 사용할 수 있습니다 (예:sudo apt-get install ros-humble-bcr-bot). - 빌드 지침은 표준 ROS 도구를 사용합니다 (
catkin build는 ROS 1용,colcon build는 ROS 2용).
일반적인 워크플로우
- 해당하는 ROS 배포판과 원하는 Gazebo/Isaac Sim 버전을 설치합니다.
- 필요 시 ROS-Gazebo 브리지 패키지를 설치합니다 (예:
ros-humble-ros-gz-sim). rosdep로 남은 종속성을 해결합니다.- 워크스페이스를 빌드합니다 (
catkin build또는colcon build). - 시뮬레이터에서 로봇을 실행합니다 (
roslaunch …또는ros2 launch …). - 선택적으로 매핑 (
ros2 launch bcr_bot mapping.launch.py) 또는 내비게이션 (ros2 launch bcr_bot nav2.launch.py)을 실행합니다.
누가 사용할까요 – ROS 1 → ROS 2 전환과 함께 진화하는 Gazebo 생태계를 아우르는 플러그 앤 플레이 로봇 모델이 필요하거나, URDF/실행 파일을 다시 작성하지 않고도 Isaac Sim에서 알고리즘을 프로토타이핑하고 싶은 학생, 연구자, 개발자입니다.
README에 기재된 제한 사항
- Harmonic 지원은 아직 바이너리 패키지로 제공되지 않았습니다.
gz-harmonic명령어는 고전적 Gazebo의gz명령어와 충돌하므로, 동시에 설치할 수 없습니다.- Isaac Sim 사용을 위해서는 별도의 NVIDIA 설치와 ROS 2 확장이 필요합니다.
위 정보는 저장소의 README에서 직접 인용되었으며, 추가 기능은 추론되지 않았습니다.
관련
- 프로젝트
- 프로젝트
- 프로젝트
- 프로젝트