JPH05185386A - Linear motion control system for robot finger - Google Patents
Linear motion control system for robot fingerInfo
- Publication number
- JPH05185386A JPH05185386A JP572192A JP572192A JPH05185386A JP H05185386 A JPH05185386 A JP H05185386A JP 572192 A JP572192 A JP 572192A JP 572192 A JP572192 A JP 572192A JP H05185386 A JPH05185386 A JP H05185386A
- Authority
- JP
- Japan
- Prior art keywords
- linear movement
- robot hand
- command
- speed
- robot
- 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.)
- Withdrawn
Links
Landscapes
- Control Of Position Or Direction (AREA)
- Manipulator (AREA)
Abstract
Description
【0001】[0001]
【産業上の利用分野】本発明はロボット手先の直線移動
を制御するロボット手先の直線移動制御方式に関し、特
に動作プログラムに基づくロボット手先の直線移動制御
に遠隔操作を協調させたロボット手先の直線移動制御方
式。BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to a robot hand linear movement control method for controlling the linear movement of a robot hand, and more particularly to a linear movement of a robot hand which is coordinated with remote control for linear movement control of the robot hand based on an operation program. control method.
【0002】宇宙環境等の人間が直接行くことのできな
い極限環境にロボットを配置した場合、遠隔地からその
ロボットを制御する方法が必要となる。このような場
合、従来はマスタスレーブ制御による遠隔操作が一般的
であるが、今後はオペレータの負担の軽減や作業の信頼
性を高めるために、プログラムによる自律動作と、人間
による判断あるいは人間による直接遠隔操作とを協調さ
せた制御形態をとることが重要となる。本発明は、この
制御形態を自律動作の基本となるロボット手先の直線移
動制御に適用した場合に関するものである。When a robot is placed in an extreme environment such as a space environment where humans cannot go directly, a method of controlling the robot from a remote place is required. In such a case, remote operation by master-slave control is generally used in the past, but in the future, in order to reduce the burden on the operator and increase the reliability of work, autonomous operation by a program and human judgment or direct human It is important to take a control form that cooperates with remote operation. The present invention relates to a case where this control mode is applied to linear movement control of a robot hand, which is the basis of autonomous operation.
【0003】[0003]
【従来の技術】従来、FAなどの分野においてもロボッ
ト手先の直線移動制御は重要な機能であった。この直線
移動制御を図11及び図12を用いて説明する。2. Description of the Related Art Conventionally, linear movement control of a robot hand has been an important function in the field of FA and the like. This linear movement control will be described with reference to FIGS. 11 and 12.
【0004】図11はロボット手先の直線移動制御の説
明図である。図において、ロボット手先が空間上のA点
からB点までの距離dを指定された線速度vで移動する
場合を想定する。この場合、ロボット言語(動作プログ
ラム)「line MoveA to B with
V」に基づいて補間演算が行われ、各サンプリング点で
の目標位置Pr(n) (=( Xn,Yn) )が求められ
る。その目標位置Pr(n) は次式(1)で与えられる。
なお、始点A(XA ,YA )(=Pr(0) =(X0 ,Y0
) ),終点B(XB ,YB )(=Pr(m) =( Xm ,
Ym ) )とする。FIG. 11 is an explanatory diagram of the linear movement control of the robot hand. In the figure, it is assumed that the robot hand moves at a specified linear velocity v over a distance d from point A to point B in space. In this case, the robot language (motion program) “line MoveA to B with
Interpolation calculation is performed based on “V” to obtain the target position Pr (n) (= (Xn, Yn)) at each sampling point. The target position Pr (n) is given by the following equation (1).
The starting point A (XA, YA) (= Pr (0) = (X0, Y0
)), End point B (XB, YB) (= Pr (m) = (Xm,
Ym)).
【0005】 Xn=X0 +(XB −XA )/m・n Yn=Y0 +(YB −YA )/m・n ・・・・(1) ここで、mは移動に必要なサンプル数であり、次式
(2)で与えられる。Xn = X0 + (XB−XA) / m · n Yn = Y0 + (YB−YA) / m · n (1) where m is the number of samples required for movement, It is given by the following equation (2).
【0006】m=d/(V・Δt) ただし、d:移動距離(={(XB −XA )2 +(YB
−YA )2 }1/2 ) V:移動指定速度 Δt:サンプリング時間 図12は従来のロボット手先の直線移動制御方式のブロ
ック図である。図において、補間演算部100は、動作
プログラム「line Move A toB wit
h V」に基づいて始点Aから終点Bまでの補間演算を
行い、各サンプリング点での目標位置Pr(n) に応じた
指令信号を出力する。位置決めサーボ系200は、その
指令信号によりロボット(マニピュレータ)400を駆
動し、ロボット手先410の位置決めを行う。ロボット
手先410は各サンプリング点での目標位置Pr(n) を
経由しつつ、始点Aから終点Bまで一定速度Vで直線移
動する。M = d / (VΔt) where d: moving distance (= {(XB −XA) 2 + (YB
-YA) 2 } 1/2 ) V: Designated movement speed Δt: Sampling time FIG. 12 is a block diagram of a conventional linear movement control system for a robot hand. In the figure, the interpolation calculation unit 100 shows an operation program “line Move A to B wit”.
The interpolation calculation from the start point A to the end point B is performed based on "hV", and a command signal corresponding to the target position Pr (n) at each sampling point is output. The positioning servo system 200 drives the robot (manipulator) 400 according to the command signal and positions the robot hand 410. The robot hand 410 moves linearly at a constant speed V from the starting point A to the ending point B while passing through the target position Pr (n) at each sampling point.
【0007】このように、従来の直線移動制御では、所
定の動作プログラムに基づいて直線移動を開始すると終
点に達するまで一定速度で移動する。このため、オペレ
ータはその直線移動に介在することができなかった。ま
た、介在するにしても精々停止させるのみであった。こ
のような動作プログラムに基づく直線移動制御は、作業
環境が整備されているFAなどの分野では十分に活用さ
れている。As described above, in the conventional linear movement control, when the linear movement is started based on a predetermined operation program, the linear movement is moved at a constant speed until the end point is reached. Therefore, the operator could not intervene in the linear movement. Moreover, even if it intervened, it was only stopped at best. The linear movement control based on such an operation program is fully utilized in the field such as FA where the work environment is maintained.
【0008】[0008]
【発明が解決しようとする課題】しかし、整備されない
環境において実行される場合、プログラミング時に想定
されない状況においては、そのプログラムされた動作を
実行時に修正できる必要がある。例えば、始点Aから終
点Bまでの間を動作プログラムによって直線移動中に予
期しない障害物があった場合、それを避ける動作を実行
時に行えるようにしておく必要がある。However, when executed in an unprepared environment, it is necessary to be able to modify its programmed behavior at run time in situations that are not expected at the time of programming. For example, when there is an unexpected obstacle during linear movement by the operation program between the start point A and the end point B, it is necessary to perform an operation for avoiding the obstacle at the time of execution.
【0009】本発明はこのような点に鑑みてなされたも
のであり、動作プログラムによるロボット手先の直線移
動時にオペレータがその動作を修正することができるロ
ボット手先の直線移動制御方式を提供することを目的と
する。The present invention has been made in view of the above circumstances, and it is an object of the present invention to provide a linear movement control system for a robot hand, which allows an operator to correct the movement of the robot hand when the robot hand moves linearly according to an operation program. To aim.
【0010】[0010]
【課題を解決するための手段】図1、図2及び図3は本
発明の原理ブロック図である。図1において、本発明の
ロボット手先の直線移動制御方式は、所定の動作プログ
ラムに基づいてロボット手先41に指定速度での直線移
動を行わせる指令信号を出力する直線移動指令手段10
と、その指令信号に応じてロボット手先41の位置決め
を行う位置決めサーボ手段20と、指定速度の変更を直
線移動指令手段10に指令する速度変更指令手段30と
から構成される。1, 2 and 3 are block diagrams of the principle of the present invention. Referring to FIG. 1, a linear movement control system for a robot hand according to the present invention outputs a command signal for causing the robot hand 41 to perform a linear movement at a specified speed based on a predetermined operation program.
And a positioning servo means 20 for positioning the robot hand 41 according to the command signal, and a speed change command means 30 for commanding the linear movement command means 10 to change the designated speed.
【0011】図2において、本発明のロボット手先の直
線移動制御方式は、図1の構成に加えて、直線移動指令
手段10からの直線移動指令を修正し、直線移動の軌道
を変更する軌道修正指令手段50を有する。Referring to FIG. 2, the robot hand linear movement control system according to the present invention, in addition to the configuration of FIG. 1, corrects the linear movement command from the linear movement command means 10 to change the trajectory of the linear movement. It has a command means 50.
【0012】図3においては、図1の構成に加えて、速
度変更指令手段30と直線移動指令手段10との間にフ
ィルタ60が設けられ、このフィルタ60を経由して速
度変更指令手段30からの指定速度変更指令が、直線移
動指令手段10に入力される。In FIG. 3, in addition to the configuration of FIG. 1, a filter 60 is provided between the speed change command means 30 and the linear movement command means 10, and the speed change command means 30 passes through the filter 60. The designated speed change command is input to the linear movement command means 10.
【0013】[0013]
【作用】図1において、直線移動指令手段10は、所定
の動作プログラムに基づいてロボット手先41に指定速
度での直線移動を行わせるべく補間演算を行い、各サン
プリング点での目標位置に応じた指令信号を出力する。
その目標位置は、例えば予め設定されている目標位置と
位置決めサーボ手段20からフィードバックされたきた
現在位置とを評価して求められる。また、速度変更指令
手段30から指定速度の変更指令を受けたときは指定速
度を変更し、その変更した指定速度に基づいて補間演算
を行い、各サンプリング点での目標位置に応じた指令信
号を出力する。その指令信号に応じて、位置決めサーボ
手段20はロボット手先41の位置決めを行い、ロボッ
ト手先41に各サンプリング点での目標位置を経由さ
せ、始点から終点まで直線移動を行わせる。このよう
に、ロボット手先41は、所定の動作プログラムに基づ
いて指定速度での直線移動を行うとともに、その直線移
動中に指定速度が変更されると、その変更された指定速
度に基づいて直線移動を行う。したがって、オペレータ
の指示により、必要に応じてロボット手先の速度変更、
停止及び移動方向逆転を行うことができる。In FIG. 1, the linear movement command means 10 performs interpolation calculation based on a predetermined operation program so as to cause the robot hand 41 to linearly move at a specified speed, and responds to the target position at each sampling point. Output a command signal.
The target position is obtained, for example, by evaluating a preset target position and the current position fed back from the positioning servo means 20. Further, when a designated speed change command is received from the speed change command means 30, the designated speed is changed, interpolation calculation is performed based on the changed designated speed, and a command signal corresponding to the target position at each sampling point is generated. Output. In response to the command signal, the positioning servo means 20 positions the robot hand 41 and causes the robot hand 41 to move linearly from the start point to the end point via the target position at each sampling point. In this way, the robot hand 41 moves linearly at a specified speed based on a predetermined operation program, and if the specified speed is changed during the linear movement, the robot hand 41 moves linearly based on the changed specified speed. I do. Therefore, according to the operator's instruction, the speed of the robot hand can be changed if necessary,
It is possible to stop and reverse the moving direction.
【0014】図2において、軌道修正指令手段50は、
直線移動指令手段10からの直線移動指令を修正し直線
移動の軌道を変更する。このように、ロボット手先41
は、動作プログラムに基づいて始点から終点まで直線移
動する間に、オペレータの指示により、必要に応じてそ
の軌道が修正される。したがって、障害物が存在した場
合でも、その障害物を避けて通過させることができる。In FIG. 2, the trajectory correction command means 50 is
The trajectory of the linear movement is changed by correcting the linear movement command from the linear movement command means 10. In this way, the robot hand 41
Is linearly moved from the start point to the end point based on the operation program, the trajectory of the operator is corrected according to the instruction of the operator as necessary. Therefore, even if there is an obstacle, the obstacle can be avoided and passed.
【0015】図3において、フィルタ60を設けたこと
により、不連続な指定速度変更指令が与えられても、そ
の指令による速度変更をなめらかに行うことができる。In FIG. 3, by providing the filter 60, even if a discontinuous designated speed change command is given, the speed can be smoothly changed by the command.
【0016】[0016]
【実施例】以下、本発明の一実施例を図面に基づいて説
明する。図4は本発明のロボット手先の直線移動制御方
式を実行する全体構成を示す図である。図において、本
発明のロボット手先の直線移動制御方式は、ホスト計算
機3、ロボット制御用計算機1、マニピュレータコント
ローラ2及びマニピュレータ(ロボット)40Aから構
成される。ホスト計算機3のロボット言語ロード部35
は、プログラミングされたロボット言語列(動作プログ
ラム)をロボット制御用計算機1のロボット言語インタ
プリタ11Aにロードする。ロボット言語インタプリタ
11Aは、例えば、下記(a)、(b)及び(c)のよ
うな直線移動に関するロボット言語列を解釈し、その情
報A,B,C,D,Vを補間演算部11に送る。DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS An embodiment of the present invention will be described below with reference to the drawings. FIG. 4 is a diagram showing an overall configuration for executing the robot hand linear movement control system of the present invention. In the figure, the robot hand linear movement control system of the present invention comprises a host computer 3, a robot control computer 1, a manipulator controller 2, and a manipulator (robot) 40A. Robot language loading unit 35 of host computer 3
Loads the programmed robot language string (operation program) into the robot language interpreter 11A of the robot control computer 1. The robot language interpreter 11A interprets, for example, a robot language string relating to linear movement as shown in (a), (b) and (c) below, and the information A, B, C, D, V is provided to the interpolation calculation unit 11. send.
【0017】 (a):line Move A to B with V1 (b):line Move B to C with V2 (c):line Move C to D with V3 補間演算部11は、その情報に基づいてロボット40A
の直線移動を制御すべく補間演算を行い、各サンプリン
グ点での目標位置Pr(n) を求め、その目標位置Pr
(n) に応じた指令信号をマニピュレータコントローラ2
の位置決めサーボ系21に出力する。この各サンプリン
グ点での目標位置Pr(n) を求める際に、補間演算部1
1はサンプリング毎に、現在位置Pact と最終目標位置
Pref とを評価し、そのサンプリングでの目標位置Pr
(n) を求める。なお、現在位置Pact は、位置決めサー
ボ系21からフィードバックされる。(A): line Move A to B with V1 (b): line Move B to C with V2 (c): line Move C to D with V3 The interpolation calculator 11 is based on the information, and the robot 40A.
Interpolation calculation is performed to control the linear movement of the target position Pr (n) at each sampling point, and the target position Pr (n) is calculated.
The command signal according to (n) is sent to the manipulator controller 2
Output to the positioning servo system 21. When calculating the target position Pr (n) at each sampling point, the interpolation calculation unit 1
1 evaluates the current position Pact and the final target position Pref for each sampling, and determines the target position Pr at the sampling.
Find (n). The current position Pact is fed back from the positioning servo system 21.
【0018】位置決めサーボ系21のサーボモータは、
補間演算部11からのパルス信号に応じて駆動し、その
駆動によりロボット手先41Aは各サンプリング点での
目標位置Pr(n) を経由しつつ、始点Pr(0) から終点
(最終目標位置)Pref まで直線移動を行う。例えば、
上記(a)(b)(c)のロボット言語列が実行される
と、ロボット手先41Aは、A点からB点までは線速度
指令値V1で、B点からC点までは線速度指令値V2
で、C点からD点までは線速度指令値V3でそれぞれ直
線移動する。The servo motor of the positioning servo system 21 is
The robot hand 41A is driven according to the pulse signal from the interpolation calculation unit 11, and the driving causes the robot hand 41A to pass through the target position Pr (n) at each sampling point, and from the start point Pr (0) to the end point (final target position) Pref. Move straight to. For example,
When the robot language strings (a), (b), and (c) are executed, the robot hand 41A has the linear velocity command value V1 from the point A to the point B, and the linear velocity command value from the point B to the point C. V2
Then, from the point C to the point D, each linearly moves at the linear velocity command value V3.
【0019】ホスト計算機3には速度モデファイア生成
部31が設けられている。この速度モデファイア生成部
31は、ホスト計算機3に接続されているダイヤル32
の回転量に応じた速度モデファイアVmod を生成する。
このダイヤル32の回転操作によって、オペレータは速
度モデファイアVmod を指定することができる。速度モ
デファイアVmod は、ロボット言語インタプリタ11A
に、また、フィルタ61を経由して補間演算部11にそ
れぞれ出力される。速度モデファイアVmod は、正負の
値をとりうる浮動小数点数であり、補間演算部11で
は、予め設定されている線速度指令値Vにこの速度モデ
ファイアVmod を掛けて、線速度の変更を行う。速度モ
デファイアVmod は、通常は値1に初期設定されてい
る。The host computer 3 is provided with a speed modifier generator 31. The speed modifier generating unit 31 includes a dial 32 connected to the host computer 3.
The velocity modifier Vmod is generated according to the rotation amount of.
By rotating the dial 32, the operator can specify the speed modifier Vmod. Velocity modifier Vmod is a robot language interpreter 11A
To the interpolation calculation unit 11 via the filter 61. The velocity modifier Vmod is a floating-point number that can take positive and negative values, and the interpolation calculator 11 multiplies the preset linear velocity command value V by this velocity modifier Vmod to change the linear velocity. .. The velocity modifier Vmod is normally initialized to the value 1.
【0020】ただし、オペレータのダイヤル32の操作
により速度モデファイアVmod が与えられる場合、不連
続に与えられる場合があり、極端な場合には、1から−
1に変化させるような逆転動作も含まれる。そこで、上
述したようにフィルタ61を設け、このフィルタ61を
経由して速度モデファイアVmod が補間演算部11に入
力されるようにした。フィルタ61として、例えば1次
遅れフィルタや移動平均フィルタを入れると、極端な速
度モデファイアVmod の変化にも、なめらかに速度を変
化させることができる。However, when the speed modifier Vmod is given by the operator's operation of the dial 32, it may be given discontinuously.
A reversing operation such as changing to 1 is also included. Therefore, the filter 61 is provided as described above, and the velocity modifier Vmod is input to the interpolation calculation unit 11 via the filter 61. If, for example, a first-order lag filter or a moving average filter is inserted as the filter 61, the speed can be smoothly changed even with an extreme change in the speed modifier Vmod.
【0021】また、ホスト計算機3には、軌道モデファ
イア生成部51が設けられている。この軌道モデファイ
ア生成部51は、ホスト計算機3に接続されているジョ
イスティック52の傾け量に比例した位置修正信号(Δ
Xmod ,ΔYmod )を軌道モデファイアPmod として逐
次生成し出力する。オペレータはこのジョイスティック
52の手動操作によって軌道モデファイアPmod を任意
に指定することができる。オペレータによるジョイステ
ィック52の操作がない場合は、値0が出力され、ロボ
ット手先41Aは、動作プログラム通りの移動動作を行
う。The host computer 3 is also provided with an orbit modifier generator 51. The trajectory modifier generation unit 51 uses the position correction signal (Δ) proportional to the tilt amount of the joystick 52 connected to the host computer 3.
Xmod, ΔYmod) are sequentially generated and output as the trajectory modifier Pmod. The operator can arbitrarily specify the trajectory modifier Pmod by manually operating the joystick 52. When the joystick 52 is not operated by the operator, the value 0 is output, and the robot hand 41A performs the movement operation according to the operation program.
【0022】軌道モデファイアPmod は、補間演算部1
1の出力側に設けられた加算器11Bに入力される。加
算器11Bは、補間演算部11から出力された各サンプ
リング点での目標位置Pr(n) (=( Xn,Yn) )
と、位置修正信号(ΔXmod ,ΔYmod )とを加算し、
その加算して得られた新たな目標位置Pr(n) を位置指
令信号として位置決めサーボ系21に出力する。この位
置指令信号により、ロボット手先41Aの直線軌道が修
正される。The trajectory modifier Pmod is the interpolation calculation unit 1
1 is input to the adder 11B provided on the output side. The adder 11B outputs the target position Pr (n) (= (Xn, Yn)) at each sampling point output from the interpolation calculation unit 11.
And the position correction signals (ΔXmod, ΔYmod) are added,
The new target position Pr (n) obtained by the addition is output to the positioning servo system 21 as a position command signal. The position command signal corrects the linear trajectory of the robot hand 41A.
【0023】なお、加算器11Bと位置決めサーボ系2
1との間、及び位置決めサーボ系20と補間演算部11
との間には、図示されていない変換部があり、XY座標
データとロボット40Aの関節角データとの変換が行わ
れる。The adder 11B and the positioning servo system 2
1 and positioning servo system 20 and interpolation calculation unit 11
There is a conversion unit (not shown) between and, and the conversion between the XY coordinate data and the joint angle data of the robot 40A is performed.
【0024】このように、プログラム動作するロボット
40Aに、必要に応じてオペレータが遠隔操作により速
度変更及び軌道修正を行うことができる。したがって、
ロボット40Aと人間(オペレータ)との対話性を高め
ることができる。また、プログラム動作と遠隔操作を組
み合わせた効率的な作業をロボット40Aに行わせるこ
とができる。As described above, the operator can remotely change the speed and correct the trajectory of the robot 40A that operates as a program by remote control, if necessary. Therefore,
It is possible to enhance the interactivity between the robot 40A and a human (operator). Further, the robot 40A can be made to perform an efficient work by combining the program operation and the remote operation.
【0025】図5はロボット手先の速度変更を実行する
ためのフローチャートを示す図である。ここでは、ロボ
ット手先41Aが始点A(始点位置PA=Pr(0) )か
ら終点B(最終目標位置PB=Pref )まで直線移動す
る場合を想定している。図中Sに続く数字はステップ番
号を表す。 〔S1〕速度モデファイアVmod を得る。この速度モデ
ファイアVmod は、上述したように、オペレータのダイ
ヤル32操作によって生成され、ロボット制御用計算機
1の補間演算部11及びロボット言語インタプリタ11
Aに入力される。 〔S2〕今回のサンプリングにおける最終目標位置Pre
f を次の様に決める。FIG. 5 is a diagram showing a flowchart for changing the speed of the robot hand. Here, it is assumed that the robot hand 41A moves linearly from the starting point A (starting point position PA = Pr (0)) to the ending point B (final target position PB = Pref). The numbers following S in the figure represent step numbers. [S1] The velocity modifier Vmod is obtained. As described above, this velocity modifier Vmod is generated by the operator's operation of the dial 32, and the interpolation computing unit 11 and the robot language interpreter 11 of the robot control computer 1 are generated.
Input to A. [S2] Final target position Pre in this sampling
Determine f as follows.
【0026】 if Vmod ≧0 then Pref =PB else Pref =PA したがって、速度モデファイアVmod が正のときはロボ
ット手先41Aの移動方向は終点Bの方向に、また負の
ときは始点Aの方向に逆戻りすることになる。 〔S3〕今回のサンプリングにおける指定速度Vcur と
指定移動量Δdを次式(2)及び(3)から求める。If Vmod ≧ 0 then Pref = PBelse Pref = PA Therefore, when the velocity modifier Vmod is positive, the moving direction of the robot hand 41A is in the direction of the end point B, and when it is negative, it is in the direction of the start point A. Will be done. [S3] The specified speed Vcur and the specified movement amount Δd in this sampling are calculated from the following equations (2) and (3).
【0027】 Vcur =V×Vmod ・・・・・(2) Δd=Vcur ×Δt・・・・・(3) ここで、Δt:サンプリング時間 したがって、速度モデファイアVmod が0のときはVcu
r =0となり、ロボット手先41Aは停止する。 〔S4〕ロボット手先41Aの現在位置Pact を得る。
この現在位置Pact は、位置決めサーボ系20からのフ
ィードバックによって得られ、例えばサーボモータのエ
ンコーダによる各関節角検出データを座標変換して得ら
れるものである。 〔S5〕ロボット手先41Aの現在位置Pact と最終目
標位置Pref との距離dを次式(4)から求める。ただ
し、現在位置Pact (=(Xact ,Yact ))、最終目
標位置Pref (=( Xref,Yref))とする。 d=sqrt{(Xref −Xact )2 +(Yref −Yact )2 }・・・(4) 〔S6〕移動に必要なサンプル数i(整数)を次式
(5)から求める。Vcur = V × Vmod (2) Δd = Vcur × Δt (3) where Δt: sampling time Therefore, when the velocity modifier Vmod is 0, Vcu
r = 0 and the robot hand 41A stops. [S4] The current position Pact of the robot hand 41A is obtained.
This current position Pact is obtained by feedback from the positioning servo system 20, and is obtained by, for example, coordinate conversion of each joint angle detection data by the encoder of the servo motor. [S5] The distance d between the current position Pact of the robot hand 41A and the final target position Pref is calculated from the following equation (4). However, the current position Pact (= (Xact, Yact)) and the final target position Pref (= (Xref, Yref)) are set. d = determined from sqrt {(Xref -Xact) 2 + (Yref -Yact) 2} ··· (4) [S6] following equation sample number i (integer) required to move (5).
【0028】i=d/Δd・・・・・(5) 〔S7〕サンプル数iがi=0であるか否かを判別す
る。i=0であればステップS8に、そうでなければス
テップS9に進む。 〔S8〕ロボット手先41Aがほぼ最終目標位置Pref
に達している場合なので、今回サンプリングにおける目
標位置Pr(n) (=( Xn,Yn) )として最終目標位
置Pref を出力する。 〔S9〕今回のサンプリングにおける目標位置Pr(n)
(=( Xn,Yn) )を次式(6)及び(7)から求め
出力し、ステップS1に戻る。I = d / Δd (5) [S7] It is determined whether or not the sample number i is i = 0. If i = 0, the process proceeds to step S8, and if not, the process proceeds to step S9. [S8] The robot hand 41A is almost at the final target position Pref
Therefore, the final target position Pref is output as the target position Pr (n) (= (Xn, Yn)) in this sampling. [S9] Target position Pr (n) in this sampling
(= (Xn, Yn)) is calculated from the following equations (6) and (7) and output, and the process returns to step S1.
【0029】 Xn=Xact +(Xref −Xact )/i・・・・・(6) Yn=Yact +(Yref −Yact )/i・・・・・(7) 図6は速度モデファイアVmod による速度制御の例を示
す図であり、(A)は移動方向を逆転させる場合、
(B)は停止させる場合、(C)は減速させる場合をそ
れぞれ示す。図6(A)に示すように、速度モデファイ
アVmod を正から負に変更させた場合、ロボット手先4
1Aの移動方向は、A→B方向から逆転してB→A方向
となる。また、図6(B)に示すように、速度モデファ
イアVmod =0とすると、ロボット手先41Aの移動は
停止する。さらに、図6(C)に示すように、速度モデ
ファイアVmod を、例えば1→0.5→0.1のように
低減していくと、ロボット手先41Aはそれに応じて減
速する。Xn = Xact + (Xref−Xact) / i (6) Yn = Yact + (Yref−Yact) / i (7) FIG. 6 shows the velocity by the velocity modifier Vmod. It is a figure which shows the example of control, (A) is a case where a moving direction is reversed.
(B) shows the case of stopping and (C) shows the case of decelerating, respectively. As shown in FIG. 6A, when the velocity modifier Vmod is changed from positive to negative, the robot hand 4
The moving direction of 1A is reversed from the A → B direction to the B → A direction. Further, as shown in FIG. 6B, when the velocity modifier Vmod = 0, the movement of the robot hand 41A is stopped. Further, as shown in FIG. 6C, when the velocity modifier Vmod is reduced, for example, 1 → 0.5 → 0.1, the robot hand 41A decelerates accordingly.
【0030】図7は軌道モデファイアPmod を作用させ
たときの軌跡の例を示す図である。軌道モデファイアP
mod が作用したときの補間演算部11内でのアルゴリズ
ムは、図5のフローチャートにおいて示したものと同様
である。図において、ロボット手先41Aは「line
Move A to B with V」に従って、
始点Aから終点Bに移動している。その移動途中のP1
点で軌道モデファイアPmod が作用した場合、ロボット
手先41Aに、軌道モデファイアPmod の位置修正信号
(ΔXmod ,ΔYmod )に応じた軌道修正が行われ、ロ
ボット手先41AはP1点からP2点に移動する。軌道
モデファイアPmod の作用区間ΔPが終了し、P2点で
軌道モデファイアPmod が解消すると、その時点で常時
位置決めサーボ系21からフィードバックされてきた現
在位置Pact (P2点)と最終目標点Bとの間での補間
演算が行われているので、ロボット手先41Aは、最終
的に目標点B点に移動していく。したがって、「lin
e Move A toB with V」の実行中
に、軌道モデファイアPmod による軌道修正が行われて
も、ロボット手先41Aは始めに指定された最終目標点
B(ただし、最終的にVmod <0ならA点)でその移動
が停止する。FIG. 7 is a diagram showing an example of a locus when the orbit modifier Pmod is applied. Orbit modifier P
The algorithm in the interpolation calculation unit 11 when mod acts is the same as that shown in the flowchart of FIG. In the figure, the robot hand 41A is "line
According to Move A to B with V ”,
Moving from start point A to end point B. P1 on the way
When the trajectory modifier Pmod acts at a point, the robot hand 41A is subjected to trajectory correction according to the position correction signals (ΔXmod, ΔYmod) of the trajectory modifier Pmod, and the robot hand 41A moves from point P1 to point P2. .. When the action section ΔP of the trajectory modifier Pmod ends and the trajectory modifier Pmod disappears at the point P2, the current position Pact (P2 point) fed back from the positioning servo system 21 at that time and the final target point B are constantly fed back. Since the interpolation calculation is performed between the robot hand 41A, the robot hand 41A finally moves to the target point B. Therefore, "lin
Even if the trajectory modifier Pmod modifies the trajectory during the execution of "e Move A toB with V", the robot hand 41A will initially specify the final target point B (however, if Vmod <0, finally, the A point). ) Stops the movement.
【0031】次に、図8、図9及び図10を用いて、本
発明によるロボット手先の移動制御を説明する。図8は
ロボット言語列でプランされたロボット手先の経路を示
す図である。図において、ロボット手先は、前述したロ
ボット言語列の例(a)、(b)及び(c)に従って、
A→B→C→Dの順に移動し、その間の速度も指定速度
に従って、V1→V2→V3と変化する。この場合、ロ
ボット手先41Aはプログラム動作によって、障害物
91,92を避けて通ることができる。Next, the movement control of the robot hand according to the present invention will be described with reference to FIGS. 8, 9 and 10. FIG. 8 is a diagram showing a route of a robot hand planned by a robot language string. In the figure, the robot hand is, according to the examples (a), (b) and (c) of the robot language sequence described above,
It moves in the order of A->B->C-> D, and the speed during that time also changes according to the designated speed, V1->V2-> V3. In this case, the robot hand 41A is controlled by the program operation so that
You can avoid 91 and 92.
【0032】図9はロボット手先の経路に障害物がある
場合を示す図である。プログラムによる動作実行時に、
プログラム作成時には想定していなかった障害物93が
図に示すように存在したとする。このときには、例え
ば、BC間移動中、P3点でダイヤル操作により速度モ
デファイアVmod を0に設定し、プログラム動作による
ロボット手先41Aの移動を停止させ、その状態で、ジ
ョイスティックによる遠隔操作により軌道を修正し障害
物93を回避する。P4点で再び速度モデファイアVmo
d を1に設定することにより、ロボット手先41Aはプ
ログラム動作に復帰し、プログラムに基づいて最終目標
点Dに到達する。FIG. 9 is a diagram showing a case where there is an obstacle in the path of the robot hand. When an operation is executed by a program,
It is assumed that an obstacle 93, which was not assumed when the program was created, existed as shown in the figure. At this time, for example, while moving between BCs, the speed modifier Vmod is set to 0 by the dial operation at the P3 point, the movement of the robot hand 41A by the program operation is stopped, and in that state, the trajectory is corrected by the remote operation by the joystick. The obstacle 93 is avoided. Speed modifier Vmo again at P4
By setting d to 1, the robot hand 41A returns to the program operation and reaches the final target point D based on the program.
【0033】なお、この例では、安全のために速度モデ
ファイアVmod を0に設定し、プログラム動作を止めた
うえでジョイスティック52による遠隔操作を行うよう
にしたが、速度モデファイアVmod を小さな値に設定し
て速度を遅くし、その動作にジョイスティック52によ
る遠隔操作を重畳させるようにすることもできる。In this example, the speed modifier Vmod is set to 0 for safety, and the joystick 52 is used for remote control after the program operation is stopped. However, the speed modifier Vmod is set to a small value. It is also possible to set the speed to slow down and superimpose the remote operation by the joystick 52 on the operation.
【0034】図10はロボット手先の移動方向を逆転さ
せた場合を示す図である。図において、ロボット手先4
1Aは、CD間を移動中に移動方向を逆転させられる。
この逆転は、速度モデファイアVmod の設定を正から負
に変更することにより行われる。その速度モデファイア
Vmod は、ロボット言語インタプリタ11Aに入力さ
れ、ロボット言語インタプリタ11Aでは、速度モデフ
ァイアVmod が正のときはロボット言語列を正順に、ま
た、速度モデファイアVmod が負のときは逆順に実行す
る。このように、ロボット言語インタプリタ11Aに、
ロボット言語の逆実行機能を持たせることにより、図1
0に示すような、速度モデファイアVmodによる移動方
向逆転が可能となる。FIG. 10 is a diagram showing a case where the moving direction of the robot hand is reversed. In the figure, robot hand 4
1A can reverse the moving direction while moving between CDs.
This reversal is done by changing the setting of the velocity modifier Vmod from positive to negative. The velocity modifier Vmod is input to the robot language interpreter 11A. In the robot language interpreter 11A, when the velocity modifier Vmod is positive, the robot language sequence is in positive order, and when the velocity modifier Vmod is negative, it is in reverse order. Run. In this way, the robot language interpreter 11A
By providing the reverse execution function of the robot language,
It becomes possible to reverse the moving direction by the velocity modifier Vmod as shown in 0.
【0035】[0035]
【発明の効果】以上説明したように本発明では、ロボッ
ト手先が所定の動作プログラムに基づいて直線移動する
場合に指定速度が変更されると、その変更された指定速
度に基づいて直線移動を行うように構成した。したがっ
て、オペレータの指示により、必要に応じてロボット手
先の速度変更、停止及び移動方向逆転を行うことができ
る。As described above, according to the present invention, when the designated speed is changed when the robot hand moves linearly based on a predetermined operation program, the linear movement is performed based on the changed specified speed. As configured. Therefore, according to the operator's instruction, the speed of the robot hand can be changed, stopped, and the moving direction can be reversed.
【0036】また、ロボット手先が所定の動作プログラ
ムに基づいて始点から終点まで直線移動する間に、オペ
レータの指示により、必要に応じてその軌道を修正でき
るように構成した。したがって、障害物が存在した場合
でも、ロボット手先にその障害物を避けて通過させるこ
とができる。Further, while the robot hand is linearly moving from the starting point to the ending point based on a predetermined operation program, the trajectory of the robot hand can be corrected as needed according to the instruction of the operator. Therefore, even if there is an obstacle, it is possible for the robot hand to pass through the obstacle while avoiding it.
【0037】このように、プログラム動作するロボット
に、必要に応じてオペレータが遠隔操作により速度変更
及び軌道修正を行うことができる。したがって、ロボッ
トと人間(オペレータ)との対話性を高めることができ
る。また、プログラム動作と遠隔操作を組み合わせた効
率的な作業をロボットに行わせることができる。As described above, the operator can remotely change the speed and correct the trajectory of the programmed robot, if necessary. Therefore, the interactivity between the robot and the human (operator) can be enhanced. In addition, the robot can be made to perform efficient work by combining program operation and remote control.
【0038】さらに、フィルタを設け、指定速度の変更
指令がこのフィルタを経由して直線移動指令手段に入力
されるようにした。したがって、不連続な指定速度変更
指令が与えられても、その指令による速度変更をなめら
かに行うことができる。Further, a filter is provided so that the command for changing the designated speed is inputted to the linear movement command means via this filter. Therefore, even if a discontinuous designated speed change command is given, the speed change according to the command can be smoothly performed.
【図1】本発明の原理ブロック図である。FIG. 1 is a principle block diagram of the present invention.
【図2】本発明の原理ブロック図である。FIG. 2 is a principle block diagram of the present invention.
【図3】本発明の原理ブロック図である。FIG. 3 is a block diagram of the principle of the present invention.
【図4】本発明のロボット手先の直線移動制御方式を実
行する全体構成を示す図である。FIG. 4 is a diagram showing an overall configuration for executing a linear movement control system for a robot hand according to the present invention.
【図5】ロボット手先の速度変更を実行するためのフロ
ーチャートを示す図である。FIG. 5 is a diagram showing a flowchart for executing speed change of a robot hand.
【図6】速度モデファイアVmod による速度制御の例を
示す図であり、(A)は移動方向を逆転させる場合、
(B)は停止させる場合、(C)は減速させる場合をそ
れぞれ示す。FIG. 6 is a diagram showing an example of speed control by a speed modifier Vmod, in which (A) shows a case where the moving direction is reversed.
(B) shows the case of stopping and (C) shows the case of decelerating, respectively.
【図7】軌道モデファイアPmod を作用させたときの軌
跡の例を示す図である。FIG. 7 is a diagram showing an example of a locus when an orbit modifier Pmod is applied.
【図8】ロボット言語列でプランされたロボット手先の
経路を示す図である。FIG. 8 is a diagram showing a path of a robot hand planned by a robot language string.
【図9】ロボット手先の経路に障害物がある場合を示す
図である。FIG. 9 is a diagram showing a case where an obstacle exists in the path of the robot hand.
【図10】ロボット手先の移動方向を逆転させた場合を
示す図である。FIG. 10 is a diagram showing a case where the moving direction of the robot hand is reversed.
【図11】ロボット手先の直線移動制御の説明図であ
る。FIG. 11 is an explanatory diagram of linear movement control of a robot hand.
【図12】従来のロボット手先の直線移動制御方式のブ
ロック図である。FIG. 12 is a block diagram of a conventional linear movement control system for a robot hand.
10 直線移動指令手段 20 位置決めサーボ手段 30 速度変更手段 40 ロボット(マニピュレータ) 41 ロボット手先 50 軌道修正指令手段 60 フィルタ 10 linear movement command means 20 positioning servo means 30 speed changing means 40 robot (manipulator) 41 robot hand 50 trajectory correction command means 60 filter
Claims (6)
ット手先の直線移動制御方式において、 所定の動作プログラムに基づいてロボット手先(41)
に指定速度での直線移動を行わせる指令信号を出力する
直線移動指令手段(10)と、 前記直線移動指令手段(10)から出力された前記指令
信号に応じて前記ロボット手先(41)の位置決めを行
う位置決めサーボ手段(20)と、 前記指定速度の変更を前記直線移動指令手段(10)に
指令する速度変更指令手段(30)と、 を有することを特徴とするロボット手先の直線移動制御
方式1. A robot hand linear movement control method for controlling a linear movement of a robot hand (41) according to a predetermined operation program.
And a linear movement command means (10) for outputting a command signal for performing linear movement at a designated speed, and positioning of the robot hand (41) according to the command signal output from the linear movement command means (10). A linear movement control method for a robot hand, comprising: a positioning servo means (20) for performing the above; and a speed change instruction means (30) for instructing the linear movement instruction means (10) to change the designated speed.
設定されている目標位置と前記位置決めサーボ手段(2
0)からフィードバックされたきた現在位置とを評価し
て、今回サンプリング時の目標位置を求めることを特徴
とする請求項1記載のロボット手先の直線移動制御方
式。2. The linear movement command means (10) includes a preset target position and the positioning servo means (2).
The linear movement control system for the robot hand according to claim 1, wherein the target position at the time of this sampling is obtained by evaluating the current position fed back from 0).
動の軌道を変更する軌道修正指令手段(50)を有する
ことを特徴とする請求項1記載のロボット手先の直線移
動制御方式。3. The linear movement control method for a robot hand according to claim 1, further comprising trajectory correction command means (50) for correcting the linear movement command and changing the trajectory of the linear movement.
直線移動指令手段(10)に対する指令は、フィルタ
(60)を経由して行われることを特徴とする請求項1
記載のロボット手先の直線移動制御方式。4. The command from the speed change command means (30) to the linear movement command means (10) is performed via a filter (60).
The linear movement control method of the robot hand described.
速度変更指令手段(30)からの指令に基づいて前記ロ
ボット手先(41)の速度変更、移動停止及び移動方向
逆転を行うことを特徴とする請求項1記載のロボット手
先の直線移動制御方式。5. The linear movement command means (10) changes the speed of the robot hand (41), stops moving, and reverses the moving direction based on a command from the speed change command means (30). The linear movement control system for the robot hand according to claim 1.
移動方向逆転を行う場合前記所定の動作プログラムを逆
順に実行することを特徴とする請求項5記載のロボット
手先の直線移動制御方式。6. The linear movement control method for a robot hand according to claim 5, wherein the linear movement command means (10) executes the predetermined operation program in reverse order when the movement direction is reversed.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP572192A JPH05185386A (en) | 1992-01-16 | 1992-01-16 | Linear motion control system for robot finger |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP572192A JPH05185386A (en) | 1992-01-16 | 1992-01-16 | Linear motion control system for robot finger |
Publications (1)
Publication Number | Publication Date |
---|---|
JPH05185386A true JPH05185386A (en) | 1993-07-27 |
Family
ID=11618988
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP572192A Withdrawn JPH05185386A (en) | 1992-01-16 | 1992-01-16 | Linear motion control system for robot finger |
Country Status (1)
Country | Link |
---|---|
JP (1) | JPH05185386A (en) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2007188537A (en) * | 2000-08-25 | 2007-07-26 | Janome Sewing Mach Co Ltd | Robot |
JP2007188538A (en) * | 2000-08-25 | 2007-07-26 | Janome Sewing Mach Co Ltd | Computer-readable recording medium in robot and robot equipped with computer-readable recording medium |
JP2007193846A (en) * | 2000-08-25 | 2007-08-02 | Janome Sewing Mach Co Ltd | Action setting method of robot |
CN105773620A (en) * | 2016-04-26 | 2016-07-20 | 南京工程学院 | Track planning and control method of free curve of industrial robot based on double quaternions |
-
1992
- 1992-01-16 JP JP572192A patent/JPH05185386A/en not_active Withdrawn
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2007188537A (en) * | 2000-08-25 | 2007-07-26 | Janome Sewing Mach Co Ltd | Robot |
JP2007188538A (en) * | 2000-08-25 | 2007-07-26 | Janome Sewing Mach Co Ltd | Computer-readable recording medium in robot and robot equipped with computer-readable recording medium |
JP2007193846A (en) * | 2000-08-25 | 2007-08-02 | Janome Sewing Mach Co Ltd | Action setting method of robot |
JP4667416B2 (en) * | 2000-08-25 | 2011-04-13 | 蛇の目ミシン工業株式会社 | Computer-readable recording medium in robot and robot provided with computer-readable recording medium |
JP4667415B2 (en) * | 2000-08-25 | 2011-04-13 | 蛇の目ミシン工業株式会社 | robot |
JP4667417B2 (en) * | 2000-08-25 | 2011-04-13 | 蛇の目ミシン工業株式会社 | Robot motion setting method |
CN105773620A (en) * | 2016-04-26 | 2016-07-20 | 南京工程学院 | Track planning and control method of free curve of industrial robot based on double quaternions |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9381643B2 (en) | Dynamical system-based robot velocity control | |
JP3288250B2 (en) | Robot controller | |
JPH02160487A (en) | Correction of manual feeding of robot | |
JPH05185386A (en) | Linear motion control system for robot finger | |
US5811952A (en) | Method of setting accelerating/decelerating motion of robot | |
JP2005052913A (en) | Robot controller | |
JP3508677B2 (en) | Robot controller | |
CN111331577B (en) | Robot control device and control method | |
JP4255783B2 (en) | Robot controller | |
JP3316421B2 (en) | Mobile robot | |
Xu et al. | Passive bilateral teleoperation of a car-like mobile robot | |
Xi et al. | Heterogeneous function-based human/robot cooperations | |
JPH01264788A (en) | Control device for industrial robot | |
JPH0424809A (en) | Robot controller | |
KR0161004B1 (en) | Continuous travelling control method of multi-robot | |
JPH10301616A (en) | Teaching device for robot | |
JPH01119809A (en) | Robot locus control method | |
JPS61147306A (en) | Safety device of robot | |
JPH1063329A (en) | Method for controlling accerelation | |
JPS6249403A (en) | Manipulator control device | |
JPS63276606A (en) | Locus control system for articulated robot | |
JPH02178810A (en) | Robot controller | |
KR100213911B1 (en) | Motion controlling method for robot-end-effector | |
JPH04152082A (en) | Profile control unit for robot | |
JP2001306119A (en) | Movement command generating method and its device for multi-axis machine |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A300 | Withdrawal of application because of no request for examination |
Free format text: JAPANESE INTERMEDIATE CODE: A300 Effective date: 19990408 |