JPH01258006A - Method for controlling speed of motor - Google Patents
Method for controlling speed of motorInfo
- Publication number
- JPH01258006A JPH01258006A JP63086140A JP8614088A JPH01258006A JP H01258006 A JPH01258006 A JP H01258006A JP 63086140 A JP63086140 A JP 63086140A JP 8614088 A JP8614088 A JP 8614088A JP H01258006 A JPH01258006 A JP H01258006A
- Authority
- JP
- Japan
- Prior art keywords
- speed
- command value
- target
- cycle
- storage section
- 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
- 238000000034 method Methods 0.000 title claims description 20
- 230000007423 decrease Effects 0.000 claims description 71
- 230000004044 response Effects 0.000 claims description 3
- 230000001133 acceleration Effects 0.000 abstract description 15
- 238000010586 diagram Methods 0.000 description 5
- RRLHMJHRFMHVNM-BQVXCWBNSA-N [(2s,3r,6r)-6-[5-[5-hydroxy-3-(4-hydroxyphenyl)-4-oxochromen-7-yl]oxypentoxy]-2-methyl-3,6-dihydro-2h-pyran-3-yl] acetate Chemical compound C1=C[C@@H](OC(C)=O)[C@H](C)O[C@H]1OCCCCCOC1=CC(O)=C2C(=O)C(C=3C=CC(O)=CC=3)=COC2=C1 RRLHMJHRFMHVNM-BQVXCWBNSA-N 0.000 description 3
- 230000000694 effects Effects 0.000 description 2
- RYGMFSIKBFXOCR-UHFFFAOYSA-N Copper Chemical compound [Cu] RYGMFSIKBFXOCR-UHFFFAOYSA-N 0.000 description 1
- 230000003247 decreasing effect Effects 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 230000002194 synthesizing effect Effects 0.000 description 1
Landscapes
- Numerical Control (AREA)
- Control Of Position Or Direction (AREA)
- Control Of Electric Motors In General (AREA)
Abstract
Description
【発明の詳細な説明】
[産業上の利用分野コ
本発明は、多関節型ロボットのアーム、直交座標型ロボ
ットのテーブル等の可動部を駆動するモータの速度制御
方法に関する。DETAILED DESCRIPTION OF THE INVENTION [Field of Industrial Application] The present invention relates to a method for controlling the speed of a motor that drives a movable part such as an arm of an articulated robot or a table of a Cartesian robot.
[従来技術]
従来、マイクロコンピュータにより制御されて駆動され
るモータを備えた産業用ロボットでは、アームを備えた
多関節型であろうと、直交する2個のテーブルを備えた
直交座標型であろうと、その可動部に撮動を起こさせず
に滑かに、しかも短時間で目標位置に停止させることが
要求されている。この要求に応えるべく、減速時のモー
タ速度の時間変化を、正弦曲線あるいは振幅・周期の異
なる正弦曲線を合成してなる疑似正弦曲線に沿うように
制御して、モータを減速し、目標位置を位置決めする制
御方法が一般に用いられている。この制御方法の一例と
して、モータを時間経過にともなって前記正弦曲線ある
いは疑似正弦曲線に沿って速度零から加速する時の移動
量と速度との関係をあらかじめ求めておき、これを位置
偏差と目標速度との関係とみなし、各位置偏差に対応し
た目標速度を持つ対応表として記憶する一方、目標位置
と現在位置との差でなる位置偏差に応じて、対応表から
目標速度を求め、モータの速度をその目標速度となるよ
うに制御する方法がある。この方法では、移動時に各時
点における位置偏差からただちにその時点の目標速度が
求まり、この目標速度を目標としてモータの速度を制御
するだけで、モータを正弦曲線あるいは疑似正弦曲線に
沿って加減速し、目標位置に位置決めを行える。[Prior Art] Conventionally, industrial robots equipped with motors controlled and driven by microcomputers have been either multi-joint type with arms or orthogonal coordinate type with two orthogonal tables. , it is required to smoothly stop the movable part at the target position in a short time without causing the moving part to take a picture. In order to meet this demand, the time change of the motor speed during deceleration is controlled to follow a sine curve or a pseudo-sine curve formed by combining sinusoids with different amplitudes and periods, thereby decelerating the motor and moving to the target position. A positioning control method is commonly used. As an example of this control method, the relationship between the amount of movement and speed when the motor is accelerated from zero speed along the sine curve or pseudo-sine curve over time is determined in advance, and this is calculated as the position error and the target speed. It is regarded as a relationship with speed, and is stored as a correspondence table with target speed corresponding to each position deviation.The target speed is calculated from the correspondence table according to the position deviation formed by the difference between the target position and the current position, and the motor is There is a method of controlling the speed so that it reaches the target speed. With this method, the target speed at that point is immediately determined from the positional deviation at each point during movement, and by simply controlling the speed of the motor using this target speed as a target, the motor can be accelerated or decelerated along a sine curve or a pseudo-sine curve. , positioning can be performed at the target position.
しかしながら、この方法では、目標位置が与えられ、こ
の目標位置と現在位置との差でなる位置偏差が大きくな
ると、目標速度も大きな速度となる。そのため、モータ
を加速するに際して、モータが回転を開始する時には、
モータは速度零の状態から急激に加速されることとなり
、モータに撮動が生じ、このモータにより駆動される産
業用ロボットの可動部あるいはワークに大きな加速度が
加わる等の不都合が生じている。その対策として、位置
決めしようとする目標位置をいきなり目標位置とはせず
に、目標位置までの位置偏差から得られる最高速度から
1サーボ周期の移動量をサイクル速度指令値として求め
、次に位置決めしようとする位置を前回の目標位置にサ
ーボ周期毎に前記サイクル速度指令値を加えた値とし、
サーボ周期毎に目標位置を設けてモータを制御する方法
がとられている。すなわち、
1)主制御部から指令された目標位置指令値を目標位置
として位置決めされている時に、主制御部から新たな目
標位置指令値、1サーボ周期の目標移動量でおるサイク
ル速度指令IIgおよび繰返し回数指令値が与えられる
と、現在位置にサイクル速度指令値を加えた値を新たな
目標位置とし、目標位置と現在位置との差でなる位置偏
差を求める。However, in this method, a target position is given, and as the positional deviation resulting from the difference between the target position and the current position increases, the target speed also increases. Therefore, when accelerating the motor, when the motor starts rotating,
The motor is rapidly accelerated from a state of zero speed, and the motor is photographed, causing problems such as large acceleration being applied to the movable parts of the industrial robot or the workpiece driven by the motor. As a countermeasure, instead of suddenly setting the target position to the target position, find the movement amount of one servo cycle from the maximum speed obtained from the position deviation to the target position as the cycle speed command value, and then position. Let the position be the previous target position plus the cycle speed command value for each servo cycle,
A method is used to control the motor by setting a target position for each servo cycle. That is, 1) When positioning is performed using the target position command value commanded from the main control unit as the target position, the main control unit issues a new target position command value, a cycle speed command IIg with a target movement amount of one servo cycle, and When the repetition number command value is given, the value obtained by adding the cycle speed command value to the current position is set as a new target position, and the position deviation formed by the difference between the target position and the current position is determined.
2)これに対応した目標速度データを目標としてモータ
の速度を制御する。この時、位置偏差はサイクル速度指
令値に近く位置偏差としては小さな値であり、これに対
応した目標速度データはさらに小さな値となり、次のサ
ーボ制御サイクルまでに移動する移動量は僅かである。2) Control the speed of the motor using the corresponding target speed data as a target. At this time, the positional deviation is close to the cycle speed command value and is a small value as a positional deviation, and the corresponding target speed data is an even smaller value, and the amount of movement until the next servo control cycle is small.
3)次のサーボ制御サイクルでは前回の目標位置にサイ
クル速度指令値を加えた値を新たな目標とし、この新た
な目標位置までの位置偏差を求め、この位置偏差に対応
する目標速度データを呼出し、これを目標としてモータ
を制御する。この時、現在位置が前回の目標位置から僅
かに移動しているだけであるので、位置偏差は前回より
も大きくなり、目標速度データは前回よりも大きくなる
。3) In the next servo control cycle, the value obtained by adding the cycle speed command value to the previous target position is set as the new target, the position deviation to this new target position is determined, and the target speed data corresponding to this position deviation is called. , the motor is controlled with this as the goal. At this time, since the current position has moved only slightly from the previous target position, the position deviation will be larger than the previous one, and the target speed data will be larger than the previous one.
4)3)の制御を繰返すことにより、目標速度データは
徐々に大きくなり、モータの速度は増加する。前記目標
速度データは位置偏差が大きくなるにともなって位置偏
差の増加はどに増加かしなくなり、モータの速度の増加
率が徐々に小さくなる。4) By repeating the control in 3), the target speed data gradually increases and the speed of the motor increases. In the target speed data, as the positional deviation increases, the positional deviation does not increase at any rate, and the rate of increase in the motor speed gradually decreases.
5)目標速度データが大きくなって、サイクル速度指令
値と等しくなると、目標位置の増加量と現在位置の増加
量とが等しいので、位置偏差は一定となり、目標速度デ
ータも一定となって、玉−夕は定速で回転する。5) When the target speed data increases and becomes equal to the cycle speed command value, the amount of increase in the target position is equal to the amount of increase in the current position, so the position deviation becomes constant, the target speed data also becomes constant, and the ball -In the evening, it rotates at a constant speed.
6)前記制御が前記繰返し回数指令値に等しい回数だけ
繰返されると、目標位置は目標位置指令値に固定され、
この目標位置までの位置偏差に対応した目標速度データ
が呼出され、これを目標としてモータが制御される。こ
の後、モータの現在位置が増えるに従い、位置偏差は小
さくなり、これに対応する目標速度データも小さくなり
、モータは減速されて停止する。6) When the control is repeated a number of times equal to the repetition number command value, the target position is fixed to the target position command value,
Target speed data corresponding to the positional deviation to this target position is retrieved, and the motor is controlled using this as a target. Thereafter, as the current position of the motor increases, the positional deviation becomes smaller, the corresponding target speed data also becomes smaller, and the motor is decelerated and stopped.
ように構成されている。It is configured as follows.
[発明が解決しようとする課題]
この制御方法では、モータの速度は速度零から滑かに増
加し、目標位置までの位置偏差が目標とする速度に比べ
て充分に大きい時には、モータを滑かに目標速度に到達
させて定速で移動させ、その後滑かに減速して停止させ
ることができ、過大な加速度は発生しない。ところが、
位置偏差が小さい時には、加速の途中からいきなり減速
を始めるため、第6図・に示すように目標速度が不連続
となり、加速度が急激に変化し、撮動の原因となる等の
欠点が生じている。[Problems to be Solved by the Invention] In this control method, the speed of the motor increases smoothly from zero speed, and when the positional deviation to the target position is sufficiently large compared to the target speed, the motor speed increases smoothly. It is possible to reach the target speed and move at a constant speed, then smoothly decelerate and stop, without causing excessive acceleration. However,
When the positional deviation is small, deceleration suddenly starts in the middle of acceleration, so the target speed becomes discontinuous as shown in Figure 6, causing a sudden change in acceleration, which causes problems such as photographing. There is.
本発明は上記欠点を除去しようとするもので、移動開始
時あるいは目標位置までの位置偏差が小さい時にも、連
続的で滑かな速度変化をして撮動の発生を少なくする目
標速度を発生させてモータの位置・速度制御方法を提供
しようとするものである。The present invention aims to eliminate the above-mentioned drawbacks by generating a target speed that continuously and smoothly changes the speed to reduce the occurrence of photographing even at the start of movement or when the positional deviation to the target position is small. This paper attempts to provide a method for controlling the position and speed of a motor.
[課題を解決するための手段]
上記目的を達成するため、モータは次の順序により作動
するように構成されている。[Means for Solving the Problem] In order to achieve the above object, the motor is configured to operate in the following order.
1)位置偏差が小さい範囲ではその増加にともなって零
から急激に増加する目標速度データであって、位置偏差
が大きい範囲ではその増加にともなって最高速度近くで
変化の少ない目標速度データを、位置偏差に対応して記
憶する。1) In the range where the positional deviation is small, the target speed data increases rapidly from zero as the positional deviation increases, and in the range where the positional deviation is large, the target speed data that does not change much near the maximum speed is set as the positional Store it in response to the deviation.
2)主制御部から、目標位置指令値、1サーボ周期の目
標移動量でなるサイクル速度指令値、繰返し回数指令値
、増減回数指令値、および前記サイクル速度指令値より
も充分に小さい増減定数を受取ると、制御回数記憶部、
増減回数記憶部、サイクル速度記憶部、モード記憶部に
零をセットする。2) From the main control unit, set a target position command value, a cycle speed command value consisting of the target movement amount of one servo cycle, a repetition number command value, an increase/decrease number command value, and an increase/decrease constant that is sufficiently smaller than the cycle speed command value. When received, the control number storage unit,
Zero is set in the increase/decrease number storage section, cycle speed storage section, and mode storage section.
3)モード記憶部が増減回数記憶部の値と増減回数指令
値との一致信号を記憶している時、6)にジャンプする
。前記モード記憶部が前記一致信号とともに制御回数記
憶部と繰返し回数指令値との一致信号を記憶している時
、7)にジャンプする。3) When the mode storage section stores a matching signal between the value in the increase/decrease number storage section and the increase/decrease number command value, jump to 6). When the mode storage section stores a coincidence signal between the control number storage section and the repetition number command value together with the coincidence signal, the process jumps to 7).
4)増減回数記憶部に1を加え、その結果と増減回数指
令値とを比較し、両者が等しければ、モード記憶部にそ
の一致信号を送る。増減回数記憶部を零にセット・する
。ざらに、サイクル速度記憶部にサイクル速度指令値を
セットし、6)にジャンプする。4) Add 1 to the increase/decrease number storage section, compare the result with the increase/decrease number command value, and if the two are equal, send a match signal to the mode storage section. Set the increase/decrease count storage section to zero. Briefly, set the cycle speed command value in the cycle speed storage section and jump to 6).
5)サイクル速度記憶部に設定されたサイクル速度指令
値よりも十分に小さい値である増減定数を加え、これを
新たなサイクル速度記憶部の値とする。5) Add an increase/decrease constant that is a value sufficiently smaller than the cycle speed command value set in the cycle speed storage section, and use this as a new value in the cycle speed storage section.
6)制御回数記憶部に1を加え、その結果と繰返し回数
指令値とを比較し、両者が等しければモード記憶部にそ
の一致信号を送る。両者が等しくなければ、9)にジャ
ンプする。6) Add 1 to the control number storage section, compare the result with the repetition number command value, and if the two are equal, send a match signal to the mode storage section. If the two are not equal, jump to 9).
7)増減回数記憶部に1を加え、その結果と増減回数指
令値とを比較し、両者が等しければ、12〉にジャンプ
する。7) Add 1 to the increase/decrease number storage unit, compare the result with the increase/decrease number command value, and if the two are equal, jump to 12>.
8)サイクル速度記憶部の値から増減定数を引き、これ
を新しいサイクル速度記憶部の記憶値とする。8) Subtract the increase/decrease constant from the value in the cycle speed storage section and use this as the new value stored in the cycle speed storage section.
9)前回のザーボ周期における目標位置にサイクル速度
記憶部の記憶値を加え、これを新しい目標位置とする。9) Add the value stored in the cycle speed storage section to the target position in the previous servo cycle and use this as the new target position.
10)目標位置と現在位置との差を位置偏差とし、あら
かじめ記憶している目標速度データの中から前記位置偏
差に対応した目標速度データを呼出す。10) The difference between the target position and the current position is defined as a positional deviation, and the target speed data corresponding to the positional deviation is called from among the target speed data stored in advance.
11)前記目標速度データを目標としてモータの速度を
制御し、3)に戻る。11) Control the speed of the motor using the target speed data as a target, and return to 3).
12)前記目標位置指令値を新しい目標位置とする。12) Set the target position command value as a new target position.
13〉目標位置指令値と現在位置との差を位置偏差とし
、必らかしめ記憶している目標速度データの中から前記
位置偏差に対応した目標速度データを呼出す。13> The difference between the target position command value and the current position is defined as a positional deviation, and the target speed data corresponding to the positional deviation is recalled from among the stored target speed data.
14〉前記目標速度データを目標としてモータの速度を
制御する。14> Control the speed of the motor using the target speed data as a target.
15)前記位置偏差が所定位置決め精度より大きければ
、13)に戻る。15) If the positional deviation is greater than the predetermined positioning accuracy, return to 13).
16)位置決め完了信号を主制御部に送り、2)に戻る
。16) Send a positioning completion signal to the main control section and return to 2).
また、前記サイクル速度指令値は目標位置までの位置偏
差に対応する目標速度から1qられる1サーボ周明の移
動量であって、前記繰返し回数指令値は位置偏差をリー
イクル速度指令値で分割した分割数であってもよい。Further, the cycle speed command value is the amount of movement in one servo cycle subtracted by 1q from the target speed corresponding to the positional deviation to the target position, and the repetition number command value is the number of divisions obtained by dividing the positional deviation by the recycle speed command value. It may be.
[作用1
上記モータの速度制御方法では、前回の目標位置指令値
に位置決めされている時に、移動司令信号を受けると、
主制御部から新たな目標位置指令値、1サーボ周期の目
標移動ωであるサイクル速度指令値、繰返し回数指令値
、増減回数指令値、および前記サイクル速度指令値に比
べて充分に小さい値の増減定数が与えられると、増減定
数がサイクル速度記憶部(初期値は零)に加えられる。[Effect 1] In the above motor speed control method, when a movement command signal is received while the motor is positioned at the previous target position command value,
The main control unit outputs a new target position command value, a cycle speed command value that is the target movement ω of one servo cycle, a repetition number command value, an increase/decrease number command value, and an increase/decrease in a value that is sufficiently smaller than the cycle speed command value. Once the constant is given, the increase/decrease constant is added to the cycle rate memory (initial value is zero).
このサイクル速度記憶部の記憶値が前回のサーボ制御サ
イクルの目標位置に加えられ、新たな目標位置が設定さ
れる。この目標位置までの位置偏差を求め、これに対応
した目標速度データを呼出し、これを目標としてモータ
が制御される。この時の位置偏差は増減定数となり、こ
れが小さいので、この位置偏差に対応した目標速度デー
タはほとんど零に近く、目標速度の変化もほとんど零に
近い。This stored value in the cycle speed storage section is added to the target position of the previous servo control cycle, and a new target position is set. The positional deviation to this target position is determined, target speed data corresponding to this is retrieved, and the motor is controlled using this as a target. The positional deviation at this time becomes an increase/decrease constant, and since this is small, the target speed data corresponding to this positional deviation is almost zero, and the change in the target speed is also almost zero.
そのため、モータに発生する駆動力は小さく、可動部に
発生ずる加速度は非常に小さく、次のサーボ制御サイク
ルまでに移動する移動■も僅かとなり、モータは速度零
からゆっくりと回転を開始する。Therefore, the driving force generated in the motor is small, the acceleration generated in the movable part is very small, the amount of movement (2) until the next servo control cycle is small, and the motor starts rotating slowly from zero speed.
次のサーボ制御サイクルでは、前回の目標位置にサイク
ル速度記憶値を加えた値を新たな目標位置とし、前回同
様に位置偏差を算出してこれに対応した目標速度データ
が呼出される。この目標速度データを目標として、モー
タの速度が制御される。この時、現在位置は前回の位置
かられずかに移動しているだけであるので、位置偏差は
前回よりも大きくなり、これに対応した目標速度データ
も前回よりもわずかに大きくなる。さらに、前記制御を
繰返すと、目標速度の変化すなわち加速度は徐々に大き
くなり、モータの目標速度データも大きくなり、モータ
の速度は増加する。In the next servo control cycle, the value obtained by adding the cycle speed storage value to the previous target position is set as the new target position, the position deviation is calculated in the same manner as the previous time, and the target speed data corresponding to this is called. The speed of the motor is controlled using this target speed data as a target. At this time, since the current position has only slightly moved from the previous position, the positional deviation will be larger than the previous one, and the corresponding target speed data will also be slightly larger than the previous one. Further, when the above control is repeated, the change in the target speed, that is, the acceleration, gradually increases, the target speed data of the motor also increases, and the speed of the motor increases.
上記制御が、所定増減回数指令値の数だけ繰返されると
、その後はサイクル速度記憶部の記憶値はサイクル速度
指令値に固定される。そのため、位置偏差が大きくなる
が、これにしたがい位置偏差の増加はど目標速度データ
は増加しないので、目標速度の変化率は徐々に小さくな
りながら、目標速度データは増加する。When the above control is repeated for a predetermined number of times of increase/decrease command value, the stored value of the cycle speed storage section is thereafter fixed to the cycle speed command value. Therefore, although the positional deviation increases, the target speed data does not increase even though the positional deviation increases, so the target speed data increases while the rate of change in the target speed gradually decreases.
さらに、前記制御が繰返されるにともなって、位置偏差
が徐々に大ぎくなり、目標速度データも大きくなり、モ
ータの速度も加速される。その後、位置偏差が大きくな
っても、必まり増加しなくなり、モータの速度の増加率
も徐々に小さくなる。Furthermore, as the control is repeated, the positional deviation gradually increases, the target speed data also increases, and the speed of the motor is accelerated. After that, even if the positional deviation becomes large, it does not necessarily increase, and the rate of increase in the motor speed gradually decreases.
前記制御が繰返し回数指令値の回数だけ繰返されて後、
前記サイクル速度記憶部の記憶値から前記増減定数を減
じ、これを新たな記憶値とする。After the control is repeated the number of times specified by the number of repetitions command value,
The increase/decrease constant is subtracted from the value stored in the cycle speed storage section, and this is set as a new stored value.
これを前回の目標位置に加算して新たな目標位置とする
。この目標位置までの位置偏差を求め、この位置偏差に
対応した目標速度データを呼出し、これを目標としてモ
ータの速度を制御する。この時、位置偏差の増加率もわ
ずかに小さくなり、目標速度も前回よりもわずかに小さ
くなる。 −前記制御を繰返すと、どんどんサイクル速
度記憶部の記憶値が小さくなる。この値がその時の一制
御サイクル間の移動量より小さくなると、新たな目標位
置までの位置偏差が前回の位置偏差よりも減少するよう
になり、これに対応した目標速度データも増加から減少
に転じる。そのため、モータは減速を開始し、目標速度
データの変化すなわち加速度もそれまでの加速から減速
に転じる。This is added to the previous target position to form a new target position. The positional deviation to this target position is determined, target speed data corresponding to this positional deviation is retrieved, and the speed of the motor is controlled using this as a target. At this time, the rate of increase in positional deviation also becomes slightly smaller, and the target speed also becomes slightly smaller than the previous time. - When the above control is repeated, the value stored in the cycle speed storage section becomes smaller and smaller. When this value becomes smaller than the amount of movement during one control cycle at that time, the positional deviation to the new target position will become smaller than the previous positional deviation, and the corresponding target speed data will also change from increasing to decreasing. . Therefore, the motor starts decelerating, and the change in target speed data, that is, the acceleration changes from acceleration to deceleration.
前記制御が前記増減回数指令値の回数だけ繰返されると
、目標位置は前記目標位置指令値に固定され、現在位置
が増えるにしたがって位置偏差はさらに小さくなり、そ
れに対応した目標速度データも小さくなり、モータは減
速され、ついには停止することができる。When the control is repeated the number of times of the increase/decrease command value, the target position is fixed to the target position command value, and as the current position increases, the position deviation becomes smaller and the corresponding target speed data also becomes smaller, The motor can be slowed down and eventually stopped.
[実施−
以下、実施例を図面について説明する。第1図において
、1はモータ2の回転を受りて移動する多関節型のアー
ム(図示せず)あるいは直交して位置する2個のテーブ
ル(図示せず)でなる可動部を備えた産業用ロボットの
制御装置でおる。この制gO装置1は、第1 CPtJ
3 、第lRAM5l、第lRAM5 、キーボード6
、表示部7およびDMAコントローラ8を備えた主制御
部1a、これから目標位置の位置情報を受けてモータ速
度を制御するための演算を行うサーボ制御部1b、サー
ボ制御部1bから発信される指令IDに応じてモータ2
を駆動するモータ駆動部の一例のPWM駆動部1Cから
なっている。前記主制御部1aのDMAコン]・ローラ
8はサーボ制御部1bの第2RAM9に接続されており
、主制御部1aの第1CPU3とサーボ制御部1bの第
2RAM9とが交信可能に構成されている。[Implementation] Examples will be described below with reference to the drawings. In Fig. 1, reference numeral 1 denotes an industrial machine with a movable part consisting of an articulated arm (not shown) that moves in response to the rotation of a motor 2 or two tables (not shown) positioned perpendicular to each other. It is a control device for a robot used for robots. This gO control device 1 has a first CPtJ
3, 1st RAM 5l, 1st RAM 5, keyboard 6
, a main control section 1a including a display section 7 and a DMA controller 8, a servo control section 1b that receives position information of the target position and performs calculations to control the motor speed, and a command ID sent from the servo control section 1b. Motor 2 according to
It consists of a PWM drive unit 1C, which is an example of a motor drive unit that drives. DMA controller of the main control section 1a] The roller 8 is connected to the second RAM 9 of the servo control section 1b, and the first CPU 3 of the main control section 1a and the second RAM 9 of the servo control section 1b are configured to be able to communicate with each other. .
また、前記主制御部1aの第lROM4には、電源がオ
ンとなりζ作業準備が完了して後、移動指令信号により
目標位置の位置情報を目標位置指令値として呼出し、こ
の位置決めが完了すると、作業ユニット(図示せず)に
作業開始指令信号を発信する作業プログラムが記憶され
ている。この作業プログラムは、第2図に示すように、
1)移動指令信号を待つ。In addition, after the power is turned on and preparation for ζ work is completed, the position information of the target position is called as a target position command value in the first ROM 4 of the main control unit 1a by a movement command signal, and when this positioning is completed, the work is performed. A work program for issuing a work start command signal is stored in a unit (not shown). This work program is as shown in Figure 2.
1) Wait for a movement command signal.
2)移動指令信号により目標位置の位置情報を目標位置
指令値として第lRAM5から呼出すとともに、最大目
標速度データを呼出してこれをサイクル速度指令値とし
、さらに前記目標位置指令値とモータの現在速度との差
から、増減回数指令値、繰返し回数指令値、および前記
リーイクル速度指令値よりも充分に小さい増減定数を算
出する。2) Using the movement command signal, the position information of the target position is called out from the first RAM 5 as the target position command value, and the maximum target speed data is called out and used as the cycle speed command value, and the target position command value and the current speed of the motor are From the difference, an increase/decrease constant that is sufficiently smaller than the increase/decrease number command value, the repetition number command value, and the recycle speed command value is calculated.
3)これら情報をDMAコントローラ8を通じてサーボ
制御部1bの第2RAM9の所定アドレス内に転送し、
これを記憶する。3) Transfer this information to a predetermined address of the second RAM 9 of the servo control unit 1b through the DMA controller 8,
Remember this.
4)DMAコントローラ8を通じて第2RAMQ内の位
置決め完了フラグが記憶されるアドレスの入力情報を読
込む。4) Read the input information of the address in the second RAMQ where the positioning completion flag is stored through the DMA controller 8.
5)第2RAMQ内に位置決め完了フラグが入力された
かを判断し、位置決め完了フラグが入力されない時、4
)に戻る。5) Determine whether the positioning completion flag is input in the second RAMQ, and if the positioning completion flag is not input, the 4
).
6)位置決め完了フラグが入力されると、作業ユニット
に所定の作業指令信号を出力して作業ユニットから発信
される作業完了信号を待つ。6) When the positioning completion flag is input, a predetermined work command signal is output to the work unit and a work completion signal transmitted from the work unit is waited for.
7)作業完了信号を受けると、サイクル完了かを判断し
、サイクル完了でない時、移動指令信号を発信して、1
)に戻る。7) When receiving the work completion signal, determine whether the cycle is complete, and if the cycle is not completed, send a movement command signal and
).
8)エンドとなる。8) End.
ように構成されている。It is configured as follows.
前記サーボ制御部1bは、第2CPU10、第2ROM
11、第2RAM9、演算部12およびI10ボート1
3を有し、演算部12で線用した値をI10ボート13
を介してPWM駆動部1Cに送るにうに構成されている
。また、前記第2ROM11には速度と移動時間との関
係を示す正弦曲線あるいは異なる振幅・周期の正弦曲線
を合成して1qられる疑似正弦曲線を速度と位置偏差と
の関係を示す特性を持つ特性曲線に変換して、この特性
曲線から位置偏差に対応してあらかじめ算出された目標
速度データが記憶されている。また、目標速度データは
1サーボ周期の移動量が目標速度データに対応する位置
偏差よりも小さくなる値であって、しかも位置偏差が小
さい範囲では零から急激に増加する値で、位置偏差が大
きい範囲では最高速度近くで変化の少ない値となってお
り、第5図に示すような希望の減速特性が得られるよう
に構成されている。The servo control unit 1b includes a second CPU 10, a second ROM
11, second RAM 9, calculation unit 12 and I10 boat 1
3, and the value calculated by the calculation unit 12 is input to the I10 boat 13.
The signal is configured to be sent to the PWM drive unit 1C via the PWM drive unit 1C. In addition, the second ROM 11 stores a characteristic curve having characteristics representing the relationship between speed and position deviation, such as a sine curve representing the relationship between speed and travel time, or a pseudo sine curve obtained by synthesizing sine curves with different amplitudes and periods. Target speed data calculated in advance from this characteristic curve corresponding to the positional deviation is stored. In addition, the target speed data is a value that makes the amount of movement in one servo cycle smaller than the position deviation corresponding to the target speed data, and is a value that rapidly increases from zero in a range where the position deviation is small, and the position deviation is large. Within this range, the value has little change near the maximum speed, and the configuration is such that desired deceleration characteristics as shown in FIG. 5 can be obtained.
また、前記第2ROM11には目標速度出力プログラム
が記憶されている。この目標速度出力プログラムは、第
3図に示すように、
1)主制御部から、目標位置指令値、最大目標速度デー
タから得られる1サーボ周期の目標移動量でなるサイク
ル速度指令値、繰返し回数指令値、増減回数指令値、お
よび前記サイクル速度指令値よりも充分に小さい増減定
数を受取ると、制御回数記憶部、増減回数記憶部、サイ
クル速度記憶部、モード記憶部に零をセットする。Further, the second ROM 11 stores a target speed output program. As shown in Fig. 3, this target speed output program includes: 1) A cycle speed command value, which is the target movement amount for one servo cycle obtained from the main control unit, a target position command value, maximum target speed data, and the number of repetitions; When receiving a command value, an increase/decrease number command value, and an increase/decrease constant sufficiently smaller than the cycle speed command value, zero is set in the control number storage section, increase/decrease number storage section, cycle speed storage section, and mode storage section.
2)モード記憶部が増減回数記憶部の値と増減回数指令
値との一致信号を記憶している時(モード記憶部が1を
記憶している時)5)にジャンプする。前記モード記憶
部が前記−数倍@および制御回数記憶部と繰返し回数指
令値との一致信号を記憶している時(モード記憶部が2
を記憶している時)、6〉にジャンプする。2) When the mode storage section stores a matching signal between the value of the increase/decrease number storage section and the increase/decrease number command value (when the mode storage section stores 1), jumps to 5). When the mode storage unit stores the -several times @ and the coincidence signal between the control number storage unit and the repetition number command value (the mode storage unit is
), jump to 6>.
3)増減回数記憶部に1を加え、その結果と増減回数指
令値とを比較し、両者が等しければ、モード記憶部にそ
の一致信号を送る(1を記憶)。増減回数記憶部を零に
セットする。さらに、サイクル速度記憶部にサイクル速
度指令値をセットし、5)にジャンプする。3) Add 1 to the increase/decrease number storage section, compare the result with the increase/decrease number command value, and if the two are equal, send a match signal to the mode storage section (1 is stored). Set the increase/decrease number storage unit to zero. Furthermore, a cycle speed command value is set in the cycle speed storage section, and the process jumps to 5).
4)サイクル速度記憶部に増減定数を加え、これを新た
なサイクル速度記憶部の値とする。4) Add the increase/decrease constant to the cycle speed storage section and use this as the new value of the cycle speed storage section.
5)制御回数記憶部に1を加え、その結果と繰返し回数
指令値とを比較し、両者が等しければモード記憶部にそ
の一致信号を送る(2を記憶)。両者が等しくなければ
、8)にジャンプする。5) Add 1 to the control number storage section, compare the result with the repetition number command value, and if the two are equal, send a match signal to the mode storage section (2 is stored). If the two are not equal, jump to 8).
6)増減回数記憶部に1を加え、その結果と増減回数指
令値とを比較し、両者が等しければ、11)にジャンプ
する。6) Add 1 to the increase/decrease number storage unit, compare the result with the increase/decrease number command value, and if both are equal, jump to 11).
7)サイクル速度記憶部の値から増減定数を引き、これ
を新しいサイクル速度記憶部の記憶値とする。7) Subtract the increase/decrease constant from the value in the cycle speed storage section and use this as the new value stored in the cycle speed storage section.
8)前回のサーボ周期における目標位置にサイクル速度
記憶部の記憶値を加え、これを新しい目標位置とする。8) Add the value stored in the cycle speed storage unit to the target position in the previous servo cycle and use this as the new target position.
9)目標位置と現在位置との差を位置偏差とし、あらか
じめ記憶している目標速度データの中から前記位置偏差
に対応した目標速度データを呼出す。9) The difference between the target position and the current position is defined as a positional deviation, and the target speed data corresponding to the positional deviation is called from among the target speed data stored in advance.
10)前記目標速度データと現在速度との差でなる速度
偏差を求め、これに応じた電流指令値をPWM駆動部1
Cに送り、前記目標速度データを目標としてモータ2の
速度を制御し、2)に戻る。10) Find the speed deviation that is the difference between the target speed data and the current speed, and set the current command value corresponding to this to the PWM drive unit 1.
C, the speed of the motor 2 is controlled using the target speed data as a target, and the process returns to 2).
11)前記目標位置指令値を新しい目標位置とする。11) Set the target position command value as a new target position.
12)目標位置指令値と現在位置との差を位置偏差とし
、あらかじめ記憶している目標速度データの中から前記
位置偏差に対応した目標速度データを呼出す。12) The difference between the target position command value and the current position is defined as a positional deviation, and the target speed data corresponding to the positional deviation is called from among the target speed data stored in advance.
13)前記目標速度データを目標としてモータ2の速度
を制御する。13) Control the speed of the motor 2 using the target speed data as a target.
14〉前記位置偏差が所定位置決め精度より太き(プれ
ば、12)に戻る。14> The positional deviation is larger than the predetermined positioning accuracy (if it goes down, it returns to 12).
15)位置決め完了信号を主制御部に送り、1〉に戻る
。15) Send the positioning completion signal to the main control section and return to 1>.
ように構成されている。It is configured as follows.
上記の場合、電流指令値にサーボ強さ決定定数を乗じて
電流指令値の大ぎざを可変にしておけば、サーボ強さ決
定定数を大きくして、モータ2の追従性を上げ、力を強
くでき、また前記サーボ強さ決定定数が小さして、モー
タ2の追従性を落し、その動きを安定させることができ
る。In the above case, if the current command value is multiplied by the servo strength determination constant to make the large serration of the current command value variable, the servo strength determination constant can be increased to improve the followability of motor 2 and increase the force. In addition, by reducing the servo strength determining constant, the followability of the motor 2 can be reduced, and its movement can be stabilized.
前記PWM駆動部1Cは、PWMパルス幅選択部16お
よびPWM駆動回路17を備えており、PWMパルス幅
選択部16は前記電流指令値に対応するPWMのパルス
幅を選択して、所定パルス幅のパルス列を発振するよう
に構成されている。また、前記PWM駆動回路17は前
記パルス列に応じた駆動電圧をモータ2に供給するよう
に構成されている。The PWM drive unit 1C includes a PWM pulse width selection unit 16 and a PWM drive circuit 17, and the PWM pulse width selection unit 16 selects a PWM pulse width corresponding to the current command value to obtain a predetermined pulse width. It is configured to oscillate a pulse train. Further, the PWM drive circuit 17 is configured to supply the motor 2 with a drive voltage according to the pulse train.
前記モータ2にはその回転を検出するパルスエンコーダ
14が取付けられており、この位置検出パルスが積算器
15を介して前記サーボ制御部1bにフィードバックさ
れ、モータの位置・速度制御が行われるように構成され
ている。A pulse encoder 14 is attached to the motor 2 to detect its rotation, and this position detection pulse is fed back to the servo control unit 1b via an integrator 15 to control the position and speed of the motor. It is configured.
上記産業用ロボットの制御装置では、作業開始前に、主
制御部1aが移動指令信号を受けると、あらかじめ第l
RAM5に設定された作業位置から最初の作業位置を選
択し、これを目標位置指令値としてDMAコントローラ
8を介して第2RAM9の所定アドレスに出力する。さ
らに、主制御部1aは、目標速度データの中の最大目標
速度データを呼出し、その1サーボ周期の移動mをサイ
クル速度指令値として算出するとともに、前記目標位置
指令とモータ2の現在速度との差から、第4図(c2)
に示すように増減回数指令値、繰返し回数指令値、およ
び前記サイクル速度指令値よりも充分に小さい増減定数
を算出する。これら情報は、DMAコントローラ8を介
して第2RAM9の所定アドレスに送られ、記憶される
。同時に、主制御部1aはDMAコントローラ8を介し
てm2RAM9の所定アドレス内の入力情報を読込み、
位置決め完了フラグの入力を待つ。In the control device for the industrial robot described above, when the main control unit 1a receives a movement command signal before starting work,
The first working position is selected from the working positions set in the RAM 5, and is output as a target position command value to a predetermined address in the second RAM 9 via the DMA controller 8. Furthermore, the main control unit 1a calls the maximum target speed data from among the target speed data, calculates the movement m of one servo cycle as a cycle speed command value, and also calculates the difference between the target position command and the current speed of the motor 2. From the difference, Figure 4 (c2)
As shown in the figure, an increase/decrease number command value, a repetition number command value, and an increase/decrease constant that is sufficiently smaller than the cycle speed command value are calculated. These pieces of information are sent to a predetermined address in the second RAM 9 via the DMA controller 8 and stored therein. At the same time, the main control unit 1a reads input information within a predetermined address of the m2RAM 9 via the DMA controller 8,
Waits for input of positioning completion flag.
一方、サーボ制御部1bでは第2RAMe内の所定情報
が読込まれ、前記サイクル速度記憶部が零にセットされ
て後、これに減速定数が加算され、この記憶値が前回の
目標位置に加算され、これが新たな目標位置となる。こ
の目標位置と積算器15の積算値との差でなる位置偏差
が算出され、この位置偏差に対応して第2RAM 9に
記憶された目標速度データが呼出され、この目標速度デ
ータと現在速度と差でなる速度偏差が求められる。この
速度偏差に応じて電流指令値が求められ、この電流指令
値がI10ポート13からパルス幅選択部16に送られ
る。パルス幅選択部16は、この電流指令値に応じて所
定のパルス幅のパルス列を発振し、このパルス列に応じ
てPWM駆動回路17から駆動電圧がモータ2に加えら
れ、モータ2は前記目標速度データを目標として駆動さ
れる。この時の位置偏差は増減定数に近い値であり、非
常に小さいので、これに対応した目標速度データは零に
近い僅かな値となり、目標速度データの変化もほとんど
ない。そのため、モータ2に発生する駆動力は非常に小
さく、ロボットの可動部に発生する加速度は非常に小さ
く、次のサーボ制御サイクルまでの移動偵は僅かとなる
。On the other hand, in the servo control unit 1b, predetermined information in the second RAMe is read, and after the cycle speed storage unit is set to zero, a deceleration constant is added thereto, and this stored value is added to the previous target position, This becomes the new target position. A positional deviation consisting of the difference between this target position and the integrated value of the integrator 15 is calculated, and the target speed data stored in the second RAM 9 is called corresponding to this positional deviation, and the target speed data and the current speed are The speed deviation resulting from the difference is calculated. A current command value is determined according to this speed deviation, and this current command value is sent from the I10 port 13 to the pulse width selection section 16. The pulse width selection unit 16 oscillates a pulse train of a predetermined pulse width according to this current command value, and a drive voltage is applied to the motor 2 from the PWM drive circuit 17 according to this pulse train, and the motor 2 is driven by the target speed data. is driven by the goal of The positional deviation at this time is a value close to the increase/decrease constant and is very small, so the corresponding target speed data is a slight value close to zero, and there is almost no change in the target speed data. Therefore, the driving force generated in the motor 2 is very small, the acceleration generated in the movable parts of the robot is very small, and the amount of movement until the next servo control cycle is small.
次のサーボ制御サイクルでは、前回のサイクル速度記憶
部の記憶値に前記増減定数が加算され、この記憶値が前
回の目標位置に汀線されてこれが新たな目標位置となる
。前回同様に、この目標位置までの位置偏差、これに応
じた目標速度データが求められ、これを目標としてモー
タ2が制御される。この時、前回の移動が僅かで増減定
数の分だけ移動していないので、位置偏差は前回よりも
僅かに大きくなり、第4図(b)に示すようにこれに対
応した目標速度も前回よりも大きくなり、サーボ制御サ
イクルの繰返し回数が増加する毎に、モータ2の速度は
増加する。In the next servo control cycle, the increase/decrease constant is added to the value stored in the previous cycle speed storage section, and this stored value is shorelined to the previous target position, which becomes the new target position. Similar to the previous time, the positional deviation to this target position and the corresponding target speed data are determined, and the motor 2 is controlled using this as the target. At this time, since the previous movement was small and did not move by the amount of the increase/decrease constant, the position deviation is slightly larger than the previous one, and the corresponding target speed is also smaller than the previous one, as shown in Figure 4 (b). The speed of the motor 2 increases as the number of repetitions of the servo control cycle increases.
前記サーボ制御サイクルが前記増減回数指令値に等しい
回数に達すると、その後はサイクル速度記憶部の記憶値
はサイクル速度指令値に固定される。そのため、目標位
置はサイクル速度指令値毎に増加し、サーボ制御サイク
ルが増加する毎に位置偏差も増加する。この位置偏差が
増加するにしたがってその増加はどに、目標速度データ
が増加しなくなるので、目標速度データの変化すなわち
加速度は小さくなりなからモータ2の速度が増加する。When the servo control cycle reaches the number of times equal to the increase/decrease number command value, the stored value in the cycle speed storage section is thereafter fixed at the cycle speed command value. Therefore, the target position increases with each cycle speed command value, and the position deviation also increases with each increase in servo control cycles. As this positional deviation increases, the target speed data no longer increases, so the change in the target speed data, that is, the acceleration does not decrease, but the speed of the motor 2 increases.
前記サーボ制御サイクルの繰返し回数が増加し、繰返し
回数指令値に等しくなると、サイクル速度指令値となっ
ているサイクル速度記憶部の記憶値から前記増減定数が
減じられ、新たな記憶値が19られる。この記憶値を前
回の目標位置に加えて新たな目標を得て、この目標位置
までの位置偏差が求められる。この位置偏差の増加率が
徐々に小さくなるので、目標速度の増加率はざらに小さ
くなる。上記制御を繰返すと、サイクル速度記憶部の記
憶値が小さくなり、その値がその時の一制御サイクルの
移動量よりも小さくなると、位置偏差が減少するように
なり、これに対応した目標速度データも増加から減少に
転じる。そのため、モータ2は減速を始め目標速度デー
タの変化すなわち加速度も加速から減速に転じる。前記
サイクル速度記憶部の記憶値が減少してサーボ制御サイ
クルの繰返し回数が前記増減回数指令値に等しくなると
、目標位置は前記目標位置指令値に固定される。そのた
め、以後は位置偏差が減少し、これに対応した目標速度
データも減少し、モータ2は減速され、ついには停止す
ることができる。When the number of repetitions of the servo control cycle increases and becomes equal to the repetition number command value, the increase/decrease constant is subtracted from the stored value in the cycle speed storage section which is the cycle speed command value, and a new stored value is set to 19. This stored value is added to the previous target position to obtain a new target, and the positional deviation to this target position is determined. Since the rate of increase in this positional deviation gradually decreases, the rate of increase in the target speed also decreases roughly. When the above control is repeated, the value stored in the cycle speed storage section becomes smaller, and when that value becomes smaller than the movement amount of one control cycle at that time, the position deviation starts to decrease, and the corresponding target speed data also decreases. Changes from increase to decrease. Therefore, the motor 2 starts to decelerate, and the target speed data changes, that is, the acceleration changes from acceleration to deceleration. When the stored value in the cycle speed storage unit decreases and the number of repetitions of the servo control cycle becomes equal to the increase/decrease number command value, the target position is fixed to the target position command value. Therefore, from then on, the positional deviation decreases, the corresponding target speed data also decreases, and the motor 2 is decelerated and can finally be stopped.
[発明の効果]
以上説明したように、本発明は目標位置指令値、1サー
ボ周期の目標移動量でなるサイクル速度指令値、増減回
数指令値、繰返し回数指令値、およびサイクル速度指令
値よりも充分に小さい増減定数を受取ると、前回の目標
位置に増減定数を制御サイクルの毎に加えた値を目標位
置としてこの目標位置と現在位置との差でなる位置偏差
を求め、所定減速特性に基づいて前記位置偏差に応じた
目標速度データを呼出し、この目標速度データを目(票
としてモータの回転を制御するとともに、この制御を増
減回数指令値の回数だけ繰返し行い、次に目標位置を現
在位置にサイクル速度指令値を加えた値としてこの目標
位置と現在位置との差でなる位置偏差を求め、所定減速
特性に基づいて前記位置偏差に応じた目標速度データを
呼出し、この目標速度データを目標としてモータの回転
を制御するとともに、この制御を繰返し回数指令値の回
数だけ繰返し行い、
さらに、前回の目標位置から制御サイクル毎に増減定数
を減じた値を目標位置としてこの目標位置と現在位置と
の差でなる位置偏差を求め、所定減速特性に基づいて前
記位置偏差に応じた目標速度データを吐出し、この目(
票速度データを目(票としてモータの回転を制御すると
ともに、この制御を前記増減回数指令値の回数だけ繰返
し行い、その後は目標位置を前記目標位置指令値として
固定し、この目標位置指令値と現在位置との差でなる位
置偏差を求め、前記減速特性に基づいて前記位置偏差に
対応した目標速度データを呼出し、この目標速度データ
を目標としてモータの回転を制御し、ついには停止させ
るように構成しているため、台形状のサイクル速度指令
値の導入によりモータの加速度を連続的に変化させるこ
とができ、モータが滑かに移動することができる等の利
点がおる。[Effects of the Invention] As explained above, the present invention provides a target position command value, a cycle speed command value consisting of the target movement amount of one servo cycle, an increase/decrease number command value, a repetition number command value, and a cycle speed command value. When a sufficiently small increase/decrease constant is received, the value obtained by adding the increase/decrease constant to the previous target position for each control cycle is set as the target position, and the position deviation, which is the difference between this target position and the current position, is calculated based on the predetermined deceleration characteristics. The target speed data is called up according to the position deviation, and this target speed data is used as a reference to control the rotation of the motor, and this control is repeated the number of times specified by the increase/decrease number command value, and then the target position is changed to the current position. The positional deviation, which is the difference between this target position and the current position, is calculated as the value obtained by adding the cycle speed command value to The rotation of the motor is controlled as follows, and this control is repeated as many times as the repetition count command value.Furthermore, the value obtained by subtracting the increase/decrease constant from the previous target position for each control cycle is set as the target position, and this target position and current position are Find the positional deviation based on the difference between
The rotation of the motor is controlled using the vote speed data as a check, and this control is repeated the number of times of the increase/decrease command value.After that, the target position is fixed as the target position command value, and the target position command value is The system calculates the positional deviation resulting from the difference from the current position, calls the target speed data corresponding to the positional deviation based on the deceleration characteristics, controls the rotation of the motor using this target speed data as a target, and finally stops the motor. Because of this structure, the acceleration of the motor can be continuously changed by introducing a trapezoidal cycle speed command value, and the motor can move smoothly.
第1図は本発明の全体説明図、第2図は本発明に係わる
作業プログラムのフローチャート、第3図は本発明に係
わる目標速度出力プログラムのフローチャート、第4図
(a)は本発明により1qられるサイクル速度記憶値−
サーボ制御サイクル特性図、第4図(b)は本発明によ
り得られる速度−サーボ制御サイクル特性図、第5図は
本発明に係わるモータの目標速度−位置偏差の関係を示
す減速特性の説明図、第6図は従来のモータの目標速度
−サーボ制御サイクルの関係を余す減速特性の説明図で
ある。
1 制御装置、 1a 主制御部、1b
サーボ制御部、 1c PWM駆動部、2 モ
ータ、 3 第1CPU、4 第lRO
M、 5 第1 RAM、6 キーボード
、 7 表示部、8 DMAコントローラ
、 9 第2RAM。FIG. 1 is an overall explanatory diagram of the present invention, FIG. 2 is a flowchart of a work program according to the present invention, FIG. 3 is a flowchart of a target speed output program according to the present invention, and FIG. 4(a) is a 1q Cycle speed memory value -
A servo control cycle characteristic diagram, FIG. 4(b) is a speed-servo control cycle characteristic diagram obtained by the present invention, and FIG. 5 is an explanatory diagram of deceleration characteristics showing the relationship between target speed and position deviation of the motor according to the present invention. , FIG. 6 is an explanatory diagram of a deceleration characteristic that leaves behind the relationship between target speed and servo control cycle of a conventional motor. 1 Control device, 1a Main control section, 1b
Servo control unit, 1c PWM drive unit, 2 motor, 3 1st CPU, 4 1st RO
M, 5 first RAM, 6 keyboard, 7 display section, 8 DMA controller, 9 second RAM.
Claims (2)
ボ制御するモータの速度制御方法において、 1)位置偏差が小さい範囲ではその増加にともなつて零
から急激に増加する目標速度データであつて、位置偏差
が大きい範囲ではその増加にともなって最高速度近くで
変化の少ない目標速度データを、位置偏差に対応して記
憶する。 2)主制御部から、目標位置指令値、1サーボ周期の目
標移動量でなるサイクル速度指令値、繰返し回数指令値
、増減回数指令値、および前記サイクル速度指令値より
も充分に小さい増減定数を受取ると、制御回数記憶部、
増減回数記憶部、サイクル速度記憶部、モード記憶部に
零をセットする。 3)モード記憶部が増減回数記憶部の値と増減回数指令
値との一致信号を記憶している時、6)にジャンプする
。前記モード記憶部が前記一致信号とともに制御回数記
憶部と繰返し回数指令値との一致信号を記憶している時
、7)にジャンプする。 4)増減回数記憶部に1を加え、その結果と増減回数指
令値とを比較し、両者が等しければ、モード記憶部にそ
の一致信号を送る。増減回数記憶部を零にセットする。 さらに、サイクル速度記憶部にサイクル速度指令値をセ
ットし、6)にジャンプする。 5)サイクル速度記憶部に設定されたサイクル速度指令
値よりも十分に小さい値である増減定数を加え、これを
新たなサイクル速度記憶部の値とする。 6)制御回数記憶部に1を加え、その結果と繰返し回数
指令値とを比較し、両者が等しければモード記憶部にそ
の一致信号を送る。両者が等しくなければ、9)にジャ
ンプする。7)増減回数記憶部に1を加え、その結果と
増減回数指令値とを比較し、両者が等しければ、12)
にジャンプする。 8)サイクル速度記憶部の値から増減定数を引き、これ
を新しいサイクル速度記憶部の記憶値とする。 9)前回のサーボ周期における目標位置にサイクル速度
記憶部の記憶値を加え、これを新しい目標位置とする。 10)目標位置と現在位置との差を位置偏差とし、あら
かじめ記憶している目標速度データの中から前記位置偏
差に対応した目標速度データを呼出す。 11)前記目標速度データを目標としてモータの速度を
制御し、3)に戻る。 12)前記目標位置指令値を新しい目標位置とする。 13)目標位置指令値と現在位置との差を位置偏差とし
、あらかじめ記憶している目標速度データの中から前記
位置偏差に対応した目標速度データを呼出す。 14)前記目標速度データを目標としてモータの速度を
制御する。 15)前記位置偏差が所定位置決め精度より大きければ
、13)に戻る。 16)位置決め完了信号を主制御部に送り、2)に戻る
。 ことを特徴とするモータの速度制御方法。(1) In a motor speed control method in which the motor speed is servo-controlled in response to commands from the main control unit, 1) In a range where the position deviation is small, the target speed data rapidly increases from zero as the position deviation increases. In a range where the positional deviation is large, as the positional deviation increases, target speed data that does not change much near the maximum speed is stored corresponding to the positional deviation. 2) From the main control unit, set a target position command value, a cycle speed command value consisting of the target movement amount of one servo cycle, a repetition number command value, an increase/decrease number command value, and an increase/decrease constant that is sufficiently smaller than the cycle speed command value. When received, the control number storage unit,
Zero is set in the increase/decrease number storage section, cycle speed storage section, and mode storage section. 3) When the mode storage section stores a matching signal between the value in the increase/decrease number storage section and the increase/decrease number command value, jump to 6). When the mode storage section stores a coincidence signal between the control number storage section and the repetition number command value together with the coincidence signal, the process jumps to 7). 4) Add 1 to the increase/decrease number storage section, compare the result with the increase/decrease number command value, and if the two are equal, send a match signal to the mode storage section. Set the increase/decrease number storage unit to zero. Furthermore, a cycle speed command value is set in the cycle speed storage section, and the process jumps to 6). 5) Add an increase/decrease constant that is a value sufficiently smaller than the cycle speed command value set in the cycle speed storage section, and use this as a new value in the cycle speed storage section. 6) Add 1 to the control number storage section, compare the result with the repetition number command value, and if the two are equal, send a match signal to the mode storage section. If the two are not equal, jump to 9). 7) Add 1 to the increase/decrease number storage unit, compare the result with the increase/decrease number command value, and if both are equal, 12)
Jump to. 8) Subtract the increase/decrease constant from the value in the cycle speed storage section and use this as the new value stored in the cycle speed storage section. 9) Add the value stored in the cycle speed storage section to the target position in the previous servo cycle and use this as the new target position. 10) The difference between the target position and the current position is defined as a positional deviation, and the target speed data corresponding to the positional deviation is called from among the target speed data stored in advance. 11) Control the speed of the motor using the target speed data as a target, and return to 3). 12) Set the target position command value as a new target position. 13) The difference between the target position command value and the current position is defined as a positional deviation, and the target speed data corresponding to the positional deviation is called from among the target speed data stored in advance. 14) Control the speed of the motor using the target speed data as a target. 15) If the positional deviation is greater than the predetermined positioning accuracy, return to 13). 16) Send a positioning completion signal to the main control section and return to 2). A motor speed control method characterized by:
差に対応する目標速度から得られる1サーボ周期の移動
量であって、前記繰返し回数指令値は位置偏差をサイク
ル速度指令値で分割した分割数であることを特徴とする
請求項(1)に記載のモータの速度制御方法。(2) The cycle speed command value is the amount of movement in one servo cycle obtained from the target speed corresponding to the position deviation up to the target position, and the repetition number command value is the division of the position deviation by the cycle speed command value. 2. The motor speed control method according to claim 1, wherein the motor speed control method is a number.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP63086140A JPH01258006A (en) | 1988-04-06 | 1988-04-06 | Method for controlling speed of motor |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP63086140A JPH01258006A (en) | 1988-04-06 | 1988-04-06 | Method for controlling speed of motor |
Publications (1)
Publication Number | Publication Date |
---|---|
JPH01258006A true JPH01258006A (en) | 1989-10-16 |
Family
ID=13878418
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP63086140A Pending JPH01258006A (en) | 1988-04-06 | 1988-04-06 | Method for controlling speed of motor |
Country Status (1)
Country | Link |
---|---|
JP (1) | JPH01258006A (en) |
-
1988
- 1988-04-06 JP JP63086140A patent/JPH01258006A/en active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP2709969B2 (en) | Servo motor control method | |
JPH0655037B2 (en) | Servo motor speed control method | |
WO1989006066A1 (en) | Method of speed control for servomotor | |
JPH05228794A (en) | Positioning method for main spindle | |
JPH04352012A (en) | Robot-position controlling method | |
JPH06114762A (en) | Vibration damping control method | |
JPH01258006A (en) | Method for controlling speed of motor | |
JPH01173209A (en) | Industrial robot control method | |
JPH07210225A (en) | Numerical controller | |
JP2003015715A (en) | Command value generating method and command value generation system and prgraming device | |
JPH01236314A (en) | Motor control method | |
JP3189650B2 (en) | Robot controller | |
JP2996445B2 (en) | Multi-axis drive | |
JPH01195516A (en) | Control method for industrial robot | |
JPH07111647B2 (en) | Robot arm control method | |
JPS61136105A (en) | Shift controller of industrial robot | |
JPH0247702A (en) | High speed operation control method for robot | |
JPS6214209A (en) | Industrial robot | |
JPH11184512A (en) | Control gain determining method for robot | |
JP2833440B2 (en) | Moving speed control device | |
JPH1063329A (en) | Method for controlling accerelation | |
JPS63126008A (en) | Circular arc locus controller for multi-axis servo mechanism | |
JP3289861B2 (en) | Cycle time adjustment method for machining system | |
JPH01264788A (en) | Control device for industrial robot | |
JPH07104729B2 (en) | Non-linear friction compensation method for servo system |