基于DSP/BIOS的數(shù)據(jù)采集系統(tǒng)研制
3.2.2 網(wǎng)絡(luò)任務(wù)線程
網(wǎng)絡(luò)服務(wù)啟動(dòng)流程通常是先運(yùn)行NETCTRL任務(wù)線程,完成協(xié)議棧的配置、初始化和事件調(diào)度,然后開(kāi)辟新線程執(zhí)行FTP服務(wù)或者HTTP服務(wù)。本設(shè)計(jì)中,網(wǎng)絡(luò)配置任務(wù)線程即NETCTRL任務(wù)線程,是DSP/BIOS靜態(tài)創(chuàng)建的主線程mainTSK,并動(dòng)態(tài)創(chuàng)建網(wǎng)絡(luò)傳輸任務(wù)線程。網(wǎng)絡(luò)傳輸任務(wù)是最核心的任務(wù)線程,主要完成網(wǎng)絡(luò)命令解析、通道查詢和數(shù)據(jù)上傳的功能,其流程圖如圖3所示。網(wǎng)絡(luò)命令分為自檢、監(jiān)測(cè)和切斷通信下監(jiān)測(cè)3種。自檢時(shí)不需要被測(cè)28 V信號(hào)作為AD采集開(kāi)關(guān),但需要設(shè)備本身提供模擬真實(shí)信號(hào)的以5 ms為周期發(fā)送的RS 422信號(hào),采用PRD來(lái)實(shí)現(xiàn)。通信切斷的功能的為了防止設(shè)備對(duì)原有測(cè)試環(huán)境的影響。
4 數(shù)據(jù)可靠性傳輸機(jī)制設(shè)計(jì)
實(shí)時(shí)采集上傳的數(shù)據(jù)量大,為了保證數(shù)據(jù)傳輸?shù)目煽啃?,要綜合考慮網(wǎng)絡(luò)帶寬、AD采樣率和緩沖數(shù)組等因素。底層數(shù)據(jù)分為AD采集數(shù)據(jù)和RS 422通信數(shù)據(jù)2類,AD采集又分成高速采集和低速采集2個(gè)通道。高速采集通道的平均數(shù)據(jù)量為4 MB/s,低速采集通道的平均數(shù)據(jù)量為50 KB/s,F(xiàn)PGA中為每個(gè)通道配置一個(gè)FIFO,DSP通過(guò)循環(huán)查詢判斷FIFO標(biāo)志位,有效即從FIFO讀取數(shù)據(jù)再通過(guò)網(wǎng)絡(luò)上傳。RS 422通信數(shù)據(jù)采用中斷方式寫到網(wǎng)絡(luò)發(fā)送的緩沖數(shù)組中,為了避免由于中斷搶占導(dǎo)致的數(shù)據(jù)沖突,設(shè)計(jì)2個(gè)緩沖數(shù)組通過(guò)乒乓操作交替寫入和上傳通信數(shù)據(jù)。
各環(huán)節(jié)時(shí)間估計(jì)如下:通過(guò)配置寄存器,DSP訪問(wèn)1次外部存儲(chǔ)器需要40個(gè)100 MHz的時(shí)鐘周期。DM642運(yùn)行TI提供的TCP/IP協(xié)議棧,底層通過(guò)網(wǎng)絡(luò)循環(huán)發(fā)送常數(shù)給上位機(jī),經(jīng)測(cè)試,網(wǎng)絡(luò)平均帶寬為80 Mb/s。因此,DSP從FIFO中讀取4 KWord(雙字節(jié))數(shù)據(jù)并上傳需要的時(shí)間至少為2.46 ms,這段時(shí)間里4.MB/s采樣率下積累的數(shù)據(jù)量近10 KB。為了防止一個(gè)通道數(shù)據(jù)有效時(shí)由于CPU正處理另一個(gè)通道的數(shù)據(jù)而導(dǎo)致第一個(gè)通道FIFO溢出的情況,設(shè)計(jì)每個(gè)FIFO的深度為16 KWord,容量達(dá)1/4時(shí)產(chǎn)生滿標(biāo)志位。數(shù)據(jù)傳輸機(jī)制如圖4所示。
5 結(jié)果分析
上位機(jī)軟件采用VC 6.0結(jié)合SQL 2005數(shù)據(jù)庫(kù)開(kāi)發(fā),實(shí)現(xiàn)網(wǎng)絡(luò)控制、數(shù)據(jù)接收和存儲(chǔ)、數(shù)據(jù)處理和故障診斷以及動(dòng)態(tài)顯示信號(hào)波形的功能。每一次監(jiān)測(cè)的數(shù)據(jù)都自動(dòng)保存到數(shù)據(jù)庫(kù)中以便之后的進(jìn)一步分析和處理。本文引用地址:http://butianyuan.cn/article/148133.htm
采樣數(shù)據(jù)波形顯示界面如圖5所示。
6 結(jié)語(yǔ)
本設(shè)計(jì)利用DSP/BIOS的多任務(wù)機(jī)制,實(shí)現(xiàn)網(wǎng)絡(luò)控制、數(shù)據(jù)采集以及網(wǎng)絡(luò)通信的有效配合,保證底層高速采集的大數(shù)據(jù)量快速可靠得上傳給上位機(jī)。同時(shí),以DM642的硬件資源為基礎(chǔ),通過(guò)調(diào)用NDK提供的APIs,實(shí)現(xiàn)了百兆以太網(wǎng)的傳輸。上位機(jī)軟件利用數(shù)據(jù)庫(kù)作為數(shù)據(jù)存儲(chǔ)平臺(tái),可以方便得處理、顯示、對(duì)比多次采集結(jié)果。實(shí)際應(yīng)用表明,該系統(tǒng)穩(wěn)定可靠、實(shí)時(shí)性強(qiáng),在高速實(shí)時(shí)數(shù)據(jù)采集領(lǐng)域中有一定的應(yīng)用價(jià)值。
tcp/ip相關(guān)文章:tcp/ip是什么
評(píng)論