chrono::vehicle::SprocketBand Class Reference
Description
Tracked vehicle continuous-band sprocket model constructed with data from file (JSON format).
#include <SprocketBand.h>
Inheritance diagram for chrono::vehicle::SprocketBand:
Collaboration diagram for chrono::vehicle::SprocketBand:
Public Member Functions | |
SprocketBand (const std::string &filename) | |
SprocketBand (const rapidjson::Document &d) | |
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 | 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. More... | |
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 | |
ChSprocket (const std::string &name) | |
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. | |
virtual double | GetMass () const |
Get the mass of the sprocket subsystem. | |
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< ChBodyAuxRef > 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, ChVector< float > color=ChVector< float >(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 | |
ChPart (const std::string &name) | |
Construct a vehicle subsystem with the specified name. More... | |
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. | |
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::ChSprocket | |
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. | |
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< ChLinkRotSpringCB >> 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. | |
Protected Attributes inherited from chrono::vehicle::ChSprocket | |
std::shared_ptr< ChBody > | m_gear |
handle to the sprocket gear body | |
std::shared_ptr< ChShaft > | m_axle |
handle to gear shafts | |
std::shared_ptr< ChShaftsBody > | m_axle_to_spindle |
handle to gear-shaft connector | |
std::shared_ptr< ChLinkLockRevolute > | m_revolute |
handle to sprocket revolute joint | |
std::shared_ptr< ChMaterialSurface > | m_material |
contact material; | |
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 | |
Member Function Documentation
◆ GetAssemblyRadius()
|
inlineoverridevirtual |
Get the radius of the gear.
This quantity is used during the automatic track assembly.
Implements chrono::vehicle::ChSprocket.
◆ GetToothDepth()
|
inlineoverridevirtual |
Return the depth of the sprocket profile.
This is measured as the distance from the center of the profile tip line to the center of the base width line.
Implements chrono::vehicle::ChSprocketBand.
The documentation for this class was generated from the following files:
- /builds/uwsbel/chrono/src/chrono_vehicle/tracked_vehicle/sprocket/SprocketBand.h
- /builds/uwsbel/chrono/src/chrono_vehicle/tracked_vehicle/sprocket/SprocketBand.cpp