LandingControlBilinear:

Path: SCPro/Landers

% Implements a bilinear tangent landing controller.

   This is for a circular planet

   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.

   It uses LandingControl.m

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

--------------------------------------------------------------------------
   See LandingControl.m, PIDMIMO.m
--------------------------------------------------------------------------
   Form:
   d = LandingControlBilinear( action, d )
--------------------------------------------------------------------------

   ------
   Inputs
   ------
   action	(1,:) 'initialize' or 'update'
   d       (1,1) Data structure inputs
                 .nG         (1,1) Engine acceleration is this number times
                                   gravity
                 .mu         (1,1) Gravitational constant
                 .inertia    (1,1) Inertia matrix
                 .aCS        (1,1) 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    (1,1) Landing control data structure
                                   .omega (1,1) Undamped natural frequency
                                   .zeta  (1,1) Damping ratio

   -------
   Outputs
   -------
   d      	(1,1) Data structure outputs
                 .aCS      (1,1) PID3Axis data structure
                                 .eci_vector (1,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	(1,1) 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
--------------------------------------------------------------------------

Children:

SCPro: Landers/BilinearTangentLaw
SCPro: 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/Dot
Math: Linear/Mag
Math: Linear/Unit

Back to the SCPro Module page