chrono::vehicle::m113::M113_SprocketBandLeft Class Reference
Description
M113 sprocket subsystem for continuous band track (left side).
#include <M113_SprocketBand.h>
Inheritance diagram for chrono::vehicle::m113::M113_SprocketBandLeft:
Collaboration diagram for chrono::vehicle::m113::M113_SprocketBandLeft:
Public Member Functions | |
virtual std::string | GetMeshFile () const override |
Public Member Functions inherited from chrono::vehicle::m113::M113_SprocketBand | |
virtual int | GetNumTeeth () const override |
Get the number of teeth of the gear. | |
virtual double | GetAssemblyRadius () const override |
Get the radius of the gear. More... | |
virtual double | GetAddendumRadius () const override |
Get the addendum radius. More... | |
virtual double | GetGearMass () const override |
Return the mass of the gear body. | |
virtual const ChVector & | GetGearInertia () override |
Return the moments of inertia of the gear body. | |
virtual double | GetAxleInertia () const override |
Return the inertia of the axle shaft. | |
virtual double | GetSeparation () const override |
Return the distance between the two gear profiles. | |
virtual double | GetOuterRadius () const override |
Return the radius of the addendum circle. | |
virtual double | GetBaseWidth () const override |
Return the base width of the sprocket profile length of the chord where the tooth profile meets the sprocket's outer radius. | |
virtual double | GetTipWidth () const override |
Return the width of the inner tip of the sprocket profile. | |
virtual double | GetToothDepth () const override |
Return the depth of the sprocket profile measured as the distance from the center of the profile tip line to the center of the base width line. | |
virtual double | GetArcRadius () const override |
Return the radius of the (concave) tooth circular arc. | |
virtual double | GetLateralBacklash () const override |
Return the allowed backlash (play) before lateral contact with track shoes is enabled (to prevent detracking). | |
Public Member Functions inherited from chrono::vehicle::ChSprocketBand | |
ChSprocketBand (const std::string &name) | |
virtual std::string | GetTemplateName () const override |
Get the name of the vehicle subsystem template. | |
virtual std::shared_ptr< geometry::ChLinePath > | GetProfile () const override |
Return the 2D gear profile. More... | |
virtual std::shared_ptr< ChSystem::CustomCollisionCallback > | GetCollisionCallback (ChTrackAssembly *track) override |
Return the custom collision callback object. More... | |
Public Member Functions inherited from chrono::vehicle::ChSprocket | |
std::shared_ptr< ChBody > | GetGearBody () const |
Get a handle to the gear body. | |
std::shared_ptr< ChShaft > | GetAxle () const |
Get a handle to the axle shaft. | |
std::shared_ptr< ChLinkLockRevolute > | GetRevolute () const |
Get a handle to the revolute joint. | |
double | GetAxleSpeed () const |
Get the angular speed of the axle. | |
void | SetCollide (bool val) |
Turn on/off collision flag for the gear wheel. | |
std::shared_ptr< ChMaterialSurface > | GetContactMaterial () const |
Get the sprocket contact material. | |
void | DisableLateralContact () |
Disable lateral contact for preventing detracking (default: enabled). | |
virtual void | Initialize (std::shared_ptr< ChChassis > chassis, const ChVector<> &location, ChTrackAssembly *track) |
Initialize this sprocket subsystem. More... | |
void | ApplyAxleTorque (double torque) |
Apply the provided torque to the sprocket's axle (for debugging and testing). More... | |
std::shared_ptr< geometry::ChTriangleMeshConnected > | CreateVisualizationMesh (double radius, double width, double delta, ChColor color=ChColor(1, 1, 1)) const |
Utility function to create a sprocket visualization mesh. More... | |
virtual void | RemoveVisualizationAssets () override |
Remove visualization assets for the sprocket subsystem. | |
void | LogConstraintViolations () |
Log current constraint violations. | |
Public Member Functions inherited from chrono::vehicle::ChPart | |
const std::string & | GetName () const |
Get the name identifier for this subsystem. | |
void | SetName (const std::string &name) |
Set the name identifier for this subsystem. | |
double | GetMass () const |
Get the subsystem mass. More... | |
const ChFrame & | GetCOMFrame () const |
Get the current subsystem COM frame (relative to and expressed in the subsystem's reference frame). More... | |
const ChMatrix33 & | GetInertia () const |
Get the current subsystem inertia (relative to the subsystem COM frame). More... | |
const ChFrame & | GetTransform () const |
Get the current subsystem position relative to the global frame. More... | |
void | SetVisualizationType (VisualizationType vis) |
Set the visualization mode for this subsystem. | |
virtual void | SetOutput (bool state) |
Enable/disable output for this subsystem. | |
bool | OutputEnabled () const |
Return the output state for this subsystem. | |
Additional Inherited Members | |
Static Public Member Functions inherited from chrono::vehicle::ChPart | |
static ChMatrix33 | TransformInertiaMatrix (const ChVector<> &moments, const ChVector<> &products, const ChMatrix33<> &vehicle_rot, const ChMatrix33<> &body_rot) |
Utility function for transforming inertia tensors between centroidal frames. More... | |
Protected Member Functions inherited from chrono::vehicle::m113::M113_SprocketBand | |
M113_SprocketBand (const std::string &name) | |
virtual void | CreateContactMaterial (ChContactMethod contact_method) override |
Create the contact material consistent with the specified contact method. | |
virtual void | AddVisualizationAssets (VisualizationType vis) override |
Add visualization of the sprocket. | |
Protected Member Functions inherited from chrono::vehicle::ChSprocket | |
ChSprocket (const std::string &name) | |
Construct a sprocket subsystem with given name. | |
virtual void | InitializeInertiaProperties () override |
Initialize subsystem inertia properties. More... | |
virtual void | UpdateInertiaProperties () override |
Update subsystem inertia properties. More... | |
virtual void | ExportComponentList (rapidjson::Document &jsonDocument) const override |
Export this subsystem's component list to the specified JSON object. | |
virtual void | Output (ChVehicleOutput &database) const override |
Output data for this subsystem's component list to the specified database. | |
Protected Member Functions inherited from chrono::vehicle::ChPart | |
ChPart (const std::string &name) | |
Construct a vehicle subsystem with the specified name. | |
void | AddMass (double &mass) |
Add this subsystem's mass. More... | |
void | AddInertiaProperties (ChVector<> &com, ChMatrix33<> &inertia) |
Add this subsystem's inertia properties. More... | |
virtual void | Create (const rapidjson::Document &d) |
Create a vehicle subsystem from JSON data. More... | |
Static Protected Member Functions inherited from chrono::vehicle::ChPart | |
static void | ExportBodyList (rapidjson::Document &jsonDocument, std::vector< std::shared_ptr< ChBody >> bodies) |
Export the list of bodies to the specified JSON document. | |
static void | ExportShaftList (rapidjson::Document &jsonDocument, std::vector< std::shared_ptr< ChShaft >> shafts) |
Export the list of shafts to the specified JSON document. | |
static void | ExportJointList (rapidjson::Document &jsonDocument, std::vector< std::shared_ptr< ChLink >> joints) |
Export the list of joints to the specified JSON document. | |
static void | ExportCouplesList (rapidjson::Document &jsonDocument, std::vector< std::shared_ptr< ChShaftsCouple >> couples) |
Export the list of shaft couples to the specified JSON document. | |
static void | ExportMarkerList (rapidjson::Document &jsonDocument, std::vector< std::shared_ptr< ChMarker >> markers) |
Export the list of markers to the specified JSON document. | |
static void | ExportLinSpringList (rapidjson::Document &jsonDocument, std::vector< std::shared_ptr< ChLinkTSDA >> springs) |
Export the list of translational springs to the specified JSON document. | |
static void | ExportRotSpringList (rapidjson::Document &jsonDocument, std::vector< std::shared_ptr< ChLinkRSDA >> springs) |
Export the list of rotational springs to the specified JSON document. | |
static void | ExportBodyLoadList (rapidjson::Document &jsonDocument, std::vector< std::shared_ptr< ChLoadBodyBody >> loads) |
Export the list of body-body loads to the specified JSON document. | |
static void | RemoveVisualizationAssets (std::shared_ptr< ChPhysicsItem > item) |
Erase all visual shapes from the visual model associated with the specified physics item (if any). | |
static void | RemoveVisualizationAsset (std::shared_ptr< ChPhysicsItem > item, std::shared_ptr< ChVisualShape > shape) |
Erase the given shape from the visual model associated with the specified physics item (if any). | |
Protected Attributes inherited from chrono::vehicle::ChSprocket | |
ChVector | m_rel_loc |
sprocket subsystem location relative to chassis | |
std::shared_ptr< ChBody > | m_gear |
sprocket gear body | |
std::shared_ptr< ChShaft > | m_axle |
gear shafts | |
std::shared_ptr< ChShaftsBody > | m_axle_to_spindle |
gear-shaft connector | |
std::shared_ptr< ChLinkLockRevolute > | m_revolute |
sprocket revolute joint | |
std::shared_ptr< ChMaterialSurface > | m_material |
contact material; | |
std::shared_ptr< ChSystem::CustomCollisionCallback > | m_callback |
cached collision callback | |
bool | m_lateral_contact |
if 'true', enable lateral conatact to prevent detracking | |
Protected Attributes inherited from chrono::vehicle::ChPart | |
std::string | m_name |
subsystem name | |
bool | m_output |
specifies whether or not output is generated for this subsystem | |
std::shared_ptr< ChPart > | m_parent |
parent subsystem (empty if parent is vehicle) | |
double | m_mass |
subsystem mass | |
ChMatrix33 | m_inertia |
inertia tensor (relative to subsystem COM) | |
ChFrame | m_com |
COM frame (relative to subsystem reference frame) | |
ChFrame | m_xform |
subsystem frame expressed in the global frame | |
Static Protected Attributes inherited from chrono::vehicle::m113::M113_SprocketBand | |
static const int | m_num_teeth = 17 |
static const double | m_gear_mass = 27.68 |
static const ChVector | m_gear_inertia |
static const double | m_axle_inertia = 0.4 |
static const double | m_separation = 0.278 |
static const double | m_gear_outer_radius = 0.2307 * 1.04 |
static const double | m_gear_base_width = 0.0530 * 1.04 |
static const double | m_gear_tip_width = 0.0128 * 1.04 |
static const double | m_gear_tooth_depth = 0.0387 * 1.04 |
static const double | m_gear_arc_radius = 0.0542 * 1.04 |
static const double | m_gear_RA = 0.2307 * 1.04 |
static const double | m_gear_RT = 0.22 |
static const double | m_lateral_backlash = 0.02 |
The documentation for this class was generated from the following files:
- /builds/uwsbel/chrono/src/chrono_models/vehicle/m113/M113_SprocketBand.h
- /builds/uwsbel/chrono/src/chrono_models/vehicle/m113/M113_SprocketBand.cpp