chrono::copter::Little_Hexy Class Reference
Description
Little hexy (hexacopter) model.
#include <Little_Hexy.h>
Inheritance diagram for chrono::copter::Little_Hexy:
Collaboration diagram for chrono::copter::Little_Hexy:
Public Member Functions | |
Little_Hexy (ChSystem &sys, const ChVector3d &cpos) | |
void | AddVisualizationAssets () |
Add specific visualization shapes to shapes and propellers. | |
void | AddCollisionShapes (std::shared_ptr< ChContactMaterial > material) |
Add collision shapes. More... | |
void | Pitch_Down (double delta) |
Pitch down by the specified angle. | |
void | Pitch_Up (double delta) |
Pitch up by the specified angle. | |
void | Roll_Right (double delta) |
Roll to the right by the specified angle. | |
void | Roll_Left (double delta) |
Roll to the right by the specified angle. | |
void | Yaw_Right (double delta) |
Yaw to the right by the specified angle. | |
void | Yaw_Left (double delta) |
Yaw to the left by the specified angle. | |
void | Throttle (double delta) |
Increase all propellers speeds. More... | |
virtual const std::string & | GetChassisMeshFilename () const override |
Get the name of the Wavefront file with chassis visualization mesh. More... | |
virtual const std::string & | GetPropellerMeshFilename () const override |
Get the name of the Wavefront file with propeller visualization mesh. More... | |
Public Member Functions inherited from chrono::copter::Copter< 6 > | |
Copter (ChSystem &sys, const ChVector3d &cpos, std::vector< ChVector3d > ppos, const bool clockwise[], bool are_prop_pos_rel=true, bool z_up=false) | |
std::shared_ptr< ChBody > | GetChassis () const |
Get the chassis body. | |
void | SetPropellerData (double mass, const ChVector3d &inerXX, double diam, double thrust_coeff, double power_coeff, double max_rpm) |
Set the propeller properties. More... | |
void | SetLinearDragCoeff (double ldc) |
Set the drag coefficient. | |
double | GetLinearDragCoeff () const |
Get the drag coefficient. | |
void | SetLinearDragSurf (double dsurf) |
Set the area used in evaluation of drag force. | |
double | GetLinearDragSurf () const |
Get the area used in evaluation of drag force. | |
void | AddVisualizationAssets (const std::string &chassismesh, const std::string &propellermesh, const ChFrame<> &cor_m1, const ChFrame<> &cor_m2) |
Add generic triangular meshes to the chassis and the propellers. | |
void | ControlIncremental (double inputs[nop]) |
Increment propeller angular velocity. | |
void | ControlAbsolute (double inputs[nop]) |
Set Propellers angular velocity. | |
void | Update (double timestep) |
Update the copter internal physics. | |
void | SetGroundAirDensity (double rho) |
Set initial (h = 0) air density. | |
double | GetAirPressure () const |
Get the air pressure at copter height. | |
double | GetGroundAirPressure () const |
Get the air pressure at 0 height. | |
void | SetGroundPressure (double p0) |
Set the air pressure at copter height. | |
double | GetGroundAirDensity () const |
Get the air density at copter height. | |
double | GetAirDensity () const |
Get the air density at copter height. | |
double | GetAltitude () const |
Get the copter altitude. | |
double | GetInitAltitude () const |
Get the initial copter altitude. | |
void | SetInitAltitude (double alt) |
Set the initial copter altitude. | |
double | GetTemperature () const |
Get air temperature. | |
void | SetTemperature (double temp) |
Set air temperature. | |
double | GetGroundTemperature () const |
Get ground air temperature. | |
void | SetGroundTemperature (double temp) |
Set ground air temperature. | |
int | GetNumProps () const |
Get the number of propellers. | |
std::vector< std::shared_ptr< ChBody > > | GetProps () const |
Get the propellers bodies. | |
void | RotateCopter (ChMatrix33<> &A) |
Rotates the whole copter given a 3x3 rotation matrix. | |
Static Protected Member Functions | |
static std::vector< ChVector3d > | getPosVect () |
Additional Inherited Members | |
Protected Attributes inherited from chrono::copter::Copter< 6 > | |
std::shared_ptr< ChBody > | chassis |
Chassis body. | |
std::string | chassis_mesh_path |
Visualization meshes. | |
std::string | propeller_mesh_path |
Visualization meshes. | |
std::vector< std::shared_ptr< ChBody > > | props |
Propeller bodies. | |
double | rps_max |
Max propeller angular speed [rot/s]. | |
double | Dp |
Propeller diameter [m]. | |
double | Ct |
Thrust coefficient. | |
double | Cp |
Power coefficient. | |
double | u_p [nop] |
Propeller rotation as fraction of max rpm (in [0,1]) | |
double | rho |
Air density [kg/m^3]. | |
double | rho0 |
Ground Air density [kg/m^3]. | |
double | pressure |
Air pressure [Pa]. | |
double | pressure0 |
Ground Air pressure [Pa]. | |
double | Altitude |
Altitude [m]. | |
double | Temp0 |
Ground Air Temperature [K]. | |
double | Temp |
Air Temperature [K]. | |
double | Altitude0 |
Initial Altitude [m]. | |
double | h0 |
Initial Altitude in simulation [m]. | |
ChVector3d | up |
Vertical axis. | |
std::vector< std::shared_ptr< ChForce > > | thrusts |
Thrust Forces. | |
std::vector< std::shared_ptr< ChForce > > | backtorques |
Propeller Resistance torques. | |
std::vector< std::shared_ptr< ChLinkMotorRotationSpeed > > | motors |
Propeller Motors. | |
std::vector< std::shared_ptr< ChFunctionConst > > | speeds |
Propeller Motors Speed Functions. | |
double | Cd |
Drag coefficient. | |
std::shared_ptr< ChForce > | lin_drag |
Linear drag. | |
double | Surf |
Drag Surface. | |
Member Function Documentation
◆ AddCollisionShapes()
void chrono::copter::Little_Hexy::AddCollisionShapes | ( | std::shared_ptr< ChContactMaterial > | material | ) |
Add collision shapes.
The collision shape is a box + cylinder.
◆ GetChassisMeshFilename()
|
inlineoverridevirtual |
Get the name of the Wavefront file with chassis visualization mesh.
An empty string is returned if no mesh was specified.
Reimplemented from chrono::copter::Copter< 6 >.
◆ GetPropellerMeshFilename()
|
inlineoverridevirtual |
Get the name of the Wavefront file with propeller visualization mesh.
An empty string is returned if no mesh was specified.
Reimplemented from chrono::copter::Copter< 6 >.
◆ Throttle()
void chrono::copter::Little_Hexy::Throttle | ( | double | delta | ) |
Increase all propellers speeds.
Use a negative delta to decrease all.
The documentation for this class was generated from the following files:
- /builds/uwsbel/chrono/src/chrono_models/robot/copters/Little_Hexy.h
- /builds/uwsbel/chrono/src/chrono_models/robot/copters/Little_Hexy.cpp