远程控制turtlebot跑通hector-slam算法

1.配置局域网连接

我自己的设备是英伟达的主板和turtlebot连接作为从机,然后呢自己自己的笔记本电脑是主机。通过一个无线路由器使得两个设备通讯。

  1. 首先是配置网络:设置好路由器名称以及密码使得两设备都能连接到网络,并通过TPlogin.cn网站查看自己所给设备分配的IP地址。我的是192.168.1.101(turtlebot)和192.168.1.105(自己笔记本电脑)。
  2. 其次安装配置:参考创客制造的的教程:https://www.ncnynl.com/archives/201609/793.html

说下那个关于参数配置第4,5步那里如下的两行命令可以直接对~/中的.bashrc文件进行编辑,用gedit编辑打开就行(我比较喜欢这个,其他编辑器也可以,很好下载)。看好IP地址进行编辑,不过如何实验结束或者是再链接其他网络的时候要把IP地址更改过来或这注释掉重新编写,否则roscore命令执行会没有反应。

到这里网络部分已经配置完成了。

2.下载相关软件包

我使用的激光传感器是Hokuyo URG(具体型号记不清了),ROS版本是indigo。

  1. 安装算法包:sudo apt-get installros-indigo-hector-slam //安装hector_slam
  2. 安装传感器驱动:sudo apt-get installros-indigo-hokuyo-node //安装hokuyo串口驱动   我的驱动是安装在英伟达的主板上了,因为激光安装在板子上。

3.操作运行

首先修改启动文件tutorial.launch(位置在/opt/ros/indigo/share/hector_slam_launch/launch),改成如下的状态:

 

  
  //要把odom值换成base_frame,这样就不需要odemetry,不然会报错 
 
 
  
  
 
 

这一步我是参考:https://blog.csdn.net/z15f34/article/details/53237845

其实我觉得还会遇到很多问题,也没有办法都列举出来。

其次运行了

启动(笔记本电脑主机)roscore

运行:rosrun hokuyo_node hokuyo_node   //启动传感器

运行:roslaunch hector_slam_launch tutorial.launch  //中间是包名称,后一个是启动文件

这时就能看见rviz运行了,此后可以在从机上启动turtlebot使用它来保证激光传感器的移动,构建地图。中间还会有很多问题,待更。

 

你可能感兴趣的:(ROS学习)