Adaptive 2-d map look-up and interpolation.
None (Main library). (See Section 2.3, “Licensed Features”.)
Looks up the input x and y in the X-axis Data (default) and Y-axis Data (default) parameters, interpolates between the corresponding Adaptive Z Data (default) parameter elements, giving a corresponding adapted_z as output.
The adaptive 2-d look-up block is similar to the OpenECU put_Calmap2d block, except that the z-axis look-up values can change over time under control of the model and be recovered from non-volatile memory when the model starts. If the adaptive values cannot be recovered at start-up, or if the model is simulated, the default values are used before any adaption takes place.
The target non-volatile memory is provided in two ways: either through storage that requires an external power source when the ECU is powered down (battery backed RAM storage), or not (Flash storage). See the technical specification for details on which storage type is supported by each target.
The battery backed non-volatile memory requires a small amount of power overall, i.e., much less than powering the ECU normally.
The adaptive data is check-summed using a 16-bit CRC. Failure to match the check-sums on start-up means that the data cannot be recovered. In this case, or if the model is simulated, adaptive data is reverted to the default value specified when the model was built.
Unlike R12 Simulink maps, 1-d and 2-d maps in OpenECU do not extrapolate beyond the limits of the input axis or axes. OpenECU calibration maps should be used for all maps that form part of an OpenECU build.
Some calibration tools provide a feature which shows the map in graphical or tabular
form together with the active interpolation point. OpenECU supports this feature by populating
the ASAP2 file with the signal names which correspond to the x and y inports.
To make this feature work, the x and y signals must be named DD entities with their
properties set to ExportedGlobal
.
The x-value at which a z-value is to be adapted then interpolated. May be a scalar or a vector. If the inport is attached to a vector, the size of the vector must match the size of any vector attached to another inport.
Value type: | Real | ||
Calibratable: | No |
The y-value at which a z-value is to be adapted then interpolated. May be a scalar or a vector. If the inport is attached to a vector, the size of the vector must match the size of any vector attached to another inport.
Value type: | Real | ||
Calibratable: | No |
The increment to the current adapted value. The increment is only used when the inports adapt and reset are conditioned correctly. May be a scalar or a vector. If the inport is attached to a vector, the size of the vector must match the size of any vector attached to another inport.
Value type: | Real | ||
Calibratable: | No |
1 if the current adapted value should be adjusted, 0 otherwise. If the inport reset is 1, no adaption will occur (even if inport adapt is 1). May be a scalar or a vector. If the inport is attached to a vector, the size of the vector must match the size of any vector attached to another inport.
Range: 0 or 1
Value type: | Boolean | ||
Calibratable: | No |
1 if the current adapted value should be forced to Adaptive Z Data (default), 0 otherwise. May be a scalar or a vector. If the inport is attached to a vector, the size of the vector must match the size of any vector attached to another inport.
Range: 0 or 1
Value type: | Boolean | ||
Calibratable: | No |
The adapted value or values interpolated from parameter Adaptive Z Data (default) at the values for inports x and y.
Value type: | Real | ||
Calibratable: | No |
The name of the
map's x axis (e.g. vftm_mymap_x
, see Section "Naming rules").
There must be two or more elements in this parameter and that must be the same as
the number of elements as columns in parameter Adaptive Z Data (default). The
values of this parameter must increase monotonically and adjacent values must not
be the same.
Value type: | Real | ||
Calibratable: | No |
The name of the
map's y axis (e.g. vftm_mymap_y
, see Section "Naming rules").
There must be two or more elements in this parameter and that must be the same as
the number of elements as rows in parameter Adaptive Z Data (default). The
values of this parameter must increase monotonically and adjacent values must not
be the same.
Value type: | Real | ||
Calibratable: | No |
The name of
the map's z matrix (e.g. vftm_mymap_z
, see Section "Naming rules").
There must be the same number of rows as elements in parameter Y-axis Data (default)
and number of columns as elements in parameter X-axis Data (default).
Value type: | Real | ||
Calibratable: | No |
The periodicity of the block execution.
Range: [0.001, 3600] seconds
Value type: | Real | ||
Calibratable: | No |
The build process generates a corresponding ASAP2 entry to the adaptive parameter
that can be accessed via a calibration tool. The name of this entry has a fifth
character 'a', i.e., given the default parameter name
vtfm_mymap_z
, an ASAP2 entry with name
vtfma_mymap_z
is generated. Note that this implies that only a single
adaptive parameter can exist per named default parameter.
If two or more blocks refer to the same named item in the Adaptive Z Data (default) field, these blocks will independently adapt the same adaptive parameter.
The reset, adaption, look-up and interpolation work as follows:
Possible reset
If the inport reset is 1, the block reverts the Adaptive Z Data (default) parameter data to the block's defaults and sets the output from a look-up and interpolation.
Possible adaption
If a reset has not occurred and the inport adapt is 1, then the Adaptive Z Data (default) parameter data is altered as follows before setting the output from a look-up and interpolation.
xa and xb bound x
(see
exceptions below), ya and yb bound
y
(see exceptions below), zaa ,
zab, zba and
zbb are the corresponding elements in the parameter
Adaptive Z Data (default).
When the software adapts the 2-d look-up table, the Adaptive Z Data (default) is modified as follows:
If the inport x is less than xa and xa is the first element in the X-axis Data (default) parameter then the software shall treat xb as the same element as xa, zab as the same element as zaa and perform the adaption calculation with interplx as 0.
If the inport x is greater than xb and xb is the last element in the X-axis Data (default) parameter then the software shall treat xa as the same element as xb, zaa as the same element as zab and perform the adaption calculation with interplx as 1.
Similar restrictions apply for the y inport.
Look-up and interpolation
Works as the put_Calmap1d block.