Nothing Special   »   [go: up one dir, main page]

JP7417356B2 - ロボット制御システム - Google Patents

ロボット制御システム Download PDF

Info

Publication number
JP7417356B2
JP7417356B2 JP2019011645A JP2019011645A JP7417356B2 JP 7417356 B2 JP7417356 B2 JP 7417356B2 JP 2019011645 A JP2019011645 A JP 2019011645A JP 2019011645 A JP2019011645 A JP 2019011645A JP 7417356 B2 JP7417356 B2 JP 7417356B2
Authority
JP
Japan
Prior art keywords
processor
sensor
application
robot
image
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
JP2019011645A
Other languages
English (en)
Other versions
JP2020116710A (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.)
Sony Interactive Entertainment Inc
Original Assignee
Sony Interactive Entertainment 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 Sony Interactive Entertainment Inc filed Critical Sony Interactive Entertainment Inc
Priority to JP2019011645A priority Critical patent/JP7417356B2/ja
Priority to US17/423,936 priority patent/US20220080599A1/en
Priority to PCT/JP2020/001714 priority patent/WO2020153297A1/ja
Priority to EP20744626.1A priority patent/EP3915736A4/en
Priority to CN202080009956.1A priority patent/CN113396033B/zh
Publication of JP2020116710A publication Critical patent/JP2020116710A/ja
Application granted granted Critical
Publication of JP7417356B2 publication Critical patent/JP7417356B2/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
    • 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
    • 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
    • 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
    • B25J9/00Programme-controlled manipulators
    • B25J9/0003Home robots, i.e. small robots for domestic use
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1602Programme controls characterised by the control system, structure, architecture
    • B25J9/161Hardware, e.g. neural networks, fuzzy logic, interfaces, processor
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1628Programme controls characterised by the control loop
    • B25J9/163Programme controls characterised by the control loop learning, adaptive, model based, rule based expert control
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V20/00Scenes; Scene-specific elements
    • G06V20/10Terrestrial scenes
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01BMEASURING LENGTH, THICKNESS OR SIMILAR LINEAR DIMENSIONS; MEASURING ANGLES; MEASURING AREAS; MEASURING IRREGULARITIES OF SURFACES OR CONTOURS
    • G01B11/00Measuring arrangements characterised by the use of optical techniques
    • G01B11/24Measuring arrangements characterised by the use of optical techniques for measuring contours or curvatures
    • 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/33Director till display
    • G05B2219/33161Data exchange between controller and processors
    • 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/34Director, elements to supervisory
    • G05B2219/34021Dssp digital sensor signal processor
    • 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/34Director, elements to supervisory
    • G05B2219/34033Control processor and signal processor cooperate
    • 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/34Director, elements to supervisory
    • G05B2219/34258Real time system, qnx, works together with non real time system, windows nt
    • 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/34Director, elements to supervisory
    • G05B2219/34338Execute control tasks, programs as well as user, application programs
    • 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/39Robotics, robotics to robotics hand
    • G05B2219/39369Host and robot controller and vision processing
    • 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/40532Ann for vision processing

Landscapes

  • Engineering & Computer Science (AREA)
  • Robotics (AREA)
  • Mechanical Engineering (AREA)
  • Physics & Mathematics (AREA)
  • Multimedia (AREA)
  • Automation & Control Theory (AREA)
  • Human Computer Interaction (AREA)
  • Mathematical Physics (AREA)
  • Fuzzy Systems (AREA)
  • Software Systems (AREA)
  • Evolutionary Computation (AREA)
  • Artificial Intelligence (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Manipulator (AREA)
  • Length Measuring Devices With Unspecified Measuring Means (AREA)
  • Control Of Position, Course, Altitude, Or Attitude Of Moving Bodies (AREA)

Description

本発明は、ロボットの行動を制御するシステムに関する。
従来より、様々なタイプのロボットの研究、開発が行われている。特許文献1は、人間型の脚式移動ロボットによる歩行制御の学習手法を開示する。特許文献1は、初期に与えられた歩行軌道でロボットが安定歩行できない場合に、歩行可能となる安定歩行軌道を強化学習する方法を開示する。
特開2005-96068号公報
ロボット技術は日々進化している。従来は4足歩行タイプのペット型ロボットが市販モデルの主流であったが、近年ではダンスなどの複雑な動作を行う人型ロボットが流通している。演算処理能力の向上および学習モデルの改良により、ロボットが自身で学習して既存機能を向上し、また新たな機能を獲得することが期待される。
自律ロボットの行動目的および行動態様は、実行するアプリケーションにより定まる。ロボットを自律歩行させるアプリケーションは、ロボット周辺の環境情報を収集して解析し、ロボット関節を構成する複数のモータの回転速度を算出する。各モータには制御用のマイコンが備えられ、複数のマイコンが同期して、算出された回転速度に応じた電力をモータに供給する。たとえばユーザを追いかけるという行動目的をもつアプリケーションは、カメラ画像からユーザおよび障害物の空間内位置を特定し、当該ユーザを追うルートを定めて、ルート上をロボットが移動するように各ロボット関節のモータ回転速度を算出する。
ロボットでは、画像センシングした正確なデータにもとづいて複数のモータの回転速度が算出され、算出された回転速度で時間遅延なくモータが回転することで、行動目的にしたがう行動態様が実現される。ロボットに高度な自律行動機能をもたせようとするとアプリケーションによる演算量が大きくなるが、その場合であってもロボットが行動できるようにするためには、画像センシング機能および/または運動制御機能を即時的に実現するための仕組みを構築する必要がある。
上記課題を解決するために、本発明のある態様のロボット制御システムは、第1オペレーティングシステムを実行して、アプリケーションを処理するアプリケーションプロセッサと、第2オペレーティングシステムを実行して、画像センサで取得された画像データを処理するセンサプロセッサと、第3オペレーティングシステムを実行して、ロボットの可動部位の運動を制御する運動制御プロセッサとを備える。第1オペレーティングシステム、第2オペレーティングシステム、第3オペレーティングシステムは、それぞれ異なる。
なお、以上の構成要素の任意の組合せ、本発明の表現を方法、装置、システム、コンピュータプログラム、コンピュータプログラムを読み取り可能に記録した記録媒体、データ構造などの間で変換したものもまた、本発明の態様として有効である。
実施例のエンターテインメントシステムの概略構成を示す図である。 制御システムのハードウェア構成を示す図である。
図1は、実施例のエンターテインメントシステム1の概略構成を示す。エンターテインメントシステム1は、ロボット装置20およびサーバ装置10を備える。ロボット装置20は自律歩行可能な移動体であって、アクセスポイント(AP)3を介して、インターネットなどのネットワーク2経由でサーバ装置10と通信可能に接続する。
ロボット装置20は人型ロボットとして構成され、オーナであるユーザにより所有される。ロボット装置20はオーナを、画像解析による顔認証や音声解析による声紋認証などによって認識できることが好ましい。ロボット装置20がオーナを認識することで、たとえばオーナからの指示のみを受け付け、オーナ指示にしたがって行動させることができる。
ロボット装置20は人間と同じような部位を持ち、人間が親しみを覚える外形を有することが好ましい。ロボット装置20は、頭部、頸部、体幹(胸部、腹部、背部)、上肢、下肢を有し、上肢は上腕、前腕および手を、下肢は大腿、下腿および足を有してよい。部位同士はアクチュエータによって連結される。アクチュエータは、可動部位である関節部分に配置されるモータと、モータ間を連結するリンク機構とを少なくとも含む。ロボット装置20はアクチュエータを駆動することで姿勢のバランスを保ちつつ、行動目的に応じた挙動を示す。
ロボット装置20は、歩いたり、走ったりする機能や、障害物を回避する機能を含む基本機能を、各アクチュエータの制御手法を記述した基本アプリケーションプログラム(以下、「基本アプリケーション」とも呼ぶ)により実現する。基本アプリケーションはロボット装置20の基本機能を担当することから、ロボット装置20にプリインストールされていることが好ましく、たとえばミドルウェアに組み込まれていてよい。
基本アプリケーション以外のアプリケーションプログラムは、応用アプリケーションプログラム(以下、「応用アプリケーション」とも呼ぶ)である。応用アプリケーションはたとえばダンス機能などの付加的な機能を実現する。応用アプリケーションは、サーバ装置10から必要に応じて供給されて、ロボット装置20にインストールされる。ロボット装置20は、新しい応用アプリケーションをダウンロードしてインストールすることで、新しい機能を獲得する。
図2は、制御システム4のハードウェア構成を示す。実施例の制御システム4は、ロボット装置20の画像センシング機能および運動制御機能の即時性を実現するためのアーキテクチャを備える。制御システム4はマルチプロセッサ構成をとり、アプリケーションを処理するアプリケーションプロセッサ30、画像データを処理するセンサプロセッサ50、ロボット装置20の可動部位の運動を制御する運動制御プロセッサ70を備える。制御システム4において、アプリケーションプロセッサ30およびセンサプロセッサ50は、画像解析システムを構築し、アプリケーションプロセッサ30および運動制御プロセッサ70は、運動制御システムを構築する。アプリケーションプロセッサ30、センサプロセッサ50、運動制御プロセッサ70はロボット装置20の筐体内に設けられ、2つのプロセッサ間は、互いに通信可能に接続されている。
このアーキテクチャでは、アプリケーションプロセッサ30がメインプロセッサとして動作する。センサプロセッサ50は、アプリケーションプロセッサ30により指示された画像解析を実施して、画像解析結果をアプリケーションプロセッサ30に提供する。運動制御プロセッサ70は、アプリケーションプロセッサ30により指示された回転速度でアクチュエータを駆動制御する。センサプロセッサ50および運動制御プロセッサ70がそれぞれ担当の処理を実施することで、アプリケーションプロセッサ30は画像センシング機能および運動制御機能をもつ必要がなく、アプリケーションプロセッサ30の処理負荷を低減できる。
アプリケーションプロセッサ30は、第1オペレーティングシステム(以下、「第1OS」とも呼ぶ)を実行して、アプリケーションを処理する。処理対象となるアプリケーションは、基本アプリケーションおよび応用アプリケーションの双方であり、アプリケーションプロセッサ30は、複数の基本アプリケーションを同時に処理しながら、必要な応用アプリケーションも処理する。そのためアプリケーションプロセッサ30は複数のCPUコアを搭載する。第1OSは、様々なアプリケーションを同時に実行できる汎用OSであることが好ましい。
アプリケーションプロセッサ30には、表示装置32、スピーカ34、通信装置36およびマイク38が接続される。表示装置32およびスピーカ34は、アプリケーションプロセッサ30で生成された画像および音声をそれぞれ出力し、ユーザに情報を提示する。通信装置36は無線LANでAP3に接続し、AP3を介してサーバ装置10と通信する。なお通信装置36は携帯電話通信機能を有してもよい。通信装置36は、サーバ装置10から応用アプリケーションやパッチファイルをダウンロードできる。マイク38は、周囲の音声を集音して音声信号に変換し、アプリケーションプロセッサ30に提供する。アプリケーションプロセッサ30は音声認識機能を有し、ユーザによる音声指示をもとに行動を決定してもよい。
センサプロセッサ50は、画像センシング機能を実施するプロセッサであって、画像センサ52、距離センサ54およびイベント駆動型センサ56と接続する。画像センサ52、距離センサ54およびイベント駆動型センサ56はロボット装置20に搭載されて、ロボット装置20の周辺情報を取得する視覚センサとして動作し、センサプロセッサ50は、ビジョンに関する認識機能を担当する。
画像センサ52はカメラであって、所定の周期(たとえば1/60秒)で撮影したRGB画像をセンサプロセッサ50に供給する。距離センサ54は、TOF距離画像センサであってよく、三次元距離画像をセンサプロセッサ50に供給する。イベント駆動型センサ56は撮像素子の画素の輝度値変化を検出するセンサであって、検出した時刻と画素座標の組合せをセンサプロセッサ50に供給する。距離センサ54およびイベント駆動型センサ56は、画像データに含まれる被写体に関する情報を検出する情報センサである。
イベント駆動型センサ56は、画像センサ52よりも広いダイナミックレンジを有し、画像センサ52のダイナミックレンジを超えた入射光が存在する環境下においても、被写体の動きを正確に検出できる。またイベント駆動型センサ56は、画像センサ52よりも高い時間分解能で被写体の動きを検出できるため、センサプロセッサ50は、画像センサ52で取得された画像データを処理する際に、イベント駆動型センサ56で取得された動き情報を補完的に利用することが可能である。
センサプロセッサ50は、第2オペレーティングシステム(以下、「第2OS」とも呼ぶ)を実行して、画像センサ52で取得された画像データを処理する。センサプロセッサ50は画像データに含まれる対象物を、機械学習されたモデルを用いて認識するニューラルネットワークを有してよい。センサプロセッサ50は、距離センサ54から被写体の奥行き情報を、イベント駆動型センサ56から被写体の動き情報を取得し、これらの被写体情報を用いて画像センサ52から取得した画像データを解析する。アプリケーションプロセッサ30は、処理するアプリケーションに応じて、実施するべき画像解析機能をセンサプロセッサ50に指示する。
たとえばアプリケーションプロセッサ30が、追従対象であるオーナをロボット装置20が追従するアプリケーションを処理する際、センサプロセッサ50に対して、当該オーナの位置を特定することを要求する。センサプロセッサ50は要求を受けて、オーナを撮影画像から認識するための画像解析用パラメータセットをニューラルネットワークに設定し、画像解析によるオーナの認識処理を実施する。なおオーナ認識用のパラメータセットは、センサプロセッサ50に接続する記憶装置(図示せず)に記憶されていてよいが、アプリケーションプロセッサ30から提供されてもよい。センサプロセッサ50は、距離センサ54およびイベント駆動型センサ56で取得された被写体情報を加味して画像データの解析処理を実行してよい。
センサプロセッサ50は、アプリケーションに特化した画像解析機能を実現するために、ニューラルネットワークのパラメータセットを最適化する学習機能を有してよい。この例でセンサプロセッサ50はオーナ認識用パラメータセットを最適化する学習を事前に実施しておき、アプリケーションプロセッサ30がオーナを追従するアプリケーションを実施する前に、パラメータセットを最適化しておくことが好ましい。
学習機能における目的関数(誤差関数)は、学習用の画像をニューラルネットワークに入力することにより得られる出力と、その画像に対応する正解値(つまり対象者がオーナであること)とを比較して誤差を算出する。学習機能は誤差に基づいて、勾配逆伝搬法等によりパラメータについての勾配を計算し、モーメンタム法に基づいてニューラルネットワークの最適化対象パラメータを更新する。アプリケーションに特化した学習を行うことで、アプリケーションごとに最適なパラメータセットを生成でき、正確な画像解析機能が実現されるようになる。なおセンサプロセッサ50は他の種類の学習機能を有してよい。
たとえばアプリケーションプロセッサ30が、動いている特定の物体の行き先を予測してロボット装置20が先回りするアプリケーションを処理する際、センサプロセッサ50は、特定の物体を認識する画像解析を実施しつつ、当該物体の移動軌跡を予測する。イベント駆動型センサ56は、高い時間分解能で被写体の動き情報を検出するため、その動き情報は、正確な移動予測に好適に利用可能である。センサプロセッサ50は、画像センサ52、距離センサ54、イベント駆動型センサ56からの情報をもとに、特定の物体の移動軌跡を予測する。
またアプリケーションプロセッサ30が、オーナのジェスチャなどの動きに同期した動きをロボット装置20が行うアプリケーションを処理する際、センサプロセッサ50は、オーナを認識する画像解析を実施しつつオーナの動きを把握し、さらには将来の動きを予測してもよい。センサプロセッサ50は、イベント駆動型センサ56により検出されるオーナの動き情報を取得して、オーナの現在の動きを把握するとともに、現在までの動き情報をもとに、これから行われる動きを予測してもよい。センサプロセッサ50がオーナの動きを予測すると、ロボット装置20は、オーナの動きを先取りして動くことが可能となる。
以上のようにセンサプロセッサ50において実行される第2OSは、画像解析用ニューラルネットワークを制御するOSであることが好ましい。第2OSはニューラルネットワークに適した特別なOSであり、したがって第2OSは汎用OSではなく、第1OSと異なる。
運動制御プロセッサ70は、ロボット装置20の可動部位の運動を制御するプロセッサであって、複数のモーションセンサ72、複数のタッチセンサ74および複数のマイコン76a~76n(以下、特に区別しない場合には「マイコン76」と呼ぶ)と接続する。1つのマイコン76が1つのモータの駆動を担当する。運動制御プロセッサ70は、ロボット装置20の運動制御機能を担当し、マイコン76を制御して、モータに駆動電流を供給させる。
モーションセンサ72は、3軸加速度センサおよび3軸ジャイロセンサを有する。モーションセンサ72は、各関節部分に設けられて、関節部分の3次元空間における位置および姿勢を示すセンサデータおよび/または位置および姿勢の変化を示すセンサデータを運動制御プロセッサ70に提供してよい。なお実施例ではモーションセンサ72が画像センサ52の位置に設けられて、3次元空間における画像センサ52の位置および姿勢を示すセンサデータおよび/または位置および姿勢の変化を示すセンサデータを運動制御プロセッサ70に提供してよい。タッチセンサ74は、ロボット装置20の外表面に設けられて、ロボット装置20への接触を検出する。
運動制御プロセッサ70は、第3オペレーティングシステム(以下、「第3OS」とも呼ぶ)を実行して、ロボット装置20の可動部位の運動、つまりはモータの回転を制御する。運動制御プロセッサ70の役割は、アプリケーションプロセッサ30で算出される各モータの回転速度となるようにマイコン76をリアルタイムで管理することであり、さらに重要な役割は、ロボット装置20を転倒させないことである。そのため運動制御プロセッサ70は、アプリケーションプロセッサ30からの運動要求に応える前提として、モーションセンサ72のセンサデータを常時監視して、転倒防止のための姿勢制御アプリケーションを実施している。運動制御プロセッサ70は、たとえばロボット装置20が障害物にぶつかって転倒しそうなときには、直ちに転倒防止のためのモータ制御を実行する。
このように運動制御プロセッサ70によるモータ制御には即時性が要求される。そこで運動制御プロセッサ70において実行される第3OSは、リアルタイムOSであることが好ましい。リアルタイムOSとは、姿勢制御アプリケーションなどの特定のアプリケーションを高精度なタイミングで実行するように設計され、アプリケーションをリアルタイム処理可能なOSである。当然のことながら、第3OSは、第1OS、第2OSとも異なる。
以上のようにアプリケーションプロセッサ30、センサプロセッサ50、運動制御プロセッサ70が構成される。たとえば、追従対象であるオーナにロボット装置20を追従させるアプリケーションを実行する際、アプリケーションプロセッサ30は、オーナの空間内位置と、ロボット装置20とオーナの間に存在する障害物の空間内位置を知る必要がある。そこでアプリケーションプロセッサ30は、センサプロセッサ50に対して、画像センサ52の画像データに含まれるオーナおよび障害物の位置を特定することを指示する。以下、アプリケーションプロセッサ30の認識対象となるオーナおよび障害物を、単に「対象物」とも呼ぶ。
センサプロセッサ50は、画像センサ52から画像データを取得し、距離センサ54の奥行き情報およびイベント駆動型センサ56の動き情報を用いて、アプリケーションプロセッサ30により指示された画像解析を実施する。センサプロセッサ50は、画像センサ52を基点とするカメラ座標系における対象物の位置座標を含む画像解析結果を、アプリケーションプロセッサ30に提供する。この画像解析結果には、カメラ座標系における対象物の奥行き情報(距離情報)も含まれる。したがってアプリケーションプロセッサ30は、画像センサ52を基点としたカメラ座標系における対象物の3次元座標を特定できる。
運動制御プロセッサ70は、センサプロセッサ50に、画像センサ52の向きを特定するための姿勢情報を提供する。この姿勢情報は、画像センサ52の位置を特定するための情報を含んでよい。つまり姿勢情報は、画像センサ52が画像データを取得したときの空間内の光軸向きおよび位置を特定するための情報を含む。ロボット装置20において、各関節部分や主要部位の位置は、ロボット機体における基準位置を原点としたロボット座標系で定義される。運動制御プロセッサ70は、3次元実空間座標系(空間座標系)における基準位置の3次元座標を常に算出しており、ロボット座標系における画像センサ52の向きおよび位置を特定することで、画像センサ52の空間座標系における向きおよび位置を特定するための姿勢情報を生成する。センサプロセッサ50は画像解析結果を、画像センサ52の姿勢情報とともにアプリケーションプロセッサ30に送信する。
アプリケーションプロセッサ30は、姿勢情報を取得することで空間座標系における画像センサ52の向きおよび位置を特定し、画像解析結果を取得することでカメラ座標系における画像センサ52の3次元座標を特定する。これによりアプリケーションプロセッサ30は、対象物の空間座標系における3次元座標を取得する。
運動制御プロセッサ70は、センサプロセッサ50により解析される画像データを画像センサ52が取得したときの姿勢情報を、センサプロセッサ50に提供する。運動制御プロセッサ70は、各関節部分に設けられた各モーションセンサ72のセンサデータから、画像センサ52の姿勢情報を導出してよい。なお画像センサ52の設置場所にモーションセンサ72が設けられている場合、運動制御プロセッサ70は画像センサ52の姿勢情報を、当該モーションセンサ72のセンサデータを用いて導出してよい。
センサプロセッサ50は、解析に使用する画像データの撮影時刻を運動制御プロセッサ70に通知し、運動制御プロセッサ70は、撮影時刻と同一時刻の画像センサ52の姿勢情報をセンサプロセッサ50に提供する。運動制御プロセッサ70は、姿勢制御アプリケーションを常に実施しており、センサプロセッサ50における画像解析周期(たとえば1/60秒)よりも遙かに短いサンプリング周期で各関節部分および主要部位の位置座標を算出している。実施例の運動制御プロセッサ70は、このサンプリング周期で画像センサ52の姿勢情報を導出して時刻情報とともに記憶装置(図示せず)に記憶しておき、画像データの撮影時刻が通知されると、同一時刻の画像センサ52の姿勢情報を記憶装置から読み出して、センサプロセッサ50に提供してよい。
センサプロセッサ50は、画像データの解析中に、運動制御プロセッサ70から姿勢情報を提供される。センサプロセッサ50は、画像データの解析を終了すると、画像センサ52の姿勢情報をメタデータとして画像解析結果に付加し、画像解析結果をアプリケーションプロセッサ30に提供する。アプリケーションプロセッサ30は、画像解析結果と姿勢情報とから、空間内における対象物の位置を特定する。
実施例の運動制御プロセッサ70は、画像センサ52の姿勢情報を、アプリケーションプロセッサ30を経由することなく、センサプロセッサ50に提供する。つまり運動制御プロセッサ70は、センサプロセッサ50との間を接続するバス経由で、センサプロセッサ50に姿勢情報を直接提供する。
通常のアーキテクチャ設計では、メインプロセッサであるアプリケーションプロセッサ30が、他のプロセッサ同士の間のデータ伝送を中継するため、データ伝送時間は、アプリケーションプロセッサ30による中継時間を加算したものとなる。一方で制御システム4では、センサプロセッサ50と運動制御プロセッサ70とがバス接続されているため、運動制御プロセッサ70が画像センサ52の姿勢情報をセンサプロセッサ50に提供する場合、アプリケーションプロセッサ30を経由するよりも、センサプロセッサ50に直接提供した方がデータ伝送時間は短くなる。そこでリアルタイム性を高めるために、運動制御プロセッサ70は、画像センサ52の姿勢情報を、センサプロセッサ50に直接送信する。
センサプロセッサ50は、画像解析時、運動制御プロセッサ70に画像センサ52の姿勢情報の提供を要求してよい。このときセンサプロセッサ50は、解析で使用する画像データの撮影時刻を運動制御プロセッサ70に通知してよい。運動制御プロセッサ70は、姿勢情報の提供要求を受けると、画像センサ52の姿勢情報をセンサプロセッサ50に直接提供する。運動制御プロセッサ70は、画像データの撮影時刻を通知されると、その後は、センサプロセッサ50の画像解析周期に応じて、周期的に姿勢情報を提供してよい。たとえばセンサプロセッサ50の画像解析周期が1/60秒である場合、運動制御プロセッサ70は、通知された撮影時刻を起点として同じ周期で姿勢情報をセンサプロセッサ50に提供してよい。なお運動制御プロセッサ70は、センサプロセッサ50からの要求によらず、周期的に姿勢情報をセンサプロセッサ50に提供してもよい。
センサプロセッサ50は、姿勢情報をメタデータとして画像解析結果に付加し、画像解析結果をアプリケーションプロセッサ30に提供する。これによりアプリケーションプロセッサ30は、対象物の空間内位置を特定できる。なおセンサプロセッサ50は、画像解析結果を提供するが、画像解析で使用した画像データをアプリケーションプロセッサ30に提供しない。制御システム4では、センサプロセッサ50が画像データをアプリケーションプロセッサ30に提供しないことで、センサプロセッサ50からアプリケーションプロセッサ30の間の伝送遅延リスクを低減し、アプリケーションプロセッサ30に時間遅延なく画像解析結果を提供する。またセンサプロセッサ50が画像データをアプリケーションプロセッサ30に提供しないことで、個人情報を含む画像データがロボット装置20の外部に流出する事態を避けられる。
なおセンサプロセッサ50は画像解析結果を運動制御プロセッサ70に提供してもよい。たとえば運動制御プロセッサ70が所定の対象物のトラッキング機能を有する場合に、センサプロセッサ50による画像解析結果を用いて自律トラッキング行動を制御してよい。
以上のように制御システム4では、センサプロセッサ50および運動制御プロセッサ70を設けることで、アプリケーションプロセッサ30に負荷が集中する状況を回避する。またアプリケーションプロセッサ30、センサプロセッサ50、運動制御プロセッサ70のそれぞれが、担当する処理に適したOSを実行することで、制御システム4の全体としての即時性を向上する。
本発明を実施例をもとに説明した。実施例は例示であり、それらの各構成要素や各処理プロセスの組合せにいろいろな変形例が可能なこと、またそうした変形例も本発明の範囲にあることは当業者に理解されるところである。ロボット装置20は移動可能なロボットであればよく、2足歩行ロボットに限られない。またロボット装置20は、産業用ロボットなどであってもよい。
実施例では、運動制御プロセッサ70が画像センサ52の姿勢情報をセンサプロセッサ50に提供したが、アプリケーションプロセッサ30に提供してもよい。このときアプリケーションプロセッサ30は、姿勢情報をセンサプロセッサ50に転送せずに保持し、センサプロセッサ50から提供される画像解析結果に紐付ける。アプリケーションプロセッサ30は、画像解析結果に含まれる画像解析に使用した画像データの撮影時刻と、姿勢情報に含まれる姿勢情報の導出に使用したセンサデータの取得時刻を参照して、同じ時刻の画像解析結果および姿勢情報を紐付け、対象物の空間位置の特定に利用する。
実施例では、アプリケーションプロセッサ30、センサプロセッサ50および運動制御プロセッサ70がロボット装置20の筐体内に設けられる例について説明した。変形例では、センサプロセッサ50および運動制御プロセッサ70がロボット装置20の筐体内に設けられ、アプリケーションプロセッサ30が、ロボット装置20の筐体外に設けられてもよい。アプリケーションプロセッサ30の機能をロボット装置20の外部、たとえばサーバ装置10に設けることで、アプリケーションプロセッサ30に高い処理能力をもたせることができ、複雑な演算処理を行わせることが可能となる。
実施例では、センサプロセッサ50がアプリケーションプロセッサ30に画像データを提供しないことを説明したが、所定の動作モードをユーザが設定した場合には、画像データを提供可能としてもよい。
ロボット装置20のメイン電源がオフされている間、イベント駆動型センサ56、モーションセンサ72およびタッチセンサ74は、待機電力で駆動されていてもよい。イベント駆動型センサ56、モーションセンサ72およびタッチセンサ74の少なくとも1つが何らかの情報を検出したときに、メイン電源が自動オンされるように構成されてもよい。
1・・・エンターテインメントシステム、2・・・ネットワーク、3・・・AP、4・・・制御システム、10・・・サーバ装置、20・・・ロボット装置、30・・・アプリケーションプロセッサ、32・・・表示装置、34・・・スピーカ、36・・・通信装置、38・・・マイク、50・・・センサプロセッサ、52・・・画像センサ、54・・・距離センサ、56・・・イベント駆動型センサ、70・・・運動制御プロセッサ、72・・・モーションセンサ、74・・・タッチセンサ、76・・・マイコン。

Claims (11)

  1. 第1オペレーティングシステムを実行して、アプリケーションを処理するアプリケーションプロセッサと、
    前記アプリケーションプロセッサからの指示にもとづいて、第2オペレーティングシステムを実行して、画像センサで取得された画像データに含まれる対象物を認識するセンサプロセッサと、
    前記アプリケーションプロセッサからの運動要求にもとづいて、第3オペレーティングシステムを実行して、ロボットの可動部位の運動を制御する運動制御プロセッサと、を備え、前記アプリケーションプロセッサは、前記センサプロセッサおよび前記運動制御プロセッサのそれぞれと通信可能に接続されており、
    第1オペレーティングシステム、第2オペレーティングシステム、第3オペレーティングシステムは、それぞれ異なる種類のオペレーティングシステムである、
    ことを特徴とするロボット制御システム。
  2. 第2オペレーティングシステムは、画像解析用ニューラルネットワークを制御するオペレーティングシステムであり、
    第3オペレーティングシステムは、リアルタイムオペレーティングシステムである、
    ことを特徴とする請求項1に記載のロボット制御システム。
  3. 前記アプリケーションプロセッサは、処理するアプリケーションに応じて、実施するべき画像解析機能を前記センサプロセッサに指示する、
    ことを特徴とする請求項1または2に記載のロボット制御システム。
  4. 2つのプロセッサ間は、通信可能に接続されている、
    ことを特徴とする請求項1から3のいずれかに記載のロボット制御システム。
  5. 前記センサプロセッサは画像センサと接続し、
    前記運動制御プロセッサはモーションセンサと接続して、前記画像センサの向きを特定するための姿勢情報を導出する、
    ことを特徴とする請求項1から4のいずれかに記載のロボット制御システム。
  6. 前記センサプロセッサは画像センサおよび距離センサと接続する、
    ことを特徴とする請求項1から4のいずれかに記載のロボット制御システム。
  7. 前記センサプロセッサは画像センサおよびイベント駆動型センサと接続する、
    ことを特徴とする請求項1から4のいずれかに記載のロボット制御システム。
  8. 前記センサプロセッサは、画像解析機能を実現するニューラルネットワークのパラメータセットを最適化する学習機能を有する、
    ことを特徴とする請求項1から7のいずれかに記載のロボット制御システム。
  9. 前記センサプロセッサは、画像解析用のパラメータセットをニューラルネットワークに設定して画像解析機能を実現するものであって、前記パラメータセットは、前記アプリケーションプロセッサより提供される、
    ことを特徴とする請求項1から8のいずれかに記載のロボット制御システム。
  10. 前記アプリケーションプロセッサ、前記センサプロセッサ、前記運動制御プロセッサは、ロボット筐体内に設けられる、
    ことを特徴とする請求項1から9のいずれかに記載のロボット制御システム。
  11. 前記センサプロセッサ、前記運動制御プロセッサは、ロボット筐体内に設けられ、前記アプリケーションプロセッサは、ロボット筐体外に設けられる、
    ことを特徴とする請求項1から9のいずれかに記載のロボット制御システム。
JP2019011645A 2019-01-25 2019-01-25 ロボット制御システム Active JP7417356B2 (ja)

Priority Applications (5)

Application Number Priority Date Filing Date Title
JP2019011645A JP7417356B2 (ja) 2019-01-25 2019-01-25 ロボット制御システム
US17/423,936 US20220080599A1 (en) 2019-01-25 2020-01-20 Robot controlling system
PCT/JP2020/001714 WO2020153297A1 (ja) 2019-01-25 2020-01-20 ロボット制御システム
EP20744626.1A EP3915736A4 (en) 2019-01-25 2020-01-20 ROBOT CONTROL SYSTEM
CN202080009956.1A CN113396033B (zh) 2019-01-25 2020-01-20 机器人控制系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2019011645A JP7417356B2 (ja) 2019-01-25 2019-01-25 ロボット制御システム

Publications (2)

Publication Number Publication Date
JP2020116710A JP2020116710A (ja) 2020-08-06
JP7417356B2 true JP7417356B2 (ja) 2024-01-18

Family

ID=71735433

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2019011645A Active JP7417356B2 (ja) 2019-01-25 2019-01-25 ロボット制御システム

Country Status (5)

Country Link
US (1) US20220080599A1 (ja)
EP (1) EP3915736A4 (ja)
JP (1) JP7417356B2 (ja)
CN (1) CN113396033B (ja)
WO (1) WO2020153297A1 (ja)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP7309371B2 (ja) * 2019-01-25 2023-07-18 株式会社ソニー・インタラクティブエンタテインメント ロボット制御システム
JP7190919B2 (ja) * 2019-01-25 2022-12-16 株式会社ソニー・インタラクティブエンタテインメント 画像解析システム
JP7280860B2 (ja) * 2020-11-17 2023-05-24 株式会社ソニー・インタラクティブエンタテインメント 情報処理装置、システム、情報処理方法および情報処理プログラム
KR20230154700A (ko) * 2022-05-02 2023-11-09 삼성전자주식회사 사물까지의 거리를 산출하는 로봇 및 방법
KR102712432B1 (ko) * 2023-06-02 2024-10-02 라이프앤사이언스주식회사 교육용 로봇 제어기

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002239952A (ja) 2001-02-21 2002-08-28 Sony Corp ロボット装置、ロボット装置の行動制御方法、プログラム及び記録媒体
JP2009238233A (ja) 2000-12-28 2009-10-15 Coroware Inc 多用途ロボット制御システム
JP2014505934A (ja) 2010-12-30 2014-03-06 アイロボット コーポレイション 可動式ロボットシステム
JP2018043338A (ja) 2016-09-16 2018-03-22 ファナック株式会社 ロボットの動作プログラムを学習する機械学習装置,ロボットシステムおよび機械学習方法
JP2018126796A (ja) 2017-02-06 2018-08-16 セイコーエプソン株式会社 制御装置、ロボットおよびロボットシステム
JP2018535468A (ja) 2015-09-21 2018-11-29 レインボー ロボティックスRainbow Robotics Gpos連動型リアルタイムロボット制御システム及びこれを用いたリアルタイムデバイス制御システム

Family Cites Families (25)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4163183A (en) * 1975-10-28 1979-07-31 Unimation, Inc. Programmable automatic assembly system
US4370721A (en) * 1980-09-02 1983-01-25 Cincinnati Milacron Inc. Method for modifying programmed positions by using a programmably controlled surface sensing element
JPS5822411A (ja) * 1981-08-04 1983-02-09 Fanuc Ltd 工業用ロボツト制御方式
US4969108A (en) * 1988-04-08 1990-11-06 Cincinnati Milacron Inc. Vision seam tracking method and apparatus for a manipulator
JP2001322079A (ja) * 2000-05-15 2001-11-20 Sony Corp 脚式移動ロボット及びその動作教示方法
US7076332B2 (en) * 2002-01-18 2006-07-11 National Instruments Corporation System and method for invoking execution of a sequence of operations that includes motion control, machine vision, and data acquisition (DAQ) functionality
US7076322B2 (en) * 2002-03-29 2006-07-11 National Instruments Corporation System and method for satisfying move constraints when performing a motion control sequence
EP1552908A4 (en) * 2002-10-11 2008-10-15 Fujitsu Ltd DEVICE FOR CREATING A ROBOT CONTROL ALGORITHM, PROGRAM FOR CREATING A ROBOT CONTROL ALGORITHM, ROBOT CONTROL PROGRAM AND ROBOT
US6865441B2 (en) * 2002-12-19 2005-03-08 National Instruments Corporation Parallel trajectory generation, interpolation, and control in a motion control application
US6804580B1 (en) * 2003-04-03 2004-10-12 Kuka Roboter Gmbh Method and control system for controlling a plurality of robots
JP4587738B2 (ja) 2003-08-25 2010-11-24 ソニー株式会社 ロボット装置及びロボットの姿勢制御方法
JP4661074B2 (ja) * 2004-04-07 2011-03-30 ソニー株式会社 情報処理システム、情報処理方法、並びにロボット装置
KR20070075957A (ko) * 2006-01-17 2007-07-24 주식회사 로보스타 멀티 타스킹을 위한 타스크 기반 로봇 제어시스템
CA2719494C (en) * 2008-04-02 2015-12-01 Irobot Corporation Robotics systems
US8559699B2 (en) * 2008-10-10 2013-10-15 Roboticvisiontech Llc Methods and apparatus to facilitate operations in image based systems
US8880221B2 (en) * 2011-03-21 2014-11-04 Honda Motor Co., Ltd. Damage reduction control for humanoid robot fall
JP5751069B2 (ja) * 2011-07-28 2015-07-22 株式会社ニコン 電子装置
JP5943676B2 (ja) * 2012-03-30 2016-07-05 株式会社デンソーウェーブ ロボットの制御システム及びエンコーダシステム
WO2014183042A1 (en) * 2013-05-10 2014-11-13 Cnh Industrial America Llc Control architecture for multi-robot system
US9517767B1 (en) * 2015-11-04 2016-12-13 Zoox, Inc. Internal safety systems for robotic vehicles
JP6880982B2 (ja) * 2017-04-21 2021-06-02 セイコーエプソン株式会社 制御装置およびロボットシステム
KR102371665B1 (ko) * 2018-06-22 2022-03-08 모벤시스 주식회사 모션 제어 프로그램, 모션 제어 방법 및 모션 제어 장치
SG11202010343RA (en) * 2018-06-22 2020-11-27 Soft Servo Systems Inc Motion control program, motion control method, and motion control device
US11300939B2 (en) * 2018-06-22 2022-04-12 Soft Servo Systems, Inc. Motion control program, motion control method, and motion control device
US11498211B2 (en) * 2019-12-30 2022-11-15 Intrinsic Innovation Llc Composability framework for robotic control system

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009238233A (ja) 2000-12-28 2009-10-15 Coroware Inc 多用途ロボット制御システム
JP2002239952A (ja) 2001-02-21 2002-08-28 Sony Corp ロボット装置、ロボット装置の行動制御方法、プログラム及び記録媒体
JP2014505934A (ja) 2010-12-30 2014-03-06 アイロボット コーポレイション 可動式ロボットシステム
JP2018535468A (ja) 2015-09-21 2018-11-29 レインボー ロボティックスRainbow Robotics Gpos連動型リアルタイムロボット制御システム及びこれを用いたリアルタイムデバイス制御システム
JP2018043338A (ja) 2016-09-16 2018-03-22 ファナック株式会社 ロボットの動作プログラムを学習する機械学習装置,ロボットシステムおよび機械学習方法
JP2018126796A (ja) 2017-02-06 2018-08-16 セイコーエプソン株式会社 制御装置、ロボットおよびロボットシステム

Also Published As

Publication number Publication date
WO2020153297A1 (ja) 2020-07-30
CN113396033B (zh) 2024-08-16
CN113396033A (zh) 2021-09-14
EP3915736A1 (en) 2021-12-01
JP2020116710A (ja) 2020-08-06
EP3915736A4 (en) 2022-10-12
US20220080599A1 (en) 2022-03-17

Similar Documents

Publication Publication Date Title
JP7417356B2 (ja) ロボット制御システム
JP6496396B2 (ja) 線形予測位置及び速度コントローラに基づいた全方向車輪を有する人間型ロボット
KR101942167B1 (ko) 전방향 휠을 가지고 선형 예측 위치 및 속도 제어기를 기초한 휴머노이드 로봇
KR100898435B1 (ko) 로봇 장치 및 그 제어 방법
KR100941209B1 (ko) 로봇 장치, 얼굴 인식 방법 및 얼굴 인식 장치
JP2005508761A (ja) ロボット知能のアーキテクチャ
JP2004298977A (ja) 行動制御装置、行動制御方法及び行動制御プログラム、並びに移動型ロボット装置
JP2003266345A (ja) 経路計画装置、経路計画方法及び経路計画プログラム並びに移動型ロボット装置
US11992945B2 (en) System and methods for training robot policies in the real world
WO2020153299A1 (ja) ロボット制御システム
Grewal et al. Autonomous wheelchair navigation in unmapped indoor environments
WO2020153298A1 (ja) 画像解析システム
KR20210023367A (ko) 로봇 및 그의 제어 방법
JP2003271958A (ja) 画像処理方法、その装置、そのプログラム、その記録媒体及び画像処理装置搭載型ロボット装置
JP5539001B2 (ja) 制御装置
JP5638283B2 (ja) 制御装置
JP5539000B2 (ja) 制御装置
Motoc et al. Zero moment point/Inverted pendulum-based walking algorithm for the NAO robot
WO2024203004A1 (ja) 自律移動体及び動作制御方法
Moutinho et al. An expected perception architecture using visual 3d reconstruction for a humanoid robot

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20210217

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20220419

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20220613

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20221101

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20221220

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20230418

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20230905

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20231030

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20240105

R150 Certificate of patent or registration of utility model

Ref document number: 7417356

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150