Flexible Encoder Interpolation Speed Override

When enabled, the RPM provided at the input to this block will override the instantaneous speed that would be used to calculate the rate of linear interpolation applied by the encoder to generate all the angle events that fall between real encoder teeth. The use of a filtered speed such as Average Cycle RPM is recommended for this purpose.

Block ID

Set Interpolation Speed Override

Library

motohawk_flexenc_lib

Description

Generation of angular events that fall between physical encoder teeth are normally scheduled by a linear time interpolation using the measured instantaneous speed between the two most recent teeth.

In some systems, particularly very large engines during steady state operation, the instantaneous speed will vary considerably over one cycle due to the impact of acceleration arising from power strokes and deceleration from compression strokes in the cylinders of the engine. This can result in angular events being scheduled at a time when a transient acceleration or deceleration was present, leading to the event being delivered at a true angle that has a compounded error. The result is that the overall stability of engine speed can be degraded.

In order to minimise the compounded angular error that would arise under these conditions, this block allows the user to override the use of the instantaneous speed for the purposes of event scheduling, and instead substitute a more stable (filtered) engine speed. The result is that angular events will be delivered closer to their ideal position under these circumstances.

Note : This override should only be enabled during steady state operation.

Block Parameters

Parameter Field Values Comments/Description
Reference System Name Alpha-numeric text, quote enclosed The name of the Flexible Encoder System Block that this block is to recover the RPM from. This attribute may be hidden (not visible) if the implementation is implicitly inferring the name. 
Override RPM Resolution Drop Down List The default resolution is 1 RPM and the input data type is uint16. When the resolution is selected to be 1/256, the input is RPMx256 and the input port width will be uint32.
This resolution matches the output resolution options from the Average Cycle RPM block, which would typically be a good choice of filtered speed to drive the Override RPM input on this block.


Available Output Status

The m-script motohawk_flexible_encoder_interpolation_speed_override_enum enumerates the state value.

Disabled (value=0)

The interpolation override is currently inactive. Normal instantaneous speed will be used to calculate the rate of linear interpolation applied by the encoder to generate all angle events that fall between real encoder teeth.

Enabled (value=1)

The interpolation speed override is available and activated. Event scheduling will use the Override RPM to perform the linear interpolation from the closest physical tooth.

Feature Not Available (value=2)

The request to enable interpolation speed override feature is acknowledged, but the feature is not available in this system. Functionally equivalent to disabled.