diff --git a/HVAC_model.c b/HVAC_model.c index 48e93f8..a5237bd 100644 --- a/HVAC_model.c +++ b/HVAC_model.c @@ -3,9 +3,9 @@ * * Code generated for Simulink model 'HVAC_model'. * - * Model version : 1.760 + * Model version : 1.784 * Simulink Coder version : 24.1 (R2024a) 19-Nov-2023 - * C/C++ source code generated on : Fri Apr 3 18:15:49 2026 + * C/C++ source code generated on : Tue Apr 14 14:42:16 2026 * * Target selection: ert.tlc * Embedded hardware selection: ARM Compatible->ARM Cortex-M @@ -20,18 +20,67 @@ #include #include "HVAC_model_private.h" #include +#include #include "HVAC_model_types.h" #include "Rs_Cal_Base.h" /* Named constants for Test Sequence: '/Test Sequence' */ #define IN_step_1 ((uint8_t)1U) -#define IN_step_2 ((uint8_t)2U) -#define IN_step_3 ((uint8_t)3U) +#define IN_step_10 ((uint8_t)2U) +#define IN_step_11 ((uint8_t)3U) +#define IN_step_12 ((uint8_t)4U) +#define IN_step_13 ((uint8_t)5U) +#define IN_step_14 ((uint8_t)6U) +#define IN_step_15 ((uint8_t)7U) +#define IN_step_16 ((uint8_t)8U) +#define IN_step_17 ((uint8_t)9U) +#define IN_step_18 ((uint8_t)10U) +#define IN_step_19 ((uint8_t)11U) +#define IN_step_2 ((uint8_t)12U) +#define IN_step_20 ((uint8_t)13U) +#define IN_step_21 ((uint8_t)14U) +#define IN_step_22 ((uint8_t)15U) +#define IN_step_23 ((uint8_t)16U) +#define IN_step_24 ((uint8_t)17U) +#define IN_step_25 ((uint8_t)18U) +#define IN_step_26 ((uint8_t)19U) +#define IN_step_27 ((uint8_t)20U) +#define IN_step_28 ((uint8_t)21U) +#define IN_step_29 ((uint8_t)22U) +#define IN_step_3 ((uint8_t)23U) +#define IN_step_30 ((uint8_t)24U) +#define IN_step_31 ((uint8_t)25U) +#define IN_step_32 ((uint8_t)26U) +#define IN_step_33 ((uint8_t)27U) +#define IN_step_34 ((uint8_t)28U) +#define IN_step_35 ((uint8_t)29U) +#define IN_step_36 ((uint8_t)30U) +#define IN_step_37 ((uint8_t)31U) +#define IN_step_38 ((uint8_t)32U) +#define IN_step_39 ((uint8_t)33U) +#define IN_step_4 ((uint8_t)34U) +#define IN_step_40 ((uint8_t)35U) +#define IN_step_41 ((uint8_t)36U) +#define IN_step_42 ((uint8_t)37U) +#define IN_step_43 ((uint8_t)38U) +#define IN_step_44 ((uint8_t)39U) +#define IN_step_45 ((uint8_t)40U) +#define IN_step_46 ((uint8_t)41U) +#define IN_step_47 ((uint8_t)42U) +#define IN_step_48 ((uint8_t)43U) +#define IN_step_49 ((uint8_t)44U) +#define IN_step_5 ((uint8_t)45U) +#define IN_step_50 ((uint8_t)46U) +#define IN_step_6 ((uint8_t)47U) +#define IN_step_7 ((uint8_t)48U) +#define IN_step_8 ((uint8_t)49U) +#define IN_step_9 ((uint8_t)50U) /* Exported block states */ +ActuatorCmdBusInput Actuator_Ch1_Status_Model;/* '/Data Store Memory62' */ +ActuatorCmdBusInput Actuator_Ch2_Status_Model;/* '/Data Store Memory63' */ +ActuatorCmdBusInput Actuator_Ch0_Status_Model;/* '/Data Store Memory61' */ 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 Memory1' */ @@ -48,6 +97,34 @@ ExtY rtY; /* Real-time model */ static RT_MODEL rtM_; RT_MODEL *const rtM = &rtM_; + +/* Forward declaration for local functions */ +static void step_9(void); +static void step_1(void); +static void step_10(void); +static void step_11(void); +static void step_12(void); +static void step_13(void); +static void step_14(void); +static void step_15(void); +static void step_16(void); +static void step_17(void); +static void step_18(void); +static void step_19(void); +static void step_2(void); +static void step_20(void); +static void step_21(void); +static void step_26(void); +static void step_27(void); +static void step_28(void); +static void step_29(void); +static void step_3(void); +static void step_30(void); +static void step_4(void); +static void step_5(void); +static void step_6(void); +static void step_7(void); +static void step_8(void); uint16_t look1_iu16bs16lu64n32_binlcse(uint16_t u0, const int16_t bp0[], const uint16_t table[], uint32_t maxIndex) { @@ -527,7 +604,7 @@ void Bilevel(int16_t rtu_Amb_Fb, uint8_t rtu_LVL, uint16_t rty_Out1[9], uint8_t { int32_t tmp; int32_t tmp_0; - int16_t rtb_u_eg; + int16_t rtb_u_fou; uint16_t rtb_FLF_NEW; uint16_t rtb_FRF_NEW; uint16_t rtb_Switch2_a_idx_0; @@ -545,7 +622,7 @@ void Bilevel(int16_t rtu_Amb_Fb, uint8_t rtu_LVL, uint16_t rty_Out1[9], uint8_t /* MATLAB Function: '/get_tg_FLL_for_LVL' */ /* : c_g_assFLOW_BI_TEMP_TGT = g_assFLOW_BI_TEMP_TGT(LVL + 1); */ - get_tg_FLL_for_LVL(rtu_LVL, rtu_setTempFL, &rtb_u_eg); + get_tg_FLL_for_LVL(rtu_LVL, rtu_setTempFL, &rtb_u_fou); /* MATLAB Function: '/g_assFLOW_BI2_TEMP_TGT_LEFT' */ tmp_0 = (int32_t)(rtu_LVL + 1U); @@ -556,10 +633,10 @@ void Bilevel(int16_t rtu_Amb_Fb, uint8_t rtu_LVL, uint16_t rty_Out1[9], uint8_t /* Sum: '/ 1' incorporates: * MATLAB Function: '/g_assFLOW_BI2_TEMP_TGT_LEFT' */ - rtb_u_eg = (int16_t)(g_assFLOW_BI_TEMP_TGT[tmp_0 - 1] - rtb_u_eg); + rtb_u_fou = (int16_t)(g_assFLOW_BI_TEMP_TGT[tmp_0 - 1] - rtb_u_fou); /* Gain: '/Gain6' */ - tmp_0 = 13107 * rtb_u_eg; + tmp_0 = 13107 * rtb_u_fou; rtb_X = (int8_t)(((((uint32_t)tmp_0 & 65536U) != 0U) && ((((uint32_t)tmp_0 & 65535U) != 0U) || (tmp_0 > 0))) + (tmp_0 >> 17)); @@ -618,7 +695,7 @@ void Bilevel(int16_t rtu_Amb_Fb, uint8_t rtu_LVL, uint16_t rty_Out1[9], uint8_t /* MATLAB Function: '/get_tg_FLL_for_LVL' */ /* : c_g_assFLOW_BI_TEMP_TGT = g_assFLOW_BI_TEMP_TGT(LVL + 1 + 6); */ - get_tg_FLL_for_LVL_j(rtu_LVL, rtu_setTempFR, &rtb_u_eg); + get_tg_FLL_for_LVL_j(rtu_LVL, rtu_setTempFR, &rtb_u_fou); /* MATLAB Function: '/g_assFLOW_BI_TEMP_TGT_RIGHT' incorporates: * MATLAB Function: '/g_assFLOW_BI2_TEMP_TGT_LEFT' @@ -636,10 +713,10 @@ void Bilevel(int16_t rtu_Amb_Fb, uint8_t rtu_LVL, uint16_t rty_Out1[9], uint8_t /* Sum: '/ 1' incorporates: * MATLAB Function: '/g_assFLOW_BI_TEMP_TGT_RIGHT' */ - rtb_u_eg = (int16_t)(g_assFLOW_BI_TEMP_TGT[tmp - 1] - rtb_u_eg); + rtb_u_fou = (int16_t)(g_assFLOW_BI_TEMP_TGT[tmp - 1] - rtb_u_fou); /* Gain: '/Gain6' */ - tmp_0 = 13107 * rtb_u_eg; + tmp_0 = 13107 * rtb_u_fou; rtb_X = (int8_t)(((((uint32_t)tmp_0 & 65536U) != 0U) && ((((uint32_t)tmp_0 & 65535U) != 0U) || (tmp_0 > 0))) + (tmp_0 >> 17)); @@ -713,7 +790,7 @@ void Bilevel(int16_t rtu_Amb_Fb, uint8_t rtu_LVL, uint16_t rty_Out1[9], uint8_t /* MATLAB Function: '/g_assFLOW_BI_AMB_TGT' */ /* : c_g_aucFLOW_BI_VENT_PLUS = g_aucFLOW_BI_VENT_PLUS(LVL + 1); */ - g_assFLOW_BI_AMB_TGT_n(rtu_LVL, &rtb_u_eg); + g_assFLOW_BI_AMB_TGT_n(rtu_LVL, &rtb_u_fou); /* MATLAB Function: '/g_aucFLOW_BI_VENT_PLUS' incorporates: * MATLAB Function: '/g_assFLOW_BI2_TEMP_TGT_LEFT' @@ -726,24 +803,25 @@ void Bilevel(int16_t rtu_Amb_Fb, uint8_t rtu_LVL, uint16_t rty_Out1[9], uint8_t /* Gain: '/Gain2' incorporates: * Sum: '/deg' */ - tmp = (int16_t)(rtb_u_eg - rtu_Amb_Fb) * 13107; + tmp = (int16_t)(rtb_u_fou - rtu_Amb_Fb) * 13107; /* Product: '/Умножили' incorporates: * Gain: '/Gain' * Gain: '/Gain2' * MATLAB Function: '/g_aucFLOW_BI_VENT_PLUS' */ - rtb_u_eg = (int16_t)((int8_t)(((((uint32_t)tmp & 65536U) != 0U) && + rtb_u_fou = (int16_t)((int8_t)(((((uint32_t)tmp & 65536U) != 0U) && ((((uint32_t)tmp & 65535U) != 0U) || (tmp > 0))) + (tmp >> 17)) * (int32_t) - ((g_aucFLOW_BI_VENT_PLUS[tmp_0 - 1] * 205U + 1024U) >> 11)); + ((g_aucFLOW_BI_VENT_PLUS[tmp_0 - 1] * 205U + 1024U) >> + 11)); /* DataTypeConversion: '/Data Type Conversion' incorporates: * Sum: '/ ' * Switch: '/Switch2' */ - rtb_Switch2_a_idx_0 = (uint16_t)((uint16_t)((rty_Out1[0] - rtb_u_eg) >> 1) << + rtb_Switch2_a_idx_0 = (uint16_t)((uint16_t)((rty_Out1[0] - rtb_u_fou) >> 1) << 1); - rtb_Switch2_a_idx_1 = (uint16_t)((uint16_t)((rty_Out1[1] - rtb_u_eg) >> 1) << + rtb_Switch2_a_idx_1 = (uint16_t)((uint16_t)((rty_Out1[1] - rtb_u_fou) >> 1) << 1); /* MATLAB Function: '/g_aucFLOW_BI_VENT_VALVE_MAX' incorporates: @@ -774,7 +852,7 @@ void Bilevel(int16_t rtu_Amb_Fb, uint8_t rtu_LVL, uint16_t rty_Out1[9], uint8_t /* MATLAB Function: '/g_assFLOW_BI_AMB_TGT' */ /* : c_g_aucFLOW_BI_VENT_PLUS = g_aucFLOW_BI_VENT_PLUS(LVL + 1 + 6); */ - g_assFLOW_BI_AMB_TGT_n(rtu_LVL, &rtb_u_eg); + g_assFLOW_BI_AMB_TGT_n(rtu_LVL, &rtb_u_fou); /* MATLAB Function: '/g_aucFLOW_BI_VENT_PLUS' incorporates: * MATLAB Function: '/g_assFLOW_BI2_TEMP_TGT_LEFT' @@ -792,17 +870,17 @@ void Bilevel(int16_t rtu_Amb_Fb, uint8_t rtu_LVL, uint16_t rty_Out1[9], uint8_t /* Gain: '/Gain2' incorporates: * Sum: '/deg' */ - tmp_0 = (int16_t)(rtb_u_eg - rtu_Amb_Fb) * 13107; + tmp_0 = (int16_t)(rtb_u_fou - rtu_Amb_Fb) * 13107; /* Product: '/Умножили' incorporates: * Gain: '/Gain' * Gain: '/Gain2' * MATLAB Function: '/g_aucFLOW_BI_VENT_PLUS' */ - rtb_u_eg = (int16_t)((int8_t)(((((uint32_t)tmp_0 & 65536U) != 0U) && + rtb_u_fou = (int16_t)((int8_t)(((((uint32_t)tmp_0 & 65536U) != 0U) && ((((uint32_t)tmp_0 & 65535U) != 0U) || (tmp_0 > 0))) + (tmp_0 >> 17)) * - (int32_t)((g_aucFLOW_BI_VENT_PLUS[tmp - 1] * 205U + 1024U) - >> 11)); + (int32_t)((g_aucFLOW_BI_VENT_PLUS[tmp - 1] * 205U + + 1024U) >> 11)); /* MATLAB Function: '/g_aucFLOW_BI_VENT_VALVE_MAX' incorporates: * MATLAB Function: '/g_assFLOW_BI2_TEMP_TGT_LEFT' @@ -844,7 +922,7 @@ void Bilevel(int16_t rtu_Amb_Fb, uint8_t rtu_LVL, uint16_t rty_Out1[9], uint8_t * Sum: '/ ' * Switch: '/Switch2' */ - rtb_Switch2_c_0 = (uint16_t)((uint16_t)((rty_Out1[0] - rtb_u_eg) >> 1) << 1); + rtb_Switch2_c_0 = (uint16_t)((uint16_t)((rty_Out1[0] - rtb_u_fou) >> 1) << 1); /* Switch: '/Switch2' incorporates: * RelationalOperator: '/LowerRelop1' @@ -898,7 +976,7 @@ void Bilevel(int16_t rtu_Amb_Fb, uint8_t rtu_LVL, uint16_t rty_Out1[9], uint8_t * Sum: '/ ' * Switch: '/Switch2' */ - rtb_Switch2_c_0 = (uint16_t)((uint16_t)((rty_Out1[1] - rtb_u_eg) >> 1) << 1); + rtb_Switch2_c_0 = (uint16_t)((uint16_t)((rty_Out1[1] - rtb_u_fou) >> 1) << 1); /* Switch: '/Switch2' incorporates: * RelationalOperator: '/LowerRelop1' @@ -1032,7 +1110,7 @@ void Bilevel2(int16_t rtu_Amb_Fb, uint8_t rtu_LVL, uint16_t rty_Out1[9], uint8_t { int32_t tmp; int32_t tmp_0; - int16_t rtb_u_abl; + int16_t rtb_u_cgj; uint16_t rtb_FLF_NEW; uint16_t rtb_FRF_NEW; uint16_t rtb_Switch2_i_idx_0; @@ -1050,7 +1128,7 @@ void Bilevel2(int16_t rtu_Amb_Fb, uint8_t rtu_LVL, uint16_t rty_Out1[9], uint8_t /* MATLAB Function: '/get_tg_FLL_for_LVL' */ /* : c_g_assFLOW_BI2_TEMP_TGT = g_assFLOW_BI2_TEMP_TGT(LVL + 1); */ - get_tg_FLL_for_LVL(rtu_LVL, rtu_setTempFL, &rtb_u_abl); + get_tg_FLL_for_LVL(rtu_LVL, rtu_setTempFL, &rtb_u_cgj); /* MATLAB Function: '/g_assFLOW_BI2_TEMP_TGT_LEFT' */ tmp_0 = (int32_t)(rtu_LVL + 1U); @@ -1061,10 +1139,10 @@ void Bilevel2(int16_t rtu_Amb_Fb, uint8_t rtu_LVL, uint16_t rty_Out1[9], uint8_t /* Sum: '/ 1' incorporates: * MATLAB Function: '/g_assFLOW_BI2_TEMP_TGT_LEFT' */ - rtb_u_abl = (int16_t)(g_assFLOW_BI2_TEMP_TGT[tmp_0 - 1] - rtb_u_abl); + rtb_u_cgj = (int16_t)(g_assFLOW_BI2_TEMP_TGT[tmp_0 - 1] - rtb_u_cgj); /* Gain: '/Gain6' */ - tmp_0 = 13107 * rtb_u_abl; + tmp_0 = 13107 * rtb_u_cgj; rtb_X = (int8_t)(((((uint32_t)tmp_0 & 65536U) != 0U) && ((((uint32_t)tmp_0 & 65535U) != 0U) || (tmp_0 > 0))) + (tmp_0 >> 17)); @@ -1123,7 +1201,7 @@ void Bilevel2(int16_t rtu_Amb_Fb, uint8_t rtu_LVL, uint16_t rty_Out1[9], uint8_t /* MATLAB Function: '/get_tg_FLL_for_LVL' */ /* : c_g_assFLOW_BI2_TEMP_TGT = g_assFLOW_BI2_TEMP_TGT(LVL + 1 + 6); */ - get_tg_FLL_for_LVL_j(rtu_LVL, rtu_setTempFR, &rtb_u_abl); + get_tg_FLL_for_LVL_j(rtu_LVL, rtu_setTempFR, &rtb_u_cgj); /* MATLAB Function: '/g_assFLOW_BI2_TEMP_TGT_RIGHT' incorporates: * MATLAB Function: '/g_assFLOW_BI2_TEMP_TGT_LEFT' @@ -1141,10 +1219,10 @@ void Bilevel2(int16_t rtu_Amb_Fb, uint8_t rtu_LVL, uint16_t rty_Out1[9], uint8_t /* Sum: '/ 1' incorporates: * MATLAB Function: '/g_assFLOW_BI2_TEMP_TGT_RIGHT' */ - rtb_u_abl = (int16_t)(g_assFLOW_BI2_TEMP_TGT[tmp - 1] - rtb_u_abl); + rtb_u_cgj = (int16_t)(g_assFLOW_BI2_TEMP_TGT[tmp - 1] - rtb_u_cgj); /* Gain: '/Gain6' */ - tmp_0 = 13107 * rtb_u_abl; + tmp_0 = 13107 * rtb_u_cgj; rtb_X = (int8_t)(((((uint32_t)tmp_0 & 65536U) != 0U) && ((((uint32_t)tmp_0 & 65535U) != 0U) || (tmp_0 > 0))) + (tmp_0 >> 17)); @@ -1218,7 +1296,7 @@ void Bilevel2(int16_t rtu_Amb_Fb, uint8_t rtu_LVL, uint16_t rty_Out1[9], uint8_t /* MATLAB Function: '/g_assFLOW_BI_AMB_TGT' */ /* : c_g_aucFLOW_BI2_VENT_PLUS = g_aucFLOW_BI2_VENT_PLUS(LVL + 1); */ - g_assFLOW_BI_AMB_TGT_e(rtu_LVL, &rtb_u_abl); + g_assFLOW_BI_AMB_TGT_e(rtu_LVL, &rtb_u_cgj); /* MATLAB Function: '/g_aucFLOW_BI_VENT_PLUS' incorporates: * MATLAB Function: '/g_assFLOW_BI2_TEMP_TGT_LEFT' @@ -1231,14 +1309,14 @@ void Bilevel2(int16_t rtu_Amb_Fb, uint8_t rtu_LVL, uint16_t rty_Out1[9], uint8_t /* Gain: '/Gain2' incorporates: * Sum: '/deg' */ - tmp = (int16_t)(rtb_u_abl - rtu_Amb_Fb) * 13107; + tmp = (int16_t)(rtb_u_cgj - rtu_Amb_Fb) * 13107; /* Product: '/Умножили' incorporates: * Gain: '/Gain' * Gain: '/Gain2' * MATLAB Function: '/g_aucFLOW_BI_VENT_PLUS' */ - rtb_u_abl = (int16_t)((int8_t)(((((uint32_t)tmp & 65536U) != 0U) && + rtb_u_cgj = (int16_t)((int8_t)(((((uint32_t)tmp & 65536U) != 0U) && ((((uint32_t)tmp & 65535U) != 0U) || (tmp > 0))) + (tmp >> 17)) * (int32_t) ((g_aucFLOW_BI2_VENT_PLUS[tmp_0 - 1] * 205U + 1024U) >> 11)); @@ -1247,9 +1325,9 @@ void Bilevel2(int16_t rtu_Amb_Fb, uint8_t rtu_LVL, uint16_t rty_Out1[9], uint8_t * Sum: '/ ' * Switch: '/Switch2' */ - rtb_Switch2_i_idx_0 = (uint16_t)((uint16_t)((rty_Out1[0] - rtb_u_abl) >> 1) << + rtb_Switch2_i_idx_0 = (uint16_t)((uint16_t)((rty_Out1[0] - rtb_u_cgj) >> 1) << 1); - rtb_Switch2_i_idx_1 = (uint16_t)((uint16_t)((rty_Out1[1] - rtb_u_abl) >> 1) << + rtb_Switch2_i_idx_1 = (uint16_t)((uint16_t)((rty_Out1[1] - rtb_u_cgj) >> 1) << 1); /* MATLAB Function: '/g_aucFLOW_BI_VENT_VALVE_MAX' incorporates: @@ -1280,7 +1358,7 @@ void Bilevel2(int16_t rtu_Amb_Fb, uint8_t rtu_LVL, uint16_t rty_Out1[9], uint8_t /* MATLAB Function: '/g_assFLOW_BI_AMB_TGT' */ /* : c_g_aucFLOW_BI2_VENT_PLUS = g_aucFLOW_BI2_VENT_PLUS(LVL + 1 + 6); */ - g_assFLOW_BI_AMB_TGT_e(rtu_LVL, &rtb_u_abl); + g_assFLOW_BI_AMB_TGT_e(rtu_LVL, &rtb_u_cgj); /* MATLAB Function: '/g_aucFLOW_BI_VENT_PLUS' incorporates: * MATLAB Function: '/g_assFLOW_BI2_TEMP_TGT_LEFT' @@ -1298,14 +1376,14 @@ void Bilevel2(int16_t rtu_Amb_Fb, uint8_t rtu_LVL, uint16_t rty_Out1[9], uint8_t /* Gain: '/Gain2' incorporates: * Sum: '/deg' */ - tmp_0 = (int16_t)(rtb_u_abl - rtu_Amb_Fb) * 13107; + tmp_0 = (int16_t)(rtb_u_cgj - rtu_Amb_Fb) * 13107; /* Product: '/Умножили' incorporates: * Gain: '/Gain' * Gain: '/Gain2' * MATLAB Function: '/g_aucFLOW_BI_VENT_PLUS' */ - rtb_u_abl = (int16_t)((int8_t)(((((uint32_t)tmp_0 & 65536U) != 0U) && + rtb_u_cgj = (int16_t)((int8_t)(((((uint32_t)tmp_0 & 65536U) != 0U) && ((((uint32_t)tmp_0 & 65535U) != 0U) || (tmp_0 > 0))) + (tmp_0 >> 17)) * (int32_t)((g_aucFLOW_BI2_VENT_PLUS[tmp - 1] * 205U + 1024U) >> 11)); @@ -1350,7 +1428,7 @@ void Bilevel2(int16_t rtu_Amb_Fb, uint8_t rtu_LVL, uint16_t rty_Out1[9], uint8_t * Sum: '/ ' * Switch: '/Switch2' */ - rtb_Switch2_p_0 = (uint16_t)((uint16_t)((rty_Out1[0] - rtb_u_abl) >> 1) << 1); + rtb_Switch2_p_0 = (uint16_t)((uint16_t)((rty_Out1[0] - rtb_u_cgj) >> 1) << 1); /* Switch: '/Switch2' incorporates: * RelationalOperator: '/LowerRelop1' @@ -1404,7 +1482,7 @@ void Bilevel2(int16_t rtu_Amb_Fb, uint8_t rtu_LVL, uint16_t rty_Out1[9], uint8_t * Sum: '/ ' * Switch: '/Switch2' */ - rtb_Switch2_p_0 = (uint16_t)((uint16_t)((rty_Out1[1] - rtb_u_abl) >> 1) << 1); + rtb_Switch2_p_0 = (uint16_t)((uint16_t)((rty_Out1[1] - rtb_u_cgj) >> 1) << 1); /* Switch: '/Switch2' incorporates: * RelationalOperator: '/LowerRelop1' @@ -2361,58 +2439,12 @@ void left(uint8_t rtu_idx, uint16_t rty_vals[9]) } } -/* - * Output and update for action system: - * '/Stop Mode' - * '/Stop Mode' - */ -void StopMode(int8_t rtu_stepIn, int8_t *rty_step, const uint8_t - *rtd_Busy_private_a, uint8_t rtd_COM_private_h[9], const uint8_t - *rtd_Error_Connect_private_f, uint8_t rtd_MODE_private_a[9]) -{ - int32_t i; - - /* If: '/If1' incorporates: - * DataStoreRead: '/Data Store Read1' - * DataStoreRead: '/Data Store Read2' - */ - if ((*rtd_Busy_private_a == 0) && (*rtd_Error_Connect_private_f == 0)) { - /* Outputs for IfAction SubSystem: '/If Action Subsystem2' incorporates: - * ActionPort: '/Action Port' - */ - for (i = 0; i < 9; i++) { - /* DataStoreWrite: '/Data Store Write' */ - rtd_MODE_private_a[i] = 2U; - - /* DataStoreWrite: '/Data Store Write1' */ - rtd_COM_private_h[i] = 1U; - } - - /* Sum: '/step inc' incorporates: - * Constant: '/Constant' - */ - *rty_step = (int8_t)(rtu_stepIn + 1); - - /* End of Outputs for SubSystem: '/If Action Subsystem2' */ - } else { - /* Outputs for IfAction SubSystem: '/If Action Subsystem3' incorporates: - * ActionPort: '/Action Port' - */ - /* SignalConversion generated from: '/stepIn' */ - *rty_step = rtu_stepIn; - - /* End of Outputs for SubSystem: '/If Action Subsystem3' */ - } - - /* End of If: '/If1' */ -} - /* * Output and update for atomic system: - * '/g_assSTART_ENTER_INCAR' - * '/g_assSTART_ENTER_INCAR' + * '/g_assSTART_ENTER_INCAR' + * '/g_assSTART_ENTER_INCAR' */ -void g_assSTART_ENTER_INCAR_a(uint8_t rtu_LVL, int16_t *rty_out) +void g_assSTART_ENTER_INCAR_j(uint8_t rtu_LVL, int16_t *rty_out) { int32_t tmp; @@ -2426,23 +2458,19 @@ void g_assSTART_ENTER_INCAR_a(uint8_t rtu_LVL, int16_t *rty_out) } /* - * Output and update for action system: - * '/Level 3' - * '/Level 4' - * '/Level 5' + * Output and update for atomic system: + * '/g_assSTART_ENTER_COOLANT ' + * '/g_assSTART_ENTER_COOLANT ' + * '/g_assSTART_ENTER_COOLANT ' */ -void Level3(int8_t *rty_step1, const uint16_t *rtd_ECT, const uint8_t *rtd_LEVEL, - const double *rtd_MODE_DRIVER) +void g_assSTART_ENTER_COOLANT_p(uint8_t rtu_LVL, int16_t *rty_out) { int32_t q0; uint32_t qY; - /* MATLAB Function: '/g_assSTART_ENTER_COOLANT ' incorporates: - * DataStoreRead: '/Data Store Read3' - */ /* : out = int16(g_assSTART_ENTER_COOLANT(LVL + 1 - 3)); */ - q0 = (int32_t)(*rtd_LEVEL + 1U); - if (*rtd_LEVEL + 1U > 255U) { + q0 = (int32_t)(rtu_LVL + 1U); + if (rtu_LVL + 1U > 255U) { q0 = 255; } @@ -2454,55 +2482,71 @@ void Level3(int8_t *rty_step1, const uint16_t *rtd_ECT, const uint8_t *rtd_LEVEL qY = 0U; } - /* Switch: '/Switch' incorporates: - * Constant: '/AUTO' - * Constant: '/Constant' - * Constant: '/Constant1' - * DataStoreRead: '/Data Store Read' - * DataStoreRead: '/Data Store Read1' - * Logic: '/AND' - * MATLAB Function: '/g_assSTART_ENTER_COOLANT ' - * RelationalOperator: '/Relational Operator' - * RelationalOperator: '/Relational Operator2' + *rty_out = g_assSTART_ENTER_COOLANT[(int32_t)qY - 1]; +} + +/* + * Output and update for action system: + * '/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' */ - if ((*rtd_ECT < g_assSTART_ENTER_COOLANT[(int32_t)qY - 1]) && - (*rtd_MODE_DRIVER == 1.0)) { + 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' + */ + if ((*rtd_ECT < rtb_out_p2) && (*rtd_MODE_DRIVER == 1.0)) { *rty_step1 = 0; } else { *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' * ... */ void incarfilterdown(uint8_t rtu_LVL, uint8_t *rty_out) @@ -2520,16 +2564,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' * ... */ void incarfilterup(uint8_t rtu_LVL, uint8_t *rty_out) @@ -2547,10 +2591,10 @@ 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_k(uint8_t rtu_LVL, int16_t *rty_out) +void g_assSTART_COOLANT_STEP0_TO_1_h(uint8_t rtu_LVL, int16_t *rty_out) { int32_t q0; uint32_t qY; @@ -2574,11 +2618,11 @@ void g_assSTART_COOLANT_STEP0_TO_1_k(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) { @@ -2595,9 +2639,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) { @@ -2614,9 +2658,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) { @@ -2633,11 +2677,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) { @@ -2654,8 +2698,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) { @@ -2672,11 +2716,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) { @@ -2693,11 +2737,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) { @@ -2714,10 +2758,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) { @@ -2740,9 +2784,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]) { @@ -2771,9 +2815,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]) { @@ -2793,89 +2837,89 @@ 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(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, - uint8_t *rtd_Dtg_FUR, const uint16_t *rtd_ECT, uint8_t - *rtd_El_window_heating, const int16_t *rtd_Incar_FL, uint8_t - *rtd_Incar_filter_down_value, uint8_t *rtd_Incar_filter_up_value, - const uint8_t *rtd_LEVEL, uint8_t *rtd_Mode_FL, uint8_t *rtd_Mode_FR, - double *rtd_Recirculation, uint8_t *rtd_Valve_3_way, const int8_t - *rtd_step_start_controle_front, const uint32_t *rtd_t_now, DW_Level4 - *localDW) +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, + uint8_t *rtd_Dtg_FUR, const uint16_t *rtd_ECT, uint8_t + *rtd_El_window_heating, const int16_t *rtd_Incar_FL, uint8_t + *rtd_Incar_filter_down_value, uint8_t *rtd_Incar_filter_up_value, + const uint8_t *rtd_LEVEL, uint8_t *rtd_Mode_FL, uint8_t + *rtd_Mode_FR, double *rtd_Recirculation, uint8_t *rtd_Valve_3_way, + const int8_t *rtd_step_start_controle_front, const uint32_t + *rtd_t_now, DW_Level4_n *localDW) { int32_t tmp; - int16_t rtb_out_ns[2]; - int16_t rtb_out_g3; - int16_t rtb_out_hk; - uint16_t rtb_out_gp[2]; - uint8_t rtb_out_oc; - bool rtb_Equal_c; - bool rtb_RelationalOperator1_f; + int16_t rtb_out_jl[2]; + 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_oc); + modeFRstep1(*rtd_LEVEL, &rtb_out_fa); - /* DataStoreWrite: '/Data Store Write2' */ - *rtd_Mode_FR = rtb_out_oc; + /* DataStoreWrite: '/Data Store Write2' */ + *rtd_Mode_FR = rtb_out_fa; - /* DataStoreWrite: '/Data Store Write3' */ - *rtd_Mode_FL = rtb_out_oc; + /* 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_oc); + windowheating(*rtd_LEVEL, &rtb_out_fa); - /* DataStoreWrite: '/Data Store Write4' */ - *rtd_El_window_heating = rtb_out_oc; + /* 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_gp); + 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_ns); + 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_ns, - rtb_out_gp, 1U); + *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); @@ -2883,18 +2927,18 @@ void Level4(int8_t *rty_step, uint16_t *rtd_Blower_FL, uint16_t *rtd_Blower_FR, tmp = 255; } - rtb_out_oc = g_aucSTART_DUCT_TGT_STEP2_FX_U[tmp - 1]; + rtb_out_fa = g_aucSTART_DUCT_TGT_STEP2_FX_U[tmp - 1]; - /* DataStoreWrite: '/Data Store Write10' */ - *rtd_Dtg_FUR = rtb_out_oc; + /* DataStoreWrite: '/Data Store Write10' */ + *rtd_Dtg_FUR = rtb_out_fa; - /* DataStoreWrite: '/Data Store Write11' */ - *rtd_Dtg_FUL = rtb_out_oc; + /* 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); @@ -2902,86 +2946,86 @@ void Level4(int8_t *rty_step, uint16_t *rtd_Blower_FL, uint16_t *rtd_Blower_FR, tmp = 255; } - rtb_out_oc = g_aucSTART_DUCT_TGT_STEP2_FX_L[tmp - 1]; + 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' */ - *rtd_Dtg_FLR = rtb_out_oc; + /* DataStoreWrite: '/Data Store Write12' */ + *rtd_Dtg_FLR = rtb_out_fa; - /* DataStoreWrite: '/Data Store Write13' */ - *rtd_Dtg_FLL = rtb_out_oc; + /* 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_c = (*rtd_step_start_controle_front == 1); + 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_g3); + 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_hk); + 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_f = (*rtd_t_now - - localDW->t_start_delay_private_DSTATE > (uint32_t)(1000 * rtb_out_hk)); + rtb_RelationalOperator1_mub = (*rtd_t_now - + 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_c && (!localDW->Cond_prev_private_DSTATE)) { + 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_g3) || rtb_RelationalOperator1_f) { + 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 ' */ - localDW->Cond_prev_private_DSTATE = rtb_Equal_c; + /* 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_m(uint8_t rtu_LVL, uint8_t *rty_out) +void uwayvalvestatus_a(uint8_t rtu_LVL, uint8_t *rty_out) { int32_t tmp; int32_t tmp_0; @@ -3002,11 +3046,11 @@ void uwayvalvestatus_m(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) { @@ -3029,13 +3073,13 @@ 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_a(uint8_t rtu_LVL, uint8_t *rty_out) +void timeforstep_j(uint8_t rtu_LVL, uint8_t *rty_out) { int32_t tmp; int32_t tmp_0; @@ -3056,11 +3100,11 @@ void timeforstep_a(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) { @@ -3083,11 +3127,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) { @@ -3104,11 +3148,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) { @@ -3131,13 +3175,13 @@ 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_l(uint8_t rtu_LVL, uint8_t *rty_out) +void step_j(uint8_t rtu_LVL, uint8_t *rty_out) { int32_t tmp; @@ -3152,13 +3196,13 @@ void step_l(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_f(uint8_t rtu_LVL, uint8_t *rty_out) +void timeforstep_g(uint8_t rtu_LVL, uint8_t *rty_out) { int32_t tmp; int32_t tmp_0; @@ -3179,10 +3223,10 @@ void timeforstep_f(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) { @@ -3205,9 +3249,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) { @@ -3224,400 +3268,400 @@ 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_d(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, - uint8_t *rtd_Dtg_FLL, uint8_t *rtd_Dtg_FLR, uint8_t *rtd_Dtg_FUL, - uint8_t *rtd_Dtg_FUR, const uint8_t *rtd_Dtg_logic_FLL, const - uint8_t *rtd_Dtg_logic_FUL, uint8_t *rtd_El_window_heating, const - bool *rtd_HI_logic_on, uint8_t *rtd_Incar_filter_down_value, - uint8_t *rtd_Incar_filter_up_value, const uint8_t *rtd_LEVEL, - uint8_t *rtd_Mode_FL, uint8_t *rtd_Mode_FR, const uint8_t - *rtd_Mode_logic_FL, double *rtd_Recirculation, uint8_t - *rtd_Valve_3_way, const int8_t *rtd_step_start_controle_front, - const uint32_t *rtd_t_now, DW_Level3_h *localDW) +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, + uint8_t *rtd_Dtg_FLL, uint8_t *rtd_Dtg_FLR, uint8_t *rtd_Dtg_FUL, + uint8_t *rtd_Dtg_FUR, const uint8_t *rtd_Dtg_logic_FLL, const + uint8_t *rtd_Dtg_logic_FUL, uint8_t *rtd_El_window_heating, const + bool *rtd_HI_logic_on, uint8_t *rtd_Incar_filter_down_value, uint8_t + *rtd_Incar_filter_up_value, const uint8_t *rtd_LEVEL, uint8_t + *rtd_Mode_FL, uint8_t *rtd_Mode_FR, const uint8_t *rtd_Mode_logic_FL, + double *rtd_Recirculation, uint8_t *rtd_Valve_3_way, const int8_t + *rtd_step_start_controle_front, const uint32_t *rtd_t_now, DW_Level3 + *localDW) { int32_t tmp; - int16_t rtb_out_jl; - uint16_t rtb_out_apg; - uint16_t rtb_out_g1; - uint8_t rtb_out_f4; - uint8_t rtb_out_fo; - uint8_t rtb_out_j5; - bool rtb_Cond_prev_private_l2; - bool rtb_RelationalOperator1_f; + int16_t rtb_out_cw; + uint16_t rtb_out_gqg; + 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_m(*rtd_LEVEL, rtd_Valve_3_way); + 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_j5); + 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_fo); + 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_j5 / (double)rtb_out_fo / 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_j5); + 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_a(*rtd_LEVEL, &rtb_out_fo); + 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_j5 / (double)rtb_out_fo / 1000.0 * - (double)(*rtd_t_now - localDW->UnitDelay_DSTATE_e) * (double)tmp + (double)* + *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_j5 = (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_l(*rtd_LEVEL, &rtb_out_fo); + 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_f(*rtd_LEVEL, &rtb_out_f4); + 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_j5 <= 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_fo / (double)rtb_out_f4 / 1000.0 * - (double)(*rtd_t_now - localDW->UnitDelay_DSTATE_h) * (double)tmp + (double)* + *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_j5); + windowheating_k(*rtd_LEVEL, &rtb_out_oq); - /* DataStoreWrite: '/Data Store Write4' */ - *rtd_El_window_heating = rtb_out_j5; + /* 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_g1 = (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_l2 = (rtb_out_g1 <= 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_apg); + 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_g1); + 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_l2) { + 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_apg / (double)rtb_out_g1 / - 1000.0 * (double)(*rtd_t_now - localDW->UnitDelay_DSTATE_o) * (double)tmp + *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' */ - - /* 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' - */ - *rtd_Recirculation = 1.0; - - /* RelationalOperator: '/Equal' incorporates: - * DataStoreRead: '/current step' - */ - rtb_Cond_prev_private_l2 = (*rtd_step_start_controle_front == 1); - - /* MATLAB Function: '/Time goto from step 2 to step 3 ' incorporates: - * DataStoreRead: '/Data Store Read4' - */ - Timegotofromstep2tostep3(*rtd_LEVEL, &rtb_out_jl); - - /* RelationalOperator: '/Relational Operator1' incorporates: - * DataStoreRead: '/Data Store Read4' - * Gain: '/из сек в мс' - * Sum: '/Subtract' - * UnitDelay: '/t_start_delay_private ' - */ - rtb_RelationalOperator1_f = (*rtd_t_now - - localDW->t_start_delay_private_DSTATE > (uint32_t)(1000 * rtb_out_jl)); - - /* 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_l2 && (!localDW->Cond_prev_private_DSTATE)) { - localDW->t_start_delay_private_DSTATE = *rtd_t_now; - } - - /* End of Switch: '/Switch' */ - - /* Switch: '/Switch' incorporates: - * Constant: '/go to next step' - * Constant: '/stay at step 1' - * DataStoreRead: '/Data Store Read' - * Logic: '/Logical Operator' - */ - if (rtb_RelationalOperator1_f || (*rtd_HI_logic_on)) { - *rty_step = 2; - } else { - *rty_step = 1; - } - /* End of Switch: '/Switch' */ - /* Update for UnitDelay: '/Unit Delay' incorporates: - * DataStoreRead: '/текущее время в мс' + /* 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' + */ + *rtd_Recirculation = 1.0; + + /* 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' + */ + Timegotofromstep2tostep3(*rtd_LEVEL, &rtb_out_cw); + + /* 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 ' + */ + if (rtb_Cond_prev_private_gh && (!localDW->Cond_prev_private_DSTATE)) { + localDW->t_start_delay_private_DSTATE = *rtd_t_now; + } + + /* End of Switch: '/Switch' */ + + /* 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; + } else { + *rty_step = 2; + } + + /* End of Switch: '/Switch' */ + + /* 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_e = *rtd_t_now; + localDW->UnitDelay_DSTATE_i = *rtd_t_now; - /* Update for UnitDelay: '/Unit Delay' incorporates: - * DataStoreRead: '/текущее время в мс' + /* Update for UnitDelay: '/Unit Delay' incorporates: + * DataStoreRead: '/текущее время в мс' */ - localDW->UnitDelay_DSTATE_h = *rtd_t_now; + localDW->UnitDelay_DSTATE_j = *rtd_t_now; - /* Update for UnitDelay: '/Unit Delay' incorporates: - * DataStoreRead: '/текущее время в мс' + /* Update for UnitDelay: '/Unit Delay' incorporates: + * DataStoreRead: '/текущее время в мс' */ - localDW->UnitDelay_DSTATE_o = *rtd_t_now; + localDW->UnitDelay_DSTATE_a = *rtd_t_now; - /* Update for UnitDelay: '/Cond_prev_private ' */ - localDW->Cond_prev_private_DSTATE = rtb_Cond_prev_private_l2; + /* Update for UnitDelay: '/Cond_prev_private ' */ + localDW->Cond_prev_private_DSTATE = rtb_Cond_prev_private_gh; } /* * Output and update for action system: - * '/Step 3' - * '/Step 3' + * '/Step 3 F' + * '/Step 3 R' */ -void Step3(int8_t *rty_step, int8_t *rtd_start_control_finished_front) +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_p(uint8_t rtu_LVL, int16_t *rty_out) +void g_ausSTART_ENTER_SETTEMP_b(uint8_t rtu_LVL, int16_t *rty_out) { int32_t tmp; int32_t tmp_0; @@ -3644,13 +3688,13 @@ void g_ausSTART_ENTER_SETTEMP_p(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_l(uint8_t rtu_LVL, int16_t *rty_out) +void g_assSTART_ENTER_INCAR_p(uint8_t rtu_LVL, int16_t *rty_out) { int32_t tmp; int32_t tmp_0; @@ -3671,11 +3715,11 @@ void g_assSTART_ENTER_INCAR_l(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_i(uint8_t rtu_LVL, int16_t *rty_out) +void g_assSTART_ENTER_COOLANT_e(uint8_t rtu_LVL, int16_t *rty_out) { int32_t tmp; @@ -3690,57 +3734,57 @@ void g_assSTART_ENTER_COOLANT_i(uint8_t rtu_LVL, int16_t *rty_out) /* * Output and update for action system: - * '/Level 4' - * '/Level 5' + * '/Level 4' + * '/Level 5' */ -void Level4_i(int8_t *rty_step1, const uint16_t *rtd_ECT, const int16_t +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_dtd; - int16_t rtb_out_mu; + int16_t rtb_out_cv; + int16_t rtb_out_jz; - /* 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_l(*rtd_LEVEL, &rtb_out_mu); + g_assSTART_ENTER_INCAR_p(*rtd_LEVEL, &rtb_out_jz); - /* 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_i(*rtd_LEVEL, &rtb_out_dtd); + g_assSTART_ENTER_COOLANT_e(*rtd_LEVEL, &rtb_out_cv); - /* 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_mu) || (*rtd_ECT < rtb_out_dtd)) && + if (((*rtd_Incar_RR < rtb_out_jz) || (*rtd_ECT < rtb_out_cv)) && (*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_j(uint8_t rtu_LVL, uint8_t *rty_out) +void incarfilterdown_c(uint8_t rtu_LVL, uint8_t *rty_out) { int32_t tmp; int32_t tmp_0; @@ -3761,12 +3805,12 @@ void incarfilterdown_j(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_d(uint8_t rtu_LVL, uint8_t *rty_out) +void incarfilterup_i(uint8_t rtu_LVL, uint8_t *rty_out) { int32_t tmp; int32_t tmp_0; @@ -3787,11 +3831,11 @@ void incarfilterup_d(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_g(uint8_t rtu_LVL, int16_t *rty_out) +void g_assSTART_COOLANT_STEP0_TO_1_e(uint8_t rtu_LVL, int16_t *rty_out) { int32_t tmp; @@ -3806,94 +3850,94 @@ void g_assSTART_COOLANT_STEP0_TO_1_g(uint8_t rtu_LVL, int16_t *rty_out) /* * Output and update for action system: - * '/Level 4' - * '/Level 5' + * '/Level 4' + * '/Level 5' */ -void Level4_h(int8_t *rty_step1, uint16_t *rtd_Blower_RL, uint16_t +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 uint16_t *rtd_ECT, uint8_t *rtd_Incar_filter_down_value, uint8_t *rtd_Incar_filter_up_value, const uint8_t *rtd_LEVEL, uint8_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_dfj; + int16_t rtb_out_pr; - /* 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_d(*rtd_LEVEL, rtd_Incar_filter_up_value); + 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_j(*rtd_LEVEL, rtd_Incar_filter_down_value); + 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_g(*rtd_LEVEL, &rtb_out_dfj); + g_assSTART_COOLANT_STEP0_TO_1_e(*rtd_LEVEL, &rtb_out_pr); - /* 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_dfj); + *rty_step1 = (int8_t)(*rtd_ECT > rtb_out_pr); } /* * 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' * ... */ void uwayvalve(uint8_t rtu_LVL, uint8_t *rty_out) @@ -3911,12 +3955,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) { @@ -3933,14 +3977,14 @@ 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_b(uint8_t rtu_LVL, int16_t *rty_out) +void Incartempgotofromstep1tostep2_j(uint8_t rtu_LVL, int16_t *rty_out) { int32_t tmp; int32_t tmp_0; @@ -3961,19 +4005,19 @@ void Incartempgotofromstep1tostep2_b(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 ' * ... */ -void Timegotofromstep1tostep2_h(uint8_t rtu_LVL, int16_t *rty_out) +void Timegotofromstep1tostep2_l(uint8_t rtu_LVL, int16_t *rty_out) { int32_t tmp; int32_t tmp_0; @@ -4000,12 +4044,12 @@ void Timegotofromstep1tostep2_h(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) { @@ -4028,57 +4072,57 @@ 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_h(int8_t *rty_step, uint16_t *rtd_Blower_RL, uint16_t *rtd_Blower_RR, +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 *rtd_Incar_RR, uint8_t *rtd_Incar_filter_down_value, uint8_t *rtd_Incar_filter_up_value, const uint8_t *rtd_LEVEL, uint8_t *rtd_Mode_RL, uint8_t *rtd_Mode_RR, double *rtd_Recirculation, uint8_t *rtd_Valve_2_way, const int8_t *rtd_step_start_controle_rear, const uint32_t *rtd_t_now, - DW_Level0_p *localDW) + DW_Level0_c *localDW) { int32_t tmp; - uint32_t rtb_dt_dl; - int16_t rtb_out_gl; - int16_t rtb_out_ni; - uint16_t rtb_out_it; - uint8_t rtb_out_c5o; - bool rtb_Equal_ix; + uint32_t rtb_dt_j0; + int16_t rtb_out_gb; + int16_t rtb_out_kdi; + uint16_t rtb_out_ne; + uint8_t rtb_out_jlu; + 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_d(*rtd_LEVEL, rtd_Incar_filter_up_value); + 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_j(*rtd_LEVEL, rtd_Incar_filter_down_value); + 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_c5o); + moderearstep1(*rtd_LEVEL, &rtb_out_jlu); - /* DataStoreWrite: '/Data Store Write2' */ - *rtd_Mode_RR = rtb_out_c5o; + /* DataStoreWrite: '/Data Store Write2' */ + *rtd_Mode_RR = rtb_out_jlu; - /* DataStoreWrite: '/Data Store Write3' */ - *rtd_Mode_RL = rtb_out_c5o; + /* DataStoreWrite: '/Data Store Write3' */ + *rtd_Mode_RL = rtb_out_jlu; - /* 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); @@ -4086,94 +4130,94 @@ void Level0_h(int8_t *rty_step, uint16_t *rtd_Blower_RL, uint16_t *rtd_Blower_RR tmp = 255; } - rtb_out_it = g_ausSTART_BLR_AF_STEP12_R[tmp - 1]; + 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' */ - *rtd_Blower_RR = rtb_out_it; + /* DataStoreWrite: '/Data Store Write5' */ + *rtd_Blower_RR = rtb_out_ne; - /* DataStoreWrite: '/Data Store Write6' */ - *rtd_Blower_RL = rtb_out_it; + /* 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_c5o); + Dtg_rear(*rtd_LEVEL, &rtb_out_jlu); - /* DataStoreWrite: '/Data Store Write10' */ - *rtd_Dtg_RR = rtb_out_c5o; + /* DataStoreWrite: '/Data Store Write10' */ + *rtd_Dtg_RR = rtb_out_jlu; - /* DataStoreWrite: '/Data Store Write11' */ - *rtd_Dtg_RL = rtb_out_c5o; + /* DataStoreWrite: '/Data Store Write11' */ + *rtd_Dtg_RL = rtb_out_jlu; - /* 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_ix = (*rtd_step_start_controle_rear == 1); + 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_b(*rtd_LEVEL, &rtb_out_ni); + 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_dl = *rtd_t_now - localDW->t_start_delay_private_DSTATE; + rtb_dt_j0 = *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_h(*rtd_LEVEL, &rtb_out_gl); + 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_ix && (!localDW->Cond_prev_private_DSTATE)) { + 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_ni) || (rtb_dt_dl > (uint16_t)(1000 * rtb_out_gl))) + if ((*rtd_Incar_RR < rtb_out_kdi) || (rtb_dt_j0 > (uint16_t)(1000 * rtb_out_gb))) { *rty_step = 2; } else { *rty_step = 1; } - /* End of Switch: '/Switch' */ + /* End of Switch: '/Switch' */ - /* Update for UnitDelay: '/Cond_prev_private ' */ - localDW->Cond_prev_private_DSTATE = rtb_Equal_ix; + /* 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]) { @@ -4204,11 +4248,11 @@ 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_h(uint8_t rtu_LVL, int16_t rty_out[2]) +void ECTminmax_l(uint8_t rtu_LVL, int16_t rty_out[2]) { int32_t tmp; @@ -4226,8 +4270,8 @@ void ECTminmax_h(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, @@ -4236,149 +4280,149 @@ void Level4_d(int8_t *rty_step, uint16_t *rtd_Blower_RL, uint16_t *rtd_Blower_RR uint8_t *rtd_Mode_RL, uint8_t *rtd_Mode_RR, double *rtd_Recirculation, uint8_t *rtd_Valve_2_way, const int8_t *rtd_step_start_controle_rear, const uint32_t *rtd_t_now, - DW_Level4_m *localDW) + DW_Level4_a *localDW) { - uint32_t rtb_dt_k; - int16_t rtb_out_l1[2]; - int16_t rtb_out_a4; - int16_t rtb_out_hj; - uint16_t rtb_out_bd[2]; - uint8_t rtb_out_m1; - bool rtb_Equal_hg; + uint32_t rtb_dt_md; + int16_t rtb_out_ij[2]; + int16_t rtb_out_ck; + int16_t rtb_out_pf; + uint16_t rtb_out_dq[2]; + 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_d(*rtd_LEVEL, rtd_Incar_filter_up_value); + 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_j(*rtd_LEVEL, rtd_Incar_filter_down_value); + 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_m1); + moderearstep1(*rtd_LEVEL, &rtb_out_gz); - /* DataStoreWrite: '/Data Store Write2' */ - *rtd_Mode_RR = rtb_out_m1; + /* DataStoreWrite: '/Data Store Write2' */ + *rtd_Mode_RR = rtb_out_gz; - /* DataStoreWrite: '/Data Store Write3' */ - *rtd_Mode_RL = rtb_out_m1; + /* 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_bd); + 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_h(*rtd_LEVEL, rtb_out_l1); + 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_l1, - rtb_out_bd, 1U); + *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_m1); + Dtg_rear(*rtd_LEVEL, &rtb_out_gz); - /* DataStoreWrite: '/Data Store Write10' */ - *rtd_Dtg_RR = rtb_out_m1; + /* DataStoreWrite: '/Data Store Write10' */ + *rtd_Dtg_RR = rtb_out_gz; - /* DataStoreWrite: '/Data Store Write11' */ - *rtd_Dtg_RL = rtb_out_m1; + /* 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_hg = (*rtd_step_start_controle_rear == 1); + 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_b(*rtd_LEVEL, &rtb_out_hj); + 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_k = *rtd_t_now - localDW->t_start_delay_private_DSTATE; + rtb_dt_md = *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_h(*rtd_LEVEL, &rtb_out_a4); + 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_hg && (!localDW->Cond_prev_private_DSTATE)) { + 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_hj) || (rtb_dt_k > (uint16_t)(1000 * rtb_out_a4))) + if ((*rtd_Incar_RR > rtb_out_pf) || (rtb_dt_md > (uint16_t)(1000 * rtb_out_ck))) { *rty_step = 2; } else { *rty_step = 1; } - /* End of Switch: '/Switch' */ + /* End of Switch: '/Switch' */ - /* Update for UnitDelay: '/Cond_prev_private ' */ - localDW->Cond_prev_private_DSTATE = rtb_Equal_hg; + /* 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' - * '/time for step' */ -void timeforstep_fu(uint8_t rtu_LVL, uint8_t *rty_out) +void timeforstep_jn(uint8_t rtu_LVL, uint8_t *rty_out) { int32_t tmp; int32_t tmp_0; @@ -4399,14 +4443,14 @@ void timeforstep_fu(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' - * '/blower step' */ -void blowerstep_j(uint8_t rtu_LVL, uint16_t *rty_out) +void blowerstep_d(uint8_t rtu_LVL, uint16_t *rty_out) { int32_t tmp; @@ -4421,14 +4465,14 @@ void blowerstep_j(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' */ -void blowertimeforstep_a(uint8_t rtu_LVL, uint16_t *rty_out) +void blowertimeforstep_l(uint8_t rtu_LVL, uint16_t *rty_out) { int32_t tmp; int32_t tmp_0; @@ -4449,14 +4493,14 @@ void blowertimeforstep_a(uint8_t rtu_LVL, uint16_t *rty_out) /* * Output and update for atomic system: + * '/step' + * '/step' + * '/step' * '/step' * '/step' * '/step' - * '/step' - * '/step' - * '/step' */ -void step_c(uint8_t rtu_LVL, uint8_t *rty_out) +void step_a(uint8_t rtu_LVL, uint8_t *rty_out) { int32_t tmp; @@ -4471,12 +4515,12 @@ void step_c(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' */ void timeforstep_h(uint8_t rtu_LVL, uint8_t *rty_out) { @@ -4499,43 +4543,44 @@ void timeforstep_h(uint8_t rtu_LVL, uint8_t *rty_out) /* * Output and update for action system: - * '/Level 0' - * '/Level 1' + * '/Level 3' + * '/Level 4' + * '/Level 5' */ -void Level0_j(int8_t *rty_step, uint16_t *rtd_Blower_RL, uint16_t *rtd_Blower_RR, +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 * - rtd_Dtg_RR, const uint8_t *rtd_Dtg_logic_RR, uint8_t - *rtd_Incar_filter_down_value, uint8_t *rtd_Incar_filter_up_value, - const uint8_t *rtd_LEVEL, uint8_t *rtd_Mode_RL, uint8_t - *rtd_Mode_RR, const uint8_t *rtd_Mode_logic_RR, double - *rtd_Recirculation, uint8_t *rtd_Valve_2_way, const int8_t - *rtd_step_start_controle_rear, const uint32_t *rtd_t_now, - DW_Level0_n *localDW) + rtd_Dtg_RR, const uint8_t *rtd_Dtg_logic_RR, const bool + *rtd_HI_logic_on, uint8_t *rtd_Incar_filter_down_value, uint8_t + *rtd_Incar_filter_up_value, const uint8_t *rtd_LEVEL, uint8_t + *rtd_Mode_RL, uint8_t *rtd_Mode_RR, const uint8_t + *rtd_Mode_logic_RR, double *rtd_Recirculation, uint8_t + *rtd_Valve_2_way, const int8_t *rtd_step_start_controle_rear, + const uint32_t *rtd_t_now, DW_Level3_n *localDW) { int32_t tmp; - uint32_t rtb_dt_l; - int16_t rtb_out_gw; - uint16_t rtb_out_jki; - uint16_t rtb_out_ma; - uint8_t rtb_out_ke; - uint8_t rtb_out_mz; - bool rtb_RelationalOperator1_em; + uint32_t rtb_dt_jh; + int16_t rtb_out_cw; + uint16_t rtb_out_bz; + uint16_t rtb_out_gx; + uint8_t rtb_out_cn; + uint8_t rtb_out_i4; + bool rtb_Cond_prev_private_a4; - /* 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' + * DataStoreRead: '/Data Store Read8' */ - Dtg_rear(*rtd_LEVEL, &rtb_out_mz); + Dtg_rear(*rtd_LEVEL, &rtb_out_i4); /* MATLAB Function: '/time for step' incorporates: - * DataStoreRead: '/Data Store Read8' + * DataStoreRead: '/Data Store Read8' */ - timeforstep_fu(*rtd_LEVEL, &rtb_out_ke); + timeforstep_jn(*rtd_LEVEL, &rtb_out_cn); /* Switch: '/Switch' incorporates: * Constant: '/Constant' @@ -4543,7 +4588,7 @@ void Level0_j(int8_t *rty_step, uint16_t *rtd_Blower_RL, uint16_t *rtd_Blower_RR * DataStoreRead: '/Текущее значение blower ' * DataStoreRead: '/значение auto (в соответствии с логикой)' * DataStoreRead: '/текущее время в мс' - * DataStoreWrite: '/Data Store Write10' + * DataStoreWrite: '/Data Store Write10' * Product: '/Product1' * Product: '/change rate (dtg//sec)' * Product: '/скорость в мс' @@ -4571,57 +4616,57 @@ void Level0_j(int8_t *rty_step, uint16_t *rtd_Blower_RL, uint16_t *rtd_Blower_RR tmp = -1; } - *rtd_Dtg_RR = (uint8_t)((double)rtb_out_mz / (double)rtb_out_ke / 1000.0 * + *rtd_Dtg_RR = (uint8_t)((double)rtb_out_i4 / (double)rtb_out_cn / 1000.0 * (double)(*rtd_t_now - localDW->UnitDelay_DSTATE) * (double)tmp + (double)* rtd_Dtg_RR); } /* 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_d(*rtd_LEVEL, rtd_Incar_filter_up_value); + 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_j(*rtd_LEVEL, rtd_Incar_filter_down_value); + incarfilterdown_c(*rtd_LEVEL, rtd_Incar_filter_down_value); /* Sum: '/Add' incorporates: * DataStoreRead: '/Текущее значение blower ' * DataStoreRead: '/значение auto (в соответствии с логикой)' */ - rtb_out_mz = (uint8_t)(*rtd_Mode_RR - *rtd_Mode_logic_RR); + rtb_out_i4 = (uint8_t)(*rtd_Mode_RR - *rtd_Mode_logic_RR); /* RelationalOperator: '/Relational Operator' incorporates: * Constant: '/epsilon' */ - rtb_RelationalOperator1_em = (rtb_out_mz <= 0.01); + rtb_Cond_prev_private_a4 = (rtb_out_i4 <= 0.01); /* MATLAB Function: '/step' incorporates: - * DataStoreRead: '/Data Store Read5' + * DataStoreRead: '/Data Store Read5' */ - step_c(*rtd_LEVEL, &rtb_out_ke); + step_a(*rtd_LEVEL, &rtb_out_cn); /* MATLAB Function: '/time for step' incorporates: - * DataStoreRead: '/Data Store Read5' + * DataStoreRead: '/Data Store Read5' */ - timeforstep_h(*rtd_LEVEL, &rtb_out_mz); + timeforstep_h(*rtd_LEVEL, &rtb_out_i4); /* 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: '/скорость в мс' @@ -4632,7 +4677,7 @@ void Level0_j(int8_t *rty_step, uint16_t *rtd_Blower_RL, uint16_t *rtd_Blower_RR * Switch: '/Switch' * UnitDelay: '/Unit Delay' */ - if (rtb_RelationalOperator1_em) { + if (rtb_Cond_prev_private_a4) { *rtd_Mode_RR = *rtd_Mode_logic_RR; } else { if (*rtd_Mode_RR <= *rtd_Mode_logic_RR) { @@ -4647,27 +4692,27 @@ void Level0_j(int8_t *rty_step, uint16_t *rtd_Blower_RL, uint16_t *rtd_Blower_RR tmp = -1; } - *rtd_Mode_RR = (uint8_t)((double)rtb_out_ke / (double)rtb_out_mz / 1000.0 * - (double)(*rtd_t_now - localDW->UnitDelay_DSTATE_a) * (double)tmp + (double)* + *rtd_Mode_RR = (uint8_t)((double)rtb_out_cn / (double)rtb_out_i4 / 1000.0 * + (double)(*rtd_t_now - localDW->UnitDelay_DSTATE_i) * (double)tmp + (double)* rtd_Mode_RR); } /* 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' + * DataStoreRead: '/Data Store Read7' */ - blowerstep_j(*rtd_LEVEL, &rtb_out_ma); + blowerstep_d(*rtd_LEVEL, &rtb_out_gx); /* MATLAB Function: '/blower time for step' incorporates: - * DataStoreRead: '/Data Store Read7' + * DataStoreRead: '/Data Store Read7' */ - blowertimeforstep_a(*rtd_LEVEL, &rtb_out_jki); + blowertimeforstep_l(*rtd_LEVEL, &rtb_out_bz); /* Switch: '/Switch' incorporates: * Constant: '/Constant' @@ -4675,7 +4720,7 @@ void Level0_j(int8_t *rty_step, uint16_t *rtd_Blower_RL, uint16_t *rtd_Blower_RR * DataStoreRead: '/Текущее значение blower ' * DataStoreRead: '/значение auto (в соответствии с логикой)' * DataStoreRead: '/текущее время в мс' - * DataStoreWrite: '/Data Store Write5' + * DataStoreWrite: '/Data Store Write5' * Product: '/Product1' * Product: '/change rate (step//sec)' * Product: '/скорость в мс' @@ -4703,33 +4748,38 @@ void Level0_j(int8_t *rty_step, uint16_t *rtd_Blower_RL, uint16_t *rtd_Blower_RR tmp = -1; } - *rtd_Blower_RR = (uint16_t)((double)rtb_out_ma / (double)rtb_out_jki / - 1000.0 * (double)(*rtd_t_now - localDW->UnitDelay_DSTATE_l) * (double)tmp - + (double)*rtd_Blower_RR); + *rtd_Blower_RR = (uint16_t)((double)rtb_out_gx / (double)rtb_out_bz / 1000.0 + * (double)(*rtd_t_now - localDW->UnitDelay_DSTATE_e) * (double)tmp + + (double)*rtd_Blower_RR); } /* 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_RelationalOperator1_em = (*rtd_step_start_controle_rear == 1); + rtb_Cond_prev_private_a4 = (*rtd_step_start_controle_rear == 2); /* Sum: '/Subtract' incorporates: * DataStoreRead: '/Data Store Read4' * UnitDelay: '/t_start_delay_private ' */ - rtb_dt_l = *rtd_t_now - localDW->t_start_delay_private_DSTATE; + rtb_dt_jh = *rtd_t_now - localDW->t_start_delay_private_DSTATE; + + /* 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' @@ -4738,30 +4788,27 @@ void Level0_j(int8_t *rty_step, uint16_t *rtd_Blower_RL, uint16_t *rtd_Blower_RR * UnitDelay: '/Cond_prev_private ' * UnitDelay: '/t_start_delay_private ' */ - if (rtb_RelationalOperator1_em && (!localDW->Cond_prev_private_DSTATE)) { + if (rtb_Cond_prev_private_a4 && (!localDW->Cond_prev_private_DSTATE)) { localDW->t_start_delay_private_DSTATE = *rtd_t_now; } /* End of Switch: '/Switch' */ - /* MATLAB Function: '/Time goto from step 1 to step 2 ' incorporates: - * DataStoreRead: '/Data Store Read4' + /* Switch: '/Switch' incorporates: + * Constant: '/go to next step' + * Constant: '/stay at step' + * DataStoreRead: '/Data Store Read' + * Gain: '/из сек в мс' + * Logic: '/Logical Operator' + * RelationalOperator: '/Relational Operator1' */ - Timegotofromstep1tostep2_h(*rtd_LEVEL, &rtb_out_gw); - - /* Switch: '/Switch' incorporates: - * Constant: '/go to next step' - * Constant: '/stay at step 1' - * Gain: '/из сек в мс' - * RelationalOperator: '/Relational Operator1' - */ - if (rtb_dt_l > (uint16_t)(1000 * rtb_out_gw)) { - *rty_step = 2; + if ((rtb_dt_jh > (uint16_t)(1000 * rtb_out_cw)) || (*rtd_HI_logic_on)) { + *rty_step = 3; } else { - *rty_step = 1; + *rty_step = 2; } - /* End of Switch: '/Switch' */ + /* End of Switch: '/Switch' */ /* Update for UnitDelay: '/Unit Delay' incorporates: * DataStoreRead: '/текущее время в мс' @@ -4771,304 +4818,948 @@ void Level0_j(int8_t *rty_step, uint16_t *rtd_Blower_RL, uint16_t *rtd_Blower_RR /* Update for UnitDelay: '/Unit Delay' incorporates: * DataStoreRead: '/текущее время в мс' */ - localDW->UnitDelay_DSTATE_a = *rtd_t_now; + localDW->UnitDelay_DSTATE_i = *rtd_t_now; /* Update for UnitDelay: '/Unit Delay' incorporates: * DataStoreRead: '/текущее время в мс' */ - localDW->UnitDelay_DSTATE_l = *rtd_t_now; + localDW->UnitDelay_DSTATE_e = *rtd_t_now; /* Update for UnitDelay: '/Cond_prev_private ' */ - localDW->Cond_prev_private_DSTATE = rtb_RelationalOperator1_em; + localDW->Cond_prev_private_DSTATE = rtb_Cond_prev_private_a4; } -/* - * Output and update for action system: - * '/Level 2' - * '/Level 3' - * '/Level 4' - * '/Level 5' - */ -void Level2(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 - *rtd_Dtg_RR, const uint8_t *rtd_Dtg_logic_RR, const bool - *rtd_HI_logic_on, uint8_t *rtd_Incar_filter_down_value, uint8_t - *rtd_Incar_filter_up_value, const uint8_t *rtd_LEVEL, uint8_t - *rtd_Mode_RL, uint8_t *rtd_Mode_RR, const uint8_t *rtd_Mode_logic_RR, - double *rtd_Recirculation, uint8_t *rtd_Valve_2_way, const int8_t - *rtd_step_start_controle_rear, const uint32_t *rtd_t_now, DW_Level2 * - localDW) +/* Function for Test Sequence: '/Test Sequence' */ +static void step_9(void) { - int32_t tmp; - uint32_t rtb_dt_h; - int16_t rtb_out_aa; - uint16_t rtb_out_i3; - uint16_t rtb_out_oi; - uint8_t rtb_out_b2p; - uint8_t rtb_out_cy; - bool rtb_Cond_prev_private_ax; + /* : sf_internal_predicateOutput = after(1, sec); */ + if (rtDW.temporalCounter_i1 >= 1U) { + rtDW.temporalCounter_i1 = 0U; + rtDW.is_c371_HVAC_model = IN_step_10; - /* DataStoreWrite: '/Data Store Write9' incorporates: - * DataStoreRead: '/Data Store Read6' - * MATLAB Function: '/2 way valve' - */ - uwayvalve(*rtd_LEVEL, rtd_Valve_2_way); + /* : Actuator_Ch0_Status_Model.Busy =uint8(1); */ + Actuator_Ch0_Status_Model.Busy = 1U; - /* MATLAB Function: '/step' incorporates: - * DataStoreRead: '/Data Store Read8' - */ - Dtg_rear(*rtd_LEVEL, &rtb_out_b2p); + /* : Actuator_Ch0_Status_Model.Error_Connect=uint8(0); */ + Actuator_Ch0_Status_Model.Error_Connect = 0U; - /* MATLAB Function: '/time for step' incorporates: - * DataStoreRead: '/Data Store Read8' - */ - timeforstep_fu(*rtd_LEVEL, &rtb_out_cy); - - /* 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; + /* : t_now = uint32(9000); */ + rtDW.t_now = 9000U; } else { - if (*rtd_Dtg_RR <= *rtd_Dtg_logic_RR) { - /* Switch: '/Switch' incorporates: - * Constant: '/Constant' - */ - tmp = 1; - } else { - /* Switch: '/Switch' incorporates: - * Constant: '/Constant1' - */ - tmp = -1; + /* : Actuator_Ch0_Status_Model.Busy =uint8(1); */ + Actuator_Ch0_Status_Model.Busy = 1U; + + /* : Actuator_Ch0_Status_Model.Error_Connect=uint8(0); */ + Actuator_Ch0_Status_Model.Error_Connect = 0U; + + /* : t_now = uint32(8000); */ + rtDW.t_now = 8000U; + } +} + +/* Function for Test Sequence: '/Test Sequence' */ +static void step_1(void) +{ + /* : sf_internal_predicateOutput = after(1, sec); */ + if (rtDW.temporalCounter_i1 >= 1U) { + rtDW.temporalCounter_i1 = 0U; + rtDW.is_c371_HVAC_model = IN_step_2; + + /* : ADC_Data_Model.Sensor_Ambient_Temp = uint16(800); */ + rtDW.ADC_Data_Model.Sensor_Ambient_Temp = 800U; + + /* : Actuator_Ch0_Status_Model.Busy =uint8(0); */ + Actuator_Ch0_Status_Model.Busy = 0U; + + /* : Actuator_Ch0_Status_Model.Error_Connect=uint8(0); */ + Actuator_Ch0_Status_Model.Error_Connect = 0U; + + /* : t_now = uint32(1000); */ + rtDW.t_now = 1000U; + } else { + /* : ADC_Data_Model.Sensor_Ambient_Temp= uint16(300); */ + rtDW.ADC_Data_Model.Sensor_Ambient_Temp = 300U; + + /* : FIU_CCU1_MODEL.FIU_TargetTempFL_Val_ro = uint8(13); */ + rtDW.FIU_CCU1_MODEL.FIU_TargetTempFL_Val_ro = 13U; + + /* : ADC_Data_Model.IGN_ANS = uint16(300); */ + rtDW.ADC_Data_Model.IGN_ANS = 300U; + + /* : Actuator_Ch0_Status_Model.Busy =uint8(1); */ + Actuator_Ch0_Status_Model.Busy = 1U; + + /* : Actuator_Ch0_Status_Model.Error_Connect=uint8(0); */ + Actuator_Ch0_Status_Model.Error_Connect = 0U; + + /* : t_now = uint32(0); */ + rtDW.t_now = 0U; + } +} + +/* Function for Test Sequence: '/Test Sequence' */ +static void step_10(void) +{ + /* : sf_internal_predicateOutput = after(1, sec); */ + if (rtDW.temporalCounter_i1 >= 1U) { + rtDW.temporalCounter_i1 = 0U; + rtDW.is_c371_HVAC_model = IN_step_11; + + /* : Actuator_Ch0_Status_Model.Busy =uint8(1); */ + Actuator_Ch0_Status_Model.Busy = 1U; + + /* : Actuator_Ch0_Status_Model.Error_Connect=uint8(0); */ + Actuator_Ch0_Status_Model.Error_Connect = 0U; + + /* : t_now = uint32(10000); */ + rtDW.t_now = 10000U; + } else { + /* : Actuator_Ch0_Status_Model.Busy =uint8(1); */ + Actuator_Ch0_Status_Model.Busy = 1U; + + /* : Actuator_Ch0_Status_Model.Error_Connect=uint8(0); */ + Actuator_Ch0_Status_Model.Error_Connect = 0U; + + /* : t_now = uint32(9000); */ + rtDW.t_now = 9000U; + } +} + +/* Function for Test Sequence: '/Test Sequence' */ +static void step_11(void) +{ + int32_t i; + static const int16_t b[9] = { 0, 54, 153, 756, 484, 2, 5, 7, 2323 }; + + static const int8_t c[9] = { 1, 0, 0, 0, 0, 0, 0, 1, 1 }; + + /* : sf_internal_predicateOutput = after(1, sec); */ + if (rtDW.temporalCounter_i1 >= 1U) { + rtDW.temporalCounter_i1 = 0U; + rtDW.is_c371_HVAC_model = IN_step_12; + + /* : Actuator_Ch0_Status_Model.in_CPOS_ALL =int16([0, 54, 153, 756, 484, 2, 5, 7, 2323]); */ + /* : Actuator_Ch0_Status_Model.in_Act_Stall_Slave=int8([1, 0, 0, 0, 0, 0, 0, 1,1]); */ + for (i = 0; i < 9; i++) { + Actuator_Ch0_Status_Model.in_CPOS_ALL[i] = b[i]; + Actuator_Ch0_Status_Model.in_Act_Stall_Slave[i] = c[i]; } - *rtd_Dtg_RR = (uint8_t)((double)rtb_out_b2p / (double)rtb_out_cy / 1000.0 * - (double)(*rtd_t_now - localDW->UnitDelay_DSTATE) * (double)tmp + (double)* - rtd_Dtg_RR); - } + /* : Actuator_Ch0_Status_Model.Busy =uint8(1); */ + Actuator_Ch0_Status_Model.Busy = 1U; - /* End of Switch: '/Switch' */ + /* : Actuator_Ch0_Status_Model.Error_Connect=uint8(0); */ + Actuator_Ch0_Status_Model.Error_Connect = 0U; - /* 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' - */ - incarfilterup_d(*rtd_LEVEL, rtd_Incar_filter_up_value); - - /* DataStoreWrite: '/Data Store Write1' incorporates: - * DataStoreRead: '/Data Store Read2' - * MATLAB Function: '/incar filter down' - */ - incarfilterdown_j(*rtd_LEVEL, rtd_Incar_filter_down_value); - - /* Sum: '/Add' incorporates: - * DataStoreRead: '/Текущее значение blower ' - * DataStoreRead: '/значение auto (в соответствии с логикой)' - */ - rtb_out_b2p = (uint8_t)(*rtd_Mode_RR - *rtd_Mode_logic_RR); - - /* RelationalOperator: '/Relational Operator' incorporates: - * Constant: '/epsilon' - */ - rtb_Cond_prev_private_ax = (rtb_out_b2p <= 0.01); - - /* MATLAB Function: '/step' incorporates: - * DataStoreRead: '/Data Store Read5' - */ - step_c(*rtd_LEVEL, &rtb_out_cy); - - /* MATLAB Function: '/time for step' incorporates: - * DataStoreRead: '/Data Store Read5' - */ - timeforstep_h(*rtd_LEVEL, &rtb_out_b2p); - - /* 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_ax) { - *rtd_Mode_RR = *rtd_Mode_logic_RR; + /* : t_now = uint32(11000); */ + rtDW.t_now = 11000U; } else { - if (*rtd_Mode_RR <= *rtd_Mode_logic_RR) { - /* Switch: '/Switch' incorporates: - * Constant: '/Constant' - */ - tmp = 1; - } else { - /* Switch: '/Switch' incorporates: - * Constant: '/Constant1' - */ - tmp = -1; + /* : Actuator_Ch0_Status_Model.Busy =uint8(1); */ + Actuator_Ch0_Status_Model.Busy = 1U; + + /* : Actuator_Ch0_Status_Model.Error_Connect=uint8(0); */ + Actuator_Ch0_Status_Model.Error_Connect = 0U; + + /* : t_now = uint32(10000); */ + rtDW.t_now = 10000U; + } +} + +/* Function for Test Sequence: '/Test Sequence' */ +static void step_12(void) +{ + int32_t i; + static const int16_t b[9] = { 0, 54, 153, 756, 484, 2, 5, 7, 2323 }; + + static const int8_t c[9] = { 1, 0, 0, 0, 0, 0, 0, 1, 1 }; + + static const int8_t d[9] = { 1, 0, 0, 1, 1, 1, 1, 1, 1 }; + + /* : sf_internal_predicateOutput = after(1, sec); */ + if (rtDW.temporalCounter_i1 >= 1U) { + rtDW.temporalCounter_i1 = 0U; + rtDW.is_c371_HVAC_model = IN_step_13; + + /* : Actuator_Ch0_Status_Model.in_CPOS_ALL =int16([0, 54, 153, 756, 484, 2, 5, 7, 2323]); */ + /* : Actuator_Ch0_Status_Model.in_Act_Stall_Slave=int8([1, 0, 0, 1, 1, 1, 1, 1,1]); */ + for (i = 0; i < 9; i++) { + Actuator_Ch0_Status_Model.in_CPOS_ALL[i] = b[i]; + Actuator_Ch0_Status_Model.in_Act_Stall_Slave[i] = d[i]; } - *rtd_Mode_RR = (uint8_t)((double)rtb_out_cy / (double)rtb_out_b2p / 1000.0 * - (double)(*rtd_t_now - localDW->UnitDelay_DSTATE_j) * (double)tmp + (double)* - rtd_Mode_RR); - } + /* : Actuator_Ch0_Status_Model.Busy =uint8(0); */ + Actuator_Ch0_Status_Model.Busy = 0U; - /* End of Switch: '/Switch' */ + /* : Actuator_Ch0_Status_Model.Error_Connect=uint8(0); */ + Actuator_Ch0_Status_Model.Error_Connect = 0U; - /* DataStoreWrite: '/Data Store Write3' incorporates: - * DataStoreWrite: '/Data Store Write2' - */ - *rtd_Mode_RL = *rtd_Mode_RR; - - /* MATLAB Function: '/blower step' incorporates: - * DataStoreRead: '/Data Store Read7' - */ - blowerstep_j(*rtd_LEVEL, &rtb_out_i3); - - /* MATLAB Function: '/blower time for step' incorporates: - * DataStoreRead: '/Data Store Read7' - */ - blowertimeforstep_a(*rtd_LEVEL, &rtb_out_oi); - - /* 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; + /* : t_now = uint32(12000); */ + rtDW.t_now = 12000U; } else { - if (*rtd_Blower_RR <= *rtd_Blower_logic_RR) { - /* Switch: '/Switch' incorporates: - * Constant: '/Constant' - */ - tmp = 1; - } else { - /* Switch: '/Switch' incorporates: - * Constant: '/Constant1' - */ - tmp = -1; + /* : Actuator_Ch0_Status_Model.in_CPOS_ALL =int16([0, 54, 153, 756, 484, 2, 5, 7, 2323]); */ + /* : Actuator_Ch0_Status_Model.in_Act_Stall_Slave=int8([1, 0, 0, 0, 0, 0, 0, 1,1]); */ + for (i = 0; i < 9; i++) { + Actuator_Ch0_Status_Model.in_CPOS_ALL[i] = b[i]; + Actuator_Ch0_Status_Model.in_Act_Stall_Slave[i] = c[i]; } - *rtd_Blower_RR = (uint16_t)((double)rtb_out_i3 / (double)rtb_out_oi / 1000.0 - * (double)(*rtd_t_now - localDW->UnitDelay_DSTATE_m) * (double)tmp + - (double)*rtd_Blower_RR); + /* : Actuator_Ch0_Status_Model.Busy =uint8(1); */ + Actuator_Ch0_Status_Model.Busy = 1U; + + /* : Actuator_Ch0_Status_Model.Error_Connect=uint8(0); */ + Actuator_Ch0_Status_Model.Error_Connect = 0U; + + /* : t_now = uint32(11000); */ + rtDW.t_now = 11000U; } +} - /* End of Switch: '/Switch' */ +/* Function for Test Sequence: '/Test Sequence' */ +static void step_13(void) +{ + int32_t i; + static const int16_t b[9] = { 0, 54, 153, 756, 484, 2, 5, 7, 2323 }; - /* DataStoreWrite: '/Data Store Write6' incorporates: - * DataStoreWrite: '/Data Store Write5' - */ - *rtd_Blower_RL = *rtd_Blower_RR; + static const int8_t c[9] = { 1, 0, 0, 1, 1, 1, 1, 1, 1 }; - /* DataStoreWrite: '/Data Store Write7' incorporates: - * Constant: '/Recirc logic Partial REC' - */ - *rtd_Recirculation = 1.0; + static const int8_t d[9] = { 3, 2, 10, 50, 50, 100, 45, 7, 25 }; - /* RelationalOperator: '/Equal' incorporates: - * DataStoreRead: '/current step' - */ - rtb_Cond_prev_private_ax = (*rtd_step_start_controle_rear == 1); + static const int8_t e[9] = { 1, 0, 1, 1, 1, 1, 1, 1, 1 }; - /* Sum: '/Subtract' incorporates: - * DataStoreRead: '/Data Store Read4' - * UnitDelay: '/t_start_delay_private ' - */ - rtb_dt_h = *rtd_t_now - localDW->t_start_delay_private_DSTATE; + /* : sf_internal_predicateOutput = after(1, sec); */ + if (rtDW.temporalCounter_i1 >= 1U) { + rtDW.temporalCounter_i1 = 0U; + rtDW.is_c371_HVAC_model = IN_step_14; - /* MATLAB Function: '/Time goto from step 1 to step 2 ' incorporates: - * DataStoreRead: '/Data Store Read4' - */ - Timegotofromstep1tostep2_h(*rtd_LEVEL, &rtb_out_aa); + /* : Actuator_Ch0_Status_Model.in_CPOS_ALL =int16([3, 2, 10, 50, 50, 100, 45, 7, 25]); */ + /* : Actuator_Ch0_Status_Model.in_Act_Stall_Slave=int8([1, 0, 1, 1, 1, 1, 1, 1,1]); */ + for (i = 0; i < 9; i++) { + Actuator_Ch0_Status_Model.in_CPOS_ALL[i] = d[i]; + Actuator_Ch0_Status_Model.in_Act_Stall_Slave[i] = e[i]; + } - /* 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_ax && (!localDW->Cond_prev_private_DSTATE)) { - localDW->t_start_delay_private_DSTATE = *rtd_t_now; - } + /* : Actuator_Ch0_Status_Model.Busy =uint8(0); */ + Actuator_Ch0_Status_Model.Busy = 0U; - /* End of Switch: '/Switch' */ + /* : Actuator_Ch0_Status_Model.Error_Connect=uint8(0); */ + Actuator_Ch0_Status_Model.Error_Connect = 0U; - /* Switch: '/Switch' incorporates: - * Constant: '/go to next step' - * Constant: '/stay at step 1' - * DataStoreRead: '/Data Store Read' - * Gain: '/из сек в мс' - * Logic: '/Logical Operator' - * RelationalOperator: '/Relational Operator1' - */ - if ((rtb_dt_h > (uint16_t)(1000 * rtb_out_aa)) || (*rtd_HI_logic_on)) { - *rty_step = 2; + /* : t_now = uint32(13000); */ + rtDW.t_now = 13000U; } else { - *rty_step = 1; + /* : Actuator_Ch0_Status_Model.in_CPOS_ALL =int16([0, 54, 153, 756, 484, 2, 5, 7, 2323]); */ + /* : Actuator_Ch0_Status_Model.in_Act_Stall_Slave=int8([1, 0, 0, 1, 1, 1, 1, 1,1]); */ + for (i = 0; i < 9; i++) { + Actuator_Ch0_Status_Model.in_CPOS_ALL[i] = b[i]; + Actuator_Ch0_Status_Model.in_Act_Stall_Slave[i] = c[i]; + } + + /* : Actuator_Ch0_Status_Model.Busy =uint8(0); */ + Actuator_Ch0_Status_Model.Busy = 0U; + + /* : Actuator_Ch0_Status_Model.Error_Connect=uint8(0); */ + Actuator_Ch0_Status_Model.Error_Connect = 0U; + + /* : t_now = uint32(12000); */ + rtDW.t_now = 12000U; } +} - /* End of Switch: '/Switch' */ +/* Function for Test Sequence: '/Test Sequence' */ +static void step_14(void) +{ + int32_t i; + static const int8_t b[9] = { 3, 2, 10, 50, 50, 100, 45, 7, 25 }; - /* Update for UnitDelay: '/Unit Delay' incorporates: - * DataStoreRead: '/текущее время в мс' - */ - localDW->UnitDelay_DSTATE = *rtd_t_now; + static const int8_t c[9] = { 1, 0, 1, 1, 1, 1, 1, 1, 1 }; - /* Update for UnitDelay: '/Unit Delay' incorporates: - * DataStoreRead: '/текущее время в мс' - */ - localDW->UnitDelay_DSTATE_j = *rtd_t_now; + /* : sf_internal_predicateOutput = after(1, sec); */ + if (rtDW.temporalCounter_i1 >= 1U) { + rtDW.temporalCounter_i1 = 0U; + rtDW.is_c371_HVAC_model = IN_step_15; - /* Update for UnitDelay: '/Unit Delay' incorporates: - * DataStoreRead: '/текущее время в мс' - */ - localDW->UnitDelay_DSTATE_m = *rtd_t_now; + /* : Actuator_Ch0_Status_Model.in_CPOS_ALL =int16([3, 2, 10, 50, 50, 100, 45, 7, 25]); */ + /* : Actuator_Ch0_Status_Model.in_Act_Stall_Slave=int8([1, 1, 1, 1, 1, 1, 1, 1,1]); */ + for (i = 0; i < 9; i++) { + Actuator_Ch0_Status_Model.in_CPOS_ALL[i] = b[i]; + Actuator_Ch0_Status_Model.in_Act_Stall_Slave[i] = 1; + } - /* Update for UnitDelay: '/Cond_prev_private ' */ - localDW->Cond_prev_private_DSTATE = rtb_Cond_prev_private_ax; + /* : Actuator_Ch0_Status_Model.Busy =uint8(0); */ + Actuator_Ch0_Status_Model.Busy = 0U; + + /* : Actuator_Ch0_Status_Model.Error_Connect=uint8(0); */ + Actuator_Ch0_Status_Model.Error_Connect = 0U; + + /* : t_now = uint32(14000); */ + rtDW.t_now = 14000U; + } else { + /* : Actuator_Ch0_Status_Model.in_CPOS_ALL =int16([3, 2, 10, 50, 50, 100, 45, 7, 25]); */ + /* : Actuator_Ch0_Status_Model.in_Act_Stall_Slave=int8([1, 0, 1, 1, 1, 1, 1, 1,1]); */ + for (i = 0; i < 9; i++) { + Actuator_Ch0_Status_Model.in_CPOS_ALL[i] = b[i]; + Actuator_Ch0_Status_Model.in_Act_Stall_Slave[i] = c[i]; + } + + /* : Actuator_Ch0_Status_Model.Busy =uint8(0); */ + Actuator_Ch0_Status_Model.Busy = 0U; + + /* : Actuator_Ch0_Status_Model.Error_Connect=uint8(0); */ + Actuator_Ch0_Status_Model.Error_Connect = 0U; + + /* : t_now = uint32(13000); */ + rtDW.t_now = 13000U; + } +} + +/* Function for Test Sequence: '/Test Sequence' */ +static void step_15(void) +{ + int32_t i; + static const int8_t b[9] = { 3, 2, 10, 50, 50, 100, 45, 7, 25 }; + + /* : sf_internal_predicateOutput = after(1, sec); */ + if (rtDW.temporalCounter_i1 >= 1U) { + rtDW.temporalCounter_i1 = 0U; + rtDW.is_c371_HVAC_model = IN_step_16; + + /* : Actuator_Ch0_Status_Model.Busy =uint8(0); */ + Actuator_Ch0_Status_Model.Busy = 0U; + + /* : Actuator_Ch0_Status_Model.Error_Connect=uint8(0); */ + Actuator_Ch0_Status_Model.Error_Connect = 0U; + + /* : t_now = uint32(15000); */ + rtDW.t_now = 15000U; + } else { + /* : Actuator_Ch0_Status_Model.in_CPOS_ALL =int16([3, 2, 10, 50, 50, 100, 45, 7, 25]); */ + /* : Actuator_Ch0_Status_Model.in_Act_Stall_Slave=int8([1, 1, 1, 1, 1, 1, 1, 1,1]); */ + for (i = 0; i < 9; i++) { + Actuator_Ch0_Status_Model.in_CPOS_ALL[i] = b[i]; + Actuator_Ch0_Status_Model.in_Act_Stall_Slave[i] = 1; + } + + /* : Actuator_Ch0_Status_Model.Busy =uint8(0); */ + Actuator_Ch0_Status_Model.Busy = 0U; + + /* : Actuator_Ch0_Status_Model.Error_Connect=uint8(0); */ + Actuator_Ch0_Status_Model.Error_Connect = 0U; + + /* : t_now = uint32(14000); */ + rtDW.t_now = 14000U; + } +} + +/* Function for Test Sequence: '/Test Sequence' */ +static void step_16(void) +{ + /* : sf_internal_predicateOutput = after(1, sec); */ + if (rtDW.temporalCounter_i1 >= 1U) { + rtDW.temporalCounter_i1 = 0U; + rtDW.is_c371_HVAC_model = IN_step_17; + + /* : Actuator_Ch0_Status_Model.Busy =uint8(0); */ + Actuator_Ch0_Status_Model.Busy = 0U; + + /* : Actuator_Ch0_Status_Model.Error_Connect=uint8(0); */ + Actuator_Ch0_Status_Model.Error_Connect = 0U; + + /* : t_now = uint32(16000); */ + rtDW.t_now = 16000U; + } else { + /* : Actuator_Ch0_Status_Model.Busy =uint8(0); */ + Actuator_Ch0_Status_Model.Busy = 0U; + + /* : Actuator_Ch0_Status_Model.Error_Connect=uint8(0); */ + Actuator_Ch0_Status_Model.Error_Connect = 0U; + + /* : t_now = uint32(15000); */ + rtDW.t_now = 15000U; + } +} + +/* Function for Test Sequence: '/Test Sequence' */ +static void step_17(void) +{ + /* : sf_internal_predicateOutput = after(1, sec); */ + if (rtDW.temporalCounter_i1 >= 1U) { + rtDW.temporalCounter_i1 = 0U; + rtDW.is_c371_HVAC_model = IN_step_18; + + /* : Actuator_Ch0_Status_Model.Busy =uint8(1); */ + Actuator_Ch0_Status_Model.Busy = 1U; + + /* : Actuator_Ch0_Status_Model.Error_Connect=uint8(0); */ + Actuator_Ch0_Status_Model.Error_Connect = 0U; + + /* : t_now = uint32(17000); */ + rtDW.t_now = 17000U; + } else { + /* : Actuator_Ch0_Status_Model.Busy =uint8(0); */ + Actuator_Ch0_Status_Model.Busy = 0U; + + /* : Actuator_Ch0_Status_Model.Error_Connect=uint8(0); */ + Actuator_Ch0_Status_Model.Error_Connect = 0U; + + /* : t_now = uint32(16000); */ + rtDW.t_now = 16000U; + } +} + +/* Function for Test Sequence: '/Test Sequence' */ +static void step_18(void) +{ + int32_t i; + static const int16_t b[9] = { 1050, 1252, 1200, 1415, 1500, 1500, 1435, 5000, + 1200 }; + + static const int8_t c[9] = { 1, 1, 0, 0, 1, 0, 1, 1, 1 }; + + /* : sf_internal_predicateOutput = after(1, sec); */ + if (rtDW.temporalCounter_i1 >= 1U) { + rtDW.temporalCounter_i1 = 0U; + rtDW.is_c371_HVAC_model = IN_step_19; + + /* : Actuator_Ch0_Status_Model.in_CPOS_ALL =int16([1050, 1252, 1200, 1415, 1500,1500,1435, 5000,1200]); */ + /* : Actuator_Ch0_Status_Model.in_Act_Stall_Slave=int8([1, 1, 0,0 1, 0, 1, 1,1]); */ + for (i = 0; i < 9; i++) { + Actuator_Ch0_Status_Model.in_CPOS_ALL[i] = b[i]; + Actuator_Ch0_Status_Model.in_Act_Stall_Slave[i] = c[i]; + } + + /* : Actuator_Ch0_Status_Model.Busy =uint8(1); */ + Actuator_Ch0_Status_Model.Busy = 1U; + + /* : Actuator_Ch0_Status_Model.Error_Connect=uint8(0); */ + Actuator_Ch0_Status_Model.Error_Connect = 0U; + + /* : t_now = uint32(18000); */ + rtDW.t_now = 18000U; + } else { + /* : Actuator_Ch0_Status_Model.Busy =uint8(1); */ + Actuator_Ch0_Status_Model.Busy = 1U; + + /* : Actuator_Ch0_Status_Model.Error_Connect=uint8(0); */ + Actuator_Ch0_Status_Model.Error_Connect = 0U; + + /* : t_now = uint32(17000); */ + rtDW.t_now = 17000U; + } +} + +/* Function for Test Sequence: '/Test Sequence' */ +static void step_19(void) +{ + int32_t i; + static const int16_t b[9] = { 1050, 1252, 1200, 1415, 1500, 1500, 1435, 5000, + 1200 }; + + static const int8_t c[9] = { 1, 1, 0, 0, 1, 0, 1, 1, 1 }; + + static const int8_t d[9] = { 1, 1, 1, 1, 1, 0, 1, 1, 1 }; + + /* : sf_internal_predicateOutput = after(1, sec); */ + if (rtDW.temporalCounter_i1 >= 1U) { + rtDW.temporalCounter_i1 = 0U; + rtDW.is_c371_HVAC_model = IN_step_20; + + /* : Actuator_Ch0_Status_Model.in_CPOS_ALL =int16([1050, 1252, 1200, 1415, 1500,1500,1435, 5000,1200]); */ + /* : Actuator_Ch0_Status_Model.in_Act_Stall_Slave=int8([1, 1, 1,1 1, 0, 1, 1,1]); */ + for (i = 0; i < 9; i++) { + Actuator_Ch0_Status_Model.in_CPOS_ALL[i] = b[i]; + Actuator_Ch0_Status_Model.in_Act_Stall_Slave[i] = d[i]; + } + + /* : Actuator_Ch0_Status_Model.Busy =uint8(0); */ + Actuator_Ch0_Status_Model.Busy = 0U; + + /* : Actuator_Ch0_Status_Model.Error_Connect=uint8(0); */ + Actuator_Ch0_Status_Model.Error_Connect = 0U; + + /* : t_now = uint32(19000); */ + rtDW.t_now = 19000U; + } else { + /* : Actuator_Ch0_Status_Model.in_CPOS_ALL =int16([1050, 1252, 1200, 1415, 1500,1500,1435, 5000,1200]); */ + /* : Actuator_Ch0_Status_Model.in_Act_Stall_Slave=int8([1, 1, 0,0 1, 0, 1, 1,1]); */ + for (i = 0; i < 9; i++) { + Actuator_Ch0_Status_Model.in_CPOS_ALL[i] = b[i]; + Actuator_Ch0_Status_Model.in_Act_Stall_Slave[i] = c[i]; + } + + /* : Actuator_Ch0_Status_Model.Busy =uint8(1); */ + Actuator_Ch0_Status_Model.Busy = 1U; + + /* : Actuator_Ch0_Status_Model.Error_Connect=uint8(0); */ + Actuator_Ch0_Status_Model.Error_Connect = 0U; + + /* : t_now = uint32(18000); */ + rtDW.t_now = 18000U; + } +} + +/* Function for Test Sequence: '/Test Sequence' */ +static void step_2(void) +{ + /* : sf_internal_predicateOutput = after(1, sec); */ + if (rtDW.temporalCounter_i1 >= 1U) { + rtDW.temporalCounter_i1 = 0U; + rtDW.is_c371_HVAC_model = IN_step_3; + + /* : Actuator_Ch0_Status_Model.Busy =uint8(1); */ + Actuator_Ch0_Status_Model.Busy = 1U; + + /* : Actuator_Ch0_Status_Model.Error_Connect=uint8(0); */ + Actuator_Ch0_Status_Model.Error_Connect = 0U; + + /* : t_now = uint32(2000); */ + rtDW.t_now = 2000U; + } else { + /* : ADC_Data_Model.Sensor_Ambient_Temp = uint16(800); */ + rtDW.ADC_Data_Model.Sensor_Ambient_Temp = 800U; + + /* : Actuator_Ch0_Status_Model.Busy =uint8(0); */ + Actuator_Ch0_Status_Model.Busy = 0U; + + /* : Actuator_Ch0_Status_Model.Error_Connect=uint8(0); */ + Actuator_Ch0_Status_Model.Error_Connect = 0U; + + /* : t_now = uint32(1000); */ + rtDW.t_now = 1000U; + } +} + +/* Function for Test Sequence: '/Test Sequence' */ +static void step_20(void) +{ + int32_t i; + static const int16_t b[9] = { 1050, 1252, 1200, 1415, 1500, 1500, 1435, 5000, + 1200 }; + + static const int8_t c[9] = { 1, 1, 1, 1, 1, 0, 1, 1, 1 }; + + /* : sf_internal_predicateOutput = after(1, sec); */ + if (rtDW.temporalCounter_i1 >= 1U) { + rtDW.temporalCounter_i1 = 0U; + rtDW.is_c371_HVAC_model = IN_step_21; + + /* : Actuator_Ch0_Status_Model.in_CPOS_ALL =int16([1050, 1252, 1200, 1415, 1500,1500,1435, 5000,1200]); */ + /* : Actuator_Ch0_Status_Model.in_Act_Stall_Slave=int8([1, 1, 1,1 1, 1, 1, 1,1]); */ + for (i = 0; i < 9; i++) { + Actuator_Ch0_Status_Model.in_CPOS_ALL[i] = b[i]; + Actuator_Ch0_Status_Model.in_Act_Stall_Slave[i] = 1; + } + + /* : Actuator_Ch0_Status_Model.Busy =uint8(0); */ + Actuator_Ch0_Status_Model.Busy = 0U; + + /* : Actuator_Ch0_Status_Model.Error_Connect=uint8(0); */ + Actuator_Ch0_Status_Model.Error_Connect = 0U; + + /* : t_now = uint32(20000); */ + rtDW.t_now = 20000U; + } else { + /* : Actuator_Ch0_Status_Model.in_CPOS_ALL =int16([1050, 1252, 1200, 1415, 1500,1500,1435, 5000,1200]); */ + /* : Actuator_Ch0_Status_Model.in_Act_Stall_Slave=int8([1, 1, 1,1 1, 0, 1, 1,1]); */ + for (i = 0; i < 9; i++) { + Actuator_Ch0_Status_Model.in_CPOS_ALL[i] = b[i]; + Actuator_Ch0_Status_Model.in_Act_Stall_Slave[i] = c[i]; + } + + /* : Actuator_Ch0_Status_Model.Busy =uint8(0); */ + Actuator_Ch0_Status_Model.Busy = 0U; + + /* : Actuator_Ch0_Status_Model.Error_Connect=uint8(0); */ + Actuator_Ch0_Status_Model.Error_Connect = 0U; + + /* : t_now = uint32(19000); */ + rtDW.t_now = 19000U; + } +} + +/* Function for Test Sequence: '/Test Sequence' */ +static void step_21(void) +{ + int32_t i; + static const int16_t b[9] = { 1050, 1252, 1200, 1415, 1500, 1500, 1435, 5000, + 1200 }; + + /* : sf_internal_predicateOutput = after(1, sec); */ + if (rtDW.temporalCounter_i1 >= 1U) { + rtDW.temporalCounter_i1 = 0U; + rtDW.is_c371_HVAC_model = IN_step_22; + + /* : Actuator_Ch0_Status_Model.Busy =uint8(0); */ + Actuator_Ch0_Status_Model.Busy = 0U; + + /* : Actuator_Ch0_Status_Model.Error_Connect=uint8(0); */ + Actuator_Ch0_Status_Model.Error_Connect = 0U; + + /* : t_now = uint32(21000); */ + rtDW.t_now = 21000U; + } else { + /* : Actuator_Ch0_Status_Model.in_CPOS_ALL =int16([1050, 1252, 1200, 1415, 1500,1500,1435, 5000,1200]); */ + /* : Actuator_Ch0_Status_Model.in_Act_Stall_Slave=int8([1, 1, 1,1 1, 1, 1, 1,1]); */ + for (i = 0; i < 9; i++) { + Actuator_Ch0_Status_Model.in_CPOS_ALL[i] = b[i]; + Actuator_Ch0_Status_Model.in_Act_Stall_Slave[i] = 1; + } + + /* : Actuator_Ch0_Status_Model.Busy =uint8(0); */ + Actuator_Ch0_Status_Model.Busy = 0U; + + /* : Actuator_Ch0_Status_Model.Error_Connect=uint8(0); */ + Actuator_Ch0_Status_Model.Error_Connect = 0U; + + /* : t_now = uint32(20000); */ + rtDW.t_now = 20000U; + } +} + +/* Function for Test Sequence: '/Test Sequence' */ +static void step_26(void) +{ + int32_t i; + static const int8_t b[9] = { 3, 2, 10, 50, 50, 100, 45, 7, 25 }; + + /* : sf_internal_predicateOutput = after(1, sec); */ + if (rtDW.temporalCounter_i1 >= 1U) { + rtDW.temporalCounter_i1 = 0U; + rtDW.is_c371_HVAC_model = IN_step_27; + + /* : Actuator_Ch0_Status_Model.in_CPOS_ALL =int16([3, 2, 10, 50, 50, 100, 45, 7, 25]); */ + /* : Actuator_Ch0_Status_Model.in_Act_Stall_Slave=int8([0, 0, 0,0 0, 0, 0, 0,0]); */ + for (i = 0; i < 9; i++) { + Actuator_Ch0_Status_Model.in_CPOS_ALL[i] = b[i]; + Actuator_Ch0_Status_Model.in_Act_Stall_Slave[i] = 0; + } + + /* : t_now = uint32(22000); */ + rtDW.t_now = 22000U; + } else { + /* : Actuator_Ch0_Status_Model.in_CPOS_ALL =int16([3, 2, 10, 50, 50, 100, 45, 7, 25]); */ + /* : Actuator_Ch0_Status_Model.in_Act_Stall_Slave=int8([0, 0, 0,0 0, 0, 0, 0,0]); */ + for (i = 0; i < 9; i++) { + Actuator_Ch0_Status_Model.in_CPOS_ALL[i] = b[i]; + Actuator_Ch0_Status_Model.in_Act_Stall_Slave[i] = 0; + } + + /* : t_now = uint32(22000); */ + rtDW.t_now = 22000U; + } +} + +/* Function for Test Sequence: '/Test Sequence' */ +static void step_27(void) +{ + int32_t i; + static const int8_t b[9] = { 3, 2, 10, 50, 50, 100, 45, 7, 25 }; + + static const int8_t c[9] = { 3, 2, 10, 50, 100, 100, 45, 7, 25 }; + + /* : sf_internal_predicateOutput = after(1, sec); */ + if (rtDW.temporalCounter_i1 >= 1U) { + rtDW.temporalCounter_i1 = 0U; + rtDW.is_c371_HVAC_model = IN_step_28; + + /* : Actuator_Ch0_Status_Model.in_CPOS_ALL =int16([3, 2, 10, 50, 100, 100, 45, 7, 25]); */ + /* : Actuator_Ch0_Status_Model.in_Act_Stall_Slave=int8([0, 0, 0,0 0, 0, 0, 0,0]); */ + for (i = 0; i < 9; i++) { + Actuator_Ch0_Status_Model.in_CPOS_ALL[i] = c[i]; + Actuator_Ch0_Status_Model.in_Act_Stall_Slave[i] = 0; + } + + /* : t_now = uint32(22000); */ + rtDW.t_now = 22000U; + } else { + /* : Actuator_Ch0_Status_Model.in_CPOS_ALL =int16([3, 2, 10, 50, 50, 100, 45, 7, 25]); */ + /* : Actuator_Ch0_Status_Model.in_Act_Stall_Slave=int8([0, 0, 0,0 0, 0, 0, 0,0]); */ + for (i = 0; i < 9; i++) { + Actuator_Ch0_Status_Model.in_CPOS_ALL[i] = b[i]; + Actuator_Ch0_Status_Model.in_Act_Stall_Slave[i] = 0; + } + + /* : t_now = uint32(22000); */ + rtDW.t_now = 22000U; + } +} + +/* Function for Test Sequence: '/Test Sequence' */ +static void step_28(void) +{ + int32_t i; + static const int8_t b[9] = { 3, 2, 10, 50, 100, 100, 45, 7, 25 }; + + static const int16_t c[9] = { 0, 54, 153, 756, 500, 2, 5, 7, 2323 }; + + static const int8_t d[9] = { 0, 0, 0, 0, 1, 0, 0, 0, 0 }; + + /* : sf_internal_predicateOutput = after(1, sec); */ + if (rtDW.temporalCounter_i1 >= 1U) { + rtDW.temporalCounter_i1 = 0U; + rtDW.is_c371_HVAC_model = IN_step_29; + + /* : Actuator_Ch0_Status_Model.in_CPOS_ALL =int16([0, 54, 153, 756, 500, 2, 5, 7, 2323]); */ + /* : Actuator_Ch0_Status_Model.in_Act_Stall_Slave=int8([0, 0, 0,0 1, 0, 0, 0,0]); */ + for (i = 0; i < 9; i++) { + Actuator_Ch0_Status_Model.in_CPOS_ALL[i] = c[i]; + Actuator_Ch0_Status_Model.in_Act_Stall_Slave[i] = d[i]; + } + + /* : t_now = uint32(22000); */ + rtDW.t_now = 22000U; + } else { + /* : Actuator_Ch0_Status_Model.in_CPOS_ALL =int16([3, 2, 10, 50, 100, 100, 45, 7, 25]); */ + /* : Actuator_Ch0_Status_Model.in_Act_Stall_Slave=int8([0, 0, 0,0 0, 0, 0, 0,0]); */ + for (i = 0; i < 9; i++) { + Actuator_Ch0_Status_Model.in_CPOS_ALL[i] = b[i]; + Actuator_Ch0_Status_Model.in_Act_Stall_Slave[i] = 0; + } + + /* : t_now = uint32(22000); */ + rtDW.t_now = 22000U; + } +} + +/* Function for Test Sequence: '/Test Sequence' */ +static void step_29(void) +{ + int32_t i; + static const int16_t b[9] = { 0, 54, 153, 756, 500, 2, 5, 7, 2323 }; + + static const int8_t c[9] = { 0, 0, 0, 0, 1, 0, 0, 0, 0 }; + + static const int16_t d[9] = { 1050, 1252, 1200, 1415, 1500, 1500, 1435, 5000, + 1200 }; + + /* : sf_internal_predicateOutput = after(1, sec); */ + if (rtDW.temporalCounter_i1 >= 1U) { + rtDW.temporalCounter_i1 = 0U; + rtDW.is_c371_HVAC_model = IN_step_30; + + /* : Actuator_Ch0_Status_Model.in_CPOS_ALL =int16([1050, 1252, 1200, 1415, 1500,1500,1435, 5000,1200]); */ + /* : Actuator_Ch0_Status_Model.in_Act_Stall_Slave=int8([0, 0, 0,0 0, 0, 0, 0,0]); */ + for (i = 0; i < 9; i++) { + Actuator_Ch0_Status_Model.in_CPOS_ALL[i] = d[i]; + Actuator_Ch0_Status_Model.in_Act_Stall_Slave[i] = 0; + } + + /* : t_now = uint32(22000); */ + rtDW.t_now = 22000U; + } else { + /* : Actuator_Ch0_Status_Model.in_CPOS_ALL =int16([0, 54, 153, 756, 500, 2, 5, 7, 2323]); */ + /* : Actuator_Ch0_Status_Model.in_Act_Stall_Slave=int8([0, 0, 0,0 1, 0, 0, 0,0]); */ + for (i = 0; i < 9; i++) { + Actuator_Ch0_Status_Model.in_CPOS_ALL[i] = b[i]; + Actuator_Ch0_Status_Model.in_Act_Stall_Slave[i] = c[i]; + } + + /* : t_now = uint32(22000); */ + rtDW.t_now = 22000U; + } +} + +/* Function for Test Sequence: '/Test Sequence' */ +static void step_3(void) +{ + /* : sf_internal_predicateOutput = after(1, sec); */ + if (rtDW.temporalCounter_i1 >= 1U) { + rtDW.temporalCounter_i1 = 0U; + rtDW.is_c371_HVAC_model = IN_step_4; + + /* : Actuator_Ch0_Status_Model.Busy =uint8(0); */ + Actuator_Ch0_Status_Model.Busy = 0U; + + /* : Actuator_Ch0_Status_Model.Error_Connect=uint8(0); */ + Actuator_Ch0_Status_Model.Error_Connect = 0U; + + /* : t_now = uint32(3000); */ + rtDW.t_now = 3000U; + } else { + /* : Actuator_Ch0_Status_Model.Busy =uint8(1); */ + Actuator_Ch0_Status_Model.Busy = 1U; + + /* : Actuator_Ch0_Status_Model.Error_Connect=uint8(0); */ + Actuator_Ch0_Status_Model.Error_Connect = 0U; + + /* : t_now = uint32(2000); */ + rtDW.t_now = 2000U; + } +} + +/* Function for Test Sequence: '/Test Sequence' */ +static void step_30(void) +{ + int32_t i; + static const int16_t b[9] = { 1050, 1252, 1200, 1415, 1500, 1500, 1435, 5000, + 1200 }; + + static const int8_t c[9] = { 0, 0, 0, 0, 1, 0, 0, 0, 0 }; + + /* : sf_internal_predicateOutput = after(1, sec); */ + if (rtDW.temporalCounter_i1 >= 1U) { + rtDW.temporalCounter_i1 = 0U; + rtDW.is_c371_HVAC_model = IN_step_31; + + /* : Actuator_Ch0_Status_Model.in_CPOS_ALL =int16([1050, 1252, 1200, 1415, 1500,1500,1435, 5000,1200]); */ + /* : Actuator_Ch0_Status_Model.in_Act_Stall_Slave=int8([0, 0, 0,0 1, 0, 0, 0,0]); */ + for (i = 0; i < 9; i++) { + Actuator_Ch0_Status_Model.in_CPOS_ALL[i] = b[i]; + Actuator_Ch0_Status_Model.in_Act_Stall_Slave[i] = c[i]; + } + + /* : t_now = uint32(22000); */ + rtDW.t_now = 22000U; + } else { + /* : Actuator_Ch0_Status_Model.in_CPOS_ALL =int16([1050, 1252, 1200, 1415, 1500,1500,1435, 5000,1200]); */ + /* : Actuator_Ch0_Status_Model.in_Act_Stall_Slave=int8([0, 0, 0,0 0, 0, 0, 0,0]); */ + for (i = 0; i < 9; i++) { + Actuator_Ch0_Status_Model.in_CPOS_ALL[i] = b[i]; + Actuator_Ch0_Status_Model.in_Act_Stall_Slave[i] = 0; + } + + /* : t_now = uint32(22000); */ + rtDW.t_now = 22000U; + } +} + +/* Function for Test Sequence: '/Test Sequence' */ +static void step_4(void) +{ + /* : sf_internal_predicateOutput = after(1, sec); */ + if (rtDW.temporalCounter_i1 >= 1U) { + rtDW.temporalCounter_i1 = 0U; + rtDW.is_c371_HVAC_model = IN_step_5; + + /* : Actuator_Ch0_Status_Model.Busy =uint8(0); */ + Actuator_Ch0_Status_Model.Busy = 0U; + + /* : Actuator_Ch0_Status_Model.Error_Connect=uint8(0); */ + Actuator_Ch0_Status_Model.Error_Connect = 0U; + + /* : t_now = uint32(4000); */ + rtDW.t_now = 4000U; + } else { + /* : Actuator_Ch0_Status_Model.Busy =uint8(0); */ + Actuator_Ch0_Status_Model.Busy = 0U; + + /* : Actuator_Ch0_Status_Model.Error_Connect=uint8(0); */ + Actuator_Ch0_Status_Model.Error_Connect = 0U; + + /* : t_now = uint32(3000); */ + rtDW.t_now = 3000U; + } +} + +/* Function for Test Sequence: '/Test Sequence' */ +static void step_5(void) +{ + /* : sf_internal_predicateOutput = after(1, sec); */ + if (rtDW.temporalCounter_i1 >= 1U) { + rtDW.temporalCounter_i1 = 0U; + rtDW.is_c371_HVAC_model = IN_step_6; + + /* : Actuator_Ch0_Status_Model.Busy =uint8(1); */ + Actuator_Ch0_Status_Model.Busy = 1U; + + /* : Actuator_Ch0_Status_Model.Error_Connect=uint8(0); */ + Actuator_Ch0_Status_Model.Error_Connect = 0U; + + /* : t_now = uint32(5000); */ + rtDW.t_now = 5000U; + } else { + /* : Actuator_Ch0_Status_Model.Busy =uint8(0); */ + Actuator_Ch0_Status_Model.Busy = 0U; + + /* : Actuator_Ch0_Status_Model.Error_Connect=uint8(0); */ + Actuator_Ch0_Status_Model.Error_Connect = 0U; + + /* : t_now = uint32(4000); */ + rtDW.t_now = 4000U; + } +} + +/* Function for Test Sequence: '/Test Sequence' */ +static void step_6(void) +{ + /* : sf_internal_predicateOutput = after(1, sec); */ + if (rtDW.temporalCounter_i1 >= 1U) { + rtDW.temporalCounter_i1 = 0U; + rtDW.is_c371_HVAC_model = IN_step_7; + + /* : Actuator_Ch0_Status_Model.Busy =uint8(1); */ + Actuator_Ch0_Status_Model.Busy = 1U; + + /* : Actuator_Ch0_Status_Model.Error_Connect=uint8(0); */ + Actuator_Ch0_Status_Model.Error_Connect = 0U; + + /* : t_now = uint32(6000); */ + rtDW.t_now = 6000U; + } else { + /* : Actuator_Ch0_Status_Model.Busy =uint8(1); */ + Actuator_Ch0_Status_Model.Busy = 1U; + + /* : Actuator_Ch0_Status_Model.Error_Connect=uint8(0); */ + Actuator_Ch0_Status_Model.Error_Connect = 0U; + + /* : t_now = uint32(5000); */ + rtDW.t_now = 5000U; + } +} + +/* Function for Test Sequence: '/Test Sequence' */ +static void step_7(void) +{ + /* : sf_internal_predicateOutput = after(1, sec); */ + if (rtDW.temporalCounter_i1 >= 1U) { + rtDW.temporalCounter_i1 = 0U; + rtDW.is_c371_HVAC_model = IN_step_8; + + /* : Actuator_Ch0_Status_Model.Busy =uint8(1); */ + Actuator_Ch0_Status_Model.Busy = 1U; + + /* : Actuator_Ch0_Status_Model.Error_Connect=uint8(0); */ + Actuator_Ch0_Status_Model.Error_Connect = 0U; + + /* : t_now = uint32(7000); */ + rtDW.t_now = 7000U; + } else { + /* : Actuator_Ch0_Status_Model.Busy =uint8(1); */ + Actuator_Ch0_Status_Model.Busy = 1U; + + /* : Actuator_Ch0_Status_Model.Error_Connect=uint8(0); */ + Actuator_Ch0_Status_Model.Error_Connect = 0U; + + /* : t_now = uint32(6000); */ + rtDW.t_now = 6000U; + } +} + +/* Function for Test Sequence: '/Test Sequence' */ +static void step_8(void) +{ + /* : sf_internal_predicateOutput = after(1, sec); */ + if (rtDW.temporalCounter_i1 >= 1U) { + rtDW.temporalCounter_i1 = 0U; + rtDW.is_c371_HVAC_model = IN_step_9; + + /* : Actuator_Ch0_Status_Model.Busy =uint8(1); */ + Actuator_Ch0_Status_Model.Busy = 1U; + + /* : Actuator_Ch0_Status_Model.Error_Connect=uint8(0); */ + Actuator_Ch0_Status_Model.Error_Connect = 0U; + + /* : t_now = uint32(8000); */ + rtDW.t_now = 8000U; + } else { + /* : Actuator_Ch0_Status_Model.Busy =uint8(1); */ + Actuator_Ch0_Status_Model.Busy = 1U; + + /* : Actuator_Ch0_Status_Model.Error_Connect=uint8(0); */ + Actuator_Ch0_Status_Model.Error_Connect = 0U; + + /* : t_now = uint32(7000); */ + rtDW.t_now = 7000U; + } } /* Model step function */ @@ -5079,10 +5770,10 @@ void HVAC_model_step(void) double rtb_Divide3; int32_t i; int32_t tmp_0; - uint32_t rtb_dt_du; - uint32_t rtb_dt_h; + uint32_t rtb_dt_b2; + uint32_t rtb_dt_lu; int16_t tmp[6]; - int16_t rtb_out_nh[2]; + int16_t rtb_out_js[2]; int16_t AMB; int16_t Eva_F; int16_t Eva_R; @@ -5093,9 +5784,9 @@ void HVAC_model_step(void) int16_t Pressure; uint16_t Merge[9]; uint16_t rtb_vals_m[9]; - uint16_t rtb_out_fw[2]; + uint16_t rtb_out_en[2]; uint16_t Blower_FR; - uint16_t rtb_out_jk; + uint16_t rtb_out_flm; int8_t rtb_Switch_hx; uint8_t rtb_get_modes_for_levels[78]; uint8_t Autodefog; @@ -5105,16 +5796,20 @@ void HVAC_model_step(void) uint8_t Valve_2_way; uint8_t rtb_Gain2; uint8_t rtb_Gain_l; - uint8_t rtb_u_pe; - bool rtb_RelationalOperator_htm[9]; + uint8_t rtb_u_cuz; + bool rtb_LogicalOperator3_c[9]; + bool rtb_Compare; + bool rtb_Compare_b; + bool rtb_Compare_bj; + bool rtb_Compare_cm4; + bool rtb_Compare_g5; + bool rtb_Compare_h; + bool rtb_Compare_hb; + bool rtb_Compare_ie; + bool rtb_Compare_jh; + bool rtb_Compare_l; + bool rtb_Compare_n2; bool rtb_FailCond; - bool rtb_FailCond_a; - bool rtb_FailCond_b; - bool rtb_FailCond_e; - bool rtb_FailCond_f; - bool rtb_FailCond_g; - bool rtb_FailCond_l; - bool rtb_FailCond_mg; bool rtb_LogicalOperator1; bool rtb_LogicalOperator1_ca; bool rtb_LogicalOperator1_f; @@ -5123,6 +5818,14 @@ void HVAC_model_step(void) bool rtb_LogicalOperator1_lk; bool rtb_LogicalOperator3_f3; bool rtb_LogicalOperator3_oi; + static const int16_t b[9] = { 1050, 1252, 1200, 1415, 1500, 1500, 1435, 5000, + 1200 }; + + static const uint8_t c[9] = { 3U, 2U, 10U, 150U, 150U, 100U, 45U, 7U, 25U }; + + static const int8_t d[9] = { 0, 0, 0, 0, 1, 0, 0, 0, 0 }; + + static const int8_t e[9] = { 3, 2, 10, 50, 50, 100, 45, 7, 25 }; /* Product: '/Divide1' incorporates: * Constant: '/Constant' @@ -5132,13 +5835,18 @@ void HVAC_model_step(void) */ rtb_Divide1 = (double)rtDW.ADC_Data_Model.Sensor_Ambient_Temp / 4095.0 * 5.0; - /* Logic: '/Logical Operator' incorporates: + /* RelationalOperator: '/Compare' incorporates: * Constant: '/Constant' - * Constant: '/Constant' - * RelationalOperator: '/Compare' - * RelationalOperator: '/Compare' */ - rtb_FailCond = ((rtb_Divide1 < 0.1) || (rtb_Divide1 > 4.9)); + rtb_Compare = (rtb_Divide1 < 0.1); + + /* RelationalOperator: '/Compare' incorporates: + * Constant: '/Constant' + */ + rtb_Compare_ie = (rtb_Divide1 > 4.9); + + /* Logic: '/Logical Operator' */ + rtb_FailCond = (rtb_Compare || rtb_Compare_ie); /* Logic: '/Logical Operator1' incorporates: * Constant: '/Constant' @@ -5160,11 +5868,39 @@ void HVAC_model_step(void) AMB = 100; } else { AMB = look1_iu16tdIs16_binlcs(rtDW.ADC_Data_Model.Sensor_Ambient_Temp, - rtConstP.pooled32, rtConstP.uDLookupTable_tableData, 1023U); + rtConstP.pooled31, rtConstP.uDLookupTable_tableData, 1023U); } /* End of Switch: '/Switch' */ + /* DataStoreWrite: '/Data Store Write1' incorporates: + * DataTypeConversion: '/Data Type Conversion' + */ + rtDW.dtc_state_error_model[10] = rtb_LogicalOperator1; + + /* Switch: '/Switch' incorporates: + * DataTypeConversion: '/Data Type Conversion' + * Switch: '/Switch1' + */ + if (rtb_LogicalOperator1) { + /* DataStoreWrite: '/Data Store Write' incorporates: + * DataTypeConversion: '/Data Type Conversion1' + */ + rtDW.dtc_state_error_model[11] = rtb_Compare; + + /* DataStoreWrite: '/Data Store Write1' incorporates: + * DataTypeConversion: '/Data Type Conversion2' + */ + rtDW.dtc_state_error_model[10] = rtb_Compare_ie; + } else { + /* DataStoreWrite: '/Data Store Write' incorporates: + * Constant: '/Constant' + */ + rtDW.dtc_state_error_model[11] = 0U; + } + + /* End of Switch: '/Switch' */ + /* MATLAB Function: '/Write Ambient' incorporates: * DataStoreRead: '/Data Store Read' * DataStoreWrite: '/Data Store Write' @@ -5213,13 +5949,18 @@ void HVAC_model_step(void) */ rtb_Divide1 = (double)rtDW.ADC_Data_Model.Sensor_Evap_Temp / 4095.0 * 5.0; - /* Logic: '/Logical Operator' incorporates: + /* RelationalOperator: '/Compare' incorporates: * Constant: '/Constant' - * Constant: '/Constant' - * RelationalOperator: '/Compare' - * RelationalOperator: '/Compare' */ - rtb_FailCond_f = ((rtb_Divide1 < 0.1) || (rtb_Divide1 > 4.9)); + rtb_Compare_ie = (rtb_Divide1 < 0.1); + + /* RelationalOperator: '/Compare' incorporates: + * Constant: '/Constant' + */ + rtb_Compare_g5 = (rtb_Divide1 > 4.9); + + /* Logic: '/Logical Operator' */ + rtb_Compare = (rtb_Compare_ie || rtb_Compare_g5); /* Logic: '/Logical Operator1' incorporates: * Constant: '/Constant' @@ -5228,7 +5969,7 @@ void HVAC_model_step(void) * Sum: '/Subtract' * UnitDelay: '/t_start_delay_private ' */ - rtb_LogicalOperator1_f = (rtb_FailCond_f && (rtDW.t_now - + rtb_LogicalOperator1_f = (rtb_Compare && (rtDW.t_now - rtDW.t_start_delay_private_DSTATE_p >= 3000U)); /* Switch: '/Switch' incorporates: @@ -5241,11 +5982,39 @@ void HVAC_model_step(void) Eva_F = -100; } else { Eva_F = look1_iu16tdIs16_binlcs(rtDW.ADC_Data_Model.Sensor_Evap_Temp, - rtConstP.pooled32, rtConstP.pooled3, 1023U); + rtConstP.pooled31, rtConstP.pooled2, 1023U); } /* End of Switch: '/Switch' */ + /* DataStoreWrite: '/Data Store Write1' incorporates: + * DataTypeConversion: '/Data Type Conversion' + */ + rtDW.dtc_state_error_model[12] = rtb_LogicalOperator1_f; + + /* Switch: '/Switch' incorporates: + * DataTypeConversion: '/Data Type Conversion' + * Switch: '/Switch1' + */ + if (rtb_LogicalOperator1_f) { + /* DataStoreWrite: '/Data Store Write' incorporates: + * DataTypeConversion: '/Data Type Conversion1' + */ + rtDW.dtc_state_error_model[13] = rtb_Compare_ie; + + /* DataStoreWrite: '/Data Store Write1' incorporates: + * DataTypeConversion: '/Data Type Conversion2' + */ + rtDW.dtc_state_error_model[12] = rtb_Compare_g5; + } else { + /* DataStoreWrite: '/Data Store Write' incorporates: + * Constant: '/Constant' + */ + rtDW.dtc_state_error_model[13] = 0U; + } + + /* End of Switch: '/Switch' */ + /* MATLAB Function: '/Write ERROR' incorporates: * DataStoreRead: '/Data Store Read' */ @@ -5280,7 +6049,7 @@ void HVAC_model_step(void) * UnitDelay: '/Cond_prev_private ' * UnitDelay: '/t_start_delay_private ' */ - if (rtb_FailCond_f && (!rtDW.Cond_prev_private_DSTATE_h)) { + if (rtb_Compare && (!rtDW.Cond_prev_private_DSTATE_h)) { rtDW.t_start_delay_private_DSTATE_p = rtDW.t_now; } @@ -5294,13 +6063,18 @@ void HVAC_model_step(void) */ rtb_Divide1 = (double)rtDW.ADC_Data_Model.Sensor_Rear_Evap_Temp / 4095.0 * 5.0; - /* Logic: '/Logical Operator' incorporates: + /* RelationalOperator: '/Compare' incorporates: * Constant: '/Constant' - * Constant: '/Constant' - * RelationalOperator: '/Compare' - * RelationalOperator: '/Compare' */ - rtb_FailCond_g = ((rtb_Divide1 < 0.1) || (rtb_Divide1 > 4.9)); + rtb_Compare_g5 = (rtb_Divide1 < 0.1); + + /* RelationalOperator: '/Compare' incorporates: + * Constant: '/Constant' + */ + rtb_Compare_cm4 = (rtb_Divide1 > 4.9); + + /* Logic: '/Logical Operator' */ + rtb_Compare_ie = (rtb_Compare_g5 || rtb_Compare_cm4); /* Logic: '/Logical Operator1' incorporates: * Constant: '/Constant' @@ -5309,7 +6083,7 @@ void HVAC_model_step(void) * Sum: '/Subtract' * UnitDelay: '/t_start_delay_private ' */ - rtb_LogicalOperator1_k = (rtb_FailCond_g && (rtDW.t_now - + rtb_LogicalOperator1_k = (rtb_Compare_ie && (rtDW.t_now - rtDW.t_start_delay_private_DSTATE_pk >= 3000U)); /* Switch: '/Switch' incorporates: @@ -5322,11 +6096,39 @@ void HVAC_model_step(void) Eva_R = -100; } else { Eva_R = look1_iu16tdIs16_binlcs(rtDW.ADC_Data_Model.Sensor_Rear_Evap_Temp, - rtConstP.pooled32, rtConstP.pooled3, 1023U); + rtConstP.pooled31, rtConstP.pooled2, 1023U); } /* End of Switch: '/Switch' */ + /* DataStoreWrite: '/Data Store Write1' incorporates: + * DataTypeConversion: '/Data Type Conversion' + */ + rtDW.dtc_state_error_model[14] = rtb_LogicalOperator1_k; + + /* Switch: '/Switch' incorporates: + * DataTypeConversion: '/Data Type Conversion' + * Switch: '/Switch1' + */ + if (rtb_LogicalOperator1_k) { + /* DataStoreWrite: '/Data Store Write' incorporates: + * DataTypeConversion: '/Data Type Conversion1' + */ + rtDW.dtc_state_error_model[15] = rtb_Compare_g5; + + /* DataStoreWrite: '/Data Store Write1' incorporates: + * DataTypeConversion: '/Data Type Conversion2' + */ + rtDW.dtc_state_error_model[14] = rtb_Compare_cm4; + } else { + /* DataStoreWrite: '/Data Store Write' incorporates: + * Constant: '/Constant' + */ + rtDW.dtc_state_error_model[15] = 0U; + } + + /* End of Switch: '/Switch' */ + /* MATLAB Function: '/Write ERROR' incorporates: * DataStoreRead: '/Data Store Read' */ @@ -5361,7 +6163,7 @@ void HVAC_model_step(void) * UnitDelay: '/Cond_prev_private ' * UnitDelay: '/t_start_delay_private ' */ - if (rtb_FailCond_g && (!rtDW.Cond_prev_private_DSTATE_i)) { + if (rtb_Compare_ie && (!rtDW.Cond_prev_private_DSTATE_i)) { rtDW.t_start_delay_private_DSTATE_pk = rtDW.t_now; } @@ -5375,13 +6177,18 @@ void HVAC_model_step(void) */ rtb_Divide1 = (double)rtDW.ADC_Data_Model.Sensor_AC_Pressure / 4095.0 * 5.0; - /* Logic: '/Logical Operator' incorporates: + /* RelationalOperator: '/Compare' incorporates: * Constant: '/Constant' - * Constant: '/Constant' - * RelationalOperator: '/Compare' - * RelationalOperator: '/Compare' */ - rtb_FailCond_mg = ((rtb_Divide1 < 0.1) || (rtb_Divide1 > 4.9)); + rtb_Compare_cm4 = (rtb_Divide1 < 0.1); + + /* RelationalOperator: '/Compare' incorporates: + * Constant: '/Constant' + */ + rtb_Compare_n2 = (rtb_Divide1 > 4.9); + + /* Logic: '/Logical Operator' */ + rtb_Compare_g5 = (rtb_Compare_cm4 || rtb_Compare_n2); /* Logic: '/Logical Operator1' incorporates: * Constant: '/Constant' @@ -5390,7 +6197,7 @@ void HVAC_model_step(void) * Sum: '/Subtract' * UnitDelay: '/t_start_delay_private ' */ - rtb_LogicalOperator1_lk = (rtb_FailCond_mg && (rtDW.t_now - + rtb_LogicalOperator1_lk = (rtb_Compare_g5 && (rtDW.t_now - rtDW.t_start_delay_private_DSTATE_e >= 3000U)); /* Switch: '/Switch' incorporates: @@ -5403,11 +6210,39 @@ void HVAC_model_step(void) Pressure = 32; } else { Pressure = look1_iu16tdIs16_binlcs(rtDW.ADC_Data_Model.Sensor_AC_Pressure, - rtConstP.pooled32, rtConstP.uDLookupTable_tableData_f, 1023U); + rtConstP.pooled31, rtConstP.uDLookupTable_tableData_f, 1023U); } /* End of Switch: '/Switch' */ + /* DataStoreWrite: '/Data Store Write1' incorporates: + * DataTypeConversion: '/Data Type Conversion' + */ + rtDW.dtc_state_error_model[51] = rtb_LogicalOperator1_lk; + + /* Switch: '/Switch' incorporates: + * DataTypeConversion: '/Data Type Conversion' + * Switch: '/Switch1' + */ + if (rtb_LogicalOperator1_lk) { + /* DataStoreWrite: '/Data Store Write' incorporates: + * DataTypeConversion: '/Data Type Conversion1' + */ + rtDW.dtc_state_error_model[50] = rtb_Compare_cm4; + + /* DataStoreWrite: '/Data Store Write1' incorporates: + * DataTypeConversion: '/Data Type Conversion2' + */ + rtDW.dtc_state_error_model[51] = rtb_Compare_n2; + } else { + /* DataStoreWrite: '/Data Store Write' incorporates: + * Constant: '/Constant' + */ + rtDW.dtc_state_error_model[50] = 0U; + } + + /* End of Switch: '/Switch' */ + /* MATLAB Function: '/Write' incorporates: * DataStoreRead: '/Data Store Read' * DataStoreWrite: '/Data Store Write' @@ -5442,7 +6277,7 @@ void HVAC_model_step(void) * UnitDelay: '/Cond_prev_private ' * UnitDelay: '/t_start_delay_private ' */ - if (rtb_FailCond_mg && (!rtDW.Cond_prev_private_DSTATE_e)) { + if (rtb_Compare_g5 && (!rtDW.Cond_prev_private_DSTATE_e)) { rtDW.t_start_delay_private_DSTATE_e = rtDW.t_now; } @@ -5456,13 +6291,18 @@ void HVAC_model_step(void) */ rtb_Divide1 = (double)rtDW.ADC_Data_Model.Sensor_Incar_Temp_FL / 4095.0 * 5.0; - /* Logic: '/Logical Operator' incorporates: + /* RelationalOperator: '/Compare' incorporates: * Constant: '/Constant' - * Constant: '/Constant' - * RelationalOperator: '/Compare' - * RelationalOperator: '/Compare' */ - rtb_FailCond_e = ((rtb_Divide1 < 0.15) || (rtb_Divide1 > 4.9)); + rtb_Compare_l = (rtb_Divide1 < 0.15); + + /* RelationalOperator: '/Compare' incorporates: + * Constant: '/Constant' + */ + rtb_Compare_b = (rtb_Divide1 > 4.9); + + /* Logic: '/Logical Operator' */ + rtb_Compare_cm4 = (rtb_Compare_l || rtb_Compare_b); /* Logic: '/Logical Operator1' incorporates: * Constant: '/Constant' @@ -5471,7 +6311,7 @@ void HVAC_model_step(void) * Sum: '/Subtract' * UnitDelay: '/t_start_delay_private ' */ - rtb_LogicalOperator1_ca = (rtb_FailCond_e && (rtDW.t_now - + rtb_LogicalOperator1_ca = (rtb_Compare_cm4 && (rtDW.t_now - rtDW.t_start_delay_private_DSTATE_b >= 3000U)); /* Switch: '/Switch' incorporates: @@ -5484,7 +6324,7 @@ void HVAC_model_step(void) Incar_FL = 200; } else { Incar_FL = look1_iu16tdIs16_binlcs(rtDW.ADC_Data_Model.Sensor_Incar_Temp_FL, - rtConstP.pooled32, rtConstP.pooled4, 1023U); + rtConstP.pooled31, rtConstP.pooled3, 1023U); } /* End of Switch: '/Switch' */ @@ -5497,13 +6337,18 @@ void HVAC_model_step(void) */ rtb_Divide3 = (double)rtDW.ADC_Data_Model.Sensor_Incar_Temp_RL / 4095.0 * 5.0; - /* Logic: '/Logical Operator2' incorporates: + /* RelationalOperator: '/Compare' incorporates: * Constant: '/Constant' - * Constant: '/Constant' - * RelationalOperator: '/Compare' - * RelationalOperator: '/Compare' */ - rtb_FailCond_a = ((rtb_Divide3 < 0.15) || (rtb_Divide3 > 4.9)); + rtb_Compare_bj = (rtb_Divide3 < 0.15); + + /* RelationalOperator: '/Compare' incorporates: + * Constant: '/Constant' + */ + rtb_Compare_hb = (rtb_Divide3 > 4.9); + + /* Logic: '/Logical Operator2' */ + rtb_Compare_n2 = (rtb_Compare_bj || rtb_Compare_hb); /* Logic: '/Logical Operator3' incorporates: * Constant: '/Constant' @@ -5512,7 +6357,7 @@ void HVAC_model_step(void) * Sum: '/Subtract' * UnitDelay: '/t_start_delay_private ' */ - rtb_LogicalOperator3_f3 = (rtb_FailCond_a && (rtDW.t_now - + rtb_LogicalOperator3_f3 = (rtb_Compare_n2 && (rtDW.t_now - rtDW.t_start_delay_private_DSTATE_j >= 3000U)); /* Switch: '/Switch1' incorporates: @@ -5525,11 +6370,67 @@ void HVAC_model_step(void) Incar_RL = 200; } else { Incar_RL = look1_iu16tdIs16_binlcs(rtDW.ADC_Data_Model.Sensor_Incar_Temp_RL, - rtConstP.pooled32, rtConstP.pooled4, 1023U); + rtConstP.pooled31, rtConstP.pooled3, 1023U); } /* End of Switch: '/Switch1' */ + /* DataStoreWrite: '/Data Store Write1' incorporates: + * DataTypeConversion: '/Data Type Conversion' + */ + rtDW.dtc_state_error_model[2] = rtb_LogicalOperator1_ca; + + /* Switch: '/Switch' incorporates: + * DataTypeConversion: '/Data Type Conversion' + * Switch: '/Switch1' + */ + if (rtb_LogicalOperator1_ca) { + /* DataStoreWrite: '/Data Store Write' incorporates: + * DataTypeConversion: '/Data Type Conversion1' + */ + rtDW.dtc_state_error_model[3] = rtb_Compare_l; + + /* DataStoreWrite: '/Data Store Write1' incorporates: + * DataTypeConversion: '/Data Type Conversion2' + */ + rtDW.dtc_state_error_model[2] = rtb_Compare_b; + } else { + /* DataStoreWrite: '/Data Store Write' incorporates: + * Constant: '/Constant' + */ + rtDW.dtc_state_error_model[3] = 0U; + } + + /* End of Switch: '/Switch' */ + + /* DataStoreWrite: '/Data Store Write1' incorporates: + * DataTypeConversion: '/Data Type Conversion' + */ + rtDW.dtc_state_error_model[6] = rtb_LogicalOperator3_f3; + + /* Switch: '/Switch' incorporates: + * DataTypeConversion: '/Data Type Conversion' + * Switch: '/Switch1' + */ + if (rtb_LogicalOperator3_f3) { + /* DataStoreWrite: '/Data Store Write' incorporates: + * DataTypeConversion: '/Data Type Conversion1' + */ + rtDW.dtc_state_error_model[7] = rtb_Compare_bj; + + /* DataStoreWrite: '/Data Store Write1' incorporates: + * DataTypeConversion: '/Data Type Conversion2' + */ + rtDW.dtc_state_error_model[6] = rtb_Compare_hb; + } else { + /* DataStoreWrite: '/Data Store Write' incorporates: + * Constant: '/Constant' + */ + rtDW.dtc_state_error_model[7] = 0U; + } + + /* End of Switch: '/Switch' */ + /* MATLAB Function: '/Write ERROR' incorporates: * DataStoreRead: '/Data Store Read' */ @@ -5591,7 +6492,7 @@ void HVAC_model_step(void) * UnitDelay: '/Cond_prev_private ' * UnitDelay: '/t_start_delay_private ' */ - if (rtb_FailCond_e && (!rtDW.Cond_prev_private_DSTATE_c)) { + if (rtb_Compare_cm4 && (!rtDW.Cond_prev_private_DSTATE_c)) { rtDW.t_start_delay_private_DSTATE_b = rtDW.t_now; } @@ -5604,7 +6505,7 @@ void HVAC_model_step(void) * UnitDelay: '/Cond_prev_private ' * UnitDelay: '/t_start_delay_private ' */ - if (rtb_FailCond_a && (!rtDW.Cond_prev_private_DSTATE_b)) { + if (rtb_Compare_n2 && (!rtDW.Cond_prev_private_DSTATE_b)) { rtDW.t_start_delay_private_DSTATE_j = rtDW.t_now; } @@ -5618,13 +6519,18 @@ void HVAC_model_step(void) */ rtb_Divide1 = (double)rtDW.ADC_Data_Model.Sensor_Incar_Temp_FR / 4095.0 * 5.0; - /* Logic: '/Logical Operator' incorporates: + /* RelationalOperator: '/Compare' incorporates: * Constant: '/Constant' - * Constant: '/Constant' - * RelationalOperator: '/Compare' - * RelationalOperator: '/Compare' */ - rtb_FailCond_l = ((rtb_Divide1 < 0.15) || (rtb_Divide1 > 4.9)); + rtb_Compare_bj = (rtb_Divide1 < 0.15); + + /* RelationalOperator: '/Compare' incorporates: + * Constant: '/Constant' + */ + rtb_Compare_hb = (rtb_Divide1 > 4.9); + + /* Logic: '/Logical Operator' */ + rtb_Compare_l = (rtb_Compare_bj || rtb_Compare_hb); /* Logic: '/Logical Operator1' incorporates: * Constant: '/Constant' @@ -5633,7 +6539,7 @@ void HVAC_model_step(void) * Sum: '/Subtract' * UnitDelay: '/t_start_delay_private ' */ - rtb_LogicalOperator1_lc = (rtb_FailCond_l && (rtDW.t_now - + rtb_LogicalOperator1_lc = (rtb_Compare_l && (rtDW.t_now - rtDW.t_start_delay_private_DSTATE_bh >= 3000U)); /* Switch: '/Switch' incorporates: @@ -5646,7 +6552,7 @@ void HVAC_model_step(void) Incar_FR = 200; } else { Incar_FR = look1_iu16tdIs16_binlcs(rtDW.ADC_Data_Model.Sensor_Incar_Temp_FR, - rtConstP.pooled32, rtConstP.pooled4, 1023U); + rtConstP.pooled31, rtConstP.pooled3, 1023U); } /* End of Switch: '/Switch' */ @@ -5659,13 +6565,18 @@ void HVAC_model_step(void) */ rtb_Divide3 = (double)rtDW.ADC_Data_Model.Sensor_Incar_Temp_RR / 4095.0 * 5.0; - /* Logic: '/Logical Operator2' incorporates: + /* RelationalOperator: '/Compare' incorporates: * Constant: '/Constant' - * Constant: '/Constant' - * RelationalOperator: '/Compare' - * RelationalOperator: '/Compare' */ - rtb_FailCond_b = ((rtb_Divide3 < 0.15) || (rtb_Divide3 > 4.9)); + rtb_Compare_h = (rtb_Divide3 < 0.15); + + /* RelationalOperator: '/Compare' incorporates: + * Constant: '/Constant' + */ + rtb_Compare_jh = (rtb_Divide3 > 4.9); + + /* Logic: '/Logical Operator2' */ + rtb_Compare_b = (rtb_Compare_h || rtb_Compare_jh); /* Logic: '/Logical Operator3' incorporates: * Constant: '/Constant' @@ -5674,7 +6585,7 @@ void HVAC_model_step(void) * Sum: '/Subtract' * UnitDelay: '/t_start_delay_private ' */ - rtb_LogicalOperator3_oi = (rtb_FailCond_b && (rtDW.t_now - + rtb_LogicalOperator3_oi = (rtb_Compare_b && (rtDW.t_now - rtDW.t_start_delay_private_DSTATE_bx >= 3000U)); /* Switch: '/Switch1' incorporates: @@ -5687,11 +6598,67 @@ void HVAC_model_step(void) Incar_RR = 200; } else { Incar_RR = look1_iu16tdIs16_binlcs(rtDW.ADC_Data_Model.Sensor_Incar_Temp_RR, - rtConstP.pooled32, rtConstP.pooled4, 1023U); + rtConstP.pooled31, rtConstP.pooled3, 1023U); } /* End of Switch: '/Switch1' */ + /* DataStoreWrite: '/Data Store Write1' incorporates: + * DataTypeConversion: '/Data Type Conversion' + */ + rtDW.dtc_state_error_model[4] = rtb_LogicalOperator1_lc; + + /* Switch: '/Switch' incorporates: + * DataTypeConversion: '/Data Type Conversion' + * Switch: '/Switch1' + */ + if (rtb_LogicalOperator1_lc) { + /* DataStoreWrite: '/Data Store Write' incorporates: + * DataTypeConversion: '/Data Type Conversion1' + */ + rtDW.dtc_state_error_model[5] = rtb_Compare_bj; + + /* DataStoreWrite: '/Data Store Write1' incorporates: + * DataTypeConversion: '/Data Type Conversion2' + */ + rtDW.dtc_state_error_model[4] = rtb_Compare_hb; + } else { + /* DataStoreWrite: '/Data Store Write' incorporates: + * Constant: '/Constant' + */ + rtDW.dtc_state_error_model[5] = 0U; + } + + /* End of Switch: '/Switch' */ + + /* DataStoreWrite: '/Data Store Write1' incorporates: + * DataTypeConversion: '/Data Type Conversion' + */ + rtDW.dtc_state_error_model[8] = rtb_LogicalOperator3_oi; + + /* Switch: '/Switch' incorporates: + * DataTypeConversion: '/Data Type Conversion' + * Switch: '/Switch1' + */ + if (rtb_LogicalOperator3_oi) { + /* DataStoreWrite: '/Data Store Write' incorporates: + * DataTypeConversion: '/Data Type Conversion1' + */ + rtDW.dtc_state_error_model[9] = rtb_Compare_h; + + /* DataStoreWrite: '/Data Store Write1' incorporates: + * DataTypeConversion: '/Data Type Conversion2' + */ + rtDW.dtc_state_error_model[8] = rtb_Compare_jh; + } else { + /* DataStoreWrite: '/Data Store Write' incorporates: + * Constant: '/Constant' + */ + rtDW.dtc_state_error_model[9] = 0U; + } + + /* End of Switch: '/Switch' */ + /* MATLAB Function: '/Write ERROR' incorporates: * DataStoreRead: '/Data Store Read' */ @@ -5753,7 +6720,7 @@ void HVAC_model_step(void) * UnitDelay: '/Cond_prev_private ' * UnitDelay: '/t_start_delay_private ' */ - if (rtb_FailCond_l && (!rtDW.Cond_prev_private_DSTATE_j)) { + if (rtb_Compare_l && (!rtDW.Cond_prev_private_DSTATE_j)) { rtDW.t_start_delay_private_DSTATE_bh = rtDW.t_now; } @@ -5766,7 +6733,7 @@ void HVAC_model_step(void) * UnitDelay: '/Cond_prev_private ' * UnitDelay: '/t_start_delay_private ' */ - if (rtb_FailCond_b && (!rtDW.Cond_prev_private_DSTATE_f)) { + if (rtb_Compare_b && (!rtDW.Cond_prev_private_DSTATE_f)) { rtDW.t_start_delay_private_DSTATE_bx = rtDW.t_now; } @@ -6535,12 +7502,12 @@ void HVAC_model_step(void) /* BusCreator: '/Bus Creator' incorporates: * DataStoreRead: '/Data Store Read' * DataStoreWrite: '/Data Store Write' - * DataTypeConversion: '/Data Type Conversion' - * DataTypeConversion: '/Data Type Conversion' - * DataTypeConversion: '/Data Type Conversion' - * DataTypeConversion: '/Data Type Conversion' * DataTypeConversion: '/Data Type Conversion' * DataTypeConversion: '/Data Type Conversion' + * DataTypeConversion: '/Data Type Conversion' + * DataTypeConversion: '/Data Type Conversion' + * DataTypeConversion: '/Data Type Conversion' + * DataTypeConversion: '/Data Type Conversion' * Logic: '/Logical Operator4' * Logic: '/Logical Operator4' */ @@ -6838,12 +7805,12 @@ void HVAC_model_step(void) * Gain: '/Gain' * Merge: '/Merge' */ - rtb_u_pe = look2_iu8bu8s16lu64n32_binlcse(rtB.Merge_b, rtb_Gain_l, - rtConstP.pooled61, rtConstP.pooled29, rtb_get_modes_for_levels, - rtConstP.pooled23, 6U); + rtb_u_cuz = look2_iu8bu8s16lu64n32_binlcse(rtB.Merge_b, rtb_Gain_l, + rtConstP.pooled59, rtConstP.pooled28, rtb_get_modes_for_levels, + rtConstP.pooled22, 6U); /* MATLAB Function: '/Начальные положения заслонок left' */ - left(rtb_u_pe, rtb_vals_m); + left(rtb_u_cuz, rtb_vals_m); /* Saturate: '/Saturation1' incorporates: * DataStoreRead: '/Data Store Read2' @@ -6863,7 +7830,7 @@ void HVAC_model_step(void) /* SwitchCase: '/Switch for Left ' incorporates: * DataStoreRead: '/Data Store Read' */ - switch (rtb_u_pe) { + switch (rtb_u_cuz) { case 10: break; @@ -6946,17 +7913,17 @@ void HVAC_model_step(void) * Gain: '/Gain2' * Merge: '/Merge' */ - rtb_u_pe = look2_iu8bu8s16lu64n32_binlcse(rtB.Merge_b, rtb_Gain2, - rtConstP.pooled61, rtConstP.pooled29, rtb_get_modes_for_levels, - rtConstP.pooled23, 6U); + rtb_u_cuz = look2_iu8bu8s16lu64n32_binlcse(rtB.Merge_b, rtb_Gain2, + rtConstP.pooled59, rtConstP.pooled28, rtb_get_modes_for_levels, + rtConstP.pooled22, 6U); /* MATLAB Function: '/Начальные положения заслонок right' */ - left(rtb_u_pe, rtb_vals_m); + left(rtb_u_cuz, rtb_vals_m); /* SwitchCase: '/Switch for Left ' incorporates: * DataStoreRead: '/Data Store Read' */ - switch (rtb_u_pe) { + switch (rtb_u_cuz) { case 10: break; @@ -7035,6 +8002,11 @@ void HVAC_model_step(void) /* End of SwitchCase: '/Switch for Left ' */ + /* Outport: '/Out1' incorporates: + * DataStoreRead: '/Data Store Read10' + */ + rtY.Out1 = CCU_Errors_Model; + /* MATLAB Function: '/Log Ambient Lv' */ /* : if (isempty(current_Ambient_Lv)) */ if (!rtDW.current_Ambient_Lv_not_empty) { @@ -7093,16 +8065,16 @@ void HVAC_model_step(void) switch (rtb_Switch_hx) { case 1: /* Outputs for IfAction SubSystem: '/Stop Mode' incorporates: - * ActionPort: '/Action Port' + * ActionPort: '/Action Port' */ - /* If: '/If1' incorporates: + /* If: '/If1' incorporates: * DataStoreRead: '/Data Store Read1' - * DataStoreWrite: '/Data Store Write' * DataStoreWrite: '/Data Store Write1' + * SignalConversion generated from: '/Bus Selector' */ - if ((rtDW.Actuator_Ch0_Status_Model.Busy == 0) && - (rtDW.Actuator_Ch0_Status_Model.Error_Connect == 0)) { - /* Outputs for IfAction SubSystem: '/If Action Subsystem2' incorporates: + 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++) { @@ -7121,9 +8093,9 @@ void HVAC_model_step(void) */ rtB.Merge_l = (int8_t)(rtb_Switch_hx + 1); - /* End of Outputs for SubSystem: '/If Action Subsystem2' */ + /* End of Outputs for SubSystem: '/If Action Subsystem2' */ } else { - /* Outputs for IfAction SubSystem: '/If Action Subsystem3' incorporates: + /* Outputs for IfAction SubSystem: '/If Action Subsystem3' incorporates: * ActionPort: '/Action Port' */ /* Merge: '/Merge' incorporates: @@ -7131,25 +8103,25 @@ void HVAC_model_step(void) */ rtB.Merge_l = rtb_Switch_hx; - /* End of Outputs for SubSystem: '/If Action Subsystem3' */ + /* End of Outputs for SubSystem: '/If Action Subsystem3' */ } - /* End of If: '/If1' */ + /* 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' + * ActionPort: '/Action Port' */ - /* If: '/If' incorporates: + /* If: '/If' incorporates: * DataStoreRead: '/Data Store Read1' - * DataStoreWrite: '/Data Store Write' * DataStoreWrite: '/Data Store Write1' + * SignalConversion generated from: '/Bus Selector' */ - if ((rtDW.Actuator_Ch0_Status_Model.Busy == 0) && - (rtDW.Actuator_Ch0_Status_Model.Error_Connect == 0)) { - /* Outputs for IfAction SubSystem: '/If Action Subsystem' incorporates: + 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++) { @@ -7178,42 +8150,42 @@ void HVAC_model_step(void) /* Merge: '/Merge' incorporates: * Constant: '/Constant' - * Merge: '/Merge' + * Merge: '/Merge' * SignalConversion generated from: '/step' * Sum: '/step inc' */ rtB.Merge_l = (int8_t)(rtb_Switch_hx + 1); - /* End of Outputs for SubSystem: '/If Action Subsystem' */ + /* End of Outputs for SubSystem: '/If Action Subsystem' */ } else { - /* Outputs for IfAction SubSystem: '/If Action Subsystem3' incorporates: + /* Outputs for IfAction SubSystem: '/If Action Subsystem3' incorporates: * ActionPort: '/Action Port' */ /* Merge: '/Merge' incorporates: - * Merge: '/Merge' + * Merge: '/Merge' * SignalConversion generated from: '/stepIn1' */ rtB.Merge_l = rtb_Switch_hx; - /* End of Outputs for SubSystem: '/If Action Subsystem3' */ + /* End of Outputs for SubSystem: '/If Action Subsystem3' */ } - /* End of If: '/If' */ + /* 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' + * ActionPort: '/Action Port' */ - /* If: '/If1' incorporates: + /* If: '/If1' incorporates: * DataStoreRead: '/Data Store Read1' - * DataStoreWrite: '/Data Store Write' * DataStoreWrite: '/Data Store Write1' + * SignalConversion generated from: '/Bus Selector' */ - if ((rtDW.Actuator_Ch0_Status_Model.Busy == 0) && - (rtDW.Actuator_Ch0_Status_Model.Error_Connect == 0)) { - /* Outputs for IfAction SubSystem: '/If Action Subsystem2' incorporates: + 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++) { @@ -7246,9 +8218,9 @@ void HVAC_model_step(void) */ rtB.Merge_l = (int8_t)(rtb_Switch_hx + 1); - /* End of Outputs for SubSystem: '/If Action Subsystem2' */ + /* End of Outputs for SubSystem: '/If Action Subsystem2' */ } else { - /* Outputs for IfAction SubSystem: '/If Action Subsystem3' incorporates: + /* Outputs for IfAction SubSystem: '/If Action Subsystem3' incorporates: * ActionPort: '/Action Port' */ /* Merge: '/Merge' incorporates: @@ -7256,25 +8228,25 @@ void HVAC_model_step(void) */ rtB.Merge_l = rtb_Switch_hx; - /* End of Outputs for SubSystem: '/If Action Subsystem3' */ + /* End of Outputs for SubSystem: '/If Action Subsystem3' */ } - /* End of If: '/If1' */ + /* 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' + * ActionPort: '/Action Port' */ - /* If: '/If1' incorporates: + /* If: '/If1' incorporates: * DataStoreRead: '/Data Store Read1' - * DataStoreWrite: '/Data Store Write' * DataStoreWrite: '/Data Store Write1' + * SignalConversion generated from: '/Bus Selector' */ - if ((rtDW.Actuator_Ch0_Status_Model.Busy == 0) && - (rtDW.Actuator_Ch0_Status_Model.Error_Connect == 0)) { - /* Outputs for IfAction SubSystem: '/If Action Subsystem2' incorporates: + 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++) { @@ -7304,7 +8276,7 @@ void HVAC_model_step(void) rtDW.Speed_private[i] = 3U; /* DataStoreWrite: '/Data Store Write' */ - rtDW.POS_private[i] = 1U; + rtDW.POS_private[i] = 0U; /* Product: '/Divide' incorporates: * Constant: '/Constant9' @@ -7334,9 +8306,9 @@ void HVAC_model_step(void) */ rtB.Merge_l = (int8_t)(rtb_Switch_hx + 1); - /* End of Outputs for SubSystem: '/If Action Subsystem2' */ + /* End of Outputs for SubSystem: '/If Action Subsystem2' */ } else { - /* Outputs for IfAction SubSystem: '/If Action Subsystem3' incorporates: + /* Outputs for IfAction SubSystem: '/If Action Subsystem3' incorporates: * ActionPort: '/Action Port' */ /* Merge: '/Merge' incorporates: @@ -7344,88 +8316,83 @@ void HVAC_model_step(void) */ rtB.Merge_l = rtb_Switch_hx; - /* End of Outputs for SubSystem: '/If Action Subsystem3' */ + /* End of Outputs for SubSystem: '/If Action Subsystem3' */ } - /* End of If: '/If1' */ + /* 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' + * ActionPort: '/Action Port' */ - /* RelationalOperator: '/Relational Operator1' incorporates: + /* Logic: '/Logical Operator3' incorporates: * DataStoreRead: '/Data Store Read1' - * RelationalOperator: '/Relational Operator' + * DataStoreRead: '/Data Store Read' + * Logic: '/Logical Operator1' + * Logic: '/Logical Operator2' + * RelationalOperator: '/Relational Operator' + * RelationalOperator: '/Relational Operator1' + * SignalConversion generated from: '/Bus Selector' */ for (i = 0; i < 9; i++) { - rtb_RelationalOperator_htm[i] = - (rtDW.Actuator_Ch0_Status_Model.in_Act_Stall_Slave[i] == 1); + rtb_LogicalOperator3_c[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 RelationalOperator: '/Relational Operator1' */ + /* End of Logic: '/Logical Operator3' */ - /* Logic: '/Logical Operator2' incorporates: - * RelationalOperator: '/Relational Operator' + /* Logic: '/Logical Operator' incorporates: + * Logic: '/Logical Operator3' */ - rtb_LogicalOperator1 = rtb_RelationalOperator_htm[0]; + rtb_LogicalOperator1 = rtb_LogicalOperator3_c[0]; for (i = 0; i < 8; i++) { - rtb_LogicalOperator1 = (rtb_LogicalOperator1 || - rtb_RelationalOperator_htm[i + 1]); + rtb_LogicalOperator1 = (rtb_LogicalOperator1 && rtb_LogicalOperator3_c[i + + 1]); } - /* RelationalOperator: '/Relational Operator' incorporates: + /* If: '/If2' incorporates: * DataStoreRead: '/Data Store Read1' - */ - for (i = 0; i < 9; i++) { - rtb_RelationalOperator_htm[i] = - (rtDW.Actuator_Ch0_Status_Model.in_CPOS_ALL[i] == 1); - } - - /* End of RelationalOperator: '/Relational Operator' */ - - /* Logic: '/Logical Operator1' incorporates: - * RelationalOperator: '/Relational Operator' - */ - rtb_LogicalOperator1_f = rtb_RelationalOperator_htm[0]; - for (i = 0; i < 8; i++) { - rtb_LogicalOperator1_f = (rtb_LogicalOperator1_f || - rtb_RelationalOperator_htm[i + 1]); - } - - /* If: '/If2' incorporates: - * DataStoreRead: '/Data Store Read1' - * DataStoreWrite: '/Data Store Write' * DataStoreWrite: '/Data Store Write1' - * DataTypeConversion: '/Data Type Conversion' - * DataTypeConversion: '/Data Type Conversion1' - * Logic: '/Logical Operator' - * Logic: '/Logical Operator1' - * Logic: '/Logical Operator2' + * DataTypeConversion: '/Data Type Conversion' + * DataTypeConversion: '/Data Type Conversion1' + * Logic: '/Logical Operator' + * SignalConversion generated from: '/Bus Selector' */ - if ((rtDW.Actuator_Ch0_Status_Model.Busy == 0) && - (rtDW.Actuator_Ch0_Status_Model.Error_Connect == 0) && - (rtb_LogicalOperator1 || rtb_LogicalOperator1_f)) { - /* Outputs for IfAction SubSystem: '/If Action Subsystem2' incorporates: - * ActionPort: '/Action Port' + 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' */ + /* DataStoreWrite: '/Data Store Write1' */ for (i = 0; i < 9; i++) { - rtDW.MinPositionCh0_private[i] = - rtDW.Actuator_Ch0_Status_Model.in_CPOS_ALL[i]; + /* Switch: '/Switch' incorporates: + * DataStoreRead: '/Data Store Read1' + * SignalConversion generated from: '/Bus Selector' + */ + if (rtDW.ErrorCalibration_private[i] != 0) { + rtDW.MinPositionCh0_private[i] = + Actuator_Ch0_Status_Model.in_CPOS_ALL[i]; + } + + /* End of Switch: '/Switch' */ } - /* End of DataStoreWrite: '/Data Store Write1' */ + /* End of DataStoreWrite: '/Data Store Write1' */ /* Merge: '/Merge' incorporates: - * Constant: '/Constant' - * Sum: '/step inc' + * Constant: '/Constant' + * Sum: '/step inc' */ rtB.Merge_l = (int8_t)(rtb_Switch_hx + 1); - /* MATLAB Function: '/MIN POSITION' incorporates: - * DataStoreRead: '/Data Store Read3' + /* MATLAB Function: '/MIN POSITION' incorporates: + * DataStoreRead: '/Data Store Read3' + * SignalConversion generated from: '/Bus Selector' */ /* : y = step; */ /* : if(LOGGER==2) */ @@ -7437,7 +8404,7 @@ void HVAC_model_step(void) /* : for i = 1:numel(step) */ for (i = 0; i < 9; i++) { /* : fprintf('%d ', int16(step(i))); */ - printf("%d ", rtDW.Actuator_Ch0_Status_Model.in_CPOS_ALL[i]); + printf("%d ", Actuator_Ch0_Status_Model.in_CPOS_ALL[i]); fflush(stdout); } @@ -7446,36 +8413,36 @@ void HVAC_model_step(void) fflush(stdout); } - /* End of MATLAB Function: '/MIN POSITION' */ - /* End of Outputs for SubSystem: '/If Action Subsystem2' */ + /* End of MATLAB Function: '/MIN POSITION' */ + /* End of Outputs for SubSystem: '/If Action Subsystem2' */ } else { - /* Outputs for IfAction SubSystem: '/If Action Subsystem3' incorporates: - * ActionPort: '/Action Port' + /* Outputs for IfAction SubSystem: '/If Action Subsystem3' incorporates: + * ActionPort: '/Action Port' */ /* Merge: '/Merge' incorporates: - * SignalConversion generated from: '/stepIn' + * SignalConversion generated from: '/stepIn' */ rtB.Merge_l = rtb_Switch_hx; - /* End of Outputs for SubSystem: '/If Action Subsystem3' */ + /* End of Outputs for SubSystem: '/If Action Subsystem3' */ } - /* End of If: '/If2' */ + /* 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' + * ActionPort: '/Action Port' */ - /* If: '/If1' incorporates: + /* If: '/If1' incorporates: * DataStoreRead: '/Data Store Read1' - * DataStoreWrite: '/Data Store Write' * DataStoreWrite: '/Data Store Write1' + * SignalConversion generated from: '/Bus Selector' */ - if ((rtDW.Actuator_Ch0_Status_Model.Busy == 0) && - (rtDW.Actuator_Ch0_Status_Model.Error_Connect == 0)) { - /* Outputs for IfAction SubSystem: '/If Action Subsystem2' incorporates: + 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++) { @@ -7509,9 +8476,9 @@ void HVAC_model_step(void) */ rtB.Merge_l = (int8_t)(rtb_Switch_hx + 1); - /* End of Outputs for SubSystem: '/If Action Subsystem2' */ + /* End of Outputs for SubSystem: '/If Action Subsystem2' */ } else { - /* Outputs for IfAction SubSystem: '/If Action Subsystem3' incorporates: + /* Outputs for IfAction SubSystem: '/If Action Subsystem3' incorporates: * ActionPort: '/Action Port' */ /* Merge: '/Merge' incorporates: @@ -7519,25 +8486,25 @@ void HVAC_model_step(void) */ rtB.Merge_l = rtb_Switch_hx; - /* End of Outputs for SubSystem: '/If Action Subsystem3' */ + /* End of Outputs for SubSystem: '/If Action Subsystem3' */ } - /* End of If: '/If1' */ + /* 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' + * ActionPort: '/Action Port' */ - /* If: '/If1' incorporates: + /* If: '/If1' incorporates: * DataStoreRead: '/Data Store Read1' - * DataStoreWrite: '/Data Store Write' * DataStoreWrite: '/Data Store Write1' + * SignalConversion generated from: '/Bus Selector' */ - if ((rtDW.Actuator_Ch0_Status_Model.Busy == 0) && - (rtDW.Actuator_Ch0_Status_Model.Error_Connect == 0)) { - /* Outputs for IfAction SubSystem: '/If Action Subsystem2' incorporates: + 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++) { @@ -7597,9 +8564,9 @@ void HVAC_model_step(void) */ rtB.Merge_l = (int8_t)(rtb_Switch_hx + 1); - /* End of Outputs for SubSystem: '/If Action Subsystem2' */ + /* End of Outputs for SubSystem: '/If Action Subsystem2' */ } else { - /* Outputs for IfAction SubSystem: '/If Action Subsystem3' incorporates: + /* Outputs for IfAction SubSystem: '/If Action Subsystem3' incorporates: * ActionPort: '/Action Port' */ /* Merge: '/Merge' incorporates: @@ -7607,88 +8574,83 @@ void HVAC_model_step(void) */ rtB.Merge_l = rtb_Switch_hx; - /* End of Outputs for SubSystem: '/If Action Subsystem3' */ + /* End of Outputs for SubSystem: '/If Action Subsystem3' */ } - /* End of If: '/If1' */ + /* 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' + * ActionPort: '/Action Port' */ - /* RelationalOperator: '/Relational Operator1' incorporates: + /* Logic: '/Logical Operator3' incorporates: * DataStoreRead: '/Data Store Read1' - * RelationalOperator: '/Relational Operator' + * DataStoreRead: '/Data Store Read' + * Logic: '/Logical Operator' + * Logic: '/Logical Operator2' + * RelationalOperator: '/Relational Operator' + * RelationalOperator: '/Relational Operator1' + * SignalConversion generated from: '/Bus Selector' */ for (i = 0; i < 9; i++) { - rtb_RelationalOperator_htm[i] = - (rtDW.Actuator_Ch0_Status_Model.in_Act_Stall_Slave[i] == 1); + rtb_LogicalOperator3_c[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 RelationalOperator: '/Relational Operator1' */ + /* End of Logic: '/Logical Operator3' */ - /* Logic: '/Logical Operator2' incorporates: - * RelationalOperator: '/Relational Operator' + /* Logic: '/Logical Operator1' incorporates: + * Logic: '/Logical Operator3' */ - rtb_LogicalOperator1 = rtb_RelationalOperator_htm[0]; + rtb_LogicalOperator1 = rtb_LogicalOperator3_c[0]; for (i = 0; i < 8; i++) { - rtb_LogicalOperator1 = (rtb_LogicalOperator1 || - rtb_RelationalOperator_htm[i + 1]); + rtb_LogicalOperator1 = (rtb_LogicalOperator1 && rtb_LogicalOperator3_c[i + + 1]); } - /* RelationalOperator: '/Relational Operator' incorporates: + /* If: '/If2' incorporates: * DataStoreRead: '/Data Store Read1' - */ - for (i = 0; i < 9; i++) { - rtb_RelationalOperator_htm[i] = - (rtDW.Actuator_Ch0_Status_Model.in_CPOS_ALL[i] == 6000); - } - - /* End of RelationalOperator: '/Relational Operator' */ - - /* Logic: '/Logical Operator1' incorporates: - * RelationalOperator: '/Relational Operator' - */ - rtb_LogicalOperator1_f = rtb_RelationalOperator_htm[0]; - for (i = 0; i < 8; i++) { - rtb_LogicalOperator1_f = (rtb_LogicalOperator1_f || - rtb_RelationalOperator_htm[i + 1]); - } - - /* If: '/If2' incorporates: - * DataStoreRead: '/Data Store Read1' - * DataStoreWrite: '/Data Store Write' * DataStoreWrite: '/Data Store Write1' - * DataTypeConversion: '/Data Type Conversion' - * DataTypeConversion: '/Data Type Conversion1' - * Logic: '/Logical Operator' - * Logic: '/Logical Operator1' - * Logic: '/Logical Operator2' + * DataTypeConversion: '/Data Type Conversion' + * DataTypeConversion: '/Data Type Conversion1' + * Logic: '/Logical Operator1' + * SignalConversion generated from: '/Bus Selector' */ - if ((rtDW.Actuator_Ch0_Status_Model.Busy == 0) && - (rtDW.Actuator_Ch0_Status_Model.Error_Connect == 0) && - (rtb_LogicalOperator1 || rtb_LogicalOperator1_f)) { - /* Outputs for IfAction SubSystem: '/If Action Subsystem2' incorporates: - * ActionPort: '/Action Port' + 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' */ + /* DataStoreWrite: '/Data Store Write1' */ for (i = 0; i < 9; i++) { - rtDW.MinPositionCh0_private[i] = - rtDW.Actuator_Ch0_Status_Model.in_CPOS_ALL[i]; + /* Switch: '/Switch' incorporates: + * DataStoreRead: '/Data Store Read1' + * SignalConversion generated from: '/Bus Selector' + */ + if (rtDW.ErrorCalibration_private[i] != 0) { + rtDW.MaxPositionCh0_private[i] = + Actuator_Ch0_Status_Model.in_CPOS_ALL[i]; + } + + /* End of Switch: '/Switch' */ } - /* End of DataStoreWrite: '/Data Store Write1' */ + /* End of DataStoreWrite: '/Data Store Write1' */ /* Merge: '/Merge' incorporates: - * Constant: '/Constant' - * Sum: '/step inc' + * Constant: '/Constant' + * Sum: '/step inc' */ rtB.Merge_l = (int8_t)(rtb_Switch_hx + 1); - /* MATLAB Function: '/MIN POSITION' incorporates: - * DataStoreRead: '/Data Store Read3' + /* MATLAB Function: '/MIN POSITION' incorporates: + * DataStoreRead: '/Data Store Read2' + * SignalConversion generated from: '/Bus Selector' */ /* : y = step; */ /* : if(LOGGER==2) */ @@ -7700,7 +8662,7 @@ void HVAC_model_step(void) /* : for i = 1:numel(step) */ for (i = 0; i < 9; i++) { /* : fprintf('%d ', int16(step(i))); */ - printf("%d ", rtDW.Actuator_Ch0_Status_Model.in_CPOS_ALL[i]); + printf("%d ", Actuator_Ch0_Status_Model.in_CPOS_ALL[i]); fflush(stdout); } @@ -7709,143 +8671,153 @@ void HVAC_model_step(void) fflush(stdout); } - /* End of MATLAB Function: '/MIN POSITION' */ - /* End of Outputs for SubSystem: '/If Action Subsystem2' */ + /* End of MATLAB Function: '/MIN POSITION' */ + /* End of Outputs for SubSystem: '/If Action Subsystem2' */ } else { - /* Outputs for IfAction SubSystem: '/If Action Subsystem3' incorporates: - * ActionPort: '/Action Port' + /* Outputs for IfAction SubSystem: '/If Action Subsystem3' incorporates: + * ActionPort: '/Action Port' */ /* Merge: '/Merge' incorporates: - * SignalConversion generated from: '/stepIn' + * SignalConversion generated from: '/stepIn' */ rtB.Merge_l = rtb_Switch_hx; - /* End of Outputs for SubSystem: '/If Action Subsystem3' */ + /* End of Outputs for SubSystem: '/If Action Subsystem3' */ } - /* End of If: '/If2' */ + /* End of If: '/If2' */ /* End of Outputs for SubSystem: '/Check Stall Max' */ break; case 9: /* Outputs for IfAction SubSystem: '/Homing' incorporates: - * ActionPort: '/Action Port' + * ActionPort: '/Action Port' */ - /* Product: '/Divide1' incorporates: - * Constant: '/ACT2' - * Constant: '/ACT1' - * DataStoreRead: '/MIN ACT1T ' - * DataStoreWrite: '/Data Store Write1' - * Sum: '/ACT1T' + /* Product: '/Divide1' incorporates: + * Constant: '/ACT1' + * DataStoreRead: '/MAX ACT1T ' + * DataStoreRead: '/MIN ACT1T ' + * Sum: '/ACT1T' */ for (i = 0; i < 9; i++) { - rtb_Divide1_ja[i] = (double)(int16_t)(rtConstP.ACT2_Value[i] - + rtb_Divide1_ja[i] = (double)(int16_t)(rtDW.MaxPositionCh0_private[i] - rtDW.MinPositionCh0_private[i]) / (double)rtConstP.ACT1_Value[i]; } - /* End of Product: '/Divide1' */ + /* End of Product: '/Divide1' */ - /* SwitchCase: '/Switch Case' incorporates: - * DataStoreRead: '/Data Store Read4' + /* 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' + /* Outputs for IfAction SubSystem: '/Switch Case Action Subsystem' incorporates: + * ActionPort: '/Action Port' */ for (i = 0; i < 9; i++) { - /* RelationalOperator: '/Compare' */ + /* RelationalOperator: '/Compare' */ rtb_Divide1 = rtb_Divide1_ja[i]; - /* Logic: '/Logical Operator' incorporates: - * Constant: '/Constant' - * Constant: '/Constant' - * RelationalOperator: '/Compare' - * RelationalOperator: '/Compare' + /* Logic: '/Logical Operator' incorporates: + * Constant: '/Constant' + * Constant: '/Constant' + * RelationalOperator: '/Compare' + * RelationalOperator: '/Compare' */ rtb_LogicalOperator1 = ((rtb_Divide1 >= 0.9) && (rtb_Divide1 <= 1.1)); - rtb_RelationalOperator_htm[i] = rtb_LogicalOperator1; + rtb_LogicalOperator3_c[i] = rtb_LogicalOperator1; - /* DataTypeConversion: '/Data Type Conversion' incorporates: - * DataStoreRead: '/Data Store Read' - * DataStoreWrite: '/Data Store Write' - * Logic: '/Logical Operator' - * Logic: '/Logical Operator1' + /* 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)); } - /* Logic: '/Logical Operator1' */ - rtb_LogicalOperator1 = rtb_RelationalOperator_htm[0]; + /* Logic: '/Logical Operator1' */ + rtb_LogicalOperator1 = rtb_LogicalOperator3_c[0]; for (i = 0; i < 8; i++) { - rtb_LogicalOperator1 = (rtb_LogicalOperator1 && - rtb_RelationalOperator_htm[i + 1]); + rtb_LogicalOperator1 = (rtb_LogicalOperator1 && rtb_LogicalOperator3_c[i + + 1]); } - /* Switch: '/Switch' incorporates: - * Logic: '/Logical Operator1' + /* Switch: '/Switch' incorporates: + * Logic: '/Logical Operator1' */ if (rtb_LogicalOperator1) { - /* Merge: '/Merge' incorporates: - * Constant: '/Constant1' + /* Merge: '/Merge' incorporates: + * Constant: '/Constant1' + * SignalConversion generated from: '/step' */ - rtB.Merge_h = 4; + rtB.Merge_h1 = 4; } else { - /* Merge: '/Merge' incorporates: - * Constant: '/Constant' + /* Merge: '/Merge' incorporates: + * Constant: '/Constant' + * SignalConversion generated from: '/step' */ - rtB.Merge_h = 1; + rtB.Merge_h1 = 1; } - /* End of Switch: '/Switch' */ - /* End of Outputs for SubSystem: '/Switch Case Action Subsystem' */ + /* 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' + /* Outputs for IfAction SubSystem: '/Switch Case Action Subsystem1' incorporates: + * ActionPort: '/Action Port' */ - /* RelationalOperator: '/Compare' incorporates: - * Constant: '/Constant' + /* RelationalOperator: '/Compare' incorporates: + * Constant: '/Constant' */ for (i = 0; i < 9; i++) { - rtb_RelationalOperator_htm[i] = (rtb_Divide1_ja[i] > 1.5); + rtb_LogicalOperator3_c[i] = (rtb_Divide1_ja[i] > 1.5); } - /* End of RelationalOperator: '/Compare' */ + /* End of RelationalOperator: '/Compare' */ - /* Logic: '/Logical Operator' */ - rtb_LogicalOperator1 = rtb_RelationalOperator_htm[0]; + /* Logic: '/Logical Operator' */ + rtb_LogicalOperator1 = rtb_LogicalOperator3_c[0]; for (i = 0; i < 8; i++) { - rtb_LogicalOperator1 = (rtb_LogicalOperator1 || - rtb_RelationalOperator_htm[i + 1]); + rtb_LogicalOperator1 = (rtb_LogicalOperator1 || rtb_LogicalOperator3_c[i + + 1]); } - /* DataTypeConversion: '/Data Type Conversion' incorporates: - * DataStoreWrite: '/Data Store Write1' - * Logic: '/Logical Operator' + /* 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' + /* DataTypeConversion: '/Data Type Conversion1' incorporates: + * DataStoreWrite: '/Data Store Write2' */ - rtDW.COM_private[i] = rtb_RelationalOperator_htm[i]; + rtb_LogicalOperator1 = rtb_LogicalOperator3_c[i]; + rtDW.COM_private[i] = rtb_LogicalOperator1; - /* DataStoreWrite: '/Data Store Write' */ + /* 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' + /* MATLAB Function: '/Write ERROR' incorporates: + * DataStoreRead: '/Data Store Read6' */ /* : if(LOGGER==1) */ if (rtDW.LOGGER_LIN == 1.0) { /* : for i = 1:numel(ErrCallibration) */ for (i = 0; i < 9; i++) { /* : if ErrCallibration(i) == 1 */ - if (rtb_RelationalOperator_htm[i]) { + if (rtb_LogicalOperator3_c[i]) { /* : fprintf('LIN1 Failure with actuator #%d\n', int16(i)); */ printf("LIN1 Failure with actuator #%d\n", (int16_t)(i + 1)); fflush(stdout); @@ -7853,91 +8825,120 @@ void HVAC_model_step(void) } } - /* End of MATLAB Function: '/Write ERROR' */ - - /* DataTypeConversion: '/Data Type Conversion' incorporates: - * DataStoreRead: '/Data Store Read' - * DataStoreWrite: '/Data Store Write' - * Logic: '/Logical Operator' - * Logic: '/Logical Operator1' - */ + /* End of MATLAB Function: '/Write ERROR' */ for (i = 0; i < 9; i++) { - rtDW.ErrorCalibration_private[i] = (uint8_t) - ((!rtb_RelationalOperator_htm[i]) && (rtDW.ErrorCalibration_private[i] - != 0)); + /* Logic: '/Logical Operator1' */ + rtb_LogicalOperator1 = rtb_LogicalOperator3_c[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; } - /* End of DataTypeConversion: '/Data Type Conversion' */ - - /* Merge: '/Merge' incorporates: - * Constant: '/Constant' - * Constant: '/Constant2' - * Sum: '/step inc' + /* DataStoreWrite: '/Data Store Write' incorporates: + * Constant: '/Constant' */ - rtB.Merge_h = 2; + rtDW.stepSig_private = 1; - /* End of Outputs for SubSystem: '/Switch Case Action Subsystem1' */ + /* Logic: '/Logical Operator2' incorporates: + * DataStoreWrite: '/Data Store Write' + */ + rtb_LogicalOperator1 = (rtDW.ErrorCalibration_private[0] != 0); + for (i = 0; i < 8; i++) { + rtb_LogicalOperator1 = (rtb_LogicalOperator1 || + (rtDW.ErrorCalibration_private[i + 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' + /* Outputs for IfAction SubSystem: '/Switch Case Action Subsystem2' incorporates: + * ActionPort: '/Action Port' */ for (i = 0; i < 9; i++) { - /* Logic: '/Logical Operator3' incorporates: - * Constant: '/Constant' - * DataStoreRead: '/Data Store Read' - * RelationalOperator: '/Compare' + /* Logic: '/Logical Operator3' incorporates: + * Constant: '/Constant' + * DataStoreRead: '/Data Store Read' + * RelationalOperator: '/Compare' */ rtb_LogicalOperator1 = ((rtb_Divide1_ja[i] <= 0.97) && (rtDW.ErrorCalibration_private[i] != 0)); - rtb_RelationalOperator_htm[i] = rtb_LogicalOperator1; + rtb_LogicalOperator3_c[i] = rtb_LogicalOperator1; - /* DataTypeConversion: '/Data Type Conversion' incorporates: - * DataStoreWrite: '/Data Store Write1' + /* DataTypeConversion: '/Data Type Conversion' incorporates: + * DataStoreWrite: '/Data Store Write1' */ rtDW.ErrorCalibration_private[i] = rtb_LogicalOperator1; } - /* Logic: '/Logical Operator2' */ - rtb_LogicalOperator1 = rtb_RelationalOperator_htm[0]; + /* Logic: '/Logical Operator2' */ + rtb_LogicalOperator1 = rtb_LogicalOperator3_c[0]; for (i = 0; i < 8; i++) { - rtb_LogicalOperator1 = (rtb_LogicalOperator1 && - rtb_RelationalOperator_htm[i + 1]); + rtb_LogicalOperator1 = (rtb_LogicalOperator1 || rtb_LogicalOperator3_c[i + + 1]); } - /* Switch: '/Switch' incorporates: - * Logic: '/Logical Operator2' + /* Switch: '/Switch' incorporates: + * Logic: '/Logical Operator2' */ if (rtb_LogicalOperator1) { - /* Merge: '/Merge' incorporates: - * Constant: '/Constant3' + /* Merge: '/Merge' incorporates: + * Constant: '/Constant3' + * SignalConversion generated from: '/step' */ - rtB.Merge_h = 4; + rtB.Merge_h1 = 3; } else { - /* Merge: '/Merge' incorporates: - * Constant: '/Constant1' + /* Merge: '/Merge' incorporates: + * Constant: '/Constant1' + * SignalConversion generated from: '/step' */ - rtB.Merge_h = 3; + rtB.Merge_h1 = 4; } - /* End of Switch: '/Switch' */ - /* End of Outputs for SubSystem: '/Switch Case Action Subsystem2' */ + /* 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' + /* Outputs for IfAction SubSystem: '/Switch Case Action Subsystem3' incorporates: + * ActionPort: '/Action Port' */ - /* If: '/If' incorporates: - * DataStoreRead: '/Data Store Read1' + /* If: '/If' incorporates: + * DataStoreRead: '/Data Store Read1' */ if (rtDW.ErrorHomming_private < 10.0) { - /* Outputs for IfAction SubSystem: '/If Action Subsystem' incorporates: - * ActionPort: '/Action Port' + /* Outputs for IfAction SubSystem: '/If Action Subsystem' incorporates: + * ActionPort: '/Action Port' */ - /* Logic: '/AND' incorporates: - * DataStoreRead: '/Data Store Read' + /* Logic: '/AND' incorporates: + * DataStoreRead: '/Data Store Read' */ rtb_LogicalOperator1 = (rtDW.ErrorCalibration_private[0] != 0); for (i = 0; i < 8; i++) { @@ -7945,67 +8946,77 @@ void HVAC_model_step(void) (rtDW.ErrorCalibration_private[i + 1] != 0)); } - rtb_LogicalOperator1 = !rtb_LogicalOperator1; - - /* End of Logic: '/AND' */ - - /* If: '/If' incorporates: + /* If: '/If' incorporates: * DataStoreRead: '/Data Store Read' * Sum: '/Subtract' * UnitDelay: '/t_start_delay_private ' */ - if (rtDW.t_now - rtDW.t_start_delay_private_DSTATE_h > 3000U) { - /* Outputs for IfAction SubSystem: '/If Action Subsystem' incorporates: - * ActionPort: '/Action Port' + if (rtDW.t_now - rtDW.t_start_delay_private_DSTATE_h > 30000U) { + /* Outputs for IfAction SubSystem: '/If Action Subsystem' incorporates: + * ActionPort: '/Action Port' */ - /* DataStoreWrite: '/Data Store Write' incorporates: - * Constant: '/Constant' + /* DataStoreWrite: '/Data Store Write' incorporates: + * Constant: '/Constant' */ rtDW.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' */ rtDW.ErrorHomming_private++; - /* SignalConversion generated from: '/Out1' */ - rtB.OutportBufferForOut1 = 2; + /* Merge: '/Merge' incorporates: + * Constant: '/Constant1' + * Merge: '/Merge' + * SignalConversion generated from: '/Out1' + */ + rtB.Merge_h1 = 2; - /* End of Outputs for SubSystem: '/If Action Subsystem' */ + /* End of Outputs for SubSystem: '/If Action Subsystem' */ + } else { + /* Outputs for IfAction SubSystem: '/If Action Subsystem1' incorporates: + * ActionPort: '/Action Port' + */ + /* 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' */ - - /* Merge: '/Merge' incorporates: - * SignalConversion generated from: '/Out2' - */ - rtB.Merge_h = rtB.OutportBufferForOut1; + /* End of If: '/If' */ /* Switch: '/Switch' incorporates: * DataStoreRead: '/Data Store Read' + * Logic: '/AND' * Logic: '/Logical Operator3' * Logic: '/Logical Operator4' * UnitDelay: '/Cond_prev_private ' * UnitDelay: '/t_start_delay_private ' */ - if (rtb_LogicalOperator1 && (!rtDW.Cond_prev_private_DSTATE_dq)) { + if (rtb_LogicalOperator1 && (!rtDW.Cond_prev_private_DSTATE_d)) { rtDW.t_start_delay_private_DSTATE_h = rtDW.t_now; } /* End of Switch: '/Switch' */ - /* Update for UnitDelay: '/Cond_prev_private ' */ - rtDW.Cond_prev_private_DSTATE_dq = rtb_LogicalOperator1; + /* Update for UnitDelay: '/Cond_prev_private ' incorporates: + * Logic: '/AND' + */ + rtDW.Cond_prev_private_DSTATE_d = rtb_LogicalOperator1; - /* End of Outputs for SubSystem: '/If Action Subsystem' */ + /* End of Outputs for SubSystem: '/If Action Subsystem' */ } else { - /* Outputs for IfAction SubSystem: '/If Action Subsystem1' incorporates: - * ActionPort: '/Action Port' + /* Outputs for IfAction SubSystem: '/If Action Subsystem1' incorporates: + * ActionPort: '/Action Port' */ /* Logic: '/Logical Operator' incorporates: - * DataStoreRead: '/Data Store Read' + * DataStoreRead: '/Data Store Read' */ rtb_LogicalOperator1 = (rtDW.ErrorCalibration_private[0] != 0); for (i = 0; i < 8; i++) { @@ -8020,7 +9031,7 @@ void HVAC_model_step(void) rtDW.CCU_ActuatorErrF_Stat_private = rtb_LogicalOperator1; for (i = 0; i < 9; i++) { /* DataStoreWrite: '/Data Store Write2' incorporates: - * DataStoreRead: '/Data Store Read' + * DataStoreRead: '/Data Store Read' */ rtDW.COM_private[i] = rtDW.ErrorCalibration_private[i]; @@ -8029,7 +9040,7 @@ void HVAC_model_step(void) } /* MATLAB Function: '/Write ERROR' incorporates: - * DataStoreRead: '/Data Store Read' + * DataStoreRead: '/Data Store Read' * DataStoreRead: '/Data Store Read6' */ /* : if(LOGGER==1) */ @@ -8046,54 +9057,72 @@ void HVAC_model_step(void) } /* End of MATLAB Function: '/Write ERROR' */ - - /* DataStoreWrite: '/Data Store Write' */ for (i = 0; i < 9; i++) { + /* Logic: '/Logical Operator1' incorporates: + * DataStoreRead: '/Data Store Read' + */ + rtb_Gain_l = rtDW.ErrorCalibration_private[i]; + + /* DataTypeConversion: '/Data Type Conversion1' incorporates: + * DataStoreRead: '/Data Store Read1' + * DataStoreWrite: '/Data Store Write3' + * Logic: '/Logical Operator1' + */ + rtDW.ErrorActuator[i] = (uint8_t)((rtb_Gain_l != 0) || + (rtDW.ErrorActuator[i] != 0)); + + /* DataStoreWrite: '/Data Store Write' */ + rtDW.dtc_state_error_model[i + 54] = rtb_Gain_l; + + /* DataStoreWrite: '/Data Store Write' */ rtDW.ErrorCalibration_private[i] = 0U; } - /* End of DataStoreWrite: '/Data Store Write' */ - - /* Merge: '/Merge' incorporates: - * Constant: '/Constant' - * SignalConversion generated from: '/Output' + /* Merge: '/Merge' incorporates: + * Constant: '/Constant' + * SignalConversion generated from: '/Output' */ - rtB.Merge_h = 4; + rtB.Merge_h1 = 4; - /* End of Outputs for SubSystem: '/If Action Subsystem1' */ + /* End of Outputs for SubSystem: '/If Action Subsystem1' */ } - /* End of If: '/If' */ - /* End of Outputs for SubSystem: '/Switch Case Action Subsystem3' */ + /* 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' + /* Outputs for IfAction SubSystem: '/Switch Case Action Subsystem4' incorporates: + * ActionPort: '/Action Port' */ - /* Merge: '/Merge' incorporates: - * SignalConversion generated from: '/step' + /* DataStoreWrite: '/Data Store Write' incorporates: + * Constant: '/Constant' */ - rtB.Merge_h = 0; + rtDW.stepSig_private = 10; - /* End of Outputs for SubSystem: '/Switch Case Action Subsystem4' */ + /* Merge: '/Merge' incorporates: + * Constant: '/Constant1' + * SignalConversion generated from: '/step' + */ + rtB.Merge_h1 = 5; + + /* End of Outputs for SubSystem: '/Switch Case Action Subsystem4' */ break; } - /* End of SwitchCase: '/Switch Case' */ + /* End of SwitchCase: '/Switch Case' */ - /* DataStoreWrite: '/Data Store Write2' */ - rtDW.stepHoming_private = rtB.Merge_h; + /* DataStoreWrite: '/Data Store Write2' */ + rtDW.stepHoming_private = rtB.Merge_h1; /* Merge: '/Merge' incorporates: - * DataStoreRead: '/Data Store Read7' + * DataStoreRead: '/Data Store Read7' */ rtB.Merge_l = rtDW.stepSig_private; - /* MATLAB Function: '/MAX POSITION' incorporates: - * Constant: '/ACT2' - * DataStoreRead: '/Data Store Read5' - * DataStoreWrite: '/Data Store Write1' + /* MATLAB Function: '/MAX POSITION' incorporates: + * DataStoreRead: '/Data Store Read2' + * DataStoreRead: '/Data Store Read5' */ /* : y = step; */ /* : if(LOGGER==2) */ @@ -8105,7 +9134,7 @@ void HVAC_model_step(void) /* : for i = 1:numel(step) */ for (i = 0; i < 9; i++) { /* : fprintf('%d ', int16(step(i))); */ - printf("%d ", rtConstP.ACT2_Value[i]); + printf("%d ", rtDW.MaxPositionCh0_private[i]); fflush(stdout); } @@ -8114,11 +9143,11 @@ void HVAC_model_step(void) fflush(stdout); } - /* End of MATLAB Function: '/MAX POSITION' */ + /* End of MATLAB Function: '/MAX POSITION' */ - /* MATLAB Function: '/MIN POSITION' incorporates: - * DataStoreRead: '/Data Store Read3' - * DataStoreRead: '/Data Store Read6' + /* MATLAB Function: '/MIN POSITION' incorporates: + * DataStoreRead: '/Data Store Read3' + * DataStoreRead: '/Data Store Read6' */ /* : y = step; */ /* : if(LOGGER==2) */ @@ -8139,7 +9168,7 @@ void HVAC_model_step(void) fflush(stdout); } - /* End of MATLAB Function: '/MIN POSITION' */ + /* End of MATLAB Function: '/MIN POSITION' */ /* End of Outputs for SubSystem: '/Homing' */ break; } @@ -8149,17 +9178,17 @@ void HVAC_model_step(void) /* 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' + /* 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]; @@ -8171,7 +9200,7 @@ void HVAC_model_step(void) Actuator_Ch0_Command_Model.Speed_SET[i] = rtDW.Speed_private[i]; Actuator_Ch0_Command_Model.Coils_Stop_SET[i] = rtDW.Coils_private[i]; - /* DataStoreWrite: '/Data Store Write' */ + /* DataStoreWrite: '/Data Store Write' */ rtDW.COM_private[i] = 0U; } @@ -8187,1401 +9216,98 @@ void HVAC_model_step(void) /* End of MATLAB Function: '/Write' */ - /* DataStoreWrite: '/Data Store Write' incorporates: - * DataStoreRead: '/Data Store Read1' - */ - rtb_Gain_l = rtDW.Actuator_Ch1_Status_Model.Busy; - - /* DataStoreWrite: '/Data Store Write1' incorporates: - * DataStoreRead: '/Data Store Read1' - */ - rtb_Gain2 = rtDW.Actuator_Ch1_Status_Model.Error_Connect; - - /* Switch: '/Switch' incorporates: - * Constant: '/Constant1' - * DataStoreRead: '/Data Store Read' - * DataStoreRead: '/Data Store Read2' - */ - if (rtDW.stepSig_private_c > 0) { - rtb_Switch_hx = rtDW.stepSig_private_c; - } 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' - */ - StopMode(rtb_Switch_hx, &rtB.Merge_c, &rtb_Gain_l, rtDW.COM_private_h, - &rtb_Gain2, rtDW.MODE_private_a); - - /* 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 Write' - * DataStoreWrite: '/Data Store Write1' - */ - if ((rtDW.Actuator_Ch1_Status_Model.Busy == 0) && - (rtDW.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_c[i] = 6000U; - - /* DataStoreWrite: '/Data Store Write1' */ - rtDW.COM_private_h[i] = 2U; - } - - /* MATLAB Function: '/Initial CPOS Min' incorporates: - * DataStoreRead: '/Data Store Read3' - */ - /* : y = step; */ - /* : if(LOGGER==2) */ - if (rtDW.LOGGER_LIN == 2.0) { - /* : fprintf('LIN2 SIMULINK Initial CPOS Min - 6000\n'); */ - printf("LIN2 SIMULINK Initial CPOS Min - 6000\n"); - fflush(stdout); - } - - /* End of MATLAB Function: '/Initial CPOS Min' */ - - /* Merge: '/Merge' incorporates: - * Constant: '/Constant' - * Merge: '/Merge' - * SignalConversion generated from: '/step' - * Sum: '/step inc' - */ - rtB.Merge_c = (int8_t)(rtb_Switch_hx + 1); - - /* 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_c = 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 Write' - * DataStoreWrite: '/Data Store Write1' - */ - if ((rtDW.Actuator_Ch1_Status_Model.Busy == 0) && - (rtDW.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_h[i] = 1U; - } - - /* MATLAB Function: '/Normal Mode' incorporates: - * DataStoreRead: '/Data Store Read3' - */ - /* : y = step; */ - /* : if(LOGGER==2) */ - if (rtDW.LOGGER_LIN == 2.0) { - /* : fprintf('LIN2 SIMULINK Normal Mode\n'); */ - printf("LIN2 SIMULINK Normal Mode\n"); - fflush(stdout); - } - - /* End of MATLAB Function: '/Normal Mode' */ - - /* Merge: '/Merge' incorporates: - * Constant: '/Constant' - * SignalConversion generated from: '/step' - * Sum: '/step inc' - */ - rtB.Merge_c = (int8_t)(rtb_Switch_hx + 1); - - /* 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_c = 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 Write' - * DataStoreWrite: '/Data Store Write1' - */ - if ((rtDW.Actuator_Ch1_Status_Model.Busy == 0) && - (rtDW.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_m[i] = 1U; - - /* DataStoreWrite: '/Data Store Write2' incorporates: - * Constant: '/Constant10' - */ - rtDW.Stall_private_j[i] = 1U; - - /* DataStoreWrite: '/Data Store Write3' incorporates: - * Constant: '/Constant11' - */ - rtDW.Lnoise_private_d[i] = 0U; - - /* DataStoreWrite: '/Data Store Write6' incorporates: - * Constant: '/Constant14' - */ - rtDW.Coils_private_n[i] = 0U; - - /* DataStoreWrite: '/Data Store Write5' incorporates: - * Constant: '/Constant2' - */ - rtDW.Speed_private_o[i] = 3U; - - /* DataStoreWrite: '/Data Store Write' */ - rtDW.POS_private_c[i] = 1U; - - /* DataStoreWrite: '/Data Store Write1' incorporates: - * Constant: '/Constant9' - */ - rtDW.COM_private_h[i] = 3U; - } - - /* MATLAB Function: '/Move to position Min' incorporates: - * DataStoreRead: '/Data Store Read3' - */ - /* : y = step; */ - /* : if(LOGGER==2) */ - if (rtDW.LOGGER_LIN == 2.0) { - /* : fprintf('LIN2 SIMULINK Move to position Min - 1\n'); */ - printf("LIN2 SIMULINK Move to position Min - 1\n"); - fflush(stdout); - } - - /* End of MATLAB Function: '/Move to position Min' */ - - /* Merge: '/Merge' incorporates: - * Constant: '/Constant' - * SignalConversion generated from: '/step' - * Sum: '/step inc' - */ - rtB.Merge_c = (int8_t)(rtb_Switch_hx + 1); - - /* 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_c = 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' - */ - /* RelationalOperator: '/Relational Operator1' incorporates: - * DataStoreRead: '/Data Store Read1' - * RelationalOperator: '/Relational Operator' - */ - for (i = 0; i < 9; i++) { - rtb_RelationalOperator_htm[i] = - (rtDW.Actuator_Ch1_Status_Model.in_Act_Stall_Slave[i] == 1); - } - - /* End of RelationalOperator: '/Relational Operator1' */ - - /* Logic: '/Logical Operator2' incorporates: - * RelationalOperator: '/Relational Operator' - */ - rtb_LogicalOperator1 = rtb_RelationalOperator_htm[0]; - for (i = 0; i < 8; i++) { - rtb_LogicalOperator1 = (rtb_LogicalOperator1 || - rtb_RelationalOperator_htm[i + 1]); - } - - /* RelationalOperator: '/Relational Operator' incorporates: - * DataStoreRead: '/Data Store Read1' - */ - for (i = 0; i < 9; i++) { - rtb_RelationalOperator_htm[i] = - (rtDW.Actuator_Ch1_Status_Model.in_CPOS_ALL[i] == 1); - } - - /* End of RelationalOperator: '/Relational Operator' */ - - /* Logic: '/Logical Operator1' incorporates: - * RelationalOperator: '/Relational Operator' - */ - rtb_LogicalOperator1_f = rtb_RelationalOperator_htm[0]; - for (i = 0; i < 8; i++) { - rtb_LogicalOperator1_f = (rtb_LogicalOperator1_f || - rtb_RelationalOperator_htm[i + 1]); - } - - /* If: '/If2' incorporates: - * DataStoreRead: '/Data Store Read1' - * DataStoreWrite: '/Data Store Write' - * DataStoreWrite: '/Data Store Write1' - * DataTypeConversion: '/Data Type Conversion' - * DataTypeConversion: '/Data Type Conversion1' - * Logic: '/Logical Operator' - * Logic: '/Logical Operator1' - * Logic: '/Logical Operator2' - */ - if ((rtDW.Actuator_Ch1_Status_Model.Busy == 0) && - (rtDW.Actuator_Ch1_Status_Model.Error_Connect == 0) && - (rtb_LogicalOperator1 || rtb_LogicalOperator1_f)) { - /* Outputs for IfAction SubSystem: '/If Action Subsystem2' incorporates: - * ActionPort: '/Action Port' - */ - /* Merge: '/Merge' incorporates: - * Constant: '/Constant' - * Sum: '/step inc' - */ - rtB.Merge_c = (int8_t)(rtb_Switch_hx + 1); - - /* MATLAB Function: '/MIN POSITION' incorporates: - * DataStoreRead: '/Data Store Read3' - */ - /* : y = step; */ - /* : if(LOGGER==2) */ - if (rtDW.LOGGER_LIN == 2.0) { - /* : fprintf('LIN2 SIMULINK Min_position_Ch0 '); */ - printf("LIN2 SIMULINK Min_position_Ch0 "); - fflush(stdout); - - /* : for i = 1:numel(step) */ - for (i = 0; i < 9; i++) { - /* : fprintf('%d ', int16(step(i))); */ - printf("%d ", rtDW.Actuator_Ch1_Status_Model.in_CPOS_ALL[i]); - fflush(stdout); - } - - /* : fprintf('\n'); */ - printf("\n"); - fflush(stdout); - } - - /* End of MATLAB Function: '/MIN POSITION' */ - /* 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_c = 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 Write' - * DataStoreWrite: '/Data Store Write1' - */ - if ((rtDW.Actuator_Ch1_Status_Model.Busy == 0) && - (rtDW.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_h[i] = 2U; - - /* DataStoreWrite: '/Data Store Write' */ - rtDW.POS_private_c[i] = 1U; - } - - /* MATLAB Function: '/Initial CPOS Max' incorporates: - * DataStoreRead: '/Data Store Read3' - */ - /* : y = step; */ - /* : if(LOGGER==2) */ - if (rtDW.LOGGER_LIN == 2.0) { - /* : fprintf('LIN2 SIMULINK Initial CPOS Max - 1\n'); */ - printf("LIN2 SIMULINK Initial CPOS Max - 1\n"); - fflush(stdout); - } - - /* End of MATLAB Function: '/Initial CPOS Max' */ - - /* Merge: '/Merge' incorporates: - * Constant: '/Constant' - * SignalConversion generated from: '/step' - * Sum: '/step inc' - */ - rtB.Merge_c = (int8_t)(rtb_Switch_hx + 1); - - /* 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_c = 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 Write' - * DataStoreWrite: '/Data Store Write1' - */ - if ((rtDW.Actuator_Ch1_Status_Model.Busy == 0) && - (rtDW.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_m[i] = 1U; - - /* DataStoreWrite: '/Data Store Write2' incorporates: - * Constant: '/Constant10' - */ - rtDW.Stall_private_j[i] = 1U; - - /* DataStoreWrite: '/Data Store Write3' incorporates: - * Constant: '/Constant11' - */ - rtDW.Lnoise_private_d[i] = 0U; - - /* DataStoreWrite: '/Data Store Write6' incorporates: - * Constant: '/Constant14' - */ - rtDW.Coils_private_n[i] = 0U; - - /* DataStoreWrite: '/Data Store Write5' incorporates: - * Constant: '/Constant2' - */ - rtDW.Speed_private_o[i] = 3U; - - /* DataStoreWrite: '/Data Store Write' */ - rtDW.POS_private_c[i] = 6000U; - - /* DataStoreWrite: '/Data Store Write1' incorporates: - * Constant: '/Constant9' - */ - rtDW.COM_private_h[i] = 3U; - } - - /* MATLAB Function: '/Move to position Max' incorporates: - * DataStoreRead: '/Data Store Read3' - */ - /* : y = step; */ - /* : if(LOGGER==2) */ - if (rtDW.LOGGER_LIN == 2.0) { - /* : fprintf('LIN2 SIMULINK Move to position Max - 6000\n'); */ - printf("LIN2 SIMULINK Move to position Max - 6000\n"); - fflush(stdout); - } - - /* End of MATLAB Function: '/Move to position Max' */ - - /* Merge: '/Merge' incorporates: - * Constant: '/Constant' - * SignalConversion generated from: '/step' - * Sum: '/step inc' - */ - rtB.Merge_c = (int8_t)(rtb_Switch_hx + 1); - - /* 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_c = 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' - */ - /* RelationalOperator: '/Relational Operator1' incorporates: - * DataStoreRead: '/Data Store Read1' - * RelationalOperator: '/Relational Operator' - */ - for (i = 0; i < 9; i++) { - rtb_RelationalOperator_htm[i] = - (rtDW.Actuator_Ch1_Status_Model.in_Act_Stall_Slave[i] == 1); - } - - /* End of RelationalOperator: '/Relational Operator1' */ - - /* Logic: '/Logical Operator2' incorporates: - * RelationalOperator: '/Relational Operator' - */ - rtb_LogicalOperator1 = rtb_RelationalOperator_htm[0]; - for (i = 0; i < 8; i++) { - rtb_LogicalOperator1 = (rtb_LogicalOperator1 || - rtb_RelationalOperator_htm[i + 1]); - } - - /* RelationalOperator: '/Relational Operator' incorporates: - * DataStoreRead: '/Data Store Read1' - */ - for (i = 0; i < 9; i++) { - rtb_RelationalOperator_htm[i] = - (rtDW.Actuator_Ch1_Status_Model.in_CPOS_ALL[i] == 6000); - } - - /* End of RelationalOperator: '/Relational Operator' */ - - /* Logic: '/Logical Operator1' incorporates: - * RelationalOperator: '/Relational Operator' - */ - rtb_LogicalOperator1_f = rtb_RelationalOperator_htm[0]; - for (i = 0; i < 8; i++) { - rtb_LogicalOperator1_f = (rtb_LogicalOperator1_f || - rtb_RelationalOperator_htm[i + 1]); - } - - /* If: '/If2' incorporates: - * DataStoreRead: '/Data Store Read1' - * DataStoreWrite: '/Data Store Write' - * DataStoreWrite: '/Data Store Write1' - * DataTypeConversion: '/Data Type Conversion' - * DataTypeConversion: '/Data Type Conversion1' - * Logic: '/Logical Operator' - * Logic: '/Logical Operator1' - * Logic: '/Logical Operator2' - */ - if ((rtDW.Actuator_Ch1_Status_Model.Busy == 0) && - (rtDW.Actuator_Ch1_Status_Model.Error_Connect == 0) && - (rtb_LogicalOperator1 || rtb_LogicalOperator1_f)) { - /* Outputs for IfAction SubSystem: '/If Action Subsystem2' incorporates: - * ActionPort: '/Action Port' - */ - /* Merge: '/Merge' incorporates: - * Constant: '/Constant' - * Sum: '/step inc' - */ - rtB.Merge_c = (int8_t)(rtb_Switch_hx + 1); - - /* MATLAB Function: '/MIN POSITION' incorporates: - * DataStoreRead: '/Data Store Read3' - */ - /* : y = step; */ - /* : if(LOGGER==2) */ - if (rtDW.LOGGER_LIN == 2.0) { - /* : fprintf('LIN2 SIMULINK Max_position_Ch0 '); */ - printf("LIN2 SIMULINK Max_position_Ch0 "); - fflush(stdout); - - /* : for i = 1:numel(step) */ - for (i = 0; i < 9; i++) { - /* : fprintf('%d ', int16(step(i))); */ - printf("%d ", rtDW.Actuator_Ch1_Status_Model.in_CPOS_ALL[i]); - fflush(stdout); - } - - /* : fprintf('\n'); */ - printf("\n"); - fflush(stdout); - } - - /* End of MATLAB Function: '/MIN POSITION' */ - /* 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_c = 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: - break; - } - - /* End of SwitchCase: '/Switch Case' */ - - /* DataStoreWrite: '/Finish write stepSig' */ - rtDW.stepSig_private_c = rtB.Merge_c; - 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_Ch1_Command_Model.POS[i] = rtDW.POS_private_c[i]; - Actuator_Ch1_Command_Model.BUS_ADR[i] = rtDW.BUS_ADR_private_p[i]; - Actuator_Ch1_Command_Model.MODE[i] = rtDW.MODE_private_a[i]; - Actuator_Ch1_Command_Model.COM[i] = rtDW.COM_private_h[i]; - Actuator_Ch1_Command_Model.Stall_SET[i] = rtDW.Stall_private_j[i]; - Actuator_Ch1_Command_Model.Lnoise_SET[i] = rtDW.Lnoise_private_d[i]; - Actuator_Ch1_Command_Model.Autos_SET[i] = rtDW.Autos_private_m[i]; - Actuator_Ch1_Command_Model.Speed_SET[i] = rtDW.Speed_private_o[i]; - Actuator_Ch1_Command_Model.Coils_Stop_SET[i] = rtDW.Coils_private_n[i]; - - /* DataStoreWrite: '/Data Store Write' */ - rtDW.COM_private_h[i] = 0U; - } - - /* MATLAB Function: '/Write Ignition' incorporates: - * DataStoreRead: '/Data Store Read3' - */ - /* : if(LOGGER==2) */ - if (rtDW.LOGGER_LIN == 2.0) { - /* : fprintf('LIN2 step = %d\n',step); */ - printf("LIN2 step = %d\n", rtb_Switch_hx); - fflush(stdout); - } - - /* End of MATLAB Function: '/Write Ignition' */ - - /* DataStoreWrite: '/Data Store Write' incorporates: - * DataStoreRead: '/Data Store Read1' - */ - rtb_Gain_l = rtDW.Actuator_Ch2_Status_Model.Busy; - - /* DataStoreWrite: '/Data Store Write1' incorporates: - * DataStoreRead: '/Data Store Read1' - */ - rtb_Gain2 = rtDW.Actuator_Ch2_Status_Model.Error_Connect; - - /* Switch: '/Switch' incorporates: - * Constant: '/Constant1' - * DataStoreRead: '/Data Store Read' - * DataStoreRead: '/Data Store Read2' - */ - if (rtDW.stepSig_private_p > 0) { - rtb_Switch_hx = rtDW.stepSig_private_p; - } 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' - */ - StopMode(rtb_Switch_hx, &rtB.Merge_cs, &rtb_Gain_l, rtDW.COM_private_j, - &rtb_Gain2, rtDW.MODE_private_an); - - /* 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 Write' - * DataStoreWrite: '/Data Store Write1' - */ - if ((rtDW.Actuator_Ch2_Status_Model.Busy == 0) && - (rtDW.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_a[i] = 6000U; - - /* DataStoreWrite: '/Data Store Write1' */ - rtDW.COM_private_j[i] = 2U; - } - - /* MATLAB Function: '/Initial CPOS Min' incorporates: - * DataStoreRead: '/Data Store Read3' - */ - /* : y = step; */ - /* : if(LOGGER==2) */ - if (rtDW.LOGGER_LIN == 2.0) { - /* : fprintf('LIN3 SIMULINK Initial CPOS Min - 6000\n'); */ - printf("LIN3 SIMULINK Initial CPOS Min - 6000\n"); - fflush(stdout); - } - - /* End of MATLAB Function: '/Initial CPOS Min' */ - - /* Merge: '/Merge' incorporates: - * Constant: '/Constant' - * Merge: '/Merge' - * SignalConversion generated from: '/step' - * Sum: '/step inc' - */ - rtB.Merge_cs = (int8_t)(rtb_Switch_hx + 1); - - /* 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_cs = 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' - */ - /* MATLAB Function: '/Write Ignition' incorporates: - * DataStoreRead: '/Data Store Read1' - * DataStoreRead: '/Data Store Read3' - * DataStoreWrite: '/Data Store Write' - */ - /* : if(LOGGER==2) */ - if (rtDW.LOGGER_LIN == 2.0) { - /* : fprintf('Busy_private = %u\n',step); */ - printf("Busy_private = %u\n", rtDW.Actuator_Ch2_Status_Model.Busy); - fflush(stdout); - } - - /* End of MATLAB Function: '/Write Ignition' */ - - /* MATLAB Function: '/Write Ignition1' incorporates: - * DataStoreRead: '/Data Store Read1' - * DataStoreWrite: '/Data Store Write1' - */ - /* : if(LOGGER==2) */ - if (rtDW.Actuator_Ch2_Status_Model.Error_Connect == 2) { - /* : fprintf('Error_Connect_private = %u\n',step); */ - printf("Error_Connect_private = %u\n", - rtDW.Actuator_Ch2_Status_Model.Error_Connect); - fflush(stdout); - } - - /* End of MATLAB Function: '/Write Ignition1' */ - - /* If: '/If1' incorporates: - * DataStoreRead: '/Data Store Read1' - * DataStoreWrite: '/Data Store Write' - * DataStoreWrite: '/Data Store Write1' - */ - if ((rtDW.Actuator_Ch2_Status_Model.Busy == 0) && - (rtDW.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_an[i] = 0U; - - /* DataStoreWrite: '/Data Store Write1' */ - rtDW.COM_private_j[i] = 1U; - } - - /* MATLAB Function: '/Normal Mode' incorporates: - * DataStoreRead: '/Data Store Read3' - */ - /* : y = step; */ - /* : if(LOGGER==2) */ - if (rtDW.LOGGER_LIN == 2.0) { - /* : fprintf('LIN3 SIMULINK Normal Mode\n'); */ - printf("LIN3 SIMULINK Normal Mode\n"); - fflush(stdout); - } - - /* End of MATLAB Function: '/Normal Mode' */ - - /* Merge: '/Merge' incorporates: - * Constant: '/Constant' - * SignalConversion generated from: '/step' - * Sum: '/step inc' - */ - rtB.Merge_cs = (int8_t)(rtb_Switch_hx + 1); - - /* 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_cs = 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 Write' - * DataStoreWrite: '/Data Store Write1' - */ - if ((rtDW.Actuator_Ch2_Status_Model.Busy == 0) && - (rtDW.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_j[i] = 1U; - - /* DataStoreWrite: '/Data Store Write2' incorporates: - * Constant: '/Constant10' - */ - rtDW.Stall_private_n[i] = 1U; - - /* DataStoreWrite: '/Data Store Write3' incorporates: - * Constant: '/Constant11' - */ - rtDW.Lnoise_private_j[i] = 0U; - - /* DataStoreWrite: '/Data Store Write6' incorporates: - * Constant: '/Constant14' - */ - rtDW.Coils_private_f[i] = 0U; - - /* DataStoreWrite: '/Data Store Write5' incorporates: - * Constant: '/Constant2' - */ - rtDW.Speed_private_e[i] = 3U; - - /* DataStoreWrite: '/Data Store Write' */ - rtDW.POS_private_a[i] = 1U; - - /* DataStoreWrite: '/Data Store Write1' incorporates: - * Constant: '/Constant9' - */ - rtDW.COM_private_j[i] = 3U; - } - - /* MATLAB Function: '/Move to position Min' incorporates: - * DataStoreRead: '/Data Store Read3' - */ - /* : y = step; */ - /* : if(LOGGER==2) */ - if (rtDW.LOGGER_LIN == 2.0) { - /* : fprintf('LIN3 SIMULINK Move to position Min - 1\n'); */ - printf("LIN3 SIMULINK Move to position Min - 1\n"); - fflush(stdout); - } - - /* End of MATLAB Function: '/Move to position Min' */ - - /* Merge: '/Merge' incorporates: - * Constant: '/Constant' - * SignalConversion generated from: '/step' - * Sum: '/step inc' - */ - rtB.Merge_cs = (int8_t)(rtb_Switch_hx + 1); - - /* 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_cs = 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' - */ - /* RelationalOperator: '/Relational Operator1' incorporates: - * DataStoreRead: '/Data Store Read1' - * RelationalOperator: '/Relational Operator' - */ - for (i = 0; i < 9; i++) { - rtb_RelationalOperator_htm[i] = - (rtDW.Actuator_Ch2_Status_Model.in_Act_Stall_Slave[i] == 1); - } - - /* End of RelationalOperator: '/Relational Operator1' */ - - /* Logic: '/Logical Operator2' incorporates: - * RelationalOperator: '/Relational Operator' - */ - rtb_LogicalOperator1 = rtb_RelationalOperator_htm[0]; - for (i = 0; i < 8; i++) { - rtb_LogicalOperator1 = (rtb_LogicalOperator1 || - rtb_RelationalOperator_htm[i + 1]); - } - - /* RelationalOperator: '/Relational Operator' incorporates: - * DataStoreRead: '/Data Store Read1' - */ - for (i = 0; i < 9; i++) { - rtb_RelationalOperator_htm[i] = - (rtDW.Actuator_Ch2_Status_Model.in_CPOS_ALL[i] == 1); - } - - /* End of RelationalOperator: '/Relational Operator' */ - - /* Logic: '/Logical Operator1' incorporates: - * RelationalOperator: '/Relational Operator' - */ - rtb_LogicalOperator1_f = rtb_RelationalOperator_htm[0]; - for (i = 0; i < 8; i++) { - rtb_LogicalOperator1_f = (rtb_LogicalOperator1_f || - rtb_RelationalOperator_htm[i + 1]); - } - - /* If: '/If2' incorporates: - * DataStoreRead: '/Data Store Read1' - * DataStoreWrite: '/Data Store Write' - * DataStoreWrite: '/Data Store Write1' - * DataTypeConversion: '/Data Type Conversion' - * DataTypeConversion: '/Data Type Conversion1' - * Logic: '/Logical Operator' - * Logic: '/Logical Operator1' - * Logic: '/Logical Operator2' - */ - if ((rtDW.Actuator_Ch2_Status_Model.Busy == 0) && - (rtDW.Actuator_Ch2_Status_Model.Error_Connect == 0) && - (rtb_LogicalOperator1 || rtb_LogicalOperator1_f)) { - /* Outputs for IfAction SubSystem: '/If Action Subsystem2' incorporates: - * ActionPort: '/Action Port' - */ - /* Merge: '/Merge' incorporates: - * Constant: '/Constant' - * Sum: '/step inc' - */ - rtB.Merge_cs = (int8_t)(rtb_Switch_hx + 1); - - /* MATLAB Function: '/MIN POSITION' incorporates: - * DataStoreRead: '/Data Store Read3' - */ - /* : y = step; */ - /* : if(LOGGER==2) */ - if (rtDW.LOGGER_LIN == 2.0) { - /* : fprintf('LIN3 SIMULINK Min_position_Ch0 '); */ - printf("LIN3 SIMULINK Min_position_Ch0 "); - fflush(stdout); - - /* : for i = 1:numel(step) */ - for (i = 0; i < 9; i++) { - /* : fprintf('%d ', int16(step(i))); */ - printf("%d ", rtDW.Actuator_Ch2_Status_Model.in_CPOS_ALL[i]); - fflush(stdout); - } - - /* : fprintf('\n'); */ - printf("\n"); - fflush(stdout); - } - - /* End of MATLAB Function: '/MIN POSITION' */ - /* 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_cs = 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 Write' - * DataStoreWrite: '/Data Store Write1' - */ - if ((rtDW.Actuator_Ch2_Status_Model.Busy == 0) && - (rtDW.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_j[i] = 2U; - - /* DataStoreWrite: '/Data Store Write' */ - rtDW.POS_private_a[i] = 1U; - } - - /* MATLAB Function: '/Initial CPOS Max' incorporates: - * DataStoreRead: '/Data Store Read3' - */ - /* : y = step; */ - /* : if(LOGGER==2) */ - if (rtDW.LOGGER_LIN == 2.0) { - /* : fprintf('LIN3 SIMULINK Initial CPOS Max - 1\n'); */ - printf("LIN3 SIMULINK Initial CPOS Max - 1\n"); - fflush(stdout); - } - - /* End of MATLAB Function: '/Initial CPOS Max' */ - - /* Merge: '/Merge' incorporates: - * Constant: '/Constant' - * SignalConversion generated from: '/step' - * Sum: '/step inc' - */ - rtB.Merge_cs = (int8_t)(rtb_Switch_hx + 1); - - /* 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_cs = 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 Write' - * DataStoreWrite: '/Data Store Write1' - */ - if ((rtDW.Actuator_Ch2_Status_Model.Busy == 0) && - (rtDW.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_j[i] = 1U; - - /* DataStoreWrite: '/Data Store Write2' incorporates: - * Constant: '/Constant10' - */ - rtDW.Stall_private_n[i] = 1U; - - /* DataStoreWrite: '/Data Store Write3' incorporates: - * Constant: '/Constant11' - */ - rtDW.Lnoise_private_j[i] = 0U; - - /* DataStoreWrite: '/Data Store Write6' incorporates: - * Constant: '/Constant14' - */ - rtDW.Coils_private_f[i] = 0U; - - /* DataStoreWrite: '/Data Store Write5' incorporates: - * Constant: '/Constant2' - */ - rtDW.Speed_private_e[i] = 3U; - - /* DataStoreWrite: '/Data Store Write' */ - rtDW.POS_private_a[i] = 6000U; - - /* DataStoreWrite: '/Data Store Write1' incorporates: - * Constant: '/Constant9' - */ - rtDW.COM_private_j[i] = 3U; - } - - /* MATLAB Function: '/Move to position Max' incorporates: - * DataStoreRead: '/Data Store Read3' - */ - /* : y = step; */ - /* : if(LOGGER==2) */ - if (rtDW.LOGGER_LIN == 2.0) { - /* : fprintf('LIN3 SIMULINK Move to position Max - 6000\n'); */ - printf("LIN3 SIMULINK Move to position Max - 6000\n"); - fflush(stdout); - } - - /* End of MATLAB Function: '/Move to position Max' */ - - /* Merge: '/Merge' incorporates: - * Constant: '/Constant' - * SignalConversion generated from: '/step' - * Sum: '/step inc' - */ - rtB.Merge_cs = (int8_t)(rtb_Switch_hx + 1); - - /* 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_cs = 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' - */ - /* RelationalOperator: '/Relational Operator1' incorporates: - * DataStoreRead: '/Data Store Read1' - * RelationalOperator: '/Relational Operator' - */ - for (i = 0; i < 9; i++) { - rtb_RelationalOperator_htm[i] = - (rtDW.Actuator_Ch2_Status_Model.in_Act_Stall_Slave[i] == 1); - } - - /* End of RelationalOperator: '/Relational Operator1' */ - - /* Logic: '/Logical Operator2' incorporates: - * RelationalOperator: '/Relational Operator' - */ - rtb_LogicalOperator1 = rtb_RelationalOperator_htm[0]; - for (i = 0; i < 8; i++) { - rtb_LogicalOperator1 = (rtb_LogicalOperator1 || - rtb_RelationalOperator_htm[i + 1]); - } - - /* RelationalOperator: '/Relational Operator' incorporates: - * DataStoreRead: '/Data Store Read1' - */ - for (i = 0; i < 9; i++) { - rtb_RelationalOperator_htm[i] = - (rtDW.Actuator_Ch2_Status_Model.in_CPOS_ALL[i] == 6000); - } - - /* End of RelationalOperator: '/Relational Operator' */ - - /* Logic: '/Logical Operator1' incorporates: - * RelationalOperator: '/Relational Operator' - */ - rtb_LogicalOperator1_f = rtb_RelationalOperator_htm[0]; - for (i = 0; i < 8; i++) { - rtb_LogicalOperator1_f = (rtb_LogicalOperator1_f || - rtb_RelationalOperator_htm[i + 1]); - } - - /* If: '/If2' incorporates: - * DataStoreRead: '/Data Store Read1' - * DataStoreWrite: '/Data Store Write' - * DataStoreWrite: '/Data Store Write1' - * DataTypeConversion: '/Data Type Conversion' - * DataTypeConversion: '/Data Type Conversion1' - * Logic: '/Logical Operator' - * Logic: '/Logical Operator1' - * Logic: '/Logical Operator2' - */ - if ((rtDW.Actuator_Ch2_Status_Model.Busy == 0) && - (rtDW.Actuator_Ch2_Status_Model.Error_Connect == 0) && - (rtb_LogicalOperator1 || rtb_LogicalOperator1_f)) { - /* Outputs for IfAction SubSystem: '/If Action Subsystem2' incorporates: - * ActionPort: '/Action Port' - */ - /* Merge: '/Merge' incorporates: - * Constant: '/Constant' - * Sum: '/step inc' - */ - rtB.Merge_cs = (int8_t)(rtb_Switch_hx + 1); - - /* MATLAB Function: '/MIN POSITION' incorporates: - * DataStoreRead: '/Data Store Read3' - */ - /* : y = step; */ - /* : if(LOGGER==2) */ - if (rtDW.LOGGER_LIN == 2.0) { - /* : fprintf('LIN3 SIMULINK Max_position_Ch0 '); */ - printf("LIN3 SIMULINK Max_position_Ch0 "); - fflush(stdout); - - /* : for i = 1:numel(step) */ - for (i = 0; i < 9; i++) { - /* : fprintf('%d ', int16(step(i))); */ - printf("%d ", rtDW.Actuator_Ch2_Status_Model.in_CPOS_ALL[i]); - fflush(stdout); - } - - /* : fprintf('\n'); */ - printf("\n"); - fflush(stdout); - } - - /* End of MATLAB Function: '/MIN POSITION' */ - /* 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_cs = 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: - break; - } - - /* End of SwitchCase: '/Switch Case' */ - - /* Outport: '/Out1' incorporates: - * DataStoreRead: '/Data Store Read10' - */ - rtY.Out1 = CCU_Errors_Model; - - /* DataStoreWrite: '/Finish write stepSig' */ - rtDW.stepSig_private_p = rtB.Merge_cs; - 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_Ch2_Command_Model.POS[i] = rtDW.POS_private_a[i]; - Actuator_Ch2_Command_Model.BUS_ADR[i] = rtDW.BUS_ADR_private_f[i]; - Actuator_Ch2_Command_Model.MODE[i] = rtDW.MODE_private_an[i]; - Actuator_Ch2_Command_Model.COM[i] = rtDW.COM_private_j[i]; - Actuator_Ch2_Command_Model.Stall_SET[i] = rtDW.Stall_private_n[i]; - Actuator_Ch2_Command_Model.Lnoise_SET[i] = rtDW.Lnoise_private_j[i]; - Actuator_Ch2_Command_Model.Autos_SET[i] = rtDW.Autos_private_j[i]; - Actuator_Ch2_Command_Model.Speed_SET[i] = rtDW.Speed_private_e[i]; - Actuator_Ch2_Command_Model.Coils_Stop_SET[i] = rtDW.Coils_private_f[i]; - - /* DataStoreWrite: '/Data Store Write' */ - rtDW.COM_private_j[i] = 0U; - } - - /* MATLAB Function: '/Write Ignition' incorporates: - * DataStoreRead: '/Data Store Read3' - */ - /* : if(LOGGER==2) */ - if (rtDW.LOGGER_LIN == 2.0) { - /* : fprintf('LIN3 step = %d\n',step); */ - printf("LIN3 step = %d\n", rtb_Switch_hx); - fflush(stdout); - } - - /* End of MATLAB Function: '/Write Ignition' */ - /* DataStoreWrite: '/Data Store Write' incorporates: * Constant: '/Constant' */ - rtDW.LOGGER_LIN = 2.0; + rtDW.LOGGER_LIN = 1.0; + + /* Outport: '/Out2' incorporates: + * DataStoreRead: '/Data Store Read1' + */ + memcpy(&rtY.Out2[0], &rtDW.dtc_state_error_model[0], 127U * sizeof(uint8_t)); /* If: '/если SC front не завершен' incorporates: + * DataStoreRead: '/Data Store Read' * DataStoreRead: '/Data Store Read1' + * DataTypeConversion: '/Data Type Conversion' */ - if (rtDW.start_control_finished_front == 0) { - /* Outputs for IfAction SubSystem: '/Start Control Front' incorporates: - * ActionPort: '/Action Port' + 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' */ - /* SwitchCase: '/Switch Case' incorporates: - * DataStoreRead: '/Data Store Read' + /* 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' + */ + /* SwitchCase: '/Switch Case' incorporates: + * DataStoreRead: '/Data Store Read' */ switch (rtDW.step_start_controle_front) { case -1: - /* Outputs for IfAction SubSystem: '/Step -1 F' 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' */ - g_assSTART_ENTER_INCAR_a(rtB.Merge_b, &AMB); + /* MATLAB Function: '/g_assSTART_ENTER_INCAR' */ + g_assSTART_ENTER_INCAR_j(rtB.Merge_b, &AMB); - /* MATLAB Function: '/g_ausSTART_ENTER_SETTEMP' */ + /* MATLAB Function: '/g_ausSTART_ENTER_SETTEMP' */ /* : out = g_ausSTART_ENTER_SETTEMP(LVL+1); */ i = (int32_t)(rtB.Merge_b + 1U); if (rtB.Merge_b + 1U > 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_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 > AMB) && (rtDW.MODE_DRIVER == 1.0) && (rtDW.SET_FL < g_ausSTART_ENTER_SETTEMP[i - 1])) { - /* Merge: '/Merge' incorporates: - * Constant: '/Constant1' - * SignalConversion generated from: '/step' + /* Merge: '/Merge' incorporates: + * Constant: '/Constant1' */ - rtB.Merge_i = 0; + rtB.Merge_h = 0; } else { - /* Merge: '/Merge' incorporates: - * Constant: '/Constant' - * SignalConversion generated from: '/step' + /* Merge: '/Merge' incorporates: + * Constant: '/Constant' */ - rtB.Merge_i = -1; + rtB.Merge_h = -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' */ - g_assSTART_ENTER_INCAR_a(rtB.Merge_b, &AMB); + /* MATLAB Function: '/g_assSTART_ENTER_INCAR' */ + g_assSTART_ENTER_INCAR_j(rtB.Merge_b, &AMB); - /* MATLAB Function: '/g_ausSTART_ENTER_SETTEMP' */ + /* MATLAB Function: '/g_ausSTART_ENTER_SETTEMP' */ /* : out = int16(g_ausSTART_ENTER_SETTEMP(LVL+1)); */ i = (int32_t)(rtB.Merge_b + 1U); if (rtB.Merge_b + 1U > 255U) { @@ -9593,382 +9319,404 @@ void HVAC_model_step(void) Blower_FR = 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 > AMB) && (rtDW.MODE_DRIVER == 1.0) && (rtDW.SET_FL < Blower_FR)) { - /* Merge: '/Merge' incorporates: - * Constant: '/Constant1' + /* Merge: '/Merge' incorporates: + * Constant: '/Constant1' */ - rtB.Merge_i = 0; + rtB.Merge_h = 0; } else { - /* Merge: '/Merge' incorporates: - * Constant: '/Constant' + /* Merge: '/Merge' incorporates: + * Constant: '/Constant' */ - rtB.Merge_i = -1; + rtB.Merge_h = -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_i = 0; + rtB.Merge_h = 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' */ - Level3(&rtB.Merge_i, &rtDW.ECT, &rtB.Merge_b, &rtDW.MODE_DRIVER); + /* MATLAB Function: '/g_assSTART_ENTER_COOLANT ' */ + g_assSTART_ENTER_COOLANT_p(rtB.Merge_b, &Incar_FL); - /* End of Outputs for SubSystem: '/Level 3' */ + /* 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' + */ + rtB.Merge_h = 0; + } else { + /* Merge: '/Merge' incorporates: + * Constant: '/Constant' + */ + rtB.Merge_h = -1; + } + + /* 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' */ - Level3(&rtB.Merge_i, &rtDW.ECT, &rtB.Merge_b, &rtDW.MODE_DRIVER); + Level4(&rtB.Merge_h, &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' */ - Level3(&rtB.Merge_i, &rtDW.ECT, &rtB.Merge_b, &rtDW.MODE_DRIVER); + Level4(&rtB.Merge_h, &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' */ + /* 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_i); + Level0(&rtB.Merge_h); - /* 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_i); + Level0(&rtB.Merge_h); - /* 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_i); + Level0(&rtB.Merge_h); - /* 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_l); - /* 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); - /* 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_pe = 1U; + 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)); */ i = (int32_t)(rtB.Merge_b + 1U); if (rtB.Merge_b + 1U > 255U) { i = 255; } - rtb_dt_du = (uint32_t)i - 2U; + rtb_dt_lu = (uint32_t)i - 2U; if ((uint32_t)i - 2U > (uint32_t)i) { - rtb_dt_du = 0U; + rtb_dt_lu = 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_i = (int8_t)(rtDW.ECT > g_assSTART_COOLANT_STEP0_TO_1[(int32_t) - rtb_dt_du - 1]); + rtB.Merge_h = (int8_t)(rtDW.ECT > g_assSTART_COOLANT_STEP0_TO_1[(int32_t) + rtb_dt_lu - 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_l); - /* 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); - /* 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_pe = 1U; + 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 ' */ - g_assSTART_COOLANT_STEP0_TO_1_k(rtB.Merge_b, &Incar_FL); + /* 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_i = (int8_t)(rtDW.ECT > Incar_FL); + rtB.Merge_h = (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_l); - /* 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); - /* 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_pe = 1U; + 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 ' */ - g_assSTART_COOLANT_STEP0_TO_1_k(rtB.Merge_b, &Incar_FL); + /* 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_i = (int8_t)(rtDW.ECT > Incar_FL); + rtB.Merge_h = (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_pe); + 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_l); - /* 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); - /* 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, &AMB); - /* 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)); */ i = (int32_t)(rtB.Merge_b + 1U); if (rtB.Merge_b + 1U > 255U) { @@ -9980,1366 +9728,1366 @@ void HVAC_model_step(void) Blower_FR = 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 < AMB) || (rtDW.t_now - - rtDW.t_start_delay_private_DSTATE_i > (uint16_t)(1000 * Blower_FR))) + rtDW.t_start_delay_private_DSTATE_pd > (uint16_t)(1000 * Blower_FR))) { - /* 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_i = 2; + rtB.Merge_h = 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_i = 1; + rtB.Merge_h = 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_it)) { - rtDW.t_start_delay_private_DSTATE_i = rtDW.t_now; + if (rtb_LogicalOperator1 && (!rtDW.Cond_prev_private_DSTATE_g)) { + rtDW.t_start_delay_private_DSTATE_pd = rtDW.t_now; } - /* End of Switch: '/Switch' */ + /* End of Switch: '/Switch' */ - /* Update for UnitDelay: '/Cond_prev_private ' */ - rtDW.Cond_prev_private_DSTATE_it = rtb_LogicalOperator1; + /* Update for UnitDelay: '/Cond_prev_private ' */ + rtDW.Cond_prev_private_DSTATE_g = 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_pe); + 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_l); - /* 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); - /* 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, &AMB); - /* 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_F); - /* 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_f = (rtDW.t_now - - rtDW.t_start_delay_private_DSTATE_gu > (uint32_t)(1000 * Eva_F)); + rtDW.t_start_delay_private_DSTATE_mk > (uint32_t)(1000 * 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 ' */ - if (rtb_LogicalOperator1 && (!rtDW.Cond_prev_private_DSTATE_l)) { - rtDW.t_start_delay_private_DSTATE_gu = rtDW.t_now; + if (rtb_LogicalOperator1 && (!rtDW.Cond_prev_private_DSTATE_hs)) { + 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 < AMB) || rtb_LogicalOperator1_f) { - /* Merge: '/Merge' incorporates: - * Constant: '/go to next step' + /* Merge: '/Merge' incorporates: + * Constant: '/go to next step' */ - rtB.Merge_i = 2; + rtB.Merge_h = 2; } else { - /* Merge: '/Merge' incorporates: - * Constant: '/stay at step 1' + /* Merge: '/Merge' incorporates: + * Constant: '/stay at step 1' */ - rtB.Merge_i = 1; + rtB.Merge_h = 1; } - /* End of Switch: '/Switch' */ + /* End of Switch: '/Switch' */ - /* Update for UnitDelay: '/Cond_prev_private ' */ - rtDW.Cond_prev_private_DSTATE_l = rtb_LogicalOperator1; + /* Update for UnitDelay: '/Cond_prev_private ' */ + rtDW.Cond_prev_private_DSTATE_hs = 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_i = 2; + rtB.Merge_h = 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_pe); + 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_l); - /* 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); - /* 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_fw); + /* MATLAB Function: '/blower min max' */ + blowerminmax(rtB.Merge_b, rtb_out_en); - /* MATLAB Function: '/ECT min max' */ - ECTminmax(rtB.Merge_b, rtb_out_nh); + /* MATLAB Function: '/ECT min max' */ + ECTminmax(rtB.Merge_b, rtb_out_js); - /* 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_nh, - rtb_out_fw, 1U); + rtDW.Blower_FL = look1_iu16bs16lu64n32_binlcse(rtDW.ECT, rtb_out_js, + rtb_out_en, 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, &AMB); - /* 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_h = rtDW.t_now - rtDW.t_start_delay_private_DSTATE_nk; + rtb_dt_b2 = 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_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(LVL + 1 - 3)); */ - if (rtb_LogicalOperator1 && (!rtDW.Cond_prev_private_DSTATE_a)) { - rtDW.t_start_delay_private_DSTATE_nk = rtDW.t_now; + if (rtb_LogicalOperator1 && (!rtDW.Cond_prev_private_DSTATE_fi)) { + 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 ' */ + /* MATLAB Function: '/g_assSTART_COOLANT_TO_STEP2 ' */ i = (int32_t)(rtB.Merge_b + 1U); if (rtB.Merge_b + 1U > 255U) { i = 255; } /* MW:begin MISRA2012:D4.1 CERT-C:INT30-C 'Justifying MISRA CPP rule violation' */ - rtb_dt_du = (uint32_t)i - 3U; + rtb_dt_lu = (uint32_t)i - 3U; /* MW:end MISRA2012:D4.1 CERT-C:INT30-C */ if ((uint32_t)i - 3U > (uint32_t)i) { - rtb_dt_du = 0U; + rtb_dt_lu = 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 < AMB) || (rtb_dt_h > (uint32_t)(1000 * Eva_F)) || - (rtDW.ECT > g_assSTART_COOLANT_TO_STEP2[(int32_t)rtb_dt_du - 1])) { - /* Merge: '/Merge' incorporates: - * Constant: '/go to next step 2' + if ((Incar_FL < AMB) || (rtb_dt_b2 > (uint32_t)(1000 * Eva_F)) || + (rtDW.ECT > g_assSTART_COOLANT_TO_STEP2[(int32_t)rtb_dt_lu - 1])) { + /* Merge: '/Merge' incorporates: + * Constant: '/go to next step 2' */ - rtB.Merge_i = 2; + rtB.Merge_h = 2; } else { - /* Merge: '/Merge' incorporates: - * Constant: '/stay at step 1' + /* Merge: '/Merge' incorporates: + * Constant: '/stay at step 1' */ - rtB.Merge_i = 1; + rtB.Merge_h = 1; } - /* End of Switch: '/Switch' */ + /* End of Switch: '/Switch' */ - /* Update for UnitDelay: '/Cond_prev_private ' */ - rtDW.Cond_prev_private_DSTATE_a = rtb_LogicalOperator1; + /* Update for UnitDelay: '/Cond_prev_private ' */ + rtDW.Cond_prev_private_DSTATE_fi = 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(&rtB.Merge_i, &rtDW.Blower_FL, &Blower_FR, &rtDW.Dtg_FLL, - &Valve_2_way, &rtDW.Dtg_FUL, &Dtg_FUR, &rtDW.ECT, - &El_window_heating, &Incar_FL, &rtb_Gain2, &rtb_Gain_l, - &rtB.Merge_b, &rtDW.Mode_FL, &Mode_FR, &rtb_Divide1, &rtb_u_pe, - &rtDW.step_start_controle_front, &rtDW.t_now, &rtDW.Level4_lz); + Level4_c(&rtB.Merge_h, &rtDW.Blower_FL, &Blower_FR, &rtDW.Dtg_FLL, + &Valve_2_way, &rtDW.Dtg_FUL, &Dtg_FUR, &rtDW.ECT, + &El_window_heating, &Incar_FL, &rtb_Gain2, &rtb_Gain_l, + &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(&rtB.Merge_i, &rtDW.Blower_FL, &Blower_FR, &rtDW.Dtg_FLL, - &Valve_2_way, &rtDW.Dtg_FUL, &Dtg_FUR, &rtDW.ECT, - &El_window_heating, &Incar_FL, &rtb_Gain2, &rtb_Gain_l, - &rtB.Merge_b, &rtDW.Mode_FL, &Mode_FR, &rtb_Divide1, &rtb_u_pe, - &rtDW.step_start_controle_front, &rtDW.t_now, &rtDW.Level5_l); + Level4_c(&rtB.Merge_h, &rtDW.Blower_FL, &Blower_FR, &rtDW.Dtg_FLL, + &Valve_2_way, &rtDW.Dtg_FUL, &Dtg_FUR, &rtDW.ECT, + &El_window_heating, &Incar_FL, &rtb_Gain2, &rtb_Gain_l, + &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_m(rtB.Merge_b, &rtb_u_pe); + uwayvalvestatus_a(rtB.Merge_b, &rtb_u_cuz); - /* MATLAB Function: '/step' */ + /* MATLAB Function: '/step' */ Dtg_FrontLower_X(rtB.Merge_b, &rtb_Gain_l); - /* MATLAB Function: '/time for step' */ + /* MATLAB Function: '/time for step' */ timeforstep(rtB.Merge_b, &rtb_Gain2); - /* 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' */ i = 1; } else { - /* Switch: '/Switch' incorporates: - * Constant: '/Constant1' + /* Switch: '/Switch' incorporates: + * Constant: '/Constant1' */ i = -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_l / (double)rtb_Gain2 / - 1000.0 * (double)(rtDW.t_now - rtDW.UnitDelay_DSTATE_lc) * (double)i + 1000.0 * (double)(rtDW.t_now - rtDW.UnitDelay_DSTATE_k) * (double)i + (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_l); - /* MATLAB Function: '/time for step' */ - timeforstep_a(rtB.Merge_b, &rtb_Gain2); + /* MATLAB Function: '/time for step' */ + timeforstep_j(rtB.Merge_b, &rtb_Gain2); - /* 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' */ i = 1; } else { - /* Switch: '/Switch' incorporates: - * Constant: '/Constant1' + /* Switch: '/Switch' incorporates: + * Constant: '/Constant1' */ i = -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_l / (double)rtb_Gain2 / - 1000.0 * (double)(rtDW.t_now - rtDW.UnitDelay_DSTATE_jz) * (double)i + 1000.0 * (double)(rtDW.t_now - rtDW.UnitDelay_DSTATE_pb) * (double)i + (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_l); - /* 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); - /* Sum: '/Add' incorporates: - * DataStoreRead: '/Текущее значение blower ' - * DataStoreRead: '/значение auto (в соответствии с логикой)' + /* Sum: '/Add' incorporates: + * DataStoreRead: '/Текущее значение blower ' + * DataStoreRead: '/значение auto (в соответствии с логикой)' */ rtb_Gain_l = (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_l <= 0.01); - /* MATLAB Function: '/step' */ - step_l(rtB.Merge_b, &rtb_Gain2); + /* MATLAB Function: '/step' */ + step_j(rtB.Merge_b, &rtb_Gain2); - /* MATLAB Function: '/time for step' */ - timeforstep_f(rtB.Merge_b, &rtb_Gain_l); + /* MATLAB Function: '/time for step' */ + timeforstep_g(rtB.Merge_b, &rtb_Gain_l); - /* 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' */ i = 1; } else { - /* Switch: '/Switch' incorporates: - * Constant: '/Constant1' + /* Switch: '/Switch' incorporates: + * Constant: '/Constant1' */ i = -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 / (double)rtb_Gain_l / - 1000.0 * (double)(rtDW.t_now - rtDW.UnitDelay_DSTATE_d) * (double)i + 1000.0 * (double)(rtDW.t_now - rtDW.UnitDelay_DSTATE_mk) * (double)i + (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); */ Blower_FR = (uint16_t)(rtDW.Blower_FL - rtDW.Blower_logic_FL); - /* RelationalOperator: '/Relational Operator' incorporates: - * Constant: '/epsilon' + /* RelationalOperator: '/Relational Operator' incorporates: + * Constant: '/epsilon' */ rtb_LogicalOperator1 = (Blower_FR <= 0.01); - /* MATLAB Function: '/blower step' */ - blowerstep(rtB.Merge_b, &rtb_out_jk); + /* MATLAB Function: '/blower step' */ + blowerstep(rtB.Merge_b, &rtb_out_flm); - /* MATLAB Function: '/blower time for step' */ + /* MATLAB Function: '/blower time for step' */ blowertimeforstep(rtB.Merge_b, &Blower_FR); - /* 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' */ i = 1; } else { - /* Switch: '/Switch' incorporates: - * Constant: '/Constant1' + /* Switch: '/Switch' incorporates: + * Constant: '/Constant1' */ i = -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_jk / (double)Blower_FR / - 1000.0 * (double)(rtDW.t_now - rtDW.UnitDelay_DSTATE_n) * (double)i + rtDW.Blower_FL = (uint16_t)((double)rtb_out_flm / (double)Blower_FR / + 1000.0 * (double)(rtDW.t_now - rtDW.UnitDelay_DSTATE_gm) * (double)i + (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 == 1); + 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_du = rtDW.t_now - rtDW.t_start_delay_private_DSTATE_n; + rtb_dt_lu = 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_p)) { - rtDW.t_start_delay_private_DSTATE_n = rtDW.t_now; - } - - /* End of Switch: '/Switch' */ - - /* MATLAB Function: '/Time goto from step 2 to step 3 ' */ - Timegotofromstep2tostep3(rtB.Merge_b, &Incar_FL); - - /* Switch: '/Switch' incorporates: - * Gain: '/из сек в мс' - * RelationalOperator: '/Relational Operator1' - */ - if (rtb_dt_du > (uint32_t)(1000 * Incar_FL)) { - /* Merge: '/Merge' incorporates: - * Constant: '/go to next step' - */ - rtB.Merge_i = 2; - } else { - /* Merge: '/Merge' incorporates: - * Constant: '/stay at step 1' - */ - rtB.Merge_i = 1; - } - - /* End of Switch: '/Switch' */ - - /* Update for UnitDelay: '/Unit Delay' incorporates: - * DataStoreRead: '/текущее время в мс' - */ - rtDW.UnitDelay_DSTATE_lc = rtDW.t_now; - - /* Update for UnitDelay: '/Unit Delay' incorporates: - * DataStoreRead: '/текущее время в мс' - */ - rtDW.UnitDelay_DSTATE_jz = rtDW.t_now; - - /* Update for UnitDelay: '/Unit Delay' incorporates: - * DataStoreRead: '/текущее время в мс' - */ - rtDW.UnitDelay_DSTATE_d = 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_p = rtb_LogicalOperator1; - - /* End of Outputs for SubSystem: '/Level 0' */ - break; - - case 1: - /* Outputs for IfAction SubSystem: '/Level 1' incorporates: - * ActionPort: '/Action Port' - */ - /* DataStoreWrite: '/Data Store Write8' incorporates: - * MATLAB Function: '/3 way valve status' - */ - uwayvalvestatus_m(rtB.Merge_b, &rtb_u_pe); - - /* MATLAB Function: '/step' */ - Dtg_FrontLower_X(rtB.Merge_b, &rtb_Gain_l); - - /* MATLAB Function: '/time for step' */ - timeforstep(rtB.Merge_b, &rtb_Gain2); - - /* 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' */ - rtDW.Dtg_FLL = rtDW.Dtg_logic_FLL; - } else { - if (rtDW.Dtg_FLL <= rtDW.Dtg_logic_FLL) { - /* Switch: '/Switch' incorporates: - * Constant: '/Constant' - */ - i = 1; - } else { - /* Switch: '/Switch' incorporates: - * Constant: '/Constant1' - */ - i = -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' - */ - rtDW.Dtg_FLL = (uint8_t)((double)rtb_Gain_l / (double)rtb_Gain2 / - 1000.0 * (double)(rtDW.t_now - rtDW.UnitDelay_DSTATE_p) * (double)i - + (double)rtDW.Dtg_FLL); - } - - /* End of Switch: '/Switch' */ - - /* MATLAB Function: '/step' */ - Dtg_FrontUpper_X(rtB.Merge_b, &rtb_Gain_l); - - /* MATLAB Function: '/time for step' */ - timeforstep_a(rtB.Merge_b, &rtb_Gain2); - - /* 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' */ - rtDW.Dtg_FUL = rtDW.Dtg_logic_FUL; - } else { - if (rtDW.Dtg_FUL <= rtDW.Dtg_logic_FUL) { - /* Switch: '/Switch' incorporates: - * Constant: '/Constant' - */ - i = 1; - } else { - /* Switch: '/Switch' incorporates: - * Constant: '/Constant1' - */ - i = -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' - */ - rtDW.Dtg_FUL = (uint8_t)((double)rtb_Gain_l / (double)rtb_Gain2 / - 1000.0 * (double)(rtDW.t_now - rtDW.UnitDelay_DSTATE_g) * (double)i - + (double)rtDW.Dtg_FUL); - } - - /* End of Switch: '/Switch' */ - - /* DataStoreWrite: '/Data Store Write' incorporates: - * MATLAB Function: '/incar filter up' - */ - incarfilterup(rtB.Merge_b, &rtb_Gain_l); - - /* DataStoreWrite: '/Data Store Write1' incorporates: - * MATLAB Function: '/incar filter down' - */ - incarfilterdown(rtB.Merge_b, &rtb_Gain2); - - /* Sum: '/Add' incorporates: - * DataStoreRead: '/Текущее значение blower ' - * DataStoreRead: '/значение auto (в соответствии с логикой)' - */ - rtb_Gain_l = (uint8_t)(rtDW.Mode_FL - rtDW.Mode_logic_FL); - - /* MATLAB Function: '/step' */ - step_l(rtB.Merge_b, &rtb_Gain2); - - /* MATLAB Function: '/time for step' */ - timeforstep_f(rtB.Merge_b, &rtb_u_pe); - - /* Switch: '/Switch' incorporates: - * Constant: '/epsilon' - * DataStoreRead: '/Текущее значение blower ' - * DataStoreRead: '/значение auto (в соответствии с логикой)' - * RelationalOperator: '/Relational Operator' - * RelationalOperator: '/Relational Operator' - * Switch: '/Switch' - */ - if (rtb_Gain_l <= 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' - */ - i = 1; - } else { - /* Switch: '/Switch' incorporates: - * Constant: '/Constant1' - */ - i = -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' - */ - rtDW.Mode_FL = (uint8_t)((double)rtb_Gain2 / (double)rtb_u_pe / 1000.0 - * (double)(rtDW.t_now - rtDW.UnitDelay_DSTATE_l) * (double)i + - (double)rtDW.Mode_FL); - } - - /* End of Switch: '/Switch' */ - - /* MATLAB Function: '/window heating' */ - windowheating_k(rtB.Merge_b, &rtb_Gain_l); - - /* Sum: '/Add' incorporates: - * DataStoreRead: '/Текущее значение blower ' - * DataStoreRead: '/значение auto (в соответствии с логикой)' - */ - Blower_FR = (uint16_t)(rtDW.Blower_FL - rtDW.Blower_logic_FL); - - /* RelationalOperator: '/Relational Operator' incorporates: - * Constant: '/epsilon' - */ - rtb_LogicalOperator1 = (Blower_FR <= 0.01); - - /* MATLAB Function: '/blower step' */ - blowerstep(rtB.Merge_b, &rtb_out_jk); - - /* MATLAB Function: '/blower time for step' */ - blowertimeforstep(rtB.Merge_b, &Blower_FR); - - /* Switch: '/Switch' incorporates: - * DataStoreRead: '/Текущее значение blower ' - * DataStoreRead: '/значение auto (в соответствии с логикой)' - * RelationalOperator: '/Relational Operator' - * Switch: '/Switch' - */ - if (rtb_LogicalOperator1) { - /* 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' - */ - i = 1; - } else { - /* Switch: '/Switch' incorporates: - * Constant: '/Constant1' - */ - i = -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' - */ - rtDW.Blower_FL = (uint16_t)((double)rtb_out_jk / (double)Blower_FR / - 1000.0 * (double)(rtDW.t_now - rtDW.UnitDelay_DSTATE_gw) * (double)i - + (double)rtDW.Blower_FL); - } - - /* End of Switch: '/Switch' */ - - /* DataStoreWrite: '/Data Store Write7' incorporates: - * Constant: '/Recirc logic Partial REC' - */ - rtb_Divide1 = 1.0; - - /* RelationalOperator: '/Equal' incorporates: - * DataStoreRead: '/current step' - */ - rtb_LogicalOperator1 = (rtDW.step_start_controle_front == 1); - - /* Sum: '/Subtract' incorporates: - * DataStoreRead: '/Data Store Read4' - * UnitDelay: '/t_start_delay_private ' - */ - rtb_dt_du = rtDW.t_now - rtDW.t_start_delay_private_DSTATE_bd; - - /* 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_d)) { - rtDW.t_start_delay_private_DSTATE_bd = rtDW.t_now; - } - - /* End of Switch: '/Switch' */ - - /* MATLAB Function: '/Time goto from step 2 to step 3 ' */ - Timegotofromstep2tostep3(rtB.Merge_b, &Incar_FL); - - /* Switch: '/Switch' incorporates: - * Gain: '/из сек в мс' - * RelationalOperator: '/Relational Operator1' - */ - if (rtb_dt_du > (uint32_t)(1000 * Incar_FL)) { - /* Merge: '/Merge' incorporates: - * Constant: '/go to next step' - */ - rtB.Merge_i = 2; - } else { - /* Merge: '/Merge' incorporates: - * Constant: '/stay at step 1' - */ - rtB.Merge_i = 1; - } - - /* End of Switch: '/Switch' */ - - /* Update for UnitDelay: '/Unit Delay' incorporates: - * DataStoreRead: '/текущее время в мс' - */ - rtDW.UnitDelay_DSTATE_p = rtDW.t_now; - - /* Update for UnitDelay: '/Unit Delay' incorporates: - * DataStoreRead: '/текущее время в мс' - */ - rtDW.UnitDelay_DSTATE_g = rtDW.t_now; - - /* Update for UnitDelay: '/Unit Delay' incorporates: - * DataStoreRead: '/текущее время в мс' - */ - rtDW.UnitDelay_DSTATE_l = rtDW.t_now; - - /* Update for UnitDelay: '/Unit Delay' incorporates: - * DataStoreRead: '/текущее время в мс' - */ - rtDW.UnitDelay_DSTATE_gw = rtDW.t_now; - - /* Update for UnitDelay: '/Cond_prev_private ' */ - rtDW.Cond_prev_private_DSTATE_d = rtb_LogicalOperator1; - - /* End of Outputs for SubSystem: '/Level 1' */ - break; - - case 2: - /* Outputs for IfAction SubSystem: '/Level 2' incorporates: - * ActionPort: '/Action Port' - */ - /* Merge: '/Merge' incorporates: - * Constant: '/Constant' - * SignalConversion generated from: '/step' - */ - rtB.Merge_i = 3; - - /* End of Outputs for SubSystem: '/Level 2' */ - break; - - case 3: - /* Outputs for IfAction SubSystem: '/Level 3' incorporates: - * ActionPort: '/Action Port' - */ - Level3_d(&rtB.Merge_i, &Autodefog, &rtDW.Blower_FL, &Blower_FR, - &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, &rtb_Gain_l, &rtB.Merge_b, &rtDW.Mode_FL, &Mode_FR, - &rtDW.Mode_logic_FL, &rtb_Divide1, &rtb_u_pe, - &rtDW.step_start_controle_front, &rtDW.t_now, &rtDW.Level3_dl); - - /* End of Outputs for SubSystem: '/Level 3' */ - break; - - case 4: - /* Outputs for IfAction SubSystem: '/Level 4' incorporates: - * ActionPort: '/Action Port' - */ - Level3_d(&rtB.Merge_i, &Autodefog, &rtDW.Blower_FL, &Blower_FR, - &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, &rtb_Gain_l, &rtB.Merge_b, &rtDW.Mode_FL, &Mode_FR, - &rtDW.Mode_logic_FL, &rtb_Divide1, &rtb_u_pe, - &rtDW.step_start_controle_front, &rtDW.t_now, &rtDW.Level4_g); - - /* End of Outputs for SubSystem: '/Level 4' */ - break; - - case 5: - /* Outputs for IfAction SubSystem: '/Level 5' incorporates: - * ActionPort: '/Action Port' - */ - /* DataStoreWrite: '/Data Store Write8' incorporates: - * MATLAB Function: '/3 way valve status' - */ - uwayvalvestatus_m(rtB.Merge_b, &rtb_u_pe); - - /* MATLAB Function: '/step' */ - Dtg_FrontLower_X(rtB.Merge_b, &rtb_Gain_l); - - /* MATLAB Function: '/time for step' */ - timeforstep(rtB.Merge_b, &rtb_Gain2); - - /* 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' */ - rtDW.Dtg_FLL = rtDW.Dtg_logic_FLL; - } else { - if (rtDW.Dtg_FLL <= rtDW.Dtg_logic_FLL) { - /* Switch: '/Switch' incorporates: - * Constant: '/Constant' - */ - i = 1; - } else { - /* Switch: '/Switch' incorporates: - * Constant: '/Constant1' - */ - i = -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' - */ - rtDW.Dtg_FLL = (uint8_t)((double)rtb_Gain_l / (double)rtb_Gain2 / - 1000.0 * (double)(rtDW.t_now - rtDW.UnitDelay_DSTATE) * (double)i + - (double)rtDW.Dtg_FLL); - } - - /* End of Switch: '/Switch' */ - - /* MATLAB Function: '/step' */ - Dtg_FrontUpper_X(rtB.Merge_b, &rtb_Gain_l); - - /* MATLAB Function: '/time for step' */ - timeforstep_a(rtB.Merge_b, &rtb_Gain2); - - /* 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' */ - rtDW.Dtg_FUL = rtDW.Dtg_logic_FUL; - } else { - if (rtDW.Dtg_FUL <= rtDW.Dtg_logic_FUL) { - /* Switch: '/Switch' incorporates: - * Constant: '/Constant' - */ - i = 1; - } else { - /* Switch: '/Switch' incorporates: - * Constant: '/Constant1' - */ - i = -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' - */ - rtDW.Dtg_FUL = (uint8_t)((double)rtb_Gain_l / (double)rtb_Gain2 / - 1000.0 * (double)(rtDW.t_now - rtDW.UnitDelay_DSTATE_b) * (double)i - + (double)rtDW.Dtg_FUL); - } - - /* End of Switch: '/Switch' */ - - /* DataStoreWrite: '/Data Store Write' incorporates: - * MATLAB Function: '/incar filter up' - */ - incarfilterup(rtB.Merge_b, &rtb_Gain_l); - - /* DataStoreWrite: '/Data Store Write1' incorporates: - * MATLAB Function: '/incar filter down' - */ - incarfilterdown(rtB.Merge_b, &rtb_Gain2); - - /* MATLAB Function: '/autodemist (autodefog)' */ - autodemistautodefog(rtB.Merge_b, &rtb_Gain_l); - - /* Sum: '/Add' incorporates: - * DataStoreRead: '/Текущее значение blower ' - * DataStoreRead: '/значение auto (в соответствии с логикой)' - */ - rtb_Gain2 = (uint8_t)(rtDW.Mode_FL - rtDW.Mode_logic_FL); - - /* MATLAB Function: '/step' */ - step_l(rtB.Merge_b, &rtb_Gain_l); - - /* MATLAB Function: '/time for step' */ - timeforstep_f(rtB.Merge_b, &rtb_u_pe); - - /* Switch: '/Switch' incorporates: - * Constant: '/epsilon' - * DataStoreRead: '/Текущее значение blower ' - * DataStoreRead: '/значение auto (в соответствии с логикой)' - * RelationalOperator: '/Relational Operator' - * RelationalOperator: '/Relational Operator' - * Switch: '/Switch' - */ - if (rtb_Gain2 <= 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' - */ - i = 1; - } else { - /* Switch: '/Switch' incorporates: - * Constant: '/Constant1' - */ - i = -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' - */ - rtDW.Mode_FL = (uint8_t)((double)rtb_Gain_l / (double)rtb_u_pe / - 1000.0 * (double)(rtDW.t_now - rtDW.UnitDelay_DSTATE_m) * (double)i - + (double)rtDW.Mode_FL); - } - - /* End of Switch: '/Switch' */ - - /* MATLAB Function: '/window heating' */ - windowheating_k(rtB.Merge_b, &rtb_Gain2); - - /* Sum: '/Add' incorporates: - * DataStoreRead: '/Текущее значение blower ' - * DataStoreRead: '/значение auto (в соответствии с логикой)' - */ - Blower_FR = (uint16_t)(rtDW.Blower_FL - rtDW.Blower_logic_FL); - - /* RelationalOperator: '/Relational Operator' incorporates: - * Constant: '/epsilon' - */ - rtb_LogicalOperator1 = (Blower_FR <= 0.01); - - /* MATLAB Function: '/blower step' */ - blowerstep(rtB.Merge_b, &rtb_out_jk); - - /* MATLAB Function: '/blower time for step' */ - blowertimeforstep(rtB.Merge_b, &Blower_FR); - - /* Switch: '/Switch' incorporates: - * DataStoreRead: '/Текущее значение blower ' - * DataStoreRead: '/значение auto (в соответствии с логикой)' - * RelationalOperator: '/Relational Operator' - * Switch: '/Switch' - */ - if (rtb_LogicalOperator1) { - /* 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' - */ - i = 1; - } else { - /* Switch: '/Switch' incorporates: - * Constant: '/Constant1' - */ - i = -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' - */ - rtDW.Blower_FL = (uint16_t)((double)rtb_out_jk / (double)Blower_FR / - 1000.0 * (double)(rtDW.t_now - rtDW.UnitDelay_DSTATE_j) * (double)i - + (double)rtDW.Blower_FL); - } - - /* End of Switch: '/Switch' */ - - /* DataStoreWrite: '/Data Store Write7' incorporates: - * Constant: '/Recirc logic Partial REC' - */ - rtb_Divide1 = 1.0; - - /* RelationalOperator: '/Equal' incorporates: - * DataStoreRead: '/current step' - */ - rtb_LogicalOperator1 = (rtDW.step_start_controle_front == 1); - - /* 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 ' - */ - rtb_LogicalOperator1_f = (rtDW.t_now - - rtDW.t_start_delay_private_DSTATE_g > (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 ' - */ - if (rtb_LogicalOperator1 && (!rtDW.Cond_prev_private_DSTATE_fw)) { + 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' */ - /* Switch: '/Switch' incorporates: - * DataStoreRead: '/Data Store Read' - * Logic: '/Logical Operator' + /* MATLAB Function: '/Time goto from step 2 to step 3 ' */ + Timegotofromstep2tostep3(rtB.Merge_b, &Incar_FL); + + /* Switch: '/Switch' incorporates: + * Gain: '/из сек в мс' + * RelationalOperator: '/Relational Operator1' */ - if (rtb_LogicalOperator1_f || rtDW.HI_logic_on) { - /* Merge: '/Merge' incorporates: - * Constant: '/go to next step' + if (rtb_dt_lu > (uint32_t)(1000 * Incar_FL)) { + /* Merge: '/Merge' incorporates: + * Constant: '/go to next step' */ - rtB.Merge_i = 2; + rtB.Merge_h = 3; } else { - /* Merge: '/Merge' incorporates: - * Constant: '/stay at step 1' + /* Merge: '/Merge' incorporates: + * Constant: '/stay at step' */ - rtB.Merge_i = 1; + rtB.Merge_h = 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 = rtDW.t_now; + rtDW.UnitDelay_DSTATE_k = rtDW.t_now; - /* Update for UnitDelay: '/Unit Delay' incorporates: - * DataStoreRead: '/текущее время в мс' + /* Update for UnitDelay: '/Unit Delay' incorporates: + * DataStoreRead: '/текущее время в мс' */ - rtDW.UnitDelay_DSTATE_b = rtDW.t_now; + 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: '/текущее время в мс' + */ + rtDW.UnitDelay_DSTATE_gm = rtDW.t_now; + + /* Update for UnitDelay: '/Cond_prev_private ' */ + rtDW.Cond_prev_private_DSTATE_m = rtb_LogicalOperator1; + + /* End of Outputs for SubSystem: '/Level 0' */ + break; + + case 1: + /* Outputs for IfAction SubSystem: '/Level 1' incorporates: + * ActionPort: '/Action Port' + */ + /* DataStoreWrite: '/Data Store Write8' incorporates: + * MATLAB Function: '/3 way valve status' + */ + uwayvalvestatus_a(rtB.Merge_b, &rtb_u_cuz); + + /* MATLAB Function: '/step' */ + Dtg_FrontLower_X(rtB.Merge_b, &rtb_Gain_l); + + /* MATLAB Function: '/time for step' */ + timeforstep(rtB.Merge_b, &rtb_Gain2); + + /* 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' */ + rtDW.Dtg_FLL = rtDW.Dtg_logic_FLL; + } else { + if (rtDW.Dtg_FLL <= rtDW.Dtg_logic_FLL) { + /* Switch: '/Switch' incorporates: + * Constant: '/Constant' + */ + i = 1; + } else { + /* Switch: '/Switch' incorporates: + * Constant: '/Constant1' + */ + i = -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' + */ + rtDW.Dtg_FLL = (uint8_t)((double)rtb_Gain_l / (double)rtb_Gain2 / + 1000.0 * (double)(rtDW.t_now - rtDW.UnitDelay_DSTATE_m) * (double)i + + (double)rtDW.Dtg_FLL); + } + + /* End of Switch: '/Switch' */ + + /* MATLAB Function: '/step' */ + Dtg_FrontUpper_X(rtB.Merge_b, &rtb_Gain_l); + + /* MATLAB Function: '/time for step' */ + timeforstep_j(rtB.Merge_b, &rtb_Gain2); + + /* 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' */ + rtDW.Dtg_FUL = rtDW.Dtg_logic_FUL; + } else { + if (rtDW.Dtg_FUL <= rtDW.Dtg_logic_FUL) { + /* Switch: '/Switch' incorporates: + * Constant: '/Constant' + */ + i = 1; + } else { + /* Switch: '/Switch' incorporates: + * Constant: '/Constant1' + */ + i = -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' + */ + rtDW.Dtg_FUL = (uint8_t)((double)rtb_Gain_l / (double)rtb_Gain2 / + 1000.0 * (double)(rtDW.t_now - rtDW.UnitDelay_DSTATE_gf) * (double)i + + (double)rtDW.Dtg_FUL); + } + + /* End of Switch: '/Switch' */ + + /* DataStoreWrite: '/Data Store Write' incorporates: + * MATLAB Function: '/incar filter up' + */ + incarfilterup(rtB.Merge_b, &rtb_Gain_l); + + /* DataStoreWrite: '/Data Store Write1' incorporates: + * MATLAB Function: '/incar filter down' + */ + incarfilterdown(rtB.Merge_b, &rtb_Gain2); + + /* Sum: '/Add' incorporates: + * DataStoreRead: '/Текущее значение blower ' + * DataStoreRead: '/значение auto (в соответствии с логикой)' + */ + rtb_Gain_l = (uint8_t)(rtDW.Mode_FL - rtDW.Mode_logic_FL); + + /* MATLAB Function: '/step' */ + step_j(rtB.Merge_b, &rtb_Gain2); + + /* 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' + */ + if (rtb_Gain_l <= 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' + */ + i = 1; + } else { + /* Switch: '/Switch' incorporates: + * Constant: '/Constant1' + */ + i = -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' + */ + rtDW.Mode_FL = (uint8_t)((double)rtb_Gain2 / (double)rtb_u_cuz / + 1000.0 * (double)(rtDW.t_now - rtDW.UnitDelay_DSTATE_l) * (double)i + + (double)rtDW.Mode_FL); + } + + /* End of Switch: '/Switch' */ + + /* MATLAB Function: '/window heating' */ + windowheating_k(rtB.Merge_b, &rtb_Gain_l); + + /* Sum: '/Add' incorporates: + * DataStoreRead: '/Текущее значение blower ' + * DataStoreRead: '/значение auto (в соответствии с логикой)' + */ + Blower_FR = (uint16_t)(rtDW.Blower_FL - rtDW.Blower_logic_FL); + + /* RelationalOperator: '/Relational Operator' incorporates: + * Constant: '/epsilon' + */ + rtb_LogicalOperator1 = (Blower_FR <= 0.01); + + /* MATLAB Function: '/blower step' */ + blowerstep(rtB.Merge_b, &rtb_out_flm); + + /* MATLAB Function: '/blower time for step' */ + blowertimeforstep(rtB.Merge_b, &Blower_FR); + + /* Switch: '/Switch' incorporates: + * DataStoreRead: '/Текущее значение blower ' + * DataStoreRead: '/значение auto (в соответствии с логикой)' + * RelationalOperator: '/Relational Operator' + * Switch: '/Switch' + */ + if (rtb_LogicalOperator1) { + /* 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' + */ + i = 1; + } else { + /* Switch: '/Switch' incorporates: + * Constant: '/Constant1' + */ + i = -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' + */ + rtDW.Blower_FL = (uint16_t)((double)rtb_out_flm / (double)Blower_FR / + 1000.0 * (double)(rtDW.t_now - rtDW.UnitDelay_DSTATE_p0) * (double)i + + (double)rtDW.Blower_FL); + } + + /* End of Switch: '/Switch' */ + + /* DataStoreWrite: '/Data Store Write7' incorporates: + * Constant: '/Recirc logic Partial REC' + */ + rtb_Divide1 = 1.0; + + /* 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 ' + */ + rtb_dt_lu = rtDW.t_now - rtDW.t_start_delay_private_DSTATE_m; + + /* 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_m = rtDW.t_now; + } + + /* End of Switch: '/Switch' */ + + /* MATLAB Function: '/Time goto from step 2 to step 3 ' */ + Timegotofromstep2tostep3(rtB.Merge_b, &Incar_FL); + + /* Switch: '/Switch' incorporates: + * Gain: '/из сек в мс' + * RelationalOperator: '/Relational Operator1' + */ + if (rtb_dt_lu > (uint32_t)(1000 * Incar_FL)) { + /* Merge: '/Merge' incorporates: + * Constant: '/go to next step' + */ + rtB.Merge_h = 3; + } else { + /* Merge: '/Merge' incorporates: + * Constant: '/stay at step' + */ + rtB.Merge_h = 2; + } + + /* End of Switch: '/Switch' */ + + /* 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_j = rtDW.t_now; + rtDW.UnitDelay_DSTATE_gf = rtDW.t_now; - /* Update for UnitDelay: '/Cond_prev_private ' */ - rtDW.Cond_prev_private_DSTATE_fw = rtb_LogicalOperator1; + /* Update for UnitDelay: '/Unit Delay' incorporates: + * DataStoreRead: '/текущее время в мс' + */ + rtDW.UnitDelay_DSTATE_l = rtDW.t_now; - /* End of Outputs for SubSystem: '/Level 5' */ + /* Update for UnitDelay: '/Unit Delay' incorporates: + * DataStoreRead: '/текущее время в мс' + */ + rtDW.UnitDelay_DSTATE_p0 = rtDW.t_now; + + /* Update for UnitDelay: '/Cond_prev_private ' */ + rtDW.Cond_prev_private_DSTATE_b3 = rtb_LogicalOperator1; + + /* End of Outputs for SubSystem: '/Level 1' */ + break; + + case 2: + /* Outputs for IfAction SubSystem: '/Level 2' incorporates: + * ActionPort: '/Action Port' + */ + /* Merge: '/Merge' incorporates: + * Constant: '/Constant' + * SignalConversion generated from: '/step' + */ + rtB.Merge_h = 3; + + /* End of Outputs for SubSystem: '/Level 2' */ + break; + + case 3: + /* Outputs for IfAction SubSystem: '/Level 3' incorporates: + * ActionPort: '/Action Port' + */ + Level3(&rtB.Merge_h, &Autodefog, &rtDW.Blower_FL, &Blower_FR, + &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, &rtb_Gain_l, + &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' */ + break; + + case 4: + /* Outputs for IfAction SubSystem: '/Level 4' incorporates: + * ActionPort: '/Action Port' + */ + Level3(&rtB.Merge_h, &Autodefog, &rtDW.Blower_FL, &Blower_FR, + &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, &rtb_Gain_l, + &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' */ + break; + + case 5: + /* Outputs for IfAction SubSystem: '/Level 5' incorporates: + * ActionPort: '/Action Port' + */ + /* DataStoreWrite: '/Data Store Write8' incorporates: + * MATLAB Function: '/3 way valve status' + */ + uwayvalvestatus_a(rtB.Merge_b, &rtb_u_cuz); + + /* MATLAB Function: '/step' */ + Dtg_FrontLower_X(rtB.Merge_b, &rtb_Gain_l); + + /* MATLAB Function: '/time for step' */ + timeforstep(rtB.Merge_b, &rtb_Gain2); + + /* 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' */ + rtDW.Dtg_FLL = rtDW.Dtg_logic_FLL; + } else { + if (rtDW.Dtg_FLL <= rtDW.Dtg_logic_FLL) { + /* Switch: '/Switch' incorporates: + * Constant: '/Constant' + */ + i = 1; + } else { + /* Switch: '/Switch' incorporates: + * Constant: '/Constant1' + */ + i = -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' + */ + rtDW.Dtg_FLL = (uint8_t)((double)rtb_Gain_l / (double)rtb_Gain2 / + 1000.0 * (double)(rtDW.t_now - rtDW.UnitDelay_DSTATE_f) * (double)i + + (double)rtDW.Dtg_FLL); + } + + /* End of Switch: '/Switch' */ + + /* MATLAB Function: '/step' */ + Dtg_FrontUpper_X(rtB.Merge_b, &rtb_Gain_l); + + /* MATLAB Function: '/time for step' */ + timeforstep_j(rtB.Merge_b, &rtb_Gain2); + + /* 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' */ + rtDW.Dtg_FUL = rtDW.Dtg_logic_FUL; + } else { + if (rtDW.Dtg_FUL <= rtDW.Dtg_logic_FUL) { + /* Switch: '/Switch' incorporates: + * Constant: '/Constant' + */ + i = 1; + } else { + /* Switch: '/Switch' incorporates: + * Constant: '/Constant1' + */ + i = -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' + */ + rtDW.Dtg_FUL = (uint8_t)((double)rtb_Gain_l / (double)rtb_Gain2 / + 1000.0 * (double)(rtDW.t_now - rtDW.UnitDelay_DSTATE_pu) * (double)i + + (double)rtDW.Dtg_FUL); + } + + /* End of Switch: '/Switch' */ + + /* DataStoreWrite: '/Data Store Write' incorporates: + * MATLAB Function: '/incar filter up' + */ + incarfilterup(rtB.Merge_b, &rtb_Gain_l); + + /* DataStoreWrite: '/Data Store Write1' incorporates: + * MATLAB Function: '/incar filter down' + */ + incarfilterdown(rtB.Merge_b, &rtb_Gain2); + + /* MATLAB Function: '/autodemist (autodefog)' */ + autodemistautodefog(rtB.Merge_b, &rtb_Gain_l); + + /* Sum: '/Add' incorporates: + * DataStoreRead: '/Текущее значение blower ' + * DataStoreRead: '/значение auto (в соответствии с логикой)' + */ + rtb_Gain2 = (uint8_t)(rtDW.Mode_FL - rtDW.Mode_logic_FL); + + /* MATLAB Function: '/step' */ + step_j(rtB.Merge_b, &rtb_Gain_l); + + /* 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' + */ + if (rtb_Gain2 <= 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' + */ + i = 1; + } else { + /* Switch: '/Switch' incorporates: + * Constant: '/Constant1' + */ + i = -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' + */ + rtDW.Mode_FL = (uint8_t)((double)rtb_Gain_l / (double)rtb_u_cuz / + 1000.0 * (double)(rtDW.t_now - rtDW.UnitDelay_DSTATE_b) * (double)i + + (double)rtDW.Mode_FL); + } + + /* End of Switch: '/Switch' */ + + /* MATLAB Function: '/window heating' */ + windowheating_k(rtB.Merge_b, &rtb_Gain2); + + /* Sum: '/Add' incorporates: + * DataStoreRead: '/Текущее значение blower ' + * DataStoreRead: '/значение auto (в соответствии с логикой)' + */ + Blower_FR = (uint16_t)(rtDW.Blower_FL - rtDW.Blower_logic_FL); + + /* RelationalOperator: '/Relational Operator' incorporates: + * Constant: '/epsilon' + */ + rtb_LogicalOperator1 = (Blower_FR <= 0.01); + + /* MATLAB Function: '/blower step' */ + blowerstep(rtB.Merge_b, &rtb_out_flm); + + /* MATLAB Function: '/blower time for step' */ + blowertimeforstep(rtB.Merge_b, &Blower_FR); + + /* Switch: '/Switch' incorporates: + * DataStoreRead: '/Текущее значение blower ' + * DataStoreRead: '/значение auto (в соответствии с логикой)' + * RelationalOperator: '/Relational Operator' + * Switch: '/Switch' + */ + if (rtb_LogicalOperator1) { + /* 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' + */ + i = 1; + } else { + /* Switch: '/Switch' incorporates: + * Constant: '/Constant1' + */ + i = -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' + */ + rtDW.Blower_FL = (uint16_t)((double)rtb_out_flm / (double)Blower_FR / + 1000.0 * (double)(rtDW.t_now - rtDW.UnitDelay_DSTATE_e) * (double)i + + (double)rtDW.Blower_FL); + } + + /* End of Switch: '/Switch' */ + + /* DataStoreWrite: '/Data Store Write7' incorporates: + * Constant: '/Recirc logic Partial REC' + */ + rtb_Divide1 = 1.0; + + /* RelationalOperator: '/Equal' incorporates: + * DataStoreRead: '/current step' + */ + rtb_LogicalOperator1 = (rtDW.step_start_controle_front == 2); + + /* 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 ' + */ + rtb_LogicalOperator1_f = (rtDW.t_now - + rtDW.t_start_delay_private_DSTATE_n > (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 ' + */ + if (rtb_LogicalOperator1 && (!rtDW.Cond_prev_private_DSTATE_iy)) { + rtDW.t_start_delay_private_DSTATE_n = rtDW.t_now; + } + + /* End of Switch: '/Switch' */ + + /* Switch: '/Switch' incorporates: + * DataStoreRead: '/Data Store Read' + * Logic: '/Logical Operator' + */ + if (rtb_LogicalOperator1_f || rtDW.HI_logic_on) { + /* Merge: '/Merge' incorporates: + * Constant: '/go to next step' + */ + rtB.Merge_h = 3; + } else { + /* Merge: '/Merge' incorporates: + * Constant: '/stay at step' + */ + rtB.Merge_h = 2; + } + + /* End of Switch: '/Switch' */ + + /* Update for UnitDelay: '/Unit Delay' incorporates: + * DataStoreRead: '/текущее время в мс' + */ + rtDW.UnitDelay_DSTATE_f = rtDW.t_now; + + /* Update for UnitDelay: '/Unit Delay' incorporates: + * DataStoreRead: '/текущее время в мс' + */ + rtDW.UnitDelay_DSTATE_pu = rtDW.t_now; + + /* Update for UnitDelay: '/Unit Delay' incorporates: + * DataStoreRead: '/текущее время в мс' + */ + rtDW.UnitDelay_DSTATE_b = rtDW.t_now; + + /* Update for UnitDelay: '/Unit Delay' incorporates: + * DataStoreRead: '/текущее время в мс' + */ + rtDW.UnitDelay_DSTATE_e = rtDW.t_now; + + /* Update for UnitDelay: '/Cond_prev_private ' */ + rtDW.Cond_prev_private_DSTATE_iy = rtb_LogicalOperator1; + + /* 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' incorporates: - * ActionPort: '/Action Port' + /* Outputs for IfAction SubSystem: '/Step 3 F' incorporates: + * ActionPort: '/Action Port' */ - Step3(&rtB.Merge_i, &rtDW.start_control_finished_front); + Step3F(&rtB.Merge_h, &rtDW.start_control_finished_front); - /* End of Outputs for SubSystem: '/Step 3' */ + /* End of Outputs for SubSystem: '/Step 3 F' */ break; } - /* End of SwitchCase: '/Switch Case' */ + /* End of SwitchCase: '/Switch Case' */ - /* DataStoreWrite: '/Data Store Write' */ - rtDW.step_start_controle_front = rtB.Merge_i; + /* DataStoreWrite: '/Data Store Write' */ + rtDW.step_start_controle_front = rtB.Merge_h; /* End of Outputs for SubSystem: '/Start Control Front' */ } @@ -11351,32 +11099,32 @@ 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 F' 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_p(rtB.Merge_b, &Incar_FL); + 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' */ i = (int32_t)(rtB.Merge_b + 1U); if (rtB.Merge_b + 1U > 255U) { @@ -11388,136 +11136,136 @@ void HVAC_model_step(void) tmp_0 = 255; } - /* Switch: '/Switch' incorporates: - * Constant: '/AUTO' + /* Switch: '/Switch' incorporates: + * Constant: '/AUTO' * DataStoreRead: '/Data Store Read2' - * DataStoreRead: '/Data Store Read' - * DataStoreRead: '/Data Store Read1' + * DataStoreRead: '/Data Store Read' + * DataStoreRead: '/Data Store Read1' * DataStoreWrite: '/Data Store Write2' - * Logic: '/AND' - * MATLAB Function: '/g_assSTART_ENTER_INCAR' - * RelationalOperator: '/Relational Operator' - * RelationalOperator: '/Relational Operator1' - * RelationalOperator: '/Relational Operator2' + * Logic: '/AND' + * MATLAB Function: '/g_assSTART_ENTER_INCAR' + * RelationalOperator: '/Relational Operator' + * RelationalOperator: '/Relational Operator1' + * RelationalOperator: '/Relational Operator2' */ if ((Incar_RR > g_assSTART_ENTER_INCAR[tmp_0 - 1]) && (rtDW.MODE_RR_passenger == 1.0) && (rtDW.FIU_CCU2_MODEL.FIU_TargetTempRR_Val_ro < Incar_FL)) { - /* Merge: '/Merge' incorporates: - * Constant: '/Constant1' + /* Merge: '/Merge' incorporates: + * Constant: '/Constant1' */ - rtB.Merge_d = 0; + rtB.Merge_c = 0; } else { - /* Merge: '/Merge' incorporates: - * Constant: '/Constant' + /* Merge: '/Merge' incorporates: + * Constant: '/Constant' */ - rtB.Merge_d = -1; + 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_l(rtB.Merge_b, &Incar_FL); + 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_p(rtB.Merge_b, &AMB); + g_ausSTART_ENTER_SETTEMP_b(rtB.Merge_b, &AMB); - /* Switch: '/Switch' incorporates: - * Constant: '/AUTO' + /* Switch: '/Switch' incorporates: + * Constant: '/AUTO' * DataStoreRead: '/Data Store Read2' - * DataStoreRead: '/Data Store Read' - * DataStoreRead: '/Data Store Read1' + * DataStoreRead: '/Data Store Read' + * DataStoreRead: '/Data Store Read1' * DataStoreWrite: '/Data Store Write2' - * Logic: '/AND' - * RelationalOperator: '/Relational Operator' - * RelationalOperator: '/Relational Operator1' - * RelationalOperator: '/Relational Operator2' + * Logic: '/AND' + * RelationalOperator: '/Relational Operator' + * RelationalOperator: '/Relational Operator1' + * RelationalOperator: '/Relational Operator2' */ if ((Incar_RR > Incar_FL) && (rtDW.MODE_RR_passenger == 1.0) && (rtDW.FIU_CCU2_MODEL.FIU_TargetTempRR_Val_ro < AMB)) { - /* Merge: '/Merge' incorporates: - * Constant: '/Constant1' + /* Merge: '/Merge' incorporates: + * Constant: '/Constant1' */ - rtB.Merge_d = 0; + rtB.Merge_c = 0; } else { - /* Merge: '/Merge' incorporates: - * Constant: '/Constant' + /* Merge: '/Merge' incorporates: + * Constant: '/Constant' */ - rtB.Merge_d = -1; + 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_l(rtB.Merge_b, &Incar_FL); + 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_p(rtB.Merge_b, &AMB); + g_ausSTART_ENTER_SETTEMP_b(rtB.Merge_b, &AMB); - /* Switch: '/Switch' incorporates: - * Constant: '/AUTO' + /* Switch: '/Switch' incorporates: + * Constant: '/AUTO' * DataStoreRead: '/Data Store Read2' - * DataStoreRead: '/Data Store Read' - * DataStoreRead: '/Data Store Read1' + * DataStoreRead: '/Data Store Read' + * DataStoreRead: '/Data Store Read1' * DataStoreWrite: '/Data Store Write2' - * Logic: '/AND' - * RelationalOperator: '/Relational Operator' - * RelationalOperator: '/Relational Operator1' - * RelationalOperator: '/Relational Operator2' + * Logic: '/AND' + * RelationalOperator: '/Relational Operator' + * RelationalOperator: '/Relational Operator1' + * RelationalOperator: '/Relational Operator2' */ if ((Incar_RR < Incar_FL) && (rtDW.MODE_RR_passenger == 1.0) && (rtDW.FIU_CCU2_MODEL.FIU_TargetTempRR_Val_ro > AMB)) { - /* Merge: '/Merge' incorporates: - * Constant: '/Constant1' + /* Merge: '/Merge' incorporates: + * Constant: '/Constant1' */ - rtB.Merge_d = 0; + rtB.Merge_c = 0; } else { - /* Merge: '/Merge' incorporates: - * Constant: '/Constant' + /* Merge: '/Merge' incorporates: + * Constant: '/Constant' */ - rtB.Merge_d = -1; + 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_l(rtB.Merge_b, &Incar_FL); + 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_i(rtB.Merge_b, &AMB); + g_assSTART_ENTER_COOLANT_e(rtB.Merge_b, &AMB); - /* 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)); */ i = (int32_t)(rtB.Merge_b + 1U); @@ -11535,121 +11283,121 @@ void HVAC_model_step(void) Blower_FR = 32767U; } - /* Switch: '/Switch' incorporates: - * Constant: '/AUTO' + /* Switch: '/Switch' incorporates: + * Constant: '/AUTO' * DataStoreRead: '/Data Store Read2' - * DataStoreRead: '/Data Store Read' - * DataStoreRead: '/Data Store Read1' - * DataStoreRead: '/Data Store Read2' + * DataStoreRead: '/Data Store Read' + * DataStoreRead: '/Data Store Read1' + * DataStoreRead: '/Data Store Read2' * DataStoreWrite: '/Data Store Write2' - * Logic: '/AND' - * Logic: '/AND1' - * MATLAB Function: '/g_ausSTART_ENTER_SETTEMP' - * RelationalOperator: '/Relational Operator' - * RelationalOperator: '/Relational Operator1' - * RelationalOperator: '/Relational Operator2' - * RelationalOperator: '/Relational Operator3' + * 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 < AMB)) && (rtDW.MODE_RR_passenger == 1.0) && (rtDW.FIU_CCU2_MODEL.FIU_TargetTempRR_Val_ro > Blower_FR)) { - /* Merge: '/Merge' incorporates: - * Constant: '/Constant1' + /* Merge: '/Merge' incorporates: + * Constant: '/Constant1' */ - rtB.Merge_d = 0; + rtB.Merge_c = 0; } else { - /* Merge: '/Merge' incorporates: - * Constant: '/Constant' + /* Merge: '/Merge' incorporates: + * Constant: '/Constant' */ - rtB.Merge_d = -1; + 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_i(&rtB.Merge_d, &rtDW.ECT, &Incar_RR, &rtB.Merge_b, + 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_i(&rtB.Merge_d, &rtDW.ECT, &Incar_RR, &rtB.Merge_b, + 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 F' */ + /* End of SwitchCase: '/Switch Case' */ + /* End of Outputs for SubSystem: '/Step -1 R (Entry Condition)' */ break; case 0: - /* Outputs for IfAction SubSystem: '/Step 0 F' 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_d); + 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_d); + 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_d(rtB.Merge_b, &rtb_Gain_l); + incarfilterup_i(rtB.Merge_b, &rtb_Gain_l); - /* MATLAB Function: '/incar filter down' incorporates: - * DataStoreRead: '/Data Store Read2' + /* MATLAB Function: '/incar filter down' incorporates: + * DataStoreRead: '/Data Store Read2' */ - incarfilterdown_j(rtB.Merge_b, &rtb_Gain_l); + incarfilterdown_c(rtB.Merge_b, &rtb_Gain_l); - /* 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)); */ i = (int32_t)(rtB.Merge_b + 3U); @@ -11657,476 +11405,1184 @@ void HVAC_model_step(void) i = 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_d = (int8_t)(rtDW.ECT > g_assSTART_COOLANT_STEP0_TO_1[i - 1]); + rtB.Merge_c = (int8_t)(rtDW.ECT > g_assSTART_COOLANT_STEP0_TO_1[i - 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_d(rtB.Merge_b, &rtb_Gain_l); + incarfilterup_i(rtB.Merge_b, &rtb_Gain_l); - /* MATLAB Function: '/incar filter down' incorporates: - * DataStoreRead: '/Data Store Read2' + /* MATLAB Function: '/incar filter down' incorporates: + * DataStoreRead: '/Data Store Read2' */ - incarfilterdown_j(rtB.Merge_b, &rtb_Gain_l); + incarfilterdown_c(rtB.Merge_b, &rtb_Gain_l); - /* 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_g(rtB.Merge_b, &Incar_RR); + 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_d = (int8_t)(rtDW.ECT > Incar_RR); + 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_h(&rtB.Merge_d, &Blower_FR, &rtDW.Blower_RR, &Dtg_FUR, + Level4_m(&rtB.Merge_c, &Blower_FR, &rtDW.Blower_RR, &Dtg_FUR, &rtDW.Dtg_RR, &rtDW.ECT, &rtb_Gain2, &rtb_Gain_l, &rtB.Merge_b, - &El_window_heating, &rtDW.Mode_RR, &Valve_2_way, &rtb_u_pe); + &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_h(&rtB.Merge_d, &Blower_FR, &rtDW.Blower_RR, &Dtg_FUR, + Level4_m(&rtB.Merge_c, &Blower_FR, &rtDW.Blower_RR, &Dtg_FUR, &rtDW.Dtg_RR, &rtDW.ECT, &rtb_Gain2, &rtb_Gain_l, &rtB.Merge_b, - &El_window_heating, &rtDW.Mode_RR, &Valve_2_way, &rtb_u_pe); + &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 F' */ + /* End of SwitchCase: '/Switch Case' */ + /* End of Outputs for SubSystem: '/Step 0 R' */ break; case 1: - /* Outputs for IfAction SubSystem: '/Step 1 F' 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_h(&rtB.Merge_d, &Blower_FR, &rtDW.Blower_RR, &Dtg_FUR, + Level0_b(&rtB.Merge_c, &Blower_FR, &rtDW.Blower_RR, &Dtg_FUR, &rtDW.Dtg_RR, &Incar_RR, &rtb_Gain2, &rtb_Gain_l, &rtB.Merge_b, &El_window_heating, &rtDW.Mode_RR, &rtb_Divide1, &Valve_2_way, - &rtDW.step_start_controle_rear, &rtDW.t_now, &rtDW.Level0_he); + &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_h(&rtB.Merge_d, &Blower_FR, &rtDW.Blower_RR, &Dtg_FUR, + Level0_b(&rtB.Merge_c, &Blower_FR, &rtDW.Blower_RR, &Dtg_FUR, &rtDW.Dtg_RR, &Incar_RR, &rtb_Gain2, &rtb_Gain_l, &rtB.Merge_b, &El_window_heating, &rtDW.Mode_RR, &rtb_Divide1, &Valve_2_way, - &rtDW.step_start_controle_rear, &rtDW.t_now, &rtDW.Level1_h); + &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_d(rtB.Merge_b, &rtDW.Mode_RR); - incarfilterdown_j(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_fw); + blowerstartfinish(rtB.Merge_b, rtb_out_en); - /* 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_nh[0] = g_assSTART_COOLANT_STEP0_TO_1[4]; - rtb_out_nh[1] = g_assSTART_COOLANT_TO_STEP2[1]; + rtb_out_js[0] = g_assSTART_COOLANT_STEP0_TO_1[4]; + rtb_out_js[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_nh, - rtb_out_fw, 1U); + rtDW.Blower_RR = look1_iu16bs16lu64n32_binlcse(rtDW.ECT, rtb_out_js, + rtb_out_en, 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' + */ + rtb_LogicalOperator1 = (rtDW.step_start_controle_rear == 1); + + /* 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 ' + */ + rtb_dt_lu = 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' + */ + Timegotofromstep1tostep2_l(rtB.Merge_b, &AMB); + + /* 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' */ + + /* 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_lu > (uint16_t)(1000 * AMB)) || + (rtDW.ECT > g_assSTART_COOLANT_TO_STEP2[1])) { + /* Merge: '/Merge' incorporates: + * Constant: '/go to next step' + */ + rtB.Merge_c = 2; + } else { + /* Merge: '/Merge' incorporates: + * Constant: '/stay at step 1' + */ + rtB.Merge_c = 1; + } + + /* End of Switch: '/Switch' */ + + /* Update for UnitDelay: '/Cond_prev_private ' */ + rtDW.Cond_prev_private_DSTATE_cp = rtb_LogicalOperator1; + + /* End of Outputs for SubSystem: '/Level 2' */ + break; + + case 3: + /* 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' + */ + 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' + */ + blowerstartfinish(rtB.Merge_b, rtb_out_en); + + /* MATLAB Function: '/ECT min max' incorporates: + * DataStoreRead: '/Data Store Read7' + */ + ECTminmax_l(rtB.Merge_b, rtb_out_js); + + /* Lookup_n-D: '/blower для текущего ECT' incorporates: + * DataStoreRead: '/engine coolant temp' + * DataStoreWrite: '/Data Store Write5' + */ + rtDW.Blower_RR = look1_iu16bs16lu64n32_binlcse(rtDW.ECT, rtb_out_js, + rtb_out_en, 1U); + + /* 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' + */ + rtb_LogicalOperator1 = (rtDW.step_start_controle_rear == 1); + + /* 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 ' + */ + rtb_dt_lu = 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' + */ + Timegotofromstep1tostep2_l(rtB.Merge_b, &AMB); + + /* 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_a)) { + rtDW.t_start_delay_private_DSTATE_o = rtDW.t_now; + } + + /* 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' + */ + if ((Incar_RR > Incar_FL) || (rtb_dt_lu > (uint16_t)(1000 * AMB)) || + (rtDW.ECT > g_assSTART_COOLANT_TO_STEP2[2])) { + /* Merge: '/Merge' incorporates: + * Constant: '/go to next step' + */ + rtB.Merge_c = 2; + } else { + /* Merge: '/Merge' incorporates: + * Constant: '/stay at step 1' + */ + rtB.Merge_c = 1; + } + + /* End of Switch: '/Switch' */ + + /* Update for UnitDelay: '/Cond_prev_private ' */ + rtDW.Cond_prev_private_DSTATE_a = rtb_LogicalOperator1; + + /* End of Outputs for SubSystem: '/Level 3' */ + break; + + case 4: + /* Outputs for IfAction SubSystem: '/Level 4' incorporates: + * ActionPort: '/Action Port' + */ + Level4_d(&rtB.Merge_c, &Blower_FR, &rtDW.Blower_RR, &Dtg_FUR, + &rtDW.Dtg_RR, &rtDW.ECT, &Incar_RR, &rtb_Gain2, &rtb_Gain_l, + &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' */ + break; + + case 5: + /* Outputs for IfAction SubSystem: '/Level 5' incorporates: + * ActionPort: '/Action Port' + */ + Level4_d(&rtB.Merge_c, &Blower_FR, &rtDW.Blower_RR, &Dtg_FUR, + &rtDW.Dtg_RR, &rtDW.ECT, &Incar_RR, &rtb_Gain2, &rtb_Gain_l, + &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' */ + break; + } + + /* 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' + */ + /* SwitchCase: '/Switch Case' incorporates: + * DataStoreRead: '/Data Store Read1' + */ + switch (rtB.Merge_b) { + case 0: + /* 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_l); + + /* MATLAB Function: '/step' incorporates: + * DataStoreRead: '/Data Store Read8' + */ + Dtg_rear(rtB.Merge_b, &rtb_Gain_l); + + /* MATLAB Function: '/time for step' incorporates: + * DataStoreRead: '/Data Store Read8' + */ + timeforstep_jn(rtB.Merge_b, &rtb_Gain2); + + /* 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' + */ + i = 1; + } else { + /* Switch: '/Switch' incorporates: + * Constant: '/Constant1' + */ + i = -1; + } + + rtDW.Dtg_RR = (uint8_t)((double)rtb_Gain_l / (double)rtb_Gain2 / + 1000.0 * (double)(rtDW.t_now - rtDW.UnitDelay_DSTATE_d) * (double)i + + (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_l); + + /* MATLAB Function: '/incar filter down' incorporates: + * DataStoreRead: '/Data Store Read2' + */ + incarfilterdown_c(rtB.Merge_b, &rtb_Gain_l); + + /* Sum: '/Add' incorporates: + * DataStoreRead: '/Текущее значение blower ' + * DataStoreRead: '/значение auto (в соответствии с логикой)' + */ + rtb_Gain2 = (uint8_t)(rtDW.Mode_RR - rtDW.Mode_logic_RR); + + /* RelationalOperator: '/Relational Operator' incorporates: + * Constant: '/epsilon' + */ + rtb_LogicalOperator1 = (rtb_Gain2 <= 0.01); + + /* MATLAB Function: '/step' incorporates: + * DataStoreRead: '/Data Store Read5' + */ + step_a(rtB.Merge_b, &rtb_Gain_l); + + /* MATLAB Function: '/time for step' incorporates: + * DataStoreRead: '/Data Store Read5' + */ + timeforstep_h(rtB.Merge_b, &rtb_Gain2); + + /* 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' + */ + i = 1; + } else { + /* Switch: '/Switch' incorporates: + * Constant: '/Constant1' + */ + i = -1; + } + + rtDW.Mode_RR = (uint8_t)((double)rtb_Gain_l / (double)rtb_Gain2 / + 1000.0 * (double)(rtDW.t_now - rtDW.UnitDelay_DSTATE_nc) * (double)i + + (double)rtDW.Mode_RR); + } + + /* End of Switch: '/Switch' */ + + /* MATLAB Function: '/blower step' incorporates: + * DataStoreRead: '/Data Store Read7' + */ + blowerstep_d(rtB.Merge_b, &Blower_FR); + + /* MATLAB Function: '/blower time for step' incorporates: + * DataStoreRead: '/Data Store Read7' + */ + blowertimeforstep_l(rtB.Merge_b, &rtb_out_flm); + + /* 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' + */ + i = 1; + } else { + /* Switch: '/Switch' incorporates: + * Constant: '/Constant1' + */ + i = -1; + } + + rtDW.Blower_RR = (uint16_t)((double)Blower_FR / (double)rtb_out_flm / + 1000.0 * (double)(rtDW.t_now - rtDW.UnitDelay_DSTATE_hs) * (double)i + + (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_lu = rtDW.t_now - rtDW.t_start_delay_private_DSTATE_f; + + /* 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_f = 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_lu > (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_l); + + /* MATLAB Function: '/step' incorporates: + * DataStoreRead: '/Data Store Read8' + */ + Dtg_rear(rtB.Merge_b, &rtb_Gain_l); + + /* MATLAB Function: '/time for step' incorporates: + * DataStoreRead: '/Data Store Read8' + */ + timeforstep_jn(rtB.Merge_b, &rtb_Gain2); + + /* 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' + */ + i = 1; + } else { + /* Switch: '/Switch' incorporates: + * Constant: '/Constant1' + */ + i = -1; + } + + rtDW.Dtg_RR = (uint8_t)((double)rtb_Gain_l / (double)rtb_Gain2 / + 1000.0 * (double)(rtDW.t_now - rtDW.UnitDelay_DSTATE_g) * (double)i + + (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_l); + + /* MATLAB Function: '/incar filter down' incorporates: + * DataStoreRead: '/Data Store Read2' + */ + incarfilterdown_c(rtB.Merge_b, &rtb_Gain_l); + + /* Sum: '/Add' incorporates: + * DataStoreRead: '/Текущее значение blower ' + * DataStoreRead: '/значение auto (в соответствии с логикой)' + */ + rtb_Gain2 = (uint8_t)(rtDW.Mode_RR - rtDW.Mode_logic_RR); + + /* RelationalOperator: '/Relational Operator' incorporates: + * Constant: '/epsilon' + */ + rtb_LogicalOperator1 = (rtb_Gain2 <= 0.01); + + /* MATLAB Function: '/step' incorporates: + * DataStoreRead: '/Data Store Read5' + */ + step_a(rtB.Merge_b, &rtb_Gain_l); + + /* MATLAB Function: '/time for step' incorporates: + * DataStoreRead: '/Data Store Read5' + */ + timeforstep_h(rtB.Merge_b, &rtb_Gain2); + + /* 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' + */ + i = 1; + } else { + /* Switch: '/Switch' incorporates: + * Constant: '/Constant1' + */ + i = -1; + } + + rtDW.Mode_RR = (uint8_t)((double)rtb_Gain_l / (double)rtb_Gain2 / + 1000.0 * (double)(rtDW.t_now - rtDW.UnitDelay_DSTATE_p) * (double)i + + (double)rtDW.Mode_RR); + } + + /* End of Switch: '/Switch' */ + + /* MATLAB Function: '/blower step' incorporates: + * DataStoreRead: '/Data Store Read7' + */ + blowerstep_d(rtB.Merge_b, &Blower_FR); + + /* MATLAB Function: '/blower time for step' incorporates: + * DataStoreRead: '/Data Store Read7' + */ + blowertimeforstep_l(rtB.Merge_b, &rtb_out_flm); + + /* 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' + */ + i = 1; + } else { + /* Switch: '/Switch' incorporates: + * Constant: '/Constant1' + */ + i = -1; + } + + rtDW.Blower_RR = (uint16_t)((double)Blower_FR / (double)rtb_out_flm / + 1000.0 * (double)(rtDW.t_now - rtDW.UnitDelay_DSTATE_j) * (double)i + + (double)rtDW.Blower_RR); + } + + /* End of Switch: '/Switch' */ + /* RelationalOperator: '/Equal' incorporates: * DataStoreRead: '/current step' */ - rtb_LogicalOperator1 = (rtDW.step_start_controle_rear == 1); + rtb_LogicalOperator1 = (rtDW.step_start_controle_rear == 2); - /* MATLAB Function: '/Incar temp goto from step 1 to step 2 ' incorporates: - * DataStoreRead: '/Data Store Read3' + /* Sum: '/Subtract' incorporates: + * DataStoreRead: '/Data Store Read4' + * UnitDelay: '/t_start_delay_private ' */ - Incartempgotofromstep1tostep2_b(rtB.Merge_b, &Incar_FL); + rtb_dt_lu = rtDW.t_now - rtDW.t_start_delay_private_DSTATE_jh; - /* Sum: '/Subtract' incorporates: - * DataStoreRead: '/Data Store Read4' - * 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 ' */ - rtb_dt_du = rtDW.t_now - rtDW.t_start_delay_private_DSTATE_l; + if (rtb_LogicalOperator1 && (!rtDW.Cond_prev_private_DSTATE_jk)) { + 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_h(rtB.Merge_b, &AMB); - - /* 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_hp)) { - rtDW.t_start_delay_private_DSTATE_l = rtDW.t_now; - } - - /* End of Switch: '/Switch' */ + Timegotofromstep1tostep2_l(rtB.Merge_b, &Incar_RR); /* 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_du > (uint16_t)(1000 * AMB)) || - (rtDW.ECT > g_assSTART_COOLANT_TO_STEP2[1])) { - /* Merge: '/Merge' incorporates: + if (rtb_dt_lu > (uint16_t)(1000 * Incar_RR)) { + /* Merge: '/Merge' incorporates: * Constant: '/go to next step' */ - rtB.Merge_d = 2; + rtB.Merge_c = 3; } else { - /* Merge: '/Merge' incorporates: - * Constant: '/stay at step 1' + /* Merge: '/Merge' incorporates: + * Constant: '/stay at step' */ - rtB.Merge_d = 1; + rtB.Merge_c = 2; } /* End of Switch: '/Switch' */ - /* Update for UnitDelay: '/Cond_prev_private ' */ - rtDW.Cond_prev_private_DSTATE_hp = rtb_LogicalOperator1; + /* Update for UnitDelay: '/Unit Delay' incorporates: + * DataStoreRead: '/текущее время в мс' + */ + rtDW.UnitDelay_DSTATE_g = rtDW.t_now; - /* End of Outputs for SubSystem: '/Level 2' */ + /* 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_jk = rtb_LogicalOperator1; + + /* End of Outputs for SubSystem: '/Level 1' */ break; - case 3: - /* Outputs for IfAction SubSystem: '/Level 3' incorporates: + case 2: + /* 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' + /* MATLAB Function: '/2 way valve' incorporates: * 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_d(rtB.Merge_b, &rtDW.Mode_RR); - incarfilterdown_j(rtB.Merge_b, &rtDW.Mode_RR); - moderearstep1(rtB.Merge_b, &rtDW.Mode_RR); + uwayvalve(rtB.Merge_b, &rtb_Gain_l); - /* MATLAB Function: '/blower start finish' incorporates: - * DataStoreRead: '/Data Store Read7' - */ - blowerstartfinish(rtB.Merge_b, rtb_out_fw); - - /* MATLAB Function: '/ECT min max' incorporates: - * DataStoreRead: '/Data Store Read7' - */ - ECTminmax_h(rtB.Merge_b, rtb_out_nh); - - /* Lookup_n-D: '/blower для текущего ECT' incorporates: - * DataStoreRead: '/engine coolant temp' - * DataStoreWrite: '/Data Store Write5' - */ - rtDW.Blower_RR = look1_iu16bs16lu64n32_binlcse(rtDW.ECT, rtb_out_nh, - rtb_out_fw, 1U); - - /* DataStoreWrite: '/Data Store Write10' incorporates: + /* MATLAB Function: '/step' incorporates: * DataStoreRead: '/Data Store Read8' - * MATLAB Function: '/Dtg_rear' */ - Dtg_rear(rtB.Merge_b, &rtDW.Dtg_RR); + Dtg_rear(rtB.Merge_b, &rtb_Gain_l); + + /* MATLAB Function: '/time for step' incorporates: + * DataStoreRead: '/Data Store Read8' + */ + timeforstep_jn(rtB.Merge_b, &rtb_Gain2); + + /* 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' + */ + i = 1; + } else { + /* Switch: '/Switch' incorporates: + * Constant: '/Constant1' + */ + i = -1; + } + + rtDW.Dtg_RR = (uint8_t)((double)rtb_Gain_l / (double)rtb_Gain2 / + 1000.0 * (double)(rtDW.t_now - rtDW.UnitDelay_DSTATE) * (double)i + + (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_l); + + /* MATLAB Function: '/incar filter down' incorporates: + * DataStoreRead: '/Data Store Read2' + */ + incarfilterdown_c(rtB.Merge_b, &rtb_Gain_l); + + /* Sum: '/Add' incorporates: + * DataStoreRead: '/Текущее значение blower ' + * DataStoreRead: '/значение auto (в соответствии с логикой)' + */ + rtb_Gain2 = (uint8_t)(rtDW.Mode_RR - rtDW.Mode_logic_RR); + + /* RelationalOperator: '/Relational Operator' incorporates: + * Constant: '/epsilon' + */ + rtb_LogicalOperator1 = (rtb_Gain2 <= 0.01); + + /* MATLAB Function: '/step' incorporates: + * DataStoreRead: '/Data Store Read5' + */ + step_a(rtB.Merge_b, &rtb_Gain_l); + + /* MATLAB Function: '/time for step' incorporates: + * DataStoreRead: '/Data Store Read5' + */ + timeforstep_h(rtB.Merge_b, &rtb_Gain2); + + /* 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' + */ + i = 1; + } else { + /* Switch: '/Switch' incorporates: + * Constant: '/Constant1' + */ + i = -1; + } + + rtDW.Mode_RR = (uint8_t)((double)rtb_Gain_l / (double)rtb_Gain2 / + 1000.0 * (double)(rtDW.t_now - rtDW.UnitDelay_DSTATE_h) * (double)i + + (double)rtDW.Mode_RR); + } + + /* End of Switch: '/Switch' */ + + /* MATLAB Function: '/blower step' incorporates: + * DataStoreRead: '/Data Store Read7' + */ + blowerstep_d(rtB.Merge_b, &Blower_FR); + + /* MATLAB Function: '/blower time for step' incorporates: + * DataStoreRead: '/Data Store Read7' + */ + blowertimeforstep_l(rtB.Merge_b, &rtb_out_flm); + + /* 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' + */ + i = 1; + } else { + /* Switch: '/Switch' incorporates: + * Constant: '/Constant1' + */ + i = -1; + } + + rtDW.Blower_RR = (uint16_t)((double)Blower_FR / (double)rtb_out_flm / + 1000.0 * (double)(rtDW.t_now - rtDW.UnitDelay_DSTATE_n) * (double)i + + (double)rtDW.Blower_RR); + } + + /* End of Switch: '/Switch' */ /* RelationalOperator: '/Equal' incorporates: * DataStoreRead: '/current step' */ - rtb_LogicalOperator1 = (rtDW.step_start_controle_rear == 1); + rtb_LogicalOperator1 = (rtDW.step_start_controle_rear == 2); - /* MATLAB Function: '/Incar temp goto from step 1 to step 2 ' incorporates: - * DataStoreRead: '/Data Store Read3' + /* Sum: '/Subtract' incorporates: + * DataStoreRead: '/Data Store Read4' + * UnitDelay: '/t_start_delay_private ' */ - Incartempgotofromstep1tostep2_b(rtB.Merge_b, &Incar_FL); - - /* Sum: '/Subtract' incorporates: - * DataStoreRead: '/Data Store Read4' - * UnitDelay: '/t_start_delay_private ' - */ - rtb_dt_du = rtDW.t_now - rtDW.t_start_delay_private_DSTATE_m; + rtb_dt_lu = 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_h(rtB.Merge_b, &AMB); + 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 ' + /* 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_im)) { - rtDW.t_start_delay_private_DSTATE_m = rtDW.t_now; + if (rtb_LogicalOperator1 && (!rtDW.Cond_prev_private_DSTATE_ei)) { + rtDW.t_start_delay_private_DSTATE_ed = rtDW.t_now; } - /* End of Switch: '/Switch' */ + /* End of Switch: '/Switch' */ /* Switch: '/Switch' incorporates: - * DataStoreRead: '/engine coolant temp' - * DataStoreRead: '/incar temp' + * DataStoreRead: '/Data Store Read' * 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_du > (uint16_t)(1000 * AMB)) || - (rtDW.ECT > g_assSTART_COOLANT_TO_STEP2[2])) { - /* Merge: '/Merge' incorporates: + if ((rtb_dt_lu > (uint16_t)(1000 * Incar_RR)) || rtDW.HI_logic_on) { + /* Merge: '/Merge' incorporates: * Constant: '/go to next step' */ - rtB.Merge_d = 2; + rtB.Merge_c = 3; } else { - /* Merge: '/Merge' incorporates: - * Constant: '/stay at step 1' + /* Merge: '/Merge' incorporates: + * Constant: '/stay at step' */ - rtB.Merge_d = 1; + rtB.Merge_c = 2; } /* End of Switch: '/Switch' */ - /* Update for UnitDelay: '/Cond_prev_private ' */ - rtDW.Cond_prev_private_DSTATE_im = rtb_LogicalOperator1; - - /* End of Outputs for SubSystem: '/Level 3' */ - break; - - case 4: - /* Outputs for IfAction SubSystem: '/Level 4' incorporates: - * ActionPort: '/Action Port' + /* Update for UnitDelay: '/Unit Delay' incorporates: + * DataStoreRead: '/текущее время в мс' */ - Level4_d(&rtB.Merge_d, &Blower_FR, &rtDW.Blower_RR, &Dtg_FUR, - &rtDW.Dtg_RR, &rtDW.ECT, &Incar_RR, &rtb_Gain2, &rtb_Gain_l, - &rtB.Merge_b, &El_window_heating, &rtDW.Mode_RR, &rtb_Divide1, - &Valve_2_way, &rtDW.step_start_controle_rear, &rtDW.t_now, - &rtDW.Level4_di); + rtDW.UnitDelay_DSTATE = rtDW.t_now; - /* End of Outputs for SubSystem: '/Level 4' */ - break; - - case 5: - /* Outputs for IfAction SubSystem: '/Level 5' incorporates: - * ActionPort: '/Action Port' + /* Update for UnitDelay: '/Unit Delay' incorporates: + * DataStoreRead: '/текущее время в мс' */ - Level4_d(&rtB.Merge_d, &Blower_FR, &rtDW.Blower_RR, &Dtg_FUR, - &rtDW.Dtg_RR, &rtDW.ECT, &Incar_RR, &rtb_Gain2, &rtb_Gain_l, - &rtB.Merge_b, &El_window_heating, &rtDW.Mode_RR, &rtb_Divide1, - &Valve_2_way, &rtDW.step_start_controle_rear, &rtDW.t_now, - &rtDW.Level5_p); + rtDW.UnitDelay_DSTATE_h = rtDW.t_now; - /* End of Outputs for SubSystem: '/Level 5' */ - break; - } - - /* 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' - */ - /* SwitchCase: '/Switch Case' incorporates: - * DataStoreRead: '/Data Store Read1' - */ - switch (rtB.Merge_b) { - case 0: - /* Outputs for IfAction SubSystem: '/Level 0' incorporates: - * ActionPort: '/Action Port' + /* Update for UnitDelay: '/Unit Delay' incorporates: + * DataStoreRead: '/текущее время в мс' */ - Level0_j(&rtB.Merge_d, &Blower_FR, &rtDW.Blower_RR, - &rtDW.Blower_logic_RR, &Dtg_FUR, &rtDW.Dtg_RR, - &rtDW.Dtg_logic_RR, &rtb_Gain2, &rtb_Gain_l, &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.Level0_jq); + rtDW.UnitDelay_DSTATE_n = rtDW.t_now; - /* End of Outputs for SubSystem: '/Level 0' */ - break; + /* Update for UnitDelay: '/Cond_prev_private ' */ + rtDW.Cond_prev_private_DSTATE_ei = rtb_LogicalOperator1; - case 1: - /* Outputs for IfAction SubSystem: '/Level 1' incorporates: - * ActionPort: '/Action Port' - */ - Level0_j(&rtB.Merge_d, &Blower_FR, &rtDW.Blower_RR, - &rtDW.Blower_logic_RR, &Dtg_FUR, &rtDW.Dtg_RR, - &rtDW.Dtg_logic_RR, &rtb_Gain2, &rtb_Gain_l, &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.Level1_ha); - - /* End of Outputs for SubSystem: '/Level 1' */ - break; - - case 2: - /* Outputs for IfAction SubSystem: '/Level 2' incorporates: - * ActionPort: '/Action Port' - */ - Level2(&rtB.Merge_d, &Blower_FR, &rtDW.Blower_RR, &rtDW.Blower_logic_RR, - &Dtg_FUR, &rtDW.Dtg_RR, &rtDW.Dtg_logic_RR, &rtDW.HI_logic_on, - &rtb_Gain2, &rtb_Gain_l, &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.Level2_al); - - /* 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' */ - Level2(&rtB.Merge_d, &Blower_FR, &rtDW.Blower_RR, &rtDW.Blower_logic_RR, - &Dtg_FUR, &rtDW.Dtg_RR, &rtDW.Dtg_logic_RR, &rtDW.HI_logic_on, - &rtb_Gain2, &rtb_Gain_l, &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_n); + Level3_i(&rtB.Merge_c, &Blower_FR, &rtDW.Blower_RR, + &rtDW.Blower_logic_RR, &Dtg_FUR, &rtDW.Dtg_RR, + &rtDW.Dtg_logic_RR, &rtDW.HI_logic_on, &rtb_Gain2, &rtb_Gain_l, + &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' */ - Level2(&rtB.Merge_d, &Blower_FR, &rtDW.Blower_RR, &rtDW.Blower_logic_RR, - &Dtg_FUR, &rtDW.Dtg_RR, &rtDW.Dtg_logic_RR, &rtDW.HI_logic_on, - &rtb_Gain2, &rtb_Gain_l, &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_c); + Level3_i(&rtB.Merge_c, &Blower_FR, &rtDW.Blower_RR, + &rtDW.Blower_logic_RR, &Dtg_FUR, &rtDW.Dtg_RR, + &rtDW.Dtg_logic_RR, &rtDW.HI_logic_on, &rtb_Gain2, &rtb_Gain_l, + &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' */ - Level2(&rtB.Merge_d, &Blower_FR, &rtDW.Blower_RR, &rtDW.Blower_logic_RR, - &Dtg_FUR, &rtDW.Dtg_RR, &rtDW.Dtg_logic_RR, &rtDW.HI_logic_on, - &rtb_Gain2, &rtb_Gain_l, &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); + Level3_i(&rtB.Merge_c, &Blower_FR, &rtDW.Blower_RR, + &rtDW.Blower_logic_RR, &Dtg_FUR, &rtDW.Dtg_RR, + &rtDW.Dtg_logic_RR, &rtDW.HI_logic_on, &rtb_Gain2, &rtb_Gain_l, + &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 F' */ + /* End of SwitchCase: '/Switch Case' */ + /* End of Outputs for SubSystem: '/Step 2 R' */ break; case 3: - /* Outputs for IfAction SubSystem: '/Step 3' incorporates: - * ActionPort: '/Action Port' + /* Outputs for IfAction SubSystem: '/Step 3 R' incorporates: + * ActionPort: '/Action Port' */ - Step3(&rtB.Merge_d, &rtDW.start_control_finished_front); + Step3F(&rtB.Merge_c, &rtDW.start_control_finished_front); - /* End of Outputs for SubSystem: '/Step 3' */ + /* End of Outputs for SubSystem: '/Step 3 R' */ break; } - /* End of SwitchCase: '/Switch Case' */ + /* End of SwitchCase: '/Switch Case' */ - /* DataStoreWrite: '/Data Store Write' */ - rtDW.step_start_controle_rear = rtB.Merge_d; + /* DataStoreWrite: '/Data Store Write' */ + rtDW.step_start_controle_rear = rtB.Merge_c; /* End of Outputs for SubSystem: '/Start Control Rear' */ } @@ -12134,7 +12590,7 @@ void HVAC_model_step(void) /* End of If: '/если SC rear не завершен1' */ /* Test Sequence: '/Test Sequence' */ - if (rtDW.temporalCounter_i1 < 7U) { + if (rtDW.temporalCounter_i1 < 1U) { rtDW.temporalCounter_i1++; } @@ -12152,56 +12608,517 @@ void HVAC_model_step(void) /* : ADC_Data_Model.IGN_ANS = uint16(300); */ rtDW.ADC_Data_Model.IGN_ANS = 300U; + /* : Actuator_Ch0_Status_Model.Busy =uint8(1); */ + Actuator_Ch0_Status_Model.Busy = 1U; + + /* : Actuator_Ch0_Status_Model.Error_Connect=uint8(0); */ + Actuator_Ch0_Status_Model.Error_Connect = 0U; + /* : t_now = uint32(0); */ rtDW.t_now = 0U; } else { switch (rtDW.is_c371_HVAC_model) { case IN_step_1: - /* : sf_internal_predicateOutput = after(2, sec); */ - if (rtDW.temporalCounter_i1 >= 2U) { - rtDW.temporalCounter_i1 = 0U; - rtDW.is_c371_HVAC_model = IN_step_2; + step_1(); + break; - /* : ADC_Data_Model.Sensor_Ambient_Temp = uint16(800); */ - rtDW.ADC_Data_Model.Sensor_Ambient_Temp = 800U; + case IN_step_10: + step_10(); + break; - /* : t_now = uint32(2000); */ - rtDW.t_now = 2000U; - } else { - /* : ADC_Data_Model.Sensor_Ambient_Temp= uint16(300); */ - rtDW.ADC_Data_Model.Sensor_Ambient_Temp = 300U; + case IN_step_11: + step_11(); + break; - /* : FIU_CCU1_MODEL.FIU_TargetTempFL_Val_ro = uint8(13); */ - rtDW.FIU_CCU1_MODEL.FIU_TargetTempFL_Val_ro = 13U; + case IN_step_12: + step_12(); + break; - /* : ADC_Data_Model.IGN_ANS = uint16(300); */ - rtDW.ADC_Data_Model.IGN_ANS = 300U; + case IN_step_13: + step_13(); + break; - /* : t_now = uint32(0); */ - rtDW.t_now = 0U; - } + case IN_step_14: + step_14(); + break; + + case IN_step_15: + step_15(); + break; + + case IN_step_16: + step_16(); + break; + + case IN_step_17: + step_17(); + break; + + case IN_step_18: + step_18(); + break; + + case IN_step_19: + step_19(); break; case IN_step_2: - /* : sf_internal_predicateOutput = after(5, sec); */ - if (rtDW.temporalCounter_i1 >= 5U) { - rtDW.is_c371_HVAC_model = IN_step_3; + step_2(); + break; - /* : ADC_Data_Model.IGN_ANS = uint16(0); */ - rtDW.ADC_Data_Model.IGN_ANS = 0U; + case IN_step_20: + step_20(); + break; + + case IN_step_21: + step_21(); + break; + + case IN_step_22: + /* : sf_internal_predicateOutput = after(1, sec); */ + if (rtDW.temporalCounter_i1 >= 1U) { + rtDW.temporalCounter_i1 = 0U; + rtDW.is_c371_HVAC_model = IN_step_23; + + /* : t_now = uint32(22000); */ + rtDW.t_now = 22000U; } else { - /* : ADC_Data_Model.Sensor_Ambient_Temp = uint16(800); */ - rtDW.ADC_Data_Model.Sensor_Ambient_Temp = 800U; + /* : Actuator_Ch0_Status_Model.Busy =uint8(0); */ + Actuator_Ch0_Status_Model.Busy = 0U; - /* : t_now = uint32(2000); */ - rtDW.t_now = 2000U; + /* : Actuator_Ch0_Status_Model.Error_Connect=uint8(0); */ + Actuator_Ch0_Status_Model.Error_Connect = 0U; + + /* : t_now = uint32(21000); */ + rtDW.t_now = 21000U; } break; + case IN_step_23: + /* : sf_internal_predicateOutput = after(1, sec); */ + if (rtDW.temporalCounter_i1 >= 1U) { + rtDW.temporalCounter_i1 = 0U; + rtDW.is_c371_HVAC_model = IN_step_24; + + /* : t_now = uint32(22000); */ + rtDW.t_now = 22000U; + } else { + /* : t_now = uint32(22000); */ + rtDW.t_now = 22000U; + } + break; + + case IN_step_24: + /* : sf_internal_predicateOutput = after(1, sec); */ + if (rtDW.temporalCounter_i1 >= 1U) { + rtDW.temporalCounter_i1 = 0U; + rtDW.is_c371_HVAC_model = IN_step_25; + + /* : t_now = uint32(22000); */ + rtDW.t_now = 22000U; + } else { + /* : t_now = uint32(22000); */ + rtDW.t_now = 22000U; + } + break; + + case IN_step_25: + /* : sf_internal_predicateOutput = after(1, sec); */ + if (rtDW.temporalCounter_i1 >= 1U) { + rtDW.temporalCounter_i1 = 0U; + rtDW.is_c371_HVAC_model = IN_step_26; + + /* : Actuator_Ch0_Status_Model.in_CPOS_ALL =int16([3, 2, 10, 50, 50, 100, 45, 7, 25]); */ + /* : Actuator_Ch0_Status_Model.in_Act_Stall_Slave=int8([0, 0, 0,0 0, 0, 0, 0,0]); */ + for (i = 0; i < 9; i++) { + Actuator_Ch0_Status_Model.in_CPOS_ALL[i] = e[i]; + Actuator_Ch0_Status_Model.in_Act_Stall_Slave[i] = 0; + } + + /* : t_now = uint32(22000); */ + rtDW.t_now = 22000U; + } else { + /* : t_now = uint32(22000); */ + rtDW.t_now = 22000U; + } + break; + + case IN_step_26: + step_26(); + break; + + case IN_step_27: + step_27(); + break; + + case IN_step_28: + step_28(); + break; + + case IN_step_29: + step_29(); + break; + + case IN_step_3: + step_3(); + break; + + case IN_step_30: + step_30(); + break; + + case IN_step_31: + /* : sf_internal_predicateOutput = after(1, sec); */ + if (rtDW.temporalCounter_i1 >= 1U) { + rtDW.temporalCounter_i1 = 0U; + rtDW.is_c371_HVAC_model = IN_step_32; + + /* : t_now = uint32(22000); */ + rtDW.t_now = 22000U; + } else { + /* : Actuator_Ch0_Status_Model.in_CPOS_ALL =int16([1050, 1252, 1200, 1415, 1500,1500,1435, 5000,1200]); */ + /* : Actuator_Ch0_Status_Model.in_Act_Stall_Slave=int8([0, 0, 0,0 1, 0, 0, 0,0]); */ + for (i = 0; i < 9; i++) { + Actuator_Ch0_Status_Model.in_CPOS_ALL[i] = b[i]; + Actuator_Ch0_Status_Model.in_Act_Stall_Slave[i] = d[i]; + } + + /* : t_now = uint32(22000); */ + rtDW.t_now = 22000U; + } + break; + + case IN_step_32: + /* : sf_internal_predicateOutput = after(1, sec); */ + if (rtDW.temporalCounter_i1 >= 1U) { + rtDW.temporalCounter_i1 = 0U; + rtDW.is_c371_HVAC_model = IN_step_33; + + /* : Actuator_Ch0_Status_Model.in_Act_Stall_Slave=int8([0, 0, 0,0 0, 0, 0, 0,0]); */ + for (i = 0; i < 9; i++) { + Actuator_Ch0_Status_Model.in_Act_Stall_Slave[i] = 0; + } + + /* : t_now = uint32(22000); */ + rtDW.t_now = 22000U; + } else { + /* : t_now = uint32(22000); */ + rtDW.t_now = 22000U; + } + break; + + case IN_step_33: + /* : sf_internal_predicateOutput = after(1, sec); */ + if (rtDW.temporalCounter_i1 >= 1U) { + rtDW.temporalCounter_i1 = 0U; + rtDW.is_c371_HVAC_model = IN_step_34; + + /* : t_now = uint32(200); */ + rtDW.t_now = 200U; + } else { + /* : Actuator_Ch0_Status_Model.in_Act_Stall_Slave=int8([0, 0, 0,0 0, 0, 0, 0,0]); */ + for (i = 0; i < 9; i++) { + Actuator_Ch0_Status_Model.in_Act_Stall_Slave[i] = 0; + } + + /* : t_now = uint32(22000); */ + rtDW.t_now = 22000U; + } + break; + + case IN_step_34: + /* : sf_internal_predicateOutput = after(1, sec); */ + if (rtDW.temporalCounter_i1 >= 1U) { + rtDW.temporalCounter_i1 = 0U; + rtDW.is_c371_HVAC_model = IN_step_35; + + /* : t_now = uint32(22000); */ + rtDW.t_now = 22000U; + } else { + /* : t_now = uint32(200); */ + rtDW.t_now = 200U; + } + break; + + case IN_step_35: + /* : sf_internal_predicateOutput = after(1, sec); */ + if (rtDW.temporalCounter_i1 >= 1U) { + rtDW.temporalCounter_i1 = 0U; + rtDW.is_c371_HVAC_model = IN_step_36; + + /* : t_now = uint32(22000); */ + rtDW.t_now = 22000U; + } else { + /* : t_now = uint32(22000); */ + rtDW.t_now = 22000U; + } + break; + + case IN_step_36: + /* : sf_internal_predicateOutput = after(1, sec); */ + if (rtDW.temporalCounter_i1 >= 1U) { + rtDW.temporalCounter_i1 = 0U; + rtDW.is_c371_HVAC_model = IN_step_37; + + /* : t_now = uint32(52000); */ + rtDW.t_now = 52000U; + } else { + /* : t_now = uint32(22000); */ + rtDW.t_now = 22000U; + } + break; + + case IN_step_37: + /* : sf_internal_predicateOutput = after(1, sec); */ + if (rtDW.temporalCounter_i1 >= 1U) { + rtDW.temporalCounter_i1 = 0U; + rtDW.is_c371_HVAC_model = IN_step_38; + + /* : Actuator_Ch0_Status_Model.Busy =uint8(0); */ + Actuator_Ch0_Status_Model.Busy = 0U; + + /* : Actuator_Ch0_Status_Model.Error_Connect=uint8(0); */ + Actuator_Ch0_Status_Model.Error_Connect = 0U; + } else { + /* : t_now = uint32(52000); */ + rtDW.t_now = 52000U; + } + break; + + case IN_step_38: + /* : sf_internal_predicateOutput = after(1, sec); */ + if (rtDW.temporalCounter_i1 >= 1U) { + rtDW.temporalCounter_i1 = 0U; + rtDW.is_c371_HVAC_model = IN_step_39; + + /* : t_now = uint32(22000); */ + rtDW.t_now = 22000U; + } else { + /* : Actuator_Ch0_Status_Model.Busy =uint8(0); */ + Actuator_Ch0_Status_Model.Busy = 0U; + + /* : Actuator_Ch0_Status_Model.Error_Connect=uint8(0); */ + Actuator_Ch0_Status_Model.Error_Connect = 0U; + } + break; + + case IN_step_39: + /* : sf_internal_predicateOutput = after(1, sec); */ + if (rtDW.temporalCounter_i1 >= 1U) { + rtDW.temporalCounter_i1 = 0U; + rtDW.is_c371_HVAC_model = IN_step_40; + + /* : t_now = uint32(22000); */ + rtDW.t_now = 22000U; + } else { + /* : t_now = uint32(22000); */ + rtDW.t_now = 22000U; + } + break; + + case IN_step_4: + step_4(); + break; + + case IN_step_40: + /* : sf_internal_predicateOutput = after(1, sec); */ + if (rtDW.temporalCounter_i1 >= 1U) { + rtDW.temporalCounter_i1 = 0U; + rtDW.is_c371_HVAC_model = IN_step_41; + + /* : t_now = uint32(22000); */ + rtDW.t_now = 22000U; + } else { + /* : t_now = uint32(22000); */ + rtDW.t_now = 22000U; + } + break; + + case IN_step_41: + /* : sf_internal_predicateOutput = after(1, sec); */ + if (rtDW.temporalCounter_i1 >= 1U) { + rtDW.temporalCounter_i1 = 0U; + rtDW.is_c371_HVAC_model = IN_step_42; + + /* : t_now = uint32(22000); */ + rtDW.t_now = 22000U; + } else { + /* : t_now = uint32(22000); */ + rtDW.t_now = 22000U; + } + break; + + case IN_step_42: + /* : sf_internal_predicateOutput = after(1, sec); */ + if (rtDW.temporalCounter_i1 >= 1U) { + rtDW.temporalCounter_i1 = 0U; + rtDW.is_c371_HVAC_model = IN_step_43; + + /* : Actuator_Ch0_Status_Model.in_CPOS_ALL =int16([3, 2, 10, 150, 150, 100, 45, 7, 25]); */ + /* : Actuator_Ch0_Status_Model.in_Act_Stall_Slave=int8([0, 0, 0,0 1, 0, 0, 0,0]); */ + for (i = 0; i < 9; i++) { + Actuator_Ch0_Status_Model.in_CPOS_ALL[i] = c[i]; + Actuator_Ch0_Status_Model.in_Act_Stall_Slave[i] = d[i]; + } + } else { + /* : t_now = uint32(22000); */ + rtDW.t_now = 22000U; + } + break; + + case IN_step_43: + /* : sf_internal_predicateOutput = after(1, sec); */ + if (rtDW.temporalCounter_i1 >= 1U) { + rtDW.temporalCounter_i1 = 0U; + rtDW.is_c371_HVAC_model = IN_step_45; + + /* : Actuator_Ch0_Status_Model.in_Act_Stall_Slave=int8([0, 0, 0,0 0, 0, 0, 0,0]); */ + for (i = 0; i < 9; i++) { + Actuator_Ch0_Status_Model.in_Act_Stall_Slave[i] = 0; + } + + /* : t_now = uint32(22000); */ + rtDW.t_now = 22000U; + } else { + /* : Actuator_Ch0_Status_Model.in_CPOS_ALL =int16([3, 2, 10, 150, 150, 100, 45, 7, 25]); */ + /* : Actuator_Ch0_Status_Model.in_Act_Stall_Slave=int8([0, 0, 0,0 1, 0, 0, 0,0]); */ + for (i = 0; i < 9; i++) { + Actuator_Ch0_Status_Model.in_CPOS_ALL[i] = c[i]; + Actuator_Ch0_Status_Model.in_Act_Stall_Slave[i] = d[i]; + } + } + break; + + case IN_step_44: + /* : sf_internal_predicateOutput = after(1, sec); */ + if (rtDW.temporalCounter_i1 >= 1U) { + rtDW.temporalCounter_i1 = 0U; + rtDW.is_c371_HVAC_model = IN_step_46; + + /* : t_now = uint32(22000); */ + rtDW.t_now = 22000U; + } else { + /* : Actuator_Ch0_Status_Model.in_CPOS_ALL =int16([1050, 1252, 1200, 1415, 1500,1500,1435, 5000,1200]); */ + /* : Actuator_Ch0_Status_Model.in_Act_Stall_Slave=int8([0, 0, 0,0 1, 0, 0, 0,0]); */ + for (i = 0; i < 9; i++) { + Actuator_Ch0_Status_Model.in_CPOS_ALL[i] = b[i]; + Actuator_Ch0_Status_Model.in_Act_Stall_Slave[i] = d[i]; + } + } + break; + + case IN_step_45: + /* : sf_internal_predicateOutput = after(1, sec); */ + if (rtDW.temporalCounter_i1 >= 1U) { + rtDW.temporalCounter_i1 = 0U; + rtDW.is_c371_HVAC_model = IN_step_44; + + /* : Actuator_Ch0_Status_Model.in_CPOS_ALL =int16([1050, 1252, 1200, 1415, 1500,1500,1435, 5000,1200]); */ + /* : Actuator_Ch0_Status_Model.in_Act_Stall_Slave=int8([0, 0, 0,0 1, 0, 0, 0,0]); */ + for (i = 0; i < 9; i++) { + Actuator_Ch0_Status_Model.in_CPOS_ALL[i] = b[i]; + Actuator_Ch0_Status_Model.in_Act_Stall_Slave[i] = d[i]; + } + } else { + /* : Actuator_Ch0_Status_Model.in_Act_Stall_Slave=int8([0, 0, 0,0 0, 0, 0, 0,0]); */ + for (i = 0; i < 9; i++) { + Actuator_Ch0_Status_Model.in_Act_Stall_Slave[i] = 0; + } + + /* : t_now = uint32(22000); */ + rtDW.t_now = 22000U; + } + break; + + case IN_step_46: + /* : sf_internal_predicateOutput = after(1, sec); */ + if (rtDW.temporalCounter_i1 >= 1U) { + rtDW.temporalCounter_i1 = 0U; + rtDW.is_c371_HVAC_model = IN_step_47; + + /* : t_now = uint32(22000); */ + rtDW.t_now = 22000U; + } else { + /* : t_now = uint32(22000); */ + rtDW.t_now = 22000U; + } + break; + + case IN_step_47: + /* : sf_internal_predicateOutput = after(1, sec); */ + if (rtDW.temporalCounter_i1 >= 1U) { + rtDW.temporalCounter_i1 = 0U; + rtDW.is_c371_HVAC_model = IN_step_48; + + /* : t_now = uint32(22000); */ + rtDW.t_now = 22000U; + } else { + /* : t_now = uint32(22000); */ + rtDW.t_now = 22000U; + } + break; + + case IN_step_48: + /* : sf_internal_predicateOutput = after(1, sec); */ + if (rtDW.temporalCounter_i1 >= 1U) { + rtDW.temporalCounter_i1 = 0U; + rtDW.is_c371_HVAC_model = IN_step_49; + + /* : t_now = uint32(22000); */ + rtDW.t_now = 22000U; + } else { + /* : t_now = uint32(22000); */ + rtDW.t_now = 22000U; + } + break; + + case IN_step_49: + /* : sf_internal_predicateOutput = after(1, sec); */ + if (rtDW.temporalCounter_i1 >= 1U) { + rtDW.temporalCounter_i1 = 0U; + rtDW.is_c371_HVAC_model = IN_step_50; + + /* : t_now = uint32(22000); */ + rtDW.t_now = 22000U; + } else { + /* : t_now = uint32(22000); */ + rtDW.t_now = 22000U; + } + break; + + case IN_step_5: + step_5(); + break; + + case IN_step_50: + /* : sf_internal_predicateOutput = after(1, sec); */ + if (rtDW.temporalCounter_i1 >= 1U) { + rtDW.temporalCounter_i1 = 0U; + rtDW.is_c371_HVAC_model = IN_step_49; + + /* : t_now = uint32(22000); */ + rtDW.t_now = 22000U; + } else { + /* : t_now = uint32(22000); */ + rtDW.t_now = 22000U; + } + break; + + case IN_step_6: + step_6(); + break; + + case IN_step_7: + step_7(); + break; + + case IN_step_8: + step_8(); + break; + default: - /* case IN_step_3: */ - /* : ADC_Data_Model.IGN_ANS = uint16(0); */ - rtDW.ADC_Data_Model.IGN_ANS = 0U; + /* case IN_step_9: */ + step_9(); break; } } @@ -12212,25 +13129,25 @@ void HVAC_model_step(void) rtDW.Cond_prev_private_DSTATE = rtb_FailCond; /* Update for UnitDelay: '/Cond_prev_private ' */ - rtDW.Cond_prev_private_DSTATE_h = rtb_FailCond_f; + rtDW.Cond_prev_private_DSTATE_h = rtb_Compare; /* Update for UnitDelay: '/Cond_prev_private ' */ - rtDW.Cond_prev_private_DSTATE_i = rtb_FailCond_g; + rtDW.Cond_prev_private_DSTATE_i = rtb_Compare_ie; /* Update for UnitDelay: '/Cond_prev_private ' */ - rtDW.Cond_prev_private_DSTATE_e = rtb_FailCond_mg; + rtDW.Cond_prev_private_DSTATE_e = rtb_Compare_g5; /* Update for UnitDelay: '/Cond_prev_private ' */ - rtDW.Cond_prev_private_DSTATE_c = rtb_FailCond_e; + rtDW.Cond_prev_private_DSTATE_c = rtb_Compare_cm4; /* Update for UnitDelay: '/Cond_prev_private ' */ - rtDW.Cond_prev_private_DSTATE_b = rtb_FailCond_a; + rtDW.Cond_prev_private_DSTATE_b = rtb_Compare_n2; /* Update for UnitDelay: '/Cond_prev_private ' */ - rtDW.Cond_prev_private_DSTATE_j = rtb_FailCond_l; + rtDW.Cond_prev_private_DSTATE_j = rtb_Compare_l; /* Update for UnitDelay: '/Cond_prev_private ' */ - rtDW.Cond_prev_private_DSTATE_f = rtb_FailCond_b; + rtDW.Cond_prev_private_DSTATE_f = rtb_Compare_b; } /* Model initialize function */ @@ -12257,18 +13174,6 @@ void HVAC_model_initialize(void) /* Start for DataStoreMemory: '/Data Store Memory5' */ rtDW.t_now = 10U; - - /* SystemInitialize for IfAction SubSystem: '/Homing' */ - /* SystemInitialize for IfAction SubSystem: '/Switch Case Action Subsystem3' */ - /* SystemInitialize for IfAction SubSystem: '/If Action Subsystem' */ - /* SystemInitialize for IfAction SubSystem: '/If Action Subsystem' */ - /* SystemInitialize for SignalConversion generated from: '/Out1' */ - rtB.OutportBufferForOut1 = 2; - - /* End of SystemInitialize for SubSystem: '/If Action Subsystem' */ - /* End of SystemInitialize for SubSystem: '/If Action Subsystem' */ - /* End of SystemInitialize for SubSystem: '/Switch Case Action Subsystem3' */ - /* End of SystemInitialize for SubSystem: '/Homing' */ } } diff --git a/HVAC_model.h b/HVAC_model.h index 20434c4..b244b86 100644 --- a/HVAC_model.h +++ b/HVAC_model.h @@ -3,9 +3,9 @@ * * Code generated for Simulink model 'HVAC_model'. * - * Model version : 1.760 + * Model version : 1.784 * Simulink Coder version : 24.1 (R2024a) 19-Nov-2023 - * C/C++ source code generated on : Fri Apr 3 18:15:49 2026 + * C/C++ source code generated on : Tue Apr 14 14:42:16 2026 * * Target selection: ert.tlc * Embedded hardware selection: ARM Compatible->ARM Cortex-M @@ -38,69 +38,54 @@ /* user code (top of header file) */ #include -/* 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 ' */ -} DW_Level4; + 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_e; /* '/Unit Delay' */ - uint32_t UnitDelay_DSTATE_h; /* '/Unit Delay' */ - uint32_t UnitDelay_DSTATE_o; /* '/Unit Delay' */ - uint32_t t_start_delay_private_DSTATE;/* '/t_start_delay_private ' */ - bool Cond_prev_private_DSTATE; /* '/Cond_prev_private ' */ -} DW_Level3_h; + 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 ' */ -} DW_Level0_p; + 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 ' */ -} DW_Level4_m; + 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 0' */ +/* Block states (default storage) for system '/Level 3' */ typedef struct { uint32_t UnitDelay_DSTATE; /* '/Unit Delay' */ - uint32_t UnitDelay_DSTATE_a; /* '/Unit Delay' */ - uint32_t UnitDelay_DSTATE_l; /* '/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_Level0_n; - -/* Block states (default storage) for system '/Level 2' */ -typedef struct { - uint32_t UnitDelay_DSTATE; /* '/Unit Delay' */ - uint32_t UnitDelay_DSTATE_j; /* '/Unit Delay' */ - uint32_t UnitDelay_DSTATE_m; /* '/Unit Delay' */ - uint32_t t_start_delay_private_DSTATE;/* '/t_start_delay_private ' */ - bool Cond_prev_private_DSTATE; /* '/Cond_prev_private ' */ -} DW_Level2; +} DW_Level3_n; /* Block signals (default storage) */ typedef struct { uint8_t Merge_b; /* '/Merge' */ int8_t Merge_l; /* '/Merge' */ - int8_t Merge_c; /* '/Merge' */ - int8_t Merge_cs; /* '/Merge' */ - int8_t Merge_d; /* '/Merge' */ - int8_t Merge_i; /* '/Merge' */ - int8_t Merge_h; /* '/Merge' */ - int8_t OutportBufferForOut1; /* '/Constant1' */ + int8_t Merge_c; /* '/Merge' */ + int8_t Merge_h; /* '/Merge' */ + int8_t Merge_h1; /* '/Merge' */ } B; /* Block states (default storage) for system '' */ typedef struct { - ActuatorCmdBusInput Actuator_Ch0_Status_Model;/* '/Data Store Memory17' */ - ActuatorCmdBusInput Actuator_Ch1_Status_Model;/* '/Data Store Memory17' */ - ActuatorCmdBusInput Actuator_Ch2_Status_Model;/* '/Data Store Memory17' */ CmdBusADCData ADC_Data_Model; /* '/Data Store Memory42' */ CmdCAN_FIU_CCU1_Bus FIU_CCU1_MODEL; /* '/Data Store Memory43' */ CmdCAN_FIU_CCU2_Bus FIU_CCU2_MODEL; /* '/Data Store Memory44' */ @@ -110,6 +95,7 @@ typedef struct { double SET_FL; /* '/Data Store Memory15' */ double MODE_DRIVER; /* '/Data Store Memory18' */ double MODE_RR_passenger; /* '/Data Store Memory19' */ + double SKIPPED_FIRST_SIMULATION_STEP;/* '/Data Store Memory64' */ double start_control_finished_rear; /* '/SC Rear' */ CmdBusADCDataKey ADC_Key_Data_Model; /* '/Data Store Memory3' */ uint32_t t_start_delay_private_DSTATE;/* '/t_start_delay_private ' */ @@ -120,32 +106,43 @@ typedef struct { uint32_t t_start_delay_private_DSTATE_j;/* '/t_start_delay_private ' */ uint32_t t_start_delay_private_DSTATE_bh;/* '/t_start_delay_private ' */ uint32_t t_start_delay_private_DSTATE_bx;/* '/t_start_delay_private ' */ - uint32_t t_start_delay_private_DSTATE_m;/* '/t_start_delay_private ' */ - uint32_t t_start_delay_private_DSTATE_l;/* '/t_start_delay_private ' */ - uint32_t UnitDelay_DSTATE; /* '/Unit Delay' */ - uint32_t UnitDelay_DSTATE_b; /* '/Unit Delay' */ - uint32_t UnitDelay_DSTATE_m; /* '/Unit Delay' */ - uint32_t UnitDelay_DSTATE_j; /* '/Unit Delay' */ - uint32_t t_start_delay_private_DSTATE_g;/* '/t_start_delay_private ' */ - uint32_t UnitDelay_DSTATE_p; /* '/Unit Delay' */ - uint32_t UnitDelay_DSTATE_g; /* '/Unit Delay' */ - uint32_t UnitDelay_DSTATE_l; /* '/Unit Delay' */ - uint32_t UnitDelay_DSTATE_gw; /* '/Unit Delay' */ - uint32_t t_start_delay_private_DSTATE_bd;/* '/t_start_delay_private ' */ - uint32_t UnitDelay_DSTATE_lc; /* '/Unit Delay' */ - uint32_t UnitDelay_DSTATE_jz; /* '/Unit Delay' */ - uint32_t UnitDelay_DSTATE_d; /* '/Unit Delay' */ - uint32_t UnitDelay_DSTATE_n; /* '/Unit Delay' */ - uint32_t t_start_delay_private_DSTATE_n;/* '/t_start_delay_private ' */ - uint32_t t_start_delay_private_DSTATE_nk;/* '/t_start_delay_private ' */ - uint32_t t_start_delay_private_DSTATE_gu;/* '/t_start_delay_private ' */ - uint32_t t_start_delay_private_DSTATE_i;/* '/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_f;/* '/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_n;/* '/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_m;/* '/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_start_delay_private_DSTATE_h;/* '/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' */ uint16_t POS_private[9]; /* '/Data Store Memory3' */ - uint16_t POS_private_c[9]; /* '/Data Store Memory3' */ - uint16_t POS_private_a[9]; /* '/Data Store Memory3' */ uint16_t Blower_FL; /* '/Data Store Memory27' */ uint16_t Blower_RR; /* '/Data Store Memory32' */ uint16_t Blower_logic_FL; /* '/Data Store Memory37' */ @@ -159,48 +156,35 @@ typedef struct { bool Cond_prev_private_DSTATE_b; /* '/Cond_prev_private ' */ bool Cond_prev_private_DSTATE_j; /* '/Cond_prev_private ' */ bool Cond_prev_private_DSTATE_f; /* '/Cond_prev_private ' */ - bool Cond_prev_private_DSTATE_im; /* '/Cond_prev_private ' */ - bool Cond_prev_private_DSTATE_hp; /* '/Cond_prev_private ' */ - bool Cond_prev_private_DSTATE_fw; /* '/Cond_prev_private ' */ - bool Cond_prev_private_DSTATE_d; /* '/Cond_prev_private ' */ - bool Cond_prev_private_DSTATE_p; /* '/Cond_prev_private ' */ - bool Cond_prev_private_DSTATE_a; /* '/Cond_prev_private ' */ - bool Cond_prev_private_DSTATE_l; /* '/Cond_prev_private ' */ - bool Cond_prev_private_DSTATE_it; /* '/Cond_prev_private ' */ - bool Cond_prev_private_DSTATE_dq; /* '/Cond_prev_private ' */ + bool Cond_prev_private_DSTATE_ei; /* '/Cond_prev_private ' */ + bool Cond_prev_private_DSTATE_jk; /* '/Cond_prev_private ' */ + bool Cond_prev_private_DSTATE_i5; /* '/Cond_prev_private ' */ + bool Cond_prev_private_DSTATE_a; /* '/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_fi; /* '/Cond_prev_private ' */ + bool Cond_prev_private_DSTATE_hs; /* '/Cond_prev_private ' */ + bool Cond_prev_private_DSTATE_g; /* '/Cond_prev_private ' */ + bool Cond_prev_private_DSTATE_d; /* '/Cond_prev_private ' */ int8_t stepSig_private; /* '/Data Store Memory' */ - int8_t stepSig_private_c; /* '/Data Store Memory' */ - int8_t stepSig_private_p; /* '/Data Store Memory' */ + int8_t stepHoming_private; /* '/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' */ - int8_t stepHoming_private; /* '/Data Store Memory' */ 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 Speed_private_o[9]; /* '/Data Store Memory11' */ - uint8_t Coils_private_n[9]; /* '/Data Store Memory16' */ - uint8_t BUS_ADR_private_p[9]; /* '/Data Store Memory4' */ - uint8_t MODE_private_a[9]; /* '/Data Store Memory5' */ - uint8_t COM_private_h[9]; /* '/Data Store Memory6' */ - uint8_t Stall_private_j[9]; /* '/Data Store Memory7' */ - uint8_t Lnoise_private_d[9]; /* '/Data Store Memory8' */ - uint8_t Autos_private_m[9]; /* '/Data Store Memory9' */ - uint8_t Speed_private_e[9]; /* '/Data Store Memory11' */ - uint8_t Coils_private_f[9]; /* '/Data Store Memory16' */ - uint8_t BUS_ADR_private_f[9]; /* '/Data Store Memory4' */ - uint8_t MODE_private_an[9]; /* '/Data Store Memory5' */ - uint8_t COM_private_j[9]; /* '/Data Store Memory6' */ - uint8_t Stall_private_n[9]; /* '/Data Store Memory7' */ - uint8_t Lnoise_private_j[9]; /* '/Data Store Memory8' */ - uint8_t Autos_private_j[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 SET_FR; /* '/Data Store Memory14' */ uint8_t Mode_FL; /* '/Data Store Memory23' */ uint8_t Dtg_FUL; /* '/Data Store Memory31' */ @@ -218,20 +202,17 @@ 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_Level2 Level5_e; /* '/Level 5' */ - DW_Level2 Level4_c; /* '/Level 4' */ - DW_Level2 Level3_n; /* '/Level 3' */ - DW_Level2 Level2_al; /* '/Level 2' */ - DW_Level0_n Level1_ha; /* '/Level 1' */ - DW_Level0_n Level0_jq; /* '/Level 0' */ - DW_Level4_m Level5_p; /* '/Level 5' */ - DW_Level4_m Level4_di; /* '/Level 4' */ - DW_Level0_p Level1_h; /* '/Level 1' */ - DW_Level0_p Level0_he; /* '/Level 0' */ - DW_Level3_h Level4_g; /* '/Level 4' */ - DW_Level3_h Level3_dl; /* '/Level 3' */ - DW_Level4 Level5_l; /* '/Level 5' */ - DW_Level4 Level4_lz; /* '/Level 4' */ + 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; /* Constant parameters (default storage) */ @@ -251,7 +232,7 @@ typedef struct { * '/1-D Lookup Table' * '/1-D Lookup Table' */ - double pooled3[1024]; + double pooled2[1024]; /* Expression: [-4 -2.4 -0.8 0.8 2.4 4 5.6 7.2 8.8 10.4 12 13.6 15.2 16.8 18.4 20 21.6 23.2 24.8 26.4 28 29.6 31.2 32.8 34.4 36 37.6 39.2 40.8 42.4 44 45.6 47.2 48.8 50.4 52 53.6 55.2 56.8 58.4 60 61.6 63.2 64.8 66.4 68 69.6 71.2 72.8 74.4 76 77.6 79.2 80.8 82.4 84 85.6 87.2 88.8 90.4 92 93.6 95.2 96.8 98.4 100 101.6 103.2 104.8 106.4 108 109.6 111.2 112.8 114.4 116 117.6 119.2 120.8 122.4 124 125.6 127.2 128.8 130.4 132 133.6 135.2 136.8 138.4 140 141.6 143.2 144.8 146.4 148 149.6 151.2 152.8 154.4 156 157.6 159.2 160.8 162.4 164 165.6 167.2 168.8 170.4 172 173.6 175.2 176.8 178.4 180 181.6 183.2 184.8 186.4 188 189.6 191.2 192.8 194.4 196 197.6 199.2 200.8 202.4 204 205.6 207.2 208.8 210.4 212 213.6 215.2 216.8 218.4 220 221.6 223.2 224.8 226.4 228 229.6 231.2 232.8 234.4 236 237.6 239.2 240.8 242.4 244 245.6 247.2 248.8 250.4 252 253.6 255.2 256.8 258.4 260 261.6 263.2 264.8 266.4 268 269.6 271.2 272.8 274.4 276 277.6 279.2 280.8 282.4 284 285.6 287.2 288.8 290.4 292 293.6 295.2 296.8 298.4 300 301.6 303.2 304.8 306.4 308 309.6 311.2 312.8 314.4 316 317.6 319.2 320.8 322.4 324 325.6 327.2 328.8 330.4 332 333.6 335.2 336.8 338.4 340 341.6 343.2 344.8 346.4 348 349.6 351.2 352.8 354.4 356 357.6 359.2 360.8 362.4 364 365.6 367.2 368.8 370.4 372 373.6 375.2 376.8 378.4 380 381.6 383.2 384.8 386.4 388 389.6 391.2 392.8 394.4 396 397.6 399.2 400.8 402.4 404 405.6 407.2 408.8 410.4 412 413.6 415.2 416.8 418.4 420 421.6 423.2 424.8 426.4 428 429.6 431.2 432.8 434.4 436 437.6 439.2 440.8 442.4 444 445.6 447.2 448.8 450.4 452 453.6 455.2 456.8 458.4 460 461.6 463.2 464.8 466.4 468 469.6 471.2 472.8 474.4 476 477.6 479.2 480.8 482.4 484 485.6 487.2 488.8 490.4 492 493.6 495.2 496.8 498.4 500 501.6 503.2 504.8 506.4 508 509.6 511.2 512.8 514.4 516 517.6 519.2 520.8 522.4 524 525.6 527.2 528.8 530.4 532 533.6 535.2 536.8 538.4 540 541.6 543.2 544.8 546.4 548 549.6 551.2 552.8 554.4 556 557.6 559.2 560.8 562.4 564 565.6 567.2 568.8 570.4 572 573.6 575.2 576.8 578.4 580 581.6 583.2 584.8 586.4 588 589.6 591.2 592.8 594.4 596 597.6 599.2 600.8 602.4 604 605.6 607.2 608.8 610.4 612 613.6 615.2 616.8 618.4 620 621.6 623.2 624.8 626.4 628 629.6 631.2 632.8 634.4 636 637.6 639.2 640.8 642.4 644 645.6 647.2 648.8 650.4 652 653.6 655.2 656.8 658.4 660 661.6 663.2 664.8 666.4 668 669.6 671.2 672.8 674.4 676 677.6 679.2 680.8 682.4 684 685.6 687.2 688.8 690.4 692 693.6 695.2 696.8 698.4 700 701.6 703.2 704.8 706.4 708 709.6 711.2 712.8 714.4 716 717.6 719.2 720.8 722.4 724 725.6 727.2 728.8 730.4 732 733.6 735.2 736.8 738.4 740 741.6 743.2 744.8 746.4 748 749.6 751.2 752.8 754.4 756 757.6 759.2 760.8 762.4 764 765.6 767.2 768.8 770.4 772 773.6 775.2 776.8 778.4 780 781.6 783.2 784.8 786.4 788 789.6 791.2 792.8 794.4 796 797.6 799.2 800.8 802.4 804 805.6 807.2 808.8 810.4 812 813.6 815.2 816.8 818.4 820 821.6 823.2 824.8 826.4 828 829.6 831.2 832.8 834.4 836 837.6 839.2 840.8 842.4 844 845.6 847.2 848.8 850.4 852 853.6 855.2 856.8 858.4 860 861.6 863.2 864.8 866.4 868 869.6 871.2 872.8 874.4 876 877.6 879.2 880.8 882.4 884 885.6 887.2 888.8 890.4 892 893.6 895.2 896.8 898.4 900 901.6 903.2 904.8 906.4 908 909.6 911.2 912.8 914.4 916 917.6 919.2 920.8 922.4 924 925.6 927.2 928.8 930.4 932 933.6 935.2 936.8 938.4 940 941.6 943.2 944.8 946.4 948 949.6 951.2 952.8 954.4 956 957.6 959.2 960.8 962.4 964 965.6 967.2 968.8 970.4 972 973.6 975.2 976.8 978.4 980 981.6 983.2 984.8 986.4 988 989.6 991.2 992.8 994.4 996 997.6 999.2 1000.8 1002.4 1004 1005.6 1007.2 1008.8 1010.4 1012 1013.6 1015.2 1016.8 1018.4 1020 1021.6 1023.2 1024.8 1026.4 1028 1029.6 1031.2 1032.8 1034.4 1036 1037.6 1039.2 1040.8 1042.4 1044 1045.6 1047.2 1048.8 1050.4 1052 1053.6 1055.2 1056.8 1058.4 1060 1061.6 1063.2 1064.8 1066.4 1068 1069.6 1071.2 1072.8 1074.4 1076 1077.6 1079.2 1080.8 1082.4 1084 1085.6 1087.2 1088.8 1090.4 1092 1093.6 1095.2 1096.8 1098.4 1100 1101.6 1103.2 1104.8 1106.4 1108 1109.6 1111.2 1112.8 1114.4 1116 1117.6 1119.2 1120.8 1122.4 1124 1125.6 1127.2 1128.8 1130.4 1132 1133.6 1135.2 1136.8 1138.4 1140 1141.6 1143.2 1144.8 1146.4 1148 1149.6 1151.2 1152.8 1154.4 1156 1157.6 1159.2 1160.8 1162.4 1164 1165.6 1167.2 1168.8 1170.4 1172 1173.6 1175.2 1176.8 1178.4 1180 1181.6 1183.2 1184.8 1186.4 1188 1189.6 1191.2 1192.8 1194.4 1196 1197.6 1199.2 1200.8 1202.4 1204 1205.6 1207.2 1208.8 1210.4 1212 1213.6 1215.2 1216.8 1218.4 1220 1221.6 1223.2 1224.8 1226.4 1228 1229.6 1231.2 1232.8 1234.4 1236 1237.6 1239.2 1240.8 1242.4 1244 1245.6 1247.2 1248.8 1250.4 1252 1253.6 1255.2 1256.8 1258.4 1260 1261.6 1263.2 1264.8 1266.4 1268 1269.6 1271.2 1272.8 1274.4 1276 1277.6 1279.2 1280.8 1282.4 1284 1285.6 1287.2 1288.8 1290.4 1292 1293.6 1295.2 1296.8 1298.4 1300 1301.6 1303.2 1304.8 1306.4 1308 1309.6 1311.2 1312.8 1314.4 1316 1317.6 1319.2 1320.8 1322.4 1324 1325.6 1327.2 1328.8 1330.4 1332 1333.6 1335.2 1336.8 1338.4 1340 1341.6 1343.2 1344.8 1346.4 1348 1349.6 1351.2 1352.8 1354.4 1356 1357.6 1359.2 1360.8 1362.4 1364 1365.6 1367.2 1368.8 1370.4 1372 1373.6 1375.2 1376.8 1378.4 1380 1381.6 1383.2 1384.8 1386.4 1388 1389.6 1391.2 1392.8 1394.4 1396 1397.6 1399.2 1400.8 1402.4 1404 1405.6 1407.2 1408.8 1410.4 1412 1413.6 1415.2 1416.8 1418.4 1420 1421.6 1423.2 1424.8 1426.4 1428 1429.6 1431.2 1432.8 1434.4 1436 1437.6 1439.2 1440.8 1442.4 1444 1445.6 1447.2 1448.8 1450.4 1452 1453.6 1455.2 1456.8 1458.4 1460 1461.6 1463.2 1464.8 1466.4 1468 1469.6 1471.2 1472.8 1474.4 1476 1477.6 1479.2 1480.8 1482.4 1484 1485.6 1487.2 1488.8 1490.4 1492 1493.6 1495.2 1496.8 1498.4 1500 1501.6 1503.2 1504.8 1506.4 1508 1509.6 1511.2 1512.8 1514.4 1516 1517.6 1519.2 1520.8 1522.4 1524 1525.6 1527.2 1528.8 1530.4 1532 1533.6 1535.2 1536.8 1538.4 1540 1541.6 1543.2 1544.8 1546.4 1548 1549.6 1551.2 1552.8 1554.4 1556 1557.6 1559.2 1560.8 1562.4 1564 1565.6 1567.2 1568.8 1570.4 1572 1573.6 1575.2 1576.8 1578.4 1580 1581.6 1583.2 1584.8 1586.4 1588 1589.6 1591.2 1592.8 1594.4 1596 1597.6 1599.2 1600.8 1602.4 1604 1605.6 1607.2 1608.8 1610.4 1612 1613.6 1615.2 1616.8 1618.4 1620 1621.6 1623.2 1624.8 1626.4 1628 1629.6 1631.2 1632.8] * Referenced by: '/1-D Lookup Table' @@ -266,19 +247,14 @@ typedef struct { * '/1-D Lookup Table' * '/1-D Lookup Table1' */ - double pooled4[1024]; + double pooled3[1024]; /* Pooled Parameter (Expression: [17 18 19 20 21 22 23 24 25 26 27 28 29]) * Referenced by: * '/Выбор режима Left' * '/Выбор режима Right' */ - uint32_t pooled23[2]; - - /* Computed Parameter: ACT2_Value - * Referenced by: '/ACT2' - */ - int16_t ACT2_Value[9]; + uint32_t pooled22[2]; /* Computed Parameter: uDLookupTable_tableData_h * Referenced by: '/1-D Lookup Table' @@ -290,7 +266,7 @@ typedef struct { * '/Выбор режима Left' * '/Выбор режима Right' */ - int16_t pooled29[13]; + int16_t pooled28[13]; /* Pooled Parameter (Expression: [0:4:4092]) * Referenced by: @@ -303,10 +279,10 @@ typedef struct { * '/1-D Lookup Table' * '/1-D Lookup Table1' */ - uint16_t pooled32[1024]; + uint16_t pooled31[1024]; /* Computed Parameter: ACT1_Value - * Referenced by: '/ACT1' + * Referenced by: '/ACT1' */ uint16_t ACT1_Value[9]; @@ -315,12 +291,13 @@ typedef struct { * '/Выбор режима Left' * '/Выбор режима Right' */ - uint8_t pooled61[6]; + uint8_t pooled59[6]; } ConstP; /* External outputs (root outports fed by signals with default storage) */ typedef struct { CmdBusError Out1; /* '/Out1' */ + uint8_t Out2[127]; /* '/Out2' */ } ExtY; /* Real-time Model Data Structure */ @@ -348,9 +325,10 @@ extern const ConstP rtConstP; * states and exports their symbols. * */ +extern ActuatorCmdBusInput Actuator_Ch1_Status_Model;/* '/Data Store Memory62' */ +extern ActuatorCmdBusInput Actuator_Ch2_Status_Model;/* '/Data Store Memory63' */ +extern ActuatorCmdBusInput Actuator_Ch0_Status_Model;/* '/Data Store Memory61' */ 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 Memory1' */ @@ -789,71 +767,111 @@ 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 '/Display1' : Unused code path elimination - * Block '/Display' : Unused code path elimination - * Block '/Display3' : Unused code path elimination - * Block '/Display3' : Unused code path elimination - * Block '/Display3' : 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 '/Display1' : Unused code path elimination + * Block '/Display2' : 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 '/Display1' : Unused code path elimination + * Block '/Display' : Unused code path elimination + * Block '/Display1' : Unused code path elimination + * Block '/Display2' : 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 '/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 '/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 '/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 '/Display1' : 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 '/Display7' : 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 '/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 '/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 @@ -863,46 +881,46 @@ 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 '/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 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 '/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 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 '/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 @@ -912,15 +930,6 @@ 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 - * Block '/Abs' : Eliminated since data is unsigned - * Block '/Abs' : Eliminated since data is unsigned - * Block '/Abs' : Eliminated since data is unsigned */ /*- @@ -1319,46 +1328,46 @@ extern RT_MODEL *const rtM; * '' : 'HVAC_model/ACP/Subsystem1/Write IncarRR' * '' : 'HVAC_model/CAN/Subsystem' * '' : '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/Write' - * '' : '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/MIN POSITION' - * '' : '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/MIN POSITION' - * '' : 'HVAC_model/LIN/CHANEL0/Homing/Count step actuator' - * '' : 'HVAC_model/LIN/CHANEL0/Homing/MAX POSITION' - * '' : 'HVAC_model/LIN/CHANEL0/Homing/MIN POSITION' - * '' : '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/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/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 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/If Action Subsystem/If Action Subsystem' + * '' : '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/Write' + * '' : '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/MIN POSITION' + * '' : '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/MIN POSITION' + * '' : 'HVAC_model/LIN/CHANEL0/Homing/Count step actuator' + * '' : 'HVAC_model/LIN/CHANEL0/Homing/MAX POSITION' + * '' : 'HVAC_model/LIN/CHANEL0/Homing/MIN POSITION' + * '' : '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/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/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 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/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/RealTime_Timer' * '' : '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' @@ -1380,598 +1389,529 @@ extern RT_MODEL *const rtM; * '' : 'HVAC_model/LIN/CHANEL0/Normal Mode/If Action Subsystem2/Normal Mode' * '' : 'HVAC_model/LIN/CHANEL0/Stop Mode/If Action Subsystem2' * '' : 'HVAC_model/LIN/CHANEL0/Stop Mode/If Action Subsystem3' - * '' : 'HVAC_model/LIN/CHANEL1/Actuator_Ch0_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/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/Write Ignition' - * '' : '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/MIN POSITION' - * '' : '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/MIN 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/Initial CPOS Max' - * '' : '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/Initial CPOS Min' - * '' : '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/Move to position Max' - * '' : '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/Move to position Min' - * '' : '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/Normal Mode' - * '' : 'HVAC_model/LIN/CHANEL1/Stop Mode/If Action Subsystem2' - * '' : 'HVAC_model/LIN/CHANEL1/Stop Mode/If Action Subsystem3' - * '' : 'HVAC_model/LIN/CHANEL2/Actuator_Ch0_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/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/Write Ignition' - * '' : '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/MIN POSITION' - * '' : '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/MIN 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/Initial CPOS Max' - * '' : '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/Initial CPOS Min' - * '' : '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/Move to position Max' - * '' : '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/Move to position Min' - * '' : 'HVAC_model/LIN/CHANEL2/Normal Mode/If Action Subsystem2' - * '' : 'HVAC_model/LIN/CHANEL2/Normal Mode/If Action Subsystem3' - * '' : 'HVAC_model/LIN/CHANEL2/Normal Mode/Write Ignition' - * '' : 'HVAC_model/LIN/CHANEL2/Normal Mode/Write Ignition1' - * '' : 'HVAC_model/LIN/CHANEL2/Normal Mode/If Action Subsystem2/Normal Mode' - * '' : 'HVAC_model/LIN/CHANEL2/Stop Mode/If Action Subsystem2' - * '' : 'HVAC_model/LIN/CHANEL2/Stop Mode/If Action Subsystem3' - * '' : 'HVAC_model/PWN/Write' - * '' : 'HVAC_model/PWN/Write1' - * '' : 'HVAC_model/PWN/Write2' - * '' : 'HVAC_model/PWN/Write3' - * '' : 'HVAC_model/Start control/Start Control Front' - * '' : 'HVAC_model/Start control/Start Control Rear' - * '' : 'HVAC_model/Start control/Start Control Front/Step -1 F' - * '' : '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' - * '' : '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/g_assSTART_ENTER_INCAR' - * '' : 'HVAC_model/Start control/Start Control Front/Step -1 F/Level 0/g_ausSTART_ENTER_SETTEMP' - * '' : 'HVAC_model/Start control/Start Control Front/Step -1 F/Level 1/g_assSTART_ENTER_INCAR' - * '' : 'HVAC_model/Start control/Start Control Front/Step -1 F/Level 1/g_ausSTART_ENTER_SETTEMP' - * '' : 'HVAC_model/Start control/Start Control Front/Step -1 F/Level 3/g_assSTART_ENTER_COOLANT ' - * '' : 'HVAC_model/Start control/Start Control Front/Step -1 F/Level 4/g_assSTART_ENTER_COOLANT ' - * '' : 'HVAC_model/Start control/Start Control Front/Step -1 F/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 F' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 0 F' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 1 F' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 F' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 3' - * '' : 'HVAC_model/Start control/Start Control Rear/Step -1 F/Level 0' - * '' : 'HVAC_model/Start control/Start Control Rear/Step -1 F/Level 1' - * '' : 'HVAC_model/Start control/Start Control Rear/Step -1 F/Level 2' - * '' : 'HVAC_model/Start control/Start Control Rear/Step -1 F/Level 3' - * '' : 'HVAC_model/Start control/Start Control Rear/Step -1 F/Level 4' - * '' : 'HVAC_model/Start control/Start Control Rear/Step -1 F/Level 5' - * '' : 'HVAC_model/Start control/Start Control Rear/Step -1 F/Level 0/g_assSTART_ENTER_INCAR' - * '' : 'HVAC_model/Start control/Start Control Rear/Step -1 F/Level 0/g_ausSTART_ENTER_SETTEMP' - * '' : 'HVAC_model/Start control/Start Control Rear/Step -1 F/Level 1/g_assSTART_ENTER_INCAR' - * '' : 'HVAC_model/Start control/Start Control Rear/Step -1 F/Level 1/g_ausSTART_ENTER_SETTEMP' - * '' : 'HVAC_model/Start control/Start Control Rear/Step -1 F/Level 2/g_assSTART_ENTER_INCAR' - * '' : 'HVAC_model/Start control/Start Control Rear/Step -1 F/Level 2/g_ausSTART_ENTER_SETTEMP' - * '' : 'HVAC_model/Start control/Start Control Rear/Step -1 F/Level 3/g_assSTART_ENTER_COOLANT ' - * '' : 'HVAC_model/Start control/Start Control Rear/Step -1 F/Level 3/g_assSTART_ENTER_INCAR' - * '' : 'HVAC_model/Start control/Start Control Rear/Step -1 F/Level 3/g_ausSTART_ENTER_SETTEMP' - * '' : 'HVAC_model/Start control/Start Control Rear/Step -1 F/Level 4/g_assSTART_ENTER_COOLANT ' - * '' : 'HVAC_model/Start control/Start Control Rear/Step -1 F/Level 4/g_assSTART_ENTER_INCAR' - * '' : 'HVAC_model/Start control/Start Control Rear/Step -1 F/Level 5/g_assSTART_ENTER_COOLANT ' - * '' : 'HVAC_model/Start control/Start Control Rear/Step -1 F/Level 5/g_assSTART_ENTER_INCAR' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 0 F/Level 0' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 0 F/Level 1' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 0 F/Level 2' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 0 F/Level 3' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 0 F/Level 4' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 0 F/Level 5' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 0 F/Level 2/g_assSTART_COOLANT_STEP0_TO_1 ' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 0 F/Level 2/incar filter down' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 0 F/Level 2/incar filter up' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 0 F/Level 3/g_assSTART_COOLANT_STEP0_TO_1 ' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 0 F/Level 3/incar filter down' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 0 F/Level 3/incar filter up' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 0 F/Level 4/g_assSTART_COOLANT_STEP0_TO_1 ' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 0 F/Level 4/incar filter down' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 0 F/Level 4/incar filter up' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 0 F/Level 5/g_assSTART_COOLANT_STEP0_TO_1 ' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 0 F/Level 5/incar filter down' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 0 F/Level 5/incar filter up' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 1 F/Level 0' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 1 F/Level 1' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 1 F/Level 2' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 1 F/Level 3' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 1 F/Level 4' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 1 F/Level 5' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 1 F/Level 0/2 way valve' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 1 F/Level 0/Dtg_rear' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 1 F/Level 0/Incar temp goto from step 1 to step 2 ' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 1 F/Level 0/RealTime_Timer' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 1 F/Level 0/Time goto from step 1 to step 2 ' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 1 F/Level 0/blower rear' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 1 F/Level 0/incar filter down' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 1 F/Level 0/incar filter up' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 1 F/Level 0/mode rear step 1' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 1 F/Level 1/2 way valve' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 1 F/Level 1/Dtg_rear' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 1 F/Level 1/Incar temp goto from step 1 to step 2 ' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 1 F/Level 1/RealTime_Timer' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 1 F/Level 1/Time goto from step 1 to step 2 ' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 1 F/Level 1/blower rear' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 1 F/Level 1/incar filter down' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 1 F/Level 1/incar filter up' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 1 F/Level 1/mode rear step 1' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 1 F/Level 2/2 way valve' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 1 F/Level 2/Dtg_rear' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 1 F/Level 2/Incar temp goto from step 1 to step 2 ' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 1 F/Level 2/RealTime_Timer' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 1 F/Level 2/Time goto from step 1 to step 2 ' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 1 F/Level 2/blower в зависимости от ECT' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 1 F/Level 2/g_assSTART_COOLANT_TO_STEP2 ' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 1 F/Level 2/incar filter down' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 1 F/Level 2/incar filter up' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 1 F/Level 2/mode rear step 1' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 1 F/Level 2/blower в зависимости от ECT/ECT min max' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 1 F/Level 2/blower в зависимости от ECT/blower start finish' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 1 F/Level 3/2 way valve' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 1 F/Level 3/Dtg_rear' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 1 F/Level 3/Incar temp goto from step 1 to step 2 ' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 1 F/Level 3/RealTime_Timer' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 1 F/Level 3/Time goto from step 1 to step 2 ' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 1 F/Level 3/blower в зависимости от ECT' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 1 F/Level 3/g_assSTART_COOLANT_TO_STEP2 ' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 1 F/Level 3/incar filter down' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 1 F/Level 3/incar filter up' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 1 F/Level 3/mode rear step 1' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 1 F/Level 3/blower в зависимости от ECT/ECT min max' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 1 F/Level 3/blower в зависимости от ECT/blower start finish' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 1 F/Level 4/2 way valve' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 1 F/Level 4/Dtg_rear' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 1 F/Level 4/Incar temp goto from step 1 to step 2 ' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 1 F/Level 4/RealTime_Timer' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 1 F/Level 4/Time goto from step 1 to step 2 ' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 1 F/Level 4/blower в зависимости от ECT' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 1 F/Level 4/incar filter down' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 1 F/Level 4/incar filter up' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 1 F/Level 4/mode rear step 1' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 1 F/Level 4/blower в зависимости от ECT/ECT min max' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 1 F/Level 4/blower в зависимости от ECT/blower start finish' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 1 F/Level 5/2 way valve' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 1 F/Level 5/Dtg_rear' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 1 F/Level 5/Incar temp goto from step 1 to step 2 ' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 1 F/Level 5/RealTime_Timer' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 1 F/Level 5/Time goto from step 1 to step 2 ' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 1 F/Level 5/blower в зависимости от ECT' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 1 F/Level 5/incar filter down' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 1 F/Level 5/incar filter up' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 1 F/Level 5/mode rear step 1' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 1 F/Level 5/blower в зависимости от ECT/ECT min max' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 1 F/Level 5/blower в зависимости от ECT/blower start finish' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 F/Level 0' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 F/Level 1' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 F/Level 2' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 F/Level 3' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 F/Level 4' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 F/Level 5' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 F/Level 0/2 way valve' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 F/Level 0/DTG Rear, стремящийся к AUTO' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 F/Level 0/RealTime_Timer' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 F/Level 0/Time goto from step 1 to step 2 ' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 F/Level 0/blower, стремящийся к AUTO' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 F/Level 0/incar filter down' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 F/Level 0/incar filter up' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 F/Level 0/mode, стремящийся к AUTO' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 F/Level 0/DTG Rear, стремящийся к AUTO/Almost equal' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 F/Level 0/DTG Rear, стремящийся к AUTO/Calculate delta time' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 F/Level 0/DTG Rear, стремящийся к AUTO/step' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 F/Level 0/DTG Rear, стремящийся к AUTO/time for step' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 F/Level 0/DTG Rear, стремящийся к AUTO/знак для изменения (+//-)' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 F/Level 0/blower, стремящийся к AUTO/Almost equal' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 F/Level 0/blower, стремящийся к AUTO/Calculate delta time' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 F/Level 0/blower, стремящийся к AUTO/blower step' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 F/Level 0/blower, стремящийся к AUTO/blower time for step' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 F/Level 0/blower, стремящийся к AUTO/знак для изменения (+//-)' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 F/Level 0/mode, стремящийся к AUTO/Almost equal' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 F/Level 0/mode, стремящийся к AUTO/Calculate delta time' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 F/Level 0/mode, стремящийся к AUTO/step' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 F/Level 0/mode, стремящийся к AUTO/time for step' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 F/Level 0/mode, стремящийся к AUTO/знак для изменения (+//-)' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 F/Level 1/2 way valve' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 F/Level 1/DTG Rear, стремящийся к AUTO' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 F/Level 1/RealTime_Timer' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 F/Level 1/Time goto from step 1 to step 2 ' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 F/Level 1/blower, стремящийся к AUTO' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 F/Level 1/incar filter down' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 F/Level 1/incar filter up' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 F/Level 1/mode, стремящийся к AUTO' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 F/Level 1/DTG Rear, стремящийся к AUTO/Almost equal' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 F/Level 1/DTG Rear, стремящийся к AUTO/Calculate delta time' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 F/Level 1/DTG Rear, стремящийся к AUTO/step' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 F/Level 1/DTG Rear, стремящийся к AUTO/time for step' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 F/Level 1/DTG Rear, стремящийся к AUTO/знак для изменения (+//-)' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 F/Level 1/blower, стремящийся к AUTO/Almost equal' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 F/Level 1/blower, стремящийся к AUTO/Calculate delta time' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 F/Level 1/blower, стремящийся к AUTO/blower step' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 F/Level 1/blower, стремящийся к AUTO/blower time for step' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 F/Level 1/blower, стремящийся к AUTO/знак для изменения (+//-)' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 F/Level 1/mode, стремящийся к AUTO/Almost equal' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 F/Level 1/mode, стремящийся к AUTO/Calculate delta time' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 F/Level 1/mode, стремящийся к AUTO/step' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 F/Level 1/mode, стремящийся к AUTO/time for step' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 F/Level 1/mode, стремящийся к AUTO/знак для изменения (+//-)' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 F/Level 2/2 way valve' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 F/Level 2/DTG Rear, стремящийся к AUTO' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 F/Level 2/RealTime_Timer' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 F/Level 2/Time goto from step 1 to step 2 ' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 F/Level 2/blower, стремящийся к AUTO' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 F/Level 2/incar filter down' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 F/Level 2/incar filter up' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 F/Level 2/mode, стремящийся к AUTO' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 F/Level 2/DTG Rear, стремящийся к AUTO/Almost equal' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 F/Level 2/DTG Rear, стремящийся к AUTO/Calculate delta time' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 F/Level 2/DTG Rear, стремящийся к AUTO/step' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 F/Level 2/DTG Rear, стремящийся к AUTO/time for step' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 F/Level 2/DTG Rear, стремящийся к AUTO/знак для изменения (+//-)' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 F/Level 2/blower, стремящийся к AUTO/Almost equal' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 F/Level 2/blower, стремящийся к AUTO/Calculate delta time' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 F/Level 2/blower, стремящийся к AUTO/blower step' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 F/Level 2/blower, стремящийся к AUTO/blower time for step' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 F/Level 2/blower, стремящийся к AUTO/знак для изменения (+//-)' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 F/Level 2/mode, стремящийся к AUTO/Almost equal' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 F/Level 2/mode, стремящийся к AUTO/Calculate delta time' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 F/Level 2/mode, стремящийся к AUTO/step' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 F/Level 2/mode, стремящийся к AUTO/time for step' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 F/Level 2/mode, стремящийся к AUTO/знак для изменения (+//-)' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 F/Level 3/2 way valve' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 F/Level 3/DTG Rear, стремящийся к AUTO' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 F/Level 3/RealTime_Timer' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 F/Level 3/Time goto from step 1 to step 2 ' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 F/Level 3/blower, стремящийся к AUTO' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 F/Level 3/incar filter down' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 F/Level 3/incar filter up' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 F/Level 3/mode, стремящийся к AUTO' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 F/Level 3/DTG Rear, стремящийся к AUTO/Almost equal' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 F/Level 3/DTG Rear, стремящийся к AUTO/Calculate delta time' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 F/Level 3/DTG Rear, стремящийся к AUTO/step' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 F/Level 3/DTG Rear, стремящийся к AUTO/time for step' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 F/Level 3/DTG Rear, стремящийся к AUTO/знак для изменения (+//-)' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 F/Level 3/blower, стремящийся к AUTO/Almost equal' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 F/Level 3/blower, стремящийся к AUTO/Calculate delta time' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 F/Level 3/blower, стремящийся к AUTO/blower step' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 F/Level 3/blower, стремящийся к AUTO/blower time for step' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 F/Level 3/blower, стремящийся к AUTO/знак для изменения (+//-)' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 F/Level 3/mode, стремящийся к AUTO/Almost equal' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 F/Level 3/mode, стремящийся к AUTO/Calculate delta time' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 F/Level 3/mode, стремящийся к AUTO/step' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 F/Level 3/mode, стремящийся к AUTO/time for step' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 F/Level 3/mode, стремящийся к AUTO/знак для изменения (+//-)' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 F/Level 4/2 way valve' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 F/Level 4/DTG Rear, стремящийся к AUTO' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 F/Level 4/RealTime_Timer' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 F/Level 4/Time goto from step 1 to step 2 ' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 F/Level 4/blower, стремящийся к AUTO' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 F/Level 4/incar filter down' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 F/Level 4/incar filter up' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 F/Level 4/mode, стремящийся к AUTO' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 F/Level 4/DTG Rear, стремящийся к AUTO/Almost equal' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 F/Level 4/DTG Rear, стремящийся к AUTO/Calculate delta time' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 F/Level 4/DTG Rear, стремящийся к AUTO/step' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 F/Level 4/DTG Rear, стремящийся к AUTO/time for step' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 F/Level 4/DTG Rear, стремящийся к AUTO/знак для изменения (+//-)' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 F/Level 4/blower, стремящийся к AUTO/Almost equal' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 F/Level 4/blower, стремящийся к AUTO/Calculate delta time' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 F/Level 4/blower, стремящийся к AUTO/blower step' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 F/Level 4/blower, стремящийся к AUTO/blower time for step' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 F/Level 4/blower, стремящийся к AUTO/знак для изменения (+//-)' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 F/Level 4/mode, стремящийся к AUTO/Almost equal' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 F/Level 4/mode, стремящийся к AUTO/Calculate delta time' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 F/Level 4/mode, стремящийся к AUTO/step' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 F/Level 4/mode, стремящийся к AUTO/time for step' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 F/Level 4/mode, стремящийся к AUTO/знак для изменения (+//-)' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 F/Level 5/2 way valve' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 F/Level 5/DTG Rear, стремящийся к AUTO' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 F/Level 5/RealTime_Timer' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 F/Level 5/Time goto from step 1 to step 2 ' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 F/Level 5/blower, стремящийся к AUTO' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 F/Level 5/incar filter down' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 F/Level 5/incar filter up' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 F/Level 5/mode, стремящийся к AUTO' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 F/Level 5/DTG Rear, стремящийся к AUTO/Almost equal' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 F/Level 5/DTG Rear, стремящийся к AUTO/Calculate delta time' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 F/Level 5/DTG Rear, стремящийся к AUTO/step' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 F/Level 5/DTG Rear, стремящийся к AUTO/time for step' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 F/Level 5/DTG Rear, стремящийся к AUTO/знак для изменения (+//-)' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 F/Level 5/blower, стремящийся к AUTO/Almost equal' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 F/Level 5/blower, стремящийся к AUTO/Calculate delta time' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 F/Level 5/blower, стремящийся к AUTO/blower step' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 F/Level 5/blower, стремящийся к AUTO/blower time for step' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 F/Level 5/blower, стремящийся к AUTO/знак для изменения (+//-)' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 F/Level 5/mode, стремящийся к AUTO/Almost equal' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 F/Level 5/mode, стремящийся к AUTO/Calculate delta time' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 F/Level 5/mode, стремящийся к AUTO/step' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 F/Level 5/mode, стремящийся к AUTO/time for step' - * '' : 'HVAC_model/Start control/Start Control Rear/Step 2 F/Level 5/mode, стремящийся к AUTO/знак для изменения (+//-)' + * '' : '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/знак для изменения (+//-)' */ #endif /* HVAC_model_h_ */ diff --git a/HVAC_model_data.c b/HVAC_model_data.c index 97e620c..da3d99a 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.760 + * Model version : 1.784 * Simulink Coder version : 24.1 (R2024a) 19-Nov-2023 - * C/C++ source code generated on : Fri Apr 3 18:15:49 2026 + * C/C++ source code generated on : Tue Apr 14 14:42:16 2026 * * Target selection: ert.tlc * Embedded hardware selection: ARM Compatible->ARM Cortex-M @@ -479,11 +479,6 @@ const ConstP rtConstP = { */ { 5U, 12U }, - /* Computed Parameter: ACT2_Value - * Referenced by: '/ACT2' - */ - { 5000, 1, 1195, 1315, 1300, 1485, 1440, 1195, 1175 }, - /* Computed Parameter: uDLookupTable_tableData_h * Referenced by: '/1-D Lookup Table' */ @@ -599,7 +594,7 @@ 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 }, diff --git a/HVAC_model_private.h b/HVAC_model_private.h index 9a266d6..2adbb67 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.760 + * Model version : 1.784 * Simulink Coder version : 24.1 (R2024a) 19-Nov-2023 - * C/C++ source code generated on : Fri Apr 3 18:15:49 2026 + * C/C++ source code generated on : Tue Apr 14 14:42:16 2026 * * Target selection: ert.tlc * Embedded hardware selection: ARM Compatible->ARM Cortex-M @@ -108,17 +108,14 @@ extern void g_aucFLOW_AFSM_FOOT_VALVE_MAX_f(uint8_t rtu_LVL, uint8_t extern void Afoot_Summer(int16_t rtu_Amb_Fb, uint8_t rtu_LVL, uint16_t rty_Out1 [9], uint8_t rtu_setTempFL, uint8_t rtu_setTempFR); extern void left(uint8_t rtu_idx, uint16_t rty_vals[9]); -extern void StopMode(int8_t rtu_stepIn, int8_t *rty_step, const uint8_t - *rtd_Busy_private_a, uint8_t rtd_COM_private_h[9], const - uint8_t *rtd_Error_Connect_private_f, uint8_t - rtd_MODE_private_a[9]); -extern void g_assSTART_ENTER_INCAR_a(uint8_t rtu_LVL, int16_t *rty_out); -extern void Level3(int8_t *rty_step1, const uint16_t *rtd_ECT, const uint8_t +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 *rtd_LEVEL, const double *rtd_MODE_DRIVER); extern void Level0(int8_t *rty_step); extern void incarfilterdown(uint8_t rtu_LVL, uint8_t *rty_out); extern void incarfilterup(uint8_t rtu_LVL, uint8_t *rty_out); -extern void g_assSTART_COOLANT_STEP0_TO_1_k(uint8_t rtu_LVL, int16_t *rty_out); +extern void g_assSTART_COOLANT_STEP0_TO_1_h(uint8_t rtu_LVL, int16_t *rty_out); extern void uwayvalvestatus(uint8_t rtu_LVL, uint8_t *rty_out); extern void Dtg_FrontLower_X(uint8_t rtu_LVL, uint8_t *rty_out); extern void Dtg_FrontUpper_X(uint8_t rtu_LVL, uint8_t *rty_out); @@ -129,50 +126,49 @@ extern void windowheating(uint8_t rtu_LVL, uint8_t *rty_out); extern void Timegotofromstep1tostep2(uint8_t rtu_LVL, int16_t *rty_out); extern void ECTminmax(uint8_t rtu_LVL, int16_t rty_out[2]); extern void blowerminmax(uint8_t rtu_LVL, uint16_t rty_out[2]); -extern void Level4(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, uint8_t *rtd_Dtg_FUR, const uint16_t - *rtd_ECT, uint8_t *rtd_El_window_heating, const int16_t - *rtd_Incar_FL, uint8_t *rtd_Incar_filter_down_value, uint8_t * - rtd_Incar_filter_up_value, const uint8_t *rtd_LEVEL, uint8_t * - rtd_Mode_FL, uint8_t *rtd_Mode_FR, double *rtd_Recirculation, - uint8_t *rtd_Valve_3_way, const int8_t - *rtd_step_start_controle_front, const uint32_t *rtd_t_now, - DW_Level4 *localDW); -extern void uwayvalvestatus_m(uint8_t rtu_LVL, uint8_t *rty_out); +extern 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, uint8_t *rtd_Dtg_FUR, const uint16_t * + rtd_ECT, uint8_t *rtd_El_window_heating, const int16_t + *rtd_Incar_FL, uint8_t *rtd_Incar_filter_down_value, + uint8_t *rtd_Incar_filter_up_value, const uint8_t + *rtd_LEVEL, uint8_t *rtd_Mode_FL, uint8_t *rtd_Mode_FR, + double *rtd_Recirculation, uint8_t *rtd_Valve_3_way, const + int8_t *rtd_step_start_controle_front, const uint32_t + *rtd_t_now, DW_Level4_n *localDW); +extern void uwayvalvestatus_a(uint8_t rtu_LVL, uint8_t *rty_out); extern void timeforstep(uint8_t rtu_LVL, uint8_t *rty_out); -extern void timeforstep_a(uint8_t rtu_LVL, uint8_t *rty_out); +extern void timeforstep_j(uint8_t rtu_LVL, uint8_t *rty_out); extern void Timegotofromstep2tostep3(uint8_t rtu_LVL, int16_t *rty_out); extern void blowerstep(uint8_t rtu_LVL, uint16_t *rty_out); extern void blowertimeforstep(uint8_t rtu_LVL, uint16_t *rty_out); -extern void step_l(uint8_t rtu_LVL, uint8_t *rty_out); -extern void timeforstep_f(uint8_t rtu_LVL, uint8_t *rty_out); +extern void step_j(uint8_t rtu_LVL, uint8_t *rty_out); +extern void timeforstep_g(uint8_t rtu_LVL, uint8_t *rty_out); extern void windowheating_k(uint8_t rtu_LVL, uint8_t *rty_out); extern void autodemistautodefog(uint8_t rtu_LVL, uint8_t *rty_out); -extern void Level3_d(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, uint8_t *rtd_Dtg_FLL, uint8_t - *rtd_Dtg_FLR, uint8_t *rtd_Dtg_FUL, uint8_t *rtd_Dtg_FUR, - const uint8_t *rtd_Dtg_logic_FLL, const uint8_t - *rtd_Dtg_logic_FUL, uint8_t *rtd_El_window_heating, const - bool *rtd_HI_logic_on, uint8_t *rtd_Incar_filter_down_value, - uint8_t *rtd_Incar_filter_up_value, const uint8_t - *rtd_LEVEL, uint8_t *rtd_Mode_FL, uint8_t *rtd_Mode_FR, - const uint8_t *rtd_Mode_logic_FL, double *rtd_Recirculation, - uint8_t *rtd_Valve_3_way, const int8_t - *rtd_step_start_controle_front, const uint32_t *rtd_t_now, - DW_Level3_h *localDW); -extern void Step3(int8_t *rty_step, int8_t *rtd_start_control_finished_front); -extern void g_ausSTART_ENTER_SETTEMP_p(uint8_t rtu_LVL, int16_t *rty_out); -extern void g_assSTART_ENTER_INCAR_l(uint8_t rtu_LVL, int16_t *rty_out); -extern void g_assSTART_ENTER_COOLANT_i(uint8_t rtu_LVL, int16_t *rty_out); -extern void Level4_i(int8_t *rty_step1, const uint16_t *rtd_ECT, const int16_t +extern 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, uint8_t *rtd_Dtg_FLL, uint8_t + *rtd_Dtg_FLR, uint8_t *rtd_Dtg_FUL, uint8_t *rtd_Dtg_FUR, + const uint8_t *rtd_Dtg_logic_FLL, const uint8_t + *rtd_Dtg_logic_FUL, uint8_t *rtd_El_window_heating, const + bool *rtd_HI_logic_on, uint8_t *rtd_Incar_filter_down_value, + uint8_t *rtd_Incar_filter_up_value, const uint8_t *rtd_LEVEL, + uint8_t *rtd_Mode_FL, uint8_t *rtd_Mode_FR, const uint8_t + *rtd_Mode_logic_FL, double *rtd_Recirculation, uint8_t + *rtd_Valve_3_way, const int8_t *rtd_step_start_controle_front, + const uint32_t *rtd_t_now, DW_Level3 *localDW); +extern void Step3F(int8_t *rty_step, int8_t *rtd_start_control_finished_front); +extern void g_ausSTART_ENTER_SETTEMP_b(uint8_t rtu_LVL, int16_t *rty_out); +extern void g_assSTART_ENTER_INCAR_p(uint8_t rtu_LVL, int16_t *rty_out); +extern void g_assSTART_ENTER_COOLANT_e(uint8_t rtu_LVL, int16_t *rty_out); +extern 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); -extern void incarfilterdown_j(uint8_t rtu_LVL, uint8_t *rty_out); -extern void incarfilterup_d(uint8_t rtu_LVL, uint8_t *rty_out); -extern void g_assSTART_COOLANT_STEP0_TO_1_g(uint8_t rtu_LVL, int16_t *rty_out); -extern void Level4_h(int8_t *rty_step1, uint16_t *rtd_Blower_RL, uint16_t +extern void incarfilterdown_c(uint8_t rtu_LVL, uint8_t *rty_out); +extern void incarfilterup_i(uint8_t rtu_LVL, uint8_t *rty_out); +extern void g_assSTART_COOLANT_STEP0_TO_1_e(uint8_t rtu_LVL, int16_t *rty_out); +extern 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 uint16_t *rtd_ECT, uint8_t *rtd_Incar_filter_down_value, uint8_t @@ -181,10 +177,10 @@ extern void Level4_h(int8_t *rty_step1, uint16_t *rtd_Blower_RL, uint16_t *rtd_Valve_2_way, uint8_t *rtd_Valve_3_way); extern void uwayvalve(uint8_t rtu_LVL, uint8_t *rty_out); extern void Dtg_rear(uint8_t rtu_LVL, uint8_t *rty_out); -extern void Incartempgotofromstep1tostep2_b(uint8_t rtu_LVL, int16_t *rty_out); -extern void Timegotofromstep1tostep2_h(uint8_t rtu_LVL, int16_t *rty_out); +extern void Incartempgotofromstep1tostep2_j(uint8_t rtu_LVL, int16_t *rty_out); +extern void Timegotofromstep1tostep2_l(uint8_t rtu_LVL, int16_t *rty_out); extern void moderearstep1(uint8_t rtu_LVL, uint8_t *rty_out); -extern void Level0_h(int8_t *rty_step, uint16_t *rtd_Blower_RL, uint16_t +extern 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 *rtd_Incar_RR, uint8_t *rtd_Incar_filter_down_value, uint8_t @@ -192,9 +188,9 @@ extern void Level0_h(int8_t *rty_step, uint16_t *rtd_Blower_RL, uint16_t uint8_t *rtd_Mode_RL, uint8_t *rtd_Mode_RR, double *rtd_Recirculation, uint8_t *rtd_Valve_2_way, const int8_t * rtd_step_start_controle_rear, const uint32_t *rtd_t_now, - DW_Level0_p *localDW); + DW_Level0_c *localDW); extern void blowerstartfinish(uint8_t rtu_LVL, uint16_t rty_out[2]); -extern void ECTminmax_h(uint8_t rtu_LVL, int16_t rty_out[2]); +extern void ECTminmax_l(uint8_t rtu_LVL, int16_t rty_out[2]); extern 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, const int16_t *rtd_Incar_RR, @@ -203,32 +199,23 @@ extern void Level4_d(int8_t *rty_step, uint16_t *rtd_Blower_RL, uint16_t uint8_t *rtd_Mode_RL, uint8_t *rtd_Mode_RR, double *rtd_Recirculation, uint8_t *rtd_Valve_2_way, const int8_t * rtd_step_start_controle_rear, const uint32_t *rtd_t_now, - DW_Level4_m *localDW); -extern void timeforstep_fu(uint8_t rtu_LVL, uint8_t *rty_out); -extern void blowerstep_j(uint8_t rtu_LVL, uint16_t *rty_out); -extern void blowertimeforstep_a(uint8_t rtu_LVL, uint16_t *rty_out); -extern void step_c(uint8_t rtu_LVL, uint8_t *rty_out); + DW_Level4_a *localDW); +extern void timeforstep_jn(uint8_t rtu_LVL, uint8_t *rty_out); +extern void blowerstep_d(uint8_t rtu_LVL, uint16_t *rty_out); +extern void blowertimeforstep_l(uint8_t rtu_LVL, uint16_t *rty_out); +extern void step_a(uint8_t rtu_LVL, uint8_t *rty_out); extern void timeforstep_h(uint8_t rtu_LVL, uint8_t *rty_out); -extern void Level0_j(int8_t *rty_step, uint16_t *rtd_Blower_RL, uint16_t +extern 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 *rtd_Dtg_RR, const uint8_t - *rtd_Dtg_logic_RR, uint8_t *rtd_Incar_filter_down_value, - uint8_t *rtd_Incar_filter_up_value, const uint8_t - *rtd_LEVEL, uint8_t *rtd_Mode_RL, uint8_t *rtd_Mode_RR, - const uint8_t *rtd_Mode_logic_RR, double *rtd_Recirculation, - uint8_t *rtd_Valve_2_way, const int8_t + *rtd_Dtg_logic_RR, const bool *rtd_HI_logic_on, uint8_t + *rtd_Incar_filter_down_value, uint8_t + *rtd_Incar_filter_up_value, const uint8_t *rtd_LEVEL, + uint8_t *rtd_Mode_RL, uint8_t *rtd_Mode_RR, const uint8_t + *rtd_Mode_logic_RR, double *rtd_Recirculation, uint8_t + *rtd_Valve_2_way, const int8_t *rtd_step_start_controle_rear, const uint32_t *rtd_t_now, - DW_Level0_n *localDW); -extern void Level2(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 *rtd_Dtg_RR, const uint8_t - *rtd_Dtg_logic_RR, const bool *rtd_HI_logic_on, uint8_t - *rtd_Incar_filter_down_value, uint8_t - *rtd_Incar_filter_up_value, const uint8_t *rtd_LEVEL, uint8_t - *rtd_Mode_RL, uint8_t *rtd_Mode_RR, const uint8_t - *rtd_Mode_logic_RR, double *rtd_Recirculation, uint8_t - *rtd_Valve_2_way, const int8_t *rtd_step_start_controle_rear, - const uint32_t *rtd_t_now, DW_Level2 *localDW); + DW_Level3_n *localDW); #endif /* HVAC_model_private_h_ */ diff --git a/HVAC_model_types.h b/HVAC_model_types.h index 08a7baf..8cb6631 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.760 + * Model version : 1.784 * Simulink Coder version : 24.1 (R2024a) 19-Nov-2023 - * C/C++ source code generated on : Fri Apr 3 18:15:49 2026 + * C/C++ source code generated on : Tue Apr 14 14:42:16 2026 * * Target selection: ert.tlc * Embedded hardware selection: ARM Compatible->ARM Cortex-M @@ -174,6 +174,25 @@ typedef struct { #endif +#ifndef DEFINED_TYPEDEF_FOR_ActuatorCmdBusInput_ +#define DEFINED_TYPEDEF_FOR_ActuatorCmdBusInput_ + +typedef struct { + int16_t in_CPOS_ALL[9]; + int8_t in_Act_Emrf_Slave[9]; + int8_t in_Mode_Slave[9]; + int8_t in_Act_Err1_Supply[9]; + int8_t in_Act_Err2_Communication[9]; + int8_t in_Act_Err3_Temperature[9]; + int8_t in_Act_Err4_Permanent_Electrical[9]; + int8_t in_Act_Stall_Slave[9]; + int8_t in_Act_Reset[9]; + uint8_t Busy; + uint8_t Error_Connect; +} ActuatorCmdBusInput; + +#endif + #ifndef DEFINED_TYPEDEF_FOR_CmdBusStatus_ #define DEFINED_TYPEDEF_FOR_CmdBusStatus_ @@ -232,25 +251,6 @@ typedef struct { #endif -#ifndef DEFINED_TYPEDEF_FOR_ActuatorCmdBusInput_ -#define DEFINED_TYPEDEF_FOR_ActuatorCmdBusInput_ - -typedef struct { - int16_t in_CPOS_ALL[9]; - int8_t in_Act_Emrf_Slave[9]; - int8_t in_Mode_Slave[9]; - int8_t in_Act_Err1_Supply[9]; - int8_t in_Act_Err2_Communication[9]; - int8_t in_Act_Err3_Temperature[9]; - int8_t in_Act_Err4_Permanent_Electrical[9]; - int8_t in_Act_Stall_Slave[9]; - int8_t in_Act_Reset[9]; - uint8_t Busy; - uint8_t Error_Connect; -} ActuatorCmdBusInput; - -#endif - #ifndef DEFINED_TYPEDEF_FOR_CmdBusPWMGet_ #define DEFINED_TYPEDEF_FOR_CmdBusPWMGet_ diff --git a/Model_Task.c b/Model_Task.c index d84ddf3..85899fa 100644 --- a/Model_Task.c +++ b/Model_Task.c @@ -39,11 +39,11 @@ static bool setActuatorBusy(tModelTask *env) { memcpy(&env->triggerActuatorCmdBus_1, &Actuator_Ch0_Command_Model, sizeof(ActuatorCmdBus)); - rtDW.Actuator_Ch0_Status_Model.Busy = 1; + Actuator_Ch0_Status_Model.Busy = 1; return true; } } - +/* for (uint8_t i = 0; i < env->linTaskActuator2->LIN_ISSR_ALL; ++i) { if (Actuator_Ch1_Command_Model.COM[i] != 0) { @@ -51,7 +51,7 @@ static bool setActuatorBusy(tModelTask *env) { memcpy(&env->triggerActuatorCmdBus_2, &Actuator_Ch1_Command_Model, sizeof(ActuatorCmdBus)); - rtDW.Actuator_Ch1_Status_Model.Busy = 1; + Actuator_Ch1_Status_Model.Busy = 1; return true; } } @@ -63,11 +63,11 @@ static bool setActuatorBusy(tModelTask *env) { memcpy(&env->triggerActuatorCmdBus_3, &Actuator_Ch2_Command_Model, sizeof(ActuatorCmdBus)); - rtDW.Actuator_Ch2_Status_Model.Busy = 1; + Actuator_Ch2_Status_Model.Busy = 1; return true; } } - +*/ return false; }