描述,通過引用將其全部并入本文。
[0024] 圖2是類似于圖1的機器視覺檢查系統(tǒng)的機器視覺檢查系統(tǒng)100的控制系統(tǒng)部分 120和視覺組件部件200的框圖,并且包括在根據(jù)本文所述的原理的各種實施例中可以使 用的特征。如將在下面更詳細(xì)地描述的那樣,利用控制系統(tǒng)部分120來控制視覺組件部分 200。如圖2所示,視覺組件部分200包括光學(xué)組合件部分205、光源220、230和240以及具 有中間透明部分212的工件臺架210。工件臺架210可以可控地沿著位于通常平行于可以 安置工件20的臺架的表面的平面中的X和Y軸移動。光學(xué)組合件部分205包括相機系統(tǒng) 260、可互換物鏡250,并且可以包括鏡頭盤組合件280,或者替代地包括固定的或者手動地 相互可互換的放大倍率變化透鏡等。通過使用可控電動機294,光學(xué)組合件部分205可以可 控地沿著通常正交于X和Y軸的Z軸移動。
[0025] 可以將工件20或保持多個工件20的固定物放置在工件臺架210上。可以控制工 件臺架210移動,使得可互換物鏡250在工件20上的位置之間移動。一個或多個的光可以 發(fā)射各自的源光222、232或242,以照亮工件20。源光被反射或透射為工件光255,其通過 可互換物鏡250以及鏡頭盤組合件280,并且被相機系統(tǒng)260采集。被相機系統(tǒng)260捕捉的 圖像通過信號線262輸出到控制系統(tǒng)部分120。光源220、230和240可以分別通過信號線 或總線221、231或241連接到控制系統(tǒng)部分120。為了改變圖像放大倍率,控制系統(tǒng)部分 120可以通過信號線或總線282控制鏡頭盤組合件280的旋轉(zhuǎn)。
[0026] 使用驅(qū)動致動器的可控電動機294,光學(xué)組合件部分205可以相對于工件臺架210 在垂直的Z軸方向上移動,從而移動光學(xué)組合件部分205以改變被相機系統(tǒng)捕捉的圖像的 焦點。在本文中所使用的術(shù)語Z軸是指用于聚焦圖像的軸。在使用時,可控電動機經(jīng)由信 號線296被連接到輸入/輸出接口 130。
[0027] 如圖2所示,在各種示例性的實施例中,如在下面更詳細(xì)的描述的那樣,控制系統(tǒng) 部分120包括控制器125、電源部分128、輸入/輸出接口 130、存儲器140、工件程序產(chǎn)生器 和執(zhí)行器150、記錄器/轉(zhuǎn)換器155、學(xué)習(xí)模式部分156、運行模式部分157、編輯部分160、代 理數(shù)據(jù)管理器180、程序狀態(tài)管理器185、節(jié)點管理器190、窗口間自動流動部分195以及可 以用于連接遠(yuǎn)程設(shè)備信息附件400'的附件管理部分300'。這些組件中的每一個以及在下 面描述的附加組件可以通過一個或多個數(shù)據(jù)/控制總線和/或應(yīng)用編程接口或者通過各個 元件之間的直接連接而互連。
[0028] 輸入/輸出接口 130包括成像控制接口 131、運動控制接口 132、照明控制接口 133 以及透鏡控制接口 134。照明控制接口 133例如控制機器視覺檢查系統(tǒng)100的各種對應(yīng)光 源的選擇、功率、開啟/關(guān)閉開關(guān)以及選通脈沖時機(strobe pulse timing)(如果可用)。
[0029] 存儲器140包括圖像文件存儲器部分141、可以包括一個或多個部件加工程序 142PP等的工件程序存儲器部分142、以及視頻工具部分143。視頻工具部分143包括確定 對應(yīng)的視頻工具中的每一個的⑶I、圖像處理操作等的視頻工具部分143a以及其他視頻工 具部分。視頻工具部分143還包括興趣區(qū)域(ROI)產(chǎn)生器143x,興趣區(qū)域產(chǎn)生器143x支持 定義可以在包括在視頻工具部分143中的各種視頻工具中操作的各種ROI的自動、半自動 和/或手動操作。
[0030] -般地,存儲器部分140存儲可用于操作視覺系統(tǒng)以獲取具有所期望的圖像特性 的工件20的圖像的數(shù)據(jù)。存儲器部分140還可以存儲檢查結(jié)果數(shù)據(jù),還可以存儲可用于手 動地或自動地操作機器視覺檢查系統(tǒng)100對獲取的圖像(例如,部分地實現(xiàn)為視頻工具) 執(zhí)行各種檢查和測量操作以及通過輸入/輸出接口 130輸出結(jié)果的數(shù)據(jù)。存儲器部分140 還可以包含定義可以通過輸入/輸出接口 130操作的用戶界面的數(shù)據(jù)。
[0031] 光的信號線或總線221、231和241、來自相機系統(tǒng)260的信號線262以及來自可控 電動機294的信號線296全部連接到輸入/輸出接口 130。除了攜帶圖像數(shù)據(jù)之外,信號線 262還可以攜帶來自控制器125的啟動圖像獲取的信號。
[0032] -個或多個顯不設(shè)備136 (例如圖1的顯不器16)和一個或多個輸入設(shè)備138 (例 如圖1的操縱桿22、鍵盤24和鼠標(biāo)26)也可以連接到輸入/輸出接口 130。顯示設(shè)備136 和輸入設(shè)備138可以用于顯示可包括可用于執(zhí)行檢查操作、和/或創(chuàng)建和/或修改部件加 工程序、觀看由相機系統(tǒng)260捕捉的圖像、和/或直接控制視覺系統(tǒng)組件部分200的各種用 戶界面特征的用戶界面。在各種實施例中,顯示設(shè)備136和輸入設(shè)備138被用于呈現(xiàn)可用 于允許在機器視覺檢查系統(tǒng)100上快速、高效、直觀并且靈活地編輯部件加工程序的各種 用戶界面特征。
[0033] 工件程序產(chǎn)生器和執(zhí)行器150、記錄器/轉(zhuǎn)換器155、學(xué)習(xí)模式部分156、運行模式 部分157、編輯部分160、代理數(shù)據(jù)管理器180、程序狀態(tài)管理器185、節(jié)點管理器190、窗口間 自動滾動部分195以及附件管理部分300'可以在一個實施例中全部被考慮為鏈接到控制 器125的一般機器控制器塊MC的一部分。另外,參照圖3-9更詳細(xì)地描述的遠(yuǎn)程設(shè)備信息 附件400'可以鏈接到控制器125(例如通過附件管理部分300')。在一些實施例中,遠(yuǎn)程 設(shè)備信息附件400'可以被視為在控制系統(tǒng)部分120的外部但是與其通信以進(jìn)行互操作的 附件。工件程序產(chǎn)生器和執(zhí)行器150負(fù)責(zé)創(chuàng)建并執(zhí)行部件加工程序。將意識到,在本文中 可以互換地使用術(shù)語"工件程序"和"部件加工程序"。
[0034] 根據(jù)工件程序產(chǎn)生器和執(zhí)行器150的操作,在各種示例性實施例中,當(dāng)用戶利用 機器視覺系統(tǒng)100創(chuàng)建工件20的部件加工程序時,用戶通過使用工件編程語言自動地、半 自動地或手動地對指令進(jìn)行明確的編碼和/或通過在學(xué)習(xí)模式下操作(例如通過學(xué)習(xí)模式 部分156控制)機器視覺檢查系統(tǒng)100生成指令來提供所期望的圖像獲取訓(xùn)練序列,從而 產(chǎn)生部件加工程序指令。例如,訓(xùn)練序列可以包含定位觀看域(FOV)中的工件特征、設(shè)置 光級、聚焦或自動聚焦、獲取圖像以及提供對圖像應(yīng)用的檢查訓(xùn)練序列(例如使用視頻工 具)。學(xué)習(xí)模式工作使得(多個)序列被捕捉或記錄,并被變換成對應(yīng)的部件加工程序步驟 (即,指令)。這些部件加工程序步驟在部件加工程序執(zhí)行在運行模式下(例如被運行模式 部分157控制)時,將使機器視覺檢查系統(tǒng)再次產(chǎn)生經(jīng)訓(xùn)練的圖像獲取和檢查操作以自動 地檢查與在創(chuàng)建部件加工程序時使用的工件匹配的一個工件或多個工件。
[0035] 利用記錄器/轉(zhuǎn)換器155將機器操作轉(zhuǎn)換成部件加工程序代碼。換言之,如果用戶 執(zhí)行一行為(例如,諸如改變用于測量工件上的特征的視頻工具),則產(chǎn)生被轉(zhuǎn)換成機器可 讀取的語言的指令,并且還可以執(zhí)行逆轉(zhuǎn)換。如在下面更詳細(xì)的描述的那樣,在本文中公開 的特定實施例中,部件加工程序中的特定指令還可以被轉(zhuǎn)換成用戶界面中的指令表示。在 某些實施例中,部件加工程序指令可以被寫成標(biāo)記類型的語言代碼。在一個具體的示例實 施例中,標(biāo)記語言代碼可以是XML代碼。編輯部分160提供或激活各種操作以及與對編輯 用戶界面部分160ui內(nèi)的部件加工程序進(jìn)行編輯有關(guān)的用戶界面特征,其可以包括如下面 更詳細(xì)描述的部件加工程序表示窗口。
[0036] 代理數(shù)據(jù)管理器180不需要存在,但是可以結(jié)合某些實施例來使用。簡要地,代理 數(shù)據(jù)管理器180鏈接到可以記錄在部件加工程序中的代理數(shù)據(jù)。在某些實現(xiàn)方式中,代理 數(shù)據(jù)管理器180負(fù)責(zé)從通常將產(chǎn)生代理數(shù)據(jù)的輸出獲得代理數(shù)據(jù),并且提供要寫入到部件 加工程序中的代理數(shù)據(jù),使得可以在模擬模式下在學(xué)習(xí)模式操作期間使用代理快速地執(zhí)行 程序操作,以便支持編輯操作。在共同轉(zhuǎn)讓的美國專利申請第13/297, 232號('232申請) 中更詳細(xì)的描述了代理數(shù)據(jù)管理器180,通過引用將其全部內(nèi)容并入本文。
[0037] 在一個實施例中,程序狀態(tài)管理器185管理程序是被保護(hù)還是未被保護(hù)。在一種 實現(xiàn)方式中,未被保護(hù)的部件加工程序可以包括被存儲的代理數(shù)據(jù),而被保護(hù)的部件加工 程序則移除了代理數(shù)據(jù)。在一個示例性的實施例中,被保護(hù)的程序是編輯處理已經(jīng)完成的 程序,諸如可以以運行模式用于工廠中的程序。
[0038] 在一個實施例中,節(jié)點管理器190負(fù)責(zé)管理被分配給部件加工程序中的節(jié)點的節(jié) 點號。在一種實現(xiàn)方式中,在部件加工程序的表示內(nèi),對每個指令表示分配節(jié)點號。在某些 實現(xiàn)方式中,可以利用組織的樹結(jié)構(gòu),其中有父節(jié)點和子節(jié)點。在某些實現(xiàn)方式中,由節(jié)點 管理器190對記錄器/轉(zhuǎn)換器155產(chǎn)生的部件加工程序的每行都分配一個節(jié)點號或者確保 唯一的標(biāo)識符等。如在共同轉(zhuǎn)讓的美國專利申請第13/676,061號(' 061申請)(通過引 用將其全部內(nèi)容并入本文)中更詳細(xì)地描述的那樣,在某些實施例中,窗口間自動滾動部 分195可以利用節(jié)點管理器190分配的節(jié)點號,以便同時在不同的窗口中顯示相關(guān)聯(lián)的部 件加工程序元件和對應(yīng)的編輯功能。換言之,如果用戶希望看到工件的哪個測量與部件加 工程序中的哪些指令表示以及被編碼的指令有關(guān),則窗口間自動滾動部分195將在相應(yīng)的 窗口中自動滾動到對應(yīng)于相關(guān)節(jié)點號的部件指令程序表示和/或被編碼的指令的相關(guān)行。 下面參照圖11描述窗口間通信的一種示例性方法和/或?qū)崿F(xiàn)方式。在一些實施例中,附件 管理部分300'可以使用模擬方法與節(jié)點管理器190和/或窗口間自動滾動部分195互操 作,使得附件操作用戶界面部分310'和/或遠(yuǎn)程設(shè)備參考信息附件400'可以根據(jù)在本文 中公開的原理和操作來接收和/或發(fā)送活躍節(jié)點號信息和/或相關(guān)聯(lián)的部件加工程序指令 表不等。
[0039] 關(guān)于圖2,圖2的很多特征可以基于作為在先前結(jié)合的共同未決的'232和'061申 請中類似地圖示、描述和/或引用的元件的它們的模擬的或基本類似的對等物的描述來進(jìn) 一步地理解。
[0040] 圖3是可以在計量系統(tǒng)的編程環(huán)境中使用的附件管理部分300 (例如,如圖2所示 的附件管理部分300')的一個示例性實施例以及在連接到附件管理部分300時可以用作 遠(yuǎn)程設(shè)備參考信息編程附件