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);
}


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章