欧美在线观看视频网站,亚洲熟妇色自偷自拍另类,啪啪伊人网,中文字幕第13亚洲另类,中文成人久久久久影院免费观看 ,精品人妻人人做人人爽,亚洲a视频

機(jī)器人控制裝置以及機(jī)器人控制方法

文檔序號:2350305閱讀:241來源:國知局
機(jī)器人控制裝置以及機(jī)器人控制方法
【專利摘要】為了無論同步驅(qū)動過程中的多個機(jī)器人處于實際軌跡上的哪個位置,都能夠盡可能減小把持工件所承受的負(fù)載,機(jī)器人控制裝置具備:變換矩陣生成單元(200),其基于將第1機(jī)器人以及第2機(jī)器人定位于同步驅(qū)動時的各個軌道上的位置校正完畢的指令值即每個機(jī)器人的N個學(xué)習(xí)用指令值,分別針對N個學(xué)習(xí)用指令值生成指令值間的變換矩陣;指令值存儲單元(100),其將定義主控機(jī)器人的軌跡的各個運算周期的第1驅(qū)動用指令值輸出;變換矩陣函數(shù)生成單元(202)以及指令值生成單元(211),它們對所述N個位置關(guān)系矩陣進(jìn)行插補(bǔ),生成各個所述第1驅(qū)動用指令值的變換矩陣;以及指令值生成單元(211),其使插補(bǔ)后的變換矩陣分別作用于所述M個第1驅(qū)動用指令值,生成從屬機(jī)器人的各個運算周期的第2驅(qū)動用指令值。
【專利說明】機(jī)器人控制裝置以及機(jī)器人控制方法

【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及一種一邊使多個機(jī)器人在機(jī)器人之間同步、一邊對多個機(jī)器人進(jìn)行驅(qū)動的機(jī)器人控制裝置以及機(jī)器人控制方法。

【背景技術(shù)】
[0002]出于有效使用機(jī)器人而實施高效生產(chǎn)的目的,當(dāng)前,在生產(chǎn)系統(tǒng)內(nèi)安裝多臺工業(yè)用機(jī)器人的同時,實施多個作業(yè)。特別地,在同時實施多個作業(yè)的多個機(jī)器人之間,對同一工件進(jìn)行諸如把持、支撐、組裝之類的協(xié)調(diào)作業(yè)成為課題,有時在作業(yè)中對工件、機(jī)器人彼此施加過大的負(fù)載。該過大的負(fù)載是由當(dāng)前的各機(jī)器人的把持位置的偏差引起的,具體而言,是與相距不會產(chǎn)生負(fù)載的理想把持位置的位置誤差相對應(yīng)而產(chǎn)生的。產(chǎn)生這種負(fù)載的位置誤差包含各機(jī)器人的安裝位置誤差、由校準(zhǔn)誤差引起的靜態(tài)位置誤差以及因各機(jī)器人的響應(yīng)延遲而產(chǎn)生的動態(tài)位置誤差。在由于多個機(jī)器人各自的把持位置彼此的位置姿態(tài)關(guān)系而產(chǎn)生的作用于工件、機(jī)器人之間的力超過容許值的情況下,例如能夠通過觀察電動機(jī)的電流值而檢測出異常,在檢測出異常時,能夠使機(jī)器人完全地停止。另外,當(dāng)前,出于減小動作過程中的機(jī)器人的相互的位置誤差的目的,提出了很多使各動作的基本周期信號的同步精度提聞的技術(shù)。
[0003]另一方面,開發(fā)有如下技術(shù),S卩,在多個機(jī)器人彼此的指尖(終端執(zhí)行器)的把持位置(指尖位置)的位置姿態(tài)關(guān)系產(chǎn)生了偏差的情況下,通過力的控制而校正位置姿態(tài)。根據(jù)該技術(shù),以如下方式進(jìn)行控制,即,把持位置與產(chǎn)生于指尖的力相對應(yīng)地受到校正,并移動至指尖所承受的力落入力容許范圍內(nèi)的位置處。在上述位置姿態(tài)的校正技術(shù)中,能夠大致分類為主控/從屬方式和阻抗控制方式。主控/從屬方式是如下方式,即,將某個機(jī)器人作為主機(jī)器人(主控機(jī)器人),將其他機(jī)器人作為從機(jī)器人(從屬機(jī)器人),主控機(jī)器人相對于理想的軌跡實施位置控制,其他的從機(jī)器人通過力的控制而追隨主機(jī)器人進(jìn)行動作。另外,在同步控制方式中,也包含在結(jié)構(gòu)中不包括力的控制的同步控制方式。該主控/從屬方式在工業(yè)用途中作為不包含力傳感器的廉價的結(jié)構(gòu)而使用,預(yù)先對主機(jī)器人和從機(jī)器人的位置關(guān)系進(jìn)行定義,根據(jù)與主控的指令值相對應(yīng)而定義的位置關(guān)系對從屬的位置指令值進(jìn)行運算(例如,參照專利文獻(xiàn)I)。另外,阻抗控制方式是如下方式,即,根據(jù)希望的操作對象物體的軌跡,逆向計算各機(jī)器人的軌跡,在將該軌跡設(shè)為指令值的情況下,將機(jī)器人控制在相對于指尖所承受的力而具有適當(dāng)?shù)淖杩固匦缘奈恢锰?,從而針對各個機(jī)器人進(jìn)行希望的運動(例如,參照專利文獻(xiàn)2)。
[0004]專利文獻(xiàn)1:日本特開平7 — 20915號公報
[0005]專利文獻(xiàn)2:日本特開平7 - 256580號公報
[0006]專利文獻(xiàn)3:日本特開2001 — 216012號公報
[0007]專利文獻(xiàn)4:日本特開2011 — 104740號公報
[0008]非專利文獻(xiàn)I 有本卓著「口 〃卜O力學(xué)i制御」朝倉書店出版1990年”


【發(fā)明內(nèi)容】

[0009]然而,根據(jù)上述專利文獻(xiàn)1、2的技術(shù),存在如下問題,即,無法將在各機(jī)器人的動作中所產(chǎn)生的實際軌跡的位置誤差(絕對位置誤差)隨機(jī)器人的位置姿態(tài)、動作速度變動的情況考慮在內(nèi)而生成協(xié)調(diào)動作用的軌跡。由此,例如有時通過協(xié)調(diào)控制實施的作業(yè)復(fù)雜化,有時由于在各機(jī)器人之間的各位置姿態(tài)中的靜態(tài)指尖位置誤差中出現(xiàn)變動,因此會由于指尖的姿態(tài)變更而急劇地產(chǎn)生力。其結(jié)果,在針對作業(yè)對象物、機(jī)械手所容許的力受到限制的情況下,在進(jìn)行協(xié)調(diào)的同時實現(xiàn)高速的動作是困難的。
[0010]本發(fā)明就是鑒于上述情況而提出的,其目的在于得到一種機(jī)器人控制裝置以及機(jī)器人控制方法,無論協(xié)調(diào)動作(同步驅(qū)動)中的多個機(jī)器人處于實際軌跡上的哪個位置,都能夠盡可能降低把持工件所承受的負(fù)載。
[0011]為了解決上述課題、實現(xiàn)目的,本發(fā)明的機(jī)器人控制裝置,其對第I機(jī)器人和與所述第I機(jī)器人不同的第2機(jī)器人進(jìn)行同步驅(qū)動,所述機(jī)器人控制裝置的特征在于,具備--位置關(guān)系矩陣生成部,其基于將所述第I機(jī)器人和所述第2機(jī)器人定位于同步驅(qū)動時的各個軌跡上的位置校正完畢的指令值即每個機(jī)器人的N個第I學(xué)習(xí)用指令值,分別針對所述N個第I學(xué)習(xí)用指令值生成位置關(guān)系矩陣,所述位置關(guān)系矩陣對與所述第I機(jī)器人相關(guān)的第I學(xué)習(xí)用指令值和與所述第2機(jī)器人相關(guān)的第I學(xué)習(xí)用指令值之間的同步驅(qū)動時的位置關(guān)系進(jìn)行定義;第I指令值輸出部,其對定義所述第I機(jī)器人的軌跡的指令值即M(M > N)個的各個運算周期的第I驅(qū)動用指令值進(jìn)行輸出;位置關(guān)系矩陣插補(bǔ)部,其對所述N個位置關(guān)系矩陣進(jìn)行插補(bǔ)而生成針對各個所述第I驅(qū)動用指令值的位置關(guān)系矩陣;以及第2指令值生成部,其使所述插補(bǔ)后的相對應(yīng)的位置關(guān)系矩陣分別作用于所述M個第I驅(qū)動用指令值,而生成對所述第2機(jī)器人的軌跡進(jìn)行定義的指令值即M個第2驅(qū)動用指令值,所述機(jī)器人控制裝置基于所述第I驅(qū)動用指令值驅(qū)動所述第I機(jī)器人,基于所述第2驅(qū)動用指令值驅(qū)動所述第2機(jī)器人。
[0012]發(fā)明的效果
[0013]根據(jù)本發(fā)明,對于第2機(jī)器人的各個運算周期的指令值生成,以考慮了誤差后的形式近似地求出變換矩陣而生成第2機(jī)器人用的指令值,這無需進(jìn)行用于確定機(jī)器人的運動特性以及機(jī)器人的幾何誤差的復(fù)雜的計算就能夠?qū)崿F(xiàn),從而能夠起到如下效果,即,無論同步驅(qū)動過程中的多個機(jī)器人處于實際軌跡上的哪個位置,都能夠盡可能減小施加至把持工件的負(fù)載。

【專利附圖】

【附圖說明】
[0014]圖1是說明利用了本發(fā)明的實施方式I的機(jī)器人控制系統(tǒng)所構(gòu)成的生產(chǎn)系統(tǒng)的圖。
[0015]圖2是說明對比例所涉及的機(jī)器人控制系統(tǒng)的結(jié)構(gòu)的圖。
[0016]圖3是說明終端執(zhí)行器間的理想的位置關(guān)系的圖。
[0017]圖4是說明實施方式I的機(jī)器人控制系統(tǒng)的結(jié)構(gòu)的圖。
[0018]圖5是說明實施方式I的準(zhǔn)備處理的流程圖。
[0019]圖6是說明實施方式I的主控控制裝置的自動運轉(zhuǎn)時的動作的流程圖。
[0020]圖7是說明實施方式I的從屬控制裝置的自動運轉(zhuǎn)時的動作的流程圖。
[0021]圖8是說明實施方式2的機(jī)器人控制系統(tǒng)的結(jié)構(gòu)的圖。
[0022]圖9是說明實施方式2的變換矩陣函數(shù)存儲單元的存儲器結(jié)構(gòu)的圖。
[0023]圖10是說明實施方式2的位置關(guān)系運算裝置生成第2變換矩陣函數(shù)的動作的流程圖。
[0024]圖11是說明實施方式2的從屬控制裝置的自動運轉(zhuǎn)時的動作的流程圖。
[0025]圖12是說明實施方式3的機(jī)器人控制系統(tǒng)的結(jié)構(gòu)的圖。
[0026]圖13是說明實施方式3的變換矩陣函數(shù)存儲單元的存儲器結(jié)構(gòu)的圖。
[0027]圖14是說明實施方式7的機(jī)器人控制系統(tǒng)的結(jié)構(gòu)的圖。
[0028]圖15是說明實施方式7的機(jī)器人控制系統(tǒng)的另一個結(jié)構(gòu)的圖。
[0029]圖16是說明實施方式8的機(jī)器人控制系統(tǒng)的結(jié)構(gòu)的圖。
[0030]圖17是表示在對比例所涉及的機(jī)器人控制系統(tǒng)中,終端執(zhí)行器所承受的作用力和該終端執(zhí)行器的位置之間的關(guān)系的圖。
[0031]圖18是表示在對比例所涉及的機(jī)器人控制系統(tǒng)中應(yīng)用了阻抗控制的情況下,終端執(zhí)行器所承受的作用力和該終端執(zhí)行器的位置之間的關(guān)系的圖。
[0032]圖19是表示在實施方式8的機(jī)器人控制系統(tǒng)中,終端執(zhí)行器所承受的作用力和該終端執(zhí)行器的位置之間的關(guān)系的圖。

【具體實施方式】
[0033]下面,基于附圖詳細(xì)地說明本發(fā)明所涉及的機(jī)器人控制裝置以及機(jī)器人控制方法的實施方式。此外,本發(fā)明并不限定于該實施方式。
[0034]實施方式1.
[0035]圖1是說明利用了本發(fā)明的實施方式I的機(jī)器人控制系統(tǒng)(機(jī)器人控制裝置)所構(gòu)成的生產(chǎn)系統(tǒng)的圖。如圖所示,具備主控機(jī)器人(第I機(jī)器人)10a、從屬機(jī)器人(第2機(jī)器人)10b、控制主控機(jī)器人1a的主控控制裝置20a、控制從屬機(jī)器人1b的從屬控制裝置20b、以及位置關(guān)系運算裝置30。主控機(jī)器人1a通過將在前端具有終端執(zhí)行器Ila的臂部安裝于安裝臺12a而構(gòu)成。同樣地,從屬機(jī)器人1b通過將在前端具有終端執(zhí)行器Ilb的臂部安裝于安裝臺12b而構(gòu)成。此外,關(guān)于機(jī)器人10a、10b,在這里作為一個例子而說明6自由度垂直多關(guān)節(jié)型機(jī)器人。
[0036]主控控制裝置20a、從屬控制裝置20b以及位置關(guān)系運算裝置30由通信線彼此連接,構(gòu)成一邊使主控機(jī)器人1a以及從屬機(jī)器人1b同步一邊進(jìn)行驅(qū)動的機(jī)器人控制系統(tǒng)(機(jī)器人控制裝置)。主控控制裝置20a生成對終端執(zhí)行器Ila進(jìn)行定位的位置指令值,基于該生成的位置指令值驅(qū)動終端執(zhí)行器11a。另外,主控控制裝置20a將與終端執(zhí)行器Ila相關(guān)的位置指令值發(fā)送至從屬控制裝置20b。位置關(guān)系運算裝置30對規(guī)定協(xié)調(diào)動作時的終端執(zhí)行器IlaUlb之間的位置關(guān)系的位置關(guān)系信息進(jìn)行運算,以使得終端執(zhí)行器Ila和終端執(zhí)行器Ilb能夠保持同一工件而協(xié)調(diào)地對該工件(把持工件)進(jìn)行輸送。并且,位置關(guān)系運算裝置30將得到的位置關(guān)系信息發(fā)送至從屬控制裝置20b。從屬控制裝置20b通過使終端執(zhí)行器IlaUlb之間的位置關(guān)系信息作用于對終端執(zhí)行器Ila進(jìn)行定位的位置指令值,從而計算用于對終端執(zhí)行器Ilb進(jìn)行定位的位置指令值。并且,從屬控制裝置20b基于計算出的位置指令值驅(qū)動終端執(zhí)行器lib。
[0037]在這里,對與本發(fā)明的實施方式I進(jìn)行比較的技術(shù)(以下,稱為對比例)進(jìn)行說明。圖2是說明對比例所涉及的機(jī)器人控制系統(tǒng)的結(jié)構(gòu)的圖。此外,在這里,為了與實施方式I進(jìn)行區(qū)別,對應(yīng)用于對比例的位置關(guān)系運算裝置標(biāo)注標(biāo)號50,對主控控制裝置標(biāo)注標(biāo)號40a,對從屬控制裝置標(biāo)注標(biāo)號40b。另外,對于主控控制裝置40a以及從屬控制裝置40b所具備的、僅作用對象是主控系統(tǒng)(主控機(jī)器人10a、主控控制裝置40a)、還是從屬系統(tǒng)(從屬機(jī)器人10b、從屬控制裝置40b)這一點不同而功能相同的結(jié)構(gòu)要素,在從屬于主系統(tǒng)的情況下,對標(biāo)號標(biāo)注字母“a”,在從屬于從屬系統(tǒng)的情況下,對標(biāo)號標(biāo)注字母“b”,由此進(jìn)行區(qū)別。另外,對于僅所從屬的系統(tǒng)不同而功能相同的結(jié)構(gòu)要素的2個結(jié)構(gòu)要素,有時僅說明一方,省略另一方的說明。
[0038]主控控制裝置40a具備:指令值存儲單元100,其預(yù)先存儲將終端執(zhí)行器Ila的指令軌跡按照每個運算周期進(jìn)行定義的M個位置指令值;校正量生成單元102a,其對與M個位置指令值(以下,簡稱為指令值)之中的第Tm (Tm是滿足I彡Tm彡M的整數(shù))個指令值(第Tm個指令值)對應(yīng)的校正量(第Tm個校正量)進(jìn)行計算;校正指令值生成單元101a,其基于第Tm個指令值和第Tm個校正量,生成對第Tm個指令值進(jìn)行校正后的第Tm個校正指令值;驅(qū)動控制單元103a,其由伺服放大器以及伺服電動機(jī)構(gòu)成,對主控機(jī)器人1a進(jìn)行驅(qū)動以使得終端執(zhí)行器Ila追隨第Tm個校正指令值;以及當(dāng)前位置檢測單元104a,其由編碼器等構(gòu)成,對基于第Tm個校正指令值進(jìn)行動作中的終端執(zhí)行器Ila的當(dāng)前位置(第Tm個當(dāng)前位置)進(jìn)行檢測,將第Tm個當(dāng)前位置反饋至驅(qū)動控制單元103a。
[0039]校正量生成單元102a具備作用力運算單元105a、校正量運算單元106a以及校正量存儲單元107a。作用力運算單元105a對發(fā)生于終端執(zhí)行器Ila的作用力進(jìn)行運算。校正量存儲單元107a對計算出的校正量(即,第Tl個校正量?第Tm — I個校正量)進(jìn)行累積存儲。校正量運算單元106a利用第Tl個校正量?第Tm — I個校正量,以使發(fā)生于終端執(zhí)行器Ila的作用力變小的方式,計算第Tm個校正量。所計算出的第Tm個校正量被發(fā)送至校正指令值生成單元101a,并且存儲至校正量存儲單元107a。
[0040]位置關(guān)系運算裝置50對矩陣(變換矩陣)進(jìn)行運算,該矩陣(變換矩陣)將對終端執(zhí)行器Ila進(jìn)行定位的指令值和對終端執(zhí)行器Ilb進(jìn)行定位的指令值之間的位置關(guān)系定義為位置關(guān)系信息。通過使該變換矩陣作用于對終端執(zhí)行器Ila進(jìn)行定位的指令值,從而能夠得到對終端執(zhí)行器Ilb進(jìn)行定位的指令值。
[0041]從屬控制裝置40b具備:變換矩陣存儲單元109,其對位置關(guān)系運算裝置50所計算出的變換矩陣進(jìn)行存儲;指令值生成單元108,其使變換矩陣存儲單元109所存儲的變換矩陣作用于對終端執(zhí)行器Ila進(jìn)行定位的第Tm個指令值,生成對終端執(zhí)行器Ilb進(jìn)行定位的第Tm個指令值;校正量生成單元102b,其計算對與終端執(zhí)行器Ilb相關(guān)的第Tm個指令值進(jìn)行校正的第Tm個校正量;校正指令值生成單元101b,其基于與終端執(zhí)行器Ilb相關(guān)的第Tm個指令值和第Tm個校正量,生成第Tm個校正指令值;驅(qū)動控制單元103b,其由伺服放大器以及伺服電動機(jī)構(gòu)成,基于與終端執(zhí)行器Ilb相關(guān)的第Tm個校正指令值對從屬機(jī)器人1b進(jìn)行驅(qū)動;以及當(dāng)前位置檢測單元104b,其由編碼器等構(gòu)成,對終端執(zhí)行器Ilb的第Tm個當(dāng)前位置進(jìn)行檢測,將該檢測出的第Tm個當(dāng)前位置反饋至驅(qū)動控制單元103b。校正量生成單元102b由于具備與校正量生成單元102a等同的結(jié)構(gòu),因此省略說明。
[0042]在這里,對位置關(guān)系運算裝置50所計算出的變換矩陣進(jìn)行說明。該變換矩陣表示旋轉(zhuǎn)量和位置,通常被稱為同階變換矩陣。在將直角坐標(biāo)系表示為S1、將2個直角坐標(biāo)系Σ I和Σ2之間的變換矩陣表示為1T2的情況下,如果將旋轉(zhuǎn)矩陣表示為1R2 (3X3要素的正方矩陣),將從直角坐標(biāo)系Σ1觀察出的直角坐標(biāo)系Σ2的位置表示為1P2GXl要素的矢量),將1X3的零矢量表示為zero (1,3),則同階變換矩陣按照下式(I)進(jìn)行表示。
[0043]T2 = [1R2Zp2 ;
[0044]zero (1,3), I] (I)
[0045]此外,在以I個坐標(biāo)系Σ i為基準(zhǔn)而將點a的位置姿態(tài)表示為iTa的情況下,以另一個坐標(biāo)系Σ i+1為基準(zhǔn)的點a的位置姿態(tài)i+1Ta利用從Σ i向Σ i+Ι的變換矩陣wTi而按照下式(2)進(jìn)行表示。
[0046]i+1Ta = wTjiTa (2)
[0047]圖3是說明終端執(zhí)行器IlaUlb之間的理想的位置關(guān)系的圖。在這里,Xrobl是以安裝臺12a為基準(zhǔn)的坐標(biāo)系(主控機(jī)器人坐標(biāo)系),Σ_2是以安裝臺12b為基準(zhǔn)的坐標(biāo)系(從屬機(jī)器人坐標(biāo)系),Swld是絕對坐標(biāo)系(世界坐標(biāo)系),ΣΕ1是以終端執(zhí)行器Ila為基準(zhǔn)的坐標(biāo)系,ΣΕ2是以終端執(zhí)行器Ilb為基準(zhǔn)的坐標(biāo)系。理想的環(huán)境是指所指示的角度和所指示的位置一致的環(huán)境,換言之,是指不存在絕對位置誤差的環(huán)境。在這樣的環(huán)境中,作為主控/從屬之間的變換矩陣,能夠利用下述式(3)。其中,“Α — 1”表示與矩陣A相關(guān)的逆矩陣。
[0048]eiTe2 = CldTro ^omTei)-1 wldTrob2rob2TE2 (3)
[0049]然而,在現(xiàn)實的環(huán)境中,由于安裝誤差、齒隙、臂部的撓曲、終端執(zhí)行器IlaUlb的誤差、減速器的剛性的影響等原因,在終端執(zhí)行器IlaUlb的指尖位置處產(chǎn)生絕對位置誤差,因此通常指尖位置和工件之間的位置關(guān)系不是希望的位置關(guān)系。因此,使用者在啟動生產(chǎn)系統(tǒng)的情況下,例如通過對未圖示的示教用操作面板等進(jìn)行操作,從而一邊通過目視等確認(rèn)實物的機(jī)器人10a、10b與工件的位置關(guān)系,一邊使機(jī)器人10a、10b移動,由此將各誤差并入指令值,以使得終端執(zhí)行器IlaUlb之間保持希望的相對位置關(guān)系并執(zhí)行希望的動作。在使用者使終端執(zhí)行器IlaUlb移動至各誤差被抑制得較小的場所時,控制裝置20a、20b內(nèi)的指令值?biT’Ei(i = 1、2)被設(shè)定為定位于該示教點的指令值。其中,“’ ”是對考慮了通過示教進(jìn)行的對位所得到的變換矩陣標(biāo)注的標(biāo)號。
[0050]并入有誤差的指令= 1、2)分別輸入至位置關(guān)系運算裝置50。位置關(guān)系運算裝置50將并入誤差后的指令值MblT’ E1Z0b2T' E2分別代入式(3)的MblTE1、?b2TE2,將得到的eiTe2設(shè)為E1T’E2。
[0051]如上所述,E1T’ E2是在開始通常動作(對機(jī)器人10a、10b進(jìn)行同步驅(qū)動,以下也稱為自動運轉(zhuǎn))之前進(jìn)行計算的。并且,計算出的E1T’E2作為用于進(jìn)行自動運轉(zhuǎn)時的位置變換的變換矩陣而使用。即,在自動運轉(zhuǎn)時,在從屬控制裝置40b中,為了進(jìn)行追隨主控控制裝置40a的校正指令值的動作,利用主控控制裝置40a側(cè)的指令值和變換矩陣,在指令值生成單元108中生成針對終端執(zhí)行器Ilb的指令值。此時,指令值生成單元108利用世界坐標(biāo)系向主控機(jī)器人坐標(biāo)系的變換矩陣wldIrabl、世界坐標(biāo)系向從屬機(jī)器人坐標(biāo)系的變換矩陣wldTrob2以及所述的變換矩陣E1T’E2,基于下式(4)計算從屬控制裝置40b的指令值—1^2。
[0052]?b2TE2 = (wldTrob2) _VoblTE1*E1T,E2 (4)
[0053]然而,在上述對比例中,由于在主控/從屬之間的指令值的變換中使用的變換矩陣,被固定為在通過某個特定的機(jī)器人姿態(tài)取得的示教點處計算出的E1T’ E2,因此例如即使指令值基于作用力而受到校正,將機(jī)器人彼此或者機(jī)器人與工件的位置關(guān)系在協(xié)調(diào)動作中的軌跡上的全部位置處保持為恒定狀態(tài)也是困難的。因此,在實施方式I中,為了能夠在同步驅(qū)動過程中的軌跡上的全部位置處將機(jī)器人彼此或者機(jī)器人與工件的位置關(guān)系保持為恒定,需要針對M個指令值分別計算變換矩陣E1T’ E2。
[0054]圖4是對利用了本發(fā)明的實施方式I的位置關(guān)系運算裝置的機(jī)器人控制系統(tǒng)進(jìn)行說明的圖。在這里,對具有與對比例相同的功能的結(jié)構(gòu)要素,標(biāo)注相同的標(biāo)號,省略重復(fù)的說明。
[0055]如圖所示,主控控制裝置20a具備指令值存儲單元100、校正量生成單元102a、校正指令值生成單元101a、驅(qū)動控制單元103a以及當(dāng)前位置檢測單元104a。校正量生成單元102a具備作用力運算單元105a、校正量運算單元106a以及校正量存儲單元107a。
[0056]位置關(guān)系運算裝置30具備:變換矩陣生成單元200,其基于定位于包含動作開始位置在內(nèi)的N (N是小于M而大于或等于2的自然數(shù))個示教點的指令值,針對每個示教點分別計算變換矩陣(學(xué)習(xí)用變換矩陣);變換矩陣存儲單元201,其對N個學(xué)習(xí)用變換矩陣進(jìn)行存儲;以及變換矩陣函數(shù)生成單元202,其基于N個學(xué)習(xí)用變換矩陣而計算變換矩陣函數(shù)。對于變換矩陣函數(shù)的詳細(xì)內(nèi)容,在后文中進(jìn)行敘述。所計算出的變換矩陣函數(shù)作為實施方式I的位置關(guān)系信息而發(fā)送至從屬控制裝置20b。
[0057]從屬控制裝置20b具備:變換矩陣函數(shù)存儲單元210,其對位置關(guān)系運算裝置30所計算出的變換矩陣函數(shù)進(jìn)行存儲;指令值生成單元211,其基于針對終端執(zhí)行器Ila的第Tm個指令值(第I驅(qū)動用指令值)和變換矩陣函數(shù),生成對終端執(zhí)行器Ilb進(jìn)行定位的第Tm個指令值(第2驅(qū)動用指令值);校正量生成單元102b ;校正指令值生成單元1lb ;驅(qū)動控制單元103b ;以及當(dāng)前位置檢測單元104b。校正量生成單元102b具備與校正量生成單元102a等同的結(jié)構(gòu)。
[0058]在這里,根據(jù)實施方式1,校正指令值生成單元101a、101b、以及校正量生成單元102a、102b協(xié)同動作,作為位置校正完畢指令值生成部起作用,該位置校正完畢指令生成部生成分別利用同步驅(qū)動時的N個指令值而定位于軌跡上的每個機(jī)器人的位置校正完畢的指令值(后述的學(xué)習(xí)用指令值、第I學(xué)習(xí)用指令值)。另外,指令值存儲單元100作為第I指令值輸出部起作用,該第I指令值輸出部將定義終端執(zhí)行器Ila的軌跡的M (M > N)個的各個運算周期的指令值(第I驅(qū)動用指令值)輸出。此外,在這里,說明了指令值存儲單元100預(yù)先對指令值進(jìn)行存儲、并將所存儲的指令值輸出的結(jié)構(gòu),但也可以將基于規(guī)定運算逐次生成指令值的功能部用作第I指令值輸出部。另外,變換矩陣函數(shù)生成單元202以及指令值生成單元211協(xié)同動作而作為位置關(guān)系矩陣插補(bǔ)部起作用,該位置關(guān)系矩陣插補(bǔ)部對N個變換矩陣進(jìn)行插補(bǔ)而生成針對終端執(zhí)行器Ila的每一個指令值的變換矩陣。另外,指令值生成單元211作為第2指令值生成部起作用,該第2指令值生成部使插補(bǔ)后的變換矩陣分別作用于每個運算周期的指令值,生成對終端執(zhí)行器Ilb的軌跡進(jìn)行定義的M個指令值(第2驅(qū)動用指令值)。
[0059]下面,對利用圖4所示的機(jī)器人控制系統(tǒng)而執(zhí)行的本發(fā)明的實施方式I的機(jī)器人控制方法進(jìn)行說明。圖5是對實施方式I的機(jī)器人控制方法中的以離線方式執(zhí)行的準(zhǔn)備處理進(jìn)行說明的流程圖。
[0060]使用者首先利用示教用操作面板等使終端執(zhí)行器IlaUlb移動至協(xié)調(diào)動作時的軌跡上的示教點(步驟SI)。此時,使用者實際上能夠使終端執(zhí)行器IlaUlb對工件進(jìn)行把持等而對終端執(zhí)行器IlaUlb的指尖位置進(jìn)行調(diào)整,使控制裝置20a、20b取得此時的位置。此外,位置調(diào)整在N個示教點處分別執(zhí)行。
[0061]校正指令值生成單元1la將在第Tk (Tk是滿足I彡Tk彡N的整數(shù))個示教點處所得到的終端執(zhí)行器Ila的位置,作為與主控機(jī)器人1a相關(guān)的第Tk個指令值(學(xué)習(xí)用指令值)而存儲至指令值存儲單元100中,并且將該學(xué)習(xí)用指令值輸出至位置關(guān)系運算裝置30 (步驟S2)。另外,校正指令值生成單元1lb將執(zhí)行步驟S2時的終端執(zhí)行器Ilb的位置,作為與從屬機(jī)器人1b相關(guān)的第Tk個學(xué)習(xí)用指令值而輸出至位置關(guān)系運算裝置30 (步驟
S3)。
[0062]此外,在實際上使終端執(zhí)行器IlaUlb把持工件而進(jìn)行位置調(diào)整的情況下,校正量生成單元102a直至作用力運算單元105a所計算出的作用力被校正成為小于或等于規(guī)定值為止,持續(xù)校正量的計算,校正指令值生成單元1la利用逐次計算的校正量,對與從指令值存儲單元100供給的規(guī)定指令值相加而得到的校正量進(jìn)行更新,在得到作用力小于或等于規(guī)定值的校正指令值時,能夠?qū)⒃撔U噶钪翟O(shè)為學(xué)習(xí)用指令值。此外,作用力的測量、基于測量出的作用力的校正量計算、以及根據(jù)計算出的校正量所進(jìn)行的指令值校正,在從屬控制裝置20b中也以相同的方式執(zhí)行,所得到的校正指令值通過步驟S3的處理而作為學(xué)習(xí)用指令值輸出。此外,在位置的調(diào)整中暫時供給至校正指令值生成單元1laUOlb的指令值也可以是規(guī)定的固定值。
[0063]另外,由作用力運算單元105a進(jìn)行的作用力的測量方法可以為任意方法。例如,可以采用在機(jī)器人的手腕部分安裝力覺傳感器(力傳感器),將該力覺傳感器的檢測值作為作用力的檢測值的方法,或者利用雅克比J(機(jī)器人的自由度)從扭矩τ通過靜力學(xué)對指尖作用力f (3軸力+3力矩)進(jìn)行推定的方法(τ = JT*f,其中,Jt是矩陣J的轉(zhuǎn)置矩陣)。另外,能夠采用根據(jù)機(jī)器人10a、10b的各軸的電動機(jī)電流計算各軸的扭矩,從計算出的扭矩的輸出對指尖作用力進(jìn)行推定的方法,或者代替電動機(jī)電流而在各軸上安裝扭矩傳感器,根據(jù)從扭矩傳感器得到的輸出扭矩對作用力進(jìn)行推定的方法。
[0064]此外,在這里,對實際上使終端執(zhí)行器IlaUlb把持工件而進(jìn)行位置調(diào)整,校正指令值作為學(xué)習(xí)用指令值而記錄的內(nèi)容進(jìn)行說明,但在不使終端執(zhí)行器IlaUlb把持工件而進(jìn)行位置調(diào)整的情況下,校正指令值生成單元1la能夠?qū)?dāng)前位置檢測單元104a所檢測的、作為反饋信號而使用的位置檢測值設(shè)為學(xué)習(xí)用指令值。在從屬控制裝置20b中也是相同的。另外,即使在實際上使終端執(zhí)行器IlaUlb把持工件而進(jìn)行位置調(diào)整的情況下,也可以將當(dāng)前位置檢測單元104a、104b所檢測出的位置檢測值設(shè)為學(xué)習(xí)用指令值。
[0065]另外,在控制裝置20a、20b不具有檢測作用力的單元的情況下,使用者也可以隨作業(yè)區(qū)域或者姿態(tài)的變化而手動地對終端執(zhí)行器Ilb的位置進(jìn)行微調(diào)。此時,從屬控制裝置20b能夠通過使預(yù)先暫時確定的固定的變換矩陣1ET’ E2作用于與主控機(jī)器人1a對應(yīng)的示教點,從而能夠驅(qū)動終端執(zhí)行器lib。并且,使用者能夠通過目視,或者通過將能夠檢測力或者變形的傳感器附加至工件,從而針對姿態(tài)或者位置變化的每個點觀察工件的狀態(tài),基于觀察的結(jié)果,利用操作面板進(jìn)行微調(diào)。此外,無法測量作業(yè)力的情況能夠想到如下情況,即,在終端執(zhí)行器I la、I Ib上不存在單純地測量作用力的傳感器,且沒有對來自電動機(jī)輸出的指尖作用力進(jìn)行計算的功能的情況,或者在協(xié)調(diào)動作中主控側(cè)的機(jī)器人與工件接觸,但從屬側(cè)的機(jī)器人未與工件接觸的情況。
[0066]使用者對是否針對全部(在這里為N個)示教點進(jìn)行了位置調(diào)整進(jìn)行判定(步驟
S4),在未針對全部的示教點進(jìn)行位置調(diào)整的情況下(步驟S4中為No),在步驟SI中,進(jìn)行與下一個示教點相關(guān)的位置調(diào)整。
[0067]這樣,通過使終端執(zhí)行器Ila移動至示教點,使終端執(zhí)行器Ilb移動至示教點上的與終端執(zhí)行器Ila相對應(yīng)的位置處,從而能夠得到分別針對終端執(zhí)行器IlaUlb的軌跡上的N個指令值而并入了絕對位置誤差后的指令值(位置校正完畢的指令值)。
[0068]如果全部的示教點的位置調(diào)整完畢(步驟S4中為Yes),則在位置關(guān)系運算裝置30中,變換矩陣生成單元200將第Tk個學(xué)習(xí)用指令值、和在決定出第Tk個學(xué)習(xí)用指令值的時刻校正指令值生成單元1lb所生成的校正指令值作為輸入,生成第Tk個變換矩陣(學(xué)習(xí)用變換矩陣)(步驟S5)。此外,變換矩陣生成單元200將所生成的學(xué)習(xí)用變換矩陣存儲至變換矩陣存儲單元201。學(xué)習(xí)用變換矩陣的生成是分別針對N個示教點而執(zhí)行的。
[0069]接下來,變換矩陣函數(shù)生成單元202基于存儲于變換矩陣存儲單元201中的N個學(xué)習(xí)用變換矩陣,生成變換矩陣函數(shù)(步驟S6)。
[0070]在這里,變換矩陣函數(shù)是針對N個變換矩陣E1T’ E2 (k),k = 1,2,...,N規(guī)定對變換矩陣進(jìn)行插補(bǔ)的變換矩陣組的函數(shù),且是基于N個學(xué)習(xí)用指令值將整個軌跡分為N — I個區(qū)間,并將各區(qū)間的移動比例rate作為變量的函數(shù)。以下說明由變換矩陣函數(shù)生成單元202進(jìn)行的變換矩陣函數(shù)的計算方法。
[0071]在將第k個學(xué)習(xí)用指令值Pk和第k+Ι個學(xué)習(xí)用指令值Pk+1之間的距離設(shè)為Lall (k, k+Ι),將當(dāng)前時刻Tnow的剩余移動距離設(shè)為Lr (k, k+1, Tnow)的情況下的移動比例rate(k, k+1, Tnow)按照下式(5)進(jìn)行定義。
[0072]rate (k, k+1, Tnow) = (Lai I (k, k+1) -Lr (k, k+1, Tnow)) / (Lai I (k, k+1)) (5)
[0073]由rate(k,k+1, Tnow)表示的當(dāng)前位置的變換矩陣,能夠通過變換矩陣函數(shù)eiT' E2 (rate (k, k+1, Tnow))求出。下面,對變換矩陣函數(shù) E1T’E2 (rate (k, k+1, Tnow))的旋轉(zhuǎn)成分和平移成分的計算方法進(jìn)行說明。
[0074]首先,平移位置E1P’E2 (rate (k, k+1, Tnow))按照如下方式求出。如果將Pk和Pk+1的終端執(zhí)行器IlaUlb的指尖位置的相對的平移的變動量設(shè)為旋轉(zhuǎn)矩陣APkJU APk按照下式(6)進(jìn)行表示。
[0075]APk = eiP,E2 (Pk+1) -eiP,E2 (Pk) (6)
[0076]因此,在終端執(zhí)行器Ila的當(dāng)前位置為rate(k,k+1, Tnow)的情況下,平移位置eiP' E2 (rate (k, k+1, Tnow))利用 APk,按照下式(7)進(jìn)行表示。
[0077]E1P,E2 (rate (k, k+1, Tnow)) = E1P,E2 (Pk) + Δ Pk*rate (k, k+1, Tnow) (7)
[0078]下面,對變換矩陣函數(shù)E1T’E2(rate(k,k+1, Tnow))的旋轉(zhuǎn)成分即旋轉(zhuǎn)矩陣eiR' E2 (rate (k,k+1,Tnow))的計算方法進(jìn)行說明。如果將Pk和Pk+1的終端執(zhí)行器11a、Ilb的指尖位置的相對的旋轉(zhuǎn)矩陣變動量由旋轉(zhuǎn)矩陣Λ Rk表示,則Λ Rk按照下式⑶進(jìn)行表
/Jn ο
[0079]ARk = (E1R,E2 (Pk)) (E1R,E2 (Pk+1)) ―1 (8)
[0080]在這里,作為用于表示Pk和Pk+Ι之間的移動比例rate (k, k+1, Tnow)的方法,已知例如利用通過單軸旋轉(zhuǎn)法得到的旋轉(zhuǎn)軸矢量k和旋轉(zhuǎn)量α表示旋轉(zhuǎn)矩陣的方法。此時,采用使ct與rate (k, k+1, Tnow)相對應(yīng)而不斷變化的方法。具體而言,如果利用單軸旋轉(zhuǎn)法,則Λ Rk利用旋轉(zhuǎn)軸矢量k和旋轉(zhuǎn)量α而等價地表示。旋轉(zhuǎn)矩陣和[k,α]具有如下所不的關(guān)系式。
[0081 ] Δ Rk = [kx2*V a +C a , kx*ky*V a +C α , kx*kz*V α +C α ;
[0082]ky*kx*V α +C α , kx2*V α +C α , ky*kz*V α +C α ;
[0083]kz*kx*V α +C α , kz*ky*V α +C α , kx2*V α +C α ] (9)
[0084]k = [kx, ky, kz] (10)
[0085]V α =1-Ca (11)
[0086]Ca =cosa (12)
[0087]此時,α作為與移動比例rate相對應(yīng)地變化的a now,定義如下。
[0088]a now = a *rate(k, k+1, Tnow) (13)
[0089]通過利用當(dāng)前旋轉(zhuǎn)量a now,旋轉(zhuǎn)矩陣的當(dāng)前的變動量即AR (rate (k, k+1,Tnow))按照如下方式進(jìn)行定義。
[0090]Δ R (rate (k, k+1, Tnow))
[0091]= [kx2*V a now+C a now, kx*ky*V a now+C a now, kx*kz*V a now+C a now ;
[0092]ky氺kx氺V a now+C a now, kx2氺V a now+C a now, ky氺kz氺V a now+C a now ;
[0093]kz*kx*V a now+C a now, kz*ky*V a now+C a now, kx2*V a now+C a now] (14)
[0094]eiRj E2(rate(k, k+1, Tnow)) = (E1R,E2(Pk))* Δ R(rate (k, k+1, Tnow)) (15)
[0095]在Λ R(rate —k,k+1)與移動位置對應(yīng)地變更的情況下,除了上述方法,還可以采用利用四元數(shù)表示法對旋轉(zhuǎn)矩陣進(jìn)行運算,將通過四元數(shù)法計算出的結(jié)果變換為旋轉(zhuǎn)矩陣的方法。
[0096]利用通過以上運算所得到的平移位置£中\(zhòng)2(1^仏(1^,k+1, Tnow))和旋轉(zhuǎn)矩陣eiR' E2 (rate (k, k+1, Tnow)),變換矩陣 E1T’ E2 (rate (k, k+1, Tnow))按照如下方式進(jìn)行表示。
[0097]eiTj E2 (rate (k, k+1, Tnow))
[0098]= [E1R,E2 (rate (k, k+1, Tnow)), eiP,E2 (rate (k, k+1, Tnow));
[0099]zero (1,3), I] (16)
[0100]變換矩陣函數(shù)生成單元202基于以上計算方法而求出的變換矩陣函數(shù),被發(fā)送至從屬控制裝置20b,存儲于變換矩陣函數(shù)存儲單元210。
[0101]通過步驟SI?步驟S6的處理,用于進(jìn)行協(xié)調(diào)動作的準(zhǔn)備處理完畢。然后,使用者能夠使機(jī)器人控制系統(tǒng)的自動運轉(zhuǎn)開始。
[0102]圖6是對實施方式I的機(jī)器人控制方法中的主控控制裝置20a的自動運轉(zhuǎn)時的動作進(jìn)行說明的流程圖,圖7是對實施方式I的機(jī)器人控制方法中的從屬控制裝置20b的自動運轉(zhuǎn)時的動作進(jìn)行說明的流程圖。
[0103]在主控控制裝置20a中,如圖6所示,首先,校正指令值生成單元1la將Tm初始化為I (步驟Sll),將存儲于指令值存儲單元100中的第Tm個指令值取出(步驟S12)。另一方面,校正量生成單元102a基于在校正量存儲單元107a中累積的與直至第Tm-1個指令值為止的指令值相關(guān)的校正量、和作用力運算單元105a測量出的作用力,計算第Tm個校正量(步驟S13)。校正指令值生成單元1la將取出的第Tm個指令值和第Tm個校正量相加,生成第Tm個校正指令值(步驟S14)。此外,驅(qū)動控制單元103a能夠基于所生成的第Tm個校正指令值,進(jìn)行終端執(zhí)行器Ila的定位。在步驟S14之后,校正指令值生成單元1la使Tm遞加I (步驟S15),執(zhí)行步驟Sll的處理。此外,在步驟S15中,在遞加前的Tm的值與指令值的總數(shù)即M相等的情況下,可以設(shè)為Tm = I。
[0104]在從屬控制裝置20b中,如圖7所示,首先,指令值生成單元211將Tm初始化為I (步驟S21),將存儲于指令值存儲單元100中的第Tm個指令值取出(步驟S22)。另外,指令值生成單元211對包含所取出的第Tm個指令值的區(qū)間(由Pk、Pk+1表示的區(qū)間)以及rate (k, k+1, Tnow)進(jìn)行計算(步驟S23)。并且,指令值生成單元211基于式13?式16對變換矩陣E1T’ E2 (rate (k,k+1, Tnow))進(jìn)行計算(步驟S24),使所述計算出的變換矩陣eiT1e2 (rate (k, k+1, Tnow))作用于所取得的第Tm個指令值,生成針對終端執(zhí)行器Ilb的第Tm個指令值(步驟S25)。另一方面,校正量生成單元102b基于在校正量存儲單元107b中累積的與直至第Tm-1個指令值為止的指令值相關(guān)的校正量、和作用力運算單元105b測量出的作用力,計算第Tm個校正量(步驟S26)。校正指令值生成單元1lb將所生成的第Tm個指令值和第Tm個校正量相加,生成第Tm個校正指令值(步驟S27)。此外,驅(qū)動控制單元103b能夠基于所生成的第Tm個校正指令值,進(jìn)行終端執(zhí)行器Ilb的定位。在步驟S27之后,指令值生成單元211使Tm遞加1(步驟S28),執(zhí)行步驟S22的處理。此外,在步驟S27中,在遞加前的Tm的值與指令值的總數(shù)即M相等的情況下,可以設(shè)為Tm = I。
[0105]此外,主控控制裝置20a的Tm的值與從屬控制裝置20b的Tm的值為同步的值。
[0106]此外,指令值存儲單元100、校正指令值生成單元101a、作用力運算單元105a、校正量運算單元106a以及校正量存儲單元107a中的一部分或者全部可以通過硬件以及軟件中的某一個、或者兩者的組合而實現(xiàn)。通過軟件實現(xiàn)是指在具備運算裝置以及存儲裝置的計算機(jī)中,將與結(jié)構(gòu)要素相對應(yīng)的程序模塊預(yù)先存儲至存儲裝置,運算裝置執(zhí)行存儲于該存儲裝置中的程序模塊,從而實現(xiàn)相對應(yīng)的結(jié)構(gòu)要素的功能。此外,作為指令值存儲單元100以及校正量存儲單元107a的功能,通過在各個存儲裝置內(nèi)確保相對應(yīng)的區(qū)域來實現(xiàn)。
[0107]同樣地,位置關(guān)系運算裝置30的結(jié)構(gòu)要素中的一部分或者全部能夠通過硬件以及軟件中的某一個、或者兩者的組合而實現(xiàn)。另外,指令值生成單元211、變換矩陣函數(shù)存儲單元210、校正指令值生成單元101b、作用力運算單元105b、校正量運算單元106b以及校正量存儲單元107b中的一部分或者全部能夠通過硬件以及軟件中的某一個,或者兩者的組合而實現(xiàn)。
[0108]另外,將主控控制裝置20a、從屬控制裝置20b以及位置關(guān)系運算裝置30作為彼此不同的裝置而進(jìn)行了說明,但也能夠?qū)⑦@些裝置中的任意兩個或者全部作為I個裝置而實現(xiàn)。另外,這些裝置也能夠分別分割為多個裝置而實現(xiàn)。
[0109]另外,在以上的說明中,對在主控控制裝置20a以及從屬控制裝置20b兩者中基于作用力而進(jìn)行校正的結(jié)構(gòu)進(jìn)行了說明,但也可以僅在某一方的控制裝置中基于作用力進(jìn)行校正。
[0110]另外,在以上的說明中,對應(yīng)用于具有2個機(jī)器人(主控機(jī)器人1a以及從屬機(jī)器人1b)的生產(chǎn)系統(tǒng)的例子進(jìn)行了說明,但本發(fā)明的實施方式I也能夠應(yīng)用于大于或等于3個的機(jī)器人進(jìn)行協(xié)調(diào)動作的生產(chǎn)系統(tǒng)。此時,能夠?qū)⑦M(jìn)行協(xié)調(diào)動作的機(jī)器人中的I個作為主控機(jī)器人,將其他全部機(jī)器人作為從屬機(jī)器人而應(yīng)用實施方式I。
[0111]如以上所述,根據(jù)本發(fā)明的實施方式1,機(jī)器人控制裝置構(gòu)成為具備:作為位置關(guān)系矩陣生成部的變換矩陣生成單元200,其基于分別利用同步驅(qū)動時的N個指令值而進(jìn)行定位的每個機(jī)器人的位置校正完畢的指令值,分別針對N個指令值而生成作為位置關(guān)系矩陣的學(xué)習(xí)用變換矩陣,所述位置關(guān)系矩陣對機(jī)器人之間的位置校正完畢的指令值的位置關(guān)系進(jìn)行定義;作為第I指令值輸出部的指令值存儲單元100,其對定義主控機(jī)器人1a的軌跡的M(M>N)個運算周期中每一個運算周期的主控機(jī)器人1a所對應(yīng)的指令值進(jìn)行輸出;變換矩陣函數(shù)生成單元202以及指令值生成單元211,它們作為位置關(guān)系矩陣插補(bǔ)部起作用,對N個學(xué)習(xí)用變換矩陣進(jìn)行插補(bǔ)而分別生成每個運算周期的指令值的變換矩陣;以及指令值生成單元211,其具有作為第2指令值生成部的功能,該指令值生成單元211使插補(bǔ)后的學(xué)習(xí)用變換矩陣作用于針對主控機(jī)器人1a的每個運算周期的指令值,分別生成針對從屬機(jī)器人1b的各個運算周期的指令值,由于形成上述結(jié)構(gòu),因此能夠針對每個運算周期近似地求出變換矩陣,生成從屬機(jī)器人1b用的指令值,從而無論協(xié)調(diào)動作過程中的多個機(jī)器人處于實際軌跡上的哪個位置,都能夠盡可能降低把持工件所承受的負(fù)載,能夠?qū)崿F(xiàn)機(jī)器人的高速的協(xié)調(diào)動作。
[0112]另外,實施方式I的機(jī)器人控制裝置由使用者提供示教點,主控機(jī)器人1a以及從屬機(jī)器人1b由使用者移動至N個示教點中的每一個示教點而靜止,構(gòu)成為具備作為位置校正完畢指令值生成部而動作的校正指令值生成單元1laUOlb以及校正量生成單元102a、102b,該位置校正完畢指令值生成部在使主控機(jī)器人1a以及從屬機(jī)器人1b靜止于N個示教點的每一個時,生成針對每個機(jī)器人的指令值,并設(shè)為學(xué)習(xí)用指令值,因此,在啟動后,使用者無需對力的控制系統(tǒng)的設(shè)定進(jìn)行調(diào)整,就能夠在整個區(qū)間對與絕對位置誤差相當(dāng)?shù)牧窟M(jìn)行校正,從而能夠縮短啟動時間。
[0113]實施方式2.
[0114]根據(jù)實施方式2,還能夠?qū)W習(xí)由于機(jī)器人主體的溫度、環(huán)境溫度的變動引起的指尖位置的偏差、由大于或等于2臺的機(jī)器人動作中的同步定時的偏差引起的指尖位置的偏差等動態(tài)地產(chǎn)生的誤差量,而對變換矩陣進(jìn)行更新。圖8是對利用了本發(fā)明的實施方式2的位置關(guān)系運算裝置的機(jī)器人控制系統(tǒng)進(jìn)行說明的圖。此外,在這里,對于與實施方式I相同的結(jié)構(gòu)要素,標(biāo)注與實施方式I相同的標(biāo)號,省略重復(fù)的說明。
[0115]如圖8所示,主控控制裝置21a具備指令值存儲單元100、校正量生成單元102a、校正指令值生成單元101a、驅(qū)動控制單元103a以及當(dāng)前位置檢測單元104a。校正量生成單元102a具備作用力運算單元105a、校正量運算單元106a以及校正量存儲單元107a。在這里,主控控制裝置21a在進(jìn)行通常動作時,將當(dāng)前位置檢測單元104a所檢測出的當(dāng)前位置輸出至位置關(guān)系運算裝置31。
[0116]位置關(guān)系運算裝置31具備變換矩陣生成單元300、存儲N個學(xué)習(xí)用變換矩陣的變換矩陣存儲單元301、變換矩陣函數(shù)生成單元302。變換矩陣生成單元300、變換矩陣存儲單元301以及變換矩陣函數(shù)生成單元302在準(zhǔn)備處理中,執(zhí)行與實施方式I中的相對應(yīng)的結(jié)構(gòu)要素相同的處理,生成實施方式I的變換矩陣函數(shù)(第I變換矩陣函數(shù))。另外,在通常動作中,基于當(dāng)前位置檢測單元104a、104b所檢測出的各個當(dāng)前位置,動態(tài)地生成變換矩陣函數(shù)(第2變換矩陣函數(shù))。
[0117]從屬控制裝置21b具備變換矩陣函數(shù)存儲單元310、指令值生成單元311、校正量生成單元102b、校正指令值生成單元101b、驅(qū)動控制單元103b以及當(dāng)前位置檢測單元104b。校正量生成單元102b具備與校正量生成單元102a等同的結(jié)構(gòu)。
[0118]圖9是說明變換矩陣函數(shù)存儲單元310的存儲器結(jié)構(gòu)的圖。如圖所示,變換矩陣函數(shù)存儲單元310對位置關(guān)系運算裝置31計算出的第I變換矩陣函數(shù)303以及第2變換矩陣函數(shù)304進(jìn)行存儲。此外,變換矩陣函數(shù)存儲單元310存儲的第2變換矩陣函數(shù)304由位置關(guān)系運算裝置31動態(tài)地更新。
[0119]指令值生成單元311能夠利用第I變換矩陣函數(shù)303或者第2變換矩陣函數(shù)304,生成第Tm個指令值。
[0120]下面,對利用圖8所示的機(jī)器人控制系統(tǒng)執(zhí)行的本發(fā)明的實施方式2的機(jī)器人控制方法進(jìn)行說明。此外,由于以離線方式執(zhí)行的準(zhǔn)備處理與實施方式I相同,因此在這里省略說明。由準(zhǔn)備處理所生成的變換矩陣函數(shù)作為第I變換矩陣函數(shù)303而存儲于變換矩陣函數(shù)存儲單元310。
[0121]另外,主控控制裝置21a的通常動作除了將當(dāng)前位置檢測單元104a所檢測出的當(dāng)前位置輸出至位置關(guān)系運算裝置31這一點以外,與實施方式I相同,因此省略說明。此夕卜,從屬控制裝置21b也與主控控制裝置21a相同地,將當(dāng)前位置檢測單元104b所檢測出的當(dāng)前位置輸出至位置關(guān)系運算裝置31。在這里為了簡化而設(shè)為,每當(dāng)校正指令值生成單元101a、指令值生成單元311從指令值存儲單元100分別取得M個指令值中的與學(xué)習(xí)用指令值最接近的N個指令值,主控控制裝置21a、從屬控制裝置21b就將當(dāng)前位置輸出至位置關(guān)系運算裝置31。即,每當(dāng)主控機(jī)器人1a到達(dá)示教點或者與示教點最接近的位置,當(dāng)前位置檢測單元104a、104b就分別將位置檢測值作為新的學(xué)習(xí)用指令值而輸出。
[0122]圖10是對位置關(guān)系運算裝置31生成第2變換矩陣函數(shù)304的動作進(jìn)行說明的圖。首先,變換矩陣生成單元300將從主控控制裝置21a以及從屬控制裝置21b在I次循環(huán)動作完成時刻所輸入的N對當(dāng)前位置,用作在實施方式I中所指的學(xué)習(xí)用指令值,生成N個學(xué)習(xí)用變換矩陣(步驟S31)。此外,變換矩陣生成單元300將所生成的學(xué)習(xí)用變換矩陣存儲至變換矩陣存儲單元301。然后,變換矩陣函數(shù)生成單元302基于通過步驟S31的處理而存儲于變換矩陣存儲單元301的N個學(xué)習(xí)用變換矩陣,生成第2變換矩陣函數(shù)304 (步驟S32)。所生成的第2變換矩陣函數(shù)304被發(fā)送至從屬控制裝置21b,變換矩陣函數(shù)存儲單元310存儲的第2變換矩陣函數(shù)304被該發(fā)送來的第2變換矩陣函數(shù)304覆蓋。然后,執(zhí)行步驟S31處理。
[0123]圖11是說明從屬控制裝置21b的通常動作的流程圖。在從屬控制裝置21b中,首先,指令值生成單元311將Tm初始化為I (步驟S41),將存儲在指令值存儲單元100中的第Tm個指令值取出(步驟S42)。
[0124]接下來,指令值生成單元311選擇所使用的變換矩陣函數(shù)(步驟S43)。在這里,指令值生成單元311可以基于某個基準(zhǔn)而執(zhí)行步驟S43的選擇處理。第2變換矩陣函數(shù)304具有通常動作時經(jīng)過時間越長越收斂的傾向,但在收斂不充分的情況下,指令值生成單元311可以選擇第I變換矩陣函數(shù)303。另外,在剛開始通常動作之后,由于第2變換矩陣函數(shù)304還未生成,因此,此時指令值生成單元311可以選擇第I變換矩陣函數(shù)303。
[0125]然后,指令值生成單元311對包含所取出的第Tm個指令值的區(qū)間(由Pk、Pk+l表示的區(qū)間)以及rate(k, k+1, Tnow)進(jìn)行計算(步驟S44)。并且,指令值生成單元311基于選擇出的變換矩陣函數(shù)和式13?式16,計算變換矩陣E1T’ E2 (rate(k, k+1, Tnow))(步驟S45),使所述計算出的變換矩陣E1T’ E2 (rate (k, k+1, Tnow))作用于所取得的第Tm個指令值,生成針對終端執(zhí)行器Ilb的第Tm個指令值(步驟S46)。另一方面,校正量生成單元102b基于累積在校正量存儲單元107b中的與直至第Tm -1個為止的指令值相關(guān)的校正量、以及作用力運算單元105b測量出的作用力,計算第Tm個校正量(步驟S47)。校正指令值生成單元1lb將所生成的第Tm個指令值和第Tm個校正量相加,生成第Tm個校正指令值(步驟S48)。在步驟S48之后,指令值生成單元311使Tm遞加I (步驟S49),執(zhí)行步驟S42的處理。
[0126]如上所述,根據(jù)本發(fā)明的實施方式2,由于構(gòu)成為具備:指令校正部(校正量生成單元102a、102b、校正指令值生成單元1laUOlb),其針對主控機(jī)器人1a或者從屬機(jī)器人1b中的至少一方的各個運算周期的指令值,進(jìn)行使指尖所承受的作用力減小的校正;以及當(dāng)前位置檢測單元104a、104b,它們具有作為對機(jī)器人10a、10b進(jìn)行位置檢測的位置檢測部的功能、以及作為將分別利用N個指令值所檢測出的所述第I機(jī)器人的位置和所述第2機(jī)器人的位置作為學(xué)習(xí)用指令值而輸出的位置校正完畢指令值生成部的功能,因此在同步驅(qū)動時,在將為了使指尖所承受的作用力變小而動態(tài)地進(jìn)行校正后的位置用作學(xué)習(xí)用指令值的同時計算學(xué)習(xí)用變換矩陣,然后利用計算出的學(xué)習(xí)用變換矩陣對第2變換矩陣函數(shù)進(jìn)行逐次更新,因此,在多個機(jī)器人10a、10b實施協(xié)調(diào)動作的基礎(chǔ)上,能夠?qū)Ω鱾€指尖位置進(jìn)行校正直至收斂于作用力變小的方向,最終能夠以作用力變?yōu)樽钚〉能壽E使機(jī)器人10a、1b協(xié)調(diào)動作。
[0127]另外,如果設(shè)置使第2變換矩陣函數(shù)的更新連續(xù)進(jìn)行的模式和使更新停止的模式,則形成為,例如能夠從學(xué)習(xí)中排除諸如包含不必要的干擾(例如,由系統(tǒng)內(nèi)的線纜纏繞而引起的機(jī)器人負(fù)載增加)的試驗,或者能夠在實際生產(chǎn)中不實施學(xué)習(xí)。通過設(shè)置該結(jié)構(gòu),從而能夠?qū)⒂赏剿鸬恼`差考慮在內(nèi)的從屬軌跡進(jìn)行學(xué)習(xí),因此能夠?qū)W習(xí)精度更高的從屬機(jī)器人的軌跡,其中,所述由同步所引起的誤差是在使機(jī)器人動作時的每個姿態(tài)下的電動機(jī)的響應(yīng)差異、通信延遲等導(dǎo)致的。
[0128]此外,通常作為機(jī)器人控制方法已知插補(bǔ)方法,該插補(bǔ)方法為,如果由使用者提供大于或等于3個的指令值,則以指令值中的動作開始位置和動作結(jié)束位置之間的軌道從位于這些位置中間的指令值的附近穿過的方式近似地決定軌道(例如,參照專利文獻(xiàn)3)。根據(jù)該技術(shù),機(jī)器人控制裝置基于由使用者所提供的指令值而計算出的軌道,并不限定于從指令值上穿過。根據(jù)實施方式2,能夠動態(tài)地生成變換矩陣,因此即使在應(yīng)用如上所述的技術(shù)的情況下,也能夠以指尖所承受的作用力變小的軌跡使機(jī)器人10a、10b協(xié)調(diào)動作。然而,在該情況下,對于從主控機(jī)器人的指令值存儲單元輸出的指令值,將應(yīng)用了所述插補(bǔ)方法的情況下的插補(bǔ)處理后的指令值作為指令值而輸入至指令值生成單元311。另外,在該情況下,在變換矩陣生成單元300中,如實施方式I記載那樣,從屬機(jī)器人也同樣將使用由指令值生成單元311取得的從屬機(jī)器人的指令值而實施插補(bǔ)處理之后的指令值輸出至校正指令值生成單元101b,其中,所述從屬機(jī)器人的指令值是使用在示教作業(yè)時所取得的數(shù)據(jù)而運算得到的。其結(jié)果,在實施該插補(bǔ)方法的情況下,在動作前已得到的變換矩陣與未實施該插補(bǔ)方法的情況不同。
[0129]另外,主控控制裝置21a在將各個運算周期的指令值輸出至驅(qū)動控制單元103a時,也可以實施濾波處理。在對各個運算周期的指令值實施濾波處理的情況下,在實際通過軌道上的位置和插補(bǔ)指令值之間產(chǎn)生偏差。在該情況下,主控控制裝置21a將當(dāng)前位置設(shè)為學(xué)習(xí)用指令值,但從屬控制裝置21b不對校正后的指令值實施濾波處理而將該指令值輸出至驅(qū)動控制單元103b。或者,從屬控制裝置21b也可以近似地對諸如濾波處理后的指令值成為當(dāng)前位置之類的指令值進(jìn)行計算。
[0130]實施方式3.
[0131]根據(jù)實施方式3,使同步驅(qū)動時的速度設(shè)定值(在這里,稱為替換值,但也可以是代表位置處的速度指令值)和第2變換矩陣函數(shù)相關(guān)聯(lián)地記錄。速度指令值如果從所記錄的速度指令值發(fā)生變更,則基于預(yù)先記錄的第2變換矩陣函數(shù),計算與變更后的速度指令值相對應(yīng)的第2變換矩陣函數(shù),計算出的新的第2變換矩陣函數(shù)用于利用了更新后的速度指令值實現(xiàn)的同步驅(qū)動。由此,形成為,使用者預(yù)先改變速度設(shè)定值而多次試驗性地執(zhí)行自動運轉(zhuǎn),使機(jī)器人控制裝置記錄各個速度設(shè)定值的第2變換矩陣函數(shù),從而能夠在以后的自動運轉(zhuǎn)中,基于所記錄的第2變換矩陣函數(shù)而計算出在同步驅(qū)動中使用的第2變換矩陣函數(shù),因此能夠以比實施方式2那樣直至機(jī)器人之間的位置關(guān)系收斂為止所花費的時間短的時間使控制穩(wěn)定。
[0132]以下,對如下方法進(jìn)行說明,S卩,分別將速度設(shè)定值為零時的第2變換矩陣函數(shù)標(biāo)記為E1T’ E2 ((k,k+1) ovrd = 0),將速度設(shè)定值為a時的第2變換矩陣函數(shù)標(biāo)記為E1T’ E2 ((k,k+l)ovrd = a),將速度設(shè)定值為b(b > a)時的第2變換矩陣函數(shù)標(biāo)記為E1T’E2((k,k+1)ovrd = b),根據(jù)上述3個第2變換矩陣函數(shù)求出從屬控制裝置在通常運轉(zhuǎn)時所適用的第2變換矩陣函數(shù)。此外,第I變換矩陣函數(shù)與速度設(shè)定值為零的情況下的第2變換矩陣函數(shù)eiT' E2 ((k, k+1) ovrd = O)相等。
[0133]利用式7以及式14,考慮從Pk的變換矩陣轉(zhuǎn)換為Pk+Ι的變換矩陣時的變換矩陣彼此的誤差量。速度設(shè)定值為a時的變換的誤差量AT(k,k+l,0vrd = a)能夠如下式所示。
[0134]Δ T (k, k+1, ovrd = a) = [AI^l)_a,Δ Pk_a ;
[0135]zero (1,3), I] (17)
[0136]另外,速度設(shè)定值為b時的變換的誤差量Δ T (k, k+1, ovrd = a)能夠如下式所示。
[0137]Δ T (k, k+1, ovrd = a) = [ Δ R(l)_b? Δ Pk_b ;
[0138]zero (1,3), I] (18)
[0139]只要學(xué)習(xí)用變換矩陣不隨速度變化而改變,則即使變更速度設(shè)定值,誤差的產(chǎn)生方式也不變,因此,從屬控制裝置能夠直接使用以任意速度設(shè)定值學(xué)習(xí)到的變換矩陣函數(shù)。然而,在包含存在各軸的響應(yīng)的影響或者濾波的影響等的情況在內(nèi),指尖位置隨速度變化而變化的情況下,在上述式17和式18的結(jié)果中產(chǎn)生差異??紤]上述差值。
[0140]首先,對于旋轉(zhuǎn)量的差,如果將與式17相對應(yīng)的單軸旋轉(zhuǎn)法的旋轉(zhuǎn)軸設(shè)為k_a,將旋轉(zhuǎn)量設(shè)為a_a,將與式18相對應(yīng)的單軸旋轉(zhuǎn)法的旋轉(zhuǎn)軸設(shè)為k_b,將旋轉(zhuǎn)量設(shè)為a_b,則旋轉(zhuǎn)量的變化率Λ α表示如下。此外,假設(shè)軸方向不會大幅變化,近似地采用k_a的旋轉(zhuǎn)軸。
[0141]A a (X) = ( a b_ a a) / (b_a) * (x_a) (19)
[0142]Δ P ((k, k+1), x) = ( Δ Pk_b_ Δ Pk_a) / (b_a) * (x~a) (20)
[0143]如果假設(shè)產(chǎn)生的誤差隨著速度變大而以恒定比例變大,則使用根據(jù)上述式19、式20求出的值,以速度設(shè)定值為a時的第2變換矩陣函數(shù)作為基準(zhǔn),從而從屬控制裝置無論在以哪種速度設(shè)定值(替換值)進(jìn)行通常運轉(zhuǎn)時,都能夠求出將與速度相對應(yīng)而產(chǎn)生的誤差消除的第2變換矩陣函數(shù)。
[0144]圖12是說明本發(fā)明的實施方式3的機(jī)器人控制系統(tǒng)的結(jié)構(gòu)的圖。此外,在這里,對與實施方式I相同的結(jié)構(gòu)要素,標(biāo)注與實施方式I相同的標(biāo)號,省略重復(fù)的說明。
[0145]如圖12所示,主控控制裝置22a具備指令值存儲單元100、校正量生成單元102a、校正指令值生成單元101a、驅(qū)動控制單元103a、以及當(dāng)前位置檢測單元104a。校正量生成單元102a具備作用力運算單元105a、校正量運算單元106a以及校正量存儲單元107a。在這里,主控控制裝置22a在進(jìn)行試驗運轉(zhuǎn)時,將當(dāng)前位置檢測單元104a檢測出的當(dāng)前位置輸出至位置關(guān)系運算裝置32。
[0146]位置關(guān)系運算裝置32具備變換矩陣生成單元400、存儲N個學(xué)習(xí)用變換矩陣的變換矩陣存儲單元401、變換矩陣函數(shù)生成單元402以及試驗運轉(zhuǎn)速度設(shè)定單元403。變換矩陣生成單元400、變換矩陣存儲單元401以及變換矩陣函數(shù)生成單元402在準(zhǔn)備處理中執(zhí)行與實施方式I中的相對應(yīng)的結(jié)構(gòu)要素相同的處理,生成實施方式I中的變換矩陣函數(shù)(第I變換矩陣函數(shù)303)。
[0147]另外,在試驗運轉(zhuǎn)中,試驗運轉(zhuǎn)速度設(shè)定單元403接收速度設(shè)定值的輸入。并且,基于當(dāng)前位置檢測單元104a、104b所檢測出的各個當(dāng)前位置,變換矩陣生成單元400、變換矩陣存儲單元401以及變換矩陣函數(shù)生成單元402動態(tài)地生成變換矩陣函數(shù)(第2變換矩陣函數(shù)),使所生成的第2變換矩陣函數(shù)與輸入至試驗運轉(zhuǎn)速度設(shè)定單元403的速度設(shè)定值相關(guān)聯(lián)而輸出至從屬控制裝置22b。此外,在這里,對各個速度設(shè)定值的第2變換矩陣函數(shù)標(biāo)注標(biāo)號404,以與實施方式2的第2變換矩陣函數(shù)304進(jìn)行區(qū)別。
[0148]從屬控制裝置22b具備變換矩陣函數(shù)存儲單元410、指令值生成單元411、通常運轉(zhuǎn)速度設(shè)定單元412、校正量生成單元102b、校正指令值生成單元101b、驅(qū)動控制單元103b以及當(dāng)前位置檢測單元104b。校正量生成單元102b具備與校正量生成單元102a等同的結(jié)構(gòu)。
[0149]圖13是說明變換矩陣函數(shù)存儲單元410的存儲器結(jié)構(gòu)的圖。如圖所示,變換矩陣函數(shù)存儲單元410對位置關(guān)系運算裝置32所計算出的第I變換矩陣函數(shù)303以及各個速度設(shè)定值的第2變換矩陣函數(shù)404進(jìn)行存儲。
[0150]在這里,通常運轉(zhuǎn)速度設(shè)定單元412在通常運轉(zhuǎn)時,接收速度設(shè)定值的輸入。在通常運轉(zhuǎn)時所輸入的速度設(shè)定值可以與在試驗運轉(zhuǎn)時所輸入的速度設(shè)定值不同。指令值生成單元411基于通常運轉(zhuǎn)速度設(shè)定單元412所取得的速度設(shè)定值、存儲于變換矩陣函數(shù)存儲單元410的各個速度設(shè)定值的第2變換矩陣函數(shù)404 (以及第I變換矩陣函數(shù)303),利用式19以及式20,一邊對與速度相對應(yīng)的誤差進(jìn)行位置校正,一邊計算變換矩陣。并且,使所述計算出的變換矩陣作用于從指令值存儲單元100取得的針對終端執(zhí)行器Ila的第Tm個指令值,計算針對終端執(zhí)行器Ilb的第Tm個指令值。
[0151]如上所述,根據(jù)本發(fā)明的實施方式3,機(jī)器人控制裝置具備:作為速度設(shè)定值輸入部的通常運轉(zhuǎn)速度設(shè)定單元412,其在同步驅(qū)動時接收速度設(shè)定值的輸入;以及作為位置關(guān)系矩陣函數(shù)存儲部的變換矩陣函數(shù)存儲單元410,其預(yù)先對各個速度設(shè)定值的第2變換矩陣函數(shù)404進(jìn)行存儲,指令值生成單元411構(gòu)成為,將存儲于變換矩陣函數(shù)存儲單元410的第2變換矩陣函數(shù)讀出,基于所輸入的速度設(shè)定值進(jìn)行校正,利用校正后的第2變換矩陣函數(shù)對與從屬機(jī)器人1b相關(guān)的各個運算周期的指令值進(jìn)行計算,因此,能夠在生產(chǎn)系統(tǒng)啟動時,在不斷逐漸增加整體的速度設(shè)定值時,利用預(yù)先記錄的信息,對機(jī)器人10a、10b之間的最佳的位置關(guān)系進(jìn)行推定,因此與第2實施方式相比能夠縮短啟動時間。
[0152]實施方式4.
[0153]根據(jù)實施方式4,校正量運算單元102a、102b實施考慮了阻抗特性的阻抗控制。阻抗控制是指在機(jī)械手和環(huán)境之間將連接有彈簧.減振器的模型導(dǎo)入,定義希望的阻抗而對指尖位置進(jìn)行控制的方法。根據(jù)實施方式4,由在實施方式I中說明的校正量生成單元102a、102b進(jìn)行的校正量的生成方法發(fā)生了變更,但仍能夠得到與利用實施方式I所得到的效果相同的效果。
[0154]并且,根據(jù)實施方式4,通過利用阻抗控制,能夠?qū)εc作業(yè)對象之間的力學(xué)上的關(guān)系進(jìn)行規(guī)定,因此能夠在調(diào)整為難以產(chǎn)生針對機(jī)器人10a、10b彼此、工件的過負(fù)載狀態(tài)的狀態(tài)下,實施軌跡的學(xué)習(xí)。
[0155]實施方式5.
[0156]在實施方式I?3所記載的機(jī)器人控制裝置中,校正量生成單元102a、102b可以代替指尖所承受的作用力,而利用距離傳感器的測量距離對校正量進(jìn)行運算。具體而言,在機(jī)器人10a、10b或者生產(chǎn)系統(tǒng)的夾具上安裝距離傳感器,測量與機(jī)器人或工件之間的距離,計算出機(jī)器人10a、10b的指尖位置之間的相對距離,在相對距離與希望距離背離的情況下,生成能夠使兩者一致的校正量。此外,機(jī)器人10a、10b之間的相對距離的計算方法是任意的。例如,可以利用距離傳感器測定機(jī)器人1a和工件之間的相對距離、以及機(jī)器人1b和工件之間的相對距離,求出機(jī)器人1a和機(jī)器人1b之間的距離。另外,也可以利用距離傳感器直接測定機(jī)器人1a和機(jī)器人1b之間的距離。
[0157]在機(jī)器人或者外圍驅(qū)動裝置實施諸如為非接觸、但需要在保持恒定距離的狀態(tài)下進(jìn)行作業(yè)這樣的協(xié)調(diào)動作的情況下,通過應(yīng)用該結(jié)構(gòu),從而能夠?qū)ο鄬τ谧鳂I(yè)對象保持理想的位置關(guān)系的從屬機(jī)器人1b的軌跡進(jìn)行學(xué)習(xí)。
[0158]實施方式6.
[0159]根據(jù)實施方式2、3、5所記載的機(jī)器人控制裝置,由于校正量生成單元102a、102b利用即使在相同的示教點處也隨每次試驗而變動的校正量進(jìn)行學(xué)習(xí),因此有時無法保證收斂性。與其相對,能夠構(gòu)成為,對于由變換矩陣生成單元200所生成的變換矩陣,計算第k+1次取得的變換矩陣uk+1、第k次取得的變換矩陣U、第k次和第k+Ι次取得的變換矩陣的變化量即變化量q、以控制周期對第k次和第k+Ι次的變化量進(jìn)行分割而得到的變化率q(.),對它們施加遺忘因子,使用學(xué)習(xí)控制法(參照非專利文獻(xiàn)I),即使在計算出的校正量存在變動的情況下,也穩(wěn)定地收斂。
[0160]實施方式7.
[0161]在實施方式7中,通過將多次循環(huán)的校正量的平均值分別與N個位置校正前的指令值相加,從而生成學(xué)習(xí)用指令值。在這里,將學(xué)習(xí)用指令值稱為第I學(xué)習(xí)用指令值。另夕卜,通過加上多次循環(huán)的校正量的平均值,從而生成第I學(xué)習(xí)用指令值,將位置校正前的指令值稱為第2學(xué)習(xí)用指令值。此外,在實施方式7中,作為一個例子,將按照每個運算周期對終端執(zhí)行器Ila的指令軌跡進(jìn)行定義的M個位置指令值中的、示教點或者示教點附近的指令值,作為第2學(xué)習(xí)用指令值使用。
[0162]圖14是說明利用了本發(fā)明的實施方式7的位置關(guān)系運算裝置的機(jī)器人控制系統(tǒng)的圖。在這里,對與實施方式I?3相同的結(jié)構(gòu)要素,標(biāo)注與實施方式I?3相同的標(biāo)號,省略重復(fù)的說明。
[0163]如圖14所示,主控控制裝置23a具備指令值存儲單元100、校正量生成單元110a、校正指令值生成單元101a、驅(qū)動控制單元103a以及當(dāng)前位置檢測單元104a。校正量生成單元IlOa具備作用力運算單元105a、校正量運算單元106a以及校正量存儲單元111a。在這里,在自動運轉(zhuǎn)過程中,校正量存儲單元11 Ia分別針對N個指令值,對最新運算出的R個校正量進(jìn)行累積存儲。校正量存儲單元Illa還分別針對M個第2學(xué)習(xí)用指令值,對最新運算出的R個校正量進(jìn)行存儲。此外,R例如為預(yù)先設(shè)定的大于或等于2的整數(shù)。分別與M個第2學(xué)習(xí)用指令值相關(guān)的R個校正量,由位置關(guān)系運算裝置33讀出。另外,存儲在指令值存儲單元100中的第2學(xué)習(xí)用指令值,由位置關(guān)系運算裝置33讀出。另外,由校正指令值生成單元1la所生成的各個運算周期的校正指令值被發(fā)送至從屬控制裝置23b。第2學(xué)習(xí)用指令值在由校正指令值生成單元1la進(jìn)行校正后,被發(fā)送至從屬控制裝置23b。
[0164]此外,通過將存儲在指令值存儲單元100中的第2學(xué)習(xí)用指令值稱為針對終端執(zhí)行器Ila的第2學(xué)習(xí)用指令值,從而與后述的針對終端執(zhí)行器Ilb的第2學(xué)習(xí)用指令值進(jìn)行區(qū)別。
[0165]位置關(guān)系運算裝置33具備變換矩陣生成單元500、變換矩陣存儲單元301以及變換矩陣函數(shù)生成單元302。變換矩陣生成單元500基于下述要素生成N個變換矩陣,所述要素包括:針對終端執(zhí)行器Ila的N個第2學(xué)習(xí)用指令值;針對終端執(zhí)行器Ilb的N個第2學(xué)習(xí)用指令值;相對于針對終端執(zhí)行器Ila的N個第2學(xué)習(xí)用指令值而運算出的最新的R組校正量的平均值;以及相對于針對終端執(zhí)行器Ilb的N個第2學(xué)習(xí)用指令值而運算出的最新的R組校正量的平均值。變換矩陣存儲單元301對變換矩陣生成單元500生成的N個學(xué)習(xí)用變換矩陣進(jìn)行存儲。變換矩陣函數(shù)生成單元302在自動運轉(zhuǎn)時,基于當(dāng)前位置檢測單元104a、104b檢測出的各個當(dāng)前位置,動態(tài)地生成變換矩陣函數(shù)(第2變換矩陣函數(shù))。
[0166]此外,變換矩陣函數(shù)生成單元302在準(zhǔn)備處理中,執(zhí)行與實施方式I中的相對應(yīng)的結(jié)構(gòu)要素相同的處理,生成實施方式I的變換矩陣函數(shù)(第I變換矩陣函數(shù))。在這里,為了簡化說明,省略在準(zhǔn)備處理中用于生成N個變換矩陣的結(jié)構(gòu)的說明以及數(shù)據(jù)的輸入/輸出關(guān)系的圖示。
[0167]從屬控制裝置23b具備變換矩陣函數(shù)存儲單元310、指令值生成單元511、校正量生成單元110b、校正指令值生成單元101b、驅(qū)動控制單元103b以及當(dāng)前位置檢測單元104b ο
[0168]指令值生成單元511基于從校正指令值生成單元1la發(fā)送來的各個運算周期的校正指令值和變換矩陣函數(shù)存儲單元310存儲的第2變換矩陣函數(shù)304,生成對終端執(zhí)行器Ilb的軌跡進(jìn)行定義的M個指令值。具體而言,指令值生成單元511基于第2變換矩陣函數(shù)304,針對與終端執(zhí)行器Ila對應(yīng)的各個校正指令值而生成變換矩陣。并且,指令值生成單元511使生成的變換矩陣作用于從校正指令值生成單元1la發(fā)送來的各個運算周期的校正指令值,生成各個運算周期的針對終端執(zhí)行器Ilb的指令值。指令值生成單元511基于由校正指令值生成單元1la校正后的第2學(xué)習(xí)用指令值和第2變換矩陣函數(shù)304,生成針對終端執(zhí)行器Ilb的第2學(xué)習(xí)用指令值。指令值生成單元511將生成的針對終端執(zhí)行器Ilb的第2學(xué)習(xí)用指令值,發(fā)送至位置關(guān)系運算裝置33。
[0169]校正量生成單元IlOb具備作用力運算單元105b、校正量運算單元106b以及校正量存儲單元111b。校正量存儲單元Illb累積存儲分別針對指令值生成單元511所生成的M個指令值而最新計算出的規(guī)定數(shù)量(R個)的校正量。指令值生成單元511生成的M個指令值中的、與針對終端執(zhí)行器Ila的第2學(xué)習(xí)用指令值相對應(yīng)的針對終端執(zhí)行器Ilb的指令值,被發(fā)送至位置關(guān)系運算裝置33。此外,將與針對終端執(zhí)行器Ila的第2學(xué)習(xí)用指令值相對應(yīng)的針對終端執(zhí)行器Ilb的指令值,稱為針對終端執(zhí)行器Ilb的第2學(xué)習(xí)用指令值。
[0170]下面,說明變換矩陣生成單元500生成學(xué)習(xí)用變換矩陣的方法。將MblT’E1中的校正量的成分定義為八1\1,將1:<*21%2中的校正量的成分定義為ATk2。S卩,Λ Tkl是MblT’E1和roblTm的差值,Δ Tk2是Mb2T’ E2和-2Te2的差值。因此,Δ Tkl, Δ Tk2可以分別表示如下。
[0171]Δ Tkl = [roblRj E1 (roblRm)-1, roblP,E「roblPE1 ;
[0172]zero (1,3), I] (21)
[0173]Δ Tk2 = [rob2Rj E1 (rob2RE2) ―1,rt5b2P,E2-rob2PE2 ;
[0174]zero (I, 3), I] (22)
[0175]其中,與式⑴相同地,MblTE1E1以及Mb2T’E2表示如下。
[0176]robiT,Ei(i = 1、2) = [roblR,Ei,roblP,Ei ;
[0177]zero (1,3), I] (23)
[0178]rt5biTm (i = 1,2) = [roblREi, roblPm ;
[0179]zero (1,3), I] (24)
[0180]變換矩陣生成單元500分別針對與終端執(zhí)行器Ila對應(yīng)的第2學(xué)習(xí)用指令值運算R個校正量的平均值,從而分別對與針對終端執(zhí)行器IIa的第2學(xué)習(xí)用指令值對應(yīng)的校正量的平均值A(chǔ)Tkl m進(jìn)行計算。另外,變換矩陣生成單元500分別針對與終端執(zhí)行器Ilb對應(yīng)的第2學(xué)習(xí)用指令值運算R個校正量的平均值,從而分別對與針對終端執(zhí)行器Ilb的第2學(xué)習(xí)用指令值對應(yīng)的校正量的平均值A(chǔ)Tk2_m進(jìn)行計算。并且,變換矩陣生成單元500通過將計算出的平均值A(chǔ)Tk2_i(i = 1,2)加上相對應(yīng)的第2學(xué)習(xí)用指令值,從而計算出第I學(xué)習(xí)用指令值。
[0181]具體而言,變換矩陣生成單元500通過利用ATki m(i = 1,2)和下式(25),計算出旋轉(zhuǎn)成分Λ Rki m和平移成分APki m。
[0182]Δ Tki jl — [ Δ Rki η, Δ Pki n ;
[0183]zero (1,3), I] (25)
[0184]并且,變換矩陣生成單元500通過向式(26)代入旋轉(zhuǎn)成分ARki m和平移成分ΛPkijl,計算出第I學(xué)習(xí)用指令值?ΜΤ" Ei,i = 1,2。
[0185]robiT^i = U =robiPmi = JAPkui;
[0186]zero (1,3), I] (26)
[0187]并且,變換矩陣生成單元500利用第I學(xué)習(xí)用指令值MbiT " ^ = U和下式(27),對實施方式7的學(xué)習(xí)用變換矩陣E1T" E2 (k),k = 1,2,...,N進(jìn)行運算。
[0188]E1T,,E2 =wldTrob2rob2T”E2 (27)
[0189]此外,對通過將最新的R個校正量的平均值與第2學(xué)習(xí)用指令值相加而計算出第I學(xué)習(xí)用指令值進(jìn)行了說明,但與第2學(xué)習(xí)用指令值相加的校正量,只要是代表R個校正量的值即可,并不限定于平均值。例如,可以采用R個校正量的中間值、最頻繁出現(xiàn)值、加權(quán)平均值等作為與第2學(xué)習(xí)用指令值相加的校正量。
[0190]校正量運算單元106a、106b例如具有阻抗控制系統(tǒng)或者力控制系統(tǒng)的控制系統(tǒng)。阻抗控制系統(tǒng)或者力控制系統(tǒng)如專利文獻(xiàn)4所示,具有積分器。因此,阻抗控制系統(tǒng)或者力控制系統(tǒng)利用第Tl個校正量?第Tm-1個校正量,計算第Tm個校正量。根據(jù)實施方式7,利用R個第Tm個校正量而實行誤差的并入,因此,誤差的并入的精度提高。其結(jié)果,無論同步驅(qū)動過程中的多個機(jī)器人處于實際軌跡上的哪個位置,都能夠使把持工件所承受的負(fù)載進(jìn)一步減小。
[0191]另外,自動運轉(zhuǎn)過程中的作用力因速度、溫度等諸條件而變化。根據(jù)實施方式7,利用將最新運算出的R個校正量進(jìn)行平均處理所得到的校正量而生成第I學(xué)習(xí)用指令值,因此能夠使因諸條件而變化的作用力漸進(jìn)地降低。
[0192]如上所述,根據(jù)本發(fā)明的實施方式7,校正指令值生成單元101a、101b、校正量生成單元IlOaUlOb以及變換矩陣生成單元500協(xié)同動作,分別針對各個運算周期的指令值所包含的第2學(xué)習(xí)用指令值,基于該第2學(xué)習(xí)用指令值、和相對于該第2學(xué)習(xí)用指令值為最新的規(guī)定次數(shù)循環(huán)的校正量的代表值,計算第I學(xué)習(xí)用指令值。并且,變換矩陣生成單元500針對每個第I學(xué)習(xí)用指令值生成學(xué)習(xí)用變換矩陣。由此,第I學(xué)習(xí)用指令值通過與利用第Tl個校正量?第Tm-1個校正量而計算第Tm個校正量的方式相比精度更高的方法,并入誤差而生成。另外,第I學(xué)習(xí)用指令值是考慮了基于自動運轉(zhuǎn)過程中的諸條件的變動而產(chǎn)生的誤差的變動而生成的。因此,能夠盡可能減小對終端執(zhí)行器IlaUlb產(chǎn)生的作用力。
[0193]此外,在以上的說明中,對利用在自動運轉(zhuǎn)時所運算出的最新的R次循環(huán)的校正值而生成第2變換矩陣函數(shù)304進(jìn)行了說明。也可以形成為,執(zhí)行R次循環(huán)的準(zhǔn)備處理,第I變換矩陣函數(shù)303利用通過R次循環(huán)的準(zhǔn)備處理而得到的校正值,以與第2變換矩陣函數(shù)304相同的順序生成。
[0194]另外,如圖15所示,也可以形成為,指令值生成單元511從指令值存儲單元100讀出針對終端執(zhí)行器Ila的各個運算周期的指令值,從校正量存儲單元Illa讀出針對各個運算周期的指令值的R組校正量,對讀出的指令值和讀出的R組校正量的平均值進(jìn)行合計,由此生成針對終端執(zhí)行器Ilb的各個運算周期的指令值。通過上述方式,即使終端執(zhí)行器Ila的校正指令值較大程度地變動,也能夠使終端執(zhí)行器Ila的校正指令值的變動對終端執(zhí)行器Ilb的各個運算周期的指令值的影響變小。
[0195]實施方式8.
[0196]在實施方式8中,選擇各個運算周期的指令值中的滿足與作用力相關(guān)的規(guī)定條件的指令值,作為第2學(xué)習(xí)用指令值。
[0197]圖16是對利用了本發(fā)明的實施方式8的位置關(guān)系運算裝置形成的機(jī)器人控制系統(tǒng)進(jìn)行說明的圖。在這里,對于與施方式7相同的結(jié)構(gòu)要素,標(biāo)注與實施方式7相同的標(biāo)號,省略重復(fù)的說明。
[0198]如圖所示,實施方式8的主控控制裝置24a具有如下結(jié)構(gòu),即,在利用圖14所說明的實施方式7的主控控制裝置23a中追加了學(xué)習(xí)用指令值選擇單元600。實施方式8的位置關(guān)系運算裝置33以及從屬控制裝置23b分別具有與利用圖14所說明的對應(yīng)的裝置相同的結(jié)構(gòu)。
[0199]學(xué)習(xí)用指令值選擇單元600從指令值存儲單元100存儲的M個各個運算周期的指令值中,選擇滿足與作用力相關(guān)的規(guī)定條件的N個第2學(xué)習(xí)用指令值。校正量與作用力的增減相對應(yīng)地增減。在這里,學(xué)習(xí)用指令值選擇單元600將校正量運算單元106a所計算出的校正量用作特征量,選擇N個第2學(xué)習(xí)用指令值。
[0200]此外,學(xué)習(xí)用指令值選擇單元600也可以任意地利用校正量,而選擇第2學(xué)習(xí)用指令值。例如,學(xué)習(xí)用指令值選擇單元600可以將校正量或/及校正量的變化率超過規(guī)定閾值的指令值選擇作為第2學(xué)習(xí)用指令值。由此,作用力或者作用力的變化率變得格外大的指令值被設(shè)定為第2學(xué)習(xí)用指令值。
[0201]另外,學(xué)習(xí)用指令值選擇單元600也可以將除了校正量以外的量作為特征量而選擇第2學(xué)習(xí)用指令值。以下,列舉將除了校正量以外的量作為特征量的情況下的選擇方法。
[0202]例如,學(xué)習(xí)用指令值選擇單元600可以將作用力運算單元105a所運算出的作用力用作特征量。學(xué)習(xí)用指令值選擇單元600將作用力或/及作用力的變化率超過規(guī)定閾值的指令值選擇作為第2學(xué)習(xí)用指令值。
[0203]另外,學(xué)習(xí)用指令值選擇單元600也可以將各個運算周期的指令值用作特征量。例如,學(xué)習(xí)用指令值選擇單元600將滿足規(guī)定位置條件的指令值選擇作為第2學(xué)習(xí)用指令值。有時在軌道上的作用力或者作用力的變化率變大的位置是基于機(jī)器人的機(jī)構(gòu)而預(yù)先判明的。在上述情況下,軌道上的作用力或者作用力的變化率變大的位置被作為位置條件而預(yù)先設(shè)定于學(xué)習(xí)用指令值選擇單元600中。學(xué)習(xí)用指令值選擇單元600將用于定位在作為位置條件而設(shè)定的位置處的指令值選擇作為第2學(xué)習(xí)用指令值。此外,也可以將軌道上的范圍設(shè)定作為位置條件。
[0204]另外,學(xué)習(xí)用指令值選擇單元600也可以根據(jù)各個運算周期的指令值或者各個運算周期的當(dāng)前位置,計算電動機(jī)速度,將電動機(jī)速度用作特征量。學(xué)習(xí)用指令值選擇單元600檢測出電動機(jī)速度或者電動機(jī)速度的變化率較大的位置,將用于定位在該檢測出的位置處的指令值選擇作為第2學(xué)習(xí)用指令值。由此,與軌道上的諸如作用力由于離心力或者科里奧利力而變大的位置相對應(yīng)的指令值被選擇為第2學(xué)習(xí)用指令值。
[0205]另外,學(xué)習(xí)用指令值選擇單元600也可以將指令值或者姿態(tài)位置的每單位時間的變化量用作特征量。
[0206]另外,學(xué)習(xí)用指令值選擇單元600也可以將使用指令值的時刻作為特征量。從指令值存儲單元100逐次讀出各個運算周期的指令值,基于讀出的指令值的校正指令值被逐次供給至驅(qū)動控制單元103a。在作用力基于時間條件而變動的情況下,學(xué)習(xí)用指令值選擇單元600也可以基于作用力或者作用力的變動變大的時刻,選擇第2學(xué)習(xí)用指令值。例如,學(xué)習(xí)用指令值選擇單元600在從指令值存儲單元100讀出各個運算周期的指令值的時刻滿足預(yù)先設(shè)定的時刻條件的情況下,將該指令值選擇作為第2學(xué)習(xí)用指令值。
[0207]此外,如實施方式5中的說明所示,在基于距離計算校正量的情況下,學(xué)習(xí)用指令值選擇單元600也可以基于校正量的大小、校正量的變化率、或者校正前后的距離的差值與規(guī)定閾值的比較,選擇第2學(xué)習(xí)用指令值。
[0208]另外,學(xué)習(xí)用指令值選擇單元600也可以將以上所列舉的選擇方法組合而選擇第2學(xué)習(xí)用指令值。
[0209]圖17是表示利用對比例所涉及的機(jī)器人控制系統(tǒng)進(jìn)行協(xié)調(diào)作業(yè)的情況下的、終端執(zhí)行器所承受的作用力和該終端執(zhí)行器的位置的關(guān)系的圖。在這里,t[s]表示時間,X[mm]表示終端執(zhí)行器的位置,F(xiàn)x[N]表示終端執(zhí)行器所承受的作用力,F(xiàn)xlim[N]表示作用力的容許值。如該圖所示,根據(jù)對比例,誤差會與終端執(zhí)行器的位置的變化相對應(yīng)地變化,作用力Fx會與誤差相對應(yīng)地變大。另外,在速度提升的情況等、誤差量受到動態(tài)的影響而變化的情況下,作用力Fx會變得更大。
[0210]圖18是表示對在對比例所涉及的機(jī)器人控制系統(tǒng)中應(yīng)用了阻抗控制的情況下的、終端執(zhí)行器所承受的作用力和該終端執(zhí)行器的位置的關(guān)系的圖。通過應(yīng)用阻抗控制,從而與圖17所示的情況相比,各位置的作用力Fx減小。然而,由于針對軌道上的每個部位調(diào)整控制參數(shù)是困難的,因此在諸如姿態(tài)發(fā)生變化的情況下、速度產(chǎn)生變動的情況下等,在軌道上的所有位置使作用力Fx變得比Fxlim小是困難的。
[0211]圖19是表示利用實施方式8的機(jī)器人控制系統(tǒng)進(jìn)行協(xié)調(diào)作業(yè)的情況下的、終端執(zhí)行器所承受的作用力和該終端執(zhí)行器的位置的關(guān)系的圖。根據(jù)實施方式8,將在作用力或者作用力的變化率較大的位置處進(jìn)行定位的指令值選擇作為第2學(xué)習(xí)用指令值,R個校正量的平均值與各個第2學(xué)習(xí)用指令值相加而生成第I學(xué)習(xí)用指令值。由此,能夠在軌道上的整個區(qū)域中使作用力Fx變小,其結(jié)果,無論在軌道上的哪個位置,都能夠使作用力Fx比Fxlim 小。
[0212]如以上所述,根據(jù)本發(fā)明的實施方式8,學(xué)習(xí)用指令值選擇單元600從指令值存儲單元100存儲的針對終端執(zhí)行器Ila的M個的各個運算周期的指令值中,選擇滿足與作用力相關(guān)的規(guī)定條件的N個第2學(xué)習(xí)用指令值。指令值生成單元511基于選擇出的針對終端執(zhí)行器Ila的第2學(xué)習(xí)用指令值,生成針對終端執(zhí)行器Ilb的第2學(xué)習(xí)用指令值。由此,生成學(xué)習(xí)用變換矩陣,以使得在對終端執(zhí)行器IlaUlb產(chǎn)生的作用力或者作用力的變化率變得格外大的位置處的作用力變小,因此能夠使對終端執(zhí)行器IlaUlb產(chǎn)生的作用力進(jìn)一步變小。
[0213]此外,在實施方式I?7的說明中,以機(jī)器人10a、1b的類型為6自由度垂直多關(guān)節(jié)型機(jī)器人進(jìn)行了說明,但機(jī)器人10a、10b的類型并不限定于此。機(jī)器人10a、10b的類型例如也可以為水平多關(guān)節(jié)型機(jī)器人或者直線運動機(jī)器人。
[0214]工業(yè)實用性
[0215]如上所述,本發(fā)明所涉及的機(jī)器人控制裝置以及機(jī)器人控制方法,適合應(yīng)用于一邊使多個機(jī)器人在機(jī)器人之間同步一邊進(jìn)行驅(qū)動的機(jī)器人控制裝置以及機(jī)器人控制方法。
[0216]標(biāo)號的說明
[0217]1a主控機(jī)器人,1b從屬機(jī)器人,11a,b終端執(zhí)行器,12a、b安裝臺,20a、21a、22a、23a、24a、40a 主控控制裝置,20b、21b、22b、23b、40b 從屬控制裝置,30、31、32、33、50 位置關(guān)系運算裝置,100指令值存儲單元,101a、b校正指令值生成單元,102a、b校正量生成單元,103a、b驅(qū)動控制單元,104a、b當(dāng)前位置檢測單元,105a、b作用力運算單元,106a、b校正量運算單元,107a、b校正量存儲單元,108,311,511指令值生成單元,109變換矩陣存儲單元,110a、b校正量生成單元,111a、b校正量存儲單元,200、300、400、500變換矩陣生成單元,201,301,401變換矩陣存儲單元,202、302、402變換矩陣函數(shù)生成單元,210、310變換矩陣函數(shù)存儲單元,211指令值生成單元,303第I變換矩陣函數(shù),304,404第2變換矩陣函數(shù),403試驗運轉(zhuǎn)速度設(shè)定單元,410變換矩陣函數(shù)存儲單元,411指令值生成單元,412通常運轉(zhuǎn)速度設(shè)定單元,600學(xué)習(xí)用指令值選擇單元。
【權(quán)利要求】
1.一種機(jī)器人控制裝置,其對第I機(jī)器人和與所述第I機(jī)器人不同的第2機(jī)器人進(jìn)行同步驅(qū)動, 所述機(jī)器人控制裝置的特征在于, 具備: 位置關(guān)系矩陣生成部,其基于將所述第I機(jī)器人和所述第2機(jī)器人定位于同步驅(qū)動時的各個軌跡上的位置校正完畢的指令值即每個機(jī)器人的N個第I學(xué)習(xí)用指令值,分別針對所述N個第I學(xué)習(xí)用指令值生成位置關(guān)系矩陣,所述位置關(guān)系矩陣對與所述第I機(jī)器人相關(guān)的第I學(xué)習(xí)用指令值和與所述第2機(jī)器人相關(guān)的第I學(xué)習(xí)用指令值之間的同步驅(qū)動時的位置關(guān)系進(jìn)行定義; 第I指令值輸出部,其對定義所述第I機(jī)器人的軌跡的指令值即M個的各個運算周期的第I驅(qū)動用指令值進(jìn)行輸出,其中M > N ; 位置關(guān)系矩陣插補(bǔ)部,其對所述N個位置關(guān)系矩陣進(jìn)行插補(bǔ)而生成針對各個所述第I驅(qū)動用指令值的位置關(guān)系矩陣;以及 第2指令值生成部,其使所述插補(bǔ)后的相對應(yīng)的位置關(guān)系矩陣分別作用于所述M個第I驅(qū)動用指令值,而生成對所述第2機(jī)器人的軌跡進(jìn)行定義的指令值即M個第2驅(qū)動用指令值, 所述機(jī)器人控制裝置基于所述第I驅(qū)動用指令值驅(qū)動所述第I機(jī)器人,基于所述第2驅(qū)動用指令值驅(qū)動所述第2機(jī)器人。
2.根據(jù)權(quán)利要求1所述的機(jī)器人控制裝置,其特征在于,由使用者使所述第I機(jī)器人以及所述第2機(jī)器人分別向N組示教點移動后靜止,所述機(jī)器人控制裝置還具備位置校正完畢指令值生成部,該位置校正完畢指令值生成部在每當(dāng)使所述第I機(jī)器人以及所述第2機(jī)器人分別靜止于所述N組示教點時,基于指尖所承受的作用力進(jìn)行各個指尖位置的校正,取得校正后的指尖位置或者與校正后的指尖位置相對應(yīng)的指令值,并設(shè)定為所述第I學(xué)習(xí)用指令值。
3.根據(jù)權(quán)利要求2所述的機(jī)器人控制裝置,其特征在于, 還具備位置關(guān)系矩陣函數(shù)生成部,該位置關(guān)系矩陣函數(shù)生成部生成對所述N個位置關(guān)系矩陣進(jìn)行插補(bǔ)的位置關(guān)系矩陣函數(shù), 所述位置關(guān)系矩陣插補(bǔ)部基于所述位置關(guān)系矩陣函數(shù),生成各個所述第I驅(qū)動用指令值的位置關(guān)系矩陣。
4.根據(jù)權(quán)利要求1所述的機(jī)器人控制裝置,其特征在于, 所述第I機(jī)器人和所述第2機(jī)器人是同時地把持同一工件而進(jìn)行輸送的機(jī)器人, 所述機(jī)器人控制裝置還具備: 作用力運算部,其對所述第I機(jī)器人或者所述第2機(jī)器人的指尖所承受的作用力進(jìn)行運算; 指令校正部,其在同步驅(qū)動時,針對所述第I驅(qū)動用指令值或者所述第2驅(qū)動用指令值,基于所述作用力運算部的運算值,進(jìn)行使所述第I機(jī)器人或者所述第2機(jī)器人的指尖所承受的作用力減小的校正; 位置檢測部,其在同步驅(qū)動時,進(jìn)行所述第I機(jī)器人以及所述第2機(jī)器人的位置檢測;以及 位置校正完畢指令值生成部,其在同步驅(qū)動時,針對每個機(jī)器人計算所述N個第I學(xué)習(xí)用指令值。
5.根據(jù)權(quán)利要求4所述的機(jī)器人控制裝置,其特征在于, 所述機(jī)器人控制裝置還具備位置檢測部,該位置檢測部在各個運算周期對所述第I機(jī)器人的指尖位置以及所述第2機(jī)器人的指尖位置進(jìn)行檢測, 所述位置校正完畢指令值生成部將所述第I機(jī)器人的指尖位置的檢測值中的N個檢測值、以及所述第2機(jī)器人的指尖位置的檢測值中的N個檢測值,設(shè)定為所述第I學(xué)習(xí)用指令值。
6.根據(jù)權(quán)利要求4所述的機(jī)器人控制裝置,其特征在于, 所述指令校正部在同步驅(qū)動時對所述第I驅(qū)動用指令值以及所述第2驅(qū)動用指令值進(jìn)行校正, 所述M個第I驅(qū)動用指令值以及所述M個第2驅(qū)動用指令值分別包含N個第2學(xué)習(xí)用指令值, 所述位置校正完畢指令值生成部, 分別針對所述第2學(xué)習(xí)用指令值,通過將該第2學(xué)習(xí)用指令值、和針對該第2學(xué)習(xí)用指令值的由所述指令校正部得到的最新的規(guī)定次數(shù)循環(huán)的校正量的代表值相加,從而計算所述第I學(xué)習(xí)用指令值。
7.根據(jù)權(quán)利要求6所述的機(jī)器人控制裝置,其特征在于, 所述機(jī)器人控制裝置還具備學(xué)習(xí)用指令值選擇部,該學(xué)習(xí)用指令值選擇部對所述M個第I驅(qū)動用指令值中的滿足與所述作用力相關(guān)的設(shè)定條件的驅(qū)動用指令值進(jìn)行選擇,將所述選擇出的驅(qū)動用指令值設(shè)定為所述第I機(jī)器人的第2學(xué)習(xí)用指令值。
8.根據(jù)權(quán)利要求6所述的機(jī)器人控制裝置,其特征在于, 所述代表值是平均值、加權(quán)平均值、中間值或者最頻繁出現(xiàn)值。
9.根據(jù)權(quán)利要求1至8中任一項所述的機(jī)器人控制裝置,其特征在于, 所述機(jī)器人控制裝置還具備位置關(guān)系矩陣函數(shù)生成部,該位置關(guān)系矩陣函數(shù)生成部生成對所述N個位置關(guān)系矩陣進(jìn)行插補(bǔ)的位置關(guān)系矩陣函數(shù), 所述位置關(guān)系矩陣插補(bǔ)部基于所述位置關(guān)系矩陣函數(shù),生成各個所述第I驅(qū)動用指令值的位置關(guān)系矩陣。
10.根據(jù)權(quán)利要求1所述的機(jī)器人控制裝置,其特征在于, 所述機(jī)器人控制裝置具備: 速度設(shè)定值輸入部,其在同步驅(qū)動時接收第I速度設(shè)定值的輸入;以及 位置關(guān)系矩陣函數(shù)存儲部,其分別針對與所述第I速度設(shè)定值不同的第2速度設(shè)定值,預(yù)先存儲對所述N個位置關(guān)系矩陣進(jìn)行插補(bǔ)的位置關(guān)系矩陣函數(shù), 所述位置關(guān)系矩陣插補(bǔ)部在同步驅(qū)動時,將所述位置關(guān)系矩陣函數(shù)存儲部存儲的各個所述第2速度設(shè)定值的位置關(guān)系矩陣函數(shù)讀出,基于輸入至所述速度設(shè)定值輸入部的第I速度設(shè)定值,對所述讀出的各個第2速度設(shè)定值的位置關(guān)系矩陣函數(shù)進(jìn)行校正,基于所述校正后的位置關(guān)系矩陣函數(shù),生成各個所述第I速度指令值的位置關(guān)系矩陣。
11.一種機(jī)器人控制方法,其是對第I機(jī)器人和與所述第I機(jī)器人不同的第2機(jī)器人進(jìn)行同步驅(qū)動的機(jī)器人控制方法, 所述機(jī)器人控制方法具備: 位置關(guān)系矩陣生成步驟,在該步驟中,基于將所述第I機(jī)器人和所述第2機(jī)器人定位于同步驅(qū)動時的各個軌跡上的位置校正完畢的指令值即每個機(jī)器人的N個第I學(xué)習(xí)用指令值,分別針對所述N個第I學(xué)習(xí)用指令值生成位置關(guān)系矩陣,所述位置關(guān)系矩陣對與所述第I機(jī)器人相關(guān)的第I學(xué)習(xí)用指令值和與所述第2機(jī)器人相關(guān)的第I學(xué)習(xí)用指令值之間的同步驅(qū)動時的位置關(guān)系進(jìn)行定義; 第I指令值輸出步驟,在該步驟中,輸出對所述第I機(jī)器人的軌跡進(jìn)行定義的指令值即M個的各個運算周期的第I驅(qū)動用指令值,其中M > N ; 位置關(guān)系矩陣插補(bǔ)步驟,在該步驟中,對所述N個位置關(guān)系矩陣進(jìn)行插補(bǔ)而生成各個所述第I驅(qū)動用指令值的位置關(guān)系矩陣; 第2指令值生成步驟,在該步驟中,使所述插補(bǔ)后的相對應(yīng)的位置關(guān)系矩陣分別作用于所述M個第I驅(qū)動用指令值,而生成對所述第2機(jī)器人的軌跡進(jìn)行定義的指令值即M個第2驅(qū)動用指令值;以及 同步驅(qū)動步驟,在該步驟中,基于所述第I驅(qū)動用指令值驅(qū)動所述第I機(jī)器人,基于所述第2驅(qū)動用指令值驅(qū)動所述第2機(jī)器人。
【文檔編號】B25J13/00GK104379308SQ201380033535
【公開日】2015年2月25日 申請日期:2013年5月30日 優(yōu)先權(quán)日:2012年6月29日
【發(fā)明者】白土浩司 申請人:三菱電機(jī)株式會社
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1
富锦市| 囊谦县| 新宾| 修水县| 特克斯县| 科尔| 中牟县| 凤阳县| 正定县| 若尔盖县| 湘乡市| 天峻县| 武安市| 琼结县| 利津县| 中卫市| 易门县| 长武县| 酉阳| 蒙自县| 保德县| 苏州市| 奈曼旗| 聂荣县| 姜堰市| 威信县| 怀仁县| 桃源县| 萨嘎县| 兴国县| 镇安县| 高台县| 鹤岗市| 松潘县| 大同县| 汽车| 库尔勒市| 秦皇岛市| 静海县| 新津县| 阿拉善左旗|