JP6307835B2 - ロボット、ロボット制御装置およびロボットシステム - Google Patents

ロボット、ロボット制御装置およびロボットシステム Download PDF

Info

Publication number
JP6307835B2
JP6307835B2 JP2013223561A JP2013223561A JP6307835B2 JP 6307835 B2 JP6307835 B2 JP 6307835B2 JP 2013223561 A JP2013223561 A JP 2013223561A JP 2013223561 A JP2013223561 A JP 2013223561A JP 6307835 B2 JP6307835 B2 JP 6307835B2
Authority
JP
Japan
Prior art keywords
robot arm
robot
motor
angular velocity
working state
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
Application number
JP2013223561A
Other languages
English (en)
Other versions
JP2015085406A (ja
Inventor
晃宏 五味
晃宏 五味
正樹 元▲吉▼
正樹 元▲吉▼
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Seiko Epson Corp
Original Assignee
Seiko Epson Corp
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Seiko Epson Corp filed Critical Seiko Epson Corp
Priority to JP2013223561A priority Critical patent/JP6307835B2/ja
Priority to US14/521,828 priority patent/US9568075B2/en
Priority to CN201510141448.XA priority patent/CN104802161B/zh
Priority to CN201410575597.2A priority patent/CN104552285B/zh
Priority to EP14190448.2A priority patent/EP2865498B1/en
Publication of JP2015085406A publication Critical patent/JP2015085406A/ja
Application granted granted Critical
Publication of JP6307835B2 publication Critical patent/JP6307835B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Manipulator (AREA)

Description

本発明は、ロボット、ロボット制御装置およびロボットシステムに関するものである。
特許文献1に記載のロボットは、胴体と、胴体に回動可能に設けられている一対の多関節ロボットアームとを有している。
特開2013−99806号公報
このような構成のロボットでは、例えば、片方の多関節ロボットアームが精密さを必要とする作業している最中でも、他方の多関節ロボットアームが他の作業を行う場合もある。このような場合には、他方の多関節ロボットアームの駆動により発生する振動によって、一方の多関節ロボットアームが行っている精密さを必要とする作業に悪影響を与えてしまうという問題がある。
本発明の目的は、一方の多関節ロボットアームが精密さを必要とする所定作業を行っている場合には、他方の多関節ロボットアームをなるべく振動を発生させないように駆動し、前記所定作業を十分な精度で実行することのできるロボット、ロボット制御装置およびロボットシステムを提供することにある。
このような目的は、下記の本発明により達成される。
本発明のロボットは、第1ロボットアームおよび第2ロボットアームを有し、
前記第1ロボットアームの先端が所定作業を行っていない非作業状態の場合に前記第2ロボットアームの先端を所定距離動かすのにかかる第1の時間よりも、前記第1ロボットアームの先端が前記所定作業を行っている作業状態の場合に前記第2ロボットアームの先端を前記所定距離動かすのにかかる第2の時間の方が長く、
前記第1の時間および前記第2の時間は、それぞれ、前記第2ロボットアームを静止状態から目標状態とする駆動信号を出力した時刻をt1とし、前記第2ロボットアームが最初に前記目標状態に到達した時刻をt2としたとき、t2−t1で規定されることを特徴とする。
これにより、一方の多関節ロボットアームが精密さを必要とする所定作業を行っている場合には、他方の多関節ロボットアームをなるべく振動を発生させないように駆動させるため、前記所定作業を十分な精度で実行することのできるロボットを提供することができる。
本発明のロボットでは、前記第1ロボットアームおよび前記第2ロボットアームの駆動条件を定める設定値を受け付ける設定受付部を有し、
前記設定受付部で受け付けられた前記設定値が、前記非作業状態と前記作業状態とで同じであることが好ましい。
これにより、設定値によらずに、非作業状態のときに第1ロボットアームの先端を所定距離動かしたときにかかる時間よりも、作業状態のときに第1ロボットアームの先端を所定距離動かしたときにかかる時間の方を長くすることができる。
本発明のロボットでは、前記第2ロボットアームを駆動するモーターを有し、
前記モーターについて、前記モーターの位置と指令位置の差である位置偏差に乗じる位置比例ゲインが、前記非作業状態のときよりも前記作業状態のときの方が小さいことが好ましい。
これにより、比較的簡単な制御で、非作業状態のときに第1ロボットアームの先端を所定距離動かしたときにかかる時間よりも、作業状態のときに第1ロボットアームの先端を所定距離動かしたときにかかる時間の方を長くすることができる。
本発明のロボットでは、前記第2ロボットアームを駆動するモーターを有し、
前記モーターについて、加速度および減速度の少なくとも一方が、前記非作業状態のときよりも前記作業状態のときの方が小さいことが好ましい。
これにより、比較的簡単な制御で、非作業状態のときに第1ロボットアームの先端を所定距離動かしたときにかかる時間よりも、作業状態のときに第1ロボットアームの先端を所定距離動かしたときにかかる時間の方を長くすることができる。
本発明のロボットでは、前記作業状態では、前記第2ロボットアームが第1姿勢のときの加速度よりも、前記第2ロボットアームの慣性モーメントが前記第1姿勢よりも大きくなる第2姿勢のときの加速度の方が低いことが好ましい。
これにより、作業状態のときの振動の発生をより効果的に抑制することができる。
本発明のロボットでは、前記作業状態では、前記第2ロボットアームが第1質量の物体を保持するときの加速度よりも、前記第2ロボットアームが前記第1質量よりも重い第2質量の物体を保持するときの加速度の方が低いことが好ましい。
これにより、作業状態のときの振動の発生をより効果的に抑制することができる。
本発明のロボットでは、前記第1の時間および前記第2の時間は、それぞれ、前記第2ロボットアームの先端を静止状態から前記所定距離動かすのにかかる時間であることが好ましい。
これにより、作業状態のときの振動の発生をより効果的に抑制することができる。
本発明のロボット制御装置は、第1ロボットアームおよび第2ロボットアームを有するロボットを、
前記第1ロボットアームの先端が所定作業を行っていない非作業状態の場合に前記第2ロボットアームの先端を所定距離動かすのにかかる第1の時間よりも、前記第1ロボットアームの先端が前記所定作業を行っている作業状態の場合に前記第2ロボットアームの先端を前記所定距離動かすのにかかる第2の時間の方が長くなるように制御し、
前記第1の時間および前記第2の時間は、それぞれ、前記第2ロボットアームを静止状態から目標状態とする駆動信号を出力した時刻をt1とし、前記第2ロボットアームが最初に前記目標状態に到達した時刻をt2としたとき、t2−t1で規定されることを特徴とする。
これにより、一方の多関節ロボットアームが精密さを必要とする所定作業を行っている場合には、他方の多関節ロボットアームをなるべく振動を発生させないように駆動させるため、前記所定作業を十分な精度で実行することのできるロボットとなる。
本発明のロボットシステムは、本発明のロボットと、
前記ロボットの作動を制御するロボット制御装置と、を備えることを特徴とする。
これにより、一方の多関節ロボットアームが精密さを必要とする所定作業を行っている場合には、他方の多関節ロボットアームをなるべく振動を発生させないように駆動させるため、前記所定作業を十分な精度で実行することのできるロボットシステムとなる。
本発明のロボットシステムの好適な実施形態を示す斜視図である。 図1に示すロボットが有する昇降機構および検知部を示す断面図である。 図1に示すロボットの関節機構、捻り機構および回動軸を表す図である。 図1に示すロボットに装着されるエンドエフェクターを示す図である。 図1に示すロボットシステムの制御系を示すブロック図である。 図1に示すロボットシステムの駆動制御を示すブロック図である。 図1に示すロボットシステムの駆動制御を示すブロック図である。 図1に示すロボットシステムの駆動制御を示すブロック図である。 図1に示すロボットシステムの駆動制御を示すブロック図である。 図1に示すロボットシステムの駆動制御を示すブロック図である。 図1に示すロボットシステムの駆動制御を示すブロック図である。 図1に示すロボットシステムの駆動制御を示すブロック図である。 図1に示すロボットシステムの駆動制御を示すブロック図である。 多関節ロボットアームの静止状態と目標状態とを示す平面図である。 駆動信号と多関節ロボットアームの駆動とを示す図である。 発生する慣性モーメントが異なる2つの姿勢を示す図である。 多関節ロボットアームが行う作業の一例を示す図である。
以下、本発明のロボット、ロボット制御装置およびロボットシステムを添付図面に示す好適な実施形態に基づいて詳細に説明する。
図1は、本発明のロボットシステムの好適な実施形態を示す斜視図である。図2は、図1に示すロボットが有する昇降機構および検知部を示す断面図である。図3は、図1に示すロボットの関節機構、捻り機構および回動軸を表す図である。図4は、図1に示すロボットに装着されるエンドエフェクターを示す図である。図5は、図1に示すロボットシステムの制御系を示すブロック図である。図6〜図13は、それぞれ、図1に示すロボットの駆動制御を示すブロック図である。図14は、多関節ロボットアームの静止状態と目標状態とを示す平面図である。図15は、駆動信号と多関節ロボットアームの駆動とを示す図である。図16は、発生する慣性モーメントが異なる2つの姿勢を示す図である。図17は、多関節ロボットアームが行う作業の一例を示す図である。
図1に示すロボットシステム100は、双腕ロボットであり、例えば、腕時計のような精密機器等を製造する製造工程で用いることができる。このようなロボットシステム100は、ロボット200と、ロボット200の作動を制御するロボット制御装置900とを有している。なお、ロボット200の配置としては、特に限定されないが、以下では、説明の便宜上、ロボット200を水平な床面(設置面)に鉛直(後述する回動軸O1が鉛直)に配置する場合について説明する。
(ロボット)
図1に示すように、ロボット200は、ベース(基台)210と、ベース210に連結されている胴体220と、胴体220の左右に連結されている一対の多関節ロボットアーム230、240と、胴体220に設けられているステレオカメラ250および信号灯260と、多関節ロボットアーム230、240に設けられているハンドカメラ280、290とを有している。
このようなロボット200によれば、ステレオカメラ250やハンドカメラ280、290を用いて作業台上の部品、工具等の位置や、周囲の環境(周りに障害物がないかどうか、安全が確保されているかどうか)を確認しながら作業を行うことができる。また、信号灯260によって、ロボット200の状態(駆動状態、正常停止状態、異常停止状態等)を容易に確認することができる。
−ベース−
ベース210には、ロボット200の移動を容易とする複数の車輪(図示せず)と、各車輪をロックするロック機構(図示せず)と、ロボット200を移動する際に把持するハンドル211とが設けられている。ロック機構を解除し、ハンドル211を把持して押したり引いたりすることにより、ロボット200を自在に移動させることができ、ロック機構によって車輪をロックすることにより、ロボット200を所定の位置で固定することができる。このように、ロボット200を移動容易とすることで、ロボット200の利便性が向上する。なお、車輪、ロック機構およびハンドル211は、それぞれ、省略してもよい。
また、ベース210には、図示しない作業台に当接させるためのバンパー213が設けられている。バンパー213を作業台の側面に当接させることによって、ロボット200を所定の間隔を隔てて作業台と向き合わせることができる。そのため、ロボット200と作業台との意図しない接触等を防止することができる。なお、バンパー213は、作業台に当接する当接部213aと、ベース210に固定される固定部213bを有し、図1では、当接部213aが固定部213bよりも下側に位置するようにベース210に装着されている。このようなバンパー213は、ベース210に対して着脱可能であり、バンパー213の向きを上下反転することができる。すなわち、図1とは反対に、当接部213aが固定部213bよりも上方に位置するようにバンパー213をベース210に装着することもできる。このように、当接部213aの高さを変更ことすることで、高さの異なる作業台に対応することが可能となる。
また、ベース210には、非常停止ボタン214が設けられており、非常時にはこの非常停止ボタン214を押すことによって、ロボット200を緊急停止させることができる。
また、ベース210には、入力装置270が設けられている。入力装置270は、キーボードや外部機器との接続インターフェイス等のデータを入力する装置である。他にも入力装置270にはロボット200の動作を入力するティーチング用の装置が含まれている。また、入力装置270は、モニターを有しており、このモニターにロボット200の状態や各種データを表示することができるようになっている。
−胴体−
図1に示すように、胴体220は、昇降機構800を介して、ベース210に対して鉛直方向(回動軸O1方向)に昇降可能に連結されている。昇降機構800の構成としては、胴体220をベース210に対して昇降させることができれば、特に限定されない。図2に示すように、昇降機構800は、内部にラック811が設けられている筒状の昇降部810と、ラック811に噛合しているピニオン820と、ピニオン820を回転させるウォームホイール830と、ウォームホイール830を回転させるウォーム840と、ウォーム840を回転させる駆動源としてのモーター850と、モーター850の回転角度を検知する位置センサー860とを有している。これら構成のうち、昇降部810は、胴体220に連結されており、ピニオン820、ウォームホイール830、ウォーム840およびモーター850は、それぞれ、ベース210に固定されている。モーター850を駆動すると、その動力がウォーム840およびウォームホイール830を介してピニオン820に伝わり、ピニオン820の回転に伴ってラック811が移動する。これにより、昇降部810と共に胴体220がベース210に対して上昇または下降する。また、ウォームホイール830およびウォーム840を用いることによって、モーター850を停止させても、昇降部810の位置(高さ)を維持することができる。なお、モーター850としては、例えば、ACサーボモーター、DCサーボモーター等のサーボモーターを用いることができ、位置センサー860としては、例えば、エンコーダー、ロータリーエンコーダー、レゾルバー、ポテンショメーター等を用いることができる。また、モーター850とウォーム840との間に、モーター850の回転速度を減じる減速機を設けてもよい。
さらに、胴体220は、関節機構310を介して、ベース210に対して回動軸O1まわりに回動可能に連結されている。回動軸O1は、鉛直方向に延在している。関節機構310の構成としては、胴体220をベース210に対して回動軸O1まわりに回動させることができれば、特に限定されないが、本実施形態では、図5に示すように、駆動源としてのモーター311と、モーター311の回転速度を減じる減速機(図示せず)と、モーター311の回転角度を検知する位置センサー312とを有している。モーター311としては、例えば、ACサーボモーター、DCサーボモーター等のサーボモーターを用いることができ、減速機としては、例えば、遊星ギア型の減速機、ハーモニックドライブ(「ハーモニックドライブ」は登録商標)等を用いることができ、位置センサー312としては、例えば、エンコーダー、ロータリーエンコーダー、レゾルバー、ポテンショメーター等を用いることができる。
−多関節ロボットアーム−
図3に示すように、多関節ロボットアーム(第1ロボットアーム)230は、関節機構410を介して胴体220に連結されている第1肩部(第1アーム部)231と、関節機構420を介して第1肩部231に連結されている第2肩部232(第2アーム部)と、捻り機構(関節機構)430を介して第2肩部232の先端に連結されている上腕部(第3アーム部)233と、関節機構440を介して上腕部233の先端に連結されている第1前腕部(第4アーム部)234と、捻り機構(関節機構)450を介して第1前腕部234の先端に連結されている第2前腕部(第5アーム部)235と、関節機構460を介して第2前腕部235の先端に連結されている手首部(第6アーム部)236と、捻り機構(関節機構)470を介して手首部236の先端に連結されている連結部(第7アーム部)237と、を有している。また、連結部237にはハンド部238が設けられており、ハンド部238には、図4に示すように、ロボット200に実行させる作業に応じたエンドエフェクター610が力覚センサー740を介して装着される。
また、図3に示すように、関節機構410は、第1肩部231を胴体220に対して回動軸O1と直交する回動軸O2まわりに回動させ、関節機構420は、第2肩部232を第1肩部231に対して回動軸O2に直交する回動軸O3まわりに回動させ、捻り機構430は、上腕部233を第2肩部232に対して回動軸O3に直交する回動軸O4まわりに回動させ、関節機構440は、第1前腕部234を上腕部233に対して回動軸O4に直交する回動軸O5まわりに回動させ、捻り機構450は、第2前腕部235を第1前腕部234に対して回動軸O5に直交する回動軸O6まわりに回動させ、関節機構460は、手首部236を第2前腕部235に対して回動軸O6に直交する回動軸O7まわりに回動させ、捻り機構470は、連結部237を手首部236に対して回動軸O7に直交する回動軸O8まわりに回動させる。このような多関節ロボットアーム230によれば、比較的簡単な構成によって、人間の腕部と同様に、関節(肩、肘、手首)の曲げ伸ばし、上腕および前腕の捻りを実現することができる。
関節機構410、関節機構420、捻り機構430、関節機構440、捻り機構450、関節機構460および捻り機構470の構成としては、それぞれ、特に限定されないが、本実施形態では、前述した関節機構310と同様の構成となっている。すなわち、図5に示すように、関節機構410は、駆動源としてのモーター411と、モーター411の回転速度を減じる減速機(図示せず)と、モーター411の回転角度を検知する位置センサー412とを有している。また、関節機構420は、駆動源としてのモーター421と、モーター421の回転速度を減じる減速機(図示せず)と、モーター421の回転角度を検知する位置センサー422とを有している。また、捻り機構430は、駆動源としてのモーター431と、モーター431の回転速度を減じる減速機(図示せず)と、モーター431の回転角度を検知する位置センサー432とを有している。また、関節機構440は、駆動源としてのモーター441と、モーター441の回転速度を減じる減速機(図示せず)と、モーター441の回転角度を検知する位置センサー442とを有している。また、捻り機構450は、駆動源としてのモーター451と、モーター451の回転速度を減じる減速機(図示せず)と、モーター451の回転角度を検知する位置センサー452とを有している。また、関節機構460は、駆動源としてのモーター461と、モーター461の回転速度を減じる減速機(図示せず)と、モーター461の回転角度を検知する位置センサー462とを有している。また、捻り機構470は、駆動源としてのモーター471と、モーター471の回転速度を減じる減速機(図示せず)と、モーター471の回転角度を検知する位置センサー472とを有している。
多関節ロボットアーム(第2ロボットアーム)240は、前述の多関節ロボットアーム230と同様の構成である。
すなわち、図3に示すように、多関節ロボットアーム240は、関節機構510を介して胴体220に連結されている第1肩部241と、関節機構520を介して第1肩部241に連結されている第2肩部242と、捻り機構(関節機構)530を介して第2肩部242の先端に連結されている上腕部243と、関節機構540を介して上腕部243の先端に連結されている第1前腕部244と、捻り機構(関節機構)550を介して第1前腕部244の先端に連結されている第2前腕部245と、関節機構560を介して第2前腕部245の先端に連結されている手首部246と、捻り機構(関節機構)570を介して手首部246の先端に連結されている連結部247と、を有している。また、連結部247にはハンド部248が設けられており、ハンド部248には、ロボット200に実行させる作業に応じたエンドエフェクター620が力覚センサー750を介して装着される。
また、図3に示すように、関節機構510は、第1肩部241を胴体220に対して回動軸O1に直交する回動軸O2’まわりに回動させ、関節機構520は、第2肩部242を第1肩部241に対して回動軸O2’に直交する回動軸O3’まわりに回動させ、捻り機構530は、上腕部243を第2肩部242に対して回動軸O3’に直交する回動軸O4’まわりに回動させ、関節機構540は、第1前腕部244を上腕部243に対して回動軸O4’に直交する回動軸O5’まわりに回動させ、捻り機構550は、第2前腕部245を第1前腕部244に対して回動軸O5’に直交する回動軸O6’まわりに回動させ、関節機構560は、手首部246を第2前腕部245に対して回動軸O6’に直交する回動軸O7’まわりに回動させ、捻り機構570は、連結部247を手首部246に対して回動軸O7’に直交する回動軸O8’まわりに回動させる。このような多関節ロボットアーム240によれば、比較的簡単な構成によって、人間の腕部と同様に、関節の曲げ伸ばし、上腕および前腕の捻りを実現することができる。
関節機構510、関節機構520、捻り機構530、関節機構540、捻り機構550、関節機構560および捻り機構570の構成としては、それぞれ、特に限定されないが、本実施形態では、前述した関節機構310と同様の構成となっている。すなわち、図5に示すように、関節機構510は、駆動源としてのモーター511と、モーター511の回転速度を減じる減速機(図示せず)と、モーター511の回転角度を検知する位置センサー512とを有している。また、関節機構520は、駆動源としてのモーター521と、モーター521の回転速度を減じる減速機(図示せず)と、モーター521の回転角度を検知する位置センサー522とを有している。また、捻り機構530は、駆動源としてのモーター531と、モーター531の回転速度を減じる減速機(図示せず)と、モーター531の回転角度を検知する位置センサー532とを有している。また、関節機構540は、駆動源としてのモーター541と、モーター541の回転速度を減じる減速機(図示せず)と、モーター541の回転角度を検知する位置センサー542とを有している。また、捻り機構550は、駆動源としてのモーター551と、モーター551の回転速度を減じる減速機(図示せず)と、モーター551の回転角度を検知する位置センサー552とを有している。また、関節機構560は、駆動源としてのモーター561と、モーター561の回転速度を減じる減速機(図示せず)と、モーター561の回転角度を検知する位置センサー562とを有している。また、捻り機構570は、駆動源としてのモーター571と、モーター571の回転速度を減じる減速機(図示せず)と、モーター571の回転角度を検知する位置センサー572とを有している。
−エンドエフェクター−
多関節ロボットアーム230、240の先端(ハンド部238、248)に取り付けられるエンドエフェクター610、620は、目的によって構成が異なるが、例えば、対象物を把持する機能を有している。このようなエンドエフェクター610、620は、例えば、図4に示すように、第1の指611、621と第2の指612、622を有する構成とすることができる。このような構成のエンドエフェクター610、620では、第1の指611、621と第2の指612、622の離間距離を調整することにより、対象物を把持することができる。
ハンド部238、248とエンドエフェクター610、620との間に配置される力覚センサー740、750は、エンドエフェクター610、620に加えられる外力を検出する機能を有している。そして、力覚センサー740、750が検出する力をロボット制御装置900にフィードバックすることで、ロボット200は、より精密に作業を実行することができる。また、力覚センサー740、750が検出する力やモーメントによって、エンドエフェクター610、620の障害物への接触等を検知することができる。そのため、障害物回避動作、対象物損傷回避動作等を容易に行うことができる。このような力覚センサー740、750としては、互いに直交する3軸の各軸の力成分とモーメント成分を検出することができれば、特に限定されず、公知の力覚センサーを用いることができる。
なお、エンドエフェクター610、620は、上記のような構成に限定されず、目的の作業によって取り換えることができ、例えば、対象物を把持したり、持ち上げたり、吊り上げたり、吸着させたり、対象物に加工を施したりするものであってもよい。すなわち、エンドエフェクター610、620は、前述したようなハンドであってもよいし、その他、フックであってもよいし、吸盤等であってもよい。さらに、1本のアームに対して、複数のエンドエフェクターを設けても良い。
−角速度センサー−
図1に示すように、ロボット200には3つの角速度センサー710、720、730が設けられている。角速度センサー710は、胴体220に配置され、角速度センサー720は、多関節ロボットアーム230に配置され、角速度センサー730は、多関節ロボットアーム240に配置されている。これら角速度センサー710、720、730は、それぞれ、互いに直交する3軸(x軸、y軸およびz軸)の各軸まわりの角速度ωx、ωy、ωzを独立して検知することのできる3軸角速度センサーである。なお、本実施形態では、角速度センサー720、730は、多関節ロボットアーム230、240の肘あたりに配置されているが、これらの配置は特に限定されない。
角速度センサー710、720、730としては、それぞれ、互いに直交する3軸(x軸、y軸およびz軸)の各軸まわりの角速度ωx、ωy、ωzを検出することができれば、特に限定されず、例えば、水晶基板を用いた公知の角速度センサーを用いることができる。また、角速度センサー710、720、730を互いに同じ構成とすることによって資材コストを低減することができる。
角速度センサー710、720、730で検出された角速度(アナログ信号)は、増幅器で増幅され、次いで、A/D変換回路によってデジタル信号に変換された後にロボット制御装置900へ送信される。
(ロボット制御装置)
ロボット制御装置900は、ロボット200が行う処理の内容に基づいて多関節ロボットアーム230、240の目標位置を演算し、その目標位置に多関節ロボットアーム230、240を移動させるための軌道を生成する。そして、ロボット制御装置900は、その生成した軌道に沿って、胴体220、多関節ロボットアーム230、240が移動するように、各モーター311、411〜471、511〜571をそれぞれ独立して制御する。
図5に示すように、ロボット制御装置900は、モーター311(胴体220)の駆動を制御する第1駆動源制御部901と、モーター411(第1肩部231)の駆動を制御する第2駆動源制御部902と、モーター421(第2肩部232)の駆動を制御する第3駆動源制御部903と、モーター431(上腕部233)の駆動を制御する第4駆動源制御部904と、モーター441(第1前腕部234)の駆動を制御する第5駆動源制御部905と、モーター451(第2前腕部235)の駆動を制御する第6駆動源制御部906と、モーター461(手首部236)の駆動を制御する第7駆動源制御部907と、モーター471(連結部237)の駆動を制御する第8駆動源制御部908と、モーター511(第1肩部241)の駆動を制御する第9駆動源制御部909と、モーター521(第2肩部242)の駆動を制御する第10駆動源制御部910と、モーター531(上腕部243)の駆動を制御する第11駆動源制御部911と、モーター541(第1前腕部244)の駆動を制御する第12駆動源制御部912と、モーター551(第2前腕部245)の駆動を制御する第13駆動源制御部913と、モーター561(手首部246)の駆動を制御する第14駆動源制御部914と、モーター571(連結部247)の駆動を制御する第15駆動源制御部915とを有している。
また、ロボット制御装置900は、入力装置270で入力された設定値を受け付ける設定受付部920を有している。そして、第1〜第15駆動源制御部901〜915は、原則として、設定受付部920が受け付けた設定値に基づいて、モーター311、411〜471、511〜571を制御する。
次に、第1〜第15駆動源制御部901〜915の構成について説明する。ただし、多関節ロボットアーム230の駆動を制御する第2〜第8駆動源制御部902〜908と、多関節ロボットアーム240の駆動を制御する第9〜第15駆動源制御部909〜915とが同様の構成であるため、以下では、第1駆動源制御部901と、第2〜第8駆動源制御部902〜908について説明し、第9〜第15駆動源制御部909〜915については、その説明を省略する。
−第1駆動源制御部−
図6に示すように、第1駆動源制御部901は、減算器901aと、回動角度算出部901bと、位置制御部901cと、減算器901dと、角速度制御部901eと、角速度算出部901fと、加算器901gと、減算器901hと、角速度変換部901iと、変換部901jと、補正値算出部901kとを有している。
第1駆動源制御部901には、モーター311の位置指令Pcの他、位置センサー312、角速度センサー710から検出信号が入力される。第1駆動源制御部901は、位置センサー312の検出信号から算出されるモーター311の回動角度(位置フィードバック値Pfb)が位置指令Pcになり、かつ、後述する角速度フィードバック値ωfbが後述する角速度指令ωcになるように、各検出信号を用いたフィードバック制御によってモーター311を駆動する。
すなわち、減算器901aには、位置指令Pcが入力され、また、回動角度算出部901bから後述する位置フィードバック値Pfbが入力される。回動角度算出部901bでは、位置センサー312から入力されるパルス数がカウントされるとともに、そのカウント値に応じたモーター311の回動角度が位置フィードバック値Pfbとして減算器901aに出力される。減算器901aは、これら位置指令Pcと位置フィードバック値Pfbとの偏差(モーター311の回動角度の目標値から位置フィードバック値Pfbを減算した値)を位置制御部901cに出力する。
位置制御部901cは、減算器901aから入力された偏差と、予め定められた係数である比例ゲイン等を用いた所定の演算処理を行うことで、その偏差に応じたモーター311の角速度の目標値を演算する。位置制御部901cは、そのモーター311の角速度の目標値(指令値)を示す信号を角速度指令ωcとして減算器901dに出力する。本実施形態では、フィードバック制御として、比例制御(P制御)がなされるが、これに限定されるものではない。
減算器901dには、角速度指令ωcが入力され、また、後述する角速度フィードバック値ωfbが入力される。減算器901dは、これら角速度指令ωcと角速度フィードバック値ωfbとの偏差(モーター311の角速度の目標値から角速度フィードバック値ωfbを減算した値)を角速度制御部901eに出力する。
角速度制御部901eは、減算器901dから入力された偏差と、予め定められた係数である比例ゲイン(位置比例ゲイン)、積分ゲイン等を用い、積分を含む所定の演算処理を行うことで、その偏差に応じたモーター311の駆動信号(駆動電流)を生成し、モータードライバーを介してモーター311に供給する。本実施形態では、フィードバック制御として、PI制御がなされるが、これに限定されるものではない。
このようにして、位置フィードバック値Pfbが位置指令Pcと可及的に等しくなり、かつ、角速度フィードバック値ωfbが角速度指令ωcと可及的に等しくなるように、フィードバック制御がなされ、モーター311の駆動電流が制御される。
次に、第1駆動源制御部901における角速度フィードバック値ωfbについて説明する。
角速度算出部901fでは、位置センサー312から入力されるパルス信号の周波数に基づいて、モーター311の角速度ωm1が算出され、その角速度ωm1は、加算器901gに出力される。
また、角速度算出部901fでは、位置センサー312から入力されるパルス信号の周波数に基づいて、胴体220の回動軸O1回りの角速度ωB1mが算出され、その角速度ωB1mは、減算器901hに出力される。なお、角速度ωB1mは、角速度ωm1を関節機構310における減速比で除算した値である。
また、角速度センサー710から角速度ωx、ωy、ωzがそれぞれ検出され、各角速度ωx、ωy、ωzが角速度変換部901iに入力される。角速度変換部901iでは入力された角速度ωx、ωy、ωzから胴体220の回動軸O1回りの角速度ωB1が算出され、その角速度ωB1は、減算器901hに出力される。
減算器901hには、角速度ωB1および角速度ωB1mが入力され、減算器901hは、この角速度ωB1から角速度ωB1mを減算した値ωB1s(=ωB1−ωB1m)を変換部901jに出力する。この値ωB1sは、胴体220の回動軸O1回りの角速度の振動成分(振動角速度)に相当する。以下、ωB1sを振動角速度と言う。本実施形態では、この振動角速度ωB1sが後述するゲインKa倍されてモーター311の入力側に戻るフィードバック制御を行う。具体的には、振動角速度ωB1sが可及的に0になるように、モーター311に対してフィードバック制御がなされる。これにより、ロボット200の振動を抑制することができる。なお、このフィードバック制御では、モーター311の角速度が制御される。
変換部901jは、振動角速度ωB1sをモーター311における角速度ωm1sに変換し、その角速度ωm1sを補正値算出部901kに出力する。この変換は、振動角速度ωB1sに関節機構310における減速比を乗算することで得ることができる。
補正値算出部901kは、角速度ωm1sに予め定められた係数であるゲイン(フィードバックゲイン)Kaを乗算し、補正値Ka・ωm1sを求め、その補正値Ka・ωm1sを加算器901gに出力する。
加算器901gには、角速度ωm1が入力され、また、補正値Ka・ωm1sが入力される。加算器901gは、角速度ωm1と補正値Ka・ωm1sとの加算値を角速度フィードバック値ωfbとして減算器901dに出力する。なお、以降の動作は、前述した通りである。
−第2駆動源制御部−
図7に示すように、第2駆動源制御部902は、減算器902aと、回動角度算出部902bと、位置制御部902cと、減算器902dと、角速度制御部902eと、角速度算出部902fと、加算器902gと、減算器902hと、角速度変換部902iと、変換部902jと、補正値算出部902kとを有している。
第2駆動源制御部902には、モーター411の位置指令Pcの他、位置センサー412、角速度センサー720から検出信号が入力される。第2駆動源制御部902は、位置センサー412の検出信号から算出されるモーター411の回動角度(位置フィードバック値Pfb)が位置指令Pcになり、かつ、後述する角速度フィードバック値ωfbが後述する角速度指令ωcになるように、各検出信号を用いたフィードバック制御によってモーター411を駆動する。
すなわち、減算器902aには、位置指令Pcが入力され、また、回動角度算出部902bから後述する位置フィードバック値Pfbが入力される。回動角度算出部902bでは、位置センサー412から入力されるパルス数がカウントされるとともに、そのカウント値に応じたモーター411の回動角度が位置フィードバック値Pfbとして減算器902aに出力される。減算器902aは、これら位置指令Pcと位置フィードバック値Pfbとの偏差(モーター411の回動角度の目標値から位置フィードバック値Pfbを減算した値)を位置制御部902cに出力する。
位置制御部902cは、減算器902aから入力された偏差と、予め定められた係数である比例ゲイン等を用いた所定の演算処理を行うことで、その偏差に応じたモーター411の角速度の目標値を演算する。位置制御部902cは、そのモーター411の角速度の目標値(指令値)を示す信号を角速度指令ωcとして減算器902dに出力する。本実施形態では、フィードバック制御として、比例制御(P制御)がなされるが、これに限定されるものではない。
減算器902dには、角速度指令ωcが入力され、また、後述する角速度フィードバック値ωfbが入力される。減算器902dは、これら角速度指令ωcと角速度フィードバック値ωfbとの偏差(モーター411の角速度の目標値から角速度フィードバック値ωfbを減算した値)を角速度制御部902eに出力する。
角速度制御部902eは、減算器902dから入力された偏差と、予め定められた係数である比例ゲイン(位置比例ゲイン)、積分ゲイン等を用い、積分を含む所定の演算処理を行うことで、その偏差に応じたモーター411の駆動信号(駆動電流)を生成し、モータードライバーを介してモーター411に供給する。本実施形態では、フィードバック制御として、PI制御がなされるが、これに限定されるものではない。
このようにして、位置フィードバック値Pfbが位置指令Pcと可及的に等しくなり、かつ、角速度フィードバック値ωfbが角速度指令ωcと可及的に等しくなるように、フィードバック制御がなされ、モーター411の駆動電流が制御される。
次に、第2駆動源制御部902における角速度フィードバック値ωfbについて説明する。
角速度算出部902fでは、位置センサー412から入力されるパルス信号の周波数に基づいて、モーター411の角速度ωm1が算出され、その角速度ωm1は、加算器902gに出力される。
また、角速度算出部902fでは、位置センサー412から入力されるパルス信号の周波数に基づいて、第1肩部241の回動軸O2回りの角速度ωA1mが算出され、その角速度ωA1mは、減算器902hに出力される。なお、角速度ωA1mは、角速度ωm1を関節機構410における減速比で除算した値である。
また、角速度センサー720から角速度ωx、ωy、ωzがそれぞれ検出され、各角速度ωx、ωy、ωzが角速度変換部902iに入力される。角速度変換部902iでは入力された角速度ωx、ωy、ωzから第1肩部241の回動軸O2回りの角速度ωA1が算出され、その角速度ωA1は、減算器902hに出力される。角速度変換部902iでは、必要に応じて、ヤコビ変換と呼ばれる座標軸変換等を行う。
減算器902hには、角速度ωA1および角速度ωA1mが入力され、減算器902hは、この角速度ωA1から角速度ωA1mを減算した値ωA1s(=ωA1−ωA1m)を変換部902jに出力する。この値ωA1sは、第1肩部241の回動軸O2回りの角速度の振動成分(振動角速度)に相当する。以下、ωA1sを振動角速度と言う。本実施形態では、この振動角速度ωA1sが後述するゲインKa倍されてモーター411の入力側に戻るフィードバック制御を行う。具体的には、振動角速度ωA1sが可及的に0になるように、モーター411に対してフィードバック制御がなされる。これにより、ロボット200の振動を抑制することができる。なお、このフィードバック制御では、モーター411の角速度が制御される。
変換部902jは、振動角速度ωA1sをモーター411における角速度ωm1sに変換し、その角速度ωm1sを補正値算出部902kに出力する。この変換は、振動角速度ωA1sに関節機構410における減速比を乗算することで得ることができる。
補正値算出部902kは、角速度ωm1sに予め定められた係数であるゲイン(フィードバックゲイン)Kaを乗算し、補正値Ka・ωm1sを求め、その補正値Ka・ωm1sを加算器902gに出力する。
加算器902gには、角速度ωm1が入力され、また、補正値Ka・ωm1sが入力される。加算器902gは、角速度ωm1と補正値Ka・ωm1sとの加算値を角速度フィードバック値ωfbとして減算器902dに出力する。なお、以降の動作は、前述した通りである。
−第3駆動源制御部−
図8に示すように、第3駆動源制御部903は、減算器903aと、回動角度算出部903bと、位置制御部903cと、減算器903dと、角速度制御部903eと、角速度算出部903fとを有している。そして、第3駆動源制御部903には、モーター421の位置指令Pcの他、位置センサー422から検出信号が入力される。第3駆動源制御部903は、位置センサー422の検出信号から算出されるモーター421の回動角度(位置フィードバック値Pfb)が位置指令Pcになり、かつ、後述する角速度フィードバック値ωfbが後述する角速度指令ωcになるように、各検出信号を用いたフィードバック制御によってモーター421を駆動する。
すなわち、減算器903aには、位置指令Pcが入力され、また、回動角度算出部903bから後述する位置フィードバック値Pfbが入力される。回動角度算出部903bでは、位置センサー422から入力されるパルス数がカウントされるとともに、そのカウント値に応じたモーター421の回動角度が位置フィードバック値Pfbとして減算器903aに出力される。減算器903aは、これら位置指令Pcと位置フィードバック値Pfbとの偏差(モーター421の回動角度の目標値から位置フィードバック値Pfbを減算した値)を位置制御部903cに出力する。
位置制御部903cは、減算器903aから入力された偏差と、予め定められた係数である比例ゲイン等を用いた所定の演算処理を行うことで、その偏差に応じたモーター421の角速度の目標値を演算する。位置制御部903cは、そのモーター421の角速度の目標値(指令値)を示す信号を角速度指令ωcとして減算器903dに出力する。
また、角速度算出部903fでは、位置センサー422から入力されるパルス信号の周波数に基づいて、モーター421の角速度が算出され、その角速度が角速度フィードバック値ωfbとして減算器903dに出力される。
減算器903dには、角速度指令ωcと角速度フィードバック値ωfbとが入力される。減算器903dは、これら角速度指令ωcと角速度フィードバック値ωfbとの偏差(モーター421の角速度の目標値から角速度フィードバック値ωfbを減算した値)を角速度制御部903eに出力する。
角速度制御部903eは、減算器903dから入力された偏差と、予め定められた係数である比例ゲイン(位置比例ゲイン)、積分ゲイン等を用い、積分を含む所定の演算処理を行うことで、その偏差に応じたモーター421の駆動信号を生成し、モータードライバーを介してモーター421に供給する。
これにより、位置フィードバック値Pfbが位置指令Pcと可及的に等しくなり、かつ、角速度フィードバック値ωfbが角速度指令ωcと可及的に等しくなるようにフィードバック制御がなされ、モーター421の駆動が制御される。
−第4駆動源制御部−
図9に示すように、第4駆動源制御部904は、減算器904aと、回動角度算出部904bと、位置制御部904cと、減算器904dと、角速度制御部904eと、角速度算出部904fとを有している。そして、第4駆動源制御部904には、モーター431の位置指令Pcの他、位置センサー432から検出信号が入力される。第4駆動源制御部904は、位置センサー432の検出信号から算出されるモーター431の回動角度(位置フィードバック値Pfb)が位置指令Pcになり、かつ、角速度フィードバック値ωfbが角速度指令ωcになるように、各検出信号を用いたフィードバック制御によってモーター431を駆動する。このような第4駆動源制御部904は、第3駆動源制御部903と同様であるため、その詳細な説明を省略する。
−第5駆動源制御部−
図10に示すように、第5駆動源制御部905は、減算器905aと、回動角度算出部905bと、位置制御部905cと、減算器905dと、角速度制御部905eと、角速度算出部905fとを有している。そして、第5駆動源制御部905には、モーター441の位置指令Pcの他、位置センサー442から検出信号が入力される。第5駆動源制御部905は、位置センサー442の検出信号から算出されるモーター441の回動角度(位置フィードバック値Pfb)が位置指令Pcになり、かつ、角速度フィードバック値ωfbが角速度指令ωcになるように、各検出信号を用いたフィードバック制御によってモーター441を駆動する。このような第5駆動源制御部905は、第3駆動源制御部903と同様であるため、その詳細な説明を省略する。
−第6駆動源制御部−
図11に示すように、第6駆動源制御部906は、減算器906aと、回動角度算出部906bと、位置制御部906cと、減算器906dと、角速度制御部906eと、角速度算出部906fとを有している。そして、第6駆動源制御部906には、モーター451の位置指令Pcの他、位置センサー452から検出信号が入力される。第6駆動源制御部906は、位置センサー452の検出信号から算出されるモーター451の回動角度(位置フィードバック値Pfb)が位置指令Pcになり、かつ、角速度フィードバック値ωfbが角速度指令ωcになるように、各検出信号を用いたフィードバック制御によってモーター451を駆動する。このような第6駆動源制御部906は、第3駆動源制御部903と同様であるため、その詳細な説明を省略する。
−第7駆動源制御部−
図12に示すように、第7駆動源制御部907は、減算器907aと、回動角度算出部907bと、位置制御部907cと、減算器907dと、角速度制御部907eと、角速度算出部907fとを有している。そして、第7駆動源制御部907には、モーター461の位置指令Pcの他、位置センサー462から検出信号が入力される。第7駆動源制御部907は、位置センサー462の検出信号から算出されるモーター461の回動角度(位置フィードバック値Pfb)が位置指令Pcになり、かつ、角速度フィードバック値ωfbが角速度指令ωcになるように、各検出信号を用いたフィードバック制御によってモーター461を駆動する。このような第7駆動源制御部907は、第3駆動源制御部903と同様であるため、その詳細な説明を省略する。
−第8駆動源制御部−
図13に示すように、第8駆動源制御部908は、減算器908aと、回動角度算出部908bと、位置制御部908cと、減算器908dと、角速度制御部908eと、角速度算出部908fとを有している。そして、第8駆動源制御部908には、モーター471の位置指令Pcの他、位置センサー472から検出信号が入力される。第8駆動源制御部908は、位置センサー472の検出信号から算出されるモーター471の回動角度(位置フィードバック値Pfb)が位置指令Pcになり、かつ、後述する角速度フィードバック値ωfbが後述する角速度指令ωcになるように、各検出信号を用いたフィードバック制御によってモーター471を駆動する。このような第8駆動源制御部908は、第3駆動源制御部903と同様であるため、その詳細な説明を省略する。
以上、ロボットシステム100の基本構成について説明した。
次に、ロボットシステム100の特に特徴的な部分について説明する。
ロボットシステム100では、多関節ロボットアーム230が精密さを要求される所定の作業Eを行っているかいないかに応じて、多関節ロボットアーム240の駆動スピードが異なっている。多関節ロボットアーム230が作業Eを行っている作業状態では、その作業Eを確実に遂行するために、作業Eを行っていない非作業状態と比較して、多関節ロボットアーム230に振動を発生させたくない。
したがって、ロボット制御装置900は、多関節ロボットアーム230が非作業状態の場合に多関節ロボットアーム240の先端を所定距離L動かすのにかかる時間(第1の時間)T1よりも、多関節ロボットアーム230が作業状態の場合に多関節ロボットアーム240の先端を所定距離L動かすのにかかる時間(第2の時間)T2の方が長くなるようにロボット200の駆動を制御している。これにより、作業状態ほど振動に影響されない非作業状態での作業スピードを犠牲にせずに、作業状態での振動の発生を抑制することができる。これにより、ロボット200の作業スピードの低下を抑えつつ、高精度な作業を行うことのできるロボットシステム100となる。
ここで、前述したように、入力装置270からロボット200の各部の設定を変更できるようになっている。設定を変更できる項目(設定項目)として、例えば、多関節ロボットアーム230、240の駆動に用いられる各モーター411〜471、511〜571の加速度(角加速度)、減速度(角減速度)、速度(角速度)等が含まれており、さらには、各設定項目を作業状態のときと非作業状態のときとで個別に設定できるようにもなっている。そのため、ユーザーが予め時間T1よりも時間T2の方が長くなるように、前記設定項目を設定することも可能となっている。
作業状態と非作業状態とで前記設定項目が同条件であれば、通常のロボットでは、多関節ロボットアーム240に同じ動きをさせたときにかかる時間T1、T2が同じとなるが、ロボット200では、作業状態と非作業状態とで前記設定項目が同条件であっても、非作業状態のときよりも作業状態のときの方が多関節ロボットアーム240に同じ動きをさせたときにかかる時間が長くなるように、すなわちT1<T2となるように各部を制御する。これにより、ロボット200の作業スピードの低下を抑えつつ、作業状態での多関節ロボットアーム230の振動の発生を抑制することができる。
具体的に説明すると、例えば、図14に示すように、多関節ロボットアーム240を水平方向にまっすぐ伸ばした姿勢(所定姿勢)で静止させた静止状態Psから、第1肩部241に対して第2肩部242を回転させ、腕がまっすぐ伸びた姿勢を保ちながら、多関節ロボットアーム240の先端を水平方向に所定距離L動かして目標状態Peとする場合、多関節ロボットアーム230が非作業状態の場合にかかる時間T1と、多関節ロボットアーム230が作業状態の場合にかかる時間T2とが、T1<T2なる関係を満足するように構成されている。なお、時間T1、T2は、それぞれ、図15に示すように、静止状態Psから目標状態Peとする駆動信号を出力した時刻をt1とし、多関節ロボットアーム240が最初に目標状態Peに到達した時刻をt2としたとき、t2−t1で規定することができる。
ここで、静止状態Psとは、例えば、多関節ロボットアーム240の駆動に用いられるモーター511〜571が駆動していない状態として定義することができる。また、多関節ロボットアーム430の運動の速度が0(教示された点での速度が0)である状態として定義することができる。また、多関節ロボットアーム240と設置面との位置関係が変化しない状態として定義することもできる。
また、多関節ロボットアーム240の先端とは、ハンド部238の先端としてもよいし、ハンド部238にエンドエフェクター610が取り付けられている場合は、そのエンドエフェクター610の先端としてもよい。
なお、T1<T2なる関係を満足していれば、特に限定されないが、さらに、T2が1.2T1〜2T1程度であることが好ましい。これにより、上記効果を効果的に発揮することができるとともに、多関節ロボットアーム230が作業状態のときでの多関節ロボットアーム240の動きが過度に遅くなってしまうことを防止することができる。
また、前述した例では、多関節ロボットアーム240を水平方向にまっすぐ伸ばした姿勢(所定姿勢)で静止させた静止状態Psから、まっすぐ伸びた姿勢を保ちながら水平方向に所定距離動かして目標状態Peとする例について説明したが、上記のような制御を水平方向(回動軸O1に直交する方向)成分を有する方向(すなわち水平方向と、水平方向と鉛直方向の合成方向)に多関節ロボットアーム240を動かすときに行うようなっている。
一方で、多関節ロボットアーム240を鉛直方向に動かす際には、静止状態Psから目標状態Peとするのにかかる時間T1、T2がT1<T2なる関係を満足しいなくてもよく、T1=T2であってもよい。すなわち、多関節ロボットアーム240を鉛直方向へ動かす際には、多関節ロボットアーム230が作業状態であるか非作業状態であるかに関わらずに一定の時間で静止状態Psから目標状態Peとしてもよい。多関節ロボットアーム240を鉛直方向に動かす際には、胴体220に捩じれ方向の慣性(回動軸O1まわりの力)が加わり難いため、水平方向の移動と比較して振動が発生し難い。したがって、上述のように、多関節ロボットアーム240を鉛直方向へ動かす際には、T1=T2とすることで、ロボット200の処理効率の低下をより小さく抑えることができる。
また、前述した例では、多関節ロボットアーム240を水平にまっすぐ伸ばした静止状態Psから、まっすぐ伸ばしたまま水平方向に移動させて目標状態Peとする場合について説明したが、多関節ロボットアーム240の静止状態Psおよび目標状態Peとしては、特に限定されず、多関節ロボットアーム230が実現できる全ての姿勢を適用することができる。例えば、上腕部を鉛直方向に降し、前腕部が水平方向を向くように肘を曲げた静止状態Psとし、そこから上腕部を捩って前腕部を水平方向に移動させた姿勢を目標状態Peにしてもよい。また、まっすぐ伸ばした静止状態Psから、肘を曲げることで上腕部に対して前腕部を水平方向に移動させた姿勢を目標状態Peとしてもよい。また、静止状態Psと目標状態Peとで、多関節ロボットアーム240の形状(曲がり方)が変わっていてもよい。
次に、T1<T2を満足させるための方法について具体的な例を挙げて説明する。T1<T2を満足させる具体的な方法の1つとしては、モーター521の加速度および減速度を、非作業状態のときよりも作業状態のときの方を低くする方法が挙げられる。これにより、簡単な制御で、T1<T2を実現することができる。なお、この方法の場合には、加速度および減速度のうちの少なくとも一方を、非作業状態のときよりも作業状態のときの方を低くすれば足りる。
別の方法としては、モーター521の駆動を制御する第10駆動源制御部910が有する角速度制御部(構成が同じ第3駆動源制御部903の角速度制御部903eに相当する部)で用いられる位置比例ゲインを、非作業状態のときよりも作業状態のときの方を低くする方法が挙げられる。これにより、角速度制御部からモーター521に供給される駆動信号に対するモーター521の反応性が鈍くなり、結果として、T1<T2を実現することができる。このような方法によっても、簡単な制御で、T1<T2を実現することができる。
以上、多関節ロボットアーム230が作業状態のときと非作業状態のときとで、多関節ロボットアーム240の駆動スピードを変更することについて説明したが、ロボットシステム100では、さらに、多関節ロボットアーム230が作業状態のときの多関節ロボットアーム240の駆動スピードが、その姿勢(発生する慣性モーメント)に応じて変化するように制御されている。
以下、具体的に、1つの例として、図16(a)に示すように、肘部が曲がっている第1姿勢と、図16(b)に示すように、多関節ロボットアーム240が水平方向に延びている第2姿勢とを比較して説明する。
この場合、モーター521を駆動して、第2肩部242を第1肩部241に対して回転させて、第1姿勢の多関節ロボットアーム240をその姿勢を保ったまま水平方向に回動させたときに発生する慣性モーメントM1よりも、第1姿勢の時と同じ条件(モーター521の加速度、減速度等)で第2肩部242を第1肩部241に対して回転させて、第2姿勢の多関節ロボットアーム240をその姿勢を保ったまま、水平方向に回動させたときに発生する慣性モーメントM2の方が大きくなる。慣性モーメントが大きい程振動が発生し易いため、多関節ロボットアーム230の振動を抑えるためには、第2姿勢の多関節ロボットアーム240を動かすときに発生する慣性モーメントを小さくすることが好ましい。
そこで、ロボット制御装置900は、第1姿勢の多関節ロボットアーム240を動かす時の加速度よりも、第2姿勢の多関節ロボットアーム240を動かす時の加速度が小さくなるようにロボット200を制御するように構成されている。このように、発生する慣性モーメントが大きい程、加速度を小さくすることによって、作業状態の多関節ロボットアーム230に発生する振動をより効果的に抑制することができる。なお、前述した説明では、変更するパラメーターとして、加速度を用いているが、加速度に代えて、減速度、最高速度(モーターの最大回転数)であってもよい。また、これらパラメーターを適宜組み合せてもよい。
また、ロボットシステム100では、さらに、多関節ロボットアーム230が作業状態のときの多関節ロボットアーム240の駆動スピードが、多関節ロボットアーム240が保持する部材の質量に応じて変化するように制御されている。具体的には、多関節ロボットアーム240が所定の軌道、加速度、減速度、速度で駆動するとした場合、第1質量S1の部材を保持しているときに発生する慣性モーメントよりも、第1質量S1よりも重い第2質量S2の部材を保持しているときに発生する慣性モーメントの方が大きくなる。前述したように、慣性モーメントが大きい程振動が発生し易いため、第2質量S2の部材を保持しているときの多関節ロボットアーム240を動かすときに発生する慣性モーメントを小さくすることが好ましい。
そこで、ロボット制御装置900は、第1質量S1の部材を保持する多関節ロボットアーム240を動かす時の加速度よりも、第2質量S2の部材を保持する多関節ロボットアーム240を動かす時の加速度が小さくなるようにロボット200を制御する。このように、多関節ロボットアーム240が保持する部材が重い程、加速度を小さくすることによって、作業状態の多関節ロボットアーム230に発生する振動をより効果的に抑制することができる。なお、前述した説明では、変更するパラメーターとして、加速度を用いているが、加速度に代えて、減速度、最高速度(モーターの最大回転数)であってもよい。また、これらパラメーターを適宜組み合せてもよい。
以上、ロボット制御装置900による制御を詳細に説明した。ここで、多関節ロボットアーム230が行う所定の作業Eとしては、精密さを必要とする作業であれば特に限定されず、ロボット200の用途によっても異なるが、例えば、次に挙げる作業を挙げることができる。
(A)位置決め作業
例えば、搬送工程において、部品(搬送対象物)を部品ケースに搬送し、当該部品を所定位置に整置する作業。また、組立工程において、部品を搬送し、他の部品(筐体等の取付対象物)の所定位置に配置する作業。また、組立工程において、ネジを保持して、当該ネジを締めるネジ穴位置に移動して、ネジをネジ穴に挿入可能な状態で保持する作業。このような位置決め作業には精密さが要求される。
(B)把持・保持作業
例えば、搬送工程や組立工程において、所定の部品の位置まで移動して、当該部品を把持し、そのまま保持したり、別の場所まで移動したりする作業。このような作業には精密さが要求される。
(C)挿入・取り付け作業
例えば、組立工程において、把持した部品を他の部品の孔に挿入する作業や、把持したネジの先端部を他の部品のネジ穴に挿入する作業。また、例えば、把持した各種ケーブル(電気配線、配管等)を、筐体等の取付対象物に配置するとともに取付対象物に設けられている爪に引っ掛ける作業や、把持したフレキシブル配線等の配線を、取付対象物が有するコネクターに接続する作業。このような作業には高い位置精度が要求されるため、精密さが要求される。
(D)探り作業
例えば、部品に形成された孔や凸部等の目的部位の位置を探る作業や、探った孔に別の部品を挿入したり、凸部に別の部品を嵌め込んだりする作業。便宜上、第1部品の孔に第2部品を挿入する例を挙げて説明すると、多関節ロボットアーム230は、第2部品を把持し、把持した第2部品を第1部品の表面に摺動させることで第1部品の表面を探り、その際に出力される力覚センサー740からの信号に基づいて孔の位置を検知し(孔の位置では、力覚センサー740が受ける力が弱くなる)、その検知結果に基づいて、把持している第2部品を第1部品の孔に挿入する。さらに、把持した第2部品を第1部品の孔に挿入する際も、力覚センサー740からの出力信号に基づいて、第2部品の位置、姿勢、挿入方向などを微調整する。
(E)押え・押し付け作業
例えば、ガラス製、木製、石製等の比較的強度の低い材料で構成された部品(ワーク)を一時的に押えて動かないようにする作業。この場合、力覚センサー740からの出力に基づいて部品に所定値以上の力が加わらないようにする。このような作業には精密さが要求される。
(F)研磨・バリ取り作業
ダイキャスト部品、切削部品、成型部品等の表面研磨やバリ取りをする作業。この場合、多関節ロボットアーム230は、ヤスリ等の研磨器具を把持し、力覚センサー740からの出力に基づいて部品に所定値以上の力が加わらないように表面研磨やバリ取りをする。このような作業は、ヤスリ等の研磨器具を押し付ける力が微妙であるため、精密さが要求される。
(G)組立作業
例えば、プリンターの製造に用いられる場合、図17(a)に示すように、筐体1000に給紙ローラー1100を取り付ける作業がある。筐体1000の給紙ローラー1100を嵌め込む部分の幅よりも給紙ローラーの幅の方が長いため、図17(b)に示すように、給紙ローラー1100を撓ませて筐体1000に取り付ける必要がある。この場合において、給紙ローラー1100を把持するとともに、微妙な力を加えて給紙ローラー1100を曲げ変形させる作業。このような作業は、給紙ローラー1100に加える力が微妙であるため、精密さが要求される。
(H)カメラを用いた位置検出作業
多関節ロボットアーム230に配置されたハンドカメラ280から取得した画像に基づいて対象部品の位置や姿勢を検出する作業。さらには、検出結果に基づいて対象部品を把持したり、搬送したり、組み合わせたりする作業。例えば、第1部品に第2部品を挿入する作業の場合、ハンドカメラ280の画像を用いて第1、第2部品の位置および姿勢を検出するが、この位置検出の許容誤差は、1画素程度であり、ハンドカメラ280の画素数や離間距離等によっても異なるが0.5mm以内である。そのため、このような作業は、精密さが要求される。
(I)カメラを用いた状態検出作業・異常検出作業
多関節ロボットアーム230に配置されたハンドカメラ280から取得した画像から対象部品やその周囲を監視し、その結果に基づいて多関節ロボットアーム230自身や作業エリアの状態を把握する。検出できる状態として、例えば、多関節ロボットアーム230の姿勢、位置(定められた作業エリア内に収まっているか否か)、対象部品(例えば、機械、筐体、部品等)の位置および姿勢、多関節ロボットアーム230が異常な動きをしていないか否か等が挙げられる。
以上、精密さを必要とする所定作業について説明した。なお、多関節ロボットアーム230が上述の所定作業を行っているときの多関節ロボットアーム240の動きとしては特に限定されず、例えば、作業中に使用する道具を取りに行ったり、前記他の部品(筐体等の取付対象物)を押えるために移動したり、次の作業を行うために所定の場所に移動して待機したりする。また、多関節ロボットアーム230が保持するネジを締め付ける場合には、ドライバーなどの工具を取りに行き、その後、ドライバーを用いて多関節ロボットアーム230が保持するネジを対処物に締め付ける。
以上、本発明のロボット、ロボット制御装置およびロボットシステムを、図示の実施形態に基づいて説明したが、本発明はこれに限定されるものではなく、各部の構成は、同様の機能を有する任意の構成のものに置換することができる。また、本発明に、他の任意の構成物が付加されていてもよい。
また、前述した実施形態では、移動可能なロボットについて説明したが、ロボットは、ボルト等によって作業部屋の床、天井、壁等に固定されていてもよい。また、前記実施形態では、ロボットが床面に配置され、胴体が鉛直方向に移動するが、ロボットの配置は、これに限定されず、例えば、ベースが天井に固定され、胴体が鉛直方向に移動するように構成されていてもよいし、ベースが壁面に固定され、胴体が水平方向に移動するように構成されていてもよい。
また、前述した実施形態では、多関節ロボットアームにおいて、角速度センサーが肘のあたりに配置されているが、角速度センサーの配置は、これに限定されない。また、角速度センサーの検知結果を第1肩部を回動させる関節機構にフィードバックしているが、フィードバックする関節機構(捻り機構)は、これに限定されない。また、複数の関節機構(捻り機構)にフィードバックしてもよい。
また、前述した実施形態では、多関節ロボットアーム230が所定の作業Eを行うように構成されているが、これに限定されず、多関節ロボットアーム240が所定の作業Eを行うように構成されていてもよいし、多関節ロボットアーム230、240が交互に作業Eを行うように構成されていてもよい。
また、前記実施形態では、各多関節ロボットアームの回動軸の数が7であるが、本発明では、これに限定されず、各多関節ロボットアームの回動軸の数は、1〜6であってもよいし、8以上であってもよい。
100……ロボットシステム 200……ロボット 210……ベース 211……ハンドル 213……バンパー 213a……当接部 213b……固定部 214……非常停止ボタン 220……胴体 230、240……多関節ロボットアーム 231、241……第1肩部 232、242……第2肩部 233、243……上腕部 234、244……第1前腕部 235、245……第2前腕部 236、246……手首部 237、247……連結部 238、248……ハンド部 250……ステレオカメラ 260……信号灯 270……入力装置 280、290……ハンドカメラ 310……関節機構 311……モーター 312……位置センサー 410……関節機構 411……モーター 412……位置センサー 420……関節機構 421……モーター 422……位置センサー 430……捻り機構 431……モーター 432……位置センサー 440……関節機構 441……モーター 442……位置センサー 450……捻り機構 451……モーター 452……位置センサー 460……関節機構 461……モーター 462……位置センサー 470……捻り機構 471……モーター 472……位置センサー 510……関節機構 511……モーター 512……位置センサー 520……関節機構 521……モーター 522……位置センサー 530……捻り機構 531……モーター 532……位置センサー 540……関節機構 541……モーター 542……位置センサー 550……捻り機構 551……モーター 552……位置センサー 560……関節機構 561……モーター 562……位置センサー 570……捻り機構 571……モーター 572……位置センサー 610、620……エンドエフェクター 611、621……第1の指 612、622……第2の指 710、720、730……角速度センサー 740、750……力覚センサー 800……昇降機構 810……昇降部 811……ラック 820……ピニオン 830……ウォームホイール 840……ウォーム 850……モーター 860……位置センサー 900……ロボット制御装置 901……第1駆動源制御部 901a……減算器 901b……回動角度算出部 901c……位置制御部 901d……減算器 901e……角速度制御部 901f……角速度算出部 901g……加算器 901h……減算器 901i……角速度変換部 901j……変換部 901k……補正値算出部 902……第2駆動源制御部 902a……減算器 902b……回動角度算出部 902c……位置制御部 902d……減算器 902e……角速度制御部 902f……角速度算出部 902g……加算器 902h……減算器 902i……角速度変換部 902j……変換部 902k……補正値算出部 903……第3駆動源制御部 903a……減算器 903b……回動角度算出部 903c……位置制御部 903d……減算器 903e……角速度制御部 903f……角速度算出部 904……第4駆動源制御部 904a……減算器 904b……回動角度算出部 904c……位置制御部 904d……減算器 904e……角速度制御部 904f……角速度算出部 905……第5駆動源制御部 905a……減算器 905b……回動角度算出部 905c……位置制御部 905d……減算器 905e……角速度制御部 905f……角速度算出部 906……第6駆動源制御部 906a……減算器 906b……回動角度算出部 906c……位置制御部 906d……減算器 906e……角速度制御部 906f……角速度算出部 907……第7駆動源制御部 907a……減算器 907b……回動角度算出部 907c……位置制御部 907d……減算器 907e……角速度制御部 907f……角速度算出部 908……第8駆動源制御部 908a……減算器 908b……回動角度算出部 908c……位置制御部 908d……減算器 908e……角速度制御部 908f……角速度算出部 909……第9駆動源制御部 910……第10駆動源制御部 911……第11駆動源制御部 912……第12駆動源制御部 913……第13駆動源制御部 914……第14駆動源制御部 915……第15駆動源制御部 920……設定受付部 1000……筐体 1100……給紙ローラー O1〜O8、O2’〜O8’……回動軸 Pe……目標状態 Ps……静止状態 T1、T2……時間 t1、t2……時刻

Claims (9)

  1. 第1ロボットアームおよび第2ロボットアームを有し、
    前記第1ロボットアームの先端が所定作業を行っていない非作業状態の場合に前記第2ロボットアームの先端を所定距離動かすのにかかる第1の時間よりも、前記第1ロボットアームの先端が前記所定作業を行っている作業状態の場合に前記第2ロボットアームの先端を前記所定距離動かすのにかかる第2の時間の方が長く、
    前記第1の時間および前記第2の時間は、それぞれ、前記第2ロボットアームを静止状態から目標状態とする駆動信号を出力した時刻をt1とし、前記第2ロボットアームが最初に前記目標状態に到達した時刻をt2としたとき、t2−t1で規定されることを特徴とするロボット。
  2. 前記第1ロボットアームおよび前記第2ロボットアームの駆動条件を定める設定値を受け付ける設定受付部を有し、
    前記設定受付部で受け付けられた前記設定値が、前記非作業状態と前記作業状態とで同じである請求項1に記載のロボット。
  3. 前記第2ロボットアームを駆動するモーターを有し、
    前記モーターについて、前記モーターの位置と指令位置の差である位置偏差に乗じる位置比例ゲインが、前記非作業状態のときよりも前記作業状態のときの方が小さい請求項1または2に記載のロボット。
  4. 前記第2ロボットアームを駆動するモーターを有し、
    前記モーターについて、加速度および減速度の少なくとも一方が、前記非作業状態のときよりも前記作業状態のときの方が小さい請求項1ないし3のいずれか1項に記載のロボット。
  5. 前記作業状態では、前記第2ロボットアームが第1姿勢のときの加速度よりも、前記第2ロボットアームの慣性モーメントが前記第1姿勢よりも大きくなる第2姿勢のときの加速度の方が低い請求項1ないし4のいずれか1項に記載のロボット。
  6. 前記作業状態では、前記第2ロボットアームが第1質量の物体を保持するときの加速度よりも、前記第2ロボットアームが前記第1質量よりも重い第2質量の物体を保持するときの加速度の方が低い請求項1ないし5のいずれか1項に記載のロボット。
  7. 前記第1の時間および前記第2の時間は、それぞれ、前記第2ロボットアームの先端を静止状態から前記所定距離動かすのにかかる時間である請求項1ないし6のいずれか1項に記載のロボット。
  8. 第1ロボットアームおよび第2ロボットアームを有するロボットを、
    前記第1ロボットアームの先端が所定作業を行っていない非作業状態の場合に前記第2ロボットアームの先端を所定距離動かすのにかかる第1の時間よりも、前記第1ロボットアームの先端が前記所定作業を行っている作業状態の場合に前記第2ロボットアームの先端を前記所定距離動かすのにかかる第2の時間の方が長くなるように制御し、
    前記第1の時間および前記第2の時間は、それぞれ、前記第2ロボットアームを静止状態から目標状態とする駆動信号を出力した時刻をt1とし、前記第2ロボットアームが最初に前記目標状態に到達した時刻をt2としたとき、t2−t1で規定されることを特徴とするロボット制御装置。
  9. 請求項1ないし7のいずれか1項に記載のロボットと、
    前記ロボットの作動を制御するロボット制御装置と、を備えることを特徴とするロボットシステム。
JP2013223561A 2013-10-28 2013-10-28 ロボット、ロボット制御装置およびロボットシステム Expired - Fee Related JP6307835B2 (ja)

Priority Applications (5)

Application Number Priority Date Filing Date Title
JP2013223561A JP6307835B2 (ja) 2013-10-28 2013-10-28 ロボット、ロボット制御装置およびロボットシステム
US14/521,828 US9568075B2 (en) 2013-10-28 2014-10-23 Robot, robot control device, and robot system
CN201510141448.XA CN104802161B (zh) 2013-10-28 2014-10-24 机器人、机器人控制装置以及机器人系统
CN201410575597.2A CN104552285B (zh) 2013-10-28 2014-10-24 机器人、机器人控制装置以及机器人系统
EP14190448.2A EP2865498B1 (en) 2013-10-28 2014-10-27 Robot, robot control device, and robot system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2013223561A JP6307835B2 (ja) 2013-10-28 2013-10-28 ロボット、ロボット制御装置およびロボットシステム

Publications (2)

Publication Number Publication Date
JP2015085406A JP2015085406A (ja) 2015-05-07
JP6307835B2 true JP6307835B2 (ja) 2018-04-11

Family

ID=53048775

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2013223561A Expired - Fee Related JP6307835B2 (ja) 2013-10-28 2013-10-28 ロボット、ロボット制御装置およびロボットシステム

Country Status (1)

Country Link
JP (1) JP6307835B2 (ja)

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102055313B1 (ko) * 2015-06-29 2019-12-12 카와사키 주코교 카부시키 카이샤 로봇 시스템
JP6575200B2 (ja) * 2015-07-27 2019-09-18 セイコーエプソン株式会社 ロボット、制御装置およびロボットシステム
JP6088679B1 (ja) 2016-02-19 2017-03-01 ファナック株式会社 カメラの画像により故障を判定するロボットシステムの故障診断装置
JP2017200790A (ja) * 2016-05-02 2017-11-09 シャープ株式会社 自律走行車両
CN107838932A (zh) * 2017-12-14 2018-03-27 昆山市工研院智能制造技术有限公司 一种具有多自由度机械臂的陪护机器人
JP7253681B2 (ja) * 2018-08-02 2023-04-07 パナソニックIpマネジメント株式会社 ケーブル挿入装置およびケーブル挿入方法
CN111604879A (zh) * 2020-06-09 2020-09-01 中国煤炭科工集团太原研究院有限公司 煤矿用多关节臂式拆/架棚机器人
JP7552384B2 (ja) * 2021-01-28 2024-09-18 セイコーエプソン株式会社 ケーブル終端検出方法

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0553634A (ja) * 1991-08-29 1993-03-05 Matsushita Electric Ind Co Ltd 複腕干渉回避システム
JPH06143084A (ja) * 1992-10-30 1994-05-24 Komatsu Ltd 双腕ロボットの作動方法
JP2002273601A (ja) * 2001-03-21 2002-09-25 Murata Mach Ltd 多軸工作機械
JP2007179314A (ja) * 2005-12-28 2007-07-12 Star Micronics Co Ltd 工作機械及びそのプログラム変換方法
JP2008260109A (ja) * 2007-04-13 2008-10-30 Tsugami Corp 自動旋盤及び旋盤制御用コンピュータプログラム
JP5891718B2 (ja) * 2011-11-08 2016-03-23 セイコーエプソン株式会社 ロボット
JP2013107138A (ja) * 2011-11-17 2013-06-06 Seiko Epson Corp ロボット及びロボット制御方法

Also Published As

Publication number Publication date
JP2015085406A (ja) 2015-05-07

Similar Documents

Publication Publication Date Title
JP6307835B2 (ja) ロボット、ロボット制御装置およびロボットシステム
EP2865498B1 (en) Robot, robot control device, and robot system
JP6255901B2 (ja) ロボット制御装置、ロボットおよびロボットシステム
US10300597B2 (en) Robot and method of operating robot
US10688659B2 (en) Robot
US9409293B2 (en) Robot
JP6332900B2 (ja) ロボットシステム及びロボット制御装置
US9248572B2 (en) Axis angle determination method for six-axis robot and control apparatus for six-axis robot
US9044861B2 (en) Robot
JP2017127908A (ja) ロボットが出力する回転力を用いるねじ締め装置
EP2868442A2 (en) Robot control device and robot
US20180111266A1 (en) Control device, robot, and robot system
JP2007168053A (ja) 垂直多関節型ロボットのティーチング方法および産業用ロボット装置
JP6268923B2 (ja) ロボット、ロボット制御装置およびロボットシステム
JP4168441B2 (ja) 搬送装置
JP6521021B2 (ja) ロボット、ロボット制御装置およびロボットの制御方法

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20160916

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20170705

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20170718

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20170915

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: 20180213

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20180226

R150 Certificate of patent or registration of utility model

Ref document number: 6307835

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

LAPS Cancellation because of no payment of annual fees