WO2020157883A1 - モータ制御システム、エンコーダ、サーボモータ - Google Patents

モータ制御システム、エンコーダ、サーボモータ Download PDF

Info

Publication number
WO2020157883A1
WO2020157883A1 PCT/JP2019/003274 JP2019003274W WO2020157883A1 WO 2020157883 A1 WO2020157883 A1 WO 2020157883A1 JP 2019003274 W JP2019003274 W JP 2019003274W WO 2020157883 A1 WO2020157883 A1 WO 2020157883A1
Authority
WO
WIPO (PCT)
Prior art keywords
encoder
motor
control device
communication path
disturbance
Prior art date
Application number
PCT/JP2019/003274
Other languages
English (en)
French (fr)
Inventor
慶太 嶌本
上村 浩司
Original Assignee
株式会社安川電機
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 株式会社安川電機 filed Critical 株式会社安川電機
Priority to JP2020569251A priority Critical patent/JP7116930B2/ja
Priority to EP19913121.0A priority patent/EP3920409A4/en
Priority to CN201980088996.7A priority patent/CN113302836A/zh
Priority to PCT/JP2019/003274 priority patent/WO2020157883A1/ja
Publication of WO2020157883A1 publication Critical patent/WO2020157883A1/ja
Priority to US17/386,539 priority patent/US11757385B2/en

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
    • H02P23/00Arrangements or methods for the control of AC motors characterised by a control method other than vector control
    • H02P23/20Controlling the acceleration or deceleration
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01DMEASURING NOT SPECIALLY ADAPTED FOR A SPECIFIC VARIABLE; ARRANGEMENTS FOR MEASURING TWO OR MORE VARIABLES NOT COVERED IN A SINGLE OTHER SUBCLASS; TARIFF METERING APPARATUS; MEASURING OR TESTING NOT OTHERWISE PROVIDED FOR
    • G01D5/00Mechanical means for transferring the output of a sensing member; Means for converting the output of a sensing member to another variable where the form or nature of the sensing member does not constrain the means for converting; Transducers not specially adapted for a specific variable
    • G01D5/12Mechanical means for transferring the output of a sensing member; Means for converting the output of a sensing member to another variable where the form or nature of the sensing member does not constrain the means for converting; Transducers not specially adapted for a specific variable using electric or magnetic means
    • G01D5/244Mechanical means for transferring the output of a sensing member; Means for converting the output of a sensing member to another variable where the form or nature of the sensing member does not constrain the means for converting; Transducers not specially adapted for a specific variable using electric or magnetic means influencing characteristics of pulses or pulse trains; generating pulses or pulse trains
    • G01D5/245Mechanical means for transferring the output of a sensing member; Means for converting the output of a sensing member to another variable where the form or nature of the sensing member does not constrain the means for converting; Transducers not specially adapted for a specific variable using electric or magnetic means influencing characteristics of pulses or pulse trains; generating pulses or pulse trains using a variable number of pulses in a train
    • G01D5/2454Encoders incorporating incremental and absolute signals
    • 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
    • H02P23/00Arrangements or methods for the control of AC motors characterised by a control method other than vector control
    • H02P23/0004Control strategies in general, e.g. linear type, e.g. P, PI, PID, using robust control
    • 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
    • H02P23/00Arrangements or methods for the control of AC motors characterised by a control method other than vector control
    • H02P23/04Arrangements or methods for the control of AC motors characterised by a control method other than vector control specially adapted for damping motor oscillations, e.g. for reducing hunting
    • 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
    • H02P23/00Arrangements or methods for the control of AC motors characterised by a control method other than vector control
    • H02P23/14Estimation or adaptation of motor parameters, e.g. rotor time constant, flux, speed, current or voltage
    • 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
    • H02P29/00Arrangements for regulating or controlling electric motors, appropriate for both AC and DC motors
    • H02P29/40Regulating or controlling the amount of current drawn or delivered by the motor for controlling the mechanical load
    • 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
    • H02P6/00Arrangements for controlling synchronous motors or other dynamo-electric motors using electronic commutation dependent on the rotor position; Electronic commutators therefor
    • H02P6/10Arrangements for controlling torque ripple, e.g. providing reduced torque ripple
    • 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
    • H02P6/00Arrangements for controlling synchronous motors or other dynamo-electric motors using electronic commutation dependent on the rotor position; Electronic commutators therefor
    • H02P6/14Electronic commutators
    • H02P6/16Circuit arrangements for detecting position
    • 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
    • H02P6/00Arrangements for controlling synchronous motors or other dynamo-electric motors using electronic commutation dependent on the rotor position; Electronic commutators therefor
    • H02P6/14Electronic commutators
    • H02P6/16Circuit arrangements for detecting position
    • H02P6/17Circuit arrangements for detecting position and for generating speed information

Definitions

  • the disclosed embodiments relate to a motor control system, an encoder, and a servo motor.
  • Patent Document 1 describes a control device.
  • This control device has an encoder that detects the control amount of the servo motor, and a DSP (digital signal processing device) that takes in the detected control amount.
  • the DSP has an observer that estimates a disturbance torque and a PI controller, and performs PI control that compensates for the disturbance torque.
  • the above-mentioned conventional control device may not be able to obtain good control performance, and higher control performance has been required.
  • the present invention has been made in view of such problems, and an object thereof is to provide a motor control system, an encoder, and a servomotor that can improve control performance.
  • a motor a control device for controlling the motor, a rotational position of the motor is detected, and the rotational position is controlled by the control device via a communication path.
  • an encoder for transmitting to the encoder the controller has a controller side transmitter for transmitting a torque command for controlling the motor to the encoder via the communication path, and the encoder is A position detection unit that detects the rotational position of the motor, an encoder-side receiving unit that receives the torque command from the control device-side transmission unit via the communication path, and based on the rotational position and the torque command,
  • a motor control system including: a first disturbance estimation unit that estimates a first disturbance torque; and an encoder-side transmission unit that transmits the rotational position and the first disturbance torque to the control device via the communication path. Is applied.
  • an encoder that detects a rotational position of a motor and transmits the rotational position to a control device that controls the motor via a communication path, wherein the rotational position of the motor is Based on the rotational position and the torque command, the disturbance torque is detected based on the position detection unit that detects the
  • An encoder having a disturbance estimation unit that estimates and an encoder-side transmission unit that transmits the rotational position and the disturbance torque to the control device via the communication path is applied.
  • a servo motor having a motor and the encoder is applied.
  • control performance can be improved.
  • FIG. 6 is a flowchart illustrating an example of control processing executed by an ASIC of an encoder. In this embodiment and a comparative example, it is a Bode diagram showing an example of a simulation result where an input is an external force and an output is an estimated disturbance value. It is a figure which expands and shows the A section of FIG.
  • FIG. 10 is a diagram illustrating an example of a simulation result of a position response when a step disturbance is input at the time of fixing the position in the present embodiment and the comparative example. It is a figure which expands and shows the C section of FIG. It is a figure which expands and shows the D section of FIG. It is a figure showing an example of composition of a motor control system concerning a modification which computes rotation acceleration with an encoder. It is a figure showing an example of composition of a motor control system concerning a modification which computes rotation speed with an encoder. It is a figure showing an example of the hardware constitutions of a control device.
  • the motor control system 1 has a servo motor 3 and a control device 5.
  • the servo motor 3 has a motor 7 and an encoder 9.
  • the control device 5 controls the servo motor 3.
  • the control device 5 includes a position controller 11, a speed calculator 13, a speed controller 15, and a current controller 17.
  • the position control unit 11 outputs a speed command Vr based on a position command Pr input from a host controller (not shown) and a rotational position Pf received from the transmission unit 26 of the encoder 9 via the communication path 18. To do.
  • the speed calculator 13 calculates the rotation speed Vf by first-order differentiating the rotation position Pf received from the encoder 9, for example.
  • the speed control unit 15 outputs the torque command Tr based on the speed command Vr and the rotation speed Vf calculated by the speed calculation unit 13.
  • the current controller 17 converts the torque command Tr into a current command using the parameters of the motor 7, and supplies drive power to the motor 7 based on the current command to drive the motor 7.
  • the control device 5 also has a transmission unit 19.
  • the transmitter 19 (an example of a controller-side transmitter) transmits the torque command Tr generated by the speed controller 15 to the encoder 9 via the communication path 20.
  • the transmitter 19 also transmits a position data request signal requesting the transmission of the rotational position Pf to the encoder 9 via the communication path 20.
  • the communication paths 18 and 20 are usually wired, but may be wireless. Further, the control device 5 may be configured as a single unit, or may be configured by, for example, a plurality of units or devices.
  • the processing and the like in the position control unit 11, the speed calculation unit 13, the speed control unit 15, the current control unit 17, the transmission unit 19 and the like described above are not limited to the examples of sharing of these processes, and for example, It may be processed by a smaller number of processing units (for example, one processing unit), or may be processed by a further subdivided processing unit. Further, in the control device 5, only a portion (inverter or the like) for supplying drive power to the motor 7 is implemented by an actual device, and other functions are implemented by a program executed by a CPU 901 (see FIG. 15) described later. Note that part or all of the above may be mounted by an actual device such as an ASIC, an FPGA, or another electric circuit. In the present embodiment, the processing by the position control unit 11, the speed calculation unit 13, the speed control unit 15, the current control unit 17, the transmission unit 19 and the like described above is executed at the calculation cycle Ts intervals determined by the performance of the CPU 901 and the like. ..
  • the encoder 9 is configured separately from the control device 5, detects the rotational position Pf of the motor 7, and transmits the rotational position Pf to the control device 5 via the communication path 18.
  • the encoder 9 includes a position detector 21, a receiver 23, a disturbance estimator 25, and a transmitter 26.
  • the position detector 21 detects the rotational position Pf of the motor 7.
  • the reception unit 23 (an example of the encoder-side reception unit) receives the torque command Tr from the transmission unit 19 of the control device 5 via the communication path 20.
  • the disturbance estimation unit 25 estimates a disturbance torque Td (an example of a first disturbance torque) based on the rotational position Pf and the torque command Tr. Specifically, the disturbance estimation unit 25 performs a calculation corresponding to the second derivative of the rotational position Pf based on the torque command Tr and the rotational position Pf of the motor 7 that is the result of being driven by the torque command Tr. Then, the rotational acceleration is calculated, and the rotational acceleration is converted into a dimension of force (torque) by multiplying the rotational acceleration by a parameter of the motor 7 (for example, the moment of inertia or mass).
  • Td an example of a first disturbance torque
  • the disturbance torque Td is calculated by comparing these.
  • the disturbance torque Td calculated in this way includes, for example, a sudden load change, an externally applied force or torque, a command value generated by an error between the control model and the actual model, and a force (torque) between the actual operation. Differences, etc. are included.
  • the transmission unit 26 (an example of the encoder-side transmission unit) sends the rotational position Pf detected by the position detection unit 21 and the disturbance torque Td estimated by the disturbance estimation unit 25 to the control device 5 via the communication path 18. Send.
  • the transmission unit 26 receives the position data request signal from the transmission unit 19 of the control device 5 via the communication path 20, the transmission unit 26 transmits the disturbance torque Td together with the rotational position Pf.
  • the rotational position Pf and the disturbance torque Td transmitted from the transmission unit 26 of the encoder 9 are received by the reception unit 24 of the control device 5 and output to each processing unit.
  • the speed control unit 15 generates a torque command Tr based on the rotation speed Vf and the disturbance torque Td calculated by the speed calculation unit 13, and outputs the torque command Tr to the current control unit 17.
  • the control device 5 performs motor control that compensates for disturbance torque.
  • processing and the like in the position detection unit 21, the reception unit 23, the disturbance estimation unit 25, the transmission unit 26, and the like described above are not limited to examples of sharing of these processes, and for example, a smaller number of processing units. It may be processed by (for example, one processing unit) or may be processed by a further subdivided processing unit. Further, the function of the processing unit of the encoder 9 is implemented by, for example, an ASIC (Application Specific Integrated circuit). Not limited to the ASIC, it may be mounted by a dedicated integrated circuit constructed for a specific application such as FPGA. Further, some or all of the functions of the processing unit may be implemented by a program executed by a CPU (not shown).
  • ASIC Application Specific Integrated circuit
  • the processing by the position detecting unit 21, the receiving unit 23, the disturbance estimating unit 25, the transmitting unit 26, and the like described above is executed at the calculation cycle Tv intervals determined by the performance of the ASIC.
  • the calculation cycle Tv is faster (shorter) than the calculation cycle Ts of the control device 5. Since the data transmission process by the transmission unit 26 is executed when the position data request signal is received from the control device 5, the data transmission process by the transmission unit 26 is actually executed at the calculation cycle Ts interval of the control device 5. To be done.
  • FIG. 2 shows an example of the configuration of a motor control system 1'according to a comparative example.
  • the motor control system 1 ′ differs from the motor control system 1 according to the present embodiment in that the disturbance torque is estimated on the control device side.
  • the control device 5 ′ has the disturbance estimation unit 27.
  • the disturbance estimation unit 27 estimates the disturbance torque Td based on the torque command Tr output from the speed control unit 15 and the rotational position Pf received from the transmission unit 26 of the encoder 9 ′ via the communication path 18.
  • the calculation method by the disturbance estimation unit 27 is the same as that of the disturbance estimation unit 25 described above.
  • the speed control unit 15 generates a torque command Tr based on the rotation speed Vf and the disturbance torque Td, and outputs it to the current control unit 17.
  • the processing by the disturbance estimation unit 27 is executed at intervals of the calculation cycle Ts determined by the performance of the CPU 901.
  • FIG. 3 shows an example of delay due to disturbance estimation in the motor control system 1 ′ of the comparative example.
  • the upper graph shows time on the horizontal axis and the rotational position on the vertical axis
  • the curve 29 shows an example of the temporal change of the rotational position Pf detected by the encoder 9'.
  • the arrow 31 above the curve 29 represents the timing at which the receiver 24 of the control device 5'receives the rotational position Pf, which is executed at the calculation cycle Ts interval of the control device 5'.
  • the arrow 33 below the curve 29 represents the timing at which the position detector 21 of the encoder 9'detects the rotational position Pf, and is executed at the calculation cycle Tv interval of the encoder 9'.
  • the calculation cycle Tv is significantly faster than the calculation cycle Ts.
  • the horizontal axis represents time and the vertical axis represents the disturbance torque
  • the straight line 35 shows an example of the time variation of the disturbance torque estimated by the disturbance estimation unit 27.
  • the times t1, t2, t3, and t4 correspond to the timings of the arrows 31, respectively, and the interval between the times is the calculation cycle Ts.
  • the disturbance estimation unit 27 estimates the disturbance torque at time t4
  • a calculation corresponding to the second-order differential based on the rotational position Pf is necessary, and therefore, data of up to two sampling data of the rotational position Pf are necessary.
  • FIG. 4 shows an example of delay due to disturbance estimation in the motor control system 1 of the present embodiment.
  • the upper graph has the horizontal axis as time and the vertical axis as rotational position
  • the curve 29 shows an example of the temporal change of the rotational position Pf detected by the encoder 9.
  • the arrow 31 above the curve 29 indicates the timing at which the receiver 24 of the control device 5 receives the rotational position Pf and the disturbance torque Td and the timing at which the receiver 23 of the encoder 9 receives the torque command Tr (the torque command Tr Update timing), which is executed at intervals of the calculation cycle Ts of the control device 5.
  • the arrow 33 below the curve 29 represents the timing at which the position detector 21 of the encoder 9 detects the rotational position Pf, and is executed at the calculation cycle Tv interval of the encoder 9.
  • the disturbance estimation unit 25 of the encoder 9 estimates the disturbance torque in the same calculation cycle Tv as the position detection by the position detection unit 21.
  • the arrow 37 above the curve 29 represents the timing at which this disturbance estimation is performed.
  • the horizontal axis represents time and the vertical axis represents disturbance torque, similarly to FIG. 3, and the straight line 35 shows an example of the time variation of the disturbance torque estimated by the disturbance estimation unit 25.
  • the disturbance estimation unit 25 estimates the disturbance torque at time t4
  • a calculation corresponding to the second-order differential based on the rotational position Pf is necessary, and therefore, data up to two before the sampling data of the rotational position Pf is necessary.
  • the time interval at which the disturbance estimation unit 25 acquires the rotational position Pf is the calculation cycle Tv, the rotational position Pf between the time t32 and the time t31 is required.
  • the disturbance torque based on the rotational acceleration at time t32 is obtained by the calculation based on these position data and the torque command Tr at time t3. Therefore, there is a relatively small delay of time Tv between the disturbance torque to be estimated and the disturbance torque at time t4.
  • the real-time property of the data of the rotational position Pf used for the disturbance estimation can be improved, so that the disturbance estimation with high real-time property can be performed.
  • the dead time in control can be reduced, the disturbance estimation band can be expanded, and the robustness to disturbance can be improved. Therefore, the control performance for the motor 7 can be improved.
  • step S10 the encoder 9 causes the position detector 21 to detect the rotational position Pf of the motor 7.
  • step S20 the encoder 9 causes the disturbance estimator 25 to detect the rotational position Pf detected in step S10 and the torque command value previously received from the control device 5 by the receiver 23 (the torque command value updated in step S50 described below). ) And the disturbance torque Td is estimated.
  • step S30 the encoder 9 uses the receiving unit 23 to determine whether the position data request signal and the torque command value have been received from the control device 5 via the communication path 20. If not received (step S30: NO), the process returns to step S10. On the other hand, if received (step S30: YES), the process proceeds to step S40.
  • step S40 the encoder 9 causes the transmitter 26 to transmit the immediately preceding rotational position Pf detected in step S10 and the immediately preceding disturbance torque Td estimated in step S20 to the control device 5 via the communication path 18. Send to.
  • step S50 the encoder 9 updates the torque command value recorded in the appropriate recording unit to the latest torque command value received in step S30. Then, it returns to step S10 and repeats the same procedure.
  • 6 to 9 show examples of Bode diagrams obtained by simulation when an input is an external force and an output is a disturbance estimated value.
  • the external force for example, a sweep signal that changes from 1 Hz to 200 Hz in 2 seconds is input.
  • the cutoff frequency in the disturbance estimation is set to 80 Hz, for example.
  • the broken line in the figure shows the frequency characteristic of the comparative example, and the solid line shows the frequency characteristic of the embodiment.
  • FIG. 7 is an enlarged view of part A of FIG. As shown in FIGS. 6 and 7, the embodiment has a higher gain near the cutoff frequency than the comparative example.
  • FIG. 9 is an enlarged view of portion B in FIG. As shown in FIGS. 8 and 9, the phase delay in the embodiment is smaller than that in the comparative example. From the above, it can be seen that the embodiment can expand the band of disturbance estimation as compared with the comparative example.
  • FIG. 10 to 12 show examples of simulation results of the position response when a step disturbance (for example, 1% of rated torque) is input when the position is fixed.
  • 11 is an enlarged view of portion C of FIG. 10
  • FIG. 12 is an enlarged view of portion D of FIG.
  • the broken line in the figure indicates the position response value of the comparative example
  • the solid line indicates the position response value of the embodiment.
  • Pr in the figure indicates a position command value (angle 0).
  • the peak of the position variation due to the disturbance is smaller in the embodiment than in the comparative example.
  • FIG. 12 the convergence is faster in the embodiment than in the comparative example. From the above, it can be seen that the embodiment can improve the robustness against disturbance as compared with the comparative example.
  • the motor control system 1 of the present embodiment detects the motor 7, the control device 5 that controls the motor 7, the rotational position Pf of the motor 7, and detects the rotational position Pf via the communication path 18.
  • the encoder 9 for transmitting to the control device 5, and the control device 5 includes a transmitter 19 for transmitting the torque command Tr for controlling the motor 7 to the encoder 9 via the communication path 20. Is based on the position detector 21 that detects the rotational position Pf of the motor 7, the receiver 23 that receives the torque command Tr from the transmitter 19 via the communication path 20, and the rotational position Pf and the torque command Tr.
  • a disturbance estimation unit 25 that estimates the disturbance torque Td
  • a transmission unit 26 that transmits the rotational position Pf and the disturbance torque Td to the control device 5 via the communication path 18.
  • the control device 5 uses the disturbance torque Td estimated by the disturbance estimation unit 25 of the encoder 9 to perform motor control in which the disturbance torque Td is compensated. At this time, since the disturbance torque Td is estimated by the encoder 9, the following effects can be obtained.
  • the disturbance estimation unit 27 of the control device 5′ should sample the rotational position Pf at the calculation cycle Ts of the control device 5′.
  • the calculation cycle Ts by the CPU of the control device is slower than the calculation cycle Tv of the encoder ASIC. Therefore, the real-time property of the sampling data is deteriorated, and good control performance for the motor 7 may not be obtained.
  • the encoder 9 detects the rotational position Pf and estimates the disturbance torque Td in a calculation cycle Tv faster than the calculation cycle Ts of the control device 5. Then, the encoder 9 transmits the rotation position Pf and the disturbance torque Td to the control device 5, and the control device 5 controls the motor 7 using the rotation position Pf and the disturbance torque Td.
  • the real-time property of the sampling data up to two data used in the disturbance estimation can be improved, so that the disturbance estimation with high real-time property becomes possible. Therefore, it is possible to expand the band of disturbance estimation and improve robustness against disturbance.
  • the disturbance estimation unit 25 has an integrator (not shown) for performing the calculation corresponding to the second derivative, the disturbance torque value output can be made smoother by increasing the calculation cycle. You can As described above, the control performance for the motor 7 can be improved.
  • FIG. 13 shows an example of the configuration of a motor control system 1A according to this modification. Note that, in FIG. 13, the same components as those in FIG.
  • the motor control system 1A has a control device 5A, a motor 7, and an encoder 9A.
  • the encoder 9A has an acceleration calculator 39 in addition to the configuration of the encoder 9 described above.
  • the acceleration calculator 39 calculates the rotational acceleration Af of the motor 7 by performing a calculation corresponding to the second derivative of the rotational position Pf detected by the position detector 21.
  • the transmission unit 26 transmits the rotational acceleration Af to the control device 5A via the communication path 18 together with the rotational position Pf and the disturbance torque Td1 (an example of the first disturbance torque) estimated by the disturbance estimation unit 25.
  • the control device 5A can execute various processes using the rotational acceleration Af transmitted from the encoder 9A. Therefore, higher performance control can be realized based on the detection information of the encoder with high added value.
  • the control device 5A has the disturbance estimation unit 41.
  • the disturbance estimation unit 41 estimates the disturbance torque Td2 (an example of the second disturbance torque) based on the torque command Tr and the rotational acceleration Af received from the transmission unit 26 of the encoder 9A via the communication path 18.
  • the speed control unit 15 generates the torque command Tr based on the rotation speed Vf calculated by the speed calculation unit 13, the disturbance torque Td1 received from the encoder 9A, and the disturbance torque Td2 calculated by the disturbance estimation unit 41. Output to the current control unit 17.
  • the control device 5A since the control device 5A does not perform the calculation corresponding to the second derivative of the rotational position Pf but performs the disturbance estimation using the rotational acceleration Af calculated on the encoder 9A side, the disturbance estimation with high real-time property Is possible. Further, since the disturbance estimating units 25 and 41 are provided in both the encoder 9A and the control device 5A, the disturbance estimating unit can be duplicated to perform backup or the like, and reliability can be improved. Further, for example, the disturbance estimation in the high frequency band is performed on the encoder 9A side having a fast calculation cycle, and the disturbance estimation in the low frequency band is performed on the control device 5A side having a slow calculation cycle. It is possible to realize disturbance estimation with a high resolution by further expanding the band by utilizing 41.
  • control device 5A may include the vibration suppressing unit 43 as an example of a process using the rotational acceleration Af transmitted from the encoder 9A.
  • the vibration suppressing unit 43 performs a calculation for suppressing the vibration of the motor 7 based on the rotational acceleration Af received from the transmitting unit 26 of the encoder 9A via the communication path 18.
  • the speed control unit 15 generates a torque command Tr based on the calculation result of the vibration suppressing unit 43 and outputs it to the current control unit 17. As a result, it is possible to perform motor control that compensates for vibration.
  • FIG. 14 shows an example of the configuration of a motor control system 1B according to this modification. Note that in FIG. 14, the same components as those in FIG.
  • the motor control system 1B has a control device 5B, a motor 7, and an encoder 9B.
  • the encoder 9B has a speed calculation unit 45 in addition to the configuration of the encoder 9 described above.
  • the speed calculator 45 calculates the rotation speed Vf of the motor 7 by performing a calculation corresponding to the first derivative of the rotation position Pf detected by the position detector 21.
  • the transmission unit 26 transmits the rotation speed Vf to the control device 5B via the communication path 18 together with the rotational position Pf and the disturbance torque Td estimated by the disturbance estimation unit 25.
  • the speed control unit 15 of the control device 5B performs speed control based on the speed command Vr and the rotation speed Vf received from the transmission unit 26 of the encoder 9B via the communication path 18.
  • the speed control unit 15 also performs motor control in which the disturbance torque is compensated based on the disturbance torque Td received from the encoder 9B.
  • the control device 5B does not perform the calculation of the rotation speed Vf (first-order differentiation of the rotation position Pf) but performs the speed control using the rotation speed Vf calculated on the encoder 9B side. It becomes possible to control.
  • the control device 5B can execute various processes using the rotation speed Vf transmitted from the encoder 9B. For example, although illustration is omitted, as in FIG.
  • a disturbance estimation unit that estimates the disturbance torque using the rotation speed Vf transmitted from the encoder 9B is mounted on the control device 5B side, and the disturbance estimation unit It is also possible to duplicate. Therefore, higher performance control can be realized based on the detection information of the encoder with high added value.
  • the control device 5 includes, for example, a CPU 901, a ROM 903, a RAM 905, a dedicated integrated circuit 907 constructed for a specific application such as an ASIC or an FPGA, an input device 913, and an output device 915. , A recording device 917, a drive 919, a connection port 921, and a communication device 923. These configurations are connected to each other via a bus 909 and an input/output interface 911 so that signals can be transmitted to each other.
  • the program can be recorded in the ROM 903, the RAM 905, the recording device 917, or the like, for example.
  • the program is temporarily or non-temporarily (permanently) recorded in a removable recording medium 925 such as a magnetic disk such as a flexible disk, an optical disk such as various CD/MO disk/DVD, or a semiconductor memory. You can also keep it.
  • a recording medium 925 can also be provided as so-called package software.
  • the programs recorded in these recording media 925 may be read by the drive 919 and recorded in the recording device 917 via the input/output interface 911, the bus 909, and the like.
  • the program can be recorded in, for example, a download site, another computer, another recording device, etc. (not shown).
  • the program is transferred via a network NW such as a LAN or the Internet, and the communication device 923 receives the program.
  • the program received by the communication device 923 may be recorded in the recording device 917 via the input/output interface 911, the bus 909, and the like.
  • the program can also be recorded in an appropriate external connection device 927, for example.
  • the program may be transferred via an appropriate connection port 921 and recorded in the recording device 917 via the input/output interface 911, the bus 909, or the like.
  • the CPU 901 executes various processes according to the program recorded in the recording device 917, so that the position controller 11, the speed calculator 13, the speed controller 15, the current controller 17, the transmitter 19 and the like.
  • the processing by is realized.
  • the CPU 901 may directly read the program from the recording device 917 and execute the program, or may load the program into the RAM 905 once and execute the program.
  • the CPU 901 may directly execute the received program without recording it in the recording device 917.
  • the CPU 901 may perform various kinds of processing based on a signal or information input from an input device 913 such as a mouse/keyboard/microphone (not shown) as necessary.
  • an input device 913 such as a mouse/keyboard/microphone (not shown) as necessary.
  • the CPU 901 may output the result of executing the above processing from the output device 915 such as a display device or an audio output device, and the CPU 901 further outputs the processing result to the communication device 923 or the connection if necessary. It may be transmitted via the port 921 or may be recorded in the recording device 917 or the recording medium 925.

Abstract

【課題】モータに対する制御性能を高める。 【解決手段】モータ制御システム1は、モータ7と、モータ7を制御する制御装置5と、モータ7の回転位置Pfを検出し、通信経路18を介して回転位置Pfを制御装置5に送信するエンコーダ9と、を有し、制御装置5は、モータ7を制御するためのトルク指令Trを通信経路20を介してエンコーダ9に送信する送信部19を有し、エンコーダ9は、モータ7の回転位置Pfを検出する位置検出部21と、送信部19から通信経路20を介してトルク指令Trを受信する受信部23と、回転位置Pfとトルク指令Trとに基づいて、外乱トルクTdを推定する外乱推定部25と、回転位置Pf及び外乱トルクTdを通信経路18を介して制御装置5に送信する送信部26と、を有する。

Description

モータ制御システム、エンコーダ、サーボモータ
 開示の実施形態は、モータ制御システム、エンコーダ及びサーボモータに関する。
 特許文献1には、制御装置が記載されている。この制御装置は、サーボモータの制御量を検出するエンコーダと、検出された制御量を取り込むDSP(デジタル信号処理装置)とを有する。DSPは、外乱トルクを推定するオブザーバと、PIコントローラとを有しており、外乱トルクを補償したPI制御を行う。
特開平7-191707号公報(図3)
 上記従来技術の制御装置では、良好な制御性能が得られない場合があり、より高い制御性能が求められていた。
 本発明はこのような問題点に鑑みてなされたものであり、制御性能を高めることができるモータ制御システム、エンコーダ及びサーボモータを提供することを目的とする。
 上記課題を解決するため、本発明の一の観点によれば、モータと、前記モータを制御する制御装置と、前記モータの回転位置を検出し、通信経路を介して前記回転位置を前記制御装置に送信するエンコーダと、を有し、前記制御装置は、前記モータを制御するためのトルク指令を前記通信経路を介して前記エンコーダに送信する制御装置側送信部を有し、前記エンコーダは、前記モータの前記回転位置を検出する位置検出部と、前記制御装置側送信部から前記通信経路を介して前記トルク指令を受信するエンコーダ側受信部と、前記回転位置と前記トルク指令とに基づいて、第1の外乱トルクを推定する第1外乱推定部と、前記回転位置及び前記第1の外乱トルクを前記通信経路を介して前記制御装置に送信するエンコーダ側送信部と、を有する、モータ制御システムが適用される。
 また、本発明の別の観点によれば、モータの回転位置を検出し、通信経路を介して前記回転位置を前記モータを制御する制御装置に送信するエンコーダであって、前記モータの前記回転位置を検出する位置検出部と、前記制御装置の制御装置側送信部から前記通信経路を介してトルク指令を受信するエンコーダ側受信部と、前記回転位置と前記トルク指令とに基づいて、外乱トルクを推定する外乱推定部と、前記回転位置及び前記外乱トルクを前記通信経路を介して前記制御装置に送信するエンコーダ側送信部と、を有する、エンコーダが適用される。
 また、本発明の別の観点によれば、モータと、上記エンコーダと、を有する、サーボモータが適用される。
 本発明のモータ制御システム等によれば、制御性能を高めることができる。
本実施形態に係るモータ制御システムの構成の一例を表す図である。 変形例に係るモータ制御システムの構成の一例を表す図である。 変形例に係るモータ制御システムでの外乱推定による遅れの一例を表す図である。 本実施形態に係るモータ制御システムでの外乱推定による遅れの一例を表す図である。 エンコーダのASICにより実行される制御処理の一例を表すフローチャートである。 本実施形態と比較例において、入力を外力、出力を外乱推定値としたシミュレーション結果の一例を表すボード線図である。 図6のA部を拡大して示す図である。 本実施形態と比較例において、入力を外力、出力を外乱推定値としたシミュレーション結果の一例を表すボード線図である。 図8のB部を拡大して示す図である。 本実施形態と比較例において、位置固定時にステップ外乱を入力した場合の位置応答のシミュレーション結果の一例を表す図である。 図10のC部を拡大して示す図である。 図10のD部を拡大して示す図である。 エンコーダで回転加速度を演算する変形例に係るモータ制御システムの構成の一例を表す図である。 エンコーダで回転速度を演算する変形例に係るモータ制御システムの構成の一例を表す図である。 制御装置のハードウェア構成の一例を表す図である。
 以下、一実施の形態について図面を参照しつつ説明する。
 <1.モータ制御システム>
 まず、図1を参照しつつ、本実施形態に係るモータ制御システムの構成の一例について説明する。
 図1に示すように、モータ制御システム1は、サーボモータ3と、制御装置5とを有する。サーボモータ3は、モータ7と、エンコーダ9とを有する。
 制御装置5は、サーボモータ3を制御する。制御装置5は、位置制御部11と、速度演算部13と、速度制御部15と、電流制御部17とを有する。位置制御部11は、上位制御装置(図示省略)から入力される位置指令Prと、エンコーダ9の送信部26から通信経路18を介して受信した回転位置Pfとに基づいて、速度指令Vrを出力する。速度演算部13は、エンコーダ9から受信した回転位置Pfを例えば1階微分することにより回転速度Vfを演算する。速度制御部15は、速度指令Vrと、速度演算部13により演算された回転速度Vfとに基づいて、トルク指令Trを出力する。電流制御部17は、トルク指令Trをモータ7のパラメータを用いて電流指令に変換し、当該電流指令に基づいてモータ7に駆動電力を給電してモータ7を駆動する。
 また制御装置5は、送信部19を有する。送信部19(制御装置側送信部の一例)は、速度制御部15により生成されたトルク指令Trを通信経路20を介してエンコーダ9に送信する。また送信部19は、回転位置Pfの送信を要求する位置データ要求信号を通信経路20を介してエンコーダ9に送信する。なお、通信経路18,20は、通常は有線として構成されるが、無線としてもよい。また、制御装置5は単体として構成されてもよいし、例えば複数のユニットや装置等により構成されてもよい。
 なお、上述した位置制御部11、速度演算部13、速度制御部15、電流制御部17、送信部19等における処理等は、これらの処理の分担の例に限定されるものではなく、例えば、更に少ない数の処理部(例えば1つの処理部)で処理されてもよく、また、更に細分化された処理部により処理されてもよい。また、制御装置5は、モータ7に駆動電力を給電する部分(インバータ等)のみ実際の装置により実装され、その他の機能は後述するCPU901(図15参照)が実行するプログラムにより実装される。なお、その一部又は全部がASICやFPGA、その他の電気回路等の実際の装置により実装されてもよい。本実施形態では、上述した位置制御部11、速度演算部13、速度制御部15、電流制御部17、送信部19等による処理は、上記CPU901の性能等により定まる演算周期Ts間隔で実行される。
 エンコーダ9は、制御装置5とは別体として構成されており、モータ7の回転位置Pfを検出し、通信経路18を介して回転位置Pfを制御装置5に送信する。エンコーダ9は、位置検出部21と、受信部23と、外乱推定部25と、送信部26とを有する。位置検出部21は、モータ7の回転位置Pfを検出する。受信部23(エンコーダ側受信部の一例)は、制御装置5の送信部19から通信経路20を介してトルク指令Trを受信する。
 外乱推定部25(第1外乱推定部の一例)は、回転位置Pfとトルク指令Trとに基づいて、外乱トルクTd(第1の外乱トルクの一例)を推定する。具体的には、外乱推定部25は、トルク指令Trと、当該トルク指令Trにより駆動された結果であるモータ7の回転位置Pfとに基づき、回転位置Pfの2階微分に相当する演算を行って回転加速度を演算し、当該回転加速度にモータ7のパラメータ(例えば慣性モーメントや質量等)を乗算することにより力(トルク)の次元に変換する。これにより演算されたトルクは上記トルク指令Trによりモータ7が実際に駆動された実動作によるトルクであるので、これらを比較することにより外乱トルクTdが算出される。このようにして算出された外乱トルクTdには、例えば、突然の負荷変動、外部から加えられた力やトルク、制御モデルと実モデルの誤差により生じる指令値と実動作間の力(トルク)の差、等が含まれる。
 送信部26(エンコーダ側送信部の一例)は、位置検出部21により検出された回転位置Pfと、外乱推定部25により推定された外乱トルクTdとを、通信経路18を介して制御装置5に送信する。送信部26は、制御装置5の送信部19から通信経路20を介して位置データ要求信号を受信した際に、回転位置Pfと合わせて外乱トルクTdを送信する。
 エンコーダ9の送信部26から送信された回転位置Pf及び外乱トルクTdは、制御装置5の受信部24により受信され、各処理部に出力される。速度制御部15は、速度演算部13により演算された回転速度Vf及び外乱トルクTdに基づいてトルク指令Trを生成し、電流制御部17に出力する。これにより、制御装置5は外乱トルクを補償したモータ制御を行う。
 なお、上述した位置検出部21、受信部23、外乱推定部25、送信部26等における処理等は、これらの処理の分担の例に限定されるものではなく、例えば、更に少ない数の処理部(例えば1つの処理部)で処理されてもよく、また、更に細分化された処理部により処理されてもよい。また、エンコーダ9の上記処理部による機能は、例えばASIC(Application Specific Integrated circuit)により実装される。なお、ASICに限らず、その他FPGA等の特定の用途向けに構築された専用集積回路により実装されてもよい。また、上記処理部による機能の一部又は全部がCPU(図示省略)が実行するプログラムにより実装されてもよい。本実施形態では、上述した位置検出部21、受信部23、外乱推定部25、送信部26等による処理は、上記ASICの性能等により定まる演算周期Tv間隔で実行される。この演算周期Tvは、制御装置5の演算周期Tsよりも速い(短い)。なお、送信部26によるデータ送信処理は、制御装置5から位置データ要求信号を受信した際に実行されるので、送信部26によるデータ送信処理は実際には制御装置5の演算周期Ts間隔で実行される。
 <2.外乱推定による遅れ>
 次に、図2~図4を参照しつつ、本実施形態に係るモータ制御システム1での外乱推定による遅れの一例について、比較例に係るモータ制御システム1’と比較しつつ説明する。
 図2に、比較例に係るモータ制御システム1’の構成の一例を示す。図2に示すように、モータ制御システム1’が本実施形態に係るモータ制御システム1と異なる点は、外乱トルクの推定を制御装置側で行う点である。モータ制御システム1’では、制御装置5’が外乱推定部27を有する。外乱推定部27は、速度制御部15より出力されるトルク指令Trと、エンコーダ9’の送信部26から通信経路18を介して受信した回転位置Pfとに基づいて、外乱トルクTdを推定する。外乱推定部27による演算手法は、前述した外乱推定部25と同様である。速度制御部15は、回転速度Vf及び外乱トルクTdに基づいてトルク指令Trを生成し、電流制御部17に出力する。なお、外乱推定部27による処理は、上記CPU901の性能等により定まる演算周期Ts間隔で実行される。
 図3に、比較例のモータ制御システム1’での外乱推定による遅れの一例を示す。図3において、上のグラフは横軸を時間、縦軸を回転位置としており、曲線29がエンコーダ9’により検出される回転位置Pfの時間変化の一例を示している。曲線29の上部の矢印31は、制御装置5’の受信部24が回転位置Pfを受信するタイミングを表しており、制御装置5’の演算周期Ts間隔で実行される。一方、曲線29の下部の矢印33は、エンコーダ9’の位置検出部21が回転位置Pfを検出するタイミングを表しており、エンコーダ9’の演算周期Tv間隔で実行される。図3に示すように、演算周期Tvは演算周期Tsよりも大幅に速い。
 また、図3の下のグラフは横軸を時間、縦軸を外乱トルクとしており、直線35が外乱推定部27により推定される外乱トルクの時間変化の一例を示している。なお、時間t1,t2,t3,t4はそれぞれ矢印31のタイミングに対応しており、各時間の間隔はそれぞれ演算周期Tsである。例えば外乱推定部27が時間t4における外乱トルクを推定する場合、回転位置Pfに基づく2階微分に相当する演算が必要となるため、回転位置Pfのサンプリングデータのうち2個前までのデータが必要となる。本比較例では、外乱推定部27が回転位置Pfを取得する時間間隔が演算周期Tsであるため、時間t3と時間t2の回転位置Pfが必要となる。これらの位置データと時間t3におけるトルク指令Trとに基づく演算により、時間t3における回転加速度に基づく外乱トルクが得られる。このため、推定しようとする時間t4における外乱トルクとの間に比較的大きな時間Tsの遅れが生じることになる。このように、比較例のモータ制御システム1’では、外乱推定に用いる回転位置Pfのデータのリアルタイム性が低下し、モータ7に対する良好な制御性能が得られない可能性がある。また、制御上の無駄時間が生じてしまい、この無駄時間により制御装置5’の外乱補償の周波数応答が上げられない可能性がある。
 図4に、本実施形態のモータ制御システム1での外乱推定による遅れの一例を示す。図4において、図3と同様に、上のグラフは横軸を時間、縦軸を回転位置としており、曲線29がエンコーダ9により検出される回転位置Pfの時間変化の一例を示している。曲線29の上部の矢印31は、制御装置5の受信部24が回転位置Pf及び外乱トルクTdを受信するタイミング、且つ、エンコーダ9の受信部23がトルク指令Trを受信するタイミング(トルク指令Trの更新タイミング)を表しており、制御装置5の演算周期Ts間隔で実行される。一方、曲線29の下部の矢印33は、エンコーダ9の位置検出部21が回転位置Pfを検出するタイミングを表しており、エンコーダ9の演算周期Tv間隔で実行される。本実施形態では、エンコーダ9の外乱推定部25が位置検出部21による位置検出と同じ演算周期Tvで外乱トルクの推定を行う。曲線29の上部の矢印37は、この外乱推定が行われるタイミングを表している。
 また、図4の下のグラフは、図3と同様に、横軸を時間、縦軸を外乱トルクとしており、直線35が外乱推定部25により推定される外乱トルクの時間変化の一例を示している。例えば外乱推定部25が時間t4における外乱トルクを推定する場合、回転位置Pfに基づく2階微分に相当する演算が必要となるため、回転位置Pfのサンプリングデータのうち2個前までのデータが必要となる。本実施形態では、外乱推定部25が回転位置Pfを取得する時間間隔が演算周期Tvであるため、時間t32と時間t31の回転位置Pfが必要となる。これらの位置データと時間t3におけるトルク指令Trとに基づく演算により、時間t32における回転加速度に基づく外乱トルクが得られる。このため、推定しようとする時間t4における外乱トルクとの間には比較的小さな時間Tvの遅れしか生じないことになる。このように、本実施形態のモータ制御システム1では、外乱推定に用いる回転位置Pfのデータのリアルタイム性を向上できるので、リアルタイム性の高い外乱推定が可能となる。その結果、制御上の無駄時間を減少でき、外乱推定の帯域を拡大できると共に、外乱に対するロバスト性を向上することができる。したがって、モータ7に対する制御性能を高めることができる。
 <3.エンコーダの制御処理>
 次に、図5を参照しつつ、エンコーダ9のASICにより実行される制御処理の一例について説明する。
 図5に示すように、ステップS10では、エンコーダ9は位置検出部21により、モータ7の回転位置Pfを検出する。
 ステップS20では、エンコーダ9は外乱推定部25により、上記ステップS10で検出した回転位置Pfと、受信部23により制御装置5から前回受信したトルク指令値(後述のステップS50で更新されたトルク指令値)とに基づいて、外乱トルクTdを推定する。
 ステップS30では、エンコーダ9は受信部23により、制御装置5から通信経路20を介して位置データ要求信号とトルク指令値を受信したか否かを判定する。受信していない場合には(ステップS30:NO)、上記ステップS10に戻る。一方、受信した場合には(ステップS30:YES)、ステップS40に移る。
 ステップS40では、エンコーダ9は送信部26により、上記ステップS10で検出された直前の回転位置Pfと、上記ステップS20で推定された直前の外乱トルクTdとを、通信経路18を介して制御装置5に送信する。
 ステップS50では、エンコーダ9は、適宜の記録部に記録したトルク指令値を上記ステップS30で受信した最新のトルク指令値に更新する。その後、ステップS10に戻り同様の手順を繰り返す。
 <4.シミュレーション結果>
 次に、図6~図12を参照しつつ、シミュレーション結果の一例について説明する。図6~図12では、本実施形態による効果を確認するために、本実施形態に係るモータ制御システム1でのシミュレーション結果と、前述の比較例に係るモータ制御システム1’でのシミュレーション結果とを比較しつつ説明する。
 図6~図9に、入力を外力、出力を外乱推定値とした場合のシミュレーションによるボード線図の一例を示す。このシミュレーションでは、外力として、例えば2秒間で1Hzから200Hzまで変化させるスイープ信号を入力している。また、外乱推定における遮断周波数を例えば80Hzとしている。なお、図中の破線が比較例の周波数特性、実線が実施形態の周波数特性を示す。
 図7は、図6のA部を拡大した図である。図6及び図7に示すように、実施形態の方が比較例に比べて遮断周波数付近でのゲインが高くなっている。また、図9は、図8のB部を拡大した図である。図8及び図9に示すように、実施形態の方が比較例に比べて位相の遅れが小さくなっている。以上から、実施形態の方が比較例に比べて外乱推定の帯域を拡大できることが分かる。
 図10~図12に、位置固定時にステップ外乱(例えば定格トルクの1%)を入力した場合の位置応答のシミュレーション結果の一例を示す。図11は図10のC部を拡大した図であり、図12は図10のD部を拡大した図である。なお、図中の破線が比較例の位置応答値、実線が実施形態の位置応答値を示す。また、図中のPrが位置指令値(角度0)を示す。図11に示すように、実施形態の方が比較例に比べて外乱による位置変動のピークが小さくなっている。また図12に示すように、実施形態の方が比較例に比べて収束も速くなっている。以上から、実施形態の方が比較例に比べて外乱に対するロバスト性を向上できることが分かる。
 <5.本実施形態による効果の例>
 以上説明したように、本実施形態のモータ制御システム1は、モータ7と、モータ7を制御する制御装置5と、モータ7の回転位置Pfを検出し、通信経路18を介して回転位置Pfを制御装置5に送信するエンコーダ9と、を有し、制御装置5は、モータ7を制御するためのトルク指令Trを通信経路20を介してエンコーダ9に送信する送信部19を有し、エンコーダ9は、モータ7の回転位置Pfを検出する位置検出部21と、送信部19から通信経路20を介してトルク指令Trを受信する受信部23と、回転位置Pfとトルク指令Trとに基づいて、外乱トルクTdを推定する外乱推定部25と、回転位置Pf及び外乱トルクTdを通信経路18を介して制御装置5に送信する送信部26と、を有する。
 モータ制御システム1では、制御装置5が、エンコーダ9の外乱推定部25で推定された外乱トルクTdを用いて、外乱トルクTdを補償したモータ制御を行う。このとき、外乱トルクTdの推定をエンコーダ9で行うので、次のような効果を得ることができる。
 モータ7の回転位置Pfに基づいて外乱トルクTdを推定する場合、2階微分に相当する演算が必要となるため、回転位置Pfのサンプリングデータのうち2個前までのデータが必要となる。前述の比較例のように、外乱トルクTdの推定を制御装置5’側で行う場合、制御装置5’の外乱推定部27は制御装置5’の演算周期Tsで回転位置Pfのサンプリングを行うこととなるが、制御装置のCPUによる演算周期TsはエンコーダASICの演算周期Tvよりも遅い。このため、サンプリングデータのリアルタイム性が低下し、モータ7に対する良好な制御性能が得られない可能性がある。
 本実施形態では、エンコーダ9が制御装置5の演算周期Tsよりも速い演算周期Tvで回転位置Pfの検出及び外乱トルクTdの推定演算を行う。そして、エンコーダ9は回転位置Pfと外乱トルクTdとを制御装置5に送信し、制御装置5は当該回転位置Pfと外乱トルクTdを用いてモータ7の制御を行う。これにより、外乱推定で用いる2個前までのサンプリングデータのリアルタイム性を向上できるので、リアルタイム性の高い外乱推定が可能となる。したがって、外乱推定の帯域を拡大できると共に、外乱に対するロバスト性を向上することが可能となる。さらに、外乱推定部25は2階微分に相当する演算を行うために積分器(図示省略)を有しているため、演算周期を速くすることにより出力される外乱トルク値をより滑らかにすることができる。以上により、モータ7に対する制御性能を高めることができる。
 <6.変形例>
 なお、開示の実施形態は、上記に限られるものではなく、その趣旨及び技術的思想を逸脱しない範囲内で種々の変形が可能である。以下、そのような変形例を説明する。
  (6-1.エンコーダで回転加速度を演算する場合)
 図13に、本変形例に係るモータ制御システム1Aの構成の一例を示す。なお、図13において前述の図1と同様の構成には同符号を付し、適宜説明を省略する。
 図13に示すように、モータ制御システム1Aは、制御装置5Aと、モータ7と、エンコーダ9Aとを有する。エンコーダ9Aは、前述のエンコーダ9の構成に加えて、加速度演算部39を有する。加速度演算部39は、位置検出部21により検出した回転位置Pfの2階微分に相当する演算を行ってモータ7の回転加速度Afを演算する。送信部26は、回転位置Pf及び外乱推定部25により推定した外乱トルクTd1(第1の外乱トルクの一例)と共に、回転加速度Afを通信経路18を介して制御装置5Aに送信する。
 これにより、制御装置5Aは、エンコーダ9Aから送信される回転加速度Afを利用した各種の処理を実行することが可能となる。したがって、付加価値の高いエンコーダの検出情報に基づいてより高性能な制御を実現できる。例えば本変形例では、制御装置5Aが外乱推定部41を有する。外乱推定部41は、トルク指令Trと、エンコーダ9Aの送信部26から通信経路18を介して受信した回転加速度Afとに基づいて、外乱トルクTd2(第2の外乱トルクの一例)を推定する。速度制御部15は、速度演算部13により演算された回転速度Vf、エンコーダ9Aから受信した外乱トルクTd1、及び、外乱推定部41により演算された外乱トルクTd2に基づいてトルク指令Trを生成し、電流制御部17に出力する。
 以上によれば、制御装置5Aで回転位置Pfの2階微分に相当する演算を行うのではなく、エンコーダ9A側で演算した回転加速度Afを用いて外乱推定を行うので、リアルタイム性の高い外乱推定が可能となる。また、エンコーダ9Aと制御装置5Aの両方に外乱推定部25,41を設けるので、外乱推定部の二重化によりバックアップ等が可能となり、信頼性を向上できる。さらに、例えば演算周期の速いエンコーダ9A側で高周波帯域の外乱推定を行い、演算周期の遅い制御装置5A側で低周波数帯域の外乱推定を行うことによって、ダイナミックレンジが異なる2つの外乱推定部25,41を活用してより帯域を拡大した分解能の高い外乱推定を実現できる。
 また制御装置5Aは、エンコーダ9Aから送信される回転加速度Afを利用した処理の一例として、振動抑制部43を有してもよい。振動抑制部43は、エンコーダ9Aの送信部26から通信経路18を介して受信した回転加速度Afに基づいて、モータ7の振動を抑制するための演算を行う。速度制御部15は、振動抑制部43の演算結果に基づいてトルク指令Trを生成し、電流制御部17に出力する。これにより、振動を補償したモータ制御を行うことができる。
  (6-2.エンコーダで回転速度を演算する場合)
 図14に、本変形例に係るモータ制御システム1Bの構成の一例を示す。なお、図14において前述の図1等と同様の構成には同符号を付し、適宜説明を省略する。
 図14に示すように、モータ制御システム1Bは、制御装置5Bと、モータ7と、エンコーダ9Bとを有する。エンコーダ9Bは、前述のエンコーダ9の構成に加えて、速度演算部45を有する。速度演算部45は、位置検出部21により検出した回転位置Pfの1階微分に相当する演算を行ってモータ7の回転速度Vfを演算する。送信部26は、回転位置Pf及び外乱推定部25により推定した外乱トルクTdと共に、回転速度Vfを通信経路18を介して制御装置5Bに送信する。
 制御装置5Bの速度制御部15は、速度指令Vrと、エンコーダ9Bの送信部26から通信経路18を介して受信した回転速度Vfとに基づいて速度制御を行う。また速度制御部15は、エンコーダ9Bから受信した外乱トルクTdに基づいて外乱トルクを補償したモータ制御を行う。これにより、制御装置5Bで回転速度Vfの演算(回転位置Pfの1階微分)を行うのではなく、エンコーダ9B側で演算した回転速度Vfを用いて速度制御を行うので、リアルタイム性の高い速度制御が可能となる。また、制御装置5Bは、エンコーダ9Bから送信される回転速度Vfを利用した各種の処理を実行することが可能となる。例えば、図示は省略するが、前述の図13と同様に、制御装置5B側にエンコーダ9Bから送信される回転速度Vfを利用して外乱トルクを推定する外乱推定部を実装し、外乱推定部の二重化を行うこと等も可能となる。したがって、付加価値の高いエンコーダの検出情報に基づいてより高性能な制御を実現できる。
 また、以上既に述べた以外にも、上記実施形態や各変形例による手法を適宜組み合わせて利用しても良い。その他、一々例示はしないが、上記実施形態や各変形例は、その趣旨を逸脱しない範囲内において、種々の変更が加えられて実施されるものである。
 <7.制御装置のハードウェア構成例>
 次に、図15を参照しつつ、上記で説明したCPU901が実行するプログラムにより実装された位置制御部11、速度演算部13、速度制御部15、電流制御部17、送信部19等による処理を実現する制御装置5のハードウェア構成例について説明する。なお、図15中では、制御装置5のモータ7に駆動電力を給電する機能に係る構成を適宜省略して図示している。
 図15に示すように、制御装置5は、例えば、CPU901と、ROM903、RAM905と、ASIC又はFPGA等の特定の用途向けに構築された専用集積回路907と、入力装置913と、出力装置915と、記録装置917と、ドライブ919と、接続ポート921と、通信装置923とを有する。これらの構成は、バス909や入出力インターフェース911を介し相互に信号を伝達可能に接続されている。
 プログラムは、例えば、ROM903やRAM905、記録装置917等に記録しておくことができる。
 また、プログラムは、例えば、フレキシブルディスクなどの磁気ディスク、各種のCD・MOディスク・DVD等の光ディスク、半導体メモリ等のリムーバブルな記録媒体925に、一時的又は非一時的(永続的)に記録しておくこともできる。このような記録媒体925は、いわゆるパッケージソフトウエアとして提供することもできる。この場合、これらの記録媒体925に記録されたプログラムは、ドライブ919により読み出されて、入出力インターフェース911やバス909等を介し上記記録装置917に記録されてもよい。
 また、プログラムは、例えば、ダウンロードサイト・他のコンピュータ・他の記録装置等(図示せず)に記録しておくこともできる。この場合、プログラムは、LANやインターネット等のネットワークNWを介し転送され、通信装置923がこのプログラムを受信する。そして、通信装置923が受信したプログラムは、入出力インターフェース911やバス909等を介し上記記録装置917に記録されてもよい。
 また、プログラムは、例えば、適宜の外部接続機器927に記録しておくこともできる。この場合、プログラムは、適宜の接続ポート921を介し転送され、入出力インターフェース911やバス909等を介し上記記録装置917に記録されてもよい。
 そして、CPU901が、上記記録装置917に記録されたプログラムに従い各種の処理を実行することにより、上記の位置制御部11、速度演算部13、速度制御部15、電流制御部17、送信部19等による処理が実現される。この際、CPU901は、例えば、上記記録装置917からプログラムを直接読み出して実行してもよいし、RAM905に一旦ロードした上で実行してもよい。更にCPU901は、例えば、プログラムを通信装置923やドライブ919、接続ポート921を介し受信する場合、受信したプログラムを記録装置917に記録せずに直接実行してもよい。
 また、CPU901は、必要に応じて、例えばマウス・キーボード・マイク(図示せず)等の入力装置913から入力する信号や情報に基づいて各種の処理を行ってもよい。
 そして、CPU901は、上記の処理を実行した結果を、例えば表示装置や音声出力装置等の出力装置915から出力してもよく、さらにCPU901は、必要に応じてこの処理結果を通信装置923や接続ポート921を介し送信してもよく、上記記録装置917や記録媒体925に記録させてもよい。
 1      モータ制御システム
 5      制御装置
 7      モータ
 9      エンコーダ
 18     通信経路
 19     送信部(制御装置側送信部)
 20     通信経路
 21     位置検出部
 23     受信部(エンコーダ側受信部)
 25     外乱推定部(第1外乱推定部)
 26     送信部(エンコーダ側送信部)
 39     加速度演算部
 41     外乱推定部(第2外乱推定部)
 43     振動抑制部
 Af     回転加速度
 Pf     回転位置
 Td     外乱トルク(第1の外乱トルク)
 Td1    外乱トルク(第1の外乱トルク)
 Td2    外乱トルク(第2の外乱トルク)
 Tr     トルク指令

Claims (10)

  1.  モータと、
     前記モータを制御する制御装置と、
     前記モータの回転位置を検出し、通信経路を介して前記回転位置を前記制御装置に送信するエンコーダと、を有し、
     前記制御装置は、
     前記モータを制御するためのトルク指令を前記通信経路を介して前記エンコーダに送信する制御装置側送信部を有し、
     前記エンコーダは、
     前記モータの前記回転位置を検出する位置検出部と、
     前記制御装置側送信部から前記通信経路を介して前記トルク指令を受信するエンコーダ側受信部と、
     前記回転位置と前記トルク指令とに基づいて、第1の外乱トルクを推定する第1外乱推定部と、
     前記回転位置及び前記第1の外乱トルクを前記通信経路を介して前記制御装置に送信するエンコーダ側送信部と、を有する、
    モータ制御システム。
  2.  前記エンコーダは、
     前記回転位置に基づいて前記モータの回転加速度を演算する加速度演算部を有し、
     前記エンコーダ側送信部は、
     前記回転加速度を前記通信経路を介して前記制御装置に送信する、
    請求項1に記載のモータ制御システム。
  3.  前記制御装置は、
     前記トルク指令と前記エンコーダ側送信部から前記通信経路を介して受信した前記回転加速度とに基づいて、第2の外乱トルクを推定する第2外乱推定部を有する、
    請求項2に記載のモータ制御システム。
  4.  前記制御装置は、
     前記エンコーダ側送信部から前記通信経路を介して受信した前記回転加速度に基づいて、前記モータの振動を抑制するための演算を行う振動抑制部を有する、
    請求項2又は3に記載のモータ制御システム。
  5.  前記エンコーダは、
     前記回転位置に基づいて前記モータの回転速度を演算する速度演算部を有し、
     前記エンコーダ側送信部は、
     前記回転速度を前記通信経路を介して前記制御装置に送信する、
    請求項1~4のいずれか1項に記載のモータ制御システム。
  6.  前記制御装置は、
     上位制御装置から入力される位置指令と前記エンコーダ側送信部から前記通信経路を介して受信した前記回転位置とに基づいて、速度指令を出力する位置制御部と、
     前記速度指令と前記エンコーダ側送信部から前記通信経路を介して受信した前記回転速度とに基づいて、前記トルク指令を出力する速度制御部と、を有する、
    請求項5に記載のモータ制御システム。
  7.  モータの回転位置を検出し、通信経路を介して前記回転位置を前記モータを制御する制御装置に送信するエンコーダであって、
     前記モータの前記回転位置を検出する位置検出部と、
     前記制御装置の制御装置側送信部から前記通信経路を介してトルク指令を受信するエンコーダ側受信部と、
     前記回転位置と前記トルク指令とに基づいて、外乱トルクを推定する外乱推定部と、
     前記回転位置及び前記外乱トルクを前記通信経路を介して前記制御装置に送信するエンコーダ側送信部と、を有する、
    エンコーダ。
  8.  前記回転位置に基づいて前記モータの回転加速度を演算する加速度演算部をさらに有し、
     前記エンコーダ側送信部は、
     前記回転加速度を前記通信経路を介して前記制御装置に送信する、
    請求項7に記載のエンコーダ。
  9.  前記回転位置に基づいて前記モータの回転速度を演算する速度演算部をさらに有し、
     前記エンコーダ側送信部は、
     前記回転速度を前記通信経路を介して前記制御装置に送信する、
    請求項7又は8に記載のエンコーダ。
  10.  モータと、
     請求項7~9のいずれか1項に記載のエンコーダと、
    を有する、サーボモータ。
PCT/JP2019/003274 2019-01-31 2019-01-31 モータ制御システム、エンコーダ、サーボモータ WO2020157883A1 (ja)

Priority Applications (5)

Application Number Priority Date Filing Date Title
JP2020569251A JP7116930B2 (ja) 2019-01-31 2019-01-31 モータ制御システム、エンコーダ、サーボモータ
EP19913121.0A EP3920409A4 (en) 2019-01-31 2019-01-31 MOTOR, ENCODER, AND SERVO MOTOR CONTROL SYSTEM
CN201980088996.7A CN113302836A (zh) 2019-01-31 2019-01-31 电机控制系统、编码器以及伺服电机
PCT/JP2019/003274 WO2020157883A1 (ja) 2019-01-31 2019-01-31 モータ制御システム、エンコーダ、サーボモータ
US17/386,539 US11757385B2 (en) 2019-01-31 2021-07-28 Motor control system, encoder, and servo motor

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2019/003274 WO2020157883A1 (ja) 2019-01-31 2019-01-31 モータ制御システム、エンコーダ、サーボモータ

Related Child Applications (1)

Application Number Title Priority Date Filing Date
US17/386,539 Continuation US11757385B2 (en) 2019-01-31 2021-07-28 Motor control system, encoder, and servo motor

Publications (1)

Publication Number Publication Date
WO2020157883A1 true WO2020157883A1 (ja) 2020-08-06

Family

ID=71840192

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2019/003274 WO2020157883A1 (ja) 2019-01-31 2019-01-31 モータ制御システム、エンコーダ、サーボモータ

Country Status (5)

Country Link
US (1) US11757385B2 (ja)
EP (1) EP3920409A4 (ja)
JP (1) JP7116930B2 (ja)
CN (1) CN113302836A (ja)
WO (1) WO2020157883A1 (ja)

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH07191707A (ja) 1993-12-27 1995-07-28 Kobe Steel Ltd 制御装置
JP2014045556A (ja) * 2012-08-24 2014-03-13 Yaskawa Electric Corp モータ制御装置
WO2016042636A1 (ja) * 2014-09-18 2016-03-24 株式会社安川電機 エンコーダシステム及びセンサシステム
WO2016136298A1 (ja) * 2015-02-27 2016-09-01 ソニー株式会社 アクチュエータ及び医療用支持アーム装置
JP2017085730A (ja) * 2015-10-26 2017-05-18 日産自動車株式会社 電動車両の制御方法、及び、制御装置

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5115418A (en) * 1989-09-25 1992-05-19 Seiko Instruments Inc. Servo control apparatus
US6894450B2 (en) * 2002-01-16 2005-05-17 Ballard Power Systems Corporation Circuit configuration for permanent magnet synchronous motor control
US7557530B2 (en) * 2005-10-12 2009-07-07 Continental Automotive Systems Us, Inc. Method, apparatus and article for detecting rotor position
RU2678857C1 (ru) * 2015-05-25 2019-02-04 Ниссан Мотор Ко., Лтд. Устройство диагностики неисправностей и способ диагностики неисправностей.

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH07191707A (ja) 1993-12-27 1995-07-28 Kobe Steel Ltd 制御装置
JP2014045556A (ja) * 2012-08-24 2014-03-13 Yaskawa Electric Corp モータ制御装置
WO2016042636A1 (ja) * 2014-09-18 2016-03-24 株式会社安川電機 エンコーダシステム及びセンサシステム
WO2016136298A1 (ja) * 2015-02-27 2016-09-01 ソニー株式会社 アクチュエータ及び医療用支持アーム装置
JP2017085730A (ja) * 2015-10-26 2017-05-18 日産自動車株式会社 電動車両の制御方法、及び、制御装置

Also Published As

Publication number Publication date
US20210359625A1 (en) 2021-11-18
EP3920409A1 (en) 2021-12-08
EP3920409A4 (en) 2022-09-07
JP7116930B2 (ja) 2022-08-12
CN113302836A (zh) 2021-08-24
JPWO2020157883A1 (ja) 2021-10-14
US11757385B2 (en) 2023-09-12

Similar Documents

Publication Publication Date Title
TWI466432B (zh) 馬達控制裝置
CN102969971B (zh) 电动机控制装置
EP3605829B1 (en) Electric motor control device, compressor, and electric motor control method
JP5652678B2 (ja) 電動機制御装置
JP6671500B2 (ja) 電気モーターを制御する方法及びシステム
JP4294344B2 (ja) 電動機の制御方法及び制御装置
JP2010284758A (ja) ロボットの制御装置、及びロボットの制御方法
JP2003033066A (ja) 速度制御装置
JP6161854B1 (ja) モータ制御システム
WO2020157883A1 (ja) モータ制御システム、エンコーダ、サーボモータ
JP2017099084A (ja) 多慣性共振システムにおける共振抑制制御装置
JP2008228484A (ja) モータ制御装置およびモータ制御方法
JP2006215626A (ja) 位置制御装置
JP6594600B1 (ja) モータ駆動制御装置、連結制御システム、およびモータ駆動制御方法
JPH10155292A (ja) 2慣性系制御回路
JP6556353B2 (ja) エレベーターの制御装置
JP4726346B2 (ja) サーボモータ制御装置
JP2004032905A (ja) 同期電動機の制御装置
WO2020003822A1 (ja) 制御装置、制御方法、情報処理プログラム、および記録媒体
JP2011078192A (ja) 電動機の制御装置
JP2019133537A (ja) アクチュエータ制御装置及びアクチュエータ制御方法
JP2007129789A (ja) モータ制御装置
JP2003271246A (ja) 速度制御装置
JP2014135860A (ja) モータ速度制御装置
JP7454767B2 (ja) モータ制御システム、モータ制御方法、及びプログラム

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 19913121

Country of ref document: EP

Kind code of ref document: A1

ENP Entry into the national phase

Ref document number: 2020569251

Country of ref document: JP

Kind code of ref document: A

NENP Non-entry into the national phase

Ref country code: DE

ENP Entry into the national phase

Ref document number: 2019913121

Country of ref document: EP

Effective date: 20210831