1/*
2 * Academic License - for use in teaching, academic research, and meeting
3 * course requirements at degree granting institutions only. Not for
4 * government, commercial, or other organizational use.
5 *
6 * File: ActuatorControl.h
7 *
8 * Code generated for Simulink model 'ActuatorControl'.
9 *
10 * Model version : 1.68
11 * Simulink Coder version : 9.3 (R2020a) 18-Nov-2019
12 * C/C++ source code generated on : Fri Jul 10 14:45:14 2020
13 *
14 * Target selection: ert.tlc
15 * Embedded hardware selection: Intel->x86-32 (Windows32)
16 * Code generation objectives:
17 * 1. Execution efficiency
18 * 2. RAM efficiency
19 * Validation result: Not run
20 */
21
22#ifndef RTW_HEADER_ActuatorControl_h_
23#define RTW_HEADER_ActuatorControl_h_
24#include <math.h>
25#ifndef ActuatorControl_COMMON_INCLUDES_
26# define ActuatorControl_COMMON_INCLUDES_
27#include "rtwtypes.h"
28#endif /* ActuatorControl_COMMON_INCLUDES_ */
29
30/* Child system includes */
31#ifndef ActuatorControl_MDLREF_HIDE_CHILD_
32#include "Actuator_Control.h"
33#endif /*ActuatorControl_MDLREF_HIDE_CHILD_*/
34
35#ifndef ActuatorControl_MDLREF_HIDE_CHILD_
36#endif /*ActuatorControl_MDLREF_HIDE_CHILD_*/
37
38#ifndef ActuatorControl_MDLREF_HIDE_CHILD_
39#endif /*ActuatorControl_MDLREF_HIDE_CHILD_*/
40
41#ifndef ActuatorControl_MDLREF_HIDE_CHILD_
42#endif /*ActuatorControl_MDLREF_HIDE_CHILD_*/
43
44/* Model Code Variants */
45
46/* Block signals and states (default storage) for model 'ActuatorControl' */
47#ifndef ActuatorControl_MDLREF_HIDE_CHILD_
48
49typedef struct {
50 real_T Integrator; /* '<S4>/Integrator' */
51 real_T Integrator_f; /* '<S3>/Integrator' */
52 real_T Integrator_fa; /* '<S2>/Integrator' */
53 real_T Integrator_DSTATE; /* '<S4>/Integrator' */
54 real_T UD_DSTATE; /* '<S7>/UD' */
55 real_T Integrator_DSTATE_p; /* '<S3>/Integrator' */
56 real_T UD_DSTATE_d; /* '<S6>/UD' */
57 real_T Integrator_DSTATE_h; /* '<S2>/Integrator' */
58 real_T UD_DSTATE_j; /* '<S5>/UD' */
59} DW_ActuatorControl_f_T;
60
61#endif /*ActuatorControl_MDLREF_HIDE_CHILD_*/
62
63extern void ActuatorControl_Disable(void);
64extern void Actuator_Control(const int16_T rtu_Act_Pos1, const real_T
65 rtu_actuator_command_1, const int16_T rtu_Act_Pos2, const real_T
66 rtu_actuator_command_2, const int16_T rtu_Act_Pos3, const real_T
67 rtu_actuator_command_3, int16_T *rty_Actuator1, int16_T *rty_Actuator2,
68 int16_T *rty_Actuator3);
69
70#ifndef ActuatorControl_MDLREF_HIDE_CHILD_
71
72/* Block states (default storage) */
73extern DW_ActuatorControl_f_T ActuatorControl_DW;
74
75#endif /*ActuatorControl_MDLREF_HIDE_CHILD_*/
76
77/*-
78 * The generated code includes comments that allow you to trace directly
79 * back to the appropriate location in the model. The basic format
80 * is <system>/block_name, where system is the system number (uniquely
81 * assigned by Simulink) and block_name is the name of the block.
82 *
83 * Use the MATLAB hilite_system command to trace the generated code back
84 * to the model. For example,
85 *
86 * hilite_system('<S3>') - opens system 3
87 * hilite_system('<S3>/Kp') - opens and selects block Kp which resides in S3
88 *
89 * Here is the system hierarchy for this model
90 *
91 * '<Root>' : 'ActuatorControl'
92 * '<S1>' : 'ActuatorControl/Actuator_Control'
93 * '<S2>' : 'ActuatorControl/Actuator_Control/ActuatorLoop1'
94 * '<S3>' : 'ActuatorControl/Actuator_Control/ActuatorLoop2'
95 * '<S4>' : 'ActuatorControl/Actuator_Control/ActuatorLoop3'
96 * '<S5>' : 'ActuatorControl/Actuator_Control/ActuatorLoop1/Difference'
97 * '<S6>' : 'ActuatorControl/Actuator_Control/ActuatorLoop2/Difference'
98 * '<S7>' : 'ActuatorControl/Actuator_Control/ActuatorLoop3/Difference'
99 */
100
101/*-
102 * Requirements for '<Root>': ActuatorControl
103 */
104#endif /* RTW_HEADER_ActuatorControl_h_ */
105
106/*
107 * File trailer for generated code.
108 *
109 * [EOF]
110 */
111