鄧 哲,龔靖傑,張玉璽,王家樂,張夢妍
(北京強(qiáng)度環(huán)境研究所,北京 100076)
在火箭的研制過程中,建立準(zhǔn)確的數(shù)據(jù)分析模型來進(jìn)行全箭的結(jié)構(gòu)動(dòng)力學(xué)分析是非常重要的一個(gè)環(huán)節(jié)[1]。這個(gè)數(shù)學(xué)模型的正確與否,需要通過進(jìn)行模態(tài)試驗(yàn)測量模態(tài)參數(shù)來進(jìn)行充分驗(yàn)證。在進(jìn)行模態(tài)試驗(yàn)時(shí),獲取被測結(jié)構(gòu)激勵(lì)和響應(yīng)的時(shí)域信號是模態(tài)試驗(yàn)的重要一步,其測量主要包括傳感器的選取及配置,激振器的選取和布置等環(huán)節(jié)[2-5]。在實(shí)際測量中盡管通過優(yōu)化結(jié)構(gòu)以使模態(tài)試驗(yàn)測量時(shí)盡可能減少傳感器的數(shù)量,在進(jìn)行全箭模態(tài)試驗(yàn)時(shí),仍需要安裝大量測點(diǎn),安裝多臺激振器來獲取火箭結(jié)構(gòu)準(zhǔn)確的模態(tài)參數(shù)。如在一次火箭模態(tài)試驗(yàn)時(shí),需要安裝多達(dá)20個(gè)激振器,測點(diǎn)數(shù)量達(dá)到260個(gè)左右同步測量水平,同時(shí)被測結(jié)構(gòu)的響應(yīng)信號需要通過采集設(shè)備將數(shù)據(jù)傳輸?shù)缴衔粰C(jī)進(jìn)行顯示[6-9]。一般應(yīng)用于模塊實(shí)驗(yàn)的激勵(lì)測量模塊最多支持8通道輸出,即一臺激勵(lì)測量模塊最多連接8個(gè)激振器,僅用1臺激勵(lì)測量模塊不能滿足試驗(yàn)的要求,如增加2臺或多臺激勵(lì)模塊和相應(yīng)設(shè)備雖然能滿足試驗(yàn)需求,但是存在以下兩大問題:1)與激振器、傳感器配套使用的數(shù)據(jù)采集和控制設(shè)備的造價(jià)都較昂貴,增加激勵(lì)測量模塊和采集設(shè)備將造成試驗(yàn)成本成倍增加;2)在試驗(yàn)過程中,需要在激勵(lì)模塊、傳感器和數(shù)據(jù)采集控制設(shè)備之間連接大量的信號線,并明確對映關(guān)系。激振器、傳感器分布在火箭的各個(gè)部位,這就對明確他們之間的通道對應(yīng)關(guān)系造成了很大的困難。不僅如此在經(jīng)過多次操作后,多根信號線相互纏繞,這就導(dǎo)致在連接通道線路時(shí)對應(yīng)關(guān)系出錯(cuò)的問題時(shí)有發(fā)生,甚至導(dǎo)致設(shè)備故障。為解決上述問題,設(shè)計(jì)并實(shí)現(xiàn)了一種信號通道控制器,該控制器具有32路輸入通道和32路輸出通道,用戶可以通過觸摸式液晶屏進(jìn)行32*32通道的任意連接配置和在線通道切換,如圖1所示,在進(jìn)行模態(tài)試驗(yàn)時(shí),僅需在試驗(yàn)開始前將試驗(yàn)系統(tǒng)控制設(shè)備的輸出端連接到信號通路控制器的輸入端,將傳感器和激振器信號線連接到信號通道控制器的輸出端,試驗(yàn)人員通過信號通道控制器的觸摸式液晶屏對輸入、輸出信號通道進(jìn)行配置,就可以實(shí)現(xiàn)實(shí)驗(yàn)系統(tǒng)多路信號和傳感器信號線通道的任意連接和在線切換,無需再次調(diào)整連接線路,并且可以實(shí)現(xiàn)多條通路的在線同步控制。在節(jié)約試驗(yàn)成本和時(shí)間的同時(shí),提高了試驗(yàn)過程的可靠性。
圖1 模態(tài)試驗(yàn)系統(tǒng)圖
信號通道控制器控制系統(tǒng)由以下幾個(gè)部分構(gòu)成:1)采用觸摸式液晶屏作為用戶輸入接口,用戶通過觸摸式液晶屏對通道進(jìn)行配置和查看配置結(jié)果;2)采用超低功耗嵌入式微控制器MSP430FR5969作為控制器對整個(gè)系統(tǒng)進(jìn)行控制[10],該控制器時(shí)鐘頻率高達(dá) 16 MHz,工作模式下功耗僅有約100 μA/MHz[11];3)采用8片AD75019 16*16陣列模擬開關(guān)來實(shí)現(xiàn)32*32路通道差分信號的任意切換,每一片AD75019的輸出信號,在時(shí)鐘有效的情況下,可以根據(jù)控制器GPIO輸出的256位比特流配置實(shí)現(xiàn)16*16路的任意導(dǎo)通;4)觸摸式液晶屏和嵌入式微控制器之間采用串口進(jìn)行通信,通信速率115 200 b/s,其結(jié)構(gòu)如圖2所示。
圖2 控制系統(tǒng)結(jié)構(gòu)圖
采用觸摸式液晶屏作為用戶的信息輸入接口,同時(shí)作為系統(tǒng)的上位機(jī)控制設(shè)備。用戶可以在液晶屏的輸入通路選項(xiàng)框中,將試驗(yàn)系統(tǒng)輸出端連接到信號通道控制器中的通道號進(jìn)行輸入配置,輸入通道可以為輸出通路1~32連接任意通路,不需要的通路可不進(jìn)行輸入配置,輸入完成后點(diǎn)擊確定按鈕,配置數(shù)據(jù)將通過串口下發(fā)到控制器中,控制器對串口命令進(jìn)行組包解析和響應(yīng),實(shí)現(xiàn)信號輸入輸出通道的在線配置和切換。由于對于任意一個(gè)輸出通道不允許多條輸入通道同時(shí)輸出,允許同一輸入通道從多條輸出通道輸出,因此在液晶屏顯示時(shí),固定輸出通道,用戶僅能對輸入通道進(jìn)行配置。
液晶屏和微控制處理器之間采用命令應(yīng)答通信方式,通過串口傳遞數(shù)據(jù)包進(jìn)行通信,通道號由用戶手動(dòng)收入,用戶輸入的通道號采用ASII碼形式保存,通道號小于10的通道采用1個(gè)字節(jié)ASII碼表示,通道號大于10的通道采用2個(gè)字節(jié)的ASII碼表示,每個(gè)通道號前用通道開始字0×20標(biāo)識,控制器通過查詢通道開始字0×20來識別一個(gè)通道號,數(shù)據(jù)按照字節(jié)格式存儲,高字節(jié)在前,低字節(jié)在后。上位機(jī)用戶輸入的32路通道數(shù)據(jù)通過數(shù)據(jù)包的方式下發(fā)到控制器端,整個(gè)數(shù)據(jù)包以0×4D作為數(shù)據(jù)包的結(jié)束字。
嵌入式微控制器根據(jù)用戶在液晶屏輸入的配置信息對通道進(jìn)行配置,通道配置過程如圖3所示,系統(tǒng)上電后首先初始化時(shí)鐘為16 Mhz。將未使用到的GPIO初始化為輸入狀態(tài),降低系統(tǒng)功耗。關(guān)閉串口中斷,配置串口并使能串口接收中斷。上述初始化完成后,將所有通道配置信息清空,將指示指針等清空,進(jìn)入等待串口接收中斷到來狀態(tài)。用戶在觸摸式液晶屏上進(jìn)行通道配置,點(diǎn)擊完成后,液晶屏軟件將用戶的配置信息生成通道配置信息數(shù)據(jù)包,通過串口下發(fā)的嵌入式微控制器,此時(shí)嵌入式微控制器將收到串口接收中斷,收到串口數(shù)據(jù)接收中斷后,進(jìn)入串口數(shù)據(jù)接收狀態(tài)。每收到次串口中斷,進(jìn)行一次數(shù)據(jù)接收操作,微控制器在接收串口數(shù)據(jù)同時(shí),對串口數(shù)據(jù)進(jìn)行存儲并檢查是否為結(jié)束字,若不是結(jié)束字則繼續(xù)等待串口接收中斷的到來并進(jìn)行數(shù)據(jù)接收操作。如果判斷當(dāng)前數(shù)據(jù)為結(jié)束字,表明接收到了一包完整的通道配置信息數(shù)據(jù)包,隨后停止串口數(shù)據(jù)接收操作,將接收到的數(shù)據(jù)存儲到數(shù)組DATA中并生成數(shù)據(jù)接收完畢標(biāo)志,通知主控程序數(shù)據(jù)接收完成,系統(tǒng)進(jìn)入DATA數(shù)據(jù)解析狀態(tài)。系統(tǒng)對DATA數(shù)組進(jìn)行逐個(gè)檢查去掉通道開始字,并將收到的ASII碼數(shù)據(jù)進(jìn)行解析合成出通道配置信息,根據(jù)配置信息生成控制矩陣,根據(jù)通道矩陣控制算法將矩陣數(shù)據(jù)生成比特流逐行下發(fā)對陣列模擬開關(guān)進(jìn)行控制,從而完成通道配置,實(shí)現(xiàn)通道的在線切換配置。進(jìn)行多條通道的數(shù)據(jù)傳輸時(shí),通道間會有信號間的串?dāng)_出現(xiàn),頻率越快,串?dāng)_越嚴(yán)重,為了減弱相鄰?fù)ǖ篱g在傳輸信號時(shí)發(fā)生串?dāng)_,增加一路信號為地,并將該路連接到金屬殼體,在進(jìn)行通道配置時(shí),將未使用到的通道通過配置,和這條通道連接,使得未使用的通道連接到地線,降低了通道間傳輸?shù)拇當(dāng)_,提高了信號傳輸?shù)目煽啃浴?/p>
圖3 配置過程流程圖
信號通道控制器核心控制算法能夠根據(jù)液晶屏的用戶輸入信息計(jì)算出輸出32對應(yīng)用戶設(shè)置的輸入32通道對應(yīng)關(guān)系。每個(gè)輸出通道用戶可隨機(jī)配置32個(gè)任意輸入通道,因此32個(gè)輸出通道和32條輸入通道的配置組合為32*32=1 024種。這就需要通道矩陣控制算法能夠在用戶設(shè)置完成后,快速地對配置關(guān)系進(jìn)行計(jì)算并控制矩陣芯片開關(guān)進(jìn)行相應(yīng)的操作來實(shí)現(xiàn)用戶配置通道的連通。在一次試驗(yàn)過程中,試驗(yàn)人員可能需要多次對輸入輸出連接通道進(jìn)行調(diào)整,這就需要設(shè)備能夠進(jìn)行在線,實(shí)時(shí)的通道配置,因此設(shè)計(jì)了矩陣轉(zhuǎn)換配置方法,將32條輸出通道作為轉(zhuǎn)換矩陣的列,32條輸入通道作為轉(zhuǎn)換矩陣的行,行列交叉的點(diǎn)為通道矩陣控制開關(guān),交叉點(diǎn)值為1時(shí),表示通道連通,交叉點(diǎn)為0時(shí),表示通道不連通。
輸入輸出通道配置包括以下幾個(gè)步驟:1)通道關(guān)系配置信息解析;2)配置信息矩陣轉(zhuǎn)換控制;3)控制矩陣數(shù)值輸出。通道關(guān)系配置信息解析過程如下:用戶在液晶屏將輸入輸出通道對應(yīng)關(guān)系設(shè)置完成后,配置數(shù)據(jù)通過串口下發(fā)到控制器串口,控制器收到串口中斷后,進(jìn)行數(shù)據(jù)接收操作,將數(shù)據(jù)存儲DATA數(shù)組中,接收完成后對收到的數(shù)據(jù)包進(jìn)行解析,計(jì)算出相應(yīng)的通道序號并按照輸出通道順序排列出用戶配置的輸入通道的序列。
對DATA數(shù)組進(jìn)行解析獲取配置信息過程如圖4所示,首先將DATA數(shù)組、DATA數(shù)組指針pickdata、DATAC數(shù)組、data_rec數(shù)組、data_rec數(shù)組指針getdata和數(shù)據(jù)位數(shù)計(jì)數(shù)器CNT清零,隨后檢查指針pickdata對應(yīng)的DATA數(shù)組中的數(shù)據(jù)是否為開始字或者包尾結(jié)束字,每查詢一個(gè)數(shù)據(jù)后指針pickdata執(zhí)行一次加1操作。如果是開始字0×20則去掉通道頭,與0×20相鄰的非開始字?jǐn)?shù)據(jù)為通道配置信息ASII數(shù)據(jù),檢測DATA[pickdata+1]以及DATA[pickdata+2]數(shù)據(jù)是否為0x20,如果不是則將通道配置信息ASII數(shù)據(jù)轉(zhuǎn)換成整型數(shù)據(jù)存儲到DATAC[CNT]中,CNT加1。如果CNT的值為2,說明通道號大于10,需要DATAC[CNT]數(shù)組中的數(shù)據(jù)進(jìn)行合成,得到最終的通道配置數(shù)據(jù)datamath ,datamath = datat[0]*10+datat[1]。如果CNT值為1,則datamath= datat[0],將datamath的值存儲到data_rec數(shù)組中。data_rec數(shù)組即為輸出和輸入通道的對應(yīng)關(guān)系數(shù)組,data_rec數(shù)組對應(yīng)的指針getdata加1。如果數(shù)據(jù)DATA[pickdata+1]值為0×20,則表明第1輸出通道沒有配置輸入通道,則將該通道連接到第32通道從而使未連接的通道連接到地上,此時(shí)data_rec數(shù)組值為32,data_rec數(shù)組指針getdata加1。依次類推,直到DATA[pickdata]的值為結(jié)束字0×4d,停止查詢操作,得到輸入輸出數(shù)組對應(yīng)關(guān)系數(shù)組data_rec。如果DATA[0]不是0×20則說明接收到的數(shù)據(jù)有錯(cuò)誤,控制器將錯(cuò)誤信息通過串口回傳到液晶屏,同時(shí)使得液晶屏上的燈進(jìn)行閃爍提示系統(tǒng)故障,此時(shí)用戶需要進(jìn)行故障排查并將液晶屏數(shù)據(jù)進(jìn)行從新下發(fā)。
圖4 配置信息解析流程圖
配置信息矩陣轉(zhuǎn)換控制過程即根據(jù)data_rec數(shù)組的數(shù)值生成對AD75019的控制矩陣,每一片AD75019的控制比特流為16*16矩陣,4片AD75019對應(yīng)4個(gè)控制矩陣,4片AD75019控制32*32的輸入通道和輸出通道之間的導(dǎo)通和通道切換,行列交叉的點(diǎn)為通道矩陣控制開關(guān),交叉點(diǎn)值為1時(shí),表示通道連通,交叉點(diǎn)為0時(shí),表示通道不連通,如圖5所示。
圖5 配置信息矩陣轉(zhuǎn)換控制過程圖
矩陣行列數(shù)值計(jì)算公式如下所示,用X[n,m]表示16*16控制矩陣,n為控制矩陣的行,m為控制矩陣的列,矩陣行列的初始值為0。獲得data_rec數(shù)組后,通過對data_rec數(shù)組進(jìn)行查詢來獲得控制矩陣的數(shù)值,首先初始化X矩陣為0,設(shè)置data_rec查詢指針i=0,并根據(jù)data_rec計(jì)算結(jié)果在矩陣的相應(yīng)位置填寫1,未填寫的位置值為0,當(dāng)查詢指針i值為31時(shí),即完成了對data_rec數(shù)組的全部遍歷,停止查詢,隨后將矩陣X[n,m]數(shù)值的在每一個(gè)時(shí)鐘周期逐行下發(fā)到控制器的GPIO上,對開關(guān)矩陣進(jìn)行控制,使得連通的輸入輸出通道對應(yīng)的開關(guān)矩陣打開,相反則閉合,從而實(shí)現(xiàn)對輸出輸入通道的在線配置和切換。
控制矩陣1計(jì)算公式:
X[16-i,17-data_rec(i)]=1,
0 控制矩陣2計(jì)算公式: X[32-i,17-data_rec(i)]= 1, 0 控制矩陣3計(jì)算公式: X[16-i,32-data_rec(i)]= 1, data_rec(i)>16,0≤i<16, 控制矩陣4計(jì)算公式: X[32-i,32-data_rec(i)]= 1, data_rec(i)>16,i≥16 其中i為通道號,data_rec(i)為對應(yīng)的通道號。 假設(shè)用戶對32輸出通道都進(jìn)行了配置,且配置為2位字節(jié)通道號,每個(gè)通道號前均設(shè)置的開始字0×20,則用戶配置信息包的長度為(1+2)*32=96字節(jié),液晶屏和微控制器間通信速率為38 400 bps,傳輸96字節(jié)數(shù)據(jù)的耗時(shí)為20 ms。微控制器采用16 Mhz時(shí)鐘頻率,微控制器在收到并存儲完串口數(shù)據(jù)后,對串口數(shù)據(jù)解析,對數(shù)據(jù)進(jìn)行遍歷查找并合并數(shù)據(jù)過程需要96個(gè)時(shí)鐘周期將數(shù)據(jù)存儲到data_rec數(shù)組中,對控制矩陣X進(jìn)行初始化需要32個(gè)時(shí)鐘周期,對data_rec數(shù)組進(jìn)行遍歷并將計(jì)算結(jié)果存儲到X矩陣中,需要32個(gè)時(shí)鐘周期。將矩陣X數(shù)據(jù)下發(fā)需要256*4個(gè)時(shí)鐘周期,微控制器執(zhí)行完成輸出和輸入通道的配置需要時(shí)長約為1 184個(gè)時(shí)鐘周期,約為75 μs,考慮到開關(guān)矩陣開合到穩(wěn)定的過程大約為3 ms,因此用戶配置完成輸入輸出通道到微控制器計(jì)算并執(zhí)行完成需要約24 ms時(shí)間,滿足試驗(yàn)在線快速響應(yīng)切換的需求。 將多路信號控制器應(yīng)用于全箭模態(tài)實(shí)驗(yàn)中,微控制器采用16 Mhz時(shí)鐘頻率,液晶屏和微控制器間通信速率為38 400 bps,傳輸?shù)男盘枮? Hz控制信號,在實(shí)驗(yàn)過程中,實(shí)驗(yàn)人員設(shè)置信號傳輸通道,系統(tǒng)自動(dòng)將未使用通道連接到地平面,同時(shí)進(jìn)行激振器控制通道的在線切換,并通過采集設(shè)備對輸入和輸出端信號進(jìn)行采集,實(shí)測切換時(shí)長約為50 ms,信號能夠保持原幅值輸出,相位誤差小于1 ms,臨近未使用的通道串?dāng)_幅值少于0.2 V,滿足實(shí)驗(yàn)的需求,節(jié)約了實(shí)驗(yàn)時(shí)間,提高了整個(gè)實(shí)驗(yàn)環(huán)節(jié)的可靠性,輸入輸出信號對比如圖6所示。 圖6 輸入輸出信號對比圖 設(shè)計(jì)實(shí)現(xiàn)了一種信號通道控制器,并對軟、硬件設(shè)計(jì)以及矩陣控制算法進(jìn)行了介紹,該信號通道控制器可以實(shí)現(xiàn)多達(dá)32路通道與32路通道的信號的任意連接和智能在線切換。配置連接的通道信號線間導(dǎo)通,未配置連接的通道之間成高阻抗?fàn)顟B(tài)。試驗(yàn)人員僅需將測量通道連接在輸出端,將模態(tài)試驗(yàn)系統(tǒng)測量模塊通道連接在輸入端,就可以通過控制器液晶屏進(jìn)行通道配置,實(shí)現(xiàn)輸入、輸出通道的任意連接和在線通道切換。將該信號通道控制器應(yīng)用到全箭模態(tài)試驗(yàn)中,試驗(yàn)表明,該控制器滿足實(shí)驗(yàn)的需求,節(jié)約了實(shí)驗(yàn)時(shí)間,提高了整個(gè)實(shí)驗(yàn)環(huán)節(jié)的可靠性。3 試驗(yàn)結(jié)果分析
4 結(jié)束語