ROS2教程turtlebot3仿真

本文介绍了如何在ROSFoxy环境下安装turtlebot3及其模拟器,包括设置环境变量、启动仿真、使用rviz进行绘图和控制,以及实现简单的避障和航向锁定功能。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

安装turtlebot3

首先需要安装Gazebo turtlebot3

sudo apt-get install ros-foxy-gazebo-*
sudo apt install ros-foxy-turtlebot3
sudo apt install ros-foxy-turtlebot3-simulations

添加环境变量

vim ~/.bashrc

export TURTLEBOT3_MODEL=burger

启动仿真环境

ros2 launch turtlebot3_gazebo turtlebot3_world.launch.py

在这里插入图片描述

绘图

打开rviz准备绘图

ros2 launch turtlebot3_cartographer cartographer.launch.py use_sim_time:=True

在这里插入图片描述

打开键盘绘制节点控制机器人移动绘制地图

 ros2 run turtlebot3_teleop teleop_keyboard

在这里插入图片描述
保存建好的地图

ros2 run nav2_map_server map_saver_cli -f ~/ROS2/map/tutorial

关闭所有窗口后执行下面命令

导航

打开下面launch文件

ros2 launch turtlebot3_gazebo turtlebot3_world.launch.py

ros2 launch turtlebot3_navigation2 navigation2.launch.py use_sim_time:=true 

在rviz 在其上方工具栏中有2D Pose estimate,用来设置大概的初始点
通过RViz中的navigation2 goal按钮,发送一个目标位置。然后自动规划路线到达目的的
在这里插入图片描述

简单的自动避障

通过订阅/scan话题获取正前方的距离与发布/cmd_vel话题的速度控制可以实现一个简单的避障功能,距离前方距离小于1m停止前进并转动,就这样一直循环下去就可以避障了,但是

import rclpy
from rclpy.node import Node
from sensor_msgs.msg import LaserScan
from geometry_msgs.msg import Twist
import time

class AvoidOb(Node):
    def __init__(self
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值