from
NXTbike-GS (self-balancing bike robot by steer-into-fall)
by Joep
NXTbike-GS Design based on Embedded Coder Robot NXT. and NXTway-GS
|
| nxtway_app_h.html |
RTW Report - nxtway_app.h
1 /*
2 * File: nxtway_app.h
3 *
4 * Real-Time Workshop code generated for Simulink model nxtway_app.
5 *
6 * Model version : 1.806
7 * Real-Time Workshop file version : 7.2 (R2008b) 04-Aug-2008
8 * Real-Time Workshop file generated on : Tue May 18 11:50:19 2010
9 * TLC version : 7.2 (Aug 5 2008)
10 * C/C++ source code generated on : Tue May 18 11:50:20 2010
11 */
12
13 #ifndef RTW_HEADER_nxtway_app_h_
14 #define RTW_HEADER_nxtway_app_h_
15 #ifndef nxtway_app_COMMON_INCLUDES_
16 # define nxtway_app_COMMON_INCLUDES_
17 #include <math.h>
18 #include "rtwtypes.h"
19 #include "rt_SATURATE.h"
20 #include "rt_SIGNd.h"
21 #include "rt_SIGNf.h"
22 #endif /* nxtway_app_COMMON_INCLUDES_ */
23
24 #include "nxtway_app_types.h"
25
26 /* Includes for objects with custom storage classes. */
27 #include "ecrobot_external_interface.h"
28
29 /* Macros for accessing real-time model data structure */
30 #ifndef rtmGetErrorStatus
31 # define rtmGetErrorStatus(rtm) ((void*) 0)
32 #endif
33
34 #ifndef rtmSetErrorStatus
35 # define rtmSetErrorStatus(rtm, val) ((void) 0)
36 #endif
37
38 #ifndef rtmGetStopRequested
39 # define rtmGetStopRequested(rtm) ((rtm)->Timing.stopRequestedFlag)
40 #endif
41
42 #ifndef rtmSetStopRequested
43 # define rtmSetStopRequested(rtm, val) ((rtm)->Timing.stopRequestedFlag = (val))
44 #endif
45
46 #ifndef rtmGetStopRequestedPtr
47 # define rtmGetStopRequestedPtr(rtm) (&((rtm)->Timing.stopRequestedFlag))
48 #endif
49
50 #define nxtway_app_M rtM
51
52 /* Block signals (auto storage) */
53 typedef struct {
54 int32_T RevolutionSensor_C; /* '<S46>/Data Store Read' */
55 uint8_T BluetoothRxRead[32]; /* '<S14>/Bluetooth Rx Read' */
56 } BlockIO;
57
58 /* Block states (auto storage) for system '<Root>' */
59 typedef struct {
60 real32_T UnitDelay_DSTATE; /* '<S35>/Unit Delay' */
61 real32_T UnitDelay_DSTATE_e; /* '<S33>/Unit Delay' */
62 real32_T UnitDelay_DSTATE_h; /* '<S37>/Unit Delay' */
63 real32_T UnitDelay_DSTATE_f; /* '<S36>/Unit Delay' */
64 real32_T gyro_offset; /* '<S5>/Data Store Memory5' */
65 real32_T battery; /* '<S5>/Data Store Memory7' */
66 uint32_T start_time; /* '<S5>/Data Store Memory9' */
67 uint8_T UnitDelay_DSTATE_k; /* '<S16>/Unit Delay' */
68 boolean_T UnitDelay_DSTATE_a; /* '<S9>/Unit Delay' */
69 boolean_T flag_start; /* '<S5>/Data Store Memory' */
70 boolean_T flag_avoid; /* '<S5>/Data Store Memory1' */
71 boolean_T flag_mode; /* '<S5>/Data Store Memory3' */
72 boolean_T flag_auto; /* '<S5>/Data Store Memory4' */
73 } D_Work;
74
75 /* Constant parameters (auto storage) */
76 typedef struct {
77 /* Computed Parameter: Gain
78 * '<S17>/Feedback Gain'
79 */
80 real32_T FeedbackGain_Gain[3];
81 } ConstParam;
82
83 /* Real-time Model Data Structure */
84 struct RT_MODEL {
85 /*
86 * Timing:
87 * The following substructure contains information regarding
88 * the timing information for the model.
89 */
90 struct {
91 boolean_T stopRequestedFlag;
92 } Timing;
93 };
94
95 /* Block signals (auto storage) */
96 extern BlockIO rtB;
97
98 /* Block states (auto storage) */
99 extern D_Work rtDWork;
100
101 /* Constant parameters (auto storage) */
102 extern const ConstParam rtConstP;
103
104 /* Model entry point functions */
105 extern void nxtway_app_initialize(void);
106 extern void task_ts3(void);
107 extern void task_ts2(void);
108 extern void task_ts1(void);
109 extern void task_init(void);
110
111 /* Real-time Model object */
112 extern RT_MODEL *rtM;
113
114 /*-
115 * The generated code includes comments that allow you to trace directly
116 * back to the appropriate location in the model. The basic format
117 * is <system>/block_name, where system is the system number (uniquely
118 * assigned by Simulink) and block_name is the name of the block.
119 *
120 * Note that this particular code originates from a subsystem build,
121 * and has its own system numbers different from the parent model.
122 * Refer to the system hierarchy for this subsystem below, and use the
123 * MATLAB hilite_system command to trace the generated code back
124 * to the parent model. For example,
125 *
126 * hilite_system('nxtbike_controller/__ExpFcn__1') - opens subsystem nxtbike_controller/__ExpFcn__1
127 * hilite_system('nxtbike_controller/__ExpFcn__1/Kp') - opens and selects block Kp
128 *
129 * Here is the system hierarchy for this model
130 *
131 * '<Root>' : nxtbike_controller
132 * '<S1>' : nxtbike_controller/__ExpFcn__1
133 * '<S6>' : nxtbike_controller/nxtway_app/task_init
134 * '<S7>' : nxtbike_controller/nxtway_app/task_ts1
135 * '<S8>' : nxtbike_controller/nxtway_app/task_ts2
136 * '<S9>' : nxtbike_controller/nxtway_app/task_ts3
137 * '<S10>' : nxtbike_controller/nxtway_app/task_init/Battery Voltage Read
138 * '<S11>' : nxtbike_controller/nxtway_app/task_init/Gyro Sensor Read
139 * '<S12>' : nxtbike_controller/nxtway_app/task_init/Manual Switch
140 * '<S13>' : nxtbike_controller/nxtway_app/task_init/System Clock Read
141 * '<S14>' : nxtbike_controller/nxtway_app/task_ts1/Balance & Drive Control
142 * '<S15>' : nxtbike_controller/nxtway_app/task_ts1/Gyro Calibration
143 * '<S16>' : nxtbike_controller/nxtway_app/task_ts1/Balance & Drive Control/Cal flag_log
144 * '<S17>' : nxtbike_controller/nxtway_app/task_ts1/Balance & Drive Control/Controller
145 * '<S18>' : nxtbike_controller/nxtway_app/task_ts1/Balance & Drive Control/Data Logging
146 * '<S19>' : nxtbike_controller/nxtway_app/task_ts1/Balance & Drive Control/Gyro Sensor Read
147 * '<S20>' : nxtbike_controller/nxtway_app/task_ts1/Balance & Drive Control/Make Command
148 * '<S21>' : nxtbike_controller/nxtway_app/task_ts1/Balance & Drive Control/Revolution Sensor Read
149 * '<S22>' : nxtbike_controller/nxtway_app/task_ts1/Balance & Drive Control/Revolution Sensor Read1
150 * '<S23>' : nxtbike_controller/nxtway_app/task_ts1/Balance & Drive Control/Servo Motor Write
151 * '<S24>' : nxtbike_controller/nxtway_app/task_ts1/Balance & Drive Control/Servo Motor Write1
152 * '<S25>' : nxtbike_controller/nxtway_app/task_ts1/Balance & Drive Control/Servo Motor Write2
153 * '<S26>' : nxtbike_controller/nxtway_app/task_ts1/Balance & Drive Control/Controller/Cal PWM
154 * '<S27>' : nxtbike_controller/nxtway_app/task_ts1/Balance & Drive Control/Controller/Cal Reference
155 * '<S28>' : nxtbike_controller/nxtway_app/task_ts1/Balance & Drive Control/Controller/Cal x1
156 * '<S29>' : nxtbike_controller/nxtway_app/task_ts1/Balance & Drive Control/Controller/Cal PWM/Cal vol_max
157 * '<S30>' : nxtbike_controller/nxtway_app/task_ts1/Balance & Drive Control/Controller/Cal PWM/Compare To Constant
158 * '<S31>' : nxtbike_controller/nxtway_app/task_ts1/Balance & Drive Control/Controller/Cal PWM/Friction Compensator
159 * '<S32>' : nxtbike_controller/nxtway_app/task_ts1/Balance & Drive Control/Controller/Cal PWM/Friction Compensator1
160 * '<S33>' : nxtbike_controller/nxtway_app/task_ts1/Balance & Drive Control/Controller/Cal Reference/Low Path Filter
161 * '<S34>' : nxtbike_controller/nxtway_app/task_ts1/Balance & Drive Control/Controller/Cal x1/Cal gyro_offset
162 * '<S35>' : nxtbike_controller/nxtway_app/task_ts1/Balance & Drive Control/Controller/Cal x1/Discrete Derivative (backward difference)1
163 * '<S36>' : nxtbike_controller/nxtway_app/task_ts1/Balance & Drive Control/Controller/Cal x1/Discrete Derivative (backward difference)2
164 * '<S37>' : nxtbike_controller/nxtway_app/task_ts1/Balance & Drive Control/Controller/Cal x1/Discrete Integrator (forward euler)
165 * '<S38>' : nxtbike_controller/nxtway_app/task_ts1/Balance & Drive Control/Data Logging/Scaling1
166 * '<S39>' : nxtbike_controller/nxtway_app/task_ts1/Balance & Drive Control/Make Command/Cal Command
167 * '<S40>' : nxtbike_controller/nxtway_app/task_ts1/Balance & Drive Control/Make Command/Get Command
168 * '<S41>' : nxtbike_controller/nxtway_app/task_ts1/Gyro Calibration/Gyro Sensor Read
169 * '<S42>' : nxtbike_controller/nxtway_app/task_ts2/Autonomous Drive
170 * '<S43>' : nxtbike_controller/nxtway_app/task_ts2/Remote Control Drive
171 * '<S44>' : nxtbike_controller/nxtway_app/task_ts2/Autonomous Drive/Forward Run
172 * '<S45>' : nxtbike_controller/nxtway_app/task_ts2/Autonomous Drive/Rotate Right
173 * '<S46>' : nxtbike_controller/nxtway_app/task_ts2/Autonomous Drive/Forward Run/Revolution Sensor Read
174 * '<S47>' : nxtbike_controller/nxtway_app/task_ts2/Autonomous Drive/Forward Run/Ultrasonic Sensor Read
175 * '<S48>' : nxtbike_controller/nxtway_app/task_ts2/Autonomous Drive/Rotate Right/Revolution Sensor Read
176 * '<S49>' : nxtbike_controller/nxtway_app/task_ts2/Remote Control Drive/Ultrasonic Sensor Read
177 * '<S50>' : nxtbike_controller/nxtway_app/task_ts3/Battery Voltage Read
178 * '<S51>' : nxtbike_controller/nxtway_app/task_ts3/Make Sound
179 * '<S52>' : nxtbike_controller/nxtway_app/task_ts3/System Clock Read
180 */
181 #endif /* RTW_HEADER_nxtway_app_h_ */
182
183 /* File trailer for Real-Time Workshop generated code.
184 *
185 * [EOF]
186 */
|
|
|
Contact us