robot

Dependencies:   FastPWM3 mbed

Committer:
bwang
Date:
Wed May 03 13:27:12 2017 +0000
Revision:
147:c1b2379b8874
Parent:
146:296bcc30e65d
Child:
224:90172915d0fb
05/03/2017 09:26 - added use_median option to circular buffers (since average filters may not want to recalculate the median every sample)

Who changed what in which revision?

UserRevisionLine numberNew contents of line
bwang 144:a9e7fa1c98d7 1 #include "mbed.h"
bwang 144:a9e7fa1c98d7 2 #include "math.h"
bwang 146:296bcc30e65d 3 #include "Filter.h"
bwang 146:296bcc30e65d 4
bwang 146:296bcc30e65d 5 MedianFilter::MedianFilter(int length) {
bwang 147:c1b2379b8874 6 buf = new CircularBuffer(length, true);
bwang 146:296bcc30e65d 7 }
bwang 146:296bcc30e65d 8
bwang 146:296bcc30e65d 9 float MedianFilter::update(float x) {
bwang 146:296bcc30e65d 10 buf->add(x);
bwang 146:296bcc30e65d 11 return buf->median();
bwang 146:296bcc30e65d 12 }
bwang 146:296bcc30e65d 13
bwang 146:296bcc30e65d 14 MovingAverageFilter::MovingAverageFilter(int length) {
bwang 147:c1b2379b8874 15 buf = new CircularBuffer(length, false);
bwang 146:296bcc30e65d 16 }
bwang 146:296bcc30e65d 17
bwang 146:296bcc30e65d 18 float MovingAverageFilter::update(float x) {
bwang 146:296bcc30e65d 19 buf->add(x);
bwang 146:296bcc30e65d 20 return buf->mean();
bwang 146:296bcc30e65d 21 }