中国电子技术网

设为首页 网站地图 加入收藏

 
 

通过利用MSP430单片机和SD卡存储器实现水下压力信号采集系统的设计

关键词:MSP430单片机 SD卡存储器 信号采集系统

时间:2022-01-04 15:12:35      来源:微计算机信息

水下压力信号的测量具有重要的军事意义。传统的信号采集主要是在船上拖电缆,将信号传送至PC机,这种测量方式只能在海况较好的情况下进行,海况较差时,此方法危险性高、难度大。本文采用MSP430微功耗单片机结合SD卡存储器设计的采集系统具有精度高、功耗低、存储容量大、写入的文件能被Windows操作系统读写等特点,实测试验表明该系统功耗低、精度高、性能可靠和易于操作,解决了海上测量危险性大,难度高的问题。

作者:李楠,胡世安,韩威

水下压力信号的测量具有重要的军事意义。传统的信号采集主要是在船上拖电缆,将信号传送至PC机,这种测量方式只能在海况较好的情况下进行,海况较差时,此方法危险性高、难度大。本文采用MSP430微功耗单片机结合SD卡存储器设计的采集系统具有精度高、功耗低、存储容量大、写入的文件能被Windows操作系统读写等特点,实测试验表明该系统功耗低、精度高、性能可靠和易于操作,解决了海上测量危险性大,难度高的问题。

1 系统硬件设计

信号数据采集系统主要由传感器、信号调理电路、模数转换、控制电路、SD存储器及电源电路等组成。系统原理框图如图1 所示。


图1 系统原理框图

1.1 信号调理电路

信号调理电路主要用于阻抗匹配、信号放大、电平转换以及低通滤波等。阻抗匹配电路主要由电阻分压器、电压跟随器和低通滤波组成,调理电路如图2所示。


图2 信号调理电路

由于传感器输出的是0-5V 的信号,而后续电路的供电电压为3V,因此必须将传感器输出信号转换到0-3V 以内,考虑到传感器输出阻抗较小,选用两个相同电阻串联对传感器输出信号1/2 分压,分压电阻为10k。经分压后的水压场信号输出电阻很大,为不影响下一级电路,利用电压跟随器进行阻抗匹配。滤波电路采用二阶有源低通KRC 滤波器,由于本测量的主要目的是获得慢变压力信号,低通滤波截止频率为 0.4Hz,系统采样频率为1Hz。放大器芯片选用集成了两个放大器的OP281,该放大器具有低功耗、高精度、单电源供电的特点,每个放大器工作电流最大为5 A ,在其电压噪声峰-峰值为10μV 。以100m 满量程的压力传感器为例,经过分压后,每1mm 水柱产生的电压为25μV ,因此,放大器噪声满足测量要求。

图2中低通滤波器的传递函数为:

其幅频曲线和延迟特性分别如图3和图4所示。从图3中可以看出,幅值特性在0.2Hz以下具有较好的平坦性,且偏差较小。从图4中可以发现,在通带0.4Hz 以内,延迟偏差较小,0-0.2Hz 延迟偏差为0.102s。


图3 滤波器幅值特性


图4 滤波器延迟特性

1.1 微处理器

1.2 模数转换

AD7799是ADI公司推出的24 bit ΣΔADC,2.75-5.25V单电源工作,典型工作电流380μA,电压噪声有效值最低仅27nV。AD7799 带有三路可选择的差分输入缓冲器(可以接缓冲器或不接缓冲器),输出数据数率可以由软件设置,允许速率为4.17-470Hz。它在16.6Hz 默认转换速率条件下,能提供50Hz和60Hz的同步抑制,适合用于低频测量的低功耗模拟前端。AD7799与 MSP430F1611的数字接口电路如图5所示。


图5 AD7799与MSP430F1611的数字接口电路

AD7799 通过SPI 串口与单片机进行连接,这里使用的是3线方式,串行同步时钟SCLK、数据输入线DIN 和数据输出DOUT/RDY管脚与单片机进行连接。片选信号CS由单片机P3.0 端口单独控制。MSP430 通过SPI 读写AD7799 中各个寄存器的数据,读写过程CS 应保持为低电平。

1.3 存储模块

为使数据采集系统能记录较长时间的被测物理量,数据存储器应具有较大的容量和较低的功耗。同时为与现场环境下的采样频率相匹配,对数据存储器的读写速度也有相应要求。本系统采用SanDisk公司生产的SD卡(容量2G),SD卡具有高容量、高性能和安全性高等特点,其工作电压为2.7-3.6V。SD卡工作在SPI 模式,其SPI 接口利用SD 卡的CS、SCLK、DATAIN 、DATAOUT 与MSP430 进行通信,其中,DATAIN 和DATAOUT 是数据的输入和输出信号线,CS是SD片的片选信号线,在整个SPI 操作过程中,CS 必须保持低电平有效,SCLK是外部控制器提供的时钟信号。SD 卡与MSP430F1611 的接口电路如图6所示。


图6 SD卡与MSP430F1611的接口电路

2 系统软件设计

本系统软件设计主要是单片机系统软件设计。MSP430的内核CPU结构是按照精简指令集和高透明指令的宗旨来设计的,因此单片机开发采用专门用于MSP430 系列单片机而设计集成开发环境IAR Embedded Workbench,编程采用C语言。单片机程序执行流程图如图7所示。为便于采集数据后的读取,SD卡文件系统格式选用FAT16 文件格式。由于SD卡按照FAT16文件格式创建文件时时间稍长,若在采集过程中,创建文件,则后续数据容易丢失,因此在程序初始化后即创建文件,文件创建完毕后,MSP430工作于LPM3模式,定时器开始计时,待定时时间到,使能AD7799,AD转换后的数据先放到MSP430F1611存储器中,待达到512个字节后将其按扇区编程写入SD卡中。数据采集结束后,Windows操作系统通过读卡器将数据读入到PC机。


图7 单片机程序执行流程图

3 试验验证

为检验该采集系统的性能,分别从硬件功耗和实测试验对其进行检验。

3.1 功耗测试

这里功耗测试主要是针对采集系统,测量期间,传感器单独供电。采集系统供电电源为锂电池(3.6V),在电源上串接一个10欧姆的电阻R1,利用16位采集卡(PCI-1716)测量系统工作时R1两端的电压差,采样频率为1KHz,从而得到系统得电流变化,其系统电流变化如图8所示。图8 系统电流变化

从图8中可发现,电流呈现出周期变化,这是由于单片机工作不断在运行模式和低功耗模式转换所引起的,低功耗模式下,系统电流平均值为2.3mA,每秒中所占比例为69.8%,运行模式下,系统电流平均值为3.1mA,因此1s中系统工作的平均电流为:

3.1× 69.8%+ 2.3× 30.2% = 2.8814mA (6)

即功耗为10.4mW。以3.6V、1A/h 锂电池为例,可以使本系统连续工作14d。

3.2 实测试验

为检验本系统的性能,以水压信号采集为例,水压传感器使用压阻式绝压传感器,供电电压8-32V,最大测量水深70m,满量程输出5V,AD7799转换频率为16.6Hz,此时峰-峰分辨率为19位。本系统采用锂电池供电,共使用2组电池,分别为14.4V和3.6V,14.4V电源给传感器供电,3.6V经电压转换成3V后给AD7799、MSP430F1611及SD卡供电。实测试验数据为实验室环境下测得,试验水深为10m,其静压力约为10KPa,在100s时刻突然向加水5cm(约为500Pa),其波形图如图9所示。为从图9中可以看出,在10m静水深条件下,该系统成功测量到水面5cm的动压压力变化,测量精度较高,满足要求。图9 实测压力数据

4 结论

本文采用MSP430F1611微功耗单片机结24位A/D转换芯片AD7799和SD卡设计的采集系统具有精度高、功耗低、存储容量大等特点,解决了水下测量系统的低功耗和大容量存储两大难题,功耗测试及实验室实测压力结果表明,该系统功耗低、精度高、性能可靠。海上试验以进一步验证该系统得性能将是下一步工作的重点。

本文作者创新点是: 为了采集并存储压力信号,提出了基于MSP430单片机和SD 卡存储器的压力信号数据采集与存储系统,该系统成功解决了水下测量系统的低功耗和大容量存储两大难题。

  • 分享到:

 

猜你喜欢

  • 主 题:自主移动机器人(AMR)平台方案介绍
  • 时 间:2024.11.19
  • 公 司:安森美

  • 主 题:PIC®和AVR®单片机如何在常见应用中尽展所长
  • 时 间:2024.11.26
  • 公 司:DigiKey & Microchip

  • 主 题:盛思锐新型传感器发布:引领环境监测新纪元
  • 时 间:2024.12.12
  • 公 司:sensirion