<meter id="pryje"><nav id="pryje"><delect id="pryje"></delect></nav></meter>
          <label id="pryje"></label>

          新聞中心

          EEPW首頁 > 測試測量 > 設(shè)計應(yīng)用 > ARM7一VxWorKs的網(wǎng)絡(luò)化實時彩色分析虛擬儀器

          ARM7一VxWorKs的網(wǎng)絡(luò)化實時彩色分析虛擬儀器

          ——
          作者: 時間:2007-08-23 來源:單片機及嵌入式系統(tǒng)應(yīng)用 收藏
          特種光源、彩色顯示等行業(yè)的基礎(chǔ)是彩色的還原與傳遞,在光學(xué)計量領(lǐng)域?qū)儆诠庠吹墓舛群蜕扔嬃糠懂?色坐標(biāo)和亮度因數(shù)是主要的參數(shù)之一。光度、色度系統(tǒng)的性能,在高清晰度數(shù)字電視的白場基準(zhǔn)、高清晰度數(shù)字?jǐn)z像機白平衡校準(zhǔn)以及半導(dǎo)體光電二極管LED照明和全彩色顯示的白場均勻性等領(lǐng)域發(fā)揮著基礎(chǔ)性關(guān)鍵作用。

            人眼的視覺可以感受380nm~780nto范圍內(nèi)的光信號,但對不同波長光的敏感程度不同。l924年國際照明委員會CIE公布了2。視場明視覺光譜光視效率函數(shù)V(γ)[1]。仿真人眼亮度感受的光度探測器通常是由光電二極管PIN構(gòu)成的,核心是利用濾色玻璃將PIN的光譜光視效率修正得與(V)盡可能地相似。人眼對色彩的感受來源于人眼視網(wǎng)膜上的3種錐體細胞,分別對應(yīng)紅紅(R)、綠(G)、藍(B)三種顏色。但RGB色度系統(tǒng)的色度函群在某些波段為負值,難于理解和計算,因此目前最常CIEl931 xyY坐標(biāo)系統(tǒng)。其中Y代表亮度,xy分代表紅色和綠色的色度,藍色的色度是紅色和綠色的色度補值,其光譜函數(shù)稱為ClEl93l 2。視場標(biāo)準(zhǔn)觀察者色度函數(shù),分別用X(λ)、和z(λ)表示,其中y(λ)=V

          (λ),如圖1所示。

          色度函數(shù)

            在彩色電視白場測試領(lǐng)域,通常采用由與圖1 色度變換(I/V)構(gòu)成集成化探頭,而將A/D變換與色度計算等工作交給PC機處理,例如美國Klein公司的K5/10系列。利用PC軟件技術(shù),K5/10系列增加了頻譜分析功能,可以分析O~100Hz內(nèi)的電視及計算機顯示器的“閃爍”,是CAl00/200系列所不能完成的。

            在本文的工作中,筆者設(shè)計制作了CSE808新型的彩色分析,特點在于將的概念擴展到通信系統(tǒng)層的資源共享。采用ARM7TDMI內(nèi)核的三星4510B硬件通信系統(tǒng)以及Vxworks嵌入式軟件實時操作系統(tǒng),實現(xiàn)了3路16位并行20kHz采樣率的光度色度數(shù)據(jù)采集,并采用100M以太網(wǎng)和TCP/IP協(xié)議傳輸數(shù)據(jù),領(lǐng)先于美國Klein公司的K5/10系列彩色分析儀。預(yù)計該系統(tǒng)在“刷新頻率”、“響應(yīng)時間”等與顯示器相關(guān)的瞬態(tài)光度色度計量測試領(lǐng)域具有重要意義,在航空閃光警示燈質(zhì)量檢定領(lǐng)域也具有重要應(yīng)用價值。

            1 CsE808彩色分析的設(shè)計

            1.1總體設(shè)計方案

            由于電視及顯示器的幀頻或刷新率一般在l00Hz以內(nèi),因此系統(tǒng)的總體設(shè)計目標(biāo)是可以進行3路并行10kHz取樣率、12位精度以上的實時彩色分析,如此的數(shù)據(jù)量采用傳統(tǒng)的RS232串口(通常幾十Kb/s)以及IEEE488(GPIB,通常幾Mb/s)接口都不能保證實時性,必須采用更高帶寬的探測器與虛擬儀器主機系統(tǒng)互連方案。一種當(dāng)前普遍采用的方案是基于ISA/PcI接口的插卡式A/D,但模擬信號需要從現(xiàn)場到主機進行傳輸,距離受到很大限制。電視或顯示器工廠需要生產(chǎn)線在線彩色分析系統(tǒng),要求具有可擴展、可管理、遠程、多探測系統(tǒng)并行工作等能力,因此采用了TCP/IP協(xié)議以及100M以太網(wǎng)的傳輸方案,以滿足以上需求,但缺點是比較復(fù)雜。虛擬儀器概念的核心應(yīng)該不僅僅局限于軟件,而是擴展到更廣義的資源共享。美國的NI公司提出“軟件就是儀器",在本文中,提出“資源共享就是虛擬儀器”,并把這種思想應(yīng)用到彩色分析虛擬儀器的系統(tǒng)互連設(shè)計上。具體而言,將比較復(fù)雜的TCP/IP協(xié)議以及100M以太網(wǎng)傳輸部分用通用的通信系統(tǒng)板來實現(xiàn),具體采用的是目前比較成熟的ARM7TDMI內(nèi)核的韓國三星4510B通信系統(tǒng)板,未來的工業(yè)級應(yīng)用可以考慮移植到Atmel公司的系統(tǒng)上。這種深入到數(shù)據(jù)傳輸層面虛擬儀器方案的實現(xiàn)難點在于,數(shù)據(jù)采集系統(tǒng)與通用通信系統(tǒng)板的互連,筆者采用FPGA來完成接口轉(zhuǎn)換。采集到的數(shù)據(jù)封裝成TCP/IP包的過程由嵌入在通信系統(tǒng)板上的VxWorks實時操作系統(tǒng)實現(xiàn)。系統(tǒng)整體結(jié)構(gòu)如圖2所示。

          系統(tǒng)整體結(jié)構(gòu)

            色度探測器是加色度濾色片的光電二極管PIN,輸出信號為光電流,強度與PIN接收面上光的照度成正比。信號調(diào)理部分由兩部分構(gòu)成,首先是光電流經(jīng)l/V變換為電壓信號,然后再經(jīng)過2級電壓放大,由換檔開關(guān)決定放大倍數(shù)。信號調(diào)理部分在保證30kHz帶寬的情況下盡量減小噪聲是設(shè)計的關(guān)鍵。由于是并行彩色分析,因此數(shù)據(jù)采集系統(tǒng)采用了3路16位A/D,為了盡量簡化引腳引線,因此采用了串行輸出的A/D。

              1.2 FPGA模塊

            FPGA模塊的作用是將數(shù)據(jù)采集系統(tǒng)采集到的數(shù)據(jù)轉(zhuǎn)移到4510B通信系統(tǒng)板中,具體采用的是Altera的ACEX系列的芯片EPlKl00。數(shù)據(jù)采集系統(tǒng)主要由3塊串行輸出的ADS7809構(gòu)成,需要將數(shù)據(jù)線以及使能、中斷、時鐘等信號與FPGA相連。FPGA“串并轉(zhuǎn)換”A/D數(shù)據(jù)后,存儲在內(nèi)部的雙口SRAM中,供4510B讀取。FPGA與4510B的通信是系統(tǒng)難點,以下詳細介紹。

            ARM體系結(jié)構(gòu)將存儲器看作是從零地址開始字節(jié)的線性組臺。從O字節(jié)到3字節(jié)放置第1個存儲的字?jǐn)?shù)據(jù),從第4個字節(jié)到第7個字節(jié)放置第2個存儲的字?jǐn)?shù)據(jù),依次排列。4510B可以根據(jù)設(shè)置的數(shù)據(jù)總線寬度自動把內(nèi)部地址總線移位輸出到外部地址總線,因此FPGA與4510B互連時,不需要根據(jù)存儲器寬度來移位地址總線,即ADDR[0]總是接存儲器地址的最低位即可。4510B這一特點以及與FPGA的連接方法如圖3所示。

            1.3基于VxWorks的TCP/IP數(shù)據(jù)封裝

            45l0B的通信系統(tǒng)板可以實時完成把采集到數(shù)據(jù)進行TCP/IP協(xié)議封裝的功能,需要采用嵌入式操作系統(tǒng)。我們采用了VxWorks操作系統(tǒng),屬于強實時系統(tǒng)。該系統(tǒng)提供支持ARM7TDMI內(nèi)核的板級支持包以及TCP/IP工具包。下面是在4510B上配置VxWorks的方法。

            首先要調(diào)試VxWorks在4510B上的BSP,其中eonfigh是一個重要的配置文件。該文件中最需要關(guān)注的一部分配置就是對存儲空間的配置。

            #defineROM BASE ADRS 0x01000000 /*Flash起始點?*/

            

          #defineROM TEXT ADRS 0x01000000 /*ROM的開始地址*/

            #define ROM SIZE 0x00100000 /*VxWorks占用的

            #define RAM LOW ADRS 0x00001000 */VxWorks~鏡像進入點*/

            #define RAM HIGH ADRS 0x00100000 /*為ROM啟動的

            RAM地址*/

            相應(yīng)的,在MAKEFILE文件中對內(nèi)存的設(shè)置要與上面相同。  

            ROM_TEXT ADRS="01000000#ROM" entry address

            ROM WARM_ADRS=01000004#ROMwarmentry address

            ROM SIZE="00100000#numberofbytes" ofROM space

            RAM_LOW ADRS="00001000#RAM" text/data address(bootrom]

            RAM_HIGH_ADRS=00100000#RAMtext/data address(bootrom)

            在VxWorks系統(tǒng)中數(shù)據(jù)封裝的方法如下。

            為了及時響應(yīng)外部的數(shù)據(jù)讀取請求,4510B的軟件中采用中斷處理方式讀取FPGA中的A/D數(shù)據(jù)緩存。為了保障連續(xù)的采集和傳輸,對于這部分?jǐn)?shù)據(jù)緩存采用“乒乓法”。待當(dāng)前緩存區(qū)存滿時,從中斷處理程序中釋放一個二進制信號量給上傳任務(wù),由上傳任務(wù)負責(zé)TCP數(shù)據(jù)封裝,并且數(shù)據(jù)存儲的指針切換到另一塊緩存區(qū)。VxWoks使用與BSD4.4 Socket兼容的TCP/IP網(wǎng)絡(luò)協(xié)議棧。目此,基于BSD4.4 UNIX Socket的網(wǎng)絡(luò)應(yīng)用程序可以很方便的移植到VxWorks中來。對于VxWorks下的TCP/IP編程方法[3]這里不再詳述。

            2 PG端軟件系統(tǒng)及實驗結(jié)果

            由于采用了TCP/IP協(xié)議以及100M以太網(wǎng)的傳輸方案,符合國際標(biāo)準(zhǔn),因此PC端軟件系統(tǒng)的開發(fā)非常方便,本課題采用了美國NI公司的Labwindows/CVI來開發(fā),它是基于標(biāo)準(zhǔn)C語言的虛擬儀器開發(fā)工具,提供了包括按鈕、換檔開關(guān)、示波器等在內(nèi)的大量人機界面函數(shù)一以及包括快速傅立葉變換、均方差計算、數(shù)字濾波等在內(nèi)的信號處理函數(shù),大大簡化了開發(fā)進程。在CSE808系統(tǒng)中,4510B通信系統(tǒng)板的IP地址為192.168.0198,作為TCP的Server端;主控PC的IP地址為192.168.0.188,作為TCP的Client端。圖4顯示的是測試得到的I一種CRT顯示器的亮度和兩個色度信號的瞬態(tài)波形。顯示器設(shè)置的刷新頻率是85Hz,CSE808系統(tǒng)的采集速率是通道16位并行20kHz。測試結(jié)果是三個通道的刷新頻群分別是84.9Hz、85.lHz、85.0Hz,證明系統(tǒng)工作正常。
          測試得到的I一種CRT顯示器的亮度和兩個色度信號的瞬態(tài)波形

            3 結(jié)論

            本論文設(shè)計制作了一種并行網(wǎng)絡(luò)化實時彩色分析虛擬儀器。為了實現(xiàn)高速測試系統(tǒng)互聯(lián),本文采用了100M以太網(wǎng)和TCP/IP網(wǎng)絡(luò)通信協(xié)議。設(shè)計思想的新穎之處是在網(wǎng)絡(luò)通信層達到了資源共享,用通用的ARM7TDI內(nèi)核的三星4510B通信系統(tǒng)板完成復(fù)雜的數(shù)據(jù)封裝等網(wǎng)絡(luò)通信工作,并且用VXWorks嵌入式操作系統(tǒng)增加系統(tǒng)的穩(wěn)定性。

          tcp/ip相關(guān)文章:tcp/ip是什么




          評論


          相關(guān)推薦

          技術(shù)專區(qū)

          關(guān)閉
          看屁屁www成人影院,亚洲人妻成人图片,亚洲精品成人午夜在线,日韩在线 欧美成人 (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })();