Using DFT to determine control system bandwidth from user input I am currently working on a race car project where steering and braking is to be done by a fully electronic x-by-wire system. To roughly determine the minimum bandwidth of the controllers, I took user + car data from an existing race car. I though I would do an FFT of the input signals to see what the 'user' bandwidth is, and let the controller sample time be at least 10 times this value.

As an example, this is what I did with the steering input:


I took the sampled time-series of the steering wheel angle, s(t), for 2 laps, and removed the mean value from the series.
I determined |s(t)|^2 to obtain a power-like quantity from the user input
An FFT was performed on the signal from step 2, and the bandwidth of this signal was determined. At first I was going to determine the half power bandwidth, but I quickly noticed the spectral components above 2 Hz were negligible so I took this as the 'user signal bandwidth'
From step 3, the min sample frequency for the steering input is 20 Hz as rule of thumb.


My questions are:


was I correct in thinking that an FFT of the input signal represents
how much input 'energy' is present at each frequency in the FFT?

does step 2 makes sense or should I skip it?
Am I correct in thinking the system will steer nicely if I sample the input signal at at least the frequency from step 4?
My grad prof asked me 'so an FFT of the steering input, what am I seeing here? What does this graph actually mean? Is the driver
actually turning the wheel at 1/3 Hz, what have you plotted?' and I
had no idea how to clearly answer this question. Any thoughts?



I am new to this forum so hope my questions are clear enough for you guys.

Thanks in advance for helping me out!
Your basic approach seems correct! However, step 2 is not a good idea since taking the square of the signal is a non-linear operation. Taking the square of the FFT to determine the signal power is correct though.

For your profs. question it depends on what you have measured and at which sample rate. I assume it is the steering wheel angle and therefore it should be possible to answer it, but there will be some pitfalls as most likely the steering movement is not in a sinusoidal form. However, the basic frequencies in the movement will be related to this.

Given that you redo the estimation without the squaring of the signal, the ten times safety margin should be more than enough.

To further convince you and your prof. I would suggest bandlimiting the measured data to your estimate by using a very sharp FIR filter and compare visually as well as downsampling the data and compare.