Main Content

Design of Experiments for Multi-Injection Diesel Engine Calibration

Benefits of Design of Experiment

You use design of experiment to efficiently collect engine data. Testing time (on a dyno cell, or as in this case, using high-fidelity simulation) is expensive, and the savings in time and money can be considerable when a careful experimental design takes only the most useful data. Dramatically reducing test time is increasingly important as the number of controllable variables in more complex engines is growing. With increasing engine complexity, the test time increases exponentially.

Air-System Survey Testing

The first stage to solve this calibration problem is to determine the boundaries of the feasible air-system settings. To do this, create an experimental design and collect data to determine air-system setting boundaries that allow positive brake torque production in a feasible AFR range.

Engine block with EGR Pos, VGT Pos, Speed, and AFR input and torque output.

These simplifications were used to conduct the initial study:

  • Pilot injection is inactive.

  • Main timing is fixed.

  • Nominal fuel pressure vs RPM.

  • Main fuel mass is moved to match the AFR target.

The design process follows these steps:

  1. Set up variable information for the experiment, to define the ranges and names of the variables in the design space.

  2. Choose an initial model.

  3. Create a base design that contains the correct constraints.

  4. Create child designs using varying numbers of points and/or methods of construction.

  5. Choose the design to run based on the statistics and how many points you can afford to run.

Create Designs and Collect Data

You can use a space-filling design to maximize coverage of the factors' ranges as quickly as possible, to understand the operating envelope.

To create a design, you need to first specify the model inputs. Open the example file to see how to define your test plan.

  1. In MATLAB®, on the Apps tab, in the Automotive group, click MBC Model Fitting.

  2. Select File > Open Project and browse to the example file CI_MultiInject_AirSurvey.mat, found in matlab\toolbox\mbc\mbctraining.

  3. The Model Browser displays the top project mode in the All Models tree, CI_Multiinject_AirSurvey.

  4. To see how to define your test plan, click Design Experiment. In the new test plan dialog box, observe the inputs pane, where you can change the number of model inputs and specify the input symbols, signals and ranges. This example project already has inputs defined, so click Cancel.

  5. Click the first test plan node in the All Models tree, AirSurveyDoE. The test plan view appears.

    Test plan diagram with a quadratic model.

  6. Observe the inputs listed on the test plan diagram. Double-click the Inputs block to view the ranges and names (symbols) for variables in the Input Factor Set Up dialog box.

    Input Factor Set Up dialog box with the Number of factors set to four and the inputs of a model listed with minimum and maximum values set.

    Close the dialog box.

  7. After setting up inputs, you can create designs. In the Common Tasks pane, click Design experiment.

    The Design Editor opens. Here, you can see how these designs are built:

    • The final Air Survey design is a ~280 point Sobol Sequence design to span the engine operating space. The Sobol Sequence algorithm generated the space-filling design points. The final design is called AirSurveyMergedDoE because it contains two merged designs, one with a constraint and one unconstrained:

      • A 232-point design for overall engine operating range called AirSurveySpaceFill

      • A 50-point design low speed/load for an idle region called AirSurveyIdle

  8. Select the AirSurveySpaceFill design in the Designs tree, and select View > Current View > 2D Design Projection.

    Screenshot of MBC Design Editor showing a 2D design projection with Sobol sequence points for EGR position vs VGT position in diesel engine calibration.

  9. Select Edit > Constraints to see how the constraints are set up.

    Screenshot of Constraints Manager in MBC showing AFR command constraints for engine speed with options to add, import, edit, or delete constraints.

  10. In the Constraints Manager dialog box, select a constraint and click Edit. Observe that you can define areas to exclude by dragging points or typing in the edit boxes.

    Screenshot of MBC Edit Constraint dialog showing a 1D table constraint for AFR command versus engine speed with breakpoints and shaded constraint region.

    Click Cancel to close the Edit Constraint dialog box and leave the constraint unchanged. Close the Constraints Manager dialog box.

  11. Observe the Properties of the selected AirSurveySpaceFill design under the tree, listing 2 constraints, 232 points, and a Design Style of Sobol Sequence.

  12. You can see how to construct a design like this by selecting Design > Space Filling > Design Browser, or click the space-filling design toolbar button.

      • A dialog box asks what you want to do with the existing design points. Click OK to replace the points with a new design.

      • In the Space-Filling Design Browser, click Generate several times to try different space-filling points. You can specify the Number of points, and view previews of design points. Observe the default design type is Sobol Sequence.

        Screenshot of MBC Space-Filling Design Browser showing Sobol sequence design with 230 points for EGR position vs VGT position in diesel engine calibration.

      • Click Cancel to close the Space-Filling Design Browser and leave the design unchanged.

  13. Click the AirSurveyIdle design to observe it is also a Sobol Sequence design, containing 50 points and no constraints.

  14. Click the AirSurveyMergedDoE design to observe it is of type Custom, and contains 282 points and 2 constraints. This design is formed by merging the previous 2 designs. You can find Merge Designs in the File menu.

  15. Click AirSurveyMergedDoE_RoundedSorted, the child design of AirSurveyMergedDoE. This design contains the same points but rounded and sorted, using Edit > Sort Points and Edit > Round Factor. This is the final design used to collect data.

  16. Close the Design Editor.

The final air survey design was used to collect data from the GT-Power model with the Simulink® and Simscape™ test harness. The example Model Browser project file CI_MultiInject_AirSurvey.mat contains this data, imported to the Model Browser after the air survey. You can also view the data in spreadsheet form in the file CI_AirSurvey_Data.xlsx in the mbctraining folder.

Fit a Boundary Model to Air Survey Data

You need to fit a boundary model to the data collected at the air survey design points. The test data from the air survey was used to create a boundary model of the engine operating range. The example Model Browser project file CI_MultiInject_AirSurvey.mat contains this boundary model.

  1. In the Model Browser, click the second test plan node in the All Models tree, AirSurveyBoundary.

    Compare with the AirSurveyDoE test plan view. For the boundary modeling test plan,

    • Observe an imported data set listed under the Common Tasks pane. The second test plan has imported the air survey data in order to fit a boundary model to the data.

    • Observe the Inputs are different in the test plan diagram. Instead of the AFRCMD input in the DoE test plan, there is a SPEED input for boundary modeling. AFRCMD was used to constrain the design points to collect the air survey data. To model the boundary before creating the final design, you now need the SPEED input instead.

    Screenshot of MBC Model Browser showing AirSurveyBoundary test plan with quadratic model linking inputs (EGR position, VGT position, speed, torque) to responses for diesel engine calibration.

  2. In the Model Browser, select TestPlan > Edit Boundary to open the Boundary Editor.

  3. Examine the boundary model by selecting View > Current View > Pairwise Projections. The plots show the shape across the inputs.

    Screenshot of MBC Boundary Editor showing pairwise projection plots with convex hull constraints for EGR position, VGT position, speed, and torque in diesel engine calibration.

Use the Air Survey and Boundary Model to Create the Final Design

The initial air survey design and test data provide information about the engine operating envelope, where the feasible AFR range can produce positive brake torque. The resulting data lets you create a boundary model. You can use the boundary model to create the final design avoiding infeasible points, and in later steps to guide modeling and constrain optimizations.

Using the boundary model as a constraint, you can generate the final design to collect detailed data about fuel injection effects within those boundaries. You can then use this data to create response models for all the responses you need in order to create an optimal calibration for this engine.

The final Point-by-Point Multi-Injection design (around 7000 points) was generated using a MATLAB script together with the Air Survey boundary model.

  1. Open the example files CI_PointbyPointDoE.m and createCIPointbyPointDoEs.m in the mbctraining folder to see the script commands that build the final design.

    The script keeps only points that lie within the boundary model, and continues generating design points until it reaches the desired number of points. The Sobol space-filling design type keeps filling in spaces for good coverage of the design space.

    After generating design points for each test, the script creates a Model Browser project with a point-by-point test plan, and attaches the point-by-point designs to the test plan.

  2. Open the project CI_MultiInject_PointbyPoint.mat to view the project created by the script.

  3. Select the second test plan node in the tree, and then click the Test Plan tab. In the test plan diagram, right-click the Operating Point Selector block, and select Design Experiment to view the designs created by the script.

    Screenshot of MBC test plan interface showing Operating Point Selector block with context menu option to design experiment for engine calibration.

  4. In the Design Editor, select Mode Points in the Design tree, and view the 2D Design Projection.

  5. In the Design tree, select Actual Design. Observe that the boundary model constraint removed points in the corners, so that the actual design points collect data only in the feasible region determined by the initial air survey.

  6. Return to the Model Browser test plan, right-click the Local Model block, and select Design Experiment.

    Screenshot of MBC test plan showing Local Model block labeled “Multiple Models” with context menu option to design experiment for engine calibration.

  7. Click test numbers to view the local design points at each operating point. At each test, the values of SPEED and TQ are fixed and the space-filling design selects points across the space of the local inputs.

Multi-Injection Testing

The final design was used to collect data for the following inputs and responses.

Engine block with response inputs and optimal calibration outputs.

The toolbox provides the data files for you to explore this calibration example. You can view the data in spreadsheet form in the file CI_MultiInject_PointByPoint_Data.xlsx, and the data is imported to the Model Browser project file CI_MultiInject_PointbyPoint.mat.

For details on how the data was collected, see Data Collection and Physical Modeling.

For next steps, see Fit Empirical Models to Multi-Injection Diesel Engine Calibration Data.

Tip

Learn how MathWorks® Consulting helps customers develop engine calibrations that optimally balance engine performance, fuel economy, and emissions requirements: see Optimal Engine Calibration.