ci_footbot_turret_actuator.h
Go to the documentation of this file.
1 
43 #ifndef CCI_FOOTBOT_TURRET_ACTUATOR_H
44 #define CCI_FOOTBOT_TURRET_ACTUATOR_H
45 
46 namespace argos {
47  class CCI_FootBotTurretActuator;
48 }
49 
50 #include <argos3/core/control_interface/ci_actuator.h>
51 #include <argos3/core/utility/math/angles.h>
52 
53 namespace argos {
54 
55  class CCI_FootBotTurretActuator : virtual public CCI_Actuator {
56 
57  public:
58 
60  enum ETurretModes {
65  };
66 
67  public:
68 
71 
72  public:
73 
78 
89  virtual void SetRotation(const CRadians& c_angle) = 0;
90 
101  virtual void SetRotationSpeed(SInt32 n_speed_pulses) = 0;
102 
108  virtual void SetMode(ETurretModes e_mode) = 0;
109 
118  void SetActiveWithRotation(const CRadians& c_angle);
119 
124  void SetSpeedControlMode();
125 
130  void SetPositionControlMode();
131 
136  void SetPassiveMode();
137 
138 #ifdef ARGOS_WITH_LUA
139  virtual void CreateLuaState(lua_State* pt_lua_state);
140 #endif
141  };
142 
143 }
144 
145 #endif
void SetPositionControlMode()
Sets the turret control mode to position control.
void SetSpeedControlMode()
Sets the turret control mode to speed control.
The basic interface for all actuators.
Definition: ci_actuator.h:34
static const CRange< Real > NORMALIZED_SPEED_RANGE
virtual void SetRotation(const CRadians &c_angle)=0
Sets the turret rotation Turret rotation is expressed in radians, positive values rotate the turret c...
virtual void SetRotationSpeed(SInt32 n_speed_pulses)=0
Sets the turret rotation speed Turret rotation speed is expressed in motor pulses, positive values rotate the turret clockwise when looking from above.
virtual void SetMode(ETurretModes e_mode)=0
Sets the turret control mode Modes are: angular position control, rotation speed control, passive mode, off.
void SetPassiveMode()
Sets the turret control mode to passive.
It defines the basic type CRadians, used to store an angle value in radians.
Definition: angles.h:42
The namespace containing all the ARGoS related code.
Definition: ci_actuator.h:12
signed int SInt32
32-bit signed integer.
Definition: datatypes.h:93
static const CRange< SInt32 > SPEED_RANGE
void SetActiveWithRotation(const CRadians &c_angle)
Sets the turret control mode to active, and sets the target rotation to the given one...