馬帥帥 鄧嘉輝 雷 潔 肖苗苗
(航天科工防御技術研究試驗中心 北京 100854)
恒溫晶振通過溫控電路對器件內部的溫度進行控制,從而讓其內部石英諧振器的頻率溫度系數最小,以實現較高的頻率穩定度,恒溫晶振是目前頻率穩定度和精確度最高的晶體振蕩器。在對恒溫晶振的性能進行評判時,頻率穩定度指標是最重要的考量指標[1],對它的測試要在變溫的條件下進行[2],因此針對恒溫晶振的測試解決方案必然是一套基于溫箱、矩陣開關、測試儀表、電源等設備的集成方案[3]。
隨著計算機技術的進步,數字化儀器、智能化儀器也得到快速發展。在工程上越來越多的儀器希望與計算機連接并組成智能控制系統,以面對設備種類多、獨立性高、操作復雜的窘境[4~5]。Lab-VIEW作為一種圖形化編程語言,支持Windows系統,并借助于強大的VISA架構,向上/向下都展現出了良好的兼容性,方便工程師快捷地部署解決方案,目前已成為工業控制領域一門重要的編程語言[6~7]。
本系統是基于試驗室現有設備進行的數字化改造項目,在進行需求分析之前,先對現有設備進行了梳理,設備清單如表1所示。

表1 試驗室現有設備清單
如上表所示,恒溫晶振測試系統是基于Lab-VIEW語言,以矩陣開關和繼電器作為控制裝置,通過溫箱、電源、頻率計的程控指令,實現恒溫晶振的自動測試。
對于頻率穩定性的測試,恒溫晶振一般有如下的測試要求:測量單個晶振某個溫度下的頻率時,當溫箱的溫度達到目標溫度時,還要對器件加電一段固定的時間,再進行測試,依次類推完成M個溫度點下的頻率測試。在測試頻率穩定性之余,還要測試器件的工作電流。
從表1中可看出,恒溫晶振測試系統的硬件平臺包含6種設備,通訊接口有3大類,基于試驗室現有條件搭建了如下的硬件平臺。

圖1 系統硬件平臺
如上圖所示,計算機在整個系統中作為上位機,通過USB-GPIB-HS+、USB轉串口線、網線與儀器設備進行通信,矩陣開關等儀器設備作為下位機,以LabVIEW軟件為上位機軟件平臺,基于它開發測試程序實現各個設備儀器之間的協同工作。
對于系統的軟件結構設計,具體的軟件流程圖如圖2所示。

圖2 軟件流程圖
從圖中可看出,軟件的工作流程可以分解為以下步驟。
Step1:程序啟動,設備自檢,為變量m、n賦初值,分別為1、1,同時將其傳遞到下一步;
Step2:執行順序結構,進入while循環1,執行其中的順序結構,在其中嵌套了第二個while循環監控溫箱內部溫度,當溫度達到第m個溫度點時,事件結構進行響應,控制程控電源和繼電器對N個器件同時加電一段固定時間;
Step3:繼續執行順序結構,進入while循環2,依次對矩陣開關的16個射頻通道進行切換,同時控制頻率計對每通道上器件的頻率進行測試和采集;
Step4:繼續執行順序結構,進入while循環3,控制繼電器,每次只對一只晶振加電,測試和采集電源端的輸出電流,即為該晶振的工作電流;
Step5:對變量m進行加1操作,再次進入while循環1,重復上述步驟2~4,直至循環M次,保存數據,跳出循環,程序結束。
系統中溫箱僅支持UDP協議,溫箱廠家非VXI聯盟廠家,程控命令為非典型SCPI命令集,不支持VISA函數,需采用UDP函數進行封裝。LabVIEW中支持基于UDP協議的儀器控制函數[8],如圖3所示。

圖3 UDP函數界面
系統中使用USB 6525作為繼電器,在NI-MAX中創建數字任務,將其接入電源電路,在LabVIEW中進行調用即可,便捷高效。
系統中用到的射頻程控開關、電源、頻率計及電源均支持GPIB(IEE488.2)接口,具體連接方式如圖4所示。

圖4 多個GPIB接口連接示意圖
其中射頻開關的使廠家并未提供驅動程序,需使用VISA函數將其控制指令封裝成子VI[9]。基于LabVIEW的軟件系統框架如圖5所示。

圖5 系統框架圖
從低層到頂層包括三部分:VISA庫、儀器驅動程序、應用軟件。VISA(Virtual Instrumentation Software Architecture)庫是標準的I/O函數庫及其相關規范的總稱,一般稱這個I/O函數庫為VISA庫[10~11]。VISA架構是VXI標準的核心架構,聯通了應用層和物理層,簡化了儀器控制的工作。VISA功能函數庫是與儀器接口種類、編程語信及操作系統無關的I/O控制函數庫,并且其應用程序很容易從一種開發平臺移植到另一種平臺。儀器驅動程序封裝了計算機與儀器通信的硬件底層編程細節,為用戶提供了容易理解的接口。每個儀器模塊都有自己的儀器驅動程序,儀器廠商將其以源代碼的形式提供給用戶,可互換的虛擬儀器(IVI)驅動程序是更為復雜的儀器驅動程序[12~13]。
LabVIEW中實現報表生成的方法主要有三種,分別NI公司的報表生成工具包、File I/O類函數以及專門的表格處理軟件[9]。報表生成工具包因實現簡單成為優先選擇,用Excel預先編制好符合標準的報表,用LabVIEW完成測量、檢定和數據處理等任務,把最終得到的數據、結論等,利用Lab-VIEW的程序間通信功能,傳遞到Excel上,并且把各項數據分別寫入表格中預先規定好的位置,使數據得以保存。
基于模塊化編程的理念,本系統中各個功能部分盡可能地切割成了一個個子模塊,在降低代碼量的同時又便于后期的維護。本系統基于硬件和功能兩方面的考量,將系統分為主程序模塊、矩陣開關模塊、頻率計模塊、電源模塊、繼電器模塊、頻率計模塊、溫箱控制模塊、報表生成模塊等8個部分,在主程序模塊中可以對其他模塊的代碼進行調用,開發起來十分方便,最終的程序主界面如圖6所示。

圖6 程序主界面
軟件化測試早已成為測試行業的主流方式,不僅可以提高效率也可以提升測試質量,在本項目中體現十分充分,同時LabVIEW軟件以其跨平臺的兼容性、儀器驅動的豐富性在系統集成領域使用十分廣泛[14~15]。本文基于LabVIEW的恒溫晶振測試系統,將原本繁雜的測試工作變得簡單,大幅降低了工作人員的時間成本,將工作效率成倍提升。