goPID.hpp
Go to the documentation of this file.
1 
10 #ifndef QTCTRL_PID_REACH_CTRL
11 #define QTCTRL_PID_REACH_CTRL
12 
13 #include <ctrl/reach.hpp>
14 #include <iSeeML/rob/OrPtConfig.hpp>
15 
21 class PIDreachCtrl : public ReachingCtrl {
22  double trans_prop_coef;
25  double rot_prop_coef;
26  double rot_integ_coef;
27  double rot_deriv_coef;
28 
29  double integr_dist;
31 
32 public:
45  PIDreachCtrl(const MotionModel& model, const double& ts,
46  const State& goal_aimed, const double coef[6])
47  : ReachingCtrl(model, ts, goal_aimed),
48  trans_prop_coef(coef[0]), trans_integ_coef(coef[1]),
49  trans_deriv_coef(coef[2]), rot_prop_coef(coef[3]),
50  rot_integ_coef(coef[4]), rot_deriv_coef(coef[5]),
51  integr_dist(0), integr_angle_diff(0) {}
52 
54  virtual ~PIDreachCtrl() {}
55 
56  // Cf Controller::choose_velocities(double&, double&, ...)
57  void chooseVelocities(double& trans_vel, double& rot_vel,
58  std::ostream&);
59 
60 }; // end of class PIDreachCtrl
61 
62 #endif // QTCTRL_PID_REACH_CTRL
double integr_dist
Integrated distance.
Definition: goPID.hpp:29
PIDreachCtrl(const MotionModel &model, const double &ts, const State &goal_aimed, const double coef[6])
The constructor needs a motion model, the time step of the controller, a goal state and the PID coeff...
Definition: goPID.hpp:45
double trans_deriv_coef
Translation derivative coefficient.
Definition: goPID.hpp:24
double rot_integ_coef
Rotation integration coefficient.
Definition: goPID.hpp:26
ReachingCtrl aims at reaching a given state with the robot.
Definition: reach.hpp:25
double rot_prop_coef
Rotation proportional coefficient.
Definition: goPID.hpp:25
double trans_integ_coef
Translation integration coefficient.
Definition: goPID.hpp:23
This class defines a state, i.e. a configuration and its (translation and rotation) velocities...
Definition: state.hpp:22
double rot_deriv_coef
Rotation derivative coefficient.
Definition: goPID.hpp:27
Oriented point reaching controller abstract class.
This class defines a motion model, with the motion limits.
Definition: motion.hpp:28
void chooseVelocities(double &trans_vel, double &rot_vel, std::ostream &)
Computes new velocities for ROS node.
Definition: goPID.cpp:14
PIDreachCtrl aims at reaching an oriented point with the robot, using a PID controller.
Definition: goPID.hpp:21
double trans_prop_coef
Translation proportional coefficient.
Definition: goPID.hpp:22
virtual ~PIDreachCtrl()
The destructor needs to be explicitely redefined.
Definition: goPID.hpp:54
double integr_angle_diff
Integrated angle difference.
Definition: goPID.hpp:30


qt_ctrl
Author(s): Alexis Scheuer
autogenerated on Wed Dec 16 2020 15:51:32