于春华 ,石云波 ,赵 赟
(1.中北大学 电子测试技术国家重点实验室 仪器科学与动态测试教育部重点实验室,太原 030051;2.苏州中盛纳米科技有限公司,苏州 215123)
在传统的传感器标定实验中,大量的数据需要采集、传输、处理与存储,经常采用RS232串行通讯来交换数据和信息的模式,不仅速度较慢,而且硬件连接模式单一。随着工业自动化设备的快速发展,对数据采集可靠性和实时性以及控制精度的要求也不断提高,如何提高数据采集及传输的性能,成为研究的热点。
相对于受到传输距离和速度限制的RS232、RS485等传输方式,以太网具有兼容性好、通信速率高、传输距离远、易于与上位机交互等优势。
文中提出了一种基于以太网的20路数据采集系统设计方案,采用FPGA为核心完成模拟开关切换、模数转换以及数据编帧与传输。选用AD7667作为高速数据转化芯片。基于W5300设计的以太网传输模块,可方便地将数据引入以太网,实现上位机软件的接收与分析。从而简化了外围接口电路设计,减少了软件编程的工作量,提高了系统的可靠性。
采编传输系统的硬件总体结构如图1所示。主要分为20路运放跟随、模拟开关、AD控制模块、FPGA主控模块、以太网数据传输模块。FPGA通过对AD的CS、RD、RESET等信号的控制,控制AD将模拟量转为数字量,转换的数字量以一定的帧格式通过以太网传给上位机。以太网数据传输模块芯片采用W5300,通过网线连接硬件电路与上位机,完成上位机发出的命令与配置信息,接收硬件上传的采样数据。W5300内部集成了TCP/IP内核、微控制器、以太网物理层,使其具有更优良的性能,可以进行高速数据通信[1]。
图1 硬件总体结构Fig.1 Overall structure of the hardware
选用AD7667作为AD控制模块的主控芯片。AD7667包含一个高速16位采样ADC,一个内部转换时钟,内部参考,纠错电路,以及串行和并行系统接口端口。同时AD7667提供了一个片上采样/保持,逐次逼近的ADC,从而不会出现任何流水线延迟,非常适合多复用通道。
AD转换的时序图如图2所示,CONVST信号一旦开始转换就无法终止或重新开始。当BUSY信号为低电平,信号也为低电平时,AD7667处于数据采集阶段,保持低电平的时间内,AD7667自动转换。模拟信号在BUSY信号为低电平时输入,上电时,信号被置为低电平,此时启动AD转换[2]。
图2 AD7667转换时序Fig.2 AD7667 conversion timing diagram
AD转换电路如图3所示,图中的C18和R30构成一阶低通滤波器,主要作用:保证运放稳定驱动ADC的容性输入负载,R30将跟随器与开关电容C18隔离,输入端与接地之间的电容提供或吸收开关电容充电所需的电荷;R30减少了C18引起的相移,将运放和负载电容隔离开来;限制运放的噪声带宽,减少信号带内的噪声。
图3 AD转换电路设计Fig.3 AD converting circuit design
以太网传输接口模块用来将AD转换的数字量上传至上位机。接口设计电路如图4所示。并行谐振晶体,提供给内部振荡器25 MHz的时钟信号,用于 W5300内核的工作时钟[3]。TXOP(ON)、RXIP(IN)的介质接口RJ45的网口连接,形成以太网传输接收数据的模块。 电阻 R31、R32、R247、R248以及电容C29、C153能够阻抗匹配。两个独立分开的PRO作为PHY与RJ45之间的隔离变压器,能够进行波形的修复、增强信号,使得计算机可以与实验设备之间的传输距离更远,芯片与外部隔离,抗干扰能力增强。
图4 以太网接口设计模块电路图Fig.4 Ethernet interface module diagram
VC++操作系统界面简洁,占用资源少,操作方便,本身提供基于传输层TCP和UDP协议的网络通信接口,所以本课题采用VC++进行上位机软件设计。
在以太网通信过程中,为了满足通信的成功率与准确率,软件设计中采用 TCP/IP通信协议完成以太网数据通信。在标定传感器的试验中,数据包传输的速度非常快,系统可能无法及时处理数据包,因此,必须在应用层确保数据传输的可靠性[4]。制定了应用层内数据段的具体通信协议。
其中应用层通信数据包格式主要由数据包的帧头、帧计数、20路传输数据3个部分构成,通信协议格式如表1所示。
经过初始化后,上位机与硬件方可通过以太网正常连接进行数据传输。初始化是对于网络配置的基本设置,包括设置本地MAC、IP、子网掩码、网关和端口号、设置目标IP地址、端口号、接收和发送缓冲区大小、分配各Socket的工作模式[5]。
表1 通信协议格式Tab.1 Communication protocol format
根据IP地址和端口号与W5300建立 Socket套接字连接,Socket套接字是完成 TCP/IP通信的基本组成模块[6]。完成网络配置初始化后,在服务器模式下,通过tcp_connect()函数发送一个SYS数据包提出连接请求,TCP服务器通过tcp_listen()函数进入监听模式,等待客户端的连接请求。当服务器端收到连接请求时通过tcp_accept()函数接受其连接请求,建立Socket套接字连接[7]。双方连接成功之后,进行数据传输。通信流程图如图5所示。
图5 通信流程图Fig.5 Communication flow chart
试验中使用了电动振动台、示波器以及标准传感器和20个待标定的传感器等设备。在加速度为10 g,振动频率1 kHz的条件下进行正弦定频振动试验。经过系统的分析与处理,其中一路数据实时显示波形如图6所示。
图6 数据采集波形图Fig.6 Data acquisition waveforms
从波形图看出输出电压信号是0~+5 V的正弦波,信号经过采集上传至上位机,实际信号采集容易受到外界的干扰,每次测量值采集10次,取平均值,再与振动校验仪所发出的标准振动信号进行比较,系统采样误差为
式中:设Vt为标准电压;Vo为实际测得的电压;ε为相对误差。计算结果如表2所示。
表2 测试数据表Tab.2 Test data sheet
经过分析,本系统对多通道数据采集信号误差很小,多次的统计测试数据表明,误差均在0.8%之内,系统性能良好。
W5300具有成本低、使用方便、稳定可靠、传输速度快等优点,内部集成了10/100 M以太网控制器,TCP/IP协议,能简化硬件设计,同时避免采用软件来实现繁琐的以太网协议。FPGA器件的选择,使得系统具有良好的通用性和扩展性。便捷的以太网接入方式,固定帧格式数据传输方式,实现了以太网通信的高效和稳定。试验中可达到10 k的多通道同步采样率,10 Mb/s的数据传输速率,具有较高的数据采集传输性能,对于传感器批量测试标定系统的制造有着很高的实用价值。
[1] 何琼,陈铁,程鑫.基于以太网硬协议栈的数据采集节点[J].仪表技术与传感器,2013(2):21-24.
[2] 孟祥娇,张会新,崔永俊,等.基于FPGA和AD7667的16路采编传输系统设计[J].自动化与仪表,2012,27(11):40-43.
[3] 徐红艳.基于以太网的实时数据同步采集系统[D].西安:西安理工大学,2010:50-57.
[4] 方宁.基于以太网的远程数据采集与数据传输[D].成都:电子科技大学,2005:12-14.
[5] 陈峰.实时信号数据采集系统的研究与设计[D].上海:上海交通大学,2010:31-35.
[6] 孙文.多通道数据采集系统的设计与实现[D].长沙:湖南大学,2013:22-27.
[7] 王彦硕.以太网和USB_GPIB接口在仪器数据采集中的应用[D].北京:北京化工大学,2006:18-20. ■