專利名稱:分布式多相同步的視覺系統(tǒng)的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及用于檢查部件、物體和表面的視覺系統(tǒng),尤其涉及多相機(jī)視覺系統(tǒng)
背景技術(shù):
先進(jìn)視覺系統(tǒng)(也稱為“機(jī)器視覺”)的使用以及它們的基礎(chǔ)軟件正越來越多地用在多種生產(chǎn)和質(zhì)量控制進(jìn)程中。機(jī)器視覺允許在大規(guī)模制造和定制產(chǎn)品的制程中均獲得更快、更準(zhǔn)確和可重復(fù)的結(jié)果。典型的機(jī)器視覺系統(tǒng)包括一個或多個對準(zhǔn)感興趣區(qū)域的相機(jī)(典型地具有固態(tài)電荷耦合器件((XD)或基于CMOS的成像元件),捕獲和傳輸CXD圖像的一幀抓取器/圖像處理元件,一個或多個計算機(jī)或板載處理裝置,一用戶界面用于運(yùn)行機(jī)器視覺應(yīng)用軟件和操作所捕獲的圖像,以及感興趣區(qū)域上的適當(dāng)?shù)恼彰鳌T谠S多視覺系統(tǒng)應(yīng)用中,使用多個相機(jī)(也稱為“傳感器”)是理想的。這樣一個多相機(jī)機(jī)器視覺系統(tǒng)機(jī)構(gòu),可以同時或相繼從多個有利點對一個部件或者一移動路線上的物體進(jìn)行成像,通過考慮某些視角的成像特征,忽略在其他視角中的該成像特征,提升檢查進(jìn)程的可靠性。因此,多重圖像處理裝置的使用,往往是每個裝置配一個相機(jī),這樣可允許更快的線速,因為多重處理裝置可同時檢查一單獨部件或部件的組合。該處理裝置可在物理上毗鄰,或者它們可以相隔較遠(yuǎn)并通過網(wǎng)絡(luò)或其他通信通道連接。這被稱為分布式系統(tǒng)或應(yīng)用,因為其處理能力物理地分布于多個裝置之間。使用附加處理裝置可能獲得更高的線速,以致每個裝置或裝置的組合可在每一個檢查周期(典型地由時鐘和觸發(fā)器信號管理)中檢查多個相鄰物體中的一個。例如,在一給定檢查周期中,一第一相機(jī)或相機(jī)組形成第一部分(一分立的物體或一物體的區(qū)域或表面)的成像,一第二相機(jī)/相機(jī)組同時對線上的下一相鄰部分進(jìn)行成像,一第三相機(jī)/相機(jī)組同時對線上的一第三相鄰部分進(jìn)行成像。多重處理裝置,典型地每個裝置配一個相機(jī),或每個裝置配一個相機(jī)組,一次同時檢查所有三個部分。這被稱為多相系統(tǒng),在本例子中,三個檢查階段在同一檢查周期中同時進(jìn)行。大體上,在一分布式機(jī)器視覺應(yīng)用中,多重處理子系統(tǒng)獲取和處理各自的屬于單一部分或檢查周期的多個圖像,并通過網(wǎng)絡(luò)或其他通信通道傳達(dá)這些結(jié)果。為了產(chǎn)生一個給定檢查周期的一有效的全面的結(jié)果,由分布式系統(tǒng)中的所有處理器產(chǎn)生的結(jié)果被以這樣的方式合成,該方式使得所有結(jié)果值都屬于同一個檢查周期。由于每個檢查結(jié)果可以具有一不可預(yù)知的處理時間,有時候很難確定一個給定結(jié)果是否屬于一特定檢查周期或另一檢查周期。該系統(tǒng)作為整體,必須具有自動檢測和從瞬態(tài)問題中恢復(fù)的方法,瞬態(tài)問題諸如丟失的或額外的觸發(fā)器信號、一個或多個子系統(tǒng)的暫時電源中斷、以及不可靠的通信通道。在要求充足的處理能力的應(yīng)用中,有必要分配一個單獨的在多個處理器之間的檢查任務(wù),以實施對結(jié)果的同步,其具有更大的挑戰(zhàn)性。根據(jù)背景技術(shù)的方法,許多機(jī)器視覺技術(shù)的生產(chǎn)商在字面意義-多個相機(jī)上提供多相機(jī)系統(tǒng),該多個相機(jī)的數(shù)據(jù)全部流入單個處理器盒,該單個處理器盒典型地由一個人計算機(jī)(PC)或一孤立處理單元定義。這樣一個多相機(jī)系統(tǒng)中的中央處理單元(CPU)在相機(jī)被觸發(fā)以獲取圖像時實施控制,并將獲取的圖像儲存在存儲器中,從而應(yīng)用可以將合適的圖像與該應(yīng)用相關(guān)聯(lián)。許多分布式多相機(jī)的應(yīng)用采用一可編程邏輯控制器(PLC)來同步和結(jié)合在總機(jī)構(gòu)中的分立的視覺系統(tǒng)的結(jié)果。當(dāng)視覺系統(tǒng)本身缺乏任何同步功能時,這是針對同步問題的標(biāo)準(zhǔn)解決方式。
某個視覺系統(tǒng),例如馬薩諸塞州的內(nèi)蒂克的Cognex公司的In-Sight*產(chǎn)品,在其視覺系統(tǒng)應(yīng)用中包括一寫結(jié)果和一讀結(jié)果命令。In-Sight是一種自持的相機(jī)集合,其具有一板載處理裝置,可通過合適的網(wǎng)絡(luò)協(xié)議與一網(wǎng)絡(luò)進(jìn)行通信,例如以太網(wǎng)。該寫結(jié)果和讀結(jié)果命令允許分立的、互相連接的視覺系統(tǒng)通過網(wǎng)絡(luò)分享數(shù)據(jù)。在這種方式下,一視覺系統(tǒng)可以作為一主處理器,一個或多個其他系統(tǒng)可以作為從處理器。如果視覺系統(tǒng)中的一個是主相機(jī),那么它可以被用來通過以太網(wǎng)以一種方式觸發(fā)從相機(jī),該方式保證,接收自從相機(jī)的結(jié)果被識別為當(dāng)前檢查周期中的一部分。在典型的裝置中,該檢查周期的組合的視覺系統(tǒng)的結(jié)果通常從主相機(jī)傳達(dá)至一 PLC,在那兒它們被分析,并確定出最終的一個或數(shù)個結(jié)果。如上所述,為了應(yīng)用更多的處理能力,使用連續(xù)相位觸發(fā)的雙重系統(tǒng)來解決現(xiàn)有的視覺系統(tǒng)應(yīng)用。這在此可以稱為“多相位”方法。最簡單的例子采用兩個相機(jī)和兩個處理器,每個系統(tǒng)檢查每個其他部分。更復(fù)雜一點的應(yīng)用可使用多個相機(jī)庫,例如相機(jī)和處理器的三個庫,其中每個檢查每一第三部分,每個庫中具有任意數(shù)量的相機(jī)。外部地在一 PLC中同步和串行化這些結(jié)果,或者麻煩一點,使用視覺系統(tǒng)中的網(wǎng)絡(luò)數(shù)據(jù)功能,例如寫結(jié)果和讀結(jié)果,來同步和串行化這些結(jié)果,是可行的。然而,提供一可靠的、可以高速正確同步這些結(jié)果,并且可以從很多類型的瞬態(tài)問題中恢復(fù)的PLC應(yīng)用被證實是非常有挑戰(zhàn)性的,并且是耗時的,這些瞬態(tài)問題可影響一給定檢查周期的結(jié)果的同步。另外,把同步的負(fù)擔(dān)放在PLC上會增加該應(yīng)用的花費和復(fù)雜性,并且由于PLC程序中的典型地還控制處理機(jī)構(gòu)的“視覺邏輯”,使得維護(hù)變得更加困難。一種保證同步的方法是提供一個中央處理器,用以處理所有連接到多個基本相機(jī)(例如,簡易獲得圖像的相機(jī))的機(jī)器視覺任務(wù)。然而,該方法缺乏可量測性。隨著更多的相機(jī)被添加,額外的負(fù)擔(dān)被加到同時期正在接收多個機(jī)器視覺處理的圖像的處理器上。在某些方面,增加協(xié)同處理器以提高機(jī)器視覺處理能力是可行的,但是與網(wǎng)絡(luò)上的分布式系統(tǒng)相比,它提供非常有限的可量測性,而且其很難用在多相方法中??捎玫木W(wǎng)絡(luò)視覺系統(tǒng)功能,諸如寫結(jié)果和讀結(jié)果,趨向于僅僅在主系統(tǒng)通過以太網(wǎng)/網(wǎng)絡(luò)鏈路和協(xié)議觸發(fā)從系統(tǒng)時提供可靠的結(jié)果。也即,在使用外部的、硬件連線觸發(fā)信號時,這些功能不同步結(jié)果。當(dāng)編碼器、存在傳感器(例如,光電探測器)及其同類被用于追蹤沿一移動線的部件的運(yùn)動和位置,和/或一表面上的,例如一移動的腹板上的感興趣區(qū)域的運(yùn)動和位置時,通常使用一外部觸發(fā)器。每個系統(tǒng)在預(yù)定運(yùn)動發(fā)生時被觸發(fā)。在一傳感器丟失一觸發(fā)(例如,由于一不可靠的光電探測器)時,產(chǎn)生一特別的事務(wù),然后該系統(tǒng)的結(jié)果可能不會發(fā)生,且總系統(tǒng)將由此失去同步性,因為該系統(tǒng)的下一個觸發(fā)可被認(rèn)為產(chǎn)生前一周期的結(jié)果。該限制嚴(yán)格約束了這種主-從系統(tǒng)的操作速度,并且使它對多個應(yīng)用不可用。同樣,這些系統(tǒng)功能使得應(yīng)用難以維護(hù),因為每個從任務(wù)需要接收一與主任務(wù)期望的結(jié)果序列完全匹配的寫結(jié)果功能,并且如果序列不正確,則沒有可靠的檢測該錯誤的方法。此外,這種基于網(wǎng)絡(luò)的系統(tǒng)功能限制了可量測性,因為跨越多種互連的子系統(tǒng)而進(jìn)行維護(hù)是不切實際的。更一般的,網(wǎng)絡(luò)方法在高速、多相、多相機(jī)機(jī)構(gòu)的使用中太慢,因為那些方法的在前應(yīng)用比起高速操作所需要的微秒基礎(chǔ),更適合在毫秒內(nèi)發(fā)生觸發(fā)。借助使用多個處理器庫的多相系統(tǒng),每個處理器檢查每個第N部分,在一 PLC中或者直接在處理器之間同步結(jié)果尤其具有挑戰(zhàn)性,并且常常不可實現(xiàn)。到目前為止,克服這些限制包括采用更強(qiáng)大的處理器,如果可用并且性能價格比高的話,還包括接受性能表現(xiàn)將未達(dá)最理想的事實,或者避免使用多相系統(tǒng)機(jī)構(gòu)。因此,需要提供一種系統(tǒng)和方法,用于在給定周期中同步檢查,以及以一種可靠的方式將多個分布式處理器的結(jié)果合成至一單個處理器。這種系統(tǒng)和方法應(yīng)當(dāng)允許從大多數(shù)類型的間歇的信號問題和其他暫時問題(丟失觸發(fā)、丟失部分,等等)中恢復(fù)。該機(jī)構(gòu)應(yīng)當(dāng)理想地可容忍不可預(yù)知的網(wǎng)絡(luò)延遲,以及可支持各種觸發(fā)方法的高速操作,觸發(fā)方法包括硬件連線的外部觸發(fā)。該系統(tǒng)和方法還應(yīng)當(dāng)允許通過多相同步,以一種對用戶透明的、使得外部通信簡單的方式,將應(yīng)用升至更高速度。
發(fā)明內(nèi)容
本發(fā)明通過提供一種容錯性的系統(tǒng)和方法,克服了現(xiàn)有技術(shù)中的缺陷,所述系統(tǒng)和方法用于對可升級的多個視覺系統(tǒng)處理器的檢查結(jié)果進(jìn)行同步,所述系統(tǒng)和方法允許從各種問題中快速恢復(fù),問題諸如丟失的觸發(fā)、額外的觸發(fā)以及一個或多個系統(tǒng)處理器中的失電。在一示范性實施例中,本發(fā)明提供一種系統(tǒng)和方法,用于視覺系統(tǒng)檢查結(jié)果的同步,檢查結(jié)果由多個處理器的每一個產(chǎn)生,該系統(tǒng)和方法包括含有一主視覺系統(tǒng)處理器的第一庫(可以是“主”庫),以及至少一個從視覺系統(tǒng)處理器。至少一個第二庫(可以是多個“從”庫中的一個),其包括一主視覺系統(tǒng)處理器和至少一個從視覺系統(tǒng)處理器。每個庫中的每個視覺系統(tǒng)處理器從一個或多個圖像中產(chǎn)生結(jié)果,該圖像在一給定檢查周期中被獲取和處理。在一實施例中,每個處理器與一給定相機(jī)關(guān)聯(lián)。在其他實施例中,一個或多個處理器庫中的處理器與一個或多個共享相機(jī)關(guān)聯(lián)。檢查周期可以基于一外部觸發(fā)或其他觸發(fā)信號,它可以使得一些或全部的處理器/庫在一給定時間/周期處獲取和處理圖像。在一給定周期中,多個庫中的每一個可定位以獲取一移動線上的多個連續(xù)區(qū)域中的各自區(qū)域的一圖像。下一周期獲取并處理沿線的下一組物體或區(qū)域的圖像——規(guī)定該組部件在每個相機(jī)的視野中的每次移動之間的處理時間。一同步進(jìn)程(a)產(chǎn)生一唯一標(biāo)識,并將一觸發(fā)信號和該與第一庫中的主處理器相關(guān)的唯一標(biāo)識一起傳送至主庫中的每個從處理器和主、從處理器中的每一個,以及(b)通過第二庫的主處理器接收綜合的結(jié)果,使其具有來自第一庫的結(jié)果的唯一標(biāo)識和綜合的結(jié)果。該進(jìn)程然后(C)綜合該結(jié)果,如果結(jié)果是完成的且每個結(jié)果的唯一標(biāo)識相同時,將結(jié)果傳輸至一目標(biāo)。在一示范性實施例中,同步進(jìn)程可位于第一或“主”庫的主處理裝置中??商娲?,用于同步的結(jié)果的總的綜合可由一互連的處理器完成,該處理器從每個庫的主視覺處理器接收結(jié)果。庫之間以及與同步進(jìn)程的通信可使用一網(wǎng)絡(luò)鏈路完成,例如以太網(wǎng)。產(chǎn)生每個結(jié)果或獲得每個圖像時,每個處理裝置記錄一時間戳。該時間戳協(xié)助保證在綜合的過程中所接收的結(jié)果是同一檢查周期的一部分——尤其是在不同處理器和/或處理器庫中采用獨立觸發(fā)時。時間戳可以簡單地產(chǎn)生,基于訊息被主裝置發(fā)送和從裝置接收的相對時間。為了增加時間準(zhǔn)確性,總系統(tǒng)中的各種處理裝置可由一個參考時鐘系統(tǒng)約束在一起,基于一通過網(wǎng)絡(luò)傳輸信號給其他時鐘的主時鐘。完成的、綜合的結(jié)果(或一個錯誤,如果結(jié)果是不、正確的或未完成的)被傳輸至一目標(biāo),諸如一線控制器。該控制器可用于操作一運(yùn)動控制系統(tǒng)或裝置、部件排出器、線路關(guān)閉或警報,其用于指示需要這樣的運(yùn)動的檢查狀況(該運(yùn)動例如,一缺陷部件要求排出,或一缺陷腹板段要求標(biāo)記及移除)。一般,視覺系統(tǒng)處理器與相機(jī)相關(guān),相機(jī)被定位以獲取線上不同位置的圖像,或由一運(yùn)動控制裝置定位一這種情況下一單個相機(jī)可對不同位置進(jìn)行成像。
以下本發(fā)明的說明涉及附圖,其中圖I是依據(jù)一說明性實施例的關(guān)于移動線上的部件或其他感興趣區(qū)域的視覺系統(tǒng)相機(jī)和處理器的一不范性機(jī)構(gòu)的原理圖;圖2是展示圖I的一說明性從處理器系統(tǒng)中的應(yīng)用的原理圖;圖3是展示圖I的一說明性主處理器系統(tǒng)中的應(yīng)用的原理圖;圖4是展示一說明性檢查周期中的一主處理器系統(tǒng)的操作的流程圖;圖5是展示一說明性檢查周期中的一從處理器系統(tǒng)的操作的流程圖;圖6是依據(jù)一替代實施例的視覺系統(tǒng)處理器的排布的原理圖,其中一分立主同步處理器從多個多視覺系統(tǒng)處理器庫中的每一個接收綜合的結(jié)果。
具體實施例方式圖I是依據(jù)一說明性實施例的一多相、多重處理器的機(jī)器視覺系統(tǒng)100的示范性機(jī)構(gòu)的示意圖。該系統(tǒng)100是依據(jù)說明性實施例的一寬泛種類的可行的相機(jī)機(jī)構(gòu)的示例。相機(jī)的數(shù)量及其擺放十分地可變。在本例子中,假定每個相機(jī)包括一獨立處理裝置。在其他機(jī)構(gòu)中,處理裝置可與相機(jī)物理隔離,任意給定處理裝置可處理來自一個或多個相機(jī)的圖像。同樣,相機(jī)可由一運(yùn)動控制裝置(圖2的模塊202和圖3的模塊302)物理地或光電子地操控,以允許對來自多個或不定位置的圖像的不定的獲取。如所示的,示例性機(jī)構(gòu)包括三個視覺系統(tǒng)處理器庫110、120、130。在本示例性機(jī)構(gòu)中,每個處理器與一相機(jī)/傳感器相關(guān)聯(lián)。在替代性實施例中,處理器和/或處理器庫可共享一個或多個相機(jī)/傳感器。當(dāng)一個給定處理器共享一個給定相機(jī)時,一個多路復(fù)用器可被用在(未不出)常規(guī)的機(jī)構(gòu)中,以允許將所獲得的圖像指向每個合適的處理器。當(dāng)每個庫共享一個給定相機(jī)或多個相機(jī)時,對相機(jī)的訪問可以是連續(xù)的,通過使用一合適控制器(也未示出)。在本示例性實施例中,每個庫110、120和130各自與三個分立、對應(yīng)的視覺系統(tǒng)相機(jī)(112,114,116),(122,124,126)和(132,134,136)相關(guān)。相機(jī)被放置在移動線140的沿線的成像位置,移動線140傳輸部件/物體往下游(箭頭142)穿過每個相機(jī)庫的觀察區(qū)域。在一說明性實施例中,線140可操作地與一編碼器144或者其他運(yùn)動測量裝置相連。說明性實施例中,可提供一串相對于庫110、120、130的存在檢測器146、147、148。在一實施例中,存在檢測器146、147、148可以是常規(guī)光電探測器。它們檢測每個部件或物體的通路,部件N (150)、部件N+ I (152)、部件N+ 2 (154)在各自庫110、120、130的觀察區(qū)域內(nèi)。注意此處使用的術(shù)語“物體”可包括分立部件,或整個部件或表面的一個分立區(qū)域。例如,此處定義的一“物體”可包括移動通過每個庫的觀察區(qū)域的連續(xù)腹板的一個區(qū)域。
說明性地,編碼器144和/或檢測器146、147、148提供一個信號給常規(guī)設(shè)計的觸發(fā)產(chǎn)生電路。在各種實施例中,觸發(fā)產(chǎn)生電路可提供一外部觸發(fā)給每個庫和/或相機(jī)。在觸發(fā)裝置的一基本例子中,外部觸發(fā)經(jīng)由每個庫的觀察區(qū)域的每個第三部件,同時應(yīng)用到每個相機(jī)上。那時,在每個相機(jī)的觀察區(qū)域內(nèi)獲取各自部件或物體的一圖像。在一個庫中使用多重處理裝置有助于確保一個快速移動的部件能完整地被成像,并且由視覺系統(tǒng)通過一個或多個處理器(整體而言或由每個處理器部分)先于下一檢查周期進(jìn)行處理。通過舉例的方式,每個與庫相關(guān)的相機(jī)可檢測一特定特征(蓋子、條形碼、標(biāo)簽),等等,并且其主裝置將這些結(jié)果合成,以確定檢查是否完成和有效。另外,應(yīng)當(dāng)清楚,分立相機(jī)和/處理器的數(shù)量和分布是高度可變的,且與一個庫相關(guān)的相機(jī)或處理器的數(shù)量可以不同于另一庫中的數(shù)量。同樣,在本例子中,當(dāng)檢查周期基于一同步觸發(fā)事件時,圖像可基于獨立觸發(fā)事件或其他因素(例如一個或多個處理器中的一自我觸發(fā)的視覺系統(tǒng)進(jìn)程)而被獲得和處理。注意本例中的下一個檢查周期將會操作,從而庫110檢查部件N+ 3(未示出),而庫120和130各自檢查部件N+ 4和N+ 5 (未示出)。
各個不同的庫中的處理器使用一常規(guī)以太網(wǎng)絡(luò)互連,網(wǎng)絡(luò)由圖示的處理器和庫中的相關(guān)相機(jī)之間的鏈路表示。在替代性實施例中清楚地預(yù)計到,可采用其他網(wǎng)絡(luò)/通信拓?fù)?。如所示的,通過舉例的方式,所描述的最左邊的庫110被指定為“主”庫,中間和最右邊的庫120、130作為“從”庫。同時,在每個庫中,一處理器“M”是主處理器112、122、132,且兩個互連的處理器“S”是各自庫中的從處理器114、116、124、126、134、136。鏈路160,162和164限定了結(jié)果SR1、SR2、SR3在每個庫中從從系統(tǒng)到主系統(tǒng)的流動。鏈路170、172表示用于每個部件152、154的檢查的綜合的結(jié)果CRl、CR2發(fā)送至庫110中的總系統(tǒng)的主處理器112的流動。該主處理器112可以依次發(fā)送所有三個部件150、152、154的結(jié)果的完整集合至一外部控制器180。該外部控制器180 (例如,一 PLC)協(xié)調(diào)所有處理器的結(jié)果,并且能用于發(fā)布警報、操作一運(yùn)動控制系統(tǒng)或部件排出器、停止線路、或者標(biāo)定一好/壞的部件或表面區(qū)域。其可包括一詮釋結(jié)果的應(yīng)用,或者可以是一基本輸入/輸出裝置(例如,操作一部件排出器/頂出器)。在一些實施例中,總系統(tǒng)主處理器112可直接控制諸如部件排出器的機(jī)構(gòu),不需借助一外部控制器180。應(yīng)當(dāng)清楚,系統(tǒng)吞吐量可以隨著更多相機(jī)庫和處理裝置被增加至總機(jī)構(gòu)中而幾乎線性增長,假定對結(jié)果的綜合所需要的處理資源遠(yuǎn)少于在每個處理裝置中固有發(fā)生的檢查所需的資源。原則上,這種分層結(jié)構(gòu)可無限地擴(kuò)展,但是實際上,在廣泛的應(yīng)用中,所描述的兩級已可提供出眾結(jié)果。通過一單獨主處理器112連接該控制器180,借此,PLC或其他外部控制器可免于需要外部同步的多輸入,否則將增加控制器的處理開銷。對每個檢查周期,一同步的且綜合的結(jié)果被傳遞。該綜合的結(jié)果可能不包括所有的下層系統(tǒng)結(jié)果(由于一個或多個處理器中的一丟失的觸發(fā),等等),但是包含所有所需的結(jié)果的下一周期包括一系統(tǒng)恢復(fù),在恢復(fù)周期中,結(jié)果的所有同步都有保障。參考圖2,示意地描述了駐存在每個從處理器系統(tǒng)200中的所產(chǎn)生的應(yīng)用210。該機(jī)構(gòu)闡釋了多種可能的組織,可實施為硬件、軟件或硬件和軟件的組合。系統(tǒng)200包括一個或多個圖像獲取進(jìn)程220,其從上述的一種合適的源處接收外部觸發(fā)信號222。觸發(fā)信號還可包括接收自系統(tǒng)內(nèi)部或網(wǎng)絡(luò)上的其他應(yīng)用的內(nèi)部觸發(fā)指令。一個或多個圖像獲取進(jìn)程)220負(fù)責(zé)在合適的時間對部件、物體或感興趣的區(qū)域進(jìn)行成像。每個獲取的圖像被存儲,并由一個或多個視覺系統(tǒng)進(jìn)程230分析/處理。這些視覺系統(tǒng)進(jìn)程采用任何可接受的檢查或視覺應(yīng)用,包括那些使用模型部件、物體或表面(對象)的瞄準(zhǔn)成像的應(yīng)用。該進(jìn)程可包括通過/不及格檢查、高達(dá)四維(例如,三維物理方向上的物體的定位,加上第四維——時間上的物體的定位)的特征的定位、對特性或符號代碼的讀取、維度和顏色的測量等。視覺系統(tǒng)進(jìn)程確定一給定對象是否遵守預(yù)定的檢查規(guī)則,及產(chǎn)生一絕對值(通過/不及格)、一分?jǐn)?shù)或其他關(guān)于每個被檢查的對象的信息。
從系統(tǒng)200進(jìn)一步包括網(wǎng)絡(luò)進(jìn)程240,允許與其他裝置通信,包括其他主處理器和從處理器系統(tǒng)。網(wǎng)絡(luò)進(jìn)程可采用常規(guī)以太網(wǎng)或其他物理通信通道,還可使用TCP/IP或任何其他可接受的協(xié)議,諸如UDP,以實施通信。由視覺系統(tǒng)進(jìn)程230產(chǎn)生的數(shù)據(jù),包括檢查結(jié)果242,通過網(wǎng)絡(luò)由網(wǎng)絡(luò)進(jìn)程240傳遞。檢查結(jié)果242被指引至一庫主處理器系統(tǒng)。如下所述,從應(yīng)用250提供同步信息(時間戳、序列標(biāo)識等)給檢查結(jié)果242。從應(yīng)用可替代性地定義為為了實現(xiàn)本文描述的功能而需要的一串傳輸信息給一主處理器的發(fā)送應(yīng)用,和接收應(yīng)用,其接收來自一主處理器的信息。各裝置的時序由一時鐘電路260維護(hù)和同步,時鐘電路260作為一公用時間參考,也在以下作進(jìn)一步描述。在一個說明性實施例中,時鐘260可依據(jù)IEEE1588實現(xiàn),但顯然也可以考慮其他標(biāo)準(zhǔn)。大體上,一裝置(例如系統(tǒng)主處理器112)中的主時鐘,播送當(dāng)前時間給從庫及其相關(guān)處理器。其他處理器使用它們的時鐘來確定它們的時鐘和主時鐘之間的相對偏移量?;跇?biāo)準(zhǔn)協(xié)議,交換訊息,以確定每個裝置中的準(zhǔn)確時間。圖3展示了一具有應(yīng)用堆棧310的說明性主處理器系統(tǒng)300。大體上,主處理器在結(jié)構(gòu)和功能上與從處理器類似,區(qū)別在于使它可作為處理器機(jī)構(gòu)中的一個庫主處理器或總系統(tǒng)主處理器而操作。一個或多個圖像獲取進(jìn)程與前述的一個或多個進(jìn)程220類似地操作從處理器200。它們在內(nèi)部和/或外部觸發(fā)222之上運(yùn)行,以產(chǎn)生和存儲對象的圖像。一個或多個視覺系統(tǒng)進(jìn)程330還與上述那些進(jìn)程(230)類似地操作。主處理器系統(tǒng)300的網(wǎng)絡(luò)進(jìn)程(340)適配于傳輸包含該主系統(tǒng)自己的結(jié)果的綜合的結(jié)果342以及任何指向到該主系統(tǒng)的從檢查結(jié)果242。接收到的從檢查結(jié)果242由網(wǎng)絡(luò)進(jìn)程340處理,并傳至主同步應(yīng)用,主同步應(yīng)用可包括前述的從應(yīng)用250的功能,用于處理自生成的結(jié)果,但也可以處理從以下描述的其他處理器接收的從結(jié)果的組織。應(yīng)用350與公用參考時鐘360相互作用,公用參考時鐘360依據(jù)IEEE1588標(biāo)準(zhǔn)運(yùn)作,或與另一時間參考相互作用,從而提供互連的處理器系統(tǒng)之間的同步。時鐘360位于系統(tǒng)主處理器(112)內(nèi)時,該時鐘可作為系統(tǒng)主時鐘而運(yùn)行。同樣,特殊系統(tǒng)300作為總系統(tǒng)主處理器(112)運(yùn)行時,同步應(yīng)用350可包括主庫同步進(jìn)程352 (以陰影表示),進(jìn)程352適配于處理來自其他從庫(120、130)的綜合的結(jié)果370。大體上,主應(yīng)用和同步進(jìn)程可包括各種發(fā)送和接收應(yīng)用,其用于處理接收自從處理器和從庫的數(shù)據(jù),和用于傳輸關(guān)于觸發(fā)和時鐘的數(shù)據(jù)給從機(jī),以及傳輸綜合的結(jié)果給控制器。這些綜合的結(jié)果370包含由庫主處理器(122、132)通過網(wǎng)絡(luò)傳輸?shù)膸熘魈幚砥骱蛶鞆奶幚砥鹘Y(jié)果。所傳輸?shù)木C合的結(jié)果342然后包括所有庫的所有處理器結(jié)果,并且這些結(jié)果被傳至處理器(方塊380)?,F(xiàn)在分別參考圖4和5的流程圖,進(jìn)一步詳細(xì)描述每個從處理器系統(tǒng)和主處理器系統(tǒng)在一個檢查周期中的操作。首先參考主程序400 (圖4),周期開始于(步驟410),系統(tǒng)等候一觸發(fā)信號(判斷步驟412)。收到一觸發(fā)后(通過判斷步驟412),主系統(tǒng)開始獲取一圖像(步驟414)。系統(tǒng)還產(chǎn)生一唯一標(biāo)識(步驟416),并將一觸發(fā)訊息發(fā)送至一個或多個從系統(tǒng)(步驟418)。訊息包括所產(chǎn)生的標(biāo)識,從而唯一地確定該檢查周期。如果主系統(tǒng)和從系統(tǒng)共享一個例如前述的IEEE1588時鐘機(jī)構(gòu)的公用時間參考的話,該訊息還可包括一來自主系統(tǒng)的時間戳。其還可以包括一位置參考,諸如一編碼器位置或運(yùn)動控制器坐標(biāo)。當(dāng)主系統(tǒng)中正在進(jìn)行本地的圖像獲取和處理時,在網(wǎng)絡(luò)上產(chǎn)生和傳遞訊息。注意,當(dāng)各個相機(jī)被獨立或以一已知順序觸發(fā)時,一時間戳和/或位置參考是有利的。如果結(jié)果沒有按正確的時間戳或位置序列到達(dá),那么這一結(jié)果可被拒絕——不考慮該結(jié)果實際上已從網(wǎng)絡(luò)上接收。如圖5所示,在等待和接收一觸發(fā)訊息或一外部/內(nèi)部觸發(fā)信號(判斷步驟512)之后,從系統(tǒng)程序啟動步驟510。該從系統(tǒng)然后開始獲取圖像(步驟514)。程序500記錄包含在觸發(fā)信息中的或者來自該從系統(tǒng)的內(nèi)部時鐘的時間戳和/或位置參考。從系統(tǒng)的圖像獲取可直接由該訊息或一外部或內(nèi)部信號觸發(fā),并且它也是標(biāo)記了時間的。當(dāng)從系統(tǒng)的圖像獲取完成時,其確定是否接收了一觸發(fā)訊息,以及它的時間戳是否在與從系統(tǒng)程序的觸發(fā)時間或位置相關(guān)的一預(yù)定時間或位置窗口內(nèi)(判斷步驟516和518)。時間/位置窗口可以是用戶定義的或任意定義的,并且可以在方向上不確定,從而允許各種不同的觸發(fā)次序。如果在特定時間/位置窗口內(nèi)沒有收到這種訊息,那么產(chǎn)生一錯誤(步驟520)。否則該從系統(tǒng)處理該圖像(步驟522),并將結(jié)果發(fā)回至包含檢查周期的唯一 ID的主系統(tǒng),該唯一 ID來自主系統(tǒng)的觸發(fā)訊息(步驟530)。這完成了從系統(tǒng)的具體的檢查周期,現(xiàn)在等待下一個觸發(fā)訊息(步驟510、512)。再參考圖4的主程序400,接著步驟418,其中一觸發(fā)訊息被發(fā)送到每個從系統(tǒng),主系統(tǒng)完成了獲取其自身的圖像(步驟420),并且使用合適的視覺系統(tǒng)進(jìn)程處理該圖像。程序400可在主庫的主系統(tǒng)(系統(tǒng)主)上產(chǎn)生,或在從庫的主系統(tǒng)上產(chǎn)生,如以下進(jìn)一步描述的,區(qū)別在于綜合的結(jié)果的數(shù)量和結(jié)果的最終目的地址。在程序400中,一結(jié)果從處理步驟422產(chǎn)生。該結(jié)果包含唯一檢查ID,且可包含由主時鐘產(chǎn)生的一時間戳。當(dāng)主系統(tǒng)準(zhǔn)備好將其自身的檢查結(jié)果和來自一個或多個從系統(tǒng)的結(jié)果進(jìn)行組合時,它首先確定是否所有需要的結(jié)果已被接收(判斷步驟430)。其等待這些結(jié)果接收至一特定超時或位置。如果所需結(jié)果在超時或位置窗口(判斷步驟432)內(nèi)被接收了(判斷步驟430),程序400核實來自一個或多個從系統(tǒng)的唯一檢查ID是否與主系統(tǒng)的用于當(dāng)前檢查周期(判斷步驟440)的檢查ID (來自步驟416)相匹配。如果檢查ID們匹配,則結(jié)果被接受,并且由主系統(tǒng)在步驟450處產(chǎn)生組合的結(jié)果。該組合可以是任何可接受的數(shù)據(jù)包格式,以允許信息被互連的裝置解碼。其可包括適當(dāng)?shù)臄?shù)據(jù)頭、數(shù)據(jù)尾和其他格式的數(shù)據(jù)段。當(dāng)程序400運(yùn)行于一從庫主系統(tǒng)上時,組合的結(jié)果被傳送至主庫主系統(tǒng)(步驟460),并依據(jù)步驟450在主庫主系統(tǒng)上被組合。然后總系統(tǒng)組合的結(jié)果可基于步驟460 (運(yùn)行于主庫主系統(tǒng)上)被傳送至控制器。在一些實施例中,總系統(tǒng)主可直接控制外部裝置,諸如基于組合結(jié)果的部件丟棄機(jī)構(gòu),而不需要將該組合結(jié)果傳達(dá)至一外部控制器。然后該具體的檢查周期就完成了(步驟470)。程序400、500允許自動檢測和從主系統(tǒng)和/或從系統(tǒng)的丟失觸發(fā)及偽觸發(fā)中恢復(fù)。如果一個從系統(tǒng)丟失一觸發(fā),或經(jīng)歷一電源中斷,或丟失結(jié)果訊息的一網(wǎng)絡(luò)數(shù)據(jù)包,主系統(tǒng)對一永遠(yuǎn)不會到來的響應(yīng)等待超時(步驟432),并產(chǎn)生一錯誤(步驟480)。發(fā)生于從庫中的一錯誤,由從庫主系統(tǒng)傳輸至主庫主系統(tǒng)(系統(tǒng)主)。然后經(jīng)由步驟460被傳至控制器。如果該錯誤由主庫主系統(tǒng)(系統(tǒng)主)產(chǎn)生,那么該錯誤直接經(jīng)由步驟460被傳至控制器。如果一從系統(tǒng)接收了一額外的觸發(fā),或該主系統(tǒng)有一電源中斷或觸發(fā)訊息的網(wǎng)絡(luò)數(shù)據(jù)包丟、失,該從系統(tǒng)立刻偵測該問題,確定在指定觸發(fā)窗口內(nèi)無接收訊息,并且產(chǎn)生一錯誤。在任一情況下,系統(tǒng)將在一個或兩個檢查周期之內(nèi)自動恢復(fù)正常的操作更一般地,當(dāng)一個相的庫內(nèi)的每個主系統(tǒng)輪流作為更高級別的主系統(tǒng)的從系統(tǒng)時,實現(xiàn)多相同步。顯然可以知道,三個或更多層的主和從裝置可放在一起。同樣顯然可以知道,總系統(tǒng)主可以是一獨立控制器或該功能可以由處理器集的一個庫的主系統(tǒng)實現(xiàn),如圖I所示。參考圖6,描述了一多視覺系統(tǒng)處理器(及相關(guān)相機(jī))裝置600的一替代實施例。在該實施例中,提供一主庫610和至少一從庫620。每個從處理器612、622的結(jié)果被與庫主處理器614、624的結(jié)果進(jìn)行綜合。然后每個庫的主處理器的綜合的結(jié)果被組合在分立主處理器630中,主處理器630基于組合的結(jié)果,以與圖4中主程序400相同的方式操作同步進(jìn)程640。在進(jìn)一步的一實施例中,所有結(jié)果可以被路由至主庫的主處理器614,但是最后傳遞至處理器630上以進(jìn)行最終的同步。組合的結(jié)果,或任何錯誤情形,由主處理器630傳至外部控制器650,如前面大體描述的。分立處理器也可以基于一內(nèi)部參考時鐘,產(chǎn)生唯一的檢查周期標(biāo)識和時間戳。應(yīng)當(dāng)清楚,上述裝置提供了一種高度可擴(kuò)縮的和大體上可容錯的系統(tǒng)和方法,用于實現(xiàn)一多相機(jī)檢查系統(tǒng)。各自的視覺系統(tǒng)相機(jī)的數(shù)量可以高度可變,并且主和從系統(tǒng)層次化的層數(shù)也可以高度可變。不同于現(xiàn)有方法中的使用一外部PLC來同步檢查,本發(fā)明使得分布式視覺子系統(tǒng)可以在它們自身之間,通過一諸如以太網(wǎng)的通信通道進(jìn)行協(xié)調(diào)。同樣,不同于先前的方法,例如那些采用寫結(jié)果和讀結(jié)果類型的功能,本說明性實施例提供了容錯性的通信,而不考慮那些檢查如何被觸發(fā),并且可以更快地偵測到錯誤和從錯誤中恢復(fù)。此外,本說明性實施例提供一唯一的和新穎的技術(shù),用于檢查結(jié)果的多相同步。前述內(nèi)容是本發(fā)明的說明性實施例的詳細(xì)描述。在不脫離本發(fā)明的范圍和精神的情況下可以進(jìn)行各種修改和增加。上述每個不同的實施例可以與其他所描述的實施例進(jìn)行組合,從而提供多種特性。進(jìn)一步地,雖然前述內(nèi)容描述了許多本發(fā)明的機(jī)構(gòu)和方法的獨立實施例,在此所描述的內(nèi)容僅僅是本發(fā)明的原理的應(yīng)用的示范。例如,術(shù)語“主”、“從”、“庫”和相關(guān)術(shù)語意在說明關(guān)于多個視覺系統(tǒng)處理器之間的通信的各種層次化和組織的裝置,并且不視為對具體結(jié)構(gòu)裝置的絕對限制。另外,此處描述的各種程序和進(jìn)程可以由硬件、軟件實現(xiàn),包括計算機(jī)可讀的程序指令,或由硬件和軟件的組合實現(xiàn)。因此,本說明意在作為示例的方式,并且不限制本發(fā)明的范圍。
權(quán)利要求
1.一種用于同步多個視覺系統(tǒng)處理器的結(jié)果的方法,處理器處理所獲得的圖像,從而產(chǎn)生結(jié)果,包括步驟 提供至少一第一從相機(jī)庫,包括至少一個(a)主視覺系統(tǒng)處理器和與其互連的至少一個(b)從視覺系統(tǒng)處理器; 提供一主相機(jī)庫,包括至少一個(c)主視覺系統(tǒng)處理器和至少一個(d)從視覺系統(tǒng)處理器,主庫的主視覺系統(tǒng)處理器與從相機(jī)庫的主視覺系統(tǒng)處理器互連; 在主庫中,在每個檢查周期內(nèi)接收一觸發(fā),并且作為響應(yīng),用(c)主視覺系統(tǒng)處理器獲 得和處理一圖像,并且由一個與(C)主視覺系統(tǒng)處理器相關(guān)聯(lián)的主同步進(jìn)程在一通信鏈路上發(fā)布一觸發(fā)信號,所述信號包括(d)從視覺系統(tǒng)處理器、Ca)主視覺系統(tǒng)處理器和(b)從視覺系統(tǒng)處理器中的每一個的一唯一檢查周期標(biāo)識; 在使用(d)從視覺系統(tǒng)處理器、(a)主視覺系統(tǒng)處理器和(b)從視覺系統(tǒng)處理器的每一個獲得和處理圖像之后,綜合(C)主視覺系統(tǒng)處理器和(d)從視覺系統(tǒng)處理器的結(jié)果,并且在第一從庫中綜合(a)主視覺系統(tǒng)處理器和(b)從視覺系統(tǒng)處理器的結(jié)果,并將綜合的結(jié)果與唯一檢查周期標(biāo)識一起通過通信鏈路傳輸給主同步進(jìn)程;以及 使用該主同步進(jìn)程,確定來自主庫的綜合的結(jié)果和第一從庫的綜合的結(jié)果是否完成,以及確定是否每個檢查周期標(biāo)識相同,如果結(jié)果是完成并且相同的,則將完成結(jié)果傳輸給一預(yù)定目標(biāo)。
2.根據(jù)權(quán)利要求I所述的方法,其中主同步進(jìn)程由(C)主視覺系統(tǒng)處理器操作。
3.根據(jù)權(quán)利要求I所述的方法,其中主同步進(jìn)程由分立的處理器操作,所述分立的處理器可操作地至少與(C)主視覺系統(tǒng)處理器和所述預(yù)定目標(biāo)中相連接。
4.根據(jù)權(quán)利要求I所述的方法,進(jìn)一步包括提供至少一第二從相機(jī)庫,第二從相機(jī)庫包括至少一個(e)主視覺系統(tǒng)處理器和至少一個與其互連的(f)從視覺系統(tǒng)處理器,并且在主庫中,在每個檢查周期內(nèi)接收觸發(fā),作為響應(yīng),從主同步進(jìn)程發(fā)放出一第二觸發(fā)信號,其包括(e)主視覺系統(tǒng)處理器和(f)從視覺系統(tǒng)處理器中的每一個的唯一檢查周期標(biāo)識,在使用(e)主視覺系統(tǒng)處理器和(f)從視覺系統(tǒng)處理器的每一個獲得和處理一圖像之后,綜合(e)主視覺系統(tǒng)處理器和(f)從視覺系統(tǒng)處理器的結(jié)果,并將綜合的結(jié)果與唯一檢查周期標(biāo)識一起通過通信鏈路傳輸給主同步進(jìn)程,并且使用主同步進(jìn)程,確定來自主庫的綜合的結(jié)果和第一從庫、第二從庫的綜合的結(jié)果是否完成,如果結(jié)果是完成并且相同的,則將完成的結(jié)果傳輸給該預(yù)定目標(biāo)。
5.根據(jù)權(quán)利要求I所述的方法,進(jìn)一步包括,如果同步進(jìn)程確定至少一個(i)結(jié)果是未完成的,(ii)每個檢查周期標(biāo)識不相同,則向控制器指示一錯誤。
6.根據(jù)權(quán)利要求I所述的方法,進(jìn)一步包括向(c)主視覺系統(tǒng)處理器、(d)從視覺系統(tǒng)處理器、Ca)主視覺系統(tǒng)處理器和(b)從視覺系統(tǒng)處理器中的每一個提供一公用時間參考,并基于所述公用時間參考,對其檢查周期中的結(jié)果附加一時間戳。
7.根據(jù)權(quán)利要求6所述的方法,其中同步進(jìn)程基于每個結(jié)果上的每個時間戳之間的已知時間序列,確定綜合的結(jié)果的完成性。
8.根據(jù)權(quán)利要求I所述的方法,其中所述觸發(fā)包括一外部觸發(fā),并且其中方法進(jìn)一步包括,從包括感應(yīng)物體的存在檢測器、感應(yīng)移動的編碼器和具有位置參考的運(yùn)動控制系統(tǒng)的組中的至少一個產(chǎn)生外部觸發(fā)。
9.根據(jù)權(quán)利要求I所述的方法,進(jìn)一步包括基于完成結(jié)果,在預(yù)定目標(biāo)處執(zhí)行一關(guān)于移動線的動作。
10.根據(jù)權(quán)利要求I所述的方法,進(jìn)一步包括多個相機(jī),每個相機(jī)與獲得圖像的視覺系統(tǒng)處理器相關(guān),其中相機(jī)中的一個或多個是(a)布置為觀察一移動線上的預(yù)定位置,或者是(b)由一運(yùn)動控制裝置布置為獲得預(yù)定位置的圖像。
11.根據(jù)權(quán)利要求I所述的方法,進(jìn)一步包括向(c)主視覺系統(tǒng)處理器、(d)從視覺系統(tǒng)處理器、Ca)主視覺系統(tǒng)處理器和(b)從視覺系統(tǒng)處理器中的每一個提供一公用位置參考,并基于所述公用位置參考,對其檢查周期中的結(jié)果附加一位置參考。
12.根據(jù)權(quán)利要求11所述的方法,其中同步進(jìn)程基于每個結(jié)果上的每個位置參考之間的一位置關(guān)系,確定綜合的結(jié)果的完成性。
13.一種用于同步多個視覺系統(tǒng)處理器的結(jié)果的系統(tǒng),處理器處理所獲得的圖像,從而產(chǎn)生結(jié)果,包括 一第一從相機(jī)庫,包括至少一個(a)主視覺系統(tǒng)處理器和與其互連的至少一個(b)從視覺系統(tǒng)處理器; 一主相機(jī)庫,包括至少一個(c)主視覺系統(tǒng)處理器和至少一個(d)從視覺系統(tǒng)處理器,主庫的主視覺系統(tǒng)處理器與從相機(jī)庫的主視覺系統(tǒng)處理器互連,主庫包括一圖像獲得進(jìn)程,其在每個檢查周期內(nèi)接收一觸發(fā),并且作為響應(yīng),用(c)主視覺系統(tǒng)處理器和一主同步進(jìn)程獲得和處理一圖像,所述主同步進(jìn)程在一通信鏈路上發(fā)布一個與(C)主視覺系統(tǒng)處理器相關(guān)的一觸發(fā)信號,所述信號包括(d)從視覺系統(tǒng)處理器、(a)主視覺系統(tǒng)處理器和(b)從視覺系統(tǒng)處理器中的每一個的一唯一檢查周期標(biāo)識; 一綜合的進(jìn)程,其在使用(d)從視覺系統(tǒng)處理器、Ca)主視覺系統(tǒng)處理器和(b)從視覺系統(tǒng)處理器的每一個獲得和處理一圖像之后,綜合(c)主視覺系統(tǒng)處理器和(d)從視覺系統(tǒng)處理器的結(jié)果,并且在第一從庫中綜合(a)主視覺系統(tǒng)處理器和(b)從視覺系統(tǒng)處理器的結(jié)果,并將綜合的結(jié)果與唯一檢查周期標(biāo)識一起通過通信鏈路傳輸給主同步進(jìn)程,其中主同步進(jìn)程確定來自主庫的綜合的結(jié)果和第一從庫的綜合的結(jié)果是否完成,以及確定是否每個檢查周期標(biāo)識相同,如果結(jié)果是完成并且相同的,則將完成結(jié)果傳輸給一預(yù)定目標(biāo)。
14.根據(jù)權(quán)利要求13所述的系統(tǒng),其中主同步進(jìn)程位于(c)主視覺系統(tǒng)處理器中。
15.根據(jù)權(quán)利要求13所述的系統(tǒng),其中主同步進(jìn)程位于一分立的處理器中,其可操作地至少與(c )主視覺系統(tǒng)處理器和預(yù)定目標(biāo)連接。
16.根據(jù)權(quán)利要求13所述的系統(tǒng),進(jìn)一步包括(c)主視覺系統(tǒng)處理器、(d)從視覺系統(tǒng)處理器、Ca)主視覺系統(tǒng)處理器和(b)從視覺系統(tǒng)處理器的每一個中的一公用時間參考,以及一時間戳被附加至檢查周期中的結(jié)果中。
17.根據(jù)權(quán)利要求16所述的系統(tǒng),其中所述觸發(fā)包括一外部觸發(fā),并且其中從包括感應(yīng)物體的存在檢測器、感應(yīng)移動的編碼器和具有位置參考的運(yùn)動控制系統(tǒng)的組中的至少一個產(chǎn)生外部觸發(fā)。
18.根據(jù)權(quán)利要求13所述的系統(tǒng),進(jìn)一步包括向(c)主視覺系統(tǒng)處理器、(d)從視覺系統(tǒng)處理器、Ca)主視覺系統(tǒng)處理器和(b)從視覺系統(tǒng)處理器中的每一個提供一公用位置參考,并且其中對其檢查周期中的結(jié)果,基于公用位置參考,附加一位置參考。
19.根據(jù)權(quán)利要求18所述的系統(tǒng),其中同步進(jìn)程基于每個結(jié)果上的每個位置參考之間的一位置關(guān)系,確定綜合的結(jié)果的完成性。
20.根據(jù)權(quán)利要求13所述的系統(tǒng),進(jìn)一步包括多個相機(jī),每個相機(jī)與獲得圖像的視覺系統(tǒng)處理器相關(guān),其中相機(jī)中的一個或多個是(a)布置為觀察一移動線上的預(yù)定位置,或者是(b)由一運(yùn)動控制裝置布置為獲得預(yù)定位置的圖像。
21.一種用于同步視覺系統(tǒng)檢查結(jié)果的系統(tǒng),檢查結(jié)果由多個處理器的每一個產(chǎn)生,包括 一第一庫,包括一個主視覺系統(tǒng)處理器和至少一個從視覺系統(tǒng)處理器,其每個從一個或多個圖像中產(chǎn)生結(jié)果,所述圖像在一檢查周期中被獲得和處理; 一第二庫,包括一個主視覺系統(tǒng)處理器和至少一個從視覺系統(tǒng)處理器,其每個從一個或多個圖像中產(chǎn)生結(jié)果,所述圖像在一檢查周期中被獲得和處理; 一同步進(jìn)程,(a)產(chǎn)生一唯一標(biāo)識,將一觸發(fā)信號和與第一庫中的主處理器相關(guān)的唯一標(biāo)識傳遞至主庫中的每一個從處理器以及主、從處理器的每一個,(b)通過第二庫的主處理器接收綜合的結(jié)果,具有唯一標(biāo)識和來自第一庫的結(jié)果的綜合的結(jié)果,以及(C)綜合結(jié)果,以當(dāng)結(jié)果是完成的并且每個結(jié)果的唯一標(biāo)識是相同時,結(jié)果被傳輸至一目標(biāo)。
全文摘要
本發(fā)明提供一種系統(tǒng)和方法用于視覺系統(tǒng)檢查結(jié)果的同步,檢查結(jié)果由多個處理器中的每一個產(chǎn)生,處理器包括第一庫(可以是一“主”庫),第一庫包括一主視覺系統(tǒng)處理器和至少一個從視覺系統(tǒng)處理器。至少一個第二庫(可以是多個“從”庫中的一個)包括一主視覺系統(tǒng)處理器和至少一個從視覺系統(tǒng)處理器。每個庫中的每個視覺系統(tǒng)處理器從一圖像產(chǎn)生結(jié)果,圖像在一給定檢查周期內(nèi)被獲得及處理。該檢查周期可基于一外部觸發(fā)器或其他觸發(fā)器信號,且可使能部分或所有處理器/庫,以在一給定時間/周期處獲得和處理圖像。在一給定周期中,該多個庫中的每個可放置以獲得一移動線上的多個連續(xù)區(qū)域的各自區(qū)域的一圖像。一同步處理過程(a)產(chǎn)生一唯一標(biāo)識,將帶有該與主處理器關(guān)聯(lián)的唯一標(biāo)識的一觸發(fā)器信號傳遞至主庫中的每個從處理器、每個主和從處理器,并且(b)通過第二庫的主處理器接收合并結(jié)果,具有唯一標(biāo)識以及第一庫的結(jié)果的合并結(jié)果。處理過程然后(c)合并結(jié)果,如果結(jié)果完成,且每個結(jié)果的唯一標(biāo)識相同,則傳輸至一目標(biāo)。
文檔編號H04N7/18GK102640490SQ201080056392
公開日2012年8月15日 申請日期2010年12月21日 優(yōu)先權(quán)日2009年12月29日
發(fā)明者J·R·麥克萊倫 申請人:康耐視公司