新聞中心

EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計應(yīng)用 > 一種小型高集成智能測試裝置的設(shè)計與實現(xiàn)

一種小型高集成智能測試裝置的設(shè)計與實現(xiàn)

作者: 時間:2008-08-01 來源:網(wǎng)絡(luò) 收藏
安全關(guān)鍵系統(tǒng)(Safety Critical Systems,SCS)是指系統(tǒng)功能一旦失效將引起生命財產(chǎn)的重大損失、環(huán)境可能遭到嚴重破壞的系統(tǒng),在航天、能源、國防等許多領(lǐng)域中廣泛存在。許多安全關(guān)鍵系統(tǒng)具有多輸入-多輸出的強耦合性、參數(shù)時變性和非線性特性等。高速發(fā)展的電子技術(shù)使得SCS電子系統(tǒng)的度、復(fù)雜度越來越高,受控對象也日益復(fù)雜,這對系統(tǒng)的安全性、運行的正常性評估與決策提出了更高的要求,某些關(guān)鍵部件甚至需要使用期零故障。SCS的數(shù)據(jù)是對其進行全面、準確、評估、故障診斷和決策的基礎(chǔ)。此外,許多安全關(guān)鍵系統(tǒng)還具有嚴格的體積重量限制,要求運行其上的嵌入式系統(tǒng)體積小、重量輕,功能完善,同時必須具有較高的可靠性和化,以保證的正確性,提高測試的可信度。因此與可靠是對SCS檢測最基本的要求,而測試數(shù)據(jù)安全可靠地高速傳輸也是重點要求之一。
本文介紹的這種測試,應(yīng)用于一類安全關(guān)鍵系統(tǒng)電子學(xué)設(shè)備綜合測試系統(tǒng)中。其作用是對安全關(guān)鍵系統(tǒng)的重要狀態(tài)和參數(shù)進行實時控制和測量,完成大量的數(shù)據(jù)采集和處理以及控制信號的接收和發(fā)送等諸多功能。由于對系統(tǒng)的運算速度、接口資源、穩(wěn)定性以及成本等有著非常高的要求,因此其測試數(shù)據(jù)、分析曲線、顯示圖表和指示結(jié)果是分析、判定安全關(guān)鍵系統(tǒng)性能和工作狀態(tài)的重要依據(jù),同時為相關(guān)的決策、指揮、控制提供依據(jù)和手段。
1 系統(tǒng)與工作原理
1.1 系統(tǒng)構(gòu)成

智能測試采用80C196單片機+PSD+CPLD的結(jié)構(gòu)[1],再加上模擬信號的匹配電路,可完成模擬量及數(shù)字量的采集,使系統(tǒng)的電路簡單;PSD及CPLD均為在系統(tǒng)可編程器件,使大量的硬件轉(zhuǎn)換為軟件設(shè)計,I/O接口擴展方便。上位機主要通過標準接口對測試系統(tǒng)的測試數(shù)據(jù)進行傳輸和參數(shù)裝訂及控制。SCS電子學(xué)綜合測試主要包括SCS關(guān)鍵組件測試、地面外圍測控及其數(shù)據(jù)傳輸及處理。其功能框圖如圖1所示。

1.2 小型智能測控的構(gòu)成
小型智能測控裝置主要包括數(shù)據(jù)采集模塊、靜態(tài)檢測模塊、遠程參數(shù)裝訂模塊及數(shù)據(jù)傳輸模塊。由于SCS對電子控制部件有嚴格的體積和重量要求,測控裝置應(yīng)按照系統(tǒng)的要求設(shè)計,使得體積、重量盡量小且功能完善,以便確保系統(tǒng)的可行性。
在測試裝置設(shè)計過程中進行了許多優(yōu)化和改進。其基本體系采用微控制器加外圍接口模塊的結(jié)構(gòu)。在設(shè)計數(shù)據(jù)采集系統(tǒng)的硬件時,采用高集成度的器件,包括80C196單片機、可編程外圍器件PSD以及復(fù)雜可編程邏輯陣列CPLD等,提高了系統(tǒng)集成度,并且還提高了系統(tǒng)硬件的可靠性及靈活性。
外圍接口模塊采用復(fù)雜可編程門陣列CPLD-MAX7256[4],硬件設(shè)計進一步軟件化。一片CPLD器件替代了多片74系列器件,如138譯碼器、多路開關(guān)、244驅(qū)動器、與門、或門等,大大減小了板卡體積。由于CPLD為可編程,使設(shè)計更為靈活。MAX7256有5000個門,256個宏單元,16個邏輯陣列塊,164個I/O口,支持多電壓I/O接口,滿足系統(tǒng)要求,并有一定冗余。在設(shè)計階段對CPLD的設(shè)計通過EDA工具進行仿真,包括功能、時序、EMC/EMI的模擬仿真,在完成PCB板之前,就做好了充分的測試驗證。
另外,選用了集成度更高的單片機外圍接口器件PSD4235[2~5]。PSD4235芯片是WSI公司新推出的PSD4000系列產(chǎn)品,可以為16位和32位的微控制器以及DSP提供在系統(tǒng)可編程的并發(fā)閃速存儲器、SRAM、可編程邏輯和額外的I/O。其片內(nèi)集成了4M位的閃速存儲器,256Kbit的用于引導(dǎo)數(shù)據(jù)的次閃速存儲器,256Kbit的SRAM,16個輸出微單元、24個輸入微單元的CPLD,譯碼PLD,52個可單獨配置的I/O端口,JTAG串行接口等,并且有支持掉電模式的低功耗可編程電源管理單元。PSD芯片對外地址分配和各接口的邏輯譯碼由專用的軟件PSDSoft Express。PSD4000系列器件是在應(yīng)用中可編程(In Application re-Programming,IAP)的,也就是說,它們可以在不影響系統(tǒng)運行的情況下,在現(xiàn)場遠程地進行再編程。這種功能對于需要在現(xiàn)場進行代碼/數(shù)據(jù)更新的系統(tǒng)特別有用,如全球定位系統(tǒng)(GPS)、汽車控制系統(tǒng)以及醫(yī)療儀器等。測控裝置電路原理圖如圖2所示。


1.3 信號采集
在實時測量和控制系統(tǒng)中,對信號的采集要求可靠、準確、快速地完成。被測量的回路一般有幾十或上百個,而且采集信號種類多,包括模擬量信號和數(shù)字量信號,因此測試工作應(yīng)具有很強的實時性,同時對數(shù)據(jù)采集的抗干擾能力也應(yīng)用很高的要求。正是由于對數(shù)據(jù)采集系統(tǒng)的要求日益復(fù)雜,智能化的小型安全關(guān)鍵系統(tǒng)采集模塊才成為測控系統(tǒng)的核心。
數(shù)據(jù)測試主要包括SCS各個關(guān)鍵組件的電壓、程序動作(延時時間或開關(guān)量)、振蕩波形及脈沖串的測試。設(shè)計的重點在于可靠性和實時性。數(shù)據(jù)采集的可靠性是至關(guān)重要的,只有具備了較高的可靠性,才能保證數(shù)據(jù)采集的正確性,因此設(shè)計中充分考慮測試過程的抗干擾能力,提高了測試的可信度。數(shù)據(jù)采集模塊結(jié)構(gòu)如圖3所示。


模擬量的測量采用80C196單片機模擬量測量接口。80C196的A/D口共8個,需要利用多路開關(guān)輪流切換各被測回路的A/D轉(zhuǎn)換電路,以達到分時處理的目的。由于信號的強弱、幅值以及阻抗匹配電路不同,因此設(shè)計時進行了如下處理:
(1)對電壓信號進行分類,不需要放大器的屬于一類,在這類當中又進行細分――電壓值范圍分類。因為80C196單片機要求采集電平在5V以內(nèi),如果對每一路電壓進行分壓及阻容濾波設(shè)計,勢必使用大量的電阻及電容器件,不利于小型化,因此按電壓幅值進行分類。阻抗匹配也十分重要,同一類的阻容濾波網(wǎng)絡(luò)放到多路開關(guān)的輸出端,節(jié)省了大量電阻、電容器件。根據(jù)需要選擇4路、8路或16路的多路開關(guān),如CD4051、CD5052、MAX396或MAX397等。
(2)對于小信號,每個通道應(yīng)在多路開關(guān)前設(shè)置放大器。在多路開關(guān)后設(shè)置可編程放大器,利用單片機編程控制放大器的增益,以滿足各通道信號的不同增益要求。
(3)對于開關(guān)量及數(shù)字量,調(diào)到滿足CPLD輸入要求的電平即可,在CPLD內(nèi)部設(shè)計多路開關(guān),進行測量路數(shù)轉(zhuǎn)換,一次8路分時輸入到80C196單片機端口。
(4)對于頻率信號,調(diào)到滿足單片機輸入要求的TTL電平即可直接輸入單片機端口進行測量。
(5)對于信號強且干擾大的信號,需要進行光電隔離,以免影響單片機測試電路。
1.4 CPLD電路設(shè)計
PSD器件已有少量CPLD宏單元,在測試系統(tǒng)不復(fù)雜、I/O端口夠用的情況下,PSD+CPU的兩片式系統(tǒng)能夠很好完成任務(wù),當然就不必再外加CPLD器件。當測試及控制的外部通道多,需大量的數(shù)字I/O端口、片選、數(shù)字多路開關(guān)、三態(tài)門及譯碼電路時,僅添加一片CPLD器件就可解決問題,提高了系統(tǒng)集成度。
FPGA和CPLD都是可編程ASIC元件,由于FPGA和CPLD結(jié)構(gòu)上的差異,彼此之間存在各自的特點:
(1)CPLD適合各種運算和組合邏輯, FPGA則適用于時序邏輯。
(2)CPLD的時間特性比FPGA穩(wěn)定。CPLD的布線結(jié)構(gòu)決定了它的時序延遲是穩(wěn)定和可以預(yù)測的,而FPGA的分段式布線結(jié)構(gòu)使得對其時間延遲的預(yù)測困難,因而CPLD的速度比FPGA快。
(3)在編程上FPGA比CPLD具有更大的靈活性。CPLD通過修改具有固定內(nèi)部聯(lián)線的邏輯功能來編程,而FPGA主要是通過改變內(nèi)部線路布線來編程。
(4)FPGA的集成度比CPLD高,適合于較復(fù)雜的布線結(jié)構(gòu)和邏輯實現(xiàn),所以FPGA元件的可編程邏輯數(shù)比CPLD大得多。
(5)CPLD使用比FPGA方便。CPLD的編程采用E2PROM或Flash技術(shù),而且可以加密,使用時外部不需要另外的存儲元件;而FPGA的編程采用SRAM技術(shù),使用外部存儲元件來存放程序,使用方法較復(fù)雜。另外,電路信息存放在外部芯片中,使得FPGA的保密性較CPLD差,電路資料容易被他人讀取,電路容易被剽竊,不適合保密程度要求較高的系統(tǒng)。
(6)在編程方式上,CPLD主要是基于E2PROM或Flash
存儲編程,可編程次數(shù)大于1萬次,優(yōu)點是系統(tǒng)斷電時編程信息不會消失。FPGA大部分是基于SRAM編程,編程信息會在系統(tǒng)斷電時消失,所以每次上電時系統(tǒng)都要重新將編程信息從外部記憶裝置讀入FPGA的SRAM中。其優(yōu)點是可編程次數(shù)不限,并且在開發(fā)過程中可以很方便地隨時更改程序,其缺點是系統(tǒng)上電時程序容易受到干擾。
設(shè)計時應(yīng)綜合考慮以上各因素,來確定選擇CPLD還是FPGA。根據(jù)測試功能需求,本系統(tǒng)設(shè)計的CPLD芯片內(nèi)部結(jié)構(gòu)如圖4所示。


在CPLD的設(shè)計中,采用VHDL語言作為主要的設(shè)計手段,是當前ASIC設(shè)計的主流方法之一。VHDL語言實現(xiàn)相關(guān)的設(shè)計過程具有高效、方便、易于移植的特點,而單純的硬件電路設(shè)計缺乏靈活性,修改不方便,動輒印制版報廢。這種硬件設(shè)計軟件化,使得被測對象接入點發(fā)生改變或增減時,僅需相應(yīng)電路的部分軟件作適應(yīng)性修改,底層硬件電路及上層應(yīng)用軟件都不需作大的改動甚至可以不改,大大節(jié)約了系統(tǒng)維護成本。在CPLD的設(shè)計過程當中,一邊設(shè)計,一邊在計算機上完成軟件仿真工作,使得仿真測試與功能行為的檢驗貫穿設(shè)計始終,保證了各項功能的正確性及可靠性,確保了最終產(chǎn)品的設(shè)計質(zhì)量。
在系統(tǒng)設(shè)計中可以根據(jù)需要讓CPLD完成更多的功能,如將80C196單片機的部分功能用CPLD完成,其中主要是測試部分,包括串行接口、數(shù)據(jù)編碼/校驗、幀構(gòu)造、定時發(fā)送、與外圍測試計算機的數(shù)據(jù)交換。通過長期的積累,擁有大量的可復(fù)用IP模塊,使系統(tǒng)開發(fā)設(shè)計更為快捷。
2 智能化與可靠性設(shè)計
系統(tǒng)信息的智能化測控主要體現(xiàn)在兩個方面:一是要具備學(xué)習(xí)記憶功能,能夠根據(jù)信息通道的初始值或?qū)崪y值自動調(diào)整其控制參數(shù);二是可以根據(jù)接收的命令,對其通道號、通道數(shù)、采集時間、傳輸字節(jié)以及控制方式等進行調(diào)整。
本文介紹的小型智能化測試裝置不僅可以根據(jù)需求快速進行測試內(nèi)容的調(diào)整,還具有靜檢、裝訂參數(shù)、提供數(shù)據(jù)的功能。其測試得到的數(shù)據(jù)可通過RS-485串行通信總線或無線手段發(fā)送到外圍測試接收設(shè)備中。由于數(shù)據(jù)傳輸、測試數(shù)據(jù)封裝、因而通道選擇等均由軟件來實現(xiàn),因而智能化程度高,使用方便。
在測控數(shù)據(jù)傳送過程中,針對不同的任務(wù),使用的信息格式各不相同,要采用不同的數(shù)據(jù)處理程序。應(yīng)根據(jù)外圍測控系統(tǒng)與SCS智能測試裝置的通信內(nèi)容,構(gòu)造通信協(xié)議、數(shù)據(jù)處理協(xié)議,依據(jù)不同的信息類別(控制命令)處理不同的數(shù)據(jù),信息幀的打包傳送則由傳輸模塊進行處理。
通常在試驗場所有很強的電磁干擾,這些干擾以傳導(dǎo)和輻射的形式從動力線和信號線進入系統(tǒng)。為了保證系統(tǒng)正常可靠運行,采用軟、硬件相結(jié)合的抗干擾技術(shù),輸入通道中采用RC濾波、高低電平嵌位、隔離技術(shù),很好地抑制了各種高頻干擾,并實現(xiàn)瞬間過壓保護;部分輸入輸出信號采用光電耦合器,隔斷外部信號與控制系統(tǒng)的聯(lián)系;軟件上采用中值和算術(shù)平均值相結(jié)合的方法,剔除信號的瞬間干擾,同時軟件設(shè)計采用多種優(yōu)化手段提高系統(tǒng)的健壯性。為了防止電路因公共阻抗而引起信號交叉耦合,系統(tǒng)采用并聯(lián)單點接地設(shè)計,系統(tǒng)內(nèi)模擬地和數(shù)字地分開,只在一點處匯合。
3 測試裝置的軟件設(shè)計
測控軟件采用PL/M196語言編制[3],用WAVE6000調(diào)試編譯完成。軟件流程圖如圖5所示。


測控軟件主要包含兩個分支:信號測試分支和參數(shù)裝訂分支。其工作分支的判斷依據(jù)是地面提供的一路測試與否的電壓信號。裝訂參數(shù)電壓大于給定值,系統(tǒng)進入?yún)?shù)裝訂分支,單片機等待接收裝訂數(shù)據(jù),進行數(shù)據(jù)正確性判定,并將各數(shù)據(jù)通過I2C接口分類存放到共享的幾片F(xiàn)lash ROM中。如無裝訂電壓,則進入測試分支,單片機開始測試各路信號,并將測試數(shù)據(jù)打包成幀,同時計算全部數(shù)據(jù)的CRC校驗,發(fā)送到接收設(shè)備,并對測試數(shù)據(jù)進行判斷,確定系統(tǒng)工作流程。由于數(shù)據(jù)量較大,需要測試的信號路數(shù)、種類較多,需要打包發(fā)送的數(shù)據(jù)幀長70多字節(jié),每10ms以115.2k的波特率發(fā)送,除去測量、控制及組幀時間,數(shù)據(jù)傳送的時間就要仔細計算了。采用查詢及標準的中斷方式,10ms時間就遠遠不夠了,通過示波器測量,一幀數(shù)據(jù)測試加傳輸需70ms。本系統(tǒng)采用PTS(外設(shè)事物服務(wù)器)中斷方式,由微代碼硬件中斷處理器控制,占用很少的CPU時間,類似于PC機的DMA,不用修改堆棧和保存程序狀態(tài)字。本系統(tǒng)采用PTS塊傳遞方式,只需給定PTS控制字、數(shù)據(jù)塊的起始地址及數(shù)據(jù)長度,定義中斷屏蔽寄存器,最后開放PTS中斷和標準中斷,這樣一幀數(shù)據(jù)測試加傳輸需6.5ms。
經(jīng)過測試實驗表明,采用單片機、PSD、CPLD和電壓調(diào)理電路等主要組件設(shè)計完成SCS相關(guān)信息的采集與控制不僅是高效可行的,也是使得SCS測試裝置小型化、智能化、提高測試系統(tǒng)可靠性卓有成效的途徑之一。單片機與可編程邏輯器件有很強的互補性。單片機具有性能價格比高、功能靈活、易于人機對話、良好的數(shù)據(jù)處理能力特點,CPLD和PSD等可編程器件則具有高速、高可靠性以及開發(fā)便捷、規(guī)范、易于維護等優(yōu)點。這種單片機加外部可編程器件的電路結(jié)構(gòu)在許多高性能儀器儀表和電子產(chǎn)品中有廣泛的應(yīng)用前景。



評論


相關(guān)推薦

技術(shù)專區(qū)

關(guān)閉