JP2006072598A - Servo controller and servo control method - Google Patents

Servo controller and servo control method Download PDF

Info

Publication number
JP2006072598A
JP2006072598A JP2004253857A JP2004253857A JP2006072598A JP 2006072598 A JP2006072598 A JP 2006072598A JP 2004253857 A JP2004253857 A JP 2004253857A JP 2004253857 A JP2004253857 A JP 2004253857A JP 2006072598 A JP2006072598 A JP 2006072598A
Authority
JP
Japan
Prior art keywords
command
deceleration
speed
function
time
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP2004253857A
Other languages
Japanese (ja)
Inventor
Kazuo Sato
一男 佐藤
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Yaskawa Electric Corp
Original Assignee
Yaskawa Electric Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Yaskawa Electric Corp filed Critical Yaskawa Electric Corp
Priority to JP2004253857A priority Critical patent/JP2006072598A/en
Publication of JP2006072598A publication Critical patent/JP2006072598A/en
Pending legal-status Critical Current

Links

Images

Landscapes

  • Numerical Control (AREA)
  • Control Of Position Or Direction (AREA)

Abstract

<P>PROBLEM TO BE SOLVED: To provide a servo controller and a servo control method for suppressing the mechanical vibration of a load or the control vibration of a load without the delay of a command. <P>SOLUTION: This servo controller is provided with a command function preparing means 12 for preparing the difference of location commands in every certain time or a speed command according to the speed or moving amounts of the command by using a command function x being a function changing according to the lapse of time and a function for suppressing the mechanical vibration of a load or the control vibration of the load following the load. The command function preparing means 12 prepares an acceleration/deceleration profile by using the command function x, and calculates an acceleration command when the moving time is within the acceleration time, a command speed when the moving time is beyond a command speed and a deceleration command when the residual moving amounts are below a deceleration distance. <P>COPYRIGHT: (C)2006,JPO&NCIPI

Description

本発明は、負荷に合わせた指令関数を用いて位置指令や速度指令を作成する指令関数作成手段を用いたサーボ制御装置及びサーボ制御方法に関するものである。   The present invention relates to a servo control device and a servo control method using command function creating means for creating a position command and a speed command using a command function according to a load.

図5は、従来技術及び本発明に係るサーボ制御装置の概要を示す構成図である。
図5において、1はマイクロコンピュータ、2は電流アンプ、3はベースドライブ回路、4はパワートランジスタ、5はサーボモータ、6はサーボモータ5に直結されサーボモータ5の回転位置を検出するエンコーダ、7は負荷である。
サーボ制御装置は、制御対象であるサーボモータ5と、サーボモータ5に機械的に結合した負荷7と、サーボモータ5の位置を検出するエンコーダ6と、サーボモータ5を駆動するドライバとを備えて構成されている。また、ドライバはマイクロコンピュータ1と電流アンプ2と、ベースドライブ回路3と、ベースドライブ回路3により駆動されるパワートランジスタ4を備えている。
図6は、従来技術のサーボ制御装置を示す制御ブロック図である。
図6において、5はサーボモータ、8は加減速プロファイル作成手段、9は位置指令信号とエンコーダ6からのフィードバックパルスとによりサーボモータ5の位置を制御する位置制御部、10は位置制御部9から出力される速度指令信号とエンコーダ6からのフィードバックパルスとにより、サーボモータ5の速度を制御する速度制御部、11は積分部、である。また、図6中のPrefは位置指令、ωは速度、θは位置、Kpは位置ループゲイン、Kvは速度ループゲインである。
以上のように構成されたサーボ制御装置において、その動作を図5および図6を用いて説明する。
マイクロコンピュータ1は、移動指令や送り速度を外部のコントローラ等(不図示)から受取ると、加減速プロファイル作成手段8において、移動指令や送り速度および加減速時間に基づいて加減速プロファイルを作り、単位時間毎(サンプリング時間毎)の位置指令を作成する。この位置指令から、エンコーダ6からの位置フィードバックθを減算し、位置制御部9では減算結果である位置偏差に位置ループゲインKpを掛けて位置制御を行う。次に、位置制御部の出力である速度指令から位置フィードバックθの時間微分または差分に基づく速度フィードバックωを減算し、速度制御部10では、その減算結果である速度偏差に速度ループゲインKvをかけて速度制御を行う。そしてその出力の電流指令や電流制御の出力でベースドライブ駆動回路3を介してパワートランジスタ4を駆動し、サーボモータ5を制御する。
このように従来技術によるサーボ制御装置は、加減速プロファイル作成手段8により、移動指令や送り速度および加減速時間等から直線の加減速を付けたプロファイルを作り、それにフィルタを付け加減速指令を作っていた(例えば、特許文献1参照)。
また、その加減速指令に、更に負荷に合わせた加減速フィルタ(S字フィルタや指数関数フィルタ等)を付けて位置指令や速度指令とすることも行われてきた。
特開平7−121227号公報(第6図)
FIG. 5 is a block diagram showing an outline of a conventional servo control apparatus according to the present invention.
In FIG. 5, 1 is a microcomputer, 2 is a current amplifier, 3 is a base drive circuit, 4 is a power transistor, 5 is a servo motor, 6 is an encoder that is directly connected to the servo motor 5 and detects the rotational position of the servo motor 5, 7 Is the load.
The servo control device includes a servo motor 5 to be controlled, a load 7 mechanically coupled to the servo motor 5, an encoder 6 for detecting the position of the servo motor 5, and a driver for driving the servo motor 5. It is configured. The driver includes a microcomputer 1, a current amplifier 2, a base drive circuit 3, and a power transistor 4 driven by the base drive circuit 3.
FIG. 6 is a control block diagram showing a conventional servo control device.
In FIG. 6, 5 is a servo motor, 8 is an acceleration / deceleration profile creating means, 9 is a position control unit for controlling the position of the servo motor 5 by a position command signal and a feedback pulse from the encoder 6, and 10 is from the position control unit 9. A speed control unit 11 controls the speed of the servo motor 5 based on the output speed command signal and the feedback pulse from the encoder 6, and 11 is an integration unit. In FIG. 6, Pref is a position command, ω is a speed, θ is a position, Kp is a position loop gain, and Kv is a speed loop gain.
The operation of the servo control apparatus configured as described above will be described with reference to FIGS.
When the microcomputer 1 receives a movement command or feed speed from an external controller or the like (not shown), the acceleration / deceleration profile creating means 8 creates an acceleration / deceleration profile based on the movement command, feed speed and acceleration / deceleration time. A position command is created every time (every sampling time). The position feedback θ from the encoder 6 is subtracted from the position command, and the position control unit 9 performs position control by multiplying the position deviation as the subtraction result by the position loop gain Kp. Next, the speed feedback ω based on the time derivative or difference of the position feedback θ is subtracted from the speed command which is the output of the position control unit, and the speed control unit 10 multiplies the speed deviation which is the subtraction result by the speed loop gain Kv. Speed control. Then, the power transistor 4 is driven via the base drive drive circuit 3 with the output current command and the output of the current control, and the servo motor 5 is controlled.
In this way, the servo control device according to the prior art creates a profile with linear acceleration / deceleration from the movement command, feed speed, acceleration / deceleration time, etc. by the acceleration / deceleration profile creation means 8, and creates an acceleration / deceleration command by adding a filter to it. (For example, refer to Patent Document 1).
In addition, an acceleration / deceleration filter (such as an S-shaped filter or an exponential function filter) that matches the load is further added to the acceleration / deceleration command to obtain a position command or speed command.
Japanese Patent Laid-Open No. 7-121227 (FIG. 6)

しかしながら従来技術では、負荷の機械振動の周期が長い場合は加減速時間を長くしないと機械振動を抑えられず、その結果、指令時間が長くなってしまうという問題があった。また、負荷の機械振動、あるいは負荷の制御振動を抑えるため、負荷に合わせた加減速フィルタを制御の内部に入れる場合も、そのフィルタにより指令が遅れるという問題もあった。
本発明はこのような問題点に鑑みてなされたものであり、指令の遅れがなく機械の振動や制御振動を抑えることができるサーボ制御装置およびサーボ制御方法を提供することを目的とする。
However, in the prior art, when the period of the mechanical vibration of the load is long, the mechanical vibration cannot be suppressed unless the acceleration / deceleration time is lengthened. As a result, there is a problem that the command time becomes long. In addition, in order to suppress the mechanical vibration of the load or the control vibration of the load, there is also a problem that the command is delayed by the filter even when an acceleration / deceleration filter that matches the load is placed inside the control.
The present invention has been made in view of such problems, and an object of the present invention is to provide a servo control device and a servo control method capable of suppressing machine vibration and control vibration without causing a delay in commands.

上記問題を解決するため、請求項1に記載の発明は、サーボモータを駆動制御するサーボ制御装置において、前記サーボモータに直結され、前記サーボモータの回転位置を検出するエンコーダと、時間で変化する関数であり、負荷の機械振動、あるいは負荷の制御振動を抑える関数である指令関数を用いて指令の移動量や速度に応じて、ある時間ごとの位置指令の差分又は速度指令を作成する指令関数作成手段と、前記指令関数作成手段より指示される位置指令信号と前記エンコーダからのフィードバックパルスとにより該サーボモータの位置を制御する位置制御部と、前記位置制御部から出力される速度指令信号と前記エンコーダからのフィードバックパルスとにより、該サーボモータの速度を制御する速度制御部とを備えたことを特徴としている。
また、請求項2に記載の発明は、サーボモータを駆動制御するサーボ制御方法において、前記サーボモータに直結されたエンコーダにより前記サーボモータの回転位置を検出し、時間で変化する関数であり、負荷の機械振動、あるいは負荷の制御振動を抑える関数である指令関数(x)を用いて指令関数作成手段により指令の移動量や速度に応じて、ある時間ごとの位置指令の差分又は速度指令を作成し、前記指令関数作成手段より指示される位置指令信号と前記エンコーダからのフィードバックパルスを用いて位置制御部により該サーボモータの位置を制御し、前記位置制御部から出力される速度指令信号と前記エンコーダからのフィードバックパルスを用いて速度制御部により該サーボモータの速度を制御することを特徴としている。
また、請求項3に記載の発明は、請求項2に記載のサーボ制御方法において、前記指令関数作成手段は、現在の位置から目標位置までの移動量の残り距離となる残移動距離が、減速開始から停止までに必要な減速移動距離以下であるか否かを判断するステップと、前記残移動距離が前記減速移動距離を超える場合は、次に、移動時間が加速時間以上であるか否かを判断するステップと、前記加速時間未満の場合は加速処理に進むステップと、前記加速処理では、指令関数を用いて位置指令の差分を算出し、指令速度に加減速度分を、移動距離に前記指令速度分を加算すると共に、前記指令関数を用いて減速位置指令の差分を算出し、前記算出した減速位置指令の差分を現在の移動距離に加算することにより、減速距離を算出するステップと、前記残移動距離が前記減速距離を超え、且つ、前記加速時間以上の場合は、定速処理に進むステップと、前記残移動距離が前記減速移動距離以下になると減速処理に移るステップと、減速処理では、減速開始に減速時の端数を算出するステップと、前記指令関数を用いて位置指令の差分を算出するステップと、前記位置指令の差分が前記減速時の端数より小さい場合は、前記位置指令の差分の代わりに、減速時の端数を指令とするステップと、前記位置指令の差分が前記減速時の端数より大きい場合は、前記位置指令の差分を指令とするステップと、を備えたことを特徴としている。
また、請求項4に記載の発明は、請求項2または請求項3に記載のサーボ制御方法において、前記指令関数は、前記負荷の2つ以上の機械振動、または制御振動を抑えた関数であることを特徴としている。
また、請求項5に記載の発明は、請求項2乃至4のいずれか1項に記載のサーボ制御方法において、前記指令関数は、加速度と減速度が異なる指令関数であることを特徴としている。
In order to solve the above-mentioned problem, the invention according to claim 1 is a servo control device for driving and controlling a servo motor. The encoder is directly connected to the servo motor and detects the rotational position of the servo motor, and changes with time. A command function that creates a position command difference or speed command for each time according to the amount of movement and speed of the command using a command function that is a function that suppresses mechanical vibration of the load or control vibration of the load. A position control unit that controls the position of the servo motor by a position command signal instructed by the command function generation unit and a feedback pulse from the encoder, and a speed command signal output from the position control unit, A speed control unit for controlling the speed of the servo motor by a feedback pulse from the encoder; To have.
Further, the invention according to claim 2 is a servo control method for driving and controlling a servo motor, wherein the rotation position of the servo motor is detected by an encoder directly connected to the servo motor, and is a function that changes with time. Using command function (x), which is a function that suppresses machine vibration or load control vibration, creates command command creation means to create position command differences or speed commands according to the amount of command movement and speed. The position control unit controls the position of the servo motor using the position command signal instructed by the command function creating means and the feedback pulse from the encoder, and the speed command signal output from the position control unit and the It is characterized in that the speed of the servo motor is controlled by a speed control unit using a feedback pulse from an encoder.
According to a third aspect of the present invention, in the servo control method according to the second aspect, the command function creating means is configured such that the remaining moving distance that is the remaining distance of the moving amount from the current position to the target position is reduced. A step of determining whether or not the travel distance is less than or equal to a deceleration travel distance required from the start to the stop, and if the remaining travel distance exceeds the deceleration travel distance, then whether or not the travel time is greater than or equal to the acceleration time And the step of proceeding to acceleration processing if the acceleration time is less than the acceleration time, and in the acceleration processing, a difference in position command is calculated using a command function, the acceleration / deceleration amount is added to the command speed, and the movement distance is Adding a command speed, calculating a deceleration position command difference using the command function, and adding the calculated deceleration position command difference to a current travel distance to calculate a deceleration distance; When the remaining movement distance exceeds the deceleration distance and is equal to or longer than the acceleration time, the step proceeds to constant speed processing, the step proceeds to deceleration processing when the remaining movement distance becomes equal to or less than the deceleration movement distance, and deceleration processing. Then, calculating the fraction at the time of deceleration at the start of deceleration, calculating the difference of the position command using the command function, and if the difference of the position command is smaller than the fraction at the time of deceleration, the position command Instead of the difference of the step, the step of commanding the fraction at the time of deceleration, and the step of commanding the difference of the position command if the difference of the position command is larger than the fraction of the time of deceleration It is a feature.
According to a fourth aspect of the present invention, in the servo control method according to the second or third aspect, the command function is a function that suppresses two or more mechanical vibrations or control vibrations of the load. It is characterized by that.
According to a fifth aspect of the present invention, in the servo control method according to any one of the second to fourth aspects, the command function is a command function having different acceleration and deceleration.

請求項1に記載の発明によれば、負荷に合わせた指令関数を用いて位置指令や速度指令を作成する指令関数作成手段を備えるようにしているので、フィルタによる指令の遅れがなく、負荷の機械振動や制御振動を抑えることができるという効果がある。また、指令の遅れがないため、制御ゲインを上げ追従性を上げても、負荷の機械振動が発生し難いという効果もある。
請求項2に記載の発明によれば、負荷に合わせた指令関数を用いて位置指令や速度指令を作成する方法としているので、フィルタによる指令の遅れがなく、負荷の機械振動や制御振動を抑えることができるという効果がある。また、指令の遅れがないため、制御ゲインを上げ追従性を上げても、負荷の機械振動が発生し難いという効果もある。
請求項3に記載の発明によれば、加減速プロファイルを作成する時に指令関数を用いて行い、加速時間以内で加速、指令速度以上で指令速度とし、移動量の残りが減速距離以下で減速とする指令を算出する方法としているので、フィルタによる指令の遅れがなく、負荷の機械振動や制御振動を抑えることができるという効果がある。
請求項4に記載の発明によれば、負荷の2つ以上の機械振動、または制御振動を抑えた関数を用いて位置指令や速度指令を作成する方法としているので、2つ以上の機械振動、または制御振動を有する負荷の場合であっても、フィルタによる指令の遅れがなく、負荷の機械振動や制御振動を抑えることができるという効果がある。
請求項5に記載の発明によれば、加速度と減速度が異なる指令関数を用いて位置指令や速度指令を作成する方法としているので、加速度と減速度が異なる場合においても、フィルタによる指令の遅れがなく、負荷の機械振動や制御振動を抑えることができるという効果がある。
According to the first aspect of the present invention, since the command function creating means for creating the position command and the speed command using the command function according to the load is provided, there is no delay of the command by the filter, and the load There is an effect that mechanical vibration and control vibration can be suppressed. In addition, since there is no command delay, there is an effect that even if the control gain is increased and the followability is increased, mechanical vibration of the load is hardly generated.
According to the second aspect of the present invention, since the position command and the speed command are created using the command function matched to the load, there is no command delay due to the filter, and the mechanical vibration and control vibration of the load are suppressed. There is an effect that can be. In addition, since there is no command delay, there is an effect that even if the control gain is increased and the followability is increased, mechanical vibration of the load is hardly generated.
According to the third aspect of the present invention, the acceleration / deceleration profile is created using the command function, and the acceleration is within the acceleration time, the command speed is the command speed or more, and the remaining movement is the deceleration speed or less. Therefore, there is no command delay due to the filter, and there is an effect that the mechanical vibration and control vibration of the load can be suppressed.
According to the invention described in claim 4, since the position command and the speed command are created by using a function that suppresses two or more mechanical vibrations of the load or a control vibration, two or more mechanical vibrations, Alternatively, even in the case of a load having control vibration, there is no delay in command due to the filter, and there is an effect that mechanical vibration and control vibration of the load can be suppressed.
According to the fifth aspect of the present invention, since the position command and the speed command are created by using the command function having different acceleration and deceleration, the command delay by the filter can be achieved even when the acceleration and the deceleration are different. There is an effect that the mechanical vibration and control vibration of the load can be suppressed.

以下、本発明の具体的実施例について、図に基づいて説明する。   Hereinafter, specific examples of the present invention will be described with reference to the drawings.

図1は、本発明のサーボ制御装置の制御ブロック図である。
図1において、12は指令関数作成手段である。なお、図6と同じ説明符号のものは図6と同じ構成要素を示している。
本発明の特徴とする点は、従来技術の図6の構成要素であるフィルタを用いた加減速プロファイルを作成するための加減速プロファイル作成手段8の代わりに、時間で変化する関数であり、負荷の機械振動、あるいは負荷の制御振動を抑える関数である指令関数(x)を用いて指令の移動量や速度に応じて、ある時間ごとの位置指令の差分又は速度指令を作成する指令関数作成手段12を備えるようにしている点である。
すなわち、マイクロコンピュータ1は移動指令を受取ると、加減速時間や送り速度を算出し、指令関数作成手段12において指令関数を用いて位置指令の差分を作成し、この差分に基づいて、従来技術の図6の場合と同様に、位置制御部9では位置制御を行い、速度制御部10では速度制御を行うようにしている点である。
FIG. 1 is a control block diagram of the servo control device of the present invention.
In FIG. 1, 12 is a command function creating means. The same reference numerals as those in FIG. 6 indicate the same components as those in FIG.
A feature of the present invention is that it is a function that varies with time instead of the acceleration / deceleration profile creating means 8 for creating an acceleration / deceleration profile using a filter that is a component of FIG. Command function creating means for creating a position command difference or a speed command for each time according to the movement amount and speed of the command using a command function (x) which is a function to suppress the mechanical vibration of the load or the control vibration of the load 12 is provided.
That is, when the microcomputer 1 receives the movement command, the microcomputer 1 calculates the acceleration / deceleration time and the feed speed, creates a position command difference using the command function in the command function creation means 12, and based on this difference, As in the case of FIG. 6, the position control unit 9 performs position control, and the speed control unit 10 performs speed control.

図2は本発明のサーボ制御方法における移動指令入力時の前処理方法を示すフローチャートである。
以下、図2を用いて指令関数を使う為の加減速時間や送り速度を算出する前処理方法について説明する。
マイクロコンピュータ1は移動指令や送り速度を受取ると、与えられた移動指令と送り速度で指令速度が与えられた送り速度に到達するかどうか確認する(ステップST1)。すなわち、指令速度を0から加減速度分を加算していき、移動距離も指令速度分を加算していく。そして指令速度が与えられた送り速度になっても移動指令が移動距離より大きければ、移動量より指令速度は与えられた送り速度に到達していることになり、送り速度は与えられた送り速度となり、加速時間も決まる(ステップST2)。そうでない場合は、移動量より指令速度は与えられた送り速度に到達していないことになり、送り速度は到達前のその時点での指令速度になり、加速時間もその時点までの時間になる(ステップST3)。
FIG. 2 is a flowchart showing a pre-processing method when a movement command is input in the servo control method of the present invention.
Hereinafter, a preprocessing method for calculating the acceleration / deceleration time and the feed speed for using the command function will be described with reference to FIG.
When the microcomputer 1 receives the movement command and the feed speed, the microcomputer 1 checks whether or not the command speed reaches the given feed speed with the given movement command and feed speed (step ST1). That is, the acceleration / deceleration is added from 0 for the command speed, and the command speed is also added for the moving distance. If the movement command is larger than the movement distance even if the command speed reaches the given feed speed, the command speed has reached the given feed speed by the amount of movement, and the feed speed is the given feed speed. Thus, the acceleration time is also determined (step ST2). If this is not the case, the command speed will not reach the given feed speed based on the amount of movement, the feed speed will be the command speed at that point before reaching, and the acceleration time will also be the time until that point. (Step ST3).

図3は、本発明のサーボ制御方法を示すフローチャートである。
以下、図3を用いて本発明のサーボ制御方法を説明する。
サンプリング時間毎に位置指令の作成を開始し、現在の位置から目標位置までの移動量の残り距離となる残移動距離が、減速開始から停止までに必要な減速移動距離以下であるか否かを判断する(ステップST10)。残移動距離が減速移動距離を超える場合は、移動時間が加速時間以上か否かを判断し(ステップST20)、加速時間未満の場合は加速処理に進む(ステップST30)。加速処理では、指令関数を用いて位置指令の差分を算出し、指令速度に加減速度分を加算していき、移動距離についても指令速度分を加算していく。このとき、指令関数を用いて減速位置指令の差分も合わせて算出する。そして算出した減速位置指令の差分を現在の移動距離に加算することによりその速度での減速距離を算出する(ステップST40)。これは次のサンプリング時間における、ステップST10での残移動距離と減速移動距離の比較判断の為に行う。
ステップST10で、移動量の残り距離が減速距離を超え、且つ、移動時間が加速時間以上の場合は、定速処理に進む(ステップST50)。定速処理では、指令速度に少数部を持つ場合、指令速度の端数を加算して処理し、指令速度を算出する(ステップST60)。例えばXX.5(ここでXは数字)の場合、指令速度の端数も0.5相当にして、桁の上がる2回に1回「1」を加算して出力する。定速処理はサンプリング時間毎に繰り返し、ステップST10で残移動距離が減速移動距離以下になると減速処理に移る(ステップST70)。
ステップST70の減速処理では、減速開始か否かを判断し(ステップST80)、減速開始に減速時の端数を1回だけ算出する(ステップST90)。減速時の端数とは、残り距離から減速距離を差し引き、それに送り速度を加算したものである。
指令関数を用いて位置指令の差分を算出する(ステップST100)。位置指令の差分と減速時の端数を比較し(ステップST110)、位置指令の差分が減速時の端数より小さい場合は、位置指令の差分の代わりに、減速時の端数を指令し(ステップST120)、位置指令の差分が減速時の端数より大きい場合は、通常通り位置指令の差分を指令することにより端数処理を行う(ステップST130)。
FIG. 3 is a flowchart showing the servo control method of the present invention.
Hereinafter, the servo control method of the present invention will be described with reference to FIG.
Starts creating a position command at every sampling time, and checks whether the remaining travel distance, which is the remaining distance from the current position to the target position, is less than or equal to the deceleration travel distance required from the start of deceleration to the stop. Judgment is made (step ST10). If the remaining moving distance exceeds the deceleration moving distance, it is determined whether or not the moving time is equal to or longer than the acceleration time (step ST20). If the remaining moving distance is less than the acceleration time, the process proceeds to acceleration processing (step ST30). In the acceleration process, a position command difference is calculated using a command function, the acceleration / deceleration is added to the command speed, and the command speed is also added to the moving distance. At this time, the difference of the deceleration position command is also calculated using the command function. Then, by adding the calculated deceleration position command difference to the current movement distance, the deceleration distance at that speed is calculated (step ST40). This is performed for comparison judgment of the remaining movement distance and the deceleration movement distance in step ST10 at the next sampling time.
If the remaining distance of the movement amount exceeds the deceleration distance in step ST10 and the movement time is equal to or longer than the acceleration time, the process proceeds to a constant speed process (step ST50). In the constant speed processing, when the command speed has a decimal part, the fraction of the command speed is added and processed to calculate the command speed (step ST60). For example, XX. In the case of 5 (where X is a number), the fraction of the command speed is also equivalent to 0.5, and “1” is added once to the two times the digit is incremented and output. The constant speed process is repeated every sampling time, and when the remaining moving distance becomes equal to or less than the deceleration moving distance in step ST10, the process proceeds to the deceleration process (step ST70).
In the deceleration process of step ST70, it is determined whether or not deceleration is started (step ST80), and the fraction at the time of deceleration is calculated only once for the start of deceleration (step ST90). The fraction at the time of deceleration is obtained by subtracting the deceleration distance from the remaining distance and adding the feed speed.
A difference in position command is calculated using the command function (step ST100). The difference between the position command and the fraction at the time of deceleration are compared (step ST110). If the difference between the position commands is smaller than the fraction at the time of deceleration, the fraction at the time of deceleration is commanded instead of the difference of the position command (step ST120). If the position command difference is larger than the fraction at the time of deceleration, fraction processing is performed by commanding the position command difference as usual (step ST130).

図4は、本発明のサーボ制御方法で用いた指令関数の例を示す説明図である。図4において、縦軸は指令x、横軸は時間tである。
以下、図4を参照しながら、本発明のサーボ制御方法で用いた指令関数の例について説明する。
図4に示す指令関数xは、次に示す1式で表わされる。
x= Vr/ta*t + f(t)・・・(1)
1式において、Vrは送り速度、taは加速時間、tは時間、f(t)は時間で変化する関数であり、負荷にあわせた、すなわち負荷の機械振動、および負荷の制御振動を抑える関数である。また、2つ以上の周波数を抑えたい場合は、2つ以上の機械振動、制御振動を抑えた指令関数であっても構わない。さらに、加速度と減速度の異なる指令関数を用いても構わない。
FIG. 4 is an explanatory diagram showing an example of a command function used in the servo control method of the present invention. In FIG. 4, the vertical axis represents the command x, and the horizontal axis represents time t.
Hereinafter, an example of a command function used in the servo control method of the present invention will be described with reference to FIG.
The command function x shown in FIG. 4 is expressed by the following one expression.
x = Vr / ta * t + f (t) (1)
In Formula 1, Vr is a feed speed, ta is an acceleration time, t is a time, and f (t) is a function that varies with time, and is a function that matches the load, that is, suppresses the mechanical vibration of the load and the control vibration of the load. It is. When it is desired to suppress two or more frequencies, a command function that suppresses two or more mechanical vibrations and control vibrations may be used. Furthermore, command functions having different acceleration and deceleration may be used.

以上述べたように、本実施例に係るサーボ制御装置は、フィルタを用いた加減速プロファイル作成手段8の代わりに、指令関数を用いて位置指令の差分又は速度指令を作成するための指令関数作成手段12を備え、マイクロコンピュータ1は移動指令を受取ると、加減速時間や送り速度を算出し、指令関数作成手段12において指令関数を用いて位置指令の差分を作成し、その差分に基づいて位置制御部9では位置制御を行い、速度制御部10では速度制御を行うようにしており、また、本実施例に係るサーボ制御方法は、加減速プロファイルを作成する時に指令関数を用いて行い、加速時間以内で加速、指令速度以上で指令速度とし移動量の残りが減速距離以下で減速とする指令を算出するようにしているので、指令に遅れがなく、負荷の機械振動や制御振動を抑えることができる。また、指令の遅れがないため、制御ゲインを上げ追従性を上げても、機械振動が発生し難いのである。   As described above, the servo control device according to the present embodiment creates a command function for creating a position command difference or speed command using a command function instead of the acceleration / deceleration profile creating means 8 using a filter. When the microcomputer 1 receives the movement command, the microcomputer 1 calculates the acceleration / deceleration time and the feed speed, and the command function creation unit 12 creates a difference between the position commands using the command function. The control unit 9 performs position control, and the speed control unit 10 performs speed control. The servo control method according to the present embodiment is performed by using a command function when creating an acceleration / deceleration profile, and accelerates. Acceleration within time, command speed over command speed, and command for deceleration with remaining movement amount less than deceleration distance are calculated. It is possible to suppress the 械振 motion and control vibration. Further, since there is no command delay, even if the control gain is increased and the followability is increased, it is difficult for mechanical vibration to occur.

本発明は、速度や移動量などに応じて、ある時間ごとにサーボ制御装置の位置指令や速度指令を作成するマシンコントローラやNCのような装置やシステムにも適用可能である。   The present invention can also be applied to an apparatus or system such as a machine controller or NC that creates a position command or a speed command for a servo control device at certain time intervals according to a speed, a moving amount, or the like.

本発明のサーボ制御装置の制御ブロック図Control block diagram of servo control device of the present invention 本発明のサーボ制御方法における移動指令入力時の前処理方法を示すフローチャートThe flowchart which shows the pre-processing method at the time of the movement command input in the servo control method of this invention 本発明のサーボ制御方法を示すフローチャートThe flowchart which shows the servo control method of this invention 本発明のサーボ制御方法で用いた指令関数の例を示す説明図Explanatory drawing showing an example of a command function used in the servo control method of the present invention 従来技術及び本発明に係るサーボ制御装置の概要を示す構成図Configuration diagram showing an overview of a prior art and a servo control device according to the present invention 従来技術のサーボ制御装置を示す制御ブロック図Control block diagram showing a servo control device of the prior art

符号の説明Explanation of symbols

1 マイクロコンピュータ
2 電流アンプ
3 ベースドライブ回路
4 パワートランジスタ
5 サーボモータ
6 エンコーダ
7 負荷
8 加減速プロファイル作成手段
9 位置制御部
10 速度制御部
11 積分部
12 指令関数作成手段
1 Microcomputer 2 Current amplifier 3 Base drive circuit
4 Power transistor 5 Servo motor 6 Encoder 7 Load 8 Acceleration / deceleration profile creation means 9 Position control section 10 Speed control section 11 Integration section 12 Command function creation means

Claims (5)

サーボモータ(5)を駆動制御するサーボ制御装置において、
前記サーボモータ(5)に直結され、前記サーボモータ(5)の回転位置を検出するエンコーダ(6)と、
時間で変化する関数であり、負荷の機械振動、あるいは負荷の制御振動を抑える関数である指令関数(x)を用いて指令の移動量や速度に応じて、ある時間ごとの位置指令の差分又は速度指令を作成する指令関数作成手段(12)と、
前記指令関数作成手段(12)より指示される位置指令信号と前記エンコーダ(6)からのフィードバックパルスとにより該サーボモータ(5)の位置を制御する位置制御部(9)と、
前記位置制御部(9)から出力される速度指令信号と前記エンコーダ(6)からのフィードバックパルスとにより、該サーボモータ(5)の速度を制御する速度制御部(10)とを備えたことを特徴とするサーボ制御装置。
In the servo control device that drives and controls the servo motor (5),
An encoder (6) directly connected to the servo motor (5) for detecting the rotational position of the servo motor (5);
This is a function that changes with time, and a difference in position command for each time or a command function (x) that is a function that suppresses mechanical vibration of the load or control vibration of the load, according to the movement amount or speed of the command. Command function creating means (12) for creating a speed command;
A position control unit (9) for controlling the position of the servo motor (5) by a position command signal instructed by the command function creating means (12) and a feedback pulse from the encoder (6);
A speed control unit (10) for controlling the speed of the servo motor (5) by a speed command signal output from the position control unit (9) and a feedback pulse from the encoder (6); Servo control device.
サーボモータ(5)を駆動制御するサーボ制御方法において、
前記サーボモータ(5)に直結されたエンコーダ(6)により前記サーボモータ(5)の回転位置を検出し、
時間で変化する関数であり、負荷の機械振動、あるいは負荷の制御振動を抑える関数である指令関数(x)を用いて指令関数作成手段(12)により指令の移動量や速度に応じて、ある時間ごとの位置指令の差分又は速度指令を作成し、
前記指令関数作成手段(12)より指示される位置指令信号と前記エンコーダ(6)からのフィードバックパルスを用いて位置制御部(9)により該サーボモータ(5)の位置を制御し、
前記位置制御部(9)から出力される速度指令信号と前記エンコーダ(6)からのフィードバックパルスを用いて速度制御部(10)により該サーボモータ(5)の速度を制御することを特徴とするサーボ制御方法。
In the servo control method for driving and controlling the servo motor (5),
The rotational position of the servo motor (5) is detected by the encoder (6) directly connected to the servo motor (5),
It is a function that changes with time, and there is a command function (x) that is a function that suppresses the mechanical vibration of the load or the control vibration of the load, according to the movement amount and speed of the command by the command function creating means (12). Create position command difference or speed command for each time,
The position controller (9) controls the position of the servo motor (5) using the position command signal instructed by the command function creating means (12) and the feedback pulse from the encoder (6).
The speed control unit (10) controls the speed of the servo motor (5) using a speed command signal output from the position control unit (9) and a feedback pulse from the encoder (6). Servo control method.
前記指令関数作成手段(12)は、
現在の位置から目標位置までの移動量の残り距離となる残移動距離が、減速開始から停止までに必要な減速移動距離以下であるか否かを判断するステップ(ST10)と、
前記残移動距離が前記減速移動距離を超える場合は、次に、移動時間が加速時間以上であるか否かを判断するステップ(ST20)と、
前記加速時間未満の場合は加速処理に進むステップ(ST30)と、
前記加速処理では、指令関数(x)を用いて位置指令の差分を算出し、指令速度に加減速度分を、移動距離に前記指令速度分を加算すると共に、前記指令関数(x)を用いて減速位置指令の差分を算出し、前記算出した減速位置指令の差分を現在の移動距離に加算することにより、減速距離を算出するステップ(ST40)と、
前記残移動距離が前記減速距離を超え、且つ、前記加速時間以上の場合は、定速処理に進むステップ(ST50)と、
前記残移動距離が前記減速移動距離以下になると減速処理に移るステップ(ST70)と、
減速処理では、減速開始に減速時の端数を算出するステップ(ST90)と、
前記指令関数を用いて位置指令の差分を算出するステップ(ST100)と、
前記位置指令の差分が前記減速時の端数より小さい場合は、前記位置指令の差分の代わりに、減速時の端数を指令とするステップ(ST120)と、
前記位置指令の差分が前記減速時の端数より大きい場合は、前記位置指令の差分を指令とするステップ(ST130)と、を備えたことを特徴とする請求項2に記載のサーボ制御方法。
The command function creating means (12)
A step (ST10) of determining whether or not the remaining moving distance that is the remaining distance of the moving amount from the current position to the target position is equal to or less than a deceleration moving distance required from the start of deceleration to the stop;
If the remaining movement distance exceeds the deceleration movement distance, then determining whether the movement time is equal to or longer than the acceleration time (ST20);
If it is less than the acceleration time, a step (ST30) of proceeding to acceleration processing;
In the acceleration process, a difference between position commands is calculated using a command function (x), an acceleration / deceleration is added to the command speed, and the command speed is added to a moving distance, and the command function (x) is used. Calculating a deceleration distance command, and calculating a deceleration distance by adding the calculated deceleration position command difference to the current travel distance (ST40);
When the remaining moving distance exceeds the deceleration distance and is equal to or longer than the acceleration time, a step of proceeding to constant speed processing (ST50);
A step of moving to deceleration processing when the remaining movement distance is equal to or less than the deceleration movement distance (ST70);
In the deceleration process, a step (ST90) of calculating a fraction at the time of deceleration at the start of deceleration,
Calculating a difference between position commands using the command function (ST100);
When the difference of the position command is smaller than the fraction at the time of deceleration, a step (ST120) of setting the fraction at the time of deceleration as a command instead of the difference of the position command;
The servo control method according to claim 2, further comprising a step (ST130) of using the position command difference as a command when the position command difference is larger than the fraction at the time of deceleration.
前記指令関数(x)は、前記負荷の2つ以上の機械振動、または制御振動を抑えた関数であることを特徴とする請求項2または請求項3に記載のサーボ制御方法。   The servo control method according to claim 2, wherein the command function (x) is a function that suppresses two or more mechanical vibrations or control vibrations of the load. 前記指令関数(x)は、加速度と減速度が異なる指令関数であることを特徴とする請求項2乃至4のいずれか1項に記載のサーボ制御方法。   The servo control method according to any one of claims 2 to 4, wherein the command function (x) is a command function having different acceleration and deceleration.
JP2004253857A 2004-09-01 2004-09-01 Servo controller and servo control method Pending JP2006072598A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2004253857A JP2006072598A (en) 2004-09-01 2004-09-01 Servo controller and servo control method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2004253857A JP2006072598A (en) 2004-09-01 2004-09-01 Servo controller and servo control method

Publications (1)

Publication Number Publication Date
JP2006072598A true JP2006072598A (en) 2006-03-16

Family

ID=36153180

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2004253857A Pending JP2006072598A (en) 2004-09-01 2004-09-01 Servo controller and servo control method

Country Status (1)

Country Link
JP (1) JP2006072598A (en)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2011243153A (en) * 2010-05-21 2011-12-01 Mitsubishi Electric Corp Synchronization control device
WO2012049866A1 (en) * 2010-10-13 2012-04-19 オムロン株式会社 Control device, control system and control method
CN113946137A (en) * 2020-07-15 2022-01-18 山东省科学院激光研究所 Impact suppression device and method adopting transmission mechanism gap speed limitation

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2011243153A (en) * 2010-05-21 2011-12-01 Mitsubishi Electric Corp Synchronization control device
WO2012049866A1 (en) * 2010-10-13 2012-04-19 オムロン株式会社 Control device, control system and control method
JP2012083982A (en) * 2010-10-13 2012-04-26 Omron Corp Controller, control system, and control method
US9606524B2 (en) 2010-10-13 2017-03-28 Omron Corporation Control apparatus, control system and control method
CN113946137A (en) * 2020-07-15 2022-01-18 山东省科学院激光研究所 Impact suppression device and method adopting transmission mechanism gap speed limitation
CN113946137B (en) * 2020-07-15 2024-06-04 山东省科学院激光研究所 Impact suppression device and method adopting transmission mechanism clearance speed limitation

Similar Documents

Publication Publication Date Title
JP4335123B2 (en) Control device
EP1120698B1 (en) Position controller
JP5623757B2 (en) Motor control method and apparatus
JP4578732B2 (en) Machine tool feed system controller
JP2007141189A (en) Controller using acceleration sensor and adjusting device
US7144238B2 (en) Servo motor control apparatus for electric injection molding machine
US20180364682A1 (en) Motor controller
JP2007219812A (en) Controller for servo motor
US7292001B2 (en) Gain adjusting method for servo control device
JP2011176907A5 (en)
CN111095131A (en) Servo control method
JP2006072598A (en) Servo controller and servo control method
JP5886717B2 (en) Iterative learning position controller
WO2014024215A1 (en) Torque control device
JP5515644B2 (en) Position control device
JP2006217746A (en) Motor controller
JP5018410B2 (en) Electric motor control device
JP5493941B2 (en) Position command generator
JP3226413B2 (en) Numerical control unit
JP5816812B2 (en) Motor drive device
JP5263143B2 (en) Electric motor control device
JPH08249073A (en) Method and device for speed control of mobing body
JP2003131704A (en) Motor control unit equipped with overshoot control function
JP2006018431A (en) Servo control device
JP2021114187A (en) Vibration suppression device and vibration suppression method