반응형

 

MC 2 FW Mode Process

(src/modules/vtol_att_control/tilt_rotor.cpp)

  1. MC_MODE
  2. TRANSITION_FRONT_P1
  3. TRANSITION_FRONT_P2
  4. TRANSITION_BACK

 


MC_MODE

On update_vtol_state()

Reset transition states (get this time)

Change _vtol_mode to TRANSITION_FRONT_P1 in immediatley.

 

TRANSITION_FRONT_P1

On update_vtol_state()

If the front transition is completed, change the mode to TRANSITION_FRONT_P2

In isFrontTransitionCompleted(),

 

1. Airspeed sensor is enabled,

return True if...

  • _time_since_trans_start is over VT_TRANS_MIN_TM (default 5 sec)
  • CAS on the airspeed sensor is over VT_ARSP_TRANS (default 10 m/s)

2. Airspeed sensor is disabled,

return True if...

  • _time_since_trans_start is over VT_F_TR_OL_TM (default 8 sec)

or

if the aircraft can do transition on ground

  • disarmed
  • landed

On update_transition_state()

_tilt_control = VT_TILT_MC (default 0) -> VT_TILT_TRANS (default 0.3)

from zero to VT_F_TRAN_DUR (default 5.0 sec) 

 

_mc_roll_weight and _mc_yaw_weight are substituted as weight

1. Airspeed sensor is enabled,

weight = 1 - (CAS - VT_ARSP_BLEND) / (VT_ARSP_TRANS - VT_ARSP_BLEND)

When CAS moves from VT_ARSP_BLEND (default 8 m/s) to VT_SRSP_TRANS (default 10 m/s),

weight moves from 1 to 0

 

2. Airspeed sensor is disabled,

weight = 1 - (time since transition - VT_TRANS_MIN_TM) / (VT_F_TR_OL_TM - VT_TRANS_MIN_TM)

When time since transition trigger moves from VT_TRANS_MIN_TM (default 5 sec) to VT_F_TR_OL_TM (default 8 sec),

weight moves from 1 to 0

 

TRANSITION_FRONT_P2

VT_TILT_FW is defined collective tilt angle of motors

  • 0 : vertical
  • 1 : horizontal

On update_vtol_state()

change the mode to FW_MODE if it is satisfied as follows :

  • _tilt_control is over VT_TILT_FW (default 1.0)

On update_transition_state()

_tilt_control = VT_TILT_TRANS (default 0.3) -> VT_TILT_FW (default 1.0)

from VT_F_TRAN_DUR (default 5.0 sec) to VT_TRANS_P2_DUR (defalut 0.5 sec)

_mc_roll_weight and _mc_yaw_weight are substituted as 0

 

TRANSITION_BACK

 


Control Mixer

(src/modules/control_allocator/ActuatorEffectiveness/ActuatorEffectivenessTiltrotorVTOL.cpp)

 

_tilt_control goes to tiltrotor_extra_controls.collective_tilt_normalized_setpoint

 

On writting..

 

 

 

 

 

** EOF **

728x90

+ Recent posts