52 #ifndef _LAE_POWERTRAIN_H 53 #define _LAE_POWERTRAIN_H 58 #include "rnr/rnrconfig.h" 237 static int toMotorId(
const int nCtlrId,
const int nMotorIndex);
247 static std::string toKey(
const int nCtlrId,
const int nMotorIndex);
256 static std::string toKey(
const int nMotorId);
314 virtual int configure(
const LaeTunes &tunes);
323 virtual int reload(
const LaeTunes &tunes);
332 virtual int resetOdometer();
344 virtual int updateStateDynamics(s64_t nEncoder,
358 virtual int updateHealth(
double fVolts,
double fTemp, uint_t uCtlrStatus);
380 #endif // _LAE_POWERTRAIN_H double m_fAmps
motor draw (A)
int m_nMotorCtlrId
motor controller id
int getMotorId() const
Get motor id.
Laelaps tuning data class.
double m_fTemp
motor temperature (C)
int m_eJointType
joint type
uint_t m_uBufLen
command queue length
double m_fGearRatio
gear ratio
double m_fTorque
wheel torque (N-m)
double m_fMaxAmps
maximum rated amps
std::string m_strName
powertrain unique name (key)
int m_nMotorIndex
motor controller unique motor index
double m_fMaxRps
maximum rated output shaft rev/sec
int m_nMotorDir
motor normalized direction
double m_fTireRadius
tire radius
int getMotorIndex() const
Get motor controller motor index.
double m_fPm
motor output mechanical power (W)
double m_fMotorRadsPerPulse
motor radians per encoder pulse
uint_t m_uWarnings
motor warnings
Powertrain attributes class.
double m_fStallTorque
stall torque amps
LaePowertrainAttr m_attr
semi-fixed attribute data
Robotic powertrain description.
The <b><i>Laelaps</i></b> namespace encapsulates all <b><i>Laelaps</i></b> related constructs...
Laelaps robotic base mobile platform description class interface.
uint_t m_uMaxQpps
maximum quadrature pulses/second rps
uint_t m_uAlarms
motor alarms
std::string getName() const
Get this powertrain unique name (key).
double m_fVolts
input motor voltage (V)
std::map< std::string, LaePowertrain > LaeMapPowertrain
Map of powertrain kinodynamics.
LaePowertrainAttr()
Default constructor.
int getMotorCtlrId() const
Get motor controller id.
s64_t m_nEncoder
motor encoder position (quad pulses)
double m_fMetersPerRadian
tire meters per radian
double m_fMetersPerPulse
tire meters per encoder pulse
~LaePowertrainState()
Destructor.
double m_fWheelRadsPerPulse
output shaft radians per encoder pulse
Powertrain state data class.
LaePowertrainState m_state
dynamic state data
double m_fPe
motor input electrical power (W)
double m_fTireWidth
tire width
double m_fVelocity
wheel angular velocity (radians/second)
uint_t m_uPulsesPerRev
encoder pulses per motor revolution
double m_fPosition
wheel angular position (radians)
LaePowertrainAttr operator=(const LaePowertrainAttr &rhs)
Assignment operator.
int m_nSpeed
raw speed (qpps)
~LaePowertrain()
Destructor.
Top-level package include file.
~LaePowertrainAttr()
Destructor.