于春華 ,石云波 ,趙 赟
(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. ■