JP7298119B2 - Disturbance observer, control device, machine tool, and disturbance estimation method - Google Patents

Disturbance observer, control device, machine tool, and disturbance estimation method Download PDF

Info

Publication number
JP7298119B2
JP7298119B2 JP2018163803A JP2018163803A JP7298119B2 JP 7298119 B2 JP7298119 B2 JP 7298119B2 JP 2018163803 A JP2018163803 A JP 2018163803A JP 2018163803 A JP2018163803 A JP 2018163803A JP 7298119 B2 JP7298119 B2 JP 7298119B2
Authority
JP
Japan
Prior art keywords
motor
torque
temperature
constant
current
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.)
Active
Application number
JP2018163803A
Other languages
Japanese (ja)
Other versions
JP2020035394A (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.)
Brother Industries Ltd
Original Assignee
Brother Industries 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 Brother Industries Ltd filed Critical Brother Industries Ltd
Priority to JP2018163803A priority Critical patent/JP7298119B2/en
Priority to CN201910720856.9A priority patent/CN110875699B/en
Publication of JP2020035394A publication Critical patent/JP2020035394A/en
Application granted granted Critical
Publication of JP7298119B2 publication Critical patent/JP7298119B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H02GENERATION; CONVERSION OR DISTRIBUTION OF ELECTRIC POWER
    • H02PCONTROL OR REGULATION OF ELECTRIC MOTORS, ELECTRIC GENERATORS OR DYNAMO-ELECTRIC CONVERTERS; CONTROLLING TRANSFORMERS, REACTORS OR CHOKE COILS
    • H02P21/00Arrangements or methods for the control of electric machines by vector control, e.g. by control of field orientation
    • H02P21/13Observer control, e.g. using Luenberger observers or Kalman filters
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B23MACHINE TOOLS; METAL-WORKING NOT OTHERWISE PROVIDED FOR
    • B23QDETAILS, COMPONENTS, OR ACCESSORIES FOR MACHINE TOOLS, e.g. ARRANGEMENTS FOR COPYING OR CONTROLLING; MACHINE TOOLS IN GENERAL CHARACTERISED BY THE CONSTRUCTION OF PARTICULAR DETAILS OR COMPONENTS; COMBINATIONS OR ASSOCIATIONS OF METAL-WORKING MACHINES, NOT DIRECTED TO A PARTICULAR RESULT
    • B23Q1/00Members which are comprised in the general build-up of a form of machine, particularly relatively large fixed members
    • B23Q1/0009Energy-transferring means or control lines for movable machine parts; Control panels or boxes; Control parts
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B23MACHINE TOOLS; METAL-WORKING NOT OTHERWISE PROVIDED FOR
    • B23QDETAILS, COMPONENTS, OR ACCESSORIES FOR MACHINE TOOLS, e.g. ARRANGEMENTS FOR COPYING OR CONTROLLING; MACHINE TOOLS IN GENERAL CHARACTERISED BY THE CONSTRUCTION OF PARTICULAR DETAILS OR COMPONENTS; COMBINATIONS OR ASSOCIATIONS OF METAL-WORKING MACHINES, NOT DIRECTED TO A PARTICULAR RESULT
    • B23Q17/00Arrangements for observing, indicating or measuring on machine tools
    • HELECTRICITY
    • H02GENERATION; CONVERSION OR DISTRIBUTION OF ELECTRIC POWER
    • H02PCONTROL OR REGULATION OF ELECTRIC MOTORS, ELECTRIC GENERATORS OR DYNAMO-ELECTRIC CONVERTERS; CONTROLLING TRANSFORMERS, REACTORS OR CHOKE COILS
    • H02P21/00Arrangements or methods for the control of electric machines by vector control, e.g. by control of field orientation
    • H02P21/14Estimation or adaptation of machine parameters, e.g. flux, current or voltage
    • H02P21/20Estimation of torque
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02PCLIMATE CHANGE MITIGATION TECHNOLOGIES IN THE PRODUCTION OR PROCESSING OF GOODS
    • Y02P70/00Climate change mitigation technologies in the production process for final industrial or consumer products
    • Y02P70/10Greenhouse gas [GHG] capture, material saving, heat recovery or other energy efficient measures, e.g. motor control, characterised by manufacturing processes, e.g. for rolling metal or metal working

Landscapes

  • Engineering & Computer Science (AREA)
  • Power Engineering (AREA)
  • Mechanical Engineering (AREA)
  • Numerical Control (AREA)
  • Feedback Control In General (AREA)
  • Control Of Electric Motors In General (AREA)

Description

本発明は、フィードバック制御系の外乱オブザーバ、制御装置、工作機械及び外乱推定方法に関する。 The present invention relates to a disturbance observer for a feedback control system, a control device, a machine tool, and a disturbance estimation method.

従来、システムに影響する外乱を制御対象の状態の一部として推定する外乱オブザーバを利用している。モータのフィードバック制御装置に用いる外乱オブザーバでは、モータに流れる電流値からモータの出力トルクを算出するのに用いるトルク定数を、温度に依存しない一定の値として扱うことがある。 Conventionally, a disturbance observer is used to estimate the disturbance affecting the system as part of the state of the controlled object. In a disturbance observer used in a motor feedback control device, the torque constant used to calculate the output torque of the motor from the current flowing through the motor may be treated as a constant value that does not depend on temperature.

例えば、特許文献1は、サーボ回路の速度ループに組み込んだ外乱オブザーバによって推定する外乱トルクの大きさが設定値以上になったときに、被駆動体の衝突を検出してモータを停止する技術を開示している。 For example, Patent Document 1 discloses a technique for detecting a collision of a driven body and stopping a motor when the magnitude of a disturbance torque estimated by a disturbance observer incorporated in a velocity loop of a servo circuit exceeds a set value. disclosed.

特開平03-196313号公報JP-A-03-196313

しかしながら、特許文献1が開示する技術によれば、実際には温度によって変化するトルク定数Ktを一定値としているため、モータの温度が上昇した場合、推定した外乱トルクの誤差が増大する。このため、モータの温度によっては、実際よりも高い駆動負荷でモータが被駆動体を駆動していると誤検出したり、被駆動体が衝突していないにも関わらず、衝突を誤検出したりする虞があった。 However, according to the technique disclosed in Patent Document 1, the torque constant Kt, which actually varies with temperature, is set to a constant value. Therefore, when the temperature of the motor rises, an error in the estimated disturbance torque increases. For this reason, depending on the temperature of the motor, it may be erroneously detected that the motor is driving the driven body with a drive load higher than it actually is, or a collision may be erroneously detected even though the driven body is not colliding. There was a fear that

本発明は斯かる事情に鑑みてなされたものであり、その目的とするところは、推定する外乱の誤差を低減することが可能な外乱オブザーバ、制御装置、工作機械及び外乱推定方法を提供することにある。 The present invention has been made in view of such circumstances, and its object is to provide a disturbance observer, a control device, a machine tool, and a disturbance estimation method capable of reducing errors in estimated disturbances. It is in.

本発明に係る外乱オブザーバは、指令に基づいてモータをフィードバック制御するサーボ回路にフィードバックされる前記モータの位置情報及び電流情報を取得して前記モータに作用する外乱を推定する外乱オブザーバであって、前記モータの温度情報を取得し、取得した温度情報が示す温度に基づいて前記モータのトルク定数を算出する定数算出部と、該定数算出部が算出したトルク定数を、取得した電流情報が示す電流に乗じて前記モータのトルクを算出するトルク算出部と、取得した位置情報が示す位置及び前記モータが駆動する負荷機械に係る定数に基づいて前記モータのトルクを推定するトルク推定部とを備え、前記トルク算出部が算出したトルクから前記トルク推定部が推定したトルクを減じて前記外乱を推定するようにしてあり、前記定数算出部は、前記モータの温度及びトルクの関係に基づくn次(nは1以上の整数)の多項式を用いてトルク定数を近似することを特徴とする。
本発明に係る外乱オブザーバは、前記多項式は、下記の3つの式のいずれか1つであることを特徴とする。
Kt=a-bT
Kt=a-b(T-c) 2
Kt=a0+a1T+a2T 2 +・・・+anT n
但し、
Kt:トルク定数
T:前記温度情報が示す温度
a、b、c、a0、a1、a2、・・・an:一定の定数又は係数
本発明に係る外乱オブザーバは、前記モータの電流及び回転速度と、前記モータのトルク定数との対応関係を記憶するテーブルを更に備え、前記定数算出部は、取得した電流情報が示す電流及び取得した位置情報が示す位置を1回微分した回転速度に対応して前記テーブルに記憶してある内容と、前記多項式に基づいてトルク定数を算出することを特徴とする。
本発明に係る外乱オブザーバは、指令に基づいてモータをフィードバック制御するサーボ回路にフィードバックされる前記モータの位置情報及び電流情報を取得して前記モータに作用する外乱を推定する外乱オブザーバであって、前記モータの温度情報を取得し、取得した温度情報が示す温度に基づいて前記モータのトルク定数を算出する定数算出部と、該定数算出部が算出したトルク定数を、取得した電流情報が示す電流に乗じて前記モータのトルクを算出するトルク算出部と、取得した位置情報が示す位置及び前記モータが駆動する負荷機械に係る定数に基づいて前記モータのトルクを推定するトルク推定部とを備え、前記トルク算出部が算出したトルクから前記トルク推定部が推定したトルクを減じて前記外乱を推定するようにしてあり、前記定数算出部は、前記温度情報が示す温度を含む区間で定義された区分多項式を用いてトルク定数を近似することを特徴とする。
本発明に係る外乱オブザーバは、前記モータの電流及び回転速度と、前記モータのトルク定数との対応関係を記憶するテーブルを更に備え、前記定数算出部は、取得した電流情報が示す電流及び取得した位置情報が示す位置を1回微分した回転速度に対応して前記テーブルに記憶してある内容と、前記区分多項式に基づいてトルク定数を算出することを特徴とする。
A disturbance observer according to the present invention is a disturbance observer that acquires position information and current information of the motor, which are fed back to a servo circuit that feedback-controls the motor based on a command, and estimates disturbance acting on the motor, a constant calculation unit that obtains temperature information of the motor and calculates a torque constant of the motor based on the temperature indicated by the obtained temperature information; and a torque estimating unit for estimating the torque of the motor based on the position indicated by the acquired position information and the constant related to the load machine driven by the motor, The torque estimated by the torque estimator is subtracted from the torque calculated by the torque calculator to estimate the disturbance, and the constant calculator calculates the n-th order ( (n is an integer of 1 or more) is used to approximate the torque constant .
The disturbance observer according to the present invention is characterized in that the polynomial is any one of the following three expressions.
Kt = a-bT
Kt = a - b (T - c) 2
Kt=a0+a1T+a2T2 + ...+ anTn
however,
Kt: torque constant
T: temperature indicated by the temperature information
a, b, c, a0, a1, a2, . . . an: constant constant or coefficient
The disturbance observer according to the present invention further includes a table that stores a correspondence relationship between the current and rotation speed of the motor and the torque constant of the motor. The torque constant is calculated based on the content stored in the table corresponding to the rotation speed obtained by differentiating the position indicated by the position information once and the polynomial.
A disturbance observer according to the present invention is a disturbance observer that acquires position information and current information of the motor, which are fed back to a servo circuit that feedback-controls the motor based on a command, and estimates disturbance acting on the motor, a constant calculation unit that obtains temperature information of the motor and calculates a torque constant of the motor based on the temperature indicated by the obtained temperature information; and a torque estimating unit for estimating the torque of the motor based on the position indicated by the acquired position information and the constant related to the load machine driven by the motor, The torque estimated by the torque estimator is subtracted from the torque calculated by the torque calculator to estimate the disturbance, and the constant calculator calculates a section defined by a section including the temperature indicated by the temperature information. It is characterized by approximating a torque constant using a polynomial.
The disturbance observer according to the present invention further includes a table that stores a correspondence relationship between the current and rotation speed of the motor and the torque constant of the motor. The torque constant is calculated based on the piecewise polynomial and the contents stored in the table corresponding to the rotation speed obtained by differentiating the position indicated by the position information once.

本発明に係る外乱オブザーバは、前記指令は、位置指令及び/又は速度指令であり、前記サーボ回路は、前記モータに流れる電流を制御することを特徴とする。 A disturbance observer according to the present invention is characterized in that the command is a position command and/or a speed command, and the servo circuit controls the current flowing through the motor.

本発明に係る外乱オブザーバは、前記トルク推定部は、取得した位置情報が示す位置を1回微分した回転速度及び前記負荷機械に係る粘性抵抗の積と、前記回転速度を更に1回微分した加速度及び前記負荷機械に係る慣性モーメントの積と、前記負荷機械の移動方向に応じたクーロン摩擦力との和に基づいてトルクを推定することを特徴とする。 In the disturbance observer according to the present invention, the torque estimating unit is configured such that the product of the rotational speed obtained by differentiating the position indicated by the acquired position information once and the viscous resistance of the load machine, and the acceleration obtained by further differentiating the rotational speed once and the torque is estimated based on the sum of the product of the moment of inertia of the load machine and the Coulomb frictional force according to the moving direction of the load machine.

本発明に係る制御装置は、上述の外乱オブザーバと、前記指令を発令する制御部とを含むことを特徴とする。 A control device according to the present invention includes the disturbance observer described above and a control section that issues the command.

本発明に係る工作機械は、上述の制御装置と、前記サーボ回路と、前記モータと、前記負荷機械とを含む工作機械であって、前記モータの位置を検出し、検出した位置を示す位置情報を前記サーボ回路にフィードバックする位置検出部と、前記モータの電流を検出し、検出した電流を示す電流情報を前記サーボ回路にフィードバックする電流検出部と、前記モータの温度を検出し、検出した温度を示す温度情報を生成する温度検出部とを備え、前記外乱オブザーバは、前記温度検出部から温度情報を取得するようにしてあることを特徴とする。 A machine tool according to the present invention includes the control device, the servo circuit, the motor, and the load machine described above, wherein the position of the motor is detected, and position information indicating the detected position is detected. to the servo circuit; a current detection unit that detects the current of the motor and feeds back current information indicating the detected current to the servo circuit; and detects the temperature of the motor and detects the detected temperature and a temperature detection unit that generates temperature information indicating that the disturbance observer acquires the temperature information from the temperature detection unit.

本発明に係る外乱推定方法は、指令に基づいてモータをフィードバック制御するサーボ回路にフィードバックされる前記モータの位置情報及び電流情報を取得して前記モータに作用する外乱を推定する方法であって、前記モータの温度情報を取得し、取得した温度情報が示す温度に基づいて前記モータのトルク定数を算出するステップと、算出したトルク定数を、取得した電流情報が示す電流に乗じて前記モータのトルクを算出するステップと、取得した位置情報が示す位置及び前記モータが駆動する負荷機械に係る定数に基づいて前記モータのトルクを推定するステップと、算出したトルクから推定したトルクを減じて前記外乱を推定するステップとを含み、前記トルク定数を算出するステップでは、前記モータの温度及びトルクの関係に基づくn次(nは1以上の整数)の多項式を用いてトルク定数を近似することを特徴とする。
本発明に係る外乱推定方法は、指令に基づいてモータをフィードバック制御するサーボ回路にフィードバックされる前記モータの位置情報及び電流情報を取得して前記モータに作用する外乱を推定する方法であって、前記モータの温度情報を取得し、取得した温度情報が示す温度に基づいて前記モータのトルク定数を算出するステップと、算出したトルク定数を、取得した電流情報が示す電流に乗じて前記モータのトルクを算出するステップと、取得した位置情報が示す位置及び前記モータが駆動する負荷機械に係る定数に基づいて前記モータのトルクを推定するステップと、算出したトルクから推定したトルクを減じて前記外乱を推定するステップとを含み、前記トルク定数を算出するステップでは、前記温度情報が示す温度を含む区間で定義された区分多項式を用いてトルク定数を近似することを特徴とする。
A disturbance estimation method according to the present invention acquires position information and current information of the motor, which are fed back to a servo circuit that feedback-controls the motor based on a command, and estimates disturbance acting on the motor, a step of obtaining temperature information of the motor and calculating a torque constant of the motor based on the temperature indicated by the obtained temperature information; estimating the torque of the motor based on the position indicated by the acquired position information and a constant related to the load machine driven by the motor; and subtracting the estimated torque from the calculated torque to eliminate the disturbance. In the step of calculating the torque constant, the torque constant is approximated using an n-th order (n is an integer of 1 or more) polynomial based on the relationship between the temperature and the torque of the motor. and
A disturbance estimation method according to the present invention acquires position information and current information of the motor, which are fed back to a servo circuit that feedback-controls the motor based on a command, and estimates disturbance acting on the motor, a step of obtaining temperature information of the motor and calculating a torque constant of the motor based on the temperature indicated by the obtained temperature information; estimating the torque of the motor based on the position indicated by the acquired position information and a constant related to the load machine driven by the motor; and subtracting the estimated torque from the calculated torque to eliminate the disturbance. and the step of estimating, wherein the step of calculating the torque constant approximates the torque constant using a piecewise polynomial defined in an interval including the temperature indicated by the temperature information.

本発明においては、モータの温度に基づいてモータのトルク定数を算出し、算出したトルク定数をモータの電流に乗じてモータのトルクを算出し、モータの位置及びモータが駆動する負荷機械に係る定数に基づいてモータのトルクを推定し、算出したモータのトルクから推定したモータのトルクを減じてモータに作用する外乱を推定する。これにより、モータの温度に応じてトルク定数を補正するため、外乱に抗するトルクを含めた実際のモータのトルクが精度よく算出でき、外乱の算出精度が向上する。また、モータの温度及びトルクの関係を予め実測してn次の多項式を立て、この式に検出したモータの温度を適用してトルク定数を近似する。これにより、実測結果が示す曲線の曲率、変曲点及び実測点数を考慮して、全区間又は個々の区間に適用する多項式を定めることができ、多項式の次数に応じてトルク定数の近似精度が向上する。
本発明においては、多項式は上述した3つの式のいずれか1つである。
本発明においては、上述の多項式を予め定めておく他に、モータの電流及び回転速度と、モータのトルク定数との対応関係を予め実測してテーブルに記憶しておく。実行時にトルク定数を算出する場合は、モータの電流及びモータの回転速度に対応してテーブルに記憶してある内容に基づいて算出したトルク定数を上述の多項式に基づいて補正するか、又は上述の多項式に検出した温度を適用して算出したトルク定数をテーブルの記憶内容に基づいて補正する。これにより、トルク定数の算出精度がより高くなると共に、算出負荷が低減できる。
本発明においては、モータの温度に基づいてモータのトルク定数を算出し、算出したトルク定数をモータの電流に乗じてモータのトルクを算出し、モータの位置及びモータが駆動する負荷機械に係る定数に基づいてモータのトルクを推定し、算出したモータのトルクから推定したモータのトルクを減じてモータに作用する外乱を推定する。これにより、モータの温度に応じてトルク定数を補正するため、外乱に抗するトルクを含めた実際のモータのトルクが精度よく算出でき、外乱の算出精度が向上する。また、モータの温度及びトルクの関係を予め実測して区分多項式を立て、この式に検出したモータの温度を適用してトルク定数を近似する。これにより、実測結果が示す曲線の曲率、変曲点及び実測点数を考慮して、全区間又は個々の区間に適用する多項式を定めることができ、区分多項式の区間数に応じてトルク定数の近似精度が向上する。
本発明においては、上述の区分多項式を予め定めておく他に、モータの電流及び回転速度と、モータのトルク定数との対応関係を予め実測してテーブルに記憶しておく。実行時にトルク定数を算出する場合は、モータの電流及びモータの回転速度に対応してテーブルに記憶してある内容に基づいて算出したトルク定数を上述の区分多項式に基づいて補正するか、又は上述の区分多項式に検出した温度を適用して算出したトルク定数をテーブルの記憶内容に基づいて補正する。これにより、トルク定数の算出精度がより高くなると共に、算出負荷が低減できる。
In the present invention, the torque constant of the motor is calculated based on the temperature of the motor, the calculated torque constant is multiplied by the current of the motor to calculate the torque of the motor, and the constant related to the position of the motor and the load machine driven by the motor is calculated. and subtracting the estimated motor torque from the calculated motor torque to estimate the disturbance acting on the motor. As a result, since the torque constant is corrected according to the temperature of the motor, the actual torque of the motor including the torque against the disturbance can be calculated with high accuracy, and the calculation accuracy of the disturbance is improved. Also, the relation between the temperature and the torque of the motor is actually measured in advance to form an n-th order polynomial, and the detected motor temperature is applied to this equation to approximate the torque constant. This makes it possible to determine the polynomial applied to all sections or individual sections by considering the curvature of the curve indicated by the actual measurement results, inflection points, and the number of actual measurement points. improves.
In the present invention, the polynomial is any one of the three equations mentioned above.
In the present invention, in addition to predetermining the above-described polynomial, the correspondence relationship between the motor current and rotation speed and the motor torque constant is measured in advance and stored in a table. When the torque constant is calculated during execution, the torque constant calculated based on the contents stored in the table corresponding to the motor current and the motor rotation speed is corrected based on the above-described polynomial, or the above-described The torque constant calculated by applying the detected temperature to the polynomial is corrected based on the stored contents of the table. As a result, the torque constant can be calculated more accurately and the calculation load can be reduced.
In the present invention, the torque constant of the motor is calculated based on the temperature of the motor, the calculated torque constant is multiplied by the current of the motor to calculate the torque of the motor, and the constant related to the position of the motor and the load machine driven by the motor is calculated. and subtracting the estimated motor torque from the calculated motor torque to estimate the disturbance acting on the motor. As a result, since the torque constant is corrected according to the temperature of the motor, the actual torque of the motor including the torque against the disturbance can be calculated with high accuracy, and the calculation accuracy of the disturbance is improved. Also, the relationship between motor temperature and torque is actually measured in advance to form a piecewise polynomial, and the detected motor temperature is applied to this equation to approximate the torque constant. As a result, it is possible to determine the polynomial applied to all sections or individual sections in consideration of the curvature of the curve indicated by the actual measurement results, the point of inflection, and the number of actual measurement points. Improves accuracy.
In the present invention, in addition to predetermining the piecewise polynomial, the relationship between the motor current and rotation speed and the motor torque constant is actually measured in advance and stored in a table. When the torque constant is calculated during execution, the torque constant calculated based on the contents stored in the table corresponding to the motor current and the motor rotation speed is corrected based on the above-mentioned piecewise polynomial, or the above-mentioned The torque constant calculated by applying the detected temperature to the piecewise polynomial is corrected based on the contents of the table. As a result, the torque constant can be calculated more accurately and the calculation load can be reduced.

本発明においては、発令された位置指令及び速度指令の何れか又は両方に応じてモータに流れる電流を制御する。これにより、モータのトルクを生み出すモータの電流を指令内容に応じてフィードバック制御するため、モータの位置及び/又は速度が、指令された目標に収束する。 In the present invention, the current flowing through the motor is controlled according to either or both of the issued position command and speed command. As a result, the current of the motor that produces the torque of the motor is feedback-controlled in accordance with the content of the command, so that the position and/or speed of the motor converges to the commanded target.

本発明においては、モータの位置を1回微分した回転速度に負荷機械に係る粘性抵抗を乗じて算出した粘性トルクと、回転速度を更に1回微分した加速度に負荷機械に係る慣性モーメントを乗じて算出した慣性トルクと、負荷機械の移動方向に応じて符号がプラス/マイナスに変化するクーロン摩擦力とを加算してトルクを推定する。これにより、モータを含めた負荷機械の慣性モーメント、粘性抵抗及びクーロン摩擦を組み合わせてモータのトルクを推定するため、外乱を除いたモータのトルクが精度良く推定できる。 In the present invention, the viscous torque is calculated by multiplying the rotational speed obtained by differentiating the position of the motor once by the viscous resistance of the load machine, and the acceleration obtained by differentiating the rotational speed once more is multiplied by the moment of inertia of the load machine. The torque is estimated by adding the calculated inertia torque and the Coulomb frictional force whose sign changes plus/minus according to the moving direction of the load machine. As a result, since the torque of the motor is estimated by combining the moment of inertia, viscous resistance, and Coulomb friction of the load machine including the motor, the torque of the motor excluding disturbance can be accurately estimated.

本発明においては、外乱を高精度に推定する外乱オブザーバを、負荷機械を制御する制御装置に適用することができる。 In the present invention, a disturbance observer that estimates disturbances with high accuracy can be applied to a control device that controls a load machine.

本発明においては、制御装置の制御部がサーボ回路に指令を発令し、指令を受けたサーボ回路が負荷機械を駆動するモータをフィードバック制御する。制御装置の外乱オブザーバは、位置検出部及び電流検出部夫々からサーボ回路にフィードバックされるモータの位置情報及び電流情報と、温度検出部からの温度情報とを取得して外乱を推定する。これにより、負荷機械を介してモータに作用する外乱が高精度に推定できる。 In the present invention, the control unit of the control device issues a command to the servo circuit, and the servo circuit that receives the command feedback-controls the motor that drives the load machine. A disturbance observer of the control device obtains motor position information and current information fed back to the servo circuit from the position detection section and the current detection section, respectively, and temperature information from the temperature detection section to estimate the disturbance. As a result, the disturbance acting on the motor via the load machine can be estimated with high accuracy.

本発明によれば、推定する外乱の誤差を低減することが可能となる。 According to the present invention, it is possible to reduce errors in estimated disturbances.

実施の形態1の工作機械を示す斜視図である。1 is a perspective view showing a machine tool according to Embodiment 1; FIG. 制御装置を示すブロック図である。It is a block diagram which shows a control apparatus. 制御装置及びX軸モータの内外で授受される情報を示すブロック図である。3 is a block diagram showing information exchanged inside and outside the control device and the X-axis motor; FIG. サーボ回路の機能構成を示すブロック図である。3 is a block diagram showing the functional configuration of a servo circuit; FIG. 外乱オブザーバの機能構成を示すブロック図である。It is a block diagram which shows the functional structure of a disturbance observer. 実施の形態1の外乱オブザーバで外乱力を推定するCPUの処理手順を示すフローチャートである。4 is a flow chart showing a processing procedure of a CPU for estimating a disturbance force with a disturbance observer according to Embodiment 1; モータについて回転方向を検出し、回転速度及び加速度を算出するCPUの処理手順を示すフローチャートである。4 is a flow chart showing the processing procedure of a CPU for detecting the rotation direction of a motor and calculating the rotation speed and acceleration; モータの電流、温度及び回転速度と、トルク定数との対応関係を記憶するテーブルの内容を示す図表である。4 is a chart showing the contents of a table that stores a correspondence relationship between motor current, temperature, rotational speed, and torque constant; 実施の形態2の外乱オブザーバで外乱力を推定するCPUの処理手順を示すフローチャートである。10 is a flow chart showing a processing procedure of a CPU for estimating a disturbance force with a disturbance observer according to Embodiment 2; モータの電流及び回転速度と、トルク定数との対応関係を記憶するテーブルの内容を示す図表である。4 is a chart showing the contents of a table that stores a correspondence relationship between a motor current and rotation speed and a torque constant; 実施の形態3の外乱オブザーバでトルク定数を算出するCPUの処理手順を示すフローチャートである。11 is a flow chart showing a processing procedure of a CPU for calculating a torque constant with a disturbance observer according to Embodiment 3; モータの温度モデルを模式的に示す説明図である。FIG. 3 is an explanatory diagram schematically showing a temperature model of a motor; モータにおける各部の温度変化のシミュレーション結果を示すグラフである。4 is a graph showing a simulation result of temperature change of each part of the motor;

以下、本発明をその実施形態を示す図面に基づいて詳述する。
(実施の形態1)
図1は、実施の形態1の工作機械100を示す斜視図である。以下の説明では図中矢印で示す上下、左右、前後を使用する。図1に示す如く、工作機械100は、前後に延びた矩形の基台1を備える。ワーク保持部3は、基台1上部の前側に設ける。ワーク保持部3は、左右に延びたA軸と上下に延びたC軸回りに回転可能である。支持台2は、基台1上部の後側に設けてあり、立柱4を支持する。
Hereinafter, the present invention will be described in detail based on the drawings showing its embodiments.
(Embodiment 1)
FIG. 1 is a perspective view showing a machine tool 100 according to Embodiment 1. FIG. In the following description, up/down, left/right, and front/rear directions indicated by arrows in the drawing are used. As shown in FIG. 1, a machine tool 100 includes a rectangular base 1 extending forward and backward. The work holding part 3 is provided on the front side of the upper part of the base 1 . The work holding part 3 is rotatable around an A axis extending horizontally and a C axis extending vertically. A support base 2 is provided on the rear side of the upper part of the base 1 and supports the upright column 4. - 特許庁

Y軸方向移動機構10(負荷機械に相当)は、支持台2上部に設けてあり、移動板16を前後方向に移動する。Y軸方向移動機構10は、前後に延びた二つの軌道11、Y軸螺子軸12、Y軸モータ13及び軸受14を備える。軌道11は、支持台2上部の左と右に設ける。Y軸螺子軸12は前後に延びており、二つの軌道11の間に設ける。軸受14は、Y軸螺子軸12の前端部と中途部(図示略)に設ける。Y軸モータ13は、Y軸螺子軸12後端部に連結する。ナット(図示略)は、Y軸螺子軸12に転動体(図示略)を介して螺合する。転動体は例えばボールである。複数の摺動子15は、各軌道11に摺動可能に設ける。移動板16は、水平方向に延びており、ナットと摺動子15上部に連結する。Y軸螺子軸12はY軸モータ13の回転で回転し、ナットは前後方向に移動し、移動板16は前後方向に移動する。 A Y-axis direction moving mechanism 10 (corresponding to a load machine) is provided above the support table 2 and moves a moving plate 16 in the front-rear direction. The Y-axis movement mechanism 10 includes two tracks 11 extending back and forth, a Y-axis screw shaft 12 , a Y-axis motor 13 and bearings 14 . Tracks 11 are provided on the left and right sides of the upper part of support base 2 . The Y-axis screw shaft 12 extends back and forth and is provided between the two tracks 11 . The bearings 14 are provided at the front end portion and the middle portion (not shown) of the Y-axis screw shaft 12 . The Y-axis motor 13 is connected to the rear end of the Y-axis screw shaft 12 . A nut (not shown) is screwed onto the Y-axis screw shaft 12 via rolling elements (not shown). The rolling bodies are, for example, balls. A plurality of sliders 15 are slidably provided on each track 11 . The moving plate 16 extends horizontally and is connected to the top of the nut and slider 15 . The Y-axis screw shaft 12 is rotated by the rotation of the Y-axis motor 13, the nut moves in the front-rear direction, and the moving plate 16 moves in the front-rear direction.

X軸方向移動機構20(負荷機械に相当)は、移動板16上面に設けてあり、立柱4を左右方向に移動する。X軸方向移動機構20は、左右に延びた二つの軌道21、X軸螺子軸22、X軸モータ23(図2参照)及び軸受24を備える。軌道21は、移動板16上面の前と後に設ける。X軸螺子軸22は左右に延びており、二つの軌道21の間に設ける。軸受24は、X軸螺子軸22の左端部と中途部(図示略)に設ける。X軸モータ23は、X軸螺子軸22の右端部に連結する。ナット(図示略)は、X軸螺子軸22に転動体(図示略)を介して螺合する。複数の摺動子26は、各軌道21に摺動可能に設ける。立柱4は、ナットと摺動子26上部に連結する。X軸螺子軸22はX軸モータ23の回転で回転し、ナットは左右方向に移動し、立柱4は左右方向に移動する。 An X-axis direction moving mechanism 20 (corresponding to a load machine) is provided on the upper surface of the moving plate 16 and moves the vertical column 4 in the horizontal direction. The X-axis movement mechanism 20 includes two tracks 21 extending left and right, an X-axis screw shaft 22, an X-axis motor 23 (see FIG. 2), and a bearing 24. As shown in FIG. Tracks 21 are provided in front and rear of the upper surface of moving plate 16 . The X-axis screw shaft 22 extends left and right and is provided between the two tracks 21 . The bearings 24 are provided at the left end portion and the middle portion (not shown) of the X-axis screw shaft 22 . The X-axis motor 23 is connected to the right end of the X-axis screw shaft 22 . A nut (not shown) is screwed onto the X-axis screw shaft 22 via rolling elements (not shown). A plurality of sliders 26 are slidably provided on each track 21 . The upright 4 is connected to the upper part of the nut and slider 26 . The X-axis screw shaft 22 is rotated by the rotation of the X-axis motor 23, the nut moves in the left-right direction, and the vertical column 4 moves in the left-right direction.

Z軸方向移動機構30(負荷機械に相当)は、立柱4の前面に設けてあり、主軸ヘッド5を上下方向に移動する。Z軸方向移動機構30は、上下に延びた二つの軌道31、Z軸螺子軸32、Z軸モータ33及び軸受34を備える。軌道31は、立柱4前面の左と右に設ける。Z軸螺子軸32は上下に延びており、二つの軌道31の間に設ける。軸受34は、Z軸螺子軸32の下端部と中途部(図示略)に設ける。Z軸モータ33は、Z軸螺子軸32上端部に連結する。ナット(図示略)は、Z軸螺子軸32に転動体(図示略)を介して螺合する。複数の摺動子35は、各軌道31に摺動可能に設ける。主軸ヘッド5は、ナットと摺動子35の前部に連結する。Z軸螺子軸32はZ軸モータ33の回転で回転し、ナットは上下方向に移動し、主軸ヘッド5は上下方向に移動する。 A Z-axis direction moving mechanism 30 (corresponding to a load machine) is provided on the front surface of the vertical column 4 and moves the spindle head 5 in the vertical direction. The Z-axis movement mechanism 30 includes two vertically extending tracks 31 , a Z-axis screw shaft 32 , a Z-axis motor 33 and bearings 34 . Tracks 31 are provided on the left and right sides of the front surface of the upright column 4 . The Z-axis screw shaft 32 extends vertically and is provided between the two tracks 31 . The bearings 34 are provided at the lower end portion and the middle portion (not shown) of the Z-axis screw shaft 32 . The Z-axis motor 33 is connected to the upper end of the Z-axis screw shaft 32 . A nut (not shown) is screwed onto the Z-axis screw shaft 32 via rolling elements (not shown). A plurality of sliders 35 are slidably provided on each track 31 . The spindle head 5 connects to the front of the nut and slider 35 . The Z-axis screw shaft 32 is rotated by the rotation of the Z-axis motor 33, the nut moves vertically, and the spindle head 5 moves vertically.

上下に延びた主軸51(負荷機械に相当)は主軸ヘッド5内に設ける。主軸51は軸回りに回転する。主軸モータ6は、主軸ヘッド5上端部に設ける。主軸51下端部は工具を装着する。主軸51は主軸モータ6の回転で回転し、工具は回転する。回転した工具は、ワーク保持部3で保持したワークを加工する。 A vertically extending spindle 51 (corresponding to a load machine) is provided in the spindle head 5 . The main shaft 51 rotates about its axis. A spindle motor 6 is provided at the upper end of the spindle head 5 . A tool is mounted on the lower end of the spindle 51 . The spindle 51 is rotated by the rotation of the spindle motor 6, and the tool is rotated. The rotated tool processes the work held by the work holding part 3 .

図2は制御装置60を示すブロック図である。工作機械100は、主軸モータ6、Y軸モータ13、X軸モータ23、Z軸モータ33、ワーク保持部3等の駆動を制御する制御装置60を備える。図2に示す如く、制御装置60は、CPU61、ROM62、RAM63、EEPROM等の不揮発性の記憶装置64、入力インタフェース65、入出力インタフェース66等を有する。記憶装置64は、ワークを加工する為の加工プログラムを格納する。加工プログラムは、複数の行(命令)を備える。CPU61は、行を順に読み込み、命令を実行して各部を駆動するための指令を発令する。 FIG. 2 is a block diagram showing the control device 60. As shown in FIG. The machine tool 100 includes a control device 60 that controls the driving of the spindle motor 6, the Y-axis motor 13, the X-axis motor 23, the Z-axis motor 33, the workpiece holder 3, and the like. As shown in FIG. 2, the control device 60 has a CPU 61, a ROM 62, a RAM 63, a nonvolatile storage device 64 such as an EEPROM, an input interface 65, an input/output interface 66, and the like. A storage device 64 stores a machining program for machining a workpiece. A machining program comprises a plurality of lines (instructions). The CPU 61 reads lines in order, executes instructions, and issues commands for driving each section.

工作機械100は、受付部67(設定部)、Z軸センサ68及び主軸センサ69を更に備える。受付部67は、例えばキーボード、タッチパネル、表示画面等を備え、使用者の操作を受け付ける。使用者は、受付部67を介して例えば特定の処理の実行を記憶装置64に設定する。Z軸センサ68は、主軸51の上下位置、換言すれば主軸51の軸方向位置を検出する。主軸センサ69は、主軸51の周方向の位置を検出する。制御装置60は、入力インタフェース65を介して受付部67から設定を入力し、Z軸センサ68から軸方向位置を入力し、主軸センサ69から回転速度を入力する。制御装置60は、入出力インタフェース66を介して主軸モータ6、X軸モータ23、Y軸モータ13及びZ軸モータ33に位置指令又は速度指令を発令する。制御装置60は、また、入出力インタフェース66を介して主軸モータ6、X軸モータ23、Y軸モータ13及びZ軸モータ33夫々の位置情報と電流情報を取得する。Z軸モータ33及び主軸モータ6夫々の位置情報は、後述する図3に示すエンコーダ23bに相当するものとしてZ軸センサ68及び主軸センサ69の代わりにZ軸モータ33及び主軸モータ6夫々に設けたエンコーダを用いて検出してもよい。 The machine tool 100 further includes a reception section 67 (setting section), a Z-axis sensor 68 and a spindle sensor 69 . The receiving unit 67 includes, for example, a keyboard, a touch panel, a display screen, etc., and receives user's operations. The user sets execution of a specific process in the storage device 64 via the reception unit 67, for example. The Z-axis sensor 68 detects the vertical position of the main shaft 51 , in other words, the axial position of the main shaft 51 . A spindle sensor 69 detects the circumferential position of the spindle 51 . The control device 60 inputs settings from the reception unit 67 via the input interface 65 , inputs the axial position from the Z-axis sensor 68 , and inputs the rotation speed from the spindle sensor 69 . The control device 60 issues a position command or a speed command to the spindle motor 6 , the X-axis motor 23 , the Y-axis motor 13 and the Z-axis motor 33 via the input/output interface 66 . The control device 60 also acquires position information and current information of each of the spindle motor 6 , the X-axis motor 23 , the Y-axis motor 13 and the Z-axis motor 33 via the input/output interface 66 . The positional information of the Z-axis motor 33 and the main shaft motor 6 are provided in the Z-axis motor 33 and the main shaft motor 6 instead of the Z-axis sensor 68 and the main shaft sensor 69, which correspond to the encoder 23b shown in FIG. You may detect using an encoder.

CPU61が加工処理を実行する場合、CPU61は、主軸モータ6、X軸モータ23、Y軸モータ13及びZ軸モータ33に指令を発令して、主軸51の回転と、X軸方向移動機構20、Y軸方向移動機構10及びZ軸方向移動機構30の移動とを制御する。これにより、CPU61は、主軸51に装着した工具を用いてワークを加工する。 When the CPU 61 executes machining processing, the CPU 61 issues commands to the main shaft motor 6, the X-axis motor 23, the Y-axis motor 13, and the Z-axis motor 33 to rotate the main shaft 51, move the X-axis direction moving mechanism 20, It controls the movements of the Y-axis direction moving mechanism 10 and the Z-axis direction moving mechanism 30 . Thereby, the CPU 61 uses the tool attached to the spindle 51 to machine the workpiece.

次に、例としてX軸モータ23及び制御装置60の間の情報の流れについて説明する。Y軸モータ13及び制御装置60の間の情報の流れ、Z軸モータ33及び制御装置60の間の情報の流れ、並びに主軸モータ6及び制御装置60の間の情報の流れについても同様である。図3は、制御装置60及びX軸モータ23の内外で授受される情報を示すブロック図である。制御装置60が含む制御部600及び外乱オブザーバ610夫々は、図2に示すCPU61を有する制御装置60によって実現する機能ブロックの1つである。X軸モータ23は、X軸螺子軸22を駆動するモータ23aと、制御部600からの位置指令及び速度指令の何れか又は両方に基づいてモータ23aに流れる電流をフィードバック制御するサーボ回路230とを有する。モータ23aに流れる電流は電流検出部237が検出し、電流検出部237は検出した電流を示す電流情報をサーボ回路230にフィードバックする。 Next, the flow of information between the X-axis motor 23 and the control device 60 will be described as an example. The same applies to the information flow between the Y-axis motor 13 and the control device 60, the information flow between the Z-axis motor 33 and the control device 60, and the information flow between the spindle motor 6 and the control device 60. FIG. 3 is a block diagram showing information exchanged inside and outside the control device 60 and the X-axis motor 23. As shown in FIG. The control unit 600 and the disturbance observer 610 included in the control device 60 are one of functional blocks realized by the control device 60 having the CPU 61 shown in FIG. The X-axis motor 23 includes a motor 23a that drives the X-axis screw shaft 22, and a servo circuit 230 that feedback-controls the current flowing through the motor 23a based on one or both of a position command and a speed command from the control unit 600. have. A current detection unit 237 detects the current flowing through the motor 23 a , and the current detection unit 237 feeds back current information indicating the detected current to the servo circuit 230 .

モータ23aは、例えばロータにマグネットを有するACサーボモータである。モータ23aの回転位置はエンコーダ23b(位置検出部に相当)が検出し、エンコーダ23bは検出した回転位置を示す位置情報をパルス信号としてサーボ回路230にフィードバックする。モータ23aの温度は、温度検出部23cが検出し、検出した温度を示す温度情報を外乱オブザーバ610に与える。温度検出部23cは、ロータのマグネットの温度(以下、マグネット温度という)を検出することが好ましい。 The motor 23a is, for example, an AC servomotor having a magnet in its rotor. The rotational position of the motor 23a is detected by an encoder 23b (corresponding to a position detector), and the encoder 23b feeds back position information indicating the detected rotational position to the servo circuit 230 as a pulse signal. The temperature of the motor 23a is detected by the temperature detector 23c, and the temperature information indicating the detected temperature is provided to the disturbance observer 610. FIG. The temperature detection unit 23c preferably detects the temperature of the magnet of the rotor (hereinafter referred to as magnet temperature).

マグネット温度を直接的に検出することが困難である場合は、モータ23aの電流及びモータ23aの外気温を検出してマグネット温度を推定してもよい(後述のシミュレーション参照)。また、マグネット温度の代用として、モータ23aのケース温度、エンコーダ23bの温度等のマグネットとは異なる部位の温度を用いてもよい。 If it is difficult to directly detect the magnet temperature, the magnet temperature may be estimated by detecting the current of the motor 23a and the outside air temperature of the motor 23a (see simulation described later). As a substitute for the magnet temperature, the temperature of a portion different from the magnet, such as the case temperature of the motor 23a and the temperature of the encoder 23b, may be used.

外乱オブザーバ610は、サーボ回路230にフィードバックされる位置情報及び電流情報と、温度検出部23cからの温度情報とを取得して、モータ23aに作用する外乱、即ち外乱トルクとしての外乱力を推定する。外乱オブザーバ610が、サーボ回路230を介さずに位置情報及び電流情報を取得するようにしてもよい。制御部600は、例えば外乱オブザーバ610が推定した外乱力が所定の閾値を超過した場合に、所定の警報を発令したり、モータ23aを停止させる指令を発令したりすることができる。 The disturbance observer 610 acquires position information and current information fed back to the servo circuit 230 and temperature information from the temperature detection unit 23c, and estimates disturbance acting on the motor 23a, that is, disturbance force as disturbance torque. . The disturbance observer 610 may acquire position information and current information without going through the servo circuit 230 . For example, when the disturbance force estimated by the disturbance observer 610 exceeds a predetermined threshold value, the control unit 600 can issue a predetermined alarm or issue a command to stop the motor 23a.

次に、例として制御部600から位置指令を受けたサーボ回路230の動作について説明する。図4は、サーボ回路230の機能構成を示すブロック図である。Y軸モータ13、Z軸モータ33及び主軸モータ6のサーボ回路についても同様である。図中231、233及び235の夫々は、増幅度が位置比例ゲイン、速度比例ゲイン及び速度積分ゲインである増幅器を表す。サーボ回路230は、位置指令が含む目標の位置と、エンコーダ23bがフィードバックする位置情報が示す位置との差分である位置誤差を増幅して速度指令を生成する増幅器231を有する。サーボ回路230は、また、位置情報が示す位置を1回微分してモータ23aの回転速度を生成する微分器232と、増幅器231が生成した速度指令及び微分器232が生成した回転速度の差分である速度誤差を増幅する増幅器233と、該速度誤差を積分して増幅する積分器234及び増幅器235とを有する。 Next, the operation of the servo circuit 230 that receives a position command from the control unit 600 will be described as an example. FIG. 4 is a block diagram showing the functional configuration of the servo circuit 230. As shown in FIG. The same applies to the servo circuits of the Y-axis motor 13, the Z-axis motor 33 and the spindle motor 6. 231, 233 and 235 in the figure represent amplifiers whose amplification factors are position proportional gain, velocity proportional gain and velocity integral gain, respectively. The servo circuit 230 has an amplifier 231 that amplifies a position error, which is the difference between the target position included in the position command and the position indicated by the position information fed back by the encoder 23b, to generate a speed command. The servo circuit 230 also has a differentiator 232 that differentiates once the position indicated by the position information to generate the rotation speed of the motor 23a, and a difference between the speed command generated by the amplifier 231 and the rotation speed generated by the differentiator 232. It has an amplifier 233 that amplifies a certain speed error, and an integrator 234 and an amplifier 235 that integrate and amplify the speed error.

図4に示す例では、増幅器233が増幅した速度誤差に比例する量に、増幅器235が増幅した速度誤差の積分結果に比例する量を加算したものを電流指令とする。これにより、いわゆるPI制御を行う。サーボ回路230は、更に、上記の電流指令に基づいてモータ23aに流れる電流をフィードバック制御する電流制御器236を有する。電流検出部237は、検出した電流を示す電流情報を電流制御器236にフィードバックしており、電流制御器236は、電流指令に応じた電流がモータ23aに流れるように制御する。 In the example shown in FIG. 4, the sum of the amount proportional to the speed error amplified by the amplifier 233 and the amount proportional to the integration result of the speed error amplified by the amplifier 235 is used as the current command. Thus, so-called PI control is performed. The servo circuit 230 further has a current controller 236 that feedback-controls the current flowing through the motor 23a based on the current command. The current detector 237 feeds back current information indicating the detected current to the current controller 236, and the current controller 236 controls the current according to the current command to flow through the motor 23a.

なお、図4では、制御部600が位置指令を発令した場合についてサーボ回路230の動作を説明したが、制御部600が速度指令を発令した場合は、増幅器231が生成する速度指令に代えて、制御部600からの速度指令を用いればよい。制御部600が位置指令及び速度指令を同時的に発令した場合については、夫々を単独で発令した場合の動作を重ね合わせればよい。 In FIG. 4, the operation of the servo circuit 230 has been described in the case where the control unit 600 issues a position command. A speed command from the control unit 600 may be used. When the control unit 600 issues a position command and a speed command simultaneously, the operations when issuing each command alone may be superimposed.

次に、外乱オブザーバ610の動作について説明する。図5は、外乱オブザーバ610の機能構成を示すブロック図である。Y軸モータ13、Z軸モータ33及び主軸モータ6の外乱オブザーバについても同様である。外乱オブザーバ610は、温度検出部23cからの温度情報を取得し、取得した温度情報が示す温度に基づいてトルク定数を算出する定数算出部611と、該定数算出部611が算出したトルク定数を、取得した電流情報が示す電流に乗じてモータ23aのトルクを算出するトルク算出部612とを有する。トルク算出部612が算出するトルクは、外乱に抗するトルクを含んでいる。外乱オブザーバ610は、また、取得した位置情報が示す位置及びX軸方向移動機構20に関する定数に基づいてモータ23aのトルクを推定するトルク推定部613を有する。 Next, the operation of disturbance observer 610 will be described. FIG. 5 is a block diagram showing the functional configuration of the disturbance observer 610. As shown in FIG. The same applies to disturbance observers for the Y-axis motor 13, Z-axis motor 33, and spindle motor 6. FIG. The disturbance observer 610 acquires temperature information from the temperature detection unit 23c, and calculates a torque constant based on the temperature indicated by the acquired temperature information. and a torque calculator 612 that calculates the torque of the motor 23a by multiplying the current indicated by the acquired current information. The torque calculated by the torque calculator 612 includes torque that resists disturbance. The disturbance observer 610 also has a torque estimator 613 that estimates the torque of the motor 23 a based on the position indicated by the acquired position information and constants related to the X-axis direction moving mechanism 20 .

定数算出部611は、取得した温度情報が示す温度Tをn次(nは1以上の整数)の多項式又は区分多項式に適用してトルク定数Ktを近似する。ここでの多項式は、予めモータ23aの温度を変えながら実測して定めた、以下の式(1)のような温度Tの一次式、式(2)のような温度Tの二次式、又は式(3)のような温度Tのn次式である。一般的には、モータ23aの温度が上昇するほどモータ23aのロータのマグネット温度が高くなり、マグネットの磁束密度が低下するため、トルク定数が小さくなる。モータ23aの温度及びトルクの関係を予め実測することにより、実測結果が示す曲線の曲率、変曲点及び実測点数を考慮して、温度及びトルクの関係を最もよく表す式が立てることができる。 The constant calculator 611 applies the temperature T indicated by the acquired temperature information to an n-th order (n is an integer equal to or greater than 1) polynomial or piecewise polynomial to approximate the torque constant Kt. The polynomial here is a linear expression of the temperature T such as the following expression (1), a secondary expression of the temperature T such as the expression (2), or It is an nth order expression of the temperature T like the expression (3). Generally, the higher the temperature of the motor 23a, the higher the temperature of the magnet of the rotor of the motor 23a, and the lower the magnetic flux density of the magnet, resulting in a smaller torque constant. By measuring the relationship between the temperature and torque of the motor 23a in advance, it is possible to formulate an equation that best expresses the relationship between temperature and torque in consideration of the curvature of the curve indicated by the actual measurement results, the point of inflection, and the number of actual measurement points.

Kt=a-bT・・・・・・・・・・・・・・・・・・・・・・・・・・・・(1)
Kt=a-b(T-c)2 ・・・・・・・・・・・・・・・・・・・・・・・(2)
Kt=a0+a1T+a2T2 +・・・+anTn ・・・・・・・・・・・・(3)
但し、a、b、c、a0、a1、a2、・・・anは一定の定数又は係数
Kt=a−bT (1)
Kt = a - b (T - c) 2 (2)
Kt=a0+a1T+ a2T2 +...+ anTn (3)
where a, b, c, a0, a1, a2, . . . an are constant constants or coefficients

上記の式(1)から(3)に代えて、例えば区間[Tj,Tj+1](j=0、1、2・・・)でスプライン補間するための以下の式(4)のような関数Sj(T)を、予め実測によって定めておいてもよい。この場合、定数算出部611は、取得した温度情報が示す温度Tを含む区間[Tj,Tj+1]で定義された関数Sj(T)の値を、当該温度Tにおけるトルク定数Ktとする。 Instead of the above equations (1) to (3), for example, a function Sj such as the following equation (4) for spline interpolation in the interval [Tj, Tj+1] (j=0, 1, 2 . . . ) (T) may be determined in advance by actual measurement. In this case, the constant calculator 611 sets the value of the function Sj(T) defined in the interval [Tj, Tj+1] including the temperature T indicated by the acquired temperature information as the torque constant Kt at the temperature T.

Sj(T)=aj(T-Tj)3 +bj(T-Tj)2 +cj(T-Tj)+dj
・・・・・・・・・・・・・・・・・・・・・・・(4)
但し、aj、bj、cj、djは一定の係数又は定数
Sj(T)=aj(T-Tj) 3 +bj(T-Tj) 2 +cj(T-Tj)+dj
・・・・・・・・・・・・・・・・・・・・・・・・ (4)
where aj, bj, cj, and dj are constant coefficients or constants

トルク推定部613は、取得した位置情報に基づいてモータ23aの回転方向、即ちX軸方向移動機構20の移動方向を検出する方向検出器614と、取得した位置情報が示す位置を1回微分して回転速度を生成する微分器615と、該微分器615が生成した回転速度を1回微分して加速度を生成する微分器616とを含む。図5中のトルク推定部613が更に含む617は、モータ23aを含むX軸方向移動機構20に作用するプラス又はマイナスのクーロン摩擦力を出力する出力部である。図5中の618及び619夫々は、モータ23aを含むX軸方向移動機構20の粘性抵抗及び慣性モーメントを乗算する乗算器を表す。 A torque estimating unit 613 includes a direction detector 614 that detects the rotation direction of the motor 23a, that is, the moving direction of the X-axis direction moving mechanism 20, based on the acquired position information, and a direction detector 614 that differentiates once the position indicated by the acquired position information. and a differentiator 616 that differentiates once the rotational speed generated by the differentiator 615 to generate acceleration. 617 further included in the torque estimation unit 613 in FIG. 5 is an output unit that outputs a positive or negative Coulomb frictional force acting on the X-axis direction moving mechanism 20 including the motor 23a. 618 and 619 in FIG. 5 represent multipliers for multiplying the viscous resistance and moment of inertia of the X-axis movement mechanism 20 including the motor 23a.

方向検出器614は、例えば位置情報の前回値と今回値の差分を計算し、差分の符号を出力すればよい。方向検出器614は、公知のハードウェア回路を用いてモータ23aの回転方向を検出してもよい。出力部617は、方向検出器614の検出結果に応じて、プラス及びマイナスの摩擦トルクを出力する。 The direction detector 614 may, for example, calculate the difference between the previous value of the position information and the current value, and output the sign of the difference. Direction detector 614 may detect the direction of rotation of motor 23a using a known hardware circuit. The output unit 617 outputs plus and minus frictional torque according to the detection result of the direction detector 614 .

微分器615は、例えば位置情報の前回値と今回値の差分を計算し、位置情報の取得間隔時間で除することで回転速度を算出する。微分器616は、例えば微分器615が算出した回転速度の前回値と今回値の差分を計算し、位置情報の取得間隔時間で除することで加速度を算出する。 The differentiator 615 calculates, for example, the difference between the previous value of the position information and the current value, and divides the difference by the acquisition interval time of the position information to calculate the rotational speed. The differentiator 616 calculates the acceleration by calculating the difference between the previous value and the current value of the rotation speed calculated by the differentiator 615, for example, and dividing the difference by the positional information acquisition interval time.

乗算器618は、微分器615が生成した回転速度に粘性抵抗を乗じて粘性トルクを出力する。乗算器619は、微分器616が生成した加速度に慣性モーメントを乗じて慣性トルクを出力する。これらの摩擦トルク、粘性トルク及び慣性トルクを加算したものが、トルク推定部613が推定するトルクである。外乱オブザーバ610は、トルク算出部612が算出したトルク、即ち外乱に抗するトルクを含んで算出したトルクから、トルク推定部613が推定したトルクを減じて外乱力を推定する。粘性抵抗は、複数の回転速度について、モータ23aを一定速度で回転中のトルク値を測定し、速度とトルク値の比例関係より算出する。慣性モーメントは、複数の加速度について、モータ23aを一定加速度で回転中のトルク値を測定し、加速度とトルク値の比例関係より算出する。慣性モーメントは、負荷機械の設計図面より算出した値を用いてもよい。 A multiplier 618 multiplies the rotational speed generated by the differentiator 615 by the viscous resistance and outputs viscous torque. A multiplier 619 multiplies the acceleration generated by the differentiator 616 by the moment of inertia to output an inertia torque. The torque estimated by the torque estimator 613 is obtained by adding these frictional torque, viscous torque, and inertia torque. The disturbance observer 610 estimates the disturbance force by subtracting the torque estimated by the torque estimator 613 from the torque calculated by the torque calculator 612, that is, the torque calculated including the torque against the disturbance. The viscous resistance is calculated from the proportional relationship between the speed and the torque value by measuring the torque value while the motor 23a is rotating at a constant speed for a plurality of rotation speeds. For a plurality of accelerations, the moment of inertia is calculated by measuring torque values while the motor 23a is rotating at a constant acceleration and calculating the proportional relationship between the acceleration and the torque value. A value calculated from the design drawing of the load machine may be used as the moment of inertia.

以下では、上述した外乱オブザーバ610の動作を、フローチャートを用いて説明する。Y軸モータ13、Z軸モータ33及び主軸モータ6についても同様である。図6は、実施の形態1の外乱オブザーバ610で外乱力を推定するCPU61の処理手順を示すフローチャートである。図7は、モータ23aについて回転方向を検出し、回転速度及び加速度を算出するCPU61の処理手順を示すフローチャートである。図6に示す処理は、一定の周期(例えば1ms毎)で起動される。 The operation of the disturbance observer 610 described above will be described below using a flowchart. The same applies to the Y-axis motor 13, the Z-axis motor 33, and the spindle motor 6. FIG. 6 is a flow chart showing the processing procedure of the CPU 61 for estimating the disturbance force with the disturbance observer 610 of the first embodiment. FIG. 7 is a flow chart showing the processing procedure of the CPU 61 for detecting the rotation direction of the motor 23a and calculating the rotation speed and acceleration. The processing shown in FIG. 6 is activated at regular intervals (for example, every 1 ms).

図6の処理が起動された場合、CPU61は、モータ23aの温度情報を温度検出部23cから取得し(S11)、取得した温度情報が示す温度Tを式(1)から(3)の何れかの多項式又は式(4)の区分多項式に適用してトルク定数Ktを算出する(S12:定数算出部611に相当)。次いで、CPU61は、後述する図7の処理結果であるモータ23aの回転方向、回転速度及び加速度に基づき、上述のトルク推定部613によってモータ23aのトルクを推定する(S13:トルク推定部613に相当)。 When the process of FIG. 6 is started, the CPU 61 acquires the temperature information of the motor 23a from the temperature detector 23c (S11), and sets the temperature T indicated by the acquired temperature information to any one of equations (1) to (3). or the piecewise polynomial of equation (4) to calculate the torque constant Kt (S12: corresponding to the constant calculator 611). Next, the CPU 61 causes the torque estimator 613 to estimate the torque of the motor 23a based on the rotational direction, rotational speed, and acceleration of the motor 23a, which are the processing results of FIG. ).

その後、CPU61は、電流検出部237からの電流情報をサーボ回路230を介して、又は直接的に取得し(S14)、取得した電流情報が示す電流に、ステップS12で算出したトルク定数を乗じてモータ23aのトルクを算出する(S15:トルク算出部612に相当)。そして、CPU61は、算出したトルクから、ステップS13で推定したトルクを減じて外乱トルクとしての外乱力を推定し(S16)、図6の処理を終了する。 Thereafter, the CPU 61 acquires current information from the current detection unit 237 via the servo circuit 230 or directly (S14), and multiplies the current indicated by the acquired current information by the torque constant calculated in step S12. The torque of the motor 23a is calculated (S15: corresponding to the torque calculation section 612). Then, the CPU 61 subtracts the torque estimated in step S13 from the calculated torque to estimate the disturbance force as the disturbance torque (S16), and ends the processing of FIG.

次に、図7の処理が起動された場合、CPU61は、例えば上述したようにエンコーダ23bからの相異なる位相のパルス信号に基づいてモータ23aの回転方向を検出する(S21:方向検出器614に相当)。ここで方向検出器614が検出する回転方向に応じて、図5に示す出力部617がプラス又はマイナスの摩擦力を出力する。次いで、CPU61は、例えば位置情報の取得間隔の逆数に比例する数値としてモータ23aの回転速度を算出する(S22:微分器615に相当)。次いで、CPU61は、モータ23aの回転速度の時間変化率に比例する数値としてモータ23aの加速度を算出し(S23:微分器616に相当)、図7の処理を終了する。 Next, when the process of FIG. 7 is started, the CPU 61 detects the rotation direction of the motor 23a based on the pulse signals of different phases from the encoder 23b, for example, as described above (S21: the direction detector 614 equivalent). Depending on the direction of rotation detected by the direction detector 614, the output section 617 shown in FIG. 5 outputs a positive or negative frictional force. Next, the CPU 61 calculates the rotational speed of the motor 23a as a numerical value proportional to, for example, the reciprocal of the positional information acquisition interval (S22: corresponding to the differentiator 615). Next, the CPU 61 calculates the acceleration of the motor 23a as a numerical value proportional to the time rate of change of the rotational speed of the motor 23a (S23: corresponding to the differentiator 616), and ends the processing of FIG.

なお、本実施の形態1にあっては、トルク定数がモータ23aの回転速度に依存しないことを前提として説明したが、いわゆる弱め磁界制御を行う場合は、弱め磁界制御を行わない場合と比較してトルク定数が小さくなる。この場合は、予めモータ23aの温度及び電流を変えて実測した結果に基づいて、式(1)から(3)の何れかの多項式又は式(4)の区分多項式を複数定めてもよい。定数算出部611は、検出したモータ23aの電流に対応する多項式又は区分多項式を用いてトルク定数を算出すればよい。 In the first embodiment, the torque constant is assumed to be independent of the rotation speed of the motor 23a. torque constant becomes smaller. In this case, a plurality of polynomials of any one of the equations (1) to (3) or the piecewise polynomial of the equation (4) may be determined based on the results of actual measurements while changing the temperature and current of the motor 23a in advance. The constant calculator 611 may calculate the torque constant using a polynomial or piecewise polynomial corresponding to the detected current of the motor 23a.

トルク定数は、モータ23aが力行の状態にあるか、回生の状態にあるかによっても異なる。回生を考慮する場合は、予めモータ23aの温度及び力行/回生の状態を変えて実測した結果に基づいて、式(1)から(3)の何れかの多項式又は式(4)の区分多項式を複数定めてもよい。定数算出部611は、モータ23aの力行及び回生の状態を検知し、検知した状態に対応する多項式又は区分多項式を用いてトルク定数を算出すればよい。 The torque constant also differs depending on whether the motor 23a is in a power running state or in a regenerative state. When considering regeneration, any polynomial of equations (1) to (3) or a piecewise polynomial of equation (4) is calculated based on the results of actual measurements while changing the temperature and powering/regeneration state of the motor 23a in advance. You can define more than one. The constant calculator 611 may detect the power running and regeneration states of the motor 23a and calculate the torque constant using a polynomial or piecewise polynomial corresponding to the detected state.

以上のように本実施の形態1によれば、モータ23aの温度に基づいてモータ23aのトルク定数を算出し、算出したトルク定数をモータ23aの電流に乗じてモータ23aのトルクを算出し、モータ23aの位置及びモータ23aが駆動するX軸方向移動機構20に係る定数に基づいてモータ23aのトルクを推定し、算出したモータ23aのトルクから推定したモータ23aのトルクを減じてモータ23aに作用する外乱トルクとしての外乱力を推定する。これにより、モータ23aの温度に応じてトルク定数を補正するため、外乱に抗するトルクを含めた実際のモータ23aのトルクが精度よく算出でき、外乱の算出精度が向上する。従って、推定する外乱の誤差を低減することが可能となる。 As described above, according to the first embodiment, the torque constant of the motor 23a is calculated based on the temperature of the motor 23a, and the torque of the motor 23a is calculated by multiplying the current of the motor 23a by the calculated torque constant. The torque of the motor 23a is estimated based on the position of the motor 23a and the constant related to the X-axis direction moving mechanism 20 driven by the motor 23a, and the estimated torque of the motor 23a is subtracted from the calculated torque of the motor 23a to act on the motor 23a. A disturbance force is estimated as a disturbance torque. As a result, since the torque constant is corrected according to the temperature of the motor 23a, the actual torque of the motor 23a including the torque against the disturbance can be calculated with high accuracy, and the calculation accuracy of the disturbance is improved. Therefore, it is possible to reduce the error of the estimated disturbance.

また、実施の形態1によれば、発令された位置指令及び速度指令の何れか又は両方に応じてモータ23aに流れる電流を制御する。従って、モータ23aのトルクを生み出すモータの電流を指令内容に応じてフィードバック制御するため、モータ23aの位置及び/又は速度が、指令された目標に収束する。 Further, according to the first embodiment, the current flowing through the motor 23a is controlled according to either or both of the issued position command and speed command. Therefore, since the motor current that generates the torque of the motor 23a is feedback-controlled according to the contents of the command, the position and/or speed of the motor 23a converges to the commanded target.

更に、実施の形態1によれば、モータ23aの位置を1回微分した回転速度に負荷機械に係る慣性モーメントを乗じて算出した慣性トルクと、回転速度を更に1回微分した加速度にX軸方向移動機構20に係る粘性抵抗を乗じて算出した粘性トルクと、X軸方向移動機構20の移動方向に応じて符号がプラス/マイナスに変化するクーロン摩擦力とを加算してトルクを推定する。従って、モータ23aを含めたX軸方向移動機構20の慣性モーメント、粘性抵抗及びクーロン摩擦を組み合わせてモータ23aのトルクを推定するため、外乱を除いたモータ23aのトルクが精度良く推定できる。 Furthermore, according to the first embodiment, the inertia torque calculated by multiplying the rotational speed obtained by differentiating the position of the motor 23a once by the moment of inertia of the load machine, and the acceleration obtained by further differentiating the rotational speed once, The torque is estimated by adding the viscous torque calculated by multiplying the viscous resistance of the movement mechanism 20 and the Coulomb friction force whose sign changes plus/minus according to the movement direction of the X-axis direction movement mechanism 20 . Therefore, since the torque of the motor 23a is estimated by combining the moment of inertia, viscous resistance, and Coulomb friction of the X-axis direction moving mechanism 20 including the motor 23a, the torque of the motor 23a can be accurately estimated without disturbance.

更に、実施の形態1によれば、モータ23aの温度及びトルクの関係を予め実測してn次の多項式又は区分多項式を立て、この式に検出したモータ23aの温度を適用してトルク定数を近似する。従って、実測結果が示す曲線の曲率、変曲点及び実測点数を考慮して、全区間又は個々の区間に適用する多項式を定めることができ、多項式の次数又は区分多項式の区間数に応じてトルク定数の近似精度が向上する。 Furthermore, according to the first embodiment, the relationship between the temperature and the torque of the motor 23a is actually measured in advance to form an n-th order polynomial or piecewise polynomial, and the detected temperature of the motor 23a is applied to this equation to approximate the torque constant. do. Therefore, considering the curvature of the curve indicated by the actual measurement results, the inflection point, and the number of actual measurement points, it is possible to determine the polynomial applied to all sections or individual sections. Improves constant approximation accuracy.

更に、実施の形態1によれば、外乱を高精度に推定する外乱オブザーバ610を、X軸方向移動機構20を制御する制御装置60に適用することができる。 Furthermore, according to Embodiment 1, the disturbance observer 610 that estimates the disturbance with high accuracy can be applied to the control device 60 that controls the X-axis direction moving mechanism 20 .

更に、実施の形態1によれば、制御装置60の制御部600がサーボ回路230に例えば位置指令を発令し、位置指令を受けたサーボ回路230がX軸方向移動機構20を駆動するモータ23aをフィードバック制御する。制御装置60の外乱オブザーバ610は、エンコーダ23b及び電流検出部237夫々からサーボ回路230にフィードバックされるモータ23aの位置情報及び電流情報と、温度検出部23cからの温度情報とを取得して外乱を推定する。従って、X軸方向移動機構20を介してモータ23aに作用する外乱を高精度に推定できる。 Furthermore, according to Embodiment 1, the control unit 600 of the control device 60 issues, for example, a position command to the servo circuit 230, and the servo circuit 230 that receives the position command activates the motor 23a that drives the X-axis direction moving mechanism 20. feedback control. A disturbance observer 610 of the control device 60 acquires position information and current information of the motor 23a fed back to the servo circuit 230 from the encoder 23b and the current detection unit 237, and temperature information from the temperature detection unit 23c, and detects the disturbance. presume. Therefore, the disturbance acting on the motor 23a via the X-axis direction moving mechanism 20 can be estimated with high accuracy.

(実施の形態2)
実施の形態1は、定数算出部611が温度の多項式又は区分多項式を用いてトルク定数を算出する形態であるのに対し、実施の形態2は、定数算出部611がテーブルに記憶した内容を読み出してトルク定数を算出する形態である。ここでは、温度を含めたより多くの変数とトルク定数との関係をテーブルに記憶する。なお、本実施の形態2及び後述する実施の形態3では、X軸モータ23が有するモータ23aについて説明するが、Y軸モータ13及びZ軸モータ33夫々が有する他のモータについても同様である。
(Embodiment 2)
In the first embodiment, the constant calculator 611 calculates the torque constant using a temperature polynomial or piecewise polynomial. It is a form in which the torque constant is calculated by Here, the relationship between more variables including temperature and the torque constant is stored in a table. Although the motor 23a of the X-axis motor 23 will be described in the second embodiment and a third embodiment to be described later, other motors of the Y-axis motor 13 and the Z-axis motor 33 are similarly described.

図8は、モータ23aの電流、温度及び回転速度と、トルク定数との対応関係を記憶するテーブル641,642,643の内容を示す図表である。これらのテーブルは記憶装置64に記録してあるが、ROM62に記録してもよい。テーブル641,642,643は、モータ23aの回転速度が夫々0rpm,5000rpm,10000rpmの場合について、モータ23aの電流及び温度と、トルク定数との関係を記憶してある。テーブル641,642,643のうち、基本となるのは、モータ23aの回転速度が0rpmの場合に対応するテーブル641である。また、各テーブルのうち、基本となるのは、温度が0℃で電流が50Aの場合であり、この場合よりも温度が高くなるか、又は電流が大きくなるほどトルク定数が小さくなる。 FIG. 8 is a diagram showing contents of tables 641, 642, and 643 that store correspondence relationships between the current, temperature, and rotational speed of the motor 23a and the torque constants. These tables are recorded in the storage device 64, but may be recorded in the ROM 62 as well. Tables 641, 642 and 643 store the relationship between the current and temperature of the motor 23a and the torque constant when the rotation speed of the motor 23a is 0 rpm, 5000 rpm and 10000 rpm, respectively. Of the tables 641, 642, and 643, the basic one is the table 641 corresponding to the case where the rotation speed of the motor 23a is 0 rpm. In each table, the base case is the case where the temperature is 0° C. and the current is 50 A, and the higher the temperature or the higher the current, the smaller the torque constant.

例えば、テーブル641で電流が50Aの場合、温度が0℃,10℃,20℃,30℃夫々のときのトルク定数は、1,0.99,0.98,0.97と記憶してある。これは、ACサーボモータで一般的に用いるネオジム磁石の磁束密度が、1℃の温度上昇に対して0.1%程度低下することに対応している。テーブル641は、温度が同一の場合、電流が50Aよりも大きくなるとモータのトルク定数が低下することを示している。このような傾向は、テーブル642及び643の場合も同様である。一方、テーブル642においては、モータ23aの回転速度が大きくなったため弱め界磁制御により10Aの電流が流れている状態を想定しており、テーブル641に対してトルク定数が低下している。テーブル643においては、弱め界磁電流が20A流れる場合を想定しており、トルク定数はさらに低下する。 For example, when the current is 50 A in the table 641, the torque constants at temperatures of 0° C., 10° C., 20° C. and 30° C. are stored as 1, 0.99, 0.98 and 0.97. . This corresponds to the fact that the magnetic flux density of neodymium magnets generally used in AC servomotors decreases by about 0.1% with respect to a temperature rise of 1°C. Table 641 shows that for the same temperature, the torque constant of the motor decreases when the current is greater than 50A. Such tendency is the same for tables 642 and 643 as well. On the other hand, in table 642, it is assumed that a current of 10 A is flowing due to field-weakening control because the rotational speed of motor 23a has increased, and the torque constant is lower than that in table 641. Table 643 assumes a field-weakening current of 20 A, which further reduces the torque constant.

次に、図8に示すテーブルに記憶した内容に基づいてトルク定数を算出する方法について、フローチャートを用いて説明する。図9は、実施の形態2の外乱オブザーバ610で外乱力を推定するCPU61の処理手順を示すフローチャートである。図9に示す処理は、一定の周期(例えば1ms毎)で起動される。図中の回転速度及び加速度は、実施の形態1の図7に示す処理でCPU61が算出したモータ23aの回転速度及び加速度である。 Next, a method for calculating the torque constant based on the contents stored in the table shown in FIG. 8 will be described using a flowchart. FIG. 9 is a flow chart showing the processing procedure of the CPU 61 for estimating the disturbance force with the disturbance observer 610 of the second embodiment. The processing shown in FIG. 9 is activated at regular intervals (for example, every 1 ms). The rotation speed and acceleration in the figure are the rotation speed and acceleration of the motor 23a calculated by the CPU 61 in the processing shown in FIG. 7 of the first embodiment.

図9の処理が起動された場合、CPU61は、電流検出部237からの電流情報をサーボ回路230を介して、又は直接的に取得し(S31)、更にモータ23aの温度情報を温度検出部23cから取得する(S32)。次いで、CPU61は、取得した電流情報が示す電流、取得した温度情報が示す温度及びモータ23aの回転速度に対応してテーブル641,642,643の何れかに記憶した内容を読み出す(S33)。具体的に、CPU61は、算出した回転速度に近い2つのテーブルを選択し、夫々のテーブルから、取得した電流及び温度に近い4つのセルの内容を読み出す。より具体的に、例えば回転速度が500rpm、取得した電流が35A、取得した温度が5℃の場合、CPU61は、テーブル641から1,0.99,1,0.99を読み出し、テーブル642から0.67,0.66,0.6,0.59を読み出す。 When the process of FIG. 9 is started, the CPU 61 acquires the current information from the current detection unit 237 via the servo circuit 230 or directly (S31), and further acquires the temperature information of the motor 23a from the temperature detection unit 23c. (S32). Next, the CPU 61 reads the contents stored in any one of the tables 641, 642, and 643 corresponding to the current indicated by the acquired current information, the temperature indicated by the acquired temperature information, and the rotational speed of the motor 23a (S33). Specifically, the CPU 61 selects two tables that are close to the calculated rotation speed, and reads the contents of four cells that are close to the acquired current and temperature from each table. More specifically, for example, when the rotation speed is 500 rpm, the acquired current is 35 A, and the acquired temperature is 5° C., the CPU 61 reads 1, 0.99, 1, 0.99 from the table 641 and reads 0 from the table 642. .67, 0.66, 0.6, 0.59.

その後、CPU61は、ステップS33で読み出した8つのトルク定数に基づいて、例えば直線補間により1つのトルク定数を算出する(S34:定数算出部611に相当)。次いで、CPU61は、モータ23aの回転方向、回転速度及び加速度に基づき、前述のトルク推定部613によってモータ23aのトルクを推定する(S35:トルク推定部613に相当)。CPU61は、更に、ステップS31で取得した電流情報が示す電流に、ステップS34で算出したトルク定数を乗じてモータ23aのトルクを算出する(S36:トルク算出部612に相当)。そして、CPU61は、算出したトルクから、ステップS35で推定したトルクを減じて外乱トルクとしての外乱力を推定し(S37)、図9の処理を終了する。 After that, the CPU 61 calculates one torque constant by linear interpolation, for example, based on the eight torque constants read out in step S33 (S34: corresponding to the constant calculator 611). Next, the CPU 61 estimates the torque of the motor 23a by means of the aforementioned torque estimating section 613 based on the rotational direction, rotational speed and acceleration of the motor 23a (S35: corresponding to the torque estimating section 613). The CPU 61 further multiplies the current indicated by the current information obtained in step S31 by the torque constant calculated in step S34 to calculate the torque of the motor 23a (S36: corresponding to the torque calculation unit 612). Then, the CPU 61 subtracts the torque estimated in step S35 from the calculated torque to estimate the disturbance force as the disturbance torque (S37), and ends the processing of FIG.

なお、トルク定数は、モータ23aが力行の状態にあるか、回生の状態にあるかによっても異なる。これを考慮する場合は、力行の状態と回生の状態とで図8に示すテーブルを別々に準備すればよい。ここで、力行とはモータ23aが外部に対して仕事をしている状態を表し、具体的にはモータ23aの回転速度とトルクの符号が同じ場合である。ここで、回生とは、モータ23aが外部から仕事をされている状態を表し、具体的にはモータ23aの回転速度とトルクの符号が異なる場合である。 The torque constant also differs depending on whether the motor 23a is in the power running state or in the regenerative state. If this is taken into account, the tables shown in FIG. 8 should be prepared separately for the power running state and the regenerative state. Here, "powering" means a state in which the motor 23a is doing work to the outside, and specifically, it is a case where the rotational speed and the torque of the motor 23a have the same sign. Here, regeneration represents a state in which the motor 23a is working from the outside, and specifically, it is a case where the sign of the rotation speed and the torque of the motor 23a are different.

本実施の形態2にあっては、モータ23aの回転速度によって細分化したテーブル641,642,643を用いたが、これに限定されるものではなく、テーブルの記述方法を変更して1つのテーブルにしてもよい。また、モータ23aの回転速度の違いを考慮しない場合は、テーブル641のみを準備してトルク定数を算出すればよい。 In the second embodiment, the tables 641, 642, and 643 subdivided according to the rotational speed of the motor 23a are used, but the present invention is not limited to this. can be If the difference in rotational speed of the motor 23a is not taken into consideration, only the table 641 should be prepared to calculate the torque constant.

以上のように本実施の形態2によれば、モータ23aの電流及び温度と、モータ23aのトルク定数との対応関係を予め実測してテーブル641に記憶しておき、モータ23aの電流及びモータ23aの温度に対応してテーブル641に記憶してある内容を、必要に応じて補間してトルク定数を近似する。従って、トルク定数の算出精度が向上すると共に、算出負荷を低減することができる。 As described above, according to the second embodiment, the correspondence relationship between the current and temperature of the motor 23a and the torque constant of the motor 23a is actually measured in advance and stored in the table 641. The contents stored in the table 641 corresponding to the temperature are interpolated as necessary to approximate the torque constant. Therefore, it is possible to improve the calculation accuracy of the torque constant and reduce the calculation load.

また、実施の形態2によれば、モータ23aの電流、温度及び回転速度と、モータ23aのトルク定数との対応関係を予め実測してテーブル641,642,643に記憶しておき、モータ23aの電流、温度及び回転速度に対応してテーブル641,642,643に記憶してある内容を読み出し、必要に応じて補間してトルク定数を近似する。従って、トルク定数の算出精度がより高くなると共に、算出負荷を低減することができる。 Further, according to Embodiment 2, the correspondence relationship between the current, temperature, and rotation speed of the motor 23a and the torque constant of the motor 23a is actually measured in advance and stored in the tables 641, 642, and 643, and the The contents stored in the tables 641, 642 and 643 are read out corresponding to the current, temperature and rotational speed, and interpolated as necessary to approximate the torque constant. Therefore, the calculation accuracy of the torque constant is improved, and the calculation load can be reduced.

(実施の形態3)
実施の形態1は、定数算出部611が温度の多項式又は区分多項式を用いてトルク定数を算出する形態であり、実施の形態2は、定数算出部611がテーブルに記憶してある内容を読み出してトルク定数を算出する形態であった。これに対し、実施の形態3は、定数算出部611が、温度の多項式若しくは区分多項式を用いて算出したトルク定数をテーブルに記憶してある内容に基づいて補正するか、又はテーブルに記憶してある内容を読み出して算出したトルク定数を温度の多項式若しくは区分多項式を用いて補正する形態である。ここで用いるテーブルは、実施の形態2で用いたテーブル641,642,643の一部である。
(Embodiment 3)
In the first embodiment, the constant calculation unit 611 calculates the torque constant using a temperature polynomial or piecewise polynomial. In the second embodiment, the constant calculation unit 611 reads the contents stored in the table. It was in the form of calculating the torque constant. In contrast, in the third embodiment, the constant calculation unit 611 corrects the torque constant calculated using the temperature polynomial or piecewise polynomial based on the contents stored in the table, or stores the torque constant in the table. This is a form in which a torque constant calculated by reading certain content is corrected using a temperature polynomial or piecewise polynomial. The table used here is part of the tables 641, 642, and 643 used in the second embodiment.

図10は、モータ23aの電流及び回転速度と、トルク定数との対応関係を記憶するテーブル644の内容を示す図表である。このテーブルは記憶装置64に記録してあるが、ROM62に記録してもよい。テーブル644には、モータ23aの電流が100A,75A,50A,25Aの場合と、モータ23aの回転速度が0rpm,5000rpm,10000rpmの場合との組み合わせによる12の場合についてトルク定数を記憶してある。これらのトルク定数は、テーブル641,642,643に記憶してあるトルク定数のうち、温度が0℃の場合のトルク定数と同一である。例えば、電流が75Aで回転速度が5000rpmの場合のトルク定数(0.81)は、回転速度が5000rpmの場合に対応するテーブル642に記憶してあるトルク定数のうち、電流が75Aで温度が0℃の場合のトルク定数と同一である。 FIG. 10 is a diagram showing the contents of a table 644 that stores the correspondence between the current and rotational speed of the motor 23a and the torque constant. Although this table is recorded in the storage device 64, it may be recorded in the ROM 62 as well. The table 644 stores torque constants for 12 combinations of currents of the motor 23a of 100A, 75A, 50A and 25A and rotation speeds of the motor 23a of 0 rpm, 5000 rpm and 10000 rpm. These torque constants are the same as the torque constants stored in the tables 641, 642, 643 when the temperature is 0.degree. For example, the torque constant (0.81) when the current is 75 A and the rotation speed is 5000 rpm is the torque constant stored in the table 642 corresponding to the rotation speed of 5000 rpm when the current is 75 A and the temperature is 0. It is the same as the torque constant for °C.

本実施の形態3では、モータ23aの温度とトルク定数との関係を式(1)から(4)の何れかに表してあり、モータ23aの電流及び回転速度とトルク定数との関係をテーブル644に表してある。先に式(1)から(4)の何れかを用いて仮のトルク定数Aを算出した場合は、テーブル644を用いてトルク定数Aを補正し、目的のトルク定数を算出する。一方、先にテーブル644を用いて仮のトルク定数Aを算出した場合は、式(1)から(4)の何れかを用いてトルク定数Aを補正し、目的のトルク定数を算出する。仮のトルク定数Aを算出するのに、先に式(1)から(4)の何れかを用いるか、又はテーブル644を用いるかは、設定によって変更してもよいし、固定的に決めてあってもよい。 In the third embodiment, the relationship between the temperature of the motor 23a and the torque constant is represented by one of the equations (1) to (4), and the relationship between the current and rotation speed of the motor 23a and the torque constant is shown in a table 644. is represented in If the provisional torque constant A is calculated using any one of the equations (1) to (4), the torque constant A is corrected using the table 644 to calculate the target torque constant. On the other hand, when the provisional torque constant A is calculated using the table 644 in advance, the torque constant A is corrected using one of the equations (1) to (4) to calculate the target torque constant. Whether one of the formulas (1) to (4) is first used or the table 644 is used to calculate the provisional torque constant A may be changed according to settings or fixedly determined. There may be.

以下では、式(1)から(4)の何れかとテーブル644とを用いてトルク定数を算出する方法について、フローチャートを用いて説明する。図11は、実施の形態3の外乱オブザーバ610でトルク定数を算出するCPU61の処理手順を示すフローチャートである。図11に示す処理は、外乱力を推定する処理の一部としてCPU61が実行する。図中の回転速度は、実施の形態1の図7に示す処理でCPU61が算出したモータ23aの回転速度である。 A method of calculating the torque constant using any of the equations (1) to (4) and the table 644 will be described below using a flowchart. FIG. 11 is a flow chart showing the processing procedure of the CPU 61 for calculating the torque constant with the disturbance observer 610 of the third embodiment. The process shown in FIG. 11 is executed by the CPU 61 as part of the process of estimating the disturbance force. The rotation speed in the figure is the rotation speed of the motor 23a calculated by the CPU 61 in the process shown in FIG. 7 of the first embodiment.

図11の処理が起動された場合、CPU61は、モータ23aの温度情報を温度検出部23cから取得し(S41)、更に電流検出部237からの電流情報を取得する(S42)。ここで、CPU61は、先に式(1)から(3)の何れかの多項式又は式(4)の区分多項式を用いるか否かを判定する(S43)。上述したように、この判定を省略して次のステップS44又はS51の何れかに固定的に処理を移すようにしてもよい。 When the process of FIG. 11 is started, the CPU 61 acquires temperature information of the motor 23a from the temperature detector 23c (S41), and further acquires current information from the current detector 237 (S42). Here, the CPU 61 first determines whether or not to use any of the polynomials of equations (1) to (3) or the piecewise polynomial of equation (4) (S43). As described above, this determination may be omitted and the process may be fixedly moved to either step S44 or S51.

先に多項式又は区分多項式を用いる場合(S43:YES)、CPU61は、取得した温度情報が示す温度Tを式(1)から(3)の何れかの多項式又は式(4)の区分多項式に適用して、仮のトルク定数Aを算出する(S44)。次いで、CPU61は、取得した電流情報が示す電流及びモータ23aの回転速度に対応してテーブル644に記憶した内容を読み出し(S45)、直線補間して仮のトルク定数Bを算出する(S46)。 If the polynomial or piecewise polynomial is used first (S43: YES), the CPU 61 applies the temperature T indicated by the acquired temperature information to any of the polynomials of equations (1) to (3) or the piecewise polynomial of equation (4). Then, a provisional torque constant A is calculated (S44). Next, the CPU 61 reads out the contents stored in the table 644 corresponding to the current indicated by the acquired current information and the rotation speed of the motor 23a (S45), and calculates a temporary torque constant B by linear interpolation (S46).

CPU61は、更に、電流が4Aで回転速度が0rpmの場合の仮のトルク定数Cをテーブル644から読み出し(S47)、トルク定数Cに対するトルク定数Bの比率Dを算出する(S48)。そして、CPU61は、仮のトルク定数Aに比率Dを乗じて目的のトルク定数を算出し(S49:定数算出部611に相当)、図11の処理を終了する。 Further, the CPU 61 reads the provisional torque constant C from the table 644 when the current is 4 A and the rotation speed is 0 rpm (S47), and calculates the ratio D of the torque constant B to the torque constant C (S48). Then, the CPU 61 multiplies the provisional torque constant A by the ratio D to calculate the target torque constant (S49: corresponding to the constant calculation unit 611), and terminates the processing of FIG.

一方、ステップS43で、先に多項式又は区分多項式を用いない場合(S43:NO)、CPU61は、取得した電流情報が示す電流及びモータ23aの回転速度に対応してテーブル644に記憶した内容を読み出し(S51)、直線補間して仮のトルク定数Aを算出する(S52)。次いで、CPU61は、取得した温度情報が示す温度Tを式(1)から(3)の何れかの多項式又は式(4)の区分多項式に適用して、仮のトルク定数Bを算出する(S53)。CPU61は、更に、上記の多項式又は区分多項式を用いて温度Tが0℃の場合の仮のトルク定数Cを算出し(S54)、目的のトルク定数を算出するためにステップS48に処理を移す。 On the other hand, in step S43, if the polynomial or piecewise polynomial is not used first (S43: NO), the CPU 61 reads out the contents stored in the table 644 corresponding to the current indicated by the acquired current information and the rotational speed of the motor 23a. (S51), a temporary torque constant A is calculated by linear interpolation (S52). Next, the CPU 61 applies the temperature T indicated by the acquired temperature information to any of the polynomials of equations (1) to (3) or the piecewise polynomial of equation (4) to calculate a provisional torque constant B (S53 ). The CPU 61 further calculates a provisional torque constant C when the temperature T is 0° C. using the above polynomial or piecewise polynomial (S54), and shifts the process to step S48 to calculate a target torque constant.

なお、本実施の形態3にあっては、テーブル641,642,643に記憶してあるトルク定数のうち、温度が0℃の場合のトルク定数をテーブル644に記憶したが、これに限定されるものではない。温度が10℃,20℃,30℃の何れの場合のトルク定数をテーブル644に記憶しても同様の結果が得られる。 In the third embodiment, among the torque constants stored in the tables 641, 642, and 643, the torque constant when the temperature is 0° C. is stored in the table 644, but it is limited to this. not a thing Similar results are obtained when the torque constants are stored in the table 644 for any of the temperatures of 10°C, 20°C, and 30°C.

以上のように本実施の形態3によれば、上述の多項式又は区分多項式を予め定めておく他に、モータ23aの電流及び回転速度と、モータ23aのトルク定数との対応関係を予め実測してテーブル644に記憶しておく。実行時にトルク定数を算出する場合は、モータ23aの電流及びモータの回転速度に対応してテーブル644に記憶してある内容に基づいて算出した仮のトルク定数Aを上述の多項式若しくは区分多項式に基づいて補正するか、又は上述の多項式若しくは区分多項式に検出した温度を適用して算出した仮のトルク定数Aをテーブル644の記憶内容に基づいて補正する。従って、トルク定数の算出精度がより高くなると共に、算出負荷を低減することができる。 As described above, according to the third embodiment, in addition to predetermining the above-described polynomial or piecewise polynomial, the correspondence between the current and rotation speed of the motor 23a and the torque constant of the motor 23a is actually measured in advance. It is stored in table 644 . When the torque constant is calculated during execution, the temporary torque constant A calculated based on the contents stored in the table 644 corresponding to the current of the motor 23a and the rotation speed of the motor is calculated based on the above polynomial or piecewise polynomial. Alternatively, the provisional torque constant A calculated by applying the detected temperature to the above polynomial or piecewise polynomial is corrected based on the contents stored in the table 644 . Therefore, the calculation accuracy of the torque constant is improved, and the calculation load can be reduced.

(シミュレーション)
以下では、モータ23aの各部の温度変化をモデル化してシミュレーションした結果について説明する。図12は、モータ23aの温度モデルを模式的に示す説明図である。図12の温度モデルにて、巻線とモータ内空気の間、巻線と外気の間、モータ内空気とマグネットの間、及びモータ内空気と外気の間で熱の移動が起きるものとする。巻線に供給する熱量Qc[J]は、モータ電流Im[A]と巻線抵抗Rc[Ω]より、以下の式(5)で表せる。
(simulation)
Below, the result of having modeled and simulated the temperature change of each part of the motor 23a is demonstrated. FIG. 12 is an explanatory diagram schematically showing a temperature model of the motor 23a. In the temperature model of FIG. 12, heat transfer occurs between the windings and the air inside the motor, between the windings and the outside air, between the air inside the motor and the magnet, and between the air inside the motor and the outside air. The amount of heat Qc [J] supplied to the winding can be expressed by the following equation (5) from the motor current Im [A] and the winding resistance Rc [Ω].

Qc=Rc×Im2 ・・・・・・・・・・・・・・・・・・・・・・・・・・(5) Qc=Rc×Im 2 (5)

巻線からモータ内空気へ移動する熱量Qcaは、巻線温度Tc[℃]、モータ内空気温度Ta[℃]及び熱抵抗Trca[sK/J]より、以下の式(6)で表せる。また、巻線から外気へ移動する熱量Qcatは、巻線温度Tc、外気温度Tat及び熱抵抗Trcatより、以下の式(7)で表せる。 The amount of heat Qca transferred from the windings to the air in the motor can be expressed by the following equation (6) from the winding temperature Tc [°C], the air temperature Ta [°C] in the motor, and the thermal resistance Trca [sK/J]. Also, the amount of heat Qcat transferred from the windings to the outside air can be expressed by the following equation (7) from the winding temperature Tc, the outside air temperature Tat, and the thermal resistance Trcat.

Qca=(Tc-Ta)/Trca・・・・・・・・・・・・・・・・・・・(6)
Qcat=(Tc-Tat)/Trcat・・・・・・・・・・・・・・・・(7)
Qca=(Tc−Ta)/Trca (6)
Qcat=(Tc−Tat)/Trcat (7)

モータ内空気からマグネットに移動する熱量Qamは、モータ内空気温度Ta、マグネット温度Tm及び熱抵抗Tramより、以下の式(8)で表せる。また、モータ内空気から外気に移動する熱量Qaatは、モータ内空気温度Ta、外気温度Tat及び熱抵抗Traatより、以下の式(9)で表せる。 The amount of heat Qam transferred from the air in the motor to the magnet can be expressed by the following equation (8) from the air temperature Ta in the motor, the magnet temperature Tm, and the thermal resistance Tram. Also, the amount of heat Qaat transferred from the air inside the motor to the outside air can be expressed by the following equation (9) from the air temperature Ta inside the motor, the outside air temperature Tat, and the thermal resistance Traat.

Qam=(Ta/Tm)/Tram・・・・・・・・・・・・・・・・・・・(8)
Qaat=(Ta-Tat)/Traat・・・・・・・・・・・・・・・・(9)
Qam=(Ta/Tm)/Tram (8)
Qaat=(Ta−Tat)/Traat (9)

巻線の熱容量をHc[J/K]、モータ内空気の熱容量をHa、マグネットの熱容量をHmとすると、巻線、モータ内空気、マグネット夫々の1秒当たりの温度変化ΔTc、ΔTa、ΔTmは、以下の式(10)、(11)、(12)で表せる。 Assuming that the heat capacity of the winding is Hc [J/K], the heat capacity of the air inside the motor is Ha, and the heat capacity of the magnet is Hm, temperature changes ΔTc, ΔTa, and ΔTm per second of the winding, the air inside the motor, and the magnet are given by , can be expressed by the following equations (10), (11) and (12).

ΔTc=(Qc-Qca-Qcat)/Hc・・・・・・・・・・・・・・・(10)
ΔTa=(Qca-Qam-Qaat)/Ha・・・・・・・・・・・・・・(11)
ΔTm=(Qam)/Hm・・・・・・・・・・・・・・・・・・・・・・・(12)
ΔTc=(Qc-Qca-Qcat)/Hc (10)
ΔTa=(Qca−Qam−Qaat)/Ha (11)
ΔTm=(Qam)/Hm (12)

以上のモデル化による式(10)から(12)を用いて、以下の条件でシミュレーションを行った。 A simulation was performed under the following conditions using equations (10) to (12) based on the above modeling.

Tc,Ta,Tm,Tatの初期値:20
Rc=0.1
Trca=Tram=0.05
Traat=Trcat=0.1
Hc=2000、Ha=100、Hm=2000
Initial values of Tc, Ta, Tm, Tat: 20
Rc=0.1
Trca = Tram = 0.05
Traat=Trcat=0.1
Hc=2000, Ha=100, Hm=2000

図13は、モータ23aにおける各部の温度変化のシミュレーション結果を示すグラフである。図の横軸は時間(秒)を表し、縦軸は温度(℃)を表す。図中の実線、破線及び一点鎖線の夫々は、マグネット温度Tm、巻線温度Tc及びモータ内空気温度Taを示すものである。なお、モータ電流Imは、時間0から1500秒間だけ100[A]とし、その後0とした。 FIG. 13 is a graph showing simulation results of temperature changes in each part of the motor 23a. The horizontal axis of the figure represents time (seconds), and the vertical axis represents temperature (°C). A solid line, a broken line, and a one-dot chain line in the figure indicate the magnet temperature Tm, the winding temperature Tc, and the motor internal air temperature Ta, respectively. Note that the motor current Im was set to 100 [A] from time 0 to 1500 seconds, and then set to 0.

以上のシミュレーション結果によれば、モータ23aの巻線温度Tcの上昇に少し遅れてモータ内空気温度Taが上昇し、さらに少し遅れてマグネット温度Tmが上昇することが分かる。また、巻線温度Tcは1500秒経過後に80℃付近に漸近し、モータ内空気温度Taはそれよりも低い60℃付近に漸近する。マグネット温度Tmはモータ内空気との間でのみ熱の移動を行うため、モータ内空気温度Taと同一の温度に漸近する。本シミュレーションと同じ演算をリアルタイムに実行することで、モータ電流Imと外気温度Tatより、マグネット温度Tmを求めることができる。外気温度Tatは、温度センサによって直接測定するほかに、たとえばモータ23aのエンコーダ23bの温度センサや制御盤内の温度センサの値を外気温の代替値として用いてもよいし、これらから近似値を算出して外気温として用いてもよい。 According to the above simulation results, it can be seen that the motor internal air temperature Ta rises with a slight delay from the rise in the winding temperature Tc of the motor 23a, and the magnet temperature Tm rises with a slight delay. In addition, the winding temperature Tc asymptotically approaches 80° C. after 1500 seconds, and the motor internal air temperature Ta asymptotically approaches 60° C., which is lower than that. Since the magnet temperature Tm transfers heat only to the air inside the motor, it asymptotically approaches the same temperature as the air temperature Ta inside the motor. By executing the same calculation as this simulation in real time, the magnet temperature Tm can be obtained from the motor current Im and the outside air temperature Tat. The outside air temperature Tat may be directly measured by a temperature sensor, for example, the value of the temperature sensor of the encoder 23b of the motor 23a or the temperature sensor in the control panel may be used as an alternative value of the outside air temperature, or an approximate value may be obtained from these. It may be calculated and used as the outside air temperature.

今回開示された実施形態は、全ての点で例示であって、制限的なものではないと考えられるべきである。本発明の範囲は、上述した意味ではなく、特許請求の範囲によって示され、特許請求の範囲と均等の意味及び範囲内での全ての変更が含まれることが意図される。また、実施形態で記載されている技術的特徴は、お互いに組み合わせることが可能である。 The embodiments disclosed this time should be considered as examples in all respects and not restrictive. The scope of the present invention is indicated by the scope of the claims rather than the meaning described above, and is intended to include all modifications within the scope and meaning equivalent to the scope of the claims. Also, the technical features described in the embodiments can be combined with each other.

10 Y軸方向移動機構
13 Y軸モータ
20 X軸方向移動機構
23 X軸モータ
23a モータ
23b エンコーダ
23c 温度検出部
230 サーボ回路
237 電流検出部
30 Z軸方向移動機構
33 Z軸モータ
51 主軸
6 主軸モータ
60 制御装置
600 制御部
610 外乱オブザーバ
611 定数算出部
612 トルク算出部
613 トルク推定部
61 CPU
62 ROM
63 RAM
64 記憶装置
641、642、643、644 テーブル
66 入出力インタフェース
67 受付部
68 Z軸センサ
69 主軸センサ
100 工作機械
10 Y-axis direction movement mechanism 13 Y-axis motor 20 X-axis direction movement mechanism 23 X-axis motor 23a Motor 23b Encoder 23c Temperature detector 230 Servo circuit 237 Current detector 30 Z-axis direction movement mechanism 33 Z-axis motor 51 Spindle 6 Spindle motor 60 control device 600 control section 610 disturbance observer 611 constant calculation section 612 torque calculation section 613 torque estimation section 61 CPU
62 ROMs
63 RAM
64 storage device 641, 642, 643, 644 table 66 input/output interface 67 reception unit 68 Z-axis sensor 69 spindle sensor 100 machine tool

Claims (7)

指令に基づいてモータをフィードバック制御するサーボ回路にフィードバックされる前記モータの位置情報及び電流情報を取得して前記モータに作用する外乱を推定する外乱オブザーバであって、
前記モータの温度情報を取得し、取得した温度情報が示す温度に基づいて前記モータのトルク定数を算出する定数算出部と、
該定数算出部が算出したトルク定数を、取得した電流情報が示す電流に乗じて前記モータのトルクを算出するトルク算出部と、
取得した位置情報が示す位置及び前記モータが駆動する負荷機械に係る定数に基づいて前記モータのトルクを推定するトルク推定部と
を備え、
前記トルク算出部が算出したトルクから前記トルク推定部が推定したトルクを減じて前記外乱を推定するようにしてあり、
前記定数算出部は、前記モータの温度及びトルクの関係に基づくn次(nは1以上の整数)の多項式を用いてトルク定数を近似し、
前記多項式は、前記モータの温度及び、力行又は回生の状態を変えて複数定められており、
前記定数算出部は、前記モータが力行の状態にあるか又は回生の状態にあるかを検知し、検知した状態に対応する多項式を用い、
前記多項式は、下記の3つの式のいずれか1つである
ことを特徴とする外乱オブザーバ。
Kt=a-bT
Kt=a-b(T-c)2
Kt=a0+a1T+a2T2 +・・・+anTn
但し、
Kt:トルク定数
T:前記温度情報が示す温度
a、b、c、a0、a1、a2、・・・an:一定の定数又は係数
A disturbance observer that acquires position information and current information of the motor, which are fed back to a servo circuit that feedback-controls the motor based on a command, and estimates disturbance acting on the motor,
a constant calculation unit that acquires temperature information of the motor and calculates a torque constant of the motor based on the temperature indicated by the acquired temperature information;
a torque calculation unit that calculates the torque of the motor by multiplying the current indicated by the acquired current information by the torque constant calculated by the constant calculation unit;
a torque estimating unit that estimates the torque of the motor based on the position indicated by the acquired position information and the constant related to the load machine driven by the motor,
The disturbance is estimated by subtracting the torque estimated by the torque estimation unit from the torque calculated by the torque calculation unit,
The constant calculation unit approximates a torque constant using an n-th order (n is an integer of 1 or more) polynomial based on the relationship between the temperature and torque of the motor,
A plurality of the polynomials are determined by changing the temperature of the motor and the state of power running or regeneration,
The constant calculation unit detects whether the motor is in a power running state or a regenerative state, uses a polynomial corresponding to the detected state,
A disturbance observer, wherein the polynomial is any one of the following three equations.
Kt = a-bT
Kt = a - b (T - c) 2
Kt=a0+a1T+ a2T2 +...+ anTn
however,
Kt: torque constant T: temperature indicated by the temperature information a, b, c, a0, a1, a2, . . . an: constant constant or coefficient
前記モータの電流及び回転速度と、前記モータのトルク定数との対応関係を記憶するテーブルを更に備え、
前記定数算出部は、取得した電流情報が示す電流及び取得した位置情報が示す位置を1回微分した回転速度に対応して前記テーブルに記憶してある内容と、前記多項式に基づいてトルク定数を算出する
ことを特徴とする請求項1に記載の外乱オブザーバ。
further comprising a table that stores a correspondence relationship between the current and rotation speed of the motor and the torque constant of the motor;
The constant calculation unit calculates a torque constant based on the content stored in the table corresponding to the rotation speed obtained by differentiating once the current indicated by the acquired current information and the position indicated by the acquired position information and the polynomial. 2. The disturbance observer of claim 1, wherein:
前記指令は、位置指令及び/又は速度指令であり、
前記サーボ回路は、前記モータに流れる電流を制御する
ことを特徴とする請求項1又は請求項2に記載の外乱オブザーバ。
the command is a position command and/or a speed command;
3. The disturbance observer according to claim 1, wherein the servo circuit controls current flowing through the motor.
前記トルク推定部は、取得した位置情報が示す位置を1回微分した回転速度及び前記負荷機械に係る粘性抵抗の積と、前記回転速度を更に1回微分した加速度及び前記負荷機械に係る慣性モーメントの積と、前記負荷機械の移動方向に応じたクーロン摩擦力との和に基づいてトルクを推定することを特徴とする請求項1から請求項3の何れか1項に記載の外乱オブザーバ。 The torque estimator calculates the product of the rotational speed obtained by differentiating the position indicated by the acquired position information once and the viscous resistance of the load machine, the acceleration obtained by further differentiating the rotational speed once, and the moment of inertia of the load machine. 4. The disturbance observer according to any one of claims 1 to 3, wherein the torque is estimated based on the sum of the product of and the Coulomb frictional force according to the moving direction of the load machine. 請求項1から請求項4の何れか1項に記載の外乱オブザーバと、前記指令を発令する制御部とを含むことを特徴とする制御装置。 A control device comprising: the disturbance observer according to any one of claims 1 to 4; and a control unit that issues the command. 請求項5に記載の制御装置と、前記サーボ回路と、前記モータと、前記負荷機械とを含む工作機械であって、
前記モータの位置を検出し、検出した位置を示す位置情報を前記サーボ回路にフィードバックする位置検出部と、
前記モータの電流を検出し、検出した電流を示す電流情報を前記サーボ回路にフィードバックする電流検出部と、
前記モータの温度を検出し、検出した温度を示す温度情報を生成する温度検出部と
を備え、
前記外乱オブザーバは、前記温度検出部から温度情報を取得するようにしてある
ことを特徴とする工作機械。
A machine tool comprising the control device according to claim 5, the servo circuit, the motor, and the load machine,
a position detection unit that detects the position of the motor and feeds back position information indicating the detected position to the servo circuit;
a current detection unit that detects the current of the motor and feeds back current information indicating the detected current to the servo circuit;
a temperature detection unit that detects the temperature of the motor and generates temperature information indicating the detected temperature,
The machine tool, wherein the disturbance observer acquires temperature information from the temperature detection unit.
指令に基づいてモータをフィードバック制御するサーボ回路にフィードバックされる前記モータの位置情報及び電流情報を取得して前記モータに作用する外乱を推定する方法であって、
前記モータの温度情報を取得し、取得した温度情報が示す温度に基づいて前記モータのトルク定数を算出するステップと、
算出したトルク定数を、取得した電流情報が示す電流に乗じて前記モータのトルクを算出するステップと、
取得した位置情報が示す位置及び前記モータが駆動する負荷機械に係る定数に基づいて前記モータのトルクを推定するステップと、
算出したトルクから推定したトルクを減じて前記外乱を推定するステップと
を含み、
前記トルク定数を算出するステップでは、前記モータの温度及びトルクの関係に基づくn次(nは1以上の整数)の多項式を用いてトルク定数を近似し、
前記多項式は、前記モータの温度及び、力行又は回生の状態を変えて複数定められており、
前記モータのトルク定数を算出するステップは、前記モータが力行の状態にあるか又は回生の状態にあるかを検知し、検知した状態に対応する多項式を用い、
前記多項式は、下記の3つの式のいずれか1つである
ことを特徴とする外乱推定方法。
Kt=a-bT
Kt=a-b(T-c)2
Kt=a0+a1T+a2T2 +・・・+anTn
但し、
Kt:トルク定数
T:前記温度情報が示す温度
a、b、c、a0、a1、a2、・・・an:一定の定数又は係数
A method of estimating a disturbance acting on the motor by acquiring position information and current information of the motor that are fed back to a servo circuit that feedback-controls the motor based on a command,
obtaining temperature information of the motor and calculating a torque constant of the motor based on the temperature indicated by the obtained temperature information;
calculating the torque of the motor by multiplying the calculated torque constant by the current indicated by the acquired current information;
estimating the torque of the motor based on the position indicated by the acquired position information and a constant related to the load machine driven by the motor;
and estimating the disturbance by subtracting the estimated torque from the calculated torque,
In the step of calculating the torque constant, approximating the torque constant using an n-th order (n is an integer of 1 or more) polynomial based on the relationship between the temperature and the torque of the motor,
A plurality of the polynomials are determined by changing the temperature of the motor and the state of power running or regeneration,
The step of calculating the torque constant of the motor detects whether the motor is in a power running state or in a regenerative state, and uses a polynomial expression corresponding to the detected state,
A disturbance estimation method, wherein the polynomial is any one of the following three equations.
Kt = a-bT
Kt = a - b (T - c) 2
Kt=a0+a1T+ a2T2 +...+ anTn
however,
Kt: torque constant T: temperature indicated by the temperature information a, b, c, a0, a1, a2, . . . an: constant constant or coefficient
JP2018163803A 2018-08-31 2018-08-31 Disturbance observer, control device, machine tool, and disturbance estimation method Active JP7298119B2 (en)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2018163803A JP7298119B2 (en) 2018-08-31 2018-08-31 Disturbance observer, control device, machine tool, and disturbance estimation method
CN201910720856.9A CN110875699B (en) 2018-08-31 2019-08-06 Interference observer, control device, machine tool, and interference estimation method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2018163803A JP7298119B2 (en) 2018-08-31 2018-08-31 Disturbance observer, control device, machine tool, and disturbance estimation method

Publications (2)

Publication Number Publication Date
JP2020035394A JP2020035394A (en) 2020-03-05
JP7298119B2 true JP7298119B2 (en) 2023-06-27

Family

ID=69668270

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2018163803A Active JP7298119B2 (en) 2018-08-31 2018-08-31 Disturbance observer, control device, machine tool, and disturbance estimation method

Country Status (2)

Country Link
JP (1) JP7298119B2 (en)
CN (1) CN110875699B (en)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2023005607A (en) 2021-06-29 2023-01-18 トヨタ自動車株式会社 External force estimation device, external force estimation method, and external force estimation program
CN116300687B (en) * 2023-05-11 2023-08-08 深圳市正和楚基科技有限公司 Machining precision prediction method, system and medium based on numerical control machining

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003170854A (en) 2001-12-07 2003-06-17 Nsk Ltd Control device for electric power steering device
JP2013085330A (en) 2011-10-06 2013-05-09 Mitsubishi Heavy Ind Ltd Motor control device and torque value acquisition method
WO2017213182A1 (en) 2016-06-07 2017-12-14 三菱電機株式会社 Abnormality diagnosis device and abnormality diagnosis method

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0714325A (en) * 1993-06-23 1995-01-17 Nec Ibaraki Ltd Magnetic disk device
JPH09121579A (en) * 1995-10-27 1997-05-06 Olympus Optical Co Ltd Motor speed controller
US6668202B2 (en) * 2001-11-21 2003-12-23 Sumitomo Heavy Industries, Ltd. Position control system and velocity control system for stage driving mechanism
CN102616272B (en) * 2012-05-21 2015-05-06 株洲易力达机电有限公司 Position control method for sensorless steering wheel
CN105656371B (en) * 2014-11-12 2019-05-28 上海航天汽车机电股份有限公司 A kind of method and system controlling direct current generator output torque

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003170854A (en) 2001-12-07 2003-06-17 Nsk Ltd Control device for electric power steering device
JP2013085330A (en) 2011-10-06 2013-05-09 Mitsubishi Heavy Ind Ltd Motor control device and torque value acquisition method
WO2017213182A1 (en) 2016-06-07 2017-12-14 三菱電機株式会社 Abnormality diagnosis device and abnormality diagnosis method

Also Published As

Publication number Publication date
JP2020035394A (en) 2020-03-05
CN110875699B (en) 2023-09-22
CN110875699A (en) 2020-03-10

Similar Documents

Publication Publication Date Title
JP4299761B2 (en) Thermal displacement correction method and thermal displacement correction apparatus for machine tool
CN103081351B (en) Control device of electric motor and method of motor control
JP4581096B2 (en) Friction compensation method, friction compensator, and motor control device
JP5566469B2 (en) Numerical control method
JP5127934B2 (en) Machine motion trajectory measuring device, numerically controlled machine tool, and machine motion trajectory measuring method
JP4813618B2 (en) Motor control device with function to estimate inertia and friction simultaneously
JP5096019B2 (en) Servo motor control device
JP5935958B2 (en) Trajectory control device
JP6592143B2 (en) Electric motor control device
JP6804657B2 (en) Numerical control system and motor control device
JP3699458B2 (en) Cutting force detection method, machining control method using cutting force, and control device
JP6444908B2 (en) Robot simulation device for calculating sweep space
JP3151655B2 (en) Estimation method of thermal displacement of machine tools
JP7298119B2 (en) Disturbance observer, control device, machine tool, and disturbance estimation method
US10031507B2 (en) Servo control device
JP2005056254A (en) Device and method for controlling position of machine tool
JPH1158183A (en) Thermal displacement estimating method of machine tool
JP6490368B2 (en) Machine tool control device, machine tool control method, and program
JP6913453B2 (en) State estimation device, state estimation method and program
JP3479922B2 (en) Load constant measurement method for motor drive system
JP5334932B2 (en) Parameter setting method and parameter setting device
JP2001202136A (en) Method for correcting dynamic deflection of motion controller and the motion controller
JP4030747B2 (en) Lost motion correction method and lost motion correction device
JPH11338527A (en) Method and device for controlling machine tool
JP5805268B1 (en) Displacement correction method for machine tool and control device for machine tool

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20210216

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20211224

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20220111

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20220228

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20220621

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20220729

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20221122

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20230208

C60 Trial request (containing other claim documents, opposition documents)

Free format text: JAPANESE INTERMEDIATE CODE: C60

Effective date: 20230208

A911 Transfer to examiner for re-examination before appeal (zenchi)

Free format text: JAPANESE INTERMEDIATE CODE: A911

Effective date: 20230216

C21 Notice of transfer of a case for reconsideration by examiners before appeal proceedings

Free format text: JAPANESE INTERMEDIATE CODE: C21

Effective date: 20230221

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20230314

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20230420

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: 20230516

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20230529

R150 Certificate of patent or registration of utility model

Ref document number: 7298119

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150