ROS入门配置及turtlebot碰到的坑
ROS⼊门配置及turtlebot碰到的坑
暑期学校⽤turltebot做了diy项⽬,在配置环境时碰到了不少坑,在这⾥记录⼀下⾃⼰的⾟酸历程。
安装Ubuntu14.04双系统
注意Ubuntu的版本跟ROS的版本是相对应的,每⼀版ROS都有对应的Ubuntu版本,不要装错了,我这⾥装的是Ubuntu14.04+indigo
这个双系统安装过程就没什么好说的了,⽹上安装博客⼀⼤堆,我遇到的问题就是开机时会在logo处卡死,是NVIDIA显卡的问题,开机摁e进⼊设置模式,将splash quiet后⾯加上nomodeset就好了,开机后再修改grub⽂件
sudo gedit /etc/default/grub    打开grub⽂件
将    GRUB_CMDLINE_LINUX_DEFAULT="quiet splash"
修改为: GRUB_CMDLINE_LINUX_DEFAULT="quiet splash nomodeset"
然后保存关闭,再在终端中输⼊sudo update-grub就ok了。
还有,如果开机没有开机项的话可以⽤easyBCD试⼀下
安装ROS-indigo
$ sudo apt-key adv --keyserver hkp://pool.sks-keyservers --recv-key 0xB01FA116
$ sudo apt-get update
$ sudo apt-get install ros-indigo-desktop-full
$ sudo rosdep init
$ rosdep update
$ echo "source /opt/ros/indigo/setup.bash" >> ~/.bashrc
$ source ~/.bashrc
$ sudo apt-get install python-rosinstall
安装turtlebot相关的包邮政网上银行登陆
$ sudo apt-get install ros-indigo-turtlebot-*
安装完成后可以⽤
$ roscore
检测⼀下安装是否成功,成功的话会显⽰started core service [/rosout]
⽹络配置
turtlebot的操作⼀般是⽤⼀台电脑连接turtlebot,这台电脑需要跟着turtlebot动,称为turtlebot端,⽤另⼀台电脑远程登录turtlebot端,负责遥控,称为workstation。
turtlebot端配置
$ ifconfig
获取 IP_OF_TURTLEBOT
$ echo export ROS_HOSTNAME=IP_OF_TURTLEBOT >> ~/.bashrc
$ source ~/.bashrc
workstation配置
$ ifconfig
获取 IP_OF_PC
$ echo export ROS_HOSTNAME=IP_OF_PC >> ~/.bashrc
$ source ~/.bashrc
测试⽹络配置
笔记本排风扇在workstation端登录turtlebot端,-Y⽤于显⽰图形界⾯
$ ssh  -Y  turtlebot端主机名@IP_OF_TURTLEBOT
启动 Turtlebot
$ roslaunch turtlebot_bringup minimal.launch
新开⼀个终端登录turtlebot后,运⾏下⾯命令
$ roslaunch turtlebot_teleop keyboard_teleop.launch
如果能⽤终端提⽰的信息遥控turtlebot,则证明成功。
这⼀部分作者是在实验室的局域⽹下实现的,使⽤校园⽹发现⽆法连接。
demo运⾏篇
这⼀部分主要介绍使⽤kinect显⽰图像,使⽤rviz显⽰图像、交互控制turtlebot,使⽤turtlebot机器⼈follower,创建室内地图。以下操作都是在workstation端执⾏。
作者⼀开始⽤的是实验室早就装好环境的电脑做的,在这⼀部分碰到了⼗分多的坑,基本执⾏哪个命令都是报no device is connected,⽹上的教程⼤多都说是驱动错误,需要重装驱动,或者就是要设置~/.bashrc⾥的相机型号。但是我却发现实验室的电脑⽆法重装驱动,⽆论是⽤apt安装还是源码安装都装不上,只好去修改相机型号,也没能解决问题。所以只能弃⽤实验室的电脑,换上⾃⼰的电脑,从双系统开始装,实验室的电脑重新装⼀下ros和turtlebot应该也是可以⽤的,但不是⾃⼰的电脑也不好随便搞。如果在重新装了环境之后还是不能正常连接kinect的话,有可能是usb⼝的问题,把usb3.0换成usb2.0就好了。
韩国李明宇获取kinect图像
登⼊turtlebot端,启动turtlebot
$ roslaunch turtlebot_bringup minimal.launch
新开⼀个终端登录turtlebot后,运⾏下⾯命令启动相机
$ roslaunch openni2_launch openni2.launch
再新开⼀个终端,运⾏下⾯命令显⽰ RGB 图像:
$ rosrun image_view image_view image:=/camera/rgb/image_raw
运⾏下⾯命令显⽰深度图像:
$ rosrun image_view image_view image:=/camera/depth/image
通过rviz显⽰图像
登⼊turtlebot端,启动turtlebot
$ roslaunch turtlebot_bringup minimal.launch
新开终端,运⾏下⾯命令:
$ roslaunch turtlebot_bringup 3dsensor.launch
新开终端,运⾏下⾯命令:
$ roslaunch turtlebot_rviz_launchers view_robot.launch
在界⾯中勾选 Registered DepthCloud 选项,显⽰深度图像和彩⾊图像。通过rviz交互控制机器⼈
登⼊turtlebot端,启动turtlebot
$ roslaunch turtlebot_bringup minimal.launch
新开终端,运⾏ turtlebot_maker_server:
$ roslaunch turtlebot_interactive_markers interactive_markers.launch 新开终端,运⾏ rviz
roslaunch turtlebot_rviz_launchers view_robot.launch
交互操作:选中⼯具栏中的“interactive marker”并点击 interact 来操污到你那里滴水不止的说说99篇
1986年出生是什么命作 turtlebot。红⾊箭头控制机器⼈前进后退,紫⾊圆环控制机器⼈旋转。Turtlebot 机器⼈ Follower
turtle的⼩跟班功能,可以寻其前⽅⼀定范围内的物体,并把物体的中⼼作为他的视点,物体前进他就前进,物体后退他就后退。
登⼊turtlebot端,启动turtlebot
$ roslaunch turtlebot_bringup minimal.launch
打开另⼀终端,登⼊ Turtlebot 主机,运⾏下⾯命令启动 follower 程序:
$ roslaunch turtlebot_follower follower.launch
新开⼀个终端,运⾏以下命令,控制跟随的各项参数:
rosrun rqt_reconfigure rqt_reconfigure
使⽤ Turtlebot 机器⼈创建室内地图
登⼊turtlebot端,启动turtlebot
$ roslaunch turtlebot_bringup minimal.launch
打开另⼀终端,登⼊ Turtlebot 主机,运⾏下⾯命令启动建地图程序:
$ roslaunch turtlebot_navigation gmapping_demo.launch感恩父母的诗
新打开两个终端,登⼊ Turtlebot 主机,分别运⾏:
$ roslaunch turtlebot_rviz_launchers view_navigation.launch
$ roslaunch turtlebot_teleop keyboard_teleop.launch
通过键盘遥控 Turtlebot 机器⼈扫描房间,当地图建⽴完全后,新开终端运⾏下⾯命令保存地图:$ rosrun map_server map_saver -f /tmp/my_map
运⾏下⾯命令:
$ ls /tmp/
我们能够看到/tmp ⽂件夹下有两个⽂件 my_map.pgm 和 my_map.yaml,表明地
图保存成功。
最后就可以⽤保存的地图让机器⼈⾃动导航啦,祝⼤家玩的愉快。

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。