亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        布爾差分故障檢測算法在FPGA上的實現(xiàn)

        2014-06-01 09:19:32張云桃孟憲民
        自動化儀表 2014年1期
        關鍵詞:故障檢測

        張 敏 張云桃 孟憲民

        (哈爾濱工業(yè)大學(威海)信息與電氣工程學院1,山東 威海 264209;山東卡爾電氣股份有限公司2,山東 威海 264209)

        0 引言

        故障測試是信息產(chǎn)品制造的重要組成部分。在科學技術高度發(fā)展的今天,測試工作處在各種先進裝備系統(tǒng)設計和制造的首位。據(jù)資料顯示,目前測試成本已達到所研制設備成本的50%甚至70%。如何使診測更加快捷和準確是一項重要的研究課題[1]。

        傳統(tǒng)的故障診斷是一項十分復雜的工作。測試的對象數(shù)量龐大,如待測電路的輸入與輸出變量可能多達數(shù)十個甚至上百個,分支龐雜;電路響應是組合的,而且在大多數(shù)情況下是時序的;需要觀察的邏輯位于芯片內部,不可能直接測量它們的邏輯電平與輸入輸出波形。

        現(xiàn)代數(shù)字系統(tǒng)故障診斷的基本思想是在輸入端加載激勵信號,在輸出端得到響應;根據(jù)激勵和響應的對應關系以及電路的拓撲關系,確定故障點。其實現(xiàn)的關鍵是測試向量的生成,即在輸入端加載激勵信號,使輸入故障通過電路內部的故障點反映出來。找到故障的測試向量后,采用數(shù)字系統(tǒng)故障診斷進行故障檢測。

        由于采用FPGA的電子系統(tǒng)更具設計靈活性,其根據(jù)需要更改內部邏輯來滿足硬件外圍電路要求;而故障測試算法具有邏輯的完備性,可以大大提高參試性能和準確度,因此將兩者相結合來進行故障診斷。由于FPGA中的邏輯單元是可編程的,因此可針對布爾差分法定制測試邏輯軟件,而不必做出任何物理硬件變動[2]。

        1 實現(xiàn)方案設計

        方案具體實現(xiàn)過程如下。

        首先針對布爾差分算法特性,構造一個具體數(shù)字電路進行故障分析及故障檢測。

        然后利用算法,求出電路各個節(jié)點以及各種故障的測試矢量,使得輸入故障在輸出端表現(xiàn)出來。將測試矢量作為故障電路的激勵,觀察輸出端的響應,并與該輸入下正常電路的輸出值進行比較,若輸出結果與真實值相反,則測試矢量生效;否則,測試矢量失效。將生效的測試矢量記錄下來,作為下一步進行電路故障檢測時的電路激勵。

        最后計算出每一種故障下各個節(jié)點的故障列表,建立檢測故障所需要的電路模塊,包括故障仿真模塊、分頻模塊、消抖模塊、檢測模塊等。當將某一故障對應的所有的測試矢量作為輸入時,各個節(jié)點的邏輯函數(shù)值都與故障列表吻合,則確定該電路存在故障,并將故障類型顯示在開發(fā)板上[3]。

        2 算法分析

        一階布爾差分法是用來求解單故障測試矢量集的。如果要求解多故障的測試矢量集,就必須使用高階布爾差分。這里主要敘述二階布爾差分及雙故障測試矢量的求法。定義函數(shù)f(X)為:

        式(2)為函數(shù)f相對于xi和xj的二階差分分別為第i個和第j個故障的輸入測試矢量,且滿足如下關系式:

        檢測雙故障 xi(s-a-α)、xj(s-a-β)的測試集為:

        式中:α,β∈(0,1);x1=x,x0=1。

        3 具體實現(xiàn)

        3.1 電路建模

        建立的數(shù)字電路模型如圖1所示。

        圖1 數(shù)字電路模型Fig.1 Model of digital circuit

        由圖1可以看出,該電路圖由3個與門和1個或門組成,一共有6個節(jié)點??紤]節(jié)點的單固定故障和雙固定故障,理論上可以計算出電路中存在的故障有72種。但是,考慮到與或門本身的邏輯功能,有一部分故障是不可測的。

        對于與門來說,它的某一個輸入端若存在邏輯固定低電平故障,則它的輸出端在正常情況下應該是邏輯低電平。但是,假如這個與門的輸出端同時也出現(xiàn)邏輯固定低電平故障,則對于這一類雙固定故障,它是不可測的。因此,排除這類故障,實際上可測的故障有66種。

        3.2 布爾差分法求解測試矢量

        測試生成是數(shù)字電路故障診斷研究的核心問題之一。將測試矢量作為正常電路的輸入,觀察電路輸出值;在相同情況下,把它們加到故障電路的輸入端,若此時故障輸出值與正常輸出值不一致,則這樣的電路輸入稱為這一類故障的測試矢量。每一個故障可以有多個測試矢量,而每一個電路輸入也可以是多個故障的測試矢量[5]。

        3.2.1 單故障測試生成

        在所設計的電路模型中,共有6個節(jié)點,這6個節(jié)點都有可能出現(xiàn)故障。而每一個節(jié)點出現(xiàn)的故障類型有(s-a-0)型故障和(s-a-1)型故障這兩種情況。因此,可能存在的單故障有12個。

        布爾差分法求解每個故障的測試矢量步驟如下。

        ①列出電路輸出對每一個故障的一階布爾差分。

        ②列出診斷每一個故障的測試矢量的計算公式。

        ③用Matlab實現(xiàn)每一個故障測試矢量的生成。

        ④假如需要求解A(s-a-1)故障的測試矢量,圖1所示電路的輸入Y的邏輯表達式為:

        ⑥最后,利用Matlab編程實現(xiàn)。

        定義矩陣a:

        把A0賦值為一個8行3列的零矩陣。對于a中的某一行,它的第一列數(shù)表示為A輸入,第二列數(shù)表示為B輸入,第三列數(shù)表示為C輸入。接著,把a中的每一行元素代入求解故障A(s-a-1)的測試矢量集的方程中。把滿足這個方程的第n行元素相應地賦值給A0矩陣中的第n行元素。運行程序后,可以從矩陣A0中得出故障A(s-a-1)的測試矢量集[6]。

        由于矩陣A0中第一行本身就是零元素。因此,賦值結束后,第一行仍然是零元素,不能確定這一行元素是否為故障A(s-a-1)的一個測試矢量。最直接的辦法是將這一行的元素代入測試矢量集的方程中進行驗證,如果滿足,則這一行也屬于故障A(s-a-1)的一個測試矢量;反之,則不屬于。同理可求解出其他11種單故障的測試矢量集。記錄這些測試矢量,以備試驗需要[7]。

        3.2.2 雙故障測試生成

        設計的電路中存在54種可檢測的雙故障。而求解雙故障的測試矢量集的方法步驟與單故障的求解過程類似。

        假設需要求解故障A(s-a-1)、故障B(s-a-1)的測試矢量集,則Y相對于節(jié)點B的一階布爾差分為:

        Y對于A、B節(jié)點的二階布爾差分為:

        故障A(s-a-1)、故障B(s-a-1)的測試矢量集為:

        則故障A(s-a-1)、故障B(s-a-1)的測試矢量集為T={001,010,100}。

        采用Matlab解測試矢量集的過程與單故障類似,同樣需要定義矩陣a,以及用來存儲測試矢量集的零矩陣A1、B1,然后將矩陣a經(jīng)過循環(huán)代入測試矢量集方程,把符合條件的行元素賦值給矩陣A1、B1中相應的行。最終可以從矩陣A1、B1中得出故障A(s-a-1)、故障B(s-a-1)的測試矢量集。同理可以解出其他雙故障的測試矢量集。

        在求解雙故障過程時,不管兩個節(jié)點在電路中有任何邏輯關系,它們的二階布爾差分都必須把這兩個節(jié)點看成是獨立變量,否則就會得出錯誤的測試矢量[8]。

        4 FPGA實現(xiàn)

        在QuartusII上建立模塊,實現(xiàn)故障仿真、故障檢測和顯示的功能。其中涉及到的模塊有消抖模塊、分頻模塊、偽隨機序列生成模塊、按鍵模塊、故障生成模塊、電路模塊、檢測模塊和顯示模快。總體設計模塊流程圖如圖2所示。

        圖2 總體設計模塊流程圖Fig.2 The whole design module flowchart

        4.1 偽隨機碼生成器

        利用測試矢量來進行故障檢測,設計中就必須考慮如何自動生成所有的測試矢量。對于3輸入的邏輯電路,它的所有可能輸入有8種。用偽隨機碼生成器來模擬電路的輸入。3級m序列生成器如圖4所示。

        圖3 3級m序列生成器Fig.3 The generator of 3-layer m sequence

        4.2 故障仿真模塊

        利用開發(fā)板上的按鍵來生成所需要的故障?;谶@個思想,設計了1個3選1選擇器來仿真邏輯固定高電平故障或邏輯固定低電平故障。此外,按鍵模塊還有1個輸入。在操作過程中,通過按鍵輸入來改變其輸出值,利用這些輸出值來控制選擇器的工作狀態(tài)。

        狀態(tài)機及其設計技術是數(shù)字系統(tǒng)的重要組成部分。在設計中,定義了133種狀態(tài),其中66個是故障狀態(tài);另外66個是故障進入下一個狀態(tài)的中間態(tài);還有一個狀態(tài)是初始狀態(tài),即此電路正常,沒有任何故障。故障仿真模塊的原理框圖如圖4所示。

        圖4 故障仿真模塊原理Fig.4 Principle of fault simulation module

        4.3 檢測模塊

        對于某一故障,當輸入為它的一個測試矢量時,記錄此時各個節(jié)點的邏輯值作為這個故障的故障列表信息;當所有測試矢量都列表填入故障列表中時,故障列表信息就完備了。

        每一個故障的故障列表與其他故障都是不同的。利用這種完備的故障列表信息,可以準確地確定這個故障的類型。將所有故障的完備故障列表信息存入檢測模塊,它的輸入端用于接收各個節(jié)點的邏輯值信息,并對這些輸入進行判斷,如果電路出現(xiàn)的故障列表與某個故障的故障列表信息一致,則說明電路中存在這個故障。檢測模塊的工作原理框圖如圖5所示。

        圖5 檢測模塊原理框圖Fig.5 Principle of the detection module

        4.4 顯示模塊

        設計所用的開發(fā)板FPGA是EP2C8Q208C8,開發(fā)板的8個動態(tài)數(shù)碼管是共陽型。設計中用到了6個數(shù)碼管。通過動態(tài)顯示模塊,將檢測模塊檢測到的故障類型在4個數(shù)碼管上加以顯示,另外兩個數(shù)碼管用來顯示故障標號。

        故障C(s-a-1)、E(s-a-0)采用QuartusII波形仿真后得到的界面如圖6所示。圖6中,dx代表段選管腳的輸入值,px代表片選管腳的輸入值。將整個電路編譯后下載到開發(fā)板,數(shù)碼管可以動態(tài)顯示出C1E0,表示檢測到電路中存在該故障。

        圖6 故障波形圖Fig.6 Fault waveforms

        5 結束語

        布爾差分法是生成故障測試矢量的重要方法,利用它們可以求解出任何一種邏輯電路的故障測試矢量,包括時序邏輯電路和組合邏輯電路[9]。由于工作量的問題,本設計選擇的是對較為簡單的組合邏輯電路進行故障分析與檢測。利用狀態(tài)機以及選擇器的組合,成功地設計出一種可以仿真故障的方法。該方法能夠按照設計者的意愿來生成任何一種故障,避免了通過編程仿真帶來的麻煩;其次,以偽隨機碼生成器的輸出作為電路的模擬輸入,不僅可以實現(xiàn)設計要求,而且提高了設計的準確性以及檢測結果的權威性[10]。

        [1]秦福星,周慶年,安江波,等.基于測試向量的數(shù)字電路故障診斷[J].船電技術應用研究,2010(10):47-48.

        [2]郭希維,蘇群星,谷宏強.數(shù)字電路測試中的關鍵技術研究[J].科學技術與工程,2006(18):2903-2906.

        [3]黃考利,連光耀,魏忠林.基于仿真級數(shù)的故障知識獲取方法研究[J].兵工學報,2005(4):573-576.

        [4]楊士元.數(shù)字系統(tǒng)的故障診斷與可靠性設計[M].北京:清華大學出版社,2000:29 -35.

        [5]Su Wei,Dong Nanping,F(xiàn)an Tongshun.The development of interface adapter in the digital circuit fault diagnosis system based on VXI[J].Power Electronics and Intelligent Transportation System(PEITS),2009(9):431 -434.

        [6]周繼承,黎飛,肖慶中.數(shù)字電路故障診斷[J].應用科技,2008(2):29-32.

        [7]吳麗華,李濤,鄒海英,等.多故障測試生成的一種簡化算法[J].電機與控制學報,2008(3):350-353.

        [8]Su Wei.Research for digital circuit fault testing and diagnosis techniques[J].IEEE Transactions on Test and Measurement,2009:330-333.

        [9]余黨軍,鄭茂生,陳偕雄.基于D算法的組合電路單故障檢測的代數(shù)方法[J].杭州電子工業(yè)學院學報,2000,20(6):373 -378.

        [10]陳永剛,張彩珍.組合電路的故障測試生成D算法研究[J].蘭州鐵道學院學報,2002(6):14-16.

        猜你喜歡
        故障檢測
        “不等式”檢測題
        “一元一次不等式”檢測題
        “一元一次不等式組”檢測題
        “幾何圖形”檢測題
        “角”檢測題
        故障一點通
        奔馳R320車ABS、ESP故障燈異常點亮
        小波變換在PCB缺陷檢測中的應用
        故障一點通
        故障一點通
        国产免费精品一品二区三| 国产欧美日韩视频一区二区三区| 人妻无码aⅴ中文系列久久免费| 国产精东一区二区三区| 美女人妻中出日本人妻| 欧美成妇人吹潮在线播放| 人人狠狠综合久久亚洲婷婷| 极品粉嫩小仙女高潮喷水视频| 91九色播放在线观看| 九九久久自然熟的香蕉图片 | 夜夜夜夜曰天天天天拍国产| 无码人妻丰满熟妇片毛片| 亚洲AV无码国产精品久久l| 久久国产精品国语对白| 亚洲人成自拍网站在线观看| 性一乱一搞一交一伦一性| 2021精品综合久久久久| 国产后入清纯学生妹| 亚洲2022国产成人精品无码区| 六月婷婷久香在线视频| 夫妇交换性三中文字幕| 另类免费视频在线视频二区| 中文字幕在线人妻视频| 不卡一区二区视频日本| 无码ol丝袜高跟秘书在线观看| 久久久国产精品福利免费| 中文字幕日本在线乱码| 国产精品久久久久免费观看| 亚洲国产中文在线二区三区免| 在线一区二区三区视频观看| 性av一区二区三区免费| 国产精品久久久久久婷婷| 91亚洲人成手机在线观看| 自拍偷区亚洲综合激情| 国产精品人妻一区二区三区四| 看黄网站在线| 亚洲精品乱码久久麻豆| 国产乱人无码伦av在线a| 69精品丰满人妻无码视频a片| 国产大陆av一区二区三区| 国产一区高清在线观看|