基于STM32单片机的存储式数据采集系统设计

2013-06-23 09:43沈金鑫
电子设计工程 2013年17期
关键词:存储器调理通讯

郝 雯,沈金鑫,梅 成

(1.南京理工大学 机械工程学院,江苏 南京 210094;2.哈尔滨工程大学 水声工程学院,黑龙江 哈尔滨 150000)

现阶段,数据采集的方案主要有引线式和存储式两种。引线式主要采用微型计算机、高速数据采集卡和数据采集软件来实现[1],利用微型计算机主频高、内存大、硬盘容量大的特点,通过数据采集卡将模拟信号转换为数字信号,PC机上的数据采集软件直接对数字信号进行相应的处理,可以实现高速率、高分辨率、大容量的数据采集[2-3]。

存储式主要采用高速A/D转换器、数据存储器和单片机或FPGA、DSP等实现,使用单片机或FPGA、DSP作为主控制器,通过A/D转换器将模拟信号转化为数字信号,并将采集的数据保存至数据存储器中,可以实现采集存储装置的微小型化。

引线式方案主要使用NI(美国国家仪器)的LabVIEW软件配套其高速数据采集卡,能胜任一般性的高速数据采集任务,但是其数据采集卡价格昂贵,而且一般的数据采集均为中低速。引线式由于体积较大,不便于携带,不能用于对运动物体的数据采集[4]。存储式方案主要针对运动的物体,实现高速、短时间、中小容量的数据采集,例如飞行器在飞行过程中的各种参数的采集,具有便携性、微小型等特点,广泛用于各种试验参数的数据采集。

1 总体方案设计

存储式数据采集系统是基于STM32微控制器和数据存储器的弱电信号采集系统,可应用于各种弱电信号的采集与存储。整个系统由信号调理模块、STM32主控制器、数据存储器、RS-485通讯接口和电源模块组成。传感器信号经过信号处理部分对信号进行放大、滤波,利用STM32单片机的片内ADC模块实现A/D转换,对数据进行递推中位值平均滤波之后,将数据首先保存至STM32片内存储器中,当数据达到一定量之后,将转换数据转移至大容量的外存储器中。数据采集系统总体框图如图1所示。

图1 系统总体框图Fig.1 Overall system block diagram

2 系统硬件设计

系统硬件部分由信号调理电路、主控制器、数据存储器、RS-485通讯接口和电源电路组成。信号调理对输入信号进行放大,使信号在A/D转换能够转换的电压范围内,以满足采样的要求;主控制器完成模拟信号的A/D转换、滤波和存储;RS-485通讯接口将存储数据上传给计算机;电源模块为整个采集系统的各个模块提供工作电压。数据采集系统硬件功能模块构成如图1所示。

2.1 信号调理电路

AD623是一个集成单电源仪表放大器,它能在单电源(+3V到+12V)下提供满电源幅度的输出[5]。它允许使用单个增益设置电阻进行增益编程,以得到更好的灵活性。在无外接电阻条件下,AD623被设置为单增益(G=1)。在外接电阻后,AD623可编程设置增益,增益最高可达1 000倍。

信号调理电路采用仪表放大器AD623来实现,信号调理电路如图2所示。

图2 信号调理电路Fig.2 Signal conditioning circuit

2.2 主控制器模块

STM32F103是STM32系列的增强型芯片,工作频率为72 MHz,工作性能为1.25 DMIPS/MHz。片上集成了Flash最多可达512 kB,SRAM最多可达64 kB的高速存储器和通过APB总线连接的丰富和增强的外设以及多达80个的I/O接口,并且拥有2个I2C接口,3个SPI接口和5个USART接口[6];片上还带有2个12位ADC、1个12位的双通道DAC、11个16位计时器,支持CAN接口、USB2.0接口和SDIO接口。STM32F103嵌入了一个嵌套矢量中断控制器,可以处理43个可屏蔽中断通道,提供16个中断优先级。

主控制器选用STM32F103T4,拥有16 kB的程序空间,6 kB的RAM,2个12位的ADC,2个USART,1个SPI接口等片上资源。主控制器模块电路如图3所示。

图3 主控制器模块电路Fig.3 Main controller module circuit

2.3 数据存储模块

AT25DF021是ATMEL公司的带有SPI接口的FLASH型数据存储器,容量为2MB,最大操作频率为66MHz,适用于数据存储。与传统的Flash存储器需要多个地址线和一个并行接口相比,AT25DF021使用串行接口按顺序访问其内部的数据。这种简单的串行接口,可以简化硬件布局,从而提高系统的可靠性,最大限度地减少开关噪声,并减小封装尺寸和引脚数目。主要用于高密度、低针数、低电压、低功耗的工业应用。

数据存储模块采用数据存储芯片AT25DF021来实现,数据存储模块电路如图4所示。

图4 数据存储模块Fig.4 Data storage module

2.4 通讯接口模块

RS-485接口是采用平衡驱动器和差分接收器的传输方式,抗共模干扰能力强,抗噪声干扰性好。本数据采集系统的通讯接口采用RS-485接口,通讯接口电路负责将数据采集系统中的数据上传至上位机进行进一步的数据分析与处理。通讯接口模块电路如图5所示。

图5 通讯接口模块Fig.5 Communication interface module

2.5 电源电路

电源电路给采集系统的各个模块的所有元件提供工作电压。因为数据采集系统采用可充电锂电池供电,为了降低整个数据采集系统的功耗,实现低功耗设计,系统所选用的均为低工作电压的芯片,整个系统只需要+3.3V的电压即可。电源芯片采用SPX1117-3.3,电源电路如图6所示。

图6 电源电路Fig.6 Power circuit

3 系统软件设计

本系统设计中,采用ARM公司推出的集成开发环境Keil 4为开发平台,并使用ST官方的集成开发库。应用程序包括主程序、数据采集及处理程序、数据存储程序、串行通信程序等主要部分。整个系统的流程图如图7所示。主程序主要负责对于系统时钟、GPIO、嵌套中断的配置以及定时器、ADC和串行通讯模块的初始化。

数据采集及处理程序中,由定时器T1每隔一个采样周期触发一次ADC转换,转换结束则会进入中断服务程序,然后读取转换结果并对数据进行递推中位值平均滤波,以保证数据的可靠性,并将滤波之后的数据保存至STM32片内存储器。

当A/D转换的数据的数量达到256 B的时候,进行一次数据存储,将数据通SPI接口存入DATA FLASH中,以实现存储式数据采集。当数据采集完成之后,通过RS-485通讯接口将存储的数据发送到上外机。整个系统的流程图如图7所示。

图7 系统流程图Fig.7 System flow chart

需要说明的是,数据采集系统的采样速率、采样时间、数据存储的起始地址均需要利过专用的上位机软件通过RS-485通讯接口进行设定和擦除,数据采集的触发方式采用硬件触发。

4 结 论

该存储式数据采集系统设计,经过调试,其采样性能和数据传输都已经达到设计要求。系统中选用单电源低功耗芯片,并采用STM32片内ADC实现A/D转换,降低了整个系统的功耗,而且减少了芯片的数量,使得电路板小巧、轻便,从而将存储式数据采集系统应用于很多体积小的场合。经样机试验测试,该存储式数据采集系统可以满足一般性的数据采集需要。

[1]王铁流,李宗方,陈东升.基于STM32的USB数据采集模块的设计与实现[J].测控技术,2009,28(8):37-40.WANG Tie-liu,LI Zong-fang,CHEN Dong-sheng.Based the STM32 USB data acquisition module design and Implementation[J].Measurement and Control Technology,2009,28(8):37-40.

[2]吴家平,沈建华.基于STM32微控制器的过采样技术研究与实现[J].计算机技术与发展,2010(2):209-212.WU Jia-ping,SHEN Jian-hua. Oversampling STM32 microcontroller-based Research and Implementation[J].Computer Technology and Development,2010(2):209-212.

[3]张旭,亓学广,李世光,等.基于STM32电力数据采集系统的设计[J].电子测量技术,2010,33(11):90-93.ZHANG Xu,QI Xue-guang,LI Shi-guang,et al.Based STM32 electricity data acquisition system design[J].Electronic Measurement Technology,2010,33(11):90-93.

[4]吴怀超,周勇.基于虚拟仪器和MSP430单片机的数据采集系统的开发[J].化工自动化及仪表,2011,38(1):52-55.WU Huai-chao,ZHOU Yong.Development of data acquisition system based on virtual instrument and MSP430 MCU[J].Based the STM32 and CAN bus intelligent data acquisition node design,2011,38(1):52-55.

[5]王建新,任勇峰,焦新泉.仪表放大器AD623在数采系统中的应用[J].计算机信息,2007(23):169-170.WANG Jian-xin,REN Yong-feng,JIAO Xin-quan.Instrumentation amplifier AD623 data acquisition system[J].Computer Information,2007(23):169-170.

[6]张河新,王晓辉,黄晓东.基于STM32和CAN总线的智能数据采集节点设计[J].化工自动化及仪表,2008,39(1):78-80.ZHANG He-xin,WANG Xiao-hui,HUANG Xiao-dong.Based the STM32 and CAN bus intelligent data acquisition node design[J].Based the STM32 and CAN bus intelligent data Acquisition Node Design,2008,39(1):78-80.

猜你喜欢
存储器调理通讯
《茶叶通讯》简介
《茶叶通讯》简介
通讯报道
脾胃失调该如何调理
静态随机存储器在轨自检算法
流翔高钙系列肥 我能土壤调理剂
调理聚合物组合在洗发水中的应用
秋季蛋鸡 抓好调理
通讯简史
Altera演示FPGA中高性能DDR4存储器数据速率