关注公众号

关注公众号

手机扫码查看

手机查看

喜欢作者

打赏方式

微信支付微信支付
支付宝支付支付宝支付
×

压电MEMS超声波换能器设计(二)

2020.10.26

当微控制器设置SR锁存器时,飞行时间(ToF)功能启动,SR锁存器开始在采样保持积分器上累积电荷。同时,微控制器按PMUT设计的谐振频率产生一系列脉冲(122kHz)。因为核心电源电压为2.5V,而根据PMUT的要求必须升高至32V,所以使用电荷泵DC-DC转换器和数字电平转换器将脉冲放大至32V。换能器接收到信号脉冲,在罐体中产生压力波,并在液体界面处反射回来(图6)。

PMUT探测到该反射波后,在膜上产生峰值幅度约为500μV的电压信号,该信号的延迟时间取决于压力波传播到液位顶部所需的时间和反射回PMUT的时间。

设计选用的仪表放大器的增益为70dB,放大器将PMUT信号放大并将其反馈至施密特触发器。施密特触发器内置有迟滞功能,当放大的反射信号上升到阈值电压(VREF)1.25V以上时,会将SR锁存器复位。锁存器复位时还会锁定采样保持积分器,在压力波穿过罐体中的空气层并返回到PMUT所需的时间内,该采样保持积分器已在其输出电容器上累积了电荷。在微控制器之前的ADC会将积分器的输出电压转换成到数字信号,该数值与飞行时间线性相关,并且可通过减法来计算罐内的液位。

执行初始系统仿真

启动仿真时,S-Edit先创建完整的Verilog-AMS网表并将其传递给T-Spice。T-Spice自动添加模拟/数字连接模块,然后对设计进行分区仿真。T-Spice对SPICE和Verilog-A进行模拟仿真并将RTL发送到ModelSim进行数字仿真。两个仿真器都能自动调用,并且在仿真过程中,只要模拟/数字边界发生信号变化,信号值就会在仿真器之间来回传递。这意味着,无论设计使用何种语言,设计人员都可以从S-Edit驱动仿真,并且设计会在仿真器之间自动分区。然后,设计人员可以使用ModelSim和T-Spice波形查看器进行结果交互。图7显示了仿真的结果。

第一个绿色波形显示为频率在122kHz的高压脉冲。接下来,PMUT响应大约发生在初始脉冲后1.2ms,红色波形显示其在仪表放大器的输入。假设空气中的声速为343m/s,这相当于液位在低于满位的21cm处。第三个紫色波形显示为SR锁存器的输出,当PMUT输出电压超过400μV(放大之前)时被触发。最后蓝色波形显示为积分器的输出,输出先随电压的线性增加,直到SR锁存器触发使积分器保持。通过8位ADC将输出转换为数字信号,然后发送到微控制器计算液位。对于此设计,假定罐体总深度为2.1m。然后可以计算出最大的飞行时间为12.2ms,随后对应产生积分器输出为2.17V。这与设计所选ADC的最大输入电压(2.2V)接近。对于不同尺寸的储存容器,仪表放大器的增益可以相应调整。

开发软件

在微控制器上运行软件,包括代码,并周期性地将传感器的输出转换为液体深度,并向监控系统报告任何显著的液位变化。假设积分器和ADC近似线性相关,则可以使用线性斜率和截距将ADC的输出转换为时间。这些值先仿真,然后通过测量模拟仿真结果进行验证。用飞行时间乘以空气中的声速(343m/s)可转换为空气的高度。最后,液位即为总罐体深度减去空气的高度。

执行实际的系统仿真

因为我们已经验证了MEMS换能器,并且我们希望能显著节省仿真时间,我们使用Verilog行为模型来替代传感器(图8),该模型使用离散的仿真时间代替连续模拟采样来进行数据采样。

该模型与模拟传感器行为非常匹配,为了更快地系统仿真,每隔1μs进行数据采样,尽管ADC每次转换需要12μs。图9显示了系统的仿真结果。记录栏(A)显示液位变化警告,波形(B)显示与泄漏对应的液位和声传感器值。系统大部分仿真时间处于休眠状态,定期醒来获取深度读数(C)。

下一步

接下来的步骤就是完善系统为其充实模拟部分,比如添加RF收发器、通信模块和设备ID以便连接到Internet。另外,为系统和Web开发复杂的软件,以拓展更多的可能性,包括潜在的:双向通信(指导系统行动)、无线软件更新、预防性维护和云服务。我们也可以更进一步,为系统添加温度传感器,以更好地校准测量结果。


推荐
关闭