羅 偉 朱若寒
(1.95890部隊政治處 武漢 430030)(2.國防信息學(xué)院 武漢 430030)
隨著現(xiàn)代軍事戰(zhàn)場環(huán)境的日益復(fù)雜嚴(yán)酷,對軍用裝備的可靠性要求愈加嚴(yán)格。為提高測控系統(tǒng)的可靠性,許多軍用測控裝備常常需要對現(xiàn)場采集的各類信號采取抗干擾處理措施,并進(jìn)行數(shù)字化傳輸[1~3]。本文針對某艦用監(jiān)測系統(tǒng)監(jiān)控設(shè)備多、分布范圍廣、信號傳輸實時性要求高的特點,通過智能信號采集模塊,實現(xiàn)監(jiān)控節(jié)點的多路信號實時傳輸。
系統(tǒng)由一個上位機(jī)及多個智能信號采集節(jié)點組成,所有智能節(jié)點通過CAN總線與上位機(jī)相連,對監(jiān)控設(shè)備實現(xiàn)信息采集。盡管CAN總線具備一定的抗干擾能力[4~6],但由于艦船環(huán)境極為惡劣且維護(hù)保障困難,因此必須對總線采取冗余設(shè)計[7~8]。如圖1所示。
節(jié)點通過以80C51F單片機(jī)為控制核心,采用TJA1050作為CAN總線接口部件。將4路4~20mA傳感器信號進(jìn)行調(diào)理,得到以符合模數(shù)轉(zhuǎn)換器件工作范圍的電壓信號。經(jīng)調(diào)理的模擬量送入單片機(jī)IO引腳。單片機(jī)負(fù)責(zé)數(shù)據(jù)的分析、處理,并協(xié)調(diào)與外部節(jié)點的通訊。
AD采集的信號來自于傳感器的標(biāo)準(zhǔn)電流輸出。設(shè)計輸入電阻為200Ω,對應(yīng)輸入電壓0.8V~4.0V。采用該電壓作為過流報警的輸入,將該電壓經(jīng)過50%的分壓,連接到單片機(jī)IO引腳作為AD的輸入信號,電壓范圍是0.4V~2.0V。同時為了保護(hù)單片機(jī)IO口,在IO口到地跨接2.7V的穩(wěn)壓管。該模塊的電路原理圖如圖2所示。
采用LM339電壓比較器,比較電壓為4V,正常情況下比較器輸出為低電平,當(dāng)輸入電流經(jīng)過200Ω電阻產(chǎn)生的電壓大于4V時,比較器輸出端變成高電平。將4路輸入對應(yīng)的比較器輸出與單片機(jī)IO連接;同時將這4路比較器輸出通過一個4或邏輯電路,產(chǎn)生一個中斷信號,與單片機(jī)INT0連接,用于實現(xiàn)過流報警。74LS32為4路2或門,通過級聯(lián)產(chǎn)生4或邏輯。該模塊電路原理圖如圖3(a)和圖3(b)所示。
圖2 信號調(diào)理模塊原理圖
圖3(a) 過流報警模塊(電壓比較電路)
圖3(b) 過流報警模塊(過流中斷電路)
采用兩個以CAN接口芯片TJA1050為中心的帶冗余CAN物理接口的典型的CAN保護(hù)電路設(shè)計??赏ㄟ^單片機(jī)IO經(jīng)過多路開關(guān)選擇默認(rèn)線路還是冗余線路,利用軟件判斷并控制切換時機(jī)。該模塊電路原理圖如圖4所示。
圖4 CAN通訊模塊原理圖
通過分時復(fù)用,采集4路12bit的AD數(shù)據(jù)并存儲。用默認(rèn)的參考電壓2.25V,設(shè)定增益為1。為進(jìn)一步提高精度,在軟件設(shè)計中采用滑動平均濾波進(jìn)行信號抗干擾處理。
通訊協(xié)議采用CAN2.0A規(guī)范,其消息ID為11位[9~10]。根據(jù)系統(tǒng)需求,采用2組消息對象進(jìn)行通訊:
1)命令幀:
該過程由上位機(jī)發(fā)起,向指定智能節(jié)點發(fā)送控制指令,包括控制設(shè)備IO狀態(tài)、請求AD數(shù)據(jù)等。所有命令統(tǒng)一數(shù)據(jù)域長度為4字節(jié),首字節(jié)為命令字,第2字節(jié)為命令碼,其他字節(jié)保留,并用0填充。幀格式如圖5所示。
圖5 命令幀格式
其中命令字定義為:0x0F—控制設(shè)備IO;0x02—查詢IO狀態(tài);0x04—查詢AD數(shù)據(jù)。
當(dāng)命令字為0x0F時,命令碼有效,代表控制的IO通道編號;當(dāng)命令字不為0x0F時,命令碼無效,填充為0。
2)數(shù)據(jù)幀:
智能節(jié)點接收到上位機(jī)命令幀后,根據(jù)命令字向上位機(jī)發(fā)送采樣數(shù)據(jù)或當(dāng)前IO狀態(tài)。由于每個智能節(jié)點有2路AD通道,每路通道12位。將數(shù)據(jù)域長度設(shè)為4個字節(jié)。對于發(fā)送AD數(shù)據(jù),前兩字節(jié)DA1為通道0采樣并換算所得電流值;后兩字節(jié)DA2為通道1采樣并換算所得電流值數(shù)值。0表示該通道出現(xiàn)斷線故障。發(fā)送AD數(shù)據(jù)的幀格式見圖6。
圖6 數(shù)據(jù)幀格式—AD數(shù)據(jù)
對于發(fā)送IO狀態(tài)數(shù)據(jù),前兩個字節(jié)為節(jié)點當(dāng)前ID號,第3字節(jié)為IO狀態(tài)信息,第4字節(jié)保留,并以0填充。幀格式見圖7。
發(fā)送IO通道狀態(tài)的幀格式。
圖7 數(shù)據(jù)幀格式—IO狀態(tài)數(shù)據(jù)
智能節(jié)點指標(biāo)要求AD采樣率達(dá)到100KHz,為保證實時性,需要在10us時間內(nèi),完成一次數(shù)據(jù)的采集與處理過程。期間的關(guān)鍵時間為CAN數(shù)據(jù)收發(fā)時間以及AD數(shù)據(jù)處理時間。
CAN數(shù)據(jù)收發(fā)主要處理收發(fā)成功或出錯時中斷子程序的寄存器配置;當(dāng)出錯中斷程序發(fā)現(xiàn)在最近10秒內(nèi)始終無法與上位機(jī)建立正常通訊連接,自動將通訊鏈路切換到備份通道。
AD采樣完成信號連接為外部中斷,其處理過程是對AD數(shù)據(jù)進(jìn)行濾波等處理,以獲得需求規(guī)定范圍內(nèi)的線性度。
本文介紹了一種基于CAN總線結(jié)構(gòu)的智能信號采集模塊的設(shè)計與實現(xiàn)。艦船監(jiān)控系統(tǒng)可通過分布在艙室內(nèi)的各智能節(jié)點模塊,完成對艦船設(shè)備的全面監(jiān)控與有效管理。同時,采用雙CAN網(wǎng)絡(luò)結(jié)構(gòu)進(jìn)一步提高了系統(tǒng)的可靠性。
[1]Xiong Jianping,Cheng Zhenyu,You Zheng.on Board Computer Subsystem Design for the Tsinghua Nanosatellite[C]//The 20thAIAA International Communication Satellite Systems Conference and Exhibit,2002(5):12-15.
[2]Jack Elston,Eric Frew.Networked UAV Command Control and Communication[C]//AIAA Guidance,Navigation,and Control Conference and Exhibit,2006(8):21-24.
[3]戰(zhàn)興群,翟傳潤,張炎華,等.周期無人值守機(jī)艙監(jiān)測報警系統(tǒng)方案研究[J].中國造船,2002(43):11.
[4]史久根,張培仁,陳真勇.CAN現(xiàn)場總線系統(tǒng)設(shè)計技術(shù)[M].北京:國防工業(yè)出版社,2004.
[5]Chin E.Lin,Hung Ming Yen.A Prototype Dual CAN Bus Avionics System for Small Aircraft Transportation System[C]//The 25thDigital Avionics Systems Conference,2006(10):115-117.
[6]Nilsson J,Bernhardsson B.Analysis of real time control sys-tems with time delay[C]//Proceeding of the 35th IEEE CDC,1996:3173-3178.
[7]禹春來.CAN總線冗余方法研究[J].測控技術(shù),2003(22):10.
[8]K Arun.Achieving fault tolerance and high reliability[J].Microprocssors and Microsystems,1997(21):147-150.
[9]Takeshi Kasuga,Michitaka Kameyama.Design of a Robust Fault-Tolerant Multiplier[J].System and Computer,1991(22):10-18.
[10]烏寬明.CAN總線原理和應(yīng)用系統(tǒng)設(shè)計[M].北京:科學(xué)出版社,1998.