JP2010142940A - Method and apparatus for generating and executing task model of robot - Google Patents
Method and apparatus for generating and executing task model of robot Download PDFInfo
- Publication number
- JP2010142940A JP2010142940A JP2009144347A JP2009144347A JP2010142940A JP 2010142940 A JP2010142940 A JP 2010142940A JP 2009144347 A JP2009144347 A JP 2009144347A JP 2009144347 A JP2009144347 A JP 2009144347A JP 2010142940 A JP2010142940 A JP 2010142940A
- Authority
- JP
- Japan
- Prior art keywords
- action
- robot
- context
- task
- model
- 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.)
- Granted
Links
Images
Classifications
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B25—HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
- B25J—MANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
- B25J9/00—Programme-controlled manipulators
- B25J9/16—Programme controls
- B25J9/1656—Programme controls characterised by programming, planning systems for manipulators
- B25J9/1661—Programme controls characterised by programming, planning systems for manipulators characterised by task planning, object-oriented languages
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B25—HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
- B25J—MANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
- B25J9/00—Programme-controlled manipulators
- B25J9/16—Programme controls
- B25J9/1656—Programme controls characterised by programming, planning systems for manipulators
- B25J9/1664—Programme controls characterised by programming, planning systems for manipulators characterised by motion, path, trajectory planning
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/95—Retrieval from the web
- G06F16/957—Browsing optimisation, e.g. caching or content distillation
- G06F16/9574—Browsing optimisation, e.g. caching or content distillation of access to content, e.g. by caching
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/30—Arrangements for executing machine instructions, e.g. instruction decode
- G06F9/30181—Instruction operation extension or modification
- G06F9/30189—Instruction operation extension or modification according to execution mode, e.g. mode flag
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/451—Execution arrangements for user interfaces
- G06F9/453—Help systems
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B2219/00—Program-control systems
- G05B2219/30—Nc systems
- G05B2219/40—Robotics, robotics mapping to robotics vision
- G05B2219/40099—Graphical user interface for robotics, visual robot user interface
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B2219/00—Program-control systems
- G05B2219/30—Nc systems
- G05B2219/40—Robotics, robotics mapping to robotics vision
- G05B2219/40512—Real time path planning, trajectory generation
Abstract
Description
本発明はロボットのタスクモデルの生成及び実行方法とその装置に関し、更に詳しくは、ロボットタスクを構成する行為モデルの設計と具現を分離してロボットのタスクを生成できるモデルを提供し、この生成されたモデルを用いてロボットタスクを実行できる方法及び装置に関する。 The present invention relates to a method and apparatus for generating and executing a robot task model, and more particularly, to provide a model capable of generating a robot task by separating the design and implementation of an action model constituting the robot task. The present invention relates to a method and an apparatus capable of executing a robot task using a selected model.
周知のように、サービスロボットは人間の行動や作業などを自動的に行えるようにした機械装置である。このサービスロボットの応用分野は、産業用、医療用、宇宙用及び海底用に分類されており、例えば、最近になってはサービスロボットが次第に浮上している状況である。家庭やオフィス或いは展示場などで多様な形態で多様な作業を行っている。 As is well known, a service robot is a mechanical device that can automatically perform human actions and work. The application field of this service robot is classified into industrial use, medical use, space use and submarine use. For example, recently, service robots are gradually emerging. Various work is done in various forms at home, office or exhibition hall.
このようなロボットのタスクを生成(例えば、定義或いは著作)する場合、この生成されたタスクモデルがそのままプログラムコードで作成されてロボット内で実行される。また、通常の場合、ロボットタスクはロボットの装置を抽象化したアプリケーション・プログラム・インターフェース(Application Program Interface、以下、APIという)を組み合わせて作成される。 When generating (for example, defining or writing) a task of such a robot, the generated task model is generated as it is by a program code and executed in the robot. In a normal case, a robot task is created by combining an application program interface (hereinafter referred to as API) that abstracts a robot device.
このように作成されるタスクは、ロボットの装置に対する理解とこれを提供するAPIに対する理解が十分であり、これを用いてアプリケーションを具現できる人だけがロボットのタスクを作成できる。また、既存に提供されるロボットタスクの開発道具もこのような開発者の立場を補助する観点で著作されるのが殆どである。 The task created in this way is sufficient to understand the robot device and the API that provides it, and only those who can implement the application using this can create the robot task. Most of the existing robot task development tools are also written from the viewpoint of assisting such developers.
しかしながら、前述したように生成されたタスクモデルがそのままプログラムコードで作成されてロボット内で実行されることによって、新たなタスクが追加されたり、更新される場合に、既存コードの再使用性が低下する。また、ロボットの制御構造が複雑に絡み合っているため、ロボットのタスクを再構成するのに多くの困難がある。 However, when the task model generated as described above is created directly as program code and executed in the robot, the reusability of existing code decreases when new tasks are added or updated. To do. Also, because the robot control structure is intricately intertwined, there are many difficulties in reconfiguring the robot tasks.
また、ロボットのタスクをロボット開発者が全て開発する場合、教育、エンターテイメント、交通、軍需など非常に多様に発展するロボット分野とここで希望するサービスを提供するのに限界、即ち、ロボットのタスクを開発する際にロボットサービスの設計者が含まれなければならないが、このサービス設計者はロボットに対する詳しい理解が不十分であるため、ロボットの基本的な特徴に対する理解だけで自身が提供しようとするロボットサービスのタスクを作成することに限界があり、また多様な応用サービスドメインをロボット開発者が全て理解することも容易でないという問題点がある。 Also, when the robot developer develops all robot tasks, there is a limit to providing the robot service and the desired services here, such as education, entertainment, transportation, military demand, etc. The robot service designer must be included in the development, but since this service designer has insufficient understanding of the robot, the robot he / she intends to provide only by understanding the basic characteristics of the robot. There are limitations in creating service tasks, and it is not easy for robot developers to understand all the various application service domains.
ロボットサービスの設計者に任意のロボットに対する可用行為とロボットが認識可能な周囲環境に関する情報を知らせると、ロボットサービスの設計者は自分が考えるサービスを抽象的ロボット行為で記述することができる。このように定義されたサービスはAPIを用いた場合より遥かに抽象的である。このような抽象的な定義だけではロボットが作動しないため、ロボットについてよく知っている人がロボットサービスの設計者が定義したサービスに表現された行為の内部を直接具現したり、行為ライブラリを提供しなければならない。 If the robot service designer is informed about the actions available for any robot and information about the surrounding environment that the robot can recognize, the robot service designer can describe the service he / she thinks in an abstract robot action. A service defined in this way is much more abstract than using an API. Since robots do not operate with such abstract definitions alone, those who are familiar with robots directly embody the actions expressed in the services defined by the robot service designers, or provide action libraries. There must be.
そこで、本発明は上記事情に鑑みてなされたものであって、その目的は、ロボットのタスクを構成する行為モデルの設計と具現を分離してタスクを生成することができるモデルを提供し、このモデルを用いてタスクを行うロボットのタスクモデルの生成及びタスク実行方法と装置を提供することである。 Therefore, the present invention has been made in view of the above circumstances, and its purpose is to provide a model that can generate a task by separating the design and implementation of an action model that constitutes a task of a robot. To provide a task model generation and task execution method and apparatus for a robot that performs a task using a model.
本発明の一観点によるロボットタスクモデルの生成及び実行方法は、ロボットの行為を生成する段階と、前記行為をコンテクストで表現する段階と、前記コンテクストに基づいて抽象的タスク実行モデルを生成する段階と、実際にロボットを動作するためにロボットのAPIを呼び出して前記生成された抽象的タスク実行モデルを実行する段階とを含むことを特徴とする。また、本発明の他の観点によるロボットのタスクモデルの生成及び実行装置は、ロボットの行為及びコンテクストを生成する生成部と、前記コンテクストに基づいて抽象的タスク実行モデルを生成し、実際にロボットを動作するために前記抽象的タスク実行モデルを実行するコンテクスト管理部と、前記コンテクスト管理部により呼び出されて前記抽象的タスク実行モデルが実行されるようにインターフェースするロボットAPIとを含むことを特徴とする。 A robot task model generation and execution method according to an aspect of the present invention includes a step of generating a robot action, a step of expressing the action in context, and a step of generating an abstract task execution model based on the context. And executing the generated abstract task execution model by calling an API of the robot to actually operate the robot. A robot task model generation and execution apparatus according to another aspect of the present invention includes a generation unit that generates a robot action and context, an abstract task execution model based on the context, and an actual robot. A context management unit that executes the abstract task execution model to operate, and a robot API that is called by the context management unit to interface the abstract task execution model. .
本発明によれば、ロボットタスクの開発をサービス設計者とロボットタスクの具現者に具現区分することで、ロボットタスクを更に効果的に開発できるという効果を奏する。 According to the present invention, it is possible to develop the robot task more effectively by dividing the development of the robot task into the service designer and the implementer of the robot task.
また、抽象的本発明はロボットのタスクモデルの生成及び実行方法と装置を提供することで、サービス開発者はロボット行為とタスクの抽象的な構造のみを考慮し、タスク具現者は必要なタスクライブラリの生成にのみ集中することで、任意のロボットで作動するタスクの安全性と漸進的な拡張及び体系化に多くの利点が得られるという長所がある。 In addition, the present invention provides a method and apparatus for generating and executing a task model of a robot, so that a service developer considers only an abstract structure of a robot action and a task, and a task implementer needs a necessary task library. By concentrating only on the generation of tasks, there are many advantages to the safety and gradual expansion and systematization of tasks that work on any robot.
以下、添付する図面を参照して本発明の動作原理を詳細に説明する。 Hereinafter, the operation principle of the present invention will be described in detail with reference to the accompanying drawings.
図1は、本発明の一実施形態によるロボットサービスの設計者の観点とロボットタスクの具現者の観点との差とこれらの関係を示す図である。 FIG. 1 is a diagram illustrating a difference between a viewpoint of a robot service designer according to an embodiment of the present invention and a viewpoint of a person embodying a robot task, and a relationship thereof.
サービスの設計者はロボットのタスクを抽象的コンテクスト(abstract context)1011と抽象的行為(abstract behavior)1012の組み合わせとみなす。
The service designer regards the robot task as a combination of an
抽象的コンテクスト1011にはコンテクストの名前と説明を含み、抽象的行為1012には行為の名前と説明を含み、更にこの抽象的行為の入力としてタスクを駆動させる条件を示す観察されたコンテクストと出力として活動的コンテクストの観察を備える。このような状態で、サービス設計者は抽象的行為1012をノードとして考え、入力されるコンテクストと出力されるコンテクストを用いて抽象的行為を関係付けながら、抽象的タスクを定義する。
The
次に、タスクの具現者はタスクをコンテクストマネジャー(context manager)1021と行為具現(behavior implementation)1022の組み合わせとみなす。タスク具現者の立場で、コンテクストマネジャー1021で抽象的コンテクストは実際にロボットが提供するセンシングAPIから抽出された情報の論理式で定義されたものと見なす。具現抽象的行為の具現1022は、駆動APIや別途のFSM(finite state machine)で表現されたタスクライブラリを用いて定義された客体や関数形態を有する。
Next, the implementer of the task regards the task as a combination of a
図2は、本発明の一実施形態によるロボットのタスクモデルの生成及びタスクの実行装置に対するブロック構成図であって、抽象的行為モデルを用いてサービス設計者によって設計された抽象的行為モデルとこれを用いて定義された抽象的実行タスクの切替を示す。図2に示された装置は、生成部10と、コンテクスト管理部20と、コンテクストデータベース(DataBase、以下、DBという)30と、抽象的タスク実行モデル40と、ロボットAPI50とを含むことができる。
FIG. 2 is a block diagram of a robot task model generation and task execution apparatus according to an embodiment of the present invention, and an abstract action model designed by a service designer using an abstract action model. Indicates the switching of abstract execution tasks defined using. The apparatus shown in FIG. 2 can include a generation unit 10, a
生成部10は、行為生成部11及びコンテクスト生成部12からなっている。図3に示すように、例えば、抽象的行為モデル301の例のように、ロボットの行為は行為生成部11を通じて抽象的に生成し、これらの関係をコンテクスト生成部12を通じてコンテクストで表現でき、この表現されたコンテクストをコンテクスト管理部20に提供できる。
The generation unit 10 includes an action generation unit 11 and a
ここで、図3を参照すれば、行為1(Go to p)から行為7(Replan path)までの関係をそれぞれのコンテクスト1、2...、7で表現でき、行為と行為間の関係は1:nのコンテクストで連結され、全体的に抽象的行為モデルはグラフ形態になり得る。
Here, referring to FIG. 3, the relationship from act 1 (Go to p) to act 7 (Replan path) is shown in each
コンテクスト管理部20は、生成部10から入力される抽象的行為モデルのコンテクストに対して、一例として、図2に示すように、コンテクスト1(on)、コンテクスト2(off)、...、コンテクストn(off)に指定してコンテクストDB30に提供できる。ここで、コンテクスト管理部20は、コンテクストDB30に格納された抽象的行為モデルに対するコンテクストをいつでも更新し行為を加えることができる。
As shown in FIG. 2, the
また、コンテクスト管理部20は生成部10から入力される抽象的行為モデルのコンテクストに基づいて、図5に示すように、開始行為(行為5)から目的行為(行為4)まで指定されたツリー形式の抽象的タスク実行モデルを図6のフローチャート過程を通じて生成してランタイムモデリング部40に提供できる。ここで、コンテクスト管理部20は抽象的タスク実行モデルが生成されたら、抽象的タスク実行モデルにおいて不要な行為を除去できる。
Further, the
更に、コンテクスト管理部20は生成された抽象的タスク実行モデルを実際にロボット内に適用して動作するようにするために、図1に示すタスク具現者の観点102でのように、コンテクストマネジャー1021及び行為具現1022が生成されていなければならず、実行中にコンテクストDB30からコンテクストの内容を読み、行為具現に含まれている抽象的タスク実行モデルを実行するためにロボットAPI50を呼び出し、この呼び出しに応答してロボットAPI50のインターフェースを通じてランタイムモデリング部40にモデリングされている抽象的タスク実行モデルを図7のフローチャート過程で実行できる。
Further, the
コンテクストDB30は、コンテクスト管理部20から入力される抽象的行為モデルに対して指定されたコンテクスト(例えば、コンテクスト1(on)、コンテクスト2(off)、...、コンテクストn(off)を格納する。
The context DB 30 stores contexts (for example, context 1 (on), context 2 (off),..., Context n (off)) specified for the abstract action model input from the
ランタイムモデリング部40は、コンテクスト管理部20から入力される図5に示すように、開始行為(行為5)から目的行為(行為4)まで指定された抽象的タスク実行モデルをツリー形式でモデリングする。
As shown in FIG. 5 input from the
ロボットAPI50は、図4に示すように、複数のセンサ1、センサ2、...、センサnと複数の実行器1、実行器2、...、実行器nからなっており、コンテクスト管理部20の呼び出し命令に応じてランタイムモデリング部40にモデリングされている抽象的タスク実行モデルが実行され得るようにインターフェースする。
As shown in FIG. 4, the
従って、本発明はロボットサービス設計者に任意のロボットに対する可用行為とロボットが認識可能な周囲環境に関する情報を知らせ、自身が考えるサービスに対してロボットタスクを構成する行為モデルの設計と具現を分離してタスクを生成できるモデルを提供し、この生成されたモデルを用いる場合、サービスに表現された行為の内部を直接具現したり、行為ライブラリを提供するようにロボットタスクを実行することで、ロボットタスクを更に効果的に開発できるようにする。 Therefore, the present invention informs the robot service designer of information on the actions available for any robot and the surrounding environment that the robot can recognize, and separates the design and implementation of the action model that constitutes the robot task for the service considered by itself. If the generated model is used and the generated model is used, the robot task is executed by directly implementing the action expressed in the service or providing the action library. Can be developed more effectively.
図6は、本発明の一実施形態によって、抽象的行為モデルに対するコンテクストに基づいてツリー形式の抽象的タスク実行モデルを生成する方法を説明するフローチャートである。 FIG. 6 is a flowchart illustrating a method for generating a tree-type abstract task execution model based on a context for an abstract action model according to an embodiment of the present invention.
まず、コンテクスト管理部20はタスクの開始行為を指定(S601)し、現在の指定された行為が活性化するコンテクストを抽出(S603)する。
First, the
次に、コンテクスト管理部20は、抽出されたコンテクストを入力としてそれぞれの行為が最後である否かを判別(S605)する。
Next, the
前記判別(S605)の結果、その行為が最後である場合、新たに追加された下位の行為があるかをチェック(S607)する。 As a result of the determination (S605), if the action is the last, it is checked whether there is a newly added lower action (S607).
前記チェック(S607)の結果、新たに追加された下位の行為がない場合、前記行為をターゲット行為に指定(S609)し、前記指定されたターゲット行為まで不要な行為を除去(S611)する反面、前記チェック(S607)の結果、新たに追加された下位の行為がある場合、新たに追加された下位の行為が活性化するコンテクストを抽出するS603に進む。 If there is no newly added subordinate action as a result of the check (S607), the action is designated as a target action (S609), and unnecessary actions are removed up to the designated target action (S611). If there is a newly added subordinate action as a result of the check (S607), the process proceeds to S603 for extracting a context that activates the newly added subordinate action.
前記判別(S605)の結果、行為が最後でない場合、その行為がサイクルを形成するか(即ち、その行為が既に含まれているか)を判断(S613)する。 If the action is not the last as a result of the determination (S605), it is determined (S613) whether the action forms a cycle (that is, the action is already included).
前記判断(S613)の結果、サイクルを形成していなければ、その行為を現在の指定された行為の下位行為として指定(S615)する。しかし、前記判断(S613)の結果、サイクルを形成していれば、抽出されたコンテクストを入力として受けるそれぞれの行為が最後であるかを判別するS605の過程に進む。 If the cycle is not formed as a result of the determination (S613), the action is designated as a subordinate action of the currently designated action (S615). However, as a result of the determination (S613), if a cycle is formed, the process proceeds to S605 in which it is determined whether each action receiving the extracted context as the input is the last.
図7は、本発明の一実施形態による抽象的タスク実行モデルの実行方法に対するフローチャートである。 FIG. 7 is a flowchart illustrating a method for executing an abstract task execution model according to an embodiment of the present invention.
図7を参照すれば、抽象的タスク実行モデルからコンテクストを抽出(S701)する。 Referring to FIG. 7, a context is extracted from the abstract task execution model (S701).
次に、コンテクスト管理部20は抽出されたコンテクストを用いて抽象的タスク実行モデルのツリー構造に合うように、抽出されたコンテクストの優先順位を決定(S703)する。
Next, the
優先順位が決定された後に、コンテクスト管理部20はコンテクストDB30から更新されたコンテクスト情報を獲得(S705)する。
After the priority order is determined, the
次に、獲得されたコンテクスト情報を分析してオン(on)状態のコンテクストがあるかを判断(S707)する。 Next, the acquired context information is analyzed to determine whether there is an on-state context (S707).
前記判断(S707)の結果、オン状態のコンテクストがない場合に、定められた時間が経過したかをチェック(S709)する。 As a result of the determination (S707), if there is no context in the on state, it is checked whether a predetermined time has elapsed (S709).
前記チェック(S709)の結果、定められた時間が経過していない場合、コンテクスト情報を獲得するS705の過程に進む反面、前記チェック(S709)の結果、定められた時間が経過している場合、終了する。 As a result of the check (S709), when the predetermined time has not elapsed, the process proceeds to the process of S705 for acquiring the context information. On the other hand, when the predetermined time has elapsed as a result of the check (S709), finish.
その反面、前記判断(S707)の結果、オン状態のコンテクストがある場合、状態がオンであるコンテクストの中で優先順位が最も高いコンテクストを入力とする行為を実行(S711)する。 On the other hand, as a result of the determination (S707), if there is a context in the on state, an action is executed (S711) in which the context having the highest priority among the contexts in the on state is input.
その後、実行された行為が目的であるかを判別(S713)する。 Thereafter, it is determined whether or not the executed action is a purpose (S713).
前記判別(S713)の結果、実行された行為が目的でない場合、コンテクスト情報を獲得するS705の過程に進む反面、前記判別(S713)の結果、実行された行為が目的である場合、終了する。 As a result of the determination (S713), if the executed action is not the purpose, the process proceeds to the process of S705 for acquiring context information. On the other hand, if the executed action is the purpose as a result of the determination (S713), the process ends.
図8は、本発明の一実施形態によるロボットのタスクモデルの生成及び実行方法を順に示すフローチャートである。 FIG. 8 is a flowchart sequentially illustrating a method for generating and executing a robot task model according to an embodiment of the present invention.
まず、生成部10では、一例として、図3に示すように、抽象的行為モデルのためのロボットの行為を行為生成部11を通じて抽象的に生成(S801)し、行為間の関係をコンテクスト生成部12を通じてコンテクストで表現(S803)し、この表現されたコンテクストをコンテクスト管理部20に提供する。
First, as an example, as shown in FIG. 3, the generation unit 10 abstractly generates a robot action for an abstract action model through the action generation unit 11 (S801), and the relationship between the actions is a context generation unit. 12 is expressed as a context (S803), and the expressed context is provided to the
次に、生成部10から抽象的行為モデルに対するコンテクストの提供を受けるコンテクスト管理部20ではこの入力されたコンテクストに対して一例として、図2に示すように、コンテクスト1(on)、コンテクスト2(off)、...、コンテクストn(off)の形式に指定してコンテクストDB30に格納(S805)する。
Next, in the
その後、コンテクスト管理部20では生成部10から入力される抽象的行為モデルに対するコンテクストに基づいて図5に示すように、開始行為(行為5)から目的行為(行為4)まで指定されたツリー形式の抽象的タスク実行モデルを図6のフローチャートの過程を通じて生成(S807)して抽象的タスク実行モデル40にモデリング(S809)するように提供する。
Thereafter, in the
次に、コンテクスト管理部20により生成された抽象的タスク実行モデルを実際にロボット内に適用する(S811)。図1に示すロボットタスクの具現者の観点でのように、コンテクストマネジャー1021及び行為具現1022が生成されていなければならない。
Next, the abstract task execution model generated by the
その後、実行中にコンテクストDB30からコンテクストの内容を読み、行為具現に含まれている抽象的タスク実行モデルを実行するためにロボットAPI50を呼び出す(S813)。
Thereafter, during execution, the content of the context is read from the context DB 30, and the
そうすると、ロボットAPI50では、該当センサ及び実行器を用いてコンテクスト管理部20の呼び出し命令に応じてランタイムモデリング部40にモデリングされている抽象的タスク実行モデルが実行され得るようにインターフェース(S815)する。
Then, the
コンテクスト管理部20は、この呼び出しに応答してロボットAPI50のインターフェースを通じてランタイムモデリング部40にモデリングされている抽象的タスク実行モデルを図7に示された方法で実行(S817)する。
In response to this call, the
以上説明した通り、本発明はロボットのタスクモデルの生成及び実行方法とその装置を提供することによって、サービス開発者はロボット行為とタスクの抽象的な構造のみを考慮し、タスク具現者は必要なタスクライブラリの生成にのみ集中することで、任意のロボットで作動するタスクの安全性と漸進的な拡張及び体系化に多くの利点が得られる。 As described above, the present invention provides a method and apparatus for generating and executing a robot task model, so that a service developer considers only an abstract structure of robot actions and tasks, and a task implementer is necessary. By concentrating only on the generation of task libraries, there are many benefits to the safety and incremental expansion and organization of tasks that work with any robot.
一方、本発明の詳細な説明では具体的な実施形態について説明したが、本発明の範囲から逸脱しない範囲内で様々な変形が可能であることはもちろんである。従って、本発明の範囲は説明された実施形態に限定されず、後述する特許請求の範囲だけでなく、この特許請求の範囲と均等なものにより定まるべきである。 On the other hand, specific embodiments have been described in the detailed description of the present invention, but it goes without saying that various modifications can be made without departing from the scope of the present invention. Therefore, the scope of the present invention should not be limited to the described embodiments, but should be determined not only by the claims described below, but also by the equivalents of the claims.
10 生成部
20 コンテクスト管理部
30 コンテクストDB
40 抽象的タスク実行モデル
50 ロボットAPI
10
40 Abstract
Claims (20)
ロボットの行為を生成する段階と、
前記行為をコンテクストで表現する段階と、
前記コンテクストに基づいて抽象的タスク実行モデルを生成する段階と、
実際にロボットを動作するためにロボットのAPIを呼び出して前記生成された抽象的タスク実行モデルを実行する段階と
を含むことを特徴とするロボットのタスクモデルの生成及び実行方法。 In a robot task model generation and execution method,
Generating a robot action;
Expressing the act in context;
Generating an abstract task execution model based on the context;
A method for generating and executing a robot task model, comprising: calling a robot API to actually operate the robot and executing the generated abstract task execution model.
タスクの開始行為を指定する段階と、
前記行為が活性化させるコンテクストを抽出する段階と、
前記コンテクストを入力として受けるそれぞれの行為が最後の行為であるかを判別する段階と、
前記判別結果において前記行為が最後の行為であり、新たに追加される行為がない場合に前記行為をターゲット行為として指定する段階と、
前記判別結果において前記行為が最後の行為ではなく、前記行為がサイクルを形成しなければ、前記行為の下位行為として指定する段階と
をさらに含むことを特徴とする請求項1に記載のロボットのタスクモデルの生成及び実行方法。 The step of generating the abstract task execution model includes:
Specifying the task start action,
Extracting a context that the act activates;
Determining whether each act receiving the context as input is a final act;
Designating the action as a target action when the action is the last action in the determination result and there is no newly added action;
The robot task according to claim 1, further comprising: designating the action as a sub-action of the action if the action is not the last action in the determination result and the action does not form a cycle. How to generate and execute a model.
前記抽象的タスク実行モデルからコンテクストを抽出する段階と、
前記コンテクストの優先順位を決定し、更新されたコンテクスト情報を獲得する段階と、
前記コンテクスト情報を分析して、オン(on)状態のコンテクストのうち、優先順位が最も高いコンテクストを入力とする行為を皮切りに、目的行為に到達するまで実行する段階と
を含むことを特徴とする請求項1に記載のロボットのタスクモデルの生成及び実行方法。 The step of executing the abstract task execution model includes:
Extracting a context from the abstract task execution model;
Determining priorities of the contexts and obtaining updated context information;
Analyzing the context information, and starting with an action having the highest priority among the contexts in the on state as an input, and executing until the target action is reached. The method for generating and executing a robot task model according to claim 1.
ロボットの行為及びコンテクストを生成する生成部と、
前記コンテクストに基づいて抽象的タスク実行モデルを生成し、実際にロボットを動作するために前記抽象的タスク実行モデルを実行するコンテクスト管理部と、
前記コンテクスト管理部により呼び出されて前記抽象的タスク実行モデルが実行されるようにインターフェースするロボットAPIと
を含むことを特徴とするロボットのタスクモデルの生成及び実行装置。 In the robot task model generation and execution device,
A generation unit for generating a robot action and context;
A context management unit that generates an abstract task execution model based on the context and executes the abstract task execution model to actually operate the robot;
A robot task model generation and execution device, comprising: a robot API that is called by the context management unit to interface with the abstract task execution model.
前記ロボットの行為を生成する行為生成部と、
前記行為をコンテクストで表現して生成するコンテクスト生成部と
をさらに含むことを特徴とする請求項12に記載のロボットのタスクモデルの生成及び実行装置。 The generator is
An action generation unit for generating an action of the robot;
The robot task model generation and execution device according to claim 12, further comprising: a context generation unit that generates the action by expressing the action in a context.
前記ロボットの行為をそれぞれのコンテクストで表現し、前記行為と行為間の関係を1:nのコンテクストで連結させることを特徴とする請求項13に記載のロボットのタスクモデルの生成及び実行装置。 The generator is
14. The robot task model generation and execution device according to claim 13, wherein the robot actions are expressed in respective contexts, and the relationship between the actions is connected in a 1: n context.
前記ロボットを実際に動作するようにするためにコンテクストマネジャー及び行為具現を生成することを特徴とする請求項13に記載のロボットのタスクモデルの生成及び実行装置。 The generator is
The apparatus for generating and executing a robot task model according to claim 13, wherein a context manager and an action implementation are generated to actually operate the robot.
タスクの開始行為を指定し、前記開始行為が活性化させるコンテクストを抽出し、前記コンテクストを入力として受けるそれぞれの行為が最後の行為であり、新たに追加される行為がない場合に、前記行為をターゲット行為として指定し、前記それぞれの行為が最後の行為ではなく、前記行為がサイクルを形成しなければ、前記行為を下位行為として指定して前記抽象的タスク実行モデルを生成することを特徴とする請求項12に記載のロボットのタスクモデルの生成及び実行装置。 The context management unit
Specify the starting action of the task, extract the context activated by the starting action, and each action that receives the context as an input is the last action, and when there is no newly added action, the action is The abstract task execution model is generated by designating as a target action and designating the action as a subordinate action if each action is not the last action and the action does not form a cycle. The robot task model generation and execution device according to claim 12.
前記抽象的タスク実行モデルを生成する場合、前記それぞれの行為が最後の行為であり、新たに追加される行為がない場合に、前記指定されたターゲット行為まで不要な行為を除去することを特徴とする請求項16に記載のロボットのタスクモデルの生成及び実行装置。 The context management unit
When generating the abstract task execution model, when each action is a last action and there is no newly added action, unnecessary actions are removed until the specified target action is characterized. The robot task model generation and execution device according to claim 16.
前記抽象的タスク実行モデルからコンテクストを抽出し、前記コンテクストの優先順位を決定し、更新されたコンテクスト情報を獲得し、前記コンテクスト情報を分析してオン(on)状態のコンテクストで優先順位が最も高いコンテクストを入力とする行為を皮切りに、目的行為に到達するまで前記抽象的タスク実行モデルを実行することを特徴とする請求項16に記載のロボットのタスクモデルの生成及び実行装置。 The context management unit
The context is extracted from the abstract task execution model, the priority of the context is determined, updated context information is obtained, the context information is analyzed, and the priority is highest in the context of an on state. 17. The robot task model generation and execution device according to claim 16, wherein the abstract task execution model is executed until an objective action is reached, starting with an action having a context as an input.
多数のセンサと多数の実行器のうち、該当センサ及び実行器を用いて前記抽象的タスク実行モデルが実行されるようにインターフェースすることを特徴とする請求項12に記載のロボットのタスクモデルの生成及び実行装置。 The robot API is
13. The robot task model generation according to claim 12, wherein the abstract task execution model is interfaced using a corresponding sensor and an executor among a large number of sensors and a large number of executors. And execution device.
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR10-2008-0131763 | 2008-12-22 | ||
KR1020080131763A KR101182727B1 (en) | 2008-12-22 | 2008-12-22 | Method and apparatus generating and executing robot task model |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2010142940A true JP2010142940A (en) | 2010-07-01 |
JP5162530B2 JP5162530B2 (en) | 2013-03-13 |
Family
ID=42563897
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2009144347A Expired - Fee Related JP5162530B2 (en) | 2008-12-22 | 2009-06-17 | Robot task model generation and execution method and apparatus |
Country Status (2)
Country | Link |
---|---|
JP (1) | JP5162530B2 (en) |
KR (1) | KR101182727B1 (en) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPWO2021171349A1 (en) * | 2020-02-25 | 2021-09-02 |
Families Citing this family (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR101373055B1 (en) * | 2009-12-18 | 2014-03-11 | 한국전자통신연구원 | Apparatus and method for executing robot task using defining robot model |
KR101673707B1 (en) | 2014-12-04 | 2016-11-08 | 문제모 | Industrial water purifier filter retainer |
KR101931857B1 (en) * | 2016-02-12 | 2018-12-21 | 강원대학교산학협력단 | Apparatus and method for managing robot tasks |
KR102040901B1 (en) | 2017-12-12 | 2019-11-06 | 경기대학교 산학협력단 | System for generating robot task plans |
CN109465834A (en) * | 2019-01-04 | 2019-03-15 | 北京邮电大学 | A kind of mechanical arm fast worktodo planing method based on planning knowledge base |
CN110154025B (en) * | 2019-05-24 | 2022-02-18 | 深圳百胜扬工业电子商务平台发展有限公司 | Method and device for verifying whether process combination based on manipulator operation is reasonable |
CN112388625B (en) * | 2019-08-15 | 2022-05-24 | 纳恩博(北京)科技有限公司 | Task issuing method and device and task executing method and device |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2001353678A (en) * | 2000-06-12 | 2001-12-25 | Sony Corp | Authoring system and method and storage medium |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2003045639A2 (en) | 2001-11-28 | 2003-06-05 | Evolution Robotics, Inc. | Sensor and actuator abstraction and aggregation in a hardware abstraction layer for a robot |
-
2008
- 2008-12-22 KR KR1020080131763A patent/KR101182727B1/en not_active IP Right Cessation
-
2009
- 2009-06-17 JP JP2009144347A patent/JP5162530B2/en not_active Expired - Fee Related
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2001353678A (en) * | 2000-06-12 | 2001-12-25 | Sony Corp | Authoring system and method and storage medium |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPWO2021171349A1 (en) * | 2020-02-25 | 2021-09-02 | ||
WO2021171349A1 (en) * | 2020-02-25 | 2021-09-02 | 日本電気株式会社 | Control device, control method, and recording medium |
JP7343033B2 (en) | 2020-02-25 | 2023-09-12 | 日本電気株式会社 | Control device, control method and program |
Also Published As
Publication number | Publication date |
---|---|
JP5162530B2 (en) | 2013-03-13 |
KR20100073169A (en) | 2010-07-01 |
KR101182727B1 (en) | 2012-09-18 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP5162530B2 (en) | Robot task model generation and execution method and apparatus | |
KR100995592B1 (en) | Method and Apparatus for Embedded System Design using Target Independent Model | |
TWI531973B (en) | Registration and execution of highly concurrent processing tasks | |
JP2007523407A (en) | How to configure a computer program | |
JP6258159B2 (en) | Program information generation system, method, and program | |
Soukaras et al. | IoTSuite: a ToolSuite for prototyping internet of things applications | |
JP2018502391A (en) | Computer-implemented method for displaying a user interface | |
JP5910499B2 (en) | Extensibility evaluation apparatus, extensibility evaluation method, and extensibility evaluation program | |
JP2013084112A (en) | Programmable controller system, programming device thereof, programmable controller, program and debug method | |
US20110307224A1 (en) | System and Method for Machine Engine Modeling | |
KR101277275B1 (en) | Task implementation method based on behavior in robot system | |
Taentzer et al. | Generating domain-specific model editors with complex editing commands | |
KR101862592B1 (en) | Service open-type robot knowledge framework system | |
JP7156094B2 (en) | Automatic code generation method and automatic code generation program | |
JP2008152400A (en) | Application management system and control method therefor | |
Ubayashi et al. | An AOP implementation framework for extending join point models | |
JP2011165051A (en) | Development support device, method and program | |
Richter et al. | Generic simulation: Creating the model's structure from a data base | |
JP2002230062A (en) | Design supporting device and method and system design supporting device | |
JP2009157534A (en) | Programming support system, its programmable controller support device, and programmable indicator support device | |
Schuster et al. | Synthesizing executable simulations from structural models of component-based systems | |
Van den Bergh et al. | CASSIS: a modeling language for customizable user interface designs | |
JP2000200190A (en) | Software development support device, software development support method and computer readable storage medium recording program for making computer execute the method | |
Lehmann et al. | Utilizing dynamic executable models for user interface development | |
KR101373055B1 (en) | Apparatus and method for executing robot task using defining robot model |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20110929 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20111004 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20111209 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20120420 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20120607 |
|
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: 20121116 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20121217 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 5162530 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20151221 Year of fee payment: 3 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
LAPS | Cancellation because of no payment of annual fees |