Emergency_Stop_Mode_Func.part.0 () { [local count: 1073741824]: [local count: 1073741824]: # DEBUG BEGIN_STMT GV_Out_Lamp_BRAKE_CMD = 0; # DEBUG BEGIN_STMT GV_Out_Lamp_Hazard_CMD = 0; # DEBUG BEGIN_STMT GV_VCU_RC_Emergency_Stop = 0; # DEBUG BEGIN_STMT GV_VCU_ACU_Emergency_Stop = 0; # DEBUG BEGIN_STMT GV_VCU_Drive_Mode = 3; [local count: 1073741824]: return; } Operation_Mode_Func () { unsigned char GV_Operation_Mode.52_1; [local count: 1073741824]: # DEBUG BEGIN_STMT Operation_IDB_RWA (); # DEBUG BEGIN_STMT Vehicle_Environment (); # DEBUG BEGIN_STMT Operation_Mode_Check (); # DEBUG BEGIN_STMT GV_Operation_Mode.52_1 = GV_Operation_Mode; if (GV_Operation_Mode.52_1 == 0) goto ; [33.00%] else goto ; [67.00%] [local count: 354334802]: # DEBUG BEGIN_STMT Autonomous_Mode_Func (); goto ; [100.00%] [local count: 719407023]: # DEBUG BEGIN_STMT if (GV_Operation_Mode.52_1 == 1) goto ; [20.24%] else goto ; [79.76%] [local count: 145607981]: # DEBUG BEGIN_STMT Mannual_Mode_Func (); goto ; [100.00%] [local count: 573799041]: # DEBUG BEGIN_STMT if (GV_Operation_Mode.52_1 == 2) goto ; [20.24%] else goto ; [79.76%] [local count: 116136926]: # DEBUG BEGIN_STMT Emergency_Stop_Mode_Func (); goto ; [100.00%] [local count: 457662114]: # DEBUG BEGIN_STMT if (GV_Operation_Mode.52_1 == 3) goto ; [20.24%] else goto ; [79.76%] [local count: 92630812]: # DEBUG BEGIN_STMT Default_Mode_Func (); [local count: 1073741824]: return; } Vehicle_Environment () { [local count: 1073741824]: # DEBUG BEGIN_STMT GV_Env_384_EnvironmentTemperature = 0; # DEBUG BEGIN_STMT GV_Env_384_EnvironmentTemperatureValid = 0; # DEBUG BEGIN_STMT GV_Env_384_TimestampDay = 21; # DEBUG BEGIN_STMT GV_Env_384_TimestampHour = 0; # DEBUG BEGIN_STMT GV_Env_384_TimestampMinute = 0; # DEBUG BEGIN_STMT GV_Env_384_TimestampMonth = 6; # DEBUG BEGIN_STMT GV_Env_384_TimestampSecond = 0; # DEBUG BEGIN_STMT GV_Env_384_TimestampYear = 24; # DEBUG BEGIN_STMT # DEBUG BEGIN_STMT # DEBUG BEGIN_STMT # DEBUG BEGIN_STMT # DEBUG BEGIN_STMT # DEBUG BEGIN_STMT # DEBUG BEGIN_STMT # DEBUG BEGIN_STMT return; } Operation_IDB_RWA () { float GV_VCU_TrqCmd.49_1; long unsigned int _2; long unsigned int GV_VCU_GearSelStat.50_3; [local count: 1073741824]: # DEBUG BEGIN_STMT GV_VCU_TrqCmd.49_1 = GV_VCU_TrqCmd; _2 = (long unsigned int) GV_VCU_TrqCmd.49_1; GV_DriveTorqueCommand = _2; # DEBUG BEGIN_STMT GV_DriveTorqueCommandValid = 1; # DEBUG BEGIN_STMT GV_PowertrainMode = 1; # DEBUG BEGIN_STMT GV_VCU_GearSelStat.50_3 = GV_VCU_GearSelStat; GV_GearPosition = GV_VCU_GearSelStat.50_3; # DEBUG BEGIN_STMT GV_RCU_PowertrainMode = 1; # DEBUG BEGIN_STMT GV_RCU_GearPosition = GV_VCU_GearSelStat.50_3; # DEBUG BEGIN_STMT GV_IDB_032_WakeUpCommand = 1; # DEBUG BEGIN_STMT GV_RCU_033_WakeUpCommand = 1; # DEBUG BEGIN_STMT GV_RWA_040_RackAngleCmdValid = 1; # DEBUG BEGIN_STMT GV_RWA2_040_RackAngleCmdValid = 1; # DEBUG BEGIN_STMT GV_RWA_310_ModeCommand = 1; # DEBUG BEGIN_STMT GV_RWA_310_WakeupCommand = 1; # DEBUG BEGIN_STMT GV_RWA2_310_ModeCommand = 0; # DEBUG BEGIN_STMT GV_RWA2_310_WakeupCommand = 0; # DEBUG BEGIN_STMT GV_RWS1_040_RackAngleCmdValid = 1; # DEBUG BEGIN_STMT GV_RWS1_310_WakeupCommand = 1; # DEBUG BEGIN_STMT GV_RWS1_310_ModeCommand = 1; # DEBUG BEGIN_STMT GV_RWS2_040_RackAngleCmdValid = 1; # DEBUG BEGIN_STMT GV_RWS2_310_WakeupCommand = 0; # DEBUG BEGIN_STMT GV_RWS2_310_ModeCommand = 0; return; } Emergency_Stop_Mode_Func () { short unsigned int EMEMERGNECY_BUTTEN.45_1; long unsigned int GV_RC_Emergency_Stop.46_2; long unsigned int GV_ACU_Emergency_Stop.47_3; long unsigned int GV_RC_ALV_FLAG.48_4; [local count: 1073741824]: # DEBUG BEGIN_STMT GV_Out_Lamp_BRAKE_CMD = 2; # DEBUG BEGIN_STMT GV_Out_Lamp_Hazard_CMD = 2; # DEBUG BEGIN_STMT GV_VCU_RC_Emergency_Stop = 1; # DEBUG BEGIN_STMT GV_VCU_ACU_Emergency_Stop = 1; # DEBUG BEGIN_STMT HV_OFF_FUNC (); # DEBUG BEGIN_STMT GV_VCU_TrqCmd = 0.0; # DEBUG BEGIN_STMT EMEMERGNECY_BUTTEN.45_1 = EMEMERGNECY_BUTTEN; if (EMEMERGNECY_BUTTEN.45_1 == 0) goto ; [50.00%] else goto ; [50.00%] [local count: 536870913]: GV_RC_Emergency_Stop.46_2 = GV_RC_Emergency_Stop; if (GV_RC_Emergency_Stop.46_2 == 0) goto ; [50.00%] else goto ; [50.00%] [local count: 268435456]: GV_ACU_Emergency_Stop.47_3 = GV_ACU_Emergency_Stop; if (GV_ACU_Emergency_Stop.47_3 == 0) goto ; [50.00%] else goto ; [50.00%] [local count: 134217728]: GV_RC_ALV_FLAG.48_4 = GV_RC_ALV_FLAG; if (GV_RC_ALV_FLAG.48_4 == 0) goto ; [50.00%] else goto ; [50.00%] [local count: 67108864]: Emergency_Stop_Mode_Func.part.0 (); [local count: 1073741824]: return; } Mannual_Mode_Func () { float GV_RC_RWA_RackAngleCommand.31_1; double _2; long unsigned int GV_Tunning_Slewrate.32_3; double _4; float GV_VCU_Vx_Fbk.33_5; double _6; double _7; double _8; double _9; double _10; float _11; float GV_RWA1_RackAngleFbk.38_12; float GV_SpeedGoat_BrakeTorqueCommand_master.39_13; float GV_RC_BrakeTorqueCommand_Master.41_14; long unsigned int GV_RC_GearSelStat.42_15; long unsigned int GV_RC_Emergency_Stop.43_16; long unsigned int GV_RC_VX_Limit.44_17; [local count: 1073741824]: # DEBUG BEGIN_STMT HV_ON_FUNC (); # DEBUG BEGIN_STMT GV_RC_RWA_RackAngleCommand.31_1 = GV_RC_RWA_RackAngleCommand; _2 = (double) GV_RC_RWA_RackAngleCommand.31_1; RateLimiter_U.Data_Input = _2; # DEBUG BEGIN_STMT GV_Tunning_Slewrate.32_3 = GV_Tunning_Slewrate; _4 = (double) GV_Tunning_Slewrate.32_3; GV_VCU_Vx_Fbk.33_5 = GV_VCU_Vx_Fbk; _6 = (double) GV_VCU_Vx_Fbk.33_5; _7 = _6 * 6.5e+0; _8 = _4 - _7; _9 = -_8; RateLimiter_U.Down_Slewrate = _9; # DEBUG BEGIN_STMT if (_9 > -1.4e+2) goto ; [50.00%] else goto ; [50.00%] [local count: 536870913]: # DEBUG BEGIN_STMT RateLimiter_U.Down_Slewrate = -1.4e+2; [local count: 1073741824]: # DEBUG BEGIN_STMT RateLimiter_U.Upper_Slewrate = _8; # DEBUG BEGIN_STMT if (_8 < 1.4e+2) goto ; [50.00%] else goto ; [50.00%] [local count: 536870913]: # DEBUG BEGIN_STMT RateLimiter_U.Upper_Slewrate = 1.4e+2; [local count: 1073741824]: # DEBUG BEGIN_STMT RateLimiter_step (); # DEBUG BEGIN_STMT _10 = RateLimiter_Y.Data_Output; _11 = (float) _10; GV_MASTER_RWA_RackAngleCommand = _11; # DEBUG BEGIN_STMT GV_RWA_040_RackAngleCmd = _11; # DEBUG BEGIN_STMT GV_RWA2_040_RackAngleCmd = _11; # DEBUG BEGIN_STMT GV_RWS1_040_RackAngleCmd = 0.0; # DEBUG BEGIN_STMT GV_RWS2_040_RackAngleCmd = 0.0; # DEBUG BEGIN_STMT Set_RC_VCU_Dynamics_logic (); # DEBUG BEGIN_STMT GV_RWA1_RackAngleFbk.38_12 = GV_RWA1_RackAngleFbk; GV_VCU_RWA_Rack_Fbk = GV_RWA1_RackAngleFbk.38_12; # DEBUG BEGIN_STMT BREAK_Speed (); # DEBUG BEGIN_STMT GV_SpeedGoat_BrakeTorqueCommand_master.39_13 = GV_SpeedGoat_BrakeTorqueCommand_master; if (GV_SpeedGoat_BrakeTorqueCommand_master.39_13 != 0.0) goto ; [50.00%] else goto ; [50.00%] [local count: 536870913]: # DEBUG BEGIN_STMT GV_BrakeTorqueCommand = GV_SpeedGoat_BrakeTorqueCommand_master.39_13; goto ; [100.00%] [local count: 536870913]: # DEBUG BEGIN_STMT GV_RC_BrakeTorqueCommand_Master.41_14 = GV_RC_BrakeTorqueCommand_Master; GV_BrakeTorqueCommand = GV_RC_BrakeTorqueCommand_Master.41_14; [local count: 1073741824]: # DEBUG BEGIN_STMT GV_RC_GearSelStat.42_15 = GV_RC_GearSelStat; GV_VCU_GearSelStat = GV_RC_GearSelStat.42_15; # DEBUG BEGIN_STMT GV_RC_Emergency_Stop.43_16 = GV_RC_Emergency_Stop; if (GV_RC_Emergency_Stop.43_16 != 1) goto ; [66.00%] else goto ; [34.00%] [local count: 708669605]: # DEBUG BEGIN_STMT GV_VCU_RC_Emergency_Stop = 0; [local count: 1073741824]: # DEBUG BEGIN_STMT GV_RC_VX_Limit.44_17 = GV_RC_VX_Limit; GV_VCU_Vx_Limit = GV_RC_VX_Limit.44_17; return; } Autonomous_Mode_Func () { float GV_ACU_RWA_cmd_deg.21_1; float GV_ACU_RWS_cmd_deg.23_2; long unsigned int GV_VCU_GearSelStat.25_3; long unsigned int GV_ACU_Emergency_Stop.27_4; long unsigned int GV_ACU_VCU_GearPos.28_5; float GV_Dynamics_BrakeTorqueCommand.29_6; float GV_ACU_BrakeTorqueCommand.30_7; float _8; [local count: 1073741824]: # DEBUG BEGIN_STMT HV_ON_FUNC (); # DEBUG BEGIN_STMT GV_ACU_RWA_cmd_deg.21_1 = GV_ACU_RWA_cmd_deg; GV_MASTER_RWA_RackAngleCommand = GV_ACU_RWA_cmd_deg.21_1; # DEBUG BEGIN_STMT GV_RWA_040_RackAngleCmd = GV_ACU_RWA_cmd_deg.21_1; # DEBUG BEGIN_STMT GV_ACU_RWS_cmd_deg.23_2 = GV_ACU_RWS_cmd_deg; GV_MASTER_RWS_RackAngleCommand = GV_ACU_RWS_cmd_deg.23_2; # DEBUG BEGIN_STMT GV_RWS1_040_RackAngleCmd = GV_ACU_RWS_cmd_deg.23_2; # DEBUG BEGIN_STMT GV_VCU_GearSelStat.25_3 = GV_VCU_GearSelStat; if (GV_VCU_GearSelStat.25_3 == 1) goto ; [20.24%] else goto ; [79.76%] [local count: 856416480]: if (GV_VCU_GearSelStat.25_3 == 3) goto ; [34.00%] else goto ; [66.00%] [local count: 508506948]: # DEBUG BEGIN_STMT Set_ACU_VCU_Dynamics_logic (); [local count: 1073741824]: # DEBUG BEGIN_STMT GV_ACU_Emergency_Stop.27_4 = GV_ACU_Emergency_Stop; if (GV_ACU_Emergency_Stop.27_4 != 1) goto ; [66.00%] else goto ; [34.00%] [local count: 708669605]: # DEBUG BEGIN_STMT GV_VCU_ACU_Emergency_Stop = 0; [local count: 1073741824]: # DEBUG BEGIN_STMT GV_ACU_VCU_GearPos.28_5 = GV_ACU_VCU_GearPos; GV_VCU_GearSelStat = GV_ACU_VCU_GearPos.28_5; # DEBUG BEGIN_STMT GV_Dynamics_BrakeTorqueCommand.29_6 = GV_Dynamics_BrakeTorqueCommand; GV_ACU_BrakeTorqueCommand.30_7 = GV_ACU_BrakeTorqueCommand; _8 = GV_Dynamics_BrakeTorqueCommand.29_6 + GV_ACU_BrakeTorqueCommand.30_7; GV_BrakeTorqueCommand = _8; return; } Default_Mode_Func () { short unsigned int EMEMERGNECY_BUTTEN.18_1; long unsigned int GV_RC_Emergency_Stop.19_2; long unsigned int GV_ACU_Emergency_Stop.20_3; [local count: 1073741824]: # DEBUG BEGIN_STMT GV_BrakeTorqueCommand = 0.0; # DEBUG BEGIN_STMT GV_VCU_TrqCmd = 0.0; # DEBUG BEGIN_STMT GV_MASTER_RWA_RackAngleCommand = 0.0; # DEBUG BEGIN_STMT GV_MASTER_RWS_RackAngleCommand = 0.0; # DEBUG BEGIN_STMT HV_OFF_FUNC (); # DEBUG BEGIN_STMT EMEMERGNECY_BUTTEN.18_1 = EMEMERGNECY_BUTTEN; if (EMEMERGNECY_BUTTEN.18_1 == 0) goto ; [50.00%] else goto ; [50.00%] [local count: 536870913]: GV_RC_Emergency_Stop.19_2 = GV_RC_Emergency_Stop; if (GV_RC_Emergency_Stop.19_2 == 0) goto ; [50.00%] else goto ; [50.00%] [local count: 268435456]: GV_ACU_Emergency_Stop.20_3 = GV_ACU_Emergency_Stop; if (GV_ACU_Emergency_Stop.20_3 == 0) goto ; [50.00%] else goto ; [50.00%] [local count: 134217728]: # DEBUG BEGIN_STMT GV_Out_Lamp_BRAKE_CMD = 0; # DEBUG BEGIN_STMT GV_Out_Lamp_Hazard_CMD = 0; # DEBUG BEGIN_STMT GV_RC_Lamp_Hazard_CMD = 0; # DEBUG BEGIN_STMT GV_RC_Lamp_BRAKE_CMD = 0; [local count: 1073741824]: # DEBUG BEGIN_STMT GV_VCU_RC_Emergency_Stop = 0; # DEBUG BEGIN_STMT GV_VCU_ACU_Emergency_Stop = 0; # DEBUG BEGIN_STMT GV_Out_Lamp_HBEAM_CMD = 0; # DEBUG BEGIN_STMT GV_Out_Lamp_Head_CMD = 0; # DEBUG BEGIN_STMT GV_Out_Lamp_LTRN_CMD = 0; # DEBUG BEGIN_STMT GV_Out_Lamp_Reverse_CMD = 0; # DEBUG BEGIN_STMT GV_Out_Lamp_RTRN_CMD = 0; # DEBUG BEGIN_STMT GV_Out_Lamp_Position_CMD = 0; # DEBUG BEGIN_STMT GV_Out_Lamp_DRL_CMD = 0; # DEBUG BEGIN_STMT GV_Out_Wiper_CMD = 0; return; } Operation_Mode_Check () { long unsigned int GV_RC_Emergency_Stop.0_1; short unsigned int EMEMERGNECY_BUTTEN.1_2; long unsigned int GV_ACU_Emergency_Stop.2_3; long unsigned int GV_ACU_Drive_mode.3_4; long unsigned int GV_VCU_Drive_Mode.4_5; long unsigned int GV_RC_Drive_Mode.5_6; long unsigned int GV_RC_Drive_Mode.6_7; long unsigned int GV_VCU_Drive_Mode.7_8; long unsigned int GV_VCU_Drive_Mode.10_9; long unsigned int GV_VCU_Drive_Mode.12_10; long unsigned int GV_VCU_Drive_Mode.16_11; unsigned char _12; unsigned char GV_Charging_Status_val.17_13; unsigned char _14; [local count: 1073741824]: # DEBUG BEGIN_STMT GV_RC_Emergency_Stop.0_1 = GV_RC_Emergency_Stop; if (GV_RC_Emergency_Stop.0_1 == 1) goto ; [34.00%] else goto ; [66.00%] [local count: 708669605]: EMEMERGNECY_BUTTEN.1_2 = EMEMERGNECY_BUTTEN; if (EMEMERGNECY_BUTTEN.1_2 == 1) goto ; [34.00%] else goto ; [66.00%] [local count: 467721939]: GV_ACU_Emergency_Stop.2_3 = GV_ACU_Emergency_Stop; if (GV_ACU_Emergency_Stop.2_3 == 1) goto ; [34.00%] else goto ; [66.00%] [local count: 765045346]: # DEBUG BEGIN_STMT GV_VCU_Drive_Mode = 2; goto ; [100.00%] [local count: 308696480]: # DEBUG BEGIN_STMT GV_ACU_Drive_mode.3_4 = GV_ACU_Drive_mode; if (GV_ACU_Drive_mode.3_4 == 1) goto ; [34.00%] else goto ; [66.00%] [local count: 104956803]: GV_VCU_Drive_Mode.4_5 = GV_VCU_Drive_Mode; if (GV_VCU_Drive_Mode.4_5 == 3) goto ; [34.00%] else goto ; [66.00%] [local count: 35685313]: GV_RC_Drive_Mode.5_6 = GV_RC_Drive_Mode; if (GV_RC_Drive_Mode.5_6 == 0) goto ; [50.00%] else goto ; [50.00%] [local count: 17842657]: # DEBUG BEGIN_STMT GV_VCU_Drive_Mode = 0; goto ; [100.00%] [local count: 290853823]: # DEBUG BEGIN_STMT GV_RC_Drive_Mode.6_7 = GV_RC_Drive_Mode; if (GV_RC_Drive_Mode.6_7 == 1) goto ; [34.00%] else goto ; [66.00%] [local count: 98890300]: GV_VCU_Drive_Mode.7_8 = GV_VCU_Drive_Mode; if (GV_VCU_Drive_Mode.7_8 == 3) goto ; [34.00%] else goto ; [66.00%] [local count: 33622702]: if (GV_ACU_Drive_mode.3_4 == 0) goto ; [50.00%] else goto ; [50.00%] [local count: 16811351]: # DEBUG BEGIN_STMT GV_VCU_Drive_Mode = 1; goto ; [100.00%] [local count: 274042472]: # DEBUG BEGIN_STMT if (GV_ACU_Drive_mode.3_4 == 0) goto ; [50.00%] else goto ; [50.00%] [local count: 137021236]: GV_VCU_Drive_Mode.10_9 = GV_VCU_Drive_Mode; if (GV_VCU_Drive_Mode.10_9 == 0) goto ; [50.00%] else goto ; [50.00%] [local count: 68510618]: # DEBUG BEGIN_STMT GV_VCU_Drive_Mode = 3; goto ; [100.00%] [local count: 205531854]: # DEBUG BEGIN_STMT if (GV_RC_Drive_Mode.6_7 == 0) goto ; [50.00%] else goto ; [50.00%] [local count: 102765927]: GV_VCU_Drive_Mode.12_10 = GV_VCU_Drive_Mode; if (GV_VCU_Drive_Mode.12_10 == 1) goto ; [34.00%] else goto ; [66.00%] [local count: 34940415]: # DEBUG BEGIN_STMT GV_VCU_Drive_Mode = 3; goto ; [100.00%] [local count: 170591439]: # DEBUG BEGIN_STMT if (GV_RC_Drive_Mode.6_7 == 1) goto ; [34.00%] else goto ; [66.00%] [local count: 58001089]: if (GV_ACU_Drive_mode.3_4 == 1) goto ; [34.00%] else goto ; [66.00%] [local count: 19720370]: if (GV_ACU_Emergency_Stop.2_3 == 0) goto ; [50.00%] else goto ; [50.00%] [local count: 9860185]: # DEBUG BEGIN_STMT GV_VCU_Drive_Mode = 1; [local count: 1073741824]: # DEBUG BEGIN_STMT GV_VCU_Drive_Mode.16_11 = GV_VCU_Drive_Mode; _12 = (unsigned char) GV_VCU_Drive_Mode.16_11; GV_Operation_Mode = _12; # DEBUG BEGIN_STMT GV_Charging_Status_val.17_13 = GV_Charging_Status_val; _14 = GV_Charging_Status_val.17_13 + 255; if (_14 <= 1) goto ; [41.00%] else goto ; [59.00%] [local count: 440234148]: # DEBUG BEGIN_STMT GV_Operation_Mode = 3; [local count: 1073741824]: return; }