JPH08328631A - Method for simulating robot operation and device therefor - Google Patents
Method for simulating robot operation and device thereforInfo
- Publication number
- JPH08328631A JPH08328631A JP13036395A JP13036395A JPH08328631A JP H08328631 A JPH08328631 A JP H08328631A JP 13036395 A JP13036395 A JP 13036395A JP 13036395 A JP13036395 A JP 13036395A JP H08328631 A JPH08328631 A JP H08328631A
- Authority
- JP
- Japan
- Prior art keywords
- robot
- posture
- calculated
- joint
- displacement amount
- 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.)
- Pending
Links
Landscapes
- Numerical Control (AREA)
Abstract
Description
【0001】[0001]
【産業上の利用分野】本発明は、設置される環境に対す
るロボットの適用検討や、ロボットの最適な動作経路を
検討するために用いられるシミュレーション方法および
その装置に関する。BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to a simulation method and apparatus used for studying the application of a robot to the environment in which it is installed and for studying the optimum operation path of the robot.
【0002】[0002]
【従来の技術】従来から、ロボットの選定や動作経路の
確認は、現場での実機によるトライアンドエラーに代え
て、机上でその選定や確認を手軽に行うことができるシ
ミュレーション装置によって行われている。2. Description of the Related Art Conventionally, the selection of robots and the confirmation of operation paths have been carried out by a simulation device which can be easily selected and confirmed on a desk instead of trial and error by an actual machine in the field. .
【0003】このシミュレーション装置は、予め現場の
環境に関するデータが入力されており、この環境内に任
意のロボットをおいて、このロボットを仮想的に動か
し、対象とする作業を行わせるのに最適なロボットの種
類の選定や、そのロボットの最適な作業経路の作成を行
うものである。This simulation device is preliminarily input with data on the environment of the site, and is optimal for placing an arbitrary robot in this environment and virtually moving the robot to perform a target work. This is to select the type of robot and to create an optimal work route for that robot.
【0004】作業経路の作成に当たっては、隣接する装
置などに干渉しないようにしかも最も最短となるよう
に、ロボットの作業端の位置や姿勢に関するデータを入
力し、この入力データに基づいて画面上でロボットを動
かし、この動きを検証しながら教示データを作成するよ
うにしている。When creating a work route, data relating to the position and orientation of the working end of the robot is input so that it does not interfere with adjacent devices and is the shortest, and based on this input data, the data is displayed on the screen. The robot is moved, and teaching data is created while verifying this movement.
【0005】従来のシミュレーション装置の動作の一例
を図5のフローチャートに示す。An example of the operation of the conventional simulation apparatus is shown in the flowchart of FIG.
【0006】画面上に表示されているロボットの動きが
どの様になるかを検証するには、まず、操作者が作業端
であるハンドの位置と姿勢に関するデータを入力するこ
とから始まる(S1)。シミュレーション装置は、この
入力されたデータに基づいて、ロボットを構成する各関
節の変位量を演算するための逆キネマティクスを解く
(S2)。この結果、すべての関節の変位量が動作限界
内である時には、ロボットは自由に動くことが可能であ
るから、求められた変位量だけ各関節を動かしてこれを
画面上に表示する(S3,S4)。In order to verify the movement of the robot displayed on the screen, the operator first starts by inputting data on the position and orientation of the hand, which is the working end (S1). . The simulation device solves the inverse kinematics for calculating the displacement amount of each joint forming the robot based on the input data (S2). As a result, when the displacement amounts of all the joints are within the movement limits, the robot can move freely, and therefore each joint is moved by the calculated displacement amount and displayed on the screen (S3). S4).
【0007】一方、逆キネマティクスを求めた結果、そ
の解は存在するものの、これに基づく変位量で各関節を
動かすといずれかの関節が動作制限を越えることとなる
場合、換言すれば、機械的な動作限界には達していない
が関節の動作制限を広げれば指定した位置と姿勢とにハ
ンドを設定することができる場合には、動作限界を越え
る関節についてはその限度値まで動かし、動作限界内の
関節については求められた変位量だけ関節を動かして、
この状態を画面上に表示する(S5,S6)。さらに、
逆キネマティクスの解が存在しないときには、指示され
た位置と姿勢とにハンドを設定することは不可能なので
あるかから、ロボットは動かさずにそのままの姿勢を表
示する(S7,S8)。On the other hand, as a result of obtaining the inverse kinematics, there is a solution, but when moving each joint by the displacement amount based on this, one of the joints exceeds the motion limit, in other words, the mechanical limit. If the hand can be set to the specified position and posture by expanding the joint movement limit, the joint that exceeds the movement limit is moved to that limit value and the movement limit is reached. For the joints inside, move the joints by the calculated displacement,
This state is displayed on the screen (S5, S6). further,
When there is no inverse kinematics solution, it is impossible to set the hand at the instructed position and posture, so the robot does not move and displays the posture as it is (S7, S8).
【0008】[0008]
【発明が解決しようとする課題】しかしながら、このよ
うな従来のシミュレーション装置にあっては、逆キネマ
ティクスの解が存在しない場合には、ロボットを全く動
かさないようにしていたために、何が原因で指定の位
置、姿勢にハンドを移動することができないのかが全く
分からずに、どの様な対策をとるべきかを判断すること
が困難であるという問題があった。However, in such a conventional simulation apparatus, when the solution of the inverse kinematics does not exist, the robot is not moved at all. There is a problem that it is difficult to judge what kind of measures should be taken without fully knowing whether or not the hand cannot be moved to the designated position and posture.
【0009】本発明はこのような従来の問題点に鑑みて
なされたものであり、ロボットの作業端を所望の位置、
姿勢に設定することができなかった場合の原因究明の容
易なロボット動作のシミュレーション方法およびその装
置の提供を目的とするものである。The present invention has been made in view of the above conventional problems, and the working end of the robot is set at a desired position.
An object of the present invention is to provide a method and apparatus for simulating a robot motion that allows easy investigation of the cause when the posture cannot be set.
【0010】[0010]
【課題を解決するための手段】上記目的を達成するため
の本発明は次のように構成されている。[Means for Solving the Problems] The present invention for achieving the above object is configured as follows.
【0011】第1の構成においては、設置場所の環境に
対するロボットの適用検討や最適な作業経路検討のため
のロボット動作のシミュレーション方法であって、ロボ
ット作業端の位置と姿勢とを指示し、当該指示に基づく
位置と姿勢を実現するための各関節ごとの変位量を算出
し、当該算出された変位量が各間接の動作制限を越える
場合、または変位量が算出できなかった場合には、指示
された作業端の位置と姿勢とを実現できない旨を表示す
ることを特徴とする。The first configuration is a method of simulating a robot operation for studying application of the robot to the environment of the installation site and studying the optimal work route, in which the position and orientation of the robot working end are instructed. Calculate the displacement amount for each joint to realize the position and orientation based on the instruction, and if the calculated displacement amount exceeds each indirect motion limit, or if the displacement amount cannot be calculated, It is characterized in that it displays that the position and orientation of the work end thus specified cannot be realized.
【0012】第2の構成においては、設置場所の環境に
対するロボットの適用検討や最適な作業経路検討のため
のロボット動作のシミュレーション方法であって、ロボ
ット作業端の位置と姿勢とを指示し、当該指示に基づく
位置と姿勢を実現するための各関節ごとの変位量を算出
し、当該算出された変位量が各間接の動作制限を越える
場合には、その動作限界まで関節を動かして、その状態
を表示すると共に、動作限界を越える関節が存在する旨
を表示することをことを特徴とする。The second configuration is a method of simulating a robot operation for studying the application of the robot to the environment of the installation site and studying the optimal work route, in which the position and orientation of the robot working end are instructed. Calculate the displacement amount for each joint to realize the position and posture based on the instruction, and if the calculated displacement amount exceeds each indirect motion limit, move the joint to the motion limit and then Is displayed, and the fact that there is a joint exceeding the motion limit is displayed.
【0013】第3の構成においては、設置場所の環境に
対するロボットの適用検討や最適な作業経路検討のため
のロボット動作のシミュレーション方法であって、ロボ
ット作業端の位置と姿勢とを指示し、当該指示に基づく
位置と姿勢を実現するための各関節ごとの変位量を算出
し、当該算出された変位量が各間接の動作制限を越える
場合であっても、その動作制限を無視して関節を動かし
て、その状態を表示すると共に、指示された作業端の位
置姿勢とを実現できない旨を表示することを特徴とす
る。The third configuration is a method of simulating a robot operation for studying application of the robot to the environment of the installation site and studying the optimal work route, in which the position and orientation of the robot working end are instructed. The displacement amount for each joint to realize the position and orientation based on the instruction is calculated, and even if the calculated displacement amount exceeds the indirect motion limit, the motion limit is ignored and the joint is moved. It is characterized in that it is moved to display the state, and also displays that the specified position and orientation of the working end cannot be realized.
【0014】第4の構成においては、ロボット作業端の
目標位置と目標姿勢とを設定する目標位置姿勢設定部
と、現在のロボット作業端の目標位置と目標姿勢とから
次の目標位置と目標姿勢を算出する次期位置姿勢発生部
と、当該次期位置姿勢発生部によって算出された次の目
標位置と目標姿勢を実現する関節の変位量を各関節ごと
に算出するロボット逆キネマティクス計算部と、当該ロ
ボット逆キネマティクス計算部によって計算された関節
の変位量が動作制限を越えるものであるか否かの判断を
各関節ごとに行う軸動作限界判定部と、当該軸動作限界
判定部によっていずれかの関節が動作限界を越えている
場合には、表示のための前記作業端の最終的な位置と姿
勢とを算出する最終位置姿勢発生部と、当該最終位置姿
勢発生部によって算出された作業端の最終的な位置と姿
勢とを表示すると共に、前記ロボット作業端を目標位置
と目標姿勢とに設定することが困難である旨のメッセー
ジを表示する画面表示部とを有することを特徴とする。In the fourth configuration, a target position / posture setting unit for setting the target position and the target posture of the robot working end, and the next target position and target posture based on the current target position and target posture of the robot working end. A next position / posture generation unit, a robot inverse kinematics calculation unit that calculates, for each joint, the displacement amount of the joint that realizes the next target position and target posture calculated by the next position / posture generation unit, The robot inverse kinematics calculation unit determines whether or not the amount of displacement of the joint exceeds the motion limit for each joint by the axis motion limit judgment unit and the axis motion limit judgment unit. When the joint exceeds the motion limit, the final position and orientation generation unit that calculates the final position and orientation of the working end for display and the final position and orientation generation unit calculate the final position and orientation. And a screen display unit for displaying a message indicating that it is difficult to set the robot working end to the target position and the target posture while displaying the final position and posture of the working end. Characterize.
【0015】第5の構成にあっては、第4の構成に加
え、前記ロボット逆キネマティクス計算部によって計算
された関節の変位量が動作制限を越えるものである場合
に、作業端の最終的な位置と姿勢並びに前記メッセージ
を前記画面表示部に表示させる態様を設定する動作モー
ド設定部をさらに有し、前記最終位置姿勢発生部は、算
出された作業端の最終的な位置と姿勢、または、前記ロ
ボット作業端を目標位置と目標姿勢とに設定することが
困難である旨のメッセージの双方をあるいはいずれか一
方を、当該動作モード設定部によって設定されている態
様にしたがって前記画面表示部に表示させることを特徴
とする。In the fifth structure, in addition to the fourth structure, when the displacement amount of the joint calculated by the robot inverse kinematics calculation unit exceeds the motion limit, the final working end is determined. A position and orientation, and an operation mode setting unit that sets a mode in which the message is displayed on the screen display unit, and the final position and orientation generation unit includes the calculated final position and orientation of the working end, or , The message indicating that it is difficult to set the robot work end to the target position and the target posture is displayed on the screen display unit according to the mode set by the operation mode setting unit. It is characterized by displaying.
【0016】[0016]
【作用】このように構成した本発明は、各構成ごとに次
のように作用する。The present invention thus configured operates as follows for each configuration.
【0017】まず、第1の構成においては、算出された
変位量が各間接の動作制限を越える場合、または変位量
が算出できなかった場合には、指示された業端の位置と
姿勢とを実現できない旨を表示するので、操作者は何が
原因で指示した姿勢が実現できないのかを容易に判断す
ることができるようになる。First, in the first configuration, when the calculated displacement amount exceeds each indirect motion limit, or when the displacement amount cannot be calculated, the instructed position and posture of the end of work are determined. Since the fact that it cannot be realized is displayed, the operator can easily determine what causes the instructed posture to be impossible.
【0018】また、第2の構成においては、算出された
変位量が各間接の動作制限を越える場合には、その動作
限界まで関節を動かして、その状態を表示すると共に、
動作限界を越える関節が存在する旨を表示するので、操
作者は何が原因で指示した姿勢が実現できないのかを容
易に判断することができ、また、どの関節が動作限界を
越えているのかをも容易に判断することができるように
なる。In the second configuration, when the calculated displacement amount exceeds each indirect motion limit, the joint is moved to the motion limit and the state is displayed, and
By displaying that there are joints that exceed the movement limit, the operator can easily determine what causes the instructed posture to be unrealized, and which joints exceed the movement limit. Will also be able to judge easily.
【0019】第3の構成においては、算出された変位量
が各間接の動作制限を越える場合であっても、その動作
制限を無視して関節を動かして、その状態を表示すると
共に、指示された作業端の位置と姿勢とを実現できない
旨を表示するので、操作者は何が原因で指示した姿勢が
実現できないのかを容易に判断することができ、また、
どの関節が動作限界を越えているのかをも容易に判断す
ることができるようになる。さらに、機械的な限界との
関係をも把握することができるようになる。In the third configuration, even when the calculated displacement amount exceeds each indirect motion limit, the motion limit is ignored, the joint is moved, the state is displayed, and an instruction is given. Since it is displayed that the position and orientation of the working end cannot be realized, the operator can easily determine what causes the instructed attitude to be unrealized.
It also becomes possible to easily judge which joint exceeds the motion limit. Further, it becomes possible to understand the relationship with the mechanical limit.
【0020】第4の構成において、次期位置姿勢発生部
では、目標位置姿勢設定部によって設定したロボット作
業端の目標位置と目標姿勢とから次の目標位置と目標姿
勢を算出し、ロボット逆キネマティクス計算部では、こ
の次の目標位置と目標姿勢を実現する関節の変位量を各
関節ごとに算出する。軸動作限界判定部では、当該ロボ
ット逆キネマティクス計算部によって計算された関節の
変位量が動作制限を越えるものであるか否かの判断を各
関節ごとに行い、いずれかの関節が動作限界を越えてい
る場合には、表示のための前記作業端の最終的な位置と
姿勢とを最終位置姿勢発生部で算出する。画面表示部で
は、算出された作業端の最終的な位置と姿勢とを表示す
ると共に、前記ロボット作業端を目標位置と目標姿勢と
に設定することが困難である旨のメッセージを表示す
る。In the fourth configuration, the next position / posture generation unit calculates the next target position and target posture from the target position and target posture of the robot working end set by the target position / posture setting unit, and the robot inverse kinematics is calculated. The calculation unit calculates the displacement amount of the joint that realizes the next target position and target posture for each joint. The axis motion limit determination unit determines for each joint whether or not the displacement amount of the joint calculated by the robot inverse kinematics calculation unit exceeds the motion limit, and one of the joints determines the motion limit. If it exceeds, the final position and orientation of the working end for display is calculated by the final position and orientation generation unit. The screen display unit displays the calculated final position and orientation of the working end, and also displays a message indicating that it is difficult to set the robot working end to the target position and target posture.
【0021】したがって、操作者は何が原因で指示した
姿勢が実現できないのかを容易に判断することができる
ことになる。Therefore, the operator can easily determine what causes the instructed posture to be unrealizable.
【0022】第5の構成においては、第4の構成に、前
記ロボット逆キネマティクス計算部によって計算された
関節の変位量が動作制限を越えるものである場合に、作
業端の最終的な位置と姿勢並びに前記メッセージを前記
画面表示部に表示させる態様を設定する動作モード設定
部を付加している。このために、最終位置姿勢発生部
は、算出された作業端の最終的な位置と姿勢、または、
前記ロボット作業端を目標位置と目標姿勢とに設定する
ことが困難である旨のメッセージの双方をあるいはいず
れか一方を、当該動作モード設定部によって設定されて
いる態様にしたがって前記画面表示部に表示させること
ができる。In the fifth configuration, in the fourth configuration, when the displacement amount of the joint calculated by the robot inverse kinematics calculation unit exceeds the motion limit, the final position of the working end is determined. An operation mode setting unit for setting a posture and a mode of displaying the message on the screen display unit is added. For this purpose, the final position / posture generation unit calculates the final position and posture of the working end, or
Both or either of the messages indicating that it is difficult to set the robot working end to the target position and the target posture is displayed on the screen display unit according to the mode set by the operation mode setting unit. Can be made.
【0023】したがって、操作者は何が原因で指示した
姿勢が実現できないのかを容易に判断することができ、
また、どの関節が動作限界を越えているのかをも容易に
判断することができるようになる。Therefore, the operator can easily determine what causes the instructed posture cannot be realized.
Further, it becomes possible to easily determine which joint exceeds the motion limit.
【0024】[0024]
【実施例】以下、本発明の一実施例を図面に基づいて説
明する。図1は、本発明にかかるロボット動作のシミュ
レーション装置の概略の構成を示すブロック図である。An embodiment of the present invention will be described below with reference to the drawings. FIG. 1 is a block diagram showing a schematic configuration of a robot motion simulation apparatus according to the present invention.
【0025】図中の目標位置姿勢設定部10は、操作者
がロボットの作業端(ハンド)の目標となる位置と姿勢
とを与える部分であり、一般的にはコンピュータのキー
ボードのようなものである。動作モード設定部12は、
図2に示してあるような8種類の動作モードを設定する
部分である。この動作モードについては後で詳細に説明
する。A target position / orientation setting unit 10 in the figure is a portion where an operator gives a target position and orientation of a working end (hand) of a robot, and is generally like a computer keyboard. is there. The operation mode setting unit 12
This is a part for setting eight kinds of operation modes as shown in FIG. This operation mode will be described later in detail.
【0026】最終位置姿勢発生部14は、目標位置姿勢
設定部10で設定された目標となる位置と姿勢ならびに
初期の位置や姿勢、および動作モード設定部12によっ
て設定された動作モードを入力して、最終的なロボット
の姿勢を算出するものである。また、この最終位置姿勢
発生部14は、現在のハンドの位置や姿勢を出力する機
能をも持っている。The final position / posture generation unit 14 inputs the target position and posture set by the target position / posture setting unit 10, the initial position and posture, and the operation mode set by the operation mode setting unit 12. , To calculate the final robot posture. The final position / posture generation unit 14 also has a function of outputting the current position and posture of the hand.
【0027】次期位置姿勢発生部16は、最終位置姿勢
発生部14から出力された現在のハンドの位置や姿勢を
入力して、現在位置と目標位置との例えば中間点である
ような次期位置姿勢を算出して最終位置姿勢発生部14
にこれを出力するものである。この次期位置姿勢発生部
16を設けた詳細な理由は後述するが、ハンドの目標位
置姿勢が実現できないような場合でも、ロボットを構成
する各軸の機械的な限界点を越えない範囲でハンドの位
置姿勢を表示できるようにするためである。The next position / posture generation unit 16 inputs the current position and posture of the hand output from the final position / posture generation unit 14, and then inputs the next position / posture such as an intermediate point between the present position and the target position. To calculate the final position and orientation generation unit 14
This is output to. Although the detailed reason for providing the next position / posture generating unit 16 will be described later, even when the target position / posture of the hand cannot be realized, the hand position can be set within a range that does not exceed the mechanical limit points of the axes constituting the robot. This is so that the position and orientation can be displayed.
【0028】ロボット逆キネマティクス計算部20は、
次期位置姿勢発生部16から出力された次期位置姿勢に
基づいて、この位置姿勢にハンドを設定するための各関
節の変位量を算出するものであり、この算出結果である
逆キネマティクス解は、最終位置姿勢発生部14に出力
される。The robot inverse kinematics calculation unit 20 is
Based on the next position / posture output from the next position / posture generation unit 16, the displacement amount of each joint for setting the hand in this position / posture is calculated, and the inverse kinematics solution as the calculation result is It is output to the final position / posture generation unit 14.
【0029】軸動作限界判定部22は、ロボット逆キネ
マティクス計算部20によって算出された各関節の変位
量に基づいて、動作限界を越える軸が存在するか否かを
判断し、その結果をロボット逆キネマティクス計算部2
0に出力するものである。The axis motion limit determination unit 22 determines whether or not there is an axis exceeding the motion limit based on the displacement amount of each joint calculated by the robot inverse kinematics calculation unit 20, and the result is determined by the robot. Inverse kinematics calculator 2
It outputs to 0.
【0030】画面表示部24は、最終位置姿勢発生部1
4によって算出された最終的なハンドの位置と姿勢を表
示するものであって、操作者は、この画面を見てロボッ
トの動作経路などが適正なものであるかを判断する。The screen display unit 24 includes the final position / posture generation unit 1.
The final position and orientation of the hand calculated by 4 are displayed, and the operator looks at this screen to determine whether the motion path of the robot is proper.
【0031】このように構成された本発明の装置は、図
3および図4に基づくフローチャートに基づいて次のよ
うに動作することになる。The apparatus of the present invention thus constructed operates as follows based on the flow charts shown in FIGS. 3 and 4.
【0032】画面上に表示されているロボットの動きが
どの様になるかを検証するには、まず、操作者が作業端
であるハンドの目標位置と姿勢に関するデータを目標位
置姿勢設定部10に入力することから始まる(S1
1)。ロボット逆キネマティクス計算部20は、最終位
置姿勢発生部14を介して、このハンドの目標位置と姿
勢に関するデータを入力し、この入力したデータに基づ
いて、ロボットを構成する各関節の変位量を演算するた
めの逆キネマティクスを解く(S12)。この演算の結
果、軸動作限界判定部22によってすべての関節の変位
量が動作限界内であると判断され、かつ、逆キネマティ
クス解も求めることができたときには、ロボットは正常
に動作することができるのであるから、最終位置姿勢発
生部14は目標位置と姿勢にハンドを動かし、この状態
を画面表示部24に表示する(S13,S14)。In order to verify what the movement of the robot displayed on the screen looks like, first, the operator inputs data regarding the target position and posture of the hand, which is the working end, to the target position / posture setting unit 10. Start by entering (S1
1). The robot inverse kinematics calculation unit 20 inputs data relating to the target position and posture of this hand via the final position / posture generation unit 14, and based on the input data, calculates the displacement amount of each joint constituting the robot. The inverse kinematics for calculation is solved (S12). As a result of this calculation, when the axis motion limit determination unit 22 determines that the displacement amounts of all the joints are within the motion limits, and the inverse kinematics solution can also be obtained, the robot operates normally. Therefore, the final position / posture generation unit 14 moves the hand to the target position and posture, and displays this state on the screen display unit 24 (S13, S14).
【0033】一方、ロボット逆キネマティクス計算部2
0によって逆キネマティクス解を算出することはできた
ものの、いずれかの軸が動作限界を越えてしまうような
場合、換言すれば、関節の動作制限を広げれば、目標位
置と姿勢とにハンドを設定することが可能である場合に
は、動作モード設定部12によって設定されたモードに
したがって最終的なロボットの姿勢などを表示する。On the other hand, the robot inverse kinematics calculator 2
Although the inverse kinematics solution could be calculated by 0, if one of the axes exceeds the motion limit, in other words, if the motion limit of the joint is widened, the hand is moved to the target position and posture. If it can be set, the final posture of the robot and the like are displayed according to the mode set by the operation mode setting unit 12.
【0034】このような場合には、図2に示すようなモ
ード1からモード6の6種類の設定を可能としている。
たとえば、モード1に設定してあると、いずれかの軸が
動作限界を越えているときには、画面表示部24に表示
されているロボットの姿勢はそのままとして、「動作限
界を越える軸が存在するので動作できない」旨を画面上
に表示する。操作者は、このメッセージによって、目標
位置および姿勢にハンドを設定することが無理であるこ
とを容易に知ることができるようになる。モード2の場
合には、上記のメッセージに代えて動作限界を越えてし
まう軸のみを色を変えて表示する。In such a case, it is possible to set six kinds of modes 1 to 6 as shown in FIG.
For example, when the mode 1 is set, when one of the axes exceeds the movement limit, the posture of the robot displayed on the screen display unit 24 is left as it is and "there is an axis exceeding the movement limit. "Cannot operate" is displayed on the screen. This message allows the operator to easily know that it is impossible to set the hand at the target position and posture. In the case of mode 2, instead of the above message, only the axes that exceed the operation limit are displayed in different colors.
【0035】モード3を選択している場合には、動作限
界を越える関節についてはその限界値までロボットを動
作させて表示し、同時に「動作限界を越える軸が存在す
るので動作できない」旨を画面上に表示する。When the mode 3 is selected, the joints exceeding the movement limit are displayed by operating the robot up to the limit value, and at the same time, a screen indicating that "there is no movement because there are axes exceeding the movement limit" Display on top.
【0036】モード4を選択している場合には、上記の
メッセージに代えて動作限界を越えてしまう軸のみを色
を変えて表示する。When mode 4 is selected, instead of the above message, only axes that exceed the operation limit are displayed in different colors.
【0037】モード5を選択している場合には、動作制
限を無視してロボットを動作させて表示し、同時に「動
作限界を越える軸が存在するので動作できない」旨を画
面上に表示する。When the mode 5 is selected, the robot is operated and displayed while ignoring the operation restriction, and at the same time, "the operation cannot be performed because there is an axis exceeding the operation limit" is displayed on the screen.
【0038】モード6を選択している場合には、上記の
メッセージに代えて動作限界を越えてしまう軸のみを色
を変えて表示する。When mode 6 is selected, instead of the above message, only the axes that exceed the operation limit are displayed in different colors.
【0039】このように、必要に応じてモードを選択す
れば、目標位置に到達できない原因が容易に解析でき、
最適なロボットはどの種類のものであるのか、また、最
適な経路はどのようにすれば実現できるのかを容易に判
断することができるようになる(S15,S16)。In this way, if the mode is selected as necessary, the reason why the target position cannot be reached can be easily analyzed.
It becomes possible to easily determine what kind of the optimum robot is and how the optimum route can be realized (S15, S16).
【0040】また、ロボット逆キネマティクス計算部2
0によって逆キネマティクス解が算出できなかった場
合、つまり、どの様にしてもハンドを目標位置と姿勢と
に設定することができない場合には、図2に示すような
モード7またはモード8の2種類の設定を可能としてい
る。たとえば、モード7に設定してあると、画面表示部
24に表示されているロボットの姿勢はそのままとし
て、「どうやってもロボットは届かない」旨を画面上に
表示する。操作者は、このメッセージによって、ロボッ
トのハンドを目標とする位置と姿勢とに設定することが
不可能であることを知ることができる(S16,S1
7)。Further, the robot inverse kinematics calculation unit 2
When the inverse kinematics solution cannot be calculated by 0, that is, when the hand cannot be set to the target position and posture in any way, the mode 7 or the mode 8 as shown in FIG. It is possible to set the type. For example, when the mode 7 is set, the posture of the robot displayed on the screen display unit 24 is left as it is, and “the robot does not reach it by any means” is displayed on the screen. From this message, the operator can know that it is impossible to set the robot hand to the target position and posture (S16, S1).
7).
【0041】モード8の場合には、動作限界を越える関
節についてはその限界値までロボットを動作させて表示
し、同時に「どうやってもロボットは届かない」旨を画
面上に表示する(S16,S17)。In the case of the mode 8, for the joints exceeding the movement limit, the robot is operated up to the limit value and displayed, and at the same time, the message "the robot does not reach even if it tries" is displayed on the screen (S16, S17). .
【0042】この場合、動作限界を越える軸を動作限界
まで動かす必要があるわけであるが、動かすためのフロ
ーチャートは、図4に示してある。In this case, it is necessary to move the axis exceeding the motion limit to the motion limit. A flowchart for moving the axis is shown in FIG.
【0043】このフローチャート中、Tcur0は、当
処理を始める直前のハンドの位置と姿勢を示すものであ
り、Tgoal0は、目標位置姿勢設定部10によって
設定された目標となるハンドの位置と姿勢とを示すもの
であり、Tcurは、現在のハンドの位置と姿勢を示す
ものであり、Tgoalは、次期位置姿勢発生16によ
って算出された次期位置姿勢に相当する現在の目標とな
るハンドの位置と姿勢とを示すものである。In this flowchart, Tcur0 indicates the position and posture of the hand immediately before starting this processing, and Tgoal0 indicates the position and posture of the target hand set by the target position / posture setting unit 10. Tcur represents the current position and posture of the hand, and Tgoal represents the current target position and posture corresponding to the next position and posture calculated by the next position and posture generation 16. Is shown.
【0044】この処理が開始されると、まず初期設定と
して、Tgoal=Tgoal0およびTcur=Tc
ur0の設定が行われる。つまり、現在の目標となるハ
ンドの位置と姿勢を、設定された目標となるハンドの位
置と姿勢とし、現在のハンドの位置と姿勢を当処理を始
める直前のハンドの位置と姿勢とする(S20)。つぎ
に、現在のハンドの位置,姿勢と、目標となるハンドの
位置と姿勢との中間の位置,姿勢Tを求める。この中間
の位置,姿勢の演算は、位置ベクトルと姿勢を表すヨ
ー、ピッチ、ロール角の6次元ベクトルで表現し、2つ
の6次元ベクトルの中間ベクトルを中間値とし、次期位
置姿勢発生部16によって行われる(S21)。ロボッ
ト逆キネマティクス計算部20は、この次期位置姿勢に
関するデータに基づいて演算を行う。この結果、逆キネ
マティクス解が存在しなければ、この位置,姿勢にもハ
ンドを設定することができないのであるから、上記の計
算を今度は、この中間の位置,姿勢Tを目標となるハン
ドの位置と姿勢Tgoalに設定し直した上で行う。つ
まり、当処理を始める直前のハンドの位置,姿勢と中間
の位置,姿勢Tとの中間の位置,姿勢について逆キネマ
ティクス解を算出する。この処理は、逆キネマティクス
解が演算されるまで繰り返し行われる(S22,S2
3)。When this process is started, first, as initial setting, Tgoal = Tgoal0 and Tcur = Tc.
The setting of ur0 is performed. That is, the current target position and posture are set as the set target hand position and posture, and the current hand position and posture are set as the hand position and posture immediately before starting this process (S20). ). Next, an intermediate position and posture T between the current position and posture of the hand and the target hand position and posture are obtained. This intermediate position / orientation calculation is expressed by a 6-dimensional vector of yaw, pitch, and roll angle representing the position vector and attitude, and the intermediate vector of the two 6-dimensional vectors is taken as an intermediate value, and the next position / orientation generation unit 16 It is performed (S21). The robot inverse kinematics calculation unit 20 performs calculation based on this data regarding the next position and orientation. As a result, if the inverse kinematics solution does not exist, it is impossible to set the hand at this position and posture. Therefore, the above calculation is performed for this intermediate position and posture T of the target hand. It is performed after resetting the position and orientation Tgoal. In other words, the inverse kinematics solution is calculated for the position, posture and intermediate position of the hand immediately before starting this processing, and the intermediate position and posture for the posture T. This process is repeated until the inverse kinematics solution is calculated (S22, S2).
3).
【0045】S21のステップにおける判断の結果、逆
キネマティクス解が存在する場合には、中間の位置,姿
勢Tと直前に演算された中間の位置,姿勢Tcとの差が
あらかじめ定められた位置,姿勢の最小変化量ε以内で
あることを条件として、このTcの値をロボットの最終
位置,姿勢とする(S24)。中間の位置,姿勢Tと直
前に演算された中間の位置,姿勢Tcとの差が最小変化
量ε以内になるまでは、上記の計算を今度は、この中間
の位置,姿勢Tを現在のハンドの位置と姿勢Tcurに
設定し直した上で行う。つまり、中間の位置,姿勢Tと
目標となるハンドの位置と姿勢Tgoal0との中間の
位置,姿勢について逆キネマティクス解を算出する。こ
の処理は、中間の位置,姿勢Tと直前に演算された中間
の位置,姿勢Tcとの差が最小変化量ε以内になるまで
繰り返し行われる(S24,S25)。As a result of the judgment in the step S21, when the inverse kinematics solution exists, the difference between the intermediate position and the posture T and the intermediate position and the posture Tc calculated immediately before is determined by the predetermined position, The value of this Tc is set as the final position and orientation of the robot, provided that it is within the minimum change amount ε of orientation (S24). Until the difference between the intermediate position / posture T and the intermediate position / posture Tc calculated immediately before is within the minimum change amount ε, the above calculation is repeated until the intermediate position / posture T becomes the current hand. It is performed after resetting the position and posture Tcur of. That is, the inverse kinematics solution is calculated for the intermediate position and posture T and the intermediate position and posture between the target hand position and the posture Tgoal0. This process is repeated until the difference between the intermediate position / posture T and the intermediate position / posture Tc calculated immediately before becomes within the minimum change amount ε (S24, S25).
【0046】以上の処理によってハンドの最終位置が求
まるのであるから、この最終位置に基づく姿勢のロボッ
トを表示し、操作者にここまでしか動かせないという事
を知らしめる。したがって、操作者は、この状態を見て
最適なロボットの種類、また、最適な経路についての検
討の参考とする事ができるようになる。Since the final position of the hand is obtained by the above processing, the robot having the posture based on this final position is displayed to inform the operator that the robot can be moved only up to this point. Therefore, the operator can refer to this state and refer to the optimum robot type and the optimum route.
【0047】[0047]
【発明の効果】以上述べたように本発明によれば、各請
求項ごとに次のような効果を奏する。請求項1の構成に
おいては、算出された変位量が各間接の動作制限を越え
る場合、または変位量が算出できなかった場合には、指
示された業端の位置と姿勢とを実現できない旨を表示す
るので、操作者は何が原因で指示した姿勢が実現できな
いのかを容易に判断することができるようになる。As described above, according to the present invention, the following effects are obtained for each claim. According to the configuration of claim 1, when the calculated displacement amount exceeds each indirect motion limit, or when the displacement amount cannot be calculated, it is said that the instructed end position and posture cannot be realized. Since it is displayed, the operator can easily determine what causes the instructed posture cannot be realized.
【0048】請求項2の構成においては、算出された変
位量が各間接の動作制限を越える場合には、その動作限
界まで関節を動かして、その状態を表示すると共に、動
作限界を越える関節が存在する旨を表示するので、操作
者は何が原因で指示した姿勢が実現できないのかを容易
に判断することができ、また、どの関節が動作限界を越
えているのかをも容易に判断することができるようにな
る。According to the second aspect of the present invention, when the calculated displacement exceeds the indirect motion limit, the joint is moved to the motion limit to display the state, and the joint exceeding the motion limit is detected. By displaying the fact that it exists, the operator can easily determine what causes the instructed posture cannot be realized, and also easily determine which joint exceeds the motion limit. Will be able to.
【0049】請求項3の構成においては、算出された変
位量が各間接の動作制限を越える場合であっても、その
動作制限を無視して関節を動かして、その状態を表示す
ると共に、指示された作業端の位置と姿勢とを実現でき
ない旨を表示するので、操作者は何が原因で指示した姿
勢が実現できないのかを容易に判断することができ、ま
た、どの関節が動作限界を越えているのかをも容易に判
断することができるようになる。さらに、機械的な限界
との関係をも把握することができるようになる。According to the third aspect of the present invention, even when the calculated displacement amount exceeds each indirect motion limit, the motion limit is ignored, the joint is moved, the state is displayed, and the instruction is given. Since it is displayed that the position and posture of the working end cannot be realized, the operator can easily determine what causes the instructed posture to be unrealized, and which joint exceeds the motion limit. You will be able to easily judge whether or not. Further, it becomes possible to understand the relationship with the mechanical limit.
【0050】請求項4の構成においては、いずれかの関
節が動作限界を越えている場合には、表示のための作業
端の最終的な位置と姿勢とを最終位置姿勢発生部で算出
し、画面表示部において、算出された作業端の最終的な
位置と姿勢とを表示すると共に、前記ロボット作業端を
目標位置と目標姿勢とに設定することが困難である旨の
メッセージを表示するようにしたので、操作者は何が原
因で指示した姿勢が実現できないのかを容易に判断する
ことができることになる。In the structure of claim 4, when any joint exceeds the motion limit, the final position and orientation of the working end for display is calculated by the final position and orientation generating unit, The screen display unit displays the calculated final position and posture of the working end, and also displays a message indicating that it is difficult to set the robot working end to the target position and the target posture. Therefore, the operator can easily determine what causes the instructed posture to be unrealizable.
【0051】請求項5の構成においては、ロボット逆キ
ネマティクス計算部によって計算された関節の変位量が
動作制限を越えるものである場合に、作業端の最終的な
位置と姿勢並びに前記メッセージを前記画面表示部に表
示させる態様を設定する動作モード設定部を付加し、最
終位置姿勢発生部において、算出された作業端の最終的
な位置と姿勢、または、前記ロボット作業端を目標位置
と目標姿勢とに設定することが困難である旨のメッセー
ジの双方をあるいはいずれか一方を、当該動作モード設
定部によって設定されている態様にしたがって前記画面
表示部に表示させるようにしたので、操作者は何が原因
で指示した姿勢が実現できないのかを容易に判断するこ
とができ、また、どの関節が動作限界を越えているのか
をも容易に判断することができるようになる。According to the fifth aspect of the present invention, when the amount of displacement of the joint calculated by the robot inverse kinematics calculation unit exceeds the movement limit, the final position and posture of the working end and the message are transmitted. An operation mode setting unit for setting the mode to be displayed on the screen display unit is added, and the final position and posture of the working end calculated in the final position and posture generating unit or the robot working end is set to the target position and the target posture. Since either or both of the messages indicating that it is difficult to set to and are displayed on the screen display unit according to the mode set by the operation mode setting unit, the operator does not It is possible to easily determine whether or not the instructed posture cannot be realized due to, and it is also easy to determine which joint exceeds the movement limit. It becomes possible.
【図1】 本発明にかかるロボット動作のシミュレーシ
ョン装置の概略構成ブロック図である。FIG. 1 is a schematic configuration block diagram of a robot motion simulation apparatus according to the present invention.
【図2】 図1に示した動作モード設定部で設定可能な
動作モードの一例を示した図である。FIG. 2 is a diagram showing an example of an operation mode that can be set by an operation mode setting unit shown in FIG.
【図3】 本発明のロボット動作のシミュレーション方
法に関するフローチャートである。FIG. 3 is a flowchart of a method for simulating a robot operation according to the present invention.
【図4】 本発明のロボット動作のシミュレーション方
法に関するフローチャートである。FIG. 4 is a flowchart of a method for simulating a robot operation according to the present invention.
【図5】 従来のロボット動作のシミュレーションを示
すフローチャートである。FIG. 5 is a flowchart showing a simulation of a conventional robot operation.
10…目標位置姿勢設定部、 12…動作モード設定部、 14…最終位置姿勢発生部、 16…次期位置姿勢発生部 20…ロボット逆キネマティクス計算部、 22…軸動作限界判定部、 24…画面表示部。 10 ... Target position / orientation setting unit, 12 ... Operation mode setting unit, 14 ... Final position / orientation generation unit, 16 ... Next position / orientation generation unit 20 ... Robot inverse kinematics calculation unit, 22 ... Axis motion limit determination unit, 24 ... Screen Display section.
Claims (5)
討や最適な作業経路検討のためのロボット動作のシミュ
レーション方法であって、 ロボット作業端の位置と姿勢とを指示し、 当該指示に基づく位置と姿勢を実現するための各関節ご
との変位量を算出し、 当該算出された変位量が各間接の動作制限を越える場
合、または変位量が算出できなかった場合には、指示さ
れた作業端の位置と姿勢とを実現できない旨を表示する
ことを特徴とするロボット動作のシミュレーション方
法。1. A method of simulating a robot operation for studying application of a robot to an environment of an installation site and studying an optimal work route, which comprises instructing a position and a posture of a robot working end and determining a position based on the command. Calculate the displacement amount for each joint to achieve the posture, and if the calculated displacement amount exceeds the indirect motion limit, or if the displacement amount cannot be calculated, the specified work end A method for simulating a robot movement, which displays that the position and orientation cannot be realized.
討や最適な作業経路検討のためのロボット動作のシミュ
レーション方法であって、 ロボット作業端の位置と姿勢とを指示し、 当該指示に基づく位置と姿勢を実現するための各関節ご
との変位量を算出し、 当該算出された変位量が各間接の動作制限を越える場合
には、その動作限界まで関節を動かして、その状態を表
示すると共に、動作限界を越える関節が存在する旨を表
示することをことを特徴とするロボット動作のシミュレ
ーション方法。2. A method of simulating a robot operation for studying application of a robot to an environment of an installation site and studying an optimum work route, which comprises instructing a position and a posture of a robot working end and determining a position based on the instruction. The displacement amount for each joint to realize the posture is calculated, and when the calculated displacement amount exceeds the indirect motion limit, the joint is moved to the motion limit and the state is displayed. A method of simulating a robot motion, which is characterized by displaying that there are joints exceeding the motion limit.
討や最適な作業経路検討のためのロボット動作のシミュ
レーション方法であって、 ロボット作業端の位置と姿勢とを指示し、 当該指示に基づく位置と姿勢を実現するための各関節ご
との変位量を算出し、 当該算出された変位量が各間接の動作制限を越える場合
であっても、その動作制限を無視して関節を動かして、
その状態を表示すると共に、指示された作業端の位置と
姿勢とを実現できない旨を表示することを特徴とするロ
ボット動作のシミュレーション方法。3. A method of simulating a robot operation for studying application of a robot to an environment of an installation site and studying an optimal work route, which comprises instructing a position and a posture of a robot working end and determining a position based on the instruction. The displacement amount for each joint to realize the posture is calculated, and even if the calculated displacement amount exceeds the indirect motion limit, the motion limit is ignored and the joint is moved.
A method of simulating a robot operation, characterized in that the state is displayed and the fact that the designated position and orientation of the work end cannot be realized is displayed.
設定する目標位置姿勢設定部(10)と、 現在のロボット作業端の目標位置と目標姿勢とから次の
目標位置と目標姿勢を算出する次期位置姿勢発生部(1
4)と、 当該次期位置姿勢発生部(14)によって算出された次
の目標位置と目標姿勢を実現する関節の変位量を各関節
ごとに算出するロボット逆キネマティクス計算部(2
0)と、 当該ロボット逆キネマティクス計算部(20)によって
計算された関節の変位量が動作制限を越えるものである
か否かの判断を各関節ごとに行う軸動作限界判定部(2
2)と、 当該軸動作限界判定部(22)によっていずれかの関節
が動作限界を越えている場合には、表示のための前記作
業端の最終的な位置と姿勢とを算出する最終位置姿勢発
生部(14)と、 当該最終位置姿勢発生部(14)によって算出された作
業端の最終的な位置と姿勢とを表示すると共に、前記ロ
ボット作業端を目標位置と目標姿勢とに設定することが
困難である旨のメッセージを表示する画面表示部(2
4)とを有することを特徴とするロボット動作のシミュ
レーション装置。4. A next position and posture are calculated from a target position and posture setting unit (10) for setting a target position and a target posture of the robot working end, and a current target position and target posture of the robot working end. Next position / posture generator (1
4) and a robot inverse kinematics calculation unit (2) that calculates, for each joint, the displacement amount of the joint that realizes the next target position and target posture calculated by the next position / posture generation unit (14).
0) and the axis motion limit determination unit (2) that determines whether or not the displacement amount of the joint calculated by the robot inverse kinematics calculation unit (20) exceeds the motion limit for each joint.
2) and the final position / orientation for calculating the final position and attitude of the working end for display when any joint exceeds the operation limit by the axis operation limit determination unit (22). Displaying the final position and orientation of the work end calculated by the generation unit (14) and the final position and orientation generation unit (14), and setting the robot work end to the target position and target posture. Screen display section (2) that displays a message indicating that
4) A robot motion simulation apparatus comprising:
0)によって計算された関節の変位量が動作制限を越え
るものである場合に、作業端の最終的な位置と姿勢並び
に前記メッセージを前記画面表示部に表示させる態様を
設定する動作モード設定部(12)をさらに有し、 前記最終位置姿勢発生部(14)は、算出された作業端
の最終的な位置と姿勢、または、前記ロボット作業端を
目標位置と目標姿勢とに設定することが困難である旨の
メッセージの双方をあるいはいずれか一方を、当該動作
モード設定部によって設定されている態様にしたがって
前記画面表示部(24)に表示させることを特徴とする
請求項4記載のロボット動作のシミュレーション装置。5. The robot inverse kinematics calculator (2)
When the displacement amount of the joint calculated by (0) exceeds the operation limit, the operation mode setting unit (the operation mode setting unit that sets the final position and posture of the working end and the mode in which the message is displayed on the screen display unit ( 12), and it is difficult for the final position / posture generating unit (14) to set the calculated final position and posture of the working end or the robot working end to the target position and the target posture. 5. The robot operation according to claim 4, characterized in that both or either of the messages indicating that is displayed on the screen display unit (24) according to the mode set by the operation mode setting unit. Simulation device.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP13036395A JPH08328631A (en) | 1995-05-29 | 1995-05-29 | Method for simulating robot operation and device therefor |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP13036395A JPH08328631A (en) | 1995-05-29 | 1995-05-29 | Method for simulating robot operation and device therefor |
Publications (1)
Publication Number | Publication Date |
---|---|
JPH08328631A true JPH08328631A (en) | 1996-12-13 |
Family
ID=15032593
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP13036395A Pending JPH08328631A (en) | 1995-05-29 | 1995-05-29 | Method for simulating robot operation and device therefor |
Country Status (1)
Country | Link |
---|---|
JP (1) | JPH08328631A (en) |
-
1995
- 1995-05-29 JP JP13036395A patent/JPH08328631A/en active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP2005066797A (en) | Robot program position correcting apparatus | |
US6853881B2 (en) | Robot information processing system | |
JP3708083B2 (en) | Robot teaching device | |
US5488689A (en) | Robot operation training system | |
US11919164B2 (en) | Robot system and robot control method | |
JPH02262982A (en) | Setting method for tool center point | |
JP2009274148A (en) | Simulation device | |
JPH0215987A (en) | Arc vision sensor operating method | |
JPH10275007A (en) | Robot operation simulating method | |
JPH01209505A (en) | Teaching device for remote control robot | |
JP5272447B2 (en) | Numerical control machine operation simulator | |
JPH09244724A (en) | Method and device for generating operation program for robot | |
JPH08328631A (en) | Method for simulating robot operation and device therefor | |
JPH07200019A (en) | Robot controller | |
JPH08287291A (en) | Image display system | |
KR102403021B1 (en) | Robot teaching apparatus and method for teaching robot using the same | |
JPH10128684A (en) | Operation program composing method and composing device for robot | |
JP2001353676A (en) | Robot device | |
JP3323912B2 (en) | Method and system for controlling constrained trajectory work using predictive force | |
JPH06114766A (en) | Remote control device for manipulator | |
WO2022004774A1 (en) | Display system and robot system | |
TWI847257B (en) | Robot teaching system | |
JPH01111208A (en) | Robot teaching device | |
JP2002117079A (en) | Process design assisting device | |
JPH05301180A (en) | Remote control system of doublr arms |