WO2020003738A1 - 制御パラメータ調整方法および制御パラメータ調整装置 - Google Patents

制御パラメータ調整方法および制御パラメータ調整装置 Download PDF

Info

Publication number
WO2020003738A1
WO2020003738A1 PCT/JP2019/018169 JP2019018169W WO2020003738A1 WO 2020003738 A1 WO2020003738 A1 WO 2020003738A1 JP 2019018169 W JP2019018169 W JP 2019018169W WO 2020003738 A1 WO2020003738 A1 WO 2020003738A1
Authority
WO
WIPO (PCT)
Prior art keywords
speed
control
controller
motor
gain
Prior art date
Application number
PCT/JP2019/018169
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 日本電産株式会社
Publication of WO2020003738A1 publication Critical patent/WO2020003738A1/ja

Links

Images

Classifications

    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B17/00Systems involving the use of models or simulators of said systems
    • G05B17/02Systems involving the use of models or simulators of said systems electric
    • 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

Definitions

  • the present invention relates to a control parameter adjusting method and a control parameter adjusting device for a servomotor.
  • Servo motors require different speed control and different position control for different loads depending on the device used, so it is required to appropriately adjust control parameters (gain).
  • adjusting the gain of the servo motor to an optimum value requires a large amount of calculation and takes time. Therefore, it is required to reduce the amount of calculation for adjusting the gain.
  • Japanese Patent Application Laid-Open Publication No. 2017-102519 discloses a control parameter adjustment device that adjusts control parameters by simulation. This control parameter adjustment device first causes a simulation to be repeatedly performed using a machine model, and extracts a candidate having an optimum control parameter value. Next, the control parameter adjustment device searches for control parameters within a narrow range determined by the extracted candidates, and repeatedly operates the machine to find an optimum value of the control parameters.
  • an object of the present invention is to provide a control parameter adjustment method and a control parameter adjustment device capable of reducing a tuning time when adjusting a control parameter by simulation.
  • a control parameter adjusting method includes a controller model in which a controller having a position controller and a speed controller for performing drive control of a motor is modeled. Generating a simulation model including a motor model obtained by modeling a motor and a load model obtained by modeling a load connected to the motor; and executing a simulation using the simulation model in a speed control mode; Evaluating the parameters and selecting the optimum value, and using the selected parameters of the speed controller, executing the simulation in the position / speed control mode, and evaluating the parameters of the position controller to obtain the optimum value. And e.
  • a control parameter adjusting device includes a controller model that models a controller having a position controller and a speed controller for performing drive control of a motor, and a motor model that models the motor. And a simulation model generation unit that generates a simulation model including a load model obtained by modeling a load connected to the motor, and executes a simulation using the simulation model in a speed control mode, and sets parameters of the speed controller. The simulation is executed in the position / velocity control mode by using the first parameter selection unit that evaluates and selects the optimum value, and the selected parameters of the speed controller, and the parameters of the position controller are evaluated. A second parameter selection unit for selecting an optimum value.
  • the optimal parameters are sequentially selected from the inner loop (speed controller) of the feedback control system. Therefore, the amount of calculation when adjusting the control parameters by simulation is reduced, and the tuning time is reduced. be able to.
  • FIG. 1 is a diagram illustrating a specific configuration of a control parameter adjustment system according to the present embodiment.
  • FIG. 2 is a block diagram showing a detailed structure of the controller.
  • FIG. 3 is a control parameter adjustment sequence.
  • FIG. 4 is a flowchart illustrating a control parameter adjustment processing procedure.
  • FIG. 5 shows the relationship between the adjustment parameters and the evaluation items when the position response is emphasized.
  • FIG. 6 shows the relationship between the adjustment parameters and the evaluation items when the speed response is emphasized.
  • FIG. 7 is a configuration example of a control parameter adjustment system.
  • FIG. 8 is a configuration example of a mechanical and electric integrated motor.
  • FIG. 9 is a diagram illustrating a relationship between the MCU and the motor.
  • FIG. 10 is a diagram illustrating a USB-UART conversion cable.
  • FIG. 11 is another configuration example of the control parameter adjustment system.
  • FIG. 12 is another configuration example of the control parameter adjustment system.
  • FIG. 13 is another configuration example of the control parameter adjustment system.
  • FIG. 1 is a diagram illustrating a specific configuration of a control parameter adjustment system according to the present embodiment.
  • the control parameter adjustment system includes a motor device 100 and an arithmetic device 200.
  • the motor device 100 is an electromechanical integrated motor in which the motor 101 and the motor control device 110 are integrated will be described.
  • the motor device 100 includes a motor 101 and a motor control device 110.
  • the motor 101 is, for example, a three-phase brushless motor, and is supplied with driving power by a motor control device 110.
  • a load 103 is connected to the motor 101 via a connection shaft 102.
  • a sensor unit 104 for acquiring rotation position information of the motor 101 is attached to the motor 101.
  • the sensor unit 104 includes, for example, a magnetic sensor. In the present embodiment, a case where the sensor unit 104 includes a Hall element will be described.
  • the motor control device 110 controls the position and speed of the motor 101.
  • the motor control device 110 is mounted on a circuit board (not shown) arranged near a housing (not shown) of the motor 101.
  • the motor control device 110 includes a position command generator 111, a controller 112, a position detector 113, a power converter 114, a control parameter storage 115, a motor model number storage 116, and a communication interface (communication I / F) 117.
  • the position command generator 111 outputs a position command value of the motor 101 to the controller 112.
  • the position command value may be a command value received from the arithmetic device 200 or a command value received from a host device (not shown) different from the arithmetic device 200.
  • the controller 112 includes a controller having a position controller 112a for controlling the driving of the motor 101, a speed controller 112b, and a current controller 112c, and a speed calculator 112d.
  • FIG. 2 is a block diagram illustrating a detailed structure of a controller included in the controller unit 112.
  • the position controller 112a determines the speed command value based on the position command value ⁇ * , the position detection value ⁇ , and the position proportional gain Kpp and the position feed forward gain (position FF gain) Kpff which are parameters of the position controller 112a.
  • Output ⁇ * .
  • the position command value ⁇ * is output by the position command generator 111.
  • the position detection value ⁇ is detected by a position detection unit 113 described later.
  • the speed detection value ⁇ is calculated by a speed calculation unit 112d described later.
  • the current controller 112c determines the d-axis voltage command value Vd * and the q-axis voltage command value Vq *. Is output.
  • the position detection unit 113 acquires a signal from the Hall element included in the sensor unit 104, detects the rotational position of the motor 101 based on the acquired signal, and outputs the detection result as a position detection value (position response value) ⁇ . I do.
  • the speed calculation unit 112d calculates the rotation speed of the motor 101 based on the rotation position of the motor 101 detected by the position detection unit 113, and outputs the calculation result as a detected speed value ⁇ .
  • the power converter 114 converts the two-phase voltage command values Vd * , Vq * output by the controller 112 into three-phase voltage command values (Vu, Vv, Vw), and these three-phase voltage command values.
  • the power conversion unit 114 controls on / off of a switching element included in the inverter based on the generated PWM signal, and supplies driving power to the motor 101.
  • the control parameter storage unit 115 stores parameters of a controller included in the controller unit 112. Each controller included in the controller unit 112 outputs the above-described command value in accordance with the parameters stored in the control parameter storage unit 115.
  • the parameters stored in the control parameter storage unit 115 are rewritable.
  • the motor model number storage unit 116 stores model number information as identification information of the motor 101. Note that the identification information of the motor 101 is not limited to the model number information, and a controller model that models a controller for performing drive control of the motor 101 and a motor model that models the motor 101 can be selected. Information is sufficient.
  • the communication I / F 117 is an interface for performing communication with the arithmetic device 200.
  • the communication method may be wired or wireless.
  • the communication standard, scale, and configuration are not particularly limited.
  • the motor control device 110 Upon receiving the model number request command from the arithmetic unit 200 via the communication I / F 117, the motor control device 110 transmits the model number information stored in the motor model number storage unit 116 to the arithmetic unit 200 via the communication I / F 117. . Further, when the motor control device 110 receives the parameter of the controller from the arithmetic device 200 via the communication I / F 117, the motor control device 110 stores the received parameter in the control parameter storage unit 115. Further, upon receiving a motor drive command from the arithmetic device 200 via the communication I / F 117, the motor control device 110 drives the motor 101 under designated conditions.
  • the motor control device 110 receives the transmission request command of the motor information from the arithmetic device 200 via the communication I / F 117
  • the motor information includes, for example, position information, rotation speed information, current information, voltage information, The torque information and the like are transmitted to the arithmetic device 200 via the communication I / F 117.
  • the arithmetic device 200 includes an input unit 201 for inputting data, and a display unit 202 for displaying data.
  • the arithmetic device 200 can be, for example, a personal computer (PC).
  • the input unit 201 includes a pointing device such as a keyboard and a mouse, and is operable by a user to operate a GUI (Graphical User Interface).
  • the display unit 202 includes a monitor such as a liquid crystal display, and displays the GUI. In addition, the display unit 202 can display the processing result of the arithmetic device 200 as an image, characters, or the like.
  • the arithmetic device 200 includes a control parameter adjustment device 210 that adjusts a parameter of a controller for performing drive control of the motor 101.
  • the control parameter adjustment device 210 adjusts the parameters of the controller using simulation.
  • the control parameter adjustment device 210 first models the controller 101, which models the controller having the position controller 112a and the speed controller 112b for performing the drive control of the motor 101, and the motor 101.
  • a simulation model including a motor model and a load model obtained by modeling the load 103 connected to the motor 101 is generated.
  • the control parameter adjusting device 210 executes a simulation using the simulation model in the speed control mode, evaluates the parameters of the speed controller 112b, and selects an optimum value.
  • the control parameter adjusting device 210 executes the above simulation in the position / velocity control mode using the selected parameters of the speed controller 112b, evaluates the parameters of the position controller 112a, and selects an optimum value.
  • the speed control mode is a control mode in which the position controller is invalidated and the influence of the parameters of the position controller is eliminated.
  • the position / speed control mode (hereinafter, referred to as “position control mode”) is a control mode in which the position controller and the speed controller are enabled.
  • the arithmetic unit 200 includes a communication I / F 211, a motor model number determination unit 212, a controller data storage unit 213, a motor data storage unit 214, a total mechanical characteristic estimation unit 215, a simulation model generation unit 216, and a user setting. And a parameter automatic adjustment unit 218.
  • the communication I / F 211 is an interface for performing communication with the motor control device 110.
  • the motor model number determination unit 212 acquires the identification information of the motor 101 from the motor control device 110 via the communication I / F 211, and determines the model number of the motor 101. Then, the motor model number determination unit 212 calls a controller model corresponding to the model number of the motor 101 from among the plurality of controller models stored in the controller data storage unit 213. Further, the motor model number determination unit 212 calls a motor model corresponding to the model number of the motor 101 from the plurality of motor models stored in the motor data storage unit 214. The controller model and the motor model called by the motor model number determination unit 212 are used in a simulation model generation unit described later. Note that the motor model number determination unit 212 acquires the model number information selected from the GUI displayed on the display unit 202 by the user operating the input unit 201, and based on the acquired model number information, the controller model and the motor model. May be called.
  • the controller data storage unit 213 stores a plurality of controller models in association with identification information (model number) of the motor 101.
  • the motor data storage unit 214 stores a plurality of motor models in association with identification information (model number) of the motor 101.
  • the total mechanical characteristic estimating unit 215 estimates the total mechanical characteristic of the motor 101, the connecting shaft 102, and the load 103. Specifically, first, the total mechanical characteristic estimation unit 215 calculates the current command value Iq * and the position response value (position detection value) ⁇ when the motor 101 is operated under the set conditions, using the motor control device 110 Is obtained from the controller unit 112. That is, the arithmetic device 200 transmits a motor drive command to the motor control device 110 to operate the motor 101, and acquires the current command value Iq * and the position response value ⁇ .
  • J is the inertia
  • D is the viscous friction coefficient
  • C is the total value of the Coulomb friction torque and the steady load torque.
  • the total mechanical characteristic estimation unit 215 generates a load model based on the calculated parameters J, D, and C.
  • the simulation model generation unit 216 generates a simulation model including a drive command generation unit 216a, a controller model 216b, a motor model 216c, and a load model 216d.
  • the drive command generation unit 216a is a model that generates a command value to be input to the controller when executing a simulation according to a simulation condition determined by a simulation condition determination unit 218a described later.
  • the command value includes a speed command value of a pulse waveform (speed step), a speed command value of a trapezoidal waveform (pseudo-trapezoidal acceleration / deceleration), and the like.
  • the controller model 216b is a model called by the motor model number determination unit 212 from the controller model storage unit 213, and the motor model 216c is a model called by the motor model number determination unit 212 from the motor model storage unit 214. Further, the load model 216d is a model generated by the total mechanical characteristic estimation unit 215.
  • the user setting unit 217 receives information input by the user operating the GUI displayed on the display unit 202 using the input unit 201, and sets setting values necessary for executing the simulation.
  • the user setting unit 217 includes a driving condition setting unit 217a, an adjustment location setting unit 217b, a priority performance item setting unit 217c, and a target value setting unit 217d.
  • the drive condition setting unit 217a sets, as the set value, a set drive condition for determining a drive condition for simulation.
  • the set driving condition can be, for example, a driving pattern of the motor rotation speed specified by the user operating the GUI.
  • the adjustment point setting unit 217b sets an adjustment point within the set driving conditions as the above-mentioned set value. That is, when performing the parameter adjustment, the adjustment point setting unit 217b narrows down the parameter adjustment target to which part of the drive pattern set in the drive condition setting unit 217a is to be adjusted.
  • the emphasis performance item setting unit 217c sets the control performance to be emphasized for the motor as the set value. Specifically, the priority performance item setting unit 217c sets whether to emphasize the speed control response or the position control response of the motor.
  • the target value setting unit 217d sets, as the set value, a target value of an evaluation item when evaluating the control performance at the time of simulation.
  • the evaluation items include at least one of a time constant, a settling time, and a deviation between the command value and the response value.
  • the parameter automatic adjustment unit 218 includes a simulation condition determination unit 218a and a control performance evaluation unit 218b.
  • the simulation condition determining unit 218a determines a simulation condition based on each set value set in the user setting unit 217, and executes a simulation using a simulation model according to the determined simulation condition.
  • the simulation conditions include a control mode, a driving condition of a motor (a driving condition for simulation), parameters of a controller to be adjusted (speed proportional gain K ⁇ p, speed integral gain K ⁇ i, speed FF gain K ⁇ ff, position proportional gain Kpp). , Position FF gain Kpff).
  • the simulation condition determination unit 218a can select either the speed control mode or the position control mode as the control mode. Further, the simulation condition determining unit 218a can determine the driving condition for the simulation based on the set driving condition set by the driving condition setting unit 217a.
  • the driving conditions for simulation include, for example, a driving pattern obtained by extracting characteristics of the driving conditions set by the user and simplifying the driving conditions.
  • the control performance evaluation unit 218b evaluates control performance at the time of simulation.
  • the control performance evaluation unit 218b evaluates the evaluation items such as the time constant and the settling time obtained by the simulation, the deviation between the command value and the response value using the target value set by the target value setting unit 217d, and Choose the optimal value. Further, the control performance evaluation unit 218b can adjust the optimum value of the selected parameter according to the control performance to be emphasized set by the important performance item setting unit 217c.
  • the control parameter adjustment device 210 evaluates one parameter with one control performance as an evaluation item, and selects an optimum value.
  • the procedure for adjusting the parameters of the controller will be described in detail with reference to FIG.
  • the simulation model generation unit 216 stores the controller model 216b and the motor model 216c from the controller data storage unit 213 and the motor data storage unit 214 based on the identification information (model number information) of the motor 101, respectively. get. Further, the simulation model generation unit 216 determines driving conditions of the motor 101 and drives the motor 101 based on the determined driving conditions.
  • the simulation model generation unit 216 acquires the current command value Iq * output by the speed controller 112b of the motor control device 110 and the position response value (position detection value) ⁇ detected by the position detection unit 113. . Then, the simulation model generation unit 216 calculates parameters J, D, and C constituting the mechanical characteristics represented by the above equation (1) based on the obtained current command value Iq * and position response value ⁇ , A load model 216d is generated. Further, the simulation model generation unit 216 generates a simulation model by combining the controller model 216b, the motor model 216c, and the load model 216d.
  • step S2 the simulation condition determination unit 218a extracts the characteristics of the set driving conditions set by the user, and proceeds to step S3.
  • the characteristics of the set driving conditions include a maximum rotation speed, a rise time, and the like.
  • step S3 the simulation condition determination unit 218a simplifies the set driving conditions set by the user based on the characteristics of the set driving conditions, and generates driving conditions for simulation.
  • step S4 the simulation condition determination unit 218a sets a basic gain, which is an initial parameter value.
  • the basic gains (speed proportional gain K ⁇ p_nom, speed integral gain K ⁇ i_nom, speed FF gain K ⁇ ff_nom, position proportional gain Kpp_nom, position FF gain Kpff_nom) are determined by the mechanical characteristic values calculated by the total mechanical characteristic estimating unit 215.
  • ⁇ s_nom represents the band of the speed controller.
  • Kpp_nom ⁇ s_nom / 2.5 (6)
  • Kpff_nom 0 (7)
  • the parameter automatic adjustment unit 218 of the control parameter adjustment device 210 performs an evaluation by simulation while changing a parameter (gain) within a predetermined range, and selects an optimum value of a parameter of the controller.
  • the predetermined range is determined based on the basic gain.
  • the parameter automatic adjustment unit 218 prepares an adjustment coefficient (adjustment coefficient) by which each basic gain is multiplied, and adjusts the adjustment coefficient between a preset upper limit value and a preset lower limit value.
  • the parameter (gain) to be evaluated is changed by changing the value by a predetermined step value.
  • the parameter automatic adjustment unit 218 evaluates the control performance of each parameter to be evaluated by simulation, and selects an optimal value of the parameter. The method of adjusting the gain will be described later in detail.
  • step S5 the parameter automatic adjustment unit 218 executes a simulation using the simulation model in the speed control mode, and selects an optimum value of the speed control band (speed proportional gain K ⁇ p, speed integral gain K ⁇ i). Specifically, the parameter automatic adjustment unit 218 inputs the speed command value (speed step) of the pulse waveform to the speed controller, and executes the simulation in the speed control mode. At this time, the parameter automatic adjustment unit 218 performs the simulation with the speed FF gain K ⁇ ff set to 0. Then, the parameter automatic adjustment unit 218 evaluates the speed control band (speed proportional gain K ⁇ p, speed integral gain K ⁇ i) using the time constant of the speed controller obtained by the simulation as an evaluation item, and optimizes the speed control band. To elect.
  • the parameter automatic adjustment unit 218 simultaneously changes the speed proportional gain K ⁇ p and the speed integral gain K ⁇ i while the ratio between the speed proportional gain K ⁇ p and the speed integral gain K ⁇ i is fixed, and performs the speed control. Select the optimal value of the band.
  • the time constant which is an evaluation item, is a rise time until a response value reaches 63.2% of a target value (steady speed) when a speed step is input.
  • the control performance evaluation unit 218b selects a gain having a time constant closest to the theoretical time constant by a plurality of simulations, and selects the gain as an optimum value.
  • step S6 the parameter automatic adjustment unit 218 executes a simulation using the simulation model in the speed control mode, and selects an optimum value of the speed integration gain K ⁇ i.
  • the parameter automatic adjustment unit 218 inputs the speed command value (speed step) of the pulse waveform to the speed controller, and executes the simulation in the speed control mode.
  • the parameter automatic adjustment unit 218 performs the simulation with the speed FF gain K ⁇ ff set to 0.
  • the parameter automatic adjustment unit 218 evaluates the speed integration gain K ⁇ i using the time constant of the speed controller obtained by the simulation as an evaluation item, and selects an optimum value of the speed integration gain K ⁇ i.
  • the time constant which is an evaluation item, is a rise time until a response value reaches 95% of a target value (steady speed) when a speed step is input.
  • the control performance evaluation unit 218b selects a gain whose time constant is smaller than 2.4 times the theoretical time constant by a plurality of simulations, and selects the gain as an optimum value.
  • step S7 the automatic parameter adjustment unit 218 executes a simulation using the simulation model in the speed control mode, and selects an optimum value of the speed FF gain K ⁇ ff. Specifically, the parameter automatic adjustment unit 218 inputs a speed command value (pseudo-trapezoidal acceleration / deceleration) of a trapezoidal waveform to a speed controller, and executes a simulation in a speed control mode. At this time, the parameter automatic adjustment unit 218 performs the simulation with the acceleration of acceleration / deceleration set to 1.25 times.
  • a speed command value prseudo-trapezoidal acceleration / deceleration
  • the parameter automatic adjustment unit 218 evaluates the speed FF gain K ⁇ ff using the settling time of the speed controller obtained by the simulation as an evaluation item, and selects an optimum value of the speed FF gain K ⁇ ff.
  • the settling time which is an evaluation item, is a speed settling time at a steady speed.
  • the control performance evaluation unit 218b selects a gain having a minimum settling time by a plurality of simulations, and selects the gain as an optimum value.
  • step S8 the automatic parameter adjustment unit 218 executes a simulation using the simulation model in the position control mode, and selects an optimum value of the position control band (position proportional gain Kpp).
  • the control performance evaluation unit 218b inputs a motor stop position command value to the position controller, and executes a simulation in the position control mode.
  • the parameter automatic adjustment unit 218 executes the simulation with the driving condition of the motor as the pseudo trapezoidal acceleration / deceleration.
  • the parameter automatic adjustment unit 218 evaluates the position proportional gain Kpp using the settling time of the position controller obtained by the simulation as an evaluation item, and selects an optimum value of the position proportional gain Kpp.
  • the settling time which is an evaluation item, is the position settling time at the time of stopping.
  • the control performance evaluation unit 218b selects a gain with a minimum settling time by a plurality of simulations, and selects the gain as an optimum value.
  • step S9 the parameter automatic adjustment unit 218 uses the deviation (position command response error) between the position command value and the position response value of the motor as an evaluation item to evaluate the position FF gain Kpff. Is evaluated, and the optimum value of the position FF gain Kpff is adjusted. Specifically, the parameter automatic adjustment unit 218 executes a simulation using the simulation model in the position control mode under user setting conditions. Then, the parameter automatic adjustment unit 218 evaluates the position FF gain Kpff using the position command response error obtained by the simulation as an evaluation item, and adjusts the optimum value of the position FF gain Kpff.
  • control performance evaluation unit 218b selects a gain by which the position command response error is equal to or less than 0.8 times the target value by a plurality of simulations, and reselects the gain as an optimum value.
  • the evaluation of the position FF gain Kpff can be performed at a position specified by the user.
  • step S10 the parameter automatic adjustment unit 218 evaluates the position control band (position proportional gain Kpp) using the position command response error as an evaluation item, and adjusts the optimal value of the position proportional gain Kpp. Specifically, the parameter automatic adjustment unit 218 executes a simulation using the simulation model in the position control mode under user setting conditions. Then, the parameter automatic adjustment unit 218 evaluates the position proportional gain Kpp using the position command response error obtained by the simulation as an evaluation item, and adjusts the optimum value of the position proportional gain Kpp.
  • position proportional gain Kpp position proportional gain Kpp
  • control performance evaluation unit 218b selects a gain by which the position command response error is equal to or less than 0.8 times the target value by a plurality of simulations, and reselects the gain as an optimum value.
  • the evaluation of the position proportional gain Kpp can be performed at a position specified by the user.
  • the parameter automatic adjustment unit 218 performs the evaluation by the simulation in the order of the position FF gain Kpff and the position control band (the position proportional gain Kpp), and adjusts the optimum value. I do. If the parameter automatic adjustment unit 218 determines that the desired control performance has been obtained as a result of adjusting the optimal value of the position FF gain Kpff in step S9, the parameter adjustment ends without performing the processing in step S10. May be.
  • the parameter automatic adjustment unit 218 uses the unevenness of the deviation between the motor speed command value and the speed response value (speed deviation unevenness) as an evaluation item to determine the position FF.
  • the gain Kpff is evaluated, and the optimum value of the position FF gain Kpff is adjusted.
  • the parameter automatic adjustment unit 218 executes a simulation using the simulation model in the position control mode under user setting conditions. Then, the parameter automatic adjustment unit 218 evaluates the position FF gain Kpff using the speed deviation unevenness obtained by the simulation as an evaluation item, and adjusts the optimum value of the position FF gain Kpff.
  • control performance evaluation unit 218b selects a gain with which the speed deviation unevenness is 0.9 times or less of the target value by a plurality of simulations, and reselects the gain as an optimum value.
  • the evaluation of the position FF gain Kpff can be performed at a position specified by the user.
  • step S12 the parameter automatic adjustment unit 218 evaluates the speed FF gain K ⁇ ff using the speed deviation unevenness as an evaluation item, and adjusts the optimum value of the speed FF gain K ⁇ ff. Specifically, the parameter automatic adjustment unit 218 executes a simulation using the simulation model in the position control mode under user setting conditions. Then, the parameter automatic adjustment unit 218 evaluates the speed FF gain K ⁇ ff using the speed deviation unevenness obtained by the simulation as an evaluation item, and adjusts the optimum value of the speed FF gain K ⁇ ff.
  • control performance evaluation unit 218b selects a gain with which the speed deviation unevenness is 0.9 times or less of the target value by a plurality of simulations, and reselects the gain as an optimum value.
  • the evaluation of the speed FF gain K ⁇ ff can be performed at a location specified by the user.
  • step S13 the parameter automatic adjustment unit 218 evaluates the speed control band (speed proportional gain K ⁇ p, speed integral gain K ⁇ i) using the speed deviation unevenness as an evaluation item, and adjusts the optimum value of the speed control band.
  • the parameter automatic adjustment unit 218 executes a simulation using the simulation model in the position control mode under user setting conditions. Then, the parameter automatic adjustment unit 218 evaluates the speed control band (speed proportional gain K ⁇ p, speed integral gain K ⁇ i) using the speed deviation unevenness obtained by the simulation as an evaluation item, and adjusts the optimum value of the speed control band.
  • control performance evaluation unit 218b selects a gain with which the speed deviation unevenness is 0.9 times or less of the target value by a plurality of simulations, and reselects the gain as an optimum value.
  • the evaluation of the speed control band can be performed at a location designated by the user.
  • the parameter automatic adjustment unit 218 determines the position FF gain Kpff, the speed FF gain K ⁇ ff, and the speed control band (speed proportional gain K ⁇ p, speed integral gain K ⁇ i) in this order. Evaluate and adjust the optimal value. If the parameter automatic adjustment unit 218 determines that the desired control performance has been obtained as a result of adjusting the optimal value of the position FF gain Kpff in step S11, the parameter adjustment unit 218 adjusts the parameter without performing the processing in step S12 and thereafter. It may end.
  • the parameter adjustment unit 218 determines that the desired control performance has been obtained as a result of adjusting the optimum value of the speed FF gain K ⁇ ff in step S12, the parameter adjustment unit 218 ends the parameter adjustment without performing the processing in step S13. May be.
  • the arithmetic device 200 transmits the optimal parameters to the motor control device 110 via the communication I / F 211.
  • the motor control device 110 receives the optimal parameters transmitted from the arithmetic device 200 via the communication I / F 117, the motor control device 110 stores the received optimal parameters in the control parameter storage unit 115. Thereby, the controller unit 112 of the motor control device 210 operates according to the optimum parameters adjusted by the control parameter adjustment device 210.
  • the parameter automatic adjustment unit 218 increments the adjustment coefficient for each of the basic gains represented by the above equations (3) to (7) between a preset upper limit value and a preset lower limit value.
  • the parameter (gain) to be evaluated is changed, the control performance is evaluated by simulation for each of the plurality of parameters to be evaluated, and the optimum value of the parameter is selected.
  • the adjustment coefficient is Kcoef
  • the lower limit of the adjustment coefficient Kcoef is Llow
  • the upper limit of the adjustment coefficient Kcoef is Lup
  • the step value is Vstep
  • the control is performed while increasing the adjustment coefficient Kcoef from the lower limit Llow to the upper limit Lup. Evaluating performance.
  • the parameter automatic adjustment unit 218 sets the adjustment coefficient Kcoef to the lower limit Llow, and proceeds to step S22.
  • the parameter automatic adjustment unit 218 calculates the gain K to be evaluated by multiplying the basic gain K_nom by the adjustment coefficient Kcoef.
  • step S23 the parameter automatic adjustment unit 218 evaluates the control performance of the gain K to be evaluated by simulation.
  • the relationship between each gain and the evaluation item is shown in FIGS.
  • FIG. 5 shows the relationship between the gain and the evaluation item adjusted when the emphasized control performance is the response of the position control
  • FIG. 6 shows the gain and the evaluation item adjusted when the emphasized control performance is the response of the speed control.
  • step S24 as a result of evaluating the control performance in step S23, the parameter automatic adjustment unit 218 determines whether or not the optimal value of the gain can be selected (control performance OK). Then, when the parameter automatic adjustment unit 218 determines that the optimum value of the gain can be selected, the process of FIG. 4 ends as it is. On the other hand, when it is determined that the optimum value of the gain cannot be selected, the parameter automatic adjustment unit 218 proceeds to step S25.
  • step S25 the parameter automatic adjustment unit 218 increases the adjustment coefficient Kcoef by the step value Vstep, and proceeds to step S26.
  • step S26 the parameter automatic adjustment unit 218 determines whether the adjustment coefficient Kcoef has exceeded the upper limit value Lup. The gain K is updated, and the evaluation of the control performance is repeated. On the other hand, when it is determined in step S26 that the adjustment coefficient Kcoef has exceeded the upper limit Lup, the parameter automatic adjustment unit 218 ends the processing in FIG.
  • the parameter automatic adjustment unit 218 may determine whether the adjustment coefficient Kcoef has fallen below the lower limit Llow (Kcoef ⁇ Llow?).
  • the control parameter adjustment device 210 includes the simulation model generation unit 216 that generates a simulation model including the controller model 216b, the motor model 216c, and the load model 216d.
  • the controller model 216b is a model obtained by modeling a controller having the position controller 112a and the speed controller 112b for controlling the driving of the motor 101.
  • the motor model 216c is a model that models the motor 101
  • the load model 216d is a model that models the load 103 connected to the motor 101.
  • the control parameter adjustment device 210 executes a simulation using the simulation model generated by the simulation model generation unit 216 in the speed control mode, evaluates the parameters of the speed controller 112b, and selects a first parameter for selecting an optimal value.
  • a selection unit A second parameter for executing a simulation in a position / velocity control mode (position control mode) using the selected parameters of the speed controller 112b and evaluating parameters of the position controller 112a to select an optimum value;
  • steps S5 to S7 in FIG. 3 correspond to a first parameter selection unit
  • steps S8 to S13 in FIG. 3 correspond to a second parameter selection unit.
  • the control structure of the motor 101 is a cascade type, first, optimal parameters are selected in order from the inner loop (speed controller) of the feedback control system. That is, the gain of the speed controller is tuned by setting the control mode, which is a simulation condition, to the speed control mode.
  • the parameters of the speed controller can be adjusted without affecting the parameters of the position controller, and the optimum values of the parameters of the speed controller can be selected with a smaller number of verifications. Therefore, the amount of calculation for parameter adjustment can be reduced and the tuning time can be reduced as compared with the case where the optimum values are searched for many parameters at the same time.
  • the parameters of the position controller include a position proportional gain Kpp and a position FF gain Kpff
  • the parameters of the speed controller include a speed control band (speed proportional gain K ⁇ p, speed integral gain K ⁇ i), speed integral gain K ⁇ i, and speed. Including the FF gain K ⁇ ff.
  • the control parameter adjusting device 210 converts the speed command value (speed step) of the pulse waveform into the speed controller. To execute a simulation, evaluate the speed control band using the time constant of the speed controller as an evaluation item, and select an optimum value of the speed control band.
  • the speed control band (speed proportional gain K ⁇ p, speed integral gain K ⁇ i) of the speed controller can be appropriately adjusted.
  • the control parameter adjusting device 210 inputs a speed command value (speed step) of the pulse waveform to the speed controller and executes a simulation.
  • the speed integral gain K ⁇ i is evaluated using the time constant of the speed controller as an evaluation item, and the optimum value of the speed integral gain K ⁇ i can be selected. Thereby, the speed integration gain K ⁇ i of the speed controller can be appropriately adjusted.
  • the control parameter adjustment device 210 When selecting the optimum value of the speed FF gain K ⁇ ff, which is a parameter of the speed controller, the control parameter adjustment device 210 inputs the speed command value of the trapezoidal waveform (pseudo-trapezoidal acceleration / deceleration) to the speed controller to execute the simulation. Then, the speed FF gain K ⁇ ff is evaluated using the settling time of the speed controller as an evaluation item, and the optimum value of the speed FF gain K ⁇ ff is selected. Thereby, the speed FF gain K ⁇ ff of the speed controller can be appropriately adjusted.
  • the control parameter adjustment device 210 selects the optimum value by evaluating the speed control band (K ⁇ p, K ⁇ i), the speed integration gain K ⁇ i, and the speed FF gain K ⁇ ff in this order. . Thereby, the parameters of the speed controller can be adjusted one by one without fail.
  • the speed command value of the pulse waveform is input to the speed controller to perform a simulation, and the speed proportional gain K ⁇ p and the speed integration gain K ⁇ i are determined in order.
  • the speed command value of the trapezoidal waveform is input to the speed controller. Simulation to determine the speed FF gain K ⁇ ff.
  • the control parameter adjusting device 210 When selecting the optimum value of the position proportional gain Kpp, which is a parameter of the position controller, the control parameter adjusting device 210 inputs a position command value for stopping the motor to the position controller, executes a simulation, and executes position control.
  • the position proportional gain Kpp is evaluated using the settling time of the container as an evaluation item, and an optimum value of the position proportional gain Kpp is selected. This makes it possible to appropriately adjust the position proportional gain Kpp (position control band) of the position controller.
  • the control parameter adjusting apparatus 210 can evaluate the parameter with one control performance as an evaluation item for one parameter, and select the optimum value.
  • the parameters of the controller can be surely adjusted one by one, so that the number of times of repeated verification (the number of times of evaluation) in tuning can be reduced, and the tuning time can be appropriately reduced.
  • control parameter adjustment device 210 executes the simulation in the position / velocity control mode (position control mode) using the optimum value of the selected parameter, and according to the control performance to be emphasized, the optimum value of the selected parameter. Can be adjusted.
  • the control performance to be emphasized is the response of the position control
  • the control parameter adjustment device 210 evaluates the position FF gain Kpff using the deviation (position command response error) between the position command value and the position response value of the motor as an evaluation item, The optimum value of the position FF gain Kpff is adjusted. This makes it possible to adjust the position controller parameter (position FF gain Kpff) with emphasis on the position control response.
  • the control parameter adjusting device 210 evaluates the position proportional gain Kpp using the deviation (position command response error) between the position command value and the position response value of the motor as an evaluation item. Then, the optimum value of the position proportional gain Kpp is adjusted. This makes it possible to adjust the position controller parameter (position proportional gain Kpp) with emphasis on the response of the position control. Furthermore, when the control performance to be emphasized is the response of the position control, the control parameter adjustment device 210 evaluates the position FF gain Kpff and the position proportional gain Kpp in this order to adjust the optimum value. This makes it possible to appropriately adjust the parameters of the controller with emphasis on the response of the position control.
  • the control parameter adjustment device 210 evaluates the position FF gain Kpff using the unevenness of the deviation between the motor speed command value and the speed response value (speed deviation unevenness) as an evaluation item. Then, the optimum value of the position FF gain Kpff is adjusted. This makes it possible to adjust the position controller parameter (position FF gain Kpff) with emphasis on speed control response. Further, when the control performance to be emphasized is the response of the speed control, the control parameter adjustment device 210 evaluates the speed FF gain K ⁇ ff using the unevenness of the deviation between the motor speed command value and the speed response value (speed deviation unevenness) as an evaluation item. Then, the optimum value of the speed FF gain K ⁇ ff is adjusted. This makes it possible to adjust the parameter (speed FF gain K ⁇ ff) of the speed controller with emphasis on the response of the speed control.
  • the control parameter adjusting device 210 uses the unevenness of the deviation between the speed command value and the speed response value of the motor (speed deviation unevenness) as an evaluation item to evaluate the speed control band (speed proportionality).
  • the gain K ⁇ p and the speed integration gain K ⁇ i) are evaluated, and the optimum value of the speed control band is adjusted. This makes it possible to adjust the parameters (K ⁇ p, K ⁇ i) of the speed controller with emphasis on the speed control response.
  • the control parameter adjusting device 210 adjusts the optimum value by evaluating the position FF gain Kpff, the speed FF gain K ⁇ ff, and the speed control band (K ⁇ p, K ⁇ i) in this order. . This makes it possible to appropriately adjust the parameters of the controller with emphasis on the speed control response. As described above, the parameters of the controller can be appropriately adjusted according to the control performance to be emphasized (position-oriented, speed-responsive, etc.).
  • the control parameter adjustment device 210 controls the controller model and the motor model based on motor identification information (model number information).
  • the models enabled in the container model storage unit 213 and the motor model storage unit 214 are acquired.
  • the control parameter adjusting device 210 includes a plurality of controller models and motor models, and calls one of the plurality of models to use for generating a simulation model.
  • the control parameter adjustment device 210 newly generates a load model.
  • the control parameter adjusting device 210 determines a driving condition of the motor when generating the load model, drives the motor based on the determined driving condition, and obtains a current command value output from the speed controller and a position response value of the motor. I do. Then, the control parameter adjustment device 210 generates a load model based on the acquired current command value and position response value. As a result, a simulation model required for a simulation for adjusting the parameters of the controller can be appropriately generated.
  • the load model may be selected and called from a plurality of models stored in advance, similarly to the controller model and the motor model. Thereby, a simulation model can be easily generated.
  • the optimal parameters are selected in order from the inner loop (speed controller) of the feedback control system, so that the amount of calculation when adjusting the control parameters by simulation is reduced, Tuning time can be reduced. For example, if an optimum value is searched for a large number of parameters simultaneously, the number of searches becomes enormous and tuning takes time. On the other hand, in the present embodiment, since a method of reliably determining the parameters of the controller one by one is adopted, the number of times of repeated verification can be reduced. As a result, the tuning time can be reduced, and the time required for tuning can be grasped to some extent.
  • the present embodiment is suitable for an application that cannot perform verification of parameters in order from an inner loop (speed controller) of a feedback control system as represented by control of a robot arm, which cannot be verified using an actual machine.
  • FIG. 7 is a configuration example of a control parameter adjustment system (tuning system) 1000A including the control parameter adjustment device 210 according to the present embodiment.
  • Tuning system 1000A includes motor device 100, which is an electromechanical integrated motor, and arithmetic device 200.
  • the motor device 100 and the arithmetic device 200 shown in FIG. 7 have the same configuration as the motor device 100 and the arithmetic device 200 shown in FIG.
  • tuning system 1000A includes a communication module that communicably connects motor device 100 and arithmetic device 200.
  • the tuning system 1000A shown in FIG. 7 is a system that connects the motor device 100 and the arithmetic device 200 so that they can communicate with each other in a wired communication system.
  • the communication module directly connects the motor device 100 and the arithmetic device 200.
  • Communication cable 300 can be, for example, one serial communication cable.
  • the serial communication cable may be, for example, a USB-UART conversion cable.
  • the motor device 100 includes a rotor having a shaft, a stator radially facing the rotor, and a housing surrounding the rotor and the stator.
  • the motor device 100 has a circuit board arranged near the housing. This circuit board has a motor control circuit that controls driving of the motor.
  • a communication connector is mounted on the circuit board.
  • the communication cable 300 is connected to the communication connector, and directly connects the communication connector and the arithmetic device 200.
  • the motor device 100 has a communication function.
  • the motor device 100 has a magnetic sensor and a current sensor mounted on a circuit board, and acquires motor information including rotor position information, rotation speed information, current information, voltage information, and torque information by itself. It is possible. Therefore, the motor device 100 can perform motor control and data transmission / reception by itself.
  • FIG. 8 is a configuration example of the motor device 100.
  • the motor device 100 includes a motor 121, a Hall element 122, a differential amplifier 123, a position detector 124, a memory 125, a position command generator 126, and a controller 127. , A PWM control unit 128, and an inverter 129.
  • the differential amplifier 123, the position detector 124, the memory 125, the position command generator 126, the controller 127, the PWM controller 128, and the inverter 129 are included in the motor control circuit.
  • the motor device 100 has a structure in which the motor 121 and the motor control circuit are integrated.
  • a motor 121 corresponds to the motor 101 in FIG.
  • the output of the Hall element 122 is amplified by the differential amplifier 123 and input to the position detector 124.
  • the position detector 124 detects rotor position information (position detection value) based on the detection result of the magnetic sensor.
  • the position detection unit 124 can also acquire the learning value from the memory 125 and detect the position information of the rotor.
  • the controller 127 includes a controller for controlling the drive of the motor 121. Based on a difference xerr between the position command value output by the position command generator 126 and the position detection value output by the position detector 124, The voltage command value vref is output.
  • the PWM control unit 128 generates a PWM signal (UH, VH, WH, UL, VL, WL) based on the voltage command value vref. Then, based on the generated PWM signal, the PWM control unit 128 performs on / off control of a switching element included in the inverter 129, and supplies driving power to the motor 121.
  • a PWM signal UH, VH, WH, UL, VL, WL
  • the Hall element 122 and the differential amplifier 123 correspond to the sensor unit 104 in FIG. 1
  • the position detecting unit 124 corresponds to the position detecting unit 113 in FIG.
  • the position command generator 126 corresponds to the position command generator 111 of FIG. 1
  • the controller 127 corresponds to the controller 112 of FIG. 1
  • the PWM controller 128 and the inverter 129 correspond to those of FIG. Corresponds to the power conversion unit 114.
  • the motor device 100 has the communication connector as described above.
  • the communication connector includes an Rx pin, a Tx pin, a 3.3V pin, and an SGND pin. These Rx pin, Tx pin, 3.3 V pin, and SGND pin can be connected to a USB-UART conversion cable as the communication cable 300. Further, by inputting an input pulse signal (STMP) or a motor rotation direction (CW_CCW) to the position command generator 126 of the motor control circuit, the motor can be driven by the pulse signal.
  • STMP input pulse signal
  • CW_CCW motor rotation direction
  • FIG. 9 is a diagram showing a relationship between the MCU 130 and the motor 121 included in the motor device 100.
  • the drive of the motor 121 is detected by the Hall element 122, amplified by the differential amplifier 123, and converted into a digital signal by an A / D converter (ADC) in the MCU 130.
  • ADC A / D converter
  • a PWM signal for driving the motor is generated in the MCU 130, and the generated PWM signal is output to the inverter 129 to drive the motor 121.
  • the arithmetic device 200 includes the control parameter adjustment device 210 described above, and selects an optimum value of a control parameter (each gain described above) of the motor control circuit. Then, the arithmetic device 200 transmits a command to change the control parameter to the above-described optimum value to the motor device 100. As a result, the control parameters of the motor control circuit are changed to the optimum values determined in the arithmetic device 200, and the controller 127 operates according to the optimum values.
  • FIG. 10 is a diagram showing a USB-UART conversion cable as the communication cable 300.
  • the communication cable 300 has a USB connection terminal 310 at one end and a UART connection terminal 320 at the other end where a USB-UART conversion driver is arranged.
  • the communication cable 300 may have a buffer capable of storing serial data. In this case, a buffer of, for example, 1 kByte is mounted on the USB connection terminal 310. Since the communication cable 300 has a buffer, a data string of UART communication can be temporarily stored in the communication cable 300, and data can be transmitted and received in packet units.
  • the UART connection terminal 320 is divided into ten cables. Of the ten pins of the UART connection terminal 320, the VCC pin is set to the 3.3V pin of the motor device 100, and the TxD pin is set to the Rx of the motor device 100. The pin, the RxD pin is connected to the Tx pin of the motor device 100, and the GND pin is connected to GND of the motor device 100. Thereby, data transmission and reception between the motor device 100 and the arithmetic device 200 via the communication cable 300 which is a USB-UART conversion cable becomes possible.
  • the arithmetic device 200 uses the USB-UART conversion cable.
  • the connection between the arithmetic unit 200 and the communication cable 300 can be performed by using a driver for this.
  • the driver is incorporated in the arithmetic device 200.
  • the motor control circuit of the motor device 100 can transmit serial data including motor information to the arithmetic device 200 via the communication cable 300.
  • the motor information may include at least one of position information, rotation speed information, and torque information of the rotor.
  • the arithmetic device 200 transmits a motor information transmission request command to the motor device 100. I do.
  • the motor device 100 transmits serial data including motor information to the arithmetic device 200 via the communication cable 300 in response to the transmission request command transmitted from the arithmetic device 200.
  • the motor control circuit of the motor device 100 can continuously transmit serial data in response to one transmission request command.
  • the motor device 100 can continuously transmit serial data without performing communication using the master-slave method.
  • the arithmetic device 200 can acquire high-speed serial data.
  • the serial data is generated in the MCU 130 of FIG.
  • the UART data string generated in the MCU 130 is output from the GPIO pin and transmitted to the arithmetic unit 200 via a USB-UART conversion cable.
  • the serial data may be data in which a plurality of motor information acquired in each control cycle of the motor control circuit are sequentially linked.
  • the arithmetic unit 200 can acquire the motor information (position, speed, current, voltage, torque, and the like) in the control cycle of the motor.
  • the motor information acquired by the arithmetic device 200 can be selected by the user from the GUI.
  • the arithmetic device 200 has a display unit 202, and can display the motor information acquired from the motor device 100 in a graph on the display unit 202. Therefore, after the motor is tuned, the user can easily confirm whether or not the tuning has been correctly performed. Further, the user can fine-tune the control parameters from the GUI based on the information displayed on the display unit 202. In this case, the arithmetic device 200 transmits a command to the motor device 100 to change the control parameter adjusted by the user to an optimal value.
  • FIG. 11 is a configuration example of a control parameter adjustment system (tuning system) 1000B in which the motor device 100 and the arithmetic device 200 are communicably connected by a wireless communication method.
  • the communication module that communicably connects the motor device 100 and the arithmetic device 200 includes a communication cable 300 and a wireless module (wireless communication module) 400.
  • the wireless module 400 can wirelessly communicate with the arithmetic device 200, and the communication cable 300 directly connects the communication connector of the motor device 100 to the wireless module 400.
  • the communication cable 300 is the same as the above-described communication cable 300 included in the tuning system 1000A.
  • the pulse generator 500 may be connected to the motor device 100 as in a control parameter adjustment system (tuning system) 1000C shown in FIG. 12 and a control parameter adjustment system (tuning system) 1000D shown in FIG.
  • the input pulse signal (STMP) and the motor rotation direction (CW_CCW) are input to the MCU 130 shown in FIG. 9 from the pulse generator 500, and the motor device 100 can drive the motor with the pulse signal. .
  • Reference numeral 100 motor device (integrated electromechanical motor), 101: motor, 110: motor controller, 112: controller unit, 112a: position controller, 112b: speed controller, 112c: current controller, 200: arithmetic unit, 201 ... input unit, 202 ... display unit, 210 ... control parameter adjustment device, 216 ... simulation model generation unit

Landscapes

  • Engineering & Computer Science (AREA)
  • Power Engineering (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Automation & Control Theory (AREA)
  • Control Of Electric Motors In General (AREA)

Abstract

制御パラメータ調整方法は、モータの駆動制御を行うための位置制御器および速度制御器を有する制御器をモデル化した制御器モデル、モータをモデル化したモータモデル、およびモータに接続された負荷をモデル化した負荷モデルを含むシミュレーションモデルを生成する工程と、シミュレーションモデルを用いたシミュレーションを速度制御モードで実行し、速度制御器のパラメータを評価して最適値を選出する工程と、選出された速度制御器のパラメータを用いて、シミュレーションを位置速度制御モードで実行し、位置制御器のパラメータを評価して最適値を選出する工程と、を含む。

Description

制御パラメータ調整方法および制御パラメータ調整装置
 本発明は、サーボモータの制御パラメータ調整方法および制御パラメータ調整装置に関する。
 サーボモータは、用いられる装置に応じて、異なる負荷に対して異なる速度制御、異なる位置制御が要求されることから、制御パラメータ(ゲイン)を適切に調整することが求められる。ところが、サーボモータのゲインを最適な値に調整するには、計算量が多く、時間がかかる。そのため、ゲインの調整にかかる計算量を削減することが求められている。
 日本国公開公報特開2017-102619号公報には、シミュレーションにより制御パラメータを調整する制御パラメータ調整装置が開示されている。この制御パラメータ調整装置は、まず、マシンモデルを用いてシミュレーションを繰り返し行わせ、制御パラメータの最適値となる候補を抽出する。次に、制御パラメータ調整装置は、抽出された候補にて決定される狭い範囲内で制御パラメータを探索し、マシンを繰り返し動作させて制御パラメータの最適値を見つけ出すようにしている。
日本国公開公報:特開2017-102619号公報
 上記従来の制御パラメータ調整装置においては、調整すべき制御パラメータや制御パラメータの調整順序を指定せずに、シミュレーションによる調整を行う。つまり、シミュレーションにより多数のパラメータを同時に調整することになる。そのため、シミュレーションによる最適パラメータの探索回数が増え、計算時間(チューニング時間)が多くなってしまう。
 そこで、本発明は、シミュレーションにより制御パラメータを調整する場合のチューニング時間を削減可能な制御パラメータ調整方法および制御パラメータ調整装置を提供することを目的とする。
 上記課題を解決するために、本発明の一つの態様の制御パラメータ調整方法は、モータの駆動制御を行うための位置制御器および速度制御器を有する制御器をモデル化した制御器モデル、前記モータをモデル化したモータモデル、および前記モータに接続された負荷をモデル化した負荷モデルを含むシミュレーションモデルを生成する工程と、前記シミュレーションモデルを用いたシミュレーションを速度制御モードで実行し、前記速度制御器のパラメータを評価して最適値を選出する工程と、選出された前記速度制御器のパラメータを用いて、前記シミュレーションを位置速度制御モードで実行し、前記位置制御器のパラメータを評価して最適値を選出する工程と、を含む。
 また、本発明の一つの態様の制御パラメータ調整装置は、モータの駆動制御を行うための位置制御器および速度制御器を有する制御器をモデル化した制御器モデル、前記モータをモデル化したモータモデル、および前記モータに接続された負荷をモデル化した負荷モデルを含むシミュレーションモデルを生成するシミュレーションモデル生成部と、前記シミュレーションモデルを用いたシミュレーションを速度制御モードで実行し、前記速度制御器のパラメータを評価して最適値を選出する第1のパラメータ選出部と、選出された前記速度制御器のパラメータを用いて、前記シミュレーションを位置速度制御モードで実行し、前記位置制御器のパラメータを評価して最適値を選出する第2のパラメータ選出部と、を備える。
 本発明の一つの態様によれば、フィードバック制御系のインナーループ(速度制御器)から順に最適パラメータを選出するので、シミュレーションにより制御パラメータを調整する場合の計算量を削減し、チューニング時間を削減することができる。
図1は、本実施形態における制御パラメータ調整システムの具体的構成を示す図である。 図2は、制御器の詳細構造を示すブロック図である。 図3は、制御パラメータの調整シーケンスである。 図4は、制御パラメータ調整処理手順を示すフローチャートである。 図5は、位置応答重視の場合の調整パラメータと評価項目との関係である。 図6は、速度応答重視の場合の調整パラメータと評価項目との関係である。 図7は、制御パラメータ調整システムの構成例である。 図8は、機電一体モータの構成例である。 図9は、MCUとモータとの間の関係を示す図である。 図10は、USB-UART変換ケーブルを示す図である。 図11は、制御パラメータ調整システムの別の構成例である。 図12は、制御パラメータ調整システムの別の構成例である。 図13は、制御パラメータ調整システムの別の構成例である。
  以下、図面を用いて本発明の実施の形態について説明する。  なお、本発明の範囲は、以下の実施の形態に限定されるものではなく、本発明の技術的思想の範囲内で任意に変更可能である。
 図1は、本実施形態における制御パラメータ調整システムの具体的構成を示す図である。
 制御パラメータ調整システムは、モータ装置100と、演算装置200と、を備える。本実施形態では、モータ装置100が、モータ101とモータ制御装置110とを一体化した機電一体モータである場合について説明する。
 モータ装置100は、モータ101と、モータ制御装置110と、を備える。モータ101は、例えば3相ブラシレスモータであり、モータ制御装置110により駆動電力が供給される。モータ101には、連結軸102を介して負荷103が接続される。また、モータ101には、モータ101の回転位置情報を取得するためのセンサ部104が取り付けられている。センサ部104は、例えば磁気センサを含む。本実施形態では、センサ部104が、ホール素子を含む場合について説明する。
 モータ制御装置110は、モータ101の位置制御および速度制御を行う。モータ制御装置110は、モータ101のハウジング(不図示)の近傍に配置された回路基板(不図示)に載置されている。
 このモータ制御装置110は、位置指令発生部111、制御器部112、位置検出部113、電力変換部114、制御パラメータ格納部115、モータ型番格納部116および通信インタフェース(通信I/F)117を備える。
 位置指令発生部111は、モータ101の位置指令値を制御器部112へ出力する。ここで、上記位置指令値は、演算装置200から受信した指令値であってもよいし、演算装置200とは別の不図示の上位装置から受信した指令値であってもよい。
 制御器部112は、モータ101の駆動制御を行うための位置制御器112a、速度制御器112bおよび電流制御器112cを有する制御器と、速度演算部112dと、を備える。
 図2は、制御器部112が備える制御器の詳細構造を示すブロック図である。位置制御器112aは、位置指令値θ*と、位置検出値θと、位置制御器112aのパラメータである位置比例ゲインKppおよび位置フィードフォワードゲイン(位置FFゲイン)Kpffとに基づいて、速度指令値ω*を出力する。ここで、位置指令値θ*は、位置指令発生部111により出力される。また、位置検出値θは、後述する位置検出部113により検出される。
 速度制御器112bは、速度指令値ω*と、速度検出値ωと、速度制御器112bのパラメータである速度比例ゲインKωp、速度積分ゲインKωiおよび速度フィードフォワードゲイン(速度FFゲイン)Kωffとに基づいて、q軸(トルク成分)の電流指令値iq*を出力する。なお、id*=0である。また、速度検出値ωは、後述する速度演算部112dにより演算される。
 電流制御器112cは、モータの電気角速度ωe、d軸の電流指令値id*およびq軸の電流指令値iq*に基づいて、d軸の電圧指令値Vd*およびq軸の電圧指令値Vq*を出力する。
 位置検出部113は、センサ部104が備えるホール素子からの信号を取得し、取得した信号をもとにモータ101の回転位置を検出し、検出結果を位置検出値(位置応答値)θとして出力する。速度演算部112dは、位置検出部113により検出されたモータ101の回転位置をもとに、モータ101の回転速度を演算し、演算結果を速度検出値ωとして出力する。
 電力変換部114は、制御器部112により出力される2相の電圧指令値Vd*、Vq*を3相の電圧指令値(Vu、Vv、Vw)に変換し、これら3相の電圧指令値に基づいてPWM信号(UH、VH、WH、UL、VL、WL)を生成する。そして、電力変換部114は、生成されたPWM信号に基づいて、インバータを構成するスイッチング素子をオン/オフ制御し、モータ101に駆動電力を供給する。
 制御パラメータ格納部115は、制御器部112が備える制御器のパラメータを格納する。制御器部112が備える各制御器は、制御パラメータ格納部115に格納されたパラメータに従って上述した各指令値を出力する。制御パラメータ格納部115が格納するパラメータは、書き換え可能である。
 モータ型番格納部116は、モータ101の識別情報である型番情報を格納する。なお、モータ101の識別情報は、型番情報に限定されるものではなく、モータ101の駆動制御を行うための制御器をモデル化した制御器モデル、およびモータ101をモデル化したモータモデルを選定可能な情報であればよい。
 通信I/F117は、演算装置200との間で通信を行うためのインタフェースである。通信方式は、有線であってもよいし、無線であってもよい。通信の規格、規模、構成は特に限定されない。
 モータ制御装置110は、通信I/F117を介して演算装置200から型番要求コマンドを受信すると、モータ型番格納部116に格納された型番情報を、通信I/F117を介して演算装置200へ送信する。また、モータ制御装置110は、通信I/F117を介して演算装置200から制御器のパラメータを受信すると、受信したパラメータを制御パラメータ格納部115に格納する。
 さらに、モータ制御装置110は、通信I/F117を介して演算装置200からモータ駆動コマンドを受信すると、指定された条件にてモータ101を駆動させる。また、モータ制御装置110は、通信I/F117を介して演算装置200からモータ情報の送信要求コマンドを受信すると、モータ情報として、例えばモータ101の位置情報や回転速度情報、電流情報、電圧情報、トルク情報などを、通信I/F117を介して演算装置200へ送信する。
 演算装置200は、データを入力する入力部201と、データを表示する表示部202と、を備える。演算装置200は、例えばパーソナルコンピュータ(PC)とすることができる。入力部201は、例えばキーボードやマウス等のポインティングデバイスを備え、GUI(Graphical User Interface)を操作するためにユーザが操作可能である。表示部202は、液晶ディスプレイ等のモニタを備えており、上記GUIを表示する。また、表示部202は、演算装置200による処理結果を画像や文字などにより表示することができる。
 さらに、演算装置200は、モータ101の駆動制御を行うための制御器のパラメータを調整する制御パラメータ調整装置210を備える。制御パラメータ調整装置210は、シミュレーションを用いて制御器のパラメータを調整する。
 具体的には、制御パラメータ調整装置210は、まず、モータ101の駆動制御を行うための位置制御器112aおよび速度制御器112bを有する制御器をモデル化した制御器モデル、モータ101をモデル化したモータモデル、およびモータ101に接続された負荷103をモデル化した負荷モデルを含むシミュレーションモデルを生成する。次に、制御パラメータ調整装置210は、シミュレーションモデルを用いたシミュレーションを速度制御モードで実行し、速度制御器112bのパラメータを評価して最適値を選出する。次に、制御パラメータ調整装置210は、選出された速度制御器112bのパラメータを用いて、上記シミュレーションを位置速度制御モードで実行し、位置制御器112aのパラメータを評価して最適値を選出する。
  ここで、速度制御モードは、位置制御器を無効とし、位置制御器のパラメータの影響をなくした制御モードである。また、位置速度制御モード(以下、「位置制御モード」という。)は、位置制御器および速度制御器を有効とした制御モードである。
 演算装置200は、通信I/F211と、モータ型番判定部212と、制御器データ格納部213と、モータデータ格納部214と、合計機械特性推定部215と、シミュレーションモデル生成部216と、ユーザ設定部217と、パラメータ自動調整部218と、を備える。
 通信I/F211は、モータ制御装置110との間で通信を行うためのインタフェースである。
 モータ型番判定部212は、通信I/F211を介してモータ制御装置110からモータ101の識別情報を取得し、モータ101の型番を判定する。そして、モータ型番判定部212は、制御器データ格納部213に格納された複数の制御器モデルの中から、モータ101の型番に応じた制御器モデルを呼び出す。また、モータ型番判定部212は、モータデータ格納部214に格納された複数のモータモデルの中から、モータ101の型番に応じたモータモデルを呼び出す。モータ型番判定部212が呼び出した制御器モデルおよびモータモデルは、後述するシミュレーションモデル生成部において使用される。
 なお、モータ型番判定部212は、ユーザが入力部201を操作して表示部202に表示されたGUIから選択した型番情報を取得し、取得された型番情報をもとに制御器モデルおよびモータモデルを呼び出すようにしてもよい。
 制御器データ格納部213は、複数の制御器モデルをモータ101の識別情報(型番)と関連付けて格納している。
 モータデータ格納部214は、複数のモータモデルをモータ101の識別情報(型番)と関連付けて格納している。
 合計機械特性推定部215は、モータ101、連結軸102および負荷103の合計機械特性を推定する。具体的には、まず、合計機械特性推定部215は、設定された条件にてモータ101を動作させた際の電流指令値Iq*および位置応答値(位置検出値)θを、モータ制御装置110の制御器部112から取得する。つまり、演算装置200は、モータ制御装置110に対してモータ駆動コマンドを送信してモータ101を動作させ、電流指令値Iq*および位置応答値θを取得する。
 次に、合計機械特性推定部215は、取得された電流指令値Iq*および位置応答値θ、すなわちトルク指令値および位置情報に基づいて、負荷103に入力されたトルクの推定値(入力トルク推定値)と、負荷103の回転速度とを算出する。そして、合計機械特性推定部215は、算出した入力トルク推定値と回転速度とに基づいて、最小二乗法を用いて、下式で表される機械特性を構成するパラメータJ、DおよびCを算出する。
 T=J*(dω/dt)+D*ω+C ………(1)
 ここで、Jはイナーシャ、Dは粘性摩擦係数、Cはクーロン摩擦トルクと定常負荷トルクとの合計値である。合計機械特性推定部215は、算出されたパラメータJ、DおよびCに基づいて負荷モデルを生成する。
 シミュレーションモデル生成部216は、駆動指令生成部216aと、制御器モデル216bと、モータモデル216cと、負荷モデル216dと、を含むシミュレーションモデルを生成する。
 駆動指令生成部216aは、後述するシミュレーション条件決定部218aにより決定されたシミュレーション条件に従ってシミュレーションを実行する際に、制御器に入力する指令値を生成するモデルである。例えば、当該指令値は、パルス波形の速度指令値(速度ステップ)や、台形波形の速度指令値(擬似台形加減速)などを含む。
 また、制御器モデル216bは、モータ型番判定部212が制御器モデル格納部213から呼び出したモデルであり、モータモデル216cは、モータ型番判定部212がモータモデル格納部214から呼び出したモデルである。さらに、負荷モデル216dは、合計機械特性推定部215が生成したモデルである。
 ユーザ設定部217は、ユーザが入力部201を用いて表示部202に表示されたGUIを操作して入力した情報を受け取り、シミュレーションの実行に必要な設定値を設定する。ユーザ設定部217は、駆動条件設定部217aと、調整箇所設定部217bと、重視性能項目設定部217cと、目標値設定部217dと、を備える。
 駆動条件設定部217aは、上記設定値として、シミュレーション用の駆動条件を決定するための設定駆動条件を設定する。設定駆動条件は、例えば、ユーザがGUIを操作して指定したモータ回転速度の駆動パターンとすることができる。
 調整箇所設定部217bは、上記設定値として、設定駆動条件内における調整箇所を設定する。つまり、調整箇所設定部217bは、パラメータ調整を行う際、駆動条件設定部217aにおいて設定された駆動パターンのどの部分に対してパラメータ調整を行うのか、パラメータ調整のターゲットを絞る。
 重視性能項目設定部217cは、上記設定値として、モータに対して重視する制御性能を設定する。具体的には、重視性能項目設定部217cは、モータにおける速度制御の応答を重視するか、位置制御の応答を重視するかを設定する。
 目標値設定部217dは、上記設定値として、シミュレーション時の制御性能を評価する際の評価項目の目標値を設定する。本実施形態では、評価項目は、時定数、整定時間、および指令値と応答値との偏差の少なくとも1つを含む。
 パラメータ自動調整部218は、シミュレーション条件決定部218aと、制御性能評価部218bと、を備える。
 シミュレーション条件決定部218aは、ユーザ設定部217において設定された各設定値に基づいて、シミュレーション条件を決定し、決定されたシミュレーション条件に従ってシミュレーションモデルを用いたシミュレーションを実行する。ここで、シミュレーション条件は、制御モード、モータの駆動条件(シミュレーション用の駆動条件)、調整対象とする制御器のパラメータ(速度比例ゲインKωp、速度積分ゲインKωi、速度FFゲインKωff、位置比例ゲインKpp、位置FFゲインKpff)を含む。
 シミュレーション条件決定部218aは、制御モードとして、速度制御モードと位置制御モードのいずれかを選択することができる。また、シミュレーション条件決定部218aは、駆動条件設定部217aにより設定された設定駆動条件をもとに、シミュレーション用の駆動条件を決定することができる。シミュレーション用の駆動条件は、例えば、ユーザにより設定された設定駆動条件の特徴を抽出し、当該設定駆動条件を単純化した駆動パターンを含む。
 制御性能評価部218bは、シミュレーション時の制御性能を評価する。制御性能評価部218bは、シミュレーションにより取得された時定数や整定時間、指令値と応答値との偏差といった評価項目を、目標値設定部217dにより設定された目標値を用いて評価し、パラメータの最適値を選出する。さらに、制御性能評価部218bは、重視性能項目設定部217cにより設定された重視する制御性能に応じて、選出されたパラメータの最適値を調整することができる。
 本実施形態における制御パラメータ調整装置210は、1つのパラメータに対し、1つの制御性能を評価項目として当該パラメータを評価し、最適値を選出する。
 以下、制御器のパラメータを調整する手順について、図3を参照しながら詳細に説明する。
 まず、ステップS1において、シミュレーションモデル生成部216は、モータ101の識別情報(型番情報)に基づいて、制御器データ格納部213およびモータデータ格納部214から、制御器モデル216bおよびモータモデル216cをそれぞれ取得する。また、シミュレーションモデル生成部216は、モータ101の駆動条件を決定し、決定された駆動条件に基づいてモータ101を駆動する。このとき、シミュレーションモデル生成部216は、モータ制御装置110の速度制御器112bが出力する電流指令値Iq*と、位置検出部113により検出された位置応答値(位置検出値)θとを取得する。そして、シミュレーションモデル生成部216は、取得された電流指令値Iq*および位置応答値θに基づいて、上記(1)式で表される機械特性を構成するパラメータJ、DおよびCを算出し、負荷モデル216dを生成する。さらに、シミュレーションモデル生成部216は、制御器モデル216b、モータモデル216cおよび負荷モデル216dを組み合わせて、シミュレーションモデルを生成する。  
 次にステップS2では、シミュレーション条件決定部218aは、ユーザにより設定された設定駆動条件の特徴を抽出し、ステップS3に移行する。ここで、設定駆動条件の特徴は、最高回転速度や立ち上がり時間等を含む。ステップS3では、シミュレーション条件決定部218aは、ユーザにより設定された設定駆動条件を、当該設定駆動条件の特徴をもとに単純化し、シミュレーション用の駆動条件を生成する。
 ステップS4では、シミュレーション条件決定部218aは、パラメータの初期値である基本ゲインを設定する。ここで、基本ゲイン(速度比例ゲインKωp_nom、速度積分ゲインKωi_nom、速度FFゲインKωff_nom、位置比例ゲインKpp_nom、位置FFゲインKpff_nom)の設定は、合計機械特性推定部215において算出された機械系の特性値であるイナーシャJおよび粘性摩擦計数D、ならびに、モータパラメータであるインダクタンスL、トルク定数Ktを用いて、以下の式から算出することができる。なお、次式において、ωs_nomは速度制御器の帯域を表す。
 ωs_nom=Kt/√(J/L) ………(2)
 Kωp_nom=J・ωs_nom/Kt ………(3)
 Kωi_nom=D・ωs_nom/Kt ………(4)
 Kωff_nom=J/Kt ………(5)
 Kpp_nom=ωs_nom/2.5 ………(6)
 Kpff_nom=0 ………(7)
 制御パラメータ調整装置210のパラメータ自動調整部218は、所定範囲内でパラメータ(ゲイン)を変化させながらシミュレーションによる評価を行い、制御器のパラメータの最適値を選出する。ここで、上記所定範囲は、基本ゲインを基準に決定される。具体的には、パラメータ自動調整部218は、各基本ゲインに対してそれぞれ乗算する調整用の係数(調整係数)を用意しておき、調整係数を予め設定された上限値から下限値の間で所定の刻み値分ずつ変化させることで、評価対象とするパラメータ(ゲイン)を変化させる。パラメータ自動調整部218は、評価対象のパラメータに対してそれぞれシミュレーションによる制御性能の評価を行い、パラメータの最適値を選出する。ゲインの調整方法については後で詳述する。
 ステップS5では、パラメータ自動調整部218は、シミュレーションモデルを用いたシミュレーションを速度制御モードで実行し、速度制御帯域(速度比例ゲインKωp、速度積分ゲインKωi)の最適値を選出する。具体的には、パラメータ自動調整部218は、パルス波形の速度指令値(速度ステップ)を速度制御器に入力し、速度制御モードでシミュレーションを実行する。このとき、パラメータ自動調整部218は、速度FFゲインKωffを0としてシミュレーションを実行する。
 そして、パラメータ自動調整部218は、シミュレーションにより得られた速度制御器の時定数を評価項目として、速度制御帯域(速度比例ゲインKωp、速度積分ゲインKωi)を評価し、当該速度制御帯域の最適値を選出する。この速度制御帯域の調整では、パラメータ自動調整部218は、速度比例ゲインKωpと速度積分ゲインKωiとの比を固定した状態で、速度比例ゲインKωpと速度積分ゲインKωiとを同時に変化させ、速度制御帯域の最適値を選出する。
 ここで、評価項目である時定数は、速度ステップを入力した場合に応答値が目標値(定常速度)の63.2%に到達するまでの立ち上がり時間である。制御性能評価部218bは、複数回のシミュレーションにより、時定数が理論時定数に最も近い値となるゲインを選出し、これを最適値として選出する。
 なお、時定数Tcは、以下の式から算出することができる。
 Tc=2π/ωs_nom*0.632 ………(8)
 ステップS6では、パラメータ自動調整部218は、シミュレーションモデルを用いたシミュレーションを速度制御モードで実行し、速度積分ゲインKωiの最適値を選出する。具体的には、パラメータ自動調整部218は、パルス波形の速度指令値(速度ステップ)を速度制御器に入力し、速度制御モードでシミュレーションを実行する。このとき、パラメータ自動調整部218は、速度FFゲインKωffを0としてシミュレーションを実行する。そして、パラメータ自動調整部218は、シミュレーションにより得られた速度制御器の時定数を評価項目として、速度積分ゲインKωiを評価し、当該速度積分ゲインKωiの最適値を選出する。
 ここで、評価項目である時定数は、速度ステップを入力した場合に応答値が目標値(定常速度)の95%に到達するまでの立ち上がり時間である。制御性能評価部218bは、複数回のシミュレーションにより、時定数が理論時定数の2.4倍よりも小さくなるゲインを選出し、これを最適値として選出する。
 なお、目標値に対して95%に達するまでの時間Trは、時定数Tcを用いて以下の式から決定することができる。
 Tr=Tc*2.4
 ステップS7では、パラメータ自動調整部218は、シミュレーションモデルを用いたシミュレーションを速度制御モードで実行し、速度FFゲインKωffの最適値を選出する。具体的には、パラメータ自動調整部218は、台形波形の速度指令値(擬似台形加減速)を速度制御器に入力し、速度制御モードでシミュレーションを実行する。このとき、パラメータ自動調整部218は、加減速の加速度を1.25倍としてシミュレーションを実行する。そして、パラメータ自動調整部218は、シミュレーションにより得られた速度制御器の整定時間を評価項目として、速度FFゲインKωffを評価し、当該速度FFゲインKωffの最適値を選出する。
 ここで、評価項目である整定時間は、定常速度時の速度整定時間である。制御性能評価部218bは、複数回のシミュレーションにより、整定時間が最小値となるゲインを選出し、これを最適値として選出する。
 ステップS8では、パラメータ自動調整部218は、シミュレーションモデルを用いたシミュレーションを位置制御モードで実行し、位置制御帯域(位置比例ゲインKpp)の最適値を選出する。具体的には、制御性能評価部218bは、モータ停止の位置指令値を位置制御器に入力し、位置制御モードでシミュレーションを実行する。このとき、パラメータ自動調整部218は、モータの駆動条件を擬似台形加減速としてシミュレーションを実行する。そして、パラメータ自動調整部218は、シミュレーションにより得られた位置制御器の整定時間を評価項目として、位置比例ゲインKppを評価し、当該位置比例ゲインKppの最適値を選出する。
 ここで、評価項目である整定時間は、停止時の位置整定時間である。制御性能評価部218bは、複数回のシミュレーションにより、整定時間が最小値となるゲインを選出し、これを最適値として選出する。
 以降の処理は、重視する制御性能に応じて異なる。 重視する制御性能が位置制御の応答である場合、ステップS9において、パラメータ自動調整部218は、モータの位置指令値と位置応答値との偏差(位置指令応答誤差)を評価項目として位置FFゲインKpffを評価し、当該位置FFゲインKpffの最適値を調整する。
 具体的には、パラメータ自動調整部218は、ユーザ設定条件にて、シミュレーションモデルを用いたシミュレーションを位置制御モードで実行する。そして、パラメータ自動調整部218は、シミュレーションにより得られた位置指令応答誤差を評価項目として、位置FFゲインKpffを評価し、当該位置FFゲインKpffの最適値を調整する。このとき、制御性能評価部218bは、複数回のシミュレーションにより、位置指令応答誤差が目標値の0.8倍以下になるゲインを選出し、これを最適値として再選出する。なお、位置FFゲインKpffの評価は、ユーザ指定箇所において行うことができる。
 次にステップS10では、パラメータ自動調整部218は、位置指令応答誤差を評価項目として位置制御帯域(位置比例ゲインKpp)を評価し、当該位置比例ゲインKppの最適値を調整する。
 具体的には、パラメータ自動調整部218は、ユーザ設定条件にて、シミュレーションモデルを用いたシミュレーションを位置制御モードで実行する。そして、パラメータ自動調整部218は、シミュレーションにより得られた位置指令応答誤差を評価項目として、位置比例ゲインKppを評価し、当該位置比例ゲインKppの最適値を調整する。このとき、制御性能評価部218bは、複数回のシミュレーションにより、位置指令応答誤差が目標値の0.8倍以下になるゲインを選出し、これを最適値として再選出する。なお、位置比例ゲインKppの評価は、ユーザ指定箇所において行うことができる。
 このように、重視する制御性能が位置制御の応答である場合、パラメータ自動調整部218は、位置FFゲインKpff、位置制御帯域(位置比例ゲインKpp)の順にシミュレーションによる評価を行い、最適値を調整する。
 なお、パラメータ自動調整部218は、ステップS9において位置FFゲインKpffの最適値を調整した結果、所望の制御性能が得られたと判断した場合には、ステップS10の処理を行わずにパラメータ調整を終了してもよい。
 一方、重視する制御性能が速度制御の応答である場合、ステップS11において、パラメータ自動調整部218は、モータの速度指令値と速度応答値との偏差のむら(速度偏差むら)を評価項目として位置FFゲインKpffを評価し、当該位置FFゲインKpffの最適値を調整する。
 具体的には、パラメータ自動調整部218は、ユーザ設定条件にて、シミュレーションモデルを用いたシミュレーションを位置制御モードで実行する。そして、パラメータ自動調整部218は、シミュレーションにより得られた速度偏差むらを評価項目として、位置FFゲインKpffを評価し、当該位置FFゲインKpffの最適値を調整する。このとき、制御性能評価部218bは、複数回のシミュレーションにより、速度偏差むらが目標値の0.9倍以下になるゲインを選出し、これを最適値として再選出する。なお、位置FFゲインKpffの評価は、ユーザ指定箇所において行うことができる。
 次にステップS12では、パラメータ自動調整部218は、速度偏差むらを評価項目として速度FFゲインKωffを評価し、当該速度FFゲインKωffの最適値を調整する。
 具体的には、パラメータ自動調整部218は、ユーザ設定条件にて、シミュレーションモデルを用いたシミュレーションを位置制御モードで実行する。そして、パラメータ自動調整部218は、シミュレーションにより得られた速度偏差むらを評価項目として、速度FFゲインKωffを評価し、当該速度FFゲインKωffの最適値を調整する。このとき、制御性能評価部218bは、複数回のシミュレーションにより、速度偏差むらが目標値の0.9倍以下になるゲインを選出し、これを最適値として再選出する。なお、速度FFゲインKωffの評価は、ユーザ指定箇所において行うことができる。
 次にステップS13では、パラメータ自動調整部218は、速度偏差むらを評価項目として速度制御帯域(速度比例ゲインKωp、速度積分ゲインKωi)を評価し、当該速度制御帯域の最適値を調整する。
 具体的には、パラメータ自動調整部218は、ユーザ設定条件にて、シミュレーションモデルを用いたシミュレーションを位置制御モードで実行する。そして、パラメータ自動調整部218は、シミュレーションにより得られた速度偏差むらを評価項目として、速度制御帯域(速度比例ゲインKωp、速度積分ゲインKωi)を評価し、当該速度制御帯域の最適値を調整する。このとき、制御性能評価部218bは、複数回のシミュレーションにより、速度偏差むらが目標値の0.9倍以下になるゲインを選出し、これを最適値として再選出する。なお、速度制御帯域の評価は、ユーザ指定箇所において行うことができる。
 このように、重視する制御性能が速度制御の応答である場合、パラメータ自動調整部218は、位置FFゲインKpff、速度FFゲインKωff、速度制御帯域(速度比例ゲインKωp、速度積分ゲインKωi)の順に評価して、最適値を調整する。
 なお、パラメータ自動調整部218は、ステップS11において位置FFゲインKpffの最適値を調整した結果、所望の制御性能が得られたと判断した場合には、ステップS12以降の処理を行わずにパラメータ調整を終了してもよい。また、パラメータ自動調整部218は、ステップS12において速度FFゲインKωffの最適値を調整した結果、所望の制御性能が得られたと判断した場合には、ステップS13の処理を行わずにパラメータ調整を終了してもよい。
 制御パラメータ調整装置210による図3に示すパラメータ調整が完了したら、演算装置200は、通信I/F211を介して、モータ制御装置110に対して最適パラメータを送信する。モータ制御装置110は、通信I/F117を介して演算装置200から送信された最適パラメータを受信すると、受信した最適パラメータを制御パラメータ格納部115に保存する。これにより、モータ制御装置210の制御器部112は、制御パラメータ調整装置210によって調整された最適パラメータに従って動作する。
 以下、各ゲインの調整方法について詳細に説明する。
 上述したように、本実施形態におけるパラメータ自動調整部218は、上記(3)式~(7)式で表される各基本ゲインに対する調整係数を予め設定された上限値から下限値の間で刻み値分ずつ変化させることで、評価対象とするパラメータ(ゲイン)を変化させ、複数の評価対象のパラメータに対してそれぞれシミュレーションによる制御性能の評価を行い、パラメータの最適値を選出する。
 例として、ゲインKを調整する場合の方法を図4に示す。図4の例では、調整係数をKcoef、調整係数Kcoefの下限値をLlow、調整係数Kcoefの上限値をLup、刻み値をVstepとし、調整係数Kcoefを下限値Llowから上限値Lupに上げながら制御性能を評価している。
 まずステップS21において、パラメータ自動調整部218は、調整係数Kcoefを下限値Llowに設定し、ステップS22に移行する。ステップS22では、パラメータ自動調整部218は、基本ゲインK_nomに調整係数Kcoefを乗算し、評価対象とするゲインKを算出する。
 ステップS23では、パラメータ自動調整部218は、評価対象のゲインKに対してシミュレーションによる制御性能の評価を行う。各ゲインと評価項目との関係を図5および図6に示す。図5は、重視する制御性能が位置制御の応答である場合に調整するゲインと評価項目との関係、図6は、重視する制御性能が速度制御の応答である場合に調整するゲインと評価項目との関係を示している。
 ステップS24では、パラメータ自動調整部218は、ステップS23において制御性能を評価した結果、ゲインの最適値を選出可能(制御性能OK)であるか否かを判定する。そして、パラメータ自動調整部218は、ゲインの最適値を選出可能であると判定した場合には、そのまま図4の処理を終了する。一方、パラメータ自動調整部218は、ゲインの最適値を選出不可能であると判定した場合には、ステップS25に移行する。
 ステップS25では、パラメータ自動調整部218は、調整係数Kcoefを刻み値Vstep分増加し、ステップS26に移行する。ステップS26では、パラメータ自動調整部218は、調整係数Kcoefが上限値Lupを超えたか否かを判定し、調整係数Kcoefが上限値Lup以下である場合には、ステップS22に戻って評価対象とするゲインKを更新し、制御性能の評価を繰り返す。一方、パラメータ自動調整部218は、ステップS26において調整係数Kcoefが上限値Lupを超えたと判定した場合には、図4の処理を終了する。
 なお、図4に示す例では、調整係数Kcoefを下限値Llowから上限値Lupへ向けて変化させる場合について説明したが、調整係数Kcoefを上限値Lupから下限値Llowへ向けて変化させるようにしてもよい。
 この場合、ステップS21において、パラメータ自動調整部218は、調整係数Kcoefを上限値Lupに設定すればよい(Kcoef=Lup)。また、ステップS25では、パラメータ自動調整部218は、調整係数Kcoefを刻み値Vstep分減少させればよい(Kcoef=Kcoef-Vstep)。さらに、ステップS26では、パラメータ自動調整部218は、調整係数Kcoefが下限値Llowを下回ったか否かを判定すればよい(Kcoef<Llow?)。
 以上説明したように、本実施形態における制御パラメータ調整装置210は、制御器モデル216b、モータモデル216c、負荷モデル216dを含むシミュレーションモデルを生成するシミュレーションモデル生成部216を備える。ここで、制御器モデル216bは、モータ101の駆動制御を行うための位置制御器112aおよび速度制御器112bを有する制御器をモデル化したモデルである。また、モータモデル216cは、モータ101をモデル化したモデルであり、負荷モデル216dは、モータ101に接続された負荷103をモデル化したモデルである。
 制御パラメータ調整装置210は、シミュレーションモデル生成部216により生成されたシミュレーションモデルを用いたシミュレーションを速度制御モードで実行し、速度制御器112bのパラメータを評価して最適値を選出する第1のパラメータ選出部と、選出された速度制御器112bのパラメータを用いて、シミュレーションを位置速度制御モード(位置制御モード)で実行し、位置制御器112aのパラメータを評価して最適値を選出する第2のパラメータ選出部と、を備える。ここで、図3のステップS5~S7が第1のパラメータ選出部に対応し、図3のステップS8~S13が第2のパラメータ選出部に対応している。
 このように、モータ101の制御構造がカスケード型であることから、まず、フィードバック制御系のインナーループ(速度制御器)から順に最適パラメータを選出する。つまり、速度制御器のゲインは、シミュレーション条件である制御モードを速度制御モードにしてチューニングを行う。これにより、位置制御器のパラメータの影響をなくして速度制御器のパラメータ調整を行うことができ、より少ない検証回数で速度制御器のパラメータの最適値を選出することができる。したがって、多数のパラメータについて同時に最適値を探索する場合と比較して、パラメータ調整の計算量を削減し、チューニング時間を削減することができる。
 ここで、位置制御器のパラメータは、位置比例ゲインKppおよび位置FFゲインKpffを含み、速度制御器のパラメータは、速度制御帯域(速度比例ゲインKωp、速度積分ゲインKωi)、速度積分ゲインKωiおよび速度FFゲインKωffを含む。
 制御パラメータ調整装置210は、速度制御器のパラメータである速度制御帯域(速度比例ゲインKωp、速度積分ゲインKωi)の最適値を選出する場合、パルス波形の速度指令値(速度ステップ)を速度制御器に入力してシミュレーションを実行し、速度制御器の時定数を評価項目として速度制御帯域を評価し、当該速度制御帯域の最適値を選出する。これにより、速度制御器の速度制御帯域(速度比例ゲインKωp、速度積分ゲインKωi)を適切に調整することができる。
 さらに、制御パラメータ調整装置210は、速度制御器のパラメータである速度積分ゲインKωiの最適値を選出する場合、パルス波形の速度指令値(速度ステップ)を速度制御器に入力してシミュレーションを実行し、速度制御器の時定数を評価項目として速度積分ゲインKωiを評価し、当該速度積分ゲインKωiの最適値を選出することができる。これにより、速度制御器の速度積分ゲインKωiを適切に調整することができる。
 また、制御パラメータ調整装置210は、速度制御器のパラメータである速度FFゲインKωffの最適値を選出する場合、台形波形の速度指令値(擬似台形加減速)を速度制御器に入力してシミュレーションを実行し、速度制御器の整定時間を評価項目として速度FFゲインKωffを評価し、当該速度FFゲインKωffの最適値を選出する。これにより、速度制御器の速度FFゲインKωffを適切に調整することができる。
 さらに、制御パラメータ調整装置210は、速度制御器のパラメータの最適値を選出する場合、速度制御帯域(Kωp、Kωi)、速度積分ゲインKωi、速度FFゲインKωffの順に評価して最適値を選出する。これにより、速度制御器のパラメータを1つずつ確実に調整することができる。まず、パルス波形の速度指令値を速度制御器に入力してシミュレーションを行い、速度比例ゲインKωp、速度積分ゲインKωiを順に決定し、次に、台形波形の速度指令値を速度制御器に入力してシミュレーションを行い、速度FFゲインKωffを決定することができる。
 また、制御パラメータ調整装置210は、位置制御器のパラメータである位置比例ゲインKppの最適値を選出する場合、モータを停止する位置指令値を位置制御器に入力してシミュレーションを実行し、位置制御器の整定時間を評価項目として位置比例ゲインKppを評価し、当該位置比例ゲインKppの最適値を選出する。これにより、位置制御器の位置比例ゲインKpp(位置制御帯域)を適切に調整することができる。
 以上のように、制御パラメータ調整装置210は、パラメータの最適値を選出する際、1つのパラメータに対し、1つの制御性能を評価項目として当該パラメータを評価し、最適値を選出することができる。これにより、制御器のパラメータを1つずつ確実に調整することが可能であるため、チューニングにおける繰り返し検証回数(評価回数)を低減することができ、チューニング時間を適切に削減することができる。
 さらに、制御パラメータ調整装置210は、選出されたパラメータの最適値を用いて、シミュレーションを位置速度制御モード(位置制御モード)で実行し、重視する制御性能に応じて、選出されたパラメータの最適値を調整することができる。
 制御パラメータ調整装置210は、重視する制御性能が位置制御の応答である場合、モータの位置指令値と位置応答値との偏差(位置指令応答誤差)を評価項目として位置FFゲインKpffを評価し、位置FFゲインKpffの最適値を調整する。これにより、位置制御の応答を重視した位置制御器のパラメータ(位置FFゲインKpff)の調整が可能となる。
 また、制御パラメータ調整装置210は、重視する制御性能が位置制御の応答である場合、モータの位置指令値と位置応答値との偏差(位置指令応答誤差)を評価項目として位置比例ゲインKppを評価し、位置比例ゲインKppの最適値を調整する。これにより、位置制御の応答を重視した位置制御器のパラメータ(位置比例ゲインKpp)の調整が可能となる。
 さらに、制御パラメータ調整装置210は、重視する制御性能が位置制御の応答である場合、位置FFゲインKpff、位置比例ゲインKppの順に評価して最適値を調整する。これにより、位置制御の応答を重視した制御器のパラメータの調整を適切に行うことができる。
 また、制御パラメータ調整装置210は、重視する制御性能が速度制御の応答である場合、モータの速度指令値と速度応答値との偏差のむら(速度偏差むら)を評価項目として位置FFゲインKpffを評価し、位置FFゲインKpffの最適値を調整する。これにより、速度制御の応答を重視した位置制御器のパラメータ(位置FFゲインKpff)の調整が可能となる。
 さらに、制御パラメータ調整装置210は、重視する制御性能が速度制御の応答である場合、モータの速度指令値と速度応答値との偏差のむら(速度偏差むら)を評価項目として速度FFゲインKωffを評価し、速度FFゲインKωffの最適値を調整する。これにより、速度制御の応答を重視した速度制御器のパラメータ(速度FFゲインKωff)の調整が可能となる。
 また、制御パラメータ調整装置210は、重視する制御性能が速度制御の応答である場合、モータの速度指令値と速度応答値との偏差のむら(速度偏差むら)を評価項目として速度制御帯域(速度比例ゲインKωp、速度積分ゲインKωi)を評価し、速度制御帯域の最適値を調整する。これにより、速度制御の応答を重視した速度制御器のパラメータ(Kωp、Kωi)の調整が可能となる。
 さらに、制御パラメータ調整装置210は、重視する制御性能が速度制御の応答である場合、位置FFゲインKpff、速度FFゲインKωff、速度制御帯域(Kωp、Kωi)の順に評価して最適値を調整する。これにより、速度制御の応答を重視した制御器のパラメータの調整を適切に行うことができる。
 以上のように、重視する制御性能(位置応答重視、速度応答重視など)に応じて、制御器のパラメータを適切に調整することができる。
 さらに、制御パラメータ調整装置210は、制御器モデル、モータモデルおよび負荷モデルを組み合わせてシミュレーションモデルを生成する場合、制御器モデルおよびモータモデルについては、モータの識別情報(型番情報)に基づいて、制御器モデル格納部213およびモータモデル格納部214に可能されたモデルをそれぞれ取得する。このように、制御パラメータ調整装置210は、複数の制御器モデルおよびモータモデルを備えており、複数のモデルの中からひとつを呼び出してシミュレーションモデルの生成に用いる。
 一方、制御パラメータ調整装置210は、負荷モデルについては、新しく生成する。制御パラメータ調整装置210は、負荷モデルの生成に際し、モータの駆動条件を決定し、決定した駆動条件に基づいてモータを駆動し、速度制御器が出力する電流指令値およびモータの位置応答値を取得する。そして、制御パラメータ調整装置210は、取得した電流指令値および位置応答値に基づいて負荷モデルを生成する。
 これにより、制御器のパラメータ調整を行うためのシミュレーションに必要なシミュレーションモデルを適切に生成することができる。なお、負荷モデルは、制御器モデルおよびモータモデルと同様に、予め格納された複数のモデルの中から1つを選択して呼び出してもよい。これにより、シミュレーションモデルを容易に生成することができる。
 以上のように、本実施形態における制御パラメータ調整方法では、フィードバック制御系のインナーループ(速度制御器)から順に最適パラメータを選出するので、シミュレーションにより制御パラメータを調整する場合の計算量を削減し、チューニング時間を削減することができる。
 例えば、多数のパラメータに関して同時に最適値を探索すると、探索回数が膨大な回数となりチューニングに時間がかかる。これに対して、本実施形態では、制御器のパラメータを1つずつ確実に決定する方法を採用するので、繰り返し検証回数を減らすことができる。これにより、チューニング時間を短縮することができ、さらにチューニングにかかる時間もある程度把握することができる。
 本実施形態は、ロボットアームの制御に代表されるような、フィードバック制御系のインナーループ(速度制御器)から順にパラメータ調整を行うことを、実機を用いて検証不可能なアプリケーションに好適である。
(チューニングシステムの構成)
 図7は、本実施形態における制御パラメータ調整装置210を備える制御パラメータ調整システム(チューニングシステム)1000Aの構成例である。
 チューニングシステム1000Aは、機電一体モータであるモータ装置100と、演算装置200と、を備える。この図7に示すモータ装置100および演算装置200は、図1に示すモータ装置100および演算装置200と同様の構成を有する。
 また、チューニングシステム1000Aは、モータ装置100と演算装置200とを通信可能に接続する通信モジュールを備える。図7に示すチューニングシステム1000Aは、モータ装置100と演算装置200とを有線通線方式にて通信可能に接続するシステムであり、上記通信モジュールは、モータ装置100と演算装置200とを直接接続する通信ケーブル300である。通信ケーブル300は、例えば1本のシリアル通信ケーブルとすることができる。シリアル通信ケーブルは、例えばUSB-UART変換ケーブルであってよい。
 モータ装置100は、シャフトを有するロータと、ロータに対して径方向に対向するステータと、ロータおよびステータを囲むハウジングと、を有する。また、モータ装置100は、ハウジングの近傍に配置された回路基板を有する。この回路基板は、モータの駆動制御を行うモータ制御回路を有する。また、この回路基板には通信コネクタが実装されている。通信ケーブル300は、上記通信コネクタに接続されて、当該通信コネクタと演算装置200とを直接接続する。このように、モータ装置100は、通信機能を有する。
 
 さらに、モータ装置100は、回路基板に実装された磁気センサおよび電流センサを有し、モータ装置100単体でロータの位置情報、回転速度情報、電流情報、電圧情報およびトルク情報を含むモータ情報を取得可能である。 したがって、モータ装置100は、単体でモータ制御とデータ送受信とが可能である。
 図8は、モータ装置100の構成例である。
 この図8に示すように、モータ装置100は、モータ121と、ホール素子122と、差動増幅器123と、位置検出部124と、メモリ125と、位置指令発生部126と、制御器部127と、PWM制御部128と、インバータ129と、を備える。差動増幅器123、位置検出部124、メモリ125、位置指令発生部126、制御器部127、PWM制御部128およびインバータ129は、モータ制御回路に含まれる。このように、モータ装置100は、モータ121とモータ制御回路とが一体となった構造を有する。
 図8において、モータ121は、図1のモータ101に対応している。ホール素子122の出力は、差動増幅器123によって増幅され、位置検出部124に入力される。位置検出部124は、磁気センサの検出結果に基づいて、ロータの位置情報(位置検出値)を検出する。この位置検出部124は、メモリ125から学習値を取得してロータの位置情報を検出することもできる。
 制御器部127は、モータ121の駆動制御を行うための制御器を備え、位置指令発生部126が出力する位置指令値と位置検出部124が出力する位置検出値との差分xerrに基づいて、電圧指令値vrefを出力する。PWM制御部128は、電圧指令値vrefに基づいてPWM信号(UH、VH、WH、UL、VL、WL)を生成する。そして、PWM制御部128は、生成されたPWM信号に基づいて、インバータ129を構成するスイッチング素子をオン/オフ制御し、モータ121に駆動電力を供給する。
 この図8において、ホール素子122および差動増幅器123が図1のセンサ部104に対応しており、位置検出部124が図1の位置検出部113に対応している。また、位置指令発生部126が図1の位置指令発生部111に対応しており、制御器部127が図1の制御器部112に対応しており、PWM制御部128およびインバータ129が図1の電力変換部114に対応している。
 モータ装置100は、上述したように通信コネクタを有する。当該通信コネクタは、Rxピン、Txピン、3.3Vピン、SGNDピンを備える。これらRxピン、Txピン、3.3Vピン、SGNDピンは、通信ケーブル300であるUSB-UART変換ケーブルと接続することができる。
 また、モータ制御回路の位置指令発生部126に、入力パルス信号(STMP)やモータ回転方向(CW_CCW)を入力することで、モータをパルス信号で駆動させることもできる。
 図9は、モータ装置100が備えるMCU130とモータ121との間の関係を示す図である。この図9に示すように、モータ121の駆動はホール素子122によって検知され、差動増幅器123によって増幅された後、MCU130内でA/D変換器(ADC)によりデジタル信号に変換される。そして、このMCU130内において、モータ駆動のためのPWM信号の生成が行われ、生成されたPWM信号がインバータ129へ出力されてモータ121が駆動される。
 演算装置200は、上述した制御パラメータ調整装置210を備え、モータ制御回路の制御パラメータ(上述した各ゲイン)の最適値を選出する。そして、演算装置200は、モータ装置100に対して、制御パラメータを上記最適値に変更する指令を送信する。これにより、モータ制御回路の制御パラメータが演算装置200において決定された最適値に変更され、制御器部127は、当該最適値に従って動作する。
 図10は、通信ケーブル300としてのUSB-UART変換ケーブルを示す図である。通信ケーブル300は、その一端にUSB接続端子310を有し、他端にUSB-UART変換ドライバが配置されたUART接続端子320を有する。
 通信ケーブル300は、シリアルデータを蓄積可能なバッファを有していてもよい。この場合、USB接続端子310部分に、例えば1kByteのバッファが搭載される。通信ケーブル300がバッファを有することで、通信ケーブル300内に一時的にUART通信のデータ列を蓄積し、パケット単位でデータを送受信することができる。
 UART接続端子320部分は、10本のケーブルに分けられており、UART接続端子320の10本のピンのうち、VCCピンをモータ装置100の3.3Vピンに、TxDピンをモータ装置100のRxピンに、RxDピンをモータ装置100のTxピンに、GNDピンをモータ装置100のGNDに接続する。これにより、モータ装置100と演算装置200との間で、USB-UART変換ケーブルである通信ケーブル300を介したデータ送受信が可能となる。 例えば、ユーザが、演算装置200の表示部202に表示されたGUIから、演算装置200と通信ケーブル300との接続を指示するコマンドを入力すると、演算装置200は、USB-UART変換ケーブルを利用するためのドライバを利用して、演算装置200と通信ケーブル300との接続を行うことができる。ここで、上記ドライバは、演算装置200内に組み込まれているものとする。
 モータ装置100のモータ制御回路は、演算装置200に対して、通信ケーブル300を介して、モータ情報を含むシリアルデータを送信することができる。ここで、モータ情報は、ロータの位置情報、回転速度情報およびトルク情報の少なくとも1つを含むことができる。 例えば、ユーザが、演算装置200の表示部202に表示されたGUIから、モータ情報の送信を指示するコマンドを入力すると、演算装置200は、モータ装置100に対してモータ情報の送信要求コマンドを送信する。モータ装置100は、演算装置200から送信された送信要求コマンドに応答して、演算装置200に対して、通信ケーブル300を介してモータ情報を含むシリアルデータを送信する。
 このとき、モータ装置100のモータ制御回路は、1回の送信要求コマンドに対して、シリアルデータを連続して送信することができる。このように、モータ装置100は、シリアルデータ送信時には、マスタースレーブ方式で通信せず、シリアルデータを連続的に送信することができる。これにより、演算装置200は、高速なシリアルデータの取得が可能である。なお、上記シリアルデータは、図9のMCU130内で生成される。MCU130内で生成されたUARTのデータ列は、GPIOピンから出力され、USB-UART変換ケーブルを介して演算装置200へ送信される。
 ここで、シリアルデータは、モータ制御回路の制御周期ごとに取得した複数のモータ情報を順次連ねたデータであってもよい。これにより、演算装置200は、モータの制御周期でモータ情報(位置、速度、電流、電圧、トルクなど)を取得することができる。なお、演算装置200が取得するモータ情報は、ユーザがGUIから選択することができる。
 演算装置200は、表示部202を有しており、モータ装置100から取得したモータ情報をグラフ化して表示部202に表示させることができる。したがって、モータのチューニングが実行された後に、ユーザは正しくチューニングができたかどうかを容易に確認することができる。また、ユーザは、表示部202に表示された情報をもとに、GUIから制御パラメータの微調整を行うこともできる。この場合、演算装置200は、モータ装置100に対して、ユーザにより調整された制御パラメータを最適値に変更する指令を送信する。
(変形例)
 図7に示すチューニングシステム1000Aは、モータ装置100と演算装置200とを有線通線方式にて通信可能に接続するシステムである場合について説明したが、モータ装置100と演算装置200とは、無線通線方式にて通信可能に接続されていてもよい。 図11は、モータ装置100と演算装置200とが無線通線方式にて通信可能に接続された制御パラメータ調整システム(チューニングシステム)1000Bの構成例である。この場合、モータ装置100と演算装置200とを通信可能に接続する通信モジュールは、通信ケーブル300と、無線モジュール(無線通信モジュール)400と、を備える。無線モジュール400は、演算装置200と無線通信が可能であり、通信ケーブル300は、モータ装置100が備える通信コネクタと無線モジュール400とを直接接続する。ここで、通信ケーブル300は、チューニングシステム1000Aが備える上述した通信ケーブル300と同様である。
 さらに、図12に示す制御パラメータ調整システム(チューニングシステム)1000Cや、図13に示す制御パラメータ調整システム(チューニングシステム)1000Dのように、パルス発生器500がモータ装置100に接続されていてもよい。この場合、図9に示すMCU130には、パルス発生器500から入力パルス信号(STMP)およびモータ回転方向(CW_CCW)が入力され、モータ装置100は、モータをパルス信号で駆動させることが可能である。
 100…モータ装置(機電一体モータ)、101…モータ、110…モータ制御装置、112…制御器部、112a…位置制御器、112b…速度制御器、112c…電流制御器、200…演算装置、201…入力部、202…表示部、210…制御パラメータ調整装置、216…シミュレーションモデル生成部

Claims (17)

  1.  モータの駆動制御を行うための位置制御器および速度制御器を有する制御器をモデル化した制御器モデル、前記モータをモデル化したモータモデル、および前記モータに接続された負荷をモデル化した負荷モデルを含むシミュレーションモデルを生成する工程と、
     前記シミュレーションモデルを用いたシミュレーションを速度制御モードで実行し、前記速度制御器のパラメータを評価して最適値を選出する工程と、
     選出された前記速度制御器のパラメータを用いて、前記シミュレーションを位置速度制御モードで実行し、前記位置制御器のパラメータを評価して最適値を選出する工程と、を含むことを特徴とする制御パラメータ調整方法。
  2.  前記最適値を選出する工程では、
     1つの前記パラメータに対し、1つの制御性能を評価項目として当該パラメータを評価し、最適値を選出することを特徴とする請求項1に記載の制御パラメータ調整方法。
  3.  前記速度制御器のパラメータは、速度制御帯域を含み、
     前記最適値を選出する工程では、
     パルス波形の速度指令値を前記速度制御器に入力して前記シミュレーションを実行し、前記速度制御器の時定数を評価項目として前記速度制御帯域を評価し、当該速度制御帯域の最適値を選出することを特徴とする請求項1または2に記載の制御パラメータ調整方法。
  4.  前記速度制御器のパラメータは、速度積分ゲインを含み、
     前記最適値を選出する工程では、
     パルス波形の速度指令値を前記速度制御器に入力して前記シミュレーションを実行し、前記速度制御器の時定数を評価項目として前記速度積分ゲインを評価し、当該速度積分ゲインの最適値を選出することを特徴とする請求項1から3のいずれか1項に記載の制御パラメータ調整方法。
  5.  前記速度制御器のパラメータは、速度フィードフォワードゲインを含み、
     前記最適値を選出する工程では、
     台形波形の速度指令値を前記速度制御器に入力して前記シミュレーションを実行し、前記速度制御器の整定時間を評価項目として前記速度フィードフォワードゲインを評価し、当該速度フィードフォワードゲインの最適値を選出することを特徴とする請求項1から4のいずれか1項に記載の制御パラメータ調整方法。
  6.  前記速度制御器のパラメータは、速度制御帯域、速度積分ゲインおよび速度フィードフォワードゲインを含み、
     前記最適値を選出する工程では、
     前記速度制御帯域、前記速度積分ゲイン、前記速度フィードフォワードゲインの順に評価して最適値を選出することを特徴とする請求項1から5のいずれか1項に記載の制御パラメータ調整方法。
  7.  前記位置制御器のパラメータは、位置比例ゲインを含み、
     前記最適値を選出する工程では、
     前記モータを停止する位置指令値を前記位置制御器に入力して前記シミュレーションを実行し、前記位置制御器の整定時間を評価項目として前記位置比例ゲインを評価し、当該位置比例ゲインの最適値を選出することを特徴とする請求項1から6のいずれか1項に記載の制御パラメータ調整方法。
  8.  選出された前記パラメータの最適値を用いて、前記シミュレーションを位置速度制御モードで実行し、重視する制御性能に応じて、選出された前記パラメータの最適値を調整する工程をさらに含むことを特徴とする請求項1から7のいずれか1項に記載の制御パラメータ調整方法。
  9.  前記位置制御器のパラメータは、位置フィードフォワードゲインを含み、
     前記パラメータを調整する工程では、
     重視する制御性能が位置制御の応答である場合、前記モータの位置指令値と位置応答値との偏差を評価項目として前記位置フィードフォワードゲインを評価し、前記位置フィードフォワードゲインの最適値を調整することを特徴とする請求項8に記載の制御パラメータ調整方法。
  10.  前記位置制御器のパラメータは、位置比例ゲインを含み、
     前記パラメータを調整する工程では、
     重視する制御性能が位置制御の応答である場合、前記モータの位置指令値と位置応答値との偏差を評価項目として前記位置比例ゲインを評価し、前記位置比例ゲインの最適値を調整することを特徴とする請求項8または9に記載の制御パラメータ調整方法。
  11.  前記位置制御器のパラメータは、位置フィードフォワードゲインおよび位置比例ゲインを含み、
     前記パラメータを調整する工程では、
     重視する制御性能が位置制御の応答である場合、前記位置フィードフォワードゲイン、前記位置比例ゲインの順に評価して最適値を調整することを特徴とする請求項8から10のいずれか1項に記載の制御パラメータ調整方法。
  12.  前記位置制御器のパラメータは、位置フィードフォワードゲインを含み、
     前記パラメータを調整する工程では、
     重視する制御性能が速度制御の応答である場合、前記モータの速度指令値と速度応答値との偏差のむらを評価項目として前記位置フィードフォワードゲインを評価し、前記位置フィードフォワードゲインの最適値を調整することを特徴とする請求項8から11のいずれか1項に記載の制御パラメータ調整方法。
  13.  前記速度制御器のパラメータは、速度フィードフォワードゲインを含み、
     前記パラメータを調整する工程では、
     重視する制御性能が速度制御の応答である場合、前記モータの速度指令値と速度応答値との偏差のむらを評価項目として前記速度フィードフォワードゲインを評価し、前記速度フィードフォワードゲインの最適値を調整することを特徴とする請求項8から12のいずれか1項に記載の制御パラメータ調整方法。
  14.  前記速度制御器のパラメータは、速度制御帯域を含み、
     前記パラメータを調整する工程では、
     重視する制御性能が速度制御の応答である場合、前記モータの速度指令値と速度応答値との偏差のむらを評価項目として前記速度制御帯域を評価し、前記速度制御帯域の最適値を調整することを特徴とする請求項8から13のいずれか1項に記載の制御パラメータ調整方法。
  15.  前記位置制御器のパラメータは、位置フィードフォワードゲインを含み、
     前記速度制御器のパラメータは、速度フィードフォワードゲイン、速度制御帯域を含み、
     前記パラメータを調整する工程では、
     重視する制御性能が速度制御の応答である場合、前記位置フィードフォワードゲイン、前記速度フィードフォワードゲイン、前記速度制御帯域の順に評価して最適値を調整することを特徴とする請求項8から14のいずれか1項に記載の制御パラメータ調整方法。
  16.  前記シミュレーションモデルを生成する工程は、
     前記モータの識別情報に基づいて、前記制御器モデルおよび前記モータモデルを取得する工程と、
     前記モータの駆動条件を決定する工程と、
     前記駆動条件に基づいて前記モータを駆動し、前記速度制御器が出力する電流指令値および前記モータの位置応答値を取得する工程と、
     前記電流指令値および前記位置応答値に基づいて前記負荷モデルを生成する工程と、を含み、
     前記制御器モデル、前記モータモデルおよび前記負荷モデルを組み合わせて前記シミュレーションモデルを生成することを特徴とする請求項1から15のいずれか1項に記載の制御パラメータ調整方法。
  17.  モータの駆動制御を行うための位置制御器および速度制御器を有する制御器をモデル化した制御器モデル、前記モータをモデル化したモータモデル、および前記モータに接続された負荷をモデル化した負荷モデルを含むシミュレーションモデルを生成するシミュレーションモデル生成部と、
     前記シミュレーションモデルを用いたシミュレーションを速度制御モードで実行し、前記速度制御器のパラメータを評価して最適値を選出する第1のパラメータ選出部と、
     選出された前記速度制御器のパラメータを用いて、前記シミュレーションを位置速度制御モードで実行し、前記位置制御器のパラメータを評価して最適値を選出する第2のパラメータ選出部と、を備えることを特徴とする制御パラメータ調整装置。
PCT/JP2019/018169 2018-06-26 2019-04-27 制御パラメータ調整方法および制御パラメータ調整装置 WO2020003738A1 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2018-121353 2018-06-26
JP2018121353 2018-06-26

Publications (1)

Publication Number Publication Date
WO2020003738A1 true WO2020003738A1 (ja) 2020-01-02

Family

ID=68984801

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2019/018169 WO2020003738A1 (ja) 2018-06-26 2019-04-27 制御パラメータ調整方法および制御パラメータ調整装置

Country Status (1)

Country Link
WO (1) WO2020003738A1 (ja)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112230563A (zh) * 2020-09-18 2021-01-15 天津农学院 嵌入式控制器的仿真参数调试方法、装置及控制器
WO2022186051A1 (ja) * 2021-03-02 2022-09-09 ファナック株式会社 調整支援装置、制御システム及び調整支援方法
CN116341169A (zh) * 2021-12-24 2023-06-27 武汉市聚芯微电子有限责任公司 一种马达驱动波形的设计方法及装置
WO2024034211A1 (ja) * 2022-08-08 2024-02-15 株式会社日立産機システム モータ制御装置および方法
DE112021008017T5 (de) 2021-09-30 2024-05-16 Fanuc Corporation Industriemaschinen-Steuersystem

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2004328829A (ja) * 2003-04-22 2004-11-18 Yaskawa Electric Corp モータの制御装置及び制御方法
JP2009122779A (ja) * 2007-11-12 2009-06-04 Mitsubishi Electric Corp 制御システムおよび制御支援装置
WO2009096169A1 (ja) * 2008-01-29 2009-08-06 Panasonic Corporation モータ制御特性評価装置およびモータ制御特性の提示方法
JP2017167592A (ja) * 2016-03-14 2017-09-21 オムロン株式会社 シミュレーション装置、シミュレーション方法、制御プログラム、および記録媒体
JP2017167607A (ja) * 2016-03-14 2017-09-21 オムロン株式会社 設定支援装置、設定支援方法、情報処理プログラム、および記録媒体

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2004328829A (ja) * 2003-04-22 2004-11-18 Yaskawa Electric Corp モータの制御装置及び制御方法
JP2009122779A (ja) * 2007-11-12 2009-06-04 Mitsubishi Electric Corp 制御システムおよび制御支援装置
WO2009096169A1 (ja) * 2008-01-29 2009-08-06 Panasonic Corporation モータ制御特性評価装置およびモータ制御特性の提示方法
JP2017167592A (ja) * 2016-03-14 2017-09-21 オムロン株式会社 シミュレーション装置、シミュレーション方法、制御プログラム、および記録媒体
JP2017167607A (ja) * 2016-03-14 2017-09-21 オムロン株式会社 設定支援装置、設定支援方法、情報処理プログラム、および記録媒体

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112230563A (zh) * 2020-09-18 2021-01-15 天津农学院 嵌入式控制器的仿真参数调试方法、装置及控制器
WO2022186051A1 (ja) * 2021-03-02 2022-09-09 ファナック株式会社 調整支援装置、制御システム及び調整支援方法
DE112022000329T5 (de) 2021-03-02 2023-09-14 Fanuc Corporation Einstellungs-Unterstützungs-Vorrichtung, Steuersystem und Verfahren zur Einstellungs-Unterstützung
JP7518278B2 (ja) 2021-03-02 2024-07-17 ファナック株式会社 調整支援装置、制御システム及び調整支援方法
DE112021008017T5 (de) 2021-09-30 2024-05-16 Fanuc Corporation Industriemaschinen-Steuersystem
CN116341169A (zh) * 2021-12-24 2023-06-27 武汉市聚芯微电子有限责任公司 一种马达驱动波形的设计方法及装置
WO2024034211A1 (ja) * 2022-08-08 2024-02-15 株式会社日立産機システム モータ制御装置および方法

Similar Documents

Publication Publication Date Title
WO2020003738A1 (ja) 制御パラメータ調整方法および制御パラメータ調整装置
US9768716B2 (en) Motor control apparatus provided with magnetic flux control unit, and machine learning apparatus and method thereof
JP5640455B2 (ja) プログラム、記録媒体、サーボモータの制御パラメータ調整方法、開発支援装置、サーボシステムの開発システム
CN104395847B (zh) 马达的最佳动作模式选定方法以及马达选定装置
US20150084558A1 (en) Electric Motor Phase Control System
CN109562518B (zh) 并联连杆机构的控制装置
CN110843552A (zh) 电动汽车扭矩控制方法、装置、设备及存储介质
CN112528434B (zh) 信息识别方法、装置、电子设备和存储介质
JP4102770B2 (ja) 巻線界磁式同期機の制御装置
EP4140658A1 (en) Electric tool system, control method, and program
JP2019208352A (ja) 電動機駆動制御装置および該方法ならびに電動機駆動制御システム
WO2023029903A1 (zh) 负载惯量辨识方法、装置、电子设备及系统
Anatolii et al. The comparative analysis of modelling of simscape physical plant system design and armature-controlled system design of DC motor
JP2014123188A (ja) 分散制御装置及び分散制御方法
CN110329087B (zh) 电动汽车驻坡方法、装置、设备及存储介质
CN112423938B (zh) 电动工具、控制方法和程序
US10365631B2 (en) Instruction generating device
US20180262153A1 (en) Motor control system
US11791751B2 (en) Motor control system, motor control method, and program
US20210399663A1 (en) Apparatus and method for detecting motor rotor position
JP7460357B2 (ja) 制御装置、及び制御システム
CN109768738B (zh) 电动机控制装置、控制系统以及电动机控制方法
CN114629408A (zh) 马达驱动方法
JP2003333874A (ja) 負荷イナーシャ同定装置
US20240160179A1 (en) Control system, control method, and control program

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

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 19824499

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: JP