国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

基于ARM和LabVIEW的網(wǎng)絡數(shù)據(jù)采集測試系統(tǒng)設計

2016-05-14 00:39徐立艷
現(xiàn)代電子技術 2016年5期
關鍵詞:虛擬儀器

徐立艷

摘 要: 網(wǎng)絡化虛擬儀器是繼虛擬儀器之后儀器儀表領域出現(xiàn)的新的發(fā)展方向,提出了將嵌入式系統(tǒng)、網(wǎng)絡與虛擬儀器結(jié)合的技術路線,將信號的采集、處理、存儲分布于不同的網(wǎng)絡位置的實施方案。利用ARM嵌入式在現(xiàn)場采集數(shù)據(jù),通過網(wǎng)絡通信將信號處理和存儲工作交給上位機負責,采用S3C44B0X為核心的開發(fā)環(huán)境,然后進行軟件系統(tǒng)的搭建,包括移植μC/OS?Ⅱ嵌入式操作系統(tǒng),嵌入式圖形界面系統(tǒng)μC/GUI,ADC及網(wǎng)卡的驅(qū)動程序編寫以及移植LwIP實現(xiàn)TCP/IP協(xié)議等。測試結(jié)果表明,該系統(tǒng)的功能完善、操作十分方便,完全滿足實際應用的需要,可以有效地組織和管理數(shù)據(jù)以及構(gòu)架網(wǎng)絡數(shù)據(jù)庫。

關鍵詞: 虛擬儀器; ARM; LabVIEW; S3C44B0X; μC/OS?Ⅱ; LwIP

中圖分類號: TN919?34; TP274 文獻標識碼: A 文章編號: 1004?373X(2016)05?0024?04

0 引 言

虛擬儀器(Virtual Instrument)是基于計算機的儀器。計算機和儀器的密切結(jié)合是目前儀器發(fā)展的一個重要方向[1]。這種結(jié)合有兩種方式:一種是將計算機裝入儀器,其典型的例子就是所謂智能化的儀器。隨著計算機功能的日益強大以及其體積的日趨縮小,這類儀器功能也越來越強大,目前已經(jīng)出現(xiàn)含嵌入式系統(tǒng)的儀器;另一種方式是將儀器裝入計算機。以通用的計算機硬件及操作系統(tǒng)為依托,實現(xiàn)各種儀器功能。虛擬儀器主要是指這種方式[2]。

使用網(wǎng)絡化虛擬儀器技術,可以不受地點、時間的約束,獲取準確的測量信息或數(shù)據(jù),與傳統(tǒng)的儀器、測量、測試相比,帶來了諸多便利[3]。在網(wǎng)絡化虛擬儀器中,被測對象可通過測試現(xiàn)場的普通儀器設備,將測得的數(shù)據(jù)通過網(wǎng)絡傳輸給異地的精密測量設備或高檔次的微機化儀器去分析、處理,能實現(xiàn)測量信息的共享,可掌握網(wǎng)絡節(jié)點處信息實時變化的趨勢;此外,也可通過具有網(wǎng)絡傳輸功能的儀器將數(shù)據(jù)傳至原端即現(xiàn)場。采用自動抄表系統(tǒng),可提高抄表的準確性,能減少因估計或謄寫而可能出現(xiàn)的帳單錯誤(供用電、水、燃氣、熱能等)。管理部門因此能及時獲得準確的數(shù)據(jù)信息,用戶也不再需要與抄表員預約上門抄表時間,迅速查詢帳單。使用網(wǎng)絡化虛擬儀器,采用網(wǎng)絡測量技術,可以大幅度提高測量效率,降低監(jiān)測成本以及減少計量測試工作的周期[4]。

1 硬件設計

本文的目的是充分發(fā)揮分布式虛擬儀器的概念,將嵌入式系統(tǒng),網(wǎng)絡,虛擬儀器聯(lián)系起來,將信號的采集、處理、存儲分布于不同的網(wǎng)絡位置。結(jié)合嵌入式系統(tǒng)的靈活性,避免其計算能力不強的缺點,將信號處理工作交給上位機負責。系統(tǒng)結(jié)構(gòu)如圖1所示。

下位機的虛擬儀器負責信號的采集,通過以太網(wǎng)將數(shù)據(jù)傳輸?shù)缴衔粰C,利用上位機強大的計算能力和海量存儲空間完成對原始數(shù)據(jù)的后期處理。

1.1 以太網(wǎng)設備

本系統(tǒng)采用的網(wǎng)絡RTL8019AS是一種高度集成的以太網(wǎng)控制芯片,能簡單地實現(xiàn)Plug and Play并兼容NE2000。

RTL8019AS芯片內(nèi)部集成了DMA控制器,ISA總線控制器和集成16KSRAM、網(wǎng)絡PHY收發(fā)器。用戶可以通過DMA方式把需要發(fā)送的數(shù)據(jù)寫入片內(nèi)SRAM中,讓芯片自動將數(shù)據(jù)發(fā)送出去,而芯片在接收到數(shù)據(jù)后,用戶也可以通過DMA 方式將其讀出。RTL8019AS的詳細介紹請見RTL8019AS數(shù)據(jù)手冊。了解了RTL8019AS所提供的資源與硬件接口,便可以設計RTL8019AS與S3C44B0X的硬件電路。

在網(wǎng)絡通信模塊電路中,RTL8019AS與處理器S3C44B0X之間的信號連接關系如圖2所示。

1.2 電源、時鐘及復位電路

在本系統(tǒng)中,采用的是5 V和3.4 V的直流穩(wěn)壓電源,其中,S3C44B0X核心使用2.5 V電源,外圍器件需3.4 V電源,另外部分器件需5 V電源,5 V電路加了工作指示燈,并且加了二極管對電路加以保護。晶振電路用于向CPU及其他電路提供工作時鐘。在該系統(tǒng)中,S3C44BOX使用常用的無源晶振,電路如圖3所示。

根據(jù)S3C44B0X的最高工作頻率以及PLL電路的工作方式,系統(tǒng)選擇了10 MHz的有源晶振,10 MHz的晶振頻率經(jīng)過S3C44B0X片內(nèi)的PLL 電路倍頻后,最高可以達66 MHz。片內(nèi)的PLL電路兼有頻率放大和信號提純的功能,因此,系統(tǒng)可以以較低的外部時鐘信號獲得較高的工作頻率,以降低因高速開關時鐘所造成的高頻噪聲。

同時在系統(tǒng)中還有頻率為32.768 kHz的實時時鐘晶振源,在USB接口芯片處也有一個48 MHz的晶振。在系統(tǒng)中,復位電路主要完成系統(tǒng)的上電復位和系統(tǒng)在運行時用戶的按鍵復位功能。復位電路可由IMP811芯片完成,復位電路如圖4所示。

該復位電路的工作原理如下:IMP811是一個可靠性很高的復位芯片,當用戶按下按鈕S1時或者RST_IN送過來一個低電平時,Reset端輸出為低電平,系統(tǒng)進入復位狀態(tài),松開S1時,系統(tǒng)即可進入正常工作狀態(tài)。

2 實時操作系統(tǒng)

實時操作系統(tǒng),簡稱RTOS,具體指系統(tǒng)能及時響應來自外部事件的請求,在確定的時間處理該事件,統(tǒng)一控制實時任務一致運行。RTOS的開發(fā)工具允許用戶針對不同的應用對象對RTOS的內(nèi)核進行裁剪、壓縮,以適應各類應用,并提供應用程序的調(diào)試環(huán)境。

2.1 μC/OS?Ⅱ的系統(tǒng)結(jié)構(gòu)

μC/OS?Ⅱ嵌入式實時操作系統(tǒng)是Jean J.Labrosse開發(fā)的一個完整的、可移植、固化、裁剪的占先式實時多任務內(nèi)核,目前已經(jīng)在超過40種不同架構(gòu)的微處理器上運行,圖5是本系統(tǒng)的軟硬件體系結(jié)構(gòu)。

初始化程序是針對S3C44B0X使用匯編語言編寫的。在將控制權(quán)交給操作系統(tǒng)前,初始化最基本的硬件設備。主要工作是配置SDRAM并將操作系統(tǒng)代碼從FLASH拷貝到SDRAM中。

2.2 小鍵盤驅(qū)動編寫

系統(tǒng)采用智能顯示驅(qū)動芯片HD7279連接一個4×4鍵盤和S3C44B0X通信。HD7279A是一片具有串行可同時驅(qū)動8位共陰式數(shù)碼管(或64只獨立LED)的智能顯示驅(qū)動芯片,該芯片同時還可連接多達64鍵的鍵盤矩陣,單片即可完成LED顯示﹑鍵盤接口的全部功能。HD7279A內(nèi)部含有譯碼器,可直接接收BCD碼或16進制碼,并同時具有2 種譯碼方式。此外,還具有多種控制指令,如消隱、閃爍、左移、右移、段尋址等。HD7279A具有片選信號可方便地實現(xiàn)多于8 位的顯示或多于64鍵的鍵盤接口。

3 硬件設計

3.1 模塊總體設計

整個系統(tǒng)的信號流程如圖6所示,信號通過ADC后以DMA方式進入兩個8 MB的SDRAM,二者構(gòu)成一對乒乓存儲系統(tǒng),一側(cè)負責采集信號的緩存,同時另一側(cè)負責向上位機發(fā)送,二者交替工作,保證信號流采集和發(fā)送的連續(xù)。對于網(wǎng)絡通信模塊,由于μC/OS?Ⅱ只是一個實時的任務調(diào)度及通信內(nèi)核,缺少對網(wǎng)絡協(xié)議的支持,所以需要將LwIP(Light Weight IP protocol)移植到μC/OS?Ⅱ上,使其支持網(wǎng)絡功能。本章后面部分將重點介紹NE2000兼容網(wǎng)卡RTL8019AS驅(qū)動程序在嵌入式系統(tǒng)中的編寫。

3.2 信號調(diào)理模塊

S3C44B0X 內(nèi)部具有一個逐次逼近型8 路模擬信號輸入的10位ADC,但是不具有保持采樣保持(S/H)電路,不能用于快速變化的信號采集,因此需要在前級信號調(diào)理電路中加入采樣保持功能。

在此系統(tǒng)中,采用了Microchip Technology公司的模擬增益可編程運放(PGA)MCP6S28芯片,傳感器采集的信號接入MCP6S28的通道輸入端,輸出VOUT接入處理器內(nèi)部的A/D轉(zhuǎn)換器的信號輸入端AIN管腳。MCP6S28的增益可設置為1~32 V/V,它具有多路選擇輸入(MUX)模塊,共有8路輸入。MCP6S28具有SPI接口,故將其與S3C44B0X對應的SPI管腳連接即可,用于選擇增益水平和輸入通道。對MCP6S28進行操作的控制字節(jié)和數(shù)據(jù)字節(jié)均從SI引腳輸入,并在寫入數(shù)據(jù)的串行時鐘(SCK)上升沿被鎖存。

3.3 A/D采樣器程序設計

A/D轉(zhuǎn)換由S3C44B0X內(nèi)部模/數(shù)轉(zhuǎn)換器(ADC)完成,它是一個10位、逐次逼近型的ADC,有8路模擬信號輸入,其內(nèi)部結(jié)構(gòu)中包括模擬輸入多路復用器, 自動調(diào)零比較器,時鐘產(chǎn)生器,10位逐次逼近寄存器(SAR),輸出寄存器。這個ADC還提供可編程選擇的睡眠模式, 以節(jié)省功耗。S3C44B0X 內(nèi)部有3個與A/D 轉(zhuǎn)換有關的寄存器:控制寄存器ADCCON、預分頻寄存器ADCPSR、數(shù)據(jù)寄存器ADCDAT。

ADCPSR中存儲預置比例因子,取值范圍是0~255,完成一次A/D轉(zhuǎn)換至少需要16個A/D時鐘周期,有:

A/D轉(zhuǎn)換總時鐘數(shù)=2×(預置比例因子+1)×16

A/D的最高采樣速率是100 KS/s,即每個采樣周期為10 μs。ARM7運行在66 MHz主頻下,每個周期為15.152 ns。這樣每個采樣周期包括660個主頻周期。ARM7具有0.97 MIPS/MHz的指令效率,660個主頻周期可以運行約640條指令。在計數(shù)器觸發(fā)A/D采樣的情況下,處理器的工作是每采樣周期從A/D讀取一次數(shù)據(jù)并保存到RAM中,代碼如下:

LDR R0,[R1]:寄存器R1中保存了A/D數(shù)據(jù)寄存器的地址,需要3周期。

STR R0,[R2,#4]:寄存器R2中保存了RAM中數(shù)據(jù)存儲空間的起始地址;需要2周期。

這個操作需要5個主頻周期。利用剩余的轉(zhuǎn)換時間,ARM7可以完成數(shù)據(jù)的打包發(fā)送,以及其他的任務。在進行A/D轉(zhuǎn)換時,ARM要禁止一切可屏蔽中斷。

4 LabVIEW上位機模塊設計

上位機的功能有兩方面:一是負責數(shù)據(jù)的實時顯示,參數(shù)測量和存儲;二是對下位機的遠程控制。監(jiān)測人員能夠直觀地獲得測試結(jié)果,很方便地對遠程數(shù)據(jù)采集系統(tǒng)進行控制。

本系統(tǒng)的上位機系統(tǒng)利用虛擬儀器技術和LabVIEW 圖形化軟件開發(fā)集成環(huán)境,設計了該數(shù)據(jù)采集系統(tǒng)的數(shù)據(jù)分析、存儲和遠程控制模塊。測試結(jié)果表明,該數(shù)據(jù)分析處理模塊的功能比較完善,操作十分方便,完全滿足實際應用的需要。

4.1 網(wǎng)絡數(shù)據(jù)通信接口程序設計

上位機和下位機通信的傳輸內(nèi)容可以分為測控命令和數(shù)據(jù)兩種。其中下位機向PC 機發(fā)送的數(shù)據(jù),數(shù)據(jù)量大、對傳輸速度要求較高、對可靠性的要求不很嚴格。

UDP 是面向非連接的方式, 提供的是不可靠的數(shù)據(jù)傳輸,但實現(xiàn)起來比較簡單,速度快、實時性好,并且支持廣播和組播,同時在單一、封閉局域網(wǎng)中可靠性也很高。因此用一般的UDP通信就可以達到很好的可靠性以滿足數(shù)據(jù)傳輸?shù)囊蟆?/p>

一個簡單的UDP數(shù)據(jù)接收、顯示程序如圖7所示。程序分為UDP打開,UDP讀取和UDP關閉三個環(huán)節(jié)。首先指定本地端口號,本文為61557,這個端口必須與下位機設置的目標遠程端口一致。在運行此程序前,必須先運行下位機程序。UDP Read節(jié)點設置UDP數(shù)據(jù)報最大字節(jié)數(shù),最大值為548,此處設置為100,若超過本值,Windows將提示出錯信息。

4.2 控制程序設計

程序界面如圖8所示,觀測人員可以通過示波器的波形顯示及時調(diào)整遠端采集設備的相應參數(shù)。這樣可以充分利用A/D轉(zhuǎn)換器的最大輸入量程(2.5 V),盡可能提高測量精度。另一個可以控制的參數(shù)是采樣速率,當被測信號的頻率較低時可以使用低速率采樣,在保證失真度的情況下降低數(shù)據(jù)流,避免因網(wǎng)絡擁擠產(chǎn)生數(shù)據(jù)丟失。設備重啟控制用于使下位機的系統(tǒng)軟件及硬件寄存器完全恢復到初始狀態(tài)。

控制信號的數(shù)據(jù)量較小,對傳輸?shù)目煽啃砸髧栏?,故采用TCP協(xié)議。對于LabVIEW程序的設計采用事件驅(qū)動模式,當增益水平和采樣速率的List控件值改變時,驅(qū)動主程序向下位機發(fā)送控制信號。向下位機發(fā)送的是增益水平或者采樣速率的數(shù)值。因為網(wǎng)絡以及系統(tǒng)的延時,效果通常要經(jīng)過一段時間才能反映出來。

4.3 下位機響應程序編寫

下位機的TCP/IP協(xié)議棧是通過LwIP實現(xiàn)的,LwIP提供一系列函數(shù)實現(xiàn)IP,TCP,UDP等的操作。其中tcp_input(),tcp_process(),tcp_receive()與TCP輸入處理有關。函數(shù)netconn listen()讓系統(tǒng)進入TCP監(jiān)聽狀態(tài)。當TCP連接建立后,tcp_receive()把接收到的數(shù)據(jù)tcp_data傳給上級應用程序。再判斷tcp_data數(shù)值的大小,分為以下三種情況:

若為0X11111111,使程序跳轉(zhuǎn)到系統(tǒng)初始位置,重新設置各種設備。

若為1~32,調(diào)用SPI控制程序,給數(shù)據(jù)寄存器SPDR賦值,再通過MOSI發(fā)送給MCP6S28的增益寄存器。

若tcp_data≤1 000,則為采樣速率控制量,需修改A/D轉(zhuǎn)換預置比例因子寄存器ADCPSR,修改的值根據(jù)芯片手冊推導。

4.4 數(shù)據(jù)文件儲存程序設計

由于二進制文件存儲速度快,冗余數(shù)據(jù)少,格式也最為緊湊,因此在進行大量數(shù)據(jù)采集時,往往采用這種文件格式。圖9中是用底層函數(shù)實現(xiàn)的二進制文件的輸入VI,可以實時存儲通過UDP接收的數(shù)據(jù),首先用Open/Creat/Replace File VI新建一個文件,然后在WhileLoop中用Write File函數(shù)將網(wǎng)絡通信數(shù)據(jù)寫入文件,最后用Close File函數(shù)關閉文件。

5 結(jié) 論

本文基于分布式虛擬儀器概念,設計了網(wǎng)絡化數(shù)據(jù)采集和測試系統(tǒng),基于ARM的下位機和基于LabVIEW的上位機通過網(wǎng)絡協(xié)同工作,實現(xiàn)了數(shù)據(jù)的實時采集、處理和存儲。首先針對基于ARM微處理器S3C44B0X的嵌入式采集系統(tǒng)進行整體開發(fā),將嵌入式操作系統(tǒng)μC/OS?II移植到本系統(tǒng)中,開發(fā)了網(wǎng)卡,數(shù)據(jù)采集模塊的底層驅(qū)動程序。同時,移植μC/GUI圖形用戶接口,編寫了鍵盤驅(qū)動,使嵌入式系統(tǒng)具有更友好的人機界面,本系統(tǒng)將虛擬儀器技術和數(shù)據(jù)庫相結(jié)合,引入LabVIEW SQL及相關模型,為有效地組織和管理數(shù)據(jù)以及構(gòu)架網(wǎng)絡數(shù)據(jù)庫,打下了良好的基礎。

參考文獻

[1] 吳文忠,李萬磊.基于ARM和Zigbee的智能家居系統(tǒng)[J].計算機工程與設計,2011,32(6):1987?1990.

[2] 費莉,王博,劉述喜.基于LabVIEW的數(shù)據(jù)采集及測試系統(tǒng)設計[J].重慶理工大學學報(自然科學版),2012(10):38?41.

[3] 全曉莉,周南權(quán),余永輝.基于虛擬儀器技術的網(wǎng)絡實驗系統(tǒng)的研究[J].計算機工程與設計,2011,32(9):3227?3230.

[4] 王曉亮,謝朝輝.基于LabVIEW和FPGA的存儲器測試系統(tǒng)設計[J].計算機測量與控制,2012,20(7):1763?1765.

[5] 陳松林,黃建萍.基于LabVIEW的網(wǎng)絡化數(shù)據(jù)采集及處理系統(tǒng)[J].現(xiàn)代電子技術,2010,33(2):182?184.

[6] 張明,姜崢嶸.基于LabVIEW的網(wǎng)絡虛擬實驗室設計[J].現(xiàn)代電子技術,2010,33(16):178?180.

猜你喜歡
虛擬儀器
PCB 刻制機功能開發(fā)及在虛擬儀器實驗室建設中的應用
虛擬儀器及其在電工電子實驗中的應用
一種基于虛擬儀器的電控柴油機實驗臺的設計
虛擬儀器技術在農(nóng)業(yè)裝備測控中的應用
基于虛擬儀器的DMFC實時監(jiān)控系統(tǒng)
虛擬儀器在三相不平衡度測量中的應用研究