国产精品1024永久观看,大尺度欧美暖暖视频在线观看,亚洲宅男精品一区在线观看,欧美日韩一区二区三区视频,2021中文字幕在线观看

  • <option id="fbvk0"></option>
    1. <rt id="fbvk0"><tr id="fbvk0"></tr></rt>
      <center id="fbvk0"><optgroup id="fbvk0"></optgroup></center>
      <center id="fbvk0"></center>

      <li id="fbvk0"><abbr id="fbvk0"><dl id="fbvk0"></dl></abbr></li>

      印制電路板測(cè)試路徑優(yōu)化方法

      文檔序號(hào):6581510閱讀:290來(lái)源:國(guó)知局

      專(zhuān)利名稱(chēng)::印制電路板測(cè)試路徑優(yōu)化方法
      技術(shù)領(lǐng)域
      :本發(fā)明涉及印制電路板測(cè)試
      技術(shù)領(lǐng)域
      ,尤其涉及一種印制電路板測(cè)試路徑優(yōu)化方法。
      背景技術(shù)
      :印刷線路板(PCB)成品檢測(cè)是生產(chǎn)流程中的重要環(huán)節(jié),成品檢測(cè)主要檢查PCB的成品有無(wú)發(fā)生開(kāi)路、短路或線條過(guò)蝕等故障。隨著半導(dǎo)體技術(shù)的發(fā)展,PCB變得更加規(guī)模化和小型化,^!功能提升的同時(shí),其測(cè)試難度也隨之增加。據(jù)統(tǒng)計(jì),電子制造領(lǐng)域的可視化檢測(cè)的平均費(fèi)用可達(dá)整個(gè)制造過(guò)程花費(fèi)的50%以上。現(xiàn)階段PCB最常用的測(cè)試手段分為非向量測(cè)試技術(shù)和自動(dòng)成像檢測(cè)系統(tǒng),而應(yīng)用最多的是非向量測(cè)試技術(shù)中的飛針測(cè)試儀。飛針測(cè)試儀應(yīng)用歐姆定律,根據(jù)兩個(gè)電路結(jié)點(diǎn)之間的電阻值來(lái)判斷PCB引線的通斷情況。這是傳統(tǒng)的電路測(cè)量手段,只是近年來(lái)它與高速、精密的機(jī)械運(yùn)動(dòng)部件結(jié)合后,測(cè)量效率更高,適應(yīng)性更強(qiáng),在無(wú)法應(yīng)用傳統(tǒng)的針床在線測(cè)試儀的情況下,飛針測(cè)試儀是PCB生產(chǎn)線上的最重要的設(shè)備,應(yīng)用非常廣泛。使用飛針測(cè)試儀進(jìn)行PCB測(cè)試,一般需要經(jīng)過(guò)以下的步驟首先按照某種測(cè)試要求,確定板子上的測(cè)試點(diǎn)集;其次根據(jù)測(cè)試點(diǎn)集、鉆孔信息以及相鄰網(wǎng)絡(luò)信息,確定測(cè)試點(diǎn)的組合以及順序;最后在測(cè)試針床上,對(duì)PCB^反作短路、開(kāi)^各等電氣測(cè)試。現(xiàn)有的PCB設(shè)計(jì)軟件雖然能自動(dòng)生成測(cè)試點(diǎn)集以及確定行序的測(cè)試文件,但是其生成文件的路徑并非是最佳路徑,這樣會(huì)影響測(cè)試效率,200910191018.3對(duì)于大批量生成的廠家來(lái)說(shuō),其影響尤為明顯。PCB的走針路徑優(yōu)化問(wèn)題類(lèi)似于》良4亍商(TravelSalesmanProblem,TSP)問(wèn)題,TSP問(wèn)題是一個(gè)容易定義但是難于處理的問(wèn)題,屬于NP完全問(wèn)題,解決此類(lèi)問(wèn)題常用的算法有遺傳算法、模擬退火算法等。目前也有一些軟件應(yīng)用了這些算法來(lái)處理PCB路徑優(yōu)化的問(wèn)題,但是他們并沒(méi)有很好的根據(jù)飛針測(cè)試儀的特點(diǎn)來(lái)建立it型,因而未達(dá)到纟艮好的效率。
      發(fā)明內(nèi)容本發(fā)明所要解決的技術(shù)問(wèn)題是提供一種印制電路板測(cè)試路徑優(yōu)化方法。根據(jù)本發(fā)明的一種技術(shù)方案,一種印制電路板測(cè)試路徑優(yōu)化方法,其特征在于所述方法包括如下步驟:A、讀取ipc文件,得到待測(cè)點(diǎn)所屬的網(wǎng)絡(luò)號(hào)、正反面標(biāo)志、坐標(biāo)信息,以及相鄰網(wǎng)絡(luò)的信息;B、對(duì)信息進(jìn)行預(yù)處理,預(yù)處理的目的就是:f巴點(diǎn)信息文件分成正面點(diǎn)和反面點(diǎn)信息文件,并建立相應(yīng)索引;Bl、把提取出來(lái)的所有待測(cè)點(diǎn)信息分成正面可測(cè)試點(diǎn)和反面可測(cè)試點(diǎn)兩個(gè)部分,按照"網(wǎng)絡(luò)號(hào)數(shù)值+x坐標(biāo)+y坐標(biāo)"從小到大進(jìn)行排序,得到正面可測(cè)試點(diǎn)文件和反面可測(cè)試點(diǎn)文件;B2、對(duì)正面可測(cè)試點(diǎn)文件和反面可測(cè)試點(diǎn)文件分別建立正面可測(cè)試點(diǎn)索引信息文件和反面可測(cè)試點(diǎn)索引信息文件,用于分別記錄正面可測(cè)試點(diǎn)文件和反面可測(cè)試點(diǎn)文件中每個(gè)網(wǎng)絡(luò)號(hào)的起始測(cè)試點(diǎn)的位置;為了其后取數(shù)據(jù)的方便,在此分別建立兩個(gè)文件的索引信息,分別記錄正面可測(cè)試點(diǎn)文件和反面可測(cè)試點(diǎn)文件中每個(gè)網(wǎng)絡(luò)號(hào)的起始測(cè)試點(diǎn)的位置,并寫(xiě)入至正面可測(cè)試點(diǎn)索引信息文件和反面可測(cè)試點(diǎn)索引信息文件;B3、根據(jù)正面可測(cè)試點(diǎn)索引信息文件和反面可測(cè)試點(diǎn)索引信息文件,建立網(wǎng)絡(luò)的類(lèi)型信息文件,其中文件行號(hào)表示網(wǎng)絡(luò)號(hào),數(shù)值表示網(wǎng)絡(luò)類(lèi)型;并分別對(duì)網(wǎng)絡(luò)只有反面測(cè)試點(diǎn)、網(wǎng)絡(luò)兩面都有測(cè)試點(diǎn)、網(wǎng)絡(luò)只有正面測(cè)試點(diǎn)進(jìn)行定義;因?yàn)槊總€(gè)網(wǎng)絡(luò)測(cè)試點(diǎn)類(lèi)型不同,為了點(diǎn)配對(duì)的方便,需要對(duì)各網(wǎng)絡(luò)類(lèi)型進(jìn)^f亍定義。其中,所述的只有正面測(cè)試點(diǎn)、兩面都有測(cè)試點(diǎn)、只有反面測(cè)試點(diǎn)是表述的網(wǎng)絡(luò)類(lèi)型,因?yàn)樵陂_(kāi)路點(diǎn)配對(duì)時(shí),需要根據(jù)不同的網(wǎng)絡(luò)類(lèi)型分開(kāi)進(jìn)行點(diǎn)配對(duì),最后再進(jìn)行合并。C、優(yōu)化i各徑Cl、建立容器分別讀取正面可測(cè)試點(diǎn)文件、反面可測(cè)試點(diǎn)文件、正面可測(cè)試點(diǎn)索引信息文件、反面可測(cè)試點(diǎn)索^信息文件、網(wǎng)絡(luò)的類(lèi)型信息文件,分別保存在第一容器、第二容器、第三容器、第四容器、第五容器中,同時(shí),建立第六容器,用于保存配對(duì)好的正面測(cè)試點(diǎn)信息;建立第七容器,用于保存配對(duì)好的反面測(cè)試點(diǎn)信息,建立第八容器,用于保存最后的配對(duì)結(jié)果;C2、開(kāi)路點(diǎn)配對(duì)C21、判斷當(dāng)前配對(duì)的網(wǎng)絡(luò)號(hào)<=網(wǎng)絡(luò)總數(shù)嗎?C22、判斷第五容器中的每一行的數(shù)值是等于多少,當(dāng)數(shù)值表示當(dāng)前配對(duì)的網(wǎng)絡(luò)只有正面測(cè)試點(diǎn)時(shí),進(jìn)行正面點(diǎn)國(guó)己對(duì),當(dāng)數(shù)值表示當(dāng)前配對(duì)的網(wǎng)絡(luò)兩面都有測(cè)試點(diǎn)時(shí),進(jìn)行雙面點(diǎn)配對(duì);當(dāng)數(shù)值表示當(dāng)前配對(duì)的網(wǎng)絡(luò)只有反面測(cè)試點(diǎn)時(shí),進(jìn)行反面點(diǎn)配對(duì);C23、為了進(jìn)一步縮短行數(shù),在所有的配對(duì)完成后,進(jìn)行正面測(cè)試點(diǎn)和反面測(cè)試點(diǎn)的合并;再進(jìn)行合并;在此先對(duì)需要優(yōu)化出來(lái)的開(kāi)路測(cè)試文件進(jìn)行說(shuō)明,所謂開(kāi)路測(cè)試,就是為了測(cè)試同一網(wǎng)絡(luò)中連續(xù)兩個(gè)點(diǎn)是否發(fā)生開(kāi)路的情況,理論上要求每一行配好的點(diǎn)都為同一個(gè)網(wǎng)絡(luò),而為了達(dá)到優(yōu)化開(kāi)路測(cè)試文件,達(dá)到減少行數(shù)的目的,需要把不同網(wǎng)絡(luò)的兩個(gè)點(diǎn)組合配對(duì),盡量填滿每一行。C3、開(kāi)路優(yōu)化C31、初始化鏈表,讀取第八容器中的第一行的信息,并對(duì)鏈表第一個(gè)結(jié)點(diǎn)進(jìn)行初始化;.C32、繼續(xù)讀取第八容器中的下一行的信息,移動(dòng)指針到鏈表的第一個(gè)結(jié)點(diǎn)處;C33、計(jì)算該行信息在每個(gè)節(jié)點(diǎn)處的移動(dòng)距離;C34、判斷在計(jì)算移動(dòng)距離的過(guò)程中,是否存在撞針,即左邊點(diǎn)的x軸坐標(biāo)大于右邊點(diǎn)的x軸坐標(biāo),如果存在撞針,則調(diào)整坐標(biāo),重新進(jìn)行移動(dòng)距離的計(jì)算;C35、判斷指針是否到達(dá)鏈表尾;C36、如果指針沒(méi)有到達(dá)鏈表尾,將指針移動(dòng)到鏈表的下一個(gè)結(jié)點(diǎn)處,重復(fù)步驟C32、C33、C34、C35,當(dāng)指針到達(dá)鏈表尾時(shí),將讀入的行的信息插入到具有最小移動(dòng)距離的節(jié)點(diǎn)處;C37、判斷第八容器中的所有行的信息是否讀完;C38、當(dāng)?shù)诎巳萜髦械乃行械男畔⑽醋x完時(shí),重復(fù)步驟C32至步驟C37;當(dāng)?shù)诎巳萜髦械乃行械男畔⒆x完后,將鏈表信息寫(xiě)入測(cè)試文件;E、輸出測(cè)試文件開(kāi)路優(yōu)化完成后,將按照IPC文件標(biāo)準(zhǔn)生成CONTI.LST文件。根據(jù)本發(fā)明的一個(gè)優(yōu)選方案,步驟C22中進(jìn)行正面點(diǎn)配對(duì)時(shí),方法如下判斷第一容器中的當(dāng)前配對(duì)的網(wǎng)絡(luò)號(hào)的點(diǎn)的個(gè)數(shù)大于或等于2當(dāng)?shù)谝蝗萜髦械漠?dāng)前配對(duì)的網(wǎng)絡(luò)號(hào)的點(diǎn)的個(gè)數(shù)小于2時(shí),取剩余的點(diǎn)壓入第六容器中;當(dāng)?shù)谝蝗萜髦械漠?dāng)前配對(duì)的網(wǎng)絡(luò)號(hào)的點(diǎn)的個(gè)數(shù)大于或等于2時(shí),取連續(xù)的兩個(gè)點(diǎn)壓入第六容器中,并在第一容器中刪除壓入的前一個(gè)點(diǎn)。根據(jù)本發(fā)明的一個(gè)優(yōu)選方案,步驟C22中進(jìn)行雙面點(diǎn)配對(duì),并且該網(wǎng)絡(luò)正面點(diǎn)個(gè)數(shù)大于反面點(diǎn)個(gè)數(shù)時(shí),方法如下C221、判斷第一容器中的當(dāng)前配對(duì)的網(wǎng)絡(luò)號(hào)的點(diǎn)的個(gè)數(shù)大于2當(dāng)?shù)谝蝗萜髦械漠?dāng)前配對(duì)的網(wǎng)絡(luò)號(hào)的點(diǎn)的個(gè)數(shù)小于2時(shí),進(jìn)行步驟C226;當(dāng)?shù)谝蝗萜髦械漠?dāng)前配對(duì)的網(wǎng)絡(luò)號(hào)的點(diǎn)的個(gè)數(shù)大于或等于2時(shí),進(jìn)行步驟C222;C222、判斷第二容器中的當(dāng)前配對(duì)的網(wǎng)絡(luò)號(hào)的點(diǎn)的個(gè)數(shù)大于或等于2當(dāng)?shù)诙萜髦械漠?dāng)前配對(duì)的網(wǎng)絡(luò)號(hào)的點(diǎn)的個(gè)數(shù)小于2時(shí),進(jìn)行步驟C224;當(dāng)?shù)诙萜髦械漠?dāng)前配對(duì)的網(wǎng)絡(luò)號(hào)的點(diǎn)的個(gè)數(shù)大于或等于2時(shí),進(jìn)行步驟C223;C223、從第一容器和第二容器中各取2個(gè)點(diǎn)組合后壓入第八容器中;再?gòu)牡谝蝗萜骱偷诙萜髦懈鲃h除壓入的前一個(gè)點(diǎn);返回進(jìn)行步驟C222',C224、判斷第一容器中的當(dāng)前配對(duì)的網(wǎng)絡(luò)號(hào)的點(diǎn)的個(gè)數(shù)大于2當(dāng)?shù)谝蝗萜髦械漠?dāng)前配對(duì)的網(wǎng)絡(luò)號(hào)的點(diǎn)的個(gè)數(shù)小于2時(shí),進(jìn)行步驟C226;當(dāng)?shù)谝蝗萜髦械漠?dāng)前配對(duì)的網(wǎng)絡(luò)號(hào)的點(diǎn)的個(gè)數(shù)大于2時(shí),進(jìn)行步驟C225、;C225、從第一容器中取2個(gè)點(diǎn)以及第2容器中取剩下的點(diǎn)壓入第八容器,并從第一容器中刪除所取的這2個(gè)點(diǎn),然后返回進(jìn)行步驟C"4;C226、取第一容器和第二容器剩下的點(diǎn)組合后壓入第八容器中。根據(jù)本發(fā)明的一個(gè)優(yōu)選方案,步驟C23正面測(cè)試點(diǎn)和反面測(cè)試點(diǎn)的合并方法如下C231、判斷第六容器是否為空?當(dāng)?shù)诹萜鞑粸榭諘r(shí),將第七容器中的剩余配對(duì)行壓入第八容器中;當(dāng)?shù)诹萜鳛榭諘r(shí),繼續(xù)進(jìn)行步驟C232;C232、判斷第七容器是否為空?當(dāng)笫七容器不為空時(shí),將第六容器中的剩余配對(duì)行壓入第八容器中;當(dāng)?shù)谄呷萜鳛榭諘r(shí),繼續(xù)進(jìn)行步驟C233、C234;C233、各取第六容器和第七容器中的一行,組合成新的一行后壓入第八容器中;C234、刪除第六容器和第七容器中的已壓入第八容器的行。本發(fā)明所述的印制電路板測(cè)試路徑優(yōu)化方法的有益效果是本發(fā)明由ipc文件讀出待測(cè)試電路板的所有點(diǎn)信息以及相鄰網(wǎng)絡(luò)信息,根據(jù)4針測(cè)試原則,重新對(duì)各網(wǎng)絡(luò)號(hào)進(jìn)行組合和排列,在不漏測(cè)任何網(wǎng)絡(luò)的前提下盡量?jī)?yōu)化走針路徑,使得飛針測(cè)試儀走針的路徑最短,經(jīng)實(shí)際應(yīng)用,結(jié)果比現(xiàn)有軟件在測(cè)試時(shí)間效率上提高了3%到16%,可廣泛應(yīng)用于印制電路板制造行業(yè)以及電子行業(yè)。以下將結(jié)合附圖對(duì)本發(fā)明的實(shí)施例作進(jìn)一步的說(shuō)明。圖1是本發(fā)明的印制電路板測(cè)試路徑優(yōu)化方法流程圖。圖2是本發(fā)明的讀取ipc文件流程圖。圖3是本發(fā)明的待測(cè)點(diǎn)分類(lèi)流程圖。圖4是本發(fā)明的正面可測(cè)試點(diǎn)文件和反面可測(cè)試點(diǎn)文件的格式。圖5是本發(fā)明的正面可測(cè)試點(diǎn)索引信息文件和反面可測(cè)試點(diǎn)索引信息文件的格式。圖6是本發(fā)明網(wǎng)絡(luò)的類(lèi)型信息文件的格式示意圖。圖7是本發(fā)明開(kāi)路點(diǎn)配對(duì)流程圖。圖8是本發(fā)明中正面點(diǎn)配對(duì)流程圖。圖9是本發(fā)明中雙面點(diǎn)配對(duì)的一種流程圖。圖IO是本發(fā)明中正反面點(diǎn)配對(duì)合并流程圖。圖11是本發(fā)明中開(kāi)路優(yōu)化流程圖。圖12是本發(fā)明中首兩行最短路徑計(jì)算說(shuō)明圖。圖13是本發(fā)明中第n、n+l行最短路徑計(jì)算說(shuō)明圖。圖14CONTI.LST文件格式示意圖。具體實(shí)施例方式參見(jiàn)圖1,一種印制電3各板測(cè)試路徑優(yōu)化方法,所述方法包括如下步驟所述方法包括如下步驟A、讀取ipc文件,得到待測(cè)點(diǎn)所屬的網(wǎng)絡(luò)號(hào)、正反面標(biāo)志、坐標(biāo)信息,以及相鄰網(wǎng)絡(luò)的信息;本方法使用的ipc文件是飛針測(cè)試行業(yè)的標(biāo)準(zhǔn)文件,其標(biāo)準(zhǔn)號(hào)為IPC-D-356:底層電路板棵板的測(cè)試數(shù)據(jù)格式,文件的每一行都不會(huì)超過(guò)80個(gè)字符,對(duì)于每個(gè)字符位都有嚴(yán)格的定義,其中包含大量信息,包括點(diǎn)的位置信息、大小、板子層數(shù)等等,根據(jù)其嚴(yán)格的位定義,結(jié)合短路測(cè)試的需要,我們只要讀出文件中待測(cè)點(diǎn)所屬的網(wǎng)絡(luò)號(hào)、正反面標(biāo)志、坐標(biāo)信息,以及相鄰網(wǎng)絡(luò)的信息。IPC-D-356格式文件通常包含Header、IMAGEPRIMARY、IMAGE2、IMAGENNNN、IMAGEPANEL、EndofFileMarker幾個(gè)部分。本發(fā)明使用的文件只包含Header、IMAGEPRIMARY和EndofFileMarker部分。ipc文件前7行為Header信息,包括JOB(工程名)、CODE(選擇碼)、UNITS(測(cè)量單位標(biāo)志)、TITLE(數(shù)據(jù)標(biāo)題)、NUM(零件號(hào)碼)、REV(修訂版本號(hào))、VER(ipc版本信息)等等。本發(fā)明所要提取的只有UNITS字段,它定義了測(cè)量單位。IMAGEPRIMARY字段,標(biāo)志著板上主要數(shù)據(jù)記錄的開(kāi)始,這部分包含待測(cè)試面板上的主要連線信息和測(cè)試通道分配信息等。本方法要提取的主要信息也在這個(gè)部分,結(jié)合短路測(cè)試的需要,只要讀出文件中待測(cè)點(diǎn)所屬的網(wǎng)絡(luò)號(hào)、正反面標(biāo)志、坐標(biāo)信息,以及相鄰網(wǎng)絡(luò)的信息。從這里開(kāi)始,每一行都是80個(gè)字符,定義如下Columns1-3:容許的操作符,包含多種操作符定義,我們只考慮317、017、327、027、099和379、079這些操作符。說(shuō)明見(jiàn)表1。表lColumns1-3說(shuō)明<table>tableseeoriginaldocumentpage13</column></row><table>即379和079開(kāi)頭的行標(biāo)示出了相鄰網(wǎng)絡(luò)信息,其他行標(biāo)示出了測(cè)試點(diǎn)信息。Columns4-17:NetName/NodeNumber(nospaceallowed),即點(diǎn)所在的網(wǎng)絡(luò)標(biāo)識(shí)。Column32:MaycontainMtoindicateaMidNetpoint.Otherwiseleftblank。即中點(diǎn)標(biāo)志。Columns39-41:可測(cè)試點(diǎn)信息,見(jiàn)表2。<table>tableseeoriginaldocumentpage14</column></row><table>表4阻焊層信息說(shuō)明<table>tableseeoriginaldocumentpage15</column></row><table>根據(jù)分析得出的這些信息,我們選取測(cè)試點(diǎn)的規(guī)則是以327、027、317、017、099開(kāi)頭,第Columns73-74為"S0"、"SI"和"S2"的點(diǎn)信息,且測(cè)試點(diǎn)優(yōu)先選取非中點(diǎn)(即Columns32不為"M,,),對(duì)于中點(diǎn)做另外的處理。.在具體實(shí)施例中,讀取ipc文件的流程參見(jiàn)圖2所示。B、對(duì)信息進(jìn)行預(yù)處理Bl、把提取出來(lái)的所有待測(cè)點(diǎn)信息分成正面可測(cè)試點(diǎn)和反面可測(cè)試點(diǎn)兩個(gè)部分,按照"網(wǎng)絡(luò)號(hào)數(shù)值+x坐標(biāo)+y坐標(biāo)"從小到大進(jìn)行排序,得到正面可測(cè)試點(diǎn)文件和反面可測(cè)試點(diǎn)文件;根據(jù)表3的描述,colu咖s40-41代表點(diǎn)可以在哪一層進(jìn)行測(cè)試,"00"代表兩邊均可以測(cè)試,"01"代表在正面可以測(cè)試,由于一般的待測(cè)電路板為兩層板,即"02"代表只有反面可以測(cè)試。根據(jù)這個(gè)規(guī)則,把提取出來(lái)的所有待測(cè)點(diǎn)信息分成兩個(gè)部分正面可測(cè)試點(diǎn)和反面可測(cè)試點(diǎn),按照網(wǎng)絡(luò)號(hào)數(shù)值+x坐標(biāo)+y坐標(biāo)從小到大進(jìn)行排序,并分別寫(xiě)入正面可測(cè)試點(diǎn)文件和反面可測(cè)試點(diǎn)文件,具體操作見(jiàn)圖3。其中,正面可測(cè)試點(diǎn)文件和反面可測(cè)試點(diǎn)文件的才各式如圖4所示,在具體實(shí)施例中,為了后面的處理方便,定義正面可測(cè)試點(diǎn)文件和反面可測(cè)試點(diǎn)文件起始^^亍號(hào)為0。B2、對(duì)正面可測(cè)試點(diǎn)文件和反面可測(cè)試點(diǎn)文件分別建立正面可測(cè)試點(diǎn)索引信息文件和反面可測(cè)試點(diǎn)索引信息文件,用于分別記錄正面可測(cè)試點(diǎn)文件和反面可測(cè)試點(diǎn)文件中每個(gè)網(wǎng)絡(luò)號(hào)的起始測(cè)試點(diǎn)的位置;正面可測(cè)試點(diǎn)索引信息文件和反面可測(cè)試點(diǎn)索引信息文件的格式如圖5。以圖5中的文件的前3行舉例說(shuō)明1號(hào)網(wǎng)絡(luò)在正面可測(cè)試點(diǎn)文件中從第0行開(kāi)始,而2號(hào)網(wǎng)絡(luò)的第一個(gè)測(cè)試點(diǎn)在第147行,3號(hào)網(wǎng)絡(luò)的第一個(gè)測(cè)試點(diǎn)在第1484亍,說(shuō)明1號(hào)網(wǎng)絡(luò)有147個(gè)正面可測(cè)試點(diǎn),2號(hào)網(wǎng)絡(luò)有1個(gè)正面可測(cè)試點(diǎn)。反面可測(cè)試點(diǎn)索引信息文件用來(lái)表示反面可測(cè)試點(diǎn)文件的索引信息,其表迷含義亦同理。B3、根據(jù)正面可測(cè)試點(diǎn)索引信息文件和反面可測(cè)試點(diǎn)索引信息文件,建立網(wǎng)絡(luò)的類(lèi)型信息文件,其中文件行號(hào)表示網(wǎng)絡(luò)號(hào),數(shù)值表示網(wǎng)絡(luò)類(lèi)型;并分別對(duì)網(wǎng)絡(luò)只有反面測(cè)試點(diǎn)、網(wǎng)絡(luò)兩面都有測(cè)試點(diǎn)、網(wǎng)絡(luò)只有正面測(cè)試點(diǎn)進(jìn)行l(wèi)t值定義;根據(jù)正面可測(cè)試點(diǎn)索引信息文件和反面可測(cè)試點(diǎn)索引信息文件的信息建立網(wǎng)絡(luò)的類(lèi)型信息見(jiàn)表6,并保存為網(wǎng)絡(luò)的類(lèi)型信息文件,網(wǎng)絡(luò)的類(lèi)型信息文件的格式如圖6;其中,文件行號(hào)表示網(wǎng)絡(luò)號(hào),起始編號(hào)為0,數(shù)值表示網(wǎng)絡(luò)類(lèi)型。表6網(wǎng)絡(luò)類(lèi)型說(shuō)明<table>tableseeoriginaldocumentpage16</column></row><table>在本實(shí)施例中,定義當(dāng)數(shù)值等于1時(shí),表示該網(wǎng)絡(luò)只有反面測(cè)試點(diǎn),當(dāng)數(shù)值等于10時(shí),表示該網(wǎng)絡(luò)兩面都有測(cè)試點(diǎn),當(dāng)數(shù)值等于100時(shí),表示該網(wǎng)絡(luò)只有正面測(cè)試點(diǎn);例如,在圖6中,.文件第1、2、3行的數(shù)值分別為10、10、100,表示1號(hào)網(wǎng)絡(luò)和2號(hào)網(wǎng)絡(luò)兩面都有測(cè)試點(diǎn),3號(hào)網(wǎng)絡(luò)只有正面有測(cè)試點(diǎn)。C、優(yōu)化路徑Cl、建立容器分別讀取正面可測(cè)試點(diǎn)索引信息文件、正面可測(cè)試點(diǎn)文件、反面可測(cè)試點(diǎn)文件、反面可測(cè)試點(diǎn)索引信息文件、網(wǎng)絡(luò)的類(lèi)型信息文件,分別保存在第一容器、第二容器、第三容器、第四容器、第五容器中,同時(shí),建立第六容器,用于保存配對(duì)好的正面測(cè)試點(diǎn)信息;建立第七容器,用于保存配對(duì)好的反面測(cè)試點(diǎn)信息,建立第八容器,用于保存最后的配對(duì)結(jié)果;C2、開(kāi)i各點(diǎn)配對(duì)假設(shè)3號(hào)網(wǎng)絡(luò)只有正面測(cè)試點(diǎn),4號(hào)網(wǎng)絡(luò)只有反面測(cè)試點(diǎn),1號(hào)網(wǎng)絡(luò)和2號(hào)網(wǎng)絡(luò)正反面都有測(cè)試點(diǎn),那么對(duì)于3號(hào)網(wǎng)絡(luò)和4號(hào)網(wǎng)絡(luò),則可以配好點(diǎn)后進(jìn)行組合,而1號(hào)網(wǎng)絡(luò)和2號(hào)網(wǎng)絡(luò)由于既有正面測(cè)試點(diǎn),又有反面測(cè)試點(diǎn),可以和3號(hào)網(wǎng)絡(luò)或4號(hào)網(wǎng)絡(luò)進(jìn)行組合,也可以1號(hào)網(wǎng)絡(luò)或2號(hào)網(wǎng)絡(luò)自身中的正反面點(diǎn)進(jìn)行組合,也可以l號(hào)網(wǎng)絡(luò)和2號(hào)網(wǎng)絡(luò)中的點(diǎn)兩兩組合。'C21、判斷當(dāng)前配對(duì)的網(wǎng)絡(luò)號(hào)〈-網(wǎng)絡(luò)總數(shù)嗎?按照網(wǎng)絡(luò)號(hào)的順序來(lái)進(jìn)行配對(duì),假設(shè)有100個(gè)網(wǎng)絡(luò),首先判斷該網(wǎng)絡(luò)的類(lèi)型,即判斷網(wǎng)絡(luò)只有正面點(diǎn)或只有反面點(diǎn)或正反面都有點(diǎn),并根據(jù)附圖7進(jìn)行點(diǎn)配對(duì),每次取一個(gè)網(wǎng)絡(luò),并在第一容器或第二容器中取點(diǎn)進(jìn)行配對(duì),直到這個(gè)網(wǎng)絡(luò)的點(diǎn)全部配對(duì)完成后再進(jìn)行下一個(gè)網(wǎng)絡(luò)的配對(duì),并直到所有網(wǎng)絡(luò)窮盡為止,而每次配對(duì)的網(wǎng)絡(luò)稱(chēng)為當(dāng)前配對(duì)的網(wǎng)絡(luò)號(hào),例如,當(dāng)前在配對(duì)第10個(gè)網(wǎng)絡(luò),那么當(dāng)前配對(duì)的網(wǎng)絡(luò)號(hào)為10;C22、判斷第五容器中的每一行的數(shù)值是等'于多少,當(dāng)數(shù)值表示當(dāng)前配對(duì)的網(wǎng)絡(luò)只有正面測(cè)試點(diǎn)時(shí),進(jìn)行正面點(diǎn)配對(duì),當(dāng)數(shù)值表示當(dāng)前配對(duì)的網(wǎng)絡(luò)兩面都有測(cè)試點(diǎn)時(shí),進(jìn)行雙面點(diǎn)配對(duì);當(dāng)數(shù)值表示當(dāng)前配對(duì)的網(wǎng)絡(luò)只有反面測(cè)試點(diǎn)時(shí),進(jìn)行反面點(diǎn)配對(duì);在具體實(shí)施例中,步驟C22中進(jìn)行正面點(diǎn)配對(duì)時(shí),方法如下,流程圖如圖8。判斷第一容器中的當(dāng)前配對(duì)的網(wǎng)絡(luò)號(hào)的點(diǎn)的個(gè)數(shù)大于或等于2當(dāng)?shù)谝蝗萜髦械漠?dāng)前配對(duì)的網(wǎng)絡(luò)號(hào)的點(diǎn)的個(gè)數(shù)小于2時(shí),取剩余的點(diǎn)壓入第六容器中;當(dāng)?shù)谝蝗萜髦械漠?dāng)前配對(duì)的網(wǎng)絡(luò)號(hào)的點(diǎn)的個(gè)數(shù)大于或等于2時(shí),取連續(xù)的兩個(gè)點(diǎn)壓入第六容器中,并在第一容器中刪除壓入的前一個(gè)點(diǎn)。同理,如果網(wǎng)絡(luò)只有反面測(cè)試點(diǎn),反面測(cè)試點(diǎn)配對(duì)的方法同正面點(diǎn)配對(duì)的方法,不同之處是取出第二容器中的點(diǎn)。進(jìn)行雙面點(diǎn)配對(duì),并且該網(wǎng)絡(luò)正面點(diǎn)個(gè)數(shù)大于反面點(diǎn)個(gè)數(shù)時(shí),方法如下,流程如圖9所示。C221、判斷第一容器中的當(dāng)前配對(duì)的網(wǎng)絡(luò)號(hào)的點(diǎn)的個(gè)數(shù)大于?當(dāng)?shù)谝蝗萜髦械漠?dāng)前配對(duì)的網(wǎng)絡(luò)號(hào)的點(diǎn)的個(gè)數(shù)小于2時(shí),進(jìn)行步驟C226;當(dāng)?shù)谝蝗萜髦械漠?dāng)前配對(duì)的網(wǎng)絡(luò)號(hào)的點(diǎn)的個(gè)數(shù)大于或等于2時(shí),進(jìn)行步驟C222;C222、判斷第二容器中的當(dāng)前配對(duì)的網(wǎng)絡(luò)號(hào)的點(diǎn)的個(gè)數(shù)大于或等于2當(dāng)?shù)诙萜髦械漠?dāng)前配對(duì)的網(wǎng)絡(luò)號(hào)的點(diǎn)的個(gè)數(shù)小于2時(shí),進(jìn)行步驟C224;當(dāng)?shù)诙萜髦械漠?dāng)前配對(duì)的網(wǎng)絡(luò)號(hào)的點(diǎn)的個(gè)數(shù)大于或等于2時(shí),進(jìn)行步驟C223;C223、從第一容器和第二容器中各取2個(gè)點(diǎn)組合后壓入第八容器中;再?gòu)牡谝蝗萜骱偷诙萜髦懈鲃h除壓入的前一個(gè)點(diǎn);返回進(jìn)行步驟C222;C224、判斷第一容器中的當(dāng)前配對(duì)的網(wǎng)絡(luò)號(hào)的點(diǎn)的個(gè)數(shù)大于2當(dāng)?shù)谝蝗萜髦械漠?dāng)前配對(duì)的網(wǎng)絡(luò)號(hào)的點(diǎn)的個(gè)數(shù)小于2時(shí),進(jìn)行步驟C226;當(dāng)?shù)谝蝗萜髦械漠?dāng)前配對(duì)的網(wǎng)絡(luò)號(hào)的點(diǎn)的個(gè)數(shù)大于2時(shí),進(jìn)行步驟C225、;C225、從第一容器中取2個(gè)點(diǎn)以及第2容器中取剩下的點(diǎn)壓入第八容器,并從第一容器中刪除所取的這2個(gè)點(diǎn),然后返回進(jìn)行步驟C224;C226、取第一容器和第二容器剩下的點(diǎn)組合后壓入第八容器中。進(jìn)行雙面點(diǎn)配對(duì),如果該網(wǎng)絡(luò)正面點(diǎn)個(gè)數(shù)小于反面點(diǎn)個(gè)數(shù)時(shí),只需將步驟C221、C224、C225中的第一容器改為第二容器,將步驟C222中的第二容器改為第一容器,其余同步驟C221至步驟C226。在具體實(shí)施例中,當(dāng)網(wǎng)絡(luò)兩面都有測(cè)試點(diǎn)時(shí),先保證正反面的測(cè)試點(diǎn)盡可能配在同一行,即先把該網(wǎng)絡(luò)的測(cè)試點(diǎn)少的那一面先配完,再配對(duì)剩下的測(cè)試點(diǎn)。C23、為了進(jìn)一步縮短行數(shù),在所有的配對(duì)完成后,進(jìn)行正面測(cè)試點(diǎn)和反面測(cè)試點(diǎn)的合并;因?yàn)橛械木W(wǎng)絡(luò)只有正面測(cè)試點(diǎn),而有的網(wǎng)絡(luò)只有反面測(cè)試點(diǎn),為了進(jìn)一步縮短行數(shù),在所有的配對(duì)完成后,進(jìn)行正面測(cè)試點(diǎn)和反面測(cè)試點(diǎn)的合并,最終所有的配對(duì)點(diǎn)都放入第八容器中,具體流程圖如圖10。進(jìn)行正面測(cè)試點(diǎn)和反面測(cè)試點(diǎn)的合并時(shí),^法如下C231、判斷第六容器是否為空?當(dāng)?shù)诹萜鞑粸榭諘r(shí),將第七容器中的剩余配對(duì)行壓入第八容器中;當(dāng)?shù)诹萜鳛榭諘r(shí),繼續(xù)進(jìn)行步驟C232',C232、判斷第七容器是否為空?當(dāng)?shù)谄呷萜鞑粸榭諘r(shí),將第六容器中的剩余配對(duì)行壓入第八容器中;當(dāng)?shù)谄呷萜鳛榭諘r(shí),繼續(xù)進(jìn)行步驟C233、C234;C233、各取第六容器和第七容器中的一行,組合成新的一行后壓入第八容器中;C234、刪除第六容器和第七容器中的已壓入第八容器的行。C3、開(kāi)路優(yōu)化,具體流程見(jiàn)圖11:C31、初始化鏈表,讀取第八容器中的第,行的信息,并對(duì)鏈表第一個(gè)結(jié)點(diǎn)進(jìn)行初始化;C32、繼續(xù)讀取第八容器中的下一行的信息,移動(dòng)指針到鏈表的第一個(gè)結(jié)點(diǎn)處;C33、計(jì)算該行信息在每個(gè)節(jié)點(diǎn)處的移動(dòng)距離;C34、判斷在計(jì)算移動(dòng)距離的過(guò)程中,是否存在撞針,即左邊點(diǎn)的x軸坐標(biāo)大于右邊點(diǎn)的x軸坐標(biāo),如果存在撞針,則調(diào)整坐標(biāo),交換該行兩點(diǎn)的位置,重新進(jìn)行移動(dòng)距離的計(jì)算;C35、判斷指針是否到達(dá)鏈表尾;C36、如果指針沒(méi)有到達(dá)鏈表尾,將指針移動(dòng)到鏈表的下一個(gè)結(jié)點(diǎn)處,重復(fù)步驟C32、C33、C34、C35,當(dāng)指針到達(dá)鏈表尾時(shí),將讀入的行的信息插入到具有最小移動(dòng)距離的節(jié)點(diǎn)處;C37、判斷第八容器中的所有行的信息是否讀完;C38、當(dāng)?shù)诎巳萜髦械乃行械男畔⑽醋x完時(shí),重復(fù)步驟C32至步驟C37;當(dāng)?shù)诎巳萜髦械乃行械男畔⒆x完后,將鏈表信息寫(xiě)入測(cè)試文件;E、輸出測(cè)試文件開(kāi)路優(yōu)化完成后,將按照IPC文件標(biāo)準(zhǔn)生成CONTI.LST文件。飛4十測(cè)試4義可以直接讀取該文件進(jìn)4亍測(cè)試。該文件的格式如圖14所示。其中,步驟C33計(jì)算該行信息在每個(gè)節(jié)點(diǎn)處的移動(dòng)距離采用如下方法C331、計(jì)算首兩行最短路徑參見(jiàn)圖12,用(V,W)(_/=1,2,3,4)表示第/行第y個(gè)網(wǎng)絡(luò)中的點(diǎn)坐標(biāo),《表示對(duì)應(yīng)網(wǎng)絡(luò)的距離,《按如下公式計(jì)算'《=max(l-《|,|j,-y'《|)max0為取最大4直函凄t;即《取I《-I,IW-I兩者之中的最大值。定義第/行與第J行的移動(dòng)最終路徑長(zhǎng)度如下D(f,力二max(《,d2,《,《)則首兩行的對(duì)應(yīng)網(wǎng)絡(luò)的距離計(jì)算如下net1:《=max(|;c;_4l,l—乂I)net2:《=max(|《-《|,|乂-^|)net3:名=max(|<—《|,W"I)net4:《-m,4-"^;1-乂l)最后,第一行與第二行所移動(dòng)的最終路徑長(zhǎng)度為D(l,2)=max(《,d2,£3,d4)C332、當(dāng)鏈表中的n+1行已經(jīng)排好順序,當(dāng)前要插入的行為第n+2行時(shí),則逐行計(jì)算所移動(dòng)路徑長(zhǎng)度,然后求出待插入的行插入第/7,wl行之間的最短移動(dòng)距離D(n,n+1):£)(",w+1)=max,cf2,d3,c4)參見(jiàn)圖13,用(V,W)C/:l,2,3,4)表示第/行第乂個(gè)網(wǎng)絡(luò)中的點(diǎn)坐標(biāo),《表示對(duì)應(yīng)網(wǎng)絡(luò)的距離,max()表示取最大值函棘,其中《=酬42-乂|,i乂+2_乂|)+max(|《+2-心|,|義2-厶1)-—1乂、+1l,l乂-乂+11)《=max(K2-《|,|義2|)+max(|<2-^|,|義21)-—《|,|乂->^|)《=max(]^2-《|,|義2—乂|)+max(|《21,|—乂+1|)-max(|《|,|乂—|)《=max(|《+2-x:|,|乂+2—乂|)+max(]《+21,|乂+2—乂+11)—腿0《—《+1l,l乂1)如果在計(jì)算移動(dòng)路徑的過(guò)程中,存在撞針,即左邊點(diǎn)的義軸坐標(biāo)大于右邊點(diǎn)的x軸坐標(biāo),則應(yīng)調(diào)整網(wǎng)絡(luò)中的點(diǎn),重新進(jìn)行移動(dòng)路徑的計(jì)算。當(dāng)遍歷完整個(gè)鏈表以后,將該行信息插入到移動(dòng)路徑最小值的結(jié)點(diǎn)位置處,然后再?gòu)牡诎巳萜髦凶x取新一行信息,重復(fù)上述操作,直至結(jié)束。測(cè)試儀有4根飛針,正反面各兩針,每次測(cè)試4個(gè)不同點(diǎn)。本方法要求正確讀取印刷電路板行業(yè)標(biāo)準(zhǔn)IPC-D-356文件的信息,生成可以用于4針聯(lián)動(dòng)飛針測(cè)試儀的測(cè)試文件,且要求走針路徑最短。本方法可以描述成如下的優(yōu)化^^莫型(1)變量設(shè)計(jì)設(shè)電路板有/Z7個(gè)網(wǎng)絡(luò),第i個(gè)網(wǎng)絡(luò)網(wǎng)絡(luò)有/7個(gè)點(diǎn)(/7>1),其所有點(diǎn)的集合設(shè)為^-h,V2,…,vJ,集合中任意兩點(diǎn)v,.,,之間的距離設(shè)為《v。(2)解空間解空間S是進(jìn)行一次測(cè)試的所有路徑,解可以表示為h,^,…,wj,WpW2,…,v^是l,2,…,r的一個(gè)排列,表明從w出發(fā),依次經(jīng)過(guò)w,,W2,…,vv,,最后到達(dá)w。初始解可選為d,w2。,…,w,。)。(3)目標(biāo)函數(shù)需要在所有待測(cè)點(diǎn)的集合中,找到四個(gè)全排列&…,尸J、A={Pfil,^2,*",戶(hù)&}、尸C=(PCc2,…,尸0〉和尸D={尸£)1,尸£2,''',尸/>}°令D=tmax(d(i^,^)^(;、)^(^,々;U(i^、)),求"的最小值。(4)約束條件A、B、C、D四針?lè)謩e從一個(gè)點(diǎn)出發(fā),遍歷所有的點(diǎn)。算法結(jié)束條件為連續(xù)多次都沒(méi)有發(fā)生路徑的變化,則認(rèn)為已經(jīng)找到最優(yōu)解。顯然,根據(jù)以上的描述,當(dāng)行數(shù)r較小的時(shí)候,可用貪婪法等算法求出最優(yōu)解,但是當(dāng)r很大時(shí),由于是NP難題,要找到最優(yōu)解的計(jì)算量很大,所以,在實(shí)際的工程應(yīng)用中,找到較優(yōu)解即可。根據(jù)以上的優(yōu)化模型,要得到較優(yōu)結(jié)果需在兩方面入手一是減少生成文件的行數(shù);二是在行數(shù)固定的情況下,調(diào)整各行的順序以?xún)?yōu)化路徑。電路板上有大量測(cè)試點(diǎn),在同一條線路上的測(cè)試點(diǎn)構(gòu)成一個(gè)網(wǎng)絡(luò)。開(kāi)路測(cè)試,就是要測(cè)試同一個(gè)網(wǎng)絡(luò)測(cè)試點(diǎn)的物理連接狀況——是否存在開(kāi)路。本發(fā)明采用點(diǎn)配對(duì)的方式來(lái)減少文件的行數(shù),對(duì)于每一塊待測(cè)試PCB,板上的測(cè)試點(diǎn)個(gè)數(shù)是固定的,那么不同的'點(diǎn)配對(duì)方式可能導(dǎo)致不同的行數(shù),所以,在配對(duì)時(shí),盡量使得每一行存在4個(gè)點(diǎn),并把互不影響能同時(shí)測(cè)試的點(diǎn)進(jìn)行合并,這樣得出的文件行數(shù)是最小的。使用本發(fā)明描述的優(yōu)化算法對(duì)G60687、SG91992和H700923個(gè)ipc文件進(jìn)行開(kāi)路優(yōu)化,并同飛翔公司采用的測(cè)試軟件生成的文件進(jìn)行對(duì)比,仿真結(jié)果見(jiàn)表7。表7優(yōu)化算法的仿真結(jié)果文件名G60687SG91992H70092原文件行數(shù)361990541新文件行數(shù)310913楊原文件路徑長(zhǎng)度3266481485716785631新文件路徑長(zhǎng)度3228241335110709216優(yōu)化率1.17%10.14%9.73%優(yōu)化時(shí)間(秒)142因?yàn)镻CB板的走線和構(gòu)造特別復(fù)雜,特別是對(duì)于多層PCB,還要考慮多針的并行工作,優(yōu)化起來(lái)很有難度。在實(shí)際的飛針測(cè)試中,對(duì)IOOO行左右的測(cè)試文件,往往需要幾個(gè)小時(shí)才能完成測(cè)試,對(duì)于大文件,其測(cè)試時(shí)間更長(zhǎng),所以哪怕只要優(yōu)化很少一點(diǎn),也能帶來(lái)比較明顯的收益。表7的仿真結(jié)果顯示,我們?cè)O(shè)計(jì)的配對(duì)點(diǎn)算法能縮短測(cè)試文件的行數(shù),使用本專(zhuān)利提出的開(kāi)路優(yōu)化算法對(duì)開(kāi)路測(cè)試文件進(jìn)行優(yōu)化后,探針?biāo)叩淖畲舐窂介L(zhǎng)度相比于原文件,有比較明顯的優(yōu)化。權(quán)利要求1、一種印制電路板測(cè)試路徑優(yōu)化方法,其特征在于所述方法包括如下步驟A、讀取ipc文件,得到待測(cè)點(diǎn)所屬的網(wǎng)絡(luò)號(hào)、正反面標(biāo)志、坐標(biāo)信息,以及相鄰網(wǎng)絡(luò)的信息;B、對(duì)信息進(jìn)行預(yù)處理B1、把提取出來(lái)的所有待測(cè)點(diǎn)信息分成正面可測(cè)試點(diǎn)和反面可測(cè)試點(diǎn)兩個(gè)部分,按照“網(wǎng)絡(luò)號(hào)數(shù)值+x坐標(biāo)+y坐標(biāo)”從小到大進(jìn)行排序,得到正面可測(cè)試點(diǎn)文件和反面可測(cè)試點(diǎn)文件;B2、對(duì)正面可測(cè)試點(diǎn)文件和反面可測(cè)試點(diǎn)文件分別建立正面可測(cè)試點(diǎn)索引信息文件和反面可測(cè)試點(diǎn)索引信息文件,用于分別記錄正面可測(cè)試點(diǎn)文件和反面可測(cè)試點(diǎn)文件中每個(gè)網(wǎng)絡(luò)號(hào)的起始測(cè)試點(diǎn)的位置;B3、根據(jù)正面可測(cè)試點(diǎn)索引信息文件和反面可測(cè)試點(diǎn)索引信息文件,建立網(wǎng)絡(luò)的類(lèi)型信息文件,其中文件行號(hào)表示網(wǎng)絡(luò)號(hào),數(shù)值表示網(wǎng)絡(luò)類(lèi)型;并分別對(duì)網(wǎng)絡(luò)只有反面測(cè)試點(diǎn)、網(wǎng)絡(luò)兩面都有測(cè)試點(diǎn)、網(wǎng)絡(luò)只有正面測(cè)試點(diǎn)進(jìn)行定義;C、優(yōu)化路徑C1、建立容器分別讀取正面可測(cè)試點(diǎn)文件、反面可測(cè)試點(diǎn)文件、正面可測(cè)試點(diǎn)索引信息文件、反面可測(cè)試點(diǎn)索引信息文件、網(wǎng)絡(luò)的類(lèi)型信息文件,分別保存在第一容器、第二容器、第三容器、第四容器、第五容器中,同時(shí),建立第六容器,用于保存配對(duì)好的正面測(cè)試點(diǎn)信息;建立第七容器,用于保存配對(duì)好的反面測(cè)試點(diǎn)信息,建立第八容器,用于保存最后的配對(duì)結(jié)果;C2、開(kāi)路點(diǎn)配對(duì)C21、判斷當(dāng)前配對(duì)的網(wǎng)絡(luò)號(hào)<=網(wǎng)絡(luò)總數(shù)嗎?C22、判斷第五容器中的每一行的數(shù)值是等于多少,當(dāng)數(shù)值表示當(dāng)前配對(duì)的網(wǎng)絡(luò)只有正面測(cè)試點(diǎn)時(shí),進(jìn)行正面點(diǎn)配對(duì),當(dāng)數(shù)值表示當(dāng)前配對(duì)的網(wǎng)絡(luò)兩面都有測(cè)試點(diǎn)時(shí),進(jìn)行雙面點(diǎn)配對(duì);當(dāng)數(shù)值表示當(dāng)前配對(duì)的網(wǎng)絡(luò)只有反面測(cè)試點(diǎn)時(shí),進(jìn)行反面點(diǎn)配對(duì);C23、為了進(jìn)一步縮短行數(shù),在所有的配對(duì)完成后,進(jìn)行正面測(cè)試點(diǎn)和反面測(cè)試點(diǎn)的合并;C3、開(kāi)路優(yōu)化C31、初始化鏈表,讀取第八容器中的第一行的信息,并對(duì)鏈表第一個(gè)結(jié)點(diǎn)進(jìn)行初始化;C32、繼續(xù)讀取第八容器中的下一行的信息,移動(dòng)指針到鏈表的第一個(gè)結(jié)點(diǎn)處;C33、計(jì)算該行信息在每個(gè)節(jié)點(diǎn)處的移動(dòng)距離;C34、判斷在計(jì)算移動(dòng)距離的過(guò)程中,是否存在撞針,即左邊點(diǎn)的x軸坐標(biāo)大于右邊點(diǎn)的x軸坐標(biāo),如果存在撞針,則調(diào)整坐標(biāo),重新進(jìn)行移動(dòng)距離的計(jì)算;C35、判斷指針是否到達(dá)鏈表尾;C36、如果指針沒(méi)有到達(dá)鏈表尾,將指針移動(dòng)到鏈表的下一個(gè)結(jié)點(diǎn)處,重復(fù)步驟C32、C33、C34、C35,當(dāng)指針到達(dá)鏈表尾時(shí),將讀入的行的信息插入到具有最小移動(dòng)距離的節(jié)點(diǎn)處;C37、判斷第八容器中的所有行的信息是否讀完;C38、當(dāng)?shù)诎巳萜髦械乃行械男畔⑽醋x完時(shí),重復(fù)步驟C32至步驟C37;當(dāng)?shù)诎巳萜髦械乃行械男畔⒆x完后,將鏈表信息寫(xiě)入測(cè)試文件;E、輸出測(cè)試文件開(kāi)路優(yōu)化完成后,將按照IPC文件標(biāo)準(zhǔn)生成CONTI.LST文件。2、根據(jù)權(quán)利要求1所述的印制電路板測(cè)試路徑優(yōu)化方法,其特征在于步驟C22中進(jìn)行正面點(diǎn)配對(duì)時(shí),方法如下判斷第一容器中的當(dāng)前配對(duì)的網(wǎng)絡(luò)號(hào)的點(diǎn)的個(gè)數(shù)大于或等于2當(dāng)?shù)谝蝗萜髦械漠?dāng)前配對(duì)的網(wǎng)絡(luò)號(hào)的點(diǎn)的個(gè)數(shù)小于2時(shí),取剩余的點(diǎn)壓入第六容器中;當(dāng)?shù)谝蝗萜髦械漠?dāng)前配對(duì)的網(wǎng)絡(luò)號(hào)的點(diǎn)的個(gè)數(shù)大于或等于2時(shí),取連續(xù)的兩個(gè)點(diǎn)壓入第六容器中,并在第一容器中刪除壓入的前一個(gè)點(diǎn)。3、根據(jù)權(quán)利要求2所述的印制電路板測(cè)試路徑優(yōu)化方法,其特征在于步驟C22中進(jìn)行雙面點(diǎn)配對(duì),并且該網(wǎng)絡(luò)正面點(diǎn)個(gè)數(shù)大于反面點(diǎn)個(gè)數(shù)時(shí),方法如下C221、判斷第一容器中的當(dāng)前配對(duì)的網(wǎng)絡(luò)號(hào)的點(diǎn)的個(gè)數(shù)大于2當(dāng)?shù)谝蝗萜髦械漠?dāng)前配對(duì)的網(wǎng)絡(luò)號(hào)的點(diǎn)的個(gè)數(shù)小于2時(shí),進(jìn)行步驟C226;當(dāng)?shù)谝蝗萜髦械漠?dāng)前配對(duì)的網(wǎng)絡(luò)號(hào)的點(diǎn)的個(gè)數(shù)大于或等于2時(shí),進(jìn)行步驟C222;C222、判斷第二容器中的當(dāng)前配對(duì)的網(wǎng)絡(luò)號(hào)的點(diǎn)的個(gè)數(shù)大于或等于2當(dāng)?shù)诙萜髦械漠?dāng)前配對(duì)的網(wǎng)絡(luò)號(hào)的點(diǎn)的個(gè)數(shù)小于2時(shí),進(jìn)行步驟C224;當(dāng)?shù)诙萜髦械漠?dāng)前配對(duì)的網(wǎng)絡(luò)號(hào)的點(diǎn)的個(gè)數(shù)大于或等于2時(shí),進(jìn)行步驟C223;C223、從第一容器和第二容器中各取2個(gè)點(diǎn)組合后壓入第八容器中;再?gòu)牡谝蝗萜骱偷诙萜髦懈鲃h除壓入的前一個(gè)點(diǎn);返回進(jìn)行步驟C222;C224、判斷第一容器中的當(dāng)前配對(duì)的網(wǎng)絡(luò)號(hào)的點(diǎn)的個(gè)數(shù)大于2當(dāng)?shù)谝蝗萜髦械漠?dāng)前配對(duì)的網(wǎng)絡(luò)號(hào)的點(diǎn)的個(gè)數(shù)小于2時(shí),進(jìn)行步驟C226;當(dāng)?shù)谝蝗萜髦械漠?dāng)前配對(duì)的網(wǎng)絡(luò)號(hào)的點(diǎn)的個(gè)數(shù)大于2時(shí),進(jìn)行步驟C225、;C225、從第一容器中取2個(gè)點(diǎn)以及第2容器中取剩下的點(diǎn)壓入第八容器,并從第一容器中刪除所取的這2個(gè)點(diǎn),然后返回進(jìn)行步驟C224;C226、取第一容器和第二容器剩下的點(diǎn)組合后壓入第八容器中。4、根據(jù)權(quán)利要求2或3所述的一種印制電路板測(cè)試路徑優(yōu)化方法,其特征在于步驟C23正面測(cè)試點(diǎn)和反面測(cè)試點(diǎn)的合并方法如下C231、判斷第六容器是否為空?當(dāng)?shù)诹萜鞑粸榭諘r(shí),將第七容器中的剩余配對(duì)行壓入第八容器中;當(dāng)?shù)诹萜鳛榭諘r(shí),繼續(xù)進(jìn)行步驟C232;C232、判斷第七容器是否為空?當(dāng)?shù)谄呷萜鞑粸榭諘r(shí),將第六容器中的剩余配對(duì)行壓入第八容器中;當(dāng)?shù)谄呷萜?為空時(shí),繼續(xù)進(jìn)行步驟C233、C234;C233、各取第六容器和第七容器中的一行,組合成新的一行后壓入第八容器中;C234、刪除第六容器和第七容器中的已壓入第八容器的行。全文摘要本發(fā)明公開(kāi)了一種印制電路板測(cè)試路徑優(yōu)化方法,其特征在于所述方法包括如下步驟A.讀取ipc文件,得到待測(cè)點(diǎn)所屬的網(wǎng)絡(luò)號(hào)、正反面標(biāo)志、坐標(biāo)信息,以及相鄰網(wǎng)絡(luò)的信息;B.對(duì)信息進(jìn)行預(yù)處理,C.優(yōu)化路徑、E、輸出測(cè)試文件開(kāi)路優(yōu)化完成后,將按照IPC文件標(biāo)準(zhǔn)生成CONTI.LST文件。本發(fā)明由ipc文件讀出待測(cè)試電路板的所有點(diǎn)信息以及相鄰網(wǎng)絡(luò)信息,根據(jù)4針測(cè)試原則,重新對(duì)各網(wǎng)絡(luò)號(hào)進(jìn)行組合和排列,在不漏測(cè)任何網(wǎng)絡(luò)的前提下盡量?jī)?yōu)化走針路徑,使得飛針測(cè)試儀走針的路徑最短,經(jīng)實(shí)際應(yīng)用,結(jié)果比現(xiàn)有軟件在測(cè)試時(shí)間效率上提高了3%到16%,可廣泛應(yīng)用于印制電路板制造行業(yè)以及電子行業(yè)。文檔編號(hào)G06F17/50GK101667219SQ200910191018公開(kāi)日2010年3月10日申請(qǐng)日期2009年9月29日優(yōu)先權(quán)日2009年9月29日發(fā)明者革何,周尚波,柳玉炯,鵬胡申請(qǐng)人:重慶大學(xué)
      網(wǎng)友詢(xún)問(wèn)留言 已有0條留言
      • 還沒(méi)有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
      1