JP5405685B1 - Motor control device and motor control method - Google Patents

Motor control device and motor control method Download PDF

Info

Publication number
JP5405685B1
JP5405685B1 JP2013089698A JP2013089698A JP5405685B1 JP 5405685 B1 JP5405685 B1 JP 5405685B1 JP 2013089698 A JP2013089698 A JP 2013089698A JP 2013089698 A JP2013089698 A JP 2013089698A JP 5405685 B1 JP5405685 B1 JP 5405685B1
Authority
JP
Japan
Prior art keywords
motor
virtual
signal
current
actual
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2013089698A
Other languages
Japanese (ja)
Other versions
JP2014217086A (en
Inventor
真一 藤井
順彦 尾崎
成久 磯部
観 赤津
Original Assignee
ディエスピーテクノロジ株式会社
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by ディエスピーテクノロジ株式会社 filed Critical ディエスピーテクノロジ株式会社
Priority to JP2013089698A priority Critical patent/JP5405685B1/en
Application granted granted Critical
Publication of JP5405685B1 publication Critical patent/JP5405685B1/en
Publication of JP2014217086A publication Critical patent/JP2014217086A/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Abstract

【課題】実モータおよび/またはその実モータのための実制御系の設計の支援を容易にしたり、実モータの制御を容易にする。
【解決手段】モータ制御装置10は、制御信号に基づいて実モータ12を制御するために、実モータ12の作動中、仮想モータを作動させ、それにより、制御信号を決定する仮想モータ計算部50を有する。仮想モータは、実モータ12を模擬するために、仮想3相電流信号が入力されると、その仮想3相電流信号によって表される3相電流を実モータ12から出力するためにその実モータ12に入力すべき3相電圧を表す仮想3相電圧信号を出力する。仮想モータ計算部50は、実モータの制御目標値を表す目標信号に基づいて仮想電流信号を生成し、その仮想電流信号を仮想モータに入力し、それに応答して仮想モータから出力された仮想電圧信号をそのまま制御信号として用いるかまたは仮想電圧信号に基づいて制御信号を決定する。
【選択図】図1
The present invention facilitates design support of an actual motor and / or an actual control system for the actual motor, and facilitates control of the actual motor.
In order to control a real motor based on a control signal, a motor control device operates a virtual motor during operation of the real motor and thereby determines a control signal. Have When a virtual three-phase current signal is input to simulate the real motor 12, the virtual motor outputs the three-phase current represented by the virtual three-phase current signal from the real motor 12 to the real motor 12. A virtual three-phase voltage signal representing the three-phase voltage to be input is output. The virtual motor calculation unit 50 generates a virtual current signal based on a target signal representing a control target value of the actual motor, inputs the virtual current signal to the virtual motor, and outputs a virtual voltage output from the virtual motor in response to the virtual current signal. The signal is used as it is as the control signal or the control signal is determined based on the virtual voltage signal.
[Selection] Figure 1

Description

本発明は、電気エネルギーを運動エネルギーに変換する実モータを制御する技術に関する。   The present invention relates to a technique for controlling an actual motor that converts electrical energy into kinetic energy.

電気エネルギーを運動エネルギーに変換するために、電気的に駆動されるモータが使用される。この種のモータは、ますます拡大する種々の用途を有しており、そのような用途としては、例えば、自動車の如き移動体の駆動源や、ロボット、工作機械、搬送機械、荷役機械、空調機器、事務機器の如き運動発生装置の駆動源(アクチュエータ)がある。   An electrically driven motor is used to convert electrical energy into kinetic energy. This type of motor has a wide variety of applications. Examples of such applications include a drive source for a moving body such as an automobile, a robot, a machine tool, a transport machine, a cargo handling machine, and an air conditioner. There are drive sources (actuators) for motion generators such as equipment and office equipment.

例えば、自動車という用途においては、モータのみを駆動源として搭載する形式であるか、モータと燃焼機関とをいずれも駆動源として搭載する形式であるかを問わず、モータを駆動源として自動車に搭載することが普及している。この用途においては、モータの種類やモータが使用される環境の如何を問わず、モータを思い通りに制御することがますます必要となってきている。   For example, in the case of an automobile, whether it is a type in which only a motor is mounted as a driving source or a type in which both a motor and a combustion engine are mounted as driving sources, the motor is mounted on the automobile as a driving source. It is popular. In this application, it is becoming increasingly necessary to control the motor as desired regardless of the type of motor and the environment in which the motor is used.

モータを使用する場合には、そのモータを制御する制御系の設計が重要である。また、モータを精度よく制御するためには、モータの入出力特性に適合する制御系の設計が必要である。   When a motor is used, it is important to design a control system that controls the motor. In addition, in order to control the motor with high accuracy, it is necessary to design a control system suitable for the input / output characteristics of the motor.

また、モータのための制御系を設計するために、実際のモータを使用することが困難である場合がある。この場合には、その実モータの入出力特性を模擬する計算を行う仮想モータが実モータの代わりに使用され、その仮想モータを用いて、実モータのための制御系が設計される場合もある(例えば、特許文献1および2参照。)。   In addition, it may be difficult to use an actual motor in order to design a control system for the motor. In this case, a virtual motor that performs calculation that simulates the input / output characteristics of the actual motor may be used instead of the actual motor, and a control system for the actual motor may be designed using the virtual motor ( For example, see Patent Documents 1 and 2.)

制御系の設計に際し、実モータの入出力特性が線形である場合には、制御系の設計も、仮想モータの設計も容易である。この種の実モータは、一般に、希土類を使用する磁石を使用する。   When designing the control system, if the input / output characteristics of the real motor are linear, the design of the control system and the design of the virtual motor are easy. This type of real motor generally uses magnets that use rare earths.

特開2006−318200号公報JP 2006-318200 A 特開2009−284637号公報JP 2009-284737 A

しかしながら、近年、希土類の入手が困難となっていることもあり、磁石を用いないモータに転換したいという要望が増してきている。また、磁石を用いるにしてもその使用量を減らしたいという要望もある。磁石の使用量が少ないモータは、小型化・高速化に伴い、定格出力(例えば、モータ速度やモータトルク)を超えた領域で使用される場合がある。また、安価な磁石材料を用いてモータを製作したいという要望もある。   However, in recent years, it has become difficult to obtain rare earth elements, and there is an increasing demand for switching to motors that do not use magnets. There is also a desire to reduce the amount of use of magnets. A motor that uses a small amount of magnets may be used in a region that exceeds a rated output (for example, motor speed or motor torque) as the size and speed of the motor increase. There is also a desire to manufacture motors using inexpensive magnet materials.

いずれにしても、モータの入出力特性が非線形となり易く、そのため、そのようなモータのための制御系の設計も困難となり易い。   In any case, the input / output characteristics of the motor are likely to be non-linear, which makes it difficult to design a control system for such a motor.

以上説明した事情を背景として、本発明は、実モータおよび/またはその実モータのための実制御系の設計の支援を容易にしたり、実モータの制御を容易にすることを課題としてなされたものである。   In view of the circumstances described above, the present invention has been made with the object of facilitating the support of the design of the actual motor and / or the actual control system for the actual motor, and facilitating the control of the actual motor. is there.

本発明によって下記の各態様が得られる。各態様は、項に区分し、各項には番号を付し、必要に応じて他の項の番号を引用する形式で記載する。これは、本発明が採用し得る技術的特徴の一部およびそれの組合せの理解を容易にするためであり、本発明が採用し得る技術的特徴およびそれの組合せが以下の態様に限定されると解釈すべきではない。すなわち、下記の態様には記載されていないが本明細書には記載されている技術的特徴を本発明の技術的特徴として適宜抽出して採用することは妨げられないと解釈すべきなのである。   The following aspects are obtained by the present invention. Each aspect is divided into sections, each section is given a number, and is described in a form that cites other section numbers as necessary. This is to facilitate understanding of some of the technical features that the present invention can employ and combinations thereof, and the technical features that can be employed by the present invention and combinations thereof are limited to the following embodiments. Should not be interpreted. That is, it should be construed that it is not impeded to appropriately extract and employ the technical features described in the present specification as technical features of the present invention although they are not described in the following embodiments.

さらに、各項を他の項の番号を引用する形式で記載することが必ずしも、各項に記載の技術的特徴を他の項に記載の技術的特徴から分離させて独立させることを妨げることを意味するわけではなく、各項に記載の技術的特徴をその性質に応じて適宜独立させることが可能であると解釈すべきである。   Further, describing each section in the form of quoting the numbers of the other sections does not necessarily prevent the technical features described in each section from being separated from the technical features described in the other sections. It should not be construed as meaning, but it should be construed that the technical features described in each section can be appropriately made independent depending on the nature.

(1) 電気エネルギーを運動エネルギーに変換する実モータを制御するモータ制御装置であって、
前記実モータを模擬する仮想モータであって、仮想電流信号が入力されると、その仮想電流信号によって表される電流を前記実モータが出力するためにその実モータに入力すべき電圧を表す仮想電圧信号を出力するものと、
前記実モータの制御目標値を表す目標信号に基づいて前記仮想電流信号を生成し、その仮想電流信号を前記仮想モータに入力し、それに応答して前記仮想モータから出力された仮想電圧信号をそのまま制御信号として用いるかまたは前記仮想電圧信号に基づいて前記制御信号を決定し、その決定された制御信号に基づいて前記実モータを制御する制御部と
を含むモータ制御装置。
(1) A motor control device that controls an actual motor that converts electrical energy into kinetic energy,
A virtual motor that simulates the real motor, and when a virtual current signal is input, a virtual voltage that represents a voltage to be input to the real motor in order to output the current represented by the virtual current signal. One that outputs a signal,
The virtual current signal is generated based on a target signal representing a control target value of the actual motor, the virtual current signal is input to the virtual motor, and the virtual voltage signal output from the virtual motor in response to the virtual current signal is directly input. A control unit that uses the control signal as a control signal or determines the control signal based on the virtual voltage signal and controls the real motor based on the determined control signal.

本明細書の全体を通して、「実モータを模擬する仮想モータ」という文言は、例えば、実モータの実際のまたは目標の入出力特性(例えば、入力電圧−出力電流特性)と実質的に同じ入出力特性を有する仮想モータを意味するように解釈したり、モータの入出力特性や動特性を定義するモータモデルを実モータとの間で実質的に共有する仮想モータを意味するように解釈することが可能である。   Throughout this specification, the phrase “virtual motor that simulates a real motor” means, for example, an input / output that is substantially the same as an actual or target input / output characteristic (eg, input voltage-output current characteristic) of the real motor. It can be interpreted to mean a virtual motor with characteristics, or it can be interpreted to mean a virtual motor that substantially shares the motor model that defines the input / output characteristics and dynamic characteristics of the motor with the actual motor. Is possible.

また、「制御信号」という用語は、実モータおよび仮想モータに直接的に入力されるか、または間接的に入力され、それにより、結果的に、それら実モータおよび仮想モータの作動状態に変化を与えることとなる信号を意味する。   In addition, the term “control signal” is input directly or indirectly to the real motor and the virtual motor, thereby changing the operation state of the real motor and the virtual motor. Means the signal to be given.

この意味における制御信号は、例えば、第1信号がインバータやパワーアンプなどの電力変換器に入力されると、前記第1信号に見合った電気エネルギーが第2信号としてモータに入力される入力系統については、前記第1信号を意味する用語として解釈したり、前記第2信号を意味する用語として解釈することが可能である。なぜなら、前記第1信号も前記第2信号も、モータにとり、そのモータを制御するための信号であることに変わりはなく、しかも、モータの作動状態に一義的に対応する信号であるからである。   The control signal in this sense is an input system in which, for example, when a first signal is input to a power converter such as an inverter or a power amplifier, electric energy corresponding to the first signal is input to the motor as a second signal. Can be interpreted as a term meaning the first signal or as a term meaning the second signal. This is because both the first signal and the second signal are signals for controlling the motor for the motor, and are signals that uniquely correspond to the operating state of the motor. .

(2) 前記制御部は、前記目標信号に基づいて前記仮想モータのための目標電流信号を生成し、その目標電流信号に基づき、前記仮想モータの電流のベクトル制御を、前記目標電流信号の座標変換が前記実モータの回転角を用いて行われるように行い、それにより、前記仮想電流信号を生成する(1)項に記載のモータ制御装置。 (2) The control unit generates a target current signal for the virtual motor based on the target signal, and performs vector control of the current of the virtual motor based on the target current signal, and coordinates of the target current signal. The motor control device according to item (1), wherein the conversion is performed using the rotation angle of the real motor, thereby generating the virtual current signal.

(3) さらに、前記実モータの電流を検出する検出部を含み、
前記制御部は、前記検出された実モータ電流と、その実モータ電流の検出タイミングに時間的に関連付けられるタイミングで前記仮想モータに入力される前記仮想電流信号によって表される仮想モータ電流との差に基づき、その差が減少するように、前記仮想電圧信号を直接的にまたは間接的に補正する(1)または(2)項に記載のモータ制御装置。
(3) Furthermore, a detection unit for detecting the current of the actual motor is included,
The control unit determines a difference between the detected actual motor current and a virtual motor current represented by the virtual current signal input to the virtual motor at a timing temporally related to the detection timing of the actual motor current. The motor control device according to (1) or (2), wherein the virtual voltage signal is corrected directly or indirectly so that the difference is reduced.

(4) 前記仮想モータは、仮想3相電流信号が入力されると、その仮想3相電流信号によって表される3相電流を前記実モータが出力するためにその実モータに入力すべき3相電圧を表す仮想3相電圧信号を出力し、
前記制御部は、前記目標信号を、前記仮想モータのための仮想dq軸指令電流信号に変換し、その仮想dq軸指令電流信号を、前記実モータの回転角のもとで、前記仮想モータのための仮想3相指令電流信号に変換し、その仮想3相指令電流信号を前記仮想モータに入力し、それに応答して前記仮想モータから出力された仮想3相指令電圧信号に前記仮想3相指令電流信号を変換し、前記仮想3相指令電圧信号をそのまま前記制御信号として用いるかまたは前記仮想3相指令電圧信号に基づいて前記制御信号を決定する(1)項に記載のモータ制御装置。
(4) When the virtual three-phase current signal is input to the virtual motor, the three-phase voltage to be input to the real motor in order for the real motor to output the three-phase current represented by the virtual three-phase current signal Output a virtual three-phase voltage signal representing
The control unit converts the target signal into a virtual dq axis command current signal for the virtual motor, and converts the virtual dq axis command current signal of the virtual motor under the rotation angle of the real motor. The virtual three-phase command current signal is input to the virtual motor, and the virtual three-phase command voltage signal output from the virtual motor in response to the virtual three-phase command current signal is input to the virtual motor. The motor control device according to (1), wherein a current signal is converted and the virtual three-phase command voltage signal is used as the control signal as it is or the control signal is determined based on the virtual three-phase command voltage signal.

(5) さらに、前記実モータ回転角を取得する取得部を含み、
前記制御部は、さらに、
前記取得部によって前記実モータ回転角が取得された時期から、その取得された実モータ回転角を用いて計算された前記制御信号が前記実モータに供給される時期までの間に前記実モータ回転角が変化することが予想される変化量を推定する推定部と、
その推定された変化量に基づき、前記取得された実モータ回転角を補正する角度補正部と
を含み、
前記制御部は、前記補正された実モータ回転角のもとで、前記仮想dq軸指令電流信号を前記仮想3相指令電流信号に変換する(4)項に記載のモータ制御装置。
(5) Furthermore, the acquisition part which acquires the said actual motor rotation angle is included,
The control unit further includes:
The actual motor rotation from the time when the actual motor rotation angle is acquired by the acquisition unit to the time when the control signal calculated using the acquired actual motor rotation angle is supplied to the actual motor. An estimator for estimating the amount of change in which the angle is expected to change;
An angle correction unit that corrects the acquired actual motor rotation angle based on the estimated change amount, and
The motor control device according to (4), wherein the control unit converts the virtual dq-axis command current signal into the virtual three-phase command current signal under the corrected actual motor rotation angle.

(6) 前記仮想モータは、前記実モータにおける入力電圧と出力電流との関係である実入出力特性を模擬する仮想入出力特性を有し、前記仮想3相指令電流信号が入力されると、前記仮想入出力特性に基づき、前記仮想3相指令電流信号に対応する前記仮想3相指令電圧信号を出力し、
当該モータ制御装置は、さらに、前記実モータの実3相電流を検出する検出部を含み、
前記制御部は、前記検出された実3相電流と、その実3相電流の検出タイミングに時間的に関連付けられるタイミングで前記仮想モータに入力される前記仮想3相指令電流信号によって表される仮想3相電流との差に基づき、前記実3相電流の次回値と前記仮想3相電流の次回値との差が減少するように、前記仮想入出力特性を修正する(4)または(5)項に記載のモータ制御装置。
(6) The virtual motor has a virtual input / output characteristic that simulates a real input / output characteristic that is a relationship between an input voltage and an output current in the real motor, and when the virtual three-phase command current signal is input, Based on the virtual input / output characteristics, the virtual three-phase command voltage signal corresponding to the virtual three-phase command current signal is output,
The motor control device further includes a detection unit that detects a real three-phase current of the real motor,
The control unit is a virtual 3 represented by the detected real three-phase current and the virtual three-phase command current signal input to the virtual motor at a timing temporally related to the detection timing of the real three-phase current. The virtual input / output characteristic is corrected so that the difference between the next value of the actual three-phase current and the next value of the virtual three-phase current is reduced based on the difference from the phase current (4) or (5) The motor control device described in 1.

(7) さらに、前記実モータの実3相電流を検出する検出部を含み、
前記制御部は、前記検出された実3相電流と、その実3相電流の検出タイミングに時間的に関連付けられるタイミングで前記仮想モータに入力される前記仮想3相指令電流信号によって表される仮想3相電流との差に基づき、前記実3相電流の次回値と前記仮想3相電流の次回値との差が減少するように、前記仮想モータから出力された仮想3相指令電圧信号を補正する(4)ないし(6)項のいずれかに記載のモータ制御装置。
(7) Furthermore, a detection unit for detecting an actual three-phase current of the actual motor is included,
The control unit is a virtual 3 represented by the detected real three-phase current and the virtual three-phase command current signal input to the virtual motor at a timing temporally related to the detection timing of the real three-phase current. Based on the difference from the phase current, the virtual three-phase command voltage signal output from the virtual motor is corrected so that the difference between the next value of the actual three-phase current and the next value of the virtual three-phase current is reduced. The motor control device according to any one of (4) to (6).

(8) 前記制御部は、さらに、前記実モータの作動状態と前記仮想モータの作動状態との差に基づき、その差が減少するように、前記仮想モータの入出力特性を修正する(1)項に記載のモータ制御装置。 (8) The controller further modifies the input / output characteristics of the virtual motor based on the difference between the operating state of the real motor and the operating state of the virtual motor so that the difference decreases (1). The motor control device according to item.

(9) 電気エネルギーを運動エネルギーに変換する実モータを制御するモータ制御方法であって、
制御信号に基づいて前記実モータを制御する第1工程と、
前記実モータの作動中、仮想モータを作動させ、それにより、前記制御信号を決定する第2工程と
を含み、
前記仮想モータは、前記実モータを模擬するために、仮想電流信号が入力されると、その仮想電流信号によって表される電流を前記実モータが出力するためにその実モータに入力すべき電圧を表す仮想電圧信号を出力し、
前記第2工程は、前記実モータの制御目標値を表す目標信号に基づいて前記仮想電流信号を生成し、その仮想電流信号を前記仮想モータに入力し、それに応答して前記仮想モータから出力された仮想電圧信号をそのまま前記制御信号として用いるかまたは前記仮想電圧信号に基づいて前記制御信号を決定するモータ制御方法。
(9) A motor control method for controlling an actual motor that converts electrical energy into kinetic energy,
A first step of controlling the actual motor based on a control signal;
A second step of activating a virtual motor during operation of the real motor, thereby determining the control signal;
The virtual motor represents a voltage to be input to the real motor in order to output the current represented by the virtual current signal when the virtual current signal is input to simulate the real motor. Output virtual voltage signal
The second step generates the virtual current signal based on a target signal representing a control target value of the real motor, inputs the virtual current signal to the virtual motor, and outputs the virtual current signal in response to the virtual current signal. A motor control method in which the virtual voltage signal is directly used as the control signal or the control signal is determined based on the virtual voltage signal.

(10) (9)項に記載のモータ制御方法を実行するためにコンピュータによって実行されるプログラム。 (10) A program executed by a computer to execute the motor control method according to (9).

(11) (10)項に記載のプログラムをコンピュータ読み取り可能に記録した記録媒体。 (11) A recording medium on which the program according to item (10) is recorded so as to be readable by a computer.

この記録媒体は種々な形式を採用可能であり、例えば、フレキシブル・ディスク等の磁気記録媒体、CD、CD−ROM等の光記録媒体、MO等の光磁気記録媒体、ROM等のアンリムーバブル・ストレージ等のいずれかを採用し得るが、それらに限定されない。   This recording medium can adopt various formats, for example, a magnetic recording medium such as a flexible disk, an optical recording medium such as a CD and a CD-ROM, a magneto-optical recording medium such as an MO, and an unremovable storage such as a ROM. However, it is not limited to them.

本発明によれば、実モータと仮想モータとを一緒に作動させることにより、仮想モータの作動状態量を用いて実モータを精度よく制御したり、実モータの作動状態量を用いて仮想モータの入出力特性をキャリブレートすることが可能となる。   According to the present invention, by operating the real motor and the virtual motor together, the real motor can be accurately controlled using the operation state quantity of the virtual motor, or the virtual motor can be controlled using the operation state quantity of the real motor. Input / output characteristics can be calibrated.

図1は、本発明の例示的な第1実施形態に従うモータ制御装置を有するシステム全体を表す機能ブロック図である。FIG. 1 is a functional block diagram showing an entire system having a motor control device according to the first exemplary embodiment of the present invention. 図2は、図1に示す実インバータ/パワーアンプの一例を概略的に示す回路図である。FIG. 2 is a circuit diagram schematically showing an example of the actual inverter / power amplifier shown in FIG. 図3は、図1に示す仮想モータ計算部の一例を表す機能ブロック図である。FIG. 3 is a functional block diagram illustrating an example of the virtual motor calculation unit illustrated in FIG. 1. 図4は、図3に示す仮想モータが用いるモータモデルの一例を概略的にかつ数学的に記述する図である。FIG. 4 is a diagram schematically and mathematically describing an example of a motor model used by the virtual motor shown in FIG. 図5(a)は、図3に示す仮想モータ計算部の全体シーケンスを示すタイミングチャートであり、図5(b)は、その仮想モータ計算部の個別の計算サイクルを示すタイミングチャートである。FIG. 5A is a timing chart showing the entire sequence of the virtual motor calculation section shown in FIG. 3, and FIG. 5B is a timing chart showing individual calculation cycles of the virtual motor calculation section. 図6は、図1に示すモータ制御装置の作動の一例を示すタイミングチャートである。FIG. 6 is a timing chart showing an example of the operation of the motor control device shown in FIG. 図7は、本発明の例示的な第2実施形態に従うモータ制御装置における仮想モータ計算部の一例を表す機能ブロック図である。FIG. 7 is a functional block diagram illustrating an example of a virtual motor calculation unit in the motor control device according to the second exemplary embodiment of the present invention. 図8(a)は、図7に示す仮想モータ計算部の全体シーケンスを示すタイミングチャートであり、図8(b)は、その仮想モータ計算部の個別の計算サイクルを示すタイミングチャートである。FIG. 8A is a timing chart showing the entire sequence of the virtual motor calculation section shown in FIG. 7, and FIG. 8B is a timing chart showing individual calculation cycles of the virtual motor calculation section. 図9は、図7に示す仮想モータ計算部の作動の一例を概念的に表すフローチャートである。FIG. 9 is a flowchart conceptually showing an example of the operation of the virtual motor calculation unit shown in FIG. 図10は、本発明の例示的な第3実施形態に従うモータ制御装置における仮想モータ計算部の一例を表す機能ブロック図である。FIG. 10 is a functional block diagram illustrating an example of a virtual motor calculation unit in the motor control device according to the third exemplary embodiment of the present invention. 図11は、図10に示す仮想モータ計算部による仮想モータ・キャリブレーションの一例を概念的に表すフローチャートである。FIG. 11 is a flowchart conceptually showing an example of virtual motor calibration by the virtual motor calculation unit shown in FIG. 図12は、本発明の例示的な第4実施形態に従うモータ制御装置における仮想モータ計算部の一例を表す機能ブロック図である。FIG. 12 is a functional block diagram illustrating an example of a virtual motor calculation unit in the motor control device according to the fourth exemplary embodiment of the present invention. 図13は、図12に示す仮想モータ計算部による仮想モータ出力値補正の一例を概念的に表すフローチャートである。FIG. 13 is a flowchart conceptually showing an example of virtual motor output value correction by the virtual motor calculation unit shown in FIG.

以下、本発明のさらに具体的で例示的な実施の形態のうちのいくつかを図面に基づいて詳細に説明する。   Hereinafter, some of the more specific and exemplary embodiments of the present invention will be described in detail with reference to the drawings.

<第1実施形態> <First Embodiment>

図1には、本発明の例示的な第1実施形態に従うモータ制御装置10を有するシステム11を概略的に表す機能ブロック図である。このシステム11は、そのシステム11の駆動源として実モータ12を備えている。このシステム11のいくつかの具体例としては、前述のように、絶対空間に対して移動する移動体や、可動部材に運動を付与する運動付与装置などがある。   FIG. 1 is a functional block diagram schematically illustrating a system 11 having a motor control device 10 according to a first exemplary embodiment of the present invention. The system 11 includes an actual motor 12 as a drive source for the system 11. Some specific examples of the system 11 include a moving body that moves relative to an absolute space and a motion imparting device that imparts motion to a movable member, as described above.

実モータ12は、一般に、複数極のロータ(図示しない)と、複数極のステータ(図示しない)と、磁束形成部(図示しないが、具体的には、例えば、巻き線)とを有するように構成される。図2に示すように、実モータ12は、前記ロータと共に回転するシャフト13を有しており、そのシャフト13が可動部材(図示しないが、具体的には、例えば、車両の車輪、工作機械の工具、ロボットのアームなど)に機械的に連結され、それにより、可動部材が駆動される。   The actual motor 12 generally has a multi-pole rotor (not shown), a multi-pole stator (not shown), and a magnetic flux forming section (not shown, but specifically, for example, a winding). Composed. As shown in FIG. 2, the actual motor 12 has a shaft 13 that rotates together with the rotor. The shaft 13 is a movable member (not shown, but specifically, for example, a vehicle wheel, a machine tool Mechanically coupled to a tool, robot arm, etc., thereby driving the movable member.

実モータ12のいくつかの具体例としては、界磁に永久磁石を使用して回転する永久磁石同期モータ(PMSM)、永久磁石を使用せず、渦電流を利用して回転する誘導モータ(IM)、スイッチ・リラクタンス・モータ(SRM)などがある。そのリラクタンス・モータにおいては、ロータが、永久磁石を使用することなく、強磁性の鉄心で構成されるため、リラクタンス・モータは、永久磁石を使用しない無整流子モータの一種である。   Some specific examples of the actual motor 12 include a permanent magnet synchronous motor (PMSM) that rotates using a permanent magnet as a field magnet, and an induction motor (IM that rotates using an eddy current without using a permanent magnet). ), Switch reluctance motor (SRM), and the like. In the reluctance motor, since the rotor is composed of a ferromagnetic iron core without using a permanent magnet, the reluctance motor is a kind of non-commutator motor that does not use a permanent magnet.

実モータ12が3相(U相、V相、W相)の巻線を有する場合、実モータ12の各種物理量を記述するために、次のような記号が使用される。   When the actual motor 12 has three-phase (U-phase, V-phase, and W-phase) windings, the following symbols are used to describe various physical quantities of the actual motor 12.

Vu,Vv,Vw:端子電圧(「巻線電圧」または「相電圧」ともいう。)[V]
Iu,Iv,Iw:相電流(「巻線電流」ともいう。)[A]
θm:ロータ(またはシャフト13)の角度(位相または回転位置であり、「モータ角」または「モータ位置」ともいう)[rad]
ωm:ロータ(またはシャフト13)の角速度(「モータ速度」ともいう)[rad/sec]
T:モータ出力トルク[Nm]
Fu,Fv,Fw:相磁束[Wb]
Vu, Vv, Vw: terminal voltage (also referred to as “winding voltage” or “phase voltage”) [V]
Iu, Iv, Iw: Phase current (also referred to as “winding current”) [A]
θm: angle of rotor (or shaft 13) (phase or rotational position, also referred to as “motor angle” or “motor position”) [rad]
ωm: Angular speed of rotor (or shaft 13) (also called “motor speed”) [rad / sec]
T: Motor output torque [Nm]
Fu, Fv, Fw: Phase magnetic flux [Wb]

なお、本実施形態および後述のいくつかの実施形態の説明において、同じ記号が、単独で使用される箇所と、「*」を末尾に有するように使用される箇所とが存在する。それら実施形態においては、同じ記号が、単独で使用される場合には、実際値または検出値を意味する一方、「*」と組み合わせて使用される場合には、指令値を意味するという用法と、同じ記号が、単独で使用される場合には、実モータ12についての物理量であることを意味する一方、「*」と組み合わせて使用される場合には、後述の仮想モータ60についての物理量であることを意味するという用法とがあるが、特記しない限り、前者の用法を採用することに留意されたい。   In the present embodiment and the description of some embodiments described later, there are places where the same symbol is used alone and places where “*” is used at the end. In these embodiments, the same symbol means an actual value or a detected value when used alone, whereas when used in combination with “*”, it means a command value. When the same symbol is used alone, it means a physical quantity for the actual motor 12, whereas when used in combination with “*”, it is a physical quantity for the virtual motor 60 described later. Note that there is a usage that means something, but unless otherwise noted, the former usage is adopted.

図1に示すように、システム11は、実モータ12を駆動するために、実インバータ/パワーアンプ14をさらに備えている。その実インバータ/パワーアンプ14は、実モータ12に電気エネルギーを供給する実インバータまたは実パワーアンプを有するように構成される。実モータ12に供給される電気エネルギーは、実モータ12が3相(U相、V相、W相)の巻線を有する場合、端子電圧Vu,Vv,Vwである。   As shown in FIG. 1, the system 11 further includes a real inverter / power amplifier 14 for driving the real motor 12. The actual inverter / power amplifier 14 is configured to include an actual inverter or an actual power amplifier that supplies electric energy to the actual motor 12. The electrical energy supplied to the actual motor 12 is the terminal voltages Vu, Vv, and Vw when the actual motor 12 has three-phase (U-phase, V-phase, and W-phase) windings.

図2には、実インバータ/パワーアンプ14が実インバータ16を有する場合につき、その実インバータ16が概念的に回路図で表されている。実インバータ16は、既によく知られているように、直流電圧Vdcが印加される入力端子20と、端子電圧Vu,Vv,Vwを実モータ12に出力するための出力端子22と、それら入力端子20と出力端子22との間に接続された複数のゲート24と、端子電圧Vu,Vv,Vwを検出する抵抗26と、その抵抗26に作用する電圧によって端子電圧Vu,Vv,Vwを表すアナログ信号をデジタル信号に変換するADC(交直変換器)28とを有するように構成される。   FIG. 2 conceptually shows a circuit diagram of the actual inverter 16 when the actual inverter / power amplifier 14 includes the actual inverter 16. As is well known, the actual inverter 16 includes an input terminal 20 to which the DC voltage Vdc is applied, an output terminal 22 for outputting the terminal voltages Vu, Vv, and Vw to the actual motor 12, and these input terminals. 20 and a plurality of gates 24 connected between the output terminal 22, a resistor 26 for detecting the terminal voltages Vu, Vv, and Vw, and an analog that represents the terminal voltages Vu, Vv, and Vw by voltages acting on the resistor 26. It is comprised so that it may have ADC (AC / DC converter) 28 which converts a signal into a digital signal.

複数のゲート24は、複数のスイッチング素子(すなわち、複数の上アーム・スイッチング素子および複数の下アーム・スイッチング素子)として構成されており、それらゲート24は、外部からの複数のパルス信号であるゲート信号Gu,Gv,Gw,Gx,Gy,Gwに応じてスイッチング動作を行う。   The plurality of gates 24 are configured as a plurality of switching elements (that is, a plurality of upper arm switching elements and a plurality of lower arm switching elements), and the gates 24 are gates that are a plurality of pulse signals from the outside. Switching operation is performed according to the signals Gu, Gv, Gw, Gx, Gy, and Gw.

このように構成されることにより、実インバータ16は、外部から複数のゲート信号Gu,Gv,Gw,Gx,Gy,Gwが制御信号として入力されると、その制御信号に応じた高さの端子電圧Vu,Vv,VwをPWM(パルス幅変調)方式によって生成し、それら生成された端子電圧Vu,Vv,Vwを実モータ12に供給する。すなわち、本実施形態においては、複数のゲート信号Gu,Gv,Gw,Gx,Gy,Gwが、複数の制御信号を構成するとともに、各信号が、PWM信号として形成されるのである。   With this configuration, when the plurality of gate signals Gu, Gv, Gw, Gx, Gy, and Gw are input as control signals from the outside, the actual inverter 16 has a height corresponding to the control signal. The voltages Vu, Vv, Vw are generated by a PWM (pulse width modulation) method, and the generated terminal voltages Vu, Vv, Vw are supplied to the actual motor 12. That is, in this embodiment, the plurality of gate signals Gu, Gv, Gw, Gx, Gy, Gw constitute a plurality of control signals, and each signal is formed as a PWM signal.

外部から実インバータ/パワーアンプ14に入力される制御信号は、実インバータ/パワーアンプ14が実インバータ16を有する場合には、上述のように、前記複数のゲート信号であるが、実インバータ/パワーアンプ14が実パワーアンプ(図示しない)を有する場合には、実モータ12の相数と同数のアナログ信号となる。   When the actual inverter / power amplifier 14 includes the actual inverter 16, the control signal input from the outside to the actual inverter / power amplifier 14 is the plurality of gate signals as described above. When the amplifier 14 has an actual power amplifier (not shown), the number of analog signals is the same as the number of phases of the actual motor 12.

図1に示すように、システム11は、実モータ12の作動状態をモニタするために、実モータ12の作動状態を検出し、その結果を表す実モータ状態信号を出力する実モータ状態検出部30をさらに備えている。実モータ状態検出部30は、実モータ12の作動状態として、例えば、実モータ12の実3相電流Iu,Iv,Iw、実モータ速度ωm、実モータ位置θmなどを検出できる。実3相電流Iu,Iv,Iwをモニタすることが必要である場合には、実モータ状態検出部30は、電流センサ(図示しない)を含むように構成され、また、実モータ位置θmを検出することが必要である場合には、実モータ状態検出部30は、例えば、ロータリ・エンコーダ(図示しない)を含むように構成される。   As shown in FIG. 1, in order to monitor the operating state of the real motor 12, the system 11 detects the operating state of the real motor 12, and outputs an actual motor state signal representing the result. Is further provided. The actual motor state detection unit 30 can detect, for example, the actual three-phase currents Iu, Iv, Iw, the actual motor speed ωm, the actual motor position θm, and the like of the actual motor 12 as the operating state of the actual motor 12. When it is necessary to monitor the actual three-phase currents Iu, Iv, and Iw, the actual motor state detection unit 30 is configured to include a current sensor (not shown), and detects the actual motor position θm. When it is necessary to do so, the actual motor state detection unit 30 is configured to include, for example, a rotary encoder (not shown).

図1に示すように、システム11は、実モータ12を制御するために、プロセッサ40を備えている。プロセッサ40は、FPGA(field-programmable gate array)やASIC(application specific integrated circuit)などの演算回路(例えば、PLD(Programmable logic device)、ワイヤード論理回路)42と、コンピュータのCPU44とを含むように構成されている。演算回路42により、例えば、1μsecという長さの第1の周期で、32ビットの浮動小数点演算を行い、それにより、仮想モータ計算部50による計算を行う。また、CPU44により、例えば、数10μsecという長さの第2の周期であって前記第1の周期より長いもので、システム11の全体を制御するための処理を行う。そのような処理としては、例えば、初期化、終了処理、時間的に可変である制御目標値を表す目標信号を入力する処理などがある。   As shown in FIG. 1, the system 11 includes a processor 40 for controlling the real motor 12. The processor 40 includes an arithmetic circuit (for example, a programmable logic device (PLD), a wired logic circuit) such as a field-programmable gate array (FPGA) or an application specific integrated circuit (ASIC) 42 and a CPU 44 of the computer. Has been. For example, the arithmetic circuit 42 performs a 32-bit floating point arithmetic operation in a first period of 1 μsec, and thereby performs a calculation by the virtual motor calculation unit 50. Further, the CPU 44 performs a process for controlling the entire system 11 with a second period of several tens of μsec, for example, which is longer than the first period. Examples of such processing include initialization, termination processing, and processing for inputting a target signal representing a control target value that is variable in time.

演算回路42により、仮想モータ計算部50が実現される。すなわち、仮想モータ計算部50は、演算回路42により、高速演算可能であるように構成されているのである。   A virtual motor calculator 50 is realized by the arithmetic circuit 42. That is, the virtual motor calculation unit 50 is configured to be capable of high-speed calculation by the calculation circuit 42.

概略的に説明するに、仮想モータ計算部50は、図3に示すように、実モータ12の電圧−電流特性(後に図4を参照して詳述される電圧電流方程式により表される)を模擬する仮想モータ60を主体として構成されている。仮想モータ計算部50は、その仮想モータ60を用いることにより、目標信号によって表される制御目標値に応じた実モータ12の電流(指令電流)を生成するためにその実モータ12に供給すべき電圧(指令電圧)を計算する。   In general, the virtual motor calculation unit 50 calculates the voltage-current characteristics of the real motor 12 (represented by a voltage-current equation detailed later with reference to FIG. 4) as shown in FIG. The virtual motor 60 to be simulated is mainly configured. The virtual motor calculation unit 50 uses the virtual motor 60 to generate a current (command current) of the actual motor 12 corresponding to the control target value represented by the target signal. Calculate (command voltage).

仮想モータ60は、それに、指令電流を表す電流信号が入力されると、実モータ12を模擬する解析プログラムを演算回路42(図1参照)に実行させることにより、前記入力された電流信号によって表される仮想電流(仮想3相電流)と同じ大きさを有する実電流(実3相電流)を実モータ12によって実現するためにその実モータ12に供給すべき実電圧(実3相電圧)が計算される。その計算された実電圧が、上述の指令電圧である。   When a current signal representing a command current is input to the virtual motor 60, the virtual motor 60 is represented by the input current signal by causing the arithmetic circuit 42 (see FIG. 1) to execute an analysis program that simulates the actual motor 12. The actual voltage (actual three-phase voltage) to be supplied to the real motor 12 in order to realize the real current (real three-phase current) having the same magnitude as the virtual current (virtual three-phase current) to be calculated by the real motor 12 is calculated Is done. The calculated actual voltage is the above-described command voltage.

その実モータ12の指令電圧は、仮想モータ60にとっての指令電圧でもあり、また、上述の、実モータ12の指令電流は、仮想モータ60にとっての指令電流でもある。よって、結局、仮想モータ計算部50は、実モータ12と仮想モータ60との共通の指令電流から、それら実モータ12と仮想モータ60とに共通の指令電圧を計算することになる。   The command voltage of the real motor 12 is also a command voltage for the virtual motor 60, and the command current of the real motor 12 described above is also a command current for the virtual motor 60. Therefore, eventually, the virtual motor calculation unit 50 calculates a command voltage common to the real motor 12 and the virtual motor 60 from a command current common to the real motor 12 and the virtual motor 60.

前記「背景技術」の欄において詳述したように、従来の技術では、仮想モータ60は、実モータ12や、その実モータ12を制御する実コントローラについての試験が終了するまで、実モータ12を代替するものとして試験機において使用される。そして、それら実モータ12や実コントローラが完成する(仕様が確定する)と、今度は、実モータ12が、仮想モータ60を代替するものとして実機に搭載される。このように、従来の技術では、試験機においても実機においても、仮想モータ60が実モータ12と一緒に搭載されるとともに一緒に作動させられることはなかった。   As described in detail in the section “Background Art”, in the conventional technique, the virtual motor 60 replaces the real motor 12 until the test on the real motor 12 and the real controller that controls the real motor 12 is completed. Used in testing machines. Then, when the real motor 12 and the real controller are completed (specifications are determined), the real motor 12 is now mounted on the real machine as a substitute for the virtual motor 60. As described above, in the conventional technology, the virtual motor 60 is not mounted and operated together with the real motor 12 in both the test machine and the real machine.

これに対し、本実施形態においては、試験機であるか実機であるかを問わず、仮想モータ60が実モータ12と一緒に搭載されるとともに一緒に作動させられ、それにより、仮想モータ60を用いて実モータ12を制御したり、実モータ12を用いて仮想モータ60をティーチングすることが可能である。   On the other hand, in the present embodiment, regardless of whether it is a test machine or a real machine, the virtual motor 60 is mounted together with the real motor 12 and is operated together. It is possible to control the real motor 12 using the teaching method, or to teach the virtual motor 60 using the real motor 12.

仮想モータ計算部50は、実モータ12の停止中(実モータ12に入力される制御信号が時間的に変化しないために、実モータ12への電気エネルギーの供給が不要である場合)であっても、作動し続ける。   The virtual motor calculation unit 50 is in a state where the actual motor 12 is stopped (in the case where the supply of electric energy to the actual motor 12 is unnecessary because the control signal input to the actual motor 12 does not change with time). Will continue to work.

本実施形態においては、システム11のうち、図1に示す仮想モータ計算部50(プロセッサ40によって実現される)を構成する部分が、モータ制御装置10を構成し、図3に示す仮想モータ計算部50のうち、仮想モータ60を除く部分が、モータ制御装置10のうちの「制御部」を構成している。   In the present embodiment, the portion of the system 11 that constitutes the virtual motor calculation unit 50 (implemented by the processor 40) shown in FIG. 1 constitutes the motor control device 10, and the virtual motor calculation unit shown in FIG. 50, a portion excluding the virtual motor 60 constitutes a “control unit” of the motor control device 10.

ここで、一般的なモータの入出力特性を説明するに、図4に示すように、3相巻線のモータの入出力特性は、一般に、電圧方程式(電圧電流方程式)によって近似的に記述できることが既に知られている。この事実によれば、その電圧方程式を用いることにより、各相ごとの相電流を表すモータ電流ベクトルi(=[iu,iv,iw])から、各相ごとの端子電圧を表すモータ電圧ベクトルv(=[vu,vv,vw])を計算することができる。   Here, the input / output characteristics of a general motor will be described. As shown in FIG. 4, the input / output characteristics of a three-phase winding motor can generally be described approximately by a voltage equation (voltage-current equation). Is already known. According to this fact, by using the voltage equation, a motor voltage vector v representing a terminal voltage for each phase is obtained from a motor current vector i (= [iu, iv, iw]) representing a phase current for each phase. (= [Vu, vv, vw]) can be calculated.

図4に示す電圧方程式中の各種記号の定義を説明するに、「Ra」は、モータの巻線抵抗を表し、また、「ψ」は、モータの鎖交磁束ベクトルψ(=[ψu,ψv,ψw])を表し、また、「t」は、時間を表している。   To describe the definitions of various symbols in the voltage equation shown in FIG. 4, “Ra” represents the winding resistance of the motor, and “ψ” represents the flux linkage vector ψ (= [ψu, ψv) of the motor. , Ψw]), and “t” represents time.

図4に示すように、モータの鎖交磁束ベクトルψは、相電流による鎖交磁束と、電機子鎖交磁束との和に等しい。相電流による鎖交磁束は、「L(自己インダクタンス)」と「M(相互インダクタンス)」を各要素とするインダクタンス行列を用いて表現され、また、電機子鎖交磁束は、ベクトルφ(=[φu,φv,φw])として表現される。インダクタンス行列は、各要素L,Mが、モータの電流と角度(位置、位相)との少なくとも一方に依存するテーブルとして表現され、また、電機子鎖交磁束ベクトルφも、各要素が、モータの電流と角度(位置、位相)との少なくとも一方に依存するテーブルとして表現される。それらテーブルにより、前記電圧方程式と協働して、モータの非線形特性を、モータの駆動周波数全域にわたって表現することができる。   As shown in FIG. 4, the linkage flux vector ψ of the motor is equal to the sum of the linkage flux due to the phase current and the armature linkage flux. The interlinkage magnetic flux due to the phase current is expressed using an inductance matrix having “L (self-inductance)” and “M (mutual inductance)” as elements, and the armature interlinkage magnetic flux is represented by the vector φ (= [ φu, φv, φw]). The inductance matrix is expressed as a table in which each element L, M depends on at least one of the motor current and angle (position, phase), and the armature flux linkage vector φ It is expressed as a table that depends on at least one of current and angle (position, phase). With these tables, the non-linear characteristics of the motor can be expressed over the entire driving frequency of the motor in cooperation with the voltage equation.

したがって、図4に示す電圧方程式によって表現される非線形モータモデルを使用すれば、モータの入出力特性が非線形であっても、モータの駆動周波数全域を複数の帯域に分割して各帯域ごとに異なる線形モータモデルを使用することなく、モータの駆動周波数全域を実質的に漏れなくカバーする非線形モータ特性を単一のモデルで精度よく表現することが可能となる。   Therefore, if the nonlinear motor model expressed by the voltage equation shown in FIG. 4 is used, even if the input / output characteristics of the motor are nonlinear, the entire driving frequency of the motor is divided into a plurality of bands and is different for each band. Without using a linear motor model, it is possible to accurately represent a nonlinear motor characteristic that covers the entire drive frequency range of the motor substantially without omission with a single model.

図4に示す電圧方程式は、実モータ12についても成立し、よって、仮想モータ60は、その電圧方程式を用いることにより、図3に示すように、仮想モータ60の各相ごとの相電流を表す仮想モータ電流ベクトルI*(=[Iu*,Iv*,Iw*](仮想3相指令電流信号によって表される)であって、図4に示すモータ電流ベクトルi(=[iu,iv,iw])に相当する)から、仮想モータ60の各相ごとの端子電圧を表す仮想モータ電圧ベクトルV*(=[Vu*,Vv*,Vw*](仮想3相指令電圧信号によって表される)であって、図4に示すモータ電圧ベクトルv(=[vu,vv,vw]に相当する)を計算する。   The voltage equation shown in FIG. 4 is also true for the real motor 12, and therefore the virtual motor 60 represents the phase current for each phase of the virtual motor 60 as shown in FIG. 3 by using the voltage equation. A virtual motor current vector I * (= [Iu *, Iv *, Iw *] (represented by a virtual three-phase command current signal), which is a motor current vector i (= [iu, iv, iw] shown in FIG. ))), A virtual motor voltage vector V * (= [Vu *, Vv *, Vw *] representing a terminal voltage for each phase of the virtual motor 60 (represented by a virtual three-phase command voltage signal). In this case, the motor voltage vector v (corresponding to [vu, vv, vw]) shown in FIG. 4 is calculated.

したがって、本実施形態によれば、仮想モータ60が、図4に示す電圧方程式によって表現される非線形モータモデルを使用して実モータ12の作動を模擬するため、入出力特性が非線形である実モータ12の駆動周波数全域にわたり、実モータ12の作動を精度よく模擬することが可能となる。   Therefore, according to the present embodiment, the virtual motor 60 simulates the operation of the real motor 12 using the non-linear motor model expressed by the voltage equation shown in FIG. It is possible to accurately simulate the operation of the actual motor 12 over the entire 12 drive frequencies.

図4に示す電圧方程式は、実モータ12につき、電流から電圧を計算するために使用することも、電圧から電流を計算するために使用することも可能である。前者の計算は、実モータ12において電圧から電流が発生するという現実の物理的現象の時間的進行方向とは逆向きの計算であるため、逆モデル計算と称することができるのに対し、後者の計算は、上述の現実の物理的現象の時間的進行方向と同じ向きの計算であるため、順モデル計算と称することができる。本実施形態においては、それら2種類の計算のうち、逆モデル計算が採用されている。   The voltage equation shown in FIG. 4 can be used to calculate the voltage from the current for the real motor 12 or can be used to calculate the current from the voltage. The former calculation is a calculation opposite to the temporal direction of the actual physical phenomenon in which current is generated from the voltage in the actual motor 12, and can be referred to as an inverse model calculation. Since the calculation is a calculation in the same direction as the temporal direction of the actual physical phenomenon described above, it can be referred to as a forward model calculation. In the present embodiment, the inverse model calculation is adopted among these two types of calculations.

実モータ12は、前記ロータを含む可動部材が質量(イナーシャ)や抵抗を有するなどの理由により、応答遅れを有するが、仮想モータ60は、応答遅れを実質的に有しない。その結果、実モータ12に指令電圧が入力されるタイミングと同じタイミングで仮想モータ60に指令電流が入力されると、指令電圧に対して実モータ12の出力電流(現実の物理量)が応答するタイミングより早いタイミングで、仮想モータ60の出力電圧(電圧の計算値)が応答する。その結果、各回の計算サイクル(図5参照)内において、実モータ12に入力すべき指令電圧が、その指令電圧を実モータ12に入力すべきタイミングより早いタイミングで計算されることが保証されるように仮想モータ計算部50を設計することが容易となる。   The actual motor 12 has a response delay because the movable member including the rotor has a mass (inertia) or resistance, but the virtual motor 60 has substantially no response delay. As a result, when the command current is input to the virtual motor 60 at the same timing as the command voltage is input to the real motor 12, the output current (actual physical quantity) of the real motor 12 responds to the command voltage. The output voltage (calculated value of the voltage) of the virtual motor 60 responds at an earlier timing. As a result, within each calculation cycle (see FIG. 5), it is guaranteed that the command voltage to be input to the actual motor 12 is calculated at a timing earlier than the timing at which the command voltage is to be input to the actual motor 12. Thus, it becomes easy to design the virtual motor calculation unit 50.

図3に示すように、仮想モータ計算部50は、前記目標信号と、実モータ状態検出部30から出力された実モータ状態信号(例えば、実モータ位置θmを表す信号)とに基づき、仮想モータ60を制御することにより(すなわち、前記逆モデル計算を行うことにより)、複数の制御信号(前述のゲート信号Gu,Gv,Gw,Gx,Gy,Gw)を生成する。仮想モータ計算部50は、それら生成された複数の制御信号を、実インバータ/パワーアンプ14に出力し、それにより、実モータ12を制御する。   As illustrated in FIG. 3, the virtual motor calculation unit 50 generates a virtual motor based on the target signal and a real motor state signal (for example, a signal representing the real motor position θm) output from the real motor state detection unit 30. By controlling 60 (that is, by performing the inverse model calculation), a plurality of control signals (the aforementioned gate signals Gu, Gv, Gw, Gx, Gy, Gw) are generated. The virtual motor calculation unit 50 outputs the generated plurality of control signals to the real inverter / power amplifier 14, thereby controlling the real motor 12.

具体的には、仮想モータ計算部50は、前記目標信号によって表される制御目標値に基づき、かつ、仮想モータ60の仮想作動位置(仮想可動部材としての仮想ロータの作動位置)が実モータ12の実作動位置(実可動部材としての実ロータの実作動位置)に一致すると仮定して、実モータ12と仮想モータ60とに共通の指令電圧を前記逆モデル計算によって決定する。これにより、実モータ12と仮想モータ60とが、一緒に、かつ、ロータ位置に関して互いに実質的に同期するように、駆動されることになる。   Specifically, the virtual motor calculation unit 50 is based on the control target value represented by the target signal, and the virtual operating position of the virtual motor 60 (the operating position of the virtual rotor as a virtual movable member) is the real motor 12. The command voltage common to the real motor 12 and the virtual motor 60 is determined by the inverse model calculation on the assumption that it matches the actual operation position (actual operation position of the actual rotor as the actual movable member). Thereby, the real motor 12 and the virtual motor 60 are driven together and substantially synchronized with each other with respect to the rotor position.

仮想モータ計算部50のより具体的な構成については、後に図3を参照することにより、説明するが、それに先立ち、図5に示すタイミングチャートを参照することにより、この仮想モータ計算部50の作動の一例を詳細に説明する。   A more specific configuration of the virtual motor calculation unit 50 will be described later with reference to FIG. 3, but prior to that, the operation of the virtual motor calculation unit 50 will be described with reference to the timing chart shown in FIG. An example will be described in detail.

仮想モータ計算部50の全体シーケンスを表す図5(a)に例示するように、制御目標値Tは、仮想モータ計算部50に入力周期Tin(例えば、数10μsec)で反復的に入力される。仮想モータ計算部50は、1サイクル分の計算を入力周期Tinより短い仮想モータ計算周期Tv(例えば、1μsec)で反復的に行い、それにより、制御目標値Tの1回の入力サイクルの間、複数サイクル分の計算を行う。本実施形態においては、入力周期Tinが、仮想モータ計算周期Tvより長い長さを有するように設定されているが、これに代えて、仮想モータ計算周期Tvと実質的に同じ長さを有するように設定することが可能である。 As illustrated in FIG. 5A representing the entire sequence of the virtual motor calculation unit 50, the control target value T 0 is repeatedly input to the virtual motor calculation unit 50 with an input cycle Tin (for example, several tens of μsec). . The virtual motor calculation unit 50 repeatedly performs the calculation for one cycle at a virtual motor calculation period Tv (for example, 1 μsec) shorter than the input period Tin, and thereby, during one input cycle of the control target value T 0. Calculate for multiple cycles. In this embodiment, the input cycle Tin is set to have a length longer than the virtual motor calculation cycle Tv. Instead, the input cycle Tin has substantially the same length as the virtual motor calculation cycle Tv. Can be set.

ここに、「制御目標値T」は、例えば、実モータ12からの出力に関連する物理量の指令値、例えば、実モータ12の前記ロータの位置に関する物理量(例えば、位置、速度、加速度)の指令値や、実モータ12の前記ロータに作用する力に関する物理量(例えば、トルク、軸力)の指令値としたり、実モータ12への入力に関連する物理量の指令値、例えば、3相指令電流信号Iu*,Iv*,Iw*や、dq軸指令電流信号Id*,Iq*としたり、それら複数種類の指令値からの任意の組合せとすることが可能である。 Here, the “control target value T 0 ” is, for example, a command value of a physical quantity related to the output from the real motor 12, for example, a physical quantity (eg, position, speed, acceleration) related to the position of the rotor of the real motor 12. A command value or a command value of a physical quantity (for example, torque, axial force) related to the force acting on the rotor of the actual motor 12, or a command value of a physical quantity related to an input to the actual motor 12, such as a three-phase command current It is possible to use signals Iu *, Iv *, Iw *, dq-axis command current signals Id *, Iq *, or any combination of these plural types of command values.

仮想モータ計算部50の各回の計算サイクル内の処理のシーケンスを表す図5(b)に例示するように、仮想モータ計算部50は、1サイクル分の計算を仮想モータ計算周期Tvで反復的に行い、各回の計算サイクルにおいては、制御目標値T0(i)と、実モータ12の実モータ位置θm(t)とに基づき、前記制御信号Gu−Gzを決定し、その決定された制御信号Gu−Gzを実インバータ/パワーアンプ14に出力し、それにより、実モータ12を制御する。   As illustrated in FIG. 5B, which represents a processing sequence in each calculation cycle of the virtual motor calculation unit 50, the virtual motor calculation unit 50 repeatedly performs one cycle of calculation in the virtual motor calculation cycle Tv. In each calculation cycle, the control signal Gu-Gz is determined based on the control target value T0 (i) and the actual motor position θm (t) of the actual motor 12, and the determined control signal Gu -Gz is output to the real inverter / power amplifier 14, thereby controlling the real motor 12.

制御目標値T(i)は、入力周期Tinを有する入力サイクルごとに、例えば外部装置から、入力されるのに対し、実モータ位置θm(t)は、仮想モータ計算周期Tvを有する計算サイクルごとに、実モータ状態検出部30から取り込まれる。制御目標値T(i)は、入力サイクルごとに入力されると、メモリに一時的に保存される。同じ入力サイクルに属する複数回の計算サイクルについては、同じ制御目標値T(i)が、各回の計算サイクルごとに、前記メモリから仮想モータ計算部50に取り込まれることになる。 The control target value T 0 (i) is input for each input cycle having an input cycle Tin, for example, from an external device, whereas the actual motor position θm (t) is a calculation cycle having a virtual motor calculation cycle Tv. Every time, it is taken in from the actual motor state detection unit 30. When the control target value T 0 (i) is input every input cycle, it is temporarily stored in the memory. For a plurality of calculation cycles belonging to the same input cycle, the same control target value T 0 (i) is fetched from the memory into the virtual motor calculation unit 50 for each calculation cycle.

各回の計算サイクルにおける複数の処理のシーケンスをより具体的に説明するに、図5(b)に例示するように、仮想モータ計算部50は、各回の計算サイクルにおいて、まず、制御目標値T(t)と、実モータ位置θm(t)とを取り込む。この処理を、図5(b)においては、「θm(t)入力」で表す。 In order to describe the sequence of a plurality of processes in each calculation cycle more specifically, as illustrated in FIG. 5B, the virtual motor calculation unit 50 first starts the control target value T 0 in each calculation cycle. (t) and the actual motor position θm (t) are captured. This process is represented by “θm (t) input” in FIG.

次に、仮想モータ計算部50は、状態量の変換を行う。具体的には、仮想モータ計算部50は、取り込まれた制御目標値T(t)を後述の仮想dq軸指令電流信号(前記(2)項における「目標電流信号」の一例)に変換する第1変換と、その仮想dq軸指令電流信号を、実モータ位置θm(t)のもと、仮想3相指令電流信号(前記(1)および(2)項における「仮想電流信号」の一例)に変換する第2変換とを行う。この処理を、図5(b)においては、「変換」で表す。 Next, the virtual motor calculation unit 50 performs state quantity conversion. Specifically, the virtual motor calculation unit 50 converts the fetched control target value T 0 (t) into a virtual dq axis command current signal (an example of “target current signal” in the item (2)) described later. The first conversion and the virtual dq axis command current signal are converted into a virtual three-phase command current signal based on the actual motor position θm (t) (an example of the “virtual current signal” in the above items (1) and (2)). The second conversion to be converted to is performed. This process is represented by “conversion” in FIG.

その後、仮想モータ計算部50は、前記仮想3相指令電流信号に基づいて前記逆モデル計算を行い、それにより、前記仮想3相指令電流信号に対応する仮想3相指令電圧信号(前記(1)項における「仮想電圧信号」の一例)を決定し、その決定された仮想3相指令電圧信号を前記制御信号Gu−Gzに変換する第3変換を行う。この処理を、図5(b)においては、「逆モデル計算」で表す。   Thereafter, the virtual motor calculation unit 50 performs the inverse model calculation based on the virtual three-phase command current signal, whereby a virtual three-phase command voltage signal ((1) described above) corresponding to the virtual three-phase command current signal. (Example of “virtual voltage signal” in the term) is determined, and a third conversion for converting the determined virtual three-phase command voltage signal into the control signal Gu-Gz is performed. This process is represented by “inverse model calculation” in FIG.

続いて、仮想モータ計算部50は、その取得された制御信号Gu−Gzを実インバータ/パワーアンプ14に出力し、それにより、実モータ12を制御する。この処理を、図5(b)においては、「Gu〜Gz出力」で表す。各回の計算サイクルにおいて、仮想モータ60に仮想3相指令電流信号が1回しか入力されないため、仮想モータ60は、1回しか作動しない。   Subsequently, the virtual motor calculation unit 50 outputs the acquired control signal Gu-Gz to the real inverter / power amplifier 14, thereby controlling the real motor 12. This process is represented by “Gu to Gz output” in FIG. In each calculation cycle, since the virtual three-phase command current signal is input to the virtual motor 60 only once, the virtual motor 60 operates only once.

なお、図5(b)(図8も同様)においては、制御信号Gu−Gzが実インバータ/パワーアンプ14に供給された後、その制御信号Gu−Gzが属する回の計算サイクルが終了するタイミングと同じタイミングで、実モータ位置θm(t)がθm(t+1)(=θm(t)+Δθ)に変化することが図示されている。しかし、これは、説明のための一例にすぎず、実際には、前記タイミングより早いか遅いタイミングで、実モータ位置θm(t)がθm(t+1)に変化する。   In FIG. 5B (same in FIG. 8), after the control signal Gu-Gz is supplied to the real inverter / power amplifier 14, the timing at which the calculation cycle to which the control signal Gu-Gz belongs ends. It is illustrated that the actual motor position θm (t) changes to θm (t + 1) (= θm (t) + Δθ) at the same timing. However, this is only an example for explanation, and actually, the actual motor position θm (t) changes to θm (t + 1) at a timing earlier or later than the timing.

次に、図3を参照することにより、仮想モータ計算部50の構成の一例を具体的に説明する。ただし、同じ記号が、単独で使用される場合には、仮想モータ60についての実際値または検出値を意味する一方、「*」と組み合わせて使用される場合には、仮想モータ60についての指令値を意味する。   Next, an example of the configuration of the virtual motor calculation unit 50 will be specifically described with reference to FIG. However, when the same symbol is used alone, it means an actual value or a detected value for the virtual motor 60, while when used in combination with “*”, a command value for the virtual motor 60 is used. Means.

仮想モータ計算部50は、dq座標系(回転直交2軸dq座標系)上において磁束−トルク制御を行う。ここに、「d」は、仮想モータ60の仮想磁束を表し、また、「q」は、仮想モータ60の仮想トルクを表している。   The virtual motor calculation unit 50 performs magnetic flux-torque control on the dq coordinate system (rotation orthogonal two-axis dq coordinate system). Here, “d” represents the virtual magnetic flux of the virtual motor 60, and “q” represents the virtual torque of the virtual motor 60.

そのような制御を実現するために、仮想モータ計算部50は、前記目標信号を仮想dq軸指令電流信号Id*,Iq*(仮想d軸指令電流信号Id*および仮想q軸指令電流信号Iq*)に変換する目標信号変換器66と、ベクトル制御(前記ロータの位置情報を用いて、軸電流をdq座標系から3相座標系へ座標変換し、前記ステータの相電流を制御する)により、それら仮想dq軸指令電流信号Id*,Iq*を仮想3相指令電流信号Iu*,Iv*,Iw*に変換するdq/UVW座標変換器68とを備えている。   In order to realize such control, the virtual motor calculation unit 50 uses the target signal as a virtual dq-axis command current signal Id *, Iq * (virtual d-axis command current signal Id * and virtual q-axis command current signal Iq *. ) And a vector control (using the position information of the rotor, the axis current is converted from a dq coordinate system to a three-phase coordinate system to control the stator phase current). A dq / UVW coordinate converter 68 that converts these virtual dq-axis command current signals Id * and Iq * into virtual three-phase command current signals Iu *, Iv *, and Iw * is provided.

仮想モータ60を実モータ12から切り離して使用する従来の技術では、dq−UVW座標変換器68は、仮想モータ60の仮想モータ位置θmのもとで、仮想dq軸指令電流信号Id*,Iq*を仮想3相指令電流信号Iu*,Iv*,Iw*に変換するように設計されるのが通常である。これに対し、本実施形態においては、dq−UVW座標変換器68が、仮想モータ位置θmに代えて実モータ位置θmを用いる。   In the conventional technique that uses the virtual motor 60 separately from the real motor 12, the dq-UVW coordinate converter 68 uses the virtual dq axis command current signals Id * and Iq * under the virtual motor position θm of the virtual motor 60. Is normally designed to be converted into a virtual three-phase command current signal Iu *, Iv *, Iw *. On the other hand, in this embodiment, the dq-UVW coordinate converter 68 uses the actual motor position θm instead of the virtual motor position θm.

その結果、本実施形態によれば、仮想3相指令電流信号Iu*,Iv*,Iw*が、仮想モータ60の仮想モータ位置θと、実モータ12の実モータ位置θmとが互いに一致する状態で取得されることになる。   As a result, according to the present embodiment, the virtual three-phase command current signals Iu *, Iv *, Iw * are in a state where the virtual motor position θ of the virtual motor 60 and the real motor position θm of the real motor 12 coincide with each other. Will be obtained at.

しかし、仮想モータ60が実モータ12の入出力特性を十分に正確に再現するように教示される場合には、仮想モータ位置θと実モータ位置θmとが互いに十分に一致することになる。この場合には、dq−UVW座標変換器68が実モータ位置θmに代えて仮想モータθを参照したとしても、仮想3相指令電圧信号Vu*,Vv*,Vw*が、仮想モータ60の仮想モータ位置θと、実モータ12の実モータ位置θmとが互いに一致する状態で取得されることになる。   However, when the virtual motor 60 is taught to reproduce the input / output characteristics of the real motor 12 sufficiently accurately, the virtual motor position θ and the real motor position θm are sufficiently coincident with each other. In this case, even if the dq-UVW coordinate converter 68 refers to the virtual motor θ instead of the actual motor position θm, the virtual three-phase command voltage signals Vu *, Vv *, Vw * are the virtual motor 60 virtual. The motor position θ and the actual motor position θm of the actual motor 12 are acquired in a state where they coincide with each other.

仮想モータ計算部50においては、仮想3相指令電流信号Iu*,Iv*,Iw*が仮想モータ60に入力され、その後、仮想モータ60は、前記逆モデル計算により、それら仮想3相指令電流信号Iu*,Iv*,Iw*によって表される電流を実モータ12において実現するためにその実モータ12に供給すべき電圧を表す仮想3相指令電圧信号Vu*,Vv*,Vw*を出力する。   In the virtual motor calculation unit 50, virtual three-phase command current signals Iu *, Iv *, Iw * are input to the virtual motor 60, and then the virtual motor 60 performs the virtual three-phase command current signal by the inverse model calculation. In order to realize the current represented by Iu *, Iv *, Iw * in the real motor 12, virtual three-phase command voltage signals Vu *, Vv *, Vw * representing the voltage to be supplied to the real motor 12 are output.

仮想モータ計算部50は、さらに、その出力された仮想3相指令電圧信号Vu*,Vv*,Vw*を、各々PWM信号という形態を有する複数の制御信号Gu,Gv,Gw,Gx,Gy,Gzに変換するPWM信号発生器78を備えている。   The virtual motor calculation unit 50 further converts the output virtual three-phase command voltage signals Vu *, Vv *, and Vw * into a plurality of control signals Gu, Gv, Gw, Gx, Gy, A PWM signal generator 78 for converting to Gz is provided.

図6には、モータ制御装置10の作動の一例がフローチャートで表されている。このフローチャートは、CPU44によって実行されるステップS1およびS2と、演算回路42によって反復的に実行されるステップS3−S9とを表している。それらステップS3−S11は、1回ずつ実行されることにより、一回の計算サイクルを達成する。   FIG. 6 is a flowchart showing an example of the operation of the motor control device 10. This flowchart represents steps S1 and S2 executed by the CPU 44 and steps S3-S9 executed repeatedly by the arithmetic circuit 42. These steps S3-S11 are executed once to achieve one calculation cycle.

まず、ステップS1において、初期化が行われる。具体的には、例えば、実モータ状態検出部30により、初期の実モータ位置θinitが取得され、同じ位置が、仮想モータ60の初期の仮想モータ位置θinitとされる。   First, in step S1, initialization is performed. Specifically, for example, the actual motor state detection unit 30 acquires the initial actual motor position θinit, and the same position is set as the initial virtual motor position θinit of the virtual motor 60.

次に、入力周期Tin(例えば、数10μsec)が経過するごとに割り込みが発生してステップS2が実行される。このステップS2においては、今回の制御目標値Tが入力される。 Next, every time an input cycle Tin (for example, several tens of microseconds) elapses, an interrupt is generated and step S2 is executed. In step S2, the control target value T 0 the current is input.

続いて、ステップS3において、データ入力が行われ、具体的には、実モータ状態検出部30から実モータ位置θmが入力される。   Subsequently, in step S <b> 3, data input is performed. Specifically, the actual motor position θm is input from the actual motor state detection unit 30.

その後、ステップS4において、目標信号変換器66により、制御目標値Tを表す目標信号が仮想dq軸指令電流信号Id*,Iq*に変換される。これにより、前記第1変換が行われる。続いて、ステップS5において、dq/UVW座標変換器68により、その仮想dq軸指令電流信号Id*,Iq*が、実モータ12の実モータ回転角θmのもとで、仮想3相指令電流信号Iu*,Iv*,Iw*に変換される。これにより、前記第2変換が行われる。 Thereafter, in step S4, the target signal converter 66, the target signal representing the control target value T 0 is a virtual dq-axis command current signal Id *, is converted to Iq *. Thereby, the first conversion is performed. Subsequently, in step S5, the virtual dq axis command current signal Id *, Iq * is converted into a virtual three-phase command current signal by the dq / UVW coordinate converter 68 under the actual motor rotation angle θm of the real motor 12. Converted to Iu *, Iv *, and Iw *. Thereby, the second conversion is performed.

その後、ステップS6において、その仮想3相指令電流信号Iu*,Iv*,Iw*が仮想モータ60に入力され、それに応答して仮想モータ60から仮想3相指令電圧信号Vu*,Vv*,Vw*が出力される。これにより、前記逆モデル計算が行われる。続いて、ステップS7において、PWM信号発生器78により、仮想3相指令電圧信号Vu*,Vv*,Vw*がPWM信号Gu,Gv,Gw,Gx,Gy,Gzに変換される。これにより、前記第3変換が行われる。   Thereafter, in step S6, the virtual three-phase command current signals Iu *, Iv *, Iw * are input to the virtual motor 60, and in response to the virtual three-phase command voltage signals Vu *, Vv *, Vw from the virtual motor 60. * Is output. Thereby, the inverse model calculation is performed. Subsequently, in Step S7, the PWM signal generator 78 converts the virtual three-phase command voltage signals Vu *, Vv *, Vw * into PWM signals Gu, Gv, Gw, Gx, Gy, Gz. Thereby, the third conversion is performed.

その後、ステップS8において、そのようにして取得されたPWM信号Gu,Gv,Gw,Gx,Gy,Gzが実インバータ/パワーアンプ14に対して出力され、それにより、実モータ12が駆動される。   Thereafter, in step S8, the PWM signals Gu, Gv, Gw, Gx, Gy, and Gz acquired in this way are output to the real inverter / power amplifier 14, thereby driving the real motor 12.

続いて、ステップS9において、システム11の主電源(図示しない)がオフにされたか否かが判定される。その主電源が未だオンである場合には、その判定がNOとなり、次回の計算サイクルでの計算のために、ステップS2に戻る。これに対し、主電源がオフにされた場合には、ステップS9の判定がYESとなり、以上で、モータ制御装置10の作動が終了する。   Subsequently, in step S9, it is determined whether or not a main power source (not shown) of the system 11 is turned off. If the main power supply is still on, the determination is no and the process returns to step S2 for calculation in the next calculation cycle. On the other hand, when the main power supply is turned off, the determination in step S9 is YES, and the operation of the motor control device 10 is thus completed.

以上の説明から明らかなように、本実施形態においては、仮想モータ計算部50が、目標信号に基づいて仮想モータ60を作動させることにより、その目標信号によって表される制御目標値を実モータ12が実現するためにその実モータ12に必要な制御信号をフィードフォワード制御で決定する。   As is apparent from the above description, in the present embodiment, the virtual motor calculation unit 50 operates the virtual motor 60 based on the target signal, so that the control target value represented by the target signal is set to the real motor 12. In order to realize this, a control signal necessary for the actual motor 12 is determined by feedforward control.

仮想モータ計算部50は、制御信号を決定するために実モータ位置θmを参照するが、これは、仮想モータ60の仮想モータ位置を実モータ位置θmに一致させ、それにより、仮想モータ60が実モータ12を模擬する精度を向上させるためである。   The virtual motor calculation unit 50 refers to the actual motor position θm in order to determine the control signal, which matches the virtual motor position of the virtual motor 60 with the actual motor position θm. This is to improve the accuracy of simulating the motor 12.

実モータ位置θmを参照するという処理が存在するという事実に注目すれば、仮想モータ計算部50が採用しているフィードフォワード制御がフィードバック要素を有するように解釈される余地がある。しかし、実モータ位置θmは、制御系においてフィードバック信号として用いられるのではなく、仮想モータ60のための前述のdq軸制御において座標変換のために用いられるに過ぎない。よって、仮想モータ計算部50が採用している制御は、前記処理の存在にもかかわらず依然としてフィードフォワード制御であると解釈するのが自然である。   If attention is paid to the fact that there is a process of referring to the actual motor position θm, there is room for the feedforward control adopted by the virtual motor calculation unit 50 to have a feedback element. However, the actual motor position θm is not used as a feedback signal in the control system, but only used for coordinate conversion in the dq axis control described above for the virtual motor 60. Therefore, it is natural to interpret that the control employed by the virtual motor calculation unit 50 is still feedforward control despite the existence of the processing.

<第2実施形態> Second Embodiment

次に、本発明の第2実施形態に従うモータ制御装置100を図7ないし図9を参照することにより説明する。ただし、本実施形態は、第1実施形態と共通する要素があるため、共通する要素については、同一の符号または名称を付して引用することにより、重複した説明を省略し、異なる要素についてのみ、詳細に説明する。   Next, a motor control device 100 according to a second embodiment of the present invention will be described with reference to FIGS. However, since this embodiment has elements common to the first embodiment, the common elements are referred to with the same reference numerals or names, thereby omitting redundant descriptions and only different elements. This will be described in detail.

図7に示すように、本実施形態に従うモータ制御装置100の仮想モータ計算部110は、位相遅れ補償を行うために、Δθ推定器120をさらに備えている。   As shown in FIG. 7, the virtual motor calculation unit 110 of the motor control device 100 according to the present embodiment further includes a Δθ estimator 120 in order to perform phase lag compensation.

図8(b)に例示するように、仮想モータ計算部110は、第1実施形態と同様に、仮想モータ計算周期Tvの長さを有する1計算サイクルの間に、次回の制御信号を決定するために仮想モータ60を作動させる。その間、実モータ位置θmが不変であれば、その次回の制御信号を決定するために用いられた実モータ位置θm(t)と、その決定された次回の制御信号が実モータ12に入力され始めるとき(または、その制御信号に対する実モータ12の応答が完了するとき)の実モータ位置θm(t+1)とが互いに一致するため、前記制御信号の誤差が発生しない。   As illustrated in FIG. 8B, the virtual motor calculation unit 110 determines the next control signal during one calculation cycle having the length of the virtual motor calculation period Tv, as in the first embodiment. Therefore, the virtual motor 60 is operated. Meanwhile, if the actual motor position θm remains unchanged, the actual motor position θm (t) used for determining the next control signal and the determined next control signal start to be input to the actual motor 12. Since the actual motor position θm (t + 1) coincides with each other (or when the response of the actual motor 12 to the control signal is completed), the error of the control signal does not occur.

しかし、その間、実モータ位置θmが変化すると、その次回の制御信号を決定するために用いられた実モータ位置θm(t)と、その決定された次回の制御信号が実モータ12に入力され始めるとき(または、その制御信号に対する実モータ12の応答が完了するとき)の実モータ位置θm(t+1)とが互いに一致しないため、前記制御信号の誤差が発生してしまう。   However, if the actual motor position θm changes during this period, the actual motor position θm (t) used to determine the next control signal and the determined next control signal start to be input to the actual motor 12. Since the actual motor position θm (t + 1) does not coincide with each other (or when the response of the actual motor 12 to the control signal is completed), an error of the control signal occurs.

そこで、本実施形態においては、Δθ推定器120が、実モータ位置θmが入力された時期と、次回の制御信号が実モータ12に入力され始める時期(または、その制御信号に対する実モータ12の応答が完了する時期)との間の期間に、実モータ位置θmが変化することが予想される変化量Δθを推定する。   Therefore, in the present embodiment, the Δθ estimator 120 is the time when the actual motor position θm is input and the time when the next control signal starts to be input to the actual motor 12 (or the response of the actual motor 12 to the control signal). The amount of change Δθ in which the actual motor position θm is expected to change during the period between the time when the motor is completed) is estimated.

その変化量Δθは、例えば、実モータ位置θmが入力される時期と、次回の制御信号が実モータ12に入力され始める時期(または、その制御信号に対する実モータ12の応答が完了する時期)との間の期間の長さは、仮想モータ計算周期Tvの長さを超えないし、それにほぼ近いという事実に着目し、仮想モータ計算周期Tvの長さと、実モータ12の角速度ωmとの積として推定したり、仮想モータ計算周期Tvの長さに応じて推定したり(仮想モータ計算周期Tvの長さが可変である場合には、それが長いほど、変化量Δθが大きい可能性が高いから)、実モータ12の角速度ωmに応じて推定する(実モータ12の角速度ωmが高速であるほど、変化量Δθが大きい可能性が高いから)ことが可能である。   The amount of change Δθ is, for example, the time when the actual motor position θm is input and the time when the next control signal starts to be input to the actual motor 12 (or the time when the response of the actual motor 12 to the control signal is completed). Paying attention to the fact that the length of the period between and the virtual motor calculation period Tv does not exceed or substantially approximate the length of the virtual motor calculation period Tv, it is estimated as the product of the length of the virtual motor calculation period Tv and the angular velocity ωm of the actual motor 12. Or estimated according to the length of the virtual motor calculation cycle Tv (if the length of the virtual motor calculation cycle Tv is variable, the longer it is, the more likely the variation Δθ is) It is possible to estimate according to the angular velocity ωm of the actual motor 12 (because the higher the angular velocity ωm of the actual motor 12 is, the higher the change amount Δθ is likely).

図7に示すように、仮想モータ計算部110は、Δθ推定器120が、上述のようにして、前記変化量Δθを取得すると、その変化量Δθを、同じ回の計算サイクルの当初において取得した実モータ位置θmに加算し、それにより、dq−UVW座標変換器68に入力されるモータ位置が、θm+Δθに等しくなり、結局、実モータ12の作動に追従するように補正される。   As illustrated in FIG. 7, when the Δθ estimator 120 acquires the change amount Δθ as described above, the virtual motor calculation unit 110 acquires the change amount Δθ at the beginning of the same calculation cycle. This is added to the actual motor position θm, so that the motor position input to the dq-UVW coordinate converter 68 becomes equal to θm + Δθ, and is eventually corrected to follow the operation of the actual motor 12.

なお、本実施形態においては、変化量Δθの今回値が実モータ位置θmの最新実際値に加算されることにより、その実モータ位置θmの最新実際値が補正されるが、その補正の仕方は、それに限定されない。   In this embodiment, the latest actual value of the actual motor position θm is corrected by adding the current value of the change amount Δθ to the latest actual value of the actual motor position θm. It is not limited to it.

例えば、変化量Δθの今回値を、その今回値より過去に取得された少なくとも1つの過去変化量Δθに基づき、例えば重み付き平均化などによって平滑化することにより、その変化量Δθの今回値を補正し、その補正された値に基づいて実モータ位置θmの最新実際値を補正することが可能である。   For example, by smoothing the current value of the change amount Δθ based on at least one past change amount Δθ acquired in the past from the current value, for example, by weighted averaging, the current value of the change amount Δθ is obtained. The latest actual value of the actual motor position θm can be corrected based on the corrected value.

図7に示すように、dq−UVW座標変換器68は、そのように補正された実モータ位置θmのもとで、仮想dq軸指令電流信号Id*,Iq*を仮想3相指令電流信号Iu*,Iv*,Iw*に変換し、その結果、それら仮想3相指令電流信号Iu*,Iv*,Iw*は、変化量Δθを見込んだ値として取得されることになる。これにより、前記制御信号が、実モータ位置θmの将来の変化を予測して決定されるため、前述の位相遅れ補償が別のフィードフォワード要素として前述の基本的なフィードフォワード制御に付加されることになる。   As shown in FIG. 7, the dq-UVW coordinate converter 68 converts the virtual dq axis command current signals Id * and Iq * to the virtual three-phase command current signal Iu under the actual motor position θm corrected as described above. As a result, the virtual three-phase command current signals Iu *, Iv *, and Iw * are acquired as values that allow for the variation Δθ. Thus, since the control signal is determined by predicting a future change in the actual motor position θm, the above-described phase delay compensation is added to the above-described basic feedforward control as another feedforward element. become.

図8(a)に例示するように、モータ制御装置100の全体シーケンスについては、第1実施形態と同様に、制御目標値Tが、仮想モータ計算部110に入力周期Tin(例えば、数10μsec)で反復的に入力される。 As illustrated in FIG. 8A, for the entire sequence of the motor control device 100, as in the first embodiment, the control target value T 0 is input to the virtual motor calculation unit 110 as an input cycle Tin (for example, several tens of μsec). ) Repeatedly input.

図8(b)に例示するように、仮想モータ計算部110は、1サイクル分の計算を入力周期Tinより短い仮想モータ計算周期Tv(例えば、1μsec)で反復的に行い、それにより、制御目標値Tの1回の入力サイクルの間、複数サイクル分の計算を行う。 As illustrated in FIG. 8B, the virtual motor calculation unit 110 repeatedly performs a calculation for one cycle at a virtual motor calculation cycle Tv (for example, 1 μsec) shorter than the input cycle Tin, thereby controlling the control target. During one input cycle of the value T 0 , calculations for a plurality of cycles are performed.

仮想モータ計算部110は、各回の計算サイクルにおいて、まず、制御目標値T(t)と、実モータ位置θm(t)とを取り込む。この処理を、図8(b)においては、「θm(t)入力」で表す。次に、仮想モータ計算部110は、その取り込まれた制御目標値T(t)を仮想dq軸指令電流信号に変換する。この処理を、図8(b)においては、「目標信号変換」で表す。 In each calculation cycle, the virtual motor calculation unit 110 first captures the control target value T 0 (t) and the actual motor position θm (t). This processing is represented by “θm (t) input” in FIG. Next, the virtual motor calculation unit 110 converts the fetched control target value T 0 (t) into a virtual dq axis command current signal. This process is represented by “target signal conversion” in FIG.

続いて、仮想モータ計算部110は、同じ回の計算サイクルにおいて、前記変化量Δθを推定する。この処理を、図8(b)においては、「Δθ推定」で表す。その後、仮想モータ計算部110は、その推定された変化量Δθに基づき、前記取り込まれた実モータ位置θm(t)を補正し、その補正されたを実モータ位置θm(t)のもと、仮想dq軸指令電流信号を仮想3相指令電流信号に変換する。この処理を、図8(b)においては、「座標変換」で表す。   Subsequently, the virtual motor calculation unit 110 estimates the change amount Δθ in the same calculation cycle. This process is represented by “Δθ estimation” in FIG. Thereafter, the virtual motor calculation unit 110 corrects the captured actual motor position θm (t) based on the estimated change amount Δθ, and the corrected motor motor is calculated based on the actual motor position θm (t). The virtual dq axis command current signal is converted into a virtual three-phase command current signal. This process is represented by “coordinate conversion” in FIG.

その後、仮想モータ計算部110は、前記仮想3相指令電流信号に基づいて前記逆モデル計算を行い、それにより、前記仮想3相指令電流信号に対応する仮想3相指令電圧信号を決定し、その決定された仮想3相指令電圧信号を前記制御信号Gu−Gzに変換する第3変換を行う。この処理を、図8(b)においては、「逆モデル計算」で表す。   Thereafter, the virtual motor calculation unit 110 performs the inverse model calculation based on the virtual three-phase command current signal, thereby determining a virtual three-phase command voltage signal corresponding to the virtual three-phase command current signal, A third conversion is performed to convert the determined virtual three-phase command voltage signal into the control signal Gu-Gz. This process is represented by “inverse model calculation” in FIG.

続いて、仮想モータ計算部110は、その取得された制御信号Gu−Gzを実インバータ/パワーアンプ14に出力し、それにより、実モータ12を制御する。この処理を、図8(b)においては、「Gu〜Gz出力」で表す。   Subsequently, the virtual motor calculation unit 110 outputs the acquired control signal Gu-Gz to the real inverter / power amplifier 14, thereby controlling the real motor 12. This process is represented by “Gu to Gz output” in FIG.

図9には、モータ制御装置100の作動の一例がフローチャートで表されている。このフローチャートは、図6に示すフローチャートであって第1実施形態に従うモータ制御装置10の作動の一例を表すものに対し、ステップS4とS5との間にステップS4aおよびS4bが追加されている点を除き、共通する。よって、それらステップS4aおよびS4bのみを説明し、他のステップS1−S9は、図6におけるステップS1−S9と共通するため、文章による説明を省略する。   FIG. 9 shows an example of the operation of the motor control device 100 in a flowchart. This flowchart is a flowchart shown in FIG. 6 and represents an example of the operation of the motor control device 10 according to the first embodiment, except that steps S4a and S4b are added between steps S4 and S5. Except common. Accordingly, only steps S4a and S4b will be described, and other steps S1-S9 are common to steps S1-S9 in FIG.

図9に示すように、ステップS4が終了すると、ステップS4aにおいて、Δθ推定器120により、前記変化量Δθが推定される。次に、ステップS4bにおいて、その推定された変化量Δθに基づき、前記取り込まれた実モータ位置θm(実モータ位置θmの最新検出値)が補正される。   As shown in FIG. 9, when step S4 is completed, the change amount Δθ is estimated by the Δθ estimator 120 in step S4a. Next, in step S4b, the captured actual motor position θm (the latest detected value of the actual motor position θm) is corrected based on the estimated change amount Δθ.

その後、ステップS5において、その補正されたを実モータ位置θm(t)のもと、仮想dq軸指令電流信号が仮想3相指令電流信号に変換される。   Thereafter, in step S5, the virtual dq-axis command current signal is converted into a virtual three-phase command current signal based on the corrected actual motor position θm (t).

<第3実施形態> <Third Embodiment>

次に、本発明の第3実施形態に従うモータ制御装置200を図10および図11を参照することにより説明する。ただし、本実施形態は、第1実施形態と共通する要素があるため、共通する要素については、同一の符号または名称を付して引用することにより、重複した説明を省略し、異なる要素についてのみ、詳細に説明する。   Next, a motor control device 200 according to a third embodiment of the present invention will be described with reference to FIGS. 10 and 11. However, since this embodiment has elements common to the first embodiment, the common elements are referred to with the same reference numerals or names, thereby omitting redundant descriptions and only different elements. This will be described in detail.

図10に示すように、本実施形態に従うモータ制御装置200においては、第1実施形態に従うモータ制御装置10に対し、モータ制御装置200の製造段階における実モータ12の実運転中か、またはモータ制御装置200の使用段階における実モータ12の実運転中に、実モータ12の作動状態量を用いて、仮想モータ60のモデル特性、すなわち、実モータ12における入力電圧と出力電流との関係である実入出力特性を模擬する仮想入出力特性をキャリブレートし、それにより、実モータ12に入力されるべき制御信号を最適化する仮想モータ・キャリブレーション部220が追加されている。   As shown in FIG. 10, in the motor control device 200 according to the present embodiment, the motor control device 10 according to the first embodiment is in the actual operation of the real motor 12 in the manufacturing stage of the motor control device 200 or the motor control. During actual operation of the actual motor 12 in the use stage of the apparatus 200, the actual motor 12 is used to determine the model characteristics of the virtual motor 60, that is, the relationship between the input voltage and the output current in the actual motor 12. A virtual motor calibration unit 220 that calibrates virtual input / output characteristics that simulate input / output characteristics and thereby optimizes a control signal to be input to the real motor 12 is added.

概略的に説明すれば、この仮想モータ・キャリブレーション部220においては、実モータ12の実3相電流信号によって表される実3相電流Iu,Iv,Iwと、その実3相電流Iu,Iv,Iwの検出タイミングと実質的に同じタイミングで仮想モータ60に入力されるべき仮想3相指令電流信号によって表される仮想3相電流Iu*,Iv*,Iw*との差に基づき、実3相電流Iu,Iv,Iwの次回値と仮想3相電流Iu*,Iv*,Iw*の次回値との差が減少するように、仮想モータ60のモデル特性が修正される。   In brief, in the virtual motor calibration unit 220, the real three-phase currents Iu, Iv, Iw represented by the real three-phase current signal of the real motor 12 and the real three-phase currents Iu, Iv, Based on the difference from the virtual three-phase currents Iu *, Iv *, Iw * represented by the virtual three-phase command current signal to be input to the virtual motor 60 at substantially the same timing as the detection timing of Iw, the actual three-phase The model characteristics of the virtual motor 60 are modified so that the difference between the next value of the currents Iu, Iv, Iw and the next value of the virtual three-phase currents Iu *, Iv *, Iw * is reduced.

この仮想モータ・キャリブレーション部220においては、実モータ12の実電流値の今回値であってその実モータ12の実入出力特性を反映したものの、制御目標値を反映した仮想電流値の今回値からの偏差に基づき、その偏差の次回値が減少するように、仮想モータ60の仮想入出力特性がキャリブレートされる。その結果、上述の仮想電流値の今回値に応答して仮想モータ60から出力されることとなる指令電圧信号の今回値であって実モータ12にその後入力されることとなる指令電圧を表すものが最適化される。   The virtual motor calibration unit 220 reflects the actual current value of the actual motor 12 and reflects the actual input / output characteristics of the actual motor 12, but from the actual value of the virtual current value that reflects the control target value. Based on the deviation, the virtual input / output characteristics of the virtual motor 60 are calibrated so that the next value of the deviation decreases. As a result, the current value of the command voltage signal that is output from the virtual motor 60 in response to the current value of the virtual current value described above, and represents the command voltage that is subsequently input to the real motor 12 Is optimized.

図1に示すモータ制御装置10と同様に、モータ制御装置200は、実モータ状態検出部30を備えている。その実モータ状態検出部30は、実モータ12の実モータ位置θmのみならず、実モータ電流Iu,Iv,Iw、実モータ速度ωm等、他の実モータ状態量を検出し、それを表す実モータ状態信号を出力する。   Similar to the motor control device 10 shown in FIG. 1, the motor control device 200 includes an actual motor state detection unit 30. The actual motor state detection unit 30 detects not only the actual motor position θm of the actual motor 12 but also other actual motor state quantities such as actual motor currents Iu, Iv, Iw, actual motor speed ωm, and the like. Output a status signal.

図10に示すように、モータ制御装置200は、仮想モータ計算部210を有し、その仮想モータ計算部210は、仮想モータ60を有し、さらに、比較部222およびモデル修正部224を有する。仮想モータ60は、演算回路42により、高速に、すなわち、短い周期で反復的に実行されるのに対し、比較部222およびモデル修正部224は、CPU44により、低速に、すなわち、長い周期で反復的に実行される。   As shown in FIG. 10, the motor control device 200 includes a virtual motor calculation unit 210, the virtual motor calculation unit 210 includes a virtual motor 60, and further includes a comparison unit 222 and a model correction unit 224. The virtual motor 60 is repeatedly executed by the arithmetic circuit 42 at high speed, that is, in a short cycle, whereas the comparison unit 222 and the model correction unit 224 are repeatedly executed by the CPU 44 at low speed, that is, in a long cycle. Is executed automatically.

図10に示すように、比較部222は、実モータ状態検出部30から出力された実モータ12の実3相電流Iu,Iv,Iwの今回値(最新値)と、座標変換器68から出力された仮想モータ60の仮想3相電流Iu*,Iv*,Iw*の今回値(最新値)とを互いに比較し、両者の差を電流誤差ΔI(ΔIu,ΔIv,ΔIw)として各相ごとに計算する。それら互いに比較されるべき実3相電流Iu,Iv,Iwの今回値と、仮想3相電流Iu*,Iv*,Iw*の今回値はいずれも、図5に示す同じ仮想モータ計算サイクル(周期Tv)内に取得される。   As illustrated in FIG. 10, the comparison unit 222 outputs the current values (latest values) of the actual three-phase currents Iu, Iv, and Iw of the actual motor 12 output from the actual motor state detection unit 30 and the coordinate converter 68. The current values (latest values) of the virtual three-phase currents Iu *, Iv *, and Iw * of the virtual motor 60 are compared with each other, and the difference between the two is determined as a current error ΔI (ΔIu, ΔIv, ΔIw) for each phase. calculate. The current values of the actual three-phase currents Iu, Iv, and Iw to be compared with each other and the current values of the virtual three-phase currents Iu *, Iv *, and Iw * are all the same virtual motor calculation cycle (period) shown in FIG. Within Tv).

具体的には、図5(b)に示すように、実3相電流Iu,Iv,Iwの今回値は、「θm(t)入力」で表される処理において取得され、一方、仮想3相電流Iu*,Iv*,Iw*の今回値は、「変換」で表される処理において取得される。よって、それら2つの今回値は、実質的に同じタイミングで取得されることになる。   Specifically, as shown in FIG. 5B, the current values of the actual three-phase currents Iu, Iv, and Iw are acquired in the process represented by “θm (t) input”, while the virtual three-phase currents The current values of the currents Iu *, Iv *, and Iw * are acquired in a process represented by “conversion”. Therefore, these two current values are acquired at substantially the same timing.

図10に示すように、モデル修正部224は、前記計算された電流誤差ΔI(ΔIu,ΔIv,ΔIw)に基づき、実3相電流Iu,Iv,Iwの次回値(次回の計算サイクルにおいて取得される実3相電流Iu,Iv,Iw)と仮想3相電流Iu*,Iv*,Iw*の次回値(次回の計算サイクルにおいて取得される仮想3相電流Iu*,Iv*,Iw*)との差ΔI(ΔIu,ΔIv,ΔIw)が減少するように、仮想モータ60の入出力特性を定義する前記モータモデル(図4参照)を修正する。   As shown in FIG. 10, the model correction unit 224 obtains the next value of the actual three-phase currents Iu, Iv, Iw (obtained in the next calculation cycle) based on the calculated current error ΔI (ΔIu, ΔIv, ΔIw). Real three-phase currents Iu, Iv, Iw) and next values of virtual three-phase currents Iu *, Iv *, Iw * (virtual three-phase currents Iu *, Iv *, Iw * acquired in the next calculation cycle) and The motor model (see FIG. 4) that defines the input / output characteristics of the virtual motor 60 is modified so that the difference ΔI (ΔIu, ΔIv, ΔIw) decreases.

モデル修正部224は、例えば、各相ごとに、前記計算された電流誤差ΔIに基づき、図4に示すインダクタンス行列のうち、該当する要素を、電流誤差ΔIと要素の値との間に予め定められた関係(例えば、経験的にまたは実験的に取得される)を表すテーブルに従って修正する。   For example, for each phase, the model correction unit 224 determines a corresponding element in the inductance matrix shown in FIG. 4 between the current error ΔI and the value of the element in advance based on the calculated current error ΔI. Modify according to a table that represents a given relationship (eg, obtained empirically or experimentally).

このモデル修正部224は、実モータ12を実際に駆動することにより、その実モータ12の入出力特性を仮想モータ60に教示するティーチングを実行し、その結果、実モータ12の作動状態と仮想モータ60の作動状態、すなわち、その仮想モータ60の計算結果とが互いに一致するようになる。   The model correction unit 224 performs teaching that teaches the virtual motor 60 the input / output characteristics of the real motor 12 by actually driving the real motor 12, and as a result, the operating state of the real motor 12 and the virtual motor 60. , That is, the calculation result of the virtual motor 60 coincides with each other.

図11には、仮想モータ・キャリブレーション部220を実現するための比較部222およびモデル修正部224の作動の一例がフローチャートで概念的に表されている。それら比較部222およびモデル修正部224は、CPU44により、誤差監視計算周期Tc(例えば、数10μsec)で反復的に実行される。   FIG. 11 conceptually shows an example of the operation of the comparison unit 222 and the model correction unit 224 for realizing the virtual motor calibration unit 220 in a flowchart. The comparison unit 222 and the model correction unit 224 are repeatedly executed by the CPU 44 at an error monitoring calculation period Tc (for example, several tens of μsec).

具体的には、まず、ステップS121において、仮想モータ60の仮想3相電流の、実モータ12の実3相電流からの誤差である電流誤差ΔIが、各相U,V,Wごとに計算され、それら3相のうちの少なくとも一つにつき、前記計算された電流誤差ΔIの絶対値が、予め定められたしきい値ΔIthより大きいか否かが判定される。今回は、いずれの相についても、電流誤差ΔIの計算値がしきい値ΔIth以下であると仮定すると、このステップS121の判定がNOとなり、同じステップS121が再度実行される。   Specifically, first, in step S121, a current error ΔI that is an error from the virtual three-phase current of the virtual motor 60 from the real three-phase current of the real motor 12 is calculated for each phase U, V, and W. Then, for at least one of the three phases, it is determined whether or not the calculated absolute value of the current error ΔI is greater than a predetermined threshold value ΔIth. This time, assuming that the calculated value of the current error ΔI is equal to or less than the threshold value ΔIth for any phase, the determination in step S121 is NO, and the same step S121 is executed again.

これに対し、今回は、少なくとも一つの相につき、電流誤差ΔIの計算値がしきい値ΔIthを超えていると仮定すると、このステップS121の判定がYESとなり、ステップS122に移行する。   On the other hand, this time, assuming that the calculated value of the current error ΔI exceeds the threshold value ΔIth for at least one phase, the determination in step S121 is YES, and the process proceeds to step S122.

このステップS122においては、比較部222が作動させられる。具体的には、電流誤差ΔIがいずれの相についても、しきい値ΔIthを超えないように前記モータモデルを修正すべき修正量が計算される。   In step S122, the comparison unit 222 is operated. Specifically, a correction amount for correcting the motor model is calculated so that the current error ΔI does not exceed the threshold value ΔIth for any phase.

その計算手法の一例においては、各相ごとの電流誤差ΔIが取り得る複数の離散的な代表値と、前記インダクタンス行列における複数の要素L,Mのうち、修正すべき要素と、その要素についての修正量との間において予め定められた関係(例えば、テーブルとして、プロセッサ40のためのメモリに予め記憶されている)に従い、電流誤差ΔIの実際の計算値に対応する修正量(もとの値に加算される値としたり、もとの値に乗算される係数とすることが可能である)が取得される。   In an example of the calculation method, among the plurality of discrete representative values that can be taken by the current error ΔI for each phase, the element to be corrected among the elements L and M in the inductance matrix, The correction amount (original value) corresponding to the actual calculated value of the current error ΔI according to a predetermined relationship with the correction amount (for example, stored in the memory for the processor 40 in advance as a table). Or a coefficient that is multiplied by the original value).

続いて、ステップS123において、モデル修正部224が作動させられる。具体的には、仮想モデル60の入出力特性を定義するモータモデルが、前記計算された修正量に基づいて修正される(例えば、前記インダクタンス行列の複数の要素に共通に取得される補正係数または要素ごとに取得される修正係数が、それら要素のもとの値に乗算される)。電流誤差ΔIの計算値に基づいて仮想モデル60のティーチングが行われるのであり、その結果、仮想モデル60の入出力特性が、実モータ12の入出力特性をより正確に反映することとなる。その後、ステップS121に戻る。   Subsequently, in step S123, the model correction unit 224 is operated. Specifically, the motor model that defines the input / output characteristics of the virtual model 60 is corrected based on the calculated correction amount (for example, a correction coefficient acquired in common with a plurality of elements of the inductance matrix or The correction factor obtained for each element is multiplied by the original value of those elements). Teaching of the virtual model 60 is performed based on the calculated value of the current error ΔI, and as a result, the input / output characteristics of the virtual model 60 more accurately reflect the input / output characteristics of the actual motor 12. Thereafter, the process returns to step S121.

それらステップS121からS123までのステップ群が、仮想モータ計算周期Tvより長い誤差監視周期(ティーチング周期でもある)Tcで反復的に実行される。   These steps S121 to S123 are repeatedly executed with an error monitoring period (which is also a teaching period) Tc longer than the virtual motor calculation period Tv.

以上の説明から明らかなように、本実施形態によれば、モータ制御装置200が試験的に稼動させられる状況(試験運転中)にあるか実際に稼動している状況(本格稼動中)にあるかを問わず、実モータ12の実際の入出力特性を反映するように、仮想モータ60の入出力特性すなわち前記モータモデルを個別にチューニングすることが可能である。   As is apparent from the above description, according to the present embodiment, the motor control device 200 is in a state of being operated on a trial basis (in a test operation) or in a state of being actually operated (in a full operation). However, the input / output characteristics of the virtual motor 60, that is, the motor model can be individually tuned to reflect the actual input / output characteristics of the actual motor 12.

したがって、本実施形態によれば、モータ制御装置200の製造段階にあっては、実モータ12の入出力特性の個体ばらつきなどを反映するように、仮想モータ60の入出力特性すなわちモータモデルを個別にチューニングすることが可能である。また、モータ制御装置200の出荷後であって、ユーザが実際にモータ制御装置200を使用する段階にあっては、実モータ12の入出力特性の経時劣化や、実モータ12の入出力特性の、外的環境(例えば、温度環境)に起因する変化などを反映するように、仮想モータ60の入出力特性すなわちモータモデルを個別に、かつ、本来の用途で使用しつつ、それと並行して、かつ、自動的にチューニングすることが可能である。   Therefore, according to the present embodiment, in the manufacturing stage of the motor control device 200, the input / output characteristics of the virtual motor 60, that is, the motor model is individually set so as to reflect individual variations in the input / output characteristics of the actual motor 12. It is possible to tune to. In addition, after the motor control device 200 is shipped, when the user actually uses the motor control device 200, the input / output characteristics of the actual motor 12 are deteriorated over time, the input / output characteristics of the actual motor 12 are reduced. In order to reflect changes caused by the external environment (for example, temperature environment), the input / output characteristics of the virtual motor 60, that is, the motor model is used individually and in an original application, And it is possible to tune automatically.

なお、本実施形態に従う仮想モータ・キャリブレーション部220は、第2実施形態に従うモータ制御装置100に追加することが可能である。   The virtual motor calibration unit 220 according to the present embodiment can be added to the motor control device 100 according to the second embodiment.

<第4実施形態> <Fourth embodiment>

次に、本発明の第4実施形態に従うモータ制御装置300を図12および図13を参照することにより説明する。ただし、本実施形態は、第1実施形態および第3実施形態と共通する要素があるため、共通する要素については、同一の符号または名称を付して引用することにより、重複した説明を省略し、異なる要素についてのみ、詳細に説明する。   Next, a motor control device 300 according to a fourth embodiment of the present invention will be described with reference to FIGS. However, since this embodiment has elements in common with the first embodiment and the third embodiment, the common elements are referred to with the same reference numerals or names, and redundant description is omitted. Only the different elements will be described in detail.

図12に示すように、本実施形態に従うモータ制御装置300においては、第1実施形態に従うモータ制御装置10に対し、モータ制御装置200の製造段階における実モータ12の実運転中か、またはモータ制御装置200の使用段階における実モータ12の実運転中に、実モータ12の作動状態量を用いて、仮想モータ60から出力された仮想3相指令電圧信号Vu*,Vv*,Vw*を補正し、それにより、実モータ12に入力されるべき制御信号Gu,Gv,Gw,Gx,Gy,Gzを最適化する仮想モータ出力値補正部320が追加されている。   As shown in FIG. 12, in the motor control device 300 according to the present embodiment, the motor control device 10 according to the first embodiment is in actual operation of the actual motor 12 in the manufacturing stage of the motor control device 200 or the motor control. During actual operation of the actual motor 12 in the use stage of the apparatus 200, the virtual three-phase command voltage signals Vu *, Vv *, Vw * output from the virtual motor 60 are corrected using the operation state amount of the actual motor 12. Thereby, a virtual motor output value correction unit 320 for optimizing the control signals Gu, Gv, Gw, Gx, Gy, Gz to be input to the real motor 12 is added.

この仮想モータ出力値補正部320においては、実モータ12の実電流値の今回値であってその実モータ12の実入出力特性を反映したものの、制御目標値を反映した仮想電流値の今回値からの偏差に基づき、その偏差の次回値が減少するように、上述の仮想電流値の今回値に応答して仮想モータ60から出力された指令電圧信号の今回値であって実モータ12にその後入力されることとなる指令電圧を表すものが補正される。   The virtual motor output value correction unit 320 reflects the actual current value of the actual motor 12 and reflects the actual input / output characteristics of the actual motor 12, but from the actual value of the virtual current value that reflects the control target value. The current value of the command voltage signal output from the virtual motor 60 in response to the current value of the virtual current value described above so that the next value of the deviation is reduced based on the deviation of The one representing the command voltage to be corrected is corrected.

概略的に説明すれば、この仮想モータ出力値補正部320においては、実モータ12の実3相電流Iu,Iv,Iwと、その実3相電流Iu,Iv,Iwの検出タイミングと実質的に同じタイミングで仮想モータ60に入力されるべき仮想3相指令電流信号によって表される仮想3相電流Iu*,Iv*,Iw*との差に基づき、実3相電流Iu,Iv,Iwの次回値と仮想3相電流Iu*,Iv*,Iw*の次回値との差が減少するように、仮想モータ60から出力された仮想3相指令電圧信号Vu*,Vv*,Vw*が補正される。   If it demonstrates roughly, in this virtual motor output value correction | amendment part 320, it will be substantially the same as the detection timing of real 3 phase current Iu, Iv, Iw of the real motor 12, and its real 3 phase current Iu, Iv, Iw. The next value of the actual three-phase currents Iu, Iv, Iw based on the difference from the virtual three-phase currents Iu *, Iv *, Iw * represented by the virtual three-phase command current signal to be input to the virtual motor 60 at the timing And the virtual three-phase command voltage signals Vu *, Vv *, Vw * output from the virtual motor 60 are corrected so that the difference between the current value and the next value of the virtual three-phase currents Iu *, Iv *, Iw * is reduced. .

図12に示すように、モータ制御装置300は、仮想モータ計算部310を有し、その仮想モータ計算部310は、仮想モータ60を有し、さらに、比較部322および電圧補正部324を有する。仮想モータ60は、演算回路42により、高速に、すなわち、短い周期で反復的に実行されるのに対し、比較部322および電圧補正部324は、CPU44により、低速に、すなわち、長い周期で反復的に実行される。   As illustrated in FIG. 12, the motor control device 300 includes a virtual motor calculation unit 310, the virtual motor calculation unit 310 includes a virtual motor 60, and further includes a comparison unit 322 and a voltage correction unit 324. The virtual motor 60 is repeatedly executed by the arithmetic circuit 42 at high speed, that is, in a short cycle, whereas the comparison unit 322 and the voltage correction unit 324 are repeatedly executed by the CPU 44 at a low speed, that is, in a long cycle. Is executed automatically.

図12に示すように、比較部322は、第3実施形態に従う比較部222と同様にして、実モータ状態検出部30から出力された実モータ12の実3相電流Iu,Iv,Iwの今回値(最新値)と、座標変換器68から出力された仮想モータ60の仮想3相電流Iu*,Iv*,Iw*の今回値(最新値)とを互いに比較し、両者の差を電流誤差ΔI(ΔIu,ΔIv,ΔIw)として各相ごとに計算する。それら互いに比較されるべき実3相電流Iu,Iv,Iwの今回値と、仮想3相電流Iu*,Iv*,Iw*の今回値はいずれも、図5に示す同じ仮想モータ計算サイクル(周期Tv)内に取得される。   As shown in FIG. 12, the comparison unit 322 is the same as the comparison unit 222 according to the third embodiment for the current three-phase currents Iu, Iv, and Iw of the actual motor 12 output from the actual motor state detection unit 30. The value (latest value) and the current value (latest value) of the virtual three-phase currents Iu *, Iv *, Iw * of the virtual motor 60 output from the coordinate converter 68 are compared with each other, and the difference between the two is determined as a current error. Calculated for each phase as ΔI (ΔIu, ΔIv, ΔIw). The current values of the actual three-phase currents Iu, Iv, and Iw to be compared with each other and the current values of the virtual three-phase currents Iu *, Iv *, and Iw * are all the same virtual motor calculation cycle (period) shown in FIG. Within Tv).

具体的には、図5(b)に示すように、実3相電流Iu,Iv,Iwの今回値は、「θm(t)入力」で表される処理において取得され、一方、仮想3相電流Iu*,Iv*,Iw*の今回値は、「変換」で表される処理において取得される。よって、それら2つの今回値は、実質的に同じタイミングで取得されることになる。   Specifically, as shown in FIG. 5B, the current values of the actual three-phase currents Iu, Iv, and Iw are acquired in the process represented by “θm (t) input”, while the virtual three-phase currents The current values of the currents Iu *, Iv *, and Iw * are acquired in a process represented by “conversion”. Therefore, these two current values are acquired at substantially the same timing.

図12に示すように、電圧補正部324は、前記計算された電流誤差ΔIに基づき、実3相電流Iu,Iv,Iwの次回値(次回の計算サイクルにおいて取得される実3相電流Iu,Iv,Iw)と仮想3相電流Iu*,Iv*,Iw*の次回値(次回の計算サイクルにおいて取得される仮想3相電流Iu*,Iv*,Iw*)との差ΔI(ΔIu,ΔIv,ΔIw)が減少するように、仮想3相電流Iu*,Iv*,Iw*の今回値の入力に応答して仮想モータ60から出力された仮想3相指令電圧信号Vu*,Vv*,Vw*の補正量ΔV*(ΔVu*,ΔVv*,ΔVw*)を決定する。   As shown in FIG. 12, the voltage correction unit 324 determines the next value of the actual three-phase currents Iu, Iv, Iw (the actual three-phase current Iu, acquired in the next calculation cycle) based on the calculated current error ΔI. Iv, Iw) and the difference ΔI (ΔIu, ΔIv) between the next value of virtual three-phase currents Iu *, Iv *, Iw * (virtual three-phase currents Iu *, Iv *, Iw * acquired in the next calculation cycle) , ΔIw) is decreased, the virtual three-phase command voltage signals Vu *, Vv *, Vw output from the virtual motor 60 in response to the input of the current values of the virtual three-phase currents Iu *, Iv *, Iw *. A correction amount ΔV * (ΔVu *, ΔVv *, ΔVw *) of * is determined.

電圧補正部324は、例えば、各相ごとに、前記計算された電流誤差ΔIに基づき、電流誤差ΔIと補正量ΔV*との間に予め定められた関係(例えば、経験的にまたは実験的に取得される)を表すテーブルに従って、補正量ΔV*を決定する。さらに、電圧補正部324は、その決定された補正量ΔV*に基づき、補正量ΔV*を仮想3相指令電圧信号Vu*,Vv*,Vw*のもとの値に加算するか、または、掛け算することにより、仮想3相指令電圧信号Vu*,Vv*,Vw*を補正する。   The voltage correction unit 324, for example, for each phase, based on the calculated current error ΔI, a predetermined relationship between the current error ΔI and the correction amount ΔV * (for example, empirically or experimentally). The correction amount ΔV * is determined in accordance with a table indicating (obtained). Furthermore, the voltage correction unit 324 adds the correction amount ΔV * to the original value of the virtual three-phase command voltage signals Vu *, Vv *, Vw * based on the determined correction amount ΔV *, or By multiplying, the virtual three-phase command voltage signals Vu *, Vv *, and Vw * are corrected.

図13には、仮想モータ出力値補正部320を実現するための比較部322および電圧補正部324の作動の一例がフローチャートで概念的に表されている。それら比較部322および電圧補正部324は、CPU44により、誤差監視計算周期Tc(例えば、数10μsec)で反復的に実行される。   FIG. 13 conceptually shows an example of the operation of the comparison unit 322 and the voltage correction unit 324 for realizing the virtual motor output value correction unit 320 in a flowchart. The comparison unit 322 and the voltage correction unit 324 are repeatedly executed by the CPU 44 at an error monitoring calculation period Tc (for example, several tens of μsec).

具体的には、まず、ステップS201において、図11に示すステップS121と同様にして、仮想モータ60の仮想3相電流の、実モータ12の実3相電流からの誤差である電流誤差ΔIが、各相U,V,Wごとに計算され、それら3相のうちの少なくとも一つにつき、前記計算された電流誤差ΔIの絶対値が、予め定められたしきい値ΔIthより大きいか否かが判定される。今回は、いずれの相についても、電流誤差ΔIの計算値がしきい値ΔIth以下であると仮定すると、このステップS201の判定がNOとなり、同じステップS201が再度実行される。   Specifically, first, in step S201, as in step S121 shown in FIG. 11, the current error ΔI that is an error from the virtual three-phase current of the virtual motor 60 from the real three-phase current of the real motor 12 is It is calculated for each phase U, V, W, and it is determined whether or not the absolute value of the calculated current error ΔI is greater than a predetermined threshold value ΔIth for at least one of the three phases. Is done. This time, assuming that the calculated value of the current error ΔI is equal to or less than the threshold value ΔIth for any phase, the determination in step S201 is NO, and the same step S201 is executed again.

これに対し、今回は、少なくとも一つの相につき、電流誤差ΔIの計算値がしきい値ΔIthを超えていると仮定すると、このステップS201の判定がYESとなり、ステップS202に移行する。   On the other hand, this time, assuming that the calculated value of the current error ΔI exceeds the threshold value ΔIth for at least one phase, the determination in step S201 is YES, and the process proceeds to step S202.

このステップS202においては、比較部322が作動させられる。具体的には、電流誤差ΔIがいずれの相についても、しきい値ΔIthを超えないようにするための補正量ΔVu*,ΔVv*,ΔVw*が計算される。   In step S202, the comparison unit 322 is operated. Specifically, correction amounts ΔVu *, ΔVv *, ΔVw * are calculated so that the current error ΔI does not exceed the threshold value ΔIth for any phase.

その計算手法の一例においては、各相ごとの電流誤差ΔIが取り得る複数の離散的な代表値と、補正量ΔV*との間において予め定められた関係(例えば、テーブルとして、プロセッサ40のためのメモリに予め記憶されている)に従い、電流誤差ΔIの実際の計算値に対応する補正量ΔV*(もとの値に加算される値としたり、もとの値に乗算される係数とすることが可能である)が取得される。   In an example of the calculation method, a predetermined relationship (for example, as a table for the processor 40) between a plurality of discrete representative values that can be taken by the current error ΔI for each phase and the correction amount ΔV *. The correction amount ΔV * corresponding to the actual calculation value of the current error ΔI (a value added to the original value or a coefficient multiplied by the original value) Is possible).

続いて、ステップS203において、電圧補正部324が作動させられる。具体的には、仮想モデル60から出力された仮想3相指令電圧信号Vu*,Vv*,Vw*の今回値(最新値)が取り込まれ、その今回値が、前記計算された補正量ΔVu*,ΔVv*,ΔVw*に基づいて補正される。その後、ステップS201に戻る。   Subsequently, in step S203, the voltage correction unit 324 is operated. Specifically, the current values (latest values) of the virtual three-phase command voltage signals Vu *, Vv *, Vw * output from the virtual model 60 are taken, and the current values are calculated as the calculated correction amount ΔVu *. , ΔVv *, ΔVw *. Thereafter, the process returns to step S201.

なお、本実施形態に従う仮想モータ出力値補正部320は、第2実施形態に従うモータ制御装置100に追加したり、第3実施形態に従うモータ制御装置200に追加することが可能である。仮想モータ出力値補正部320がモータ制御装置200に追加されれば、実モータ12の実稼動中に、その実モータ12の作動状態量を用いて、仮想モータ60の仮想入出力特性を修正することと、その仮想モータ60の出力値を補正することとの双方が行われるため、最終的な制御信号の精度が向上し、ひいては、実モータ12の制御精度が向上する。   In addition, the virtual motor output value correction | amendment part 320 according to this embodiment can be added to the motor control apparatus 100 according to 2nd Embodiment, or can be added to the motor control apparatus 200 according to 3rd Embodiment. If the virtual motor output value correction unit 320 is added to the motor control device 200, the virtual input / output characteristics of the virtual motor 60 are corrected using the operation state quantity of the real motor 12 during the actual operation of the real motor 12. And correcting the output value of the virtual motor 60, the accuracy of the final control signal is improved, and consequently the control accuracy of the actual motor 12 is improved.

以上、本発明の実施の形態のいくつかを図面に基づいて詳細に説明したが、これらは例示であり、前記[発明の概要]の欄に記載の態様を始めとして、当業者の知識に基づいて種々の変形、改良を施した他の形態で本発明を実施することが可能である。   As described above, some of the embodiments of the present invention have been described in detail with reference to the drawings. However, these are exemplifications, and are based on the knowledge of those skilled in the art including the aspects described in the section of [Summary of the Invention]. The present invention can be implemented in other forms with various modifications and improvements.

Claims (11)

電気エネルギーを運動エネルギーに変換する実モータを制御するモータ制御装置であって、
前記実モータの入力電圧−出力電流間関係に従ってその実モータを模擬する仮想モータであって、仮想電流信号が入力されると、その仮想電流信号によって表される電流を前記実モータが出力するためにその実モータに入力すべき電圧を表す仮想電圧信号を出力するものと、
前記実モータの制御目標値を表す目標信号に基づいて前記仮想電流信号を生成し、その仮想電流信号を前記仮想モータに入力し、それに応答して前記仮想モータから出力された仮想電圧信号をそのまま制御信号として用いるかまたは前記仮想電圧信号に基づいて前記制御信号を決定し、その決定された制御信号に基づいて前記実モータを制御する制御部と
を含むモータ制御装置。
A motor control device that controls an actual motor that converts electrical energy into kinetic energy,
A virtual motor that simulates the real motor according to the relationship between the input voltage and the output current of the real motor , and when the virtual current signal is input, the real motor outputs the current represented by the virtual current signal. Outputting a virtual voltage signal representing the voltage to be input to the actual motor;
The virtual current signal is generated based on a target signal representing a control target value of the actual motor, the virtual current signal is input to the virtual motor, and the virtual voltage signal output from the virtual motor in response to the virtual current signal is directly input. A control unit that uses the control signal as a control signal or determines the control signal based on the virtual voltage signal and controls the real motor based on the determined control signal.
前記制御部は、前記目標信号に基づいて前記仮想モータのための目標電流信号を生成し、その目標電流信号に基づき、前記仮想モータの電流のベクトル制御を、前記目標電流信号の座標変換が前記実モータの回転角を用いて行われるように行い、それにより、前記仮想電流信号を生成する請求項1に記載のモータ制御装置。   The control unit generates a target current signal for the virtual motor based on the target signal, and performs vector control of the current of the virtual motor based on the target current signal. The motor control device according to claim 1, wherein the motor control device performs the operation using a rotation angle of an actual motor, thereby generating the virtual current signal. さらに、前記実モータの電流を検出する検出部を含み、
前記制御部は、前記検出された実モータ電流と、その実モータ電流の検出タイミングに時間的に関連付けられるタイミングで前記仮想モータに入力される前記仮想電流信号によって表される仮想モータ電流との差に基づき、その差が減少するように、前記仮想電圧信号を直接的にまたは間接的に補正する請求項1または2に記載のモータ制御装置。
Furthermore, a detection unit for detecting the current of the actual motor is included,
The control unit determines a difference between the detected actual motor current and a virtual motor current represented by the virtual current signal input to the virtual motor at a timing temporally related to the detection timing of the actual motor current. The motor control device according to claim 1, wherein the virtual voltage signal is corrected directly or indirectly so that the difference is reduced.
前記仮想モータは、仮想3相電流信号が入力されると、その仮想3相電流信号によって表される3相電流を前記実モータが出力するためにその実モータに入力すべき3相電圧を表す仮想3相電圧信号を出力し、
前記制御部は、前記目標信号を、前記仮想モータのための仮想dq軸指令電流信号に変換し、その仮想dq軸指令電流信号を、前記実モータの回転角のもとで、前記仮想モータのための仮想3相指令電流信号に変換し、その仮想3相指令電流信号を前記仮想モータに入力し、それに応答して前記仮想モータから出力された仮想3相指令電圧信号に前記仮想3相指令電流信号を変換し、前記仮想3相指令電圧信号をそのまま前記制御信号として用いるかまたは前記仮想3相指令電圧信号に基づいて前記制御信号を決定する請求項1に記載のモータ制御装置。
When a virtual three-phase current signal is input to the virtual motor, the virtual motor represents a three-phase voltage to be input to the real motor in order to output the three-phase current represented by the virtual three-phase current signal. Outputs a three-phase voltage signal,
The control unit converts the target signal into a virtual dq axis command current signal for the virtual motor, and converts the virtual dq axis command current signal of the virtual motor under the rotation angle of the real motor. The virtual three-phase command current signal is input to the virtual motor, and the virtual three-phase command voltage signal output from the virtual motor in response to the virtual three-phase command current signal is input to the virtual motor. The motor control device according to claim 1, wherein a current signal is converted and the virtual three-phase command voltage signal is used as the control signal as it is or the control signal is determined based on the virtual three-phase command voltage signal.
さらに、前記実モータ回転角を取得する取得部を含み、
前記制御部は、さらに、
前記取得部によって前記実モータ回転角が取得された時期から、その取得された実モータ回転角を用いて計算された前記制御信号が前記実モータに供給される時期までの間に前記実モータ回転角が変化することが予想される変化量を推定する推定部と、
その推定された変化量に基づき、前記取得された実モータ回転角を補正する角度補正部と
を含み、
前記制御部は、前記補正された実モータ回転角のもとで、前記仮想dq軸指令電流信号を前記仮想3相指令電流信号に変換する請求項4に記載のモータ制御装置。
Furthermore, the acquisition part which acquires the said actual motor rotation angle is included,
The control unit further includes:
The actual motor rotation from the time when the actual motor rotation angle is acquired by the acquisition unit to the time when the control signal calculated using the acquired actual motor rotation angle is supplied to the actual motor. An estimator for estimating the amount of change in which the angle is expected to change;
An angle correction unit that corrects the acquired actual motor rotation angle based on the estimated change amount, and
The motor control device according to claim 4, wherein the control unit converts the virtual dq-axis command current signal into the virtual three-phase command current signal under the corrected actual motor rotation angle.
前記仮想モータは、前記実モータにおける入力電圧と出力電流との関係である実入出力特性を模擬する仮想入出力特性を有し、前記仮想3相指令電流信号が入力されると、前記仮想入出力特性に基づき、前記仮想3相指令電流信号に対応する前記仮想3相指令電圧信号を出力し、
当該モータ制御装置は、さらに、前記実モータの実3相電流を検出する検出部を含み、
前記制御部は、前記検出された実3相電流と、その実3相電流の検出タイミングに時間的に関連付けられるタイミングで前記仮想モータに入力される前記仮想3相指令電流信号によって表される仮想3相電流との差に基づき、前記実3相電流の次回値と前記仮想3相電流の次回値との差が減少するように、前記仮想入出力特性を修正する請求項4または5に記載のモータ制御装置。
The virtual motor has a virtual input / output characteristic that simulates an actual input / output characteristic that is a relationship between an input voltage and an output current in the real motor. When the virtual three-phase command current signal is input, the virtual motor Based on the output characteristics, the virtual three-phase command voltage signal corresponding to the virtual three-phase command current signal is output,
The motor control device further includes a detection unit that detects a real three-phase current of the real motor,
The control unit is a virtual 3 represented by the detected real three-phase current and the virtual three-phase command current signal input to the virtual motor at a timing temporally related to the detection timing of the real three-phase current. 6. The virtual input / output characteristic is modified so that a difference between a next value of the actual three-phase current and a next value of the virtual three-phase current is reduced based on a difference with a phase current. Motor control device.
さらに、前記実モータの実3相電流を検出する検出部を含み、
前記制御部は、前記検出された実3相電流と、その実3相電流の検出タイミングに時間的に関連付けられるタイミングで前記仮想モータに入力される前記仮想3相指令電流信号によって表される仮想3相電流との差に基づき、前記実3相電流の次回値と前記仮想3相電流の次回値との差が減少するように、前記仮想モータから出力された仮想3相指令電圧信号を補正する請求項4ないし6のいずれかに記載のモータ制御装置。
And a detector that detects an actual three-phase current of the actual motor,
The control unit is a virtual 3 represented by the detected real three-phase current and the virtual three-phase command current signal input to the virtual motor at a timing temporally related to the detection timing of the real three-phase current. Based on the difference from the phase current, the virtual three-phase command voltage signal output from the virtual motor is corrected so that the difference between the next value of the actual three-phase current and the next value of the virtual three-phase current is reduced. The motor control device according to claim 4.
前記制御部は、さらに、前記実モータの作動状態と前記仮想モータの作動状態との差に基づき、その差が減少するように、前記仮想モータの入出力特性を修正する請求項1に記載のモータ制御装置。   2. The input / output characteristics of the virtual motor according to claim 1, wherein the control unit further modifies the input / output characteristics of the virtual motor based on a difference between an operating state of the real motor and an operating state of the virtual motor so that the difference decreases. Motor control device. 電気エネルギーを運動エネルギーに変換する実モータを制御するモータ制御方法であって、
制御信号に基づいて前記実モータを制御する第1工程と、
前記実モータの作動中、仮想モータを作動させ、それにより、前記制御信号を決定する第2工程と
を含み、
前記仮想モータは、前記実モータの入力電圧−出力電流間関係に従ってその実モータを模擬するために、仮想電流信号が入力されると、その仮想電流信号によって表される電流を前記実モータが出力するためにその実モータに入力すべき電圧を表す仮想電圧信号を出力し、
前記第2工程は、前記実モータの制御目標値を表す目標信号に基づいて前記仮想電流信号を生成し、その仮想電流信号を前記仮想モータに入力し、それに応答して前記仮想モータから出力された仮想電圧信号をそのまま前記制御信号として用いるかまたは前記仮想電圧信号に基づいて前記制御信号を決定するモータ制御方法。
A motor control method for controlling an actual motor that converts electrical energy into kinetic energy,
A first step of controlling the actual motor based on a control signal;
A second step of activating a virtual motor during operation of the real motor, thereby determining the control signal;
When the virtual current signal is input, the virtual motor outputs the current represented by the virtual current signal in order to simulate the real motor according to the relationship between the input voltage and the output current of the real motor. Output a virtual voltage signal representing the voltage to be input to the actual motor
The second step generates the virtual current signal based on a target signal representing a control target value of the real motor, inputs the virtual current signal to the virtual motor, and outputs the virtual current signal in response to the virtual current signal. A motor control method in which the virtual voltage signal is directly used as the control signal or the control signal is determined based on the virtual voltage signal.
請求項9に記載のモータ制御方法を実行するためにコンピュータによって実行されるプログラム。   A program executed by a computer to execute the motor control method according to claim 9. 請求項10に記載のプログラムをコンピュータ読み取り可能に記録した記録媒体。   The recording medium which recorded the program of Claim 10 so that computer reading was possible.
JP2013089698A 2013-04-22 2013-04-22 Motor control device and motor control method Active JP5405685B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2013089698A JP5405685B1 (en) 2013-04-22 2013-04-22 Motor control device and motor control method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2013089698A JP5405685B1 (en) 2013-04-22 2013-04-22 Motor control device and motor control method

Related Child Applications (1)

Application Number Title Priority Date Filing Date
JP2013225167A Division JP2014217269A (en) 2013-10-30 2013-10-30 Motor control device and motor control method

Publications (2)

Publication Number Publication Date
JP5405685B1 true JP5405685B1 (en) 2014-02-05
JP2014217086A JP2014217086A (en) 2014-11-17

Family

ID=50202585

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2013089698A Active JP5405685B1 (en) 2013-04-22 2013-04-22 Motor control device and motor control method

Country Status (1)

Country Link
JP (1) JP5405685B1 (en)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107645253A (en) * 2017-10-23 2018-01-30 上海交通大学 The three-phase simulation device of current-responsive type permagnetic synchronous motor and its drive system
CN107994820A (en) * 2017-11-30 2018-05-04 上海交通大学 The simulator of voltage responsive type permanent magnet synchronous motor and its drive system
CN110429885A (en) * 2019-08-08 2019-11-08 阳光电源股份有限公司 A kind of motor scaling method and host computer

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107390071A (en) * 2017-08-21 2017-11-24 上海交通大学 The simulation system of current-responsive type three-phase permanent magnet synchronous motor
CN109818543B (en) * 2019-03-13 2021-03-09 浙江吉利汽车研究院有限公司 Automatic motor calibration method and device and controller

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2004260891A (en) * 2003-02-25 2004-09-16 Yaskawa Electric Corp Motor control device and method therefor
JP2005094964A (en) * 2003-09-19 2005-04-07 Yaskawa Electric Corp Motor control device and method therefor
JP2005346455A (en) * 2004-06-03 2005-12-15 Yaskawa Electric Corp Motor controller
JP2006318200A (en) * 2005-05-12 2006-11-24 Dsp Technology Kk Block diagram type simulation model creation device, real-time simulation execution device and library
JP2009055693A (en) * 2007-08-27 2009-03-12 Hitachi Ltd Power converting device
JP2009284637A (en) * 2008-05-21 2009-12-03 Dsp Technology Kk Simulated motor and controller test device
JP2010051061A (en) * 2008-08-19 2010-03-04 Dsp Technology Kk Simulation system equipped with servo analysis function

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2004260891A (en) * 2003-02-25 2004-09-16 Yaskawa Electric Corp Motor control device and method therefor
JP2005094964A (en) * 2003-09-19 2005-04-07 Yaskawa Electric Corp Motor control device and method therefor
JP2005346455A (en) * 2004-06-03 2005-12-15 Yaskawa Electric Corp Motor controller
JP2006318200A (en) * 2005-05-12 2006-11-24 Dsp Technology Kk Block diagram type simulation model creation device, real-time simulation execution device and library
JP2009055693A (en) * 2007-08-27 2009-03-12 Hitachi Ltd Power converting device
JP2009284637A (en) * 2008-05-21 2009-12-03 Dsp Technology Kk Simulated motor and controller test device
JP2010051061A (en) * 2008-08-19 2010-03-04 Dsp Technology Kk Simulation system equipped with servo analysis function

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
JPN6013007543; 赤津: 'モータ設計における電磁界有限要素解析とその応用' シミュレーション Vol.29, No.4, 20110209, Page.172-176 *
JPN6013007546; 成田 他: '制御シミュレーションへの高精度モータモデルの適用' 電気学会研究会資料 回転機・半導体電力変換・モータドライブ合同研究会 Vol.RM-10, No.56-69, 20100528, Page.17-22 *

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107645253A (en) * 2017-10-23 2018-01-30 上海交通大学 The three-phase simulation device of current-responsive type permagnetic synchronous motor and its drive system
CN107994820A (en) * 2017-11-30 2018-05-04 上海交通大学 The simulator of voltage responsive type permanent magnet synchronous motor and its drive system
CN110429885A (en) * 2019-08-08 2019-11-08 阳光电源股份有限公司 A kind of motor scaling method and host computer

Also Published As

Publication number Publication date
JP2014217086A (en) 2014-11-17

Similar Documents

Publication Publication Date Title
JP5156352B2 (en) AC motor control device
JP3467961B2 (en) Control device for rotating electric machine
JP5697745B2 (en) Synchronous motor drive system
JP5405685B1 (en) Motor control device and motor control method
JP5652610B2 (en) Motor control device
JP2014515244A (en) Method and system for controlling an electric motor with temperature compensation
JP3397013B2 (en) Control device for synchronous motor
JP5733404B2 (en) PM motor position sensorless control device
JP6687228B1 (en) AC rotating electric machine control device
JP4228651B2 (en) Method and apparatus for controlling IPM motor
JP5683427B2 (en) Motor control device and torque value acquisition method
JP2019037019A (en) Device and method for controlling rotary electric machine
JP2014128190A (en) Motor control device and motor control method
JP2014217269A (en) Motor control device and motor control method
JP5379327B1 (en) Motor control device and motor control method
JP7162685B2 (en) AC rotary electric machine control device
JP5301025B1 (en) Motor control device and motor control method
JP2013219988A (en) Control device of rotating machine
JP2015023788A (en) Motor control device and motor control method
JP2018046615A (en) Temperature estimation device, interlinkage magnetic flux estimation device and motor controller
JP6945673B2 (en) Control device for AC rotating electric machine
JP2000217384A (en) Controller of position-sensorless motor
JP2014161201A (en) Motor controller
JP5351345B1 (en) Motor control device
JP5449607B1 (en) Gate signal generator and gate signal generation method

Legal Events

Date Code Title Description
TRDD Decision of grant or rejection written
A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20131030

R150 Certificate of patent or registration of utility model

Ref document number: 5405685

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250