Abstract

The VxWorks Rate Transition Block is only used to provide a sample time for blocks connected to the output of a asynchronous function-call subsystem that don't themselves specify a sample time. If these blocks either inherit or simply don't specify a sample time, they can get assigned the sample time of the asynchronous function-call subsystem. This may or may not be the desired result as the asynchronous function-call subsystem sample time is inherited as well and is in fact unknown to the model since it is called either directly or indirectly though an ISR. To assure a desired sample time for the blocks, the user has 3 options.

Use this block, or some other block which requires a sample time to be set, at the output of the asynchronous function-call subsystem. This will cause blocks downstream from it, which would otherwise inherit from the function-call subsystem, to use the sample time specified. Note that if the signal width is greater than 1, data consistency is not guaranteed which may or may not an issue, see next option.

Use the Double Buffer block pair. This not only will set the sample time of the blocks downstream which would otherwise inherit from the function-call subsystem, but also guarantees consistency of the data on the signal. See the Double Buffer block for more information on data consistency.

The third option is to leave the blocks to inherit their sample time. The inherited sample time can be seen by turning on sample time colors in Simulink.

NOTE: The Rate Transition Block itself does not generate any code in the model.