當(dāng)前位置:全球供應(yīng)網(wǎng) > 技術(shù)中心 > 所有分類(lèi)
摘 要:為了提高大型實(shí)驗(yàn)設(shè)備的利用率,在此提出利用M atlab、數(shù)據(jù)庫(kù)、FPGA 和服務(wù)器等軟硬件設(shè)施,實(shí)現(xiàn)遠(yuǎn)程實(shí)驗(yàn)系統(tǒng)數(shù)據(jù)采集的方案。該方案中設(shè)計(jì)了基于FPGA 的數(shù)據(jù)采集箱,利用數(shù)據(jù)采集箱將大型實(shí)驗(yàn)設(shè)備和基于J2EE 平臺(tái)的服務(wù)器相連接。服務(wù)器將采集到的實(shí)驗(yàn)數(shù)據(jù)存儲(chǔ)到數(shù)據(jù)庫(kù)軟件中,當(dāng)用戶(hù)需要時(shí),可通過(guò)網(wǎng)絡(luò)訪問(wèn)服務(wù)器獲取數(shù)據(jù)。在客戶(hù)機(jī)端,用戶(hù)還可以采用Matlab 還原實(shí)驗(yàn)數(shù)據(jù),畫(huà)出實(shí)驗(yàn)數(shù)據(jù)曲線(xiàn)。
在科學(xué)技術(shù)發(fā)展過(guò)程中,資源信息的共享對(duì)科學(xué)研究水平的提高具有重要的意義。目前,在一些企業(yè)、高等院校和科研機(jī)構(gòu)中,由于管理體制與設(shè)備使用機(jī)制的局限性,大型實(shí)驗(yàn)儀器的使用率極為有限,造成了大量的資源浪費(fèi)現(xiàn)象。如果針對(duì)大型實(shí)驗(yàn)儀器使用遠(yuǎn)程控制實(shí)驗(yàn),一方面用戶(hù)可以在任何時(shí)間,任何地點(diǎn)通過(guò)網(wǎng)絡(luò)進(jìn)行實(shí)驗(yàn),有利于用戶(hù)合理地安排自己的學(xué)習(xí)、工作計(jì)劃,而不再受時(shí)間和地點(diǎn)的約束; 另一方面則可以提高實(shí)驗(yàn)室資源的利用率。因此,構(gòu)建大型實(shí)驗(yàn)儀器共享平臺(tái)是符合科學(xué)技術(shù)發(fā)展要求的。
1 遠(yuǎn)程實(shí)驗(yàn)系統(tǒng)總體方案設(shè)計(jì)
1. 1 系統(tǒng)的功能及需求分析
對(duì)大型實(shí)驗(yàn)共享平臺(tái)而言,由于構(gòu)建的是一種新型的實(shí)驗(yàn)儀器資源共享平臺(tái),希望能從各種不同設(shè)備中獲取其各自的實(shí)驗(yàn)數(shù)據(jù)或結(jié)果,以平臺(tái)通用的格式來(lái)傳輸和存儲(chǔ)數(shù)據(jù),便于進(jìn)入平臺(tái)的各個(gè)用戶(hù)共享這些實(shí)驗(yàn)數(shù)據(jù)或結(jié)果。
通常實(shí)驗(yàn)儀器由于功能的不同、生產(chǎn)廠商的不同,使得獲取數(shù)據(jù)的方式、數(shù)據(jù)的存儲(chǔ)格式等均不相同,各種實(shí)驗(yàn)儀器基本上采用的都是自己專(zhuān)用的數(shù)據(jù)采集裝置,不能滿(mǎn)足大型實(shí)驗(yàn)共享平臺(tái)的要求。因此,在構(gòu)建大型實(shí)驗(yàn)儀器共享平臺(tái)中,如何完成平臺(tái)中各種不同設(shè)備數(shù)據(jù)信息的采集及處理是實(shí)現(xiàn)遠(yuǎn)程數(shù)據(jù)交流與共享的關(guān)鍵。
1. 2 系統(tǒng)總體結(jié)構(gòu)
根據(jù)需求分析,遠(yuǎn)程實(shí)驗(yàn)系統(tǒng)結(jié)構(gòu)如圖1 所示。
圖1 遠(yuǎn)程實(shí)驗(yàn)系統(tǒng)結(jié)構(gòu)圖
在實(shí)驗(yàn)室本地,利用FPGA 體積小,速度快,內(nèi)部延時(shí)小,可自由編程,靈活性高等優(yōu)點(diǎn) ,以FPGA 為核心輔以A/ D 轉(zhuǎn)換器等設(shè)備,設(shè)計(jì)出可提供多種接口的數(shù)據(jù)采集箱。數(shù)據(jù)采集箱接口多樣化,便于同各種不同型號(hào)的實(shí)驗(yàn)儀器相聯(lián),并且數(shù)據(jù)采集箱可以轉(zhuǎn)發(fā)簡(jiǎn)單的控制指令( 如: 啟動(dòng)、停止) 。數(shù)據(jù)采集箱采集到的數(shù)據(jù),在FPGA 中完成數(shù)據(jù)格式化過(guò)程( 將數(shù)據(jù)按照約定編碼成統(tǒng)一的格式) 后,暫存到緩存中,然后經(jīng)傳輸線(xiàn)路將格式化的數(shù)據(jù)發(fā)送到服務(wù)器端存儲(chǔ)到數(shù)據(jù)庫(kù)中保存。數(shù)據(jù)庫(kù)中數(shù)據(jù)主要按時(shí)間段存儲(chǔ),時(shí)間段的劃分由實(shí)驗(yàn)用戶(hù)設(shè)置決定,可以用一次完整實(shí)驗(yàn)過(guò)程來(lái)劃分時(shí)間段,也可以用同一個(gè)實(shí)驗(yàn)分割成幾個(gè)時(shí)間片段來(lái)存儲(chǔ)數(shù)據(jù),這樣有利于日后數(shù)據(jù)比較分析。
在異地,用戶(hù)可以使用PC 機(jī)通過(guò)互聯(lián)網(wǎng)登錄到服務(wù)器,發(fā)出控制指令或?qū)?shù)據(jù)庫(kù)中的實(shí)驗(yàn)數(shù)據(jù)下載到客戶(hù)端。用戶(hù)即可以用表格的形式顯示數(shù)據(jù),也可以將數(shù)據(jù)導(dǎo)入到Mat lab 中,利用Mat lab 強(qiáng)大的繪圖和分析功能,對(duì)實(shí)驗(yàn)數(shù)據(jù)進(jìn)行更為高效的分析。
2 基于FPGA 的數(shù)據(jù)采集箱設(shè)計(jì)
數(shù)據(jù)采集箱主要完成對(duì)實(shí)驗(yàn)數(shù)據(jù)進(jìn)行采集和初步處理的功能。數(shù)據(jù)采集箱可采集的數(shù)據(jù)種類(lèi)包括溫度、電壓、電流、轉(zhuǎn)速等。為了達(dá)到? #數(shù)據(jù)采集效果,數(shù)據(jù)采集箱還提供了多種接口,不僅提供了高效、方便的USB 接口,也提供了工業(yè)通用的RS 232 接口、I DE 接口。數(shù)據(jù)采集箱有溫度傳感器、電流傳感器、旋轉(zhuǎn)編碼器、霍爾傳感器、A/ D 等外部器件,如果由普通的單片機(jī)實(shí)現(xiàn),需要很多的擴(kuò)展芯片,而且單片機(jī)的時(shí)序性強(qiáng),它很難同時(shí)實(shí)現(xiàn)這些功能,或者以降低系統(tǒng)精度作為代價(jià)。所以,在數(shù)據(jù)采集箱中采用FPGA 芯片來(lái)并發(fā)處理系統(tǒng)的各位部分信號(hào),這樣不僅可減少PCB 板的面積,增加抗干擾能力,同時(shí)也減少了成本。數(shù)據(jù)采集箱結(jié)構(gòu)如圖2 所示。
圖2 數(shù)據(jù)采集箱結(jié)構(gòu)圖
數(shù)據(jù)采集箱的核心: XC2VP30是工業(yè)級(jí)Virtex II Pro FPGA 器件之一,邏輯單元Slice 有13 696 個(gè),RAM 為2 448 Kb,136 個(gè)18 ? 1 乘法器以及8 個(gè)數(shù)字時(shí)鐘管理模塊和* 個(gè)用戶(hù)I/ O 端口,以及2 個(gè)工作在350+ MH4,基于FPGA 開(kāi)發(fā)平臺(tái)的BLDCM 模糊PI 控制器IBM Pow erPC 405 RISC 處理器和8 個(gè)3. 125 Gb/ s Ro cketIO 收發(fā)器,能提供多達(dá)120 Gb/ s全雙工數(shù)據(jù)傳輸。Xilinx 的FPGA 是基于SRAM工藝,因此它們是易失的[ 4] ,數(shù)據(jù)采集箱采用3 塊FLASH XCF04S ISP PROM 來(lái)存儲(chǔ)FPGA 的配置文件。
電流采集利用ADS807 完成。ADS807 是帶采樣/保持的高速12 位A/ D 轉(zhuǎn)換器,采用流水線(xiàn)技術(shù)并行處理模擬量。數(shù)據(jù)采集箱中通過(guò)電流傳感器采集到電流值,然后通過(guò)ADS807 將其轉(zhuǎn)換為12 位數(shù)字信號(hào)傳送給FPGA 。為了降低噪聲的影響,采用了平均濾波方法對(duì)A/ D 輸出進(jìn)行濾波?;诖笮蛯?shí)驗(yàn)平臺(tái)的特殊性,本設(shè)計(jì)采用兩個(gè)獨(dú)立工作的轉(zhuǎn)換器構(gòu)成兩通道的模式。
為了得到高精度的速度信號(hào),F(xiàn)PGA 對(duì)E6B2CWZ6C 增量式旋轉(zhuǎn)編碼器的A 相脈沖信號(hào)進(jìn)行采集,被測(cè)對(duì)象每旋轉(zhuǎn)一周,A 相將發(fā)出1 000 個(gè)脈沖信號(hào)。
由于各種設(shè)備、接口的傳輸數(shù)率不相同,在FPGA內(nèi)部為每一種設(shè)備或接口開(kāi)辟獨(dú)立的緩沖區(qū)。
FPGA對(duì)讀入的數(shù)據(jù),先編碼,依據(jù)讀入設(shè)備,添加設(shè)備編號(hào)和接收時(shí)間; 然后將讀取數(shù)據(jù)放入緩沖區(qū); 當(dāng)緩沖區(qū)滿(mǎn),接收到清空緩沖區(qū)或者發(fā)送指令后,緩沖區(qū)數(shù)據(jù)經(jīng)網(wǎng)卡發(fā)送到服務(wù)器端。
3 基于J2EE 的軟件設(shè)計(jì)
J2EE 作為業(yè)界開(kāi)發(fā)企業(yè)級(jí)電子商務(wù)的標(biāo)準(zhǔn)技術(shù),其組件不僅繼承了Java 2 平臺(tái)的優(yōu)點(diǎn),如平臺(tái)無(wú)關(guān)性、安全性等,還增加了一系列的企業(yè)應(yīng)用程序編程接口,如Java 消息服務(wù)( Java Messaging Serv ice,JMS) 、企業(yè)Java 組件( Enterprise Java Bean,EJB)、Java 命名和目錄服務(wù)( Java Naming and Dir ecto ry Interface,JNDI) 、公共對(duì)象請(qǐng)求代理體系結(jié)構(gòu)( Commo n Object RequestBr okerAr chitecture,CORBA ) 、遠(yuǎn)程方法調(diào)用( RemoteMethod Inv ocat ion,RMI) 、Java 事務(wù)服務(wù)( Java Transact ion Ser vice,JT S) 、Java 數(shù)據(jù)庫(kù)連接( Java DataBaseConnect ivity,JDBC) 等。
本系統(tǒng)服務(wù)器端應(yīng)用基于St rut s 和Hiber nate 的MV C( Model View Contr oller) 設(shè)計(jì)模式。該設(shè)計(jì)模式把數(shù)據(jù)庫(kù)封裝起來(lái),對(duì)業(yè)務(wù)層提供統(tǒng)一API 訪問(wèn),節(jié)省開(kāi)發(fā)人員的工作量,它可使整個(gè)管理系統(tǒng)的結(jié)構(gòu)層次清晰,并實(shí)現(xiàn)了層之間的解耦,使開(kāi)發(fā)過(guò)程中層與層之間的工作幾乎是獨(dú)立的,極大的提高了系統(tǒng)的開(kāi)發(fā)效率,同時(shí)也提供了系統(tǒng)的可重用性和靈活性,為日后的擴(kuò)展和維護(hù)留有很大的余地。
在服務(wù)器端,主要設(shè)計(jì)了用戶(hù)管理模塊,實(shí)驗(yàn)數(shù)據(jù)管理模塊,通信模塊。用戶(hù)管理模塊的主要功能是實(shí)現(xiàn)用戶(hù)權(quán)限分級(jí),防止惡意訪問(wèn)。實(shí)驗(yàn)數(shù)據(jù)管理模塊主要對(duì)接收到的實(shí)驗(yàn)數(shù)據(jù)進(jìn)行分類(lèi)、分時(shí)間入庫(kù),并建立相應(yīng)的數(shù)據(jù)日志和備份。通信模塊一方面負(fù)責(zé)與采集箱通信,另一方面負(fù)責(zé)與遠(yuǎn)程客戶(hù)端交流,完成按用戶(hù)指令采集實(shí)驗(yàn)數(shù)據(jù)、將實(shí)驗(yàn)數(shù)據(jù)提交給用戶(hù)等工作。
4 結(jié) 語(yǔ)
在此對(duì)建設(shè)遠(yuǎn)程實(shí)驗(yàn)系統(tǒng)的意義進(jìn)行了探討,并設(shè)計(jì)了遠(yuǎn)程實(shí)驗(yàn)系統(tǒng)結(jié)構(gòu): 以FPGA 為核心設(shè)備的數(shù)據(jù)采集箱,利用J2EE 平臺(tái)以B/ S 模式對(duì)實(shí)驗(yàn)數(shù)據(jù)進(jìn)行遠(yuǎn)程讀取。今后將在遠(yuǎn)程實(shí)驗(yàn)系統(tǒng)設(shè)計(jì)方案中設(shè)備可靠性進(jìn)行進(jìn)一步研究。例如: 多用戶(hù)并發(fā)控制實(shí)驗(yàn)設(shè)備時(shí),指令發(fā)出的先后順序控制; 用戶(hù)發(fā)出錯(cuò)誤指令可能導(dǎo)致設(shè)備工作異常的處理措施等方面,還待進(jìn)一步研究。