trick/trick_models/ball/L2/include/ball_control.h
Alex Lin 14a75508a3 Cleaning up once include variables and copyright cleanup.
Changed all header file once include variables to follow the same naming
convention and not start with any underscores.  Also deleted old
incorrect copyright notices.  Also removed $Id: tags from all files.

Fixes #14.  Fixes #22.
2015-03-23 16:03:14 -05:00

57 lines
2.1 KiB
C

/********************************* TRICK HEADER *******************************
PURPOSE:
(Ball model altitude control system parameter definition.)
REFERENCE:
(((Bailey, R.W, and Paddock, E.J.)
(Trick Simulation Environment) (NASA:JSC #37943)
(JSC/Engineering Directorate/Automation, Robotics and Simulation Division)
(March 1997)))
ASSUMPTIONS AND LIMITATIONS:
((2 jets)
(jet 0 fires down)
(jet 1 fires up)
(simple bang-bang phase plane))
PROGRAMMERS:
(((Your Name) (Company Name) (Date) (Trick tutorial)))
*******************************************************************************/
#ifndef BALL_CONTROL_H
#define BALL_CONTROL_H
#include "sim_services/include/Flag.h"
typedef struct { /* BCONTROL_IN ----------------------------------------------*/
Flag active ; /* -- Yes = control system active */
double target_altitude ; /* M Altitude to achieve and hold */
double dead_zone ; /* M delta altitude about target altitude where
no jets are fired */
double max_rate ; /* M/s Maximum allowed altitude rate of change */
} BCONTROL_IN ; /*------------------------------------------------------------*/
typedef struct { /* BCONTROL_OUT ---------------------------------------------*/
Flag jet_command[2] ; /* -- Reaction control jet commands */
} BCONTROL_OUT ; /*-----------------------------------------------------------*/
typedef struct { /* BCONTROL_WORK --------------------------------------------*/
double last_altitude ; /* *io M Sensed altitude from last pass */
double rate_est ; /* M/s Estimated altitude rate of change */
} BCONTROL_WORK ; /*----------------------------------------------------------*/
typedef struct { /* BCONTROL -------------------------------------------------*/
BCONTROL_IN input ; /* -- User inputs */
BCONTROL_OUT output ; /* -- User outputs */
BCONTROL_WORK work ; /* -- Model workspace */
} BCONTROL ; /*---------------------------------------------------------------*/
#endif