MEMS传感器中的解调方式
MEMS传感器需要将物理量转换为电信号,然而转换获得电信号通常是正弦波且不能直观的反应物理量的变化,需要通过解调来获得相应的信号。目前都有哪些解调方式呢?
从传感器的驱动模态来看,通常需要将传感器的一个自激或者锁相环闭环振荡,因此对于驱动模态,主要解调的作用是获取振荡信号的幅值和相位用于闭环控制。目前主流的解调方式有以下几种:
1. 绝对值解调,在模拟电路中通常称之为全波整流,将正弦波的下半周期搬到上半来,获得其整个周期的均值幅值,显然的该方法只能获得幅度而不能获得相位。解调输出的幅值为\[A_{out}=\frac{2}{\pi } A_x\]
2. 乘法解调,最为经典和常用的解调方法,正弦波乘以同频同相位和同频正交相位的信号,低通滤波后获得成分,进行计算即可获得幅度和相位。解调输出为:
\[cx=LPF[(sin(\omega t+\phi)*sin(\omega t)]\]
\[sx=LPF[(sin(\omega t+\phi)*cos(\omega t)]\]
\[A_{out}=2\sqrt{cx^2+sx^2}\]
\[\phi=-atan\frac{sx}{cx}\]
3. LMS解调,最小均方根解调,LMS 通过迭代算法自动调整权重,使估计信号逼近输入信号,从而提取出特定频率的幅值和相位。
$$\hat{y}(t)=w_{1}(t) \cos \left(\omega t\right)+w_{2}(t) \sin \left(\omega t\right)$$
$$e(t)=y(t)-\hat{y}(t)$$
使得误差最小来获得w1和w2的估计。
\[A_{out}=\sqrt{w_1^2+w_1^2}\]
\[\phi=-atan\frac{w_1}{w_1}\]
4. 卡尔曼滤波解调,其本质是将解调问题转化为一个最优状态估计问题。与 LMS类似,我们的目标是求出信号的同相分量 和 正交分量 。但与 LMS 使用固定的步长 不同,卡尔曼滤波会根据当前的噪声水平和估计的不确定度,动态调整“步长”K矩阵。
$$x_k=\left [ \begin{matrix} A_k\\B_k \end{matrix} \right ] $$
获得的状态向量矩阵,同样也是通过平方和的开方和反tan运算获得幅度和相位。
5. 滑模解调,与LMS 类似,都是通过不断修正估计值来逼近真实值。但两者有一个本质区别:LMS 根据误差的大小成比例地调整(软调整)。SMO 根据误差的符号(正或负)以恒定的力度进行调整(硬开关)。
$$\dot{\hat{A}}(t)=K \cdot \operatorname{sgn}(e(t)) \cdot \cos (\omega t) $$
$$\dot{\hat{B}}(t)=K \cdot \operatorname{sgn}(e(t)) \cdot \sin (\omega t)$$
根据误差的符号来开关更新估计值,存在抖振现象,不加滤波的话解调效果肯定不如LMS和卡尔曼解调。
评论
发表评论