JP5539000B2 - Control device - Google Patents

Control device Download PDF

Info

Publication number
JP5539000B2
JP5539000B2 JP2010107733A JP2010107733A JP5539000B2 JP 5539000 B2 JP5539000 B2 JP 5539000B2 JP 2010107733 A JP2010107733 A JP 2010107733A JP 2010107733 A JP2010107733 A JP 2010107733A JP 5539000 B2 JP5539000 B2 JP 5539000B2
Authority
JP
Japan
Prior art keywords
robot
motion
section
trajectory
task
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.)
Expired - Fee Related
Application number
JP2010107733A
Other languages
Japanese (ja)
Other versions
JP2011235378A (en
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.)
Honda Motor Co Ltd
Original Assignee
Honda Motor Co Ltd
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 Honda Motor Co Ltd filed Critical Honda Motor Co Ltd
Priority to JP2010107733A priority Critical patent/JP5539000B2/en
Publication of JP2011235378A publication Critical patent/JP2011235378A/en
Application granted granted Critical
Publication of JP5539000B2 publication Critical patent/JP5539000B2/en
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Description

本発明は、対象物との相互作用を伴うタスクをロボットに実行させるロボットの制御装置に関する。   The present invention relates to a robot control apparatus that causes a robot to execute a task involving interaction with an object.

近年、ロボットに対象物を把持させるなど、対象物との相互作用を伴うタスクをロボットに実行させるための様々な技術が提案されている(下記特許文献1参照)。   In recent years, various techniques have been proposed for causing a robot to perform a task that involves interaction with the object, such as causing the robot to grasp the object (see Patent Document 1 below).

特開2005−125462号公報JP 2005-125462 A

しかしながら、把持する対象物との周囲には他の物体が存在していることが多く、対象物を把持するためには、他の物体との干渉を回避しながら対象物を把持させる必要があり、対象物との相互作用を伴うタスクを実行するために要する演算処理負荷が増大するという問題がある。   However, there are many other objects around the object to be grasped, and in order to grasp the object, it is necessary to grasp the object while avoiding interference with other objects. There is a problem that the processing load required to execute a task involving interaction with the object increases.

そこで、本発明は、以上の点に鑑み、処理負荷が増大することを抑制しつつ、ロボットに相互作用を伴うタスクを実行させることができるロボットの制御装置を提供することを目的とする。   SUMMARY OF THE INVENTION In view of the above, an object of the present invention is to provide a robot control apparatus that can cause a robot to execute a task involving interaction while suppressing an increase in processing load.

第1発明の制御装置は、演算処理を行うCPUを有し、基体と、前記基体に連結された肢体とを備えるロボットに、1または複数の対象物との相互作用を伴うタスクを実行させるロボットの制御装置であって、
前記対象物である第1対象物と、前記ロボットまたは該ロボットと一体となった第2対象物との干渉可能性の有無をチェックする干渉判定手段と、
前記タスクを実行する一連の動作から、前記ロボットまたは該ロボットと一体となった第2対象物が前記第1対象物に対して非接触状態から接触状態へ遷移する動作区分である第1動作区分と、前記ロボットまたは該ロボットと一体となった第2対象物が前記第1対象物に対して接触状態から非接触状態へ遷移する動作区分である第2動作区分とのいずれか一方または両方を区分すると共に、前記第1動作区分とに対して時系列的に前で連続し、これに加えてまたは代えて前記第2動作区分に対して時系列的に後で連続する動作区分である第3動作区間を区分する動作区分手段と、
前記動作区分手段により区分された前記第1動作区分および第2動作区分では、前記ロボットまたは該ロボットと一体となった第2対象物と前記第1対象物との前記干渉判定を前記干渉判定手段に省略させながら、前記第3動作区分では前記ロボットまたは該ロボットと一体となった第2対象物と前記第1対象物との前記干渉判定を干渉判定手段に実行させ、前記タスクを実行する前記ロボットの時系列的な位置および姿勢を生成する行動計画手段と
を備えることを特徴とする。
A control device according to a first aspect of the present invention includes a CPU that performs arithmetic processing, and causes a robot including a base and a limb connected to the base to perform a task that involves interaction with one or more objects. A control device of
Interference determination means for checking whether or not there is a possibility of interference between the first object as the object and the robot or the second object integrated with the robot;
A first motion section that is a motion section in which the robot or a second object integrated with the robot transitions from a non-contact state to a contact state with respect to the first object from a series of operations for executing the task. And / or a second motion section that is a motion section in which the robot or the second object integrated with the robot transitions from the contact state to the non-contact state with respect to the first object. with partitioning, the first series in succession in front when Actuation respect and a series in Actuation successive later time in addition to or to the second operation segment Alternatively An action dividing means for dividing the three action sections;
In the first action section and the second action section divided by the action section means, the interference judgment between the robot or the second object integrated with the robot and the first object is determined by the interference judgment means. In the third operation section, the interference determination unit executes the interference determination between the robot or the second object integrated with the robot and the first object, and executes the task. It is characterized by comprising action planning means for generating a time-series position and posture of the robot.

第1発明の制御装置によれば、タスクを実行する一連の動作から第1対象物に対する接触状態が遷移する動作区分を第1または第2動作区分として区分し、第1または第2動作区分では、第1対象物との間の干渉判定を省略することで、干渉演算モデルを細かくする必要がなくなり、結果として、第1対象物との間の干渉判定による演算処理負荷が増大することを抑制することができ、第1対象物以外の物体との干渉を回避することができる。   According to the control device of the first aspect of the present invention, the operation division in which the contact state with respect to the first object transitions from a series of operations for executing a task is classified as the first or second operation division, and in the first or second operation division, By omitting the interference determination with the first object, it is not necessary to make the interference calculation model finer, and as a result, the calculation processing load due to the interference determination with the first object is suppressed from increasing. And interference with objects other than the first object can be avoided.

一方で、第1および第2動作区分では、第1対象物は、ロボットまたはロボットと一体となった第2対象物と既に接触しているか、これから接触するものであるため、第1対象物との間の干渉判定を省略しても、(第1対象物以外の他の物体との干渉を回避できれば、)ロボットにタスクを実行させることができる。   On the other hand, in the first and second motion sections, the first object is already in contact with or in contact with the robot or the second object integrated with the robot. Even if the interference determination is omitted, the robot can execute the task (if interference with other objects other than the first object can be avoided).

さらに、第1および第2動作区分以外の第3動作区分では、第1対象物との間の干渉判定を実行することで、第1対象物を含めた他の物体との干渉を回避しながら、ロボットにタスクを実行させることができる。   Further, in the third motion section other than the first and second motion sections, while performing interference determination with the first object, avoiding interference with other objects including the first object. , You can let the robot perform tasks.

このように、第1発明の制御装置によれば、処理負荷が増大することを抑制しつつ、ロボットに相互作用を伴うタスクを実行させることができる。   As described above, according to the control device of the first aspect of the present invention, it is possible to cause the robot to execute a task involving interaction while suppressing an increase in processing load.

第2発明の制御装置は、第1発明において、
前記動作区分手段は、前記干渉判定手段が前記干渉判定を行う際の前記CPUの演算量が第1所定値以下となるように、前記タスクを実行する一連の動作から前記第1動作区分と前記第2動作区分とのいずれか一方または両方を区分することを特徴とする。
The control device of the second invention is the control device according to the first invention,
The operation classifying unit includes the first operation class and the series of operations to execute the task so that the calculation amount of the CPU when the interference determination unit performs the interference determination is equal to or less than a first predetermined value. One or both of the second operation classification and the second operation classification are distinguished.

第2発明の制御装置によれば、干渉判定に要する演算量が第1所定値以下となるように、タスクを実行する一連の動作から第1または第2動作区分が区分される。そのため、タスクを実行する際の干渉判定に要する演算処理負荷を第1所定値以下とすることができ、処理負荷が増大することを抑制しつつ、ロボットに相互作用を伴うタスクを実行させることができる。   According to the control device of the second invention, the first or second operation section is divided from a series of operations for executing the task so that the amount of calculation required for the interference determination is equal to or less than the first predetermined value. Therefore, the calculation processing load required for the interference determination at the time of executing the task can be made equal to or less than the first predetermined value, and it is possible to cause the robot to execute the task with interaction while suppressing an increase in the processing load. it can.

発明の制御装置は、第1または第2発明において、
前記行動計画手段は、前記第1動作区分と前記第2動作区分とのいずれか一方または両方における前記ロボットの時系列的な位置および姿勢を、前記第1対象物の形状に応じた回転と並進移動とのいずれか一方またはそれらの組み合わせを制約条件として生成することを特徴とする。
The control device of the third invention is the first or second invention,
The action planning unit is configured to rotate and translate the time-series position and posture of the robot in one or both of the first motion section and the second motion section according to the shape of the first object. One of the movements or a combination thereof is generated as a constraint condition.

発明の制御装置によれば、第1または第2動作区分では、第1対象物の形状に応じた回転と並進移動を制約条件として、ロボットの時系列的な位置および姿勢が生成される。そのため、第1または第2動作区分では、ロボットの時系列的な位置および姿勢を容易に生成することができ、これらの区間での処理負荷が増大することを抑制しつつ、第1対象物に対する相互作用を伴うタスクをロボットに実行させることができる。 According to the control device of the third aspect of the invention, in the first or second motion section, the time-series position and orientation of the robot are generated with the rotation and translational movements according to the shape of the first object as constraints. . Therefore, in the first or second motion section, the time-series position and posture of the robot can be easily generated, and an increase in the processing load in these sections is suppressed, and the first object is controlled. Tasks involving interactions can be executed by the robot.

本実施形態のロボットの構成説明図。FIG. 3 is a configuration explanatory diagram of the robot according to the present embodiment. ロボットの制御装置の構成説明図。FIG. 2 is a configuration explanatory diagram of a robot control device. ロボットの制御装置における処理を示すフローチャート。The flowchart which shows the process in the control apparatus of a robot. ロボットの制御装置における処理内容を示す説明図。Explanatory drawing which shows the processing content in the control apparatus of a robot. ロボットの制御装置における処理内容を示す説明図。Explanatory drawing which shows the processing content in the control apparatus of a robot.

次に、本発明のロボットの制御装置の実施形態について、図1〜図5を参照して説明する。   Next, an embodiment of a robot control apparatus of the present invention will be described with reference to FIGS.

まず、図1に示すように、ロボットの制御装置は、自律移動ロボットR(以下、ロボットRという)のコントローラ100およびサポートサーバ200により構成されている。   First, as shown in FIG. 1, the robot control device includes a controller 100 and a support server 200 of an autonomous mobile robot R (hereinafter referred to as robot R).

ロボットRは、基体10と、基体10の上部に設けられた頭部11と、基体10の上部左右両側から延設された左右の腕部12と、腕部12の先端部に設けられた手部14と、基体10の下部から下方に延設された左右の脚部13と、脚部13の先端部に取り付けられている足部15とを備えている。ロボットRは、再表03/090978号公報や、再表03/090979号公報に開示されているように、アクチュエータ1000(図3参照)から伝達される力によって、人間の肩関節、肘関節、手根関節、股関節、膝関節、足関節等の複数の関節に相当する複数の関節部分において腕部12や脚部13を屈伸運動させることができる。ロボットRは、左右の脚部13(または足部15)のそれぞれの離床および着床の繰り返しを伴う動きによって自律的に移動することができる。基体10の鉛直方向に対する傾斜角度と高さ方向を調整することによって、頭部11の位置姿勢、
手部14の到達可能な範囲すなわち作業の可能な範囲を調整され得る。なお、移動装置は複数の脚部13の動作によって自律的に移動するロボットRのほか、車輪式移動ロボット(自動車)等、移動機能を有するあらゆる装置であってもよい。
The robot R includes a base 10, a head 11 provided on the top of the base 10, left and right arms 12 extending from the left and right sides of the top of the base 10, and a hand provided at the tip of the arm 12. Part 14, left and right leg parts 13 extending downward from the lower part of base body 10, and foot part 15 attached to the tip part of leg part 13. As disclosed in Table 03/090978 and Table 03/090979, the robot R is configured so that a human shoulder joint, elbow joint, The arm portion 12 and the leg portion 13 can be bent and extended at a plurality of joint portions corresponding to a plurality of joints such as a wrist joint, a hip joint, a knee joint, and an ankle joint. The robot R can move autonomously by movement of the left and right leg portions 13 (or the foot portions 15) with repeated leaving and landing. By adjusting the inclination angle and height direction of the base body 10 with respect to the vertical direction,
The reachable range of the hand portion 14, that is, the workable range can be adjusted. Note that the moving device may be any device having a moving function, such as a wheeled mobile robot (automobile), in addition to the robot R that moves autonomously by the operation of the plurality of legs 13.

頭部11には、左右に並んでロボットRの前方に向けられた一対の頭カメラ(CCDカメラ)C1が搭載されている。基体10には、ロボットRの前側下部の検知領域A(C2)に赤外レーザ光線(電磁波)を出力し、その反射光の入力に応じた信号を出力する腰カメラC2が搭載されている。腰カメラC2はロボットRの前方下方にある物体の位置の測定、床面に付されているマークの形状および姿勢の認識に基づくロボットRの方位または姿勢の測定、および、台車等の運搬対象物に付されているマークの形状または姿勢の認識結果に基づくこの運搬対象物の位置または姿勢の測定等に用いられる。 The head 11 is mounted with a pair of head cameras (CCD cameras) C 1 that are arranged side by side and directed to the front of the robot R. Mounted on the base 10 is a waist camera C 2 that outputs an infrared laser beam (electromagnetic wave) to the detection area A (C 2 ) at the lower front side of the robot R and outputs a signal corresponding to the input of the reflected light. Yes. The waist camera C 2 measures the position of the object below the front of the robot R, measures the orientation or posture of the robot R based on recognition of the shape and posture of the mark attached to the floor surface, and a transport object such as a carriage. This is used for measuring the position or posture of the object to be transported based on the recognition result of the shape or posture of the mark attached to the object.

ロボットRはハードウェアとしてのECUまたはコンピュータ(CPU,ROM,RAM,I/O等により構成されている。)により構成されているコントローラ100と、通信機器140(図2参照)とを備えている。コンピュータのメモリには制御プログラム(ソフトウェア)が格納されている。制御プログラムはCDやDVD等のソフトウェア記録媒体を通じてコンピュータにインストールされてもよいが、ロボットRからサーバに要求信号が送信されたことに応じて当該サーバによってネットワークや人工衛星を介して当該コンピュータにダウンロードされてもよい。   The robot R includes a controller 100 constituted by an ECU or a computer (configured by a CPU, ROM, RAM, I / O, etc.) as hardware, and a communication device 140 (see FIG. 2). . A control program (software) is stored in the memory of the computer. The control program may be installed in the computer through a software recording medium such as a CD or DVD, but when the request signal is transmitted from the robot R to the server, the server downloads to the computer via the network or artificial satellite. May be.

図2に示すように、コントローラ100は、入力装置101のほか、ロボットRに搭載された頭カメラC、腰カメラC、肩カメラC、ロータリエンコーダ102、ジャイロセンサ103、GPS受信器104等の出力信号に基づき、アクチュエータ1000の動作を制御することにより、腕部12や脚部13の動作を制御する。コントローラ100は、サポートサーバ200からロボットRに対して送信された生成軌道にしたがって、このロボットRの行動を制御する。 As shown in FIG. 2, in addition to the input device 101, the controller 100 includes a head camera C 1 , a waist camera C 2 , a shoulder camera C 3 , a rotary encoder 102, a gyro sensor 103, and a GPS receiver 104 mounted on the robot R. By controlling the operation of the actuator 1000 based on the output signal such as the above, the operation of the arm portion 12 and the leg portion 13 is controlled. The controller 100 controls the behavior of the robot R according to the generated trajectory transmitted from the support server 200 to the robot R.

入力装置(ユーザ端末)101は、例えば、キーボードやタッチパネルなどの入力デバイスと、液晶ディスプレーなどのモニタを備えたパーソナルコンピュータからなる端末であって、コントローラ100との間で通信可能に構成されている。入力装置101は、ユーザがこれを操作することにより、ロボットRで実行可能なタスクを指定することができる。このように、入力装置101は、ロボットRの起動・停止・タスク実行などをユーザが指示してロボットRを遠隔操作するためのユーザインターフェースとして用いられると共に、頭カメラC1等の映像の表示などロボット自体の作動状況の監視に用いることもできる。   The input device (user terminal) 101 is a terminal composed of a personal computer including an input device such as a keyboard and a touch panel and a monitor such as a liquid crystal display, and is configured to be able to communicate with the controller 100. . The input device 101 can designate a task that can be executed by the robot R when the user operates it. As described above, the input device 101 is used as a user interface for the user to remotely start and stop the robot R by instructing the start, stop, task execution, etc. of the robot R, and to display the image of the head camera C1, etc. It can also be used to monitor its own operating status.

頭カメラC1、腰カメラC2等は、対象物や外界干渉物の挙動状態等、ロボットRの外部状態または環境を測定するためのセンサに相当する。 The head camera C 1 , the waist camera C 2, and the like correspond to sensors for measuring the external state or environment of the robot R, such as the behavior state of an object or an external interference object.

ロータリエンコーダ102、ジャイロセンサ103、GPS受信器104は、ロボットRの内部状態または挙動状態を測定するためのセンサ等に相当し、これには、図示しないロボットRに搭載されたバッテリの端子電圧を検出する電圧センサ、脚部13に作用する床反力に応じた信号を出力する力センサ等、ロボットRに搭載されている種々のセンサが内部状態センサ等が該当する。これらのセンサの検出値に基づいて、コントローラ100は、ロボットRの内部状態または挙動状態を認識する。   The rotary encoder 102, the gyro sensor 103, and the GPS receiver 104 correspond to sensors for measuring the internal state or behavior state of the robot R, and this includes the terminal voltage of a battery mounted on the robot R (not shown). Various sensors mounted on the robot R, such as a voltage sensor to be detected and a force sensor that outputs a signal corresponding to the floor reaction force acting on the leg 13, correspond to an internal state sensor or the like. Based on the detection values of these sensors, the controller 100 recognizes the internal state or behavior state of the robot R.

アクチュエータ1000は電動モータ等の駆動源のほか、駆動源の出力軸と腕部12や脚部13を構成するリンクとの間に設けられた減速機や、弾性部材等の柔軟要素により構成されている。   The actuator 1000 includes a drive source such as an electric motor, a speed reducer provided between the output shaft of the drive source and the link constituting the arm portion 12 and the leg portion 13, and a flexible element such as an elastic member. Yes.

さらに、コントローラ100は、要求タスク生成部110と、画像処理部120と、将来外界予測部130と、通信機器140と、主制御部150とを備える。   Further, the controller 100 includes a request task generation unit 110, an image processing unit 120, a future external world prediction unit 130, a communication device 140, and a main control unit 150.

要求タスク生成部110は、入力装置101によるユーザの操作を解釈する機能を有し、入力装置101を介してユーザによって指定された要求タスクを認識し、要求タスクを実行するために要求される要求軌道群を作成する。ここで、要求軌道群は、タスクをその実行段階に応じておおまかに分割した場合の各段階で要求される軌道の集合体を指す。そして、要求タスク生成部110は、生成した要求軌道群を将来外界予測部130およびサポートサーバ200へ出力する。   The request task generation unit 110 has a function of interpreting a user's operation by the input device 101, recognizes a request task specified by the user via the input device 101, and requests required to execute the request task Create a trajectory group. Here, the required trajectory group refers to a set of trajectories required at each stage when the task is roughly divided according to the execution stage. Then, the requested task generation unit 110 outputs the generated requested trajectory group to the future external world prediction unit 130 and the support server 200.

画像処理部120は、ステレオ処理部121と、障害物検出部122と、対象物認識部123とを備え、カメラC1〜C3で撮影した画像を処理して、撮影された画像からロボットRの周囲の状況を把握するため、周囲の障害物や対象物の認識を行う。   The image processing unit 120 includes a stereo processing unit 121, an obstacle detection unit 122, and an object recognition unit 123. The image processing unit 120 processes images captured by the cameras C1 to C3, and the surroundings of the robot R from the captured images. Recognize surrounding obstacles and objects to understand the situation.

ステレオ処理部121は、左右の頭カメラC1,C1が撮影した2枚の画像の一方を基準としてパターンマッチングを行い、左右の画像中の対応する各画素の視差を計算して視差画像を生成し、生成した視差画像及び元の画像を障害物検出部122へ出力する。なお、この視差は、ロボットRから撮影された物体までの距離を表すものである。   The stereo processing unit 121 performs pattern matching on the basis of one of the two images taken by the left and right head cameras C1 and C1, calculates the parallax of each corresponding pixel in the left and right images, and generates a parallax image. The generated parallax image and the original image are output to the obstacle detection unit 122. This parallax represents the distance from the robot R to the photographed object.

障害物検出部122は、ステレオ処理部101から出力されたデータに基づき、撮影した画像中の障害物を検出する。   The obstacle detection unit 122 detects an obstacle in the captured image based on the data output from the stereo processing unit 101.

対象物認識部123は、検出した障害物からタスクの実行の際に相互作用を伴う対象物の形状等を抽出して、その大きさ、形状等から対象物を認識する。   The object recognition unit 123 extracts the shape or the like of the object accompanied by the interaction when executing the task from the detected obstacle, and recognizes the object from the size, the shape, or the like.

なお、障害物検出部122で検出された障害物の領域、大きさ、形状と、対象物認識部123で認識された対象物の領域、大きさ、形状とは、将来外界予測部130へ出力される。   Note that the area, size, and shape of the obstacle detected by the obstacle detection unit 122 and the area, size, and shape of the object recognized by the object recognition unit 123 are output to the future external prediction unit 130. Is done.

将来外界予測部130は、要求タスク生成部110により生成された要求軌道群と、障害物検出部122および対象物認識部123で認識された現時点での障害物および対象物から、タスクの実行段階に応じた将来の障害物および対象物の位置等を推定する。   The future external world prediction unit 130 performs a task execution stage from the requested trajectory group generated by the requested task generation unit 110 and the current obstacles and objects recognized by the obstacle detection unit 122 and the object recognition unit 123. Estimate future obstacles and target positions according to the situation.

すなわち、将来外界予測部130は、現時点から、タスクをその実行段階に応じておおまかに分割した場合の第1段階で要求される軌道に従ってロボットRを動作させた後の障害物および対象物の位置等を推定する。次に、この状態(第1段階の実行後)から、第2段階で要求される軌道に従ってロボットRを動作さえた後の障害物および対象物の位置等を推定する。以下、この推定を繰り返すことで、要求タスク生成部110により生成された要求軌道群に従ってロボットを動作させた各段階での障害物および対象物の位置等を推定する。   That is, the future external world prediction unit 130 determines the position of the obstacle and the object after operating the robot R according to the trajectory required in the first stage when the task is roughly divided according to the execution stage from the present time. Etc. are estimated. Next, from this state (after execution of the first stage), the position and the like of the obstacle and the object after the robot R is operated according to the trajectory required in the second stage are estimated. Hereinafter, by repeating this estimation, the position of the obstacle and the object at each stage where the robot is operated according to the requested trajectory group generated by the requested task generation unit 110 is estimated.

主制御部150は、サポートサーバ200からロボットRに対して送信された生成軌道にしたがって、複数のアクチュエータ1000を制御し、生成軌道にこのロボットRの行動を追従させる。   The main control unit 150 controls the plurality of actuators 1000 according to the generated trajectory transmitted from the support server 200 to the robot R, and causes the behavior of the robot R to follow the generated trajectory.

サポートサーバ(CPU,ROM,RAM,I/O等により構成されている。)200は基地局(図示略)および通信網を介してロボットRとの通信機能を有している。   A support server (comprising a CPU, ROM, RAM, I / O, etc.) 200 has a communication function with the robot R via a base station (not shown) and a communication network.

サポートサーバ200は、動作区分処理部210と、軌道探索管理部220と、干渉判定部230とを備える。   The support server 200 includes an operation classification processing unit 210, a trajectory search management unit 220, and an interference determination unit 230.

動作区分処理部210は、要求タスク生成部110により生成された要求軌道群の各実行段階における一連の動作をさらに次のように区分する。   The motion classification processing unit 210 further classifies a series of operations in each execution stage of the requested trajectory group generated by the required task generation unit 110 as follows.

各段階の一連の動作を、(1)ロボットRまたはロボットRと一体となった第2対象物T2が第1対象物T1に対して非接触状態から接触状態へ遷移する(例えば対象物を把持する)動作区分である第1動作区分D1と、(2)ロボットRまたはロボットRと一体となった第2対象物T2が第1対象物T1に対して接触状態から非接触状態へ遷移する(対象物を放す)動作区分である第2動作区分D2と、(3)第1動作区分D1と第2動作区分D2とのいずれか一方または両方に連続する動作区分である第3動作区間D3とに区分する。   A series of operations at each stage is performed as follows: (1) The robot R or the second object T2 integrated with the robot R transitions from the non-contact state to the contact state with respect to the first object T1 (for example, gripping the object) (1) The first motion section D1 which is the motion section, and (2) the robot R or the second object T2 integrated with the robot R transitions from the contact state to the non-contact state with respect to the first object T1 ( A second motion segment D2 that is a motion segment (releasing the object), and (3) a third motion segment D3 that is a motion segment that is continuous with one or both of the first motion segment D1 and the second motion segment D2. Divide into

軌道探索管理部220は、要求タスク生成部110により生成された要求軌道群の各実行段階における一連の動作の軌道探索を行い、初期姿勢探索部221と、終端姿勢探索部222と、中間姿勢探索部223とを備える。   The trajectory search management unit 220 performs a trajectory search of a series of operations at each execution stage of the required trajectory group generated by the required task generation unit 110, an initial posture search unit 221, a terminal posture search unit 222, and an intermediate posture search. Part 223.

初期姿勢探索部221は、動作区分処理部210により区分された第2動作区分D2についての軌道探索を行う。   The initial posture searching unit 221 performs a trajectory search for the second motion category D2 segmented by the motion segment processing unit 210.

終端姿勢探索部222は、動作区分処理部210により区分された第1動作区分D1についての軌道探索を行う。   The terminal posture search unit 222 performs a trajectory search for the first motion category D1 segmented by the motion segment processing unit 210.

中間姿勢探索部223は、動作区分処理部210により区分された第3動作区分D3についての軌道探索を行う。   The intermediate posture search unit 223 performs a trajectory search for the third motion category D3 segmented by the motion segment processing unit 210.

なお、軌道探索管理部220による軌道探索については、後述する。   The trajectory search by the trajectory search management unit 220 will be described later.

干渉判定部230は、(A)画像処理部120の障害物検出部122で検出された障害物および対象物認識部123で認識された対象物と、(B)ロボットRまたはロボットと一体となった対象物との干渉可能性の有無をチェックする。   The interference determination unit 230 is integrated with (A) the obstacle detected by the obstacle detection unit 122 of the image processing unit 120 and the object recognized by the object recognition unit 123, and (B) the robot R or the robot. Check for possible interference with the target object.

次に、図3を参照して本実施形態のロボットRの制御装置における処理内容を示す説明する。   Next, processing contents in the control device for the robot R of this embodiment will be described with reference to FIG.

まず、コントローラ100は、ユーザからのタスク実行の要求があるか否か判定する(図3/STEP10)。そして、ユーザが、入力装置101を介してロボットRの実行タスクを指定すると(図3/STEP10でYES)、コントローラ100の要求タスク生成部110が、要求軌道群を作成する(図3/STEP20)。なお、これと並行して主制御部150による処理(図3/STEP30〜)が実行されるが、主制御手段による処理内容については後述する。   First, the controller 100 determines whether there is a task execution request from the user (FIG. 3 / STEP 10). When the user designates an execution task of the robot R via the input device 101 (YES in FIG. 3 / STEP 10), the required task generation unit 110 of the controller 100 creates a required trajectory group (FIG. 3 / STEP 20). . In parallel with this, processing by the main control unit 150 (FIG. 3 / STEP 30-) is executed, and details of processing by the main control means will be described later.

ここで、ロボットRの実行タスクとしては、例えば、図4に示すようにテーブルW1上のカップW2をトレイW3に移動するタスクが指定される。かかるタスクに対して、要求タスク生成部110が、タスクの実行段階を第1〜第3階段階に分割し、各段階で要求される要求軌道群を生成する(図3/STEP20)。なお、図4において、破線で示す矢印は、ロボットRの手部14の位置軌道の一部を示している。   Here, as an execution task of the robot R, for example, a task for moving the cup W2 on the table W1 to the tray W3 is designated as shown in FIG. For such a task, the requested task generation unit 110 divides the task execution stage into first to third floor stages, and generates a required trajectory group required in each stage (FIG. 3 / STEP 20). In FIG. 4, an arrow indicated by a broken line indicates a part of the position trajectory of the hand portion 14 of the robot R.

ここで、第1〜第3段階は、軌道探索管理部220による処理単位を考慮した決定されるものである。すなわち、軌道探索管理部220では、第2動作区分D2(初期姿勢)から第3動作区分D3(中間姿勢)を経て第1動作区分D1(終端姿勢)へ至る一連の動作を処理単位としているため、要求タスク生成部110は、これを1つの段階として分割する。   Here, the first to third stages are determined in consideration of processing units by the trajectory search management unit 220. That is, in the trajectory search management unit 220, a series of operations from the second motion segment D2 (initial posture) to the first motion segment D1 (end posture) through the third motion segment D3 (intermediate posture) is used as a processing unit. The request task generation unit 110 divides this as one stage.

また、要求軌道群は、後述する姿勢探索(図3/STEP24〜26)を行う際の条件を各段階について規定したものである。すなわち、各段階について、ロボットRの目標軌道(目標姿勢軌道および目標姿勢軌道)として要求される軌道探索条件を規定したものである。   The required trajectory group defines conditions for performing a posture search (FIG. 3 / STEPs 24 to 26) described later for each stage. That is, for each stage, the trajectory search conditions required as the target trajectory (target posture trajectory and target posture trajectory) of the robot R are defined.

次いで、将来外界予測部130が、要求タスク生成部110により生成された要求軌道群と、障害物検出部122および対象物認識部123で認識された現時点での障害物および対象物から、タスクの実行段階に応じた将来の障害物および対象物の位置等を推定した将来外界状況群を作成する(図3/STEP21)。   Next, the future external world prediction unit 130 determines the task from the requested trajectory group generated by the requested task generation unit 110 and the current obstacles and objects recognized by the obstacle detection unit 122 and the object recognition unit 123. A future external situation group is created in which the position of the future obstacle and the object according to the execution stage is estimated (FIG. 3 / STEP 21).

具体的に、将来外界予測部130は、図4に示す第1段階〜第3の各段階後のテーブルW1、カップW2、トレイW3の位置等の状況を推定した将来外界状況群を作成する。例えば、将来外界予測部130は、現在の状況からタスクを第2段階まで実行した後の状況(カップW2がトレイに移動された図4(f)の状況)を推定等することができる。   Specifically, the future outside world prediction unit 130 creates a future outside world situation group in which the situation such as the position of the table W1, the cup W2, and the tray W3 after the first to third stages shown in FIG. 4 is estimated. For example, the future external world prediction unit 130 can estimate the situation after the task is executed from the current situation to the second stage (the situation shown in FIG. 4F in which the cup W2 is moved to the tray).

次に、サポートサーバ200は、コントローラ100から、軌道生成要求があるか否かを判定する(図3/STEP22)。   Next, the support server 200 determines whether or not there is a trajectory generation request from the controller 100 (FIG. 3 / STEP 22).

軌道生成要求の有無は、要求タスク生成部110で作成された要求軌道群および将来外界予測部130で作成された将来外界状況群がサポートサーバ200へ送信の有無によりは判定される。   The presence / absence of a trajectory generation request is determined based on whether or not the requested trajectory group created by the requested task generation unit 110 and the future external world situation group created by the future external world prediction unit 130 are transmitted to the support server 200.

そして、軌道生成要求がある場合には(図3/STEP22でYES)、動作区分処理部210が、要求軌道群の各実行段階における一連の動作をその動作区分に応じて分割する(図3/STEP23)。一方、軌道生成要求がない場合には(図3/STEP22でNO)、この処理を終了する。   When there is a trajectory generation request (YES in FIG. 3 / STEP 22), the motion classification processing unit 210 divides a series of operations in each execution stage of the requested trajectory group according to the motion classification (FIG. 3 / (STEP 23). On the other hand, when there is no trajectory generation request (NO in STEP 3 in FIG. 3), this process ends.

具体的に、動作区分処理部210は、図4(a)および(b)に示す第1段階では、まず、カップW2を第1対象物T1として、ロボットRが第1対象物に対して非接触状態から接触状態に遷移する動作区分である第1動作区分D1を分割する(図4(b)参照)。そして、動作区分処理部210は、第1段階で第1動作区分D1に連続する動作区分を第3動作区分D3とする(図4(a)参照)。   Specifically, in the first stage shown in FIGS. 4A and 4B, the motion classification processing unit 210 first sets the cup W2 as the first object T1 and the robot R does not move against the first object. The first operation section D1, which is an operation section that transitions from the contact state to the contact state, is divided (see FIG. 4B). Then, the motion category processing unit 210 sets the motion category that follows the first motion category D1 in the first stage as the third motion category D3 (see FIG. 4A).

ここで、図4(b)に示す第1動作区分D1の始点は、第1対象物であるカップを把持する動作の初期姿勢および初期位置により規定される。例えば、基体10を固定した状態で腕部12および手部14を動作させることにより第1対象物であるカップを把持することができる、ロボットRの初期姿勢および初期位置が第1動作区分D1の始点となる。これは、第2動作区分D2の始点についても同様である。   Here, the starting point of the first motion section D1 shown in FIG. 4B is defined by the initial posture and the initial position of the motion of gripping the cup that is the first object. For example, the cup 12 as the first object can be gripped by moving the arm 12 and the hand 14 while the base body 10 is fixed. The initial posture and initial position of the robot R are those of the first motion section D1. The starting point. The same applies to the start point of the second operation section D2.

次いで、動作区分処理部210は、図4(c)〜(e)に示す第2段階では、まず、カップW2をロボットRと一体となったカップW2を第2対象物T2、テーブルW1を第1対象物T1として、ロボットRおよびこれと一体となったカップW2(T2)が、テーブルW1(T1)に対して接触状態から非接触状態に遷移する動作区分である第2動作区分D2を分割する(図4(c)参照)。さらに、カップW2をロボットRと一体となったカップW2を第2対象物T2、トレイW3を第1対象物T1として、ロボットRおよびこれと一体となったカップW2(T2)が、トレイW3(T1)に対して非接触状態から接触状態に遷移する動作区分である第1動作区分D1を分割する(図4(e)参照)。そして、第2段階で第2動作区分D2および第1動作区分D1に連続する動作区分を第3動作区分D3とする(図4(d)参照)。   Next, in the second stage shown in FIGS. 4C to 4E, the motion classification processing unit 210 first sets the cup W2 integrated with the robot R to the second object T2 and the table W1 to the second. As the first object T1, the robot R and the cup W2 (T2) integrated with the robot R divide the second motion section D2, which is the motion section in which the table W1 (T1) transitions from the contact state to the non-contact state. (See FIG. 4C). Further, the cup W2 integrated with the robot R is defined as the second object T2, and the tray W3 is defined as the first object T1, and the robot R and the cup W2 (T2) integrated with the tray W3 ( For T1), the first motion section D1 that is the motion section that transitions from the non-contact state to the contact state is divided (see FIG. 4E). Then, in the second stage, an operation segment that is continuous with the second operation segment D2 and the first operation segment D1 is defined as a third operation segment D3 (see FIG. 4D).

同様に、動作区分処理部210は、図4(f)に示す第3段階では、まず、カップW2を第1対象物T1として、ロボットRが、カップW2(T1)に対して接触状態から非接触状態に遷移する動作区分である第2動作区分D2を分割する(図4(d)参照)。そして、動作区分処理部210は、第3段階で第2動作区分D2に連続する動作区分(基本姿勢への復帰)を第3動作区分D3とする(図示省略)。   Similarly, in the third stage shown in FIG. 4F, the motion classification processing unit 210 first sets the cup W2 as the first object T1 and the robot R is not in contact with the cup W2 (T1). The second motion section D2, which is the motion section that transitions to the contact state, is divided (see FIG. 4D). Then, the motion category processing unit 210 sets the motion category (returning to the basic posture) following the second motion category D2 in the third stage as the third motion category D3 (not shown).

次に、軌道探索管理部220が、第1〜第3段階の各段階におけるロボットRの軌道を探索して、タスクの各段階におけるロボットRの時系列的な位置および姿勢を生成する(図3/STEP24〜27)。   Next, the trajectory search management unit 220 searches the trajectory of the robot R at each stage of the first to third stages, and generates the time-series position and orientation of the robot R at each stage of the task (FIG. 3). / STEP 24-27).

具体的には、第1〜第3段階の各段階について、初期姿勢探索部221が、第2動作区分D2についての軌道探索を行い(図3/STEP24)、終端姿勢探索部222が、第1動作区分D1についての軌道探索を行い(図3/STEP25)、中間姿勢探索部223が、第3動作区分D3についての軌道探索を行う(図3/STEP26)。   Specifically, for each of the first to third stages, the initial posture search unit 221 performs a trajectory search for the second motion section D2 (FIG. 3 / STEP 24), and the terminal posture search unit 222 performs the first step. The trajectory search for the motion section D1 is performed (FIG. 3 / STEP 25), and the intermediate posture search unit 223 performs the trajectory search for the third motion section D3 (FIG. 3 / STEP 26).

ここで、軌道探索管理部220による軌道探索は、要求タスク生成部110により生成された、タスクの各実行段階で要求される要求軌道を満たす軌道を探索する。具体的には、ロボットRの各部位について、空間的な位置を代表する代表点の目標位置の時系列としての目標位置軌道と、目標姿勢の時系列としての目標姿勢軌道とを探索する。さらに、ロボットRと第2対象物T2が一体となっている場合には、第2対象物の空間的な位置を代表する代表点の目標位置の時系列としての目標位置軌道と、目標姿勢の時系列としての目標姿勢軌道とを併せて探索する。   Here, the trajectory search by the trajectory search management unit 220 searches for a trajectory that is generated by the required task generation unit 110 and that satisfies the required trajectory required at each execution stage of the task. Specifically, for each part of the robot R, a target position trajectory as a time series of target positions of representative points representing spatial positions and a target attitude trajectory as a time series of target postures are searched. Further, when the robot R and the second object T2 are integrated, a target position trajectory as a time series of target positions of representative points representing the spatial position of the second object, and a target posture Search with the target posture trajectory as a time series.

このとき、軌道探索管理部220は、図5に示すように、タスクにおいて相互作用を伴う第1対象物T1については、第1対象物T1の形状に応じた回転と並進移動とのいずれか一方または両方を制約条件として目標位置軌道および目標姿勢軌道を探索する。   At this time, as shown in FIG. 5, the trajectory search management unit 220, for the first target T1 that interacts in the task, either rotation or translation according to the shape of the first target T1. Alternatively, the target position trajectory and the target posture trajectory are searched with both as constraints.

具体的には、図5(a)に示すように、第1対象物T1の形状が円形である場合には、中心軸に対する回転を制約条件として、目標位置軌道および目標姿勢軌道を探索する。   Specifically, as shown in FIG. 5A, when the shape of the first object T1 is circular, the target position trajectory and the target posture trajectory are searched with the rotation about the central axis as a constraint.

一方、図5(b)に示すように、第1対象物T1の形状が筒型である場合のように軸方向の位置依存がない場合には、その軸方向の並進移動(正確には、筒体の底面高さ位置と上面高さ位置との間での並進移動)を制約条件として、目標位置軌道および目標姿勢軌道を探索する。   On the other hand, as shown in FIG. 5B, when there is no position dependency in the axial direction as in the case where the shape of the first object T1 is cylindrical, the translational movement in the axial direction (more precisely, The target position trajectory and the target posture trajectory are searched for using the translational movement between the bottom surface height position and the top surface height position of the cylinder as a constraint.

なお、図5(a)および(b)には、第1対象物T1の形状に応じて回転または並進移動を制約条件とする場合について説明したが、これに限定されるものではなく、回転と並進移動を任意に組み合わせて制約条件とすることができる。例えば、回転を制約条件とした後、並進移動を制約条件とし、再び回転を制約条件とする複数の回転と並進移動の組み合わせによる姿勢や、それらを時系列的に組み合わせた動作的な制約も採用し得る。   In addition, although FIG. 5 (a) and (b) demonstrated the case where rotation or translation was made into a constraint condition according to the shape of the 1st target object T1, it is not limited to this, rotation and Any combination of translational movements can be used as a constraint. For example, after using rotation as a constraint condition, adopting translational movement as a constraint condition, posture by a combination of multiple rotations and translational movements again as a constraint condition, and operational constraints that combine them in time series Can do.

以上説明した軌道探索管理部220による軌道探索において、初期姿勢探索部221が行う第2動作区分D2についての軌道探索では、ロボットRとロボットRと一体となった第2対象物T2と、第1対象物T1との干渉判定が省略される。   In the trajectory search by the trajectory search management unit 220 described above, in the trajectory search for the second motion category D2 performed by the initial posture search unit 221, the robot R and the second object T2 integrated with the robot R, the first The determination of interference with the object T1 is omitted.

例えば、図4(c)に示す第2動作区分D2では、ロボットRとロボットRと一体となった第2対象物T2であるカップW2と、第1対象物T1であるテーブルW1との干渉判定部230による干渉判定が省略される。また、図4(f)に示す第2動作区分D2では、ロボットRと、第1対象物T1であるカップW2との干渉判定部230による干渉判定が省略される。   For example, in the second motion section D2 shown in FIG. 4C, the interference determination between the robot R and the cup W2 that is the second object T2 integrated with the robot R and the table W1 that is the first object T1. The interference determination by the unit 230 is omitted. Further, in the second motion section D2 shown in FIG. 4F, the interference determination by the interference determination unit 230 between the robot R and the cup W2 that is the first object T1 is omitted.

さらに、終端姿勢探索部222が行う第1動作区分D1についての軌道探索では、ロボットRとロボットRと一体となった第2対象物T2と、第1対象物T1との干渉判定が省略される。   Further, in the trajectory search for the first motion section D1 performed by the terminal posture search unit 222, the interference determination between the second object T2 integrated with the robot R and the robot R and the first object T1 is omitted. .

例えば、図4(a)に示す第1動作区分D1では、ロボットRと、第1対象物T1であるカップW2との干渉判定部230による干渉判定が省略される。また、図4(e)に示す第1動作区分D1では、ロボットRと一体となった第2対象物であるカップW2と、第1対象物T1であるトレイW3との干渉判定部230による干渉判定が省略される。   For example, in the first motion section D1 illustrated in FIG. 4A, the interference determination by the interference determination unit 230 between the robot R and the cup W2 that is the first object T1 is omitted. Further, in the first motion section D1 shown in FIG. 4E, interference by the interference determination unit 230 between the cup W2 that is the second object integrated with the robot R and the tray W3 that is the first object T1. Judgment is omitted.

これにより、第1動作区分D1および第2動作区分D2では、タスクにおける相互作用を伴う第1対象物T1との間の干渉判定による演算処理負荷が増大することを抑制することができる。   Thereby, in 1st operation | movement division D1 and 2nd operation | movement division D2, it can suppress that the calculation processing load by the interference determination with the 1st target object T1 with the interaction in a task increases.

また、第1動作区分D1および第2動作区分D2では、第1対象物T1は、ロボットRまたはロボットRと一体となった第2対象物T2と既に接触しているか、これから接触するものであるため、第1対象物T1との間の干渉判定を省略しても、第1対象物T1以外の他の物体との干渉を回避できれば、ロボットRにタスクを実行させることができる。   In the first motion section D1 and the second motion section D2, the first object T1 is already in contact with the robot R or the second object T2 integrated with the robot R, or will come into contact therewith. Therefore, even if the interference determination with the first object T1 is omitted, the robot R can execute the task if interference with other objects other than the first object T1 can be avoided.

一方、中間姿勢探索部223が行う第3動作区分D3についての軌道探索では、ロボットRとロボットRと一体となった第2対象物T2と、第1対象物T1を含めたすべての障害物との干渉判定が行われる。   On the other hand, in the trajectory search for the third motion category D3 performed by the intermediate posture search unit 223, the robot R and the second object T2 integrated with the robot R and all obstacles including the first object T1 Is determined.

これにより、第1および第2動作区分以外の第3動作区分D3では、第1対象物T1との間の干渉判定を実行することで、第1対象物T1を含めて他の障害物との干渉を回避しながら、タスクを実行する一連の動作を実現することができる。   Thereby, in 3rd operation division D3 other than the 1st and 2nd operation division, by performing interference judgment with the 1st target object T1, it is with other obstacles including the 1st target object T1. A series of operations for executing a task can be realized while avoiding interference.

次に、軌道探索管理部220は、初期姿勢探索部221による第2動作区分D2の目標軌道(目標位置軌道および目標姿勢軌道、以下同じ)と、終端姿勢探索部222による第1動作区分D1の目標軌道と、中間姿勢探索部223によるこれらの区分の間を繋ぐ第2動作区分D3の目標軌道との全て目標軌道が生成されたか否かを判定する(図3/STEP27)。   Next, the trajectory search management unit 220 sets the target trajectory (target position trajectory and target posture trajectory, the same applies hereinafter) of the second motion category D2 by the initial posture search unit 221 and the first motion category D1 of the terminal posture search unit 222. It is determined whether or not all target trajectories have been generated between the target trajectory and the target trajectory of the second motion section D3 that connects these sections by the intermediate posture search unit 223 (FIG. 3 / STEP 27).

そして、全ての目標軌道が生成されている場合には(図3/STEP27でYES)、軌道探索管理部220が生成された目標軌道を図示しないメモリ等に記録し(図3/STEP28)、STEP23へリターンする。これにより、次のタスクの実行段階について、STEP23以降の処理を繰り返し実行する。   If all target trajectories have been generated (YES in FIG. 3 / STEP 27), the trajectory search management unit 220 records the generated target trajectory in a memory (not shown) or the like (FIG. 3 / STEP 28), and STEP 23 Return to Thereby, the processing after STEP23 is repeatedly executed for the execution stage of the next task.

一方、全ての目標軌道が生成されていない場合には(図3/STEP27でNO)、STEP24へリターンして、再度、STEP24以降の処理を実行する。   On the other hand, when all the target trajectories have not been generated (NO in STEP 27 in FIG. 3), the process returns to STEP 24 and the processes after STEP 24 are executed again.

以上が、要求タスクに応じて目標軌道を生成する一連の処理である。   The above is a series of processes for generating the target trajectory according to the requested task.

次に、説明を後回しにした主制御部150による処理(図3/STEP30〜STEP33)を説明する。   Next, processing (FIG. 3 / STEP 30 to STEP 33) performed by the main control unit 150, which has been described later, will be described.

なお、主制御部150によるSTEP30〜の処理が、STEP20〜の処理と同時並行的に実行されるのは、主制御部150は、目標軌道の生成タイミングに拠らず、ロボットRにタスクを実行させるためである。すなわち、主制御部150は、STEP24〜26により目標軌道が生成されたタイミングで目標軌道に追従するように、アクチュエータ1000を制御するのではなく、STEP28でメモリ等に記録された目標軌道が蓄積されていれば、それを逐次処理する。これにより、目標軌道の生成タイミングに拠らず、ロボットRにタスク実行を行わせることができ、ロボットRの実行動作に連続性を持たせることができる。   It should be noted that the processing from STEP 30 to the main control unit 150 is executed in parallel with the processing from STEP 20 to the main control unit 150 does not perform the target trajectory generation timing, but performs tasks on the robot R. This is to make it happen. That is, the main control unit 150 does not control the actuator 1000 so as to follow the target trajectory at the timing when the target trajectory is generated in STEPs 24 to 26, but stores the target trajectory recorded in the memory or the like in STEP28. If so, it is processed sequentially. Thus, the task can be executed by the robot R regardless of the generation timing of the target trajectory, and the execution operation of the robot R can be made continuous.

まず、主制御部150は、要求タスク生成部110が作成した要求軌道群を取得する(図3/STEP30)。   First, the main control unit 150 acquires the requested trajectory group created by the requested task generation unit 110 (FIG. 3 / STEP 30).

次いで、主制御部150は、軌道追従要求があるか否かを判定する(図3/STEP31)。   Next, the main control unit 150 determines whether or not there is a trajectory follow-up request (FIG. 3 / STEP 31).

そして、主制御部150は、軌道追従要求がない場合には(図3/STEP31でNO)、この処理を終了し、軌道追従要求がある場合には(図3/STEP31でYES)、軌道探索管理部220により軌道が生成されているか否かを判定する(図3/STEP32)。   When there is no trajectory follow-up request (NO in FIG. 3 / STEP 31), the main control unit 150 ends this process, and when there is a trajectory follow-up request (YES in FIG. 3 / STEP 31), trajectory search. It is determined whether or not a trajectory has been generated by the management unit 220 (FIG. 3 / STEP 32).

そして、軌道探索管理部220により生成された目標軌道が図示しないメモリ等に記録されている場合には(図3/STEP32でYES)、主制御部150は、ロボットRのアクチュエータ1000を制御することにより、生成された目標軌道にロボットRを追従させる(図3/STEP33)。   When the target trajectory generated by the trajectory search management unit 220 is recorded in a memory or the like (not shown) (YES in FIG. 3 / STEP 32), the main control unit 150 controls the actuator 1000 of the robot R. Thus, the robot R is caused to follow the generated target trajectory (FIG. 3 / STEP 33).

さらに、主制御部150は、目標軌道にロボットRが追従しているか否かを判定する(図3/STEP34)。   Further, the main control unit 150 determines whether or not the robot R follows the target trajectory (FIG. 3 / STEP 34).

そして、ロボットRが目標軌道に追従している場合には(図3/STEP34でYES)、STEP31へリターンして、次の軌道追従要求があるか否かを判定する。一方、ロボットRが目標軌道に追従していない場合には(図3/STEP34でNO)、ロボットRが目標軌道に追従するまでこの処理を繰り返す。   If the robot R follows the target trajectory (YES in STEP 34 in FIG. 3), the process returns to STEP 31 to determine whether there is a next trajectory follow-up request. On the other hand, when the robot R does not follow the target trajectory (NO in STEP 3 in FIG. 3), this process is repeated until the robot R follows the target trajectory.

なお、この場合に、目標起動に第1対象物T1への押し付け動作がある場合には、ロボットRの対象部位のアクチュエータ1000を制御してロボットRに押し付け動作を行わせる。   In this case, when the target activation includes a pressing operation against the first target T1, the actuator 1000 of the target part of the robot R is controlled to cause the robot R to perform the pressing operation.

一方、(STEP32で)軌道探索管理部220により生成された目標軌道が図示しないメモリ等に記録されていない場合には(図3/STEP32でNO)、一定時間待機し、軌道探索管理部220により軌道が生成されたタイミングで(図3/STEP35でNO)、STEP33以降の処理を実行する。一方で、待機時間が経過してタイムアップした場合には(図3/STEP35でYES)、目標軌道が存在しないか、すでに生成されたすべての目標軌道についてロボットRの追従が完了したものとして、一連の処理を終了する。   On the other hand, if the target trajectory generated by the trajectory search management unit 220 is not recorded in a memory (not shown) or the like (in STEP 32) (NO in STEP 32 in FIG. 3), the trajectory search management unit 220 waits for a certain period of time. At the timing when the trajectory is generated (NO in STEP 35 in FIG. 3), the processing after STEP 33 is executed. On the other hand, if the standby time has elapsed and time is up (YES in FIG. 3 / STEP 35), it is assumed that the target trajectory does not exist or that the robot R has completed tracking for all target trajectories that have already been generated. A series of processing ends.

以上が、本実施形態のロボットRの制御装置における処理内容であり、上述したように、かかる制御装置によれば、処理負荷が増大することを抑制しつつ、相互作用を伴うタスクを、干渉を回避して確実に実行させることができる。   The above is the processing content in the control device of the robot R of the present embodiment. As described above, according to such a control device, it is possible to suppress the task involving the interaction while suppressing an increase in the processing load. It can be avoided and executed reliably.

なお、上記実施形態では、第1動作区分D1および第2動作区分D2の始点は、その動作の初期姿勢および初期位置により予め規定されていたが、これに限定されるものではない。   In the above embodiment, the starting points of the first motion section D1 and the second motion section D2 are defined in advance by the initial posture and the initial position of the motion, but are not limited to this.

例えば、干渉判定部230が行う干渉判定の演算量が第1所定値以下となるように、動作区分処理部210が、第1動作区分D1の始点および第2動作区分D2の始点とをその都度決定するようにしてもよい。   For example, the motion classification processing unit 210 determines the start point of the first motion category D1 and the start point of the second motion category D2 each time so that the calculation amount of the interference determination performed by the interference determination unit 230 is equal to or less than the first predetermined value. It may be determined.

このとき、軌道探索管理部220は、第1動作区分D1および第2動作区分D2の予め規定された始点に基づいて、干渉判定に要する全演算量を推定した上で、その推定値が第1所定範囲以下となるように、第1動作区分D1および第2動作区分D2の始点を変更する。なお、変更される始点は、第1動作区分D1および第2動作区分D“の両方でもよいが、第2動作区分D2のみを変更することが好ましい。対象物に対して非接触状態となる第2動作区分D2は、接触状態へ遷移する第1動作区分D1に比して動作精度をある程度低下させることができるからである。   At this time, the trajectory search management unit 220 estimates the total amount of computation required for the interference determination based on the predetermined start points of the first motion section D1 and the second motion section D2, and then the estimated value is the first. The starting points of the first operation section D1 and the second operation section D2 are changed so as to be within a predetermined range. The starting point to be changed may be both the first motion section D1 and the second motion section D ", but it is preferable to change only the second motion section D2. This is because the operation accuracy of the second operation section D2 can be reduced to some extent as compared with the first operation section D1 that transitions to the contact state.

これにより、タスクを実行する際の干渉判定に要する演算処理負荷を第1所定値以下とすることができ、処理負荷が増大することを抑制しつつ、ロボットに相互作用を伴うタスクを実行させることができる。   Thereby, the calculation processing load required for the interference determination when executing the task can be reduced to the first predetermined value or less, and the robot is caused to execute the task with the interaction while suppressing an increase in the processing load. Can do.

また、タスクの各実行段階(第1〜第3動作区分のすべて)に対する第1動作区分D1と第2動作区分D2とのいずれか一方または両方の比率が所定の割合以上(第2所定値)となるように、動作区分処理部210が、第1動作区分D1の始点および第2動作区分D2の始点とをその都度決定するようにしてもよい。   In addition, the ratio of one or both of the first operation section D1 and the second operation section D2 to each execution stage of the task (all of the first to third operation sections) is equal to or higher than a predetermined ratio (second predetermined value). As described above, the motion category processing unit 210 may determine the start point of the first motion category D1 and the start point of the second motion category D2 each time.

これにより、第1または第2動作区分の割合を第2所定値以上にして、これらの区間での処理負荷が増大することを抑制しつつ、相互作用を伴うタスクをロボットRに実行させることができる。   This makes it possible to cause the robot R to execute a task with an interaction while suppressing the increase in processing load in these sections by setting the ratio of the first or second motion section to the second predetermined value or more. it can.

また、上記実施形態では、ロボットRのコントローラ100による処理負荷を軽減すべく、動作区分処理部210、軌道探索管理部220および干渉判定部230をサポートサーバ200に設け、分散処理を行う構成について説明したが、これに限定されるものではない。すなわち、コントローラ100の各処理部110〜130,150と、サポートサーバの各処理部210〜230の一部または全部をコントローラ100に備え、残りの処理部をサポートサーバに備えるように構成してもよい。例えば、コントローラ100にすべての処理部を設けて、サポートサーバ200を備えない構成としてもよい。   Further, in the above-described embodiment, a configuration is described in which the motion classification processing unit 210, the trajectory search management unit 220, and the interference determination unit 230 are provided in the support server 200 in order to reduce the processing load on the controller 100 of the robot R, and distributed processing is performed. However, the present invention is not limited to this. In other words, the controller 100 may include a part or all of the processing units 110 to 130 and 150 of the controller 100 and the processing units 210 to 230 of the support server, and the support server may include the remaining processing units. Good. For example, all the processing units may be provided in the controller 100 and the support server 200 may not be provided.

さらに、上記実施形態では、情報端末である入力装置101によりタスクが指定される構成について説明したが、これに限定されるものではない。例えば、ロボットRが備えマイクロフォン等によりユーザの指示を音声認識するように構成してもよい。   Furthermore, although the above embodiment has described the configuration in which a task is specified by the input device 101 that is an information terminal, the present invention is not limited to this. For example, the robot R may be configured to recognize a user instruction by a microphone or the like.

R…ロボット、100…コントローラ、101…入力装置、110…要求タスク生成部、120…画像処理部、130…将来外界予測部、150…主制御部、200…サポートサーバ、210…動作区分処理部(動作区分手段)、220…軌道探索管理部(行動計画手段)、221…初期姿勢探索部、222…終端姿勢探索部、223…中間姿勢探索部、230…干渉判定部(干渉判定手段)、D1…第1動作区分、D2…第2動作区分、D3…第3動作区分、T1…第1対象物、T2…第2対象物、W1…テーブル、W2…カップ、W3…トレイ。 R ... Robot, 100 ... Controller, 101 ... Input device, 110 ... Request task generation unit, 120 ... Image processing unit, 130 ... Future external world prediction unit, 150 ... Main control unit, 200 ... Support server, 210 ... Action division processing unit (Motion classification means), 220 ... trajectory search management section (behavior planning means), 221 ... initial posture search section, 222 ... end posture search section, 223 ... intermediate posture search section, 230 ... interference determination section (interference determination means), D1 ... 1st operation | movement division, D2 ... 2nd operation | movement division, D3 ... 3rd operation | movement division, T1 ... 1st target object, T2 ... 2nd target object, W1 ... Table, W2 ... Cup, W3 ... Tray.

Claims (3)

演算処理を行うCPUを有し、基体と、前記基体に連結された肢体とを備えるロボットに、1または複数の対象物との相互作用を伴うタスクを実行させるロボットの制御装置であって、
前記対象物である第1対象物と、前記ロボットまたは該ロボットと一体となった第2対象物との干渉可能性の有無をチェックする干渉判定手段と、
前記タスクを実行する一連の動作から、前記ロボットまたは該ロボットと一体となった第2対象物が前記第1対象物に対して非接触状態から接触状態へ遷移する動作区分である第1動作区分と、前記ロボットまたは該ロボットと一体となった第2対象物が前記第1対象物に対して接触状態から非接触状態へ遷移する動作区分である第2動作区分とのいずれか一方または両方を区分すると共に、前記第1動作区分に対して時系列的に前で連続し、これに加えてまたは代えて前記第2動作区分に対して時系列的に後で連続する動作区分である第3動作区分を区分する動作区分手段と、
前記動作区分手段により区分された前記第1動作区分および第2動作区分では、前記ロボットまたは該ロボットと一体となった第2対象物と前記第1対象物との前記干渉判定を前記干渉判定手段に省略させながら、前記第3動作区分では前記ロボットまたは該ロボットと一体となった第2対象物と前記第1対象物との前記干渉判定を干渉判定手段に実行させ、前記タスクを実行する前記ロボットの時系列的な位置および姿勢を生成する行動計画手段と
を備えることを特徴とする制御装置。
A control device for a robot having a CPU for performing arithmetic processing, and causing a robot including a base body and a limb connected to the base body to perform a task involving interaction with one or more objects,
Interference determination means for checking whether or not there is a possibility of interference between the first object as the object and the robot or the second object integrated with the robot;
A first motion section that is a motion section in which the robot or a second object integrated with the robot transitions from a non-contact state to a contact state with respect to the first object from a series of operations for executing the task. And / or a second motion section that is a motion section in which the robot or the second object integrated with the robot transitions from the contact state to the non-contact state with respect to the first object. And a third motion segment that is continuous in time series with respect to the first motion segment and that continues in time sequence with respect to the second motion segment in addition to or instead of the third motion segment. An action classifying means for classifying the action class;
In the first action section and the second action section divided by the action section means, the interference judgment between the robot or the second object integrated with the robot and the first object is determined by the interference judgment means. In the third operation section, the interference determination unit executes the interference determination between the robot or the second object integrated with the robot and the first object, and executes the task. A control device comprising: action planning means for generating a time-series position and posture of the robot.
請求項1記載の制御装置において、
前記動作区分手段は、前記干渉判定手段が前記干渉判定を行う際の前記CPUの演算量が第1所定値以下となるように、前記タスクを実行する一連の動作から前記第1動作区分と前記第2動作区分とのいずれか一方または両方を区分することを特徴とする制御装置。
The control device according to claim 1,
The operation classifying unit includes the first operation class and the series of operations to execute the task so that the calculation amount of the CPU when the interference determination unit performs the interference determination is equal to or less than a first predetermined value. A control device that divides one or both of the second operation section and the second operation section.
請求項1または2記載の制御装置において、
前記行動計画手段は、前記第1動作区分と前記第2動作区分とのいずれか一方または両方における前記ロボットの時系列的な位置および姿勢を、前記第1対象物の形状に応じた回転と並進移動とのいずれか一方またはそれらの組み合わせを制約条件として生成することを特徴とする制御装置。
The control device according to claim 1 or 2 ,
The action planning unit is configured to rotate and translate the time-series position and posture of the robot in one or both of the first motion section and the second motion section according to the shape of the first object. One of the movements or a combination thereof is generated as a constraint condition.
JP2010107733A 2010-05-07 2010-05-07 Control device Expired - Fee Related JP5539000B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2010107733A JP5539000B2 (en) 2010-05-07 2010-05-07 Control device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2010107733A JP5539000B2 (en) 2010-05-07 2010-05-07 Control device

Publications (2)

Publication Number Publication Date
JP2011235378A JP2011235378A (en) 2011-11-24
JP5539000B2 true JP5539000B2 (en) 2014-07-02

Family

ID=45323922

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2010107733A Expired - Fee Related JP5539000B2 (en) 2010-05-07 2010-05-07 Control device

Country Status (1)

Country Link
JP (1) JP5539000B2 (en)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2017047519A (en) * 2015-09-04 2017-03-09 Rapyuta Robotics株式会社 Cloud robotics system, information processor, program, and method for controlling or supporting robot in cloud robotics system

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4056080B2 (en) * 2006-01-13 2008-03-05 松下電器産業株式会社 Robot arm control device
JP4908020B2 (en) * 2006-03-02 2012-04-04 本田技研工業株式会社 Hand control system
JP4316630B2 (en) * 2007-03-29 2009-08-19 本田技研工業株式会社 Robot, robot control method, and robot control program
JP5553373B2 (en) * 2008-03-25 2014-07-16 株式会社Ihi Robot apparatus control method and robot apparatus

Also Published As

Publication number Publication date
JP2011235378A (en) 2011-11-24

Similar Documents

Publication Publication Date Title
US9492925B2 (en) Robot controller, robot system, robot, robot control method, and program
JP4911149B2 (en) Robot apparatus and control method of robot apparatus
JP2001277159A (en) Legged locomotion robot, controlling method for it, and ralative movement measuring sensor for it
JP2003269937A (en) Obstruction recognition device, obstruction recognition method, obstruction recognition program and mobile robot device
JP2003266345A (en) Path planning device, path planning method, path planning program, and moving robot device
WO2020153297A1 (en) Robot control system
US20210394362A1 (en) Information processing device, control method, and program
KR20220080080A (en) dynamic planning controller
JP7035309B2 (en) Master-slave system
JP2003266349A (en) Position recognition method, device thereof, program thereof, recording medium thereof, and robot device provided with position recognition device
US20110264265A1 (en) Robot, control system, and recording medium for control program
Kirchner et al. Robotassist-a platform for human robot interaction research
JP5539001B2 (en) Control device
WO2020153299A1 (en) Robot control system
JP4577697B2 (en) Mobile device and mobile device system
JP6026393B2 (en) Mobile device
JP5539000B2 (en) Control device
JP5638283B2 (en) Control device
JP5776486B2 (en) Robot control apparatus, control method thereof, and program
Sugiyama et al. A wearable visuo-inertial interface for humanoid robot control
JP5306934B2 (en) Robot and control system
JP6647143B2 (en) Functional device, control device and control method thereof
JP7190919B2 (en) Image analysis system
EP4316747A1 (en) Robot remote operation control device, robot remote operation control system, robot remote operation control method, and program
CN113316505B (en) Image analysis system

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20121127

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20130827

RD13 Notification of appointment of power of sub attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7433

Effective date: 20131017

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20131028

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A821

Effective date: 20131017

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20131203

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20140122

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

R150 Certificate of patent or registration of utility model

Ref document number: 5539000

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20140430

LAPS Cancellation because of no payment of annual fees