劉光碩 鄧自寧 王林飛
(北方民族大學(xué)計(jì)算機(jī)科學(xué)與工程學(xué)院,寧夏 銀川 750000)
電路板故障檢測(cè)一直以來都是一個(gè)研究熱點(diǎn),當(dāng)下主要從兩個(gè)大方向解決此問題。其一是智能算法類,例如SVM算法、字典學(xué)習(xí)和神經(jīng)網(wǎng)絡(luò)等方法,該類方法需要大量的數(shù)據(jù)集和強(qiáng)大的處理器。其二是非智能算法類,最具代表性的是故障字典法,該類方法需要故障實(shí)驗(yàn)數(shù)據(jù)或者專家知識(shí)作為判斷標(biāo)準(zhǔn)。對(duì)于電路板而言,大量的數(shù)據(jù)集不容易獲得,但是故障數(shù)據(jù)卻可以通過人為的實(shí)驗(yàn)來得到,因此本系統(tǒng)采取故障字典法。傳統(tǒng)故障字典和待檢測(cè)電路是一一對(duì)應(yīng)的,由于電路板線路差異較大且使用的器件類型和種類各不相同,所以難以建立一個(gè)萬用的故障字典。因此本文介紹了一種新的故障字典構(gòu)建方式,首先將檢測(cè)電路板線路轉(zhuǎn)變?yōu)闄z測(cè)元器件,之后對(duì)元器件引腳電壓值進(jìn)行二值化,用簡(jiǎn)化后的數(shù)據(jù)構(gòu)建故障字典,既提高了字典的通用性也節(jié)省了存儲(chǔ)空間,方便數(shù)據(jù)處理。
故障字典法分為直流故障字典、交流故障字典以及瞬時(shí)故障字典。直流故障字典法顧名思義就是使用直流電源作為待測(cè)電路板回路的激勵(lì)進(jìn)行仿真。通過人為的加入故障,收集故障發(fā)生時(shí)檢測(cè)點(diǎn)的電氣信號(hào)數(shù)值。將收集到的數(shù)值進(jìn)行故障編號(hào)、保存,形成故障字典。在使用故障字典時(shí),只需將檢測(cè)點(diǎn)的特征值與保存在故障字典中的特征值進(jìn)行比較,即可得出當(dāng)前回路中出現(xiàn)的故障。由于直流故障字典法非常適合檢測(cè)硬故障,所以本系統(tǒng)采取了直流故障字典。
建立故障字典的總體思路是向正常的電路中逐個(gè)加入故障,然后收集檢測(cè)點(diǎn)的數(shù)據(jù),將檢測(cè)點(diǎn)的數(shù)據(jù)與注入的故障值進(jìn)行對(duì)應(yīng)保存,從而得出故障字典。使用故障字典時(shí)需要按照電路原理圖為待測(cè)電路施加正常工作時(shí)的激勵(lì),然后收集檢測(cè)點(diǎn)的電壓值,將檢測(cè)點(diǎn)的電壓值與故障字典中的電壓值進(jìn)行對(duì)比,進(jìn)而找到檢測(cè)電壓對(duì)應(yīng)的故障。
傳統(tǒng)故障字典法需要事先對(duì)待測(cè)回路進(jìn)行仿真、選取檢測(cè)點(diǎn)以及注入故障值。由于電路中包含了許多元器件,在制作故障字典時(shí)需要對(duì)這些元器件逐個(gè)注入故障,然后保存特征值。除此之外,還需要考慮組合故障,這就增加了制作故障字典的難度和時(shí)間。故障字典的制作人員需要了解電路原理以及元器件故障原理,普通工人無法勝任,從而導(dǎo)致雇傭成本的提高。
故障字典與仿真電路是一一對(duì)應(yīng)的,這就導(dǎo)致了故障字典的使用對(duì)象極為苛刻,必須要和仿真電路完全相同,包括元器件的類型和種類,電路板的走線等等,使得傳統(tǒng)故障字典無法重復(fù)使用,通用性較差。
為了解決傳統(tǒng)故障字典通用性差以及字典制作困難的缺點(diǎn),本文從以下幾個(gè)方面進(jìn)行改進(jìn):
本文采取化整為零的方法,將檢測(cè)電路板線路分解為檢測(cè)若干個(gè)元器件,通過檢測(cè)元器件達(dá)到檢測(cè)電路板線路的目的。
理論上電路各檢測(cè)點(diǎn)的電壓存在不確定性,導(dǎo)致電路中元器件各個(gè)管腳的電壓值無法確定,所以難以建立一個(gè)囊括所有故障值的故障字典。本文對(duì)傳統(tǒng)故障字典的建立做出了改進(jìn),將電壓數(shù)據(jù)二值化為0 和1 保存到故障字典中,D 為故障字典中的特征值,A 代表?xiàng)l件集合,X 為當(dāng)前引腳的電壓值如以下公式:
公式(1)中A={a1,a2,a3,a4,a5,a6…},a1表示二極管末端電壓和前端電壓值相等,例如在檢測(cè)過程中二極管末端的電壓等于前端電壓D=1,若不等D=0,a2表示電阻末端電壓值等于前端電壓值,a3表示24V 繼電器正極電壓在20-24 之間,a4表示繼電器負(fù)極電壓值不為0 等等,根據(jù)器件不同,ai所代表的含義不同,以24V 五腳繼電器為例講解如何構(gòu)建器件故障字典。
圖1
24V 五腳繼電器有五個(gè)接觸點(diǎn)如圖1 所示,所以構(gòu)建的故障字典有五個(gè)特征值,接下來根據(jù)公式和表格逐個(gè)分析這五個(gè)特征值。首先繼電器的正負(fù)極管腳(5 和6),根據(jù)公式和表格,X代表正負(fù)極管腳的實(shí)際電壓值,此時(shí)A 所代表的條件就是能夠使24V 繼電器正常工作的值,所以此時(shí)A 是一個(gè)范圍。在實(shí)際檢測(cè)中發(fā)現(xiàn)20V-24V 都可以使繼電器正常工作,所以當(dāng)X 的值在此區(qū)間內(nèi)D=1 不在此區(qū)間內(nèi)D=0。
默認(rèn)負(fù)極接地D 等于0,其他電壓值D 為1。
除此之外繼電器還有三個(gè)管腳,這三個(gè)管腳都與公共極有關(guān),當(dāng)繼電器正常工作時(shí)公共級(jí)(圖1-2)與常開極(圖1-1)是接通的(如圖1 所示),所以常開極與公共級(jí)的電壓值相同D 為1,電壓值不同D 為0。
常閉極(圖1-3)與常開極的判斷條件相同,電壓值與公共級(jí)相同D=1,不同D=0。
公共級(jí)的電壓值沒有特殊的二值化要求,本系統(tǒng)規(guī)定電壓值為0 時(shí)D=0,不為0 時(shí)D=1。
表1 繼電器特征值引腳條件
使用故障字典檢測(cè)過程中發(fā)現(xiàn)兩個(gè)缺點(diǎn)。其一,計(jì)算量大。如果一條線路中元器件的數(shù)量比較多且故障元器件位置靠后,逐個(gè)進(jìn)行對(duì)比將導(dǎo)致計(jì)算量大,增加檢測(cè)時(shí)間。其二,故障字典中的數(shù)據(jù)是經(jīng)過二值化的,假使前后兩個(gè)元器件條件A(公式1)不同,會(huì)導(dǎo)致相同的電壓值有不同的二值化值。這個(gè)問題在單個(gè)元器件檢測(cè)時(shí)不存在,但是在回路檢測(cè)中會(huì)導(dǎo)致線路斷路的誤診斷。針對(duì)這兩個(gè)問題本文提出了分步檢測(cè)的思想。先整體檢測(cè)并定位故障器件,再對(duì)故障器件使用故障字典進(jìn)行具體分析,得出故障。該方法的具體實(shí)現(xiàn)如下:
(1)將參與回路的元器件的管腳數(shù)據(jù)值存入數(shù)組S1。
(2)將回路中元器件管腳數(shù)據(jù)值進(jìn)行二值化存入S2。
(3)根據(jù)回路特性和元器件的特性檢測(cè)S1定位故障元器件。
(4)使用故障字典對(duì)故障元器件進(jìn)行分析處理。
(5)得出故障。
第一步與第二步都是將收集到的數(shù)據(jù)保存到數(shù)組中,區(qū)別在于第一步的數(shù)據(jù)未經(jīng)二值化。第三步是對(duì)S1數(shù)組的掃描操作,根據(jù)元器件的特性對(duì)數(shù)組進(jìn)行掃描,定位故障器件。例如,繼電器在正常的工作狀態(tài)時(shí)公共極和常開極是接通的(圖1 中左中和右下),即公共級(jí)的值等于常開極的值,對(duì)應(yīng)S1中繼電器的兩個(gè)值應(yīng)該是相等的,如果不相等即可得出該繼電器出現(xiàn)故障,之后利用故障字典對(duì)S2中的值具體分析,得出繼電器故障。
能夠使用該方法的重要原因是真正參與回路的元器件管腳的只有兩個(gè),即一進(jìn)一出。S1中保存的數(shù)值是未經(jīng)二值化的,可以有效避免上文所述的誤檢測(cè)。除此之外元器件在回路中的正常狀態(tài)是確定的,所以在步驟(3)對(duì)故障元器件進(jìn)行定位時(shí),判斷條件較少,有利于提高運(yùn)行速度。
傳統(tǒng)故障字典法存在通用性差、字典制作人員要求高、制作成本高和耗費(fèi)時(shí)間長(zhǎng)的缺點(diǎn),為了解決上述問題,本文通過二值化檢測(cè)數(shù)據(jù)改進(jìn)了故障字典,通過檢測(cè)元器件進(jìn)而檢測(cè)回路的方法優(yōu)化檢測(cè)方案,通過先整體定位故障器件,再對(duì)器件單獨(dú)分析的思路來簡(jiǎn)化檢測(cè)過程,增強(qiáng)了本系統(tǒng)的通用性并且加快了檢測(cè)速度。在滿足企業(yè)需求的前提下,降低了檢測(cè)成本,保障了產(chǎn)品的質(zhì)量。