JP7276466B2 - 情報処理装置、制御方法及びプログラム - Google Patents

情報処理装置、制御方法及びプログラム Download PDF

Info

Publication number
JP7276466B2
JP7276466B2 JP2021541933A JP2021541933A JP7276466B2 JP 7276466 B2 JP7276466 B2 JP 7276466B2 JP 2021541933 A JP2021541933 A JP 2021541933A JP 2021541933 A JP2021541933 A JP 2021541933A JP 7276466 B2 JP7276466 B2 JP 7276466B2
Authority
JP
Japan
Prior art keywords
information
abstract model
robot
task
abstract
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
JP2021541933A
Other languages
English (en)
Other versions
JPWO2021038844A1 (ja
JPWO2021038844A5 (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.)
NEC Corp
Original Assignee
NEC 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 NEC Corp filed Critical NEC Corp
Publication of JPWO2021038844A1 publication Critical patent/JPWO2021038844A1/ja
Publication of JPWO2021038844A5 publication Critical patent/JPWO2021038844A5/ja
Application granted granted Critical
Publication of JP7276466B2 publication Critical patent/JP7276466B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B13/00Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion
    • G05B13/02Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion electric
    • G05B13/04Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion electric involving the use of models or simulators
    • G05B13/042Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion electric involving the use of models or simulators in which a parameter or coefficient is automatically adjusted to optimise the performance
    • 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/1661Programme controls characterised by programming, planning systems for manipulators characterised by task planning, object-oriented languages
    • 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
    • B25J13/081Touching devices, e.g. pressure-sensitive
    • B25J13/082Grasping-force detectors
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B13/00Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion
    • G05B13/02Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion electric
    • G05B13/0205Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion electric not using a model or a simulator of the controlled system
    • G05B13/024Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion electric not using a model or a simulator of the controlled system in which a parameter or coefficient is automatically adjusted to optimise the performance
    • 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/40014Gripping workpiece to place it in another place
    • 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/40108Generating possible sequence of steps as function of timing and conflicts
    • 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/40114From vision detected initial and user given final state, generate tasks

Description

本発明は、ロボットに作業させるタスクに関する処理を行う情報処理装置、制御方法及び記憶媒体の技術分野に関する。
ロボットに作業させるタスクが与えられた場合に、当該タスクを実行するために必要なロボットの制御を行う制御手法が提案されている。例えば、特許文献1には、ハンドを有するロボットにより複数の物品を把持して容器に収容する場合に、ハンドが物品を把持する順序の組み合わせを決定し、組み合わせ毎に算出した指標に基づき、収容する物品の順序を決定するロボット制御装置が開示されている。
特開2018-51684号公報
ロボットにタスクを実行させる制御入力を決定する場合、与えられたタスク及び作業環境に応じたダイナミクスのモデルを設定する必要があるが、このようなモデルを人手により指定するのは手間がかかるという問題がある。また、ロボット全体の詳細なダイナミクスを考慮した場合、制御入力を決定するための最適化処理が煩雑化するという問題も生じる。一方、特許文献1には、これらの問題を解決するダイナミクスのモデルの設定方法については、何ら開示されていない。
本発明の目的は、上述した課題を鑑み、ロボットの作業空間におけるダイナミクスのモデルを好適に生成することが可能な情報処理装置、制御方法及び記憶媒体を提供することを主な課題とする。
情報処理装置の一の態様は、情報処理装置であって、タスクを実行するロボットの作業空間における現実のダイナミクスをハイブリッドシステムにより抽象化した抽象モデルと、前記ハイブリッドシステムにおけるダイナミクスの切り替わりの条件と、を少なくとも示す抽象モデル情報を取得する抽象モデル情報取得手段と、前記作業空間における計測結果を示す計測情報を取得する計測情報取得手段と、前記抽象モデル情報と、前記計測情報とに基づき、前記抽象モデルを生成する抽象モデル生成手段と、を有する。
制御方法の一の態様は、情報処理装置が実行する制御方法であって、タスクを実行するロボットの作業空間における現実のダイナミクスをハイブリッドシステムにより抽象化した抽象モデルと、前記ハイブリッドシステムにおけるダイナミクスの切り替わりの条件と、を少なくとも示す抽象モデル情報を取得し、前記作業空間における計測結果を示す計測情報を取得し、前記抽象モデル情報と、前記計測情報とに基づき、前記抽象モデルを生成する
プログラムの一の態様は、タスクを実行するロボットの作業空間における現実のダイナミクスをハイブリッドシステムにより抽象化した抽象モデルと、前記ハイブリッドシステムにおけるダイナミクスの切り替わりの条件と、を少なくとも示す抽象モデル情報を取得する抽象モデル情報取得手段と、前記作業空間における計測結果を示す計測情報を取得する計測情報取得手段と、前記抽象モデル情報と、前記計測情報とに基づき、前記抽象モデルを生成する抽象モデル生成手段としてコンピュータを機能させプログラムである。
本発明によれば、ロボットの作業空間におけるダイナミクスを抽象化したモデルを好適に生成することができる。
ロボット制御システムの構成を示す。 情報処理装置のハードウェア構成を示す。 アプリケーション情報のデータ構造の一例を示す。 情報処理装置の機能ブロックの一例である。 作業空間の俯瞰図を示す。 目標論理式生成部の機能的なブロック構成図である。 タスク入力画面の第1表示例を示す。 タスク入力画面の第2表示例を示す。 ロボット制御処理の概要を示すフローチャートの一例である。 図9のステップS13の処理の詳細を表すフローチャートの一例である。 図9のフローチャートが示すロボット制御処理の変形例を示すフローチャートの一例である。 第2実施形態における情報処理装置の概略構成図である。 第3実施形態における情報処理装置の概略構成図である。
以下、図面を参照しながら、情報処理装置、制御方法及び記憶媒体の実施形態について説明する。
<第1実施形態>
(1)システム構成
図1は、第1実施形態に係るロボット制御システム100の構成を示す。ロボット制御システム100は、主に、情報処理装置1と、入力装置2と、表示装置3と、記憶装置4と、ロボット5と、計測装置7と、を備える。
情報処理装置1は、ロボット5に実行させるタスク(「目的タスク」とも呼ぶ。)が指定された場合に、ロボット5が受付可能な単純なタスクのタイムステップ(時間刻み)毎のシーケンスに目的タスクを変換し、当該シーケンスをロボット5に供給する。以後では、ロボット5が受付可能な単純なタスク(コマンド)を、「サブタスク」とも呼ぶ。
情報処理装置1は、入力装置2、表示装置3及び記憶装置4と電気的に接続している。例えば、情報処理装置1は、入力装置2から、目的タスクを指定するための入力信号「S1」を受信する。また、情報処理装置1は、表示装置3に対し、ロボット5に実行させるタスクに関する表示を行うための表示信号「S2」を送信する。また、情報処理装置1は、ロボット5の制御に関する制御信号「S3」をロボット5に送信する。例えば、情報処理装置1は、制御信号S3として、ロボットハンド52毎に実行させるサブタスクのシーケンス(「サブタスクシーケンス」とも呼ぶ。)を、ロボット5に送信する。さらに、情報処理装置1は、計測装置7から出力信号「S4」を受信する。
入力装置2は、ユーザの入力を受け付けるインターフェースであり、例えば、タッチパネル、ボタン、キーボード、音声入力装置などが該当する。入力装置2は、ユーザの入力に基づき生成した入力信号S1を情報処理装置1へ供給する。
表示装置3は、例えば、ディスプレイ、プロジェクタ等であり、情報処理装置1から供給される表示信号S2に基づき、所定の表示を行う。後述するように、例えば、表示装置3は、表示信号S2に基づき、目的タスクに関する情報を指定する入力画面(「タスク入力画面」とも呼ぶ。)を表示する。
記憶装置4は、アプリケーション情報記憶部41を有する。アプリケーション情報記憶部41は、目的タスクからサブタスクのシーケンスを生成するために必要なアプリケーション情報を記憶する。アプリケーション情報の詳細は後述する。記憶装置4は、情報処理装置1に接続又は内蔵されたハードディスクなどの外部記憶装置であってもよく、フラッシュメモリなどの記憶媒体であってもよい。また、記憶装置4は、情報処理装置1とデータ通信を行うサーバ装置であってもよい。この場合、記憶装置4は、複数のサーバ装置から構成されてもよい。
ロボット5は、情報処理装置1から送信された制御信号S3に基づき動作を行う。図1に示すロボット5は、一例として、物を把持可能な複数(2つ)のロボットアーム52を制御対象として有し、作業空間6内に存在する対象物61のピックアンドプレイス(摘み上げて移動させる処理)を行う。ロボット5は、ロボット制御部51を有する。ロボット制御部51は、制御信号S3によりロボットアーム52毎に指定されたサブタスクシーケンスに基づき、各ロボットアーム52の動作制御を行う。
作業空間6は、ロボット5が目的タスクを実行する作業空間であり、図1では、一例として、ロボット5による作業対象となる複数の対象物61と、ロボット5の作業において障害となる障害物62とが存在している。
計測装置7は、作業空間6内を計測対象範囲として計測を行うカメラ、測域センサ、ソナーまたはこれらの組み合わせとなる1又は複数の外界センサである。計測装置7は、生成した出力信号S4を情報処理装置1に供給する。出力信号S4は、作業空間6内を撮影した画像データであってもよく、作業空間6内の物体の位置を示す点群データであってもよい。
なお、図1に示すロボット制御システム100の構成は一例であり、当該構成に種々の変更が行われてもよい。例えば、ロボット5は複数台存在してもよい。また、ロボット5は、ロボットアーム52を1つのみ又は3つ以上備えてもよい。これらの場合であっても、情報処理装置1は、目的タスクに基づき、ロボット5の制御対象毎に実行すべきサブタスクシーケンスを生成し、当該サブタスクシーケンスを示す制御信号S3を、対象の制御対象を有するロボット5に送信する。また、計測装置7は、ロボット5の一部であってもよい。また、ロボット制御部51は、ロボット5とは別体に構成されてもよい。また、入力装置2及び表示装置3は、夫々、情報処理装置1に内蔵されるなどの態様により、情報処理装置1と同一の装置(例えばタブレット型端末)として構成されてもよい。また、情報処理装置1は、複数の装置から構成されてもよい。この場合、情報処理装置1を構成する複数の装置は、予め割り当てられた処理を実行するために必要な情報の授受を、これらの複数の装置間において行う。また、情報処理装置1の少なくとも一部の機能を、ロボット5が有してもよい。
(2)情報処理装置のハードウェア構成
図2は、情報処理装置1のハードウェア構成を示す。情報処理装置1は、ハードウェアとして、プロセッサ11と、メモリ12と、インターフェース13とを含む。プロセッサ11、メモリ12及びインターフェース13は、データバス19を介して接続されている。
プロセッサ11は、メモリ12に記憶されているプログラムを実行することにより、所定の処理を実行する。プロセッサ11は、CPU(Central Processing Unit)、GPU(Graphics Processing Unit)などのプロセッサである。
メモリ12は、RAM(Random Access Memory)、ROM(Read Only Memory)などの各種のメモリにより構成される。また、メモリ12には、情報処理装置1が所定の処理を実行するためのプログラムが記憶される。また、メモリ12は、作業メモリとして使用され、記憶装置4から取得した情報等を一時的に記憶する。なお、メモリ12は、記憶装置4として機能してもよい。同様に、記憶装置4は、情報処理装置1のメモリ12として機能してもよい。なお、情報処理装置1が実行するプログラムは、メモリ12以外の記憶媒体に記憶されてもよい。
インターフェース13は、情報処理装置1と他の装置とを電気的に接続するためのインターフェースである。例えば、インターフェース13は、情報処理装置1と入力装置2とを接続するためのインターフェース、情報処理装置1と表示装置3とを接続するためのインターフェース、及び情報処理装置1と記憶装置4とを接続するためのインターフェースを含む。また、インターフェース13は、情報処理装置1とロボット5とを接続するためのインターフェース、及び情報処理装置1と計測装置7とを接続するためのインターフェースを含む。これらの接続は、有線接続であってもよく、無線接続であってもよい。例えば、情報処理装置1と記憶装置4とを接続するためのインターフェースは、プロセッサ11の制御に基づき記憶装置4とデータの送受信を有線又は無線により行うための通信インターフェースであってもよい。他の例では、情報処理装置1と記憶装置4とは、ケーブル等により接続されてもよい。この場合、インターフェース13は、記憶装置4とデータの授受を行うためのUSB、SATA(Serial AT Attachment)などに準拠したインターフェースを含む。
なお、情報処理装置1のハードウェア構成は、図2に示す構成に限定されない。例えば、情報処理装置1は、入力装置2、表示装置3及び記憶装置4の少なくとも一方を含んでもよい。また、情報処理装置1は、スピーカなどの音出力装置と接続又は内蔵してもよい。これらの場合、情報処理装置1は、入力機能及び出力機能が本体と一体となったタブレット型端末等であってもよい。
(3)アプリケーション情報
次に、アプリケーション情報記憶部41が記憶するアプリケーション情報のデータ構造について説明する。
図3は、アプリケーション情報記憶部41に記憶されるアプリケーション情報のデータ構造の一例を示す。図3に示すように、アプリケーション情報記憶部41は、抽象状態指定情報I1と、制約条件情報I2と、動作限界情報I3と、サブタスク情報I4と、抽象モデル情報I5と、物体モデル情報I6とを含む。
抽象状態指定情報I1は、サブタスクシーケンスの生成にあたり定義する必要がある抽象状態を指定する情報である。この抽象状態は、作業空間6内における物体の抽象的な状態であって、後述する目標論理式において使用する命題として定められる。例えば、抽象状態指定情報I1は、目的タスクの種類毎に、定義する必要がある抽象状態を指定する。なお、目的タスクは、例えば、ピックアンドプレイス、移動物体の捕獲、ねじ回しなどの種々の種類のタスクであってもよい。
制約条件情報I2は、目的タスクを実行する際の制約条件を示す情報である。制約条件情報I2は、例えば、目的タスクがピックアンドプレイスの場合、障害物にロボット5(ロボットアーム52)が接触してはいけないという制約条件、ロボットアーム52同士が接触してはいけないという制約条件などを示す。なお、制約条件情報I2は、目的タスクの種類毎に夫々適した制約条件を記録した情報であってもよい。
動作限界情報I3は、情報処理装置1により制御が行われるロボット5の動作限界に関する情報を示す。動作限界情報I3は、例えば、図1に示すロボット5の場合には、ロボットアーム52のリーチングの最高速度等を規定する情報である。
サブタスク情報I4は、ロボット5が受付可能なサブタスクの情報を示す。例えば、目的タスクがピックアンドプレイスの場合には、サブタスク情報I4は、ロボットアーム52の移動であるリーチングと、ロボットアーム52による把持であるグラスピングとをサブタスクとして規定する。サブタスク情報I4は、目的タスクの種類毎に使用可能なサブタスクの情報を示すものであってもよい。
抽象モデル情報I5は、作業空間6におけるダイナミクスを抽象化したモデル(「抽象モデル」とも呼ぶ。)に関する情報である。抽象モデルは、後述するように、現実のダイナミクスをハイブリッドシステムにより抽象化したモデルにより表されている。抽象モデル情報I5は、上述のハイブリッドシステムにおけるダイナミクスの切り替わりの条件を示す情報を含む。切り替わりの条件は、例えば、図1に示すピックアンドプレイスの場合、対象物61はロボットアーム52の手先により把持されなければ移動できないという条件などが該当する。抽象モデル情報I5は、目的タスクの種類毎に適した抽象モデルに関する情報を有している。
物体モデル情報I6は、計測装置7が生成した出力信号S4から認識すべき各物体(図1の例では、ロボットアーム52、対象物61、及び障害物62など)の物体モデルに関する情報である。上述の物体モデルは、例えば、ニューラルネットワークなどの機械学習における学習モデルである。この学習モデルは、例えば、出力信号S4により計測対象となった物体の種類及び位置等を出力するように学習され、学習済みの学習モデルのパラメータが物体モデル情報I6に記録される。他の例では、物体モデル情報I6は、認識すべき物体のCADデータを含んでもよい。
なお、アプリケーション情報記憶部41は、上述した情報の他、サブタスクシーケンスの生成処理に関する種々の情報を記憶してもよい。例えば、アプリケーション情報記憶部41は、ロボット5自身の動的モデル、抽象化されたロボットアーム52の動的モデル、及びロボットアーム52により対象物61を把持する所要時間を算出する簡易モデルなどを含んでもよい。
(4)機能ブロック
図4は、情報処理装置1の機能ブロックの一例である。情報処理装置1のプロセッサ11は、機能的には、抽象状態設定部31と、目標論理式生成部32と、タイムステップ論理式生成部33と、抽象モデル生成部34と、制御入力生成部35と、サブタスクシーケンス生成部36とを有する。なお、図4では、各ブロック間で授受が行われるデータの一例が示されているが、これに限定されない。
抽象状態設定部31は、計測装置7から供給される出力信号S4に基づき、作業空間6内における計測結果を示す情報(「計測情報Im」とも呼ぶ。)を生成する。具体的には、抽象状態設定部31は、出力信号S4を受信した場合に、物体モデル情報I6等を参照し、目的タスクの実行に関連する作業空間6内の各物体の種類(対象物61、障害物62等の分類)及び位置等を認識し、この認識結果を、計測情報Imとして生成する。抽象状態設定部31は、生成した計測情報Imを、抽象モデル生成部34に供給する。
また、抽象状態設定部31は、上述の計測情報Im及びアプリケーション情報記憶部41から取得した抽象状態指定情報I1等に基づき、目的タスクを実行する際に考慮する必要がある作業空間6内の抽象状態を設定する。この場合、抽象状態設定部31は、各抽象状態に対し、論理式で表すための命題を定義する。抽象状態設定部31は、設定した抽象状態を示す情報(「抽象状態設定情報Is」とも呼ぶ。)を目標論理式生成部32に供給する。
目標論理式生成部32は、目的タスクに関する入力信号S1を入力装置2から受信した場合に、抽象状態設定情報Isに基づき、入力信号S1が示す目的タスクを、最終的な達成状態を表す時相論理の論理式(「目標論理式Ltag」とも呼ぶ。)に変換する。この場合、目標論理式生成部32は、アプリケーション情報記憶部41から制約条件情報I2を参照することで、目的タスクの実行において満たすべき制約条件を、目標論理式Ltagに付加する。そして、目標論理式生成部32は、生成した目標論理式Ltagを、タイムステップ論理式生成部33に供給する。また、目標論理式生成部32は、目的タスクに関する入力を受け付けるタスク入力画面を表示するための表示信号S2を生成し、当該表示信号S2を表示装置3に供給する。
タイムステップ論理式生成部33は、目標論理式生成部32から供給された目標論理式Ltagを、各タイムステップでの状態を表した論理式(「タイムステップ論理式Lts」とも呼ぶ。)に変換する。そして、タイムステップ論理式生成部33は、生成したタイムステップ論理式Ltsを、制御入力生成部35に供給する。
抽象モデル生成部34は、計測情報Imと、アプリケーション情報記憶部41が記憶する抽象モデル情報I5とに基づき、作業空間6における現実のダイナミクスを抽象化した抽象モデル「Σ」を生成する。この場合、抽象モデル生成部34は、対象のダイナミクスを連続ダイナミクスと離散ダイナミクスとが混在したハイブリッドシステムとみなし、ハイブリッドシステムに基づく抽象モデルΣを生成する。抽象モデルΣの生成方法については後述する。抽象モデル生成部34は、生成した抽象モデルΣを、制御入力生成部35へ供給する。
制御入力生成部35は、タイムステップ論理式生成部33から供給されるタイムステップ論理式Ltsと、抽象モデル生成部34から供給される抽象モデルΣとを満たし、評価関数を最適化するタイムステップ毎のロボット5への制御入力を決定する。そして、制御入力生成部35は、ロボット5へのタイムステップ毎の制御入力を示す情報(「制御入力情報Ic」とも呼ぶ。)を、サブタスクシーケンス生成部36へ供給する。
サブタスクシーケンス生成部36は、制御入力生成部35から供給される制御入力情報Icと、アプリケーション情報記憶部41が記憶するサブタスク情報I4とに基づき、サブタスクシーケンスを生成し、サブタスクシーケンスを示す制御信号S3を、ロボット5へ供給する。
(5)ブロック毎の処理詳細
次に、図4に示す機能ブロックごとの処理の詳細について、具体例を用いて説明する。
(5-1)抽象状態設定部
抽象状態設定部31は、計測装置7から供給される出力信号S4に基づき、作業空間6内の物体の計測結果(種類、位置等)を示す計測情報Imを生成すると共に、作業空間6内の抽象状態を設定する。この場合、抽象状態設定部31は、抽象状態指定情報I1を参照し、作業空間6内において設定すべき抽象状態を認識する。なお、作業空間6内において設定すべき抽象状態は、目的タスクの種類によって異なる。よって、目的タスクの種類毎に設定すべき抽象状態が抽象状態指定情報I1に規定されている場合には、抽象状態設定部31は、入力信号S1により指定された目的タスクに対応する抽象状態指定情報I1を参照し、設定すべき抽象状態を認識する。
図5は、作業空間6の俯瞰図を示す。図5に示す作業空間6には、2つのロボットアーム52a、52bと、4つの対象物61a~61dと、障害物62とが存在している。
この場合、抽象状態設定部31は、まず、計測装置7から受信した出力信号S4を、物体モデル情報I6等を用いて解析することで、対象物61の状態、障害物62の存在範囲、ゴール地点として設定される領域Gの存在範囲等を認識する。ここでは、抽象状態設定部31は、対象物61a~61dの各々の中心の位置ベクトル「x」~「x」を、対象物61a~61dの位置として認識する。また、抽象状態設定部31は、対象物を把持するロボットハンド53aの位置ベクトル「xr1」と、ロボットハンド53bの位置ベクトル「xr2」とを、ロボットアーム52aとロボットアーム52bの位置として認識する。同様に、抽象状態設定部31は、対象物61a~61dの姿勢(図5の例では対象物が球状のため不要)等、障害物62の存在範囲、領域Gの存在範囲等を認識する。なお、抽象状態設定部31は、例えば、障害物62を直方体とみなし、領域Gを矩形とみなす場合には、障害物62及び領域Gの各頂点の位置ベクトルを認識する。そして、抽象状態設定部31は、出力信号S4に基づくこれらの認識結果を、計測情報Imとして生成する。
また、抽象状態設定部31は、抽象状態指定情報I1を参照することで、目的タスクにおいて定義すべき抽象状態を決定する。この場合、抽象状態設定部31は、計測情報Imに基づき、作業空間6内に存在する物体及び領域を認識し、当該物体及び領域に関する認識結果(例えば物体及び領域の種類毎の個数)と制約条件情報I2とに基づき、抽象状態を示す命題を定める。
図5の例では、抽象状態設定部31は、計測情報Imにより特定される対象物61a~61dに対し、夫々識別ラベル「1」~「4」を付す。また、抽象状態設定部31は、対象物「i」(i=1~4)が最終的に載置されるべき目標地点である領域G(破線枠63参照)内に存在するという命題「g」を定義する。また、抽象状態設定部31は、計測情報Imにより特定される障害物62に対して識別ラベル「O」を付し、対象物iが障害物Oに干渉しているという命題「o」を定義する。さらに、抽象状態設定部31は、ロボットアーム52同士が干渉するという命題「h」を定義する。
このように、抽象状態設定部31は、抽象状態指定情報I1を参照することで、定義すべき抽象状態を認識し、当該抽象状態を表す命題(上述の例ではg、o、h)を、対象物61の数、ロボットアーム52の数、障害物62の数等に応じてそれぞれ定義する。そして、抽象状態設定部31は、抽象状態を表す命題を示す情報を、抽象状態設定情報Isとして目標論理式生成部32に供給する。
(5-2)目標論理式生成部
図6は、目標論理式生成部32の機能的なブロック構成図である。図6に示すように、目標論理式生成部32は、機能的には、入力受付部321と、論理式変換部322と、制約条件情報取得部323と、制約条件付加部324とを有する。
入力受付部321は、目的タスクの種類と、前記ロボットの作業対象となる対象物の最終状態と、を指定する入力信号S1の入力を受け付ける。また、入力受付部321は、これらの入力を受け付けるタスク入力画面の表示信号S2を、表示装置3に送信する。
論理式変換部322は、入力信号S1により指定された目的タスクを、時相論理を用いた論理式に変換する。なお、自然言語で表されたタスクを論理式に変換する方法は、種々の既存技術が存在する。例えば、論理式変換部322は、図5の例において、「最終的に対象物2が領域Gに存在する」という目的タスクが与えられたとする。この場合、論理式変換部322は、目的タスクを線形論理式(LTL:Linear Temporal Logic)の「eventually」に相当する演算子「◇」と、抽象状態設定部31により定義された命題「g」と用いて、論理式「◇g」を生成する。なお、論理式変換部322は、演算子「◇」以外の任意の時相論理の演算子(論理積「∧」、論理和「∨」、否定「¬」、論理包含「⇒」、always「□」、next「○」、until「U」等)を用いて論理式を表現してもよい。また、線形時相論理に限らず、MTL(Metric Temporal Logic)やSTL(Signal Temporal Logic)などの任意の時相論理を用いて論理式を表現してもよい。
制約条件情報取得部323は、アプリケーション情報記憶部41から制約条件情報I2を取得する。なお、タスクの種類毎に制約条件情報I2がアプリケーション情報記憶部41に記憶されている場合には、制約条件情報取得部323は、入力信号S1により指定された目的タスクの種類に対応する制約条件情報I2を、アプリケーション情報記憶部41から取得する。
制約条件付加部324は、制約条件情報取得部323が取得した制約条件情報I2が示す制約条件を、論理式変換部322が生成した論理式に付加することで、目標論理式Ltagを生成する。
例えば、ピックアンドプレイスに対応する制約条件として、「ロボットアーム52同士が干渉しない」、「対象物iは障害物Oに干渉しない」の2つが制約条件情報I2に含まれていた場合、制約条件付加部324は、これらの制約条件を論理式に変換する。具体的には、制約条件付加部324は、図5の説明において抽象状態設定部31により定義された命題「o」及び命題「h」を用いて、上述の2つの制約条件を、夫々以下の論理式に変換する。
□¬h
□¬o
よって、この場合、制約条件付加部324は、「最終的に対象物2が領域Gに存在する」という目的タスクに対応する論理式「◇g」に、これらの制約条件の論理式を付加することで、以下の目標論理式Ltagを生成する。
(◇g)∧(□¬h)∧(∧□¬o
なお、実際には、ピックアンドプレイスに対応する制約条件は、上述した2つに限られず、「ロボットアーム52が障害物Oに干渉しない」、「複数のロボットアーム52が同じ対象物を掴まない」、「対象物同士が接触しない」などの制約条件が存在する。このような制約条件についても同様に、制約条件情報I2に記憶され、目標論理式Ltagに反映される。
次に、タスク入力画面での目的タスクに関する入力例について説明する。
図7は、タスク入力画面の第1表示例を示す。入力受付部321は、表示信号S2を生成し、当該表示信号S2を表示装置3に送信することで、表示装置3に図7に示すタスク入力画面を表示させている。図7に示すタスク入力画面は、主に、タスク種類指定欄15と、画像表示欄16と、見込み作業時間指定欄17と、算出作業時間表示領域18と、決定ボタン20とを有する。
入力受付部321は、タスク種類指定欄15において、目的タスクの種類を指定する入力を受け付ける。ここでは、一例として、タスク種類指定欄15はプルダウンメニュー形式の入力欄であり、入力受付部321は、受付可能な目的タスクの種類の候補を、タスク種類指定欄15において選択可能に一覧表示する。ここでは、タスク種類指定欄15には、ピックアンドプレイスが目的タスクの種類として指定されている。
また、入力受付部321は、画像表示欄16において、物体モデル情報I6に記憶された対象物61のCADモデルなどを用い、作業空間6内の環境を再現したCAD画像を表示する。この場合、入力受付部321は、例えば、抽象状態設定部31が生成した計測情報Imと、CADデータを記録した物体モデル情報I6とに基づき、作業空間6内の環境を再現したCAD画像を生成する。
そして、入力受付部321は、画像表示欄16上でのタッチパネル操作又はマウスによるドラッグアンドドロップ操作等に基づき、各対象物61の最終的な位置を指定する入力を受け付ける。そし、入力受付部321は、タスク種類指定欄15及び画像表示欄16での入力を示す入力信号S1に基づき、目的タスクを認識する。
好適には、入力受付部321は、各対象物61に対する最終位置の入力を画像表示欄16において受け付けた場合、ロボット5が目的タスクを実行するアニメーションを画像表示欄16上に表示してもよい。言い換えると、入力受付部321は、指定された最終位置に対象物61がロボット5により運ばれるまでの作業空間6内の変化を示すアニメーションを、画像表示欄16上に表示してもよい。この場合、入力受付部321は、例えば、目的タスクを変換した目標論理式Ltagに基づき得られる制御入力情報Ic又はサブタスクシーケンスに基づき、タイムステップ毎のロボット5の動作及び各対象物61の位置変化等を認識する。そして、入力受付部321は、この認識結果に基づき生成したアニメーションを、画像表示欄16上に表示する。
なお、入力受付部321は、画像表示欄16上において、作業空間6のCAD画像を表示する代わりに、作業空間6の俯瞰図を表す2次元画像を表示してもよい。この場合においても、入力受付部321は、画像表示欄16上でのタッチパネル操作又はマウスによるドラッグアンドドロップ操作等に基づき、各対象物61の最終位置の指定を好適に受け付けることが可能である。
また、入力受付部321は、見込み作業時間指定欄17において、目的タスクの作業の見込み時間の入力を受け付ける。好適には、入力受付部321は、見込み作業時間指定欄17で指定された見込み時間を、タイムステップ論理式生成部33に供給するとよい。この場合、タイムステップ論理式生成部33は、通知された見込み時間から、目標タイムステップ数を好適に決定することができる。
また、入力受付部321は、算出作業時間表示領域18に、情報処理装置1が算出した目的タスクの作業の見込み時間を表示する。この場合、入力受付部321は、例えば、タスク入力画面において指定された目的タスクを変換した目標論理式Ltagに基づき必要なタイムステップ数を算出することで、上述の見込み時間を表示する。なお、入力受付部321は、指定された目的タスクが達成できない場合、例えば当該目的タスクに基づく制御入力情報Icを制御入力生成部35が生成できない場合、エラーが発生した旨を算出作業時間表示領域18に表示する。これにより、入力受付部321は、タスク入力画面での対象物の位置などの再入力を促す。
そして、入力受付部321は、決定ボタン20が選択されたことを検知した場合、タスク入力画面での入力内容を示す入力信号S1に基づき認識した目的タスクの情報を論理式変換部322に供給する。その後、情報処理装置1は、制御信号S3を生成し、生成した制御信号S3をロボット5に送信することで、ロボット5に目的タスクを実行させる。
図8は、タスク入力画面の第2表示例を示す。入力受付部321は、表示信号S2を表示装置3に送信することで、表示装置3に図8に示すタスク入力画面を表示させている。第2表示例では、入力受付部321は、作業空間6に関するCAD画像を表示する第1表示例の画像表示欄16に代えて、対象物毎に最終位置を指定するためのテーブル欄16Aをタスク入力画面上に表示させている。
ここで、テーブル欄16Aは、「対象物」、「初期位置」及び「最終位置」の各項目を有する。項目「対象物」には、ラベル付けされた各対象物61の識別ラベルが表示される。項目「初期位置」には、各対象物61の作業空間6内での初期位置を示す座標値が表示される。この座標値は、作業空間6内において定義される座標値である。項目「最終位置」は、入力欄となっており、各対象物61の入力が可能となっている。図8の例では、入力受付部321は、最終位置を示す座標値又は定義されている領域名(図8では「領域G」)を指定する入力を受け付ける。なお、入力受付部321は、項目「最終位置」の任意の入力欄が選択された場合に、作業空間6を模式的に示した画像(例えば画像表示欄16で表示された画像)を表示し、当該画像内で対象の対象物61の最終位置を指定する入力を受け付けてもよい。
(5-3)目標論理式生成部
タイムステップ論理式生成部33は、目的タスクを完了するタイムステップ数(「目標タイムステップ数」とも呼ぶ。)を定め、目標タイムステップ数で目標論理式Ltagを満たすような各タイムステップでの状態を表す命題の組み合わせを定める。この組み合わせは、通常複数存在するため、タイムステップ論理式生成部33は、これらの組み合わせを論理和により結合した論理式を、タイムステップ論理式Ltsとして生成する。上述の組み合わせは、ロボット5に命令する動作のシーケンスを表す論理式の候補となり、以後では「候補φ」とも呼ぶ。
ここで、図5の説明において例示した「最終的に対象物2が領域Gに存在する」という目的タスクが設定された場合のタイムステップ論理式生成部33の処理の具体例について説明する。
この場合、タイムステップ論理式生成部33は、目標論理式Ltagとして、「(◇g)∧(□¬h)∧(∧□¬o)」が目標論理式生成部32から供給される。この場合、タイムステップ論理式生成部33は、命題「g」をタイムステップの概念を含むように拡張した命題「gi,k」を用いる。ここで、命題「gi,k」は、「タイムステップkで対象物iが領域Gに存在する」という命題である。ここで、目標タイムステップ数を「3」とした場合、目標論理式Ltagは、以下のように書き換えられる。
(◇g2,3)∧(∧k=1,2,3□¬h)∧(∧i,k=1,2,3□¬o
また、◇g2,3は、以下の式に示すように書き換えることが可能である。
Figure 0007276466000001
このとき、上述した目標論理式Ltagは、以下に示す4つの候補「φ」~「φ」の論理和(φ∨φ∨φ∨φ)により表される。
Figure 0007276466000002
よって、タイムステップ論理式生成部33は、4つの候補φ~φの論理和をタイムステップ論理式Ltsとして定める。この場合、タイムステップ論理式Ltsは、4つの候補φ~φの少なくともいずれかが真となる場合に真となる。
好適には、タイムステップ論理式生成部33は、生成された候補に対し、動作限界情報I3を参照することで、実現可能性を判定し、実現不可と判定した候補を除外するとよい。例えば、タイムステップ論理式生成部33は、動作限界情報I3に基づき、ロボットハンドが1タイムステップ当たりに移動可能な距離を認識する。また、タイムステップ論理式生成部33は、計測情報Imが示す各対象物及びロボットハンドの位置ベクトルに基づき、移動対象となる対象物(対象物2)とロボットハンドとの距離を認識する。そして、タイムステップ論理式生成部33は、これらの距離に基づき、実現可能性を判定する。
例えば、タイムステップ論理式生成部33は、ロボットハンド53a及びロボットハンド53bがいずれも、対象物2との距離が1タイムステップ当たりの移動可能距離よりも長いと判定した場合、上述の候補φ及び候補φは実現不可と判定する。この場合、タイムステップ論理式生成部33は、候補φ及び候補φをタイムステップ論理式Ltsから除外する。この場合、タイムステップ論理式Ltsは、候補φと候補φとの論理和(φ∨φ)となる。
このように、タイムステップ論理式生成部33は、動作限界情報I3を参照して実現不可能な候補をタイムステップ論理式Ltsから除外することで、後段の処理部の処理負荷を好適に低減させることができる。
次に、目標タイムステップ数の設定方法について補足説明する。
タイムステップ論理式生成部33は、例えば、ユーザ入力により指定された作業の見込み時間(図7及び図8の見込み作業時間指定欄17参照)に基づき、目標タイムステップ数を決定する。この場合、タイムステップ論理式生成部33は、メモリ12又は記憶装置4に記憶された、1タイムステップ当たりの時間幅の情報に基づき、上述の見込み時間から目標タイムステップ数を算出する。他の例では、タイムステップ論理式生成部33は、目的タスクの種類毎に適した目標タイムステップ数を対応付けた情報を予めメモリ12又は記憶装置4に記憶しておき、当該情報を参照することで、実行すべき目的タスクの種類に応じた目標タイムステップ数を決定する。
好適には、タイムステップ論理式生成部33は、目標タイムステップ数を所定の初期値に設定する。そして、タイムステップ論理式生成部33は、制御入力生成部35が制御入力を決定できるタイムステップ論理式Ltsが生成されるまで、目標タイムステップ数を徐々に増加させる。この場合、タイムステップ論理式生成部33は、設定した目標タイムステップ数により制御入力生成部35が最適化処理を行った結果、最適解を導くことができなかった場合、目標タイムステップ数を所定数(1以上の整数)だけ加算する。
このとき、タイムステップ論理式生成部33は、目標タイムステップ数の初期値を、ユーザが見込む目的タスクの作業時間に相当するタイムステップ数よりも小さい値(例えば、見込み作業時間指定欄17において指定された見込み時間の半分等)に設定するとよい。これにより、タイムステップ論理式生成部33は、不必要に大きな目標タイムステップ数を設定することを好適に抑制する。
上述の目標タイムステップ数の設定方法による効果について補足説明する。一般に、目標タイムステップ数が大きいほど、制御入力生成部35による最適化処理において最適解が存在する可能性が高くなる一方で、最低化処理等の処理負荷や目的タスク達成に要するロボット5の所要時間が長くなる。以上を勘案し、タイムステップ論理式生成部33は、目標タイムステップ数の初期値を小さい値とし、制御入力生成部35の最適化処理における解が存在するまで徐々に目標タイムステップ数を大きくする。これにより、タイムステップ論理式生成部33は、制御入力生成部35の最適化処理における解が存在する範囲において可能な限り少ない目標タイムステップ数を設定することができる。従って、この場合、最適化処理における処理負荷の低減、及び、目的タスク達成に要するロボット5の所要時間の短縮を実現することができる。
(5-4)抽象モデル生成部
抽象モデル生成部34は、計測情報Imと、抽象モデル情報I5とに基づき、抽象モデルΣを生成する。ここで、抽象モデル情報I5には、目的タスクの種類毎に、抽象モデルΣの生成に必要な情報が記録されている。例えば、目的タスクがピックアンドプレイスの場合には、対象物の位置や数、対象物を置く領域の位置、ロボット5の台数(又はロボットアーム52の数)等を特定しない汎用的な形式の抽象モデルが抽象モデル情報I5に記録されている。そして、抽象モデル生成部34は、抽象モデル情報I5に記録された汎用的な形式の抽象モデルに対し、計測情報Imが示す対象物の位置や数、対象物を置く領域の位置、ロボット5の台数等を反映することで、抽象モデルΣを生成する。
ここで、ロボット5による目的タスクの作業時においては、作業空間6内のダイナミクスが頻繁に切り替わる。例えば、ピックアンドプレイスでは、ロボットアーム52が対象物iを掴んでいる場合には、当該対象物iは動くが、ロボットアーム52が対象物iを掴んでない場合には、当該対象物iは動かない。
以上を勘案し、本実施形態においては、ピックアンドプレイスの場合、対象物iを掴むという動作を論理変数「δ」により抽象表現する。この場合、例えば、抽象モデル生成部34は、図5に示す作業空間6に対して設定すべき抽象モデルΣを、以下の式(1)により定めることができる。
Figure 0007276466000003
ここで、「u」は、ロボットハンドj(「j=1」はロボットハンド53a、「j=2」はロボットハンド53b)を制御するための制御入力を示し、「I」は単位行列を示す。なお、制御入力は、ここでは、一例として速度を想定しているが、加速度であってもよい。また、「δj,i」は、ロボットハンドjが対象物iを掴んだ場合に「1」となり、その他の場合に「0」となる論理変数である。また、「xr1」、「xr2」は、ロボットハンドjの位置ベクトル、「x」~「x」は、対象物iの位置ベクトルを示す。また、「h(x)」は、対象物を掴める程度に対象物の近傍にロボットハンドが存在する場合に「h(x)≧0」となる変数であり、論理変数δとの間で以下の関係を満たす。
δ=1 ⇔ h(x)≧0
ここで、式(1)は、タイムステップkでの物体の状態とタイムステップk+1での物体の状態との関係を示した差分方程式である。そして、上記の式(1)では、把持の状態が離散値である論理変数により表わされ、物体の移動は連続値により表わされているため、式(1)はハイブリッドシステムを示している。
式(1)では、ロボット5全体の詳細なダイナミクスではなく、対象物を実際に把持するロボット5の手先であるロボットハンドのダイナミクスのみを考慮している。これにより、制御入力生成部35により最適化処理の計算量を好適に削減することができる。
また、抽象モデル情報I5には、ダイナミクスが切り替わる動作(ピックアンドプレイスの場合には対象物iを掴むという動作)に対応する論理変数及び計測情報Imから式(1)の差分方程式を導出するための情報が記録されている。よって、抽象モデル生成部34は、対象物の位置や数、対象物を置く領域(図5では領域G)、ロボット5の台数等が変動する場合であっても、抽象モデル情報I5と計測情報Imとを組み合わせることで、対象の作業空間6の環境に即した抽象モデルΣを決定することができる。
なお、抽象モデル生成部34は、式(1)に示されるモデルに代えて、混合論理動的(MLD:Mixed Logical Dynamical)システムまたはペトリネットやオートマトンなどを組み合わせたハイブリッドシステムのモデルを生成してもよい。
(5-5)制御入力生成部
制御入力生成部35は、タイムステップ論理式生成部33から供給されるタイムステップ論理式Ltsと、抽象モデル生成部34から供給される抽象モデルΣとに基づき、最適となるタイムステップ毎のロボット5に対するタイムステップ毎の制御入力を決定する。この場合、制御入力生成部35は、目的タスクに対する評価関数を定義し、抽象モデルΣ及びタイムステップ論理式Ltsを制約条件として評価関数を最小化する最適化問題を解く。評価関数は、例えば、目的タスクの種類毎に予め定められ、メモリ12又は記憶装置4に記憶されている。
例えば、ピックアンドプレイスを目的タスクとした場合、制御入力生成部35は、運ぶ対象となる対象物と当該対象物を運ぶ目標地点との距離「d」と制御入力「u」とが最小となる(即ちロボット5が費やすエネルギーを最小化する)ように評価関数を定める。上述の距離dは、「最終的に対象物2が領域Gに存在する」という目的タスクの場合には、対象物2と領域Gとの距離に相当する。
例えば、制御入力生成部35は、全タイムステップにおける距離dの2乗と制御入力uの2乗との和を評価関数として定め、抽象モデルΣ及びタイムステップ論理式Lts(即ち候補φの論理和)を制約条件とする以下の式(2)に示す制約付き混合整数最適化問題を解く。
Figure 0007276466000004

ここで、「T」は、最適化の対象となるタイムステップ数であり、目標タイムステップ数であってもよく、後述するように、目標タイムステップ数よりも小さい所定数であってもよい。この場合、好適には、制御入力生成部35は、論理変数を連続値に近似する(連続緩和問題とする)。これにより、制御入力生成部35は、計算量を好適に低減することができる。なお、線形論理式(LTL)に代えてSTLを採用した場合には、非線形最適化問題として記述することが可能である。
また、制御入力生成部35は、目標タイムステップ数が長い場合(例えば所定の閾値より大きい場合)、最適化に用いる式(2)のタイムステップ数Tを、目標タイムステップ数より小さい値(例えば上述の閾値)に設定してもよい。この場合、制御入力生成部35は、例えば、所定のタイムステップ数が経過する毎に、式(2)に基づく最適化問題を解くことで、逐次的に制御入力uを決定する。
好適には、制御入力生成部35は、目的タスクの達成状態に対する中間状態に相当する所定のイベント毎に、式(2)に基づく最適化問題を解き、使用すべき制御入力uを決定してもよい。この場合、制御入力生成部35は、次のイベント発生までのタイムステップ数を、式(2)におけるタイムステップ数Tに設定する。上述のイベントは、例えば、作業空間6におけるダイナミクスが切り替わる事象である。例えば、ピックアンドプレイスを目的タスクとした場合には、ロボット5が対象物を掴む、ロボット5が運ぶべき複数の対象物のうちの1つの対象物を目的地点へ運び終える、などがイベントとして定められる。イベントは、例えば、目的タスクの種類毎に予め定められており、目的タスクの種類毎にイベントを特定する情報が記憶装置4に記憶されている。イベント毎に制御入力uを決定する処理の詳細については、図11のフローチャートにおいて後述する。
この態様によっても、式(2)におけるタイムステップ数Tを小さくして最適化問題の計算量等を好適に低減することができる。
(5-6)サブタスクシーケンス生成部
サブタスクシーケンス生成部36は、制御入力生成部35から供給される制御入力情報Icと、アプリケーション情報記憶部41が記憶するサブタスク情報I4とに基づき、サブタスクシーケンスを生成する。この場合、サブタスクシーケンス生成部36は、サブタスク情報I4を参照することで、ロボット5が受け付け可能なサブタスクを認識し、制御入力情報Icが示すタイムステップ毎の制御入力をサブタスクに変換する。
例えば、サブタスク情報I4には、ピックアンドプレイスを目的タスクとする場合にロボット5が受け付け可能なサブタスクとして、ロボットハンドの移動(リーチング)とロボットハンドの把持(グラスピング)の2つのサブタスクを示す関数が定義されている。この場合、リーチングを表す関数「Move」は、例えば、当該関数実行前のロボット5の初期状態、当該関数実行後のロボット5の最終状態、及び当該関数の実行に要する所要時間をそれぞれ引数とする関数である。また、グラスピングを表す関数「Grasp」は、例えば、当該関数実行前のロボット5の状態、及び当該関数実行前の把持対象の対象物の状態, 論理変数δをそれぞれ引数とする関数である。ここで、関数「Grasp」は、論理変数δが「1」のときに掴む動作を行うこと表し、論理変数δが「0」のときに放す動作を行うこと表す。この場合、サブタスクシーケンス生成部36は、関数「Move」を、制御入力情報Icが示すタイムステップ毎の制御入力により定まるロボットハンドの軌道に基づき決定し、関数「Grasp」を、制御入力情報Icが示すタイムステップ毎の論理変数δの遷移に基づき決定する。
そして、サブタスクシーケンス生成部36は、関数「Move」と関数「Grasp」とにより構成されるサブタスクシーケンスを生成し、当該サブタスクシーケンスを示す制御信号S3をロボット5に供給する。例えば、目的タスクが「最終的に対象物2が領域Gに存在する」の場合、サブタスクシーケンス生成部36は、対象物2に最も近いロボットハンドに対し、関数「Move」、関数「Grasp」、関数「Move」、関数「Grasp」のサブタスクシーケンスを生成する。この場合、対象物2に最も近いロボットハンドは、関数「Move」により対象物2の位置まで移動し、関数「Grasp」により対象物2を把持し、関数「Move」により領域Gまで移動し、関数「Grasp」により対象物2を領域Gに載置する。
(6)処理フロー
図9は、第1実施形態において情報処理装置1が実行するロボット制御処理の概要を示すフローチャートの一例である。
まず、情報処理装置1の抽象状態設定部31は、計測装置7から供給される出力信号S4に基づき、作業空間6内の物体の計測結果を示す計測情報Imの生成及び抽象状態の設定を行う(ステップS11)。次に、目標論理式生成部32は、入力信号S1等により指定された目的タスクから、目標論理式Ltagを決定する(ステップS12)。この場合、目標論理式生成部32は、制約条件情報I2を参照することで、目的タスクの実行における制約条件を、目標論理式Ltagに付加する。なお、ステップS12の処理は、ステップS11よりも前に実行されてもよい。
そして、タイムステップ論理式生成部33は、目標論理式Ltagを、各タイムステップでの状態を表すタイムステップ論理式Ltsに変換する(ステップS13)。この場合、タイムステップ論理式生成部33は、目標タイムステップ数を定め、目標タイムステップ数で目標論理式Ltagを満たすような各タイムステップでの状態を表す候補φの論理和を、タイムステップ論理式Ltsとして生成する。この場合、好適には、タイムステップ論理式生成部33は、動作限界情報I3を参照することで、各候補φの実行可能性を判定し、実行不可能と判定される候補φを、タイムステップ論理式Ltsから除外する。
次に、抽象モデル生成部34は、ステップS11で生成した計測情報Imと、抽象モデル情報I5とに基づき、目的タスクに適した抽象モデルΣを決定する(ステップS14)。そして、制御入力生成部35は、抽象モデルΣ及びタイムステップ論理式Ltsを満たし、評価関数を最適化する制御入力を決定する(ステップS15)。そして、サブタスクシーケンス生成部36は、制御入力生成部35が決定した制御入力からサブタスクシーケンスを決定し、サブタスクシーケンスを示す制御信号S3をロボット5へ出力する(ステップS16)。
図10は、図9のステップS13の処理の詳細を表すフローチャートの一例である。
まず、タイムステップ論理式生成部33は、目標タイムステップ数を初期値に設定する(ステップS21)。この初期値は、ユーザ入力に基づき定められてもよく、予めメモリ12又は記憶装置4に記憶された値であってもよい。初期値は、目的タスクの実行に必要と見込まれるタイムステップ数よりも小さい値(例えばユーザが指定したタイムステップ数の半分等)に設定されることが好ましい。
次に、タイムステップ論理式生成部33は、ステップS21で設定した目標タイムステップ数で目標論理式Ltagを満たすようなタイムステップ毎の状態を表す論理式の候補φを決定する(ステップS22)。そして、タイムステップ論理式生成部33は、動作限界情報I3を参照することで、各候補φの実行可能性を判定し、実行不可能と判定される候補φを除外する(ステップS23)。
次に、タイムステップ論理式生成部33は、図9のステップS15での最適化の解が存在するか否か判定する(ステップS24)。この場合、タイムステップ論理式生成部33は、ステップS14で決定される抽象モデルΣと、実行可能な候補φのいずれかとを満たし、評価関数を最適化するロボット5への制御入力を制御入力生成部35が導出できるか否か判定する。そして、タイムステップ論理式生成部33は、ステップS15での最適化の解が存在する場合(ステップS24;Yes)、候補φを論理和により結合したタイムステップ論理式Ltsを、抽象モデル生成部34に出力する(ステップS25)。
一方、ステップS15での最適化の解が存在しない場合(ステップS24;No)、タイムステップ論理式生成部33は、現在設定されている目標タイムステップ数では目的タスクを実行できないと判定する。よって、この場合、タイムステップ論理式生成部33は、目標タイムステップ数を所定値(1以上の整数)だけ加算する(ステップS26)。そして、タイムステップ論理式生成部33は、再びステップS22~ステップS24の処理を実行する。
図10に示すフローチャートの処理によれば、タイムステップ論理式生成部33は、目標タイムステップ数が適正値になるように好適に目標タイムステップ数を設定することができる。
図11は、図9のフローチャートが示すロボット制御処理の変形例であって、イベントの発生毎にサブタスクシーケンスを決定するロボット制御処理を示すフローチャートの一例である。
抽象状態設定部31及び目標論理式生成部32は、夫々、ステップS31及びステップS32において、それぞれ図9のステップS11及びステップS12と同一処理を行う。
タイムステップ論理式生成部33は、目標論理式Ltagを、次のイベント発生までのタイムステップ論理式Ltsに変換する(ステップS33)。この場合、タイムステップ論理式生成部33は、次のイベント発生までに要する目標タイムステップ数を決定し、目標タイムステップ数で目標論理式Ltagを満たすような各タイムステップでの状態を表す候補φの論理和を、タイムステップ論理式Ltsとして生成する。この場合の目標タイムステップ数は、例えば図10に示した目標タイムステップ数の決定方法に基づき決定されてもよく、予め記憶装置4等に記憶された適正値に設定されてもよい。
次に、抽象モデル生成部34は、ステップS31で生成された計測情報Imと、抽象モデル情報I5とに基づき、目的タスクに適した抽象モデルΣを決定する(ステップS34)。なお、ステップS34の処理は、ロボット5の動作中に対象物の個数や種類が変化しない場合には、1回限り実行すればよく、イベント発生毎に実行する必要はない。よって、抽象モデル生成部34は、ステップS34を実行済みの場合には、前回のステップS34で得られた抽象モデルΣを出力してもよい。
次に、制御入力生成部35は、抽象モデルΣ及びタイムステップ論理式Ltsを満たし、評価関数を最適化する制御入力を決定する(ステップS35)。この場合、制御入力生成部35は、次のイベント発生までに必要なタイムステップ数分の制御入力を決定する。そして、サブタスクシーケンス生成部36は、制御入力生成部35が決定した制御入力から、サブタスクシーケンスを決定し、サブタスクシーケンスを示す制御信号S3をロボット5へ出力する(ステップS36)。
次に、情報処理装置1は、目的タスクが完了したか否か判定する(ステップS37)。情報処理装置1は、例えば、計測装置7から供給される出力信号S4に基づき対象物等の状態を認識することで、目的タスクの完了の有無を判定する。他の例では、情報処理装置1は、次のイベントが目的タスクの完了である場合には、ロボット5からサブタスクシーケンスの正常終了の通知を受けた場合に、目的タスクが完了したと判定する。そして、目的タスクが完了した場合(ステップS37;Yes)、情報処理装置1は、フローチャートの処理を終了する。
一方、目的タスクが完了していない場合(ステップS37;No)、情報処理装置1は、次のイベントが発生したか否か判定する(ステップS38)。この場合、情報処理装置1は、例えば、計測装置7から供給される出力信号S4に基づき対象物等の状態を認識することで、イベント発生の有無を判定する。他の例では、情報処理装置1は、次のイベント発生までのサブタスクシーケンスの正常終了の通知をロボット5から受けた場合に、イベントが発生したと判定する。そして、情報処理装置1は、イベントが発生した場合(ステップS38;Yes)、ステップS33へ処理を戻す。この場合、情報処理装置1は、次のイベント発生に必要なサブタスクシーケンスの生成処理を、ステップS33~ステップS36において再び実行する。一方、イベントが発生していない場合(ステップS38;No)、情報処理装置1は、ステップS37へ処理を戻す。
<第2実施形態>
図12は、第2実施形態における情報処理装置1Aの概略構成図である。図12に示すように、情報処理装置1Aは、主に、論理式変換部322Aと、制約条件情報取得部323Aと、制約条件付加部324Aとを有する。
論理式変換部322Aは、ロボットに作業させるタスクである目的タスクを時相論理に基づく論理式に変換する。制約条件情報取得部323Aは、目的タスクの実行において満たすべき制約条件を示す制約条件情報I2を取得する。制約条件付加部324Aは、論理式変換部322Aが生成した論理式に上記制約条件を表す命題を付加した論理式である目標論理式Ltagを生成する。
第2実施形態の構成によれば、情報処理装置1Aは、ロボットに作業させる目的タスクが与えられた場合に、目的タスクの実行において満たすべき制約条件を明示した目標論理式Ltagを好適に生成することができる。
<第3実施形態>
図13は、第3実施形態における情報処理装置1Bの概略構成図である。図13に示すように、情報処理装置1Bは、主に、抽象モデル情報取得部34Xと、計測情報取得部34Yと、抽象モデル生成部34Zと、を有する。
抽象モデル情報取得部34Xは、目的タスクを実行するロボット5の作業空間6におけるダイナミクスを抽象化した抽象モデルに関する抽象モデル情報I5を取得する。計測情報取得部34Yは、作業空間6における計測結果を示す計測情報Imを取得する。抽象モデル生成部34Zは、抽象モデル情報I5と、計測情報Imとに基づき、抽象モデルΣを生成する。
ここで、抽象モデル情報取得部34Xと、計測情報取得部34Yと、抽象モデル生成部34Zとは、例えば、第1実施形態における抽象モデル生成部34により実現される。
第3実施形態の構成によれば、情報処理装置1Bは、ロボットに作業させる目的タスクが与えられた場合に、ロボットの実際の動的モデルを簡略的に表した抽象モデルΣを好適に生成することができる。
その他、上記の各実施形態の一部又は全部は、以下の付記のようにも記載され得るが以下には限られない。
[付記1]
タスクを実行するロボットの作業空間におけるダイナミクスを抽象化した抽象モデルに関する抽象モデル情報を取得する抽象モデル情報取得部と、
前記作業空間における計測結果を示す計測情報を取得する計測情報取得部と、
前記抽象モデル情報と、前記計測情報とに基づき、前記抽象モデルを生成する抽象モデル生成部と、
を有する情報処理装置。
[付記2]
前記抽象モデル生成部は、前記計測情報に含まれる、前記ロボットに関する情報、及び、前記ロボットによる作業の対象となる対象物に関する情報に基づき、前記抽象モデルを生成する、付記1に記載の情報処理装置。
[付記3]
前記抽象モデル生成部は、前記ロボットがピックアンドプレイスに関するタスクを実行する場合、対象物を前記ロボットが掴む動作を論理変数により抽象表現したハイブリッドシステムのモデルを、前記抽象モデルとして生成する、付記1または2に記載の情報処理装置。
[付記4]
前記抽象モデルと、前記タスクを実行するためタイムステップ毎の状態を表す論理式であるタイムステップ論理式と、に基づき、前記ロボットを制御するためのタイムステップ毎の制御入力を決定する制御入力生成部をさらに有する、付記1~3のいずれか一項に記載の情報処理装置。
[付記5]
前記制御入力生成部は、前記タスクに応じた評価関数を決定し、
前記制御入力生成部は、前記抽象モデルと、前記タイムステップ論理式とを満たし、前記評価関数を最適化する前記制御入力を決定する、付記4に記載の情報処理装置。
[付記6]
前記制御入力生成部は、前記タスクを完了するまでに必要なイベントが発生するまでに要するタイムステップ数分の前記制御入力を生成し、前記イベントが発生する毎に当該制御入力の生成を行う、付記4または5に記載の情報処理装置。
[付記7]
前記タスクの完了に必要なタイムステップ数又は前記タスクを完了するまでに必要なイベントが発生するまでに要するタイムステップ数により表わされた前記タイムステップ論理式を生成するタイムステップ論理式生成部をさらに有する、付記4~6のいずれか一項に記載の情報処理装置。
[付記8]
前記タイムステップ論理式生成部は、前記タイムステップ数を所定の初期値に設定し、前記制御入力生成部が前記制御入力を決定できる前記タイムステップ論理式が生成されるまで、前記タイムステップ数を増加させる、付記7に記載の情報処理装置。
[付記9]
前記タイムステップ論理式生成部は、前記初期値を、ユーザが見込む前記タスクの作業時間に相当するタイムステップ数よりも小さい値に設定する、付記8に記載の情報処理装置。
[付記10]
前記タイムステップ毎の制御入力から、前記ロボットが受け付け可能な単位のタスクであるサブタスクのシーケンスを生成するサブタスクシーケンス生成部をさらに有する、付記4~9のいずれか一項に記載の情報処理装置。
[付記11]
タスクを実行するロボットの作業空間におけるダイナミクスを抽象化した抽象モデルに関する抽象モデル情報を取得し、
前記作業空間における計測結果を示す計測情報を取得し、
前記抽象モデル情報と、前記計測情報とに基づき、前記抽象モデルを生成する、
制御方法。
[付記12]
タスクを実行するロボットの作業空間におけるダイナミクスを抽象化した抽象モデルに関する抽象モデル情報を取得する抽象モデル情報取得部と、
前記作業空間における計測結果を示す計測情報を取得する計測情報取得部と、
前記抽象モデル情報と、前記計測情報とに基づき、前記抽象モデルを生成する抽象モデル生成部
としてコンピュータを機能させるプログラムが格納された記憶媒体。
以上、実施形態を参照して本願発明を説明したが、本願発明は上記実施形態に限定されるものではない。本願発明の構成や詳細には、本願発明のスコープ内で当業者が理解し得る様々な変更をすることができる。すなわち、本願発明は、請求の範囲を含む全開示、技術的思想にしたがって当業者であればなし得るであろう各種変形、修正を含むことは勿論である。また、引用した上記の特許文献等の各開示は、本書に引用をもって繰り込むものとする。
1、1A、1B 情報処理装置
2 入力装置
3 表示装置
4 記憶装置
5 ロボット
6 作業空間
7 計測装置
41 アプリケーション情報記憶部
100 ロボット制御システム

Claims (10)

  1. タスクを実行するロボットの作業空間における現実のダイナミクスをハイブリッドシステムにより抽象化した抽象モデルと、前記ハイブリッドシステムにおけるダイナミクスの切り替わりの条件と、を少なくとも示す抽象モデル情報を取得する抽象モデル情報取得手段と、
    前記作業空間における計測結果を示す計測情報を取得する計測情報取得手段と、
    前記抽象モデル情報と、前記計測情報とに基づき、前記抽象モデルを生成する抽象モデル生成手段と、
    を有する情報処理装置。
  2. 前記抽象モデル生成手段は、前記計測情報に含まれる、前記ロボットに関する情報、及び、前記ロボットによる作業の対象となる対象物に関する情報に基づき、前記抽象モデルを生成する、請求項1に記載の情報処理装置。
  3. 前記抽象モデル生成手段は、前記ロボットがピックアンドプレイスに関するタスクを実行する場合、対象物を前記ロボットが掴む動作を論理変数により抽象表現した前記ハイブリッドシステムのモデルを、前記抽象モデルとして生成する、請求項1または2に記載の情報処理装置。
  4. タスクを実行するロボットの作業空間におけるダイナミクスを抽象化した抽象モデルに関する抽象モデル情報を取得する抽象モデル情報取得手段と、
    前記作業空間における計測結果を示す計測情報を取得する計測情報取得手段と、
    前記抽象モデル情報と、前記計測情報とに基づき、前記抽象モデルを生成する抽象モデル生成手段と、
    前記抽象モデルと、前記タスクを実行するためタイムステップ毎の状態を表す論理式であるタイムステップ論理式と、に基づき、前記ロボットを制御するためのタイムステップ毎の制御入力を決定する制御入力生成手段と、を有する情報処理装置。
  5. 前記制御入力生成手段は、前記タスクに応じた評価関数を決定し、
    前記制御入力生成手段は、前記抽象モデルと、前記タイムステップ論理式とを満たし、前記評価関数を最適化する前記制御入力を決定する、請求項4に記載の情報処理装置。
  6. 前記制御入力生成手段は、前記タスクを完了するまでに必要なイベントが発生するまでに要するタイムステップ数分の前記制御入力を生成し、前記イベントが発生する毎に当該制御入力の生成を行う、請求項4または5に記載の情報処理装置。
  7. 前記タスクの完了に必要なタイムステップ数又は前記タスクを完了するまでに必要なイベントが発生するまでに要するタイムステップ数により表わされた前記タイムステップ論理式を生成するタイムステップ論理式生成手段をさらに有する、請求項4~6のいずれか一項に記載の情報処理装置。
  8. 前記タイムステップ論理式生成手段は、前記タイムステップ数を所定の初期値に設定し、前記制御入力生成手段が前記制御入力を決定できる前記タイムステップ論理式が生成されるまで、前記タイムステップ数を増加させる、請求項7に記載の情報処理装置。
  9. 情報処理装置が、
    タスクを実行するロボットの作業空間における現実のダイナミクスをハイブリッドシステムにより抽象化した抽象モデルと、前記ハイブリッドシステムにおけるダイナミクスの切り替わりの条件と、を少なくとも示す抽象モデル情報を取得し、
    前記作業空間における計測結果を示す計測情報を取得し、
    前記抽象モデル情報と、前記計測情報とに基づき、前記抽象モデルを生成する
    制御方法。
  10. タスクを実行するロボットの作業空間における現実のダイナミクスをハイブリッドシステムにより抽象化した抽象モデルと、前記ハイブリッドシステムにおけるダイナミクスの切り替わりの条件と、を少なくとも示す抽象モデル情報を取得する抽象モデル情報取得手段と、
    前記作業空間における計測結果を示す計測情報を取得する計測情報取得手段と、
    前記抽象モデル情報と、前記計測情報とに基づき、前記抽象モデルを生成する抽象モデル生成手段
    としてコンピュータを機能させプログラム。
JP2021541933A 2019-08-30 2019-08-30 情報処理装置、制御方法及びプログラム Active JP7276466B2 (ja)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2019/034184 WO2021038844A1 (ja) 2019-08-30 2019-08-30 情報処理装置、制御方法及び記憶媒体

Publications (3)

Publication Number Publication Date
JPWO2021038844A1 JPWO2021038844A1 (ja) 2021-03-04
JPWO2021038844A5 JPWO2021038844A5 (ja) 2022-04-20
JP7276466B2 true JP7276466B2 (ja) 2023-05-18

Family

ID=74685387

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2021541933A Active JP7276466B2 (ja) 2019-08-30 2019-08-30 情報処理装置、制御方法及びプログラム

Country Status (4)

Country Link
US (1) US20220299949A1 (ja)
EP (1) EP4023397A4 (ja)
JP (1) JP7276466B2 (ja)
WO (1) WO2021038844A1 (ja)

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008009536A (ja) 2006-06-27 2008-01-17 Toshiba Corp シミュレーション装置およびシミュレーション方法並びにシミュレーションプログラム
JP2012125871A (ja) 2010-12-15 2012-07-05 Mitsubishi Electric Corp ロボット制御設定支援装置
JP2014240110A (ja) 2013-06-12 2014-12-25 三菱電機株式会社 ビンピッキング性能評価装置及び方法
JP2016528483A (ja) 2013-06-11 2016-09-15 ソマティス センサー ソリューションズ エルエルシー 物体を検知するシステム及び方法
JP2018167361A (ja) 2017-03-30 2018-11-01 株式会社安川電機 ロボット動作指令生成方法、ロボット動作指令生成装置及びコンピュータプログラム

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6553568B2 (ja) 2016-09-28 2019-07-31 ファナック株式会社 複数個の物品をひとつずつ最適な経路で取り出す搬送装置
JP6822929B2 (ja) * 2017-09-19 2021-01-27 株式会社東芝 情報処理装置、画像認識方法および画像認識プログラム
CN107671857B (zh) * 2017-10-11 2021-04-02 上海交通大学 用于服务机器人操作演示与算法验证的三维仿真平台

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008009536A (ja) 2006-06-27 2008-01-17 Toshiba Corp シミュレーション装置およびシミュレーション方法並びにシミュレーションプログラム
JP2012125871A (ja) 2010-12-15 2012-07-05 Mitsubishi Electric Corp ロボット制御設定支援装置
JP2016528483A (ja) 2013-06-11 2016-09-15 ソマティス センサー ソリューションズ エルエルシー 物体を検知するシステム及び方法
JP2014240110A (ja) 2013-06-12 2014-12-25 三菱電機株式会社 ビンピッキング性能評価装置及び方法
JP2018167361A (ja) 2017-03-30 2018-11-01 株式会社安川電機 ロボット動作指令生成方法、ロボット動作指令生成装置及びコンピュータプログラム

Also Published As

Publication number Publication date
WO2021038844A1 (ja) 2021-03-04
JPWO2021038844A1 (ja) 2021-03-04
EP4023397A4 (en) 2022-09-14
US20220299949A1 (en) 2022-09-22
EP4023397A1 (en) 2022-07-06

Similar Documents

Publication Publication Date Title
JP7264253B2 (ja) 情報処理装置、制御方法及びプログラム
US9135392B2 (en) Semi-autonomous digital human posturing
WO2022074823A1 (ja) 制御装置、制御方法及び記憶媒体
JP7452619B2 (ja) 制御装置、制御方法及びプログラム
JP7276466B2 (ja) 情報処理装置、制御方法及びプログラム
JP7448024B2 (ja) 制御装置、制御方法及びプログラム
JP7416197B2 (ja) 制御装置、制御方法及びプログラム
JP7456552B2 (ja) 情報処理装置、情報処理方法及びプログラム
WO2022049756A1 (ja) 判定装置、判定方法及び記憶媒体
JP7364032B2 (ja) 制御装置、制御方法及びプログラム
JP7468694B2 (ja) 情報収集装置、情報収集方法及びプログラム
JP7323045B2 (ja) 制御装置、制御方法及びプログラム
WO2022224449A1 (ja) 制御装置、制御方法及び記憶媒体
WO2022224447A1 (ja) 制御装置、制御方法及び記憶媒体
WO2022244060A1 (ja) 動作計画装置、動作計画方法及び記憶媒体
WO2022074827A1 (ja) 命題設定装置、命題設定方法及び記憶媒体
JP7416199B2 (ja) 制御装置、制御方法及びプログラム
Nambiar et al. Automation of unstructured production environment by applying reinforcement learning
WO2021171352A1 (ja) 制御装置、制御方法及び記録媒体
US20240131711A1 (en) Control device, control method, and storage medium
JP7435815B2 (ja) 動作指令生成装置、動作指令生成方法及びプログラム
JP7435814B2 (ja) 時相論理式生成装置、時相論理式生成方法及びプログラム
Le et al. Graphical simulator for teaching robot with parallel wire type teaching device
US20220366660A1 (en) Method and system for predicting a collision free posture of a kinematic system
Luh et al. Animated simulation of human-robot coordination with alternative voice command

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20220203

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20220203

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20221004

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20221109

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20221227

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20230207

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20230417

R151 Written notification of patent or utility model registration

Ref document number: 7276466

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151