ROS之用程序设定导航目标点, 前进1米
参考链接 http://wiki.ros.org/navigation/Tutorials/SendingSimpleGoals
本文通过在导航包里面添加自动运行的程序,再将对应的cmake文件和pack.xml文件进行修改。
在进行下面的试验之前,希望你已经在自己的机器人上完成了使用move_base进行控制的任务
不想创建一个包,而是在已有的move_base package下创建一个节点,那必须修改这个package的package.xml文件:
在相应位置处添加上如下几行:
<bulid_depend>move_base_msgs</bulid_depend>
<bulid_depend>actionlib</bulid_depend>
第二步:在这个package下的src文件下用文本编辑器创建一个cpp文件src/simple_navigation_goals.cpp.。如果还没有src文件夹,自己手动创建一个。将下列代码复制进去:
1 #include <ros/ros.h>
2 #include <move_base_msgs/MoveBaseAction.h>
3 #include <actionlib/client/simple_action_client.h>
4
5 typedef actionlib::SimpleActionClient<move_base_msgs::MoveBaseAction> MoveBaseClient;
6
7 int main(int argc, char** argv){
8 ros::init(argc, argv, “simple_navigation_goals”);
9
10 //tell