JP4588367B2 - Position control device - Google Patents

Position control device Download PDF

Info

Publication number
JP4588367B2
JP4588367B2 JP2004170013A JP2004170013A JP4588367B2 JP 4588367 B2 JP4588367 B2 JP 4588367B2 JP 2004170013 A JP2004170013 A JP 2004170013A JP 2004170013 A JP2004170013 A JP 2004170013A JP 4588367 B2 JP4588367 B2 JP 4588367B2
Authority
JP
Japan
Prior art keywords
torque
value
target position
sub cpu
torque value
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.)
Expired - Fee Related
Application number
JP2004170013A
Other languages
Japanese (ja)
Other versions
JP2005349494A (en
Inventor
直哉 猿橋
勝範 松澤
雅史 後藤
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.)
Honda Motor Co Ltd
Original Assignee
Honda Motor Co Ltd
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 Honda Motor Co Ltd filed Critical Honda Motor Co Ltd
Priority to JP2004170013A priority Critical patent/JP4588367B2/en
Publication of JP2005349494A publication Critical patent/JP2005349494A/en
Application granted granted Critical
Publication of JP4588367B2 publication Critical patent/JP4588367B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Landscapes

  • Numerical Control (AREA)

Description

本発明は、モータを駆動源とする移動体の実位置を目標位置に追従させる位置制御装置に関し、特に複数のCPUを用いた分散処理により、該モータの出力トルクの指令値を算出して位置制御を行う位置制御装置に関する。   The present invention relates to a position control device that causes a real position of a moving body that uses a motor as a drive source to follow a target position, and in particular, calculates a command value of the output torque of the motor by distributed processing using a plurality of CPUs. The present invention relates to a position control device that performs control.

例えば、加工ツールを予め設定された軌跡で移動させて切削加工等を行う工作機械においては、PID制御を適用した位置制御が広く採用されている。かかるPID制御によれば、微分補償やゲイン設定等の各種パラメータを工作機械の特性に応じて適切に設定することで、位置制御の性能を向上させることができる。   For example, position control using PID control is widely adopted in machine tools that perform machining by moving a machining tool along a preset trajectory. According to such PID control, the position control performance can be improved by appropriately setting various parameters such as differential compensation and gain setting according to the characteristics of the machine tool.

しかし、PID制御における各種パラメータの設定は、実際の工作機械を使用した現物調整により行われており、適切にパラメータを設定する作業は容易ではない。また、工作機械の動作特性は、機械振動や摩擦等の外乱、バックラッシュの大きさ等の工作機械の個体差、経年変化、等の種々の要因によって変化する。そのため、一旦適切なパラメータを設定しても、これらの要因によりパラメータが不適切なものとなり、正確な位置制御が困難になる場合や、加工ツールを移動させる際に工作機械の励振が生じる場合がある。   However, the setting of various parameters in PID control is performed by actual adjustment using an actual machine tool, and it is not easy to set parameters appropriately. In addition, the operating characteristics of the machine tool change due to various factors such as disturbances such as machine vibration and friction, individual differences of machine tools such as the magnitude of backlash, and aging. For this reason, even if an appropriate parameter is set once, the parameter may become inappropriate due to these factors, and accurate position control may be difficult, or the machine tool may be excited when moving the processing tool. is there.

そこで、上述した種々の要因の変化が生じた場合であっても、高精度の位置制御性能を確保するために、適応制御やロバスト制御等のいわゆる現代制御理論による制御手法を用いて位置制御を行うことが考えられる。しかし、これらの現代制御理論による制御手法を用いる場合、PID制御による場合に比べて、位置制御における演算処理が複雑になると共に演算量も飛躍的に増加する。   Therefore, in order to ensure highly accurate position control performance even when the above-mentioned various factors change, position control is performed using a control method based on so-called modern control theory such as adaptive control or robust control. It is possible to do it. However, when these control methods based on modern control theory are used, the calculation processing in the position control is complicated and the calculation amount is dramatically increased as compared with the case of using PID control.

そのため、高速に位置制御を行うためには、高速な演算処理能力をもった演算ユニットを用意する必要がある。そして、かかる演算ユニットとして、2個のCPUによりNCデータについて分散処理を行うようにした工作機械が提案されている(例えば、特許文献1参照)。
特開2003−316408号公報
Therefore, in order to perform position control at high speed, it is necessary to prepare an arithmetic unit having high-speed arithmetic processing capability. As such an arithmetic unit, a machine tool has been proposed in which distributed processing is performed on NC data by two CPUs (see, for example, Patent Document 1).
JP 2003-316408 A

上述した2個のCPUにより分散処理を行う工作機械によれば、位置制御の演算処理の高速化を図ることができる。しかし、現代制御理論による制御手法を適用した場合のように位置制御処理における演算量が増加したときには、目標位置が与えられてから該目標位置に応じた電圧が実際にモータに出力されるまでに要する時間が長くなる。そのため、位置制御における制御周期が長くなって、位置制御の応答性が悪化するという不都合が生じる。   According to the machine tool that performs the distributed processing by the two CPUs described above, it is possible to increase the speed of the position control calculation processing. However, when the amount of calculation in the position control process increases as in the case of applying a control method based on modern control theory, the voltage corresponding to the target position is actually output to the motor after the target position is given. It takes longer time. For this reason, the control cycle in the position control becomes longer, resulting in inconvenience that the responsiveness of the position control is deteriorated.

そこで、本発明は、複数のCPUを用いた分散処理により位置制御の演算処理を実行する場合に、制御周期を短縮することができる位置制御装置を提供することを目的とする。   Therefore, an object of the present invention is to provide a position control device capable of shortening the control cycle when performing position control calculation processing by distributed processing using a plurality of CPUs.

本発明は上記目的を達成するためになされたものであり、モータを駆動源として該モータから伝達機構を介して伝達される駆動力によって移動する移動体の目標位置を取得する目標位置取得手段と、該移動体の実位置を把握する実位置把握手段と、該移動体の実位置が目標位置に追従するように、所定の制御周期ごとに所定のトルク指令算出処理を実行して前記モータの出力トルクの目標値であるトルク指令値を算出するトルク指令算出手段とを備えた位置制御装置の改良に関する。 The present invention has been made to achieve the above object, and includes a target position acquisition unit that acquires a target position of a moving body that moves by a driving force transmitted from the motor through a transmission mechanism using the motor as a driving source. Real position grasping means for grasping the actual position of the moving body, and executing a predetermined torque command calculation process for each predetermined control period so that the actual position of the moving body follows the target position. The present invention relates to an improvement of a position control device including torque command calculation means for calculating a torque command value that is a target value of output torque.

そして、本発明の位置制御装置の第1の態様では、前記トルク指令算出手段は、記憶手段と、前記制御周期ごとに、前記移動体の位置を入力して前記モータのトルクを出力する所定のシステム逆伝達関数に、前記目標位置取得手段により取得された前記移動体の目標位置を入力したときの該システム逆伝達関数の出力値を、前記伝達機構の応答特性に応じた応答モデルに入力したときに該応答モデルから出力される第1のトルク値を算出すると共に、該目標位置を該応答モデルに入力したときに該応答モデルから出力される第1の目標位置を算出して、該第1のトルク値及び該第1の目標位置を前記記憶手段に記憶する第1のサブCPUと、前記制御周期ごとに、前記実位置把握手段により把握された前記移動体の実位置を前記システム逆伝達関数に入力したときに該システム逆伝達関数から出力されるトルク値と前記トルク指令値との差に応じた第2のトルク値を算出して、該第2のトルク値を前記記憶手段に記憶する第2のサブCPUと、前記制御周期ごとに、前記第1のサブCPUによる前記第1のトルク値及び前記第1の目標位置の算出と前記第2のサブCPUによる前記第2のトルク値の算出とに先行して、前記実位置把握手段により把握された前回の制御周期における前記移動体の実位置と前回の制御周期における前記移動体の目標位置との差分値にPID制御を適用して算出した第3のトルク値と、前記記憶手段に記憶された前回以前の制御周期における前記第1のトルク値及び前記第2のトルク値とに基づいて、前記トルク指令値を算出するメインCPUとを備えたことを特徴とする。 In the first aspect of the position control device of the present invention, the torque command calculation means is a storage means, and for each control cycle, inputs a position of the moving body and outputs a torque of the motor. The output value of the system reverse transfer function when the target position of the moving body acquired by the target position acquisition unit is input to the system reverse transfer function is input to the response model corresponding to the response characteristics of the transfer mechanism Calculating a first torque value output from the response model, and calculating a first target position output from the response model when the target position is input to the response model; A first sub CPU that stores a torque value of 1 and the first target position in the storage means; and the actual position of the moving body that is grasped by the actual position grasping means for each control cycle Biography And calculates the second torque value corresponding to the difference between the torque value output from the system inverse transfer function when entered in the function and the torque command value, storing the torque value of the second in said storage means the the second sub-CPU, for each of the control cycle, the first of said by the sub CPU first torque value and the first and the second torque value according to the second sub-CPU and the calculation of the target position Prior to the calculation of PID control, PID control is applied to the difference value between the actual position of the moving body in the previous control cycle grasped by the actual position grasping means and the target position of the moving body in the previous control cycle. Main CPU for calculating the torque command value based on the third torque value calculated in step S3 and the first torque value and the second torque value in the previous control cycle stored in the storage means. And with It is characterized in.

かかる本発明によれば、前記メインCPUは、各制御周期において、前記第1のサブCPUによる前記第1のトルク値及び前記第1の目標位置の算出と、前記第2のサブCPUによる前記第2のトルク値の算出とに先行して、前記記憶手段に記憶された前回以前の制御周期における前記第1のトルク値及び前記第1の目標位置と前記第2のトルク値とを用いて前記トルク指令値を算出する。そのため、前記トルク指令値を前記モータの駆動装置に出力して、前記モータにより前記移動体が目標位置まで移動する間に、前記第1のサブCPUは前記第1のトルク値及び前記第1の目標位置の算出処理を実行することができ、前記第2のサブCPUは前記第2のトルク値の算出処理を実行することができる。そして、この場合には、前記移動体の移動時間と、前記第1のトルク値及び前記第1の目標値と前記第2のトルク値の算出時間をオーバーラップさせることができる。これにより、前記制御周期を短縮して、前記移動体の位置制御の応答性を高めることができる。 According to the present invention, the main CPU calculates the first torque value and the first target position by the first sub CPU and the first sub CPU by the second sub CPU in each control cycle . Prior to the calculation of the second torque value, the first torque value, the first target position, and the second torque value in the previous control cycle stored in the storage means are used. Calculate the torque command value. Therefore, the first sub CPU outputs the torque command value to the motor drive device, and the first sub CPU moves the moving body to a target position by the motor . The target position calculation process can be executed, and the second sub CPU can execute the second torque value calculation process. In this case, the moving time of the moving body and the calculation time of the first torque value, the first target value, and the second torque value can be overlapped. Thereby, the said control period can be shortened and the responsiveness of the position control of the said mobile body can be improved.

さらに本発明によれば、前記第1のサブCPUにより算出される前記第1のトルク値は、前記伝達機構を含めた被制御対象における応答特性を、前記システム逆伝達関数に対応したシステム伝達関数の応答特性に一致させるためのトルク値となり、また、前記第2のサブCPUにより算出される前記第2のトルク値は、該被制御対象に加わる外乱を反映したものとなる。そのため、前記メインCPUによって、PID制御による前記第3のトルク値と前記第1のトルク値と前記第2のトルク値とに基づいて前記トルク指令値を算出することにより、前記移動体の位置制御における応答特性を前記システム逆伝達関数により要求される応答特性にマッチングさせると共に外乱の影響を抑制して、前記移動体の位置制御を安定化させることができる。 Further , according to the present invention, the first torque value calculated by the first sub-CPU is a system transfer function corresponding to the system inverse transfer function with respect to a response characteristic in the controlled object including the transfer mechanism. The second torque value calculated by the second sub CPU reflects a disturbance applied to the controlled object. Therefore, the main CPU calculates the torque command value based on the third torque value, the first torque value, and the second torque value by PID control, thereby controlling the position of the moving body. Is matched with the response characteristic required by the system inverse transfer function and the influence of the disturbance is suppressed, so that the position control of the moving body can be stabilized.

また、本発明の位置制御装置の第2の態様では、前記トルク指令算出手段は、記憶手段と、前記制御周期ごとに、前記移動体の位置を入力して前記モータのトルクを出力する所定のシステム逆伝達関数に、前記目標位置取得手段により取得された前記移動体の目標位置を入力したときの該システム逆伝達関数の出力値を、前記伝達機構の応答特性に応じた応答モデルに入力したときに該応答モデルから出力される第1のトルク値を算出すると共に、該目標位置を該応答モデルに入力したときに該応答モデルから出力される第1の目標位置を算出する第1のサブCPUと、前記制御周期ごとに、前記実位置把握手段により把握された前記移動体の実位置を前記システム逆伝達関数に入力したときに該システム逆伝達関数から出力されるトルク値と前記トルク指令値との差に応じた第2のトルク値を算出する第2のサブCPUと、前記制御周期ごとに、前記伝達機構の制御対象モデルに対して、前記移動体の実位置と前記第1の目標位置との偏差を観測量として入力し前記モータのトルクを操作量として出力するH制御器に、前記実位置把握手段により把握された前記移動体の実位置と前記第1の目標位置との偏差を入力したときに、該H制御器から出力される第3のトルク値を算出する第3のサブCPUと、前記制御周期ごとに、前記第1のサブCPUによる前記第1のトルク値及び前記第1の目標位置の算出と、前記第2のサブCPUによる前記第2のトルク値の算出と、前記第3のCPUによる前記第3のトルク値の算出とに先行して、前記記憶手段に記憶された2周期前の制御周期における前記第1のトルク値と、1周期前の制御周期において前記第2のサブCPUにより算出された前記第2のトルク値と、1周期前の制御周期において前記第3のサブCPUにより算出された前記第3のトルク値とに基づいて、前記トルク指令値を算出するメインCPUとを備えたことを特徴とする。 In the second aspect of the position control apparatus of the present invention, the torque command calculation means has a storage means and a predetermined output that outputs the torque of the motor by inputting the position of the moving body for each control cycle. The output value of the system reverse transfer function when the target position of the moving body acquired by the target position acquisition unit is input to the system reverse transfer function is input to the response model corresponding to the response characteristics of the transfer mechanism A first sub-unit that calculates a first torque value that is sometimes output from the response model and calculates a first target position that is output from the response model when the target position is input to the response model. a CPU, for each of the control cycle, the torque value output the actual position of the movable body which is grasped by the actual position detection means from the system inverse transfer function when entered in the system inverse transfer function Wherein the second sub-CPU for calculating a second torque value according to the difference between the torque command value, for each of the control period, the control object model of the transmission mechanism, the actual position of the movable body An H controller that inputs a deviation from the first target position as an observation amount and outputs the torque of the motor as an operation amount is input to the actual position of the moving body grasped by the actual position grasping means and the first position. A third sub CPU that calculates a third torque value output from the H controller when a deviation from a target position is input, and the first sub CPU by the first sub CPU for each control period. Preceding the calculation of the torque value of 1 and the first target position, the calculation of the second torque value by the second sub CPU, and the calculation of the third torque value by the third CPU. 2 cycles before stored in the storage means The first torque value in the control cycle, the second torque value calculated by the second sub CPU in the control cycle one cycle before, and the third sub CPU in the control cycle one cycle before And a main CPU that calculates the torque command value based on the calculated third torque value.

かかる本発明によれば、前記メインCPUは、各制御周期において、前記第1のサブCPUによる前記第1のトルク値及び前記第1の目標位置の算出と、前記第2のサブCPUによる前記第2のトルク値の算出と、前記第3のサブCPUによる前記第3のトルク値の算出とに先行して、前記記憶手段に記憶された前回以前の制御周期における前記第1のトルク値及び前記第1の目標位置と前記第2のトルク値と前記第3のトルク値とを用いて前記トルク指令値を算出する。
そのため、前記トルク指令値を前記モータの駆動装置に出力して、前記モータにより前記移動体が目標位置まで移動する間に、前記第1のサブCPUは前記第1のトルク値及び前記第1の目標位置の算出処理を実行することができ、前記第2のサブCPUは前記第2のトルク値の算出処理を実行することができ、前記第3のサブCPUは前記第3のトルク値の算出処理を実行することができる。
そして、この場合には、前記移動体の移動時間と、前記第1のトルク値及び前記第1の目標値と前記第2のトルク値と前記第3のトルク値の算出時間をオーバーラップさせることができる。これにより、前記制御周期を短縮して、前記移動体の位置制御の応答性を高めることができる。
さらに本発明によれば、前記第1のサブCPUにより算出される前記第1のトルク値は、前記伝達機構を含めた被制御対象における応答特性を、前記システム逆伝達関数に対応したシステム伝達関数の応答特性に一致させるためのトルク値となり、前記第2のサブCPUにより算出される前記第2のトルク値は、該被制御対象に加わる外乱を反映したものとなる。また、前記第3のサブCPUにより算出される前記第3のトルク値は、前記第1の目標位置と前記移動体の実位置との偏差の変動に対して、前記移動体の位置制御を安定化させるものとなる。そのため、前記メインCPUによって、前記第1のトルク値と前記第2のトルク値と前記第3のトルク値とに基づいて前記トルク指令値を算出することにより、前記移動体の位置制御における応答特性を前記システム逆伝達関数により要求される応答特性にマッチングさせると共に外乱の影響を抑制し、ロバスト性を高めて前記移動体の位置制御を安定化させることができる。
さらに、各制御周期における前記トルク指令値の算出を、2周期前の制御周期において算出された前記第1のトルク値と、1周期前の制御周期において算出された前記第2のトルク値と、1周期前の制御周期において算出された前記第3のトルク値とを用いて算出することにより、前記第1のトルク値と前記第2のトルク値と前記第3のトルク値の算出時点から、前記トルク指令値を算出時点までの遅れ時間を短くして、精度良く前記移動体の位置制御を行うことができる。
According to the present invention, the main CPU calculates the first torque value and the first target position by the first sub CPU and the first sub CPU by the second sub CPU in each control cycle. Prior to the calculation of the second torque value and the calculation of the third torque value by the third sub CPU, the first torque value in the previous control cycle stored in the storage means and the The torque command value is calculated using the first target position, the second torque value, and the third torque value.
Therefore, the first sub CPU outputs the torque command value to the motor drive device, and the first sub CPU moves the moving body to a target position by the motor. A target position calculation process can be executed, the second sub CPU can execute the second torque value calculation process, and the third sub CPU can calculate the third torque value. Processing can be executed.
In this case, the moving time of the moving body overlaps the calculation time of the first torque value, the first target value, the second torque value, and the third torque value. Can do. Thereby, the said control period can be shortened and the responsiveness of the position control of the said mobile body can be improved.
Further, according to the present invention, the first torque value calculated by the first sub-CPU is a system transfer function corresponding to the system inverse transfer function with respect to a response characteristic in the controlled object including the transfer mechanism. The second torque value calculated by the second sub CPU reflects a disturbance applied to the controlled object. In addition, the third torque value calculated by the third sub CPU stabilizes the position control of the moving body against fluctuations in deviation between the first target position and the actual position of the moving body. It will be made to. For this reason, the main CPU calculates the torque command value based on the first torque value, the second torque value, and the third torque value, so that the response characteristic in the position control of the moving body is obtained. Can be matched with the response characteristic required by the system inverse transfer function, the influence of disturbance can be suppressed, the robustness can be improved, and the position control of the moving body can be stabilized.
Furthermore, the calculation of the torque command value in each control cycle, the first torque value calculated in the control cycle two cycles before, the second torque value calculated in the control cycle one cycle before, From the calculation time point of the first torque value, the second torque value, and the third torque value by calculating using the third torque value calculated in the control cycle one cycle before, The delay time until the torque command value is calculated can be shortened, and the position control of the moving body can be performed with high accuracy.

本発明の実施の形態について、図1〜図5を参照して説明する。図1は本発明の位置制御装置の全体構成図、図2は図1に示したサブCPUの演算ブロック図、図3はPID制御を用いてトルク指令値を算出する場合のフローチャート、図4はメインCPU及びサブCPUのタイミングチャート、図5はH制御を用いてトルク指令値を算出する場合のフローチャートである。 Embodiments of the present invention will be described with reference to FIGS. FIG. 1 is an overall configuration diagram of a position control device according to the present invention, FIG. 2 is a calculation block diagram of a sub CPU shown in FIG. 1, FIG. 3 is a flowchart for calculating a torque command value using PID control, and FIG. FIG. 5 is a flowchart for calculating the torque command value using the H∞ control.

図1を参照して、本発明の位置制御装置1は、工作機械20にチャッキングされる加工ツール(図示しない,本発明の移動体に相当する)の実位置Fb_Posを、NC制御装置2から送信される目標位置Pln_Posに追従させる位置制御を行うものであり、サーボ制御ユニット1aと演算ユニット1bとにより構成される。   Referring to FIG. 1, the position control device 1 of the present invention obtains the actual position Fb_Pos of a machining tool (not shown, corresponding to the moving body of the present invention) chucked by a machine tool 20 from the NC control device 2. Position control is performed to follow the transmitted target position Pln_Pos, and the servo control unit 1a and the arithmetic unit 1b are used.

サーボ制御ユニット1aは、メインCPU10、NCインターフェース11、及びサーボインターフェース12を備え、NCインターフェース11を介してNC制御装置2と通信可能に接続されると共に、サーボインターフェース12を介してサーボドライバ3と通信可能に接続されている。   The servo control unit 1 a includes a main CPU 10, an NC interface 11, and a servo interface 12. The servo control unit 1 a is communicably connected to the NC control device 2 via the NC interface 11 and communicates with the servo driver 3 via the servo interface 12. Connected as possible.

サーボドライバ3は、伝達機構を介して加工ツールを移動させるサーボモータ21及びサーボモータ21の回転軸に装着されたエンコーダ22と接続され、サーボモータ21の出力トルクが制御ユニット1aから送信されるトルク指令値Cmd_Trqと一致するように、サーボモータ21に供給する電力を制御する。また、サーボドライバ3は、サーボモータ21の回転に応じてエンコーダ22から出力されるパルス信号に基づいて、加工ツールの実位置Fb_Posを把握し、該実位置Fb_Posのデータをサーボユニット1aに送信する。   The servo driver 3 is connected to the servo motor 21 that moves the machining tool via the transmission mechanism and the encoder 22 that is mounted on the rotation shaft of the servo motor 21, and the torque that is output from the servo motor 21 is transmitted from the control unit 1a. The electric power supplied to the servo motor 21 is controlled so as to coincide with the command value Cmd_Trq. Further, the servo driver 3 grasps the actual position Fb_Pos of the machining tool based on the pulse signal output from the encoder 22 according to the rotation of the servo motor 21, and transmits the data of the actual position Fb_Pos to the servo unit 1a. .

そして、メインCPU10は、サーボインターフェース12を介してサーボドライバ3から受信した加工ツールの実位置Fb_Posが、NCインターフェース11を介してNC制御装置2から受信した目標位置Pln_Posに追従するように、トルク指令値Cmd_Trqを決定する。   The main CPU 10 then issues a torque command so that the actual position Fb_Pos of the machining tool received from the servo driver 3 via the servo interface 12 follows the target position Pln_Pos received from the NC control device 2 via the NC interface 11. The value Cmd_Trq is determined.

なお、メインCPU10がNCインターフェース11を介して加工ツールの目標位置Pln_Posを取得する構成が本発明の目標位置取得手段に相当する。また、メインCPU10がサーボインターフェース12を介して加工ツールの実位置Fb_Posを把握する構成が本発明の実位置把握手段に相当する。 The configuration in which the main CPU 10 acquires the processing tool target position Pln_Pos via the NC interface 11 corresponds to the target position acquisition means of the present invention. The configuration in which the main CPU 10 grasps the actual position Fb_Pos of the machining tool via the servo interface 12 corresponds to the actual position grasping means of the present invention.

次に、演算ユニット1bに備えられた第1のサブCPU13、第2のサブCPU14、及び第3のサブCPU15は、メインCPU10におけるトルク指令値Cmd_Trqの算出に使用されるパラメータを分散処理により算出するものであり、QP−RAMを介してメインCPU10と共有するデータの書込みと読出しを行う。   Next, the first sub CPU 13, the second sub CPU 14, and the third sub CPU 15 included in the arithmetic unit 1b calculate parameters used for calculating the torque command value Cmd_Trq in the main CPU 10 by distributed processing. It writes and reads data shared with the main CPU 10 via the QP-RAM.

図2(a)は第1のサブCPU13におけるモデルマッチング計算の処理を示したものである。第1のサブCPU13は、QP−RAM16から読み出した目標位置Pln_Posを、工作機械20に対して設定された応答特性に応じたシステム逆伝達関数40に入力し、システム逆伝達関数40の出力を工作機械20の機械的特性に応じて設定された応答モデル41に入力したときの該応答モデル41の出力を、モデルマッチングトルクM_Trq(本発明の第1のトルク値に相当する)として算出する。さらに、第1のサブCPU13は、目標位置Pln_Posを応答モデルに入力したときの出力を、モデルマッチング位置M_Pos(本発明の第1の目標位置に相当する)として算出する。そして、第1のサブCPU13は、算出したモデルマッチングトルクM_Trqとモデルマッチング位置M_Posとを、QP−RAM16に書き込む。   FIG. 2A shows a model matching calculation process in the first sub CPU 13. The first sub CPU 13 inputs the target position Pln_Pos read from the QP-RAM 16 to the system reverse transfer function 40 corresponding to the response characteristic set for the machine tool 20, and outputs the output of the system reverse transfer function 40 to the machine tool. The output of the response model 41 when input to the response model 41 set according to the mechanical characteristics of the machine 20 is calculated as a model matching torque M_Trq (corresponding to the first torque value of the present invention). Further, the first sub CPU 13 calculates an output when the target position Pln_Pos is input to the response model as a model matching position M_Pos (corresponding to the first target position of the present invention). Then, the first sub CPU 13 writes the calculated model matching torque M_Trq and the model matching position M_Pos in the QP-RAM 16.

また、図2(b)は第2のサブCPU14における外乱オブザーバ計算の処理を示したものである。第2のサブCPU14は、減算器42により、QP−RAM16から読み出したトルク指令値Cmd_Trqから、QP−RAM16から読み出した実位置Fb_Posをシステム逆伝達関数40に入力したときの該システム逆伝達関数40の出力を減じて、偏差ΔTrqを算出する。そして、第2のサブCPU14は、該偏差ΔTrqに対してフィルタ43によるフィルタリング処理を施し、工作機械20に加わる外乱の影響を抑制するための外乱オブザーバトルクOb_Trq(本発明の第2のトルク値に相当する)を算出し、該外乱オブザーバトルクOb_TrqをQP−RAM16に書き込む。   FIG. 2B shows a disturbance observer calculation process in the second sub CPU 14. The second sub CPU 14 uses the subtractor 42 to input the actual position Fb_Pos read from the QP-RAM 16 from the torque command value Cmd_Trq read from the QP-RAM 16 to the system reverse transfer function 40. Is output to calculate the deviation ΔTrq. Then, the second sub CPU 14 performs a filtering process by the filter 43 on the deviation ΔTrq to reduce the disturbance observer torque Ob_Trq (to the second torque value of the present invention) for suppressing the influence of the disturbance applied to the machine tool 20. And the disturbance observer torque Ob_Trq is written into the QP-RAM 16.

また、図2(c)は第3のサブCPU15におけるH制御計算の処理を示したものであり、第3のサブCPU15は、減算器50により、QP−RAM16から読み出したモデルマッチング位置M_Posから、QP−RAM16から読み出した実位置Fb_Posを減じて、位置偏差ΔPosを算出する。そして、第3のサブCPU15は、該位置偏差ΔPosを、加工ツールの実位置と目標位置との偏差を観測量として入力しサーボモータ21のトルクを操作量として出力するH制御器51に入力して、該H制御器51の出力をHトルクH_Trq(本発明の第3のトルク値に相当する)として算出する。また、第3のサブCPU15は、算出したHトルクH_TrqをQP−RAM16に書き込む。 FIG. 2C shows the processing of the H control calculation in the third sub CPU 15. The third sub CPU 15 uses the subtractor 50 from the model matching position M_Pos read from the QP-RAM 16. Then, the actual position Fb_Pos read from the QP-RAM 16 is subtracted to calculate the position deviation ΔPos. Then, the third sub CPU 15 inputs the position deviation ΔPos to the H∞ controller 51 that inputs the deviation between the actual position of the machining tool and the target position as an observation amount and outputs the torque of the servo motor 21 as an operation amount. and to calculate the output of the H controller 51 as H torque H _Trq (corresponding to the third torque value of the present invention). The third sub CPU 15 writes the calculated H torque H _Trq in the QP-RAM 16.

次に、位置制御装置1における第1の実施の形態について、図3に示したフローチャートに従って説明する。第1の実施の形態では、位置制御装置1はPID制御を用いてトルク指令値Cmd_Trqを算出する。メインCPU10は、所定の制御周期ごとに図3(a)に示した処理を実行する。また、第1のサブCPU13は、該制御周期ごとに図3(b)に示した処理を実行し、第2のサブCPU14は、該制御周期ごとに図3(c)に示した処理を実行する。   Next, a first embodiment of the position control device 1 will be described according to the flowchart shown in FIG. In the first embodiment, the position control device 1 calculates the torque command value Cmd_Trq using PID control. The main CPU 10 executes the process shown in FIG. 3A every predetermined control cycle. Further, the first sub CPU 13 executes the process shown in FIG. 3B for each control cycle, and the second sub CPU 14 executes the process shown in FIG. 3C for each control cycle. To do.

なお、本第1の実施の形態においては、メインCPU10、第1のサブCPU13、及び第2のサブCPU14により本発明のトルク指令算出手段が構成され、第3のサブCPU15は使用されない。   In the first embodiment, the main CPU 10, the first sub CPU 13, and the second sub CPU 14 constitute the torque command calculation means of the present invention, and the third sub CPU 15 is not used.

また、図3(a)、図3(b)、図3(c)に示したフローチャートにおける(N-1)、(N)は、それぞれN−1番目、N番目の制御周期において取得又は算出された変数値を示すものである。そして、図3(a)、図3(b)、図3(c)に示したフローチャートは、N番目の制御周期における処理を示している。   Also, (N-1) and (N) in the flowcharts shown in FIGS. 3 (a), 3 (b), and 3 (c) are acquired or calculated in the (N-1) th and Nth control cycles, respectively. Indicates the variable value. The flowcharts shown in FIGS. 3A, 3B, and 3C show processing in the Nth control cycle.

先ず、メインCPU10は、図3(a)のSTEP1で、1回前の制御周期(N−1番目の制御周期)において、第1のサブCPU13により算出されてQP−RAM16に書き込まれたマデルマッチング位置M_Pos(N-1)及びモデルマッチングトルクM_Trq(N-1)と、第2のサブCPU14により算出されてQP−RAM16に書き込まれた外乱オブザーバトルクOb_Trq(N-1)と、メインCPU10により算出されてQP−RAM16に書き込まれたPID指令トルクPID_Trq(N-1)を、QP−RAM16から読み出す。   First, the main CPU 10 calculates the model calculated by the first sub CPU 13 and written in the QP-RAM 16 in the previous control cycle (N-1th control cycle) in STEP 1 of FIG. The matching position M_Pos (N-1) and the model matching torque M_Trq (N-1), the disturbance observer torque Ob_Trq (N-1) calculated by the second sub CPU 14 and written in the QP-RAM 16, and the main CPU 10 The PID command torque PID_Trq (N−1) calculated and written in the QP-RAM 16 is read from the QP-RAM 16.

そして、メインCPU10は、次のSTEP2で、以下の式(1)により、今回の制御周期(N番目の制御周期)におけるトルク指令値Cmd_Trq(N)を算出する
Cmd_Trq(N) = M_Trq(N-1)+Ob_Trq(N-1)+PID_Trq(N-1) ・・・・・(1)
続くSTEP3で、メインCPU10は、サーボインターフェース12を介してサーボドライバ3にトルク指令値Cmd_Trq(N)を送信する。そして、トルク指令値Cmd_Trq(N)を受信したサーボドライバ3は、該トルク指令値Cmd_Trq(N)に応じたトルクが得られるようにサーボモータ21に対する供給電力を制御する。
Then, in the next STEP2, the main CPU 10 calculates the torque command value Cmd_Trq (N) in the current control cycle (Nth control cycle) by the following equation (1). Cmd_Trq (N) = M_Trq (N− 1) + Ob_Trq (N-1) + PID_Trq (N-1) (1)
In subsequent STEP 3, the main CPU 10 transmits a torque command value Cmd_Trq (N) to the servo driver 3 via the servo interface 12. Then, the servo driver 3 that has received the torque command value Cmd_Trq (N) controls the power supplied to the servomotor 21 so that a torque corresponding to the torque command value Cmd_Trq (N) is obtained.

次のSTEP4で、メインCPU10は、NCインターフェース11を介してNC制御装置2から目標位置Pln_Pos(N)を受信し、STEP5で、サーボインターフェース12を介してサーボドライバ3から実位置Fb_Pos(N)を受信する。そして、続くSTEP6で、メインCPU10は、今回の制御周期における目標位置Pln_Pos(N)と実位置Fb_Pos(N)とトルク指令値Cmd_Trq(N)とを、QP−RAM16に書き込む。   In the next STEP 4, the main CPU 10 receives the target position Pln_Pos (N) from the NC control device 2 via the NC interface 11. In STEP 5, the main CPU 10 obtains the actual position Fb_Pos (N) from the servo driver 3 via the servo interface 12. Receive. In subsequent STEP 6, the main CPU 10 writes the target position Pln_Pos (N), the actual position Fb_Pos (N), and the torque command value Cmd_Trq (N) in the current control cycle to the QP-RAM 16.

次のSTEP7で、メインCPU10は、目標位置Pln_Pos(N)と実位置Fb_Pos(N)との偏差に対するPID制御処理を行って、PID指令トルクPID_Trq(N)を算出し、STEP8で該PID指令トルクPID_Trq(N)をQP−RAM16に書き込む。続くSTEP9で、メインCPU10は、システム処理(ウォッチドッグタイマによるプラグラムの暴走検知、停電検知等を実行する)を行って今回の制御周期を終了する。   In the next STEP7, the main CPU 10 performs PID control processing for the deviation between the target position Pln_Pos (N) and the actual position Fb_Pos (N) to calculate the PID command torque PID_Trq (N). In STEP8, the PID command torque PID_Trq (N) is written into the QP-RAM 16. In subsequent STEP 9, the main CPU 10 performs system processing (execution of program runaway detection, power failure detection, etc. by a watchdog timer) and ends the current control cycle.

次に、図3(b)を参照して、第1のサブCPU13は、N番目の制御周期が開始されると、STEP10で、メインCPU10により目標位置Pln_Pos(N)がQP−RAM16に書き込まれるのを待つ。そして、目標位置Pln_Pos(N)がQP−RAM16に書き込まれたとき(図3(a)のSTEP6の処理が終了したとき)にSTEP11に進み、第1のサブCPU13は、図2(a)に示したモデルマッチング計算を行って、モデルマッチングトルクM_Trq(N)とモデルマッチング位置M_Pos(N)を算出する。また、続くSTEP13で、第1のサブCPU13は、算出したモデルマッチングトルクM_Trq(N)とモデルマッチング位置M_Pos(N)をQP−RAM16に書き込む。   Next, referring to FIG. 3B, when the Nth control cycle is started, the first sub CPU 13 writes the target position Pln_Pos (N) in the QP-RAM 16 by the main CPU 10 in STEP10. Wait for Then, when the target position Pln_Pos (N) is written in the QP-RAM 16 (when the processing of STEP 6 in FIG. 3A is completed), the process proceeds to STEP 11, and the first sub CPU 13 proceeds to FIG. The model matching calculation shown is performed to calculate the model matching torque M_Trq (N) and the model matching position M_Pos (N). In subsequent STEP 13, the first sub CPU 13 writes the calculated model matching torque M_Trq (N) and model matching position M_Pos (N) in the QP-RAM 16.

次に、図3(c)を参照して、第2のサブCPU14は、N番目の制御周期が開始されると、STEP20で、メインCPU10により実位置Fb_Pos(N)とトルク指令値Cmd_Trq(N)がQP−RAM16に書き込まれるのを待つ。そして、実位置Fb_Pos(N)とトルク指令値Cmd_Trq(N)がQP−RAM16に書き込まれたとき(図3(a)のSTEP6の処理が終了したとき)にSTEP21に進み、第2のサブCPU14は、図2(b)に示した外乱オブザーバ演算を行って、外乱オブザーバトルクOb_Trq(N)を算出する。また、続くSTEP23で、第2のサブCPU14は、算出した外乱オブザーバトルクOb_Trq(N)をQP−RAM16に書き込む。   Next, referring to FIG. 3C, when the N-th control cycle is started, the second sub CPU 14 determines the actual position Fb_Pos (N) and the torque command value Cmd_Trq (N) in STEP 20 by the main CPU 10. ) Is written to the QP-RAM 16. Then, when the actual position Fb_Pos (N) and the torque command value Cmd_Trq (N) are written in the QP-RAM 16 (when the processing of STEP 6 in FIG. 3A is completed), the process proceeds to STEP 21, and the second sub CPU 14 Performs the disturbance observer calculation shown in FIG. 2B to calculate the disturbance observer torque Ob_Trq (N). In subsequent STEP 23, the second sub CPU 14 writes the calculated disturbance observer torque Ob_Trq (N) in the QP-RAM 16.

図4は、以上説明した図3(a)、図3(b)、図3(c)のフローチャートを実行したときのメインCPU10と、第1のサブCPU13及び第2のサブCPU14の作動タイミングを示したタイミングチャートであり、横軸が時間tに設定されている。図中t10〜t13及びt13〜t16が1制御周期となる。 FIG. 4 shows the operation timings of the main CPU 10, the first sub CPU 13 and the second sub CPU 14 when the flowcharts of FIGS. 3A, 3B and 3C described above are executed. In the timing chart shown, the horizontal axis is set to time t. Figure t 10 ~t 13 and t 13 ~t 16 is one control period.

10で制御周期が開始されると、メインCPU10は、トルク指令値Cmd_Trqを算出し(STEP2)、t11でサーボドライバ3への該トルク指令値Cmd_Trqの送信を終了する(STEP3)。これにより、サーボドライバ3によるサーボモータ21の駆動が開始される。 When the control cycle at t 10 is started, the main CPU10 calculates the torque command value Cmd_Trq (STEP2), terminates the transmission of the torque command value Cmd_Trq to the servo driver 3 at t 11 (STEP3). Thereby, the drive of the servomotor 21 by the servo driver 3 is started.

そして、その後のt12で、メインCPU10によるQP−RAM16へのデータ(目標位置Pln_Pos,実位置Fb_Pos,トルク指令値Cmd_Trqのデータ)の書き込みが終了したときに、第1のサブCPU13はQP−RAM16からデータ(目標位置Pln_Pos)を読出し(STEP11)、第2のサブCPU14はQP−RAM16からデータ(実位置Fb_Pos,トルク指令値Cmd_Trq)を読み出す(STEP21)。 Then, in a subsequent t 12, the data of the QP-RAM 16 by the main CPU10 when a writing (target position Pln_Pos, actual position Fb_Pos, data of the torque command value Cmd_Trq) ends, the first sub-CPU13 are QP-RAM 16 The data (target position Pln_Pos) is read from (Step 11), and the second sub CPU 14 reads the data (actual position Fb_Pos, torque command value Cmd_Trq) from the QP-RAM 16 (STEP 21).

そして、第1のサブCPU13はモデルマッチング位置M_PosとモデルマッチングトルクM_Trqを算出し(STEP12)、第2のサブCPU14は外乱オブザーバトルクOb_Trqを算出する(STEP22)。この場合、t11でサーボドライバ3にトルク指令値Cmd_Trqが送信されてサーボモータ21が作動している間に、t12から第1のサブCPU13による計算処理(STEP12)と第2のサブCPU14による計算処理(STEP22)を開始することができる。そのため、制御周期を短縮させて位置制御の応答性を高めることができる。 Then, the first sub CPU 13 calculates the model matching position M_Pos and the model matching torque M_Trq (STEP 12), and the second sub CPU 14 calculates the disturbance observer torque Ob_Trq (STEP 22). In this case, the torque command value Cmd_Trq to the servo driver 3 is transmitted at t 11 while the servo motor 21 is operating, by the t 12 calculation processing by the first sub CPU13 and (STEP 12) the second sub CPU14 The calculation process (STEP 22) can be started. Therefore, it is possible to shorten the control cycle and improve the responsiveness of the position control.

次に、第2の実施の形態について、図5に示したフローチャートに従って説明する。第2の実施の形態においては、位置制御装置1はH制御を用いてサーボモータ21に対するトルク指令値Cmd_Trqを算出する。そして、演算ユニット1bに備えられた第3のサブCPU15によりH制御の演算処理が実行される。 Next, a second embodiment will be described according to the flowchart shown in FIG. In the second embodiment, the position control device 1 calculates the torque command value Cmd_Trq for the servomotor 21 using H∞ control. Then, the arithmetic processing of the H∞ control is executed by the third sub CPU 15 provided in the arithmetic unit 1b.

なお、本第2の実施の形態においては、メインCPU10、第1のサブCPU13、第2のサブCPU14、及び第3のサブCPU15により本発明のトルク指令算出手段が構成される。 In the second embodiment, the main CPU 10, the first sub CPU 13, the second sub CPU 14, and the third sub CPU 15 constitute the torque command calculation means of the present invention.

また、図5(a)、図5(b)に示したフローチャートにおける(N-2)、(N-1)、(N)は、それぞれ、N−2番目、N−1番目、N番目の制御周期において取得又は算出された変数値を示すものである。そして、図5(a)、図5(b)に示したフローチャートは、N番目の制御周期における処理を示している。また、第1のサブCPU13と第2のサブCPU14は、上述した第1の実施の形態と同様に、図3(a)と図3(b)のフローチャートで示した処理をそれぞれ実行する。   Also, (N-2), (N-1), and (N) in the flowcharts shown in FIGS. 5 (a) and 5 (b) are N-2th, N-1th, and Nth, respectively. The variable value acquired or calculated in the control cycle is shown. And the flowchart shown to Fig.5 (a) and FIG.5 (b) has shown the process in a Nth control period. Further, the first sub CPU 13 and the second sub CPU 14 execute the processes shown in the flowcharts of FIGS. 3A and 3B, respectively, as in the first embodiment.

先ず、メインCPU10は、図5(a)のSTEP1で、1回前の制御周期(N−1番目の制御周期)において、第1のサブCPU13により算出されてQP−RAM16に書き込まれたモデルマッチング位置M_Pos(N-1)と、2回前の制御周期(N−2番目の制御周期)において、第1のサブCPU13により算出されてQP−RAM16に書き込まれたモデルマッチングトルクM_Trq(N-2)と、1回前の制御周期(N−1番目の制御周期)において、第2のサブCPU14により算出されてQP−RAM16に書き込まれた外乱オブザーバトルクOb_Trq(N-1)と、1回前の制御周期(N−1番目の制御周期)において、第3のサブCPU15により算出されてQP−RAM16に書き込まれたHトルクH_Trq(N)とを、QP−RAM16から読み出す。 First, the main CPU 10 calculates the model matching calculated by the first sub CPU 13 and written in the QP-RAM 16 in STEP 1 of FIG. 5A in the previous control cycle (N−1th control cycle). The model matching torque M_Trq (N-2) calculated by the first sub CPU 13 and written to the QP-RAM 16 in the position M_Pos (N-1) and the control cycle (N-2th control cycle) two times before. ) And the disturbance observer torque Ob_Trq (N-1) calculated by the second sub CPU 14 and written in the QP-RAM 16 in the previous control cycle (N-1th control cycle) in the control period of the (N-1 th control period), the third is calculated by the sub CPU15 and QP-RAM 16 with the written H torque H _Trq and (N), read from the QP-RAM 16 It is.

そして、メインCPU10は、次のSTEP51で、以下の式(2)により、今回の制御周期(N番目の制御周期)におけるトルク指令値Cmd_Trq(N)を算出する。   Then, in the next STEP 51, the main CPU 10 calculates the torque command value Cmd_Trq (N) in the current control cycle (Nth control cycle) by the following equation (2).

Cmd_Trq(N) = M_Trq(N-2)+Ob_Trq(N-1)+H_Trq(N-1) ・・・・・(2)
続くSTEP52で、メインCPU10は、サーボインターフェース12を介してサーボドライバ3にトルク指令値Cmd_Trq(N)を送信する。そして、トルク指令値Cmd_Trq(N)を受信したサーボドライバ3は、該トルク指令値Cmd_Trq(N)に応じたトルクが得られるようにサーボモータ21に対する供給電力を制御する。
Cmd_Trq (N) = M_Trq (N -2) + Ob_Trq (N-1) + H ∞ _Trq (N-1) ····· (2)
In subsequent STEP 52, the main CPU 10 transmits a torque command value Cmd_Trq (N) to the servo driver 3 via the servo interface 12. Then, the servo driver 3 that has received the torque command value Cmd_Trq (N) controls the power supplied to the servomotor 21 so that a torque corresponding to the torque command value Cmd_Trq (N) is obtained.

次のSTEP53で、メインCPU10は、NCインターフェース11を介してNC制御装置2から目標位置Pln(N)を受信し、STEP54で、サーボインターフェース12を介してサーボドライバ3から実位置Fb_Pos(N)を受信する。そして、続くSTEP55で、メインCPU10は、目標位置Pln_Pos(N)と実位置Fb_Pos(N)とトルク指令値Cmd_Trq(N)とモデルマッチング位置M_Pos(N-1)とを、QP−RAM16に書き、STEP56でシステム処理(ウォッチドッグタイマによるプラグラムの暴走検知、停電検知等を実行する)を行って今回の制御周期を終了する。   At the next STEP 53, the main CPU 10 receives the target position Pln (N) from the NC control device 2 via the NC interface 11. At STEP 54, the main CPU 10 obtains the actual position Fb_Pos (N) from the servo driver 3 via the servo interface 12. Receive. In the subsequent STEP 55, the main CPU 10 writes the target position Pln_Pos (N), the actual position Fb_Pos (N), the torque command value Cmd_Trq (N), and the model matching position M_Pos (N-1) in the QP-RAM 16. In STEP 56, system processing (execution of program runaway detection, power failure detection, etc. by the watch dog timer is executed) is completed, and the current control cycle is terminated.

次に、図5(b)を参照して、第3のサブCPU15は、N番目の制御周期が開始されると、STEP60で、メインCPU10により実位置Fb_Pos(N)とモデルマッチング位置M_Pos(N-1)とがQP−RAM16に書き込まれるのを待つ。そして、実位置Fb_Pos(N) とモデルマッチング位置M_Pos(N-1)とがQP−RAM16に書き込まれたとき(図5(a)のSTEP55の処理が終了したとき)にSTEP61に進んで、これらを読み出す。そしてSTEP62で、第3のサブCPU15は、図2(c)に示したH∞制御計算を行って、H∞トルクH∞_Trq(N)を算出する。また、続くSTEP63で、第3のサブCPU15は、算出したH∞トルクH∞_Trq(N)をQP−RAM16に書き込む。 Next, referring to FIG. 5B, when the N-th control cycle is started, the third sub CPU 15 causes the main CPU 10 to execute the actual position Fb_Pos (N) and the model matching position M_Pos (N ) in STEP60. -1) is written to the QP-RAM 16. Then, when the actual position Fb_Pos (N) and the model matching position M_Pos (N-1) are written in the QP-RAM 16 (when the processing of STEP55 in FIG. 5A is completed), the process proceeds to STEP61. Is read. In STEP 62 , the third sub CPU 15 performs H∞ control calculation shown in FIG. 2C to calculate H∞ torque H∞_Trq (N). In subsequent STEP 63, the third sub CPU 15 writes the calculated H∞ torque H∞_Trq (N) in the QP-RAM 16.

本第2の実施の形態による場合には、第3のサブCPU15によりHトルクH_Trqを算出し、メインCPU10により、上記式(2)によって該HトルクH_Trqを用いてトルク指令値Cmd_Trq(N)を算出することによって、位置制御装置1のロバスト性を高めて精度の良い位置制御を実現することができる。 Book case of the second embodiment, the third sub CPU15 calculates the H torque H _Trq, the main CPU 10, the torque command by using the H torque H _Trq by the above formula (2) By calculating the value Cmd_Trq (N), it is possible to improve the robustness of the position control device 1 and realize accurate position control.

また、本第2の実施の形態においても、上述した第1の実施の形態と同様に、図5(a)のSTEP52でメインCPU10がトルク指令値Cmd_Trq(N)を送信し、サーボモータ21が作動を開始した後に、第1のサブCPU13と第2のサブCPU14と第3のサブCPU15による計算処理(図3(b)のSTEP12,図3(c)のSTEP22,図5(b)のSTEP62)を開始することができる。そのため、位置制御装置1の制御周期を短縮することができる。   Also in the second embodiment, as in the first embodiment described above, the main CPU 10 transmits the torque command value Cmd_Trq (N) in STEP 52 of FIG. After the operation is started, calculation processing by the first sub CPU 13, the second sub CPU 14, and the third sub CPU 15 (STEP 12 in FIG. 3B, STEP 22 in FIG. 3C, STEP 62 in FIG. 5B). ) Can begin. Therefore, the control cycle of the position control device 1 can be shortened.

なお、本実施の形態では、本発明の移動体として工作機械にチャッキングされた加工ツールの位置を制御するものを示したが、複数のCPUを用いて位置制御における変数値を分散処理により算出する位置制御装置であれば、本発明の適用が可能である。   In the present embodiment, the moving body of the present invention has been shown to control the position of a machining tool chucked on a machine tool. However, a variable value in position control is calculated by distributed processing using a plurality of CPUs. The present invention can be applied to any position control device.

また、本実施の形態では、サブCPUによる分散処理として、モデルマッチング計算、外乱オブザーバ計算、及びH制御計算を実行する例を示したが、分散処理の対象となる計算はこれらに限らず、他の種類の計算処理をサブCPUによって実行する場合にも本発明の適用が可能である。 In the present embodiment, as an example of executing the model matching calculation, the disturbance observer calculation, and the H∞ control calculation as the distributed processing by the sub CPU, the calculation to be the target of the distributed processing is not limited to these. The present invention can also be applied when other types of calculation processes are executed by the sub CPU.

位置制御装置の全体構成図。The whole block diagram of a position control apparatus. 図1に示したサブCPUの演算ブロック図。FIG. 2 is a calculation block diagram of a sub CPU shown in FIG. 1. PID制御を用いてトルク指令値を算出する場合のフローチャート。The flowchart in the case of calculating a torque command value using PID control. メインCPU及びサブCPUのタイミングチャート。The timing chart of main CPU and sub CPU. 制御を用いてトルク指定値を算出する場合のフローチャート。The flowchart in the case of calculating a torque designation value using H∞ control.

符号の説明Explanation of symbols

1…位置制御装置、1a…サーボユニット、1b…演算ユニット、2…NC制御装置、3…サーボドライバ、10…メインCPU、11…NCインターフェース、12…サーボインターフェース、13…第1のサブCPU、14…第2のサブCPU、15…第3のサブCPU、21…サーボモータ、22…エンコーダ   DESCRIPTION OF SYMBOLS 1 ... Position control apparatus, 1a ... Servo unit, 1b ... Arithmetic unit, 2 ... NC control apparatus, 3 ... Servo driver, 10 ... Main CPU, 11 ... NC interface, 12 ... Servo interface, 13 ... 1st sub CPU, 14 ... 2nd sub CPU, 15 ... 3rd sub CPU, 21 ... Servo motor, 22 ... Encoder

Claims (2)

モータを駆動源として該モータから伝達機構を介して伝達される駆動力によって移動する移動体の目標位置を取得する目標位置取得手段と、該移動体の実位置を把握する実位置把握手段と、該移動体の実位置が目標位置に追従するように、所定の制御周期ごとに所定のトルク指令算出処理を実行して前記モータの出力トルクの目標値であるトルク指令値を算出するトルク指令算出手段とを備えた位置制御装置において、
前記トルク指令算出手段は、
記憶手段と、
前記制御周期ごとに、前記移動体の位置を入力して前記モータのトルクを出力する所定のシステム逆伝達関数に、前記目標位置取得手段により取得された前記移動体の目標位置を入力したときの該システム逆伝達関数の出力値を、前記伝達機構の応答特性に応じた応答モデルに入力したときに該応答モデルから出力される第1のトルク値を算出すると共に、該目標位置を該応答モデルに入力したときに該応答モデルから出力される第1の目標位置を算出して、該第1のトルク値及び該第1の目標位置を前記記憶手段に記憶する第1のサブCPUと、
前記制御周期ごとに、前記実位置把握手段により把握された前記移動体の実位置を前記システム逆伝達関数に入力したときに該システム逆伝達関数から出力されるトルク値と前記トルク指令値との差に応じた第2のトルク値を算出して、該第2のトルク値を前記記憶手段に記憶する第2のサブCPUと、
前記制御周期ごとに、前記第1のサブCPUによる前記第1のトルク値及び前記第1の目標位置の算出と前記第2のサブCPUによる前記第2のトルク値の算出とに先行して、前記実位置把握手段により把握された前回の制御周期における前記移動体の実位置と前回の制御周期における前記移動体の目標位置との差分値にPID制御を適用して算出した第3のトルク値と、前記記憶手段に記憶された前回以前の制御周期における前記第1のトルク値及び前記第2のトルク値とに基づいて、前記トルク指令値を算出するメインCPUとを備えたことを特徴とする位置制御装置。
Target position acquisition means for acquiring a target position of a moving body that moves by a driving force transmitted from the motor through a transmission mechanism using a motor as a drive source; and an actual position determination means for determining the actual position of the moving body; Torque command calculation that calculates a torque command value that is a target value of the output torque of the motor by executing a predetermined torque command calculation process every predetermined control period so that the actual position of the moving body follows the target position A position control device comprising:
The torque command calculation means includes
Storage means;
When the target position of the moving body acquired by the target position acquisition means is input to a predetermined system reverse transfer function that inputs the position of the moving body and outputs the torque of the motor for each control cycle. When the output value of the system inverse transfer function is input to a response model corresponding to the response characteristic of the transmission mechanism, a first torque value output from the response model is calculated, and the target position is set to the response model. A first sub CPU that calculates a first target position that is output from the response model when stored in the storage model, and stores the first torque value and the first target position in the storage unit;
For each control cycle, when the actual position of the moving body grasped by the actual position grasping means is input to the system reverse transfer function, the torque value output from the system reverse transfer function and the torque command value A second sub CPU that calculates a second torque value according to the difference and stores the second torque value in the storage means;
For each of the control period, prior to the calculation of the second torque value according to the first said by the sub CPU first torque value and the first and calculation of the target position the second sub CPU, third torque value calculated by applying the PID control on the difference value between the target position of the movable body in the real position and the previous control cycle of the mobile in the previous control cycle, which is grasped by the actual position detection means And a main CPU that calculates the torque command value based on the first torque value and the second torque value in the previous control cycle stored in the storage means. Position control device.
モータを駆動源として該モータから伝達機構を介して伝達される駆動力によって移動する移動体の目標位置を取得する目標位置取得手段と、該移動体の実位置を把握する実位置把握手段と、該移動体の実位置が目標位置に追従するように、所定の制御周期ごとに所定のトルク指令算出処理を実行して前記モータの出力トルクの目標値であるトルク指令値を算出するトルク指令算出手段とを備えた位置制御装置において、
前記トルク指令算出手段は、
記憶手段と、
前記制御周期ごとに、前記移動体の位置を入力して前記モータのトルクを出力する所定のシステム逆伝達関数に、前記目標位置取得手段により取得された前記移動体の目標位置を入力したときの該システム逆伝達関数の出力値を、前記伝達機構の応答特性に応じた応答モデルに入力したときに該応答モデルから出力される第1のトルク値を算出すると共に、該目標位置を該応答モデルに入力したときに該応答モデルから出力される第1の目標位置を算出して、該第1のトルク値と該第1の目標位置を前記記憶手段に記憶する第1のサブCPUと、
前記制御周期ごとに、前記実位置把握手段により把握された前記移動体の実位置を前記システム逆伝達関数に入力したときに該システム逆伝達関数から出力されるトルク値と前記トルク指令値との差に応じた第2のトルク値を算出して、該第2のトルク値を前記記憶手段に記憶する第2のサブCPUと、
前記制御周期ごとに、前記伝達機構の制御対象モデルに対して、前記移動体の実位置と前記第1の目標位置との偏差を観測量として入力し前記モータのトルクを操作量として出力するH制御器に、前記実位置把握手段により把握された前記移動体の実位置と前記第1の目標位置との偏差を入力したときに、該H制御器から出力される第3のトルク値を算出して、該第3のトルク値を前記記憶手段に記憶する第3のサブCPUと、
前記制御周期ごとに、前記第1のサブCPUによる前記第1のトルク値及び前記第1の目標位置の算出と、前記第2のサブCPUによる前記第2のトルク値の算出と、前記第3のCPUによる前記第3のトルク値の算出とに先行して、前記記憶手段に記憶された2周期前の制御周期における前記第1のトルク値と、1周期前の制御周期において前記第2のサブCPUにより算出された前記第2のトルク値と、1周期前の制御周期において前記第3のサブCPUにより算出された前記第3のトルク値とに基づいて、前記トルク指令値を算出するメインCPUとを備えたことを特徴とする位置制御装置。
Target position acquisition means for acquiring a target position of a moving body that moves by a driving force transmitted from the motor through a transmission mechanism using a motor as a drive source; and an actual position determination means for determining the actual position of the moving body; Torque command calculation that calculates a torque command value that is a target value of the output torque of the motor by executing a predetermined torque command calculation process every predetermined control period so that the actual position of the moving body follows the target position A position control device comprising:
The torque command calculation means includes
Storage means;
When the target position of the moving body acquired by the target position acquisition means is input to a predetermined system reverse transfer function that inputs the position of the moving body and outputs the torque of the motor for each control cycle. When the output value of the system inverse transfer function is input to a response model corresponding to the response characteristic of the transmission mechanism, a first torque value output from the response model is calculated, and the target position is set to the response model. A first sub CPU that calculates a first target position that is output from the response model when it is input to the storage model, and stores the first torque value and the first target position in the storage unit;
For each control cycle, when the actual position of the moving body grasped by the actual position grasping means is input to the system reverse transfer function, the torque value output from the system reverse transfer function and the torque command value A second sub CPU that calculates a second torque value according to the difference and stores the second torque value in the storage means;
For each control cycle, the deviation between the actual position of the moving body and the first target position is input as an observation amount and the motor torque is output as an operation amount for the control target model of the transmission mechanism. to controller, wherein when the input a deviation between said first target position and the actual position of the grasping by said moving member by the actual position grasping means, the third torque value output from the H controller And a third sub CPU for storing the third torque value in the storage means;
For each control period, the first torque value and the first target position are calculated by the first sub CPU, the second torque value is calculated by the second sub CPU, and the third Prior to the calculation of the third torque value by the CPU, the first torque value in the control cycle two cycles before stored in the storage means and the second torque in the control cycle one cycle before The torque command value is calculated based on the second torque value calculated by the sub CPU and the third torque value calculated by the third sub CPU in the control cycle one cycle before. A position control device comprising a CPU.
JP2004170013A 2004-06-08 2004-06-08 Position control device Expired - Fee Related JP4588367B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2004170013A JP4588367B2 (en) 2004-06-08 2004-06-08 Position control device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2004170013A JP4588367B2 (en) 2004-06-08 2004-06-08 Position control device

Publications (2)

Publication Number Publication Date
JP2005349494A JP2005349494A (en) 2005-12-22
JP4588367B2 true JP4588367B2 (en) 2010-12-01

Family

ID=35584368

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2004170013A Expired - Fee Related JP4588367B2 (en) 2004-06-08 2004-06-08 Position control device

Country Status (1)

Country Link
JP (1) JP4588367B2 (en)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102417134B1 (en) * 2019-12-27 2022-07-06 알에스오토메이션주식회사 Trigger Module Control Device for Servo Motor System

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH07191707A (en) * 1993-12-27 1995-07-28 Kobe Steel Ltd Controller
JPH07271404A (en) * 1994-03-28 1995-10-20 Nippondenso Co Ltd Servocontroller

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH07191707A (en) * 1993-12-27 1995-07-28 Kobe Steel Ltd Controller
JPH07271404A (en) * 1994-03-28 1995-10-20 Nippondenso Co Ltd Servocontroller

Also Published As

Publication number Publication date
JP2005349494A (en) 2005-12-22

Similar Documents

Publication Publication Date Title
JP6648913B2 (en) Control method, robot apparatus, program, recording medium, article manufacturing method, and driving apparatus
JP4283214B2 (en) Machine tip control device
JP4813618B2 (en) Motor control device with function to estimate inertia and friction simultaneously
US11000949B2 (en) Robot for controlling learning in view of operation in production line, and method of controlling the same
KR100914349B1 (en) Method of controlling a servo-motor
JP6468871B2 (en) Robot hand control method and robot apparatus
CN109799701B (en) Industrial robot vibration suppression method
JP6519457B2 (en) Correction device, control method of correction device, information processing program, and recording medium
US10747193B2 (en) Machine learning apparatus, servo control apparatus, servo control system, and machine learning method
JP6392825B2 (en) Robot controller with learning control function
JP4276187B2 (en) Numerical control device having learning control function
US10656616B2 (en) Control device, control system, and recording medium
JP6386516B2 (en) Robot device with learning function
JP5302639B2 (en) Servo control device
JP2019181610A (en) Robot system for learning by use of motor encoder and sensor
JP6370866B2 (en) Servo motor control device, servo motor control method, and servo motor control program
JP6806746B2 (en) Motor control device
JP4588367B2 (en) Position control device
US11262721B2 (en) Automatic optimization of the parameterization of a movement controller
JP6333495B1 (en) Servo control device
JP7003454B2 (en) Control device, position control system, position control method, and position control program
JP5832382B2 (en) Numerical controller
JPH0392911A (en) Robot control method for sliding mode control
JP3226413B2 (en) Numerical control unit
CN112236729B (en) Numerical control device

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20061130

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20081010

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20081104

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20081226

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20091117

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20100112

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20100907

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20100908

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130917

Year of fee payment: 3

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20140917

Year of fee payment: 4

LAPS Cancellation because of no payment of annual fees