Parallel Hybrid Vehicle Simulation

From OpenMBD
Revision as of 18:30, 31 May 2018 by Christopher Burhan (talk | contribs) (Assigning signal inputs)
Jump to: navigation, search

This page provides the steps on how to model a parallel hybrid vehicle, it has been documented in such a way that first time user can recreate the simulation from the beginning.
The reference result of this particular vehicle has been uploaded so that the user can compare their own simulation.

To learn more about how to create a simple model, go to ADVANCE Tutorial

Creating the model

All the component modules which are going to be used in this example can be downloaded from SIMarchitect Library.
The model is split into four different areas. Those are:

  • Test scenario (Driving cycle)
  • ECU
  • Plant model (Parallel Hybrid vehicle powertrain component)
  • Driver (Vehicle driver model)

Test Scenario

  • Insert the Test_scenario component to (ADVANCE) workspace, this component can be found under the Test Scenario in SIMarchitect library.

ECU

To create the ECU subsystem:

  • First insert an empty_area component to (ADVANCE) workspace, this component can be found under the modeling tools below TNO ADVANCE general library
  • Second, rename this empty_area componenent into ECU.
  • Third, delete the in and out ports inside the ECU subsystem as it is shown in the figure below.


empty_area


  • Fourth, insert the ECU module from the XXX library to the ECU subsytem and notice that the from tag is automatically connected to the bus connector of the output port of this empty_area. Notice that there is an extra port next to the from tag, double click the sub_connector and change the number of inputs into 1 to delete this extra port.
ECU area

Plant model

The components of parallel hybrid vehicle powertrain are:

  • Internal Combustion Engine
  • Clutch
  • Mechanical connection
  • Transmission
  • Final gear
  • Chassis
  • Battery
  • Electric machine
  • Electrical auxiliary system

To create the Plant_model subsystem:

  • First insert an empty_area component to (ADVANCE) workspace, this component can be found under the modeling tools below TNO ADVANCE general library
  • Second, rename this empty_area componenent into Plant_model.
  • Third, delete the in and out ports inside the Plant_model subsystem as it is shown in the empty_area figure above.
  • Fourth, insert the components described above to the Plant_model subsystem and order them as it is shown in the figure below.
  • Fifth, add an extra port in the sub_connector, this can be done by double clicking the sub_connector and change the number of input to 10.
  • Sixth, locate the from tag of Electric machine module and Electrical auxiliary system and copy-paste it in the workspace.
  • Seventh, insert two (2) Bus Selector(s) and connect it to each tag.
  • Eighth, double click the first bus selector and select Electric_machine_electrical_fb__output.phys_current_A under the Electric_machine_sensor
  • Ninth, double click the second bus selector and select Electrical_aux_electrical_fb_output.phys_current_A under the Electrical_aux_sensor from the Electrical auxiliary system tag.
  • Tenth, insert sum component to add the selected signals.
  • Finally, connect the sum component to the sub_connector and rename the signal as battery_current_input.


Plant model area

Driver

To create driver subsystem:

  • First insert an empty_area component to (ADVANCE) workspace, this component can be found under the modeling tools below TNO ADVANCE general library
  • Second, rename this empty_area componenent into Driver.
  • Third, delete the in and out ports inside the Driver subsystem as it is shown in the empty_area figure above.
  • Fourth, insert the vehicle driver manual from the library to the Driver subsystem.
Driver area.

Assigning signal inputs

The signal inputs for ECU_module inside the ECU subsystem are:

Input signal Retrieved from Located under Signal label
Accelerator pedal position Driver subsystem vehicle_driver_manual_module Drv_AccPedl_Rt
Brake pedal position Drv_BrkPedl_Rt
Drive cycle reference speed Drivecycle_RefSpeed_mps
Clutch pedal position Drv_CluPedl_Rt
Requested gear number Drv_nrGearReq
Plant model Actual engine speed Eng_nAct_radps Engine module sensor
Crankshaft torque Eng_tqCrkSftAct_Nm
Indicated torque Eng_tqindAct_Nm
Engine oil temperature Eng_tOilAct_K
Battery output current Batt_iAct_A Battery module sensor
Battery output voltage Batt_uAct_V
State of charge Batt_socAct_Rt
Battery temperature Batt_tAct_K
Clutch disengaged or not Clu_flgConnected_B Clutch module sensor
Electric machine output torque ElecMac_tqAct_Nm Electric machine module sensor
Electric machine output speed ElecMac_nAct_radps
Electric machine output current ElecMac_iAct_A
Electric machine output temperature ElecMac_tAct_K
Transmission output speed Transm_nOutAct_radps Transmission module sensor
Transmission gear number Transm_nrGearAct
Clutch lock Transm_flgConnected_B
Transmission input speed Transm_nInAct_radps
Vehicle velocity Chassis_vVehAct_mps Chassis module sensor
Wheel speed Chassis_nWheelAct_radps
Vehicle mass Chassis_massVehAct_kg
Road slope Chassis_slopeRoad_rad
Auxiliary system output current Aux_iAct_A Electrical auxiliary module sensor


The input signals for each component modules inside Plant_model subsystem are:

Module Input signal Signal label Retrieved from
Internal combustion engine Requested engine speed Eng_nReq_radps ECU module cmd
Switch Speed / torque control Eng_flgReqSwitch_B
Requested engine torque Eng_tqReq_Nm
Exhaust brake ON / OFF Eng_flgExhaustBrake_B
Engine ON / OFF Eng_flgonoff_B
Starter motor ON / OFF Eng_strtReq_B
Fuel cut off Eng_flgFuelCut_B
Engine rotational speed phys_speed_radps Clutch module mechanical fb output
Clutch Requested clutch pedal position Clu_ratReq_B ECU module cmd
Clutch torque input phys_torque_Nm ICE module mechanical output
Clutch inertia input phys_inertia_kgm2
Clutch rotational speed input phys_speed_radps Mechanical module connection mechanical fb output1
Mechanical Connection Mechanical connection torque input 1 phys_torque_Nm Clutch module mechanical output
Mechanical connection inertia input 1 phys_inertia_kgm2
Mechanical connection torque input 2 phys_torque_Nm Electric machine module mechanical output
Mechanical connection inertia input 2 phys_inertia_kgm2
Mechanical connection feedback input phys_speed_radps Transmission module mechanical fb output
Transmission Requested gear number Transm_nrGearReq ECU module cmd
Transmission torque input phys_torque_Nm Mechanical connection module mechanical output
Transmission inertia input phys_inertia_kgm2
Transmission rotational speed input phys_speed_radps Final gear module mechanical fb output
Final gear Final gear torque input phys_torque_Nm Transmission module mechanical output
Final gear inertia input phys_inertia_kgm2
Final gear rotational speed input phys_speed_radps Chassis module mechanical fb output
Chassis Requested chassis brake torque Chassis_tqBrake_Nm ECU module cmd
Chassis torque input phys_torque_Nm Final gear module mechanical output
Chassis inertia input phys_inertia_kgm2
Drivecycle slope Chassis_slopeRoad_rad Test scenario area
Battery Battery current input battery Plant model bus connector
Battery Actual cooling flow Batt_flowActCooling_kgps ECU module cmd
Electric machine Requested electric machine speed ElecMac_nReq_radps ECU module cmd
Switch speed / torque control ElecMac_flgReqSwitch_B
Requested electric machine torque ElecMac_tqReq_Nm
Electric machine actual cooling flow ElecMac_flowActCooling_kgps
Electric machine voltage input phys_voltage_V Battery module electrical output
Electric machine rotational speed input phys_speed_radps Mechanical connection module mechanical join output 2
Electrical auxiliary system Requested power Aux_pwrElecReq_W ECU module cmd
Voltage input phys_voltage_V Battery module electrical output


The input signals for Vehicle_driver_manual_module inside the Driver subsystem are:

Subsystem Input signal Signal label Retrieved from
Chassis module sensor Actual vehicle velocity Chassis_vVehAct_mps Chassis sensor
Transmission input speed Transm_nInAct_radps Transmission module sensor
Transmission actual gear number Transm_nrGearAct
Clutch disengaged or not Clu_flgConnected_B Clutch module
Driver manuakl module Accelerator pedal rate Drv_AccPedl_Rt Driver module
Drive cycle Drive cycle time and speed drivecycle_time_speed Test scenario area

Simulation Settings

There are several settings which has to be changed on simulink, those are:

Settings Value
Time 1800 [s]
Fixed - step size 0.01
Solver type ode3 (Bogacki - shampine)

The sequence of running the simulation:

  • First, run parameter_main m.file
  • Second, choose the desired output results in the Output Selector block
  • Third, run the simulation
  • Fourth, plot the results using Results Plot GUI block

The output from each individual module can be plotted using the Results Plot GUI.

Simulation Result

Use these Simulation Results to do graphical validation.
The simulation results of the parallel hybrid vehicle are as follows:

Module Result
Internal Combustion Engine
ICE mechanical output.
Clutch
Clutch mechanical output.
Mechanical connection
Mechanical connection mechanical output.
Transmission
Transmission mechanical output.
Final gear
Final gear mechanical output.
Chassis
Chassis mechanical feed back output.
Battery
Battery eletrical output.
Electric Machine
Electric machine mechanical output.
Electrical Auxiliary system
Electrical auxiliary mechanical output.