Altium designer 高級(jí)規(guī)則 Query語(yǔ)句的編寫及檢測(cè)
在編寫設(shè)計(jì)規(guī)則時(shí),我們經(jīng)常會(huì)用Query語(yǔ)句來(lái)詳細(xì)地限定設(shè)計(jì)規(guī)則的范圍。如何準(zhǔn)確地編寫Query語(yǔ)句,并在編寫完成之后檢查Query語(yǔ)句的范圍是否正確呢?下面詳細(xì)地說(shuō)明一下。
1.編寫Query語(yǔ)句在PCB文檔界面,選擇菜單Design-> Rules… 打開PCB Rules and Constraints Editor 對(duì)話框,將Where The Object Matches的范圍設(shè)置為Custom Query,右側(cè)的區(qū)域內(nèi)就可以直接輸入Query語(yǔ)句了, 如下圖所示。 創(chuàng)建Query語(yǔ)句 當(dāng)我們不了解Query語(yǔ)句的語(yǔ)法、可用的關(guān)鍵字時(shí),可以使用Query Builder和Query Helper這兩個(gè)功能項(xiàng)協(xié)助創(chuàng)建Query語(yǔ)句。 1.1. 使用Query Builder構(gòu)建查詢語(yǔ)句 Query Builder提供了一種構(gòu)造查詢語(yǔ)句的簡(jiǎn)單方法,它允許設(shè)計(jì)者利用條件類型和值構(gòu)建相關(guān)的查詢模塊。點(diǎn)擊Query Builder按鈕來(lái)打開Building Query from Board對(duì)話框,可以在該對(duì)話框中創(chuàng)建由AND和OR 邏輯字符串構(gòu)成的查詢表達(dá)式。 使用Query Builder創(chuàng)建查詢表達(dá)式 該對(duì)話框的左側(cè)部分用于選擇指定目標(biāo)對(duì)象的條件,右側(cè)部分會(huì)顯示當(dāng)前查詢語(yǔ)句的預(yù)覽,如上圖所示,可以添加多個(gè)條件進(jìn)一步限制目標(biāo)對(duì)象。 1.2.使用Query Helper構(gòu)建高級(jí)查詢語(yǔ)句點(diǎn)擊Query Helper按鈕打開Query Helper對(duì)話框。查詢引擎會(huì)分析pcb設(shè)計(jì),列出所有可用的對(duì)象,以及所有查詢關(guān)鍵字。 對(duì)話框的Query區(qū)域用來(lái)生成查詢表達(dá)式。我們可以直接在該區(qū)域輸入——會(huì)出現(xiàn)輔助的關(guān)鍵字或?qū)ο蟮奶崾玖斜怼?/font> 對(duì)話框的Categories區(qū)域用于訪問(wèn)可用的PCB函數(shù)(PCB Functions)、PCB對(duì)象列表(PCB Object Lists)和系統(tǒng)函數(shù)(System Functions),它們用來(lái)創(chuàng)建查詢表達(dá)式。在這三個(gè)區(qū)域中點(diǎn)擊一個(gè)子類別,會(huì)在右側(cè)區(qū)域中顯示相應(yīng)的關(guān)鍵字或?qū)ο罅斜怼6ㄎ灰诓樵冋Z(yǔ)句中使用的關(guān)鍵字或?qū)ο,并雙擊其條目,該條目就會(huì)出現(xiàn)在查詢表達(dá)式區(qū)域的當(dāng)前光標(biāo)位置。 使用Query Helper編寫更復(fù)雜的查詢表達(dá)式 該對(duì)話框上的Check Syntax按鈕可用來(lái)檢查和標(biāo)記查詢表達(dá)式中的語(yǔ)法錯(cuò)誤。 1.3. 使用PCB Filter 面板創(chuàng)建設(shè)計(jì)規(guī)則創(chuàng)建設(shè)計(jì)規(guī)則的另一種方法:利用PCB Filter面板的查詢語(yǔ)句直接創(chuàng)建設(shè)計(jì)規(guī)則。使用Find Similar Objects對(duì)話框,可以為PCB Filter 面板創(chuàng)建查詢表達(dá)式。然后在PCB Filter面板中使用Create Rule按鈕,為Filter部分的查詢表達(dá)式直接創(chuàng)建設(shè)計(jì)規(guī)則。步驟如下: 在PCB面板上選擇一個(gè)目標(biāo)對(duì)象,對(duì)其右鍵單擊,然后在彈出的右鍵菜單中選擇Find Similar Objects命令,打開Find Similar Objects對(duì)話框。在該對(duì)話框中,將目標(biāo)對(duì)象具有的相同元素設(shè)置為Same (例如PCB 封裝相同,則將Footprint設(shè)置為Same),勾選Create Expression 對(duì)話框,設(shè)置如下圖所示。
利用Find Similar Objects 創(chuàng)建查詢語(yǔ)句 PCB Filter面板 此時(shí)勾選面板上的Select 復(fù)選框,然后點(diǎn)擊Apply to All按鈕(如上圖所示),將會(huì)選中PCB板上所有要查詢的設(shè)計(jì)對(duì)象。 在確保查找對(duì)象的范圍沒(méi)有問(wèn)題后,可以將Filter中的查詢語(yǔ)句復(fù)制到設(shè)計(jì)規(guī)則對(duì)話框的Query語(yǔ)句區(qū)域。也可以按照下面所示的步驟創(chuàng)建新的設(shè)計(jì)規(guī)則:
選擇要?jiǎng)?chuàng)建的設(shè)計(jì)規(guī)則的類型 生成設(shè)計(jì)規(guī)則 2. 檢測(cè)Query語(yǔ)句在設(shè)置設(shè)計(jì)規(guī)則時(shí),了解規(guī)則的范圍是否正確涵蓋了所有預(yù)期的對(duì)象,且不包括其他的對(duì)象,是個(gè)很重要的步驟。 2.1. 使用Test Queries檢測(cè)查詢語(yǔ)句Test Queries功能可以測(cè)試查詢語(yǔ)句,驗(yàn)證查詢表達(dá)式是否定位到正確的對(duì)象。 在設(shè)計(jì)規(guī)則界面點(diǎn)擊窗口右上角的Test Queries按鈕,打開Test Queries Result窗口,該窗口中會(huì)顯示查詢語(yǔ)句實(shí)際上應(yīng)用到的對(duì)象數(shù),如下圖所示。 檢查當(dāng)前查詢語(yǔ)句應(yīng)用到的對(duì)象 點(diǎn)擊Test Queries Result對(duì)話框上Expression result 后面的數(shù)字,PCB板上會(huì)高亮顯示該條查詢語(yǔ)句適用的設(shè)計(jì)對(duì)象,其它的設(shè)計(jì)對(duì)象會(huì)被遮蔽或變暗,以檢測(cè)查詢語(yǔ)句是否涵蓋了正確的對(duì)象并且不包含多余的對(duì)象。 2.2. 在PCB Filter中檢測(cè)還可以將查詢語(yǔ)句復(fù)制到PCB Filter 面板的Filter區(qū)域內(nèi),在勾選Select復(fù)選框后,使用Apply to All 按鈕測(cè)試查詢語(yǔ)句的應(yīng)用范圍。具體的方法如 1.3.中的C步驟所述。 3. 用Query語(yǔ)句創(chuàng)建規(guī)則的實(shí)例例如:我想限定電路板上特定區(qū)域內(nèi)的線寬和間距,可以借助Query語(yǔ)句來(lái)創(chuàng)建設(shè)計(jì)規(guī)則,步驟如下: 創(chuàng)建Room,并為其命名。 游客,如果您要查看本帖隱藏內(nèi)容請(qǐng) 回復(fù)
|