基于DSPF2812和Labview的数据采集系统设计

2016-07-15 03:28于海征冯国胜
承德石油高等专科学校学报 2016年3期
关键词:数据采集

于海征,冯国胜

(石家庄铁道大学 机械工程学院,河北 石家庄 050043)



基于DSPF2812和Labview的数据采集系统设计

于海征,冯国胜

(石家庄铁道大学 机械工程学院,河北石家庄050043)

摘要:为方便、快捷的完成信号采集,设计了一种基于数字信号处理器DSP和虚拟仪器技术Labview的数据采集系统。应用DSP内部的模数转换器ADC模块采集外部模拟信号并完成模拟量到数字量的转换,从而实现模拟信号的采集,同时利用串口通讯SCI模块与外设之间实现串行通讯的原理,通过R232串口完成DSP与Labview的通信,可实现数据的显示和存储。经测试该系统工作稳定,可实现多个通道的数据采集、监测和存储。

关键词:DSPF2812;Labview;数据采集

数据采集系统是指待测模拟信号进行采样,转换成数字信号后再由计算机进行显示、存储、处理等的系统[1]。将数据采集系统应用到实际的信号测试中可以实现信号采集的实时性监测,同时能够完成对采集数据的记录和存储以及后续分析等功能。DSPF2812具有强大的数字信号处理能力,并且具备完善的时间管理能力和嵌入式控制能力,被广泛用于工业控制[2]。LabVIEW是一种图形化的编程语言和开发环境,其图形化编程语言环境简单直观[3],通过R232实现DSP和Labview的串口通信,可将二者的优点相结合,实现信号的采集并完成相关数据的直观显示和数据存储,为日后的数据分析和处理提供依据。

1总体设计

本系统应用DSPF2812内部AD采集模块对外部模拟信号进行采集并转换成数字量提供给控制器使用,将Labview作为上位机软件,实现各路信号的实时监测和数据存储,在不增加硬件成本的基础上实现了多路模拟信号的实时监测[4]。基于DSPF2812和Labview的数据采集系统主要由外部信号、调理电路、AD转换模块、SCI数据发送模块以及数据显示和存储模块组成,该系统的总体设计框图如图1所示。

2信号调理电路设计

由于DSPF2812的AD模块允许的输入电压在0~3 V,所以在外部信号进入AD之前必须进行调理,以确保在DSP的AD模块采集范围内,同时为了避免外部信号幅值过高而引起芯片烧毁,在调理电路后应附加钳位电路,使电压输入保持在0~3.3 V,从而确保芯片的正常工作。图2为单路信号调理电路的整体设计。图2中输入信号经R1和R2分压,通过LM324运放组成的电压跟随器并经过钳位电路输出信号到DSP的AD采集端口。

3DSP软件部分设计

3.1AD采集模块软件设计

DSP2812的AD模块共有16个模拟输入引脚,具有12位的ADC内核,内置有2个采样保持器S/H-A和S/H-B,时钟频率最高为25 MHz。本设计取采用三路AD进行采集,采用级联模式下的顺序采样,事件管理器的周期中断启动AD。AD模块初始化部分程序如下所示。

void InitAdc(void)

{AdcRegs.ADCTRL1.bit.RESET=1;

AdcRegs.ADCTRL1.bit.SEQ_CASC=1;//单序列模式

AdcRegs.ADCTRL1.bit.CONT_RUN=0; //启动停止模式

AdcRegs.ADCTRL1.bit.CPS=0;

AdcRegs.ADCTRL1.bit.ACQ_PS=0;//脉冲宽度1个ADC周期

AdcRegs.ADCTRL1.bit.SUSMOD=3;//仿真暂停模式

……

}

ADC模块共有16个结果寄存器,每个寄存器都是16位,而DSP2812的ADC为12位,结果寄存器的高12位存放转换结果,低4位被忽略,ADC的转换特性为

ADResult=(VoltIput-ADCLO)/3.0x65520

式中,ADResult为结果寄存器中的数字量,VoltIput为模拟电压的输入值,ADCLO为转换的参考电平(使用时参考电平接地,ADCLO=0)。本设计中ADC的结果寄存器的值采用AD中断子程序中进行读取。

3.2SCI串口发送模块设计

DSPF2812的SCI模块为8位的标准异步串行通信接口,可以实现半双工、双工或多机之间的通信,同时可以通过更改两个8位波特率寄存器的值来实现64K种不同的传输速率,SCI实现接收或发送程序有查询和中断两种方式实现,本设计中采用查询方式实现数据的发送。在实际的发送过程中由于SCI的发送数据缓冲寄存器和发送移位寄存器都为8位,而ADC模块的结果寄存器的值为12位,在发送过程中采用结果寄存器的高8位和低8位依次发送,在上位机接收到高、低8位后在进行重组、计算后得到实际的采样值。为避免数据接收错误或各通道数据错位等现象,软件设计中添加了标志位作为发送和接收数据的校验手段。数据发送和接收时的顺序如图3所示。

设置SCI的波特率为39 200,数据格式为8位数据位,一位停止位,无奇偶校验位。DSP的串口发送程序如下:

while(1)

{while(SciaRegs.SCICTL2.bit.TXEMPTY==0){};

SciaRegs.SCITXBUF=0xAB;

while(SciaRegs.SCICTL2.bit.TXEMPTY==0){};

SciaRegs.SCITXBUF=0xCD;

while(SciaRegs.SCICTL2.bit.TXEMPTY==0){};

SciaRegs.SCITXBUF=adc[0]>>8;

while(SciaRegs.SCICTL2.bit.TXEMPTY==0){};

SciaRegs.SCITXBUF=adc[0];

……

}

4Labview程序设计

4.1数据接收程序设计

LABVIEW 的功能模板 Instrument I/O/VISA 中包含串行通信常用功能的模块,串口通信使用的 VISA 库中的串口通信函数包括VISA配置串口、VISA写入、VISA读取、VISA关闭等[5]。

本系统每次读取2 000个字符数,为确保接收数据的正确,首先通过程序判断数据发送的标志位AB、CD所在的位置,确定标志位所在的位置后对后续三路信号的数据进行读取。

确定标志位所在的位置后对后续三路信号的数据进行读取,字符串的第N+1、N+2位存放的是第一通道数据的高8位和低8位,通过索引取出高、低8位的值并进行组合计算得到SCI发送的第一通道的数据,第二通道与第三通道的数据与第一通道类似,分别为第N+3、N+4位的组合与N+5、N+6的组合。

图4为循环读取通道数据的程序,通过循环读数依次得到各通道的数据并通过重组得到采集的真实数据值从而实现数据的连续采集。

4.2数据存储程序设计

为了便于数据的后续处理和储存,本系统增加了数据采集的存储模块。

5实验结果与结论

通过采集由三组蓄电池的三路电压信号对该设计进行实际测试和验证,实际测试的三路电压值输出前面板图如图5所示。通过验证采集系统采集数据的精度,应用万用表同时测量稳压电源输出的电压值并与采集系统的测量值进行比较可得,该系统采集的电压值具有较高的精度,测量数据如表1所示。

通过实际测试表明,该系统可实现外部信号的数据采集,同时可实现采集数据的图像实时显示、监测和数据存储,为分析和研究实验数据提供了参考依据,本设计在实际测试中通道数量为三路,而该系统可根据实际需要增加采集通道数量。数据采集系统已成功用于车辆状态监测系统,可实现对车辆的实时信号进行监测,经测试,该系统可以完成至少7路通道的数据采集和存储。

表1 测量数据

参考文献:

[1]田莹莹,刘凤林,赵洪亮.基于 LabVIEW 和 DSP 的多路数据采集系统的设计[J].科技信息,2013(7):227-267.

[2]韩丰田.TMS320F281xDSP原理及应用技术[M].北京:清华大学出版社,2009.

[3]张雪华,万舟,吴建德.基于LabVIEW与DSP串口通信的数据采集系统设计[J].云南大学学报,2009,31(S2):106-111.

[4]徐华中,黄丽萍.基于LabVIEW和DSP串口的多通道电机参数采集系统[J].电子测量技术,2011,34(4):66-69.

[5]熊玉, 韩峻峰 ,潘盛辉. 基于DSP和LabVIEW的汽车行驶姿态参数采集系统设计[J].电子技术应用.2011(1):80-83.

Design of Data Acquisition System Based on DSPF2812 and Labview

YU Hai-zheng, FENG Guo-sheng

(School of Mechanical Engineering,Shijiazhuang Tiedao University,Shijiazhuang 050043,Hebei, China)

Abstract:A data acquisition system based on digital signal processor DSP and virtual instrument Labview was designed. We completed the conversion of the analog to digital by the module of the DSP, so as to realize the analog signal acquisition. At the same time, the serial communication was realized through the RS232 serial port to complete the communication of DSP and Labview, which can achieve the data displaying and storage. After testing the system, we realized the multiple channels of data acquisition, monitoring and storage.

Key words:DSPF2812; Labview; data acquisition

收稿日期:2015-09-03

作者简介:于海征(1990-),男 ,河北保定人,石家庄铁道大学机械工程学院在读硕士研究生,研究方向为车辆电子控制技术。

中图分类号:TP274

文献标识码:A

文章编号:1008-9446(2016)03-0038-05

猜你喜欢
数据采集
Web网络大数据分类系统的设计与改进
CAN总线通信技术在电梯监控系统中的应用
基于大型嵌入式系统的污水检测系统设计
基于AVR单片机的SPI接口设计与实现
CS5463在植栽用电子镇流器老化监控系统中的应用
大数据时代高校数据管理的思考
基于广播模式的数据实时采集与处理系统
通用Web表单数据采集系统的设计与实现
基于开源系统的综合业务数据采集系统的开发研究
大数据时代的管理会计