![]() |
Autonomy Software C++ 24.5.1
Welcome to the Autonomy Software repository of the Mars Rover Design Team (MRDT) at Missouri University of Science and Technology (Missouri S&T)! API reference contains the source code and other resources for the development of the autonomy software for our Mars rover. The Autonomy Software project aims to compete in the University Rover Challenge (URC) by demonstrating advanced autonomous capabilities and robust navigation algorithms.
|
This class implements the Bicycle Model. This model is used to predict the future state of the rover given a current state and control input. More...
#include <BicycleModel.hpp>
Classes | |
struct | Prediction |
This struct is used to store the predicted state of the bicycle. More... | |
Public Member Functions | |
BicycleModel () | |
Construct a new Bicycle Model object. | |
BicycleModel (const double dWheelbase, const double dXPosition, const double dYPosition, const double dTheta) | |
Construct a new Bicycle Model object. | |
void | ResetState (const double dXPosition, const double dYPosition, const double dTheta) |
Resets the state of the model to a new position and heading. | |
void | ResetState () |
Resets the state of the model to a default state. | |
void | UpdateState (const double dXPosition, const double dYPosition, const double dTheta) |
Update the state of the model, given a new position and heading. This method will automatically calculate the velocity of the rover base on the new and current position. The steering angle is also updated automatically based on the new and current heading. | |
void | Predict (const double dTimeStep, const int nNumPredictions, std::vector< Prediction > &vPredictions) |
Accessor for the State private member. | |
void | SetWheelbase (const double dWheelbase) |
Mutator for the Wheelbase private member. | |
void | SetXPosition (const double dXPosition) |
Mutator for the XPosition private member. | |
void | SetYPosition (const double dYPosition) |
Mutator for the YPosition private member. | |
void | SetTheta (const double dTheta) |
Mutator for the Theta private member. | |
void | SetSteeringAngle (const double dSteeringAngle) |
Mutator for the Steering Angle private member. | |
double | GetWheelbase () const |
Accessor for the Wheelbase private member. | |
double | GetXPosition () const |
Accessor for the XPosition private member. | |
double | GetYPosition () const |
Accessor for the YPosition private member. | |
double | GetTheta () const |
Accessor for the Theta private member. | |
double | GetVelocity () const |
Accessor for the Velocity private member. | |
double | GetSteeringAngle () const |
Accessor for the Steering Angle private member. | |
Private Attributes | |
double | m_dWheelbase |
double | m_dXPosition |
double | m_dYPosition |
double | m_dTheta |
double | m_dVelocity |
double | m_dSteeringAngle |
std::chrono::system_clock::time_point | m_tmLastUpdateTime |
This class implements the Bicycle Model. This model is used to predict the future state of the rover given a current state and control input.
|
inline |
Construct a new Bicycle Model object.
|
inline |
Construct a new Bicycle Model object.
dWheelbase | - The distance between the front and rear axles of the rover. |
dXPosition | - The x position of the rover. |
dYPosition | - The y position of the rover. |
dTheta | - The heading angle of the rover in degrees. |
|
inline |
Resets the state of the model to a new position and heading.
dXPosition | - The x position of the rover. |
dYPosition | - The y position of the rover. |
dTheta | - The heading angle of the rover in degrees. |
|
inline |
Resets the state of the model to a default state.
|
inline |
Update the state of the model, given a new position and heading. This method will automatically calculate the velocity of the rover base on the new and current position. The steering angle is also updated automatically based on the new and current heading.
dXPosition | - The x position of the rover. |
dYPosition | - The y position of the rover. |
dTheta | - The heading angle of the rover in degrees. |
|
inline |
Accessor for the State private member.
dTimeStep | - The time step to predict the future state. How far into the future to predict. |
nNumPredictions | - The number of predictions to make. |
vPredictions | - The vector of predictions to store the predicted states. |
|
inline |
Mutator for the Wheelbase private member.
dWheelbase | - The distance between the front and rear axles of the rover. |
|
inline |
Mutator for the XPosition private member.
dXPosition | - The x position of the rover. |
|
inline |
Mutator for the YPosition private member.
dYPosition | - The y position of the rover. |
|
inline |
Mutator for the Theta private member.
dTheta | - The heading angle of the rover in degrees. |
|
inline |
Mutator for the Steering Angle private member.
dSteeringAngle | - The steering angle of the rover in degrees. |
|
inline |
Accessor for the Wheelbase private member.
|
inline |
Accessor for the XPosition private member.
|
inline |
Accessor for the YPosition private member.
|
inline |
Accessor for the Theta private member.
|
inline |
Accessor for the Velocity private member.
|
inline |
Accessor for the Steering Angle private member.