JP7098080B1 - ロボット制御装置 - Google Patents

ロボット制御装置 Download PDF

Info

Publication number
JP7098080B1
JP7098080B1 JP2022506319A JP2022506319A JP7098080B1 JP 7098080 B1 JP7098080 B1 JP 7098080B1 JP 2022506319 A JP2022506319 A JP 2022506319A JP 2022506319 A JP2022506319 A JP 2022506319A JP 7098080 B1 JP7098080 B1 JP 7098080B1
Authority
JP
Japan
Prior art keywords
robot
person
information
processing unit
human body
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
JP2022506319A
Other languages
English (en)
Other versions
JPWO2023037443A1 (ja
JPWO2023037443A5 (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.)
Mitsubishi Electric Corp
Original Assignee
Mitsubishi Electric 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 Mitsubishi Electric Corp filed Critical Mitsubishi Electric Corp
Application granted granted Critical
Publication of JP7098080B1 publication Critical patent/JP7098080B1/ja
Publication of JPWO2023037443A1 publication Critical patent/JPWO2023037443A1/ja
Publication of JPWO2023037443A5 publication Critical patent/JPWO2023037443A5/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1674Programme controls characterised by safety, monitoring, diagnostic
    • B25J9/1676Avoiding collision or forbidden zones
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1694Programme controls characterised by use of sensors other than normal servo-feedback from position, speed or acceleration sensors, perception control, multi-sensor controlled systems, sensor fusion
    • B25J9/1697Vision controlled systems
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J13/00Controls for manipulators
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J13/00Controls for manipulators
    • B25J13/08Controls for manipulators by means of sensing devices, e.g. viewing or touching devices
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J19/00Accessories fitted to manipulators, e.g. for monitoring, for viewing; Safety devices combined with or specially adapted for use in connection with manipulators
    • B25J19/02Sensing devices
    • B25J19/021Optical sensing devices
    • B25J19/023Optical sensing devices including video camera means
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J19/00Accessories fitted to manipulators, e.g. for monitoring, for viewing; Safety devices combined with or specially adapted for use in connection with manipulators
    • B25J19/06Safety devices
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1656Programme controls characterised by programming, planning systems for manipulators
    • B25J9/1664Programme controls characterised by programming, planning systems for manipulators characterised by motion, path, trajectory planning
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/40Robotics, robotics mapping to robotics vision
    • G05B2219/40198Contact with human allowed if under pain tolerance limit
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/40Robotics, robotics mapping to robotics vision
    • G05B2219/40201Detect contact, collision with human
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/40Robotics, robotics mapping to robotics vision
    • G05B2219/40202Human robot coexistence
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/40Robotics, robotics mapping to robotics vision
    • G05B2219/40203Detect position of operator, create non material barrier to protect operator

Landscapes

  • Engineering & Computer Science (AREA)
  • Robotics (AREA)
  • Mechanical Engineering (AREA)
  • Multimedia (AREA)
  • Human Computer Interaction (AREA)
  • Manipulator (AREA)

Abstract

ロボット制御装置(30)は、人と作業領域を共有して動作するロボット(10)を制御する。ロボット制御装置(30)は、画像認識処理部(33)と、ロボット制御処理部(32)と、監視処理部(36)と、を備える。画像認識処理部(33)は、ビジョンセンサ(20)から得られる監視領域における計測データを基に、監視領域に存在する人に関する情報である第1情報を認識する。ロボット制御処理部(32)は、ロボット(10)を動作させる動作プログラムに従ってロボット(10)の動作を制御する。監視処理部(36)は、周辺物体データと、画像認識処理部(33)から得られる第1情報と、を基に、ロボット(10)と周辺物体との間への人の挟み込みの可能性を判定する。周辺物体データは、監視領域におけるロボット(10)およびロボット(10)以外の物体である周辺物体の3次元的な配置状態を示すデータである。

Description

本開示は、人と作業空間を共有しつつ動作するロボットを制御するロボット制御装置、学習装置および推論装置に関する。
産業用ロボット等の分野において、人である作業者とロボットとが安全柵で仕切られることなく作業空間を共有した人協調ロボットシステムの開発が進められている。人協調ロボットシステムでは、作業者がロボットの可動範囲に侵入し、両者が干渉してしまう可能性がある。そこで、作業者とロボットとの干渉を防止するための技術が提案されている。
特許文献1には、カメラで撮像した画像情報から認識したロボットの近傍に存在する作業者とロボットとの距離を測定し、測定した距離が作業者に干渉する距離である場合に、ロボットが作業者のどの部位に、どのように干渉するかを推測し、その結果に基づいてロボットの動作を制限するロボットの制御方法が開示されている。
特開2008-137127号公報
しかしながら、上記従来の技術によれば、画像情報のみから作業者とロボットとの干渉を推測しているが、作業者およびロボットの周辺に配置されている物体である周辺物体については考慮されていない。すなわち、従来の技術では、ロボットと周辺物体との間への作業者の挟み込みの可能性が考慮されていないという問題があった。例えば、ロボットと周辺物体との間に作業者の体の一部が存在する状態で、作業者とロボットとの距離から作業者とロボットとの干渉の態様を推測した結果、ロボットの動作を低速にした場合に、周辺物体の存在を考慮していないために、ロボットと周辺物体との間に作業者の体の一部が挟まれてしまう可能性がある。
本開示は、上記に鑑みてなされたものであって、ロボットと周辺物体との間への人の挟み込みの発生を抑制することができるロボット制御装置を得ることを目的とする。
上述した課題を解決し、目的を達成するために、本開示は、人と作業領域を共有して動作するロボットを制御するロボット制御装置であって、画像認識処理部と、ロボット制御処理部と、監視処理部と、を備える。画像認識処理部は、ビジョンセンサから得られる監視領域における計測データを基に、監視領域に存在する人に関する情報である第1情報を認識する。ロボット制御処理部は、ロボットを動作させる動作プログラムに従ってロボットの動作を制御する。監視処理部は、周辺物体データ上に、画像認識処理部から得られる第1情報に基づいて人および人体部位の位置情報を追加し当該追加後のデータに基づいて、周辺物体を含めた環境下において人とロボットとの動作を予測して、得られるロボットと周辺物体と人との周辺物体データ上での座標を用いた位置関係から、人が挟み込まれてしまう位置にいるか否かによってロボットと周辺物体との間への人の挟み込みの可能性を判定する。周辺物体データは、監視領域におけるロボットおよびロボット以外の物体である周辺物体の3次元的な配置状態を示す、位置、形状および大きさを含むデータである。
本開示にかかるロボット制御装置は、ロボットと周辺物体との間への人の挟み込みの発生を抑制することができるという効果を奏する。
実施の形態1に係るロボット制御装置を含むロボットシステムの構成の一例を示すブロック図 人体影響度情報の一例を示す図 実施の形態1に係るロボット制御方法の手順の一例を示すフローチャート 実施の形態1に係るロボット制御方法の手順の一例を示すフローチャート 人とロボットと周辺物体との関係を示す図 実施の形態2に係るロボット制御装置を含むロボットシステムの構成の一例を示すブロック図 アクセス頻度マップの生成方法を説明するための図 アクセス頻度マップの一例を示す図 実施の形態2に係るロボット制御装置における学習装置の構成の一例を示すブロック図 実施の形態2に係るロボット制御装置が有する学習装置の学習処理の手順の一例を示すフローチャート 実施の形態2に係るロボット制御装置における推論装置の構成の一例を示すブロック図 実施の形態2に係るロボット制御装置が有する推論装置の推論処理の手順の一例を示すフローチャート 実施の形態1,2にかかるロボット制御装置のハードウェア構成の一例を示すブロック図
以下に、本開示の実施の形態にかかるロボット制御装置、学習装置および推論装置を図面に基づいて詳細に説明する。
実施の形態1.
図1は、実施の形態1に係るロボット制御装置を含むロボットシステムの構成の一例を示すブロック図である。ロボットシステム1は、ロボット10と、ビジョンセンサ20と、ロボット制御装置30と、を備える。
ロボット10は、一例では、複数のアームと、各アームの結合点である各関節に設けられ、関節角度を制御する駆動部と、を有する。ロボット10は、ロボット制御装置30からの動作指令に応じて、様々な姿勢をとることが可能である。様々な姿勢をとることで、ロボット10の固定位置を中心とした、予め定められた範囲の位置で動作が可能となる。駆動部の一例は、サーボモータもしくはステッピングモータに代表される電動モータ、または空気圧もしくは油圧を利用したシリンダである。
ビジョンセンサ20は、ロボット10を含む予め定められた領域、すなわちロボットシステム1の監視領域を撮像する。ビジョンセンサ20は、監視領域における物体の奥行きを含む距離画像と、人と人以外の周辺物とを区別するカラー画像と、を含む計測データを取得することができるセンサである。ビジョンセンサ20の一例は、2次元カメラまたは3次元カメラである。2次元カメラでカラー情報を取得することができ、3次元カメラで位置情報を取得することができる。3次元カメラの撮像方式に、ステレオ方式、飛行時間(Time of Flight:ToF)方式またはプロジェクタ方式を用いることができる。
ロボットシステム1の監視領域には、ロボット10の他にも周辺物体が配置されているものとする。周辺物体の一例は、テーブル、壁、棚、扉、加工機である。
ロボット制御装置30は、予め定められたロボット10を動作させるプログラムである動作プログラムに従ってロボット10の動作を制御する。ロボット制御装置30は、ロボット10の制御処理中に、ビジョンセンサ20での撮像結果に基づいて、ロボット10の周辺に人が存在する場合に、ロボット10と人とが接触しないようにロボット10の動作を制御する。ロボット制御装置30は、動作プログラム記憶部31と、ロボット制御処理部32と、画像認識処理部33と、人体影響度情報記憶部34と、周辺物体データ記憶部35と、監視処理部36と、を備える。
動作プログラム記憶部31は、ロボット10の動作を記述した動作プログラムを記憶する。
ロボット制御処理部32は、動作プログラム記憶部31から動作プログラムをロードして実行し、実行結果に従ってロボット10を制御する。また、ロボット制御処理部32は、動作プログラムに従ってロボット10を制御しているときに、監視処理部36によってロボット10の動作の制限の指令が出された場合に、指令に従ってロボット10を制御する。
画像認識処理部33は、ビジョンセンサ20から得られる監視領域における計測データを基に、監視領域に存在する人に関する情報である第1情報を認識する。計測データの一例は、距離画像またはカラー画像である。一例では、画像認識処理部33は、計測データのうちのカラー画像を用いて、人が監視領域に存在するかを判定し、人が監視領域に存在する場合に、人体部位を認識する。人体部位は、頭、胴体、上腕、前腕、手、大腿、下腿、足等である。画像認識処理部33は、人体部位を予め記憶したデータと計測データとを照らし合わせることで、人体部位を認識することができる。画像認識処理部33は、人が監視領域に存在する場合に、計測データのうちの距離画像を用いて、認識された人の位置および姿勢、より具体的には人体部位についての位置および姿勢を含む情報である第1位置姿勢情報と、人の状態を含む情報である第1状態情報と、を認識する。第1位置姿勢情報は、ビジョンセンサ20で計測された計測データで使用される座標系であるカメラ座標系における、人および人体部位の位置および姿勢を示す。第1状態情報は、人体部位がどのような動作をしているかを示す情報であり、一例では人体部位の移動方向および速度を含む情報である。停止している場合には、移動方向および速度は「0」となる。第1位置姿勢情報および第1状態情報は、第1情報に含まれる。また、画像認識処理部33は、ロボット10についても同様に、ロボットに関する情報である第2情報をさらに認識してもよい。第2情報は、ロボット10の部位について、位置および姿勢を含む情報である第2位置姿勢情報と、状態を含む情報である第2状態情報である第2状態情報を含む。
人体影響度情報記憶部34は、ロボット10と人とが接触した場合の人体への影響の度合を示す情報である人体影響度情報を記憶する。人体影響度情報は、人体部位毎にロボット10と接触した場合の人体へ与える影響度が規定される。図2は、人体影響度情報の一例を示す図である。人体影響度情報は、一例では、人とロボット10との接触の状態を入力データとし、人体へ与える影響度を出力データとする情報である。図2の例では、入力データは、人の接触部位、人の状態、ロボット10の接触部位およびロボット10の状態の項目を有する。なお、図2の入力データの項目は一例であり、これらに限られるものではない。出力データは、人体へ与える影響度の項目を有する。入力データを構成する各項目は、画像認識処理部33による認識処理の結果と、監視処理部36による特定処理の結果得られる情報である。人体へ与える影響度の一例は、人体へ与える衝撃の度合、人体の負傷または損傷の度合である。例えば、人体に損傷を与える場合には、人体へ与える影響度は「高い」とされ、人体に損傷を与えない場合には、人体へ与える影響度は「低い」とされる。図2の例では、人の接触部位が「頭」であり、人の状態が「移動中」であり、ロボット10の接触部位が「全ての部位」であり、ロボット10の状態が「移動速度>0.0m/s」である場合には、人体へ与える影響度が「高い」となる。人体影響度情報は、一例では、ISO/TS(International Organization for Standardization/Technical Specifications) 15066:2016の表A.2に示される「Biomechanical limits」である。
周辺物体データ記憶部35は、監視領域に存在するロボット10と、ロボット10以外の物体である周辺物体と、についての3次元的な配置状態を含む情報である周辺物体データを記憶する。周辺物体データは、物体の形状および大きさを示す3次元CAD(Computer-Aided Design)データと、物体が設置されている位置および姿勢を示す位置姿勢データと、を含む。位置姿勢データは、一例では、ロボット10の据付位置を基準にした位置および姿勢を示すデータである。周辺物体データは、監視領域におけるロボット10を含む物体の配置状態を3次元で再現することが可能なデータある。周辺物体データは、周辺物体データで使用される座標系であるロボット座標系を用いて表現される。
監視処理部36は、画像認識処理部33での認識結果を用いて、人とロボット10との距離、接触の可能性の有無および接触時の影響度を考慮して、ロボット10が人に影響を与える可能性がある場合に、ロボット10の動作を制限する指令をロボット制御処理部32に出力する。具体的な各処理を、以下に説明する。
監視処理部36は、画像認識処理部33での認識結果に基づいて、人とロボット10との間の距離である計測距離を計測する。監視処理部36は、計測距離がロボット10の動作によってロボット10と人とが接触しない距離である非接触距離であるかを判定する。非接触距離は、ビジョンセンサ20で撮像された時点からロボット10を停止させるにはどの方向にどのくらいの距離が必要なのかを示すデータである動作停止データから取得される。これによって、監視処理部36は、ロボット10が停止するまでに惰走する距離も含めた人とロボット10との間の計測距離を計測する。監視処理部36は、計測距離が非接触距離である場合には、ロボット10に対する制限を行わず、現状の運転を継続させる。監視処理部36は、計測距離が非接触距離ではない場合には、ロボット10の動作速度が遅くなるように変更する指令をロボット制御処理部32に送信する。
監視処理部36は、計測距離が非接触距離ではない場合、すなわち人とロボット10とが接触する可能性のある距離である場合には、ロボット10が人と接触する動作であるかを判定する。一例では、監視処理部36は、画像認識処理部33での認識結果である人の第1情報と、ロボット10の第2情報と、からロボット10が人と接触するか否かを判定する。上記したように、第1情報は、人体部位の第1位置姿勢情報および第1状態情報を含み、第2情報は、ロボット10の部位の第2位置姿勢情報および第2状態情報を含む。また、監視処理部36は、ロボット10が人と接触する場合には、人体部位の予測した動作と、ロボット10の予測した動作と、から、ロボット10と人体部位との接触部位および接触の状態を予測する。一例では、監視処理部36は、接触する人体部位およびロボット10の部位、並びに姿勢を含む接触時位置姿勢情報と、接触する人体部位およびロボット10の状態である接触時状態情報と、を特定する。接触時位置姿勢情報は、一例では、ロボット10と接触する人体部位および接触角度と、人と接触するロボット10の部位および接触角度と、を含む。接触時状態情報は、接触時に人体およびロボット10の部位の移動方向および速度を含む。接触時状態情報において、移動方向および速度がともに「0」である場合には、停止している場合を示している。
ロボット10が人と接触する動作を判定する際に、ロボット10の部位の第2位置姿勢情報および第2状態情報は、画像認識処理部33での認識結果ではなく、ロボット制御処理部32で動作プログラムに従ってロボット10を動作させたシミュレーションの結果を用いてもよい。監視処理部36は、ロボット10が人と接触しない場合には、ロボット10の動作に対する制限が行われたままで動作を継続させる。
監視処理部36は、ロボット10が人と接触する場合に、特定したロボット10および人の接触する部位と状態とから、人体影響度情報記憶部34の人体影響度情報を参照して、人体へ与える影響度を抽出する。すなわち、監視処理部36は、接触時位置姿勢情報および接触時状態情報との組み合わせに対応する人体影響度情報を抽出する。そして、監視処理部36は、取得した人体へ与える影響度に応じてロボット10の動作の指令をロボット制御処理部32に出力する。一例では、監視処理部36は、人体へ与える影響度が高い場合には、ロボット10の動作をさらに制限する指令をロボット制御処理部32に送信する。ロボット10の動作の制限の一例は、ロボット10の停止、人から離れる方向へのロボット10の動作等である。
また、監視処理部36は、ロボット10と人との接触が人体へ与える影響度が高くないものである場合に、監視領域におけるロボット10および周辺物体の3次元的な配置状態を示す周辺物体データと、画像認識処理部33から得られる第1情報と、を基に、ロボット10と周辺物体との間への人の挟み込みの可能性を判定し、ロボット10の動作のさらなる制限または警告音の出力が必要であるか否かを判定する。ロボット10と周辺物体との間への人の挟み込みの可能性については、監視処理部36が、監視領域におけるロボット10および周辺物体の位置、形状および大きさを含む周辺物体データ上に、第1情報に基づいて人の位置情報を追加し、第1情報に基づいて人とロボット10との動作を予測することによって行われる。また、監視処理部36は、第1情報だけでなく第2情報を含めて、ロボット10と周辺物体との間への人の挟み込みの可能性を判定してもよい。この場合には、監視処理部36は、第2位置姿勢情報および第2状態情報を含む第2情報から、ロボット10の動作を予測する。
具体的には、監視処理部36は、画像認識処理部33で認識したカメラ座標系の人の位置情報、すなわち人体の各部位の位置情報を、ロボット座標系の周辺物体データ上に追加し、人の動作およびロボット10の動作をシミュレーションして、ロボット10と周辺物体との間への人の挟み込みが発生するかを判定する。このとき、カメラ座標系とロボット座標系とのキャリブレーションが事前に実施される。これによって、カメラ座標系とロボット座標系との座標変換行列が算出される。この座標変換行列を用いることで、ビジョンセンサ20で認識したカメラ座標系における人の位置を、ロボット座標系に変換することができる。また、周辺物体の位置および姿勢についても、ロボット10を基準にした座標を用いて表される。したがって、監視処理部36は、ロボット10と周辺物体と人との位置関係をロボット座標系で把握することができ、この位置関係から人が挟み込まれてしまう位置にいるかどうかを判定する。人の動作のシミュレーションは、第1情報に基づいて行うことができる。また、ロボット10の動作のシミュレーションは、動作プログラムを用いて、または第2情報に基づいて行うことができる。
監視処理部36は、人の挟み込みの可能性がない場合には、ロボット10の動作に対する制限が行われたままで動作を継続させる。すなわち、監視処理部36は、さらなる動作制限を行わない。また、監視処理部36は、人の挟み込みの可能性がある場合には、ロボット10の停止、人から離れる方向へのロボット10の動作等のロボット10の動作を制限する指令をロボット制御処理部32に出力したり、警告音を出力したりする。
次に、このような構成を有するロボットシステム1におけるロボット制御装置30の動作について説明する。図3および図4は、実施の形態1に係るロボット制御方法の手順の一例を示すフローチャートである。なお、ここでは、監視領域内に人が存在することを前提とした処理について説明する。
まず、ビジョンセンサ20は、監視領域を撮像し、撮像したデータを計測データとしてロボット制御装置30に送信する。ロボット制御装置30の画像認識処理部33は、受信した計測データから、監視領域に存在する人の人体部位の第1位置姿勢情報および第1状態情報を認識する(ステップS11)。第1位置姿勢情報は、人体部位の位置と姿勢を含む情報であり、第1状態情報は、人体部位の状態を含む情報である。次いで、監視処理部36は、画像認識処理部33で認識された人体部位の第1位置姿勢情報および第1状態情報を用いて、認識された人とロボット10との計測距離を計測する(ステップS12)。
その後、監視処理部36は、計測距離が人とロボット10とが接触しない非接触距離であるかを判定する(ステップS13)。一例では、非接触距離は、ビジョンセンサ20で撮像された状態から、ロボット10が停止信号を受けて、ロボット10が停止するまでに移動する距離である。計測距離が非接触距離よりも大きい場合には、ロボット10は人と接触せず、計測距離が非接触距離よりも小さい場合には、ロボット10は人と接触する可能性がある。
計測距離が非接触距離よりも大きい場合(ステップS13でYesの場合)には、ロボット10が人と接触する可能性がないので、監視処理部36は、ロボット10の動作を制限せず、現在の動作プログラムでの動作を継続し、処理が終了する。
また、計測距離が非接触距離よりも小さい場合(ステップS13でNoの場合)には、監視処理部36は、ロボット10の動作速度を変更する指令をロボット制御処理部32に出力する(ステップS14)。ロボット制御処理部32は、指令を受信すると、ロボット10の動作速度を指令に従って変更する(ステップS15)。具体的には、監視処理部36は、ロボット10の動作速度を減速させるために、ロボット制御処理部32に減速指令を出力する。減速指令に含まれるロボット10の動作速度は、ロボット10が人と接触しても、接触した部位で人体にほとんど影響を与えない程度の動作速度であり、一例では、0.25m/sである。
次いで、監視処理部36は、画像認識処理部33での認識結果を用いて、ロボット10の動作が人と接触する可能性があるかを判定する(ステップS16)。一例では、ステップS11で画像認識処理部33はロボット10の部位の第2位置姿勢情報および第2状態情報を認識し、人体部位の第1位置姿勢情報および第1状態情報と、ロボット10の部位の第2位置姿勢情報および第2状態情報と、を用いて人およびロボット10の動作を予測し、ロボット10と人との接触の可能性を判定する。あるいは他の例では、ロボット10を動作プログラムに従って動作させるシミュレーションと、人体部位の第1位置姿勢情報および第1状態情報を用いた予測と、を合わせてロボット10と人との接触の可能性を判定する。
ロボット10の動作が人と接触する可能性がないと判定された場合(ステップS16でNoの場合)には、監視処理部36は、ステップS15で変更されたロボット10の動作速度を維持した状態で、ロボット10の動作を継続させ、処理が終了する。また、ロボット10の動作が人と接触する可能性があると判定された場合(ステップS16でYesの場合)には、監視処理部36は、画像認識処理部33での認識結果を用いてロボット10および人体部位の接触時位置姿勢情報を特定する(ステップS17)。また、監視処理部36は、画像認識処理部33での認識結果を用いてロボット10および人体の接触時状態情報を取得する(ステップS18)。人体の接触時状態情報の一例は、頭の向きと移動速度、肩の向きと移動速度等である。同様にロボット10の接触時状態情報の一例は、アーム先端部の向きと移動速度等である。
その後、監視処理部36は、ロボット10および人体の接触時位置姿勢情報と接触時状態情報とから、人体影響度情報を参照して人体へ与える影響度を取得する(ステップS19)。具体的には、監視処理部36は、ロボット10および人体の接触時位置姿勢情報と接触時状態情報との組み合わせを入力データとし、人体影響度情報から入力データに対応する人体へ与える影響度である出力データを取得する。監視処理部36は、人体へ与える影響度が予め定められた基準値よりも高いかを判定する(ステップS20)。人体へ与える影響度が基準値よりも高い場合には、人体に対する損傷等の影響が大きく、人体へ与える影響度が基準値以下である場合には、人体に対する損傷等の影響が軽微である。人体へ与える影響度は、ロボット10が接触する人体部位が急所であるか否か、およびロボット10の動作速度、接触する可能性がある人体部位、位置、状態等の情報に関連付けられている。
人体へ与える影響度が基準値以下の場合(ステップS20のNoの場合)には、監視処理部36は、画像認識処理部33で認識された人の位置情報を、周辺物体データに追加し(ステップS21)、周辺物体を含めた環境下でロボット10および人の動作を予測する(ステップS22)。監視処理部36は、一例では、周辺物体データを用いて、ロボット10と人との動作をシミュレーションする。このとき、ロボット10並びに人体の接触時位置姿勢情報および接触時状態情報、動作プログラム等を使用することができる。
監視処理部36は、予測の結果、人とロボット10と周辺物体との3つの関係性から、ロボット10と周辺物体との間への人の挟み込みの可能性があるかを判定する(ステップS23)。図5は、人とロボットと周辺物体との関係を示す図である。この図では、ロボット10と周辺物体である作業台510との間の領域が挟み込み可能性領域R1となり、挟み込み可能性領域R1に人500の手501が存在する場合を示している。このような場合には、ロボット10と作業台510との間に人500の手501が挟み込まれる可能性があると判定される。
ロボット10と周辺物体との間への人の挟み込みの可能性がある場合(ステップS23でYesの場合)、またはステップS20で人体へ与える影響度が基準値よりも高い場合(ステップS20のYesの場合)には、監視処理部36は、人とロボット10とが接触しないようにロボット10の動作を制限する指令を、ロボット制御処理部32へ出力する(ステップS24)。ロボット制御処理部32は、指令を受けると、指令に基づいてロボット10の動作を制限する(ステップS25)。ロボット10の動作の制限には、ロボット10の動作の停止、さらなる減速、人から離れる方向へのロボット10の動作等がある。なお、ステップS24,S25では、監視処理部36は、ロボット10の動作を制限する指令をロボット制御処理部32へ出力し、ロボット制御処理部32は、ロボット10の動作を制限する場合を示したが、ステップS24で、監視処理部36が、警告音を出力してもよい。以上で、処理が終了する。
ロボット10と周辺物体との間への人の挟み込みの可能性がない場合(ステップS23でNoの場合)には、人体への影響がそれほど重大ではないと認識し、ロボット10の動作を現状のままとして、処理が終了する。
実施の形態1のロボット制御装置30によれば、画像認識処理部33でビジョンセンサ20からの測定データを用いて、監視領域に存在する人の人体部位の第1位置姿勢情報および第1状態情報を取得する。監視処理部36は、ロボット10と周辺物体とについての3次元的な配置状態、形状および大きさを含む周辺物体データに人の位置を加え、人およびロボット10の動作を予測し、ロボット10と周辺物体との間への人の挟み込みの可能性があるか判定する。ロボット10と周辺物体との間への人の挟み込みの可能性がある場合には、ロボット10と周辺物体との間に人が挟み込まれないように、ロボット10の動作を制限する指令をロボット制御処理部32に出力する。これによって、ロボット10による人への接触の影響度が小さい場合でも、ロボット10と周辺物体との間で、ロボット10の動作の継続によって人が挟み込まれ、人体へ与える影響度を大きくしてしまう可能性を抑制することができる。また、ロボット10の人への接触によって人に大きな被害を与えることがなくなるので、人と近い距離で使用することができ、汎用性の高いロボット10を実現することができる。
実施の形態2.
従来では、ロボット10と周辺物体とが配置される領域に人が存在する場合に、ロボット10が人と接触する可能性、およびロボット10と周辺物体との間への人の挟み込みの可能性を低減しながら、目的位置までのロボット10の動作経路をなるべく短くする技術については提案されていなかった。実施の形態2では、ロボット10が人と接触する可能性、およびロボット10と周辺物体との間への人の挟み込みの可能性を低減しながら、目的位置までのロボット10の動作経路をなるべく短くすることができるロボット制御装置について説明する。
図6は、実施の形態2に係るロボット制御装置を含むロボットシステムの構成の一例を示すブロック図である。なお、実施の形態1と同一の構成要素には同一の符号を付して、その説明を省略する。ロボット制御装置30は、実施の形態1の構成に、人分析処理部37と、アクセス頻度マップ記憶部38と、学習装置39と、学習済モデル記憶部40と、推論装置41と、をさらに備える。
人分析処理部37は、画像認識処理部33での認識結果から、予め定められた期間における監視領域内での人のアクセス状況を示す情報であるアクセス頻度マップを生成する。図7は、アクセス頻度マップの生成方法を説明するための図である。図7には、ビジョンセンサ20で撮像された監視領域の画像データ600が示されている。ここでは、監視領域を上方から撮像した画像データ600が示されている。監視領域の画像データ600は、矩形状の複数の小領域601に分割されている。図7の画像データ600では、略下半分がロボット10および周辺物体520が配置される領域であり、略上半分が人500が移動可能な領域610である。また、ロボット10の位置を中心とした円状の領域がロボット10の部位が動作することができる範囲であるロボット動作領域620である。
初期状態では、各小領域601のアクセス頻度は0である。人分析処理部37は、画像認識処理部33で認識された人500の位置がどの小領域601に属するかを判定し、人500が属する小領域601のアクセス頻度に「1」を加算する。人分析処理部37は、この処理を、予め定められた期間について行うことによってアクセス頻度マップを生成する。
図8は、アクセス頻度マップの一例を示す図である。図8では、図7の監視領域の画像データ600からアクセス頻度マップが生成されたものとする。図8に示されるように、上記の処理を行うことによって、各小領域601に人500が属した頻度が表される。アクセス頻度マップを参照することで、監視領域において、どの位置に人500が存在する可能性が高いかを知ることができる。
アクセス頻度マップ記憶部38は、人分析処理部37で生成された監視領域におけるアクセス頻度マップを記憶する。アクセス頻度マップは、機械学習のために準備されるデータである。
学習装置39は、ロボット10の動作経路と、人500、ロボット10および周辺物体520の状態と、に基づいて、ロボット10の動作が減速または停止されることを抑制し、かつロボット10の人500への接触およびロボット10と周辺物体520との間への人500の挟み込みを抑制したロボット10の動作経路を学習する学習済モデルを生成する。
学習済モデル記憶部40は、学習装置39によって学習された学習済モデルを記憶する。
推論装置41は、学習済モデル記憶部40に記憶されている学習済モデルに、ロボット10の目的位置と、ロボット10、人500および周辺物体520の状態と、を入力することで、ロボット10、人500および周辺物体520の状態に適したロボット10の動作経路を推論する。
以下に、学習装置39での学習と推論装置41での推論について、詳しく説明する。
<学習フェーズ>
図9は、実施の形態2に係るロボット制御装置における学習装置の構成の一例を示すブロック図である。学習装置39は、データ取得部391と、モデル生成部392と、を備える。
データ取得部391は、ロボット10の動作経路と、人500、ロボット10および周辺物体の状態を示す状態データと、を学習用データとして取得する。状態データは、人500の第1情報、ロボット10の目的位置および第2情報、並びに周辺物体データを含む。ここでは、第1情報が、第1位置姿勢情報であり、第2情報が、第2位置姿勢情報である場合を説明する。ロボット10の動作経路および目的位置は、動作プログラムをシミュレーションすることで得ることができる。ロボット10の動作経路は、人500、ロボット10および周辺物体520の状態における、すなわち人500の第1位置姿勢情報、ロボット10の目的位置および第2位置姿勢情報、および周辺物体データの組み合わせにおける動作経路である。
モデル生成部392は、ロボット10の動作経路と、状態データと、を含む学習用データに基づいて、ロボット10、人500および周辺物体520の状態からロボット10の動作が減速または停止されることを抑制し、かつロボット10の人500への接触およびロボット10と周辺物体520との間への人500の挟み込みを抑制したロボット10の動作経路を学習する。すなわち、人500、ロボット10および周辺物体520の状態から人500への接触および人500の挟み込みの可能性を低減したロボット10の動作経路を推論するための学習済モデルを生成する。
モデル生成部392が用いる学習アルゴリズムは教師あり学習、教師なし学習、強化学習等の公知のアルゴリズムを用いることができる。一例として、強化学習(Reinforcement Learning)を適用した場合について説明する。強化学習では、ある環境内における行動主体であるエージェントが、現在の状態である環境のパラメータを観測し、取るべき行動を決定する。エージェントの行動により環境が動的に変化し、エージェントには環境の変化に応じて報酬が与えられる。エージェントはこれを繰り返し、一連の行動を通じて報酬が最も多く得られる行動方針を学習する。強化学習の代表的な手法として、Q学習(Q-learning)、TD学習(TD-learning)等が知られている。例えば、Q学習の場合、行動価値関数Q(s,a)の一般的な更新式は次式(1)で表される。
Figure 0007098080000001
(1)式において、stは時刻tにおける環境の状態を表し、atは時刻tにおける行動を表す。行動atにより、状態はst+1に変わる。rt+1はその状態の変化によってもらえる報酬を表し、γは割引率を表し、αは学習係数を表す。なお、γは0<γ≦1の範囲とし、αは0<α≦1の範囲とする。ロボット10の動作経路が行動atとなり、人500、ロボット10および周辺物体520の状態が状態stとなり、時刻tの状態stにおける最良の行動atを学習する。
(1)式で表される更新式は、時刻t+1における最もQ値の高い行動aの行動価値Qが、時刻tにおいて実行された行動aの行動価値Qよりも大きければ、行動価値Qを大きくし、逆の場合には、行動価値Qを小さくする。換言すれば、時刻tにおける行動aの行動価値Qを、時刻t+1における最良の行動価値Qに近づけるように、行動価値関数Q(s,a)を更新する。それにより、或る環境における最良の行動価値Qが、それ以前の環境における行動価値Qに順次伝播していくようになる。
上記のように、強化学習によって学習済モデルを生成する場合、モデル生成部392は、報酬計算部393と、関数更新部394と、を備えている。
報酬計算部393は、ロボット10の動作経路と、人500、ロボット10および周辺物体520の状態と、に基づいて報酬を計算する。報酬計算部393は、ロボット10の動作時間と、ロボット10が人500に接触した場合の人体へ与える影響度と、ロボット動作領域620内における人500のアクセス頻度と、のうちの少なくとも1つの報酬基準に基づいて、報酬rを計算する。ロボット10の動作時間は、一例では、ある位置Aから目的位置である別の位置Bへと移動するまでにかかる時間である。ロボット10の動作時間は短いほど、生産性が高くなるため、短い方が好ましい。動作時間を短くする方法として、ロボット10の動作速度を上げる方法、ロボット10の動作経路を短くする方法が考えられる。
例えば、ロボット10の動作時間が減少する場合、接触時の人体へ与える影響度が低い場合、あるいは人500のアクセス頻度が低い場合には、報酬計算部393は報酬rを増大させる。一例では、報酬計算部393は、報酬の値である「1」を与えることによって報酬rを増大させる。なお、報酬の値は「1」に限られない。他方、ロボット10の動作時間が増加する場合、接触時の人体へ与える影響度が高い場合、あるいは人500のアクセス頻度が高い場合には、報酬計算部393は報酬rを低減させる。一例では、報酬計算部393は、報酬の値である「-1」を与えることによって報酬rを低減させる。なお、報酬の値は「-1」に限られない。
また、報酬基準として、ロボット10の動作時間と、ロボット10が人500に接触した場合の人体へ与える影響度と、ロボット動作領域620内における人500のアクセス頻度と、を組み合わせることによって、効率的な学習が可能である。
関数更新部394は、報酬計算部393によって計算される報酬に従って、ロボット10の動作経路を決定するための関数を更新し、学習済モデル記憶部40に出力する。例えばQ学習の場合、(1)式で表される行動価値関数Q(st,at)がロボット10の動作経路を算出するための関数として用いられる。以上のような学習を繰り返し実行する。
学習済モデル記憶部40は、関数更新部394によって更新された行動価値関数Q(st,at)、すなわち、学習済モデルを記憶する。
次に、学習装置39が学習する処理について説明する。図10は、実施の形態2に係るロボット制御装置が有する学習装置の学習処理の手順の一例を示すフローチャートである。
まず、データ取得部391は、ロボット10の動作経路と、人500、ロボット10および周辺物体520の状態を示す状態データと、を学習用データとして取得する(ステップS51)。状態データは、一例では、人500の第1位置姿勢情報、ロボット10の目的位置および第2位置姿勢情報、並びに周辺物体データを含む。
ついで、モデル生成部392は、ロボット10の動作経路と、人500、ロボット10および周辺物体520の状態を示す状態データと、に基づいて報酬を計算し、報酬を増大させるかを判定する(ステップS52)。具体的には、報酬計算部393は、ロボット10の動作経路と、人500、ロボット10および周辺物体520の状態と、を取得し、ロボット10の動作時間、ロボット10が人500に接触した場合の人体へ与える影響度、およびロボット動作領域620内における人500のアクセス頻度のうちの少なくとも1つである予め定められた報酬基準に基づいて報酬を増加させるかまたは報酬を減じるかを判定する。
ステップS52で報酬を増大させると判定した場合には、報酬計算部393は、報酬を増大させる(ステップS53)。一方、ステップS52で報酬を減少させると判定した場合には、報酬計算部393は、報酬を減少させる(ステップS54)。
ステップS53またはS54の後、関数更新部394は、報酬計算部393によって計算された報酬に基づいて、学習済モデル記憶部40が記憶する(1)式で表される行動価値関数Q(st,at)を更新する(ステップS55)。
学習装置39は、以上のステップS51からS55までの処理を繰り返し実行し、生成された行動価値関数Q(st,at)を学習済モデルとして学習済モデル記憶部40に記憶する。
実施の形態2に係る学習装置39は、学習済モデルを学習装置39の外部に設けられた学習済モデル記憶部40に記憶するものとしたが、学習済モデル記憶部40を学習装置39の内部に備えていてもよい。
<活用フェーズ>
図11は、実施の形態2に係るロボット制御装置における推論装置の構成の一例を示すブロック図である。推論装置41は、データ取得部411と、推論部412と、を備える。
データ取得部411は、人500、ロボット10および周辺物体520の状態を示す状態データを取得する。状態データは、一例では、人500の第1位置姿勢情報、ロボット10の目的位置および第2位置姿勢情報、並びに周辺物体データを含む。
推論部412は、学習済モデルを利用してロボット10の動作経路を推論する。すなわち、この学習済モデルに、データ取得部411が取得した状態データ、すなわち人500、ロボット10および周辺物体520の状態を入力することで、ロボット10の動作経路、より具体的には人500、ロボット10および周辺物体520の状態に適したロボット10の動作経路を推論することができる。
なお、ここでは、ロボット制御装置30の学習装置39のモデル生成部392で学習した学習済モデルを用いてロボット10の動作経路を出力するものとして説明したが、他のロボットシステム1から学習済モデルを取得し、この学習済モデルに基づいてロボット10の動作経路を出力するようにしてもよい。
次に、推論装置41がロボット10の動作経路を得るための処理を説明する。図12は、実施の形態2に係るロボット制御装置が有する推論装置の推論処理の手順の一例を示すフローチャートである。
まず、データ取得部411は、人500、ロボット10および周辺物体520の状態を示す状態データを推論用データとして取得する(ステップS71)。
ついで、推論部412は、学習済モデル記憶部40に記憶された学習済モデルに、推論用データである状態データ、すなわち人500、ロボット10および周辺物体520の状態を入力し(ステップS72)、ロボット10の動作経路を得る。その後、推論部412は、データである得られたロボット10の動作経路をロボット制御処理部32に出力する(ステップS73)。
そして、ロボット制御処理部32は、出力されたロボット10の動作経路を用いて、ロボット10を制御する(ステップS74)。これによって、ロボット10の動作が減速または停止されることが抑制され、かつ人体へ与える影響度が低減され、人500の人体へ与える影響度および人500の挟み込みの抑制とロボット10の稼働率の向上とを両立したロボット10の制御が可能となり、汎用性の高いロボットシステム1を実現することができる。
なお、実施の形態2では、推論部412が用いる学習アルゴリズムに強化学習を適用した場合について説明したが、これに限られるものではない。学習アルゴリズムについては、強化学習以外にも、教師あり学習、教師なし学習、または半教師あり学習等を適用することも可能である。
また、モデル生成部392に用いられる学習アルゴリズムとしては、特徴量そのものの抽出を学習する、深層学習(Deep Learning)を用いることもでき、他の公知の方法、例えばニューラルネットワーク、遺伝的プログラミング、機能論理プログラミング、サポートベクターマシンなどに従って機械学習を実行してもよい。
なお、図6では、学習装置39および推論装置41は、ロボット制御装置30に内蔵されている場合を示したが、学習装置39および推論装置41は、例えば、ネットワークを介してロボット制御装置30に接続され、このロボット制御装置30とは別個の装置であってもよい。また、学習装置39および推論装置41は、クラウドサーバ上に存在していてもよい。
さらに、モデル生成部392は、複数のロボット制御装置30から取得される学習用データを用いて、ロボット10の動作経路を学習するようにしてもよい。なお、モデル生成部392は、同一のエリアで使用される複数のロボット制御装置30から学習用データを取得してもよいし、異なるエリアで独立して動作する複数のロボット制御装置30から収集される学習用データを利用してロボット10の動作経路を学習してもよい。また、学習用データを収集するロボット制御装置30を途中で対象に追加したり、対象から除去したりすることも可能である。さらに、あるロボット制御装置30に関してロボット10の動作経路を学習した学習装置39を、これとは別のロボット制御装置30に適用し、当該別のロボット制御装置30に関してロボット10の動作経路を再学習して更新するようにしてもよい。
実施の形態2では、学習装置39が、ロボット10の動作経路と、状態データと、を含む学習用データに基づいて、人500、ロボット10および周辺物体520の状態からロボット10の動作が減速または停止されることを抑制し、かつ人500への接触および人500の挟み込みを抑制したロボット10の動作経路を学習する。これによって、人500、ロボット10および周辺物体520の状態からロボット10の動作が減速または停止されてしまうことを抑制し、かつ人体へ与える影響度を低減したロボット10の動作経路を学習することができるという効果を有する。
また、実施の形態2では、推論装置41が、学習済モデルを用いて、人500、ロボット10および周辺物体520の状態からロボット10の動作が減速または停止されることを抑制し、かつ人体へ与える影響度を低減したロボット10の動作経路を推論し、ロボット制御処理部32に出力する。これによって、人体へ与える影響度の低減とロボット10の可動率の向上とを両立した汎用性の高いロボットシステム1を実現することができる。
ここで、図1および図6に示したロボット制御装置30のハードウェア構成について説明する。図13は、実施の形態1,2にかかるロボット制御装置30のハードウェア構成の一例を示すブロック図である。
ロボット制御装置30は、演算装置301および記憶装置302を含むハードウェア構成によって実現することができる。演算装置301の例は、CPU(Central Processing Unit、中央処理装置、処理装置、マイクロプロセッサ、マイクロコンピュータ、プロセッサ、DSP(Digital Signal Processor)ともいう)またはシステムLSI(Large Scale Integration)である。記憶装置302の例は、RAM(Random Access Memory)またはROM(Read Only Memory)である。
ロボット制御装置30は、演算装置301が、記憶装置302で記憶されている、ロボット制御装置30の動作を実行するためのプログラムを読み出して実行することで実現される。また、このプログラムは、ロボット制御装置30の手順または方法、一例では、図3および図4に示されるロボット制御方法をコンピュータに実行させるものであるともいえる。
記憶装置302は、動作プログラム、人体影響度情報、周辺物体データ、アクセス頻度マップおよび学習済モデルを記憶する。記憶装置302は、演算装置301が各種処理を実行する際の一時メモリにも使用される。
演算装置301が実行するプログラムは、インストール可能な形式または実行可能な形式のファイルで、コンピュータが読み取り可能な記憶媒体に記憶されてコンピュータプログラムプロダクトとして提供されてもよい。また、演算装置301が実行するプログラムは、インターネットなどのネットワーク経由でロボット制御装置30に提供されてもよい。
また、ロボット制御装置30は専用のハードウェアで実現してもよい。また、ロボット制御装置30の機能について、一部を専用のハードウェアで実現し、一部をソフトウェアまたはファームウェアで実現するようにしてもよい。
以上の実施の形態に示した構成は、一例を示すものであり、別の公知の技術と組み合わせることも可能であるし、実施の形態同士を組み合わせることも可能であるし、要旨を逸脱しない範囲で、構成の一部を省略、変更することも可能である。
1 ロボットシステム、10 ロボット、20 ビジョンセンサ、30 ロボット制御装置、31 動作プログラム記憶部、32 ロボット制御処理部、33 画像認識処理部、34 人体影響度情報記憶部、35 周辺物体データ記憶部、36 監視処理部、37 人分析処理部、38 アクセス頻度マップ記憶部、39 学習装置、40 学習済モデル記憶部、41 推論装置、391,411 データ取得部、392 モデル生成部、393 報酬計算部、394 関数更新部、412 推論部、500 人、501 手、510 作業台、520 周辺物体、600 画像データ、601 小領域、620 ロボット動作領域。

Claims (13)

  1. 人と作業領域を共有して動作するロボットを制御するロボット制御装置であって、
    ビジョンセンサから得られる監視領域における計測データを基に、前記監視領域に存在する人に関する情報である第1情報を認識する画像認識処理部と、
    前記ロボットを動作させる動作プログラムに従って前記ロボットの動作を制御するロボット制御処理部と、
    前記監視領域における前記ロボットおよび前記ロボット以外の物体である周辺物体の3次元的な配置状態を示す、位置、形状および大きさを含む周辺物体データ上に、前記画像認識処理部から得られる前記第1情報に基づいて前記人および人体部位の位置情報を追加し当該追加後のデータに基づいて、前記周辺物体を含めた環境下において前記人と前記ロボットとの動作を予測して、得られる前記ロボットと前記周辺物体と前記人との前記周辺物体データ上での座標を用いた位置関係から、前記人が挟み込まれてしまう位置にいるか否かによって前記ロボットと前記周辺物体との間への前記人の挟み込みの可能性を判定する監視処理部と、
    を備えることを特徴とするロボット制御装置。
  2. 前記画像認識処理部は、前記ロボットに関する情報である第2情報をさらに認識し、
    前記監視処理部は、前記周辺物体データ上に、前記第1情報に基づいて前記人の位置情報と、前記第2情報に基づいて前記ロボットに関する情報と、を追加し、当該追加後のデータに基づいて、前記ロボットと前記周辺物体との間への前記人の挟み込みの可能性を判定することを特徴とする請求項に記載のロボット制御装置。
  3. 前記第2情報は、前記ロボットの位置および姿勢を含む第2位置姿勢情報と、前記ロボットの移動方向および速度を含む第2状態情報と、を含み、
    前記監視処理部は、前記第2位置姿勢情報および前記第2状態情報から前記ロボットの動作を予測することを特徴とする請求項に記載のロボット制御装置。
  4. 前記監視処理部は、前記第1情報から前記人の動作を予測し、前記動作プログラムから前記ロボットの動作を予測し、前記ロボットと前記周辺物体との間への前記人の挟み込みの可能性を判定することを特徴とする請求項に記載のロボット制御装置。
  5. 前記第1情報は、前記人の位置および姿勢を含む第1位置姿勢情報と、前記人の移動方向および速度を含む第1状態情報と、を含み、
    前記監視処理部は、前記第1位置姿勢情報および前記第1状態情報から前記人の動作を予測することを特徴とする請求項からのいずれか1つに記載のロボット制御装置。
  6. 前記第1位置姿勢情報は、人体部位の位置および姿勢を含み、
    前記第1状態情報は、前記人体部位の移動方向および速度を含み、
    前記ロボットの動作によって前記人に接触した場合の前記人体部位毎における人体へ与える影響度を示す人体影響度情報を記憶する人体影響度情報記憶部をさらに備え、
    前記監視処理部は、前記人体部位の予測した動作と、前記ロボットの予測した動作と、から、前記ロボットと前記人体部位との接触部位および接触の状態を予測し、前記予測した前記接触部位および前記接触の状態に対応する前記人体へ与える影響度を前記人体影響度情報から取得し、取得した前記人体へ与える影響度に応じて前記ロボットの動作の指令を前記ロボット制御処理部に出力することを特徴とする請求項に記載のロボット制御装置。
  7. 前記監視処理部は、前記人の挟み込みの可能性がある場合に、前記ロボットの動作を制限する指令を前記ロボット制御処理部に出力するように構成されており、
    前記ロボットの動作を制限する指令は、前記ロボットの停止、減速、または前記人から離れる方向への前記ロボットの動作であることを特徴とする請求項1からのいずれか1つに記載のロボット制御装置。
  8. 前記監視処理部は、前記人の挟み込みの可能性がある場合に、前記ロボットの動作を制限する指令を前記ロボット制御処理部に出力する、あるいは警告音を出力することを特徴とする請求項1からのいずれか1つに記載のロボット制御装置。
  9. 前記人、前記ロボットおよび前記周辺物体の状態を示す状態データと、前記人、前記ロボットおよび前記周辺物体の状態における前記ロボットの動作経路と、を含む学習用データを取得するデータ取得部と、
    前記学習用データを用いて、前記状態データから前記ロボットの動作が減速または停止されることを抑制し、かつ前記人への接触および前記ロボットと前記周辺物体との間への前記人の挟み込みの可能性を低減した前記ロボットの動作経路を推論するための学習済モデルを生成するモデル生成部と、
    を有する学習装置をさらに備え、
    前記状態データは、前記第1情報、前記ロボットの目的位置、前記ロボットに関する情報である第2情報、および前記周辺物体データを含むことを特徴とする請求項1または4に記載のロボット制御装置。
  10. 前記人、前記ロボットおよび前記周辺物体の状態を示す状態データと、前記人、前記ロボットおよび前記周辺物体の状態における前記ロボットの動作経路と、を含む学習用データを取得するデータ取得部と、
    前記学習用データを用いて、前記状態データから前記ロボットの動作が減速または停止されることを抑制し、かつ前記人への接触および前記ロボットと前記周辺物体との間への前記人の挟み込みの可能性を低減した前記ロボットの動作経路を推論するための学習済モデルを生成するモデル生成部と、
    を有する学習装置をさらに備え、
    前記状態データは、前記第1情報、前記ロボットの目的位置、前記第2情報、および前記周辺物体データを含むことを特徴とする請求項またはに記載のロボット制御装置。
  11. 前記モデル生成部は、
    前記ロボットの動作時間、前記ロボットが前記人に接触した場合の人体へ与える影響度、および前記ロボットの動作領域内における前記人のアクセス頻度のうちの少なくとも1つの報酬基準に基づいて、報酬を計算する報酬計算部と、
    前記報酬計算部によって計算される報酬に従って、前記ロボットの動作経路を決定するための関数を更新する関数更新部と、
    を有することを特徴とする請求項または10に記載のロボット制御装置。
  12. 前記人、前記ロボットおよび前記周辺物体の状態を示す状態データを取得するデータ取得部と、
    前記人、前記ロボットおよび前記周辺物体の状態から前記ロボットの動作が減速または停止されることを抑制し、かつ前記人への接触および前記ロボットと前記周辺物体との間への前記人の挟み込みの可能性を低減した前記ロボットの動作経路を推論するための学習済モデルを用いて、前記データ取得部で取得した前記状態データから前記ロボットの動作経路を出力する推論部と、
    を有する推論装置をさらに備え、
    前記状態データは、前記第1情報、前記ロボットの目的位置、前記ロボットに関する情報である第2情報、および前記周辺物体データを含むことを特徴とする請求項1,のいずれか1つに記載のロボット制御装置。
  13. 前記人、前記ロボットおよび前記周辺物体の状態を示す状態データを取得するデータ取得部と、
    前記人、前記ロボットおよび前記周辺物体の状態から前記ロボットの動作が減速または停止されることを抑制し、かつ前記人への接触および前記ロボットと前記周辺物体との間への前記人の挟み込みの可能性を低減した前記ロボットの動作経路を推論するための学習済モデルを用いて、前記データ取得部で取得した前記状態データから前記ロボットの動作経路を出力する推論部と、
    を有する推論装置をさらに備え、
    前記状態データは、前記第1情報、前記ロボットの目的位置、前記第2情報、および前記周辺物体データを含むことを特徴とする請求項10のいずれか1つに記載のロボット制御装置。
JP2022506319A 2021-09-08 2021-09-08 ロボット制御装置 Active JP7098080B1 (ja)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2021/032995 WO2023037443A1 (ja) 2021-09-08 2021-09-08 ロボット制御装置、学習装置および推論装置

Publications (3)

Publication Number Publication Date
JP7098080B1 true JP7098080B1 (ja) 2022-07-08
JPWO2023037443A1 JPWO2023037443A1 (ja) 2023-03-16
JPWO2023037443A5 JPWO2023037443A5 (ja) 2023-08-16

Family

ID=82356947

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2022506319A Active JP7098080B1 (ja) 2021-09-08 2021-09-08 ロボット制御装置

Country Status (5)

Country Link
US (1) US12017372B2 (ja)
JP (1) JP7098080B1 (ja)
CN (1) CN117377561A (ja)
DE (1) DE112021007561T5 (ja)
WO (1) WO2023037443A1 (ja)

Citations (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS60131192A (ja) * 1983-12-16 1985-07-12 松下電器産業株式会社 ロボツトの安全柵
JP2004174644A (ja) * 2002-11-26 2004-06-24 Sony Corp 脚式移動ロボットの制御装置
JP2008137127A (ja) * 2006-12-04 2008-06-19 Matsushita Electric Ind Co Ltd ロボットの制御方法
JP2009090400A (ja) * 2007-10-05 2009-04-30 National Institute Of Advanced Industrial & Technology ロボット、ロボット制御装置、ロボット制御プログラム、ロボット制御プログラムを作成するためのシミュレータ
JP2015157352A (ja) * 2014-01-27 2015-09-03 パナソニックIpマネジメント株式会社 ロボット、ロボットの制御装置及び制御方法、並びに、ロボット用制御プログラム
JP2016078189A (ja) * 2014-10-20 2016-05-16 株式会社デンソーウェーブ ロボット、ロボットの形状設計方法
JP2017077608A (ja) * 2015-10-21 2017-04-27 ファナック株式会社 ロボットの安全監視装置
JP2017144490A (ja) * 2016-02-15 2017-08-24 オムロン株式会社 制御装置、制御システム、制御方法およびプログラム
JP2018065221A (ja) * 2016-10-19 2018-04-26 ファナック株式会社 機械学習により外力の検出精度を向上させた人協調ロボットシステム
CN108621205A (zh) * 2017-03-17 2018-10-09 广明光电股份有限公司 协作型机器手臂的防夹方法
JP2019030941A (ja) * 2017-08-08 2019-02-28 ファナック株式会社 制御装置及び学習装置
JP2019063974A (ja) * 2017-10-05 2019-04-25 ファナック株式会社 ロボットの構成部材の速度を制限する制御装置
JP2019081234A (ja) * 2017-10-31 2019-05-30 株式会社安川電機 ロボットシステム、ロボットコントローラおよびロボットの退避方法
JP2019098410A (ja) * 2017-11-28 2019-06-24 ファナック株式会社 ロボットの速度を制限する制御装置
JP2020066092A (ja) * 2018-10-24 2020-04-30 ファナック株式会社 ロボットの制御方法
JP2020082307A (ja) * 2018-11-29 2020-06-04 トヨタ自動車株式会社 ロボットのリスクアセスメント方法
JP2021020287A (ja) * 2019-07-30 2021-02-18 セイコーエプソン株式会社 検出方法

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP2890529A2 (en) * 2012-08-31 2015-07-08 Rethink Robotics Inc. Systems and methods for safe robot operation
JP7011910B2 (ja) 2017-09-01 2022-01-27 川崎重工業株式会社 ロボットシステム
JP6997068B2 (ja) 2018-12-19 2022-01-17 ファナック株式会社 ロボット制御装置、ロボット制御システム、及びロボット制御方法
JP2020142344A (ja) 2019-03-08 2020-09-10 トヨタ自動車株式会社 環境監視システム
US20220105634A1 (en) * 2021-12-17 2022-04-07 Intel Corporation Situation-aware safety assessment of robot-human activities

Patent Citations (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS60131192A (ja) * 1983-12-16 1985-07-12 松下電器産業株式会社 ロボツトの安全柵
JP2004174644A (ja) * 2002-11-26 2004-06-24 Sony Corp 脚式移動ロボットの制御装置
JP2008137127A (ja) * 2006-12-04 2008-06-19 Matsushita Electric Ind Co Ltd ロボットの制御方法
JP2009090400A (ja) * 2007-10-05 2009-04-30 National Institute Of Advanced Industrial & Technology ロボット、ロボット制御装置、ロボット制御プログラム、ロボット制御プログラムを作成するためのシミュレータ
JP2015157352A (ja) * 2014-01-27 2015-09-03 パナソニックIpマネジメント株式会社 ロボット、ロボットの制御装置及び制御方法、並びに、ロボット用制御プログラム
JP2016078189A (ja) * 2014-10-20 2016-05-16 株式会社デンソーウェーブ ロボット、ロボットの形状設計方法
JP2017077608A (ja) * 2015-10-21 2017-04-27 ファナック株式会社 ロボットの安全監視装置
JP2017144490A (ja) * 2016-02-15 2017-08-24 オムロン株式会社 制御装置、制御システム、制御方法およびプログラム
JP2018065221A (ja) * 2016-10-19 2018-04-26 ファナック株式会社 機械学習により外力の検出精度を向上させた人協調ロボットシステム
CN108621205A (zh) * 2017-03-17 2018-10-09 广明光电股份有限公司 协作型机器手臂的防夹方法
JP2019030941A (ja) * 2017-08-08 2019-02-28 ファナック株式会社 制御装置及び学習装置
JP2019063974A (ja) * 2017-10-05 2019-04-25 ファナック株式会社 ロボットの構成部材の速度を制限する制御装置
JP2019081234A (ja) * 2017-10-31 2019-05-30 株式会社安川電機 ロボットシステム、ロボットコントローラおよびロボットの退避方法
JP2019098410A (ja) * 2017-11-28 2019-06-24 ファナック株式会社 ロボットの速度を制限する制御装置
JP2020066092A (ja) * 2018-10-24 2020-04-30 ファナック株式会社 ロボットの制御方法
JP2020082307A (ja) * 2018-11-29 2020-06-04 トヨタ自動車株式会社 ロボットのリスクアセスメント方法
JP2021020287A (ja) * 2019-07-30 2021-02-18 セイコーエプソン株式会社 検出方法

Also Published As

Publication number Publication date
JPWO2023037443A1 (ja) 2023-03-16
DE112021007561T5 (de) 2024-05-02
CN117377561A (zh) 2024-01-09
US20240123627A1 (en) 2024-04-18
US12017372B2 (en) 2024-06-25
WO2023037443A1 (ja) 2023-03-16

Similar Documents

Publication Publication Date Title
US10953538B2 (en) Control device and learning device
JP7058126B2 (ja) ロボット制御装置および自動組立システム
KR101942167B1 (ko) 전방향 휠을 가지고 선형 예측 위치 및 속도 제어기를 기초한 휴머노이드 로봇
JP6240689B2 (ja) 人の行動パターンを学習する機械学習装置、ロボット制御装置、ロボットシステム、および機械学習方法
US8392346B2 (en) Reinforcement learning system
JP7154815B2 (ja) 情報処理装置、制御方法、ロボットシステム、コンピュータプログラム、及び記憶媒体
Najmaei et al. Applications of artificial intelligence in safe human–robot interactions
JP2010120139A (ja) 産業用ロボットの安全制御装置
Altuntaş et al. Reinforcement learning-based mobile robot navigation
JP7180695B2 (ja) 障害物回避制御装置、障害物回避制御システム、障害物回避制御方法およびプログラム
JP7036399B2 (ja) 自律移動ロボット、並びに、その制御装置及び動作制御プログラム
JP7098080B1 (ja) ロボット制御装置
JP5776486B2 (ja) ロボット制御装置、その制御方法及びプログラム
JP5306934B2 (ja) ロボットおよび制御システム
JP7079435B2 (ja) ロボット制御装置、ロボット制御方法及びロボット制御プログラム
CN115903773A (zh) 移动体控制装置、移动体、学习装置及方法、及存储介质
JP7364032B2 (ja) 制御装置、制御方法及びプログラム
CN116806184A (zh) 机器人的机械阻抗控制方法、控制系统及机器人
JP6647143B2 (ja) 機能装置ならびにその制御装置および制御方法
JP5539000B2 (ja) 制御装置
WO2022074827A1 (ja) 命題設定装置、命題設定方法及び記憶媒体
JPWO2023037443A5 (ja) ロボット制御装置
WO2022180788A1 (ja) 制約条件学習装置、制約条件学習方法及び記憶媒体
US20230364791A1 (en) Temporal logic formula generation device, temporal logic formula generation method, and storage medium
WO2023095926A1 (ja) ロボット制御装置、ロボット制御システム、及びロボット制御方法

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20220128

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20220128

A871 Explanation of circumstances concerning accelerated examination

Free format text: JAPANESE INTERMEDIATE CODE: A871

Effective date: 20220128

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20220322

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20220513

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20220628

R150 Certificate of patent or registration of utility model

Ref document number: 7098080

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150