IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ 日本電産株式会社の特許一覧

<>
  • 特開-ロボット制御装置 図1
  • 特開-ロボット制御装置 図2
  • 特開-ロボット制御装置 図3
  • 特開-ロボット制御装置 図4
  • 特開-ロボット制御装置 図5
  • 特開-ロボット制御装置 図6
  • 特開-ロボット制御装置 図7
  • 特開-ロボット制御装置 図8
  • 特開-ロボット制御装置 図9
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2024123917
(43)【公開日】2024-09-12
(54)【発明の名称】ロボット制御装置
(51)【国際特許分類】
   B25J 13/02 20060101AFI20240905BHJP
   B25J 19/06 20060101ALI20240905BHJP
【FI】
B25J13/02
B25J19/06
【審査請求】未請求
【請求項の数】9
【出願形態】OL
(21)【出願番号】P 2023031732
(22)【出願日】2023-03-02
(71)【出願人】
【識別番号】000232302
【氏名又は名称】ニデック株式会社
(74)【代理人】
【識別番号】110001933
【氏名又は名称】弁理士法人 佐野特許事務所
(72)【発明者】
【氏名】浪越 孝宏
【テーマコード(参考)】
3C707
【Fターム(参考)】
3C707AS30
3C707BS10
3C707HS27
3C707JU14
3C707KS17
3C707KS20
3C707KS21
3C707KS33
3C707KS35
3C707KX06
3C707KX10
3C707KX19
3C707LU01
3C707LU07
3C707MS29
(57)【要約】      (修正有)
【課題】より安全なロボット制御が可能となるロボット制御装置を提供することを目的とする。
【解決手段】ロボット制御装置は、操作部と、前記操作部を駆動する駆動部と、前記操作部とロボットとを連動させる連動制御部と、を備え、前記連動制御部は、前記駆動部を用いた前記操作部の操作負荷に関する制御を行う。
【選択図】図1
【特許請求の範囲】
【請求項1】
操作部と、
前記操作部を駆動する駆動部と、
前記操作部とロボットとを連動させる連動制御部と、
を備え、
前記連動制御部は、前記駆動部を用いた前記操作部の操作負荷に関する制御を行う、ロボット制御装置。
【請求項2】
前記連動制御部は、前記操作部の操作に連動させて前記ロボットを制御し、前記ロボットの動作状況に基づいて前記操作負荷の変化に関する前記制御を前記駆動部に対して行う、請求項1に記載のロボット制御装置。
【請求項3】
前記連動制御部は、前記ロボットとワークとの位置関係に基づいて前記制御を行う、請求項2に記載のロボット制御装置。
【請求項4】
前記連動制御部は、前記ロボットの動作速度に基づいて前記制御を行う、請求項2に記載のロボット制御装置。
【請求項5】
前記連動制御部は、前記操作部における操作速度に基づいて前記操作負荷の変化に関する前記制御を前記駆動部に対して行う、請求項2に記載のロボット制御装置。
【請求項6】
前記連動制御部は、前記ロボットが過負荷を付与された旨を示す信号を前記ロボットから受けた場合に、前記操作部の操作を妨げるための制御を前記駆動部に対して行う、請求項2に記載のロボット制御装置。
【請求項7】
前記連動制御部は、前記ロボットにおける特定の動作状況に基づいて前記操作部に振動を与えるための制御を前記駆動部に対して行う、請求項2に記載のロボット制御装置。
【請求項8】
前記操作部は、回転可能なハンドルを有し、
前記連動制御部は、
前記ハンドルの回転角度に応じてカウント値を変化させるカウンタと、
前記カウント値に応じた位置に前記ロボットを移動制御する制御部と、
を有する、請求項2に記載のロボット制御装置。
【請求項9】
前記連動制御部は、前記ロボットの動作に連動させて前記駆動部を介して前記操作部を動作させ、前記駆動部によって検出される前記操作部に付与される負荷に基づいて前記ロボットの動作速度を制御する、請求項1に記載のロボット制御装置。
【発明の詳細な説明】
【技術分野】
【0001】
本開示は、ロボット制御装置に関する。
【背景技術】
【0002】
従来、産業用ロボットのティーチング作業において、いきなり本来の動作速度でロボットを連続稼働させるのではなく、まずは低速で動作させる場合がある。例えば、ティーチング用の操作装置であるティーチングペンダントに設けられたジョグダイヤルを使用して、ロボットを低速再生動作させる技術が特許文献1に開示されている。
【先行技術文献】
【特許文献】
【0003】
【特許文献1】特開2017-18939号公報
【発明の概要】
【発明が解決しようとする課題】
【0004】
しかしながら、従来のロボット制御装置には、ロボット制御の安全性に改善の余地があった。
【0005】
上記状況に鑑み、本開示は、より安全なロボット制御が可能となるロボット制御装置を提供することを目的とする。
【課題を解決するための手段】
【0006】
本開示の例示的なロボット制御装置は、操作部と、前記操作部を駆動する駆動部と、前記操作部とロボットとを連動させる連動制御部と、を備え、前記連動制御部は、前記駆動部を用いた前記操作部の操作負荷に関する制御を行う。
【発明の効果】
【0007】
本開示の例示的なロボット制御装置によれば、より安全なロボット制御が可能となる。
【図面の簡単な説明】
【0008】
図1図1は、本開示の例示的な実施形態に係るロボット制御装置の構成を示すブロック図である。
図2図2は、ロボットの模式図である。
図3図3は、経由点を説明するための図である。
図4図4は、操作部(ハンドル)の操作方向とロボットの動作方向との対応関係を示す図である。
図5図5は、ハンドル操作モードの動作に関するフローチャートである。
図6図6は、ハンドル操作モードの動作に関するフローチャートである。
図7図7は、ハンドル自動回転モードの動作に関するフローチャートである。
図8図8は、ハンドル自動回転モードの動作に関するフローチャートである。
図9図9は、ハンドル自動回転モードの動作に関するフローチャートである。
【発明を実施するための形態】
【0009】
以下に図面を参照して本開示の例示的な実施形態を説明する。
【0010】
<1.ロボット制御装置の構成>
図1は、本開示の例示的な実施形態に係るロボット制御装置10の構成を示すブロック図である。ロボット制御装置10は、ロボット6を制御する装置であり、操作部1と、駆動部2と、ハンドルコントローラ3と、ロボットコントローラ4と、を備える。
【0011】
操作部1は、回転可能なハンドルにより構成される。操作部1は、ハンドルで構成することが特に好適であるが、ジョグダイヤルまたはスライド可能な操作部などにより構成してもよい。
【0012】
駆動部2は、モータにより構成され、操作部1を回転駆動する。すなわち、ロボット制御装置10は、操作部1を駆動する駆動部2を備える。
【0013】
ハンドルコントローラ3は、駆動部2を制御することでハンドル1の操作負荷を制御する。なお、操作負荷とは、ユーザがハンドルを操作(回転)するとき必要な力のことである。たとえば、操作負荷を増大すると、ユーザはハンドルを操作するときに必要な力が増大前に比べて大きくなる。一方、操作負荷を減少すると、ユーザはハンドルを操作するときに必要な力が減少前に比べて小さくなる。
【0014】
ロボットコントローラ4は、ロボット6の動作制御を行う。ロボットコントローラ4は、制御部41と、ロボットプログラム記憶領域42と、ロボット命令解析部43と、経由点記憶領域44と、内部クロックカウンタ45と、ハンドル操作カウンタ46と、を有し、例えばPC(パーソナルコンピュータ)により構成される。
【0015】
ロボットプログラム記憶領域42には、ロボットプログラム42Aが記憶される。ロボットプログラム42Aは、ロボット6に対する動作指令に関するプログラムである。ロボット命令解析部43は、ロボットプログラム42Aを読み出して解析し、経由点データ44Aを生成する。経由点データ44Aは、ロボットプログラム42Aにより指令されるロボット6の動作軌跡における制御周期ごとの経由点に関するデータである。作成された経由点データ44Aは、経由点記憶領域44に記憶される。なお、ロボットプログラムおよび経由点については、後に詳述する。
【0016】
内部クロックカウンタ45は、制御周期を周期とする内部クロックをカウントする。内部クロックカウンタ45のカウント値は、制御周期ごとにインクリメント(1だけ増加)される。通常動作モード時には、制御部41は、内部クロックカウンタ45のカウント値がインクリメントされるたびに、経由点データ44Aにおける次の経由点にロボット6を移動させる制御を行う。
【0017】
ハンドルコントローラ3は、例えば駆動部2に設けられたエンコーダによって検出された操作部1の回転角度を回転角度信号として取得する。ハンドル操作カウンタ46は、取得された回転角度信号に応じてカウントを行う。すなわち、ハンドル操作カウンタ46のカウント値は、回転角度信号に応じて更新される。操作部1を操作することでロボット6を動作させるハンドル操作モード時には、制御部41は、経由点データ44Aにおけるハンドル操作カウンタ46のカウント値に応じた経由点にロボット6を移動するよう制御を行う。なお、ハンドル操作モードにおける動作については、後に詳述する。
【0018】
このように、操作部1における操作に応じてハンドルコントローラ3およびロボットコントローラ4によってロボット6の動作を制御できる。図1に示すように、ハンドルコントローラ3とロボットコントローラ4から連動制御部5が構成される。すなわち、ロボット制御装置10は、操作部1とロボット6とを連動させる連動制御部5を備える。連動制御部5は、操作部1の操作に連動させてロボット6を制御する。
【0019】
<2.ロボットの構成>
ロボット6は、図2に一例を模式的に示すように、産業用の多関節ロボット(ロボットアーム)である。ロボット6は、各関節軸に関節モータが搭載されており、先端部にハンド6Aを有する。ハンド6Aは、ワークWを把持するように構成される。ワークWは、治具Jに保持される。なお、ハンド6Aは、指によってワークWを把持する構成であってもよいし、吸着によってワークWを把持する構成であってもよい。図1に示すように、ロボット6は、各関節モータを制御する関節モータコントローラ61を有する。関節モータの駆動制御によりハンド6Aは所定の位置・姿勢に制御される。
【0020】
また、ロボット6は、各関節部にトルクセンサ62を有する。トルクセンサ62は、各関節軸にかかるトルクを検出するように構成され、例えばひずみゲージにより構成される。各関節軸のトルクを検出して総合的に評価することで、ハンド6Aの把持状態を推測することができる。なお、ハンド6Aの把持状態を把握するためには、トルクセンサの代わりに、ハンド6Aの手首部に設けられる力覚センサ、あるいはハンド6Aの指先に設けられる触覚センサを用いてもよい。
【0021】
<3.ロボットプログラム>
ロボットコントローラ4には、ティーチングペンダント(図示せず)と呼ばれる操作装置が接続される。ティーチングペンダントを用いて、ロボットコントローラ4にロボット6の位置姿勢を登録することができる。例えば、ティーチングペンダントにおける操作によりロボット6の関節を制御し、所望の位置姿勢のときにティーチングペンダントにおいて登録操作をすると、そのときの位置姿勢がロボットコントローラ4に登録される。このような登録作業をティーチングと呼び、登録された位置姿勢は、教示点と呼ばれる。教示点は、教示点データとしてロボットコントローラ4の所定の記憶領域に登録される。なお、教示点は、ロボット6の先端部(ハンド6A)の位置姿勢情報である。
【0022】
ロボットプログラムは、例えばBASICまたはPythonなどのプログラミング言語により構成される。例えば、外部PCにおいて、教示点データを用いた動作指令をプログラミングすることでロボットプログラムを生成することが可能である。
【0023】
図1に示すロボットプログラム42Aでは、Move(x,y,z)といった指令が含まれている。Move(x,y,z)は、初期位置Psから(x,y,z)で示された目標位置(移動先)Ptまでの移動を意味する。後述する図4に示すように、ロボット6の先端部(ハンド6A)を始点P1から終点P2まで移動させる場合、例えばMove(x1,y1,z1)は、初期位置Psを始点P1として、(x1,y1,z1)で示された目標位置Ptまで移動することを意味する。次の指令がMove(x2,y2,z2)である場合、初期位置Psを前回の目標位置Ptである(x1,y1,z1)として、次の目標位置Pt=(x2,y2,z2)までの移動となる。さらに次の指令がMove(x3,y3,z3)である場合、初期位置Psを前回の目標位置Ptである(x2,y2,z2)として、次の目標位置Pt=(x3,y3,z3)までの移動となる。
【0024】
<4.経由点>
先述したように、ロボット命令解析部43によりロボットプログラム42Aが解析されることで、経由点データ44Aが生成される。初期位置Ps、目標位置Pt、初期位置Psから目標位置Ptまでの軌跡Rの形状、およびロボット6の動作速度に基づいて経由点が算出される。図3の上段には、初期位置Psから目標位置Ptまでの軌跡Rの形状が円弧である場合と、直線である場合を模式的に示す。
【0025】
図3の下段には、軌跡Rにおいて算出される経由点の一例を示す。このように、軌跡Rにおいて制御周期Tごとの経由点P(t0)、P(t1)、P(t2)・・・が算出される。なお、P(t0)=初期位置Psである。図1の例では、制御周期T=4msであり、この場合、ロボットプログラム42Aにおける指令が順次読み出されて解析されることで、始点P1から終点P2までの4msごとの経由点が算出されて経由点データ44Aが生成される。
【0026】
内部クロックカウンタ45またはハンドル操作カウンタ46のカウント値がインクリメントされるたびに1制御周期だけ進んだ経由点に移る(例えばP(t1)→P(t2)など)。ただし、後述するようにハンドル操作カウンタ46のカウント値は、デクリメント(1だけ減少)することも可能であり、その場合、デクリメントされるたびに1制御周期だけ戻った経由点に移る(例えばP(t2)→P(t1)など)。
【0027】
<5.ハンドル操作>
図4は、操作部(ハンドル)1の操作方向とロボット6の動作方向との対応関係を示す図である。操作部1は回転可能であり、例えば、操作部1の90度の回転操作がロボット6(ハンド6A)の1秒分の移動に相当する場合、制御周期=4msの場合、90×0.004=0.36度の回転が制御周期分の移動に相当する。
【0028】
ハンドル操作カウンタ46は、操作部1を制御周期分に相当する角度(例えば、0.36度)だけ正転方向C1(図4)に回転すると、カウント値をインクリメントする。これにより、操作部1を正転させた場合、終点P2のほうへ向かう第1方向M1にロボット6(ハンド6A)が移動する。一方、ハンドル操作カウンタ46は、操作部1を制御周期分に相当する角度(例えば、0.36度)だけ逆転方向C2(図4)に回転すると、カウント値をデクリメントする。これにより、操作部1を逆転させた場合、始点P1のほうへ向かう第2方向M2にロボット6(ハンド6A)が移動する。
【0029】
<6.ハンドル操作モード>
次に、ハンドル操作モード時における動作について、図5および図6に示すフローチャートに沿って説明する。
【0030】
ハンドル操作モードが開始されると、まずステップS1(図5)で、ハンドル操作カウンタ46は、カウント値を初期化する。そして、ステップS2で、制御部41は、ハンドル操作カウンタ46のカウント値に対応する経由点が経由点記憶領域44に保存済であるかを判定する。保存済でない場合は(ステップS2のN)、ステップS3に進み、制御部41は、ロボット命令解析部43がロボットプログラム42Aにおける次の移動命令を読み出せるかを判定する。読み出せる場合は(ステップS3のY)、ステップS4に進み、ロボット命令解析部43が移動命令を読み出す。そして、ステップS5に進み、ロボット命令解析部43により経由点が算出されて経由点記憶領域44に保存される。
【0031】
ステップS5の後、ステップS6に進み、制御部41は、ハンドル操作カウンタ46のカウント値が始点P1と終点P2の範囲内であるかを判定する。なお、ステップS2でハンドル操作カウンタ46のカウント値に対応する経由点が経由点記憶領域44に保存済である場合(ステップS2のY)、あるいはステップS3で次の移動命令が読み出せない場合(ステップS3のN)もステップS6に進む。
【0032】
ハンドル操作カウンタ46のカウント値が始点P1と終点P2の範囲内である場合(ステップS6のY)、ステップS7に進み、制御部41は、ハンドル操作カウンタ46のカウント値に対応する経由点を経由点記憶領域44から取得する。
【0033】
そして、ステップS8に進み、制御部41は、関節モータコントローラ61に指令して、ロボット6(ハンド6A)を上記で取得された経由点へ移動させる。なお、経由点の位置座標に基づいてキネマティクスによりロボット6の各関節モータの角度を算出できる。
【0034】
次に、ステップS9に進み、制御部41は、ロボット6の先端部(ハンド6A)とワークWとの距離が一定値以下であるか、または経由点におけるロボット6の動作速度が閾値以上であるかを判定する。もし、ステップS9で、上記いずれかの条件に該当すれば(ステップS9のY)、ステップS10に進み、制御部41は、ハンドルコントローラ3に操作部1の操作負荷を増大させる指令CM1(図1)を行い、ハンドルコントローラ3により駆動部2の制御が行われる。これにより、操作部1の負荷が増大し、操作部1の回転操作をしにくくするため、注意を要する状況でロボット6を安全に制御できる。
【0035】
すなわち、連動制御部5は、ロボットの動作状況に基づいて操作負荷の変化に関する制御を駆動部2に対して行う。これにより、ロボットの動作状況に応じて、適切な操作負荷を操作部1に付与できる。
【0036】
また、連動制御部5は、ロボット6とワークWとの位置関係に基づいて上記制御を行う。これにより、ロボット6とワークWとが近い場合に、操作負荷を増大させてロボット6を安全に制御できる。
【0037】
また、連動制御部5は、ロボット6の動作速度に基づいて上記制御を行う。これにより、ロボット6の動作速度が速い場合に、操作負荷を増大させてロボット6を安全に制御できる。
【0038】
一方、ステップS9で、上記条件をいずれも満たさない場合(ステップS9のN)、ステップS11に進み、制御部41は、ハンドルコントローラ3に操作部1の操作負荷を減少させる指令CM1を行い、ハンドルコントローラ3により駆動部2の制御が行われる。
【0039】
その後、ステップS12(図6)に進み、制御部41は、例えばトルクセンサ62から過負荷信号LD1(図1)を受信しているかを判定する。なお、ステッS6で、ハンドル操作カウンタ46のカウント値が始点と終点の範囲内にない場合も(ステップS6のN)、ステップS12に進む。
【0040】
過負荷信号は、ロボット6が過負荷を付与されたことを示す信号である。例えば、ハンド6AがワークWに不適切に接触した場合などに過負荷が生じる。もし、過負荷信号LDがある場合は(ステップS12のY)、ステップS13に進み、制御部41は、ロボット6を緊急停止させる。そして、ステップS14に進み、制御部41は、ハンドルコントローラ3にブレーキ指令CM2を行う。これにより、ハンドルコントローラ3が駆動部2を制御して、操作部1が回転できなくなる。
【0041】
すなわち、連動制御部5は、ロボット6が過負荷を付与された旨を示す信号LD1をロボット6から受けた場合に、操作部1の操作を妨げるための制御を駆動部2に対して行う。これにより、ロボット6に過負荷が付与されたことを操作者に伝えることができる。
【0042】
一方、過負荷信号がない場合は(ステップS12のN)、ステップS15に進み、ハンドル操作カウンタ46は、ハンドルコントローラ3から回転角度信号を受けることで、操作部1の回転角度を取得する。そして、ステップS16に進み、ハンドル操作カウンタ46は、取得した回転角度に応じてカウント値を更新する。そして、ステップS17に進み、制御部41は、ハンドル操作カウンタ46のカウント値が前回から変化しているかを判定する。変化していない場合は(ステップS17のN)、ステップS12に戻る。
【0043】
一方、カウント値が変化している場合は(ステップS17のY)、ステップS18に進み、制御部41は、ハンドル操作カウンタ46のカウント値の変化速度が閾値以上であるかを判定する。閾値以上であれば(ステップS18のY)、ステップS19に進み、制御部41は、ハンドルコントローラ3に操作部1の操作負荷を増大させる指令CM1を行い、ハンドルコントローラ3により駆動部2の制御が行われる。一方、カウント値の変化速度が閾値以上でない場合は(ステップS18のN)、ステップS20に進み、制御部41は、ハンドルコントローラ3に操作部1の操作負荷を減少させる指令CM1を行い、ハンドルコントローラ3により駆動部2の制御が行われる。
【0044】
すなわち、連動制御部5は、操作部1における操作速度に基づいて操作負荷の変化に関する制御を駆動部2に対して行う。これにより、操作速度が速い場合に操作負荷を増大させて、ロボット6を安全に制御できる。
【0045】
そして、ステップS21において、ハンドル操作モードが継続中であれば(ステップS21のY)、ステップS2に戻り、そうでなければ(ステップS21のN)、処理は完了する。
【0046】
このようにハンドル操作モードによれば、操作部1を操作することで、ロボット6を本来の速度(通常時の速度)よりも低速で動作させることができる。操作部1を逆転操作すれば、ロボット6を正転時と逆方向に移動させることもできる。
【0047】
特に、操作部1は、回転可能なハンドルを有し、連動制御部5は、ハンドルの回転角度に応じてカウント値を変化させるハンドル操作カウンタ46と、上記カウント値に応じた位置にロボット6を移動制御する制御部41と、を有する。これにより、ハンドルによってロボット6の動作速度の調整がしやすくなる。
【0048】
また、連動制御部5は、駆動部2を用いた操作部1の操作負荷に関する制御を行う。これにより、ロボット6を安全に制御できる。
【0049】
なお、制御部41は、ロボット6がワークWを把持した場合などに、ハンドルコントローラ3に指令を行い、ハンドルコントローラ3が操作部1を振動させるために駆動部2を制御してもよい。すなわち、連動制御部5は、ロボット6における特定の動作状況に基づいて操作部1に振動を与えるための制御を駆動部2に対して行う。これにより、ロボット6の特定の動作状況を操作者に通知できる。
【0050】
<7.ハンドル自動回転モード>
本実施形態に係るロボット制御装置10は、ハンドル自動運転モードも有する。ハンドル自動運転モードは、ロボット6を動作させることに連動させて操作部1を動作させるモードである。
【0051】
このようなハンドル自動運転モードについて、図7図8図9に示すフローチャートに沿って説明する。ハンドル自動運転モードが開始されると、まずステップS31(図7)で、制御部41は、インデックスを初期化する。そして、ステップS32に進み、制御部41は、ロボット速度制限を無効とする。
【0052】
そして、ステップS33に進み、制御部41は、インデックスに対応した経由点が経由点記憶領域44に保存済であるかを判定する。なお、インデックスの初期値は、始点P1に相当し、インデックスをインクリメントするたびに1制御周期分だけ進んだ経由点となる。
【0053】
ステップS33で保存済でない場合は(ステップS33のN)、ステップS34に進み、制御部41は、ロボット命令解析部43がロボットプログラム42Aにおける次の移動命令を読み出せるかを判定する。読み出せる場合は(ステップS34のY)、ステップS35に進み、ロボット命令解析部43が移動命令を読み出す。そして、ステップS36に進み、ロボット命令解析部43により経由点が算出されて経由点記憶領域44に保存される。
【0054】
ステップS36の後、ステップS37に進み、制御部41は、インデックスが始点P1と終点P2の範囲内であるかを判定する。なお、ステップS33でインデックスに対応する経由点が経由点記憶領域44に保存済である場合(ステップS33のY)、あるいはステップS34で次の移動命令が読み出せない場合(ステップS34のN)もステップS37に進む。
【0055】
ハンドル操作カウンタ46のカウント値が始点P1と終点P2の範囲内である場合(ステップS37のY)、ステップS38に進み、制御部41は、インデックスに対応する経由点を経由点記憶領域44から取得する。
【0056】
そして、ステップS39(図8)に進み、制御部41は、ロボット速度制限が有効であるかを判定する。もし、有効であれば(ステップS39のY)、ステップS40に進み、制御部41は、現在のインデックスをデクリメントした値に対応した経由点Cと、現在のインデックスに対応した経由点Aとの距離Xを算出し、制限された速度で進んだときに1周期に進める距離Xdを算出する。例えば、Xd=X×(1/3)とする。
【0057】
そして、ステップS41で、制御部41は、現在位置から経由点Aに向かってXdだけ進んだ位置を暫定的な経由点Bとし、経由点Bまでロボット6を移動制御する。
【0058】
そして、ステップS42で、制御部41は、経由点Aと経由点Bが等しければ、インデックスをインクリメントする。
【0059】
そして、ステップS43で、制御部41は、インデックスのインクリメントに相当する角度θに対して、θ×αの角度だけ操作部1を回転させるようにハンドルコントローラ3に指令する。なお、Xd=X×αである。これにより、ハンドルである操作部1がθ×αの角度だけ回転する。
【0060】
一方、ロボット速度制限が無効であれば(ステップS39のN)、ステップS44に進み、制御部41は、取得した経由点Aにロボット6を移動制御する。そして、ステップS45で、制御部41は、インデックスをインクリメントする。そして、ステップS46で、制御部41は、上記角度θだけ操作部1を回転させるようにハンドルコントローラ3に指令する。これにより、操作部1は、角度θだけ回転する。
【0061】
その後、ステップS47(図9)に進む。なお、ステップS37で、インデックスが始点と終点の範囲内にない場合も(ステップS37のN)、ステップS47に進む。ここで、ハンドルコントローラ3は、駆動部2に流れる電流を監視することで、操作部1に与えられるハンドル負荷を検出する。制御部41は、検出されたハンドル負荷が閾値TH1より大きいかを判定する。ハンドル負荷が閾値TH1より大きい場合は(ステップS47のY)、ステップS48に進み、制御部41は、ロボット6を緊急停止させる。そして、ステップS49に進み、制御部41は、ハンドルコントローラ3にブレーキ指令CM2を行う。これにより、ハンドルコントローラ3が駆動部2を制御して、操作部1が回転できなくなる。
【0062】
一方、ハンドル負荷が閾値TH1以下である場合は(ステップS47のN)、ステップS50に進み、制御部41は、ハンドル負荷が閾値TH2より大きいかを判定する。なお、TH1>TH2である。もし、ハンドル負荷が閾値TH2より大きい場合は(ステップS50のY)、ステップS51に進み、制御部41は、ロボット速度制限を有効とする。一方、ハンドル負荷が閾値TH2以下の場合は(ステップS50のN)、ステップS52に進み、制御部41は、ロボット速度制限を無効とする。
【0063】
そして、ステップS53で、ハンドル自動回転モードが継続中であれば(ステップS53のY)、ステップS33に戻り、そうでない場合は(ステップS53のN)、処理が完了する。
【0064】
このように、ハンドル自動回転モードでは、ロボット6の自動実行とともに操作部1が自動回転する。そして、操作部1を操作者が握ってハンドル負荷を与えると、ロボット6の動作速度が制限される。操作部1に操作者が大きいハンドル負荷を与えると、ロボット6が緊急停止される。
【0065】
すなわち、連動制御部5は、ロボット6の動作に連動させて駆動部2を介して操作部1を連動させ、駆動部2によって検出される操作部1に付与される負荷に基づいてロボット6の動作速度を制御する。これにより、ロボット6の動作に連動して動作する操作部1に操作者が負荷を与えると、ロボット6の動作速度を減速させ、ロボット6を安全に制御できる。
【0066】
<8.その他>
以上、本開示の実施形態を説明した。なお、本開示の範囲は上述の実施形態に限定されない。本開示は、発明の主旨を逸脱しない範囲で上述の実施形態に種々の変更を加えて実施することができる。また、上述の実施形態で説明した事項は、矛盾を生じない範囲で適宜任意に組み合わせることができる。
【0067】
<9.付記>
以上のように、本開示の一態様に係るロボット制御装置は、
操作部と、
前記操作部を駆動する駆動部と、
前記操作部とロボットとを連動させる連動制御部と、
を備え、
前記連動制御部は、前記駆動部を用いた前記操作部の操作負荷に関する制御を行う構成としている(第1の構成)。
【0068】
また、上記第1の構成において、前記連動制御部は、前記操作部の操作に連動させて前記ロボットを制御し、前記ロボットの動作状況に基づいて前記操作負荷の変化に関する前記制御を前記駆動部に対して行う構成としてもよい(第2の構成)。
【0069】
また、上記第2の構成において、前記連動制御部は、前記ロボットとワークとの位置関係に基づいて前記制御を行う構成としてもよい(第3の構成)。
【0070】
また、上記第2の構成において、前記連動制御部は、前記ロボットの動作速度に基づいて前記制御を行う構成としてもよい(第4の構成)。
【0071】
また、上記第2から第4のいずれかの構成において、前記連動制御部は、前記操作部における操作速度に基づいて前記操作負荷の変化に関する前記制御を前記駆動部に対して行う構成としてもよい(第5の構成)。
【0072】
また、上記第2から第5のいずれかの構成において、前記連動制御部は、前記ロボットが過負荷を付与された旨を示す信号を前記ロボットから受けた場合に、前記操作部の操作を妨げるための制御を前記駆動部に対して行う構成としてもよい(第6の構成)。
【0073】
また、上記第2から第6のいずれかの構成において、前記連動制御部は、前記ロボットにおける特定の動作状況に基づいて前記操作部に振動を与えるための制御を前記駆動部に対して行う構成としてもよい(第7の構成)。
【0074】
また、上記第2から第7のいずれかの構成において、前記操作部は、回転可能なハンドルを有し、
前記連動制御部は、
前記ハンドルの回転角度に応じてカウント値を変化させるカウンタと、
前記カウント値に応じた位置に前記ロボットを移動制御する制御部と、
を有する構成としてもよい(第8の構成)。
【0075】
また、上記第1の構成において、前記連動制御部は、前記ロボットの動作に連動させて前記駆動部を介して前記操作部を動作させ、前記駆動部によって検出される前記操作部に付与される負荷に基づいて前記ロボットの動作速度を制御する構成としてもよい(第9の構成)。
【産業上の利用可能性】
【0076】
本開示の技術は、例えば、産業用のロボットシステムに利用することができる。
【符号の説明】
【0077】
1 操作部
2 駆動部
3 ハンドルコントローラ
4 ロボットコントローラ
5 連動制御部
6 ロボット
6A ハンド
10 ロボット制御装置
41 制御部
42 ロボットプログラム記憶領域
42A ロボットプログラム
43 ロボット命令解析部
44 経由点記憶領域
44A 経由点データ
45 内部クロックカウンタ
46 ハンドル操作カウンタ
61 関節モータコントローラ
62 トルクセンサ
C1 正転方向
C2 逆転方向
J 治具
M1 第1方向
M2 第2方向
P1 始点
P2 終点
Ps 初期位置
Pt 目標位置
R 軌跡
T 制御周期
W ワーク
図1
図2
図3
図4
図5
図6
図7
図8
図9