JP5776486B2 - Robot control apparatus, control method thereof, and program - Google Patents

Robot control apparatus, control method thereof, and program Download PDF

Info

Publication number
JP5776486B2
JP5776486B2 JP2011224998A JP2011224998A JP5776486B2 JP 5776486 B2 JP5776486 B2 JP 5776486B2 JP 2011224998 A JP2011224998 A JP 2011224998A JP 2011224998 A JP2011224998 A JP 2011224998A JP 5776486 B2 JP5776486 B2 JP 5776486B2
Authority
JP
Japan
Prior art keywords
robot
joint
information
movable range
robot arm
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
JP2011224998A
Other languages
Japanese (ja)
Other versions
JP2013082049A (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.)
Toyota Motor Corp
Original Assignee
Toyota Motor Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Toyota Motor Corp filed Critical Toyota Motor Corp
Priority to JP2011224998A priority Critical patent/JP5776486B2/en
Publication of JP2013082049A publication Critical patent/JP2013082049A/en
Application granted granted Critical
Publication of JP5776486B2 publication Critical patent/JP5776486B2/en
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Description

本発明は、ロボットの動作を制御して操作対象物を効率的に操作するロボット制御装置、その制御方法及びプログラムに関するものである。   The present invention relates to a robot control apparatus that efficiently controls an operation target by controlling the operation of a robot, a control method thereof, and a program.

近年、マニピュレータや移動装置を備え、人間の生活環境内で自律移動し、ユーザの指示に従って操作対象物を操作できる様々なサービスロボットなどが開発されている。
例えば、複数のマニピュレータを有する複腕ロボットを動作させ、複数の部品の組み付け作業を行うためのプログラムを生成するプログラム作成方法が知られている(特許文献1参照)。
2. Description of the Related Art In recent years, various service robots and the like that have a manipulator and a mobile device, move autonomously in a human living environment, and can operate an operation target according to a user instruction have been developed.
For example, a program creation method is known in which a multi-arm robot having a plurality of manipulators is operated to generate a program for assembling a plurality of parts (see Patent Document 1).

特開2010−137298号公報JP 2010-137298 A

しかしながら、上記特許文献1に示すプログラムを用いてロボットを制御した場合、例えば、家具や壁などの障害物によりロボットの動作範囲が限定されている環境内では、その環境に応じて、操作対象物を効率良く操作することについて、十分考慮されているとは言えず、そのような操作は困難と思われる。   However, when the robot is controlled using the program shown in Patent Document 1, for example, in an environment where the operation range of the robot is limited by an obstacle such as furniture or a wall, the operation target object depends on the environment. It cannot be said that sufficient consideration has been given to the efficient operation of such devices, and such operations are considered difficult.

本発明は、このような問題点を解決するためになされたものであり、ロボットの動作範囲が限定されている環境内においても、操作対象物を効率良く操作できるロボット制御装置、その制御方法及びプログラムを提供することを主たる目的とする。   The present invention has been made to solve such problems, and a robot control device capable of operating an operation target efficiently even in an environment where the operation range of the robot is limited, a control method thereof, and The main purpose is to provide a program.

上記目的を達成するための本発明の一態様は、複数の関節を含むロボットアームを備えるロボットを制御して操作対象物を操作するロボット制御装置であって、前記ロボットに所望の動作をさせるための動作情報を入力する入力手段と、前記ロボットの周囲の環境情報を検出する環境情報検出手段と、前記ロボットの状態量を検出する状態検出手段と、前記入力手段により入力された動作情報と、前記環境検出手段により検出された環境情報と、に基づいて、前記ロボットアームの各関節が可動できる第1関節可動範囲を算出する関節可動範囲算出手段と、前記可動範囲算出手段により算出された第1関節可動範囲の制約下において、前記ロボットアームに関するジャコビアン行列の特異値と、前記入力手段により入力された動作情報と、をパラメータとして含む評価関数を、最小化させるための前記ロボットアームの各関節角度を算出し、該算出した各関節角度に基づいて前記ロボットの位置を算出する位置関節角度算出手段と、前記状態検出手段により検出されたロボットの状態量と、前記位置関節角度算出手段により算出された前記ロボットアームの各関節角度及びロボットの位置に基づいて、前記ロボットを制御する制御手段と、を備える、ことを特徴とするロボット制御装置である。
この一態様において、前記ロボットアームに関するジャコビ行列は、第1特異値と、該第1特異値よりも大きな第2特異値と、を有しており、前記位置関節角度算出手段は、前記入力手段により入力された動作情報が所定方向に操作対象物を移動させる情報の場合において、前記第1特異値と前記動作情報とを含む第1評価関数を最小化するための前記ロボットアームの各関節角度を算出し、前記入力手段により入力された動作情報が操作対象物に対して所定力を付加する情報の場合において、前記第2特異値と前記動作情報とを含む第2評価関数を最小化するための前記ロボットアームの各関節角度を算出してもよい。
この一態様において、前記入力手段により入力された動作情報が所定方向に操作対象物を移動させつつ所定力を加える情報である場合において、前記位置関節角度算出手段は、前記操作対象物を所定方向へ移動させることが、前記操作対象物に所定力を加えることよりも重要であるとき、前記可動範囲算出手段により算出された前記第1関節可動範囲、及び前記重要度を示す所定係数と前記第1特異値とを含む関数で表わされる第2関節可動範囲の制約下で、前記第1評価関数を最小化させるための前記ロボットアームの各関節角度を算出し、前記操作対象物に所定力を加えることが前記操作対象物を所定方向へ移動させることよりも重要であるとき、前記可動範囲算出手段により算出された前記第1関節可動範囲、及び前記重要度を示す所定係数と前記第2特異値とを含む関数で表わされる第2関節可動範囲の制約下で、前記第2評価関数を最小化させるための前記ロボットアームの各関節角度を算出してもよい。
この一態様において、前記関節可動範囲算出手段は、前記入力手段により入力された動作情報と、前記環境情報検出手段により検出された前記ロボット周囲の障害物の位置情報と、に基づいて、前記ロボットの動作範囲を算出し、該算出した動作範囲と、予め設定された前記関節機構の制約による関節の可動範囲と、に基づいて、前記第1関節可動範囲を算出してもよい。
他方、上記目的を達成するための本発明の一態様は、複数の関節を含むロボットアームを備えるロボットを制御して操作対象物を操作するロボット制御装置の制御方法であって、前記ロボットに所望の動作をさせるための動作情報を入力するステップと、前記ロボットの周囲の環境情報を検出するステップと、前記ロボットの状態量を検出するステップと、前記入力された動作情報と、前記検出された環境情報と、に基づいて、前記ロボットアームの各関節が可動できる第1関節可動範囲を算出するステップと、前記算出された第1関節可動範囲の制約下において、前記ロボットアームに関するジャコビアン行列の特異値と、前記入力された動作情報と、をパラメータとして含む評価関数を、最小化させるための前記ロボットアームの各関節角度を算出し、該算出した各関節角度に基づいて前記ロボットの位置を算出するステップと、前記検出されたロボットの状態量と、前記算出されたロボットアームの各関節角度及びロボットの位置に基づいて、前記ロボットを制御するステップと、を含む、ことを特徴とするロボット制御装置の制御方法であってもよい。
さらに、上記目的を達成するための本発明の一態様は、複数の関節を含むロボットアームを備えるロボットを制御して操作対象物を操作するロボット制御装置のプログラムであって、前記ロボットに所望の動作をさせるための動作情報と、前記ロボットの周囲の環境情報と、に基づいて、前記ロボットアームの各関節が可動できる第1関節可動範囲を算出する処理と、前記算出された第1関節可動範囲の制約下において、前記ロボットアームに関するジャコビアン行列の特異値と、前記入力された動作情報と、をパラメータとして含む評価関数を、最小化させるための前記ロボットアームの各関節角度を算出し、該算出した各関節角度に基づいて前記ロボットの位置を算出する処理と、前記ロボットの状態量と、前記算出されたロボットアームの各関節角度及びロボットの位置に基づいて、前記ロボットを制御する処理と、を含む、ことを特徴とするロボット制御装置のプログラムであってもよい。
An aspect of the present invention for achieving the above object is a robot control apparatus that controls a robot including a robot arm including a plurality of joints to operate an operation target, and causes the robot to perform a desired operation. Input means for inputting the operation information, environmental information detection means for detecting environmental information around the robot, state detection means for detecting the state quantity of the robot, and operation information input by the input means, Based on the environment information detected by the environment detecting means, a joint movable range calculating means for calculating a first joint movable range in which each joint of the robot arm can move, and a first calculated by the movable range calculating means. A singular value of a Jacobian matrix related to the robot arm and motion information input by the input means under the restriction of one joint movable range. Position joint angle calculating means for calculating each joint angle of the robot arm for minimizing an evaluation function included as a parameter, and calculating the position of the robot based on the calculated joint angle; and the state detecting means Control means for controlling the robot on the basis of the state quantity of the robot detected by the position and each joint angle of the robot arm and the position of the robot calculated by the position joint angle calculation means. It is a robot control device.
In this one aspect, the Jacobian matrix related to the robot arm has a first singular value and a second singular value that is larger than the first singular value, and the position joint angle calculating means includes the input means. In the case where the motion information input by is information for moving the operation target object in a predetermined direction, each joint angle of the robot arm for minimizing the first evaluation function including the first singular value and the motion information And the second evaluation function including the second singular value and the motion information is minimized when the motion information input by the input means is information that applies a predetermined force to the operation target. Each joint angle of the robot arm may be calculated.
In this aspect, when the motion information input by the input means is information for applying a predetermined force while moving the operation target in a predetermined direction, the position joint angle calculation unit is configured to move the operation target in a predetermined direction. When it is more important to move to the operation object than to apply a predetermined force, the first joint movable range calculated by the movable range calculating means, the predetermined coefficient indicating the importance, and the first Each joint angle of the robot arm for minimizing the first evaluation function is calculated under the restriction of the second joint movable range represented by a function including one singular value, and a predetermined force is applied to the operation target. When adding is more important than moving the operation object in a predetermined direction, the first joint movable range calculated by the movable range calculating means and the importance level are indicated. Under the constraint of the second joint range of motion is expressed by a function including said coefficient second singular value may be calculated each joint angle of the robot arm for minimizing the second evaluation function.
In this one aspect, the joint movable range calculating means is configured based on the operation information input by the input means and the position information of obstacles around the robot detected by the environment information detecting means. May be calculated, and the first joint movable range may be calculated based on the calculated motion range and a joint movable range that is set in advance by the restriction of the joint mechanism.
On the other hand, an aspect of the present invention for achieving the above object is a control method of a robot control apparatus that controls a robot including a robot arm including a plurality of joints to operate an operation target. A step of inputting motion information for causing the robot to move, a step of detecting environmental information around the robot, a step of detecting a state quantity of the robot, the input motion information, and the detected And calculating a first joint movable range in which each joint of the robot arm can move based on the environmental information; and under the restriction of the calculated first joint movable range, a Jacobian matrix of the robot arm Each joint of the robot arm for minimizing an evaluation function including a singular value and the input motion information as parameters And calculating the position of the robot based on the calculated joint angles, the detected state amount of the robot, and the calculated joint angles of the robot arm and the position of the robot. And a step of controlling the robot.
Furthermore, one aspect of the present invention for achieving the above object is a program for a robot control apparatus that controls a robot including a robot arm including a plurality of joints to operate an operation target. A process for calculating a first joint movable range in which each joint of the robot arm can move based on the operation information for making the movement and the environment information around the robot, and the calculated first joint movable Under the constraint of the range, calculate each joint angle of the robot arm for minimizing the evaluation function including the singular value of the Jacobian matrix related to the robot arm and the input motion information as parameters, A process for calculating the position of the robot based on the calculated joint angles, a state quantity of the robot, and the calculated robot arm Based on the position of each joint angle and robot, the comprises a process of controlling a robot, and it may be a program of a robot control apparatus according to claim.

本発明によれば、ロボットの動作範囲が限定されている環境内においても、操作対象物を効率良く操作できるロボット制御装置、その制御方法及びプログラムを提供することができる。   According to the present invention, it is possible to provide a robot control apparatus, a control method thereof, and a program capable of efficiently operating an operation target even in an environment where the operation range of the robot is limited.

本発明の一実施の形態に係るロボット制御装置の概略的なシステム構成を示すブロック図である。1 is a block diagram showing a schematic system configuration of a robot control apparatus according to an embodiment of the present invention. 本発明の一実施の形態に係るロボットの動作を説明するための摸式図である。It is a model for demonstrating operation | movement of the robot which concerns on one embodiment of this invention. 本発明の一実施の形態に係るシミュレーションにおいてロボット制御装置の制御装置の位置関節角度演算器が用いる第1評価関数を示す図である。It is a figure which shows the 1st evaluation function which the position joint angle calculator of the control apparatus of a robot control apparatus uses in the simulation which concerns on one embodiment of this invention. 本発明の一実施の形態に係るシミュレーションにおいて、ロボット制御装置の制御装置の位置関節角度演算器が用いる第1評価関数を最小化した場合のロボットの位置及び姿勢を示す図である。It is a figure which shows the position and attitude | position of a robot at the time of minimizing the 1st evaluation function which the position joint angle calculator of the control apparatus of a robot control apparatus uses in the simulation which concerns on one embodiment of this invention. 本発明の一実施の形態に係るシミュレーションにおいてロボット制御装置の制御装置の位置関節角度演算器が用いる第2評価関数を示す図である。It is a figure which shows the 2nd evaluation function which the position joint angle calculator of the control apparatus of a robot control apparatus uses in the simulation which concerns on one embodiment of this invention. 本発明の一実施の形態に係るシミュレーションにおいて、ロボット制御装置の制御装置の位置関節角度演算器が用いる第2評価関数を最小化した場合のロボットの位置及び姿勢を示す図である。It is a figure which shows the position and attitude | position of a robot at the time of minimizing the 2nd evaluation function which the position joint angle calculator of the control apparatus of a robot control apparatus uses in the simulation which concerns on one embodiment of this invention.

以下、図面を参照して本発明の実施の形態について説明する。図1は、本発明の一実施の形態に係るロボット制御装置の概略的なシステム構成を示すブロック図である。本実施の形態に係るロボット制御装置100は、例えば、ロボット130の動作範囲が家具や壁などで限定された環境内において、操作対象物を所望の方向に所望の速度で移動させ、操作対象物に対して所望の力を付加するような制御を効率的に実行できるものである。   Embodiments of the present invention will be described below with reference to the drawings. FIG. 1 is a block diagram showing a schematic system configuration of a robot control apparatus according to an embodiment of the present invention. The robot control apparatus 100 according to the present embodiment moves the operation target in a desired direction at a desired speed in an environment where the operation range of the robot 130 is limited by furniture, walls, and the like, for example, Thus, it is possible to efficiently execute control for applying a desired force to the above.

ロボット制御装置100は、入力装置110と、入力装置110に入力された入力情報に基づいて、制御対象であるロボット130の動作を制御する制御装置120と、を備えている。   The robot control device 100 includes an input device 110 and a control device 120 that controls the operation of the robot 130 that is a control target based on input information input to the input device 110.

入力装置110は、入力手段の一具体例であり、例えば、ユーザがロボット130に実施させたい所望の動作を示す動作指令を入力し、その所望の動作の特徴を示す動作情報を算出し、出力する機能を有している。入力装置110は、指令入力器111と、指令演算器112と、を有している。   The input device 110 is a specific example of an input unit. For example, the input device 110 inputs an operation command indicating a desired operation that the user wants the robot 130 to perform, calculates operation information indicating characteristics of the desired operation, and outputs the operation information. It has a function to do. The input device 110 includes a command input device 111 and a command calculator 112.

指令入力器111は、例えば、音声入力装置、タッチパネルなどのユーザ指示が入力できる任意の装置で構成されており、ユーザが入力した動作指令を電気信号に変換し、指令演算器112に対して出力する。   The command input device 111 is composed of an arbitrary device capable of inputting user instructions such as a voice input device and a touch panel, for example, and converts an operation command input by the user into an electrical signal and outputs it to the command calculator 112. To do.

指令演算器112は、指令入力器111からの電気信号に基づいて、ユーザがロボット130に実施させたい所望の動作の特徴を示す動作情報(例えば、操作対象物に対して所定力を付加する動作、操作対象物を所定速度で所定方向へ移動させる動作、などの情報)を算出し、制御装置120に対して出力する。   Based on the electrical signal from the command input device 111, the command calculator 112 is motion information indicating characteristics of a desired motion that the user wants the robot 130 to perform (for example, an operation for applying a predetermined force to the operation target). , And the like, and the like, information that moves the operation object in a predetermined direction at a predetermined speed, and the like are output to the control device 120.

制御装置120は、例えば、入力装置110からの動作情報と、ロボット130からの環境情報(ロボット130周囲にある障害物の位置などの情報)と、に基づいて、ロボット130の各関節(肩関節、肘関節、手首関節、股関節、膝関節、足首関節など)の可動範囲(以下、関節可動範囲と称す)と、周囲の障害物などによる環境的な制約の中で、ユーザが指示する所望動作に最も近い動作を、ロボット130に動作させるためのモータ電流を演算し、ロボット130に対して出力する。   The control device 120, for example, based on the operation information from the input device 110 and the environment information from the robot 130 (information such as the position of an obstacle around the robot 130), each joint (shoulder joint) of the robot 130. , Elbow joint, wrist joint, hip joint, knee joint, ankle joint, etc.) movable range (hereinafter referred to as joint movable range) and desired movements specified by the user under environmental constraints such as surrounding obstacles The motor current for causing the robot 130 to operate the operation closest to is calculated and output to the robot 130.

制御装置120は、例えば、ASIC(Application Specific Integrated Circuit)やプログラマブル電子システムなどとして、実現することができる。制御装置120は、関節可動範囲演算器121と、位置関節角度演算器122と、制御器123と、を有している。   The control device 120 can be realized as, for example, an application specific integrated circuit (ASIC) or a programmable electronic system. The control device 120 includes a joint movable range calculator 121, a position joint angle calculator 122, and a controller 123.

関節可動範囲演算器121は、関節可動範囲演算手段の一具体例であり、入力装置110の指令演算器112から出力される動作情報と、ロボット130の環境検出器131から出力される環境情報と、に基づいてロボット130の各関節の関節可動範囲を演算し、位置関節角度演算器122に対して出力する。   The joint movable range calculator 121 is a specific example of a joint movable range calculator, and includes operation information output from the command calculator 112 of the input device 110 and environment information output from the environment detector 131 of the robot 130. , The joint movable range of each joint of the robot 130 is calculated and output to the position joint angle calculator 122.

位置関節角度演算器122は、位置関節角度演算手段の一具体例であり、関節可動範囲演算器121からの関節可動範囲と、入力装置110の指令演算器112からの動作情報と、に基づいて、ユーザがロボット130に実施させたい所望動作を実施するのに最適な、ロボット130の位置およびロボット各関節の関節角度を演算し、位置関節角度演算値として制御器123に対して出力する。   The position joint angle calculator 122 is a specific example of the position joint angle calculator, and is based on the joint movable range from the joint movable range calculator 121 and the operation information from the command calculator 112 of the input device 110. The position of the robot 130 and the joint angle of each joint of the robot, which are optimal for the user to perform a desired operation that the user wants to perform, are calculated and output to the controller 123 as position joint angle calculation values.

制御器123は、制御手段の一具体例であり、位置関節角度演算器122からの位置関節角度演算値と、ロボット130の状態検出器134からの状態検出値(ロボット130の各関節の関節角度など)と、に基づいて、ロボット130に所望動作を実施させるためのモータ電流を、ロボット130に対して出力する。   The controller 123 is a specific example of the control means, and the position joint angle calculation value from the position joint angle calculator 122 and the state detection value from the state detector 134 of the robot 130 (joint angle of each joint of the robot 130). Etc.), a motor current for causing the robot 130 to perform a desired operation is output to the robot 130.

ロボット130は、操作対象物を操作可能なロボットアーム205を有し、制御装置120からのモータ電流に基づいて、ユーザがロボット130に実施させたい所望の動作を実施できるように構成された、例えば、移動型サーバントロボット、二足歩行ロボット、ヒューマノイド型ロボットなどである。   The robot 130 has a robot arm 205 capable of operating an operation target, and is configured to perform a desired operation that the user wants the robot 130 to perform based on the motor current from the control device 120, for example, Mobile servant robots, biped robots, humanoid robots, etc.

ロボット130は、環境検出器131と、関節モータ132と、ロボット機構133と、状態検出器134と、を有している。   The robot 130 includes an environment detector 131, a joint motor 132, a robot mechanism 133, and a state detector 134.

環境検出器131は、環境情報検出手段の一具体例であり、ロボット130に搭載され、あるいは、ロボット130が動作する環境に設置された検出器(例えば、超音波センサ、ミリ波センサ、カメラ、赤外線センサなどの距離センサ)であり、ロボット130の周囲の障害物の位置などの情報である環境情報を検出し、有線又は無線を介して制御装置120の関節可動範囲演算器121に対して出力する。   The environment detector 131 is a specific example of the environment information detection means, and is a detector (for example, an ultrasonic sensor, a millimeter wave sensor, a camera, etc.) mounted on the robot 130 or installed in an environment in which the robot 130 operates. A distance sensor such as an infrared sensor) that detects environmental information such as the position of obstacles around the robot 130 and outputs the detected information to the joint movable range calculator 121 of the control device 120 via wire or wirelessly. To do.

関節モータ132は、ロボット機構133のロボットアーム205などに設けられた各関節に取付けられ、制御装置120の制御器123から出力されるモータ電流に従って各関節を回転駆動する。また、関節モータ132は、減速機構などを内蔵しており、駆動軸の駆動力をこの減速機構を介して関節の関節軸に伝達する。   The joint motor 132 is attached to each joint provided in the robot arm 205 or the like of the robot mechanism 133 and rotates each joint according to the motor current output from the controller 123 of the control device 120. The joint motor 132 has a built-in speed reduction mechanism and the like, and transmits the driving force of the drive shaft to the joint shaft of the joint via the speed reduction mechanism.

ロボット機構133は、例えば、複数のリンクと、各リンクを回転可能に連結する複数の関節と、を有する機構であり、例えば、ロボットアーム205などが含まれる。   The robot mechanism 133 is a mechanism having, for example, a plurality of links and a plurality of joints that rotatably connect the links, and includes a robot arm 205, for example.

状態検出器134は、状態検出手段の一具体例であり、ロボット130に搭載され、ロボットの状態量(ロボットの位置、各関節などの可動部の状態量など)を検出し、状態検出値として制御装置120の制御器123に対して出力する。   The state detector 134 is a specific example of the state detection unit, and is mounted on the robot 130 to detect the state amount of the robot (the position of the robot, the state amount of the movable part such as each joint) and the like as the state detection value. It outputs to the controller 123 of the control device 120.

例えば、状態検出器134は、角度センサを用いて各関節の関節角度を検出し、トルクセンサを用いて各関節の関節トルクを検出し、姿勢センサを用いてロボット姿勢を検出し、加速度センサや速度センサを用いてロボット130の位置、移動速度、移動加速度を検出する。   For example, the state detector 134 detects the joint angle of each joint using an angle sensor, detects the joint torque of each joint using a torque sensor, detects the robot posture using the posture sensor, The position, moving speed, and moving acceleration of the robot 130 are detected using a speed sensor.

次に、本実施の形態に係るロボット制御装置の動作原理について、詳細に説明する。
図2は、本実施の形態に係るロボットの動作を説明するための摸式図の一例である。本実施の形態に係るロボット130は、例えば、胴体であるロボット体幹部201に肩関節を介して回転可能に連結された上腕部202と、上腕部202に肘関節を介して回転可能に連結された前腕部203と、前腕部203の先端に手首関節を介して回転可能に連結され、操作対象物を操作可能なロボットハンド204と、を有するロボットアーム205を備えており、ロボット体幹部201が破線で示す予め設定された動作範囲206内側(限定された環境内)で動作可能となるように構成されている。
Next, the operation principle of the robot control apparatus according to the present embodiment will be described in detail.
FIG. 2 is an example of a schematic diagram for explaining the operation of the robot according to the present embodiment. The robot 130 according to the present embodiment is, for example, an upper arm 202 that is rotatably connected to a robot trunk 201 that is a torso via a shoulder joint, and a rotatably connected to the upper arm 202 via an elbow joint. A robot arm 205 having a forearm portion 203 and a robot hand 204 that is rotatably connected to the tip of the forearm portion 203 via a wrist joint and can operate an operation target. It is configured to be operable within a preset operating range 206 (within a limited environment) indicated by a broken line.

まず、ロボット体幹部201の中心に対するロボットハンド204の相対的な位置は、下記(1)式及び(2)式で表される。
First, the relative position of the robot hand 204 with respect to the center of the robot trunk 201 is expressed by the following equations (1) and (2).

但し、上記(1)式及び(2)式において各記号は以下のように設定されている。
:ロボット体幹部201の中心に対するロボットハンド204のx方向相対位置[m]、
:ロボット体幹部201の中心に対するロボットハンド204のy方向相対位置[m]、
θ:第1関節角度(ロボット体幹部201と上腕部202とが成す関節角度)[rad]、
θ:第2関節角度(上腕部202と前腕部203とが成す関節角度)[rad]、
:第1リンク長さ(上腕部202の長さ)[m]、
:第2リンク長さ(前腕部203の長さ)[m]
上記(1)式及び(2)式を、ロボットアーム205に関するジャコビアン行列Jを用いて線形近似すると下記(3)式が求められる。
However, in the above formulas (1) and (2), each symbol is set as follows.
x E : relative position [m] of the robot hand 204 with respect to the center of the robot trunk 201 in the x direction,
y E : y-direction relative position [m] of the robot hand 204 with respect to the center of the robot trunk 201
θ 1 : first joint angle (joint angle formed by the robot trunk 201 and the upper arm 202) [rad],
θ 2 : second joint angle (joint angle formed by the upper arm 202 and the forearm 203) [rad],
l 1 : first link length (length of the upper arm 202) [m],
l 2 : second link length (length of forearm 203) [m]
When the above equations (1) and (2) are linearly approximated using the Jacobian matrix J related to the robot arm 205, the following equation (3) is obtained.

上記(3)式より下記(4)式が導出される。
The following equation (4) is derived from the above equation (3).

ジャコビアン行列Jの特異値は上記(4)式を用いて、下記(5)式および(6)式として求められる。
The singular values of the Jacobian matrix J are obtained as the following equations (5) and (6) using the above equation (4).

但し、上記(5)式及び(6)式において、σは第1特異値であり、σは第2特異値である。なお、第1特異値σおよび第2特異値σは、ともに0または正の実数であり、第2特異値σは第1特異値σ以上となっている。
特異ベクトルは上記(5)式および(6)式を用いて、下記(7)式および(8)式として求められる。
However, in the above formulas (5) and (6), σ 1 is the first singular value and σ 2 is the second singular value. The first singular value σ 1 and the second singular value σ 2 are both 0 or a positive real number, and the second singular value σ 2 is equal to or greater than the first singular value σ 1 .
The singular vectors are obtained as the following equations (7) and (8) using the above equations (5) and (6).

但し、上記(7)式および(8)式において、cとcは任意の実数である。
ここで、例えば、上記(3)式に示すような、ロボットアーム205の位置および角度を変換するジャコビアン行列の、より小さな特異値に対応した特異ベクトルの方向により、大きな速度で大きな動作をすることができることが一般的に知られている。同様に、ロボットアームの力およびトルクを変換するジャコビアン行列の、より大きな特異値に対応した特異ベクトルの方向により、大きな力を発生することができることが一般的に知られている。(例えば、Changhyun Cho, Munsang Kim, and Jae-Bok Song, "Direct Control of a Passive Haptic Device Based on Passive Force Manipulability Ellipsoid Analysis", International Journal of Control, Automation, and Systems, Volume 2, No. 2, June 2004を参照)また、ロボットアームの力およびトルクを変換するジャコビアン行列は、位置と角度を変換するジャコビアン行列の転置行列であり、それぞれの特異値は逆数の関係にあることが知られている。ただし、上記文献とは変換する方向が逆であるため特異値の大小関係が逆となっている。
However, in the above formulas (7) and (8), c 1 and c 2 are arbitrary real numbers.
Here, for example, as shown in the above equation (3), the Jacobian matrix for converting the position and angle of the robot arm 205 performs a large operation at a high speed by the direction of the singular vector corresponding to a smaller singular value. It is generally known that it can. Similarly, it is generally known that a large force can be generated by the direction of a singular vector corresponding to a larger singular value of a Jacobian matrix for converting the force and torque of a robot arm. (For example, Changhyun Cho, Munsang Kim, and Jae-Bok Song, "Direct Control of a Passive Haptic Device Based on Passive Force Manipulability Ellipsoid Analysis", International Journal of Control, Automation, and Systems, Volume 2, No. 2, June (See 2004) The Jacobian matrix that converts the force and torque of the robot arm is a transposed matrix of the Jacobian matrix that converts the position and angle, and each singular value is known to have an inverse relationship. Yes. However, since the conversion direction is opposite to that of the above document, the magnitude relationship of singular values is opposite.

上記ジャコビアン行列の関係を用いて、上記(5)式乃至(8)式は、ロボットハンド204が(7)式の示す方向により大きな速度で大きな動作をすることが可能であり、(8)式の示す方向により大きな力を発生することが可能であることを示していることが分かる。本願発明は、上述したようなロボットアーム205におけるジャコビアン行列の特異値の特性を、ロボット130の制御に効率的に利用したものである。以下、その制御方法について、具体例を挙げて説明する。   Using the relation of the Jacobian matrix, the above equations (5) to (8) allow the robot hand 204 to perform a large movement at a higher speed in the direction indicated by the equation (7). (8) It can be seen that a greater force can be generated in the direction indicated by the equation. In the present invention, the characteristic of the singular value of the Jacobian matrix in the robot arm 205 as described above is efficiently used for controlling the robot 130. Hereinafter, the control method will be described with specific examples.

動作範囲206の中心を原点としたカーテシアン座標系におけるロボット体幹部201の中心位置を(x、y)と表すと、動作範囲206の中心に対するロボットハンド204の位置は、例えば、下記(9)式および(10)式と表される。
When the center position of the robot trunk 201 in the Cartesian coordinate system with the center of the motion range 206 as the origin is represented as (x 0 , y 0 ), the position of the robot hand 204 with respect to the center of the motion range 206 is, for example, (9 ) And (10).

但し、上記(9)式および(10)式における各記号の意味は以下の通りであり、例えば、操作対象物の位置と一致するxE0、yE0は、環境検出器131により検出される。x、yは、上記(1)式及び(2)式で示される。
:ロボット体幹部201の中心のx座標[m]、
:ロボット体幹部201の中心のy座標[m]、
E0:ロボットハンド204のx座標[m]、
E0:ロボットハンド204のy座標[m]
However, the meaning of each symbol in the above formulas (9) and (10) is as follows. For example, x E0 and y E0 that coincide with the position of the operation target are detected by the environment detector 131. x E and y E are represented by the above formulas (1) and (2).
x 0 : x coordinate [m] of the center of the robot trunk 201,
y 0 : y coordinate [m] of the center of the robot trunk 201,
x E0 : x coordinate [m] of the robot hand 204,
y E0 : y coordinate [m] of the robot hand 204

次に、ロボット体幹部201が動作範囲206の内側のみを動作できる場合において、ロボットハンド204により操作対象物Sを所望の方向に最も効果的に動かすことができるロボット体幹部201の位置およびロボットアーム205の各関節角度(第1関節角度θ及び第2関節角度θ)を導出する。
動作範囲206は、例えば、下記(11)式のように表され、環境検出器131により検出された環境情報(障害物の位置情報など)に基づいて自動的に設定されてもよく、ユーザにより入力装置110を介して入力される入力情報に基づいて設定されてもよい。
Next, when the robot trunk 201 can move only inside the movement range 206, the position of the robot trunk 201 and the robot arm that can most effectively move the operation target S in the desired direction by the robot hand 204. Each joint angle 205 (first joint angle θ 1 and second joint angle θ 2 ) is derived.
The operation range 206 is expressed, for example, by the following equation (11), and may be automatically set based on environment information (such as obstacle position information) detected by the environment detector 131. It may be set based on input information input via the input device 110.

上記(9)式乃至(11)式を組み合わせることにより、例えば、ロボットアーム205の各関節の動作範囲の制約は下記(12)式として表される。
By combining the above formulas (9) to (11), for example, the restriction on the motion range of each joint of the robot arm 205 is expressed as the following formula (12).

但し、上記(12)式における各記号の意味は以下の通りである。
Ω:ロボットアーム205の各関節が可動できる第1関節可動範囲
Ωjp:動作範囲206より制約されるロボットアーム205の各関節の可動範囲であり、動作範囲206に基づいて算出される。
Ω:ロボットアーム205の各関節の機構により制約される可動範囲であり、例えば、ハードウェアにより予め設定される範囲である。
上記のように、ロボット130の動作範囲206、ロボットアーム205の関節機構などを総合的に考慮して、ロボットアーム205の関節可動範囲を最適に設定することができる。
However, the meaning of each symbol in the above equation (12) is as follows.
Ω j : first joint movable range in which each joint of the robot arm 205 is movable Ω jp : movable range of each joint of the robot arm 205 restricted by the motion range 206, and is calculated based on the motion range 206.
Ω m : a movable range restricted by the mechanism of each joint of the robot arm 205, for example, a range set in advance by hardware.
As described above, the joint movable range of the robot arm 205 can be optimally set by comprehensively considering the operation range 206 of the robot 130, the joint mechanism of the robot arm 205, and the like.

ロボットハンド204により操作対象物Sを第1関節可動範囲Ω内で所望の方向に最も効果的に移動させることができるロボット体幹部201(ロボット130)の位置およびロボットアーム205の各関節角度は、以下のように求めることができる。まず、入力装置110の指令演算器112から出力される動作情報rと、ジャコビアン行列Jの第1特異値σと、に基づいて下記(13)式に示す第1評価関数を、上記(12)式に示す第1関節可動範囲Ωの制約下で最小化する第1関節角度θ及び第2関節角度θを算出する。そして、上記(9)式および(10)式において、ロボットハンド204のx座標xE0およびy座標yE0を、操作対象物Sのx座標およびy座標として、ロボット体幹部201の中心のx座標xおよびy座標yに関して解く。これにより、上記ロボットハンド204により操作対象物Sを所望の方向に最も効果的に動かすことができるロボット体幹部201の位置およびロボットアーム205の各関節角度を求めることができる。
The position of the robot trunk 201 (robot 130) and the joint angles of the robot arm 205 that can most effectively move the operation target S in the first joint movable range Ω j by the robot hand 204 are as follows. The following can be obtained. First, based on the motion information r 1 output from the command calculator 112 of the input device 110 and the first singular value σ 1 of the Jacobian matrix J, the first evaluation function shown in the following equation (13) is expressed as above. The first joint angle θ 1 and the second joint angle θ 2 that are minimized under the constraint of the first joint movable range Ω j shown in the equation (12) are calculated. In the above equations (9) and (10), the x coordinate x E0 and y coordinate y E0 of the robot hand 204 are set as the x coordinate and y coordinate of the operation target S, and the x coordinate of the center of the robot trunk 201 solving for x 0 and y coordinates y 0. Accordingly, the position of the robot trunk 201 and the joint angles of the robot arm 205 that can most effectively move the operation target S in a desired direction by the robot hand 204 can be obtained.

但し、上記(13)式において、動作情報rは、例えば、操作対象物Sの所定方向への移動を表すベクトルのy成分とx成分との比である。また、rは、入力装置110の指令入力器111から入力されたユーザの操作情報に基づいて、指令演算器112が算出する動作情報の一例である。また、上記第1評価関数Iは、ロボットアーム205のジャコビアン行列Jの第1特異値σと、動作情報rと、をパラメータとして含んでいる。 However, in the above equation (13), the motion information r 1 is, for example, the ratio of the y component and the x component of the vector representing the movement of the operation target S in a predetermined direction. R 1 is an example of operation information calculated by the command calculator 112 based on user operation information input from the command input device 111 of the input device 110. The first evaluation function I 1 includes the first singular value σ 1 of the Jacobian matrix J of the robot arm 205 and the motion information r 1 as parameters.

同様に、ロボットハンド204により操作対象物Sに対して所望の方向に最も効果的に力を加えることができるロボット体幹部201の位置およびロボットアーム205の各関節角度は、以下のようにして求めることができる。まず、入力装置110の指令演算器112から出力される動作情報rと、ジャコビアン行列Jの第2特異値σと、に基づいて下記(14)式の第2評価関数を上記(12)式の第1関節可動範囲Ωに対して最小化する第1関節角度θ及び第2関節角度θを算出する。そして、上記(9)式および(10)式において、ロボットハンド204のx座標xE0およびy座標yE0を、操作対象物Sのx座標およびy座標として、ロボット体幹部201の中心のx座標xおよびy座標yに関して解く。これにより、上記ロボットハンド204により操作対象物Sに対して所望の方向に最も効果的に力を加えることができるロボット体幹部201の位置およびロボットアーム205の各関節角度を求めることができる。
Similarly, the position of the robot trunk 201 and each joint angle of the robot arm 205 that can most effectively apply a force to the operation target S in the desired direction by the robot hand 204 are obtained as follows. be able to. First, based on the motion information r 2 output from the command calculator 112 of the input device 110 and the second singular value σ 2 of the Jacobian matrix J, the second evaluation function of the following equation (14) is expressed as (12 The first joint angle θ 1 and the second joint angle θ 2 that are minimized with respect to the first joint movable range Ω j in the equation (1) are calculated. In the above equations (9) and (10), the x coordinate x E0 and y coordinate y E0 of the robot hand 204 are set as the x coordinate and y coordinate of the operation target S, and the x coordinate of the center of the robot trunk 201 solving for x 0 and y coordinates y 0. As a result, the position of the robot trunk 201 and the joint angles of the robot arm 205 that can apply the force most effectively in the desired direction to the operation target S by the robot hand 204 can be obtained.

但し、上記(14)式において、動作情報rは、例えば、操作対象物Sに加える所定力を表すベクトルのy成分とx成分の比である。また、rは、入力装置110の指令入力器111から入力されたユーザの操作情報に基づいて、指令演算器112が算出する動作情報の一例である。上記第2評価関数は、ロボットアーム205のジャコビアン行列Jの第2特異値σと、動作情報rと、をパラメータとして含んでいる。 However, in the above equation (14), the motion information r 2 is, for example, a ratio of a y component and an x component of a vector representing a predetermined force applied to the operation target S. R 2 is an example of operation information calculated by the command calculator 112 based on user operation information input from the command input device 111 of the input device 110. The second evaluation function includes the second singular value σ 2 of the Jacobian matrix J of the robot arm 205 and the motion information r 2 as parameters.

また、操作対象物Sを所定方向へ移動させることが、操作対象物Sに所定力を付加することよりもd倍(d≧1)重要である場合、上記(12)式に示す第1関節可動範囲Ωの制約条件に、下記(15)式に示す第2関節可動範囲Ωr1の制約条件を加え、上記(13)式に示す第1評価関数を最小化することにより、ロボット体幹部201の位置およびロボットアーム205の各関節角度を求める。なお、dは、例えば、操作対象物Sを所定方向へ移動させることの重要度を示す所定係数であり、ユーザが入力装置110を介して関節可動範囲演算器121に任意に設定できる。また、第2関節可動範囲Ωr1は、上記(4)式及び(5)式により導出され、所定係数dを含む関数となっている。
Further, when moving the operation target S in a predetermined direction is d 1 times (d 1 ≧ 1) more important than applying a predetermined force to the operation target S, the first equation shown in the above equation (12) is used. By adding the constraint condition of the second joint movable range Ω r1 shown in the following equation (15) to the constraint condition of the one joint movable range Ω j and minimizing the first evaluation function shown in the above equation (13), the robot The position of the trunk 201 and the joint angles of the robot arm 205 are obtained. Note that d 1 is a predetermined coefficient indicating the importance of moving the operation target S in a predetermined direction, for example, and can be arbitrarily set by the user in the joint movable range calculator 121 via the input device 110. The second joint movable range Ω r1 is derived from the above equations (4) and (5) and is a function including a predetermined coefficient d 1 .

同様に、操作対象物Sに所定力を付加することが、操作対象物Sを所定方向へ移動させることよりもd倍(d≧1)重要である場合、上記(12)式に示す第1関節可動範囲Ωの制約条件に下記(16)式に示す第2関節可動範囲Ωr2の制約条件を加え、上記(14)式に示す第2評価関数を最小化することにより、ロボット体幹部201の位置およびロボットアーム205の各関節角度を求める。なお、なお、dは、例えば、操作対象物Sに所定力を付加することの重要度を示す所定係数であり、ユーザが入力装置110を介して関節可動範囲演算器121に任意に設定できる。また、第2関節可動範囲Ωr2は、上記(4)式及び(6)式より導出され、所定係数dを含む関数となっている。
以上のように、第1関節可動範囲の制約に加えて、第2関節可動範囲の制約を加えることで、ロボット130の操作内容の重要度に応じた最適なロボットアーム205の関節可動範囲を設定することができる。
Similarly, when applying a predetermined force to the operation target S is d 2 times (d 2 ≧ 1) more important than moving the operation target S in a predetermined direction, the above expression (12) is shown. By adding the constraint condition of the second joint movable range Ω r2 shown in the following formula (16) to the constraint condition of the first joint movable range Ω j and minimizing the second evaluation function shown in the formula (14), the robot The position of the trunk 201 and the joint angles of the robot arm 205 are obtained. Note that d 2 is a predetermined coefficient indicating the importance of applying a predetermined force to the operation target S, for example, and can be arbitrarily set by the user in the joint movable range calculator 121 via the input device 110. . Further, the second joint movable range Omega r2, is derived from the equation (4) and (6), is a function containing a predetermined coefficient d 2.
As described above, by adding the restriction on the second joint movable range in addition to the restriction on the first joint movable range, the optimal joint movable range of the robot arm 205 according to the importance of the operation content of the robot 130 is set. can do.

次に、上述したロボット体幹部201の位置およびロボットアーム205の各関節角度を求める演算処理について、より具体的に説明する。   Next, the calculation processing for obtaining the position of the robot trunk 201 and the joint angles of the robot arm 205 will be described in more detail.

(A)図2に示すような動作範囲206の内側を移動できるロボット130が、ロボットアーム205の先端に設けられたロボットハンド204を用いて、操作対象物Sを所定方向へ移動させる作業を行う場合を想定する。このようなロボットハンド204を用いて操作対象物Sを移動させる作業として、例えば、家具と壁の間で掃除機(操作対象物)を移動させて掃除を行う作業などが該当する。   (A) The robot 130 that can move inside the movement range 206 as shown in FIG. 2 performs the operation of moving the operation target S in a predetermined direction using the robot hand 204 provided at the tip of the robot arm 205. Assume a case. As an operation for moving the operation target S using such a robot hand 204, for example, a cleaning operation is performed by moving a cleaner (operation target) between furniture and a wall.

この場合、関節可動範囲演算器121は、上記(12)式を用いて第1関節可動範囲Ωを算出する。また、位置関節角度演算器122は、関節可動範囲演算器121により算出された第1関節可動範囲Ωの制約条件の下で、ジャコビアン行列Jの第1特異値σと、入力装置110の指令演算器112からの動作情報rと、に基づいて上記第1評価関数(13)式を最小化するように、第1関節角度θおよび第2関節角度θを算出する。そして、位置関節角度演算器122は、上記(9)式および(10)式において、ロボットハンド204のx座標xE0およびy座標yE0を、操作対象物Sのx座標およびy座標として、ロボット体幹部201の中心のx座標xおよびy座標yに関して解く。このようにして、操作対象物Sを所望の方向に最も効果的に移動させることができるロボット体幹部201の位置およびロボットアーム205の各関節角度を算出することができる。 In this case, the joint movable range calculator 121 calculates the first joint movable range Ω j using the above equation (12). Further, the position joint angle calculator 122 receives the first singular value σ 1 of the Jacobian matrix J and the input device 110 under the constraint condition of the first joint movable range Ω j calculated by the joint movable range calculator 121. The first joint angle θ 1 and the second joint angle θ 2 are calculated so as to minimize the first evaluation function (13) based on the motion information r 1 from the command calculator 112. The position joint angle computing unit 122 in the above (9) and (10), the x-coordinate x E0 and y-coordinate y E0 of the robot hand 204, as x and y coordinates of the operation target S, the robot solving for x-coordinate x 0 and y-coordinate y 0 of the center of the trunk 201. In this way, the position of the robot trunk 201 and the joint angles of the robot arm 205 that can most effectively move the operation target S in a desired direction can be calculated.

(B)図2に示すような動作範囲206の内側を移動できるロボット130が、ロボットアーム205の先端に設けられたロボットハンド204を用いて、所定方向に操作対象物Sに対して所定力を付加する作業を行う場合を想定する。このようなロボットハンド204を用いて操作対象物Sに対して所定力を付加する作業として、例えば、風で動く扉をその位置に保持する作業などが該当する。   (B) The robot 130 that can move inside the movement range 206 as shown in FIG. 2 applies a predetermined force to the operation target S in a predetermined direction using the robot hand 204 provided at the tip of the robot arm 205. Assume that additional work is performed. As an operation of applying a predetermined force to the operation target S using such a robot hand 204, for example, an operation of holding a door that moves in the wind at that position is applicable.

この場合、関節可動範囲演算器121は、上記(12)式を用いて第1関節可動範囲Ωを算出する。また、位置関節角度演算器122は、関節可動範囲演算器121により算出された第1関節可動範囲Ωの制約条件の下で、ジャコビアン行列Jの第2特異値σと、入力装置110の指令演算器112からの動作情報rと、に基づいて上記第2評価関数(14)式を最小化するように第1関節角度θおよび第2関節角度θを算出する。そして、位置関節角度演算器122は、上記(9)式および(10)式において、ロボットハンド204のx座標xE0およびy座標yE0を、操作対象物Sのx座標およびy座標として、ロボット体幹部201の中心のx座標xおよびy座標yに関して解く。このようにして、操作対象物Sを所望の方向に最も効果的に力を加えることができるロボット体幹部201の位置およびロボットアーム205の各関節角度を算出することができる。 In this case, the joint movable range calculator 121 calculates the first joint movable range Ω j using the above equation (12). Further, the position joint angle calculator 122 receives the second singular value σ 2 of the Jacobian matrix J and the input device 110 under the constraint condition of the first joint movable range Ω j calculated by the joint movable range calculator 121. The first joint angle θ 1 and the second joint angle θ 2 are calculated so as to minimize the second evaluation function (14) based on the motion information r 2 from the command calculator 112. The position joint angle computing unit 122 in the above (9) and (10), the x-coordinate x E0 and y-coordinate y E0 of the robot hand 204, as x and y coordinates of the operation target S, the robot solving for x-coordinate x 0 and y-coordinate y 0 of the center of the trunk 201. In this way, it is possible to calculate the position of the robot trunk 201 and the joint angles of the robot arm 205 that can apply the force to the operation target S in the desired direction most effectively.

(C)図2に示すような動作範囲206の内側を移動できるロボット130が、ロボットアーム205の先端に設けられたロボットハンド204を用いて、所定方向に操作対象物Sを移動させつつ、操作対象物Sに所定力を付加する作業を行う場合であって、所定方向へ移動させることが所定力を付加することよりもd倍重要となる作業を行う場合を想定する。このような操作対象物Sを移動させつつ力も加えなければならない作業としては、例えば、事故車やがれきの中から人を救出する作業などが該当する。 (C) The robot 130 that can move inside the movement range 206 as shown in FIG. 2 uses the robot hand 204 provided at the tip of the robot arm 205 to move the operation target S in a predetermined direction, Assume a case where an operation of applying a predetermined force to the object S is performed, and an operation in which moving in a predetermined direction is d 1 times more important than applying the predetermined force is assumed. Examples of the work that requires the force to be applied while moving the operation object S include a work for rescue of a person from an accident car or debris.

この場合、関節可動範囲演算器121は、上記(12)式を用いて第1関節可動範囲Ωおよび上記(15)式を用いて第2関節可動範囲Ωr1を算出する。また、位置関節角度演算器122は、関節可動範囲演算器121により算出された第1関節可動範囲Ωおよび第2関節可動範囲Ωr1の制約条件の下で、ジャコビアン行列Jの第1特異値σと、入力装置110の指令演算器112からの動作情報rと、に基づいて上記第1評価関数(13)式を最小化するように第1関節角度θおよび第2関節角度θを算出する。そして、位置関節角度演算器122は、上記(9)式および(10)式において、ロボットハンド204のx座標xE0およびy座標yE0を、操作対象物Sのx座標およびy座標として、ロボット体幹部201の中心のx座標xおよびy座標yに関して解く。このようにして、操作対象物Sを所望の方向に最も効果的に移動させ力を加えることができるロボット体幹部201の位置およびロボットアーム205の各関節角度を算出することができる。 In this case, the joint movable range calculator 121 calculates the first joint movable range Ω j using the above equation (12) and the second joint movable range Ω r1 using the above equation (15). Further, the position joint angle calculator 122 has a first singularity of the Jacobian matrix J under the constraint conditions of the first joint movable range Ω j and the second joint movable range Ω r1 calculated by the joint movable range calculator 121. The first joint angle θ 1 and the second joint angle so as to minimize the first evaluation function (13) based on the value σ 1 and the motion information r 1 from the command calculator 112 of the input device 110. θ 2 is calculated. The position joint angle computing unit 122 in the above (9) and (10), the x-coordinate x E0 and y-coordinate y E0 of the robot hand 204, as x and y coordinates of the operation target S, the robot solving for x-coordinate x 0 and y-coordinate y 0 of the center of the trunk 201. In this manner, the position of the robot trunk 201 and the joint angles of the robot arm 205 that can apply the force most effectively by moving the operation target S in the desired direction can be calculated.

(D)図2に示すような動作範囲206の内側を移動できるロボット130が、ロボットアーム205の先端に設けられたロボットハンド204を用いて、所定方向に操作対象物Sを移動させつつ、操作対象物Sに所定力を付加する作業を行う場合であって、所定力を付加することが所定方向へ移動させることよりもd倍重要となる作業を行う場合を想定する。 (D) The robot 130 that can move inside the movement range 206 as shown in FIG. 2 uses the robot hand 204 provided at the tip of the robot arm 205 to move the operation object S in a predetermined direction, A case is assumed in which an operation of applying a predetermined force to the object S is performed, and an operation in which applying the predetermined force is d 2 times more important than moving in a predetermined direction is assumed.

この場合、関節可動範囲演算器121は、上記(12)式を用いて第1関節可動範囲Ωおよび上記(16)式を用いて第2関節可動範囲Ωr2を算出する。また、位置関節角度演算器122は、関節可動範囲演算器121により算出された第1関節可動囲Ωおよび第2関節可動範囲Ωr2の制約条件の下で、ジャコビアン行列Jの第2特異値σと、入力装置110の指令演算器112からの動作情報rと、に基づいて上記第2評価関数(14)式を最小化するように第1関節角度θおよび第2関節角度θを算出する。そして、位置関節角度演算器122は、上記(9)式および(10)式において、ロボットハンド204のx座標xE0およびy座標yE0を、操作対象物Sのx座標およびy座標として、ロボット体幹部201の中心のx座標xおよびy座標yに関して解く。このようにして、操作対象物Sを所望の方向に最も効果的に移動させ力を加えることができるロボット体幹部201の位置およびロボットアーム205の各関節角度を算出することができる。 In this case, the joint movable range calculator 121 calculates the first joint movable range Ω j using the equation (12) and the second joint movable range Ω r2 using the equation (16). Further, the position joint angle calculator 122 is a second singularity of the Jacobian matrix J under the constraint conditions of the first joint movable range Ω j and the second joint movable range Ω r2 calculated by the joint movable range calculator 121. The first joint angle θ 1 and the second joint angle so as to minimize the second evaluation function (14) based on the value σ 2 and the motion information r 2 from the command calculator 112 of the input device 110. θ 2 is calculated. The position joint angle computing unit 122 in the above (9) and (10), the x-coordinate x E0 and y-coordinate y E0 of the robot hand 204, as x and y coordinates of the operation target S, the robot solving for x-coordinate x 0 and y-coordinate y 0 of the center of the trunk 201. In this manner, the position of the robot trunk 201 and the joint angles of the robot arm 205 that can apply the force most effectively by moving the operation target S in the desired direction can be calculated.

上記(C)及び(D)のように、操作対象物Sを移動させつつ力も付加しなければならない作業に対しては、上記(12)式に示す第1関節可動範囲Ωの制約条件だけでなく、上記(15)式に示す第2関節可動範囲Ωr1または(16)式に示す第2関節可動範囲Ωr2の制約条件を加味した関節可動範囲を用いることにより、ロボット130は作業に最も適した姿勢および位置で作業することができる。
上述したように、ロボット130の動作範囲206、ロボットアーム205の関節機構など加味して関節可動範囲を最適に設定し、ロボットアーム205のジャコビアン行列の特異値による特性を反映した評価関数を用いてロボットアーム205の各関節角度を算出することで、ロボット130の動作範囲が限定されている環境においても、操作対象物205を効率良く操作できる。
As in the above (C) and (D), only the constraint condition of the first joint movable range Ω j shown in the above equation (12) is applied to the work that requires the force to be applied while moving the operation target S. Instead, by using the joint movable range that takes into account the constraint condition of the second joint movable range Ω r1 shown in the above equation (15) or the second joint movable range Ω r2 shown in the equation (16), the robot 130 can work. You can work in the most suitable posture and position.
As described above, the joint movable range is optimally set in consideration of the motion range 206 of the robot 130, the joint mechanism of the robot arm 205, and the like, and the evaluation function that reflects the characteristic of the Jacobian matrix of the robot arm 205 is used. By calculating each joint angle of the robot arm 205, the operation target 205 can be efficiently operated even in an environment where the operation range of the robot 130 is limited.

次に、本実施の形態に係るロボット制御装置を用いて行ったシミュレーション結果について説明する。本シミュレーションにおいて、各パラメータには、例えば、下記数値が設定されている。なお、下記設定された数値は、例えば、家事手伝いをするモービルサーバントロボットの現実的な数値の一例である。   Next, a simulation result performed using the robot control apparatus according to the present embodiment will be described. In this simulation, for example, the following numerical values are set for each parameter. The numerical values set below are examples of realistic numerical values of a mobile servant robot that helps with housework, for example.

=0.5[m]、l=0.5[m]、r=tan(π/4)、r=tan(π/4)、xE0=0.1[m]、yE0=1.2[m]、θ1min=0[rad]、θ1max=2π[rad]、θ2min=0[rad]、θ2max=3π/4[rad] l 1 = 0.5 [m], l 2 = 0.5 [m], r 1 = tan (π / 4), r 2 = tan (π / 4), x E0 = 0.1 [m], y E0 = 1.2 [m], θ 1min = 0 [rad], θ 1max = 2π [rad], θ 2min = 0 [rad], θ 2max = 3π / 4 [rad]

さらに、本シミュレーションにおいて、ロボット130は半径1[m]の円で示す動作範囲206の内側を自由に移動することができ、その円の中心を原点としたカーテシアン座標系においてx方向に0.1[m]、y方向に1.2[m]の位置にある操作対象物Sを操作する作業を実施する場合を模擬している。   Further, in this simulation, the robot 130 can freely move inside the movement range 206 indicated by a circle having a radius of 1 [m], and 0.1 in the x direction in the Cartesian coordinate system with the center of the circle as the origin. The case where the operation | work which operates the operation target S in the position of 1.2 [m] in the [m] and y direction is implemented is simulated.

図3は、本シミュレーションにおいてロボット制御装置の制御装置の位置関節角度演算器が用いる第1評価関数を示す図である。なお、図3において、細線のメッシュは関節可動範囲Ωを示し、太線のメッシュは関節可動範囲外の領域を示し、大きな点は第1評価関数Iを最小化する第1関節角度θと第2関節角度θを示している。 FIG. 3 is a diagram illustrating a first evaluation function used by the position / joint angle calculator of the controller of the robot controller in this simulation. In FIG. 3, fine wire mesh indicates the joint motion range Omega j, thick line of the mesh indicates the area outside the joint range of motion is large from the first joint angle minimizes the first evaluation function I 1 theta 1 If it shows a second joint angle theta 2.

図3に示すように、操作対象物Sをπ/4[rad]の方向へ移動させるのに最適な姿勢は、第1関節角度θが0[rad]であり、かつ第2関節角度θが略2.12[rad]であることを示している。 As shown in FIG. 3, the optimum posture for moving the operation target S in the direction of π / 4 [rad] is that the first joint angle θ 1 is 0 [rad] and the second joint angle θ 2 indicates approximately 2.12 [rad].

図4は、本シミュレーションにおいて、ロボット制御装置の制御装置の位置関節角度演算器が用いる第1評価関数を最小化した場合のロボットの位置及び姿勢を示す図である。なお、図4において、破線は操作対象物Sの所望の移動方向を示している。図4に示しように、ロボット体幹部201はx方向に略−0.14[m]、y方向に略0.77[m]の位置に移動し、ロボット130は操作対象物Sを所望の方向に移動させるのに適した姿勢となっていることが分かる。   FIG. 4 is a diagram illustrating the position and posture of the robot when the first evaluation function used by the position joint angle calculator of the control device of the robot control device is minimized in this simulation. In FIG. 4, a broken line indicates a desired moving direction of the operation target S. As shown in FIG. 4, the robot trunk 201 moves to a position of approximately −0.14 [m] in the x direction and approximately 0.77 [m] in the y direction, and the robot 130 moves the operation target S to a desired position. It can be seen that the posture is suitable for moving in the direction.

図5は、本シミュレーションにおいてロボット制御装置の制御装置の位置関節角度演算器が用いる第2評価関数を示す図である。なお、図5において、細線のメッシュは関節可動範囲Ωを示し、太線のメッシュは関節可動範囲外の領域を示し、大きな点は第2評価関数Iを最小化する第1関節角度θと第2関節角度θを示している。 FIG. 5 is a diagram illustrating a second evaluation function used by the position / joint angle calculator of the controller of the robot controller in this simulation. In FIG. 5, the thin line mesh indicates the joint movable range Ω j , the thick line mesh indicates the region outside the joint movable range, and the large point is the first joint angle θ 1 that minimizes the second evaluation function I 2. If it shows a second joint angle theta 2.

図5に示すように、操作対象物Sに対してπ/4[rad]の方向へ力を加えるのに最適な姿勢は、第1関節角度θが略0.38[rad]であり、第2関節角度θが略0.57[rad]であることを示している。 As shown in FIG. 5, the optimal posture for applying a force to the operation target S in the direction of π / 4 [rad] is a first joint angle θ 1 of approximately 0.38 [rad]. It indicates that second joint angle theta 2 is substantially 0.57 [rad].

図6は、本シミュレーションにおいて、ロボット制御装置の制御装置の位置関節角度演算器が用いる第2評価関数を最小化した場合のロボットの位置及び姿勢を示す図である。図6において、破線は操作対象物Sに付加する力の所望方向を示している。ロボット体幹部201はx方向に略−0.66[m]、y方向に略0.61[m]の位置に移動し、ロボットは操作対象物Sに対して力を加えるのに適した姿勢となっていることが分かる。   FIG. 6 is a diagram illustrating the position and orientation of the robot when the second evaluation function used by the position / joint angle calculator of the controller of the robot controller is minimized in this simulation. In FIG. 6, the broken line indicates the desired direction of the force applied to the operation target S. The robot trunk 201 moves to a position of approximately −0.66 [m] in the x direction and approximately 0.61 [m] in the y direction, and the robot is in a posture suitable for applying force to the operation target S. It turns out that it is.

以上、本実施の形態に係るロボット制御装置100において、ロボット130の動作情報、及び環境情報に基づいた第1関節可動範囲を算出し、算出された第1関節可動範囲の制約下において、ロボットアームのジャコビアン行列における特異値と動作情報とをパラメータとして含む評価関数を最小化させるためのロボットアームの各関節角度を算出し、算出した各関節角度に基づいてロボットの位置を算出する。
これにより、ロボット130の動作範囲206、ロボットアーム205の関節機構など加味してロボットアーム205の関節可動範囲を最適に設定でき、ロボットアーム205のジャコビアン行列の特異値による特性を反映した評価関数を用いて操作対象物を効率良く操作できるロボットアーム205の各関節角度を算出することができる。すなわち、ロボット130の動作範囲が限定されている環境においても、操作対象物Sを効率良く操作できる。
As described above, in the robot control apparatus 100 according to the present embodiment, the first joint movable range is calculated based on the operation information of the robot 130 and the environment information, and the robot arm is limited under the restriction of the calculated first joint movable range. Each joint angle of the robot arm for minimizing an evaluation function including singular values and motion information as parameters in the Jacobian matrix is calculated, and the position of the robot is calculated based on each calculated joint angle.
Accordingly, the joint movable range of the robot arm 205 can be optimally set in consideration of the operation range 206 of the robot 130, the joint mechanism of the robot arm 205, and the like, and the evaluation function reflecting the characteristic due to the singular value of the Jacobian matrix of the robot arm 205 It is possible to calculate each joint angle of the robot arm 205 that can efficiently operate the operation target by using. That is, the operation target S can be efficiently operated even in an environment where the operation range of the robot 130 is limited.

なお、本発明は上記実施の形態に限られたものではなく、趣旨を逸脱しない範囲で適宜変更することが可能である。
例えば、上記一実施の形態において、ロボットアーム205で平面的に操作対象物Sを操作する作業について説明したが、上記(1)式及び(2)式を3次元の動作を表す式に置き換えることにより、ロボット130の全身を使って3次元的に操作対象物Sを操作する作業にも適用することが可能である。
Note that the present invention is not limited to the above-described embodiment, and can be changed as appropriate without departing from the spirit of the present invention.
For example, in the above embodiment, the operation of operating the operation target S in a plane with the robot arm 205 has been described. However, the above expressions (1) and (2) are replaced with expressions representing three-dimensional movements. Thus, the present invention can be applied to the operation of operating the operation target S three-dimensionally using the whole body of the robot 130.

上記実施形態では、本発明をハードウェアの構成として説明したが、本発明は、これに限定されるものではない。本発明は、例えば、制御装置120が実行する処理を、CPUにコンピュータプログラムを実行させることにより実現することも可能である。   In the above embodiment, the present invention has been described as a hardware configuration, but the present invention is not limited to this. In the present invention, for example, the processing executed by the control device 120 can be realized by causing a CPU to execute a computer program.

プログラムは、様々なタイプの非一時的なコンピュータ可読媒体(non-transitory computer readable medium)を用いて格納され、コンピュータに供給することができる。非一時的なコンピュータ可読媒体は、様々なタイプの実体のある記録媒体(tangible storage medium)を含む。非一時的なコンピュータ可読媒体の例は、磁気記録媒体(例えばフレキシブルディスク、磁気テープ、ハードディスクドライブ)、光磁気記録媒体(例えば光磁気ディスク)、CD−ROM(Read Only Memory)、CD−R、CD−R/W、半導体メモリ(例えば、マスクROM、PROM(Programmable ROM)、EPROM(Erasable PROM)、フラッシュROM、RAM(random access memory))を含む。また、プログラムは、様々なタイプの一時的なコンピュータ可読媒体(transitory computer readable medium)によってコンピュータに供給されてもよい。一時的なコンピュータ可読媒体の例は、電気信号、光信号、及び電磁波を含む。一時的なコンピュータ可読媒体は、電線及び光ファイバ等の有線通信路、又は無線通信路を介して、プログラムをコンピュータに供給できる。   The program may be stored using various types of non-transitory computer readable media and supplied to a computer. Non-transitory computer readable media include various types of tangible storage media. Examples of non-transitory computer-readable media include magnetic recording media (for example, flexible disks, magnetic tapes, hard disk drives), magneto-optical recording media (for example, magneto-optical disks), CD-ROMs (Read Only Memory), CD-Rs, CD-R / W and semiconductor memory (for example, mask ROM, PROM (Programmable ROM), EPROM (Erasable PROM), flash ROM, RAM (random access memory)) are included. The program may also be supplied to the computer by various types of transitory computer readable media. Examples of transitory computer readable media include electrical signals, optical signals, and electromagnetic waves. The temporary computer-readable medium can supply the program to the computer via a wired communication path such as an electric wire and an optical fiber, or a wireless communication path.

本発明は、例えば、動作範囲が家具や壁などで限定された空間内において、操作対象物を効率よく操作できる、介護ロボット、救助ロボット、家事手伝いロボットなど人間と共生するサービスロボット全般に広く適用できる。   The present invention is widely applied to general service robots that coexist with humans, such as nursing robots, rescue robots, and housekeeping robots, which can efficiently operate an operation target in a space whose operation range is limited by furniture, walls, etc. it can.

100 ロボット制御装置
110 入力装置
111 指令入力器
112 指令演算器
120 制御装置
121 関節可動範囲演算器
122 位置関節角度演算器
123 制御器
130 ロボット
131 環境検出器
132 関節モータ
133 ロボット機構
134 状態検出器
201 ロボット体幹部
202 上腕部
203 前腕部
204 ロボットハンド
205 ロボットアーム
206 動作範囲
DESCRIPTION OF SYMBOLS 100 Robot control device 110 Input device 111 Command input device 112 Command calculator 120 Control device 121 Joint movable range calculator 122 Position joint angle calculator 123 Controller 130 Robot 131 Environment detector 132 Joint motor 133 Robot mechanism 134 State detector 201 Robot trunk 202 Upper arm 203 Forearm 204 Robot hand 205 Robot arm 206 Operating range

Claims (5)

複数の関節を含むロボットアームを備えるロボットを制御して操作対象物を操作するロボット制御装置であって、
前記ロボットに所望の動作をさせるための動作情報を入力する入力手段と、
前記ロボットの周囲の環境情報を検出する環境情報検出手段と、
前記ロボットの状態量を検出する状態検出手段と、
前記入力手段により入力された動作情報と、前記環境検出手段により検出された環境情報と、に基づいて、前記ロボットアームの各関節が可動できる第1関節可動範囲を算出する関節可動範囲算出手段と、
前記可動範囲算出手段により算出された第1関節可動範囲の制約下において、前記ロボットアームに関するジャコビアン行列の特異値と、前記入力手段により入力された動作情報と、をパラメータとして含む評価関数を、最小化させるための前記ロボットアームの各関節角度を算出し、該算出した各関節角度に基づいて前記ロボットの位置を算出する位置関節角度算出手段と、
前記状態検出手段により検出されたロボットの状態量と、前記位置関節角度算出手段により算出された前記ロボットアームの各関節角度及びロボットの位置に基づいて、前記ロボットを制御する制御手段と、
を備え
前記ロボットアームに関するジャコビ行列は、第1特異値と、該第1特異値よりも大きな第2特異値と、を有しており、
前記位置関節角度算出手段は、
前記入力手段により入力された動作情報が所定方向に操作対象物を移動させる情報の場合において、前記第1特異値と前記動作情報とを含む第1評価関数を最小化するための前記ロボットアームの各関節角度を算出し、
前記入力手段により入力された動作情報が操作対象物に対して所定力を付加する情報の場合において、前記第2特異値と前記動作情報とを含む第2評価関数を最小化するための前記ロボットアームの各関節角度を算出する、ことを特徴とするロボット制御装置。
A robot control apparatus that controls a robot including a robot arm including a plurality of joints to operate an operation target,
Input means for inputting operation information for causing the robot to perform a desired operation;
Environmental information detecting means for detecting environmental information around the robot;
State detecting means for detecting a state quantity of the robot;
A joint movable range calculating means for calculating a first joint movable range in which each joint of the robot arm is movable based on the operation information input by the input means and the environmental information detected by the environment detecting means; ,
An evaluation function including, as parameters, a singular value of a Jacobian matrix related to the robot arm and motion information input by the input unit under the restriction of the first joint movable range calculated by the movable range calculation unit. Position joint angle calculating means for calculating each joint angle of the robot arm for minimization and calculating the position of the robot based on the calculated joint angle;
Control means for controlling the robot based on the state quantity of the robot detected by the state detection means, the joint angles of the robot arm calculated by the position joint angle calculation means, and the position of the robot;
Equipped with a,
The Jacobian matrix related to the robot arm has a first singular value and a second singular value larger than the first singular value,
The position joint angle calculating means includes
In the case where the motion information input by the input means is information for moving the operation target object in a predetermined direction, the robot arm for minimizing the first evaluation function including the first singular value and the motion information. Calculate each joint angle,
The robot for minimizing a second evaluation function including the second singular value and the motion information when the motion information input by the input means is information for applying a predetermined force to the operation target. A robot controller characterized by calculating each joint angle of an arm .
請求項記載のロボット制御装置であって、
前記入力手段により入力された動作情報が所定方向に操作対象物を移動させつつ所定力を加える情報である場合において、
前記位置関節角度算出手段は、
前記操作対象物を所定方向へ移動させることが、前記操作対象物に所定力を加えることよりも重要であるとき、前記可動範囲算出手段により算出された前記第1関節可動範囲、及び前記重要度を示す所定係数と前記第1特異値とを含む関数で表わされる第2関節可動範囲の制約下で、前記第1評価関数を最小化させるための前記ロボットアームの各関節角度を算出し、
前記操作対象物に所定力を加えることが前記操作対象物を所定方向へ移動させることよりも重要であるとき、前記可動範囲算出手段により算出された前記第1関節可動範囲、及び前記重要度を示す所定係数と前記第2特異値とを含む関数で表わされる第2関節可動範囲の制約下で、前記第2評価関数を最小化させるための前記ロボットアームの各関節角度を算出する、
ことを特徴とするロボット制御装置。
The robot control device according to claim 1 ,
When the operation information input by the input means is information for applying a predetermined force while moving the operation target in a predetermined direction,
The position joint angle calculating means includes
When it is more important to move the operation object in a predetermined direction than to apply a predetermined force to the operation object, the first joint movable range calculated by the movable range calculation means, and the importance degree Calculating each joint angle of the robot arm for minimizing the first evaluation function under the restriction of the second joint movable range represented by a function including a predetermined coefficient indicating the first singular value,
When it is more important to apply a predetermined force to the operation object than to move the operation object in a predetermined direction, the first joint movable range calculated by the movable range calculation unit and the importance degree are calculated. Calculating each joint angle of the robot arm for minimizing the second evaluation function under the restriction of the second joint movable range represented by a function including a predetermined coefficient indicating and the second singular value;
A robot controller characterized by that.
請求項1又は2記載のロボット制御装置であって、
前記関節可動範囲算出手段は、前記入力手段により入力された動作情報と、前記環境情報検出手段により検出された前記ロボット周囲の障害物の位置情報と、に基づいて、前記ロボットの動作範囲を算出し、該算出した動作範囲と、予め設定された前記関節機構の制約による関節の可動範囲と、に基づいて、前記第1関節可動範囲を算出する、ことを特徴とするロボット制御装置。
The robot control device according to claim 1 or 2 ,
The joint movable range calculation means calculates the robot motion range based on the motion information input by the input means and the position information of obstacles around the robot detected by the environment information detection means. Then, the robot control apparatus calculates the first joint movable range based on the calculated motion range and a joint movable range set in advance by the restriction of the joint mechanism.
複数の関節を含むロボットアームを備えるロボットを制御して操作対象物を操作するロボット制御装置の制御方法であって、
前記ロボットに所望の動作をさせるための動作情報を入力するステップと、
前記ロボットの周囲の環境情報を検出するステップと、
前記ロボットの状態量を検出するステップと、
前記入力された動作情報と、前記検出された環境情報と、に基づいて、前記ロボットアームの各関節が可動できる第1関節可動範囲を算出するステップと、
前記算出された第1関節可動範囲の制約下において、前記ロボットアームに関するジャコビアン行列の特異値と、前記入力された動作情報と、をパラメータとして含む評価関数を、最小化させるための前記ロボットアームの各関節角度を算出し、該算出した各関節角度に基づいて前記ロボットの位置を算出するステップと、
前記検出されたロボットの状態量と、前記算出されたロボットアームの各関節角度及びロボットの位置に基づいて、前記ロボットを制御するステップと、
を含み、
前記ロボットアームに関するジャコビ行列は、第1特異値と、該第1特異値よりも大きな第2特異値と、を有しており、
前記入力した動作情報が所定方向に操作対象物を移動させる情報の場合において、前記第1特異値と前記動作情報とを含む第1評価関数を最小化するための前記ロボットアームの各関節角度を算出し、
前記入力した動作情報が操作対象物に対して所定力を付加する情報の場合において、前記第2特異値と前記動作情報とを含む第2評価関数を最小化するための前記ロボットアームの各関節角度を算出する、ことを特徴とするロボット制御装置の制御方法。
A control method of a robot control apparatus for controlling a robot including a robot arm including a plurality of joints and operating an operation target,
Inputting operation information for causing the robot to perform a desired operation;
Detecting environmental information around the robot;
Detecting a state quantity of the robot;
Calculating a first joint movable range in which each joint of the robot arm is movable based on the input operation information and the detected environment information;
The robot arm for minimizing an evaluation function including, as parameters, a singular value of a Jacobian matrix related to the robot arm and the input motion information under the constraint of the calculated first joint movable range Calculating each joint angle and calculating the position of the robot based on each calculated joint angle;
Controlling the robot based on the detected state quantity of the robot and the calculated joint angles of the robot arm and the position of the robot;
Only including,
The Jacobian matrix related to the robot arm has a first singular value and a second singular value larger than the first singular value,
When the input motion information is information for moving the operation target object in a predetermined direction, each joint angle of the robot arm for minimizing the first evaluation function including the first singular value and the motion information is set. Calculate
Each joint of the robot arm for minimizing a second evaluation function including the second singular value and the motion information when the input motion information is information for applying a predetermined force to the operation target A control method for a robot control apparatus, characterized in that an angle is calculated .
複数の関節を含むロボットアームを備えるロボットを制御して操作対象物を操作するロボット制御装置のプログラムであって、
前記ロボットに所望の動作をさせるための動作情報と、前記ロボットの周囲の環境情報と、に基づいて、前記ロボットアームの各関節が可動できる第1関節可動範囲を算出する処理と、
前記算出された第1関節可動範囲の制約下において、前記ロボットアームに関するジャコビアン行列の特異値と、前記入力された動作情報と、をパラメータとして含む評価関数を、最小化させるための前記ロボットアームの各関節角度を算出し、該算出した各関節角度に基づいて前記ロボットの位置を算出する処理と、
前記ロボットの状態量と、前記算出されたロボットアームの各関節角度及びロボットの位置に基づいて、前記ロボットを制御する処理と、
コンピュータに実行させ、
前記ロボットアームに関するジャコビ行列は、第1特異値と、該第1特異値よりも大きな第2特異値と、を有しており、
前記入力した動作情報が所定方向に操作対象物を移動させる情報の場合において、前記第1特異値と前記動作情報とを含む第1評価関数を最小化するための前記ロボットアームの各関節角度を算出し、
前記入力した動作情報が操作対象物に対して所定力を付加する情報の場合において、前記第2特異値と前記動作情報とを含む第2評価関数を最小化するための前記ロボットアームの各関節角度を算出する、ことを特徴とするロボット制御装置のプログラム。
A program for a robot control apparatus that controls a robot including a robot arm including a plurality of joints to operate an operation target,
A process of calculating a first joint movable range in which each joint of the robot arm is movable based on operation information for causing the robot to perform a desired operation and environment information around the robot;
The robot arm for minimizing an evaluation function including, as parameters, a singular value of a Jacobian matrix related to the robot arm and the input motion information under the constraint of the calculated first joint movable range Calculating the joint angles of the robot, and calculating the position of the robot based on the calculated joint angles;
A process of controlling the robot based on the state quantity of the robot and the calculated joint angles of the robot arm and the position of the robot;
To the computer,
The Jacobian matrix related to the robot arm has a first singular value and a second singular value larger than the first singular value,
When the input motion information is information for moving the operation target object in a predetermined direction, each joint angle of the robot arm for minimizing the first evaluation function including the first singular value and the motion information is set. Calculate
Each joint of the robot arm for minimizing a second evaluation function including the second singular value and the motion information when the input motion information is information for applying a predetermined force to the operation target A program for a robot control apparatus characterized by calculating an angle .
JP2011224998A 2011-10-12 2011-10-12 Robot control apparatus, control method thereof, and program Expired - Fee Related JP5776486B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2011224998A JP5776486B2 (en) 2011-10-12 2011-10-12 Robot control apparatus, control method thereof, and program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2011224998A JP5776486B2 (en) 2011-10-12 2011-10-12 Robot control apparatus, control method thereof, and program

Publications (2)

Publication Number Publication Date
JP2013082049A JP2013082049A (en) 2013-05-09
JP5776486B2 true JP5776486B2 (en) 2015-09-09

Family

ID=48527804

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2011224998A Expired - Fee Related JP5776486B2 (en) 2011-10-12 2011-10-12 Robot control apparatus, control method thereof, and program

Country Status (1)

Country Link
JP (1) JP5776486B2 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110000779A (en) * 2019-03-25 2019-07-12 上海科技大学 Fault-tolerant self-correcting industrial machine human arm control method based on two dimensional code

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP7123885B2 (en) * 2019-09-13 2022-08-23 株式会社東芝 Handling device, control device and holding method
CN111716352B (en) * 2020-05-13 2022-04-29 中国电力科学研究院有限公司 Power distribution network live working mechanical arm navigation obstacle avoidance method and system
WO2023245600A1 (en) * 2022-06-24 2023-12-28 Abb Schweiz Ag Method, device and computer readable media for use with robot

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009172685A (en) * 2008-01-22 2009-08-06 Yaskawa Electric Corp Manipulator system and its control method
JP2009233778A (en) * 2008-03-26 2009-10-15 Toshiba Corp Method of positioning body of mobile robot

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110000779A (en) * 2019-03-25 2019-07-12 上海科技大学 Fault-tolerant self-correcting industrial machine human arm control method based on two dimensional code
CN110000779B (en) * 2019-03-25 2021-09-28 上海科技大学 Fault-tolerant self-correcting industrial robot arm control method based on two-dimensional code

Also Published As

Publication number Publication date
JP2013082049A (en) 2013-05-09

Similar Documents

Publication Publication Date Title
Almusawi et al. A new artificial neural network approach in solving inverse kinematics of robotic arm (denso vp6242)
JP6312264B2 (en) Constraints on robot manipulators with redundant degrees of freedom
KR102003216B1 (en) Motor control and / or adjustment for the robot
Kim et al. A force reflected exoskeleton-type masterarm for human-robot interaction
US20120130541A1 (en) Method and apparatus for robot teaching
US9043030B2 (en) Manipulator and path generation method thereof
Luo et al. Real time human motion imitation of anthropomorphic dual arm robot based on Cartesian impedance control
Xu et al. Visual-haptic aid teleoperation based on 3-D environment modeling and updating
EP2406041A1 (en) Robot apparatus and control method therefor
KR102030141B1 (en) Method and system for controlling elbow of robot
JP5776486B2 (en) Robot control apparatus, control method thereof, and program
JP2013180380A (en) Control device, control method, and robot apparatus
Albini et al. Exploiting distributed tactile sensors to drive a robot arm through obstacles
JP2018089736A (en) Master-slave system
JP2011031309A (en) Method of generating moving body posture and device of generating moving body posture
Kaplish et al. Motion retargeting and control for teleoperated physical human-robot interaction
Namiki et al. Vision-based predictive assist control on master-slave systems
Sanchez et al. Four-arm collaboration: Two dual-arm robots work together to manipulate tethered tools
Robson et al. Geometric design of planar mechanisms based on virtual guides for manipulation
Parga et al. Tele-manipulation of robot arm with smartphone
Jin et al. Minimal grasper: A practical robotic grasper with robust performance for pick-and-place tasks
JP6270334B2 (en) Robot control apparatus and method
Tsetserukou et al. Intelligent variable joint impedance control and development of a new whole-sensitive anthropomorphic robot arm
Kuan et al. Challenges in VR-based robot teleoperation
Spencer et al. Collision avoidance techniques for tele-operated and autonomous manipulators in overlapping workspaces

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20140116

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20141010

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20141021

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20141212

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20150622

R151 Written notification of patent or utility model registration

Ref document number: 5776486

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151

LAPS Cancellation because of no payment of annual fees