JP7021621B2 - ロボットの動作軌道作成装置 - Google Patents

ロボットの動作軌道作成装置 Download PDF

Info

Publication number
JP7021621B2
JP7021621B2 JP2018174143A JP2018174143A JP7021621B2 JP 7021621 B2 JP7021621 B2 JP 7021621B2 JP 2018174143 A JP2018174143 A JP 2018174143A JP 2018174143 A JP2018174143 A JP 2018174143A JP 7021621 B2 JP7021621 B2 JP 7021621B2
Authority
JP
Japan
Prior art keywords
command
trajectory
robot
positions
confirmation operation
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.)
Active
Application number
JP2018174143A
Other languages
English (en)
Other versions
JP2020044604A (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.)
Denso Wave Inc
Original Assignee
Denso Wave Inc
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 Denso Wave Inc filed Critical Denso Wave Inc
Priority to JP2018174143A priority Critical patent/JP7021621B2/ja
Publication of JP2020044604A publication Critical patent/JP2020044604A/ja
Application granted granted Critical
Publication of JP7021621B2 publication Critical patent/JP7021621B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Numerical Control (AREA)
  • Manipulator (AREA)

Description

本発明は、ロボットを動作させる動作軌道を作成する動作軌道作成装置に関する。
従来、複数の指令位置を通過するスプライン曲線で規定された動作軌道に沿って、ロボットを動作させる装置がある(特許文献1参照)。
特開2007-42021号公報
ところで、特許文献1に記載の装置において、一部の指令位置を修正した場合は、修正後の指令位置を通過するように動作軌道を修正する必要がある。この際に、修正後の動作軌道を確認するためにロボットの現在位置から作成した確認動作軌道と、ロボットを初期位置から動作させた場合の実動作軌道とがずれることに、本願発明者は着目した。
本発明は、上記課題を解決するためになされたものであり、その主たる目的は、ロボットの動作軌道作成装置において、一部の指令位置が修正された場合に、確認動作軌道と実動作軌道とがずれることを抑制することにある。
上記課題を解決するための第1の手段は、
複数の指令位置を通過するスプライン曲線で規定されたロボットの動作軌道を作成する動作軌道作成装置であって、
前記複数の指令位置のうち一部の指令位置が修正された場合に、前記ロボットの確認動作の開始位置よりも1つ前に存在する前記指令位置、前記開始位置から前記確認動作の終了位置までに含まれる前記指令位置、及び前記終了位置よりも1つ後に存在する前記指令位置を用いて、スプライン曲線で規定される所定動作軌道を作成する第1作成部と、
前記第1作成部により作成された前記所定動作軌道のうち、前記開始位置から前記終了位置までの部分を抽出して確認動作軌道を作成する第2作成部と、
を備える。
上記構成によれば、動作軌道作成装置は、複数の指令位置を通過するスプライン曲線で規定されたロボットの動作軌道を作成する。ここで、複数の指令位置のうち一部の指令位置が修正された場合に、ロボットの確認動作の開始位置から終了位置までに含まれる指令位置だけを用いて確認動作軌道を作成すると、以下の問題が生じる。すなわち、動作軌道を規定するスプライン曲線は、指令位置と指令位置との間の各スプライン曲線セグメントを接続する際に所定の接続条件を満たす必要がある。このため、開始位置を通過するスプライン曲線セグメントは、開始位置よりも前の指令位置を通過するスプライン曲線セグメントから影響を受ける。したがって、開始位置(例えば現在位置)から作成した確認動作軌道と、ロボットを初期位置から動作させた場合の実動作軌道とがずれることがある。
この点、第1作成部は、複数の指令位置のうち一部の指令位置が修正された場合に、ロボットの確認動作の開始位置から終了位置までに含まれる指令位置だけでなく、開始位置よりも1つ前に存在する指令位置及び終了位置よりも1つ後に存在する指令位置を用いて、スプライン曲線で規定される所定動作軌道を作成する。このため、所定動作軌道は、開始位置よりも1つ前の指令位置を通過するスプライン曲線セグメント、及び終了位置よりも1つ後の指令位置を通過するスプライン曲線セグメントを反映したものとなる。そして、第2作成部は、第1作成部により作成された所定動作軌道のうち、開始位置から終了位置までの部分を抽出して確認動作軌道を作成する。このため、開始位置よりも前のスプライン曲線セグメント及び終了位置よりも後のスプライン曲線セグメントを反映して、確認動作軌道を作成することができる。特に、確認動作の開始位置を通過するスプライン曲線セグメントは、開始位置よりも1つ前の指令位置から強く影響を受ける。また、確認動作の終了位置を通過するスプライン曲線セグメントは、終了位置よりも1つ後の指令位置から強く影響を受ける。したがって、ロボットの動作軌道作成装置において、一部の指令位置が修正された場合に、確認動作軌道と実動作軌道とがずれることを抑制することができる。
なお、第1作成部は、確認動作の開始位置よりも1つ前に指令位置が存在しない場合は、開始位置よりも1つ前の指令位置を用いずに所定動作軌道を作成する。また、第1作成部は、確認動作の終了位置よりも1つ後に指令位置が存在しない場合は、終了位置よりも1つ後の指令位置を用いずに所定動作軌道を作成する。また、複数の指令位置のうち一部の指令位置が修正された場合には、一部の既存の指令位置の位置が修正された場合、一部の既存の指令位置が削除された場合、及び新たな指令位置が追加された場合が含まれる。
確認動作の開始位置を通過するスプライン曲線セグメントは、開始位置よりも1つ前だけでなく2つ前の指令位置からも比較的強く影響を受ける。また、確認動作の終了位置を通過するスプライン曲線セグメントは、終了位置よりも1つ後だけでなく2つ後の指令位置からも比較的強く影響を受ける。
この点、第2の手段では、前記第1作成部は、前記複数の指令位置のうち一部の指令位置が修正された場合に、前記ロボットの確認動作の開始位置よりも1つ前及び2つ前に存在する前記指令位置、前記開始位置から前記確認動作の終了位置までに含まれる前記指令位置、並びに前記終了位置よりも1つ後及び2つ後に存在する前記指令位置を用いて、前記所定動作軌道を作成する。したがって、確認動作の開始位置から終了位置までに含まれる指令位置以外に、多数の指令位置を用いない場合であっても、所定動作軌道ひいては確認動作軌道の精度をさらに向上させることができる。
第3の手段では、前記第1作成部は、前記複数の指令位置のうち一部の指令位置が修正された場合に、前記複数の指令位置を全て用いて、前記所定動作軌道を作成する。このため、実動作軌道に等しい所定動作軌道のうち、確認動作の開始位置から終了位置までの部分を抽出して確認動作軌道を作成することができる。したがって、ロボットの動作軌道作成装置において、一部の指令位置が修正された場合に、確認動作軌道を実動作軌道に一致させることができる。
第4の手段では、前記開始位置は前記ロボットの現在位置である。このため、ロボットの現在位置から確認動作軌道を作成する場合に、確認動作軌道と実動作軌道とがずれることを抑制することができる。したがって、現在位置から確認動作軌道を容易に作成することができるとともに、確認動作軌道の精度を向上させることができる。
第5の手段では、前記第1作成部は、前記複数の指令位置のうち一部の指令位置が修正された時に、前記所定動作軌道を作成する。このため、複数の指令位置のうち一部の指令位置が修正された時点で、ロボットの確認動作が指令される前に予め所定動作軌道を作成しておくことができる。したがって、ロボットの確認動作が指令された際に、速やかに確認動作軌道を作成することができ、ひいては速やかに確認動作を行うことができる。
ロボット、コントローラ、及びティーチングペンダントを示す概略図。 指令位置と指令位置を通過するスプライン曲線とを示す模式図。 修正後の指令位置及び修正御の動作軌道を示す模式図。
以下、垂直多関節型ロボットの制御装置に具現化した一実施形態について、図面を参照しつつ説明する。本実施形態のロボットは、例えばバリ取り作業やシーリング作業を行うロボットとして機械組立工場などの組立システムにて用いられる。
はじめに、ロボット10の概要を図1に基づいて説明する。
ロボット10は、例えば6軸の垂直多関節型ロボットとして構成されている。ロボット10は、ベース11、ショルダ部13、下アーム15、第1上アーム16A、第2上アーム16B、手首部17、及びフランジ18を備えている。ショルダ部13(第1回転部)は、ベース11により水平方向に回転可能に支持されている。下アーム15(第2回転部)は、ショルダ部13により上下方向に回転可能に支持されている。第1上アーム16A(第3回転部)は、下アーム15により上下方向に回転可能に支持されている。第2上アーム16B(第4回転部)は、第1上アーム16Aにより捻り回転可能に支持されている。手首部17(第5回転部)は、第2上アーム16Bにより上下方向に回転可能に支持されている。フランジ18(第6回転部)は、手首部17により捻り回転可能に支持されている。
ベース11、ショルダ部13、下アーム15、第1上アーム16A、第2上アーム16B、手首部17及びフランジ18は、ロボット10のアームとして機能する。アーム先端であるフランジ18には、図示は省略するが、エンドエフェクタ(手先)が取り付けられる。フランジ18の先端面の中心18aが、ロボット10のアームを動作させる際に位置を制御する制御点となる。ロボット10の各関節(各回転部)は、対応して設けられた各モータにより駆動される。
ティーチングペンダント40は、例えば作業者(オペレータ)が携帯あるいは手に持って操作可能な程度の大きさで、例えば薄型の直方体状に形成されている。ティーチングペンダント40は、各種のキースイッチ41及びディスプレイ42等を備えている。作業者は、キースイッチ41により種々の入力操作を行う。ティーチングペンダント40は、ケーブルを介してコントローラ70に接続されており、コントローラ70と通信可能となっている。作業者は、ティーチングペンダント40を操作して、ロボット10の動作軌道の作成、修正、登録、各種パラメータの設定を行うことができる。そして、作業者は、コントローラ70を通じて、ティーチングされた動作軌道に基づきロボット10を動作させることができる。換言すれば、コントローラ70は、予め設定された動作軌道及びティーチングペンダント40の操作に基づいて、ロボット10のアームの動作を制御する。
コントローラ70(動作軌道作成装置)は、CPU、ROM、RAM、入出力インターフェース、駆動回路、検出回路等を備えている。ROMは、ロボット10のシステムプラグラム等を記憶している。RAMは、ロボット10の動作プラグラム等を記憶している。駆動回路は、各関節のモータを駆動する。検出回路は、各関節の回転角度及び回転速度を検出する。CPUは、動作軌道に基づいて、各関節の回転速度パターンを作成する。CPUは、回転速度パターン、検出回路により検出された回転角度及び回転速度に基づいて、駆動回路を制御する。これにより、制御点である中心18aが複数の指令位置を順に通過して、ロボット10により種々の作業が行われる。なお、コントローラ70は、第1作成部及び第2作成部の機能を実現する。
本実施形態では、中心18aの移動経路(ロボット10の動作軌道)は、ティーチングペンダント40を用いて行う教示作業によって設定される。この教示作業では、中心18aが辿るべき経路上の複数の位置が指令位置として順に教示されると共に、各指令位置での中心18aの姿勢が教示される。そして、コントローラ70は、実際のロボット10の作業に際して、教示された複数の指令位置間を曲線補間して、それら指令位置を順に滑らかに辿る曲線を作成する。コントローラ70は、中心18aがその曲線上を移動するように制御する。
上記の複数の指令位置の曲線補間は、スプライン補間方式によって行われる。このスプライン補間の一例を図2によって説明する。図2において、R0,R1,…Rnは、(n+1)個の指令位置であり、R0が移動開始位置(初期位置)、Rnが移動終了位置である。また、指令位置R0~Rnの相互間を結んでいる曲線G1,G2…Gnは、指令位置R0~Rnの相互間を一区間として各区間について定義されるスプライン曲線セグメントである。スプライン補間では、スプライン曲線セグメントに対応するスプラインセグメント関数により、指令位置を通るスプライン曲線を定義する。
各スプライン曲線セグメント上の各点の位置は、以下の(式1)に示す3次の一般式(スプラインセグメント関数)によって定義される(詳細は特許文献1参照)。Pは、スプライン曲線セグメント上の点の位置を表す位置ベクトルである。tはパラメータ(媒介変数)であり、0≦t≦1で変化する。A,B,C,Dはベクトル係数である。t^3は、tの3乗を表す。
P(t)=At^3+Bt^2+Ct+D ・・・(式1)
上記スプラインセグメント関数で示されるスプライン曲線セグメントGk(kは1からnまでの整数)のベクトル係数A,B,C,Dを解くと、以下の(式2)~(式5)のようになる(詳細は特許文献1参照)。ここで、スプライン曲線セグメントGkの両端(始点側の指令位置R(k-1)と終点側の指令位置Rk)の位置ベクトルは、それぞれP(k-1)とPkである。Tk,T(k-1)は、それぞれ指令位置R(k),指令位置R(k-1)における接戦ベクトルである。
A=2P(k-1)-2Pk+T(k-1)+Tk ・・・(式2)
B=3Pk-3P(k-1)-2T(k-1)-Tk ・・・(式3)
C=T(k-1) ・・・(式4)
D=P(k-1) ・・・(式5)
以上のように、指令位置相互間を一区間としたとき、各区間のスプライン曲線セグメントは上記式(1)~(5)によって表される。それら各区間のスプライン曲線セグメントを接続するための条件として、一般的に以下の条件が用いられる。
(1)接続点が一致していること。
(2)接続点で接線ベクトルが一致していること。
(3)接続点で接線ベクトルの変化率が一致していること。
これらの条件を満たすように、接線ベクトルTを算出する。そして、算出された接線ベクトルTを用いて、各区間のスプライン曲線セグメントを表す上記(式1)のベクトル係数A,B,C,Dを算出する。これにより、各指令位置において滑らかに連続するスプライン曲線(動作軌道)を得ることができる。
図3に示すように、破線で示す修正前の動作軌道L0において、制御点である中心18aが現在位置Nにある状態で、例えば指令位置R3が指令位置R3Aに修正されたとする。このとき、修正後の動作軌道を確認するために、現在位置Nから指令位置R3A,R4,R5まで確認動作軌道を作成すると、一点鎖線で示す確認動作軌道L1となる。この場合、確認動作の開始位置は現在位置Nであり、確認動作の終了位置は指令位置R5である。これに対して、初期位置R0から指令位置R1,R2,R3A,R4,R5まで動作させると、実線で示す実動作軌道L2となる。このように、ロボット10の現在位置Nから作成した確認動作軌道L1と、ロボット10を初期位置R0から動作させた場合の実動作軌道L2とがずれることに、本願発明者は着目した。
そこで、本実施形態では、コントローラ70(第1作成部)は、指令位置R3が修正された場合に、ロボット10の現在位置Nよりも前の指令位置R2,R1、指令位置R3A~R5、並びに指令位置R5よりも後の指令位置R6,R7を用いて、所定動作軌道を作成する。すなわち、コントローラ70は、複数の指令位置R0~R7のうち一部の指令位置R3(複数の指令位置も可)が修正された場合に、ロボット10の確認動作の開始位置(現在位置N)よりも1つ前及び2つ前に存在する指令位置R2,R1、確認動作の開始位置から終了位置(指令位置R5)までに含まれる指令位置(R3A~R5)、並びに終了位置よりも1つ後及び2つ後に存在する指令位置R6,R7を用いて、所定動作軌道を作成する。
そして、コントローラ70(第2作成部)は、所定動作軌道のうち、確認動作の開始位置(現在位置N)から終了位置(指令位置R5)までの部分を抽出して確認動作軌道を作成する。
さらに、コントローラ70は、複数の指令位置のうち一部の指令位置が修正された時に、所定動作軌道を作成する。すなわち、複数の指令位置のうち一部の指令位置が修正された時点で、ロボット10の確認動作が指令される前に予め所定動作軌道を作成しておく。
また、指令位置R2が初期位置である場合、コントローラ70は、指令位置R3が修正された場合に、ロボット10の現在位置Nよりも前の指令位置R2、指令位置R3A~R5、並びに指令位置R5よりも後の指令位置R6,R7を用いて、所定動作軌道を作成する。すなわち、コントローラ70、確認動作の開始位置(現在位置N)よりも2つ前に指令位置が存在しない場合は、開始位置よりも2つ前の指令位置を用いずに所定動作軌道を作成する。なお、コントローラ70は、確認動作の開始位置(現在位置N)よりも1つ前に指令位置が存在しない場合は、開始位置よりも1つ前の指令位置を用いずに所定動作軌道を作成する。
また、指令位置R6が移動終了位置である場合、コントローラ70は、指令位置R3が修正された場合に、ロボット10の現在位置Nよりも前の指令位置R2,R1、指令位置R3A~R5、並びに指令位置R5よりも後の指令位置R6を用いて、所定動作軌道を作成する。すなわち、コントローラ70、確認動作の終了位置よりも2つ後に指令位置が存在しない場合は、終了位置よりも2つ後の指令位置を用いずに所定動作軌道を作成する。なお、コントローラ70は、確認動作の終了位置よりも1つ後に指令位置が存在しない場合は、終了位置よりも1つ後の指令位置を用いずに所定動作軌道を作成する。
また、複数の指令位置R0~R7のうち一部の既存の指令位置R3が削除(修正)された場合、コントローラ70は、ロボット10の確認動作の開始位置(現在位置N)よりも1つ前及び2つ前に存在する指令位置R2,R1、開始位置から確認動作の終了位置(指令位置R5)までに含まれる指令位置(R4~R5)、並びに終了位置よりも1つ後及び2つ後に存在する指令位置R6,R7を用いて、所定動作軌道を作成する。
また、複数の指令位置R0~R7のうち、指令位置R3と指令位置R4との間に新たな指令位置R3.5が追加(修正)された場合、コントローラ70は、ロボット10の確認動作の開始位置(現在位置N)よりも1つ前及び2つ前に存在する指令位置R2,R1、開始位置から確認動作の終了位置(指令位置R5)までに含まれる指令位置(R3,R3.5,R4,R5)、並びに終了位置よりも1つ後及び2つ後に存在する指令位置R6,R7を用いて、所定動作軌道を作成する。
ここで、指令位置R2と指令位置R3Aとの間の現在位置Nから確認動作軌道を作成する場合、指令位置R2と指令位置R3Aとの間を一区間とするスプライン曲線セグメント(スプラインセグメント関数)ではパラメータtが0から始まらない。このため、上述したスプラインセグメント関数の(式1)をそのまま用いることができない。そこで、パラメータtを以下のように補正して、パラメータtが0から始まるようにする。すなわち、現在位置Nにおけるパラメータtがα(0<α<1)であるとして、パラメータtがαから1まで変化する領域の部分スプラインセグメント関数Q(t)を、以下の(式7)で定義する。
Q(t)
=P((1-α)t+α)
=(1-α)^3・At^3+(1-α)^2・(3αA+B)t^2+(1-α)(3α^2・A+2αB+C)t+(α^3・A+α^2・B+αC+D) ・・・(式7)
(式7)を用いることにより、(式1)と同様にパラメータtを0≦t≦1とすることができ、(式1)と同様の補間処理を行うことができる。したがって、補間処理が複雑になることを防ぐことができる。
ロボット10の確認動作は、順方向の送り動作だけでなく、逆方向の戻し動作も行えると作業効率が高くなる。すなわち、戻し動作においても、確認動作軌道と実動作軌道とがずれていないことを確認できることが望ましい。そこで、パラメータtを以下のように補正することで、戻し動作を行う。すなわち、パラメータtを0≦t≦1として、戻し動作を表す反転スプラインセグメント関数R(T)を、以下の(式8)で定義する。
R(t)
=P(1-t)
=-At^3+(3A+B)t^2-(3A+2B+C)t+(A+B+C+D) ・・・(式8)
(式8)を用いることにより、(式1)と同様にパラメータtを0から1まで変化させた場合に、戻し動作を行うことができる。したがって、戻し動作専用の補間処理を行う必要がない。
ここで、指令位置R2と指令位置R3Aとの間の現在位置Nから戻し動作の確認動作軌道を作成する場合、指令位置R2と指令位置R3Aとの間を一区間とするスプライン曲線セグメント(スプラインセグメント関数)ではパラメータtが0から始まらない。このため、上記(式8)をそのまま用いることができない。そこで、パラメータtを以下のように補正して、パラメータtが0から始まるようにする。すなわち、現在位置Nにおけるパラメータtがα(0<α<1)であるとして、パラメータtがαから0まで変化する領域の部分反転スプラインセグメント関数S(t)を、以下の(式9)で定義する。
S(t)
=P(α-αt)
=-α^3・At^3+(3α^3・A+α^2・B)t^2-(3α^3・A+2α^2・B+αC)t+(α^3・A+α^2・B+αC+D) ・・・(式9)
(式9)を用いることにより、(式8)と同様にパラメータtを0≦t≦1とすることができ、(式8)と同様の補間処理を行うことができる。したがって、戻し動作の補間処理が複雑になることを防ぐことができる。
以上詳述した本実施形態は、以下の利点を有する。
・コントローラ70は、複数の指令位置R0~R7のうち一部の指令位置R3が修正された場合に、ロボット10の確認動作の開始位置(現在位置N)から終了位置(指令位置R5)までに含まれる指令位置だけでなく、開始位置よりも1つ前に存在する指令位置R2及び終了位置よりも1つ後に存在する指令位置R6を用いて、スプライン曲線で規定される所定動作軌道を作成する。このため、所定動作軌道は、開始位置よりも1つ前の指令位置R2を通過するスプライン曲線セグメント、及び終了位置よりも1つ後の指令位置R6を通過するスプライン曲線セグメントを反映したものとなる。そして、コントローラ70は、所定動作軌道のうち、開始位置から終了位置までの部分を抽出して確認動作軌道を作成する。このため、開始位置よりも前のスプライン曲線セグメント及び終了位置よりも後のスプライン曲線セグメントを反映して、確認動作軌道を作成することができる。特に、確認動作の開始位置を通過するスプライン曲線セグメントは、開始位置よりも1つ前の指令位置から強く影響を受ける。また、確認動作の終了位置を通過するスプライン曲線セグメントは、終了位置よりも1つ後の指令位置から強く影響を受ける。したがって、一部の指令位置R3が修正された場合に、確認動作軌道と実動作軌道とがずれることを抑制することができる。
・開始位置を通過するスプライン曲線セグメントは、開始位置よりも1つ前だけでなく2つ前の指令位置R2,R1からも比較的強く影響を受ける。また、終了位置を通過するスプライン曲線セグメントは、終了位置よりも1つ後だけでなく2つ後の指令位置R6,R7からも比較的強く影響を受ける。この点、コントローラ70は、複数の指令位置R0~R7のうち一部の指令位置R3が修正された場合に、ロボット10の確認動作の開始位置よりも1つ前及び2つ前に存在する指令位置R2,R1、開始位置から確認動作の終了位置までに含まれる指令位置、並びに終了位置よりも1つ後及び2つ後に存在する指令位置R6,R7を用いて、所定動作軌道を作成する。したがって、確認動作の開始位置から終了位置までに含まれる指令位置以外に、多数の指令位置を用いない場合であっても、所定動作軌道ひいては確認動作軌道の精度をさらに向上させることができる。
・確認動作の開始位置はロボット10の現在位置Nである。このため、ロボット10の現在位置Nから確認動作軌道を作成する場合に、確認動作軌道と実動作軌道とがずれることを抑制することができる。したがって、現在位置Nから確認動作軌道を容易に作成することができるとともに、確認動作軌道の精度を向上させることができる。さらに、現在位置Nから確認動作軌道を作成する場合に、パラメータtを補正することで、補間処理が複雑になることを防ぐことができる。
・コントローラ70は、複数の指令位置R0~R7のうち一部の指令位置R3が修正された時に、所定動作軌道を作成する。このため、複数の指令位置R0~R7のうち一部の指令位置R3が修正された時点で、ロボット10の確認動作が指令される前に予め所定動作軌道を作成しておくことができる。したがって、ロボット10の確認動作が指令された際に、速やかに確認動作軌道を作成することができ、ひいては速やかに確認動作を行うことができる。
なお、上記実施形態を、以下のように変更して実施することもできる。上記実施形態と同一の部分については、同一の符号を付すことにより説明を省略する。
・ロボット10の確認動作が指令されてから所定動作軌道を作成し、その後に所定動作軌道から確認動作軌道を作成してもよい。
・確認動作の開始位置を現在位置N以外に設定することもできる。
・コントローラ70は、複数の指令位置のうち一部の指令位置が修正された場合に、ロボット10の確認動作の開始位置よりも1~3つ前に存在する指令位置、開始位置から確認動作の終了位置までに含まれる指令位置、並びに終了位置よりも1~3つ後に存在する指令位置を用いて、所定動作軌道を作成してもよい。
・コントローラ70は、複数の指令位置のうち一部の指令位置が修正された場合に、複数の指令位置を全て用いて、所定動作軌道を作成してもよい。こうした構成によれば、実動作軌道に等しい所定動作軌道のうち、確認動作の開始位置から終了位置までの部分を抽出して確認動作軌道を作成することができる。したがって、一部の指令位置が修正された場合に、確認動作軌道を実動作軌道に一致させることができる。
・コントローラ70は、作成した確認動作軌道によりロボット10に確認動作を実行させる他、確認動作軌道を例えばティーチングペンダント40のディスプレイ42に表示させてもよい。
・各区間のスプライン曲線セグメントを接続するための条件として、特許文献1と同様の以下の条件を用いることもできる。
(1)接続点が一致していること。
(2)一区画の両端(始点側指令位置および終点側指令位置)の接線ベクトルの大きさは、両端を結ぶ直線の長さに比例する大きさに定め、且つ、両端の接線ベクトルの向きは、両端を結ぶ直線が、前の一区間についての両端を結ぶ直線および後の一区間について両端を結ぶ直線となす角を、それぞれ2分する方向に定めること。
(3)上記のように定めた始点側接線ベクトルの向きが前の区画の終点側接線ベクトルの向きと一致し、終点側接線ベクトルの向きが後の区画の始点側接線ベクトルの向きと一致すること。
これらの条件を満たすように、接線ベクトルTを算出する。そして、算出された接線ベクトルTを用いて、各区間のスプライン曲線セグメントを表す上記(式1)のベクトル係数A,B,C,Dを算出する(詳細は特許文献1参照)。こうした構成によっても、各指令位置において滑らかに連続するスプライン曲線(動作軌道)を得ることができる。
この場合、実動作軌道は、修正した指令位置の2つ前の指令位置から2つ後までの指令位置からしか影響を受けない。このため、コントローラ70は、確認動作の開始位置から終了位置までに含まれる指令位置、及び修正した指令位置の2つ前の指令位置から2つ後までの指令位置を用いて、所定動作軌道を作成すれば十分である。すなわち、この場合も、コントローラ70は、複数の指令位置のうち一部の指令位置が修正された場合に、ロボット10の確認動作の開始位置よりも1つ前及び2つ前に存在する指令位置、開始位置から確認動作の終了位置までに含まれる指令位置、並びに終了位置よりも1つ後及び2つ後に存在する指令位置を用いて、所定動作軌道を作成すれば十分である。
・ロボット10は、垂直多関節型ロボットに限らず、水平多関節型ロボット等であってもよい。
10…ロボット、18…フランジ、18a…中心、40…ティーチングペンダント、70…コントローラ(動作軌道作成装置)。

Claims (5)

  1. 複数の指令位置を通過するスプライン曲線で規定されたロボットの動作軌道を作成する動作軌道作成装置であって、
    前記複数の指令位置のうち一部の指令位置が修正された場合に、前記ロボットの確認動作の開始位置よりも1つ前に存在する前記指令位置、前記開始位置から前記確認動作の終了位置までに含まれる前記指令位置、及び前記終了位置よりも1つ後に存在する前記指令位置を用いて、スプライン曲線で規定される所定動作軌道を作成する第1作成部と、
    前記第1作成部により作成された前記所定動作軌道のうち、前記開始位置から前記終了位置までの部分を抽出して確認動作軌道を作成する第2作成部と、
    を備えるロボットの動作軌道作成装置。
  2. 前記第1作成部は、前記複数の指令位置のうち一部の指令位置が修正された場合に、前記ロボットの確認動作の開始位置よりも1つ前及び2つ前に存在する前記指令位置、前記開始位置から前記確認動作の終了位置までに含まれる前記指令位置、並びに前記終了位置よりも1つ後及び2つ後に存在する前記指令位置を用いて、前記所定動作軌道を作成する、請求項1に記載のロボットの動作軌道作成装置。
  3. 前記第1作成部は、前記複数の指令位置のうち一部の指令位置が修正された場合に、前記複数の指令位置を全て用いて、前記所定動作軌道を作成する、請求項1又は2に記載のロボットの動作軌道作成装置。
  4. 前記開始位置は前記ロボットの現在位置である、請求項1~3のいずれか1項に記載のロボットの動作軌道作成装置。
  5. 前記第1作成部は、前記複数の指令位置のうち一部の指令位置が修正された時に、前記所定動作軌道を作成する、請求項1~4のいずれか1項に記載のロボットの動作軌道作成装置。
JP2018174143A 2018-09-18 2018-09-18 ロボットの動作軌道作成装置 Active JP7021621B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2018174143A JP7021621B2 (ja) 2018-09-18 2018-09-18 ロボットの動作軌道作成装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2018174143A JP7021621B2 (ja) 2018-09-18 2018-09-18 ロボットの動作軌道作成装置

Publications (2)

Publication Number Publication Date
JP2020044604A JP2020044604A (ja) 2020-03-26
JP7021621B2 true JP7021621B2 (ja) 2022-02-17

Family

ID=69900462

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2018174143A Active JP7021621B2 (ja) 2018-09-18 2018-09-18 ロボットの動作軌道作成装置

Country Status (1)

Country Link
JP (1) JP7021621B2 (ja)

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008040702A (ja) 2006-08-04 2008-02-21 Okuma Corp 近似点群データからの近似曲線生成プログラム及び方法
JP2016083730A (ja) 2014-10-27 2016-05-19 キヤノン株式会社 ロボット装置の制御方法、およびロボット装置

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH02161503A (ja) * 1988-12-14 1990-06-21 Mitsubishi Heavy Ind Ltd ロボットにおける教示位置データの修正・再生方法
JP3462570B2 (ja) * 1994-05-09 2003-11-05 ファナック株式会社 ロボット動作プログラムの作成方法
JPH09146621A (ja) * 1995-11-01 1997-06-06 Mitsubishi Electric Corp ロボットのシミュレーション装置

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008040702A (ja) 2006-08-04 2008-02-21 Okuma Corp 近似点群データからの近似曲線生成プログラム及び方法
JP2016083730A (ja) 2014-10-27 2016-05-19 キヤノン株式会社 ロボット装置の制御方法、およびロボット装置

Also Published As

Publication number Publication date
JP2020044604A (ja) 2020-03-26

Similar Documents

Publication Publication Date Title
JP6843050B2 (ja) ロボットシステム
JP4736607B2 (ja) ロボット制御装置
JP6386516B2 (ja) 学習機能を備えたロボット装置
WO2002066210A1 (fr) Dispositif de commande de robot
JP6360301B2 (ja) 動作プログラム作成方法およびロボットの制御方法
JP7021621B2 (ja) ロボットの動作軌道作成装置
JP5933450B2 (ja) ロボットの制御装置および制御方法
JP2018012185A (ja) ロボットの運転方法、コンピュータプログラム、及びロボットシステム
CN112423947B (zh) 机器人系统
JP2006015431A (ja) ロボットの制御装置及び制御方法
JP2009113172A (ja) 指令値生成装置
CN111331577B (zh) 机器人的控制装置及控制方法
JPH02308311A (ja) 多関節ロボットの補間速度指令方法
JP4255783B2 (ja) ロボット制御装置
JP7067435B2 (ja) 軌道生成装置
JP7053941B2 (ja) ロボット制御装置
US20220184814A1 (en) Robot system
JPH0285906A (ja) 産業用ロボットの制御装置
JP6497102B2 (ja) ロボットの制御装置及び制御方法
JP2016147322A (ja) ロボットの制御装置及び制御方法
JPH08263128A (ja) ロボットの位置決め制御時の加減速制御方法
JPH0720919A (ja) マニプレータの制御装置
JP2009075898A (ja) ロボット制御装置
JP2016147321A (ja) ロボットの制御装置及び制御方法
JP2002086375A (ja) ロボットの制御装置

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20210209

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20211116

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20220118

R150 Certificate of patent or registration of utility model

Ref document number: 7021621

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150