JP5556558B2 - Robot arm control device, control method, and control program - Google Patents
Robot arm control device, control method, and control program Download PDFInfo
- Publication number
- JP5556558B2 JP5556558B2 JP2010225712A JP2010225712A JP5556558B2 JP 5556558 B2 JP5556558 B2 JP 5556558B2 JP 2010225712 A JP2010225712 A JP 2010225712A JP 2010225712 A JP2010225712 A JP 2010225712A JP 5556558 B2 JP5556558 B2 JP 5556558B2
- Authority
- JP
- Japan
- Prior art keywords
- motor torque
- value
- robot arm
- torque
- link
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
- 238000000034 method Methods 0.000 title claims description 11
- 238000001514 detection method Methods 0.000 claims description 39
- 230000007246 mechanism Effects 0.000 claims description 18
- 238000004364 calculation method Methods 0.000 claims description 14
- 230000007423 decrease Effects 0.000 claims description 8
- 230000005484 gravity Effects 0.000 claims description 8
- 230000000704 physical effect Effects 0.000 claims description 8
- 230000001133 acceleration Effects 0.000 claims description 4
- 230000006870 function Effects 0.000 description 13
- 230000001629 suppression Effects 0.000 description 4
- 239000003638 chemical reducing agent Substances 0.000 description 3
- 238000004088 simulation Methods 0.000 description 3
- 238000010586 diagram Methods 0.000 description 2
- 210000000245 forearm Anatomy 0.000 description 2
- 238000005259 measurement Methods 0.000 description 2
- 239000013307 optical fiber Substances 0.000 description 2
- 230000003321 amplification Effects 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 239000011159 matrix material Substances 0.000 description 1
- 238000003199 nucleic acid amplification method Methods 0.000 description 1
- 230000008058 pain sensation Effects 0.000 description 1
- 238000012502 risk assessment Methods 0.000 description 1
Images
Landscapes
- Manipulator (AREA)
Description
本発明は、ロボットアームの制御に関し、特にロボットアームのリンク機構に人体等の物体が挟まれた場合の安全制御に関するものである。 The present invention relates to control of a robot arm, and more particularly to safety control when an object such as a human body is sandwiched between link mechanisms of a robot arm.
リンク機構を自律的に制御することにより各種作業を実行するロボットアームは、リンク間に人体等の物体が挟まれた場合の安全制御を必要とする。このような安全制御の重要性は、ロボットアームが人の生活空間で使用されるケースが増加していることに伴い増加している。 A robot arm that performs various operations by autonomously controlling the link mechanism requires safety control when an object such as a human body is sandwiched between the links. The importance of such safety control is increasing as the number of cases in which robot arms are used in human living spaces is increasing.
図5は、特許文献1に係る関節装置101の機能的な構成を示している。関節装置101は、比較部102、誤差増幅部103、モータ104、減速機105、位置検出部106、及びトルク制限値発生部107を備える。比較部102は、位置検出部106が検出する関節の位置(角度)の検出値を位置指令(目標値)から減算した位置追従偏差を出力する。誤差増幅部103は、トルク制限値発生部107からのトルク制限値の範囲内で位置追従偏差が最も小さくなるようなトルク指令を出力する。モータ104は、トルク指令に応じてモータトルクを発生する。減速機105は、モータトルクをロボットアームのリンク機構を駆動する助力に変換する。位置検出部106は、減速機105と同じ回転軸に設置され、関節角度を示す位置検出値を出力する。トルク制限値発生部107は、位置検出値と位置追従偏差に応じて、関節角度と関節角度の変化の方向に応じたトルク制限値を出力する。
FIG. 5 shows a functional configuration of the
図6は、特許文献2に係る圧力分布センサ201の構成を概略的に示している。圧力分布センサ201は、センサユニット202、センサメッシュ203、及び光ファイバ204を備える。センサメッシュ203は、複数のセンサユニット202がマトリクス状に配列されて構成される。各センサユニット202により検出された圧力検出信号は、各センサユニット202と接続する複数の光ファイバ204を介して外部に出力される。出力された各圧力検出信号により各センサメッシュ203の位置における圧力が分かる。そして、このような圧力分布センサ201をロボットアームのリンク表面に設置することにより、リンク間に物体が挟まれたこと及び挟まれた位置を検出することができる。
FIG. 6 schematically shows the configuration of the
上記特許文献1に係る関節装置101は、物体がロボットアームのリンク間に挟まれた場合、挟まれた場所によらず、モータトルクを関節角度のみに依存して制限する。従って、挟まれた位置が2つのリンクを連結する関節に近い場合、挟まれた物体に大きな力が加わる可能性がある。また、挟まれた位置が関節から遠い場合、モータトルクが必要以上に抑制される場合がある。即ち、ロボットアームが人体等に危害を与えることなく作業を続行できる状況であっても、作業が中断される場合がある。
When the object is sandwiched between the links of the robot arm, the
また、上記特許文献2に係る圧力分布センサ201を用いる場合、挟まれた位置を正確に検出するためには、リンク表面に多数のセンサユニット202を設置しなければならない。そのため、製造コスト・制御装置の演算負荷・重量・故障率等が増加し、電磁干渉が発生する等の問題がある。
In addition, when using the
そこで、本発明は、リンク上の圧力分布を検出するセンサ等を用いることなく物体が挟まれた位置(挟み位置)を正確に検出し、挟み位置に応じて関節機構のトルクを最適に制御できるようにすることを目的とする。 Therefore, the present invention can accurately detect the position where the object is pinched (pinching position) without using a sensor or the like that detects the pressure distribution on the link, and can optimally control the torque of the joint mechanism according to the pinching position. The purpose is to do so.
本発明の第1の態様は、リンク機構の関節部を駆動するモータトルクを制御するロボットアームの制御装置であって、リンク機構の関節部を駆動するモータトルクを制御するロボットアームの制御装置であって、前記関節部の関節角度の検出値が目標値に追従するように演算される基本トルクに、安全性を考慮して設定される安全モータトルクプロフィールによる制限を適用することにより、安全モータトルクを演算するモータトルク演算手段と、前記関節角度の検出値に対する前記安全モータトルクの変化が、前記関節部より先端側に連結される前記リンクの重量を支えるためのトルクに基づいて規定される基準値から乖離したと判断される場合に、隣合う前記リンクの間に物体が挟まれたと判定する挟み検出手段と、前記挟み検出手段により前記物体の挟み込みが検出された場合に、前記基準値からの乖離が検出された時の関節角度、前記関節角度の検出値、前記物体について予め設定される物性特性値、及び前記モータトルクの検出値から少なくとも前記関節部より先端側に連結される前記リンクの重量を支えるためのトルクを排除した挟みトルクに基づいて、前記関節部から前記物体が挟まれた位置までの距離を示す挟み位置を推定する前記挟み位置推定手段と、前記挟み位置が小さくなるに伴い前記安全モータトルクの上限値が小さくなるように、且つ前記挟み位置が大きくなるに伴い前記安全モータトルクの上限値が大きくなるように前記安全モータトルクプロフィールを生成する安全モータトルク演算手段とを備えるものである。 A first aspect of the present invention is a robot arm control device that controls a motor torque that drives a joint portion of a link mechanism, and a robot arm control device that controls a motor torque that drives a joint portion of the link mechanism. By applying a restriction based on a safety motor torque profile set in consideration of safety to a basic torque calculated so that a detected value of a joint angle of the joint portion follows a target value, a safety motor Motor torque calculation means for calculating torque, and changes in the safety motor torque with respect to the detected value of the joint angle are defined based on torque for supporting the weight of the link connected to the distal end side from the joint portion. When it is determined that the object has deviated from the reference value, the pinch detection unit that determines that an object is pinched between the adjacent links and the pinch detection unit When the object is caught, the joint angle when the deviation from the reference value is detected, the detected joint angle, the physical property value preset for the object, and the motor torque A pinch position indicating a distance from the joint part to a position where the object is pinched based on a pinch torque excluding a torque for supporting the weight of the link coupled to the tip side from at least the joint part from a detection value And the upper limit value of the safety motor torque increases as the clamping position increases, so that the upper limit value of the safety motor torque decreases as the clamping position decreases. Thus, a safe motor torque calculating means for generating the safe motor torque profile is provided.
上記態様によれば、高価なセンサ等を用いることなく物体の挟み位置を正確に推定することができると共に、挟み位置に応じて適切なトルク指令を生成することができる。また、挟まれた人体等への危害を確実に防止することができると共に、当該人体等に危害を与えない範囲でロボットアーム本来の動作を続行させることができる。 According to the above aspect, the object pinching position can be accurately estimated without using an expensive sensor or the like, and an appropriate torque command can be generated according to the pinching position. In addition, it is possible to reliably prevent harm to a human body or the like being sandwiched, and to continue the original operation of the robot arm within a range that does not cause harm to the human body or the like.
また、前記安全モータトルクプロフィールは、前記基本トルクを変数とし、前記安全モータトルクの上限値を最大値とする飽和関数又はシグモイド関数であることが好ましい。 Moreover, it is preferable that the said safe motor torque profile is a saturation function or a sigmoid function which makes the said basic torque a variable and makes the upper limit of the said safe motor torque the maximum value.
また、前記基準値は、前記リンクの重量、及び当該リンクが所定の対象物を保持している場合には当該対象物の重量を加算した重量に基づいて規定される、前記関節角度の検出値の正弦関数で表わされることが好ましい。 Further, the reference value is defined based on the weight of the link and, when the link holds a predetermined object, a weight obtained by adding the weight of the object. The sine function is preferably represented by
また、前記正弦関数は、例えば下記式(1)により表わすことができる。 The sine function can be expressed by the following equation (1), for example.
ただし、記号の意味は以下の通りである。
Tm:2つの隣合う前記リンクが前記物体を挟んでいない場合の前記モータトルク
m:前記2つの隣合うリンクのうち前記ロボットアームを備えたサービスロボットの本体から遠い方のリンクの質量(前記対象物を把持している場合はその質量も含む)
g:重力加速度
l:前記関節から前記2つの隣合うリンクのうち前記サービスロボットの本体から遠い方のリンクの重心までの距離
θ:前記関節角度の検出値
θ0:前記2つの隣合うリンクのうち前記サービスロボットの本体に近い方のリンクの水平となす角度
However, the meaning of the symbols is as follows.
Tm: Motor torque when two adjacent links do not sandwich the object m: Mass of the link farther from the body of the service robot having the robot arm among the two adjacent links (the target (If the object is gripped, its mass is included)
g: Gravity acceleration l: Distance from the joint to the center of gravity of the link farther from the main body of the service robot among the two adjacent links θ: Detected value of the joint angle θ0: Of the two adjacent links Angle formed by the horizontal of the link closer to the main body of the service robot
また、前記物性特性値は、人体の一部のヤング率及びポアソン比に基づいて規定されることが好ましい。 The physical property value is preferably defined based on a Young's modulus and Poisson's ratio of a part of the human body.
また、前記挟み位置は、例えば下記式(2)により算出することができる。 Moreover, the said pinching position is computable by following formula (2), for example.
ただし、記号の意味は以下の通りである。
θ:前記関節角度の検出値
θc:前記正弦関数からの乖離が検出された時の関節角度
Tc:前記挟みトルク
E:人体のヤング率
ν:人体のポアソン比
However, the meaning of the symbols is as follows.
θ: detected value of the joint angle θc: joint angle when a deviation from the sine function is detected Tc: pinching torque E: Young's modulus of human body ν: Poisson's ratio of human body
また、本発明の第2の態様は、上記制御装置と同様の技術的思想に基づく制御方法である。 A second aspect of the present invention is a control method based on the same technical idea as that of the control device.
更に、本発明の第3の態様は、上記制御装置及び制御方法と同様の技術的思想に基づく制御用プログラムである。 Furthermore, a third aspect of the present invention is a control program based on the same technical idea as the control device and the control method.
本発明によれば、高価なセンサ等を用いることなく物体の挟み位置を正確に推定することができると共に、挟み位置に応じて適切なトルク指令を生成することができる。また、挟まれた人体等への危害を確実に防止することができると共に、当該人体等に危害を与えない範囲でロボットアーム本来の動作を続行させることができる。 According to the present invention, an object pinching position can be accurately estimated without using an expensive sensor or the like, and an appropriate torque command can be generated according to the pinching position. In addition, it is possible to reliably prevent harm to a human body or the like being sandwiched, and to continue the original operation of the robot arm within a range that does not cause harm to the human body or the like.
実施の形態1
以下、図面を参照して本発明の実施の形態について説明する。図1は、本発明の実施の形態1に係るロボットアーム1の機能的な構成を示している。ロボットアーム1は、アーム部11、関節角度指令発生部12、及び駆動力抑制制御部13を備える。
Embodiment 1
Embodiments of the present invention will be described below with reference to the drawings. FIG. 1 shows a functional configuration of a robot arm 1 according to Embodiment 1 of the present invention. The robot arm 1 includes an
アーム部11は、リンク機構21、関節モータ22、及び関節角度検出部23を備える。リンク機構21は、基本的に変形しない構造物である複数のリンク、リンク間を接続する関節機構等から構成される。リンク機構21は、ロボットアーム1の使用目的に応じて設計され、例えば物体の把持、運搬等が可能となるように構成される。関節モータ22は、電気信号に応じてその駆動軸が制御され、隣合うリンクの相対的な位置関係を変化させる。関節角度検出部23は、各関節モータ22の駆動軸の回転量及び回転方向を検出し、その検出結果を電気信号に変換して出力する。
The
関節角度指令発生部12は、アーム部11が所定の動作を行うのに必要な関節角度(関節機構の駆動軸の回転角度)の目標値を示す関節角度指令θrを出力する。この関節角度指令θrは、通常、アーム部11の本来果たすべき動作を制御するメインの制御プログラムに従って生成される。
The joint angle
駆動力抑制制御部13は、モータトルク演算部31、電流制御部32、挟み検出部33、挟み位置推定部34、及び安全モータトルク演算部35を備える。
The driving force
モータトルク演算部31は、関節角度指令θr、関節角度検出値θ、及び安全モータトルク演算部35が出力する安全モータトルクプロフィールPsを入力し、安全モータトルク指令Tsを出力する。安全モータトルク指令Tsは、関節角度検出値θが関節角度指令θrに追従するように生成される基本モータトルク指令T0に、安全モータトルクプロフィールPsを適用して生成されたものである。ここでいう適用とは、例えば、PsをT0を変数とする関数で表わし、Ts=Ps(T0)を演算すること等が相当する。例えば、当該関数Psは、所定値を上限値とし、当該所定値の符号を反転させた値を下限値とする飽和関数、シグモイド関数等であることが好ましい。
The motor
電流制御部32は、モータトルク演算部31からの安全モータトルク指令Tsを入力し、関節モータ22が発生するモータトルクTmが安全モータトルク指令Tsに一致するようなモータ電流を関節モータ22に出力する。モータトルクTmは、周知の機構により検出され、フィードバック制御等に利用される。
The
挟み検出部33は、関節角度検出値θ及び安全モータトルク指令Tsを入力し、安全モータトルク指令Tsの関節角度検出値θに対する変化の特徴から、リンク機構21に物体が挟まれたことを検出し、挟み検出信号Sを出力する。
The
挟み位置推定部34は、関節角度検出値θ、安全モータトルク指令Ts、及び挟み検出信号Sを入力し、物体が挟まれた位置(関節から当該位置までの距離)を示す挟み位置xを推定し、この推定結果を出力する。
The pinch
安全モータトルク演算部35は、挟み位置xを入力し、この挟み位置xに応じた安全モータトルクプロフィールPsを生成し出力する。
The safety
上記関節角度指令生成部12及び駆動力抑制制御部13は、マイクロプロセッサ等を用いたプログラマブル電子制御系、各種電気回路(論理回路)の組み合わせ等により構成される。
The joint angle
図2Aは、隣合う第1及び第2のリンク41,42がそれぞれ人体43と点接触している状態を概略的に示している。図2Bは、隣合う第1及び第2のリンク41,42がそれぞれ人体43と面接触している状態を概略的に示している。第1及び第2のリンク41,42は、関節44により回動可能に連結されている。例えば、当該ロボットアームが人間を模倣したものの場合、第1のリンク41は上腕、関節44は肘、第2のリンク42は前腕に対応する。
FIG. 2A schematically shows a state in which the adjacent first and
図2Aにおいて、人体43の断面の中心と第1又は第2のリンク41,42の接点との間の距離R、関節44と当該接点との距離(挟み位置)x、第1及び第2のリンク41,42が人体43と点接触している状態の関節角度θc(θc/2)が示されている。図2Aは、第1のリンク41に対して第2のリンク42が時計回りに回転して人体43を挟み始めた状態を示している。
In FIG. 2A, the distance R between the center of the cross section of the
図2Aの状態から更に第2のリンク42を時計回りに回転させると、人体43が潰されて図2Bのような状態となる。図2Bの状態において、人体43は第1及び第2のリンク41,42と面接触している。図2Bにおいて、接触面の断面の長さの半分a、関節角度θ(θ/2)が示されている。本実施の形態においては、関節角度θは第2のリンク42が第1のリンク41と重なった状態を0[rad]とし、反時計回りに最大π[rad]まで変化できるものとする。
When the
図2Aに示されるように、挟み角度θc、距離R、及び挟み位置xの関係式は、下記式(3)となる。
人体43が第1及び第2のリンク41,42に挟まれて潰された状態における接触面の断面の長さの半分aは、Contact Mechanics, Johnson, K,L, Cambridge University Press, Cambridge, United Kingdom, 1985より、下記式(4)で与えられる。
Half of the length of the cross section of the contact surface when the
ただし、Eは人体のヤング率、νは人体のポアソン比、Tcは挟みトルクである。ここで、挟みトルクTcとは、モータトルクTmから第2のリンク42の重量(第2のリンク42が物体を把持等している場合は当該物体の重量を含む)、慣性力等に対抗するための成分を除いたものである。
Where E is the Young's modulus of the human body, ν is the Poisson's ratio of the human body, and Tc is the pinching torque. Here, the pinching torque Tc opposes the weight of the
図2B及び式(4)より下記式(5)が得られる。
式(3)及び式(5)より挟み位置xは、下記式(6)で表わされる。
このように、挟み位置xは、挟み角度θc、検出された関節角度θ、E,ν等から定まる所定の物性特性値、及び挟みトルクTcにより定まる。図2Bにおいて、第2のリンク42の質量(上記把持物体等を含む)をm、関節44から第2のリンク42の重心までの距離をl、第1のリンク41の水平と成す角度をθ0、重力加速度をgとすると、図2Bにおける理論上のモータトルクTmは、式(5)を用いて下記式(7)となることが導出される。
As described above, the pinching position x is determined by the pinching angle θc, the predetermined physical property value determined from the detected joint angle θ, E, ν, and the like, and the pinching torque Tc. In FIG. 2B, the mass of the second link 42 (including the gripped object and the like) is m, the distance from the joint 44 to the center of gravity of the
式(7)において、上式(0<θ≦θc)は、人体43が挟まれている場合に適用され、下式(θc<θ≦π)は、人体43が挟まれていない場合に適用されるものである。上式において、右辺第1項は、第2のリンク42の重量を支えるためのモータトルク成分であり、第2項は、挟みトルクTcである。利用者の生活補助等に用いられるロボットアームは、一般的にゆっくりした動作しか実行しないため、当該上式においては第2のリンク42の慣性力が考慮されていない。慣性力を無視できない場合には、当該慣性成分を右辺に加算すればよい。
In Expression (7), the above expression (0 <θ ≦ θc) is applied when the
式(7)において、第1のリンク41の水平と成す角度θ0は既知であり、関節44から第2のリンク42の重心までの距離lは設計値より既知である。従って、第1のリンク41と第2のリンク42とが人体43に接触していない時(θc<θ≦π)のモータトルクTmから、第2のリンク42の質量mを算出することができる。そして、実際のモータトルクTmから式(7)下式におけるモータトルクTmを減算し、その結果の絶対値が閾値(微小値)を超えたら人体43の挟み込みが発生したと判定される。即ち、人体43が挟まれていないθc<θ≦πの範囲においては、理論上のTmの変化は関節角度検出値θの正弦関数となるため、実際のモータトルクTm、即ち安全モータトルク指令Tsの変化が正弦関数を外れた時点で人体43の物体の挟み込みが発生したと判定することができる。そして、この時の関節角度検出値θが挟み角度θcとなる。
In equation (7), the
そして、本実施の形態においては、挟みトルクTcが、人体43に危害を与えない限界安全モータトルクTlimを超えないように制御される。限界安全モータトルクTlimは、人体43に危害を与えない外力の最大値である限界安全外力Flim及び挟み位置xに基づいて求められる。限界安全外力Flimは、産業安全の分野で広く知られるものである(齋藤剛、池田博康「人間協調型ロボットの機械的刺激に対する人体痛覚耐性限界の測定」、産業安全研究所特別研究報告、NIIS-SRR-NO.33、2005年9月;「消費生活製品向けリスクアセスメントのハンドブック、第1版」、経済産業省等参照)。本実施の形態に係る限界安全モータトルクTlimは、下記式(8)で与えられる。尚、当該数式は一例であり、当該事項の趣旨は、挟み位置xが小さい程限界安全モータトルクTlimが小さくなるように、挟み位置xが大きい程限界安全モータトルクTlimが大きくなるようにすることである。挟み位置xが小さい(関節44に近い)場合には、人体43への危害を確実に防止するために、ロボットアーム1に求められる本来の動作ができなくなったとしても、Tlimを小さく設定する必要がある。一方、挟み位置xが大きい(関節44から遠い)場合には、Tlimをある程度大きく設定しても人体43への危害を防止できる可能性が高い。従って、挟み位置xが比較的大きい場合には、Tlimを比較的大きく設定し、本来の動作を続行できる可能性を高くすることが有効である。
In the present embodiment, the pinching torque Tc is controlled so as not to exceed the limit safe motor torque Tlim that does not harm the
安全モータトルクプロフィールPsは、式(8)の限界安全モータトルクTlimを最大値、その符号を反転させたものを最小値とする飽和関数又はシグモイド関数として与えられることが好ましい。これにより、安全モータトルク指令Ts(=Ps(T0))は、−Tlim<Ts<Tlimの範囲内で連続的に変化する値として与えられる。 The safe motor torque profile Ps is preferably given as a saturation function or a sigmoid function having the maximum value of the limit safe motor torque Tlim in Equation (8) and the minimum value obtained by inverting the sign. Thereby, the safe motor torque command Ts (= Ps (T0)) is given as a value that continuously changes within the range of -Tlim <Ts <Tlim.
図3は、本実施の形態に係るロボットアーム1における制御の流れを示している。先ず、モータトルク演算部31(図1参照)は、関節角度検出値θが関節角度指令θrに追従するように基本モータトルク指令T0を算出し(S1)、安全モータトルク演算部35より安全モータトルクプロフィールPsを読み込み(S2)、安全モータトルク指令Tsを算出する(S3)。次いで、挟み検出部33は、Tsのθに対する変化を表わす曲線が正弦波から乖離しているか否かを判定し(S4)、乖離していないと判定された場合(N)には、当該Tsに基づいてアーム部11の関節モータ22を制御する(S10)。
FIG. 3 shows a control flow in the robot arm 1 according to the present embodiment. First, the motor torque calculation unit 31 (see FIG. 1) calculates a basic motor torque command T0 so that the detected joint angle value θ follows the joint angle command θr (S1), and the safety motor
一方、ステップS4において、乖離していると判定された場合(Y)には、挟み検出部33は挟み検出信号Sを出力する(S5)。挟み位置推定部34は、挟み検出信号Sを受信すると、関節角度検出値θ及び安全モータトルク指令Tsを入力し、上述のように式(6)、(7)等に基づいて、挟み位置xを推定する(S6)。次いで、安全モータトルク演算部35は、挟み位置xに基づいて、上述のように式(8)等に基づいて限界安全モータトルクTlimを決定し(S7)、安全モータトルクプロフィールPsを生成する(S8)。そして、モータトルク演算部31は、ステップS8で生成された安全モータトルクプロフィールPsを適用して安全モータトルク指令Tsを演算し(S9)、当該演算結果に基づいてモータ制御を行う(S10)。
On the other hand, when it is determined in step S4 that there is a divergence (Y), the
上記構成のアームロボット1によれば、高価なセンサ等を用いることなく物体の挟み位置を正確に推定することができると共に、挟み位置に応じて適切なトルク指令を生成することができる。また、挟まれた人体等への危害を確実に防止することができると共に、当該人体等に危害を与えない範囲でロボットアーム1本来の動作を続行させることができる。 According to the arm robot 1 having the above configuration, it is possible to accurately estimate the pinching position of an object without using an expensive sensor or the like, and it is possible to generate an appropriate torque command according to the pinching position. In addition, it is possible to reliably prevent harm to the human body or the like that is sandwiched, and to continue the original operation of the robot arm 1 within a range that does not cause harm to the human body or the like.
以下に、実施の形態1に係るロボットアーム1のシミュレーション結果を示す。シミュレーションに用いた数値は以下の通りである。
m=2.0[kg]
l=0.13[m]
g=9.8[s^−2]
E=25×10^3[MPa]
ν=0.25
θ0=200・π/180[rad]
R=20×10^−3[m]
x=50×10^−3[m]
Flim=50[N]
上記数値は、人間の前腕の物性値に基づいている。
The simulation result of the robot arm 1 according to the first embodiment is shown below. The numerical values used for the simulation are as follows.
m = 2.0 [kg]
l = 0.13 [m]
g = 9.8 [s ^ -2]
E = 25 × 10 ^ 3 [MPa]
ν = 0.25
θ0 = 200 · π / 180 [rad]
R = 20 × 10 ^ -3 [m]
x = 50 × 10 ^ -3 [m]
Flim = 50 [N]
The above numerical values are based on the physical property values of the human forearm.
本シミュレーションは、図2A,Bに示すロボットアームの関節角度を制御する際に、挟まれた人体43に加わる力が限界安全外力Flim以内となるように制御するものである。
In this simulation, when the joint angle of the robot arm shown in FIGS. 2A and 2B is controlled, the force applied to the sandwiched
図4Aは、実施の形態1に係るモータトルクTm(Ts)と時間との関係を示している。同図中、実線は本発明に係るモータトルクを示し、一点鎖線は従来技術に係るモータトルクを示している。 FIG. 4A shows the relationship between the motor torque Tm (Ts) and time according to the first embodiment. In the figure, the solid line indicates the motor torque according to the present invention, and the alternate long and short dash line indicates the motor torque according to the prior art.
図4A中0[s]から2.73[s]の区間において、モータトルクTmの関節角度検出値θに対する変化の波形が正弦波となっており、第1及び第2のリンク41,42の間に人体43は挟まれていないと判定された。2.73[s]において、モータトルクTmは急激に変化して正弦波から乖離しており、人体43が挟まれたことが検出された。その後、挟み位置xが推定され、限界安全モータトルクTlimが決定され、安全モータトルクプロフィールPsが生成され、当該Psが適用されて安全モータトルク指令Tsが出力された。即ち、2.73[s]以降、式(7)の上式右辺第2項で示される挟みトルクTcが計算され、その絶対値が式(8)の限界安全モータトルクTlimを超えないように制限された。そして、3.14[s]において、挟みトルクTcの絶対値が限界安全モータトルクTlimに達し、その後モータトルクTmは一定の値を超えないように制限されている。
In the section from 0 [s] to 2.73 [s] in FIG. 4A, the waveform of the change of the motor torque Tm with respect to the joint angle detection value θ is a sine wave, and the first and
一方、従来技術においては、限界安全モータトルクTlimによる挟みトルクTcの制限がないので、予め設定したトルク制限値に達するまでモータトルクの絶対値は増加し続ける。 On the other hand, in the prior art, there is no limit of the pinching torque Tc by the limit safe motor torque Tlim, so the absolute value of the motor torque continues to increase until a preset torque limit value is reached.
ここで、式(6)を用いて2.73[s]における挟み位置xが推定されたが、この推定結果は50×10^−3[m]となり、実測値と一致した。また、限界安全モータトルクTlimは、式(8)を用いて算出され、モータトルクの成分のうち挟みトルクTcの絶対値のみが限界安全モータトルクTlimに制限されるような安全モータトルクプロフィールPsが出力されている。そして、関節角度検出値θが関節角度指令θrに追従するようなモータトルク指令T0に安全モータトルクプロフィールPsを適用することにより、安全モータトルク指令Tsが出力されている。 Here, the sandwiching position x in 2.73 [s] was estimated using Equation (6), and this estimation result was 50 × 10 ^ -3 [m], which was consistent with the actual measurement value. Further, the limit safe motor torque Tlim is calculated using the equation (8), and a safety motor torque profile Ps such that only the absolute value of the pinching torque Tc among the motor torque components is limited to the limit safety motor torque Tlim is obtained. It is output. The safety motor torque command Ts is output by applying the safety motor torque profile Ps to the motor torque command T0 in which the detected joint angle value θ follows the joint angle command θr.
図4Bは、実施の形態1に係る挟み力Fcと時間との関係を示している。この挟み力Fcは、第1のリンク41と第2のリンク42とが人体43を挟む力のことである。挟み力Fcは、上記挟みトルクTcを挟み位置xにより除算することにより算出される。図4Bにおいて、実線は本発明に係る挟み力Fcを示し、一点鎖線は従来技術に係る挟み力を示し、破線は限界安全外力Flimを示している。本発明によると挟み力Fcが限界安全外力Flimを超えないのに対し、従来技術によると予め設定したトルク制限値に達するまで挟み力Fcが増加し続けることが分かる。
FIG. 4B shows the relationship between the pinching force Fc and time according to the first embodiment. This pinching force Fc is a force by which the
図4Cは、実施の形態1に係る関節角度検出値θと時間との関係を示している。同図において、実線は本発明に係る関節角度検出値を示し、一点鎖線は従来技術に係る関節角度検出値を示している。本実施の形態においては、関節角度指令生成部12は、1.04[rad]から0.52[rad]まで直線的に変化する関節角度指令θrを出力する。従来技術によると関節角度検出値は人体43が受ける挟み力Fcの大きさに関わらず、関節角度指令θrに追従する。一方、本発明によると3.14[s]以降において挟み力Fcが限界安全外力Flimを超えないようにするため、関節角度検出値θが0.71[rad]より小さくならないように抑制される。
FIG. 4C shows the relationship between the detected joint angle value θ and time according to the first embodiment. In the figure, the solid line indicates the joint angle detection value according to the present invention, and the alternate long and short dash line indicates the joint angle detection value according to the prior art. In the present embodiment, the joint angle
以上のように、本発明によれば、高価なセンサ等を用いることなく物体の挟み位置を正確に推定することができると共に、挟み位置に応じて適切なトルク指令を生成することができる。また、挟まれた人体等への危害を確実に防止することができると共に、当該人体等に危害を与えない範囲でロボットアーム1本来の動作を続行させることができる。 As described above, according to the present invention, an object pinching position can be accurately estimated without using an expensive sensor or the like, and an appropriate torque command can be generated according to the pinching position. In addition, it is possible to reliably prevent harm to the human body or the like that is sandwiched, and to continue the original operation of the robot arm 1 within a range that does not cause harm to the human body or the like.
なお、本発明は上記実施の形態に限られたものではなく、趣旨を逸脱しない範囲で適宜変更することが可能である。 Note that the present invention is not limited to the above-described embodiment, and can be changed as appropriate without departing from the spirit of the present invention.
本発明は、例えば家事手伝いロボット、接客ロボット、介護ロボット、リハビリロボット等のリンク機構を備えたロボット全般に適用することができる。 The present invention can be applied to all robots equipped with a link mechanism such as a housework assisting robot, a customer service robot, a care robot, and a rehabilitation robot.
1 ロボットアーム
11 アーム部
12 関節角度指令発生部
13 駆動力抑制制御部
21 リンク機構
22 関節モータ
23 関節角度検出部
31 モータトルク演算部
32 電流制御部
33 挟み検出部
34 挟み位置推定部
35 安全モータトルク演算部
41 第1のリンク
42 第2のリンク
43 人体(物体)
44 関節
DESCRIPTION OF SYMBOLS 1
44 joints
Claims (13)
前記関節部の関節角度の検出値が目標値に追従するように演算される基本トルクに、安全性を考慮して設定される安全モータトルクプロフィールによる制限を適用することにより、安全モータトルクを演算するモータトルク演算手段と、
前記関節角度の検出値に対する前記安全モータトルクの変化が、前記関節部より先端側に連結される前記リンクの重量を支えるためのトルクに基づいて規定される基準値から乖離したと判断される場合に、隣合う前記リンクの間に物体が挟まれたと判定する挟み検出手段と、
前記挟み検出手段により前記物体の挟み込みが検出された場合に、前記基準値からの乖離が検出された時の関節角度、前記関節角度の検出値、前記物体について予め設定される物性特性値、及び前記モータトルクの検出値から少なくとも前記関節部より先端側に連結される前記リンクの重量を支えるためのトルクを排除した挟みトルクに基づいて、前記関節部から前記物体が挟まれた位置までの距離を示す挟み位置を推定する前記挟み位置推定手段と、
前記挟み位置が小さくなるに伴い前記安全モータトルクの上限値が小さくなるように、且つ前記挟み位置が大きくなるに伴い前記安全モータトルクの上限値が大きくなるように前記安全モータトルクプロフィールを生成する安全モータトルク演算手段と、
を備えるロボットアームの制御装置。 A control device for a robot arm that controls a motor torque for driving a joint portion of a link mechanism,
The safety motor torque is calculated by applying a restriction based on the safety motor torque profile set in consideration of safety to the basic torque calculated so that the detected value of the joint angle of the joint follows the target value. Motor torque calculating means for
When it is determined that the change in the safety motor torque with respect to the detected value of the joint angle deviates from a reference value defined based on the torque for supporting the weight of the link connected to the distal end side from the joint portion. And pinch detection means for determining that an object is pinched between the adjacent links,
A joint angle when a deviation from the reference value is detected when the pinching detection unit detects pinching of the object, a detection value of the joint angle, a physical property value set in advance for the object, and The distance from the joint portion to the position where the object is pinched based on the pinching torque excluding the torque for supporting the weight of the link connected to the tip side from at least the joint portion from the detected value of the motor torque The pinch position estimating means for estimating the pinch position indicating
The safety motor torque profile is generated so that the upper limit value of the safety motor torque decreases as the pinch position decreases and the upper limit value of the safety motor torque increases as the pinch position increases. Safe motor torque calculation means;
A robot arm control device comprising:
請求項1に記載のロボットアームの制御装置。 The safety motor torque profile is a saturation function or sigmoid function with the basic torque as a variable and an upper limit value of the safety motor torque as a maximum value.
The robot arm control device according to claim 1.
請求項1又は2に記載のロボットアームの制御装置。 The reference value is a sine function of the detected value of the joint angle defined based on the weight of the link and, if the link holds a predetermined object, the weight obtained by adding the weight of the object Represented by
The robot arm control device according to claim 1 or 2.
請求項3に記載のロボットアームの制御装置。
ただし、記号の意味は以下の通りである。
Tm:2つの隣合う前記リンクが前記物体を挟んでいない場合の前記モータトルク
m:前記2つの隣合うリンクのうち前記ロボットアームを備えたサービスロボットの本体から遠い方のリンクの質量(前記対象物を把持している場合はその質量も含む)
g:重力加速度
l:前記関節から前記2つの隣合うリンクのうち前記サービスロボットの本体から遠い方のリンクの重心までの距離
θ:前記関節角度の検出値
θ0:前記2つの隣合うリンクのうち前記サービスロボットの本体に近い方のリンクの水平となす角度 The sine function is represented by the following formula (1):
The robot arm control device according to claim 3.
However, the meaning of the symbols is as follows.
Tm: Motor torque when two adjacent links do not sandwich the object m: Mass of the link farther from the body of the service robot having the robot arm among the two adjacent links (the target (If the object is gripped, its mass is included)
g: Gravity acceleration l: Distance from the joint to the center of gravity of the link farther from the main body of the service robot among the two adjacent links θ: Detected value of the joint angle θ0: Of the two adjacent links Angle formed by the horizontal of the link closer to the main body of the service robot
請求項1〜4のいずれか1つに記載のロボットアームの制御装置。 The physical property value is defined based on the Young's modulus and Poisson's ratio of a part of the human body.
The control apparatus of the robot arm as described in any one of Claims 1-4.
請求項1〜5のいずれか1つに記載のロボットアーム制御装置。
ただし、記号の意味は以下の通りである。
θ:前記関節角度の検出値
θc:前記正弦関数からの乖離が検出された時の関節角度
Tc:前記挟みトルク
E:人体のヤング率
ν:人体のポアソン比 The sandwiching position is calculated by the following formula (2).
The robot arm control device according to any one of claims 1 to 5.
However, the meaning of the symbols is as follows.
θ: detected value of the joint angle θc: joint angle when a deviation from the sine function is detected Tc: pinching torque E: Young's modulus of human body ν: Poisson's ratio of human body
前記関節部の関節角度の検出値が目標値に追従するように基本トルクを演算するステップと、
前記基本トルクに、安全性を考慮して設定される安全モータトルクプロフィールによる制限を適用することにより、安全モータトルクを演算するステップと、
前記関節角度の検出値に対する前記安全モータトルクの変化が、前記関節部より先端側に連結される前記リンクの重量を支えるためのトルクに基づいて規定される基準値から乖離したと判断される場合に、隣合う前記リンクの間に物体が挟まれたと判定するステップと、
前記物体の挟み込みが検出された場合に、前記基準値からの乖離が検出された時の関節角度、前記関節角度の検出値、前記物体について予め設定される物性特性値、及び前記モータトルクの検出値から少なくとも前記関節部より先端側に連結される前記リンクの重量を支えるためのトルクを排除した挟みトルクに基づいて、前記関節部から前記物体が挟まれた位置までの距離を示す挟み位置を推定するステップと、
前記挟み位置が小さくなるに伴い前記安全モータトルクの上限値が小さくなるように、且つ前記挟み位置が大きくなるに伴い前記安全モータトルクの上限値が大きくなるように前記安全モータトルクプロフィールを生成するステップと、
を備えるロボットアームの制御方法。 A robot arm control method for controlling a motor torque for driving a joint portion of a link mechanism,
Calculating a basic torque so that a detection value of a joint angle of the joint portion follows a target value;
Calculating a safe motor torque by applying a restriction by a safe motor torque profile set in consideration of safety to the basic torque; and
When it is determined that the change in the safety motor torque with respect to the detected value of the joint angle deviates from a reference value defined based on the torque for supporting the weight of the link connected to the distal end side from the joint portion. Determining that an object is sandwiched between the adjacent links;
Detection of a joint angle when a deviation from the reference value is detected, a detected value of the joint angle, a physical property value set in advance for the object, and the motor torque when the object is caught A pinching position indicating a distance from the joint portion to a position where the object is pinched based on a pinching torque excluding a torque for supporting a weight of the link connected to the tip side from at least the joint portion from a value Estimating, and
The safety motor torque profile is generated so that the upper limit value of the safety motor torque decreases as the pinch position decreases and the upper limit value of the safety motor torque increases as the pinch position increases. Steps,
A method for controlling a robot arm comprising:
請求項7に記載のロボットアームの制御方法。 The safety motor torque profile is a saturation function or sigmoid function with the basic torque as a variable and an upper limit value of the safety motor torque as a maximum value.
The method for controlling a robot arm according to claim 7.
請求項7又は8に記載のロボットアームの制御方法。 The reference value is represented by a sine function defined based on the weight of the link and, when the link holds a predetermined object, a weight obtained by adding the weight of the object.
The method for controlling a robot arm according to claim 7 or 8.
請求項9に記載のロボットアームの制御方法。
ただし、記号の意味は以下の通りである。
Tm:2つの隣合う前記リンクが前記物体を挟んでいない場合の前記モータトルク
m:前記2つの隣合うリンクのうち前記ロボットアームを備えたサービスロボットの本体から遠い方のリンクの質量(前記対象物を把持している場合はその質量も含む)
g:重力加速度
l:前記関節から前記2つの隣合うリンクのうち前記サービスロボットの本体から遠い方のリンクの重心までの距離
θ:前記関節角度の検出値
θ0:前記2つの隣合うリンクのうち前記サービスロボットの本体に近い方のリンクの水平となす角度 The sine function is represented by the following formula (3):
The robot arm control method according to claim 9.
However, the meaning of the symbols is as follows.
Tm: Motor torque when two adjacent links do not sandwich the object m: Mass of the link farther from the body of the service robot having the robot arm among the two adjacent links (the target (If the object is gripped, its mass is included)
g: Gravity acceleration l: Distance from the joint to the center of gravity of the link farther from the main body of the service robot among the two adjacent links θ: Detected value of the joint angle θ0: Of the two adjacent links Angle formed by the horizontal of the link closer to the main body of the service robot
請求項7〜10のいずれか1つに記載のロボットアームの制御方法。 The physical property value is defined based on the Young's modulus and Poisson's ratio of a part of the human body.
The method for controlling a robot arm according to any one of claims 7 to 10.
請求項7〜11のいずれか1つに記載のロボットアーム制御方法。
ただし、記号の意味は以下の通りである。
θ:前記関節角度の検出値
θc:前記正弦関数からの乖離が検出された時の関節角度
Tc:前記挟みトルク
E:人体のヤング率
ν:人体のポアソン比 The sandwiching position is calculated by the following formula (4).
The robot arm control method according to any one of claims 7 to 11.
However, the meaning of the symbols is as follows.
θ: detected value of the joint angle θc: joint angle when a deviation from the sine function is detected Tc: pinching torque E: Young's modulus of human body ν: Poisson's ratio of human body
前記ロボットアームを制御するコンピュータに、
請求項7〜12のいずれか1つに記載の方法を実行させる、
ロボットアームの制御用プログラム。 A program for controlling a robot arm that controls a motor torque for driving a joint portion of a link mechanism,
In a computer that controls the robot arm,
A method according to any one of claims 7 to 12 is performed.
Robot arm control program.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2010225712A JP5556558B2 (en) | 2010-10-05 | 2010-10-05 | Robot arm control device, control method, and control program |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2010225712A JP5556558B2 (en) | 2010-10-05 | 2010-10-05 | Robot arm control device, control method, and control program |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2012076197A JP2012076197A (en) | 2012-04-19 |
JP5556558B2 true JP5556558B2 (en) | 2014-07-23 |
Family
ID=46237028
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2010225712A Expired - Fee Related JP5556558B2 (en) | 2010-10-05 | 2010-10-05 | Robot arm control device, control method, and control program |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP5556558B2 (en) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP6496335B2 (en) | 2017-03-03 | 2019-04-03 | ファナック株式会社 | Robot system |
CN115462673B (en) * | 2022-10-11 | 2024-06-04 | 浙江喂养家智能科技有限公司 | Clamping device, control method thereof, milk warmer and storage medium |
Family Cites Families (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH01210292A (en) * | 1988-02-19 | 1989-08-23 | Toshiba Corp | Detecting method of contact of robot with environment |
JPH01230107A (en) * | 1988-03-10 | 1989-09-13 | Fanuc Ltd | Method for detecting collision of body to be driven by servomotor |
JPH081561A (en) * | 1994-06-27 | 1996-01-09 | Mitsubishi Electric Corp | Industrial robot control method |
JP3286842B2 (en) * | 1995-12-23 | 2002-05-27 | 株式会社安川電機 | Flexible control device for robot |
JP3752758B2 (en) * | 1996-12-19 | 2006-03-08 | 株式会社安川電機 | Robot arm control device |
JP3130008B2 (en) * | 1998-06-24 | 2001-01-31 | ソニー株式会社 | Joint apparatus, robot apparatus, and joint control method |
WO2009110242A1 (en) * | 2008-03-06 | 2009-09-11 | パナソニック株式会社 | Manipulator and method of controlling the same |
EP2411189B1 (en) * | 2009-03-27 | 2020-08-05 | Abb Ag | Intrinsically safe small robot and method for controlling this robot |
-
2010
- 2010-10-05 JP JP2010225712A patent/JP5556558B2/en not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
JP2012076197A (en) | 2012-04-19 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP6238021B2 (en) | ROBOT, ROBOT CONTROL DEVICE AND CONTROL METHOD, AND ROBOT CONTROL PROGRAM | |
Lee et al. | Human–robot cooperation control based on a dynamic model of an upper limb exoskeleton for human power amplification | |
JP5695223B2 (en) | ROBOT, ROBOT CONTROL DEVICE, CONTROL METHOD, AND CONTROL PROGRAM | |
JP5942311B2 (en) | ROBOT, ROBOT CONTROL DEVICE AND CONTROL METHOD, AND ROBOT CONTROL PROGRAM | |
US10464210B2 (en) | Method and device for open-loop/closed-loop control of a robot manipulator | |
JP6314426B2 (en) | Robot control apparatus and robot control method | |
JP6831530B2 (en) | Disturbance observer and robot control device | |
JP6664138B2 (en) | Control method and robot device | |
CN106994685B (en) | The finger gesture determination methods and manipulator of a kind of manipulator | |
JP2013223921A (en) | Workspace safe operation of force-controlled or impedance-controlled robot | |
WO2020024730A1 (en) | Mechanical finger and mechanical arm | |
JP5556558B2 (en) | Robot arm control device, control method, and control program | |
JP4054984B2 (en) | Robot control apparatus and control method | |
Yin et al. | Compliant control of single tendon-sheath actuators applied to a robotic manipulator | |
JP2017159427A (en) | Control device, robot, and robot system | |
JP7068133B2 (en) | Control systems, control methods, and control programs | |
Funabora et al. | Position based impedance control based on pressure distribution for wearable power assist robots | |
Sanford et al. | Physical human-robot interaction with a mobile manipulator through pressure sensitive robot skin | |
JP5614232B2 (en) | Robot hand control device, control method, and control program | |
Park et al. | Design and control of antagonistic robot joint with twisted string actuators | |
JPH10100089A (en) | Grasp control method of articulated multi-finger hand and object grasping method | |
Suzuki et al. | Development and verification of tendon-driven rotary actuator for haptics with flexible actuators and a PE line | |
Lee et al. | A robust control method of multi-DOF power-assistant robots for unknown external perturbation using sEMG signals | |
JP2838582B2 (en) | Robot hand grip control method | |
Ito et al. | Force sensorless power assist controller design of transferring assist robot |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20130822 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20140417 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20140507 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20140520 |
|
R151 | Written notification of patent or utility model registration |
Ref document number: 5556558 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R151 |
|
LAPS | Cancellation because of no payment of annual fees |