ROS编程小demo - ROS节点创建定时器,周期执行任务例子

1.ROS节点创建定时器 

// ros 头文件

// =========== Function declarations =============
void CB_mainCycle(const ros::TimerEvent& e);
void CB_publishCycle(const ros::TimerEvent& e);

// =============== Main function =================
int main( int argc, char** argv )
{
  ros::init(argc, argv, "test_optim_node");
  ros::NodeHandle n("~");
  // 创建ros 定时器
  ros::Timer cycle_timer = n.createTimer(ros::Duration(0.025), CB_mainCycle);
  ros::Timer publish_timer = n.createTimer(ros::Duration(0.1), CB_publishCycle);
}


// Planing loop
void CB_mainCycle(const ros::TimerEvent& e)
{
  // 周期执行的代码
  //planner->plan(PoseSE2(-4,0,0), PoseSE2(4,0,0)); // hardcoded start and goal for testing purposes
}

// Visualization loop
void CB_publishCycle(const ros::TimerEvent& e)
{
  // 周期执行的代码
  //planner->visualize();
  //visual->publishObstacles(obst_vector);
  //visual->publishViaPoints(via_points);
}


猜你喜欢

转载自blog.csdn.net/qq_29796781/article/details/80346952
今日推荐