diff --git a/HVAC_model.c b/HVAC_model.c index d6b68a9..5a31888 100644 --- a/HVAC_model.c +++ b/HVAC_model.c @@ -3,9 +3,9 @@ * * Code generated for Simulink model 'HVAC_model'. * - * Model version : 1.866 + * Model version : 1.876 * Simulink Coder version : 24.1 (R2024a) 19-Nov-2023 - * C/C++ source code generated on : Tue May 5 14:20:39 2026 + * C/C++ source code generated on : Wed May 6 14:55:30 2026 * * Target selection: ert.tlc * Embedded hardware selection: ARM Compatible->ARM Cortex-M @@ -162,9 +162,9 @@ const ActuatorCmdBus HVAC_model_rtZActuatorCmdBus = { ActuatorCmdBusInput Actuator_Ch0_Status_Model;/* '/Data Store Memory61' */ ActuatorCmdBusInput Actuator_Ch1_Status_Model;/* '/Data Store Memory62' */ ActuatorCmdBusInput Actuator_Ch2_Status_Model;/* '/Data Store Memory63' */ -ActuatorCmdBus Actuator_Ch0_Command_Model;/* '/Data Store Memory15' */ -ActuatorCmdBus Actuator_Ch1_Command_Model;/* '/Data Store Memory15' */ -ActuatorCmdBus Actuator_Ch2_Command_Model;/* '/Data Store Memory15' */ +ActuatorCmdBus Actuator_Ch0_Command_Model;/* '/Data Store Memory15' */ +ActuatorCmdBus Actuator_Ch1_Command_Model;/* '/Data Store Memory15' */ +ActuatorCmdBus Actuator_Ch2_Command_Model;/* '/Data Store Memory15' */ CmdBusStatus Status_Sensor_Model; /* '/Data Store Memory' */ CmdBusError CCU_Errors_Model; /* '/Data Store Memory3' */ CmdBusPWMGet PWM_Get; /* '/Data Store Memory128' */ @@ -2503,60 +2503,41 @@ void left(uint8_t rtu_idx, uint16_t rty_vals[9]) /* * Output and update for action system: - * '/If Action Subsystem' - * '/If Action Subsystem' - * '/If Action Subsystem' + * '/If Action Subsystem' + * '/If Action Subsystem' + * '/If Action Subsystem' */ void IfActionSubsystem(int8_t *rty_Out1, double *rtd_ErrorHomming_private, double *rtd_Start_timer_i, int8_t *rtd_stepSig_private) { - /* DataStoreWrite: '/Data Store Write' incorporates: - * Constant: '/Constant' + /* DataStoreWrite: '/Data Store Write' incorporates: + * Constant: '/Constant' */ *rtd_stepSig_private = 1; - /* DataStoreWrite: '/Data Store Write1' incorporates: - * Constant: '/Constant2' - * DataStoreRead: '/Data Store Read1' - * Sum: '/step inc' + /* DataStoreWrite: '/Data Store Write1' incorporates: + * Constant: '/Constant2' + * DataStoreRead: '/Data Store Read1' + * Sum: '/step inc' */ (*rtd_ErrorHomming_private)++; - /* DataStoreWrite: '/Data Store Write2' incorporates: - * Constant: '/Constant3' + /* DataStoreWrite: '/Data Store Write2' incorporates: + * Constant: '/Constant3' */ *rtd_Start_timer_i = 0.0; - /* SignalConversion generated from: '/Out1' incorporates: - * Constant: '/Constant1' + /* SignalConversion generated from: '/Out1' incorporates: + * Constant: '/Constant1' */ *rty_Out1 = 2; } -/* - * Output and update for action system: - * '/If Action Subsystem1' - * '/If Action Subsystem1' - * '/If Action Subsystem1' - */ -void IfActionSubsystem1(int8_t *rty_Out1, double *rtd_Start_timer_i) -{ - /* DataStoreWrite: '/Data Store Write2' incorporates: - * Constant: '/Constant3' - */ - *rtd_Start_timer_i = 1.0; - - /* SignalConversion generated from: '/Out1' incorporates: - * Constant: '/Constant1' - */ - *rty_Out1 = 3; -} - /* * System initialize for atomic system: - * '/MATLAB Function' - * '/MATLAB Function' - * '/MATLAB Function' + * '/MATLAB Function' + * '/MATLAB Function' + * '/MATLAB Function' */ void MATLABFunction_Init(DW_MATLABFunction *localDW) { @@ -2566,9 +2547,9 @@ void MATLABFunction_Init(DW_MATLABFunction *localDW) /* * Output and update for atomic system: - * '/MATLAB Function' - * '/MATLAB Function' - * '/MATLAB Function' + * '/MATLAB Function' + * '/MATLAB Function' + * '/MATLAB Function' */ void MATLABFunction(double rtu_cond, uint32_t rtu_t_now, uint32_t *rty_dt, DW_MATLABFunction *localDW) @@ -2615,11 +2596,11 @@ void MATLABFunction(double rtu_cond, uint32_t rtu_t_now, uint32_t *rty_dt, /* * Output and update for action system: - * '/If Action Subsystem1' - * '/If Action Subsystem1' - * '/If Action Subsystem1' + * '/If Action Subsystem1' + * '/If Action Subsystem1' + * '/If Action Subsystem1' */ -void IfActionSubsystem1_d(int8_t *rty_Output, uint8_t +void IfActionSubsystem1(int8_t *rty_Output, uint8_t *rtd_CCU_ActuatorErrF_Stat_private, uint8_t rtd_COM_private[9], uint8_t rtd_ErrorActuator[9], uint8_t rtd_ErrorCalibration_private[9], const double *rtd_LOGGER_LIN, uint8_t rtd_MODE_private[9], uint8_t @@ -2628,32 +2609,32 @@ void IfActionSubsystem1_d(int8_t *rty_Output, uint8_t int32_t i; bool tmp; - /* Logic: '/Logical Operator' incorporates: - * DataStoreRead: '/Data Store Read' + /* Logic: '/Logical Operator' incorporates: + * DataStoreRead: '/Data Store Read' */ tmp = (rtd_ErrorCalibration_private[0] != 0); for (i = 0; i < 8; i++) { tmp = (tmp || (rtd_ErrorCalibration_private[i + 1] != 0)); } - /* DataTypeConversion: '/Data Type Conversion' incorporates: - * DataStoreWrite: '/Data Store Write1' - * Logic: '/Logical Operator' + /* DataTypeConversion: '/Data Type Conversion' incorporates: + * DataStoreWrite: '/Data Store Write1' + * Logic: '/Logical Operator' */ *rtd_CCU_ActuatorErrF_Stat_private = tmp; for (i = 0; i < 9; i++) { - /* DataStoreWrite: '/Data Store Write2' incorporates: - * DataStoreRead: '/Data Store Read' + /* DataStoreWrite: '/Data Store Write2' incorporates: + * DataStoreRead: '/Data Store Read' */ rtd_COM_private[i] = rtd_ErrorCalibration_private[i]; - /* DataStoreWrite: '/Data Store Write' */ + /* DataStoreWrite: '/Data Store Write' */ rtd_MODE_private[i] = 2U; } - /* MATLAB Function: '/Write ERROR' incorporates: - * DataStoreRead: '/Data Store Read' - * DataStoreRead: '/Data Store Read6' + /* MATLAB Function: '/Write ERROR' incorporates: + * DataStoreRead: '/Data Store Read' + * DataStoreRead: '/Data Store Read6' */ /* : if(LOGGER==1) */ if (*rtd_LOGGER_LIN == 1.0) { @@ -2668,40 +2649,58 @@ void IfActionSubsystem1_d(int8_t *rty_Output, uint8_t } } - /* End of MATLAB Function: '/Write ERROR' */ + /* End of MATLAB Function: '/Write ERROR' */ for (i = 0; i < 9; i++) { uint8_t rtd_ErrorCalibration_private_0; - /* Logic: '/Logical Operator1' incorporates: - * DataStoreRead: '/Data Store Read' + /* Logic: '/Logical Operator1' incorporates: + * DataStoreRead: '/Data Store Read' */ rtd_ErrorCalibration_private_0 = rtd_ErrorCalibration_private[i]; - /* DataTypeConversion: '/Data Type Conversion1' incorporates: - * DataStoreRead: '/Data Store Read1' - * DataStoreWrite: '/Data Store Write3' - * Logic: '/Logical Operator1' + /* DataTypeConversion: '/Data Type Conversion1' incorporates: + * DataStoreRead: '/Data Store Read1' + * DataStoreWrite: '/Data Store Write3' + * Logic: '/Logical Operator1' */ rtd_ErrorActuator[i] = (uint8_t)((rtd_ErrorCalibration_private_0 != 0) || (rtd_ErrorActuator[i] != 0)); - /* DataStoreWrite: '/Data Store Write' */ + /* DataStoreWrite: '/Data Store Write' */ rtd_dtc_state_error_model[i + 54] = rtd_ErrorCalibration_private_0; - /* DataStoreWrite: '/Data Store Write' */ + /* DataStoreWrite: '/Data Store Write' */ rtd_ErrorCalibration_private[i] = 0U; } - /* SignalConversion generated from: '/Output' incorporates: - * Constant: '/Constant' + /* SignalConversion generated from: '/Output' incorporates: + * Constant: '/Constant' */ *rty_Output = 4; } +/* + * Output and update for action system: + * '/If Action Subsystem1' + * '/If Action Subsystem1' + */ +void IfActionSubsystem1_l(int8_t *rty_Out1, double *rtd_Start_timer_l) +{ + /* DataStoreWrite: '/Data Store Write2' incorporates: + * Constant: '/Constant3' + */ + *rtd_Start_timer_l = 1.0; + + /* SignalConversion generated from: '/Out1' incorporates: + * Constant: '/Constant1' + */ + *rty_Out1 = 3; +} + /* * Output and update for atomic system: - * '/AF for Bi Level' - * '/AF for Bi Level' + * '/AF for Bi Level' + * '/AF for Bi Level' */ void AFforBiLevel(uint8_t rtu_blower_speed, uint16_t *rty_out) { @@ -2718,8 +2717,8 @@ void AFforBiLevel(uint8_t rtu_blower_speed, uint16_t *rty_out) /* * Output and update for atomic system: - * '/AF for Def' - * '/AF for Def' + * '/AF for Def' + * '/AF for Def' */ void AFforDef(uint8_t rtu_blower_speed, uint16_t *rty_out) { @@ -2736,8 +2735,8 @@ void AFforDef(uint8_t rtu_blower_speed, uint16_t *rty_out) /* * Output and update for atomic system: - * '/AF for Foor + Def' - * '/AF for Foor + Def' + * '/AF for Foor + Def' + * '/AF for Foor + Def' */ void AFforFoorDef(uint8_t rtu_blower_speed, uint16_t *rty_out) { @@ -2754,8 +2753,8 @@ void AFforFoorDef(uint8_t rtu_blower_speed, uint16_t *rty_out) /* * Output and update for atomic system: - * '/AF for Foot' - * '/AF for Foot' + * '/AF for Foot' + * '/AF for Foot' */ void AFforFoot(uint8_t rtu_blower_speed, uint16_t *rty_out) { @@ -2772,8 +2771,8 @@ void AFforFoot(uint8_t rtu_blower_speed, uint16_t *rty_out) /* * Output and update for atomic system: - * '/AF for Hi_Level' - * '/AF for Hi_Level' + * '/AF for Hi_Level' + * '/AF for Hi_Level' */ void AFforHi_Level(uint8_t rtu_blower_speed, uint16_t *rty_out) { @@ -2790,8 +2789,8 @@ void AFforHi_Level(uint8_t rtu_blower_speed, uint16_t *rty_out) /* * Output and update for atomic system: - * '/AF for Tri-Level' - * '/AF for Tri-Level' + * '/AF for Tri-Level' + * '/AF for Tri-Level' */ void AFforTriLevel(uint8_t rtu_blower_speed, uint16_t *rty_out) { @@ -2808,8 +2807,8 @@ void AFforTriLevel(uint8_t rtu_blower_speed, uint16_t *rty_out) /* * Output and update for atomic system: - * '/AF for Vent mode' - * '/AF for Vent mode' + * '/AF for Vent mode' + * '/AF for Vent mode' */ void AFforVentmode(uint8_t rtu_blower_speed, uint16_t *rty_out) { @@ -2826,8 +2825,8 @@ void AFforVentmode(uint8_t rtu_blower_speed, uint16_t *rty_out) /* * Output and update for atomic system: - * '/AF for Bi Level R' - * '/AF for Bi Level R' + * '/AF for Bi Level R' + * '/AF for Bi Level R' */ void AFforBiLevelR(uint8_t rtu_blower_speed, uint16_t *rty_out) { @@ -2844,8 +2843,8 @@ void AFforBiLevelR(uint8_t rtu_blower_speed, uint16_t *rty_out) /* * Output and update for atomic system: - * '/AF for Foot R' - * '/AF for Foot R' + * '/AF for Foot R' + * '/AF for Foot R' */ void AFforFootR(uint8_t rtu_blower_speed, uint16_t *rty_out) { @@ -2862,8 +2861,8 @@ void AFforFootR(uint8_t rtu_blower_speed, uint16_t *rty_out) /* * Output and update for atomic system: - * '/AF for Vent mode R' - * '/AF for Vent mode R' + * '/AF for Vent mode R' + * '/AF for Vent mode R' */ void AFforVentmodeR(uint8_t rtu_blower_speed, uint16_t *rty_out) { @@ -2880,8 +2879,188 @@ void AFforVentmodeR(uint8_t rtu_blower_speed, uint16_t *rty_out) /* * Output and update for atomic system: - * '/g_assSTART_ENTER_INCAR' - * '/g_assSTART_ENTER_INCAR' + * '/Valves for Bi Level' + * '/Valves for Bi Level' + */ +void ValvesforBiLevel(uint8_t rtu_blower_speed, uint16_t *rty_out) +{ + int32_t tmp; + + /* : out = uint16(g_ausFLOW_FR_BIVALVE_MANUAL(blower_speed + 1)); */ + tmp = (int32_t)(rtu_blower_speed + 1U); + if (rtu_blower_speed + 1U > 255U) { + tmp = 255; + } + + *rty_out = g_ausFLOW_FR_BIVALVE_MANUAL[tmp - 1]; +} + +/* + * Output and update for atomic system: + * '/Valves for Def' + * '/Valves for Def' + */ +void ValvesforDef(uint8_t rtu_blower_speed, uint16_t *rty_out) +{ + int32_t tmp; + + /* : out = uint16(g_ausFLOW_FR_DE2VALVE(blower_speed + 1)); */ + tmp = (int32_t)(rtu_blower_speed + 1U); + if (rtu_blower_speed + 1U > 255U) { + tmp = 255; + } + + *rty_out = g_ausFLOW_FR_DE2VALVE[tmp - 1]; +} + +/* + * Output and update for atomic system: + * '/Valves for Foot' + * '/Valves for Foot' + */ +void ValvesforFoot(uint8_t rtu_blower_speed, uint16_t *rty_out) +{ + int32_t tmp; + + /* : out = uint16(g_ausFLOW_FR_FO2VALVE(blower_speed + 1)); */ + tmp = (int32_t)(rtu_blower_speed + 1U); + if (rtu_blower_speed + 1U > 255U) { + tmp = 255; + } + + *rty_out = g_ausFLOW_FR_FO2VALVE[tmp - 1]; +} + +/* + * Output and update for atomic system: + * '/Valves for Foot + Def' + * '/Valves for Foot + Def' + */ +void ValvesforFootDef(uint8_t rtu_blower_speed, uint16_t *rty_out) +{ + int32_t tmp; + + /* : out = uint16(g_ausFLOW_FR_FD2VALVE(blower_speed + 1)); */ + tmp = (int32_t)(rtu_blower_speed + 1U); + if (rtu_blower_speed + 1U > 255U) { + tmp = 255; + } + + *rty_out = g_ausFLOW_FR_FD2VALVE[tmp - 1]; +} + +/* + * Output and update for atomic system: + * '/Valves for Hi_Level' + * '/Valves for Hi_Level' + */ +void ValvesforHi_Level(uint8_t rtu_blower_speed, uint16_t *rty_out) +{ + int32_t tmp; + + /* : out = uint16(g_ausFLOW_FR_HI2VALVE(blower_speed + 1)); */ + tmp = (int32_t)(rtu_blower_speed + 1U); + if (rtu_blower_speed + 1U > 255U) { + tmp = 255; + } + + *rty_out = g_ausFLOW_FR_HI2VALVE[tmp - 1]; +} + +/* + * Output and update for atomic system: + * '/Valves for Tri-Level' + * '/Valves for Tri-Level' + */ +void ValvesforTriLevel(uint8_t rtu_blower_speed, uint16_t *rty_out) +{ + int32_t tmp; + + /* : out = uint16(g_ausFLOW_FR_TR2VALVE(blower_speed + 1)); */ + tmp = (int32_t)(rtu_blower_speed + 1U); + if (rtu_blower_speed + 1U > 255U) { + tmp = 255; + } + + *rty_out = g_ausFLOW_FR_TR2VALVE[tmp - 1]; +} + +/* + * Output and update for atomic system: + * '/Valves for Vent mode' + * '/Valves for Vent mode' + */ +void ValvesforVentmode(uint8_t rtu_blower_speed, uint16_t *rty_out) +{ + int32_t tmp; + + /* : out = uint16(g_ausFLOW_FR_VE2VALVE(blower_speed + 1)); */ + tmp = (int32_t)(rtu_blower_speed + 1U); + if (rtu_blower_speed + 1U > 255U) { + tmp = 255; + } + + *rty_out = g_ausFLOW_FR_VE2VALVE[tmp - 1]; +} + +/* + * Output and update for atomic system: + * '/AF for Bi Level' + * '/AF for Bi Level' + */ +void AFforBiLevel_m(uint8_t rtu_blower_speed, uint16_t *rty_out) +{ + int32_t tmp; + + /* : out = uint16(g_ausFLOW_RE_BI2VALVE_MANUAL(blower_speed + 1)); */ + tmp = (int32_t)(rtu_blower_speed + 1U); + if (rtu_blower_speed + 1U > 255U) { + tmp = 255; + } + + *rty_out = g_ausFLOW_RE_BI2VALVE_MANUAL[tmp - 1]; +} + +/* + * Output and update for atomic system: + * '/AF for Foot' + * '/AF for Foot' + */ +void AFforFoot_p(uint8_t rtu_blower_speed, uint16_t *rty_out) +{ + int32_t tmp; + + /* : out = uint16(g_ausFLOW_RE_FO2VALVE(blower_speed + 1)); */ + tmp = (int32_t)(rtu_blower_speed + 1U); + if (rtu_blower_speed + 1U > 255U) { + tmp = 255; + } + + *rty_out = g_ausFLOW_RE_FO2VALVE[tmp - 1]; +} + +/* + * Output and update for atomic system: + * '/valves for Vent mode' + * '/valves for Vent mode' + */ +void valvesforVentmode(uint8_t rtu_blower_speed, uint16_t *rty_out) +{ + int32_t tmp; + + /* : out = uint16(g_ausFLOW_RE_VENT_MANUAL(blower_speed + 1)); */ + tmp = (int32_t)(rtu_blower_speed + 1U); + if (rtu_blower_speed + 1U > 255U) { + tmp = 255; + } + + *rty_out = g_ausFLOW_RE_VENT_MANUAL[tmp - 1]; +} + +/* + * Output and update for atomic system: + * '/g_assSTART_ENTER_INCAR' + * '/g_assSTART_ENTER_INCAR' */ void g_assSTART_ENTER_INCAR_j(uint8_t rtu_LVL, int16_t *rty_out) { @@ -2898,9 +3077,9 @@ void g_assSTART_ENTER_INCAR_j(uint8_t rtu_LVL, int16_t *rty_out) /* * Output and update for atomic system: - * '/g_assSTART_ENTER_COOLANT ' - * '/g_assSTART_ENTER_COOLANT ' - * '/g_assSTART_ENTER_COOLANT ' + * '/g_assSTART_ENTER_COOLANT ' + * '/g_assSTART_ENTER_COOLANT ' + * '/g_assSTART_ENTER_COOLANT ' */ void g_assSTART_ENTER_COOLANT_p(uint8_t rtu_LVL, int16_t *rty_out) { @@ -2926,28 +3105,28 @@ void g_assSTART_ENTER_COOLANT_p(uint8_t rtu_LVL, int16_t *rty_out) /* * Output and update for action system: - * '/Level 4' - * '/Level 5' + * '/Level 4' + * '/Level 5' */ void Level4(int8_t *rty_step1, const uint16_t *rtd_ECT, const uint8_t *rtd_LEVEL, const double *rtd_MODE_DRIVER) { int16_t rtb_out_p2; - /* MATLAB Function: '/g_assSTART_ENTER_COOLANT ' incorporates: - * DataStoreRead: '/Data Store Read3' + /* MATLAB Function: '/g_assSTART_ENTER_COOLANT ' incorporates: + * DataStoreRead: '/Data Store Read3' */ g_assSTART_ENTER_COOLANT_p(*rtd_LEVEL, &rtb_out_p2); - /* Switch: '/Switch' incorporates: - * Constant: '/AUTO' - * Constant: '/Constant' - * Constant: '/Constant1' - * DataStoreRead: '/Data Store Read' - * DataStoreRead: '/Data Store Read1' - * Logic: '/AND' - * RelationalOperator: '/Relational Operator' - * RelationalOperator: '/Relational Operator2' + /* Switch: '/Switch' incorporates: + * Constant: '/AUTO' + * Constant: '/Constant' + * Constant: '/Constant1' + * DataStoreRead: '/Data Store Read' + * DataStoreRead: '/Data Store Read1' + * Logic: '/AND' + * RelationalOperator: '/Relational Operator' + * RelationalOperator: '/Relational Operator2' */ if ((*rtd_ECT < rtb_out_p2) && (*rtd_MODE_DRIVER == 1.0)) { *rty_step1 = 0; @@ -2955,37 +3134,37 @@ void Level4(int8_t *rty_step1, const uint16_t *rtd_ECT, const uint8_t *rtd_LEVEL *rty_step1 = -1; } - /* End of Switch: '/Switch' */ + /* End of Switch: '/Switch' */ } /* * Output and update for action system: - * '/Level 0' - * '/Level 1' - * '/Level 2' - * '/Level 0' - * '/Level 1' + * '/Level 0' + * '/Level 1' + * '/Level 2' + * '/Level 0' + * '/Level 1' */ void Level0(int8_t *rty_step) { - /* SignalConversion generated from: '/step' incorporates: - * Constant: '/Constant' + /* SignalConversion generated from: '/step' incorporates: + * Constant: '/Constant' */ *rty_step = 1; } /* * Output and update for atomic system: - * '/incar filter down' - * '/incar filter down' - * '/incar filter down' - * '/incar filter down' - * '/incar filter down' - * '/incar filter down' - * '/incar filter down' - * '/incar filter down' - * '/incar filter down' - * '/incar filter down' + * '/incar filter down' + * '/incar filter down' + * '/incar filter down' + * '/incar filter down' + * '/incar filter down' + * '/incar filter down' + * '/incar filter down' + * '/incar filter down' + * '/incar filter down' + * '/incar filter down' * ... */ void incarfilterdown(uint8_t rtu_LVL, uint8_t *rty_out) @@ -3003,16 +3182,16 @@ void incarfilterdown(uint8_t rtu_LVL, uint8_t *rty_out) /* * Output and update for atomic system: - * '/incar filter up' - * '/incar filter up' - * '/incar filter up' - * '/incar filter up' - * '/incar filter up' - * '/incar filter up' - * '/incar filter up' - * '/incar filter up' - * '/incar filter up' - * '/incar filter up' + * '/incar filter up' + * '/incar filter up' + * '/incar filter up' + * '/incar filter up' + * '/incar filter up' + * '/incar filter up' + * '/incar filter up' + * '/incar filter up' + * '/incar filter up' + * '/incar filter up' * ... */ void incarfilterup(uint8_t rtu_LVL, uint8_t *rty_out) @@ -3030,8 +3209,8 @@ void incarfilterup(uint8_t rtu_LVL, uint8_t *rty_out) /* * Output and update for atomic system: - * '/g_assSTART_COOLANT_STEP0_TO_1 ' - * '/g_assSTART_COOLANT_STEP0_TO_1 ' + * '/g_assSTART_COOLANT_STEP0_TO_1 ' + * '/g_assSTART_COOLANT_STEP0_TO_1 ' */ void g_assSTART_COOLANT_STEP0_TO_1_h(uint8_t rtu_LVL, int16_t *rty_out) { @@ -3057,11 +3236,11 @@ void g_assSTART_COOLANT_STEP0_TO_1_h(uint8_t rtu_LVL, int16_t *rty_out) /* * Output and update for atomic system: - * '/3 way valve status' - * '/3 way valve status' - * '/3 way valve status' - * '/3 way valve status' - * '/3 way valve status' + * '/3 way valve status' + * '/3 way valve status' + * '/3 way valve status' + * '/3 way valve status' + * '/3 way valve status' */ void uwayvalvestatus(uint8_t rtu_LVL, uint8_t *rty_out) { @@ -3078,9 +3257,9 @@ void uwayvalvestatus(uint8_t rtu_LVL, uint8_t *rty_out) /* * Output and update for atomic system: - * '/Dtg_FrontLower_X' - * '/Dtg_FrontLower_X' - * '/Dtg_FrontLower_X' + * '/Dtg_FrontLower_X' + * '/Dtg_FrontLower_X' + * '/Dtg_FrontLower_X' */ void Dtg_FrontLower_X(uint8_t rtu_LVL, uint8_t *rty_out) { @@ -3097,9 +3276,9 @@ void Dtg_FrontLower_X(uint8_t rtu_LVL, uint8_t *rty_out) /* * Output and update for atomic system: - * '/Dtg_FrontUpper_X' - * '/Dtg_FrontUpper_X' - * '/Dtg_FrontUpper_X' + * '/Dtg_FrontUpper_X' + * '/Dtg_FrontUpper_X' + * '/Dtg_FrontUpper_X' */ void Dtg_FrontUpper_X(uint8_t rtu_LVL, uint8_t *rty_out) { @@ -3116,11 +3295,11 @@ void Dtg_FrontUpper_X(uint8_t rtu_LVL, uint8_t *rty_out) /* * Output and update for atomic system: - * '/Incar temp goto from step 1 to step 2 ' - * '/Incar temp goto from step 1 to step 2 ' - * '/Incar temp goto from step 1 to step 2 ' - * '/Incar temp goto from step 1 to step 2 ' - * '/Incar temp goto from step 1 to step 2 ' + * '/Incar temp goto from step 1 to step 2 ' + * '/Incar temp goto from step 1 to step 2 ' + * '/Incar temp goto from step 1 to step 2 ' + * '/Incar temp goto from step 1 to step 2 ' + * '/Incar temp goto from step 1 to step 2 ' */ void Incartempgotofromstep1tostep2(uint8_t rtu_LVL, int16_t *rty_out) { @@ -3137,8 +3316,8 @@ void Incartempgotofromstep1tostep2(uint8_t rtu_LVL, int16_t *rty_out) /* * Output and update for atomic system: - * '/blower FR' - * '/blower FR' + * '/blower FR' + * '/blower FR' */ void blowerFR(uint8_t rtu_LVL, uint16_t *rty_out) { @@ -3155,11 +3334,11 @@ void blowerFR(uint8_t rtu_LVL, uint16_t *rty_out) /* * Output and update for atomic system: - * '/mode FR step 1' - * '/mode FR step 1' - * '/mode FR step 1' - * '/mode FR step 1' - * '/mode FR step 1' + * '/mode FR step 1' + * '/mode FR step 1' + * '/mode FR step 1' + * '/mode FR step 1' + * '/mode FR step 1' */ void modeFRstep1(uint8_t rtu_LVL, uint8_t *rty_out) { @@ -3176,11 +3355,11 @@ void modeFRstep1(uint8_t rtu_LVL, uint8_t *rty_out) /* * Output and update for atomic system: - * '/window heating' - * '/window heating' - * '/window heating' - * '/window heating' - * '/window heating' + * '/window heating' + * '/window heating' + * '/window heating' + * '/window heating' + * '/window heating' */ void windowheating(uint8_t rtu_LVL, uint8_t *rty_out) { @@ -3197,10 +3376,10 @@ void windowheating(uint8_t rtu_LVL, uint8_t *rty_out) /* * Output and update for atomic system: - * '/Time goto from step 1 to step 2 ' - * '/Time goto from step 1 to step 2 ' - * '/Time goto from step 1 to step 2 ' - * '/Time goto from step 1 to step 2 ' + * '/Time goto from step 1 to step 2 ' + * '/Time goto from step 1 to step 2 ' + * '/Time goto from step 1 to step 2 ' + * '/Time goto from step 1 to step 2 ' */ void Timegotofromstep1tostep2(uint8_t rtu_LVL, int16_t *rty_out) { @@ -3223,9 +3402,9 @@ void Timegotofromstep1tostep2(uint8_t rtu_LVL, int16_t *rty_out) /* * Output and update for atomic system: - * '/ECT min max' - * '/ECT min max' - * '/ECT min max' + * '/ECT min max' + * '/ECT min max' + * '/ECT min max' */ void ECTminmax(uint8_t rtu_LVL, int16_t rty_out[2]) { @@ -3254,9 +3433,9 @@ void ECTminmax(uint8_t rtu_LVL, int16_t rty_out[2]) /* * Output and update for atomic system: - * '/blower min max' - * '/blower min max' - * '/blower min max' + * '/blower min max' + * '/blower min max' + * '/blower min max' */ void blowerminmax(uint8_t rtu_LVL, uint16_t rty_out[2]) { @@ -3276,8 +3455,8 @@ void blowerminmax(uint8_t rtu_LVL, uint16_t rty_out[2]) /* * Output and update for action system: - * '/Level 4' - * '/Level 5' + * '/Level 4' + * '/Level 5' */ void Level4_c(int8_t *rty_step, uint16_t *rtd_Blower_FL, uint16_t *rtd_Blower_FR, uint8_t *rtd_Dtg_FLL, uint8_t *rtd_Dtg_FLR, uint8_t *rtd_Dtg_FUL, @@ -3291,74 +3470,74 @@ void Level4_c(int8_t *rty_step, uint16_t *rtd_Blower_FL, uint16_t *rtd_Blower_FR { int32_t tmp; int16_t rtb_out_jl[2]; - int16_t rtb_out_ff3; - int16_t rtb_out_mh; + int16_t rtb_out_nl; + int16_t rtb_out_pe; uint16_t rtb_out_nm[2]; uint8_t rtb_out_fa; bool rtb_Equal_b; bool rtb_RelationalOperator1_mub; - /* DataStoreWrite: '/Data Store Write8' incorporates: - * DataStoreRead: '/Data Store Read10' - * MATLAB Function: '/3 way valve status' + /* DataStoreWrite: '/Data Store Write8' incorporates: + * DataStoreRead: '/Data Store Read10' + * MATLAB Function: '/3 way valve status' */ uwayvalvestatus(*rtd_LEVEL, rtd_Valve_3_way); - /* DataStoreWrite: '/Data Store Write' incorporates: - * DataStoreRead: '/Data Store Read1' - * MATLAB Function: '/incar filter up' + /* DataStoreWrite: '/Data Store Write' incorporates: + * DataStoreRead: '/Data Store Read1' + * MATLAB Function: '/incar filter up' */ incarfilterup(*rtd_LEVEL, rtd_Incar_filter_up_value); - /* DataStoreWrite: '/Data Store Write1' incorporates: - * DataStoreRead: '/Data Store Read2' - * MATLAB Function: '/incar filter down' + /* DataStoreWrite: '/Data Store Write1' incorporates: + * DataStoreRead: '/Data Store Read2' + * MATLAB Function: '/incar filter down' */ incarfilterdown(*rtd_LEVEL, rtd_Incar_filter_down_value); - /* MATLAB Function: '/mode FR step 1' incorporates: - * DataStoreRead: '/Data Store Read5' + /* MATLAB Function: '/mode FR step 1' incorporates: + * DataStoreRead: '/Data Store Read5' */ modeFRstep1(*rtd_LEVEL, &rtb_out_fa); - /* DataStoreWrite: '/Data Store Write2' */ + /* DataStoreWrite: '/Data Store Write2' */ *rtd_Mode_FR = rtb_out_fa; - /* DataStoreWrite: '/Data Store Write3' */ + /* DataStoreWrite: '/Data Store Write3' */ *rtd_Mode_FL = rtb_out_fa; - /* MATLAB Function: '/window heating' incorporates: - * DataStoreRead: '/Data Store Read6' + /* MATLAB Function: '/window heating' incorporates: + * DataStoreRead: '/Data Store Read6' */ windowheating(*rtd_LEVEL, &rtb_out_fa); - /* DataStoreWrite: '/Data Store Write4' */ + /* DataStoreWrite: '/Data Store Write4' */ *rtd_El_window_heating = rtb_out_fa; - /* MATLAB Function: '/blower min max' incorporates: - * DataStoreRead: '/Data Store Read7' + /* MATLAB Function: '/blower min max' incorporates: + * DataStoreRead: '/Data Store Read7' */ blowerminmax(*rtd_LEVEL, rtb_out_nm); - /* MATLAB Function: '/ECT min max' incorporates: - * DataStoreRead: '/Data Store Read7' + /* MATLAB Function: '/ECT min max' incorporates: + * DataStoreRead: '/Data Store Read7' */ ECTminmax(*rtd_LEVEL, rtb_out_jl); - /* Lookup_n-D: '/blower для текущего ECT' incorporates: - * DataStoreRead: '/engine coolant temp' - * DataStoreWrite: '/Data Store Write5' + /* Lookup_n-D: '/blower для текущего ECT' incorporates: + * DataStoreRead: '/engine coolant temp' + * DataStoreWrite: '/Data Store Write5' */ *rtd_Blower_FR = look1_iu16bs16lu64n32_binlcse(*rtd_ECT, rtb_out_jl, rtb_out_nm, 1U); - /* DataStoreWrite: '/Data Store Write6' incorporates: - * DataStoreWrite: '/Data Store Write5' + /* DataStoreWrite: '/Data Store Write6' incorporates: + * DataStoreWrite: '/Data Store Write5' */ *rtd_Blower_FL = *rtd_Blower_FR; - /* MATLAB Function: '/Dtg_FrontUpper_X' incorporates: - * DataStoreRead: '/Data Store Read8' + /* MATLAB Function: '/Dtg_FrontUpper_X' incorporates: + * DataStoreRead: '/Data Store Read8' */ /* : out = g_aucSTART_DUCT_TGT_STEP2_FX_U(LVL + 1); */ tmp = (int32_t)(*rtd_LEVEL + 1U); @@ -3368,16 +3547,16 @@ void Level4_c(int8_t *rty_step, uint16_t *rtd_Blower_FL, uint16_t *rtd_Blower_FR rtb_out_fa = g_aucSTART_DUCT_TGT_STEP2_FX_U[tmp - 1]; - /* DataStoreWrite: '/Data Store Write10' */ + /* DataStoreWrite: '/Data Store Write10' */ *rtd_Dtg_FUR = rtb_out_fa; - /* DataStoreWrite: '/Data Store Write11' */ + /* DataStoreWrite: '/Data Store Write11' */ *rtd_Dtg_FUL = rtb_out_fa; - /* MATLAB Function: '/Dtg_FrontLower_X' incorporates: - * DataStoreRead: '/Data Store Read8' - * DataStoreRead: '/Data Store Read9' - * MATLAB Function: '/Dtg_FrontUpper_X' + /* MATLAB Function: '/Dtg_FrontLower_X' incorporates: + * DataStoreRead: '/Data Store Read8' + * DataStoreRead: '/Data Store Read9' + * MATLAB Function: '/Dtg_FrontUpper_X' */ /* : out = g_aucSTART_DUCT_TGT_STEP2_FX_L(LVL + 1); */ tmp = (int32_t)(*rtd_LEVEL + 1U); @@ -3387,82 +3566,82 @@ void Level4_c(int8_t *rty_step, uint16_t *rtd_Blower_FL, uint16_t *rtd_Blower_FR rtb_out_fa = g_aucSTART_DUCT_TGT_STEP2_FX_L[tmp - 1]; - /* End of MATLAB Function: '/Dtg_FrontLower_X' */ + /* End of MATLAB Function: '/Dtg_FrontLower_X' */ - /* DataStoreWrite: '/Data Store Write12' */ + /* DataStoreWrite: '/Data Store Write12' */ *rtd_Dtg_FLR = rtb_out_fa; - /* DataStoreWrite: '/Data Store Write13' */ + /* DataStoreWrite: '/Data Store Write13' */ *rtd_Dtg_FLL = rtb_out_fa; - /* DataStoreWrite: '/Data Store Write7' incorporates: - * Constant: '/Recirc logic Partial REC' + /* DataStoreWrite: '/Data Store Write7' incorporates: + * Constant: '/Recirc logic Partial REC' */ *rtd_Recirculation = 1.0; - /* RelationalOperator: '/Equal' incorporates: - * DataStoreRead: '/current step' + /* RelationalOperator: '/Equal' incorporates: + * DataStoreRead: '/current step' */ rtb_Equal_b = (*rtd_step_start_controle_front == 1); - /* MATLAB Function: '/Incar temp goto from step 1 to step 2 ' incorporates: - * DataStoreRead: '/Data Store Read3' + /* MATLAB Function: '/Incar temp goto from step 1 to step 2 ' incorporates: + * DataStoreRead: '/Data Store Read3' */ - Incartempgotofromstep1tostep2(*rtd_LEVEL, &rtb_out_ff3); + Incartempgotofromstep1tostep2(*rtd_LEVEL, &rtb_out_nl); - /* MATLAB Function: '/Time goto from step 1 to step 2 ' incorporates: - * DataStoreRead: '/Data Store Read4' + /* MATLAB Function: '/Time goto from step 1 to step 2 ' incorporates: + * DataStoreRead: '/Data Store Read4' */ - Timegotofromstep1tostep2(*rtd_LEVEL, &rtb_out_mh); + Timegotofromstep1tostep2(*rtd_LEVEL, &rtb_out_pe); - /* RelationalOperator: '/Relational Operator1' incorporates: - * DataStoreRead: '/Data Store Read4' - * Gain: '/из сек в мс' - * Sum: '/Subtract' - * UnitDelay: '/t_start_delay_private ' + /* RelationalOperator: '/Relational Operator1' incorporates: + * DataStoreRead: '/Data Store Read4' + * Gain: '/из сек в мс' + * Sum: '/Subtract' + * UnitDelay: '/t_start_delay_private ' */ rtb_RelationalOperator1_mub = (*rtd_t_now - - localDW->t_start_delay_private_DSTATE > (uint32_t)(1000 * rtb_out_mh)); + localDW->t_start_delay_private_DSTATE > (uint32_t)(1000 * rtb_out_pe)); - /* Switch: '/Switch' incorporates: - * DataStoreRead: '/Data Store Read4' - * Logic: '/Logical Operator3' - * Logic: '/Logical Operator4' - * UnitDelay: '/Cond_prev_private ' - * UnitDelay: '/t_start_delay_private ' + /* Switch: '/Switch' incorporates: + * DataStoreRead: '/Data Store Read4' + * Logic: '/Logical Operator3' + * Logic: '/Logical Operator4' + * UnitDelay: '/Cond_prev_private ' + * UnitDelay: '/t_start_delay_private ' */ if (rtb_Equal_b && (!localDW->Cond_prev_private_DSTATE)) { localDW->t_start_delay_private_DSTATE = *rtd_t_now; } - /* End of Switch: '/Switch' */ + /* End of Switch: '/Switch' */ - /* Switch: '/Switch' incorporates: - * Constant: '/go to next step' - * Constant: '/stay at step 1' - * DataStoreRead: '/incar temp' - * Logic: '/Logical Operator' - * RelationalOperator: '/Relational Operator' + /* Switch: '/Switch' incorporates: + * Constant: '/go to next step' + * Constant: '/stay at step 1' + * DataStoreRead: '/incar temp' + * Logic: '/Logical Operator' + * RelationalOperator: '/Relational Operator' */ - if ((*rtd_Incar_FL > rtb_out_ff3) || rtb_RelationalOperator1_mub) { + if ((*rtd_Incar_FL > rtb_out_nl) || rtb_RelationalOperator1_mub) { *rty_step = 2; } else { *rty_step = 1; } - /* End of Switch: '/Switch' */ + /* End of Switch: '/Switch' */ - /* Update for UnitDelay: '/Cond_prev_private ' */ + /* Update for UnitDelay: '/Cond_prev_private ' */ localDW->Cond_prev_private_DSTATE = rtb_Equal_b; } /* * Output and update for atomic system: - * '/3 way valve status' - * '/3 way valve status' - * '/3 way valve status' - * '/3 way valve status' - * '/3 way valve status' + * '/3 way valve status' + * '/3 way valve status' + * '/3 way valve status' + * '/3 way valve status' + * '/3 way valve status' */ void uwayvalvestatus_a(uint8_t rtu_LVL, uint8_t *rty_out) { @@ -3485,11 +3664,11 @@ void uwayvalvestatus_a(uint8_t rtu_LVL, uint8_t *rty_out) /* * Output and update for atomic system: - * '/time for step' - * '/time for step' - * '/time for step' - * '/time for step' - * '/time for step' + * '/time for step' + * '/time for step' + * '/time for step' + * '/time for step' + * '/time for step' */ void timeforstep(uint8_t rtu_LVL, uint8_t *rty_out) { @@ -3512,11 +3691,11 @@ void timeforstep(uint8_t rtu_LVL, uint8_t *rty_out) /* * Output and update for atomic system: - * '/time for step' - * '/time for step' - * '/time for step' - * '/time for step' - * '/time for step' + * '/time for step' + * '/time for step' + * '/time for step' + * '/time for step' + * '/time for step' */ void timeforstep_j(uint8_t rtu_LVL, uint8_t *rty_out) { @@ -3539,11 +3718,11 @@ void timeforstep_j(uint8_t rtu_LVL, uint8_t *rty_out) /* * Output and update for atomic system: - * '/Time goto from step 2 to step 3 ' - * '/Time goto from step 2 to step 3 ' - * '/Time goto from step 2 to step 3 ' - * '/Time goto from step 2 to step 3 ' - * '/Time goto from step 2 to step 3 ' + * '/Time goto from step 2 to step 3 ' + * '/Time goto from step 2 to step 3 ' + * '/Time goto from step 2 to step 3 ' + * '/Time goto from step 2 to step 3 ' + * '/Time goto from step 2 to step 3 ' */ void Timegotofromstep2tostep3(uint8_t rtu_LVL, int16_t *rty_out) { @@ -3566,11 +3745,11 @@ void Timegotofromstep2tostep3(uint8_t rtu_LVL, int16_t *rty_out) /* * Output and update for atomic system: - * '/blower step' - * '/blower step' - * '/blower step' - * '/blower step' - * '/blower step' + * '/blower step' + * '/blower step' + * '/blower step' + * '/blower step' + * '/blower step' */ void blowerstep(uint8_t rtu_LVL, uint16_t *rty_out) { @@ -3587,11 +3766,11 @@ void blowerstep(uint8_t rtu_LVL, uint16_t *rty_out) /* * Output and update for atomic system: - * '/blower time for step' - * '/blower time for step' - * '/blower time for step' - * '/blower time for step' - * '/blower time for step' + * '/blower time for step' + * '/blower time for step' + * '/blower time for step' + * '/blower time for step' + * '/blower time for step' */ void blowertimeforstep(uint8_t rtu_LVL, uint16_t *rty_out) { @@ -3614,11 +3793,11 @@ void blowertimeforstep(uint8_t rtu_LVL, uint16_t *rty_out) /* * Output and update for atomic system: - * '/step' - * '/step' - * '/step' - * '/step' - * '/step' + * '/step' + * '/step' + * '/step' + * '/step' + * '/step' */ void step_j(uint8_t rtu_LVL, uint8_t *rty_out) { @@ -3635,11 +3814,11 @@ void step_j(uint8_t rtu_LVL, uint8_t *rty_out) /* * Output and update for atomic system: - * '/time for step' - * '/time for step' - * '/time for step' - * '/time for step' - * '/time for step' + * '/time for step' + * '/time for step' + * '/time for step' + * '/time for step' + * '/time for step' */ void timeforstep_g(uint8_t rtu_LVL, uint8_t *rty_out) { @@ -3662,10 +3841,10 @@ void timeforstep_g(uint8_t rtu_LVL, uint8_t *rty_out) /* * Output and update for atomic system: - * '/window heating' - * '/window heating' - * '/window heating' - * '/window heating' + * '/window heating' + * '/window heating' + * '/window heating' + * '/window heating' */ void windowheating_k(uint8_t rtu_LVL, uint8_t *rty_out) { @@ -3688,9 +3867,9 @@ void windowheating_k(uint8_t rtu_LVL, uint8_t *rty_out) /* * Output and update for atomic system: - * '/autodemist (autodefog)' - * '/autodemist (autodefog)' - * '/autodemist (autodefog)' + * '/autodemist (autodefog)' + * '/autodemist (autodefog)' + * '/autodemist (autodefog)' */ void autodemistautodefog(uint8_t rtu_LVL, uint8_t *rty_out) { @@ -3707,8 +3886,8 @@ void autodemistautodefog(uint8_t rtu_LVL, uint8_t *rty_out) /* * Output and update for action system: - * '/Level 3' - * '/Level 4' + * '/Level 3' + * '/Level 4' */ void Level3(int8_t *rty_step, uint8_t *rtd_Autodefog, uint16_t *rtd_Blower_FL, uint16_t *rtd_Blower_FR, const uint16_t *rtd_Blower_logic_FL, @@ -3724,325 +3903,325 @@ void Level3(int8_t *rty_step, uint8_t *rtd_Autodefog, uint16_t *rtd_Blower_FL, { int32_t tmp; int16_t rtb_out_cw; - uint16_t rtb_out_as; uint16_t rtb_out_gqg; - uint8_t rtb_out_ir5; - uint8_t rtb_out_jj; - uint8_t rtb_out_pr; + uint16_t rtb_out_ov4; + uint8_t rtb_out_ac; + uint8_t rtb_out_ln5; + uint8_t rtb_out_oq; bool rtb_Cond_prev_private_gh; bool rtb_RelationalOperator1_df; - /* DataStoreWrite: '/Data Store Write8' incorporates: - * DataStoreRead: '/Data Store Read10' - * MATLAB Function: '/3 way valve status' + /* DataStoreWrite: '/Data Store Write8' incorporates: + * DataStoreRead: '/Data Store Read10' + * MATLAB Function: '/3 way valve status' */ uwayvalvestatus_a(*rtd_LEVEL, rtd_Valve_3_way); - /* MATLAB Function: '/step' incorporates: - * DataStoreRead: '/Data Store Read9' + /* MATLAB Function: '/step' incorporates: + * DataStoreRead: '/Data Store Read9' */ - Dtg_FrontLower_X(*rtd_LEVEL, &rtb_out_jj); + Dtg_FrontLower_X(*rtd_LEVEL, &rtb_out_oq); - /* MATLAB Function: '/time for step' incorporates: - * DataStoreRead: '/Data Store Read9' + /* MATLAB Function: '/time for step' incorporates: + * DataStoreRead: '/Data Store Read9' */ - timeforstep(*rtd_LEVEL, &rtb_out_ir5); + timeforstep(*rtd_LEVEL, &rtb_out_ac); - /* Switch: '/Switch' incorporates: - * Constant: '/Constant' - * Constant: '/epsilon' - * DataStoreRead: '/Текущее значение blower ' - * DataStoreRead: '/значение auto (в соответствии с логикой)' - * DataStoreRead: '/текущее время в мс' - * DataStoreWrite: '/Data Store Write12' - * Product: '/Product1' - * Product: '/change rate (dtg//sec)' - * Product: '/скорость в мс' - * Product: '/шаг изменения' - * RelationalOperator: '/Relational Operator' - * RelationalOperator: '/Relational Operator' - * Sum: '/Add' - * Sum: '/Add' - * Sum: '/Subtract' - * Switch: '/Switch' - * UnitDelay: '/Unit Delay' + /* Switch: '/Switch' incorporates: + * Constant: '/Constant' + * Constant: '/epsilon' + * DataStoreRead: '/Текущее значение blower ' + * DataStoreRead: '/значение auto (в соответствии с логикой)' + * DataStoreRead: '/текущее время в мс' + * DataStoreWrite: '/Data Store Write12' + * Product: '/Product1' + * Product: '/change rate (dtg//sec)' + * Product: '/скорость в мс' + * Product: '/шаг изменения' + * RelationalOperator: '/Relational Operator' + * RelationalOperator: '/Relational Operator' + * Sum: '/Add' + * Sum: '/Add' + * Sum: '/Subtract' + * Switch: '/Switch' + * UnitDelay: '/Unit Delay' */ if ((uint8_t)(*rtd_Dtg_FLL - *rtd_Dtg_logic_FLL) <= 0.01) { *rtd_Dtg_FLR = *rtd_Dtg_logic_FLL; } else { if (*rtd_Dtg_FLL <= *rtd_Dtg_logic_FLL) { - /* Switch: '/Switch' incorporates: - * Constant: '/Constant' + /* Switch: '/Switch' incorporates: + * Constant: '/Constant' */ tmp = 1; } else { - /* Switch: '/Switch' incorporates: - * Constant: '/Constant1' + /* Switch: '/Switch' incorporates: + * Constant: '/Constant1' */ tmp = -1; } - *rtd_Dtg_FLR = (uint8_t)((double)rtb_out_jj / (double)rtb_out_ir5 / 1000.0 * + *rtd_Dtg_FLR = (uint8_t)((double)rtb_out_oq / (double)rtb_out_ac / 1000.0 * (double)(*rtd_t_now - localDW->UnitDelay_DSTATE) * (double)tmp + (double)* rtd_Dtg_FLL); } - /* End of Switch: '/Switch' */ + /* End of Switch: '/Switch' */ - /* DataStoreWrite: '/Data Store Write13' incorporates: - * DataStoreWrite: '/Data Store Write12' + /* DataStoreWrite: '/Data Store Write13' incorporates: + * DataStoreWrite: '/Data Store Write12' */ *rtd_Dtg_FLL = *rtd_Dtg_FLR; - /* MATLAB Function: '/step' incorporates: - * DataStoreRead: '/Data Store Read8' + /* MATLAB Function: '/step' incorporates: + * DataStoreRead: '/Data Store Read8' */ - Dtg_FrontUpper_X(*rtd_LEVEL, &rtb_out_jj); + Dtg_FrontUpper_X(*rtd_LEVEL, &rtb_out_oq); - /* MATLAB Function: '/time for step' incorporates: - * DataStoreRead: '/Data Store Read8' + /* MATLAB Function: '/time for step' incorporates: + * DataStoreRead: '/Data Store Read8' */ - timeforstep_j(*rtd_LEVEL, &rtb_out_ir5); + timeforstep_j(*rtd_LEVEL, &rtb_out_ac); - /* Switch: '/Switch' incorporates: - * Constant: '/Constant' - * Constant: '/epsilon' - * DataStoreRead: '/Текущее значение blower ' - * DataStoreRead: '/значение auto (в соответствии с логикой)' - * DataStoreRead: '/текущее время в мс' - * DataStoreWrite: '/Data Store Write10' - * Product: '/Product1' - * Product: '/change rate (dtg//sec)' - * Product: '/скорость в мс' - * Product: '/шаг изменения' - * RelationalOperator: '/Relational Operator' - * RelationalOperator: '/Relational Operator' - * Sum: '/Add' - * Sum: '/Add' - * Sum: '/Subtract' - * Switch: '/Switch' - * UnitDelay: '/Unit Delay' + /* Switch: '/Switch' incorporates: + * Constant: '/Constant' + * Constant: '/epsilon' + * DataStoreRead: '/Текущее значение blower ' + * DataStoreRead: '/значение auto (в соответствии с логикой)' + * DataStoreRead: '/текущее время в мс' + * DataStoreWrite: '/Data Store Write10' + * Product: '/Product1' + * Product: '/change rate (dtg//sec)' + * Product: '/скорость в мс' + * Product: '/шаг изменения' + * RelationalOperator: '/Relational Operator' + * RelationalOperator: '/Relational Operator' + * Sum: '/Add' + * Sum: '/Add' + * Sum: '/Subtract' + * Switch: '/Switch' + * UnitDelay: '/Unit Delay' */ if ((uint8_t)(*rtd_Dtg_FUL - *rtd_Dtg_logic_FUL) <= 0.01) { *rtd_Dtg_FUR = *rtd_Dtg_logic_FUL; } else { if (*rtd_Dtg_FUL <= *rtd_Dtg_logic_FUL) { - /* Switch: '/Switch' incorporates: - * Constant: '/Constant' + /* Switch: '/Switch' incorporates: + * Constant: '/Constant' */ tmp = 1; } else { - /* Switch: '/Switch' incorporates: - * Constant: '/Constant1' + /* Switch: '/Switch' incorporates: + * Constant: '/Constant1' */ tmp = -1; } - *rtd_Dtg_FUR = (uint8_t)((double)rtb_out_jj / (double)rtb_out_ir5 / 1000.0 * + *rtd_Dtg_FUR = (uint8_t)((double)rtb_out_oq / (double)rtb_out_ac / 1000.0 * (double)(*rtd_t_now - localDW->UnitDelay_DSTATE_i) * (double)tmp + (double)* rtd_Dtg_FUL); } - /* End of Switch: '/Switch' */ + /* End of Switch: '/Switch' */ - /* DataStoreWrite: '/Data Store Write11' incorporates: - * DataStoreWrite: '/Data Store Write10' + /* DataStoreWrite: '/Data Store Write11' incorporates: + * DataStoreWrite: '/Data Store Write10' */ *rtd_Dtg_FUL = *rtd_Dtg_FUR; - /* DataStoreWrite: '/Data Store Write' incorporates: - * DataStoreRead: '/Data Store Read1' - * MATLAB Function: '/incar filter up' + /* DataStoreWrite: '/Data Store Write' incorporates: + * DataStoreRead: '/Data Store Read1' + * MATLAB Function: '/incar filter up' */ incarfilterup(*rtd_LEVEL, rtd_Incar_filter_up_value); - /* DataStoreWrite: '/Data Store Write1' incorporates: - * DataStoreRead: '/Data Store Read2' - * MATLAB Function: '/incar filter down' + /* DataStoreWrite: '/Data Store Write1' incorporates: + * DataStoreRead: '/Data Store Read2' + * MATLAB Function: '/incar filter down' */ incarfilterdown(*rtd_LEVEL, rtd_Incar_filter_down_value); - /* DataStoreWrite: '/Data Store Write14' incorporates: - * DataStoreRead: '/Data Store Read3' - * MATLAB Function: '/autodemist (autodefog)' + /* DataStoreWrite: '/Data Store Write14' incorporates: + * DataStoreRead: '/Data Store Read3' + * MATLAB Function: '/autodemist (autodefog)' */ autodemistautodefog(*rtd_LEVEL, rtd_Autodefog); - /* Sum: '/Add' incorporates: - * DataStoreRead: '/Текущее значение blower ' - * DataStoreRead: '/значение auto (в соответствии с логикой)' + /* Sum: '/Add' incorporates: + * DataStoreRead: '/Текущее значение blower ' + * DataStoreRead: '/значение auto (в соответствии с логикой)' */ - rtb_out_jj = (uint8_t)(*rtd_Mode_FL - *rtd_Mode_logic_FL); + rtb_out_oq = (uint8_t)(*rtd_Mode_FL - *rtd_Mode_logic_FL); - /* MATLAB Function: '/step' incorporates: - * DataStoreRead: '/Data Store Read5' + /* MATLAB Function: '/step' incorporates: + * DataStoreRead: '/Data Store Read5' */ - step_j(*rtd_LEVEL, &rtb_out_ir5); + step_j(*rtd_LEVEL, &rtb_out_ac); - /* MATLAB Function: '/time for step' incorporates: - * DataStoreRead: '/Data Store Read5' + /* MATLAB Function: '/time for step' incorporates: + * DataStoreRead: '/Data Store Read5' */ - timeforstep_g(*rtd_LEVEL, &rtb_out_pr); + timeforstep_g(*rtd_LEVEL, &rtb_out_ln5); - /* Switch: '/Switch' incorporates: - * Constant: '/Constant' - * Constant: '/epsilon' - * DataStoreRead: '/Текущее значение blower ' - * DataStoreRead: '/значение auto (в соответствии с логикой)' - * DataStoreRead: '/текущее время в мс' - * DataStoreWrite: '/Data Store Write2' - * Product: '/Product1' - * Product: '/change rate (step//sec)' - * Product: '/скорость в мс' - * Product: '/шаг изменения' - * RelationalOperator: '/Relational Operator' - * RelationalOperator: '/Relational Operator' - * Sum: '/Add' - * Sum: '/Subtract' - * Switch: '/Switch' - * UnitDelay: '/Unit Delay' + /* Switch: '/Switch' incorporates: + * Constant: '/Constant' + * Constant: '/epsilon' + * DataStoreRead: '/Текущее значение blower ' + * DataStoreRead: '/значение auto (в соответствии с логикой)' + * DataStoreRead: '/текущее время в мс' + * DataStoreWrite: '/Data Store Write2' + * Product: '/Product1' + * Product: '/change rate (step//sec)' + * Product: '/скорость в мс' + * Product: '/шаг изменения' + * RelationalOperator: '/Relational Operator' + * RelationalOperator: '/Relational Operator' + * Sum: '/Add' + * Sum: '/Subtract' + * Switch: '/Switch' + * UnitDelay: '/Unit Delay' */ - if (rtb_out_jj <= 0.01) { + if (rtb_out_oq <= 0.01) { *rtd_Mode_FR = *rtd_Mode_logic_FL; } else { if (*rtd_Mode_FL <= *rtd_Mode_logic_FL) { - /* Switch: '/Switch' incorporates: - * Constant: '/Constant' + /* Switch: '/Switch' incorporates: + * Constant: '/Constant' */ tmp = 1; } else { - /* Switch: '/Switch' incorporates: - * Constant: '/Constant1' + /* Switch: '/Switch' incorporates: + * Constant: '/Constant1' */ tmp = -1; } - *rtd_Mode_FR = (uint8_t)((double)rtb_out_ir5 / (double)rtb_out_pr / 1000.0 * + *rtd_Mode_FR = (uint8_t)((double)rtb_out_ac / (double)rtb_out_ln5 / 1000.0 * (double)(*rtd_t_now - localDW->UnitDelay_DSTATE_j) * (double)tmp + (double)* rtd_Mode_FL); } - /* End of Switch: '/Switch' */ + /* End of Switch: '/Switch' */ - /* DataStoreWrite: '/Data Store Write3' incorporates: - * DataStoreWrite: '/Data Store Write2' + /* DataStoreWrite: '/Data Store Write3' incorporates: + * DataStoreWrite: '/Data Store Write2' */ *rtd_Mode_FL = *rtd_Mode_FR; - /* MATLAB Function: '/window heating' incorporates: - * DataStoreRead: '/Data Store Read6' + /* MATLAB Function: '/window heating' incorporates: + * DataStoreRead: '/Data Store Read6' */ - windowheating_k(*rtd_LEVEL, &rtb_out_jj); + windowheating_k(*rtd_LEVEL, &rtb_out_oq); - /* DataStoreWrite: '/Data Store Write4' */ - *rtd_El_window_heating = rtb_out_jj; + /* DataStoreWrite: '/Data Store Write4' */ + *rtd_El_window_heating = rtb_out_oq; - /* Sum: '/Add' incorporates: - * DataStoreRead: '/Текущее значение blower ' - * DataStoreRead: '/значение auto (в соответствии с логикой)' + /* Sum: '/Add' incorporates: + * DataStoreRead: '/Текущее значение blower ' + * DataStoreRead: '/значение auto (в соответствии с логикой)' */ - rtb_out_as = (uint16_t)(*rtd_Blower_FL - *rtd_Blower_logic_FL); + rtb_out_ov4 = (uint16_t)(*rtd_Blower_FL - *rtd_Blower_logic_FL); - /* RelationalOperator: '/Relational Operator' incorporates: - * Constant: '/epsilon' + /* RelationalOperator: '/Relational Operator' incorporates: + * Constant: '/epsilon' */ - rtb_Cond_prev_private_gh = (rtb_out_as <= 0.01); + rtb_Cond_prev_private_gh = (rtb_out_ov4 <= 0.01); - /* MATLAB Function: '/blower step' incorporates: - * DataStoreRead: '/Data Store Read7' + /* MATLAB Function: '/blower step' incorporates: + * DataStoreRead: '/Data Store Read7' */ blowerstep(*rtd_LEVEL, &rtb_out_gqg); - /* MATLAB Function: '/blower time for step' incorporates: - * DataStoreRead: '/Data Store Read7' + /* MATLAB Function: '/blower time for step' incorporates: + * DataStoreRead: '/Data Store Read7' */ - blowertimeforstep(*rtd_LEVEL, &rtb_out_as); + blowertimeforstep(*rtd_LEVEL, &rtb_out_ov4); - /* Switch: '/Switch' incorporates: - * Constant: '/Constant' - * DataStoreRead: '/Текущее значение blower ' - * DataStoreRead: '/значение auto (в соответствии с логикой)' - * DataStoreRead: '/текущее время в мс' - * DataStoreWrite: '/Data Store Write5' - * Product: '/Product1' - * Product: '/change rate (step//sec)' - * Product: '/скорость в мс' - * Product: '/шаг изменения' - * RelationalOperator: '/Relational Operator' - * Sum: '/Add' - * Sum: '/Subtract' - * Switch: '/Switch' - * UnitDelay: '/Unit Delay' + /* Switch: '/Switch' incorporates: + * Constant: '/Constant' + * DataStoreRead: '/Текущее значение blower ' + * DataStoreRead: '/значение auto (в соответствии с логикой)' + * DataStoreRead: '/текущее время в мс' + * DataStoreWrite: '/Data Store Write5' + * Product: '/Product1' + * Product: '/change rate (step//sec)' + * Product: '/скорость в мс' + * Product: '/шаг изменения' + * RelationalOperator: '/Relational Operator' + * Sum: '/Add' + * Sum: '/Subtract' + * Switch: '/Switch' + * UnitDelay: '/Unit Delay' */ if (rtb_Cond_prev_private_gh) { *rtd_Blower_FR = *rtd_Blower_logic_FL; } else { if (*rtd_Blower_FL <= *rtd_Blower_logic_FL) { - /* Switch: '/Switch' incorporates: - * Constant: '/Constant' + /* Switch: '/Switch' incorporates: + * Constant: '/Constant' */ tmp = 1; } else { - /* Switch: '/Switch' incorporates: - * Constant: '/Constant1' + /* Switch: '/Switch' incorporates: + * Constant: '/Constant1' */ tmp = -1; } - *rtd_Blower_FR = (uint16_t)((double)rtb_out_gqg / (double)rtb_out_as / + *rtd_Blower_FR = (uint16_t)((double)rtb_out_gqg / (double)rtb_out_ov4 / 1000.0 * (double)(*rtd_t_now - localDW->UnitDelay_DSTATE_a) * (double)tmp + (double)*rtd_Blower_FL); } - /* End of Switch: '/Switch' */ + /* End of Switch: '/Switch' */ - /* DataStoreWrite: '/Data Store Write6' incorporates: - * DataStoreWrite: '/Data Store Write5' + /* DataStoreWrite: '/Data Store Write6' incorporates: + * DataStoreWrite: '/Data Store Write5' */ *rtd_Blower_FL = *rtd_Blower_FR; - /* DataStoreWrite: '/Data Store Write7' incorporates: - * Constant: '/Recirc logic Partial REC' + /* DataStoreWrite: '/Data Store Write7' incorporates: + * Constant: '/Recirc logic Partial REC' */ *rtd_Recirculation = 1.0; - /* RelationalOperator: '/Equal' incorporates: - * DataStoreRead: '/current step' + /* RelationalOperator: '/Equal' incorporates: + * DataStoreRead: '/current step' */ rtb_Cond_prev_private_gh = (*rtd_step_start_controle_front == 2); - /* MATLAB Function: '/Time goto from step 2 to step 3 ' incorporates: - * DataStoreRead: '/Data Store Read4' + /* MATLAB Function: '/Time goto from step 2 to step 3 ' incorporates: + * DataStoreRead: '/Data Store Read4' */ Timegotofromstep2tostep3(*rtd_LEVEL, &rtb_out_cw); - /* RelationalOperator: '/Relational Operator1' incorporates: - * DataStoreRead: '/Data Store Read4' - * Gain: '/из сек в мс' - * Sum: '/Subtract' - * UnitDelay: '/t_start_delay_private ' + /* RelationalOperator: '/Relational Operator1' incorporates: + * DataStoreRead: '/Data Store Read4' + * Gain: '/из сек в мс' + * Sum: '/Subtract' + * UnitDelay: '/t_start_delay_private ' */ rtb_RelationalOperator1_df = (*rtd_t_now - localDW->t_start_delay_private_DSTATE > (uint32_t)(1000 * rtb_out_cw)); - /* Switch: '/Switch' incorporates: - * DataStoreRead: '/Data Store Read4' - * Logic: '/Logical Operator3' - * Logic: '/Logical Operator4' - * UnitDelay: '/Cond_prev_private ' - * UnitDelay: '/t_start_delay_private ' + /* Switch: '/Switch' incorporates: + * DataStoreRead: '/Data Store Read4' + * Logic: '/Logical Operator3' + * Logic: '/Logical Operator4' + * UnitDelay: '/Cond_prev_private ' + * UnitDelay: '/t_start_delay_private ' */ if (rtb_Cond_prev_private_gh && (!localDW->Cond_prev_private_DSTATE)) { localDW->t_start_delay_private_DSTATE = *rtd_t_now; } - /* End of Switch: '/Switch' */ + /* End of Switch: '/Switch' */ - /* Switch: '/Switch' incorporates: - * Constant: '/go to next step' - * Constant: '/stay at step' - * DataStoreRead: '/Data Store Read' - * Logic: '/Logical Operator' + /* Switch: '/Switch' incorporates: + * Constant: '/go to next step' + * Constant: '/stay at step' + * DataStoreRead: '/Data Store Read' + * Logic: '/Logical Operator' */ if (rtb_RelationalOperator1_df || (*rtd_HI_logic_on)) { *rty_step = 3; @@ -4050,55 +4229,55 @@ void Level3(int8_t *rty_step, uint8_t *rtd_Autodefog, uint16_t *rtd_Blower_FL, *rty_step = 2; } - /* End of Switch: '/Switch' */ + /* End of Switch: '/Switch' */ - /* Update for UnitDelay: '/Unit Delay' incorporates: - * DataStoreRead: '/текущее время в мс' + /* Update for UnitDelay: '/Unit Delay' incorporates: + * DataStoreRead: '/текущее время в мс' */ localDW->UnitDelay_DSTATE = *rtd_t_now; - /* Update for UnitDelay: '/Unit Delay' incorporates: - * DataStoreRead: '/текущее время в мс' + /* Update for UnitDelay: '/Unit Delay' incorporates: + * DataStoreRead: '/текущее время в мс' */ localDW->UnitDelay_DSTATE_i = *rtd_t_now; - /* Update for UnitDelay: '/Unit Delay' incorporates: - * DataStoreRead: '/текущее время в мс' + /* Update for UnitDelay: '/Unit Delay' incorporates: + * DataStoreRead: '/текущее время в мс' */ localDW->UnitDelay_DSTATE_j = *rtd_t_now; - /* Update for UnitDelay: '/Unit Delay' incorporates: - * DataStoreRead: '/текущее время в мс' + /* Update for UnitDelay: '/Unit Delay' incorporates: + * DataStoreRead: '/текущее время в мс' */ localDW->UnitDelay_DSTATE_a = *rtd_t_now; - /* Update for UnitDelay: '/Cond_prev_private ' */ + /* Update for UnitDelay: '/Cond_prev_private ' */ localDW->Cond_prev_private_DSTATE = rtb_Cond_prev_private_gh; } /* * Output and update for action system: - * '/Step 3 F' - * '/Step 3 R' + * '/Step 3 F' + * '/Step 3 R' */ void Step3F(int8_t *rty_step, int8_t *rtd_start_control_finished_front) { - /* DataStoreWrite: '/Data Store Write10' incorporates: - * Constant: '/True' + /* DataStoreWrite: '/Data Store Write10' incorporates: + * Constant: '/True' */ *rtd_start_control_finished_front = 1; - /* SignalConversion generated from: '/step' incorporates: - * Constant: '/Constant1' + /* SignalConversion generated from: '/step' incorporates: + * Constant: '/Constant1' */ *rty_step = 3; } /* * Output and update for atomic system: - * '/g_ausSTART_ENTER_SETTEMP' - * '/g_ausSTART_ENTER_SETTEMP' - * '/g_ausSTART_ENTER_SETTEMP' + * '/g_ausSTART_ENTER_SETTEMP' + * '/g_ausSTART_ENTER_SETTEMP' + * '/g_ausSTART_ENTER_SETTEMP' */ void g_ausSTART_ENTER_SETTEMP_b(uint8_t rtu_LVL, int16_t *rty_out) { @@ -4127,11 +4306,11 @@ void g_ausSTART_ENTER_SETTEMP_b(uint8_t rtu_LVL, int16_t *rty_out) /* * Output and update for atomic system: - * '/g_assSTART_ENTER_INCAR' - * '/g_assSTART_ENTER_INCAR' - * '/g_assSTART_ENTER_INCAR' - * '/g_assSTART_ENTER_INCAR' - * '/g_assSTART_ENTER_INCAR' + * '/g_assSTART_ENTER_INCAR' + * '/g_assSTART_ENTER_INCAR' + * '/g_assSTART_ENTER_INCAR' + * '/g_assSTART_ENTER_INCAR' + * '/g_assSTART_ENTER_INCAR' */ void g_assSTART_ENTER_INCAR_p(uint8_t rtu_LVL, int16_t *rty_out) { @@ -4154,9 +4333,9 @@ void g_assSTART_ENTER_INCAR_p(uint8_t rtu_LVL, int16_t *rty_out) /* * Output and update for atomic system: - * '/g_assSTART_ENTER_COOLANT ' - * '/g_assSTART_ENTER_COOLANT ' - * '/g_assSTART_ENTER_COOLANT ' + * '/g_assSTART_ENTER_COOLANT ' + * '/g_assSTART_ENTER_COOLANT ' + * '/g_assSTART_ENTER_COOLANT ' */ void g_assSTART_ENTER_COOLANT_e(uint8_t rtu_LVL, int16_t *rty_out) { @@ -4173,55 +4352,55 @@ void g_assSTART_ENTER_COOLANT_e(uint8_t rtu_LVL, int16_t *rty_out) /* * Output and update for action system: - * '/Level 4' - * '/Level 5' + * '/Level 4' + * '/Level 5' */ void Level4_e(int8_t *rty_step1, const uint16_t *rtd_ECT, const int16_t *rtd_Incar_RR, const uint8_t *rtd_LEVEL, const double *rtd_MODE_RR_passenger) { - int16_t rtb_out_cv; - int16_t rtb_out_jz; + int16_t rtb_out_ef; + int16_t rtb_out_ntg; - /* MATLAB Function: '/g_assSTART_ENTER_INCAR' incorporates: - * DataStoreRead: '/Data Store Read4' + /* MATLAB Function: '/g_assSTART_ENTER_INCAR' incorporates: + * DataStoreRead: '/Data Store Read4' */ - g_assSTART_ENTER_INCAR_p(*rtd_LEVEL, &rtb_out_jz); + g_assSTART_ENTER_INCAR_p(*rtd_LEVEL, &rtb_out_ntg); - /* MATLAB Function: '/g_assSTART_ENTER_COOLANT ' incorporates: - * DataStoreRead: '/Data Store Read3' + /* MATLAB Function: '/g_assSTART_ENTER_COOLANT ' incorporates: + * DataStoreRead: '/Data Store Read3' */ - g_assSTART_ENTER_COOLANT_e(*rtd_LEVEL, &rtb_out_cv); + g_assSTART_ENTER_COOLANT_e(*rtd_LEVEL, &rtb_out_ef); - /* Switch: '/Switch' incorporates: - * Constant: '/AUTO' - * Constant: '/Constant' - * Constant: '/Constant1' - * DataStoreRead: '/Data Store Read' - * DataStoreRead: '/Data Store Read1' - * DataStoreRead: '/Data Store Read2' - * Logic: '/AND' - * Logic: '/AND1' - * RelationalOperator: '/Relational Operator' - * RelationalOperator: '/Relational Operator1' - * RelationalOperator: '/Relational Operator2' + /* Switch: '/Switch' incorporates: + * Constant: '/AUTO' + * Constant: '/Constant' + * Constant: '/Constant1' + * DataStoreRead: '/Data Store Read' + * DataStoreRead: '/Data Store Read1' + * DataStoreRead: '/Data Store Read2' + * Logic: '/AND' + * Logic: '/AND1' + * RelationalOperator: '/Relational Operator' + * RelationalOperator: '/Relational Operator1' + * RelationalOperator: '/Relational Operator2' */ - if (((*rtd_Incar_RR < rtb_out_jz) || (*rtd_ECT < rtb_out_cv)) && + if (((*rtd_Incar_RR < rtb_out_ntg) || (*rtd_ECT < rtb_out_ef)) && (*rtd_MODE_RR_passenger == 1.0)) { *rty_step1 = 0; } else { *rty_step1 = -1; } - /* End of Switch: '/Switch' */ + /* End of Switch: '/Switch' */ } /* * Output and update for atomic system: - * '/incar filter down' - * '/incar filter down' - * '/incar filter down' - * '/incar filter down' + * '/incar filter down' + * '/incar filter down' + * '/incar filter down' + * '/incar filter down' */ void incarfilterdown_c(uint8_t rtu_LVL, uint8_t *rty_out) { @@ -4244,10 +4423,10 @@ void incarfilterdown_c(uint8_t rtu_LVL, uint8_t *rty_out) /* * Output and update for atomic system: - * '/incar filter up' - * '/incar filter up' - * '/incar filter up' - * '/incar filter up' + * '/incar filter up' + * '/incar filter up' + * '/incar filter up' + * '/incar filter up' */ void incarfilterup_i(uint8_t rtu_LVL, uint8_t *rty_out) { @@ -4270,9 +4449,9 @@ void incarfilterup_i(uint8_t rtu_LVL, uint8_t *rty_out) /* * Output and update for atomic system: - * '/g_assSTART_COOLANT_STEP0_TO_1 ' - * '/g_assSTART_COOLANT_STEP0_TO_1 ' - * '/g_assSTART_COOLANT_STEP0_TO_1 ' + * '/g_assSTART_COOLANT_STEP0_TO_1 ' + * '/g_assSTART_COOLANT_STEP0_TO_1 ' + * '/g_assSTART_COOLANT_STEP0_TO_1 ' */ void g_assSTART_COOLANT_STEP0_TO_1_e(uint8_t rtu_LVL, int16_t *rty_out) { @@ -4289,8 +4468,8 @@ void g_assSTART_COOLANT_STEP0_TO_1_e(uint8_t rtu_LVL, int16_t *rty_out) /* * Output and update for action system: - * '/Level 4' - * '/Level 5' + * '/Level 4' + * '/Level 5' */ void Level4_m(int8_t *rty_step1, uint16_t *rtd_Blower_RL, uint16_t *rtd_Blower_RR, uint8_t *rtd_Dtg_RL, uint8_t *rtd_Dtg_RR, const @@ -4299,84 +4478,84 @@ void Level4_m(int8_t *rty_step1, uint16_t *rtd_Blower_RL, uint16_t *rtd_Mode_RL, uint8_t *rtd_Mode_RR, uint8_t *rtd_Valve_2_way, uint8_t *rtd_Valve_3_way) { - int16_t rtb_out_pr; + int16_t rtb_out_ls; - /* DataStoreWrite: '/Data Store Write5' incorporates: - * Constant: '/Constant2' + /* DataStoreWrite: '/Data Store Write5' incorporates: + * Constant: '/Constant2' */ *rtd_Blower_RR = 10U; - /* DataStoreWrite: '/Data Store Write6' incorporates: - * Constant: '/Constant3' + /* DataStoreWrite: '/Data Store Write6' incorporates: + * Constant: '/Constant3' */ *rtd_Blower_RL = 10U; - /* DataStoreWrite: '/Data Store Write10' incorporates: - * Constant: '/Constant4' + /* DataStoreWrite: '/Data Store Write10' incorporates: + * Constant: '/Constant4' */ *rtd_Dtg_RR = 80U; - /* DataStoreWrite: '/Data Store Write11' incorporates: - * Constant: '/Constant5' + /* DataStoreWrite: '/Data Store Write11' incorporates: + * Constant: '/Constant5' */ *rtd_Dtg_RL = 80U; - /* DataStoreWrite: '/Data Store Write' incorporates: - * DataStoreRead: '/Data Store Read1' - * MATLAB Function: '/incar filter up' + /* DataStoreWrite: '/Data Store Write' incorporates: + * DataStoreRead: '/Data Store Read1' + * MATLAB Function: '/incar filter up' */ incarfilterup_i(*rtd_LEVEL, rtd_Incar_filter_up_value); - /* DataStoreWrite: '/Data Store Write1' incorporates: - * DataStoreRead: '/Data Store Read2' - * MATLAB Function: '/incar filter down' + /* DataStoreWrite: '/Data Store Write1' incorporates: + * DataStoreRead: '/Data Store Read2' + * MATLAB Function: '/incar filter down' */ incarfilterdown_c(*rtd_LEVEL, rtd_Incar_filter_down_value); - /* DataStoreWrite: '/Data Store Write2' incorporates: - * Constant: '/Mode - foot' + /* DataStoreWrite: '/Data Store Write2' incorporates: + * Constant: '/Mode - foot' */ *rtd_Mode_RR = 60U; - /* DataStoreWrite: '/Data Store Write3' incorporates: - * Constant: '/Mode - foot' + /* DataStoreWrite: '/Data Store Write3' incorporates: + * Constant: '/Mode - foot' */ *rtd_Mode_RL = 60U; - /* DataStoreWrite: '/Data Store Write8' incorporates: - * Constant: '/Valve open' + /* DataStoreWrite: '/Data Store Write8' incorporates: + * Constant: '/Valve open' */ *rtd_Valve_3_way = 1U; - /* DataStoreWrite: '/Data Store Write9' incorporates: - * Constant: '/Valve open' + /* DataStoreWrite: '/Data Store Write9' incorporates: + * Constant: '/Valve open' */ *rtd_Valve_2_way = 1U; - /* MATLAB Function: '/g_assSTART_COOLANT_STEP0_TO_1 ' incorporates: - * DataStoreRead: '/Data Store Read3' + /* MATLAB Function: '/g_assSTART_COOLANT_STEP0_TO_1 ' incorporates: + * DataStoreRead: '/Data Store Read3' */ - g_assSTART_COOLANT_STEP0_TO_1_e(*rtd_LEVEL, &rtb_out_pr); + g_assSTART_COOLANT_STEP0_TO_1_e(*rtd_LEVEL, &rtb_out_ls); - /* Switch: '/Switch' incorporates: - * DataStoreRead: '/Engine coolant temp' - * RelationalOperator: '/Relational Operator' + /* Switch: '/Switch' incorporates: + * DataStoreRead: '/Engine coolant temp' + * RelationalOperator: '/Relational Operator' */ - *rty_step1 = (int8_t)(*rtd_ECT > rtb_out_pr); + *rty_step1 = (int8_t)(*rtd_ECT > rtb_out_ls); } /* * Output and update for atomic system: - * '/2 way valve' - * '/2 way valve' - * '/2 way valve' - * '/2 way valve' - * '/2 way valve' - * '/2 way valve' - * '/2 way valve' - * '/2 way valve' - * '/2 way valve' - * '/2 way valve' + * '/2 way valve' + * '/2 way valve' + * '/2 way valve' + * '/2 way valve' + * '/2 way valve' + * '/2 way valve' + * '/2 way valve' + * '/2 way valve' + * '/2 way valve' + * '/2 way valve' * ... */ void uwayvalve(uint8_t rtu_LVL, uint8_t *rty_out) @@ -4394,12 +4573,12 @@ void uwayvalve(uint8_t rtu_LVL, uint8_t *rty_out) /* * Output and update for atomic system: - * '/Dtg_rear' - * '/Dtg_rear' - * '/Dtg_rear' - * '/Dtg_rear' - * '/Dtg_rear' - * '/Dtg_rear' + * '/Dtg_rear' + * '/Dtg_rear' + * '/Dtg_rear' + * '/Dtg_rear' + * '/Dtg_rear' + * '/Dtg_rear' */ void Dtg_rear(uint8_t rtu_LVL, uint8_t *rty_out) { @@ -4416,12 +4595,12 @@ void Dtg_rear(uint8_t rtu_LVL, uint8_t *rty_out) /* * Output and update for atomic system: - * '/Incar temp goto from step 1 to step 2 ' - * '/Incar temp goto from step 1 to step 2 ' - * '/Incar temp goto from step 1 to step 2 ' - * '/Incar temp goto from step 1 to step 2 ' - * '/Incar temp goto from step 1 to step 2 ' - * '/Incar temp goto from step 1 to step 2 ' + * '/Incar temp goto from step 1 to step 2 ' + * '/Incar temp goto from step 1 to step 2 ' + * '/Incar temp goto from step 1 to step 2 ' + * '/Incar temp goto from step 1 to step 2 ' + * '/Incar temp goto from step 1 to step 2 ' + * '/Incar temp goto from step 1 to step 2 ' */ void Incartempgotofromstep1tostep2_j(uint8_t rtu_LVL, int16_t *rty_out) { @@ -4444,16 +4623,16 @@ void Incartempgotofromstep1tostep2_j(uint8_t rtu_LVL, int16_t *rty_out) /* * Output and update for atomic system: - * '/Time goto from step 1 to step 2 ' - * '/Time goto from step 1 to step 2 ' - * '/Time goto from step 1 to step 2 ' - * '/Time goto from step 1 to step 2 ' - * '/Time goto from step 1 to step 2 ' - * '/Time goto from step 1 to step 2 ' - * '/Time goto from step 1 to step 2 ' - * '/Time goto from step 1 to step 2 ' - * '/Time goto from step 1 to step 2 ' - * '/Time goto from step 1 to step 2 ' + * '/Time goto from step 1 to step 2 ' + * '/Time goto from step 1 to step 2 ' + * '/Time goto from step 1 to step 2 ' + * '/Time goto from step 1 to step 2 ' + * '/Time goto from step 1 to step 2 ' + * '/Time goto from step 1 to step 2 ' + * '/Time goto from step 1 to step 2 ' + * '/Time goto from step 1 to step 2 ' + * '/Time goto from step 1 to step 2 ' + * '/Time goto from step 1 to step 2 ' * ... */ void Timegotofromstep1tostep2_l(uint8_t rtu_LVL, int16_t *rty_out) @@ -4483,12 +4662,12 @@ void Timegotofromstep1tostep2_l(uint8_t rtu_LVL, int16_t *rty_out) /* * Output and update for atomic system: - * '/mode rear step 1' - * '/mode rear step 1' - * '/mode rear step 1' - * '/mode rear step 1' - * '/mode rear step 1' - * '/mode rear step 1' + * '/mode rear step 1' + * '/mode rear step 1' + * '/mode rear step 1' + * '/mode rear step 1' + * '/mode rear step 1' + * '/mode rear step 1' */ void moderearstep1(uint8_t rtu_LVL, uint8_t *rty_out) { @@ -4511,8 +4690,8 @@ void moderearstep1(uint8_t rtu_LVL, uint8_t *rty_out) /* * Output and update for action system: - * '/Level 0' - * '/Level 1' + * '/Level 0' + * '/Level 1' */ void Level0_b(int8_t *rty_step, uint16_t *rtd_Blower_RL, uint16_t *rtd_Blower_RR, uint8_t *rtd_Dtg_RL, uint8_t *rtd_Dtg_RR, const int16_t @@ -4528,40 +4707,40 @@ void Level0_b(int8_t *rty_step, uint16_t *rtd_Blower_RL, uint16_t *rtd_Blower_RR int16_t rtb_out_gb; int16_t rtb_out_kdi; uint16_t rtb_out_ne; - uint8_t rtb_out_jlu; + uint8_t rtb_out_hl; bool rtb_Equal_eo; - /* DataStoreWrite: '/Data Store Write9' incorporates: - * DataStoreRead: '/Data Store Read6' - * MATLAB Function: '/2 way valve' + /* DataStoreWrite: '/Data Store Write9' incorporates: + * DataStoreRead: '/Data Store Read6' + * MATLAB Function: '/2 way valve' */ uwayvalve(*rtd_LEVEL, rtd_Valve_2_way); - /* DataStoreWrite: '/Data Store Write' incorporates: - * DataStoreRead: '/Data Store Read1' - * MATLAB Function: '/incar filter up' + /* DataStoreWrite: '/Data Store Write' incorporates: + * DataStoreRead: '/Data Store Read1' + * MATLAB Function: '/incar filter up' */ incarfilterup_i(*rtd_LEVEL, rtd_Incar_filter_up_value); - /* DataStoreWrite: '/Data Store Write1' incorporates: - * DataStoreRead: '/Data Store Read2' - * MATLAB Function: '/incar filter down' + /* DataStoreWrite: '/Data Store Write1' incorporates: + * DataStoreRead: '/Data Store Read2' + * MATLAB Function: '/incar filter down' */ incarfilterdown_c(*rtd_LEVEL, rtd_Incar_filter_down_value); - /* MATLAB Function: '/mode rear step 1' incorporates: - * DataStoreRead: '/Data Store Read5' + /* MATLAB Function: '/mode rear step 1' incorporates: + * DataStoreRead: '/Data Store Read5' */ - moderearstep1(*rtd_LEVEL, &rtb_out_jlu); + moderearstep1(*rtd_LEVEL, &rtb_out_hl); - /* DataStoreWrite: '/Data Store Write2' */ - *rtd_Mode_RR = rtb_out_jlu; + /* DataStoreWrite: '/Data Store Write2' */ + *rtd_Mode_RR = rtb_out_hl; - /* DataStoreWrite: '/Data Store Write3' */ - *rtd_Mode_RL = rtb_out_jlu; + /* DataStoreWrite: '/Data Store Write3' */ + *rtd_Mode_RL = rtb_out_hl; - /* MATLAB Function: '/blower rear' incorporates: - * DataStoreRead: '/Data Store Read7' + /* MATLAB Function: '/blower rear' incorporates: + * DataStoreRead: '/Data Store Read7' */ /* : out = g_ausSTART_BLR_AF_STEP12_R(LVL + 1); */ tmp = (int32_t)(*rtd_LEVEL + 1U); @@ -4571,72 +4750,72 @@ void Level0_b(int8_t *rty_step, uint16_t *rtd_Blower_RL, uint16_t *rtd_Blower_RR rtb_out_ne = g_ausSTART_BLR_AF_STEP12_R[tmp - 1]; - /* End of MATLAB Function: '/blower rear' */ + /* End of MATLAB Function: '/blower rear' */ - /* DataStoreWrite: '/Data Store Write5' */ + /* DataStoreWrite: '/Data Store Write5' */ *rtd_Blower_RR = rtb_out_ne; - /* DataStoreWrite: '/Data Store Write6' */ + /* DataStoreWrite: '/Data Store Write6' */ *rtd_Blower_RL = rtb_out_ne; - /* MATLAB Function: '/Dtg_rear' incorporates: - * DataStoreRead: '/Data Store Read8' + /* MATLAB Function: '/Dtg_rear' incorporates: + * DataStoreRead: '/Data Store Read8' */ - Dtg_rear(*rtd_LEVEL, &rtb_out_jlu); + Dtg_rear(*rtd_LEVEL, &rtb_out_hl); - /* DataStoreWrite: '/Data Store Write10' */ - *rtd_Dtg_RR = rtb_out_jlu; + /* DataStoreWrite: '/Data Store Write10' */ + *rtd_Dtg_RR = rtb_out_hl; - /* DataStoreWrite: '/Data Store Write11' */ - *rtd_Dtg_RL = rtb_out_jlu; + /* DataStoreWrite: '/Data Store Write11' */ + *rtd_Dtg_RL = rtb_out_hl; - /* DataStoreWrite: '/Data Store Write7' incorporates: - * Constant: '/Recirc logic Partial REC' + /* DataStoreWrite: '/Data Store Write7' incorporates: + * Constant: '/Recirc logic Partial REC' */ *rtd_Recirculation = 1.0; - /* RelationalOperator: '/Equal' incorporates: - * DataStoreRead: '/current step' + /* RelationalOperator: '/Equal' incorporates: + * DataStoreRead: '/current step' */ rtb_Equal_eo = (*rtd_step_start_controle_rear == 1); - /* MATLAB Function: '/Incar temp goto from step 1 to step 2 ' incorporates: - * DataStoreRead: '/Data Store Read3' + /* MATLAB Function: '/Incar temp goto from step 1 to step 2 ' incorporates: + * DataStoreRead: '/Data Store Read3' */ Incartempgotofromstep1tostep2_j(*rtd_LEVEL, &rtb_out_kdi); - /* Sum: '/Subtract' incorporates: - * DataStoreRead: '/Data Store Read4' - * UnitDelay: '/t_start_delay_private ' + /* Sum: '/Subtract' incorporates: + * DataStoreRead: '/Data Store Read4' + * UnitDelay: '/t_start_delay_private ' */ rtb_dt_b = *rtd_t_now - localDW->t_start_delay_private_DSTATE; - /* MATLAB Function: '/Time goto from step 1 to step 2 ' incorporates: - * DataStoreRead: '/Data Store Read4' + /* MATLAB Function: '/Time goto from step 1 to step 2 ' incorporates: + * DataStoreRead: '/Data Store Read4' */ Timegotofromstep1tostep2_l(*rtd_LEVEL, &rtb_out_gb); - /* Switch: '/Switch' incorporates: - * DataStoreRead: '/Data Store Read4' - * Logic: '/Logical Operator3' - * Logic: '/Logical Operator4' - * UnitDelay: '/Cond_prev_private ' - * UnitDelay: '/t_start_delay_private ' + /* Switch: '/Switch' incorporates: + * DataStoreRead: '/Data Store Read4' + * Logic: '/Logical Operator3' + * Logic: '/Logical Operator4' + * UnitDelay: '/Cond_prev_private ' + * UnitDelay: '/t_start_delay_private ' */ if (rtb_Equal_eo && (!localDW->Cond_prev_private_DSTATE)) { localDW->t_start_delay_private_DSTATE = *rtd_t_now; } - /* End of Switch: '/Switch' */ + /* End of Switch: '/Switch' */ - /* Switch: '/Switch' incorporates: - * Constant: '/go to next step' - * Constant: '/stay at step 1' - * DataStoreRead: '/incar temp' - * Gain: '/из сек в мс' - * Logic: '/Logical Operator' - * RelationalOperator: '/Relational Operator' - * RelationalOperator: '/Relational Operator1' + /* Switch: '/Switch' incorporates: + * Constant: '/go to next step' + * Constant: '/stay at step 1' + * DataStoreRead: '/incar temp' + * Gain: '/из сек в мс' + * Logic: '/Logical Operator' + * RelationalOperator: '/Relational Operator' + * RelationalOperator: '/Relational Operator1' */ if ((*rtd_Incar_RR < rtb_out_kdi) || (rtb_dt_b > (uint16_t)(1000 * rtb_out_gb))) { @@ -4645,18 +4824,18 @@ void Level0_b(int8_t *rty_step, uint16_t *rtd_Blower_RL, uint16_t *rtd_Blower_RR *rty_step = 1; } - /* End of Switch: '/Switch' */ + /* End of Switch: '/Switch' */ - /* Update for UnitDelay: '/Cond_prev_private ' */ + /* Update for UnitDelay: '/Cond_prev_private ' */ localDW->Cond_prev_private_DSTATE = rtb_Equal_eo; } /* * Output and update for atomic system: - * '/blower start finish' - * '/blower start finish' - * '/blower start finish' - * '/blower start finish' + * '/blower start finish' + * '/blower start finish' + * '/blower start finish' + * '/blower start finish' */ void blowerstartfinish(uint8_t rtu_LVL, uint16_t rty_out[2]) { @@ -4687,9 +4866,9 @@ void blowerstartfinish(uint8_t rtu_LVL, uint16_t rty_out[2]) /* * Output and update for atomic system: - * '/ECT min max' - * '/ECT min max' - * '/ECT min max' + * '/ECT min max' + * '/ECT min max' + * '/ECT min max' */ void ECTminmax_l(uint8_t rtu_LVL, int16_t rty_out[2]) { @@ -4709,8 +4888,8 @@ void ECTminmax_l(uint8_t rtu_LVL, int16_t rty_out[2]) /* * Output and update for action system: - * '/Level 4' - * '/Level 5' + * '/Level 4' + * '/Level 5' */ void Level4_d(int8_t *rty_step, uint16_t *rtd_Blower_RL, uint16_t *rtd_Blower_RR, uint8_t *rtd_Dtg_RL, uint8_t *rtd_Dtg_RR, const uint16_t *rtd_ECT, @@ -4729,115 +4908,115 @@ void Level4_d(int8_t *rty_step, uint16_t *rtd_Blower_RL, uint16_t *rtd_Blower_RR uint8_t rtb_out_gz; bool rtb_Equal_m3; - /* DataStoreWrite: '/Data Store Write9' incorporates: - * DataStoreRead: '/Data Store Read6' - * MATLAB Function: '/2 way valve' + /* DataStoreWrite: '/Data Store Write9' incorporates: + * DataStoreRead: '/Data Store Read6' + * MATLAB Function: '/2 way valve' */ uwayvalve(*rtd_LEVEL, rtd_Valve_2_way); - /* DataStoreWrite: '/Data Store Write' incorporates: - * DataStoreRead: '/Data Store Read1' - * MATLAB Function: '/incar filter up' + /* DataStoreWrite: '/Data Store Write' incorporates: + * DataStoreRead: '/Data Store Read1' + * MATLAB Function: '/incar filter up' */ incarfilterup_i(*rtd_LEVEL, rtd_Incar_filter_up_value); - /* DataStoreWrite: '/Data Store Write1' incorporates: - * DataStoreRead: '/Data Store Read2' - * MATLAB Function: '/incar filter down' + /* DataStoreWrite: '/Data Store Write1' incorporates: + * DataStoreRead: '/Data Store Read2' + * MATLAB Function: '/incar filter down' */ incarfilterdown_c(*rtd_LEVEL, rtd_Incar_filter_down_value); - /* MATLAB Function: '/mode rear step 1' incorporates: - * DataStoreRead: '/Data Store Read5' + /* MATLAB Function: '/mode rear step 1' incorporates: + * DataStoreRead: '/Data Store Read5' */ moderearstep1(*rtd_LEVEL, &rtb_out_gz); - /* DataStoreWrite: '/Data Store Write2' */ + /* DataStoreWrite: '/Data Store Write2' */ *rtd_Mode_RR = rtb_out_gz; - /* DataStoreWrite: '/Data Store Write3' */ + /* DataStoreWrite: '/Data Store Write3' */ *rtd_Mode_RL = rtb_out_gz; - /* MATLAB Function: '/blower start finish' incorporates: - * DataStoreRead: '/Data Store Read7' + /* MATLAB Function: '/blower start finish' incorporates: + * DataStoreRead: '/Data Store Read7' */ blowerstartfinish(*rtd_LEVEL, rtb_out_dq); - /* MATLAB Function: '/ECT min max' incorporates: - * DataStoreRead: '/Data Store Read7' + /* MATLAB Function: '/ECT min max' incorporates: + * DataStoreRead: '/Data Store Read7' */ ECTminmax_l(*rtd_LEVEL, rtb_out_ij); - /* Lookup_n-D: '/blower для текущего ECT' incorporates: - * DataStoreRead: '/engine coolant temp' - * DataStoreWrite: '/Data Store Write5' + /* Lookup_n-D: '/blower для текущего ECT' incorporates: + * DataStoreRead: '/engine coolant temp' + * DataStoreWrite: '/Data Store Write5' */ *rtd_Blower_RR = look1_iu16bs16lu64n32_binlcse(*rtd_ECT, rtb_out_ij, rtb_out_dq, 1U); - /* DataStoreWrite: '/Data Store Write6' incorporates: - * DataStoreWrite: '/Data Store Write5' + /* DataStoreWrite: '/Data Store Write6' incorporates: + * DataStoreWrite: '/Data Store Write5' */ *rtd_Blower_RL = *rtd_Blower_RR; - /* MATLAB Function: '/Dtg_rear' incorporates: - * DataStoreRead: '/Data Store Read8' + /* MATLAB Function: '/Dtg_rear' incorporates: + * DataStoreRead: '/Data Store Read8' */ Dtg_rear(*rtd_LEVEL, &rtb_out_gz); - /* DataStoreWrite: '/Data Store Write10' */ + /* DataStoreWrite: '/Data Store Write10' */ *rtd_Dtg_RR = rtb_out_gz; - /* DataStoreWrite: '/Data Store Write11' */ + /* DataStoreWrite: '/Data Store Write11' */ *rtd_Dtg_RL = rtb_out_gz; - /* DataStoreWrite: '/Data Store Write7' incorporates: - * Constant: '/Recirc logic Partial REC' + /* DataStoreWrite: '/Data Store Write7' incorporates: + * Constant: '/Recirc logic Partial REC' */ *rtd_Recirculation = 1.0; - /* RelationalOperator: '/Equal' incorporates: - * DataStoreRead: '/current step' + /* RelationalOperator: '/Equal' incorporates: + * DataStoreRead: '/current step' */ rtb_Equal_m3 = (*rtd_step_start_controle_rear == 1); - /* MATLAB Function: '/Incar temp goto from step 1 to step 2 ' incorporates: - * DataStoreRead: '/Data Store Read3' + /* MATLAB Function: '/Incar temp goto from step 1 to step 2 ' incorporates: + * DataStoreRead: '/Data Store Read3' */ Incartempgotofromstep1tostep2_j(*rtd_LEVEL, &rtb_out_pf); - /* Sum: '/Subtract' incorporates: - * DataStoreRead: '/Data Store Read4' - * UnitDelay: '/t_start_delay_private ' + /* Sum: '/Subtract' incorporates: + * DataStoreRead: '/Data Store Read4' + * UnitDelay: '/t_start_delay_private ' */ rtb_dt_ha = *rtd_t_now - localDW->t_start_delay_private_DSTATE; - /* MATLAB Function: '/Time goto from step 1 to step 2 ' incorporates: - * DataStoreRead: '/Data Store Read4' + /* MATLAB Function: '/Time goto from step 1 to step 2 ' incorporates: + * DataStoreRead: '/Data Store Read4' */ Timegotofromstep1tostep2_l(*rtd_LEVEL, &rtb_out_ck); - /* Switch: '/Switch' incorporates: - * DataStoreRead: '/Data Store Read4' - * Logic: '/Logical Operator3' - * Logic: '/Logical Operator4' - * UnitDelay: '/Cond_prev_private ' - * UnitDelay: '/t_start_delay_private ' + /* Switch: '/Switch' incorporates: + * DataStoreRead: '/Data Store Read4' + * Logic: '/Logical Operator3' + * Logic: '/Logical Operator4' + * UnitDelay: '/Cond_prev_private ' + * UnitDelay: '/t_start_delay_private ' */ if (rtb_Equal_m3 && (!localDW->Cond_prev_private_DSTATE)) { localDW->t_start_delay_private_DSTATE = *rtd_t_now; } - /* End of Switch: '/Switch' */ + /* End of Switch: '/Switch' */ - /* Switch: '/Switch' incorporates: - * Constant: '/go to next step' - * Constant: '/stay at step 1' - * DataStoreRead: '/incar temp' - * Gain: '/из сек в мс' - * Logic: '/Logical Operator' - * RelationalOperator: '/Relational Operator' - * RelationalOperator: '/Relational Operator1' + /* Switch: '/Switch' incorporates: + * Constant: '/go to next step' + * Constant: '/stay at step 1' + * DataStoreRead: '/incar temp' + * Gain: '/из сек в мс' + * Logic: '/Logical Operator' + * RelationalOperator: '/Relational Operator' + * RelationalOperator: '/Relational Operator1' */ if ((*rtd_Incar_RR > rtb_out_pf) || (rtb_dt_ha > (uint16_t)(1000 * rtb_out_ck))) { @@ -4846,20 +5025,20 @@ void Level4_d(int8_t *rty_step, uint16_t *rtd_Blower_RL, uint16_t *rtd_Blower_RR *rty_step = 1; } - /* End of Switch: '/Switch' */ + /* End of Switch: '/Switch' */ - /* Update for UnitDelay: '/Cond_prev_private ' */ + /* Update for UnitDelay: '/Cond_prev_private ' */ localDW->Cond_prev_private_DSTATE = rtb_Equal_m3; } /* * Output and update for atomic system: - * '/time for step' - * '/time for step' * '/time for step' * '/time for step' * '/time for step' * '/time for step' + * '/time for step' + * '/time for step' */ void timeforstep_jn(uint8_t rtu_LVL, uint8_t *rty_out) { @@ -4882,12 +5061,12 @@ void timeforstep_jn(uint8_t rtu_LVL, uint8_t *rty_out) /* * Output and update for atomic system: - * '/blower step' - * '/blower step' * '/blower step' * '/blower step' * '/blower step' * '/blower step' + * '/blower step' + * '/blower step' */ void blowerstep_d(uint8_t rtu_LVL, uint16_t *rty_out) { @@ -4904,12 +5083,12 @@ void blowerstep_d(uint8_t rtu_LVL, uint16_t *rty_out) /* * Output and update for atomic system: - * '/blower time for step' - * '/blower time for step' * '/blower time for step' * '/blower time for step' * '/blower time for step' * '/blower time for step' + * '/blower time for step' + * '/blower time for step' */ void blowertimeforstep_l(uint8_t rtu_LVL, uint16_t *rty_out) { @@ -4932,12 +5111,12 @@ void blowertimeforstep_l(uint8_t rtu_LVL, uint16_t *rty_out) /* * Output and update for atomic system: - * '/step' - * '/step' * '/step' * '/step' * '/step' * '/step' + * '/step' + * '/step' */ void step_a(uint8_t rtu_LVL, uint8_t *rty_out) { @@ -4954,12 +5133,12 @@ void step_a(uint8_t rtu_LVL, uint8_t *rty_out) /* * Output and update for atomic system: - * '/time for step' - * '/time for step' * '/time for step' * '/time for step' * '/time for step' * '/time for step' + * '/time for step' + * '/time for step' */ void timeforstep_h(uint8_t rtu_LVL, uint8_t *rty_out) { @@ -4982,9 +5161,9 @@ void timeforstep_h(uint8_t rtu_LVL, uint8_t *rty_out) /* * Output and update for action system: - * '/Level 3' - * '/Level 4' - * '/Level 5' + * '/Level 3' + * '/Level 4' + * '/Level 5' */ void Level3_i(int8_t *rty_step, uint16_t *rtd_Blower_RL, uint16_t *rtd_Blower_RR, const uint16_t *rtd_Blower_logic_RR, uint8_t *rtd_Dtg_RL, uint8_t * @@ -5005,52 +5184,52 @@ void Level3_i(int8_t *rty_step, uint16_t *rtd_Blower_RL, uint16_t *rtd_Blower_RR uint8_t rtb_out_i4; bool rtb_Cond_prev_private_e; - /* DataStoreWrite: '/Data Store Write9' incorporates: - * DataStoreRead: '/Data Store Read6' - * MATLAB Function: '/2 way valve' + /* DataStoreWrite: '/Data Store Write9' incorporates: + * DataStoreRead: '/Data Store Read6' + * MATLAB Function: '/2 way valve' */ uwayvalve(*rtd_LEVEL, rtd_Valve_2_way); - /* MATLAB Function: '/step' incorporates: - * DataStoreRead: '/Data Store Read8' + /* MATLAB Function: '/step' incorporates: + * DataStoreRead: '/Data Store Read8' */ Dtg_rear(*rtd_LEVEL, &rtb_out_i4); - /* MATLAB Function: '/time for step' incorporates: - * DataStoreRead: '/Data Store Read8' + /* MATLAB Function: '/time for step' incorporates: + * DataStoreRead: '/Data Store Read8' */ timeforstep_jn(*rtd_LEVEL, &rtb_out_cn); - /* Switch: '/Switch' incorporates: - * Constant: '/Constant' - * Constant: '/epsilon' - * DataStoreRead: '/Текущее значение blower ' - * DataStoreRead: '/значение auto (в соответствии с логикой)' - * DataStoreRead: '/текущее время в мс' - * DataStoreWrite: '/Data Store Write10' - * Product: '/Product1' - * Product: '/change rate (dtg//sec)' - * Product: '/скорость в мс' - * Product: '/шаг изменения' - * RelationalOperator: '/Relational Operator' - * RelationalOperator: '/Relational Operator' - * Sum: '/Add' - * Sum: '/Add' - * Sum: '/Subtract' - * Switch: '/Switch' - * UnitDelay: '/Unit Delay' + /* Switch: '/Switch' incorporates: + * Constant: '/Constant' + * Constant: '/epsilon' + * DataStoreRead: '/Текущее значение blower ' + * DataStoreRead: '/значение auto (в соответствии с логикой)' + * DataStoreRead: '/текущее время в мс' + * DataStoreWrite: '/Data Store Write10' + * Product: '/Product1' + * Product: '/change rate (dtg//sec)' + * Product: '/скорость в мс' + * Product: '/шаг изменения' + * RelationalOperator: '/Relational Operator' + * RelationalOperator: '/Relational Operator' + * Sum: '/Add' + * Sum: '/Add' + * Sum: '/Subtract' + * Switch: '/Switch' + * UnitDelay: '/Unit Delay' */ if ((uint8_t)(*rtd_Dtg_RR - *rtd_Dtg_logic_RR) <= 0.01) { *rtd_Dtg_RR = *rtd_Dtg_logic_RR; } else { if (*rtd_Dtg_RR <= *rtd_Dtg_logic_RR) { - /* Switch: '/Switch' incorporates: - * Constant: '/Constant' + /* Switch: '/Switch' incorporates: + * Constant: '/Constant' */ tmp = 1; } else { - /* Switch: '/Switch' incorporates: - * Constant: '/Constant1' + /* Switch: '/Switch' incorporates: + * Constant: '/Constant1' */ tmp = -1; } @@ -5060,73 +5239,73 @@ void Level3_i(int8_t *rty_step, uint16_t *rtd_Blower_RL, uint16_t *rtd_Blower_RR rtd_Dtg_RR); } - /* End of Switch: '/Switch' */ + /* End of Switch: '/Switch' */ - /* DataStoreWrite: '/Data Store Write11' incorporates: - * DataStoreWrite: '/Data Store Write10' + /* DataStoreWrite: '/Data Store Write11' incorporates: + * DataStoreWrite: '/Data Store Write10' */ *rtd_Dtg_RL = *rtd_Dtg_RR; - /* DataStoreWrite: '/Data Store Write' incorporates: - * DataStoreRead: '/Data Store Read1' - * MATLAB Function: '/incar filter up' + /* DataStoreWrite: '/Data Store Write' incorporates: + * DataStoreRead: '/Data Store Read1' + * MATLAB Function: '/incar filter up' */ incarfilterup_i(*rtd_LEVEL, rtd_Incar_filter_up_value); - /* DataStoreWrite: '/Data Store Write1' incorporates: - * DataStoreRead: '/Data Store Read2' - * MATLAB Function: '/incar filter down' + /* DataStoreWrite: '/Data Store Write1' incorporates: + * DataStoreRead: '/Data Store Read2' + * MATLAB Function: '/incar filter down' */ incarfilterdown_c(*rtd_LEVEL, rtd_Incar_filter_down_value); - /* Sum: '/Add' incorporates: - * DataStoreRead: '/Текущее значение blower ' - * DataStoreRead: '/значение auto (в соответствии с логикой)' + /* Sum: '/Add' incorporates: + * DataStoreRead: '/Текущее значение blower ' + * DataStoreRead: '/значение auto (в соответствии с логикой)' */ rtb_out_i4 = (uint8_t)(*rtd_Mode_RR - *rtd_Mode_logic_RR); - /* RelationalOperator: '/Relational Operator' incorporates: - * Constant: '/epsilon' + /* RelationalOperator: '/Relational Operator' incorporates: + * Constant: '/epsilon' */ rtb_Cond_prev_private_e = (rtb_out_i4 <= 0.01); - /* MATLAB Function: '/step' incorporates: - * DataStoreRead: '/Data Store Read5' + /* MATLAB Function: '/step' incorporates: + * DataStoreRead: '/Data Store Read5' */ step_a(*rtd_LEVEL, &rtb_out_cn); - /* MATLAB Function: '/time for step' incorporates: - * DataStoreRead: '/Data Store Read5' + /* MATLAB Function: '/time for step' incorporates: + * DataStoreRead: '/Data Store Read5' */ timeforstep_h(*rtd_LEVEL, &rtb_out_i4); - /* Switch: '/Switch' incorporates: - * Constant: '/Constant' - * DataStoreRead: '/Текущее значение blower ' - * DataStoreRead: '/значение auto (в соответствии с логикой)' - * DataStoreRead: '/текущее время в мс' - * DataStoreWrite: '/Data Store Write2' - * Product: '/Product1' - * Product: '/change rate (step//sec)' - * Product: '/скорость в мс' - * Product: '/шаг изменения' - * RelationalOperator: '/Relational Operator' - * Sum: '/Add' - * Sum: '/Subtract' - * Switch: '/Switch' - * UnitDelay: '/Unit Delay' + /* Switch: '/Switch' incorporates: + * Constant: '/Constant' + * DataStoreRead: '/Текущее значение blower ' + * DataStoreRead: '/значение auto (в соответствии с логикой)' + * DataStoreRead: '/текущее время в мс' + * DataStoreWrite: '/Data Store Write2' + * Product: '/Product1' + * Product: '/change rate (step//sec)' + * Product: '/скорость в мс' + * Product: '/шаг изменения' + * RelationalOperator: '/Relational Operator' + * Sum: '/Add' + * Sum: '/Subtract' + * Switch: '/Switch' + * UnitDelay: '/Unit Delay' */ if (rtb_Cond_prev_private_e) { *rtd_Mode_RR = *rtd_Mode_logic_RR; } else { if (*rtd_Mode_RR <= *rtd_Mode_logic_RR) { - /* Switch: '/Switch' incorporates: - * Constant: '/Constant' + /* Switch: '/Switch' incorporates: + * Constant: '/Constant' */ tmp = 1; } else { - /* Switch: '/Switch' incorporates: - * Constant: '/Constant1' + /* Switch: '/Switch' incorporates: + * Constant: '/Constant1' */ tmp = -1; } @@ -5136,53 +5315,53 @@ void Level3_i(int8_t *rty_step, uint16_t *rtd_Blower_RL, uint16_t *rtd_Blower_RR rtd_Mode_RR); } - /* End of Switch: '/Switch' */ + /* End of Switch: '/Switch' */ - /* DataStoreWrite: '/Data Store Write3' incorporates: - * DataStoreWrite: '/Data Store Write2' + /* DataStoreWrite: '/Data Store Write3' incorporates: + * DataStoreWrite: '/Data Store Write2' */ *rtd_Mode_RL = *rtd_Mode_RR; - /* MATLAB Function: '/blower step' incorporates: - * DataStoreRead: '/Data Store Read7' + /* MATLAB Function: '/blower step' incorporates: + * DataStoreRead: '/Data Store Read7' */ blowerstep_d(*rtd_LEVEL, &rtb_out_gx); - /* MATLAB Function: '/blower time for step' incorporates: - * DataStoreRead: '/Data Store Read7' + /* MATLAB Function: '/blower time for step' incorporates: + * DataStoreRead: '/Data Store Read7' */ blowertimeforstep_l(*rtd_LEVEL, &rtb_out_bz); - /* Switch: '/Switch' incorporates: - * Constant: '/Constant' - * Constant: '/epsilon' - * DataStoreRead: '/Текущее значение blower ' - * DataStoreRead: '/значение auto (в соответствии с логикой)' - * DataStoreRead: '/текущее время в мс' - * DataStoreWrite: '/Data Store Write5' - * Product: '/Product1' - * Product: '/change rate (step//sec)' - * Product: '/скорость в мс' - * Product: '/шаг изменения' - * RelationalOperator: '/Relational Operator' - * RelationalOperator: '/Relational Operator' - * Sum: '/Add' - * Sum: '/Add' - * Sum: '/Subtract' - * Switch: '/Switch' - * UnitDelay: '/Unit Delay' + /* Switch: '/Switch' incorporates: + * Constant: '/Constant' + * Constant: '/epsilon' + * DataStoreRead: '/Текущее значение blower ' + * DataStoreRead: '/значение auto (в соответствии с логикой)' + * DataStoreRead: '/текущее время в мс' + * DataStoreWrite: '/Data Store Write5' + * Product: '/Product1' + * Product: '/change rate (step//sec)' + * Product: '/скорость в мс' + * Product: '/шаг изменения' + * RelationalOperator: '/Relational Operator' + * RelationalOperator: '/Relational Operator' + * Sum: '/Add' + * Sum: '/Add' + * Sum: '/Subtract' + * Switch: '/Switch' + * UnitDelay: '/Unit Delay' */ if ((uint16_t)(*rtd_Blower_RR - *rtd_Blower_logic_RR) <= 0.01) { *rtd_Blower_RR = *rtd_Blower_logic_RR; } else { if (*rtd_Blower_RR <= *rtd_Blower_logic_RR) { - /* Switch: '/Switch' incorporates: - * Constant: '/Constant' + /* Switch: '/Switch' incorporates: + * Constant: '/Constant' */ tmp = 1; } else { - /* Switch: '/Switch' incorporates: - * Constant: '/Constant1' + /* Switch: '/Switch' incorporates: + * Constant: '/Constant1' */ tmp = -1; } @@ -5192,54 +5371,54 @@ void Level3_i(int8_t *rty_step, uint16_t *rtd_Blower_RL, uint16_t *rtd_Blower_RR (double)*rtd_Blower_RR); } - /* End of Switch: '/Switch' */ + /* End of Switch: '/Switch' */ - /* DataStoreWrite: '/Data Store Write6' incorporates: - * DataStoreWrite: '/Data Store Write5' + /* DataStoreWrite: '/Data Store Write6' incorporates: + * DataStoreWrite: '/Data Store Write5' */ *rtd_Blower_RL = *rtd_Blower_RR; - /* DataStoreWrite: '/Data Store Write7' incorporates: - * Constant: '/Recirc logic Partial REC' + /* DataStoreWrite: '/Data Store Write7' incorporates: + * Constant: '/Recirc logic Partial REC' */ *rtd_Recirculation = 1.0; - /* RelationalOperator: '/Equal' incorporates: - * DataStoreRead: '/current step' + /* RelationalOperator: '/Equal' incorporates: + * DataStoreRead: '/current step' */ rtb_Cond_prev_private_e = (*rtd_step_start_controle_rear == 2); - /* Sum: '/Subtract' incorporates: - * DataStoreRead: '/Data Store Read4' - * UnitDelay: '/t_start_delay_private ' + /* Sum: '/Subtract' incorporates: + * DataStoreRead: '/Data Store Read4' + * UnitDelay: '/t_start_delay_private ' */ rtb_dt_ho = *rtd_t_now - localDW->t_start_delay_private_DSTATE; - /* MATLAB Function: '/Time goto from step 1 to step 2 ' incorporates: - * DataStoreRead: '/Data Store Read4' + /* MATLAB Function: '/Time goto from step 1 to step 2 ' incorporates: + * DataStoreRead: '/Data Store Read4' */ Timegotofromstep1tostep2_l(*rtd_LEVEL, &rtb_out_cw); - /* Switch: '/Switch' incorporates: - * DataStoreRead: '/Data Store Read4' - * Logic: '/Logical Operator3' - * Logic: '/Logical Operator4' - * UnitDelay: '/Cond_prev_private ' - * UnitDelay: '/t_start_delay_private ' + /* Switch: '/Switch' incorporates: + * DataStoreRead: '/Data Store Read4' + * Logic: '/Logical Operator3' + * Logic: '/Logical Operator4' + * UnitDelay: '/Cond_prev_private ' + * UnitDelay: '/t_start_delay_private ' */ if (rtb_Cond_prev_private_e && (!localDW->Cond_prev_private_DSTATE)) { localDW->t_start_delay_private_DSTATE = *rtd_t_now; } - /* End of Switch: '/Switch' */ + /* End of Switch: '/Switch' */ - /* Switch: '/Switch' incorporates: - * Constant: '/go to next step' - * Constant: '/stay at step' - * DataStoreRead: '/Data Store Read' - * Gain: '/из сек в мс' - * Logic: '/Logical Operator' - * RelationalOperator: '/Relational Operator1' + /* Switch: '/Switch' incorporates: + * Constant: '/go to next step' + * Constant: '/stay at step' + * DataStoreRead: '/Data Store Read' + * Gain: '/из сек в мс' + * Logic: '/Logical Operator' + * RelationalOperator: '/Relational Operator1' */ if ((rtb_dt_ho > (uint16_t)(1000 * rtb_out_cw)) || (*rtd_HI_logic_on)) { *rty_step = 3; @@ -5247,24 +5426,24 @@ void Level3_i(int8_t *rty_step, uint16_t *rtd_Blower_RL, uint16_t *rtd_Blower_RR *rty_step = 2; } - /* End of Switch: '/Switch' */ + /* End of Switch: '/Switch' */ - /* Update for UnitDelay: '/Unit Delay' incorporates: - * DataStoreRead: '/текущее время в мс' + /* Update for UnitDelay: '/Unit Delay' incorporates: + * DataStoreRead: '/текущее время в мс' */ localDW->UnitDelay_DSTATE = *rtd_t_now; - /* Update for UnitDelay: '/Unit Delay' incorporates: - * DataStoreRead: '/текущее время в мс' + /* Update for UnitDelay: '/Unit Delay' incorporates: + * DataStoreRead: '/текущее время в мс' */ localDW->UnitDelay_DSTATE_i = *rtd_t_now; - /* Update for UnitDelay: '/Unit Delay' incorporates: - * DataStoreRead: '/текущее время в мс' + /* Update for UnitDelay: '/Unit Delay' incorporates: + * DataStoreRead: '/текущее время в мс' */ localDW->UnitDelay_DSTATE_e = *rtd_t_now; - /* Update for UnitDelay: '/Cond_prev_private ' */ + /* Update for UnitDelay: '/Cond_prev_private ' */ localDW->Cond_prev_private_DSTATE = rtb_Cond_prev_private_e; } @@ -5279,11 +5458,11 @@ void HVAC_model_step(void) double rtb_Divide6; double rtb_Divide8; int32_t i; - int32_t q0; + int32_t y; uint32_t rtb_dt_fa; uint32_t rtb_dt_ih; int16_t tmp[6]; - int16_t rtb_out_hl[2]; + int16_t rtb_out_j4[2]; int16_t AMB; int16_t Duct1_F; int16_t Duct1_R; @@ -5304,27 +5483,28 @@ void HVAC_model_step(void) int16_t Pressure; uint16_t Merge[9]; uint16_t rtb_vals_m[9]; - uint16_t rtb_out_he[2]; - uint16_t rtb_out_bc; - uint16_t rtb_out_cb; - uint16_t rtb_out_d; - uint16_t rtb_out_ee; - uint16_t rtb_out_fm; - uint16_t rtb_out_hi; - uint16_t rtb_out_hz; - uint16_t rtb_out_i4; + uint16_t rtb_out_jq[2]; + uint16_t FIU_SET_RR; + uint16_t rtb_out_b5; + uint16_t rtb_out_bko; + uint16_t rtb_out_e0; + uint16_t rtb_out_h; + uint16_t rtb_out_iir; + uint16_t rtb_out_jn; + uint16_t rtb_out_oc; + uint16_t rtb_out_pd; int8_t rtb_Switch_hx; uint8_t rtb_get_modes_for_levels[78]; uint8_t Actuator_pos_percent_Ch0[9]; - uint8_t rtb_DataTypeConversion_c1[9]; - uint8_t rtb_DataTypeConversion_np[9]; + uint8_t rtb_DataTypeConversion_md[9]; uint8_t rtb_DataTypeConversion_ns[9]; + uint8_t rtb_VectorConcatenate_c[9]; uint8_t Autodefog; uint8_t Dtg_FUR; uint8_t El_window_heating; uint8_t Mode_FR; uint8_t Valve_2_way; - uint8_t rtb_Gain2_c; + uint8_t rtb_Gain2_hu; uint8_t rtb_Gain_ge; uint8_t rtb_u_cuz; bool rtb_LogicalOperator3_a0[9]; @@ -5412,7 +5592,7 @@ void HVAC_model_step(void) AMB = 100; } else { AMB = look1_iu16tdIs16_binlcs(rtDW.ADC_Data_Model.Sensor_Ambient_Temp, - rtConstP.pooled45, rtConstP.uDLookupTable_tableData, 1023U); + rtConstP.pooled47, rtConstP.uDLookupTable_tableData, 1023U); } /* End of Switch: '/Switch' */ @@ -5526,7 +5706,7 @@ void HVAC_model_step(void) Eva_F = -100; } else { Eva_F = look1_iu16tdIs16_binlcs(rtDW.ADC_Data_Model.Sensor_Evap_Temp, - rtConstP.pooled45, rtConstP.pooled3, 1023U); + rtConstP.pooled47, rtConstP.pooled3, 1023U); } /* End of Switch: '/Switch' */ @@ -5640,7 +5820,7 @@ void HVAC_model_step(void) Eva_R = -100; } else { Eva_R = look1_iu16tdIs16_binlcs(rtDW.ADC_Data_Model.Sensor_Rear_Evap_Temp, - rtConstP.pooled45, rtConstP.pooled3, 1023U); + rtConstP.pooled47, rtConstP.pooled3, 1023U); } /* End of Switch: '/Switch' */ @@ -5754,7 +5934,7 @@ void HVAC_model_step(void) Pressure = 32; } else { Pressure = look1_iu16tdIs16_binlcs(rtDW.ADC_Data_Model.Sensor_AC_Pressure, - rtConstP.pooled45, rtConstP.uDLookupTable_tableData_a, 1023U); + rtConstP.pooled47, rtConstP.uDLookupTable_tableData_a, 1023U); } /* End of Switch: '/Switch' */ @@ -5868,7 +6048,7 @@ void HVAC_model_step(void) Duct2_F = 230; } else { Duct2_F = look1_iu16tdIs16_binlcs(rtDW.ADC_Data_Model.Sensor_Front_Duct2, - rtConstP.pooled45, rtConstP.pooled4, 1023U); + rtConstP.pooled47, rtConstP.pooled4, 1023U); } /* End of Switch: '/Switch2' */ @@ -5914,7 +6094,7 @@ void HVAC_model_step(void) Duct1_F = 230; } else { Duct1_F = look1_iu16tdIs16_binlcs(rtDW.ADC_Data_Model.Sensor_Front_Duct1, - rtConstP.pooled45, rtConstP.pooled4, 1023U); + rtConstP.pooled47, rtConstP.pooled4, 1023U); } /* End of Switch: '/Switch1' */ @@ -5960,7 +6140,7 @@ void HVAC_model_step(void) Duct3_F = 230; } else { Duct3_F = look1_iu16tdIs16_binlcs(rtDW.ADC_Data_Model.Sensor_Front_Duct3, - rtConstP.pooled45, rtConstP.pooled4, 1023U); + rtConstP.pooled47, rtConstP.pooled4, 1023U); } /* End of Switch: '/Switch3' */ @@ -6006,7 +6186,7 @@ void HVAC_model_step(void) Duct4_F = 230; } else { Duct4_F = look1_iu16tdIs16_binlcs(rtDW.ADC_Data_Model.Sensor_Front_Duct4, - rtConstP.pooled45, rtConstP.pooled4, 1023U); + rtConstP.pooled47, rtConstP.pooled4, 1023U); } /* End of Switch: '/Switch4' */ @@ -6052,7 +6232,7 @@ void HVAC_model_step(void) Duct5_F = 230; } else { Duct5_F = look1_iu16tdIs16_binlcs(rtDW.ADC_Data_Model.Sensor_Rear_Duct5, - rtConstP.pooled45, rtConstP.pooled4, 1023U); + rtConstP.pooled47, rtConstP.pooled4, 1023U); } /* End of Switch: '/Switch5' */ @@ -6098,7 +6278,7 @@ void HVAC_model_step(void) Duct6_F = 230; } else { Duct6_F = look1_iu16tdIs16_binlcs(rtDW.ADC_Data_Model.Sensor_Rear_Duct6, - rtConstP.pooled45, rtConstP.pooled4, 1023U); + rtConstP.pooled47, rtConstP.pooled4, 1023U); } /* End of Switch: '/Switch6' */ @@ -6552,7 +6732,7 @@ void HVAC_model_step(void) Duct1_R = 230; } else { Duct1_R = look1_iu16tdIs16_binlcs(rtDW.ADC_Data_Model.Sensor_Rear_Duct1, - rtConstP.pooled45, rtConstP.pooled4, 1023U); + rtConstP.pooled47, rtConstP.pooled4, 1023U); } /* End of Switch: '/Switch' */ @@ -6598,7 +6778,7 @@ void HVAC_model_step(void) Duct2_R = 230; } else { Duct2_R = look1_iu16tdIs16_binlcs(rtDW.ADC_Data_Model.Sensor_Rear_Duct2, - rtConstP.pooled45, rtConstP.pooled4, 1023U); + rtConstP.pooled47, rtConstP.pooled4, 1023U); } /* End of Switch: '/Switch1' */ @@ -6644,7 +6824,7 @@ void HVAC_model_step(void) Duct3_R = 230; } else { Duct3_R = look1_iu16tdIs16_binlcs(rtDW.ADC_Data_Model.Sensor_Rear_Duct3, - rtConstP.pooled45, rtConstP.pooled4, 1023U); + rtConstP.pooled47, rtConstP.pooled4, 1023U); } /* End of Switch: '/Switch2' */ @@ -6690,7 +6870,7 @@ void HVAC_model_step(void) Duct4_R = 230; } else { Duct4_R = look1_iu16tdIs16_binlcs(rtDW.ADC_Data_Model.Sensor_Rear_Duct4, - rtConstP.pooled45, rtConstP.pooled4, 1023U); + rtConstP.pooled47, rtConstP.pooled4, 1023U); } /* End of Switch: '/Switch3' */ @@ -6815,12 +6995,12 @@ void HVAC_model_step(void) /* : if(LOGGER) */ if (rtDW.LOGGER_ACP != 0.0) { /* : fprintf('Duct1_R = %d * 0.1 C %d V\n',Sensor, int16(V)); */ - rtb_out_ee = rtDW.ADC_Data_Model.Sensor_Rear_Duct1; + rtb_out_oc = rtDW.ADC_Data_Model.Sensor_Rear_Duct1; if (rtDW.ADC_Data_Model.Sensor_Rear_Duct1 > 32767) { - rtb_out_ee = 32767U; + rtb_out_oc = 32767U; } - printf("Duct1_R = %d * 0.1 C %d V\n", Duct1_R, (int16_t)rtb_out_ee); + printf("Duct1_R = %d * 0.1 C %d V\n", Duct1_R, (int16_t)rtb_out_oc); fflush(stdout); } @@ -6834,12 +7014,12 @@ void HVAC_model_step(void) /* : if(LOGGER) */ if (rtDW.LOGGER_ACP != 0.0) { /* : fprintf('Duct2_R = %d * 0.1 C %d V\n',Sensor, int16(V)); */ - rtb_out_ee = rtDW.ADC_Data_Model.Sensor_Rear_Duct2; + rtb_out_oc = rtDW.ADC_Data_Model.Sensor_Rear_Duct2; if (rtDW.ADC_Data_Model.Sensor_Rear_Duct2 > 32767) { - rtb_out_ee = 32767U; + rtb_out_oc = 32767U; } - printf("Duct2_R = %d * 0.1 C %d V\n", Duct2_R, (int16_t)rtb_out_ee); + printf("Duct2_R = %d * 0.1 C %d V\n", Duct2_R, (int16_t)rtb_out_oc); fflush(stdout); } @@ -6853,12 +7033,12 @@ void HVAC_model_step(void) /* : if(LOGGER) */ if (rtDW.LOGGER_ACP != 0.0) { /* : fprintf('Duct3_R = %d * 0.1 C %d V\n',Sensor, int16(V)); */ - rtb_out_ee = rtDW.ADC_Data_Model.Sensor_Rear_Duct3; + rtb_out_oc = rtDW.ADC_Data_Model.Sensor_Rear_Duct3; if (rtDW.ADC_Data_Model.Sensor_Rear_Duct3 > 32767) { - rtb_out_ee = 32767U; + rtb_out_oc = 32767U; } - printf("Duct3_R = %d * 0.1 C %d V\n", Duct3_R, (int16_t)rtb_out_ee); + printf("Duct3_R = %d * 0.1 C %d V\n", Duct3_R, (int16_t)rtb_out_oc); fflush(stdout); } @@ -6872,12 +7052,12 @@ void HVAC_model_step(void) /* : if(LOGGER) */ if (rtDW.LOGGER_ACP != 0.0) { /* : fprintf('Duct4_R = %d * 0.1 C %d V\n',Sensor, int16(V)); */ - rtb_out_ee = rtDW.ADC_Data_Model.Sensor_Rear_Duct4; + rtb_out_oc = rtDW.ADC_Data_Model.Sensor_Rear_Duct4; if (rtDW.ADC_Data_Model.Sensor_Rear_Duct4 > 32767) { - rtb_out_ee = 32767U; + rtb_out_oc = 32767U; } - printf("Duct4_R = %d * 0.1 C %d V\n", Duct4_R, (int16_t)rtb_out_ee); + printf("Duct4_R = %d * 0.1 C %d V\n", Duct4_R, (int16_t)rtb_out_oc); fflush(stdout); } @@ -7032,7 +7212,7 @@ void HVAC_model_step(void) Incar_FL = 200; } else { Incar_FL = look1_iu16tdIs16_binlcs(rtDW.ADC_Data_Model.Sensor_Incar_Temp_FL, - rtConstP.pooled45, rtConstP.pooled5, 1023U); + rtConstP.pooled47, rtConstP.pooled5, 1023U); } /* End of Switch: '/Switch' */ @@ -7078,7 +7258,7 @@ void HVAC_model_step(void) Incar_RL = 200; } else { Incar_RL = look1_iu16tdIs16_binlcs(rtDW.ADC_Data_Model.Sensor_Incar_Temp_RL, - rtConstP.pooled45, rtConstP.pooled5, 1023U); + rtConstP.pooled47, rtConstP.pooled5, 1023U); } /* End of Switch: '/Switch1' */ @@ -7260,7 +7440,7 @@ void HVAC_model_step(void) Incar_FR = 200; } else { Incar_FR = look1_iu16tdIs16_binlcs(rtDW.ADC_Data_Model.Sensor_Incar_Temp_FR, - rtConstP.pooled45, rtConstP.pooled5, 1023U); + rtConstP.pooled47, rtConstP.pooled5, 1023U); } /* End of Switch: '/Switch' */ @@ -7306,7 +7486,7 @@ void HVAC_model_step(void) Incar_RR = 200; } else { Incar_RR = look1_iu16tdIs16_binlcs(rtDW.ADC_Data_Model.Sensor_Incar_Temp_RR, - rtConstP.pooled45, rtConstP.pooled5, 1023U); + rtConstP.pooled47, rtConstP.pooled5, 1023U); } /* End of Switch: '/Switch1' */ @@ -8291,17 +8471,19 @@ void HVAC_model_step(void) /* Saturate: '/Saturation' incorporates: * DataStoreRead: '/Data Store Read1' */ - if (rtDW.FIU_SET_FL >= 170) { - q0 = rtDW.FIU_SET_FL; + if (rtDW.FIU_SET_FL > 290) { + y = 290; + } else if (rtDW.FIU_SET_FL < 170) { + y = 170; } else { - q0 = 170; + y = rtDW.FIU_SET_FL; } /* Gain: '/Gain' incorporates: * Saturate: '/Saturation' */ - q0 *= 13107; - rtb_Gain_ge = (uint8_t)((((uint32_t)q0 & 65536U) != 0U) + (q0 >> 17)); + y *= 13107; + rtb_Gain_ge = (uint8_t)((((uint32_t)y & 65536U) != 0U) + (y >> 17)); /* MATLAB Function: '/Modes for levels' */ /* : get_modes_for_levels = [g_aucMODE_BY_SET_F_LV0; */ @@ -8311,13 +8493,13 @@ void HVAC_model_step(void) /* : g_aucMODE_BY_SET_F_LV4; */ /* : g_aucMODE_BY_SET_F_LV5; */ /* : ]; */ - for (q0 = 0; q0 < 13; q0++) { - rtb_get_modes_for_levels[6 * q0] = g_aucMODE_BY_SET_F_LV0[q0]; - rtb_get_modes_for_levels[6 * q0 + 1] = g_aucMODE_BY_SET_F_LV1[q0]; - rtb_get_modes_for_levels[6 * q0 + 2] = g_aucMODE_BY_SET_F_LV2[q0]; - rtb_get_modes_for_levels[6 * q0 + 3] = g_aucMODE_BY_SET_F_LV3[q0]; - rtb_get_modes_for_levels[6 * q0 + 4] = g_aucMODE_BY_SET_F_LV4[q0]; - rtb_get_modes_for_levels[6 * q0 + 5] = g_aucMODE_BY_SET_F_LV5[q0]; + for (y = 0; y < 13; y++) { + rtb_get_modes_for_levels[6 * y] = g_aucMODE_BY_SET_F_LV0[y]; + rtb_get_modes_for_levels[6 * y + 1] = g_aucMODE_BY_SET_F_LV1[y]; + rtb_get_modes_for_levels[6 * y + 2] = g_aucMODE_BY_SET_F_LV2[y]; + rtb_get_modes_for_levels[6 * y + 3] = g_aucMODE_BY_SET_F_LV3[y]; + rtb_get_modes_for_levels[6 * y + 4] = g_aucMODE_BY_SET_F_LV4[y]; + rtb_get_modes_for_levels[6 * y + 5] = g_aucMODE_BY_SET_F_LV5[y]; } /* End of MATLAB Function: '/Modes for levels' */ @@ -8327,8 +8509,8 @@ void HVAC_model_step(void) * Merge: '/Merge' */ rtb_u_cuz = look2_iu8bu8s16lu64n32_binlcse(rtB.Merge_b, rtb_Gain_ge, - rtConstP.pooled76, rtConstP.pooled42, rtb_get_modes_for_levels, - rtConstP.pooled35, 6U); + rtConstP.pooled82, rtConstP.pooled43, rtb_get_modes_for_levels, + rtConstP.pooled36, 6U); /* MATLAB Function: '/Начальные положения заслонок left' */ left(rtb_u_cuz, rtb_vals_m); @@ -8336,17 +8518,19 @@ void HVAC_model_step(void) /* Saturate: '/Saturation1' incorporates: * DataStoreRead: '/Data Store Read2' */ - if (rtDW.FIU_SET_FR >= 170) { - q0 = rtDW.FIU_SET_FR; + if (rtDW.FIU_SET_FR > 290) { + y = 290; + } else if (rtDW.FIU_SET_FR < 170) { + y = 170; } else { - q0 = 170; + y = rtDW.FIU_SET_FR; } /* Gain: '/Gain2' incorporates: * Saturate: '/Saturation1' */ - q0 *= 13107; - rtb_Gain2_c = (uint8_t)((((uint32_t)q0 & 65536U) != 0U) + (q0 >> 17)); + y *= 13107; + rtb_Gain2_hu = (uint8_t)((((uint32_t)y & 65536U) != 0U) + (y >> 17)); /* SwitchCase: '/Switch for Left ' incorporates: * DataStoreRead: '/Data Store Read' @@ -8368,7 +8552,7 @@ void HVAC_model_step(void) /* Outputs for IfAction SubSystem: '/Bilevel' incorporates: * ActionPort: '/Action Port' */ - Bilevel(AMB, rtB.Merge_b, Merge, rtb_Gain_ge, rtb_Gain2_c); + Bilevel(AMB, rtB.Merge_b, Merge, rtb_Gain_ge, rtb_Gain2_hu); /* End of Outputs for SubSystem: '/Bilevel' */ break; @@ -8386,7 +8570,7 @@ void HVAC_model_step(void) /* Outputs for IfAction SubSystem: '/Bilevel2' incorporates: * ActionPort: '/Action Port' */ - Bilevel2(AMB, rtB.Merge_b, Merge, rtb_Gain_ge, rtb_Gain2_c); + Bilevel2(AMB, rtB.Merge_b, Merge, rtb_Gain_ge, rtb_Gain2_hu); /* End of Outputs for SubSystem: '/Bilevel2' */ break; @@ -8404,7 +8588,7 @@ void HVAC_model_step(void) /* Outputs for IfAction SubSystem: '/Afoot' incorporates: * ActionPort: '/Action Port' */ - Afoot(AMB, rtB.Merge_b, Merge, rtb_Gain_ge, rtb_Gain2_c); + Afoot(AMB, rtB.Merge_b, Merge, rtb_Gain_ge, rtb_Gain2_hu); /* End of Outputs for SubSystem: '/Afoot' */ break; @@ -8422,7 +8606,7 @@ void HVAC_model_step(void) /* Outputs for IfAction SubSystem: '/Afoot_Summer' incorporates: * ActionPort: '/Action Port' */ - Afoot_Summer(AMB, rtB.Merge_b, Merge, rtb_Gain_ge, rtb_Gain2_c); + Afoot_Summer(AMB, rtB.Merge_b, Merge, rtb_Gain_ge, rtb_Gain2_hu); /* End of Outputs for SubSystem: '/Afoot_Summer' */ break; @@ -8434,9 +8618,9 @@ void HVAC_model_step(void) * Gain: '/Gain2' * Merge: '/Merge' */ - rtb_u_cuz = look2_iu8bu8s16lu64n32_binlcse(rtB.Merge_b, rtb_Gain2_c, - rtConstP.pooled76, rtConstP.pooled42, rtb_get_modes_for_levels, - rtConstP.pooled35, 6U); + rtb_u_cuz = look2_iu8bu8s16lu64n32_binlcse(rtB.Merge_b, rtb_Gain2_hu, + rtConstP.pooled82, rtConstP.pooled43, rtb_get_modes_for_levels, + rtConstP.pooled36, 6U); /* MATLAB Function: '/Начальные положения заслонок right' */ left(rtb_u_cuz, rtb_vals_m); @@ -8461,7 +8645,7 @@ void HVAC_model_step(void) /* Outputs for IfAction SubSystem: '/Bilevel' incorporates: * ActionPort: '/Action Port' */ - Bilevel(AMB, rtB.Merge_b, Merge, rtb_Gain_ge, rtb_Gain2_c); + Bilevel(AMB, rtB.Merge_b, Merge, rtb_Gain_ge, rtb_Gain2_hu); /* End of Outputs for SubSystem: '/Bilevel' */ break; @@ -8479,7 +8663,7 @@ void HVAC_model_step(void) /* Outputs for IfAction SubSystem: '/Bilevel2' incorporates: * ActionPort: '/Action Port' */ - Bilevel2(AMB, rtB.Merge_b, Merge, rtb_Gain_ge, rtb_Gain2_c); + Bilevel2(AMB, rtB.Merge_b, Merge, rtb_Gain_ge, rtb_Gain2_hu); /* End of Outputs for SubSystem: '/Bilevel2' */ break; @@ -8497,7 +8681,7 @@ void HVAC_model_step(void) /* Outputs for IfAction SubSystem: '/Afoot' incorporates: * ActionPort: '/Action Port' */ - Afoot(AMB, rtB.Merge_b, Merge, rtb_Gain_ge, rtb_Gain2_c); + Afoot(AMB, rtB.Merge_b, Merge, rtb_Gain_ge, rtb_Gain2_hu); /* End of Outputs for SubSystem: '/Afoot' */ break; @@ -8515,7 +8699,7 @@ void HVAC_model_step(void) /* Outputs for IfAction SubSystem: '/Afoot_Summer' incorporates: * ActionPort: '/Action Port' */ - Afoot_Summer(AMB, rtB.Merge_b, Merge, rtb_Gain_ge, rtb_Gain2_c); + Afoot_Summer(AMB, rtB.Merge_b, Merge, rtb_Gain_ge, rtb_Gain2_hu); /* End of Outputs for SubSystem: '/Afoot_Summer' */ break; @@ -8549,3742 +8733,38 @@ void HVAC_model_step(void) /* End of MATLAB Function: '/Log Ambient Lv' */ - /* BusCreator: '/Bus Creator' incorporates: - * DataStoreRead: '/Data Store Read' - * DataStoreRead: '/Data Store Read1' - * DataStoreRead: '/Data Store Read10' - * DataStoreRead: '/Data Store Read11' - * DataStoreRead: '/Data Store Read12' - * DataStoreRead: '/Data Store Read13' - * DataStoreRead: '/Data Store Read14' - * DataStoreRead: '/Data Store Read15' - * DataStoreRead: '/Data Store Read16' - * DataStoreRead: '/Data Store Read17' - * DataStoreRead: '/Data Store Read18' - * DataStoreRead: '/Data Store Read19' - * DataStoreRead: '/Data Store Read2' - * DataStoreRead: '/Data Store Read20' - * DataStoreRead: '/Data Store Read21' - * DataStoreRead: '/Data Store Read22' - * DataStoreRead: '/Data Store Read23' - * DataStoreRead: '/Data Store Read24' - * DataStoreRead: '/Data Store Read25' - * DataStoreRead: '/Data Store Read26' - * DataStoreRead: '/Data Store Read3' - * DataStoreRead: '/Data Store Read4' - * DataStoreRead: '/Data Store Read5' - * DataStoreRead: '/Data Store Read6' - * DataStoreRead: '/Data Store Read7' - * DataStoreRead: '/Data Store Read8' - * DataStoreRead: '/Data Store Read9' - * DataStoreWrite: '/Data Store Write' + /* DataTypeConversion: '/Data Type Conversion1' incorporates: + * Bias: '/Bias' + * DataStoreRead: '/Data Store Read1' + * DataStoreWrite: '/Data Store Write1' + * DataTypeConversion: '/Data Type Conversion' + * Gain: '/Gain' + * Gain: '/Gain1' */ - rtDW.CCU_STAT1_MODEL.CCU_ModeFL_Stat = rtDW.FIU_MODE_FL; - rtDW.CCU_STAT1_MODEL.CCU_ModeFR_Stat = rtDW.FIU_MODE_FR; - rtDW.CCU_STAT1_MODEL.CCU_ModeRL_Stat = rtDW.FIU_MODE_RL; - rtDW.CCU_STAT1_MODEL.CCU_ModeRR_Stat = rtDW.FIU_MODE_RR; - rtDW.CCU_STAT1_MODEL.CCU_AutoModeFL_Stat = rtDW.FIU_AUTOMODE_FL; - rtDW.CCU_STAT1_MODEL.CCU_AutoModeFR_Stat = rtDW.FIU_AUTOMODE_FR; - rtDW.CCU_STAT1_MODEL.CCU_AirDirectionRL_Face_Stat = rtDW.FIU_FACE_RL; - rtDW.CCU_STAT1_MODEL.CCU_AirDirectionRL_Foot_Stat = rtDW.FIU_FOOT_RL; - rtDW.CCU_STAT1_MODEL.CCU_AutoModeRL_Stat = rtDW.FIU_AUTOMODE_RL; - rtDW.CCU_STAT1_MODEL.CCU_AutoModeRR_Stat = rtDW.FIU_AUTOMODE_RR; - rtDW.CCU_STAT1_MODEL.CCU_AirDirectionRR_Face_Stat = rtDW.FIU_FACE_RR; - rtDW.CCU_STAT1_MODEL.CCU_AirDirectionRR_Foot_Stat = rtDW.FIU_FOOT_RR; - rtDW.CCU_STAT1_MODEL.CCU_AirDirectionFL_Def_Stat = rtDW.FIU_DEF_FL; - rtDW.CCU_STAT1_MODEL.CCU_AirDirectionFL_Face_Stat = rtDW.FIU_FACE_FL; - rtDW.CCU_STAT1_MODEL.CCU_AirDirectionFL_Foot_Stat = rtDW.FIU_FOOT_FL; - rtDW.CCU_STAT1_MODEL.CCU_AirDirectionFR_Def_Stat = rtDW.FIU_DEF_FR; - rtDW.CCU_STAT1_MODEL.CCU_AirDirectionFR_Face_Stat = rtDW.FIU_FACE_FR; - rtDW.CCU_STAT1_MODEL.CCU_AirDirectionFR_Foot_Stat = rtDW.FIU_FOOT_FR; - rtDW.CCU_STAT1_MODEL.CCU_Recirculation_Stat = rtDW.FIU_RECIRC; - rtDW.CCU_STAT1_MODEL.CCU_BlowerSpeedFL_Stat = rtDW.FIU_BLOWERS_FL; - rtDW.CCU_STAT1_MODEL.CCU_TargetTempFL_Stat_ro = rtDW.FIU_SET_FL; - rtDW.CCU_STAT1_MODEL.CCU_BlowerSpeedFR_Stat = rtDW.FIU_BLOWERS_FR; - rtDW.CCU_STAT1_MODEL.CCU_TargetTempFR_Stat_ro = rtDW.FIU_SET_FR; - rtDW.CCU_STAT1_MODEL.CCU_BlowerSpeedRL_Stat = rtDW.FIU_BLOWERS_RL; - rtDW.CCU_STAT1_MODEL.CCU_TargetTempRR_Stat_ro = rtDW.FIU_SET_RR; - rtDW.CCU_STAT1_MODEL.CCU_BlowerSpeedRR_Stat = rtDW.FIU_BLOWERS_RR; - rtDW.CCU_STAT1_MODEL.CCU_TargetTempRL_Stat_ro = rtDW.FIU_SET_RL; + rtDW.FIU_SET_FL = (uint16_t)((0.5 * (double) + rtDW.FIU_CCU1_MODEL.FIU_TargetTempFL_Val_ro + 15.5) * 10.0); - /* DataStoreWrite: '/Data Store Write2' */ - for (i = 0; i < 9; i++) { - /* Switch: '/Switch' incorporates: - * Constant: '/Constant' - * DataStoreRead: '/Data Store Read1' - * DataStoreRead: '/Data Store Read' - * Gain: '/Gain' - * Product: '/Divide' - */ - if (rtDW.MaxPositionCh0_private[i] != 0) { - q0 = 100 * (int16_t)div_nde_s32_floor - (Actuator_Ch0_Status_Model.in_CPOS_ALL[i], rtDW.MaxPositionCh0_private[i]); - } else { - q0 = 0; - } - - /* End of Switch: '/Switch' */ - - /* Saturate: '/Saturation' */ - if (q0 > 100) { - Actuator_pos_percent_Ch0[i] = 100U; - } else if (q0 < 0) { - Actuator_pos_percent_Ch0[i] = 0U; - } else { - Actuator_pos_percent_Ch0[i] = (uint8_t)q0; - } - - /* End of Saturate: '/Saturation' */ - } - - /* End of DataStoreWrite: '/Data Store Write2' */ - - /* Switch: '/Switch' incorporates: - * Constant: '/Constant1' - * DataStoreRead: '/Data Store Read' - * DataStoreRead: '/Data Store Read2' + /* DataTypeConversion: '/Data Type Conversion1' incorporates: + * Bias: '/Bias' + * DataStoreRead: '/Data Store Read1' + * DataStoreWrite: '/Data Store Write' + * DataTypeConversion: '/Data Type Conversion' + * Gain: '/Gain' + * Gain: '/Gain1' */ - if (rtDW.stepSig_private > 0) { - rtb_Switch_hx = rtDW.stepSig_private; - } else { - rtb_Switch_hx = 1; - } - - /* End of Switch: '/Switch' */ - - /* SwitchCase: '/Switch Case' */ - switch (rtb_Switch_hx) { - case 1: - /* Outputs for IfAction SubSystem: '/Stop Mode' incorporates: - * ActionPort: '/Action Port' - */ - /* If: '/If1' incorporates: - * DataStoreRead: '/Data Store Read1' - * DataStoreWrite: '/Data Store Write1' - * SignalConversion generated from: '/Bus Selector' - */ - if ((Actuator_Ch0_Status_Model.Busy == 0) && - (Actuator_Ch0_Status_Model.Error_Connect == 0)) { - /* Outputs for IfAction SubSystem: '/If Action Subsystem2' incorporates: - * ActionPort: '/Action Port' - */ - for (i = 0; i < 9; i++) { - /* DataStoreWrite: '/Data Store Write1' */ - rtDW.COM_private[i] = 1U; - - /* DataStoreWrite: '/Data Store Write' */ - rtDW.MODE_private[i] = 2U; - } - - /* Merge: '/Merge' incorporates: - * Constant: '/Constant' - * Sum: '/step inc' - */ - rtB.Merge_l = (int8_t)(rtb_Switch_hx + 1); - - /* MATLAB Function: '/Write' incorporates: - * DataStoreRead: '/Data Store Read3' - */ - /* : if(LOGGER == 2) */ - if (rtDW.LOGGER_LIN == 2.0) { - /* : fprintf('[LIN 1] Stop Mode\n'); */ - printf("[LIN 1] Stop Mode\n"); - fflush(stdout); - } - - /* End of MATLAB Function: '/Write' */ - /* End of Outputs for SubSystem: '/If Action Subsystem2' */ - } else { - /* Outputs for IfAction SubSystem: '/If Action Subsystem3' incorporates: - * ActionPort: '/Action Port' - */ - /* Merge: '/Merge' incorporates: - * SignalConversion generated from: '/stepIn' - */ - rtB.Merge_l = rtb_Switch_hx; - - /* End of Outputs for SubSystem: '/If Action Subsystem3' */ - } - - /* End of If: '/If1' */ - /* End of Outputs for SubSystem: '/Stop Mode' */ - break; - - case 2: - /* Outputs for IfAction SubSystem: '/Initial CPOS Min' incorporates: - * ActionPort: '/Action Port' - */ - /* If: '/If' incorporates: - * DataStoreRead: '/Data Store Read1' - * DataStoreWrite: '/Data Store Write1' - * SignalConversion generated from: '/Bus Selector' - */ - if ((Actuator_Ch0_Status_Model.Busy == 0) && - (Actuator_Ch0_Status_Model.Error_Connect == 0)) { - /* Outputs for IfAction SubSystem: '/If Action Subsystem' incorporates: - * ActionPort: '/Action Port' - */ - for (i = 0; i < 9; i++) { - /* DataStoreWrite: '/Data Store Write' */ - rtDW.POS_private[i] = 6000U; - - /* DataStoreWrite: '/Data Store Write1' */ - rtDW.COM_private[i] = 2U; - } - - /* Merge: '/Merge' incorporates: - * Constant: '/Constant' - * Merge: '/Merge' - * Sum: '/step inc' - */ - rtB.Merge_l = (int8_t)(rtb_Switch_hx + 1); - - /* MATLAB Function: '/Write' incorporates: - * DataStoreRead: '/Data Store Read3' - */ - /* : if(LOGGER == 2) */ - if (rtDW.LOGGER_LIN == 2.0) { - /* : fprintf('[LIN 1] Initial CPOS Min\n'); */ - printf("[LIN 1] Initial CPOS Min\n"); - fflush(stdout); - } - - /* End of MATLAB Function: '/Write' */ - /* End of Outputs for SubSystem: '/If Action Subsystem' */ - } else { - /* Outputs for IfAction SubSystem: '/If Action Subsystem3' incorporates: - * ActionPort: '/Action Port' - */ - /* Merge: '/Merge' incorporates: - * Merge: '/Merge' - * SignalConversion generated from: '/stepIn1' - */ - rtB.Merge_l = rtb_Switch_hx; - - /* End of Outputs for SubSystem: '/If Action Subsystem3' */ - } - - /* End of If: '/If' */ - /* End of Outputs for SubSystem: '/Initial CPOS Min' */ - break; - - case 3: - /* Outputs for IfAction SubSystem: '/Normal Mode' incorporates: - * ActionPort: '/Action Port' - */ - /* If: '/If1' incorporates: - * DataStoreRead: '/Data Store Read1' - * DataStoreWrite: '/Data Store Write1' - * SignalConversion generated from: '/Bus Selector' - */ - if ((Actuator_Ch0_Status_Model.Busy == 0) && - (Actuator_Ch0_Status_Model.Error_Connect == 0)) { - /* Outputs for IfAction SubSystem: '/If Action Subsystem2' incorporates: - * ActionPort: '/Action Port' - */ - for (i = 0; i < 9; i++) { - /* DataStoreWrite: '/Data Store Write' */ - rtDW.MODE_private[i] = 0U; - - /* DataStoreWrite: '/Data Store Write1' */ - rtDW.COM_private[i] = 1U; - } - - /* Merge: '/Merge' incorporates: - * Constant: '/Constant' - * Sum: '/step inc' - */ - rtB.Merge_l = (int8_t)(rtb_Switch_hx + 1); - - /* MATLAB Function: '/Write' incorporates: - * DataStoreRead: '/Data Store Read3' - */ - /* : if(LOGGER == 2) */ - if (rtDW.LOGGER_LIN == 2.0) { - /* : fprintf('[LIN 1] Normal Mode\n'); */ - printf("[LIN 1] Normal Mode\n"); - fflush(stdout); - } - - /* End of MATLAB Function: '/Write' */ - /* End of Outputs for SubSystem: '/If Action Subsystem2' */ - } else { - /* Outputs for IfAction SubSystem: '/If Action Subsystem3' incorporates: - * ActionPort: '/Action Port' - */ - /* Merge: '/Merge' incorporates: - * SignalConversion generated from: '/stepIn' - */ - rtB.Merge_l = rtb_Switch_hx; - - /* End of Outputs for SubSystem: '/If Action Subsystem3' */ - } - - /* End of If: '/If1' */ - /* End of Outputs for SubSystem: '/Normal Mode' */ - break; - - case 4: - /* Outputs for IfAction SubSystem: '/Move to position Min' incorporates: - * ActionPort: '/Action Port' - */ - /* If: '/If1' incorporates: - * DataStoreRead: '/Data Store Read1' - * DataStoreWrite: '/Data Store Write1' - * SignalConversion generated from: '/Bus Selector' - */ - if ((Actuator_Ch0_Status_Model.Busy == 0) && - (Actuator_Ch0_Status_Model.Error_Connect == 0)) { - /* Outputs for IfAction SubSystem: '/If Action Subsystem2' incorporates: - * ActionPort: '/Action Port' - */ - for (i = 0; i < 9; i++) { - /* DataStoreWrite: '/Data Store Write4' incorporates: - * Constant: '/Constant1' - */ - rtDW.Autos_private[i] = 1U; - - /* DataStoreWrite: '/Data Store Write2' incorporates: - * Constant: '/Constant10' - */ - rtDW.Stall_private[i] = 1U; - - /* DataStoreWrite: '/Data Store Write3' */ - rtDW.Lnoise_private[i] = 0U; - - /* DataStoreWrite: '/Data Store Write5' incorporates: - * Constant: '/Constant2' - */ - rtDW.Speed_private[i] = 3U; - - /* DataStoreWrite: '/Data Store Write6' incorporates: - * Constant: '/Constant3' - */ - rtDW.Coils_private[i] = 3U; - - /* DataStoreWrite: '/Data Store Write' */ - rtDW.POS_private[i] = 0U; - - /* DataStoreWrite: '/Data Store Write1' incorporates: - * Constant: '/Constant9' - */ - rtDW.COM_private[i] = 3U; - } - - /* Merge: '/Merge' incorporates: - * Constant: '/Constant' - * Sum: '/step inc' - */ - rtB.Merge_l = (int8_t)(rtb_Switch_hx + 1); - - /* MATLAB Function: '/Write' incorporates: - * DataStoreRead: '/Data Store Read3' - */ - /* : if(LOGGER == 2) */ - if (rtDW.LOGGER_LIN == 2.0) { - /* : fprintf('[LIN 1] Move to position Min\n'); */ - printf("[LIN 1] Move to position Min\n"); - fflush(stdout); - } - - /* End of MATLAB Function: '/Write' */ - /* End of Outputs for SubSystem: '/If Action Subsystem2' */ - } else { - /* Outputs for IfAction SubSystem: '/If Action Subsystem3' incorporates: - * ActionPort: '/Action Port' - */ - /* Merge: '/Merge' incorporates: - * SignalConversion generated from: '/stepIn' - */ - rtB.Merge_l = rtb_Switch_hx; - - /* End of Outputs for SubSystem: '/If Action Subsystem3' */ - } - - /* End of If: '/If1' */ - /* End of Outputs for SubSystem: '/Move to position Min' */ - break; - - case 5: - /* Outputs for IfAction SubSystem: '/Check Stall Min' incorporates: - * ActionPort: '/Action Port' - */ - /* Logic: '/Logical Operator3' incorporates: - * DataStoreRead: '/Data Store Read1' - * DataStoreRead: '/Data Store Read' - * Logic: '/Logical Operator1' - * Logic: '/Logical Operator2' - * RelationalOperator: '/Relational Operator' - * RelationalOperator: '/Relational Operator1' - */ - for (i = 0; i < 9; i++) { - rtb_LogicalOperator3_a0[i] = - ((Actuator_Ch0_Status_Model.in_Act_Stall_Slave[i] == 1) || - (Actuator_Ch0_Status_Model.in_CPOS_ALL[i] == 0) || - (rtDW.ErrorCalibration_private[i] == 0)); - } - - /* End of Logic: '/Logical Operator3' */ - - /* Logic: '/Logical Operator' incorporates: - * Logic: '/Logical Operator3' - */ - rtb_LogicalOperator1 = rtb_LogicalOperator3_a0[0]; - for (q0 = 0; q0 < 8; q0++) { - rtb_LogicalOperator1 = (rtb_LogicalOperator1 && rtb_LogicalOperator3_a0[q0 - + 1]); - } - - /* If: '/If2' incorporates: - * DataStoreRead: '/Data Store Read1' - * DataStoreWrite: '/Data Store Write1' - * DataTypeConversion: '/Data Type Conversion' - * DataTypeConversion: '/Data Type Conversion1' - * Logic: '/Logical Operator' - * SignalConversion generated from: '/Bus Selector' - */ - if ((Actuator_Ch0_Status_Model.Busy == 0) && - (Actuator_Ch0_Status_Model.Error_Connect == 0) && rtb_LogicalOperator1) - { - /* Outputs for IfAction SubSystem: '/If Action Subsystem2' incorporates: - * ActionPort: '/Action Port' - */ - /* DataStoreWrite: '/Data Store Write1' */ - for (q0 = 0; q0 < 9; q0++) { - /* Switch: '/Switch' incorporates: - * DataStoreRead: '/Data Store Read1' - */ - if (rtDW.ErrorCalibration_private[q0] != 0) { - rtDW.MinPositionCh0_private[q0] = - Actuator_Ch0_Status_Model.in_CPOS_ALL[q0]; - } - - /* End of Switch: '/Switch' */ - } - - /* End of DataStoreWrite: '/Data Store Write1' */ - - /* Merge: '/Merge' incorporates: - * Constant: '/Constant' - * Sum: '/step inc' - */ - rtB.Merge_l = (int8_t)(rtb_Switch_hx + 1); - - /* MATLAB Function: '/Write' incorporates: - * DataStoreRead: '/Data Store Read3' - */ - /* : if(LOGGER == 2) */ - if (rtDW.LOGGER_LIN == 2.0) { - /* : fprintf('[LIN 1] Check Stall Min\n'); */ - printf("[LIN 1] Check Stall Min\n"); - fflush(stdout); - } - - /* End of MATLAB Function: '/Write' */ - /* End of Outputs for SubSystem: '/If Action Subsystem2' */ - } else { - /* Outputs for IfAction SubSystem: '/If Action Subsystem3' incorporates: - * ActionPort: '/Action Port' - */ - /* Merge: '/Merge' incorporates: - * SignalConversion generated from: '/stepIn' - */ - rtB.Merge_l = rtb_Switch_hx; - - /* End of Outputs for SubSystem: '/If Action Subsystem3' */ - } - - /* End of If: '/If2' */ - /* End of Outputs for SubSystem: '/Check Stall Min' */ - break; - - case 6: - /* Outputs for IfAction SubSystem: '/Initial CPOS Max' incorporates: - * ActionPort: '/Action Port' - */ - /* If: '/If1' incorporates: - * DataStoreRead: '/Data Store Read1' - * DataStoreWrite: '/Data Store Write1' - * SignalConversion generated from: '/Bus Selector' - */ - if ((Actuator_Ch0_Status_Model.Busy == 0) && - (Actuator_Ch0_Status_Model.Error_Connect == 0)) { - /* Outputs for IfAction SubSystem: '/If Action Subsystem2' incorporates: - * ActionPort: '/Action Port' - */ - for (i = 0; i < 9; i++) { - /* DataStoreWrite: '/Data Store Write1' */ - rtDW.COM_private[i] = 2U; - - /* DataStoreWrite: '/Data Store Write' */ - rtDW.POS_private[i] = 0U; - } - - /* Merge: '/Merge' incorporates: - * Constant: '/Constant' - * Sum: '/step inc' - */ - rtB.Merge_l = (int8_t)(rtb_Switch_hx + 1); - - /* MATLAB Function: '/Write' incorporates: - * DataStoreRead: '/Data Store Read3' - */ - /* : if(LOGGER == 2) */ - if (rtDW.LOGGER_LIN == 2.0) { - /* : fprintf('[LIN 1] Initial CPOS Max\n'); */ - printf("[LIN 1] Initial CPOS Max\n"); - fflush(stdout); - } - - /* End of MATLAB Function: '/Write' */ - /* End of Outputs for SubSystem: '/If Action Subsystem2' */ - } else { - /* Outputs for IfAction SubSystem: '/If Action Subsystem3' incorporates: - * ActionPort: '/Action Port' - */ - /* Merge: '/Merge' incorporates: - * SignalConversion generated from: '/stepIn' - */ - rtB.Merge_l = rtb_Switch_hx; - - /* End of Outputs for SubSystem: '/If Action Subsystem3' */ - } - - /* End of If: '/If1' */ - /* End of Outputs for SubSystem: '/Initial CPOS Max' */ - break; - - case 7: - /* Outputs for IfAction SubSystem: '/Move to position Max' incorporates: - * ActionPort: '/Action Port' - */ - /* If: '/If1' incorporates: - * DataStoreRead: '/Data Store Read1' - * DataStoreWrite: '/Data Store Write1' - * SignalConversion generated from: '/Bus Selector' - */ - if ((Actuator_Ch0_Status_Model.Busy == 0) && - (Actuator_Ch0_Status_Model.Error_Connect == 0)) { - /* Outputs for IfAction SubSystem: '/If Action Subsystem2' incorporates: - * ActionPort: '/Action Port' - */ - for (i = 0; i < 9; i++) { - /* DataStoreWrite: '/Data Store Write4' incorporates: - * Constant: '/Constant1' - */ - rtDW.Autos_private[i] = 1U; - - /* DataStoreWrite: '/Data Store Write2' incorporates: - * Constant: '/Constant10' - */ - rtDW.Stall_private[i] = 1U; - - /* DataStoreWrite: '/Data Store Write3' */ - rtDW.Lnoise_private[i] = 0U; - - /* DataStoreWrite: '/Data Store Write5' incorporates: - * Constant: '/Constant2' - */ - rtDW.Speed_private[i] = 3U; - - /* DataStoreWrite: '/Data Store Write' */ - rtDW.POS_private[i] = 6000U; - - /* DataStoreWrite: '/Data Store Write1' incorporates: - * Constant: '/Constant9' - */ - rtDW.COM_private[i] = 3U; - - /* DataStoreWrite: '/Data Store Write6' */ - rtDW.Coils_private[i] = 0U; - } - - /* Merge: '/Merge' incorporates: - * Constant: '/Constant' - * Sum: '/step inc' - */ - rtB.Merge_l = (int8_t)(rtb_Switch_hx + 1); - - /* MATLAB Function: '/Write' incorporates: - * DataStoreRead: '/Data Store Read3' - */ - /* : if(LOGGER == 2) */ - if (rtDW.LOGGER_LIN == 2.0) { - /* : fprintf('[LIN 1] Move to position Max\n'); */ - printf("[LIN 1] Move to position Max\n"); - fflush(stdout); - } - - /* End of MATLAB Function: '/Write' */ - /* End of Outputs for SubSystem: '/If Action Subsystem2' */ - } else { - /* Outputs for IfAction SubSystem: '/If Action Subsystem3' incorporates: - * ActionPort: '/Action Port' - */ - /* Merge: '/Merge' incorporates: - * SignalConversion generated from: '/stepIn' - */ - rtB.Merge_l = rtb_Switch_hx; - - /* End of Outputs for SubSystem: '/If Action Subsystem3' */ - } - - /* End of If: '/If1' */ - /* End of Outputs for SubSystem: '/Move to position Max' */ - break; - - case 8: - /* Outputs for IfAction SubSystem: '/Check Stall Max' incorporates: - * ActionPort: '/Action Port' - */ - /* Logic: '/Logical Operator3' incorporates: - * DataStoreRead: '/Data Store Read1' - * DataStoreRead: '/Data Store Read' - * Logic: '/Logical Operator' - * Logic: '/Logical Operator2' - * RelationalOperator: '/Relational Operator' - * RelationalOperator: '/Relational Operator1' - */ - for (i = 0; i < 9; i++) { - rtb_LogicalOperator3_a0[i] = - ((Actuator_Ch0_Status_Model.in_Act_Stall_Slave[i] == 1) || - (Actuator_Ch0_Status_Model.in_CPOS_ALL[i] == 6000) || - (rtDW.ErrorCalibration_private[i] == 0)); - } - - /* End of Logic: '/Logical Operator3' */ - - /* Logic: '/Logical Operator1' incorporates: - * Logic: '/Logical Operator3' - */ - rtb_LogicalOperator1 = rtb_LogicalOperator3_a0[0]; - for (q0 = 0; q0 < 8; q0++) { - rtb_LogicalOperator1 = (rtb_LogicalOperator1 && rtb_LogicalOperator3_a0[q0 - + 1]); - } - - /* If: '/If2' incorporates: - * DataStoreRead: '/Data Store Read1' - * DataStoreWrite: '/Data Store Write1' - * DataTypeConversion: '/Data Type Conversion' - * DataTypeConversion: '/Data Type Conversion1' - * Logic: '/Logical Operator1' - * SignalConversion generated from: '/Bus Selector' - */ - if ((Actuator_Ch0_Status_Model.Busy == 0) && - (Actuator_Ch0_Status_Model.Error_Connect == 0) && rtb_LogicalOperator1) - { - /* Outputs for IfAction SubSystem: '/If Action Subsystem2' incorporates: - * ActionPort: '/Action Port' - */ - /* DataStoreWrite: '/Data Store Write1' */ - for (q0 = 0; q0 < 9; q0++) { - /* Switch: '/Switch' incorporates: - * DataStoreRead: '/Data Store Read1' - */ - if (rtDW.ErrorCalibration_private[q0] != 0) { - rtDW.MaxPositionCh0_private[q0] = - Actuator_Ch0_Status_Model.in_CPOS_ALL[q0]; - } - - /* End of Switch: '/Switch' */ - } - - /* End of DataStoreWrite: '/Data Store Write1' */ - - /* Merge: '/Merge' incorporates: - * Constant: '/Constant' - * Sum: '/step inc' - */ - rtB.Merge_l = (int8_t)(rtb_Switch_hx + 1); - - /* MATLAB Function: '/Write' incorporates: - * DataStoreRead: '/Data Store Read3' - */ - /* : if(LOGGER == 2) */ - if (rtDW.LOGGER_LIN == 2.0) { - /* : fprintf('[LIN 1] Check Stall MAX\n'); */ - printf("[LIN 1] Check Stall MAX\n"); - fflush(stdout); - } - - /* End of MATLAB Function: '/Write' */ - /* End of Outputs for SubSystem: '/If Action Subsystem2' */ - } else { - /* Outputs for IfAction SubSystem: '/If Action Subsystem3' incorporates: - * ActionPort: '/Action Port' - */ - /* Merge: '/Merge' incorporates: - * SignalConversion generated from: '/stepIn' - */ - rtB.Merge_l = rtb_Switch_hx; - - /* End of Outputs for SubSystem: '/If Action Subsystem3' */ - } - - /* End of If: '/If2' */ - /* End of Outputs for SubSystem: '/Check Stall Max' */ - break; - - case 9: - /* Outputs for IfAction SubSystem: '/Homing' incorporates: - * ActionPort: '/Action Port' - */ - /* Product: '/Divide1' incorporates: - * Constant: '/ACT1' - * DataStoreRead: '/MAX ACT1T ' - */ - for (i = 0; i < 9; i++) { - rtb_Divide1_gdi[i] = (double)rtDW.MaxPositionCh0_private[i] / (double) - rtConstP.ACT1_Value[i]; - } - - /* End of Product: '/Divide1' */ - - /* SwitchCase: '/Switch Case' incorporates: - * DataStoreRead: '/Data Store Read4' - */ - switch (rtDW.stepHoming_private) { - case 0: - /* Outputs for IfAction SubSystem: '/Switch Case Action Subsystem' incorporates: - * ActionPort: '/Action Port' - */ - for (i = 0; i < 9; i++) { - /* RelationalOperator: '/Compare' */ - rtb_Divide1 = rtb_Divide1_gdi[i]; - - /* Logic: '/Logical Operator' incorporates: - * Constant: '/Constant' - * Constant: '/Constant' - * RelationalOperator: '/Compare' - * RelationalOperator: '/Compare' - */ - rtb_LogicalOperator1 = ((rtb_Divide1 >= 0.9) && (rtb_Divide1 <= 1.1)); - rtb_LogicalOperator3_a0[i] = rtb_LogicalOperator1; - - /* DataTypeConversion: '/Data Type Conversion' incorporates: - * DataStoreRead: '/Data Store Read' - * DataStoreWrite: '/Data Store Write' - * Logic: '/Logical Operator' - * Logic: '/Logical Operator1' - */ - rtDW.ErrorCalibration_private[i] = (uint8_t)((!rtb_LogicalOperator1) && - (rtDW.ErrorCalibration_private[i] != 0)); - } - - /* MATLAB Function: '/MAX POSITION' incorporates: - * DataStoreRead: '/Data Store Read5' - * DataStoreRead: '/MIN ACT1T 1' - * Logic: '/Logical Operator2' - */ - /* : if(LOGGER>0) */ - if (rtDW.LOGGER_LIN > 0.0) { - /* : fprintf("[LIN 1] Homing 0\n"); */ - printf("[LIN 1] Homing 0\n"); - fflush(stdout); - - /* : for i = 1:numel(MAX) */ - for (i = 0; i < 9; i++) { - /* : fprintf('[LIN 1] ACT%d MAX = %d KOEF = %f Callibration = %d \n', int16(i), int16(MAX(i)), KOEF(i), int16(ERRORS(i))); */ - printf("[LIN 1] ACT%d MAX = %d KOEF = %f Callibration = %d \n", - (int16_t)(i + 1), rtDW.MaxPositionCh0_private[i], - rtb_Divide1_gdi[i], (int16_t)!rtb_LogicalOperator3_a0[i]); - fflush(stdout); - } - } - - /* End of MATLAB Function: '/MAX POSITION' */ - - /* Logic: '/Logical Operator1' */ - rtb_LogicalOperator1 = rtb_LogicalOperator3_a0[0]; - for (q0 = 0; q0 < 8; q0++) { - rtb_LogicalOperator1 = (rtb_LogicalOperator1 && - rtb_LogicalOperator3_a0[q0 + 1]); - } - - /* Switch: '/Switch' incorporates: - * Logic: '/Logical Operator1' - */ - if (rtb_LogicalOperator1) { - /* Merge: '/Merge' incorporates: - * Constant: '/Constant1' - */ - rtB.Merge_h1 = 4; - } else { - /* Merge: '/Merge' incorporates: - * Constant: '/Constant' - */ - rtB.Merge_h1 = 1; - } - - /* End of Switch: '/Switch' */ - /* End of Outputs for SubSystem: '/Switch Case Action Subsystem' */ - break; - - case 1: - /* Outputs for IfAction SubSystem: '/Switch Case Action Subsystem1' incorporates: - * ActionPort: '/Action Port' - */ - /* RelationalOperator: '/Compare' incorporates: - * Constant: '/Constant' - */ - for (i = 0; i < 9; i++) { - rtb_LogicalOperator3_a0[i] = (rtb_Divide1_gdi[i] > 1.5); - } - - /* End of RelationalOperator: '/Compare' */ - - /* Logic: '/Logical Operator' */ - rtb_LogicalOperator1 = rtb_LogicalOperator3_a0[0]; - for (q0 = 0; q0 < 8; q0++) { - rtb_LogicalOperator1 = (rtb_LogicalOperator1 || - rtb_LogicalOperator3_a0[q0 + 1]); - } - - /* DataTypeConversion: '/Data Type Conversion' incorporates: - * DataStoreWrite: '/Data Store Write1' - * Logic: '/Logical Operator' - */ - rtDW.CCU_ActuatorErrF_Stat_private = rtb_LogicalOperator1; - for (i = 0; i < 9; i++) { - /* DataTypeConversion: '/Data Type Conversion1' incorporates: - * DataStoreWrite: '/Data Store Write2' - */ - rtb_LogicalOperator1 = rtb_LogicalOperator3_a0[i]; - rtDW.COM_private[i] = rtb_LogicalOperator1; - - /* DataTypeConversion: '/Data Type Conversion2' incorporates: - * DataStoreRead: '/Data Store Read' - * DataStoreWrite: '/Data Store Write3' - * Logic: '/Logical Operator1' - */ - rtDW.ErrorActuator[i] = (uint8_t)(rtb_LogicalOperator1 || - (rtDW.ErrorActuator[i] != 0)); - - /* DataStoreWrite: '/Data Store Write' */ - rtDW.MODE_private[i] = 2U; - } - - /* MATLAB Function: '/Write ERROR' incorporates: - * DataStoreRead: '/Data Store Read6' - */ - /* : if(LOGGER>=0) */ - if (rtDW.LOGGER_LIN >= 0.0) { - /* : for i = 1:numel(ErrCallibration) */ - for (i = 0; i < 9; i++) { - /* : if ErrCallibration(i) == 1 */ - if (rtb_LogicalOperator3_a0[i]) { - /* : fprintf('[LIN 1] Failure with actuator #%d\n', int16(i)); */ - printf("[LIN 1] Failure with actuator #%d\n", (int16_t)(i + 1)); - fflush(stdout); - } - } - } - - /* End of MATLAB Function: '/Write ERROR' */ - for (i = 0; i < 9; i++) { - /* Logic: '/Logical Operator1' */ - rtb_LogicalOperator1 = rtb_LogicalOperator3_a0[i]; - - /* DataTypeConversion: '/Data Type Conversion' incorporates: - * DataStoreRead: '/Data Store Read' - * DataStoreWrite: '/Data Store Write' - * Logic: '/Logical Operator' - * Logic: '/Logical Operator1' - */ - rtDW.ErrorCalibration_private[i] = (uint8_t)((!rtb_LogicalOperator1) && - (rtDW.ErrorCalibration_private[i] != 0)); - - /* DataStoreWrite: '/Data Store Write' incorporates: - * DataTypeConversion: '/Data Type Conversion' - */ - rtDW.dtc_state_error_model[i + 54] = rtb_LogicalOperator1; - } - - /* DataStoreWrite: '/Data Store Write' incorporates: - * Constant: '/Constant' - */ - rtDW.stepSig_private = 1; - - /* MATLAB Function: '/MAX POSITION' incorporates: - * DataStoreRead: '/Data Store Read5' - * DataStoreRead: '/MIN ACT1T 1' - * DataStoreWrite: '/Data Store Write' - */ - /* : if(LOGGER>0) */ - if (rtDW.LOGGER_LIN > 0.0) { - /* : fprintf("[LIN 1] Homing 1. Start Callibration \n"); */ - printf("[LIN 1] Homing 1. Start Callibration \n"); - fflush(stdout); - - /* : for i = 1:numel(MAX) */ - for (i = 0; i < 9; i++) { - /* : if(ERRORS(i)==1) */ - if (rtDW.ErrorCalibration_private[i] == 1) { - /* : fprintf('[LIN 1] ACT%d MAX = %d KOEF = %f Callibration = %d \n', int16(i), int16(MAX(i)), KOEF(i), int16(ERRORS(i))); */ - printf("[LIN 1] ACT%d MAX = %d KOEF = %f Callibration = %d \n", - (int16_t)(i + 1), rtDW.MaxPositionCh0_private[i], - rtb_Divide1_gdi[i], (int16_t)rtDW.ErrorCalibration_private[i]); - fflush(stdout); - } - } - } - - /* End of MATLAB Function: '/MAX POSITION' */ - - /* Logic: '/Logical Operator2' incorporates: - * DataStoreWrite: '/Data Store Write' - */ - rtb_LogicalOperator1 = (rtDW.ErrorCalibration_private[0] != 0); - for (q0 = 0; q0 < 8; q0++) { - rtb_LogicalOperator1 = (rtb_LogicalOperator1 || - (rtDW.ErrorCalibration_private[q0 + 1] != 0)); - } - - /* Switch: '/Switch' incorporates: - * Logic: '/Logical Operator2' - */ - if (rtb_LogicalOperator1) { - /* Merge: '/Merge' incorporates: - * Constant: '/Constant1' - */ - rtB.Merge_h1 = 2; - } else { - /* Merge: '/Merge' incorporates: - * Constant: '/Constant1' - */ - rtB.Merge_h1 = 4; - } - - /* End of Switch: '/Switch' */ - /* End of Outputs for SubSystem: '/Switch Case Action Subsystem1' */ - break; - - case 2: - /* Outputs for IfAction SubSystem: '/Switch Case Action Subsystem2' incorporates: - * ActionPort: '/Action Port' - */ - for (i = 0; i < 9; i++) { - /* RelationalOperator: '/Compare' */ - rtb_Divide1 = rtb_Divide1_gdi[i]; - - /* Logic: '/Logical Operator3' incorporates: - * Constant: '/Constant' - * Constant: '/Constant' - * DataStoreRead: '/Data Store Read' - * Logic: '/Logical Operator1' - * Logic: '/Logical Operator4' - * RelationalOperator: '/Compare' - * RelationalOperator: '/Compare' - */ - rtb_LogicalOperator1 = (((rtb_Divide1 < 0.97) || (rtb_Divide1 > 1.03)) && - (rtDW.ErrorCalibration_private[i] != 0)); - rtb_LogicalOperator3_a0[i] = rtb_LogicalOperator1; - - /* DataTypeConversion: '/Data Type Conversion' incorporates: - * DataStoreWrite: '/Data Store Write1' - */ - rtDW.ErrorCalibration_private[i] = rtb_LogicalOperator1; - } - - /* MATLAB Function: '/MAX POSITION' incorporates: - * DataStoreRead: '/Data Store Read5' - * DataStoreRead: '/MIN ACT1T 1' - */ - /* : if(LOGGER>0) */ - if (rtDW.LOGGER_LIN > 0.0) { - /* : fprintf("[LIN 1] Homing 3. Callibration \n"); */ - printf("[LIN 1] Homing 3. Callibration \n"); - fflush(stdout); - - /* : for i = 1:numel(MAX) */ - for (i = 0; i < 9; i++) { - /* : if(ERRORS(i)==1) */ - if (rtb_LogicalOperator3_a0[i]) { - /* : fprintf('[LIN 1] ACT%d MAX = %d KOEF = %f Callibration = %d \n', int16(i), int16(MAX(i)), KOEF(i), int16(ERRORS(i))); */ - printf("[LIN 1] ACT%d MAX = %d KOEF = %f Callibration = %d \n", - (int16_t)(i + 1), rtDW.MaxPositionCh0_private[i], - rtb_Divide1_gdi[i], 1); - fflush(stdout); - } - } - } - - /* End of MATLAB Function: '/MAX POSITION' */ - - /* Logic: '/Logical Operator2' */ - rtb_LogicalOperator1 = rtb_LogicalOperator3_a0[0]; - for (q0 = 0; q0 < 8; q0++) { - rtb_LogicalOperator1 = (rtb_LogicalOperator1 || - rtb_LogicalOperator3_a0[q0 + 1]); - } - - /* Switch: '/Switch' incorporates: - * Logic: '/Logical Operator2' - */ - if (rtb_LogicalOperator1) { - /* Merge: '/Merge' incorporates: - * Constant: '/Constant3' - */ - rtB.Merge_h1 = 3; - } else { - /* Merge: '/Merge' incorporates: - * Constant: '/Constant1' - */ - rtB.Merge_h1 = 4; - } - - /* End of Switch: '/Switch' */ - /* End of Outputs for SubSystem: '/Switch Case Action Subsystem2' */ - break; - - case 3: - /* Outputs for IfAction SubSystem: '/Switch Case Action Subsystem3' incorporates: - * ActionPort: '/Action Port' - */ - /* MATLAB Function: '/MAX POSITION' incorporates: - * DataStoreRead: '/Data Store Read1' - * DataStoreRead: '/Data Store Read5' - */ - /* : if(LOGGER>1) */ - if (rtDW.LOGGER_LIN > 1.0) { - /* : fprintf("[LIN 1] Homing 3. Start Time on step %d\n",int16(step)); */ - rtb_Divide1 = rt_roundd(rtDW.ErrorHomming_private); - if (rtb_Divide1 < 32768.0) { - if (rtb_Divide1 >= -32768.0) { - AMB = (int16_t)rtb_Divide1; - } else { - AMB = INT16_MIN; - } - } else { - AMB = INT16_MAX; - } - - printf("[LIN 1] Homing 3. Start Time on step %d\n", AMB); - fflush(stdout); - } - - /* End of MATLAB Function: '/MAX POSITION' */ - - /* If: '/If' incorporates: - * DataStoreRead: '/Data Store Read1' - */ - if (rtDW.ErrorHomming_private < 10.0) { - /* Outputs for IfAction SubSystem: '/If Action Subsystem' incorporates: - * ActionPort: '/Action Port' - */ - /* MATLAB Function: '/MATLAB Function' incorporates: - * DataStoreRead: '/Data Store Read' - * DataStoreRead: '/Data Store Read1' - */ - MATLABFunction(rtDW.Start_timer_i, rtDW.t_now, &rtb_dt_ih, - &rtDW.sf_MATLABFunction); - - /* MATLAB Function: '/MAX POSITION' incorporates: - * DataStoreRead: '/Data Store Read5' - */ - /* : if(LOGGER>1) */ - if (rtDW.LOGGER_LIN > 1.0) { - /* : fprintf("[LIN 1] Homing 3. Start TIme dt = %d \n",int32(data)); */ - rtb_dt_fa = rtb_dt_ih; - if (rtb_dt_ih > 2147483647U) { - rtb_dt_fa = 2147483647U; - } - - printf("[LIN 1] Homing 3. Start TIme dt = %d \n", (int32_t)rtb_dt_fa); - fflush(stdout); - } - - /* End of MATLAB Function: '/MAX POSITION' */ - - /* If: '/If' */ - if (rtb_dt_ih > 30000U) { - /* Outputs for IfAction SubSystem: '/If Action Subsystem' incorporates: - * ActionPort: '/Action Port' - */ - /* Merge: '/Merge' */ - IfActionSubsystem(&rtB.Merge_h1, &rtDW.ErrorHomming_private, - &rtDW.Start_timer_i, &rtDW.stepSig_private); - - /* End of Outputs for SubSystem: '/If Action Subsystem' */ - } else { - /* Outputs for IfAction SubSystem: '/If Action Subsystem1' incorporates: - * ActionPort: '/Action Port' - */ - /* Merge: '/Merge' */ - IfActionSubsystem1(&rtB.Merge_h1, &rtDW.Start_timer_i); - - /* End of Outputs for SubSystem: '/If Action Subsystem1' */ - } - - /* End of If: '/If' */ - /* End of Outputs for SubSystem: '/If Action Subsystem' */ - } else { - /* Outputs for IfAction SubSystem: '/If Action Subsystem1' incorporates: - * ActionPort: '/Action Port' - */ - IfActionSubsystem1_d(&rtB.Merge_h1, &rtDW.CCU_ActuatorErrF_Stat_private, - rtDW.COM_private, rtDW.ErrorActuator, - rtDW.ErrorCalibration_private, &rtDW.LOGGER_LIN, - rtDW.MODE_private, rtDW.dtc_state_error_model); - - /* End of Outputs for SubSystem: '/If Action Subsystem1' */ - } - - /* End of If: '/If' */ - /* End of Outputs for SubSystem: '/Switch Case Action Subsystem3' */ - break; - - case 4: - /* Outputs for IfAction SubSystem: '/Switch Case Action Subsystem4' incorporates: - * ActionPort: '/Action Port' - */ - /* DataStoreWrite: '/Data Store Write' incorporates: - * Constant: '/Constant' - */ - rtDW.stepSig_private = 10; - - /* Merge: '/Merge' incorporates: - * Constant: '/Constant1' - * SignalConversion generated from: '/step' - */ - rtB.Merge_h1 = 5; - - /* MATLAB Function: '/MAX POSITION' incorporates: - * DataStoreRead: '/Data Store Read5' - */ - /* : if(LOGGER>0) */ - if (rtDW.LOGGER_LIN > 0.0) { - /* : fprintf("[LIN 1] Homing. Callibration successful \n"); */ - printf("[LIN 1] Homing. Callibration successful \n"); - fflush(stdout); - } - - /* End of MATLAB Function: '/MAX POSITION' */ - /* End of Outputs for SubSystem: '/Switch Case Action Subsystem4' */ - break; - } - - /* End of SwitchCase: '/Switch Case' */ - - /* DataStoreWrite: '/Data Store Write2' */ - rtDW.stepHoming_private = rtB.Merge_h1; - - /* Merge: '/Merge' incorporates: - * DataStoreRead: '/Data Store Read7' - */ - rtB.Merge_l = rtDW.stepSig_private; - - /* End of Outputs for SubSystem: '/Homing' */ - break; - } - - /* End of SwitchCase: '/Switch Case' */ - - /* DataStoreWrite: '/Finish write stepSig' */ - rtDW.stepSig_private = rtB.Merge_l; - for (i = 0; i < 9; i++) { - /* BusCreator: '/Bus Creator' incorporates: - * DataStoreRead: '/Data Store Read' - * DataStoreRead: '/Data Store Read1' - * DataStoreRead: '/Data Store Read2' - * DataStoreRead: '/Data Store Read3' - * DataStoreRead: '/Data Store Read4' - * DataStoreRead: '/Data Store Read5' - * DataStoreRead: '/Data Store Read6' - * DataStoreRead: '/Data Store Read7' - * DataStoreRead: '/Data Store Read8' - * DataStoreWrite: '/Data Store Write' - */ - Actuator_Ch0_Command_Model.POS[i] = rtDW.POS_private[i]; - Actuator_Ch0_Command_Model.BUS_ADR[i] = rtDW.BUS_ADR_private[i]; - Actuator_Ch0_Command_Model.MODE[i] = rtDW.MODE_private[i]; - Actuator_Ch0_Command_Model.COM[i] = rtDW.COM_private[i]; - Actuator_Ch0_Command_Model.Stall_SET[i] = rtDW.Stall_private[i]; - Actuator_Ch0_Command_Model.Lnoise_SET[i] = rtDW.Lnoise_private[i]; - Actuator_Ch0_Command_Model.Autos_SET[i] = rtDW.Autos_private[i]; - Actuator_Ch0_Command_Model.Speed_SET[i] = rtDW.Speed_private[i]; - Actuator_Ch0_Command_Model.Coils_Stop_SET[i] = rtDW.Coils_private[i]; - - /* RelationalOperator: '/Compare' incorporates: - * Constant: '/Constant' - * DataStoreRead: '/Data Store Read2' - */ - rtb_LogicalOperator3_a0[i] = (rtDW.ErrorCalibration_private[i] == 0); - } - - /* Logic: '/Logical Operator' */ - rtb_LogicalOperator1 = rtb_LogicalOperator3_a0[0]; - for (q0 = 0; q0 < 8; q0++) { - rtb_LogicalOperator1 = (rtb_LogicalOperator1 || rtb_LogicalOperator3_a0[q0 + - 1]); - } - - for (i = 0; i < 9; i++) { - /* Switch: '/Switch1' incorporates: - * Constant: '/Constant' - * Constant: '/Constant3' - * DataStoreRead: '/Data Store Read2' - * DataStoreWrite: '/Data Store Write7' - * Logic: '/Logical Operator' - * Product: '/Product' - */ - if (rtb_LogicalOperator1) { - rtDW.BUS_ADR_private[i] = (uint8_t)((uint32_t) - rtDW.ErrorCalibration_private[i] * rtConstP.Constant3_Value[i]); - } else { - rtDW.BUS_ADR_private[i] = 0U; - } - - /* End of Switch: '/Switch1' */ - - /* DataStoreWrite: '/Data Store Write' */ - rtDW.COM_private[i] = 0U; - - /* Switch: '/Switch' incorporates: - * Constant: '/Constant' - * DataStoreRead: '/Data Store Read1' - * DataStoreRead: '/Data Store Read' - * Gain: '/Gain' - * Product: '/Divide' - */ - if (rtDW.MaxPositionCh1_private[i] != 0) { - q0 = 100 * (int16_t)div_nde_s32_floor - (Actuator_Ch1_Status_Model.in_CPOS_ALL[i], rtDW.MaxPositionCh1_private[i]); - } else { - q0 = 0; - } - - /* End of Switch: '/Switch' */ - - /* Saturate: '/Saturation' */ - if (q0 > 100) { - /* DataStoreWrite: '/Data Store Write2' */ - rtb_DataTypeConversion_c1[i] = 100U; - } else if (q0 < 0) { - /* DataStoreWrite: '/Data Store Write2' */ - rtb_DataTypeConversion_c1[i] = 0U; - } else { - /* DataStoreWrite: '/Data Store Write2' */ - rtb_DataTypeConversion_c1[i] = (uint8_t)q0; - } - - /* End of Saturate: '/Saturation' */ - } - - /* Switch: '/Switch' incorporates: - * Constant: '/Constant1' - * DataStoreRead: '/Data Store Read' - * DataStoreRead: '/Data Store Read2' + rtDW.FIU_SET_FR = (uint16_t)((0.5 * (double) + rtDW.FIU_CCU1_MODEL.FIU_TargetTempFR_Val_ro + 15.5) * 10.0); + + /* DataTypeConversion: '/Data Type Conversion1' incorporates: + * Bias: '/Bias' + * DataStoreRead: '/Data Store Read2' + * DataStoreWrite: '/Data Store Write1' + * DataTypeConversion: '/Data Type Conversion' + * Gain: '/Gain' + * Gain: '/Gain1' */ - if (rtDW.stepSig_private_j > 0) { - rtb_Switch_hx = rtDW.stepSig_private_j; - } else { - rtb_Switch_hx = 1; - } - - /* End of Switch: '/Switch' */ - - /* SwitchCase: '/Switch Case' */ - switch (rtb_Switch_hx) { - case 1: - /* Outputs for IfAction SubSystem: '/Stop Mode' incorporates: - * ActionPort: '/Action Port' - */ - /* If: '/If1' incorporates: - * DataStoreRead: '/Data Store Read1' - * DataStoreWrite: '/Data Store Write1' - * SignalConversion generated from: '/Bus Selector' - */ - if ((Actuator_Ch1_Status_Model.Busy == 0) && - (Actuator_Ch1_Status_Model.Error_Connect == 0)) { - /* Outputs for IfAction SubSystem: '/If Action Subsystem2' incorporates: - * ActionPort: '/Action Port' - */ - for (i = 0; i < 9; i++) { - /* DataStoreWrite: '/Data Store Write1' */ - rtDW.COM_private_n[i] = 1U; - - /* DataStoreWrite: '/Data Store Write' */ - rtDW.MODE_private_a[i] = 2U; - } - - /* Merge: '/Merge' incorporates: - * Constant: '/Constant' - * Sum: '/step inc' - */ - rtB.Merge_h = (int8_t)(rtb_Switch_hx + 1); - - /* MATLAB Function: '/Write' incorporates: - * DataStoreRead: '/Data Store Read3' - */ - /* : if(LOGGER == 2) */ - if (rtDW.LOGGER_LIN == 2.0) { - /* : fprintf('[LIN 2] Stop Mode\n'); */ - printf("[LIN 2] Stop Mode\n"); - fflush(stdout); - } - - /* End of MATLAB Function: '/Write' */ - /* End of Outputs for SubSystem: '/If Action Subsystem2' */ - } else { - /* Outputs for IfAction SubSystem: '/If Action Subsystem3' incorporates: - * ActionPort: '/Action Port' - */ - /* Merge: '/Merge' incorporates: - * SignalConversion generated from: '/stepIn' - */ - rtB.Merge_h = rtb_Switch_hx; - - /* End of Outputs for SubSystem: '/If Action Subsystem3' */ - } - - /* End of If: '/If1' */ - /* End of Outputs for SubSystem: '/Stop Mode' */ - break; - - case 2: - /* Outputs for IfAction SubSystem: '/Initial CPOS Min' incorporates: - * ActionPort: '/Action Port' - */ - /* If: '/If' incorporates: - * DataStoreRead: '/Data Store Read1' - * DataStoreWrite: '/Data Store Write1' - * SignalConversion generated from: '/Bus Selector' - */ - if ((Actuator_Ch1_Status_Model.Busy == 0) && - (Actuator_Ch1_Status_Model.Error_Connect == 0)) { - /* Outputs for IfAction SubSystem: '/If Action Subsystem' incorporates: - * ActionPort: '/Action Port' - */ - for (i = 0; i < 9; i++) { - /* DataStoreWrite: '/Data Store Write' */ - rtDW.POS_private_o[i] = 6000U; - - /* DataStoreWrite: '/Data Store Write1' */ - rtDW.COM_private_n[i] = 2U; - } - - /* Merge: '/Merge' incorporates: - * Constant: '/Constant' - * Merge: '/Merge' - * Sum: '/step inc' - */ - rtB.Merge_h = (int8_t)(rtb_Switch_hx + 1); - - /* MATLAB Function: '/Write' incorporates: - * DataStoreRead: '/Data Store Read3' - */ - /* : if(LOGGER == 2) */ - if (rtDW.LOGGER_LIN == 2.0) { - /* : fprintf('[LIN 2] Initial CPOS Min\n'); */ - printf("[LIN 2] Initial CPOS Min\n"); - fflush(stdout); - } - - /* End of MATLAB Function: '/Write' */ - /* End of Outputs for SubSystem: '/If Action Subsystem' */ - } else { - /* Outputs for IfAction SubSystem: '/If Action Subsystem3' incorporates: - * ActionPort: '/Action Port' - */ - /* Merge: '/Merge' incorporates: - * Merge: '/Merge' - * SignalConversion generated from: '/stepIn1' - */ - rtB.Merge_h = rtb_Switch_hx; - - /* End of Outputs for SubSystem: '/If Action Subsystem3' */ - } - - /* End of If: '/If' */ - /* End of Outputs for SubSystem: '/Initial CPOS Min' */ - break; - - case 3: - /* Outputs for IfAction SubSystem: '/Normal Mode' incorporates: - * ActionPort: '/Action Port' - */ - /* If: '/If1' incorporates: - * DataStoreRead: '/Data Store Read1' - * DataStoreWrite: '/Data Store Write1' - * SignalConversion generated from: '/Bus Selector' - */ - if ((Actuator_Ch1_Status_Model.Busy == 0) && - (Actuator_Ch1_Status_Model.Error_Connect == 0)) { - /* Outputs for IfAction SubSystem: '/If Action Subsystem2' incorporates: - * ActionPort: '/Action Port' - */ - for (i = 0; i < 9; i++) { - /* DataStoreWrite: '/Data Store Write' */ - rtDW.MODE_private_a[i] = 0U; - - /* DataStoreWrite: '/Data Store Write1' */ - rtDW.COM_private_n[i] = 1U; - } - - /* Merge: '/Merge' incorporates: - * Constant: '/Constant' - * Sum: '/step inc' - */ - rtB.Merge_h = (int8_t)(rtb_Switch_hx + 1); - - /* MATLAB Function: '/Write' incorporates: - * DataStoreRead: '/Data Store Read3' - */ - /* : if(LOGGER == 2) */ - if (rtDW.LOGGER_LIN == 2.0) { - /* : fprintf('LIN 2] Normal Mode\n'); */ - printf("LIN 2] Normal Mode\n"); - fflush(stdout); - } - - /* End of MATLAB Function: '/Write' */ - /* End of Outputs for SubSystem: '/If Action Subsystem2' */ - } else { - /* Outputs for IfAction SubSystem: '/If Action Subsystem3' incorporates: - * ActionPort: '/Action Port' - */ - /* Merge: '/Merge' incorporates: - * SignalConversion generated from: '/stepIn' - */ - rtB.Merge_h = rtb_Switch_hx; - - /* End of Outputs for SubSystem: '/If Action Subsystem3' */ - } - - /* End of If: '/If1' */ - /* End of Outputs for SubSystem: '/Normal Mode' */ - break; - - case 4: - /* Outputs for IfAction SubSystem: '/Move to position Min' incorporates: - * ActionPort: '/Action Port' - */ - /* If: '/If1' incorporates: - * DataStoreRead: '/Data Store Read1' - * DataStoreWrite: '/Data Store Write1' - * SignalConversion generated from: '/Bus Selector' - */ - if ((Actuator_Ch1_Status_Model.Busy == 0) && - (Actuator_Ch1_Status_Model.Error_Connect == 0)) { - /* Outputs for IfAction SubSystem: '/If Action Subsystem2' incorporates: - * ActionPort: '/Action Port' - */ - for (i = 0; i < 9; i++) { - /* DataStoreWrite: '/Data Store Write4' incorporates: - * Constant: '/Constant1' - */ - rtDW.Autos_private_a[i] = 1U; - - /* DataStoreWrite: '/Data Store Write2' incorporates: - * Constant: '/Constant10' - */ - rtDW.Stall_private_h[i] = 1U; - - /* DataStoreWrite: '/Data Store Write3' */ - rtDW.Lnoise_private_p[i] = 0U; - - /* DataStoreWrite: '/Data Store Write5' incorporates: - * Constant: '/Constant2' - */ - rtDW.Speed_private_e[i] = 3U; - - /* DataStoreWrite: '/Data Store Write6' incorporates: - * Constant: '/Constant3' - */ - rtDW.Coils_private_e[i] = 3U; - - /* DataStoreWrite: '/Data Store Write' */ - rtDW.POS_private_o[i] = 0U; - - /* DataStoreWrite: '/Data Store Write1' incorporates: - * Constant: '/Constant9' - */ - rtDW.COM_private_n[i] = 3U; - } - - /* Merge: '/Merge' incorporates: - * Constant: '/Constant' - * Sum: '/step inc' - */ - rtB.Merge_h = (int8_t)(rtb_Switch_hx + 1); - - /* MATLAB Function: '/Write' incorporates: - * DataStoreRead: '/Data Store Read3' - */ - /* : if(LOGGER == 2) */ - if (rtDW.LOGGER_LIN == 2.0) { - /* : fprintf('[LIN 2] Move to position Min\n'); */ - printf("[LIN 2] Move to position Min\n"); - fflush(stdout); - } - - /* End of MATLAB Function: '/Write' */ - /* End of Outputs for SubSystem: '/If Action Subsystem2' */ - } else { - /* Outputs for IfAction SubSystem: '/If Action Subsystem3' incorporates: - * ActionPort: '/Action Port' - */ - /* Merge: '/Merge' incorporates: - * SignalConversion generated from: '/stepIn' - */ - rtB.Merge_h = rtb_Switch_hx; - - /* End of Outputs for SubSystem: '/If Action Subsystem3' */ - } - - /* End of If: '/If1' */ - /* End of Outputs for SubSystem: '/Move to position Min' */ - break; - - case 5: - /* Outputs for IfAction SubSystem: '/Check Stall Min' incorporates: - * ActionPort: '/Action Port' - */ - /* Logic: '/Logical Operator3' incorporates: - * DataStoreRead: '/Data Store Read1' - * DataStoreRead: '/Data Store Read' - * Logic: '/Logical Operator1' - * Logic: '/Logical Operator2' - * RelationalOperator: '/Relational Operator' - * RelationalOperator: '/Relational Operator1' - */ - for (i = 0; i < 6; i++) { - rtb_LogicalOperator3_ev[i] = - ((Actuator_Ch1_Status_Model.in_Act_Stall_Slave[i] == 1) || - (Actuator_Ch1_Status_Model.in_CPOS_ALL[i] == 0) || - (rtDW.ErrorCalibration_private_b[i] == 0)); - } - - /* End of Logic: '/Logical Operator3' */ - - /* Logic: '/Logical Operator' incorporates: - * Logic: '/Logical Operator3' - */ - rtb_LogicalOperator1 = rtb_LogicalOperator3_ev[0]; - for (q0 = 0; q0 < 5; q0++) { - rtb_LogicalOperator1 = (rtb_LogicalOperator1 && rtb_LogicalOperator3_ev[q0 - + 1]); - } - - /* If: '/If2' incorporates: - * DataStoreRead: '/Data Store Read1' - * DataStoreWrite: '/Data Store Write1' - * DataTypeConversion: '/Data Type Conversion' - * DataTypeConversion: '/Data Type Conversion1' - * Logic: '/Logical Operator' - * SignalConversion generated from: '/Bus Selector' - */ - if ((Actuator_Ch1_Status_Model.Busy == 0) && - (Actuator_Ch1_Status_Model.Error_Connect == 0) && rtb_LogicalOperator1) - { - /* Outputs for IfAction SubSystem: '/If Action Subsystem2' incorporates: - * ActionPort: '/Action Port' - */ - /* DataStoreWrite: '/Data Store Write1' */ - for (q0 = 0; q0 < 9; q0++) { - /* Switch: '/Switch' incorporates: - * DataStoreRead: '/Data Store Read1' - */ - if (rtDW.ErrorCalibration_private_b[q0] != 0) { - rtDW.MinPositionCh1_private[q0] = - Actuator_Ch1_Status_Model.in_CPOS_ALL[q0]; - } - - /* End of Switch: '/Switch' */ - } - - /* End of DataStoreWrite: '/Data Store Write1' */ - - /* Merge: '/Merge' incorporates: - * Constant: '/Constant' - * Sum: '/step inc' - */ - rtB.Merge_h = (int8_t)(rtb_Switch_hx + 1); - - /* MATLAB Function: '/Write' incorporates: - * DataStoreRead: '/Data Store Read3' - */ - /* : if(LOGGER == 2) */ - if (rtDW.LOGGER_LIN == 2.0) { - /* : fprintf('[LIN 2] Check Stall Min\n'); */ - printf("[LIN 2] Check Stall Min\n"); - fflush(stdout); - - /* : for i = 1:numel(data) */ - for (i = 0; i < 9; i++) { - /* : fprintf('[LIN 2] MIN = %d ', int16(data(i))); */ - printf("[LIN 2] MIN = %d ", Actuator_Ch1_Status_Model.in_CPOS_ALL[i]); - fflush(stdout); - } - - /* : fprintf('\n'); */ - printf("\n"); - fflush(stdout); - } - - /* End of MATLAB Function: '/Write' */ - /* End of Outputs for SubSystem: '/If Action Subsystem2' */ - } else { - /* Outputs for IfAction SubSystem: '/If Action Subsystem3' incorporates: - * ActionPort: '/Action Port' - */ - /* Merge: '/Merge' incorporates: - * SignalConversion generated from: '/stepIn' - */ - rtB.Merge_h = rtb_Switch_hx; - - /* End of Outputs for SubSystem: '/If Action Subsystem3' */ - } - - /* End of If: '/If2' */ - /* End of Outputs for SubSystem: '/Check Stall Min' */ - break; - - case 6: - /* Outputs for IfAction SubSystem: '/Initial CPOS Max' incorporates: - * ActionPort: '/Action Port' - */ - /* If: '/If1' incorporates: - * DataStoreRead: '/Data Store Read1' - * DataStoreWrite: '/Data Store Write1' - * SignalConversion generated from: '/Bus Selector' - */ - if ((Actuator_Ch1_Status_Model.Busy == 0) && - (Actuator_Ch1_Status_Model.Error_Connect == 0)) { - /* Outputs for IfAction SubSystem: '/If Action Subsystem2' incorporates: - * ActionPort: '/Action Port' - */ - for (i = 0; i < 9; i++) { - /* DataStoreWrite: '/Data Store Write1' */ - rtDW.COM_private_n[i] = 2U; - - /* DataStoreWrite: '/Data Store Write' */ - rtDW.POS_private_o[i] = 0U; - } - - /* Merge: '/Merge' incorporates: - * Constant: '/Constant' - * Sum: '/step inc' - */ - rtB.Merge_h = (int8_t)(rtb_Switch_hx + 1); - - /* MATLAB Function: '/Write' incorporates: - * DataStoreRead: '/Data Store Read3' - */ - /* : if(LOGGER == 2) */ - if (rtDW.LOGGER_LIN == 2.0) { - /* : fprintf('[LIN 2] Initial CPOS Max\n'); */ - printf("[LIN 2] Initial CPOS Max\n"); - fflush(stdout); - } - - /* End of MATLAB Function: '/Write' */ - /* End of Outputs for SubSystem: '/If Action Subsystem2' */ - } else { - /* Outputs for IfAction SubSystem: '/If Action Subsystem3' incorporates: - * ActionPort: '/Action Port' - */ - /* Merge: '/Merge' incorporates: - * SignalConversion generated from: '/stepIn' - */ - rtB.Merge_h = rtb_Switch_hx; - - /* End of Outputs for SubSystem: '/If Action Subsystem3' */ - } - - /* End of If: '/If1' */ - /* End of Outputs for SubSystem: '/Initial CPOS Max' */ - break; - - case 7: - /* Outputs for IfAction SubSystem: '/Move to position Max' incorporates: - * ActionPort: '/Action Port' - */ - /* If: '/If1' incorporates: - * DataStoreRead: '/Data Store Read1' - * DataStoreWrite: '/Data Store Write1' - * SignalConversion generated from: '/Bus Selector' - */ - if ((Actuator_Ch1_Status_Model.Busy == 0) && - (Actuator_Ch1_Status_Model.Error_Connect == 0)) { - /* Outputs for IfAction SubSystem: '/If Action Subsystem2' incorporates: - * ActionPort: '/Action Port' - */ - for (i = 0; i < 9; i++) { - /* DataStoreWrite: '/Data Store Write4' incorporates: - * Constant: '/Constant1' - */ - rtDW.Autos_private_a[i] = 1U; - - /* DataStoreWrite: '/Data Store Write2' incorporates: - * Constant: '/Constant10' - */ - rtDW.Stall_private_h[i] = 1U; - - /* DataStoreWrite: '/Data Store Write3' */ - rtDW.Lnoise_private_p[i] = 0U; - - /* DataStoreWrite: '/Data Store Write5' incorporates: - * Constant: '/Constant2' - */ - rtDW.Speed_private_e[i] = 3U; - - /* DataStoreWrite: '/Data Store Write6' incorporates: - * Constant: '/Constant3' - */ - rtDW.Coils_private_e[i] = 3U; - - /* DataStoreWrite: '/Data Store Write' */ - rtDW.POS_private_o[i] = 6000U; - - /* DataStoreWrite: '/Data Store Write1' incorporates: - * Constant: '/Constant9' - */ - rtDW.COM_private_n[i] = 3U; - } - - /* Merge: '/Merge' incorporates: - * Constant: '/Constant' - * Sum: '/step inc' - */ - rtB.Merge_h = (int8_t)(rtb_Switch_hx + 1); - - /* MATLAB Function: '/Write' incorporates: - * DataStoreRead: '/Data Store Read3' - */ - /* : if(LOGGER == 2) */ - if (rtDW.LOGGER_LIN == 2.0) { - /* : fprintf('[LIN 2] Move to position Max\n'); */ - printf("[LIN 2] Move to position Max\n"); - fflush(stdout); - } - - /* End of MATLAB Function: '/Write' */ - /* End of Outputs for SubSystem: '/If Action Subsystem2' */ - } else { - /* Outputs for IfAction SubSystem: '/If Action Subsystem3' incorporates: - * ActionPort: '/Action Port' - */ - /* Merge: '/Merge' incorporates: - * SignalConversion generated from: '/stepIn' - */ - rtB.Merge_h = rtb_Switch_hx; - - /* End of Outputs for SubSystem: '/If Action Subsystem3' */ - } - - /* End of If: '/If1' */ - /* End of Outputs for SubSystem: '/Move to position Max' */ - break; - - case 8: - /* Outputs for IfAction SubSystem: '/Check Stall Max' incorporates: - * ActionPort: '/Action Port' - */ - /* Logic: '/Logical Operator3' incorporates: - * DataStoreRead: '/Data Store Read1' - * DataStoreRead: '/Data Store Read' - * Logic: '/Logical Operator' - * Logic: '/Logical Operator2' - * RelationalOperator: '/Relational Operator' - * RelationalOperator: '/Relational Operator1' - */ - for (i = 0; i < 6; i++) { - rtb_LogicalOperator3_ev[i] = - ((Actuator_Ch1_Status_Model.in_Act_Stall_Slave[i] == 1) || - (Actuator_Ch1_Status_Model.in_CPOS_ALL[i] == 6000) || - (rtDW.ErrorCalibration_private_b[i] == 0)); - } - - /* End of Logic: '/Logical Operator3' */ - - /* Logic: '/Logical Operator1' incorporates: - * Logic: '/Logical Operator3' - */ - rtb_LogicalOperator1 = rtb_LogicalOperator3_ev[0]; - for (q0 = 0; q0 < 5; q0++) { - rtb_LogicalOperator1 = (rtb_LogicalOperator1 && rtb_LogicalOperator3_ev[q0 - + 1]); - } - - /* If: '/If2' incorporates: - * DataStoreRead: '/Data Store Read1' - * DataStoreWrite: '/Data Store Write1' - * DataTypeConversion: '/Data Type Conversion' - * DataTypeConversion: '/Data Type Conversion1' - * Logic: '/Logical Operator1' - * SignalConversion generated from: '/Bus Selector' - */ - if ((Actuator_Ch1_Status_Model.Busy == 0) && - (Actuator_Ch1_Status_Model.Error_Connect == 0) && rtb_LogicalOperator1) - { - /* Outputs for IfAction SubSystem: '/If Action Subsystem2' incorporates: - * ActionPort: '/Action Port' - */ - /* DataStoreWrite: '/Data Store Write1' */ - for (i = 0; i < 9; i++) { - /* Switch: '/Switch' incorporates: - * DataStoreRead: '/Data Store Read1' - */ - if (rtDW.ErrorCalibration_private_b[i] != 0) { - rtDW.MaxPositionCh1_private[i] = - Actuator_Ch1_Status_Model.in_CPOS_ALL[i]; - } else { - rtDW.MaxPositionCh1_private[i] = 0; - } - - /* End of Switch: '/Switch' */ - } - - /* End of DataStoreWrite: '/Data Store Write1' */ - - /* Merge: '/Merge' incorporates: - * Constant: '/Constant' - * Sum: '/step inc' - */ - rtB.Merge_h = (int8_t)(rtb_Switch_hx + 1); - - /* MATLAB Function: '/Write' incorporates: - * DataStoreRead: '/Data Store Read3' - */ - /* : if(LOGGER == 2) */ - if (rtDW.LOGGER_LIN == 2.0) { - /* : fprintf('[LIN 2] Check Stall MAX\n'); */ - printf("[LIN 2] Check Stall MAX\n"); - fflush(stdout); - - /* : for i = 1:numel(data) */ - for (i = 0; i < 9; i++) { - /* : fprintf('[LIN 2] MAX = %d ', int16(data(i))); */ - printf("[LIN 2] MAX = %d ", Actuator_Ch1_Status_Model.in_CPOS_ALL[i]); - fflush(stdout); - } - - /* : fprintf('\n'); */ - printf("\n"); - fflush(stdout); - } - - /* End of MATLAB Function: '/Write' */ - /* End of Outputs for SubSystem: '/If Action Subsystem2' */ - } else { - /* Outputs for IfAction SubSystem: '/If Action Subsystem3' incorporates: - * ActionPort: '/Action Port' - */ - /* Merge: '/Merge' incorporates: - * SignalConversion generated from: '/stepIn' - */ - rtB.Merge_h = rtb_Switch_hx; - - /* End of Outputs for SubSystem: '/If Action Subsystem3' */ - } - - /* End of If: '/If2' */ - /* End of Outputs for SubSystem: '/Check Stall Max' */ - break; - - case 9: - /* Outputs for IfAction SubSystem: '/Homing' incorporates: - * ActionPort: '/Action Port' - */ - /* Product: '/Divide1' incorporates: - * Constant: '/ACT1' - * DataStoreRead: '/MAX ACT1T ' - */ - for (i = 0; i < 6; i++) { - rtb_Divide1_gdi[i] = (double)rtDW.MaxPositionCh1_private[i] / (double) - rtConstP.ACT1_Value_d[i]; - } - - /* End of Product: '/Divide1' */ - - /* SignalConversion generated from: '/Vector Concatenate' incorporates: - * Constant: '/Constant' - */ - rtb_Divide1_gdi[6] = 1.0; - rtb_Divide1_gdi[7] = 1.0; - rtb_Divide1_gdi[8] = 1.0; - - /* SwitchCase: '/Switch Case' incorporates: - * DataStoreRead: '/Data Store Read4' - */ - switch (rtDW.stepHoming_private_p) { - case 0: - /* Outputs for IfAction SubSystem: '/Switch Case Action Subsystem' incorporates: - * ActionPort: '/Action Port' - */ - for (i = 0; i < 9; i++) { - /* RelationalOperator: '/Compare' */ - rtb_Divide1 = rtb_Divide1_gdi[i]; - - /* Logic: '/Logical Operator' incorporates: - * Constant: '/Constant' - * Constant: '/Constant' - * RelationalOperator: '/Compare' - * RelationalOperator: '/Compare' - */ - rtb_LogicalOperator1 = ((rtb_Divide1 >= 0.9) && (rtb_Divide1 <= 1.1)); - rtb_LogicalOperator3_a0[i] = rtb_LogicalOperator1; - - /* DataTypeConversion: '/Data Type Conversion' incorporates: - * DataStoreRead: '/Data Store Read' - * DataStoreWrite: '/Data Store Write' - * Logic: '/Logical Operator' - * Logic: '/Logical Operator1' - */ - rtDW.ErrorCalibration_private_b[i] = (uint8_t)((!rtb_LogicalOperator1) && - (rtDW.ErrorCalibration_private_b[i] != 0)); - } - - /* MATLAB Function: '/MAX POSITION' incorporates: - * DataStoreRead: '/Data Store Read5' - * DataStoreRead: '/MIN ACT1T 1' - * Logic: '/Logical Operator2' - */ - /* : if(LOGGER>0) */ - if (rtDW.LOGGER_LIN > 0.0) { - /* : fprintf("[LIN 2] Homing 0\n"); */ - printf("[LIN 2] Homing 0\n"); - fflush(stdout); - - /* : for i = 1:numel(MAX) */ - for (i = 0; i < 6; i++) { - /* : fprintf('[LIN 2] ACT%d MAX = %d KOEF = %f Callibration = %d \n', int16(i), int16(MAX(i)), KOEF(i), int16(ERRORS(i))); */ - printf("[LIN 2] ACT%d MAX = %d KOEF = %f Callibration = %d \n", - (int16_t)(i + 1), rtDW.MaxPositionCh1_private[i], - rtb_Divide1_gdi[i], (int16_t)!rtb_LogicalOperator3_a0[i]); - fflush(stdout); - } - } - - /* End of MATLAB Function: '/MAX POSITION' */ - - /* Logic: '/Logical Operator1' */ - rtb_LogicalOperator1 = rtb_LogicalOperator3_a0[0]; - for (q0 = 0; q0 < 8; q0++) { - rtb_LogicalOperator1 = (rtb_LogicalOperator1 && - rtb_LogicalOperator3_a0[q0 + 1]); - } - - /* Switch: '/Switch' incorporates: - * Logic: '/Logical Operator1' - */ - if (rtb_LogicalOperator1) { - /* Merge: '/Merge' incorporates: - * Constant: '/Constant1' - */ - rtB.Merge_hu = 4; - } else { - /* Merge: '/Merge' incorporates: - * Constant: '/Constant' - */ - rtB.Merge_hu = 1; - } - - /* End of Switch: '/Switch' */ - /* End of Outputs for SubSystem: '/Switch Case Action Subsystem' */ - break; - - case 1: - /* Outputs for IfAction SubSystem: '/Switch Case Action Subsystem1' incorporates: - * ActionPort: '/Action Port' - */ - /* RelationalOperator: '/Compare' incorporates: - * Constant: '/Constant' - */ - for (i = 0; i < 9; i++) { - rtb_LogicalOperator3_a0[i] = (rtb_Divide1_gdi[i] > 1.5); - } - - /* End of RelationalOperator: '/Compare' */ - - /* Logic: '/Logical Operator' */ - rtb_LogicalOperator1 = rtb_LogicalOperator3_a0[0]; - for (q0 = 0; q0 < 8; q0++) { - rtb_LogicalOperator1 = (rtb_LogicalOperator1 || - rtb_LogicalOperator3_a0[q0 + 1]); - } - - /* DataTypeConversion: '/Data Type Conversion' incorporates: - * DataStoreWrite: '/Data Store Write1' - * Logic: '/Logical Operator' - */ - rtDW.CCU_ActuatorErrF_Stat_private = rtb_LogicalOperator1; - for (i = 0; i < 9; i++) { - /* DataTypeConversion: '/Data Type Conversion1' incorporates: - * DataStoreWrite: '/Data Store Write2' - */ - rtb_LogicalOperator1 = rtb_LogicalOperator3_a0[i]; - rtDW.COM_private_n[i] = rtb_LogicalOperator1; - - /* DataTypeConversion: '/Data Type Conversion2' incorporates: - * DataStoreRead: '/Data Store Read' - * DataStoreWrite: '/Data Store Write3' - * Logic: '/Logical Operator1' - */ - rtDW.ErrorActuator_c[i] = (uint8_t)(rtb_LogicalOperator1 || - (rtDW.ErrorActuator_c[i] != 0)); - - /* DataStoreWrite: '/Data Store Write' */ - rtDW.MODE_private_a[i] = 2U; - } - - /* MATLAB Function: '/Write ERROR' incorporates: - * DataStoreRead: '/Data Store Read6' - */ - /* : if(LOGGER>=0) */ - if (rtDW.LOGGER_LIN >= 0.0) { - /* : for i = 1:numel(ErrCallibration) */ - for (i = 0; i < 9; i++) { - /* : if ErrCallibration(i) == 1 */ - if (rtb_LogicalOperator3_a0[i]) { - /* : fprintf('[LIN 2] Failure with actuator #%d\n', int16(i)); */ - printf("[LIN 2] Failure with actuator #%d\n", (int16_t)(i + 1)); - fflush(stdout); - } - } - } - - /* End of MATLAB Function: '/Write ERROR' */ - for (i = 0; i < 9; i++) { - /* Logic: '/Logical Operator1' */ - rtb_LogicalOperator1 = rtb_LogicalOperator3_a0[i]; - - /* DataTypeConversion: '/Data Type Conversion' incorporates: - * DataStoreRead: '/Data Store Read' - * DataStoreWrite: '/Data Store Write' - * Logic: '/Logical Operator' - * Logic: '/Logical Operator1' - */ - rtDW.ErrorCalibration_private_b[i] = (uint8_t)((!rtb_LogicalOperator1) && - (rtDW.ErrorCalibration_private_b[i] != 0)); - - /* DataStoreWrite: '/Data Store Write' incorporates: - * DataTypeConversion: '/Data Type Conversion' - */ - rtDW.dtc_state_error_model[i + 54] = rtb_LogicalOperator1; - } - - /* DataStoreWrite: '/Data Store Write' incorporates: - * Constant: '/Constant' - */ - rtDW.stepSig_private_j = 1; - - /* MATLAB Function: '/MAX POSITION' incorporates: - * DataStoreRead: '/Data Store Read5' - * DataStoreRead: '/MIN ACT1T 1' - * DataStoreWrite: '/Data Store Write' - */ - /* : if(LOGGER>0) */ - if (rtDW.LOGGER_LIN > 0.0) { - /* : fprintf("[LIN 2] Homing 1. Start Callibration \n"); */ - printf("[LIN 2] Homing 1. Start Callibration \n"); - fflush(stdout); - - /* : for i = 1:numel(MAX) */ - for (i = 0; i < 6; i++) { - /* : if(ERRORS(i)==1) */ - if (rtDW.ErrorCalibration_private_b[i] == 1) { - /* : fprintf('[LIN 2] ACT%d MAX = %d KOEF = %f Callibration = %d \n', int16(i), int16(MAX(i)), KOEF(i), int16(ERRORS(i))); */ - printf("[LIN 2] ACT%d MAX = %d KOEF = %f Callibration = %d \n", - (int16_t)(i + 1), rtDW.MaxPositionCh1_private[i], - rtb_Divide1_gdi[i], (int16_t) - rtDW.ErrorCalibration_private_b[i]); - fflush(stdout); - } - } - } - - /* End of MATLAB Function: '/MAX POSITION' */ - - /* Logic: '/Logical Operator2' incorporates: - * DataStoreWrite: '/Data Store Write' - */ - rtb_LogicalOperator1 = (rtDW.ErrorCalibration_private_b[0] != 0); - for (q0 = 0; q0 < 8; q0++) { - rtb_LogicalOperator1 = (rtb_LogicalOperator1 || - (rtDW.ErrorCalibration_private_b[q0 + 1] != 0)); - } - - /* Switch: '/Switch' incorporates: - * Logic: '/Logical Operator2' - */ - if (rtb_LogicalOperator1) { - /* Merge: '/Merge' incorporates: - * Constant: '/Constant1' - */ - rtB.Merge_hu = 2; - } else { - /* Merge: '/Merge' incorporates: - * Constant: '/Constant1' - */ - rtB.Merge_hu = 4; - } - - /* End of Switch: '/Switch' */ - /* End of Outputs for SubSystem: '/Switch Case Action Subsystem1' */ - break; - - case 2: - /* Outputs for IfAction SubSystem: '/Switch Case Action Subsystem2' incorporates: - * ActionPort: '/Action Port' - */ - for (i = 0; i < 9; i++) { - /* RelationalOperator: '/Compare' */ - rtb_Divide1 = rtb_Divide1_gdi[i]; - - /* Logic: '/Logical Operator3' incorporates: - * Constant: '/Constant' - * Constant: '/Constant' - * DataStoreRead: '/Data Store Read' - * Logic: '/Logical Operator1' - * Logic: '/Logical Operator4' - * RelationalOperator: '/Compare' - * RelationalOperator: '/Compare' - */ - rtb_LogicalOperator1 = (((rtb_Divide1 < 0.97) || (rtb_Divide1 > 1.03)) && - (rtDW.ErrorCalibration_private_b[i] != 0)); - rtb_LogicalOperator3_a0[i] = rtb_LogicalOperator1; - - /* DataTypeConversion: '/Data Type Conversion' incorporates: - * DataStoreWrite: '/Data Store Write1' - */ - rtDW.ErrorCalibration_private_b[i] = rtb_LogicalOperator1; - } - - /* MATLAB Function: '/MAX POSITION' incorporates: - * DataStoreRead: '/Data Store Read5' - * DataStoreRead: '/MIN ACT1T 1' - */ - /* : if(LOGGER>0) */ - if (rtDW.LOGGER_LIN > 0.0) { - /* : fprintf("[LIN 2] Homing 3. Callibration \n"); */ - printf("[LIN 2] Homing 3. Callibration \n"); - fflush(stdout); - - /* : for i = 1:numel(MAX) */ - for (i = 0; i < 6; i++) { - /* : if(ERRORS(i)==1) */ - if (rtb_LogicalOperator3_a0[i]) { - /* : fprintf('[LIN 2] ACT%d MAX = %d KOEF = %f Callibration = %d \n', int16(i), int16(MAX(i)), KOEF(i), int16(ERRORS(i))); */ - printf("[LIN 2] ACT%d MAX = %d KOEF = %f Callibration = %d \n", - (int16_t)(i + 1), rtDW.MaxPositionCh1_private[i], - rtb_Divide1_gdi[i], 1); - fflush(stdout); - } - } - } - - /* End of MATLAB Function: '/MAX POSITION' */ - - /* Logic: '/Logical Operator2' */ - rtb_LogicalOperator1 = rtb_LogicalOperator3_a0[0]; - for (q0 = 0; q0 < 8; q0++) { - rtb_LogicalOperator1 = (rtb_LogicalOperator1 || - rtb_LogicalOperator3_a0[q0 + 1]); - } - - /* Switch: '/Switch' incorporates: - * Logic: '/Logical Operator2' - */ - if (rtb_LogicalOperator1) { - /* Merge: '/Merge' incorporates: - * Constant: '/Constant3' - */ - rtB.Merge_hu = 3; - } else { - /* Merge: '/Merge' incorporates: - * Constant: '/Constant1' - */ - rtB.Merge_hu = 4; - } - - /* End of Switch: '/Switch' */ - /* End of Outputs for SubSystem: '/Switch Case Action Subsystem2' */ - break; - - case 3: - /* Outputs for IfAction SubSystem: '/Switch Case Action Subsystem3' incorporates: - * ActionPort: '/Action Port' - */ - /* MATLAB Function: '/MAX POSITION' incorporates: - * DataStoreRead: '/Data Store Read1' - * DataStoreRead: '/Data Store Read5' - */ - /* : if(LOGGER>1) */ - if (rtDW.LOGGER_LIN > 1.0) { - /* : fprintf("[LIN 2] Homing 3. Start Time on step %d\n",int16(step)); */ - rtb_Divide1 = rt_roundd(rtDW.ErrorHomming_private_j); - if (rtb_Divide1 < 32768.0) { - if (rtb_Divide1 >= -32768.0) { - AMB = (int16_t)rtb_Divide1; - } else { - AMB = INT16_MIN; - } - } else { - AMB = INT16_MAX; - } - - printf("[LIN 2] Homing 3. Start Time on step %d\n", AMB); - fflush(stdout); - } - - /* End of MATLAB Function: '/MAX POSITION' */ - - /* If: '/If' incorporates: - * DataStoreRead: '/Data Store Read1' - */ - if (rtDW.ErrorHomming_private_j < 10.0) { - /* Outputs for IfAction SubSystem: '/If Action Subsystem' incorporates: - * ActionPort: '/Action Port' - */ - /* MATLAB Function: '/MATLAB Function' incorporates: - * DataStoreRead: '/Data Store Read' - * DataStoreRead: '/Data Store Read1' - */ - MATLABFunction(rtDW.Start_timer_l, rtDW.t_now, &rtb_dt_ih, - &rtDW.sf_MATLABFunction_i); - - /* MATLAB Function: '/MAX POSITION' incorporates: - * DataStoreRead: '/Data Store Read5' - */ - /* : if(LOGGER>1) */ - if (rtDW.LOGGER_LIN > 1.0) { - /* : fprintf("[LIN 2] Homing 3. Start TIme dt = %d \n",int32(data)); */ - rtb_dt_fa = rtb_dt_ih; - if (rtb_dt_ih > 2147483647U) { - rtb_dt_fa = 2147483647U; - } - - printf("[LIN 2] Homing 3. Start TIme dt = %d \n", (int32_t)rtb_dt_fa); - fflush(stdout); - } - - /* End of MATLAB Function: '/MAX POSITION' */ - - /* If: '/If' */ - if (rtb_dt_ih > 30000U) { - /* Outputs for IfAction SubSystem: '/If Action Subsystem' incorporates: - * ActionPort: '/Action Port' - */ - /* Merge: '/Merge' */ - IfActionSubsystem(&rtB.Merge_hu, &rtDW.ErrorHomming_private_j, - &rtDW.Start_timer_l, &rtDW.stepSig_private_j); - - /* End of Outputs for SubSystem: '/If Action Subsystem' */ - } else { - /* Outputs for IfAction SubSystem: '/If Action Subsystem1' incorporates: - * ActionPort: '/Action Port' - */ - /* Merge: '/Merge' */ - IfActionSubsystem1(&rtB.Merge_hu, &rtDW.Start_timer_l); - - /* End of Outputs for SubSystem: '/If Action Subsystem1' */ - } - - /* End of If: '/If' */ - /* End of Outputs for SubSystem: '/If Action Subsystem' */ - } else { - /* Outputs for IfAction SubSystem: '/If Action Subsystem1' incorporates: - * ActionPort: '/Action Port' - */ - IfActionSubsystem1_d(&rtB.Merge_hu, &rtDW.CCU_ActuatorErrF_Stat_private, - rtDW.COM_private_n, rtDW.ErrorActuator_c, - rtDW.ErrorCalibration_private_b, &rtDW.LOGGER_LIN, - rtDW.MODE_private_a, rtDW.dtc_state_error_model); - - /* End of Outputs for SubSystem: '/If Action Subsystem1' */ - } - - /* End of If: '/If' */ - /* End of Outputs for SubSystem: '/Switch Case Action Subsystem3' */ - break; - - case 4: - /* Outputs for IfAction SubSystem: '/Switch Case Action Subsystem4' incorporates: - * ActionPort: '/Action Port' - */ - /* DataStoreWrite: '/Data Store Write' incorporates: - * Constant: '/Constant' - */ - rtDW.stepSig_private_j = 10; - - /* Merge: '/Merge' incorporates: - * Constant: '/Constant1' - * SignalConversion generated from: '/step' - */ - rtB.Merge_hu = 5; - - /* MATLAB Function: '/MAX POSITION' incorporates: - * DataStoreRead: '/Data Store Read5' - */ - /* : if(LOGGER>0) */ - if (rtDW.LOGGER_LIN > 0.0) { - /* : fprintf("[LIN 2] Homing. Callibration successful \n"); */ - printf("[LIN 2] Homing. Callibration successful \n"); - fflush(stdout); - } - - /* End of MATLAB Function: '/MAX POSITION' */ - /* End of Outputs for SubSystem: '/Switch Case Action Subsystem4' */ - break; - } - - /* End of SwitchCase: '/Switch Case' */ - - /* DataStoreWrite: '/Data Store Write2' */ - rtDW.stepHoming_private_p = rtB.Merge_hu; - - /* Merge: '/Merge' incorporates: - * DataStoreRead: '/Data Store Read7' - */ - rtB.Merge_h = rtDW.stepSig_private_j; - - /* End of Outputs for SubSystem: '/Homing' */ - break; - } - - /* End of SwitchCase: '/Switch Case' */ - - /* DataStoreWrite: '/Finish write stepSig' */ - rtDW.stepSig_private_j = rtB.Merge_h; - - /* BusCreator: '/Bus Creator' incorporates: - * DataStoreRead: '/Data Store Read' - * DataStoreRead: '/Data Store Read1' - * DataStoreRead: '/Data Store Read2' - * DataStoreRead: '/Data Store Read3' - * DataStoreRead: '/Data Store Read4' - * DataStoreRead: '/Data Store Read5' - * DataStoreRead: '/Data Store Read6' - * DataStoreRead: '/Data Store Read7' - * DataStoreRead: '/Data Store Read8' - * DataStoreWrite: '/Data Store Write' - */ - for (i = 0; i < 9; i++) { - Actuator_Ch1_Command_Model.POS[i] = rtDW.POS_private_o[i]; - Actuator_Ch1_Command_Model.BUS_ADR[i] = rtDW.BUS_ADR_private_m[i]; - Actuator_Ch1_Command_Model.MODE[i] = rtDW.MODE_private_a[i]; - Actuator_Ch1_Command_Model.COM[i] = rtDW.COM_private_n[i]; - Actuator_Ch1_Command_Model.Stall_SET[i] = rtDW.Stall_private_h[i]; - Actuator_Ch1_Command_Model.Lnoise_SET[i] = rtDW.Lnoise_private_p[i]; - Actuator_Ch1_Command_Model.Autos_SET[i] = rtDW.Autos_private_a[i]; - Actuator_Ch1_Command_Model.Speed_SET[i] = rtDW.Speed_private_e[i]; - Actuator_Ch1_Command_Model.Coils_Stop_SET[i] = rtDW.Coils_private_e[i]; - } - - /* End of BusCreator: '/Bus Creator' */ - - /* RelationalOperator: '/Compare' incorporates: - * Constant: '/Constant' - * DataStoreRead: '/Data Store Read2' - */ - for (i = 0; i < 6; i++) { - rtb_Compare_l2[i] = (rtDW.ErrorCalibration_private_b[i] == 0); - } - - /* End of RelationalOperator: '/Compare' */ - - /* Logic: '/Logical Operator' */ - rtb_LogicalOperator1 = rtb_Compare_l2[0]; - for (q0 = 0; q0 < 5; q0++) { - rtb_LogicalOperator1 = (rtb_LogicalOperator1 || rtb_Compare_l2[q0 + 1]); - } - - /* Switch: '/Switch1' incorporates: - * Constant: '/Constant' - * Constant: '/Constant3' - * DataStoreRead: '/Data Store Read2' - * Logic: '/Logical Operator' - * Product: '/Product' - */ - for (i = 0; i < 6; i++) { - if (rtb_LogicalOperator1) { - rtb_DataTypeConversion_np[i] = (uint8_t)((uint32_t) - rtDW.ErrorCalibration_private_b[i] * rtConstP.Constant3_Value_i[i]); - } else { - rtb_DataTypeConversion_np[i] = 0U; - } - } - - /* End of Switch: '/Switch1' */ - - /* SignalConversion generated from: '/Vector Concatenate' incorporates: - * Constant: '/Constant1' - */ - rtb_DataTypeConversion_np[6] = 0U; - rtb_DataTypeConversion_np[7] = 0U; - rtb_DataTypeConversion_np[8] = 0U; - for (i = 0; i < 9; i++) { - /* DataStoreWrite: '/Data Store Write7' */ - rtDW.BUS_ADR_private_m[i] = rtb_DataTypeConversion_np[i]; - - /* DataStoreWrite: '/Data Store Write' */ - rtDW.COM_private_n[i] = 0U; - - /* Switch: '/Switch' incorporates: - * Constant: '/Constant' - * DataStoreRead: '/Data Store Read1' - * DataStoreRead: '/Data Store Read' - * Gain: '/Gain' - * Product: '/Divide' - */ - if (rtDW.MaxPositionCh2_private[i] != 0) { - q0 = 100 * (int16_t)div_nde_s32_floor - (Actuator_Ch2_Status_Model.in_CPOS_ALL[i], rtDW.MaxPositionCh2_private[i]); - } else { - q0 = 0; - } - - /* End of Switch: '/Switch' */ - - /* Saturate: '/Saturation' */ - if (q0 > 100) { - /* DataTypeConversion: '/Data Type Conversion' */ - rtb_DataTypeConversion_ns[i] = 100U; - } else if (q0 < 0) { - /* DataTypeConversion: '/Data Type Conversion' */ - rtb_DataTypeConversion_ns[i] = 0U; - } else { - /* DataTypeConversion: '/Data Type Conversion' */ - rtb_DataTypeConversion_ns[i] = (uint8_t)q0; - } - - /* End of Saturate: '/Saturation' */ - } - - /* Switch: '/Switch' incorporates: - * Constant: '/Constant1' - * DataStoreRead: '/Data Store Read' - * DataStoreRead: '/Data Store Read2' - */ - if (rtDW.stepSig_private_o > 0) { - rtb_Switch_hx = rtDW.stepSig_private_o; - } else { - rtb_Switch_hx = 1; - } - - /* End of Switch: '/Switch' */ - - /* SwitchCase: '/Switch Case' */ - switch (rtb_Switch_hx) { - case 1: - /* Outputs for IfAction SubSystem: '/Stop Mode' incorporates: - * ActionPort: '/Action Port' - */ - /* If: '/If1' incorporates: - * DataStoreRead: '/Data Store Read1' - * DataStoreWrite: '/Data Store Write1' - * SignalConversion generated from: '/Bus Selector' - */ - if ((Actuator_Ch2_Status_Model.Busy == 0) && - (Actuator_Ch2_Status_Model.Error_Connect == 0)) { - /* Outputs for IfAction SubSystem: '/If Action Subsystem2' incorporates: - * ActionPort: '/Action Port' - */ - for (i = 0; i < 9; i++) { - /* DataStoreWrite: '/Data Store Write1' */ - rtDW.COM_private_b[i] = 1U; - - /* DataStoreWrite: '/Data Store Write' */ - rtDW.MODE_private_p[i] = 2U; - } - - /* Merge: '/Merge' incorporates: - * Constant: '/Constant' - * Sum: '/step inc' - */ - rtB.Merge_bj = (int8_t)(rtb_Switch_hx + 1); - - /* MATLAB Function: '/Write' incorporates: - * DataStoreRead: '/Data Store Read3' - */ - /* : if(LOGGER == 2) */ - if (rtDW.LOGGER_LIN == 2.0) { - /* : fprintf('[LIN 3] Stop Mode\n'); */ - printf("[LIN 3] Stop Mode\n"); - fflush(stdout); - } - - /* End of MATLAB Function: '/Write' */ - /* End of Outputs for SubSystem: '/If Action Subsystem2' */ - } else { - /* Outputs for IfAction SubSystem: '/If Action Subsystem3' incorporates: - * ActionPort: '/Action Port' - */ - /* Merge: '/Merge' incorporates: - * SignalConversion generated from: '/stepIn' - */ - rtB.Merge_bj = rtb_Switch_hx; - - /* End of Outputs for SubSystem: '/If Action Subsystem3' */ - } - - /* End of If: '/If1' */ - /* End of Outputs for SubSystem: '/Stop Mode' */ - break; - - case 2: - /* Outputs for IfAction SubSystem: '/Initial CPOS Min' incorporates: - * ActionPort: '/Action Port' - */ - /* If: '/If' incorporates: - * DataStoreRead: '/Data Store Read1' - * DataStoreWrite: '/Data Store Write1' - * SignalConversion generated from: '/Bus Selector' - */ - if ((Actuator_Ch2_Status_Model.Busy == 0) && - (Actuator_Ch2_Status_Model.Error_Connect == 0)) { - /* Outputs for IfAction SubSystem: '/If Action Subsystem' incorporates: - * ActionPort: '/Action Port' - */ - for (i = 0; i < 9; i++) { - /* DataStoreWrite: '/Data Store Write' */ - rtDW.POS_private_g[i] = 6000U; - - /* DataStoreWrite: '/Data Store Write1' */ - rtDW.COM_private_b[i] = 2U; - } - - /* Merge: '/Merge' incorporates: - * Constant: '/Constant' - * Merge: '/Merge' - * Sum: '/step inc' - */ - rtB.Merge_bj = (int8_t)(rtb_Switch_hx + 1); - - /* MATLAB Function: '/Write' incorporates: - * DataStoreRead: '/Data Store Read3' - */ - /* : if(LOGGER == 2) */ - if (rtDW.LOGGER_LIN == 2.0) { - /* : fprintf('[LIN 3] Initial CPOS Min\n'); */ - printf("[LIN 3] Initial CPOS Min\n"); - fflush(stdout); - } - - /* End of MATLAB Function: '/Write' */ - /* End of Outputs for SubSystem: '/If Action Subsystem' */ - } else { - /* Outputs for IfAction SubSystem: '/If Action Subsystem3' incorporates: - * ActionPort: '/Action Port' - */ - /* Merge: '/Merge' incorporates: - * Merge: '/Merge' - * SignalConversion generated from: '/stepIn1' - */ - rtB.Merge_bj = rtb_Switch_hx; - - /* End of Outputs for SubSystem: '/If Action Subsystem3' */ - } - - /* End of If: '/If' */ - /* End of Outputs for SubSystem: '/Initial CPOS Min' */ - break; - - case 3: - /* Outputs for IfAction SubSystem: '/Normal Mode' incorporates: - * ActionPort: '/Action Port' - */ - /* If: '/If1' incorporates: - * DataStoreRead: '/Data Store Read1' - * DataStoreWrite: '/Data Store Write1' - * SignalConversion generated from: '/Bus Selector' - */ - if ((Actuator_Ch2_Status_Model.Busy == 0) && - (Actuator_Ch2_Status_Model.Error_Connect == 0)) { - /* Outputs for IfAction SubSystem: '/If Action Subsystem2' incorporates: - * ActionPort: '/Action Port' - */ - for (i = 0; i < 9; i++) { - /* DataStoreWrite: '/Data Store Write' */ - rtDW.MODE_private_p[i] = 0U; - - /* DataStoreWrite: '/Data Store Write1' */ - rtDW.COM_private_b[i] = 1U; - } - - /* Merge: '/Merge' incorporates: - * Constant: '/Constant' - * Sum: '/step inc' - */ - rtB.Merge_bj = (int8_t)(rtb_Switch_hx + 1); - - /* MATLAB Function: '/Write' incorporates: - * DataStoreRead: '/Data Store Read3' - */ - /* : if(LOGGER == 2) */ - if (rtDW.LOGGER_LIN == 2.0) { - /* : fprintf('[LIN 3] Normal Mode\n'); */ - printf("[LIN 3] Normal Mode\n"); - fflush(stdout); - } - - /* End of MATLAB Function: '/Write' */ - /* End of Outputs for SubSystem: '/If Action Subsystem2' */ - } else { - /* Outputs for IfAction SubSystem: '/If Action Subsystem3' incorporates: - * ActionPort: '/Action Port' - */ - /* Merge: '/Merge' incorporates: - * SignalConversion generated from: '/stepIn' - */ - rtB.Merge_bj = rtb_Switch_hx; - - /* End of Outputs for SubSystem: '/If Action Subsystem3' */ - } - - /* End of If: '/If1' */ - /* End of Outputs for SubSystem: '/Normal Mode' */ - break; - - case 4: - /* Outputs for IfAction SubSystem: '/Move to position Min' incorporates: - * ActionPort: '/Action Port' - */ - /* If: '/If1' incorporates: - * DataStoreRead: '/Data Store Read1' - * DataStoreWrite: '/Data Store Write1' - * SignalConversion generated from: '/Bus Selector' - */ - if ((Actuator_Ch2_Status_Model.Busy == 0) && - (Actuator_Ch2_Status_Model.Error_Connect == 0)) { - /* Outputs for IfAction SubSystem: '/If Action Subsystem2' incorporates: - * ActionPort: '/Action Port' - */ - for (i = 0; i < 9; i++) { - /* DataStoreWrite: '/Data Store Write4' incorporates: - * Constant: '/Constant1' - */ - rtDW.Autos_private_k[i] = 1U; - - /* DataStoreWrite: '/Data Store Write2' incorporates: - * Constant: '/Constant10' - */ - rtDW.Stall_private_h3[i] = 1U; - - /* DataStoreWrite: '/Data Store Write3' */ - rtDW.Lnoise_private_k[i] = 0U; - - /* DataStoreWrite: '/Data Store Write5' incorporates: - * Constant: '/Constant2' - */ - rtDW.Speed_private_o[i] = 3U; - - /* DataStoreWrite: '/Data Store Write6' incorporates: - * Constant: '/Constant3' - */ - rtDW.Coils_private_m[i] = 3U; - - /* DataStoreWrite: '/Data Store Write' */ - rtDW.POS_private_g[i] = 0U; - - /* DataStoreWrite: '/Data Store Write1' incorporates: - * Constant: '/Constant9' - */ - rtDW.COM_private_b[i] = 3U; - } - - /* Merge: '/Merge' incorporates: - * Constant: '/Constant' - * Sum: '/step inc' - */ - rtB.Merge_bj = (int8_t)(rtb_Switch_hx + 1); - - /* MATLAB Function: '/Write' incorporates: - * DataStoreRead: '/Data Store Read3' - */ - /* : if(LOGGER == 2) */ - if (rtDW.LOGGER_LIN == 2.0) { - /* : fprintf('[LIN 3] Move to position Min\n'); */ - printf("[LIN 3] Move to position Min\n"); - fflush(stdout); - } - - /* End of MATLAB Function: '/Write' */ - /* End of Outputs for SubSystem: '/If Action Subsystem2' */ - } else { - /* Outputs for IfAction SubSystem: '/If Action Subsystem3' incorporates: - * ActionPort: '/Action Port' - */ - /* Merge: '/Merge' incorporates: - * SignalConversion generated from: '/stepIn' - */ - rtB.Merge_bj = rtb_Switch_hx; - - /* End of Outputs for SubSystem: '/If Action Subsystem3' */ - } - - /* End of If: '/If1' */ - /* End of Outputs for SubSystem: '/Move to position Min' */ - break; - - case 5: - /* Outputs for IfAction SubSystem: '/Check Stall Min' incorporates: - * ActionPort: '/Action Port' - */ - /* Logic: '/Logical Operator3' incorporates: - * DataStoreRead: '/Data Store Read1' - * DataStoreRead: '/Data Store Read' - * Logic: '/Logical Operator1' - * Logic: '/Logical Operator2' - * RelationalOperator: '/Relational Operator' - * RelationalOperator: '/Relational Operator1' - */ - for (i = 0; i < 8; i++) { - rtb_Compare_l2[i] = ((Actuator_Ch2_Status_Model.in_Act_Stall_Slave[i] == 1) - || (Actuator_Ch2_Status_Model.in_CPOS_ALL[i] == 0) || - (rtDW.ErrorCalibration_private_h[i] == 0)); - } - - /* End of Logic: '/Logical Operator3' */ - - /* Logic: '/Logical Operator' incorporates: - * Logic: '/Logical Operator3' - */ - rtb_LogicalOperator1 = rtb_Compare_l2[0]; - for (q0 = 0; q0 < 7; q0++) { - rtb_LogicalOperator1 = (rtb_LogicalOperator1 && rtb_Compare_l2[q0 + 1]); - } - - /* If: '/If2' incorporates: - * DataStoreRead: '/Data Store Read1' - * DataStoreWrite: '/Data Store Write1' - * DataTypeConversion: '/Data Type Conversion' - * DataTypeConversion: '/Data Type Conversion1' - * Logic: '/Logical Operator' - * SignalConversion generated from: '/Bus Selector' - */ - if ((Actuator_Ch2_Status_Model.Busy == 0) && - (Actuator_Ch2_Status_Model.Error_Connect == 0) && rtb_LogicalOperator1) - { - /* Outputs for IfAction SubSystem: '/If Action Subsystem2' incorporates: - * ActionPort: '/Action Port' - */ - /* DataStoreWrite: '/Data Store Write1' */ - for (q0 = 0; q0 < 9; q0++) { - /* Switch: '/Switch' incorporates: - * DataStoreRead: '/Data Store Read1' - */ - if (rtDW.ErrorCalibration_private_h[q0] != 0) { - rtDW.MinPositionCh2_private[q0] = - Actuator_Ch2_Status_Model.in_CPOS_ALL[q0]; - } - - /* End of Switch: '/Switch' */ - } - - /* End of DataStoreWrite: '/Data Store Write1' */ - - /* Merge: '/Merge' incorporates: - * Constant: '/Constant' - * Sum: '/step inc' - */ - rtB.Merge_bj = (int8_t)(rtb_Switch_hx + 1); - - /* MATLAB Function: '/Write' incorporates: - * DataStoreRead: '/Data Store Read3' - */ - /* : if(LOGGER == 2) */ - if (rtDW.LOGGER_LIN == 2.0) { - /* : fprintf('[LIN 3] Check Stall Min\n'); */ - printf("[LIN 3] Check Stall Min\n"); - fflush(stdout); - - /* : for i = 1:numel(data) */ - for (i = 0; i < 9; i++) { - /* : fprintf('[LIN 3] MIN = %d ', int16(data(i))); */ - printf("[LIN 3] MIN = %d ", Actuator_Ch2_Status_Model.in_CPOS_ALL[i]); - fflush(stdout); - } - - /* : fprintf('\n'); */ - printf("\n"); - fflush(stdout); - } - - /* End of MATLAB Function: '/Write' */ - /* End of Outputs for SubSystem: '/If Action Subsystem2' */ - } else { - /* Outputs for IfAction SubSystem: '/If Action Subsystem3' incorporates: - * ActionPort: '/Action Port' - */ - /* Merge: '/Merge' incorporates: - * SignalConversion generated from: '/stepIn' - */ - rtB.Merge_bj = rtb_Switch_hx; - - /* End of Outputs for SubSystem: '/If Action Subsystem3' */ - } - - /* End of If: '/If2' */ - /* End of Outputs for SubSystem: '/Check Stall Min' */ - break; - - case 6: - /* Outputs for IfAction SubSystem: '/Initial CPOS Max' incorporates: - * ActionPort: '/Action Port' - */ - /* If: '/If1' incorporates: - * DataStoreRead: '/Data Store Read1' - * DataStoreWrite: '/Data Store Write1' - * SignalConversion generated from: '/Bus Selector' - */ - if ((Actuator_Ch2_Status_Model.Busy == 0) && - (Actuator_Ch2_Status_Model.Error_Connect == 0)) { - /* Outputs for IfAction SubSystem: '/If Action Subsystem2' incorporates: - * ActionPort: '/Action Port' - */ - for (i = 0; i < 9; i++) { - /* DataStoreWrite: '/Data Store Write1' */ - rtDW.COM_private_b[i] = 2U; - - /* DataStoreWrite: '/Data Store Write' */ - rtDW.POS_private_g[i] = 0U; - } - - /* Merge: '/Merge' incorporates: - * Constant: '/Constant' - * Sum: '/step inc' - */ - rtB.Merge_bj = (int8_t)(rtb_Switch_hx + 1); - - /* MATLAB Function: '/Write' incorporates: - * DataStoreRead: '/Data Store Read3' - */ - /* : if(LOGGER == 2) */ - if (rtDW.LOGGER_LIN == 2.0) { - /* : fprintf('[LIN 3] Initial CPOS Max\n'); */ - printf("[LIN 3] Initial CPOS Max\n"); - fflush(stdout); - } - - /* End of MATLAB Function: '/Write' */ - /* End of Outputs for SubSystem: '/If Action Subsystem2' */ - } else { - /* Outputs for IfAction SubSystem: '/If Action Subsystem3' incorporates: - * ActionPort: '/Action Port' - */ - /* Merge: '/Merge' incorporates: - * SignalConversion generated from: '/stepIn' - */ - rtB.Merge_bj = rtb_Switch_hx; - - /* End of Outputs for SubSystem: '/If Action Subsystem3' */ - } - - /* End of If: '/If1' */ - /* End of Outputs for SubSystem: '/Initial CPOS Max' */ - break; - - case 7: - /* Outputs for IfAction SubSystem: '/Move to position Max' incorporates: - * ActionPort: '/Action Port' - */ - /* If: '/If1' incorporates: - * DataStoreRead: '/Data Store Read1' - * DataStoreWrite: '/Data Store Write1' - * SignalConversion generated from: '/Bus Selector' - */ - if ((Actuator_Ch2_Status_Model.Busy == 0) && - (Actuator_Ch2_Status_Model.Error_Connect == 0)) { - /* Outputs for IfAction SubSystem: '/If Action Subsystem2' incorporates: - * ActionPort: '/Action Port' - */ - for (i = 0; i < 9; i++) { - /* DataStoreWrite: '/Data Store Write4' incorporates: - * Constant: '/Constant1' - */ - rtDW.Autos_private_k[i] = 1U; - - /* DataStoreWrite: '/Data Store Write2' incorporates: - * Constant: '/Constant10' - */ - rtDW.Stall_private_h3[i] = 1U; - - /* DataStoreWrite: '/Data Store Write3' */ - rtDW.Lnoise_private_k[i] = 0U; - - /* DataStoreWrite: '/Data Store Write5' incorporates: - * Constant: '/Constant2' - */ - rtDW.Speed_private_o[i] = 3U; - - /* DataStoreWrite: '/Data Store Write6' incorporates: - * Constant: '/Constant3' - */ - rtDW.Coils_private_m[i] = 3U; - - /* DataStoreWrite: '/Data Store Write' */ - rtDW.POS_private_g[i] = 6000U; - - /* DataStoreWrite: '/Data Store Write1' incorporates: - * Constant: '/Constant9' - */ - rtDW.COM_private_b[i] = 3U; - } - - /* Merge: '/Merge' incorporates: - * Constant: '/Constant' - * Sum: '/step inc' - */ - rtB.Merge_bj = (int8_t)(rtb_Switch_hx + 1); - - /* MATLAB Function: '/Write' incorporates: - * DataStoreRead: '/Data Store Read3' - */ - /* : if(LOGGER == 2) */ - if (rtDW.LOGGER_LIN == 2.0) { - /* : fprintf('[LIN 3] Move to position Max\n'); */ - printf("[LIN 3] Move to position Max\n"); - fflush(stdout); - } - - /* End of MATLAB Function: '/Write' */ - /* End of Outputs for SubSystem: '/If Action Subsystem2' */ - } else { - /* Outputs for IfAction SubSystem: '/If Action Subsystem3' incorporates: - * ActionPort: '/Action Port' - */ - /* Merge: '/Merge' incorporates: - * SignalConversion generated from: '/stepIn' - */ - rtB.Merge_bj = rtb_Switch_hx; - - /* End of Outputs for SubSystem: '/If Action Subsystem3' */ - } - - /* End of If: '/If1' */ - /* End of Outputs for SubSystem: '/Move to position Max' */ - break; - - case 8: - /* Outputs for IfAction SubSystem: '/Check Stall Max' incorporates: - * ActionPort: '/Action Port' - */ - /* Logic: '/Logical Operator3' incorporates: - * DataStoreRead: '/Data Store Read1' - * DataStoreRead: '/Data Store Read' - * Logic: '/Logical Operator' - * Logic: '/Logical Operator2' - * RelationalOperator: '/Relational Operator' - * RelationalOperator: '/Relational Operator1' - */ - for (i = 0; i < 8; i++) { - rtb_Compare_l2[i] = ((Actuator_Ch2_Status_Model.in_Act_Stall_Slave[i] == 1) - || (Actuator_Ch2_Status_Model.in_CPOS_ALL[i] == 6000) - || (rtDW.ErrorCalibration_private_h[i] == 0)); - } - - /* End of Logic: '/Logical Operator3' */ - - /* Logic: '/Logical Operator1' incorporates: - * Logic: '/Logical Operator3' - */ - rtb_LogicalOperator1 = rtb_Compare_l2[0]; - for (q0 = 0; q0 < 7; q0++) { - rtb_LogicalOperator1 = (rtb_LogicalOperator1 && rtb_Compare_l2[q0 + 1]); - } - - /* If: '/If2' incorporates: - * DataStoreRead: '/Data Store Read1' - * DataStoreWrite: '/Data Store Write1' - * DataTypeConversion: '/Data Type Conversion' - * DataTypeConversion: '/Data Type Conversion1' - * Logic: '/Logical Operator1' - * SignalConversion generated from: '/Bus Selector' - */ - if ((Actuator_Ch2_Status_Model.Busy == 0) && - (Actuator_Ch2_Status_Model.Error_Connect == 0) && rtb_LogicalOperator1) - { - /* Outputs for IfAction SubSystem: '/If Action Subsystem2' incorporates: - * ActionPort: '/Action Port' - */ - /* DataStoreWrite: '/Data Store Write1' */ - for (i = 0; i < 9; i++) { - /* Switch: '/Switch' incorporates: - * DataStoreRead: '/Data Store Read1' - */ - if (rtDW.ErrorCalibration_private_h[i] != 0) { - rtDW.MaxPositionCh2_private[i] = - Actuator_Ch2_Status_Model.in_CPOS_ALL[i]; - } else { - rtDW.MaxPositionCh2_private[i] = 0; - } - - /* End of Switch: '/Switch' */ - } - - /* End of DataStoreWrite: '/Data Store Write1' */ - - /* Merge: '/Merge' incorporates: - * Constant: '/Constant' - * Sum: '/step inc' - */ - rtB.Merge_bj = (int8_t)(rtb_Switch_hx + 1); - - /* MATLAB Function: '/Write' incorporates: - * DataStoreRead: '/Data Store Read3' - */ - /* : if(LOGGER == 2) */ - if (rtDW.LOGGER_LIN == 2.0) { - /* : fprintf('[LIN 3] Check Stall MAX\n'); */ - printf("[LIN 3] Check Stall MAX\n"); - fflush(stdout); - - /* : for i = 1:numel(data) */ - for (i = 0; i < 9; i++) { - /* : fprintf('[LIN 3] MAX = %d ', int16(data(i))); */ - printf("[LIN 3] MAX = %d ", Actuator_Ch2_Status_Model.in_CPOS_ALL[i]); - fflush(stdout); - } - - /* : fprintf('\n'); */ - printf("\n"); - fflush(stdout); - } - - /* End of MATLAB Function: '/Write' */ - /* End of Outputs for SubSystem: '/If Action Subsystem2' */ - } else { - /* Outputs for IfAction SubSystem: '/If Action Subsystem3' incorporates: - * ActionPort: '/Action Port' - */ - /* Merge: '/Merge' incorporates: - * SignalConversion generated from: '/stepIn' - */ - rtB.Merge_bj = rtb_Switch_hx; - - /* End of Outputs for SubSystem: '/If Action Subsystem3' */ - } - - /* End of If: '/If2' */ - /* End of Outputs for SubSystem: '/Check Stall Max' */ - break; - - case 9: - /* Outputs for IfAction SubSystem: '/Homing' incorporates: - * ActionPort: '/Action Port' - */ - /* Product: '/Divide1' incorporates: - * Constant: '/ACT1' - * DataStoreRead: '/MAX ACT1T ' - */ - for (i = 0; i < 8; i++) { - rtb_Divide1_gdi[i] = (double)rtDW.MaxPositionCh2_private[i] / (double) - rtConstP.ACT1_Value_o[i]; - } - - /* End of Product: '/Divide1' */ - - /* SignalConversion generated from: '/Vector Concatenate' incorporates: - * Constant: '/Constant' - */ - rtb_Divide1_gdi[8] = 1.0; - - /* SwitchCase: '/Switch Case' incorporates: - * DataStoreRead: '/Data Store Read4' - */ - switch (rtDW.stepHoming_private_f) { - case 0: - /* Outputs for IfAction SubSystem: '/Switch Case Action Subsystem' incorporates: - * ActionPort: '/Action Port' - */ - for (i = 0; i < 9; i++) { - /* RelationalOperator: '/Compare' */ - rtb_Divide1 = rtb_Divide1_gdi[i]; - - /* Logic: '/Logical Operator' incorporates: - * Constant: '/Constant' - * Constant: '/Constant' - * RelationalOperator: '/Compare' - * RelationalOperator: '/Compare' - */ - rtb_LogicalOperator1 = ((rtb_Divide1 >= 0.9) && (rtb_Divide1 <= 1.1)); - rtb_LogicalOperator3_a0[i] = rtb_LogicalOperator1; - - /* DataTypeConversion: '/Data Type Conversion' incorporates: - * DataStoreRead: '/Data Store Read' - * DataStoreWrite: '/Data Store Write' - * Logic: '/Logical Operator' - * Logic: '/Logical Operator1' - */ - rtDW.ErrorCalibration_private_h[i] = (uint8_t)((!rtb_LogicalOperator1) && - (rtDW.ErrorCalibration_private_h[i] != 0)); - } - - /* MATLAB Function: '/MAX POSITION' incorporates: - * DataStoreRead: '/Data Store Read5' - * DataStoreRead: '/MIN ACT1T 1' - * Logic: '/Logical Operator2' - */ - /* : if(LOGGER>0) */ - if (rtDW.LOGGER_LIN > 0.0) { - /* : fprintf("[LIN 3] Homing 0\n"); */ - printf("[LIN 3] Homing 0\n"); - fflush(stdout); - - /* : for i = 1:numel(MAX) */ - for (i = 0; i < 6; i++) { - /* : fprintf('[LIN 3] ACT%d MAX = %d KOEF = %f Callibration = %d \n', int16(i), int16(MAX(i)), KOEF(i), int16(ERRORS(i))); */ - printf("[LIN 3] ACT%d MAX = %d KOEF = %f Callibration = %d \n", - (int16_t)(i + 1), rtDW.MaxPositionCh2_private[i], - rtb_Divide1_gdi[i], (int16_t)!rtb_LogicalOperator3_a0[i]); - fflush(stdout); - } - } - - /* End of MATLAB Function: '/MAX POSITION' */ - - /* Logic: '/Logical Operator1' */ - rtb_LogicalOperator1 = rtb_LogicalOperator3_a0[0]; - for (q0 = 0; q0 < 8; q0++) { - rtb_LogicalOperator1 = (rtb_LogicalOperator1 && - rtb_LogicalOperator3_a0[q0 + 1]); - } - - /* Switch: '/Switch' incorporates: - * Logic: '/Logical Operator1' - */ - if (rtb_LogicalOperator1) { - /* Merge: '/Merge' incorporates: - * Constant: '/Constant1' - */ - rtB.Merge_j = 4; - } else { - /* Merge: '/Merge' incorporates: - * Constant: '/Constant' - */ - rtB.Merge_j = 1; - } - - /* End of Switch: '/Switch' */ - /* End of Outputs for SubSystem: '/Switch Case Action Subsystem' */ - break; - - case 1: - /* Outputs for IfAction SubSystem: '/Switch Case Action Subsystem1' incorporates: - * ActionPort: '/Action Port' - */ - /* RelationalOperator: '/Compare' incorporates: - * Constant: '/Constant' - */ - for (i = 0; i < 9; i++) { - rtb_LogicalOperator3_a0[i] = (rtb_Divide1_gdi[i] > 1.5); - } - - /* End of RelationalOperator: '/Compare' */ - - /* Logic: '/Logical Operator' */ - rtb_LogicalOperator1 = rtb_LogicalOperator3_a0[0]; - for (q0 = 0; q0 < 8; q0++) { - rtb_LogicalOperator1 = (rtb_LogicalOperator1 || - rtb_LogicalOperator3_a0[q0 + 1]); - } - - /* DataTypeConversion: '/Data Type Conversion' incorporates: - * DataStoreWrite: '/Data Store Write1' - * Logic: '/Logical Operator' - */ - rtDW.CCU_ActuatorErrF_Stat_private = rtb_LogicalOperator1; - for (i = 0; i < 9; i++) { - /* DataTypeConversion: '/Data Type Conversion1' incorporates: - * DataStoreWrite: '/Data Store Write2' - */ - rtb_LogicalOperator1 = rtb_LogicalOperator3_a0[i]; - rtDW.COM_private_b[i] = rtb_LogicalOperator1; - - /* DataTypeConversion: '/Data Type Conversion2' incorporates: - * DataStoreRead: '/Data Store Read' - * DataStoreWrite: '/Data Store Write3' - * Logic: '/Logical Operator1' - */ - rtDW.ErrorActuator_o[i] = (uint8_t)(rtb_LogicalOperator1 || - (rtDW.ErrorActuator_o[i] != 0)); - - /* DataStoreWrite: '/Data Store Write' */ - rtDW.MODE_private_p[i] = 2U; - } - - /* MATLAB Function: '/Write ERROR' incorporates: - * DataStoreRead: '/Data Store Read6' - */ - /* : if(LOGGER>=0) */ - if (rtDW.LOGGER_LIN >= 0.0) { - /* : for i = 1:numel(ErrCallibration) */ - for (i = 0; i < 9; i++) { - /* : if ErrCallibration(i) == 1 */ - if (rtb_LogicalOperator3_a0[i]) { - /* : fprintf('[LIN 3] Failure with actuator #%d\n', int16(i)); */ - printf("[LIN 3] Failure with actuator #%d\n", (int16_t)(i + 1)); - fflush(stdout); - } - } - } - - /* End of MATLAB Function: '/Write ERROR' */ - for (i = 0; i < 9; i++) { - /* Logic: '/Logical Operator1' */ - rtb_LogicalOperator1 = rtb_LogicalOperator3_a0[i]; - - /* DataTypeConversion: '/Data Type Conversion' incorporates: - * DataStoreRead: '/Data Store Read' - * DataStoreWrite: '/Data Store Write' - * Logic: '/Logical Operator' - * Logic: '/Logical Operator1' - */ - rtDW.ErrorCalibration_private_h[i] = (uint8_t)((!rtb_LogicalOperator1) && - (rtDW.ErrorCalibration_private_h[i] != 0)); - - /* DataStoreWrite: '/Data Store Write' incorporates: - * DataTypeConversion: '/Data Type Conversion' - */ - rtDW.dtc_state_error_model[i + 54] = rtb_LogicalOperator1; - } - - /* DataStoreWrite: '/Data Store Write' incorporates: - * Constant: '/Constant' - */ - rtDW.stepSig_private_o = 1; - - /* MATLAB Function: '/MAX POSITION' incorporates: - * DataStoreRead: '/Data Store Read5' - * DataStoreRead: '/MIN ACT1T 1' - * DataStoreWrite: '/Data Store Write' - */ - /* : if(LOGGER>0) */ - if (rtDW.LOGGER_LIN > 0.0) { - /* : fprintf("[LIN 3] Homing 1. Start Callibration \n"); */ - printf("[LIN 3] Homing 1. Start Callibration \n"); - fflush(stdout); - - /* : for i = 1:numel(MAX) */ - for (i = 0; i < 6; i++) { - /* : if(ERRORS(i)==1) */ - if (rtDW.ErrorCalibration_private_h[i] == 1) { - /* : fprintf('[LIN 3] ACT%d MAX = %d KOEF = %f Callibration = %d \n', int16(i), int16(MAX(i)), KOEF(i), int16(ERRORS(i))); */ - printf("[LIN 3] ACT%d MAX = %d KOEF = %f Callibration = %d \n", - (int16_t)(i + 1), rtDW.MaxPositionCh2_private[i], - rtb_Divide1_gdi[i], (int16_t) - rtDW.ErrorCalibration_private_h[i]); - fflush(stdout); - } - } - } - - /* End of MATLAB Function: '/MAX POSITION' */ - - /* Logic: '/Logical Operator2' incorporates: - * DataStoreWrite: '/Data Store Write' - */ - rtb_LogicalOperator1 = (rtDW.ErrorCalibration_private_h[0] != 0); - for (q0 = 0; q0 < 8; q0++) { - rtb_LogicalOperator1 = (rtb_LogicalOperator1 || - (rtDW.ErrorCalibration_private_h[q0 + 1] != 0)); - } - - /* Switch: '/Switch' incorporates: - * Logic: '/Logical Operator2' - */ - if (rtb_LogicalOperator1) { - /* Merge: '/Merge' incorporates: - * Constant: '/Constant1' - */ - rtB.Merge_j = 2; - } else { - /* Merge: '/Merge' incorporates: - * Constant: '/Constant1' - */ - rtB.Merge_j = 4; - } - - /* End of Switch: '/Switch' */ - /* End of Outputs for SubSystem: '/Switch Case Action Subsystem1' */ - break; - - case 2: - /* Outputs for IfAction SubSystem: '/Switch Case Action Subsystem2' incorporates: - * ActionPort: '/Action Port' - */ - for (i = 0; i < 9; i++) { - /* RelationalOperator: '/Compare' */ - rtb_Divide1 = rtb_Divide1_gdi[i]; - - /* Logic: '/Logical Operator3' incorporates: - * Constant: '/Constant' - * Constant: '/Constant' - * DataStoreRead: '/Data Store Read' - * Logic: '/Logical Operator1' - * Logic: '/Logical Operator4' - * RelationalOperator: '/Compare' - * RelationalOperator: '/Compare' - */ - rtb_LogicalOperator1 = (((rtb_Divide1 < 0.97) || (rtb_Divide1 > 1.03)) && - (rtDW.ErrorCalibration_private_h[i] != 0)); - rtb_LogicalOperator3_a0[i] = rtb_LogicalOperator1; - - /* DataTypeConversion: '/Data Type Conversion' incorporates: - * DataStoreWrite: '/Data Store Write1' - */ - rtDW.ErrorCalibration_private_h[i] = rtb_LogicalOperator1; - } - - /* MATLAB Function: '/MAX POSITION' incorporates: - * DataStoreRead: '/Data Store Read5' - * DataStoreRead: '/MIN ACT1T 1' - */ - /* : if(LOGGER>0) */ - if (rtDW.LOGGER_LIN > 0.0) { - /* : fprintf("[LIN 3] Homing 3. Callibration \n"); */ - printf("[LIN 3] Homing 3. Callibration \n"); - fflush(stdout); - - /* : for i = 1:numel(MAX) */ - for (i = 0; i < 6; i++) { - /* : if(ERRORS(i)==1) */ - if (rtb_LogicalOperator3_a0[i]) { - /* : fprintf('[LIN 3] ACT%d MAX = %d KOEF = %f Callibration = %d \n', int16(i), int16(MAX(i)), KOEF(i), int16(ERRORS(i))); */ - printf("[LIN 3] ACT%d MAX = %d KOEF = %f Callibration = %d \n", - (int16_t)(i + 1), rtDW.MaxPositionCh2_private[i], - rtb_Divide1_gdi[i], 1); - fflush(stdout); - } - } - } - - /* End of MATLAB Function: '/MAX POSITION' */ - - /* Logic: '/Logical Operator2' */ - rtb_LogicalOperator1 = rtb_LogicalOperator3_a0[0]; - for (q0 = 0; q0 < 8; q0++) { - rtb_LogicalOperator1 = (rtb_LogicalOperator1 || - rtb_LogicalOperator3_a0[q0 + 1]); - } - - /* Switch: '/Switch' incorporates: - * Logic: '/Logical Operator2' - */ - if (rtb_LogicalOperator1) { - /* Merge: '/Merge' incorporates: - * Constant: '/Constant3' - */ - rtB.Merge_j = 3; - } else { - /* Merge: '/Merge' incorporates: - * Constant: '/Constant1' - */ - rtB.Merge_j = 4; - } - - /* End of Switch: '/Switch' */ - /* End of Outputs for SubSystem: '/Switch Case Action Subsystem2' */ - break; - - case 3: - /* Outputs for IfAction SubSystem: '/Switch Case Action Subsystem3' incorporates: - * ActionPort: '/Action Port' - */ - /* MATLAB Function: '/MAX POSITION' incorporates: - * DataStoreRead: '/Data Store Read1' - * DataStoreRead: '/Data Store Read5' - */ - /* : if(LOGGER>1) */ - if (rtDW.LOGGER_LIN > 1.0) { - /* : fprintf("[LIN 3] Homing 3. Start Time on step %d\n",int16(step)); */ - rtb_Divide1 = rt_roundd(rtDW.ErrorHomming_private_m); - if (rtb_Divide1 < 32768.0) { - if (rtb_Divide1 >= -32768.0) { - AMB = (int16_t)rtb_Divide1; - } else { - AMB = INT16_MIN; - } - } else { - AMB = INT16_MAX; - } - - printf("[LIN 3] Homing 3. Start Time on step %d\n", AMB); - fflush(stdout); - } - - /* End of MATLAB Function: '/MAX POSITION' */ - - /* If: '/If' incorporates: - * DataStoreRead: '/Data Store Read1' - */ - if (rtDW.ErrorHomming_private_m < 10.0) { - /* Outputs for IfAction SubSystem: '/If Action Subsystem' incorporates: - * ActionPort: '/Action Port' - */ - /* MATLAB Function: '/MATLAB Function' incorporates: - * DataStoreRead: '/Data Store Read' - * DataStoreRead: '/Data Store Read1' - */ - MATLABFunction(rtDW.Start_timer, rtDW.t_now, &rtb_dt_ih, - &rtDW.sf_MATLABFunction_c); - - /* MATLAB Function: '/MAX POSITION' incorporates: - * DataStoreRead: '/Data Store Read5' - */ - /* : if(LOGGER>1) */ - if (rtDW.LOGGER_LIN > 1.0) { - /* : fprintf("[LIN 3] Homing 3. Start TIme dt = %d \n",int32(data)); */ - rtb_dt_fa = rtb_dt_ih; - if (rtb_dt_ih > 2147483647U) { - rtb_dt_fa = 2147483647U; - } - - printf("[LIN 3] Homing 3. Start TIme dt = %d \n", (int32_t)rtb_dt_fa); - fflush(stdout); - } - - /* End of MATLAB Function: '/MAX POSITION' */ - - /* If: '/If' */ - if (rtb_dt_ih > 30000U) { - /* Outputs for IfAction SubSystem: '/If Action Subsystem' incorporates: - * ActionPort: '/Action Port' - */ - /* Merge: '/Merge' */ - IfActionSubsystem(&rtB.Merge_j, &rtDW.ErrorHomming_private_m, - &rtDW.Start_timer, &rtDW.stepSig_private_o); - - /* End of Outputs for SubSystem: '/If Action Subsystem' */ - } else { - /* Outputs for IfAction SubSystem: '/If Action Subsystem1' incorporates: - * ActionPort: '/Action Port' - */ - /* Merge: '/Merge' */ - IfActionSubsystem1(&rtB.Merge_j, &rtDW.Start_timer); - - /* End of Outputs for SubSystem: '/If Action Subsystem1' */ - } - - /* End of If: '/If' */ - /* End of Outputs for SubSystem: '/If Action Subsystem' */ - } else { - /* Outputs for IfAction SubSystem: '/If Action Subsystem1' incorporates: - * ActionPort: '/Action Port' - */ - IfActionSubsystem1_d(&rtB.Merge_j, &rtDW.CCU_ActuatorErrF_Stat_private, - rtDW.COM_private_b, rtDW.ErrorActuator_o, - rtDW.ErrorCalibration_private_h, &rtDW.LOGGER_LIN, - rtDW.MODE_private_p, rtDW.dtc_state_error_model); - - /* End of Outputs for SubSystem: '/If Action Subsystem1' */ - } - - /* End of If: '/If' */ - /* End of Outputs for SubSystem: '/Switch Case Action Subsystem3' */ - break; - - case 4: - /* Outputs for IfAction SubSystem: '/Switch Case Action Subsystem4' incorporates: - * ActionPort: '/Action Port' - */ - /* DataStoreWrite: '/Data Store Write' incorporates: - * Constant: '/Constant' - */ - rtDW.stepSig_private_o = 10; - - /* Merge: '/Merge' incorporates: - * Constant: '/Constant1' - * SignalConversion generated from: '/step' - */ - rtB.Merge_j = 5; - - /* MATLAB Function: '/MAX POSITION' incorporates: - * DataStoreRead: '/Data Store Read5' - */ - /* : if(LOGGER>0) */ - if (rtDW.LOGGER_LIN > 0.0) { - /* : fprintf("[LIN 3] Homing. Callibration successful \n"); */ - printf("[LIN 3] Homing. Callibration successful \n"); - fflush(stdout); - } - - /* End of MATLAB Function: '/MAX POSITION' */ - /* End of Outputs for SubSystem: '/Switch Case Action Subsystem4' */ - break; - } - - /* End of SwitchCase: '/Switch Case' */ - - /* DataStoreWrite: '/Data Store Write2' */ - rtDW.stepHoming_private_f = rtB.Merge_j; - - /* Merge: '/Merge' incorporates: - * DataStoreRead: '/Data Store Read7' - */ - rtB.Merge_bj = rtDW.stepSig_private_o; - - /* End of Outputs for SubSystem: '/Homing' */ - break; - } - - /* End of SwitchCase: '/Switch Case' */ - - /* Outport: '/CCU_Errors_model' incorporates: - * DataStoreRead: '/Data Store Read10' - */ - rtY.CCU_Errors_model = CCU_Errors_Model; - - /* DataStoreWrite: '/Finish write stepSig' */ - rtDW.stepSig_private_o = rtB.Merge_bj; - - /* BusCreator: '/Bus Creator' incorporates: - * DataStoreRead: '/Data Store Read' - * DataStoreRead: '/Data Store Read1' - * DataStoreRead: '/Data Store Read2' - * DataStoreRead: '/Data Store Read3' - * DataStoreRead: '/Data Store Read4' - * DataStoreRead: '/Data Store Read5' - * DataStoreRead: '/Data Store Read6' - * DataStoreRead: '/Data Store Read7' - * DataStoreRead: '/Data Store Read8' - * DataStoreWrite: '/Data Store Write' - */ - for (i = 0; i < 9; i++) { - Actuator_Ch2_Command_Model.POS[i] = rtDW.POS_private_g[i]; - Actuator_Ch2_Command_Model.BUS_ADR[i] = rtDW.BUS_ADR_private_p[i]; - Actuator_Ch2_Command_Model.MODE[i] = rtDW.MODE_private_p[i]; - Actuator_Ch2_Command_Model.COM[i] = rtDW.COM_private_b[i]; - Actuator_Ch2_Command_Model.Stall_SET[i] = rtDW.Stall_private_h3[i]; - Actuator_Ch2_Command_Model.Lnoise_SET[i] = rtDW.Lnoise_private_k[i]; - Actuator_Ch2_Command_Model.Autos_SET[i] = rtDW.Autos_private_k[i]; - Actuator_Ch2_Command_Model.Speed_SET[i] = rtDW.Speed_private_o[i]; - Actuator_Ch2_Command_Model.Coils_Stop_SET[i] = rtDW.Coils_private_m[i]; - } - - /* End of BusCreator: '/Bus Creator' */ - - /* RelationalOperator: '/Compare' incorporates: - * Constant: '/Constant' - * DataStoreRead: '/Data Store Read2' - */ - for (i = 0; i < 8; i++) { - rtb_Compare_l2[i] = (rtDW.ErrorCalibration_private_h[i] == 0); - } - - /* End of RelationalOperator: '/Compare' */ - - /* Logic: '/Logical Operator' */ - rtb_LogicalOperator1 = rtb_Compare_l2[0]; - for (q0 = 0; q0 < 7; q0++) { - rtb_LogicalOperator1 = (rtb_LogicalOperator1 || rtb_Compare_l2[q0 + 1]); - } - - /* Switch: '/Switch1' incorporates: - * Constant: '/Constant' - * Constant: '/Constant3' - * DataStoreRead: '/Data Store Read2' - * Logic: '/Logical Operator' - * Product: '/Product' - */ - for (i = 0; i < 8; i++) { - if (rtb_LogicalOperator1) { - rtb_DataTypeConversion_np[i] = (uint8_t)((uint32_t) - rtDW.ErrorCalibration_private_h[i] * rtConstP.Constant3_Value_j[i]); - } else { - rtb_DataTypeConversion_np[i] = 0U; - } - } - - /* End of Switch: '/Switch1' */ - - /* SignalConversion generated from: '/Vector Concatenate' incorporates: - * Constant: '/Constant1' - */ - rtb_DataTypeConversion_np[8] = 0U; - for (i = 0; i < 9; i++) { - /* DataStoreWrite: '/Data Store Write7' */ - rtDW.BUS_ADR_private_p[i] = rtb_DataTypeConversion_np[i]; - - /* DataStoreWrite: '/Data Store Write' */ - rtDW.COM_private_b[i] = 0U; - } - - /* DataStoreWrite: '/Data Store Write' incorporates: - * Constant: '/Constant' - */ - rtDW.LOGGER_LIN = 1.0; - - /* BusCreator: '/Bus Creator' incorporates: - * Constant: '/Constant2' - * Constant: '/Constant3' - * DataStoreRead: '/Data Store Read3' - * DataStoreRead: '/Data Store Read4' - * DataStoreWrite: '/Data Store Write' - */ - PWM_Get.pwmPercentFront = rtDW.PWM_front; - PWM_Get.pwmPercentRear = rtDW.PWM_rear; - PWM_Get.pwmPercentFrontReserved = 0U; - PWM_Get.pwmPercentRearReserved = 0U; - - /* MATLAB Function: '/Write' incorporates: - * DataStoreRead: '/Data Store Read' - */ - /* : if(LOGGER) */ - /* : fprintf('pwmPercentFront = %u \n',data); */ - printf("pwmPercentFront = %u \n", rtDW.PWM_Set_Model.pwmPercentFront); - fflush(stdout); - - /* MATLAB Function: '/Write1' incorporates: - * DataStoreRead: '/Data Store Read' - */ - /* : if(LOGGER) */ - /* : fprintf('pwmPercentRear = %u \n',data); */ - printf("pwmPercentRear = %u \n", rtDW.PWM_Set_Model.pwmPercentRear); - fflush(stdout); - - /* MATLAB Function: '/Write2' incorporates: - * DataStoreRead: '/Data Store Read' - */ - /* : if(LOGGER) */ - /* : fprintf('pwmPercentFrontReserved = %u \n',data); */ - printf("pwmPercentFrontReserved = %u \n", - rtDW.PWM_Set_Model.pwmPercentFrontReserved); - fflush(stdout); - - /* MATLAB Function: '/Write3' incorporates: - * DataStoreRead: '/Data Store Read' - */ - /* : if(LOGGER) */ - /* : fprintf('pwmPercentRearReserved = %u \n',data); */ - printf("pwmPercentRearReserved = %u \n", - rtDW.PWM_Set_Model.pwmPercentRearReserved); - fflush(stdout); - - /* BusCreator: '/Bus Creator1' incorporates: - * DataStoreRead: '/Data Store Read1' - * DataStoreRead: '/Data Store Read10' - * DataStoreRead: '/Data Store Read11' - * DataStoreRead: '/Data Store Read13' - * DataStoreRead: '/Data Store Read15' - * DataStoreRead: '/Data Store Read17' - * DataStoreRead: '/Data Store Read19' - * DataStoreRead: '/Data Store Read3' - * DataStoreRead: '/Data Store Read4' - * DataStoreRead: '/Data Store Read8' - * DataStoreWrite: '/Data Store Write1' - */ - rtDW.dbgCAN_dbg_Sen_Duct_model.dbg_Sen_Duct_FL_Fb_Select = 0; - rtDW.dbgCAN_dbg_Sen_Duct_model.dbg_Sen_Duct_FL_Lower_Fb = Duct3_F; - rtDW.dbgCAN_dbg_Sen_Duct_model.dbg_Sen_Duct_FL_Lower_Tgt = 0; - rtDW.dbgCAN_dbg_Sen_Duct_model.dbg_Sen_Duct_FL_Side_Fb = Duct5_F; - rtDW.dbgCAN_dbg_Sen_Duct_model.dbg_Sen_Duct_FL_Upper_Fb = Duct1_F; - rtDW.dbgCAN_dbg_Sen_Duct_model.dbg_Sen_Duct_FL_Upper_Tgt = 0; - rtDW.dbgCAN_dbg_Sen_Duct_model.dbg_Sen_Duct_MultMsg_Idx = 0; - rtDW.dbgCAN_dbg_Sen_Duct_model.dbg_Sen_Duct_FR_Fb_Select = 0; - rtDW.dbgCAN_dbg_Sen_Duct_model.dbg_Sen_Duct_FR_Lower_Fb = Duct4_F; - rtDW.dbgCAN_dbg_Sen_Duct_model.dbg_Sen_Duct_FR_Lower_Tgt = 0; - rtDW.dbgCAN_dbg_Sen_Duct_model.dbg_Sen_Duct_FR_Side_Fb = Duct6_F; - rtDW.dbgCAN_dbg_Sen_Duct_model.dbg_Sen_Duct_FR_Upper_Fb = Duct2_F; - rtDW.dbgCAN_dbg_Sen_Duct_model.dbg_Sen_Duct_FR_Upper_Tgt = 0; - rtDW.dbgCAN_dbg_Sen_Duct_model.dbg_Sen_Duct_RL_Fb = Duct3_R; - rtDW.dbgCAN_dbg_Sen_Duct_model.dbg_Sen_Duct_RL_Fb_Select = 0; - rtDW.dbgCAN_dbg_Sen_Duct_model.dbg_Sen_Duct_RL_Side_Fb = Duct1_R; - rtDW.dbgCAN_dbg_Sen_Duct_model.dbg_Sen_Duct_RL_Tgt = 0; - rtDW.dbgCAN_dbg_Sen_Duct_model.dbg_Sen_Duct_RR_Fb = Duct4_R; - rtDW.dbgCAN_dbg_Sen_Duct_model.dbg_Sen_Duct_RR_Fb_Select = 0; - rtDW.dbgCAN_dbg_Sen_Duct_model.dbg_Sen_Duct_RR_Side_Fb = Duct2_R; - rtDW.dbgCAN_dbg_Sen_Duct_model.dbg_Sen_Duct_RR_Tgt = 0; - - /* BusCreator: '/Bus Creator1' incorporates: - * DataStoreRead: '/Data Store Read3' - * DataStoreRead: '/Data Store Read4' - * DataStoreWrite: '/Data Store Write1' - */ - rtDW.dbgCAN_dbg_Act0_model.dbg_Act00_Def = Actuator_pos_percent_Ch0[0]; - rtDW.dbgCAN_dbg_Act0_model.dbg_Act01_Vent_SFL = Actuator_pos_percent_Ch0[5]; - rtDW.dbgCAN_dbg_Act0_model.dbg_Act02_Vent_CFL = Actuator_pos_percent_Ch0[4]; - rtDW.dbgCAN_dbg_Act0_model.dbg_Act03_Foot_1FL = Actuator_pos_percent_Ch0[7]; - rtDW.dbgCAN_dbg_Act0_model.dbg_Act04_Foot_2FL = Actuator_pos_percent_Ch0[8]; - rtDW.dbgCAN_dbg_Act0_model.dbg_Act05_Vent_CFR = rtb_DataTypeConversion_c1[1]; - rtDW.dbgCAN_dbg_Act0_model.dbg_Act06_Vent_SFR = rtb_DataTypeConversion_c1[2]; - rtDW.dbgCAN_dbg_Act0_model.dbg_Act07_Foot_1FR = rtb_DataTypeConversion_c1[4]; - - /* BusCreator: '/Bus Creator3' incorporates: - * DataStoreRead: '/Data Store Read3' - * DataStoreRead: '/Data Store Read4' - * DataStoreWrite: '/Data Store Write2' - * DataStoreWrite: '/Data Store Write2' - */ - rtDW.dbgCAN_dbg_Act2_model.dbg_Act16_TempL_FL = Actuator_pos_percent_Ch0[6]; - rtDW.dbgCAN_dbg_Act2_model.dbg_Act17_TempU_FR = rtb_DataTypeConversion_c1[0]; - rtDW.dbgCAN_dbg_Act2_model.dbg_Act18_TempL_FR = rtb_DataTypeConversion_c1[3]; - rtDW.dbgCAN_dbg_Act2_model.dbg_Act19_Temp_RL = rtb_DataTypeConversion_ns[1]; - rtDW.dbgCAN_dbg_Act2_model.dbg_Act20_Temp_RR = rtb_DataTypeConversion_ns[0]; - rtDW.dbgCAN_dbg_Act2_model.dbg_Act21_Rec = Actuator_pos_percent_Ch0[1]; - rtDW.dbgCAN_dbg_Act2_model.dbg_Act22_OSA = rtb_DataTypeConversion_ns[8]; - rtDW.dbgCAN_dbg_Act2_model.dbg_Act23_SealingValve = Actuator_pos_percent_Ch0[2]; - - /* BusCreator: '/Bus Creator2' incorporates: - * DataStoreRead: '/Data Store Read3' - * DataStoreRead: '/Data Store Read4' - * DataStoreWrite: '/Data Store Write3' - * DataStoreWrite: '/Data Store Write2' - */ - rtDW.dbgCAN_dbg_Act1_model.dbg_Act08_Foot_2FR = rtb_DataTypeConversion_c1[5]; - rtDW.dbgCAN_dbg_Act1_model.dbg_Act09_Vent_SRL = rtb_DataTypeConversion_ns[2]; - rtDW.dbgCAN_dbg_Act1_model.dbg_Act10_Vent_CRL = rtb_DataTypeConversion_ns[4]; - rtDW.dbgCAN_dbg_Act1_model.dbg_Act11_Foot_RL = rtb_DataTypeConversion_ns[3]; - rtDW.dbgCAN_dbg_Act1_model.dbg_Act12_Vent_CRR = rtb_DataTypeConversion_ns[5]; - rtDW.dbgCAN_dbg_Act1_model.dbg_Act13_Vent_SRR = rtb_DataTypeConversion_ns[7]; - rtDW.dbgCAN_dbg_Act1_model.dbg_Act14_Foot_RR = rtb_DataTypeConversion_ns[6]; - rtDW.dbgCAN_dbg_Act1_model.dbg_Act15_TempU_FL = Actuator_pos_percent_Ch0[3]; - - /* BusCreator: '/Bus Creator' incorporates: - * DataStoreRead: '/Data Store Read' - * DataStoreRead: '/Data Store Read1' - * DataStoreWrite: '/Data Store Write' - */ - rtDW.dbgCAN_dbg_Sen_Eva_model.dbg_Sen_Eva_F = Eva_F; - rtDW.dbgCAN_dbg_Sen_Eva_model.dbg_Sen_Eva_R = Eva_R; - rtDW.dbgCAN_dbg_Sen_Eva_model.dbg_Sen_Eva_Target = 0; - rtDW.dbgCAN_dbg_Sen_Eva_model.dbg_Sen_Eva_Diff_FrontRear = 0; - - /* Outport: '/PWM_Get' incorporates: - * DataStoreRead: '/Data Store Read7' - */ - rtY.PWM_Get_f = PWM_Get; - - /* Outport: '/dtc_state_error_model' incorporates: - * DataStoreRead: '/Data Store Read1' - */ - memcpy(&rtY.dtc_state_error_model[0], &rtDW.dtc_state_error_model[0], 127U * - sizeof(uint8_t)); - - /* Outport: '/dbgCAN_dbg_Act0_model' incorporates: - * DataStoreRead: '/Data Store Read3' - */ - rtY.dbgCAN_dbg_Act0_model = rtDW.dbgCAN_dbg_Act0_model; - - /* Outport: '/dbgCAN_dbg_Act1_model' incorporates: - * DataStoreRead: '/Data Store Read4' - */ - rtY.dbgCAN_dbg_Act1_model = rtDW.dbgCAN_dbg_Act1_model; - - /* Outport: '/dbgCAN_dbg_Act2_model' incorporates: - * DataStoreRead: '/Data Store Read5' - */ - rtY.dbgCAN_dbg_Act2_model = rtDW.dbgCAN_dbg_Act2_model; - - /* Outport: '/CCU_Stat1_model' incorporates: - * DataStoreRead: '/Data Store Read6' - */ - rtY.CCU_Stat1_model = rtDW.CCU_STAT1_MODEL; - - /* Outport: '/dbgCAN_dbg_Sen_Duct_model' incorporates: - * DataStoreRead: '/Data Store Read8' - */ - rtY.dbgCAN_dbg_Sen_Duct_model = rtDW.dbgCAN_dbg_Sen_Duct_model; - - /* Outport: '/dbgCAN_dbg_Sen_Eva_model' incorporates: - * DataStoreRead: '/Data Store Read9' - */ - rtY.dbgCAN_dbg_Sen_Eva_model = rtDW.dbgCAN_dbg_Sen_Eva_model; + FIU_SET_RR = (uint16_t)((0.5 * (double) + rtDW.FIU_CCU2_MODEL.FIU_TargetTempRR_Val_ro + 15.5) * 10.0); /* Outputs for Enabled SubSystem: '/Subsystem1' incorporates: * EnablePort: '/Enable' @@ -12340,16 +8820,21 @@ void HVAC_model_step(void) /* Outputs for Enabled SubSystem: '/Subsystem14' incorporates: * EnablePort: '/Enable' */ + /* SignalConversion generated from: '/Bus Selector' incorporates: + * DataStoreRead: '/Data Store Read1' + */ if (rtDW.FIU_CCU1_MODEL.FIU_BlowerSpeedFL_Req > 0) { /* DataStoreWrite: '/Data Store Write14' */ rtDW.FIU_BLOWERS_FL = rtDW.FIU_CCU1_MODEL.FIU_BlowerSpeedFL_Req; } + /* End of SignalConversion generated from: '/Bus Selector' */ /* End of Outputs for SubSystem: '/Subsystem14' */ /* Outputs for Enabled SubSystem: '/Subsystem15' incorporates: * EnablePort: '/Enable' */ + /* DataStoreRead: '/Data Store Read1' */ if (rtDW.FIU_CCU1_MODEL.FIU_BlowerSpeedFR_Req > 0) { /* DataStoreWrite: '/Data Store Write15' */ rtDW.FIU_BLOWERS_FR = rtDW.FIU_CCU1_MODEL.FIU_BlowerSpeedFR_Req; @@ -12387,40 +8872,6 @@ void HVAC_model_step(void) /* End of Outputs for SubSystem: '/Subsystem18' */ - /* Outputs for Enabled SubSystem: '/Subsystem5' incorporates: - * EnablePort: '/Enable' - */ - if (rtDW.FIU_CCU1_MODEL.FIU_TargetTempFL_Val_ro > 0) { - /* DataTypeConversion: '/Data Type Conversion1' incorporates: - * Bias: '/Bias' - * DataStoreWrite: '/Data Store Write1' - * DataTypeConversion: '/Data Type Conversion' - * Gain: '/Gain' - * Gain: '/Gain1' - */ - rtDW.FIU_SET_FL = (uint8_t)((0.5 * (double) - rtDW.FIU_CCU1_MODEL.FIU_TargetTempFL_Val_ro + 15.5) * 10.0); - } - - /* End of Outputs for SubSystem: '/Subsystem5' */ - - /* Outputs for Enabled SubSystem: '/Subsystem6' incorporates: - * EnablePort: '/Enable' - */ - if (rtDW.FIU_CCU1_MODEL.FIU_TargetTempFR_Val_ro > 0) { - /* DataTypeConversion: '/Data Type Conversion1' incorporates: - * Bias: '/Bias' - * DataStoreWrite: '/Data Store Write' - * DataTypeConversion: '/Data Type Conversion' - * Gain: '/Gain' - * Gain: '/Gain1' - */ - rtDW.FIU_SET_FR = (uint8_t)((0.5 * (double) - rtDW.FIU_CCU1_MODEL.FIU_TargetTempFR_Val_ro + 15.5) * 10.0); - } - - /* End of Outputs for SubSystem: '/Subsystem6' */ - /* Outputs for Enabled SubSystem: '/Subsystem7' incorporates: * EnablePort: '/Enable' */ @@ -12449,343 +8900,4790 @@ void HVAC_model_step(void) rtDW.FIU_FOOT_FL = rtDW.FIU_CCU1_MODEL.FIU_AirDirectionFL_Foot_Req; } - /* End of DataStoreRead: '/Data Store Read1' */ /* End of Outputs for SubSystem: '/Subsystem9' */ - /* Outputs for Enabled SubSystem: '/Subsystem2' incorporates: - * EnablePort: '/Enable' + /* BusCreator: '/Bus Creator' incorporates: + * DataStoreRead: '/Data Store Read' + * DataStoreRead: '/Data Store Read1' + * DataStoreRead: '/Data Store Read10' + * DataStoreRead: '/Data Store Read17' + * DataStoreRead: '/Data Store Read18' + * DataStoreRead: '/Data Store Read19' + * DataStoreRead: '/Data Store Read2' + * DataStoreRead: '/Data Store Read20' + * DataStoreRead: '/Data Store Read21' + * DataStoreRead: '/Data Store Read22' + * DataStoreRead: '/Data Store Read23' + * DataStoreRead: '/Data Store Read24' + * DataStoreRead: '/Data Store Read3' + * DataStoreRead: '/Data Store Read4' + * DataStoreRead: '/Data Store Read5' + * DataStoreRead: '/Data Store Read6' + * DataStoreRead: '/Data Store Read7' + * DataStoreRead: '/Data Store Read8' + * DataStoreRead: '/Data Store Read9' + * DataStoreWrite: '/Data Store Write' + * Switch: '/Switch' + * Switch: '/Switch' + * Switch: '/Switch' + * Switch: '/Switch' + * Switch: '/Switch' + * Switch: '/Switch' + * Switch: '/Switch' + * Switch: '/Switch' + * Switch: '/Switch' + * Switch: '/Switch' + * Switch: '/Switch' + * Switch: '/Switch' + * Switch: '/Switch' + * Switch: '/Switch' */ - /* DataStoreRead: '/Data Store Read2' */ - if (rtDW.FIU_CCU2_MODEL.FIU_TargetTempRL_Val_ro > 0) { - /* DataTypeConversion: '/Data Type Conversion1' incorporates: - * Bias: '/Bias' - * DataStoreWrite: '/Data Store Write1' - * DataTypeConversion: '/Data Type Conversion' - * Gain: '/Gain' - * Gain: '/Gain1' + rtDW.CCU_STAT1_MODEL.CCU_ModeFL_Stat = (uint8_t)(rtDW.FIU_MODE_FL > 1); + rtDW.CCU_STAT1_MODEL.CCU_ModeFR_Stat = (uint8_t)(rtDW.FIU_MODE_FR > 1); + rtDW.CCU_STAT1_MODEL.CCU_ModeRL_Stat = (uint8_t)(rtDW.FIU_MODE_RL > 1); + rtDW.CCU_STAT1_MODEL.CCU_ModeRR_Stat = (uint8_t)(rtDW.FIU_MODE_RR > 1); + rtDW.CCU_STAT1_MODEL.CCU_AutoModeFL_Stat = rtDW.FIU_AUTOMODE_FL; + rtDW.CCU_STAT1_MODEL.CCU_AutoModeFR_Stat = rtDW.FIU_AUTOMODE_FR; + rtDW.CCU_STAT1_MODEL.CCU_AirDirectionRL_Face_Stat = (uint8_t)(rtDW.FIU_FACE_RL + <= 1); + rtDW.CCU_STAT1_MODEL.CCU_AirDirectionRL_Foot_Stat = (uint8_t)(rtDW.FIU_FOOT_RL + <= 1); + rtDW.CCU_STAT1_MODEL.CCU_AutoModeRL_Stat = rtDW.FIU_AUTOMODE_RL; + rtDW.CCU_STAT1_MODEL.CCU_AutoModeRR_Stat = rtDW.FIU_AUTOMODE_RR; + rtDW.CCU_STAT1_MODEL.CCU_AirDirectionRR_Face_Stat = (uint8_t)(rtDW.FIU_FACE_RR + <= 1); + rtDW.CCU_STAT1_MODEL.CCU_AirDirectionRR_Foot_Stat = (uint8_t)(rtDW.FIU_FOOT_RR + <= 1); + rtDW.CCU_STAT1_MODEL.CCU_AirDirectionFL_Def_Stat = (uint8_t)(rtDW.FIU_DEF_FL <= + 1); + rtDW.CCU_STAT1_MODEL.CCU_AirDirectionFL_Face_Stat = (uint8_t)(rtDW.FIU_FACE_FL + <= 1); + rtDW.CCU_STAT1_MODEL.CCU_AirDirectionFL_Foot_Stat = (uint8_t)(rtDW.FIU_FOOT_FL + <= 1); + rtDW.CCU_STAT1_MODEL.CCU_AirDirectionFR_Def_Stat = (uint8_t)(rtDW.FIU_DEF_FR <= + 1); + rtDW.CCU_STAT1_MODEL.CCU_AirDirectionFR_Face_Stat = (uint8_t)(rtDW.FIU_FACE_FR + <= 1); + rtDW.CCU_STAT1_MODEL.CCU_AirDirectionFR_Foot_Stat = (uint8_t)(rtDW.FIU_FOOT_FR + <= 1); + rtDW.CCU_STAT1_MODEL.CCU_Recirculation_Stat = rtDW.FIU_RECIRC; + + /* Switch: '/Switch4' incorporates: + * DataStoreRead: '/Data Store Read11' + */ + if (rtDW.FIU_BLOWERS_FL > 7) { + /* BusCreator: '/Bus Creator' incorporates: + * Constant: '/manual1' + * DataStoreWrite: '/Data Store Write' */ - rtDW.FIU_SET_RL = (uint8_t)((0.5 * (double) - rtDW.FIU_CCU2_MODEL.FIU_TargetTempRL_Val_ro + 15.5) * 10.0); + rtDW.CCU_STAT1_MODEL.CCU_BlowerSpeedFL_Stat = 0U; + } else { + /* BusCreator: '/Bus Creator' incorporates: + * DataStoreWrite: '/Data Store Write' + */ + rtDW.CCU_STAT1_MODEL.CCU_BlowerSpeedFL_Stat = rtDW.FIU_BLOWERS_FL; } - /* End of Outputs for SubSystem: '/Subsystem2' */ + /* End of Switch: '/Switch4' */ - /* Outputs for Enabled SubSystem: '/Subsystem3' incorporates: - * EnablePort: '/Enable' + /* Saturate: '/Saturation' incorporates: + * DataStoreRead: '/Data Store Read13' */ - if (rtDW.FIU_CCU2_MODEL.FIU_TargetTempRR_Val_ro > 0) { - /* DataTypeConversion: '/Data Type Conversion1' incorporates: - * Bias: '/Bias' - * DataStoreWrite: '/Data Store Write1' - * DataTypeConversion: '/Data Type Conversion' - * Gain: '/Gain' - * Gain: '/Gain1' - */ - rtDW.FIU_SET_RR = (uint8_t)((0.5 * (double) - rtDW.FIU_CCU2_MODEL.FIU_TargetTempRR_Val_ro + 15.5) * 10.0); + if (rtDW.FIU_SET_FL > 310) { + rtb_out_oc = 310U; + } else if (rtDW.FIU_SET_FL < 155) { + rtb_out_oc = 155U; + } else { + rtb_out_oc = rtDW.FIU_SET_FL; } - /* End of DataStoreRead: '/Data Store Read2' */ - /* End of Outputs for SubSystem: '/Subsystem3' */ - - /* Outputs for Atomic SubSystem: '/PWM and valves in manual' */ - /* MATLAB Function: '/AF for Vent mode' incorporates: - * DataStoreRead: '/Data Store Read11' + /* BusCreator: '/Bus Creator' incorporates: + * Bias: '/Bias' + * DataStoreWrite: '/Data Store Write' + * DataTypeConversion: '/Data Type Conversion' + * Gain: '/Gain' + * Gain: '/Gain1' + * Saturate: '/Saturation' */ - AFforVentmode(rtDW.FIU_BLOWERS_FR, &rtb_out_ee); + rtDW.CCU_STAT1_MODEL.CCU_TargetTempFL_Stat_ro = (uint8_t)((0.10000038146972656 + * (double)rtb_out_oc - 15.5) * 2.0); - /* MATLAB Function: '/AF for Bi Level' incorporates: - * DataStoreRead: '/Data Store Read11' + /* Switch: '/Switch5' incorporates: + * DataStoreRead: '/Data Store Read12' */ - AFforBiLevel(rtDW.FIU_BLOWERS_FR, &rtb_out_bc); + if (rtDW.FIU_BLOWERS_FR > 7) { + /* BusCreator: '/Bus Creator' incorporates: + * Constant: '/manual1' + * DataStoreWrite: '/Data Store Write' + */ + rtDW.CCU_STAT1_MODEL.CCU_BlowerSpeedFR_Stat = 0U; + } else { + /* BusCreator: '/Bus Creator' incorporates: + * DataStoreWrite: '/Data Store Write' + */ + rtDW.CCU_STAT1_MODEL.CCU_BlowerSpeedFR_Stat = rtDW.FIU_BLOWERS_FR; + } - /* MATLAB Function: '/AF for Foot' incorporates: - * DataStoreRead: '/Data Store Read11' + /* End of Switch: '/Switch5' */ + + /* Saturate: '/Saturation' incorporates: + * DataStoreRead: '/Data Store Read14' */ - AFforFoot(rtDW.FIU_BLOWERS_FR, &rtb_out_hi); + if (rtDW.FIU_SET_FR > 310) { + rtb_out_oc = 310U; + } else if (rtDW.FIU_SET_FR < 155) { + rtb_out_oc = 155U; + } else { + rtb_out_oc = rtDW.FIU_SET_FR; + } - /* MATLAB Function: '/AF for Foor + Def' incorporates: - * DataStoreRead: '/Data Store Read11' + /* BusCreator: '/Bus Creator' incorporates: + * Bias: '/Bias' + * DataStoreWrite: '/Data Store Write' + * DataTypeConversion: '/Data Type Conversion' + * Gain: '/Gain' + * Gain: '/Gain1' + * Saturate: '/Saturation' */ - AFforFoorDef(rtDW.FIU_BLOWERS_FR, &rtb_out_cb); + rtDW.CCU_STAT1_MODEL.CCU_TargetTempFR_Stat_ro = (uint8_t)((0.10000038146972656 + * (double)rtb_out_oc - 15.5) * 2.0); - /* MATLAB Function: '/AF for Def' incorporates: - * DataStoreRead: '/Data Store Read11' + /* Switch: '/Switch6' incorporates: + * DataStoreRead: '/Data Store Read26' */ - AFforDef(rtDW.FIU_BLOWERS_FR, &rtb_out_hz); + if (rtDW.FIU_BLOWERS_RL > 7) { + /* BusCreator: '/Bus Creator' incorporates: + * Constant: '/manual1' + * DataStoreWrite: '/Data Store Write' + */ + rtDW.CCU_STAT1_MODEL.CCU_BlowerSpeedRL_Stat = 0U; + } else { + /* BusCreator: '/Bus Creator' incorporates: + * DataStoreWrite: '/Data Store Write' + */ + rtDW.CCU_STAT1_MODEL.CCU_BlowerSpeedRL_Stat = rtDW.FIU_BLOWERS_RL; + } - /* MATLAB Function: '/AF for Hi_Level' incorporates: - * DataStoreRead: '/Data Store Read11' + /* End of Switch: '/Switch6' */ + + /* Saturate: '/Saturation' incorporates: + * DataStoreRead: '/Data Store Read15' */ - AFforHi_Level(rtDW.FIU_BLOWERS_FR, &rtb_out_i4); + if (FIU_SET_RR > 310) { + rtb_out_oc = 310U; + } else { + rtb_out_oc = FIU_SET_RR; + } - /* MultiPortSwitch: '/Multiport Switch' incorporates: - * Constant: '/Constant' - * Constant: '/Constant1' - * Constant: '/Constant2' - * Constant: '/Constant3' - * DataStoreRead: '/Data Store Read6' - * DataStoreRead: '/Data Store Read8' - * DataStoreRead: '/Data Store Read9' - * Gain: '/Gain1' - * Gain: '/Gain2' - * RelationalOperator: '/Relational Operator' - * RelationalOperator: '/Relational Operator1' - * RelationalOperator: '/Relational Operator2' - * Sum: '/Add' + /* BusCreator: '/Bus Creator' incorporates: + * Bias: '/Bias' + * DataStoreWrite: '/Data Store Write' + * DataTypeConversion: '/Data Type Conversion' + * Gain: '/Gain' + * Gain: '/Gain1' + * Saturate: '/Saturation' */ - switch ((int32_t)(((uint32_t)((rtDW.FIU_FACE_FL == 1) << 1) + (uint32_t) - (rtDW.FIU_DEF_FL == 1)) + (uint32_t)((rtDW.FIU_FOOT_FL == 1) - << 2))) { - case 0: - rtb_out_ee = 0U; - break; + rtDW.CCU_STAT1_MODEL.CCU_TargetTempRR_Stat_ro = (uint8_t)((0.10000038146972656 + * (double)rtb_out_oc - 15.5) * 2.0); + /* Switch: '/Switch7' incorporates: + * DataStoreRead: '/Data Store Read25' + */ + if (rtDW.FIU_BLOWERS_RR > 7) { + /* BusCreator: '/Bus Creator' incorporates: + * Constant: '/manual1' + * DataStoreWrite: '/Data Store Write' + */ + rtDW.CCU_STAT1_MODEL.CCU_BlowerSpeedRR_Stat = 0U; + } else { + /* BusCreator: '/Bus Creator' incorporates: + * DataStoreWrite: '/Data Store Write' + */ + rtDW.CCU_STAT1_MODEL.CCU_BlowerSpeedRR_Stat = rtDW.FIU_BLOWERS_RR; + } + + /* End of Switch: '/Switch7' */ + + /* DataTypeConversion: '/Data Type Conversion1' incorporates: + * Bias: '/Bias' + * DataStoreRead: '/Data Store Read2' + * DataTypeConversion: '/Data Type Conversion' + * Gain: '/Gain' + * Gain: '/Gain1' + */ + rtb_out_oc = (uint16_t)((0.5 * (double) + rtDW.FIU_CCU2_MODEL.FIU_TargetTempRL_Val_ro + 15.5) * 10.0); + + /* Saturate: '/Saturation' */ + if (rtb_out_oc > 310) { + rtb_out_oc = 310U; + } + + /* BusCreator: '/Bus Creator' incorporates: + * Bias: '/Bias' + * DataStoreWrite: '/Data Store Write' + * DataTypeConversion: '/Data Type Conversion' + * Gain: '/Gain' + * Gain: '/Gain1' + * Saturate: '/Saturation' + */ + rtDW.CCU_STAT1_MODEL.CCU_TargetTempRL_Stat_ro = (uint8_t)((0.10000038146972656 + * (double)rtb_out_oc - 15.5) * 2.0); + for (i = 0; i < 9; i++) { + /* Switch: '/Switch' incorporates: + * Constant: '/Constant' + * DataStoreRead: '/Data Store Read1' + * DataStoreRead: '/Data Store Read' + * Gain: '/Gain' + * Product: '/Divide' + */ + if (rtDW.MaxPositionCh0_private[i] != 0) { + y = 100 * (int16_t)div_nde_s32_floor + (Actuator_Ch0_Status_Model.in_CPOS_ALL[i], rtDW.MaxPositionCh0_private[i]); + } else { + y = 0; + } + + /* End of Switch: '/Switch' */ + + /* Saturate: '/Saturation' */ + if (y > 100) { + y = 100; + } else if (y < 0) { + y = 0; + } + + /* End of Saturate: '/Saturation' */ + + /* DataTypeConversion: '/Data Type Conversion' incorporates: + * DataTypeConversion: '/Data Type Conversion' + */ + rtb_DataTypeConversion_ns[i] = (uint8_t)y; + + /* DataStoreWrite: '/Data Store Write2' incorporates: + * DataTypeConversion: '/Data Type Conversion' + */ + Actuator_pos_percent_Ch0[i] = (uint8_t)y; + } + + /* Switch: '/Switch' incorporates: + * Constant: '/Constant1' + * DataStoreRead: '/Data Store Read' + * DataStoreRead: '/Data Store Read2' + */ + if (rtDW.stepSig_private > 0) { + rtb_Switch_hx = rtDW.stepSig_private; + } else { + rtb_Switch_hx = 1; + } + + /* End of Switch: '/Switch' */ + + /* SwitchCase: '/Switch Case' */ + switch (rtb_Switch_hx) { case 1: + /* Outputs for IfAction SubSystem: '/Stop Mode' incorporates: + * ActionPort: '/Action Port' + */ + /* If: '/If1' incorporates: + * DataStoreRead: '/Data Store Read1' + * DataStoreWrite: '/Data Store Write1' + * SignalConversion generated from: '/Bus Selector' + */ + if ((Actuator_Ch0_Status_Model.Busy == 0) && + (Actuator_Ch0_Status_Model.Error_Connect == 0)) { + /* Outputs for IfAction SubSystem: '/If Action Subsystem2' incorporates: + * ActionPort: '/Action Port' + */ + for (i = 0; i < 9; i++) { + /* DataStoreWrite: '/Data Store Write1' */ + rtDW.COM_private[i] = 1U; + + /* DataStoreWrite: '/Data Store Write' */ + rtDW.MODE_private[i] = 2U; + } + + /* Merge: '/Merge' incorporates: + * Constant: '/Constant' + * Sum: '/step inc' + */ + rtB.Merge_l = (int8_t)(rtb_Switch_hx + 1); + + /* MATLAB Function: '/Write' incorporates: + * DataStoreRead: '/Data Store Read3' + */ + /* : if(LOGGER == 2) */ + if (rtDW.LOGGER_LIN == 2.0) { + /* : fprintf('[LIN 1] Stop Mode\n'); */ + printf("[LIN 1] Stop Mode\n"); + fflush(stdout); + } + + /* End of MATLAB Function: '/Write' */ + /* End of Outputs for SubSystem: '/If Action Subsystem2' */ + } else { + /* Outputs for IfAction SubSystem: '/If Action Subsystem3' incorporates: + * ActionPort: '/Action Port' + */ + /* Merge: '/Merge' incorporates: + * SignalConversion generated from: '/stepIn' + */ + rtB.Merge_l = rtb_Switch_hx; + + /* End of Outputs for SubSystem: '/If Action Subsystem3' */ + } + + /* End of If: '/If1' */ + /* End of Outputs for SubSystem: '/Stop Mode' */ break; case 2: - rtb_out_ee = rtb_out_bc; + /* Outputs for IfAction SubSystem: '/Initial CPOS Min' incorporates: + * ActionPort: '/Action Port' + */ + /* If: '/If' incorporates: + * DataStoreRead: '/Data Store Read1' + * DataStoreWrite: '/Data Store Write1' + * SignalConversion generated from: '/Bus Selector' + */ + if ((Actuator_Ch0_Status_Model.Busy == 0) && + (Actuator_Ch0_Status_Model.Error_Connect == 0)) { + /* Outputs for IfAction SubSystem: '/If Action Subsystem' incorporates: + * ActionPort: '/Action Port' + */ + for (i = 0; i < 9; i++) { + /* DataStoreWrite: '/Data Store Write' */ + rtDW.POS_private[i] = 6000U; + + /* DataStoreWrite: '/Data Store Write1' */ + rtDW.COM_private[i] = 2U; + } + + /* Merge: '/Merge' incorporates: + * Constant: '/Constant' + * Merge: '/Merge' + * Sum: '/step inc' + */ + rtB.Merge_l = (int8_t)(rtb_Switch_hx + 1); + + /* MATLAB Function: '/Write' incorporates: + * DataStoreRead: '/Data Store Read3' + */ + /* : if(LOGGER == 2) */ + if (rtDW.LOGGER_LIN == 2.0) { + /* : fprintf('[LIN 1] Initial CPOS Min\n'); */ + printf("[LIN 1] Initial CPOS Min\n"); + fflush(stdout); + } + + /* End of MATLAB Function: '/Write' */ + /* End of Outputs for SubSystem: '/If Action Subsystem' */ + } else { + /* Outputs for IfAction SubSystem: '/If Action Subsystem3' incorporates: + * ActionPort: '/Action Port' + */ + /* Merge: '/Merge' incorporates: + * Merge: '/Merge' + * SignalConversion generated from: '/stepIn1' + */ + rtB.Merge_l = rtb_Switch_hx; + + /* End of Outputs for SubSystem: '/If Action Subsystem3' */ + } + + /* End of If: '/If' */ + /* End of Outputs for SubSystem: '/Initial CPOS Min' */ break; case 3: - rtb_out_ee = rtb_out_hi; + /* Outputs for IfAction SubSystem: '/Normal Mode' incorporates: + * ActionPort: '/Action Port' + */ + /* If: '/If1' incorporates: + * DataStoreRead: '/Data Store Read1' + * DataStoreWrite: '/Data Store Write1' + * SignalConversion generated from: '/Bus Selector' + */ + if ((Actuator_Ch0_Status_Model.Busy == 0) && + (Actuator_Ch0_Status_Model.Error_Connect == 0)) { + /* Outputs for IfAction SubSystem: '/If Action Subsystem2' incorporates: + * ActionPort: '/Action Port' + */ + for (i = 0; i < 9; i++) { + /* DataStoreWrite: '/Data Store Write' */ + rtDW.MODE_private[i] = 0U; + + /* DataStoreWrite: '/Data Store Write1' */ + rtDW.COM_private[i] = 1U; + } + + /* Merge: '/Merge' incorporates: + * Constant: '/Constant' + * Sum: '/step inc' + */ + rtB.Merge_l = (int8_t)(rtb_Switch_hx + 1); + + /* MATLAB Function: '/Write' incorporates: + * DataStoreRead: '/Data Store Read3' + */ + /* : if(LOGGER == 2) */ + if (rtDW.LOGGER_LIN == 2.0) { + /* : fprintf('[LIN 1] Normal Mode\n'); */ + printf("[LIN 1] Normal Mode\n"); + fflush(stdout); + } + + /* End of MATLAB Function: '/Write' */ + /* End of Outputs for SubSystem: '/If Action Subsystem2' */ + } else { + /* Outputs for IfAction SubSystem: '/If Action Subsystem3' incorporates: + * ActionPort: '/Action Port' + */ + /* Merge: '/Merge' incorporates: + * SignalConversion generated from: '/stepIn' + */ + rtB.Merge_l = rtb_Switch_hx; + + /* End of Outputs for SubSystem: '/If Action Subsystem3' */ + } + + /* End of If: '/If1' */ + /* End of Outputs for SubSystem: '/Normal Mode' */ break; case 4: - rtb_out_ee = rtb_out_cb; + /* Outputs for IfAction SubSystem: '/Move to position Min' incorporates: + * ActionPort: '/Action Port' + */ + /* If: '/If1' incorporates: + * DataStoreRead: '/Data Store Read1' + * DataStoreWrite: '/Data Store Write1' + * SignalConversion generated from: '/Bus Selector' + */ + if ((Actuator_Ch0_Status_Model.Busy == 0) && + (Actuator_Ch0_Status_Model.Error_Connect == 0)) { + /* Outputs for IfAction SubSystem: '/If Action Subsystem2' incorporates: + * ActionPort: '/Action Port' + */ + for (i = 0; i < 9; i++) { + /* DataStoreWrite: '/Data Store Write4' incorporates: + * Constant: '/Constant1' + */ + rtDW.Autos_private[i] = 1U; + + /* DataStoreWrite: '/Data Store Write2' incorporates: + * Constant: '/Constant10' + */ + rtDW.Stall_private[i] = 1U; + + /* DataStoreWrite: '/Data Store Write3' */ + rtDW.Lnoise_private[i] = 0U; + + /* DataStoreWrite: '/Data Store Write5' incorporates: + * Constant: '/Constant2' + */ + rtDW.Speed_private[i] = 3U; + + /* DataStoreWrite: '/Data Store Write6' incorporates: + * Constant: '/Constant3' + */ + rtDW.Coils_private[i] = 3U; + + /* DataStoreWrite: '/Data Store Write' */ + rtDW.POS_private[i] = 0U; + + /* DataStoreWrite: '/Data Store Write1' incorporates: + * Constant: '/Constant9' + */ + rtDW.COM_private[i] = 3U; + } + + /* Merge: '/Merge' incorporates: + * Constant: '/Constant' + * Sum: '/step inc' + */ + rtB.Merge_l = (int8_t)(rtb_Switch_hx + 1); + + /* MATLAB Function: '/Write' incorporates: + * DataStoreRead: '/Data Store Read3' + */ + /* : if(LOGGER == 2) */ + if (rtDW.LOGGER_LIN == 2.0) { + /* : fprintf('[LIN 1] Move to position Min\n'); */ + printf("[LIN 1] Move to position Min\n"); + fflush(stdout); + } + + /* End of MATLAB Function: '/Write' */ + /* End of Outputs for SubSystem: '/If Action Subsystem2' */ + } else { + /* Outputs for IfAction SubSystem: '/If Action Subsystem3' incorporates: + * ActionPort: '/Action Port' + */ + /* Merge: '/Merge' incorporates: + * SignalConversion generated from: '/stepIn' + */ + rtB.Merge_l = rtb_Switch_hx; + + /* End of Outputs for SubSystem: '/If Action Subsystem3' */ + } + + /* End of If: '/If1' */ + /* End of Outputs for SubSystem: '/Move to position Min' */ break; case 5: - rtb_out_ee = rtb_out_hz; + /* Outputs for IfAction SubSystem: '/Check Stall Min' incorporates: + * ActionPort: '/Action Port' + */ + /* Logic: '/Logical Operator3' incorporates: + * DataStoreRead: '/Data Store Read1' + * DataStoreRead: '/Data Store Read' + * Logic: '/Logical Operator1' + * Logic: '/Logical Operator2' + * RelationalOperator: '/Relational Operator' + * RelationalOperator: '/Relational Operator1' + */ + for (i = 0; i < 9; i++) { + rtb_LogicalOperator3_a0[i] = + ((Actuator_Ch0_Status_Model.in_Act_Stall_Slave[i] == 1) || + (Actuator_Ch0_Status_Model.in_CPOS_ALL[i] == 0) || + (rtDW.ErrorCalibration_private[i] == 0)); + } + + /* End of Logic: '/Logical Operator3' */ + + /* Logic: '/Logical Operator' incorporates: + * Logic: '/Logical Operator3' + */ + rtb_LogicalOperator1 = rtb_LogicalOperator3_a0[0]; + for (y = 0; y < 8; y++) { + rtb_LogicalOperator1 = (rtb_LogicalOperator1 && rtb_LogicalOperator3_a0[y + + 1]); + } + + /* If: '/If2' incorporates: + * DataStoreRead: '/Data Store Read1' + * DataStoreWrite: '/Data Store Write1' + * DataTypeConversion: '/Data Type Conversion' + * DataTypeConversion: '/Data Type Conversion1' + * Logic: '/Logical Operator' + * SignalConversion generated from: '/Bus Selector' + */ + if ((Actuator_Ch0_Status_Model.Busy == 0) && + (Actuator_Ch0_Status_Model.Error_Connect == 0) && rtb_LogicalOperator1) + { + /* Outputs for IfAction SubSystem: '/If Action Subsystem2' incorporates: + * ActionPort: '/Action Port' + */ + /* DataStoreWrite: '/Data Store Write1' */ + for (y = 0; y < 9; y++) { + /* Switch: '/Switch' incorporates: + * DataStoreRead: '/Data Store Read1' + */ + if (rtDW.ErrorCalibration_private[y] != 0) { + rtDW.MinPositionCh0_private[y] = + Actuator_Ch0_Status_Model.in_CPOS_ALL[y]; + } + + /* End of Switch: '/Switch' */ + } + + /* End of DataStoreWrite: '/Data Store Write1' */ + + /* Merge: '/Merge' incorporates: + * Constant: '/Constant' + * Sum: '/step inc' + */ + rtB.Merge_l = (int8_t)(rtb_Switch_hx + 1); + + /* MATLAB Function: '/Write' incorporates: + * DataStoreRead: '/Data Store Read3' + */ + /* : if(LOGGER == 2) */ + if (rtDW.LOGGER_LIN == 2.0) { + /* : fprintf('[LIN 1] Check Stall Min\n'); */ + printf("[LIN 1] Check Stall Min\n"); + fflush(stdout); + } + + /* End of MATLAB Function: '/Write' */ + /* End of Outputs for SubSystem: '/If Action Subsystem2' */ + } else { + /* Outputs for IfAction SubSystem: '/If Action Subsystem3' incorporates: + * ActionPort: '/Action Port' + */ + /* Merge: '/Merge' incorporates: + * SignalConversion generated from: '/stepIn' + */ + rtB.Merge_l = rtb_Switch_hx; + + /* End of Outputs for SubSystem: '/If Action Subsystem3' */ + } + + /* End of If: '/If2' */ + /* End of Outputs for SubSystem: '/Check Stall Min' */ break; case 6: - rtb_out_ee = rtb_out_i4; + /* Outputs for IfAction SubSystem: '/Initial CPOS Max' incorporates: + * ActionPort: '/Action Port' + */ + /* If: '/If1' incorporates: + * DataStoreRead: '/Data Store Read1' + * DataStoreWrite: '/Data Store Write1' + * SignalConversion generated from: '/Bus Selector' + */ + if ((Actuator_Ch0_Status_Model.Busy == 0) && + (Actuator_Ch0_Status_Model.Error_Connect == 0)) { + /* Outputs for IfAction SubSystem: '/If Action Subsystem2' incorporates: + * ActionPort: '/Action Port' + */ + for (i = 0; i < 9; i++) { + /* DataStoreWrite: '/Data Store Write1' */ + rtDW.COM_private[i] = 2U; + + /* DataStoreWrite: '/Data Store Write' */ + rtDW.POS_private[i] = 0U; + } + + /* Merge: '/Merge' incorporates: + * Constant: '/Constant' + * Sum: '/step inc' + */ + rtB.Merge_l = (int8_t)(rtb_Switch_hx + 1); + + /* MATLAB Function: '/Write' incorporates: + * DataStoreRead: '/Data Store Read3' + */ + /* : if(LOGGER == 2) */ + if (rtDW.LOGGER_LIN == 2.0) { + /* : fprintf('[LIN 1] Initial CPOS Max\n'); */ + printf("[LIN 1] Initial CPOS Max\n"); + fflush(stdout); + } + + /* End of MATLAB Function: '/Write' */ + /* End of Outputs for SubSystem: '/If Action Subsystem2' */ + } else { + /* Outputs for IfAction SubSystem: '/If Action Subsystem3' incorporates: + * ActionPort: '/Action Port' + */ + /* Merge: '/Merge' incorporates: + * SignalConversion generated from: '/stepIn' + */ + rtB.Merge_l = rtb_Switch_hx; + + /* End of Outputs for SubSystem: '/If Action Subsystem3' */ + } + + /* End of If: '/If1' */ + /* End of Outputs for SubSystem: '/Initial CPOS Max' */ break; - default: - rtb_out_ee = 0U; + case 7: + /* Outputs for IfAction SubSystem: '/Move to position Max' incorporates: + * ActionPort: '/Action Port' + */ + /* If: '/If1' incorporates: + * DataStoreRead: '/Data Store Read1' + * DataStoreWrite: '/Data Store Write1' + * SignalConversion generated from: '/Bus Selector' + */ + if ((Actuator_Ch0_Status_Model.Busy == 0) && + (Actuator_Ch0_Status_Model.Error_Connect == 0)) { + /* Outputs for IfAction SubSystem: '/If Action Subsystem2' incorporates: + * ActionPort: '/Action Port' + */ + for (i = 0; i < 9; i++) { + /* DataStoreWrite: '/Data Store Write4' incorporates: + * Constant: '/Constant1' + */ + rtDW.Autos_private[i] = 1U; + + /* DataStoreWrite: '/Data Store Write2' incorporates: + * Constant: '/Constant10' + */ + rtDW.Stall_private[i] = 1U; + + /* DataStoreWrite: '/Data Store Write3' */ + rtDW.Lnoise_private[i] = 0U; + + /* DataStoreWrite: '/Data Store Write5' incorporates: + * Constant: '/Constant2' + */ + rtDW.Speed_private[i] = 3U; + + /* DataStoreWrite: '/Data Store Write' */ + rtDW.POS_private[i] = 6000U; + + /* DataStoreWrite: '/Data Store Write1' incorporates: + * Constant: '/Constant9' + */ + rtDW.COM_private[i] = 3U; + + /* DataStoreWrite: '/Data Store Write6' */ + rtDW.Coils_private[i] = 0U; + } + + /* Merge: '/Merge' incorporates: + * Constant: '/Constant' + * Sum: '/step inc' + */ + rtB.Merge_l = (int8_t)(rtb_Switch_hx + 1); + + /* MATLAB Function: '/Write' incorporates: + * DataStoreRead: '/Data Store Read3' + */ + /* : if(LOGGER == 2) */ + if (rtDW.LOGGER_LIN == 2.0) { + /* : fprintf('[LIN 1] Move to position Max\n'); */ + printf("[LIN 1] Move to position Max\n"); + fflush(stdout); + } + + /* End of MATLAB Function: '/Write' */ + /* End of Outputs for SubSystem: '/If Action Subsystem2' */ + } else { + /* Outputs for IfAction SubSystem: '/If Action Subsystem3' incorporates: + * ActionPort: '/Action Port' + */ + /* Merge: '/Merge' incorporates: + * SignalConversion generated from: '/stepIn' + */ + rtB.Merge_l = rtb_Switch_hx; + + /* End of Outputs for SubSystem: '/If Action Subsystem3' */ + } + + /* End of If: '/If1' */ + /* End of Outputs for SubSystem: '/Move to position Max' */ + break; + + case 8: + /* Outputs for IfAction SubSystem: '/Check Stall Max' incorporates: + * ActionPort: '/Action Port' + */ + /* Logic: '/Logical Operator3' incorporates: + * DataStoreRead: '/Data Store Read1' + * DataStoreRead: '/Data Store Read' + * Logic: '/Logical Operator' + * Logic: '/Logical Operator2' + * RelationalOperator: '/Relational Operator' + * RelationalOperator: '/Relational Operator1' + */ + for (i = 0; i < 9; i++) { + rtb_LogicalOperator3_a0[i] = + ((Actuator_Ch0_Status_Model.in_Act_Stall_Slave[i] == 1) || + (Actuator_Ch0_Status_Model.in_CPOS_ALL[i] == 6000) || + (rtDW.ErrorCalibration_private[i] == 0)); + } + + /* End of Logic: '/Logical Operator3' */ + + /* Logic: '/Logical Operator1' incorporates: + * Logic: '/Logical Operator3' + */ + rtb_LogicalOperator1 = rtb_LogicalOperator3_a0[0]; + for (y = 0; y < 8; y++) { + rtb_LogicalOperator1 = (rtb_LogicalOperator1 && rtb_LogicalOperator3_a0[y + + 1]); + } + + /* If: '/If2' incorporates: + * DataStoreRead: '/Data Store Read1' + * DataStoreWrite: '/Data Store Write1' + * DataTypeConversion: '/Data Type Conversion' + * DataTypeConversion: '/Data Type Conversion1' + * Logic: '/Logical Operator1' + * SignalConversion generated from: '/Bus Selector' + */ + if ((Actuator_Ch0_Status_Model.Busy == 0) && + (Actuator_Ch0_Status_Model.Error_Connect == 0) && rtb_LogicalOperator1) + { + /* Outputs for IfAction SubSystem: '/If Action Subsystem2' incorporates: + * ActionPort: '/Action Port' + */ + /* DataStoreWrite: '/Data Store Write1' */ + for (y = 0; y < 9; y++) { + /* Switch: '/Switch' incorporates: + * DataStoreRead: '/Data Store Read1' + */ + if (rtDW.ErrorCalibration_private[y] != 0) { + rtDW.MaxPositionCh0_private[y] = + Actuator_Ch0_Status_Model.in_CPOS_ALL[y]; + } + + /* End of Switch: '/Switch' */ + } + + /* End of DataStoreWrite: '/Data Store Write1' */ + + /* Merge: '/Merge' incorporates: + * Constant: '/Constant' + * Sum: '/step inc' + */ + rtB.Merge_l = (int8_t)(rtb_Switch_hx + 1); + + /* MATLAB Function: '/Write' incorporates: + * DataStoreRead: '/Data Store Read3' + */ + /* : if(LOGGER == 2) */ + if (rtDW.LOGGER_LIN == 2.0) { + /* : fprintf('[LIN 1] Check Stall MAX\n'); */ + printf("[LIN 1] Check Stall MAX\n"); + fflush(stdout); + } + + /* End of MATLAB Function: '/Write' */ + /* End of Outputs for SubSystem: '/If Action Subsystem2' */ + } else { + /* Outputs for IfAction SubSystem: '/If Action Subsystem3' incorporates: + * ActionPort: '/Action Port' + */ + /* Merge: '/Merge' incorporates: + * SignalConversion generated from: '/stepIn' + */ + rtB.Merge_l = rtb_Switch_hx; + + /* End of Outputs for SubSystem: '/If Action Subsystem3' */ + } + + /* End of If: '/If2' */ + /* End of Outputs for SubSystem: '/Check Stall Max' */ + break; + + case 9: + /* Outputs for IfAction SubSystem: '/Homing' incorporates: + * ActionPort: '/Action Port' + */ + /* Product: '/Divide1' incorporates: + * Constant: '/ACT1' + * DataStoreRead: '/MAX ACT1T ' + */ + for (i = 0; i < 9; i++) { + rtb_Divide1_gdi[i] = (double)rtDW.MaxPositionCh0_private[i] / (double) + rtConstP.ACT1_Value[i]; + } + + /* End of Product: '/Divide1' */ + + /* SwitchCase: '/Switch Case' incorporates: + * DataStoreRead: '/Data Store Read4' + */ + switch (rtDW.stepHoming_private) { + case 0: + /* Outputs for IfAction SubSystem: '/Switch Case Action Subsystem' incorporates: + * ActionPort: '/Action Port' + */ + for (i = 0; i < 9; i++) { + /* RelationalOperator: '/Compare' */ + rtb_Divide1 = rtb_Divide1_gdi[i]; + + /* Logic: '/Logical Operator' incorporates: + * Constant: '/Constant' + * Constant: '/Constant' + * RelationalOperator: '/Compare' + * RelationalOperator: '/Compare' + */ + rtb_LogicalOperator1 = ((rtb_Divide1 >= 0.9) && (rtb_Divide1 <= 1.1)); + rtb_LogicalOperator3_a0[i] = rtb_LogicalOperator1; + + /* DataTypeConversion: '/Data Type Conversion' incorporates: + * DataStoreRead: '/Data Store Read' + * DataStoreWrite: '/Data Store Write' + * Logic: '/Logical Operator' + * Logic: '/Logical Operator1' + */ + rtDW.ErrorCalibration_private[i] = (uint8_t)((!rtb_LogicalOperator1) && + (rtDW.ErrorCalibration_private[i] != 0)); + } + + /* MATLAB Function: '/MAX POSITION' incorporates: + * DataStoreRead: '/Data Store Read5' + * DataStoreRead: '/MIN ACT1T 1' + * Logic: '/Logical Operator2' + */ + /* : if(LOGGER>0) */ + if (rtDW.LOGGER_LIN > 0.0) { + /* : fprintf("[LIN 1] Homing 0\n"); */ + printf("[LIN 1] Homing 0\n"); + fflush(stdout); + + /* : for i = 1:numel(MAX) */ + for (i = 0; i < 9; i++) { + /* : fprintf('[LIN 1] ACT%d MAX = %d KOEF = %f Callibration = %d \n', int16(i), int16(MAX(i)), KOEF(i), int16(ERRORS(i))); */ + printf("[LIN 1] ACT%d MAX = %d KOEF = %f Callibration = %d \n", + (int16_t)(i + 1), rtDW.MaxPositionCh0_private[i], + rtb_Divide1_gdi[i], (int16_t)!rtb_LogicalOperator3_a0[i]); + fflush(stdout); + } + } + + /* End of MATLAB Function: '/MAX POSITION' */ + + /* Logic: '/Logical Operator1' */ + rtb_LogicalOperator1 = rtb_LogicalOperator3_a0[0]; + for (y = 0; y < 8; y++) { + rtb_LogicalOperator1 = (rtb_LogicalOperator1 && + rtb_LogicalOperator3_a0[y + 1]); + } + + /* Switch: '/Switch' incorporates: + * Logic: '/Logical Operator1' + */ + if (rtb_LogicalOperator1) { + /* Merge: '/Merge' incorporates: + * Constant: '/Constant1' + */ + rtB.Merge_h1 = 4; + } else { + /* Merge: '/Merge' incorporates: + * Constant: '/Constant' + */ + rtB.Merge_h1 = 1; + } + + /* End of Switch: '/Switch' */ + /* End of Outputs for SubSystem: '/Switch Case Action Subsystem' */ + break; + + case 1: + /* Outputs for IfAction SubSystem: '/Switch Case Action Subsystem1' incorporates: + * ActionPort: '/Action Port' + */ + /* RelationalOperator: '/Compare' incorporates: + * Constant: '/Constant' + */ + for (i = 0; i < 9; i++) { + rtb_LogicalOperator3_a0[i] = (rtb_Divide1_gdi[i] > 1.5); + } + + /* End of RelationalOperator: '/Compare' */ + + /* Logic: '/Logical Operator' */ + rtb_LogicalOperator1 = rtb_LogicalOperator3_a0[0]; + for (y = 0; y < 8; y++) { + rtb_LogicalOperator1 = (rtb_LogicalOperator1 || + rtb_LogicalOperator3_a0[y + 1]); + } + + /* DataTypeConversion: '/Data Type Conversion' incorporates: + * DataStoreWrite: '/Data Store Write1' + * Logic: '/Logical Operator' + */ + rtDW.CCU_ActuatorErrF_Stat_private = rtb_LogicalOperator1; + for (i = 0; i < 9; i++) { + /* DataTypeConversion: '/Data Type Conversion1' incorporates: + * DataStoreWrite: '/Data Store Write2' + */ + rtb_LogicalOperator1 = rtb_LogicalOperator3_a0[i]; + rtDW.COM_private[i] = rtb_LogicalOperator1; + + /* DataTypeConversion: '/Data Type Conversion2' incorporates: + * DataStoreRead: '/Data Store Read' + * DataStoreWrite: '/Data Store Write3' + * Logic: '/Logical Operator1' + */ + rtDW.ErrorActuator[i] = (uint8_t)(rtb_LogicalOperator1 || + (rtDW.ErrorActuator[i] != 0)); + + /* DataStoreWrite: '/Data Store Write' */ + rtDW.MODE_private[i] = 2U; + } + + /* MATLAB Function: '/Write ERROR' incorporates: + * DataStoreRead: '/Data Store Read6' + */ + /* : if(LOGGER>=0) */ + if (rtDW.LOGGER_LIN >= 0.0) { + /* : for i = 1:numel(ErrCallibration) */ + for (i = 0; i < 9; i++) { + /* : if ErrCallibration(i) == 1 */ + if (rtb_LogicalOperator3_a0[i]) { + /* : fprintf('[LIN 1] Failure with actuator #%d\n', int16(i)); */ + printf("[LIN 1] Failure with actuator #%d\n", (int16_t)(i + 1)); + fflush(stdout); + } + } + } + + /* End of MATLAB Function: '/Write ERROR' */ + for (i = 0; i < 9; i++) { + /* Logic: '/Logical Operator1' */ + rtb_LogicalOperator1 = rtb_LogicalOperator3_a0[i]; + + /* DataTypeConversion: '/Data Type Conversion' incorporates: + * DataStoreRead: '/Data Store Read' + * DataStoreWrite: '/Data Store Write' + * Logic: '/Logical Operator' + * Logic: '/Logical Operator1' + */ + rtDW.ErrorCalibration_private[i] = (uint8_t)((!rtb_LogicalOperator1) && + (rtDW.ErrorCalibration_private[i] != 0)); + + /* DataStoreWrite: '/Data Store Write' incorporates: + * DataTypeConversion: '/Data Type Conversion' + */ + rtDW.dtc_state_error_model[i + 54] = rtb_LogicalOperator1; + } + + /* DataStoreWrite: '/Data Store Write' incorporates: + * Constant: '/Constant' + */ + rtDW.stepSig_private = 1; + + /* MATLAB Function: '/MAX POSITION' incorporates: + * DataStoreRead: '/Data Store Read5' + * DataStoreRead: '/MIN ACT1T 1' + * DataStoreWrite: '/Data Store Write' + */ + /* : if(LOGGER>0) */ + if (rtDW.LOGGER_LIN > 0.0) { + /* : fprintf("[LIN 1] Homing 1. Start Callibration \n"); */ + printf("[LIN 1] Homing 1. Start Callibration \n"); + fflush(stdout); + + /* : for i = 1:numel(MAX) */ + for (i = 0; i < 9; i++) { + /* : if(ERRORS(i)==1) */ + if (rtDW.ErrorCalibration_private[i] == 1) { + /* : fprintf('[LIN 1] ACT%d MAX = %d KOEF = %f Callibration = %d \n', int16(i), int16(MAX(i)), KOEF(i), int16(ERRORS(i))); */ + printf("[LIN 1] ACT%d MAX = %d KOEF = %f Callibration = %d \n", + (int16_t)(i + 1), rtDW.MaxPositionCh0_private[i], + rtb_Divide1_gdi[i], (int16_t)rtDW.ErrorCalibration_private[i]); + fflush(stdout); + } + } + } + + /* End of MATLAB Function: '/MAX POSITION' */ + + /* Logic: '/Logical Operator2' incorporates: + * DataStoreWrite: '/Data Store Write' + */ + rtb_LogicalOperator1 = (rtDW.ErrorCalibration_private[0] != 0); + for (y = 0; y < 8; y++) { + rtb_LogicalOperator1 = (rtb_LogicalOperator1 || + (rtDW.ErrorCalibration_private[y + 1] != 0)); + } + + /* Switch: '/Switch' incorporates: + * Logic: '/Logical Operator2' + */ + if (rtb_LogicalOperator1) { + /* Merge: '/Merge' incorporates: + * Constant: '/Constant1' + */ + rtB.Merge_h1 = 2; + } else { + /* Merge: '/Merge' incorporates: + * Constant: '/Constant1' + */ + rtB.Merge_h1 = 4; + } + + /* End of Switch: '/Switch' */ + /* End of Outputs for SubSystem: '/Switch Case Action Subsystem1' */ + break; + + case 2: + /* Outputs for IfAction SubSystem: '/Switch Case Action Subsystem2' incorporates: + * ActionPort: '/Action Port' + */ + for (i = 0; i < 9; i++) { + /* RelationalOperator: '/Compare' */ + rtb_Divide1 = rtb_Divide1_gdi[i]; + + /* Logic: '/Logical Operator3' incorporates: + * Constant: '/Constant' + * Constant: '/Constant' + * DataStoreRead: '/Data Store Read' + * Logic: '/Logical Operator1' + * Logic: '/Logical Operator4' + * RelationalOperator: '/Compare' + * RelationalOperator: '/Compare' + */ + rtb_LogicalOperator1 = (((rtb_Divide1 < 0.97) || (rtb_Divide1 > 1.03)) && + (rtDW.ErrorCalibration_private[i] != 0)); + rtb_LogicalOperator3_a0[i] = rtb_LogicalOperator1; + + /* DataTypeConversion: '/Data Type Conversion' incorporates: + * DataStoreWrite: '/Data Store Write1' + */ + rtDW.ErrorCalibration_private[i] = rtb_LogicalOperator1; + } + + /* MATLAB Function: '/MAX POSITION' incorporates: + * DataStoreRead: '/Data Store Read5' + * DataStoreRead: '/MIN ACT1T 1' + */ + /* : if(LOGGER>0) */ + if (rtDW.LOGGER_LIN > 0.0) { + /* : fprintf("[LIN 1] Homing 3. Callibration \n"); */ + printf("[LIN 1] Homing 3. Callibration \n"); + fflush(stdout); + + /* : for i = 1:numel(MAX) */ + for (i = 0; i < 9; i++) { + /* : if(ERRORS(i)==1) */ + if (rtb_LogicalOperator3_a0[i]) { + /* : fprintf('[LIN 1] ACT%d MAX = %d KOEF = %f Callibration = %d \n', int16(i), int16(MAX(i)), KOEF(i), int16(ERRORS(i))); */ + printf("[LIN 1] ACT%d MAX = %d KOEF = %f Callibration = %d \n", + (int16_t)(i + 1), rtDW.MaxPositionCh0_private[i], + rtb_Divide1_gdi[i], 1); + fflush(stdout); + } + } + } + + /* End of MATLAB Function: '/MAX POSITION' */ + + /* Logic: '/Logical Operator2' */ + rtb_LogicalOperator1 = rtb_LogicalOperator3_a0[0]; + for (y = 0; y < 8; y++) { + rtb_LogicalOperator1 = (rtb_LogicalOperator1 || + rtb_LogicalOperator3_a0[y + 1]); + } + + /* Switch: '/Switch' incorporates: + * Logic: '/Logical Operator2' + */ + if (rtb_LogicalOperator1) { + /* Merge: '/Merge' incorporates: + * Constant: '/Constant3' + */ + rtB.Merge_h1 = 3; + } else { + /* Merge: '/Merge' incorporates: + * Constant: '/Constant1' + */ + rtB.Merge_h1 = 4; + } + + /* End of Switch: '/Switch' */ + /* End of Outputs for SubSystem: '/Switch Case Action Subsystem2' */ + break; + + case 3: + /* Outputs for IfAction SubSystem: '/Switch Case Action Subsystem3' incorporates: + * ActionPort: '/Action Port' + */ + /* MATLAB Function: '/MAX POSITION' incorporates: + * DataStoreRead: '/Data Store Read1' + * DataStoreRead: '/Data Store Read5' + */ + /* : if(LOGGER>1) */ + if (rtDW.LOGGER_LIN > 1.0) { + /* : fprintf("[LIN 1] Homing 3. Start Time on step %d\n",int16(step)); */ + rtb_Divide1 = rt_roundd(rtDW.ErrorHomming_private); + if (rtb_Divide1 < 32768.0) { + if (rtb_Divide1 >= -32768.0) { + AMB = (int16_t)rtb_Divide1; + } else { + AMB = INT16_MIN; + } + } else { + AMB = INT16_MAX; + } + + printf("[LIN 1] Homing 3. Start Time on step %d\n", AMB); + fflush(stdout); + } + + /* End of MATLAB Function: '/MAX POSITION' */ + + /* If: '/If' incorporates: + * DataStoreRead: '/Data Store Read1' + */ + if (rtDW.ErrorHomming_private < 10.0) { + /* Outputs for IfAction SubSystem: '/If Action Subsystem' incorporates: + * ActionPort: '/Action Port' + */ + /* MATLAB Function: '/MATLAB Function' incorporates: + * DataStoreRead: '/Data Store Read' + * DataStoreRead: '/Data Store Read1' + */ + MATLABFunction(rtDW.Start_timer_i, rtDW.t_now, &rtb_dt_ih, + &rtDW.sf_MATLABFunction); + + /* MATLAB Function: '/MAX POSITION' incorporates: + * DataStoreRead: '/Data Store Read5' + */ + /* : if(LOGGER>1) */ + if (rtDW.LOGGER_LIN > 1.0) { + /* : fprintf("[LIN 1] Homing 3. Start TIme dt = %d \n",int32(data)); */ + rtb_dt_fa = rtb_dt_ih; + if (rtb_dt_ih > 2147483647U) { + rtb_dt_fa = 2147483647U; + } + + printf("[LIN 1] Homing 3. Start TIme dt = %d \n", (int32_t)rtb_dt_fa); + fflush(stdout); + } + + /* End of MATLAB Function: '/MAX POSITION' */ + + /* If: '/If' */ + if (rtb_dt_ih > 30000U) { + /* Outputs for IfAction SubSystem: '/If Action Subsystem' incorporates: + * ActionPort: '/Action Port' + */ + /* Merge: '/Merge' */ + IfActionSubsystem(&rtB.Merge_h1, &rtDW.ErrorHomming_private, + &rtDW.Start_timer_i, &rtDW.stepSig_private); + + /* End of Outputs for SubSystem: '/If Action Subsystem' */ + } else { + /* Outputs for IfAction SubSystem: '/If Action Subsystem1' incorporates: + * ActionPort: '/Action Port' + */ + /* DataStoreWrite: '/Data Store Write2' incorporates: + * Constant: '/Constant3' + */ + rtDW.Start_timer_i = 1.0; + + /* DataTypeConversion: '/Data Type Conversion2' incorporates: + * DataStoreRead: '/valves target in percent' + */ + for (i = 0; i < 9; i++) { + rtb_DataTypeConversion_md[i] = (uint8_t) + rtDW.valves_front_manual_target[i]; + } + + /* End of DataTypeConversion: '/Data Type Conversion2' */ + + /* SignalConversion generated from: '/Vector Concatenate' incorporates: + * Concatenate: '/Vector Concatenate' + */ + rtDW.BUS_ADR_private[0] = rtb_DataTypeConversion_md[8]; + + /* SignalConversion generated from: '/Vector Concatenate' incorporates: + * Concatenate: '/Vector Concatenate' + * DataStoreWrite: '/Data Store Write2' + */ + rtDW.BUS_ADR_private[1] = rtb_DataTypeConversion_ns[1]; + + /* SignalConversion generated from: '/Vector Concatenate' incorporates: + * Concatenate: '/Vector Concatenate' + * DataStoreWrite: '/Data Store Write2' + */ + rtDW.BUS_ADR_private[2] = rtb_DataTypeConversion_ns[2]; + + /* SignalConversion generated from: '/Vector Concatenate' incorporates: + * Concatenate: '/Vector Concatenate' + * DataStoreWrite: '/Data Store Write2' + */ + rtDW.BUS_ADR_private[3] = rtb_DataTypeConversion_ns[3]; + + /* SignalConversion generated from: '/Vector Concatenate' incorporates: + * Concatenate: '/Vector Concatenate' + */ + rtDW.BUS_ADR_private[4] = rtb_DataTypeConversion_md[1]; + + /* SignalConversion generated from: '/Vector Concatenate' incorporates: + * Concatenate: '/Vector Concatenate' + */ + rtDW.BUS_ADR_private[5] = rtb_DataTypeConversion_md[0]; + + /* SignalConversion generated from: '/Vector Concatenate' incorporates: + * Concatenate: '/Vector Concatenate' + * DataStoreWrite: '/Data Store Write2' + */ + rtDW.BUS_ADR_private[6] = rtb_DataTypeConversion_ns[6]; + + /* SignalConversion generated from: '/Vector Concatenate' incorporates: + * Concatenate: '/Vector Concatenate' + */ + rtDW.BUS_ADR_private[7] = rtb_DataTypeConversion_md[6]; + + /* SignalConversion generated from: '/Vector Concatenate' incorporates: + * Concatenate: '/Vector Concatenate' + */ + rtDW.BUS_ADR_private[8] = rtb_DataTypeConversion_md[7]; + for (i = 0; i < 9; i++) { + /* Product: '/Product' */ + rtb_Gain_ge = rtDW.BUS_ADR_private[i]; + + /* DataTypeConversion: '/Data Type Conversion1' incorporates: + * Constant: '/Constant1' + * DataStoreRead: '/Data Store Read' + * DataStoreWrite: '/Data Store Write' + * Product: '/Divide1' + * Product: '/Product' + */ + rtDW.POS_private[i] = (uint16_t)((double)(rtb_Gain_ge * + rtDW.MaxPositionCh0_private[i]) / 100.0); + + /* RelationalOperator: '/Relational Operator1' incorporates: + * DataStoreWrite: '/Data Store Write2' + */ + rtb_LogicalOperator3_a0[i] = (rtb_DataTypeConversion_ns[i] == + rtb_Gain_ge); + } + + /* Logic: '/Logical Operator' */ + rtb_LogicalOperator1 = rtb_LogicalOperator3_a0[0]; + for (y = 0; y < 8; y++) { + rtb_LogicalOperator1 = (rtb_LogicalOperator1 && + rtb_LogicalOperator3_a0[y + 1]); + } + + for (i = 0; i < 9; i++) { + /* Switch: '/Switch' incorporates: + * Constant: '/Constant4' + * Constant: '/Constant9' + * DataStoreWrite: '/Data Store Write1' + * Logic: '/Logical Operator' + */ + if (rtb_LogicalOperator1) { + rtDW.COM_private[i] = 0U; + } else { + rtDW.COM_private[i] = 3U; + } + + /* End of Switch: '/Switch' */ + + /* DataTypeConversion: '/Data Type Conversion1' incorporates: + * Concatenate: '/Vector Concatenate' + * Constant: '/Constant5' + * DataStoreWrite: '/Data Store Write2' + * DataStoreWrite: '/Data Store Write7' + * Product: '/Product' + * RelationalOperator: '/Relational Operator' + */ + rtDW.BUS_ADR_private[i] = (uint8_t)((uint32_t) + (rtb_DataTypeConversion_ns[i] != rtDW.BUS_ADR_private[i]) * + rtConstP.pooled76[i]); + + /* DataStoreWrite: '/Data Store Write4' incorporates: + * Constant: '/Constant1' + */ + rtDW.Autos_private[i] = 1U; + + /* DataStoreWrite: '/Data Store Write2' incorporates: + * Constant: '/Constant10' + */ + rtDW.Stall_private[i] = 1U; + + /* DataStoreWrite: '/Data Store Write3' incorporates: + * Constant: '/Constant11' + */ + rtDW.Lnoise_private[i] = 0U; + + /* DataStoreWrite: '/Data Store Write5' incorporates: + * Constant: '/Constant2' + */ + rtDW.Speed_private[i] = 3U; + + /* DataStoreWrite: '/Data Store Write6' incorporates: + * Constant: '/Constant3' + */ + rtDW.Coils_private[i] = 3U; + } + + /* Merge: '/Merge' incorporates: + * Constant: '/Constant1' + * Merge: '/Merge' + * SignalConversion generated from: '/Out1' + */ + rtB.Merge_h1 = 3; + + /* End of Outputs for SubSystem: '/If Action Subsystem1' */ + } + + /* End of If: '/If' */ + /* End of Outputs for SubSystem: '/If Action Subsystem' */ + } else { + /* Outputs for IfAction SubSystem: '/If Action Subsystem1' incorporates: + * ActionPort: '/Action Port' + */ + IfActionSubsystem1(&rtB.Merge_h1, &rtDW.CCU_ActuatorErrF_Stat_private, + rtDW.COM_private, rtDW.ErrorActuator, + rtDW.ErrorCalibration_private, &rtDW.LOGGER_LIN, + rtDW.MODE_private, rtDW.dtc_state_error_model); + + /* End of Outputs for SubSystem: '/If Action Subsystem1' */ + } + + /* End of If: '/If' */ + /* End of Outputs for SubSystem: '/Switch Case Action Subsystem3' */ + break; + + case 4: + /* Outputs for IfAction SubSystem: '/Switch Case Action Subsystem4' incorporates: + * ActionPort: '/Action Port' + */ + /* DataTypeConversion: '/Data Type Conversion2' incorporates: + * DataStoreRead: '/valves target in percent' + */ + for (i = 0; i < 9; i++) { + rtb_DataTypeConversion_md[i] = (uint8_t) + rtDW.valves_front_manual_target[i]; + } + + /* End of DataTypeConversion: '/Data Type Conversion2' */ + + /* SignalConversion generated from: '/Vector Concatenate' incorporates: + * Concatenate: '/Vector Concatenate' + */ + rtDW.BUS_ADR_private[0] = rtb_DataTypeConversion_md[8]; + + /* SignalConversion generated from: '/Vector Concatenate' incorporates: + * Concatenate: '/Vector Concatenate' + * DataStoreWrite: '/Data Store Write2' + */ + rtDW.BUS_ADR_private[1] = rtb_DataTypeConversion_ns[1]; + + /* SignalConversion generated from: '/Vector Concatenate' incorporates: + * Concatenate: '/Vector Concatenate' + * DataStoreWrite: '/Data Store Write2' + */ + rtDW.BUS_ADR_private[2] = rtb_DataTypeConversion_ns[2]; + + /* SignalConversion generated from: '/Vector Concatenate' incorporates: + * Concatenate: '/Vector Concatenate' + * DataStoreWrite: '/Data Store Write2' + */ + rtDW.BUS_ADR_private[3] = rtb_DataTypeConversion_ns[3]; + + /* SignalConversion generated from: '/Vector Concatenate' incorporates: + * Concatenate: '/Vector Concatenate' + */ + rtDW.BUS_ADR_private[4] = rtb_DataTypeConversion_md[1]; + + /* SignalConversion generated from: '/Vector Concatenate' incorporates: + * Concatenate: '/Vector Concatenate' + */ + rtDW.BUS_ADR_private[5] = rtb_DataTypeConversion_md[0]; + + /* SignalConversion generated from: '/Vector Concatenate' incorporates: + * Concatenate: '/Vector Concatenate' + * DataStoreWrite: '/Data Store Write2' + */ + rtDW.BUS_ADR_private[6] = rtb_DataTypeConversion_ns[6]; + + /* SignalConversion generated from: '/Vector Concatenate' incorporates: + * Concatenate: '/Vector Concatenate' + */ + rtDW.BUS_ADR_private[7] = rtb_DataTypeConversion_md[6]; + + /* SignalConversion generated from: '/Vector Concatenate' incorporates: + * Concatenate: '/Vector Concatenate' + */ + rtDW.BUS_ADR_private[8] = rtb_DataTypeConversion_md[7]; + for (i = 0; i < 9; i++) { + /* Product: '/Product' */ + rtb_Gain_ge = rtDW.BUS_ADR_private[i]; + + /* DataTypeConversion: '/Data Type Conversion1' incorporates: + * Constant: '/Constant1' + * DataStoreRead: '/Data Store Read' + * DataStoreWrite: '/Data Store Write' + * Product: '/Divide1' + * Product: '/Product' + */ + rtDW.POS_private[i] = (uint16_t)((double)(rtb_Gain_ge * + rtDW.MaxPositionCh0_private[i]) / 100.0); + + /* RelationalOperator: '/Relational Operator1' incorporates: + * DataStoreWrite: '/Data Store Write2' + */ + rtb_LogicalOperator3_a0[i] = (rtb_DataTypeConversion_ns[i] == + rtb_Gain_ge); + } + + /* Logic: '/Logical Operator' */ + rtb_LogicalOperator1 = rtb_LogicalOperator3_a0[0]; + for (y = 0; y < 8; y++) { + rtb_LogicalOperator1 = (rtb_LogicalOperator1 && + rtb_LogicalOperator3_a0[y + 1]); + } + + for (i = 0; i < 9; i++) { + /* Switch: '/Switch' incorporates: + * Constant: '/Constant4' + * Constant: '/Constant9' + * DataStoreWrite: '/Data Store Write1' + * Logic: '/Logical Operator' + */ + if (rtb_LogicalOperator1) { + rtDW.COM_private[i] = 0U; + } else { + rtDW.COM_private[i] = 3U; + } + + /* End of Switch: '/Switch' */ + + /* DataTypeConversion: '/Data Type Conversion1' incorporates: + * Concatenate: '/Vector Concatenate' + * Constant: '/Constant5' + * DataStoreWrite: '/Data Store Write2' + * DataStoreWrite: '/Data Store Write7' + * Product: '/Product' + * RelationalOperator: '/Relational Operator' + */ + rtDW.BUS_ADR_private[i] = (uint8_t)((uint32_t) + (rtb_DataTypeConversion_ns[i] != rtDW.BUS_ADR_private[i]) * + rtConstP.pooled76[i]); + + /* DataStoreWrite: '/Data Store Write4' incorporates: + * Constant: '/Constant1' + */ + rtDW.Autos_private[i] = 1U; + + /* DataStoreWrite: '/Data Store Write2' incorporates: + * Constant: '/Constant10' + */ + rtDW.Stall_private[i] = 1U; + + /* DataStoreWrite: '/Data Store Write3' incorporates: + * Constant: '/Constant11' + */ + rtDW.Lnoise_private[i] = 0U; + + /* DataStoreWrite: '/Data Store Write5' incorporates: + * Constant: '/Constant2' + */ + rtDW.Speed_private[i] = 3U; + + /* DataStoreWrite: '/Data Store Write6' incorporates: + * Constant: '/Constant3' + */ + rtDW.Coils_private[i] = 3U; + } + + /* Merge: '/Merge' incorporates: + * Constant: '/Constant1' + * SignalConversion generated from: '/step' + */ + rtB.Merge_h1 = 4; + + /* End of Outputs for SubSystem: '/Switch Case Action Subsystem4' */ + break; + } + + /* End of SwitchCase: '/Switch Case' */ + + /* DataStoreWrite: '/Data Store Write2' */ + rtDW.stepHoming_private = rtB.Merge_h1; + + /* Merge: '/Merge' incorporates: + * DataStoreRead: '/Data Store Read7' + */ + rtB.Merge_l = rtDW.stepSig_private; + + /* End of Outputs for SubSystem: '/Homing' */ break; } - /* End of MultiPortSwitch: '/Multiport Switch' */ + /* End of SwitchCase: '/Switch Case' */ - /* MATLAB Function: '/AF for Vent mode' incorporates: - * DataStoreRead: '/Data Store Read7' + /* DataStoreWrite: '/Finish write stepSig' */ + rtDW.stepSig_private = rtB.Merge_l; + for (i = 0; i < 9; i++) { + /* BusCreator: '/Bus Creator' incorporates: + * DataStoreRead: '/Data Store Read' + * DataStoreRead: '/Data Store Read1' + * DataStoreRead: '/Data Store Read2' + * DataStoreRead: '/Data Store Read3' + * DataStoreRead: '/Data Store Read4' + * DataStoreRead: '/Data Store Read5' + * DataStoreRead: '/Data Store Read6' + * DataStoreRead: '/Data Store Read7' + * DataStoreRead: '/Data Store Read8' + * DataStoreWrite: '/Data Store Write' + */ + Actuator_Ch0_Command_Model.POS[i] = rtDW.POS_private[i]; + Actuator_Ch0_Command_Model.BUS_ADR[i] = rtDW.BUS_ADR_private[i]; + Actuator_Ch0_Command_Model.MODE[i] = rtDW.MODE_private[i]; + Actuator_Ch0_Command_Model.COM[i] = rtDW.COM_private[i]; + Actuator_Ch0_Command_Model.Stall_SET[i] = rtDW.Stall_private[i]; + Actuator_Ch0_Command_Model.Lnoise_SET[i] = rtDW.Lnoise_private[i]; + Actuator_Ch0_Command_Model.Autos_SET[i] = rtDW.Autos_private[i]; + Actuator_Ch0_Command_Model.Speed_SET[i] = rtDW.Speed_private[i]; + Actuator_Ch0_Command_Model.Coils_Stop_SET[i] = rtDW.Coils_private[i]; + + /* RelationalOperator: '/Compare' incorporates: + * Constant: '/Constant' + * DataStoreRead: '/Data Store Read2' + */ + rtb_LogicalOperator3_a0[i] = (rtDW.ErrorCalibration_private[i] == 0); + } + + /* Logic: '/Logical Operator' */ + rtb_LogicalOperator1 = rtb_LogicalOperator3_a0[0]; + for (y = 0; y < 8; y++) { + rtb_LogicalOperator1 = (rtb_LogicalOperator1 || rtb_LogicalOperator3_a0[y + + 1]); + } + + for (i = 0; i < 9; i++) { + /* Switch: '/Switch1' incorporates: + * Concatenate: '/Vector Concatenate' + * Constant: '/Constant' + * Constant: '/Constant3' + * DataStoreRead: '/Data Store Read2' + * DataStoreWrite: '/Data Store Write7' + * Logic: '/Logical Operator' + * Product: '/Product' + */ + if (rtb_LogicalOperator1) { + rtDW.BUS_ADR_private[i] = (uint8_t)((uint32_t) + rtDW.ErrorCalibration_private[i] * rtConstP.pooled76[i]); + } else { + rtDW.BUS_ADR_private[i] = 0U; + } + + /* End of Switch: '/Switch1' */ + + /* DataStoreWrite: '/Data Store Write' */ + rtDW.COM_private[i] = 0U; + + /* Switch: '/Switch' incorporates: + * Constant: '/Constant' + * DataStoreRead: '/Data Store Read1' + * DataStoreRead: '/Data Store Read' + * Gain: '/Gain' + * Product: '/Divide' + */ + if (rtDW.MaxPositionCh1_private[i] != 0) { + y = 100 * (int16_t)div_nde_s32_floor + (Actuator_Ch1_Status_Model.in_CPOS_ALL[i], rtDW.MaxPositionCh1_private[i]); + } else { + y = 0; + } + + /* End of Switch: '/Switch' */ + + /* Saturate: '/Saturation' */ + if (y > 100) { + /* DataStoreWrite: '/Data Store Write2' */ + rtb_DataTypeConversion_md[i] = 100U; + } else if (y < 0) { + /* DataStoreWrite: '/Data Store Write2' */ + rtb_DataTypeConversion_md[i] = 0U; + } else { + /* DataStoreWrite: '/Data Store Write2' */ + rtb_DataTypeConversion_md[i] = (uint8_t)y; + } + + /* End of Saturate: '/Saturation' */ + } + + /* Switch: '/Switch' incorporates: + * Constant: '/Constant1' + * DataStoreRead: '/Data Store Read' + * DataStoreRead: '/Data Store Read2' */ - AFforVentmode(rtDW.FIU_BLOWERS_FL, &rtb_out_hi); + if (rtDW.stepSig_private_j > 0) { + rtb_Switch_hx = rtDW.stepSig_private_j; + } else { + rtb_Switch_hx = 1; + } - /* MATLAB Function: '/AF for Bi Level' incorporates: - * DataStoreRead: '/Data Store Read7' - */ - AFforBiLevel(rtDW.FIU_BLOWERS_FL, &rtb_out_cb); - - /* MATLAB Function: '/AF for Foot' incorporates: - * DataStoreRead: '/Data Store Read7' - */ - AFforFoot(rtDW.FIU_BLOWERS_FL, &rtb_out_hz); - - /* MATLAB Function: '/AF for Foor + Def' incorporates: - * DataStoreRead: '/Data Store Read7' - */ - AFforFoorDef(rtDW.FIU_BLOWERS_FL, &rtb_out_i4); - - /* MATLAB Function: '/AF for Def' incorporates: - * DataStoreRead: '/Data Store Read7' - */ - AFforDef(rtDW.FIU_BLOWERS_FL, &rtb_out_fm); - - /* MATLAB Function: '/AF for Hi_Level' incorporates: - * DataStoreRead: '/Data Store Read7' - */ - AFforHi_Level(rtDW.FIU_BLOWERS_FL, &rtb_out_d); - - /* MATLAB Function: '/AF for Tri-Level' incorporates: - * DataStoreRead: '/Data Store Read7' - */ - AFforTriLevel(rtDW.FIU_BLOWERS_FL, &rtb_out_bc); - - /* MultiPortSwitch: '/Multiport Switch' incorporates: - * Constant: '/Constant' - * Constant: '/Constant1' - * Constant: '/Constant2' - * Constant: '/Constant3' - * DataStoreRead: '/Data Store Read12' - * DataStoreRead: '/Data Store Read13' - * DataStoreRead: '/Data Store Read14' - * Gain: '/Gain1' - * Gain: '/Gain2' - * RelationalOperator: '/Relational Operator' - * RelationalOperator: '/Relational Operator1' - * RelationalOperator: '/Relational Operator2' - * Sum: '/Add' - */ - switch ((int32_t)(((uint32_t)((rtDW.FIU_FACE_FR == 1) << 1) + (uint32_t) - (rtDW.FIU_DEF_FR == 1)) + (uint32_t)((rtDW.FIU_FOOT_FR == 1) - << 2))) { - case 0: - rtb_out_bc = 0U; - break; + /* End of Switch: '/Switch' */ + /* SwitchCase: '/Switch Case' */ + switch (rtb_Switch_hx) { case 1: - rtb_out_bc = rtb_out_hi; + /* Outputs for IfAction SubSystem: '/Stop Mode' incorporates: + * ActionPort: '/Action Port' + */ + /* If: '/If1' incorporates: + * DataStoreRead: '/Data Store Read1' + * DataStoreWrite: '/Data Store Write1' + * SignalConversion generated from: '/Bus Selector' + */ + if ((Actuator_Ch1_Status_Model.Busy == 0) && + (Actuator_Ch1_Status_Model.Error_Connect == 0)) { + /* Outputs for IfAction SubSystem: '/If Action Subsystem2' incorporates: + * ActionPort: '/Action Port' + */ + for (i = 0; i < 9; i++) { + /* DataStoreWrite: '/Data Store Write1' */ + rtDW.COM_private_n[i] = 1U; + + /* DataStoreWrite: '/Data Store Write' */ + rtDW.MODE_private_a[i] = 2U; + } + + /* Merge: '/Merge' incorporates: + * Constant: '/Constant' + * Sum: '/step inc' + */ + rtB.Merge_h = (int8_t)(rtb_Switch_hx + 1); + + /* MATLAB Function: '/Write' incorporates: + * DataStoreRead: '/Data Store Read3' + */ + /* : if(LOGGER == 2) */ + if (rtDW.LOGGER_LIN == 2.0) { + /* : fprintf('[LIN 2] Stop Mode\n'); */ + printf("[LIN 2] Stop Mode\n"); + fflush(stdout); + } + + /* End of MATLAB Function: '/Write' */ + /* End of Outputs for SubSystem: '/If Action Subsystem2' */ + } else { + /* Outputs for IfAction SubSystem: '/If Action Subsystem3' incorporates: + * ActionPort: '/Action Port' + */ + /* Merge: '/Merge' incorporates: + * SignalConversion generated from: '/stepIn' + */ + rtB.Merge_h = rtb_Switch_hx; + + /* End of Outputs for SubSystem: '/If Action Subsystem3' */ + } + + /* End of If: '/If1' */ + /* End of Outputs for SubSystem: '/Stop Mode' */ break; case 2: - rtb_out_bc = rtb_out_cb; + /* Outputs for IfAction SubSystem: '/Initial CPOS Min' incorporates: + * ActionPort: '/Action Port' + */ + /* If: '/If' incorporates: + * DataStoreRead: '/Data Store Read1' + * DataStoreWrite: '/Data Store Write1' + * SignalConversion generated from: '/Bus Selector' + */ + if ((Actuator_Ch1_Status_Model.Busy == 0) && + (Actuator_Ch1_Status_Model.Error_Connect == 0)) { + /* Outputs for IfAction SubSystem: '/If Action Subsystem' incorporates: + * ActionPort: '/Action Port' + */ + for (i = 0; i < 9; i++) { + /* DataStoreWrite: '/Data Store Write' */ + rtDW.POS_private_o[i] = 6000U; + + /* DataStoreWrite: '/Data Store Write1' */ + rtDW.COM_private_n[i] = 2U; + } + + /* Merge: '/Merge' incorporates: + * Constant: '/Constant' + * Merge: '/Merge' + * Sum: '/step inc' + */ + rtB.Merge_h = (int8_t)(rtb_Switch_hx + 1); + + /* MATLAB Function: '/Write' incorporates: + * DataStoreRead: '/Data Store Read3' + */ + /* : if(LOGGER == 2) */ + if (rtDW.LOGGER_LIN == 2.0) { + /* : fprintf('[LIN 2] Initial CPOS Min\n'); */ + printf("[LIN 2] Initial CPOS Min\n"); + fflush(stdout); + } + + /* End of MATLAB Function: '/Write' */ + /* End of Outputs for SubSystem: '/If Action Subsystem' */ + } else { + /* Outputs for IfAction SubSystem: '/If Action Subsystem3' incorporates: + * ActionPort: '/Action Port' + */ + /* Merge: '/Merge' incorporates: + * Merge: '/Merge' + * SignalConversion generated from: '/stepIn1' + */ + rtB.Merge_h = rtb_Switch_hx; + + /* End of Outputs for SubSystem: '/If Action Subsystem3' */ + } + + /* End of If: '/If' */ + /* End of Outputs for SubSystem: '/Initial CPOS Min' */ break; case 3: - rtb_out_bc = rtb_out_hz; + /* Outputs for IfAction SubSystem: '/Normal Mode' incorporates: + * ActionPort: '/Action Port' + */ + /* If: '/If1' incorporates: + * DataStoreRead: '/Data Store Read1' + * DataStoreWrite: '/Data Store Write1' + * SignalConversion generated from: '/Bus Selector' + */ + if ((Actuator_Ch1_Status_Model.Busy == 0) && + (Actuator_Ch1_Status_Model.Error_Connect == 0)) { + /* Outputs for IfAction SubSystem: '/If Action Subsystem2' incorporates: + * ActionPort: '/Action Port' + */ + for (i = 0; i < 9; i++) { + /* DataStoreWrite: '/Data Store Write' */ + rtDW.MODE_private_a[i] = 0U; + + /* DataStoreWrite: '/Data Store Write1' */ + rtDW.COM_private_n[i] = 1U; + } + + /* Merge: '/Merge' incorporates: + * Constant: '/Constant' + * Sum: '/step inc' + */ + rtB.Merge_h = (int8_t)(rtb_Switch_hx + 1); + + /* MATLAB Function: '/Write' incorporates: + * DataStoreRead: '/Data Store Read3' + */ + /* : if(LOGGER == 2) */ + if (rtDW.LOGGER_LIN == 2.0) { + /* : fprintf('LIN 2] Normal Mode\n'); */ + printf("LIN 2] Normal Mode\n"); + fflush(stdout); + } + + /* End of MATLAB Function: '/Write' */ + /* End of Outputs for SubSystem: '/If Action Subsystem2' */ + } else { + /* Outputs for IfAction SubSystem: '/If Action Subsystem3' incorporates: + * ActionPort: '/Action Port' + */ + /* Merge: '/Merge' incorporates: + * SignalConversion generated from: '/stepIn' + */ + rtB.Merge_h = rtb_Switch_hx; + + /* End of Outputs for SubSystem: '/If Action Subsystem3' */ + } + + /* End of If: '/If1' */ + /* End of Outputs for SubSystem: '/Normal Mode' */ break; case 4: - rtb_out_bc = rtb_out_i4; + /* Outputs for IfAction SubSystem: '/Move to position Min' incorporates: + * ActionPort: '/Action Port' + */ + /* If: '/If1' incorporates: + * DataStoreRead: '/Data Store Read1' + * DataStoreWrite: '/Data Store Write1' + * SignalConversion generated from: '/Bus Selector' + */ + if ((Actuator_Ch1_Status_Model.Busy == 0) && + (Actuator_Ch1_Status_Model.Error_Connect == 0)) { + /* Outputs for IfAction SubSystem: '/If Action Subsystem2' incorporates: + * ActionPort: '/Action Port' + */ + for (i = 0; i < 9; i++) { + /* DataStoreWrite: '/Data Store Write4' incorporates: + * Constant: '/Constant1' + */ + rtDW.Autos_private_a[i] = 1U; + + /* DataStoreWrite: '/Data Store Write2' incorporates: + * Constant: '/Constant10' + */ + rtDW.Stall_private_h[i] = 1U; + + /* DataStoreWrite: '/Data Store Write3' */ + rtDW.Lnoise_private_p[i] = 0U; + + /* DataStoreWrite: '/Data Store Write5' incorporates: + * Constant: '/Constant2' + */ + rtDW.Speed_private_e[i] = 3U; + + /* DataStoreWrite: '/Data Store Write6' incorporates: + * Constant: '/Constant3' + */ + rtDW.Coils_private_e[i] = 3U; + + /* DataStoreWrite: '/Data Store Write' */ + rtDW.POS_private_o[i] = 0U; + + /* DataStoreWrite: '/Data Store Write1' incorporates: + * Constant: '/Constant9' + */ + rtDW.COM_private_n[i] = 3U; + } + + /* Merge: '/Merge' incorporates: + * Constant: '/Constant' + * Sum: '/step inc' + */ + rtB.Merge_h = (int8_t)(rtb_Switch_hx + 1); + + /* MATLAB Function: '/Write' incorporates: + * DataStoreRead: '/Data Store Read3' + */ + /* : if(LOGGER == 2) */ + if (rtDW.LOGGER_LIN == 2.0) { + /* : fprintf('[LIN 2] Move to position Min\n'); */ + printf("[LIN 2] Move to position Min\n"); + fflush(stdout); + } + + /* End of MATLAB Function: '/Write' */ + /* End of Outputs for SubSystem: '/If Action Subsystem2' */ + } else { + /* Outputs for IfAction SubSystem: '/If Action Subsystem3' incorporates: + * ActionPort: '/Action Port' + */ + /* Merge: '/Merge' incorporates: + * SignalConversion generated from: '/stepIn' + */ + rtB.Merge_h = rtb_Switch_hx; + + /* End of Outputs for SubSystem: '/If Action Subsystem3' */ + } + + /* End of If: '/If1' */ + /* End of Outputs for SubSystem: '/Move to position Min' */ break; case 5: - rtb_out_bc = rtb_out_fm; + /* Outputs for IfAction SubSystem: '/Check Stall Min' incorporates: + * ActionPort: '/Action Port' + */ + /* Logic: '/Logical Operator3' incorporates: + * DataStoreRead: '/Data Store Read1' + * DataStoreRead: '/Data Store Read' + * Logic: '/Logical Operator1' + * Logic: '/Logical Operator2' + * RelationalOperator: '/Relational Operator' + * RelationalOperator: '/Relational Operator1' + */ + for (i = 0; i < 6; i++) { + rtb_LogicalOperator3_ev[i] = + ((Actuator_Ch1_Status_Model.in_Act_Stall_Slave[i] == 1) || + (Actuator_Ch1_Status_Model.in_CPOS_ALL[i] == 0) || + (rtDW.ErrorCalibration_private_b[i] == 0)); + } + + /* End of Logic: '/Logical Operator3' */ + + /* Logic: '/Logical Operator' incorporates: + * Logic: '/Logical Operator3' + */ + rtb_LogicalOperator1 = rtb_LogicalOperator3_ev[0]; + for (y = 0; y < 5; y++) { + rtb_LogicalOperator1 = (rtb_LogicalOperator1 && rtb_LogicalOperator3_ev[y + + 1]); + } + + /* If: '/If2' incorporates: + * DataStoreRead: '/Data Store Read1' + * DataStoreWrite: '/Data Store Write1' + * DataTypeConversion: '/Data Type Conversion' + * DataTypeConversion: '/Data Type Conversion1' + * Logic: '/Logical Operator' + * SignalConversion generated from: '/Bus Selector' + */ + if ((Actuator_Ch1_Status_Model.Busy == 0) && + (Actuator_Ch1_Status_Model.Error_Connect == 0) && rtb_LogicalOperator1) + { + /* Outputs for IfAction SubSystem: '/If Action Subsystem2' incorporates: + * ActionPort: '/Action Port' + */ + /* DataStoreWrite: '/Data Store Write1' */ + for (y = 0; y < 9; y++) { + /* Switch: '/Switch' incorporates: + * DataStoreRead: '/Data Store Read1' + */ + if (rtDW.ErrorCalibration_private_b[y] != 0) { + rtDW.MinPositionCh1_private[y] = + Actuator_Ch1_Status_Model.in_CPOS_ALL[y]; + } + + /* End of Switch: '/Switch' */ + } + + /* End of DataStoreWrite: '/Data Store Write1' */ + + /* Merge: '/Merge' incorporates: + * Constant: '/Constant' + * Sum: '/step inc' + */ + rtB.Merge_h = (int8_t)(rtb_Switch_hx + 1); + + /* MATLAB Function: '/Write' incorporates: + * DataStoreRead: '/Data Store Read3' + */ + /* : if(LOGGER == 2) */ + if (rtDW.LOGGER_LIN == 2.0) { + /* : fprintf('[LIN 2] Check Stall Min\n'); */ + printf("[LIN 2] Check Stall Min\n"); + fflush(stdout); + + /* : for i = 1:numel(data) */ + for (i = 0; i < 9; i++) { + /* : fprintf('[LIN 2] MIN = %d ', int16(data(i))); */ + printf("[LIN 2] MIN = %d ", Actuator_Ch1_Status_Model.in_CPOS_ALL[i]); + fflush(stdout); + } + + /* : fprintf('\n'); */ + printf("\n"); + fflush(stdout); + } + + /* End of MATLAB Function: '/Write' */ + /* End of Outputs for SubSystem: '/If Action Subsystem2' */ + } else { + /* Outputs for IfAction SubSystem: '/If Action Subsystem3' incorporates: + * ActionPort: '/Action Port' + */ + /* Merge: '/Merge' incorporates: + * SignalConversion generated from: '/stepIn' + */ + rtB.Merge_h = rtb_Switch_hx; + + /* End of Outputs for SubSystem: '/If Action Subsystem3' */ + } + + /* End of If: '/If2' */ + /* End of Outputs for SubSystem: '/Check Stall Min' */ break; case 6: - rtb_out_bc = rtb_out_d; + /* Outputs for IfAction SubSystem: '/Initial CPOS Max' incorporates: + * ActionPort: '/Action Port' + */ + /* If: '/If1' incorporates: + * DataStoreRead: '/Data Store Read1' + * DataStoreWrite: '/Data Store Write1' + * SignalConversion generated from: '/Bus Selector' + */ + if ((Actuator_Ch1_Status_Model.Busy == 0) && + (Actuator_Ch1_Status_Model.Error_Connect == 0)) { + /* Outputs for IfAction SubSystem: '/If Action Subsystem2' incorporates: + * ActionPort: '/Action Port' + */ + for (i = 0; i < 9; i++) { + /* DataStoreWrite: '/Data Store Write1' */ + rtDW.COM_private_n[i] = 2U; + + /* DataStoreWrite: '/Data Store Write' */ + rtDW.POS_private_o[i] = 0U; + } + + /* Merge: '/Merge' incorporates: + * Constant: '/Constant' + * Sum: '/step inc' + */ + rtB.Merge_h = (int8_t)(rtb_Switch_hx + 1); + + /* MATLAB Function: '/Write' incorporates: + * DataStoreRead: '/Data Store Read3' + */ + /* : if(LOGGER == 2) */ + if (rtDW.LOGGER_LIN == 2.0) { + /* : fprintf('[LIN 2] Initial CPOS Max\n'); */ + printf("[LIN 2] Initial CPOS Max\n"); + fflush(stdout); + } + + /* End of MATLAB Function: '/Write' */ + /* End of Outputs for SubSystem: '/If Action Subsystem2' */ + } else { + /* Outputs for IfAction SubSystem: '/If Action Subsystem3' incorporates: + * ActionPort: '/Action Port' + */ + /* Merge: '/Merge' incorporates: + * SignalConversion generated from: '/stepIn' + */ + rtB.Merge_h = rtb_Switch_hx; + + /* End of Outputs for SubSystem: '/If Action Subsystem3' */ + } + + /* End of If: '/If1' */ + /* End of Outputs for SubSystem: '/Initial CPOS Max' */ + break; + + case 7: + /* Outputs for IfAction SubSystem: '/Move to position Max' incorporates: + * ActionPort: '/Action Port' + */ + /* If: '/If1' incorporates: + * DataStoreRead: '/Data Store Read1' + * DataStoreWrite: '/Data Store Write1' + * SignalConversion generated from: '/Bus Selector' + */ + if ((Actuator_Ch1_Status_Model.Busy == 0) && + (Actuator_Ch1_Status_Model.Error_Connect == 0)) { + /* Outputs for IfAction SubSystem: '/If Action Subsystem2' incorporates: + * ActionPort: '/Action Port' + */ + for (i = 0; i < 9; i++) { + /* DataStoreWrite: '/Data Store Write4' incorporates: + * Constant: '/Constant1' + */ + rtDW.Autos_private_a[i] = 1U; + + /* DataStoreWrite: '/Data Store Write2' incorporates: + * Constant: '/Constant10' + */ + rtDW.Stall_private_h[i] = 1U; + + /* DataStoreWrite: '/Data Store Write3' */ + rtDW.Lnoise_private_p[i] = 0U; + + /* DataStoreWrite: '/Data Store Write5' incorporates: + * Constant: '/Constant2' + */ + rtDW.Speed_private_e[i] = 3U; + + /* DataStoreWrite: '/Data Store Write6' incorporates: + * Constant: '/Constant3' + */ + rtDW.Coils_private_e[i] = 3U; + + /* DataStoreWrite: '/Data Store Write' */ + rtDW.POS_private_o[i] = 6000U; + + /* DataStoreWrite: '/Data Store Write1' incorporates: + * Constant: '/Constant9' + */ + rtDW.COM_private_n[i] = 3U; + } + + /* Merge: '/Merge' incorporates: + * Constant: '/Constant' + * Sum: '/step inc' + */ + rtB.Merge_h = (int8_t)(rtb_Switch_hx + 1); + + /* MATLAB Function: '/Write' incorporates: + * DataStoreRead: '/Data Store Read3' + */ + /* : if(LOGGER == 2) */ + if (rtDW.LOGGER_LIN == 2.0) { + /* : fprintf('[LIN 2] Move to position Max\n'); */ + printf("[LIN 2] Move to position Max\n"); + fflush(stdout); + } + + /* End of MATLAB Function: '/Write' */ + /* End of Outputs for SubSystem: '/If Action Subsystem2' */ + } else { + /* Outputs for IfAction SubSystem: '/If Action Subsystem3' incorporates: + * ActionPort: '/Action Port' + */ + /* Merge: '/Merge' incorporates: + * SignalConversion generated from: '/stepIn' + */ + rtB.Merge_h = rtb_Switch_hx; + + /* End of Outputs for SubSystem: '/If Action Subsystem3' */ + } + + /* End of If: '/If1' */ + /* End of Outputs for SubSystem: '/Move to position Max' */ + break; + + case 8: + /* Outputs for IfAction SubSystem: '/Check Stall Max' incorporates: + * ActionPort: '/Action Port' + */ + /* Logic: '/Logical Operator3' incorporates: + * DataStoreRead: '/Data Store Read1' + * DataStoreRead: '/Data Store Read' + * Logic: '/Logical Operator' + * Logic: '/Logical Operator2' + * RelationalOperator: '/Relational Operator' + * RelationalOperator: '/Relational Operator1' + */ + for (i = 0; i < 6; i++) { + rtb_LogicalOperator3_ev[i] = + ((Actuator_Ch1_Status_Model.in_Act_Stall_Slave[i] == 1) || + (Actuator_Ch1_Status_Model.in_CPOS_ALL[i] == 6000) || + (rtDW.ErrorCalibration_private_b[i] == 0)); + } + + /* End of Logic: '/Logical Operator3' */ + + /* Logic: '/Logical Operator1' incorporates: + * Logic: '/Logical Operator3' + */ + rtb_LogicalOperator1 = rtb_LogicalOperator3_ev[0]; + for (y = 0; y < 5; y++) { + rtb_LogicalOperator1 = (rtb_LogicalOperator1 && rtb_LogicalOperator3_ev[y + + 1]); + } + + /* If: '/If2' incorporates: + * DataStoreRead: '/Data Store Read1' + * DataStoreWrite: '/Data Store Write1' + * DataTypeConversion: '/Data Type Conversion' + * DataTypeConversion: '/Data Type Conversion1' + * Logic: '/Logical Operator1' + * SignalConversion generated from: '/Bus Selector' + */ + if ((Actuator_Ch1_Status_Model.Busy == 0) && + (Actuator_Ch1_Status_Model.Error_Connect == 0) && rtb_LogicalOperator1) + { + /* Outputs for IfAction SubSystem: '/If Action Subsystem2' incorporates: + * ActionPort: '/Action Port' + */ + /* DataStoreWrite: '/Data Store Write1' */ + for (i = 0; i < 9; i++) { + /* Switch: '/Switch' incorporates: + * DataStoreRead: '/Data Store Read1' + */ + if (rtDW.ErrorCalibration_private_b[i] != 0) { + rtDW.MaxPositionCh1_private[i] = + Actuator_Ch1_Status_Model.in_CPOS_ALL[i]; + } else { + rtDW.MaxPositionCh1_private[i] = 0; + } + + /* End of Switch: '/Switch' */ + } + + /* End of DataStoreWrite: '/Data Store Write1' */ + + /* Merge: '/Merge' incorporates: + * Constant: '/Constant' + * Sum: '/step inc' + */ + rtB.Merge_h = (int8_t)(rtb_Switch_hx + 1); + + /* MATLAB Function: '/Write' incorporates: + * DataStoreRead: '/Data Store Read3' + */ + /* : if(LOGGER == 2) */ + if (rtDW.LOGGER_LIN == 2.0) { + /* : fprintf('[LIN 2] Check Stall MAX\n'); */ + printf("[LIN 2] Check Stall MAX\n"); + fflush(stdout); + + /* : for i = 1:numel(data) */ + for (i = 0; i < 9; i++) { + /* : fprintf('[LIN 2] MAX = %d ', int16(data(i))); */ + printf("[LIN 2] MAX = %d ", Actuator_Ch1_Status_Model.in_CPOS_ALL[i]); + fflush(stdout); + } + + /* : fprintf('\n'); */ + printf("\n"); + fflush(stdout); + } + + /* End of MATLAB Function: '/Write' */ + /* End of Outputs for SubSystem: '/If Action Subsystem2' */ + } else { + /* Outputs for IfAction SubSystem: '/If Action Subsystem3' incorporates: + * ActionPort: '/Action Port' + */ + /* Merge: '/Merge' incorporates: + * SignalConversion generated from: '/stepIn' + */ + rtB.Merge_h = rtb_Switch_hx; + + /* End of Outputs for SubSystem: '/If Action Subsystem3' */ + } + + /* End of If: '/If2' */ + /* End of Outputs for SubSystem: '/Check Stall Max' */ + break; + + case 9: + /* Outputs for IfAction SubSystem: '/Homing' incorporates: + * ActionPort: '/Action Port' + */ + /* Product: '/Divide1' incorporates: + * Constant: '/ACT1' + * DataStoreRead: '/MAX ACT1T ' + */ + for (i = 0; i < 6; i++) { + rtb_Divide1_gdi[i] = (double)rtDW.MaxPositionCh1_private[i] / (double) + rtConstP.ACT1_Value_d[i]; + } + + /* End of Product: '/Divide1' */ + + /* SignalConversion generated from: '/Vector Concatenate' incorporates: + * Constant: '/Constant' + */ + rtb_Divide1_gdi[6] = 1.0; + rtb_Divide1_gdi[7] = 1.0; + rtb_Divide1_gdi[8] = 1.0; + + /* SwitchCase: '/Switch Case' incorporates: + * DataStoreRead: '/Data Store Read4' + */ + switch (rtDW.stepHoming_private_p) { + case 0: + /* Outputs for IfAction SubSystem: '/Switch Case Action Subsystem' incorporates: + * ActionPort: '/Action Port' + */ + for (i = 0; i < 9; i++) { + /* RelationalOperator: '/Compare' */ + rtb_Divide1 = rtb_Divide1_gdi[i]; + + /* Logic: '/Logical Operator' incorporates: + * Constant: '/Constant' + * Constant: '/Constant' + * RelationalOperator: '/Compare' + * RelationalOperator: '/Compare' + */ + rtb_LogicalOperator1 = ((rtb_Divide1 >= 0.9) && (rtb_Divide1 <= 1.1)); + rtb_LogicalOperator3_a0[i] = rtb_LogicalOperator1; + + /* DataTypeConversion: '/Data Type Conversion' incorporates: + * DataStoreRead: '/Data Store Read' + * DataStoreWrite: '/Data Store Write' + * Logic: '/Logical Operator' + * Logic: '/Logical Operator1' + */ + rtDW.ErrorCalibration_private_b[i] = (uint8_t)((!rtb_LogicalOperator1) && + (rtDW.ErrorCalibration_private_b[i] != 0)); + } + + /* MATLAB Function: '/MAX POSITION' incorporates: + * DataStoreRead: '/Data Store Read5' + * DataStoreRead: '/MIN ACT1T 1' + * Logic: '/Logical Operator2' + */ + /* : if(LOGGER>0) */ + if (rtDW.LOGGER_LIN > 0.0) { + /* : fprintf("[LIN 2] Homing 0\n"); */ + printf("[LIN 2] Homing 0\n"); + fflush(stdout); + + /* : for i = 1:numel(MAX) */ + for (i = 0; i < 6; i++) { + /* : fprintf('[LIN 2] ACT%d MAX = %d KOEF = %f Callibration = %d \n', int16(i), int16(MAX(i)), KOEF(i), int16(ERRORS(i))); */ + printf("[LIN 2] ACT%d MAX = %d KOEF = %f Callibration = %d \n", + (int16_t)(i + 1), rtDW.MaxPositionCh1_private[i], + rtb_Divide1_gdi[i], (int16_t)!rtb_LogicalOperator3_a0[i]); + fflush(stdout); + } + } + + /* End of MATLAB Function: '/MAX POSITION' */ + + /* Logic: '/Logical Operator1' */ + rtb_LogicalOperator1 = rtb_LogicalOperator3_a0[0]; + for (y = 0; y < 8; y++) { + rtb_LogicalOperator1 = (rtb_LogicalOperator1 && + rtb_LogicalOperator3_a0[y + 1]); + } + + /* Switch: '/Switch' incorporates: + * Logic: '/Logical Operator1' + */ + if (rtb_LogicalOperator1) { + /* Merge: '/Merge' incorporates: + * Constant: '/Constant1' + */ + rtB.Merge_hu = 4; + } else { + /* Merge: '/Merge' incorporates: + * Constant: '/Constant' + */ + rtB.Merge_hu = 1; + } + + /* End of Switch: '/Switch' */ + /* End of Outputs for SubSystem: '/Switch Case Action Subsystem' */ + break; + + case 1: + /* Outputs for IfAction SubSystem: '/Switch Case Action Subsystem1' incorporates: + * ActionPort: '/Action Port' + */ + /* RelationalOperator: '/Compare' incorporates: + * Constant: '/Constant' + */ + for (i = 0; i < 9; i++) { + rtb_LogicalOperator3_a0[i] = (rtb_Divide1_gdi[i] > 1.5); + } + + /* End of RelationalOperator: '/Compare' */ + + /* Logic: '/Logical Operator' */ + rtb_LogicalOperator1 = rtb_LogicalOperator3_a0[0]; + for (y = 0; y < 8; y++) { + rtb_LogicalOperator1 = (rtb_LogicalOperator1 || + rtb_LogicalOperator3_a0[y + 1]); + } + + /* DataTypeConversion: '/Data Type Conversion' incorporates: + * DataStoreWrite: '/Data Store Write1' + * Logic: '/Logical Operator' + */ + rtDW.CCU_ActuatorErrF_Stat_private = rtb_LogicalOperator1; + for (i = 0; i < 9; i++) { + /* DataTypeConversion: '/Data Type Conversion1' incorporates: + * DataStoreWrite: '/Data Store Write2' + */ + rtb_LogicalOperator1 = rtb_LogicalOperator3_a0[i]; + rtDW.COM_private_n[i] = rtb_LogicalOperator1; + + /* DataTypeConversion: '/Data Type Conversion2' incorporates: + * DataStoreRead: '/Data Store Read' + * DataStoreWrite: '/Data Store Write3' + * Logic: '/Logical Operator1' + */ + rtDW.ErrorActuator_c[i] = (uint8_t)(rtb_LogicalOperator1 || + (rtDW.ErrorActuator_c[i] != 0)); + + /* DataStoreWrite: '/Data Store Write' */ + rtDW.MODE_private_a[i] = 2U; + } + + /* MATLAB Function: '/Write ERROR' incorporates: + * DataStoreRead: '/Data Store Read6' + */ + /* : if(LOGGER>=0) */ + if (rtDW.LOGGER_LIN >= 0.0) { + /* : for i = 1:numel(ErrCallibration) */ + for (i = 0; i < 9; i++) { + /* : if ErrCallibration(i) == 1 */ + if (rtb_LogicalOperator3_a0[i]) { + /* : fprintf('[LIN 2] Failure with actuator #%d\n', int16(i)); */ + printf("[LIN 2] Failure with actuator #%d\n", (int16_t)(i + 1)); + fflush(stdout); + } + } + } + + /* End of MATLAB Function: '/Write ERROR' */ + for (i = 0; i < 9; i++) { + /* Logic: '/Logical Operator1' */ + rtb_LogicalOperator1 = rtb_LogicalOperator3_a0[i]; + + /* DataTypeConversion: '/Data Type Conversion' incorporates: + * DataStoreRead: '/Data Store Read' + * DataStoreWrite: '/Data Store Write' + * Logic: '/Logical Operator' + * Logic: '/Logical Operator1' + */ + rtDW.ErrorCalibration_private_b[i] = (uint8_t)((!rtb_LogicalOperator1) && + (rtDW.ErrorCalibration_private_b[i] != 0)); + + /* DataStoreWrite: '/Data Store Write' incorporates: + * DataTypeConversion: '/Data Type Conversion' + */ + rtDW.dtc_state_error_model[i + 54] = rtb_LogicalOperator1; + } + + /* DataStoreWrite: '/Data Store Write' incorporates: + * Constant: '/Constant' + */ + rtDW.stepSig_private_j = 1; + + /* MATLAB Function: '/MAX POSITION' incorporates: + * DataStoreRead: '/Data Store Read5' + * DataStoreRead: '/MIN ACT1T 1' + * DataStoreWrite: '/Data Store Write' + */ + /* : if(LOGGER>0) */ + if (rtDW.LOGGER_LIN > 0.0) { + /* : fprintf("[LIN 2] Homing 1. Start Callibration \n"); */ + printf("[LIN 2] Homing 1. Start Callibration \n"); + fflush(stdout); + + /* : for i = 1:numel(MAX) */ + for (i = 0; i < 6; i++) { + /* : if(ERRORS(i)==1) */ + if (rtDW.ErrorCalibration_private_b[i] == 1) { + /* : fprintf('[LIN 2] ACT%d MAX = %d KOEF = %f Callibration = %d \n', int16(i), int16(MAX(i)), KOEF(i), int16(ERRORS(i))); */ + printf("[LIN 2] ACT%d MAX = %d KOEF = %f Callibration = %d \n", + (int16_t)(i + 1), rtDW.MaxPositionCh1_private[i], + rtb_Divide1_gdi[i], (int16_t) + rtDW.ErrorCalibration_private_b[i]); + fflush(stdout); + } + } + } + + /* End of MATLAB Function: '/MAX POSITION' */ + + /* Logic: '/Logical Operator2' incorporates: + * DataStoreWrite: '/Data Store Write' + */ + rtb_LogicalOperator1 = (rtDW.ErrorCalibration_private_b[0] != 0); + for (y = 0; y < 8; y++) { + rtb_LogicalOperator1 = (rtb_LogicalOperator1 || + (rtDW.ErrorCalibration_private_b[y + 1] != 0)); + } + + /* Switch: '/Switch' incorporates: + * Logic: '/Logical Operator2' + */ + if (rtb_LogicalOperator1) { + /* Merge: '/Merge' incorporates: + * Constant: '/Constant1' + */ + rtB.Merge_hu = 2; + } else { + /* Merge: '/Merge' incorporates: + * Constant: '/Constant1' + */ + rtB.Merge_hu = 4; + } + + /* End of Switch: '/Switch' */ + /* End of Outputs for SubSystem: '/Switch Case Action Subsystem1' */ + break; + + case 2: + /* Outputs for IfAction SubSystem: '/Switch Case Action Subsystem2' incorporates: + * ActionPort: '/Action Port' + */ + for (i = 0; i < 9; i++) { + /* RelationalOperator: '/Compare' */ + rtb_Divide1 = rtb_Divide1_gdi[i]; + + /* Logic: '/Logical Operator3' incorporates: + * Constant: '/Constant' + * Constant: '/Constant' + * DataStoreRead: '/Data Store Read' + * Logic: '/Logical Operator1' + * Logic: '/Logical Operator4' + * RelationalOperator: '/Compare' + * RelationalOperator: '/Compare' + */ + rtb_LogicalOperator1 = (((rtb_Divide1 < 0.97) || (rtb_Divide1 > 1.03)) && + (rtDW.ErrorCalibration_private_b[i] != 0)); + rtb_LogicalOperator3_a0[i] = rtb_LogicalOperator1; + + /* DataTypeConversion: '/Data Type Conversion' incorporates: + * DataStoreWrite: '/Data Store Write1' + */ + rtDW.ErrorCalibration_private_b[i] = rtb_LogicalOperator1; + } + + /* MATLAB Function: '/MAX POSITION' incorporates: + * DataStoreRead: '/Data Store Read5' + * DataStoreRead: '/MIN ACT1T 1' + */ + /* : if(LOGGER>0) */ + if (rtDW.LOGGER_LIN > 0.0) { + /* : fprintf("[LIN 2] Homing 3. Callibration \n"); */ + printf("[LIN 2] Homing 3. Callibration \n"); + fflush(stdout); + + /* : for i = 1:numel(MAX) */ + for (i = 0; i < 6; i++) { + /* : if(ERRORS(i)==1) */ + if (rtb_LogicalOperator3_a0[i]) { + /* : fprintf('[LIN 2] ACT%d MAX = %d KOEF = %f Callibration = %d \n', int16(i), int16(MAX(i)), KOEF(i), int16(ERRORS(i))); */ + printf("[LIN 2] ACT%d MAX = %d KOEF = %f Callibration = %d \n", + (int16_t)(i + 1), rtDW.MaxPositionCh1_private[i], + rtb_Divide1_gdi[i], 1); + fflush(stdout); + } + } + } + + /* End of MATLAB Function: '/MAX POSITION' */ + + /* Logic: '/Logical Operator2' */ + rtb_LogicalOperator1 = rtb_LogicalOperator3_a0[0]; + for (y = 0; y < 8; y++) { + rtb_LogicalOperator1 = (rtb_LogicalOperator1 || + rtb_LogicalOperator3_a0[y + 1]); + } + + /* Switch: '/Switch' incorporates: + * Logic: '/Logical Operator2' + */ + if (rtb_LogicalOperator1) { + /* Merge: '/Merge' incorporates: + * Constant: '/Constant3' + */ + rtB.Merge_hu = 3; + } else { + /* Merge: '/Merge' incorporates: + * Constant: '/Constant1' + */ + rtB.Merge_hu = 4; + } + + /* End of Switch: '/Switch' */ + /* End of Outputs for SubSystem: '/Switch Case Action Subsystem2' */ + break; + + case 3: + /* Outputs for IfAction SubSystem: '/Switch Case Action Subsystem3' incorporates: + * ActionPort: '/Action Port' + */ + /* MATLAB Function: '/MAX POSITION' incorporates: + * DataStoreRead: '/Data Store Read1' + * DataStoreRead: '/Data Store Read5' + */ + /* : if(LOGGER>1) */ + if (rtDW.LOGGER_LIN > 1.0) { + /* : fprintf("[LIN 2] Homing 3. Start Time on step %d\n",int16(step)); */ + rtb_Divide1 = rt_roundd(rtDW.ErrorHomming_private_j); + if (rtb_Divide1 < 32768.0) { + if (rtb_Divide1 >= -32768.0) { + AMB = (int16_t)rtb_Divide1; + } else { + AMB = INT16_MIN; + } + } else { + AMB = INT16_MAX; + } + + printf("[LIN 2] Homing 3. Start Time on step %d\n", AMB); + fflush(stdout); + } + + /* End of MATLAB Function: '/MAX POSITION' */ + + /* If: '/If' incorporates: + * DataStoreRead: '/Data Store Read1' + */ + if (rtDW.ErrorHomming_private_j < 10.0) { + /* Outputs for IfAction SubSystem: '/If Action Subsystem' incorporates: + * ActionPort: '/Action Port' + */ + /* MATLAB Function: '/MATLAB Function' incorporates: + * DataStoreRead: '/Data Store Read' + * DataStoreRead: '/Data Store Read1' + */ + MATLABFunction(rtDW.Start_timer_l, rtDW.t_now, &rtb_dt_ih, + &rtDW.sf_MATLABFunction_i); + + /* MATLAB Function: '/MAX POSITION' incorporates: + * DataStoreRead: '/Data Store Read5' + */ + /* : if(LOGGER>1) */ + if (rtDW.LOGGER_LIN > 1.0) { + /* : fprintf("[LIN 2] Homing 3. Start TIme dt = %d \n",int32(data)); */ + rtb_dt_fa = rtb_dt_ih; + if (rtb_dt_ih > 2147483647U) { + rtb_dt_fa = 2147483647U; + } + + printf("[LIN 2] Homing 3. Start TIme dt = %d \n", (int32_t)rtb_dt_fa); + fflush(stdout); + } + + /* End of MATLAB Function: '/MAX POSITION' */ + + /* If: '/If' */ + if (rtb_dt_ih > 30000U) { + /* Outputs for IfAction SubSystem: '/If Action Subsystem' incorporates: + * ActionPort: '/Action Port' + */ + /* Merge: '/Merge' */ + IfActionSubsystem(&rtB.Merge_hu, &rtDW.ErrorHomming_private_j, + &rtDW.Start_timer_l, &rtDW.stepSig_private_j); + + /* End of Outputs for SubSystem: '/If Action Subsystem' */ + } else { + /* Outputs for IfAction SubSystem: '/If Action Subsystem1' incorporates: + * ActionPort: '/Action Port' + */ + /* Merge: '/Merge' */ + IfActionSubsystem1_l(&rtB.Merge_hu, &rtDW.Start_timer_l); + + /* End of Outputs for SubSystem: '/If Action Subsystem1' */ + } + + /* End of If: '/If' */ + /* End of Outputs for SubSystem: '/If Action Subsystem' */ + } else { + /* Outputs for IfAction SubSystem: '/If Action Subsystem1' incorporates: + * ActionPort: '/Action Port' + */ + IfActionSubsystem1(&rtB.Merge_hu, &rtDW.CCU_ActuatorErrF_Stat_private, + rtDW.COM_private_n, rtDW.ErrorActuator_c, + rtDW.ErrorCalibration_private_b, &rtDW.LOGGER_LIN, + rtDW.MODE_private_a, rtDW.dtc_state_error_model); + + /* End of Outputs for SubSystem: '/If Action Subsystem1' */ + } + + /* End of If: '/If' */ + /* End of Outputs for SubSystem: '/Switch Case Action Subsystem3' */ + break; + + case 4: + /* Outputs for IfAction SubSystem: '/Switch Case Action Subsystem4' incorporates: + * ActionPort: '/Action Port' + */ + /* DataStoreWrite: '/Data Store Write' incorporates: + * Constant: '/Constant' + */ + rtDW.stepSig_private_j = 10; + + /* Merge: '/Merge' incorporates: + * Constant: '/Constant1' + * SignalConversion generated from: '/step' + */ + rtB.Merge_hu = 5; + + /* MATLAB Function: '/MAX POSITION' incorporates: + * DataStoreRead: '/Data Store Read5' + */ + /* : if(LOGGER>0) */ + if (rtDW.LOGGER_LIN > 0.0) { + /* : fprintf("[LIN 2] Homing. Callibration successful \n"); */ + printf("[LIN 2] Homing. Callibration successful \n"); + fflush(stdout); + } + + /* End of MATLAB Function: '/MAX POSITION' */ + /* End of Outputs for SubSystem: '/Switch Case Action Subsystem4' */ + break; + } + + /* End of SwitchCase: '/Switch Case' */ + + /* DataStoreWrite: '/Data Store Write2' */ + rtDW.stepHoming_private_p = rtB.Merge_hu; + + /* Merge: '/Merge' incorporates: + * DataStoreRead: '/Data Store Read7' + */ + rtB.Merge_h = rtDW.stepSig_private_j; + + /* End of Outputs for SubSystem: '/Homing' */ break; } - /* End of MultiPortSwitch: '/Multiport Switch' */ + /* End of SwitchCase: '/Switch Case' */ - /* DataTypeConversion: '/Data Type Conversion1' incorporates: - * Constant: '/Constant' - * DataStoreWrite: '/Data Store Write' - * Product: '/Divide' - * Sum: '/Add' + /* DataStoreWrite: '/Finish write stepSig' */ + rtDW.stepSig_private_j = rtB.Merge_h; + + /* BusCreator: '/Bus Creator' incorporates: + * DataStoreRead: '/Data Store Read' + * DataStoreRead: '/Data Store Read1' + * DataStoreRead: '/Data Store Read2' + * DataStoreRead: '/Data Store Read3' + * DataStoreRead: '/Data Store Read4' + * DataStoreRead: '/Data Store Read5' + * DataStoreRead: '/Data Store Read6' + * DataStoreRead: '/Data Store Read7' + * DataStoreRead: '/Data Store Read8' + * DataStoreWrite: '/Data Store Write' */ - rtDW.PWM_front = (uint8_t)((double)(uint16_t)((uint32_t)rtb_out_ee + - rtb_out_bc) / 4.0); + for (i = 0; i < 9; i++) { + Actuator_Ch1_Command_Model.POS[i] = rtDW.POS_private_o[i]; + Actuator_Ch1_Command_Model.BUS_ADR[i] = rtDW.BUS_ADR_private_m[i]; + Actuator_Ch1_Command_Model.MODE[i] = rtDW.MODE_private_a[i]; + Actuator_Ch1_Command_Model.COM[i] = rtDW.COM_private_n[i]; + Actuator_Ch1_Command_Model.Stall_SET[i] = rtDW.Stall_private_h[i]; + Actuator_Ch1_Command_Model.Lnoise_SET[i] = rtDW.Lnoise_private_p[i]; + Actuator_Ch1_Command_Model.Autos_SET[i] = rtDW.Autos_private_a[i]; + Actuator_Ch1_Command_Model.Speed_SET[i] = rtDW.Speed_private_e[i]; + Actuator_Ch1_Command_Model.Coils_Stop_SET[i] = rtDW.Coils_private_e[i]; + } - /* MATLAB Function: '/AF for Vent mode R' incorporates: - * DataStoreRead: '/Data Store Read18' + /* End of BusCreator: '/Bus Creator' */ + + /* RelationalOperator: '/Compare' incorporates: + * Constant: '/Constant' + * DataStoreRead: '/Data Store Read2' */ - AFforVentmodeR(rtDW.FIU_FACE_RL, &rtb_out_ee); + for (i = 0; i < 6; i++) { + rtb_Compare_l2[i] = (rtDW.ErrorCalibration_private_b[i] == 0); + } - /* MATLAB Function: '/AF for Bi Level R' incorporates: - * DataStoreRead: '/Data Store Read18' + /* End of RelationalOperator: '/Compare' */ + + /* Logic: '/Logical Operator' */ + rtb_LogicalOperator1 = rtb_Compare_l2[0]; + for (y = 0; y < 5; y++) { + rtb_LogicalOperator1 = (rtb_LogicalOperator1 || rtb_Compare_l2[y + 1]); + } + + /* Switch: '/Switch1' incorporates: + * Constant: '/Constant' + * Constant: '/Constant3' + * DataStoreRead: '/Data Store Read2' + * Logic: '/Logical Operator' + * Product: '/Product' */ - AFforBiLevelR(rtDW.FIU_FACE_RL, &rtb_out_hi); + for (i = 0; i < 6; i++) { + if (rtb_LogicalOperator1) { + rtb_VectorConcatenate_c[i] = (uint8_t)((uint32_t) + rtDW.ErrorCalibration_private_b[i] * rtConstP.Constant3_Value[i]); + } else { + rtb_VectorConcatenate_c[i] = 0U; + } + } - /* MATLAB Function: '/AF for Foot R' incorporates: - * DataStoreRead: '/Data Store Read18' + /* End of Switch: '/Switch1' */ + + /* SignalConversion generated from: '/Vector Concatenate' incorporates: + * Constant: '/Constant1' */ - AFforFootR(rtDW.FIU_FACE_RL, &rtb_out_bc); + rtb_VectorConcatenate_c[6] = 0U; + rtb_VectorConcatenate_c[7] = 0U; + rtb_VectorConcatenate_c[8] = 0U; + for (i = 0; i < 9; i++) { + /* DataStoreWrite: '/Data Store Write7' */ + rtDW.BUS_ADR_private_m[i] = rtb_VectorConcatenate_c[i]; - /* MultiPortSwitch: '/Multiport Switch' incorporates: - * Constant: '/Constant1' - * Constant: '/Constant2' - * Constant: '/Constant3' - * DataStoreRead: '/Data Store Read19' - * DataStoreRead: '/Data Store Read20' - * Gain: '/Gain2' - * RelationalOperator: '/Relational Operator1' - * RelationalOperator: '/Relational Operator2' - * Sum: '/Add' + /* DataStoreWrite: '/Data Store Write' */ + rtDW.COM_private_n[i] = 0U; + + /* Switch: '/Switch' incorporates: + * Constant: '/Constant' + * DataStoreRead: '/Data Store Read1' + * DataStoreRead: '/Data Store Read' + * Gain: '/Gain' + * Product: '/Divide' + */ + if (rtDW.MaxPositionCh2_private[i] != 0) { + y = 100 * (int16_t)div_nde_s32_floor + (Actuator_Ch2_Status_Model.in_CPOS_ALL[i], rtDW.MaxPositionCh2_private[i]); + } else { + y = 0; + } + + /* End of Switch: '/Switch' */ + + /* Saturate: '/Saturation' */ + if (y > 100) { + /* DataTypeConversion: '/Data Type Conversion' */ + rtb_DataTypeConversion_ns[i] = 100U; + } else if (y < 0) { + /* DataTypeConversion: '/Data Type Conversion' */ + rtb_DataTypeConversion_ns[i] = 0U; + } else { + /* DataTypeConversion: '/Data Type Conversion' */ + rtb_DataTypeConversion_ns[i] = (uint8_t)y; + } + + /* End of Saturate: '/Saturation' */ + } + + /* Switch: '/Switch' incorporates: + * Constant: '/Constant1' + * DataStoreRead: '/Data Store Read' + * DataStoreRead: '/Data Store Read2' */ - switch ((int32_t)((uint32_t)((rtDW.FIU_BLOWERS_RL == 1) << 1) + (uint32_t) - (rtDW.FIU_FOOT_RL == 1))) { - case 0: - rtb_out_bc = 0U; - break; + if (rtDW.stepSig_private_o > 0) { + rtb_Switch_hx = rtDW.stepSig_private_o; + } else { + rtb_Switch_hx = 1; + } + /* End of Switch: '/Switch' */ + + /* SwitchCase: '/Switch Case' */ + switch (rtb_Switch_hx) { case 1: - rtb_out_bc = rtb_out_ee; + /* Outputs for IfAction SubSystem: '/Stop Mode' incorporates: + * ActionPort: '/Action Port' + */ + /* If: '/If1' incorporates: + * DataStoreRead: '/Data Store Read1' + * DataStoreWrite: '/Data Store Write1' + * SignalConversion generated from: '/Bus Selector' + */ + if ((Actuator_Ch2_Status_Model.Busy == 0) && + (Actuator_Ch2_Status_Model.Error_Connect == 0)) { + /* Outputs for IfAction SubSystem: '/If Action Subsystem2' incorporates: + * ActionPort: '/Action Port' + */ + for (i = 0; i < 9; i++) { + /* DataStoreWrite: '/Data Store Write1' */ + rtDW.COM_private_b[i] = 1U; + + /* DataStoreWrite: '/Data Store Write' */ + rtDW.MODE_private_p[i] = 2U; + } + + /* Merge: '/Merge' incorporates: + * Constant: '/Constant' + * Sum: '/step inc' + */ + rtB.Merge_bj = (int8_t)(rtb_Switch_hx + 1); + + /* MATLAB Function: '/Write' incorporates: + * DataStoreRead: '/Data Store Read3' + */ + /* : if(LOGGER == 2) */ + if (rtDW.LOGGER_LIN == 2.0) { + /* : fprintf('[LIN 3] Stop Mode\n'); */ + printf("[LIN 3] Stop Mode\n"); + fflush(stdout); + } + + /* End of MATLAB Function: '/Write' */ + /* End of Outputs for SubSystem: '/If Action Subsystem2' */ + } else { + /* Outputs for IfAction SubSystem: '/If Action Subsystem3' incorporates: + * ActionPort: '/Action Port' + */ + /* Merge: '/Merge' incorporates: + * SignalConversion generated from: '/stepIn' + */ + rtB.Merge_bj = rtb_Switch_hx; + + /* End of Outputs for SubSystem: '/If Action Subsystem3' */ + } + + /* End of If: '/If1' */ + /* End of Outputs for SubSystem: '/Stop Mode' */ break; case 2: - rtb_out_bc = rtb_out_hi; + /* Outputs for IfAction SubSystem: '/Initial CPOS Min' incorporates: + * ActionPort: '/Action Port' + */ + /* If: '/If' incorporates: + * DataStoreRead: '/Data Store Read1' + * DataStoreWrite: '/Data Store Write1' + * SignalConversion generated from: '/Bus Selector' + */ + if ((Actuator_Ch2_Status_Model.Busy == 0) && + (Actuator_Ch2_Status_Model.Error_Connect == 0)) { + /* Outputs for IfAction SubSystem: '/If Action Subsystem' incorporates: + * ActionPort: '/Action Port' + */ + for (i = 0; i < 9; i++) { + /* DataStoreWrite: '/Data Store Write' */ + rtDW.POS_private_g[i] = 6000U; + + /* DataStoreWrite: '/Data Store Write1' */ + rtDW.COM_private_b[i] = 2U; + } + + /* Merge: '/Merge' incorporates: + * Constant: '/Constant' + * Merge: '/Merge' + * Sum: '/step inc' + */ + rtB.Merge_bj = (int8_t)(rtb_Switch_hx + 1); + + /* MATLAB Function: '/Write' incorporates: + * DataStoreRead: '/Data Store Read3' + */ + /* : if(LOGGER == 2) */ + if (rtDW.LOGGER_LIN == 2.0) { + /* : fprintf('[LIN 3] Initial CPOS Min\n'); */ + printf("[LIN 3] Initial CPOS Min\n"); + fflush(stdout); + } + + /* End of MATLAB Function: '/Write' */ + /* End of Outputs for SubSystem: '/If Action Subsystem' */ + } else { + /* Outputs for IfAction SubSystem: '/If Action Subsystem3' incorporates: + * ActionPort: '/Action Port' + */ + /* Merge: '/Merge' incorporates: + * Merge: '/Merge' + * SignalConversion generated from: '/stepIn1' + */ + rtB.Merge_bj = rtb_Switch_hx; + + /* End of Outputs for SubSystem: '/If Action Subsystem3' */ + } + + /* End of If: '/If' */ + /* End of Outputs for SubSystem: '/Initial CPOS Min' */ + break; + + case 3: + /* Outputs for IfAction SubSystem: '/Normal Mode' incorporates: + * ActionPort: '/Action Port' + */ + /* If: '/If1' incorporates: + * DataStoreRead: '/Data Store Read1' + * DataStoreWrite: '/Data Store Write1' + * SignalConversion generated from: '/Bus Selector' + */ + if ((Actuator_Ch2_Status_Model.Busy == 0) && + (Actuator_Ch2_Status_Model.Error_Connect == 0)) { + /* Outputs for IfAction SubSystem: '/If Action Subsystem2' incorporates: + * ActionPort: '/Action Port' + */ + for (i = 0; i < 9; i++) { + /* DataStoreWrite: '/Data Store Write' */ + rtDW.MODE_private_p[i] = 0U; + + /* DataStoreWrite: '/Data Store Write1' */ + rtDW.COM_private_b[i] = 1U; + } + + /* Merge: '/Merge' incorporates: + * Constant: '/Constant' + * Sum: '/step inc' + */ + rtB.Merge_bj = (int8_t)(rtb_Switch_hx + 1); + + /* MATLAB Function: '/Write' incorporates: + * DataStoreRead: '/Data Store Read3' + */ + /* : if(LOGGER == 2) */ + if (rtDW.LOGGER_LIN == 2.0) { + /* : fprintf('[LIN 3] Normal Mode\n'); */ + printf("[LIN 3] Normal Mode\n"); + fflush(stdout); + } + + /* End of MATLAB Function: '/Write' */ + /* End of Outputs for SubSystem: '/If Action Subsystem2' */ + } else { + /* Outputs for IfAction SubSystem: '/If Action Subsystem3' incorporates: + * ActionPort: '/Action Port' + */ + /* Merge: '/Merge' incorporates: + * SignalConversion generated from: '/stepIn' + */ + rtB.Merge_bj = rtb_Switch_hx; + + /* End of Outputs for SubSystem: '/If Action Subsystem3' */ + } + + /* End of If: '/If1' */ + /* End of Outputs for SubSystem: '/Normal Mode' */ + break; + + case 4: + /* Outputs for IfAction SubSystem: '/Move to position Min' incorporates: + * ActionPort: '/Action Port' + */ + /* If: '/If1' incorporates: + * DataStoreRead: '/Data Store Read1' + * DataStoreWrite: '/Data Store Write1' + * SignalConversion generated from: '/Bus Selector' + */ + if ((Actuator_Ch2_Status_Model.Busy == 0) && + (Actuator_Ch2_Status_Model.Error_Connect == 0)) { + /* Outputs for IfAction SubSystem: '/If Action Subsystem2' incorporates: + * ActionPort: '/Action Port' + */ + for (i = 0; i < 9; i++) { + /* DataStoreWrite: '/Data Store Write4' incorporates: + * Constant: '/Constant1' + */ + rtDW.Autos_private_k[i] = 1U; + + /* DataStoreWrite: '/Data Store Write2' incorporates: + * Constant: '/Constant10' + */ + rtDW.Stall_private_h3[i] = 1U; + + /* DataStoreWrite: '/Data Store Write3' */ + rtDW.Lnoise_private_k[i] = 0U; + + /* DataStoreWrite: '/Data Store Write5' incorporates: + * Constant: '/Constant2' + */ + rtDW.Speed_private_o[i] = 3U; + + /* DataStoreWrite: '/Data Store Write6' incorporates: + * Constant: '/Constant3' + */ + rtDW.Coils_private_m[i] = 3U; + + /* DataStoreWrite: '/Data Store Write' */ + rtDW.POS_private_g[i] = 0U; + + /* DataStoreWrite: '/Data Store Write1' incorporates: + * Constant: '/Constant9' + */ + rtDW.COM_private_b[i] = 3U; + } + + /* Merge: '/Merge' incorporates: + * Constant: '/Constant' + * Sum: '/step inc' + */ + rtB.Merge_bj = (int8_t)(rtb_Switch_hx + 1); + + /* MATLAB Function: '/Write' incorporates: + * DataStoreRead: '/Data Store Read3' + */ + /* : if(LOGGER == 2) */ + if (rtDW.LOGGER_LIN == 2.0) { + /* : fprintf('[LIN 3] Move to position Min\n'); */ + printf("[LIN 3] Move to position Min\n"); + fflush(stdout); + } + + /* End of MATLAB Function: '/Write' */ + /* End of Outputs for SubSystem: '/If Action Subsystem2' */ + } else { + /* Outputs for IfAction SubSystem: '/If Action Subsystem3' incorporates: + * ActionPort: '/Action Port' + */ + /* Merge: '/Merge' incorporates: + * SignalConversion generated from: '/stepIn' + */ + rtB.Merge_bj = rtb_Switch_hx; + + /* End of Outputs for SubSystem: '/If Action Subsystem3' */ + } + + /* End of If: '/If1' */ + /* End of Outputs for SubSystem: '/Move to position Min' */ + break; + + case 5: + /* Outputs for IfAction SubSystem: '/Check Stall Min' incorporates: + * ActionPort: '/Action Port' + */ + /* Logic: '/Logical Operator3' incorporates: + * DataStoreRead: '/Data Store Read1' + * DataStoreRead: '/Data Store Read' + * Logic: '/Logical Operator1' + * Logic: '/Logical Operator2' + * RelationalOperator: '/Relational Operator' + * RelationalOperator: '/Relational Operator1' + */ + for (i = 0; i < 8; i++) { + rtb_Compare_l2[i] = ((Actuator_Ch2_Status_Model.in_Act_Stall_Slave[i] == 1) + || (Actuator_Ch2_Status_Model.in_CPOS_ALL[i] == 0) || + (rtDW.ErrorCalibration_private_h[i] == 0)); + } + + /* End of Logic: '/Logical Operator3' */ + + /* Logic: '/Logical Operator' incorporates: + * Logic: '/Logical Operator3' + */ + rtb_LogicalOperator1 = rtb_Compare_l2[0]; + for (y = 0; y < 7; y++) { + rtb_LogicalOperator1 = (rtb_LogicalOperator1 && rtb_Compare_l2[y + 1]); + } + + /* If: '/If2' incorporates: + * DataStoreRead: '/Data Store Read1' + * DataStoreWrite: '/Data Store Write1' + * DataTypeConversion: '/Data Type Conversion' + * DataTypeConversion: '/Data Type Conversion1' + * Logic: '/Logical Operator' + * SignalConversion generated from: '/Bus Selector' + */ + if ((Actuator_Ch2_Status_Model.Busy == 0) && + (Actuator_Ch2_Status_Model.Error_Connect == 0) && rtb_LogicalOperator1) + { + /* Outputs for IfAction SubSystem: '/If Action Subsystem2' incorporates: + * ActionPort: '/Action Port' + */ + /* DataStoreWrite: '/Data Store Write1' */ + for (y = 0; y < 9; y++) { + /* Switch: '/Switch' incorporates: + * DataStoreRead: '/Data Store Read1' + */ + if (rtDW.ErrorCalibration_private_h[y] != 0) { + rtDW.MinPositionCh2_private[y] = + Actuator_Ch2_Status_Model.in_CPOS_ALL[y]; + } + + /* End of Switch: '/Switch' */ + } + + /* End of DataStoreWrite: '/Data Store Write1' */ + + /* Merge: '/Merge' incorporates: + * Constant: '/Constant' + * Sum: '/step inc' + */ + rtB.Merge_bj = (int8_t)(rtb_Switch_hx + 1); + + /* MATLAB Function: '/Write' incorporates: + * DataStoreRead: '/Data Store Read3' + */ + /* : if(LOGGER == 2) */ + if (rtDW.LOGGER_LIN == 2.0) { + /* : fprintf('[LIN 3] Check Stall Min\n'); */ + printf("[LIN 3] Check Stall Min\n"); + fflush(stdout); + + /* : for i = 1:numel(data) */ + for (i = 0; i < 9; i++) { + /* : fprintf('[LIN 3] MIN = %d ', int16(data(i))); */ + printf("[LIN 3] MIN = %d ", Actuator_Ch2_Status_Model.in_CPOS_ALL[i]); + fflush(stdout); + } + + /* : fprintf('\n'); */ + printf("\n"); + fflush(stdout); + } + + /* End of MATLAB Function: '/Write' */ + /* End of Outputs for SubSystem: '/If Action Subsystem2' */ + } else { + /* Outputs for IfAction SubSystem: '/If Action Subsystem3' incorporates: + * ActionPort: '/Action Port' + */ + /* Merge: '/Merge' incorporates: + * SignalConversion generated from: '/stepIn' + */ + rtB.Merge_bj = rtb_Switch_hx; + + /* End of Outputs for SubSystem: '/If Action Subsystem3' */ + } + + /* End of If: '/If2' */ + /* End of Outputs for SubSystem: '/Check Stall Min' */ + break; + + case 6: + /* Outputs for IfAction SubSystem: '/Initial CPOS Max' incorporates: + * ActionPort: '/Action Port' + */ + /* If: '/If1' incorporates: + * DataStoreRead: '/Data Store Read1' + * DataStoreWrite: '/Data Store Write1' + * SignalConversion generated from: '/Bus Selector' + */ + if ((Actuator_Ch2_Status_Model.Busy == 0) && + (Actuator_Ch2_Status_Model.Error_Connect == 0)) { + /* Outputs for IfAction SubSystem: '/If Action Subsystem2' incorporates: + * ActionPort: '/Action Port' + */ + for (i = 0; i < 9; i++) { + /* DataStoreWrite: '/Data Store Write1' */ + rtDW.COM_private_b[i] = 2U; + + /* DataStoreWrite: '/Data Store Write' */ + rtDW.POS_private_g[i] = 0U; + } + + /* Merge: '/Merge' incorporates: + * Constant: '/Constant' + * Sum: '/step inc' + */ + rtB.Merge_bj = (int8_t)(rtb_Switch_hx + 1); + + /* MATLAB Function: '/Write' incorporates: + * DataStoreRead: '/Data Store Read3' + */ + /* : if(LOGGER == 2) */ + if (rtDW.LOGGER_LIN == 2.0) { + /* : fprintf('[LIN 3] Initial CPOS Max\n'); */ + printf("[LIN 3] Initial CPOS Max\n"); + fflush(stdout); + } + + /* End of MATLAB Function: '/Write' */ + /* End of Outputs for SubSystem: '/If Action Subsystem2' */ + } else { + /* Outputs for IfAction SubSystem: '/If Action Subsystem3' incorporates: + * ActionPort: '/Action Port' + */ + /* Merge: '/Merge' incorporates: + * SignalConversion generated from: '/stepIn' + */ + rtB.Merge_bj = rtb_Switch_hx; + + /* End of Outputs for SubSystem: '/If Action Subsystem3' */ + } + + /* End of If: '/If1' */ + /* End of Outputs for SubSystem: '/Initial CPOS Max' */ + break; + + case 7: + /* Outputs for IfAction SubSystem: '/Move to position Max' incorporates: + * ActionPort: '/Action Port' + */ + /* If: '/If1' incorporates: + * DataStoreRead: '/Data Store Read1' + * DataStoreWrite: '/Data Store Write1' + * SignalConversion generated from: '/Bus Selector' + */ + if ((Actuator_Ch2_Status_Model.Busy == 0) && + (Actuator_Ch2_Status_Model.Error_Connect == 0)) { + /* Outputs for IfAction SubSystem: '/If Action Subsystem2' incorporates: + * ActionPort: '/Action Port' + */ + for (i = 0; i < 9; i++) { + /* DataStoreWrite: '/Data Store Write4' incorporates: + * Constant: '/Constant1' + */ + rtDW.Autos_private_k[i] = 1U; + + /* DataStoreWrite: '/Data Store Write2' incorporates: + * Constant: '/Constant10' + */ + rtDW.Stall_private_h3[i] = 1U; + + /* DataStoreWrite: '/Data Store Write3' */ + rtDW.Lnoise_private_k[i] = 0U; + + /* DataStoreWrite: '/Data Store Write5' incorporates: + * Constant: '/Constant2' + */ + rtDW.Speed_private_o[i] = 3U; + + /* DataStoreWrite: '/Data Store Write6' incorporates: + * Constant: '/Constant3' + */ + rtDW.Coils_private_m[i] = 3U; + + /* DataStoreWrite: '/Data Store Write' */ + rtDW.POS_private_g[i] = 6000U; + + /* DataStoreWrite: '/Data Store Write1' incorporates: + * Constant: '/Constant9' + */ + rtDW.COM_private_b[i] = 3U; + } + + /* Merge: '/Merge' incorporates: + * Constant: '/Constant' + * Sum: '/step inc' + */ + rtB.Merge_bj = (int8_t)(rtb_Switch_hx + 1); + + /* MATLAB Function: '/Write' incorporates: + * DataStoreRead: '/Data Store Read3' + */ + /* : if(LOGGER == 2) */ + if (rtDW.LOGGER_LIN == 2.0) { + /* : fprintf('[LIN 3] Move to position Max\n'); */ + printf("[LIN 3] Move to position Max\n"); + fflush(stdout); + } + + /* End of MATLAB Function: '/Write' */ + /* End of Outputs for SubSystem: '/If Action Subsystem2' */ + } else { + /* Outputs for IfAction SubSystem: '/If Action Subsystem3' incorporates: + * ActionPort: '/Action Port' + */ + /* Merge: '/Merge' incorporates: + * SignalConversion generated from: '/stepIn' + */ + rtB.Merge_bj = rtb_Switch_hx; + + /* End of Outputs for SubSystem: '/If Action Subsystem3' */ + } + + /* End of If: '/If1' */ + /* End of Outputs for SubSystem: '/Move to position Max' */ + break; + + case 8: + /* Outputs for IfAction SubSystem: '/Check Stall Max' incorporates: + * ActionPort: '/Action Port' + */ + /* Logic: '/Logical Operator3' incorporates: + * DataStoreRead: '/Data Store Read1' + * DataStoreRead: '/Data Store Read' + * Logic: '/Logical Operator' + * Logic: '/Logical Operator2' + * RelationalOperator: '/Relational Operator' + * RelationalOperator: '/Relational Operator1' + */ + for (i = 0; i < 8; i++) { + rtb_Compare_l2[i] = ((Actuator_Ch2_Status_Model.in_Act_Stall_Slave[i] == 1) + || (Actuator_Ch2_Status_Model.in_CPOS_ALL[i] == 6000) + || (rtDW.ErrorCalibration_private_h[i] == 0)); + } + + /* End of Logic: '/Logical Operator3' */ + + /* Logic: '/Logical Operator1' incorporates: + * Logic: '/Logical Operator3' + */ + rtb_LogicalOperator1 = rtb_Compare_l2[0]; + for (y = 0; y < 7; y++) { + rtb_LogicalOperator1 = (rtb_LogicalOperator1 && rtb_Compare_l2[y + 1]); + } + + /* If: '/If2' incorporates: + * DataStoreRead: '/Data Store Read1' + * DataStoreWrite: '/Data Store Write1' + * DataTypeConversion: '/Data Type Conversion' + * DataTypeConversion: '/Data Type Conversion1' + * Logic: '/Logical Operator1' + * SignalConversion generated from: '/Bus Selector' + */ + if ((Actuator_Ch2_Status_Model.Busy == 0) && + (Actuator_Ch2_Status_Model.Error_Connect == 0) && rtb_LogicalOperator1) + { + /* Outputs for IfAction SubSystem: '/If Action Subsystem2' incorporates: + * ActionPort: '/Action Port' + */ + /* DataStoreWrite: '/Data Store Write1' */ + for (i = 0; i < 9; i++) { + /* Switch: '/Switch' incorporates: + * DataStoreRead: '/Data Store Read1' + */ + if (rtDW.ErrorCalibration_private_h[i] != 0) { + rtDW.MaxPositionCh2_private[i] = + Actuator_Ch2_Status_Model.in_CPOS_ALL[i]; + } else { + rtDW.MaxPositionCh2_private[i] = 0; + } + + /* End of Switch: '/Switch' */ + } + + /* End of DataStoreWrite: '/Data Store Write1' */ + + /* Merge: '/Merge' incorporates: + * Constant: '/Constant' + * Sum: '/step inc' + */ + rtB.Merge_bj = (int8_t)(rtb_Switch_hx + 1); + + /* MATLAB Function: '/Write' incorporates: + * DataStoreRead: '/Data Store Read3' + */ + /* : if(LOGGER == 2) */ + if (rtDW.LOGGER_LIN == 2.0) { + /* : fprintf('[LIN 3] Check Stall MAX\n'); */ + printf("[LIN 3] Check Stall MAX\n"); + fflush(stdout); + + /* : for i = 1:numel(data) */ + for (i = 0; i < 9; i++) { + /* : fprintf('[LIN 3] MAX = %d ', int16(data(i))); */ + printf("[LIN 3] MAX = %d ", Actuator_Ch2_Status_Model.in_CPOS_ALL[i]); + fflush(stdout); + } + + /* : fprintf('\n'); */ + printf("\n"); + fflush(stdout); + } + + /* End of MATLAB Function: '/Write' */ + /* End of Outputs for SubSystem: '/If Action Subsystem2' */ + } else { + /* Outputs for IfAction SubSystem: '/If Action Subsystem3' incorporates: + * ActionPort: '/Action Port' + */ + /* Merge: '/Merge' incorporates: + * SignalConversion generated from: '/stepIn' + */ + rtB.Merge_bj = rtb_Switch_hx; + + /* End of Outputs for SubSystem: '/If Action Subsystem3' */ + } + + /* End of If: '/If2' */ + /* End of Outputs for SubSystem: '/Check Stall Max' */ + break; + + case 9: + /* Outputs for IfAction SubSystem: '/Homing' incorporates: + * ActionPort: '/Action Port' + */ + /* Product: '/Divide1' incorporates: + * Constant: '/ACT1' + * DataStoreRead: '/MAX ACT1T ' + */ + for (i = 0; i < 8; i++) { + rtb_Divide1_gdi[i] = (double)rtDW.MaxPositionCh2_private[i] / (double) + rtConstP.ACT1_Value_o[i]; + } + + /* End of Product: '/Divide1' */ + + /* SignalConversion generated from: '/Vector Concatenate' incorporates: + * Constant: '/Constant' + */ + rtb_Divide1_gdi[8] = 1.0; + + /* SwitchCase: '/Switch Case' incorporates: + * DataStoreRead: '/Data Store Read4' + */ + switch (rtDW.stepHoming_private_f) { + case 0: + /* Outputs for IfAction SubSystem: '/Switch Case Action Subsystem' incorporates: + * ActionPort: '/Action Port' + */ + for (i = 0; i < 9; i++) { + /* RelationalOperator: '/Compare' */ + rtb_Divide1 = rtb_Divide1_gdi[i]; + + /* Logic: '/Logical Operator' incorporates: + * Constant: '/Constant' + * Constant: '/Constant' + * RelationalOperator: '/Compare' + * RelationalOperator: '/Compare' + */ + rtb_LogicalOperator1 = ((rtb_Divide1 >= 0.9) && (rtb_Divide1 <= 1.1)); + rtb_LogicalOperator3_a0[i] = rtb_LogicalOperator1; + + /* DataTypeConversion: '/Data Type Conversion' incorporates: + * DataStoreRead: '/Data Store Read' + * DataStoreWrite: '/Data Store Write' + * Logic: '/Logical Operator' + * Logic: '/Logical Operator1' + */ + rtDW.ErrorCalibration_private_h[i] = (uint8_t)((!rtb_LogicalOperator1) && + (rtDW.ErrorCalibration_private_h[i] != 0)); + } + + /* MATLAB Function: '/MAX POSITION' incorporates: + * DataStoreRead: '/Data Store Read5' + * DataStoreRead: '/MIN ACT1T 1' + * Logic: '/Logical Operator2' + */ + /* : if(LOGGER>0) */ + if (rtDW.LOGGER_LIN > 0.0) { + /* : fprintf("[LIN 3] Homing 0\n"); */ + printf("[LIN 3] Homing 0\n"); + fflush(stdout); + + /* : for i = 1:numel(MAX) */ + for (i = 0; i < 6; i++) { + /* : fprintf('[LIN 3] ACT%d MAX = %d KOEF = %f Callibration = %d \n', int16(i), int16(MAX(i)), KOEF(i), int16(ERRORS(i))); */ + printf("[LIN 3] ACT%d MAX = %d KOEF = %f Callibration = %d \n", + (int16_t)(i + 1), rtDW.MaxPositionCh2_private[i], + rtb_Divide1_gdi[i], (int16_t)!rtb_LogicalOperator3_a0[i]); + fflush(stdout); + } + } + + /* End of MATLAB Function: '/MAX POSITION' */ + + /* Logic: '/Logical Operator1' */ + rtb_LogicalOperator1 = rtb_LogicalOperator3_a0[0]; + for (y = 0; y < 8; y++) { + rtb_LogicalOperator1 = (rtb_LogicalOperator1 && + rtb_LogicalOperator3_a0[y + 1]); + } + + /* Switch: '/Switch' incorporates: + * Logic: '/Logical Operator1' + */ + if (rtb_LogicalOperator1) { + /* Merge: '/Merge' incorporates: + * Constant: '/Constant1' + */ + rtB.Merge_j = 4; + } else { + /* Merge: '/Merge' incorporates: + * Constant: '/Constant' + */ + rtB.Merge_j = 1; + } + + /* End of Switch: '/Switch' */ + /* End of Outputs for SubSystem: '/Switch Case Action Subsystem' */ + break; + + case 1: + /* Outputs for IfAction SubSystem: '/Switch Case Action Subsystem1' incorporates: + * ActionPort: '/Action Port' + */ + /* RelationalOperator: '/Compare' incorporates: + * Constant: '/Constant' + */ + for (i = 0; i < 9; i++) { + rtb_LogicalOperator3_a0[i] = (rtb_Divide1_gdi[i] > 1.5); + } + + /* End of RelationalOperator: '/Compare' */ + + /* Logic: '/Logical Operator' */ + rtb_LogicalOperator1 = rtb_LogicalOperator3_a0[0]; + for (y = 0; y < 8; y++) { + rtb_LogicalOperator1 = (rtb_LogicalOperator1 || + rtb_LogicalOperator3_a0[y + 1]); + } + + /* DataTypeConversion: '/Data Type Conversion' incorporates: + * DataStoreWrite: '/Data Store Write1' + * Logic: '/Logical Operator' + */ + rtDW.CCU_ActuatorErrF_Stat_private = rtb_LogicalOperator1; + for (i = 0; i < 9; i++) { + /* DataTypeConversion: '/Data Type Conversion1' incorporates: + * DataStoreWrite: '/Data Store Write2' + */ + rtb_LogicalOperator1 = rtb_LogicalOperator3_a0[i]; + rtDW.COM_private_b[i] = rtb_LogicalOperator1; + + /* DataTypeConversion: '/Data Type Conversion2' incorporates: + * DataStoreRead: '/Data Store Read' + * DataStoreWrite: '/Data Store Write3' + * Logic: '/Logical Operator1' + */ + rtDW.ErrorActuator_o[i] = (uint8_t)(rtb_LogicalOperator1 || + (rtDW.ErrorActuator_o[i] != 0)); + + /* DataStoreWrite: '/Data Store Write' */ + rtDW.MODE_private_p[i] = 2U; + } + + /* MATLAB Function: '/Write ERROR' incorporates: + * DataStoreRead: '/Data Store Read6' + */ + /* : if(LOGGER>=0) */ + if (rtDW.LOGGER_LIN >= 0.0) { + /* : for i = 1:numel(ErrCallibration) */ + for (i = 0; i < 9; i++) { + /* : if ErrCallibration(i) == 1 */ + if (rtb_LogicalOperator3_a0[i]) { + /* : fprintf('[LIN 3] Failure with actuator #%d\n', int16(i)); */ + printf("[LIN 3] Failure with actuator #%d\n", (int16_t)(i + 1)); + fflush(stdout); + } + } + } + + /* End of MATLAB Function: '/Write ERROR' */ + for (i = 0; i < 9; i++) { + /* Logic: '/Logical Operator1' */ + rtb_LogicalOperator1 = rtb_LogicalOperator3_a0[i]; + + /* DataTypeConversion: '/Data Type Conversion' incorporates: + * DataStoreRead: '/Data Store Read' + * DataStoreWrite: '/Data Store Write' + * Logic: '/Logical Operator' + * Logic: '/Logical Operator1' + */ + rtDW.ErrorCalibration_private_h[i] = (uint8_t)((!rtb_LogicalOperator1) && + (rtDW.ErrorCalibration_private_h[i] != 0)); + + /* DataStoreWrite: '/Data Store Write' incorporates: + * DataTypeConversion: '/Data Type Conversion' + */ + rtDW.dtc_state_error_model[i + 54] = rtb_LogicalOperator1; + } + + /* DataStoreWrite: '/Data Store Write' incorporates: + * Constant: '/Constant' + */ + rtDW.stepSig_private_o = 1; + + /* MATLAB Function: '/MAX POSITION' incorporates: + * DataStoreRead: '/Data Store Read5' + * DataStoreRead: '/MIN ACT1T 1' + * DataStoreWrite: '/Data Store Write' + */ + /* : if(LOGGER>0) */ + if (rtDW.LOGGER_LIN > 0.0) { + /* : fprintf("[LIN 3] Homing 1. Start Callibration \n"); */ + printf("[LIN 3] Homing 1. Start Callibration \n"); + fflush(stdout); + + /* : for i = 1:numel(MAX) */ + for (i = 0; i < 6; i++) { + /* : if(ERRORS(i)==1) */ + if (rtDW.ErrorCalibration_private_h[i] == 1) { + /* : fprintf('[LIN 3] ACT%d MAX = %d KOEF = %f Callibration = %d \n', int16(i), int16(MAX(i)), KOEF(i), int16(ERRORS(i))); */ + printf("[LIN 3] ACT%d MAX = %d KOEF = %f Callibration = %d \n", + (int16_t)(i + 1), rtDW.MaxPositionCh2_private[i], + rtb_Divide1_gdi[i], (int16_t) + rtDW.ErrorCalibration_private_h[i]); + fflush(stdout); + } + } + } + + /* End of MATLAB Function: '/MAX POSITION' */ + + /* Logic: '/Logical Operator2' incorporates: + * DataStoreWrite: '/Data Store Write' + */ + rtb_LogicalOperator1 = (rtDW.ErrorCalibration_private_h[0] != 0); + for (y = 0; y < 8; y++) { + rtb_LogicalOperator1 = (rtb_LogicalOperator1 || + (rtDW.ErrorCalibration_private_h[y + 1] != 0)); + } + + /* Switch: '/Switch' incorporates: + * Logic: '/Logical Operator2' + */ + if (rtb_LogicalOperator1) { + /* Merge: '/Merge' incorporates: + * Constant: '/Constant1' + */ + rtB.Merge_j = 2; + } else { + /* Merge: '/Merge' incorporates: + * Constant: '/Constant1' + */ + rtB.Merge_j = 4; + } + + /* End of Switch: '/Switch' */ + /* End of Outputs for SubSystem: '/Switch Case Action Subsystem1' */ + break; + + case 2: + /* Outputs for IfAction SubSystem: '/Switch Case Action Subsystem2' incorporates: + * ActionPort: '/Action Port' + */ + for (i = 0; i < 9; i++) { + /* RelationalOperator: '/Compare' */ + rtb_Divide1 = rtb_Divide1_gdi[i]; + + /* Logic: '/Logical Operator3' incorporates: + * Constant: '/Constant' + * Constant: '/Constant' + * DataStoreRead: '/Data Store Read' + * Logic: '/Logical Operator1' + * Logic: '/Logical Operator4' + * RelationalOperator: '/Compare' + * RelationalOperator: '/Compare' + */ + rtb_LogicalOperator1 = (((rtb_Divide1 < 0.97) || (rtb_Divide1 > 1.03)) && + (rtDW.ErrorCalibration_private_h[i] != 0)); + rtb_LogicalOperator3_a0[i] = rtb_LogicalOperator1; + + /* DataTypeConversion: '/Data Type Conversion' incorporates: + * DataStoreWrite: '/Data Store Write1' + */ + rtDW.ErrorCalibration_private_h[i] = rtb_LogicalOperator1; + } + + /* MATLAB Function: '/MAX POSITION' incorporates: + * DataStoreRead: '/Data Store Read5' + * DataStoreRead: '/MIN ACT1T 1' + */ + /* : if(LOGGER>0) */ + if (rtDW.LOGGER_LIN > 0.0) { + /* : fprintf("[LIN 3] Homing 3. Callibration \n"); */ + printf("[LIN 3] Homing 3. Callibration \n"); + fflush(stdout); + + /* : for i = 1:numel(MAX) */ + for (i = 0; i < 6; i++) { + /* : if(ERRORS(i)==1) */ + if (rtb_LogicalOperator3_a0[i]) { + /* : fprintf('[LIN 3] ACT%d MAX = %d KOEF = %f Callibration = %d \n', int16(i), int16(MAX(i)), KOEF(i), int16(ERRORS(i))); */ + printf("[LIN 3] ACT%d MAX = %d KOEF = %f Callibration = %d \n", + (int16_t)(i + 1), rtDW.MaxPositionCh2_private[i], + rtb_Divide1_gdi[i], 1); + fflush(stdout); + } + } + } + + /* End of MATLAB Function: '/MAX POSITION' */ + + /* Logic: '/Logical Operator2' */ + rtb_LogicalOperator1 = rtb_LogicalOperator3_a0[0]; + for (y = 0; y < 8; y++) { + rtb_LogicalOperator1 = (rtb_LogicalOperator1 || + rtb_LogicalOperator3_a0[y + 1]); + } + + /* Switch: '/Switch' incorporates: + * Logic: '/Logical Operator2' + */ + if (rtb_LogicalOperator1) { + /* Merge: '/Merge' incorporates: + * Constant: '/Constant3' + */ + rtB.Merge_j = 3; + } else { + /* Merge: '/Merge' incorporates: + * Constant: '/Constant1' + */ + rtB.Merge_j = 4; + } + + /* End of Switch: '/Switch' */ + /* End of Outputs for SubSystem: '/Switch Case Action Subsystem2' */ + break; + + case 3: + /* Outputs for IfAction SubSystem: '/Switch Case Action Subsystem3' incorporates: + * ActionPort: '/Action Port' + */ + /* MATLAB Function: '/MAX POSITION' incorporates: + * DataStoreRead: '/Data Store Read1' + * DataStoreRead: '/Data Store Read5' + */ + /* : if(LOGGER>1) */ + if (rtDW.LOGGER_LIN > 1.0) { + /* : fprintf("[LIN 3] Homing 3. Start Time on step %d\n",int16(step)); */ + rtb_Divide1 = rt_roundd(rtDW.ErrorHomming_private_m); + if (rtb_Divide1 < 32768.0) { + if (rtb_Divide1 >= -32768.0) { + AMB = (int16_t)rtb_Divide1; + } else { + AMB = INT16_MIN; + } + } else { + AMB = INT16_MAX; + } + + printf("[LIN 3] Homing 3. Start Time on step %d\n", AMB); + fflush(stdout); + } + + /* End of MATLAB Function: '/MAX POSITION' */ + + /* If: '/If' incorporates: + * DataStoreRead: '/Data Store Read1' + */ + if (rtDW.ErrorHomming_private_m < 10.0) { + /* Outputs for IfAction SubSystem: '/If Action Subsystem' incorporates: + * ActionPort: '/Action Port' + */ + /* MATLAB Function: '/MATLAB Function' incorporates: + * DataStoreRead: '/Data Store Read' + * DataStoreRead: '/Data Store Read1' + */ + MATLABFunction(rtDW.Start_timer, rtDW.t_now, &rtb_dt_ih, + &rtDW.sf_MATLABFunction_c); + + /* MATLAB Function: '/MAX POSITION' incorporates: + * DataStoreRead: '/Data Store Read5' + */ + /* : if(LOGGER>1) */ + if (rtDW.LOGGER_LIN > 1.0) { + /* : fprintf("[LIN 3] Homing 3. Start TIme dt = %d \n",int32(data)); */ + rtb_dt_fa = rtb_dt_ih; + if (rtb_dt_ih > 2147483647U) { + rtb_dt_fa = 2147483647U; + } + + printf("[LIN 3] Homing 3. Start TIme dt = %d \n", (int32_t)rtb_dt_fa); + fflush(stdout); + } + + /* End of MATLAB Function: '/MAX POSITION' */ + + /* If: '/If' */ + if (rtb_dt_ih > 30000U) { + /* Outputs for IfAction SubSystem: '/If Action Subsystem' incorporates: + * ActionPort: '/Action Port' + */ + /* Merge: '/Merge' */ + IfActionSubsystem(&rtB.Merge_j, &rtDW.ErrorHomming_private_m, + &rtDW.Start_timer, &rtDW.stepSig_private_o); + + /* End of Outputs for SubSystem: '/If Action Subsystem' */ + } else { + /* Outputs for IfAction SubSystem: '/If Action Subsystem1' incorporates: + * ActionPort: '/Action Port' + */ + /* Merge: '/Merge' */ + IfActionSubsystem1_l(&rtB.Merge_j, &rtDW.Start_timer); + + /* End of Outputs for SubSystem: '/If Action Subsystem1' */ + } + + /* End of If: '/If' */ + /* End of Outputs for SubSystem: '/If Action Subsystem' */ + } else { + /* Outputs for IfAction SubSystem: '/If Action Subsystem1' incorporates: + * ActionPort: '/Action Port' + */ + IfActionSubsystem1(&rtB.Merge_j, &rtDW.CCU_ActuatorErrF_Stat_private, + rtDW.COM_private_b, rtDW.ErrorActuator_o, + rtDW.ErrorCalibration_private_h, &rtDW.LOGGER_LIN, + rtDW.MODE_private_p, rtDW.dtc_state_error_model); + + /* End of Outputs for SubSystem: '/If Action Subsystem1' */ + } + + /* End of If: '/If' */ + /* End of Outputs for SubSystem: '/Switch Case Action Subsystem3' */ + break; + + case 4: + /* Outputs for IfAction SubSystem: '/Switch Case Action Subsystem4' incorporates: + * ActionPort: '/Action Port' + */ + /* DataStoreWrite: '/Data Store Write' incorporates: + * Constant: '/Constant' + */ + rtDW.stepSig_private_o = 10; + + /* Merge: '/Merge' incorporates: + * Constant: '/Constant1' + * SignalConversion generated from: '/step' + */ + rtB.Merge_j = 5; + + /* MATLAB Function: '/MAX POSITION' incorporates: + * DataStoreRead: '/Data Store Read5' + */ + /* : if(LOGGER>0) */ + if (rtDW.LOGGER_LIN > 0.0) { + /* : fprintf("[LIN 3] Homing. Callibration successful \n"); */ + printf("[LIN 3] Homing. Callibration successful \n"); + fflush(stdout); + } + + /* End of MATLAB Function: '/MAX POSITION' */ + /* End of Outputs for SubSystem: '/Switch Case Action Subsystem4' */ + break; + } + + /* End of SwitchCase: '/Switch Case' */ + + /* DataStoreWrite: '/Data Store Write2' */ + rtDW.stepHoming_private_f = rtB.Merge_j; + + /* Merge: '/Merge' incorporates: + * DataStoreRead: '/Data Store Read7' + */ + rtB.Merge_bj = rtDW.stepSig_private_o; + + /* End of Outputs for SubSystem: '/Homing' */ break; } - /* End of MultiPortSwitch: '/Multiport Switch' */ + /* End of SwitchCase: '/Switch Case' */ - /* MATLAB Function: '/AF for Vent mode R' incorporates: - * DataStoreRead: '/Data Store Read15' + /* Outport: '/CCU_Errors_model' incorporates: + * DataStoreRead: '/Data Store Read10' */ - AFforVentmodeR(rtDW.FIU_BLOWERS_RR, &rtb_out_hi); + rtY.CCU_Errors_model = CCU_Errors_Model; - /* MATLAB Function: '/AF for Bi Level R' incorporates: - * DataStoreRead: '/Data Store Read15' + /* DataStoreWrite: '/Finish write stepSig' */ + rtDW.stepSig_private_o = rtB.Merge_bj; + + /* BusCreator: '/Bus Creator' incorporates: + * DataStoreRead: '/Data Store Read' + * DataStoreRead: '/Data Store Read1' + * DataStoreRead: '/Data Store Read2' + * DataStoreRead: '/Data Store Read3' + * DataStoreRead: '/Data Store Read4' + * DataStoreRead: '/Data Store Read5' + * DataStoreRead: '/Data Store Read6' + * DataStoreRead: '/Data Store Read7' + * DataStoreRead: '/Data Store Read8' + * DataStoreWrite: '/Data Store Write' */ - AFforBiLevelR(rtDW.FIU_BLOWERS_RR, &rtb_out_cb); - - /* MATLAB Function: '/AF for Foot R' incorporates: - * DataStoreRead: '/Data Store Read15' - */ - AFforFootR(rtDW.FIU_BLOWERS_RR, &rtb_out_ee); - - /* MultiPortSwitch: '/Multiport Switch' incorporates: - * Constant: '/Constant1' - * Constant: '/Constant2' - * Constant: '/Constant3' - * DataStoreRead: '/Data Store Read16' - * DataStoreRead: '/Data Store Read17' - * Gain: '/Gain2' - * RelationalOperator: '/Relational Operator1' - * RelationalOperator: '/Relational Operator2' - * Sum: '/Add' - */ - switch ((int32_t)((uint32_t)((rtDW.FIU_FOOT_RR == 1) << 1) + (uint32_t) - (rtDW.FIU_FACE_RR == 1))) { - case 0: - rtb_out_ee = 0U; - break; - - case 1: - rtb_out_ee = rtb_out_hi; - break; - - case 2: - rtb_out_ee = rtb_out_cb; - break; + for (i = 0; i < 9; i++) { + Actuator_Ch2_Command_Model.POS[i] = rtDW.POS_private_g[i]; + Actuator_Ch2_Command_Model.BUS_ADR[i] = rtDW.BUS_ADR_private_p[i]; + Actuator_Ch2_Command_Model.MODE[i] = rtDW.MODE_private_p[i]; + Actuator_Ch2_Command_Model.COM[i] = rtDW.COM_private_b[i]; + Actuator_Ch2_Command_Model.Stall_SET[i] = rtDW.Stall_private_h3[i]; + Actuator_Ch2_Command_Model.Lnoise_SET[i] = rtDW.Lnoise_private_k[i]; + Actuator_Ch2_Command_Model.Autos_SET[i] = rtDW.Autos_private_k[i]; + Actuator_Ch2_Command_Model.Speed_SET[i] = rtDW.Speed_private_o[i]; + Actuator_Ch2_Command_Model.Coils_Stop_SET[i] = rtDW.Coils_private_m[i]; } - /* End of MultiPortSwitch: '/Multiport Switch' */ + /* End of BusCreator: '/Bus Creator' */ - /* DataTypeConversion: '/Data Type Conversion' incorporates: - * Constant: '/Constant1' - * DataStoreWrite: '/Data Store Write1' - * Product: '/Divide1' - * Sum: '/Add1' + /* RelationalOperator: '/Compare' incorporates: + * Constant: '/Constant' + * DataStoreRead: '/Data Store Read2' */ - rtDW.PWM_rear = (uint8_t)((double)(uint16_t)((uint32_t)rtb_out_bc + rtb_out_ee) - / 4.0); + for (i = 0; i < 8; i++) { + rtb_Compare_l2[i] = (rtDW.ErrorCalibration_private_h[i] == 0); + } - /* MATLAB Function: '/Write' incorporates: - * DataStoreWrite: '/Data Store Write' + /* End of RelationalOperator: '/Compare' */ + + /* Logic: '/Logical Operator' */ + rtb_LogicalOperator1 = rtb_Compare_l2[0]; + for (y = 0; y < 7; y++) { + rtb_LogicalOperator1 = (rtb_LogicalOperator1 || rtb_Compare_l2[y + 1]); + } + + /* Switch: '/Switch1' incorporates: + * Constant: '/Constant' + * Constant: '/Constant3' + * DataStoreRead: '/Data Store Read2' + * Logic: '/Logical Operator' + * Product: '/Product' */ - /* : fprintf('pwmFront_output = %u \n',data); */ - printf("pwmFront_output = %u \n", rtDW.PWM_front); + for (i = 0; i < 8; i++) { + if (rtb_LogicalOperator1) { + rtb_VectorConcatenate_c[i] = (uint8_t)((uint32_t) + rtDW.ErrorCalibration_private_h[i] * rtConstP.Constant3_Value_j[i]); + } else { + rtb_VectorConcatenate_c[i] = 0U; + } + } + + /* End of Switch: '/Switch1' */ + + /* SignalConversion generated from: '/Vector Concatenate' incorporates: + * Constant: '/Constant1' + */ + rtb_VectorConcatenate_c[8] = 0U; + for (i = 0; i < 9; i++) { + /* DataStoreWrite: '/Data Store Write7' */ + rtDW.BUS_ADR_private_p[i] = rtb_VectorConcatenate_c[i]; + + /* DataStoreWrite: '/Data Store Write' */ + rtDW.COM_private_b[i] = 0U; + } + + /* DataStoreWrite: '/Data Store Write' incorporates: + * Constant: '/Constant' + */ + rtDW.LOGGER_LIN = 1.0; + + /* BusCreator: '/Bus Creator' incorporates: + * Constant: '/Constant2' + * Constant: '/Constant3' + * DataStoreRead: '/Data Store Read3' + * DataStoreRead: '/Data Store Read4' + * DataStoreWrite: '/Data Store Write' + */ + PWM_Get.pwmPercentFront = rtDW.PWM_front; + PWM_Get.pwmPercentRear = rtDW.PWM_rear; + PWM_Get.pwmPercentFrontReserved = 0U; + PWM_Get.pwmPercentRearReserved = 0U; + + /* MATLAB Function: '/Write' incorporates: + * DataStoreRead: '/Data Store Read' + */ + /* : if(LOGGER) */ + /* : fprintf('pwmPercentFront = %u \n',data); */ + printf("pwmPercentFront = %u \n", rtDW.PWM_Set_Model.pwmPercentFront); fflush(stdout); - /* MATLAB Function: '/Write2' incorporates: - * DataStoreRead: '/Data Store Read11' + /* MATLAB Function: '/Write1' incorporates: + * DataStoreRead: '/Data Store Read' */ - /* : fprintf('speedL_input = %u \n',data); */ - printf("speedL_input = %u \n", rtDW.FIU_BLOWERS_FR); + /* : if(LOGGER) */ + /* : fprintf('pwmPercentRear = %u \n',data); */ + printf("pwmPercentRear = %u \n", rtDW.PWM_Set_Model.pwmPercentRear); fflush(stdout); - /* MATLAB Function: '/AF for Tri-Level' incorporates: - * DataStoreRead: '/Data Store Read11' + /* MATLAB Function: '/Write2' incorporates: + * DataStoreRead: '/Data Store Read' */ - AFforTriLevel(rtDW.FIU_BLOWERS_FR, &rtb_out_ee); - - /* MATLAB Function: '/Write1' incorporates: - * DataStoreWrite: '/Data Store Write1' - */ - /* : fprintf('pwmRear_output = %u \n',data); */ - printf("pwmRear_output = %u \n", rtDW.PWM_rear); + /* : if(LOGGER) */ + /* : fprintf('pwmPercentFrontReserved = %u \n',data); */ + printf("pwmPercentFrontReserved = %u \n", + rtDW.PWM_Set_Model.pwmPercentFrontReserved); fflush(stdout); - /* End of Outputs for SubSystem: '/PWM and valves in manual' */ + /* MATLAB Function: '/Write3' incorporates: + * DataStoreRead: '/Data Store Read' + */ + /* : if(LOGGER) */ + /* : fprintf('pwmPercentRearReserved = %u \n',data); */ + printf("pwmPercentRearReserved = %u \n", + rtDW.PWM_Set_Model.pwmPercentRearReserved); + fflush(stdout); + + /* BusCreator: '/Bus Creator1' incorporates: + * DataStoreRead: '/Data Store Read1' + * DataStoreRead: '/Data Store Read10' + * DataStoreRead: '/Data Store Read11' + * DataStoreRead: '/Data Store Read13' + * DataStoreRead: '/Data Store Read15' + * DataStoreRead: '/Data Store Read17' + * DataStoreRead: '/Data Store Read19' + * DataStoreRead: '/Data Store Read3' + * DataStoreRead: '/Data Store Read4' + * DataStoreRead: '/Data Store Read8' + * DataStoreWrite: '/Data Store Write1' + */ + rtDW.dbgCAN_dbg_Sen_Duct_model.dbg_Sen_Duct_FL_Fb_Select = 0; + rtDW.dbgCAN_dbg_Sen_Duct_model.dbg_Sen_Duct_FL_Lower_Fb = 0; + rtDW.dbgCAN_dbg_Sen_Duct_model.dbg_Sen_Duct_FL_Lower_Tgt = 0; + rtDW.dbgCAN_dbg_Sen_Duct_model.dbg_Sen_Duct_FL_Side_Fb = 0; + rtDW.dbgCAN_dbg_Sen_Duct_model.dbg_Sen_Duct_FL_Upper_Fb = 0; + rtDW.dbgCAN_dbg_Sen_Duct_model.dbg_Sen_Duct_FL_Upper_Tgt = 0; + rtDW.dbgCAN_dbg_Sen_Duct_model.dbg_Sen_Duct_MultMsg_Idx = 0; + rtDW.dbgCAN_dbg_Sen_Duct_model.dbg_Sen_Duct_FR_Fb_Select = 0; + rtDW.dbgCAN_dbg_Sen_Duct_model.dbg_Sen_Duct_FR_Lower_Fb = 0; + rtDW.dbgCAN_dbg_Sen_Duct_model.dbg_Sen_Duct_FR_Lower_Tgt = Duct1_F; + rtDW.dbgCAN_dbg_Sen_Duct_model.dbg_Sen_Duct_FR_Side_Fb = Duct2_F; + rtDW.dbgCAN_dbg_Sen_Duct_model.dbg_Sen_Duct_FR_Upper_Fb = Duct3_R; + rtDW.dbgCAN_dbg_Sen_Duct_model.dbg_Sen_Duct_FR_Upper_Tgt = Duct4_R; + rtDW.dbgCAN_dbg_Sen_Duct_model.dbg_Sen_Duct_RL_Fb = Duct5_F; + rtDW.dbgCAN_dbg_Sen_Duct_model.dbg_Sen_Duct_RL_Fb_Select = Duct6_F; + rtDW.dbgCAN_dbg_Sen_Duct_model.dbg_Sen_Duct_RL_Side_Fb = Duct1_R; + rtDW.dbgCAN_dbg_Sen_Duct_model.dbg_Sen_Duct_RL_Tgt = Duct2_R; + rtDW.dbgCAN_dbg_Sen_Duct_model.dbg_Sen_Duct_RR_Fb = 0; + rtDW.dbgCAN_dbg_Sen_Duct_model.dbg_Sen_Duct_RR_Fb_Select = 0; + rtDW.dbgCAN_dbg_Sen_Duct_model.dbg_Sen_Duct_RR_Side_Fb = Duct3_F; + rtDW.dbgCAN_dbg_Sen_Duct_model.dbg_Sen_Duct_RR_Tgt = Duct4_F; + + /* BusCreator: '/Bus Creator1' incorporates: + * DataStoreRead: '/Data Store Read3' + * DataStoreRead: '/Data Store Read4' + * DataStoreWrite: '/Data Store Write1' + */ + rtDW.dbgCAN_dbg_Act0_model.dbg_Act00_Def = Actuator_pos_percent_Ch0[0]; + rtDW.dbgCAN_dbg_Act0_model.dbg_Act01_Vent_SFL = Actuator_pos_percent_Ch0[5]; + rtDW.dbgCAN_dbg_Act0_model.dbg_Act02_Vent_CFL = Actuator_pos_percent_Ch0[4]; + rtDW.dbgCAN_dbg_Act0_model.dbg_Act03_Foot_1FL = Actuator_pos_percent_Ch0[7]; + rtDW.dbgCAN_dbg_Act0_model.dbg_Act04_Foot_2FL = Actuator_pos_percent_Ch0[8]; + rtDW.dbgCAN_dbg_Act0_model.dbg_Act05_Vent_CFR = rtb_DataTypeConversion_md[1]; + rtDW.dbgCAN_dbg_Act0_model.dbg_Act06_Vent_SFR = rtb_DataTypeConversion_md[2]; + rtDW.dbgCAN_dbg_Act0_model.dbg_Act07_Foot_1FR = rtb_DataTypeConversion_md[4]; + + /* BusCreator: '/Bus Creator3' incorporates: + * DataStoreRead: '/Data Store Read3' + * DataStoreRead: '/Data Store Read4' + * DataStoreWrite: '/Data Store Write2' + * DataStoreWrite: '/Data Store Write2' + */ + rtDW.dbgCAN_dbg_Act2_model.dbg_Act16_TempL_FL = Actuator_pos_percent_Ch0[6]; + rtDW.dbgCAN_dbg_Act2_model.dbg_Act17_TempU_FR = rtb_DataTypeConversion_md[0]; + rtDW.dbgCAN_dbg_Act2_model.dbg_Act18_TempL_FR = rtb_DataTypeConversion_md[3]; + rtDW.dbgCAN_dbg_Act2_model.dbg_Act19_Temp_RL = rtb_DataTypeConversion_ns[1]; + rtDW.dbgCAN_dbg_Act2_model.dbg_Act20_Temp_RR = rtb_DataTypeConversion_ns[0]; + rtDW.dbgCAN_dbg_Act2_model.dbg_Act21_Rec = Actuator_pos_percent_Ch0[1]; + rtDW.dbgCAN_dbg_Act2_model.dbg_Act22_OSA = Actuator_pos_percent_Ch0[2]; + rtDW.dbgCAN_dbg_Act2_model.dbg_Act23_SealingValve = rtb_DataTypeConversion_ns + [8]; + + /* BusCreator: '/Bus Creator2' incorporates: + * DataStoreRead: '/Data Store Read3' + * DataStoreRead: '/Data Store Read4' + * DataStoreWrite: '/Data Store Write3' + * DataStoreWrite: '/Data Store Write2' + */ + rtDW.dbgCAN_dbg_Act1_model.dbg_Act08_Foot_2FR = rtb_DataTypeConversion_md[5]; + rtDW.dbgCAN_dbg_Act1_model.dbg_Act09_Vent_SRL = rtb_DataTypeConversion_ns[2]; + rtDW.dbgCAN_dbg_Act1_model.dbg_Act10_Vent_CRL = rtb_DataTypeConversion_ns[4]; + rtDW.dbgCAN_dbg_Act1_model.dbg_Act11_Foot_RL = rtb_DataTypeConversion_ns[3]; + rtDW.dbgCAN_dbg_Act1_model.dbg_Act12_Vent_CRR = rtb_DataTypeConversion_ns[5]; + rtDW.dbgCAN_dbg_Act1_model.dbg_Act13_Vent_SRR = rtb_DataTypeConversion_ns[7]; + rtDW.dbgCAN_dbg_Act1_model.dbg_Act14_Foot_RR = rtb_DataTypeConversion_ns[6]; + rtDW.dbgCAN_dbg_Act1_model.dbg_Act15_TempU_FL = Actuator_pos_percent_Ch0[3]; + + /* BusCreator: '/Bus Creator' incorporates: + * DataStoreRead: '/Data Store Read' + * DataStoreRead: '/Data Store Read1' + * DataStoreRead: '/Data Store Read2' + * DataStoreRead: '/Data Store Read3' + * DataStoreRead: '/Data Store Read4' + * DataStoreRead: '/Data Store Read5' + * DataStoreWrite: '/Data Store Write' + */ + rtDW.dbgCAN_dbg_Logic_Blower_model.Logic_Blower_Step_FL = 0U; + rtDW.dbgCAN_dbg_Logic_Blower_model.Logic_Blower_Step_FR = 0U; + rtDW.dbgCAN_dbg_Logic_Blower_model.Logic_Blower_Step_RL = 0U; + rtDW.dbgCAN_dbg_Logic_Blower_model.Logic_Blower_Step_RR = 0U; + rtDW.dbgCAN_dbg_Logic_Blower_model.Logic_Blower_Pwm_Front = rtDW.PWM_front; + rtDW.dbgCAN_dbg_Logic_Blower_model.Logic_Blower_Pwm_Rear = rtDW.PWM_rear; + rtDW.dbgCAN_dbg_Logic_Blower_model.Logic_Blower_AF_FL = rtDW.Blower_AF_FL; + rtDW.dbgCAN_dbg_Logic_Blower_model.Logic_Blower_AF_FR = rtDW.Blower_AF_FR; + rtDW.dbgCAN_dbg_Logic_Blower_model.Logic_Blower_AF_RL = rtDW.Blower_AF_RL; + rtDW.dbgCAN_dbg_Logic_Blower_model.Logic_Blower_AF_RR = rtDW.Blower_AF_RR; + + /* BusCreator: '/Bus Creator' incorporates: + * DataStoreRead: '/Data Store Read' + * DataStoreRead: '/Data Store Read1' + * DataStoreWrite: '/Data Store Write' + */ + rtDW.dbgCAN_dbg_Sen_Eva_model.dbg_Sen_Eva_F = 0; + rtDW.dbgCAN_dbg_Sen_Eva_model.dbg_Sen_Eva_R = 0; + rtDW.dbgCAN_dbg_Sen_Eva_model.dbg_Sen_Eva_Target = Eva_F; + rtDW.dbgCAN_dbg_Sen_Eva_model.dbg_Sen_Eva_Diff_FrontRear = Eva_R; + + /* Outport: '/PWM_Get' incorporates: + * DataStoreRead: '/Data Store Read7' + */ + rtY.PWM_Get_f = PWM_Get; + + /* Outport: '/dtc_state_error_model' incorporates: + * DataStoreRead: '/Data Store Read1' + */ + memcpy(&rtY.dtc_state_error_model[0], &rtDW.dtc_state_error_model[0], 127U * + sizeof(uint8_t)); + + /* Outport: '/dbgCAN_dbg_Act0_model' incorporates: + * DataStoreRead: '/Data Store Read3' + */ + rtY.dbgCAN_dbg_Act0_model = rtDW.dbgCAN_dbg_Act0_model; + + /* Outport: '/dbgCAN_dbg_Act1_model' incorporates: + * DataStoreRead: '/Data Store Read4' + */ + rtY.dbgCAN_dbg_Act1_model = rtDW.dbgCAN_dbg_Act1_model; + + /* Outport: '/dbgCAN_dbg_Act2_model' incorporates: + * DataStoreRead: '/Data Store Read5' + */ + rtY.dbgCAN_dbg_Act2_model = rtDW.dbgCAN_dbg_Act2_model; + + /* Outport: '/CCU_Stat1_model' incorporates: + * DataStoreRead: '/Data Store Read6' + */ + rtY.CCU_Stat1_model = rtDW.CCU_STAT1_MODEL; + + /* Outport: '/dbgCAN_dbg_Sen_Duct_model' incorporates: + * DataStoreRead: '/Data Store Read8' + */ + rtY.dbgCAN_dbg_Sen_Duct_model = rtDW.dbgCAN_dbg_Sen_Duct_model; + + /* Outport: '/dbgCAN_dbg_Sen_Eva_model' incorporates: + * DataStoreRead: '/Data Store Read9' + */ + rtY.dbgCAN_dbg_Sen_Eva_model = rtDW.dbgCAN_dbg_Sen_Eva_model; + + /* Outport: '/dbgCAN_dbg_Logic_Blower_model' incorporates: + * DataStoreRead: '/Data Store Read13' + */ + rtY.dbgCAN_dbg_Logic_Blower_model = rtDW.dbgCAN_dbg_Logic_Blower_model; + + /* Outputs for Enabled SubSystem: '/PWM and valves in manual1' incorporates: + * EnablePort: '/Enable' + */ + /* Logic: '/Logical Operator1' incorporates: + * Constant: '/Constant2' + * Constant: '/Constant3' + * DataStoreRead: '/Data Store Read11' + * DataStoreRead: '/Data Store Read12' + * RelationalOperator: '/Equal2' + * RelationalOperator: '/Equal3' + */ + if ((rtDW.FIU_MODE_FL == 1) && (rtDW.FIU_MODE_FR == 1)) { + /* MATLAB Function: '/Valves for Def' */ + ValvesforDef(0U, &rtb_out_oc); + + /* MATLAB Function: '/Valves for Vent mode' */ + ValvesforVentmode(0U, &rtb_out_jn); + + /* MATLAB Function: '/Valves for Hi_Level' */ + ValvesforHi_Level(0U, &rtb_out_pd); + + /* MATLAB Function: '/Valves for Foot' */ + ValvesforFoot(0U, &rtb_out_b5); + + /* MATLAB Function: '/Valves for Foot + Def' */ + ValvesforFootDef(0U, &rtb_out_iir); + + /* MATLAB Function: '/Valves for Bi Level' */ + ValvesforBiLevel(0U, &rtb_out_e0); + + /* MATLAB Function: '/Valves for Tri-Level' */ + ValvesforTriLevel(0U, &rtb_out_bko); + + /* MultiPortSwitch: '/Multiport Switch' incorporates: + * Constant: '/Constant' + * Constant: '/Constant1' + * Constant: '/Constant2' + * DataStoreRead: '/Data Store Read10' + * DataStoreRead: '/Data Store Read4' + * DataStoreRead: '/Data Store Read5' + * Gain: '/Gain1' + * Gain: '/Gain2' + * RelationalOperator: '/Relational Operator' + * RelationalOperator: '/Relational Operator1' + * RelationalOperator: '/Relational Operator2' + * Sum: '/Add' + */ + switch ((int32_t)(((uint32_t)((rtDW.FIU_FACE_FL == 1) << 1) + (uint32_t) + (rtDW.FIU_DEF_FL == 1)) + (uint32_t)((rtDW.FIU_FOOT_FL == + 1) << 2))) { + case 0: + for (i = 0; i < 9; i++) { + /* Assignment: '/Присваивание в [7-8]' incorporates: + * DataStoreWrite: '/Data Store Write' + */ + rtDW.valves_front_manual_target[i] = 0U; + } + break; + + case 1: + for (i = 0; i < 9; i++) { + /* Assignment: '/Присваивание в [7-8]' incorporates: + * DataStoreWrite: '/Data Store Write' + */ + rtDW.valves_front_manual_target[i] = rtb_out_oc; + } + break; + + case 2: + for (i = 0; i < 9; i++) { + /* Assignment: '/Присваивание в [7-8]' incorporates: + * DataStoreWrite: '/Data Store Write' + */ + rtDW.valves_front_manual_target[i] = rtb_out_jn; + } + break; + + case 3: + for (i = 0; i < 9; i++) { + /* Assignment: '/Присваивание в [7-8]' incorporates: + * DataStoreWrite: '/Data Store Write' + */ + rtDW.valves_front_manual_target[i] = rtb_out_pd; + } + break; + + case 4: + for (i = 0; i < 9; i++) { + /* Assignment: '/Присваивание в [7-8]' incorporates: + * DataStoreWrite: '/Data Store Write' + */ + rtDW.valves_front_manual_target[i] = rtb_out_b5; + } + break; + + case 5: + for (i = 0; i < 9; i++) { + /* Assignment: '/Присваивание в [7-8]' incorporates: + * DataStoreWrite: '/Data Store Write' + */ + rtDW.valves_front_manual_target[i] = rtb_out_iir; + } + break; + + case 6: + for (i = 0; i < 9; i++) { + /* Assignment: '/Присваивание в [7-8]' incorporates: + * DataStoreWrite: '/Data Store Write' + */ + rtDW.valves_front_manual_target[i] = rtb_out_e0; + } + break; + + default: + for (i = 0; i < 9; i++) { + /* Assignment: '/Присваивание в [7-8]' incorporates: + * DataStoreWrite: '/Data Store Write' + */ + rtDW.valves_front_manual_target[i] = rtb_out_bko; + } + break; + } + + /* End of MultiPortSwitch: '/Multiport Switch' */ + + /* MATLAB Function: '/Valves for Def' */ + ValvesforDef(0U, &rtb_out_oc); + + /* MATLAB Function: '/Valves for Vent mode' */ + ValvesforVentmode(0U, &rtb_out_jn); + + /* MATLAB Function: '/Valves for Hi_Level' */ + ValvesforHi_Level(0U, &rtb_out_pd); + + /* MATLAB Function: '/Valves for Foot' */ + ValvesforFoot(0U, &rtb_out_b5); + + /* MATLAB Function: '/Valves for Foot + Def' */ + ValvesforFootDef(0U, &rtb_out_iir); + + /* MATLAB Function: '/Valves for Bi Level' */ + ValvesforBiLevel(0U, &rtb_out_e0); + + /* MATLAB Function: '/Valves for Tri-Level' */ + ValvesforTriLevel(0U, &rtb_out_bko); + + /* MultiPortSwitch: '/Multiport Switch' incorporates: + * Constant: '/Constant' + * Constant: '/Constant1' + * Constant: '/Constant2' + * DataStoreRead: '/Data Store Read1' + * DataStoreRead: '/Data Store Read2' + * DataStoreRead: '/Data Store Read3' + * Gain: '/Gain1' + * Gain: '/Gain2' + * RelationalOperator: '/Relational Operator' + * RelationalOperator: '/Relational Operator1' + * RelationalOperator: '/Relational Operator2' + * Sum: '/Add' + */ + switch ((int32_t)(((uint32_t)((rtDW.FIU_FACE_FR == 1) << 1) + (uint32_t) + (rtDW.FIU_DEF_FR == 1)) + (uint32_t)((rtDW.FIU_FOOT_FR == + 1) << 2))) { + case 0: + for (i = 0; i < 9; i++) { + rtb_vals_m[i] = 0U; + } + break; + + case 1: + for (i = 0; i < 9; i++) { + rtb_vals_m[i] = rtb_out_oc; + } + break; + + case 2: + for (i = 0; i < 9; i++) { + rtb_vals_m[i] = rtb_out_jn; + } + break; + + case 3: + for (i = 0; i < 9; i++) { + rtb_vals_m[i] = rtb_out_pd; + } + break; + + case 4: + for (i = 0; i < 9; i++) { + rtb_vals_m[i] = rtb_out_b5; + } + break; + + case 5: + for (i = 0; i < 9; i++) { + rtb_vals_m[i] = rtb_out_iir; + } + break; + + case 6: + for (i = 0; i < 9; i++) { + rtb_vals_m[i] = rtb_out_e0; + } + break; + + default: + for (i = 0; i < 9; i++) { + rtb_vals_m[i] = rtb_out_bko; + } + break; + } + + /* End of MultiPortSwitch: '/Multiport Switch' */ + + /* Assignment: '/Присваивание в [3-4]' incorporates: + * Assignment: '/Присваивание в [7-8]' + * DataStoreWrite: '/Data Store Write' + */ + rtDW.valves_front_manual_target[2] = rtb_vals_m[2]; + + /* Assignment: '/Присваивание в [7-8]' incorporates: + * DataStoreWrite: '/Data Store Write' + */ + rtDW.valves_front_manual_target[6] = rtb_vals_m[6]; + + /* Assignment: '/Присваивание в [3-4]' incorporates: + * Assignment: '/Присваивание в [7-8]' + * DataStoreWrite: '/Data Store Write' + */ + rtDW.valves_front_manual_target[3] = rtb_vals_m[3]; + + /* Assignment: '/Присваивание в [7-8]' incorporates: + * DataStoreWrite: '/Data Store Write' + */ + rtDW.valves_front_manual_target[7] = rtb_vals_m[7]; + + /* MATLAB Function: '/valves for Vent mode' */ + valvesforVentmode(0U, &rtb_out_oc); + + /* MATLAB Function: '/AF for Foot' */ + AFforFoot_p(0U, &rtb_out_oc); + + /* MATLAB Function: '/AF for Bi Level' */ + AFforBiLevel_m(0U, &rtb_out_oc); + + /* MATLAB Function: '/valves for Vent mode' */ + valvesforVentmode(0U, &rtb_out_oc); + + /* MATLAB Function: '/AF for Foot' */ + AFforFoot_p(0U, &rtb_out_oc); + + /* MATLAB Function: '/AF for Bi Level' */ + AFforBiLevel_m(0U, &rtb_out_oc); + + /* MATLAB Function: '/AF for Vent mode' incorporates: + * DataStoreRead: '/Data Store Read11' + */ + AFforVentmode(rtDW.FIU_BLOWERS_FL, &rtb_out_oc); + + /* MATLAB Function: '/AF for Bi Level' incorporates: + * DataStoreRead: '/Data Store Read11' + */ + AFforBiLevel(rtDW.FIU_BLOWERS_FL, &rtb_out_jn); + + /* MATLAB Function: '/AF for Foot' incorporates: + * DataStoreRead: '/Data Store Read11' + */ + AFforFoot(rtDW.FIU_BLOWERS_FL, &rtb_out_pd); + + /* MATLAB Function: '/AF for Foor + Def' incorporates: + * DataStoreRead: '/Data Store Read11' + */ + AFforFoorDef(rtDW.FIU_BLOWERS_FL, &rtb_out_b5); + + /* MATLAB Function: '/AF for Def' incorporates: + * DataStoreRead: '/Data Store Read11' + */ + AFforDef(rtDW.FIU_BLOWERS_FL, &rtb_out_iir); + + /* MATLAB Function: '/AF for Hi_Level' incorporates: + * DataStoreRead: '/Data Store Read11' + */ + AFforHi_Level(rtDW.FIU_BLOWERS_FL, &rtb_out_e0); + + /* MultiPortSwitch: '/Multiport Switch' incorporates: + * Constant: '/Constant' + * Constant: '/Constant1' + * Constant: '/Constant2' + * Constant: '/Constant3' + * DataStoreRead: '/Data Store Read6' + * DataStoreRead: '/Data Store Read8' + * DataStoreRead: '/Data Store Read9' + * Gain: '/Gain1' + * Gain: '/Gain2' + * RelationalOperator: '/Relational Operator' + * RelationalOperator: '/Relational Operator1' + * RelationalOperator: '/Relational Operator2' + * Sum: '/Add' + */ + switch ((int32_t)(((uint32_t)((rtDW.FIU_FACE_FL == 1) << 1) + (uint32_t) + (rtDW.FIU_DEF_FL == 1)) + (uint32_t)((rtDW.FIU_FOOT_FL == + 1) << 2))) { + case 0: + rtb_out_oc = 0U; + break; + + case 1: + break; + + case 2: + rtb_out_oc = rtb_out_jn; + break; + + case 3: + rtb_out_oc = rtb_out_pd; + break; + + case 4: + rtb_out_oc = rtb_out_b5; + break; + + case 5: + rtb_out_oc = rtb_out_iir; + break; + + case 6: + rtb_out_oc = rtb_out_e0; + break; + + default: + rtb_out_oc = 0U; + break; + } + + /* End of MultiPortSwitch: '/Multiport Switch' */ + + /* MATLAB Function: '/AF for Vent mode' incorporates: + * DataStoreRead: '/Data Store Read7' + */ + AFforVentmode(rtDW.FIU_BLOWERS_FR, &rtb_out_pd); + + /* MATLAB Function: '/AF for Bi Level' incorporates: + * DataStoreRead: '/Data Store Read7' + */ + AFforBiLevel(rtDW.FIU_BLOWERS_FR, &rtb_out_b5); + + /* MATLAB Function: '/AF for Foot' incorporates: + * DataStoreRead: '/Data Store Read7' + */ + AFforFoot(rtDW.FIU_BLOWERS_FR, &rtb_out_iir); + + /* MATLAB Function: '/AF for Foor + Def' incorporates: + * DataStoreRead: '/Data Store Read7' + */ + AFforFoorDef(rtDW.FIU_BLOWERS_FR, &rtb_out_e0); + + /* MATLAB Function: '/AF for Def' incorporates: + * DataStoreRead: '/Data Store Read7' + */ + AFforDef(rtDW.FIU_BLOWERS_FR, &rtb_out_bko); + + /* MATLAB Function: '/AF for Hi_Level' incorporates: + * DataStoreRead: '/Data Store Read7' + */ + AFforHi_Level(rtDW.FIU_BLOWERS_FR, &rtb_out_h); + + /* MATLAB Function: '/AF for Tri-Level' incorporates: + * DataStoreRead: '/Data Store Read7' + */ + AFforTriLevel(rtDW.FIU_BLOWERS_FR, &rtb_out_jn); + + /* MultiPortSwitch: '/Multiport Switch' incorporates: + * Constant: '/Constant' + * Constant: '/Constant1' + * Constant: '/Constant2' + * Constant: '/Constant3' + * DataStoreRead: '/Data Store Read12' + * DataStoreRead: '/Data Store Read13' + * DataStoreRead: '/Data Store Read14' + * Gain: '/Gain1' + * Gain: '/Gain2' + * RelationalOperator: '/Relational Operator' + * RelationalOperator: '/Relational Operator1' + * RelationalOperator: '/Relational Operator2' + * Sum: '/Add' + */ + switch ((int32_t)(((uint32_t)((rtDW.FIU_FACE_FR == 1) << 1) + (uint32_t) + (rtDW.FIU_DEF_FR == 1)) + (uint32_t)((rtDW.FIU_FOOT_FR == + 1) << 2))) { + case 0: + rtb_out_jn = 0U; + break; + + case 1: + rtb_out_jn = rtb_out_pd; + break; + + case 2: + rtb_out_jn = rtb_out_b5; + break; + + case 3: + rtb_out_jn = rtb_out_iir; + break; + + case 4: + rtb_out_jn = rtb_out_e0; + break; + + case 5: + rtb_out_jn = rtb_out_bko; + break; + + case 6: + rtb_out_jn = rtb_out_h; + break; + } + + /* End of MultiPortSwitch: '/Multiport Switch' */ + + /* DataTypeConversion: '/Data Type Conversion1' incorporates: + * Constant: '/Constant' + * DataStoreWrite: '/Data Store Write' + * Product: '/Divide' + * Sum: '/Add' + */ + rtDW.PWM_front = (uint8_t)((double)(uint16_t)((uint32_t)rtb_out_oc + + rtb_out_jn) / 4.0); + + /* DataTypeConversion: '/Data Type Conversion3' incorporates: + * DataStoreWrite: '/Data Store Write2' + */ + rtDW.Blower_AF_FL = (uint8_t)rtb_out_oc; + + /* DataTypeConversion: '/Data Type Conversion2' incorporates: + * DataStoreWrite: '/Data Store Write3' + */ + rtDW.Blower_AF_FR = (uint8_t)rtb_out_jn; + + /* MATLAB Function: '/AF for Vent mode R' incorporates: + * DataStoreRead: '/Data Store Read18' + */ + AFforVentmodeR(rtDW.FIU_FACE_RL, &rtb_out_jn); + + /* MATLAB Function: '/AF for Bi Level R' incorporates: + * DataStoreRead: '/Data Store Read18' + */ + AFforBiLevelR(rtDW.FIU_FACE_RL, &rtb_out_pd); + + /* MATLAB Function: '/AF for Foot R' incorporates: + * DataStoreRead: '/Data Store Read18' + */ + AFforFootR(rtDW.FIU_FACE_RL, &rtb_out_oc); + + /* MultiPortSwitch: '/Multiport Switch' incorporates: + * Constant: '/Constant1' + * Constant: '/Constant2' + * Constant: '/Constant3' + * DataStoreRead: '/Data Store Read19' + * DataStoreRead: '/Data Store Read20' + * Gain: '/Gain2' + * RelationalOperator: '/Relational Operator1' + * RelationalOperator: '/Relational Operator2' + * Sum: '/Add' + */ + switch ((int32_t)((uint32_t)((rtDW.FIU_BLOWERS_RL == 1) << 1) + (uint32_t) + (rtDW.FIU_FOOT_RL == 1))) { + case 0: + rtb_out_oc = 0U; + break; + + case 1: + rtb_out_oc = rtb_out_jn; + break; + + case 2: + rtb_out_oc = rtb_out_pd; + break; + } + + /* End of MultiPortSwitch: '/Multiport Switch' */ + + /* MATLAB Function: '/AF for Vent mode R' incorporates: + * DataStoreRead: '/Data Store Read15' + */ + AFforVentmodeR(rtDW.FIU_BLOWERS_RR, &rtb_out_pd); + + /* MATLAB Function: '/AF for Bi Level R' incorporates: + * DataStoreRead: '/Data Store Read15' + */ + AFforBiLevelR(rtDW.FIU_BLOWERS_RR, &rtb_out_b5); + + /* MATLAB Function: '/AF for Foot R' incorporates: + * DataStoreRead: '/Data Store Read15' + */ + AFforFootR(rtDW.FIU_BLOWERS_RR, &rtb_out_jn); + + /* MultiPortSwitch: '/Multiport Switch' incorporates: + * Constant: '/Constant1' + * Constant: '/Constant2' + * Constant: '/Constant3' + * DataStoreRead: '/Data Store Read16' + * DataStoreRead: '/Data Store Read17' + * Gain: '/Gain2' + * RelationalOperator: '/Relational Operator1' + * RelationalOperator: '/Relational Operator2' + * Sum: '/Add' + */ + switch ((int32_t)((uint32_t)((rtDW.FIU_FOOT_RR == 1) << 1) + (uint32_t) + (rtDW.FIU_FACE_RR == 1))) { + case 0: + rtb_out_jn = 0U; + break; + + case 1: + rtb_out_jn = rtb_out_pd; + break; + + case 2: + rtb_out_jn = rtb_out_b5; + break; + } + + /* End of MultiPortSwitch: '/Multiport Switch' */ + + /* DataTypeConversion: '/Data Type Conversion' incorporates: + * Constant: '/Constant1' + * DataStoreWrite: '/Data Store Write1' + * Product: '/Divide1' + * Sum: '/Add1' + */ + rtDW.PWM_rear = (uint8_t)((double)(uint16_t)((uint32_t)rtb_out_oc + + rtb_out_jn) / 4.0); + + /* DataTypeConversion: '/Data Type Conversion4' incorporates: + * DataStoreWrite: '/Data Store Write4' + */ + rtDW.Blower_AF_RL = (uint8_t)rtb_out_oc; + + /* DataTypeConversion: '/Data Type Conversion5' incorporates: + * DataStoreWrite: '/Data Store Write5' + */ + rtDW.Blower_AF_RR = (uint8_t)rtb_out_jn; + + /* MATLAB Function: '/Write' incorporates: + * DataStoreWrite: '/Data Store Write' + */ + /* : fprintf('pwmFront_output = %u \n',data); */ + printf("pwmFront_output = %u \n", rtDW.PWM_front); + fflush(stdout); + + /* MATLAB Function: '/Write2' incorporates: + * DataStoreRead: '/Data Store Read11' + */ + /* : fprintf('speedL_input = %u \n',data); */ + printf("speedL_input = %u \n", rtDW.FIU_BLOWERS_FL); + fflush(stdout); + + /* MATLAB Function: '/AF for Tri-Level' incorporates: + * DataStoreRead: '/Data Store Read11' + */ + AFforTriLevel(rtDW.FIU_BLOWERS_FL, &rtb_out_oc); + + /* MATLAB Function: '/Write1' incorporates: + * DataStoreWrite: '/Data Store Write1' + */ + /* : fprintf('pwmRear_output = %u \n',data); */ + printf("pwmRear_output = %u \n", rtDW.PWM_rear); + fflush(stdout); + } + + /* End of Logic: '/Logical Operator1' */ + /* End of Outputs for SubSystem: '/PWM and valves in manual1' */ /* If: '/если SC front не завершен' incorporates: * DataStoreRead: '/Data Store Read' @@ -12795,1859 +13693,1859 @@ void HVAC_model_step(void) if ((rtDW.start_control_finished_front == 0) && (rtDW.SKIPPED_FIRST_SIMULATION_STEP == 0.0)) { /* Outputs for IfAction SubSystem: '/If Action Subsystem' incorporates: - * ActionPort: '/Action Port' + * ActionPort: '/Action Port' */ - /* DataStoreWrite: '/Data Store Write' incorporates: - * Constant: '/Constant' + /* DataStoreWrite: '/Data Store Write' incorporates: + * Constant: '/Constant' */ rtDW.SKIPPED_FIRST_SIMULATION_STEP = 1.0; /* End of Outputs for SubSystem: '/If Action Subsystem' */ } else if (rtDW.start_control_finished_front == 0) { /* Outputs for IfAction SubSystem: '/Start Control Front' incorporates: - * ActionPort: '/Action Port' + * ActionPort: '/Action Port' */ - /* SwitchCase: '/Switch Case' incorporates: - * DataStoreRead: '/Data Store Read' + /* SwitchCase: '/Switch Case' incorporates: + * DataStoreRead: '/Data Store Read' */ switch (rtDW.step_start_controle_front) { case -1: - /* Outputs for IfAction SubSystem: '/Step -1 F (Entry Condition)' incorporates: - * ActionPort: '/Action Port' + /* Outputs for IfAction SubSystem: '/Step -1 F (Entry Condition)' incorporates: + * ActionPort: '/Action Port' */ - /* SwitchCase: '/Switch Case' incorporates: + /* SwitchCase: '/Switch Case' incorporates: * DataStoreWrite: '/Data Store Write' */ switch (rtB.Merge_b) { case 0: - /* Outputs for IfAction SubSystem: '/Level 0' incorporates: - * ActionPort: '/Action Port' + /* Outputs for IfAction SubSystem: '/Level 0' incorporates: + * ActionPort: '/Action Port' */ - /* MATLAB Function: '/g_assSTART_ENTER_INCAR' */ + /* MATLAB Function: '/g_assSTART_ENTER_INCAR' */ g_assSTART_ENTER_INCAR_j(rtB.Merge_b, &Eva_F); - /* MATLAB Function: '/g_ausSTART_ENTER_SETTEMP' */ + /* MATLAB Function: '/g_ausSTART_ENTER_SETTEMP' */ /* : out = g_ausSTART_ENTER_SETTEMP(LVL+1); */ - q0 = (int32_t)(rtB.Merge_b + 1U); + y = (int32_t)(rtB.Merge_b + 1U); if (rtB.Merge_b + 1U > 255U) { - q0 = 255; + y = 255; } - /* Switch: '/Switch' incorporates: - * Constant: '/AUTO' - * DataStoreRead: '/Data Store Read' - * DataStoreRead: '/Data Store Read1' - * DataStoreRead: '/Data Store Read2' - * Logic: '/AND' - * MATLAB Function: '/g_ausSTART_ENTER_SETTEMP' - * RelationalOperator: '/Relational Operator' - * RelationalOperator: '/Relational Operator1' - * RelationalOperator: '/Relational Operator2' + /* Switch: '/Switch' incorporates: + * Constant: '/AUTO' + * DataStoreRead: '/Data Store Read' + * DataStoreRead: '/Data Store Read1' + * DataStoreRead: '/Data Store Read2' + * Logic: '/AND' + * MATLAB Function: '/g_ausSTART_ENTER_SETTEMP' + * RelationalOperator: '/Relational Operator' + * RelationalOperator: '/Relational Operator1' + * RelationalOperator: '/Relational Operator2' */ if ((Incar_FL > Eva_F) && (rtDW.MODE_DRIVER == 1.0) && (rtDW.FIU_SET_FL < - g_ausSTART_ENTER_SETTEMP[q0 - 1])) { - /* Merge: '/Merge' incorporates: - * Constant: '/Constant1' + g_ausSTART_ENTER_SETTEMP[y - 1])) { + /* Merge: '/Merge' incorporates: + * Constant: '/Constant1' */ rtB.Merge_ho = 0; } else { - /* Merge: '/Merge' incorporates: - * Constant: '/Constant' + /* Merge: '/Merge' incorporates: + * Constant: '/Constant' */ rtB.Merge_ho = -1; } - /* End of Switch: '/Switch' */ - /* End of Outputs for SubSystem: '/Level 0' */ + /* End of Switch: '/Switch' */ + /* End of Outputs for SubSystem: '/Level 0' */ break; case 1: - /* Outputs for IfAction SubSystem: '/Level 1' incorporates: - * ActionPort: '/Action Port' + /* Outputs for IfAction SubSystem: '/Level 1' incorporates: + * ActionPort: '/Action Port' */ - /* MATLAB Function: '/g_assSTART_ENTER_INCAR' */ + /* MATLAB Function: '/g_assSTART_ENTER_INCAR' */ g_assSTART_ENTER_INCAR_j(rtB.Merge_b, &Eva_F); - /* MATLAB Function: '/g_ausSTART_ENTER_SETTEMP' */ + /* MATLAB Function: '/g_ausSTART_ENTER_SETTEMP' */ /* : out = int16(g_ausSTART_ENTER_SETTEMP(LVL+1)); */ - q0 = (int32_t)(rtB.Merge_b + 1U); + y = (int32_t)(rtB.Merge_b + 1U); if (rtB.Merge_b + 1U > 255U) { - q0 = 255; + y = 255; } - rtb_out_ee = g_ausSTART_ENTER_SETTEMP[q0 - 1]; - if (rtb_out_ee > 32767) { - rtb_out_ee = 32767U; + rtb_out_oc = g_ausSTART_ENTER_SETTEMP[y - 1]; + if (rtb_out_oc > 32767) { + rtb_out_oc = 32767U; } - /* Switch: '/Switch' incorporates: - * Constant: '/AUTO' - * DataStoreRead: '/Data Store Read' - * DataStoreRead: '/Data Store Read1' - * DataStoreRead: '/Data Store Read2' - * Logic: '/AND' - * MATLAB Function: '/g_ausSTART_ENTER_SETTEMP' - * RelationalOperator: '/Relational Operator' - * RelationalOperator: '/Relational Operator1' - * RelationalOperator: '/Relational Operator2' + /* Switch: '/Switch' incorporates: + * Constant: '/AUTO' + * DataStoreRead: '/Data Store Read' + * DataStoreRead: '/Data Store Read1' + * DataStoreRead: '/Data Store Read2' + * Logic: '/AND' + * MATLAB Function: '/g_ausSTART_ENTER_SETTEMP' + * RelationalOperator: '/Relational Operator' + * RelationalOperator: '/Relational Operator1' + * RelationalOperator: '/Relational Operator2' */ if ((Incar_FL > Eva_F) && (rtDW.MODE_DRIVER == 1.0) && (rtDW.FIU_SET_FL < - rtb_out_ee)) { - /* Merge: '/Merge' incorporates: - * Constant: '/Constant1' + rtb_out_oc)) { + /* Merge: '/Merge' incorporates: + * Constant: '/Constant1' */ rtB.Merge_ho = 0; } else { - /* Merge: '/Merge' incorporates: - * Constant: '/Constant' + /* Merge: '/Merge' incorporates: + * Constant: '/Constant' */ rtB.Merge_ho = -1; } - /* End of Switch: '/Switch' */ - /* End of Outputs for SubSystem: '/Level 1' */ + /* End of Switch: '/Switch' */ + /* End of Outputs for SubSystem: '/Level 1' */ break; case 2: - /* Outputs for IfAction SubSystem: '/Level 2' incorporates: - * ActionPort: '/Action Port' + /* Outputs for IfAction SubSystem: '/Level 2' incorporates: + * ActionPort: '/Action Port' */ - /* Merge: '/Merge' incorporates: - * Constant: '/Constant' - * SignalConversion generated from: '/step' + /* Merge: '/Merge' incorporates: + * Constant: '/Constant' + * SignalConversion generated from: '/step' */ rtB.Merge_ho = 0; - /* End of Outputs for SubSystem: '/Level 2' */ + /* End of Outputs for SubSystem: '/Level 2' */ break; case 3: - /* Outputs for IfAction SubSystem: '/Level 3' incorporates: - * ActionPort: '/Action Port' + /* Outputs for IfAction SubSystem: '/Level 3' incorporates: + * ActionPort: '/Action Port' */ - /* MATLAB Function: '/g_assSTART_ENTER_COOLANT ' */ + /* MATLAB Function: '/g_assSTART_ENTER_COOLANT ' */ g_assSTART_ENTER_COOLANT_p(rtB.Merge_b, &Incar_FL); - /* Switch: '/Switch' incorporates: - * Constant: '/AUTO' - * DataStoreRead: '/Data Store Read' - * DataStoreRead: '/Data Store Read1' - * Logic: '/AND' - * RelationalOperator: '/Relational Operator' - * RelationalOperator: '/Relational Operator2' + /* Switch: '/Switch' incorporates: + * Constant: '/AUTO' + * DataStoreRead: '/Data Store Read' + * DataStoreRead: '/Data Store Read1' + * Logic: '/AND' + * RelationalOperator: '/Relational Operator' + * RelationalOperator: '/Relational Operator2' */ if ((rtDW.ECT < Incar_FL) && (rtDW.MODE_DRIVER == 1.0)) { - /* Merge: '/Merge' incorporates: - * Constant: '/Constant1' + /* Merge: '/Merge' incorporates: + * Constant: '/Constant1' */ rtB.Merge_ho = 0; } else { - /* Merge: '/Merge' incorporates: - * Constant: '/Constant' + /* Merge: '/Merge' incorporates: + * Constant: '/Constant' */ rtB.Merge_ho = -1; } - /* End of Switch: '/Switch' */ - /* End of Outputs for SubSystem: '/Level 3' */ + /* End of Switch: '/Switch' */ + /* End of Outputs for SubSystem: '/Level 3' */ break; case 4: - /* Outputs for IfAction SubSystem: '/Level 4' incorporates: - * ActionPort: '/Action Port' + /* Outputs for IfAction SubSystem: '/Level 4' incorporates: + * ActionPort: '/Action Port' */ Level4(&rtB.Merge_ho, &rtDW.ECT, &rtB.Merge_b, &rtDW.MODE_DRIVER); - /* End of Outputs for SubSystem: '/Level 4' */ + /* End of Outputs for SubSystem: '/Level 4' */ break; case 5: - /* Outputs for IfAction SubSystem: '/Level 5' incorporates: - * ActionPort: '/Action Port' + /* Outputs for IfAction SubSystem: '/Level 5' incorporates: + * ActionPort: '/Action Port' */ Level4(&rtB.Merge_ho, &rtDW.ECT, &rtB.Merge_b, &rtDW.MODE_DRIVER); - /* End of Outputs for SubSystem: '/Level 5' */ + /* End of Outputs for SubSystem: '/Level 5' */ break; } - /* End of SwitchCase: '/Switch Case' */ - /* End of Outputs for SubSystem: '/Step -1 F (Entry Condition)' */ + /* End of SwitchCase: '/Switch Case' */ + /* End of Outputs for SubSystem: '/Step -1 F (Entry Condition)' */ break; case 0: - /* Outputs for IfAction SubSystem: '/Step 0 F' incorporates: - * ActionPort: '/Action Port' + /* Outputs for IfAction SubSystem: '/Step 0 F' incorporates: + * ActionPort: '/Action Port' */ - /* SwitchCase: '/Switch Case' incorporates: + /* SwitchCase: '/Switch Case' incorporates: * DataStoreWrite: '/Data Store Write' */ switch (rtB.Merge_b) { case 0: - /* Outputs for IfAction SubSystem: '/Level 0' incorporates: - * ActionPort: '/Action Port' + /* Outputs for IfAction SubSystem: '/Level 0' incorporates: + * ActionPort: '/Action Port' */ Level0(&rtB.Merge_ho); - /* End of Outputs for SubSystem: '/Level 0' */ + /* End of Outputs for SubSystem: '/Level 0' */ break; case 1: - /* Outputs for IfAction SubSystem: '/Level 1' incorporates: - * ActionPort: '/Action Port' + /* Outputs for IfAction SubSystem: '/Level 1' incorporates: + * ActionPort: '/Action Port' */ Level0(&rtB.Merge_ho); - /* End of Outputs for SubSystem: '/Level 1' */ + /* End of Outputs for SubSystem: '/Level 1' */ break; case 2: - /* Outputs for IfAction SubSystem: '/Level 2' incorporates: - * ActionPort: '/Action Port' + /* Outputs for IfAction SubSystem: '/Level 2' incorporates: + * ActionPort: '/Action Port' */ Level0(&rtB.Merge_ho); - /* End of Outputs for SubSystem: '/Level 2' */ + /* End of Outputs for SubSystem: '/Level 2' */ break; case 3: - /* Outputs for IfAction SubSystem: '/Level 3' incorporates: - * ActionPort: '/Action Port' + /* Outputs for IfAction SubSystem: '/Level 3' incorporates: + * ActionPort: '/Action Port' */ - /* DataStoreWrite: '/Data Store Write6' incorporates: - * Constant: '/Constant3' + /* DataStoreWrite: '/Data Store Write6' incorporates: + * Constant: '/Constant3' */ rtDW.Blower_FL = 20U; - /* DataStoreWrite: '/Data Store Write11' incorporates: - * Constant: '/Constant5' + /* DataStoreWrite: '/Data Store Write11' incorporates: + * Constant: '/Constant5' */ rtDW.Dtg_FUL = 60U; - /* DataStoreWrite: '/Data Store Write13' incorporates: - * Constant: '/Constant7' + /* DataStoreWrite: '/Data Store Write13' incorporates: + * Constant: '/Constant7' */ rtDW.Dtg_FLL = 80U; - /* DataStoreWrite: '/Data Store Write' incorporates: - * MATLAB Function: '/incar filter up' + /* DataStoreWrite: '/Data Store Write' incorporates: + * MATLAB Function: '/incar filter up' */ incarfilterup(rtB.Merge_b, &rtb_Gain_ge); - /* DataStoreWrite: '/Data Store Write1' incorporates: - * MATLAB Function: '/incar filter down' + /* DataStoreWrite: '/Data Store Write1' incorporates: + * MATLAB Function: '/incar filter down' */ - incarfilterdown(rtB.Merge_b, &rtb_Gain2_c); + incarfilterdown(rtB.Merge_b, &rtb_Gain2_hu); - /* DataStoreWrite: '/Data Store Write3' incorporates: - * Constant: '/Mode - def' + /* DataStoreWrite: '/Data Store Write3' incorporates: + * Constant: '/Mode - def' */ rtDW.Mode_FL = 80U; - /* DataStoreWrite: '/Data Store Write7' incorporates: - * Constant: '/Recirc logic Partial REC' + /* DataStoreWrite: '/Data Store Write7' incorporates: + * Constant: '/Recirc logic Partial REC' */ rtb_Divide1 = 1.0; - /* DataStoreWrite: '/Data Store Write8' incorporates: - * Constant: '/Valve open' + /* DataStoreWrite: '/Data Store Write8' incorporates: + * Constant: '/Valve open' */ rtb_u_cuz = 1U; - /* DataStoreWrite: '/Data Store Write9' incorporates: - * Constant: '/Valve open' + /* DataStoreWrite: '/Data Store Write9' incorporates: + * Constant: '/Valve open' */ Valve_2_way = 1U; - /* MATLAB Function: '/g_assSTART_COOLANT_STEP0_TO_1 ' */ + /* MATLAB Function: '/g_assSTART_COOLANT_STEP0_TO_1 ' */ /* : out = int16(g_assSTART_COOLANT_STEP0_TO_1(LVL + 1 - 2)); */ - q0 = (int32_t)(rtB.Merge_b + 1U); + y = (int32_t)(rtB.Merge_b + 1U); if (rtB.Merge_b + 1U > 255U) { - q0 = 255; + y = 255; } - rtb_dt_fa = (uint32_t)q0 - 2U; - if ((uint32_t)q0 - 2U > (uint32_t)q0) { + rtb_dt_fa = (uint32_t)y - 2U; + if ((uint32_t)y - 2U > (uint32_t)y) { rtb_dt_fa = 0U; } - /* Merge: '/Merge' incorporates: - * DataStoreRead: '/Engine coolant temp' - * MATLAB Function: '/g_assSTART_COOLANT_STEP0_TO_1 ' - * RelationalOperator: '/Relational Operator' - * Switch: '/Switch' + /* Merge: '/Merge' incorporates: + * DataStoreRead: '/Engine coolant temp' + * MATLAB Function: '/g_assSTART_COOLANT_STEP0_TO_1 ' + * RelationalOperator: '/Relational Operator' + * Switch: '/Switch' */ rtB.Merge_ho = (int8_t)(rtDW.ECT > g_assSTART_COOLANT_STEP0_TO_1 [(int32_t)rtb_dt_fa - 1]); - /* End of Outputs for SubSystem: '/Level 3' */ + /* End of Outputs for SubSystem: '/Level 3' */ break; case 4: - /* Outputs for IfAction SubSystem: '/Level 4' incorporates: - * ActionPort: '/Action Port' + /* Outputs for IfAction SubSystem: '/Level 4' incorporates: + * ActionPort: '/Action Port' */ - /* DataStoreWrite: '/Data Store Write6' incorporates: - * Constant: '/Constant3' + /* DataStoreWrite: '/Data Store Write6' incorporates: + * Constant: '/Constant3' */ rtDW.Blower_FL = 20U; - /* DataStoreWrite: '/Data Store Write11' incorporates: - * Constant: '/Constant5' + /* DataStoreWrite: '/Data Store Write11' incorporates: + * Constant: '/Constant5' */ rtDW.Dtg_FUL = 60U; - /* DataStoreWrite: '/Data Store Write13' incorporates: - * Constant: '/Constant7' + /* DataStoreWrite: '/Data Store Write13' incorporates: + * Constant: '/Constant7' */ rtDW.Dtg_FLL = 80U; - /* DataStoreWrite: '/Data Store Write' incorporates: - * MATLAB Function: '/incar filter up' + /* DataStoreWrite: '/Data Store Write' incorporates: + * MATLAB Function: '/incar filter up' */ incarfilterup(rtB.Merge_b, &rtb_Gain_ge); - /* DataStoreWrite: '/Data Store Write1' incorporates: - * MATLAB Function: '/incar filter down' + /* DataStoreWrite: '/Data Store Write1' incorporates: + * MATLAB Function: '/incar filter down' */ - incarfilterdown(rtB.Merge_b, &rtb_Gain2_c); + incarfilterdown(rtB.Merge_b, &rtb_Gain2_hu); - /* DataStoreWrite: '/Data Store Write3' incorporates: - * Constant: '/Mode - def' + /* DataStoreWrite: '/Data Store Write3' incorporates: + * Constant: '/Mode - def' */ rtDW.Mode_FL = 80U; - /* DataStoreWrite: '/Data Store Write7' incorporates: - * Constant: '/Recirc logic Partial REC' + /* DataStoreWrite: '/Data Store Write7' incorporates: + * Constant: '/Recirc logic Partial REC' */ rtb_Divide1 = 1.0; - /* DataStoreWrite: '/Data Store Write8' incorporates: - * Constant: '/Valve open' + /* DataStoreWrite: '/Data Store Write8' incorporates: + * Constant: '/Valve open' */ rtb_u_cuz = 1U; - /* DataStoreWrite: '/Data Store Write9' incorporates: - * Constant: '/Valve open' + /* DataStoreWrite: '/Data Store Write9' incorporates: + * Constant: '/Valve open' */ Valve_2_way = 1U; - /* MATLAB Function: '/g_assSTART_COOLANT_STEP0_TO_1 ' */ + /* MATLAB Function: '/g_assSTART_COOLANT_STEP0_TO_1 ' */ g_assSTART_COOLANT_STEP0_TO_1_h(rtB.Merge_b, &Incar_FL); - /* Merge: '/Merge' incorporates: - * DataStoreRead: '/Engine coolant temp' - * RelationalOperator: '/Relational Operator' - * Switch: '/Switch' + /* Merge: '/Merge' incorporates: + * DataStoreRead: '/Engine coolant temp' + * RelationalOperator: '/Relational Operator' + * Switch: '/Switch' */ rtB.Merge_ho = (int8_t)(rtDW.ECT > Incar_FL); - /* End of Outputs for SubSystem: '/Level 4' */ + /* End of Outputs for SubSystem: '/Level 4' */ break; case 5: - /* Outputs for IfAction SubSystem: '/Level 5' incorporates: - * ActionPort: '/Action Port' + /* Outputs for IfAction SubSystem: '/Level 5' incorporates: + * ActionPort: '/Action Port' */ - /* DataStoreWrite: '/Data Store Write6' incorporates: - * Constant: '/Constant3' + /* DataStoreWrite: '/Data Store Write6' incorporates: + * Constant: '/Constant3' */ rtDW.Blower_FL = 20U; - /* DataStoreWrite: '/Data Store Write11' incorporates: - * Constant: '/Constant5' + /* DataStoreWrite: '/Data Store Write11' incorporates: + * Constant: '/Constant5' */ rtDW.Dtg_FUL = 80U; - /* DataStoreWrite: '/Data Store Write13' incorporates: - * Constant: '/Constant7' + /* DataStoreWrite: '/Data Store Write13' incorporates: + * Constant: '/Constant7' */ rtDW.Dtg_FLL = 80U; - /* DataStoreWrite: '/Data Store Write' incorporates: - * MATLAB Function: '/incar filter up' + /* DataStoreWrite: '/Data Store Write' incorporates: + * MATLAB Function: '/incar filter up' */ incarfilterup(rtB.Merge_b, &rtb_Gain_ge); - /* DataStoreWrite: '/Data Store Write1' incorporates: - * MATLAB Function: '/incar filter down' + /* DataStoreWrite: '/Data Store Write1' incorporates: + * MATLAB Function: '/incar filter down' */ - incarfilterdown(rtB.Merge_b, &rtb_Gain2_c); + incarfilterdown(rtB.Merge_b, &rtb_Gain2_hu); - /* DataStoreWrite: '/Data Store Write3' incorporates: - * Constant: '/Mode - def' + /* DataStoreWrite: '/Data Store Write3' incorporates: + * Constant: '/Mode - def' */ rtDW.Mode_FL = 80U; - /* DataStoreWrite: '/Data Store Write7' incorporates: - * Constant: '/Recirc logic Partial REC' + /* DataStoreWrite: '/Data Store Write7' incorporates: + * Constant: '/Recirc logic Partial REC' */ rtb_Divide1 = 1.0; - /* DataStoreWrite: '/Data Store Write8' incorporates: - * Constant: '/Valve open' + /* DataStoreWrite: '/Data Store Write8' incorporates: + * Constant: '/Valve open' */ rtb_u_cuz = 1U; - /* DataStoreWrite: '/Data Store Write9' incorporates: - * Constant: '/Valve open' + /* DataStoreWrite: '/Data Store Write9' incorporates: + * Constant: '/Valve open' */ Valve_2_way = 1U; - /* MATLAB Function: '/g_assSTART_COOLANT_STEP0_TO_1 ' */ + /* MATLAB Function: '/g_assSTART_COOLANT_STEP0_TO_1 ' */ g_assSTART_COOLANT_STEP0_TO_1_h(rtB.Merge_b, &Incar_FL); - /* Merge: '/Merge' incorporates: - * DataStoreRead: '/Engine coolant temp' - * RelationalOperator: '/Relational Operator' - * Switch: '/Switch' + /* Merge: '/Merge' incorporates: + * DataStoreRead: '/Engine coolant temp' + * RelationalOperator: '/Relational Operator' + * Switch: '/Switch' */ rtB.Merge_ho = (int8_t)(rtDW.ECT > Incar_FL); - /* End of Outputs for SubSystem: '/Level 5' */ + /* End of Outputs for SubSystem: '/Level 5' */ break; } - /* End of SwitchCase: '/Switch Case' */ - /* End of Outputs for SubSystem: '/Step 0 F' */ + /* End of SwitchCase: '/Switch Case' */ + /* End of Outputs for SubSystem: '/Step 0 F' */ break; case 1: - /* Outputs for IfAction SubSystem: '/Step 1 F' incorporates: - * ActionPort: '/Action Port' + /* Outputs for IfAction SubSystem: '/Step 1 F' incorporates: + * ActionPort: '/Action Port' */ - /* SwitchCase: '/Switch Case' incorporates: + /* SwitchCase: '/Switch Case' incorporates: * DataStoreWrite: '/Data Store Write' */ switch (rtB.Merge_b) { case 0: - /* Outputs for IfAction SubSystem: '/Level 0' incorporates: - * ActionPort: '/Action Port' + /* Outputs for IfAction SubSystem: '/Level 0' incorporates: + * ActionPort: '/Action Port' */ - /* DataStoreWrite: '/Data Store Write8' incorporates: - * MATLAB Function: '/3 way valve status' + /* DataStoreWrite: '/Data Store Write8' incorporates: + * MATLAB Function: '/3 way valve status' */ uwayvalvestatus(rtB.Merge_b, &rtb_u_cuz); - /* DataStoreWrite: '/Data Store Write' incorporates: - * MATLAB Function: '/incar filter up' + /* DataStoreWrite: '/Data Store Write' incorporates: + * MATLAB Function: '/incar filter up' */ incarfilterup(rtB.Merge_b, &rtb_Gain_ge); - /* DataStoreWrite: '/Data Store Write1' incorporates: - * MATLAB Function: '/incar filter down' + /* DataStoreWrite: '/Data Store Write1' incorporates: + * MATLAB Function: '/incar filter down' */ - incarfilterdown(rtB.Merge_b, &rtb_Gain2_c); + incarfilterdown(rtB.Merge_b, &rtb_Gain2_hu); - /* DataStoreWrite: '/Data Store Write3' incorporates: - * MATLAB Function: '/mode FR step 1' + /* DataStoreWrite: '/Data Store Write3' incorporates: + * MATLAB Function: '/mode FR step 1' */ modeFRstep1(rtB.Merge_b, &rtDW.Mode_FL); - /* DataStoreWrite: '/Data Store Write11' incorporates: - * MATLAB Function: '/window heating' + /* DataStoreWrite: '/Data Store Write11' incorporates: + * MATLAB Function: '/window heating' */ windowheating(rtB.Merge_b, &rtDW.Dtg_FUL); - /* DataStoreWrite: '/Data Store Write6' incorporates: - * MATLAB Function: '/blower FR' + /* DataStoreWrite: '/Data Store Write6' incorporates: + * MATLAB Function: '/blower FR' */ blowerFR(rtB.Merge_b, &rtDW.Blower_FL); - /* DataStoreWrite: '/Data Store Write11' incorporates: - * MATLAB Function: '/Dtg_FrontUpper_X' + /* DataStoreWrite: '/Data Store Write11' incorporates: + * MATLAB Function: '/Dtg_FrontUpper_X' */ Dtg_FrontUpper_X(rtB.Merge_b, &rtDW.Dtg_FUL); - /* DataStoreWrite: '/Data Store Write13' incorporates: - * MATLAB Function: '/Dtg_FrontLower_X' + /* DataStoreWrite: '/Data Store Write13' incorporates: + * MATLAB Function: '/Dtg_FrontLower_X' */ Dtg_FrontLower_X(rtB.Merge_b, &rtDW.Dtg_FLL); - /* DataStoreWrite: '/Data Store Write7' incorporates: - * Constant: '/Recirc logic Partial REC' + /* DataStoreWrite: '/Data Store Write7' incorporates: + * Constant: '/Recirc logic Partial REC' */ rtb_Divide1 = 1.0; - /* RelationalOperator: '/Equal' incorporates: - * DataStoreRead: '/current step' + /* RelationalOperator: '/Equal' incorporates: + * DataStoreRead: '/current step' */ rtb_LogicalOperator1 = (rtDW.step_start_controle_front == 1); - /* MATLAB Function: '/Incar temp goto from step 1 to step 2 ' */ + /* MATLAB Function: '/Incar temp goto from step 1 to step 2 ' */ Incartempgotofromstep1tostep2(rtB.Merge_b, &Eva_F); - /* MATLAB Function: '/Time goto from step 1 to step 2 ' */ + /* MATLAB Function: '/Time goto from step 1 to step 2 ' */ /* : out = int16(g_ausSTART_TIME_STEP1_TO_2(LVL + 1)); */ - q0 = (int32_t)(rtB.Merge_b + 1U); + y = (int32_t)(rtB.Merge_b + 1U); if (rtB.Merge_b + 1U > 255U) { - q0 = 255; + y = 255; } - rtb_out_ee = g_ausSTART_TIME_STEP1_TO_2[q0 - 1]; - if (rtb_out_ee > 32767) { - rtb_out_ee = 32767U; + rtb_out_oc = g_ausSTART_TIME_STEP1_TO_2[y - 1]; + if (rtb_out_oc > 32767) { + rtb_out_oc = 32767U; } - /* Switch: '/Switch' incorporates: - * DataStoreRead: '/incar temp' - * DataStoreRead: '/Data Store Read4' - * Gain: '/из сек в мс' - * Logic: '/Logical Operator' - * MATLAB Function: '/Time goto from step 1 to step 2 ' - * RelationalOperator: '/Relational Operator' - * RelationalOperator: '/Relational Operator1' - * Sum: '/Subtract' - * UnitDelay: '/t_start_delay_private ' + /* Switch: '/Switch' incorporates: + * DataStoreRead: '/incar temp' + * DataStoreRead: '/Data Store Read4' + * Gain: '/из сек в мс' + * Logic: '/Logical Operator' + * MATLAB Function: '/Time goto from step 1 to step 2 ' + * RelationalOperator: '/Relational Operator' + * RelationalOperator: '/Relational Operator1' + * Sum: '/Subtract' + * UnitDelay: '/t_start_delay_private ' */ if ((Incar_FL < Eva_F) || (rtDW.t_now - - rtDW.t_start_delay_private_DSTATE_pd > (uint16_t)(1000 * rtb_out_ee))) + rtDW.t_start_delay_private_DSTATE_pd > (uint16_t)(1000 * rtb_out_oc))) { - /* Merge: '/Merge' incorporates: - * Constant: '/go to next step' - * SignalConversion generated from: '/step' + /* Merge: '/Merge' incorporates: + * Constant: '/go to next step' + * SignalConversion generated from: '/step' */ rtB.Merge_ho = 2; } else { - /* Merge: '/Merge' incorporates: - * Constant: '/stay at step 1' - * SignalConversion generated from: '/step' + /* Merge: '/Merge' incorporates: + * Constant: '/stay at step 1' + * SignalConversion generated from: '/step' */ rtB.Merge_ho = 1; } - /* End of Switch: '/Switch' */ + /* End of Switch: '/Switch' */ - /* Switch: '/Switch' incorporates: - * DataStoreRead: '/Data Store Read4' - * Logic: '/Logical Operator3' - * Logic: '/Logical Operator4' - * UnitDelay: '/Cond_prev_private ' - * UnitDelay: '/t_start_delay_private ' + /* Switch: '/Switch' incorporates: + * DataStoreRead: '/Data Store Read4' + * Logic: '/Logical Operator3' + * Logic: '/Logical Operator4' + * UnitDelay: '/Cond_prev_private ' + * UnitDelay: '/t_start_delay_private ' */ if (rtb_LogicalOperator1 && (!rtDW.Cond_prev_private_DSTATE_gx)) { rtDW.t_start_delay_private_DSTATE_pd = rtDW.t_now; } - /* End of Switch: '/Switch' */ + /* End of Switch: '/Switch' */ - /* Update for UnitDelay: '/Cond_prev_private ' */ + /* Update for UnitDelay: '/Cond_prev_private ' */ rtDW.Cond_prev_private_DSTATE_gx = rtb_LogicalOperator1; - /* End of Outputs for SubSystem: '/Level 0' */ + /* End of Outputs for SubSystem: '/Level 0' */ break; case 1: - /* Outputs for IfAction SubSystem: '/Level 1' incorporates: - * ActionPort: '/Action Port' + /* Outputs for IfAction SubSystem: '/Level 1' incorporates: + * ActionPort: '/Action Port' */ - /* DataStoreWrite: '/Data Store Write8' incorporates: - * MATLAB Function: '/3 way valve status' + /* DataStoreWrite: '/Data Store Write8' incorporates: + * MATLAB Function: '/3 way valve status' */ uwayvalvestatus(rtB.Merge_b, &rtb_u_cuz); - /* DataStoreWrite: '/Data Store Write' incorporates: - * MATLAB Function: '/incar filter up' + /* DataStoreWrite: '/Data Store Write' incorporates: + * MATLAB Function: '/incar filter up' */ incarfilterup(rtB.Merge_b, &rtb_Gain_ge); - /* DataStoreWrite: '/Data Store Write1' incorporates: - * MATLAB Function: '/incar filter down' + /* DataStoreWrite: '/Data Store Write1' incorporates: + * MATLAB Function: '/incar filter down' */ - incarfilterdown(rtB.Merge_b, &rtb_Gain2_c); + incarfilterdown(rtB.Merge_b, &rtb_Gain2_hu); - /* DataStoreWrite: '/Data Store Write3' incorporates: - * MATLAB Function: '/mode FR step 1' + /* DataStoreWrite: '/Data Store Write3' incorporates: + * MATLAB Function: '/mode FR step 1' */ modeFRstep1(rtB.Merge_b, &rtDW.Mode_FL); - /* DataStoreWrite: '/Data Store Write11' incorporates: - * MATLAB Function: '/window heating' + /* DataStoreWrite: '/Data Store Write11' incorporates: + * MATLAB Function: '/window heating' */ windowheating(rtB.Merge_b, &rtDW.Dtg_FUL); - /* DataStoreWrite: '/Data Store Write6' incorporates: - * MATLAB Function: '/blower FR' + /* DataStoreWrite: '/Data Store Write6' incorporates: + * MATLAB Function: '/blower FR' */ blowerFR(rtB.Merge_b, &rtDW.Blower_FL); - /* DataStoreWrite: '/Data Store Write11' incorporates: - * MATLAB Function: '/Dtg_FrontUpper_X' + /* DataStoreWrite: '/Data Store Write11' incorporates: + * MATLAB Function: '/Dtg_FrontUpper_X' */ Dtg_FrontUpper_X(rtB.Merge_b, &rtDW.Dtg_FUL); - /* DataStoreWrite: '/Data Store Write13' incorporates: - * MATLAB Function: '/Dtg_FrontLower_X' + /* DataStoreWrite: '/Data Store Write13' incorporates: + * MATLAB Function: '/Dtg_FrontLower_X' */ Dtg_FrontLower_X(rtB.Merge_b, &rtDW.Dtg_FLL); - /* DataStoreWrite: '/Data Store Write7' incorporates: - * Constant: '/Recirc logic Partial REC' + /* DataStoreWrite: '/Data Store Write7' incorporates: + * Constant: '/Recirc logic Partial REC' */ rtb_Divide1 = 1.0; - /* RelationalOperator: '/Equal' incorporates: - * DataStoreRead: '/current step' + /* RelationalOperator: '/Equal' incorporates: + * DataStoreRead: '/current step' */ rtb_LogicalOperator1 = (rtDW.step_start_controle_front == 1); - /* MATLAB Function: '/Incar temp goto from step 1 to step 2 ' */ + /* MATLAB Function: '/Incar temp goto from step 1 to step 2 ' */ Incartempgotofromstep1tostep2(rtB.Merge_b, &Eva_F); - /* MATLAB Function: '/Time goto from step 1 to step 2 ' */ + /* MATLAB Function: '/Time goto from step 1 to step 2 ' */ Timegotofromstep1tostep2(rtB.Merge_b, &Eva_R); - /* RelationalOperator: '/Relational Operator1' incorporates: - * DataStoreRead: '/Data Store Read4' - * Gain: '/из сек в мс' - * Sum: '/Subtract' - * UnitDelay: '/t_start_delay_private ' + /* RelationalOperator: '/Relational Operator1' incorporates: + * DataStoreRead: '/Data Store Read4' + * Gain: '/из сек в мс' + * Sum: '/Subtract' + * UnitDelay: '/t_start_delay_private ' */ rtb_LogicalOperator1_g = (rtDW.t_now - rtDW.t_start_delay_private_DSTATE_mk > (uint32_t)(1000 * Eva_R)); - /* Switch: '/Switch' incorporates: - * DataStoreRead: '/Data Store Read4' - * Logic: '/Logical Operator3' - * Logic: '/Logical Operator4' - * UnitDelay: '/Cond_prev_private ' - * UnitDelay: '/t_start_delay_private ' + /* Switch: '/Switch' incorporates: + * DataStoreRead: '/Data Store Read4' + * Logic: '/Logical Operator3' + * Logic: '/Logical Operator4' + * UnitDelay: '/Cond_prev_private ' + * UnitDelay: '/t_start_delay_private ' */ if (rtb_LogicalOperator1 && (!rtDW.Cond_prev_private_DSTATE_h)) { rtDW.t_start_delay_private_DSTATE_mk = rtDW.t_now; } - /* End of Switch: '/Switch' */ + /* End of Switch: '/Switch' */ - /* Switch: '/Switch' incorporates: - * DataStoreRead: '/incar temp' - * Logic: '/Logical Operator' - * RelationalOperator: '/Relational Operator' + /* Switch: '/Switch' incorporates: + * DataStoreRead: '/incar temp' + * Logic: '/Logical Operator' + * RelationalOperator: '/Relational Operator' */ if ((Incar_FL < Eva_F) || rtb_LogicalOperator1_g) { - /* Merge: '/Merge' incorporates: - * Constant: '/go to next step' + /* Merge: '/Merge' incorporates: + * Constant: '/go to next step' */ rtB.Merge_ho = 2; } else { - /* Merge: '/Merge' incorporates: - * Constant: '/stay at step 1' + /* Merge: '/Merge' incorporates: + * Constant: '/stay at step 1' */ rtB.Merge_ho = 1; } - /* End of Switch: '/Switch' */ + /* End of Switch: '/Switch' */ - /* Update for UnitDelay: '/Cond_prev_private ' */ + /* Update for UnitDelay: '/Cond_prev_private ' */ rtDW.Cond_prev_private_DSTATE_h = rtb_LogicalOperator1; - /* End of Outputs for SubSystem: '/Level 1' */ + /* End of Outputs for SubSystem: '/Level 1' */ break; case 2: - /* Outputs for IfAction SubSystem: '/Level 2' incorporates: - * ActionPort: '/Action Port' + /* Outputs for IfAction SubSystem: '/Level 2' incorporates: + * ActionPort: '/Action Port' */ - /* Merge: '/Merge' incorporates: - * Constant: '/Constant' - * SignalConversion generated from: '/step' + /* Merge: '/Merge' incorporates: + * Constant: '/Constant' + * SignalConversion generated from: '/step' */ rtB.Merge_ho = 2; - /* End of Outputs for SubSystem: '/Level 2' */ + /* End of Outputs for SubSystem: '/Level 2' */ break; case 3: - /* Outputs for IfAction SubSystem: '/Level 3' incorporates: - * ActionPort: '/Action Port' + /* Outputs for IfAction SubSystem: '/Level 3' incorporates: + * ActionPort: '/Action Port' */ - /* DataStoreWrite: '/Data Store Write8' incorporates: - * MATLAB Function: '/3 way valve status' + /* DataStoreWrite: '/Data Store Write8' incorporates: + * MATLAB Function: '/3 way valve status' */ uwayvalvestatus(rtB.Merge_b, &rtb_u_cuz); - /* DataStoreWrite: '/Data Store Write' incorporates: - * MATLAB Function: '/incar filter up' + /* DataStoreWrite: '/Data Store Write' incorporates: + * MATLAB Function: '/incar filter up' */ incarfilterup(rtB.Merge_b, &rtb_Gain_ge); - /* DataStoreWrite: '/Data Store Write1' incorporates: - * MATLAB Function: '/incar filter down' + /* DataStoreWrite: '/Data Store Write1' incorporates: + * MATLAB Function: '/incar filter down' */ - incarfilterdown(rtB.Merge_b, &rtb_Gain2_c); + incarfilterdown(rtB.Merge_b, &rtb_Gain2_hu); - /* DataStoreWrite: '/Data Store Write3' incorporates: - * MATLAB Function: '/mode FR step 1' + /* DataStoreWrite: '/Data Store Write3' incorporates: + * MATLAB Function: '/mode FR step 1' */ modeFRstep1(rtB.Merge_b, &rtDW.Mode_FL); - /* DataStoreWrite: '/Data Store Write11' incorporates: - * MATLAB Function: '/window heating' + /* DataStoreWrite: '/Data Store Write11' incorporates: + * MATLAB Function: '/window heating' */ windowheating(rtB.Merge_b, &rtDW.Dtg_FUL); - /* MATLAB Function: '/blower min max' */ - blowerminmax(rtB.Merge_b, rtb_out_he); + /* MATLAB Function: '/blower min max' */ + blowerminmax(rtB.Merge_b, rtb_out_jq); - /* MATLAB Function: '/ECT min max' */ - ECTminmax(rtB.Merge_b, rtb_out_hl); + /* MATLAB Function: '/ECT min max' */ + ECTminmax(rtB.Merge_b, rtb_out_j4); - /* DataStoreWrite: '/Data Store Write6' incorporates: - * DataStoreRead: '/engine coolant temp' - * Lookup_n-D: '/blower для текущего ECT' + /* DataStoreWrite: '/Data Store Write6' incorporates: + * DataStoreRead: '/engine coolant temp' + * Lookup_n-D: '/blower для текущего ECT' */ - rtDW.Blower_FL = look1_iu16bs16lu64n32_binlcse(rtDW.ECT, rtb_out_hl, - rtb_out_he, 1U); + rtDW.Blower_FL = look1_iu16bs16lu64n32_binlcse(rtDW.ECT, rtb_out_j4, + rtb_out_jq, 1U); - /* DataStoreWrite: '/Data Store Write11' incorporates: - * MATLAB Function: '/Dtg_FrontUpper_X' + /* DataStoreWrite: '/Data Store Write11' incorporates: + * MATLAB Function: '/Dtg_FrontUpper_X' */ Dtg_FrontUpper_X(rtB.Merge_b, &rtDW.Dtg_FUL); - /* DataStoreWrite: '/Data Store Write13' incorporates: - * MATLAB Function: '/Dtg_FrontLower_X' + /* DataStoreWrite: '/Data Store Write13' incorporates: + * MATLAB Function: '/Dtg_FrontLower_X' */ Dtg_FrontLower_X(rtB.Merge_b, &rtDW.Dtg_FLL); - /* DataStoreWrite: '/Data Store Write7' incorporates: - * Constant: '/Recirc logic Partial REC' + /* DataStoreWrite: '/Data Store Write7' incorporates: + * Constant: '/Recirc logic Partial REC' */ rtb_Divide1 = 1.0; - /* RelationalOperator: '/Equal' incorporates: - * DataStoreRead: '/current step' + /* RelationalOperator: '/Equal' incorporates: + * DataStoreRead: '/current step' */ rtb_LogicalOperator1 = (rtDW.step_start_controle_front == 1); - /* MATLAB Function: '/Incar temp goto from step 1 to step 2 ' */ + /* MATLAB Function: '/Incar temp goto from step 1 to step 2 ' */ Incartempgotofromstep1tostep2(rtB.Merge_b, &Eva_F); - /* Sum: '/Subtract' incorporates: - * DataStoreRead: '/Data Store Read4' - * UnitDelay: '/t_start_delay_private ' + /* Sum: '/Subtract' incorporates: + * DataStoreRead: '/Data Store Read4' + * UnitDelay: '/t_start_delay_private ' */ rtb_dt_ih = rtDW.t_now - rtDW.t_start_delay_private_DSTATE_fm; - /* MATLAB Function: '/Time goto from step 1 to step 2 ' */ + /* MATLAB Function: '/Time goto from step 1 to step 2 ' */ Timegotofromstep1tostep2(rtB.Merge_b, &Eva_R); - /* Switch: '/Switch' incorporates: - * DataStoreRead: '/Data Store Read4' - * Logic: '/Logical Operator3' - * Logic: '/Logical Operator4' - * UnitDelay: '/Cond_prev_private ' - * UnitDelay: '/t_start_delay_private ' + /* Switch: '/Switch' incorporates: + * DataStoreRead: '/Data Store Read4' + * Logic: '/Logical Operator3' + * Logic: '/Logical Operator4' + * UnitDelay: '/Cond_prev_private ' + * UnitDelay: '/t_start_delay_private ' */ /* : out = int16(g_assSTART_COOLANT_TO_STEP2(LVL + 1 - 3)); */ if (rtb_LogicalOperator1 && (!rtDW.Cond_prev_private_DSTATE_f)) { rtDW.t_start_delay_private_DSTATE_fm = rtDW.t_now; } - /* End of Switch: '/Switch' */ + /* End of Switch: '/Switch' */ - /* MATLAB Function: '/g_assSTART_COOLANT_TO_STEP2 ' */ - q0 = (int32_t)(rtB.Merge_b + 1U); + /* MATLAB Function: '/g_assSTART_COOLANT_TO_STEP2 ' */ + y = (int32_t)(rtB.Merge_b + 1U); if (rtB.Merge_b + 1U > 255U) { - q0 = 255; + y = 255; } /* MW:begin MISRA2012:D4.1 CERT-C:INT30-C 'Justifying MISRA CPP rule violation' */ - rtb_dt_fa = (uint32_t)q0 - 3U; + rtb_dt_fa = (uint32_t)y - 3U; /* MW:end MISRA2012:D4.1 CERT-C:INT30-C */ - if ((uint32_t)q0 - 3U > (uint32_t)q0) { + if ((uint32_t)y - 3U > (uint32_t)y) { rtb_dt_fa = 0U; } - /* Switch: '/Switch' incorporates: - * DataStoreRead: '/engine coolant temp' - * DataStoreRead: '/incar temp' - * Gain: '/из сек в мс' - * Logic: '/Logical Operator' - * MATLAB Function: '/g_assSTART_COOLANT_TO_STEP2 ' - * RelationalOperator: '/Relational Operator' - * RelationalOperator: '/Relational Operator1' - * RelationalOperator: '/Relational Operator2' + /* Switch: '/Switch' incorporates: + * DataStoreRead: '/engine coolant temp' + * DataStoreRead: '/incar temp' + * Gain: '/из сек в мс' + * Logic: '/Logical Operator' + * MATLAB Function: '/g_assSTART_COOLANT_TO_STEP2 ' + * RelationalOperator: '/Relational Operator' + * RelationalOperator: '/Relational Operator1' + * RelationalOperator: '/Relational Operator2' */ if ((Incar_FL < Eva_F) || (rtb_dt_ih > (uint32_t)(1000 * Eva_R)) || (rtDW.ECT > g_assSTART_COOLANT_TO_STEP2[(int32_t)rtb_dt_fa - 1])) { - /* Merge: '/Merge' incorporates: - * Constant: '/go to next step 2' + /* Merge: '/Merge' incorporates: + * Constant: '/go to next step 2' */ rtB.Merge_ho = 2; } else { - /* Merge: '/Merge' incorporates: - * Constant: '/stay at step 1' + /* Merge: '/Merge' incorporates: + * Constant: '/stay at step 1' */ rtB.Merge_ho = 1; } - /* End of Switch: '/Switch' */ + /* End of Switch: '/Switch' */ - /* Update for UnitDelay: '/Cond_prev_private ' */ + /* Update for UnitDelay: '/Cond_prev_private ' */ rtDW.Cond_prev_private_DSTATE_f = rtb_LogicalOperator1; - /* End of Outputs for SubSystem: '/Level 3' */ + /* End of Outputs for SubSystem: '/Level 3' */ break; case 4: - /* Outputs for IfAction SubSystem: '/Level 4' incorporates: - * ActionPort: '/Action Port' + /* Outputs for IfAction SubSystem: '/Level 4' incorporates: + * ActionPort: '/Action Port' */ - Level4_c(&rtB.Merge_ho, &rtDW.Blower_FL, &rtb_out_ee, &rtDW.Dtg_FLL, + Level4_c(&rtB.Merge_ho, &rtDW.Blower_FL, &rtb_out_oc, &rtDW.Dtg_FLL, &Valve_2_way, &rtDW.Dtg_FUL, &Dtg_FUR, &rtDW.ECT, - &El_window_heating, &Incar_FL, &rtb_Gain2_c, &rtb_Gain_ge, + &El_window_heating, &Incar_FL, &rtb_Gain2_hu, &rtb_Gain_ge, &rtB.Merge_b, &rtDW.Mode_FL, &Mode_FR, &rtb_Divide1, &rtb_u_cuz, &rtDW.step_start_controle_front, &rtDW.t_now, &rtDW.Level4_cw); - /* End of Outputs for SubSystem: '/Level 4' */ + /* End of Outputs for SubSystem: '/Level 4' */ break; case 5: - /* Outputs for IfAction SubSystem: '/Level 5' incorporates: - * ActionPort: '/Action Port' + /* Outputs for IfAction SubSystem: '/Level 5' incorporates: + * ActionPort: '/Action Port' */ - Level4_c(&rtB.Merge_ho, &rtDW.Blower_FL, &rtb_out_ee, &rtDW.Dtg_FLL, + Level4_c(&rtB.Merge_ho, &rtDW.Blower_FL, &rtb_out_oc, &rtDW.Dtg_FLL, &Valve_2_way, &rtDW.Dtg_FUL, &Dtg_FUR, &rtDW.ECT, - &El_window_heating, &Incar_FL, &rtb_Gain2_c, &rtb_Gain_ge, + &El_window_heating, &Incar_FL, &rtb_Gain2_hu, &rtb_Gain_ge, &rtB.Merge_b, &rtDW.Mode_FL, &Mode_FR, &rtb_Divide1, &rtb_u_cuz, &rtDW.step_start_controle_front, &rtDW.t_now, &rtDW.Level5_g); - /* End of Outputs for SubSystem: '/Level 5' */ + /* End of Outputs for SubSystem: '/Level 5' */ break; } - /* End of SwitchCase: '/Switch Case' */ - /* End of Outputs for SubSystem: '/Step 1 F' */ + /* End of SwitchCase: '/Switch Case' */ + /* End of Outputs for SubSystem: '/Step 1 F' */ break; case 2: - /* Outputs for IfAction SubSystem: '/Step 2 F' incorporates: - * ActionPort: '/Action Port' + /* Outputs for IfAction SubSystem: '/Step 2 F' incorporates: + * ActionPort: '/Action Port' */ - /* SwitchCase: '/Switch Case' incorporates: + /* SwitchCase: '/Switch Case' incorporates: * DataStoreWrite: '/Data Store Write' */ switch (rtB.Merge_b) { case 0: - /* Outputs for IfAction SubSystem: '/Level 0' incorporates: - * ActionPort: '/Action Port' + /* Outputs for IfAction SubSystem: '/Level 0' incorporates: + * ActionPort: '/Action Port' */ - /* DataStoreWrite: '/Data Store Write8' incorporates: - * MATLAB Function: '/3 way valve status' + /* DataStoreWrite: '/Data Store Write8' incorporates: + * MATLAB Function: '/3 way valve status' */ uwayvalvestatus_a(rtB.Merge_b, &rtb_u_cuz); - /* MATLAB Function: '/step' */ + /* MATLAB Function: '/step' */ Dtg_FrontLower_X(rtB.Merge_b, &rtb_Gain_ge); - /* MATLAB Function: '/time for step' */ - timeforstep(rtB.Merge_b, &rtb_Gain2_c); + /* MATLAB Function: '/time for step' */ + timeforstep(rtB.Merge_b, &rtb_Gain2_hu); - /* Switch: '/Switch' incorporates: - * Constant: '/epsilon' - * DataStoreRead: '/Текущее значение blower ' - * DataStoreRead: '/значение auto (в соответствии с логикой)' - * RelationalOperator: '/Relational Operator' - * RelationalOperator: '/Relational Operator' - * Sum: '/Add' - * Switch: '/Switch' + /* Switch: '/Switch' incorporates: + * Constant: '/epsilon' + * DataStoreRead: '/Текущее значение blower ' + * DataStoreRead: '/значение auto (в соответствии с логикой)' + * RelationalOperator: '/Relational Operator' + * RelationalOperator: '/Relational Operator' + * Sum: '/Add' + * Switch: '/Switch' */ if ((uint8_t)(rtDW.Dtg_FLL - rtDW.Dtg_logic_FLL) <= 0.01) { - /* DataStoreWrite: '/Data Store Write13' */ + /* DataStoreWrite: '/Data Store Write13' */ rtDW.Dtg_FLL = rtDW.Dtg_logic_FLL; } else { if (rtDW.Dtg_FLL <= rtDW.Dtg_logic_FLL) { - /* Switch: '/Switch' incorporates: - * Constant: '/Constant' + /* Switch: '/Switch' incorporates: + * Constant: '/Constant' */ - q0 = 1; + y = 1; } else { - /* Switch: '/Switch' incorporates: - * Constant: '/Constant1' + /* Switch: '/Switch' incorporates: + * Constant: '/Constant1' */ - q0 = -1; + y = -1; } - /* DataStoreWrite: '/Data Store Write13' incorporates: - * Constant: '/Constant' - * DataStoreRead: '/текущее время в мс' - * Product: '/Product1' - * Product: '/change rate (dtg//sec)' - * Product: '/скорость в мс' - * Product: '/шаг изменения' - * Sum: '/Add' - * Sum: '/Subtract' - * Switch: '/Switch' - * UnitDelay: '/Unit Delay' + /* DataStoreWrite: '/Data Store Write13' incorporates: + * Constant: '/Constant' + * DataStoreRead: '/текущее время в мс' + * Product: '/Product1' + * Product: '/change rate (dtg//sec)' + * Product: '/скорость в мс' + * Product: '/шаг изменения' + * Sum: '/Add' + * Sum: '/Subtract' + * Switch: '/Switch' + * UnitDelay: '/Unit Delay' */ - rtDW.Dtg_FLL = (uint8_t)((double)rtb_Gain_ge / (double)rtb_Gain2_c / - 1000.0 * (double)(rtDW.t_now - rtDW.UnitDelay_DSTATE_k) * (double)q0 + rtDW.Dtg_FLL = (uint8_t)((double)rtb_Gain_ge / (double)rtb_Gain2_hu / + 1000.0 * (double)(rtDW.t_now - rtDW.UnitDelay_DSTATE_k) * (double)y + (double)rtDW.Dtg_FLL); } - /* End of Switch: '/Switch' */ + /* End of Switch: '/Switch' */ - /* MATLAB Function: '/step' */ + /* MATLAB Function: '/step' */ Dtg_FrontUpper_X(rtB.Merge_b, &rtb_Gain_ge); - /* MATLAB Function: '/time for step' */ - timeforstep_j(rtB.Merge_b, &rtb_Gain2_c); + /* MATLAB Function: '/time for step' */ + timeforstep_j(rtB.Merge_b, &rtb_Gain2_hu); - /* Switch: '/Switch' incorporates: - * Constant: '/epsilon' - * DataStoreRead: '/Текущее значение blower ' - * DataStoreRead: '/значение auto (в соответствии с логикой)' - * RelationalOperator: '/Relational Operator' - * RelationalOperator: '/Relational Operator' - * Sum: '/Add' - * Switch: '/Switch' + /* Switch: '/Switch' incorporates: + * Constant: '/epsilon' + * DataStoreRead: '/Текущее значение blower ' + * DataStoreRead: '/значение auto (в соответствии с логикой)' + * RelationalOperator: '/Relational Operator' + * RelationalOperator: '/Relational Operator' + * Sum: '/Add' + * Switch: '/Switch' */ if ((uint8_t)(rtDW.Dtg_FUL - rtDW.Dtg_logic_FUL) <= 0.01) { - /* DataStoreWrite: '/Data Store Write11' */ + /* DataStoreWrite: '/Data Store Write11' */ rtDW.Dtg_FUL = rtDW.Dtg_logic_FUL; } else { if (rtDW.Dtg_FUL <= rtDW.Dtg_logic_FUL) { - /* Switch: '/Switch' incorporates: - * Constant: '/Constant' + /* Switch: '/Switch' incorporates: + * Constant: '/Constant' */ - q0 = 1; + y = 1; } else { - /* Switch: '/Switch' incorporates: - * Constant: '/Constant1' + /* Switch: '/Switch' incorporates: + * Constant: '/Constant1' */ - q0 = -1; + y = -1; } - /* DataStoreWrite: '/Data Store Write11' incorporates: - * Constant: '/Constant' - * DataStoreRead: '/текущее время в мс' - * Product: '/Product1' - * Product: '/change rate (dtg//sec)' - * Product: '/скорость в мс' - * Product: '/шаг изменения' - * Sum: '/Add' - * Sum: '/Subtract' - * Switch: '/Switch' - * UnitDelay: '/Unit Delay' + /* DataStoreWrite: '/Data Store Write11' incorporates: + * Constant: '/Constant' + * DataStoreRead: '/текущее время в мс' + * Product: '/Product1' + * Product: '/change rate (dtg//sec)' + * Product: '/скорость в мс' + * Product: '/шаг изменения' + * Sum: '/Add' + * Sum: '/Subtract' + * Switch: '/Switch' + * UnitDelay: '/Unit Delay' */ - rtDW.Dtg_FUL = (uint8_t)((double)rtb_Gain_ge / (double)rtb_Gain2_c / - 1000.0 * (double)(rtDW.t_now - rtDW.UnitDelay_DSTATE_pb) * (double) - q0 + (double)rtDW.Dtg_FUL); + rtDW.Dtg_FUL = (uint8_t)((double)rtb_Gain_ge / (double)rtb_Gain2_hu / + 1000.0 * (double)(rtDW.t_now - rtDW.UnitDelay_DSTATE_pb) * (double)y + + (double)rtDW.Dtg_FUL); } - /* End of Switch: '/Switch' */ + /* End of Switch: '/Switch' */ - /* DataStoreWrite: '/Data Store Write' incorporates: - * MATLAB Function: '/incar filter up' + /* DataStoreWrite: '/Data Store Write' incorporates: + * MATLAB Function: '/incar filter up' */ incarfilterup(rtB.Merge_b, &rtb_Gain_ge); - /* DataStoreWrite: '/Data Store Write1' incorporates: - * MATLAB Function: '/incar filter down' + /* DataStoreWrite: '/Data Store Write1' incorporates: + * MATLAB Function: '/incar filter down' */ - incarfilterdown(rtB.Merge_b, &rtb_Gain2_c); + incarfilterdown(rtB.Merge_b, &rtb_Gain2_hu); - /* Sum: '/Add' incorporates: - * DataStoreRead: '/Текущее значение blower ' - * DataStoreRead: '/значение auto (в соответствии с логикой)' + /* Sum: '/Add' incorporates: + * DataStoreRead: '/Текущее значение blower ' + * DataStoreRead: '/значение auto (в соответствии с логикой)' */ rtb_Gain_ge = (uint8_t)(rtDW.Mode_FL - rtDW.Mode_logic_FL); - /* RelationalOperator: '/Relational Operator' incorporates: - * Constant: '/epsilon' + /* RelationalOperator: '/Relational Operator' incorporates: + * Constant: '/epsilon' */ rtb_LogicalOperator1 = (rtb_Gain_ge <= 0.01); - /* MATLAB Function: '/step' */ - step_j(rtB.Merge_b, &rtb_Gain2_c); + /* MATLAB Function: '/step' */ + step_j(rtB.Merge_b, &rtb_Gain2_hu); - /* MATLAB Function: '/time for step' */ + /* MATLAB Function: '/time for step' */ timeforstep_g(rtB.Merge_b, &rtb_Gain_ge); - /* Switch: '/Switch' incorporates: - * DataStoreRead: '/Текущее значение blower ' - * DataStoreRead: '/значение auto (в соответствии с логикой)' - * RelationalOperator: '/Relational Operator' - * Switch: '/Switch' + /* Switch: '/Switch' incorporates: + * DataStoreRead: '/Текущее значение blower ' + * DataStoreRead: '/значение auto (в соответствии с логикой)' + * RelationalOperator: '/Relational Operator' + * Switch: '/Switch' */ if (rtb_LogicalOperator1) { - /* DataStoreWrite: '/Data Store Write3' incorporates: - * DataStoreRead: '/значение auto (в соответствии с логикой)' + /* DataStoreWrite: '/Data Store Write3' incorporates: + * DataStoreRead: '/значение auto (в соответствии с логикой)' */ rtDW.Mode_FL = rtDW.Mode_logic_FL; } else { if (rtDW.Mode_FL <= rtDW.Mode_logic_FL) { - /* Switch: '/Switch' incorporates: - * Constant: '/Constant' + /* Switch: '/Switch' incorporates: + * Constant: '/Constant' */ - q0 = 1; + y = 1; } else { - /* Switch: '/Switch' incorporates: - * Constant: '/Constant1' + /* Switch: '/Switch' incorporates: + * Constant: '/Constant1' */ - q0 = -1; + y = -1; } - /* DataStoreWrite: '/Data Store Write3' incorporates: - * Constant: '/Constant' - * DataStoreRead: '/Текущее значение blower ' - * DataStoreRead: '/текущее время в мс' - * Product: '/Product1' - * Product: '/change rate (step//sec)' - * Product: '/скорость в мс' - * Product: '/шаг изменения' - * Sum: '/Add' - * Sum: '/Subtract' - * Switch: '/Switch' - * UnitDelay: '/Unit Delay' + /* DataStoreWrite: '/Data Store Write3' incorporates: + * Constant: '/Constant' + * DataStoreRead: '/Текущее значение blower ' + * DataStoreRead: '/текущее время в мс' + * Product: '/Product1' + * Product: '/change rate (step//sec)' + * Product: '/скорость в мс' + * Product: '/шаг изменения' + * Sum: '/Add' + * Sum: '/Subtract' + * Switch: '/Switch' + * UnitDelay: '/Unit Delay' */ - rtDW.Mode_FL = (uint8_t)((double)rtb_Gain2_c / (double)rtb_Gain_ge / - 1000.0 * (double)(rtDW.t_now - rtDW.UnitDelay_DSTATE_mk) * (double) - q0 + (double)rtDW.Mode_FL); + rtDW.Mode_FL = (uint8_t)((double)rtb_Gain2_hu / (double)rtb_Gain_ge / + 1000.0 * (double)(rtDW.t_now - rtDW.UnitDelay_DSTATE_mk) * (double)y + + (double)rtDW.Mode_FL); } - /* End of Switch: '/Switch' */ + /* End of Switch: '/Switch' */ - /* Sum: '/Add' incorporates: - * DataStoreRead: '/Текущее значение blower ' - * DataStoreRead: '/значение auto (в соответствии с логикой)' + /* Sum: '/Add' incorporates: + * DataStoreRead: '/Текущее значение blower ' + * DataStoreRead: '/значение auto (в соответствии с логикой)' */ /* : out = g_aucSTART_ELEC_WINDOW(LVL + 1 + 6); */ - rtb_out_ee = (uint16_t)(rtDW.Blower_FL - rtDW.Blower_logic_FL); + rtb_out_oc = (uint16_t)(rtDW.Blower_FL - rtDW.Blower_logic_FL); - /* RelationalOperator: '/Relational Operator' incorporates: - * Constant: '/epsilon' + /* RelationalOperator: '/Relational Operator' incorporates: + * Constant: '/epsilon' */ - rtb_LogicalOperator1 = (rtb_out_ee <= 0.01); + rtb_LogicalOperator1 = (rtb_out_oc <= 0.01); - /* MATLAB Function: '/blower step' */ - blowerstep(rtB.Merge_b, &rtb_out_bc); + /* MATLAB Function: '/blower step' */ + blowerstep(rtB.Merge_b, &rtb_out_jn); - /* MATLAB Function: '/blower time for step' */ - blowertimeforstep(rtB.Merge_b, &rtb_out_ee); + /* MATLAB Function: '/blower time for step' */ + blowertimeforstep(rtB.Merge_b, &rtb_out_oc); - /* Switch: '/Switch' incorporates: - * DataStoreRead: '/Текущее значение blower ' - * DataStoreRead: '/значение auto (в соответствии с логикой)' - * RelationalOperator: '/Relational Operator' - * Switch: '/Switch' + /* Switch: '/Switch' incorporates: + * DataStoreRead: '/Текущее значение blower ' + * DataStoreRead: '/значение auto (в соответствии с логикой)' + * RelationalOperator: '/Relational Operator' + * Switch: '/Switch' */ if (rtb_LogicalOperator1) { - /* DataStoreWrite: '/Data Store Write6' incorporates: - * DataStoreRead: '/значение auto (в соответствии с логикой)' + /* DataStoreWrite: '/Data Store Write6' incorporates: + * DataStoreRead: '/значение auto (в соответствии с логикой)' */ rtDW.Blower_FL = rtDW.Blower_logic_FL; } else { if (rtDW.Blower_FL <= rtDW.Blower_logic_FL) { - /* Switch: '/Switch' incorporates: - * Constant: '/Constant' + /* Switch: '/Switch' incorporates: + * Constant: '/Constant' */ - q0 = 1; + y = 1; } else { - /* Switch: '/Switch' incorporates: - * Constant: '/Constant1' + /* Switch: '/Switch' incorporates: + * Constant: '/Constant1' */ - q0 = -1; + y = -1; } - /* DataStoreWrite: '/Data Store Write6' incorporates: - * Constant: '/Constant' - * DataStoreRead: '/Текущее значение blower ' - * DataStoreRead: '/текущее время в мс' - * Product: '/Product1' - * Product: '/change rate (step//sec)' - * Product: '/скорость в мс' - * Product: '/шаг изменения' - * Sum: '/Add' - * Sum: '/Subtract' - * Switch: '/Switch' - * UnitDelay: '/Unit Delay' + /* DataStoreWrite: '/Data Store Write6' incorporates: + * Constant: '/Constant' + * DataStoreRead: '/Текущее значение blower ' + * DataStoreRead: '/текущее время в мс' + * Product: '/Product1' + * Product: '/change rate (step//sec)' + * Product: '/скорость в мс' + * Product: '/шаг изменения' + * Sum: '/Add' + * Sum: '/Subtract' + * Switch: '/Switch' + * UnitDelay: '/Unit Delay' */ - rtDW.Blower_FL = (uint16_t)((double)rtb_out_bc / (double)rtb_out_ee / - 1000.0 * (double)(rtDW.t_now - rtDW.UnitDelay_DSTATE_gm) * (double) - q0 + (double)rtDW.Blower_FL); + rtDW.Blower_FL = (uint16_t)((double)rtb_out_jn / (double)rtb_out_oc / + 1000.0 * (double)(rtDW.t_now - rtDW.UnitDelay_DSTATE_gm) * (double)y + + (double)rtDW.Blower_FL); } - /* End of Switch: '/Switch' */ + /* End of Switch: '/Switch' */ - /* DataStoreWrite: '/Data Store Write7' incorporates: - * Constant: '/Recirc logic Partial REC' + /* DataStoreWrite: '/Data Store Write7' incorporates: + * Constant: '/Recirc logic Partial REC' */ rtb_Divide1 = 1.0; - /* RelationalOperator: '/Equal' incorporates: - * DataStoreRead: '/current step' + /* RelationalOperator: '/Equal' incorporates: + * DataStoreRead: '/current step' */ rtb_LogicalOperator1 = (rtDW.step_start_controle_front == 2); - /* Sum: '/Subtract' incorporates: - * DataStoreRead: '/Data Store Read4' - * UnitDelay: '/t_start_delay_private ' + /* Sum: '/Subtract' incorporates: + * DataStoreRead: '/Data Store Read4' + * UnitDelay: '/t_start_delay_private ' */ rtb_dt_fa = rtDW.t_now - rtDW.t_start_delay_private_DSTATE_g; - /* Switch: '/Switch' incorporates: - * DataStoreRead: '/Data Store Read4' - * Logic: '/Logical Operator3' - * Logic: '/Logical Operator4' - * UnitDelay: '/Cond_prev_private ' - * UnitDelay: '/t_start_delay_private ' + /* Switch: '/Switch' incorporates: + * DataStoreRead: '/Data Store Read4' + * Logic: '/Logical Operator3' + * Logic: '/Logical Operator4' + * UnitDelay: '/Cond_prev_private ' + * UnitDelay: '/t_start_delay_private ' */ if (rtb_LogicalOperator1 && (!rtDW.Cond_prev_private_DSTATE_m)) { rtDW.t_start_delay_private_DSTATE_g = rtDW.t_now; } - /* End of Switch: '/Switch' */ + /* End of Switch: '/Switch' */ - /* MATLAB Function: '/Time goto from step 2 to step 3 ' */ + /* MATLAB Function: '/Time goto from step 2 to step 3 ' */ Timegotofromstep2tostep3(rtB.Merge_b, &Incar_FL); - /* Switch: '/Switch' incorporates: - * Gain: '/из сек в мс' - * RelationalOperator: '/Relational Operator1' + /* Switch: '/Switch' incorporates: + * Gain: '/из сек в мс' + * RelationalOperator: '/Relational Operator1' */ if (rtb_dt_fa > (uint32_t)(1000 * Incar_FL)) { - /* Merge: '/Merge' incorporates: - * Constant: '/go to next step' + /* Merge: '/Merge' incorporates: + * Constant: '/go to next step' */ rtB.Merge_ho = 3; } else { - /* Merge: '/Merge' incorporates: - * Constant: '/stay at step' + /* Merge: '/Merge' incorporates: + * Constant: '/stay at step' */ rtB.Merge_ho = 2; } - /* End of Switch: '/Switch' */ + /* End of Switch: '/Switch' */ - /* Update for UnitDelay: '/Unit Delay' incorporates: - * DataStoreRead: '/текущее время в мс' + /* Update for UnitDelay: '/Unit Delay' incorporates: + * DataStoreRead: '/текущее время в мс' */ rtDW.UnitDelay_DSTATE_k = rtDW.t_now; - /* Update for UnitDelay: '/Unit Delay' incorporates: - * DataStoreRead: '/текущее время в мс' + /* Update for UnitDelay: '/Unit Delay' incorporates: + * DataStoreRead: '/текущее время в мс' */ rtDW.UnitDelay_DSTATE_pb = rtDW.t_now; - /* Update for UnitDelay: '/Unit Delay' incorporates: - * DataStoreRead: '/текущее время в мс' + /* Update for UnitDelay: '/Unit Delay' incorporates: + * DataStoreRead: '/текущее время в мс' */ rtDW.UnitDelay_DSTATE_mk = rtDW.t_now; - /* Update for UnitDelay: '/Unit Delay' incorporates: - * DataStoreRead: '/текущее время в мс' + /* Update for UnitDelay: '/Unit Delay' incorporates: + * DataStoreRead: '/текущее время в мс' */ rtDW.UnitDelay_DSTATE_gm = rtDW.t_now; - /* Update for UnitDelay: '/Cond_prev_private ' */ + /* Update for UnitDelay: '/Cond_prev_private ' */ rtDW.Cond_prev_private_DSTATE_m = rtb_LogicalOperator1; - /* End of Outputs for SubSystem: '/Level 0' */ + /* End of Outputs for SubSystem: '/Level 0' */ break; case 1: - /* Outputs for IfAction SubSystem: '/Level 1' incorporates: - * ActionPort: '/Action Port' + /* Outputs for IfAction SubSystem: '/Level 1' incorporates: + * ActionPort: '/Action Port' */ - /* DataStoreWrite: '/Data Store Write8' incorporates: - * MATLAB Function: '/3 way valve status' + /* DataStoreWrite: '/Data Store Write8' incorporates: + * MATLAB Function: '/3 way valve status' */ uwayvalvestatus_a(rtB.Merge_b, &rtb_u_cuz); - /* MATLAB Function: '/step' */ + /* MATLAB Function: '/step' */ Dtg_FrontLower_X(rtB.Merge_b, &rtb_Gain_ge); - /* MATLAB Function: '/time for step' */ - timeforstep(rtB.Merge_b, &rtb_Gain2_c); + /* MATLAB Function: '/time for step' */ + timeforstep(rtB.Merge_b, &rtb_Gain2_hu); - /* Switch: '/Switch' incorporates: - * Constant: '/epsilon' - * DataStoreRead: '/Текущее значение blower ' - * DataStoreRead: '/значение auto (в соответствии с логикой)' - * RelationalOperator: '/Relational Operator' - * RelationalOperator: '/Relational Operator' - * Sum: '/Add' - * Switch: '/Switch' + /* Switch: '/Switch' incorporates: + * Constant: '/epsilon' + * DataStoreRead: '/Текущее значение blower ' + * DataStoreRead: '/значение auto (в соответствии с логикой)' + * RelationalOperator: '/Relational Operator' + * RelationalOperator: '/Relational Operator' + * Sum: '/Add' + * Switch: '/Switch' */ if ((uint8_t)(rtDW.Dtg_FLL - rtDW.Dtg_logic_FLL) <= 0.01) { - /* DataStoreWrite: '/Data Store Write13' */ + /* DataStoreWrite: '/Data Store Write13' */ rtDW.Dtg_FLL = rtDW.Dtg_logic_FLL; } else { if (rtDW.Dtg_FLL <= rtDW.Dtg_logic_FLL) { - /* Switch: '/Switch' incorporates: - * Constant: '/Constant' + /* Switch: '/Switch' incorporates: + * Constant: '/Constant' */ - q0 = 1; + y = 1; } else { - /* Switch: '/Switch' incorporates: - * Constant: '/Constant1' + /* Switch: '/Switch' incorporates: + * Constant: '/Constant1' */ - q0 = -1; + y = -1; } - /* DataStoreWrite: '/Data Store Write13' incorporates: - * Constant: '/Constant' - * DataStoreRead: '/текущее время в мс' - * Product: '/Product1' - * Product: '/change rate (dtg//sec)' - * Product: '/скорость в мс' - * Product: '/шаг изменения' - * Sum: '/Add' - * Sum: '/Subtract' - * Switch: '/Switch' - * UnitDelay: '/Unit Delay' + /* DataStoreWrite: '/Data Store Write13' incorporates: + * Constant: '/Constant' + * DataStoreRead: '/текущее время в мс' + * Product: '/Product1' + * Product: '/change rate (dtg//sec)' + * Product: '/скорость в мс' + * Product: '/шаг изменения' + * Sum: '/Add' + * Sum: '/Subtract' + * Switch: '/Switch' + * UnitDelay: '/Unit Delay' */ - rtDW.Dtg_FLL = (uint8_t)((double)rtb_Gain_ge / (double)rtb_Gain2_c / - 1000.0 * (double)(rtDW.t_now - rtDW.UnitDelay_DSTATE_m) * (double)q0 + rtDW.Dtg_FLL = (uint8_t)((double)rtb_Gain_ge / (double)rtb_Gain2_hu / + 1000.0 * (double)(rtDW.t_now - rtDW.UnitDelay_DSTATE_m) * (double)y + (double)rtDW.Dtg_FLL); } - /* End of Switch: '/Switch' */ + /* End of Switch: '/Switch' */ - /* MATLAB Function: '/step' */ + /* MATLAB Function: '/step' */ Dtg_FrontUpper_X(rtB.Merge_b, &rtb_Gain_ge); - /* MATLAB Function: '/time for step' */ - timeforstep_j(rtB.Merge_b, &rtb_Gain2_c); + /* MATLAB Function: '/time for step' */ + timeforstep_j(rtB.Merge_b, &rtb_Gain2_hu); - /* Switch: '/Switch' incorporates: - * Constant: '/epsilon' - * DataStoreRead: '/Текущее значение blower ' - * DataStoreRead: '/значение auto (в соответствии с логикой)' - * RelationalOperator: '/Relational Operator' - * RelationalOperator: '/Relational Operator' - * Sum: '/Add' - * Switch: '/Switch' + /* Switch: '/Switch' incorporates: + * Constant: '/epsilon' + * DataStoreRead: '/Текущее значение blower ' + * DataStoreRead: '/значение auto (в соответствии с логикой)' + * RelationalOperator: '/Relational Operator' + * RelationalOperator: '/Relational Operator' + * Sum: '/Add' + * Switch: '/Switch' */ if ((uint8_t)(rtDW.Dtg_FUL - rtDW.Dtg_logic_FUL) <= 0.01) { - /* DataStoreWrite: '/Data Store Write11' */ + /* DataStoreWrite: '/Data Store Write11' */ rtDW.Dtg_FUL = rtDW.Dtg_logic_FUL; } else { if (rtDW.Dtg_FUL <= rtDW.Dtg_logic_FUL) { - /* Switch: '/Switch' incorporates: - * Constant: '/Constant' + /* Switch: '/Switch' incorporates: + * Constant: '/Constant' */ - q0 = 1; + y = 1; } else { - /* Switch: '/Switch' incorporates: - * Constant: '/Constant1' + /* Switch: '/Switch' incorporates: + * Constant: '/Constant1' */ - q0 = -1; + y = -1; } - /* DataStoreWrite: '/Data Store Write11' incorporates: - * Constant: '/Constant' - * DataStoreRead: '/текущее время в мс' - * Product: '/Product1' - * Product: '/change rate (dtg//sec)' - * Product: '/скорость в мс' - * Product: '/шаг изменения' - * Sum: '/Add' - * Sum: '/Subtract' - * Switch: '/Switch' - * UnitDelay: '/Unit Delay' + /* DataStoreWrite: '/Data Store Write11' incorporates: + * Constant: '/Constant' + * DataStoreRead: '/текущее время в мс' + * Product: '/Product1' + * Product: '/change rate (dtg//sec)' + * Product: '/скорость в мс' + * Product: '/шаг изменения' + * Sum: '/Add' + * Sum: '/Subtract' + * Switch: '/Switch' + * UnitDelay: '/Unit Delay' */ - rtDW.Dtg_FUL = (uint8_t)((double)rtb_Gain_ge / (double)rtb_Gain2_c / - 1000.0 * (double)(rtDW.t_now - rtDW.UnitDelay_DSTATE_gf) * (double) - q0 + (double)rtDW.Dtg_FUL); + rtDW.Dtg_FUL = (uint8_t)((double)rtb_Gain_ge / (double)rtb_Gain2_hu / + 1000.0 * (double)(rtDW.t_now - rtDW.UnitDelay_DSTATE_gf) * (double)y + + (double)rtDW.Dtg_FUL); } - /* End of Switch: '/Switch' */ + /* End of Switch: '/Switch' */ - /* DataStoreWrite: '/Data Store Write' incorporates: - * MATLAB Function: '/incar filter up' + /* DataStoreWrite: '/Data Store Write' incorporates: + * MATLAB Function: '/incar filter up' */ incarfilterup(rtB.Merge_b, &rtb_Gain_ge); - /* DataStoreWrite: '/Data Store Write1' incorporates: - * MATLAB Function: '/incar filter down' + /* DataStoreWrite: '/Data Store Write1' incorporates: + * MATLAB Function: '/incar filter down' */ - incarfilterdown(rtB.Merge_b, &rtb_Gain2_c); + incarfilterdown(rtB.Merge_b, &rtb_Gain2_hu); - /* Sum: '/Add' incorporates: - * DataStoreRead: '/Текущее значение blower ' - * DataStoreRead: '/значение auto (в соответствии с логикой)' + /* Sum: '/Add' incorporates: + * DataStoreRead: '/Текущее значение blower ' + * DataStoreRead: '/значение auto (в соответствии с логикой)' */ rtb_Gain_ge = (uint8_t)(rtDW.Mode_FL - rtDW.Mode_logic_FL); - /* MATLAB Function: '/step' */ - step_j(rtB.Merge_b, &rtb_Gain2_c); + /* MATLAB Function: '/step' */ + step_j(rtB.Merge_b, &rtb_Gain2_hu); - /* MATLAB Function: '/time for step' */ + /* MATLAB Function: '/time for step' */ timeforstep_g(rtB.Merge_b, &rtb_u_cuz); - /* Switch: '/Switch' incorporates: - * Constant: '/epsilon' - * DataStoreRead: '/Текущее значение blower ' - * DataStoreRead: '/значение auto (в соответствии с логикой)' - * RelationalOperator: '/Relational Operator' - * RelationalOperator: '/Relational Operator' - * Switch: '/Switch' + /* Switch: '/Switch' incorporates: + * Constant: '/epsilon' + * DataStoreRead: '/Текущее значение blower ' + * DataStoreRead: '/значение auto (в соответствии с логикой)' + * RelationalOperator: '/Relational Operator' + * RelationalOperator: '/Relational Operator' + * Switch: '/Switch' */ if (rtb_Gain_ge <= 0.01) { - /* DataStoreWrite: '/Data Store Write3' incorporates: - * DataStoreRead: '/значение auto (в соответствии с логикой)' + /* DataStoreWrite: '/Data Store Write3' incorporates: + * DataStoreRead: '/значение auto (в соответствии с логикой)' */ rtDW.Mode_FL = rtDW.Mode_logic_FL; } else { if (rtDW.Mode_FL <= rtDW.Mode_logic_FL) { - /* Switch: '/Switch' incorporates: - * Constant: '/Constant' + /* Switch: '/Switch' incorporates: + * Constant: '/Constant' */ - q0 = 1; + y = 1; } else { - /* Switch: '/Switch' incorporates: - * Constant: '/Constant1' + /* Switch: '/Switch' incorporates: + * Constant: '/Constant1' */ - q0 = -1; + y = -1; } - /* DataStoreWrite: '/Data Store Write3' incorporates: - * Constant: '/Constant' - * DataStoreRead: '/Текущее значение blower ' - * DataStoreRead: '/текущее время в мс' - * Product: '/Product1' - * Product: '/change rate (step//sec)' - * Product: '/скорость в мс' - * Product: '/шаг изменения' - * Sum: '/Add' - * Sum: '/Subtract' - * Switch: '/Switch' - * UnitDelay: '/Unit Delay' + /* DataStoreWrite: '/Data Store Write3' incorporates: + * Constant: '/Constant' + * DataStoreRead: '/Текущее значение blower ' + * DataStoreRead: '/текущее время в мс' + * Product: '/Product1' + * Product: '/change rate (step//sec)' + * Product: '/скорость в мс' + * Product: '/шаг изменения' + * Sum: '/Add' + * Sum: '/Subtract' + * Switch: '/Switch' + * UnitDelay: '/Unit Delay' */ - rtDW.Mode_FL = (uint8_t)((double)rtb_Gain2_c / (double)rtb_u_cuz / - 1000.0 * (double)(rtDW.t_now - rtDW.UnitDelay_DSTATE_l) * (double)q0 + rtDW.Mode_FL = (uint8_t)((double)rtb_Gain2_hu / (double)rtb_u_cuz / + 1000.0 * (double)(rtDW.t_now - rtDW.UnitDelay_DSTATE_l) * (double)y + (double)rtDW.Mode_FL); } - /* End of Switch: '/Switch' */ + /* End of Switch: '/Switch' */ - /* MATLAB Function: '/window heating' */ + /* MATLAB Function: '/window heating' */ windowheating_k(rtB.Merge_b, &rtb_Gain_ge); - /* Sum: '/Add' incorporates: - * DataStoreRead: '/Текущее значение blower ' - * DataStoreRead: '/значение auto (в соответствии с логикой)' + /* Sum: '/Add' incorporates: + * DataStoreRead: '/Текущее значение blower ' + * DataStoreRead: '/значение auto (в соответствии с логикой)' */ - rtb_out_ee = (uint16_t)(rtDW.Blower_FL - rtDW.Blower_logic_FL); + rtb_out_oc = (uint16_t)(rtDW.Blower_FL - rtDW.Blower_logic_FL); - /* RelationalOperator: '/Relational Operator' incorporates: - * Constant: '/epsilon' + /* RelationalOperator: '/Relational Operator' incorporates: + * Constant: '/epsilon' */ - rtb_LogicalOperator1 = (rtb_out_ee <= 0.01); + rtb_LogicalOperator1 = (rtb_out_oc <= 0.01); - /* MATLAB Function: '/blower step' */ - blowerstep(rtB.Merge_b, &rtb_out_bc); + /* MATLAB Function: '/blower step' */ + blowerstep(rtB.Merge_b, &rtb_out_jn); - /* MATLAB Function: '/blower time for step' */ - blowertimeforstep(rtB.Merge_b, &rtb_out_ee); + /* MATLAB Function: '/blower time for step' */ + blowertimeforstep(rtB.Merge_b, &rtb_out_oc); - /* Switch: '/Switch' incorporates: - * DataStoreRead: '/Текущее значение blower ' - * DataStoreRead: '/значение auto (в соответствии с логикой)' - * RelationalOperator: '/Relational Operator' - * Switch: '/Switch' + /* Switch: '/Switch' incorporates: + * DataStoreRead: '/Текущее значение blower ' + * DataStoreRead: '/значение auto (в соответствии с логикой)' + * RelationalOperator: '/Relational Operator' + * Switch: '/Switch' */ if (rtb_LogicalOperator1) { - /* DataStoreWrite: '/Data Store Write6' incorporates: - * DataStoreRead: '/значение auto (в соответствии с логикой)' + /* DataStoreWrite: '/Data Store Write6' incorporates: + * DataStoreRead: '/значение auto (в соответствии с логикой)' */ rtDW.Blower_FL = rtDW.Blower_logic_FL; } else { if (rtDW.Blower_FL <= rtDW.Blower_logic_FL) { - /* Switch: '/Switch' incorporates: - * Constant: '/Constant' + /* Switch: '/Switch' incorporates: + * Constant: '/Constant' */ - q0 = 1; + y = 1; } else { - /* Switch: '/Switch' incorporates: - * Constant: '/Constant1' + /* Switch: '/Switch' incorporates: + * Constant: '/Constant1' */ - q0 = -1; + y = -1; } - /* DataStoreWrite: '/Data Store Write6' incorporates: - * Constant: '/Constant' - * DataStoreRead: '/Текущее значение blower ' - * DataStoreRead: '/текущее время в мс' - * Product: '/Product1' - * Product: '/change rate (step//sec)' - * Product: '/скорость в мс' - * Product: '/шаг изменения' - * Sum: '/Add' - * Sum: '/Subtract' - * Switch: '/Switch' - * UnitDelay: '/Unit Delay' + /* DataStoreWrite: '/Data Store Write6' incorporates: + * Constant: '/Constant' + * DataStoreRead: '/Текущее значение blower ' + * DataStoreRead: '/текущее время в мс' + * Product: '/Product1' + * Product: '/change rate (step//sec)' + * Product: '/скорость в мс' + * Product: '/шаг изменения' + * Sum: '/Add' + * Sum: '/Subtract' + * Switch: '/Switch' + * UnitDelay: '/Unit Delay' */ - rtDW.Blower_FL = (uint16_t)((double)rtb_out_bc / (double)rtb_out_ee / - 1000.0 * (double)(rtDW.t_now - rtDW.UnitDelay_DSTATE_p0) * (double) - q0 + (double)rtDW.Blower_FL); + rtDW.Blower_FL = (uint16_t)((double)rtb_out_jn / (double)rtb_out_oc / + 1000.0 * (double)(rtDW.t_now - rtDW.UnitDelay_DSTATE_p0) * (double)y + + (double)rtDW.Blower_FL); } - /* End of Switch: '/Switch' */ + /* End of Switch: '/Switch' */ - /* DataStoreWrite: '/Data Store Write7' incorporates: - * Constant: '/Recirc logic Partial REC' + /* DataStoreWrite: '/Data Store Write7' incorporates: + * Constant: '/Recirc logic Partial REC' */ rtb_Divide1 = 1.0; - /* RelationalOperator: '/Equal' incorporates: - * DataStoreRead: '/current step' + /* RelationalOperator: '/Equal' incorporates: + * DataStoreRead: '/current step' */ rtb_LogicalOperator1 = (rtDW.step_start_controle_front == 2); - /* Sum: '/Subtract' incorporates: - * DataStoreRead: '/Data Store Read4' - * UnitDelay: '/t_start_delay_private ' + /* Sum: '/Subtract' incorporates: + * DataStoreRead: '/Data Store Read4' + * UnitDelay: '/t_start_delay_private ' */ rtb_dt_fa = rtDW.t_now - rtDW.t_start_delay_private_DSTATE_mz; - /* Switch: '/Switch' incorporates: - * DataStoreRead: '/Data Store Read4' - * Logic: '/Logical Operator3' - * Logic: '/Logical Operator4' - * UnitDelay: '/Cond_prev_private ' - * UnitDelay: '/t_start_delay_private ' + /* Switch: '/Switch' incorporates: + * DataStoreRead: '/Data Store Read4' + * Logic: '/Logical Operator3' + * Logic: '/Logical Operator4' + * UnitDelay: '/Cond_prev_private ' + * UnitDelay: '/t_start_delay_private ' */ if (rtb_LogicalOperator1 && (!rtDW.Cond_prev_private_DSTATE_b3)) { rtDW.t_start_delay_private_DSTATE_mz = rtDW.t_now; } - /* End of Switch: '/Switch' */ + /* End of Switch: '/Switch' */ - /* MATLAB Function: '/Time goto from step 2 to step 3 ' */ + /* MATLAB Function: '/Time goto from step 2 to step 3 ' */ Timegotofromstep2tostep3(rtB.Merge_b, &Incar_FL); - /* Switch: '/Switch' incorporates: - * Gain: '/из сек в мс' - * RelationalOperator: '/Relational Operator1' + /* Switch: '/Switch' incorporates: + * Gain: '/из сек в мс' + * RelationalOperator: '/Relational Operator1' */ if (rtb_dt_fa > (uint32_t)(1000 * Incar_FL)) { - /* Merge: '/Merge' incorporates: - * Constant: '/go to next step' + /* Merge: '/Merge' incorporates: + * Constant: '/go to next step' */ rtB.Merge_ho = 3; } else { - /* Merge: '/Merge' incorporates: - * Constant: '/stay at step' + /* Merge: '/Merge' incorporates: + * Constant: '/stay at step' */ rtB.Merge_ho = 2; } - /* End of Switch: '/Switch' */ + /* End of Switch: '/Switch' */ - /* Update for UnitDelay: '/Unit Delay' incorporates: - * DataStoreRead: '/текущее время в мс' + /* Update for UnitDelay: '/Unit Delay' incorporates: + * DataStoreRead: '/текущее время в мс' */ rtDW.UnitDelay_DSTATE_m = rtDW.t_now; - /* Update for UnitDelay: '/Unit Delay' incorporates: - * DataStoreRead: '/текущее время в мс' + /* Update for UnitDelay: '/Unit Delay' incorporates: + * DataStoreRead: '/текущее время в мс' */ rtDW.UnitDelay_DSTATE_gf = rtDW.t_now; - /* Update for UnitDelay: '/Unit Delay' incorporates: - * DataStoreRead: '/текущее время в мс' + /* Update for UnitDelay: '/Unit Delay' incorporates: + * DataStoreRead: '/текущее время в мс' */ rtDW.UnitDelay_DSTATE_l = rtDW.t_now; - /* Update for UnitDelay: '/Unit Delay' incorporates: - * DataStoreRead: '/текущее время в мс' + /* Update for UnitDelay: '/Unit Delay' incorporates: + * DataStoreRead: '/текущее время в мс' */ rtDW.UnitDelay_DSTATE_p0 = rtDW.t_now; - /* Update for UnitDelay: '/Cond_prev_private ' */ + /* Update for UnitDelay: '/Cond_prev_private ' */ rtDW.Cond_prev_private_DSTATE_b3 = rtb_LogicalOperator1; - /* End of Outputs for SubSystem: '/Level 1' */ + /* End of Outputs for SubSystem: '/Level 1' */ break; case 2: - /* Outputs for IfAction SubSystem: '/Level 2' incorporates: - * ActionPort: '/Action Port' + /* Outputs for IfAction SubSystem: '/Level 2' incorporates: + * ActionPort: '/Action Port' */ - /* Merge: '/Merge' incorporates: - * Constant: '/Constant' - * SignalConversion generated from: '/step' + /* Merge: '/Merge' incorporates: + * Constant: '/Constant' + * SignalConversion generated from: '/step' */ rtB.Merge_ho = 3; - /* End of Outputs for SubSystem: '/Level 2' */ + /* End of Outputs for SubSystem: '/Level 2' */ break; case 3: - /* Outputs for IfAction SubSystem: '/Level 3' incorporates: - * ActionPort: '/Action Port' + /* Outputs for IfAction SubSystem: '/Level 3' incorporates: + * ActionPort: '/Action Port' */ - Level3(&rtB.Merge_ho, &Autodefog, &rtDW.Blower_FL, &rtb_out_ee, + Level3(&rtB.Merge_ho, &Autodefog, &rtDW.Blower_FL, &rtb_out_oc, &rtDW.Blower_logic_FL, &rtDW.Dtg_FLL, &Valve_2_way, &rtDW.Dtg_FUL, &Dtg_FUR, &rtDW.Dtg_logic_FLL, &rtDW.Dtg_logic_FUL, - &El_window_heating, &rtDW.HI_logic_on, &rtb_Gain2_c, &rtb_Gain_ge, - &rtB.Merge_b, &rtDW.Mode_FL, &Mode_FR, &rtDW.Mode_logic_FL, - &rtb_Divide1, &rtb_u_cuz, &rtDW.step_start_controle_front, - &rtDW.t_now, &rtDW.Level3_l); + &El_window_heating, &rtDW.HI_logic_on, &rtb_Gain2_hu, + &rtb_Gain_ge, &rtB.Merge_b, &rtDW.Mode_FL, &Mode_FR, + &rtDW.Mode_logic_FL, &rtb_Divide1, &rtb_u_cuz, + &rtDW.step_start_controle_front, &rtDW.t_now, &rtDW.Level3_l); - /* End of Outputs for SubSystem: '/Level 3' */ + /* End of Outputs for SubSystem: '/Level 3' */ break; case 4: - /* Outputs for IfAction SubSystem: '/Level 4' incorporates: - * ActionPort: '/Action Port' + /* Outputs for IfAction SubSystem: '/Level 4' incorporates: + * ActionPort: '/Action Port' */ - Level3(&rtB.Merge_ho, &Autodefog, &rtDW.Blower_FL, &rtb_out_ee, + Level3(&rtB.Merge_ho, &Autodefog, &rtDW.Blower_FL, &rtb_out_oc, &rtDW.Blower_logic_FL, &rtDW.Dtg_FLL, &Valve_2_way, &rtDW.Dtg_FUL, &Dtg_FUR, &rtDW.Dtg_logic_FLL, &rtDW.Dtg_logic_FUL, - &El_window_heating, &rtDW.HI_logic_on, &rtb_Gain2_c, &rtb_Gain_ge, - &rtB.Merge_b, &rtDW.Mode_FL, &Mode_FR, &rtDW.Mode_logic_FL, - &rtb_Divide1, &rtb_u_cuz, &rtDW.step_start_controle_front, - &rtDW.t_now, &rtDW.Level4_a); + &El_window_heating, &rtDW.HI_logic_on, &rtb_Gain2_hu, + &rtb_Gain_ge, &rtB.Merge_b, &rtDW.Mode_FL, &Mode_FR, + &rtDW.Mode_logic_FL, &rtb_Divide1, &rtb_u_cuz, + &rtDW.step_start_controle_front, &rtDW.t_now, &rtDW.Level4_a); - /* End of Outputs for SubSystem: '/Level 4' */ + /* End of Outputs for SubSystem: '/Level 4' */ break; case 5: - /* Outputs for IfAction SubSystem: '/Level 5' incorporates: - * ActionPort: '/Action Port' + /* Outputs for IfAction SubSystem: '/Level 5' incorporates: + * ActionPort: '/Action Port' */ - /* DataStoreWrite: '/Data Store Write8' incorporates: - * MATLAB Function: '/3 way valve status' + /* DataStoreWrite: '/Data Store Write8' incorporates: + * MATLAB Function: '/3 way valve status' */ uwayvalvestatus_a(rtB.Merge_b, &rtb_u_cuz); - /* MATLAB Function: '/step' */ + /* MATLAB Function: '/step' */ Dtg_FrontLower_X(rtB.Merge_b, &rtb_Gain_ge); - /* MATLAB Function: '/time for step' */ - timeforstep(rtB.Merge_b, &rtb_Gain2_c); + /* MATLAB Function: '/time for step' */ + timeforstep(rtB.Merge_b, &rtb_Gain2_hu); - /* Switch: '/Switch' incorporates: - * Constant: '/epsilon' - * DataStoreRead: '/Текущее значение blower ' - * DataStoreRead: '/значение auto (в соответствии с логикой)' - * RelationalOperator: '/Relational Operator' - * RelationalOperator: '/Relational Operator' - * Sum: '/Add' - * Switch: '/Switch' + /* Switch: '/Switch' incorporates: + * Constant: '/epsilon' + * DataStoreRead: '/Текущее значение blower ' + * DataStoreRead: '/значение auto (в соответствии с логикой)' + * RelationalOperator: '/Relational Operator' + * RelationalOperator: '/Relational Operator' + * Sum: '/Add' + * Switch: '/Switch' */ if ((uint8_t)(rtDW.Dtg_FLL - rtDW.Dtg_logic_FLL) <= 0.01) { - /* DataStoreWrite: '/Data Store Write13' */ + /* DataStoreWrite: '/Data Store Write13' */ rtDW.Dtg_FLL = rtDW.Dtg_logic_FLL; } else { if (rtDW.Dtg_FLL <= rtDW.Dtg_logic_FLL) { - /* Switch: '/Switch' incorporates: - * Constant: '/Constant' + /* Switch: '/Switch' incorporates: + * Constant: '/Constant' */ - q0 = 1; + y = 1; } else { - /* Switch: '/Switch' incorporates: - * Constant: '/Constant1' + /* Switch: '/Switch' incorporates: + * Constant: '/Constant1' */ - q0 = -1; + y = -1; } - /* DataStoreWrite: '/Data Store Write13' incorporates: - * Constant: '/Constant' - * DataStoreRead: '/текущее время в мс' - * Product: '/Product1' - * Product: '/change rate (dtg//sec)' - * Product: '/скорость в мс' - * Product: '/шаг изменения' - * Sum: '/Add' - * Sum: '/Subtract' - * Switch: '/Switch' - * UnitDelay: '/Unit Delay' + /* DataStoreWrite: '/Data Store Write13' incorporates: + * Constant: '/Constant' + * DataStoreRead: '/текущее время в мс' + * Product: '/Product1' + * Product: '/change rate (dtg//sec)' + * Product: '/скорость в мс' + * Product: '/шаг изменения' + * Sum: '/Subtract' + * Sum: '/Add' + * Switch: '/Switch' + * UnitDelay: '/Unit Delay' */ - rtDW.Dtg_FLL = (uint8_t)((double)rtb_Gain_ge / (double)rtb_Gain2_c / - 1000.0 * (double)(rtDW.t_now - rtDW.UnitDelay_DSTATE_f) * (double)q0 + rtDW.Dtg_FLL = (uint8_t)((double)rtb_Gain_ge / (double)rtb_Gain2_hu / + 1000.0 * (double)(rtDW.t_now - rtDW.UnitDelay_DSTATE_f) * (double)y + (double)rtDW.Dtg_FLL); } - /* End of Switch: '/Switch' */ + /* End of Switch: '/Switch' */ - /* MATLAB Function: '/step' */ + /* MATLAB Function: '/step' */ Dtg_FrontUpper_X(rtB.Merge_b, &rtb_Gain_ge); - /* MATLAB Function: '/time for step' */ - timeforstep_j(rtB.Merge_b, &rtb_Gain2_c); + /* MATLAB Function: '/time for step' */ + timeforstep_j(rtB.Merge_b, &rtb_Gain2_hu); - /* Switch: '/Switch' incorporates: - * Constant: '/epsilon' - * DataStoreRead: '/Текущее значение blower ' - * DataStoreRead: '/значение auto (в соответствии с логикой)' - * RelationalOperator: '/Relational Operator' - * RelationalOperator: '/Relational Operator' - * Sum: '/Add' - * Switch: '/Switch' + /* Switch: '/Switch' incorporates: + * Constant: '/epsilon' + * DataStoreRead: '/Текущее значение blower ' + * DataStoreRead: '/значение auto (в соответствии с логикой)' + * RelationalOperator: '/Relational Operator' + * RelationalOperator: '/Relational Operator' + * Sum: '/Add' + * Switch: '/Switch' */ if ((uint8_t)(rtDW.Dtg_FUL - rtDW.Dtg_logic_FUL) <= 0.01) { - /* DataStoreWrite: '/Data Store Write11' */ + /* DataStoreWrite: '/Data Store Write11' */ rtDW.Dtg_FUL = rtDW.Dtg_logic_FUL; } else { if (rtDW.Dtg_FUL <= rtDW.Dtg_logic_FUL) { - /* Switch: '/Switch' incorporates: - * Constant: '/Constant' + /* Switch: '/Switch' incorporates: + * Constant: '/Constant' */ - q0 = 1; + y = 1; } else { - /* Switch: '/Switch' incorporates: - * Constant: '/Constant1' + /* Switch: '/Switch' incorporates: + * Constant: '/Constant1' */ - q0 = -1; + y = -1; } - /* DataStoreWrite: '/Data Store Write11' incorporates: - * Constant: '/Constant' - * DataStoreRead: '/текущее время в мс' - * Product: '/Product1' - * Product: '/change rate (dtg//sec)' - * Product: '/скорость в мс' - * Product: '/шаг изменения' - * Sum: '/Add' - * Sum: '/Subtract' - * Switch: '/Switch' - * UnitDelay: '/Unit Delay' + /* DataStoreWrite: '/Data Store Write11' incorporates: + * Constant: '/Constant' + * DataStoreRead: '/текущее время в мс' + * Product: '/Product1' + * Product: '/change rate (dtg//sec)' + * Product: '/скорость в мс' + * Product: '/шаг изменения' + * Sum: '/Subtract' + * Sum: '/Add' + * Switch: '/Switch' + * UnitDelay: '/Unit Delay' */ - rtDW.Dtg_FUL = (uint8_t)((double)rtb_Gain_ge / (double)rtb_Gain2_c / - 1000.0 * (double)(rtDW.t_now - rtDW.UnitDelay_DSTATE_pu) * (double) - q0 + (double)rtDW.Dtg_FUL); + rtDW.Dtg_FUL = (uint8_t)((double)rtb_Gain_ge / (double)rtb_Gain2_hu / + 1000.0 * (double)(rtDW.t_now - rtDW.UnitDelay_DSTATE_pu) * (double)y + + (double)rtDW.Dtg_FUL); } - /* End of Switch: '/Switch' */ + /* End of Switch: '/Switch' */ - /* DataStoreWrite: '/Data Store Write' incorporates: - * MATLAB Function: '/incar filter up' + /* DataStoreWrite: '/Data Store Write' incorporates: + * MATLAB Function: '/incar filter up' */ incarfilterup(rtB.Merge_b, &rtb_Gain_ge); - /* DataStoreWrite: '/Data Store Write1' incorporates: - * MATLAB Function: '/incar filter down' + /* DataStoreWrite: '/Data Store Write1' incorporates: + * MATLAB Function: '/incar filter down' */ - incarfilterdown(rtB.Merge_b, &rtb_Gain2_c); + incarfilterdown(rtB.Merge_b, &rtb_Gain2_hu); - /* MATLAB Function: '/autodemist (autodefog)' */ + /* MATLAB Function: '/autodemist (autodefog)' */ autodemistautodefog(rtB.Merge_b, &rtb_Gain_ge); - /* Sum: '/Add' incorporates: - * DataStoreRead: '/Текущее значение blower ' - * DataStoreRead: '/значение auto (в соответствии с логикой)' + /* Sum: '/Add' incorporates: + * DataStoreRead: '/Текущее значение blower ' + * DataStoreRead: '/значение auto (в соответствии с логикой)' */ - rtb_Gain2_c = (uint8_t)(rtDW.Mode_FL - rtDW.Mode_logic_FL); + rtb_Gain2_hu = (uint8_t)(rtDW.Mode_FL - rtDW.Mode_logic_FL); - /* MATLAB Function: '/step' */ + /* MATLAB Function: '/step' */ step_j(rtB.Merge_b, &rtb_Gain_ge); - /* MATLAB Function: '/time for step' */ + /* MATLAB Function: '/time for step' */ timeforstep_g(rtB.Merge_b, &rtb_u_cuz); - /* Switch: '/Switch' incorporates: - * Constant: '/epsilon' - * DataStoreRead: '/Текущее значение blower ' - * DataStoreRead: '/значение auto (в соответствии с логикой)' - * RelationalOperator: '/Relational Operator' - * RelationalOperator: '/Relational Operator' - * Switch: '/Switch' + /* Switch: '/Switch' incorporates: + * Constant: '/epsilon' + * DataStoreRead: '/Текущее значение blower ' + * DataStoreRead: '/значение auto (в соответствии с логикой)' + * RelationalOperator: '/Relational Operator' + * RelationalOperator: '/Relational Operator' + * Switch: '/Switch' */ - if (rtb_Gain2_c <= 0.01) { - /* DataStoreWrite: '/Data Store Write3' incorporates: - * DataStoreRead: '/значение auto (в соответствии с логикой)' + if (rtb_Gain2_hu <= 0.01) { + /* DataStoreWrite: '/Data Store Write3' incorporates: + * DataStoreRead: '/значение auto (в соответствии с логикой)' */ rtDW.Mode_FL = rtDW.Mode_logic_FL; } else { if (rtDW.Mode_FL <= rtDW.Mode_logic_FL) { - /* Switch: '/Switch' incorporates: - * Constant: '/Constant' + /* Switch: '/Switch' incorporates: + * Constant: '/Constant' */ - q0 = 1; + y = 1; } else { - /* Switch: '/Switch' incorporates: - * Constant: '/Constant1' + /* Switch: '/Switch' incorporates: + * Constant: '/Constant1' */ - q0 = -1; + y = -1; } - /* DataStoreWrite: '/Data Store Write3' incorporates: - * Constant: '/Constant' - * DataStoreRead: '/Текущее значение blower ' - * DataStoreRead: '/текущее время в мс' - * Product: '/Product1' - * Product: '/change rate (step//sec)' - * Product: '/скорость в мс' - * Product: '/шаг изменения' - * Sum: '/Add' - * Sum: '/Subtract' - * Switch: '/Switch' - * UnitDelay: '/Unit Delay' + /* DataStoreWrite: '/Data Store Write3' incorporates: + * Constant: '/Constant' + * DataStoreRead: '/Текущее значение blower ' + * DataStoreRead: '/текущее время в мс' + * Product: '/Product1' + * Product: '/change rate (step//sec)' + * Product: '/скорость в мс' + * Product: '/шаг изменения' + * Sum: '/Add' + * Sum: '/Subtract' + * Switch: '/Switch' + * UnitDelay: '/Unit Delay' */ rtDW.Mode_FL = (uint8_t)((double)rtb_Gain_ge / (double)rtb_u_cuz / - 1000.0 * (double)(rtDW.t_now - rtDW.UnitDelay_DSTATE_b) * (double)q0 + 1000.0 * (double)(rtDW.t_now - rtDW.UnitDelay_DSTATE_b) * (double)y + (double)rtDW.Mode_FL); } - /* End of Switch: '/Switch' */ + /* End of Switch: '/Switch' */ - /* MATLAB Function: '/window heating' */ - windowheating_k(rtB.Merge_b, &rtb_Gain2_c); + /* MATLAB Function: '/window heating' */ + windowheating_k(rtB.Merge_b, &rtb_Gain2_hu); - /* Sum: '/Add' incorporates: - * DataStoreRead: '/Текущее значение blower ' - * DataStoreRead: '/значение auto (в соответствии с логикой)' + /* Sum: '/Add' incorporates: + * DataStoreRead: '/Текущее значение blower ' + * DataStoreRead: '/значение auto (в соответствии с логикой)' */ - rtb_out_ee = (uint16_t)(rtDW.Blower_FL - rtDW.Blower_logic_FL); + rtb_out_oc = (uint16_t)(rtDW.Blower_FL - rtDW.Blower_logic_FL); - /* RelationalOperator: '/Relational Operator' incorporates: - * Constant: '/epsilon' + /* RelationalOperator: '/Relational Operator' incorporates: + * Constant: '/epsilon' */ - rtb_LogicalOperator1 = (rtb_out_ee <= 0.01); + rtb_LogicalOperator1 = (rtb_out_oc <= 0.01); - /* MATLAB Function: '/blower step' */ - blowerstep(rtB.Merge_b, &rtb_out_bc); + /* MATLAB Function: '/blower step' */ + blowerstep(rtB.Merge_b, &rtb_out_jn); - /* MATLAB Function: '/blower time for step' */ - blowertimeforstep(rtB.Merge_b, &rtb_out_ee); + /* MATLAB Function: '/blower time for step' */ + blowertimeforstep(rtB.Merge_b, &rtb_out_oc); - /* Switch: '/Switch' incorporates: - * DataStoreRead: '/Текущее значение blower ' - * DataStoreRead: '/значение auto (в соответствии с логикой)' - * RelationalOperator: '/Relational Operator' - * Switch: '/Switch' + /* Switch: '/Switch' incorporates: + * DataStoreRead: '/Текущее значение blower ' + * DataStoreRead: '/значение auto (в соответствии с логикой)' + * RelationalOperator: '/Relational Operator' + * Switch: '/Switch' */ if (rtb_LogicalOperator1) { - /* DataStoreWrite: '/Data Store Write6' incorporates: - * DataStoreRead: '/значение auto (в соответствии с логикой)' + /* DataStoreWrite: '/Data Store Write6' incorporates: + * DataStoreRead: '/значение auto (в соответствии с логикой)' */ rtDW.Blower_FL = rtDW.Blower_logic_FL; } else { if (rtDW.Blower_FL <= rtDW.Blower_logic_FL) { - /* Switch: '/Switch' incorporates: - * Constant: '/Constant' + /* Switch: '/Switch' incorporates: + * Constant: '/Constant' */ - q0 = 1; + y = 1; } else { - /* Switch: '/Switch' incorporates: - * Constant: '/Constant1' + /* Switch: '/Switch' incorporates: + * Constant: '/Constant1' */ - q0 = -1; + y = -1; } - /* DataStoreWrite: '/Data Store Write6' incorporates: - * Constant: '/Constant' - * DataStoreRead: '/Текущее значение blower ' - * DataStoreRead: '/текущее время в мс' - * Product: '/Product1' - * Product: '/change rate (step//sec)' - * Product: '/скорость в мс' - * Product: '/шаг изменения' - * Sum: '/Add' - * Sum: '/Subtract' - * Switch: '/Switch' - * UnitDelay: '/Unit Delay' + /* DataStoreWrite: '/Data Store Write6' incorporates: + * Constant: '/Constant' + * DataStoreRead: '/Текущее значение blower ' + * DataStoreRead: '/текущее время в мс' + * Product: '/Product1' + * Product: '/change rate (step//sec)' + * Product: '/скорость в мс' + * Product: '/шаг изменения' + * Sum: '/Add' + * Sum: '/Subtract' + * Switch: '/Switch' + * UnitDelay: '/Unit Delay' */ - rtDW.Blower_FL = (uint16_t)((double)rtb_out_bc / (double)rtb_out_ee / - 1000.0 * (double)(rtDW.t_now - rtDW.UnitDelay_DSTATE_e) * (double)q0 + rtDW.Blower_FL = (uint16_t)((double)rtb_out_jn / (double)rtb_out_oc / + 1000.0 * (double)(rtDW.t_now - rtDW.UnitDelay_DSTATE_e) * (double)y + (double)rtDW.Blower_FL); } - /* End of Switch: '/Switch' */ + /* End of Switch: '/Switch' */ - /* DataStoreWrite: '/Data Store Write7' incorporates: - * Constant: '/Recirc logic Partial REC' + /* DataStoreWrite: '/Data Store Write7' incorporates: + * Constant: '/Recirc logic Partial REC' */ rtb_Divide1 = 1.0; - /* RelationalOperator: '/Equal' incorporates: - * DataStoreRead: '/current step' + /* RelationalOperator: '/Equal' incorporates: + * DataStoreRead: '/current step' */ rtb_LogicalOperator1 = (rtDW.step_start_controle_front == 2); - /* MATLAB Function: '/Time goto from step 2 to step 3 ' */ + /* MATLAB Function: '/Time goto from step 2 to step 3 ' */ Timegotofromstep2tostep3(rtB.Merge_b, &Incar_FL); - /* RelationalOperator: '/Relational Operator1' incorporates: - * DataStoreRead: '/Data Store Read4' - * Gain: '/из сек в мс' - * Sum: '/Subtract' - * UnitDelay: '/t_start_delay_private ' + /* RelationalOperator: '/Relational Operator1' incorporates: + * DataStoreRead: '/Data Store Read4' + * Gain: '/из сек в мс' + * Sum: '/Subtract' + * UnitDelay: '/t_start_delay_private ' */ rtb_LogicalOperator1_g = (rtDW.t_now - rtDW.t_start_delay_private_DSTATE_nr > (uint32_t)(1000 * Incar_FL)); - /* Switch: '/Switch' incorporates: - * DataStoreRead: '/Data Store Read4' - * Logic: '/Logical Operator3' - * Logic: '/Logical Operator4' - * UnitDelay: '/Cond_prev_private ' - * UnitDelay: '/t_start_delay_private ' + /* Switch: '/Switch' incorporates: + * DataStoreRead: '/Data Store Read4' + * Logic: '/Logical Operator3' + * Logic: '/Logical Operator4' + * UnitDelay: '/Cond_prev_private ' + * UnitDelay: '/t_start_delay_private ' */ if (rtb_LogicalOperator1 && (!rtDW.Cond_prev_private_DSTATE_iy)) { rtDW.t_start_delay_private_DSTATE_nr = rtDW.t_now; } - /* End of Switch: '/Switch' */ + /* End of Switch: '/Switch' */ - /* Switch: '/Switch' incorporates: - * DataStoreRead: '/Data Store Read' - * Logic: '/Logical Operator' + /* Switch: '/Switch' incorporates: + * DataStoreRead: '/Data Store Read' + * Logic: '/Logical Operator' */ if (rtb_LogicalOperator1_g || rtDW.HI_logic_on) { - /* Merge: '/Merge' incorporates: - * Constant: '/go to next step' + /* Merge: '/Merge' incorporates: + * Constant: '/go to next step' */ rtB.Merge_ho = 3; } else { - /* Merge: '/Merge' incorporates: - * Constant: '/stay at step' + /* Merge: '/Merge' incorporates: + * Constant: '/stay at step' */ rtB.Merge_ho = 2; } - /* End of Switch: '/Switch' */ + /* End of Switch: '/Switch' */ - /* Update for UnitDelay: '/Unit Delay' incorporates: - * DataStoreRead: '/текущее время в мс' + /* Update for UnitDelay: '/Unit Delay' incorporates: + * DataStoreRead: '/текущее время в мс' */ rtDW.UnitDelay_DSTATE_f = rtDW.t_now; - /* Update for UnitDelay: '/Unit Delay' incorporates: - * DataStoreRead: '/текущее время в мс' + /* Update for UnitDelay: '/Unit Delay' incorporates: + * DataStoreRead: '/текущее время в мс' */ rtDW.UnitDelay_DSTATE_pu = rtDW.t_now; - /* Update for UnitDelay: '/Unit Delay' incorporates: - * DataStoreRead: '/текущее время в мс' + /* Update for UnitDelay: '/Unit Delay' incorporates: + * DataStoreRead: '/текущее время в мс' */ rtDW.UnitDelay_DSTATE_b = rtDW.t_now; - /* Update for UnitDelay: '/Unit Delay' incorporates: - * DataStoreRead: '/текущее время в мс' + /* Update for UnitDelay: '/Unit Delay' incorporates: + * DataStoreRead: '/текущее время в мс' */ rtDW.UnitDelay_DSTATE_e = rtDW.t_now; - /* Update for UnitDelay: '/Cond_prev_private ' */ + /* Update for UnitDelay: '/Cond_prev_private ' */ rtDW.Cond_prev_private_DSTATE_iy = rtb_LogicalOperator1; - /* End of Outputs for SubSystem: '/Level 5' */ + /* End of Outputs for SubSystem: '/Level 5' */ break; } - /* End of SwitchCase: '/Switch Case' */ - /* End of Outputs for SubSystem: '/Step 2 F' */ + /* End of SwitchCase: '/Switch Case' */ + /* End of Outputs for SubSystem: '/Step 2 F' */ break; case 3: - /* Outputs for IfAction SubSystem: '/Step 3 F' incorporates: - * ActionPort: '/Action Port' + /* Outputs for IfAction SubSystem: '/Step 3 F' incorporates: + * ActionPort: '/Action Port' */ Step3F(&rtB.Merge_ho, &rtDW.start_control_finished_front); - /* End of Outputs for SubSystem: '/Step 3 F' */ + /* End of Outputs for SubSystem: '/Step 3 F' */ break; } - /* End of SwitchCase: '/Switch Case' */ + /* End of SwitchCase: '/Switch Case' */ - /* DataStoreWrite: '/Data Store Write' */ + /* DataStoreWrite: '/Data Store Write' */ rtDW.step_start_controle_front = rtB.Merge_ho; /* End of Outputs for SubSystem: '/Start Control Front' */ @@ -14660,1195 +15558,699 @@ void HVAC_model_step(void) */ if (rtDW.start_control_finished_rear == 0.0) { /* Outputs for IfAction SubSystem: '/Start Control Rear' incorporates: - * ActionPort: '/Action Port' + * ActionPort: '/Action Port' */ - /* SwitchCase: '/Switch Case' incorporates: - * DataStoreRead: '/Data Store Read' + /* SwitchCase: '/Switch Case' incorporates: + * DataStoreRead: '/Data Store Read' */ switch (rtDW.step_start_controle_rear) { case -1: - /* Outputs for IfAction SubSystem: '/Step -1 R (Entry Condition)' incorporates: - * ActionPort: '/Action Port' + /* Outputs for IfAction SubSystem: '/Step -1 R (Entry Condition)' incorporates: + * ActionPort: '/Action Port' */ - /* SwitchCase: '/Switch Case' incorporates: - * DataStoreRead: '/Data Store Read1' + /* SwitchCase: '/Switch Case' incorporates: + * DataStoreRead: '/Data Store Read1' */ switch (rtB.Merge_b) { case 0: - /* Outputs for IfAction SubSystem: '/Level 0' incorporates: - * ActionPort: '/Action Port' + /* Outputs for IfAction SubSystem: '/Level 0' incorporates: + * ActionPort: '/Action Port' */ - /* MATLAB Function: '/g_ausSTART_ENTER_SETTEMP' incorporates: - * DataStoreRead: '/Data Store Read4' + /* MATLAB Function: '/g_ausSTART_ENTER_SETTEMP' incorporates: + * DataStoreRead: '/Data Store Read4' */ /* : out = int16(g_assSTART_ENTER_INCAR(LVL + 1 + 6)); */ g_ausSTART_ENTER_SETTEMP_b(rtB.Merge_b, &Incar_FL); - /* MATLAB Function: '/g_assSTART_ENTER_INCAR' incorporates: - * DataStoreRead: '/Data Store Read3' + /* MATLAB Function: '/g_assSTART_ENTER_INCAR' incorporates: + * DataStoreRead: '/Data Store Read3' */ - q0 = (int32_t)(rtB.Merge_b + 1U); + y = (int32_t)(rtB.Merge_b + 1U); if (rtB.Merge_b + 1U > 255U) { - q0 = 255; + y = 255; } - i = (int32_t)((uint32_t)q0 + 6U); - if ((uint32_t)q0 + 6U > 255U) { + i = (int32_t)((uint32_t)y + 6U); + if ((uint32_t)y + 6U > 255U) { i = 255; } - /* Switch: '/Switch' incorporates: - * Constant: '/AUTO' - * DataStoreRead: '/Data Store Read' - * DataStoreRead: '/Data Store Read1' - * DataStoreRead: '/Data Store Read2' - * Logic: '/AND' - * MATLAB Function: '/g_assSTART_ENTER_INCAR' - * RelationalOperator: '/Relational Operator' - * RelationalOperator: '/Relational Operator1' - * RelationalOperator: '/Relational Operator2' + /* Switch: '/Switch' incorporates: + * Constant: '/AUTO' + * DataStoreRead: '/Data Store Read' + * DataStoreRead: '/Data Store Read1' + * DataStoreRead: '/Data Store Read2' + * Logic: '/AND' + * MATLAB Function: '/g_assSTART_ENTER_INCAR' + * RelationalOperator: '/Relational Operator' + * RelationalOperator: '/Relational Operator1' + * RelationalOperator: '/Relational Operator2' */ if ((Incar_RR > g_assSTART_ENTER_INCAR[i - 1]) && - (rtDW.MODE_RR_passenger == 1.0) && (rtDW.FIU_SET_RR < Incar_FL)) { - /* Merge: '/Merge' incorporates: - * Constant: '/Constant1' + (rtDW.MODE_RR_passenger == 1.0) && (FIU_SET_RR < Incar_FL)) { + /* Merge: '/Merge' incorporates: + * Constant: '/Constant1' */ rtB.Merge_c = 0; } else { - /* Merge: '/Merge' incorporates: - * Constant: '/Constant' + /* Merge: '/Merge' incorporates: + * Constant: '/Constant' */ rtB.Merge_c = -1; } - /* End of Switch: '/Switch' */ - /* End of Outputs for SubSystem: '/Level 0' */ + /* End of Switch: '/Switch' */ + /* End of Outputs for SubSystem: '/Level 0' */ break; case 1: - /* Outputs for IfAction SubSystem: '/Level 1' incorporates: - * ActionPort: '/Action Port' + /* Outputs for IfAction SubSystem: '/Level 1' incorporates: + * ActionPort: '/Action Port' */ - /* MATLAB Function: '/g_assSTART_ENTER_INCAR' incorporates: - * DataStoreRead: '/Data Store Read3' + /* MATLAB Function: '/g_assSTART_ENTER_INCAR' incorporates: + * DataStoreRead: '/Data Store Read3' */ g_assSTART_ENTER_INCAR_p(rtB.Merge_b, &Incar_FL); - /* MATLAB Function: '/g_ausSTART_ENTER_SETTEMP' incorporates: - * DataStoreRead: '/Data Store Read4' + /* MATLAB Function: '/g_ausSTART_ENTER_SETTEMP' incorporates: + * DataStoreRead: '/Data Store Read4' */ g_ausSTART_ENTER_SETTEMP_b(rtB.Merge_b, &Eva_F); - /* Switch: '/Switch' incorporates: - * Constant: '/AUTO' - * DataStoreRead: '/Data Store Read' - * DataStoreRead: '/Data Store Read1' - * DataStoreRead: '/Data Store Read2' - * Logic: '/AND' - * RelationalOperator: '/Relational Operator' - * RelationalOperator: '/Relational Operator1' - * RelationalOperator: '/Relational Operator2' + /* Switch: '/Switch' incorporates: + * Constant: '/AUTO' + * DataStoreRead: '/Data Store Read' + * DataStoreRead: '/Data Store Read1' + * DataStoreRead: '/Data Store Read2' + * Logic: '/AND' + * RelationalOperator: '/Relational Operator' + * RelationalOperator: '/Relational Operator1' + * RelationalOperator: '/Relational Operator2' */ if ((Incar_RR > Incar_FL) && (rtDW.MODE_RR_passenger == 1.0) && - (rtDW.FIU_SET_RR < Eva_F)) { - /* Merge: '/Merge' incorporates: - * Constant: '/Constant1' + (FIU_SET_RR < Eva_F)) { + /* Merge: '/Merge' incorporates: + * Constant: '/Constant1' */ rtB.Merge_c = 0; } else { - /* Merge: '/Merge' incorporates: - * Constant: '/Constant' + /* Merge: '/Merge' incorporates: + * Constant: '/Constant' */ rtB.Merge_c = -1; } - /* End of Switch: '/Switch' */ - /* End of Outputs for SubSystem: '/Level 1' */ + /* End of Switch: '/Switch' */ + /* End of Outputs for SubSystem: '/Level 1' */ break; case 2: - /* Outputs for IfAction SubSystem: '/Level 2' incorporates: - * ActionPort: '/Action Port' + /* Outputs for IfAction SubSystem: '/Level 2' incorporates: + * ActionPort: '/Action Port' */ - /* MATLAB Function: '/g_assSTART_ENTER_INCAR' incorporates: - * DataStoreRead: '/Data Store Read3' + /* MATLAB Function: '/g_assSTART_ENTER_INCAR' incorporates: + * DataStoreRead: '/Data Store Read3' */ g_assSTART_ENTER_INCAR_p(rtB.Merge_b, &Incar_FL); - /* MATLAB Function: '/g_ausSTART_ENTER_SETTEMP' incorporates: - * DataStoreRead: '/Data Store Read4' + /* MATLAB Function: '/g_ausSTART_ENTER_SETTEMP' incorporates: + * DataStoreRead: '/Data Store Read4' */ g_ausSTART_ENTER_SETTEMP_b(rtB.Merge_b, &Eva_F); - /* Switch: '/Switch' incorporates: - * Constant: '/AUTO' - * DataStoreRead: '/Data Store Read' - * DataStoreRead: '/Data Store Read1' - * DataStoreRead: '/Data Store Read2' - * Logic: '/AND' - * RelationalOperator: '/Relational Operator' - * RelationalOperator: '/Relational Operator1' - * RelationalOperator: '/Relational Operator2' + /* Switch: '/Switch' incorporates: + * Constant: '/AUTO' + * DataStoreRead: '/Data Store Read' + * DataStoreRead: '/Data Store Read1' + * DataStoreRead: '/Data Store Read2' + * Logic: '/AND' + * RelationalOperator: '/Relational Operator' + * RelationalOperator: '/Relational Operator1' + * RelationalOperator: '/Relational Operator2' */ if ((Incar_RR < Incar_FL) && (rtDW.MODE_RR_passenger == 1.0) && - (rtDW.FIU_SET_RR > Eva_F)) { - /* Merge: '/Merge' incorporates: - * Constant: '/Constant1' + (FIU_SET_RR > Eva_F)) { + /* Merge: '/Merge' incorporates: + * Constant: '/Constant1' */ rtB.Merge_c = 0; } else { - /* Merge: '/Merge' incorporates: - * Constant: '/Constant' + /* Merge: '/Merge' incorporates: + * Constant: '/Constant' */ rtB.Merge_c = -1; } - /* End of Switch: '/Switch' */ - /* End of Outputs for SubSystem: '/Level 2' */ + /* End of Switch: '/Switch' */ + /* End of Outputs for SubSystem: '/Level 2' */ break; case 3: - /* Outputs for IfAction SubSystem: '/Level 3' incorporates: - * ActionPort: '/Action Port' + /* Outputs for IfAction SubSystem: '/Level 3' incorporates: + * ActionPort: '/Action Port' */ - /* MATLAB Function: '/g_assSTART_ENTER_INCAR' incorporates: - * DataStoreRead: '/Data Store Read4' + /* MATLAB Function: '/g_assSTART_ENTER_INCAR' incorporates: + * DataStoreRead: '/Data Store Read4' */ g_assSTART_ENTER_INCAR_p(rtB.Merge_b, &Incar_FL); - /* MATLAB Function: '/g_assSTART_ENTER_COOLANT ' incorporates: - * DataStoreRead: '/Data Store Read3' + /* MATLAB Function: '/g_assSTART_ENTER_COOLANT ' incorporates: + * DataStoreRead: '/Data Store Read3' */ g_assSTART_ENTER_COOLANT_e(rtB.Merge_b, &Eva_F); - /* MATLAB Function: '/g_ausSTART_ENTER_SETTEMP' incorporates: - * DataStoreRead: '/Data Store Read6' + /* MATLAB Function: '/g_ausSTART_ENTER_SETTEMP' incorporates: + * DataStoreRead: '/Data Store Read6' */ /* : out = int16(g_ausSTART_ENTER_SETTEMP(LVL+1+6)); */ - q0 = (int32_t)(rtB.Merge_b + 1U); + y = (int32_t)(rtB.Merge_b + 1U); if (rtB.Merge_b + 1U > 255U) { - q0 = 255; + y = 255; } - i = (int32_t)((uint32_t)q0 + 6U); - if ((uint32_t)q0 + 6U > 255U) { + i = (int32_t)((uint32_t)y + 6U); + if ((uint32_t)y + 6U > 255U) { i = 255; } - rtb_out_ee = g_ausSTART_ENTER_SETTEMP[i - 1]; - if (rtb_out_ee > 32767) { - rtb_out_ee = 32767U; + rtb_out_oc = g_ausSTART_ENTER_SETTEMP[i - 1]; + if (rtb_out_oc > 32767) { + rtb_out_oc = 32767U; } - /* Switch: '/Switch' incorporates: - * Constant: '/AUTO' - * DataStoreRead: '/Data Store Read' - * DataStoreRead: '/Data Store Read1' - * DataStoreRead: '/Data Store Read2' - * DataStoreRead: '/Data Store Read5' - * Logic: '/AND' - * Logic: '/AND1' - * MATLAB Function: '/g_ausSTART_ENTER_SETTEMP' - * RelationalOperator: '/Relational Operator' - * RelationalOperator: '/Relational Operator1' - * RelationalOperator: '/Relational Operator2' - * RelationalOperator: '/Relational Operator3' + /* Switch: '/Switch' incorporates: + * Constant: '/AUTO' + * DataStoreRead: '/Data Store Read' + * DataStoreRead: '/Data Store Read1' + * DataStoreRead: '/Data Store Read2' + * DataStoreRead: '/Data Store Read5' + * Logic: '/AND' + * Logic: '/AND1' + * MATLAB Function: '/g_ausSTART_ENTER_SETTEMP' + * RelationalOperator: '/Relational Operator' + * RelationalOperator: '/Relational Operator1' + * RelationalOperator: '/Relational Operator2' + * RelationalOperator: '/Relational Operator3' */ if (((Incar_RR < Incar_FL) || (rtDW.ECT < Eva_F)) && - (rtDW.MODE_RR_passenger == 1.0) && (rtDW.FIU_SET_RR > rtb_out_ee)) { - /* Merge: '/Merge' incorporates: - * Constant: '/Constant1' + (rtDW.MODE_RR_passenger == 1.0) && (FIU_SET_RR > rtb_out_oc)) { + /* Merge: '/Merge' incorporates: + * Constant: '/Constant1' */ rtB.Merge_c = 0; } else { - /* Merge: '/Merge' incorporates: - * Constant: '/Constant' + /* Merge: '/Merge' incorporates: + * Constant: '/Constant' */ rtB.Merge_c = -1; } - /* End of Switch: '/Switch' */ - /* End of Outputs for SubSystem: '/Level 3' */ + /* End of Switch: '/Switch' */ + /* End of Outputs for SubSystem: '/Level 3' */ break; case 4: - /* Outputs for IfAction SubSystem: '/Level 4' incorporates: - * ActionPort: '/Action Port' + /* Outputs for IfAction SubSystem: '/Level 4' incorporates: + * ActionPort: '/Action Port' */ Level4_e(&rtB.Merge_c, &rtDW.ECT, &Incar_RR, &rtB.Merge_b, &rtDW.MODE_RR_passenger); - /* End of Outputs for SubSystem: '/Level 4' */ + /* End of Outputs for SubSystem: '/Level 4' */ break; case 5: - /* Outputs for IfAction SubSystem: '/Level 5' incorporates: - * ActionPort: '/Action Port' + /* Outputs for IfAction SubSystem: '/Level 5' incorporates: + * ActionPort: '/Action Port' */ Level4_e(&rtB.Merge_c, &rtDW.ECT, &Incar_RR, &rtB.Merge_b, &rtDW.MODE_RR_passenger); - /* End of Outputs for SubSystem: '/Level 5' */ + /* End of Outputs for SubSystem: '/Level 5' */ break; } - /* End of SwitchCase: '/Switch Case' */ - /* End of Outputs for SubSystem: '/Step -1 R (Entry Condition)' */ + /* End of SwitchCase: '/Switch Case' */ + /* End of Outputs for SubSystem: '/Step -1 R (Entry Condition)' */ break; case 0: - /* Outputs for IfAction SubSystem: '/Step 0 R' incorporates: - * ActionPort: '/Action Port' + /* Outputs for IfAction SubSystem: '/Step 0 R' incorporates: + * ActionPort: '/Action Port' */ - /* SwitchCase: '/Switch Case' incorporates: - * DataStoreRead: '/Data Store Read1' + /* SwitchCase: '/Switch Case' incorporates: + * DataStoreRead: '/Data Store Read1' */ switch (rtB.Merge_b) { case 0: - /* Outputs for IfAction SubSystem: '/Level 0' incorporates: - * ActionPort: '/Action Port' + /* Outputs for IfAction SubSystem: '/Level 0' incorporates: + * ActionPort: '/Action Port' */ Level0(&rtB.Merge_c); - /* End of Outputs for SubSystem: '/Level 0' */ + /* End of Outputs for SubSystem: '/Level 0' */ break; case 1: - /* Outputs for IfAction SubSystem: '/Level 1' incorporates: - * ActionPort: '/Action Port' + /* Outputs for IfAction SubSystem: '/Level 1' incorporates: + * ActionPort: '/Action Port' */ Level0(&rtB.Merge_c); - /* End of Outputs for SubSystem: '/Level 1' */ + /* End of Outputs for SubSystem: '/Level 1' */ break; case 2: - /* Outputs for IfAction SubSystem: '/Level 2' incorporates: - * ActionPort: '/Action Port' + /* Outputs for IfAction SubSystem: '/Level 2' incorporates: + * ActionPort: '/Action Port' */ - /* DataStoreWrite: '/Data Store Write5' incorporates: - * Constant: '/Constant2' + /* DataStoreWrite: '/Data Store Write5' incorporates: + * Constant: '/Constant2' */ rtDW.Blower_RR = 10U; - /* DataStoreWrite: '/Data Store Write10' incorporates: - * Constant: '/Constant4' + /* DataStoreWrite: '/Data Store Write10' incorporates: + * Constant: '/Constant4' */ rtDW.Dtg_RR = 65U; - /* MATLAB Function: '/incar filter up' incorporates: - * DataStoreRead: '/Data Store Read1' + /* MATLAB Function: '/incar filter up' incorporates: + * DataStoreRead: '/Data Store Read1' */ incarfilterup_i(rtB.Merge_b, &rtb_Gain_ge); - /* MATLAB Function: '/incar filter down' incorporates: - * DataStoreRead: '/Data Store Read2' + /* MATLAB Function: '/incar filter down' incorporates: + * DataStoreRead: '/Data Store Read2' */ incarfilterdown_c(rtB.Merge_b, &rtb_Gain_ge); - /* DataStoreWrite: '/Data Store Write2' incorporates: - * Constant: '/Mode - foot' + /* DataStoreWrite: '/Data Store Write2' incorporates: + * Constant: '/Mode - foot' */ rtDW.Mode_RR = 60U; - /* MATLAB Function: '/g_assSTART_COOLANT_STEP0_TO_1 ' incorporates: - * DataStoreRead: '/Data Store Read3' + /* MATLAB Function: '/g_assSTART_COOLANT_STEP0_TO_1 ' incorporates: + * DataStoreRead: '/Data Store Read3' */ /* : out = int16(g_assSTART_COOLANT_STEP0_TO_1(LVL + 3)); */ - q0 = (int32_t)(rtB.Merge_b + 3U); + y = (int32_t)(rtB.Merge_b + 3U); if (rtB.Merge_b + 3U > 255U) { - q0 = 255; + y = 255; } - /* Merge: '/Merge' incorporates: - * DataStoreRead: '/Engine coolant temp' - * MATLAB Function: '/g_assSTART_COOLANT_STEP0_TO_1 ' - * RelationalOperator: '/Relational Operator' - * Switch: '/Switch' + /* Merge: '/Merge' incorporates: + * DataStoreRead: '/Engine coolant temp' + * MATLAB Function: '/g_assSTART_COOLANT_STEP0_TO_1 ' + * RelationalOperator: '/Relational Operator' + * Switch: '/Switch' */ - rtB.Merge_c = (int8_t)(rtDW.ECT > g_assSTART_COOLANT_STEP0_TO_1[q0 - 1]); + rtB.Merge_c = (int8_t)(rtDW.ECT > g_assSTART_COOLANT_STEP0_TO_1[y - 1]); - /* End of Outputs for SubSystem: '/Level 2' */ + /* End of Outputs for SubSystem: '/Level 2' */ break; case 3: - /* Outputs for IfAction SubSystem: '/Level 3' incorporates: - * ActionPort: '/Action Port' + /* Outputs for IfAction SubSystem: '/Level 3' incorporates: + * ActionPort: '/Action Port' */ - /* DataStoreWrite: '/Data Store Write5' incorporates: - * Constant: '/Constant2' + /* DataStoreWrite: '/Data Store Write5' incorporates: + * Constant: '/Constant2' */ rtDW.Blower_RR = 10U; - /* DataStoreWrite: '/Data Store Write10' incorporates: - * Constant: '/Constant4' + /* DataStoreWrite: '/Data Store Write10' incorporates: + * Constant: '/Constant4' */ rtDW.Dtg_RR = 65U; - /* MATLAB Function: '/incar filter up' incorporates: - * DataStoreRead: '/Data Store Read1' + /* MATLAB Function: '/incar filter up' incorporates: + * DataStoreRead: '/Data Store Read1' */ incarfilterup_i(rtB.Merge_b, &rtb_Gain_ge); - /* MATLAB Function: '/incar filter down' incorporates: - * DataStoreRead: '/Data Store Read2' + /* MATLAB Function: '/incar filter down' incorporates: + * DataStoreRead: '/Data Store Read2' */ incarfilterdown_c(rtB.Merge_b, &rtb_Gain_ge); - /* DataStoreWrite: '/Data Store Write2' incorporates: - * Constant: '/Mode - foot' + /* DataStoreWrite: '/Data Store Write2' incorporates: + * Constant: '/Mode - foot' */ rtDW.Mode_RR = 60U; - /* MATLAB Function: '/g_assSTART_COOLANT_STEP0_TO_1 ' incorporates: - * DataStoreRead: '/Data Store Read3' + /* MATLAB Function: '/g_assSTART_COOLANT_STEP0_TO_1 ' incorporates: + * DataStoreRead: '/Data Store Read3' */ g_assSTART_COOLANT_STEP0_TO_1_e(rtB.Merge_b, &Incar_RR); - /* Merge: '/Merge' incorporates: - * DataStoreRead: '/Engine coolant temp' - * RelationalOperator: '/Relational Operator' - * Switch: '/Switch' + /* Merge: '/Merge' incorporates: + * DataStoreRead: '/Engine coolant temp' + * RelationalOperator: '/Relational Operator' + * Switch: '/Switch' */ rtB.Merge_c = (int8_t)(rtDW.ECT > Incar_RR); - /* End of Outputs for SubSystem: '/Level 3' */ + /* End of Outputs for SubSystem: '/Level 3' */ break; case 4: - /* Outputs for IfAction SubSystem: '/Level 4' incorporates: - * ActionPort: '/Action Port' + /* Outputs for IfAction SubSystem: '/Level 4' incorporates: + * ActionPort: '/Action Port' */ - Level4_m(&rtB.Merge_c, &rtb_out_ee, &rtDW.Blower_RR, &Dtg_FUR, - &rtDW.Dtg_RR, &rtDW.ECT, &rtb_Gain2_c, &rtb_Gain_ge, + Level4_m(&rtB.Merge_c, &FIU_SET_RR, &rtDW.Blower_RR, &Dtg_FUR, + &rtDW.Dtg_RR, &rtDW.ECT, &rtb_Gain2_hu, &rtb_Gain_ge, &rtB.Merge_b, &El_window_heating, &rtDW.Mode_RR, &Valve_2_way, &rtb_u_cuz); - /* End of Outputs for SubSystem: '/Level 4' */ + /* End of Outputs for SubSystem: '/Level 4' */ break; case 5: - /* Outputs for IfAction SubSystem: '/Level 5' incorporates: - * ActionPort: '/Action Port' + /* Outputs for IfAction SubSystem: '/Level 5' incorporates: + * ActionPort: '/Action Port' */ - Level4_m(&rtB.Merge_c, &rtb_out_ee, &rtDW.Blower_RR, &Dtg_FUR, - &rtDW.Dtg_RR, &rtDW.ECT, &rtb_Gain2_c, &rtb_Gain_ge, + Level4_m(&rtB.Merge_c, &FIU_SET_RR, &rtDW.Blower_RR, &Dtg_FUR, + &rtDW.Dtg_RR, &rtDW.ECT, &rtb_Gain2_hu, &rtb_Gain_ge, &rtB.Merge_b, &El_window_heating, &rtDW.Mode_RR, &Valve_2_way, &rtb_u_cuz); - /* End of Outputs for SubSystem: '/Level 5' */ + /* End of Outputs for SubSystem: '/Level 5' */ break; } - /* End of SwitchCase: '/Switch Case' */ - /* End of Outputs for SubSystem: '/Step 0 R' */ + /* End of SwitchCase: '/Switch Case' */ + /* End of Outputs for SubSystem: '/Step 0 R' */ break; case 1: - /* Outputs for IfAction SubSystem: '/Step 1 R' incorporates: - * ActionPort: '/Action Port' + /* Outputs for IfAction SubSystem: '/Step 1 R' incorporates: + * ActionPort: '/Action Port' */ - /* SwitchCase: '/Switch Case' incorporates: - * DataStoreRead: '/Data Store Read1' + /* SwitchCase: '/Switch Case' incorporates: + * DataStoreRead: '/Data Store Read1' */ switch (rtB.Merge_b) { case 0: - /* Outputs for IfAction SubSystem: '/Level 0' incorporates: - * ActionPort: '/Action Port' + /* Outputs for IfAction SubSystem: '/Level 0' incorporates: + * ActionPort: '/Action Port' */ - Level0_b(&rtB.Merge_c, &rtb_out_ee, &rtDW.Blower_RR, &Dtg_FUR, - &rtDW.Dtg_RR, &Incar_RR, &rtb_Gain2_c, &rtb_Gain_ge, + Level0_b(&rtB.Merge_c, &FIU_SET_RR, &rtDW.Blower_RR, &Dtg_FUR, + &rtDW.Dtg_RR, &Incar_RR, &rtb_Gain2_hu, &rtb_Gain_ge, &rtB.Merge_b, &El_window_heating, &rtDW.Mode_RR, &rtb_Divide1, &Valve_2_way, &rtDW.step_start_controle_rear, &rtDW.t_now, &rtDW.Level0_bc); - /* End of Outputs for SubSystem: '/Level 0' */ + /* End of Outputs for SubSystem: '/Level 0' */ break; case 1: - /* Outputs for IfAction SubSystem: '/Level 1' incorporates: - * ActionPort: '/Action Port' + /* Outputs for IfAction SubSystem: '/Level 1' incorporates: + * ActionPort: '/Action Port' */ - Level0_b(&rtB.Merge_c, &rtb_out_ee, &rtDW.Blower_RR, &Dtg_FUR, - &rtDW.Dtg_RR, &Incar_RR, &rtb_Gain2_c, &rtb_Gain_ge, + Level0_b(&rtB.Merge_c, &FIU_SET_RR, &rtDW.Blower_RR, &Dtg_FUR, + &rtDW.Dtg_RR, &Incar_RR, &rtb_Gain2_hu, &rtb_Gain_ge, &rtB.Merge_b, &El_window_heating, &rtDW.Mode_RR, &rtb_Divide1, &Valve_2_way, &rtDW.step_start_controle_rear, &rtDW.t_now, &rtDW.Level1_d3); - /* End of Outputs for SubSystem: '/Level 1' */ + /* End of Outputs for SubSystem: '/Level 1' */ break; case 2: - /* Outputs for IfAction SubSystem: '/Level 2' incorporates: - * ActionPort: '/Action Port' + /* Outputs for IfAction SubSystem: '/Level 2' incorporates: + * ActionPort: '/Action Port' */ - /* DataStoreWrite: '/Data Store Write2' incorporates: - * DataStoreRead: '/Data Store Read1' - * DataStoreRead: '/Data Store Read2' - * DataStoreRead: '/Data Store Read5' - * DataStoreRead: '/Data Store Read6' - * MATLAB Function: '/2 way valve' - * MATLAB Function: '/incar filter down' - * MATLAB Function: '/incar filter up' - * MATLAB Function: '/mode rear step 1' + /* DataStoreWrite: '/Data Store Write2' incorporates: + * DataStoreRead: '/Data Store Read1' + * DataStoreRead: '/Data Store Read2' + * DataStoreRead: '/Data Store Read5' + * DataStoreRead: '/Data Store Read6' + * MATLAB Function: '/2 way valve' + * MATLAB Function: '/incar filter down' + * MATLAB Function: '/incar filter up' + * MATLAB Function: '/mode rear step 1' */ uwayvalve(rtB.Merge_b, &rtDW.Mode_RR); incarfilterup_i(rtB.Merge_b, &rtDW.Mode_RR); incarfilterdown_c(rtB.Merge_b, &rtDW.Mode_RR); moderearstep1(rtB.Merge_b, &rtDW.Mode_RR); - /* MATLAB Function: '/blower start finish' incorporates: - * DataStoreRead: '/Data Store Read7' + /* MATLAB Function: '/blower start finish' incorporates: + * DataStoreRead: '/Data Store Read7' */ - blowerstartfinish(rtB.Merge_b, rtb_out_he); + blowerstartfinish(rtB.Merge_b, rtb_out_jq); - /* MATLAB Function: '/ECT min max' */ + /* MATLAB Function: '/ECT min max' */ /* : min = int16(g_assSTART_COOLANT_STEP0_TO_1(5)); */ /* : max = int16(g_assSTART_COOLANT_TO_STEP2(2)); */ /* : out = [min, max]; */ - rtb_out_hl[0] = g_assSTART_COOLANT_STEP0_TO_1[4]; - rtb_out_hl[1] = g_assSTART_COOLANT_TO_STEP2[1]; + rtb_out_j4[0] = g_assSTART_COOLANT_STEP0_TO_1[4]; + rtb_out_j4[1] = g_assSTART_COOLANT_TO_STEP2[1]; - /* Lookup_n-D: '/blower для текущего ECT' incorporates: - * DataStoreRead: '/engine coolant temp' - * DataStoreWrite: '/Data Store Write5' + /* Lookup_n-D: '/blower для текущего ECT' incorporates: + * DataStoreRead: '/engine coolant temp' + * DataStoreWrite: '/Data Store Write5' */ - rtDW.Blower_RR = look1_iu16bs16lu64n32_binlcse(rtDW.ECT, rtb_out_hl, - rtb_out_he, 1U); + rtDW.Blower_RR = look1_iu16bs16lu64n32_binlcse(rtDW.ECT, rtb_out_j4, + rtb_out_jq, 1U); - /* DataStoreWrite: '/Data Store Write10' incorporates: - * DataStoreRead: '/Data Store Read8' - * MATLAB Function: '/Dtg_rear' + /* DataStoreWrite: '/Data Store Write10' incorporates: + * DataStoreRead: '/Data Store Read8' + * MATLAB Function: '/Dtg_rear' */ Dtg_rear(rtB.Merge_b, &rtDW.Dtg_RR); - /* RelationalOperator: '/Equal' incorporates: - * DataStoreRead: '/current step' + /* RelationalOperator: '/Equal' incorporates: + * DataStoreRead: '/current step' */ rtb_LogicalOperator1 = (rtDW.step_start_controle_rear == 1); - /* MATLAB Function: '/Incar temp goto from step 1 to step 2 ' incorporates: - * DataStoreRead: '/Data Store Read3' + /* MATLAB Function: '/Incar temp goto from step 1 to step 2 ' incorporates: + * DataStoreRead: '/Data Store Read3' */ Incartempgotofromstep1tostep2_j(rtB.Merge_b, &Incar_FL); - /* Sum: '/Subtract' incorporates: - * DataStoreRead: '/Data Store Read4' - * UnitDelay: '/t_start_delay_private ' + /* Sum: '/Subtract' incorporates: + * DataStoreRead: '/Data Store Read4' + * UnitDelay: '/t_start_delay_private ' */ rtb_dt_fa = rtDW.t_now - rtDW.t_start_delay_private_DSTATE_em; - /* MATLAB Function: '/Time goto from step 1 to step 2 ' incorporates: - * DataStoreRead: '/Data Store Read4' + /* MATLAB Function: '/Time goto from step 1 to step 2 ' incorporates: + * DataStoreRead: '/Data Store Read4' */ Timegotofromstep1tostep2_l(rtB.Merge_b, &Eva_F); - /* Switch: '/Switch' incorporates: - * DataStoreRead: '/Data Store Read4' - * Logic: '/Logical Operator3' - * Logic: '/Logical Operator4' - * UnitDelay: '/Cond_prev_private ' - * UnitDelay: '/t_start_delay_private ' + /* Switch: '/Switch' incorporates: + * DataStoreRead: '/Data Store Read4' + * Logic: '/Logical Operator3' + * Logic: '/Logical Operator4' + * UnitDelay: '/Cond_prev_private ' + * UnitDelay: '/t_start_delay_private ' */ /* : out = int16(g_assSTART_COOLANT_TO_STEP2(2)); */ if (rtb_LogicalOperator1 && (!rtDW.Cond_prev_private_DSTATE_cp)) { rtDW.t_start_delay_private_DSTATE_em = rtDW.t_now; } - /* End of Switch: '/Switch' */ + /* End of Switch: '/Switch' */ - /* Switch: '/Switch' incorporates: - * DataStoreRead: '/engine coolant temp' - * DataStoreRead: '/incar temp' - * Gain: '/из сек в мс' - * Logic: '/Logical Operator' - * MATLAB Function: '/g_assSTART_COOLANT_TO_STEP2 ' - * RelationalOperator: '/Relational Operator' - * RelationalOperator: '/Relational Operator1' - * RelationalOperator: '/Relational Operator2' + /* Switch: '/Switch' incorporates: + * DataStoreRead: '/engine coolant temp' + * DataStoreRead: '/incar temp' + * Gain: '/из сек в мс' + * Logic: '/Logical Operator' + * MATLAB Function: '/g_assSTART_COOLANT_TO_STEP2 ' + * RelationalOperator: '/Relational Operator' + * RelationalOperator: '/Relational Operator1' + * RelationalOperator: '/Relational Operator2' */ if ((Incar_RR > Incar_FL) || (rtb_dt_fa > (uint16_t)(1000 * Eva_F)) || (rtDW.ECT > g_assSTART_COOLANT_TO_STEP2[1])) { - /* Merge: '/Merge' incorporates: - * Constant: '/go to next step' + /* Merge: '/Merge' incorporates: + * Constant: '/go to next step' */ rtB.Merge_c = 2; } else { - /* Merge: '/Merge' incorporates: - * Constant: '/stay at step 1' + /* Merge: '/Merge' incorporates: + * Constant: '/stay at step 1' */ rtB.Merge_c = 1; } - /* End of Switch: '/Switch' */ + /* End of Switch: '/Switch' */ - /* Update for UnitDelay: '/Cond_prev_private ' */ + /* Update for UnitDelay: '/Cond_prev_private ' */ rtDW.Cond_prev_private_DSTATE_cp = rtb_LogicalOperator1; - /* End of Outputs for SubSystem: '/Level 2' */ + /* End of Outputs for SubSystem: '/Level 2' */ break; case 3: - /* Outputs for IfAction SubSystem: '/Level 3' incorporates: - * ActionPort: '/Action Port' + /* Outputs for IfAction SubSystem: '/Level 3' incorporates: + * ActionPort: '/Action Port' */ - /* DataStoreWrite: '/Data Store Write2' incorporates: - * DataStoreRead: '/Data Store Read1' - * DataStoreRead: '/Data Store Read2' - * DataStoreRead: '/Data Store Read5' - * DataStoreRead: '/Data Store Read6' - * MATLAB Function: '/2 way valve' - * MATLAB Function: '/incar filter down' - * MATLAB Function: '/incar filter up' - * MATLAB Function: '/mode rear step 1' + /* DataStoreWrite: '/Data Store Write2' incorporates: + * DataStoreRead: '/Data Store Read1' + * DataStoreRead: '/Data Store Read2' + * DataStoreRead: '/Data Store Read5' + * DataStoreRead: '/Data Store Read6' + * MATLAB Function: '/2 way valve' + * MATLAB Function: '/incar filter down' + * MATLAB Function: '/incar filter up' + * MATLAB Function: '/mode rear step 1' */ uwayvalve(rtB.Merge_b, &rtDW.Mode_RR); incarfilterup_i(rtB.Merge_b, &rtDW.Mode_RR); incarfilterdown_c(rtB.Merge_b, &rtDW.Mode_RR); moderearstep1(rtB.Merge_b, &rtDW.Mode_RR); - /* MATLAB Function: '/blower start finish' incorporates: - * DataStoreRead: '/Data Store Read7' + /* MATLAB Function: '/blower start finish' incorporates: + * DataStoreRead: '/Data Store Read7' */ - blowerstartfinish(rtB.Merge_b, rtb_out_he); + blowerstartfinish(rtB.Merge_b, rtb_out_jq); - /* MATLAB Function: '/ECT min max' incorporates: - * DataStoreRead: '/Data Store Read7' + /* MATLAB Function: '/ECT min max' incorporates: + * DataStoreRead: '/Data Store Read7' */ - ECTminmax_l(rtB.Merge_b, rtb_out_hl); + ECTminmax_l(rtB.Merge_b, rtb_out_j4); - /* Lookup_n-D: '/blower для текущего ECT' incorporates: - * DataStoreRead: '/engine coolant temp' - * DataStoreWrite: '/Data Store Write5' + /* Lookup_n-D: '/blower для текущего ECT' incorporates: + * DataStoreRead: '/engine coolant temp' + * DataStoreWrite: '/Data Store Write5' */ - rtDW.Blower_RR = look1_iu16bs16lu64n32_binlcse(rtDW.ECT, rtb_out_hl, - rtb_out_he, 1U); + rtDW.Blower_RR = look1_iu16bs16lu64n32_binlcse(rtDW.ECT, rtb_out_j4, + rtb_out_jq, 1U); - /* DataStoreWrite: '/Data Store Write10' incorporates: - * DataStoreRead: '/Data Store Read8' - * MATLAB Function: '/Dtg_rear' + /* DataStoreWrite: '/Data Store Write10' incorporates: + * DataStoreRead: '/Data Store Read8' + * MATLAB Function: '/Dtg_rear' */ Dtg_rear(rtB.Merge_b, &rtDW.Dtg_RR); - /* RelationalOperator: '/Equal' incorporates: - * DataStoreRead: '/current step' + /* RelationalOperator: '/Equal' incorporates: + * DataStoreRead: '/current step' */ rtb_LogicalOperator1 = (rtDW.step_start_controle_rear == 1); - /* MATLAB Function: '/Incar temp goto from step 1 to step 2 ' incorporates: - * DataStoreRead: '/Data Store Read3' + /* MATLAB Function: '/Incar temp goto from step 1 to step 2 ' incorporates: + * DataStoreRead: '/Data Store Read3' */ Incartempgotofromstep1tostep2_j(rtB.Merge_b, &Incar_FL); - /* Sum: '/Subtract' incorporates: - * DataStoreRead: '/Data Store Read4' - * UnitDelay: '/t_start_delay_private ' + /* Sum: '/Subtract' incorporates: + * DataStoreRead: '/Data Store Read4' + * UnitDelay: '/t_start_delay_private ' */ rtb_dt_fa = rtDW.t_now - rtDW.t_start_delay_private_DSTATE_o; - /* MATLAB Function: '/Time goto from step 1 to step 2 ' incorporates: - * DataStoreRead: '/Data Store Read4' + /* MATLAB Function: '/Time goto from step 1 to step 2 ' incorporates: + * DataStoreRead: '/Data Store Read4' */ Timegotofromstep1tostep2_l(rtB.Merge_b, &Eva_F); - /* Switch: '/Switch' incorporates: - * DataStoreRead: '/Data Store Read4' - * Logic: '/Logical Operator3' - * Logic: '/Logical Operator4' - * UnitDelay: '/Cond_prev_private ' - * UnitDelay: '/t_start_delay_private ' + /* Switch: '/Switch' incorporates: + * DataStoreRead: '/Data Store Read4' + * Logic: '/Logical Operator3' + * Logic: '/Logical Operator4' + * UnitDelay: '/Cond_prev_private ' + * UnitDelay: '/t_start_delay_private ' */ /* : out = int16(g_assSTART_COOLANT_TO_STEP2(3)); */ if (rtb_LogicalOperator1 && (!rtDW.Cond_prev_private_DSTATE_aw)) { rtDW.t_start_delay_private_DSTATE_o = rtDW.t_now; } - /* End of Switch: '/Switch' */ + /* End of Switch: '/Switch' */ - /* Switch: '/Switch' incorporates: - * DataStoreRead: '/engine coolant temp' - * DataStoreRead: '/incar temp' - * Gain: '/из сек в мс' - * Logic: '/Logical Operator' - * MATLAB Function: '/g_assSTART_COOLANT_TO_STEP2 ' - * RelationalOperator: '/Relational Operator' - * RelationalOperator: '/Relational Operator1' - * RelationalOperator: '/Relational Operator2' + /* Switch: '/Switch' incorporates: + * DataStoreRead: '/engine coolant temp' + * DataStoreRead: '/incar temp' + * Gain: '/из сек в мс' + * Logic: '/Logical Operator' + * MATLAB Function: '/g_assSTART_COOLANT_TO_STEP2 ' + * RelationalOperator: '/Relational Operator' + * RelationalOperator: '/Relational Operator1' + * RelationalOperator: '/Relational Operator2' */ if ((Incar_RR > Incar_FL) || (rtb_dt_fa > (uint16_t)(1000 * Eva_F)) || (rtDW.ECT > g_assSTART_COOLANT_TO_STEP2[2])) { - /* Merge: '/Merge' incorporates: - * Constant: '/go to next step' + /* Merge: '/Merge' incorporates: + * Constant: '/go to next step' */ rtB.Merge_c = 2; } else { - /* Merge: '/Merge' incorporates: - * Constant: '/stay at step 1' + /* Merge: '/Merge' incorporates: + * Constant: '/stay at step 1' */ rtB.Merge_c = 1; } - /* End of Switch: '/Switch' */ + /* End of Switch: '/Switch' */ - /* Update for UnitDelay: '/Cond_prev_private ' */ + /* Update for UnitDelay: '/Cond_prev_private ' */ rtDW.Cond_prev_private_DSTATE_aw = rtb_LogicalOperator1; - /* End of Outputs for SubSystem: '/Level 3' */ + /* End of Outputs for SubSystem: '/Level 3' */ break; case 4: - /* Outputs for IfAction SubSystem: '/Level 4' incorporates: - * ActionPort: '/Action Port' + /* Outputs for IfAction SubSystem: '/Level 4' incorporates: + * ActionPort: '/Action Port' */ - Level4_d(&rtB.Merge_c, &rtb_out_ee, &rtDW.Blower_RR, &Dtg_FUR, - &rtDW.Dtg_RR, &rtDW.ECT, &Incar_RR, &rtb_Gain2_c, &rtb_Gain_ge, + Level4_d(&rtB.Merge_c, &FIU_SET_RR, &rtDW.Blower_RR, &Dtg_FUR, + &rtDW.Dtg_RR, &rtDW.ECT, &Incar_RR, &rtb_Gain2_hu, &rtb_Gain_ge, &rtB.Merge_b, &El_window_heating, &rtDW.Mode_RR, &rtb_Divide1, &Valve_2_way, &rtDW.step_start_controle_rear, &rtDW.t_now, &rtDW.Level4_dp); - /* End of Outputs for SubSystem: '/Level 4' */ + /* End of Outputs for SubSystem: '/Level 4' */ break; case 5: - /* Outputs for IfAction SubSystem: '/Level 5' incorporates: - * ActionPort: '/Action Port' + /* Outputs for IfAction SubSystem: '/Level 5' incorporates: + * ActionPort: '/Action Port' */ - Level4_d(&rtB.Merge_c, &rtb_out_ee, &rtDW.Blower_RR, &Dtg_FUR, - &rtDW.Dtg_RR, &rtDW.ECT, &Incar_RR, &rtb_Gain2_c, &rtb_Gain_ge, + Level4_d(&rtB.Merge_c, &FIU_SET_RR, &rtDW.Blower_RR, &Dtg_FUR, + &rtDW.Dtg_RR, &rtDW.ECT, &Incar_RR, &rtb_Gain2_hu, &rtb_Gain_ge, &rtB.Merge_b, &El_window_heating, &rtDW.Mode_RR, &rtb_Divide1, &Valve_2_way, &rtDW.step_start_controle_rear, &rtDW.t_now, &rtDW.Level5_f); - /* End of Outputs for SubSystem: '/Level 5' */ + /* End of Outputs for SubSystem: '/Level 5' */ break; } - /* End of SwitchCase: '/Switch Case' */ - /* End of Outputs for SubSystem: '/Step 1 R' */ + /* End of SwitchCase: '/Switch Case' */ + /* End of Outputs for SubSystem: '/Step 1 R' */ break; case 2: - /* Outputs for IfAction SubSystem: '/Step 2 R' incorporates: - * ActionPort: '/Action Port' + /* Outputs for IfAction SubSystem: '/Step 2 R' incorporates: + * ActionPort: '/Action Port' */ - /* SwitchCase: '/Switch Case' incorporates: - * DataStoreRead: '/Data Store Read1' + /* SwitchCase: '/Switch Case' incorporates: + * DataStoreRead: '/Data Store Read1' */ switch (rtB.Merge_b) { case 0: - /* Outputs for IfAction SubSystem: '/Level 0' incorporates: - * ActionPort: '/Action Port' + /* Outputs for IfAction SubSystem: '/Level 0' incorporates: + * ActionPort: '/Action Port' */ - /* MATLAB Function: '/2 way valve' incorporates: - * DataStoreRead: '/Data Store Read6' - */ - uwayvalve(rtB.Merge_b, &rtb_Gain_ge); - - /* MATLAB Function: '/step' incorporates: - * DataStoreRead: '/Data Store Read8' - */ - Dtg_rear(rtB.Merge_b, &rtb_Gain_ge); - - /* MATLAB Function: '/time for step' incorporates: - * DataStoreRead: '/Data Store Read8' - */ - timeforstep_jn(rtB.Merge_b, &rtb_Gain2_c); - - /* Switch: '/Switch' incorporates: - * Constant: '/Constant' - * Constant: '/epsilon' - * DataStoreRead: '/Текущее значение blower ' - * DataStoreRead: '/значение auto (в соответствии с логикой)' - * DataStoreRead: '/текущее время в мс' - * DataStoreWrite: '/Data Store Write10' - * Product: '/Product1' - * Product: '/change rate (dtg//sec)' - * Product: '/скорость в мс' - * Product: '/шаг изменения' - * RelationalOperator: '/Relational Operator' - * RelationalOperator: '/Relational Operator' - * Sum: '/Add' - * Sum: '/Add' - * Sum: '/Subtract' - * Switch: '/Switch' - * UnitDelay: '/Unit Delay' - */ - if ((uint8_t)(rtDW.Dtg_RR - rtDW.Dtg_logic_RR) <= 0.01) { - rtDW.Dtg_RR = rtDW.Dtg_logic_RR; - } else { - if (rtDW.Dtg_RR <= rtDW.Dtg_logic_RR) { - /* Switch: '/Switch' incorporates: - * Constant: '/Constant' - */ - q0 = 1; - } else { - /* Switch: '/Switch' incorporates: - * Constant: '/Constant1' - */ - q0 = -1; - } - - rtDW.Dtg_RR = (uint8_t)((double)rtb_Gain_ge / (double)rtb_Gain2_c / - 1000.0 * (double)(rtDW.t_now - rtDW.UnitDelay_DSTATE_d) * (double)q0 - + (double)rtDW.Dtg_RR); - } - - /* End of Switch: '/Switch' */ - - /* MATLAB Function: '/incar filter up' incorporates: - * DataStoreRead: '/Data Store Read1' - */ - incarfilterup_i(rtB.Merge_b, &rtb_Gain_ge); - - /* MATLAB Function: '/incar filter down' incorporates: - * DataStoreRead: '/Data Store Read2' - */ - incarfilterdown_c(rtB.Merge_b, &rtb_Gain_ge); - - /* Sum: '/Add' incorporates: - * DataStoreRead: '/Текущее значение blower ' - * DataStoreRead: '/значение auto (в соответствии с логикой)' - */ - rtb_Gain2_c = (uint8_t)(rtDW.Mode_RR - rtDW.Mode_logic_RR); - - /* RelationalOperator: '/Relational Operator' incorporates: - * Constant: '/epsilon' - */ - rtb_LogicalOperator1 = (rtb_Gain2_c <= 0.01); - - /* MATLAB Function: '/step' incorporates: - * DataStoreRead: '/Data Store Read5' - */ - step_a(rtB.Merge_b, &rtb_Gain_ge); - - /* MATLAB Function: '/time for step' incorporates: - * DataStoreRead: '/Data Store Read5' - */ - timeforstep_h(rtB.Merge_b, &rtb_Gain2_c); - - /* Switch: '/Switch' incorporates: - * Constant: '/Constant' - * DataStoreRead: '/Текущее значение blower ' - * DataStoreRead: '/значение auto (в соответствии с логикой)' - * DataStoreRead: '/текущее время в мс' - * DataStoreWrite: '/Data Store Write2' - * Product: '/Product1' - * Product: '/change rate (step//sec)' - * Product: '/скорость в мс' - * Product: '/шаг изменения' - * RelationalOperator: '/Relational Operator' - * Sum: '/Add' - * Sum: '/Subtract' - * Switch: '/Switch' - * UnitDelay: '/Unit Delay' - */ - if (rtb_LogicalOperator1) { - rtDW.Mode_RR = rtDW.Mode_logic_RR; - } else { - if (rtDW.Mode_RR <= rtDW.Mode_logic_RR) { - /* Switch: '/Switch' incorporates: - * Constant: '/Constant' - */ - q0 = 1; - } else { - /* Switch: '/Switch' incorporates: - * Constant: '/Constant1' - */ - q0 = -1; - } - - rtDW.Mode_RR = (uint8_t)((double)rtb_Gain_ge / (double)rtb_Gain2_c / - 1000.0 * (double)(rtDW.t_now - rtDW.UnitDelay_DSTATE_nc) * (double) - q0 + (double)rtDW.Mode_RR); - } - - /* End of Switch: '/Switch' */ - - /* MATLAB Function: '/blower step' incorporates: - * DataStoreRead: '/Data Store Read7' - */ - blowerstep_d(rtB.Merge_b, &rtb_out_ee); - - /* MATLAB Function: '/blower time for step' incorporates: - * DataStoreRead: '/Data Store Read7' - */ - blowertimeforstep_l(rtB.Merge_b, &rtb_out_bc); - - /* Switch: '/Switch' incorporates: - * Constant: '/Constant' - * Constant: '/epsilon' - * DataStoreRead: '/Текущее значение blower ' - * DataStoreRead: '/значение auto (в соответствии с логикой)' - * DataStoreRead: '/текущее время в мс' - * DataStoreWrite: '/Data Store Write5' - * Product: '/Product1' - * Product: '/change rate (step//sec)' - * Product: '/скорость в мс' - * Product: '/шаг изменения' - * RelationalOperator: '/Relational Operator' - * RelationalOperator: '/Relational Operator' - * Sum: '/Add' - * Sum: '/Add' - * Sum: '/Subtract' - * Switch: '/Switch' - * UnitDelay: '/Unit Delay' - */ - if ((uint16_t)(rtDW.Blower_RR - rtDW.Blower_logic_RR) <= 0.01) { - rtDW.Blower_RR = rtDW.Blower_logic_RR; - } else { - if (rtDW.Blower_RR <= rtDW.Blower_logic_RR) { - /* Switch: '/Switch' incorporates: - * Constant: '/Constant' - */ - q0 = 1; - } else { - /* Switch: '/Switch' incorporates: - * Constant: '/Constant1' - */ - q0 = -1; - } - - rtDW.Blower_RR = (uint16_t)((double)rtb_out_ee / (double)rtb_out_bc / - 1000.0 * (double)(rtDW.t_now - rtDW.UnitDelay_DSTATE_hs) * (double) - q0 + (double)rtDW.Blower_RR); - } - - /* End of Switch: '/Switch' */ - - /* RelationalOperator: '/Equal' incorporates: - * DataStoreRead: '/current step' - */ - rtb_LogicalOperator1 = (rtDW.step_start_controle_rear == 2); - - /* Sum: '/Subtract' incorporates: - * DataStoreRead: '/Data Store Read4' - * UnitDelay: '/t_start_delay_private ' - */ - rtb_dt_fa = rtDW.t_now - rtDW.t_start_delay_private_DSTATE_fvm; - - /* Switch: '/Switch' incorporates: - * DataStoreRead: '/Data Store Read4' - * Logic: '/Logical Operator3' - * Logic: '/Logical Operator4' - * UnitDelay: '/Cond_prev_private ' - * UnitDelay: '/t_start_delay_private ' - */ - if (rtb_LogicalOperator1 && (!rtDW.Cond_prev_private_DSTATE_i5)) { - rtDW.t_start_delay_private_DSTATE_fvm = rtDW.t_now; - } - - /* End of Switch: '/Switch' */ - - /* MATLAB Function: '/Time goto from step 1 to step 2 ' incorporates: - * DataStoreRead: '/Data Store Read4' - */ - Timegotofromstep1tostep2_l(rtB.Merge_b, &Incar_RR); - - /* Switch: '/Switch' incorporates: - * Gain: '/из сек в мс' - * RelationalOperator: '/Relational Operator1' - */ - if (rtb_dt_fa > (uint16_t)(1000 * Incar_RR)) { - /* Merge: '/Merge' incorporates: - * Constant: '/go to next step' - */ - rtB.Merge_c = 3; - } else { - /* Merge: '/Merge' incorporates: - * Constant: '/stay at step' - */ - rtB.Merge_c = 2; - } - - /* End of Switch: '/Switch' */ - - /* Update for UnitDelay: '/Unit Delay' incorporates: - * DataStoreRead: '/текущее время в мс' - */ - rtDW.UnitDelay_DSTATE_d = rtDW.t_now; - - /* Update for UnitDelay: '/Unit Delay' incorporates: - * DataStoreRead: '/текущее время в мс' - */ - rtDW.UnitDelay_DSTATE_nc = rtDW.t_now; - - /* Update for UnitDelay: '/Unit Delay' incorporates: - * DataStoreRead: '/текущее время в мс' - */ - rtDW.UnitDelay_DSTATE_hs = rtDW.t_now; - - /* Update for UnitDelay: '/Cond_prev_private ' */ - rtDW.Cond_prev_private_DSTATE_i5 = rtb_LogicalOperator1; - - /* End of Outputs for SubSystem: '/Level 0' */ - break; - - case 1: - /* Outputs for IfAction SubSystem: '/Level 1' incorporates: - * ActionPort: '/Action Port' - */ - /* MATLAB Function: '/2 way valve' incorporates: - * DataStoreRead: '/Data Store Read6' - */ - uwayvalve(rtB.Merge_b, &rtb_Gain_ge); - - /* MATLAB Function: '/step' incorporates: - * DataStoreRead: '/Data Store Read8' - */ - Dtg_rear(rtB.Merge_b, &rtb_Gain_ge); - - /* MATLAB Function: '/time for step' incorporates: - * DataStoreRead: '/Data Store Read8' - */ - timeforstep_jn(rtB.Merge_b, &rtb_Gain2_c); - - /* Switch: '/Switch' incorporates: - * Constant: '/Constant' - * Constant: '/epsilon' - * DataStoreRead: '/Текущее значение blower ' - * DataStoreRead: '/значение auto (в соответствии с логикой)' - * DataStoreRead: '/текущее время в мс' - * DataStoreWrite: '/Data Store Write10' - * Product: '/Product1' - * Product: '/change rate (dtg//sec)' - * Product: '/скорость в мс' - * Product: '/шаг изменения' - * RelationalOperator: '/Relational Operator' - * RelationalOperator: '/Relational Operator' - * Sum: '/Add' - * Sum: '/Add' - * Sum: '/Subtract' - * Switch: '/Switch' - * UnitDelay: '/Unit Delay' - */ - if ((uint8_t)(rtDW.Dtg_RR - rtDW.Dtg_logic_RR) <= 0.01) { - rtDW.Dtg_RR = rtDW.Dtg_logic_RR; - } else { - if (rtDW.Dtg_RR <= rtDW.Dtg_logic_RR) { - /* Switch: '/Switch' incorporates: - * Constant: '/Constant' - */ - q0 = 1; - } else { - /* Switch: '/Switch' incorporates: - * Constant: '/Constant1' - */ - q0 = -1; - } - - rtDW.Dtg_RR = (uint8_t)((double)rtb_Gain_ge / (double)rtb_Gain2_c / - 1000.0 * (double)(rtDW.t_now - rtDW.UnitDelay_DSTATE_g) * (double)q0 - + (double)rtDW.Dtg_RR); - } - - /* End of Switch: '/Switch' */ - - /* MATLAB Function: '/incar filter up' incorporates: - * DataStoreRead: '/Data Store Read1' - */ - incarfilterup_i(rtB.Merge_b, &rtb_Gain_ge); - - /* MATLAB Function: '/incar filter down' incorporates: - * DataStoreRead: '/Data Store Read2' - */ - incarfilterdown_c(rtB.Merge_b, &rtb_Gain_ge); - - /* Sum: '/Add' incorporates: - * DataStoreRead: '/Текущее значение blower ' - * DataStoreRead: '/значение auto (в соответствии с логикой)' - */ - rtb_Gain2_c = (uint8_t)(rtDW.Mode_RR - rtDW.Mode_logic_RR); - - /* RelationalOperator: '/Relational Operator' incorporates: - * Constant: '/epsilon' - */ - rtb_LogicalOperator1 = (rtb_Gain2_c <= 0.01); - - /* MATLAB Function: '/step' incorporates: - * DataStoreRead: '/Data Store Read5' - */ - step_a(rtB.Merge_b, &rtb_Gain_ge); - - /* MATLAB Function: '/time for step' incorporates: - * DataStoreRead: '/Data Store Read5' - */ - timeforstep_h(rtB.Merge_b, &rtb_Gain2_c); - - /* Switch: '/Switch' incorporates: - * Constant: '/Constant' - * DataStoreRead: '/Текущее значение blower ' - * DataStoreRead: '/значение auto (в соответствии с логикой)' - * DataStoreRead: '/текущее время в мс' - * DataStoreWrite: '/Data Store Write2' - * Product: '/Product1' - * Product: '/change rate (step//sec)' - * Product: '/скорость в мс' - * Product: '/шаг изменения' - * RelationalOperator: '/Relational Operator' - * Sum: '/Add' - * Sum: '/Subtract' - * Switch: '/Switch' - * UnitDelay: '/Unit Delay' - */ - if (rtb_LogicalOperator1) { - rtDW.Mode_RR = rtDW.Mode_logic_RR; - } else { - if (rtDW.Mode_RR <= rtDW.Mode_logic_RR) { - /* Switch: '/Switch' incorporates: - * Constant: '/Constant' - */ - q0 = 1; - } else { - /* Switch: '/Switch' incorporates: - * Constant: '/Constant1' - */ - q0 = -1; - } - - rtDW.Mode_RR = (uint8_t)((double)rtb_Gain_ge / (double)rtb_Gain2_c / - 1000.0 * (double)(rtDW.t_now - rtDW.UnitDelay_DSTATE_p) * (double)q0 - + (double)rtDW.Mode_RR); - } - - /* End of Switch: '/Switch' */ - - /* MATLAB Function: '/blower step' incorporates: - * DataStoreRead: '/Data Store Read7' - */ - blowerstep_d(rtB.Merge_b, &rtb_out_ee); - - /* MATLAB Function: '/blower time for step' incorporates: - * DataStoreRead: '/Data Store Read7' - */ - blowertimeforstep_l(rtB.Merge_b, &rtb_out_bc); - - /* Switch: '/Switch' incorporates: - * Constant: '/Constant' - * Constant: '/epsilon' - * DataStoreRead: '/Текущее значение blower ' - * DataStoreRead: '/значение auto (в соответствии с логикой)' - * DataStoreRead: '/текущее время в мс' - * DataStoreWrite: '/Data Store Write5' - * Product: '/Product1' - * Product: '/change rate (step//sec)' - * Product: '/скорость в мс' - * Product: '/шаг изменения' - * RelationalOperator: '/Relational Operator' - * RelationalOperator: '/Relational Operator' - * Sum: '/Add' - * Sum: '/Add' - * Sum: '/Subtract' - * Switch: '/Switch' - * UnitDelay: '/Unit Delay' - */ - if ((uint16_t)(rtDW.Blower_RR - rtDW.Blower_logic_RR) <= 0.01) { - rtDW.Blower_RR = rtDW.Blower_logic_RR; - } else { - if (rtDW.Blower_RR <= rtDW.Blower_logic_RR) { - /* Switch: '/Switch' incorporates: - * Constant: '/Constant' - */ - q0 = 1; - } else { - /* Switch: '/Switch' incorporates: - * Constant: '/Constant1' - */ - q0 = -1; - } - - rtDW.Blower_RR = (uint16_t)((double)rtb_out_ee / (double)rtb_out_bc / - 1000.0 * (double)(rtDW.t_now - rtDW.UnitDelay_DSTATE_j) * (double)q0 - + (double)rtDW.Blower_RR); - } - - /* End of Switch: '/Switch' */ - - /* RelationalOperator: '/Equal' incorporates: - * DataStoreRead: '/current step' - */ - rtb_LogicalOperator1 = (rtDW.step_start_controle_rear == 2); - - /* Sum: '/Subtract' incorporates: - * DataStoreRead: '/Data Store Read4' - * UnitDelay: '/t_start_delay_private ' - */ - rtb_dt_fa = rtDW.t_now - rtDW.t_start_delay_private_DSTATE_jh; - - /* Switch: '/Switch' incorporates: - * DataStoreRead: '/Data Store Read4' - * Logic: '/Logical Operator3' - * Logic: '/Logical Operator4' - * UnitDelay: '/Cond_prev_private ' - * UnitDelay: '/t_start_delay_private ' - */ - if (rtb_LogicalOperator1 && (!rtDW.Cond_prev_private_DSTATE_j)) { - rtDW.t_start_delay_private_DSTATE_jh = rtDW.t_now; - } - - /* End of Switch: '/Switch' */ - - /* MATLAB Function: '/Time goto from step 1 to step 2 ' incorporates: - * DataStoreRead: '/Data Store Read4' - */ - Timegotofromstep1tostep2_l(rtB.Merge_b, &Incar_RR); - - /* Switch: '/Switch' incorporates: - * Gain: '/из сек в мс' - * RelationalOperator: '/Relational Operator1' - */ - if (rtb_dt_fa > (uint16_t)(1000 * Incar_RR)) { - /* Merge: '/Merge' incorporates: - * Constant: '/go to next step' - */ - rtB.Merge_c = 3; - } else { - /* Merge: '/Merge' incorporates: - * Constant: '/stay at step' - */ - rtB.Merge_c = 2; - } - - /* End of Switch: '/Switch' */ - - /* Update for UnitDelay: '/Unit Delay' incorporates: - * DataStoreRead: '/текущее время в мс' - */ - rtDW.UnitDelay_DSTATE_g = rtDW.t_now; - - /* Update for UnitDelay: '/Unit Delay' incorporates: - * DataStoreRead: '/текущее время в мс' - */ - rtDW.UnitDelay_DSTATE_p = rtDW.t_now; - - /* Update for UnitDelay: '/Unit Delay' incorporates: - * DataStoreRead: '/текущее время в мс' - */ - rtDW.UnitDelay_DSTATE_j = rtDW.t_now; - - /* Update for UnitDelay: '/Cond_prev_private ' */ - rtDW.Cond_prev_private_DSTATE_j = rtb_LogicalOperator1; - - /* End of Outputs for SubSystem: '/Level 1' */ - break; - - case 2: - /* Outputs for IfAction SubSystem: '/Level 2' incorporates: - * ActionPort: '/Action Port' - */ - /* MATLAB Function: '/2 way valve' incorporates: - * DataStoreRead: '/Data Store Read6' + /* MATLAB Function: '/2 way valve' incorporates: + * DataStoreRead: '/Data Store Read6' */ uwayvalve(rtB.Merge_b, &rtb_Gain_ge); /* MATLAB Function: '/step' incorporates: - * DataStoreRead: '/Data Store Read8' + * DataStoreRead: '/Data Store Read8' */ Dtg_rear(rtB.Merge_b, &rtb_Gain_ge); /* MATLAB Function: '/time for step' incorporates: - * DataStoreRead: '/Data Store Read8' + * DataStoreRead: '/Data Store Read8' */ - timeforstep_jn(rtB.Merge_b, &rtb_Gain2_c); + timeforstep_jn(rtB.Merge_b, &rtb_Gain2_hu); /* Switch: '/Switch' incorporates: * Constant: '/Constant' @@ -15856,7 +16258,7 @@ void HVAC_model_step(void) * DataStoreRead: '/Текущее значение blower ' * DataStoreRead: '/значение auto (в соответствии с логикой)' * DataStoreRead: '/текущее время в мс' - * DataStoreWrite: '/Data Store Write10' + * DataStoreWrite: '/Data Store Write10' * Product: '/Product1' * Product: '/change rate (dtg//sec)' * Product: '/скорость в мс' @@ -15876,28 +16278,28 @@ void HVAC_model_step(void) /* Switch: '/Switch' incorporates: * Constant: '/Constant' */ - q0 = 1; + y = 1; } else { /* Switch: '/Switch' incorporates: * Constant: '/Constant1' */ - q0 = -1; + y = -1; } - rtDW.Dtg_RR = (uint8_t)((double)rtb_Gain_ge / (double)rtb_Gain2_c / - 1000.0 * (double)(rtDW.t_now - rtDW.UnitDelay_DSTATE) * (double)q0 + - (double)rtDW.Dtg_RR); + rtDW.Dtg_RR = (uint8_t)((double)rtb_Gain_ge / (double)rtb_Gain2_hu / + 1000.0 * (double)(rtDW.t_now - rtDW.UnitDelay_DSTATE_d) * (double)y + + (double)rtDW.Dtg_RR); } /* End of Switch: '/Switch' */ - /* MATLAB Function: '/incar filter up' incorporates: - * DataStoreRead: '/Data Store Read1' + /* MATLAB Function: '/incar filter up' incorporates: + * DataStoreRead: '/Data Store Read1' */ incarfilterup_i(rtB.Merge_b, &rtb_Gain_ge); - /* MATLAB Function: '/incar filter down' incorporates: - * DataStoreRead: '/Data Store Read2' + /* MATLAB Function: '/incar filter down' incorporates: + * DataStoreRead: '/Data Store Read2' */ incarfilterdown_c(rtB.Merge_b, &rtb_Gain_ge); @@ -15905,29 +16307,29 @@ void HVAC_model_step(void) * DataStoreRead: '/Текущее значение blower ' * DataStoreRead: '/значение auto (в соответствии с логикой)' */ - rtb_Gain2_c = (uint8_t)(rtDW.Mode_RR - rtDW.Mode_logic_RR); + rtb_Gain2_hu = (uint8_t)(rtDW.Mode_RR - rtDW.Mode_logic_RR); /* RelationalOperator: '/Relational Operator' incorporates: * Constant: '/epsilon' */ - rtb_LogicalOperator1 = (rtb_Gain2_c <= 0.01); + rtb_LogicalOperator1 = (rtb_Gain2_hu <= 0.01); /* MATLAB Function: '/step' incorporates: - * DataStoreRead: '/Data Store Read5' + * DataStoreRead: '/Data Store Read5' */ step_a(rtB.Merge_b, &rtb_Gain_ge); /* MATLAB Function: '/time for step' incorporates: - * DataStoreRead: '/Data Store Read5' + * DataStoreRead: '/Data Store Read5' */ - timeforstep_h(rtB.Merge_b, &rtb_Gain2_c); + timeforstep_h(rtB.Merge_b, &rtb_Gain2_hu); /* Switch: '/Switch' incorporates: * Constant: '/Constant' * DataStoreRead: '/Текущее значение blower ' * DataStoreRead: '/значение auto (в соответствии с логикой)' * DataStoreRead: '/текущее время в мс' - * DataStoreWrite: '/Data Store Write2' + * DataStoreWrite: '/Data Store Write2' * Product: '/Product1' * Product: '/change rate (step//sec)' * Product: '/скорость в мс' @@ -15945,30 +16347,30 @@ void HVAC_model_step(void) /* Switch: '/Switch' incorporates: * Constant: '/Constant' */ - q0 = 1; + y = 1; } else { /* Switch: '/Switch' incorporates: * Constant: '/Constant1' */ - q0 = -1; + y = -1; } - rtDW.Mode_RR = (uint8_t)((double)rtb_Gain_ge / (double)rtb_Gain2_c / - 1000.0 * (double)(rtDW.t_now - rtDW.UnitDelay_DSTATE_h) * (double)q0 + rtDW.Mode_RR = (uint8_t)((double)rtb_Gain_ge / (double)rtb_Gain2_hu / + 1000.0 * (double)(rtDW.t_now - rtDW.UnitDelay_DSTATE_nc) * (double)y + (double)rtDW.Mode_RR); } /* End of Switch: '/Switch' */ /* MATLAB Function: '/blower step' incorporates: - * DataStoreRead: '/Data Store Read7' + * DataStoreRead: '/Data Store Read7' */ - blowerstep_d(rtB.Merge_b, &rtb_out_ee); + blowerstep_d(rtB.Merge_b, &FIU_SET_RR); /* MATLAB Function: '/blower time for step' incorporates: - * DataStoreRead: '/Data Store Read7' + * DataStoreRead: '/Data Store Read7' */ - blowertimeforstep_l(rtB.Merge_b, &rtb_out_bc); + blowertimeforstep_l(rtB.Merge_b, &rtb_out_oc); /* Switch: '/Switch' incorporates: * Constant: '/Constant' @@ -15976,7 +16378,7 @@ void HVAC_model_step(void) * DataStoreRead: '/Текущее значение blower ' * DataStoreRead: '/значение auto (в соответствии с логикой)' * DataStoreRead: '/текущее время в мс' - * DataStoreWrite: '/Data Store Write5' + * DataStoreWrite: '/Data Store Write5' * Product: '/Product1' * Product: '/change rate (step//sec)' * Product: '/скорость в мс' @@ -15996,23 +16398,23 @@ void HVAC_model_step(void) /* Switch: '/Switch' incorporates: * Constant: '/Constant' */ - q0 = 1; + y = 1; } else { /* Switch: '/Switch' incorporates: * Constant: '/Constant1' */ - q0 = -1; + y = -1; } - rtDW.Blower_RR = (uint16_t)((double)rtb_out_ee / (double)rtb_out_bc / - 1000.0 * (double)(rtDW.t_now - rtDW.UnitDelay_DSTATE_n) * (double)q0 + rtDW.Blower_RR = (uint16_t)((double)FIU_SET_RR / (double)rtb_out_oc / + 1000.0 * (double)(rtDW.t_now - rtDW.UnitDelay_DSTATE_hs) * (double)y + (double)rtDW.Blower_RR); } /* End of Switch: '/Switch' */ - /* RelationalOperator: '/Equal' incorporates: - * DataStoreRead: '/current step' + /* RelationalOperator: '/Equal' incorporates: + * DataStoreRead: '/current step' */ rtb_LogicalOperator1 = (rtDW.step_start_controle_rear == 2); @@ -16020,12 +16422,7 @@ void HVAC_model_step(void) * DataStoreRead: '/Data Store Read4' * UnitDelay: '/t_start_delay_private ' */ - rtb_dt_fa = rtDW.t_now - rtDW.t_start_delay_private_DSTATE_ed; - - /* MATLAB Function: '/Time goto from step 1 to step 2 ' incorporates: - * DataStoreRead: '/Data Store Read4' - */ - Timegotofromstep1tostep2_l(rtB.Merge_b, &Incar_RR); + rtb_dt_fa = rtDW.t_now - rtDW.t_start_delay_private_DSTATE_fvm; /* Switch: '/Switch' incorporates: * DataStoreRead: '/Data Store Read4' @@ -16034,113 +16431,614 @@ void HVAC_model_step(void) * UnitDelay: '/Cond_prev_private ' * UnitDelay: '/t_start_delay_private ' */ - if (rtb_LogicalOperator1 && (!rtDW.Cond_prev_private_DSTATE_ei)) { - rtDW.t_start_delay_private_DSTATE_ed = rtDW.t_now; + if (rtb_LogicalOperator1 && (!rtDW.Cond_prev_private_DSTATE_i5)) { + rtDW.t_start_delay_private_DSTATE_fvm = rtDW.t_now; } /* End of Switch: '/Switch' */ - /* Switch: '/Switch' incorporates: - * DataStoreRead: '/Data Store Read' - * Gain: '/из сек в мс' - * Logic: '/Logical Operator' - * RelationalOperator: '/Relational Operator1' + /* MATLAB Function: '/Time goto from step 1 to step 2 ' incorporates: + * DataStoreRead: '/Data Store Read4' */ - if ((rtb_dt_fa > (uint16_t)(1000 * Incar_RR)) || rtDW.HI_logic_on) { - /* Merge: '/Merge' incorporates: - * Constant: '/go to next step' + Timegotofromstep1tostep2_l(rtB.Merge_b, &Incar_RR); + + /* Switch: '/Switch' incorporates: + * Gain: '/из сек в мс' + * RelationalOperator: '/Relational Operator1' + */ + if (rtb_dt_fa > (uint16_t)(1000 * Incar_RR)) { + /* Merge: '/Merge' incorporates: + * Constant: '/go to next step' */ rtB.Merge_c = 3; } else { - /* Merge: '/Merge' incorporates: - * Constant: '/stay at step' + /* Merge: '/Merge' incorporates: + * Constant: '/stay at step' */ rtB.Merge_c = 2; } - /* End of Switch: '/Switch' */ + /* End of Switch: '/Switch' */ /* Update for UnitDelay: '/Unit Delay' incorporates: * DataStoreRead: '/текущее время в мс' */ - rtDW.UnitDelay_DSTATE = rtDW.t_now; + rtDW.UnitDelay_DSTATE_d = rtDW.t_now; /* Update for UnitDelay: '/Unit Delay' incorporates: * DataStoreRead: '/текущее время в мс' */ - rtDW.UnitDelay_DSTATE_h = rtDW.t_now; + rtDW.UnitDelay_DSTATE_nc = rtDW.t_now; /* Update for UnitDelay: '/Unit Delay' incorporates: * DataStoreRead: '/текущее время в мс' */ - rtDW.UnitDelay_DSTATE_n = rtDW.t_now; + rtDW.UnitDelay_DSTATE_hs = rtDW.t_now; /* Update for UnitDelay: '/Cond_prev_private ' */ + rtDW.Cond_prev_private_DSTATE_i5 = rtb_LogicalOperator1; + + /* End of Outputs for SubSystem: '/Level 0' */ + break; + + case 1: + /* Outputs for IfAction SubSystem: '/Level 1' incorporates: + * ActionPort: '/Action Port' + */ + /* MATLAB Function: '/2 way valve' incorporates: + * DataStoreRead: '/Data Store Read6' + */ + uwayvalve(rtB.Merge_b, &rtb_Gain_ge); + + /* MATLAB Function: '/step' incorporates: + * DataStoreRead: '/Data Store Read8' + */ + Dtg_rear(rtB.Merge_b, &rtb_Gain_ge); + + /* MATLAB Function: '/time for step' incorporates: + * DataStoreRead: '/Data Store Read8' + */ + timeforstep_jn(rtB.Merge_b, &rtb_Gain2_hu); + + /* Switch: '/Switch' incorporates: + * Constant: '/Constant' + * Constant: '/epsilon' + * DataStoreRead: '/Текущее значение blower ' + * DataStoreRead: '/значение auto (в соответствии с логикой)' + * DataStoreRead: '/текущее время в мс' + * DataStoreWrite: '/Data Store Write10' + * Product: '/Product1' + * Product: '/change rate (dtg//sec)' + * Product: '/скорость в мс' + * Product: '/шаг изменения' + * RelationalOperator: '/Relational Operator' + * RelationalOperator: '/Relational Operator' + * Sum: '/Add' + * Sum: '/Add' + * Sum: '/Subtract' + * Switch: '/Switch' + * UnitDelay: '/Unit Delay' + */ + if ((uint8_t)(rtDW.Dtg_RR - rtDW.Dtg_logic_RR) <= 0.01) { + rtDW.Dtg_RR = rtDW.Dtg_logic_RR; + } else { + if (rtDW.Dtg_RR <= rtDW.Dtg_logic_RR) { + /* Switch: '/Switch' incorporates: + * Constant: '/Constant' + */ + y = 1; + } else { + /* Switch: '/Switch' incorporates: + * Constant: '/Constant1' + */ + y = -1; + } + + rtDW.Dtg_RR = (uint8_t)((double)rtb_Gain_ge / (double)rtb_Gain2_hu / + 1000.0 * (double)(rtDW.t_now - rtDW.UnitDelay_DSTATE_g) * (double)y + + (double)rtDW.Dtg_RR); + } + + /* End of Switch: '/Switch' */ + + /* MATLAB Function: '/incar filter up' incorporates: + * DataStoreRead: '/Data Store Read1' + */ + incarfilterup_i(rtB.Merge_b, &rtb_Gain_ge); + + /* MATLAB Function: '/incar filter down' incorporates: + * DataStoreRead: '/Data Store Read2' + */ + incarfilterdown_c(rtB.Merge_b, &rtb_Gain_ge); + + /* Sum: '/Add' incorporates: + * DataStoreRead: '/Текущее значение blower ' + * DataStoreRead: '/значение auto (в соответствии с логикой)' + */ + rtb_Gain2_hu = (uint8_t)(rtDW.Mode_RR - rtDW.Mode_logic_RR); + + /* RelationalOperator: '/Relational Operator' incorporates: + * Constant: '/epsilon' + */ + rtb_LogicalOperator1 = (rtb_Gain2_hu <= 0.01); + + /* MATLAB Function: '/step' incorporates: + * DataStoreRead: '/Data Store Read5' + */ + step_a(rtB.Merge_b, &rtb_Gain_ge); + + /* MATLAB Function: '/time for step' incorporates: + * DataStoreRead: '/Data Store Read5' + */ + timeforstep_h(rtB.Merge_b, &rtb_Gain2_hu); + + /* Switch: '/Switch' incorporates: + * Constant: '/Constant' + * DataStoreRead: '/Текущее значение blower ' + * DataStoreRead: '/значение auto (в соответствии с логикой)' + * DataStoreRead: '/текущее время в мс' + * DataStoreWrite: '/Data Store Write2' + * Product: '/Product1' + * Product: '/change rate (step//sec)' + * Product: '/скорость в мс' + * Product: '/шаг изменения' + * RelationalOperator: '/Relational Operator' + * Sum: '/Add' + * Sum: '/Subtract' + * Switch: '/Switch' + * UnitDelay: '/Unit Delay' + */ + if (rtb_LogicalOperator1) { + rtDW.Mode_RR = rtDW.Mode_logic_RR; + } else { + if (rtDW.Mode_RR <= rtDW.Mode_logic_RR) { + /* Switch: '/Switch' incorporates: + * Constant: '/Constant' + */ + y = 1; + } else { + /* Switch: '/Switch' incorporates: + * Constant: '/Constant1' + */ + y = -1; + } + + rtDW.Mode_RR = (uint8_t)((double)rtb_Gain_ge / (double)rtb_Gain2_hu / + 1000.0 * (double)(rtDW.t_now - rtDW.UnitDelay_DSTATE_p) * (double)y + + (double)rtDW.Mode_RR); + } + + /* End of Switch: '/Switch' */ + + /* MATLAB Function: '/blower step' incorporates: + * DataStoreRead: '/Data Store Read7' + */ + blowerstep_d(rtB.Merge_b, &FIU_SET_RR); + + /* MATLAB Function: '/blower time for step' incorporates: + * DataStoreRead: '/Data Store Read7' + */ + blowertimeforstep_l(rtB.Merge_b, &rtb_out_oc); + + /* Switch: '/Switch' incorporates: + * Constant: '/Constant' + * Constant: '/epsilon' + * DataStoreRead: '/Текущее значение blower ' + * DataStoreRead: '/значение auto (в соответствии с логикой)' + * DataStoreRead: '/текущее время в мс' + * DataStoreWrite: '/Data Store Write5' + * Product: '/Product1' + * Product: '/change rate (step//sec)' + * Product: '/скорость в мс' + * Product: '/шаг изменения' + * RelationalOperator: '/Relational Operator' + * RelationalOperator: '/Relational Operator' + * Sum: '/Add' + * Sum: '/Add' + * Sum: '/Subtract' + * Switch: '/Switch' + * UnitDelay: '/Unit Delay' + */ + if ((uint16_t)(rtDW.Blower_RR - rtDW.Blower_logic_RR) <= 0.01) { + rtDW.Blower_RR = rtDW.Blower_logic_RR; + } else { + if (rtDW.Blower_RR <= rtDW.Blower_logic_RR) { + /* Switch: '/Switch' incorporates: + * Constant: '/Constant' + */ + y = 1; + } else { + /* Switch: '/Switch' incorporates: + * Constant: '/Constant1' + */ + y = -1; + } + + rtDW.Blower_RR = (uint16_t)((double)FIU_SET_RR / (double)rtb_out_oc / + 1000.0 * (double)(rtDW.t_now - rtDW.UnitDelay_DSTATE_j) * (double)y + + (double)rtDW.Blower_RR); + } + + /* End of Switch: '/Switch' */ + + /* RelationalOperator: '/Equal' incorporates: + * DataStoreRead: '/current step' + */ + rtb_LogicalOperator1 = (rtDW.step_start_controle_rear == 2); + + /* Sum: '/Subtract' incorporates: + * DataStoreRead: '/Data Store Read4' + * UnitDelay: '/t_start_delay_private ' + */ + rtb_dt_fa = rtDW.t_now - rtDW.t_start_delay_private_DSTATE_jh; + + /* Switch: '/Switch' incorporates: + * DataStoreRead: '/Data Store Read4' + * Logic: '/Logical Operator3' + * Logic: '/Logical Operator4' + * UnitDelay: '/Cond_prev_private ' + * UnitDelay: '/t_start_delay_private ' + */ + if (rtb_LogicalOperator1 && (!rtDW.Cond_prev_private_DSTATE_j)) { + rtDW.t_start_delay_private_DSTATE_jh = rtDW.t_now; + } + + /* End of Switch: '/Switch' */ + + /* MATLAB Function: '/Time goto from step 1 to step 2 ' incorporates: + * DataStoreRead: '/Data Store Read4' + */ + Timegotofromstep1tostep2_l(rtB.Merge_b, &Incar_RR); + + /* Switch: '/Switch' incorporates: + * Gain: '/из сек в мс' + * RelationalOperator: '/Relational Operator1' + */ + if (rtb_dt_fa > (uint16_t)(1000 * Incar_RR)) { + /* Merge: '/Merge' incorporates: + * Constant: '/go to next step' + */ + rtB.Merge_c = 3; + } else { + /* Merge: '/Merge' incorporates: + * Constant: '/stay at step' + */ + rtB.Merge_c = 2; + } + + /* End of Switch: '/Switch' */ + + /* Update for UnitDelay: '/Unit Delay' incorporates: + * DataStoreRead: '/текущее время в мс' + */ + rtDW.UnitDelay_DSTATE_g = rtDW.t_now; + + /* Update for UnitDelay: '/Unit Delay' incorporates: + * DataStoreRead: '/текущее время в мс' + */ + rtDW.UnitDelay_DSTATE_p = rtDW.t_now; + + /* Update for UnitDelay: '/Unit Delay' incorporates: + * DataStoreRead: '/текущее время в мс' + */ + rtDW.UnitDelay_DSTATE_j = rtDW.t_now; + + /* Update for UnitDelay: '/Cond_prev_private ' */ + rtDW.Cond_prev_private_DSTATE_j = rtb_LogicalOperator1; + + /* End of Outputs for SubSystem: '/Level 1' */ + break; + + case 2: + /* Outputs for IfAction SubSystem: '/Level 2' incorporates: + * ActionPort: '/Action Port' + */ + /* MATLAB Function: '/2 way valve' incorporates: + * DataStoreRead: '/Data Store Read6' + */ + uwayvalve(rtB.Merge_b, &rtb_Gain_ge); + + /* MATLAB Function: '/step' incorporates: + * DataStoreRead: '/Data Store Read8' + */ + Dtg_rear(rtB.Merge_b, &rtb_Gain_ge); + + /* MATLAB Function: '/time for step' incorporates: + * DataStoreRead: '/Data Store Read8' + */ + timeforstep_jn(rtB.Merge_b, &rtb_Gain2_hu); + + /* Switch: '/Switch' incorporates: + * Constant: '/Constant' + * Constant: '/epsilon' + * DataStoreRead: '/Текущее значение blower ' + * DataStoreRead: '/значение auto (в соответствии с логикой)' + * DataStoreRead: '/текущее время в мс' + * DataStoreWrite: '/Data Store Write10' + * Product: '/Product1' + * Product: '/change rate (dtg//sec)' + * Product: '/скорость в мс' + * Product: '/шаг изменения' + * RelationalOperator: '/Relational Operator' + * RelationalOperator: '/Relational Operator' + * Sum: '/Add' + * Sum: '/Add' + * Sum: '/Subtract' + * Switch: '/Switch' + * UnitDelay: '/Unit Delay' + */ + if ((uint8_t)(rtDW.Dtg_RR - rtDW.Dtg_logic_RR) <= 0.01) { + rtDW.Dtg_RR = rtDW.Dtg_logic_RR; + } else { + if (rtDW.Dtg_RR <= rtDW.Dtg_logic_RR) { + /* Switch: '/Switch' incorporates: + * Constant: '/Constant' + */ + y = 1; + } else { + /* Switch: '/Switch' incorporates: + * Constant: '/Constant1' + */ + y = -1; + } + + rtDW.Dtg_RR = (uint8_t)((double)rtb_Gain_ge / (double)rtb_Gain2_hu / + 1000.0 * (double)(rtDW.t_now - rtDW.UnitDelay_DSTATE) * (double)y + + (double)rtDW.Dtg_RR); + } + + /* End of Switch: '/Switch' */ + + /* MATLAB Function: '/incar filter up' incorporates: + * DataStoreRead: '/Data Store Read1' + */ + incarfilterup_i(rtB.Merge_b, &rtb_Gain_ge); + + /* MATLAB Function: '/incar filter down' incorporates: + * DataStoreRead: '/Data Store Read2' + */ + incarfilterdown_c(rtB.Merge_b, &rtb_Gain_ge); + + /* Sum: '/Add' incorporates: + * DataStoreRead: '/Текущее значение blower ' + * DataStoreRead: '/значение auto (в соответствии с логикой)' + */ + rtb_Gain2_hu = (uint8_t)(rtDW.Mode_RR - rtDW.Mode_logic_RR); + + /* RelationalOperator: '/Relational Operator' incorporates: + * Constant: '/epsilon' + */ + rtb_LogicalOperator1 = (rtb_Gain2_hu <= 0.01); + + /* MATLAB Function: '/step' incorporates: + * DataStoreRead: '/Data Store Read5' + */ + step_a(rtB.Merge_b, &rtb_Gain_ge); + + /* MATLAB Function: '/time for step' incorporates: + * DataStoreRead: '/Data Store Read5' + */ + timeforstep_h(rtB.Merge_b, &rtb_Gain2_hu); + + /* Switch: '/Switch' incorporates: + * Constant: '/Constant' + * DataStoreRead: '/Текущее значение blower ' + * DataStoreRead: '/значение auto (в соответствии с логикой)' + * DataStoreRead: '/текущее время в мс' + * DataStoreWrite: '/Data Store Write2' + * Product: '/Product1' + * Product: '/change rate (step//sec)' + * Product: '/скорость в мс' + * Product: '/шаг изменения' + * RelationalOperator: '/Relational Operator' + * Sum: '/Add' + * Sum: '/Subtract' + * Switch: '/Switch' + * UnitDelay: '/Unit Delay' + */ + if (rtb_LogicalOperator1) { + rtDW.Mode_RR = rtDW.Mode_logic_RR; + } else { + if (rtDW.Mode_RR <= rtDW.Mode_logic_RR) { + /* Switch: '/Switch' incorporates: + * Constant: '/Constant' + */ + y = 1; + } else { + /* Switch: '/Switch' incorporates: + * Constant: '/Constant1' + */ + y = -1; + } + + rtDW.Mode_RR = (uint8_t)((double)rtb_Gain_ge / (double)rtb_Gain2_hu / + 1000.0 * (double)(rtDW.t_now - rtDW.UnitDelay_DSTATE_h) * (double)y + + (double)rtDW.Mode_RR); + } + + /* End of Switch: '/Switch' */ + + /* MATLAB Function: '/blower step' incorporates: + * DataStoreRead: '/Data Store Read7' + */ + blowerstep_d(rtB.Merge_b, &FIU_SET_RR); + + /* MATLAB Function: '/blower time for step' incorporates: + * DataStoreRead: '/Data Store Read7' + */ + blowertimeforstep_l(rtB.Merge_b, &rtb_out_oc); + + /* Switch: '/Switch' incorporates: + * Constant: '/Constant' + * Constant: '/epsilon' + * DataStoreRead: '/Текущее значение blower ' + * DataStoreRead: '/значение auto (в соответствии с логикой)' + * DataStoreRead: '/текущее время в мс' + * DataStoreWrite: '/Data Store Write5' + * Product: '/Product1' + * Product: '/change rate (step//sec)' + * Product: '/скорость в мс' + * Product: '/шаг изменения' + * RelationalOperator: '/Relational Operator' + * RelationalOperator: '/Relational Operator' + * Sum: '/Add' + * Sum: '/Add' + * Sum: '/Subtract' + * Switch: '/Switch' + * UnitDelay: '/Unit Delay' + */ + if ((uint16_t)(rtDW.Blower_RR - rtDW.Blower_logic_RR) <= 0.01) { + rtDW.Blower_RR = rtDW.Blower_logic_RR; + } else { + if (rtDW.Blower_RR <= rtDW.Blower_logic_RR) { + /* Switch: '/Switch' incorporates: + * Constant: '/Constant' + */ + y = 1; + } else { + /* Switch: '/Switch' incorporates: + * Constant: '/Constant1' + */ + y = -1; + } + + rtDW.Blower_RR = (uint16_t)((double)FIU_SET_RR / (double)rtb_out_oc / + 1000.0 * (double)(rtDW.t_now - rtDW.UnitDelay_DSTATE_n) * (double)y + + (double)rtDW.Blower_RR); + } + + /* End of Switch: '/Switch' */ + + /* RelationalOperator: '/Equal' incorporates: + * DataStoreRead: '/current step' + */ + rtb_LogicalOperator1 = (rtDW.step_start_controle_rear == 2); + + /* Sum: '/Subtract' incorporates: + * DataStoreRead: '/Data Store Read4' + * UnitDelay: '/t_start_delay_private ' + */ + rtb_dt_fa = rtDW.t_now - rtDW.t_start_delay_private_DSTATE_ed; + + /* MATLAB Function: '/Time goto from step 1 to step 2 ' incorporates: + * DataStoreRead: '/Data Store Read4' + */ + Timegotofromstep1tostep2_l(rtB.Merge_b, &Incar_RR); + + /* Switch: '/Switch' incorporates: + * DataStoreRead: '/Data Store Read4' + * Logic: '/Logical Operator3' + * Logic: '/Logical Operator4' + * UnitDelay: '/Cond_prev_private ' + * UnitDelay: '/t_start_delay_private ' + */ + if (rtb_LogicalOperator1 && (!rtDW.Cond_prev_private_DSTATE_ei)) { + rtDW.t_start_delay_private_DSTATE_ed = rtDW.t_now; + } + + /* End of Switch: '/Switch' */ + + /* Switch: '/Switch' incorporates: + * DataStoreRead: '/Data Store Read' + * Gain: '/из сек в мс' + * Logic: '/Logical Operator' + * RelationalOperator: '/Relational Operator1' + */ + if ((rtb_dt_fa > (uint16_t)(1000 * Incar_RR)) || rtDW.HI_logic_on) { + /* Merge: '/Merge' incorporates: + * Constant: '/go to next step' + */ + rtB.Merge_c = 3; + } else { + /* Merge: '/Merge' incorporates: + * Constant: '/stay at step' + */ + rtB.Merge_c = 2; + } + + /* End of Switch: '/Switch' */ + + /* Update for UnitDelay: '/Unit Delay' incorporates: + * DataStoreRead: '/текущее время в мс' + */ + rtDW.UnitDelay_DSTATE = rtDW.t_now; + + /* Update for UnitDelay: '/Unit Delay' incorporates: + * DataStoreRead: '/текущее время в мс' + */ + rtDW.UnitDelay_DSTATE_h = rtDW.t_now; + + /* Update for UnitDelay: '/Unit Delay' incorporates: + * DataStoreRead: '/текущее время в мс' + */ + rtDW.UnitDelay_DSTATE_n = rtDW.t_now; + + /* Update for UnitDelay: '/Cond_prev_private ' */ rtDW.Cond_prev_private_DSTATE_ei = rtb_LogicalOperator1; - /* End of Outputs for SubSystem: '/Level 2' */ + /* End of Outputs for SubSystem: '/Level 2' */ break; case 3: - /* Outputs for IfAction SubSystem: '/Level 3' incorporates: - * ActionPort: '/Action Port' + /* Outputs for IfAction SubSystem: '/Level 3' incorporates: + * ActionPort: '/Action Port' */ - Level3_i(&rtB.Merge_c, &rtb_out_ee, &rtDW.Blower_RR, + Level3_i(&rtB.Merge_c, &FIU_SET_RR, &rtDW.Blower_RR, &rtDW.Blower_logic_RR, &Dtg_FUR, &rtDW.Dtg_RR, - &rtDW.Dtg_logic_RR, &rtDW.HI_logic_on, &rtb_Gain2_c, + &rtDW.Dtg_logic_RR, &rtDW.HI_logic_on, &rtb_Gain2_hu, &rtb_Gain_ge, &rtB.Merge_b, &El_window_heating, &rtDW.Mode_RR, &rtDW.Mode_logic_RR, &rtb_Divide1, &Valve_2_way, &rtDW.step_start_controle_rear, &rtDW.t_now, &rtDW.Level3_i0); - /* End of Outputs for SubSystem: '/Level 3' */ + /* End of Outputs for SubSystem: '/Level 3' */ break; case 4: - /* Outputs for IfAction SubSystem: '/Level 4' incorporates: - * ActionPort: '/Action Port' + /* Outputs for IfAction SubSystem: '/Level 4' incorporates: + * ActionPort: '/Action Port' */ - Level3_i(&rtB.Merge_c, &rtb_out_ee, &rtDW.Blower_RR, + Level3_i(&rtB.Merge_c, &FIU_SET_RR, &rtDW.Blower_RR, &rtDW.Blower_logic_RR, &Dtg_FUR, &rtDW.Dtg_RR, - &rtDW.Dtg_logic_RR, &rtDW.HI_logic_on, &rtb_Gain2_c, + &rtDW.Dtg_logic_RR, &rtDW.HI_logic_on, &rtb_Gain2_hu, &rtb_Gain_ge, &rtB.Merge_b, &El_window_heating, &rtDW.Mode_RR, &rtDW.Mode_logic_RR, &rtb_Divide1, &Valve_2_way, &rtDW.step_start_controle_rear, &rtDW.t_now, &rtDW.Level4_j); - /* End of Outputs for SubSystem: '/Level 4' */ + /* End of Outputs for SubSystem: '/Level 4' */ break; case 5: - /* Outputs for IfAction SubSystem: '/Level 5' incorporates: - * ActionPort: '/Action Port' + /* Outputs for IfAction SubSystem: '/Level 5' incorporates: + * ActionPort: '/Action Port' */ - Level3_i(&rtB.Merge_c, &rtb_out_ee, &rtDW.Blower_RR, + Level3_i(&rtB.Merge_c, &FIU_SET_RR, &rtDW.Blower_RR, &rtDW.Blower_logic_RR, &Dtg_FUR, &rtDW.Dtg_RR, - &rtDW.Dtg_logic_RR, &rtDW.HI_logic_on, &rtb_Gain2_c, + &rtDW.Dtg_logic_RR, &rtDW.HI_logic_on, &rtb_Gain2_hu, &rtb_Gain_ge, &rtB.Merge_b, &El_window_heating, &rtDW.Mode_RR, &rtDW.Mode_logic_RR, &rtb_Divide1, &Valve_2_way, &rtDW.step_start_controle_rear, &rtDW.t_now, &rtDW.Level5_e); - /* End of Outputs for SubSystem: '/Level 5' */ + /* End of Outputs for SubSystem: '/Level 5' */ break; } - /* End of SwitchCase: '/Switch Case' */ - /* End of Outputs for SubSystem: '/Step 2 R' */ + /* End of SwitchCase: '/Switch Case' */ + /* End of Outputs for SubSystem: '/Step 2 R' */ break; case 3: - /* Outputs for IfAction SubSystem: '/Step 3 R' incorporates: - * ActionPort: '/Action Port' + /* Outputs for IfAction SubSystem: '/Step 3 R' incorporates: + * ActionPort: '/Action Port' */ Step3F(&rtB.Merge_c, &rtDW.start_control_finished_front); - /* End of Outputs for SubSystem: '/Step 3 R' */ + /* End of Outputs for SubSystem: '/Step 3 R' */ break; } - /* End of SwitchCase: '/Switch Case' */ + /* End of SwitchCase: '/Switch Case' */ - /* DataStoreWrite: '/Data Store Write' */ + /* DataStoreWrite: '/Data Store Write' */ rtDW.step_start_controle_rear = rtB.Merge_c; /* End of Outputs for SubSystem: '/Start Control Rear' */ @@ -16233,13 +17131,13 @@ void HVAC_model_initialize(void) { int32_t i; for (i = 0; i < 9; i++) { - /* Start for DataStoreMemory: '/Data Store Memory1' */ + /* Start for DataStoreMemory: '/Data Store Memory1' */ rtDW.ErrorCalibration_private[i] = 1U; - /* Start for DataStoreMemory: '/Data Store Memory1' */ + /* Start for DataStoreMemory: '/Data Store Memory1' */ rtDW.ErrorCalibration_private_b[i] = 1U; - /* Start for DataStoreMemory: '/Data Store Memory1' */ + /* Start for DataStoreMemory: '/Data Store Memory1' */ rtDW.ErrorCalibration_private_h[i] = 1U; } @@ -16261,74 +17159,74 @@ void HVAC_model_initialize(void) /* SystemInitialize for MATLAB Function: '/Log Ambient Lv' */ rtDW.current_Ambient_Lv_not_empty = false; - /* SystemInitialize for IfAction SubSystem: '/Homing' */ - /* SystemInitialize for IfAction SubSystem: '/Switch Case Action Subsystem3' */ - /* SystemInitialize for IfAction SubSystem: '/If Action Subsystem' */ - /* Start for DataStoreMemory: '/Data Store Memory' */ + /* SystemInitialize for IfAction SubSystem: '/Homing' */ + /* SystemInitialize for IfAction SubSystem: '/Switch Case Action Subsystem3' */ + /* SystemInitialize for IfAction SubSystem: '/If Action Subsystem' */ + /* Start for DataStoreMemory: '/Data Store Memory' */ rtDW.Start_timer_i = 1.0; - /* SystemInitialize for MATLAB Function: '/MATLAB Function' */ + /* SystemInitialize for MATLAB Function: '/MATLAB Function' */ MATLABFunction_Init(&rtDW.sf_MATLABFunction); - /* End of SystemInitialize for SubSystem: '/If Action Subsystem' */ - /* End of SystemInitialize for SubSystem: '/Switch Case Action Subsystem3' */ + /* End of SystemInitialize for SubSystem: '/If Action Subsystem' */ + /* End of SystemInitialize for SubSystem: '/Switch Case Action Subsystem3' */ - /* SystemInitialize for Merge: '/Merge' */ + /* SystemInitialize for Merge: '/Merge' */ rtB.Merge_h1 = 0; - /* End of SystemInitialize for SubSystem: '/Homing' */ + /* End of SystemInitialize for SubSystem: '/Homing' */ - /* SystemInitialize for Merge: '/Merge' */ + /* SystemInitialize for Merge: '/Merge' */ rtB.Merge_l = 0; - /* SystemInitialize for IfAction SubSystem: '/Homing' */ - /* SystemInitialize for IfAction SubSystem: '/Switch Case Action Subsystem3' */ - /* SystemInitialize for IfAction SubSystem: '/If Action Subsystem' */ - /* Start for DataStoreMemory: '/Data Store Memory' */ + /* SystemInitialize for IfAction SubSystem: '/Homing' */ + /* SystemInitialize for IfAction SubSystem: '/Switch Case Action Subsystem3' */ + /* SystemInitialize for IfAction SubSystem: '/If Action Subsystem' */ + /* Start for DataStoreMemory: '/Data Store Memory' */ rtDW.Start_timer_l = 1.0; - /* SystemInitialize for MATLAB Function: '/MATLAB Function' */ + /* SystemInitialize for MATLAB Function: '/MATLAB Function' */ MATLABFunction_Init(&rtDW.sf_MATLABFunction_i); - /* End of SystemInitialize for SubSystem: '/If Action Subsystem' */ - /* End of SystemInitialize for SubSystem: '/Switch Case Action Subsystem3' */ + /* End of SystemInitialize for SubSystem: '/If Action Subsystem' */ + /* End of SystemInitialize for SubSystem: '/Switch Case Action Subsystem3' */ - /* SystemInitialize for Merge: '/Merge' */ + /* SystemInitialize for Merge: '/Merge' */ rtB.Merge_hu = 0; - /* End of SystemInitialize for SubSystem: '/Homing' */ + /* End of SystemInitialize for SubSystem: '/Homing' */ - /* SystemInitialize for Merge: '/Merge' */ + /* SystemInitialize for Merge: '/Merge' */ rtB.Merge_h = 0; - /* SystemInitialize for IfAction SubSystem: '/Homing' */ - /* SystemInitialize for IfAction SubSystem: '/Switch Case Action Subsystem3' */ - /* SystemInitialize for IfAction SubSystem: '/If Action Subsystem' */ - /* Start for DataStoreMemory: '/Data Store Memory' */ + /* SystemInitialize for IfAction SubSystem: '/Homing' */ + /* SystemInitialize for IfAction SubSystem: '/Switch Case Action Subsystem3' */ + /* SystemInitialize for IfAction SubSystem: '/If Action Subsystem' */ + /* Start for DataStoreMemory: '/Data Store Memory' */ rtDW.Start_timer = 1.0; - /* SystemInitialize for MATLAB Function: '/MATLAB Function' */ + /* SystemInitialize for MATLAB Function: '/MATLAB Function' */ MATLABFunction_Init(&rtDW.sf_MATLABFunction_c); - /* End of SystemInitialize for SubSystem: '/If Action Subsystem' */ - /* End of SystemInitialize for SubSystem: '/Switch Case Action Subsystem3' */ + /* End of SystemInitialize for SubSystem: '/If Action Subsystem' */ + /* End of SystemInitialize for SubSystem: '/Switch Case Action Subsystem3' */ - /* SystemInitialize for Merge: '/Merge' */ + /* SystemInitialize for Merge: '/Merge' */ rtB.Merge_j = 0; - /* End of SystemInitialize for SubSystem: '/Homing' */ + /* End of SystemInitialize for SubSystem: '/Homing' */ - /* SystemInitialize for Merge: '/Merge' */ + /* SystemInitialize for Merge: '/Merge' */ rtB.Merge_bj = 0; /* SystemInitialize for IfAction SubSystem: '/Start Control Front' */ - /* SystemInitialize for Merge: '/Merge' */ + /* SystemInitialize for Merge: '/Merge' */ rtB.Merge_ho = 0; /* End of SystemInitialize for SubSystem: '/Start Control Front' */ /* SystemInitialize for IfAction SubSystem: '/Start Control Rear' */ - /* SystemInitialize for Merge: '/Merge' */ + /* SystemInitialize for Merge: '/Merge' */ rtB.Merge_c = 0; /* End of SystemInitialize for SubSystem: '/Start Control Rear' */ diff --git a/HVAC_model.h b/HVAC_model.h index 037b8a2..9fc9f4b 100644 --- a/HVAC_model.h +++ b/HVAC_model.h @@ -3,9 +3,9 @@ * * Code generated for Simulink model 'HVAC_model'. * - * Model version : 1.866 + * Model version : 1.876 * Simulink Coder version : 24.1 (R2024a) 19-Nov-2023 - * C/C++ source code generated on : Tue May 5 14:20:39 2026 + * C/C++ source code generated on : Wed May 6 14:55:30 2026 * * Target selection: ert.tlc * Embedded hardware selection: ARM Compatible->ARM Cortex-M @@ -40,61 +40,61 @@ /* user code (top of header file) */ #include -/* Block states (default storage) for system '/MATLAB Function' */ +/* Block states (default storage) for system '/MATLAB Function' */ typedef struct { - double cond_prev; /* '/MATLAB Function' */ - uint32_t t_start; /* '/MATLAB Function' */ - bool t_start_not_empty; /* '/MATLAB Function' */ + double cond_prev; /* '/MATLAB Function' */ + uint32_t t_start; /* '/MATLAB Function' */ + bool t_start_not_empty; /* '/MATLAB Function' */ } DW_MATLABFunction; -/* Block states (default storage) for system '/Level 4' */ +/* Block states (default storage) for system '/Level 4' */ typedef struct { - uint32_t t_start_delay_private_DSTATE;/* '/t_start_delay_private ' */ - bool Cond_prev_private_DSTATE; /* '/Cond_prev_private ' */ + uint32_t t_start_delay_private_DSTATE;/* '/t_start_delay_private ' */ + bool Cond_prev_private_DSTATE; /* '/Cond_prev_private ' */ } DW_Level4_n; -/* Block states (default storage) for system '/Level 3' */ +/* Block states (default storage) for system '/Level 3' */ typedef struct { - uint32_t UnitDelay_DSTATE; /* '/Unit Delay' */ - uint32_t UnitDelay_DSTATE_i; /* '/Unit Delay' */ - uint32_t UnitDelay_DSTATE_j; /* '/Unit Delay' */ - uint32_t UnitDelay_DSTATE_a; /* '/Unit Delay' */ - uint32_t t_start_delay_private_DSTATE;/* '/t_start_delay_private ' */ - bool Cond_prev_private_DSTATE; /* '/Cond_prev_private ' */ + uint32_t UnitDelay_DSTATE; /* '/Unit Delay' */ + uint32_t UnitDelay_DSTATE_i; /* '/Unit Delay' */ + uint32_t UnitDelay_DSTATE_j; /* '/Unit Delay' */ + uint32_t UnitDelay_DSTATE_a; /* '/Unit Delay' */ + uint32_t t_start_delay_private_DSTATE;/* '/t_start_delay_private ' */ + bool Cond_prev_private_DSTATE; /* '/Cond_prev_private ' */ } DW_Level3; -/* Block states (default storage) for system '/Level 0' */ +/* Block states (default storage) for system '/Level 0' */ typedef struct { - uint32_t t_start_delay_private_DSTATE;/* '/t_start_delay_private ' */ - bool Cond_prev_private_DSTATE; /* '/Cond_prev_private ' */ + uint32_t t_start_delay_private_DSTATE;/* '/t_start_delay_private ' */ + bool Cond_prev_private_DSTATE; /* '/Cond_prev_private ' */ } DW_Level0_c; -/* Block states (default storage) for system '/Level 4' */ +/* Block states (default storage) for system '/Level 4' */ typedef struct { - uint32_t t_start_delay_private_DSTATE;/* '/t_start_delay_private ' */ - bool Cond_prev_private_DSTATE; /* '/Cond_prev_private ' */ + uint32_t t_start_delay_private_DSTATE;/* '/t_start_delay_private ' */ + bool Cond_prev_private_DSTATE; /* '/Cond_prev_private ' */ } DW_Level4_a; -/* Block states (default storage) for system '/Level 3' */ +/* Block states (default storage) for system '/Level 3' */ typedef struct { - uint32_t UnitDelay_DSTATE; /* '/Unit Delay' */ - uint32_t UnitDelay_DSTATE_i; /* '/Unit Delay' */ - uint32_t UnitDelay_DSTATE_e; /* '/Unit Delay' */ - uint32_t t_start_delay_private_DSTATE;/* '/t_start_delay_private ' */ - bool Cond_prev_private_DSTATE; /* '/Cond_prev_private ' */ + uint32_t UnitDelay_DSTATE; /* '/Unit Delay' */ + uint32_t UnitDelay_DSTATE_i; /* '/Unit Delay' */ + uint32_t UnitDelay_DSTATE_e; /* '/Unit Delay' */ + uint32_t t_start_delay_private_DSTATE;/* '/t_start_delay_private ' */ + bool Cond_prev_private_DSTATE; /* '/Cond_prev_private ' */ } DW_Level3_n; /* Block signals (default storage) */ typedef struct { uint8_t Merge_b; /* '/Merge' */ - int8_t Merge_l; /* '/Merge' */ - int8_t Merge_h; /* '/Merge' */ - int8_t Merge_bj; /* '/Merge' */ - int8_t Merge_c; /* '/Merge' */ - int8_t Merge_ho; /* '/Merge' */ - int8_t Merge_j; /* '/Merge' */ - int8_t Merge_hu; /* '/Merge' */ - int8_t Merge_h1; /* '/Merge' */ + int8_t Merge_l; /* '/Merge' */ + int8_t Merge_h; /* '/Merge' */ + int8_t Merge_bj; /* '/Merge' */ + int8_t Merge_c; /* '/Merge' */ + int8_t Merge_ho; /* '/Merge' */ + int8_t Merge_j; /* '/Merge' */ + int8_t Merge_hu; /* '/Merge' */ + int8_t Merge_h1; /* '/Merge' */ } B; /* Block states (default storage) for system '' */ @@ -104,18 +104,19 @@ typedef struct { CmdCAN_CCU_STAT1_Bus CCU_STAT1_MODEL;/* '/Data Store Memory105' */ CmdCAN_FIU_CCU1_Bus FIU_CCU1_MODEL; /* '/Data Store Memory43' */ CmdCAN_FIU_CCU2_Bus FIU_CCU2_MODEL; /* '/Data Store Memory44' */ + dbgCAN_dbg_Logic_Blower_Bus dbgCAN_dbg_Logic_Blower_model;/* '/Data Store Memory64' */ double LOGGER_ACP; /* '/Data Store Memory1' */ - double ErrorHomming_private; /* '/Data Store Memory2' */ - double ErrorHomming_private_j; /* '/Data Store Memory2' */ - double ErrorHomming_private_m; /* '/Data Store Memory2' */ + double ErrorHomming_private; /* '/Data Store Memory2' */ + double ErrorHomming_private_j; /* '/Data Store Memory2' */ + double ErrorHomming_private_m; /* '/Data Store Memory2' */ double LOGGER_LIN; /* '/Data Store Memory1' */ double SKIPPED_FIRST_SIMULATION_STEP;/* '/Data Store Memory131' */ double MODE_DRIVER; /* '/Data Store Memory18' */ double MODE_RR_passenger; /* '/Data Store Memory19' */ double start_control_finished_rear; /* '/SC Rear' */ - double Start_timer; /* '/Data Store Memory' */ - double Start_timer_l; /* '/Data Store Memory' */ - double Start_timer_i; /* '/Data Store Memory' */ + double Start_timer; /* '/Data Store Memory' */ + double Start_timer_l; /* '/Data Store Memory' */ + double Start_timer_i; /* '/Data Store Memory' */ CmdBusPwm PWM_Set_Model; /* '/Data Store Memory129' */ dbgCAN_dbg_Act0_Bus dbgCAN_dbg_Act0_model;/* '/Data Store Memory79' */ dbgCAN_dbg_Act1_Bus dbgCAN_dbg_Act1_model;/* '/Data Store Memory80' */ @@ -140,48 +141,51 @@ typedef struct { uint32_t t_start_delay_private_DSTATE_n;/* '/t_start_delay_private ' */ uint32_t t_start_delay_private_DSTATE_ew;/* '/t_start_delay_private ' */ uint32_t t_start_delay_private_DSTATE_i0;/* '/t_start_delay_private ' */ - uint32_t UnitDelay_DSTATE; /* '/Unit Delay' */ - uint32_t UnitDelay_DSTATE_h; /* '/Unit Delay' */ - uint32_t UnitDelay_DSTATE_n; /* '/Unit Delay' */ - uint32_t t_start_delay_private_DSTATE_ed;/* '/t_start_delay_private ' */ - uint32_t UnitDelay_DSTATE_g; /* '/Unit Delay' */ - uint32_t UnitDelay_DSTATE_p; /* '/Unit Delay' */ - uint32_t UnitDelay_DSTATE_j; /* '/Unit Delay' */ - uint32_t t_start_delay_private_DSTATE_jh;/* '/t_start_delay_private ' */ - uint32_t UnitDelay_DSTATE_d; /* '/Unit Delay' */ - uint32_t UnitDelay_DSTATE_nc; /* '/Unit Delay' */ - uint32_t UnitDelay_DSTATE_hs; /* '/Unit Delay' */ - uint32_t t_start_delay_private_DSTATE_fvm;/* '/t_start_delay_private ' */ - uint32_t t_start_delay_private_DSTATE_o;/* '/t_start_delay_private ' */ - uint32_t t_start_delay_private_DSTATE_em;/* '/t_start_delay_private ' */ - uint32_t UnitDelay_DSTATE_f; /* '/Unit Delay' */ - uint32_t UnitDelay_DSTATE_pu; /* '/Unit Delay' */ - uint32_t UnitDelay_DSTATE_b; /* '/Unit Delay' */ - uint32_t UnitDelay_DSTATE_e; /* '/Unit Delay' */ - uint32_t t_start_delay_private_DSTATE_nr;/* '/t_start_delay_private ' */ - uint32_t UnitDelay_DSTATE_m; /* '/Unit Delay' */ - uint32_t UnitDelay_DSTATE_gf; /* '/Unit Delay' */ - uint32_t UnitDelay_DSTATE_l; /* '/Unit Delay' */ - uint32_t UnitDelay_DSTATE_p0; /* '/Unit Delay' */ - uint32_t t_start_delay_private_DSTATE_mz;/* '/t_start_delay_private ' */ - uint32_t UnitDelay_DSTATE_k; /* '/Unit Delay' */ - uint32_t UnitDelay_DSTATE_pb; /* '/Unit Delay' */ - uint32_t UnitDelay_DSTATE_mk; /* '/Unit Delay' */ - uint32_t UnitDelay_DSTATE_gm; /* '/Unit Delay' */ - uint32_t t_start_delay_private_DSTATE_g;/* '/t_start_delay_private ' */ - uint32_t t_start_delay_private_DSTATE_fm;/* '/t_start_delay_private ' */ - uint32_t t_start_delay_private_DSTATE_mk;/* '/t_start_delay_private ' */ - uint32_t t_start_delay_private_DSTATE_pd;/* '/t_start_delay_private ' */ + uint32_t UnitDelay_DSTATE; /* '/Unit Delay' */ + uint32_t UnitDelay_DSTATE_h; /* '/Unit Delay' */ + uint32_t UnitDelay_DSTATE_n; /* '/Unit Delay' */ + uint32_t t_start_delay_private_DSTATE_ed;/* '/t_start_delay_private ' */ + uint32_t UnitDelay_DSTATE_g; /* '/Unit Delay' */ + uint32_t UnitDelay_DSTATE_p; /* '/Unit Delay' */ + uint32_t UnitDelay_DSTATE_j; /* '/Unit Delay' */ + uint32_t t_start_delay_private_DSTATE_jh;/* '/t_start_delay_private ' */ + uint32_t UnitDelay_DSTATE_d; /* '/Unit Delay' */ + uint32_t UnitDelay_DSTATE_nc; /* '/Unit Delay' */ + uint32_t UnitDelay_DSTATE_hs; /* '/Unit Delay' */ + uint32_t t_start_delay_private_DSTATE_fvm;/* '/t_start_delay_private ' */ + uint32_t t_start_delay_private_DSTATE_o;/* '/t_start_delay_private ' */ + uint32_t t_start_delay_private_DSTATE_em;/* '/t_start_delay_private ' */ + uint32_t UnitDelay_DSTATE_f; /* '/Unit Delay' */ + uint32_t UnitDelay_DSTATE_pu; /* '/Unit Delay' */ + uint32_t UnitDelay_DSTATE_b; /* '/Unit Delay' */ + uint32_t UnitDelay_DSTATE_e; /* '/Unit Delay' */ + uint32_t t_start_delay_private_DSTATE_nr;/* '/t_start_delay_private ' */ + uint32_t UnitDelay_DSTATE_m; /* '/Unit Delay' */ + uint32_t UnitDelay_DSTATE_gf; /* '/Unit Delay' */ + uint32_t UnitDelay_DSTATE_l; /* '/Unit Delay' */ + uint32_t UnitDelay_DSTATE_p0; /* '/Unit Delay' */ + uint32_t t_start_delay_private_DSTATE_mz;/* '/t_start_delay_private ' */ + uint32_t UnitDelay_DSTATE_k; /* '/Unit Delay' */ + uint32_t UnitDelay_DSTATE_pb; /* '/Unit Delay' */ + uint32_t UnitDelay_DSTATE_mk; /* '/Unit Delay' */ + uint32_t UnitDelay_DSTATE_gm; /* '/Unit Delay' */ + uint32_t t_start_delay_private_DSTATE_g;/* '/t_start_delay_private ' */ + uint32_t t_start_delay_private_DSTATE_fm;/* '/t_start_delay_private ' */ + uint32_t t_start_delay_private_DSTATE_mk;/* '/t_start_delay_private ' */ + uint32_t t_start_delay_private_DSTATE_pd;/* '/t_start_delay_private ' */ uint32_t t_now; /* '/Data Store Memory5' */ - int16_t MinPositionCh0_private[9]; /* '/Data Store Memory12' */ - int16_t MaxPositionCh0_private[9]; /* '/Data Store Memory13' */ - int16_t MinPositionCh1_private[9]; /* '/Data Store Memory12' */ - int16_t MaxPositionCh1_private[9]; /* '/Data Store Memory13' */ - int16_t MinPositionCh2_private[9]; /* '/Data Store Memory12' */ - int16_t MaxPositionCh2_private[9]; /* '/Data Store Memory13' */ - uint16_t POS_private[9]; /* '/Data Store Memory3' */ - uint16_t POS_private_o[9]; /* '/Data Store Memory3' */ - uint16_t POS_private_g[9]; /* '/Data Store Memory3' */ + int16_t MinPositionCh0_private[9]; /* '/Data Store Memory12' */ + int16_t MaxPositionCh0_private[9]; /* '/Data Store Memory13' */ + int16_t MinPositionCh1_private[9]; /* '/Data Store Memory12' */ + int16_t MaxPositionCh1_private[9]; /* '/Data Store Memory13' */ + int16_t MinPositionCh2_private[9]; /* '/Data Store Memory12' */ + int16_t MaxPositionCh2_private[9]; /* '/Data Store Memory13' */ + uint16_t POS_private[9]; /* '/Data Store Memory3' */ + uint16_t POS_private_o[9]; /* '/Data Store Memory3' */ + uint16_t POS_private_g[9]; /* '/Data Store Memory3' */ + uint16_t valves_front_manual_target[9];/* '/Data Store Memory133' */ + uint16_t FIU_SET_FR; /* '/Data Store Memory14' */ + uint16_t FIU_SET_FL; /* '/Data Store Memory15' */ uint16_t Blower_FL; /* '/Data Store Memory27' */ uint16_t Blower_RR; /* '/Data Store Memory32' */ uint16_t Blower_logic_FL; /* '/Data Store Memory37' */ @@ -205,56 +209,56 @@ typedef struct { bool Cond_prev_private_DSTATE_gc; /* '/Cond_prev_private ' */ bool Cond_prev_private_DSTATE_ao; /* '/Cond_prev_private ' */ bool Cond_prev_private_DSTATE_ck; /* '/Cond_prev_private ' */ - bool Cond_prev_private_DSTATE_ei; /* '/Cond_prev_private ' */ - bool Cond_prev_private_DSTATE_j; /* '/Cond_prev_private ' */ - bool Cond_prev_private_DSTATE_i5; /* '/Cond_prev_private ' */ - bool Cond_prev_private_DSTATE_aw; /* '/Cond_prev_private ' */ - bool Cond_prev_private_DSTATE_cp; /* '/Cond_prev_private ' */ - bool Cond_prev_private_DSTATE_iy; /* '/Cond_prev_private ' */ - bool Cond_prev_private_DSTATE_b3; /* '/Cond_prev_private ' */ - bool Cond_prev_private_DSTATE_m; /* '/Cond_prev_private ' */ - bool Cond_prev_private_DSTATE_f; /* '/Cond_prev_private ' */ - bool Cond_prev_private_DSTATE_h; /* '/Cond_prev_private ' */ - bool Cond_prev_private_DSTATE_gx; /* '/Cond_prev_private ' */ - int8_t stepSig_private; /* '/Data Store Memory' */ - int8_t stepHoming_private; /* '/Data Store Memory17' */ - int8_t stepSig_private_j; /* '/Data Store Memory' */ - int8_t stepHoming_private_p; /* '/Data Store Memory17' */ - int8_t stepSig_private_o; /* '/Data Store Memory' */ - int8_t stepHoming_private_f; /* '/Data Store Memory17' */ + bool Cond_prev_private_DSTATE_ei; /* '/Cond_prev_private ' */ + bool Cond_prev_private_DSTATE_j; /* '/Cond_prev_private ' */ + bool Cond_prev_private_DSTATE_i5; /* '/Cond_prev_private ' */ + bool Cond_prev_private_DSTATE_aw; /* '/Cond_prev_private ' */ + bool Cond_prev_private_DSTATE_cp; /* '/Cond_prev_private ' */ + bool Cond_prev_private_DSTATE_iy; /* '/Cond_prev_private ' */ + bool Cond_prev_private_DSTATE_b3; /* '/Cond_prev_private ' */ + bool Cond_prev_private_DSTATE_m; /* '/Cond_prev_private ' */ + bool Cond_prev_private_DSTATE_f; /* '/Cond_prev_private ' */ + bool Cond_prev_private_DSTATE_h; /* '/Cond_prev_private ' */ + bool Cond_prev_private_DSTATE_gx; /* '/Cond_prev_private ' */ + int8_t stepSig_private; /* '/Data Store Memory' */ + int8_t stepHoming_private; /* '/Data Store Memory17' */ + int8_t stepSig_private_j; /* '/Data Store Memory' */ + int8_t stepHoming_private_p; /* '/Data Store Memory17' */ + int8_t stepSig_private_o; /* '/Data Store Memory' */ + int8_t stepHoming_private_f; /* '/Data Store Memory17' */ int8_t step_start_controle_front; /* '/Data Store Memory' */ int8_t step_start_controle_rear; /* '/Data Store Memory1' */ int8_t start_control_finished_front; /* '/SC Front' */ - uint8_t ErrorCalibration_private[9]; /* '/Data Store Memory1' */ - uint8_t Speed_private[9]; /* '/Data Store Memory11' */ - uint8_t Coils_private[9]; /* '/Data Store Memory16' */ - uint8_t ErrorActuator[9]; /* '/Data Store Memory18' */ - uint8_t BUS_ADR_private[9]; /* '/Data Store Memory4' */ - uint8_t MODE_private[9]; /* '/Data Store Memory5' */ - uint8_t COM_private[9]; /* '/Data Store Memory6' */ - uint8_t Stall_private[9]; /* '/Data Store Memory7' */ - uint8_t Lnoise_private[9]; /* '/Data Store Memory8' */ - uint8_t Autos_private[9]; /* '/Data Store Memory9' */ - uint8_t ErrorCalibration_private_b[9];/* '/Data Store Memory1' */ - uint8_t Speed_private_e[9]; /* '/Data Store Memory11' */ - uint8_t Coils_private_e[9]; /* '/Data Store Memory16' */ - uint8_t ErrorActuator_c[9]; /* '/Data Store Memory18' */ - uint8_t BUS_ADR_private_m[9]; /* '/Data Store Memory4' */ - uint8_t MODE_private_a[9]; /* '/Data Store Memory5' */ - uint8_t COM_private_n[9]; /* '/Data Store Memory6' */ - uint8_t Stall_private_h[9]; /* '/Data Store Memory7' */ - uint8_t Lnoise_private_p[9]; /* '/Data Store Memory8' */ - uint8_t Autos_private_a[9]; /* '/Data Store Memory9' */ - uint8_t ErrorCalibration_private_h[9];/* '/Data Store Memory1' */ - uint8_t Speed_private_o[9]; /* '/Data Store Memory11' */ - uint8_t Coils_private_m[9]; /* '/Data Store Memory16' */ - uint8_t ErrorActuator_o[9]; /* '/Data Store Memory18' */ - uint8_t BUS_ADR_private_p[9]; /* '/Data Store Memory4' */ - uint8_t MODE_private_p[9]; /* '/Data Store Memory5' */ - uint8_t COM_private_b[9]; /* '/Data Store Memory6' */ - uint8_t Stall_private_h3[9]; /* '/Data Store Memory7' */ - uint8_t Lnoise_private_k[9]; /* '/Data Store Memory8' */ - uint8_t Autos_private_k[9]; /* '/Data Store Memory9' */ + uint8_t ErrorCalibration_private[9]; /* '/Data Store Memory1' */ + uint8_t Speed_private[9]; /* '/Data Store Memory11' */ + uint8_t Coils_private[9]; /* '/Data Store Memory16' */ + uint8_t ErrorActuator[9]; /* '/Data Store Memory18' */ + uint8_t BUS_ADR_private[9]; /* '/Data Store Memory4' */ + uint8_t MODE_private[9]; /* '/Data Store Memory5' */ + uint8_t COM_private[9]; /* '/Data Store Memory6' */ + uint8_t Stall_private[9]; /* '/Data Store Memory7' */ + uint8_t Lnoise_private[9]; /* '/Data Store Memory8' */ + uint8_t Autos_private[9]; /* '/Data Store Memory9' */ + uint8_t ErrorCalibration_private_b[9];/* '/Data Store Memory1' */ + uint8_t Speed_private_e[9]; /* '/Data Store Memory11' */ + uint8_t Coils_private_e[9]; /* '/Data Store Memory16' */ + uint8_t ErrorActuator_c[9]; /* '/Data Store Memory18' */ + uint8_t BUS_ADR_private_m[9]; /* '/Data Store Memory4' */ + uint8_t MODE_private_a[9]; /* '/Data Store Memory5' */ + uint8_t COM_private_n[9]; /* '/Data Store Memory6' */ + uint8_t Stall_private_h[9]; /* '/Data Store Memory7' */ + uint8_t Lnoise_private_p[9]; /* '/Data Store Memory8' */ + uint8_t Autos_private_a[9]; /* '/Data Store Memory9' */ + uint8_t ErrorCalibration_private_h[9];/* '/Data Store Memory1' */ + uint8_t Speed_private_o[9]; /* '/Data Store Memory11' */ + uint8_t Coils_private_m[9]; /* '/Data Store Memory16' */ + uint8_t ErrorActuator_o[9]; /* '/Data Store Memory18' */ + uint8_t BUS_ADR_private_p[9]; /* '/Data Store Memory4' */ + uint8_t MODE_private_p[9]; /* '/Data Store Memory5' */ + uint8_t COM_private_b[9]; /* '/Data Store Memory6' */ + uint8_t Stall_private_h3[9]; /* '/Data Store Memory7' */ + uint8_t Lnoise_private_k[9]; /* '/Data Store Memory8' */ + uint8_t Autos_private_k[9]; /* '/Data Store Memory9' */ uint8_t CCU_ActuatorErrF_Stat_private;/* '/Data Store Memory' */ uint8_t dtc_state_error_model[127]; /* '/Data Store Memory1' */ uint8_t FIU_MODE_RL; /* '/Data Store Memory108' */ @@ -275,11 +279,12 @@ typedef struct { uint8_t FIU_DeflectorSwFCR; /* '/Data Store Memory123' */ uint8_t FIU_DeflectorSwRRB; /* '/Data Store Memory124' */ uint8_t FIU_REAR_SYNC; /* '/Data Store Memory125' */ - uint8_t PWM_rear; /* '/Data Store Memory126' */ - uint8_t FIU_SET_FR; /* '/Data Store Memory14' */ - uint8_t FIU_SET_FL; /* '/Data Store Memory15' */ - uint8_t FIU_SET_RR; /* '/Data Store Memory16' */ - uint8_t FIU_SET_RL; /* '/Data Store Memory17' */ + uint8_t Blower_AF_FL; /* '/Data Store Memory126' */ + uint8_t Blower_AF_FR; /* '/Data Store Memory127' */ + uint8_t Blower_AF_RL; /* '/Data Store Memory130' */ + uint8_t PWM_rear; /* '/Data Store Memory132' */ + uint8_t PWM_front; /* '/Data Store Memory135' */ + uint8_t Blower_AF_RR; /* '/Data Store Memory136' */ uint8_t Mode_FL; /* '/Data Store Memory23' */ uint8_t Dtg_FUL; /* '/Data Store Memory31' */ uint8_t Dtg_FLL; /* '/Data Store Memory34' */ @@ -290,7 +295,6 @@ typedef struct { uint8_t Dtg_RR; /* '/Data Store Memory52' */ uint8_t Mode_logic_RR; /* '/Data Store Memory54' */ uint8_t Dtg_logic_RR; /* '/Data Store Memory58' */ - uint8_t PWM_front; /* '/Data Store Memory64' */ uint8_t CCU_ActuatorErrR_Stat_private;/* '/Data Store Memory67' */ uint8_t FIU_MODE_FL; /* '/Data Store Memory78' */ uint8_t FIU_DEF_FL; /* '/Data Store Memory84' */ @@ -308,32 +312,32 @@ typedef struct { uint8_t current_Ambient_Lv; /* '/Log Ambient Lv' */ bool HI_logic_on; /* '/Data Store Memory48' */ bool current_Ambient_Lv_not_empty; /* '/Log Ambient Lv' */ - DW_Level3_n Level5_e; /* '/Level 5' */ - DW_Level3_n Level4_j; /* '/Level 4' */ - DW_Level3_n Level3_i0; /* '/Level 3' */ - DW_Level4_a Level5_f; /* '/Level 5' */ - DW_Level4_a Level4_dp; /* '/Level 4' */ - DW_Level0_c Level1_d3; /* '/Level 1' */ - DW_Level0_c Level0_bc; /* '/Level 0' */ - DW_Level3 Level4_a; /* '/Level 4' */ - DW_Level3 Level3_l; /* '/Level 3' */ - DW_Level4_n Level5_g; /* '/Level 5' */ - DW_Level4_n Level4_cw; /* '/Level 4' */ - DW_MATLABFunction sf_MATLABFunction_c;/* '/MATLAB Function' */ - DW_MATLABFunction sf_MATLABFunction_i;/* '/MATLAB Function' */ - DW_MATLABFunction sf_MATLABFunction; /* '/MATLAB Function' */ + DW_Level3_n Level5_e; /* '/Level 5' */ + DW_Level3_n Level4_j; /* '/Level 4' */ + DW_Level3_n Level3_i0; /* '/Level 3' */ + DW_Level4_a Level5_f; /* '/Level 5' */ + DW_Level4_a Level4_dp; /* '/Level 4' */ + DW_Level0_c Level1_d3; /* '/Level 1' */ + DW_Level0_c Level0_bc; /* '/Level 0' */ + DW_Level3 Level4_a; /* '/Level 4' */ + DW_Level3 Level3_l; /* '/Level 3' */ + DW_Level4_n Level5_g; /* '/Level 5' */ + DW_Level4_n Level4_cw; /* '/Level 4' */ + DW_MATLABFunction sf_MATLABFunction_c;/* '/MATLAB Function' */ + DW_MATLABFunction sf_MATLABFunction_i;/* '/MATLAB Function' */ + DW_MATLABFunction sf_MATLABFunction; /* '/MATLAB Function' */ } DW; -/* Invariant block signals for system '/If Action Subsystem1' */ +/* Invariant block signals for system '/If Action Subsystem1' */ typedef struct { - const uint8_t DataTypeConversion[9]; /* '/Data Type Conversion' */ -} ConstB_IfActionSubsystem1_c; + const uint8_t DataTypeConversion[9]; /* '/Data Type Conversion' */ +} ConstB_IfActionSubsystem1; /* Invariant block signals (default storage) */ typedef struct { - ConstB_IfActionSubsystem1_c IfActionSubsystem1_c;/* '/If Action Subsystem1' */ - ConstB_IfActionSubsystem1_c IfActionSubsystem1_n;/* '/If Action Subsystem1' */ - ConstB_IfActionSubsystem1_c IfActionSubsystem1_dc;/* '/If Action Subsystem1' */ + ConstB_IfActionSubsystem1 IfActionSubsystem1_c;/* '/If Action Subsystem1' */ + ConstB_IfActionSubsystem1 IfActionSubsystem1_n;/* '/If Action Subsystem1' */ + ConstB_IfActionSubsystem1 IfActionSubsystem1_d;/* '/If Action Subsystem1' */ } ConstB; /* Constant parameters (default storage) */ @@ -389,7 +393,7 @@ typedef struct { * '/Выбор режима Left' * '/Выбор режима Right' */ - uint32_t pooled35[2]; + uint32_t pooled36[2]; /* Computed Parameter: uDLookupTable_tableData_h * Referenced by: '/1-D Lookup Table' @@ -401,7 +405,7 @@ typedef struct { * '/Выбор режима Left' * '/Выбор режима Right' */ - int16_t pooled42[13]; + int16_t pooled43[13]; /* Pooled Parameter (Expression: [0:4:4092]) * Referenced by: @@ -424,35 +428,38 @@ typedef struct { * '/1-D Lookup Table' * '/1-D Lookup Table1' */ - uint16_t pooled45[1024]; + uint16_t pooled47[1024]; /* Computed Parameter: ACT1_Value - * Referenced by: '/ACT1' + * Referenced by: '/ACT1' */ uint16_t ACT1_Value[9]; /* Computed Parameter: ACT1_Value_d - * Referenced by: '/ACT1' + * Referenced by: '/ACT1' */ uint16_t ACT1_Value_d[6]; /* Computed Parameter: ACT1_Value_o - * Referenced by: '/ACT1' + * Referenced by: '/ACT1' */ uint16_t ACT1_Value_o[8]; - /* Computed Parameter: Constant3_Value - * Referenced by: '/Constant3' + /* Pooled Parameter (Expression: [1 2 3 4 5 6 7 8 9]) + * Referenced by: + * '/Constant3' + * '/Constant5' + * '/Constant5' */ - uint8_t Constant3_Value[9]; + uint8_t pooled76[9]; - /* Computed Parameter: Constant3_Value_i - * Referenced by: '/Constant3' + /* Computed Parameter: Constant3_Value + * Referenced by: '/Constant3' */ - uint8_t Constant3_Value_i[6]; + uint8_t Constant3_Value[6]; /* Computed Parameter: Constant3_Value_j - * Referenced by: '/Constant3' + * Referenced by: '/Constant3' */ uint8_t Constant3_Value_j[8]; @@ -461,7 +468,7 @@ typedef struct { * '/Выбор режима Left' * '/Выбор режима Right' */ - uint8_t pooled76[6]; + uint8_t pooled82[6]; } ConstP; /* External outputs (root outports fed by signals with default storage) */ @@ -475,6 +482,8 @@ typedef struct { CmdBusPWMGet PWM_Get_f; /* '/PWM_Get' */ dbgCAN_dbg_Sen_Duct_Bus dbgCAN_dbg_Sen_Duct_model;/* '/dbgCAN_dbg_Sen_Duct_model' */ dbgCAN_dbg_dbg_Sen_Eva_Bus dbgCAN_dbg_Sen_Eva_model;/* '/dbgCAN_dbg_Sen_Eva_model' */ + dbgCAN_dbg_Logic_Blower_Bus dbgCAN_dbg_Logic_Blower_model; + /* '/dbgCAN_dbg_Logic_Blower_model' */ } ExtY; /* Real-time Model Data Structure */ @@ -513,9 +522,9 @@ extern const ConstP rtConstP; extern ActuatorCmdBusInput Actuator_Ch0_Status_Model;/* '/Data Store Memory61' */ extern ActuatorCmdBusInput Actuator_Ch1_Status_Model;/* '/Data Store Memory62' */ extern ActuatorCmdBusInput Actuator_Ch2_Status_Model;/* '/Data Store Memory63' */ -extern ActuatorCmdBus Actuator_Ch0_Command_Model;/* '/Data Store Memory15' */ -extern ActuatorCmdBus Actuator_Ch1_Command_Model;/* '/Data Store Memory15' */ -extern ActuatorCmdBus Actuator_Ch2_Command_Model;/* '/Data Store Memory15' */ +extern ActuatorCmdBus Actuator_Ch0_Command_Model;/* '/Data Store Memory15' */ +extern ActuatorCmdBus Actuator_Ch1_Command_Model;/* '/Data Store Memory15' */ +extern ActuatorCmdBus Actuator_Ch2_Command_Model;/* '/Data Store Memory15' */ extern CmdBusStatus Status_Sensor_Model;/* '/Data Store Memory' */ extern CmdBusError CCU_Errors_Model; /* '/Data Store Memory3' */ extern CmdBusPWMGet PWM_Get; /* '/Data Store Memory128' */ @@ -956,124 +965,117 @@ extern RT_MODEL *const rtM; * Block '/Display1' : Unused code path elimination * Block '/Display' : Unused code path elimination * Block '/Display1' : Unused code path elimination + * Block '/Display' : Unused code path elimination * Block '/Display2' : Unused code path elimination - * Block '/Constant' : Unused code path elimination - * Block '/Constant1' : Unused code path elimination - * Block '/Equal' : Unused code path elimination - * Block '/Equal1' : Unused code path elimination - * Block '/Display' : Unused code path elimination - * Block '/Display1' : Unused code path elimination - * Block '/Display1' : Unused code path elimination - * Block '/Display1' : Unused code path elimination - * Block '/Display' : Unused code path elimination - * Block '/Display' : Unused code path elimination - * Block '/Display' : Unused code path elimination - * Block '/Display1' : Unused code path elimination - * Block '/Display' : Unused code path elimination - * Block '/Display1' : Unused code path elimination + * Block '/Display' : Unused code path elimination + * Block '/Display' : Unused code path elimination + * Block '/Display' : Unused code path elimination + * Block '/Display1' : Unused code path elimination + * Block '/Display1' : Unused code path elimination + * Block '/Display1' : Unused code path elimination + * Block '/Display' : Unused code path elimination + * Block '/Display' : Unused code path elimination * Block '/Display' : Unused code path elimination - * Block '/Display' : Unused code path elimination - * Block '/Display3' : Unused code path elimination - * Block '/Constant3' : Unused code path elimination - * Block '/Display' : Unused code path elimination - * Block '/Display' : Unused code path elimination - * Block '/Display1' : Unused code path elimination - * Block '/Display1' : Unused code path elimination - * Block '/Display1' : Unused code path elimination - * Block '/Display' : Unused code path elimination - * Block '/Display' : Unused code path elimination - * Block '/Display' : Unused code path elimination - * Block '/Display1' : Unused code path elimination - * Block '/Display' : Unused code path elimination - * Block '/Display1' : Unused code path elimination - * Block '/Display' : Unused code path elimination - * Block '/Display' : Unused code path elimination - * Block '/Display3' : Unused code path elimination - * Block '/Display' : Unused code path elimination - * Block '/Display' : Unused code path elimination - * Block '/Display1' : Unused code path elimination - * Block '/Display1' : Unused code path elimination - * Block '/Display1' : Unused code path elimination - * Block '/Display' : Unused code path elimination - * Block '/Display' : Unused code path elimination - * Block '/Display' : Unused code path elimination - * Block '/Display1' : Unused code path elimination - * Block '/Display' : Unused code path elimination - * Block '/Display1' : Unused code path elimination - * Block '/Display' : Unused code path elimination - * Block '/Display' : Unused code path elimination - * Block '/Display3' : Unused code path elimination - * Block '/Display' : Unused code path elimination - * Block '/Logical Operator' : Unused code path elimination + * Block '/Display1' : Unused code path elimination + * Block '/Display' : Unused code path elimination + * Block '/Display1' : Unused code path elimination + * Block '/Display' : Unused code path elimination + * Block '/Display' : Unused code path elimination + * Block '/Display3' : Unused code path elimination + * Block '/Constant3' : Unused code path elimination + * Block '/Display' : Unused code path elimination + * Block '/Display' : Unused code path elimination + * Block '/Display1' : Unused code path elimination + * Block '/Display1' : Unused code path elimination + * Block '/Display1' : Unused code path elimination + * Block '/Display' : Unused code path elimination + * Block '/Display' : Unused code path elimination + * Block '/Display' : Unused code path elimination + * Block '/Display1' : Unused code path elimination + * Block '/Display' : Unused code path elimination + * Block '/Display1' : Unused code path elimination + * Block '/Display' : Unused code path elimination + * Block '/Display' : Unused code path elimination + * Block '/Display3' : Unused code path elimination + * Block '/Display' : Unused code path elimination + * Block '/Display' : Unused code path elimination + * Block '/Display1' : Unused code path elimination + * Block '/Display1' : Unused code path elimination + * Block '/Display1' : Unused code path elimination + * Block '/Display' : Unused code path elimination + * Block '/Display' : Unused code path elimination + * Block '/Display' : Unused code path elimination + * Block '/Display1' : Unused code path elimination + * Block '/Display' : Unused code path elimination + * Block '/Display1' : Unused code path elimination + * Block '/Display' : Unused code path elimination + * Block '/Display' : Unused code path elimination + * Block '/Display3' : Unused code path elimination + * Block '/Display' : Unused code path elimination + * Block '/Display' : Unused code path elimination * Block '/Display' : Unused code path elimination * Block '/Display1' : Unused code path elimination - * Block '/Display' : Unused code path elimination - * Block '/Display1' : Unused code path elimination - * Block '/Display' : Unused code path elimination - * Block '/Display' : Unused code path elimination - * Block '/Display1' : Unused code path elimination - * Block '/Display2' : Unused code path elimination - * Block '/Display3' : Unused code path elimination - * Block '/Display4' : Unused code path elimination - * Block '/Display5' : Unused code path elimination - * Block '/Display6' : Unused code path elimination - * Block '/Display' : Unused code path elimination - * Block '/Display1' : Unused code path elimination - * Block '/Display2' : Unused code path elimination - * Block '/Display' : Unused code path elimination - * Block '/Display1' : Unused code path elimination - * Block '/Display10' : Unused code path elimination - * Block '/Display11' : Unused code path elimination - * Block '/Display12' : Unused code path elimination - * Block '/Display13' : Unused code path elimination - * Block '/Display2' : Unused code path elimination - * Block '/Display3' : Unused code path elimination - * Block '/Display4' : Unused code path elimination - * Block '/Display5' : Unused code path elimination - * Block '/Display6' : Unused code path elimination - * Block '/Display7' : Unused code path elimination - * Block '/Display8' : Unused code path elimination - * Block '/Display9' : Unused code path elimination - * Block '/Display' : Unused code path elimination - * Block '/Display' : Unused code path elimination - * Block '/Display' : Unused code path elimination - * Block '/Display' : Unused code path elimination - * Block '/Display' : Unused code path elimination - * Block '/Display' : Unused code path elimination - * Block '/Display' : Unused code path elimination - * Block '/Display' : Unused code path elimination - * Block '/Display' : Unused code path elimination - * Block '/Display' : Unused code path elimination - * Block '/Display' : Unused code path elimination + * Block '/Display' : Unused code path elimination + * Block '/Display1' : Unused code path elimination + * Block '/Display' : Unused code path elimination + * Block '/Display' : Unused code path elimination + * Block '/Display1' : Unused code path elimination + * Block '/Display2' : Unused code path elimination + * Block '/Display3' : Unused code path elimination + * Block '/Display4' : Unused code path elimination + * Block '/Display5' : Unused code path elimination + * Block '/Display6' : Unused code path elimination + * Block '/Display' : Unused code path elimination + * Block '/Display1' : Unused code path elimination + * Block '/Display2' : Unused code path elimination + * Block '/Display' : Unused code path elimination + * Block '/Display1' : Unused code path elimination + * Block '/Display10' : Unused code path elimination + * Block '/Display11' : Unused code path elimination + * Block '/Display12' : Unused code path elimination + * Block '/Display13' : Unused code path elimination + * Block '/Display2' : Unused code path elimination + * Block '/Display3' : Unused code path elimination + * Block '/Display4' : Unused code path elimination + * Block '/Display5' : Unused code path elimination + * Block '/Display6' : Unused code path elimination + * Block '/Display7' : Unused code path elimination + * Block '/Display8' : Unused code path elimination + * Block '/Display9' : Unused code path elimination + * Block '/Display' : Unused code path elimination + * Block '/Display' : Unused code path elimination + * Block '/Display' : Unused code path elimination + * Block '/Display' : Unused code path elimination + * Block '/Display' : Unused code path elimination + * Block '/Display' : Unused code path elimination * Block '/Display' : Unused code path elimination - * Block '/Display' : Unused code path elimination - * Block '/Display' : Unused code path elimination * Block '/Display' : Unused code path elimination - * Block '/Display' : Unused code path elimination - * Block '/Display' : Unused code path elimination - * Block '/Display' : Unused code path elimination + * Block '/Display' : Unused code path elimination + * Block '/Display' : Unused code path elimination + * Block '/Display' : Unused code path elimination * Block '/Display' : Unused code path elimination - * Block '/Display' : Unused code path elimination - * Block '/Display' : Unused code path elimination - * Block '/Display' : Unused code path elimination + * Block '/Display' : Unused code path elimination + * Block '/Display' : Unused code path elimination + * Block '/Display' : Unused code path elimination * Block '/Display' : Unused code path elimination - * Block '/Display' : Unused code path elimination - * Block '/Display1' : Unused code path elimination - * Block '/Display' : Unused code path elimination - * Block '/Display' : Unused code path elimination - * Block '/Display1' : Unused code path elimination - * Block '/Display2' : Unused code path elimination - * Block '/Display3' : Unused code path elimination - * Block '/Display' : Unused code path elimination - * Block '/Display' : Unused code path elimination - * Block '/Display' : Unused code path elimination - * Block '/Display' : Unused code path elimination - * Block '/Display' : Unused code path elimination - * Block '/Display' : Unused code path elimination - * Block '/Display' : Unused code path elimination - * Block '/Display' : Unused code path elimination - * Block '/Display' : Unused code path elimination - * Block '/Display' : Unused code path elimination + * Block '/Display' : Unused code path elimination + * Block '/Display' : Unused code path elimination + * Block '/Display' : Unused code path elimination + * Block '/Display' : Unused code path elimination + * Block '/Display' : Unused code path elimination + * Block '/Display' : Unused code path elimination + * Block '/Display' : Unused code path elimination + * Block '/Display' : Unused code path elimination + * Block '/Display1' : Unused code path elimination + * Block '/Display' : Unused code path elimination + * Block '/Display' : Unused code path elimination + * Block '/Display1' : Unused code path elimination + * Block '/Display2' : Unused code path elimination + * Block '/Display3' : Unused code path elimination + * Block '/Display' : Unused code path elimination + * Block '/Display' : Unused code path elimination + * Block '/Display' : Unused code path elimination + * Block '/Display' : Unused code path elimination * Block '/Display' : Unused code path elimination * Block '/Display' : Unused code path elimination * Block '/Display' : Unused code path elimination @@ -1086,61 +1088,75 @@ extern RT_MODEL *const rtM; * Block '/Display' : Unused code path elimination * Block '/Display' : Unused code path elimination * Block '/Display' : Unused code path elimination + * Block '/Display' : Unused code path elimination + * Block '/Display' : Unused code path elimination + * Block '/Display' : Unused code path elimination + * Block '/Display' : Unused code path elimination + * Block '/Display' : Unused code path elimination + * Block '/Display' : Unused code path elimination * Block '/Data Type Conversion' : Eliminate redundant data type conversion * Block '/Data Type Conversion' : Eliminate redundant data type conversion * Block '/Data Type Conversion' : Eliminate redundant data type conversion * Block '/Data Type Conversion' : Eliminate redundant data type conversion - * Block '/Data Type Conversion1' : Eliminate redundant data type conversion - * Block '/Data Type Conversion' : Eliminate redundant data type conversion - * Block '/Data Type Conversion1' : Eliminate redundant data type conversion - * Block '/Data Type Conversion' : Eliminate redundant data type conversion - * Block '/Data Type Conversion1' : Eliminate redundant data type conversion - * Block '/Data Type Conversion' : Eliminate redundant data type conversion - * Block '/Data Type Conversion' : Eliminate redundant data type conversion - * Block '/Data Type Conversion1' : Eliminate redundant data type conversion - * Block '/Data Type Conversion2' : Eliminate redundant data type conversion - * Block '/Data Type Conversion6' : Eliminate redundant data type conversion - * Block '/Data Type Conversion' : Eliminate redundant data type conversion - * Block '/Data Type Conversion1' : Eliminate redundant data type conversion - * Block '/Data Type Conversion2' : Eliminate redundant data type conversion - * Block '/Data Type Conversion6' : Eliminate redundant data type conversion - * Block '/Data Type Conversion1' : Eliminate redundant data type conversion - * Block '/Data Type Conversion2' : Eliminate redundant data type conversion - * Block '/Data Type Conversion3' : Eliminate redundant data type conversion - * Block '/Data Type Conversion1' : Eliminate redundant data type conversion - * Block '/Data Type Conversion2' : Eliminate redundant data type conversion - * Block '/Data Type Conversion3' : Eliminate redundant data type conversion - * Block '/Data Type Conversion' : Eliminate redundant data type conversion - * Block '/Abs' : Eliminated since data is unsigned - * Block '/Abs' : Eliminated since data is unsigned - * Block '/Abs' : Eliminated since data is unsigned - * Block '/Abs' : Eliminated since data is unsigned - * Block '/Abs' : Eliminated since data is unsigned - * Block '/Abs' : Eliminated since data is unsigned - * Block '/Abs' : Eliminated since data is unsigned - * Block '/Abs' : Eliminated since data is unsigned + * Block '/Data Type Conversion1' : Eliminate redundant data type conversion + * Block '/Data Type Conversion' : Eliminate redundant data type conversion + * Block '/Data Type Conversion1' : Eliminate redundant data type conversion + * Block '/Data Type Conversion' : Eliminate redundant data type conversion + * Block '/Data Type Conversion1' : Eliminate redundant data type conversion + * Block '/Data Type Conversion' : Eliminate redundant data type conversion + * Block '/Data Type Conversion' : Eliminate redundant data type conversion + * Block '/Data Type Conversion1' : Eliminate redundant data type conversion + * Block '/Data Type Conversion2' : Eliminate redundant data type conversion + * Block '/Data Type Conversion6' : Eliminate redundant data type conversion + * Block '/Data Type Conversion' : Eliminate redundant data type conversion + * Block '/Data Type Conversion1' : Eliminate redundant data type conversion + * Block '/Data Type Conversion2' : Eliminate redundant data type conversion + * Block '/Data Type Conversion6' : Eliminate redundant data type conversion + * Block '/Data Type Conversion1' : Eliminate redundant data type conversion + * Block '/Data Type Conversion2' : Eliminate redundant data type conversion + * Block '/Data Type Conversion3' : Eliminate redundant data type conversion + * Block '/Data Type Conversion1' : Eliminate redundant data type conversion + * Block '/Data Type Conversion2' : Eliminate redundant data type conversion + * Block '/Data Type Conversion3' : Eliminate redundant data type conversion + * Block '/Data Type Conversion' : Eliminate redundant data type conversion + * Block '/Data Type Conversion1' : Eliminate redundant data type conversion + * Block '/Data Type Conversion2' : Eliminate redundant data type conversion + * Block '/Data Type Conversion6' : Eliminate redundant data type conversion + * Block '/Data Type Conversion' : Eliminate redundant data type conversion + * Block '/Data Type Conversion1' : Eliminate redundant data type conversion + * Block '/Data Type Conversion2' : Eliminate redundant data type conversion + * Block '/Data Type Conversion6' : Eliminate redundant data type conversion + * Block '/Data Type Conversion1' : Eliminate redundant data type conversion + * Block '/Data Type Conversion2' : Eliminate redundant data type conversion + * Block '/Data Type Conversion3' : Eliminate redundant data type conversion + * Block '/Data Type Conversion1' : Eliminate redundant data type conversion + * Block '/Data Type Conversion2' : Eliminate redundant data type conversion + * Block '/Data Type Conversion3' : Eliminate redundant data type conversion + * Block '/Data Type Conversion' : Eliminate redundant data type conversion + * Block '/Abs' : Eliminated since data is unsigned + * Block '/Abs' : Eliminated since data is unsigned + * Block '/Abs' : Eliminated since data is unsigned * Block '/Abs' : Eliminated since data is unsigned - * Block '/Abs' : Eliminated since data is unsigned - * Block '/Abs' : Eliminated since data is unsigned * Block '/Abs' : Eliminated since data is unsigned - * Block '/Abs' : Eliminated since data is unsigned - * Block '/Abs' : Eliminated since data is unsigned - * Block '/Abs' : Eliminated since data is unsigned + * Block '/Abs' : Eliminated since data is unsigned + * Block '/Abs' : Eliminated since data is unsigned + * Block '/Abs' : Eliminated since data is unsigned * Block '/Abs' : Eliminated since data is unsigned - * Block '/Abs' : Eliminated since data is unsigned - * Block '/Abs' : Eliminated since data is unsigned - * Block '/Abs' : Eliminated since data is unsigned + * Block '/Abs' : Eliminated since data is unsigned + * Block '/Abs' : Eliminated since data is unsigned + * Block '/Abs' : Eliminated since data is unsigned * Block '/Abs' : Eliminated since data is unsigned - * Block '/Data Type Conversion' : Eliminate redundant data type conversion - * Block '/Data Type Conversion' : Eliminate redundant data type conversion - * Block '/Data Type Conversion' : Eliminate redundant data type conversion - * Block '/Data Type Conversion' : Eliminate redundant data type conversion - * Block '/Abs' : Eliminated since data is unsigned - * Block '/Abs' : Eliminated since data is unsigned - * Block '/Abs' : Eliminated since data is unsigned - * Block '/Abs' : Eliminated since data is unsigned - * Block '/Abs' : Eliminated since data is unsigned - * Block '/Abs' : Eliminated since data is unsigned + * Block '/Abs' : Eliminated since data is unsigned + * Block '/Abs' : Eliminated since data is unsigned + * Block '/Abs' : Eliminated since data is unsigned + * Block '/Abs' : Eliminated since data is unsigned + * Block '/Abs' : Eliminated since data is unsigned + * Block '/Abs' : Eliminated since data is unsigned + * Block '/Abs' : Eliminated since data is unsigned + * Block '/Data Type Conversion' : Eliminate redundant data type conversion + * Block '/Data Type Conversion' : Eliminate redundant data type conversion + * Block '/Data Type Conversion' : Eliminate redundant data type conversion + * Block '/Data Type Conversion' : Eliminate redundant data type conversion * Block '/Abs' : Eliminated since data is unsigned * Block '/Abs' : Eliminated since data is unsigned * Block '/Abs' : Eliminated since data is unsigned @@ -1153,6 +1169,12 @@ extern RT_MODEL *const rtM; * Block '/Abs' : Eliminated since data is unsigned * Block '/Abs' : Eliminated since data is unsigned * Block '/Abs' : Eliminated since data is unsigned + * Block '/Abs' : Eliminated since data is unsigned + * Block '/Abs' : Eliminated since data is unsigned + * Block '/Abs' : Eliminated since data is unsigned + * Block '/Abs' : Eliminated since data is unsigned + * Block '/Abs' : Eliminated since data is unsigned + * Block '/Abs' : Eliminated since data is unsigned */ /*- @@ -1175,7 +1197,7 @@ extern RT_MODEL *const rtM; * '' : 'HVAC_model/CAN INPUT' * '' : 'HVAC_model/CAN OUTPUT' * '' : 'HVAC_model/LIN' - * '' : 'HVAC_model/PWM and valves in manual' + * '' : 'HVAC_model/PWM and valves in manual1' * '' : 'HVAC_model/PWN' * '' : 'HVAC_model/Start control' * '' : 'HVAC_model/dbg CAN' @@ -1652,764 +1674,811 @@ extern RT_MODEL *const rtM; * '' : 'HVAC_model/CAN INPUT/Subsystem3/Subsystem' * '' : 'HVAC_model/CAN INPUT/Subsystem5/Subsystem' * '' : 'HVAC_model/CAN INPUT/Subsystem6/Subsystem1' - * '' : 'HVAC_model/LIN/CHANEL0' - * '' : 'HVAC_model/LIN/CHANEL1' - * '' : 'HVAC_model/LIN/CHANEL2' - * '' : 'HVAC_model/LIN/CHANEL0/Actuator_Ch0_Command_Model' - * '' : 'HVAC_model/LIN/CHANEL0/COM = 0' - * '' : 'HVAC_model/LIN/CHANEL0/Check Stall Max' - * '' : 'HVAC_model/LIN/CHANEL0/Check Stall Min' - * '' : 'HVAC_model/LIN/CHANEL0/Homing' - * '' : 'HVAC_model/LIN/CHANEL0/Initial CPOS Max' - * '' : 'HVAC_model/LIN/CHANEL0/Initial CPOS Min' - * '' : 'HVAC_model/LIN/CHANEL0/Move to position Max' - * '' : 'HVAC_model/LIN/CHANEL0/Move to position Min' - * '' : 'HVAC_model/LIN/CHANEL0/Normal Mode' - * '' : 'HVAC_model/LIN/CHANEL0/Stop Mode' - * '' : 'HVAC_model/LIN/CHANEL0/steps to percents' - * '' : 'HVAC_model/LIN/CHANEL0/COM = 0/Compare To Constant' - * '' : 'HVAC_model/LIN/CHANEL0/Check Stall Max/If Action Subsystem2' - * '' : 'HVAC_model/LIN/CHANEL0/Check Stall Max/If Action Subsystem3' - * '' : 'HVAC_model/LIN/CHANEL0/Check Stall Max/If Action Subsystem2/Write' - * '' : 'HVAC_model/LIN/CHANEL0/Check Stall Min/If Action Subsystem2' - * '' : 'HVAC_model/LIN/CHANEL0/Check Stall Min/If Action Subsystem3' - * '' : 'HVAC_model/LIN/CHANEL0/Check Stall Min/If Action Subsystem2/Write' - * '' : 'HVAC_model/LIN/CHANEL0/Homing/Count step actuator' - * '' : 'HVAC_model/LIN/CHANEL0/Homing/Switch Case Action Subsystem' - * '' : 'HVAC_model/LIN/CHANEL0/Homing/Switch Case Action Subsystem1' - * '' : 'HVAC_model/LIN/CHANEL0/Homing/Switch Case Action Subsystem2' - * '' : 'HVAC_model/LIN/CHANEL0/Homing/Switch Case Action Subsystem3' - * '' : 'HVAC_model/LIN/CHANEL0/Homing/Switch Case Action Subsystem4' - * '' : 'HVAC_model/LIN/CHANEL0/Homing/Switch Case Action Subsystem/Compare To Constant' - * '' : 'HVAC_model/LIN/CHANEL0/Homing/Switch Case Action Subsystem/Compare To Constant1' - * '' : 'HVAC_model/LIN/CHANEL0/Homing/Switch Case Action Subsystem/MAX POSITION' - * '' : 'HVAC_model/LIN/CHANEL0/Homing/Switch Case Action Subsystem/Subsystem' - * '' : 'HVAC_model/LIN/CHANEL0/Homing/Switch Case Action Subsystem1/CAN ERROR' - * '' : 'HVAC_model/LIN/CHANEL0/Homing/Switch Case Action Subsystem1/Compare To Constant' - * '' : 'HVAC_model/LIN/CHANEL0/Homing/Switch Case Action Subsystem1/MAX POSITION' - * '' : 'HVAC_model/LIN/CHANEL0/Homing/Switch Case Action Subsystem1/Subsystem' - * '' : 'HVAC_model/LIN/CHANEL0/Homing/Switch Case Action Subsystem1/UDS ERROR' - * '' : 'HVAC_model/LIN/CHANEL0/Homing/Switch Case Action Subsystem1/CAN ERROR/Write ERROR' - * '' : 'HVAC_model/LIN/CHANEL0/Homing/Switch Case Action Subsystem2/Compare To Constant3' - * '' : 'HVAC_model/LIN/CHANEL0/Homing/Switch Case Action Subsystem2/Compare To Constant4' - * '' : 'HVAC_model/LIN/CHANEL0/Homing/Switch Case Action Subsystem2/MAX POSITION' - * '' : 'HVAC_model/LIN/CHANEL0/Homing/Switch Case Action Subsystem3/If Action Subsystem' - * '' : 'HVAC_model/LIN/CHANEL0/Homing/Switch Case Action Subsystem3/If Action Subsystem1' - * '' : 'HVAC_model/LIN/CHANEL0/Homing/Switch Case Action Subsystem3/MAX POSITION' - * '' : 'HVAC_model/LIN/CHANEL0/Homing/Switch Case Action Subsystem3/If Action Subsystem/If Action Subsystem' - * '' : 'HVAC_model/LIN/CHANEL0/Homing/Switch Case Action Subsystem3/If Action Subsystem/If Action Subsystem1' - * '' : 'HVAC_model/LIN/CHANEL0/Homing/Switch Case Action Subsystem3/If Action Subsystem/MATLAB Function' - * '' : 'HVAC_model/LIN/CHANEL0/Homing/Switch Case Action Subsystem3/If Action Subsystem/MAX POSITION' - * '' : 'HVAC_model/LIN/CHANEL0/Homing/Switch Case Action Subsystem3/If Action Subsystem1/CAN ERROR' - * '' : 'HVAC_model/LIN/CHANEL0/Homing/Switch Case Action Subsystem3/If Action Subsystem1/UDS ERROR' - * '' : 'HVAC_model/LIN/CHANEL0/Homing/Switch Case Action Subsystem3/If Action Subsystem1/CAN ERROR/Write ERROR' - * '' : 'HVAC_model/LIN/CHANEL0/Homing/Switch Case Action Subsystem4/MAX POSITION' - * '' : 'HVAC_model/LIN/CHANEL0/Initial CPOS Max/If Action Subsystem2' - * '' : 'HVAC_model/LIN/CHANEL0/Initial CPOS Max/If Action Subsystem3' - * '' : 'HVAC_model/LIN/CHANEL0/Initial CPOS Max/If Action Subsystem2/Write' - * '' : 'HVAC_model/LIN/CHANEL0/Initial CPOS Min/If Action Subsystem' - * '' : 'HVAC_model/LIN/CHANEL0/Initial CPOS Min/If Action Subsystem3' - * '' : 'HVAC_model/LIN/CHANEL0/Initial CPOS Min/If Action Subsystem/Write' - * '' : 'HVAC_model/LIN/CHANEL0/Move to position Max/If Action Subsystem2' - * '' : 'HVAC_model/LIN/CHANEL0/Move to position Max/If Action Subsystem3' - * '' : 'HVAC_model/LIN/CHANEL0/Move to position Max/If Action Subsystem2/Write' - * '' : 'HVAC_model/LIN/CHANEL0/Move to position Min/If Action Subsystem2' - * '' : 'HVAC_model/LIN/CHANEL0/Move to position Min/If Action Subsystem3' - * '' : 'HVAC_model/LIN/CHANEL0/Move to position Min/If Action Subsystem2/Write' - * '' : 'HVAC_model/LIN/CHANEL0/Normal Mode/If Action Subsystem2' - * '' : 'HVAC_model/LIN/CHANEL0/Normal Mode/If Action Subsystem3' - * '' : 'HVAC_model/LIN/CHANEL0/Normal Mode/If Action Subsystem2/Write' - * '' : 'HVAC_model/LIN/CHANEL0/Stop Mode/If Action Subsystem2' - * '' : 'HVAC_model/LIN/CHANEL0/Stop Mode/If Action Subsystem3' - * '' : 'HVAC_model/LIN/CHANEL0/Stop Mode/If Action Subsystem2/Write' - * '' : 'HVAC_model/LIN/CHANEL1/Actuator_Ch1_Command_Model' - * '' : 'HVAC_model/LIN/CHANEL1/COM = 0' - * '' : 'HVAC_model/LIN/CHANEL1/Check Stall Max' - * '' : 'HVAC_model/LIN/CHANEL1/Check Stall Min' - * '' : 'HVAC_model/LIN/CHANEL1/Homing' - * '' : 'HVAC_model/LIN/CHANEL1/Initial CPOS Max' - * '' : 'HVAC_model/LIN/CHANEL1/Initial CPOS Min' - * '' : 'HVAC_model/LIN/CHANEL1/Move to position Max' - * '' : 'HVAC_model/LIN/CHANEL1/Move to position Min' - * '' : 'HVAC_model/LIN/CHANEL1/Normal Mode' - * '' : 'HVAC_model/LIN/CHANEL1/Stop Mode' - * '' : 'HVAC_model/LIN/CHANEL1/stepr to percents' - * '' : 'HVAC_model/LIN/CHANEL1/COM = 0/Compare To Constant' - * '' : 'HVAC_model/LIN/CHANEL1/Check Stall Max/If Action Subsystem2' - * '' : 'HVAC_model/LIN/CHANEL1/Check Stall Max/If Action Subsystem3' - * '' : 'HVAC_model/LIN/CHANEL1/Check Stall Max/If Action Subsystem2/Write' - * '' : 'HVAC_model/LIN/CHANEL1/Check Stall Min/If Action Subsystem2' - * '' : 'HVAC_model/LIN/CHANEL1/Check Stall Min/If Action Subsystem3' - * '' : 'HVAC_model/LIN/CHANEL1/Check Stall Min/If Action Subsystem2/Write' - * '' : 'HVAC_model/LIN/CHANEL1/Homing/Count step actuator' - * '' : 'HVAC_model/LIN/CHANEL1/Homing/Switch Case Action Subsystem' - * '' : 'HVAC_model/LIN/CHANEL1/Homing/Switch Case Action Subsystem1' - * '' : 'HVAC_model/LIN/CHANEL1/Homing/Switch Case Action Subsystem2' - * '' : 'HVAC_model/LIN/CHANEL1/Homing/Switch Case Action Subsystem3' - * '' : 'HVAC_model/LIN/CHANEL1/Homing/Switch Case Action Subsystem4' - * '' : 'HVAC_model/LIN/CHANEL1/Homing/Switch Case Action Subsystem/Compare To Constant' - * '' : 'HVAC_model/LIN/CHANEL1/Homing/Switch Case Action Subsystem/Compare To Constant1' - * '' : 'HVAC_model/LIN/CHANEL1/Homing/Switch Case Action Subsystem/MAX POSITION' - * '' : 'HVAC_model/LIN/CHANEL1/Homing/Switch Case Action Subsystem/Subsystem' - * '' : 'HVAC_model/LIN/CHANEL1/Homing/Switch Case Action Subsystem1/CAN ERROR' - * '' : 'HVAC_model/LIN/CHANEL1/Homing/Switch Case Action Subsystem1/Compare To Constant' - * '' : 'HVAC_model/LIN/CHANEL1/Homing/Switch Case Action Subsystem1/MAX POSITION' - * '' : 'HVAC_model/LIN/CHANEL1/Homing/Switch Case Action Subsystem1/Subsystem' - * '' : 'HVAC_model/LIN/CHANEL1/Homing/Switch Case Action Subsystem1/UDS ERROR' - * '' : 'HVAC_model/LIN/CHANEL1/Homing/Switch Case Action Subsystem1/CAN ERROR/Write ERROR' - * '' : 'HVAC_model/LIN/CHANEL1/Homing/Switch Case Action Subsystem2/Compare To Constant3' - * '' : 'HVAC_model/LIN/CHANEL1/Homing/Switch Case Action Subsystem2/Compare To Constant4' - * '' : 'HVAC_model/LIN/CHANEL1/Homing/Switch Case Action Subsystem2/MAX POSITION' - * '' : 'HVAC_model/LIN/CHANEL1/Homing/Switch Case Action Subsystem3/If Action Subsystem' - * '' : 'HVAC_model/LIN/CHANEL1/Homing/Switch Case Action Subsystem3/If Action Subsystem1' - * '' : 'HVAC_model/LIN/CHANEL1/Homing/Switch Case Action Subsystem3/MAX POSITION' - * '' : 'HVAC_model/LIN/CHANEL1/Homing/Switch Case Action Subsystem3/If Action Subsystem/If Action Subsystem' - * '' : 'HVAC_model/LIN/CHANEL1/Homing/Switch Case Action Subsystem3/If Action Subsystem/If Action Subsystem1' - * '' : 'HVAC_model/LIN/CHANEL1/Homing/Switch Case Action Subsystem3/If Action Subsystem/MATLAB Function' - * '' : 'HVAC_model/LIN/CHANEL1/Homing/Switch Case Action Subsystem3/If Action Subsystem/MAX POSITION' - * '' : 'HVAC_model/LIN/CHANEL1/Homing/Switch Case Action Subsystem3/If Action Subsystem1/CAN ERROR' - * '' : 'HVAC_model/LIN/CHANEL1/Homing/Switch Case Action Subsystem3/If Action Subsystem1/UDS ERROR' - * '' : 'HVAC_model/LIN/CHANEL1/Homing/Switch Case Action Subsystem3/If Action Subsystem1/CAN ERROR/Write ERROR' - * '' : 'HVAC_model/LIN/CHANEL1/Homing/Switch Case Action Subsystem4/MAX POSITION' - * '' : 'HVAC_model/LIN/CHANEL1/Initial CPOS Max/If Action Subsystem2' - * '' : 'HVAC_model/LIN/CHANEL1/Initial CPOS Max/If Action Subsystem3' - * '' : 'HVAC_model/LIN/CHANEL1/Initial CPOS Max/If Action Subsystem2/Write' - * '' : 'HVAC_model/LIN/CHANEL1/Initial CPOS Min/If Action Subsystem' - * '' : 'HVAC_model/LIN/CHANEL1/Initial CPOS Min/If Action Subsystem3' - * '' : 'HVAC_model/LIN/CHANEL1/Initial CPOS Min/If Action Subsystem/Write' - * '' : 'HVAC_model/LIN/CHANEL1/Move to position Max/If Action Subsystem2' - * '' : 'HVAC_model/LIN/CHANEL1/Move to position Max/If Action Subsystem3' - * '' : 'HVAC_model/LIN/CHANEL1/Move to position Max/If Action Subsystem2/Write' - * '' : 'HVAC_model/LIN/CHANEL1/Move to position Min/If Action Subsystem2' - * '' : 'HVAC_model/LIN/CHANEL1/Move to position Min/If Action Subsystem3' - * '' : 'HVAC_model/LIN/CHANEL1/Move to position Min/If Action Subsystem2/Write' - * '' : 'HVAC_model/LIN/CHANEL1/Normal Mode/If Action Subsystem2' - * '' : 'HVAC_model/LIN/CHANEL1/Normal Mode/If Action Subsystem3' - * '' : 'HVAC_model/LIN/CHANEL1/Normal Mode/If Action Subsystem2/Write' - * '' : 'HVAC_model/LIN/CHANEL1/Stop Mode/If Action Subsystem2' - * '' : 'HVAC_model/LIN/CHANEL1/Stop Mode/If Action Subsystem3' - * '' : 'HVAC_model/LIN/CHANEL1/Stop Mode/If Action Subsystem2/Write' - * '' : 'HVAC_model/LIN/CHANEL2/Actuator_Ch1_Command_Model' - * '' : 'HVAC_model/LIN/CHANEL2/COM = 0' - * '' : 'HVAC_model/LIN/CHANEL2/Check Stall Max' - * '' : 'HVAC_model/LIN/CHANEL2/Check Stall Min' - * '' : 'HVAC_model/LIN/CHANEL2/Homing' - * '' : 'HVAC_model/LIN/CHANEL2/Initial CPOS Max' - * '' : 'HVAC_model/LIN/CHANEL2/Initial CPOS Min' - * '' : 'HVAC_model/LIN/CHANEL2/Move to position Max' - * '' : 'HVAC_model/LIN/CHANEL2/Move to position Min' - * '' : 'HVAC_model/LIN/CHANEL2/Normal Mode' - * '' : 'HVAC_model/LIN/CHANEL2/Stop Mode' - * '' : 'HVAC_model/LIN/CHANEL2/stepr to percents' - * '' : 'HVAC_model/LIN/CHANEL2/COM = 0/Compare To Constant' - * '' : 'HVAC_model/LIN/CHANEL2/Check Stall Max/If Action Subsystem2' - * '' : 'HVAC_model/LIN/CHANEL2/Check Stall Max/If Action Subsystem3' - * '' : 'HVAC_model/LIN/CHANEL2/Check Stall Max/If Action Subsystem2/Write' - * '' : 'HVAC_model/LIN/CHANEL2/Check Stall Min/If Action Subsystem2' - * '' : 'HVAC_model/LIN/CHANEL2/Check Stall Min/If Action Subsystem3' - * '' : 'HVAC_model/LIN/CHANEL2/Check Stall Min/If Action Subsystem2/Write' - * '' : 'HVAC_model/LIN/CHANEL2/Homing/Count step actuator' - * '' : 'HVAC_model/LIN/CHANEL2/Homing/Switch Case Action Subsystem' - * '' : 'HVAC_model/LIN/CHANEL2/Homing/Switch Case Action Subsystem1' - * '' : 'HVAC_model/LIN/CHANEL2/Homing/Switch Case Action Subsystem2' - * '' : 'HVAC_model/LIN/CHANEL2/Homing/Switch Case Action Subsystem3' - * '' : 'HVAC_model/LIN/CHANEL2/Homing/Switch Case Action Subsystem4' - * '' : 'HVAC_model/LIN/CHANEL2/Homing/Switch Case Action Subsystem/Compare To Constant' - * '' : 'HVAC_model/LIN/CHANEL2/Homing/Switch Case Action Subsystem/Compare To Constant1' - * '' : 'HVAC_model/LIN/CHANEL2/Homing/Switch Case Action Subsystem/MAX POSITION' - * '' : 'HVAC_model/LIN/CHANEL2/Homing/Switch Case Action Subsystem/Subsystem' - * '' : 'HVAC_model/LIN/CHANEL2/Homing/Switch Case Action Subsystem1/CAN ERROR' - * '' : 'HVAC_model/LIN/CHANEL2/Homing/Switch Case Action Subsystem1/Compare To Constant' - * '' : 'HVAC_model/LIN/CHANEL2/Homing/Switch Case Action Subsystem1/MAX POSITION' - * '' : 'HVAC_model/LIN/CHANEL2/Homing/Switch Case Action Subsystem1/Subsystem' - * '' : 'HVAC_model/LIN/CHANEL2/Homing/Switch Case Action Subsystem1/UDS ERROR' - * '' : 'HVAC_model/LIN/CHANEL2/Homing/Switch Case Action Subsystem1/CAN ERROR/Write ERROR' - * '' : 'HVAC_model/LIN/CHANEL2/Homing/Switch Case Action Subsystem2/Compare To Constant3' - * '' : 'HVAC_model/LIN/CHANEL2/Homing/Switch Case Action Subsystem2/Compare To Constant4' - * '' : 'HVAC_model/LIN/CHANEL2/Homing/Switch Case Action Subsystem2/MAX POSITION' - * '' : 'HVAC_model/LIN/CHANEL2/Homing/Switch Case Action Subsystem3/If Action Subsystem' - * '' : 'HVAC_model/LIN/CHANEL2/Homing/Switch Case Action Subsystem3/If Action Subsystem1' - * '' : 'HVAC_model/LIN/CHANEL2/Homing/Switch Case Action Subsystem3/MAX POSITION' - * '' : 'HVAC_model/LIN/CHANEL2/Homing/Switch Case Action Subsystem3/If Action Subsystem/If Action Subsystem' - * '' : 'HVAC_model/LIN/CHANEL2/Homing/Switch Case Action Subsystem3/If Action Subsystem/If Action Subsystem1' - * '' : 'HVAC_model/LIN/CHANEL2/Homing/Switch Case Action Subsystem3/If Action Subsystem/MATLAB Function' - * '' : 'HVAC_model/LIN/CHANEL2/Homing/Switch Case Action Subsystem3/If Action Subsystem/MAX POSITION' - * '' : 'HVAC_model/LIN/CHANEL2/Homing/Switch Case Action Subsystem3/If Action Subsystem1/CAN ERROR' - * '' : 'HVAC_model/LIN/CHANEL2/Homing/Switch Case Action Subsystem3/If Action Subsystem1/UDS ERROR' - * '' : 'HVAC_model/LIN/CHANEL2/Homing/Switch Case Action Subsystem3/If Action Subsystem1/CAN ERROR/Write ERROR' - * '' : 'HVAC_model/LIN/CHANEL2/Homing/Switch Case Action Subsystem4/MAX POSITION' - * '' : 'HVAC_model/LIN/CHANEL2/Initial CPOS Max/If Action Subsystem2' - * '' : 'HVAC_model/LIN/CHANEL2/Initial CPOS Max/If Action Subsystem3' - * '' : 'HVAC_model/LIN/CHANEL2/Initial CPOS Max/If Action Subsystem2/Write' - * '' : 'HVAC_model/LIN/CHANEL2/Initial CPOS Min/If Action Subsystem' - * '' : 'HVAC_model/LIN/CHANEL2/Initial CPOS Min/If Action Subsystem3' - * '' : 'HVAC_model/LIN/CHANEL2/Initial CPOS Min/If Action Subsystem/Write' - * '' : 'HVAC_model/LIN/CHANEL2/Move to position Max/If Action Subsystem2' - * '' : 'HVAC_model/LIN/CHANEL2/Move to position Max/If Action Subsystem3' - * '' : 'HVAC_model/LIN/CHANEL2/Move to position Max/If Action Subsystem2/Write' - * '' : 'HVAC_model/LIN/CHANEL2/Move to position Min/If Action Subsystem2' - * '' : 'HVAC_model/LIN/CHANEL2/Move to position Min/If Action Subsystem3' - * '' : 'HVAC_model/LIN/CHANEL2/Move to position Min/If Action Subsystem2/Write' - * '' : 'HVAC_model/LIN/CHANEL2/Normal Mode/If Action Subsystem2' - * '' : 'HVAC_model/LIN/CHANEL2/Normal Mode/If Action Subsystem3' - * '' : 'HVAC_model/LIN/CHANEL2/Normal Mode/If Action Subsystem2/Write' - * '' : 'HVAC_model/LIN/CHANEL2/Stop Mode/If Action Subsystem2' - * '' : 'HVAC_model/LIN/CHANEL2/Stop Mode/If Action Subsystem3' - * '' : 'HVAC_model/LIN/CHANEL2/Stop Mode/If Action Subsystem2/Write' - * '' : 'HVAC_model/PWM and valves in manual/PWM in manual mode' - * '' : 'HVAC_model/PWM and valves in manual/PWM in manual mode/Front Left AF - manual directions' - * '' : 'HVAC_model/PWM and valves in manual/PWM in manual mode/Front Right AF - manual directions' - * '' : 'HVAC_model/PWM and valves in manual/PWM in manual mode/Rear Left AF - manual directions' - * '' : 'HVAC_model/PWM and valves in manual/PWM in manual mode/Rear Right AF - manual directions' - * '' : 'HVAC_model/PWM and valves in manual/PWM in manual mode/Write' - * '' : 'HVAC_model/PWM and valves in manual/PWM in manual mode/Write1' - * '' : 'HVAC_model/PWM and valves in manual/PWM in manual mode/Write2' - * '' : 'HVAC_model/PWM and valves in manual/PWM in manual mode/Front Left AF - manual directions/AF for Bi Level' - * '' : 'HVAC_model/PWM and valves in manual/PWM in manual mode/Front Left AF - manual directions/AF for Def' - * '' : 'HVAC_model/PWM and valves in manual/PWM in manual mode/Front Left AF - manual directions/AF for Foor + Def' - * '' : 'HVAC_model/PWM and valves in manual/PWM in manual mode/Front Left AF - manual directions/AF for Foot' - * '' : 'HVAC_model/PWM and valves in manual/PWM in manual mode/Front Left AF - manual directions/AF for Hi_Level' - * '' : 'HVAC_model/PWM and valves in manual/PWM in manual mode/Front Left AF - manual directions/AF for Tri-Level' - * '' : 'HVAC_model/PWM and valves in manual/PWM in manual mode/Front Left AF - manual directions/AF for Vent mode' - * '' : 'HVAC_model/PWM and valves in manual/PWM in manual mode/Front Right AF - manual directions/AF for Bi Level' - * '' : 'HVAC_model/PWM and valves in manual/PWM in manual mode/Front Right AF - manual directions/AF for Def' - * '' : 'HVAC_model/PWM and valves in manual/PWM in manual mode/Front Right AF - manual directions/AF for Foor + Def' - * '' : 'HVAC_model/PWM and valves in manual/PWM in manual mode/Front Right AF - manual directions/AF for Foot' - * '' : 'HVAC_model/PWM and valves in manual/PWM in manual mode/Front Right AF - manual directions/AF for Hi_Level' - * '' : 'HVAC_model/PWM and valves in manual/PWM in manual mode/Front Right AF - manual directions/AF for Tri-Level' - * '' : 'HVAC_model/PWM and valves in manual/PWM in manual mode/Front Right AF - manual directions/AF for Vent mode' - * '' : 'HVAC_model/PWM and valves in manual/PWM in manual mode/Rear Left AF - manual directions/AF for Bi Level R' - * '' : 'HVAC_model/PWM and valves in manual/PWM in manual mode/Rear Left AF - manual directions/AF for Foot R' - * '' : 'HVAC_model/PWM and valves in manual/PWM in manual mode/Rear Left AF - manual directions/AF for Vent mode R' - * '' : 'HVAC_model/PWM and valves in manual/PWM in manual mode/Rear Right AF - manual directions/AF for Bi Level R' - * '' : 'HVAC_model/PWM and valves in manual/PWM in manual mode/Rear Right AF - manual directions/AF for Foot R' - * '' : 'HVAC_model/PWM and valves in manual/PWM in manual mode/Rear Right AF - manual directions/AF for Vent mode R' - * '' : 'HVAC_model/PWN/Write' - * '' : 'HVAC_model/PWN/Write1' - * '' : 'HVAC_model/PWN/Write2' - * '' : 'HVAC_model/PWN/Write3' - * '' : 'HVAC_model/Start control/If Action Subsystem' - * '' : 'HVAC_model/Start control/Start Control Front' - * '' : 'HVAC_model/Start control/Start Control Rear' - * '' : 'HVAC_model/Start control/Start Control Front/Step -1 F (Entry Condition)' - * '' : 'HVAC_model/Start control/Start Control Front/Step 0 F' - * '' : 'HVAC_model/Start control/Start Control Front/Step 1 F' - * '' : 'HVAC_model/Start control/Start Control Front/Step 2 F' - * '' : 'HVAC_model/Start control/Start Control Front/Step 3 F' - * '' : 'HVAC_model/Start control/Start Control Front/Step -1 F (Entry Condition)/Level 0' - * '' : 'HVAC_model/Start control/Start Control Front/Step -1 F (Entry Condition)/Level 1' - * '' : 'HVAC_model/Start control/Start Control Front/Step -1 F (Entry Condition)/Level 2' - * '' : 'HVAC_model/Start control/Start Control Front/Step -1 F (Entry Condition)/Level 3' - * '' : 'HVAC_model/Start control/Start Control Front/Step -1 F (Entry Condition)/Level 4' - * '' : 'HVAC_model/Start control/Start Control Front/Step -1 F (Entry Condition)/Level 5' - * '' : 'HVAC_model/Start control/Start Control Front/Step -1 F (Entry Condition)/Level 0/g_assSTART_ENTER_INCAR' - * '' : 'HVAC_model/Start control/Start Control Front/Step -1 F (Entry Condition)/Level 0/g_ausSTART_ENTER_SETTEMP' - * '' : 'HVAC_model/Start control/Start Control Front/Step -1 F (Entry Condition)/Level 1/g_assSTART_ENTER_INCAR' - * '' : 'HVAC_model/Start control/Start Control Front/Step -1 F (Entry Condition)/Level 1/g_ausSTART_ENTER_SETTEMP' - * '' : 'HVAC_model/Start control/Start Control Front/Step -1 F (Entry Condition)/Level 3/g_assSTART_ENTER_COOLANT ' - * '' : 'HVAC_model/Start control/Start Control Front/Step -1 F (Entry Condition)/Level 4/g_assSTART_ENTER_COOLANT ' - * '' : 'HVAC_model/Start control/Start Control Front/Step -1 F (Entry Condition)/Level 5/g_assSTART_ENTER_COOLANT ' - * '' : 'HVAC_model/Start control/Start Control Front/Step 0 F/Level 0' - * '' : 'HVAC_model/Start control/Start Control Front/Step 0 F/Level 1' - * '' : 'HVAC_model/Start control/Start Control Front/Step 0 F/Level 2' - * '' : 'HVAC_model/Start control/Start Control Front/Step 0 F/Level 3' - * '' : 'HVAC_model/Start control/Start Control Front/Step 0 F/Level 4' - * '' : 'HVAC_model/Start control/Start Control Front/Step 0 F/Level 5' - * '' : 'HVAC_model/Start control/Start Control Front/Step 0 F/Level 3/g_assSTART_COOLANT_STEP0_TO_1 ' - * '' : 'HVAC_model/Start control/Start Control Front/Step 0 F/Level 3/incar filter down' - * '' : 'HVAC_model/Start control/Start Control Front/Step 0 F/Level 3/incar filter up' - * '' : 'HVAC_model/Start control/Start Control Front/Step 0 F/Level 4/g_assSTART_COOLANT_STEP0_TO_1 ' - * '' : 'HVAC_model/Start control/Start Control Front/Step 0 F/Level 4/incar filter down' - * '' : 'HVAC_model/Start control/Start Control Front/Step 0 F/Level 4/incar filter up' - * '' : 'HVAC_model/Start control/Start Control Front/Step 0 F/Level 5/g_assSTART_COOLANT_STEP0_TO_1 ' - * '' : 'HVAC_model/Start control/Start Control Front/Step 0 F/Level 5/incar filter down' - * '' : 'HVAC_model/Start control/Start Control Front/Step 0 F/Level 5/incar filter up' - * '' : 'HVAC_model/Start control/Start Control Front/Step 1 F/Level 0' - * '' : 'HVAC_model/Start control/Start Control Front/Step 1 F/Level 1' - * '' : 'HVAC_model/Start control/Start Control Front/Step 1 F/Level 2' - * '' : 'HVAC_model/Start control/Start Control Front/Step 1 F/Level 3' - * '' : 'HVAC_model/Start control/Start Control Front/Step 1 F/Level 4' - * '' : 'HVAC_model/Start control/Start Control Front/Step 1 F/Level 5' - * '' : 'HVAC_model/Start control/Start Control Front/Step 1 F/Level 0/3 way valve status' - * '' : 'HVAC_model/Start control/Start Control Front/Step 1 F/Level 0/Dtg_FrontLower_X' - * '' : 'HVAC_model/Start control/Start Control Front/Step 1 F/Level 0/Dtg_FrontUpper_X' - * '' : 'HVAC_model/Start control/Start Control Front/Step 1 F/Level 0/Incar temp goto from step 1 to step 2 ' - * '' : 'HVAC_model/Start control/Start Control Front/Step 1 F/Level 0/RealTime_Timer' - * '' : 'HVAC_model/Start control/Start Control Front/Step 1 F/Level 0/Time goto from step 1 to step 2 ' - * '' : 'HVAC_model/Start control/Start Control Front/Step 1 F/Level 0/blower FR' - * '' : 'HVAC_model/Start control/Start Control Front/Step 1 F/Level 0/incar filter down' - * '' : 'HVAC_model/Start control/Start Control Front/Step 1 F/Level 0/incar filter up' - * '' : 'HVAC_model/Start control/Start Control Front/Step 1 F/Level 0/mode FR step 1' - * '' : 'HVAC_model/Start control/Start Control Front/Step 1 F/Level 0/window heating' - * '' : 'HVAC_model/Start control/Start Control Front/Step 1 F/Level 1/3 way valve status' - * '' : 'HVAC_model/Start control/Start Control Front/Step 1 F/Level 1/Dtg_FrontLower_X' - * '' : 'HVAC_model/Start control/Start Control Front/Step 1 F/Level 1/Dtg_FrontUpper_X' - * '' : 'HVAC_model/Start control/Start Control Front/Step 1 F/Level 1/Incar temp goto from step 1 to step 2 ' - * '' : 'HVAC_model/Start control/Start Control Front/Step 1 F/Level 1/RealTime_Timer' - * '' : 'HVAC_model/Start control/Start Control Front/Step 1 F/Level 1/Time goto from step 1 to step 2 ' - * '' : 'HVAC_model/Start control/Start Control Front/Step 1 F/Level 1/blower FR' - * '' : 'HVAC_model/Start control/Start Control Front/Step 1 F/Level 1/incar filter down' - * '' : 'HVAC_model/Start control/Start Control Front/Step 1 F/Level 1/incar filter up' - * '' : 'HVAC_model/Start control/Start Control Front/Step 1 F/Level 1/mode FR step 1' - * '' : 'HVAC_model/Start control/Start Control Front/Step 1 F/Level 1/window heating' - * '' : 'HVAC_model/Start control/Start Control Front/Step 1 F/Level 3/3 way valve status' - * '' : 'HVAC_model/Start control/Start Control Front/Step 1 F/Level 3/Dtg_FrontLower_X' - * '' : 'HVAC_model/Start control/Start Control Front/Step 1 F/Level 3/Dtg_FrontUpper_X' - * '' : 'HVAC_model/Start control/Start Control Front/Step 1 F/Level 3/Incar temp goto from step 1 to step 2 ' - * '' : 'HVAC_model/Start control/Start Control Front/Step 1 F/Level 3/RealTime_Timer' - * '' : 'HVAC_model/Start control/Start Control Front/Step 1 F/Level 3/Time goto from step 1 to step 2 ' - * '' : 'HVAC_model/Start control/Start Control Front/Step 1 F/Level 3/blower в зависимости от ECT' - * '' : 'HVAC_model/Start control/Start Control Front/Step 1 F/Level 3/g_assSTART_COOLANT_TO_STEP2 ' - * '' : 'HVAC_model/Start control/Start Control Front/Step 1 F/Level 3/incar filter down' - * '' : 'HVAC_model/Start control/Start Control Front/Step 1 F/Level 3/incar filter up' - * '' : 'HVAC_model/Start control/Start Control Front/Step 1 F/Level 3/mode FR step 1' - * '' : 'HVAC_model/Start control/Start Control Front/Step 1 F/Level 3/window heating' - * '' : 'HVAC_model/Start control/Start Control Front/Step 1 F/Level 3/blower в зависимости от ECT/ECT min max' - * '' : 'HVAC_model/Start control/Start Control Front/Step 1 F/Level 3/blower в зависимости от ECT/blower min max' - * '' : 'HVAC_model/Start control/Start Control Front/Step 1 F/Level 4/3 way valve status' - * '' : 'HVAC_model/Start control/Start Control Front/Step 1 F/Level 4/Dtg_FrontLower_X' - * '' : 'HVAC_model/Start control/Start Control Front/Step 1 F/Level 4/Dtg_FrontUpper_X' - * '' : 'HVAC_model/Start control/Start Control Front/Step 1 F/Level 4/Incar temp goto from step 1 to step 2 ' - * '' : 'HVAC_model/Start control/Start Control Front/Step 1 F/Level 4/RealTime_Timer' - * '' : 'HVAC_model/Start control/Start Control Front/Step 1 F/Level 4/Time goto from step 1 to step 2 ' - * '' : 'HVAC_model/Start control/Start Control Front/Step 1 F/Level 4/blower в зависимости от ECT' - * '' : 'HVAC_model/Start control/Start Control Front/Step 1 F/Level 4/incar filter down' - * '' : 'HVAC_model/Start control/Start Control Front/Step 1 F/Level 4/incar filter up' - * '' : 'HVAC_model/Start control/Start Control Front/Step 1 F/Level 4/mode FR step 1' - * '' : 'HVAC_model/Start control/Start Control Front/Step 1 F/Level 4/window heating' - * '' : 'HVAC_model/Start control/Start Control Front/Step 1 F/Level 4/blower в зависимости от ECT/ECT min max' - * '' : 'HVAC_model/Start control/Start Control Front/Step 1 F/Level 4/blower в зависимости от ECT/blower min max' - * '' : 'HVAC_model/Start control/Start Control Front/Step 1 F/Level 5/3 way valve status' - * '' : 'HVAC_model/Start control/Start Control Front/Step 1 F/Level 5/Dtg_FrontLower_X' - * '' : 'HVAC_model/Start control/Start Control Front/Step 1 F/Level 5/Dtg_FrontUpper_X' - * '' : 'HVAC_model/Start control/Start Control Front/Step 1 F/Level 5/Incar temp goto from step 1 to step 2 ' - * '' : 'HVAC_model/Start control/Start Control Front/Step 1 F/Level 5/RealTime_Timer' - * '' : 'HVAC_model/Start control/Start Control Front/Step 1 F/Level 5/Time goto from step 1 to step 2 ' - * '' : 'HVAC_model/Start control/Start Control Front/Step 1 F/Level 5/blower в зависимости от ECT' - * '' : 'HVAC_model/Start control/Start Control Front/Step 1 F/Level 5/incar filter down' - * '' : 'HVAC_model/Start control/Start Control Front/Step 1 F/Level 5/incar filter up' - * '' : 'HVAC_model/Start control/Start Control Front/Step 1 F/Level 5/mode FR step 1' - * '' : 'HVAC_model/Start control/Start Control Front/Step 1 F/Level 5/window heating' - * '' : 'HVAC_model/Start control/Start Control Front/Step 1 F/Level 5/blower в зависимости от ECT/ECT min max' - * '' : 'HVAC_model/Start control/Start Control Front/Step 1 F/Level 5/blower в зависимости от ECT/blower min max' - * '' : 'HVAC_model/Start control/Start Control Front/Step 2 F/Level 0' - * '' : 'HVAC_model/Start control/Start Control Front/Step 2 F/Level 1' - * '' : 'HVAC_model/Start control/Start Control Front/Step 2 F/Level 2' - * '' : 'HVAC_model/Start control/Start Control Front/Step 2 F/Level 3' - * '' : 'HVAC_model/Start control/Start Control Front/Step 2 F/Level 4' - * '' : 'HVAC_model/Start control/Start Control Front/Step 2 F/Level 5' - * '' : 'HVAC_model/Start control/Start Control Front/Step 2 F/Level 0/3 way valve status' - * '' : 'HVAC_model/Start control/Start Control Front/Step 2 F/Level 0/DTG F Lower, стремящийся к AUTO' - * '' : 'HVAC_model/Start control/Start Control Front/Step 2 F/Level 0/DTG F Upper, стремящийся к AUTO' - * '' : 'HVAC_model/Start control/Start Control Front/Step 2 F/Level 0/RealTime_Timer' - * '' : 'HVAC_model/Start control/Start Control Front/Step 2 F/Level 0/Time goto from step 2 to step 3 ' - * '' : 'HVAC_model/Start control/Start Control Front/Step 2 F/Level 0/blower, стремящийся к AUTO' - * '' : 'HVAC_model/Start control/Start Control Front/Step 2 F/Level 0/incar filter down' - * '' : 'HVAC_model/Start control/Start Control Front/Step 2 F/Level 0/incar filter up' - * '' : 'HVAC_model/Start control/Start Control Front/Step 2 F/Level 0/mode, стремящийся к AUTO' - * '' : 'HVAC_model/Start control/Start Control Front/Step 2 F/Level 0/window heating' - * '' : 'HVAC_model/Start control/Start Control Front/Step 2 F/Level 0/DTG F Lower, стремящийся к AUTO/Almost equal' - * '' : 'HVAC_model/Start control/Start Control Front/Step 2 F/Level 0/DTG F Lower, стремящийся к AUTO/Calculate delta time' - * '' : 'HVAC_model/Start control/Start Control Front/Step 2 F/Level 0/DTG F Lower, стремящийся к AUTO/step' - * '' : 'HVAC_model/Start control/Start Control Front/Step 2 F/Level 0/DTG F Lower, стремящийся к AUTO/time for step' - * '' : 'HVAC_model/Start control/Start Control Front/Step 2 F/Level 0/DTG F Lower, стремящийся к AUTO/знак для изменения (+//-)' - * '' : 'HVAC_model/Start control/Start Control Front/Step 2 F/Level 0/DTG F Upper, стремящийся к AUTO/Almost equal' - * '' : 'HVAC_model/Start control/Start Control Front/Step 2 F/Level 0/DTG F Upper, стремящийся к AUTO/Calculate delta time' - * '' : 'HVAC_model/Start control/Start Control Front/Step 2 F/Level 0/DTG F Upper, стремящийся к AUTO/step' - * '' : 'HVAC_model/Start control/Start Control Front/Step 2 F/Level 0/DTG F Upper, стремящийся к AUTO/time for step' - * '' : 'HVAC_model/Start control/Start Control Front/Step 2 F/Level 0/DTG F Upper, стремящийся к AUTO/знак для изменения (+//-)' - * '' : 'HVAC_model/Start control/Start Control Front/Step 2 F/Level 0/blower, стремящийся к AUTO/Almost equal' - * '' : 'HVAC_model/Start control/Start Control Front/Step 2 F/Level 0/blower, стремящийся к AUTO/Calculate delta time' - * '' : 'HVAC_model/Start control/Start Control Front/Step 2 F/Level 0/blower, стремящийся к AUTO/blower step' - * '' : 'HVAC_model/Start control/Start Control Front/Step 2 F/Level 0/blower, стремящийся к AUTO/blower time for step' - * '' : 'HVAC_model/Start control/Start Control Front/Step 2 F/Level 0/blower, стремящийся к AUTO/знак для изменения (+//-)' - * '' : 'HVAC_model/Start control/Start Control Front/Step 2 F/Level 0/mode, стремящийся к AUTO/Almost equal' - * '' : 'HVAC_model/Start control/Start Control Front/Step 2 F/Level 0/mode, стремящийся к AUTO/Calculate delta time' - * '' : 'HVAC_model/Start control/Start Control Front/Step 2 F/Level 0/mode, стремящийся к AUTO/step' - * '' : 'HVAC_model/Start control/Start Control Front/Step 2 F/Level 0/mode, стремящийся к AUTO/time for step' - * '' : 'HVAC_model/Start control/Start Control Front/Step 2 F/Level 0/mode, стремящийся к AUTO/знак для изменения (+//-)' - * '' : 'HVAC_model/Start control/Start Control Front/Step 2 F/Level 1/3 way valve status' - * '' : 'HVAC_model/Start control/Start Control Front/Step 2 F/Level 1/DTG F Lower, стремящийся к AUTO' - * '' : 'HVAC_model/Start control/Start Control Front/Step 2 F/Level 1/DTG F Upper, стремящийся к AUTO' - * '' : 'HVAC_model/Start control/Start Control Front/Step 2 F/Level 1/RealTime_Timer' - * '' : 'HVAC_model/Start control/Start Control Front/Step 2 F/Level 1/Time goto from step 2 to step 3 ' - * '' : 'HVAC_model/Start control/Start Control Front/Step 2 F/Level 1/blower, стремящийся к AUTO' - * '' : 'HVAC_model/Start control/Start Control Front/Step 2 F/Level 1/incar filter down' - * '' : 'HVAC_model/Start control/Start Control Front/Step 2 F/Level 1/incar filter up' - * '' : 'HVAC_model/Start control/Start Control Front/Step 2 F/Level 1/mode, стремящийся к AUTO' - * '' : 'HVAC_model/Start control/Start Control Front/Step 2 F/Level 1/window heating' - * '' : 'HVAC_model/Start control/Start Control Front/Step 2 F/Level 1/DTG F Lower, стремящийся к AUTO/Almost equal' - * '' : 'HVAC_model/Start control/Start Control Front/Step 2 F/Level 1/DTG F Lower, стремящийся к AUTO/Calculate delta time' - * '' : 'HVAC_model/Start control/Start Control Front/Step 2 F/Level 1/DTG F Lower, стремящийся к AUTO/step' - * '' : 'HVAC_model/Start control/Start Control Front/Step 2 F/Level 1/DTG F Lower, стремящийся к AUTO/time for step' - * '' : 'HVAC_model/Start control/Start Control Front/Step 2 F/Level 1/DTG F Lower, стремящийся к AUTO/знак для изменения (+//-)' - * '' : 'HVAC_model/Start control/Start Control Front/Step 2 F/Level 1/DTG F Upper, стремящийся к AUTO/Almost equal' - * '' : 'HVAC_model/Start control/Start Control Front/Step 2 F/Level 1/DTG F Upper, стремящийся к AUTO/Calculate delta time' - * '' : 'HVAC_model/Start control/Start Control Front/Step 2 F/Level 1/DTG F Upper, стремящийся к AUTO/step' - * '' : 'HVAC_model/Start control/Start Control Front/Step 2 F/Level 1/DTG F Upper, стремящийся к AUTO/time for step' - * '' : 'HVAC_model/Start control/Start Control Front/Step 2 F/Level 1/DTG F Upper, стремящийся к AUTO/знак для изменения (+//-)' - * '' : 'HVAC_model/Start control/Start Control Front/Step 2 F/Level 1/blower, стремящийся к AUTO/Almost equal' - * '' : 'HVAC_model/Start control/Start Control Front/Step 2 F/Level 1/blower, стремящийся к AUTO/Calculate delta time' - * '' : 'HVAC_model/Start control/Start Control Front/Step 2 F/Level 1/blower, стремящийся к AUTO/blower step' - * '' : 'HVAC_model/Start control/Start Control Front/Step 2 F/Level 1/blower, стремящийся к AUTO/blower time for step' - * '' : 'HVAC_model/Start control/Start Control Front/Step 2 F/Level 1/blower, стремящийся к AUTO/знак для изменения (+//-)' - * '' : 'HVAC_model/Start control/Start Control Front/Step 2 F/Level 1/mode, стремящийся к AUTO/Almost equal' - * '' : 'HVAC_model/Start control/Start Control Front/Step 2 F/Level 1/mode, стремящийся к AUTO/Calculate delta time' - * '' : 'HVAC_model/Start control/Start Control Front/Step 2 F/Level 1/mode, стремящийся к AUTO/step' - * '' : 'HVAC_model/Start control/Start Control Front/Step 2 F/Level 1/mode, стремящийся к AUTO/time for step' - * '' : 'HVAC_model/Start control/Start Control Front/Step 2 F/Level 1/mode, стремящийся к AUTO/знак для изменения (+//-)' - * '' : 'HVAC_model/Start control/Start Control Front/Step 2 F/Level 3/3 way valve status' - * '' : 'HVAC_model/Start control/Start Control Front/Step 2 F/Level 3/DTG F Lower, стремящийся к AUTO' - * '' : 'HVAC_model/Start control/Start Control Front/Step 2 F/Level 3/DTG F Upper, стремящийся к AUTO' - * '' : 'HVAC_model/Start control/Start Control Front/Step 2 F/Level 3/RealTime_Timer' - * '' : 'HVAC_model/Start control/Start Control Front/Step 2 F/Level 3/Time goto from step 2 to step 3 ' - * '' : 'HVAC_model/Start control/Start Control Front/Step 2 F/Level 3/autodemist (autodefog)' - * '' : 'HVAC_model/Start control/Start Control Front/Step 2 F/Level 3/blower, стремящийся к AUTO' - * '' : 'HVAC_model/Start control/Start Control Front/Step 2 F/Level 3/incar filter down' - * '' : 'HVAC_model/Start control/Start Control Front/Step 2 F/Level 3/incar filter up' - * '' : 'HVAC_model/Start control/Start Control Front/Step 2 F/Level 3/mode, стремящийся к AUTO' - * '' : 'HVAC_model/Start control/Start Control Front/Step 2 F/Level 3/window heating' - * '' : 'HVAC_model/Start control/Start Control Front/Step 2 F/Level 3/DTG F Lower, стремящийся к AUTO/Almost equal' - * '' : 'HVAC_model/Start control/Start Control Front/Step 2 F/Level 3/DTG F Lower, стремящийся к AUTO/Calculate delta time' - * '' : 'HVAC_model/Start control/Start Control Front/Step 2 F/Level 3/DTG F Lower, стремящийся к AUTO/step' - * '' : 'HVAC_model/Start control/Start Control Front/Step 2 F/Level 3/DTG F Lower, стремящийся к AUTO/time for step' - * '' : 'HVAC_model/Start control/Start Control Front/Step 2 F/Level 3/DTG F Lower, стремящийся к AUTO/знак для изменения (+//-)' - * '' : 'HVAC_model/Start control/Start Control Front/Step 2 F/Level 3/DTG F Upper, стремящийся к AUTO/Almost equal' - * '' : 'HVAC_model/Start control/Start Control Front/Step 2 F/Level 3/DTG F Upper, стремящийся к AUTO/Calculate delta time' - * '' : 'HVAC_model/Start control/Start Control Front/Step 2 F/Level 3/DTG F Upper, стремящийся к AUTO/step' - * '' : 'HVAC_model/Start control/Start Control Front/Step 2 F/Level 3/DTG F Upper, стремящийся к AUTO/time for step' - * '' : 'HVAC_model/Start control/Start Control Front/Step 2 F/Level 3/DTG F Upper, стремящийся к AUTO/знак для изменения (+//-)' - * '' : 'HVAC_model/Start control/Start Control Front/Step 2 F/Level 3/blower, стремящийся к AUTO/Almost equal' - * '' : 'HVAC_model/Start control/Start Control Front/Step 2 F/Level 3/blower, стремящийся к AUTO/Calculate delta time' - * '' : 'HVAC_model/Start control/Start Control Front/Step 2 F/Level 3/blower, стремящийся к AUTO/blower step' - * '' : 'HVAC_model/Start control/Start Control Front/Step 2 F/Level 3/blower, стремящийся к AUTO/blower time for step' - * '' : 'HVAC_model/Start control/Start Control Front/Step 2 F/Level 3/blower, стремящийся к AUTO/знак для изменения (+//-)' - * '' : 'HVAC_model/Start control/Start Control Front/Step 2 F/Level 3/mode, стремящийся к AUTO/Almost equal' - * '' : 'HVAC_model/Start control/Start Control Front/Step 2 F/Level 3/mode, стремящийся к AUTO/Calculate delta time' - * '' : 'HVAC_model/Start control/Start Control Front/Step 2 F/Level 3/mode, стремящийся к AUTO/step' - * '' : 'HVAC_model/Start control/Start Control Front/Step 2 F/Level 3/mode, стремящийся к AUTO/time for step' - * '' : 'HVAC_model/Start control/Start Control Front/Step 2 F/Level 3/mode, стремящийся к AUTO/знак для изменения (+//-)' - * '' : 'HVAC_model/Start control/Start Control Front/Step 2 F/Level 4/3 way valve status' - * '' : 'HVAC_model/Start control/Start Control Front/Step 2 F/Level 4/DTG F Lower, стремящийся к AUTO' - * '' : 'HVAC_model/Start control/Start Control Front/Step 2 F/Level 4/DTG F Upper, стремящийся к AUTO' - * '' : 'HVAC_model/Start control/Start Control Front/Step 2 F/Level 4/RealTime_Timer' - * '' : 'HVAC_model/Start control/Start Control Front/Step 2 F/Level 4/Time goto from step 2 to step 3 ' - * '' : 'HVAC_model/Start control/Start Control Front/Step 2 F/Level 4/autodemist (autodefog)' - * '' : 'HVAC_model/Start control/Start Control Front/Step 2 F/Level 4/blower, стремящийся к AUTO' - * '' : 'HVAC_model/Start control/Start Control Front/Step 2 F/Level 4/incar filter down' - * '' : 'HVAC_model/Start control/Start Control Front/Step 2 F/Level 4/incar filter up' - * '' : 'HVAC_model/Start control/Start Control Front/Step 2 F/Level 4/mode, стремящийся к AUTO' - * '' : 'HVAC_model/Start control/Start Control Front/Step 2 F/Level 4/window heating' - * '' : 'HVAC_model/Start control/Start Control Front/Step 2 F/Level 4/DTG F Lower, стремящийся к AUTO/Almost equal' - * '' : 'HVAC_model/Start control/Start Control Front/Step 2 F/Level 4/DTG F Lower, стремящийся к AUTO/Calculate delta time' - * '' : 'HVAC_model/Start control/Start Control Front/Step 2 F/Level 4/DTG F Lower, стремящийся к AUTO/step' - * '' : 'HVAC_model/Start control/Start Control Front/Step 2 F/Level 4/DTG F Lower, стремящийся к AUTO/time for step' - * '' : 'HVAC_model/Start control/Start Control Front/Step 2 F/Level 4/DTG F Lower, стремящийся к AUTO/знак для изменения (+//-)' - * '' : 'HVAC_model/Start control/Start Control Front/Step 2 F/Level 4/DTG F Upper, стремящийся к AUTO/Almost equal' - * '' : 'HVAC_model/Start control/Start Control Front/Step 2 F/Level 4/DTG F Upper, стремящийся к AUTO/Calculate delta time' - * '' : 'HVAC_model/Start control/Start Control Front/Step 2 F/Level 4/DTG F Upper, стремящийся к AUTO/step' - * '' : 'HVAC_model/Start control/Start Control Front/Step 2 F/Level 4/DTG F Upper, стремящийся к AUTO/time for step' - * '' : 'HVAC_model/Start control/Start Control Front/Step 2 F/Level 4/DTG F Upper, стремящийся к AUTO/знак для изменения (+//-)' - * '' : 'HVAC_model/Start control/Start Control Front/Step 2 F/Level 4/blower, стремящийся к AUTO/Almost equal' - * '' : 'HVAC_model/Start control/Start Control Front/Step 2 F/Level 4/blower, стремящийся к AUTO/Calculate delta time' - * '' : 'HVAC_model/Start control/Start Control Front/Step 2 F/Level 4/blower, стремящийся к AUTO/blower step' - * '' : 'HVAC_model/Start control/Start Control Front/Step 2 F/Level 4/blower, стремящийся к AUTO/blower time for step' - * '' : 'HVAC_model/Start control/Start Control Front/Step 2 F/Level 4/blower, стремящийся к AUTO/знак для изменения (+//-)' - * '' : 'HVAC_model/Start control/Start Control Front/Step 2 F/Level 4/mode, стремящийся к AUTO/Almost equal' - * '' : 'HVAC_model/Start control/Start Control Front/Step 2 F/Level 4/mode, стремящийся к AUTO/Calculate delta time' - * '' : 'HVAC_model/Start control/Start Control Front/Step 2 F/Level 4/mode, стремящийся к AUTO/step' - * '' : 'HVAC_model/Start control/Start Control Front/Step 2 F/Level 4/mode, стремящийся к AUTO/time for step' - * '' : 'HVAC_model/Start control/Start Control Front/Step 2 F/Level 4/mode, стремящийся к AUTO/знак для изменения (+//-)' - * '' : 'HVAC_model/Start control/Start Control Front/Step 2 F/Level 5/3 way valve status' - * '' : 'HVAC_model/Start control/Start Control Front/Step 2 F/Level 5/DTG F Lower, стремящийся к AUTO' - * '' : 'HVAC_model/Start control/Start Control Front/Step 2 F/Level 5/DTG F Upper, стремящийся к AUTO' - * '' : 'HVAC_model/Start control/Start Control Front/Step 2 F/Level 5/RealTime_Timer' - * '' : 'HVAC_model/Start control/Start Control Front/Step 2 F/Level 5/Time goto from step 2 to step 3 ' - * '' : 'HVAC_model/Start control/Start Control Front/Step 2 F/Level 5/autodemist (autodefog)' - * '' : 'HVAC_model/Start control/Start Control Front/Step 2 F/Level 5/blower, стремящийся к AUTO' - * '' : 'HVAC_model/Start control/Start Control Front/Step 2 F/Level 5/incar filter down' - * '' : 'HVAC_model/Start control/Start Control Front/Step 2 F/Level 5/incar filter up' - * '' : 'HVAC_model/Start control/Start Control Front/Step 2 F/Level 5/mode, стремящийся к AUTO' - * '' : 'HVAC_model/Start control/Start Control Front/Step 2 F/Level 5/window heating' - * '' : 'HVAC_model/Start control/Start Control Front/Step 2 F/Level 5/DTG F Lower, стремящийся к AUTO/Almost equal' - * '' : 'HVAC_model/Start control/Start Control Front/Step 2 F/Level 5/DTG F Lower, стремящийся к AUTO/Calculate delta time' - * '' : 'HVAC_model/Start control/Start Control Front/Step 2 F/Level 5/DTG F Lower, стремящийся к AUTO/step' - * '' : 'HVAC_model/Start control/Start Control Front/Step 2 F/Level 5/DTG F Lower, стремящийся к AUTO/time for step' - * '' : 'HVAC_model/Start control/Start Control Front/Step 2 F/Level 5/DTG F Lower, стремящийся к AUTO/знак для изменения (+//-)' - * '' : 'HVAC_model/Start control/Start Control Front/Step 2 F/Level 5/DTG F Upper, стремящийся к AUTO/Almost equal' - * '' : 'HVAC_model/Start control/Start Control Front/Step 2 F/Level 5/DTG F Upper, стремящийся к AUTO/Calculate delta time' - * '' : 'HVAC_model/Start control/Start Control Front/Step 2 F/Level 5/DTG F Upper, стремящийся к AUTO/step' - * '' : 'HVAC_model/Start control/Start Control Front/Step 2 F/Level 5/DTG F Upper, стремящийся к AUTO/time for step' - * '' : 'HVAC_model/Start control/Start Control Front/Step 2 F/Level 5/DTG F Upper, стремящийся к AUTO/знак для изменения (+//-)' - * '' : 'HVAC_model/Start control/Start Control Front/Step 2 F/Level 5/blower, стремящийся к AUTO/Almost equal' - * '' : 'HVAC_model/Start control/Start Control Front/Step 2 F/Level 5/blower, стремящийся к AUTO/Calculate delta time' - * '' : 'HVAC_model/Start control/Start Control Front/Step 2 F/Level 5/blower, стремящийся к AUTO/blower step' - * '' : 'HVAC_model/Start control/Start Control Front/Step 2 F/Level 5/blower, стремящийся к AUTO/blower time for step' - * '' : 'HVAC_model/Start control/Start Control Front/Step 2 F/Level 5/blower, стремящийся к AUTO/знак для изменения (+//-)' - * '' : 'HVAC_model/Start control/Start Control Front/Step 2 F/Level 5/mode, стремящийся к AUTO/Almost equal' - * '' : 'HVAC_model/Start control/Start Control Front/Step 2 F/Level 5/mode, стремящийся к AUTO/Calculate delta time' - * '' : 'HVAC_model/Start control/Start Control Front/Step 2 F/Level 5/mode, стремящийся к AUTO/step' - * '' : 'HVAC_model/Start control/Start Control Front/Step 2 F/Level 5/mode, стремящийся к AUTO/time for step' - * '' : 'HVAC_model/Start control/Start Control Front/Step 2 F/Level 5/mode, стремящийся к AUTO/знак для изменения (+//-)' - * '' : 'HVAC_model/Start control/Start Control Rear/Step -1 R (Entry Condition)' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 0 R' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 1 R' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 R' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 3 R' - * '' : 'HVAC_model/Start control/Start Control Rear/Step -1 R (Entry Condition)/Level 0' - * '' : 'HVAC_model/Start control/Start Control Rear/Step -1 R (Entry Condition)/Level 1' - * '' : 'HVAC_model/Start control/Start Control Rear/Step -1 R (Entry Condition)/Level 2' - * '' : 'HVAC_model/Start control/Start Control Rear/Step -1 R (Entry Condition)/Level 3' - * '' : 'HVAC_model/Start control/Start Control Rear/Step -1 R (Entry Condition)/Level 4' - * '' : 'HVAC_model/Start control/Start Control Rear/Step -1 R (Entry Condition)/Level 5' - * '' : 'HVAC_model/Start control/Start Control Rear/Step -1 R (Entry Condition)/Level 0/g_assSTART_ENTER_INCAR' - * '' : 'HVAC_model/Start control/Start Control Rear/Step -1 R (Entry Condition)/Level 0/g_ausSTART_ENTER_SETTEMP' - * '' : 'HVAC_model/Start control/Start Control Rear/Step -1 R (Entry Condition)/Level 1/g_assSTART_ENTER_INCAR' - * '' : 'HVAC_model/Start control/Start Control Rear/Step -1 R (Entry Condition)/Level 1/g_ausSTART_ENTER_SETTEMP' - * '' : 'HVAC_model/Start control/Start Control Rear/Step -1 R (Entry Condition)/Level 2/g_assSTART_ENTER_INCAR' - * '' : 'HVAC_model/Start control/Start Control Rear/Step -1 R (Entry Condition)/Level 2/g_ausSTART_ENTER_SETTEMP' - * '' : 'HVAC_model/Start control/Start Control Rear/Step -1 R (Entry Condition)/Level 3/g_assSTART_ENTER_COOLANT ' - * '' : 'HVAC_model/Start control/Start Control Rear/Step -1 R (Entry Condition)/Level 3/g_assSTART_ENTER_INCAR' - * '' : 'HVAC_model/Start control/Start Control Rear/Step -1 R (Entry Condition)/Level 3/g_ausSTART_ENTER_SETTEMP' - * '' : 'HVAC_model/Start control/Start Control Rear/Step -1 R (Entry Condition)/Level 4/g_assSTART_ENTER_COOLANT ' - * '' : 'HVAC_model/Start control/Start Control Rear/Step -1 R (Entry Condition)/Level 4/g_assSTART_ENTER_INCAR' - * '' : 'HVAC_model/Start control/Start Control Rear/Step -1 R (Entry Condition)/Level 5/g_assSTART_ENTER_COOLANT ' - * '' : 'HVAC_model/Start control/Start Control Rear/Step -1 R (Entry Condition)/Level 5/g_assSTART_ENTER_INCAR' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 0 R/Level 0' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 0 R/Level 1' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 0 R/Level 2' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 0 R/Level 3' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 0 R/Level 4' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 0 R/Level 5' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 0 R/Level 2/g_assSTART_COOLANT_STEP0_TO_1 ' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 0 R/Level 2/incar filter down' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 0 R/Level 2/incar filter up' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 0 R/Level 3/g_assSTART_COOLANT_STEP0_TO_1 ' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 0 R/Level 3/incar filter down' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 0 R/Level 3/incar filter up' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 0 R/Level 4/g_assSTART_COOLANT_STEP0_TO_1 ' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 0 R/Level 4/incar filter down' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 0 R/Level 4/incar filter up' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 0 R/Level 5/g_assSTART_COOLANT_STEP0_TO_1 ' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 0 R/Level 5/incar filter down' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 0 R/Level 5/incar filter up' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 1 R/Level 0' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 1 R/Level 1' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 1 R/Level 2' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 1 R/Level 3' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 1 R/Level 4' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 1 R/Level 5' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 1 R/Level 0/2 way valve' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 1 R/Level 0/Dtg_rear' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 1 R/Level 0/Incar temp goto from step 1 to step 2 ' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 1 R/Level 0/RealTime_Timer' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 1 R/Level 0/Time goto from step 1 to step 2 ' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 1 R/Level 0/blower rear' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 1 R/Level 0/incar filter down' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 1 R/Level 0/incar filter up' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 1 R/Level 0/mode rear step 1' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 1 R/Level 1/2 way valve' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 1 R/Level 1/Dtg_rear' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 1 R/Level 1/Incar temp goto from step 1 to step 2 ' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 1 R/Level 1/RealTime_Timer' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 1 R/Level 1/Time goto from step 1 to step 2 ' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 1 R/Level 1/blower rear' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 1 R/Level 1/incar filter down' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 1 R/Level 1/incar filter up' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 1 R/Level 1/mode rear step 1' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 1 R/Level 2/2 way valve' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 1 R/Level 2/Dtg_rear' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 1 R/Level 2/Incar temp goto from step 1 to step 2 ' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 1 R/Level 2/RealTime_Timer' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 1 R/Level 2/Time goto from step 1 to step 2 ' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 1 R/Level 2/blower в зависимости от ECT' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 1 R/Level 2/g_assSTART_COOLANT_TO_STEP2 ' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 1 R/Level 2/incar filter down' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 1 R/Level 2/incar filter up' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 1 R/Level 2/mode rear step 1' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 1 R/Level 2/blower в зависимости от ECT/ECT min max' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 1 R/Level 2/blower в зависимости от ECT/blower start finish' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 1 R/Level 3/2 way valve' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 1 R/Level 3/Dtg_rear' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 1 R/Level 3/Incar temp goto from step 1 to step 2 ' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 1 R/Level 3/RealTime_Timer' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 1 R/Level 3/Time goto from step 1 to step 2 ' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 1 R/Level 3/blower в зависимости от ECT' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 1 R/Level 3/g_assSTART_COOLANT_TO_STEP2 ' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 1 R/Level 3/incar filter down' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 1 R/Level 3/incar filter up' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 1 R/Level 3/mode rear step 1' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 1 R/Level 3/blower в зависимости от ECT/ECT min max' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 1 R/Level 3/blower в зависимости от ECT/blower start finish' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 1 R/Level 4/2 way valve' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 1 R/Level 4/Dtg_rear' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 1 R/Level 4/Incar temp goto from step 1 to step 2 ' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 1 R/Level 4/RealTime_Timer' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 1 R/Level 4/Time goto from step 1 to step 2 ' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 1 R/Level 4/blower в зависимости от ECT' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 1 R/Level 4/incar filter down' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 1 R/Level 4/incar filter up' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 1 R/Level 4/mode rear step 1' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 1 R/Level 4/blower в зависимости от ECT/ECT min max' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 1 R/Level 4/blower в зависимости от ECT/blower start finish' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 1 R/Level 5/2 way valve' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 1 R/Level 5/Dtg_rear' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 1 R/Level 5/Incar temp goto from step 1 to step 2 ' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 1 R/Level 5/RealTime_Timer' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 1 R/Level 5/Time goto from step 1 to step 2 ' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 1 R/Level 5/blower в зависимости от ECT' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 1 R/Level 5/incar filter down' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 1 R/Level 5/incar filter up' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 1 R/Level 5/mode rear step 1' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 1 R/Level 5/blower в зависимости от ECT/ECT min max' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 1 R/Level 5/blower в зависимости от ECT/blower start finish' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 R/Level 0' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 R/Level 1' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 R/Level 2' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 R/Level 3' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 R/Level 4' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 R/Level 5' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 R/Level 0/2 way valve' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 R/Level 0/DTG Rear, стремящийся к AUTO' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 R/Level 0/RealTime_Timer' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 R/Level 0/Time goto from step 1 to step 2 ' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 R/Level 0/blower, стремящийся к AUTO' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 R/Level 0/incar filter down' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 R/Level 0/incar filter up' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 R/Level 0/mode, стремящийся к AUTO' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 R/Level 0/DTG Rear, стремящийся к AUTO/Almost equal' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 R/Level 0/DTG Rear, стремящийся к AUTO/Calculate delta time' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 R/Level 0/DTG Rear, стремящийся к AUTO/step' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 R/Level 0/DTG Rear, стремящийся к AUTO/time for step' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 R/Level 0/DTG Rear, стремящийся к AUTO/знак для изменения (+//-)' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 R/Level 0/blower, стремящийся к AUTO/Almost equal' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 R/Level 0/blower, стремящийся к AUTO/Calculate delta time' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 R/Level 0/blower, стремящийся к AUTO/blower step' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 R/Level 0/blower, стремящийся к AUTO/blower time for step' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 R/Level 0/blower, стремящийся к AUTO/знак для изменения (+//-)' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 R/Level 0/mode, стремящийся к AUTO/Almost equal' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 R/Level 0/mode, стремящийся к AUTO/Calculate delta time' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 R/Level 0/mode, стремящийся к AUTO/step' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 R/Level 0/mode, стремящийся к AUTO/time for step' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 R/Level 0/mode, стремящийся к AUTO/знак для изменения (+//-)' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 R/Level 1/2 way valve' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 R/Level 1/DTG Rear, стремящийся к AUTO' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 R/Level 1/RealTime_Timer' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 R/Level 1/Time goto from step 1 to step 2 ' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 R/Level 1/blower, стремящийся к AUTO' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 R/Level 1/incar filter down' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 R/Level 1/incar filter up' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 R/Level 1/mode, стремящийся к AUTO' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 R/Level 1/DTG Rear, стремящийся к AUTO/Almost equal' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 R/Level 1/DTG Rear, стремящийся к AUTO/Calculate delta time' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 R/Level 1/DTG Rear, стремящийся к AUTO/step' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 R/Level 1/DTG Rear, стремящийся к AUTO/time for step' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 R/Level 1/DTG Rear, стремящийся к AUTO/знак для изменения (+//-)' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 R/Level 1/blower, стремящийся к AUTO/Almost equal' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 R/Level 1/blower, стремящийся к AUTO/Calculate delta time' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 R/Level 1/blower, стремящийся к AUTO/blower step' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 R/Level 1/blower, стремящийся к AUTO/blower time for step' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 R/Level 1/blower, стремящийся к AUTO/знак для изменения (+//-)' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 R/Level 1/mode, стремящийся к AUTO/Almost equal' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 R/Level 1/mode, стремящийся к AUTO/Calculate delta time' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 R/Level 1/mode, стремящийся к AUTO/step' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 R/Level 1/mode, стремящийся к AUTO/time for step' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 R/Level 1/mode, стремящийся к AUTO/знак для изменения (+//-)' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 R/Level 2/2 way valve' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 R/Level 2/DTG Rear, стремящийся к AUTO' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 R/Level 2/RealTime_Timer' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 R/Level 2/Time goto from step 1 to step 2 ' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 R/Level 2/blower, стремящийся к AUTO' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 R/Level 2/incar filter down' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 R/Level 2/incar filter up' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 R/Level 2/mode, стремящийся к AUTO' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 R/Level 2/DTG Rear, стремящийся к AUTO/Almost equal' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 R/Level 2/DTG Rear, стремящийся к AUTO/Calculate delta time' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 R/Level 2/DTG Rear, стремящийся к AUTO/step' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 R/Level 2/DTG Rear, стремящийся к AUTO/time for step' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 R/Level 2/DTG Rear, стремящийся к AUTO/знак для изменения (+//-)' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 R/Level 2/blower, стремящийся к AUTO/Almost equal' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 R/Level 2/blower, стремящийся к AUTO/Calculate delta time' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 R/Level 2/blower, стремящийся к AUTO/blower step' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 R/Level 2/blower, стремящийся к AUTO/blower time for step' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 R/Level 2/blower, стремящийся к AUTO/знак для изменения (+//-)' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 R/Level 2/mode, стремящийся к AUTO/Almost equal' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 R/Level 2/mode, стремящийся к AUTO/Calculate delta time' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 R/Level 2/mode, стремящийся к AUTO/step' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 R/Level 2/mode, стремящийся к AUTO/time for step' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 R/Level 2/mode, стремящийся к AUTO/знак для изменения (+//-)' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 R/Level 3/2 way valve' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 R/Level 3/DTG Rear, стремящийся к AUTO' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 R/Level 3/RealTime_Timer' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 R/Level 3/Time goto from step 1 to step 2 ' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 R/Level 3/blower, стремящийся к AUTO' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 R/Level 3/incar filter down' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 R/Level 3/incar filter up' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 R/Level 3/mode, стремящийся к AUTO' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 R/Level 3/DTG Rear, стремящийся к AUTO/Almost equal' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 R/Level 3/DTG Rear, стремящийся к AUTO/Calculate delta time' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 R/Level 3/DTG Rear, стремящийся к AUTO/step' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 R/Level 3/DTG Rear, стремящийся к AUTO/time for step' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 R/Level 3/DTG Rear, стремящийся к AUTO/знак для изменения (+//-)' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 R/Level 3/blower, стремящийся к AUTO/Almost equal' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 R/Level 3/blower, стремящийся к AUTO/Calculate delta time' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 R/Level 3/blower, стремящийся к AUTO/blower step' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 R/Level 3/blower, стремящийся к AUTO/blower time for step' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 R/Level 3/blower, стремящийся к AUTO/знак для изменения (+//-)' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 R/Level 3/mode, стремящийся к AUTO/Almost equal' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 R/Level 3/mode, стремящийся к AUTO/Calculate delta time' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 R/Level 3/mode, стремящийся к AUTO/step' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 R/Level 3/mode, стремящийся к AUTO/time for step' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 R/Level 3/mode, стремящийся к AUTO/знак для изменения (+//-)' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 R/Level 4/2 way valve' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 R/Level 4/DTG Rear, стремящийся к AUTO' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 R/Level 4/RealTime_Timer' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 R/Level 4/Time goto from step 1 to step 2 ' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 R/Level 4/blower, стремящийся к AUTO' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 R/Level 4/incar filter down' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 R/Level 4/incar filter up' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 R/Level 4/mode, стремящийся к AUTO' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 R/Level 4/DTG Rear, стремящийся к AUTO/Almost equal' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 R/Level 4/DTG Rear, стремящийся к AUTO/Calculate delta time' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 R/Level 4/DTG Rear, стремящийся к AUTO/step' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 R/Level 4/DTG Rear, стремящийся к AUTO/time for step' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 R/Level 4/DTG Rear, стремящийся к AUTO/знак для изменения (+//-)' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 R/Level 4/blower, стремящийся к AUTO/Almost equal' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 R/Level 4/blower, стремящийся к AUTO/Calculate delta time' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 R/Level 4/blower, стремящийся к AUTO/blower step' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 R/Level 4/blower, стремящийся к AUTO/blower time for step' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 R/Level 4/blower, стремящийся к AUTO/знак для изменения (+//-)' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 R/Level 4/mode, стремящийся к AUTO/Almost equal' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 R/Level 4/mode, стремящийся к AUTO/Calculate delta time' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 R/Level 4/mode, стремящийся к AUTO/step' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 R/Level 4/mode, стремящийся к AUTO/time for step' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 R/Level 4/mode, стремящийся к AUTO/знак для изменения (+//-)' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 R/Level 5/2 way valve' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 R/Level 5/DTG Rear, стремящийся к AUTO' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 R/Level 5/RealTime_Timer' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 R/Level 5/Time goto from step 1 to step 2 ' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 R/Level 5/blower, стремящийся к AUTO' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 R/Level 5/incar filter down' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 R/Level 5/incar filter up' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 R/Level 5/mode, стремящийся к AUTO' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 R/Level 5/DTG Rear, стремящийся к AUTO/Almost equal' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 R/Level 5/DTG Rear, стремящийся к AUTO/Calculate delta time' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 R/Level 5/DTG Rear, стремящийся к AUTO/step' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 R/Level 5/DTG Rear, стремящийся к AUTO/time for step' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 R/Level 5/DTG Rear, стремящийся к AUTO/знак для изменения (+//-)' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 R/Level 5/blower, стремящийся к AUTO/Almost equal' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 R/Level 5/blower, стремящийся к AUTO/Calculate delta time' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 R/Level 5/blower, стремящийся к AUTO/blower step' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 R/Level 5/blower, стремящийся к AUTO/blower time for step' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 R/Level 5/blower, стремящийся к AUTO/знак для изменения (+//-)' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 R/Level 5/mode, стремящийся к AUTO/Almost equal' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 R/Level 5/mode, стремящийся к AUTO/Calculate delta time' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 R/Level 5/mode, стремящийся к AUTO/step' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 R/Level 5/mode, стремящийся к AUTO/time for step' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 R/Level 5/mode, стремящийся к AUTO/знак для изменения (+//-)' - * '' : 'HVAC_model/dbg CAN/ACP (duct sensors) to dbg' - * '' : 'HVAC_model/dbg CAN/actuators to dbg' - * '' : 'HVAC_model/dbg CAN/sen_eva (evaporator) to dbg' + * '' : 'HVAC_model/CAN OUTPUT/Subsystem' + * '' : 'HVAC_model/CAN OUTPUT/Subsystem1' + * '' : 'HVAC_model/CAN OUTPUT/Subsystem10' + * '' : 'HVAC_model/CAN OUTPUT/Subsystem11' + * '' : 'HVAC_model/CAN OUTPUT/Subsystem12' + * '' : 'HVAC_model/CAN OUTPUT/Subsystem13' + * '' : 'HVAC_model/CAN OUTPUT/Subsystem14' + * '' : 'HVAC_model/CAN OUTPUT/Subsystem15' + * '' : 'HVAC_model/CAN OUTPUT/Subsystem16' + * '' : 'HVAC_model/CAN OUTPUT/Subsystem17' + * '' : 'HVAC_model/CAN OUTPUT/Subsystem2' + * '' : 'HVAC_model/CAN OUTPUT/Subsystem3' + * '' : 'HVAC_model/CAN OUTPUT/Subsystem4' + * '' : 'HVAC_model/CAN OUTPUT/Subsystem5' + * '' : 'HVAC_model/CAN OUTPUT/Subsystem6' + * '' : 'HVAC_model/CAN OUTPUT/Subsystem7' + * '' : 'HVAC_model/CAN OUTPUT/Subsystem8' + * '' : 'HVAC_model/CAN OUTPUT/Subsystem9' + * '' : 'HVAC_model/LIN/CHANEL0' + * '' : 'HVAC_model/LIN/CHANEL1' + * '' : 'HVAC_model/LIN/CHANEL2' + * '' : 'HVAC_model/LIN/CHANEL0/Actuator_Ch0_Command_Model' + * '' : 'HVAC_model/LIN/CHANEL0/COM = 0' + * '' : 'HVAC_model/LIN/CHANEL0/Check Stall Max' + * '' : 'HVAC_model/LIN/CHANEL0/Check Stall Min' + * '' : 'HVAC_model/LIN/CHANEL0/Homing' + * '' : 'HVAC_model/LIN/CHANEL0/Initial CPOS Max' + * '' : 'HVAC_model/LIN/CHANEL0/Initial CPOS Min' + * '' : 'HVAC_model/LIN/CHANEL0/Move to position Max' + * '' : 'HVAC_model/LIN/CHANEL0/Move to position Min' + * '' : 'HVAC_model/LIN/CHANEL0/Normal Mode' + * '' : 'HVAC_model/LIN/CHANEL0/Stop Mode' + * '' : 'HVAC_model/LIN/CHANEL0/steps to percents' + * '' : 'HVAC_model/LIN/CHANEL0/COM = 0/Compare To Constant' + * '' : 'HVAC_model/LIN/CHANEL0/Check Stall Max/If Action Subsystem2' + * '' : 'HVAC_model/LIN/CHANEL0/Check Stall Max/If Action Subsystem3' + * '' : 'HVAC_model/LIN/CHANEL0/Check Stall Max/If Action Subsystem2/Write' + * '' : 'HVAC_model/LIN/CHANEL0/Check Stall Min/If Action Subsystem2' + * '' : 'HVAC_model/LIN/CHANEL0/Check Stall Min/If Action Subsystem3' + * '' : 'HVAC_model/LIN/CHANEL0/Check Stall Min/If Action Subsystem2/Write' + * '' : 'HVAC_model/LIN/CHANEL0/Homing/Count step actuator' + * '' : 'HVAC_model/LIN/CHANEL0/Homing/Switch Case Action Subsystem' + * '' : 'HVAC_model/LIN/CHANEL0/Homing/Switch Case Action Subsystem1' + * '' : 'HVAC_model/LIN/CHANEL0/Homing/Switch Case Action Subsystem2' + * '' : 'HVAC_model/LIN/CHANEL0/Homing/Switch Case Action Subsystem3' + * '' : 'HVAC_model/LIN/CHANEL0/Homing/Switch Case Action Subsystem4' + * '' : 'HVAC_model/LIN/CHANEL0/Homing/Switch Case Action Subsystem/Compare To Constant' + * '' : 'HVAC_model/LIN/CHANEL0/Homing/Switch Case Action Subsystem/Compare To Constant1' + * '' : 'HVAC_model/LIN/CHANEL0/Homing/Switch Case Action Subsystem/MAX POSITION' + * '' : 'HVAC_model/LIN/CHANEL0/Homing/Switch Case Action Subsystem/Subsystem' + * '' : 'HVAC_model/LIN/CHANEL0/Homing/Switch Case Action Subsystem1/CAN ERROR' + * '' : 'HVAC_model/LIN/CHANEL0/Homing/Switch Case Action Subsystem1/Compare To Constant' + * '' : 'HVAC_model/LIN/CHANEL0/Homing/Switch Case Action Subsystem1/MAX POSITION' + * '' : 'HVAC_model/LIN/CHANEL0/Homing/Switch Case Action Subsystem1/Subsystem' + * '' : 'HVAC_model/LIN/CHANEL0/Homing/Switch Case Action Subsystem1/UDS ERROR' + * '' : 'HVAC_model/LIN/CHANEL0/Homing/Switch Case Action Subsystem1/CAN ERROR/Write ERROR' + * '' : 'HVAC_model/LIN/CHANEL0/Homing/Switch Case Action Subsystem2/Compare To Constant3' + * '' : 'HVAC_model/LIN/CHANEL0/Homing/Switch Case Action Subsystem2/Compare To Constant4' + * '' : 'HVAC_model/LIN/CHANEL0/Homing/Switch Case Action Subsystem2/MAX POSITION' + * '' : 'HVAC_model/LIN/CHANEL0/Homing/Switch Case Action Subsystem3/If Action Subsystem' + * '' : 'HVAC_model/LIN/CHANEL0/Homing/Switch Case Action Subsystem3/If Action Subsystem1' + * '' : 'HVAC_model/LIN/CHANEL0/Homing/Switch Case Action Subsystem3/MAX POSITION' + * '' : 'HVAC_model/LIN/CHANEL0/Homing/Switch Case Action Subsystem3/If Action Subsystem/If Action Subsystem' + * '' : 'HVAC_model/LIN/CHANEL0/Homing/Switch Case Action Subsystem3/If Action Subsystem/If Action Subsystem1' + * '' : 'HVAC_model/LIN/CHANEL0/Homing/Switch Case Action Subsystem3/If Action Subsystem/MATLAB Function' + * '' : 'HVAC_model/LIN/CHANEL0/Homing/Switch Case Action Subsystem3/If Action Subsystem/MAX POSITION' + * '' : 'HVAC_model/LIN/CHANEL0/Homing/Switch Case Action Subsystem3/If Action Subsystem/If Action Subsystem1/Send position' + * '' : 'HVAC_model/LIN/CHANEL0/Homing/Switch Case Action Subsystem3/If Action Subsystem/If Action Subsystem1/Send position/percents to steps' + * '' : 'HVAC_model/LIN/CHANEL0/Homing/Switch Case Action Subsystem3/If Action Subsystem1/CAN ERROR' + * '' : 'HVAC_model/LIN/CHANEL0/Homing/Switch Case Action Subsystem3/If Action Subsystem1/UDS ERROR' + * '' : 'HVAC_model/LIN/CHANEL0/Homing/Switch Case Action Subsystem3/If Action Subsystem1/CAN ERROR/Write ERROR' + * '' : 'HVAC_model/LIN/CHANEL0/Homing/Switch Case Action Subsystem4/Send position' + * '' : 'HVAC_model/LIN/CHANEL0/Homing/Switch Case Action Subsystem4/Send position/percents to steps' + * '' : 'HVAC_model/LIN/CHANEL0/Initial CPOS Max/If Action Subsystem2' + * '' : 'HVAC_model/LIN/CHANEL0/Initial CPOS Max/If Action Subsystem3' + * '' : 'HVAC_model/LIN/CHANEL0/Initial CPOS Max/If Action Subsystem2/Write' + * '' : 'HVAC_model/LIN/CHANEL0/Initial CPOS Min/If Action Subsystem' + * '' : 'HVAC_model/LIN/CHANEL0/Initial CPOS Min/If Action Subsystem3' + * '' : 'HVAC_model/LIN/CHANEL0/Initial CPOS Min/If Action Subsystem/Write' + * '' : 'HVAC_model/LIN/CHANEL0/Move to position Max/If Action Subsystem2' + * '' : 'HVAC_model/LIN/CHANEL0/Move to position Max/If Action Subsystem3' + * '' : 'HVAC_model/LIN/CHANEL0/Move to position Max/If Action Subsystem2/Write' + * '' : 'HVAC_model/LIN/CHANEL0/Move to position Min/If Action Subsystem2' + * '' : 'HVAC_model/LIN/CHANEL0/Move to position Min/If Action Subsystem3' + * '' : 'HVAC_model/LIN/CHANEL0/Move to position Min/If Action Subsystem2/Write' + * '' : 'HVAC_model/LIN/CHANEL0/Normal Mode/If Action Subsystem2' + * '' : 'HVAC_model/LIN/CHANEL0/Normal Mode/If Action Subsystem3' + * '' : 'HVAC_model/LIN/CHANEL0/Normal Mode/If Action Subsystem2/Write' + * '' : 'HVAC_model/LIN/CHANEL0/Stop Mode/If Action Subsystem2' + * '' : 'HVAC_model/LIN/CHANEL0/Stop Mode/If Action Subsystem3' + * '' : 'HVAC_model/LIN/CHANEL0/Stop Mode/If Action Subsystem2/Write' + * '' : 'HVAC_model/LIN/CHANEL1/Actuator_Ch1_Command_Model' + * '' : 'HVAC_model/LIN/CHANEL1/COM = 0' + * '' : 'HVAC_model/LIN/CHANEL1/Check Stall Max' + * '' : 'HVAC_model/LIN/CHANEL1/Check Stall Min' + * '' : 'HVAC_model/LIN/CHANEL1/Homing' + * '' : 'HVAC_model/LIN/CHANEL1/Initial CPOS Max' + * '' : 'HVAC_model/LIN/CHANEL1/Initial CPOS Min' + * '' : 'HVAC_model/LIN/CHANEL1/Move to position Max' + * '' : 'HVAC_model/LIN/CHANEL1/Move to position Min' + * '' : 'HVAC_model/LIN/CHANEL1/Normal Mode' + * '' : 'HVAC_model/LIN/CHANEL1/Stop Mode' + * '' : 'HVAC_model/LIN/CHANEL1/stepr to percents' + * '' : 'HVAC_model/LIN/CHANEL1/COM = 0/Compare To Constant' + * '' : 'HVAC_model/LIN/CHANEL1/Check Stall Max/If Action Subsystem2' + * '' : 'HVAC_model/LIN/CHANEL1/Check Stall Max/If Action Subsystem3' + * '' : 'HVAC_model/LIN/CHANEL1/Check Stall Max/If Action Subsystem2/Write' + * '' : 'HVAC_model/LIN/CHANEL1/Check Stall Min/If Action Subsystem2' + * '' : 'HVAC_model/LIN/CHANEL1/Check Stall Min/If Action Subsystem3' + * '' : 'HVAC_model/LIN/CHANEL1/Check Stall Min/If Action Subsystem2/Write' + * '' : 'HVAC_model/LIN/CHANEL1/Homing/Count step actuator' + * '' : 'HVAC_model/LIN/CHANEL1/Homing/Switch Case Action Subsystem' + * '' : 'HVAC_model/LIN/CHANEL1/Homing/Switch Case Action Subsystem1' + * '' : 'HVAC_model/LIN/CHANEL1/Homing/Switch Case Action Subsystem2' + * '' : 'HVAC_model/LIN/CHANEL1/Homing/Switch Case Action Subsystem3' + * '' : 'HVAC_model/LIN/CHANEL1/Homing/Switch Case Action Subsystem4' + * '' : 'HVAC_model/LIN/CHANEL1/Homing/Switch Case Action Subsystem/Compare To Constant' + * '' : 'HVAC_model/LIN/CHANEL1/Homing/Switch Case Action Subsystem/Compare To Constant1' + * '' : 'HVAC_model/LIN/CHANEL1/Homing/Switch Case Action Subsystem/MAX POSITION' + * '' : 'HVAC_model/LIN/CHANEL1/Homing/Switch Case Action Subsystem/Subsystem' + * '' : 'HVAC_model/LIN/CHANEL1/Homing/Switch Case Action Subsystem1/CAN ERROR' + * '' : 'HVAC_model/LIN/CHANEL1/Homing/Switch Case Action Subsystem1/Compare To Constant' + * '' : 'HVAC_model/LIN/CHANEL1/Homing/Switch Case Action Subsystem1/MAX POSITION' + * '' : 'HVAC_model/LIN/CHANEL1/Homing/Switch Case Action Subsystem1/Subsystem' + * '' : 'HVAC_model/LIN/CHANEL1/Homing/Switch Case Action Subsystem1/UDS ERROR' + * '' : 'HVAC_model/LIN/CHANEL1/Homing/Switch Case Action Subsystem1/CAN ERROR/Write ERROR' + * '' : 'HVAC_model/LIN/CHANEL1/Homing/Switch Case Action Subsystem2/Compare To Constant3' + * '' : 'HVAC_model/LIN/CHANEL1/Homing/Switch Case Action Subsystem2/Compare To Constant4' + * '' : 'HVAC_model/LIN/CHANEL1/Homing/Switch Case Action Subsystem2/MAX POSITION' + * '' : 'HVAC_model/LIN/CHANEL1/Homing/Switch Case Action Subsystem3/If Action Subsystem' + * '' : 'HVAC_model/LIN/CHANEL1/Homing/Switch Case Action Subsystem3/If Action Subsystem1' + * '' : 'HVAC_model/LIN/CHANEL1/Homing/Switch Case Action Subsystem3/MAX POSITION' + * '' : 'HVAC_model/LIN/CHANEL1/Homing/Switch Case Action Subsystem3/If Action Subsystem/If Action Subsystem' + * '' : 'HVAC_model/LIN/CHANEL1/Homing/Switch Case Action Subsystem3/If Action Subsystem/If Action Subsystem1' + * '' : 'HVAC_model/LIN/CHANEL1/Homing/Switch Case Action Subsystem3/If Action Subsystem/MATLAB Function' + * '' : 'HVAC_model/LIN/CHANEL1/Homing/Switch Case Action Subsystem3/If Action Subsystem/MAX POSITION' + * '' : 'HVAC_model/LIN/CHANEL1/Homing/Switch Case Action Subsystem3/If Action Subsystem1/CAN ERROR' + * '' : 'HVAC_model/LIN/CHANEL1/Homing/Switch Case Action Subsystem3/If Action Subsystem1/UDS ERROR' + * '' : 'HVAC_model/LIN/CHANEL1/Homing/Switch Case Action Subsystem3/If Action Subsystem1/CAN ERROR/Write ERROR' + * '' : 'HVAC_model/LIN/CHANEL1/Homing/Switch Case Action Subsystem4/MAX POSITION' + * '' : 'HVAC_model/LIN/CHANEL1/Initial CPOS Max/If Action Subsystem2' + * '' : 'HVAC_model/LIN/CHANEL1/Initial CPOS Max/If Action Subsystem3' + * '' : 'HVAC_model/LIN/CHANEL1/Initial CPOS Max/If Action Subsystem2/Write' + * '' : 'HVAC_model/LIN/CHANEL1/Initial CPOS Min/If Action Subsystem' + * '' : 'HVAC_model/LIN/CHANEL1/Initial CPOS Min/If Action Subsystem3' + * '' : 'HVAC_model/LIN/CHANEL1/Initial CPOS Min/If Action Subsystem/Write' + * '' : 'HVAC_model/LIN/CHANEL1/Move to position Max/If Action Subsystem2' + * '' : 'HVAC_model/LIN/CHANEL1/Move to position Max/If Action Subsystem3' + * '' : 'HVAC_model/LIN/CHANEL1/Move to position Max/If Action Subsystem2/Write' + * '' : 'HVAC_model/LIN/CHANEL1/Move to position Min/If Action Subsystem2' + * '' : 'HVAC_model/LIN/CHANEL1/Move to position Min/If Action Subsystem3' + * '' : 'HVAC_model/LIN/CHANEL1/Move to position Min/If Action Subsystem2/Write' + * '' : 'HVAC_model/LIN/CHANEL1/Normal Mode/If Action Subsystem2' + * '' : 'HVAC_model/LIN/CHANEL1/Normal Mode/If Action Subsystem3' + * '' : 'HVAC_model/LIN/CHANEL1/Normal Mode/If Action Subsystem2/Write' + * '' : 'HVAC_model/LIN/CHANEL1/Stop Mode/If Action Subsystem2' + * '' : 'HVAC_model/LIN/CHANEL1/Stop Mode/If Action Subsystem3' + * '' : 'HVAC_model/LIN/CHANEL1/Stop Mode/If Action Subsystem2/Write' + * '' : 'HVAC_model/LIN/CHANEL2/Actuator_Ch1_Command_Model' + * '' : 'HVAC_model/LIN/CHANEL2/COM = 0' + * '' : 'HVAC_model/LIN/CHANEL2/Check Stall Max' + * '' : 'HVAC_model/LIN/CHANEL2/Check Stall Min' + * '' : 'HVAC_model/LIN/CHANEL2/Homing' + * '' : 'HVAC_model/LIN/CHANEL2/Initial CPOS Max' + * '' : 'HVAC_model/LIN/CHANEL2/Initial CPOS Min' + * '' : 'HVAC_model/LIN/CHANEL2/Move to position Max' + * '' : 'HVAC_model/LIN/CHANEL2/Move to position Min' + * '' : 'HVAC_model/LIN/CHANEL2/Normal Mode' + * '' : 'HVAC_model/LIN/CHANEL2/Stop Mode' + * '' : 'HVAC_model/LIN/CHANEL2/stepr to percents' + * '' : 'HVAC_model/LIN/CHANEL2/COM = 0/Compare To Constant' + * '' : 'HVAC_model/LIN/CHANEL2/Check Stall Max/If Action Subsystem2' + * '' : 'HVAC_model/LIN/CHANEL2/Check Stall Max/If Action Subsystem3' + * '' : 'HVAC_model/LIN/CHANEL2/Check Stall Max/If Action Subsystem2/Write' + * '' : 'HVAC_model/LIN/CHANEL2/Check Stall Min/If Action Subsystem2' + * '' : 'HVAC_model/LIN/CHANEL2/Check Stall Min/If Action Subsystem3' + * '' : 'HVAC_model/LIN/CHANEL2/Check Stall Min/If Action Subsystem2/Write' + * '' : 'HVAC_model/LIN/CHANEL2/Homing/Count step actuator' + * '' : 'HVAC_model/LIN/CHANEL2/Homing/Switch Case Action Subsystem' + * '' : 'HVAC_model/LIN/CHANEL2/Homing/Switch Case Action Subsystem1' + * '' : 'HVAC_model/LIN/CHANEL2/Homing/Switch Case Action Subsystem2' + * '' : 'HVAC_model/LIN/CHANEL2/Homing/Switch Case Action Subsystem3' + * '' : 'HVAC_model/LIN/CHANEL2/Homing/Switch Case Action Subsystem4' + * '' : 'HVAC_model/LIN/CHANEL2/Homing/Switch Case Action Subsystem/Compare To Constant' + * '' : 'HVAC_model/LIN/CHANEL2/Homing/Switch Case Action Subsystem/Compare To Constant1' + * '' : 'HVAC_model/LIN/CHANEL2/Homing/Switch Case Action Subsystem/MAX POSITION' + * '' : 'HVAC_model/LIN/CHANEL2/Homing/Switch Case Action Subsystem/Subsystem' + * '' : 'HVAC_model/LIN/CHANEL2/Homing/Switch Case Action Subsystem1/CAN ERROR' + * '' : 'HVAC_model/LIN/CHANEL2/Homing/Switch Case Action Subsystem1/Compare To Constant' + * '' : 'HVAC_model/LIN/CHANEL2/Homing/Switch Case Action Subsystem1/MAX POSITION' + * '' : 'HVAC_model/LIN/CHANEL2/Homing/Switch Case Action Subsystem1/Subsystem' + * '' : 'HVAC_model/LIN/CHANEL2/Homing/Switch Case Action Subsystem1/UDS ERROR' + * '' : 'HVAC_model/LIN/CHANEL2/Homing/Switch Case Action Subsystem1/CAN ERROR/Write ERROR' + * '' : 'HVAC_model/LIN/CHANEL2/Homing/Switch Case Action Subsystem2/Compare To Constant3' + * '' : 'HVAC_model/LIN/CHANEL2/Homing/Switch Case Action Subsystem2/Compare To Constant4' + * '' : 'HVAC_model/LIN/CHANEL2/Homing/Switch Case Action Subsystem2/MAX POSITION' + * '' : 'HVAC_model/LIN/CHANEL2/Homing/Switch Case Action Subsystem3/If Action Subsystem' + * '' : 'HVAC_model/LIN/CHANEL2/Homing/Switch Case Action Subsystem3/If Action Subsystem1' + * '' : 'HVAC_model/LIN/CHANEL2/Homing/Switch Case Action Subsystem3/MAX POSITION' + * '' : 'HVAC_model/LIN/CHANEL2/Homing/Switch Case Action Subsystem3/If Action Subsystem/If Action Subsystem' + * '' : 'HVAC_model/LIN/CHANEL2/Homing/Switch Case Action Subsystem3/If Action Subsystem/If Action Subsystem1' + * '' : 'HVAC_model/LIN/CHANEL2/Homing/Switch Case Action Subsystem3/If Action Subsystem/MATLAB Function' + * '' : 'HVAC_model/LIN/CHANEL2/Homing/Switch Case Action Subsystem3/If Action Subsystem/MAX POSITION' + * '' : 'HVAC_model/LIN/CHANEL2/Homing/Switch Case Action Subsystem3/If Action Subsystem1/CAN ERROR' + * '' : 'HVAC_model/LIN/CHANEL2/Homing/Switch Case Action Subsystem3/If Action Subsystem1/UDS ERROR' + * '' : 'HVAC_model/LIN/CHANEL2/Homing/Switch Case Action Subsystem3/If Action Subsystem1/CAN ERROR/Write ERROR' + * '' : 'HVAC_model/LIN/CHANEL2/Homing/Switch Case Action Subsystem4/MAX POSITION' + * '' : 'HVAC_model/LIN/CHANEL2/Initial CPOS Max/If Action Subsystem2' + * '' : 'HVAC_model/LIN/CHANEL2/Initial CPOS Max/If Action Subsystem3' + * '' : 'HVAC_model/LIN/CHANEL2/Initial CPOS Max/If Action Subsystem2/Write' + * '' : 'HVAC_model/LIN/CHANEL2/Initial CPOS Min/If Action Subsystem' + * '' : 'HVAC_model/LIN/CHANEL2/Initial CPOS Min/If Action Subsystem3' + * '' : 'HVAC_model/LIN/CHANEL2/Initial CPOS Min/If Action Subsystem/Write' + * '' : 'HVAC_model/LIN/CHANEL2/Move to position Max/If Action Subsystem2' + * '' : 'HVAC_model/LIN/CHANEL2/Move to position Max/If Action Subsystem3' + * '' : 'HVAC_model/LIN/CHANEL2/Move to position Max/If Action Subsystem2/Write' + * '' : 'HVAC_model/LIN/CHANEL2/Move to position Min/If Action Subsystem2' + * '' : 'HVAC_model/LIN/CHANEL2/Move to position Min/If Action Subsystem3' + * '' : 'HVAC_model/LIN/CHANEL2/Move to position Min/If Action Subsystem2/Write' + * '' : 'HVAC_model/LIN/CHANEL2/Normal Mode/If Action Subsystem2' + * '' : 'HVAC_model/LIN/CHANEL2/Normal Mode/If Action Subsystem3' + * '' : 'HVAC_model/LIN/CHANEL2/Normal Mode/If Action Subsystem2/Write' + * '' : 'HVAC_model/LIN/CHANEL2/Stop Mode/If Action Subsystem2' + * '' : 'HVAC_model/LIN/CHANEL2/Stop Mode/If Action Subsystem3' + * '' : 'HVAC_model/LIN/CHANEL2/Stop Mode/If Action Subsystem2/Write' + * '' : 'HVAC_model/PWM and valves in manual1/PWM in manual mode' + * '' : 'HVAC_model/PWM and valves in manual1/valves in manual mode ' + * '' : 'HVAC_model/PWM and valves in manual1/PWM in manual mode/Front Left AF - manual directions' + * '' : 'HVAC_model/PWM and valves in manual1/PWM in manual mode/Front Right AF - manual directions' + * '' : 'HVAC_model/PWM and valves in manual1/PWM in manual mode/Rear Left AF - manual directions' + * '' : 'HVAC_model/PWM and valves in manual1/PWM in manual mode/Rear Right AF - manual directions' + * '' : 'HVAC_model/PWM and valves in manual1/PWM in manual mode/Write' + * '' : 'HVAC_model/PWM and valves in manual1/PWM in manual mode/Write1' + * '' : 'HVAC_model/PWM and valves in manual1/PWM in manual mode/Write2' + * '' : 'HVAC_model/PWM and valves in manual1/PWM in manual mode/Front Left AF - manual directions/AF for Bi Level' + * '' : 'HVAC_model/PWM and valves in manual1/PWM in manual mode/Front Left AF - manual directions/AF for Def' + * '' : 'HVAC_model/PWM and valves in manual1/PWM in manual mode/Front Left AF - manual directions/AF for Foor + Def' + * '' : 'HVAC_model/PWM and valves in manual1/PWM in manual mode/Front Left AF - manual directions/AF for Foot' + * '' : 'HVAC_model/PWM and valves in manual1/PWM in manual mode/Front Left AF - manual directions/AF for Hi_Level' + * '' : 'HVAC_model/PWM and valves in manual1/PWM in manual mode/Front Left AF - manual directions/AF for Tri-Level' + * '' : 'HVAC_model/PWM and valves in manual1/PWM in manual mode/Front Left AF - manual directions/AF for Vent mode' + * '' : 'HVAC_model/PWM and valves in manual1/PWM in manual mode/Front Right AF - manual directions/AF for Bi Level' + * '' : 'HVAC_model/PWM and valves in manual1/PWM in manual mode/Front Right AF - manual directions/AF for Def' + * '' : 'HVAC_model/PWM and valves in manual1/PWM in manual mode/Front Right AF - manual directions/AF for Foor + Def' + * '' : 'HVAC_model/PWM and valves in manual1/PWM in manual mode/Front Right AF - manual directions/AF for Foot' + * '' : 'HVAC_model/PWM and valves in manual1/PWM in manual mode/Front Right AF - manual directions/AF for Hi_Level' + * '' : 'HVAC_model/PWM and valves in manual1/PWM in manual mode/Front Right AF - manual directions/AF for Tri-Level' + * '' : 'HVAC_model/PWM and valves in manual1/PWM in manual mode/Front Right AF - manual directions/AF for Vent mode' + * '' : 'HVAC_model/PWM and valves in manual1/PWM in manual mode/Rear Left AF - manual directions/AF for Bi Level R' + * '' : 'HVAC_model/PWM and valves in manual1/PWM in manual mode/Rear Left AF - manual directions/AF for Foot R' + * '' : 'HVAC_model/PWM and valves in manual1/PWM in manual mode/Rear Left AF - manual directions/AF for Vent mode R' + * '' : 'HVAC_model/PWM and valves in manual1/PWM in manual mode/Rear Right AF - manual directions/AF for Bi Level R' + * '' : 'HVAC_model/PWM and valves in manual1/PWM in manual mode/Rear Right AF - manual directions/AF for Foot R' + * '' : 'HVAC_model/PWM and valves in manual1/PWM in manual mode/Rear Right AF - manual directions/AF for Vent mode R' + * '' : 'HVAC_model/PWM and valves in manual1/valves in manual mode /Front Left Valves - manual directions' + * '' : 'HVAC_model/PWM and valves in manual1/valves in manual mode /Front Right Valves - manual directions' + * '' : 'HVAC_model/PWM and valves in manual1/valves in manual mode /Rear Left AF - manual directions' + * '' : 'HVAC_model/PWM and valves in manual1/valves in manual mode /Rear Right AF - manual directions' + * '' : 'HVAC_model/PWM and valves in manual1/valves in manual mode /Front Left Valves - manual directions/Valves for Bi Level' + * '' : 'HVAC_model/PWM and valves in manual1/valves in manual mode /Front Left Valves - manual directions/Valves for Def' + * '' : 'HVAC_model/PWM and valves in manual1/valves in manual mode /Front Left Valves - manual directions/Valves for Foot' + * '' : 'HVAC_model/PWM and valves in manual1/valves in manual mode /Front Left Valves - manual directions/Valves for Foot + Def' + * '' : 'HVAC_model/PWM and valves in manual1/valves in manual mode /Front Left Valves - manual directions/Valves for Hi_Level' + * '' : 'HVAC_model/PWM and valves in manual1/valves in manual mode /Front Left Valves - manual directions/Valves for Tri-Level' + * '' : 'HVAC_model/PWM and valves in manual1/valves in manual mode /Front Left Valves - manual directions/Valves for Vent mode' + * '' : 'HVAC_model/PWM and valves in manual1/valves in manual mode /Front Right Valves - manual directions/Valves for Bi Level' + * '' : 'HVAC_model/PWM and valves in manual1/valves in manual mode /Front Right Valves - manual directions/Valves for Def' + * '' : 'HVAC_model/PWM and valves in manual1/valves in manual mode /Front Right Valves - manual directions/Valves for Foot' + * '' : 'HVAC_model/PWM and valves in manual1/valves in manual mode /Front Right Valves - manual directions/Valves for Foot + Def' + * '' : 'HVAC_model/PWM and valves in manual1/valves in manual mode /Front Right Valves - manual directions/Valves for Hi_Level' + * '' : 'HVAC_model/PWM and valves in manual1/valves in manual mode /Front Right Valves - manual directions/Valves for Tri-Level' + * '' : 'HVAC_model/PWM and valves in manual1/valves in manual mode /Front Right Valves - manual directions/Valves for Vent mode' + * '' : 'HVAC_model/PWM and valves in manual1/valves in manual mode /Rear Left AF - manual directions/AF for Bi Level' + * '' : 'HVAC_model/PWM and valves in manual1/valves in manual mode /Rear Left AF - manual directions/AF for Foot' + * '' : 'HVAC_model/PWM and valves in manual1/valves in manual mode /Rear Left AF - manual directions/valves for Vent mode' + * '' : 'HVAC_model/PWM and valves in manual1/valves in manual mode /Rear Right AF - manual directions/AF for Bi Level' + * '' : 'HVAC_model/PWM and valves in manual1/valves in manual mode /Rear Right AF - manual directions/AF for Foot' + * '' : 'HVAC_model/PWM and valves in manual1/valves in manual mode /Rear Right AF - manual directions/valves for Vent mode' + * '' : 'HVAC_model/PWN/Write' + * '' : 'HVAC_model/PWN/Write1' + * '' : 'HVAC_model/PWN/Write2' + * '' : 'HVAC_model/PWN/Write3' + * '' : 'HVAC_model/Start control/If Action Subsystem' + * '' : 'HVAC_model/Start control/Start Control Front' + * '' : 'HVAC_model/Start control/Start Control Rear' + * '' : 'HVAC_model/Start control/Start Control Front/Step -1 F (Entry Condition)' + * '' : 'HVAC_model/Start control/Start Control Front/Step 0 F' + * '' : 'HVAC_model/Start control/Start Control Front/Step 1 F' + * '' : 'HVAC_model/Start control/Start Control Front/Step 2 F' + * '' : 'HVAC_model/Start control/Start Control Front/Step 3 F' + * '' : 'HVAC_model/Start control/Start Control Front/Step -1 F (Entry Condition)/Level 0' + * '' : 'HVAC_model/Start control/Start Control Front/Step -1 F (Entry Condition)/Level 1' + * '' : 'HVAC_model/Start control/Start Control Front/Step -1 F (Entry Condition)/Level 2' + * '' : 'HVAC_model/Start control/Start Control Front/Step -1 F (Entry Condition)/Level 3' + * '' : 'HVAC_model/Start control/Start Control Front/Step -1 F (Entry Condition)/Level 4' + * '' : 'HVAC_model/Start control/Start Control Front/Step -1 F (Entry Condition)/Level 5' + * '' : 'HVAC_model/Start control/Start Control Front/Step -1 F (Entry Condition)/Level 0/g_assSTART_ENTER_INCAR' + * '' : 'HVAC_model/Start control/Start Control Front/Step -1 F (Entry Condition)/Level 0/g_ausSTART_ENTER_SETTEMP' + * '' : 'HVAC_model/Start control/Start Control Front/Step -1 F (Entry Condition)/Level 1/g_assSTART_ENTER_INCAR' + * '' : 'HVAC_model/Start control/Start Control Front/Step -1 F (Entry Condition)/Level 1/g_ausSTART_ENTER_SETTEMP' + * '' : 'HVAC_model/Start control/Start Control Front/Step -1 F (Entry Condition)/Level 3/g_assSTART_ENTER_COOLANT ' + * '' : 'HVAC_model/Start control/Start Control Front/Step -1 F (Entry Condition)/Level 4/g_assSTART_ENTER_COOLANT ' + * '' : 'HVAC_model/Start control/Start Control Front/Step -1 F (Entry Condition)/Level 5/g_assSTART_ENTER_COOLANT ' + * '' : 'HVAC_model/Start control/Start Control Front/Step 0 F/Level 0' + * '' : 'HVAC_model/Start control/Start Control Front/Step 0 F/Level 1' + * '' : 'HVAC_model/Start control/Start Control Front/Step 0 F/Level 2' + * '' : 'HVAC_model/Start control/Start Control Front/Step 0 F/Level 3' + * '' : 'HVAC_model/Start control/Start Control Front/Step 0 F/Level 4' + * '' : 'HVAC_model/Start control/Start Control Front/Step 0 F/Level 5' + * '' : 'HVAC_model/Start control/Start Control Front/Step 0 F/Level 3/g_assSTART_COOLANT_STEP0_TO_1 ' + * '' : 'HVAC_model/Start control/Start Control Front/Step 0 F/Level 3/incar filter down' + * '' : 'HVAC_model/Start control/Start Control Front/Step 0 F/Level 3/incar filter up' + * '' : 'HVAC_model/Start control/Start Control Front/Step 0 F/Level 4/g_assSTART_COOLANT_STEP0_TO_1 ' + * '' : 'HVAC_model/Start control/Start Control Front/Step 0 F/Level 4/incar filter down' + * '' : 'HVAC_model/Start control/Start Control Front/Step 0 F/Level 4/incar filter up' + * '' : 'HVAC_model/Start control/Start Control Front/Step 0 F/Level 5/g_assSTART_COOLANT_STEP0_TO_1 ' + * '' : 'HVAC_model/Start control/Start Control Front/Step 0 F/Level 5/incar filter down' + * '' : 'HVAC_model/Start control/Start Control Front/Step 0 F/Level 5/incar filter up' + * '' : 'HVAC_model/Start control/Start Control Front/Step 1 F/Level 0' + * '' : 'HVAC_model/Start control/Start Control Front/Step 1 F/Level 1' + * '' : 'HVAC_model/Start control/Start Control Front/Step 1 F/Level 2' + * '' : 'HVAC_model/Start control/Start Control Front/Step 1 F/Level 3' + * '' : 'HVAC_model/Start control/Start Control Front/Step 1 F/Level 4' + * '' : 'HVAC_model/Start control/Start Control Front/Step 1 F/Level 5' + * '' : 'HVAC_model/Start control/Start Control Front/Step 1 F/Level 0/3 way valve status' + * '' : 'HVAC_model/Start control/Start Control Front/Step 1 F/Level 0/Dtg_FrontLower_X' + * '' : 'HVAC_model/Start control/Start Control Front/Step 1 F/Level 0/Dtg_FrontUpper_X' + * '' : 'HVAC_model/Start control/Start Control Front/Step 1 F/Level 0/Incar temp goto from step 1 to step 2 ' + * '' : 'HVAC_model/Start control/Start Control Front/Step 1 F/Level 0/RealTime_Timer' + * '' : 'HVAC_model/Start control/Start Control Front/Step 1 F/Level 0/Time goto from step 1 to step 2 ' + * '' : 'HVAC_model/Start control/Start Control Front/Step 1 F/Level 0/blower FR' + * '' : 'HVAC_model/Start control/Start Control Front/Step 1 F/Level 0/incar filter down' + * '' : 'HVAC_model/Start control/Start Control Front/Step 1 F/Level 0/incar filter up' + * '' : 'HVAC_model/Start control/Start Control Front/Step 1 F/Level 0/mode FR step 1' + * '' : 'HVAC_model/Start control/Start Control Front/Step 1 F/Level 0/window heating' + * '' : 'HVAC_model/Start control/Start Control Front/Step 1 F/Level 1/3 way valve status' + * '' : 'HVAC_model/Start control/Start Control Front/Step 1 F/Level 1/Dtg_FrontLower_X' + * '' : 'HVAC_model/Start control/Start Control Front/Step 1 F/Level 1/Dtg_FrontUpper_X' + * '' : 'HVAC_model/Start control/Start Control Front/Step 1 F/Level 1/Incar temp goto from step 1 to step 2 ' + * '' : 'HVAC_model/Start control/Start Control Front/Step 1 F/Level 1/RealTime_Timer' + * '' : 'HVAC_model/Start control/Start Control Front/Step 1 F/Level 1/Time goto from step 1 to step 2 ' + * '' : 'HVAC_model/Start control/Start Control Front/Step 1 F/Level 1/blower FR' + * '' : 'HVAC_model/Start control/Start Control Front/Step 1 F/Level 1/incar filter down' + * '' : 'HVAC_model/Start control/Start Control Front/Step 1 F/Level 1/incar filter up' + * '' : 'HVAC_model/Start control/Start Control Front/Step 1 F/Level 1/mode FR step 1' + * '' : 'HVAC_model/Start control/Start Control Front/Step 1 F/Level 1/window heating' + * '' : 'HVAC_model/Start control/Start Control Front/Step 1 F/Level 3/3 way valve status' + * '' : 'HVAC_model/Start control/Start Control Front/Step 1 F/Level 3/Dtg_FrontLower_X' + * '' : 'HVAC_model/Start control/Start Control Front/Step 1 F/Level 3/Dtg_FrontUpper_X' + * '' : 'HVAC_model/Start control/Start Control Front/Step 1 F/Level 3/Incar temp goto from step 1 to step 2 ' + * '' : 'HVAC_model/Start control/Start Control Front/Step 1 F/Level 3/RealTime_Timer' + * '' : 'HVAC_model/Start control/Start Control Front/Step 1 F/Level 3/Time goto from step 1 to step 2 ' + * '' : 'HVAC_model/Start control/Start Control Front/Step 1 F/Level 3/blower в зависимости от ECT' + * '' : 'HVAC_model/Start control/Start Control Front/Step 1 F/Level 3/g_assSTART_COOLANT_TO_STEP2 ' + * '' : 'HVAC_model/Start control/Start Control Front/Step 1 F/Level 3/incar filter down' + * '' : 'HVAC_model/Start control/Start Control Front/Step 1 F/Level 3/incar filter up' + * '' : 'HVAC_model/Start control/Start Control Front/Step 1 F/Level 3/mode FR step 1' + * '' : 'HVAC_model/Start control/Start Control Front/Step 1 F/Level 3/window heating' + * '' : 'HVAC_model/Start control/Start Control Front/Step 1 F/Level 3/blower в зависимости от ECT/ECT min max' + * '' : 'HVAC_model/Start control/Start Control Front/Step 1 F/Level 3/blower в зависимости от ECT/blower min max' + * '' : 'HVAC_model/Start control/Start Control Front/Step 1 F/Level 4/3 way valve status' + * '' : 'HVAC_model/Start control/Start Control Front/Step 1 F/Level 4/Dtg_FrontLower_X' + * '' : 'HVAC_model/Start control/Start Control Front/Step 1 F/Level 4/Dtg_FrontUpper_X' + * '' : 'HVAC_model/Start control/Start Control Front/Step 1 F/Level 4/Incar temp goto from step 1 to step 2 ' + * '' : 'HVAC_model/Start control/Start Control Front/Step 1 F/Level 4/RealTime_Timer' + * '' : 'HVAC_model/Start control/Start Control Front/Step 1 F/Level 4/Time goto from step 1 to step 2 ' + * '' : 'HVAC_model/Start control/Start Control Front/Step 1 F/Level 4/blower в зависимости от ECT' + * '' : 'HVAC_model/Start control/Start Control Front/Step 1 F/Level 4/incar filter down' + * '' : 'HVAC_model/Start control/Start Control Front/Step 1 F/Level 4/incar filter up' + * '' : 'HVAC_model/Start control/Start Control Front/Step 1 F/Level 4/mode FR step 1' + * '' : 'HVAC_model/Start control/Start Control Front/Step 1 F/Level 4/window heating' + * '' : 'HVAC_model/Start control/Start Control Front/Step 1 F/Level 4/blower в зависимости от ECT/ECT min max' + * '' : 'HVAC_model/Start control/Start Control Front/Step 1 F/Level 4/blower в зависимости от ECT/blower min max' + * '' : 'HVAC_model/Start control/Start Control Front/Step 1 F/Level 5/3 way valve status' + * '' : 'HVAC_model/Start control/Start Control Front/Step 1 F/Level 5/Dtg_FrontLower_X' + * '' : 'HVAC_model/Start control/Start Control Front/Step 1 F/Level 5/Dtg_FrontUpper_X' + * '' : 'HVAC_model/Start control/Start Control Front/Step 1 F/Level 5/Incar temp goto from step 1 to step 2 ' + * '' : 'HVAC_model/Start control/Start Control Front/Step 1 F/Level 5/RealTime_Timer' + * '' : 'HVAC_model/Start control/Start Control Front/Step 1 F/Level 5/Time goto from step 1 to step 2 ' + * '' : 'HVAC_model/Start control/Start Control Front/Step 1 F/Level 5/blower в зависимости от ECT' + * '' : 'HVAC_model/Start control/Start Control Front/Step 1 F/Level 5/incar filter down' + * '' : 'HVAC_model/Start control/Start Control Front/Step 1 F/Level 5/incar filter up' + * '' : 'HVAC_model/Start control/Start Control Front/Step 1 F/Level 5/mode FR step 1' + * '' : 'HVAC_model/Start control/Start Control Front/Step 1 F/Level 5/window heating' + * '' : 'HVAC_model/Start control/Start Control Front/Step 1 F/Level 5/blower в зависимости от ECT/ECT min max' + * '' : 'HVAC_model/Start control/Start Control Front/Step 1 F/Level 5/blower в зависимости от ECT/blower min max' + * '' : 'HVAC_model/Start control/Start Control Front/Step 2 F/Level 0' + * '' : 'HVAC_model/Start control/Start Control Front/Step 2 F/Level 1' + * '' : 'HVAC_model/Start control/Start Control Front/Step 2 F/Level 2' + * '' : 'HVAC_model/Start control/Start Control Front/Step 2 F/Level 3' + * '' : 'HVAC_model/Start control/Start Control Front/Step 2 F/Level 4' + * '' : 'HVAC_model/Start control/Start Control Front/Step 2 F/Level 5' + * '' : 'HVAC_model/Start control/Start Control Front/Step 2 F/Level 0/3 way valve status' + * '' : 'HVAC_model/Start control/Start Control Front/Step 2 F/Level 0/DTG F Lower, стремящийся к AUTO' + * '' : 'HVAC_model/Start control/Start Control Front/Step 2 F/Level 0/DTG F Upper, стремящийся к AUTO' + * '' : 'HVAC_model/Start control/Start Control Front/Step 2 F/Level 0/RealTime_Timer' + * '' : 'HVAC_model/Start control/Start Control Front/Step 2 F/Level 0/Time goto from step 2 to step 3 ' + * '' : 'HVAC_model/Start control/Start Control Front/Step 2 F/Level 0/blower, стремящийся к AUTO' + * '' : 'HVAC_model/Start control/Start Control Front/Step 2 F/Level 0/incar filter down' + * '' : 'HVAC_model/Start control/Start Control Front/Step 2 F/Level 0/incar filter up' + * '' : 'HVAC_model/Start control/Start Control Front/Step 2 F/Level 0/mode, стремящийся к AUTO' + * '' : 'HVAC_model/Start control/Start Control Front/Step 2 F/Level 0/window heating' + * '' : 'HVAC_model/Start control/Start Control Front/Step 2 F/Level 0/DTG F Lower, стремящийся к AUTO/Almost equal' + * '' : 'HVAC_model/Start control/Start Control Front/Step 2 F/Level 0/DTG F Lower, стремящийся к AUTO/Calculate delta time' + * '' : 'HVAC_model/Start control/Start Control Front/Step 2 F/Level 0/DTG F Lower, стремящийся к AUTO/step' + * '' : 'HVAC_model/Start control/Start Control Front/Step 2 F/Level 0/DTG F Lower, стремящийся к AUTO/time for step' + * '' : 'HVAC_model/Start control/Start Control Front/Step 2 F/Level 0/DTG F Lower, стремящийся к AUTO/знак для изменения (+//-)' + * '' : 'HVAC_model/Start control/Start Control Front/Step 2 F/Level 0/DTG F Upper, стремящийся к AUTO/Almost equal' + * '' : 'HVAC_model/Start control/Start Control Front/Step 2 F/Level 0/DTG F Upper, стремящийся к AUTO/Calculate delta time' + * '' : 'HVAC_model/Start control/Start Control Front/Step 2 F/Level 0/DTG F Upper, стремящийся к AUTO/step' + * '' : 'HVAC_model/Start control/Start Control Front/Step 2 F/Level 0/DTG F Upper, стремящийся к AUTO/time for step' + * '' : 'HVAC_model/Start control/Start Control Front/Step 2 F/Level 0/DTG F Upper, стремящийся к AUTO/знак для изменения (+//-)' + * '' : 'HVAC_model/Start control/Start Control Front/Step 2 F/Level 0/blower, стремящийся к AUTO/Almost equal' + * '' : 'HVAC_model/Start control/Start Control Front/Step 2 F/Level 0/blower, стремящийся к AUTO/Calculate delta time' + * '' : 'HVAC_model/Start control/Start Control Front/Step 2 F/Level 0/blower, стремящийся к AUTO/blower step' + * '' : 'HVAC_model/Start control/Start Control Front/Step 2 F/Level 0/blower, стремящийся к AUTO/blower time for step' + * '' : 'HVAC_model/Start control/Start Control Front/Step 2 F/Level 0/blower, стремящийся к AUTO/знак для изменения (+//-)' + * '' : 'HVAC_model/Start control/Start Control Front/Step 2 F/Level 0/mode, стремящийся к AUTO/Almost equal' + * '' : 'HVAC_model/Start control/Start Control Front/Step 2 F/Level 0/mode, стремящийся к AUTO/Calculate delta time' + * '' : 'HVAC_model/Start control/Start Control Front/Step 2 F/Level 0/mode, стремящийся к AUTO/step' + * '' : 'HVAC_model/Start control/Start Control Front/Step 2 F/Level 0/mode, стремящийся к AUTO/time for step' + * '' : 'HVAC_model/Start control/Start Control Front/Step 2 F/Level 0/mode, стремящийся к AUTO/знак для изменения (+//-)' + * '' : 'HVAC_model/Start control/Start Control Front/Step 2 F/Level 1/3 way valve status' + * '' : 'HVAC_model/Start control/Start Control Front/Step 2 F/Level 1/DTG F Lower, стремящийся к AUTO' + * '' : 'HVAC_model/Start control/Start Control Front/Step 2 F/Level 1/DTG F Upper, стремящийся к AUTO' + * '' : 'HVAC_model/Start control/Start Control Front/Step 2 F/Level 1/RealTime_Timer' + * '' : 'HVAC_model/Start control/Start Control Front/Step 2 F/Level 1/Time goto from step 2 to step 3 ' + * '' : 'HVAC_model/Start control/Start Control Front/Step 2 F/Level 1/blower, стремящийся к AUTO' + * '' : 'HVAC_model/Start control/Start Control Front/Step 2 F/Level 1/incar filter down' + * '' : 'HVAC_model/Start control/Start Control Front/Step 2 F/Level 1/incar filter up' + * '' : 'HVAC_model/Start control/Start Control Front/Step 2 F/Level 1/mode, стремящийся к AUTO' + * '' : 'HVAC_model/Start control/Start Control Front/Step 2 F/Level 1/window heating' + * '' : 'HVAC_model/Start control/Start Control Front/Step 2 F/Level 1/DTG F Lower, стремящийся к AUTO/Almost equal' + * '' : 'HVAC_model/Start control/Start Control Front/Step 2 F/Level 1/DTG F Lower, стремящийся к AUTO/Calculate delta time' + * '' : 'HVAC_model/Start control/Start Control Front/Step 2 F/Level 1/DTG F Lower, стремящийся к AUTO/step' + * '' : 'HVAC_model/Start control/Start Control Front/Step 2 F/Level 1/DTG F Lower, стремящийся к AUTO/time for step' + * '' : 'HVAC_model/Start control/Start Control Front/Step 2 F/Level 1/DTG F Lower, стремящийся к AUTO/знак для изменения (+//-)' + * '' : 'HVAC_model/Start control/Start Control Front/Step 2 F/Level 1/DTG F Upper, стремящийся к AUTO/Almost equal' + * '' : 'HVAC_model/Start control/Start Control Front/Step 2 F/Level 1/DTG F Upper, стремящийся к AUTO/Calculate delta time' + * '' : 'HVAC_model/Start control/Start Control Front/Step 2 F/Level 1/DTG F Upper, стремящийся к AUTO/step' + * '' : 'HVAC_model/Start control/Start Control Front/Step 2 F/Level 1/DTG F Upper, стремящийся к AUTO/time for step' + * '' : 'HVAC_model/Start control/Start Control Front/Step 2 F/Level 1/DTG F Upper, стремящийся к AUTO/знак для изменения (+//-)' + * '' : 'HVAC_model/Start control/Start Control Front/Step 2 F/Level 1/blower, стремящийся к AUTO/Almost equal' + * '' : 'HVAC_model/Start control/Start Control Front/Step 2 F/Level 1/blower, стремящийся к AUTO/Calculate delta time' + * '' : 'HVAC_model/Start control/Start Control Front/Step 2 F/Level 1/blower, стремящийся к AUTO/blower step' + * '' : 'HVAC_model/Start control/Start Control Front/Step 2 F/Level 1/blower, стремящийся к AUTO/blower time for step' + * '' : 'HVAC_model/Start control/Start Control Front/Step 2 F/Level 1/blower, стремящийся к AUTO/знак для изменения (+//-)' + * '' : 'HVAC_model/Start control/Start Control Front/Step 2 F/Level 1/mode, стремящийся к AUTO/Almost equal' + * '' : 'HVAC_model/Start control/Start Control Front/Step 2 F/Level 1/mode, стремящийся к AUTO/Calculate delta time' + * '' : 'HVAC_model/Start control/Start Control Front/Step 2 F/Level 1/mode, стремящийся к AUTO/step' + * '' : 'HVAC_model/Start control/Start Control Front/Step 2 F/Level 1/mode, стремящийся к AUTO/time for step' + * '' : 'HVAC_model/Start control/Start Control Front/Step 2 F/Level 1/mode, стремящийся к AUTO/знак для изменения (+//-)' + * '' : 'HVAC_model/Start control/Start Control Front/Step 2 F/Level 3/3 way valve status' + * '' : 'HVAC_model/Start control/Start Control Front/Step 2 F/Level 3/DTG F Lower, стремящийся к AUTO' + * '' : 'HVAC_model/Start control/Start Control Front/Step 2 F/Level 3/DTG F Upper, стремящийся к AUTO' + * '' : 'HVAC_model/Start control/Start Control Front/Step 2 F/Level 3/RealTime_Timer' + * '' : 'HVAC_model/Start control/Start Control Front/Step 2 F/Level 3/Time goto from step 2 to step 3 ' + * '' : 'HVAC_model/Start control/Start Control Front/Step 2 F/Level 3/autodemist (autodefog)' + * '' : 'HVAC_model/Start control/Start Control Front/Step 2 F/Level 3/blower, стремящийся к AUTO' + * '' : 'HVAC_model/Start control/Start Control Front/Step 2 F/Level 3/incar filter down' + * '' : 'HVAC_model/Start control/Start Control Front/Step 2 F/Level 3/incar filter up' + * '' : 'HVAC_model/Start control/Start Control Front/Step 2 F/Level 3/mode, стремящийся к AUTO' + * '' : 'HVAC_model/Start control/Start Control Front/Step 2 F/Level 3/window heating' + * '' : 'HVAC_model/Start control/Start Control Front/Step 2 F/Level 3/DTG F Lower, стремящийся к AUTO/Almost equal' + * '' : 'HVAC_model/Start control/Start Control Front/Step 2 F/Level 3/DTG F Lower, стремящийся к AUTO/Calculate delta time' + * '' : 'HVAC_model/Start control/Start Control Front/Step 2 F/Level 3/DTG F Lower, стремящийся к AUTO/step' + * '' : 'HVAC_model/Start control/Start Control Front/Step 2 F/Level 3/DTG F Lower, стремящийся к AUTO/time for step' + * '' : 'HVAC_model/Start control/Start Control Front/Step 2 F/Level 3/DTG F Lower, стремящийся к AUTO/знак для изменения (+//-)' + * '' : 'HVAC_model/Start control/Start Control Front/Step 2 F/Level 3/DTG F Upper, стремящийся к AUTO/Almost equal' + * '' : 'HVAC_model/Start control/Start Control Front/Step 2 F/Level 3/DTG F Upper, стремящийся к AUTO/Calculate delta time' + * '' : 'HVAC_model/Start control/Start Control Front/Step 2 F/Level 3/DTG F Upper, стремящийся к AUTO/step' + * '' : 'HVAC_model/Start control/Start Control Front/Step 2 F/Level 3/DTG F Upper, стремящийся к AUTO/time for step' + * '' : 'HVAC_model/Start control/Start Control Front/Step 2 F/Level 3/DTG F Upper, стремящийся к AUTO/знак для изменения (+//-)' + * '' : 'HVAC_model/Start control/Start Control Front/Step 2 F/Level 3/blower, стремящийся к AUTO/Almost equal' + * '' : 'HVAC_model/Start control/Start Control Front/Step 2 F/Level 3/blower, стремящийся к AUTO/Calculate delta time' + * '' : 'HVAC_model/Start control/Start Control Front/Step 2 F/Level 3/blower, стремящийся к AUTO/blower step' + * '' : 'HVAC_model/Start control/Start Control Front/Step 2 F/Level 3/blower, стремящийся к AUTO/blower time for step' + * '' : 'HVAC_model/Start control/Start Control Front/Step 2 F/Level 3/blower, стремящийся к AUTO/знак для изменения (+//-)' + * '' : 'HVAC_model/Start control/Start Control Front/Step 2 F/Level 3/mode, стремящийся к AUTO/Almost equal' + * '' : 'HVAC_model/Start control/Start Control Front/Step 2 F/Level 3/mode, стремящийся к AUTO/Calculate delta time' + * '' : 'HVAC_model/Start control/Start Control Front/Step 2 F/Level 3/mode, стремящийся к AUTO/step' + * '' : 'HVAC_model/Start control/Start Control Front/Step 2 F/Level 3/mode, стремящийся к AUTO/time for step' + * '' : 'HVAC_model/Start control/Start Control Front/Step 2 F/Level 3/mode, стремящийся к AUTO/знак для изменения (+//-)' + * '' : 'HVAC_model/Start control/Start Control Front/Step 2 F/Level 4/3 way valve status' + * '' : 'HVAC_model/Start control/Start Control Front/Step 2 F/Level 4/DTG F Lower, стремящийся к AUTO' + * '' : 'HVAC_model/Start control/Start Control Front/Step 2 F/Level 4/DTG F Upper, стремящийся к AUTO' + * '' : 'HVAC_model/Start control/Start Control Front/Step 2 F/Level 4/RealTime_Timer' + * '' : 'HVAC_model/Start control/Start Control Front/Step 2 F/Level 4/Time goto from step 2 to step 3 ' + * '' : 'HVAC_model/Start control/Start Control Front/Step 2 F/Level 4/autodemist (autodefog)' + * '' : 'HVAC_model/Start control/Start Control Front/Step 2 F/Level 4/blower, стремящийся к AUTO' + * '' : 'HVAC_model/Start control/Start Control Front/Step 2 F/Level 4/incar filter down' + * '' : 'HVAC_model/Start control/Start Control Front/Step 2 F/Level 4/incar filter up' + * '' : 'HVAC_model/Start control/Start Control Front/Step 2 F/Level 4/mode, стремящийся к AUTO' + * '' : 'HVAC_model/Start control/Start Control Front/Step 2 F/Level 4/window heating' + * '' : 'HVAC_model/Start control/Start Control Front/Step 2 F/Level 4/DTG F Lower, стремящийся к AUTO/Almost equal' + * '' : 'HVAC_model/Start control/Start Control Front/Step 2 F/Level 4/DTG F Lower, стремящийся к AUTO/Calculate delta time' + * '' : 'HVAC_model/Start control/Start Control Front/Step 2 F/Level 4/DTG F Lower, стремящийся к AUTO/step' + * '' : 'HVAC_model/Start control/Start Control Front/Step 2 F/Level 4/DTG F Lower, стремящийся к AUTO/time for step' + * '' : 'HVAC_model/Start control/Start Control Front/Step 2 F/Level 4/DTG F Lower, стремящийся к AUTO/знак для изменения (+//-)' + * '' : 'HVAC_model/Start control/Start Control Front/Step 2 F/Level 4/DTG F Upper, стремящийся к AUTO/Almost equal' + * '' : 'HVAC_model/Start control/Start Control Front/Step 2 F/Level 4/DTG F Upper, стремящийся к AUTO/Calculate delta time' + * '' : 'HVAC_model/Start control/Start Control Front/Step 2 F/Level 4/DTG F Upper, стремящийся к AUTO/step' + * '' : 'HVAC_model/Start control/Start Control Front/Step 2 F/Level 4/DTG F Upper, стремящийся к AUTO/time for step' + * '' : 'HVAC_model/Start control/Start Control Front/Step 2 F/Level 4/DTG F Upper, стремящийся к AUTO/знак для изменения (+//-)' + * '' : 'HVAC_model/Start control/Start Control Front/Step 2 F/Level 4/blower, стремящийся к AUTO/Almost equal' + * '' : 'HVAC_model/Start control/Start Control Front/Step 2 F/Level 4/blower, стремящийся к AUTO/Calculate delta time' + * '' : 'HVAC_model/Start control/Start Control Front/Step 2 F/Level 4/blower, стремящийся к AUTO/blower step' + * '' : 'HVAC_model/Start control/Start Control Front/Step 2 F/Level 4/blower, стремящийся к AUTO/blower time for step' + * '' : 'HVAC_model/Start control/Start Control Front/Step 2 F/Level 4/blower, стремящийся к AUTO/знак для изменения (+//-)' + * '' : 'HVAC_model/Start control/Start Control Front/Step 2 F/Level 4/mode, стремящийся к AUTO/Almost equal' + * '' : 'HVAC_model/Start control/Start Control Front/Step 2 F/Level 4/mode, стремящийся к AUTO/Calculate delta time' + * '' : 'HVAC_model/Start control/Start Control Front/Step 2 F/Level 4/mode, стремящийся к AUTO/step' + * '' : 'HVAC_model/Start control/Start Control Front/Step 2 F/Level 4/mode, стремящийся к AUTO/time for step' + * '' : 'HVAC_model/Start control/Start Control Front/Step 2 F/Level 4/mode, стремящийся к AUTO/знак для изменения (+//-)' + * '' : 'HVAC_model/Start control/Start Control Front/Step 2 F/Level 5/3 way valve status' + * '' : 'HVAC_model/Start control/Start Control Front/Step 2 F/Level 5/DTG F Lower, стремящийся к AUTO' + * '' : 'HVAC_model/Start control/Start Control Front/Step 2 F/Level 5/DTG F Upper, стремящийся к AUTO' + * '' : 'HVAC_model/Start control/Start Control Front/Step 2 F/Level 5/RealTime_Timer' + * '' : 'HVAC_model/Start control/Start Control Front/Step 2 F/Level 5/Time goto from step 2 to step 3 ' + * '' : 'HVAC_model/Start control/Start Control Front/Step 2 F/Level 5/autodemist (autodefog)' + * '' : 'HVAC_model/Start control/Start Control Front/Step 2 F/Level 5/blower, стремящийся к AUTO' + * '' : 'HVAC_model/Start control/Start Control Front/Step 2 F/Level 5/incar filter down' + * '' : 'HVAC_model/Start control/Start Control Front/Step 2 F/Level 5/incar filter up' + * '' : 'HVAC_model/Start control/Start Control Front/Step 2 F/Level 5/mode, стремящийся к AUTO' + * '' : 'HVAC_model/Start control/Start Control Front/Step 2 F/Level 5/window heating' + * '' : 'HVAC_model/Start control/Start Control Front/Step 2 F/Level 5/DTG F Lower, стремящийся к AUTO/Almost equal' + * '' : 'HVAC_model/Start control/Start Control Front/Step 2 F/Level 5/DTG F Lower, стремящийся к AUTO/Calculate delta time' + * '' : 'HVAC_model/Start control/Start Control Front/Step 2 F/Level 5/DTG F Lower, стремящийся к AUTO/step' + * '' : 'HVAC_model/Start control/Start Control Front/Step 2 F/Level 5/DTG F Lower, стремящийся к AUTO/time for step' + * '' : 'HVAC_model/Start control/Start Control Front/Step 2 F/Level 5/DTG F Lower, стремящийся к AUTO/знак для изменения (+//-)' + * '' : 'HVAC_model/Start control/Start Control Front/Step 2 F/Level 5/DTG F Upper, стремящийся к AUTO/Almost equal' + * '' : 'HVAC_model/Start control/Start Control Front/Step 2 F/Level 5/DTG F Upper, стремящийся к AUTO/Calculate delta time' + * '' : 'HVAC_model/Start control/Start Control Front/Step 2 F/Level 5/DTG F Upper, стремящийся к AUTO/step' + * '' : 'HVAC_model/Start control/Start Control Front/Step 2 F/Level 5/DTG F Upper, стремящийся к AUTO/time for step' + * '' : 'HVAC_model/Start control/Start Control Front/Step 2 F/Level 5/DTG F Upper, стремящийся к AUTO/знак для изменения (+//-)' + * '' : 'HVAC_model/Start control/Start Control Front/Step 2 F/Level 5/blower, стремящийся к AUTO/Almost equal' + * '' : 'HVAC_model/Start control/Start Control Front/Step 2 F/Level 5/blower, стремящийся к AUTO/Calculate delta time' + * '' : 'HVAC_model/Start control/Start Control Front/Step 2 F/Level 5/blower, стремящийся к AUTO/blower step' + * '' : 'HVAC_model/Start control/Start Control Front/Step 2 F/Level 5/blower, стремящийся к AUTO/blower time for step' + * '' : 'HVAC_model/Start control/Start Control Front/Step 2 F/Level 5/blower, стремящийся к AUTO/знак для изменения (+//-)' + * '' : 'HVAC_model/Start control/Start Control Front/Step 2 F/Level 5/mode, стремящийся к AUTO/Almost equal' + * '' : 'HVAC_model/Start control/Start Control Front/Step 2 F/Level 5/mode, стремящийся к AUTO/Calculate delta time' + * '' : 'HVAC_model/Start control/Start Control Front/Step 2 F/Level 5/mode, стремящийся к AUTO/step' + * '' : 'HVAC_model/Start control/Start Control Front/Step 2 F/Level 5/mode, стремящийся к AUTO/time for step' + * '' : 'HVAC_model/Start control/Start Control Front/Step 2 F/Level 5/mode, стремящийся к AUTO/знак для изменения (+//-)' + * '' : 'HVAC_model/Start control/Start Control Rear/Step -1 R (Entry Condition)' + * '' : 'HVAC_model/Start control/Start Control Rear/Step 0 R' + * '' : 'HVAC_model/Start control/Start Control Rear/Step 1 R' + * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 R' + * '' : 'HVAC_model/Start control/Start Control Rear/Step 3 R' + * '' : 'HVAC_model/Start control/Start Control Rear/Step -1 R (Entry Condition)/Level 0' + * '' : 'HVAC_model/Start control/Start Control Rear/Step -1 R (Entry Condition)/Level 1' + * '' : 'HVAC_model/Start control/Start Control Rear/Step -1 R (Entry Condition)/Level 2' + * '' : 'HVAC_model/Start control/Start Control Rear/Step -1 R (Entry Condition)/Level 3' + * '' : 'HVAC_model/Start control/Start Control Rear/Step -1 R (Entry Condition)/Level 4' + * '' : 'HVAC_model/Start control/Start Control Rear/Step -1 R (Entry Condition)/Level 5' + * '' : 'HVAC_model/Start control/Start Control Rear/Step -1 R (Entry Condition)/Level 0/g_assSTART_ENTER_INCAR' + * '' : 'HVAC_model/Start control/Start Control Rear/Step -1 R (Entry Condition)/Level 0/g_ausSTART_ENTER_SETTEMP' + * '' : 'HVAC_model/Start control/Start Control Rear/Step -1 R (Entry Condition)/Level 1/g_assSTART_ENTER_INCAR' + * '' : 'HVAC_model/Start control/Start Control Rear/Step -1 R (Entry Condition)/Level 1/g_ausSTART_ENTER_SETTEMP' + * '' : 'HVAC_model/Start control/Start Control Rear/Step -1 R (Entry Condition)/Level 2/g_assSTART_ENTER_INCAR' + * '' : 'HVAC_model/Start control/Start Control Rear/Step -1 R (Entry Condition)/Level 2/g_ausSTART_ENTER_SETTEMP' + * '' : 'HVAC_model/Start control/Start Control Rear/Step -1 R (Entry Condition)/Level 3/g_assSTART_ENTER_COOLANT ' + * '' : 'HVAC_model/Start control/Start Control Rear/Step -1 R (Entry Condition)/Level 3/g_assSTART_ENTER_INCAR' + * '' : 'HVAC_model/Start control/Start Control Rear/Step -1 R (Entry Condition)/Level 3/g_ausSTART_ENTER_SETTEMP' + * '' : 'HVAC_model/Start control/Start Control Rear/Step -1 R (Entry Condition)/Level 4/g_assSTART_ENTER_COOLANT ' + * '' : 'HVAC_model/Start control/Start Control Rear/Step -1 R (Entry Condition)/Level 4/g_assSTART_ENTER_INCAR' + * '' : 'HVAC_model/Start control/Start Control Rear/Step -1 R (Entry Condition)/Level 5/g_assSTART_ENTER_COOLANT ' + * '' : 'HVAC_model/Start control/Start Control Rear/Step -1 R (Entry Condition)/Level 5/g_assSTART_ENTER_INCAR' + * '' : 'HVAC_model/Start control/Start Control Rear/Step 0 R/Level 0' + * '' : 'HVAC_model/Start control/Start Control Rear/Step 0 R/Level 1' + * '' : 'HVAC_model/Start control/Start Control Rear/Step 0 R/Level 2' + * '' : 'HVAC_model/Start control/Start Control Rear/Step 0 R/Level 3' + * '' : 'HVAC_model/Start control/Start Control Rear/Step 0 R/Level 4' + * '' : 'HVAC_model/Start control/Start Control Rear/Step 0 R/Level 5' + * '' : 'HVAC_model/Start control/Start Control Rear/Step 0 R/Level 2/g_assSTART_COOLANT_STEP0_TO_1 ' + * '' : 'HVAC_model/Start control/Start Control Rear/Step 0 R/Level 2/incar filter down' + * '' : 'HVAC_model/Start control/Start Control Rear/Step 0 R/Level 2/incar filter up' + * '' : 'HVAC_model/Start control/Start Control Rear/Step 0 R/Level 3/g_assSTART_COOLANT_STEP0_TO_1 ' + * '' : 'HVAC_model/Start control/Start Control Rear/Step 0 R/Level 3/incar filter down' + * '' : 'HVAC_model/Start control/Start Control Rear/Step 0 R/Level 3/incar filter up' + * '' : 'HVAC_model/Start control/Start Control Rear/Step 0 R/Level 4/g_assSTART_COOLANT_STEP0_TO_1 ' + * '' : 'HVAC_model/Start control/Start Control Rear/Step 0 R/Level 4/incar filter down' + * '' : 'HVAC_model/Start control/Start Control Rear/Step 0 R/Level 4/incar filter up' + * '' : 'HVAC_model/Start control/Start Control Rear/Step 0 R/Level 5/g_assSTART_COOLANT_STEP0_TO_1 ' + * '' : 'HVAC_model/Start control/Start Control Rear/Step 0 R/Level 5/incar filter down' + * '' : 'HVAC_model/Start control/Start Control Rear/Step 0 R/Level 5/incar filter up' + * '' : 'HVAC_model/Start control/Start Control Rear/Step 1 R/Level 0' + * '' : 'HVAC_model/Start control/Start Control Rear/Step 1 R/Level 1' + * '' : 'HVAC_model/Start control/Start Control Rear/Step 1 R/Level 2' + * '' : 'HVAC_model/Start control/Start Control Rear/Step 1 R/Level 3' + * '' : 'HVAC_model/Start control/Start Control Rear/Step 1 R/Level 4' + * '' : 'HVAC_model/Start control/Start Control Rear/Step 1 R/Level 5' + * '' : 'HVAC_model/Start control/Start Control Rear/Step 1 R/Level 0/2 way valve' + * '' : 'HVAC_model/Start control/Start Control Rear/Step 1 R/Level 0/Dtg_rear' + * '' : 'HVAC_model/Start control/Start Control Rear/Step 1 R/Level 0/Incar temp goto from step 1 to step 2 ' + * '' : 'HVAC_model/Start control/Start Control Rear/Step 1 R/Level 0/RealTime_Timer' + * '' : 'HVAC_model/Start control/Start Control Rear/Step 1 R/Level 0/Time goto from step 1 to step 2 ' + * '' : 'HVAC_model/Start control/Start Control Rear/Step 1 R/Level 0/blower rear' + * '' : 'HVAC_model/Start control/Start Control Rear/Step 1 R/Level 0/incar filter down' + * '' : 'HVAC_model/Start control/Start Control Rear/Step 1 R/Level 0/incar filter up' + * '' : 'HVAC_model/Start control/Start Control Rear/Step 1 R/Level 0/mode rear step 1' + * '' : 'HVAC_model/Start control/Start Control Rear/Step 1 R/Level 1/2 way valve' + * '' : 'HVAC_model/Start control/Start Control Rear/Step 1 R/Level 1/Dtg_rear' + * '' : 'HVAC_model/Start control/Start Control Rear/Step 1 R/Level 1/Incar temp goto from step 1 to step 2 ' + * '' : 'HVAC_model/Start control/Start Control Rear/Step 1 R/Level 1/RealTime_Timer' + * '' : 'HVAC_model/Start control/Start Control Rear/Step 1 R/Level 1/Time goto from step 1 to step 2 ' + * '' : 'HVAC_model/Start control/Start Control Rear/Step 1 R/Level 1/blower rear' + * '' : 'HVAC_model/Start control/Start Control Rear/Step 1 R/Level 1/incar filter down' + * '' : 'HVAC_model/Start control/Start Control Rear/Step 1 R/Level 1/incar filter up' + * '' : 'HVAC_model/Start control/Start Control Rear/Step 1 R/Level 1/mode rear step 1' + * '' : 'HVAC_model/Start control/Start Control Rear/Step 1 R/Level 2/2 way valve' + * '' : 'HVAC_model/Start control/Start Control Rear/Step 1 R/Level 2/Dtg_rear' + * '' : 'HVAC_model/Start control/Start Control Rear/Step 1 R/Level 2/Incar temp goto from step 1 to step 2 ' + * '' : 'HVAC_model/Start control/Start Control Rear/Step 1 R/Level 2/RealTime_Timer' + * '' : 'HVAC_model/Start control/Start Control Rear/Step 1 R/Level 2/Time goto from step 1 to step 2 ' + * '' : 'HVAC_model/Start control/Start Control Rear/Step 1 R/Level 2/blower в зависимости от ECT' + * '' : 'HVAC_model/Start control/Start Control Rear/Step 1 R/Level 2/g_assSTART_COOLANT_TO_STEP2 ' + * '' : 'HVAC_model/Start control/Start Control Rear/Step 1 R/Level 2/incar filter down' + * '' : 'HVAC_model/Start control/Start Control Rear/Step 1 R/Level 2/incar filter up' + * '' : 'HVAC_model/Start control/Start Control Rear/Step 1 R/Level 2/mode rear step 1' + * '' : 'HVAC_model/Start control/Start Control Rear/Step 1 R/Level 2/blower в зависимости от ECT/ECT min max' + * '' : 'HVAC_model/Start control/Start Control Rear/Step 1 R/Level 2/blower в зависимости от ECT/blower start finish' + * '' : 'HVAC_model/Start control/Start Control Rear/Step 1 R/Level 3/2 way valve' + * '' : 'HVAC_model/Start control/Start Control Rear/Step 1 R/Level 3/Dtg_rear' + * '' : 'HVAC_model/Start control/Start Control Rear/Step 1 R/Level 3/Incar temp goto from step 1 to step 2 ' + * '' : 'HVAC_model/Start control/Start Control Rear/Step 1 R/Level 3/RealTime_Timer' + * '' : 'HVAC_model/Start control/Start Control Rear/Step 1 R/Level 3/Time goto from step 1 to step 2 ' + * '' : 'HVAC_model/Start control/Start Control Rear/Step 1 R/Level 3/blower в зависимости от ECT' + * '' : 'HVAC_model/Start control/Start Control Rear/Step 1 R/Level 3/g_assSTART_COOLANT_TO_STEP2 ' + * '' : 'HVAC_model/Start control/Start Control Rear/Step 1 R/Level 3/incar filter down' + * '' : 'HVAC_model/Start control/Start Control Rear/Step 1 R/Level 3/incar filter up' + * '' : 'HVAC_model/Start control/Start Control Rear/Step 1 R/Level 3/mode rear step 1' + * '' : 'HVAC_model/Start control/Start Control Rear/Step 1 R/Level 3/blower в зависимости от ECT/ECT min max' + * '' : 'HVAC_model/Start control/Start Control Rear/Step 1 R/Level 3/blower в зависимости от ECT/blower start finish' + * '' : 'HVAC_model/Start control/Start Control Rear/Step 1 R/Level 4/2 way valve' + * '' : 'HVAC_model/Start control/Start Control Rear/Step 1 R/Level 4/Dtg_rear' + * '' : 'HVAC_model/Start control/Start Control Rear/Step 1 R/Level 4/Incar temp goto from step 1 to step 2 ' + * '' : 'HVAC_model/Start control/Start Control Rear/Step 1 R/Level 4/RealTime_Timer' + * '' : 'HVAC_model/Start control/Start Control Rear/Step 1 R/Level 4/Time goto from step 1 to step 2 ' + * '' : 'HVAC_model/Start control/Start Control Rear/Step 1 R/Level 4/blower в зависимости от ECT' + * '' : 'HVAC_model/Start control/Start Control Rear/Step 1 R/Level 4/incar filter down' + * '' : 'HVAC_model/Start control/Start Control Rear/Step 1 R/Level 4/incar filter up' + * '' : 'HVAC_model/Start control/Start Control Rear/Step 1 R/Level 4/mode rear step 1' + * '' : 'HVAC_model/Start control/Start Control Rear/Step 1 R/Level 4/blower в зависимости от ECT/ECT min max' + * '' : 'HVAC_model/Start control/Start Control Rear/Step 1 R/Level 4/blower в зависимости от ECT/blower start finish' + * '' : 'HVAC_model/Start control/Start Control Rear/Step 1 R/Level 5/2 way valve' + * '' : 'HVAC_model/Start control/Start Control Rear/Step 1 R/Level 5/Dtg_rear' + * '' : 'HVAC_model/Start control/Start Control Rear/Step 1 R/Level 5/Incar temp goto from step 1 to step 2 ' + * '' : 'HVAC_model/Start control/Start Control Rear/Step 1 R/Level 5/RealTime_Timer' + * '' : 'HVAC_model/Start control/Start Control Rear/Step 1 R/Level 5/Time goto from step 1 to step 2 ' + * '' : 'HVAC_model/Start control/Start Control Rear/Step 1 R/Level 5/blower в зависимости от ECT' + * '' : 'HVAC_model/Start control/Start Control Rear/Step 1 R/Level 5/incar filter down' + * '' : 'HVAC_model/Start control/Start Control Rear/Step 1 R/Level 5/incar filter up' + * '' : 'HVAC_model/Start control/Start Control Rear/Step 1 R/Level 5/mode rear step 1' + * '' : 'HVAC_model/Start control/Start Control Rear/Step 1 R/Level 5/blower в зависимости от ECT/ECT min max' + * '' : 'HVAC_model/Start control/Start Control Rear/Step 1 R/Level 5/blower в зависимости от ECT/blower start finish' + * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 R/Level 0' + * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 R/Level 1' + * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 R/Level 2' + * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 R/Level 3' + * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 R/Level 4' + * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 R/Level 5' + * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 R/Level 0/2 way valve' + * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 R/Level 0/DTG Rear, стремящийся к AUTO' + * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 R/Level 0/RealTime_Timer' + * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 R/Level 0/Time goto from step 1 to step 2 ' + * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 R/Level 0/blower, стремящийся к AUTO' + * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 R/Level 0/incar filter down' + * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 R/Level 0/incar filter up' + * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 R/Level 0/mode, стремящийся к AUTO' + * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 R/Level 0/DTG Rear, стремящийся к AUTO/Almost equal' + * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 R/Level 0/DTG Rear, стремящийся к AUTO/Calculate delta time' + * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 R/Level 0/DTG Rear, стремящийся к AUTO/step' + * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 R/Level 0/DTG Rear, стремящийся к AUTO/time for step' + * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 R/Level 0/DTG Rear, стремящийся к AUTO/знак для изменения (+//-)' + * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 R/Level 0/blower, стремящийся к AUTO/Almost equal' + * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 R/Level 0/blower, стремящийся к AUTO/Calculate delta time' + * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 R/Level 0/blower, стремящийся к AUTO/blower step' + * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 R/Level 0/blower, стремящийся к AUTO/blower time for step' + * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 R/Level 0/blower, стремящийся к AUTO/знак для изменения (+//-)' + * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 R/Level 0/mode, стремящийся к AUTO/Almost equal' + * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 R/Level 0/mode, стремящийся к AUTO/Calculate delta time' + * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 R/Level 0/mode, стремящийся к AUTO/step' + * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 R/Level 0/mode, стремящийся к AUTO/time for step' + * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 R/Level 0/mode, стремящийся к AUTO/знак для изменения (+//-)' + * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 R/Level 1/2 way valve' + * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 R/Level 1/DTG Rear, стремящийся к AUTO' + * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 R/Level 1/RealTime_Timer' + * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 R/Level 1/Time goto from step 1 to step 2 ' + * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 R/Level 1/blower, стремящийся к AUTO' + * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 R/Level 1/incar filter down' + * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 R/Level 1/incar filter up' + * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 R/Level 1/mode, стремящийся к AUTO' + * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 R/Level 1/DTG Rear, стремящийся к AUTO/Almost equal' + * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 R/Level 1/DTG Rear, стремящийся к AUTO/Calculate delta time' + * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 R/Level 1/DTG Rear, стремящийся к AUTO/step' + * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 R/Level 1/DTG Rear, стремящийся к AUTO/time for step' + * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 R/Level 1/DTG Rear, стремящийся к AUTO/знак для изменения (+//-)' + * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 R/Level 1/blower, стремящийся к AUTO/Almost equal' + * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 R/Level 1/blower, стремящийся к AUTO/Calculate delta time' + * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 R/Level 1/blower, стремящийся к AUTO/blower step' + * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 R/Level 1/blower, стремящийся к AUTO/blower time for step' + * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 R/Level 1/blower, стремящийся к AUTO/знак для изменения (+//-)' + * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 R/Level 1/mode, стремящийся к AUTO/Almost equal' + * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 R/Level 1/mode, стремящийся к AUTO/Calculate delta time' + * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 R/Level 1/mode, стремящийся к AUTO/step' + * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 R/Level 1/mode, стремящийся к AUTO/time for step' + * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 R/Level 1/mode, стремящийся к AUTO/знак для изменения (+//-)' + * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 R/Level 2/2 way valve' + * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 R/Level 2/DTG Rear, стремящийся к AUTO' + * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 R/Level 2/RealTime_Timer' + * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 R/Level 2/Time goto from step 1 to step 2 ' + * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 R/Level 2/blower, стремящийся к AUTO' + * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 R/Level 2/incar filter down' + * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 R/Level 2/incar filter up' + * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 R/Level 2/mode, стремящийся к AUTO' + * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 R/Level 2/DTG Rear, стремящийся к AUTO/Almost equal' + * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 R/Level 2/DTG Rear, стремящийся к AUTO/Calculate delta time' + * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 R/Level 2/DTG Rear, стремящийся к AUTO/step' + * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 R/Level 2/DTG Rear, стремящийся к AUTO/time for step' + * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 R/Level 2/DTG Rear, стремящийся к AUTO/знак для изменения (+//-)' + * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 R/Level 2/blower, стремящийся к AUTO/Almost equal' + * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 R/Level 2/blower, стремящийся к AUTO/Calculate delta time' + * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 R/Level 2/blower, стремящийся к AUTO/blower step' + * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 R/Level 2/blower, стремящийся к AUTO/blower time for step' + * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 R/Level 2/blower, стремящийся к AUTO/знак для изменения (+//-)' + * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 R/Level 2/mode, стремящийся к AUTO/Almost equal' + * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 R/Level 2/mode, стремящийся к AUTO/Calculate delta time' + * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 R/Level 2/mode, стремящийся к AUTO/step' + * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 R/Level 2/mode, стремящийся к AUTO/time for step' + * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 R/Level 2/mode, стремящийся к AUTO/знак для изменения (+//-)' + * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 R/Level 3/2 way valve' + * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 R/Level 3/DTG Rear, стремящийся к AUTO' + * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 R/Level 3/RealTime_Timer' + * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 R/Level 3/Time goto from step 1 to step 2 ' + * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 R/Level 3/blower, стремящийся к AUTO' + * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 R/Level 3/incar filter down' + * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 R/Level 3/incar filter up' + * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 R/Level 3/mode, стремящийся к AUTO' + * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 R/Level 3/DTG Rear, стремящийся к AUTO/Almost equal' + * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 R/Level 3/DTG Rear, стремящийся к AUTO/Calculate delta time' + * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 R/Level 3/DTG Rear, стремящийся к AUTO/step' + * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 R/Level 3/DTG Rear, стремящийся к AUTO/time for step' + * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 R/Level 3/DTG Rear, стремящийся к AUTO/знак для изменения (+//-)' + * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 R/Level 3/blower, стремящийся к AUTO/Almost equal' + * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 R/Level 3/blower, стремящийся к AUTO/Calculate delta time' + * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 R/Level 3/blower, стремящийся к AUTO/blower step' + * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 R/Level 3/blower, стремящийся к AUTO/blower time for step' + * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 R/Level 3/blower, стремящийся к AUTO/знак для изменения (+//-)' + * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 R/Level 3/mode, стремящийся к AUTO/Almost equal' + * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 R/Level 3/mode, стремящийся к AUTO/Calculate delta time' + * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 R/Level 3/mode, стремящийся к AUTO/step' + * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 R/Level 3/mode, стремящийся к AUTO/time for step' + * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 R/Level 3/mode, стремящийся к AUTO/знак для изменения (+//-)' + * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 R/Level 4/2 way valve' + * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 R/Level 4/DTG Rear, стремящийся к AUTO' + * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 R/Level 4/RealTime_Timer' + * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 R/Level 4/Time goto from step 1 to step 2 ' + * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 R/Level 4/blower, стремящийся к AUTO' + * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 R/Level 4/incar filter down' + * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 R/Level 4/incar filter up' + * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 R/Level 4/mode, стремящийся к AUTO' + * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 R/Level 4/DTG Rear, стремящийся к AUTO/Almost equal' + * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 R/Level 4/DTG Rear, стремящийся к AUTO/Calculate delta time' + * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 R/Level 4/DTG Rear, стремящийся к AUTO/step' + * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 R/Level 4/DTG Rear, стремящийся к AUTO/time for step' + * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 R/Level 4/DTG Rear, стремящийся к AUTO/знак для изменения (+//-)' + * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 R/Level 4/blower, стремящийся к AUTO/Almost equal' + * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 R/Level 4/blower, стремящийся к AUTO/Calculate delta time' + * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 R/Level 4/blower, стремящийся к AUTO/blower step' + * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 R/Level 4/blower, стремящийся к AUTO/blower time for step' + * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 R/Level 4/blower, стремящийся к AUTO/знак для изменения (+//-)' + * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 R/Level 4/mode, стремящийся к AUTO/Almost equal' + * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 R/Level 4/mode, стремящийся к AUTO/Calculate delta time' + * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 R/Level 4/mode, стремящийся к AUTO/step' + * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 R/Level 4/mode, стремящийся к AUTO/time for step' + * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 R/Level 4/mode, стремящийся к AUTO/знак для изменения (+//-)' + * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 R/Level 5/2 way valve' + * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 R/Level 5/DTG Rear, стремящийся к AUTO' + * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 R/Level 5/RealTime_Timer' + * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 R/Level 5/Time goto from step 1 to step 2 ' + * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 R/Level 5/blower, стремящийся к AUTO' + * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 R/Level 5/incar filter down' + * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 R/Level 5/incar filter up' + * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 R/Level 5/mode, стремящийся к AUTO' + * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 R/Level 5/DTG Rear, стремящийся к AUTO/Almost equal' + * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 R/Level 5/DTG Rear, стремящийся к AUTO/Calculate delta time' + * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 R/Level 5/DTG Rear, стремящийся к AUTO/step' + * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 R/Level 5/DTG Rear, стремящийся к AUTO/time for step' + * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 R/Level 5/DTG Rear, стремящийся к AUTO/знак для изменения (+//-)' + * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 R/Level 5/blower, стремящийся к AUTO/Almost equal' + * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 R/Level 5/blower, стремящийся к AUTO/Calculate delta time' + * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 R/Level 5/blower, стремящийся к AUTO/blower step' + * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 R/Level 5/blower, стремящийся к AUTO/blower time for step' + * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 R/Level 5/blower, стремящийся к AUTO/знак для изменения (+//-)' + * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 R/Level 5/mode, стремящийся к AUTO/Almost equal' + * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 R/Level 5/mode, стремящийся к AUTO/Calculate delta time' + * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 R/Level 5/mode, стремящийся к AUTO/step' + * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 R/Level 5/mode, стремящийся к AUTO/time for step' + * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 R/Level 5/mode, стремящийся к AUTO/знак для изменения (+//-)' + * '' : 'HVAC_model/dbg CAN/ACP (duct sensors) to dbg' + * '' : 'HVAC_model/dbg CAN/actuators to dbg' + * '' : 'HVAC_model/dbg CAN/blower to dbg' + * '' : 'HVAC_model/dbg CAN/sen_eva (evaporator) to dbg' */ #endif /* HVAC_model_h_ */ diff --git a/HVAC_model_data.c b/HVAC_model_data.c index f36b47b..cf90938 100644 --- a/HVAC_model_data.c +++ b/HVAC_model_data.c @@ -3,9 +3,9 @@ * * Code generated for Simulink model 'HVAC_model'. * - * Model version : 1.866 + * Model version : 1.876 * Simulink Coder version : 24.1 (R2024a) 19-Nov-2023 - * C/C++ source code generated on : Tue May 5 14:20:39 2026 + * C/C++ source code generated on : Wed May 6 14:55:30 2026 * * Target selection: ert.tlc * Embedded hardware selection: ARM Compatible->ARM Cortex-M @@ -19,27 +19,27 @@ /* Invariant block signals (default storage) */ const ConstB rtConstB = { - /* Start of '/If Action Subsystem1' */ + /* Start of '/If Action Subsystem1' */ { - { 0U, 0U, 0U, 0U, 0U, 0U, 0U, 0U, 0U }/* '/Data Type Conversion' */ + { 0U, 0U, 0U, 0U, 0U, 0U, 0U, 0U, 0U }/* '/Data Type Conversion' */ } , - /* End of '/If Action Subsystem1' */ + /* End of '/If Action Subsystem1' */ - /* Start of '/If Action Subsystem1' */ + /* Start of '/If Action Subsystem1' */ { - { 0U, 0U, 0U, 0U, 0U, 0U, 0U, 0U, 0U }/* '/Data Type Conversion' */ + { 0U, 0U, 0U, 0U, 0U, 0U, 0U, 0U, 0U }/* '/Data Type Conversion' */ } , - /* End of '/If Action Subsystem1' */ + /* End of '/If Action Subsystem1' */ - /* Start of '/If Action Subsystem1' */ + /* Start of '/If Action Subsystem1' */ { - { 0U, 0U, 0U, 0U, 0U, 0U, 0U, 0U, 0U }/* '/Data Type Conversion' */ + { 0U, 0U, 0U, 0U, 0U, 0U, 0U, 0U, 0U }/* '/Data Type Conversion' */ } - /* End of '/If Action Subsystem1' */ + /* End of '/If Action Subsystem1' */ }; /* Constant parameters (default storage) */ @@ -757,32 +757,35 @@ const ConstP rtConstP = { 4080U, 4084U, 4088U, 4092U }, /* Computed Parameter: ACT1_Value - * Referenced by: '/ACT1' + * Referenced by: '/ACT1' */ - { 1050U, 1250U, 1195U, 1315U, 1300U, 1485U, 1440U, 1195U, 1175U }, + { 1050U, 1250U, 1175U, 1195U, 1315U, 1300U, 1485U, 1440U, 1195U }, /* Computed Parameter: ACT1_Value_d - * Referenced by: '/ACT1' + * Referenced by: '/ACT1' */ - { 1225U, 1320U, 1270U, 1485U, 1480U, 1175U }, + { 1225U, 1320U, 1270U, 1540U, 1480U, 1175U }, /* Computed Parameter: ACT1_Value_o - * Referenced by: '/ACT1' + * Referenced by: '/ACT1' */ - { 3075U, 3075U, 1605U, 1840U, 1650U, 1635U, 1820U, 1605U }, + { 3075U, 3075U, 1605U, 1840U, 1650U, 1635U, 1820U, 1650U }, - /* Computed Parameter: Constant3_Value - * Referenced by: '/Constant3' + /* Pooled Parameter (Expression: [1 2 3 4 5 6 7 8 9]) + * Referenced by: + * '/Constant3' + * '/Constant5' + * '/Constant5' */ { 1U, 2U, 3U, 4U, 5U, 6U, 7U, 8U, 9U }, - /* Computed Parameter: Constant3_Value_i - * Referenced by: '/Constant3' + /* Computed Parameter: Constant3_Value + * Referenced by: '/Constant3' */ { 1U, 2U, 3U, 4U, 5U, 6U }, /* Computed Parameter: Constant3_Value_j - * Referenced by: '/Constant3' + * Referenced by: '/Constant3' */ { 1U, 2U, 3U, 4U, 5U, 6U, 7U, 8U }, diff --git a/HVAC_model_private.h b/HVAC_model_private.h index ff6f710..8c35b3d 100644 --- a/HVAC_model_private.h +++ b/HVAC_model_private.h @@ -3,9 +3,9 @@ * * Code generated for Simulink model 'HVAC_model'. * - * Model version : 1.866 + * Model version : 1.876 * Simulink Coder version : 24.1 (R2024a) 19-Nov-2023 - * C/C++ source code generated on : Tue May 5 14:20:39 2026 + * C/C++ source code generated on : Wed May 6 14:55:30 2026 * * Target selection: ert.tlc * Embedded hardware selection: ARM Compatible->ARM Cortex-M @@ -111,15 +111,15 @@ extern void Afoot_Summer(int16_t rtu_Amb_Fb, uint8_t rtu_LVL, uint16_t rty_Out1 extern void left(uint8_t rtu_idx, uint16_t rty_vals[9]); extern void IfActionSubsystem(int8_t *rty_Out1, double *rtd_ErrorHomming_private, double *rtd_Start_timer_i, int8_t *rtd_stepSig_private); -extern void IfActionSubsystem1(int8_t *rty_Out1, double *rtd_Start_timer_i); extern void MATLABFunction_Init(DW_MATLABFunction *localDW); extern void MATLABFunction(double rtu_cond, uint32_t rtu_t_now, uint32_t *rty_dt, DW_MATLABFunction *localDW); -extern void IfActionSubsystem1_d(int8_t *rty_Output, uint8_t +extern void IfActionSubsystem1(int8_t *rty_Output, uint8_t *rtd_CCU_ActuatorErrF_Stat_private, uint8_t rtd_COM_private[9], uint8_t rtd_ErrorActuator[9], uint8_t rtd_ErrorCalibration_private[9], const double *rtd_LOGGER_LIN, uint8_t rtd_MODE_private[9], uint8_t rtd_dtc_state_error_model[127]); +extern void IfActionSubsystem1_l(int8_t *rty_Out1, double *rtd_Start_timer_l); extern void AFforBiLevel(uint8_t rtu_blower_speed, uint16_t *rty_out); extern void AFforDef(uint8_t rtu_blower_speed, uint16_t *rty_out); extern void AFforFoorDef(uint8_t rtu_blower_speed, uint16_t *rty_out); @@ -130,6 +130,16 @@ extern void AFforVentmode(uint8_t rtu_blower_speed, uint16_t *rty_out); extern void AFforBiLevelR(uint8_t rtu_blower_speed, uint16_t *rty_out); extern void AFforFootR(uint8_t rtu_blower_speed, uint16_t *rty_out); extern void AFforVentmodeR(uint8_t rtu_blower_speed, uint16_t *rty_out); +extern void ValvesforBiLevel(uint8_t rtu_blower_speed, uint16_t *rty_out); +extern void ValvesforDef(uint8_t rtu_blower_speed, uint16_t *rty_out); +extern void ValvesforFoot(uint8_t rtu_blower_speed, uint16_t *rty_out); +extern void ValvesforFootDef(uint8_t rtu_blower_speed, uint16_t *rty_out); +extern void ValvesforHi_Level(uint8_t rtu_blower_speed, uint16_t *rty_out); +extern void ValvesforTriLevel(uint8_t rtu_blower_speed, uint16_t *rty_out); +extern void ValvesforVentmode(uint8_t rtu_blower_speed, uint16_t *rty_out); +extern void AFforBiLevel_m(uint8_t rtu_blower_speed, uint16_t *rty_out); +extern void AFforFoot_p(uint8_t rtu_blower_speed, uint16_t *rty_out); +extern void valvesforVentmode(uint8_t rtu_blower_speed, uint16_t *rty_out); extern void g_assSTART_ENTER_INCAR_j(uint8_t rtu_LVL, int16_t *rty_out); extern void g_assSTART_ENTER_COOLANT_p(uint8_t rtu_LVL, int16_t *rty_out); extern void Level4(int8_t *rty_step1, const uint16_t *rtd_ECT, const uint8_t diff --git a/HVAC_model_types.h b/HVAC_model_types.h index bd54ec4..2d35d8b 100644 --- a/HVAC_model_types.h +++ b/HVAC_model_types.h @@ -3,9 +3,9 @@ * * Code generated for Simulink model 'HVAC_model'. * - * Model version : 1.866 + * Model version : 1.876 * Simulink Coder version : 24.1 (R2024a) 19-Nov-2023 - * C/C++ source code generated on : Tue May 5 14:20:39 2026 + * C/C++ source code generated on : Wed May 6 14:55:30 2026 * * Target selection: ert.tlc * Embedded hardware selection: ARM Compatible->ARM Cortex-M @@ -252,6 +252,24 @@ typedef struct { #endif +#ifndef DEFINED_TYPEDEF_FOR_dbgCAN_dbg_Logic_Blower_Bus_ +#define DEFINED_TYPEDEF_FOR_dbgCAN_dbg_Logic_Blower_Bus_ + +typedef struct { + uint8_t Logic_Blower_Step_FL; + uint8_t Logic_Blower_Step_FR; + uint8_t Logic_Blower_Step_RL; + uint8_t Logic_Blower_Step_RR; + uint8_t Logic_Blower_Pwm_Front; + uint8_t Logic_Blower_Pwm_Rear; + uint8_t Logic_Blower_AF_FL; + uint8_t Logic_Blower_AF_FR; + uint8_t Logic_Blower_AF_RL; + uint8_t Logic_Blower_AF_RR; +} dbgCAN_dbg_Logic_Blower_Bus; + +#endif + #ifndef DEFINED_TYPEDEF_FOR_dbgCAN_dbg_Act0_Bus_ #define DEFINED_TYPEDEF_FOR_dbgCAN_dbg_Act0_Bus_