Difference between revisions of "Component: Filter (DSP)"

From Flowcode Help
Jump to navigationJump to search
(XML import of component documentation)
 
(XML import)
 
(15 intermediate revisions by 3 users not shown)
Line 4: Line 4:
 
|-
 
|-
 
| width="20%" style="color: gray;" | Author
 
| width="20%" style="color: gray;" | Author
| [http://www.matrixltd.com Matrix Ltd]
+
| Matrix Ltd
 
|-
 
|-
 
| width="20%" style="color: gray;" | Version
 
| width="20%" style="color: gray;" | Version
| 1.2
+
| 1.3 (Release)
 
|-
 
|-
 
| width="20%" style="color: gray;" | Category
 
| width="20%" style="color: gray;" | Category
Line 16: Line 16:
  
 
==[[File:Component Icon 317efb6a_2bad_4f83_a0bc_4ada0f4cd51e.png|Image]] Filter component==
 
==[[File:Component Icon 317efb6a_2bad_4f83_a0bc_4ada0f4cd51e.png|Image]] Filter component==
 +
Filter component to allow basic filtering to be performed
 +
Filters include: LowPass, HighPass, BandPass, BandStop, FIR, IIR
  
 +
==Examples==
 +
=== Low Pass Filter ===
 +
 +
 +
Example of the filter component set up to create a low pass filter with the input frequency controlled using the potentiometer on the panel.
 +
{{Fcfile|LowPassFilter.fcfx|LowPassFilter}}
 +
Low pass filter running at a low frequency - note that the amplitude of the filtered data closely matches that of the original waveform data.
 +
 +
[[File:LPFilter.jpg]]
 +
 +
 +
Low pass filter running at a high frequency - note that the amplitude of the filtered waveform is now greatly attenuated.
 +
 +
[[File:LPFilter2.jpg]]
 +
 +
 +
=== High Pass Filter ===
 +
 +
 +
Example of the filter component set up to create a high pass filter with the input frequency controlled using the potentiometer on the panel.
 +
{{Fcfile|HighPassFilter.fcfx|HighPassFilter}}
 +
High pass filter running at a low frequency - note that the amplitude of the filtered waveform is greatly attenuated.
 +
 +
[[File:HPFilter.jpg]]
 +
 +
 +
High pass filter running at a high frequency - note that the amplitude of the filtered data closely matches that of the original waveform data.
 +
 +
[[File:HPFilter2.jpg]]
 +
 +
 +
=== Band Pass Filter ===
 +
 +
 +
Example of the filter component set up to create a band pass filter with the input frequency controlled using the potentiometer on the panel.
 +
{{Fcfile|BandPassFilter.fcfx|BandPassFilter}}
 +
Band pass filter running at a low frequency - note that the amplitude of the filtered waveform is greatly attenuated.
  
==Examples==
+
[[File:BPFilter.jpg]]
''<span style="color:red;">No additional examples</span>''
+
 
 +
 
 +
Band pass filter running at a mid frequency - note that the amplitude of the filtered data closely matches that of the original waveform data.
 +
 
 +
[[File:BPFilter2.jpg]]
 +
 
 +
 
 +
Band pass filter running at a high frequency - note that the amplitude of the filtered waveform is greatly attenuated.
  
 +
[[File:BPFilter3.jpg]]
  
 
==Downloadable macro reference==
 
==Downloadable macro reference==
  
 
===<span style="font-weight: normal;"><u><tt>Filter</tt></u></span>===
 
===<span style="font-weight: normal;"><u><tt>Filter</tt></u></span>===
''<span style="color:red;">No additional information</span>''
+
Performs the filter operation to the contents of the entire buffer in one go.
 
 
 
 
  
 
'''Parameters'''
 
'''Parameters'''
Line 40: Line 85:
  
 
===<span style="font-weight: normal;"><u><tt>FilterTick</tt></u></span>===
 
===<span style="font-weight: normal;"><u><tt>FilterTick</tt></u></span>===
''<span style="color:red;">No additional information</span>''
+
Performs the filter operation to the current value in the buffer.
 
 
 
 
  
 
'''Parameters'''
 
'''Parameters'''
Line 64: Line 107:
  
 
This property is of type ''Fixed list of ints'' and can be referenced with the variable name ''buffer_manager''.
 
This property is of type ''Fixed list of ints'' and can be referenced with the variable name ''buffer_manager''.
 +
 +
Determines which buffer manager component to refer to
 +
 +
<span style="font-weight: normal;"><u>Input</u></span>
 +
 +
This property is of type ''Fixed list of ints'' and can be referenced with the variable name ''input_a''.
 +
 +
Specifies the input buffer which will pass values into the filter
 +
 +
<span style="font-weight: normal;"><u>Output</u></span>
 +
 +
This property is of type ''Fixed list of ints'' and can be referenced with the variable name ''output_c''.
 +
 +
Specifies the output buffer which will store values from the filter
 +
 +
<span style="font-weight: normal;"><u>Type</u></span>
 +
 +
This property is of type ''Fixed list of ints'' and can be referenced with the variable name ''type''.
 +
 +
Specifies the filter type created by the component:
 +
 +
Low Pass - Filters out frequencies above the cutoff frequency
 +
 +
High Pass - Filters out frequencies below the cutoff frequency
 +
 +
Band Pass - Combination of High Pass and Low Pass Filters
 +
 +
Band Stop - Inverse of Band Pass
 +
 +
FIR - Finite impulse response using standard filter coefficients
 +
 +
IIR - Infinite impulse response using standard filter coefficients
 +
 +
<span style="font-weight: normal;"><u>Order</u></span>
 +
 +
This property is of type ''Fixed list of ints'' and can be referenced with the variable name ''order''.
  
 
''<span style="color:red;">No additional information</span>''
 
''<span style="color:red;">No additional information</span>''
Line 69: Line 148:
  
  
<span style="font-weight: normal;"><u>Input</u></span>
+
<span style="font-weight: normal;"><u>Coefficient A 0</u></span>
  
This property is of type ''Fixed list of ints'' and can be referenced with the variable name ''input_a''.
+
This property is of type ''Floating point'' and can be referenced with the variable name ''co0''.
  
 
''<span style="color:red;">No additional information</span>''
 
''<span style="color:red;">No additional information</span>''
Line 77: Line 156:
  
  
<span style="font-weight: normal;"><u>Output</u></span>
+
<span style="font-weight: normal;"><u>Coeffieient A 1</u></span>
  
This property is of type ''Fixed list of ints'' and can be referenced with the variable name ''output_c''.
+
This property is of type ''Floating point'' and can be referenced with the variable name ''co1''.
  
 
''<span style="color:red;">No additional information</span>''
 
''<span style="color:red;">No additional information</span>''
Line 85: Line 164:
  
  
<span style="font-weight: normal;"><u>Type</u></span>
+
<span style="font-weight: normal;"><u>Coeffieient A 2</u></span>
  
This property is of type ''Fixed list of ints'' and can be referenced with the variable name ''type''.
+
This property is of type ''Floating point'' and can be referenced with the variable name ''co2''.
  
 
''<span style="color:red;">No additional information</span>''
 
''<span style="color:red;">No additional information</span>''
Line 93: Line 172:
  
  
<span style="font-weight: normal;"><u>Coefficient 0</u></span>
+
<span style="font-weight: normal;"><u>Coeffieient B 0</u></span>
  
This property is of type ''Signed integer'' and can be referenced with the variable name ''coef0''.
+
This property is of type ''Floating point'' and can be referenced with the variable name ''cob0''.
  
 
''<span style="color:red;">No additional information</span>''
 
''<span style="color:red;">No additional information</span>''
Line 101: Line 180:
  
  
<span style="font-weight: normal;"><u>Sample Rate</u></span>
+
<span style="font-weight: normal;"><u>Coeffieient B 1</u></span>
  
This property is of type ''Floating point'' and can be referenced with the variable name ''sample_rate''.
+
This property is of type ''Floating point'' and can be referenced with the variable name ''cob1''.
  
 
''<span style="color:red;">No additional information</span>''
 
''<span style="color:red;">No additional information</span>''
  
  
 +
 +
<span style="font-weight: normal;"><u>Sample Rate</u></span>
 +
 +
This property is of type ''Floating point'' and can be referenced with the variable name ''sample_rate''.
 +
 +
Sample frequency used to work out some basic useful calculations
  
 
<span style="font-weight: normal;"><u>Nyquist Frequency</u></span>
 
<span style="font-weight: normal;"><u>Nyquist Frequency</u></span>
Line 113: Line 198:
 
This property is of type ''Floating point'' and can be referenced with the variable name ''nyquist''.
 
This property is of type ''Floating point'' and can be referenced with the variable name ''nyquist''.
  
''<span style="color:red;">No additional information</span>''
+
Maximum theoretical frequency that can be obtained by the sample frequency
 
 
 
 
  
 
<span style="font-weight: normal;"><u>Cutt Off Frequency 0</u></span>
 
<span style="font-weight: normal;"><u>Cutt Off Frequency 0</u></span>
Line 121: Line 204:
 
This property is of type ''Floating point'' and can be referenced with the variable name ''cut_off_0''.
 
This property is of type ''Floating point'' and can be referenced with the variable name ''cut_off_0''.
  
''<span style="color:red;">No additional information</span>''
+
First cutoff frequency

Latest revision as of 17:59, 18 March 2016


Author Matrix Ltd
Version 1.3 (Release)
Category DSP


Image Filter component

Filter component to allow basic filtering to be performed Filters include: LowPass, HighPass, BandPass, BandStop, FIR, IIR

Examples

Low Pass Filter

Example of the filter component set up to create a low pass filter with the input frequency controlled using the potentiometer on the panel. FC6 Icon.png LowPassFilter Low pass filter running at a low frequency - note that the amplitude of the filtered data closely matches that of the original waveform data.

LPFilter.jpg


Low pass filter running at a high frequency - note that the amplitude of the filtered waveform is now greatly attenuated.

LPFilter2.jpg


High Pass Filter

Example of the filter component set up to create a high pass filter with the input frequency controlled using the potentiometer on the panel. FC6 Icon.png HighPassFilter High pass filter running at a low frequency - note that the amplitude of the filtered waveform is greatly attenuated.

HPFilter.jpg


High pass filter running at a high frequency - note that the amplitude of the filtered data closely matches that of the original waveform data.

HPFilter2.jpg


Band Pass Filter

Example of the filter component set up to create a band pass filter with the input frequency controlled using the potentiometer on the panel. FC6 Icon.png BandPassFilter Band pass filter running at a low frequency - note that the amplitude of the filtered waveform is greatly attenuated.

BPFilter.jpg


Band pass filter running at a mid frequency - note that the amplitude of the filtered data closely matches that of the original waveform data.

BPFilter2.jpg


Band pass filter running at a high frequency - note that the amplitude of the filtered waveform is greatly attenuated.

BPFilter3.jpg

Downloadable macro reference

Filter

Performs the filter operation to the contents of the entire buffer in one go.

Parameters

This macro has no parameters


Return value

This call does not return a value


FilterTick

Performs the filter operation to the current value in the buffer.

Parameters

This macro has no parameters


Return value

This call does not return a value


Simulation macro reference

This component does not contain any simulation macros


Property reference

Buffer Manager

This property is of type Fixed list of ints and can be referenced with the variable name buffer_manager.

Determines which buffer manager component to refer to

Input

This property is of type Fixed list of ints and can be referenced with the variable name input_a.

Specifies the input buffer which will pass values into the filter

Output

This property is of type Fixed list of ints and can be referenced with the variable name output_c.

Specifies the output buffer which will store values from the filter

Type

This property is of type Fixed list of ints and can be referenced with the variable name type.

Specifies the filter type created by the component:

Low Pass - Filters out frequencies above the cutoff frequency

High Pass - Filters out frequencies below the cutoff frequency

Band Pass - Combination of High Pass and Low Pass Filters

Band Stop - Inverse of Band Pass

FIR - Finite impulse response using standard filter coefficients

IIR - Infinite impulse response using standard filter coefficients

Order

This property is of type Fixed list of ints and can be referenced with the variable name order.

No additional information


Coefficient A 0

This property is of type Floating point and can be referenced with the variable name co0.

No additional information


Coeffieient A 1

This property is of type Floating point and can be referenced with the variable name co1.

No additional information


Coeffieient A 2

This property is of type Floating point and can be referenced with the variable name co2.

No additional information


Coeffieient B 0

This property is of type Floating point and can be referenced with the variable name cob0.

No additional information


Coeffieient B 1

This property is of type Floating point and can be referenced with the variable name cob1.

No additional information


Sample Rate

This property is of type Floating point and can be referenced with the variable name sample_rate.

Sample frequency used to work out some basic useful calculations

Nyquist Frequency

This property is of type Floating point and can be referenced with the variable name nyquist.

Maximum theoretical frequency that can be obtained by the sample frequency

Cutt Off Frequency 0

This property is of type Floating point and can be referenced with the variable name cut_off_0.

First cutoff frequency