基于MEMS 的微弱振动信号检测系统设计

2023-09-27 10:42郑秋晨吴银川
电子制作 2023年19期
关键词:上位串口加速度

郑秋晨,吴银川

(西安石油大学 陕西省油气井测控技术重点实验室,陕西西安,710065)

0 引言

振动是各种机械系统工作过程中经常发生的现象,振动信号可以反映系统的工作状态以及系统的健康水平[1~2],发现系统故障以及时处理。在仪器机械设备工作过程中,对振动信号进行实时的检测和分析对提高系统的生产力和安全维护都十分重要。

振动信号相关的物理量包括加速度、速度和位移等,由于测量加速度具有方便、经济的优势,工程上通常通过测量加速度测量振动信号[3~4]。目前常用的加速度传感器有压电式、压阻式和电容式[5]。压电式加速度传感器和压阻式加速度传感器都属于惯性式传感器,惯性式加速度传感器电路复杂且成本较高,而电容式加速度传感器具备高阻抗、小功率、结构简单、稳定性好、可以实现非接触性测量等优点[6~7]。本设计选择的MEMS 三轴加速度传感器ADXL345 是电容式加速度传感器,同时,ADXL345 采用了MEMS 工艺,还具备体积小、精度高、性能稳定、使用方便等优点[8]。

本文基于MEMS 传感技术,设计了一种针对微弱振动信号的检测与处理系统。阐述了系统实现微弱振动信号检测的原理,介绍了系统的硬件设计和软件设计,测试并分析了在全分辨率模式下的微弱振动信号的检测结果,基于上位机检测结果,总结并分析了系统的性能和可扩展性。

1 系统结构与功能特性

整个系统由MEMS 传感器模块,单片机模块,串口/USB 通信模块,上位机,系统电源模块构成,其结构框图如图1 所示。其中单片机是整个系统的核心,单片机一方面接收上位机的命令实现MEMS 数据控制,另一方面将接收来自MEMS 传感器的振动数据上传至上位机;MEMS 传感器一方面通过SPI 数字接口接收单片机的指令,另一方面根据上位机的指令配置寄存器进行振动数据测量;上位机通过串口/USB 通信模块实现对MEMS 传感器的在线参数配置、命令下发、振动数据接收以及波形绘制等功能;系统电源模块分别对串口/USB 通信电路、单片机、MEMS 传感器提供+5V、+3.3V、+3.3V 的电源进行供电。

图1 系统结构框图

MEMS 传感器模块使用ADXL345,该传感器分辨率高,加速度测量范围有±2g,±4g,±8g,±16g。传感器内部集成A/D 转换电路和数字滤波器,模拟量转换为数字量后进行数字滤波存储在FIFO 中,输出数据为16 位二进制补码格式,可通过的标准SPI 数字接口和外部设备通信。传感器设有多种功能寄存器,数据以十六进制形式存储,通过读写寄存器内的存储值对系统的功能参数进行调整。传感器采样速度在6.25~3200Hz 之间可调,低采样速率可以降低噪声干扰,本设计将采样速度设定在100Hz。

2 系统硬件接口设计

■2.1 MEMS 传感器接口设计

本系统中单片机模块使用STM32F407,利用四线SPI实现单片机和MEMS 传感器的全双工数据通信,系统中配置单片机为主设备,配置ADXL345 为从设备。MEMS 传感器的接口设计如图2 所示,其中SCLK 为主设备提供的时钟,/CS 为主设备提供的选择的使能信号,MISO 为主设备输入从设备输出数据,MOSI 为主设备输出从设备输入数据,INT1 引脚会向单片机提供中断信号。当/CS 为低电平时,主从设备之间才能进行全双工通信。

图2 MEMS 传感器接口设计

■2.2 串口转USB 接口设计

数据通信模块通过串口/USB 实现加速度数据测量和采集系统与计算机的通信,将单片机存储器内采集的振动数据读取到计算机中[9]。如图3 所示,系统使用异步串口UART连接标准,计算机通过CH340 芯片进行USB 转串口,与单片机的串口相连,实现数据通信,三者之间的数据通信速率统一配置为115200bps。

图3 串口转USB 接口设计

3 系统软件设计

■3.1 软件总体设计

本系统软件设计主要分为下位机软件设计和上位机软件设计。下位机使用C 语言编程,主要围绕振动数据的测量和采集功能进行设计,上位机使用软件Visual studio 进行C#语言编程,主要对MEMS 数据接收、MEMS 命令下发、振动数据处理、波形绘制等功能进行设计。

系统软件总体流程如图4 所示。首先系统上电后进行下位机的初始化,包括单片机初始化和MEMS 传感器初始化;初始化完成之后单片机通过串口与上位机建立通信,上位机在检测到串口打开后成功与下位机建立连接,此时上位机界面不会接收振动数据;接着上位机下发数据采集指令,单片机接收到指令后上传振动数据,上位机界面才会出现振动数据和波形;最后通过上位机对数据和波形做进一步处理。

图4 系统软件总体流程图

■3.2 单片机程序设计

3.2.1 主程序流程设计

单片机的一次上传数据的主程序流程如图5 所示。单片机上电后首先完成单片机和ADXL345 的初始化,当 MEMS 数据在FIFO 中更新完成时,读取中断标志位,INT1 会产生一个下降沿的中断,此时单片机会读取MEMS 数据并发出指令将FIFO 数据清除等待下一次数据的更新,接着等待上位机发送采集指令,单片机接收到指令后开始上传数据。

图5 单片机主程序流程图

3.2.2 SPI 接口程序设计

单片机通过SPI 接口读写MEMS 数据的基本流程如图6 和图7 所示。当/CS 拉低时单片机和传感器的通信开始,接着单片机通过状态寄存器来判断缓冲区是否有数据,等待缓冲区没有数据时执行读、写操作,读、写操作同时进行,向寄存器写入数据的同时会接收到数据,当/CS 拉高时,通信结束。

图6 写MEMS 配置流程图

图7 读MEMS 数据流程图

■3.3 上位机软件设计

3.3.1 软件界面设计

本文主要使用C#语言在Windows 系统下配合Visual Studio 开发环境,开发Winform 桌面应用程序,实现微弱振动信号检测系统软件部分的开发[10]。上位机软件界面设计框图如图8 所示。根据系统所需要的功能将软件界面的区域划分为串口配置区域、参数配置区域、数据接收区域以及波形绘制区域等。

3.3.2 软件流程与功能设计

上位机软件流程如图9 所示。首先通过上位机打开串口,打开成功后和下位机建立联系,接着上位机下发数据采集指令进行数据接收,最终显示振动数据和振动波形。同时,软件还可以实现数据保存、数据回放、图像缩放等功能。

图9 上位机软件流程图

4 检测系统测试

根据系统硬件设计完成硬件平台的搭建,打开Visual studio 绘制的软件界面,硬件平台与上位机软件连通成功后进行测试。令三轴加速度分别为ax、ay、az,则合成加速度,同时绘制出合成加速度波形。打开串口后在下拉框中选择系统的感应加速度范围为±2g,系统的测试结果如图10 所示。

图10 系统测试结果

图10 中,数据接收框从左至右依次是x 轴、y 轴、z 轴加速度值,在21 时14 分06 秒时,系统检测到z 轴振动的负方向最大值1.9968g,其峰值接近2g,表明系统可以检测到±2g 范围内三个轴的振动信号,并且此时系统的感应精度为3.9mg/LSB,在21 时13 分39 秒时,系统检测到x 轴振动负方向的最小值为0.0039g。传感器的量程为-2g~+2g,输出数据位数为10 位,2 的10 次方共1024个LSB。感应精度的计算过程如式(1)所示:

此时系统对微弱振动信号的检测能力最强,接收灵敏度最高。在实际应用中,可以对机械设备的振动状况进行多次测试,来配置合适的加速度感应范围,从而达到不同级别的微弱振动信号检测的目的。

5 结论

本文设计了一种基于MEMS 传感器的微弱振动信号检测与处理系统,完成了振动数据接收、振动波形绘制、振动波形回放等功能,经测试表明,系统可以检测到±2g 范围的振动信号,最小精度达到3.9mg/LSB,满足机械设备振动检测的工程要求。同时,本设计利用上位机软件可以对振动数据和振动波形进行存储、再现以及波形的缩放,为进一步机械设备振动的分析与处理提供基础。

猜你喜欢
上位串口加速度
“鳖”不住了!从26元/斤飙至38元/斤,2022年甲鱼能否再跑出“加速度”?
浅谈AB PLC串口跟RFID传感器的通讯应用
天际加速度
创新,动能转换的“加速度”
死亡加速度
特斯拉 风云之老阿姨上位
“三扶”齐上位 决战必打赢
基于ZigBee和VC上位机的教室智能监测管理系统
USB接口的多串口数据并行接收方法探索
基于蓝牙串口适配器的GPS接收机与AutoCAD的实时无线通信