Quadrotor References
- class Quadrotor
- Quadrotor(const std::string& cfg_path)
Construct quadrotor.
- Parameters:
cfg_path (const std::string&) – path to configuration yaml file
- Return type:
- Quadrotor(const QuadrotorDynamics& dynamics = QuadrotorDynamics(1.0, 0.25))
Construct quadrotor.
- Parameters:
dynamics (const QuadrotorDynamics& Default=(1.0, 0.25)) – quadrotor dynamics parameters
- Return type:
- ~Quadrotor();
Deconstruct quadrotor.
- Return type:
None
- reset();
Reset quadrotor’s quadstate.
- Return type:
bool
- reset(const QuadState& state)
Reset quadrotor’s quadstate to given quadstate.
- Parameters:
state (const QuadrotorDynamics&) – quadrotor new QuadState
- Return type:
bool
- init();
Initialize quadrotor’s quadstate to default.
- Return type:
None
- run(const Scalar dt)
Simulate dynamics for dt.
- Parameters:
dt (const Scalar) – delta time
- Return type:
bool
- run(const Command& cmd, const Scalar dt)
Simulate dynamics with command for dt.
- Parameters:
cmd (const Command&) – quadrotor command
dt (const Scalar) – delta time
- Return type:
bool
- getState(QuadState* const state)
Get the current state of the quadrotor.
- Parameters:
state (QuadState* const) – quadrotor state
- Return type:
bool
- getMotorThrusts(Ref<Vector<4>> motor_thrusts)
Get the current motor thrust of the quadrotor.
- Parameters:
motor_thrusts (Ref<Vector<4>>) – Motor thrusts
- Return type:
bool
- getMotorOmega(Ref<Vector<4>> motor_omega)
Get the current motor omega of the quadrotor.
- Parameters:
motor_omega (Ref<Vector<4>>) – Motor omega
- Return type:
bool
- getDynamics(QuadrotorDynamics* const dynamics)
Get the quadrotor dynamics.
- Parameters:
dynamics (QuadrotorDynamics* const) – quadrotor dynamics
- Return type:
bool
- getDynamics()
Get the quadrotor dynamics.
- Return type:
const QuadrotorDynamics&
- getSize()
Get the quadrotor size.
- Return type:
Vector<3>
- getPosition()
Get the quadrotor position.
- Return type:
Vector<3>
- getQuaternion()
Get the quadrotor orientation.
- Return type:
Quaternion
- getCameras()
Get all cameras assigned to the quadrotor.
- Return type:
std::vector<std::shared_ptr<RGBCamera>>
- getCamera(const size_t cam_id, std::shared_ptr<RGBCamera> camera)
Get the camera with the given id which is assigned to the quadrotor.
- Parameters:
cam_id (size_t) – camera ID
camera (std::shared_ptr<RGBCamera>) – pointer on camera object
- Return type:
bool
- setState(const QuadState& state)
Set quadrotor state.
- Parameters:
state (const QuadState&) – quadrotor state
- Return type:
bool
- setCommand(const Command& cmd)
Set quadrotor command.
- Parameters:
cmd (const Command&) – quadrotor command
- Return type:
bool
- updateDynamics(const QuadrotorDynamics& dynamics)
Update quadrotor dynamics.
- param dynamics:
quadrotor dynamics
- type dynamics:
const QuadrotorDynamics&
- rtype:
bool
- addRGBCamera(std::shared_ptr<RGBCamera> camera)
Add RGBCamera to quadrotor.
- Parameters:
camera (std::shared_ptr<RGBCamera>) – pointer on camera
- Return type:
bool
- runFlightCtl(const Scalar sim_dt, const Vector<3>& omega, const Command& cmd)
Run low-level controller.
- Parameters:
sim_dt (const Scalar) – simulation delta time
omega (const Vector<3>&) – omega
cmd (const Command&) – quadrotor command
- Return type:
Vector<4>
- runMotors(const Scalar sim_dt, const Vector<4>& motor_thrust_des)
Simulate motor.
- Parameters:
sim_dt (const Scalar) – simulation delta time
motor_thrust_des (const Vector<4>&) – desired motor thrust
- Return type:
None
- setWorldBox(const Ref<Matrix<3, 2>> box)
Set constraints for world.
- Parameters:
box (const Ref<Matrix<3, 2>>) – boundary box
- Return type:
bool
- constrainInWorldBox(const QuadState& old_state)
Check if quadstate is within the constraints of the world.
- Parameters:
box (const QuadState&) – old_state
- Return type:
bool
- getMass()
Get quadrotor mass.
- Return type:
Scalar
- setSize(const Ref<Vector<3>> size)
Set quadrotor size.
- Parameters:
size (const Ref<Vector<3>>) – quadrotor size
- Return type:
None
- setCollision(const bool collision)
Set information about quadrotor collision.
- Parameters:
collision (const bool) – if collided
- Return type:
None
Note
Need to implement getCollision
- getCollision()
Get information about quadrotor collision.
- Return type:
bool