ARGoS
3
A parallel, multi-engine simulator for swarm robotics
|
Go to the documentation of this file.
8 #include <argos3/core/utility/logging/argos_log.h>
16 m_pcQuadRotorEntity(NULL) {
34 THROW_ARGOSEXCEPTION(
"Can't associate a quadrotor position actuator to entity \"" << c_entity.
GetId() <<
"\" because it conflicts with a previously associated quadrotor actuator.");
110 "quadrotor_position",
"default",
111 "Carlo Pinciroli [ilpincy@gmail.com]",
113 "The quadrotor position actuator.",
114 "This actuator controls the position of a quadrotor robot. For a\n"
115 "complete description of its usage, refer to the\n"
116 "ci_quadrotor_position_actuator.h file.\n\n"
117 "REQUIRED XML CONFIGURATION\n\n"
120 " <my_controller ...>\n"
124 " <quadrotor_position implementation=\"default\" />\n"
128 " </my_controller>\n"
130 " </controllers>\n\n"
131 "OPTIONAL XML CONFIGURATION\n\n"
132 "None for the time being.\n\n"
const SAnchor & GetOriginAnchor() const
Returns a const reference to the origin anchor associated to this entity.
CQuaternion Orientation
The orientation of the anchor wrt the global coordinate system.
virtual void Reset()
Resets the actuator to the state it had just after Init().
virtual void SetRobot(CComposableEntity &c_entity)
Sets the entity associated to this actuator.
const std::string & GetId() const
Returns the id of this entity.
The namespace containing all the ARGoS related code.
REGISTER_ACTUATOR(CQuadRotorPositionDefaultActuator, "quadrotor_position", "default", "Carlo Pinciroli [ilpincy@gmail.com]", "1.0", "The quadrotor position actuator.", "This actuator controls the position of a quadrotor robot. For a\n" "complete description of its usage, refer to the\n" "ci_quadrotor_position_actuator.h file.\n\n" "REQUIRED XML CONFIGURATION\n\n" " <controllers>\n" " ...\n" " <my_controller ...>\n" " ...\n" " <actuators>\n" " ...\n" " <quadrotor_position implementation=\"default\" />\n" " ...\n" " </actuators>\n" " ...\n" " </my_controller>\n" " ...\n" " </controllers>\n\n" "OPTIONAL XML CONFIGURATION\n\n" "None for the time being.\n\n", "Usable")
It defines the basic type CRadians, used to store an angle value in radians.
Basic class for an entity that contains other entities.
The exception that wraps all errors in ARGoS.
CEntity & GetComponent(const std::string &str_component)
Returns the component with the passed string label.
This entity is a link to a body in the physics engine.
CQuadRotorEntity::SPositionControlData m_sDesiredPosData
ticpp::Element TConfigurationNode
The ARGoS configuration XML node.
void ToEulerAngles(CRadians &c_z_angle, CRadians &c_y_angle, CRadians &c_x_angle) const
void SetPositionControlData(const SPositionControlData &s_data)
void SetControlMethod(EControlMethod e_control_method)
#define THROW_ARGOSEXCEPTION_NESTED(message, nested)
This macro throws an ARGoS exception with the passed message and nesting the passed exception.
#define THROW_ARGOSEXCEPTION(message)
This macro throws an ARGoS exception with the passed message.
virtual void SetAbsolutePosition(const CVector3 &c_pos)
Sets the absolute position of the robot in the environment.
virtual void Init(TConfigurationNode &t_tree)
Initializes the actuator from the XML configuration tree.
virtual void SetRelativeYaw(const CRadians &c_yaw)
Sets the yaw of the robot in the environment relative to the current position and attitude.
virtual void Update()
Updates the state of the entity associated to this actuator.
CVector3 & Rotate(const CQuaternion &c_quaternion)
Rotates this vector by the given quaternion.
virtual void SetRelativePosition(const CVector3 &c_pos)
Sets the position of the robot in the environment relative to the current position and attitude.
CEmbodiedEntity * m_pcEmbodiedEntity
virtual void SetAbsoluteYaw(const CRadians &c_yaw)
Sets the absolute yaw of the robot in the world.
CVector3 Position
The position of the anchor wrt the global coordinate system.
CQuadRotorEntity * m_pcQuadRotorEntity
EControlMethod GetControlMethod() const
virtual void Init(TConfigurationNode &t_node)
Initializes the actuator from the XML configuration tree.
CQuadRotorPositionDefaultActuator()