/* * Academic License - for use in teaching, academic research, and meeting * course requirements at degree granting institutions only. Not for * government, commercial, or other organizational use. * * File: wheelSpd2.h * * Code generated for Simulink model 'wheelSpd2'. * * Model version : 11.6 * Simulink Coder version : 9.9 (R2023a) 19-Nov-2022 * C/C++ source code generated on : Thu Sep 26 15:48:20 2024 * * Target selection: ert.tlc * Embedded hardware selection: NXP->Cortex-M4 * Code generation objectives: * 1. Execution efficiency * 2. Debugging * Validation result: Not run */ #ifndef RTW_HEADER_wheelSpd2_h_ #define RTW_HEADER_wheelSpd2_h_ #ifndef wheelSpd2_COMMON_INCLUDES_ #define wheelSpd2_COMMON_INCLUDES_ #include "rtwtypes.h" #endif /* wheelSpd2_COMMON_INCLUDES_ */ /* Macros for accessing real-time model data structure */ #ifndef rtmGetErrorStatus #define rtmGetErrorStatus(rtm) ((rtm)->errorStatus) #endif #ifndef rtmSetErrorStatus #define rtmSetErrorStatus(rtm, val) ((rtm)->errorStatus = (val)) #endif /* Forward declaration for rtModel */ typedef struct Dynamics_tag_RTM Dynamics_RT_MODEL; /* Block signals and states (default storage) for system '' */ typedef struct { real_T Dynamics_Delay_DSTATE[2]; /* '/Delay' */ real_T Dynamics_Delay3_DSTATE[2]; /* '/Delay3' */ real_T Dynamics_Delay_DSTATE_f[2]; /* '/Delay' */ real_T Dynamics_Delay3_DSTATE_d[2]; /* '/Delay3' */ real_T Dynamics_d1_DSTATE; /* '/d1' */ real_T Dynamics_d_DSTATE; /* '/d' */ real_T Dynamics_d_DSTATE_c; /* '/d' */ real_T Dynamics_d1_DSTATE_e; /* '/d1' */ real_T Dynamics_d_DSTATE_h; /* '/d' */ real_T Dynamics_d1_DSTATE_p; /* '/d1' */ real_T Dynamics_d_DSTATE_g; /* '/d' */ real_T Dynamics_d1_DSTATE_a; /* '/d1' */ real_T Dynamics_Delay1_DSTATE; /* '/Delay1' */ real_T Dynamics_Delay2_DSTATE; /* '/Delay2' */ real_T Dynamics_d1_DSTATE_b; /* '/d1' */ real_T Dynamics_d_DSTATE_b; /* '/d' */ real_T Dynamics_d_DSTATE_hu; /* '/d' */ real_T Dynamics_d1_DSTATE_ad; /* '/d1' */ real_T Dynamics_d_DSTATE_c4; /* '/d' */ real_T Dynamics_d1_DSTATE_i; /* '/d1' */ real_T Dynamics_d_DSTATE_d; /* '/d' */ real_T Dynamics_d1_DSTATE_e0; /* '/d1' */ real_T Dynamics_d1_DSTATE_h; /* '/d1' */ real_T Dynamics_d_DSTATE_l; /* '/d' */ real_T Dynamics_Delay1_DSTATE_a; /* '/Delay1' */ real_T Dynamics_Delay2_DSTATE_b; /* '/Delay2' */ real_T Dynamics_PrevY; /* '/Input_Vx_RateLimiter' */ real_T Dynamics_PrevY_e; /* '/TargetSpd_RateLimiter' */ real_T Dynamics_PrevY_f; /* '/Brake_Out_RateLimiter' */ real_T Dynamics_Memory_PreviousInput;/* '/Memory' */ } Dynamics_DW; /* External inputs (root inport signals with default storage) */ typedef struct { real_T Dynamics_RPM; /* '/' */ real_T Dynamics_TQ; /* '/' */ real_T Dynamics_Brake_input; /* '/' */ real_T Dynamics_Vx_Cmd; /* '/' */ real_T Dynamics_Vx_Limit; /* '/' */ real_T Dynamics_VCU_Vx_Fbk; /* '/' */ real_T Dynamics_RC_GearPosition; /* '/' */ } Dynamics_ExtU; /* External outputs (root outports fed by signals with default storage) */ typedef struct { real_T Dynamics_Brake_cmd_out; /* '/Brake_cmd_out' */ real_T Dynamics_Torq_cmd_out1; /* '/Torq_cmd_out1' */ } Dynamics_ExtY; /* Real-time Model Data Structure */ struct Dynamics_tag_RTM { const char_T * volatile errorStatus; }; /* Block signals and states (default storage) */ extern Dynamics_DW Dynamics_rtDW; /* External inputs (root inport signals with default storage) */ extern Dynamics_ExtU Dynamics_rtU; /* External outputs (root outports fed by signals with default storage) */ extern Dynamics_ExtY Dynamics_rtY; /* Model entry point functions */ extern void wheelSpd2_initialize(void); extern void wheelSpd2_step(void); /* Real-time Model object */ extern Dynamics_RT_MODEL *const Dynamics_rtM; /*- * These blocks were eliminated from the model due to optimizations: * * Block '/BW_PI' : Unused code path elimination * Block '/Constant1' : Unused code path elimination * Block '/Constant16' : Unused code path elimination * Block '/Constant17' : Unused code path elimination * Block '/Constant2' : Unused code path elimination * Block '/Vx_Cmd' : Unused code path elimination * Block '/ControlFlag' : Eliminated nontunable gain of 1 * Block '/FBGain' : Eliminated nontunable gain of 1 * Block '/FFGain' : Eliminated nontunable gain of 1 * Block '/Constant1' : Unused code path elimination * Block '/Constant2' : Unused code path elimination * Block '/Switch' : Unused code path elimination * Block '/Switch1' : Unused code path elimination * Block '/Switch2' : Unused code path elimination * Block '/Switch3' : Unused code path elimination * Block '/Creeping_Flag' : Unused code path elimination */ /*- * The generated code includes comments that allow you to trace directly * back to the appropriate location in the model. The basic format * is /block_name, where system is the system number (uniquely * assigned by Simulink) and block_name is the name of the block. * * Use the MATLAB hilite_system command to trace the generated code back * to the model. For example, * * hilite_system('') - opens system 3 * hilite_system('/Kp') - opens and selects block Kp which resides in S3 * * Here is the system hierarchy for this model * * '' : 'wheelSpd2' * '' : 'wheelSpd2/DOB' * '' : 'wheelSpd2/DOB_Gain' * '' : 'wheelSpd2/Error_Initalize_Brake' * '' : 'wheelSpd2/FF_PID_Controller' * '' : 'wheelSpd2/GearCondition_Brake' * '' : 'wheelSpd2/Gear_pos_out' * '' : 'wheelSpd2/LPFM' * '' : 'wheelSpd2/Target_RPM' * '' : 'wheelSpd2/Vx_Logic' * '' : 'wheelSpd2/DOB/Dot3' * '' : 'wheelSpd2/DOB/Dot4' * '' : 'wheelSpd2/DOB/Dot5' * '' : 'wheelSpd2/DOB/LPFM' * '' : 'wheelSpd2/DOB/Second order LPF' * '' : 'wheelSpd2/FF_PID_Controller/FB' * '' : 'wheelSpd2/FF_PID_Controller/FF' * '' : 'wheelSpd2/FF_PID_Controller/FB/P' * '' : 'wheelSpd2/FF_PID_Controller/FF/Dot' * '' : 'wheelSpd2/FF_PID_Controller/FF/Dot2' * '' : 'wheelSpd2/FF_PID_Controller/FF/Dot3' * '' : 'wheelSpd2/FF_PID_Controller/FF/LPFM' * '' : 'wheelSpd2/FF_PID_Controller/FF/Second order LPF' * '' : 'wheelSpd2/Vx_Logic/Creeping Control' * '' : 'wheelSpd2/Vx_Logic/Vx_OutPut_Function' */ /*- * Requirements for '': wheelSpd2 */ #endif /* RTW_HEADER_wheelSpd2_h_ */ /* * File trailer for generated code. * * [EOF] */