Project Chrono: Turtlebot robot model

Namespaces | Classes | Enumerations | Enumerator | Functions | Variables | Friends
Turtlebot robot model
Models » Robot models

## Description

Collaboration diagram for Turtlebot robot model:

## Namespaces
namespace | chrono::turtlebot::CollisionFamily
| Turtlebot collision families.

## Classes
class | chrono::turtlebot::Turtlebot_Part
| Base class definition of the Turtlebot Robot Part. More...
class | chrono::turtlebot::Turtlebot_Chassis
| Turtlebot Chassis class definition. More...
class | chrono::turtlebot::Turtlebot_ActiveWheel
| Turtlebot Active Drive Wheel class definition. More...
class | chrono::turtlebot::Turtlebot_PassiveWheel
| Turtlebot Passive Driven Wheel class definition. More...
class | chrono::turtlebot::Turtlebot_Rod_Short
| Short Supporting Rod class definition. More...
class | chrono::turtlebot::Turtlebot_BottomPlate
| Turtlebot Bottom Plate class definition. More...
class | chrono::turtlebot::Turtlebot_MiddlePlate
| Turtlebot Middle Plate class definition. More...
class | chrono::turtlebot::Turtlebot_TopPlate
| Turtlebot Top Plate class definition. More...
class | chrono::turtlebot::Turtlebot_Rod_Long
| Long Supporting Rod class definition. More...
class | chrono::turtlebot::TurtleBot
| Turtlebot Robot class This class assemble and initialize a complete turtlebot robot This class also handles general control commands of the robot. More...

## Enumerations
enum | chrono::turtlebot::CollisionFamily::Enum { chrono::turtlebot::CollisionFamily::CHASSIS = 1 , chrono::turtlebot::CollisionFamily::ACTIVE_WHEEL = 2 , chrono::turtlebot::CollisionFamily::PASSIVE_WHEEL = 3 , chrono::turtlebot::CollisionFamily::ROD = 4 , chrono::turtlebot::CollisionFamily::BOTTOM_PLATE = 5 , chrono::turtlebot::CollisionFamily::MIDDLE_PLATE = 6 , chrono::turtlebot::CollisionFamily::TOP_PLATE = 7 }
enum | chrono::turtlebot::WheelID { chrono::turtlebot::LD , chrono::turtlebot::RD }
| TurtleBot wheel identifiers. More...

## Functions
| chrono::turtlebot::Turtlebot_Part::Turtlebot_Part (const std::string &name, bool fixed, std::shared_ptr< ChContactMaterial > mat, ChSystem *system, const ChVector3d &body_pos, const ChQuaternion<> &body_rot, std::shared_ptr< ChBodyAuxRef > chassis_body, bool collide)
const std::string & | chrono::turtlebot::Turtlebot_Part::GetName () const
| Return the name of the part.
void | chrono::turtlebot::Turtlebot_Part::SetName (const std::string &name)
| Set the name of the part.
std::shared_ptr< ChBodyAuxRef > | chrono::turtlebot::Turtlebot_Part::GetBody () const
| Return the ChBody of the corresponding Turtlebot part.
std::shared_ptr< ChBodyAuxRef > | chrono::turtlebot::Turtlebot_Part::GetChassis () const
| Return the ChBody of the chassis wrt the Turtlebot part.
const ChVector3d & | chrono::turtlebot::Turtlebot_Part::GetPos () const
| Return the Position of the Turtlebot part.
const ChQuaternion & | chrono::turtlebot::Turtlebot_Part::GetRot () const
| Return the Rotation of the Turtlebot part.
void | chrono::turtlebot::Turtlebot_Part::AddVisualizationAssets ()
| Initialize the visulization mesh of the Turtlebot part.
void | chrono::turtlebot::Turtlebot_Part::AddCollisionShapes ()
| Initialize the collision mesh of the Turtlebot part.
void | chrono::turtlebot::Turtlebot_Part::EnableCollision (bool state)
| Enable/disable collision.
| chrono::turtlebot::Turtlebot_Chassis::Turtlebot_Chassis (const std::string &name, bool fixed, std::shared_ptr< ChContactMaterial > mat, ChSystem *system, const ChVector3d &body_pos, const ChQuaternion<> &body_rot, bool collide)
void | chrono::turtlebot::Turtlebot_Chassis::Initialize ()
| Initialize the chassis at the specified (absolute) position.
void | chrono::turtlebot::Turtlebot_Chassis::EnableCollision (bool state)
| Enable/disable collision for the robot chassis.
| chrono::turtlebot::Turtlebot_ActiveWheel::Turtlebot_ActiveWheel (const std::string &name, bool fixed, std::shared_ptr< ChContactMaterial > mat, ChSystem *system, const ChVector3d &body_pos, const ChQuaternion<> &body_rot, std::shared_ptr< ChBodyAuxRef > chassis, bool collide)
void | chrono::turtlebot::Turtlebot_ActiveWheel::Initialize ()
| Initialize the wheel at the specified (absolute) position.
void | chrono::turtlebot::Turtlebot_ActiveWheel::EnableCollision (bool state)
| Enable/disable collision for the wheel.
| chrono::turtlebot::Turtlebot_PassiveWheel::Turtlebot_PassiveWheel (const std::string &name, bool fixed, std::shared_ptr< ChContactMaterial > mat, ChSystem *system, const ChVector3d &body_pos, const ChQuaternion<> &body_rot, std::shared_ptr< ChBodyAuxRef > chassis, bool collide)
void | chrono::turtlebot::Turtlebot_PassiveWheel::Initialize ()
| Initialize the wheel at the specified (absolute) position.
void | chrono::turtlebot::Turtlebot_PassiveWheel::EnableCollision (bool state)
| Enable/disable collision for the wheel.
| chrono::turtlebot::Turtlebot_Rod_Short::Turtlebot_Rod_Short (const std::string &name, bool fixed, std::shared_ptr< ChContactMaterial > mat, ChSystem *system, const ChVector3d &body_pos, const ChQuaternion<> &body_rot, std::shared_ptr< ChBodyAuxRef > chassis, bool collide)
void | chrono::turtlebot::Turtlebot_Rod_Short::Initialize ()
| Initialize the wheel at the specified (absolute) position.
void | chrono::turtlebot::Turtlebot_Rod_Short::EnableCollision (bool state)
| Enable/disable collision for the wheel.
| chrono::turtlebot::Turtlebot_BottomPlate::Turtlebot_BottomPlate (const std::string &name, bool fixed, std::shared_ptr< ChContactMaterial > mat, ChSystem *system, const ChVector3d &body_pos, const ChQuaternion<> &body_rot, std::shared_ptr< ChBodyAuxRef > chassis, bool collide)
void | chrono::turtlebot::Turtlebot_BottomPlate::Initialize ()
| Initialize the wheel at the specified (absolute) position.
void | chrono::turtlebot::Turtlebot_BottomPlate::EnableCollision (bool state)
| Enable/disable collision for the wheel.
| chrono::turtlebot::Turtlebot_MiddlePlate::Turtlebot_MiddlePlate (const std::string &name, bool fixed, std::shared_ptr< ChContactMaterial > mat, ChSystem *system, const ChVector3d &body_pos, const ChQuaternion<> &body_rot, std::shared_ptr< ChBodyAuxRef > chassis, bool collide)
void | chrono::turtlebot::Turtlebot_MiddlePlate::Initialize ()
| Initialize the wheel at the specified (absolute) position.
void | chrono::turtlebot::Turtlebot_MiddlePlate::EnableCollision (bool state)
| Enable/disable collision for the wheel.
| chrono::turtlebot::Turtlebot_TopPlate::Turtlebot_TopPlate (const std::string &name, bool fixed, std::shared_ptr< ChContactMaterial > mat, ChSystem *system, const ChVector3d &body_pos, const ChQuaternion<> &body_rot, std::shared_ptr< ChBodyAuxRef > chassis, bool collide)
void | chrono::turtlebot::Turtlebot_TopPlate::Initialize ()
| Initialize the wheel at the specified (absolute) position.
void | chrono::turtlebot::Turtlebot_TopPlate::EnableCollision (bool state)
| Enable/disable collision for the wheel.
| chrono::turtlebot::Turtlebot_Rod_Long::Turtlebot_Rod_Long (const std::string &name, bool fixed, std::shared_ptr< ChContactMaterial > mat, ChSystem *system, const ChVector3d &body_pos, const ChQuaternion<> &body_rot, std::shared_ptr< ChBodyAuxRef > chassis, bool collide)
void | chrono::turtlebot::Turtlebot_Rod_Long::Initialize ()
| Initialize the wheel at the specified (absolute) position.
void | chrono::turtlebot::Turtlebot_Rod_Long::EnableCollision (bool state)
| Enable/disable collision for the wheel.
| chrono::turtlebot::TurtleBot::TurtleBot (ChSystem *system, const ChVector3d &robot_pos, const ChQuaternion<> &robot_rot, std::shared_ptr< ChContactMaterial > wheel_mat=nullptr)
void | chrono::turtlebot::TurtleBot::Initialize ()
| Initialize the turtlebot robot using current parameters.
void | chrono::turtlebot::TurtleBot::SetMotorSpeed (double rad_speed, WheelID id)
| Set active drive wheel speed.
ChVector3d | chrono::turtlebot::TurtleBot::GetActiveWheelSpeed (WheelID id)
| Get active drive wheel speed.
ChVector3d | chrono::turtlebot::TurtleBot::GetActiveWheelAngVel (WheelID id)
| Get active driver wheel angular velocity.

## Variables
std::string | chrono::turtlebot::Turtlebot_Part::m_name
| subsystem name
std::shared_ptr< ChBodyAuxRef > | chrono::turtlebot::Turtlebot_Part::m_body
| rigid body
std::shared_ptr< ChContactMaterial > | chrono::turtlebot::Turtlebot_Part::m_mat
| contact material (shared among all shapes)
std::string | chrono::turtlebot::Turtlebot_Part::m_mesh_name
| visualization mesh name
ChVector3d | chrono::turtlebot::Turtlebot_Part::m_offset
| offset for visualization mesh
ChColor | chrono::turtlebot::Turtlebot_Part::m_color
| visualization asset color
ChSystem * | chrono::turtlebot::Turtlebot_Part::m_system
| system which Turtlebot Part belongs to
std::shared_ptr< ChBodyAuxRef > | chrono::turtlebot::Turtlebot_Part::m_chassis
| the chassis body for the robot
ChVector3d | chrono::turtlebot::Turtlebot_Part::m_pos
| Turtlebot part's relative position wrt the chassis.
ChQuaternion | chrono::turtlebot::Turtlebot_Part::m_rot
| Turtlebot part's relative rotation wrt the chassis.
double | chrono::turtlebot::Turtlebot_Part::m_density
| Turtlebot part's density.
bool | chrono::turtlebot::Turtlebot_Part::m_collide
| Turtlebot part's collision indicator.
bool | chrono::turtlebot::Turtlebot_Part::m_fixed
| Turtlebot part's fixed indication.

## Friends
class | chrono::turtlebot::Turtlebot_Chassis::TurtleBot
class | chrono::turtlebot::Turtlebot_ActiveWheel::TurtleBot
class | chrono::turtlebot::Turtlebot_PassiveWheel::TurtleBot
class | chrono::turtlebot::Turtlebot_Rod_Short::TurtleBot
class | chrono::turtlebot::Turtlebot_BottomPlate::TurtleBot
class | chrono::turtlebot::Turtlebot_MiddlePlate::TurtleBot
class | chrono::turtlebot::Turtlebot_TopPlate::TurtleBot
class | chrono::turtlebot::Turtlebot_Rod_Long::TurtleBot

## Enumeration Type Documentation

## ◆ Enum

enum chrono::turtlebot::CollisionFamily::Enum

Enumerator
CHASSIS | chassis
ACTIVE_WHEEL | active cylinderical drive wheel
PASSIVE_WHEEL | passive cylinderical wheel
ROD | short and long supporting rods
BOTTOM_PLATE | bottom plate
MIDDLE_PLATE | middle plate
TOP_PLATE | top plate

## ◆ WheelID

enum chrono::turtlebot::WheelID

TurtleBot wheel identifiers.

Enumerator
LD | left driven
RD | right driven

## Function Documentation

## ◆ Initialize()

void chrono::turtlebot::TurtleBot::Initialize | ( |  | ) |

Initialize the turtlebot robot using current parameters.

Initialize the complete rover and add all constraints.