LandingControlBilinear:

Path: Interplanetary/Landers

% Implements a bilinear tangent landing controller.
 This is for a circular planet. It uses LandingControl.m

 The function has two paths. One is used on initialization, the other
 each time step to update the controller. The function will plot
 the beta angles for the controller.

 You can bypass attitude control in which case the thrust will always
 be in the correct direction.

 Terminal descent happens after the bilinear tangent runs out of steps
 or if the spacecraft is below a landing altitude threshold.

 All data and inputs and outputs are stored in the data structure, d.

--------------------------------------------------------------------------
   Form:
   d = LandingControlBilinear( action, d )
--------------------------------------------------------------------------

   ------
   Inputs
   ------
   action	(1,:) 'initialize' or 'update'
   d        (.)  Data structure inputs
                 .nG         (1,1) Engine acceleration is this number times
                                   gravity
                 .mu         (1,1) Gravitational constant
                 .inertia    (1,1) Inertia matrix
                 .aCS         (.)  PID3Axis data structure
                                   .zeta   (1,1) Damping ratio
                                   .omega  (1,1) Undamped natural frequency
                                   .tauInt (1,1) Integrator time
                                   .omegaR (1,1) Rate filter frequency
                 .mass       (1,1) Mass (kg)
                 .bypassACS  (1,1) 1 = bypass attitude control
                 .landing     (.)  Landing control data structure
                                   .omega (1,1) Undamped natural frequency
                                   .zeta  (1,1) Damping ratio

   -------
   Outputs
   -------
   d      	(1,1) Data structure outputs
                 .aCS       (.)  PID3Axis data structure
                                 .eci_vector (3,1) Pointing vector
                 .a        (1,1) Acceleration
                 .thrust   (1,1) Engine thrust
                 .beta     (1,:) Thrust direction angles
                 .t        (1,:) Corresponding times
                 .throttle (1,1) Throttle setting
                 .index    (1,1) Index for betas
                 .landing	 (.)  Landing control data structure
                                 .gainForward  (1,1) Forward gain
                                 .tau          (1,1) Time constant
                                 .accel        (1,1) Acceleration
                                 .g            (1,1) Gravity
                                 .mode         (1,1) Mode
--------------------------------------------------------------------------
   See also LandingControl, BilinearTangentLaw, PIDMIMO, PID3Axis
--------------------------------------------------------------------------

Children:

Interplanetary: Landers/BilinearTangentLaw
Interplanetary: Landers/LandingControl
SCPro: ProControl/PID3Axis
Common: Control/PIDMIMO
Common: Database/Constant
Common: Graphics/Plot2D
Common: Graphics/TimeLabl
Common: MassProperties/Inertias
Common: Quaternion/QTForm
Math: Linear/Cross
Math: Linear/Dot
Math: Linear/Mag
Math: Linear/Unit

Back to the Interplanetary Module page