基于USB的樁基靜載荷無線測控系統(tǒng)設(shè)計(jì)-嵌入式
本文針對現(xiàn)有樁基測試數(shù)據(jù)采集方法的弊端和實(shí)時(shí)數(shù)據(jù)監(jiān)測和控制的需要,設(shè)計(jì)了一個(gè)基于USB接口傳輸?shù)膶?shí)驗(yàn)系統(tǒng),此系統(tǒng)能夠?qū)崿F(xiàn)上位機(jī)與數(shù)據(jù)采集箱之間的快速數(shù)據(jù)傳輸,實(shí)現(xiàn)上位機(jī)對各個(gè)通道的數(shù)據(jù)進(jìn)行分析、管理(及對下位機(jī)的)控制,系統(tǒng)安全可靠。
1 測控系統(tǒng)設(shè)計(jì)
該系統(tǒng)由負(fù)責(zé)實(shí)現(xiàn)采集、存儲、數(shù)據(jù)傳輸功能的數(shù)據(jù)采集箱、上位機(jī)、無線收發(fā)模塊及接收機(jī)組成。結(jié)構(gòu)如圖1所示。數(shù)據(jù)采集箱采用傳感器前端+智能采集、控制單元(應(yīng)力傳感器模塊,位移傳感器模塊,振弦傳感器模塊,RS 232通信模塊,液壓控制模塊)+主控單元的架構(gòu),主控卡為數(shù)據(jù)采集箱的核心,實(shí)現(xiàn)與上位機(jī)的通信以及與智能數(shù)據(jù)測控單元的通信。各種傳感器信號首先經(jīng)過智能采集單元模塊進(jìn)行信號調(diào)理、A/D轉(zhuǎn)換,同時(shí)與主控單元模塊通過CAN總線進(jìn)行數(shù)據(jù)傳輸,這樣便于其他功能的擴(kuò)展。經(jīng)過主控卡讀取來的信號通過無線傳輸模塊發(fā)送給接收機(jī),接收機(jī)再通過USB與上位機(jī)通訊。主控卡中增設(shè)有大容量NandFLASH存儲器,實(shí)現(xiàn)傳感器采集數(shù)據(jù)的存儲備份。當(dāng)主控卡和上位機(jī)無線傳輸數(shù)據(jù)失敗時(shí),可以通過主控卡上預(yù)留的RS 232接口把FLASH存儲器內(nèi)的數(shù)據(jù)讀走,F(xiàn)LASH存儲器內(nèi)的數(shù)據(jù)掉電后也可長時(shí)間保存,增強(qiáng)了系統(tǒng)的可靠性。
點(diǎn)擊看大圖
系統(tǒng)中各模塊通過底板供電,為了抗干擾消除模塊之間電源的相互影響,每個(gè)模塊內(nèi)部對+5 V電源采用DC/DC隔離。由于在樁基施工現(xiàn)場一般電源不太穩(wěn)定,各種重型設(shè)備引起的干擾比較大,本系統(tǒng)各個(gè)智能采集單元相互電氣隔離,通過CAN總線進(jìn)行各模塊之間的通訊,增強(qiáng)系統(tǒng)了的安全性。數(shù)據(jù)采集箱采用4U歐式標(biāo)準(zhǔn)機(jī)箱,機(jī)箱由插槽、背板、電源模塊等構(gòu)成。由于傳輸距離要求不高,無線模塊采用的是瑞米斯公司先前生產(chǎn)的并口傳輸模塊能夠?qū)崿F(xiàn)數(shù)據(jù)的高速傳輸。接收機(jī)實(shí)現(xiàn)無線數(shù)據(jù)收發(fā)功能,是由Cypress公司的CY7C68013控制芯片擴(kuò)展而來。整個(gè)系統(tǒng)結(jié)構(gòu)緊湊,搭建方便,能夠達(dá)到預(yù)定要求。
2 接收機(jī)設(shè)計(jì)
接收機(jī)由Cypress公司的CY7C68013芯片擴(kuò)展而來。CY7C68013包括1個(gè)8051處理器,1個(gè)串行接口引擎(SIE),1個(gè)USB收發(fā)器,8.5 KB片上RAM,4 KBFIFO存儲器以及1個(gè)通用可編程接口(GPIF)。智能串行接口引擎(SIE)執(zhí)行所有基本的USB功能,并將嵌入式MCU解放出來以用于實(shí)現(xiàn)專用的功能,保證其持續(xù)的高性能的傳輸速率。
2.1 硬件設(shè)計(jì)
CY7C68013有三種可用的接口模式:端口、GPIF主控和從FIFO。本系統(tǒng)采用此GPIF主控模式,GPIF作為內(nèi)部的主控制器與FIFO直接相連,通過編程來決定控制信號的輸出狀態(tài)。對于接口數(shù)據(jù)的總8位,選擇FD[7:0]引腳,并設(shè)置WORDWIDE=0??刂戚敵鲆_CTLn被用作讀和寫選通信號。準(zhǔn)備好輸入引腳RDYn,通過GPIF采樣,并且能強(qiáng)制進(jìn)行等待,繼續(xù)或重復(fù)等操作,直至進(jìn)入特定的狀態(tài)。GPIF地址線隨著數(shù)據(jù)傳輸產(chǎn)生地址累加。芯片時(shí)鐘被配置為48 MHz的內(nèi)部時(shí)鐘,通過IFCLK引腳輸出,見圖2。
點(diǎn)擊看大圖
2.2 程序設(shè)計(jì)
2.2.1 固件設(shè)計(jì)
固件(Firmware)直接與硬件進(jìn)行通信,主要功能是負(fù)責(zé)接受和處理主機(jī)發(fā)給設(shè)備的各種請求,并向主機(jī)返回設(shè)備的狀態(tài)信息。Cypress公司為了簡化固件代碼的開發(fā)過程,特別設(shè)計(jì)一個(gè)固件程序框架,框架如圖3所示。主要工作是完成初始化、USB標(biāo)準(zhǔn)設(shè)備請求的處理和USB掛起電源管理服務(wù)。使用框架來構(gòu)造固件程序,首先框架初始化內(nèi)部的狀態(tài)變量,調(diào)用用戶初始化函數(shù)TD_Init()。該函數(shù)返回后,初始化USB接口到未配置狀態(tài)并使能中斷。每隔1s進(jìn)行一次設(shè)備重枚舉,直到端點(diǎn)接受到一個(gè)SETUP包。函數(shù)TD_Init()在框架初始化期間被調(diào)用,在設(shè)備重枚舉和任務(wù)調(diào)度啟用之前調(diào)用該函數(shù),用來初始化用戶的全局變量。
評論排行