JP2018014875A - Motor control device, motor driving device, and motor driving system - Google Patents

Motor control device, motor driving device, and motor driving system Download PDF

Info

Publication number
JP2018014875A
JP2018014875A JP2017054899A JP2017054899A JP2018014875A JP 2018014875 A JP2018014875 A JP 2018014875A JP 2017054899 A JP2017054899 A JP 2017054899A JP 2017054899 A JP2017054899 A JP 2017054899A JP 2018014875 A JP2018014875 A JP 2018014875A
Authority
JP
Japan
Prior art keywords
value
command value
unit
angle
motor
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP2017054899A
Other languages
Japanese (ja)
Other versions
JP6870410B2 (en
Inventor
鈴木 晴之
Haruyuki Suzuki
晴之 鈴木
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Ricoh Co Ltd
Original Assignee
Ricoh Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Ricoh Co Ltd filed Critical Ricoh Co Ltd
Priority to US15/637,192 priority Critical patent/US10133255B2/en
Priority to EP17179233.6A priority patent/EP3267575B1/en
Publication of JP2018014875A publication Critical patent/JP2018014875A/en
Application granted granted Critical
Publication of JP6870410B2 publication Critical patent/JP6870410B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Control Of Motors That Do Not Use Commutators (AREA)
  • Control Of Stepping Motors (AREA)

Abstract

PROBLEM TO BE SOLVED: To make it possible to switch a method for controlling a stepping motor.SOLUTION: A motor control device according to one embodiment is a motor control device that controls a stepping motor on the basis of a first current command value depending on open loop control and a second current command value depending on closed loop control. The motor control device comprises: a control method selection part that selects the open loop control or the closed loop control on the basis of a speed command value; and a command value output part that, when the open loop control is selected, outputs a first target value as a first current command value and when the closed loop is selected, outputs a second target value as a second current command value.SELECTED DRAWING: Figure 1

Description

本発明は、モータ制御装置、モータ駆動装置、及びモータ駆動システムに関する。   The present invention relates to a motor control device, a motor drive device, and a motor drive system.

2相のコイル及び着磁された回転子を備えるステッピングモータが知られている。このステッピングモータでは、2相のコイルに90度位相が異なる駆動電流を供給し、この駆動電流の位相を進めると、駆動電流の位相に追従して回転子が回転する。このため、ステッピングモータは、エンコーダ等のセンサを利用しない開ループ制御により、精度よく駆動を制御できる。   Stepping motors having a two-phase coil and a magnetized rotor are known. In this stepping motor, when a driving current having a phase difference of 90 degrees is supplied to a two-phase coil and the phase of the driving current is advanced, the rotor rotates following the phase of the driving current. For this reason, the stepping motor can accurately control the drive by open loop control that does not use a sensor such as an encoder.

しかしながら、開ループ制御では、負荷や駆動速度によらず、一定振幅の駆動電流がコイルに供給されるため、高速駆動時や高負荷時に、回転子が駆動電流の位相に追従できなくなり、脱調する恐れがある。また、低速駆動時や低負荷時の電力効率が低下するという問題もある。   However, in open-loop control, a constant amplitude drive current is supplied to the coil regardless of the load and drive speed, so the rotor cannot follow the phase of the drive current during high-speed drive or high load, resulting in step-out. There is a fear. There is also a problem that the power efficiency at the time of low speed driving or low load is lowered.

ステッピングモータの他の制御方法として、閉ループ制御が提案されている。閉ループ制御は、コイルの誘起電圧に基づいて回転子の角度を推定し、推定された角度に基づいて駆動電流を制御する制御方法である。この閉ループ制御によれば、高速駆動時や高負荷時において、高精度かつ低消費電力にモータを制御することができる。   Closed loop control has been proposed as another control method for the stepping motor. Closed loop control is a control method that estimates the rotor angle based on the induced voltage of the coil and controls the drive current based on the estimated angle. According to this closed loop control, the motor can be controlled with high accuracy and low power consumption during high-speed driving and high load.

しかしながら、モータの低速駆動時には、発生する誘起電圧が小さいため、閉ループ制御によってモータを安定して制御することは困難であった。   However, when the motor is driven at a low speed, the induced voltage generated is small, and it has been difficult to stably control the motor by closed loop control.

本発明は、上記の課題に鑑みてなされたものであり、ステッピングモータの制御方法を切替可能とすることを目的とする。   The present invention has been made in view of the above-described problems, and an object of the present invention is to enable switching of a stepping motor control method.

一実施形態に係るモータ制御装置は、開ループ制御に依存する第1の電流指令値及び閉ループ制御に依存する第2の電流指令値に基づいて、ステッピングモータを制御するモータ制御装置であって、速度指令値に基づいて、前記開ループ制御又は前記閉ループ制御を選択する制御方法選択部と、前記開ループ制御が選択された場合、前記第1の電流指令値として第1の目標値を出力し、前記閉ループ制御が選択された場合、前記第2の電流指令値として第2の目標値を出力する指令値出力部と、を備える。   A motor control device according to an embodiment is a motor control device that controls a stepping motor based on a first current command value that depends on open-loop control and a second current command value that depends on closed-loop control, When the open loop control or the control method selection unit that selects the open loop control or the closed loop control based on the speed command value is selected, the first target value is output as the first current command value. And a command value output unit that outputs a second target value as the second current command value when the closed-loop control is selected.

本発明の各実施形態によれば、ステッピングモータの制御方法を切替可能とすることができる。   According to each embodiment of the present invention, the stepping motor control method can be switched.

第1実施形態に係るモータ駆動システムの構成の一例を示す図。The figure which shows an example of a structure of the motor drive system which concerns on 1st Embodiment. モータの一例を示す図。The figure which shows an example of a motor. 角度指令値算出部の一例を示す図。The figure which shows an example of an angle command value calculation part. 角度制御部の一例を示す図。The figure which shows an example of an angle control part. d軸電流制御部の一例を示す図。The figure which shows an example of a d-axis current control part. q軸電流制御部の一例を示す図。The figure which shows an example of a q-axis current control part. 第1ベクトル回転部の動作を説明するグラフ。The graph explaining operation | movement of a 1st vector rotation part. 第1ベクトル回転部の動作を説明するグラフ。The graph explaining operation | movement of a 1st vector rotation part. 第2ベクトル回転部の動作を説明するグラフ。The graph explaining operation | movement of a 2nd vector rotation part. 角度推定部の一例を示す図。The figure which shows an example of an angle estimation part. 第1実施形態における制御方法の選択方法を説明する状態遷移図。The state transition diagram explaining the selection method of the control method in 1st Embodiment. 第1実施形態におけるモータ駆動システムの動作の一例を示すフローチャート。The flowchart which shows an example of operation | movement of the motor drive system in 1st Embodiment. 第1実施形態に係るモータ駆動システムのシミュレーション結果を示す図。The figure which shows the simulation result of the motor drive system which concerns on 1st Embodiment. 第1実施形態に係るモータ駆動システムの構成を示す図。The figure which shows the structure of the motor drive system which concerns on 1st Embodiment. 第2実施形態に係る角度制御部の一例を示す図。The figure which shows an example of the angle control part which concerns on 2nd Embodiment. 第3実施形態に係るモータ駆動システムの構成を示す図。The figure which shows the structure of the motor drive system which concerns on 3rd Embodiment. 第3実施形態における制御方法の選択方法を説明する状態遷移図。The state transition diagram explaining the selection method of the control method in 3rd Embodiment. 第3実施形態におけるモータ駆動システムの動作の一例を示すフローチャート。The flowchart which shows an example of operation | movement of the motor drive system in 3rd Embodiment. 第4実施形態に係るモータ駆動システムの構成の一例を示す図。The figure which shows an example of a structure of the motor drive system which concerns on 4th Embodiment. 閉ループ制御時における電圧指令値と回転速度との関係を示すグラフ。The graph which shows the relationship between the voltage command value and rotation speed at the time of closed loop control. 閉ループ制御時における電圧指令値と回転速度との関係を示すグラフ。The graph which shows the relationship between the voltage command value and rotation speed at the time of closed loop control. 第4実施形態に係る第1選択部の一例を示す図。The figure which shows an example of the 1st selection part which concerns on 4th Embodiment. 第4実施形態における弱め界磁制御の切替方法を説明する状態遷移図。The state transition diagram explaining the switching method of the field weakening control in 4th Embodiment. 第4実施形態に係る第1選択部の一例を示す図。The figure which shows an example of the 1st selection part which concerns on 4th Embodiment.

以下、本発明の各実施形態について、添付の図面を参照しながら説明する。なお、各実施形態に係る明細書及び図面の記載に関して、実質的に同一の機能構成を有する構成要素については、同一の符号を付することにより重畳した説明を省略する。   Hereinafter, embodiments of the present invention will be described with reference to the accompanying drawings. In addition, regarding the description of the specification and the drawings according to each embodiment, constituent elements having substantially the same functional configuration are denoted by the same reference numerals and overlapping description is omitted.

<第1実施形態>
第1実施形態に係るモータ駆動システムについて、図1〜図13を参照して説明する。
<First Embodiment>
The motor drive system according to the first embodiment will be described with reference to FIGS.

図1は、本実施形態に係るモータ駆動システムの構成の一例を示す図である。図1のモータ駆動システムは、モータ1と、インバータ2と、電流検出器3と、モータ制御装置100と、を備える。インバータ2、電流検出器3、及びモータ制御装置100は、モータ1を駆動するモータ駆動装置を構成する。   FIG. 1 is a diagram illustrating an example of a configuration of a motor drive system according to the present embodiment. The motor drive system in FIG. 1 includes a motor 1, an inverter 2, a current detector 3, and a motor control device 100. The inverter 2, the current detector 3, and the motor control device 100 constitute a motor driving device that drives the motor 1.

モータ1は、90度位相が異なる2相の交流電流により駆動されるモータである。モータ1の各相を、A相及びB相と称する。以下では、モータ1は、2相のステッピングモータ(STM)であるものとするが、これに限られない。図2は、モータ1の一例を示す図である。図2のモータ1は、回転子11と、A相コイル12Aと、B相コイル12Bと、を備える。   The motor 1 is a motor driven by two-phase alternating currents that are 90 degrees out of phase. Each phase of the motor 1 is referred to as an A phase and a B phase. Below, although the motor 1 shall be a two-phase stepping motor (STM), it is not restricted to this. FIG. 2 is a diagram illustrating an example of the motor 1. The motor 1 in FIG. 2 includes a rotor 11, an A-phase coil 12A, and a B-phase coil 12B.

回転子11は、円周状に配置された永久磁石や、円周状に着磁された磁性体により構成される。回転子11は、p個の極ペア(S極及びN極のペア)を有する。図2の例では、極ペア数pは1である。回転子11の実際の角度(位置)を実角度θmという。   The rotor 11 is constituted by a permanent magnet arranged circumferentially or a magnetic body magnetized circumferentially. The rotor 11 has p pole pairs (a pair of S poles and N poles). In the example of FIG. 2, the number of pole pairs p is 1. The actual angle (position) of the rotor 11 is referred to as the actual angle θm.

以下では、回転子11の1回転を1周期とする角度を機械角と称し、回転子11の1回転をp周期とする角度を電気角と称する。電気角は、機械角のp倍に相当する。以降、断りのない限り、回転子11の角度及び速度を電気角で表す。実角度θmは、電気角である。   Hereinafter, an angle with one rotation of the rotor 11 as one cycle is referred to as a mechanical angle, and an angle with one rotation of the rotor 11 as a p cycle is referred to as an electrical angle. The electrical angle corresponds to p times the mechanical angle. Hereinafter, unless otherwise noted, the angle and speed of the rotor 11 are represented by electrical angles. The actual angle θm is an electrical angle.

A相コイル12A及びB相コイル12Bは、互いに接続されていない独立したコイルであり、90度位相をずらして配置される。以下、A相コイル12Aの2つの端子の電圧を、それぞれ端子電圧A+,A−という。また、B相コイル12Bの2つの端子の電圧を、それぞれ端子電圧B+,B−という。A相コイル12A及びB相コイル12Bに、90度位相が異なる交流電流を流すことで、回転子11は回転する。   The A-phase coil 12A and the B-phase coil 12B are independent coils that are not connected to each other, and are arranged 90 degrees out of phase. Hereinafter, the voltages at the two terminals of the A-phase coil 12A are referred to as terminal voltages A + and A-, respectively. The voltages at the two terminals of the B-phase coil 12B are referred to as terminal voltages B + and B-, respectively. The rotor 11 rotates by passing alternating currents having a phase difference of 90 degrees through the A-phase coil 12A and the B-phase coil 12B.

インバータ2は、モータ制御装置100から入力された電圧指令値に従って、モータ1に駆動電流Iを供給する回路である。インバータ2は、PWM(Pulse Width Modulation)回路(制御信号生成部)やドライバ回路などにより構成される。PWM回路は、モータ制御装置100に設けられてもよい。   The inverter 2 is a circuit that supplies a drive current I to the motor 1 in accordance with a voltage command value input from the motor control device 100. The inverter 2 includes a PWM (Pulse Width Modulation) circuit (control signal generation unit), a driver circuit, and the like. The PWM circuit may be provided in the motor control device 100.

インバータ2は、モータ制御装置100から入力されたa軸電圧指令値Vaを、端子電圧A+,A−に変換し、A相コイル12Aの端子にそれぞれ印加する。具体的には、PWM回路は、a軸電圧指令値Vaに応じた制御信号(パルス信号)を生成し、ドライバ回路に入力する。ドライバ回路は、制御信号に応じた端子電圧A+,A−をA相コイル12Aの端子にそれぞれ印加する。端子電圧A+,A−の差が、A相コイル12Aの端子間電圧となる。この端子間電圧を印加されることにより、A相コイル12Aにa軸電圧指令値Vaに応じたA相駆動電流Iaが流れる。a軸電圧指令値Vaは、駆動電圧のa軸成分であり、A相コイル12Aの駆動電圧値に相当する。なお、インバータ2がA相コイル12Aに印加可能な端子間電圧は、インバータ2の電源電圧Vcc以下である。   The inverter 2 converts the a-axis voltage command value Va input from the motor control device 100 into terminal voltages A + and A− and applies them to the terminals of the A-phase coil 12A. Specifically, the PWM circuit generates a control signal (pulse signal) corresponding to the a-axis voltage command value Va and inputs it to the driver circuit. The driver circuit applies terminal voltages A + and A− according to the control signal to the terminals of the A-phase coil 12A, respectively. The difference between the terminal voltages A + and A− is the inter-terminal voltage of the A-phase coil 12A. By applying this inter-terminal voltage, the A-phase drive current Ia corresponding to the a-axis voltage command value Va flows through the A-phase coil 12A. The a-axis voltage command value Va is an a-axis component of the drive voltage and corresponds to the drive voltage value of the A-phase coil 12A. The inter-terminal voltage that can be applied to the A-phase coil 12A by the inverter 2 is equal to or lower than the power supply voltage Vcc of the inverter 2.

また、インバータ2は、モータ制御装置100から入力されたb軸電圧指令値Vbを、端子電圧B+,B−に変換し、B相コイル12Bの端子にそれぞれ印加する。具体的には、PWM回路は、b軸電圧指令値Vbに応じた制御信号(パルス信号)を生成し、ドライバ回路に入力する。ドライバ回路は、制御信号に応じた端子電圧B+,B−をB相コイル12Bの端子にそれぞれ印加する。端子電圧B+,B−の差が、B相コイル12Bの端子間電圧となる。この端子間電圧を印加されることにより、B相コイル12Bにb軸電圧指令値Vbに応じたB相駆動電流Ibが流れる。b軸電圧指令値Vbは、駆動電圧のb軸成分であり、B相コイル12Bの駆動電圧に相当する。なお、インバータ2がB相コイル12Bに印加可能な端子間電圧は、インバータ2の電源電圧Vcc以下である。   Further, the inverter 2 converts the b-axis voltage command value Vb input from the motor control device 100 into terminal voltages B + and B−, and applies them to the terminals of the B-phase coil 12B. Specifically, the PWM circuit generates a control signal (pulse signal) corresponding to the b-axis voltage command value Vb and inputs it to the driver circuit. The driver circuit applies terminal voltages B + and B− according to the control signal to the terminals of the B-phase coil 12B. The difference between the terminal voltages B + and B− is the inter-terminal voltage of the B-phase coil 12B. By applying this inter-terminal voltage, a B-phase drive current Ib corresponding to the b-axis voltage command value Vb flows through the B-phase coil 12B. The b-axis voltage command value Vb is a b-axis component of the drive voltage and corresponds to the drive voltage of the B-phase coil 12B. The inter-terminal voltage that can be applied by inverter 2 to phase B coil 12B is equal to or lower than power supply voltage Vcc of inverter 2.

電流検出器3は、電流値を検出し、デジタル値として出力する電流センサである。電流検出器3は、シャント抵抗、差動増幅器、及びAD(Analog to Digital)変換器などにより構成される。   The current detector 3 is a current sensor that detects a current value and outputs it as a digital value. The current detector 3 includes a shunt resistor, a differential amplifier, an AD (Analog to Digital) converter, and the like.

電流検出器3は、A相駆動電流Iaの電流値であるa軸電流値iaを検出し、出力する。a軸電流値iaは、駆動電流Iの検出値のa軸成分である。また、電流検出器3は、B相駆動電流Ibの電流値であるb軸電流値ibを検出し、出力する。b軸電流値ibは、駆動電流Iの検出値のb軸成分である。a,b軸は、それぞれA,B相に対応する。a,b軸について、詳しくは後述する。電流検出器3が出力したa軸電流値ia及びb軸電流値ibは、モータ制御装置100に入力される。   The current detector 3 detects and outputs an a-axis current value ia that is a current value of the A-phase drive current Ia. The a-axis current value ia is an a-axis component of the detected value of the drive current I. The current detector 3 detects and outputs a b-axis current value ib that is a current value of the B-phase drive current Ib. The b-axis current value ib is a b-axis component of the detected value of the drive current I. The a and b axes correspond to the A and B phases, respectively. The a and b axes will be described later in detail. The a-axis current value ia and the b-axis current value ib output from the current detector 3 are input to the motor control device 100.

モータ制御装置100は、プロセッサと、メモリと、により構成される。プロセッサは、例えば、CPU(Central Processing Unit)、MPU(Micro Processing Unit)、DSP(Digital Signal Processor)などである。プロセッサは、ASIC(Application Specific Integrated Circuit)、FPGA(Field Programmable Gate Array)、PLD(Programmable Logic Device)などであってもよい。プロセッサは、メモリに格納されたプログラムを実行する。   The motor control device 100 includes a processor and a memory. The processor is, for example, a CPU (Central Processing Unit), an MPU (Micro Processing Unit), a DSP (Digital Signal Processor), or the like. The processor may be an application specific integrated circuit (ASIC), a field programmable gate array (FPGA), a programmable logic device (PLD), or the like. The processor executes a program stored in the memory.

メモリは、DRAM(Dynamic Random Access Memory)、SRAM(Static RAM)、MRAM(Magnetic RAM)、フラッシュメモリなどである。メモリは、プロセッサが実行するプログラムを格納する。   The memory is DRAM (Dynamic Random Access Memory), SRAM (Static RAM), MRAM (Magnetic RAM), flash memory, or the like. The memory stores a program executed by the processor.

モータ制御装置100は、例えば、1つ又は複数のプロセッサと、1つ又は複数のメモリと、を備えるICチップにより実現される。ICチップには、インバータ2及び電流検出器3の少なくとも一方が含まれてもよい。   The motor control device 100 is realized by, for example, an IC chip that includes one or more processors and one or more memories. The IC chip may include at least one of the inverter 2 and the current detector 3.

モータ制御装置100は、基準パルスrefclkを入力される。基準パルスrefclkは、モータ1を制御するためのパルスであり、従来の制御装置に入力されるパルスと同様のものである。モータ制御装置100は、基準パルスrefclkに基づいて、閉ループ制御と、開ループ制御と、の2種類の制御方法でモータ1を制御する。   The motor control device 100 receives the reference pulse refclk. The reference pulse refclk is a pulse for controlling the motor 1 and is the same as the pulse input to the conventional control device. The motor control device 100 controls the motor 1 based on the reference pulse refclk by two types of control methods, closed loop control and open loop control.

閉ループ制御は、フィードバックされた制御結果(回転子11の角度及び速度)に基づいて算出された電流指令値により、モータ1を制御する制御方法である。本実施形態のように、モータ1をセンサレス制御する場合、モータ1の角度及び速度を直接的に取得することはできない。このため、本実施形態では、モータ1の角度及び速度の推定値がフィードバックされる。閉ループ制御によれば、モータ1を高精度に制御することができる。   The closed loop control is a control method for controlling the motor 1 based on a current command value calculated based on a feedback control result (angle and speed of the rotor 11). As in the present embodiment, when the motor 1 is sensorlessly controlled, the angle and speed of the motor 1 cannot be directly acquired. For this reason, in this embodiment, the estimated values of the angle and speed of the motor 1 are fed back. According to the closed loop control, the motor 1 can be controlled with high accuracy.

開ループ制御は、予め設定された電流指令値によってモータ1を制御する制御方法である。開ループ制御では、閉ループ制御とは異なり、制御結果であるモータ1の角度及び速度がフィードバックされない。開ループ制御によれば、簡易な方法でモータ1を制御することができる。   The open loop control is a control method for controlling the motor 1 with a preset current command value. In the open loop control, unlike the closed loop control, the angle and speed of the motor 1 as a control result are not fed back. According to the open loop control, the motor 1 can be controlled by a simple method.

図1に示すように、モータ制御装置100は、機能構成として、角度指令値算出部101と、角度制御部102と、第1選択部103と、第2選択部104と、d軸電流制御部105と、q軸電流制御部106と、を備える。また、モータ制御装置100は、第1ベクトル回転部107と、第2ベクトル回転部108と、第3選択部109と、角度推定部110と、制御方法選択部111と、を備える。これらの機能構成は、プロセッサがプログラムを実行することにより実現される。   As shown in FIG. 1, the motor control device 100 includes an angle command value calculation unit 101, an angle control unit 102, a first selection unit 103, a second selection unit 104, and a d-axis current control unit as functional configurations. 105 and a q-axis current control unit 106. In addition, the motor control device 100 includes a first vector rotation unit 107, a second vector rotation unit 108, a third selection unit 109, an angle estimation unit 110, and a control method selection unit 111. These functional configurations are realized by a processor executing a program.

角度指令値算出部101は、外部から基準パルスrefclkを入力される。角度指令値算出部101は、基準パルスrefclkを積算することにより、角度指令値θtgtを算出し、出力する。角度指令値θtgtは、回転子11の角度の目標値である。角度指令値算出部101が出力した角度指令値θtgtは、角度制御部102と、第3選択部109と、に入力される。   The angle command value calculation unit 101 receives a reference pulse refclk from the outside. The angle command value calculation unit 101 calculates and outputs an angle command value θtgt by integrating the reference pulse refclk. The angle command value θtgt is a target value for the angle of the rotor 11. The angle command value θtgt output from the angle command value calculation unit 101 is input to the angle control unit 102 and the third selection unit 109.

また、角度指令値算出部101は、基準パルスrefclkの周波数を計測することにより、速度指令値ωtgtを算出し、出力する。速度指令値ωtgtは、回転子11の速度(角速度)の目標値である。角度指令値算出部101が出力した速度指令値ωtgtは、制御方法選択部111に入力される。   Further, the angle command value calculation unit 101 calculates and outputs a speed command value ωtgt by measuring the frequency of the reference pulse refclk. The speed command value ωtgt is a target value for the speed (angular speed) of the rotor 11. The speed command value ωtgt output from the angle command value calculation unit 101 is input to the control method selection unit 111.

図3は、角度指令値算出部101の一例を示す図である。図3の角度指令値算出部101は、カウンタ1011と、周期計測部1012と、逆数算出部1013と、を備える。   FIG. 3 is a diagram illustrating an example of the angle command value calculation unit 101. The angle command value calculation unit 101 in FIG. 3 includes a counter 1011, a period measurement unit 1012, and an inverse number calculation unit 1013.

カウンタ1011は、基準パルスrefclkを入力される。カウンタ1011は、基準パルスrefclkをカウントし、カウント値を角度指令値θtgtとして出力する。基準パルスrefclkのカウントは、基準パルスrefclkの積算に相当する。   The counter 1011 receives the reference pulse refclk. The counter 1011 counts the reference pulse refclk and outputs the count value as an angle command value θtgt. The count of the reference pulse refclk corresponds to the integration of the reference pulse refclk.

周期計測部1012は、基準パルスrefclkを入力される。周期計測部1012は、基準パルスrefclkの周期tωを計測し、出力する。周期tωは、基準パルスrefclkより十分高速な固定周波数のクロックで、基準パルスrefclkのエッジ間隔を計測することにより、計測できる。   The period measurement unit 1012 receives the reference pulse refclk. The period measurement unit 1012 measures and outputs the period tω of the reference pulse refclk. The period tω can be measured by measuring the edge interval of the reference pulse refclk with a fixed frequency clock sufficiently faster than the reference pulse refclk.

逆数算出部1013は、周期tωを入力され、周期tωの逆数を算出し、得られた値に係数Kを乗算した値を、速度指令値ωtgtとして出力する。係数Kは、周期tωの逆数を、基準パルスrefclkの周波数に相当する値に変換するための係数である。   The reciprocal calculation unit 1013 receives the period tω, calculates the reciprocal of the period tω, and outputs a value obtained by multiplying the obtained value by the coefficient K as a speed command value ωtgt. The coefficient K is a coefficient for converting the reciprocal of the period tω into a value corresponding to the frequency of the reference pulse refclk.

なお、角度指令値算出部101は、角度指令値θtgtを微分することにより、速度指令値ωtgtを算出してもよい。この場合、角度指令値算出部101は、一定時間ごとに角度指令値θtgtの差分を計算することにより、速度指令値ωtgtを算出できる。角度指令値θtgtの差分が、速度指令値ωtgtに相当する。   The angle command value calculation unit 101 may calculate the speed command value ωtgt by differentiating the angle command value θtgt. In this case, the angle command value calculation unit 101 can calculate the speed command value ωtgt by calculating the difference between the angle command values θtgt at regular intervals. The difference in the angle command value θtgt corresponds to the speed command value ωtgt.

角度制御部102は、角度指令値θtgtと、角度推定値θestと、速度指令値ωestと、を入力される。角度推定値θestは、回転子11の角度の推定値である。速度指令値ωestは、回転子11の速度(角速度)の推定値である。角度推定値θest及び速度指令値ωestについて、詳しくは後述する。   The angle control unit 102 receives the angle command value θtgt, the estimated angle value θest, and the speed command value ωest. The estimated angle value θest is an estimated value of the angle of the rotor 11. The speed command value ωest is an estimated value of the speed (angular speed) of the rotor 11. The angle estimated value θest and the speed command value ωest will be described later in detail.

角度制御部102は、角度推定値θestが角度指令値θtgtに一致するように、電流指令値itgtを算出し、出力する。電流指令値itgt(第2の目標値)は、モータ1を閉ループ制御する際のq軸電流指令値iqt(第2の電流指令値)の目標値である。q軸電流指令値iqtは、駆動電流Iのq軸成分(トルク成分)である。   The angle control unit 102 calculates and outputs a current command value itgt so that the estimated angle value θest matches the angle command value θtgt. The current command value itgt (second target value) is a target value of the q-axis current command value iqt (second current command value) when the motor 1 is closed-loop controlled. The q-axis current command value iqt is a q-axis component (torque component) of the drive current I.

図4は、角度制御部102の一例を示す図である。図4の角度制御部102は、比較部1021と、増幅部1022と、比較部1023と、増幅部1024,1025と、積分部1026と、加算部1027と、を備える。   FIG. 4 is a diagram illustrating an example of the angle control unit 102. 4 includes a comparison unit 1021, an amplification unit 1022, a comparison unit 1023, amplification units 1024 and 1025, an integration unit 1026, and an addition unit 1027.

比較部1021は、角度指令値θtgtと、角度推定値θestと、を入力される。角度指令値θtgtは、角度制御の目標値に相当する。また、角度推定値θestは、角度制御の検出角度値に相当する。比較部1021は、角度指令値θtgtと角度指令値θestとの差を算出し、出力する。比較部1021の出力値は、増幅部1022に入力される。   The comparison unit 1021 receives the angle command value θtgt and the estimated angle value θest. The angle command value θtgt corresponds to a target value for angle control. Further, the estimated angle value θest corresponds to a detected angle value of angle control. The comparison unit 1021 calculates and outputs the difference between the angle command value θtgt and the angle command value θest. The output value of the comparison unit 1021 is input to the amplification unit 1022.

増幅部1022は、比較部1021の出力値を、所定のゲインG1で増幅し、出力する。増幅部1022の出力値は、角度制御の操作量に相当する。以下、増幅部1022の出力値を操作量C(=G1×(θtgt−θest))と称する。操作量Cは、比較部1023に入力される。   The amplification unit 1022 amplifies the output value of the comparison unit 1021 with a predetermined gain G1 and outputs the amplified value. The output value of the amplifying unit 1022 corresponds to an operation amount for angle control. Hereinafter, the output value of the amplifying unit 1022 is referred to as an operation amount C (= G1 × (θtgt−θest)). The operation amount C is input to the comparison unit 1023.

比較部1023は、操作量Cと、速度推定値ωestと、を入力される。比較部1023は、操作量Cと速度推定値ωestとの差を算出し、出力する。速度推定値ωestは、速度制御の検出角度値に相当する。また、操作量Cは、速度制御の目標値に相当する。比較部1023の出力値は、増幅部1024に入力される。   The comparison unit 1023 receives the operation amount C and the speed estimated value ωest. The comparison unit 1023 calculates and outputs the difference between the operation amount C and the estimated speed value ωest. The speed estimated value ωest corresponds to a detected angle value of speed control. The operation amount C corresponds to a target value for speed control. The output value of the comparison unit 1023 is input to the amplification unit 1024.

増幅部1024は、比較部1023の出力値を、所定のゲインG2で増幅し、出力する。増幅部1024の出力値は、増幅部1025と、加算部1027と、に入力される。   The amplification unit 1024 amplifies the output value of the comparison unit 1023 with a predetermined gain G2 and outputs the amplified value. The output value of the amplifying unit 1024 is input to the amplifying unit 1025 and the adding unit 1027.

増幅部1025は、増幅部1024の出力値を、所定のゲインG3で増幅し、出力する。増幅部1025の出力値は、積分部1026に入力される。   The amplifying unit 1025 amplifies the output value of the amplifying unit 1024 with a predetermined gain G3 and outputs it. The output value of the amplification unit 1025 is input to the integration unit 1026.

積分部1026は、増幅部1025の出力値を積分し、出力する。積分部1026の出力値は、加算部1055に入力される。   The integrating unit 1026 integrates and outputs the output value of the amplifying unit 1025. The output value of the integrating unit 1026 is input to the adding unit 1055.

加算部1027は、増幅部1024の出力値と、積分部1026の出力値と、を加算して、電流指令値itgtとして出力する。電流指令値itgtは、角度制御に含まれる速度制御の操作量に相当する。電流指令値itgtは、以下の式で表される。   Adder 1027 adds the output value of amplifier 1024 and the output value of integrator 1026, and outputs the result as current command value itgt. The current command value itgt corresponds to a speed control operation amount included in the angle control. The current command value itgt is expressed by the following equation.

Figure 2018014875
Figure 2018014875

図4の角度制御部102によれば、角度制御ループの内側に速度制御ループ(比較部1023及び増幅部1024)が含まれる。この速度制御ループは、位相進み要素となるため、図4の構成により、角度制御部102の位相余裕を確保することができる。また、図4の角度制御部102は、微分要素を含まないため、ノイズの影響を受けにくく、電流指令値itgtを安定して出力することができる。   According to the angle control unit 102 of FIG. 4, the speed control loop (the comparison unit 1023 and the amplification unit 1024) is included inside the angle control loop. Since this speed control loop becomes a phase advance element, the phase margin of the angle control unit 102 can be secured by the configuration of FIG. Further, since the angle control unit 102 in FIG. 4 does not include a differential element, the angle control unit 102 is less susceptible to noise and can stably output the current command value itgt.

なお、角度制御部102は、速度制御ループを含まない構成も可能である。この場合、図4の構成から、比較部1023及び増幅部1024を除去し、増幅部1022の出力値を、増幅部1025と、加算部1027と、に入力すればよい。   The angle control unit 102 may be configured not to include a speed control loop. In this case, the comparison unit 1023 and the amplification unit 1024 may be removed from the configuration of FIG. 4 and the output value of the amplification unit 1022 may be input to the amplification unit 1025 and the addition unit 1027.

第1選択部103は、指令値出力部の一例である。第1選択部103は、電流値0と、電流値irefと、を入力される。電流値iref(第1の目標値)は、開ループ制御の際のd軸電流指令値idt(第1の電流指令値)の目標値として予め設定された値である。d軸電流指令値idtは、駆動電流Iのd軸成分(磁束成分)である。   The first selection unit 103 is an example of a command value output unit. The first selection unit 103 receives the current value 0 and the current value iref. The current value iref (first target value) is a value set in advance as a target value for the d-axis current command value idt (first current command value) in the open loop control. The d-axis current command value idt is a d-axis component (magnetic flux component) of the drive current I.

また、第1選択部103は、選択信号selを入力される。選択信号selは、制御方法選択部111による制御方法の選択結果を示す0又は1の信号である。以下では、制御方法選択部111は、開ループ制御を選択した場合、選択信号selとして0を出力し、閉ループ制御を選択した場合、選択信号selとして1を出力するものとする。選択信号selについて、詳しくは後述する。   The first selection unit 103 receives the selection signal sel. The selection signal sel is a 0 or 1 signal indicating a control method selection result by the control method selection unit 111. Hereinafter, the control method selection unit 111 outputs 0 as the selection signal sel when the open loop control is selected, and outputs 1 as the selection signal sel when the closed loop control is selected. Details of the selection signal sel will be described later.

第1選択部103は、選択信号selに従って、電流値0又は電流値irefをd軸電流指令値idtとして選択し、出力する。第1選択部103が出力したd軸電流指令値idtは、d軸電流制御部105に入力される。   The first selection unit 103 selects and outputs the current value 0 or the current value iref as the d-axis current command value idt according to the selection signal sel. The d-axis current command value idt output from the first selection unit 103 is input to the d-axis current control unit 105.

第1選択部103は、選択信号selが0の場合(制御方法が開ループ制御の場合)、d軸電流指令値idtとして電流値irefを選択し、選択信号selが1の場合(制御方法が閉ループ制御の場合)、d軸電流指令値idtとして電流値0を選択する。   When the selection signal sel is 0 (when the control method is open loop control), the first selection unit 103 selects the current value iref as the d-axis current command value idt, and when the selection signal sel is 1 (the control method is In the case of closed loop control), the current value 0 is selected as the d-axis current command value idt.

第2選択部104は、指令値出力部の一例である。第2選択部104は、電流指令値itgtと、電流値0と、を入力される。また、第2選択部104は、選択信号selを入力される。第2選択部104は、選択信号selに応じた電流値を、q軸電流指令値iqtとして選択し、出力する。第2選択部104が出力したq軸電流指令値iqtは、q軸電流制御部106に入力される。   The second selection unit 104 is an example of a command value output unit. The second selection unit 104 receives the current command value itgt and the current value 0. The second selection unit 104 receives the selection signal sel. The second selection unit 104 selects and outputs a current value corresponding to the selection signal sel as the q-axis current command value iqt. The q-axis current command value iqt output from the second selection unit 104 is input to the q-axis current control unit 106.

第2選択部104は、選択信号selが0の場合(制御方法が開ループ制御の場合)、q軸電流指令値iqtとして電流値0を選択し、選択信号selが1の場合(制御方法が閉ループ制御の場合)、q軸電流指令値iqtとして電流指令値itgtを選択する。   When the selection signal sel is 0 (when the control method is open loop control), the second selection unit 104 selects the current value 0 as the q-axis current command value iqt, and when the selection signal sel is 1 (the control method is In the case of closed loop control), the current command value itgt is selected as the q-axis current command value iqt.

d軸電流制御部105は、d軸電流値idと、d軸電流指令値idtと、を入力される。d軸電流値idは、駆動電流Iの検出値のd軸成分である。d軸電流制御部105は、PI(Proportional Integral)制御などを利用して、d軸電流値idがd軸電流指令値idtに一致するように、d軸電圧指令値Vdを制御し、得られたd軸電圧指令値Vdを出力する。d軸電圧指令値Vdは、電圧指令値のd軸成分である。d軸電流制御部105が出力したd軸電圧指令値Vdは、第1ベクトル回転部107に入力される。   The d-axis current control unit 105 receives the d-axis current value id and the d-axis current command value idt. The d-axis current value id is a d-axis component of the detected value of the drive current I. The d-axis current control unit 105 uses the PI (Proportional Integral) control or the like to control the d-axis voltage command value Vd so that the d-axis current value id matches the d-axis current command value idt. D-axis voltage command value Vd is output. The d-axis voltage command value Vd is a d-axis component of the voltage command value. The d-axis voltage command value Vd output from the d-axis current control unit 105 is input to the first vector rotation unit 107.

図5は、d軸電流制御部105の一例を示す図である。図5のd軸電流制御部105は、比較部1051と、増幅部1052,1053と、積分部1054と、加算部1055と、を備える。   FIG. 5 is a diagram illustrating an example of the d-axis current control unit 105. The d-axis current control unit 105 of FIG. 5 includes a comparison unit 1051, amplification units 1052 and 1053, an integration unit 1054, and an addition unit 1055.

比較部1051は、d軸電流指令値idtと、d軸電流値idと、を入力される。比較部1051は、d軸電流指令値idtとd軸電流値idとの差を算出し、出力する。比較部1051の出力値は、増幅部1052に入力される。   The comparison unit 1051 receives the d-axis current command value idt and the d-axis current value id. The comparison unit 1051 calculates and outputs the difference between the d-axis current command value idt and the d-axis current value id. The output value of the comparison unit 1051 is input to the amplification unit 1052.

増幅部1052は、比較部1051の出力値を、所定のゲインG4で増幅し、出力する。増幅部1052の出力値は、増幅部1053及び加算部1055に入力される。   The amplification unit 1052 amplifies the output value of the comparison unit 1051 with a predetermined gain G4 and outputs the amplified value. The output value of the amplification unit 1052 is input to the amplification unit 1053 and the addition unit 1055.

増幅部1053は、増幅部1052の出力値を、所定のゲインG5で増幅し、出力する。増幅部1053の出力値は、積分部1054に入力される。   The amplifying unit 1053 amplifies the output value of the amplifying unit 1052 with a predetermined gain G5 and outputs the result. The output value of the amplifying unit 1053 is input to the integrating unit 1054.

積分部1054は、増幅部1053の出力値を積分し、出力する。積分部1054の出力値は、加算部1055に入力される。   The integrator 1054 integrates and outputs the output value of the amplifier 1053. The output value of the integrating unit 1054 is input to the adding unit 1055.

加算部1055は、増幅部1052の出力値と、積分部1054の出力値と、を加算して、d軸電圧指令値Vdとして出力する。このd軸電圧指令値Vdは、以下の式で表される。   Adder 1055 adds the output value of amplifier 1052 and the output value of integrator 1054, and outputs the result as d-axis voltage command value Vd. This d-axis voltage command value Vd is expressed by the following equation.

Figure 2018014875
Figure 2018014875

q軸電流制御部106は、q軸電流値iqと、q軸電流指令値iqtと、を入力される。q軸電流値iqは、駆動電流Iの検出値のq軸成分である。q軸電流制御部106は、PI制御などを利用して、q軸電流値iqがq軸電流指令値iqtに一致するように、q軸電圧指令値Vqを制御し、得られたq軸電圧指令値Vqを出力する。q軸電圧指令値Vqは、電圧指令値のq軸成分である。q軸電流制御部106が出力したq軸電圧指令値Vqは、第1ベクトル回転部107に入力される。   The q-axis current control unit 106 receives the q-axis current value iq and the q-axis current command value iqt. The q-axis current value iq is a q-axis component of the detected value of the drive current I. The q-axis current control unit 106 uses the PI control or the like to control the q-axis voltage command value Vq so that the q-axis current value iq matches the q-axis current command value iqt. Command value Vq is output. The q-axis voltage command value Vq is a q-axis component of the voltage command value. The q-axis voltage command value Vq output from the q-axis current control unit 106 is input to the first vector rotation unit 107.

図6は、q軸電流制御部106の一例を示す図である。図6のq軸電流制御部106は、比較部1061と、増幅部1062,1063と、積分部1064と、加算部1065と、を備える。これらの各構成は、図5のd軸電流制御部105の各構成と同様である。増幅部1062,1063のゲインをそれぞれG6,G7とすると、q軸電圧指令値Vqは、以下の式で表される。   FIG. 6 is a diagram illustrating an example of the q-axis current control unit 106. The q-axis current control unit 106 of FIG. 6 includes a comparison unit 1061, amplification units 1062 and 1063, an integration unit 1064, and an addition unit 1065. These components are the same as the components of the d-axis current control unit 105 in FIG. If the gains of the amplifying units 1062 and 1063 are G6 and G7, respectively, the q-axis voltage command value Vq is expressed by the following equation.

Figure 2018014875
Figure 2018014875

第1ベクトル回転部107は、d軸電圧指令値Vdと、q軸電圧指令値Vqと、駆動角drvと、を入力される。駆動角drvは、dq座標系をAB座標系に座標変換するための位相角である。dq座標系は、磁束成分に対応するd軸と、トルク成分に対応するq軸と、からなる回転座標系である。AB座標系は、A相に対応するa軸と、B相に対応するb軸と、からなる固定座標系である。回転子11の角度は、a軸に対するd軸の角度に相当する。駆動角drvは、第3選択部109から入力される。駆動角drvについて、詳しくは後述する。   The first vector rotation unit 107 receives the d-axis voltage command value Vd, the q-axis voltage command value Vq, and the drive angle drv. The drive angle drv is a phase angle for coordinate conversion from the dq coordinate system to the AB coordinate system. The dq coordinate system is a rotating coordinate system including a d-axis corresponding to the magnetic flux component and a q-axis corresponding to the torque component. The AB coordinate system is a fixed coordinate system including an a axis corresponding to the A phase and a b axis corresponding to the B phase. The angle of the rotor 11 corresponds to the angle of the d axis with respect to the a axis. The drive angle drv is input from the third selection unit 109. The drive angle drv will be described later in detail.

第1ベクトル回転部107は、dq座標系をAB座標系に座標変換することにより、d軸電圧指令値Vd及びq軸電圧指令値Vqから、a軸電圧指令値Va及びb軸電圧指令値Vbを算出し、出力する。第1ベクトル回転部107が出力したa軸電圧指令値Va及びb軸電圧指令値Vbは、インバータ2と、角度推定部110と、に入力される。   The first vector rotation unit 107 converts the dq coordinate system into the AB coordinate system, thereby converting the a-axis voltage command value Va and the b-axis voltage command value Vb from the d-axis voltage command value Vd and the q-axis voltage command value Vq. Is calculated and output. The a-axis voltage command value Va and the b-axis voltage command value Vb output from the first vector rotation unit 107 are input to the inverter 2 and the angle estimation unit 110.

具体的には、第1ベクトル回転部107は、d軸電圧指令値Vd及びq軸電圧指令値Vqからなるベクトル電圧を、駆動角drvだけ回転させることにより、a軸電圧指令値Va及びb軸電圧指令値Vbを算出する。a軸電圧指令値Va及びb軸電圧指令値Vbは、以下の式で表される。   Specifically, the first vector rotation unit 107 rotates the vector voltage composed of the d-axis voltage command value Vd and the q-axis voltage command value Vq by the drive angle drv, so that the a-axis voltage command value Va and the b-axis A voltage command value Vb is calculated. The a-axis voltage command value Va and the b-axis voltage command value Vb are expressed by the following equations.

Figure 2018014875
Figure 2018014875

式(4)及び式(5)は、以下の行列式で表される。   Expressions (4) and (5) are expressed by the following determinants.

Figure 2018014875
Figure 2018014875

図7及び図8は、第1ベクトル回転部107の動作を説明するグラフである。以下では、閉ループ制御の場合を例に説明する。図7及び図8において、破線はd軸電圧指令値Vd、一点鎖線はq軸電圧指令値Vq、点線はa軸電圧指令値Va、実線はb軸電圧指令値Vbを示す。縦軸は電圧レベル[a.u.]であり、横軸は回転子11の実角度θm[degree]である。   7 and 8 are graphs for explaining the operation of the first vector rotation unit 107. FIG. Hereinafter, a case of closed loop control will be described as an example. 7 and 8, the broken line indicates the d-axis voltage command value Vd, the alternate long and short dash line indicates the q-axis voltage command value Vq, the dotted line indicates the a-axis voltage command value Va, and the solid line indicates the b-axis voltage command value Vb. The vertical axis represents the voltage level [a. u. The horizontal axis represents the actual angle θm [degree] of the rotor 11.

図7の例では、Vd=0、Vq=1である。このとき、a軸電圧指令値Va(=−sin(θm))及びb軸電圧指令値Vb(=cos(θm))は、振幅が1となり、位相が実角度θmに一致する。これに対して、図8の例では、Vd=−0.342、Vq=0.940である。このとき、a軸電圧指令値Va及びb軸電圧指令値Vbは、振幅が1となり、位相が実角度θmに対して約20度進む。   In the example of FIG. 7, Vd = 0 and Vq = 1. At this time, the a-axis voltage command value Va (= −sin (θm)) and the b-axis voltage command value Vb (= cos (θm)) have an amplitude of 1 and the phase matches the actual angle θm. On the other hand, in the example of FIG. 8, Vd = −0.342 and Vq = 0.940. At this time, the a-axis voltage command value Va and the b-axis voltage command value Vb have an amplitude of 1, and the phase advances about 20 degrees with respect to the actual angle θm.

このように、d軸電圧指令値Vd及びq軸電圧指令値Vqに応じて、a軸電圧指令値Va及びb軸電圧指令値Vbの位相が変化する。本実施形態では、モータ1の駆動速度が上昇し、速度a軸電流値ia及びb軸電流値ibの位相遅れが大きくなると、a軸電圧指令値Va及びb軸電圧指令値Vbの位相が進むように、d軸電圧指令値Vd及びq軸電圧指令値Vqが制御される。このため、駆動速度の上昇に伴う電力効率の低下が抑制される。   Thus, the phases of the a-axis voltage command value Va and the b-axis voltage command value Vb change according to the d-axis voltage command value Vd and the q-axis voltage command value Vq. In the present embodiment, when the driving speed of the motor 1 increases and the phase delay between the speed a-axis current value ia and the b-axis current value ib increases, the phase of the a-axis voltage command value Va and the b-axis voltage command value Vb advances. As described above, the d-axis voltage command value Vd and the q-axis voltage command value Vq are controlled. For this reason, a decrease in power efficiency accompanying an increase in drive speed is suppressed.

第2ベクトル回転部108は、a軸電流値iaと、b軸電流値ibと、駆動角drvと、を入力される。第2ベクトル回転部108は、AB座標系をdq座標系に座標変換することにより、a軸電流値ia及びb軸電流値ibから、d軸電流値id及びq軸電流値iqを算出し、出力する。第2ベクトル回転部108が出力したd軸電流値idは、d軸電流制御部105に入力される。また、第2ベクトル回転部108が出力したq軸電流値iqは、q軸電流制御部106に入力される。   The second vector rotation unit 108 receives the a-axis current value ia, the b-axis current value ib, and the drive angle drv. The second vector rotation unit 108 converts the AB coordinate system into the dq coordinate system, thereby calculating the d-axis current value id and the q-axis current value iq from the a-axis current value ia and the b-axis current value ib. Output. The d-axis current value id output from the second vector rotation unit 108 is input to the d-axis current control unit 105. Further, the q-axis current value iq output from the second vector rotation unit 108 is input to the q-axis current control unit 106.

具体的には、第2ベクトル回転部108は、a軸電流値ia及びb軸電流値ibからなるベクトル電流を、駆動角drvだけ回転させることにより、d軸電流値id及びq軸電流値iqを算出する。d軸電流値id及びq軸電流値iqは、以下の式で表される。   Specifically, the second vector rotation unit 108 rotates the vector current composed of the a-axis current value ia and the b-axis current value ib by the drive angle drv, so that the d-axis current value id and the q-axis current value iq Is calculated. The d-axis current value id and the q-axis current value iq are expressed by the following equations.

Figure 2018014875
Figure 2018014875

式(7)及び式(8)は、以下の行列式で表される。   Expressions (7) and (8) are expressed by the following determinants.

Figure 2018014875
Figure 2018014875

図9は、第2ベクトル回転部108の動作を説明するグラフである。以下では、閉ループ制御の場合を例に説明する。図9において、破線はa軸電流値ia、一点鎖線はb軸電流値ib、点線はd軸電流値id、実線はq軸電流値iqを示す。縦軸は電流レベル[a.u.]であり、横軸は回転子11の実角度θm[degree]である。   FIG. 9 is a graph for explaining the operation of the second vector rotation unit 108. Hereinafter, a case of closed loop control will be described as an example. In FIG. 9, the broken line indicates the a-axis current value ia, the alternate long and short dash line indicates the b-axis current value ib, the dotted line indicates the d-axis current value id, and the solid line indicates the q-axis current value iq. The vertical axis represents the current level [a. u. The horizontal axis represents the actual angle θm [degree] of the rotor 11.

図9の例では、a軸電流値ia及びb軸電流値ibは、実角度θmに対して位相が約30度遅れている。このとき、id=0.5、iq=0.866となる。これに対して、a軸電流値ia及びb軸電流値ibの位相が実角度θmに一致している場合、id=0、iq=1となる。   In the example of FIG. 9, the phase of the a-axis current value ia and the b-axis current value ib is delayed by about 30 degrees with respect to the actual angle θm. At this time, id = 0.5 and iq = 0.866. On the other hand, when the phase of the a-axis current value ia and the b-axis current value ib matches the actual angle θm, id = 0 and iq = 1.

このように、a軸電流値ia及びb軸電流値ibの位相に応じて、d軸電流値id及びq軸電流値iqが変化する。逆に言うと、d軸電流値id及びq軸電流値iqが所定の値となるように電流制御することにより、a軸電流値ia及びb軸電流値ibの位相を所望の位相に制御することができる。   Thus, the d-axis current value id and the q-axis current value iq change according to the phase of the a-axis current value ia and the b-axis current value ib. In other words, by controlling the current so that the d-axis current value id and the q-axis current value iq become predetermined values, the phases of the a-axis current value ia and the b-axis current value ib are controlled to desired phases. be able to.

例えば、id=0となるように電流制御することにより、a軸電流値ia及びb軸電流値ibの位相を実角度θmに一致させることができる。また、idが0以外の所定の値になるように電流制御することにより、a軸電流値ia及びb軸電流値ibの位相を実角度θmから所定値ずらし、リラクタンストルクを向上させることも可能である。   For example, by controlling the current so that id = 0, the phases of the a-axis current value ia and the b-axis current value ib can be matched with the actual angle θm. In addition, by controlling the current so that id becomes a predetermined value other than 0, the phase of the a-axis current value ia and the b-axis current value ib can be shifted from the actual angle θm by a predetermined value to improve the reluctance torque. It is.

第3選択部109は、角度指令値θtgtと、角度推定値θestと、選択信号selと、を入力される。第3選択部109は、選択信号selに従って、角度指令値θtgt又は角度推定値θestを駆動角θdrvとして選択し、出力する。以下では、第3選択部109は、選択信号selが0の場合、駆動角θdrvとして角度指令値θtgtを選択し、選択信号selが1の場合、駆動角θdrvとして角度推定値θestを選択するものとする。   The third selection unit 109 receives the angle command value θtgt, the angle estimation value θest, and the selection signal sel. The third selection unit 109 selects and outputs the angle command value θtgt or the estimated angle value θest as the drive angle θdrv according to the selection signal sel. Hereinafter, the third selection unit 109 selects the angle command value θtgt as the drive angle θdrv when the selection signal sel is 0, and selects the estimated angle value θest as the drive angle θdrv when the selection signal sel is 1. And

角度推定部110は、a軸電圧指令値Vaと、b軸電圧指令値Vbと、a軸電流値iaと、b軸電流値ibと、を入力される。角度推定部110は、これらに基づいて、回転子11の角度及び速度を推定する。すなわち、角度推定部110は、角度推定値θest及び速度推定値ωestを算出し、出力する。   The angle estimation unit 110 receives the a-axis voltage command value Va, the b-axis voltage command value Vb, the a-axis current value ia, and the b-axis current value ib. The angle estimation unit 110 estimates the angle and speed of the rotor 11 based on these. That is, the angle estimation unit 110 calculates and outputs the angle estimation value θest and the speed estimation value ωest.

図10は、角度推定部110の一例を示す図である。図10の角度推定部110は、回転子11の回転により生じる誘起電圧を利用して、実角度θmを推定する。図10の角度推定部110は、第3ベクトル回転部1101と、第4ベクトル回転部1102と、推定誤差算出部1103と、増幅部1104,1105と、積分部1106と、加算部1107と、積分部1108と、を備える。   FIG. 10 is a diagram illustrating an example of the angle estimation unit 110. The angle estimation unit 110 in FIG. 10 estimates the actual angle θm using the induced voltage generated by the rotation of the rotor 11. The angle estimation unit 110 in FIG. 10 includes a third vector rotation unit 1101, a fourth vector rotation unit 1102, an estimation error calculation unit 1103, amplification units 1104 and 1105, an integration unit 1106, an addition unit 1107, an integration unit Unit 1108.

第3ベクトル回転部1101は、a軸電圧指令値Va及びb軸電圧指令値Vbを入力される。第3ベクトル回転部1101は、a軸電圧指令値Va及びb軸電圧指令値Vbからなるベクトル電圧を、角度推定値θestだけ回転させることにより、d軸電圧指令値Vde及びq軸電圧指令値Vqeを算出し、出力する。第3ベクトル回転部1101が出力したd軸電圧指令値Vde及びq軸電圧指令値Vqeは、推定誤差算出部1103に入力される。d軸電圧指令値Vde及びq軸電圧指令値Vqeは、以下の式で表される。   The third vector rotation unit 1101 receives the a-axis voltage command value Va and the b-axis voltage command value Vb. The third vector rotation unit 1101 rotates the vector voltage composed of the a-axis voltage command value Va and the b-axis voltage command value Vb by the estimated angle value θest, so that the d-axis voltage command value Vde and the q-axis voltage command value Vqe. Is calculated and output. The d-axis voltage command value Vde and the q-axis voltage command value Vqe output from the third vector rotation unit 1101 are input to the estimation error calculation unit 1103. The d-axis voltage command value Vde and the q-axis voltage command value Vqe are expressed by the following equations.

Figure 2018014875
Figure 2018014875

式(10)及び式(11)は、以下の行列式で表される。   Expressions (10) and (11) are expressed by the following determinants.

Figure 2018014875
Figure 2018014875

第4ベクトル回転部1102は、a軸電流値ia及びb軸電流値ibを入力される。第4ベクトル回転部1102は、a軸電流値ia及びb軸電流値ibからなるベクトル電流を、角度推定値θestだけ回転させることにより、d軸電流値ide及びq軸電流値iqeを算出し、出力する。第4ベクトル回転部1102が出力したd軸電流値ide及びq軸電流値iqeは、推定誤差算出部1103に入力される。d軸電流値ide及びq軸電流値iqeは、以下の式で表される。   The fourth vector rotation unit 1102 receives the a-axis current value ia and the b-axis current value ib. The fourth vector rotation unit 1102 calculates the d-axis current value ide and the q-axis current value iqe by rotating the vector current composed of the a-axis current value ia and the b-axis current value ib by the estimated angle value θest, Output. The d-axis current value ide and the q-axis current value iqe output from the fourth vector rotation unit 1102 are input to the estimation error calculation unit 1103. The d-axis current value ide and the q-axis current value iqe are expressed by the following equations.

Figure 2018014875
Figure 2018014875

式(13)及び式(14)は、以下の行列式で表される。   Expressions (13) and (14) are expressed by the following determinants.

Figure 2018014875
Figure 2018014875

推定誤差算出部1103は、d軸電圧指令値Vde及びq軸電圧指令値Vqeと、d軸電流値ide及びq軸電流値iqeと、を入力される。推定誤差算出部1103は、これらに基づいて、推定誤差Xerrを算出し、出力する。推定誤差Xerrは、回転子11の実角度θmと、角度推定値θestと、の誤差である角度誤差θerr(=θm−θest)に比例するパラメータである。推定誤差Xerrは、例えば、以下の式により算出される。   The estimation error calculation unit 1103 receives the d-axis voltage command value Vde and the q-axis voltage command value Vqe, and the d-axis current value ide and the q-axis current value iqe. Based on these, the estimation error calculation unit 1103 calculates and outputs an estimation error Xerr. The estimation error Xerr is a parameter proportional to an angle error θerr (= θm−θest) that is an error between the actual angle θm of the rotor 11 and the estimated angle value θest. The estimation error Xerr is calculated by the following equation, for example.

Figure 2018014875
Figure 2018014875

式(16)において、Keは逆起電圧定数(回転子11の速度に比例してコイルに生じる逆起電圧の比率)、Rはコイル抵抗、Lはコイルインダクタンスである。Ke,R,Lの値は、モータ1の仕様により決定される。また、回転子11の速度ωとして、速度推定値ωestが利用される。   In Equation (16), Ke is a counter electromotive voltage constant (ratio of counter electromotive voltage generated in the coil in proportion to the speed of the rotor 11), R is coil resistance, and L is coil inductance. The values of Ke, R, and L are determined according to the specifications of the motor 1. Further, the estimated speed value ωest is used as the speed ω of the rotor 11.

式(16)により算出される推定誤差Xerrは、角度誤差θerrを位相とする正弦波となる(Xerr=sin(θerr))。したがって、角度誤差θerrが十分に小さい場合、推定誤差Xerrは角度誤差θerrに比例するものとみなされる。推定誤差算出部1103が出力した推定誤差Xerrは、増幅部1104に入力される。   The estimation error Xerr calculated by the equation (16) is a sine wave whose phase is the angle error θerr (Xerr = sin (θerr)). Therefore, when the angle error θerr is sufficiently small, the estimation error Xerr is considered to be proportional to the angle error θerr. The estimation error Xerr output from the estimation error calculation unit 1103 is input to the amplification unit 1104.

増幅部1104は、推定誤差Xerrを所定のゲインG8で増幅し、出力する。増幅部1104の出力値は、増幅部1105及び加算部1107に入力される。   The amplifying unit 1104 amplifies the estimation error Xerr with a predetermined gain G8 and outputs it. The output value of the amplifying unit 1104 is input to the amplifying unit 1105 and the adding unit 1107.

増幅部1105は、増幅部1104の出力値を、所定のゲインG9で増幅し、出力する。増幅部1105の出力値は、積分部1106に入力される。   The amplifying unit 1105 amplifies the output value of the amplifying unit 1104 with a predetermined gain G9 and outputs it. The output value of the amplifying unit 1105 is input to the integrating unit 1106.

積分部1106は、増幅部1105の出力値を積分し、出力する。積分部1106の出力値は、加算部1107に入力される。   The integrating unit 1106 integrates and outputs the output value of the amplifying unit 1105. The output value of the integrating unit 1106 is input to the adding unit 1107.

加算部1107は、増幅部1104の出力値と、積分部1106の出力値と、を加算して、速度推定値ωestとして出力する。加算部1107が出力した速度推定値ωestは、角度制御部102と、積分部1108と、推定誤差算出部1103と、に入力される。推定誤差算出部1103は、この速度推定値ωestを利用して、推定誤差Xerrを算出する。   The adding unit 1107 adds the output value of the amplifying unit 1104 and the output value of the integrating unit 1106, and outputs the result as a speed estimated value ωest. The estimated speed value ωest output from the adder 1107 is input to the angle controller 102, the integrator 1108, and the estimated error calculator 1103. The estimation error calculation unit 1103 calculates the estimation error Xerr using the speed estimation value ωest.

積分部1108は、速度推定値ωestを積分し、角度推定値θestとして出力する。積分部1108が出力した角度推定値θestは、角度制御部102と、第3選択部109と、第3ベクトル回転部1101と、第4ベクトル回転部1102と、に入力される。この角度推定値θestを利用して、第3ベクトル回転部1101はd軸電圧指令値Vde及びq軸電圧指令値Vqeを算出し、第4ベクトル回転部1102は、d軸電流値ide及びq軸電流値iqeを算出する。   The integration unit 1108 integrates the estimated speed value ωest and outputs it as an estimated angle value θest. The estimated angle value θest output from the integration unit 1108 is input to the angle control unit 102, the third selection unit 109, the third vector rotation unit 1101, and the fourth vector rotation unit 1102. Using the estimated angle value θest, the third vector rotation unit 1101 calculates the d-axis voltage command value Vde and the q-axis voltage command value Vqe, and the fourth vector rotation unit 1102 calculates the d-axis current value ide and the q-axis The current value iq is calculated.

このように、角度推定値θestは、第3ベクトル回転部1101及び第4ベクトル回転部1102にフィードバックされる。これにより、角度誤差θerr(推定誤差Xerr)が0に追従する、すなわち、角度推定値θerrが実角度θmに追従する、位相同期ループ(PLL:Phase Locked Loop)が構成される。結果として、角度推定値θestを精度よく推定することができる。   In this way, the estimated angle value θest is fed back to the third vector rotation unit 1101 and the fourth vector rotation unit 1102. Thus, a phase locked loop (PLL) in which the angle error θerr (estimated error Xerr) follows 0, that is, the estimated angle value θerr follows the actual angle θm is configured. As a result, the estimated angle value θest can be estimated with high accuracy.

なお、推定誤差算出部1103は、式(16)の計算を行うために、回転子11の速度ωとして、速度指令値ωtgtを利用してもよいし、速度推定値ωest及び速度指令値ωtgtの両方を利用してもよい。推定誤差算出部1103は、モータ1の低速駆動時(起動時や停止時など)に、速度指令値ωtgtを利用し、他の期間に速度推定値ωestを利用するのが好ましい。これは、モータ1の低速駆動時には、誘起電圧が小さいため、推定誤差Xerrが不安定になり、結果として、速度推定値ωestの推定精度が低下するためである。このような低速駆動時には、速度指令値ωtgtを利用することにより、速度推定値ωestの推定精度を向上させることができる。   Note that the estimation error calculation unit 1103 may use the speed command value ωtgt as the speed ω of the rotor 11 in order to perform the calculation of the equation (16), or the estimated speed value ωest and the speed command value ωtgt. Both may be used. It is preferable that the estimation error calculation unit 1103 uses the speed command value ωtgt when the motor 1 is driven at a low speed (when starting or stopping), and uses the speed estimation value ωest during other periods. This is because when the motor 1 is driven at a low speed, the induced voltage is small, so that the estimation error Xerr becomes unstable, and as a result, the estimation accuracy of the speed estimation value ωest is lowered. During such low-speed driving, the estimation accuracy of the estimated speed value ωest can be improved by using the speed command value ωtgt.

また、本実施形態において、角度推定部110は、開ループ制御中に動作してもよい。これにより、開ループ制御中のモータ制御装置100の消費電力を低減できる。また、角度推定部110は、開ループ制御中に動作してもよい。これにより、開ループ制御中であっても、回転子11の速度推定値ωestを、モータ1の異常動作の検出などに利用することができる。   In the present embodiment, the angle estimation unit 110 may operate during open loop control. Thereby, the power consumption of the motor control apparatus 100 during the open loop control can be reduced. Further, the angle estimation unit 110 may operate during the open loop control. Thereby, even during open loop control, the estimated speed value ωest of the rotor 11 can be used for detecting an abnormal operation of the motor 1 or the like.

制御方法選択部111は、速度指令値ωtgtを入力される。制御方法選択部111は、速度指令値ωtgtに基づいて、制御方法を選択し、選択結果を示す選択信号selを出力する。上述の通り、制御方法選択部111は、開ループ制御を選択した場合、選択信号selとして0を出力し、閉ループ制御を選択した場合、選択信号selとして1を出力する。   The control method selection unit 111 receives the speed command value ωtgt. The control method selection unit 111 selects a control method based on the speed command value ωtgt and outputs a selection signal sel indicating the selection result. As described above, the control method selection unit 111 outputs 0 as the selection signal sel when the open loop control is selected, and outputs 1 as the selection signal sel when the closed loop control is selected.

図11は、本実施形態における制御方法の選択方法を説明する状態遷移図である。図11の各ノードは、モータ1の制御方法選択部111による制御方法の選択状態を示している。以下、ノードN1,N2,N3の選択状態を、それぞれ状態OP1(OPEN1),OP2(OPEN2),CL(CLOSED)という。   FIG. 11 is a state transition diagram illustrating a control method selection method according to this embodiment. Each node in FIG. 11 indicates a selection state of the control method by the control method selection unit 111 of the motor 1. Hereinafter, the selected states of the nodes N1, N2, and N3 are referred to as states OP1 (OPEN1), OP2 (OPEN2), and CL (CLOSED), respectively.

状態OP1は、制御方法選択部111が開ループ制御を選択し、選択信号selとして0を出力している状態である。状態OP1において、速度指令値ωtgtが所定の速度閾値ω1以上になると、状態OP1は、状態OP2に遷移する。   The state OP1 is a state in which the control method selection unit 111 selects open loop control and outputs 0 as the selection signal sel. In the state OP1, when the speed command value ωtgt is equal to or greater than a predetermined speed threshold value ω1, the state OP1 transitions to the state OP2.

状態OP2は、制御方法選択部111が開ループ制御を選択し、選択信号selとして0を出力している状態である。状態OP2において、速度指令値ωtgtが所定の速度閾値ω2未満になると、状態OP2は、状態OP1に遷移する。また、状態OP2において、状態OP2の継続期間tが所定期間T1以上になると、状態OP2は、状態CLに遷移する。   The state OP2 is a state in which the control method selection unit 111 selects open loop control and outputs 0 as the selection signal sel. When the speed command value ωtgt becomes less than the predetermined speed threshold value ω2 in the state OP2, the state OP2 transitions to the state OP1. Further, in the state OP2, when the duration t of the state OP2 is equal to or longer than the predetermined period T1, the state OP2 transitions to the state CL.

状態CLは、制御方法選択部111が閉ループ制御を選択し、選択信号selとして1を出力している状態である。状態CLにおいて、速度指令値ωtgtが所定の速度閾値ω2未満になると、状態CLは、状態OP1に遷移する。   The state CL is a state in which the control method selection unit 111 selects closed loop control and outputs 1 as the selection signal sel. In the state CL, when the speed command value ωtgt becomes less than the predetermined speed threshold value ω2, the state CL transitions to the state OP1.

なお、速度閾値ω1,ω2は、予め設定された速度指令値ωtgtの閾値である。速度閾値ω1は、モータ1を加速した際に、安定して閉ループ制御を実行できる速度指令値ωtgtの下限値として、実験やシミュレーションなどにより設定される。速度閾値ω2は、モータ1を減速した際に、安定して閉ループ制御を実行できる速度指令値ωtgtの下限値として、実験やシミュレーションなどにより設定される。安定した閉ループ制御とは、トルク振動が小さく、同期が確立した閉ループ制御のことである。   Note that the speed threshold values ω1 and ω2 are threshold values of the speed command value ωtgt set in advance. The speed threshold ω <b> 1 is set by experiments, simulations, or the like as a lower limit value of the speed command value ωtgt that can stably perform closed-loop control when the motor 1 is accelerated. The speed threshold ω <b> 2 is set by experiment, simulation, or the like as a lower limit value of the speed command value ωtgt that can stably perform the closed loop control when the motor 1 is decelerated. Stable closed-loop control is closed-loop control in which torque vibration is small and synchronization is established.

図12は、本実施形態におけるモータ駆動システムの動作の一例を示すフローチャートである。図12は、各制御タイミングにおける動作を示している。   FIG. 12 is a flowchart showing an example of the operation of the motor drive system in the present embodiment. FIG. 12 shows the operation at each control timing.

制御タイミングが到来すると、まず、角度指令値算出部101が、基準パルスrefclkの周波数を計測し、速度指令値ωtgtを算出する。速度指令値ωtgtは、制御方法選択部111に入力される。また、角度指令値算出部101は、前回の制御タイミングから今回の制御タイミングまでの基準パルスrefclkを積算し、角度指令値θtgtを算出する(ステップS101)。また、角度指令値θtgtは、角度制御部102及び第3選択部109に入力される。   When the control timing comes, first, the angle command value calculation unit 101 measures the frequency of the reference pulse refclk, and calculates the speed command value ωtgt. The speed command value ωtgt is input to the control method selection unit 111. Further, the angle command value calculation unit 101 integrates the reference pulses refclk from the previous control timing to the current control timing, and calculates the angle command value θtgt (step S101). Further, the angle command value θtgt is input to the angle control unit 102 and the third selection unit 109.

次に、制御方法選択部111が、速度指令値ωtgtが速度閾値ω2未満であるか判定する(ステップS102)。速度指令値ωtgtが速度閾値ω2未満である場合(ステップS102のYES)、制御方法選択部111は、制御方法として開ループ制御を選択し、選択信号selとして0を出力する(ステップS103)。このとき、選択状態は、状態OP1に相当する。選択信号selは、第1選択部103と、第2選択部104と、第3選択部109に入力される。   Next, the control method selection unit 111 determines whether the speed command value ωtgt is less than the speed threshold value ω2 (step S102). When the speed command value ωtgt is less than the speed threshold value ω2 (YES in step S102), the control method selection unit 111 selects open loop control as the control method and outputs 0 as the selection signal sel (step S103). At this time, the selected state corresponds to the state OP1. The selection signal sel is input to the first selection unit 103, the second selection unit 104, and the third selection unit 109.

選択信号selとして0を入力されると、第1選択部103は、d軸電流指令値idtとして電流値irefを出力し、第2選択部104はq軸電流指令値iqtとして0を出力する。また、選択信号selとして0を入力されると、第3選択部109は、駆動角θdrvとして角度指令値θtgtを出力する(ステップS104)。d軸電流指令値idtは、d軸電流制御部105に入力される。q軸電流指令値iqtは、q軸電流制御部106に入力される。駆動角θdrvは、第1ベクトル回転部107及び第2ベクトル回転部108に入力される。   When 0 is input as the selection signal sel, the first selection unit 103 outputs the current value iref as the d-axis current command value idt, and the second selection unit 104 outputs 0 as the q-axis current command value iqt. When 0 is input as the selection signal sel, the third selection unit 109 outputs the angle command value θtgt as the drive angle θdrv (step S104). The d-axis current command value idt is input to the d-axis current control unit 105. The q-axis current command value iqt is input to the q-axis current control unit 106. The drive angle θdrv is input to the first vector rotation unit 107 and the second vector rotation unit 108.

なお、開ループ制御が選択された場合、角度制御部102は、動作してもよいし、しなくてもよい。角度制御部102に選択信号selを入力することにより、開ループ制御が選択された場合に、角度制御部102の動作を停止させることができる。   Note that when the open loop control is selected, the angle control unit 102 may or may not operate. By inputting the selection signal sel to the angle control unit 102, the operation of the angle control unit 102 can be stopped when the open loop control is selected.

続いて、d軸電流制御部105が、d軸電流指令値idt(=iref)と、前回の制御タイミングに入力されたd軸電流値idと、に基づいて、d軸電圧指令値Vdを算出する。また、q軸電流制御部106が、q軸電流指令値iqt(=0)と、前回の制御タイミングに入力されたq軸電流値iqと、に基づいて、q軸電圧指令値Vqを算出する(ステップS105)。d軸電圧指令値Vd及びq軸電圧指令値Vqは、第1ベクトル回転部107に入力される。   Subsequently, the d-axis current control unit 105 calculates the d-axis voltage command value Vd based on the d-axis current command value idt (= iref) and the d-axis current value id input at the previous control timing. To do. Further, the q-axis current control unit 106 calculates the q-axis voltage command value Vq based on the q-axis current command value iqt (= 0) and the q-axis current value iq input at the previous control timing. (Step S105). The d-axis voltage command value Vd and the q-axis voltage command value Vq are input to the first vector rotation unit 107.

第1ベクトル回転部107は、d軸電圧指令値Vd及びq軸電圧指令値Vqからなるベクトル電圧を、駆動角θdrv(=θtgt)だけ回転させることにより、a軸電圧指令値Va及びb軸電圧指令値Vbを算出する(ステップS106)。a軸電圧指令値Va及びb軸電圧指令値Vbは、角度推定部110及びインバータ2に入力される。   The first vector rotation unit 107 rotates the vector voltage composed of the d-axis voltage command value Vd and the q-axis voltage command value Vq by the drive angle θdrv (= θtgt), thereby causing the a-axis voltage command value Va and the b-axis voltage to be rotated. Command value Vb is calculated (step S106). The a-axis voltage command value Va and the b-axis voltage command value Vb are input to the angle estimation unit 110 and the inverter 2.

その後、インバータ2は、a軸電圧指令値Vaに応じたA相駆動電流IaをA相コイル12Aに供給し、b軸電圧指令値Vbに応じたB相駆動電流IbをB相コイル12Bに供給する(ステップS107)。これにより、モータ1が駆動される。   Thereafter, the inverter 2 supplies the A-phase drive current Ia corresponding to the a-axis voltage command value Va to the A-phase coil 12A, and supplies the B-phase drive current Ib corresponding to the b-axis voltage command value Vb to the B-phase coil 12B. (Step S107). Thereby, the motor 1 is driven.

モータ1にA相駆動電流Ia及びB相駆動電流Ibを供給すると、電流検出器3が、a軸電流値ia及びb軸電流値ibをそれぞれ検出する(ステップS108)。a軸電流値ia及びb軸電流値ibは、第2ベクトル回転部108及び角度推定部110に入力される。   When the A-phase drive current Ia and the B-phase drive current Ib are supplied to the motor 1, the current detector 3 detects the a-axis current value ia and the b-axis current value ib, respectively (step S108). The a-axis current value ia and the b-axis current value ib are input to the second vector rotation unit 108 and the angle estimation unit 110.

第2ベクトル回転部108は、a軸電流値ia及びb軸電流値ibからなるベクトル電流を、駆動角θdrv(=θtgt)だけ回転させることにより、d軸電流値Id及びq軸電流値iqを算出する(ステップS109)。d軸電流値Id及びq軸電流値iqは、d軸電流制御部105及びq軸電流制御部106にそれぞれ入力される。   The second vector rotation unit 108 rotates the vector current composed of the a-axis current value ia and the b-axis current value ib by the drive angle θdrv (= θtgt), thereby changing the d-axis current value Id and the q-axis current value iq. Calculate (step S109). The d-axis current value Id and the q-axis current value iq are input to the d-axis current control unit 105 and the q-axis current control unit 106, respectively.

また、角度推定部110が、a軸電圧指令値Va及びb軸電圧指令値Vbと、a軸電流値ia及びb軸電流値ibと、に基づいて、角度推定値θest及び速度推定値ωestを算出する(ステップS110)。   Further, the angle estimation unit 110 calculates the angle estimation value θest and the speed estimation value ωest based on the a-axis voltage command value Va and the b-axis voltage command value Vb, and the a-axis current value ia and the b-axis current value ib. Calculate (step S110).

なお、開ループ制御が選択された場合、角度推定部110は、動作してもよいし、しなくてもよい。角度推定部110に選択信号selを入力することにより、開ループ制御が選択された場合に、角度推定部110の動作を停止させることができる。   When the open loop control is selected, the angle estimation unit 110 may or may not operate. By inputting the selection signal sel to the angle estimation unit 110, the operation of the angle estimation unit 110 can be stopped when the open loop control is selected.

モータ1の駆動を終了する場合(ステップS111のYES)、処理は終了する。一方、モータ1の駆動を継続する場合(ステップS111のNO)、処理はステップS101に戻る。   When the driving of the motor 1 is finished (YES in step S111), the process is finished. On the other hand, when the drive of the motor 1 is continued (NO in step S111), the process returns to step S101.

これに対して、速度指令値ωtgtが速度閾値ω2以上である場合(ステップS102のNO)、制御方法選択部111は、速度指令値ωtgtが速度閾値ω1以上であるか判定する(ステップS112)。   On the other hand, when the speed command value ωtgt is equal to or higher than the speed threshold value ω2 (NO in step S102), the control method selection unit 111 determines whether the speed command value ωtgt is equal to or higher than the speed threshold value ω1 (step S112).

速度指令値ωtgtが速度閾値ω1未満である場合(ステップS112のNO)、上述のステップS102〜ステップS111の処理が実行される。   When the speed command value ωtgt is less than the speed threshold value ω1 (NO in step S112), the processes in steps S102 to S111 described above are executed.

一方、速度指令値ωtgtが速度閾値ω1以上である場合(ステップS112のYES)、制御方法選択部111は、速度指令値ωtgtが速度閾値ω1以上の継続期間tが所定期間T1以上であるか判定する(ステップS113)。   On the other hand, when the speed command value ωtgt is equal to or greater than the speed threshold value ω1 (YES in step S112), the control method selection unit 111 determines whether the duration t where the speed command value ωtgt is equal to or greater than the speed threshold value ω1 is equal to or greater than the predetermined period T1. (Step S113).

継続期間tが所定期間T1未満である場合(ステップS113のNO)、制御方法選択部111は、制御方法として開ループ制御を選択し、選択信号selとして0を出力する(ステップS114)。選択信号selは、第1選択部103と、第2選択部104と、第3選択部109に入力される。このとき、選択状態は、状態OP2に相当する。以降、上述のステップS104〜ステップS111の処理が実行される。   If the duration t is less than the predetermined period T1 (NO in step S113), the control method selection unit 111 selects open loop control as the control method and outputs 0 as the selection signal sel (step S114). The selection signal sel is input to the first selection unit 103, the second selection unit 104, and the third selection unit 109. At this time, the selected state corresponds to the state OP2. Thereafter, the processes in steps S104 to S111 described above are executed.

これに対して、継続期間tが所定期間T1以上である場合(ステップS113のYES)、制御方法選択部111は、制御方法として閉ループ制御を選択し、選択信号selとして1を出力する(ステップS115)。選択信号selは、第1選択部103と、第2選択部104と、第3選択部109に入力される。このとき、選択状態は、状態CLに相当する。   On the other hand, when the duration t is equal to or longer than the predetermined period T1 (YES in step S113), the control method selection unit 111 selects closed loop control as the control method and outputs 1 as the selection signal sel (step S115). ). The selection signal sel is input to the first selection unit 103, the second selection unit 104, and the third selection unit 109. At this time, the selected state corresponds to the state CL.

閉ループ制御が選択された場合、角度制御部102が、角度指令値θtgtと、前回の制御タイミングに入力された角度推定値θest及び速度推定値ωestと、に基づいて、電流指令値itgtを算出する(ステップS116)。電流指令値itgtは、第2選択部104に入力される。   When the closed loop control is selected, the angle control unit 102 calculates the current command value itgt based on the angle command value θtgt, the estimated angle value θest and the estimated speed value ωest input at the previous control timing. (Step S116). The current command value itgt is input to the second selection unit 104.

選択信号selとして1と入力されると、第1選択部103は、d軸電流指令値idtとして電流値0を出力し、第2選択部104はq軸電流指令値iqtとして電流指令値itgtを出力する。また、選択信号selとして1と入力されると、第3選択部109は、駆動角θdrvとして角度指令値θestを出力する(ステップS117)。d軸電流指令値idtは、d軸電流制御部105に入力される。q軸電流指令値iqtは、q軸電流制御部106に入力される。駆動角θdrvは、第1ベクトル回転部107及び第2ベクトル回転部108に入力される。以降、上述のステップS105〜S111の処理が実行される。なお、閉ループ制御の場合、駆動角θdrvとして、角度推定値θestが利用される。   When 1 is input as the selection signal sel, the first selection unit 103 outputs the current value 0 as the d-axis current command value idt, and the second selection unit 104 sets the current command value itgt as the q-axis current command value iqt. Output. When 1 is input as the selection signal sel, the third selection unit 109 outputs the angle command value θest as the drive angle θdrv (step S117). The d-axis current command value idt is input to the d-axis current control unit 105. The q-axis current command value iqt is input to the q-axis current control unit 106. The drive angle θdrv is input to the first vector rotation unit 107 and the second vector rotation unit 108. Thereafter, the processes in steps S105 to S111 described above are executed. In the case of closed loop control, the estimated angle value θest is used as the drive angle θdrv.

以上まとめると、本実施形態によれば、sel=0のとき、idt=iref、iqt=0、θdrv=θtgtとなる。したがって、sel=0のとき、a軸電流値ia及びb軸電流値ibは、以下のように制御される。   In summary, according to the present embodiment, when sel = 0, idt = iref, iqt = 0, and θdrv = θtgt. Therefore, when sel = 0, the a-axis current value ia and the b-axis current value ib are controlled as follows.

Figure 2018014875
Figure 2018014875

式(17)及び式(18)からわかるように、a軸電流値ia及びb軸電流値ibは、位相が角度指令値θtgtに同期し、振幅が一定値irefとなるように制御される。すなわち、a軸電流値ia及びb軸電流値ibが回転子11の角度(位置)とは無関係に制御される開ループ制御が実現されている。   As can be seen from the equations (17) and (18), the a-axis current value ia and the b-axis current value ib are controlled such that the phase is synchronized with the angle command value θtgt and the amplitude is a constant value iref. That is, open loop control is realized in which the a-axis current value ia and the b-axis current value ib are controlled regardless of the angle (position) of the rotor 11.

一方、sel=1のとき、idt=0、iqt=itgt、θdrv=θestとなる。したがって、sel=1のとき、a軸電流値ia及びb軸電流値ibは、以下のように制御される。   On the other hand, when sel = 1, idt = 0, iqt = itgt, and θdrv = θest. Therefore, when sel = 1, the a-axis current value ia and the b-axis current value ib are controlled as follows.

Figure 2018014875
Figure 2018014875

式(19)及び式(20)からわかるように、a軸電流値ia及びb軸電流値ibは、位相が角度推定値θestに同期し、振幅が速度推定値ωestに応じた電流指令値itgtとなるように制御される。すなわち、a軸電流値ia及びb軸電流値ibが回転子11の角度(位置)の推定値に応じて制御される閉ループ制御が実現されている。   As can be seen from the equations (19) and (20), the a-axis current value ia and the b-axis current value ib have a current command value itgt whose phase is synchronized with the estimated angle value θest and whose amplitude corresponds to the estimated speed value ωest. It is controlled to become. That is, closed-loop control is realized in which the a-axis current value ia and the b-axis current value ib are controlled according to the estimated value of the angle (position) of the rotor 11.

以上説明した通り、本実施形態によれば、モータ1は、開ループ制御と閉ループ制御とを切り替えながら制御される。モータ1は、低速駆動時(状態OP1,OP2のとき)に開ループ制御により制御され、高速駆動時(状態CLのとき)に閉ループ制御により制御される。   As described above, according to the present embodiment, the motor 1 is controlled while switching between open-loop control and closed-loop control. The motor 1 is controlled by open loop control during low speed driving (in the state OP1, OP2), and controlled by closed loop control during high speed driving (in the state CL).

低速駆動時に開ループ制御することにより、モータ1の駆動を精度よく制御することができる。すなわち、回転子11を角度指令値θtgtに追従して回転させることができる。また、モータ1の停止時における回転子11の角度(位置)を、所定の角度に固定することができる。   By performing open loop control during low speed driving, the driving of the motor 1 can be controlled with high accuracy. That is, the rotor 11 can be rotated following the angle command value θtgt. Further, the angle (position) of the rotor 11 when the motor 1 is stopped can be fixed to a predetermined angle.

また、高速駆動時に閉ループ制御することにより、モータ1の駆動を精度よく制御することができる。すなわち、回転子11を角度推定値θestに追従して回転させることができる。   Further, by performing the closed loop control during high speed driving, the driving of the motor 1 can be accurately controlled. That is, the rotor 11 can be rotated following the estimated angle value θest.

また、閉ループ制御によれば、a軸電流値ia及びb軸電流値ibの振幅である電流指令値itgtを速度推定値ωestに応じた値とすることができる。これにより、電流指令値itgtを、負荷、速度、外乱などに釣り合う値に制御することができる。すなわち、負荷等が小さい場合、電流指令値itgtを小さくし、負荷等が大きい場合、電流指令値itgtを小さくすることができる。結果として、モータ1の消費電力を低減し、電力効率を向上させることができる。   Further, according to the closed loop control, the current command value itgt, which is the amplitude of the a-axis current value ia and the b-axis current value ib, can be set to a value corresponding to the estimated speed value ωest. As a result, the current command value itgt can be controlled to a value commensurate with the load, speed, disturbance, and the like. That is, when the load or the like is small, the current command value itgt can be reduced, and when the load or the like is large, the current command value itgt can be reduced. As a result, the power consumption of the motor 1 can be reduced and the power efficiency can be improved.

また、電流指令値itgtは、負の値をとり得るため、回転子11に対して、回転子11の回転方向とは逆方向のトルクを生じさせることができる。このため、モータ1を搭載した電気自動車が坂を下る場合のように、進行方向に対する逆方向のトルクを発生させることが要求される場合であっても、本実施形態により、所望のトルクを発生させることができる。   Further, since the current command value itgt can take a negative value, the torque in the direction opposite to the rotation direction of the rotor 11 can be generated in the rotor 11. For this reason, even when it is required to generate torque in the direction opposite to the traveling direction, such as when the electric vehicle equipped with the motor 1 is going down a hill, the desired torque is generated according to this embodiment. Can be made.

また、本実施形態に係るモータ制御装置100は、従来のステッピングモータの制御装置と同様に、基準パルスrefclkに基づいてモータ1を制御するため、従来の制御装置と互換性を有する。この結果、モータ制御装置100の導入に伴う上位システムの設計変更が不要となり、導入に関するコストを低減し、納期を短縮することができる。   Moreover, since the motor control apparatus 100 according to the present embodiment controls the motor 1 based on the reference pulse refclk, like the conventional stepping motor control apparatus, the motor control apparatus 100 is compatible with the conventional control apparatus. As a result, it is not necessary to change the design of the host system associated with the introduction of the motor control device 100, so that the cost for introduction can be reduced and the delivery time can be shortened.

また、本実施形態によれば、交流電流であるA相駆動電流Ia及びB相駆動電流Ibは、直流(低周波)のd軸電圧指令値Vd及びq軸電圧指令値Vq(d軸電流指令値idt及びq軸電流指令値iqt)により制御される。したがって、a軸電流値ia及びb軸電流値ibを直接制御する場合に比べて、制御帯域を低くすることができる。結果として、制御帯域の低い安価なモータ制御装置100によりモータ駆動システムを構成することができる。   Further, according to the present embodiment, the A-phase drive current Ia and the B-phase drive current Ib, which are alternating currents, are a DC (low frequency) d-axis voltage command value Vd and a q-axis voltage command value Vq (d-axis current command). It is controlled by the value idt and the q-axis current command value iqt). Therefore, the control band can be lowered as compared with the case where the a-axis current value ia and the b-axis current value ib are directly controlled. As a result, a motor drive system can be configured by an inexpensive motor control device 100 having a low control band.

また、本実施形態によれば、選択信号selに応じて各構成の入力を切り替えるだけで、同一の構成により、開ループ制御及び閉ループ制御を実行することができる。したがって、モータ制御装置100の構成を簡易化し、モータ制御装置100を安価に構成することができる。   Further, according to the present embodiment, it is possible to execute open-loop control and closed-loop control with the same configuration simply by switching the input of each configuration according to the selection signal sel. Therefore, the configuration of the motor control device 100 can be simplified and the motor control device 100 can be configured at low cost.

また、本実施形態によれば、d軸電圧指令値Vd及びq軸電圧指令値Vqにより、a軸電流値ia及びb軸電流値ibの位相を制御できるため、A相駆動電流Ia及びB相駆動電流Ibの電圧や電流を、制御方法の切替前後でスムースに接続することができる。これにより、制御方法の切替に起因するモータ1の脱調を抑制することができる。   Further, according to the present embodiment, since the phase of the a-axis current value ia and the b-axis current value ib can be controlled by the d-axis voltage command value Vd and the q-axis voltage command value Vq, the A-phase drive current Ia and the B-phase The voltage and current of the drive current Ib can be smoothly connected before and after the control method is switched. Thereby, the step-out of the motor 1 resulting from the switching of the control method can be suppressed.

図13は、本実施形態に係るモータ駆動システムのシミュレーション結果を示す図である。   FIG. 13 is a diagram illustrating a simulation result of the motor drive system according to the present embodiment.

図13の上段は、速度指令値ωtgt(太線)と、速度推定値ωest(細線)と、のグラフを示す。図13の例では、速度指令値ωtgtは、いわゆる台形速度プロファイルに従い、一定の加速度で加速し、定常速度となり、その後、一定の加速度で減速している。   The upper part of FIG. 13 shows a graph of the speed command value ωtgt (thick line) and the speed estimated value ωest (thin line). In the example of FIG. 13, the speed command value ωtgt is accelerated at a constant acceleration according to a so-called trapezoidal speed profile, becomes a steady speed, and then decelerates at a constant acceleration.

図13の中段は、制御方法選択部111による制御方法の選択状態を示す。選択状態は、モータ1の起動後、速度指令値ωtgtが速度閾値ω1未満の間、状態OP1となっている。選択状態は、速度指令値ωtgtが速度閾値ω1以上になると、状態OP2に遷移し、状態OP2に遷移してから所定期間T1が経過すると、状態CLに遷移し、速度指令値ωtgtが速度閾値ω2未満になると、状態OP1に遷移している。   The middle part of FIG. 13 shows a control method selection state by the control method selection unit 111. The selected state is the state OP1 after the start of the motor 1 while the speed command value ωtgt is less than the speed threshold value ω1. The selected state transitions to state OP2 when the speed command value ωtgt is equal to or greater than the speed threshold value ω1, and transitions to state CL when a predetermined period T1 has elapsed since the transition to the state OP2, and the speed command value ωtgt becomes the speed threshold value ω2. When it is less than, it is transited to the state OP1.

図13の下段は、選択信号selの値を示す。選択信号selは、モータ1の起動後、速度指令値ωtgtが速度閾値ω1以上になってから所定期間T1が経過するまで0であり、その後、1となる。選択信号selは、速度指令値ωtgtが速度閾値ω2未満になると、0となる。   The lower part of FIG. 13 shows the value of the selection signal sel. The selection signal sel is 0 until the predetermined period T1 elapses after the speed command value ωtgt becomes equal to or higher than the speed threshold ω1 after the motor 1 is started, and then becomes 1. The selection signal sel becomes 0 when the speed command value ωtgt is less than the speed threshold value ω2.

すなわち、モータ1は、起動後、速度指令値ωtgtが速度閾値ω1以上になってから所定期間T1が経過するまで開ループ制御され、その後、閉ループ制御される。モータ1は、速度指令値ωtgtが速度閾値ω2未満になると、開ループ制御で制御される。   That is, after the motor 1 is started, the open loop control is performed until the predetermined period T1 elapses after the speed command value ωtgt becomes equal to or higher than the speed threshold ω1, and then the closed loop control is performed. The motor 1 is controlled by open loop control when the speed command value ωtgt is less than the speed threshold value ω2.

図13からわかるように、速度推定値ωestは、モータ1の起動後、角度推定の位相同期が確立するまで、不安定な値となり、位相同期の確立後、速度指令値ωtgtとほぼ一致している。また、速度推定値ωestは、モータ1の減速中、速度指令値ωtgtが小さくなると、角度推定が困難になるため、再び不安定になっている。   As can be seen from FIG. 13, the estimated speed value ωest is an unstable value until the phase synchronization of the angle estimation is established after the motor 1 is started, and substantially coincides with the speed command value ωtgt after the establishment of the phase synchronization. Yes. Further, the estimated speed value ωest is unstable again when the speed command value ωtgt becomes smaller during deceleration of the motor 1 because angle estimation becomes difficult.

図13の例では、速度推定値ωestの値が不安定になる期間に開ループ制御が選択されるように、速度閾値ω1,ω2が設定されている。このように速度閾値ω1,ω2を設定することにより、速度推定値ωestの値が不安定な期間(閉ループ制御ではモータ1を精度よく制御できない期間)に、モータ1を開ループ制御することができる。また、速度推定値ωestが速度指令値ωtgtに追従する期間(閉ループ制御によりモータ1を精度よく制御できる期間)に、モータ1を閉ループ制御することができる。結果として、モータ1の駆動中の全期間にわたって、モータ1を精度よく制御することができる。   In the example of FIG. 13, the speed thresholds ω <b> 1 and ω <b> 2 are set so that the open loop control is selected during a period when the value of the estimated speed value ωest is unstable. By setting the speed threshold values ω1 and ω2 in this way, the motor 1 can be controlled in an open loop during a period in which the estimated speed value ωest is unstable (a period in which the motor 1 cannot be accurately controlled by closed loop control). . Further, the motor 1 can be closed-loop controlled during a period in which the estimated speed value ωest follows the speed command value ωtgt (a period during which the motor 1 can be accurately controlled by the closed-loop control). As a result, the motor 1 can be accurately controlled over the entire period during which the motor 1 is being driven.

また、図13の例のように、速度閾値ω1,ω2を定常速度よりも低く設定することにより、モータ1が定常速度の間、モータ1を閉ループ制御することができる。一般に、定常速度でモータ1を駆動する期間は、モータ1の加速期間や減速期間よりも大幅に長い。このため、上記のように速度閾値ω1,ω2を設定することにより、駆動期間のほとんどの期間で、モータ1を閉ループ制御し、モータ1の消費電力を大幅に低減することができる。これに伴い、モータ1の発熱を抑制し、モータ1の小型化や低コスト化も可能となる。   Further, as in the example of FIG. 13, by setting the speed thresholds ω1 and ω2 to be lower than the steady speed, the motor 1 can be closed-loop controlled while the motor 1 is at the steady speed. In general, the period during which the motor 1 is driven at a steady speed is significantly longer than the acceleration period or deceleration period of the motor 1. For this reason, by setting the speed threshold values ω1 and ω2 as described above, the motor 1 can be closed-loop controlled during most of the drive period, and the power consumption of the motor 1 can be greatly reduced. Accordingly, the heat generation of the motor 1 can be suppressed, and the motor 1 can be reduced in size and cost.

なお、本実施形態に係るモータ駆動システムの構成は、図1に限られない。例えば、dq座標系を介さずに、a軸電流値ia及びb軸電流値ibを直接制御する構成も可能である。この場合、式(17)〜(20)を満たすように、a軸電流値ia及びb軸電流値ibを制御すればよい。   The configuration of the motor drive system according to the present embodiment is not limited to FIG. For example, a configuration in which the a-axis current value ia and the b-axis current value ib are directly controlled without using the dq coordinate system is also possible. In this case, the a-axis current value ia and the b-axis current value ib may be controlled so as to satisfy the expressions (17) to (20).

<第2実施形態>
第2実施形態に係るモータ駆動システムについて、図14及び図15を参照して説明する。本実施形態では、角度制御部102の他の例について説明する。
Second Embodiment
A motor drive system according to the second embodiment will be described with reference to FIGS. 14 and 15. In the present embodiment, another example of the angle control unit 102 will be described.

図14は、本実施形態に係るモータ駆動システムの構成を示す図である。図14に示すように、本実施形態では、角度指令値算出部101が出力した速度指令値ωtgtは、角度制御部102と、制御方法選択部111と、に入力される。他の構成は、第1実施形態(図1)と同様である。   FIG. 14 is a diagram illustrating a configuration of a motor drive system according to the present embodiment. As shown in FIG. 14, in this embodiment, the speed command value ωtgt output from the angle command value calculation unit 101 is input to the angle control unit 102 and the control method selection unit 111. Other configurations are the same as those of the first embodiment (FIG. 1).

図15は、本実施形態に係る角度制御部102の一例を示す図である。図15に示すように、速度指令値ωtgtは、比較部1023に入力される。比較部1023は、速度推定値ωestと速度指令値ωtgtとの差と、操作量Cと、を加算して出力する。他の構成は、第1実施形態(図4)と同様である。このような構成により、本実施形態では、電流指令値itgtは、以下の式で表される。   FIG. 15 is a diagram illustrating an example of the angle control unit 102 according to the present embodiment. As illustrated in FIG. 15, the speed command value ωtgt is input to the comparison unit 1023. The comparison unit 1023 adds the difference between the speed estimated value ωest and the speed command value ωtgt and the operation amount C and outputs the result. Other configurations are the same as those of the first embodiment (FIG. 4). With this configuration, in the present embodiment, the current command value itgt is expressed by the following equation.

Figure 2018014875
Figure 2018014875

式(1)及び式(21)からわかるように、本実施形態における電流指令値itgtは、第1実施形態における電流指令値itgtの右辺第1項に速度指令値ωtgtを加算したものである。本実施形態において、速度指令値ωtgtは、速度制御の目標値として利用される。   As can be seen from the equations (1) and (21), the current command value itgt in the present embodiment is obtained by adding the speed command value ωtgt to the first term on the right side of the current command value itgt in the first embodiment. In the present embodiment, the speed command value ωtgt is used as a target value for speed control.

第1実施形態(図4)の角度制御部102では、操作量Cを目標値として速度制御が行われるため、操作量Cは、速度指令値ωtgtに比例した値となる。すなわち、角度指令値θtgtと角度推定値θestとの差は、速度指令値ωtgtに比例した値となる。この結果、モータ1が高速駆動するほど、角度指令値θtgtと角度推定値θestとの差が大きくなる。   In the angle control unit 102 of the first embodiment (FIG. 4), the speed control is performed with the operation amount C as a target value. Therefore, the operation amount C is a value proportional to the speed command value ωtgt. That is, the difference between the angle command value θtgt and the estimated angle value θest is a value proportional to the speed command value ωtgt. As a result, the higher the motor 1 is driven, the larger the difference between the angle command value θtgt and the estimated angle value θest.

これに対して、本実施形態(図15)の角度制御部102では、速度指令値ωtgtを目標値として速度制御が行われるため、操作量Cは、速度指令値ωtgtとは独立して操作される。結果として、操作量Cは、速度指令値ωtgtとは比例した値とはならず、ゼロ近傍の値となる。したがって、本実施形態の角度制御部102によれば、角度指令値θtgtに対する追従性を向上させることができる。   On the other hand, in the angle control unit 102 of the present embodiment (FIG. 15), the speed control is performed using the speed command value ωtgt as a target value, so the operation amount C is operated independently of the speed command value ωtgt. The As a result, the operation amount C is not a value proportional to the speed command value ωtgt, but is a value near zero. Therefore, according to the angle control unit 102 of the present embodiment, the followability to the angle command value θtgt can be improved.

また、第1実施形態の角度制御部102では、速度指令値ωtgtの変化に対する応答(速度制御応答)は、角度指令値θtgtの変化に対する応答(角度制御応答)の後に行われる。   Further, in the angle control unit 102 of the first embodiment, the response to the change in the speed command value ωtgt (speed control response) is performed after the response to the change in the angle command value θtgt (angle control response).

これに対して、本実施形態の角度制御部102では、速度指令値ωtgtが変化すると、速度制御応答が瞬時に開始される。したがって、本実施形態の角度制御部102によれば、速度指令値ωtgtの変化に対する応答速度を向上させ、速度指令値ωtgtに対する追従性を向上させることができる。   On the other hand, in the angle control unit 102 of the present embodiment, when the speed command value ωtgt changes, the speed control response is instantly started. Therefore, according to the angle control unit 102 of the present embodiment, the response speed with respect to the change in the speed command value ωtgt can be improved, and the followability to the speed command value ωtgt can be improved.

<第3実施形態>
第3実施形態に係るモータ駆動システムについて、図16〜図18を参照して説明する。本実施形態では、制御方法選択部111による制御方法の選択方法の他の例について説明する。
<Third Embodiment>
A motor drive system according to a third embodiment will be described with reference to FIGS. In the present embodiment, another example of a control method selection method by the control method selection unit 111 will be described.

図16は、本実施形態に係るモータ駆動システムの構成を示す図である。図16に示すように、本実施形態では、角度推定部110が出力した速度推定値ωestは、角度制御部102と、制御方法選択部111と、に入力される。他の構成は、第1実施形態(図1)と同様である。   FIG. 16 is a diagram illustrating a configuration of a motor drive system according to the present embodiment. As shown in FIG. 16, in this embodiment, the estimated speed value ωest output from the angle estimation unit 110 is input to the angle control unit 102 and the control method selection unit 111. Other configurations are the same as those of the first embodiment (FIG. 1).

図17は、本実施形態における制御方法の選択方法を説明する状態遷移図である。図17に示すように、本実施形態では、選択状態が遷移する条件(制御方法の選択方法)は以下のとおりである。   FIG. 17 is a state transition diagram illustrating a control method selection method according to the present embodiment. As shown in FIG. 17, in the present embodiment, the conditions (selection method of the control method) for changing the selection state are as follows.

状態OP1において、速度指令値ωtgtが所定の速度閾値ω1以上になり、かつ、速度指令値ωtgtと速度推定値ωestとの差(以下、「速度誤差ωerr」という)が誤差閾値e未満になると、状態OP1は、状態OP2に遷移する。   In the state OP1, when the speed command value ωtgt is equal to or greater than the predetermined speed threshold value ω1, and the difference between the speed command value ωtgt and the estimated speed value ωest (hereinafter referred to as “speed error ωerr”) is less than the error threshold value e, The state OP1 transitions to the state OP2.

状態OP2において、速度指令値ωtgtが所定の速度閾値ω2未満になる、又は速度誤差ωerrが誤差閾値e以上になると、状態OP2は、状態OP1に遷移する。また、状態OP2において、状態OP2の継続期間tが所定期間T1以上になると、状態OP2は、状態CLに遷移する。   In the state OP2, when the speed command value ωtgt becomes less than the predetermined speed threshold value ω2 or the speed error ωerr is equal to or greater than the error threshold value e, the state OP2 transitions to the state OP1. Further, in the state OP2, when the duration t of the state OP2 is equal to or longer than the predetermined period T1, the state OP2 transitions to the state CL.

状態CLにおいて、速度指令値ωtgtが所定の速度閾値ω2未満になる、又は速度誤差ωerrが誤差閾値e以上になると、状態CLは、状態OP1に遷移する。   In the state CL, when the speed command value ωtgt is less than the predetermined speed threshold value ω2 or the speed error ωerr is greater than or equal to the error threshold value e, the state CL transitions to the state OP1.

なお、誤差閾値eは、予め設定された速度誤差ωerrの閾値である。誤差閾値eは、安定して閉ループ制御を実行可能な速度誤差ωerrの上限値として、実験やシミュレーションなどにより設定される。   The error threshold e is a preset threshold value of the speed error ωerr. The error threshold e is set by experimentation or simulation as an upper limit value of the speed error ωerr that can stably perform the closed loop control.

図18は、本実施形態におけるモータ駆動システムの動作の一例を示すフローチャートである。図18のフローチャートは、ステップS118を有する。図18のステップS101〜S117は、第1実施形態(図12)と同様である。   FIG. 18 is a flowchart showing an example of the operation of the motor drive system in the present embodiment. The flowchart in FIG. 18 includes step S118. Steps S101 to S117 in FIG. 18 are the same as those in the first embodiment (FIG. 12).

図18に示すように、本実施形態では、速度指令値ωtgtが速度閾値ω2以上である場合(ステップS102のNO)、制御方法選択部111は、速度誤差ωerrが誤差閾値e以上であるか判定する(ステップS118)。   As shown in FIG. 18, in this embodiment, when the speed command value ωtgt is equal to or greater than the speed threshold ω2 (NO in step S102), the control method selection unit 111 determines whether the speed error ωerr is equal to or greater than the error threshold e. (Step S118).

速度誤差ωerrが誤差閾値e以上である場合(ステップS118のYES)、制御方法選択部111は、制御方法として開ループ制御を選択し、選択信号selとして0を出力する(ステップS103)。以降の処理は、上述の通りである。   When the speed error ωerr is equal to or greater than the error threshold e (YES in step S118), the control method selection unit 111 selects open loop control as the control method and outputs 0 as the selection signal sel (step S103). The subsequent processing is as described above.

一方、速度誤差ωerrが誤差閾値e未満である場合(ステップS118のNO)、処理は、ステップS112に進む。以降の処理は、上述の通りである。   On the other hand, when the speed error ωerr is less than the error threshold value e (NO in step S118), the process proceeds to step S112. The subsequent processing is as described above.

以上説明した通り、本実施形態によれば、速度誤差ωerrが小さく、安定した閉ループ制御を実行可能なときに、閉ループ制御が選択される。したがって、閉ループ制御によるモータ1の制御の安定性をより向上させることができる。   As described above, according to the present embodiment, the closed loop control is selected when the speed error ωerr is small and stable closed loop control can be performed. Therefore, the stability of the control of the motor 1 by the closed loop control can be further improved.

<第4実施形態>
第4実施形態に係るモータ駆動システムについて、図19〜図24を参照して説明する。本実施形態では、弱め界磁制御について説明する。
<Fourth embodiment>
A motor drive system according to a fourth embodiment will be described with reference to FIGS. In the present embodiment, field weakening control will be described.

図19は、本実施形態に係るモータ駆動システムの構成を示す図である。本実施形態に係るモータ駆動システムの構成は、第1選択部103を除き、第1実施形態と同様である。以下、第1選択部103について説明する。   FIG. 19 is a diagram illustrating a configuration of a motor drive system according to the present embodiment. The configuration of the motor drive system according to the present embodiment is the same as that of the first embodiment except for the first selection unit 103. Hereinafter, the first selection unit 103 will be described.

図19に示すように、第1選択部103は、電流値0の代わりに、d軸電圧指令値Vd、q軸電圧指令値Vq、及び電源電圧Vccを入力される。本実施形態において、第1選択部103は、選択信号selが0の場合(制御方法が開ループ制御の場合)、d軸電流指令値idtとして電流値irefを選択する。したがって、選択信号selが0の場合のモータ駆動システムの動作は、第1実施形態と同様となる。   As shown in FIG. 19, the first selection unit 103 receives the d-axis voltage command value Vd, the q-axis voltage command value Vq, and the power supply voltage Vcc instead of the current value 0. In the present embodiment, when the selection signal sel is 0 (when the control method is open loop control), the first selection unit 103 selects the current value iref as the d-axis current command value idt. Therefore, the operation of the motor drive system when the selection signal sel is 0 is the same as in the first embodiment.

一方、第1選択部103は、選択信号selが1の場合(制御方法が閉ループ制御の場合)、d軸電圧指令値Vd、q軸電圧指令値Vq、及び電源電圧Vccに基づいて、d軸電流指令値idtとして、q軸電流指令値iqtの所定値倍の値を出力する。本実施形態におけるd軸電流指令値idtについて、詳しくは後述する。   On the other hand, when the selection signal sel is 1 (when the control method is closed loop control), the first selection unit 103 uses the d-axis based on the d-axis voltage command value Vd, the q-axis voltage command value Vq, and the power supply voltage Vcc. A value that is a predetermined value times the q-axis current command value iqt is output as the current command value idt. The d-axis current command value idt in the present embodiment will be described in detail later.

ここで、閉ループ制御時における、第1選択部103の動作について説明する。なお、上述の通り、d軸電流値idはd軸電流指令値idtに追従し、q軸電流値iqはq軸電流指令値iqtに追従する。したがって、d軸電流指令値idt及びq軸電流指令値iqtを制御することは、d軸電流値id及びq軸電流値iqを制御することに相当する。   Here, the operation of the first selection unit 103 during the closed loop control will be described. As described above, the d-axis current value id follows the d-axis current command value idt, and the q-axis current value iq follows the q-axis current command value iqt. Therefore, controlling the d-axis current command value idt and the q-axis current command value iqt corresponds to controlling the d-axis current value id and the q-axis current value iq.

モータ1が駆動している間、A相コイル12A及びB相コイル12Bの端子間には、回転子11の速度及び磁束の強さに比例した逆起電圧が発生する。このため、閉ループ制御を成立させる場合、d軸電圧指令値Vd及びq軸電圧指令値Vqは、それぞれ以下の式を満たすことを要求される。   While the motor 1 is driven, a counter electromotive voltage proportional to the speed of the rotor 11 and the strength of the magnetic flux is generated between the terminals of the A-phase coil 12A and the B-phase coil 12B. Therefore, when the closed loop control is established, the d-axis voltage command value Vd and the q-axis voltage command value Vq are required to satisfy the following expressions, respectively.

Figure 2018014875
Figure 2018014875

式(22),(23)において、R及びLは、A相コイル12A及びB相コイル12Bの抵抗値(ohm)及びインダクタンス(H)、wは回転子11の回転数(rad/sec)、Keは回転数wに比例して発生する逆起電圧定数(V/rad/sec)である。   In the equations (22) and (23), R and L are the resistance value (ohm) and inductance (H) of the A-phase coil 12A and the B-phase coil 12B, w is the rotational speed (rad / sec) of the rotor 11, Ke is a counter electromotive voltage constant (V / rad / sec) generated in proportion to the rotational speed w.

第1実施形態のように、閉ループ制御時に、d軸電流指令値idt(d軸電流値id)を電流値0に制御する場合、式(22)より、d軸電圧指令値Vdは負の値になることがわかる。また、式(23)より、回転数wが大きい場合、q軸電圧指令値Vqは大きな値となることがわかる。   As in the first embodiment, when the d-axis current command value idt (d-axis current value id) is controlled to the current value 0 during closed-loop control, the d-axis voltage command value Vd is a negative value according to equation (22). It turns out that it becomes. Further, it can be seen from the equation (23) that when the rotation speed w is large, the q-axis voltage command value Vq becomes a large value.

図20は、閉ループ制御時における電圧指令値と回転速度との関係を示すグラフである。図20の例では、d軸電流指令値idtを電流値0に制御する場合を想定している。図20において、抵抗値Rは9.1(ohm)、インダクタンスHは20mH、逆起電圧定数Keは0.008(V/rad/sec)、d軸電流値idは0(A)、q軸電流値iqは0.3(A)、電源電圧Vccは24(V)である。また、破線はd軸電圧指令値Vd、実線はq軸電圧指令値Vq、一点鎖線は相電圧Vab(=(Vd+Vq1/2)を示す。 FIG. 20 is a graph showing the relationship between the voltage command value and the rotation speed during closed-loop control. In the example of FIG. 20, it is assumed that the d-axis current command value idt is controlled to a current value of 0. In FIG. 20, the resistance value R is 9.1 (ohm), the inductance H is 20 mH, the back electromotive voltage constant Ke is 0.008 (V / rad / sec), the d-axis current value id is 0 (A), and the q-axis The current value iq is 0.3 (A), and the power supply voltage Vcc is 24 (V). The broken line indicates the d-axis voltage command value Vd, the solid line indicates the q-axis voltage command value Vq, and the alternate long and short dash line indicates the phase voltage Vab (= (Vd 2 + Vq 2 ) 1/2 ).

図20に示すように、d軸電圧指令値Vd、q軸電圧指令値Vq、及び相電圧Vabは、その振幅が24V(電源電圧Vcc)になると飽和する。図20の例では、d軸電圧指令値Vdは約2000rpmで飽和し、相電圧Vabは約1700rpmで飽和している。一般に、d軸電圧指令値Vd及びq軸電圧指令値Vqのいずれかが飽和するまで、閉ループ制御は成立するため、図20の例では、約2000rpmまで閉ループ制御が可能であることがわかる。言い換えると、図20の例では、約2000rpmまでしか閉ループ制御を実現できない。   As shown in FIG. 20, the d-axis voltage command value Vd, the q-axis voltage command value Vq, and the phase voltage Vab are saturated when the amplitude becomes 24 V (power supply voltage Vcc). In the example of FIG. 20, the d-axis voltage command value Vd is saturated at about 2000 rpm, and the phase voltage Vab is saturated at about 1700 rpm. In general, since the closed loop control is established until either the d-axis voltage command value Vd or the q-axis voltage command value Vq is saturated, it can be understood that the closed-loop control can be performed up to about 2000 rpm in the example of FIG. In other words, in the example of FIG. 20, the closed loop control can be realized only up to about 2000 rpm.

図21は、閉ループ制御時における電圧指令値と回転速度との関係を示すグラフである。図21の例では、d軸電流指令値idtを−0.14(A)に制御する場合を想定している。図21の例では、d軸電圧指令値Vdは2500rpmでも飽和していないため、2500rpm以上の回転速度まで閉ループ制御が可能であることがわかる。   FIG. 21 is a graph showing the relationship between the voltage command value and the rotation speed during closed-loop control. In the example of FIG. 21, it is assumed that the d-axis current command value idt is controlled to −0.14 (A). In the example of FIG. 21, since the d-axis voltage command value Vd is not saturated even at 2500 rpm, it can be seen that the closed loop control can be performed up to a rotational speed of 2500 rpm or higher.

このように、d軸電流値idを0(A)以外の値に制御することで、閉ループ制御を成立させるために要求される電圧指令値を低下させる制御を、弱め界磁制御という。弱め界磁制御により、電圧指令値を低下させ、閉ループ制御を正常に実現可能な回転速度の上限値を上昇させることができる。本実施形態における第1選択部103は、d軸電流指令値idtとして、d軸電流指令値idtとq軸電流指令値iqtとの比Aを出力することにより、この弱め界磁制御を実現する。   In this way, the control for reducing the voltage command value required to establish the closed loop control by controlling the d-axis current value id to a value other than 0 (A) is called field weakening control. By the field weakening control, it is possible to decrease the voltage command value and increase the upper limit value of the rotational speed at which the closed loop control can be normally realized. The first selection unit 103 in the present embodiment realizes this field weakening control by outputting the ratio A between the d-axis current command value idt and the q-axis current command value iqt as the d-axis current command value idt.

図22は、本実施形態に係る第1選択部103の一例を示す図である。図22の第1選択部103は、加算部1031と、減算部1032と、増幅部1033と、積分部1034と、乗算部1035と、選択部1036と、弱め界磁判定部1037と、を備える。   FIG. 22 is a diagram illustrating an example of the first selection unit 103 according to the present embodiment. 22 includes an adder 1031, a subtractor 1032, an amplifier 1033, an integrator 1034, a multiplier 1035, a selector 1036, and a field weakening determination unit 1037. .

加算部1031は、d軸電圧指令値Vd及びq軸電圧指令値Vqを入力される。加算部1031は、d軸電圧指令値Vd及びq軸電圧指令値Vqを加算して出力する。加算部1031の出力値は、減算部1032に入力される。   The adder 1031 receives the d-axis voltage command value Vd and the q-axis voltage command value Vq. The adder 1031 adds the d-axis voltage command value Vd and the q-axis voltage command value Vq and outputs the result. The output value of the addition unit 1031 is input to the subtraction unit 1032.

減算部1032は、加算部1031の出力値及び所定値V0(第2所定値)を入力される。所定値V0は、予め設定された一定値である。減算部1032は、所定値V0から加算部1031の出力値を減算して出力する。減算部1032の出力値は、増幅部1033に入力される。   The subtraction unit 1032 receives the output value of the addition unit 1031 and the predetermined value V0 (second predetermined value). The predetermined value V0 is a constant value set in advance. The subtracting unit 1032 subtracts the output value of the adding unit 1031 from the predetermined value V0 and outputs the result. The output value of the subtraction unit 1032 is input to the amplification unit 1033.

増幅部1033は、減算部1032の出力値を入力される。増幅部1033は、減算部1032の出力値を、所定のゲインKで増幅し、出力する。ゲインKは、後述する積分の収束速度を決める定数である。ゲインKを適切に設定することにより、電流指令値idtの急激な変化を避け、トルクや回転数の変動を抑制することができる。増幅部1033の出力値は、積分部1034に入力される。   The amplification unit 1033 receives the output value of the subtraction unit 1032. The amplifying unit 1033 amplifies the output value of the subtracting unit 1032 with a predetermined gain K and outputs it. The gain K is a constant that determines the convergence speed of integration described later. By appropriately setting the gain K, it is possible to avoid a sudden change in the current command value idt and to suppress fluctuations in torque and rotational speed. The output value of the amplifying unit 1033 is input to the integrating unit 1034.

積分部1034は、増幅部1033の出力値、所定値A0(第1所定値)、及び切替信号loadを入力される。所定値A0は、予め設定された一定値である。切替信号loadは、弱め界磁制御の有効化及び無効化を切り替える2値の信号であり、弱め界磁判定部1037から入力される。以下では、弱め界磁判定部1037は、弱め界磁制御を有効化する場合、切替信号loadとして0を出力し、弱め界磁制御を無効化する場合、切替信号loadとして1を出力するものとする。   The integration unit 1034 receives the output value of the amplification unit 1033, the predetermined value A0 (first predetermined value), and the switching signal load. The predetermined value A0 is a constant value set in advance. The switching signal load is a binary signal that switches between enabling and disabling field weakening control, and is input from the field weakening determination unit 1037. Hereinafter, the field weakening determination unit 1037 outputs 0 as the switching signal load when the field weakening control is validated, and outputs 1 as the switching signal load when the field weakening control is invalidated.

積分部1034は、切替信号loadとして1を入力された(弱め界磁制御が無効化された)場合、出力値Aとして所定値A0を出力する。所定値A0は、例えば、0である。この場合、d軸電流指令値idtとして電流値0が出力されるため、第1実施形態における閉ループ制御と同様の制御が行われる。   The integration unit 1034 outputs a predetermined value A0 as the output value A when 1 is input as the switching signal load (field weakening control is invalidated). The predetermined value A0 is 0, for example. In this case, since the current value 0 is output as the d-axis current command value idt, the same control as the closed loop control in the first embodiment is performed.

一方、積分部1034は、切替信号loadとして0を入力された(弱め界磁制御が有効化された)場合、出力値Aとして、所定値A0に増幅部1033の出力値を積分した値を出力する。積分部1034の出力値Aは、乗算部1035に入力される。   On the other hand, when 0 is input as the switching signal load (field weakening control is enabled), the integrating unit 1034 outputs a value obtained by integrating the output value of the amplifying unit 1033 with the predetermined value A0. The output value A of the integration unit 1034 is input to the multiplication unit 1035.

乗算部1035は、積分部1034の出力値A及び電流指令値itgtを入力される。乗算部1035は、出力値Aと電流指令値itgtを乗算して出力する。乗算部1035の出力値は、選択部1036に入力される。   The multiplier 1035 receives the output value A of the integrator 1034 and the current command value itgt. Multiplier 1035 multiplies output value A by current command value itgt and outputs the result. The output value of the multiplier 1035 is input to the selector 1036.

選択部1036は、乗算部1035の出力値、電流値iref、及び選択信号selを入力される。選択部1036は、選択信号selとして0を入力された場合、d軸電流指令値idtとして、電流値irefを出力する。一方、選択部1036は、選択信号selとして1を入力された場合、d軸電流指令値idtとして、乗算部1035の出力値を出力する。   The selection unit 1036 receives the output value of the multiplication unit 1035, the current value iref, and the selection signal sel. When 0 is input as the selection signal sel, the selection unit 1036 outputs the current value iref as the d-axis current command value idt. On the other hand, when 1 is input as the selection signal sel, the selection unit 1036 outputs the output value of the multiplication unit 1035 as the d-axis current command value idt.

弱め界磁判定部1037は、d軸電圧指令値Vd、q軸電圧指令値Vd、及び電源電圧値Vccを入力される。弱め界磁判定部1037は、d軸電圧指令値Vd、q軸電圧指令値Vd、及び電源電圧値Vccに基づいて、弱め界磁制御を有効化するか否かを判定し、判定結果に応じた切替信号loadを出力する。上述の通り、弱め界磁判定部1037は、弱め界磁制御を有効化する場合、切替信号loadとして0を出力し、弱め界磁制御を無効化する場合、切替信号loadとして1を出力する。   The field weakening determination unit 1037 receives the d-axis voltage command value Vd, the q-axis voltage command value Vd, and the power supply voltage value Vcc. The field weakening determination unit 1037 determines whether to enable field weakening control based on the d-axis voltage command value Vd, the q-axis voltage command value Vd, and the power supply voltage value Vcc, and switches according to the determination result. The signal load is output. As described above, the field weakening determination unit 1037 outputs 0 as the switching signal load when the field weakening control is validated, and outputs 1 as the switching signal load when the field weakening control is invalidated.

図23は、本実施形態における弱め界磁制御の切替方法を説明する状態遷移図である。図23の各ノードは、弱め界磁判定部1037による弱め界磁制御の判定状態を示している。以下、ノードN4,N5の判定状態を、それぞれ状態NORM,ENという。   FIG. 23 is a state transition diagram illustrating a switching method of field weakening control in the present embodiment. Each node in FIG. 23 indicates a determination state of field weakening control by the field weakening determination unit 1037. Hereinafter, the determination states of the nodes N4 and N5 are referred to as states NORM and EN, respectively.

状態NORMは、弱め界磁判定部1037が弱め界磁制御を無効化すると判定し、切替信号loadとして1を出力している状態である。状態NORMにおいて、d軸電圧指令値Vdの大きさ(絶対値)が第1閾値V1以上になる、又はq軸電圧指令値Vqの大きさ(絶対値)が第1閾値V1以上になると、状態NORMは、状態ENに遷移する。   The state NORM is a state in which the field weakening determination unit 1037 determines that the field weakening control is invalidated and 1 is output as the switching signal load. In the state NORM, when the magnitude (absolute value) of the d-axis voltage command value Vd is equal to or greater than the first threshold value V1, or when the magnitude (absolute value) of the q-axis voltage command value Vq is equal to or greater than the first threshold value V1 NORM transitions to state EN.

状態ENは、弱め界磁判定部1037が弱め界磁制御を有効化すると判定し、切替信号loadとして0を出力している状態である。状態ENにおいて、d軸電圧指令値Vdの大きさ(絶対値)が第2閾値V2未満になり、かつ、q軸電圧指令値Vqの大きさ(絶対値)が第2閾値V2未満になると、状態ENは、状態NORMに遷移する。   The state EN is a state in which the field weakening determination unit 1037 determines that the field weakening control is to be enabled and outputs 0 as the switching signal load. In the state EN, when the magnitude (absolute value) of the d-axis voltage command value Vd is less than the second threshold value V2, and the magnitude (absolute value) of the q-axis voltage command value Vq is less than the second threshold value V2, State EN transitions to state NORM.

第1閾値V1は、電源電圧値Vccの近傍の値に設定される。第1閾値V1は、例えば、0.95Vccであるが、これに限られない。第1閾値V1をこのように設定することにより、d軸電圧指令値Vdが電源電圧値Vccに近づくと、状態NORMが状態ENに遷移し、弱め界磁制御が有効化されるため、d軸電圧指令値Vdの飽和を遅らせることができる。また、q軸電圧指令値Vqが電源電圧値Vccに近づくと、状態NORMが状態ENに遷移し、弱め界磁制御が有効化されるため、q軸電圧指令値Vqの飽和を遅らせることができる。   The first threshold value V1 is set to a value near the power supply voltage value Vcc. The first threshold value V1 is, for example, 0.95 Vcc, but is not limited to this. By setting the first threshold value V1 in this way, when the d-axis voltage command value Vd approaches the power supply voltage value Vcc, the state NORM transitions to the state EN, and field weakening control is enabled. The saturation of the value Vd can be delayed. Further, when the q-axis voltage command value Vq approaches the power supply voltage value Vcc, the state NORM transitions to the state EN and field weakening control is validated, so that the saturation of the q-axis voltage command value Vq can be delayed.

第2閾値V2は、第1閾値V1より小さい値に設定される。第2閾値V2は、例えば、0.8Vccであるが、これに限られない。d軸電圧指令値Vd及びq軸電圧指令値Vqの大きさが、第1閾値V1より小さい第2閾値V2未満となった場合に、状態ENを状態NORMに遷移させることにより、2つの状態間の往復を抑制することができる。これにより、状態遷移に起因する、トルクや回転数の変動を抑制することができる。   The second threshold value V2 is set to a value smaller than the first threshold value V1. The second threshold value V2 is, for example, 0.8 Vcc, but is not limited to this. When the magnitudes of the d-axis voltage command value Vd and the q-axis voltage command value Vq are less than the second threshold value V2 that is smaller than the first threshold value V1, the state EN is transitioned to the state NORM, thereby Can be suppressed. Thereby, the fluctuation | variation of a torque and rotation speed resulting from a state transition can be suppressed.

以上のような構成により、閉ループ制御が選択され(sel=1)、弱め界磁制御が有効化されている場合(load=0)、積分部1034は、d軸電圧指令値Vd及びq軸電圧指令値Vqの和が所定値A0と一致する(Vd+Vq=A0)ように、出力値Aを出力する。例えば、所定値A0が0である場合、積分部1034の出力値Aにより、Vd+Vq=0となるように、d軸電圧指令値Vd及びq軸電圧指令値Vqが制御される。   With the above configuration, when closed loop control is selected (sel = 1) and field weakening control is enabled (load = 0), the integration unit 1034 has the d-axis voltage command value Vd and the q-axis voltage command value. The output value A is output so that the sum of Vq matches the predetermined value A0 (Vd + Vq = A0). For example, when the predetermined value A0 is 0, the d-axis voltage command value Vd and the q-axis voltage command value Vq are controlled by the output value A of the integration unit 1034 so that Vd + Vq = 0.

また、このとき、q軸電流指令値iqtは電流値itgtであり(iqt=itgt)、d軸電流指令値idtは電流値itgtのA倍であるため、出力値Aは、q軸電流指令値iqtと、d軸電流指令値idtと、の比に相当する(idt=A×iqt)。   At this time, since the q-axis current command value iqt is the current value itgt (iqt = itgt) and the d-axis current command value idt is A times the current value itgt, the output value A is the q-axis current command value. This corresponds to the ratio between iqt and the d-axis current command value idt (idt = A × iqt).

このように、弱め界磁制御が有効である場合、積算部1034は、d軸電圧指令値Vd及びq軸電圧指令値Vqの和が一定となるように、d軸電流指令値idt及びq軸電流指令値iqtの比Aを調整する調整部として機能する。例えば、図21の例では、2500rpm付近でVd+Vq=0となっている。これは、積算部1034により、Vd+Vq=0となるように、出力値Aが約−0.46に制御された結果である(iqt=0.3(A),idt=−0.14(A)=A×iqt)。   Thus, when the field weakening control is effective, the integrating unit 1034 causes the d-axis current command value idt and the q-axis current command to be constant so that the sum of the d-axis voltage command value Vd and the q-axis voltage command value Vq is constant. It functions as an adjustment unit that adjusts the ratio A of the value iqt. For example, in the example of FIG. 21, Vd + Vq = 0 near 2500 rpm. This is a result of the output value A being controlled to about −0.46 by the integrating unit 1034 so that Vd + Vq = 0 (iqt = 0.3 (A), idt = −0.14 (A ) = A × iqt).

以上説明した通り、本実施形態によれば、d軸電圧指令値Vd及びq軸電圧指令値Vqの和が一定となるように、d軸電流指令値idtとq軸電流指令値iqtとの比(出力値)Aを制御することができる。これにより、d軸電圧指令値Vd及びq軸電圧指令値Vqが電源電圧値Vccに到達し、飽和するのを遅らせることができる。言い換えると、閉ループ制御により正常に制御可能な回転速度や負荷の範囲を広げる(上限値を上昇させる)ことができる。また、d軸電流指令値idt及びq軸電流指令値iqtを連動させることができるため、モータ1のトルクの利用効率を向上させることができる。   As described above, according to the present embodiment, the ratio between the d-axis current command value idt and the q-axis current command value iqt so that the sum of the d-axis voltage command value Vd and the q-axis voltage command value Vq is constant. (Output value) A can be controlled. Thereby, it is possible to delay the saturation of the d-axis voltage command value Vd and the q-axis voltage command value Vq reaching the power supply voltage value Vcc. In other words, it is possible to widen the range of rotation speed and load that can be normally controlled by closed loop control (increase the upper limit value). Further, since the d-axis current command value idt and the q-axis current command value iqt can be linked, the torque utilization efficiency of the motor 1 can be improved.

また、本実施形態によれば、比Aは、モータ定数などの仕様値を用いずに、d軸電圧指令値Vd及びq軸電圧指令値Vqに基づいて算出することができる。これにより、モータ1の製造ばらつきの影響を抑制し、安定した弱め界磁制御を実現することができる。   Further, according to the present embodiment, the ratio A can be calculated based on the d-axis voltage command value Vd and the q-axis voltage command value Vq without using specification values such as motor constants. Thereby, the influence of the manufacturing dispersion | variation in the motor 1 can be suppressed and stable field-weakening control can be realized.

また、第1選択部103は、加算器や減算器などの基本的な回路素子の組み合わせにより構成できるため、安価に製造することができる。   Moreover, since the 1st selection part 103 can be comprised by the combination of basic circuit elements, such as an adder and a subtractor, it can be manufactured cheaply.

図24は、本実施形態に係る第1選択部103の一例を示す図である。図24の第1選択部103は、図22の第1選択部103の変形例に相当し、乗算部1035を備えず、積分部1034の出力値Aが選択部1036に直接入力される。図24の他の構成は、図22と同様である。なお、図24の構成は、図22の積分部1035に、電流指令値itgtの代わりに、定数1を入力したものと同様である。   FIG. 24 is a diagram illustrating an example of the first selection unit 103 according to the present embodiment. The first selection unit 103 in FIG. 24 corresponds to a modification of the first selection unit 103 in FIG. 22, does not include the multiplication unit 1035, and the output value A of the integration unit 1034 is directly input to the selection unit 1036. Other configurations in FIG. 24 are the same as those in FIG. The configuration of FIG. 24 is the same as that in which a constant 1 is input instead of the current command value itgt to the integration unit 1035 of FIG.

図24の第1選択部103は、閉ループ制御が選択され(sel=1)、弱め界磁制御が有効化されている場合(load=0)、d軸電流指令値idtとして出力値Aを出力する。すなわち、d軸電流指令値idtは、電流指令値itgtに依存しない。したがって、図24の構成により、外乱等により電流指令値itgtが過渡的に変化した場合であっても、当該変化によるd軸電流指令値idtへの影響を抑制し、トルクや回転数の変動を抑制することができる。   When the closed loop control is selected (sel = 1) and the field weakening control is enabled (load = 0), the first selection unit 103 in FIG. 24 outputs the output value A as the d-axis current command value idt. That is, the d-axis current command value idt does not depend on the current command value itgt. Therefore, even when the current command value itgt changes transiently due to a disturbance or the like, the influence of the change on the d-axis current command value idt is suppressed by the configuration shown in FIG. Can be suppressed.

なお、本実施形態における弱め界磁制御は、光学エンコーダや磁気エンコーダなどの位置センサを備えるモータ駆動システムにも適用可能である。   Note that the field-weakening control in the present embodiment is also applicable to a motor drive system including a position sensor such as an optical encoder or a magnetic encoder.

なお、上記実施形態に挙げた構成等に、その他の要素との組み合わせなど、ここで示した構成に本発明が限定されるものではない。これらの点に関しては、本発明の趣旨を逸脱しない範囲で変更することが可能であり、その応用形態に応じて適切に定めることができる。   It should be noted that the present invention is not limited to the configuration shown here, such as a combination with other elements in the configuration described in the above embodiment. These points can be changed without departing from the spirit of the present invention, and can be appropriately determined according to the application form.

1:モータ
2:インバータ
3:電流検出器
100:モータ制御装置
101:角度指令値算出部
102:角度制御部
103:第1選択部
104:第2選択部
105:d軸電流制御部
106:q軸電流制御部
107:第1ベクトル回転部
108:第2ベクトル回転部
109:第3選択部
110:角度推定部
111:制御方法選択部
1: Motor 2: Inverter 3: Current detector 100: Motor controller 101: Angle command value calculator 102: Angle controller 103: First selector 104: Second selector 105: d-axis current controller 106: q Axis current control unit 107: first vector rotation unit 108: second vector rotation unit 109: third selection unit 110: angle estimation unit 111: control method selection unit

特開2011−67063号公報JP 2011-67063 A 特開2011−139583号公報JP 2011-139583 A

Claims (14)

開ループ制御に依存する第1の電流指令値及び閉ループ制御に依存する第2の電流指令値に基づいて、ステッピングモータを制御するモータ制御装置であって、
速度指令値に基づいて、前記開ループ制御又は前記閉ループ制御を選択する制御方法選択部と、
前記開ループ制御が選択された場合、前記第1の電流指令値として第1の目標値を出力し、前記閉ループ制御が選択された場合、前記第2の電流指令値として第2の目標値を出力する指令値出力部と、
を備えるモータ制御装置。
A motor control device that controls a stepping motor based on a first current command value that depends on open-loop control and a second current command value that depends on closed-loop control,
A control method selection unit that selects the open loop control or the closed loop control based on a speed command value;
When the open loop control is selected, a first target value is output as the first current command value, and when the closed loop control is selected, a second target value is output as the second current command value. Command value output section to output,
A motor control device comprising:
前記開ループ制御において、前記ステッピングモータに供給された駆動電流の位相は、角度指令値に同期され、前記閉ループ制御において、前記駆動電流の位相は、角度推定値に同期される
請求項1に記載のモータ制御装置。
The phase of the drive current supplied to the stepping motor in the open loop control is synchronized with an angle command value, and the phase of the drive current is synchronized with an angle estimation value in the closed loop control. Motor control device.
角度指令値と、角度推定値と、速度推定値と、に基づいて、前記第2の目標値を算出する角度制御部を更に備える
請求項1又は請求項2に記載のモータ制御装置。
3. The motor control device according to claim 1, further comprising an angle control unit that calculates the second target value based on an angle command value, an angle estimated value, and a speed estimated value.
角度指令値と、角度推定値と、速度推定値と、前記速度指令値と、に基づいて、前記第2の目標値を算出する角度制御部を更に備える
請求項1又は請求項2に記載のモータ制御装置。
3. The angle control unit according to claim 1, further comprising an angle control unit that calculates the second target value based on an angle command value, an angle estimation value, a speed estimation value, and the speed command value. Motor control device.
前記制御方法選択部は、前記開ループ制御の選択中に、前記速度指令値が第1の速度閾値以上の期間が所定期間以上になると、前記閉ループ制御を選択し、前記閉ループ制御の選択中に、前記速度指令値が第2の速度閾値未満になると前記開ループ制御を選択する
請求項1乃至請求項4のいずれか1項に記載のモータ制御装置。
The control method selection unit selects the closed-loop control and selects the closed-loop control when the period in which the speed command value is equal to or higher than the first speed threshold becomes a predetermined period or more during the selection of the open-loop control. The motor control device according to any one of claims 1 to 4, wherein the open loop control is selected when the speed command value becomes less than a second speed threshold value.
前記ステッピングモータに供給された駆動電流に基づいて、角度推定値及び速度推定値を算出する推定部を更に備える
請求項1乃至請求項5のいずれか1項に記載のモータ制御装置。
6. The motor control device according to claim 1, further comprising an estimation unit that calculates an angle estimation value and a speed estimation value based on a drive current supplied to the stepping motor.
基準パルスに基づいて、前記速度指令値及び角度指令値を算出する指令値算出部を更に備える
請求項1乃至請求項6のいずれか1項に記載のモータ制御装置。
The motor control device according to any one of claims 1 to 6, further comprising a command value calculation unit that calculates the speed command value and the angle command value based on a reference pulse.
前記指令値出力部は、前記閉ループ制御が選択され、かつ、2つの電圧指令値の少なくとも一方が第1閾値以上になった場合、前記第1の電流指令値として、前記2つの電圧指令値の和が一定となる値を出力する
請求項1乃至請求項7のいずれか1項に記載のモータ制御装置。
When the closed loop control is selected and at least one of the two voltage command values is equal to or greater than a first threshold, the command value output unit outputs the two voltage command values as the first current command value. The motor control device according to any one of claims 1 to 7, wherein a value at which the sum is constant is output.
前記第1閾値は、電源電圧値に応じた値である
請求項8に記載のモータ制御装置。
The motor control device according to claim 8, wherein the first threshold value is a value corresponding to a power supply voltage value.
前記指令値出力部は、前記2つの電圧指令値が第2閾値未満となった場合、前記第1の電流指令値として、第1所定値を出力する
請求項8又は請求項9に記載のモータ制御装置。
The motor according to claim 8 or 9, wherein the command value output unit outputs a first predetermined value as the first current command value when the two voltage command values are less than a second threshold value. Control device.
前記第2閾値は、前記第1閾値より小さい
請求項10に記載のモータ制御装置。
The motor control device according to claim 10, wherein the second threshold value is smaller than the first threshold value.
前記指令値出力部は、前記2つの電圧指令値の和と第2所定値との差の積分値に基づいて、前記第1の電流指令値と、前記第2の電流指令値と、の比を算出する
請求項8乃至請求項11のいずれか1項に記載のモータ制御装置。
The command value output unit is configured to calculate a ratio between the first current command value and the second current command value based on an integral value of a difference between a sum of the two voltage command values and a second predetermined value. The motor control device according to claim 8, wherein the motor control device is calculated.
前記ステッピングモータに駆動電流を供給するインバータと、
前記駆動電流を検出する電流検出器と、
請求項1乃至請求項12のいずれか1項に記載のモータ制御装置と、
を備えるモータ駆動装置。
An inverter for supplying a drive current to the stepping motor;
A current detector for detecting the drive current;
The motor control device according to any one of claims 1 to 12,
A motor drive device comprising:
前記ステッピングモータと、
請求項13に記載のモータ駆動装置と、
を備えるモータ駆動システム。
The stepping motor;
A motor driving device according to claim 13;
A motor drive system comprising:
JP2017054899A 2016-07-08 2017-03-21 Motor control device, motor drive device, and motor drive system Active JP6870410B2 (en)

Priority Applications (2)

Application Number Priority Date Filing Date Title
US15/637,192 US10133255B2 (en) 2016-07-08 2017-06-29 Motor controller, motor driver, and motor driving system
EP17179233.6A EP3267575B1 (en) 2016-07-08 2017-07-03 Motor controller, motor driver, and motor driving system

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2016136397 2016-07-08
JP2016136397 2016-07-08

Publications (2)

Publication Number Publication Date
JP2018014875A true JP2018014875A (en) 2018-01-25
JP6870410B2 JP6870410B2 (en) 2021-05-12

Family

ID=61020564

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2017054899A Active JP6870410B2 (en) 2016-07-08 2017-03-21 Motor control device, motor drive device, and motor drive system

Country Status (1)

Country Link
JP (1) JP6870410B2 (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2020137393A (en) * 2019-02-26 2020-08-31 ローム株式会社 Driving circuit for stepping motor, driving method therefor, and electronic apparatus using the same
JP2020150698A (en) * 2019-03-14 2020-09-17 ローム株式会社 Driving circuit of stepping motor, driving method thereof, and electronic equipment using the same

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2020137393A (en) * 2019-02-26 2020-08-31 ローム株式会社 Driving circuit for stepping motor, driving method therefor, and electronic apparatus using the same
CN111614290A (en) * 2019-02-26 2020-09-01 罗姆股份有限公司 Drive circuit of stepping motor, drive method thereof, and electronic apparatus using the same
JP7224204B2 (en) 2019-02-26 2023-02-17 ローム株式会社 Stepping motor drive circuit, electronic equipment using it
CN111614290B (en) * 2019-02-26 2023-11-03 罗姆股份有限公司 Driving circuit of stepping motor, driving method thereof and electronic machine using same
JP2020150698A (en) * 2019-03-14 2020-09-17 ローム株式会社 Driving circuit of stepping motor, driving method thereof, and electronic equipment using the same
JP7208071B2 (en) 2019-03-14 2023-01-18 ローム株式会社 Driving circuit for stepping motor, driving method thereof, and electronic device using the same

Also Published As

Publication number Publication date
JP6870410B2 (en) 2021-05-12

Similar Documents

Publication Publication Date Title
Dang et al. Online parameter estimation technique for adaptive control applications of interior PM synchronous motor drives
TWI462434B (en) Apparatus for controlling rotary machinery and method for measuring the inductance of rotary machinery
US20160254770A1 (en) Motor control device
US11479124B2 (en) Optimized regenerative braking control of electric motors using look-up tables
WO2013137146A1 (en) Device for controlling electric motor and method for controlling electric motor
US10411633B2 (en) Control device for AC rotating machine
JP2013198340A (en) Synchronous machine controller
JP5717808B2 (en) Current control device for synchronous motor
JP2018007532A (en) Motor control device, motor drive device, motor drive system, image formation device, and transport device
JP5752214B2 (en) Synchronous machine controller
JP5667153B2 (en) Magnetic pole position detector for synchronous motor
JP5332904B2 (en) AC motor sensorless control device
JP6870410B2 (en) Motor control device, motor drive device, and motor drive system
JP5948266B2 (en) Inverter device, construction machine, electric motor control method
JP6206505B2 (en) Motor control device and control method
JP6293401B2 (en) Motor controller for air conditioner and air conditioner
JP2015173540A (en) Drive device for motor
JP5050387B2 (en) Motor control device
Nguyen et al. High-speed sensorless control of a synchronous reluctance motor based on an Extended Kalman Filter
JP6433387B2 (en) AC rotating machine control device and method for calculating moment of inertia of AC rotating machine
JP2018007533A (en) Motor control device, motor drive device, motor drive system, image formation device, and transport device
EP3267575B1 (en) Motor controller, motor driver, and motor driving system
JP2017205017A (en) Motor control device of air conditioner, and air conditioner
JP6265043B2 (en) Sensorless drive device for synchronous motor
JP5744151B2 (en) Electric motor driving apparatus and electric motor driving method

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20200116

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20200826

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20200908

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20201023

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

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20210316

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20210329

R151 Written notification of patent or utility model registration

Ref document number: 6870410

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151