chrono::viper::ViperRover Class Reference
Description
Viper rover class.
This class encapsulates the location and rotation information of all Viper parts wrt the chassis. This class should be the entry point to create a complete rover.
#include <Viper.h>
Public Member Functions | |
ViperRover (ChSystem *system, const ChVector<> &rover_pos, const ChQuaternion<> &rover_rot, std::shared_ptr< ChMaterialSurface > wheel_mat=nullptr) | |
void | Initialize () |
Initialize the Viper rover using current parameters. | |
ChSystem * | GetSystem () |
Get the containing system. | |
void | SetMotorSpeed (double rad_speed, WheelID id) |
Set motor speed. | |
ChVector | GetWheelSpeed (WheelID id) |
Get wheel speed. | |
ChQuaternion | GetWheelAngVel (WheelID id) |
Get wheel angular velocity. | |
ChVector | GetWheelContactForce (WheelID id) |
Get wheel contact force. | |
ChVector | GetWheelContactTorque (WheelID id) |
Get wheel contact torque. | |
ChVector | GetWheelAppliedForce (WheelID id) |
Get wheel total applied force. | |
ChVector | GetWheelAppliedTorque (WheelID id) |
Get wheel total applied torque. | |
std::shared_ptr< ChBodyAuxRef > | GetChassisBody () |
Get the chassis body. | |
std::shared_ptr< ChBodyAuxRef > | GetWheelBody (WheelID id) |
Get the wheel body. | |
double | GetRoverMass () |
Get total rover mass. | |
double | GetWheelMass () |
Get total wheel mass. | |
std::shared_ptr< ChFunction_Const > | GetMainMotorFunc (WheelID id) |
Get main motor function. | |
std::shared_ptr< ChFunction_Const > | GetSteerMotorFunc (WheelID id) |
Get steer motor function. | |
std::shared_ptr< ChLinkMotorRotationSpeed > | GetMainMotorLink (WheelID id) |
Get main motor link. | |
std::shared_ptr< ChLinkMotorRotationSpeed > | GetSteerMotorLink (WheelID id) |
Get steer motor link. | |
void | SetTurn (TurnSig id, double turn_speed=0.0) |
Set viper turning signal left/right/hold. | |
double | GetTurnAngle () const |
Get viper turning angle - ranges from -CH_C_PI/3 to CH_C_PI/3. | |
TurnSig | GetTurnState () const |
Get viper turning state - HOLD, LEFT, OR RIGHT. | |
void | Update () |
A viper status check and update function. More... | |
Member Function Documentation
◆ Update()
void chrono::viper::ViperRover::Update | ( | ) |
A viper status check and update function.
Note: this function needs to be included in the main simulation loop.
The documentation for this class was generated from the following files:
- /builds/uwsbel/chrono/src/chrono_models/robot/viper/Viper.h
- /builds/uwsbel/chrono/src/chrono_models/robot/viper/Viper.cpp