Periodic Trigger Slip Event Trigger

This MotoHawk™ block allows the application to be notified when a slip event on the periodic trigger group identified by this block is observed. Trigger group slip must be installed before this block can be used.

Block ID

Get Periodic Trigger Slip Data

Library

motohawk_tasking_lib/Trigger Blocks

Description

Overview

This MotoHawk™ block allows the application to be notified when a slip event on the periodic trigger group identified by this block is observed. Trigger group slip must be installed before this block can be used. The Global Periodic Trigger Slip and Execution Metric Definition block or the Explicit Periodic Trigger Slip block allow periodic trigger group slip to be installed into an application.

Why Notify the Application of a Slip Event

Notification allows the application to take on the responsibility of what should occur when MotoHawk™ has detected periodic trigger group slip. Thus a notification could allow the application to (say) enter a limp home mode that may alter what features can run rather than enforce an application reset (which is the only predefined action that the slip detection behavior supports).

Different Notification Events

The trigger supports application notification when a Slip Event is observed and when a Slip Failure has been observed.

Slip Event
A slip event is issued each time MotoHawk™ detects that a periodic trigger group has suffered slip. Thus a trigger that selects to execute on a slip event will execute each time slip is observed on the periodic trigger group identified by this block instance.

Slip Failure
Slip failure is only detected once sufficient slip events have been observed to constitute a failure. This means that there has been sufficient slip events observed to exceed the slip threshold specified for the periodic trigger group of interest. Slip threshold is specified explicitly or globally. Observing further slip events after failure has been detected will result in further Slip Failure trigger executions. Thus a 5ms group that has reported failure, but whose status has not yet returned to OK (because insufficient periodic executions have yet to be observed without a slip event) will report another failure if another slip event is observed.

Selecting Execution Priority of the Trigger

It is recommended that the application's highest priority task be selected by the Execute within this Task attribute. This will ensure the trigger will execute when slip is observed. Using a lower priority task may mean that the notification is not executed until sometime after the event was detected. Not using a high priority task could also mean that the notification never executes because the slip failure could be the result of the selected task being starved of execution (which is implied by the slip).

Block Parameters

Defn

Parameter Field Values Comments/Description
Trigger Name Single quote enclosed alpha-numeric text This text will be appended to code generated function name. This is useful when using a difference tool to compare the difference from one build to another. If this is left as an empty cell the appended value will be generated at build time, and can change from build to build.
Monitored Trigger's Task Name Single quote enclosed alpha-numeric The name of the Task that the periodic trigger group that is being monitored executes within. A 5ms periodic trigger group that executes in (say) the FGNDTask is not the same periodic trigger group as a 5ms trigger that executes in (say) the BGNDTask. They have different execution priorities that require them to be grouped separately so far as slip detection is concerned and therefore represent different notifications.
Method of periodic execution specification Dropdown Specifies the method that the block will use to identify the periodic trigger group. This allows both TIME_PERIODIC and RTIx_PERIODIC triggers to be easily identified. Legacy periodic triggers will also be identified.
Trigger's Period of Execution Numeric Specify the trigger group of interest. Data format is based upon the Method of periodic execution specification
Trigger on a Dropdown
Slip Event
Slip Failure
Specifies whether this trigger shall execute when a Slip Event or a Slip Failure has been observed. See the Different Notification Events heading for more detail.
Execution Order within Task Numeric (Integer) More than one trigger may be placed in a model that is driven by the same event. Use the Execution Order within Task attribute to define the execution order of these triggers relative to one another. Triggers with the same executing task will be grouped and execute from the lowest Execution Order within Task value to the highest.

The Control Core Tasking help topic has some further information.
Execute within this Task Single quote enclosed alpha-numeric text The name of the Task Definition block that defines the task that this trigger will execute within. This should be a high priority task. See here.