Marine systems simulation
Ship::PropulsorActuator Class Reference
+ Inheritance diagram for Ship::PropulsorActuator:
+ Collaboration diagram for Ship::PropulsorActuator:

Public Types

enum  FailureModes {
  failureModeRPMError = 0 , failureModeRPMLock , failureModePitchLock , failureModePitchMalfunction ,
  failureModeAzimuthLock , failureModeAzimuthMalfunction , failureModeFeedbackPitchFreeze , failureModeFeedbackRPMFreeze ,
  failureModeFeedbackAzimuthFreeze , failureModeFeedbackThrustFreeze , failureModes
}
 

Public Member Functions

 PropulsorActuator (const std::string &simObjectName, ISimObjectCreator *const creator)
 
virtual void OdeFcn (const double T, const double *const X, double *const XDot, const bool bIsMajorTimeStep)
 
void InitialConditionSetup (const double T, const double *const currentIC, double *const updatedIC, ISimObjectCreator *const creator)
 
const double * RPM (const double T, const double *const X)
 
const double * RPMMotor (const double T, const double *const X)
 
const double * Pitch (const double T, const double *const X)
 
const double * PD (const double T, const double *const X)
 
const double * ConsumedPower (const double T, const double *const X)
 
const double * RPM_FB (const double T, const double *const X)
 
const double * Thrust_FB (const double T, const double *const X)
 
const double * Pitch_FB (const double T, const double *const X)
 
const double * ForceBody2 (const double T, const double *const X)
 
const double * TorqueBody2 (const double T, const double *const X)
 
virtual const double * Angle_FB (const double T, const double *const X)
 
virtual const double * Angle (const double T, const double *const X)
 
- Public Member Functions inherited from Ship::LocalConnection
 LocalConnection (const string simObjectName, ISimObjectCreator *const creator)
 
virtual void OdeFcn (const double T, const double *const X, double *const XDot, const bool bIsMajorTimeStep)
 
virtual void InitialConditionSetup (const double T, const double *const currentIC, double *const updatedIC, ISimObjectCreator *const creator)
 
const double * OffsetBody (const double T, const double *const X)
 
const double * RotationBody (const double T, const double *const X)
 
const double * PositionNED (const double T, const double *const X)
 
const double * VelocityNED (const double T, const double *const X)
 
const double * VelocityBody (const double T, const double *const X)
 
const double * OmegaNED (const double T, const double *const X)
 
const double * QuaternionNED (const double T, const double *const X)
 
const double * Axis1NED (const double T, const double *const X)
 
const double * Axis2NED (const double T, const double *const X)
 
const double * Axis3NED (const double T, const double *const X)
 
const double * ForceNED (const double T, const double *const X)
 
const double * TorqueNED (const double T, const double *const X)
 
const double * ForceBody (const double T, const double *const X)
 
const double * TorqueBody (const double T, const double *const X)
 
const double * ParentQuaterion (const double T, const double *const X)
 

Protected Attributes

double m_torqueLimit
 
bool m_oscMode
 
ISignalPort * m_inRPMLimits
 
ISignalPort * m_inPitchLimits
 
ISignalPort * m_inAngleLimits
 
ISignalPort * m_inShaftTorque
 
ISignalPort * m_inAvailablePower
 
double m_pitchMaxChangeRate
 
double m_RPMMaxChangeRate
 
double m_aziMaxChangeRate
 
int m_indexMotorPitch
 
int m_indexPropulsorRPM
 
ISignalPort * m_inFailureMode
 
ISignalPort * m_inCommendedRPM
 
ISignalPort * m_inCommandedPitch
 
bool m_isAzimuth
 
double m_azimuthLoss [2]
 
bool m_failureModeRPMError
 
bool m_failureModeRPMLock
 
bool m_failureModePitchLock
 
bool m_failureModePitchMalfunction
 
bool m_failureModeAzimuthLock
 
bool m_failureModeAzimuthMalfunction
 
bool m_failureModeFeedbackPitchFreeze
 
bool m_failureModeFeedbackRPMFreeze
 
bool m_failureModeFeedbackAzimuthFreeze
 
bool m_failureModeFeedbackThrustFreeze
 
double m_maxAngle
 
double m_minAngle
 
double m_maxRPM
 
double m_minRPM
 
double m_maxPitch
 
double m_minPitch
 
double m_gearRatio
 
double m_angularMotorMalfunctionRate
 
double m_actualRPM
 
double m_actualMotorRPM
 
double m_actualPitch
 
double m_actualPD
 
double m_actualAngle
 
double m_consumedPower
 
double m_timeConstantPitch
 
double m_timeConstantRPM
 
double m_actualRPMFeedback
 
double m_actualThrustFeedback
 
double m_actualPitchFeedback
 
double m_actualAngleFeedback
 
double m_forceParentBody [3]
 
double m_torqueParentBody [3]
 
- Protected Attributes inherited from Ship::LocalConnection
double m_positionNED [3]
 
double m_omegaNED [3]
 
double m_velocityNED [3]
 
double m_omegaBody [3]
 
double m_velocityBody [3]
 
double m_quaternionNED [4]
 
double m_axis1NED [3]
 
double m_axis2NED [3]
 
double m_axis3NED [3]
 
double m_ForceNED [3]
 
double m_TorqueNED [3]
 
double m_ForceBody [3]
 
double m_TorqueBody [3]
 
bool m_isAzimuth
 
double m_azimuthLoss [2]
 
ISignalPort * m_InParentPositionNED
 
ISignalPort * m_InParentQuaternionNED
 
ISignalPort * m_InParentVelocityNED
 
ISignalPort * m_InParentOmegaNED
 
ISignalPort * m_InForce
 
ISignalPort * m_InMotorAngularTarget [3]
 
ISignalPort * m_InMotorLinearTarget [3]
 
double m_Offset [3]
 
bool m_ForceCalculator
 
bool m_ForceInBodyFrame
 
ISignalPort * m_InOffset
 
ISignalPort * m_InPositionCGNED
 
bool m_isLinearMotor
 
bool m_isAngularMotor
 
int m_stateLinearMotor [3]
 
int m_stateAngularMotor [3]
 
double m_linearMotorMaxChangerate [3]
 
double m_angularMotorMaxChangerate [3]
 
double m_linearMotorConstants [3]
 
double m_angularMotorConstants [3]
 
double m_linearStaticOffset [3]
 
double m_angularStaticOffset [3]
 
double m_linearForceAttackOffset [3]
 
ICommonComputation * m_computePosition
 
ICommonComputation * m_computeForce
 

Additional Inherited Members

- Protected Member Functions inherited from Ship::LocalConnection
const double * Force (const double T, const double *const X)
 
const double * Torque (const double T, const double *const X)
 
void ComputePostition (const double T, const double *const X)
 
void ComputeForce (const double T, const double *const X)
 

Member Function Documentation

◆ InitialConditionSetup()

void Ship::PropulsorActuator::InitialConditionSetup ( const double  T,
const double *const  currentIC,
double *const  updatedIC,
ISimObjectCreator *const  creator 
)
virtual

Reimplemented from Ship::LocalConnection.

◆ OdeFcn()

virtual void Ship::PropulsorActuator::OdeFcn ( const double  T,
const double *const  X,
double *const  XDot,
const bool  bIsMajorTimeStep 
)
virtual

Reimplemented from Ship::LocalConnection.


The documentation for this class was generated from the following file: