Foundation Block Set: Difference between revisions
No edit summary |
No edit summary |
||
Line 61: | Line 61: | ||
When the divisor is less than the numerator or zero, saturate and output one. | When the divisor is less than the numerator or zero, saturate and output one. | ||
===Integrator=== | ===Integrator:=== | ||
[[image:Integrator.PNG| Integrator]] | [[image:Integrator.PNG| Integrator]] | ||
Line 73: | Line 73: | ||
The simple PI, PD, and PID block set allows a user to quickly implement basic control loops. | The simple PI, PD, and PID block set allows a user to quickly implement basic control loops. | ||
===The Universal PI, PD, and PID Blocks=== | ===The Universal PI, PD, and PID Blocks:=== | ||
[[image:Universal_controllers.PNG| Universal Controllers]] | [[image:Universal_controllers.PNG| Universal Controllers]] | ||
Line 85: | Line 85: | ||
This block helps the user implement a PID with Damper Terms. | This block helps the user implement a PID with Damper Terms. | ||
===Handoff Alpha | ===Handoff Alpha:== | ||
[[image:Handoff_Alpha.PNG| Handoff Alpha]] | [[image:Handoff_Alpha.PNG| Handoff Alpha]] | ||
Line 91: | Line 91: | ||
The Handoff Alpha block converts a boolean input signal to a more slowly ramping 'alpha' from 0 to 1. | The Handoff Alpha block converts a boolean input signal to a more slowly ramping 'alpha' from 0 to 1. | ||
===Triggered and Enabled Counter Rising=== | ===Triggered and Enabled Counter Rising:=== | ||
[[image:Counter_blocks.PNG| Counter blocks]] | [[image:Counter_blocks.PNG| Counter blocks]] | ||
Line 97: | Line 97: | ||
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. | 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"=== | ||
[[image:Variable_Rate_Limiter.PNG| Variable Rate Limiter.]] | [[image:Variable_Rate_Limiter.PNG| Variable Rate Limiter.]] | ||
Line 117: | Line 117: | ||
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 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=== | ===The Tunable 1st Order Low-Pass Filter:=== | ||
[[image:First_Order_Low_Pass_Tunable.PNG| First Order Low Pass Tunable]] | [[image:First_Order_Low_Pass_Tunable.PNG| First Order Low Pass Tunable]] | ||
Line 123: | Line 123: | ||
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. | 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):=== | ||
[[image:Saturation_tunable.PNG| Saturation tunable]] | [[image:Saturation_tunable.PNG| Saturation tunable]] | ||
Line 129: | Line 129: | ||
This is the Saturation Block with the upper and lower limits as calibration values to be used in MotoTune. | 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):=== | ||
[[image:Universal_PD_Tunable.PNG| Universal PD Tunable]] | [[image:Universal_PD_Tunable.PNG| Universal PD Tunable]] | ||
Line 135: | Line 135: | ||
This block is the Universal PD block with many of inputs and outputs as Calibration and Probe blocks to be used in MotoTune. | 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:=== | ||
[[image:Universal_PID_(Tunable).PNG| Universal PID (tunable)]] | [[image:Universal_PID_(Tunable).PNG| Universal PID (tunable)]] | ||
Line 141: | Line 141: | ||
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. | 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):=== | ||
[[image:PID_with_damper_terms_(tunable).PNG| PID with damper terms (tunable)]] | [[image:PID_with_damper_terms_(tunable).PNG| PID with damper terms (tunable)]] | ||
Line 147: | Line 147: | ||
This block is the Universal PIDD controller with many of the inputs and outputs set as Calibration and Probe blocks. | 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):=== | ||
[[image:Universal_PD_tunable_and_Scheduled.PNG| Universal PD (tunable and scheduled)]] | [[image:Universal_PD_tunable_and_Scheduled.PNG| Universal PD (tunable and scheduled)]] | ||
Line 153: | Line 153: | ||
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. | 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):=== | ||
[[image:Universal_PID_(tunable_&_Scheduled).PNG| Universal PID (tunable and scheduled)]] | [[image:Universal_PID_(tunable_&_Scheduled).PNG| Universal PID (tunable and scheduled)]] | ||
Line 159: | Line 159: | ||
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. | 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:=== | ||
[[image:PWM_Generator.PNG| PWM Generator]] | [[image:PWM_Generator.PNG| PWM Generator]] | ||
Line 165: | Line 165: | ||
The PWM Generator block uses the dT module block to use dT to create a PWM signal to be used on a module. | The PWM Generator block uses the dT module block to use dT to create a PWM signal to be used on a module. | ||
===Hysteresis=== | ===Hysteresis:=== | ||
[[image:Hysterisis.PNG| Hysterisis]] | [[image:Hysterisis.PNG| Hysterisis]] | ||
The Hysteresis block takes an inputted signal and an upper and lower bound. It then induces hysteresis in the signal. | The Hysteresis block takes an inputted signal and an upper and lower bound. It then induces hysteresis in the signal. |
Revision as of 20:39, 20 June 2012
Foundation Control Block Set
First Time Block:
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:
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:
This block detects a rising edge and sends out a value 1 when it does so.
Falling Edge:
This block detects a falling edge and outputs a value when it does so.
Derivative:
This block takes the derivate of an inputted signal.
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:
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:
This filter block stores the number of data points that the user requests and gives the median of those values.
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:
When the divisor is less than the numerator or zero, saturate and output one.
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:
The simple PI, PD, and PID block set allows a user to quickly implement basic control loops.
The Universal PI, PD, and PID Blocks:
The Universal PI, PD, PID blocks allow a user to quickly implement many types of control loops.
PID With Damper Terms:
This block helps the user implement a PID with Damper Terms.
=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:
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"
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:
The decayed First-Order Filter decays from the Initial Value to the Final Value when enabled.
Calibratable Foundational Operations
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:
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):
This is the Saturation Block with the upper and lower limits as calibration values to be used in MotoTune.
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:
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):
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):
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):
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:
The PWM Generator block uses the dT module block to use dT to create a PWM signal to be used on a module.
Hysteresis:
The Hysteresis block takes an inputted signal and an upper and lower bound. It then induces hysteresis in the signal.