隨著IT產業和通信技術、電子技術、計算機技術的高速發展,大量的生產裝備和產品的電子化、數字化、自動化、智能化的程度越來越高,與之配套的電子測量設備必須適應這種形勢。因此,綜合測量技術、電子技術、自動化技術和計算機技術于一體的自動測試系統發展日益完善,在一些高度電子化產品、航空航天和軍用武器裝備中以及工業自動化、通信、光學、能源等諸多領域中得到了廣泛應用。
一般意義的自動測試系統是指采用計算機控制,能實現自動化測試的系統。這類系統通常是在標準的測控總線或儀器總線(CAMAC、GPIB、VXI、PXI、CAN等)的基礎上組建而成的。目前,通用串行總線(Universal Serial Bus,即USB)以其方便的即插即用和熱插拔特性及較高的傳輸速率,成為PC機領域廣為應用的外設連接規范。本文介紹的自動測試診斷系統是以五片P89C668單片機為核心組成故障診斷平臺,采用基于FT245BM USB芯片的通信卡建立計算機與測試診斷平臺通信的橋梁,使其能對需要檢測的組合邏輯數字電路板進行測試,并可以根據標準診斷數據庫對產生故障的電路板進行自動故障定位。目前該系統能夠對多種不含有不受控制的部件如CPU、存儲元件、晶振、阻容式單穩態等的數字電路板進行自動測試及故障診斷,可測試的電路板邊緣連接器的最大引腳數為96個。
1 硬件結構
該測試診斷系統的硬件主要由以下部分組成:
·計算機
·USB通信電纜
·USB通信卡
·多MCU系統測試診斷平臺
·微型開關電源
·散熱風扇
·通道連接適配器板等
1.1 計算機
計算機的主要功能是通過USB接口控制測試診斷平臺,進而完成測試平臺系統自檢、通道輸入/輸出的定義、發送測試激勵數據、接收響應數據、數據計算與分析等工作。
1.2 USB通信卡
USB通信卡是連接計算機與測試平臺的橋梁。它的主要功能一方面是將計算機發送的控制命令、數據送到測試平臺的主MCU,使測試平臺完成各種測試任務;另一方面是將測試平臺中多MCU系統的自檢信息和測試結果送往計算機,以供計算機進行判斷與分析。
USB通信卡是基于FTDI公司的FT8U245BM芯片組成的,具有數據傳送速率高(達8Mb/s)和即插即用等優點。
1.3 多MCU系統構成的測試平臺
多MCU系統由一個主MCU和四個從MCU組成。所有的MCU均采用PHILIPS公司的P89C668單片機芯片,其內部有可ISP/IAP編程的64KB Flash程序存儲器和8KB RAM,每個機器周期可采用六個時鐘周期,是傳統單片機(80C51)的兩倍。在其全雙工增強型UART中具有幀錯誤檢測和自動地址識別功能,另外還具有可編程的時鐘輸出功能及可編程的計數器陣列(PCA)等,是PHILIPS公司MCU家族中較為高端的產品。多MCU系統構成的測試平臺如圖1所示。
在本文設計的多MCU系統中,各個MCU的功能如下:
?。?) 主機MCU的功能
·負責與PC機的通信。通信采用目前流行的USB總線通訊方式,一方面接收來自于PC機的命令與數據,另一方面向PC機發送測試數據和自檢信息。
·解釋來自PC機的命令,并向所有從機或者相應的從機發送。對來自PC機的數據進行分類,并發送給相應的從機。對自身的RAM進行自檢。
·負責與四個從機的通信。通信為多機主-從方式,利用MCU的RxD和TxD端以全雙工UART串行模式進行通信,并使用幀錯誤檢測和自動地址識別功能。
·管理四個從機進行同步測試。主MCU利用P1口的低四位(P1.4、P1.5、P1.6、P1.7)向四個從機發送同步控制信號,使得多個從機在測試過程中能夠保持同步性。
?。?) 從機MCU1~MCU4的功能
·通過RxD端口,以串行通信方式接收來自主MCU的與自己相關的命令和數據。
·每個從機的24路I/O端口P0.0~P0.7、P1.0~P1.7和P2.0~P2.7共計96路分別與測試通道Port1~Port96相連接。根據I/O端口的設置情況,向定義的輸出通道輸出測試激勵信號,從相應的輸入通道讀入測試結果并存入相應的RAM單元。
·在被測試電路板的一個輸出通道測試完畢后,將測試的結果發送到主MCU的RAM存儲區,并由主MCU發往計算機。
·負責自身數據存儲區RAM的自檢工作。當接收到主MCU的自檢命令時,對自身的RAM進行自檢,并將自檢結果發送到主MCU。
1.4 測試通道適配接口卡
普通的被測數字電路板是不能直接插到測試平臺的測試接口上的,需要有特制的測試通道適配接口卡才能進行連接。本系統提供的接口卡是96路通道的總線結構的接口卡,可與適用于本設計的數字電路板進行連接。如果要測試其它類型的數字電路板,則需要專門定做與其配套的測試通道適配接口卡。
2 軟件設計
2.1 測試平臺程序設計
本系統測試平臺程序采用模塊化設計,是基于Keil系統開發軟件和TKS-668開發硬件,采用C語言與匯編語言編寫的。模塊化程序設計的思想就是要把一個復雜的程序按整體功能劃分成若干相對獨立的程序模塊,各模塊可以單獨設計、編程、調試和查錯,然后裝配起來進行聯調,最終成為一個有實用價值的程序。本系統的測試平臺軟件主要由系統的主程序、通信程序、測試程序和自檢程序等模塊組成。
2.1.1 主程序設計
主、從MCU的主程序設計流程圖分別如圖2、圖3所示。本系統中的四個從MCU具有相同的功能,因此其主程序設計是一樣的。主、從MCU在初始化中要設置的相關參數包括:串行口的方式、波特率、定時器的方式、中斷等。
2.1.2 自檢程序設計
主從MCU的自檢是為了保證每個單片機都能正常工作,即USB和主MCU、主MCU和從MCU之間的通訊正常,并且保證每個單片機的RAM沒有損壞。
主MCU和從MCU之間的通訊是否正常的自檢是:先由主單片機向從單片機發一串數據,然后再由從單片機把接收到的數據發回主單片機,判斷兩串數據的個數和內容是否一致,一致的話則說明通訊正常。同理,USB和主MCU之間通訊自檢的原理也是如此。
MCU的RAM自檢的原理是:對于每一個RAM的存儲單元,先把一個數據寫入該RAM的單元,然后再從該單元里讀出一個數據,判斷兩者是否一致,如果一致則說明該RAM單元沒有損壞。
2.1.3 通訊程序設計
系統的通訊程序包括:主MCU與USB之間的通訊程序、主MCU與從MCU之間的通訊程序以及從MCU對被檢測電路板的掃描程序。
主MCU和USB是通過USB的管腳D0~D7和主MCU的管腳P0.0~P0.7傳遞數據的??刂浦饕峭ㄟ^USB的四個管腳: RXF、TXE、WR、/RD和主MCU的四個管腳:P1.4、P1.5、P1.6、P1.7進行的。當TXE為低且WR從0變為1時,數據寫入USB;當RXF為低且/RD從1變為0時,數據從USB讀到主MCU。主MCU通過P1.4和P1.5對USB的RXF和TXE進行判斷,然后通過P1.6和P1.7對USB的WR和/RD進行控制傳遞數據。
主MCU與從MCU之間利用MCU的RxD和TxD端以全雙工UART串行模式進行通信,串行通訊通過中斷實現,使用了幀錯誤檢測和自動地址識別功能。本系統的主MCU采用廣播通訊方式,由特殊寄存器SADEN 和SADDR邏輯或產生從機的廣播地址,利用地址自動識別功能,通過發送廣播地址,同時發命令與四個從MCU進行通訊。當主MCU只和單個從MCU通訊時,采用點點通訊方式,由SADEN和SADDR相與產生的特定地址來確認哪些從機被選中與主機進行通訊,不需要再進行軟件查詢。
從MCU對被檢測電路板的掃描程序采用的是功能測試技術。為了檢測某一組合邏輯電路板是否存在故障,首先把該電路板插到診斷插槽上,由于每個輸出端口只是與該電路板所有端口中的幾個有邏輯關系,所以掃描程序只需對與某個輸出端口有邏輯關系的電路板的輸入端口進行從全0到全1的電平激勵(比如有五個輸入端口,一共有25=32組激勵)。對于有邏輯關系的輸入超過七個以上時,由于工作量很大,不實行從全0到全1的激勵,而是從中選擇128組激勵進行類似抽查的檢測,然后讀取輸出端口,把輸出結果傳輸到計算機內,和標準數據庫中的仿真結果進行分析與比較,判斷是否一致,如果出現不一致的情況,則說明電路板存在故障。
2.2 應用系統軟件設計
安裝在計算機上的自動測試診斷系統軟件采用Visual C 6.0語言編程,其主要作用是使計算機向USB接口通信卡發送測試激勵數據、接收響應數據、進行數據計算與分析等。
2.3 標準診斷數據庫的軟件產生方法
建立標準診斷數據庫的目的是為了進行自動故障定位。本系統可用兩種方法建立標準診斷數據庫:第一種方法是根據被測數字電路板的原理圖,在一些EDA軟件環境如Protel、Foudation、MaxplusⅡ中通過仿真功能生成標準診斷數據庫。第二種是測試功能正常的數字電路板,在特定的激勵下記錄該電路板的響應數據,由軟件自動追加到相應的數據庫中,作為今后測試該電路板的標準診斷數據庫。
由于本系統所要測試診斷的電路板端口數較多,采用第二種方法不但工作量非常大,而且還要確保所測數字電路板在測試過程中功能正常,因此本系統采用第一種方法??紤]到所測的電路板為組合邏輯數字電路板,所以本系統采用Xilinx公司的Foundation F3.1i軟件環境,在原理圖編輯器(Schematic Editor)中輸入被測數字電路板的原理圖,然后在功能仿真器(Functional Simulation)的Script Editor中利用軟件自帶的仿真命令自動生成標準診斷數據文件,再由應用系統軟件將數據導入相應的數據庫。
目前一般的自動測試診斷系統通常是在標準的測控總線或儀器總線(CAMAC、GPIB、VXI、PXI、CAN等)的基礎上組建而成的,其成本較高、體積龐大、操作復雜,在測試過程中顯得非常不方便,難以滿足現代科技工作者的需要。本文介紹的自動測試診斷系統是以五片P89C668單片機為核心組成故障診斷平臺,采用基于FT245BM USB芯片的通信卡實現計算機與測試診斷平臺的通信。該系統的便攜式結構特別適合于現場測試,具有成本低、體積小、重量輕、結構緊湊、自動化程度高等優點;系統的操作比較簡單,只要掌握計算機的一般操作,具有一定的數字電路技術基礎,能夠看懂一般的數字電路原理圖,經過簡單的技術培訓,詳細閱讀并理解本系統的使用說明后就可以進行操作;系統硬件模塊的標準化和軟件模塊的可復用性使系統具有很強的擴展能力。目前該測試診斷系統已經投入使用,效果良好,完全達到了預期的設計目的。
評論
查看更多