感知與外部環境的接觸的機器人控制裝置的制造方法
【技術領域】
[0001] 本發明涉及感知與外部環境的接觸的機器人控制裝置,特別涉及用于工業用機器 人的控制裝置。
【背景技術】
[0002] 為了檢測出來自外部的力施加在機器人臂上,而在機器人臂上配備有力傳感器。 在日本特開2006-21287號公報中,對以不與外部環境接觸的狀態機器人臂動作時作用于 力傳感器的內力進行推定。在機器人臂與外部環境接觸時,從力傳感器的輸出減去內力的 推定值,將求得的差值作為接觸力。而且,基于該差值,來判斷機器人臂是否與外部環境接 觸。在機器人臂與外部環境接觸的情況下,使機器人臂避免與外部環境接觸,或使機器人臂 停止,由此來實現機器人的安全的動作。
[0003] 可是,圖4A是表示一個姿勢下的機器人與線條體的關系的圖。如圖4A所示,從頂 棚懸吊的線條體109利用固定件108安裝于機器人1的機器人臂101的多個部位。而且, 如圖4B所示,存在機器人臂101進行動作以改變其姿勢的情況。
[0004] 在機器人臂101這樣進行動作以改變姿勢時,因安裝于機器人臂101等的線條體 109被拉伸而產生力。而且,安裝在機器人1的下方的力傳感器103檢測出這種因線條體 109的拉伸而引起的力。另外,通常情況下,對應機器人系統的內容來安裝線條體109,所以 每個機器人系統的線條體109的種類以及數量均不同。因此,根據機器人臂101的構成所 能夠推定的內力互不相同,不可能事先推定線條體109的拉伸引起的力。
[0005] 因此,由于推定的內力無法包含因線條體109的拉伸引起的力,因而無法正確地 判定機器人臂是否與外部環境接觸。因此,存在即使在機器人臂101沒有與外部環境接觸 時,也判斷為機器人臂101與外部環境接觸的情況,另外,還存在即使在機器人臂101與外 部環境接觸時,也判斷為機器人臂101沒有與外部環境接觸的情況。
[0006] 因此,需要對線條體109的拉伸引起的力進行修正,所以考慮以下的方法。首先, 將實際空間分割為多個小區域,在分割出的各個小區域中,測定小區域內包含機器人臂101 的前端部時的上述力并作為力修正量進行存儲。而且,從力傳感器的輸出中減去內力的推 定值以及與包含機器人臂101的前端部的當前位置的區域對應的力修正量,將求得的差值 作為接觸力。
[0007] 但是,即使在機器人臂101的前端部的位置存在于相同區域的情況下,若機器人 臂101的姿勢不同,則可能產生力修正量不恰當的情況。例如,在圖4A與圖4B中機器人臂 101的前端部的位置相同。但是,機器人的各個關節的角度不同,所以圖4A與圖4B中機器 人的姿勢不同。
[0008] 因此,在圖4A以及圖4B中,機器人臂101拉伸線條體的力的大小、這些力的方向 相互不同。在這種情況下,若僅對應機器人臂101的前端部的位置來決定力修正量,則不能 對上述的力的大小的差異以及力的方向的差異進行修正。
[0009] 本發明鑒于上述情況而完成,其目的在于提供機器人控制裝置,其即使在因安裝 于機器人臂等的線條體被拉伸而產生力的情況下,也能夠不受這種力的影響,以高精度感 知與外部環境的接觸。
【發明內容】
[0010] 為達成上述的目的,本發明的第一方案提供一種機器人控制裝置,其對安裝有力 傳感器的多關節機器人進行控制,具備:內力推定部,該內力推定部基于在上述機器人的機 器人臂沒有與外部環境接觸的狀態下的機器人臂以及安裝于該機器人臂的前端的手各自 的自重、和因上述機器人臂以及上述手各自的動作而產生的慣性力,來將產生于上述力傳 感器的安裝部位的力推定為內力;存儲部,該存儲部存儲力修正量,該力修正量通過將上述 機器人臂的多個關節各自的旋轉動作區域按照角度分隔為多個小區域,在各個小區域中, 從上述機器人臂沒有與外部環境接觸的狀態下的上述力傳感器的輸出減去由上述內力推 定部推定的內力而得到;力修正量決定部,該力修正量決定部根據上述存儲部來決定與上 述機器人臂的上述多個關節當前的角度對應的力修正量;以及接觸力算出部,該接觸力算 出部從上述力傳感器當前的輸出減去由上述內力推定部推定的內力和由上述力修正量決 定部決定的上述力修正量,從而算出上述機器人臂與外部環境接觸的接觸力。
[0011] 根據本發明的第二方案,在第一方案的基礎上,還具備停止指令部,該停止指令部 在由上述接觸力算出部算出的上述接觸力超過規定值的情況下,使上述機器人臂停止。
[0012] 根據對附圖所示的本發明的典型的實施方式的詳細的說明,本發明的上述目的、 特征以及優點乃至其他的目的、特征以及優點會變得更加清楚。
【附圖說明】
[0013] 圖1是本發明的機器人控制裝置的功能方框圖。
[0014] 圖2是表不存儲于存儲部的力修正量表的一個例子的圖。
[0015]圖3是表示一個關節的旋轉動作區域的圖。
[0016] 圖4A表示一個姿勢下的機器人與線條體的關系的圖。
[0017] 圖4B是其他姿勢下與圖4A相同的圖。
【具體實施方式】
[0018] 以下,參照附圖對本發明的實施方式進行說明。在以下的附圖中對相同的部件標 注相同的附圖標記。為了便于理解,適當變更這些附圖的比例尺。
[0019] 圖1是本發明的機器人控制裝置的功能方框圖。如圖1所示,具備多個關節的機 器人1例如六軸垂直多關節機器人與機器人控制裝置10連接。在機器人1的機器人臂101 上設置有六個關節,機器人臂101能夠通過各關節J1~J6進行轉動或扭轉動作。
[0020] 雖然在附圖中沒有表示,但是在各關節J1~J6分別設置有馬達、減速器、旋轉角 檢測器等,并通過來自機器人控制裝置10的指令來控制各關節J1~J6的旋轉角度。另外, 在機器人臂101的前端設置有手107,其把持工件。
[0021]如圖1所示,從頂棚懸吊的線條體109延伸至機器人1的手107。線條體109在機 器人臂101的多個部位利用固定件108固定。線條體109包括為了驅動手107而用于供給 動力或信號的線纜以及/或供給冷卻水或驅動用空氣的管。此外,代替手107,也可以在機 器人臂101的前端安裝焊槍等。
[0022] 在機器人臂101的根部設置有機器人底座102。再有,力傳感器103設置在機器人 底座102的下方。力傳感器103能夠分別檢測X方向、Y方向以及Z方向這三個成分的力。 施加在配置于比機器人底座102靠上方的機器人臂101上的力產生變化的情況下,力傳感 器103的輸出產生變化。
[0023] 在此,施加于機器人臂101的力包括:機器人臂101與外部環境接觸而施加于機器 人臂101的接觸力;因為機器人臂101自身動作而產生的力(以下稱為"內力;以及在機 器人臂101進行動作以改變姿勢時因線條體109被拉伸而產生的力。
[0024] 此外,力傳感器103也可以內置于機器人臂101。該情況下,施加在機器人臂101 上的力中的接觸力是指從力傳感器103的內置部位到機器人臂101的前端為止的部分與外 部環境接觸而施加在該部分上的力。
[0025] 機器人控制裝置10是數字計算機,其控制機器人1的動作。如圖1所示,機器人 控制裝置10包括:包含機器人1的動作程序等的動作規劃部17 ;以及基于動作規劃部17 生成機器人1的動作指令的動作指令生成部18。
[0026] 再有,機器人控制裝置10包括接觸力算出部15,其按機器人1的規定的控制周期, 算出機器人臂101與外部環境接觸時的接觸力。如圖2所示,接觸力算出部15包括:推定 上述內力的內力推定部11 ;存儲力修正量表的存儲部12 ;以及基于力修正量表來決定力修 正量的力修正量決定部13。
[0027] 內力推定部11通過已知的方法,將機器人臂101沒有與外部環境接觸時的、因機 器人臂101以及手107各自的自重與各自的動作產生的慣性力而作用于力傳感器103的安 裝部位的力推定為內力。在推定內力時,內力推定部11適當利用旋轉角檢測器檢測到的馬 達的旋轉角、動作規劃部17的馬達的旋轉角指令值等。由內力推定部11推定的X方向、Y 方向以及Z方向上的內力分別稱為RFX、RFY、RFZ。
[0028] 圖2是表不存儲于存儲部的力修正量表的一個例子的圖。如圖2所不,在力修正 量表中,對于機器人臂101的多個關節J1~J6中的一個關節例如關節J1而言,將關節J1 的旋轉動作區域分割為n個小區域J11~Jin。
[0029] 圖3是表示一個關節的旋轉動作區域的圖。圖3所示的中心表示關節,例如表示 關節J1的中心軸。關節J1的旋轉動作區域為360°。在圖3中,將旋轉動作區域對應繞關 節J1的角度以等間隔分割成n個小區域J11~Jin。雖然附圖中并未明示,但是針對其他 的關節J2~J6也同樣地設定n個小區域。