# LOWPASS

NAME
SYNOPSIS
FUNCTIONS
PINS
PARAMETERS
NOTES

## NAME

lowpass − Low-pass filter

## FUNCTIONS

lowpass.N (requires a floating-point thread)

## PINS

lowpass.N.in float in
lowpass.
N.out float out

out += (in - out) * gain

When TRUE, copy in to out instead of applying the filter equation.

## PARAMETERS

lowpass.N.gain float rw

## NOTES

gain pin setting

The digital filter implemented is equivalent to a unity-gain continuous-time single-pole low-pass filter that is preceded by a zero-order-hold and sampled at a fixed period. For a pole at -a (radians/seconds) the corresponding continuous-time lowpass filter LaPlace transfer function is:

H(s) = a/(s + a)

For a sampling period T (seconds), the gain for this Hal lowpass component is:

gain = 1 - e^(-a * T)

e = 2.71828 https://en.wikipedia.org/wiki/E_(mathematical_constant)

Examples:
T = 0.001 seconds (typical servo thread period)
a = (2*pi*100) (100Hz bandwith single pole)
gain = 0.466

T = 0.001 seconds (typical servo thread period)
a = (2*pi*10) ( 10Hz bandwith single pole)
gain = 0.0609

T = 0.001 seconds (typical servo thread period)
a = (2*pi*1) ( 1Hz bandwith single pole)
gain = 0.0063