ROS程序显示流程
安装ros
http://wiki.ros.org/ROS/Installation
运行roscore查看安装版本
管理roscore进程:
killall -9 roscore
and also:
killall -9 rosmaster
运行rviz:
在一个命令行运行:roscore
在另一个运行:rosrun rviz rviz
设置环境:
如果你是通过ubuntu上的 apt 工具来安装ROS的,那么你将会在'/opt/ros/<distro>/'目录中看到setup.*sh文件,然后你可以执行下面的source命令:
# source /opt/ros/<distro>/setup.bash
请使用具体的ROS发行版名称代替<distro>。
比如你安装的是ROS Indigo,则上述命令改为:
$ source /opt/ros/indigo/setup.bash
在每次打开终端时你都需要先运行上面这条命令后才能运行ros相关的命令,为了避免这一繁琐过程,你可以事先在.bashrc文件(初学者请注意:该文件是在当前系统用户的home目录下。)中添加这条命令,这样当你每次登录后系统已经帮你执行这些命令配置好环境。这样做也可以方便你在同一台计算机上安装并随时切换到不同版本的ROS(比如fuerte和groovy)。
此外,你也可以在其它系统平台上相应的ROS安装目录下找到这些setup.*sh文件。
查看ros环境:
echo $ROS_PACKAGE_PATH
创建ros工作空间:
详细链接:
http://wiki.ros.org/catkin/Tutorials/create_a_workspace
下面我们开始创建一个catkin 工作空间:
$ mkdir -p ~/catkin_ws/src$ cd ~/catkin_ws/src
即使这个工作空间是空的(在'src'目录中没有任何软件包,只有一个CMakeLists.txt链接文件),你依然可以编译它:
$ cd ~/catkin_ws/$ catkin_make
catkin_make命令在catkin 工作空间中是一个非常方便的工具。如果你查看一下当前目录应该能看到'build'和'devel'这两个文件夹。在'devel'文件夹里面你可以看到几个setup.*sh文件。source这些文件中的任何一个都可以将当前工作空间设置在ROS工作环境的最顶层,想了解更多请参考catkin文档。接下来首先source一下新生成的setup.*sh文件:
$ source devel/setup.bash
要想保证工作空间已配置正确需确保ROS_PACKAGE_PATH环境变量包含你的工作空间目录,采用以下命令查看:
$ echo $ROS_PACKAGE_PATH/home/<youruser>/catkin_ws/src:/opt/ros/indigo/share:/opt/ros/indigo/stacks
创建ROS程序包
详细内容链接地址:
http://wiki.ros.org/cn/ROS/Tutorials/CreatingPackage
本部分教程将演示如何使用catkin_create_pkg命令来创建一个新的catkin程序包以及创建之后都能做些什么。
首先切换到之前通过创建catkin工作空间教程创建的catkin工作空间中的src目录下:
# You should have created this in the Creating a Workspace Tutorial$ cd ~/catkin_ws/src
现在使用catkin_create_pkg命令来创建一个名为'beginner_tutorials'的新程序包,这个程序包依赖于std_msgs、roscpp和rospy:
$ catkin_create_pkg beginner_tutorials std_msgs rospy roscpp
这将会创建一个名为beginner_tutorials的文件夹,这个文件夹里面包含一个package.xml文件和一个CMakeLists.txt文件,这两个文件都已经自动包含了部分你在执行catkin_create_pkg命令时提供的信息。
catkin_create_pkg命令会要求你输入package_name,如果有需要你还可以在后面添加一些需要依赖的其它程序包:
# This is an example, do not try to run this# catkin_create_pkg <package_name> [depend1] [depend2] [depend3]
catkin_create_pkg命令也有更多的高级功能,这些功能在catkin/commands/catkin_create_pkg中有描述。
现有代码loc_visualization中:
在Rviz显示例子
http://wiki.ros.org/rviz/Tutorials/Markers%3A%20Basic%20Shapes
- 创建程序包
Before getting started, let's create a package called using_markers, somewhere in your package path:
catkin_create_pkg using_markers roscpp visualization_msgs
- 编译程序:
把代码放入此程序包src中
在工作空间目录下执行:
catkin_make
- 发布信息
rosrun using_markers basic_shapes
- 启动rviz
rosrun rviz rviz
注意,需要在rviz中添加显示项订阅信息,在rviz中点add,选mark,会在图层界面显示mark;
如有异常新开个命令口输入:
rosrun tf static_transform_publisher 0.0 0.0 0.0 0.0 0.0 0.0 map my_frame 100
如下显示电线和三维模型: