李 彥, 王慶濤
(北京航空航天大學 儀器科學與光電工程系,北京 100191)
?
基于CAN總線的光纖陀螺自動測試系統
李 彥, 王慶濤
(北京航空航天大學 儀器科學與光電工程系,北京 100191)
星載光纖陀螺的測試項目多,耗時長,同時需要實時監控陀螺狀態。針對上述問題,提出了一種采用控制器局域網(CAN)總線與現場可編程門陣列(FPGA)相結合的方案。基于Verilog語言設計下位機采集程序,VC6.0的微軟基礎類(MFC)框架編寫上位機采集程序,設計自動測試系統實現自動測試功能,可以實時采集并自動存儲陀螺的輸出數據,同時實時監控光纖陀螺的工作電壓、電流和環境溫度,在出現過壓、欠壓、過流和溫度異常情況下開啟故障保護功能并報警,達到了預期的技術指標,可靠地保障光纖陀螺測試的順利進行。
光纖陀螺; 控制器局域網總線; 自動測試
光纖陀螺從研制到生產需要經過大量的性能測試,測試項目多、測試時間長、工作量大一直是測試人員面臨的主要問題,并且在單調、冗長的測試過程中,很可能會由于疏忽和經驗缺乏對測試結果產生不良影響[1]。現階段陀螺測試系統功能比較單一,僅僅能夠實現單一產品數據的采集,并且需要工作人員實時監控測試過程中出現的故障,耗費大量的人力。如果不能及時發現供電電源故障,可能損壞光纖陀螺。因此,對光纖陀螺供電電源進行監控,可以實時記錄電源的輸出電壓、電流,有利于分析陀螺的工作狀態[2]。具備較少人工干預、自動化數據處理、自主故障診斷等特點的自動測試系統對光纖陀螺的研制和生產是十分必要的。
首先對自動測試系統功能進行分析,設計了一種基于控制器局域網(controller area network,CAN)總線的自動測試技術,實時監控電壓、電流和環境溫度,從硬件和軟件兩方面保護光纖陀螺,并對光纖陀螺數據自動采集、計算、顯示和存儲,定時開關電源,從而簡化光纖陀螺測試環節,實現自動化測試。最后,通過實驗檢驗自動測試系統功能。
1.1 系統功能
設計的光纖陀螺自動測試系統應具備以下功能:1)能有效地解決供電電源可能產生的故障,保護光纖陀螺安全測試;2)可以同時測試多個陀螺,也可以在測試中添加其他的陀螺或者設備節點,互不影響;3)通過CAN總線采集光纖陀螺數據,對數據進行處理,計算出陀螺方差、零漂和零偏等參數,并實時顯示在計算機界面中;4)測試完成后,自動保存陀螺數據并關閉電源,實現自動化測試。
1.2 系統設計
設計的光纖陀螺自動測試系統如圖1所示。

圖1 光纖陀螺自動測試系統框圖
針對+28 V供電的星載光纖陀螺,相應地,自動測試系統的輸入設定為+28 V,以避免額外的電源供電。自動測試系統主要由固態繼電器及其控制電路、過載保護電路、電流電壓溫度采集電路、AD采樣電路、FPGA芯片、CAN總線電路構成。
1.2.1 過載保護原理
電源的電壓在18~32 V,電流在0~1 A波動時,不會對光纖陀螺造成損傷。因此,過載保護芯片選取MAXIM公司的MAX14572,高精度可調節過載電壓和過載電流的集成芯片(IC)[3],可承受高達±40 V的輸入電壓,內置開關FETs導通時電阻RON低于100 mΩ。MAX14572引腳UVLO,OVLO,SET1分別設置欠壓、過壓和限流值。當UVLO和OVLO引腳接地時,MAX14572將采用默認的VUVLO欠壓值19.2 V,VOVLO過壓值32 V。限流公式
R=11 500/ILIM
(1)
式中ILIM(mA)限流值為1 A,即R值選取11.5 kΩ。
1.2.2 檢測電路原理
電流和電壓采集的精度為0.01,環境溫度采集的精度為0.1 ℃。電流檢測采用Maxim公司生產的雙向、精密電流傳感放大器MAX471實現,內置35 mΩ精密傳感電阻器,可測量電流的上下限為±3 A,通過外接2 kΩ電阻器將被測電流按1∶1轉換為對地的電壓[4],即輸出為0~1 V,再經過放大器放大2倍。最終輸入到AD的電壓為0~2 V。A/D轉換器分辨率:2N-1=AF/AMIN=(2-0)/0.01,N≈8。電壓檢測電路采用高精度、低溫漂1 MΩ電阻器和56 kΩ電阻器串聯分壓。分壓后輸入給AD的電壓為0~1.69 V,A/D轉換器的分辨率:2N-1=AF/AMIN=(1.69-0)/(0.01),N≈8。A/D轉換器要在8位以上,考慮到存在量化誤差,以及噪聲、溫漂等其他誤差。因此,電壓和電流采樣中的A/D轉換器采用轉換速率達65 MSPS的12位模/數轉換器AD9235。AD9235為差分傳輸,可以抵消干擾,提高電路整體性能。由FPGA提供外部輸入時鐘。
DS18B20數字溫度實時檢測模塊[5],為測量范圍-45~+125 ℃的12位數字溫度傳感器,溫度值計算公式
T=(-1)n11(26n10+25n9+24n8+23n7+22n6+21n5+ 20n4+2-1n3+2-2n2+2-3n1+2-4n0)
(2)
從上式計算其精度為0.062 5 ℃。信息經過單線接口送入DS18B20或從DS18B20送出,因此,從FPGA到DS18B20僅需要連接一條信號線。
1.2.3 CAN總線電路
CAN是一種具有高可靠性,有效支持分布式控制和實時控制系統[6~8]。選取FPGA作為CAN模塊控制器,CAN控制器SJA1000[9],CAN收發器PCA82C250。PCA82C250是CAN控制器與物理總線之間的接口,對物理總線提供差動發送能力[10]。設計中有兩點需要特別注意:1)FPGA并沒有與SJA1000直接相連。這是因為對于設計選取的FPGA-Spartan6,其接口電平不支持5 V TTL的I/O標準,如果與5V I/O標準的SJA1000直接相連,可能導致FPGA管腳電流過大,造成器件鎖死或者燒毀[11]。為此采用雙向電平轉換芯片74LVX3245,將SJA1000的5 V TTL電平信號轉換成3.3 V I/O標準信號,連接到FPGA的引腳上。2)在CAN控制器與收發器之間不采用光電隔離。光電隔離雖然能增強系統的抗干擾能力,但會增加CAN總線有效回路信號的傳輸延遲,導致通信速率或距離減少。
CAN總線采用兩路CAN_A和CAN_B備份形式,分別接到計算機上。計算機保證其中一路處于工作狀態,實現與控制計算機通信。
1.2.4 FPGA控制電路
系統中除了應用過載保護芯片MAX14572硬件上保護光纖陀螺,FPGA編程控制固態繼電器,從軟件上保障光纖陀螺更可靠的運行[12]。固態繼電器對比電磁繼電器而言,沒有機械零部件,固態器件完成觸點功能,壽命長、可靠性高,沒有輸入線圈,沒有觸點燃弧和回跳,減少了電磁干擾和開關瞬態效應。控制電壓大于3 V,輸入電流大于5 mA時,固態繼電器處于導通狀態。實驗測得固態繼電器導通時會產生0.6 V的壓降。
當供電電源出現過壓、欠壓或過流等故障時,電壓、電流采樣電路將數據輸入FPGA,通過CAN總線發送到計算機,經過計算機分析采集到的數據,通過FPGA控制固態繼電器切斷電源,過程中會產生微小的延時。所以,過載保護芯片會首先切斷光纖陀螺的電源,軟件切斷固態繼電器作為后續保障。在故障排除后,計算機發送指令控制繼電器導通,同時復位過載保護芯片,光纖陀螺再次工作。
1.3 CAN總線即插即用協議設計
在CAN總線中,計算機為整個系統中的主節點,自動測試系統設備和光纖陀螺設為從節點。為區分不同的CAN從節點設備,在每一個CAN從節點設備定義一個唯一的MAC地址,地址長度為4個字節。
節點正常上電后,處于未配置狀態,主節點無法與從節點進行通信,需要進行即插即用配置。配置過程如下:
1)節點自舉 :從節點發送自舉幀,首先通過CAN_A通道發送自舉幀,如果3 s后從節點仍未識別,則通過CAN_A通道再次發送自舉幀,通過CAN_A通道最多允許發送5次自舉幀,如果仍未識別,則采用CAN_B通道發送自舉幀;同樣,通過CAN_B通道最多允許發送5次自舉幀。如果通過CAN_A和CAN_B通道均成功識別,則一直等待計算機發送探測幀,或重新上電。
2)節點自主發現:從節點如果收到主節點發送的探測幀,則檢查自身MAC地址片是否與約束地址一致:如果匹配,則發送探測應答幀;不匹配,則不需要應答,主節點識別一個節點共需要發送8次探測幀[13]。
3)節點配置:從節點如果收到主節點發送的配置幀,則檢查自身MAC地址是否與配置幀中的MAC地址匹配,如果匹配,則從該幀中獲取主節點為其分配的8位節點地址nID,并發送配置應答幀,節點狀態置為已識別。
從節點即插即用處理流如圖2所示。

圖2 從節點即插即用處理流程
新增節點添加到CAN總線網絡后,計算機自動為其分配節點地址,實現與計算機通信。由于添加了CAN總線即插即用協議,能實現多個陀螺同時測試,也可以在陀螺測試中添加其他的陀螺或者設備節點。
1.4 計算機采集軟件設計
微軟基礎類(Microsoft foundation classes,MFC)操作系統界面簡潔,占用資源少,操作方便,因此,采用MFC設計采集軟件、CAN通信的程序[14,15]。采集軟件處理流程如圖3所示。

圖3 采集軟件處理流程
測試開始打開軟件后,陀螺數據需要在陀螺接收到相應計算機指令才會被發送,而電壓、電流及環境溫度數據以2 Hz頻率自主發送。當出現異常時,計算機通過CAN總線自動發送ShutDown命令給FPGA,切斷電源。若沒有出現異常,達到設置測試時間,計算機發送TestEnd指令,結束測試,自動保存數據。根據初始設置自動斷電或進行下一次循環測試,實現自動化測試。
在光纖陀螺正常工作時開啟采集程序,自動測試系統實時地測出陀螺數據、電壓、電流和溫度并顯示在程序中。CAN 總線解決總線競爭的仲裁方案與以太網所采用的CSMA/CD 仲裁機制十分相似,即對報文的標識符按位進行逐位仲裁。將光纖陀螺報文設置為高優先級,保證陀螺數據優先傳輸。
在電路實際測試中,過載保護芯片MAX14572的欠壓值為19.02 V,過壓值為31.79 V,限流值為0.97 A,基本滿足陀螺的供電要求。根據實驗測試的結果與實際值相比較,可以看出精度達到了預期要求,如表1所示。

表1 實驗測試結果
當出現異常情況時,自動測試系統控制系統關閉電源,可靠地保護光纖陀螺。與其他光纖陀螺測試系統相比,系統具有以下特點:1)實時監控陀螺供電電源輸出的電壓、電流和環境溫度。一旦出現過壓、欠壓或者過流等故障,立即自動切斷供電電源,并向測試人員發出報警,自動測試系統從硬件和軟件兩方面保護光纖陀螺;2)使用FPGA設計CAN總線和即插即用上層協議,不需要人為配置節點地址,可同時測試多個陀螺;3)使用VC6.0開發上位機用戶界面,可實現光纖陀螺數據自動采集、計算、顯示和存儲,定時自動開關電源,并可對采集數據進行分析,保證光纖陀螺安全工作。
設計了基于FPGA和CAN總線的光纖陀螺自動測試系統,經過驗證:系統可靠地保障了光纖陀螺電源自動供給和陀螺數據自動采集,滿足了光纖陀螺自動測試的需求。
[1] 趙亞飛,宋凝芳,杜士森,等.基于Visual C++的慣性導航數據采集系統[J].壓電與聲光,2012,34(1):46-50.
[2] 黨永剛,張 偉.光纖陀螺供電電源監控系統設計[J].現代電子技術,2015,38(14):152-155.
[3] 江 浩.MAX在礦用本質安全電源中的應用[J].煤炭技術,2015,34(1):282-284.
[4] 王耀輝,楊小軍.光纖陀螺監測系統設計[J].電子應用技術,2010,36(10):117-123.
[5] 杜華程,許同樂,黃湘俊,等.基于CAN總線的只能傳感器節點設計與應用[J].傳感器與微系統,2015,34(2):82-84.
[6] Philips Semiconductors.CAN Specification 2.0 Part A[Z].1991.9.
[7] Ziermann T,Teich J,Salcic Z.DynOA A-dynamic offset adaptation algorithm for improving response times of CAN systems[C]∥Design,Automation & Test in Europe Conference & Exhibition(DATE),2011,IEEE,2011:1-4.
[8] 高 陽,李永紅,岳鳳英,等.基于DSP和FPGA的CAN總線監視系統設計[J].電子器件,2016,39(1):164-167.
[9] Application note of SJA1000.Philips Semiconductors[Z].1997.
[10] 童 亮.基于CAN總線的車用只能傳感器系統設計[J].傳感器與微系統,2008,27(1):90-92.
[11] 張培坤,高 偉,宋宗喜,等.基于FPGA的CAN總線通信節點設計[J].儀器技術與傳感器,2010,12:67-70.
[12] 葉 東,周志煒,張 飚,等.基于FPGA的多路光電編碼數據采集系統[J].傳感器與微系統,2006,25(5):45-47.
[13] 周 沖.支持即插即用的CAN總線分布式測控網絡的研究[D].長沙:華中科技大學,2008:23-24.
[14] 鄒 坤,石云波,焦佳偉,等.基于以太網的加速度傳感器數據采集傳輸系統設計[J].傳感器與微系統,2015,4(12):66-68.
[15] Liu Yang,Liu Yabin,Chen Kunzhong,Design and Application of Automatic Test System Software Framework[J].Computer Measurement & Control,2007,15(11):1-2.
FOG automatic test system based on CAN-bus
LI Yan, WANG Qing-tao
(School of Instrument Science and Opto-electronics Engineering,Beijing University of Aeronautics and Astronautics,Beijing 100191,China)
Lots of test projects of consume a large amount of time and need real-time monitoring.Aiming at the above problems,the spaceborne FOG automatic test system adopts program of controller area network(CAN)and FPGA is proposed,which bases on Verilog designing collecting lower computer(PC) program and based on Microsoft foundation classes(MFC)of VC6.0 designing upper PC program.The system can real-time acquire and automaticly store FOG data.Meanwhile,monitor working voltage,current and environmental temperature of FOG.In case of overvoltage,undervoltage,over current and abnormal temperature,the system opens fault protection function and alarm.The system achieves expected technical index,and successfully guarantees the test go well.
spaceborne fiber-optic gyroscopes; controller area network(CAN); automatic test system
10.13873/J.1000—9787(2017)08—0082—03
2016—08—31
TP 273.5
A
1000—9787(2017)08—0082—03
李 彥(1975-),女,博士,講師,主要從事光纖傳感研究工作。
王慶濤(1991-),男,通訊作者,碩士研究生,主要研究方向為光纖陀螺自動測試技術,E—mail:w_qingtao@buaa.edu.cn。