Hello,
I hope I am posting this in the correct section, I have searched around the forum to see if this has been discussed, but was not able to find anything.
I have recently finished a sim project of a 6dof platform using 3.8kw AC servo motors and 700mm stroke actuators that have a maximum speed of 1m/s.
The platform is finished and it is being controlled by a simple program I wrote that takes the information from X-sim as shown in the manual, and calculates the reverse kinematics and sends the position to each actuator.
The problem I am having is because the actuators are so responsive, small impulses in say the longitudinal force are causing the platform to tilt very rapidly.
I would like to pass all the low frequency/sustained accelerations to pitch and roll and pass all the high frequency accelerations to surge and sway.
I used the example math plugin provided in the install directory and was able to compile it, so then I included an FFT library "FFTW3". For those of you that don't know what FFT is, it is a Fast Fourier Transform that approximates a periodic signal into sin and cos functions and converts the signal into the frequency domain, then you can remove unwanted frequencies and perform and Inverse FFT to obtain the real data with the unwanted frequencies removed to send to the platform. The problem I am having is X-sim is only providing ~ 96 calculations/s because the FFT needs a fairly large portion of real data points before the FFT can be performed, the delay is much too great, if I reduce the amount of points in the FFT it is not very accurate.
I have read about SDFT's which perform a DFT every time a new sample comes in. Rather then performing the entire DFT the old and new sample are rotated in a circular buffer which is much faster. I won't go into the detail of this as someone that can help me will know how this works.
Has anyone been able to perform high and low pass filtering to the signal using a math plugin?