资讯详情

turtlebot2 使用代码

启动turtlebot:

roslaunch turtlebot_bringup minimal.launch 

启动键盘控制:

roslaunch turtlebot_teleop keyboard_teleop.launch

Kinect图像:

运行kinect:

roslaunch openni_launch openni.launch  roslaunch freenect_launch freenect.launch 
显示图像 1、rqt_image_view  启动RGB相机: rosrun image_view image_view image:=/camera/rgb/image_raw  启动mono相机: rosrun image_view image_view image:=/camera/rgb/image_rect_mono   启动深度图像: rosrun image_view image_view image:=/camera/depth/image_rect   2.rviz rosrun rviz rviz

自动充电:

roslaunch kobuki_auto_docking minimal.launch --screen roslaunch kobuki_auto_docking activate.launch --screen

显示turtlebot传感器信息:

rostopic echo /mobile_base/sensors/core

显示在线信息:

rostopic echo /laptop_charge

测试工作站和turtlebot通信是否正常:

工作站:

rostopic pub -r10 /hello std_msgs/String "hello"

turtlebot:

rostopic echo /hello

使用gmapping进行SLAM

1、启动ros,turtlebot,打开gmapping软件包:

roslaunch turtlebot_navigation gmapping_demo.launch

2.打开工作站rviz:

roslaunch turtlebot_rviz_launchers view_navigation.launch

3.打开键盘控制

四、保存地图:

rosrun map_server map_saver -f ~/my_map

rosbag

rosbag记录节点数据:

rosbag record -a -O cmd_record(保存的文件名称)

复现:

rosbag play cmd_record.bag

数据可视化工具

rqt

启动rviz

rosrun rviz rviz

启动gazebo:

roslaunch gazebo_ros  模型

在gazebo仿真里面gmapping建图

启动Gazebo并加载机器人和环境模型

roslaunch turtlebot_gazebo turtlebot_world.launch

运行gmapping

roslaunch turtlebot_gazebo gmapping_demo.launch

开启rviz观察建图过程

roslaunch turtlebot_rviz_launchers view_navigation.launch

保存地图

rosrun map_server map_saver -f map/mygazebo  -f可指定地图的存储目录和名称。

关闭所有终端,修改map/mygazebo.yaml文件路径(根据自己的电脑路径修改)

重新启动:

roslaunch turtlebot_gazebo turtlebot_world.launch roslaunch turtlebot_gazebo amcl_demo.launch map_file:=/home/xx/map/mygazebo.yaml roslaunch turtlebot_rviz_launchers view_navigation.launch

利用map_server回放本地地图文件

rosrun map_server map_server mapname.yaml [_frame_id:=frame_id]

其中,mapname.yaml指定的本地地图文件,_frame_id参数(可选)用于设置发布地图的坐标系。 用法示例:

rosrun map_server map_server lidar_map.yaml _frame_id:=map_lidar 

可读取本地文件lidar_map.yaml获取地图信息,发布新的/map主题可用于地图显示,同时_frame_id参数指定/map主题中新闻的坐标名称(frame_id)为map_lidar.

QXcbConnection: Could not connect to display

已放弃 (核心已转储)

export DISPLAY=':0.0'

导入已建图

启动turtlebot2:

roslaunch turtlebot_bringup minimal.launch

启动amcl程序:

roslaunch turtlebot_navigation amcl_demo.launch map_file:=/home/daniel/map/turtlebot_test_map.yaml

启动rviz:

roslaunch turtlebot_rviz_launchers view_navigation.launch --screen

  • amcl它是移动机器人二维环境下的概率定位系统。根据订阅的地图数据和激光扫描特性,使用粒子滤波器获得最佳定位点

  • 网上新开端口,打开roscore

roscore
  • 上网新开端口,启动turtlebot

roslaunch turtlebot_bringup minimal.launch
  • 上网新开端口,启动gmapping,构建地图

roslaunch turtlebot_navigation rplidar_gmapping_demo.launch
  • 工作机或上网新开端口,启动键盘操作Turtlebot

roslaunch turtlebot_teleop keyboard_teleop.launch 
  • 工作机或上网新开端口,启动rviz,实时检查建图情况

roslaunch turtlebot_rviz_launchers view_navigation.launch

  • 网上新开端口,建立目录,保存地图

mkdir -p ~/map rosrun map_server map_saver -f ~/map/rplidar_gmapping ls ~/map   #查看内容,包括rplidar_gmapping.pgm  rplidar_gmapping.yaml
  • 查看地图,已生成rplidar_gmapping.pgm可以使用图像浏览器(gimp, eog, gthumb, 等等)打开查看。

假如我们不想用Rviz中的2D Nav Goal我们也可以通过按钮直接设置目标点move_base_simple/goal在主题中发布目标点坐标命令:

rostopic pub /move_base_simple/goal geometry_msgs/PoseStamped '{ header: { frame_id: "map" },pose: { position: {x: 9.59, y: 1.36, z: 0.0}, orientation: {x: 0, y: 0, z: 0.68, w: 0.73}}}'

标签: 内建kinect传感器

锐单商城拥有海量元器件数据手册IC替代型号,打造 电子元器件IC百科大全!

锐单商城 - 一站式电子元器件采购平台