JP2009166164A - Industrial robot - Google Patents
Industrial robot Download PDFInfo
- Publication number
- JP2009166164A JP2009166164A JP2008006022A JP2008006022A JP2009166164A JP 2009166164 A JP2009166164 A JP 2009166164A JP 2008006022 A JP2008006022 A JP 2008006022A JP 2008006022 A JP2008006022 A JP 2008006022A JP 2009166164 A JP2009166164 A JP 2009166164A
- Authority
- JP
- Japan
- Prior art keywords
- target value
- manipulator
- auxiliary device
- tool
- correction
- 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
Landscapes
- Manipulator (AREA)
Abstract
Description
本発明は工業用ロボットに関する。特に、本発明は、ツールを備えるマニピュレータと、マニピュレータを移動させる移動装置やワークを位置決めするポジショナのような補助装置とを備える工業用ロボットに関する。 The present invention relates to an industrial robot. In particular, the present invention relates to an industrial robot including a manipulator including a tool and an auxiliary device such as a moving device that moves the manipulator and a positioner that positions a workpiece.
一般に工業用ロボットのマニピュレータは複数の自由度を有し、この自由度により手首先端に取り付けた溶接トーチ、塗装ガン等のツール(加工具)を任意の位置及び姿勢に位置決めしてワーク(加工対象物)を加工する。このような多関節型のマニピュレータの先端位置を直交座標系にて動作させる際に、特異点と呼ばれる動作不能点が存在する。この特異点近傍では、直交座標系におけるマニピュレータ先端の位置及び姿勢から、マニピュレータの関節角度を求める逆キネマティクス計算の解が不定となる。その結果、各関節モータへの指令値が求まらず、エラー発生としてマニピュレータは動作停止となる。 In general, manipulators for industrial robots have multiple degrees of freedom, and with this degree of freedom, tools (processing tools) such as welding torches and paint guns attached to the tip of the wrist are positioned at arbitrary positions and postures (workpieces to be processed). Processing). When operating the tip position of such an articulated manipulator in an orthogonal coordinate system, there is an inoperable point called a singular point. In the vicinity of this singular point, the solution of inverse kinematics calculation for obtaining the joint angle of the manipulator from the position and posture of the manipulator tip in the Cartesian coordinate system becomes indefinite. As a result, the command value for each joint motor cannot be obtained, and the manipulator stops operating as an error occurs.
一方、工業用ロボットには、マニピュレータに加え、マニピュレータを移動させる移動装置や、ワークを移動・回転させるポジショナ等の補助装置を備えるものがある。移動装置によって作業領域を拡大し、ポジショナによってワークをマニピュレータの作業領域内で適切に位置決めすることで、より多様なワークの加工が可能となる。一般に作業時間の短縮と作業品質の向上のために、マニピュレータと補助装置を同期して同時に動作させる。例えば、アーク溶接の場合、移動装置とポジショナをマニピュレータと同期して動作させることにより、マニピュレータ単独では作業領域が不足するような大型のワークの連続溶接が可能となり、溶接作業時間の短縮と溶接品質の向上を達成できる。 On the other hand, some industrial robots include a moving device that moves the manipulator and an auxiliary device such as a positioner that moves and rotates the workpiece in addition to the manipulator. By enlarging the work area with the moving device and appropriately positioning the work within the work area of the manipulator with the positioner, it becomes possible to process a wider variety of work. In general, the manipulator and the auxiliary device are operated simultaneously in synchronization with each other in order to shorten the work time and improve the work quality. For example, in the case of arc welding, by operating the moving device and positioner in synchronization with the manipulator, it becomes possible to continuously weld large workpieces where the work area is insufficient with the manipulator alone, shortening the welding work time and welding quality Can be improved.
例えば特許文献1〜3に前述の特異点の回避方法が開示されている。これらの特許文献に記載の特異点回避方法は、いずれも垂直多関節型のマニピュレータの手首軸における特異点近傍で速度と軌跡を変更することで、特異点近傍を滑らかに通過することを意図している。しかし、特許文献1〜3に開示されているのは、いずれもマニピュレータのみを用いる特異点回避方法であり、特異点回避に関しては補助装置を考慮していない。そのため、特許文献1〜3の特異点回避方法は、位置精度や速度精度の確保と両立させることが困難であり、かつ複雑な演算を要する。
For example,
本発明は、マニピュレータと補助装置を同期させて動作させる工業用ロボットにおいて、補助装置の位置を微修正することにより、位置精度及び速度精度を確保しつつ、比較的簡易な演算でマニピュレータの特異点を回避することを課題とする。 The present invention relates to an industrial robot that operates a manipulator and an auxiliary device in synchronization with each other by finely correcting the position of the auxiliary device to ensure position accuracy and speed accuracy, while maintaining a singular point of the manipulator with relatively simple calculation. The problem is to avoid the problem.
本発明は、先端にツールを備える多関節型のマニピュレータと、前記ツールによって加工されるワーク及び/又は前記マニピュレータを移動させる補助装置と、前記マニピュレータと前記補助装置を同期して動作させる制御装置とを備える工業用ロボットであって、前記制御装置は、予め定められた固定直交座標系における次時刻のツール先端の位置及び姿勢の目標値であるツール目標値を計算するツール目標値演算手段と、前記次時刻の前記補助装置の位置及び姿勢の目標値である補助装置目標値を計算する補助装置目標値演算手段と、前記補助装置目標値を使用して、前記ツール目標値をマニピュレータ座標系に変換する第1の座標変換演算手段と、前記マニピュレータ座標系に変換された前記ツール目標値の逆キネマティクス演算により、前記次時刻における前記マニピュレータの各関節の関節角度の目標値である目標関節角度を計算する目標関節角度演算手段と、前記目標関節角度が特異点近傍であるか否かを判別する特異点判別手段と、前記特異点判別手段が特異点近傍を判別すると、前記次時刻の前記ツール先端の前記ワークに対する位置及び姿勢を維持しつつ、前記次時刻のマニピュレータの姿勢が特異点近傍範囲外となるように、前記補助装置目標値を補正して補正補助装置目標値を計算する補正補助装置目標値演算手段と、前記補正補助装置目標値を使用して、前記次時刻の前記固定直交座標系における前記ツール目標値をマニピュレータ座標系に変換する第2の座標変換演算手段と、前記第2の座標変換手段により前記マニピュレータ座標系に変換されたツール目標値の逆キネマティクス演算により、前記次時刻における前記マニピュレータの関節角度の目標値である補正目標関節角度を計算する補正目標関節角度演算手段と、前記特異点判別手段が特異点近傍を判別していなければ前記目標関節角度と前記補助装置目標値により前記マニピュレータと前記補助装置を駆動する一方、前記特異点判別手段が特異点近傍を判別していれば前記補正目標関節角度と前記補正補助装置目標値とにより前記マニピュレータと前記補助装置を駆動する駆動手段とを備える、工業用ロボットを提供する。 The present invention provides an articulated manipulator having a tool at a tip, a work machined by the tool and / or an auxiliary device for moving the manipulator, and a control device for operating the manipulator and the auxiliary device in synchronization. An industrial robot comprising: a tool target value calculation means for calculating a tool target value, which is a target value of a tool tip position and posture at a next time in a predetermined fixed orthogonal coordinate system; Auxiliary device target value calculating means for calculating an auxiliary device target value that is a target value of the position and orientation of the auxiliary device at the next time, and using the auxiliary device target value, the tool target value in the manipulator coordinate system A first coordinate transformation computing means for transformation, and an inverse kinematics computation of the tool target value transformed into the manipulator coordinate system. , A target joint angle calculation means for calculating a target joint angle that is a target value of a joint angle of each joint of the manipulator at the next time, and a singular point determination for determining whether or not the target joint angle is in the vicinity of a singular point When the means and the singular point discrimination means discriminate the vicinity of the singular point, the posture of the manipulator at the next time is out of the singular point vicinity range while maintaining the position and posture of the tool tip with respect to the workpiece at the next time. In the fixed orthogonal coordinate system of the next time using the correction auxiliary device target value calculating means for correcting the auxiliary device target value and calculating the correction auxiliary device target value, A second coordinate transformation calculation means for transforming the tool target value into a manipulator coordinate system; and a tool transformed into the manipulator coordinate system by the second coordinate transformation means. The corrected target joint angle calculating means for calculating the corrected target joint angle that is the target value of the joint angle of the manipulator at the next time by the inverse kinematics calculation of the target value, and the singular point determination means determine the vicinity of the singular point. If not, the manipulator and the auxiliary device are driven according to the target joint angle and the auxiliary device target value, while the corrected target joint angle and the correction auxiliary device are driven if the singularity discriminating means discriminates the vicinity of the singularity. An industrial robot comprising the manipulator and driving means for driving the auxiliary device according to a target value is provided.
具体的には、前記補正補助装置目標値演算手段は、前記目標関節角度を予め定められた特異点近傍範囲外となるように補正して得られる予備補正目標関節角度を計算し、前記予備補正目標関節角度の順キネマティクス演算によりマニピュレータ座標系における予備補正ツール目標値を計算し、前記予備補正ツール目標値とマニピュレータ座標系における前記ツール目標値との差である補正値を計算し、前記補正値を使用して、前記補助装置目標値から前記補正補助装置目標値を計算する。 Specifically, the correction assist device target value calculation means calculates a preliminary correction target joint angle obtained by correcting the target joint angle so as to be outside a predetermined singular point vicinity range, and performs the preliminary correction. A preliminary correction tool target value in the manipulator coordinate system is calculated by forward kinematics calculation of a target joint angle, a correction value that is a difference between the preliminary correction tool target value and the tool target value in the manipulator coordinate system is calculated, and the correction is performed. The correction assist device target value is calculated from the assist device target value using a value.
例えば、前記制御装置は、前記固定直交座標系における前記ツール先端の位置及び姿勢の時間変化を規定するツール経路を生成するツール経路生成手段と、前記補助装置の位置及び姿勢の時間変化を規定する補助装置経路を生成する補助装置経路生成手段とをさらに備え、前記ツール目標値演算手段は、前記ツール経路に基づいて前記次時刻の前記ツール目標値を計算し、かつ前記補助装置目標値演算手段は、前記補助装置経路に基づいて前記次時刻の前記補助装置目標値を計算する。 For example, the control device defines a tool path generation unit that generates a tool path that defines a time change in the position and posture of the tool tip in the fixed orthogonal coordinate system, and a time change in the position and posture of the auxiliary device. An auxiliary device path generating means for generating an auxiliary device path, wherein the tool target value calculating means calculates the tool target value at the next time based on the tool path, and the auxiliary device target value calculating means. Calculates the auxiliary device target value at the next time based on the auxiliary device path.
補助装置は、移動装置とポジショナのうちのいずれか一方であってもよいし、移動装置とポジショナを両方備えていてもよい。 The auxiliary device may be one of the moving device and the positioner, or may include both the moving device and the positioner.
また、補助装置は少なくとも一つの直動関節又は回転関節を備えるものであればよい。 In addition, the auxiliary device only needs to have at least one linear joint or rotary joint.
マニピュレータは、垂直多関節型かつ6軸で、第4軸がロール、第5軸がベント、かつ第6軸がロールである手首を有し、前記補助装置として回転関節のみを有するポジショナのみを備える場合には、ポジショナの回転関節の少なくとも一つがマニピュレータの第5軸と同方向に回転するものである必要がある。 The manipulator has a wrist with a vertical articulated type and 6 axes, the fourth axis is a roll, the fifth axis is a vent, and the sixth axis is a roll. The auxiliary device includes only a positioner having only a rotary joint. In some cases, at least one of the rotary joints of the positioner needs to rotate in the same direction as the fifth axis of the manipulator.
マニピュレータの次時刻の目標関節角度(次時刻のマニピュレータの姿勢)が特異点近傍となった場合、次時刻のマニピュレータの姿勢が特異点近傍範囲外となるように補助装置目標値を補正した補正補助装置目標値を計算し、この補正補助装置目標値から補正目標関節角度を計算し、これら補正目標関節角度と補正補助装置目標値をマニピュレータと補助装置に出力する。言い換えれば、マニピュレータが特異点近傍となった場合、補助装置の位置を自動的に修正することで、マニピュレータの姿勢を特異点近傍範囲外としている。そのため、ワークに対するツール先端の位置及び姿勢を変換させることなく、位置精度及び速度精度を維持しつつ、特異点回避が可能であり、特にアーク溶接等、加工具の位置及び姿勢の変動が加工品質に大きく影響する作業における特異点回避において有効である。また、補助装置の位置の微修正による特異点回避であるので、比較的簡易な演算でマニピュレータの特異点を回避できる。 When the target joint angle at the next time of the manipulator (the posture of the manipulator at the next time) is in the vicinity of the singular point, correction assistance that corrects the auxiliary device target value so that the posture of the manipulator at the next time is outside the range near the singular point The apparatus target value is calculated, the correction target joint angle is calculated from the correction auxiliary apparatus target value, and the correction target joint angle and the correction auxiliary apparatus target value are output to the manipulator and the auxiliary apparatus. In other words, when the manipulator is in the vicinity of the singular point, the position of the auxiliary device is automatically corrected to make the manipulator posture out of the singular point vicinity range. Therefore, it is possible to avoid singular points while maintaining the position accuracy and speed accuracy without converting the position and posture of the tool tip with respect to the workpiece. This is effective in avoiding singularities in work that greatly affects Further, since the singular point is avoided by fine correction of the position of the auxiliary device, the singular point of the manipulator can be avoided by a relatively simple calculation.
次に、添付図面を参照して本発明の実施形態を詳細に説明する。 Next, embodiments of the present invention will be described in detail with reference to the accompanying drawings.
(第1実施形態)
図1及び図2に示す第1実施形態は、マニピュレータ11と移動装置(スライダ)12を備えるPTP型の工業用ロボットに本発明を適用した例である。
(First embodiment)
The first embodiment shown in FIGS. 1 and 2 is an example in which the present invention is applied to a PTP type industrial robot including a
図1を参照すると、工業用ロボットは、6軸垂直多関節型のマニピュレータ11、移動装置12、制御装置13、及び教示装置14を備える。本実施形態では、ワーク17自体の位置及び姿勢は固定されている。
Referring to FIG. 1, the industrial robot includes a 6-axis vertical articulated
マニピュレータ11は先端にツール16を備え、かつツール16の位置及び姿勢を三次元空間内で変化させる。マニピュレータ11は6個の回転関節RJm1,RJm2,RJm3,RJm4,RJm5,RJm6を有する。回転関節RJm1〜RJm6間はリンクで連結され、最も基端側の回転関節RJm1は台座11aに取り付けられている。各回転関節RJm1〜RJm6は、回転駆動のためのモータMOm1〜MOm6と、関節角度Jm(J1,J2,J3,J4,J5,J6)を検出するための角度センサSEm1〜SEm6を備える。また、マニピュレータ11は手首3軸(回転関節RJm4〜RJm6)が1点で交わるロール・ベンド・ロール型(第4軸がロール、第5軸がベント、第6軸がロール)の手首を有する。
The
移動装置12は、互いに直交する方向に直進移動する3個の直動関節SJ1,SJ2,SJ3を備え、直動関節SJ1にマニピュレータ11の台座11aが保持されている。各直動関節SJ1〜SJ3は、それぞれ駆動用のモータMOs1〜MOs3と、後述するワールド座標系Σworldにおける関節位置Js(SX,SY,SZ)を検出するための位置センサSEs1〜SEs3を備える。
The moving device 12 includes three linear motion joints SJ 1 , SJ 2 , and SJ 3 that linearly move in directions orthogonal to each other, and the
次に、マニピュレータ11及び移動装置12の制御に使用する座標を説明する。
Next, coordinates used for controlling the
マニピュレータ11に関し、原点がマニピュレータ11の台座11aに設定され、かつ三次元空間に対して固定された直交座標系(マニピュレータ座標系Σbase)を設定する。マニピュレータ座標系Σbaseにおけるマニピュレータ11の位置及び姿勢(ツール先端16aの位置及び姿勢)、すなわちマニピュレータ座標系Σbaseでの座標と座標軸周りの回転角をbaseP(Xb,Yb,Zb,αb,βb,γb)で表記する。αはロール角、βはピッチ角、γはヨー角をそれぞれ示す。
With respect to the
マニピュレータ座標系Σbaseとは別に、三次元空間に対して固定された直交座標系(ワールド座標系Σworld)を設定する。ワールド座標系Σworldにおけるマニピュレータ11の位置及び姿勢(ツール先端16aの位置及び姿勢)、すなわちワールド座標系Σworldでの座標と座標軸周り回転角をworldP(Xw,Yw,Zw,αw,βw,γw)で表記する。ワールド座標系Σworldとマニピュレータ座標系Σbaseの三次元空間内での姿勢(XYZ軸の向き)は同一である。移動装置12の各直動関節SJ1〜SJ3の向きはワールド座標系ΣworldのXYZ軸の向きと一致しており、ワールド座標系Σworldの原点は、関節位置Jsが(0,0,0)の位置に設定している。
In addition to the manipulator coordinate system Σbase, an orthogonal coordinate system (world coordinate system Σworld) fixed to the three-dimensional space is set. Position and orientation of the
図2を参照すると、制御装置13は、経路生成部21、ツール目標値演算部22、移動装置目標値演算部23、第1座標変換演算部24、目標関節角度演算部25、特異点判別部26、補正移動装置目標値演算部27、第2座標演算部28、補正目標関節角度演算部29、及び駆動部30を備える。制御装置13は、プロセッシングユニット、RAM、ROM等の各種記憶装置、入出力ポート等のハードウェアと、それに実装されるソフトウェアとにより構築されている。
Referring to FIG. 2, the
次に、図3A及び図3Bのフローチャートを参照して、制御装置13により実行されるマニピュレータ11及び移動装置12の制御を説明する。
Next, control of the
まず、ステップS3−1において、経路生成部21がワールド座標系Σworldにおける現在位置から教示位置までのツール先端16aの位置及び姿勢の時系列変化を規定する方程式(ツール経路方程式worldP(t),符号tは時刻を示す)を計算する。また、ステップS3−2において、経路生成部21はツール経路方程式worldP(t)で規定されるワールド座標系Σworldにおけるツール先端16aの位置及び姿勢の時系列変化と同期するように、現在位置から教示位置までの移動装置12の位置及び姿勢の時系列変化を規定する方程式(移動装置経路方程式Js(t))を計算する。ツール経路方程式worldP(t)及び移動装置経路方程式Js(t)の計算のために、経路生成部21には教示位置Pte(Jmte+Jste)が教示装置14から入力され、現在の位置P0(Jm0+Js0)が角度センサSEm1〜SEm6と位置センサSEs1〜SEs3から入力される。また、経路生成部21にはツール経路方程式worldP(t)及び移動装置経路方程式Js(t)の計算のために必要な制御条件(ツール先端16aの軌跡の形状、移動速度等)が入力される。
First, in step S3-1, the path generation unit 21 defines an equation (tool path equation worldP (t), sign) that defines a time-series change in the position and orientation of the
ツール経路方程式worldP(t)及び移動装置経路方程式Js(t)を求めた後、ステップS3−3において時刻tを初期化する(t=0)。 After obtaining the tool path equation worldP (t) and the moving device path equation Js (t), the time t is initialized in step S3-3 (t = 0).
ステップS3−4からステップS3−17の処理が一定の制御周期Tc毎に繰り返される。まず、ステップS3−4において時刻tを時刻t+Tc(次時刻)に更新する。 The processing from step S3-4 to step S3-17 is repeated every fixed control cycle Tc. First, in step S3-4, time t is updated to time t + Tc (next time).
次に、ステップS3−5において、ツール目標値演算部22がツール経路方程式worldP(t)を使用して、ワールド座標系Σworldにおけるツール先端16aの時刻tでの位置及び姿勢の目標値であるツール目標値worldPta(t)(Xwta,Ywta,Zwta,αwta,βwta,γwta)を計算する。また、ステップS3−6において、移動装置目標値演算部23が、移動装置経路方程式Js(t)を使用して、ワールド座標系Σworldにおける時刻tでの移動装置12の位置及び姿勢の目標値である移動装置目標値Jsta(t)(SXta,SYta,SZta)を計算する。
Next, in step S3-5, the tool target value calculation unit 22 uses the tool path equation worldP (t), and the tool is the target value of the position and orientation at the time t of the
ステップS3−7では、第1座標変換部24が移動装置目標値Jsta(t)を使用してワールド座標系Σworldにおけるツール目標値worldPta(t)を、マニピュレータ座標系Σbaseにおける時刻tでのツール目標値basePta(t)(Xbta,Ybta,Zbtz,αbta,βbta,γbta)に座標変換する。この種の座標変換のための座標変換手段は種々知られているが、本実施形態ではマニピュレータ座標系Σbaseの直交3軸の方向と、移動装置12の移動方向が一致しているので、ツール目標値worldPta(t)と移動装置目標値Jsta(t)の単純な減算によりマニピュレータ座標系Σbaseにおけるツール目標値basePta(t)が得られる。 In step S3-7, the first coordinate conversion unit 24 uses the moving device target value Jsta (t) to obtain the tool target value worldPta (t) in the world coordinate system Σworld, and the tool target at time t in the manipulator coordinate system Σbase. Coordinates are converted to the value basePta (t) (Xbta, Ybta, Zbtz, αbta, βbta, γbta). Various coordinate conversion means for this type of coordinate conversion are known, but in this embodiment, the directions of the three orthogonal axes of the manipulator coordinate system Σbase and the movement direction of the moving device 12 coincide with each other. A tool target value basePta (t) in the manipulator coordinate system Σbase is obtained by simple subtraction of the value worldPta (t) and the moving device target value Jsta (t).
次に、ステップS3−8において、目標関節角度演算部25がマニピュレータ座標系Σbaseにおけるツール目標値basePta(t)の逆キネマティクスを計算し、マニピュレータ11の各回転関節RJm1〜RJm6の時刻tでの関節角度の目標値である目標関節角度Jmta(t)(J1ta,J2ta,J3ta,J4ta,J5ta,J6ta)に変換する。
Next, in step S3-8, the target joint angle calculation unit 25 calculates the inverse kinematics of the tool target value basePta (t) in the manipulator coordinate system Σbase, and the time t of each rotary joint RJ m1 to RJ m6 of the
続いて、ステップS3−9において、特異点判別部26が、目標関節角度演算部25により計算された目標関節角度Jmta(t)が特異点近傍にあるか否かを判別する。本実施形態のような手首3軸の回転中心が1点で交わるロール・ベンド・ロール型の手首を備えるマニピュレータ11では、第5軸である回転関節RJm5の関節角度J5が0度付近で、マニピュレータ座標系Σbaseにおけるトーチ先端16aの位置及び姿勢basePta(t)から各回転関節RJm1〜RJm6の関節角度J1〜J6が一義的に求まらない「特異点」となる。マニピュレータ11の動作中に特異点近傍に接近した場合、手首軸である回転関節RJm4〜RJm6が急激に変化することになる。従来、特異点付近に近付いた場合、エラーとしてマニピュレータ11の動作を停止するか、手首軸の回転数が最高回転数を超えないようにツール先端16aの速度を減速することで特異点を通過していた。
Subsequently, in step S3-9, the singular point determination unit 26 determines whether or not the target joint angle Jmta (t) calculated by the target joint angle calculation unit 25 is in the vicinity of the singular point. In the
本実施形態では、特異点判別部26は、以下の式(1)が成立する場合、時刻tでの目標関節角度Jmta(t)(マニピュレータ11の姿勢)が特異点近傍にあると判別する。逆に、式(1)が成立しない場合、特異点判別部26は時刻tでの目標関節角度Jmta(t)は特異点近傍ではないと判別する。 In the present embodiment, the singularity determination unit 26 determines that the target joint angle Jmta (t) (attitude of the manipulator 11) at the time t is in the vicinity of the singularity when the following expression (1) is satisfied. Conversely, when equation (1) does not hold, the singular point determination unit 26 determines that the target joint angle Jmta (t) at time t is not near the singular point.
式(1)において、J5taは時刻tにおける第5軸の回転関節RJm5の目標関節角度であり、ΔJsは判別閾値である。この判別閾値ΔJsは、手首軸である回転関節RJm4〜RJm6の許容最大速度とマニピュレータリンク長で決まる。式(1)の範囲外となるように第5軸の回転関節RJm5を動作させれば、特異点を回避し、滑らかにマニピュレータ11を駆動させることができる。
In equation (1), J5ta is the target joint angle of the rotary joint RJ m5 of the fifth axis at time t, and ΔJs is a discrimination threshold. This determination threshold ΔJs is determined by the allowable maximum speed of the rotary joints RJ m4 to RJ m6 that are wrist axes and the manipulator link length. If the rotary joint RJ m5 of the fifth axis is operated so as to be out of the range of the expression (1), a singular point can be avoided and the
ステップS3−9において目標関節角度Jmta(t)が特異点近傍でないと判別されれば、ステップS3−10において駆動部30が目標関節角度Jmta(t)をマニピュレータ11に出力すると共に、移動装置目標値Jsta(t)を移動装置12に出力する。これらの指令によりマニピュレータ11のモータMOm1〜MOm6と移動装置12のモータMOs1〜MOs3が作動し、マニピュレータ11と移動装置12が同期して同時に作動する。
If it is determined in step S3-9 that the target joint angle Jmta (t) is not near the singular point, the
一方、ステップS3−9において、目標関節角度Jmta(t)が特異点近傍であると判別された場合、目標関節角度Jmta(t)と移動装置目標値Jsta(t)をそのままマニピュレータ11と移動装置12に出力するのではなく、ステップS3−11〜3−17の処理を実行して特異点回避のための補正移動装置目標値Jsta(t)'及び補正目標関節角度Jmta(t)''を算出及び出力する。
On the other hand, if it is determined in step S3-9 that the target joint angle Jmta (t) is in the vicinity of the singular point, the target joint angle Jmta (t) and the moving device target value Jsta (t) are directly used as the
ステップS3−11〜S3−14の処理は、補正移動装置目標値演算部27が実行する。補正移動装置目標値演算部27は、時刻tでのワールド座標系Σworldにおけるツール先端16aの位置及び姿勢(ツール先端16aのワーク17に対する位置及び姿勢)を維持しつつ、時刻tにおけるマニピュレレータ11の姿勢が特異点近傍範囲外となるように、移動装置12の時刻tにおける位置及び姿勢を微修正するものである。
The correction moving device target value calculation unit 27 executes the processes of steps S3-11 to S3-14. The corrected moving device target value calculation unit 27 maintains the position and posture of the
まず、ステップS3−11において、予備補正目標関節角度Jmta(t)’を計算する。前述のように、式(1)の範囲外となるように第5軸の回転関節RJm5を動作させれば、特異点を回避し、滑らかにマニピュレータ11を駆動させることができる。予備補正目標値関節角度Jmta(t)’は、目標関節角度Jmta(t)のうち、回転関節RJm5の目標関節角度J5taを式(1)の範囲外に変更し、残りの5軸の回転関節角度RJm1〜RJm4,RJm6の目標関節角度J1ta〜J4ta,J6taは変更することなく維持したものである。図4に目標関節角度Jmtaと予備補正目標関節角度Jmta(t)の関係を概念的に示す。J5>+ΔJsの状態で経路移動中、時刻t(次時刻)の目標関節角度Jmta(t)においてJ5ta<+ΔJsとなった場合、特異点近傍範囲外に第5軸の回転関節RJm5の関節角度J5を制限するために、J5taをJ5ta’=+ΔJsに設定する。また、J5<−ΔJsの状態で経路移動中、時刻tの目標関節角度Jmta(t)においてJ5ta>−ΔJsとなった場合には、J5taをJ5ta’=−ΔJsに設定する。
First, in step S3-11, a preliminary correction target joint angle Jmta (t) ′ is calculated. As described above, the singularity can be avoided and the
次に、ステップS3−12において、予備補正目標関節角度Jmta(t)’の順キネマティクスを計算し、マニピュレータ座標系Σbaseにおける予備補正ツール目標値basePta(t)’を計算する。 Next, in step S3-12, the forward kinematics of the preliminary correction target joint angle Jmta (t) 'is calculated, and the preliminary correction tool target value basePta (t)' in the manipulator coordinate system Σbase is calculated.
ステップS3−12では、ツール目標値basePta(t)と予備補正ツール目標値basePta(t)’から、ツール先端16aを特異点近傍範囲外とするためのベース座標系Σbaseにおける必要な補正量ΔPを計算する。具体的には、以下の式(2)で示すように、補正量ΔPは予備補正ツール目標値basePta(t)’の直交成分とツール目標値basePta(t)の直交成分の差として与えられる。
In step S3-12, a necessary correction amount ΔP in the base coordinate system Σbase for making the
次に、移動装置12の位置及び姿勢の微修正で補正量ΔPを実現するために、補正量ΔPを使用して時刻tにおける移動装置目標値Jsta(t)を補正し、移動装置12の時刻tにおける新たな目標位置(補正移動装置目標値Jsta(t)’)を計算する。以下の式(3)で示すように、補正移動装置目標値Jsta(t)’(SX’,SY’,SZ’)は、移動装置目標値Jsta(t)(SX,SY,SZ)と補正量ΔP(ΔX,ΔY,ΔZ)の和として与えられる。 Next, in order to realize the correction amount ΔP by finely correcting the position and orientation of the moving device 12, the correction device ΔP is used to correct the moving device target value Jsta (t) at time t, and the time of the moving device 12 is corrected. A new target position at t (corrected moving device target value Jsta (t) ′) is calculated. As shown in the following equation (3), the corrected moving device target value Jsta (t) ′ (SX ′, SY ′, SZ ′) is corrected with the moving device target value Jsta (t) (SX, SY, SZ). It is given as the sum of the quantities ΔP (ΔX, ΔY, ΔZ).
次に、ステップS3−15において、第2座標変換演算部28が、補正移動装置目標値演算部27によって計算された補正移動装置目標値Jsta(t)’を使用してワールド座標系Σworldにおけるツール目標値worldPta(t)をマニピュレータ座標系Σbaseにおけるツール目標値である補正ツール目標値basePta(t)''(Xta'',Yta'',Zta'',αta'',βta'',γta'')に座標変換する。本実施形態ではマニピュレータ座標系のXYZ軸と移動装置12の移動方向が一致しているので、以下の式(4)に示すように、補正ツール目標値basePta(t)''のXYZ成分はツール目標値worldPta(t)と補正移動装置目標値Jsta(t)’の単純な減算により算出され、補正ツール目標値basePta(t)''のαβγ成分はツール目標値worldPta(t)と同一である。 Next, in step S3-15, the second coordinate transformation calculation unit 28 uses the corrected moving device target value Jsta (t) ′ calculated by the corrected moving device target value calculating unit 27 to use the tool in the world coordinate system Σworld. The target value worldPta (t) is corrected tool target value basePta (t) ″ (Xta ″, Yta ″, Zta ″, αta ″, βta ″, γta ′, which is a tool target value in the manipulator coordinate system Σbase. ') Convert coordinates. In the present embodiment, since the XYZ axes of the manipulator coordinate system and the moving direction of the moving device 12 coincide with each other, the XYZ component of the correction tool target value basePta (t) ″ is the tool as shown in the following equation (4). The αβγ component of the correction tool target value basePta (t) ″ is the same as the tool target value worldPta (t), calculated by simple subtraction of the target value worldPta (t) and the correction moving device target value Jsta (t) ′. .
次に、ステップS3−16において、補正目標関節角度演算部29が、マニピュレータ座標系Σbaseにおける補正ツール目標値basePt(t)''の逆キネマティクスを計算し、マニピュレータ11の各回転関節RJm1〜RJm6の時刻tで関節角度の目標値の補正値である補正目標関節角度Jmta(t)''(J1ta'',J2ta'',J3ta'',J4ta'',J5ta'',J6ta'')に変換する。
Next, in step S3-16, the correction target joint
その後、ステップS3−17において、駆動部30が補正目標関節角度Jmta(t)''をマニピュレータ11に出力すると共に、補正移動装置目標値Jsta(t)'を移動装置12に出力する。これらの指令によりマニピュレータ11のモータMOm1〜MOm6と移動装置12のモータMOs1〜MOs3が作動し、マニピュレータ11と移動装置12が同期して移動する。図5Aに示すように、仮に特異点回避のための動作を実行しなければ時刻tにマニピュレータ11の姿勢が特異点となる場合でも、本実施形態では図5Bにおいて矢印Aで示すように移動装置12によってマニピュレータ11全体を移動することでトーチ先端16aのワーク17に対する位置及び姿勢を維持しつつ、マニピュレータ11の姿勢が特異点近傍となるのを回避している。
Thereafter, in step S3-17, the
ステップS3−18においてツール先端16aが教示位置Pteに到達するまで、ステップS3−4からステップS3−17の処理が繰り返される。
The processing from step S3-4 to step S3-17 is repeated until the
本実施形態では、マニピュレータ11の次時刻の目標関節角度Jmta(t)、すなわち次時刻のマニピュレータの姿勢が特異点近傍となった場合、次時刻のマニピュレータ11の姿勢が特異点近傍範囲外となるように移動装置目標値Jsta(t)を補正した補正補助装置目標値Jsta(t)'を計算し、この補正移動装置目標値Jsta(t)'から補正目標関節角度Jmta(t)''を計算し、これら補正目標関節角度Jmta(t)''と補助移動装置目標値Jsta(t)'をマニピュレータ11と移動装置12に出力する。言い換えれば、図5Bに示すように、マニピュレータ11が特異点近傍となった場合、移動装置12の位置を自動的に修正することで、マニピュレータ11の姿勢を特異点近傍範囲外としている。そのため、ワーク17に対するツール先端16aの位置及び姿勢を変換させることなく、位置精度及び速度精度を維持しつつ、特異点回避が可能であり、特にアーク溶接等、加工具の位置及び姿勢の変動が加工品質に大きく影響する作業における特異点回避において有効である。また、移動装置12の位置の微修正による特異点回避であるので、比較的簡易な演算でマニピュレータ11の特異点を回避できる。
In the present embodiment, when the target joint angle Jmta (t) at the next time of the
(第2実施形態)
図6及び図7に示す第2実施形態は、マニピュレータ11とポジショナ32を備えるPTP型の工業用ロボットに本発明を適用した例である。ワーク17はポジショナ32により移動するが、マニピュレータ17の位置及び姿勢は固定されている。
(Second Embodiment)
The second embodiment shown in FIGS. 6 and 7 is an example in which the present invention is applied to a PTP industrial robot including the
本実施形態におけるポジショナ32は、互いに直交方向に直線移動する3個の直動関節PJ1,PJ2,PJ3と1個の回転関節PJ4を備える。各直動関節PJ1〜PJ3は、それぞれ駆動用のモータMOP1〜MOP3と、ワールド座標系Σworldにおける関節位置Jpを検出するための位置センサSEp1〜SEp3を備える。各直動関節PJ1〜PJ3の向きはワールド座標系ΣworldのXYZ軸の向きと一致しており、ワールド座標系の原点は関節位置Jpが(0,0,0)の位置に設定している。また、ポジショナ32の回転関節PJ4は、ワールド座標系ΣworldのYw軸周りに回転する。ポジショナ32のワールド座標系Σworldにおける関節位置Jpを(PX,PY,PZ,βp)と表記する。
The
本実施形態における制御装置13が備えるポジショナ目標値演算部33と補正ポジショナ目標値演算部37は、それぞれ第1実施形態における制御装置13が備える移動位置目標値演算部23と補正移動装置目標値演算部27と同様の機能を有する。
The positioner target value calculation unit 33 and the correction positioner target value calculation unit 37 included in the
図8A及び図8Bと図3A及び図3Bを比較すれば明らかなように、本実施形態における制御装置13は第1実施形態と同様の手法でマニピュレータ11及びポジショナ32を制御する。以下、図8A及び図8Bの制御の概要を説明する。
8A and 8B and FIGS. 3A and 3B, the
経路生成部21がツール経路方程式worldP(t)及びポジショナ経路方程式Jp(t)を算出した後(ステップS8−1,S8−2)、時刻tが初期化される(ステップS8−3)。ステップS8−18で教示位置Pteへの到達が検出されるまで、一定の制御周期Tc毎にステップS8−4からステップS8−17の処理が繰り返される。 After the path generation unit 21 calculates the tool path equation worldP (t) and the positioner path equation Jp (t) (steps S8-1 and S8-2), the time t is initialized (step S8-3). Until the arrival at the teaching position Pte is detected in step S8-18, the processing from step S8-4 to step S8-17 is repeated every certain control cycle Tc.
ツール目標値演算部22が、ツール経路方程式worldP(t)より時刻t(次時刻)でのワールド座標系Σworldにおけるツール目標値worldPta(t)を計算し(ステップS8−5)、ポジショナ目標値演算部33がポジショナ経路方程式worldJp(t)より時刻tでのポジショナ目標値Jpta(t)(PXta,PYta,PZta,βpta)を計算する(ステップS8−6)。 The tool target value calculation unit 22 calculates the tool target value worldPta (t) in the world coordinate system Σworld at time t (next time) from the tool path equation worldP (t) (step S8-5), and calculates the positioner target value. The unit 33 calculates a positioner target value Jpta (t) (PXta, PYta, PZta, βpta) at time t from the positioner path equation worldJp (t) (step S8-6).
次に、第1座標変換部24がポジショナ目標値Jpta(t)を使用してワールド座標系Σworldにおけるツール目標値worldPta(t)を、マニピュレータ座標系Σbaseにおける時刻tでのツール目標値basePta(t)に座標変換する(ステップ8−7)。また、目標関節角度演算部25が逆キネマティクス演算によりマニピュレータ座標系Σbaseにおけるツール目標値basePta(t)をマニピュレータ11の各回転関節RJm1〜RJm6の時刻tでの目標関節角度Jmta(t)に変換する(ステップS8−8)。
Next, the first coordinate conversion unit 24 uses the positioner target value Jpta (t) to obtain the tool target value worldPta (t) in the world coordinate system Σworld, and the tool target value basePta (t) at time t in the manipulator coordinate system Σbase. ) (Step 8-7). In addition, the target joint angle calculation unit 25 calculates the tool target value basePta (t) in the manipulator coordinate system Σbase by inverse kinematics calculation to the target joint angle Jmta (t) at the time t of each of the rotary joints RJ m1 to RJ m6 of the
特異点判別部26が、マニピュレータ11の第5軸の回転関節RJm5の目標関節角度J5taから時刻tのマニピュレータ11の姿勢が特異点でないと判別すれば(式(1)参照)、駆動部30が目標関節角度Jmta(t)をマニピュレータ11に出力すると共に、ポジショナ目標値Jpta(t)をポジショナ32に出力し、マニピュレータ11とポジショナ32を同期して同時に駆動する(ステップ8−9,S8−10)。
If the singularity determination unit 26 determines that the posture of the
一方、特異点判別部26が時刻tのマニピュレータ11の姿勢が特異点であると判断すれば、特異点回避のための補正ポジショナ目標値Jpta(t)’及び補正目標関節角度Jmta(t)''を算出してポジショナ32とマニピュレータ11に出力する(ステップS8−9,S8−11〜S817)。
On the other hand, if the singularity determination unit 26 determines that the attitude of the
具体的には、補正ポジショナ目標値演算部37は、予備補正目標関節角度Jmta(t)'を計算し、この予備補正目標関節角度Jmta(t)'の順キネマティクス演算により予備補正ツール目標値basePta(t)’を算出し、さらにツール目標値basePta(t)と予備補正ツール目標値basePta(t)’から、マニピュレータ11を特異点近傍範囲外とするためのベース座標系Σbaseにおける必要な補正量ΔP(式(2)参照)を算出する(ステップS8−11〜S8−13)。また、補正ポジショナ目標値演算部37は補正量ΔPを使用して、時刻tにおけるポジショナ目標値位置Jpta(t)からポジショナ32の時刻tにおける新たな目標位置である補正ポジショナ目標値Jpta(t)'を計算する。具体的には、補正ポジショナ目標値Jpta(t)'(PXta',PYta',PZta',βpta')は、以下の式(5)に示す通りである。
Specifically, the correction positioner target value calculation unit 37 calculates a preliminary correction target joint angle Jmta (t) ′, and calculates the preliminary correction tool target value by forward kinematics calculation of the preliminary correction target joint angle Jmta (t) ′. basePta (t) ′ is calculated, and further, the necessary correction in the base coordinate system Σbase for making the
次に、第2座標変換演算部28が、補正ポジショナ目標値Jpta(t)’を使用してワールド座標系Σworldにおけるツール目標値worldPta(t)をマニピュレータ座標系Σbaseにおける補正ツール目標値basePta(t)''に座標変換する(ステップS8−15)。マニピュレータ座標系のXYZ軸とポジショナ32の直進移動の方向が一致しているので、以下の式(6)に示すように、補正ツール目標値basePta(t)''のXYZ成分はツール目標値worldPta(t)と補正ポジショナ目標値Jpta(t)’の単純な減算により算出され、補正ツール目標値basePta(t)''のαβγ成分はツール目標値worldPta(t)と同一である。
Next, the second coordinate transformation calculation unit 28 uses the corrected positioner target value Jpta (t) ′ to obtain the tool target value worldPta (t) in the world coordinate system Σworld and the correction tool target value basePta (t in the manipulator coordinate system Σbase. ) '' (Step S8-15). Since the XYZ axes of the manipulator coordinate system coincide with the direction of linear movement of the
さらに、補正目標関節角度演算部29が、マニピュレータ座標系Σbaseにおける補正ツール目標値basePt(t)''の逆キネマティクスを計算し、マニピュレータ11の各回転関節RJm1〜RJm6についての補正目標関節角度Jmta(t)''に変換する。
Further, the correction target joint
本実施形態の工業用ロボットも、マニピュレータ11が特異点近傍となった場合、ポジショナ32の位置を自動的に修正することで、マニピュレータ11の姿勢を特異点近傍範囲外としている。そのため、ワーク17に対するツール先端16aの位置及び姿勢を変換させることなく、位置精度及び速度精度を維持しつつ、特異点回避が可能であり、かつ特異点回避のための演算も比較的簡易である。
Also in the industrial robot of this embodiment, when the
第2実施形態のその他構成及び作用は第1実施形態と同様である。 Other configurations and operations of the second embodiment are the same as those of the first embodiment.
(第3実施形態)
第1及び第2実施形態では補助装置(移動装置12とポジショナ32)は3個の直動関節を備えているが、本発明は補助装置として1軸又は2軸の回転関節のみを備えるポジショナのみを備える工業用ロボットにも適用できる。本実施形態は、補助装置として1軸の回転関節のみを備えるポジショナ42のみを備える工業用ロボットに本発明を適用した例である。
(Third embodiment)
In the first and second embodiments, the auxiliary device (the moving device 12 and the positioner 32) includes three linear motion joints, but the present invention only includes a positioner having only one or two-axis rotary joints as the auxiliary device. It can also be applied to industrial robots equipped with This embodiment is an example in which the present invention is applied to an industrial robot including only a positioner 42 including only a single-axis rotary joint as an auxiliary device.
図9を参照すると、ポジショナ42は水平方向の軸線(ワールド座標系ΣworldのYw軸)周りに回転する一つの回転関節PJのみを備える。回転関節PJは、駆動用のモータMOと位置センサSEを備える。図9においてΣposiはポジショナ42のワーク17の取付面に固定されたポジショナ座標である。本実施形態の他の機械的な構成は、第2実施形態と同一である。また、制御装置13の構成も第2実施形態の制御装置13(図7参照)と同様である。
Referring to FIG. 9, the positioner 42 includes only one rotational joint PJ that rotates around a horizontal axis (Yw axis of the world coordinate system Σworld). The rotary joint PJ includes a driving motor MO and a position sensor SE. In FIG. 9, Σposi is positioner coordinates fixed to the mounting surface of the
図10A及び図10Bに示すマニピュレータ11及びポジショナ42の制御は、第2実施形態における制御(図8A及び図8B)と同様である。具体的には、図10A及び図10BのステップS10−1〜S10−10,S10−13〜S10−16は、それぞれ図8A及び図8BのS8−1〜S8−10,S8−14〜S8−18と同様である。
Control of the
本実施形態では、補正ポジショナ目標値演算部37により実行される特異点回避のための補正ポジショナ目標値Jpta(t)’の求め方が第2実施形態とは異なる。第3実施形態では、予備補正目標関節角度Jmta(t)’を計算し、順キネマティクスにより予備補正ツール目標位置base Pta(t)’求め、この予備補正ツール目標位置basePta(t)’とツール目標値base Pta(t)から式(2)より補正量ΔPを求める(図8BのステップS8−11〜S8−13)。これに対して、本実施形態では特異点近傍であるか否かの判別閾値ΔJsを補正量ΔPに設定する(図10BのステップS10−11)。具体的には、J5>+ΔJsの状態で経路移動中、時刻t(次時刻)の目標関節角度Jmta(t)においてJ5ta<+ΔJsとなった場合、+ΔJsを補正量ΔPに設定する。また、また、J5<−ΔJsの状態で経路移動中、時刻tの目標関節角度Jmta(t)においてJ5ta>−ΔJsとなった場合、−ΔJsを補正量ΔPに設定する。以下の式(7)に本実施形態における補正量ΔPを示す。 In the present embodiment, the method for obtaining the corrected positioner target value Jpta (t) ′ for avoiding the singular point, which is executed by the corrected positioner target value calculation unit 37, is different from that in the second embodiment. In the third embodiment, the preliminary correction target joint angle Jmta (t) ′ is calculated, the preliminary correction tool target position base Pta (t) ′ is obtained by forward kinematics, and the preliminary correction tool target position basePta (t) ′ and the tool are obtained. From the target value base Pta (t), a correction amount ΔP is obtained from equation (2) (steps S8-11 to S8-13 in FIG. 8B). On the other hand, in the present embodiment, the determination threshold value ΔJs as to whether or not it is near a singular point is set to the correction amount ΔP (step S10-11 in FIG. 10B). Specifically, during the path movement in the state of J5> + ΔJs, when J5ta <+ ΔJs at the target joint angle Jmta (t) at time t (next time), + ΔJs is set as the correction amount ΔP. Also, during the path movement in the state of J5 <−ΔJs, when J5ta> −ΔJs at the target joint angle Jmta (t) at time t, −ΔJs is set to the correction amount ΔP. The following equation (7) shows the correction amount ΔP in the present embodiment.
この補正量Δにより、ポジショナ目標値Jpta(t)(=βp)を補正することにより時刻tにおけるツール先端16aが特異点近傍範囲外となる。以下の式(8)に補正ポジショナ目標値Jpta(t)’を示す。
By correcting the positioner target value Jpta (t) (= βp) with this correction amount Δ, the
補正ポジショナ目標値Jpta(t)’算出後の演算は、前述のように第2実施形態と同様である(ステップS10−12〜S10−15)。 The calculation after the correction positioner target value Jpta (t) 'is calculated is the same as that in the second embodiment as described above (steps S10-12 to S10-15).
図11Aに示すように、仮に特異点回避のための動作を実行しなければ時刻tにマニピュレータ11の姿勢が特異点となる場合でも、本実施形態では図11Bにおいて矢印Bで示すようにポジショナ42によってワーク17を回転することでマニピュレータ11の姿勢が特異点近傍となるのを回避している。このポジショナ42の回転補正により重力方向(ワールド座標系worldのZw方向)に対するトーチ先端16aの姿勢角は、ΔJsだけ変化するが、この角度は数度以下であり加工品質上実質的に問題とならない程度の微少量である。
As shown in FIG. 11A, even if the posture of the
本実施形態のように、手首3軸が1点で交わるロール・ベンド・ロール型の手首を有するマニピュレータの場合に、回転関節のみを有するポジショナにより本発明を実施する場合、ポジショナの回転関節の少なくとも1つの回転成分がマニピュレータの第5軸(RJm5)の回転成分とほぼ一致する配置関係である必要がある。例えば、マニピュレータが前述の手首を有する場合、重量方向(ワールド座標系ΣworldのZw軸)周りに回転する1つの回転関節のみを備えるターンテーブル型のポジショナでは本発明を実施できない。
In the case of a manipulator having a roll-bend-roll-type wrist in which
本発明は前記実施形態に限定されず、種々の変形が可能である。例えば、マニピュレータに移動装置とポジショナの両方を組み合わせた場合でも本発明を適用できる。また、特異点近傍であるか否かの判別は式(1)に限定されず、マニピュレータの構成等に応じて他の手法で特異点近傍を判別してもよい。さらに、本発明は工業用ロボット動作中の実時間制御における特異点回避だけでなく、PTP型の工業用ロボットのオフライン教示における経路計画において、経路途中で特異点が発生しないようにマニピュレータと補助装置の位置データを作成する際にも応用できる。 The present invention is not limited to the above embodiment, and various modifications can be made. For example, the present invention can be applied even when both a moving device and a positioner are combined with a manipulator. Further, the determination of whether or not it is in the vicinity of the singular point is not limited to the expression (1), and the vicinity of the singular point may be determined by another method according to the configuration of the manipulator. Furthermore, the present invention provides not only singularity avoidance in real-time control during industrial robot operation, but also a manipulator and auxiliary device so that no singularity is generated in the course of the route in the offline teaching of the PTP type industrial robot. It can also be applied when creating position data.
11 マニピュレータ
11a 台座
12 移動装置
13 制御装置
14 教示装置
16 ツール
17 ワーク
21 経路生成部
22 ツール目標値演算部
23 移動装置目標値演算部
24 第1座標変換部
25 目標関節角度演算部
26 特異点判別部
27 補正移動装置目標値演算部
28 第2座標変換部
29 補正目標関節角度演算部
30 駆動部
32,42 ポジショナ
33 ポジショナ目標値演算部
37 補正ポジショナ目標値演算部
DESCRIPTION OF
Claims (7)
前記制御装置は、
予め定められた固定直交座標系における次時刻のツール先端の位置及び姿勢の目標値であるツール目標値を計算するツール目標値演算手段と、
前記次時刻の前記補助装置の位置及び姿勢の目標値である補助装置目標値を計算する補助装置目標値演算手段と、
前記補助装置目標値を使用して、前記ツール目標値をマニピュレータ座標系に変換する第1の座標変換演算手段と、
前記マニピュレータ座標系に変換された前記ツール目標値の逆キネマティクス演算により、前記次時刻における前記マニピュレータの各関節の関節角度の目標値である目標関節角度を計算する目標関節角度演算手段と、
前記目標関節角度が特異点近傍であるか否かを判別する特異点判別手段と、
前記特異点判別手段が特異点近傍を判別すると、前記次時刻の前記ツール先端の前記ワークに対する位置及び姿勢を維持しつつ、前記次時刻のマニピュレータの姿勢が特異点近傍範囲外となるように、前記補助装置目標値を補正して補正補助装置目標値を計算する補正補助装置目標値演算手段と、
前記補正補助装置目標値を使用して、前記次時刻の前記固定直交座標系における前記ツール目標値をマニピュレータ座標系に変換する第2の座標変換演算手段と、
前記第2の座標変換手段により前記マニピュレータ座標系に変換されたツール目標値の逆キネマティクス演算により、前記次時刻における前記マニピュレータの関節角度の目標値である補正目標関節角度を計算する補正目標関節角度演算手段と、
前記特異点判別手段が特異点近傍を判別していなければ前記目標関節角度と前記補助装置目標値により前記マニピュレータと前記補助装置を駆動する一方、前記特異点判別手段が特異点近傍を判別していれば前記補正目標関節角度と前記補正補助装置目標値とにより前記マニピュレータと前記補助装置を駆動する駆動手段と
を備える、工業用ロボット。 Industrial use comprising an articulated manipulator having a tool at the tip, a work machined by the tool and / or an auxiliary device for moving the manipulator, and a control device for operating the manipulator and the auxiliary device in synchronization. A robot,
The controller is
Tool target value calculation means for calculating a tool target value which is a target value of the position and orientation of the tool tip at the next time in a predetermined fixed orthogonal coordinate system;
Auxiliary device target value calculating means for calculating an auxiliary device target value which is a target value of the position and posture of the auxiliary device at the next time;
First coordinate transformation calculation means for transforming the tool target value into a manipulator coordinate system using the auxiliary device target value;
A target joint angle calculation means for calculating a target joint angle that is a target value of a joint angle of each joint of the manipulator at the next time by inverse kinematics calculation of the tool target value converted into the manipulator coordinate system;
Singularity determination means for determining whether or not the target joint angle is near a singularity;
When the singular point determination means determines the vicinity of the singular point, while maintaining the position and posture of the tool tip at the next time relative to the workpiece, so that the manipulator posture at the next time is out of the singular point vicinity range, Correction auxiliary device target value calculating means for correcting the auxiliary device target value to calculate a correction auxiliary device target value;
Second coordinate conversion calculation means for converting the tool target value in the fixed orthogonal coordinate system at the next time into a manipulator coordinate system using the correction auxiliary device target value;
A corrected target joint that calculates a corrected target joint angle, which is a target value of the joint angle of the manipulator at the next time, by inverse kinematics calculation of the tool target value converted into the manipulator coordinate system by the second coordinate conversion means. An angle calculation means;
If the singular point discriminating means does not discriminate near the singular point, the manipulator and the auxiliary device are driven by the target joint angle and the auxiliary device target value, while the singular point discriminating unit discriminates the vicinity of the singular point. Then, an industrial robot comprising: the manipulator and driving means for driving the auxiliary device according to the correction target joint angle and the correction auxiliary device target value.
前記目標関節角度を予め定められた特異点近傍範囲外となるように補正して得られる予備補正目標関節角度を計算し、
前記予備補正目標関節角度の順キネマティクス演算によりマニピュレータ座標系における予備補正ツール目標値を計算し、
前記予備補正ツール目標値とマニピュレータ座標系における前記ツール目標値との差である補正値を計算し、
前記補正値を使用して、前記補助装置目標値から前記補正補助装置目標値を計算する、請求項1に記載の工業用ロボット。 The correction assist device target value calculation means includes:
Calculating a preliminary corrected target joint angle obtained by correcting the target joint angle to be outside a predetermined singular point vicinity range;
Calculate the preliminary correction tool target value in the manipulator coordinate system by forward kinematics calculation of the preliminary correction target joint angle,
Calculating a correction value that is a difference between the preliminary correction tool target value and the tool target value in a manipulator coordinate system;
The industrial robot according to claim 1, wherein the correction assist device target value is calculated from the assist device target value using the correction value.
前記固定直交座標系における前記ツール先端の位置及び姿勢の時間変化を規定するツール経路を生成するツール経路生成手段と、
前記補助装置の位置及び姿勢の時間変化を規定する補助装置経路を生成する補助装置経路生成手段と
をさらに備え、
前記ツール目標値演算手段は、前記ツール経路に基づいて前記次時刻の前記ツール目標値を計算し、かつ
前記補助装置目標値演算手段は、前記補助装置経路に基づいて前記次時刻の前記補助装置目標値を計算する、請求項1又は請求項2に記載の工業用ロボット。 The controller is
Tool path generation means for generating a tool path that defines temporal changes in the position and orientation of the tool tip in the fixed orthogonal coordinate system;
An auxiliary device path generating means for generating an auxiliary device path for defining a time change in the position and posture of the auxiliary device; and
The tool target value calculation means calculates the tool target value at the next time based on the tool path, and the auxiliary device target value calculation means calculates the auxiliary device at the next time based on the auxiliary device path. The industrial robot according to claim 1 or 2, wherein a target value is calculated.
前記補助装置として回転関節のみを有するポジショナのみを備え、
前記ポジショナの回転関節の少なくとも一つが前記マニピュレータの前記第5軸と同方向に回転するものである、請求項1から請求項3のいずれか1項に記載の工業用ロボット。 The manipulator has a wrist with a vertical articulated type and six axes, a fourth axis is a roll, a fifth axis is a vent, and a sixth axis is a roll.
Only the positioner having only the rotary joint as the auxiliary device,
The industrial robot according to any one of claims 1 to 3, wherein at least one of the rotary joints of the positioner rotates in the same direction as the fifth axis of the manipulator.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2008006022A JP2009166164A (en) | 2008-01-15 | 2008-01-15 | Industrial robot |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2008006022A JP2009166164A (en) | 2008-01-15 | 2008-01-15 | Industrial robot |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2009166164A true JP2009166164A (en) | 2009-07-30 |
Family
ID=40967943
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2008006022A Pending JP2009166164A (en) | 2008-01-15 | 2008-01-15 | Industrial robot |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2009166164A (en) |
Cited By (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102243620A (en) * | 2011-06-02 | 2011-11-16 | 安凯 | Rapid solving method for inverse kinematics problem of six-joint mechanical arm |
WO2012121125A1 (en) * | 2011-03-08 | 2012-09-13 | 株式会社神戸製鋼所 | Control device, control method and control program for articulated robot |
WO2013175573A1 (en) * | 2012-05-22 | 2013-11-28 | 三菱電機株式会社 | Numeric control device |
JP2014014901A (en) * | 2012-07-09 | 2014-01-30 | Toshiba Corp | Robot controller |
KR101411503B1 (en) * | 2013-01-04 | 2014-06-24 | 삼성중공업 주식회사 | Robot control apparatus and method thereof |
JP2020163551A (en) * | 2019-03-29 | 2020-10-08 | セイコーエプソン株式会社 | Control method and robot system |
JP2022163048A (en) * | 2017-02-15 | 2022-10-25 | パーシモン テクノロジーズ コーポレイション | Material-handling robot with multiple end-effectors |
CN116038686A (en) * | 2022-10-14 | 2023-05-02 | 深圳市大族机器人有限公司 | Robot singular point avoidance method, apparatus, computer device, and storage medium |
-
2008
- 2008-01-15 JP JP2008006022A patent/JP2009166164A/en active Pending
Cited By (15)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2012121125A1 (en) * | 2011-03-08 | 2012-09-13 | 株式会社神戸製鋼所 | Control device, control method and control program for articulated robot |
US9199374B2 (en) | 2011-03-08 | 2015-12-01 | Kobe Steel, Ltd. | Control unit, control method, and control program of articulated robot |
CN103429398A (en) * | 2011-03-08 | 2013-12-04 | 株式会社神户制钢所 | Control device, control method and control program for articulated robot |
CN102243620A (en) * | 2011-06-02 | 2011-11-16 | 安凯 | Rapid solving method for inverse kinematics problem of six-joint mechanical arm |
CN104321707A (en) * | 2012-05-22 | 2015-01-28 | 三菱电机株式会社 | Numeric control device |
TWI498695B (en) * | 2012-05-22 | 2015-09-01 | Mitsubishi Electric Corp | Numeric control device |
WO2013175573A1 (en) * | 2012-05-22 | 2013-11-28 | 三菱電機株式会社 | Numeric control device |
US9897992B2 (en) | 2012-05-22 | 2018-02-20 | Mitsubishi Electric Corporation | Numerical control apparatus |
JP2014014901A (en) * | 2012-07-09 | 2014-01-30 | Toshiba Corp | Robot controller |
KR101411503B1 (en) * | 2013-01-04 | 2014-06-24 | 삼성중공업 주식회사 | Robot control apparatus and method thereof |
JP2022163048A (en) * | 2017-02-15 | 2022-10-25 | パーシモン テクノロジーズ コーポレイション | Material-handling robot with multiple end-effectors |
JP2020163551A (en) * | 2019-03-29 | 2020-10-08 | セイコーエプソン株式会社 | Control method and robot system |
JP7259487B2 (en) | 2019-03-29 | 2023-04-18 | セイコーエプソン株式会社 | Control method and robot system |
CN116038686A (en) * | 2022-10-14 | 2023-05-02 | 深圳市大族机器人有限公司 | Robot singular point avoidance method, apparatus, computer device, and storage medium |
CN116038686B (en) * | 2022-10-14 | 2023-12-08 | 深圳市大族机器人有限公司 | Robot singular point avoidance method, apparatus, computer device, and storage medium |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP2009166164A (en) | Industrial robot | |
De Graaf et al. | Real-time seam tracking for robotic laser welding using trajectory-based control | |
JP3207728B2 (en) | Control method of redundant manipulator | |
JP5283541B2 (en) | Robot motion path generation method | |
Baeten et al. | Hybrid vision/force control at corners in planar robotic-contour following | |
WO2017113219A1 (en) | Method, apparatus and system for planning bending following trajectory | |
JP5144035B2 (en) | Industrial robot tool position / posture control method and control system | |
EP2660013B1 (en) | Method of controlling seven-shaft multi-joint robot, control program, and robot control device | |
JP5565302B2 (en) | Robot control apparatus and robot posture interpolation method | |
Horsch et al. | Cartesian spline interpolation for industrial robots | |
JP5790840B2 (en) | Robot control apparatus and robot posture interpolation method | |
JP2010231575A (en) | Device and method for instruction of off-line of robot, and robot system | |
JP2010142910A (en) | Robot system | |
EP0601206B1 (en) | Method for controlling operation of a robot arm | |
JP2004094399A (en) | Control process for multi-joint manipulator and its control program as well as its control system | |
JP4396553B2 (en) | Robot controller, computer program | |
Shanmugasundar et al. | Method of Trajectory Generation of a Generic Robot using Bresenham’s Circle Algorithm | |
US20230286143A1 (en) | Robot control in working space | |
JP5382148B2 (en) | Robot motion control apparatus and motion control method thereof | |
JP2011062763A (en) | Robot controller | |
JP4745921B2 (en) | Control method of welding robot | |
JPH09201784A (en) | Teaching device for robot | |
JPH09212229A (en) | Teaching device for robot | |
JPH09251308A (en) | Tool interference checking method for industrial robot | |
JP6990120B2 (en) | Robot control device |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20110201 |