通過物體虛擬裝配訓練裝配系統的視覺系統的制作方法
【專利摘要】本發明提供了一種將工件引導至最優位置以訓練裝配系統的系統和方法,所述裝配系統通常沒有使用CMM或類似的計量設備。當所述工件位于它們各自的工作站時,所述系統和方法給出工件在共用坐標系中的特征圖像。此能力使得用戶能夠對工件的裝配結果進行“虛擬裝配”的可視化處理而無需對工件進行事實上的裝配。此虛擬裝配有助于相對于各自的工作站將工件放置至需要的相對對齊位置。所述系統和方法說明性地利用來自用于引導工件的攝像機的圖像生成了一合成圖像,幫助用戶想象零件在裝配后是怎樣的。所述用戶能夠在各自的工作站中對工件的圖像進行重定位直至所述合成圖像具有需要的外觀。
【專利說明】
通過物體虛擬裝配訓練裝配系統的視覺系統
[0001] 相關申請
[0002] 本申請要求于2015年3月3日提交的名稱為VISION SYSTEM FOR TRAINING AN ASSEMBLY SYSTEM THROUGH VIRTUAL ASSEMBLY OF 0BJECTS(用于通過物體虛擬裝配來訓 練裝配系統的視覺系統)的美國臨時申請62/127,808的優先權,并且要求2016年3月1日提 交的美國申請15/058,118的優先權,這些申請的教導內容通過引用清楚地并入本文。
技術領域
[0003] 本發明涉及一種機器視覺系統,更具體地,涉及一種用于在制造環境中引導工件 組件和其它物體的視覺系統。
【背景技術】
[0004] 在機器視覺系統中(此處亦可稱為"視覺系統"),利用一個或多個攝像機對成像區 域內的物體或表面執行視覺系統進程。該進程可包括監測、解碼符號、對齊及各種其他自動 化任務。特別地,視覺系統可用于監測一通過成像區域的扁平工件。典型的,一個或多個視 覺攝像機對該區域進行成像,該攝像機包括內置或者外接視覺系統處理器,用于與視覺系 統進程共同生成結果。一個或多個攝像機被標定以使得其能夠足夠精確且可靠地來執行視 覺任務。可以使用一標定板來標定一個或多個攝像機,并且建立一共用的(全局的)坐標系 (也稱為"運動坐標系"),其中所有攝像頭的像素位置被映射到坐標系中的相關點,從而實 現在任意攝像機中的成像特征位于坐標空間內。可通過使用公知的"手-眼"標定技術來實 現此標定。
[0005] 視覺系統的一種顯著應用是應用在通過自動裝配機構的物體(也稱為"工件")裝 配中,該自動裝配機構可包括移動平臺(運動平臺)以及機械手(例如,執行"拾取和放置"操 作或其它類型的運動裝置/運動平臺),該移動平臺將工件精確支撐在裝配位置,該機械手 在"裝配運動"中將另一工件移動至其被裝配至工件的上層對齊位置。
[0006] 視覺系統中裝配工件的具體應用包括將一個平坦工件與另一平坦工件對齊。例 如,在拾取和放置操作中,可通過機械手操作將一電池放置位于移動平臺上的手機的井 (well)上方并且放入該井內。
[0007]此類視覺系統首先被訓練,使得在該系統的運行操作期間,每一工件與其它工件 準確對齊。在訓練期間,將工件定位在它們各自的工作站處,使得當被裝配時,所裝配的工 件具有所需的相互位置關系。在訓練之后,在運行期間,為了應對任何位移或尺寸變化,將 工件重新定位在它們各自的工作站中,然后裝配工件。從而當工件-裝配進程開始時,部件 被以與它們在訓練時間段相同的相互位置關系放置。
[0008]當前的訓練技術包括將工件放置在它們各自的工作站中、訓練系統、裝配工件以 及在分開的測量系統上(如坐標測量機(CMM))測量裝配誤差。所測量的誤差(a)用于引導工 件的重新定位(分別通過機械手和運動平臺)以及重新訓練裝配系統,或(b)在一些裝配系 統上,作為校正系數并入,在運行期間通過它們各自的機構應用該校正因子來校正一個或 兩個部件。使用通過重新定位工件來訓練的缺點為其是一個反復并且耗時的過程。用戶需 要多次重復訓練步驟,直到實現所需的裝配特性。同樣,將校正系數并入機械手和/或運動 平臺裝配運動中的挑戰是沒有建立CMM坐標系和裝配系統坐標系之間的關系。因此,校正系 數的計算也是一個反復和耗時的過程。
【發明內容】
[0009]本發明通過提供一種用于將工件引導至優化位置來訓練裝配系統的系統及方法 來克服現有技術缺點,該裝配系統一般可以使用CMM或類似測量裝置。所述系統和方法在一 公共坐標系中表示工件處于它們各自的工作站中時的圖像特征。此能力允許用戶可以看見 裝配工件的結果而無需實際裝配它們。這在本文中稱為"虛擬裝配"。所述系統和方法使用 虛擬裝配來幫助引導將工件放置在它們各自的工作站中,使得當被裝配時,所裝配的工件 將具有所需的相對對齊。在一個實施例中,所述系統和方法通過使用來自在引導工件中使 用的攝像機的圖像來生成一復合圖像(其可以是多張所獲取的工件圖像構造所得的拼接圖 像),所述復合圖像幫助用戶可視化部件將如何隨著裝配而呈現。用戶可重新定位工件在它 們各自工作站中的圖像,直到所述復合圖像具有所需的外貌。在另一實施例中,用戶可以找 出工件圖像上的特征并且將該特征信息表示在公共坐標系中。用戶可以將橫跨工件的特征 之間的關系與對于正確裝配的部件所設計的關系做比較,并且使用該結果來將工件引導至 優化裝配的位置。在第三實施例中,通過使用在先前實施例中提取的特征,將所述工件自動 重新定位至優化位置。
[0010]舉例說明,通過一校正過程,可將圖像特征從多個工作站中映射至一公共坐標系。 例如,在使用可重復拾取和放置的機械手來裝配部件的系統上,一校正目標可通過使用機 械手轉移該目標以在多個工作站處成像。可以使用合適的夾具來實現如工件一樣操縱該目 標。通過這種方式,所述校正目標經歷和工件相同的平移,因此,工件特征的坐標在操作期 間跟隨與工件路徑相同的從拾取工作站至放置工作站的路徑。可選地,基于對裝配進程的 了解,映射參數可通過具體化來手動計算。
[0011] 有利地,所述系統和方法可使得可使得能夠實現來自任意數量工作站的任意數量 工作件虛擬裝配,以為了訓練一裝配系統,該裝配系統將這些工件裝配成單個裝配物體。
[0012] 在一說明性實施例中,提供了一種在裝配系統中虛擬裝配物體的系統及方法,所 述裝配系統具有至少一個含有第一工件的第一工作站,所述裝配系統在兩者間將第二工件 對齊裝配至第一工件。一個或者多個視覺系統攝像機以及一視覺系統處理器總成,被設置 為對第一工件和第二工件進行成像。所述多個攝像機在一共用坐標系中標定。對齊進程,生 成所述第一工件和第二工件在所述共用坐標系中的圖像和特征中的至少一個。操作進程, 包括被設置來定位第一工件上的第一組特征和第二工件上的第二組特征的視覺工具,所述 視覺工具相對于第二組特征自動對齊第一組特征。裝配誤差計算模塊,基于在虛擬裝配過 程中通過操作進程的第一工件和第二工件的操作程度計算裝配誤差。例如,所述第二工件 在遠離第一工作站的第二工作站中成像。
[0013] 在實施例中,所述視覺系統攝像機至少對第三工件成像。所述對齊進程生成所述 第三工件在所述共用坐標系中的圖像和特征中的至少一個。所述操作進程因此被設置為允 許相對于所述第一工件和第二工件中的至少一個虛擬裝配第三工件以將第三工件的圖像 和特征中的至少一個和所述第一工件和第二工件中的至少一個的圖像和特征中的至少一 個相對齊。所述裝配誤差計算模塊由此基于第三工件相對于所述第一工件和第二工件中至 少一個的操作程度計算裝配誤差。所述第一工件由視覺系統攝像機在第一工作站成像,以 及第二工件和第三工件中的每一個由視覺系統攝像機在第二工作站成像。例如,至少第四 工件可由視覺系統攝像機在第四工作站成像。通過這種方式,所述系統和方法可被用于訓 練裝配系統,該裝配系統在任意數量的工作站裝配任意數量的工件。
[0014] 在實施例中,對所述第一工件成像的視覺系統攝像機中的至少一個以及對所述第 二工件成像的視覺系統攝像機中的至少一個隨后被映射(標定)到離散的(分離的/不同的) 坐標系。因此,使用基于兩離散坐標系的界面裝配所述第一工件以及第二工件。在實施例 中,所述工作站中的至少一個為裝配平臺,并且所述工作站中的至少另一個為拾取位置。例 如,所述裝配誤差可在至少3個自由度中定義。所述界面可具有一顯示和用戶界面,用于所 述第一工件的圖像與所述第二工件的圖像手動對齊。所述第一工件和所述第二工件中的至 少一個的圖像可為縫合圖像。所述界面可為整個操作進程或處理器的部分,該處理器也包 括視覺工具,該視覺工具相對于第二組特征自動對齊第一組特征。
[0015] 例如,至少一個視覺系統攝像機對所述第一工件和第二工件中的至少一個進行成 像。所述一個或多個視覺系統攝像機被構造和設置來獲取在裝配系統訓練和/或運行操作 中使用的圖像。該一個或多個攝像機與在對齊進程中使用的一個或多個攝像機分開(無 關)。所述裝配平臺可定義一運動平臺,以及所述裝配系統具有一可復驗的操縱器,所述操 縱器從所述拾取位置移動所述第二工件至所述運動平臺。例如,所述第一工件和第二工件 (和/或第三工件、第四工件等)中的至少一個定義由視覺系統攝像機成像的一平坦表面。
[0016] 例如,所述系統和方法可以包括:(a)第一標定進程,標定所有對第一工作站成像 的視覺系統攝像機至第一坐標系,其中標定的視覺系統攝像機的全部或者子集適用于在裝 配系統的工作時間內使用;(b)第二標定進程,標定所有對第二工作站成像的視覺系統攝像 機至第二坐標系,其中標定的視覺系統攝像機的全部或者子集適用于在裝配系統的工作時 間內使用;第三標定進程,將第一坐標系和第二坐標系綁定至所述共用坐標系,其使用標定 的視覺系統攝像機的不同離散子集將第一坐標系和第二坐標系綁定至所述共用坐標系;以 及(d)來自(a)和(b)的在第一工作站和第二工作站中的每一個中標定的視覺系統攝像機的 全部或者子集在虛擬裝配中基于所述共用坐標系使用,所述共用坐標系基于(a)中的第一 標定進程和(b)中的第二標定進程和(c)中第三標定進程建立。
【附圖說明】
[0017] 下文將參考附圖對本發明進行描述,其中:
[0018] 圖1所示為根據說明性實施例,相對于與工件裝配系統一起使用的示例性運動平 臺設置的多攝像機視覺系統的示意圖,該工件裝配系統包括一虛擬訓練處理(器);
[0019] 圖2所示為相對示例性拾取和放置裝配設置來設置的兩攝像機視覺系統的示意 圖,其中一工件與另一工件對齊,該圖顯示了拾取和放置操縱器位于位置拾取工作站,以提 取一工件;
[0020] 圖3所示為圖2中的兩攝像機視覺系統和示例性拾取和放置裝配設置的示意圖,該 圖顯示拾取和放置機械手位于放置工作站,以將工件相對對齊地裝配在一起;
[0021] 圖4所示為圖2中的兩攝像機視覺系統和示例性拾取和放置裝配設置的示意圖,該 圖顯示一標定板位于拾取工作站攝像機的視場中,用于拾取工作站攝像機相對全局坐標系 的標定;
[0022] 圖5所示為圖2中的兩攝像機視覺系統和示例性拾取和放置裝配設置的示意圖,該 圖顯示一標定板位于放置工作站攝像機的視場中,用于放置工作站攝像機相對全局坐標系 的標定;
[0023] 圖6所示為將裝配系統中的多個攝像機標定至一共用坐標系的步驟流程圖;
[0024] 圖7所示為生成工件在每個工作站的縫合圖像以及使用該縫合圖像生成復合圖像 的步驟流程圖;
[0025]圖8所示為表示在第一工作站使用第一工件上的四個示例性十字特征(基準點)來 生成第一縫合圖像的四攝像機系統的示意圖;
[0026] 圖9所示為在第二工作站使用第二工件上的四個示例性圓形特征(基準點)來生成 第二縫合圖像的四攝像機系統的示意圖;
[0027] 圖10所示為使用各自基準點未對齊的圖8中的第一縫合圖像和圖9中的第二縫合 圖像的復合圖像的示意圖;
[0028] 圖11所示為使用各自基準點對齊的圖8中的第一縫合圖像和圖9中的第二縫合圖 像的復合圖像的示意圖;
[0029]圖12所示為由用戶觀察的圖形用戶界面(GUI)顯示的示意圖,其中多攝像機(例如 四攝像機)設置對放置在平臺上的工件邊緣進行成像;
[0030] 圖13所示為由用戶觀察的圖形用戶界面(GUI)顯示的示意圖,其中多攝像機設置 對放置在運動平臺上的工件邊緣進行成像;
[0031] 圖14所示為在多攝像機設置中由用戶觀察的圖形用戶界面(GUI)顯示的示意圖, 其中當工件處于產生未對齊裝配的位置時,該GUI顯示四張為復合圖像內的區域的圖像; [0032]圖15所示為在多攝像機設置中由用戶觀察的圖形用戶界面(GUI)顯示的示意圖, 其中當工件處于產生對齊裝配的位置時,該GUI顯示四張為復合圖像內的區域的圖像;
[0033]圖16所示為基于使用虛擬裝配的視覺工件對齊來訓練裝配系統的步驟流程圖;以 及
[0034]圖17所示為使用特征關系來虛擬裝配工件的步驟流程圖。
【具體實施方式】
[0035]圖1示出了裝配系統100,其采用運動平臺110以至少三個自由度(例如,Xs、Ys和 ΘΜ)移動支撐第一工件112。工件112通常沿自身至少一部分是平面的(即是平的),其帶有 的平面位于沿平臺110的ζ軸Zs的特定高度。該平臺可以稱為"裝配站",并且由多個攝像機 130攝像,其中每個攝像機成像的視野為第一工件112占據的整個區域中的一部分。下面進 一步描述攝像機130及其功能。
[0036]在此配置100中,取放機構或"操縱器"120有選擇地在源點(沒有在此實例中以圖 示出)和重合了圖示的第一工件112的位置之間配合和運送第二(平面的)工件122。對此配 置的目的而言,"拾取位置"或"拾取站"是在不同高度處,使第二工件122成像(即是預第一 工件重疊)的地方,如圖1所示。在另一個實施例中(例如,如下面的圖2-5所示),拾取位置/ 站位于遠程的源點,其中所述操縱器(比如,可重復拾放的機構)從該源點索取工件以裝配 在第一工件上。在本實例中的裝配任務包含精確放置具有外邊緣126、118的第二工件122到 由第一工件112上的相應內邊緣116、118界定的凹口 114中。操縱器120沿多個自由度移 動--例如沿軸Xm、Ym和Zm,及每個軸的旋轉方向(例如,沿軸Zm的?z:m)。在此配置100中的 每個攝像機130對第二工件122的頂面呈現,該頂面對比第一工件112的頂面處于不同的高 度(z軸)。
[0037]每個攝像機130可操作地連接至視覺系統處理器140,該視覺系統處理器可以整體 或部分地整合為攝像機殼體內的定制的視覺處理器電路,或者可以提供在交互的遠程計算 機設備150中,包括但不限于PC、膝上型輕便計算機、平板電腦、智能手機等。注意到,在采用 超過一個攝像機的裝配系統中,每個攝像機適應為發送自身獲得的圖像或提取自該圖像的 信息到中央處理器。中央處理器然后在裝配期間整合來自各個攝像機的信息。當利用遠程 計算機設備時,所述計算機設備150可以包含顯示器和關聯的圖形用戶界面接口(GUI)控制 器,比如鍵盤、鼠標和/或觸摸屏。視覺處理器140運行多種視覺系統進程(或者單元/模型), 包含各種視覺工具142,比如邊緣查找器、斑點分析器、檢索工具、測徑工具等。例如,視覺處 理器140包括對齊處理(器),用于以一種方式實現來自兩個工件的圖像數據的對齊,下面進 一步描述此方式。標定處理(器)146促進將來自兩個部分的圖像所提取的圖像特征映射到 普通(運動)坐標系,例如使用下面進一步描述的標定板和手眼標定程序來標定。例如,訓練 處理(器)148實現本文考慮的多個訓練處理程序以復位工件,從而精確地相對于第一工件 裝配第二工件。注意到,可以將視覺處理器140建立為多個交互的攝像機處理器(或其他設 備),或者是單攝像機裝配中的一中央處理器(或者遠程計算機設備)。
[0038] 通過非限制性的實例,通常參考到2015年6月8日申請的,標題為SYSTEM AND METHOD FOR TYING TOGETHER MACHINE VISION ⑶ORDINATE SPACES IN A GUIDED ASSEMBLY ENVIRONMENT,第62/201,723號美國臨時申請。該申請作為有用的背景信息以參 考的方式并入本文,其涉及在遠程位置之間建立普通的坐標系。更具體地,這里并入的申 請,通過提供在標定時間內使用實時工件上的特征在兩個位置一同綁定坐標空間的系統和 方法,克服了從操縱器(和關聯的抓取器)在拾放位置之間傳遞標定目標所產生的問題。該 系統和方法提供至少三個不同的方案/技術一一其中之一為在兩個位置都能成像和識別相 同的特征;其中之一為實時工件的成像特征在每個位置都不同(其中,CAD或工件的測量再 現是可用的);并且其中之一為,將包含運動平臺的第一位置標定到使用手眼標定的運動平 臺,并且通過在位置之間往返傳遞實時零件,使第二位置以手眼標定到相同的運動平臺。例 如,可以通過運動多個具有不同的位姿的實時工件,提取特征并在每個位置累積這些特征, 來改進起先的兩種技術;然后使用累積的特征來綁定所述兩個坐標空間。更一般地,該系統 和方法單獨標定這兩個位置,并且通過傳遞工件為這兩個位置一起綁定坐標空間,使操縱 器構造和布置/適配為在裝配期間傳遞該工件,并且使用該工件的特征而不是使用標定板 的特征。
[0039]在所述并入申請的示例性實施例中,用于標定視覺系統的系統和方法處于通過操 縱器將在第一位置的第一工件傳遞到所提供的第二位置的環境中。實施在第一工件的操 作,依賴于對第一位置和第二位置的一起進行的坐標空間綁定。至少一個視覺系統攝像機 布置為對位于第一位置時的第一工件成像,并且對位于第二位置時的第一工件進行成像。 相對于第一位置對至少一個視覺系統攝像機標定,以得到定義第一坐標空間的第一標定數 據,并且相對于第二位置對至少一個視覺系統攝像機(潛在相同的一個或多個攝像機)標 定,以得到定義第二坐標空間的第二標定數據。在來自第一工件的第一圖像的第一位置識 別至少第一工件的特征。基于在第一圖像中識別的特征,針對關聯于第一位置的第一坐標 空間定位第一工件。至少抓取或移動一次第一工件到預定的第二位置處的操縱臂地點,在 第二位置獲得第一工件的第二圖像。基于在第二圖像中識別的特征,針對關聯于第二位置 的第二坐標空間定位第二工件。由此一起綁定第一坐標空間和第二坐標空間。例如,當第一 圖像中識別的特征與第二圖像中識別的特征相同時,所述系統和方法包括:(a)針對第一標 定數據對第一圖像中的識別特征的位置進行映射;(b)針對第二標定數據對第二圖像中的 識別特征的位置進行映射;以及(c)計算第二位置的映射特征到第一位置的映射特征的映 射轉換。可選地,當第一圖像中識別的一些特征與第二圖像中識別的特征不同時,所述系統 和方法包括:(a)針對第一標定數據對第一圖像中的識別特征的位置進行映射;(b)對與第 一工件的特征位置的儲存規格關聯的轉換進行計算;(c)針對第二標定數據對第二圖像中 的識別特征的位置進行映射;(d)當工件位于第一位置時,使用步驟(b)中計算的轉換,以得 出來自第一坐標空間中的第二圖像的識別的特征的位置;以及(e)計算第二位置的映射特 征到第一位置的對應轉換特征的映射轉換。第一工件的規格可以基于第一工件的CAD模型, 或者第一工件的測量模型(例如,OM生成的測量尺寸)。例如,所述系統和方法可以包括: (a)在第一位置或第二位置以運動呈現設備迭代地移動第一工件到多個不同的位姿;(b)識 別每個第一位置和第二位置的每個位姿的特征;以及( c)累積識別的特征信息以增加精度, 其中第一工件為相同的工件或者是多個離開的工件中的一個。在各個實施例中,所述系統 和方法包括從圖像坐標系至第一位置處的標定坐標系的映射,并且其中所述映射是唯一 的。在多個實施例中,第二位置有第二工件,其中第一工件與第二工件以期望對齊的方式放 置配合到第二工件中,和/或第二工件可以是零件、容器或支架,用于進一步處理第一工件。 此外,在各個實施例中,該操作可以是至少一個相對于另一物體的對齊操作、在第一工件上 的打印操作和在第一工件上的涂覆操作,以及所述操作可以在遠離第一位置和第二位置的 位置至少部分執行。
[0040] 運動平臺110包括運動控制器和/或針對視覺處理器傳輸運動信息的控制處理器 160。這可以精確地知道和/或由視覺處理器跟蹤平臺110的位置。平臺110可以使用各種編 碼器或其他傳感設備以生成運動信息。運動控制器170還可以提供至操縱器120,以傳送與 其關聯的運動信息172至視覺處理器140。
[0041] 進一步如下描述,虛擬裝配允許用戶利用攝像機及其提供的圖像以(通過視覺系 統)對工件進行虛擬裝配。在這樣的虛擬裝配過程中,用戶使用操作處理(器),獲得在隨后 的操作中使用的裝配誤差信息,以調整物理裝配機構的移動,從而代表性地實現通過裝配 誤差矯正而修改的(典型)可重復的物理裝配步驟組合。在示例性實施例中,采用合適的調 整,基于來自虛擬裝配的數據,利用運動平臺使裝配誤差最小化。可選地,有其他的運動設 備可以適應裝配誤差矯正/調整。
[0042] 而所述裝配系統通常布置為高可重復性機構,明確考慮到,在運行期間(或以非重 復的方式)可以編程或輸入運動變化的裝配系統可以使用本文圖示和描述的虛擬裝配和虛 擬裝配流程來實施訓練。
[0043] 還注意到,在此處各個實施例描述的物理工件裝配配置包含任意數量(例如一個 或四個)的對運動平臺各個區域進行成像的攝像機。在可選的配置中,每個站的攝像機數量 具有高可變性。同理,整個系統中的站數量也具有高可變性。在本實施例中,單個站成像有 不同的高度兩個工件。下面進一步如圖2-4的實施例所示,一個或多個攝像機分別定位為分 別拍攝兩個離開的工作站一一一個拾取站和一個放置站。這些攝像機中的每一個被標定為 公共坐標系。
[0044] 根據進一步的實施例,還清楚考慮到多于兩個站,使一個或多個關聯的攝像機可 以提供在整個虛擬裝配和虛擬裝配配置中。例如,可以提供額外的拾取站或中間裝配站。在 虛擬裝配中采用的所有攝像機可以被標定為(基于運動平臺或另一個坐標系來創建的)公 共坐標系,并且來自每個站攝像機的圖像可以是此處描述的虛擬裝配和虛擬裝配進程的一 部分。
[0045] 圖2尤其說明了運動平臺210和拾放(操縱器)機構220的可使用根據一實施例的系 統和方法的替代配置200。拾取站222包括第二工件224,該第二工件由操縱臂220拾起(箭頭 250)然后直接(箭頭252)沿軌道225至運動平臺210,在本實施例中該運動平臺定義一放置 站。在裝配期間,第一工件212適配為以合適的互相之間的對齊方式接收第二工件224,一般 如上文所述。平臺210沿兩個或更多的自由度(例如,軸Xs、Ys,旋轉Θ Ζ&)移動,并且駐于沿軸 Zs的一高度。操縱器220至少沿軸Ym并且在軸Zm沿拾/放方向移動。還考慮關于軸Zm的旋轉 ezm。在放置操作(箭頭350)期間,平臺210和操縱器220的運動組合足以使第二工件224相對 于第一工件212對齊,如圖3所示。
[0046]在此配置200中,至少一個攝像機分別對每個站(210、222)成像。攝像機240、242預 視覺處理(器)260交互,如上文描述的布置。一個或兩個站可以包括額外的攝像機244(如平 臺210處的虛線所示)。視覺處理(器)260還操作地與平臺運動控制器270和操縱器控制器 280互相連接,以上文描述的方式提供運動信息。
[0047] 現在參考圖4和5,其所示為從兩個攝像機到公共坐標系映射特征的自動化技術。 該技術分別包含拾取站攝像機242和放置站攝像機的標定,以及用于標定安裝在多個站的 多個攝像機的流程600。開始,流程600(在步驟610)執行平臺210上的一個或多個攝像機 240、244(或者圖1中的平臺110上的攝像機130)的手眼標定,使得所有攝像機定義公共或運 動坐標系。
[0048] 注意到本文所使用的詞語"所有攝像機",指的是本發明虛擬裝配中的系統所采用 的全部攝像機。清楚考慮到,可以從任務中省去視覺系統所使用的攝像機。主要考慮到,對 來自每個站的至少一個攝像機標定為公共坐標系并且生成訓練進程中使用的圖像。
[0049]通過普遍理解的特定標定原理的深入【背景技術】,對于剛體(比如標定目標或 "板"),運動可以由一對位姿來表征:運動前的瞬時起始位姿和運動后的瞬時結束位姿一一 此處的"位姿"定義為在任何一個特定瞬間在一些基礎坐標系中的一組描述物體狀態的數 值一一物體的虛擬特性。例如,在二維中,剛體可以表征為三個維度:平移X、平移Y和旋轉R。 當一個或多個攝像機與標定板之間存在相對運動時,標定板紋理中的位姿描述了如何讓標 定板呈現到一個或多個攝像機。典型地,在常規的所謂"手眼標定"中,標定板以若干個不同 的位姿呈現至一個或多個攝像機,而每個攝像機在每個這樣的位姿來獲取標定板的圖像。 對于視覺系統手眼標定,通常將標定板移動至多個預設的位姿,其中攝像機獲取相應的標 定板圖像。手眼標定的目的在于確定一個或多個攝像機的剛體位姿和"運動坐標系"中的標 定板。可以用多種方式來定義運動坐標系。需要在合適的坐標系中解析位姿的數量(具體指 定標定板和/或攝像機處于空間內的位置)。一旦選擇單個公共坐標系,則在該公共/全局坐 標系描述/解析所述位姿和運動。這個選擇的坐標系一般命名為"運動坐標系"。通常,呈現 (render)物理運動的物理設備提供"運動",該物理設備比如是機械臂或運動平臺,比如是 起重臺架。注意到,標定板可以相對于一個或多個靜態的一個或多個攝像機移動,或者一個 或多個攝像機可以相對于靜態的標定板移動。這類運動呈現設備的控制器采用數值(即是 位姿)來命令該設備來執行任何期望的運動,并且對于該設備,這些數值是在本地坐標系中 解析。注意到,盡管可以選擇任何運動坐標系來提供相對于運動呈現設備和一個或多個攝 像機的公共、全局坐標系,通常期望選擇運動呈現設備的本地坐標系作為總體的運動坐標 系。
[0050]手眼標定,因此,通過對運動的呈現(移動標定板或移動相機),將系統標定為單一 的運動坐標系,以及獲取在該運動之前和在之后獲取圖像,以確定該運動在一移動對象上 的效果。
[0051 ]再次參照圖4-6,程序600的下一個步驟620負責將標定目標/板410放置在其中一 個站臺(即拾取站222,或在由機械手120夾持的同時),相機(或多個相機)242在該位置處獲 取目標410的一個或多個圖像。該信息儲存于視覺進程260(或視覺處理器140)。然后在步驟 630中,目標410轉移到其他站臺(即運動平臺210(或110))。然后于步驟640中,通過相機(或 多個相機)240、244,或130,在該平臺處獲取目標410的一個或多個圖像。然后在程序600的 步驟650中,基于在目標410中使用步驟640的圖像而查找到的邊緣,將所有相機240、242、 244(或130)的像素位置映射到標定目標坐標。然后在步驟660中,使用于步驟640中所獲取 的在該平臺處的標定目標的圖像,來計算標定板坐標至運動平臺坐標系的映射。在步驟670 中,平臺處相機的像素位置映射到運動平臺210 (或110)的坐標系。
[0052] 應當注意的是,610、660和670是可選的。為了本發明的目的,可止于步驟650,因為 已獲得將裝配系統中的所有相機的像素映射至標定板坐標系的能力。執行步驟660和670的 優點為,有助于生成一合成圖像,其X和Y軸極大地對齊至運動平臺的X和Y軸,以通過控制電 動機輕易操作合成圖像。
[0053]在已將相機像素位置映射至公共坐標系的情況下,視覺系統可利用該信息置為訓 練模式,并用于虛擬地相互對齊工件圖像。
[0054]現參照圖7,其示出程序700,用于生成每一站中的工件的縫合(stitch)和合成圖 像。在步驟710中,程序700計算由上述確定的公共坐標系中的每一站的每一相機成像的區 域。在步驟720中,計算包含所有區域的邊界方框。在步驟730中,程序700生成兩個縫合圖 像,每一站對應一個。說明性地,該縫合圖像的高度和寬度每個均相同,且可由用戶定義。 [0055]如本文所使用的,術語"縫合圖像"或"縫合"涉及將兩個或以上源圖像合并為一個 合成的結果圖像。當一相機視野太小,很難捕捉整個所需場景,從而需要多個圖像時,該進 程是有用的。對本領域技術人員而言,存在有各個不同的可用技術,來生成縫合圖像。所述 視覺系統可以,例如,包括一縫合工具,例如Natick,MA的Cognex公司所提供的Cognex Image Stitching工具。該工具運行于和所有源圖像和結果圖像共用的計算空間中。每一源 圖像包含唯一的標定變換,將其圖像映射進公共的空間中。概念性地,該圖像縫合工具在公 共空間中建造結果,且得出的縫合圖像包含一變換,其將公共空間結果映射入縫合圖像中。 該縫合圖像可以形成一"合成圖像"的基礎,其在本文中定義為合成進程的結果,在該進程 中,合并不同圖像的特征以生成單一圖像。該合成圖像為虛擬裝配系統的GUI所用,以使用 戶或自動進程可以操縱工件(或多個工件),以生成用于訓練該系統的虛擬工件總成。
[0056]在圖8的示例中,包含四個基準點/特征(在本示例中為叉符號810)的第一工件800 在第一站經由四個示例性的具有如虛線框820所示視野的相機成像。應注意四個相機中的 每一個的視野820在縫合圖像中具有任意的朝向,因為無需擔心將相機物理上對齊至公共 坐標系(X1,Y1)。同樣地,在圖9的示例中,包含四個基準點/特征(在本示例中為叉符號910) 的第二工件900在第二站經由四個示例性的具有如虛線框920所示視野的相機成像。應注意 四個相機中的每一個的視野920在縫合圖像中再次具有任意的朝向,因為無需擔心將相機 物理上對齊至公共坐標系(XI,Υ1)。
[0057]在程序700的步驟740中,一變換將縫合圖像的角映射至邊界方框的角。然后,在步 驟750中,對于每一站,程序700使用該變換將每一相機的圖像像素映射入相應的縫合圖像 中。下一步,在步驟760中,程序通過,例如,對兩個圖像求平均,對來自750的縫合圖像進行 編輯,以生成合成圖像。合成圖像代表一虛擬總成,并可用于推斷裝配的質量。應注意這些 步驟是示例性的用于生成經標定(圖6)的縫合和合成圖像的各種各樣的程序和技術.這些 程序通常采用將一圖像中的特征位置映射至公共坐標系的能力。
[0058]圖10顯示一示例性的在一合成圖像中處于不對齊朝向的工件800和900的視圖,其 中通過對來自兩個站的縫合圖像進行求平均來生成該合成圖像。應注意各自的基準點810 和910相互偏離中心。反過來,當如圖11所示對齊時,合成圖像描述了對齊的工件,其中類似 尺寸的縫合圖像的基準點相互移動至對準。
[0059]圖12-15顯示了具有相似的描述的圖形用戶界面(GUI)顯示。在圖12中,四-相機的 配置生成置于(例如)拾取平臺的第一工件的四個各自的圖像1210、1220、1230和1240。應注 意,由于各自的相機相對于平臺和工件的物理放置,工件的各自的邊緣1212、1222、1232和 1242在每一圖像中的大小不同。圖13為由用戶觀察到的GUI顯示,其中該四-相機配置生成 置于(例如)運動平臺的第二工件的四個各自的圖像1310、1320、1330和1340。再次地,由于 相機的定位,各自的邊緣1312、1322、1332和1342大小不同。
[0060] 在圖14中示出了一GUI顯示,其中,四個圖像1410、1420、1430和1440為,當工件處 于將導致不對齊的裝配的位置時的合成圖像內的區域。應注意每一圖像的邊緣是歪斜的 (skewed)。反過來,在圖15中,四個顯示的圖像1510、1520、1530和1540為,當工件處于將導 致對齊的裝配的位置時的合成圖像內的區域。應注意邊緣在每一圖像中交疊。
[0061] 應注意,盡管所描述的GUI包含對應于四個相機的四個圖像,可設想,相對于給定 數量的對站/場景進行成像的相機,可顯示更少的圖像。例如,在設置有多余的和/或有限 的/沒有有用的圖像信息的情況下,某些圖像可省略。因此可在所述的顯示視圖中設置包含 兩個或三個圖像的合成圖像。可設想到,在顯示的合成圖像中呈現每一工件上的足夠的特 征信息,允許用戶(或自動進程)在虛擬裝配過程中對齊那些工件。
[0062] 可清楚地設想到,各種各樣的技術可用于生成上述的縫合和合成圖像。通常,這樣 的技術采用將每一圖像的像素映射至公共坐標系的能力。此外,上述的合成圖像為對縫合 圖像的平均。該合成圖像可通過可替換的表示來定義,以及因此可使用其它技術生成。對于 在每一站使用一個相機的裝配系統,可省略縫合程序,且可直接地通過進程執行圖像的合 成。可注意,縫合程序采用來自一站的多個相機的圖像,以生成用于該站的工件的單一圖 像。在各種實施例中,縫合和合成操作可合并為單一的視覺任務。
[0063] 通常,本發明的系統和方法具有這樣的優點,當工件處于它們的各自的站中,工件 上的特征,表達于一公共的(全局或運動)坐標系中。存在有至少三種技術,其中在訓練期間 提供反饋以幫助將工件置于所需的朝向(例如由X和y平移和旋轉限定的"姿勢")。如下:
[0064] 1.視覺對準
[0065] 該技術可用于在公共坐標系中具有重疊視野的裝配系統(例如圖1的機構100)。在 每一站處,使用位于該站的所有相機來生成縫合圖像。對于任一給定相機中的任一像素,公 共坐標系中的位置為已知的,因此可生成縫合圖像。一旦生成縫合圖像,由進程通過合成位 于兩個站的縫合圖像來生成合成圖像(例如通過對縫合圖像求平均)。再次,這是可能的,因 為可以表達公共坐標系中的任一站處的像素。這事實上,虛擬裝配該兩個工件,幫助用戶輕 易地對裝配的部件的可能的樣子進行可視化。即,用戶手動地或使用由GUI提供的控制,平 移和旋轉各自的工件(例如運動平臺上的工件)的兩個圖像中的至少一個。這些可包括一鼠 標、觸摸屏和/或數據輸入框。用戶繼續該平移/旋轉進程,直到工件處于適當的對準,以表 示裝配的對象處于所需的配置和關聯的外觀。包含兩個工件的所得對象因此為,"虛擬地" 裝配。在虛擬裝配期間,用戶可以對合成圖像上的一些突出的特征進行變焦放大,并移動位 于站臺處的運動平臺,直到實現所需的裝配。一旦完成,用戶可以訓練該裝配系統。參照圖 16的程序1600,由用戶進行的視覺對準,概括來說必需:通過觀察裝配圖像(步驟1610)估計 裝配質量;調整一個或兩個站臺中工件(或多個工件)的位置,直到一合成圖像限定所需的 外觀(步驟1620);并采用經調整的合成圖像的所需的視覺外觀來訓練工件裝配系統(步驟 1630) 〇
[0066] 2.通過計算工件上的特征關系來對準
[0067] 該技術可用于在公共坐標系具有重疊或無重疊視野的裝配系統。在該技術中,用 戶可以使用視覺工具,該視覺工具定位每一工件上的至少一個特征,并計算它們之間在公 共坐標系中的幾何學關系。例如,工件(或多個工件)可包括如上所述的基準點,并可使用基 準點查找器來定位其位置和朝向。然后,用戶可以對工件中的一個或多個進行重定位,直到 虛擬裝配部件的特征之間的幾何學關系匹配對應的裝配部件的設計文件中的關系。可通過 在拾取和放置位置中的至少一個中手動地重定位工件,或通過控制運動平臺,來實現這樣 的移動。在一示例性實施例中,用戶可以定位一個工件上的兩個點特征,和第二工件上的三 個點特征。虛擬裝配系統可設計為取特征對,其中在每一工件上取一個特征,以及測量它們 之間的距離并反饋至用戶。用戶可以重定位工件,直到它們之間的距離與對應的正確裝配 的部件一致。
[0068] 參照圖17的程序1700。在步驟1710中,用戶創建特征查找器,其可以定位第一工件 上的特征并表達為用戶在公共坐標系查找的位置。在步驟1720中,用戶創建特征查找器,其 可以定位第二工件上的特征并表達為用戶在公共坐標系查找的位置。用戶通過使用視覺進 程(或視覺處理器)和關聯的GUI中的視覺工具來執行這一步。然后,在步驟1730中,用戶對 一個或兩個站臺中的工件的位置進行調整,直到特征組之間的關系匹配所需的設計關系。 特征查找器可設計為定位任一圖像(原始圖像、縫合圖像或合成圖像)上的特征。更通常地, 用戶訓練裝配系統,如步驟1740所示。
[0069] 3.自動化引導
[0070] 可選地或者額外地,自動引導能夠用于引導工件至訓練所需的位置。在前述的例 子中,在裝配中用戶會被要求輸入點對之間的距離。一旦用戶輸入校正值,所述裝配系統則 能夠通過移動運動機構(例如操作器運動平臺)移動零件,直至達到需要的虛擬裝配的零件 中的幾何關系。通過使用合適的界面能夠明確地實現此點,所述界面將誤差校正系數轉化 為平臺的線性驅動電機的標示動作(registered motion)。舉例來說,在采用XXY平臺的情 況下,X和Y輸入值沿正交軸線進行平移,而差分XY輸入值則生成相對于Z軸的旋轉(允許3個 自由度上的移動)。只要最終的裝配配置達到系統確認,就能夠通過所述交界面從虛擬裝配 中將誤差校正值直接轉換出來。
[0071] -般地,使用以上訓練技術中的任何一種均能生成一組映射的運動誤差校正值, 所述校正值關于運動平臺的運動控制器或者操作器或者兩者存儲。這些值用于修改運動, 因此工件可通過裝配系統的可復驗部件得到合適的對齊。
[0072] 在另外的實施例中,可清楚地想象到,所述虛擬系統能夠用于在任意數量的工作 站上裝配任意數量的工件。舉例來說,所述虛擬裝配系統能夠聯合物理系統使用,所述物理 系統將典型的工件1六,181,182,1(:裝配進一裝配的單個物體中-其中14在工作站4中成像, WBl和WBl在工作站B中成像,而WC則在工作站C中成像。用戶能夠虛擬地將所有工件裝配至 裝配完整的物體中,而每一裝配工作站/平臺中的裝配誤差則被計算以對物理系統進行訓 練。
[0073] 在進一步的實施例中,可建立群組的視覺系統相機用于虛擬裝配,以使每一群組 包括每一站的至少一個相機,且所有相機映射到公共坐標系。按初始的組,可分別地標定群 組,以使每一群組映射特征至不同的離散的坐標系。然后使用來自這些群組的圖像,執行對 整個對象的虛擬裝配。此外,用于虛擬裝配的一組視覺系統相機,可以與用于訓練和運行物 理裝配系統的相機組相同或不相同。
[0074]應該清楚,以上描述的系統和方法,以避免嘗試使用工件的物理移動帶來出錯的 方式,允許用戶更容易地考慮裝配系統中的動作誤差。該系統和方法還避免使用對設置和 訓練進程增加時間和成本的CMM或相似的計量學裝置。
[0075]前文已經詳細描述了本發明的實施例。在不脫離本發明的發明思想和范圍情況下 可進行各種修改和增加。為提供多種與新實施例相關的結合特征,上述各種實施例中的每 一個實施例的特征可適當地與其他所述實施例的特征相結合。此外,雖然前文描述了一些 本發明的設備和方法的單獨的實施例,但本文的描述僅僅是對本發明原理的應用的說明。 例如,此處所使用的術語"進程(process)"和/或"處理器"應從廣義上來理解,包括各種基 于功能和組件的電子硬件和/或軟件(并可替換地稱為功能性"模塊"或"元件")。此外,一所 述的程序或處理器能夠與其他程序和/或處理器組合或分為多個子程序或處理器。根據此 處的實施例可對這種子程序和/或子處理器進行各種不同的組合。同樣地,可明確設想到, 此處所述的任何功能、程序和/或處理器能夠利用電子硬件、軟件(包括程序指令的非暫時 計算機可讀的媒介)、或硬件和軟件的結合實施。還有,本文應用的方向性和方位性的術語, 如"縱向"、"水平方向"、"上方"、"下方"、"低端"、"頂端"、"側邊"、"前邊"、"后邊"、"左邊"、 "右邊"等,只適用于相對情況,與固定坐標系統中的絕對方位,如重力,不同。因此,該描述 僅僅起示例性的作用,而并不旨在限制。
【主權項】
1. 一種在裝配系統中虛擬裝配物體的系統,具有至少一個含有第一工件的第一工作 站,所述裝配系統在兩者間將第二工件對齊裝配至第一工件,所述系統包括: 一個或者多個視覺系統攝像機以及一視覺系統處理器總成,被設置為對第一工件和第 二工件進行成像,所述多個攝像機在一共用坐標系中標定; 對齊進程,生成所述第一工件和第二工件在所述共用坐標系中的圖像和特征中的至少 一個; 操作進程,具有定位第一工件上的第一組特征和第二工件上的第二組特征的視覺工 具,所述視覺工具相對于第二組特征自動對齊第一組特征,以對齊所述第一工件和第二工 件的圖像和特征中的至少一個;以及 裝配誤差計算模塊,基于在虛擬裝配過程中操作進程的第一工件和第二工件的操作程 度計算裝配誤差。2. 根據權利要求1所述的系統,其中所述第二工件在遠離第一工作站的第二工作站中 成像。3. 根據權利要求2所述的系統,進一步包括至少一個第三工件,所述視覺系統攝像機對 第三工件進行成像,所述對齊進程生成所述第三工件在所述共用坐標系中的圖像和特征中 的至少一個,所述操作進程被設置為允許相對于所述第一工件和第二工件中的至少一個操 作第三工件以將第三工件的圖像和特征中的至少一個和所述第一工件和第二工件中的至 少一個的圖像和特征中的至少一個相對齊,以及其中所述裝配誤差計算模炔基于第三工件 相對于所述第一工件和第二工件中至少一個的操作程度計算裝配誤差。4. 根據權利要求3所述的系統,其中所述第一工件由視覺系統攝像機在第一工作站成 像,以及第二工件和第三工件中的每一個由視覺系統攝像機在第二工作站成像。5. 根據權利要求4所述的系統,進一步包括至少一個由視覺系統攝像機在第四工作站 中成像的第四工件。6. 根據權利要求2所述的系統,進一步包括: (a) 第一標定進程,標定所有對第一工作站成像的視覺系統攝像機至第一坐標系,其中 標定的視覺系統攝像機的全部或者子集適用于在裝配系統的工作時間內使用; (b) 第二標定進程,標定所有對第二工作站成像的視覺系統攝像機至第二坐標系,其中 標定的視覺系統攝像機的全部或者子集適用于在裝配系統的工作時間內使用; (c) 第三標定進程,將第一坐標系和第二坐標系綁定至所述共用坐標系,其使用標定的 視覺系統攝像機的不同離散子集將第一坐標系和第二坐標系綁定至所述共用坐標系;以及 (d) 其中,來自步驟(a)和步驟(b)的在第一工作站和第二工作站中的每一個中標定的 視覺系統攝像機的全部或者子集在虛擬裝配中基于所述共用坐標系使用,所述共用坐標系 基于步驟(a)中的第一標定進程和步驟(b)中的第二標定進程和步驟(c)中第三標定進程建 立。7. 根據權利要求2所述的系統,其中所述第一工作站和第二工作站中的一個為裝配平 臺并且所述第一工作站和第二工作站中的另一個為拾取位置。8. 根據權利要求7所述的系統,其中所述裝配平臺定義一運動平臺,以及所述裝配系統 具有一可復驗的操縱器,所述操縱器從所述拾取位置移動所述第二工件至所述運動平臺。9. 根據權利要求1所述的系統,其中所述裝配誤差在至少3個自由度中定義。10. 根據權利要求1所述的系統,進一步包括顯示器和用戶界面以人工對齊所述第一工 件的至少一個圖像以及所述第二工件的至少一個圖像。11. 根據權利要求1所述的系統,進一步包括至少一個視覺系統攝像機對第一工件和第 二工件中的至少一個進行成像,所述至少一個視覺系統攝像機被構建和設置為獲取圖像, 所述圖像用于所述裝配系統的訓練和運行中的至少一項,并與對齊進程的使用無關。12. 根據權利要求1所述的系統,其中所述操作進程使用(a)縫合的第一工件的圖像以 及(b)縫合的第二工件的圖像中的至少一項。13. 根據權利要求12所述的系統,其中所述第一工件和第二工件的圖像相對于交界面 組成一合成圖像。14. 根據權利要求1所述的系統,其中所述第一工件和第二工件中的至少一個定義由所 述視覺系統攝像機成像的平坦表面。15. -種虛擬裝配物體的方法,使用具有至少一個含有第一工件的第一工作站的裝配 系統,所述裝配系統在兩者間將第二工件對齊裝配至第一工件,所述方法包括: 通過一個或者多個視覺系統攝像機和視覺系統處理器總成獲取第一工件和第二工件 的圖像,所述多個攝像機在一共用坐標系中標定。 生成所述第一工件和第二工件在所述共用坐標系中的圖像和特征中的至少一個; 相對于第一工件自動操作第二工件以對齊所述第一工件和第二工件的圖像和特征中 的至少一個;以及 基于第一工件和第二工件在虛擬裝配過程中的操作程度計算裝配誤差。16. 根據權利要求15所述的方法,其中獲取圖像的步驟包括獲取第二工件在遠離第一 工作站的第二工作站中的圖像。17. 根據權利要求16所述的方法,其中所述第一工作站和第二工作站中的一個為裝配 平臺并且所述第一工作站和第二工作站中的另一個為拾取位置。18. 根據權利要求15所述的方法,其中所述裝配誤差在至少3個自由度中定義。19. 根據權利要求15所述的方法,進一步包括使用顯示器和用戶界面以人工對齊所述 第一工件的至少一個圖像以及所述第二工件的至少一個圖像。
【文檔編號】G05B19/42GK105938618SQ201610121089
【公開日】2016年9月14日
【申請日】2016年3月3日
【發明人】G·希瓦拉姆, W·福斯特
【申請人】康耐視公司