JP2007000954A - Robot teaching device and method - Google Patents

Robot teaching device and method Download PDF

Info

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
Application number
JP2005182124A
Other languages
Japanese (ja)
Inventor
Akira Maruyama
章 丸山
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Nachi Fujikoshi Corp
Daihen Corp
Original Assignee
Nachi Fujikoshi Corp
Daihen Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Nachi Fujikoshi Corp, Daihen Corp filed Critical Nachi Fujikoshi Corp
Priority to JP2005182124A priority Critical patent/JP2007000954A/en
Publication of JP2007000954A publication Critical patent/JP2007000954A/en
Pending legal-status Critical Current

Links

Images

Classifications

    • Y02P80/114

Landscapes

  • Numerical Control (AREA)
  • Manipulator (AREA)

Abstract

<P>PROBLEM TO BE SOLVED: To provide a robot teaching device which avoids occurrence of a peculiar position of both arms during teaching a robot how to work, and also to provide a robot teaching method. <P>SOLUTION: The robot 1 is formed of: a manipulator device 10 having the plurality of arms; joints; and drive sources, and a traveling device 20. The robot teaching device 30 is comprised of: a teaching point input means 37; a traveling distance calculating means for obtaining a traveling direction and a traveling distance of the traveling device with a second joint 13b being kept bent, when a front end 14 of the manipulator device is positioned at each of a plurality of movement target locations T1 based on input teaching points; and a data generating means for generating robot control data by reflecting the obtained traveling direction and the traveling distance. <P>COPYRIGHT: (C)2007,JPO&INPIT

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参照)。
つまり、上記ロボット教示装置では、教示点が入力されると原点位置から目標点までの距離を算出し、算出した距離がいずれの距離範囲に属するかに応じて走行装置による走行距離を決定し、これにより、走行装置の走行距離の教示作業を不要として、教示作業負担の軽減を図っていた。
特開平10−244481号公報
By the way, the operation region of a robot including an articulated manipulator device is determined according to the length of an arm constituting the manipulator device. For this reason, the manipulator device is mounted on the traveling device, and the operation region is expanded by conveying the manipulator device to a target position by driving the traveling device.
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.
Japanese Patent Laid-Open No. 10-244481

しかしながら、上述のように、目標点までの距離に応じて走行装置の移動距離を決定する手法では、マニピュレータ装置の姿勢まで考慮されないため、以下に示す問題が発生していた。
ここで、問題点を簡明にするために、二軸のマニピュレータ装置を走行装置に搭載したモデルを例に説明する。図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 manipulator device 110 with respect to the target point T1, the conventional teaching device travels stepwise depending on the distance from the origin of the coordinate system of the traveling device 120 to the target point. In order to determine the movement amount of the device 120, depending on the case, the two arms 111 and 112 connected to the manipulator device 110 are in a fully extended posture (singular posture), and an excessive speed is generated in each joint 113. Further, as shown in FIG. 10, when moving between a plurality of continuous target points T1 to T4, the connecting arms 111 and 112 of the manipulator device 110 repeatedly bend and stretch, thereby repeatedly extending and contracting. Unnecessary acceleration / deceleration also occurs in the device 120. When such acceleration / deceleration occurs, the energy consumed by the drive motor, which is the drive source for the joints and the traveling device, becomes excessive, and the cycle time of a series of operations is extended.

本発明は、教示に基づく制御データがマニピュレータ装置に特異姿勢を生じないようにすることをその目的とする。   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 claim 1, and the travel distance calculation means virtually changes the travel distance in a predetermined distance unit and a predetermined joint angle associated with the change. Is calculated, and an appropriate travel distance is specified from the obtained change in the joint angle.

請求項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 robot teaching system 50 according to the first embodiment.
The robot teaching system 50 includes a manipulator device 10 that holds an end effector such as a welding gun at a tip portion and moves the tip portion to an arbitrary position or directs the manipulator device 10 in a straight line. And a robot teaching device 30 that generates control data for causing the robot 1 to perform a predetermined operation based on a plurality of input teaching points.

(ロボット)
上述のロボット1のマニピュレータ装置10は、土台となるベース11と、関節13で連結された複数のアーム12と、各関節13ごとに設けられた駆動源としてのサーボモータ(図示略)と、各サーボモータの軸角度をそれぞれ検出するエンコーダ(図示略)とを備えている。そして、連結された各アーム12の先端部14にはロボット1の用途に応じたエンドエフェクタ15(例えば溶接ガン等)が装備される。
上記各関節13は、アーム12の一端部を揺動可能として他端部を軸支する揺動関節と、アーム自身をその長手方向を中心に回転可能に軸支する回転関節とのいずれかから構成される。つまり、本実施形態におけるマニピュレータ装置10はいわゆる多関節型ロボットに相当する。
(robot)
The above-described manipulator device 10 of the robot 1 includes a base 11 serving as a base, a plurality of arms 12 connected by joints 13, a servo motor (not shown) as a drive source provided for each joint 13, and each An encoder (not shown) for detecting the shaft angle of each servomotor is provided. And the end effector 15 (for example, welding gun etc.) according to the use of the robot 1 is equipped in the front-end | tip part 14 of each arm 12 connected.
Each of the joints 13 includes either a swing joint that pivots one end of the arm 12 and pivotally supports the other end, or a rotary joint that pivots the arm itself so that the arm 12 can rotate about its longitudinal direction. Composed. That is, the manipulator device 10 in this embodiment corresponds to a so-called articulated robot.

走行装置20は、マニピュレータ装置10のベース11を保持すると共にマニピュレータ装置10全体を一定の直進方向に沿って搬送し、当該直進方向における任意の位置にマニピュレータ装置10の位置決めを行うことを可能としている。
かかる走行装置20はマニピュレータ装置10の搬送駆動源をサーボモータ(図示略)とし、当該サーボモータの軸角度を検出するエンコーダ(図示略)を備えている。
The traveling device 20 holds the base 11 of the manipulator device 10, conveys the entire manipulator device 10 along a certain straight traveling direction, and can position the manipulator device 10 at an arbitrary position in the straight traveling direction. .
The traveling device 20 includes a servo motor (not shown) as the conveyance drive source of the manipulator device 10 and includes an encoder (not shown) that detects the shaft angle of the servo motor.

(ロボット教示装置)
ロボット教示装置30は、当該ロボット教示装置30全体を制御するシステムプログラムとロボット1の教示を実行するための教示プログラムと各種の初期設定データが格納されたROM32と、ROM32に格納された各種のプログラムを実行するCPU31と、CPU31の処理により各種データをワークエリアに格納するRAM33と、CPU31の実行する教示プログラムに従って決定されるマニピュレータ装置10及び走行装置20の各サーボモータのトルク値に応じたサーボモータ駆動電流を通電するサーボ制御回路34と、各サーボモータに併設されたエンコーダ出力を受信するインターフェイス35と、前述の教示プログラムの処理により求められるロボット1の制御データが格納される記憶手段としてのバッファ36と、ロボット1の教示点、その他の各種の設定を入力するための例えばティーチペンダント等の教示点入力手段37と、各種の処理において所定の情報の表示を行うディスプレイである表示手段38と、上記各構成を信号の送受が可能に接続するバス39とを備えている。
なお、上述のバッファ36は、格納されたデータを書き替え可能に記憶保持可能な手段であれば良く、例えば、不揮発性の半導体メモリ或いはいわゆるハードディスク装置等で構成されている。
(Robot teaching device)
The robot teaching device 30 includes a system program for controlling the robot teaching device 30 as a whole, a ROM 32 in which a teaching program for executing teaching of the robot 1 and various initial setting data are stored, and various programs stored in the ROM 32. Servo motors according to the torque values of the servo motors of the manipulator device 10 and the traveling device 20 determined according to the teaching program executed by the CPU 31. Servo control circuit 34 for energizing drive current, interface 35 for receiving encoder output provided in each servo motor, and buffer as storage means for storing control data of the robot 1 obtained by the processing of the above teaching program 36, The teaching point input means 37 such as a teach pendant for inputting the teaching point of the bot 1 and other various settings, the display means 38 which is a display for displaying predetermined information in various processes, and each of the above components And a bus 39 for connecting signals such that signals can be transmitted and received.
The buffer 36 may be any means that can store and hold the stored data so that it can be rewritten. For example, the buffer 36 includes a nonvolatile semiconductor memory or a so-called hard disk device.

(ロボット教示装置の処理)
ロボット教示装置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 robot teaching apparatus 30 will be described with reference to FIGS. FIG. 2 is a flowchart showing processing based on the teaching program.
Here, in order to clarify the description of the processing of the robot teaching device 30, an example will be described in which control data of the robot 1 having a simplified configuration is generated for the interpolation points on the two-dimensional plane. .
That is, as shown in FIG. 3, in the simplified model of the robot 1, the traveling device 20 moves and positions the manipulator device 10 along the Y-axis direction on the horizontal XY plane, and the manipulator device 10 The distal end portion 14 can be positioned at an arbitrary position on the XY plane.
The simplified model of the manipulator device 10 includes first and second arms 12a and 12b and first and second joints 13a and 13b. The first joint 13a connects the first arm 12a to the X-. The second joint 13b is provided between the first arm 12a and the second arm 12b and can swing the second arm 12b in the XY plane. I support it. That is, the simplified model of the manipulator device 10 has two degrees of freedom, and the robot 1 can position the distal end portion 14 of the manipulator device 10 at an arbitrary position on the XY plane.
In the following description, as shown in FIG. 3A, a state in which both the first and second arms 12a and 12b are extended in the positive direction of the X-axis direction is defined as a reference posture, The angle of the first and second joints 13a and 13b is 0 °, the counterclockwise direction is the positive rotation direction, the rotation angle of the first joint 13a is θ1, and the rotation angle of the second joint 13b is Let θ2. The travel distance of the travel device 20 is L.

ロボット教示装置30は、目的の動作をロボット1に実行させるために、オペレータにより教示点入力手段37から目的の動作の軌跡を決定するための複数の教示点が順番に入力されると、入力教示点に基づく軌跡を通過する複数の補間点を求め、アーム先端部14に当該各補間点を通過させるための各関節13a,13bのサーボモータの駆動角度及び走行装置20の走行距離を算出する。このとき、ロボット1に対して、教示点の入力作業に伴って各補間点を通過する実動作を行う動作制御が行われ、当該実動作を目視しながら順次教示点を入力することが可能となっている。
また、ロボット教示装置30は、各補間点に対する各関節13a,13bのサーボモータの駆動角度及び走行装置20の走行距離を順次記憶する。つまり、ロボット教示装置30では、教示作業により各サーボモータの駆動角度を演算により求め、これを記録して、制御データを生成する。
そして、実際の作業時には、生成された制御データの再生を行い、当該データに従ってロボット1の各サーボモータの駆動を行うことで、ロボット1は教示された動作を再現する。
以下、簡略二軸モデル化されたロボット1における教示から制御データの生成までの処理を詳細に説明する。なお、以下の処理は、CPU31が教示プログラムの実行により行う処理である。
The robot teaching device 30 receives an input teaching when a plurality of teaching points for determining a trajectory of a target motion are sequentially input from the teaching point input unit 37 by an operator in order to cause the robot 1 to execute the target motion. A plurality of interpolation points passing through the locus based on the points are obtained, and the driving angle of the servo motor of each joint 13a, 13b and the traveling distance of the traveling device 20 for allowing the arm tip portion 14 to pass each interpolation point are calculated. At this time, the robot 1 is controlled to perform actual operations that pass through each interpolation point in accordance with the teaching point input operation, and the teaching points can be sequentially input while visually checking the actual operations. It has become.
Further, the robot teaching device 30 sequentially stores the drive angle of the servo motor of each joint 13a, 13b and the travel distance of the travel device 20 with respect to each interpolation point. That is, in the robot teaching device 30, the driving angle of each servo motor is obtained by calculation through teaching work, and this is recorded to generate control data.
During actual work, the generated control data is reproduced, and the servo motors of the robot 1 are driven according to the data, whereby the robot 1 reproduces the taught operation.
Hereinafter, processing from teaching to generation of control data in the robot 1 that is modeled as a simple two-axis will be described in detail. The following processing is processing performed by the CPU 31 by executing the teaching program.

(教示点入力及び補間点の演算)
教示点入力手段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 distal end portion 14 of the robot arm (the position of the distal end of the plurality of arms 12 connected by each joint 13) (step). S1) The CPU 31 traces a straight line or a curve to be drawn before the tip 14 of the robot arm reaches the input teaching point and a plurality of interpolation points (moving purpose) arranged at predetermined intervals along the locus. The coordinates of (position) are obtained by a known calculation process (step S2).

(走行距離算出手段としての処理:走行装置の移動方向の判定)
図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 CPU 31 calculates the angles of the first and second joints 13a and 13b for moving the traveling device 20 forward by a minute distance ΔL to position the arm tip 14 at the interpolation point T1. (Step S3), the angle of the first and second joints 13a and 13b for positioning the arm tip 14 at the interpolation point T1 by moving backward by the distance ΔL is calculated (Step S4).

また、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 second joints 13a and 13b for positioning to the interpolation point T1 are obtained, the CPU 31 selects the one having the smallest change amount from the current angle. Shall.
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 CPU 31 because the calculation requires more time as ΔL is reduced by the processing of steps S6, S7 or S8, S9 described later.
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 travel device 20 is moved forward by the distance ΔL is compared with the angle θ2 −i of the second joint 13b when the travel device 20 is moved backward by the distance ΔL, and the travel is performed. It is determined whether the second joint 13b of the manipulator device 10 is close to a bent state (a state in which the joint angle is 90 ° (or 270 °)) if the device 20 is driven in either the front-rear direction (step S5).
For example, as shown in FIGS. 3 (A) and 3 (B), when the traveling device 20 moves forward closer to 90 ° (or 270 °) than when the traveling device 20 moves backward, the traveling device 20 moves forward. Movement is selected (step S5: YES).
On the other hand, when the direction in which the traveling device 20 is moved backward is closer to 90 ° (or 270 °) than the case in which the traveling device 20 is moved forward, the backward movement of the traveling device 20 is selected (step S5: NO).

なお、上記判定において、ΔLの前進移動と後退移動のいずれを行ってもアーム先端部14が補間点T1に届かない場合には、前進と後退の内、先端部14が補間点T1により近接する方向が選択される。
また、ΔLの前進移動と後退移動のいずれかを行った場合にしかアーム先端部14が補間点T1に届かない場合には、先端部14を補間点T1に到達可能な方向が選択される。
In the above determination, if the arm tip 14 does not reach the interpolation point T1 regardless of whether the forward movement or the backward movement of ΔL is performed, the tip 14 comes closer to the interpolation point T1 in the forward and backward movements. A direction is selected.
If the arm tip 14 reaches the interpolation point T1 only when either ΔL is moved forward or backward, a direction in which the tip 14 can reach the interpolation point T1 is selected.

(走行距離算出手段としての処理:走行装置の走行距離の特定)
ステップ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 device 20 should be driven in the forward direction or in the backward direction, and when the forward movement of the traveling device 20 is selected, the first when the traveling device 20 is further moved forward by ΔL. The joint angles of the second joints 13a and 13b are obtained (step S6).
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 device 20.
By repeating the processes of step S6 and step S7, the forward movement distance of the traveling device 20 is increased by ΔL, and the movement distance at which the second joint 13b is closest to 90 ° can be specified.

また、ステップ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 second joints 13a and 13b when the traveling device 20 is further moved backward by ΔL are obtained (step S8).
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 device 20.
By repeating the processes of step S8 and step S9, the backward movement distance of the traveling device 20 is increased by ΔL, and the movement distance at which the second joint 13b is closest to 90 ° can be specified.

(ロボットの追従動作制御)
ステップ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 device 20 are determined by the process of step S7 or S9, the CPU 31 performs operation control for driving the traveling device 20 according to the determined direction and the first and the first and second values obtained in step S6 or S8. Operation control for driving the manipulator device 10 is performed according to the angles of the second joints 13a and 13b (step S10).
Thereby, the arm front-end | tip part 14 of the manipulator apparatus 10 is positioned by the interpolation point T1.

(データ生成手段としての処理)
次いで、補間点T1に対する走行装置20の移動方向及び移動距離とマニピュレータ装置10の第一及び第二の関節13a,13bの各関節角度がロボット1の制御データとして、バッファ36内に記録される(ステップS11)。
(Processing as data generation means)
Next, the moving direction and moving distance of the traveling device 20 with respect to the interpolation point T1 and the joint angles of the first and second joints 13a and 13b of the manipulator device 10 are recorded in the buffer 36 as control data of the robot 1 ( Step S11).

そして、上記補間点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 device 20 and the angles of the first and second joints 13a and 13b of the manipulator device 10 are calculated.
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 device 20 at all interpolation points with respect to all teaching points and the angles of the first and second joints 13a and 13b of the manipulator device 10 perform a series of operations. Is recorded in the buffer 36 as control data.

このようにして生成された制御データは、教示装置30がロボットの教示プログラムのほかに動作制御プログラムを保有する場合には、その動作制御プログラムの実行により、バッファ36内から読み出され、順番に各補間点についての走行装置20とマニピュレータ装置10の動作制御が実行される。つまり、ロボット1は、教示作業で入力された動作を忠実に再現することができる。
また、ロボット1の制御装置を別に備える場合には、バッファ36内に生成された制御データが記録メディアやLAN等の通信手段により読み出され、制御装置の動作制御プログラムに従って、教示作業で入力された動作をロボット1が再現するように動作制御される。
When the teaching device 30 has an operation control program in addition to the robot teaching program, the control data generated in this way is read out from the buffer 36 by executing the operation control program, and sequentially. Operation control of the traveling device 20 and the manipulator device 10 for each interpolation point is executed. That is, the robot 1 can faithfully reproduce the operation input in the teaching work.
When a separate control device for the robot 1 is provided, the control data generated in the buffer 36 is read out by communication means such as a recording medium or a LAN, and is input by teaching work according to the operation control program of the control device. The movement is controlled so that the robot 1 reproduces the movement.

なお、上記処理において、ステップ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 teaching device 30, when the distal end portion 14 of the manipulator device 10 is positioned with respect to each interpolation point serving as the movement target position, the second joint 13 b travels so as to maintain about 90 ° (or 270 °). Since the travel direction of the device 20 is selected and the travel distance is specified, the occurrence of the extended postures (singular postures) of the first and second joints 13a and 13b connected to the second joint 13b is avoided. It is possible to suppress an excessive increase in speed at each joint during positioning to an interpolation point or movement from the interpolation point to the next interpolation point.
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 device 20 is specified, the joint angles θ2 + i and θ2 -i of the second joint 13b when the traveling device 20 is moved by the distance ΔL between the forward direction and the reverse direction are determined. Virtually obtained by calculation, the direction in which it is close to 90 ° (or 270 °) is selected.
Further, when the travel distance of the travel device 20 is specified, the travel is performed by the distance ΔL, and the joint angle θ2 + i or θ2 −i of the second joint 13 b is closest to 90 ° (or 270 °) ( It is specified by obtaining (integer multiple of ΔL).
In this way, since an appropriate travel direction and travel distance are obtained for the travel device 20, it is possible to simplify and speed up the processing.

(その他)
なお、上記教示装置30に処理にあっては、二軸のマニピュレータ装置10を例示したが、図1に示すような、より多くの関節を有するマニピュレータ装置10に対して同様の教示処理を行っても良いことはいうまでもない。
また、その場合、上述した二軸のマニピュレータ装置10の例のように、互いに連結された二つのアーム12が同一平面内で一方に対して他方が揺動を行うように連結する関節(アーム同士が互いに屈曲可能に連結する関節)について互いに連結されたアーム12が90°(又は270°)の屈曲状態を維持するように走行装置20の走行方向及び走行距離を算出するように走行距離算出手段としての処理(ステップS3〜S9までの処理)を行うことが望ましい。
また、マニピュレータ装置10がそのような関節を複数有する場合には、それらの関節の中で、複数のアーム全体を直線状に延ばした状態において、その長手方向の中間位置に近接する関節又は中間位置から基端部位置の間に設けられた関節について、90°(又は270°)の屈曲状態を維持するように走行装置20の走行方向及び走行距離を算出するように走行距離算出手段としての処理を行うことが望ましい。
(Other)
In the processing of the teaching device 30, the biaxial manipulator device 10 is illustrated, but the same teaching processing is performed on the manipulator device 10 having more joints as shown in FIG. It goes without saying that it is also good.
In this case, as in the example of the biaxial manipulator device 10 described above, the joints (the arms connected to each other) are connected so that the two arms 12 connected to each other swing in the same plane with respect to the other. Travel distance calculation means for calculating the travel direction and travel distance of the travel device 20 so that the arms 12 connected to each other can be bent at 90 ° (or 270 °). It is desirable to perform the process (the process from step S3 to S9).
Further, when the manipulator device 10 has a plurality of such joints, a joint or an intermediate position that is close to an intermediate position in the longitudinal direction in a state where all of the plurality of arms are linearly extended. As the travel distance calculation means, the travel direction and travel distance of the travel device 20 are calculated so as to maintain the 90 ° (or 270 °) bent state of the joint provided between the base end position and the base end position. It is desirable to do.

また、走行装置20は、上述のように直進動作に限るものではない。例えば、図5に示す走行装置21のように、搭載したマニピュレータ装置10を円周方向に移動位置決めするものであっても良いし、回転ステージ式でマニピュレータ装置10を回転させるものであっても良い。
その場合、CPU31は、走行距離算出手段としての処理において、補間点T1に向かうマニピュレータ装置10における所定の関節が90°(又は270°)に近くなるように走行装置20の正逆の回転方向を求めると共にその回転角度を特定する。
Further, the traveling device 20 is not limited to the straight traveling operation as described above. For example, like the traveling device 21 shown in FIG. 5, the mounted manipulator device 10 may be moved and positioned in the circumferential direction, or the manipulator device 10 may be rotated by a rotary stage type. .
In that case, in the processing as the travel distance calculation means, the CPU 31 changes the forward and reverse rotation directions of the travel device 20 so that the predetermined joint in the manipulator device 10 toward the interpolation point T1 is close to 90 ° (or 270 °). Obtain the rotation angle and specify the rotation angle.

[第二の実施形態]
(第二実施形態の概略)
本発明の第二の実施の形態を図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 robot teaching device 30 will be described with reference to FIGS. FIG. 6 is a flowchart showing processing based on the teaching program. Also in the second embodiment, a case where the manipulator device 10 is simplified as a biaxial model and the control data of the robot 1 with a simplified configuration is generated for the interpolation points on the two-dimensional plane will be described as an example. I will do it.
Further, the configuration of the robot 1 that has been simplified, the basic posture of the robot 1, and the symbols L, θ1, and θ2 are the same as those in the first embodiment (see FIG. 3).

第二の実施形態におけるロボット教示装置30は、入力教示点に基づく軌跡を通過する複数の補間点を求め、アーム先端部14に当該各補間点を通過させるための各関節13のサーボモータ及び走行装置20のサーボモータの駆動角度を算出する。このとき、各補間点に対する位置決めの動作を、走行装置20を駆動しないで行う走行軸固定モードとマニピュレータ装置10の一つの関節(本実施形態では第二の関節13b)を駆動しないで行う一軸固定モードとを各補間点ごとに選択することが可能であり、オペレータによるモード選択が行われると、その選択に従ってロボット1に対して、各補間点を通過する実動作を行う動作制御が行われ、当該実動作を目視しながら順次教示点を入力することが可能となっている。
また、ロボット教示装置30は、各補間点について選択されたモードに従って各関節13a,13bのサーボモータの駆動角度又は走行装置20の走行距離を記憶して制御データを生成する。
かかる制御データに従って動作制御が行われることで、ロボット1に教示動作を再現させることができる。
以下、簡略二軸モデル化されたロボット1における教示から制御データの生成までの処理を詳細に説明する。なお、以下の処理は、CPU31が教示プログラムの実行により行う処理である。
The robot teaching device 30 according to the second embodiment obtains a plurality of interpolation points that pass through the locus based on the input teaching points, and causes the arm tip portion 14 to pass the interpolation points and the servo motors and travels of the joints 13. The drive angle of the servo motor of the device 20 is calculated. At this time, the positioning operation for each interpolation point is performed in the traveling axis fixing mode in which the traveling device 20 is not driven and in the single axis fixing in which one joint (second joint 13b in the present embodiment) of the manipulator device 10 is not driven. The mode can be selected for each interpolation point, and when the mode is selected by the operator, the robot 1 is controlled to perform an actual operation that passes through each interpolation point according to the selection. It is possible to input teaching points sequentially while visually observing the actual operation.
In addition, the robot teaching device 30 stores the drive angle of the servo motor of each joint 13a, 13b or the travel distance of the travel device 20 according to the mode selected for each interpolation point, and generates control data.
By performing operation control according to such control data, the robot 1 can reproduce the teaching operation.
Hereinafter, processing from teaching to generation of control data in the robot 1 that is modeled as a simple two-axis will be described in detail. The following processing is processing performed by the CPU 31 by executing the teaching program.

(可操作性算出手段としての処理:ヤコビアンの算出)
図3(A)に示すロボット1の基本姿勢における第一の関節13aの位置をX−Y座標の原点とすると、マニピュレータ装置10の先端位置(X、Y)の座標は次式(1)で表すことができる。
但し、第一及び第二のアーム12a,12bの長さを計算の簡略化のために仮に1とし、第一の関節13aの回転角度をθ1、第二の関節13bの回転角度をθ2、走行装置の走行距離をLとする。

Figure 2007000954
(Processing as maneuverability calculation means: calculation of Jacobian)
If the position of the first joint 13a in the basic posture of the robot 1 shown in FIG. 3A is the origin of the XY coordinates, the coordinates of the tip position (X, Y) of the manipulator device 10 are expressed by the following equation (1). Can be represented.
However, the lengths of the first and second arms 12a and 12b are assumed to be 1 for simplification of calculation, the rotation angle of the first joint 13a is θ1, the rotation angle of the second joint 13b is θ2, and the traveling Let L be the travel distance of the device.
Figure 2007000954

CPU31は、上式(1)から次式(2)に従って走行軸固定モードのヤコビアンJ1を算出すると共に、次式(3)に従って一軸固定モードのヤコビアンJ2を算出する(ステップS21)。

Figure 2007000954
Figure 2007000954
The CPU 31 calculates the traveling axis fixed mode Jacobian J1 from the above equation (1) according to the following equation (2), and calculates the uniaxial fixed mode Jacobian J2 according to the following equation (3) (step S21).
Figure 2007000954
Figure 2007000954

さらに、CPU31は、走行軸固定モードのヤコビアンJ1から走行軸固定モードの可操作性M1を求める式を算出する。可操作性とは、マニピュレータ装置10の先端部14の動かし易さの指標となる値であり、走行軸固定モードの可操作性M1は次式(4)に示すようにヤコビアンJ1の行列式の絶対値から求めることができる。
また、同様に、CPU31は、一軸固定モードのヤコビアンJ2から一軸固定モードの可操作性M2を求める式を算出する。かかる可操作性M2は次式(5)に示すようにヤコビアンJ2の行列式の絶対値から求めることができる(ステップS22)。

Figure 2007000954
Further, the CPU 31 calculates an expression for obtaining the operability M1 in the traveling axis fixed mode from the Jacobian J1 in the traveling axis fixed mode. The manipulability is a value that is an index of the ease of movement of the distal end portion 14 of the manipulator device 10, and the maneuverability M1 in the traveling axis fixed mode is a determinant of Jacobian J1 as shown in the following equation (4). It can be obtained from the absolute value.
Similarly, the CPU 31 calculates an equation for obtaining the operability M2 in the uniaxial fixed mode from the Jacobian J2 in the uniaxial fixed mode. Such manipulability M2 can be obtained from the absolute value of the determinant of Jacobian J2 as shown in the following equation (5) (step S22).
Figure 2007000954

(教示点入力及び補間点の演算)
次いで、教示点入力手段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 tip 14 of the robot arm (step S23), the CPU 31 inputs the tip 14 of the robot arm. The trajectory of a straight line or a curve to be drawn before reaching the teaching point and the coordinates of a plurality of interpolation points (movement target positions) arranged at predetermined intervals along the trajectory are obtained by known arithmetic processing (step S24).

(各関節角度又は走行距離の算出)
補間点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 CPU 31 calculates joint angles θ1 and θ2 of the first and second joints 13a and 13b for positioning to the interpolation point T1 in the traveling axis fixed mode (step S25). Similarly, the CPU 31 calculates the travel distance L for positioning at the interpolation point T1 in the uniaxial fixed mode and the joint angle θ1 of the first joint 13a (step S26). These are calculated by substituting a fixed value (L or θ2 in the posture at the time of calculation) into L or θ2 of the above-described formula (1) and substituting the coordinate value of the interpolation point T1 into X and Y.
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 CPU 31 calculates the operability at the interpolation point T1 in the traveling axis fixed mode and the operability at the interpolation point T1 in the uniaxial fixed mode (step S27).
For the operability in the travel axis fixed mode, the joint angle θ1, θ2 of the first and second joints 13a, 13b obtained in step S25 and the value of the travel distance L as a fixed value are substituted into the above-described equation (4). (The calculated θ2 is substituted because the parameter of the equation (4) is only θ2 depending on the configuration of the robot 1).
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 robot 1 that is modeled as a simple biaxial model shown in FIGS. 7 and 8, and the relationship between the operability value and the posture of the robot 1 will be described. I decided to. FIG. 7 shows a case where the joint angle θ1 of the first joint 13a of the manipulator device 10 of the robot 1 is −45 ° and the joint angle θ2 of the second joint 13b is 90 °, and FIG. The case where the joint angle θ1 of the first joint 13a of the manipulator device 10 is 60 ° and the joint angle θ2 of the second joint 13b is 0 ° is shown.
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 distal end portion 14 of the manipulator device 10 is moved in the direction of the arrow shown in FIG. 7, the moving operation can be suitably performed in the traveling axis fixed mode, but the movable operation is not possible in the single axis fixing mode. This confirms the difference in height.
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 distal end portion 14 of the manipulator device 10 is moved in the direction of the arrow shown in FIG. 8, the moving operation can be suitably performed in the uniaxial fixed mode, but the movable operation is not possible in the traveling axis fixed mode. This confirms the difference in height.

(可操作性の比較結果の表示処理)
次いで、CPU31は、算出した走行軸固定モードにおける補間点T1での可操作性と一軸固定モードにおける補間点T1での可操作性の大小を比較し、いずれのモードでの可操作性が大きくなるかを表示手段38に表示させる動作制御を行う(ステップS28)。
なお、大小比較は行わず、各モードの可操作性の値をそれぞれ表示しても良い。
次いで、CPUは、補間点T1に対して走行軸固定モードと一軸固定モードのいずれにより移動位置決めを行うかについて、入力手段37からの選択入力を受け付ける(ステップS29)。つまり、入力手段37は、固定対象選択手段として機能する。
(Processing to display operability comparison results)
Next, the CPU 31 compares the operability at the interpolation point T1 in the calculated travel axis fixed mode with the operability at the interpolation point T1 in the single axis fixed mode, and the operability in any mode increases. Operation control for displaying the above on the display means 38 is performed (step S28).
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 input unit 37 as to whether the movement positioning is performed with respect to the interpolation point T1 in either the travel axis fixed mode or the single axis fixed mode (step S29). That is, the input unit 37 functions as a fixed target selection unit.

(ロボットの追従動作制御)
ステップ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 CPU 31 controls the operation of the traveling device 20 and the manipulator device 10 according to the selected mode (step S30).
That is, when the traveling axis fixing mode is selected, only the joints 13a and 13b of the manipulator device 10 rotate without driving the traveling apparatus 20, and when the uniaxial fixing mode is selected, Only the first joint 13a and the traveling device 20b are driven without driving the second joint 13b of the manipulator device 10, and the arm tip 14 of the manipulator device 10 is positioned at the interpolation point T1.

(データ生成手段としての処理)
次いで、補間点T1に対する走行装置20の移動方向及び移動距離とマニピュレータ装置10の第一及び第二の関節13a,13bの各関節角度がロボット1の制御データとして、バッファ36内に記録される(ステップS31)。
(Processing as data generation means)
Next, the moving direction and moving distance of the traveling device 20 with respect to the interpolation point T1 and the joint angles of the first and second joints 13a and 13b of the manipulator device 10 are recorded in the buffer 36 as control data of the robot 1 ( Step S31).

そして、上記補間点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 travel device 20 in the travel axis fixed mode and the single shaft fixed mode, and the angles of the first and second joints 13a and 13b of the manipulator device 10 are calculated.
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 device 20 at all interpolation points with respect to all teaching points and the angles of the first and second joints 13a and 13b of the manipulator device 10 perform a series of operations. Is recorded in the buffer 36 as control data.

このようにして生成された制御データも、第一の実施形態と同様に、教示装置30がロボットの教示プログラムのほかに動作制御プログラムを保有する場合には、当該制御データを用いてロボット1の制御を行い、教示作業で入力された動作を忠実にロボット1に再現させることができる。
また、ロボット1の制御装置を別に備える場合には、バッファ36内に制御データが記録メディアやLAN等の通信手段により読み出され、制御装置の動作制御プログラムに従って、ロボット1が制御される。
Similarly to the first embodiment, when the teaching device 30 has an operation control program in addition to the robot teaching program, the control data generated in this manner is also used for the robot 1 using the control data. It is possible to control the robot 1 to faithfully reproduce the operation input in the teaching work.
When a separate control device for the robot 1 is provided, control data is read into the buffer 36 by a communication means such as a recording medium or a LAN, and the robot 1 is controlled according to an operation control program of the control device.

なお、上記処理において、ステップ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 teaching device 30 according to the second embodiment, since the operability M1 and M2 for positioning at the interpolation point in the traveling axis fixed mode and the single axis fixed mode are obtained and which is larger is displayed on the display unit 38, The operator sees this and can appropriately select the mode. Further, by operating the robot 1 with the control data generated by the teaching operation, the robot 1 is moved in a highly manipulable mode for each interpolation point while reducing the calculation for one axis. It is possible to avoid such a posture (unique posture) that the first and second arms 12a and 12b are extended so that the operability becomes low. Therefore, when positioning to the target position or moving from the target position to the next target position, an excessive increase in speed at each joint 13a, 13b is suppressed, and at the time of continuous movement of the interpolation points, bending is greatly caused. Without repeating the expansion, the energy consumption of the servo motor can be suppressed, the cycle time can be shortened, and the operation delay can be suppressed.

(その他)
なお、かかる第二実施形態の場合も、上記教示装置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 teaching device 30, the same teaching processing may be performed on the manipulator device 10 having more joints as shown in FIG. Needless to say. In that case, the joint to be fixed in the uniaxial fixing mode connects the two arms in a bent state, and is provided between the joint close to the intermediate position of the entire length of the manipulator device 10 or between the intermediate position and the proximal end position. It is desirable to fix the joint.
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 device 20 is not limited to the straight traveling operation as described above, and may be a device that rotates the manipulator device 10 in a curved movement manner like the traveling device 21 of FIG. 5 described above.
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.

第一の実施形態であるロボット教示システムの概略構成図である。It is a schematic block diagram of the robot teaching system which is 1st embodiment. 第一の実施形態における教示プログラムに基づく処理を示すフローチャートである。It is a flowchart which shows the process based on the teaching program in 1st embodiment. 図3(A)はロボットのマニピュレータ装置を二軸化した簡略化モデルの基本姿勢を示す説明図、図3(B)は簡略化モデルの各種のパラメータを示す説明図である。FIG. 3A is an explanatory diagram showing a basic posture of a simplified model in which the robot manipulator device is biaxial, and FIG. 3B is an explanatory diagram showing various parameters of the simplified model. 図4(A)は簡略化モデルのロボットの前進移動したときの補間点に対する位置決め動作を示す動作説明図、図4(B)は簡略化モデルのロボットの後退移動したときの補間点に対する位置決め動作を示す動作説明図である。FIG. 4A is an operation explanatory view showing the positioning operation for the interpolation point when the simplified model robot moves forward, and FIG. 4B is the positioning operation for the interpolation point when the simplified model robot moves backward. It is operation | movement explanatory drawing which shows. 走行装置の他の例を示す斜視図である。It is a perspective view which shows the other example of a traveling apparatus. 第二の実施形態における教示プログラムに基づく処理を示すフローチャートである。It is a flowchart which shows the process based on the teaching program in 2nd embodiment. ロボットの第一の関節角度が−45°、第二の関節角度が90°の姿勢にある場合を示す動作説明図である。It is operation | movement explanatory drawing which shows the case where the 1st joint angle of a robot exists in the attitude | position which is -45 degrees and a 2nd joint angle is 90 degrees. ロボットの第一の関節角度が60°、第二の関節角度が0°の姿勢にある場合を示す動作説明図である。FIG. 11 is an operation explanatory diagram illustrating a case where the robot has a posture in which the first joint angle is 60 ° and the second joint angle is 0 °. 従来例の問題点を示す説明図である。It is explanatory drawing which shows the problem of a prior art example. 従来例の他の問題点を示す説明図である。It is explanatory drawing which shows the other problem of a prior art example.

符号の説明Explanation of symbols

1 ロボット
10 マニピュレータ装置
12a 第一のアーム
12b 第二のアーム
13a 第一の関節
13b 第二の関節
20 走行装置
30 教示装置
31 CPU
32 ROM
34 バッファ(記憶手段)
37 入力手段(教示点入力手段、固定対象選択手段)
38 表示手段
50 ロボット教示システム
1 Robot 10 Manipulator Device 12a First Arm 12b Second Arm 13a First Joint 13b Second Joint 20 Traveling Device 30 Teaching Device 31 CPU
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.
前記走行距離算出手段は、仮想的に所定の距離単位で走行距離を変化させると共に当該変化に伴う前記所定の関節角度を算出し、求まる関節角度の変化から適正な走行距離を特定することを特徴とする請求項1記載のロボット教示装置。   The travel distance calculating means virtually changes the travel distance in a predetermined distance unit, calculates the predetermined joint angle associated with the change, and specifies an appropriate travel distance from the obtained change in the joint angle. The robot teaching apparatus according to claim 1. 複数のアームが複数の関節で連結されると共に前記各関節ごとに駆動源を備えるマニピュレータ装置と当該マニピュレータ装置を所定の軌跡に沿って移動させる走行装置とを備えるロボットの教示装置において、
前記ロボットの教示点を入力するための教示点入力手段と、
前記入力された教示点に基づく複数の移動目標位置ごとに前記マニピュレータ装置の先端部を位置決めする際に、前記走行装置を固定した場合の可操作性と前記マニピュレータ装置の関節の一つを固定した場合の可操作性とを算出する可操作性算出手段と、
前記算出された二つの可操作性又はこれらの大小の比較結果を表示する表示手段と、
前記走行装置と前記マニピュレータ装置の関節の一つのいずれを固定すべきかを入力するための固定対象選択手段と、
前記固定対象選択手段による選択に従い、前記走行装置又は関節を固定しつつ移動目標位置に移動を行う前記ロボットの制御データを生成するデータ生成手段とを備えることを特徴とするロボット教示装置。
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.
前記走行距離算出工程では、仮想的に所定の距離単位で走行距離を変化させると共に当該変化に伴う前記所定の関節角度を算出し、求まる関節角度の変化から適正な走行距離を特定することを特徴とする請求項4記載のロボット教示方法。   In the travel distance calculation step, the travel distance is virtually changed in a predetermined distance unit, the predetermined joint angle associated with the change is calculated, and an appropriate travel distance is specified from the change in the obtained joint angle. The robot teaching method according to claim 4. 複数のアームが複数の関節で連結されると共に前記各関節ごとに駆動源を備えるマニピュレータ装置と当該マニピュレータ装置を所定の軌跡に沿って移動させる走行装置とを備えるロボットの教示方法において、
前記ロボットの教示点に基づく複数の移動目標位置ごとに前記マニピュレータ装置の先端部を位置決めする際に、前記走行装置を固定した場合の可操作性と前記マニピュレータ装置の関節の一つを固定した場合の可操作性とを算出する可操作性算出工程と、
前記算出された二つの可操作性又はこれらの大小を表示する表示工程と、
前記表示工程の表示内容に基づいて、前記走行装置と前記マニピュレータ装置の関節のいずれを固定すべきかの入力を受け付ける固定対象選択工程と、
前記固定対象選択工程による選択に従い、前記走行装置又は関節を固定しつつ前記各移動目標位置に移動を行う前記ロボットの制御データを生成するデータ生成工程とを備えることを特徴とするロボット教示方法。
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.
JP2005182124A 2005-06-22 2005-06-22 Robot teaching device and method Pending JP2007000954A (en)

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)

* Cited by examiner, † Cited by third party
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)

* Cited by examiner, † Cited by third party
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

Patent Citations (2)

* Cited by examiner, † Cited by third party
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)

* Cited by examiner, † Cited by third party
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