ARGoS 3
A parallel, multi-engine simulator for swarm robotics
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
46namespace 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
53namespace argos {
54
55 class CCI_FootBotTurretActuator : virtual public CCI_Actuator {
56
57 public:
58
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
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
signed int SInt32
32-bit signed integer.
Definition datatypes.h:93
The namespace containing all the ARGoS related code.
Definition ci_actuator.h:12
The basic interface for all actuators.
Definition ci_actuator.h:34
virtual void CreateLuaState(lua_State *pt_lua_state)=0
Creates the Lua state for this actuator.
It defines the basic type CRadians, used to store an angle value in radians.
Definition angles.h:42
void SetPassiveMode()
Sets the turret control mode to passive.
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.
void SetSpeedControlMode()
Sets the turret control mode to speed control.
virtual void SetRotationSpeed(SInt32 n_speed_pulses)=0
Sets the turret rotation speed Turret rotation speed is expressed in motor pulses,...
virtual void SetMode(ETurretModes e_mode)=0
Sets the turret control mode Modes are: angular position control, rotation speed control,...
virtual void SetRotation(const CRadians &c_angle)=0
Sets the turret rotation Turret rotation is expressed in radians, positive values rotate the turret c...
static const CRange< Real > NORMALIZED_SPEED_RANGE
void SetPositionControlMode()
Sets the turret control mode to position control.