We have introduced the features and structure of ROS. Next we will begin to prepare for the strong ROS. On the wiki on the ROS official website, the tutorials for new users are very detailed. It is best to clarify all the tutorials for new users. This is the most basic thing for later development. Despite this, ROS is still difficult for beginners to get started. Here, I will summarize my learning history and serve as a reference for other new users.
I. Installing ROS
The installation of ROS is of course the first step. Here we use ubuntu, because ROS supports the best on ubuntu. If you are a newbie, we recommend that you use the "apt-get" Method for installation. It is not easy to install. Follow the instructions on the wiki, the full version of ROS can be installed in about half an hour :( now the latest version of ROS is groovy, but I am still used to using fuerte) http://ros.org/wiki/fuerte/Installation/Ubuntu
If you want to challenge source code compilation, there is certainly no problem:
Http://ros.org/wiki/fuerte/Installation/Ubuntu/Source
After the installation is complete, Run "roscore". If there is no problem, the installation will be successful!
Note: groovy version of installation: "apt-get": http://www.ros.org/wiki/groovy/Installation/Ubuntu source code compilation: http://www.ros.org/wiki/policy/installation/source、rosnovice tutorial
Wiki novice tutorials are still very detailed, have an explanation of the Code, Newbie must understand these examples and code: http://www.ros.org/wiki/ROS/Tutorials
The above tutorial is English, if you feel a little pressure (I am), you can refer to the following two blog part of the Translation: http://blog.sina.com.cn/s/articlelist_1712413141_0_1.html but later learning is English information, it is still necessary to adapt to reading English documents. ROS uses the C ++ and python programming languages, so there are also feature packages roscpp and rospy for these two languages. The tutorials of these two packages are basically similar to those of the above tutorial, after reading the above tutorial, you can also look at the tutorials for these two packages:
Http://www.ros.org/wiki/rospy_tutorials
Http://www.ros.org/wiki/roscpp/Tutorials to learn the above tutorial, you should at least understand the node and message in ROS is used for it, if you have not understood, then read it several times!
III. The common functions of ROS provide many powerful functions. after learning the basic knowledge above, we will continue to deepen our work. 1. rviz is a powerful 3D visualization tool in ROS. This tool is frequently used in the future and must be understood. For detailed tutorials, refer to wiki: http://www.ros.org/wiki/rviz we can create our own robots inside and let them move. You can also create maps and display 3D point clouds. In short, all the things you want to display in ROS can be displayed here. Of course, these displays are all completed through message subscription. Robots publish data through Ros, rviz subscribe to messages to receive data, and then display the data in a certain data format, see the following link: http://www.ros.org/wiki/rviz/DisplayTypes
See the above robot, isn't it cool, in rviz, such a robot model is described through the urdf file, specific urdf file how to write, refer to wiki: http://www.ros.org/wiki/urdf
2. TF is a Coordinate Transformation System in ROS, which is often used in robot modeling and simulation.
There are two major Coordinate Systems in ROS: (1) fixed Coordinate System: The reference coordinate system used to represent the world; (2) Target coordinate system: the reference coordinate system relative to the camera's perspective. See the Tutorial: http://www.ros.org/wiki/tf 3, gazebo this tool is the physical simulation environment in ROS, gazebo itself is a robot simulation software, based on the ODE physical engine, it can simulate many physical features of robots and the environment. This software can be understood a little and is not necessary for subsequent development. For more information about the tutorial, see http://www.ros.org/wiki/simulator_gazebo/tutorials4?ros=common robots 1 and PR2. pr2. This robot is the main Maintainer of ROS (Willow Garage) tailored to ROS. It has two computers running ubuntu and ROS, two machine arm, and many awesome sensors, the function is very powerful, but the price is very expensive. It is rarely seen in China and is basically in foreign research institutes. This robot has a lot of ROS packages, from simulation to navigation, so the Code has a high reference value, of course, the novice should first look at the code of other robots and then challenge PR2, the code is more complex. Wiki: http://www.ros.org/wiki/Robots/PR2 2. TurtleBot is a typical representative of the Application of ROS small mobile robot. There are many materials, documents and code, mainly in modeling and navigation positioning, the code is easy to understand and can be used as the best robot for reference by new users. The robot shown in rviz above is it. Wiki: http://www.ros.org/wiki/Robots/TurtleBot 3, Husky, Erratic the two robots and TurtleBot almost, are small wheeled mobile robots, can also be used as a reference for beginners to learn:
Http://www.ros.org/wiki/Robots/Husky http://www.ros.org/wiki/Robots/Erratic These tutorials and robots are basically I studied and learned at that time, summary here also let those confused beginners as a reference, you can understand and master ROS as soon as possible. Once again, the new tutorials on wiki must be familiar with each other, and the subsequent content can be learned in the follow-up learning process. * This article only represents my opinion and serves as a reference.
----------------------------------------------------------------
You are welcome to repost my article.
Reprinted, please note: transferred from ancient-month
Http://blog.csdn.net/hcx25909
Continue to follow my blog