Foundation Block Set

From NewEagleWiki
Revision as of 14:26, 29 November 2018 by Rlewis (talk | contribs)
Jump to navigation Jump to search

The Foundation Block set is a library of common control elements. This contains different types of control loop blocks, integrator, filters, etc. These blocks have been designed to work in an embedded environment so they can be used with Raptor or MotoHawk. These blocks are the foundation of any controls model and can be re-used for many applications.

To get more information about this library contact New Eagle.


First Time Block:

First Time

The first time block sends a true signal out the first time the subsystem it is in is triggered. All other executions of that subsystem will have this block output a false signal.

Compare To:

Compare To

The Compare To block allows the user to compare an inputted value vs. the given value in the mask. It will output a true signal when the values match.

Rising Edge:

Rising Edge

This block detects a rising edge and sends out a value 1 when it does so.

Falling Edge:

Falling Edge

This block detects a falling edge and outputs a value when it does so.

Derivitive:

Derivitive

This block takes the derivate of an inputted signal.

Saturation:

Saturation

The saturation block takes a min, max and inputted value. It then outputs the inputted signal when it is between the min max. When the inputted signal goes over the boundaries it outputs the min or max values.

First Order Low Pass:

First Order Low Pass

The 'alpha' input is T/t. So when alpha = 1, the block simply passes the input through to the output, and when alpha = 0, the block forever holds its last output value.

Median Filter:

Median Filter

This filter block stores the number of data points that the user requests and gives the median of those values.

Time Since Enabled:

Time since enabled

The Time Since Enabled block outputs the amount of time that has elapsed since the enable input has gone high. It holds its value when the enable input goes low, but resets again when it goes high.

Saturate Divide:

Saturate Divide

When the divisor is less than the numerator or zero, saturate and output one.

Integrator:

Integrator

The integrator block takes an incoming signal and integrates it. You can set a Min and Max value for the output. You can also enable the signal with the Rst signal, and it will output the IC value.

Simple PI, PD, and PID Blocks:

Simple Controllers

The simple PI, PD, and PID block set allows a user to quickly implement basic control loops.

The Universal PI, PD, and PID Blocks:

Universal Controllers

The Universal PI, PD, PID blocks allow a user to quickly implement many types of control loops.

PID With Damper Terms:

PID with damper terms

This block helps the user implement a PID with Damper Terms.

Handoff Alpha:

Handoff Alpha

The Handoff Alpha block converts a boolean input signal to a more slowly ramping 'alpha' from 0 to 1.

Triggered and Enabled Counter Rising:

Counter blocks

The triggered and enabled counter count set up an increment. The triggered block does it on the rising edge of a signal, and the enabled block does it when it is enabled.

Variable Rate Limiter:

Variable Rate Limiter.

The variable rate Limiter allows the user to dampen an incoming signal by limiting its rate of change in one time step.

Decayed First Order Filter:

Decayed first Order

The decayed First-Order Filter decays from the Initial Value to the Final Value when enabled.

Calibratable Foundational Operations

Polynomial (Tunable)

Polynomial Tunable

The Polynomial Tunable block allows the user to evaluate a polynomial using Horner’s Rule. The Polynomial is entered using a calibration block in the subsystem.

The Tunable 1st Order Low-Pass Filter:

First Order Low Pass Tunable

This is the 1st-Order Low-Pass filter with extra logic to have the alpha be a fraction of dT. If the calibration value for FilConst is lower than dT than the alpha value is one. If FiltConst is greater than dT, than the alpha is the dT divided FiltConst.

Saturation (Tunable):

Saturation tunable

This is the Saturation Block with the upper and lower limits as calibration values to be used in MotoTune.

Universal PD (Tunable):

Universal PD Tunable

This block is the Universal PD block with many of inputs and outputs as Calibration and Probe blocks to be used in MotoTune.

Universal PID Tunable:

Universal PID (tunable)

This block is the Universal PID Controller with many of the Inputs and outputs set as Calibration and Probe values to be used in MotoTune.

PID with Damper Terms (Tunable):

PID with damper terms (tunable)

This block is the Universal PIDD controller with many of the inputs and outputs set as Calibration and Probe blocks.

Universal PD (Tunable and Scheduled):

Universal PD (tunable and scheduled)

This block takes the universal PD block and has many of the inputs and outputs set as Calibration and Probe blocks to be used in MotoTune. It also has lookup tables to schedule the signals.

Universal PID (Tunable and Scheduled):

Universal PID (tunable and scheduled)

This block takes the universal PID block and has many of the inputs and outputs set as Calibration and Probe blocks to be used in MotoTune. It also has lookup tables to schedule the information.

PWM Generator:

PWM Generator

The PWM Generator block uses the dT module block to use dT to create a PWM signal to be used on a module.

Hysteresis:

Hysterisis

The Hysteresis block takes an inputted signal and an upper and lower bound. It then induces hysteresis in the signal.

More Information

For more information, do not hesitate to contact us at support@neweagle.net.

Webstore

This library was designed for embedded applications and contains the foundational blocks for a controls model including closed loop control blocks, filters, and other useful functions.