FFT idea for Displacement Measurement

Displacement Measurement任务核心:利用加速度计、陀螺仪(加速度和陀螺仪数据)来计算位移。

Origin Paper Reading

原始思路:核心:计算倾角θ。假设:底部固定,只发生上部的形变。

计算倾角使用:加速度和陀螺仪来计算,二者的计算结果结合,通过参数α来调节。

在获取加速度数据前,先通过低通滤波器滤除震动噪声;获取角加速度前,先通过高通滤波器滤除漂移。

image-20201027201049406 image-20201027201103750

Idae: Using FFT to calculate Displacement

一时域信号x(t),设其样本长度为T。则其傅里叶变换为$X(f)=\int_{0}^{T}x(t)e^{-j2\pi ft}dt$。

信号x(t)被采集(即采样)后,变为离散形式$x(nt_s)$,$t_s$为采样周期。设在T时间内采样了N个数据,就有:

  • $$X(k)=\sum_{n=0}^{N-1}x(n)e^{-j(\frac{2\pi}{N})nk}$$

其对应的傅里叶反变换为:

  • $$x(n)=\frac{1}{N}\sum_{n=0}^{N-1}X(k)e^{j(\frac{2\pi}{N})nk}$$

傅里叶变换后得到的X(k)是一个长度为N的离散复数序列。其第k个数据为:

$$X(k)=X(k/T)=a_k+jb_k$$

其代表了x(t)中频率为k/T的简谐运动分量,该分量用$x_k$表示。应有:

$$x_k=A_k\cos{(2\pi kt/T + \phi_k)}$$

其中$A_k=\sqrt{a_k^2+b_k^2}$为其幅值,$\phi_k=arctan(b_k/a_k)$为其相角。

运动台产生的应为一系列简谐运动的叠加,假设通过建筑物系统后仍为一系列简谐运动的叠加(看成时不变系统,如果有这个性质最好了,滤波就很方便,需要一些结构方面知识来确认),那么可以方便的滤除非明显频点的幅值,来降低噪声。若没有此性质,目前初步计划是使用一个低通滤波来滤除噪声(同原始论文)。

假设我们收到了加速度信号a(n),对其使用傅里叶变换,得到:

$$A(k)=\sum_{n=0}^{N-1}a(n)e^{-j(\frac{2\pi}{N})nk}=u_k+jv_k$$

设真实的位移(Displacement)序列为d(n),傅里叶变换后为D(k)。D(k)自然也能也成简谐运动的形式。根据加速度和位移是积分的关系。

若加速度为$a = Acos(\omega t+\phi)$,则位移$x=\int\int adt=\frac{A}{\omega^2}cos(\omega t+\phi-\pi)$。

直接可得

$$d_{1k}=\frac{A_k}{\omega_k^2}cos(\phi_k-\pi)$$

$$d_{2k}=\frac{A_k}{\omega_k^2}sin(\phi_k-\pi)$$

其中$A_k=\sqrt{u_k^2+v_k^2}$,$\phi_k=arctan(v_k/u_k)$,$w_k=2\pi k/T$。

而$D(k)=d_{1k}+jd_{2k}$。这样我们就得到了D(k),再将D(k)做傅里叶反变换即可得到d(n)。即一段时间内的位移情况。

TODO:

  1. 测试此方法。
  2. 思考如何引入角加速度的信息。