Support for Quadcopter as a propulsion method.
More...
#include <Quadcopter.h>
|
Roboid * | roboid = nullptr |
| The roboid of this propulsion system.
|
|
Support for Quadcopter as a propulsion method.
- Note
- This is work in progress
◆ Quadcopter()
Quadcopter::Quadcopter |
( |
| ) |
|
◆ SetTwistSpeed() [1/3]
void Quadcopter::SetTwistSpeed |
( |
float |
forward, |
|
|
float |
yaw = 0.0F |
|
) |
| |
|
overridevirtual |
Get the Placement of a specific Motor.
- Parameters
-
motorIx | The index of the Motor |
- Returns
- Returns the Placement or a nullptr when no Placement with the give index could be found
Sets the forward and rotation speed of a (grounded) Roboid
- Parameters
-
forward | The target forward speed |
yaw | The target rotation speed around the vertical axis This function is typically used for Roboid which are driving on the ground. |
Reimplemented from Passer::RoboidControl::Propulsion.
◆ SetTwistSpeed() [2/3]
void Quadcopter::SetTwistSpeed |
( |
Vector2 |
linear, |
|
|
float |
yaw = 0.0F |
|
) |
| |
|
overridevirtual |
Sets the forward, sideward and rotation speed of a (grounded) Roboid.
- Parameters
-
linear | The target linear (forward, sideward) speed |
yaw | The target rotation speed around the vertical axis This function is typically used for Roboid which are driving on the ground which have to ability to move sideward |
Reimplemented from Passer::RoboidControl::Propulsion.
◆ SetTwistSpeed() [3/3]
virtual void Passer::RoboidControl::Quadcopter::SetTwistSpeed |
( |
Vector3 |
linear, |
|
|
float |
yaw = 0.0F , |
|
|
float |
pitch = 0.0F , |
|
|
float |
roll = 0.0F |
|
) |
| |
|
overridevirtual |
Set the target 3D linear and 3D rotation speed of a (flying) Roboid.
- Parameters
-
linear | The target linear speed |
yaw | The target rotation speed around the vertical axis |
pitch | The target rotation speed around the sideward axis |
roll | The target rotation speed around hte forward axis |
Reimplemented from Passer::RoboidControl::Propulsion.
◆ GetTargetVelocity()
Vector3 Quadcopter::GetTargetVelocity |
( |
| ) |
|
◆ GetYawSpeed()
float Quadcopter::GetYawSpeed |
( |
| ) |
|
◆ GetPitchSpeed()
float Quadcopter::GetPitchSpeed |
( |
| ) |
|
◆ GetRollSpeed()
float Quadcopter::GetRollSpeed |
( |
| ) |
|
◆ Update()
void Propulsion::Update |
( |
float |
currentTimeMs | ) |
|
|
inherited |
Update the propulsion state of the Roboid.
- Parameters
-
currentTimeMs | The time in milliseconds when calling this |
◆ GetMotorCount()
unsigned int Propulsion::GetMotorCount |
( |
| ) |
|
|
inherited |
Get the number of motors in this roboid.
- Returns
- The number of motors. Zero when no motors are present
◆ GetMotor()
Motor * Propulsion::GetMotor |
( |
unsigned int |
motorIx | ) |
|
|
inherited |
Get a specific motor.
- Parameters
-
motorIx | The index of the motor |
- Returns
- Returns the motor or a nullptr when no motor with the given index could be found
◆ SetVelocity()
void Propulsion::SetVelocity |
( |
Polar |
velocity | ) |
|
|
virtualinherited |
◆ GetVelocity()
Polar Propulsion::GetVelocity |
( |
| ) |
|
|
virtualinherited |
Retrieve the current velocity of the roboid.
- Returns
- The velocity in polar coordinates The actual units of the velocity depend on the implementation
Reimplemented in Passer::RoboidControl::DifferentialDrive.
◆ GetAngularVelocity()
float Propulsion::GetAngularVelocity |
( |
| ) |
|
|
virtualinherited |
Retrieve the current angular velocity of the roboid.
- Returns
- The angular velocity The actual unit of the angular velocity depend on the implementation
Reimplemented in Passer::RoboidControl::DifferentialDrive.
◆ velocity
Vector3 Passer::RoboidControl::Quadcopter::velocity = Vector3::zero |
|
protected |
◆ pitchSpeed
float Passer::RoboidControl::Quadcopter::pitchSpeed = 0.0F |
|
protected |
◆ yawSpeed
float Passer::RoboidControl::Quadcopter::yawSpeed = 0.0F |
|
protected |
◆ rollSpeed
float Passer::RoboidControl::Quadcopter::rollSpeed = 0.0F |
|
protected |
◆ roboid
Roboid* Passer::RoboidControl::Propulsion::roboid = nullptr |
|
inherited |
The roboid of this propulsion system.
◆ motorCount
unsigned int Passer::RoboidControl::Propulsion::motorCount = 0 |
|
protectedinherited |
◆ motors
Motor** Passer::RoboidControl::Propulsion::motors = nullptr |
|
protectedinherited |
The documentation for this class was generated from the following files: