JP2007000954A - Robot teaching device and method - Google Patents
Robot teaching device and method Download PDFInfo
- Publication number
- JP2007000954A JP2007000954A JP2005182124A JP2005182124A JP2007000954A JP 2007000954 A JP2007000954 A JP 2007000954A JP 2005182124 A JP2005182124 A JP 2005182124A JP 2005182124 A JP2005182124 A JP 2005182124A JP 2007000954 A JP2007000954 A JP 2007000954A
- Authority
- JP
- Japan
- Prior art keywords
- robot
- teaching
- traveling
- joint
- manipulator device
- 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
Images
Classifications
-
- Y02P80/114—
Landscapes
- Numerical Control (AREA)
- Manipulator (AREA)
Abstract
Description
本発明は、多関節型のマニピュレータ装置とその走行装置とを備えるロボットの教示装置及び方法に関する。 The present invention relates to a teaching apparatus and method for a robot including an articulated manipulator device and a traveling device thereof.
ティーチングプレイバック型の産業用ロボットは、ティーチングと呼ばれる動作パターンを設定する作業が必要となる。ティーチング作業の一般的な形態としては、オペレータが教示手段であるティーチペンダントにより、ロボットのマニピュレータ装置先端のエンドエフェクタ(ロボットアーム先端に取り付けられた溶接ガンなどのツールの総称)の位置を確認しながら、ティーチペンダントのボタン等を操作することによりロボットを動作させ、ロボットに所定の動作をさせるための位置や速度の情報をまとめた記録データとしてのステップを一つずつ記録してゆく。この記録された一連のステップが一つの作業プログラムを構成することになる。 The teaching playback type industrial robot requires an operation of setting an operation pattern called teaching. As a general form of teaching work, an operator confirms the position of an end effector (a general term for tools such as a welding gun attached to the tip of a robot arm) at the tip of a robot manipulator device using a teach pendant as a teaching means. Then, the robot is operated by operating the buttons of the teach pendant, etc., and the steps as recording data that summarizes the position and speed information for causing the robot to perform a predetermined operation are recorded one by one. This recorded series of steps constitutes one work program.
ところで、多関節型のマニピュレータ装置を備えるロボットは、マニピュレータ装置を構成するアームの長さに応じて動作領域が決まってしまう。このため、マニピュレータ装置を走行装置に搭載し、当該走行装置の駆動により目的位置までマニピュレータ装置を搬送することで動作領域の拡大を図っている。
そして、上述のような走行装置を有するロボットの教示装置にあっては、予め、走行装置の座標系の原点位置から教示点に基づく移動目標点までの距離を段階的な範囲に分けると共に各距離範囲ごとに走行装置の移動量をそれぞれ一定距離に定めていた(例えば、特許文献1参照)。
つまり、上記ロボット教示装置では、教示点が入力されると原点位置から目標点までの距離を算出し、算出した距離がいずれの距離範囲に属するかに応じて走行装置による走行距離を決定し、これにより、走行装置の走行距離の教示作業を不要として、教示作業負担の軽減を図っていた。
In the robot teaching apparatus having the traveling apparatus as described above, the distance from the origin position of the coordinate system of the traveling apparatus to the movement target point based on the teaching point is divided into stepped ranges and each distance is set in advance. The movement amount of the traveling device is set to a certain distance for each range (see, for example, Patent Document 1).
That is, in the robot teaching device, when the teaching point is input, the distance from the origin position to the target point is calculated, and the traveling distance by the traveling device is determined according to which distance range the calculated distance belongs to, As a result, the teaching work of the travel distance of the traveling device is not required, and the teaching work burden is reduced.
しかしながら、上述のように、目標点までの距離に応じて走行装置の移動距離を決定する手法では、マニピュレータ装置の姿勢まで考慮されないため、以下に示す問題が発生していた。
ここで、問題点を簡明にするために、二軸のマニピュレータ装置を走行装置に搭載したモデルを例に説明する。図9に示すように、目標点T1に対してマニピュレータ装置110の先端を位置決めする場合に、上記従来の教示装置では、走行装置120の座標系の原点から目標点までの距離によって段階的に走行装置120の移動量を決定するため、場合によっては、マニピュレータ装置110の連結された二つのアーム111,112が伸び切った姿勢(特異姿勢)となり、各関節113に過大な速度が発生する。また、図10に示すように、連続する複数の目標点T1〜T4の間を移動する際に、マニピュレータ装置110の連結アーム111,112は互いに屈曲と伸長を繰り返すことで伸び縮みを繰り返し、走行装置120にも不必要な加減速を生じてしまう。このような加減速を生じると、関節や走行装置の駆動源である駆動モータの消費エネルギーが過大になると共に、一連の作業のサイクルタイムの延長を招くという不都合があった。
However, as described above, the method for determining the moving distance of the traveling device according to the distance to the target point does not take into account the attitude of the manipulator device, and thus the following problems have occurred.
Here, in order to clarify the problem, a model in which a biaxial manipulator device is mounted on a traveling device will be described as an example. As shown in FIG. 9, when positioning the tip of the
本発明は、教示に基づく制御データがマニピュレータ装置に特異姿勢を生じないようにすることをその目的とする。 An object of the present invention is to prevent control data based on teaching from causing a specific posture in a manipulator device.
請求項1記載の発明は、複数のアームが複数の関節で連結されると共に各関節ごとに駆動源を備えるマニピュレータ装置と当該マニピュレータ装置を所定の軌跡に沿って移動させる走行装置とを備えるロボットの教示装置において、ロボットの教示点を入力するための教示点入力手段と、入力された教示点に基づく複数の移動目標位置ごとにマニピュレータ装置の先端部を位置決めする際に、マニピュレータ装置の所定の関節が屈曲状態を維持した状態での走行装置の走行方向及び走行距離を求める走行距離算出手段と、走行距離算出手段で求められた走行方向及び走行距離を反映させて教示点に基づくロボットの制御データを生成するデータ生成手段とを備える、という構成を採っている。 According to a first aspect of the present invention, there is provided a robot including a manipulator device in which a plurality of arms are connected by a plurality of joints and a drive source is provided for each joint, and a traveling device that moves the manipulator device along a predetermined locus. In the teaching device, teaching point input means for inputting the teaching point of the robot, and a predetermined joint of the manipulator device when positioning the tip of the manipulator device for each of a plurality of movement target positions based on the input teaching point The travel distance calculation means for determining the travel direction and travel distance of the travel device in a state where the bending state is maintained, and the robot control data based on the teaching point reflecting the travel direction and travel distance determined by the travel distance calculation means And a data generation means for generating the data.
請求項2記載の発明は、請求項1記載の発明と同様の構成を備えると共に、走行距離算出手段は、仮想的に所定の距離単位で走行距離を変化させると共に当該変化に伴う所定の関節角度を算出し、求まる関節角度の変化から適正な走行距離を特定する、という構成を採っている。
The invention according to claim 2 has the same configuration as that of the invention according to
請求項3記載の発明は、複数のアームが複数の関節で連結されると共に各関節ごとに駆動源を備えるマニピュレータ装置と当該マニピュレータ装置を所定の軌跡に沿って移動させる走行装置とを備えるロボットの教示装置において、ロボットの教示点を入力するための教示点入力手段と、入力された教示点に基づく複数の移動目標位置ごとにマニピュレータ装置の先端部を位置決めする際に、走行装置を固定した場合の可操作性とマニピュレータ装置の関節の一つを固定した場合の可操作性とを算出する可操作性算出手段と、算出された二つの可操作性又はこれらの大小の比較結果を表示する表示手段と、走行装置とマニピュレータ装置の関節の一つのいずれを固定すべきかを入力するための固定対象選択手段と、固定対象選択手段による選択に従い、走行装置又は関節を固定しつつ移動目標位置に移動を行うロボットの制御データを生成するデータ生成手段とを備える、という構成を採っている。 According to a third aspect of the present invention, there is provided a robot provided with a manipulator device in which a plurality of arms are connected by a plurality of joints and a drive source is provided for each joint, and a traveling device that moves the manipulator device along a predetermined locus. In the teaching device, when the traveling device is fixed when positioning the tip of the manipulator device for each of a plurality of movement target positions based on the teaching point input means for inputting the teaching point of the robot The operability calculating means for calculating the operability of the manipulator device and the operability when one of the joints of the manipulator device is fixed, and the display for displaying the calculated two operability or a comparison result of the magnitudes thereof. Means, a fixed object selecting means for inputting which one of the joints of the traveling device and the manipulator device should be fixed, and a selection by the fixed object selecting means. According, and a data generating means for generating control data for a robot which moves to the movement target position while fixing the driving device or joint, adopts a configuration that.
請求項4記載の発明は、複数のアームが複数の関節で連結されると共に各関節ごとに駆動源を備えるマニピュレータ装置と当該マニピュレータ装置を所定の軌跡に沿って移動させる走行装置とを備えるロボットの教示方法であって、ロボットの教示点に基づく複数の移動目標位置ごとにマニピュレータ装置の先端部を位置決めする際に、マニピュレータ装置の所定の関節が屈曲状態を維持した状態での走行装置の走行方向及び走行距離を求める走行距離算出工程と、走行方向選択手段で求められた走行方向及び走行方向を反映させて教示点に基づくロボットの制御データを生成するデータ生成工程とを備える、という構成を採っている。
上記方法は、少なくとも、所定の情報処理を実行可能な演算装置とデータの記憶が可能な記憶装置とにより実行される。
According to a fourth aspect of the present invention, there is provided a robot provided with a manipulator device in which a plurality of arms are connected by a plurality of joints and a drive source is provided for each joint, and a traveling device that moves the manipulator device along a predetermined locus. In the teaching method, the traveling direction of the traveling device in a state in which a predetermined joint of the manipulator device maintains a bent state when positioning the tip of the manipulator device for each of a plurality of movement target positions based on the teaching point of the robot And a travel distance calculation step for obtaining a travel distance, and a data generation step for generating the robot control data based on the teaching points by reflecting the travel direction and the travel direction obtained by the travel direction selection means. ing.
The above method is executed by at least an arithmetic device capable of executing predetermined information processing and a storage device capable of storing data.
請求項5記載の発明は、請求項4記載の発明と同様の構成を備えると共に、走行距離算出工程では、仮想的に所定の距離単位で走行距離を変化させると共に当該変化に伴う所定の関節角度を算出し、求まる関節角度の変化から適正な走行距離を特定する、という構成を採っている。 The invention according to claim 5 has the same configuration as that of the invention according to claim 4, and in the travel distance calculation step, the travel distance is virtually changed by a predetermined distance unit and a predetermined joint angle associated with the change is provided. Is calculated, and an appropriate travel distance is specified from the obtained change in the joint angle.
請求項6記載の発明は、複数のアームが複数の関節で連結されると共に各関節ごとに駆動源を備えるマニピュレータ装置と当該マニピュレータ装置を所定の軌跡に沿って移動させる走行装置とを備えるロボットの教示方法において、ロボットの教示点に基づく複数の移動目標位置ごとにマニピュレータ装置の先端部を位置決めする際に、走行装置を固定した場合の可操作性とマニピュレータ装置の関節の一つを固定した場合の可操作性とを算出する可操作性算出工程と、算出された二つの可操作性又はこれらの大小を表示する表示工程と、表示工程の表示内容に基づいて、走行装置とマニピュレータ装置の関節のいずれを固定すべきかの入力を受け付ける固定対象選択工程と、固定対象選択工程による選択に従い、走行装置又は関節を固定しつつ各移動目標位置に移動を行うロボットの制御データを生成するデータ生成工程とを備える、という構成を採っている。
上記方法は、少なくとも、所定の情報処理を実行可能な演算装置とデータの記憶が可能な記憶装置とにより実行される。
According to a sixth aspect of the present invention, there is provided a robot including a manipulator device in which a plurality of arms are connected by a plurality of joints and a drive source is provided for each joint, and a traveling device that moves the manipulator device along a predetermined locus. In the teaching method, when positioning the tip of the manipulator device for each of a plurality of movement target positions based on the teaching point of the robot, when the traveling device is fixed and one of the joints of the manipulator device is fixed The operability calculation step for calculating the operability of the vehicle, the display step for displaying the two operability calculated or their magnitudes, and the joint of the traveling device and the manipulator device based on the display contents of the display step The traveling object or the joint is fixed according to the fixing target selection process that accepts an input of which of these should be fixed and the selection by the fixing target selection process. One and a data generating step of generating a control data of the robot to move to the movement target position, adopts a configuration that.
The above method is executed by at least an arithmetic device capable of executing predetermined information processing and a storage device capable of storing data.
請求項1又は請求項4記載の発明では、移動目標位置に対してマニピュレータ装置の先端部を位置決めするように走行装置の走行方向及び走行距離、マニピュレータ装置の各関節角度が求められる。このとき、マニピュレータ装置の所定の一つの関節について屈曲状態を維持できる範囲で走行装置の走行方向の選択と走行距離の算出とが行われるため、当該関節で連結された二つのアームが伸び切った姿勢(特異姿勢)の発生を回避することができ、目標位置への位置決め或いはその目標位置から次の目標位置への移動に際し、各関節における過度の速度増加の発生を抑制することが可能となる。
また、これにより、複数の移動目標位置への連続する動作に際して、所定の関節について屈曲と伸長を繰り返す動作の発生が回避され、駆動源の消費エネルギーを抑制し、一連の作業のサイクルタイムの短縮化を図ると共に動作の遅れを抑制することが可能となる。
In the first or fourth aspect of the invention, the travel direction and travel distance of the travel device and each joint angle of the manipulator device are determined so that the tip of the manipulator device is positioned with respect to the movement target position. At this time, since the selection of the traveling direction of the traveling device and the calculation of the traveling distance are performed within a range in which the bending state of the predetermined one joint of the manipulator device can be maintained, the two arms connected by the joint are extended. Occurrence of a posture (unique posture) can be avoided, and an excessive increase in speed at each joint can be suppressed when positioning to a target position or moving from the target position to the next target position. .
This also prevents the occurrence of repeated bending and stretching operations for a given joint during successive operations to a plurality of movement target positions, suppresses the energy consumed by the drive source, and shortens the cycle time of a series of operations. As a result, it is possible to suppress delays in operation.
なお、走行装置の移動軌跡は、直線方向であっても良いし、曲線方向であっても良い。
また、上記屈曲状態を維持する関節としては、マニピュレータ装置の全長の中間位置近傍に位置する関節か、中間位置から基端部(走行装置側)に位置する関節のいずれかを選択することが好ましい。
また、屈曲状態を維持するとは、直角状態を維持することが好ましく、また、直角に対して予め設定された範囲で増減する範囲内の角度を維持するようにしても良い。
The travel locus of the traveling device may be a linear direction or a curved direction.
Further, as the joint that maintains the bent state, it is preferable to select either a joint located near the middle position of the entire length of the manipulator device or a joint located from the middle position to the base end (traveling device side). .
Further, maintaining the bent state is preferably to maintain the right angle state, and may maintain an angle within a range that increases or decreases within a preset range with respect to the right angle.
請求項2又は請求項5記載の発明では、まず、走行装置の走行方向を決める際には、その移動軌跡に沿って正方向と逆方向とに所定距離走行させて目標位置に先端部を位置決めする場合の所定の関節の角度を、仮想的に計算で求め、屈曲状態を維持できる方向を特定する。さらに、その方向について、所定距離ずつ走行させて目標位置に先端部を位置決めした場合の所定の関節の角度をそれぞれ仮想的に求め、関節が最も屈曲状態を維持できる走行距離を特定する。
このようにして、走行装置について所定の関節の屈曲状態を維持するための適正な走行方向と走行距離とを求めるため、処理の簡易化及び迅速化を図ることが可能となる。
なお、走行距離について変化させる単位距離は、微小距離とすることが望ましいが、処理に費やすことが可能な時間などの観点から適切に設定することが望ましい。
In the invention according to claim 2 or claim 5, when determining the traveling direction of the traveling device, first, the traveling portion is traveled a predetermined distance in the forward direction and the reverse direction along the movement locus to position the tip at the target position. The angle of the predetermined joint in the case of doing is calculated | required by calculation virtually, and the direction which can maintain a bending state is specified. Further, for each direction, a predetermined joint angle when the distal end portion is positioned at the target position by traveling by a predetermined distance is virtually obtained, and a travel distance at which the joint can be most bent is specified.
In this way, since the appropriate travel direction and travel distance for maintaining the predetermined joint flexion state for the travel device are obtained, the processing can be simplified and speeded up.
The unit distance to be changed for the travel distance is preferably a minute distance, but is preferably set appropriately from the viewpoint of the time that can be spent for processing.
請求項3又は請求項6記載の発明は、走行装置を固定した状態とマニピュレータ装置の一つの関節を固定した状態とで、それぞれ移動目標位置に対してマニピュレータ装置の先端部を位置決めする場合の可操作性を求め、これを表示する。オペレータはこれを見て、走行装置を固定するか、一つの関節を固定するかを判断し、いずれかを選択して固定対象選択手段から入力する。
これにより、一軸分の演算を低減しつつも、各移動目標位置ごとに、可操作性の高い状態を維持しつつマニピュレータ装置の先端部の移動動作を行わせることができ、例えば、関節を挟んで連結された二つのアームが伸び切った姿勢(特異姿勢)などは可操作性が低くなるので、その発生を回避することが可能である。従って、目標位置への位置決め或いはその目標位置から次の目標位置への移動に際し、各関節における過度の速度増加の発生を抑制することが可能となる。
また、これにより、複数の移動目標位置への連続する動作に際して、所定の関節について屈曲と伸長を繰り返す動作の発生が回避され、駆動源の消費エネルギーを抑制し、一連の作業のサイクルタイムの短縮化を図ると共に動作の遅れを抑制することが可能となる。
The invention according to claim 3 or claim 6 is possible when positioning the tip of the manipulator device with respect to the movement target position in a state where the traveling device is fixed and a state where one joint of the manipulator device is fixed. Ask for operability and display it. The operator sees this, determines whether to fix the traveling device or one joint, selects one and inputs it from the fixing target selecting means.
As a result, the movement of the tip of the manipulator device can be performed while maintaining a highly manipulable state for each movement target position while reducing the calculation for one axis. Since the maneuverability of the posture (singular posture) in which the two arms connected to each other are extended becomes low, the occurrence thereof can be avoided. Therefore, when positioning to the target position or moving from the target position to the next target position, it is possible to suppress an excessive increase in speed at each joint.
This also prevents the occurrence of repeated bending and stretching operations for a given joint during successive operations to a plurality of movement target positions, suppresses the energy consumed by the drive source, and shortens the cycle time of a series of operations. As a result, it is possible to suppress delays in operation.
なお、走行装置の移動軌跡は、直線方向であっても良いし、曲線方向であっても良い。
また、一軸固定を行う場合の固定される関節としては、マニピュレータ装置の全長の中間位置近傍に位置する関節か、中間位置から基端部(走行装置側)に位置する関節のいずれかを選択することが好ましい。
The travel locus of the traveling device may be a linear direction or a curved direction.
In addition, as a joint to be fixed when performing uniaxial fixation, either a joint located near the middle position of the entire length of the manipulator device or a joint located at the proximal end (traveling device side) from the middle position is selected. It is preferable.
[第一の実施形態]
(第一実施形態の全体構成)
本発明の第一の実施の形態を図1乃至図4に基づいて説明する。図1は、第一の実施形態であるロボット教示システム50の概略構成図である。
上記ロボット教示システム50は、溶接ガン等のエンドエフェクタを先端部で保持すると共に当該先端部を任意の位置に移動させ或いは任意の向きに向ける動作を行うマニピュレータ装置10と当該マニピュレータ装置10を直進移動させる走行装置20からなるロボット1と、入力される複数の教示点に基づいてロボット1に所定の作業を行わせる制御データを生成するロボット教示装置30とを備えている。
[First embodiment]
(Overall configuration of the first embodiment)
A first embodiment of the present invention will be described with reference to FIGS. FIG. 1 is a schematic configuration diagram of a
The
(ロボット)
上述のロボット1のマニピュレータ装置10は、土台となるベース11と、関節13で連結された複数のアーム12と、各関節13ごとに設けられた駆動源としてのサーボモータ(図示略)と、各サーボモータの軸角度をそれぞれ検出するエンコーダ(図示略)とを備えている。そして、連結された各アーム12の先端部14にはロボット1の用途に応じたエンドエフェクタ15(例えば溶接ガン等)が装備される。
上記各関節13は、アーム12の一端部を揺動可能として他端部を軸支する揺動関節と、アーム自身をその長手方向を中心に回転可能に軸支する回転関節とのいずれかから構成される。つまり、本実施形態におけるマニピュレータ装置10はいわゆる多関節型ロボットに相当する。
(robot)
The above-described
Each of the
走行装置20は、マニピュレータ装置10のベース11を保持すると共にマニピュレータ装置10全体を一定の直進方向に沿って搬送し、当該直進方向における任意の位置にマニピュレータ装置10の位置決めを行うことを可能としている。
かかる走行装置20はマニピュレータ装置10の搬送駆動源をサーボモータ(図示略)とし、当該サーボモータの軸角度を検出するエンコーダ(図示略)を備えている。
The traveling
The traveling
(ロボット教示装置)
ロボット教示装置30は、当該ロボット教示装置30全体を制御するシステムプログラムとロボット1の教示を実行するための教示プログラムと各種の初期設定データが格納されたROM32と、ROM32に格納された各種のプログラムを実行するCPU31と、CPU31の処理により各種データをワークエリアに格納するRAM33と、CPU31の実行する教示プログラムに従って決定されるマニピュレータ装置10及び走行装置20の各サーボモータのトルク値に応じたサーボモータ駆動電流を通電するサーボ制御回路34と、各サーボモータに併設されたエンコーダ出力を受信するインターフェイス35と、前述の教示プログラムの処理により求められるロボット1の制御データが格納される記憶手段としてのバッファ36と、ロボット1の教示点、その他の各種の設定を入力するための例えばティーチペンダント等の教示点入力手段37と、各種の処理において所定の情報の表示を行うディスプレイである表示手段38と、上記各構成を信号の送受が可能に接続するバス39とを備えている。
なお、上述のバッファ36は、格納されたデータを書き替え可能に記憶保持可能な手段であれば良く、例えば、不揮発性の半導体メモリ或いはいわゆるハードディスク装置等で構成されている。
(Robot teaching device)
The
The
(ロボット教示装置の処理)
ロボット教示装置30において行われる主要な処理について図2乃至図4に基づいて説明する。図2は教示プログラムに基づく処理を示すフローチャートである。
ここで、ロボット教示装置30の処理の説明の明確化のために、二次元平面における補間点に対して、構成を簡略化したロボット1の制御データを生成する場合を例に説明することとする。
即ち、図3に示すように、上記ロボット1の簡略化モデルは、水平なX−Y平面において、走行装置20はY軸方向に沿ってマニピュレータ装置10を移動位置決めし、当該マニピュレータ装置10はその先端部14をX−Y平面の任意の位置に位置決めすることが可能である。
また、マニピュレータ装置10の簡易化モデルは、第一及び第二のアーム12a,12bと第一及び第二の関節13a,13bとを備え、第一の関節13aは第一のアーム12aをX−Y平面内で揺動可能に支持し、第二の関節13bは第一のアーム12aと第二のアーム12bとの間に設けられると共に第二のアーム12bをX−Y平面内で揺動可能に支持している。つまり、マニピュレータ装置10の簡易化モデルは二自由度であり、ロボット1は、マニピュレータ装置10の先端部14をX−Y平面の任意の位置に位置決め可能としている。
また、以下の説明において、図3(A)に示すように、第一及び第二のアーム12a,12bの双方をX軸方向の正の方向に向けて延ばした状態を基準姿勢とし、基準姿勢における第一及び第二の関節13a,13bの角度を0°とすると共に、反時計回りを正回転方向とし、第一の関節13aの回転角度をθ1とし、第二の関節13bの回転角度をθ2とする。また、走行装置20の走行距離をLとする。
(Processing of robot teaching device)
Main processes performed in the
Here, in order to clarify the description of the processing of the
That is, as shown in FIG. 3, in the simplified model of the
The simplified model of the
In the following description, as shown in FIG. 3A, a state in which both the first and
ロボット教示装置30は、目的の動作をロボット1に実行させるために、オペレータにより教示点入力手段37から目的の動作の軌跡を決定するための複数の教示点が順番に入力されると、入力教示点に基づく軌跡を通過する複数の補間点を求め、アーム先端部14に当該各補間点を通過させるための各関節13a,13bのサーボモータの駆動角度及び走行装置20の走行距離を算出する。このとき、ロボット1に対して、教示点の入力作業に伴って各補間点を通過する実動作を行う動作制御が行われ、当該実動作を目視しながら順次教示点を入力することが可能となっている。
また、ロボット教示装置30は、各補間点に対する各関節13a,13bのサーボモータの駆動角度及び走行装置20の走行距離を順次記憶する。つまり、ロボット教示装置30では、教示作業により各サーボモータの駆動角度を演算により求め、これを記録して、制御データを生成する。
そして、実際の作業時には、生成された制御データの再生を行い、当該データに従ってロボット1の各サーボモータの駆動を行うことで、ロボット1は教示された動作を再現する。
以下、簡略二軸モデル化されたロボット1における教示から制御データの生成までの処理を詳細に説明する。なお、以下の処理は、CPU31が教示プログラムの実行により行う処理である。
The
Further, the
During actual work, the generated control data is reproduced, and the servo motors of the
Hereinafter, processing from teaching to generation of control data in the
(教示点入力及び補間点の演算)
教示点入力手段37から、ロボットアームの先端部14(各関節13で接続された複数アーム12の最も先端となる位置)の移動軌跡の指標となる教示点の位置の入力が行われると(ステップS1)、CPU31は、ロボットアームの先端部14が入力された教示点に到達するまでに描くべき直線或いは曲線の軌跡と、その軌跡に沿って所定間隔で配置される複数の補間点(移動目的位置)の座標を周知の演算処理によって求める(ステップS2)。
(Teaching point input and interpolation point calculation)
When the teaching point input means 37 inputs the position of a teaching point that serves as an index of the movement trajectory of the
(走行距離算出手段としての処理:走行装置の移動方向の判定)
図4は補間点T1に対して移動動作を行う場合を平面視した動作説明図である。
補間点T1が決まると、CPU31は、走行装置20を微小距離ΔL前進移動させてアーム先端部14を補間点T1に位置決めするための第一及び第二の関節13a,13bの角度を算出すると共に(ステップS3)、距離ΔL後退移動させてアーム先端部14を補間点T1に位置決めするための第一及び第二の関節13a,13bの角度を算出する(ステップS4)。
(Processing as travel distance calculation means: determination of travel direction of travel device)
FIG. 4 is an operation explanatory diagram viewed from above when the moving operation is performed on the interpolation point T1.
When the interpolation point T1 is determined, the
また、CPU31は、補間点T1への位置決めを行うための第一及び第二の関節13a,13bの角度の解が複数求まる場合には、現在の角度からの変化量が最も小さいものを選択するものとする。
また、ΔLの大きさは任意に設定しても良いが、より小さく設定することが好ましい。但し、後述するステップS6,S7又はS8,S9の処理により、ΔLを小さくするほど演算に時間を要するのでCPU31の処理速度に応じて適正な値を選択することが望ましい。
また、ステップS3とS4の処理はどちらを先行させても良い。
Further, when a plurality of solutions for the angles of the first and
Moreover, although the magnitude of ΔL may be set arbitrarily, it is preferable to set it smaller. However, it is desirable to select an appropriate value according to the processing speed of the
Further, whichever of the processes of steps S3 and S4 may be preceded.
次いで、走行装置20を距離ΔL前進移動させたときの第二の関節13bの角度θ2+iと距離ΔL後退移動させたときの第二の関節13bの角度θ2-iとを比較して、走行装置20を前後いずれの方向に駆動すればマニピュレータ装置10の第二の関節13bを屈曲状態(関節角度が90°(又は270°)となる状態)に近くなるかを判定する(ステップS5)。
例えば、図3(A)と図3(B)に示すように、走行装置20を前進させる方が後退させる場合よりも90°(又は270°)に近くなる場合には、走行装置20の前進移動が選択される(ステップS5:YES)。
また、その逆に、走行装置20を後退させる方が前進させる場合よりも90°(又は270°)に近くなる場合には、走行装置20の後退移動が選択される(ステップS5:NO)。
Next, the angle θ2 + i of the second joint 13b when the
For example, as shown in FIGS. 3 (A) and 3 (B), when the traveling
On the other hand, when the direction in which the traveling
なお、上記判定において、ΔLの前進移動と後退移動のいずれを行ってもアーム先端部14が補間点T1に届かない場合には、前進と後退の内、先端部14が補間点T1により近接する方向が選択される。
また、ΔLの前進移動と後退移動のいずれかを行った場合にしかアーム先端部14が補間点T1に届かない場合には、先端部14を補間点T1に到達可能な方向が選択される。
In the above determination, if the
If the
(走行距離算出手段としての処理:走行装置の走行距離の特定)
ステップS5において、走行装置20を前進方向に駆動すべきか後退方向に駆動すべきかが判定され、走行装置20の前進移動が選択されると、走行装置20をさらにΔL前進移動させた場合の第一及び第二の関節13a,13bの関節角度が求められる(ステップS6)。
そして、前進距離にさらにΔLを加える前の第二の関節13bの角度θ2+iとΔLを加えた後の第二の関節13bの角度θ2+i+1とを比較して、いずれの場合の第二の関節13bの関節角度が90°(又は270°)に近くなるかを判定する(ステップS7)。
そして、その結果、前進距離にさらにΔL加えると第二の関節13bの関節角度がより90°に接近する場合には(ステップS7:NO)、ステップS6に戻り、さらに前進距離にΔLを加えて第二の関節13bの角度が90°に近くなるか否かの判定を繰り返す。
また、前進距離にさらにΔL加えると第二の関節13bの関節角度が90°から逸脱してゆく場合には、ΔLを加える前の移動距離を走行装置20の適正値と判定する。
かかるステップS6とステップS7の処理を繰り返すことで、走行装置20の前進移動距離をΔLずつ増やし、第二の関節13bが最も90°に最も近くなる移動距離を特定することができる。
(Processing as travel distance calculation means: identification of travel distance of travel device)
In step S5, it is determined whether the traveling
Then, the angle θ2 + i of the second joint 13b before adding ΔL to the advance distance is compared with the angle θ2 + i + 1 of the second joint 13b after adding ΔL. It is determined whether the joint angle of the second joint 13b is close to 90 ° (or 270 °) (step S7).
As a result, if ΔL is further added to the advance distance and the joint angle of the second joint 13b approaches 90 ° (step S7: NO), the process returns to step S6, and ΔL is further added to the advance distance. The determination whether or not the angle of the second joint 13b is close to 90 ° is repeated.
If the joint angle of the second joint 13b deviates from 90 ° when ΔL is further added to the advance distance, the travel distance before adding ΔL is determined as the appropriate value of the traveling
By repeating the processes of step S6 and step S7, the forward movement distance of the traveling
また、ステップS5において、後退移動が選択されると、走行装置20をさらにΔL後退移動させた場合の第一及び第二の関節13a,13bの関節角度が求められる(ステップS8)。
そして、後退距離にさらにΔLを加える場合の第二の関節13bの角度θ2-iとΔLを加えた後の第二の関節13bの角度θ2-i-1とを比較して、いずれの場合の第二の関節13bの関節角度が90°(又は270°)に近くなるかを判定する(ステップS9)。
そして、その結果、後退距離にさらにΔL加えると第二の関節13bの関節角度がより90°に接近する場合には(ステップS9:NO)、ステップS8に戻り、さらに後退距離にΔLを加えて第二の関節13bの角度が90°に近くなるか否かの判定を繰り返す。
また、後退距離にさらにΔL加えると第二の関節13bの関節角度が90°から逸脱してゆく場合には、ΔLを加える前の移動距離を走行装置20の適正値と判定する。
かかるステップS8とステップS9の処理を繰り返すことで、走行装置20の後退移動距離をΔLずつ増やし、第二の関節13bが最も90°に最も近くなる移動距離を特定することができる。
When the backward movement is selected in step S5, the joint angles of the first and
Then, the angle θ2 -i of the second joint 13b when adding ΔL to the retreat distance is compared with the angle θ2 -i-1 of the second joint 13b after adding ΔL. It is determined whether the joint angle of the second joint 13b is close to 90 ° (or 270 °) (step S9).
As a result, when ΔL is further added to the receding distance, if the joint angle of the second joint 13b approaches 90 ° (step S9: NO), the process returns to step S8, and ΔL is further added to the receding distance. The determination whether or not the angle of the second joint 13b is close to 90 ° is repeated.
If the joint angle of the second joint 13b deviates from 90 ° when ΔL is further added to the retreat distance, the travel distance before adding ΔL is determined as the appropriate value of the traveling
By repeating the processes of step S8 and step S9, the backward movement distance of the traveling
(ロボットの追従動作制御)
ステップS7又はS9の処理により走行装置20の適正な移動方向と移動距離が決まると、CPU31は、それに従って走行装置20を駆動する動作制御を行うと共に、ステップS6又はS8で求められた第一及び第二の関節13a,13bの角度によりマニピュレータ装置10を駆動する動作制御を行う(ステップS10)。
これにより、マニピュレータ装置10のアーム先端部14が補間点T1に位置決めされる。
(Robot tracking control)
When the appropriate moving direction and moving distance of the traveling
Thereby, the arm front-end | tip
(データ生成手段としての処理)
次いで、補間点T1に対する走行装置20の移動方向及び移動距離とマニピュレータ装置10の第一及び第二の関節13a,13bの各関節角度がロボット1の制御データとして、バッファ36内に記録される(ステップS11)。
(Processing as data generation means)
Next, the moving direction and moving distance of the traveling
そして、上記補間点T1が入力された教示点に対する最終の補間点か判断され、次の補間点が存在する場合には(ステップS12:NO)、ステップS3の処理に戻り、新たな補間点について、走行装置20の適正な移動方向と移動距離と、マニピュレータ装置10の第一及び第二の関節13a,13bの角度を算出する。
また、上記補間点T1が入力された教示点に対する最終の補間点である場合には(ステップS12:YES)、処理を終了する。
これにより、全ての教示点に対する全ての補間点の走行装置20の適正な移動方向と移動距離とマニピュレータ装置10の第一及び第二の関節13a,13bの角度とが一連の動作を実行するための制御データとしてバッファ36内に記録される。
Then, it is determined whether the interpolation point T1 is the final interpolation point for the input teaching point. If there is a next interpolation point (step S12: NO), the process returns to step S3, and a new interpolation point is obtained. The proper moving direction and moving distance of the traveling
If the interpolation point T1 is the final interpolation point for the input teaching point (step S12: YES), the process ends.
As a result, the proper movement direction and movement distance of the traveling
このようにして生成された制御データは、教示装置30がロボットの教示プログラムのほかに動作制御プログラムを保有する場合には、その動作制御プログラムの実行により、バッファ36内から読み出され、順番に各補間点についての走行装置20とマニピュレータ装置10の動作制御が実行される。つまり、ロボット1は、教示作業で入力された動作を忠実に再現することができる。
また、ロボット1の制御装置を別に備える場合には、バッファ36内に生成された制御データが記録メディアやLAN等の通信手段により読み出され、制御装置の動作制御プログラムに従って、教示作業で入力された動作をロボット1が再現するように動作制御される。
When the
When a separate control device for the
なお、上記処理において、ステップS3〜S7又はS3〜S9までの処理が走行距離算出工程に相当し、ステップS11の処理がデータ生成工程に相当する。 In the above processing, the processing from step S3 to S7 or S3 to S9 corresponds to the travel distance calculation step, and the processing in step S11 corresponds to the data generation step.
(ロボット教示システムの効果)
上記教示装置30では、移動目標位置となる各補間点に対してマニピュレータ装置10の先端部14を位置決めする際に、第二の関節13bについて約90°(又は270°)を維持するように走行装置20の走行方向を選択し、走行距離を特定するので、第二の関節13bに連結された第一及び第二の関節13a,13bの伸び切った姿勢(特異姿勢)の発生を回避することができ、補間点への位置決め或いはその補間点から次の補間点への移動に際し、各関節における過度の速度増加の発生を抑制することが可能となる。
また、これにより、複数の補間点を連続して移動する際に、第二の関節13bについて屈曲と伸長を繰り返す動作の発生が回避され、サーボモータの消費エネルギーを抑制し、一連の作業のサイクルタイムの短縮化を図ると共に動作の遅れを抑制することが可能となる。
さらに、走行装置20の動作方向を特定する場合には、当該走行装置20を正方向と逆方向とについて距離ΔL移動させたときの第二の関節13bの関節角度θ2+i,θ2-iを仮想的に計算で求め、それが90°(又は270°)に近くなる方向を選択する。
また、走行装置20の走行距離を特定する場合には、距離ΔLずつ走行させて第二の関節13bの関節角度θ2+i又はθ2-iが最も90°(又は270°)に近くなる距離(ΔLの整数倍)を求めることで特定する。
このようにして、走行装置20について適正な走行方向と走行距離とを求めるため、処理の簡易化及び迅速化を図ることが可能となる。
(Effect of robot teaching system)
In the
Accordingly, when the plurality of interpolation points are continuously moved, the second joint 13b is prevented from being repeatedly bent and extended, thereby suppressing the energy consumption of the servo motor and a series of work cycles. It is possible to shorten the time and suppress the delay of the operation.
Further, when the operating direction of the traveling
Further, when the travel distance of the
In this way, since an appropriate travel direction and travel distance are obtained for the
(その他)
なお、上記教示装置30に処理にあっては、二軸のマニピュレータ装置10を例示したが、図1に示すような、より多くの関節を有するマニピュレータ装置10に対して同様の教示処理を行っても良いことはいうまでもない。
また、その場合、上述した二軸のマニピュレータ装置10の例のように、互いに連結された二つのアーム12が同一平面内で一方に対して他方が揺動を行うように連結する関節(アーム同士が互いに屈曲可能に連結する関節)について互いに連結されたアーム12が90°(又は270°)の屈曲状態を維持するように走行装置20の走行方向及び走行距離を算出するように走行距離算出手段としての処理(ステップS3〜S9までの処理)を行うことが望ましい。
また、マニピュレータ装置10がそのような関節を複数有する場合には、それらの関節の中で、複数のアーム全体を直線状に延ばした状態において、その長手方向の中間位置に近接する関節又は中間位置から基端部位置の間に設けられた関節について、90°(又は270°)の屈曲状態を維持するように走行装置20の走行方向及び走行距離を算出するように走行距離算出手段としての処理を行うことが望ましい。
(Other)
In the processing of the
In this case, as in the example of the
Further, when the
また、走行装置20は、上述のように直進動作に限るものではない。例えば、図5に示す走行装置21のように、搭載したマニピュレータ装置10を円周方向に移動位置決めするものであっても良いし、回転ステージ式でマニピュレータ装置10を回転させるものであっても良い。
その場合、CPU31は、走行距離算出手段としての処理において、補間点T1に向かうマニピュレータ装置10における所定の関節が90°(又は270°)に近くなるように走行装置20の正逆の回転方向を求めると共にその回転角度を特定する。
Further, the traveling
In that case, in the processing as the travel distance calculation means, the
[第二の実施形態]
(第二実施形態の概略)
本発明の第二の実施の形態を図6乃至図8に基づいて説明する。この第二の実施形態であるロボット教示システムのハードウェア構成は第一の実施形態と同様であり、教示作業における処理が第一の実施形態と異なるので、主に当該教示処理について説明することとする。
[Second Embodiment]
(Outline of the second embodiment)
A second embodiment of the present invention will be described with reference to FIGS. The hardware configuration of the robot teaching system according to the second embodiment is the same as that of the first embodiment, and the processing in teaching work is different from that of the first embodiment. Therefore, the teaching processing will be mainly described. To do.
(ロボット教示装置の処理)
ロボット教示装置30において行われる主要な処理について図6乃至図8に基づいて説明する。図6は教示プログラムに基づく処理を示すフローチャートである。この第二の実施形態でも、マニピュレータ装置10を二軸の簡略モデル化すると共に、二次元平面における補間点に対して、構成を簡略化したロボット1の制御データを生成する場合を例に説明することとする。
また、簡略モデル化したロボット1の構成、ロボット1の基本姿勢、符号L、θ1、θ2については第一の実施形態の場合と同様である(図3参照)。
(Processing of robot teaching device)
Main processes performed in the
Further, the configuration of the
第二の実施形態におけるロボット教示装置30は、入力教示点に基づく軌跡を通過する複数の補間点を求め、アーム先端部14に当該各補間点を通過させるための各関節13のサーボモータ及び走行装置20のサーボモータの駆動角度を算出する。このとき、各補間点に対する位置決めの動作を、走行装置20を駆動しないで行う走行軸固定モードとマニピュレータ装置10の一つの関節(本実施形態では第二の関節13b)を駆動しないで行う一軸固定モードとを各補間点ごとに選択することが可能であり、オペレータによるモード選択が行われると、その選択に従ってロボット1に対して、各補間点を通過する実動作を行う動作制御が行われ、当該実動作を目視しながら順次教示点を入力することが可能となっている。
また、ロボット教示装置30は、各補間点について選択されたモードに従って各関節13a,13bのサーボモータの駆動角度又は走行装置20の走行距離を記憶して制御データを生成する。
かかる制御データに従って動作制御が行われることで、ロボット1に教示動作を再現させることができる。
以下、簡略二軸モデル化されたロボット1における教示から制御データの生成までの処理を詳細に説明する。なお、以下の処理は、CPU31が教示プログラムの実行により行う処理である。
The
In addition, the
By performing operation control according to such control data, the
Hereinafter, processing from teaching to generation of control data in the
(可操作性算出手段としての処理:ヤコビアンの算出)
図3(A)に示すロボット1の基本姿勢における第一の関節13aの位置をX−Y座標の原点とすると、マニピュレータ装置10の先端位置(X、Y)の座標は次式(1)で表すことができる。
但し、第一及び第二のアーム12a,12bの長さを計算の簡略化のために仮に1とし、第一の関節13aの回転角度をθ1、第二の関節13bの回転角度をθ2、走行装置の走行距離をLとする。
If the position of the first joint 13a in the basic posture of the
However, the lengths of the first and
CPU31は、上式(1)から次式(2)に従って走行軸固定モードのヤコビアンJ1を算出すると共に、次式(3)に従って一軸固定モードのヤコビアンJ2を算出する(ステップS21)。
さらに、CPU31は、走行軸固定モードのヤコビアンJ1から走行軸固定モードの可操作性M1を求める式を算出する。可操作性とは、マニピュレータ装置10の先端部14の動かし易さの指標となる値であり、走行軸固定モードの可操作性M1は次式(4)に示すようにヤコビアンJ1の行列式の絶対値から求めることができる。
また、同様に、CPU31は、一軸固定モードのヤコビアンJ2から一軸固定モードの可操作性M2を求める式を算出する。かかる可操作性M2は次式(5)に示すようにヤコビアンJ2の行列式の絶対値から求めることができる(ステップS22)。
Similarly, the
(教示点入力及び補間点の演算)
次いで、教示点入力手段37から、ロボットアームの先端部14の移動軌跡の指標となる教示点の位置の入力が行われると(ステップS23)、CPU31は、ロボットアームの先端部14が入力された教示点に到達するまでに描くべき直線或いは曲線の軌跡と、その軌跡に沿って所定間隔で配置される複数の補間点(移動目的位置)の座標を周知の演算処理によって求める(ステップS24)。
(Teaching point input and interpolation point calculation)
Next, when the teaching point position is input from the teaching point input means 37 as an indicator of the movement locus of the
(各関節角度又は走行距離の算出)
補間点T1が決まると、CPU31は、走行軸固定モードにおける補間点T1に位置決めするための第一及び第二の関節13a,13bの関節角度θ1,θ2を算出する(ステップS25)。また同様にして、CPU31は、一軸固定モードにおける補間点T1に位置決めするための走行距離L及び第一の関節13aの関節角度θ1を算出する(ステップS26)。これらは、前述した式(1)のL又はθ2に固定値(算出時点での姿勢におけるL又はθ2)を代入し、X、Yに補間点T1の座標値を代入することで算出される。
なお、ステップS25とS26とはいずれを先に実行しても良い。
(Calculation of each joint angle or mileage)
When the interpolation point T1 is determined, the
Note that either step S25 or S26 may be executed first.
(可操作性算出手段としての処理:可操作性の算出)
次いで、CPU31は、走行軸固定モードにおける補間点T1での可操作性と一軸固定モードにおける補間点T1での可操作性とを算出する(ステップS27)。
走行軸固定モードでの可操作性は前述の式(4)にステップS25で求めた第一及び第二の関節13a,13bの関節角度θ1、θ2と固定値とした走行距離Lの値を代入することで求められる(なお、ロボット1の構成により式(4)のパラメータがθ2しかないので算出されたθ2が代入される)。
一軸固定モードでの可操作性は前述の式(5)にステップS26で求めた第一の関節13aの関節角度θ1及び走行距離Lと固定値とした第二の関節13bの関節角度θ2の値を代入することで求められる(なお、ロボット1の構成により式(5)のパラメータがθ1とθ2しかないので算出されたθ1と固定値とされたθ2とが代入される)。
(Processing as operability calculation means: calculation of operability)
Next, the
For the operability in the travel axis fixed mode, the joint angle θ1, θ2 of the first and
The operability in the uniaxial fixed mode is the value of the joint angle θ1 of the first joint 13a obtained in step S26 and the joint angle θ2 of the second joint 13b determined as the travel distance L and a fixed value in the above equation (5). (Note that the calculated θ1 and θ2 set to a fixed value are substituted because the parameters of the equation (5) are only θ1 and θ2 depending on the configuration of the robot 1).
ここで、図7,8に示す二軸簡略モデル化されたロボット1の具体的な姿勢により各モードでの可操作性を求め、当該可操作性の値とロボット1の姿勢との関係を説明することとする。図7ではロボット1のマニピュレータ装置10の第一の関節13aの関節角度θ1が−45°、第二の関節13bの関節角度θ2が90°の姿勢にある場合を示し、図8ではロボット1のマニピュレータ装置10の第一の関節13aの関節角度θ1が60°、第二の関節13bの関節角度θ2が0°の姿勢にある場合を示す。
図7の例では、走行軸固定モードにおける可操作性M1=|sin90°|=1となり、一軸固定モードにおける可操作性M2=|sin−45°+sin45°|=0となる。つまり、走行軸固定モードでは可操作性が高く、一軸固定モードでは可操作性が低くなることが分かる。例えば、マニピュレータ装置10の先端部14を図7に示す矢印方向に移動する場合、走行軸固定モードでは好適に移動動作が可能であるが、一軸固定モードでは全く移動動作ができないことからも可操作性の高低差を裏付けている。
一方、図8の例では、走行軸固定モードにおける可操作性M1=|sin0°|=0となり、一軸固定モードにおける可操作性M2=|sin60°+sin60°|=√3となる。つまり、走行軸固定モードでは可操作性が低く、一軸固定モードでは可操作性が高くなることが分かる。例えば、マニピュレータ装置10の先端部14を図8に示す矢印方向に移動する場合、一軸固定モードでは好適に移動動作が可能であるが、走行軸固定モードでは全く移動動作ができないことからも可操作性の高低差を裏付けている。
Here, the operability in each mode is obtained from the specific posture of the
In the example of FIG. 7, the operability M1 = | sin90 ° | = 1 in the traveling axis fixed mode, and the operability M2 = | sin−45 ° + sin45 ° | = 0 in the uniaxial fixed mode. That is, it can be seen that the operability is high in the traveling axis fixed mode, and the operability is low in the uniaxial fixed mode. For example, when the
On the other hand, in the example of FIG. 8, the maneuverability M1 = | sin0 ° | = 0 in the traveling axis fixed mode, and the maneuverability M2 = | sin60 ° + sin60 ° | = √3 in the uniaxial fixed mode. That is, it is understood that the maneuverability is low in the traveling axis fixed mode and the maneuverability is high in the single axis fixed mode. For example, when the
(可操作性の比較結果の表示処理)
次いで、CPU31は、算出した走行軸固定モードにおける補間点T1での可操作性と一軸固定モードにおける補間点T1での可操作性の大小を比較し、いずれのモードでの可操作性が大きくなるかを表示手段38に表示させる動作制御を行う(ステップS28)。
なお、大小比較は行わず、各モードの可操作性の値をそれぞれ表示しても良い。
次いで、CPUは、補間点T1に対して走行軸固定モードと一軸固定モードのいずれにより移動位置決めを行うかについて、入力手段37からの選択入力を受け付ける(ステップS29)。つまり、入力手段37は、固定対象選択手段として機能する。
(Processing to display operability comparison results)
Next, the
Note that the operability value of each mode may be displayed without performing a size comparison.
Next, the CPU accepts a selection input from the
(ロボットの追従動作制御)
ステップS29の処理によりオペレータによるモード選択が行われると、CPU31は、選択されたモードに従って、走行装置20及びマニピュレータ装置10の動作制御を行う(ステップS30)。
即ち、走行軸固定モードが選択されていた場合には、走行装置20は駆動せずにマニピュレータ装置10の各関節13a,13bのみが回動し、一軸固定モードが選択されていた場合には、マニピュレータ装置10の第二の関節13bは駆動せずに第一の関節13aと走行装置20bのみが駆動し、マニピュレータ装置10のアーム先端部14が補間点T1に位置決めされる。
(Robot tracking control)
When the mode selection by the operator is performed by the process of step S29, the
That is, when the traveling axis fixing mode is selected, only the
(データ生成手段としての処理)
次いで、補間点T1に対する走行装置20の移動方向及び移動距離とマニピュレータ装置10の第一及び第二の関節13a,13bの各関節角度がロボット1の制御データとして、バッファ36内に記録される(ステップS31)。
(Processing as data generation means)
Next, the moving direction and moving distance of the traveling
そして、上記補間点T1が入力された教示点に対する最終の補間点か判断され、次の補間点が存在する場合には(ステップS32:NO)、ステップS25及びS26の処理に戻り、新たな補間点について、走行軸固定モードと一軸固定モードにおける走行装置20の適正な走行方向と走行距離やマニピュレータ装置10の第一及び第二の関節13a,13bの角度が算出される。
また、上記補間点T1が入力された教示点に対する最終の補間点である場合には(ステップS32:YES)、処理を終了する。
これにより、全ての教示点に対する全ての補間点の走行装置20の適正な移動方向と移動距離とマニピュレータ装置10の第一及び第二の関節13a,13bの角度とが一連の動作を実行するための制御データとしてバッファ36内に記録される。
Then, it is determined whether the interpolation point T1 is the final interpolation point for the input teaching point. If there is a next interpolation point (step S32: NO), the process returns to steps S25 and S26, and a new interpolation is performed. Regarding the points, the appropriate travel direction and travel distance of the
If the interpolation point T1 is the final interpolation point for the input teaching point (step S32: YES), the process is terminated.
As a result, the proper movement direction and movement distance of the traveling
このようにして生成された制御データも、第一の実施形態と同様に、教示装置30がロボットの教示プログラムのほかに動作制御プログラムを保有する場合には、当該制御データを用いてロボット1の制御を行い、教示作業で入力された動作を忠実にロボット1に再現させることができる。
また、ロボット1の制御装置を別に備える場合には、バッファ36内に制御データが記録メディアやLAN等の通信手段により読み出され、制御装置の動作制御プログラムに従って、ロボット1が制御される。
Similarly to the first embodiment, when the
When a separate control device for the
なお、上記処理において、ステップS21〜S27までの処理が可操作性算出工程に相当し、ステップS29の処理が固定対象算出工程に相当し、ステップS31の処理がデータ生成工程に相当する。 In the above processing, the processing from step S21 to S27 corresponds to the operability calculation step, the processing in step S29 corresponds to the fixed object calculation step, and the processing in step S31 corresponds to the data generation step.
(第二の実施形態の効果)
第二実施形態たる教示装置30では、走行軸固定モードと一軸固定モードとでそれぞれ補間点に位置決めする場合の可操作性M1,M2を求めていずれが大きいかを表示手段38で表示するため、オペレータはこれを見て、適切にモード選択を行うことが可能となる。さらに、上記教示作業により生成された制御データによりロボット1を動作させることにより、一軸分の演算を低減しつつも、各補間点ごとに、可操作性の高いモードでロボット1に移動動作を行わせることができ、可操作性が低くなるような第一及び第二のアーム12a,12bが伸び切った姿勢(特異姿勢)などを回避することができる。従って、目標位置への位置決め或いはその目標位置から次の目標位置への移動に際し、各関節13a,13bにおける過度の速度増加の発生を抑制すると共に、連続する補間点の移動動作に際して、大きく屈曲と伸長を繰り返すことがなく、サーボモータの消費エネルギーを抑え、サイクルタイムを短縮化し、動作の遅れを抑制することが可能となる。
(Effect of the second embodiment)
In the
(その他)
なお、かかる第二実施形態の場合も、上記教示装置30に処理にあっては、図1に示すような、より多くの関節を有するマニピュレータ装置10に対して同様の教示処理を行っても良いことはいうまでもない。その場合、一軸固定モードで固定すべき関節は、二つのアームを屈曲状態で連結すると共に、マニピュレータ装置10の全長の中間位置に近接する関節又は中間位置から基端部位置の間に設けられた関節について固定することが望ましい。
なお、多軸の場合には、X−Y−Zの座標系における先端位置座標を各関節の変換行列を用いて算出し、それに基づいて各モードでのヤコビアンJを算出すると共に、その行列式から可操作性Mを求めることができる。
また、冗長軸がある場合には、可操作性はM=√(det(JJT))から求めることができる。
また、走行装置20は、上述のように直進動作に限るものではなく、前述した図5の走行装置21のように、マニピュレータ装置10を曲線移動方は回転させるものであっても良い。
また、前述した教示処理において、ステップS21〜S23までの工程は、ステップS26、27の可操作性の算出までに行っても良いが、ステップS25の処理までに行うことが望ましい。
(Other)
In the case of the second embodiment as well, in the processing of the
In the case of multi-axis, the tip position coordinates in the XYZ coordinate system are calculated using the transformation matrix of each joint, and based on this, the Jacobian J in each mode is calculated, and its determinant From the above, the operability M can be obtained.
When there is a redundant axis, the operability can be obtained from M = √ (det (JJ T )).
Further, the traveling
Further, in the teaching process described above, the steps from S21 to S23 may be performed until the calculation of manipulability in steps S26 and S27, but it is desirable that the steps be performed before the process of step S25.
1 ロボット
10 マニピュレータ装置
12a 第一のアーム
12b 第二のアーム
13a 第一の関節
13b 第二の関節
20 走行装置
30 教示装置
31 CPU
32 ROM
34 バッファ(記憶手段)
37 入力手段(教示点入力手段、固定対象選択手段)
38 表示手段
50 ロボット教示システム
1
32 ROM
34 Buffer (storage means)
37 Input means (teaching point input means, fixed object selection means)
38 Display means 50 Robot teaching system
Claims (6)
前記ロボットの教示点を入力するための教示点入力手段と、
前記入力された教示点に基づく複数の移動目標位置ごとに前記マニピュレータ装置の先端部を位置決めする際に、前記マニピュレータ装置の所定の関節が屈曲状態を維持した状態での前記走行装置の走行方向及び走行距離を求める走行距離算出手段と、
前記走行距離算出手段で求められた走行方向及び走行距離を反映させて前記教示点に基づく前記ロボットの制御データを生成するデータ生成手段とを備えることを特徴とするロボット教示装置。 In a robot teaching apparatus comprising: a plurality of arms connected by a plurality of joints; and a manipulator device having a drive source for each joint and a traveling device for moving the manipulator device along a predetermined locus.
Teaching point input means for inputting the teaching point of the robot;
When positioning the distal end portion of the manipulator device for each of a plurality of movement target positions based on the input teaching points, the traveling direction of the traveling device in a state where a predetermined joint of the manipulator device is maintained in a bent state, and A travel distance calculating means for determining a travel distance;
A robot teaching apparatus, comprising: data generation means for generating control data of the robot based on the teaching points by reflecting the traveling direction and the traveling distance obtained by the traveling distance calculating means.
前記ロボットの教示点を入力するための教示点入力手段と、
前記入力された教示点に基づく複数の移動目標位置ごとに前記マニピュレータ装置の先端部を位置決めする際に、前記走行装置を固定した場合の可操作性と前記マニピュレータ装置の関節の一つを固定した場合の可操作性とを算出する可操作性算出手段と、
前記算出された二つの可操作性又はこれらの大小の比較結果を表示する表示手段と、
前記走行装置と前記マニピュレータ装置の関節の一つのいずれを固定すべきかを入力するための固定対象選択手段と、
前記固定対象選択手段による選択に従い、前記走行装置又は関節を固定しつつ移動目標位置に移動を行う前記ロボットの制御データを生成するデータ生成手段とを備えることを特徴とするロボット教示装置。 In a robot teaching apparatus comprising: a plurality of arms connected by a plurality of joints; and a manipulator device having a drive source for each joint and a traveling device for moving the manipulator device along a predetermined locus.
Teaching point input means for inputting the teaching point of the robot;
When positioning the tip of the manipulator device for each of a plurality of movement target positions based on the input teaching points, the operability when the traveling device is fixed and one of the joints of the manipulator device are fixed. Operability calculating means for calculating the operability of the case,
Display means for displaying the calculated two operability values or a comparison result of the magnitudes thereof;
A fixed object selecting means for inputting which one of the joints of the traveling device and the manipulator device should be fixed;
A robot teaching apparatus comprising: data generation means for generating control data of the robot that moves to a movement target position while fixing the traveling apparatus or joint according to the selection by the fixing target selection means.
前記ロボットの教示点に基づく複数の移動目標位置ごとに前記マニピュレータ装置の先端部を位置決めする際に、前記マニピュレータ装置の所定の関節が屈曲状態を維持した状態での前記走行装置の走行方向及び走行距離を求める走行距離算出工程と、
前記走行方向選択手段で求められた走行方向及び走行方向を反映させて前記教示点に基づく前記ロボットの制御データを生成するデータ生成工程とを備えることを特徴とするロボット教示方法。 In a robot teaching method comprising a plurality of arms connected by a plurality of joints and a manipulator device provided with a drive source for each joint and a traveling device for moving the manipulator device along a predetermined locus.
When the distal end portion of the manipulator device is positioned for each of a plurality of movement target positions based on the teaching points of the robot, the traveling direction and the traveling of the traveling device in a state where a predetermined joint of the manipulator device is maintained in a bent state. A mileage calculating step for obtaining a distance;
A robot teaching method, comprising: a data generation step of generating control data of the robot based on the teaching point by reflecting the traveling direction and the traveling direction obtained by the traveling direction selection means.
前記ロボットの教示点に基づく複数の移動目標位置ごとに前記マニピュレータ装置の先端部を位置決めする際に、前記走行装置を固定した場合の可操作性と前記マニピュレータ装置の関節の一つを固定した場合の可操作性とを算出する可操作性算出工程と、
前記算出された二つの可操作性又はこれらの大小を表示する表示工程と、
前記表示工程の表示内容に基づいて、前記走行装置と前記マニピュレータ装置の関節のいずれを固定すべきかの入力を受け付ける固定対象選択工程と、
前記固定対象選択工程による選択に従い、前記走行装置又は関節を固定しつつ前記各移動目標位置に移動を行う前記ロボットの制御データを生成するデータ生成工程とを備えることを特徴とするロボット教示方法。 In a robot teaching method comprising a plurality of arms connected by a plurality of joints and a manipulator device provided with a drive source for each joint and a traveling device for moving the manipulator device along a predetermined locus.
When positioning the tip of the manipulator device for each of a plurality of movement target positions based on the teaching points of the robot, when the traveling device is fixed and one of the joints of the manipulator device is fixed An operability calculation step of calculating the operability of
A display step for displaying the calculated two operability or the magnitude of these two;
Based on the display content of the display step, a fixation target selection step for receiving an input on which of the travel device and the joint of the manipulator device should be fixed,
A robot teaching method comprising: a data generation step of generating control data of the robot that moves to each of the movement target positions while fixing the traveling device or joint according to the selection in the fixing target selection step.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2005182124A JP2007000954A (en) | 2005-06-22 | 2005-06-22 | Robot teaching device and method |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2005182124A JP2007000954A (en) | 2005-06-22 | 2005-06-22 | Robot teaching device and method |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2007000954A true JP2007000954A (en) | 2007-01-11 |
Family
ID=37687007
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2005182124A Pending JP2007000954A (en) | 2005-06-22 | 2005-06-22 | Robot teaching device and method |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2007000954A (en) |
Cited By (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2009034741A (en) * | 2007-07-31 | 2009-02-19 | Nachi Fujikoshi Corp | Robot system control device |
JP2010221355A (en) * | 2009-03-24 | 2010-10-07 | Fanuc Ltd | Robot system equipped with articulated robot |
US8041447B2 (en) | 2007-10-04 | 2011-10-18 | Fanuc Ltd | Numerical controller having workpiece setting error compensation means |
CN102672717A (en) * | 2011-03-15 | 2012-09-19 | 株式会社安川电机 | Robot system |
JP2012226536A (en) * | 2011-04-19 | 2012-11-15 | Kobe Steel Ltd | Generating method of teaching data of robot system and welding method by robot system |
JP2015107657A (en) * | 2015-02-03 | 2015-06-11 | アピックヤマダ株式会社 | Resin molding apparatus |
JP2019529132A (en) * | 2016-09-09 | 2019-10-17 | デュール システムズ アーゲーDurr Systems AG | Coating robot optimization method and corresponding coating system |
JP6801802B1 (en) * | 2020-03-11 | 2020-12-16 | オムロン株式会社 | Controller system and its control method |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH10244481A (en) * | 1997-03-05 | 1998-09-14 | Sekisui Chem Co Ltd | Method and device for preparing robot operating program |
JPH11198071A (en) * | 1998-01-16 | 1999-07-27 | Sankyo Seiki Mfg Co Ltd | Redundant shaft locating method for redundant robot |
-
2005
- 2005-06-22 JP JP2005182124A patent/JP2007000954A/en active Pending
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH10244481A (en) * | 1997-03-05 | 1998-09-14 | Sekisui Chem Co Ltd | Method and device for preparing robot operating program |
JPH11198071A (en) * | 1998-01-16 | 1999-07-27 | Sankyo Seiki Mfg Co Ltd | Redundant shaft locating method for redundant robot |
Cited By (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2009034741A (en) * | 2007-07-31 | 2009-02-19 | Nachi Fujikoshi Corp | Robot system control device |
US8041447B2 (en) | 2007-10-04 | 2011-10-18 | Fanuc Ltd | Numerical controller having workpiece setting error compensation means |
JP2010221355A (en) * | 2009-03-24 | 2010-10-07 | Fanuc Ltd | Robot system equipped with articulated robot |
CN102672717A (en) * | 2011-03-15 | 2012-09-19 | 株式会社安川电机 | Robot system |
CN102672717B (en) * | 2011-03-15 | 2015-06-17 | 株式会社安川电机 | Robot system |
JP2012226536A (en) * | 2011-04-19 | 2012-11-15 | Kobe Steel Ltd | Generating method of teaching data of robot system and welding method by robot system |
JP2015107657A (en) * | 2015-02-03 | 2015-06-11 | アピックヤマダ株式会社 | Resin molding apparatus |
JP2019529132A (en) * | 2016-09-09 | 2019-10-17 | デュール システムズ アーゲーDurr Systems AG | Coating robot optimization method and corresponding coating system |
US11230008B2 (en) | 2016-09-09 | 2022-01-25 | Dürr Systems Ag | Optimisation method for a coating robot and corresponding coating system |
JP6801802B1 (en) * | 2020-03-11 | 2020-12-16 | オムロン株式会社 | Controller system and its control method |
JP2021144438A (en) * | 2020-03-11 | 2021-09-24 | オムロン株式会社 | Controller system and control method thereof |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108453702B (en) | Robot simulator, robot system, and simulation method | |
EP2835228B1 (en) | Robot apparatus and robot controlling method | |
JP2007000954A (en) | Robot teaching device and method | |
JP6501470B2 (en) | Track generation method, track generation apparatus, robot apparatus, program and recording medium | |
JP5426719B2 (en) | Robot system motion simulation device | |
JP4693643B2 (en) | Robot teaching support apparatus and program therefor | |
JP2006099474A (en) | Method for controlling robot locus | |
JP3207409B2 (en) | Robot tool attitude control method | |
JP2013132731A (en) | Robot control system, robot system and robot control method | |
JP2009134352A (en) | Robot motion path creating device, and robot motion path creating method | |
JP4667764B2 (en) | Route setting method | |
JP2019063912A (en) | Robot control data processing method, robot control data processing device and robot system | |
JP2006048372A (en) | Path-planning method | |
JP4842656B2 (en) | Welding robot controller | |
JP2020171989A (en) | Robot teaching system | |
KR101787865B1 (en) | Inverse kinematic solution for multi-joint link mechanism, and device for creating instructional data by using inverse kinematic solution | |
JP6057284B2 (en) | Articulated robot and semiconductor wafer transfer device | |
JP5359651B2 (en) | Shape measuring device | |
JP7199073B2 (en) | Teaching data creation system for vertical articulated robots | |
JPH08155647A (en) | Weaving controller of welding robot | |
JP5474739B2 (en) | Interference detection method and interference detection apparatus | |
JP2015058493A (en) | Control device, robot system, robot, robot operation information generation method, and program | |
JP5583549B2 (en) | Arc welding robot controller | |
JPH11191005A (en) | Robot control unit | |
JP2009050949A (en) | Method and apparatus for teaching track of robot arm |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20080509 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20091126 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20101207 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20110412 |