|
|
TurtleBot is a ROS standard platform robot. There are 3 versions of the TurtleBot model. The last version, TurtleBot3, was developed with features to supplement the lacking functions of its predecessors, and the demands of users. The TurtleBot3 adopts ROBOTIS smart actuator DYNAMIXEL for driving. TurtleBot3 is a small, affordable, programmable, ROS-based mobile robot. The TurtleBot3 can be customized into various ways depending on how you reconstruct the mechanical parts and use optional parts such as the computer and sensor. In addition, TurtleBot3 is evolved with cost-effective and small-sized SBC that is suitable for robust embedded system, 360 degree distance sensor and 3D printing technology.
|
|
|
TurtleBot is a ROS standard platform robot. There are 3 versions of the TurtleBot model. The last version, /TurtleBot3/, was developed with features to supplement the lacking functions of its predecessors, and the demands of users.
|
|
|
|
|
|
The TurtleBot3 version adopts ROBOTIS smart actuator DYNAMIXEL for driving. TurtleBot3 is a small, affordable, programmable, ROS-based mobile robot. The TurtleBot3 can be customized into various ways depending on how you reconstruct the mechanical parts and use optional parts such as the computer and sensor. In addition, TurtleBot3 is evolved with cost-effective and small-sized SBC that is suitable for robust embedded system, 360 degree distance sensor and 3D printing technology.
|
|
|
|
|
|
[[_TOC_]]
|
|
|
|
|
|
# Working with turtlebot3 burger
|
|
|
# Working with the TurtleBot3 burger
|
|
|
|
|
|
Turtlebot3 burger is the smallest turtlebot3 mobile robot. It is composed of 2 DYNAMIXEL servomotors (one for each wheel), 1 OpenSource control card (OpenCR ARM Cortex-M7), 1 Raspberry Pi3, sensors for the navigation with 360° LiDAR.
|
|
|
The TurtleBot3 burger is the smallest turtlebot3 mobile robot. It is composed of 2 DYNAMIXEL servomotors (one for each wheel), 1 OpenSource control card (OpenCR ARM Cortex-M7), 1 Raspberry Pi3, sensors for the navigation with 360° LiDAR.
|
|
|
|
|
|
<img src="./images/turtlebot3-burger1.jpg" width="300" height="350">
|
|
|
|
|
|
## specification
|
|
|
## Specification
|
|
|
|
|
|
+ Max translational speed: 0,22 m/s
|
|
|
+ Max rotational speed: 162,72°/s
|
... | ... | @@ -23,27 +25,51 @@ Turtlebot3 burger is the smallest turtlebot3 mobile robot. It is composed of 2 D |
|
|
+ 3-axis magnetometer
|
|
|
+ 360° LiDAR
|
|
|
|
|
|
## getting started with ROS1
|
|
|
## Getting started with ROS 1
|
|
|
|
|
|
+ Configuring the Remote PC
|
|
|
|
|
|
Add the following lines in the .bashrc of your Remote PC to define the necessary environment variables for runnning ROS:
|
|
|
|
|
|
+ Configure environment variable of roscore
|
|
|
```
|
|
|
(Remote PC)>export TURTLEBOT3_MODEL=burger
|
|
|
(Remote PC)>export ROS_MASTER_URI=http://IP_OF_ROSCORE:11311
|
|
|
(Remote PC)>export ROS_HOSTNAME=IP_OF_REMOTEPC
|
|
|
(Remote PC)source your bashrc
|
|
|
+ export TURTLEBOT3_MODEL=burger
|
|
|
+ export ROS_MASTER_URI=http://IP_OF_SERVER_RUNNING_ROSCORE:11311
|
|
|
+ export ROS_HOSTNAME=IP_OF_REMOTE_PC
|
|
|
```
|
|
|
+ Configure environment variable of burger in bashrc
|
|
|
Reinitialize the environment of your Remote PC:
|
|
|
|
|
|
```
|
|
|
(Burger)>export TURTLEBOT3_MODEL=waffle_ip
|
|
|
(Burger)>export ROS_MASTER_URI=http://IP_OF_ROSCORE:11311
|
|
|
(Burger)>export ROS_HOSTNAME=IP_OF_BURGER
|
|
|
(Burger)source your bashrc
|
|
|
(Remote PC)> source ~/.bashrc
|
|
|
```
|
|
|
+ Launch roscore
|
|
|
|
|
|
Note: IP_OF_SERVER_RUNNING_ROSCORE can be equal to IP_OF_REMOTE_PC in case you run /roscore/ on the Remote PC. The ROS_MASTER_URI is necessary for connecting the ros node running on your Remote PC to the ros master node, i.e. the one running /roscore/.
|
|
|
|
|
|
+ Configuring the TurtleBot3 Burger
|
|
|
|
|
|
From the remote PC, connect to the Burger by ssh:
|
|
|
|
|
|
```
|
|
|
(Remote PC)> ssh pi@{IP_ADDRESS_OF_BURGER}
|
|
|
```
|
|
|
|
|
|
Add the following lines in the .bashrc of the Burger to define the necessary environment variables for runnning ROS:
|
|
|
|
|
|
```
|
|
|
+ export TURTLEBOT3_MODEL=burger
|
|
|
+ export ROS_MASTER_URI=http://IP_OF_SERVER_RUNNING_ROSCORE:11311
|
|
|
+ export ROS_HOSTNAME=IP_OF_BURGER
|
|
|
```
|
|
|
|
|
|
Reinitialize the environment of your Burger:
|
|
|
|
|
|
```
|
|
|
(Burger)> source ~/.bashrc
|
|
|
```
|
|
|
+ Launching roscore
|
|
|
```
|
|
|
(Remote PC)>roscore
|
|
|
```
|
|
|
+ Start burger
|
|
|
+ Start the burger
|
|
|
```
|
|
|
(Remote PC)>ssh pi@{IP_ADDRESS_OF_BURGER}
|
|
|
(Burger)>[ROS_NAMESPACE=myspace] roslaunch turtlebot3_bringup turtlebot3_robot.launch multi_robot_name:="myspace" set_lidar_frame_id:="myspace/base_scan"
|
... | ... | @@ -117,7 +143,7 @@ The waffle follows the same philosophy as the burger. The main difference is a b |
|
|
```
|
|
|
+ Configure environment variable of waffle in bashrc
|
|
|
```
|
|
|
(Waffle)>export TURTLEBOT3_MODEL=waffle_ip
|
|
|
(Waffle)>export TURTLEBOT3_MODEL=waffle_pi
|
|
|
(Waffle)>export ROS_MASTER_URI=http://IP_OF_ROSCORE:11311
|
|
|
(Waffle)>export ROS_HOSTNAME=IP_OF_WAFFLE
|
|
|
(Waffle)source your bashrc
|
... | ... | |