一、ROS入门
http://download.csdn.net/detail/qq_36355662/9774692
参考博客:http://www.cnblogs.com/zxouxuewei/p/5096787.html
http://www.th7.cn/system/lin/201504/103167.shtml
(1)书籍:要说看说的话,最近的书还是比较多的《机器人操作系统浅析》,《ROS程序设计第一版&第二版》(有人说写的不好,其实不好也是有帮助的),还有一本红皮书讲ROS的,不建议看,版本太旧。目前的学习,都是以indigo版本的ROS为主。
(2)网上资料:这里就比较多了,这里的资料可以结合书籍同时进行学习,网站资料学习我给出一个大致的顺序:
》1 官网wiki:http://wiki.ros.org/cn/ROS/Tutorials,这肯定是第一步,学完之后再多看几遍,争取学懂!
》2 创客智造网站:http://www.ncnynl.com/category/turtlebot-Simulation/,跟着学学仿真,加深理解。这是一个非常好的开源网站,拥有非常多的资料,以后会发现它非常有用的。
》3 古月居博客:https://blog.csdn.net/column/details/ros-explore.html?&page=2,进一步加深ROS理解,以及熟练使用ROS相关的工具。
(3)视频:这是不建议看的,当然也没有,多动动手写写ROS功能包就行了。
(4)剩下的,就是按照自己的需求,适当的学习ROS相关的其他资料了。
二、仿真重点
学完仿真,把一些重要的命令总结下吧:
1.激活仿真的kinect
$ sudo apt-get install ros-indigo-openni-*
$ echo $TURTLEBOT_3D_SENSOR
如果你看到输出Kinect,你已经正确激活3D传感器。
2.遥控
(1)键盘遥控
$ roslaunch turtlebot_teleop keyboard_teleop.launch
(2)通过互动的标记来控制
$ sudo apt-get install ros-indigo-turtlebot-interactive-markers
$ roslaunch turtlebot_interactive_markers interactive_markers.launch
3.构建地图
(1)推出Gazebo的世界。
$ roslaunch turtlebot_gazebo turtlebot_world.launch
如果你想启动你自己的世界运行这个命令。
$ roslaunch turtlebot_gazebo turtlebot_world.launch
world_file:=/home/<username>/helloworld/turtlebot_custom_gazebo_worlds/turtlebot_world_0.world
(2)启动地图建设。
$ roslaunch turtlebot_gazebo gmapping_demo.launch
(3)使用rviz的地图构建过程可视化,可以方便遥控,像真实地开车一样,炫!
$ roslaunch turtlebot_rviz_launchers view_navigation.launch
(4)在一个新的终端运行image_view。
$ rosrun image_view image_view image:=/camera/rgb/image_raw
(5)启动键盘,驱动turtlebot转动。
$ roslaunch turtlebot_teleop keyboard_teleop.launch
(6)保存一张地图,在保存路径下。
$ rosrun map_server map_saver -f /home/<username>/helloworld/turtlebot_custom_maps/tutorial_0
4.自动导航
(1)启动Gazebo
$ roslaunch turtlebot_gazebo turtlebot_world.launch
(2)运行导航演示
$ roslaunch turtlebot_gazebo amcl_demo.launch
如果你已经启动了你自己的世界,或者你想使用你在上一课中创建的地图,请指定一个地图文件。
$ roslaunch turtlebot_gazebo amcl_demo.launch
map_file:=/home/<username>/helloworld/turtlebot_custom_maps/tutorial_2.yaml
(3)启动Rviz。$ roslaunch turtlebot_rviz_launchers view_navigation.launch
(4)在一个新的终端运行image_view。
$ rosrun image_view image_view image:=/camera/rgb/image_raw
5.拍照
(1)启动Gazebo。
$ roslaunch turtlebot_gazebo turtlebot_world.launch
(2)运行image_view,在保存路径下。
$ rosrun image_view image_view
image:=/camera/rgb/image_raw_filename_format:="/home/<username>/helloworld/turtlebot_photos/tutorial%02i.jpg"
6.录制视频
(1)启动Gazebo。
$ roslaunch turtlebot_gazebo turtlebot_world.launch
(2)打开一个新的终端和运行:
$ roslaunch turtlebot_teleop keyboard_teleop.launch
(3)在一个新的终端运行image_view。
$ rosrun image_view image_view image:=/camera/rgb/image_raw
(4)运行视频记录器,在保存路径下。
$ rosrun image_view video_recorder image:=/camera/rgb/image_raw
按Ctrl + C完成记录。
来源:CSDN
作者:blue@sky
链接:https://blog.csdn.net/qq_36355662/article/details/60958290