Hybrid systems with discrete and continuous time behavior can require complex timing-dependent signal logic. Simulink® Test™ enables you to assess model timing and event ordering by authoring and including temporal assessments with test cases in the Test Manager.
To work with temporal assessments:
Select an assessment template
Enter assessment conditions:
Map symbols to model elements such as signals or to a time series or constant
View assessment summary
Run the test case
Use the results to assess the system under test (SUT) against your requirements
As an example, consider a forced oscillation damping problem that has this requirement:
For a signal
S, if the signal magnitude exceeds a
P, then within
t seconds, it must settle below a value
Q and stay below
To create a temporal assessment:
Create or open a test case.
Navigate to the Logical and Temporal Assessments Editor.
Click Add Assessment. These assessment templates are available:
Bounds Check – Check maximum and minimum bounds for signals and expressions
Trigger-Response – Check for a signal response when a trigger is detected
Custom – Check if a logical expression holds true for all time steps
For this example, select Trigger-Response.
The Trigger-Response template appears. To finish creating the assessment, you define temporal assessment conditions in the context of the SUT.
A Trigger-response assessment requires:
You can enter conditional statements as the trigger and response conditions. For the forced oscillation damping problem:
Select whenever is true as the trigger and enter
abs(S) > P as the
trigger condition is the condition pattern after which the response signal
is evaluated. The response condition is triggered when the magnitude of
S exceeds value
Select must stay true for at least as the response
abs(S) < Q and
u as the
respectively. The response condition describes the behavior of the SUT in
response to the trigger condition. The response condition is that the
magnitude of signal
S must settle below value
Q and stay below
Q for at least
Select with a delay of at most as the delay type and
t as the
max-time parameter. The
delay is an optional time interval starting from a time reference parameter
to the point where the response condition is expected to be satisfied. The
delay is at most
All time units are seconds.
When you add a symbol as part of a temporal assessment parameter in the Assessments editor, it is added to the list of symbols as an unresolved symbol. Resolve symbols by using the Symbols pane in the Assessments Editor.
To resolve a symbol, right-click the symbol. Two options are available:
Map to model element – Use the mapping dialog box to map symbols to a signal/parameter/block in the SUT.
Select a symbol to map from the drop-down list at the top of the mapping dialog.
After you finish mapping symbols to model elements, the Symbols pane displays metadata that corresponds to the model element.
Signals mapped to a symbol used by an assessment in the editor are logged when you run the test case.
If you map a bus or an array to a symbol, use the Field/Element row in the Symbols pane to select a scalar signal from the bus or array. For example:
If you want to map a symbol to a bus signal containing a
If you want to map a symbol to the signal element
corresponding to index (5,5) in a signal array, enter
You can combine both expressions as
Map to expression – Assign a scalar constant value or time series object to a symbol.
You can use the simulation output as a variable to map symbols to
signals. For example, entering
equivalent to using Map to model element to
map symbols to a signal
mySignal. See Test-Case Level Callbacks for more information.
After you enter the assessment parameters, click the arrow to the left of the Assessment description to view the assessment summary.
The Visual Representation pane provides a graphical illustration of a passing case for the assessment.
View Passing and Failing cases for the assessment by clicking the Explore Pattern icon. Select the type of case you want to view (passing or failing) from the drop-down list and click to view different passing and failing cases.
Run the test case to evaluate the SUT. Temporal assessments are evaluated after simulation using logged signal data. Use the test case results to review the SUT against your requirements.
View the results of the assessment evaluation from the Results and Artifacts pane of the Test Manager. Select the test case and select the assessment in the Results tree to open a new Assessment Result tab. Simulink Test evaluates the assessment and displays the expected behavior and the actual result of the assessment execution with a description of the assessment failures at different time steps.
Investigate the SUT behavior using the and buttons and the textual descriptions at points of failure.
For a more detailed investigation, expand the Expression Tree to view results for every individual element of the assessment.
Use the zoom, pan, and data cursor functionalities to analyze assessment evaluation results in the Expression Tree.
If you have a Simulink Requirements™ license, you can establish traceability between temporal assessments and requirements in Simulink Requirements by linking assessments to requirements. To create links to requirements, select the assessment in the editor and click the Requirements column to open the Requirement Editor dialog box. See Link to Requirements for more information.