基于Labview数据采集系统误差校准的设计

2017-10-13 04:24原腾飞
船电技术 2017年1期
关键词:下位数组上位

原腾飞,文 伟



基于Labview数据采集系统误差校准的设计

原腾飞,文 伟

(武汉船用电力推进装置研究所,武汉430064)

现代测控系统中,测量环节开始向智能化、灵活化和可视化方向发展。数据采集系统作为测控系统中的测量环节,其性能的优劣直接影响了控制系统的效果。本文旨在通过虚拟仪器(Labview)技术设计上位机程序,实现对被控对象进行高速采集、校准以及显示,使用虚拟仪器中的串口模块实现对下位机的控制以及数据的接收与处理,并实现了被采集对象的图形化显示,利用Excel工具包实现数据的保存与回放。

Labview 数据采集 图形化显示

0 引言

数字化测控系统中,被控对象的反馈精度直接影响了控制系统的精度,数据采集环节如不加校准,一般很难满足高精度测控系统的需求。以电压为例,一般情况下,当电压大于10V时已不能直接被数据采集系统进行直接采集,需要前级信号调理电路进行信号的放大处理,而放大电路中一般会使用专用运放(如OP27),运放因其固有特性,会存在零点漂移与温度漂移,再加上模数转换器(ADC)使用中产生的误差会导致采集结果对控制系统产生较大的偏差,DSP2812的典型转换特性曲线如图1所示,消除ADC的量化误差可通过中值滤波的方式;消除运放所产生的零点漂移与温度漂移一般使用两点校准法,即采用两点固定电压作为基准,通过计算得到偏移误差与增益误差,并对转换结果进行相应补偿,然而,由于系统电源的波动或者基准电源的性能不佳经常造成基准源不稳定,因而两点校准有可能不但无法起到校准作用,反而使采集量偏移更大。因此,对基准电压的修正显得十分重要。

下位机一般采用嵌入式系统,程序固化后不易修改,因此,本文以DSP为下位机硬件平台,将校准工作放于上位机,通过Labview可视化操作,以一定时间间隔手动对校准电压进行修正,从而提高数据采集系统的精度。

1通信接口

1.1下位机通信接口程序设计

本设计中系统底层硬件使用DSP平台,DSP选用TI公司生产的TMS320LF2812,该DSP拥有丰富的片上资源[3]。

本设计中,使用片上ADC实现对电压、电流以及校准电压等6路信号的采集,通过使用SCI实现与上位机的串口通信,通过使用事件管理器(EVA)实现中断的处理。其主函数程序流程图如图2所示,DSP完成系统上电后,首先对系统时钟、外设以及IO等片上资源进行初始化,再对ADC、SCI等所需片上外设根据具体的使用要求进行初始化。当SCI接收寄存器标志位置位时,通过中断处理子函数判断所接收的指令为采样指令还是数据接收错误的反馈,当指令为采样指令时,ADC即进行一次采样,完成采样后退出中断并将采集数据写入SCI发送缓冲器,当SCI发送FIFO满时,通过发送中断子函数完成对数据的发送。本设计中,DSP配置为序列发生器模式,SCI使用增强型配置,部分核心初始化配置如下:

AdcRegs.ADCTRL1.bit.CONT_RUN=1; // 连续运行模式

AdcRegs.ADCTRL1.bit.SEQ_CASC=0; // 双排序模式

AdcRegs.ADCTRL2.bit.INT_ENA_SEQ1=1;

//由INT SEQ1产生的中断请求被使能

AdcRegs.ADCTRL2.bit.INT_MOD_SEQ1=0;

//在每个SEQ1序列结束时,INT SEQ1置位

AdcRegs.ADCTRL2.bit.EVA_SOC_SEQ1=1;

//允许EVA通过触发信号启动SEQ1

AdcRegs.ADCTRL3.bit.SMODE_SEL=0; // 顺序采样模式

AdcRegs.MAX_CONV.all=0x0005; // 6个通道

SciaRegs.SCICTL1.all=0x0001;

//接收中断使能发送中断禁止

SciaRegs.SCIFFCT.all=0x00; // 连续发送

SciaRegs.SCIFFTX.bit.TXFIFOXRESET=1;

SciaRegs.SCIFFRX.bit.RXFIFORESET=1;

1.2 上位机通信接口程序设计

系统上位机程序由Labview实现,Labview是由美国NI公司研制开发的一种图形化编程工具,它具有强大的数据处理功能,采用灵活的编程方式可以快速构建各种应用[1]。上位机使用串口工具包实现指令的发送以及数据的接收,串口相关参数的配置如表1所示。

串口通信包含指令发送以及数据接收两部分,其程序如图3所示。指令包含采样指令和数据错误指令。程序设定,发送不为0的控制字时,下位机进行采样,发送控制字为0 时,表示上位机数据接收错误,需要下位机复位。正常情况下,指令发送采样定时发送的方式,本设计中发送间隔设置为30 ms。利用串口函数的属性节点可以及时读取接收缓冲区已缓存的字节数,当已缓存字节数大于等于16个字节时,启动一次数据的读取。Labview串口数据发送以及接收均采用字符串的形式,因此,读取的数据以字符串的形式保存于“采集量”中,以供后续数据处理函数进行处理。

2 数据处理

由于DSP数据采集硬件的限制,所有模拟量输入信号必须满足0~3V电压区间,由原始信号经调理电路进行调理后,存在较大误差,因此,上位机需要对所采集信号进行滤波、校准以及数据的还原。数据处理流程图如图4所示。

2.1 数据分离

当Labview中串口读取数据完毕后,利用字符串转字节数组函数可以将读取的字符串转换成为一维数组,本设计中,一帧数据包含了4个字节的帧头,以及6个通道12个字节的采样数据,帧头是下位机与上位机进行通信时,为了验证数据传输正确性,加在一帧数据之前具有特定含义的一组数据[4]。因此,对数据进行分析处理首先需要对数据进行分离,限于篇幅,本文仅对其中两个通道进行展示,程序如图5所示,该VI首先利用抽取一维数据函数将4个字节的帧头剔除,然后利用拆分一维数据函数将各通道转换数据的高八位和低八位进行合并,利用一维数据插值函数将各通道完成合并的16位数据组成新的数组,再利用分离数组函数将各通道数据进行分离并创建各通道独立的数组。各数据每写入10个数据,均值标志位置位,提示后续程序对数据进行进一步处理[2]。

2.2 数据校准

以电网电压为例,当均值标志位置1时,通过抽取一维数据函数将电枢电流暂存数据前10个数据进行提取,使用数组排序函数将数组数据从小到大进行排列,再利用删除数组函数将最大和最小的各3个数据删除,然后求剩余4个数据的均值,这样可以实现中值滤波[5]。

根据2812ADC实际转换特性曲线可知,假设实际增益为m,实际偏移为,则模拟量输入与数字量输出之间的关系满足下式:

( 1 )

此时,通过引入两个精准基准源的模拟量输入X1和X2,则可通过解二元一次方程组(2)得到实际增益m以及实际偏移,根据表达式(1)则可计算出任意通道模拟量输入经过校准后的数据。

系统主界面如图7所示,当基准源出现偏差时,在前面板左侧基准源输入框可以手动对基准源电压进行修改,从而进一步减小本数据采集系统的测量误差。

3 结论

2.3 数据还原

以电网电压为例,当其对应调理量输入为3 V时,其电压为600 V,因此,电网电压瞬时值的转换量可以通过图进行计算,从而得到电网电压的瞬时值,电网电压瞬时值显示变量直接驱动前面板的量表控件,进行直观的图形显示,通过数据插值函数创建电网电压显存数据,该数组为后续数据保存进行准备。

本文以Labview为上位机开发环境,在DSP的硬件平台上,实现了6路信号的数据采集,利用上位机灵活直观的显示界面以及其强大的数据处理能力,方便的实现了对校准源的修正,从而满足了系统对数据精度的需求。

[1] 杨乐平.LabVIEW程序设计与应用[M].北京:电子工业出版社, 2001.

[2] 高向东.虚拟仪器技术综述.中国计量,2004:4-5.

[3] 顾卫钢.手把手教你学DSP[M].北京航空航天大学出版社,2011.

[4] Shen B S, Chang-Ying J I, Guo Y P, et al. The design of data acquisition system based on LabVIEW[J]. Machinery & Electronics, 2009.

[5] Bera T K, Nagaraju J. A LabVIEW based data acquisition system for electrical impedance tomography (EIT)[M]// Proceedings of the Third International Conference on Soft Computing for Problem Solving. Springer India, 2014:377-389.

[6] Zhao H, Zhang S, Gu L. Real-time acquisition and preprocessing system of transient electromagnetic data based on LabVIEW[J]. Proceedings of SPIE - The International Society for Optical Engineering, 2014, 9215(12):605.

Yuan Tengfei,Wen Wei

(Wuhan Institute of Marine Electric Propulsion, Wuhan 430064, China)

In modern measurement and control system, the measurement process begins to develop towards the direction of intelligence, flexibility and visualization. As the measuring unit of the measurement and control system, the performance of the data acquisition system has a direct impact on the control system. This paper is aimed at designing the host computer program by virtual instrument (Labview) technology in order to realize high speed acquisition, calibration and display of the controlled objects, and uses the serial port module of virtual instrument to control the slave computer, to receive and process the data of this system, to achieve a graphical display of the collected objects and data storage and playback by excel tool kit.

Labview; data acquisition; graphical display

TP206

A

1003-4862(2017)01-0061-04

2016-08-15

原腾飞(1985-),男,工程师。研究方向:电力电子与电力传动。Email: ytfwork@163.com

猜你喜欢
下位数组上位
JAVA稀疏矩阵算法
JAVA玩转数学之二维数组排序
发射机房监控系统之下位机
特斯拉 风云之老阿姨上位
Excel数组公式在林业多条件求和中的应用
“三扶”齐上位 决战必打赢
基于ZigBee和VC上位机的教室智能监测管理系统
景洪电厂监控系统下位机数据传输网络改造
围观党“下位”,吐槽帝“登基”
以新思路促推现代农业上位