2022. 1. 15. 14:12ㆍRobot
Turtlebot
ROS는 기본적으로 Turtlebot이라는 기본적인 예제를 제공한다. Tutlebot은 그림 1처럼 생긴 로봇 종류를 제공하고 실제 판매도 한다. Turtlebot은 기본적으로 Lidar 센서 또는 카메라를 이용한 SLAM(Simultaneous Localization and Mapping)을 기반으로 맵을 탐색하고 경로를 찾는걸 주 목적인 하드웨어이다. 로봇 암을 위에 달거나 하는 식으로 모듈을 추가 할 수 있다.
ROS 시각화 Tools
Ros는 Turtlebot 하드웨어 처럼 여러가지 로봇을 제공하고 또 제작하여 사용하기 때문에 가시적으로 보기 편하도록 시각화된 툴을 제공한다. 그림2의 rviz와 그림3의 gazebo의 차이는 물리엔진 제공의 차이이다. rviz는 시각화를 위해서만 사용되기 때문에 물리엔진이나 기타 엔진을 제공하지 않지만 gazebo는 3D 시뮬레이션의 기능을 수행하기 때문에 물리엔진을 제공한다.
Turtlebot3 simulation
Turtlebot3는 로봇을 직접 사용하는 예제 뿐만 아니라 simulation을 위한 예제도 제공하고 있다. Turtlebot3 예제를 하기 위해서 기본적인 패키지들이 필요하다. 해당 패키지는 여길 참고하면 된다.(ROS2의 경우 Dashing과 Foxy로 OS 버전으로 나누어지며 Dashing은 Ubuntu 18.04를 기준으로 제공하고 Foxy는 Ubuntu 20.04를 기준으로 한다.)
Turtlebot은 각 로봇 모델의 이름을 지정하여 해당 로봇 모델을 제공한다.
export TURTLEBOT3_MODEL=burger
ros2 launch turtlebot3_fake_node turtlebot3_fake_node.launch.py
터미널을 하나 더 열어서 다른 실행시킨다.
export TURTLEBOT3_MODEL=burger
ros2 run turtlebot3_teleop teleop_keyboard
teleop_key는 해당 터미널에서 waxd를 이용해 전진, 후진, 좌, 우로 로봇에게 명령을 줄 수 있다. s는 설정된 모든 값을 0으로 로봇을 stop시킨다.
Reference
Turtlebot: www.turtlebot.com/
TurtleBot
www.turtlebot.com
Robotis e-menual: emanual.robotis.com/
ROBOTIS e-Manual
emanual.robotis.com
'Robot' 카테고리의 다른 글
[ROS Docker] Docker에서 ROS2 시작하기 - 1 (0) | 2022.01.15 |
---|