- 易迪拓培训,专注于微波、射频、天线设计工程师的培养
基于 STM32 的便携式振动信号检测仪器的研究
摘 要:机械设备振动所引起的故障不仅损坏设备本身,而且影响工业生产,造成经济损失,严重时损害人身安全。针对机械设备振动信号的检测,本文介绍了一种基于STM32F103Tx 芯片的振动信号检测仪器,对机械设备的振动信号进行检测、分析和处理的同时,还可将数据实时存储,以便进一步进行分析。该仪器体积小,性价比高。
1 引言
目前对机械设备振动信号进行检测一般采取的方案是“单片机 +A/D+ 工控机”,将传感器信号送入工业控制计算机,此方案对设备的振动信号进行了检测、分析和处理,达到了检测的目的。这种方案组合的缺点是需要一个 AD 芯片,由于存储容量的限制,需要将采集的数据传送到工控机上进行分析和处理,这也就导致了系统携带不方便。鉴于此,本文以煤矿主扇风机为研究对象,介绍了一种基于 STM32F103Tx 芯片的振动信号检测仪器,对采集的振动信号分析、处理、显示,并将数据通过STM32F103Tx 的SPI 接口保存到SD 卡内,方便对振动故障原因的进行进一步分析[1]。
2 硬件设计
系统硬件可分为底层信号采集、显示、存储和传输四大部分组成。系统硬件整体结构框图如图 1 所示.
STM32F103Tx 使用ARM Cortex-M3 32 位的RISC内核,主频为72MHZ,带有片内RAM,3 个定时器,通信接口有I2C、SPI、USB、CAN 各1 个,2 个USART, 2 个10通道的12 位同步ADC,1 μs 的转换速度,DMA 支持SPI、ADC、I2C 等。工作温度-40°C 至85°C,供电电压2.0至3.6V,在待机模式下最低功耗2 μA,STM32F103Tx 封装为VFQFPN36,体积小,低功耗且价格便宜。
底层信号采集部分:此部分由传感器和信号调理电路两部分组成。传感器把待测的振动参数转换成各种电参数,根据需要将电参数经过滤波、积分、微分、放大等信号转换过程得到不失真的幅度合适的电信号,送入 A/D 进行数据的采集[1]。采用 CD-21T 磁电式速度传感器,最大可测位移:±1mm,频率范围:10~1000Hz,线性度 5%。将 CD-21T 分别安装在风机前轴承位置处的机壳垂直和水平方向,以及轴承位置处的机壳垂直和水平方向[ 2 ]。由于传感器输出的是标准电流信号 4 -20mA,而 STM32F103Tx 内的 ADC 只能对电压信号进行采集,因此磁电式传感器输出的电流信号必须转换成电压信号,这就是信号调理电路的功能。信号调理电路将 4-20mA 的电流信号转换成 0-3.3V 的电压信号,然后送至 STM32F103Tx 的 A/D 输入端。
显示部分:当对采集到的信号分析处理后,需将数据显示出来。考虑到此仪器的便携性和低成本性,采用RCU6093W-B(102*65)液晶器件进行显示,该器件3.3V供电,在 STM32F103Tx 芯片的允许供电范围之内,且接口电路简单。
存储部分:如果需要对采集到的数据更进一步的分析处理,需要将数据存储起来。STM32F103Tx 提供了SPI 接口,且SD 卡支持SPI 总线模式的访问,传输协议和接口电路都比较简单。因此,存储设备选用 SD 卡。SD卡SPI 总线模式引脚定义如表 1 所示。
STM32F103Tx 通过 SD/MMC 卡座与 SD 卡连接,由于 SD 卡是 3.3V 供电,因此可与 STM32F103Tx 芯片直接连接,如图 2 所示.
传输部分:RS-485 总线具有抗干扰能力强,通信接口方便,传输距离远的特点。RS-485 在数据传输速率低于105bit/s 时,传输距离可达1200m 以上。 RS-485总线在实际应用中,在总线末端须接入两个电阻,阻值等于传输电缆的特性阻抗,其作用是为了对通信线路进行阻抗匹配。由于 RS-485 总线应用广泛,为了方便此设备与总线上的其他设备通信,因此,传输部分的功能 是实现 RS-232 与 RS-485 的转换。
3 软件设计
硬件电路设计完之后,下一步要做的就是系统软件的设计和开发。
为了达到完全同时检测垂直和水平两个方向的振动信号,因此程序中分别用两个 ADC 的第一通道进行采样。A D C 转换频率最高可达 1 M H z , 在通道转换期间, A D C 能产生 D M A 请求, 使 D M A 来传输 A D C 转换值,提高了数据传输的效率[3]。DMA 自动将采集数据保存到特定的数组中, 然后程序进行数据的滤波处理运算,最后在 RCU6093W-B 液晶上实时显示出来。若要进一步分析振动数据,需要将采集的数据通过 SPI 接口保存到 SD 卡内。程序主流程图如图 3 所示。其中初始化包括系统初始化,DMA、ADC 和 SPI 初始化。只要系统一上电,程序就会持续地开始采集、处理、显示及存储。
部分程序代码如下:
INIt();//
DMA_Init();//DMA 初始化
SPI_Init();
ADC_Init();// 两个ADC 的初始化
ADC_Start();// 开启ADC
While(1)
{
Filter();//滤波运算
Display();//显示数据
SD_Write();//写入SD 卡内
}
4 结束语
本文介绍了一款基于STM32F103Tx 芯片的振动信号检测仪器,对振动信号进行采集,分析、处理和显示的同时,还可将采集数据通过SPI 接口保存到 SD 卡内,以便更加详细的分析振动原因。由于STM32F103Tx 供电电压范围在2.0 至 3.6V 之间,且RCU6093W-B(102*65)液晶和 SD 卡的供电电压都是3.3V,因此可用电池为仪器供电。该仪器体积小、携带方便、成本低廉,易于推广。该型振动检测仪已经在一些煤矿的主扇风机监控中得到应用,使用结果表明系统稳定,检测数据准确[4]。
参考文献:
[1] 于洋,杨金英.机械振动检测仪器的研制[J].仪表技术与传感器,2008,(9):35-36.
[2] 沈建明,王启立,刘颀.通风机性能在线监测振动器数据分析[J].江苏煤炭,2004,(1):31-32.
[3] 唐伟,于平,李峥辉.STM32F103x 的USB 多路数据采集系统设计[J].单片机与嵌入式系统应用,2009,(8):39-41.
[4] 任子晖,姚正华.基于PLC 和组态软件的矿井主扇风机监控系统[J].自动化技术与应用,2007,26(9):77-78.
作者简介:姚正华(1982-),男,助教,硕士,主要从事电工电子技术和计算机测控技术方面的教学研究工作。
上一篇:使用存储卡的井下存储式电子压力计
下一篇:智能型热性能参数测量仪