(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2025-01-06
(45)【発行日】2025-01-15
(54)【発明の名称】ロボット監視システム
(51)【国際特許分類】
B25J 13/08 20060101AFI20250107BHJP
【FI】
B25J13/08 A
(21)【出願番号】P 2021127140
(22)【出願日】2021-08-03
【審査請求日】2023-10-26
(73)【特許権者】
【識別番号】000003207
【氏名又は名称】トヨタ自動車株式会社
(74)【代理人】
【識別番号】110000028
【氏名又は名称】弁理士法人明成国際特許事務所
(72)【発明者】
【氏名】佐藤 駿
【審査官】臼井 卓巳
(56)【参考文献】
【文献】特開平01-011783(JP,A)
【文献】特開2011-125976(JP,A)
【文献】特開2018-013999(JP,A)
【文献】特開2016-101643(JP,A)
【文献】特開2017-038438(JP,A)
【文献】特開2015-199192(JP,A)
【文献】特開昭63-288696(JP,A)
【文献】特開平02-262991(JP,A)
【文献】米国特許出願公開第2015/0273692(US,A1)
【文献】米国特許出願公開第2016/0156288(US,A1)
(58)【調査した分野】(Int.Cl.,DB名)
B25J 9/16-19/06
G06T 7/60
H02P 3/04-29/00
(57)【特許請求の範囲】
【請求項1】
リンクを回転可能に連結する関節と、前記リンクの回転を制御するロボット制御部と、前記リンクの回転を制動するための制動機構とを有するロボットのロボット監視システムであって、
前記制動機構が作動している状態の前記ロボットを撮像する
複数の撮像部と、
前記
複数の撮像部
のそれぞれにより撮像された画像データを用いて、前記関節の角度を推定する推定部と、
前記推定部により推定された推定角度に基づいて、予め定められた角度範囲を超えて前記リンクが回転したか否かを判定する判定部と、
前記制動機構が作動して前記リンクの回転の制動が開始された開始時点の前記画像データを用いて前記推定部により推定された前記推定角度を基準角度とし、前記基準角度を中心とした予め定められた範囲を前記角度範囲に設定する設定部と、
前記制動機構が作動された後に前記判定部が前記角度範囲内でないと判定した場合、前記ロボット制御部に前記リンクの位置を目標制動位置に変位させるための変位信号を出力する第2出力部と、を備える、ロボット監視システム。
【請求項2】
請求項1に記載のロボット監視システムであって、
前記目標制動位置は、前記制動機構の作動が開始された時点の初期制動位置である、ロボット監視システム。
【請求項3】
請求項1に記載のロボット監視システムであって、
前記目標制動位置は、前記制動機構の作動が開始された時点の初期制動位置とは異なる、予め設定された標準位置である、ロボット監視システム。
【請求項4】
請求項1から3の何れか一項に記載のロボット監視システムであって、さらに、
前記判定部が前記角度範囲内でないと判定した場合、報知装置に前記リンクが変位したことを報知させるための報知信号を出力する第1出力部を備える、ロボット監視システム。
【請求項5】
請求項1から4の何れか一項に記載のロボット監視システムであって、さらに、
前記関節と前記リンクとにより構成された骨格モデルを記憶する記憶部を備え、
前記推定部は、前記画像データから前記関節の位置を推定し、推定した前記関節の位置と、前記骨格モデルとを用いて前記角度を推定する、ロボット監視システム。
【請求項6】
請求項1から5の何れか一項に記載のロボット監視システムであって、
前記ロボットは、前記関節を複数備え、
前記判定部は、前記複数の関節の各々について前記推定角度が前記角度範囲内であるか否かを判定する、ロボット監視システム。
【発明の詳細な説明】
【技術分野】
【0001】
本開示は、ロボット監視システムに関する。
【背景技術】
【0002】
従来、産業用ロボットにおいて、関節により連結されたリンクと、リンクを回転させるための駆動装置と、リンクの回転を制動するための制動機構とを備える構成が知られている(例えば、特許文献1)。ロボットの電源が投入されていない期間では、制動機構によりリンクの回転は制動され、リンクの位置は目標制動位置に保持される。制動機構には、種々の態様があり、例えば、特許文献1に記載のブレーキ装置では、駆動装置に含まれる歯車と噛合可能なブレーキ部材を歯車に噛合させることにより、リンクの回転を制動している。
【先行技術文献】
【特許文献】
【0003】
【発明の概要】
【発明が解決しようとする課題】
【0004】
制動機構は、種々の態様に拘わらず、制動機構の構成部品の劣化により、制動性能が低下する場合がある。この場合、制動機構を駆動してリンクが制動された場合において、リンクの位置が目標制動位置から変位するおそれがある。リンクの位置が目標制動位置から変位すると次のような問題がある。例えば、ロボットの電源が投入されていない期間などに、作業者によりロボットのメンテナンスが行われる場合がある。この場合、作業者は、リンクが目標制動位置に維持されていることを前提として、メンテナンス作業を行うため、リンクの位置が目標制動位置から変位すると、作業性が低下するおそれがある。また、作業者がいない間に、リンクの変位が生じると、対応が遅れることで変位が進み、リンクがロボットの設置面と干渉するおそれがある。そこで、制動機構が作動している期間に、リンクが目標制動位置から変位しているか否かを判定するシステムが望まれている。
【課題を解決するための手段】
【0005】
本開示は、以下の形態として実現することが可能である。
本開示の一形態によれば、ロボット監視システムが提供される。このロボット監視システムは、リンクを回転可能に連結する関節と、前記リンクの回転を制御するロボット制御部と、前記リンクの回転を制動するための制動機構とを有するロボットのロボット監視システムであって、前記制動機構が作動している状態の前記ロボットを撮像する複数の撮像部と、前記複数の撮像部のそれぞれにより撮像された画像データを用いて、前記関節の角度を推定する推定部と、前記推定部により推定された推定角度に基づいて、予め定められた角度範囲を超えて前記リンクが回転したか否かを判定する判定部と、前記制動機構が作動して前記リンクの回転の制動が開始された開始時点の前記画像データを用いて前記推定部により推定された前記推定角度を基準角度とし、前記基準角度を中心とした予め定められた範囲を前記角度範囲に設定する設定部と、前記制動機構が作動された後に、前記判定部が前記角度範囲内でないと判定した場合、前記ロボット制御部に前記リンクの位置を目標制動位置に変位させるための変位信号を出力する第2出力部と、を備える。
【0006】
(1)本開示の一形態によれば、ロボット監視システムが提供される。このロボット監視システムは、リンクを回転可能に連結する関節と、前記リンクの回転を制御するロボット制御部と、前記リンクの回転を制動するための制動機構とを有するロボットのロボット監視システムであって、前記制動機構が作動している状態の前記ロボットを撮像する撮像部と、前記撮像部により撮像された画像データを用いて、前記関節の角度を推定する推定部と、前記推定部により推定された推定角度に基づいて、予め定められた角度範囲を超えて前記リンクが回転したか否かを判定する判定部と、を備える。この形態によれば、制動機構が作動している期間に、制動機構が作動している状態のロボットを撮像部によって撮像することで、ロボットのリンクが目標制動位置から変位しているか否かを判定することができる。
(2)上記形態のロボット監視システムにおいて、さらに、前記判定部が前記角度範囲内でないと判定した場合、報知装置に前記リンクが変位したことを報知させるための報知信号を出力する第1出力部を備えてもよい。この形態によれば、リンクの変位が生じた場合に、報知装置に変位を報知させることができる。これにより、作業者は、リンクの変位を知ることができる。
(3)上記形態のロボット監視システムにおいて、さらに、前記判定部が前記角度範囲内でないと判定した場合、前記ロボット制御部に前記リンクの位置を目標制動位置に変位させるための変位信号を出力する第2出力部を備えてもよい。この形態によれば、リンクの変位が生じた場合に、リンクを目標制動位置に変位させることができる。これにより、作業者がロボットの近くにいない場合であっても、人の手を介さずに、ロボットのリンク位置を目標制動位置に復帰させることができる。
(4)上記形態のロボット監視システムにおいて、前記関節と前記リンクとにより構成された骨格モデルを記憶する記憶部を備え、前記推定部は、前記画像データから推定し、推定した前記関節の位置と、前記骨格モデルとを用いて前記角度を推定してもよい。この形態によれば、骨格モデルを用いて、関節の角度を精度良く推定することができる。
(5)上記形態のロボット監視システムにおいて、さらに、前記制動機構が作動して前記リンクの回転の制動が開始された開始時点の前記画像データを用いて、前記推定部により推定された前記推定角度を基準角度とし、前記基準角度を中心とした予め定められた範囲を前記角度範囲に設定する設定部を備えてもよい。この形態によれば、開始時点におけるリンクの位置に対する変位を監視することができる。
(6)上記形態のロボット監視システムにおいて、前記ロボットは、前記関節を複数備え、前記判定部は、前記複数の関節の各々について前記推定角度が前記角度範囲内であるか否かを判定してもよい。この形態によれば、ロボットが複数の関節を備える場合に、少なくとも一つの関節における変位を判定することができる。
本開示は、ロボット監視システム以外の種々の形態で実現することも可能である。例えば、ロボット監視方法、ロボット監視システムの制御方法、その制御方法を実現するコンピュータプログラム、そのコンピュータプログラムを記録した一時的でない記録媒体等の等の形態で実現することができる。
【図面の簡単な説明】
【0007】
【
図5】判定に用いられる角度範囲を説明する図である。
【
図6】第2実施形態に係る監視システムの構成を示す模式図である。
【
図7】第2実施形態に係る監視処理のフローチャートである。
【発明を実施するための形態】
【0008】
A.第1実施形態:
A1.監視システムの構成:
図1は、ロボット200を監視するロボット監視システム100の構成を示す模式図である。
図2は、アーム210の構成を示すブロック図である。ロボット200は、6軸の垂直多関節型の産業用ロボットである。ロボット200は、ワークに対して、溶接や塗装などの作業を行う。
【0009】
ロボット200は、アーム210と、ロボット制御部220とを備える。アーム210は、基台250と、第1リンクL1~第5リンクL5と、エンドエフェクタ256とを有する。基台250は、ロボット200の設置面に固定されている。第1リンクL1と、第2リンクL2と、第3リンクL3と、第4リンクL4と、第5リンクL5と、エンドエフェクタ256とは、この順に直列に接続されている。
【0010】
基台250と第1リンクL1とは第1関節J1にて回転可能に連結されている。第1リンクL1は、第1関節J1の第1軸CA1を支点として、基台250と第1リンクL1とのなす角度が変化するように回転する。第1リンクL1と第2リンクL2とは第2関節J2にて回転可能に連結されている。第2リンクL2は、第2関節J2の第2軸CA2を支点として、第1リンクL1と第2リンクL2とのなす角度が変化するように回転する。なお、第1リンクL1と第2リンクL2とのなす角度を第2関節J2の角度とも呼ぶ。第2関節J2の角度は、第1リンクL1の両端の関節Jである第1関節J1と第2関節J2とを結ぶ直線と、第2リンクL2の両端の関節Jである第2関節J2と第3関節J3とを結ぶ直線とのなす角である。以下に説明する第3関節J3~第5関節J5の角度についても、同様に定義される。第2リンクL2と第3リンクL3とは第3関節J3にて回転可能に連結されている。第3リンクL3は、第3関節J3の第3軸CA3を支点として、第2リンクL2と第3リンクL3とのなす角度、すなわち第3関節J3の角度が変化するように回転する。第3リンクL3と第4リンクL4とは第4関節J4にて回転可能に連結されている。第4関節J4は、第4リンクL4の延びる方向と平行である第4軸CA4を有する。第4リンクL4は、第4軸CA4を中心軸として回転する。第4リンクL4と第5リンクL5とは第5関節J5にて回転可能に連結されている。第5リンクL5は、第5関節J5の第5軸CA5を支点として、第4リンクL4と第5リンクL5とのなす角度、すなわち第5関節J5の角度が変化するように回転する。第5リンクL5とエンドエフェクタ256とは第6関節J6にて回転可能に連結されている。第6関節J6は、第5リンクL5の延びる方向と平行である第6軸CA6を有する。エンドエフェクタ256は、第6関節J6の第6軸CA6を中心軸として回転する。エンドエフェクタ256は、例えば、溶接ガンや塗装用ガンである。第1リンクL1~第5リンクL5を総称してリンクLとも呼ぶ。第1関節J1~第5関節J5を総称して、関節Jとも呼ぶ。
【0011】
ロボット制御部220は、CPU(Central Processing Unit)およびメモリを備えるコンピュータとして構成されており、アーム210と通信可能に接続されている。ロボット制御部220は、アーム210を制御する。具体的には、ロボット制御部220は、アーム210の電源のオン・オフの制御と、リンクLの回転の制御と、後述する制動機構240の制御とを行う。
【0012】
図2に示すように、各関節Jは、モータ230と、制動機構240とを有する。各リンクLは、接続されているモータ230の駆動力により回転される。モータ230は、ステータ231とロータ232とを有する電磁モータである。
【0013】
制動機構240は、無励磁作動形の制動機構である。制動機構240は、摩擦板241と、バネ242と、電磁石243とを有する。摩擦板241は、ロータ232の軸方向において、ロータ232を挟んで、モータ230に固定された図示しない固定板と対向して設けられている。バネ242は、ロータ232の軸方向において、摩擦板241を固定板に向かって付勢するように取り付けられている。ロボット制御部220により、制動を命じられていない場合には、電磁石243が通電状態にされることにより、摩擦板241は、バネ242の付勢力に抗して、電磁石243に電磁吸引される。これにより、ロータ232は、自由に回転することができる。対して、ロボット制御部220により、制動を命じられた場合には、電磁石243が非通電状態にされることにより、電磁石243による摩擦板241の電磁吸引が解除される。これにより、バネ242の付勢力により、摩擦板241は、ロータ232に押し付けられる。このため、ロータ232の回転が制限されるともに、ロータ232が制動位置に保持される。
【0014】
図1に示すように、ロボット監視システム100は、撮像部としてのカメラ10と、情報処理装置20とを備える。カメラ10は、イメージセンサを有し、アーム210の全体を撮像可能に設置されている。カメラ10は、制動機構240が作動している状態のロボット200を撮像する。ここで、制動機構240が作動している状態とは、制動機構240がロータ232の回転を制動している状態を指す。情報処理装置20は、CPU30と、記憶部40とを備える。記憶部40は、RAM(Random Access Memory)およびROM(Read Only Memory)などのメモリで実現される。CPU30は、記憶部40に記憶されているプログラムを実行することにより、設定部31と、推定部32と、判定部33と、第1出力部34として機能する。記憶部40には、骨格モデル41と、監視処理プログラム42とが記憶されている。
【0015】
推定部32は、カメラ10により撮像されたロボット200の画像データを用いて、関節Jの角度を推定する。判定部33は、推定部32により推定された角度である推定角度に基づいて、予め定められた角度範囲を超えてリンクLが回転したか否かを判定する。第1出力部34は、判定部33が角度範囲内でないと判定した場合、報知信号Sigaを出力する。設定部31は、判定部33が判定に用いる角度範囲を設定する。具体的には、設定部31は、制動機構240が作動してリンクLの回転の制動が開始された開始時点の画像データを用いて推定部32により推定された推定角度を基準角度θInとする。そして、設定部31は、基準角度θInを中心とした予め定められた範囲を角度範囲に設定する。
【0016】
情報処理装置20には、報知装置としてのモニター300が通信可能に接続されている。モニター300は、表示画面301を有する。そして、情報処理装置20から送信される情報を表示画面301に表示する。
【0017】
上記のように、本実施形態における制動機構240は、電磁石243が非通電の時、制動機構240は作動する。ロボット200の作業中においては、制動機構240が作動している期間であっても、アーム210の電源はオン状態である。対して、生産ラインが中断している期間や、生産終了後の次の生産までの期間や、非常時の非常停止時の期間などでは、ロボット200での作業は行われないため、アーム210の電源は、オフされる。具体的な手順は、制動機構240を作動させるため、電磁石243が非通電にされた後、アーム210の電源はオフされる。アーム210の電源はオフされている状態であっても、制動機構240は作動しているため、アーム210は、初期制動位置である目標制動位置に保持される。しかし、制動機構240は、例えばバネ242の劣化により、制動機能は低下し、関節Jが目標制動位置から変位する、いわゆる滑りが発生する場合がある。この場合、アーム210は、目標制動位置を保持できず、典型的には、自重により設置面に向かって垂れ下がってしまい、設置面と干渉する場合がある。また、アーム210の電源がオフされている場合に、作業者によりロボット200のメンテナンスが行われる場合がある。この場合、作業者は、リンクLが目標制動位置に保持されていることを前提として、メンテナンスなどの作業を行うため、リンクLの位置が目標制動位置から変位すると、作業性が低下するおそれがある。そこで、発明者らは、アーム210の電源オフの期間において、リンクLの変位を監視するロボット監視システム100を考案した。これにより、アーム210の電源オフの期間にも、ロボット200のアーム210の変位を監視することができる。なお、アーム210の電源オフの期間とは、アーム210の有する関節Jのすべてについて、制動機構240が作動されている状態を意味している。他の実施形態にて後述するように、アーム210の電源オンの期間に、後述する監視処理が実行されてもよい。この場合、制動機構240が作動されている一部の関節Jについて、目標制動位置から変位が生じているか否かを判定することができる。
【0018】
ロボット監視システム100は、骨格モデル41を用いて、関節Jの変位を推定する。
図3は、骨格モデル41を説明する図である。骨格モデル41は、トラッキングポイントTPと、2つのトラッキングポイントTP間を結ぶ直線であるモデルリンクMLとにより構成されている。本実施形態では、骨格モデル41は、5つのトラッキングポイントTPと、4つのモデルリンクMLにより構成されている。具体的には、連結している2つのリンクLのなす角度が変化する関節Jである、第1関節J1、第2関節J2、第3関節J3、第5関節J5と、末端の関節Jである第6関節J6とが、それぞれ、第1トラッキングポイントTP1~第5トラッキングポイントTP5のそれぞれに割り当てられている。ここで、
図1に示す第4関節J4については、連結している第3リンクL3と第4リンクL4とのなす角度は変化せず、互いの位置関係は変化しないため、トラッキングポイントTPには設定されていない。骨格モデル41は、トラッキングポイントTPの3次元の位置情報と、トラッキングポイントTPに連結される2つのモデルリンクMLのなす角度であるトラッキングポイントTPのモデル角度θMnなどで表されるデータ群である。なお、モデル角度θMnの「n」は、トラッキングポイントTPの番号を示す。骨格モデル41は、モーションキャプチャー技術を用いて予め作成され記憶部40に記憶されている。骨格モデル41を用いることにより、2次元の関節Jの位置情報を用いて、3次元における関節Jの位置を推定することができる。
【0019】
A2.監視処理
図4は、監視処理のフローチャートである。
図5は、監視処理に用いられる角度範囲を説明する図である。監視処理は、CPU30が監視処理プログラム42を実行することにより行われる。作業者は、アーム210の電源をオフした後、例えば、ロボット監視システム100が備える監視処理の開始を受け付けるための開始スイッチをオンする。CPU30は、開始スイッチを介して、開始指示を受け付けると、監視処理を開始する。本実施形態では、6つの関節Jのうち、第2関節J2と、第3関節J3と、第5関節J5とについて監視が行われる場合を例示して説明する。
【0020】
まず、CPU30は、カメラ10にロボット200のアーム210を撮像させる(ステップS10)。撮像された画像データは、情報処理装置20に送信される。送信された画像データを用いて、推定部32により、各関節Jの画像における位置が推定される(ステップS12)。具体的には、推定部32により、画像データが二値化され、画像処理により、アーム210の輪郭を示す画像のエッジが検出される。その後、検出されたエッジのデータを入力として、AI(artificial intelligence)を用いて、画像における関節Jの位置が推定される。
【0021】
推定部32により、関節Jの各々の推定角度θnが算出される(ステップS14)。ここで、推定角度θnの「n」とは、関節Jの番号を示し、例えば、推定角度θ2とは、第2関節J2の推定角度を示す。後述する、基準角度θInについても同様である。上記のように、関節Jの角度とは、関節Jに連結されている2つのリンクLのそれぞれについて、リンクLの両端の2つの関節Jを結ぶ直線を描き、描かれた2本の直線のなす角度である。ただし、本実施形態では、
図1に示すように、第3関節J3については、骨格モデル41に適合させるため、第2リンクL2と第3リンクL3とのなす角度に代えて、第2関節J2と第3関節J3とを結ぶ直線と、第3関節J3と第5関節J5とを結ぶ直線とのなす角度が推定角度θ3と定義されている。第5関節J5についても同様に、第3関節J3と第5関節J5とを結ぶ直線と、第5関節J5と第6関節J6とを結ぶ直線とのなす角度が推定角度θ5と定義されている。
図4のステップS14において、具体的には、画像における関節Jの推定位置と、骨格モデル41のトラッキングポイントTPの位置情報とを用いて、3次元の関節Jの位置が推定される。その後、推定部32により、AIを用いて、関節Jを結ぶリンクLの3次元における記述情報が生成され、推定角度θnが算出される。
【0022】
設定部31により、推定部32により算出された推定角度θnを基準角度θInとする角度範囲が設定される(ステップS16)。ここで、角度範囲とは、
図5に示すように、基準角度θInから許容角度θaを減じた角度を最小角度とし、基準角度θInに許容角度θaを加えた角度を最大角度とする範囲である。
図5に示す第2関節J2、第3関節J3、および第5関節J5は、開始時点の画像データにより推定された関節Jの位置を示している。本実施形態では、監視処理が開始された開始時点の制動位置を基準として、角度範囲が決定される。
【0023】
図4に示すように、CPU30により、停止指示を受け付けたか否かが判断される(ステップS18)。作業者は、監視処理を終了する場合、ロボット監視システム100が備える監視処理の終了を受け付けるための図示しない終了スイッチをオンする。CPU30は、終了スイッチを介して、終了指示を受け付けると、停止指示を受け付けたと判断する。CPU30は、停止指示を受け付けたと判断すると(ステップS18:YES)、本処理ルーチンを終了する。CPU30は、停止指示を受け付けていないと判断すると(ステップS18:NO)、カメラ10にロボット200のアーム210を撮像させる(ステップS20)。ステップS12と同様に、各関節Jの画像における位置が推定される(ステップS22)。ステップS14と同様に、推定部32により、関節Jの各々の推定角度θnが算出される(ステップS24)。
【0024】
判定部33は、第2関節J2の推定角度θ2に基づき、角度範囲を超えて第2リンクL2が回転しているか否かを判定する(ステップS26)。判定部33は、推定角度θ2が角度範囲内である場合には、角度範囲を超えて第2リンクL2が回転していないと判定する。一方、判定部33は、推定角度θ2が角度範囲内でない場合には、角度範囲を超えて第2リンクL2が回転していると判定する。具体的には、判定部33は、推定角度θ2が、基準角度θI2から許容角度θaを減じた角度より大きく、基準角度θI2に許容角度θaを加えた角度より小さいか否かを判断する。判定部33は、角度範囲を超えて第2リンクL2が回転している、すなわち、推定角度θ2が、基準角度θI2から許容角度θaを減じた角度以下である、または、基準角度θI2に許容角度θaを加えた角度以上であると判断すると(ステップS26:NO)、ステップS32へ移行する。角度範囲を超えて第2リンクL2が回転しており、第2関節J2に滑りが発生しているためである。対して、判定部33は、角度範囲を超えて第2リンクL2が回転していない、すなわち、推定角度θ2が、基準角度θI2から許容角度θaを減じた角度より大きく、基準角度θI2に許容角度θaを加えた角度より小さいと判断すると(ステップS26:YES)、ステップS28へ移行する。第2関節J2に、滑りが発生しておらず、次に、第3関節J3について判定するためである。
【0025】
判定部33は、第3関節J3の推定角度θ3に基づき、角度範囲を超えて第3リンクL3が回転しているか否かを判定する(ステップS28)。具体的には、判定部33は、推定角度θ3が、基準角度θI3から許容角度θaを減じた角度より大きく、基準角度θI3に許容角度θaを加えた角度より小さいか否かを判断する。判定部33は、推定角度θ3が角度範囲内でないと判断すると(ステップS28:NO)、第3関節J3に滑りが発生していると推定できるためステップS32へ移行する。対して、判定部33は、推定角度θ3が、角度範囲内であると判断すると(ステップS28:YES)、第3関節J3に滑りが発生していないと推定できるため、ステップS30へ移行する。
【0026】
判定部33は、第5関節J5の推定角度θ5に基づき、角度範囲を超えて第5リンクL5が回転しているか否かを判定する(ステップS30)。具体的には、判定部33は、推定角度θ5が、基準角度θI5から許容角度θaを減じた角度より大きく、基準角度θI5に許容角度θaを加えた角度より小さいか否かを判断する。判定部33は、推定角度θ5が、角度範囲内でないと判断すると(ステップS30:NO)、第5関節J5に滑りが発生していると推定できるため、ステップS32へ移行する。対して、判定部33は、推定角度θ5が、角度範囲内であると判断すると(ステップS30:YES)、第5関節J5に滑りが発生していないと推定できるため、予め定められた時間の経過後、ステップS18へ移行する。これにより、継続して、ロボット200のアーム210の変位を監視することができる。予め定められた時間は、例えば数分程度である。
【0027】
ステップS32では、第1出力部34により、モニター300へ報知信号Sigaが出力される(ステップS32)。報知信号Sigaは、モニター300にリンクLの変位を報知させるための信号であり、例えば、第3関節J3の推定角度θ3が、角度範囲内でないと判定された場合には、関節Jの番号を特定する情報を含む「3軸滑り発生」などの表示メッセージの情報が含まれている。モニター300は、報知信号Sigaを受信すると、含まれる表示メッセージを表示画面301に表示する。これにより、作業者は、リンクLが目標制動位置から変位したことを知ることができる。ステップS32の実行後、本処理ルーチンは終了する。
【0028】
上記、説明した第1実施形態によれば、ロボット監視システム100は、カメラ10と、推定部32と、判定部33と、第1出力部34とを備える。これにより、制動機構240が作動している状態のロボット200を撮像することで、ロボット200のリンクLが目標制動位置から変位しているか否かを判定することができる。
【0029】
第1出力部34は、推定角度θnに基づいて、角度範囲を超えてリンクLが回転したと判定部33が判定した場合、モニター300にリンクLの変位を報知させるための報知信号Sigaを出力する。これにより、リンクLの変位が生じた場合に、モニター300に変位を報知させることができる。これにより、作業者は、リンクLの変位を知ることができる。
【0030】
記憶部40には、予め骨格モデル41を記憶されている。そして、推定部32は、画像データから推定した関節Jの位置と、骨格モデル41とを用いて関節Jの角度を推定する。これにより、骨格モデル41を用いて、関節Jの角度を精度良く推定することができる。
【0031】
設定部31は、制動機構240が作動してリンクLの回転の制動が開始された開始時点の画像データを用いて、推定部32により推定された推定角度θnを基準角度θInとし、基準角度θInを中心とした予め定められた範囲を角度範囲に設定する。これにより、開始時点におけるリンクLの位置に対する変位を判定することができる。
【0032】
判定部33は、複数の関節Jの各々について判定する。これにより、ロボット200が複数の関節Jを備える場合に、少なくとも一つの関節Jにおける変位を判定することができる。
【0033】
B.第2実施形態
図6は、第2実施形態に係るロボット監視システム100の構成を示す模式図である。第2実施形態では、ロボット制御部220と、情報処理装置20とが通信可能に接続されている点と、CPU30は、第1出力部34に代えて第2出力部35を備える点が、第1実施形態と異なる。第1実施形態と同じ構成には、同じ符号を付し、詳細な説明は省略する。第2出力部35は、判定部33が角度範囲を超えてリンクLが回転していると判定した場合、ロボット制御部220にリンクLの位置を目標制動位置に変位させるための変位信号Sigbを出力する。第2実施形態に係る監視処理について、第1実施形態と同様に、本実施形態では、6つの関節Jのうち、第2関節J2と、第3関節J3と、第5関節J5とについて監視が行われる場合を例示して説明する。
【0034】
図7は、第2実施形態に係る監視処理のフローチャートである。本実施形態に係る監視処理は、例えば、作業員が不在となる夜間に実行される。作業員がいない間に、リンクLの変位が生じると、対応が遅れ変位が進み、リンクLが設置面や他の設備と干渉するおそれがある。そこで、本実施形態では、予め定められた角度範囲を用いて判定する。アーム210の動作は、ロボット200の作業内容に応じて予め定められたプログラムに従って動作する。そこで、本実施形態では、予めプログラムされている動作におけるリンクLの動作範囲が角度範囲に設定されている。例えば、第2関節J2の予めプログラムされている動作における関節角度の動作範囲が、40度より大きく100度より小さい範囲であった場合、40度より大きく100度より小さい範囲が第2関節J2の角度範囲に設定される。これにより、初期制動位置に拘わらず、リンクLの変位を判定できると共に、上記干渉を避けることができる。角度範囲は、予め定められており、記憶部40に記憶されている。
【0035】
図7では、第1実施形態に係る処理ステップと同じ内容の処理ステップには、同一の符号を付し、詳細な説明は、省略する。監視処理が開始されると、CPU30により、停止指示を受け付けたか否かが判断される(ステップS18)。CPU30は、停止指示を受け付けたと判断すると(ステップS18:YES)、本処理ルーチンは終了する。CPU30は、停止指示を受け付けていないと判断すると(ステップS18:NO)、カメラ10にロボット200のアーム210を撮像させる(ステップS20)。推定部32により、各関節Jの画像における位置が推定される(ステップS22)。推定部32により、関節Jの各々の推定角度θnが算出される(ステップS24)。
【0036】
判定部33は、第2関節J2の推定角度θ2に基づいて、角度範囲を超えて第2リンクL2が回転したか否かを判定する(ステップS40)。具体的には、判定部33は、推定角度θ2が、角度範囲の最小角度θMIN2より大きく、角度範囲の最大角度θMAX2より小さいか否かを判断する。判定部33は、角度範囲を超えて第2リンクL2が回転している、すなわち角度範囲の最小角度θMIN2以下である、または、角度範囲の最大角度θMAX2以上であると判断すると(ステップS40:NO)、ステップS46へ移行する。対して、判定部33は、推定角度θ2が、角度範囲を超えて第2リンクL2が回転していない、すなわち、推定角度θ2が、角度範囲の最小角度θMIN2より大きく、角度範囲の最大角度θMAX2より小さいと判断すると(ステップS40:YES)、ステップS42へ移行する。
【0037】
判定部33は、第3関節J3の推定角度θ3に基づいて、第3関節J3の角度範囲を超えて第3リンクL3が回転したか否かを判定する(ステップS42)。具体的には、判定部33は、推定角度θ3が、角度範囲の最小角度θMIN3より大きく、角度範囲の最大角度θMAX3より小さいか否かを判断する。判定部33は、推定角度θ3が、角度範囲内でないと判断すると(ステップS42:NO)、ステップS46へ移行する。対して、判定部33は、推定角度θ3が、角度範囲内であると判断すると(ステップS42:YES)、ステップS44へ移行する。判定部33は、第5関節J5の推定角度θ5に基づいて、第5関節J5の角度範囲を超えて第5リンクL5が回転したか否かを判定する(ステップS44)。具体的には、判定部33は、推定角度θ5が、角度範囲の最小角度θMIN5より大きく、角度範囲の最大角度θMAX5より小さいか否かを判断する。判定部33は、推定角度θ5が、角度範囲内でないと判断すると(ステップS44:NO)、ステップS46へ移行する。対して、判定部33は、推定角度θ5が、角度範囲内であると判断すると(ステップS44:YES)、予め定められた時間の経過後、ステップS18へ移行する。
【0038】
ステップS46では、第2出力部35により、ロボット制御部220へ変位信号Sigbが出力される。変位信号Sigbは、リンクLの位置を目標制動位置に変位させるための信号である。ここで、目標制動位置とは、アーム210による作業が停止された後、アーム210の電源がオフされる前の各関節Jの初期制動位置である。ロボット制御部220は、アーム210による作業を停止させた後、各関節Jの角度を記憶する。その後、アーム210の電源はオフされる。そして、変位信号Sigbを受信すると、アーム210の電源をオンし、各関節Jの角度が記憶していた角度となるように、アーム210を制御する。これにより、ロボット200の近くに作業者がいない場合でも、アーム210の大幅な変位を避けることができ、設置面などとの干渉を避けることができる。アーム210のリンクLの位置を目標制動位置に復帰させることができる。ステップS46の実行後、本処理ルーチンは終了する。
【0039】
以上説明した第2実施形態によれば、第2出力部35は、ステップS46において、ロボット制御部220に変位信号Sigb信号を出力する。これにより、リンクLの変位が生じた場合に、ロボット200のアーム210を目標制動位置に変位させることができる。これにより、作業者がロボットの近くにいない場合であっても、人の手を介さずに、アーム210のリンクLの位置を目標制動位置に復帰させることができる。
【0040】
C.他の実施形態:
(C1)上記実施形態では、制動機構240は、電磁式である。制動機構240は、電磁式に限られず、機械式でもよい。ロボット監視システム100は、ロボット200と別体であるため、制動機構240の種類に拘わらず、電源が投入されていないアーム210を監視することができる。また、上記実施形態では、ロボット200は、6軸の垂直多関節型の産業用ロボットであるが、他の形態のロボットにも適用することができる。
【0041】
(C2)上記実施形態では、ロボット監視システム100は、カメラ10を一台備える。他の構成として、アーム210の大きさ、可動範囲に応じて、カメラ10を複数台備えてもよい。この場合、複数のカメラ10各々の撮像範囲を互いに異なる範囲にとなるように、かつ、互いの撮像範囲の一部が重複する範囲となるようにカメラ10を設置するとよい。具体的には、1つのカメラ10に第1関節J1~第3関節J3を撮像させ、別のカメラ10に第3関節J3~第6関節J6を撮像させるとよい。これにより、アーム210が動いた場合においても、確実にアーム210を撮像することができる。
【0042】
(C3)上記実施形態では、監視処理において、第2関節J2、第3関節J3、第5関節J5の順に、推定角度θnが角度範囲内でなるか否かの判断が行われているが、順番はこれに限られない。例えば、関節Jにかかる負荷の大きい順に判定してもよい。これにより、負荷が大きく、変位が生じやすい関節Jについて、早期に判定を行うことができる。
【0043】
(C4)上記第1実施形態では、報知措置としてモニター300を備える。報知装置は、モニター300に限られず、警報を発するスピーカーや、点灯するランプなどでもよい。
【0044】
(C5)上記第2実施形態では、目標制動位置とは、アーム210による作業が停止された後、電源がオフされる前の各関節Jの位置である。これとは別に、目標制動位置として、予め設定された初期または標準の位置でもよい。この構成によれば、ロボット制御部220による、各関節Jの角度を記憶する工程を削減することができる。
【0045】
(C6)上記第2実施形態では、角度範囲は、予めプログラムされている動作におけるリンクLの動作範囲に設定されている。他の実施形態として、角度範囲を、アーム210の仕様による可動範囲を基準とする範囲に設定してもよい。また、角度範囲を、アーム210が干渉を生じる場合における各関節Jの角度を基準とする範囲に設定してもよい。
【0046】
(C7)上記第1実施形態に係るロボット監視システム100では、第1出力部34を有する。他の構成として、ロボット監視システム100は、第1出力部34と、第2実施形態に係る第2出力部35との両方を備える構成としてもよい。つまり、判定部33が、推定角度θnが、角度範囲内でないと判定した場合に、モニター300に報知信号Sigaを送信すると共に、ロボット制御部220に変位信号Sigbを送信してもよい。第2実施形態についても同様である。また、上記第1実施形態に係るロボット監視システム100にて、第1出力部34に代えて第2出力部35を備えてもよい。上記第2実施形態に係るロボット監視システム100にて、第2出力部35に代えて第1出力部34を備えてもよい。
【0047】
(C8)上記実施形態では、監視処理は、アーム210の電源がオフされた後、実行される。ここで、アーム210の電源がオフされた状態とは、アーム210の有する関節Jのすべてについて、制動機構240が作動されている状態を意味している。これとは別に、アーム210の電源がオンされている期間に、監視処理が実行されてもよい。これにより、アーム210の有する関節Jのうち、一部について制動機構240が作動されている場合に、制動機構240が作動している関節Jについて、予め定められた角度範囲を超えてリンクが回転したか否かを判定することができる。具体的には、作業において、複数の関節Jのうち、例えば、第2関節J2については、第2関節J2の角度が変更されない場合、第2関節J2について、監視処理を行うことで、予め定められた角度範囲を超えて第2リンクL2が回転したか否かを判定することができる。監視処理では、関節Jの位置に拘わらず、関節Jの各々の角度を推定することができる。よって、アーム210の有する関節Jの一部について制動機構240が作動されている場合に、制動機構240が作動されている関節Jについて、滑りが発生しているか否かを監視することができる。
【0048】
本開示は、上述の実施形態に限られるものではなく、その趣旨を逸脱しない範囲において種々の構成で実現することができる。例えば、発明の概要の欄に記載した各形態中の技術的特徴に対応する実施形態の技術的特徴は、上述の課題の一部又は全部を解決するために、あるいは、上述の効果の一部又は全部を達成するために、適宜、差し替えや、組み合わせを行うことが可能である。また、その技術的特徴が本明細書中に必須なものとして説明されていなければ、適宜、削除することが可能である。
【符号の説明】
【0049】
10…カメラ、20…情報処理装置、30…CPU、31…設定部、32…推定部、33…判定部、34…第1出力部、35…第2出力部、40…記憶部、41…骨格モデル、42…監視処理プログラム、100…ロボット監視システム、200…ロボット、210…アーム、220…ロボット制御部、230…モータ、231…ステータ、232…ロータ、240…制動機構、241…摩擦板、242…バネ、243…電磁石、250…基台、256…エンドエフェクタ、300…モニター、301…表示画面、CA1…第1軸、CA2…第2軸、CA3…第3軸、CA4…第4軸、CA5…第5軸、CA6…第6軸、J…関節、J1…第1関節、J2…第2関節、J3…第3関節、J4…第4関節、J5…第5関節、J6…第6関節、L…リンク、L1…第1リンク、L2…第2リンク、L3…第3リンク、L4…第4リンク、L5…第5リンク、ML…モデルリンク、Siga…報知信号、Sigb…変位信号、TP…トラッキングポイント、TP1…第1トラッキングポイント、TP2…第2トラッキングポイント、TP3…第3トラッキングポイント、TP4…第4トラッキングポイント、TP5…第5トラッキングポイント、θMn…モデル角度、θIn…基準角度、θa…許容角度、θn…推定角度