pinocchio  1.2.6-7-g6de3e-dirty
ActuatorDCTempNonLinearMotorData< Scalar_ > Class Template Reference

Template for handling data related to a second order linear DC motor model. More...

#include <actuators/dc-temp-non-linear-motor-model.hpp>

Inheritance diagram for ActuatorDCTempNonLinearMotorData< Scalar_ >:
[legend]
Collaboration diagram for ActuatorDCTempNonLinearMotorData< Scalar_ >:
[legend]

Public Types

enum  InternalParameters {
  P_ROTOR_INERTIA =6,
  P_TORQUE_CST,
  P_SPEED_TORQUE_GRD,
  P_BACK_EMF,
  P_THONE_RESISTOR,
  P_THTWO_RESISTOR,
  P_TA_RESISTOR,
  P_MAX_PERM_WINDING_T,
  P_THERM_TIME_CST_WINDING,
  P_AMBIANT_TEMP
}
 
typedef Scalar_ Scalar_t
 
typedef Eigen::Matrix< Scalar_, 13, 1 > Parameters_t
 
typedef Eigen::Matrix< Scalar_, 3, 1 > Observations_t
 
typedef Eigen::Matrix< Scalar_, 6, 1 > S_t
 
typedef Eigen::Matrix< Scalar_, 2, 1 > X_t
 
typedef Eigen::Matrix< Scalar_, 2, 1 > dX_t
 
typedef Eigen::Matrix< Scalar_, 1, 1 > U_t
 

Public Member Functions

const Observations_t & h () const
 Return observation vector.
 
const Parameters_t & c () const
 Return parameters.
 
const S_t & S () const
 Returns selection matrix.
 
Scalar_ getMaxPermissibleOverloadForONTime (Scalar_ aDuration)
 Returns the maximum overload possible for a given duration. Implements

\[ K = \sqrt{\frac{1}{1 - exp\left[-\frac{t_{on}}{\tau_W}\right] }} \]

.

 
Scalar_ getOverloadForCurrent (Scalar_ aCurrent, Scalar_ TS)
 Returns the overload for a given motor current and the current stator temperature ( \( T_S \)) Implements

\[ K = \frac{I_{mot}}{I_N} \sqrt{ \frac{T_{max} -T_{A}}{T_{max}-T_S} \frac{R_{th1}}{R_{th1}+R_{th2}} } \]

.

 
Scalar_ getMaxONTimeForK (Scalar_ aK)
 Returns the maximum ON time at a given overload factor K Implements

\[ t_{on} = \tau_{W} ln \frac{K^2}{K^2-1} \]

.

 
Scalar_ getMaxCurrentForK (Scalar_ aK)
 Returns the maximum current \( I_{mot}\) at a given overload factor \( K\). Implements

\[ I_{mot} = K I_n \sqrt{ \frac{T_{max}-T_S}{T_{max} -T_{A}} \frac{R_{th1}+R_{th2}}{R_{th1}} }\]

.

 
Observations_t & h ()
 
void rotorInertia (Scalar_ c)
 Rotor inertia (kg/m2) - \( B_m \). More...
 
void torqueConst (Scalar_ c)
 Torque constant (Nm/A) - \( K_m \).
 
void speedTorqueGrad (Scalar_ c)
 Speed torque gradient (rads^-1/Nm) \( D_m \).
 
void backEMF (Scalar_ c)
 Terminal Inductance (Henry) More...
 
void resistorOne (Scalar_ c)
 Gearhead thermal resistance \( R_{th1} \) at ambient temperature units: K/W.
 
void resistorTwo (Scalar_ c)
 Winding thermal resistance \( R_{th2} \) at ambient temperature units: K/W.
 
void resistorTA (Scalar_ c)
 Winding resistance \( R_{ta} \) at ambient temperature units: Ohms.
 
void maxPermissibleWindingTemp (Scalar_ c)
 Max. permissible winding temperature \( T_{max} \) catalog value units: C.
 
void thermTimeCstWinding (Scalar_ c)
 Therm. time constant winding \( \tau_W \) units: seconds (s)
 
void thermAmbient (Scalar_ c)
 Ambient temperature for the motor characteristics. Typically \( 25 C \).
 
void setS (S_t &S)
 

Protected Member Functions

void updateParameters ()
 Update the first three parameters of the actuators: More...
 

Protected Attributes

Observations_t h_
 Observation variables.
 
Parameters_t c_
 Vector parameters.
 
S_t S_
 Selection matrix.
 
double alpha_cu_
 Copper resistance.
 

Detailed Description

template<typename Scalar_>
class se3::ActuatorDCTempNonLinearMotorData< Scalar_ >

Template for handling data related to a second order linear DC motor model.

Template Parameters
Scalar_{description}

Definition at line 142 of file dc-temp-non-linear-motor-model.hpp.

Member Function Documentation

void backEMF ( Scalar_  c)
inline

Terminal Inductance (Henry)

Back electro magnetic force constant \( K_b \) It is the inverse of the speed torque gradient constant ( \(k_N\)) in Maxon datasheet. More exactly the maxon datasheet gives rpm/V. So it is \(\frac{60}{ 2 \pi k_N)}\)

Definition at line 198 of file dc-temp-non-linear-motor-model.hpp.

References ActuatorDCTempNonLinearMotorData< Scalar_ >::c(), ActuatorDCTempNonLinearMotorData< Scalar_ >::c_, and ActuatorDCTempNonLinearMotorData< Scalar_ >::updateParameters().

void rotorInertia ( Scalar_  c)
inline

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