Skip to Content
Mastering ROS for Robotics Programming - Second Edition
book

Mastering ROS for Robotics Programming - Second Edition

by Lentin Joseph, Jonathan Cacace
February 2018
Beginner
580 pages
13h 20m
English
Packt Publishing
Content preview from Mastering ROS for Robotics Programming - Second Edition

The controller_interface package

The basic ROS low-level controller that we want to implement must inherit a base class called controller_interface::Controller from this package. This represents a base class containing four fundamental functions: init() , start(), update(), and stop(). The basic structure of the Controller class is given as follows:

namespace controller_interface 
{ 
  class Controller 
  { 
  public: 
    virtual bool init(hardware_interface *robotHW, 
                     ros::NodeHandle &nh); 
    virtual void starting(); 
    virtual void update(); 
    virtual void stopping(); 
  }; 
} 

The workflow of the controller class is shown as follows:

Become an O’Reilly member and get unlimited access to this title plus top books and audiobooks from O’Reilly and nearly 200 top publishers, thousands of courses curated by job role, 150+ live events each month,
and much more.
Start your free trial

You might also like

Mastering ROS for Robotics Programming - Third Edition

Mastering ROS for Robotics Programming - Third Edition

Lentin Joseph, Jonathan Cacace
Effective Robotics Programming with ROS - Third Edition

Effective Robotics Programming with ROS - Third Edition

Luis Sanchez, Enrique Fernandez Perdomo, Anil Mahtani

Publisher Resources

ISBN: 9781788478953Supplemental Content