Info about Talos acceleration filters

85 views
Skip to first unread message

Tommi

unread,
Dec 6, 2012, 12:44:53 PM12/6/12
to talos-...@googlegroups.com
I'm trying to validate the data aquired using Talos, I need to know what filter the application apply to raw sensor values. Is it a simple low pass? We are studying and comparing different tipe of filters... I'll keep you up to date.

Thanks

Tal Shalif

unread,
Dec 6, 2012, 11:33:33 PM12/6/12
to talos-...@googlegroups.com
http://nargila.org/trac/robostroke/wiki/DeveloperGuide may be useful - it contains a diagram of the application components. Low pass filters are used in numerous places. Usage search for the LowpassFilter class will give you the precise locations. Examples of low pass filter usage:

  • Gravity filter - to stabilize 'down'
  • HalfSinoidDetector and StrokeScannerBase - used to detect significant rowing activities and to filter-out rowing 'noise'

On 7 December 2012 02:44, Tommi <tommaso...@gmail.com> wrote:
I'm trying to validate the data aquired using Talos, I need to know what filter the application apply to raw sensor values. Is it a simple low pass? We are studying and comparing different tipe of filters... I'll keep you up to date.

Thanks

--
You received this message because you are subscribed to the Google Groups "talos-rowing" group.
To view this discussion on the web visit https://groups.google.com/d/msg/talos-rowing/-/l3e6aiorB9EJ.
To post to this group, send email to talos-...@googlegroups.com.
To unsubscribe from this group, send email to talos-rowing...@googlegroups.com.
For more options, visit this group at http://groups.google.com/group/talos-rowing?hl=en.

Tommi

unread,
Dec 16, 2012, 3:52:05 PM12/16/12
to talos-...@googlegroups.com

After some tests (about finding what filters configuration works better) we found that, the data collected using Talos could be more accurate using other type of filters:

1)An orientation filter works well if it is capable of dynamically calibrate itself, the dynamic of a single is very different from quads and doubles as well, this differences affects longitudinal acceleration measurement especially in singles and doubles (due to a more unstable hull: singles and doubles are quite prone to produce high pitch angles and this is done by big rotational acceleration along longitudinal axis of the boat). The task should be to minimize the use of constant low pass filters: they cut off too much information and they are not able to filter high frequency acceleration along longitudinal axis. Low pass can be replaced (or minimized as much as possible) by a filter that uses real time data about pitch to determinate "real linear acceleration" in longitudinal axis of the boat. This type of filter could be a very important development in our opinion. Talos should use pitch of the boat to filter acc in longitudinal axis. Is it possible to create something like that??
2)We found that high frequency vibration and acceleration of the hull are not filtered (stroke rate mesurement is afflicted by erratic errors created by these patterns of accelerations), we used complex filters to cut them off and at the moment we couldn't suggest you nothing useful for Talos... Stay tuned =)
3)Have you ever tried to use moving average filters instead of low pass? We'll send you our conclusions about this after next week tests.

Thanks!

Michael Hosemann

unread,
Dec 16, 2012, 4:09:16 PM12/16/12
to talos-...@googlegroups.com
Hi All,

just a few very general comments about filters and keeping time in Talos Rowing. Unfortunately I have not had enough time recently to spend much on working on Talos Rowing but maybe this helps.

As I understand it (Tal, please correct me if that is wrong) acceleration data are produced by the sensors and delivered with a time stamp to the application. The data are then filtered in various ways but the timestamps are not taken into account. Each sample is treated the same. For typical filters in a signal processing sense it is required that samples are spaced at equal distances in time. Otherwise, no specific filter frequencies can be set. There are ways around that, like resampling the samples considering their respective timestamps.
A low-pass filter is a filter that attenuates frequencies above a certain threshold. The amount of frequency-dependent attenuation depends on the type of filter. A moving average is a low-pass, too. Just a rather simple one but with a not very nice frequency response. More effective filters can easily be designed.

So if we know the frequencies of noise and vibration and our signal of interest, we can design filters that help extracting the relevant information. We e.g. know the stroke rates that we want to sense, They are in the order of 10 to 50 strokes/minute. Assuming we want some idea of the shape of the acceleration, e.g. to evaluate boat check, we need to pass multiples of that frequency as well. So a low pass filter with a cut-off of about 5Hz might be a good starting point for getting rid of vibration. Of course that will need some fine-tuning. 

We could also use parallel filters that extract different frequency components for different purposes or search for certain patterns in the signal, e.g. the acceleration after the catch.

There is a free tool called Octave which allows for experimenting with such algorithms. It is a free clone of Matlab which is widely used for development of signal-processing algorithms. But it requires quite a bit of a learning curve as it is essentially a new programming language to learn.

Hope that helps,
Michael


--
You received this message because you are subscribed to the Google Groups "talos-rowing" group.
To view this discussion on the web visit https://groups.google.com/d/msg/talos-rowing/-/R-92Na2xz2UJ.

tshalif

unread,
Apr 7, 2013, 2:39:18 PM4/7/13
to talos-...@googlegroups.com
With sensor update frequency set now to 1/50ms, the data is less jittery. As for the timestamp question (and apologies for the long delay) - Now with the 1/50ms fixed delay, the items are as good as timestamped, but there is less data to look at.. This can be changed in the future when/if there will be code doing fine analysis.
Reply all
Reply to author
Forward
0 new messages