Important changes to repositories hosted on mbed.com
Mbed hosted mercurial repositories are deprecated and are due to be permanently deleted in July 2026.
To keep a copy of this software download the repository Zip archive or clone locally using Mercurial.
It is also possible to export all your personal repositories from the account settings page.
Dependencies: mbed
Controller Class Reference
This class implements a controller that regulates the speed of the two motors of the ROME2 mobile robot. More...
#include <Controller.h>
Public Member Functions | |
Controller (PwmOut &pwmLeft, PwmOut &pwmRight, EncoderCounter &counterLeft, EncoderCounter &counterRight) | |
Creates and initialises the robot controller. | |
virtual | ~Controller () |
Deletes this Controller object. | |
void | setTranslationalVelocity (float velocity) |
Sets the desired translational velocity of the robot. | |
void | setRotationalVelocity (float velocity) |
Sets the desired rotational velocity of the robot. | |
float | getActualTranslationalVelocity () |
Gets the actual translational velocity of the robot. | |
float | getActualRotationalVelocity () |
Gets the actual rotational velocity of the robot. | |
void | setDesiredSpeedLeft (float desiredSpeedLeft) |
Sets the desired speed of the left motor. | |
void | setDesiredSpeedRight (float desiredSpeedRight) |
Sets the desired speed of the right motor. | |
float | getActualSpeedLeft () |
Gets the actual speed of the left motor. | |
float | getActualSpeedRight () |
Gets the actual speed of the right motor. | |
void | setX (float x) |
Sets the actual x coordinate of the robots position. | |
float | getX () |
Gets the actual x coordinate of the robots position. | |
void | setY (float y) |
Sets the actual y coordinate of the robots position. | |
float | getY () |
Gets the actual y coordinate of the robots position. | |
void | setAlpha (float alpha) |
Sets the actual orientation of the robot. | |
float | getAlpha () |
Gets the actual orientation of the robot. |
Detailed Description
This class implements a controller that regulates the speed of the two motors of the ROME2 mobile robot.
Definition at line 20 of file Controller.h.
Constructor & Destructor Documentation
Controller | ( | PwmOut & | pwmLeft, |
PwmOut & | pwmRight, | ||
EncoderCounter & | counterLeft, | ||
EncoderCounter & | counterRight | ||
) |
Creates and initialises the robot controller.
- Parameters:
-
pwmLeft a reference to the pwm output for the left motor. pwmRight a reference to the pwm output for the right motor. counterLeft a reference to the encoder counter of the left motor. counterRight a reference to the encoder counter of the right motor.
Definition at line 30 of file Controller.cpp.
~Controller | ( | ) | [virtual] |
Deletes this Controller object.
Definition at line 82 of file Controller.cpp.
Member Function Documentation
float getActualRotationalVelocity | ( | ) |
Gets the actual rotational velocity of the robot.
- Returns:
- the actual rotational velocity, given in [rad/s].
Definition at line 118 of file Controller.cpp.
float getActualSpeedLeft | ( | ) |
Gets the actual speed of the left motor.
- Returns:
- the actual speed given in [rpm].
Definition at line 145 of file Controller.cpp.
float getActualSpeedRight | ( | ) |
Gets the actual speed of the right motor.
- Returns:
- the actual speed given in [rpm].
Definition at line 154 of file Controller.cpp.
float getActualTranslationalVelocity | ( | ) |
Gets the actual translational velocity of the robot.
- Returns:
- the actual translational velocity, given in [m/s].
Definition at line 109 of file Controller.cpp.
float getAlpha | ( | ) |
Gets the actual orientation of the robot.
- Returns:
- the orientation, given in [rad].
Definition at line 208 of file Controller.cpp.
float getX | ( | ) |
Gets the actual x coordinate of the robots position.
- Returns:
- the x coordinate of the position, given in [m].
Definition at line 172 of file Controller.cpp.
float getY | ( | ) |
Gets the actual y coordinate of the robots position.
- Returns:
- the y coordinate of the position, given in [m].
Definition at line 190 of file Controller.cpp.
void setAlpha | ( | float | alpha ) |
Sets the actual orientation of the robot.
- Parameters:
-
alpha the orientation, given in [rad].
Definition at line 199 of file Controller.cpp.
void setDesiredSpeedLeft | ( | float | desiredSpeedLeft ) |
Sets the desired speed of the left motor.
- Parameters:
-
desiredSpeedLeft desired speed given in [rpm].
Definition at line 127 of file Controller.cpp.
void setDesiredSpeedRight | ( | float | desiredSpeedRight ) |
Sets the desired speed of the right motor.
- Parameters:
-
desiredSpeedRight desired speed given in [rpm].
Definition at line 136 of file Controller.cpp.
void setRotationalVelocity | ( | float | velocity ) |
Sets the desired rotational velocity of the robot.
- Parameters:
-
velocity the desired rotational velocity, given in [rad/s].
Definition at line 100 of file Controller.cpp.
void setTranslationalVelocity | ( | float | velocity ) |
Sets the desired translational velocity of the robot.
- Parameters:
-
velocity the desired translational velocity, given in [m/s].
Definition at line 91 of file Controller.cpp.
void setX | ( | float | x ) |
Sets the actual x coordinate of the robots position.
- Parameters:
-
x the x coordinate of the position, given in [m].
Definition at line 163 of file Controller.cpp.
void setY | ( | float | y ) |
Sets the actual y coordinate of the robots position.
- Parameters:
-
y the y coordinate of the position, given in [m].
Definition at line 181 of file Controller.cpp.
Generated on Wed Jul 20 2022 03:42:12 by
