下載本文檔
版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、探測器陣列數(shù)據(jù)實時采集算法設計探測器陣列(detector arrays)測量系統(tǒng)中,為了精確測量一些光強信號,通常需要對傳感 器輸出信號舉行高速、高辨別率采樣,并要求采集圖像實時顯示。從硬件要求來看,采納 的a/d 器件速率在800 mhz 以上,可實現(xiàn)數(shù)據(jù)的高速采集。同時,數(shù)據(jù)存儲技術也正在不 斷完美和提高,存儲容量越來越大,在市場上已浮現(xiàn)容量達1t byte 左右的硬盤。已有的 數(shù)據(jù)采集系統(tǒng)大多數(shù)采納基于pci 的結構34,但在對數(shù)據(jù)牢靠性要求很高的狀況下, 基于pci 總線的數(shù)據(jù)采集系統(tǒng)的牢靠性不能滿足要求。保證數(shù)據(jù)的牢靠性與完整性的同時, 實現(xiàn)數(shù)據(jù)的高速傳輸與實時顯示成為設計該數(shù)據(jù)采
2、集系統(tǒng)的關鍵所在。目前對數(shù)據(jù)采集的討論較多,但對高速數(shù)據(jù)采集的算法相對較少,也有一些對高速、高 辨別率數(shù)據(jù)采集的算法56,但這些算法大多實行數(shù)據(jù)壓縮法,普通很難保證數(shù)據(jù)的完整性。 為此,本文在算法設計中提出了一種既能保證數(shù)據(jù)完整性與牢靠性,又能實現(xiàn)高速大批量數(shù) 據(jù)的實時采集算法,從而解決此問題。2 系統(tǒng)描述在激光大氣傳輸試驗中,光強測量系統(tǒng)由多探測陣列構成。傳感器探測陣列共有1024 個探測單元。對于每個模塊,信號通過模擬開關送入數(shù)據(jù)采集卡,由計算機舉行處理。 在激光大氣傳輸試驗中,對測量系統(tǒng)的穩(wěn)定性與牢靠性要求極高。對數(shù)據(jù)采集軟件的性能及 指標要求是:保證100hz 幀頻下,數(shù)據(jù)采集不丟幀,
3、圖像完整,無亂碼。從技術角度看,目前pci 總線最大數(shù)據(jù)傳輸速率可達133mb/s ,相對較高,但基于pci 總線的數(shù)據(jù)采集系統(tǒng)的牢靠性不能滿足要求,且100hz 幀頻在現(xiàn)有的數(shù)據(jù)采集系統(tǒng)中已不 算高。為此,試驗中采納一種特地為控制而定義的工業(yè)控制總線pc104 總線。此 總線以“針”和“孔”形式層疊銜接,即pc104 總線模塊之間總線的銜接是通過上層的針和下層 的孔互相咬和相連,這種層疊封裝有極好的抗震性。此總線雖滿足了牢靠性的要求,然而它 的傳輸速率相對于pci 總線卻大打折扣,造成pc104 總線與pc 機之間的傳輸速率受到限制。3 數(shù)據(jù)采集算法設計針對以上狀況,本著在試驗中數(shù)據(jù)采集具有
4、實時性和不行重復性,假如浮現(xiàn)臨時性溢出, 應優(yōu)先保證數(shù)據(jù)的整體完整性的原則。本數(shù)據(jù)采集軟件在設計中提出了緩沖區(qū)半滿存儲算法。此算法和現(xiàn)有數(shù)據(jù)采集系統(tǒng)中的 緩沖區(qū)算法、數(shù)據(jù)壓縮算法相比,其最大優(yōu)勢在于采到的數(shù)據(jù)不易走失,更能保證數(shù)據(jù)的完 整性,且大大提高了pc104 總線與pc 機之間的傳輸速率。同時軟件設計中用法實時多任務控制方式,并將采集到的數(shù)據(jù)以二進制的形式挺直保存 進文件。這就不僅達到存儲量大、數(shù)據(jù)傳輸效率高的目的,而且滿足了圖像實時傳送的要求。3.1 緩沖區(qū)半滿存儲算法所謂緩沖區(qū)半滿存儲算法,就是在數(shù)據(jù)采集進程中,設置一個數(shù)據(jù)hfifo 緩沖區(qū)指針。 緩沖區(qū)大小設置為8192 個字節(jié)。
5、當pc104 總線上浮現(xiàn)數(shù)據(jù)時,總線板中首先將接收到的數(shù) 據(jù)幀放入hfifo 緩沖區(qū)。當hfifo 達到半滿時,就讀出低位的4096 個字節(jié)的數(shù)據(jù),讀出 數(shù)據(jù)的同時,為hfifo 騰出了空間,而總線板中接收到的數(shù)據(jù)幀繼續(xù)放入hfifo 緩沖區(qū)。 詳細操作如下:首先,將緩沖區(qū)別為以下 5 種狀態(tài):狀態(tài) 0 表hfifo 空狀態(tài)1 表hfifo 非空但不到半滿狀態(tài)2 表hfifo 達到或超過半滿,但未到全滿狀態(tài)3 表hfifo 全滿狀態(tài)4 其他數(shù)值 表未知狀態(tài),不應當浮現(xiàn)第二,對hfifo 的狀態(tài)舉行推斷:a當數(shù)據(jù)未達到緩沖區(qū)大小的一半時(即狀態(tài)0 或狀態(tài)1):此時返回,舉行數(shù)據(jù)采 集。b當數(shù)據(jù)達
6、到或超過緩沖區(qū)大小的一半但未到全滿(即狀態(tài)2):進程將先推斷一下 hfifo 狀態(tài),若為半滿,就一次讀出全部的4096 個字節(jié)的數(shù)據(jù);若超過半滿,但未全滿, 此時只將低位4096 個字節(jié)的數(shù)據(jù)讀出,原高位的數(shù)據(jù)前移,占領hfifo 低位。再將讀出的 全部數(shù)據(jù)挺直保存到二進制文件中。這里特殊提出:因為多傳感器探測系統(tǒng)采集時光較長或不受時光限制,軟件設計中將采 集到的數(shù)據(jù)挺直保存進文件,這就在存儲工程中節(jié)約了大量的時光。另外,數(shù)據(jù)保存在二進 制文件中,能實現(xiàn)圖像的實時顯示。c當hfifo 全滿(即狀態(tài)3):此時數(shù)據(jù)采集進程只要讀空hfifo 或達到用戶指定的 個數(shù)就可返回。讀數(shù)時分兩批,先將低位的
7、4096 個字節(jié)的數(shù)據(jù)讀出,保存到二進制文件中;再將高位的數(shù)據(jù)所有讀出,即讀空hfifo,緊接著前面的數(shù)據(jù)寫入文件中。分兩批讀數(shù)的優(yōu)點在于以下兩方面:1)縮短了一次讀數(shù)的時光;2)低字節(jié)的數(shù)據(jù)讀完 后,為hfifo 騰出了空間,以便總線板中接收到的數(shù)據(jù)幀繼續(xù)放入hfifo 緩沖區(qū),數(shù)據(jù)不 易走失,保證了數(shù)據(jù)的完整性。d其他數(shù)值:表未知狀態(tài),不應當浮現(xiàn)。在此不再詳述。3.2 多線程控制因為測試系統(tǒng)是由多個探測模塊構成傳感器探測陣列。要對多路參數(shù)舉行檢測和控制, 為了降低囫圇系統(tǒng)的復雜度,實現(xiàn)圖像實時傳送,滿足采集過程的高速要求和中斷要求。還 要保證幀頻達到或超過100hz,需要數(shù)據(jù)采集控制軟件具
8、有多任務并行的能力,即設計多個 線程,并且因為完成的任務不同,各線程的設計也不盡相同。軟件共設計包括數(shù)據(jù)采集線 程、控制線程、繪圖線程,程序運行中最多時會浮現(xiàn)幾個線程并行運行的可能。為保證大量 數(shù)據(jù)的完整性以及糾錯復原功能,數(shù)據(jù)采集線程優(yōu)先級高于控制線程。軟件結構簡圖見圖1。1 所示,hfifo 緩沖區(qū)在狀態(tài)2 時進入繪圖線程1。繪圖線程 1:在繪圖時要求先推斷一下hfifo 狀態(tài),若為半滿,就讀前4 幀即低位的 4096 個像素,然后立即返回,舉行繪圖,繪圖時只繪出第一幀,最后保存數(shù)據(jù)。 hfifo 緩沖區(qū)在狀態(tài)3 時進入繪圖線程2。繪圖線程 2:讀分兩次讀滿8 幀即8192 個像素,然后立
9、即返回,舉行繪圖,繪圖時也 只繪出第一幀,最后保存數(shù)據(jù)。繪圖線程2 所示。4 數(shù)據(jù)采集算法實現(xiàn)本系統(tǒng)軟件平臺采納 micro 公司的microsoft visual c 2005,該平臺具有界面友好、功 能強大、資源豐盛等優(yōu)點,徹低面對對象的編程和消息處理。在典型的microsoft visual c 2005 多線程程序中,用法主線程創(chuàng)建、顯示并運行用戶界面,在次線程中運行其它的對時 間要求很高的操作(如daq)。microsoft visual c 2005 平臺提供了兩種在 windows 的次線 程中運行代碼的高級機制,分離是線程池(thread pools)和異步定時器(asynch
10、ronous timers)。線程池適用于需要延續(xù)地執(zhí)行多次或在循環(huán)中執(zhí)行的任務,而異步定時器適用于在固定 時光間隔內執(zhí)行的任務。因為實驗中參數(shù)的采集和總線數(shù)據(jù)的收發(fā)是首要的任務,需要延續(xù) 地執(zhí)行。因此,編程時采納線程池技術,在程序的主線程(數(shù)據(jù)采集線程)中創(chuàng)建線程池,控制線程、繪圖線程都在線程池創(chuàng)建的次線程中運行。詳細程序中設置了數(shù)據(jù)采集線程函數(shù) datathread(),獲得狀態(tài)函數(shù)gethfifostatus()。在獲 取hfifo 狀態(tài)中,用了4 個“case: break;”語句來推斷狀態(tài),從而舉行循環(huán)。 當進入狀態(tài) 2 和3 時,大事返回后便進入繪圖線程,軟件只設置gatherdata()為繪圖線 程函數(shù)。線程空閑時則舉行圖象的播放,數(shù)據(jù)優(yōu)先保存,savedata()為數(shù)據(jù)保存函數(shù)。savedata()函數(shù)中將采集到的數(shù)據(jù)以二進制形式挺直保存到路徑為:e.filename 的文件中。 程序設計時采納挺直指針方式,提高了傳輸數(shù)據(jù)的效率。5 結語本軟件采納 microsoft visual c 2005 開發(fā)平臺,具有友好的用戶界面,操作容易便利, 易于維護。該算法編程容易、計算量小、易于硬件實現(xiàn),而且穩(wěn)定性高;在用法過程中體現(xiàn) 了極強的有用性,滿足了探測器陣
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 家居訂購合同模板
- 招標文件審查與施工合同要點解讀
- 簡易型服裝交易合同
- 碎石采購合同樣本合同
- 飼料添加劑采購合同的合同終止
- 熟食制品廠購銷
- 增資擴股協(xié)議書簡化格式
- 家居采購安裝合同的履行要點
- 倉儲物流配送業(yè)務合同模板
- 物業(yè)服務合同協(xié)議書示例
- 客運企業(yè)雙重預防體系培訓(57頁)
- 新概念 二 Lesson 75 SOS
- 鋁合金壓鑄件的標準
- 浙美版三年級上冊美術試卷(共4頁)
- 吹風機成品過程質量控制檢查指引
- 固定資產(chǎn)情況表
- 瀝青路面施工監(jiān)理工作細則
- 《彩色的中國》音樂教學設計
- 人教版八年級上冊英語單詞表默寫版(直接打印)
- 4.初中物理儀器配備目錄清單
- 企業(yè)中高層人員安全管理培訓--責任、案例、管理重點
評論
0/150
提交評論