小强ROS机器人教程(10)___使用kinect进行自主移动避障

%E4%BD%BF%E7%94%A8kinect%E8%BF%9B%E8%A1%8C%E8%87%AA%E4%B8%BB%E7%A7%BB%E5%8A%A8%E9%81%BF%E9%9A%9C”>http://community.bwbot.org/topic/115/%E5%B0%8F%E5%BC%BAros%E6%9C%BA%E5%99%A8%E4%BA%BA%E6%95%99%E7%A8%8B-10-%E4%BD%BF%E7%94%A8kinect%E8%BF%9B%E8%A1%8C%E8%87%AA%E4%B8%BB%E7%A7%BB%E5%8A%A8%E9%81%BF%E9%9A%9C

SORRY:本教程适用于2016年9月20号之后购买且带KINECT版的用户,对于其它用户,请联系、咨询技术支持

先看最后效果图,点击观看演示视频
0_1477461935895_6.png

原理:

freenct_stack包提供kinect驱动,其发布的点云通过image_pipeline转换成障碍物栅格分布图。nav_test软件包启动底盘导航程序后会自动处理分析障碍物分布图,之后根据rivz发布的目标导航点自主移动。

操作步骤:

1.配置小车主机和本地虚拟机的hosts文件,使两者能互相访问对应的ros数据

1.A 配置本地虚拟机

sudo gedit /etc/hosts
将下图中的ip地址换成小车实际数值
0_1477463825729_2.PNG

1.B 配置小车主机

局域网ssh登入小车主机
ssh xiaoqiang@192.168.0.101 -X
sudo gedit /etc/hosts
将下图中的ip地址换成本地虚拟机实际数值,主机名称改为虚拟机名称
0_1477463790362_1.PNG

2.在本地虚拟机中新开3个窗口,分别ssh登入小车,启动原理部分提及的相关软件包

2.A SSH登入

0_1477464185283_3.PNG

2.B 在第一个窗口启动KINECT驱动

roslaunch freenect_launch kinect-xyz.launch
2.C 在第二个窗口设置KINECT俯仰角,这个角度不是任意的

rostopic pub /set_tilt_degree std_msgs/Int16 ‘{data: -19}’ -r 1
2.D 编辑底盘导航程序配置文件/HOME/XIAOQIANG/DOCUMENTS/ROS/SRC/NAV_TEST/CONFIG/FAKE/BASE_LOCAL_PLANNER_PARAMS2.YAML ,使能KINECT

0_1477465423181_8.PNG

2.E 在第三个窗口启动底盘导航程序

roslaunch nav_test fake_move_base_blank_map.launch
2.F 全部正常,会出现类似下图的界面,到此小车端配置启动完成

0_1477464735127_4.PNG

3.在本地虚拟机中新开1个窗口,用来启动rviz

3.A 加入ROS局域网后,打开RVIZ

export ROS_MASTER_URI=http://xiaoqiang-desktop:11311
rviz
0_1477464940348_5.PNG

3.B 点击RVIZ界面左上角的OPEN CONFIG,选择小车主机上的/HOME/XIAOQIANG/DOCUMENTS/ROS/SRC/NAV_TEST/CONFIG/NAV_ADDWA_KINECT.RVIZ配置文件

0_1477465271618_6.PNG

3.C 正常的话,现在RVIZ中将出现类似下图的画面,现在所有配置都已经完成,开始发布导航目标点

0_1477465971588_1.png

3.D 任性发布一个目标点,小车会开始自主移动

0_1477466042343_2.png

3.E 小车到达目标点,请继续尝试其它位置,本教程结束

0_1477466074277_3.png

展开阅读全文

没有更多推荐了,返回首页