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

Motor control device and motor control method Download PDF

Info

Publication number
JP2015023788A
JP2015023788A JP2013199656A JP2013199656A JP2015023788A JP 2015023788 A JP2015023788 A JP 2015023788A JP 2013199656 A JP2013199656 A JP 2013199656A JP 2013199656 A JP2013199656 A JP 2013199656A JP 2015023788 A JP2015023788 A JP 2015023788A
Authority
JP
Japan
Prior art keywords
motor
virtual
actual
real
virtual motor
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP2013199656A
Other languages
Japanese (ja)
Inventor
藤井 真一
Shinichi Fujii
真一 藤井
順彦 尾崎
Nobuhiko Ozaki
順彦 尾崎
成久 磯部
Narihisa Isobe
成久 磯部
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
DSP TECHNOLOGY KK
Original Assignee
DSP TECHNOLOGY KK
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 DSP TECHNOLOGY KK filed Critical DSP TECHNOLOGY KK
Priority to JP2013199656A priority Critical patent/JP2015023788A/en
Publication of JP2015023788A publication Critical patent/JP2015023788A/en
Pending legal-status Critical Current

Links

Images

Abstract

PROBLEM TO BE SOLVED: To facilitate design support of a real motor and/or a real control system for the real motor.SOLUTION: A motor control device 300 for controlling a real motor 12 comprises: a virtual motor calculation part 50 which controls a virtual motor simulating the real motor together with the real motor and so as to operate the virtual motor substantially synchronously with the real motor; a real motor power calculation part 304 which acquires information required for calculating real power of the real motor from the real motor during a parallel operation period in which the real motor and the virtual motor are operated together; a virtual motor power calculation part 302 which acquires information required for calculating virtual power of the virtual motor from the virtual motor during the parallel operation period; and a mechanical loss calculation part 306 for acquiring a real mechanical loss of the real motor in association with a motor rotation angle on the basis of the information acquired by the calculation parts 304 and 302.

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 many cases, a control system for a motor uses a sensor that detects an operating state of the motor (for example, a motor position or a motor current). In this case, it is important to reduce the number of sensors used in order to satisfy the desire to reduce the device cost and the desire to improve the reliability of the device by improving the reliability of the device.

以上説明した事情を背景として、本発明は、実モータおよび/またはその実モータのための実制御系の設計の支援を容易にしたり、実モータの制御を容易にすることを課題としてなされたものである。   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;
For each calculation cycle, a control signal for at least the virtual motor of the real motor and the virtual motor is determined, and the determined control signal is used for at least the virtual motor of the real motor and the virtual motor. And a control unit that outputs to
When the control signal is input for each calculation cycle, the virtual motor is based on the input control signal, and when the same control signal as the control signal is output to the real motor, Estimating the operating state of the real motor realized in response, and outputting the estimated operating state as a virtual operating state of the virtual motor;
For each calculation cycle, the control unit substantially determines that the virtual motor is substantially the same as the real motor based on the virtual operation state output from the virtual motor in the previous calculation cycle and the actual operation state of the real motor. Determining the control signal to operate in synchronization with
The real motor is a motor control device that is operated together with the virtual motor based on at least one of a target signal for the real motor, a signal acquired from the virtual motor, and the control signal.

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

また、「制御信号」という用語は、実モータおよび仮想モータに直接的に入力されるか、または間接的に入力され、それにより、結果的に、それら実モータおよび仮想モータの作動状態に変化を与えることとなる信号を意味する。   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) When the control signal is input for each calculation cycle, the virtual motor, when the same control signal as the control signal is output to the real motor based on the input control signal. Estimating the actual current value of the real motor realized in response to the control signal, and outputting the estimated actual current value as a virtual current value of the virtual motor;
The control unit, for each calculation cycle, makes the virtual motor substantially different from the real motor based on the virtual current value output from the virtual motor in the previous calculation cycle and the actual rotation angle of the real motor. The motor control device according to (1), wherein the control signal is determined so as to operate in synchronization with the motor.

(3) 前記制御部は、各計算サイクルごとに、前記仮想モータの指令電流値を計算するために座標変換を伴うベクトル制御を、前記座標変換が前記実モータの実際の回転角を基準にして行われるように行い、そのベクトル制御により、前記目標信号と、前回の計算サイクルにおいて前記仮想モータから出力された仮想電流値とに基づいて前記指令電流値を決定し、その決定された指令電流値に基づいて前記制御信号を決定する(2)項に記載のモータ制御装置。 (3) For each calculation cycle, the control unit performs vector control with coordinate conversion to calculate the command current value of the virtual motor, and the coordinate conversion is based on the actual rotation angle of the real motor. The command current value is determined based on the target signal and the virtual current value output from the virtual motor in the previous calculation cycle by the vector control, and the determined command current value The motor control device according to item (2), wherein the control signal is determined based on the following.

(4) 前記制御部は、前記目標信号に基づいて前記制御信号を決定し、
前記実モータは、前記仮想電流値が目標実モータ電流値として入力されると、その入力された目標電流値に基づいて制御され、
前記制御部は、前記目標信号を前記目標実モータ電流値に変換するコンバータとして作用する(2)または(3)項に記載のモータ制御装置。
(4) The control unit determines the control signal based on the target signal,
When the virtual current value is input as a target actual motor current value, the actual motor is controlled based on the input target current value,
The motor control device according to (2) or (3), wherein the control unit acts as a converter that converts the target signal into the target actual motor current value.

(5) 前記実モータは、前記仮想電流値と前記実モータの実電流値とが入力されると、それら仮想電流値と実電流値とに基づいて制御される(4)項に記載のモータ制御装置。 (5) When the virtual current value and the real current value of the real motor are input, the real motor is controlled based on the virtual current value and the real current value. Control device.

(6) 前記実モータは、各計算サイクルごとに、前記仮想モータに出力される前記制御信号と実質的に共通するものに基づいて制御され、それにより、それら実モータと仮想モータとが、前記実質的に互いに共通する制御信号に基づいて制御される(1)項に記載のモータ制御装置。 (6) The real motor is controlled based on what is substantially common to the control signal output to the virtual motor for each calculation cycle, whereby the real motor and the virtual motor are The motor control device according to item (1), which is controlled based on control signals that are substantially common to each other.

(7) 前記実モータは、前記仮想モータに入力される目標信号と実質的に共通するものに基づいて制御され、それにより、それら実モータと仮想モータとが、前記実質的に互いに共通する目標信号に基づいて制御される(1)項に記載のモータ制御装置。 (7) The real motor is controlled based on what is substantially common to the target signal input to the virtual motor, whereby the real motor and the virtual motor are substantially common to the target. The motor control device according to item (1), which is controlled based on the signal.

(8) 前記制御部は、各回の計算サイクルにおいて、1段目および2段目のフィードバック制御を順に実行し、
前記制御部は、前記1段目のフィードバック制御のために、目標信号に基づき、かつ、前回の計算サイクルにおいて前記仮想モータから出力された前回推定値をフィードバックすることにより、仮想モータ制御信号を決定し、その決定された仮想モータ制御信号を前記仮想モータに出力し、それにより、その仮想モータを作動させ、
前記制御部は、前記2段目のフィードバック制御のために、前記1段目のフィードバック制御において前記仮想モータから出力された直前推定値に基づき、かつ、前記実モータの作動状態を表す物理量をフィードバックすることと、前記1段目のフィードバック制御において前記仮想モータに出力された前記仮想モータ制御信号に基づき、かつ、前記直前推定値をフィードバックすることとのうちの少なくとも一方を行うことにより、実モータ制御信号を決定し、その決定された実モータ制御信号を前記実モータに出力し、それにより、その実モータを作動させる(1)項に記載のモータ制御装置。
(8) The control unit sequentially executes the first-stage and second-stage feedback control in each calculation cycle,
The control unit determines a virtual motor control signal for feedback control of the first stage by feeding back a previous estimated value output from the virtual motor in a previous calculation cycle based on a target signal. Outputting the determined virtual motor control signal to the virtual motor, thereby operating the virtual motor;
For the second-stage feedback control, the control unit feeds back a physical quantity representing the operating state of the actual motor based on the immediately preceding estimated value output from the virtual motor in the first-stage feedback control. And at least one of feedback of the immediately preceding estimated value based on the virtual motor control signal output to the virtual motor in the first-stage feedback control, The motor control device according to item (1), wherein a control signal is determined, and the determined actual motor control signal is output to the actual motor, thereby operating the actual motor.

(9) さらに、
前記実モータと前記仮想モータとが一緒に作動している期間中にそれら実モータと仮想モータとのうち少なくとも仮想モータから取得された情報に基づき、前記実モータの実際の作動特性をその実モータまたは前記仮想モータの回転角に関連づけて取得して出力する実モータ作動特性出力部として機能する(1)ないし(8)項のいずれかに記載のモータ制御装置。
(9) Furthermore,
Based on at least information acquired from the virtual motor among the real motor and the virtual motor during the period in which the real motor and the virtual motor are operating together, the actual operating characteristic of the real motor The motor control device according to any one of (1) to (8), wherein the motor control device functions as an actual motor operation characteristic output unit that obtains and outputs in association with a rotation angle of the virtual motor.

(10) 前記実モータ作動特性出力部は、前記仮想モータから出力される仮想電流値を前記実モータの実電流値として、その実モータまたは前記仮想モータの回転角に関連づけて取得して出力する実モータ電流取得部を含む(9)項に記載のモータ制御装置。 (10) The actual motor operating characteristic output unit acquires and outputs the virtual current value output from the virtual motor as the actual current value of the actual motor in association with the actual motor or the rotation angle of the virtual motor. The motor control device according to item (9), including a motor current acquisition unit.

(11) 前記実モータ作動特性出力部は、前記実モータと前記仮想モータとが一緒に作動している期間中に前記実モータから取得された実モータ関連情報であってその実モータの実電力を計算するのに必要なものと前記仮想モータから取得された仮想モータ関連情報であってその仮想モータの仮想電力を計算するのに必要なものとに基づき、前記実モータの実際の機械損を、その実モータまたは前記仮想モータの回転角に関連づけて取得して出力する実モータ機械損取得部を含む(9)項に記載のモータ制御装置。 (11) The actual motor operating characteristic output unit is information related to the actual motor acquired from the actual motor during a period in which the actual motor and the virtual motor are operating together, and the actual power of the actual motor is obtained. Based on what is necessary to calculate and virtual motor related information obtained from the virtual motor, which is necessary to calculate the virtual power of the virtual motor, the actual mechanical loss of the real motor, The motor control device according to (9), further including an actual motor mechanical loss acquisition unit that acquires and outputs the actual motor or the virtual motor in association with the rotation angle of the virtual motor.

(12) 前記実モータ機械損取得部は、前記実モータ関連情報に基づいて前記実モータの実電力値を計算し、前記仮想モータ関連情報に基づいて前記仮想モータの仮想電力値を計算し、それら計算された実電力値と仮想電力値との差を前記実モータの実際の機械損として、その実モータまたは前記仮想モータの回転角に関連づけて取得して出力する(11)項に記載のモータ制御装置。 (12) The actual motor mechanical loss acquisition unit calculates an actual power value of the actual motor based on the actual motor related information, calculates a virtual power value of the virtual motor based on the virtual motor related information, The motor according to (11), wherein the difference between the calculated actual power value and the virtual power value is acquired and output as an actual mechanical loss of the actual motor in association with the actual motor or the rotation angle of the virtual motor. Control device.

(13) 前記制御部は、1計算サイクル分の計算を予め定められた計算周期で反復的に行い、各計算サイクルごとに前記制御信号を決定し、その決定された制御信号を前記実モータと前記仮想モータとのうち少なくともその仮想モータに出力し、
当該モータ制御装置は、さらに、
前記計算周期より長くなるように予め定められた修正周期で、前記実モータの実際の作動状態と、前記仮想モータによって推定される前記実モータの作動状態との差に基づき、その差が減少するように、前記仮想モータの入出力特性を反復的に修正する修正部を含む(1)ないし(12)項のいずれかに記載のモータ制御装置。
(13) The control unit repeatedly performs calculation for one calculation cycle at a predetermined calculation cycle, determines the control signal for each calculation cycle, and transmits the determined control signal to the actual motor. Output to at least the virtual motor of the virtual motor,
The motor control device further includes:
The difference decreases based on the difference between the actual operating state of the real motor and the operating state of the actual motor estimated by the virtual motor at a predetermined correction cycle so as to be longer than the calculation cycle. As described above, the motor control device according to any one of (1) to (12), including a correction unit that repeatedly corrects the input / output characteristics of the virtual motor.

(14) 電気エネルギーを運動エネルギーに変換する実モータを制御するモータ制御方法であって、
各計算サイクルごとに、前記実モータとその実モータを模擬する仮想モータとのうち少なくともその仮想モータのための制御信号を決定する決定工程と、
その決定された制御信号を前記実モータと前記仮想モータとのうち少なくともその仮想モータに出力する出力工程と、
各計算サイクルごとに、前記制御信号が前記仮想モータに入力されると、その仮想モータが作動し、それにより、前記入力された制御信号に基づき、その制御信号と同じ制御信号が前記実モータに出力された場合にその制御信号に応答して実現される前記実モータの作動状態を推定し、その推定された作動状態を前記仮想モータの仮想作動状態として出力する推定工程と
を含み、
前記決定工程は、各計算サイクルごとに、前回の計算サイクルにおいて前記仮想モータから出力された仮想作動状態と、前記実モータの実際の作動状態とに基づき、前記仮想モータが前記実モータと実質的に同期して作動するように、前記制御信号を決定し、
前記実モータは、前記実モータのための目標信号と前記仮想モータから取得される信号と前記制御信号との少なくとも一つに基づいて前記仮想モータと一緒に作動させられるモータ制御方法。
(14) A motor control method for controlling an actual motor that converts electrical energy into kinetic energy,
For each calculation cycle, a determination step of determining a control signal for at least the virtual motor of the real motor and a virtual motor that simulates the real motor;
An output step of outputting the determined control signal to at least the virtual motor of the real motor and the virtual motor;
For each calculation cycle, when the control signal is input to the virtual motor, the virtual motor is activated, and based on the input control signal, the same control signal as the control signal is supplied to the real motor. Estimating the operating state of the real motor realized in response to the control signal when output, and outputting the estimated operating state as the virtual operating state of the virtual motor, and
In the determination step, for each calculation cycle, the virtual motor is substantially different from the real motor based on the virtual operation state output from the virtual motor in the previous calculation cycle and the actual operation state of the real motor. Determining the control signal to operate in synchronization with
The motor control method, wherein the real motor is operated together with the virtual motor based on at least one of a target signal for the real motor, a signal acquired from the virtual motor, and the control signal.

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

(16) (15)項に記載のプログラムをコンピュータ読み取り可能に記録した非過渡的な記録媒体。 (16) A non-transient recording medium on which the program according to item (15) 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, since the real motor and the virtual motor are operated in parallel with each other in time, the real motor is controlled based on the operating state of the virtual motor, or conversely, based on the operating state of the real motor. Thus, the input / output characteristics of the virtual motor can be corrected.

図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. 1 together with the actual motor. 図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)は、図3に示す仮想モータ制御部の別の例を表す機能ブロック図である。FIG. 5A is a functional block diagram illustrating an example of the virtual motor control unit illustrated in FIG. 3, and FIG. 5B is a functional block diagram illustrating another example of the virtual motor control unit illustrated in FIG. is there. 図6(a)は、図3に示す仮想モータ計算部の全体シーケンスを示すタイミングチャートであり、図6(b)は、その仮想モータ計算部が図5(a)に示す構成を採用した場合の作動を示すタイミングチャートであり、図6(c)は、その仮想モータ計算部が図5(b)に示す構成を採用した場合の作動を示すタイミングチャートである。FIG. 6A is a timing chart showing the entire sequence of the virtual motor calculation unit shown in FIG. 3, and FIG. 6B shows a case where the virtual motor calculation unit adopts the configuration shown in FIG. FIG. 6C is a timing chart showing the operation when the virtual motor calculation unit adopts the configuration shown in FIG. 5B. 図7は、図3に示す仮想PWMインバータの一例を概略的にかつ数学的に記述する図である。FIG. 7 is a diagram schematically and mathematically describing an example of the virtual PWM inverter shown in FIG. 図8は、図1に示すモータ制御装置の作動の一例を概念的に表すフローチャートである。FIG. 8 is a flowchart conceptually showing an example of the operation of the motor control device shown in FIG. 図9は、図1に示す実コントローラの作動の一例を概念的に表すフローチャートである。FIG. 9 is a flowchart conceptually showing an example of the operation of the real controller shown in FIG. 図10は、本発明の例示的な第2実施形態に従うモータ制御装置を有するシステム全体を表す機能ブロック図である。FIG. 10 is a functional block diagram showing the entire system having the motor control device according to the second exemplary embodiment of the present invention. 図11は、図10に示す仮想モータ計算部の一例を表す機能ブロック図である。FIG. 11 is a functional block diagram illustrating an example of the virtual motor calculation unit illustrated in FIG. 10. 図12は、図10に示すモータ制御装置の作動の一例を概念的に表すフローチャートである。FIG. 12 is a flowchart conceptually showing an example of the operation of the motor control device shown in FIG. 図13は、図10に示す実コントローラの作動の一例を概念的に表すフローチャートである。FIG. 13 is a flowchart conceptually showing an example of the operation of the real controller shown in FIG. 図14は、本発明の例示的な第3実施形態に従うモータ制御装置を有するシステム全体を表す機能ブロック図である。FIG. 14 is a functional block diagram showing the entire system having the motor control device according to the third exemplary embodiment of the present invention. 図15は、図14に示す仮想モータ計算部の一例を表す機能ブロック図である。FIG. 15 is a functional block diagram illustrating an example of the virtual motor calculation unit illustrated in FIG. 14. 図16は、図14に示すモータ制御装置の作動の一例を概念的に表すフローチャートである。FIG. 16 is a flowchart conceptually showing an example of the operation of the motor control device shown in FIG. 図17は、本発明の例示的な第4実施形態に従うモータ制御装置を有するシステム全体を表す機能ブロック図である。FIG. 17 is a functional block diagram showing the entire system having the motor control device according to the fourth exemplary embodiment of the present invention. 図18は、図17に示す仮想モータ計算部の一例を表す機能ブロック図である。FIG. 18 is a functional block diagram illustrating an example of the virtual motor calculation unit illustrated in FIG. 図19は、図17に示すモータ制御装置の作動の一例を概念的に表すフローチャートである。FIG. 19 is a flowchart conceptually showing an example of the operation of the motor control device shown in FIG. 図20は、図17に示す実コントローラの作動の一例を概念的に表すフローチャートである。FIG. 20 is a flowchart conceptually showing an example of the operation of the real controller shown in FIG. 図21は、本発明の例示的な第5実施形態に従うモータ制御装置を有するシステム全体を表す機能ブロック図である。FIG. 21 is a functional block diagram showing the entire system having the motor control device according to the fifth exemplary embodiment of the present invention. 図22は、図21に示す仮想モータ計算部の一例を表す機能ブロック図である。FIG. 22 is a functional block diagram illustrating an example of the virtual motor calculation unit illustrated in FIG. 21. 図23は、図21に示す比較部およびモデル修正部のそれぞれの作動の一例を概念的に表すフローチャートである。FIG. 23 is a flowchart conceptually illustrating an example of operation of each of the comparison unit and the model correction unit illustrated in FIG. 21. 図24は、本発明の例示的な第6実施形態に従うモータ制御装置を有するシステム全体を表す機能ブロック図である。FIG. 24 is a functional block diagram showing the entire system having the motor control device according to the sixth exemplary embodiment of the present invention. 図25は、図24に示すモータ制御装置の作動の一例を概念的に表すフローチャートである。FIG. 25 is a flowchart conceptually showing an example of operation of the motor control device 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. As some specific examples of the system 11, as described above, there are a propulsion device for moving a moving body with respect to an absolute space, a motion imparting device for imparting motion to a movable member, and the like.

実モータ12は、一般に、複数極のロータ(図示しない)と、複数極のステータ(図示しない)と、磁束形成部(図示しないが、具体的には、例えば、巻き線)とを有するように構成される。図2に示すように、実モータ12は、前記ロータと共に回転するシャフト13を有しており、そのシャフト13が可動部材(図示しないが、具体的には、例えば、車両の車輪、工作機械の工具、ロボットのアームなど)に機械的に連結され、それにより、可動部材が駆動される。その可動部材は、実モータ12にとり、いわゆる実負荷となる。   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. The movable member serves as a so-called actual load for the actual motor 12.

実モータ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:ロータ(またはシャフト)の角度(位相または回転位置であり、「モータ角」または「モータ位置」ともいう)[rad]
ωm:ロータ(またはシャフト13)の角速度(「モータ速度」ともいう)[rad/sec]
T:モータ出力トルク[Nm]
Eu,Ev,Ew:誘起電圧[V]
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: Rotor (or shaft) angle (phase or rotational position, also called “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]
Eu, Ev, Ew: Induced voltage [V]
Fu, Fv, Fw: Phase magnetic flux [Wb]

なお、本実施形態および後述のいくつかの実施形態の説明において、同じ記号が、単独で使用される箇所と、「*」を末尾に有するように使用される箇所とが存在する。それら実施形態においては、同じ記号が、単独で使用される場合には、実際値または検出値を意味する一方、「*」と組み合わせて使用される場合には、指令値を意味するという用法と、同じ記号が、単独で使用される場合には、実モータ12についての物理量であることを意味する一方、「*」と組み合わせて使用される場合には、後述の仮想モータ60(図3参照)についての物理量であることを意味するという用法とがあるが、特記しない限り、前者の用法を採用することに留意されたい。   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, while when used in combination with "*", a virtual motor 60 (see FIG. 3) described later is used. Note that the former usage is adopted unless otherwise specified.

図1に示すように、システム11は、実モータ12を駆動するために、実コントローラ13と、実インバータ/パワーアンプ(実ドライバの一例)14と、実モータ状態検出部15とをさらに備えている。   As shown in FIG. 1, the system 11 further includes a real controller 13, a real inverter / power amplifier (an example of a real driver) 14, and a real motor state detection unit 15 in order to drive the real motor 12. Yes.

実モータ状態検出部15は、実モータ12の作動状態として実モータ12の実モータ位置(回転角)θmを検出する角度センサである。この実モータ状態検出部15は、例えば、ロータリ・エンコーダ(図示しない)を含むように構成される。   The actual motor state detection unit 15 is an angle sensor that detects the actual motor position (rotation angle) θm of the actual motor 12 as the operating state of the actual motor 12. The actual motor state detection unit 15 is configured to include, for example, a rotary encoder (not shown).

ところで、後述のいくつかの実施形態においては、実モータ状態検出部15が、実モータ12の実3相電流Iu,Iv,Iwを検出する電流センサを有したり、実モータ12の実3相電圧Vu,Vv,Vwを検出する電圧センサを有するが、本実施形態においては、少なくとも電流センサを有しておらず、その代わり、後述の仮想モータ計算部50が実モータ12の実3相電流Iu,Iv,Iwを仮想モータ60を用いて推定する。   By the way, in some embodiments described later, the actual motor state detection unit 15 includes a current sensor that detects actual three-phase currents Iu, Iv, and Iw of the actual motor 12, or the actual three-phase of the actual motor 12. Although it has a voltage sensor that detects the voltages Vu, Vv, and Vw, in this embodiment, it does not have at least a current sensor. Instead, the virtual motor calculation unit 50 described later uses a real three-phase current of the real motor 12. Iu, Iv, and Iw are estimated using the virtual motor 60.

実インバータ/パワーアンプ14は、実モータ12に電気エネルギーを供給する実インバータまたは実パワーアンプを有するように構成される。実モータ12に供給される電気エネルギーは、実モータ12が3相(U相、V相、W相)の巻線を有する場合、端子電圧Vu,Vv,Vwである。   The real inverter / power amplifier 14 is configured to have a real inverter or a real power amplifier that supplies electric energy to the real 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に供給する。   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.

外部から実インバータ/パワーアンプ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を制御するために、プロセッサ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は、図3に示すように、仮想モータ60を主体として構成され、その仮想モータ60を用いることにより、実モータ12の作動状態を計算する。仮想モータ60は、仮想モータ制御部64から制御信号が入力されると、実モータ12を模擬する解析プログラムを演算回路42(図1参照)に実行させることにより、前記入力された制御信号と同じ制御信号が実モータ12に出力された場合にその制御信号に応答して実モータ12によって実現される作動状態を推定するための計算を行う。すなわち、仮想モータ計算部50は、演算回路42により、高速演算可能であるように構成されているのである。   A virtual motor calculator 50 is realized by the arithmetic circuit 42. As shown in FIG. 3, the virtual motor calculation unit 50 is configured mainly with the virtual motor 60, and calculates the operating state of the real motor 12 by using the virtual motor 60. When the virtual motor 60 receives a control signal from the virtual motor control unit 64, the virtual motor 60 causes the arithmetic circuit 42 (see FIG. 1) to execute an analysis program for simulating the real motor 12, thereby the same as the input control signal. When a control signal is output to the actual motor 12, a calculation for estimating an operating state realized by the actual motor 12 is performed in response to the control signal. That is, the virtual motor calculation unit 50 is configured to be capable of high-speed calculation by the calculation circuit 42.

前記「背景技術」の欄において詳述したように、従来の技術では、仮想モータ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のうち、仮想モータ計算部50を構成する部分が、モータ制御装置10を構成し、その仮想モータ計算部50のうち、仮想モータ60を除く部分が、モータ制御装置10のうちの「制御部」を構成している。   In the present embodiment, the portion of the system 11 that constitutes the virtual motor calculation unit 50 constitutes the motor control device 10, and the portion of the virtual motor calculation unit 50 that excludes the virtual motor 60 is the motor control device. 10 of “control units”.

ここで、一般的なモータの入出力特性を説明するに、図4に示すように、3相巻線のモータの入出力特性は、一般に、電圧方程式(電圧電流方程式)によって近似的に記述できることが既に知られている。この事実によれば、その電圧方程式を解くことにより、各相ごとの端子電圧を表すモータ電圧ベクトルv(=[vu,vv,vw])から、各相ごとの相電流を表すモータ電流ベクトルi(=[iu,iv,iw])を計算することができる。   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 solving the voltage equation, from the motor voltage vector v (= [vu, vv, vw]) representing the terminal voltage for each phase, the motor current vector i representing the phase current for each phase. (= [Iu, iv, iw]) 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])として表現される。   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]).

インダクタンス行列は、各要素L,Mが、モータの電流と角度(位置、位相)との少なくとも一方に依存するテーブルとして表現され、また、電機子鎖交磁束ベクトルφも、各要素が、モータの電流と角度(位置、位相)との少なくとも一方に依存するテーブルとして表現される。それらテーブルにより、前記電圧方程式と協働して、モータの非線形特性を、モータの駆動周波数全域にわたって表現することができる。   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の各相ごとの端子電圧を表す仮想モータ電圧ベクトルV*(=[Vu*,Vv*,Vw*]であって、図4に示すモータ電圧ベクトルv(=[vu,vv,vw]に相当する)から、仮想モータ60の各相ごとの相電流を表す仮想モータ電流ベクトルI*(=[Iu*,Iv*,Iw*]であって、図4に示すモータ電流ベクトルi(=[iu,iv,iw])に相当する)を計算する。   The voltage equation shown in FIG. 4 is also true for the real motor 12, and therefore the virtual motor 60 represents the terminal voltage for each phase of the virtual motor 60 as shown in FIG. 3 by solving the voltage equation. The virtual motor voltage vector V * (= [Vu *, Vv *, Vw *], which corresponds to the motor voltage vector v (= [vu, vv, vw]) shown in FIG. A virtual motor current vector I * (= [Iu *, Iv *, Iw *] representing a phase current for each phase, which corresponds to the motor current vector i (= [iu, iv, iw]) shown in FIG. ).

したがって、本実施形態によれば、仮想モータ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.

仮想モータ60が採用する前記モータモデルは、それの電気系を記述する前記電圧方程式に加えて、それの磁気系を記述するフレミング方程式と、それの機械系を記述する運動方程式(仮想ロータ軸周りのモーメントのつりあいを記述する)とを記述する。   The motor model employed by the virtual motor 60 includes a Fleming equation describing its magnetic system and a motion equation describing its mechanical system (around the virtual rotor axis) in addition to the voltage equation describing its electrical system. Describe the balance of moments).

フレミング方程式は、フレミングの法則に従い、仮想モータ電流ベクトルI*と仮想電機子鎖交磁束ベクトルφ*とから、仮想モータ60に発生する仮想トルクTe*を計算する。運動方程式は、仮想発生トルクTe*と、仮想負荷トルクTm*と、仮想電機子イナーシャJ*と、仮想減衰係数F*とから、仮想モータ速度ωm*を計算し、さらに、それを時間積分することにより、仮想モータ位置θm*を計算する。   The Fleming equation calculates the virtual torque Te * generated in the virtual motor 60 from the virtual motor current vector I * and the virtual armature flux linkage vector φ * according to Fleming's law. The equation of motion calculates a virtual motor speed ωm * from a virtual generated torque Te *, a virtual load torque Tm *, a virtual armature inertia J *, and a virtual damping coefficient F *, and further integrates it over time. Thus, the virtual motor position θm * is calculated.

実モータ12は、前記ロータを含む可動部材が質量(イナーシャ)や抵抗を有するなどの理由により、応答遅れを有するが、仮想モータ60は、応答遅れを実質的に有しない。その結果、それら実モータ12と仮想モータ60とに同時に同じ制御信号が入力される状況を想定すると、その制御信号に対して実モータ12が応答するタイミングより早いタイミングで、仮想モータ60が応答する。   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, assuming that the same control signal is simultaneously input to the real motor 12 and the virtual motor 60, the virtual motor 60 responds at a timing earlier than the timing at which the real motor 12 responds to the control signal. .

したがって、ある制御目標値に基づき、ある時刻t(i)に、制御信号を実モータ12に供給することが必要である場合に、その供給に先立ち、その制御信号と同じ制御信号(この段落および次の段落において、仮想モータ60に供給される制御信号を「X」を付して表記する)を仮想モータ60のみに供給すれば、その時刻t(i)が到来する前に、その制御信号Xに対して仮想モータ60の応答が終了するように仮想モータ60を作動させることが可能である。   Accordingly, when it is necessary to supply a control signal to the actual motor 12 at a certain time t (i) based on a certain control target value, prior to the supply, the same control signal as this control signal (this paragraph and In the next paragraph, if the control signal supplied to the virtual motor 60 is indicated by adding “X”) to the virtual motor 60 only, the control signal is received before the time t (i) arrives. It is possible to operate the virtual motor 60 so that the response of the virtual motor 60 to X ends.

よって、そのときの仮想モータ60の作動状態と今回の制御目標値との関係から、制御信号Xを補正すること(例えば、本実施形態における後述のフィードバック制御や位相遅れ補償)を、時刻t(i)に先立って行うことが可能となる。したがって、時刻t(i)に先立ち、実モータ12に供給すべき制御信号を、その実モータ12の入出力特性との関係において最適化し、その最適化された制御信号を、時刻t(i)に実モータ12に供給することが可能である。   Therefore, correcting the control signal X based on the relationship between the operating state of the virtual motor 60 at this time and the current control target value (for example, feedback control and phase delay compensation described later in the present embodiment) is performed at time t ( This can be done prior to i). Therefore, prior to time t (i), the control signal to be supplied to the real motor 12 is optimized in relation to the input / output characteristics of the real motor 12, and the optimized control signal is sent to time t (i). The actual motor 12 can be supplied.

図3に示すように、仮想モータ計算部50は、仮想モータ60の作動状態を検出する仮想モータ状態検出部62をさらに備えている。   As shown in FIG. 3, the virtual motor calculation unit 50 further includes a virtual motor state detection unit 62 that detects the operating state of the virtual motor 60.

仮想モータ状態検出部62は、仮想モータ60の作動状態として、仮想モータ60の計算によって取得された仮想モータ電流ベクトルI*すなわち仮想3相実電流Iu*,Iv*,Iw*を検出する。   The virtual motor state detection unit 62 detects the virtual motor current vector I * acquired by the calculation of the virtual motor 60, that is, the virtual three-phase actual currents Iu *, Iv *, and Iw *, as the operating state of the virtual motor 60.

前述のように、仮想モータ60は仮想3相実電流信号Iu*,Iv*,Iw*を出力するように構成されているため、仮想モータ状態検出部62は、仮想3相実電流Iu*,Iv*,Iw*を検出して仮想モータ制御部64に供給することが必要である場合には、仮想モータ60から出力された仮想3相実電流信号Iu*,Iv*,Iw*をそのまま仮想モータ制御部64に転送すればよい。したがって、仮想モータ状態検出部62は、実モータ12にとって電流センサとして機能することになる。   As described above, since the virtual motor 60 is configured to output the virtual three-phase actual current signals Iu *, Iv *, and Iw *, the virtual motor state detection unit 62 is configured to output the virtual three-phase actual current Iu *, When it is necessary to detect Iv *, Iw * and supply it to the virtual motor control unit 64, the virtual three-phase actual current signals Iu *, Iv *, Iw * output from the virtual motor 60 are virtually What is necessary is just to transfer to the motor control part 64. Therefore, the virtual motor state detection unit 62 functions as a current sensor for the real motor 12.

よって、本実施形態においては、仮想モータ状態検出部62が、前記「実モータ作動特性出力部」の一例を構成し、また、前記「実モータ電流取得部」の一例を構成する。   Therefore, in the present embodiment, the virtual motor state detection unit 62 configures an example of the “real motor operation characteristic output unit” and configures an example of the “real motor current acquisition unit”.

図1に示すように、仮想モータ状態検出部62によって取得された仮想3相実電流信号Iu*,Iv*,Iw*は、実モータ12の制御のため、実コントローラ13に供給される。実コントローラ13にとっては、それら供給された仮想3相実電流信号Iu*,Iv*,Iw*は目標電流信号として機能する。この実コントローラ13は、それら供給された仮想3相実電流信号Iu*,Iv*,Iw*が実モータ12によって実現されるように前述のゲート信号(実モータ制御信号)Gu,Gv,Gw,Gx,Gy,Gzを生成して実インバータ/パワーアンプ14に供給する。   As shown in FIG. 1, the virtual three-phase actual current signals Iu *, Iv *, and Iw * acquired by the virtual motor state detection unit 62 are supplied to the real controller 13 for controlling the real motor 12. For the real controller 13, the supplied virtual three-phase real current signals Iu *, Iv *, Iw * function as target current signals. The real controller 13 is configured so that the supplied virtual three-phase real current signals Iu *, Iv *, Iw * are realized by the real motor 12, and the gate signals (real motor control signals) Gu, Gv, Gw, Gx, Gy, and Gz are generated and supplied to the actual inverter / power amplifier 14.

図3に示すように、モータ制御装置10は、ディスプレイ66を備えている。このディスプレイ66は、例えば、液晶式であり、情報を可視化して表示することが可能な画面を備えている。モータ制御装置10は、必要に応じ、仮想モータ状態検出部62によって取得された仮想3相実電流値Iu*,Iv*,Iw*を、実モータ12の実3相実電流値Iu,Iv,Iwの推定値として、ディスプレイ66の画面上に表示することが可能である。   As shown in FIG. 3, the motor control device 10 includes a display 66. The display 66 is, for example, a liquid crystal type, and includes a screen that can visualize and display information. The motor control device 10 converts the virtual three-phase actual current values Iu *, Iv *, and Iw * acquired by the virtual motor state detection unit 62 into the actual three-phase actual current values Iu, Iv, The estimated value of Iw can be displayed on the screen of the display 66.

図3に示すように、仮想モータ計算部50は、仮想モータ60を制御するために、前記目標信号と、実モータ状態検出部15から出力された実モータ位置θmと、仮想モータ状態検出部62から出力された仮想モータ状態信号(例えば、仮想3相実電流Iu*,Iv*,Iw*)とに基づき、複数の制御信号(ゲート信号Gu,Gv,Gw,Gx,Gy,Gw)を生成する仮想モータ制御部64を備えている。仮想モータ制御部64は、その生成された制御信号(ゲート信号)Gu,Gv,Gw,Gx,Gy,Gwを、仮想モータ60にとっての仮想ドライバである仮想PWMインバータ90に出力する。   As shown in FIG. 3, the virtual motor calculation unit 50 controls the virtual motor 60 by using the target signal, the actual motor position θm output from the actual motor state detection unit 15, and the virtual motor state detection unit 62. A plurality of control signals (gate signals Gu, Gv, Gw, Gx, Gy, Gw) are generated based on the virtual motor state signal (for example, virtual three-phase actual currents Iu *, Iv *, Iw *) output from A virtual motor control unit 64 is provided. The virtual motor control unit 64 outputs the generated control signals (gate signals) Gu, Gv, Gw, Gx, Gy, Gw to the virtual PWM inverter 90 that is a virtual driver for the virtual motor 60.

具体的には、後に図5を参照しつつ詳述するが、仮想モータ制御部64は、前記目標信号に基づいて目標電流信号(仮想モータ60の制御目標値を表す後述の仮想dq軸指令電流Id*,Iq*)を暫定的に生成し、その暫定的な目標電流信号に対して前記仮想モータ状態信号(仮想モータ60から出力された仮想3相実電流Iu,Iv,Iwから座標変換された仮想dq軸実電流Id,Iq)をフィードバックすることにより、暫定的な目標電流信号を訂正して最終的な目標電流信号を生成する。さらに、仮想モータ制御部64は、モータ電流のベクトル制御を行い、そのため、dq座標系とUVW座標系との間で座標変換を行い、その座標変換を、実モータ12の回転角θmのもとに行う。   Specifically, as will be described in detail later with reference to FIG. 5, the virtual motor control unit 64 generates a target current signal based on the target signal (a virtual dq axis command current described later representing a control target value of the virtual motor 60). Id *, Iq *) is tentatively generated, and the virtual target state current signal is subjected to coordinate conversion from the virtual motor state signal (virtual three-phase real currents Iu, Iv, Iw output from the virtual motor 60). The virtual dq-axis actual currents Id and Iq) are fed back to correct the provisional target current signal and generate a final target current signal. Furthermore, the virtual motor control unit 64 performs vector control of the motor current, and therefore performs coordinate conversion between the dq coordinate system and the UVW coordinate system, and the coordinate conversion is performed based on the rotation angle θm of the real motor 12. To do.

一方、本実施形態においては、同じ制御信号が実モータ12と仮想モータ60とに供給されるようにはなっていないが、制御系の特性上、結果的には、実質的に共通する制御信号が実モータ12と仮想モータ60とに供給される。さらに、上述のように、仮想モータ制御部64は、モータ電流のベクトル制御のための座標変換を実モータ12の回転角θmのもとに行う。よって、実モータ12と仮想モータ60とが、一緒に、かつ、ロータ位置に関して互いに実質的に同期するように、駆動されることになる。   On the other hand, in the present embodiment, the same control signal is not supplied to the real motor 12 and the virtual motor 60, but as a result, the control signal is substantially common due to the characteristics of the control system. Is supplied to the real motor 12 and the virtual motor 60. Further, as described above, the virtual motor control unit 64 performs coordinate conversion for vector control of the motor current based on the rotation angle θm of the real motor 12. Thus, the real motor 12 and the virtual motor 60 are driven together and substantially synchronized with each other with respect to the rotor position.

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

図6(a)に例示するように、制御目標値(前記目標信号によって表される)Tは、仮想モータ制御部64に入力周期Tin(例えば、数10μsec)で反復的に入力される。仮想モータ制御部64は、1サイクル分の計算を入力周期Tinより短い仮想モータ計算周期Tv(例えば、1μsec)で反復的に行い、それにより、制御目標値Tの1回の入力サイクルの間、複数サイクル分の計算を行う。本実施形態においては、入力周期Tinが、仮想モータ計算周期Tvより長い長さを有するように設定されているが、これに代えて、仮想モータ計算周期Tvと実質的に同じ長さを有するように設定することが可能である。 As illustrated in FIG. 6A, the control target value (represented by the target signal) T 0 is repeatedly input to the virtual motor control unit 64 at an input cycle Tin (for example, several tens of μsec). The virtual motor control unit 64 repeatedly performs a 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*であり、電圧については、3相指令電圧信号Vu*,Vv*,Vw*やdq軸指令電圧信号Vd*,Vq*)としたり、それら複数種類の指令値からの任意の組合せとすることが可能である。 Here, the “control target value T 0 ” is, for example, a command value of a physical quantity related to the output from the actual motor 12 (for example, a physical quantity related to the position of the rotor of the actual motor 12 (for example, position, speed, acceleration)). A command value or a physical value (for example, a command value of a torque or axial force) relating to the force acting on the rotor of the actual motor 12, or a command value of an electrical or magnetic physical value generated in the actual motor 12 (for example, The current is a three-phase command current signal Iu *, Iv *, Iw * or a dq-axis command current signal Id *, Iq *, and the voltage is a three-phase command voltage signal Vu *, Vv *, Vw * or dq. Axis command voltage signals Vd *, Vq *) or any combination of these plural types of command values.

概略的に説明するに、図6(b)に例示するように、仮想モータ制御部64は、1サイクル分の計算を仮想モータ計算周期Tvで反復的に行い、各回の計算サイクルにおいては、制御目標値T(i)と、実モータ位置θm(t)と、仮想モータ電流Iu*,Iv*,Iw*であって仮想モータ60の前回の計算によって取得されたもの(最新の仮想モータ電流Iu*,Iv*,Iw*)とに基づき、前記制御信号Gu−Gzを決定し、その決定された制御信号Gu−Gzを仮想モータ60に出力する。 Briefly, as illustrated in FIG. 6B, the virtual motor control unit 64 repeatedly performs calculation for one cycle in the virtual motor calculation cycle Tv, and in each calculation cycle, control is performed. Target value T 0 (i), actual motor position θm (t), virtual motor currents Iu *, Iv *, Iw * acquired by the previous calculation of virtual motor 60 (latest virtual motor current The control signal Gu-Gz is determined based on (Iu *, Iv *, Iw *), and the determined control signal Gu-Gz is output to the virtual motor 60.

具体的に説明するに、図6(b)に例示するように、仮想モータ制御部64は、各回の計算サイクルにおいて、まず、最新の制御目標値T(t)と、最新の実モータ位置θm(t)と、最新の仮想モータ電流Iu*,Iv*,Iw*であって仮想モータ60の前回の計算によって取得されたものとを取り込む。この処理を、図6(b)においては、「θm(t)入力」で表す。 Specifically, as illustrated in FIG. 6B, the virtual motor control unit 64 first calculates the latest control target value T 0 (t) and the latest actual motor position in each calculation cycle. θm (t) and the latest virtual motor currents Iu *, Iv *, Iw *, which are obtained by the previous calculation of the virtual motor 60, are captured. This processing is represented by “θm (t) input” in FIG.

次に、それら取り込まれた制御目標値T(t)、実モータ位置θm(t)および仮想モータ電流Iu*,Iv*,Iw*に基づき、仮想モータ60のための仮制御信号を決定する。この処理を、図6(b)においては、「θ(t)=θm(t)同期」で表す。 Next, a temporary control signal for the virtual motor 60 is determined based on the acquired control target value T 0 (t), actual motor position θm (t), and virtual motor currents Iu *, Iv *, Iw *. . This process is represented by “θ (t) = θm (t) synchronization” in FIG.

その後、その決定された仮制御信号に対して、実モータ12の作動状態の、仮想モータ計算周期Tvの間における推定変化量Δθに基づく位相遅れ補償を行い、それにより、仮想モータ60のための最終制御信号Gu−Gzを取得する。この処理を、図6(b)においては、「θ(t)+Δθ制御」で表す。   Thereafter, phase delay compensation is performed on the determined temporary control signal based on the estimated change amount Δθ of the operating state of the real motor 12 during the virtual motor calculation cycle Tv, thereby The final control signal Gu-Gz is acquired. This process is represented by “θ (t) + Δθ control” in FIG.

続いて、その取得された最終制御信号Gu−Gzを仮想モータ60に出力する。この処理を、図6(b)においては、「Gu〜Gz出力」で表す。各回の計算サイクルにおいて、仮想モータ60には、制御信号が1回しか入力されないため、仮想モータ60は、1回しか作動しない。   Subsequently, the acquired final control signal Gu-Gz is output to the virtual motor 60. This process is represented by “Gu to Gz output” in FIG. In each calculation cycle, since the control signal is input to the virtual motor 60 only once, the virtual motor 60 operates only once.

最終制御信号Gu−Gzが仮想モータ60に出力するタイミングと実質的に同じタイミングで、その最終制御信号Gu−Gzを生成するために用いられた最新の仮想モータ電流Iu*,Iv*,Iw*が、図1に示す実コントローラ13に供給される。実コントローラ13は、その供給された仮想モータ電流Iu*,Iv*,Iw*に基づき、実インバータ/パワーアンプ14のための制御信号Gu−Gzを生成して実インバータ/パワーアンプ14に供給する。   The latest virtual motor currents Iu *, Iv *, Iw * used to generate the final control signal Gu-Gz at substantially the same timing as the final control signal Gu-Gz is output to the virtual motor 60. Is supplied to the actual controller 13 shown in FIG. The real controller 13 generates a control signal Gu-Gz for the real inverter / power amplifier 14 based on the supplied virtual motor currents Iu *, Iv *, Iw * and supplies the control signal Gu-Gz to the real inverter / power amplifier 14. .

したがって、仮想モータ50への最新の制御信号の入力と、実モータ12への最新の制御信号の入力とは、実質的に同じタイミングで行われる。しかし、実モータ12は、仮想モータ60より応答性が低いため、最新の制御信号によって仮想モータ60の位置θがθ(t)からθ(t+1)(=θ(t)+Δθ)に変化するタイミングの方が、最新の制御信号によって実モータ12の位置θがθm(t)からθm(t+1)(=θm(t)+Δθ)に変化するタイミングより早くなる傾向がある。   Therefore, the latest control signal input to the virtual motor 50 and the latest control signal input to the actual motor 12 are performed at substantially the same timing. However, since the actual motor 12 is less responsive than the virtual motor 60, the position θ of the virtual motor 60 changes from θ (t) to θ (t + 1) (= θ (t) + Δθ) by the latest control signal. This timing tends to be earlier than the timing at which the position θ of the actual motor 12 changes from θm (t) to θm (t + 1) (= θm (t) + Δθ) by the latest control signal.

次に、図5(a)を参照することにより、仮想モータ制御部64の構成の一例を具体的に説明する。ただし、同じ記号が、単独で使用される場合には、仮想モータ60についての実際値または検出値を意味する一方、「*」と組み合わせて使用される場合には、仮想モータ60についての指令値を意味する。   Next, an example of the configuration of the virtual motor control unit 64 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.

概略的に説明するに、仮想モータ制御部64は、各計算サイクルごとに、仮想モータ60の目標電流値を計算するために座標変換を伴うベクトル制御を行い、前記座標変換を実モータ12の実際の回転角すなわち実モータ位置θmを基準にして行い、前記目標信号と、前回の計算サイクルにおいて仮想モータ60から出力された仮想電流値とに基づいて前記制御信号を決定する。   Briefly described, the virtual motor control unit 64 performs vector control with coordinate transformation to calculate the target current value of the virtual motor 60 for each calculation cycle, and performs the coordinate transformation on the actual motor 12. The control signal is determined based on the target signal and the virtual current value output from the virtual motor 60 in the previous calculation cycle.

具体的には、仮想モータ制御部64は、dq座標系(回転直交2軸dq座標系)上において磁束−トルク制御を行う。ここに、「d」は、仮想モータ60の仮想磁束を表し、また、「q」は、仮想モータ60の仮想トルクを表している。そのような制御を実現するために、前記目標信号は、仮想dq軸指令電流Id*,Iq*(仮想d軸指令電流Id*および仮想q軸指令電流Iq*)として表現される。   Specifically, the virtual motor control unit 64 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. In order to realize such control, the target signal is expressed as virtual dq-axis command currents Id *, Iq * (virtual d-axis command current Id * and virtual q-axis command current Iq *).

さらに、仮想モータ制御部64は、仮想d軸指令電流Id*と仮想d軸実電流Idとが入力されると、ベクトル制御(ロータの位置情報を用いて、相電流を3相座標系からdq座標系へ座標変換し、ステータのdq軸電流を制御する)を行う。   Further, when the virtual d-axis command current Id * and the virtual d-axis actual current Id are input, the virtual motor control unit 64 converts the phase current from the three-phase coordinate system to dq using the vector control (rotor position information). The coordinates are converted into a coordinate system and the dq-axis current of the stator is controlled).

仮想モータ制御部64は、UVW−dq座標変換器68を備えている。そのUVW−dq座標変換器68は、前記仮想モータ状態信号すなわち仮想3相実電流Iu,Iv,Iw(図1においては、「Iu*,Iv*,Iw*」で表されている)を、実モータ12の実モータ位置θmのもとで、仮想dq軸実電流Id,Iqに変換する。   The virtual motor control unit 64 includes a UVW-dq coordinate converter 68. The UVW-dq coordinate converter 68 generates the virtual motor state signal, that is, the virtual three-phase actual currents Iu, Iv, Iw (represented by “Iu *, Iv *, Iw *” in FIG. 1), Based on the actual motor position θm of the actual motor 12, it is converted into virtual dq-axis actual currents Id and Iq.

仮想モータ60を実モータ12から切り離して使用する従来の技術では、UVW−dq座標変換器68は、仮想モータ位置θのもとで、仮想3相実電流Iu,Iv,Iwを仮想dq軸実電流Id*,Iq*に変換する。これに対し、本実施形態においては、UVW−dq座標変換器68が、仮想モータ位置θに代えて実モータ位置θmを用いる。   In the conventional technique in which the virtual motor 60 is used separately from the real motor 12, the UVW-dq coordinate converter 68 uses the virtual three-phase real currents Iu, Iv, Iw under the virtual dq axis real under the virtual motor position θ. Conversion to currents Id * and Iq *. On the other hand, in this embodiment, the UVW-dq coordinate converter 68 uses the actual motor position θm instead of the virtual motor position θ.

その結果、本実施形態によれば、仮想dq軸実電流Id*,Iq*が、仮想モータ位置θと実モータ位置θmとが互いに一致するように、取得されることになる。   As a result, according to the present embodiment, the virtual dq-axis actual currents Id * and Iq * are acquired so that the virtual motor position θ and the actual motor position θm coincide with each other.

図5(a)に示すように、仮想モータ制御部64は、仮想dq軸実電流Id,Iq(仮想モータ作動状態の推定値すなわち仮想モータ作動状態の前回計算値の一例)をフィードバックすることにより、その仮想dq軸実電流Id,Iqと、仮想dq軸指令電流Id*,Iq*との差が0に近づくように、仮想dq軸指令電流Id*,Iq*を補正する。   As shown in FIG. 5A, the virtual motor control unit 64 feeds back the virtual dq-axis actual currents Id and Iq (an estimated value of the virtual motor operating state, that is, an example of the previous calculated value of the virtual motor operating state). The virtual dq-axis command currents Id * and Iq * are corrected so that the difference between the virtual dq-axis actual currents Id and Iq and the virtual dq-axis command currents Id * and Iq * approaches zero.

仮想モータ制御部64は、補正された仮想d軸指令電流Id*に対応する仮想d軸指令電圧Vd*を計算する電流制御器70と、補正された仮想q軸指令電流Iq*に対応する仮想q軸指令電圧Vq*を計算する電流制御器72とを備えている。   The virtual motor control unit 64 calculates a virtual d-axis command voltage Vd * corresponding to the corrected virtual d-axis command current Id *, and a virtual controller corresponding to the corrected virtual q-axis command current Iq *. and a current controller 72 for calculating the q-axis command voltage Vq *.

図5(a)に示すように、仮想モータ制御部64は、非干渉化制御器74をさらに備えている。その非干渉化制御器74は、実モータ状態検出部15(図1参照)から供給された実モータ状態信号(実モータ位置θm)のもとで、UVW−dq座標変換器68から出力された仮想dq軸実電流Id,Iqに基づき、電流制御器70および72からそれぞれ出力された仮想dq軸指令電圧Vd*,Vq*を補正する。   As shown in FIG. 5A, the virtual motor control unit 64 further includes a non-interacting controller 74. The non-interference controller 74 is output from the UVW-dq coordinate converter 68 based on the actual motor state signal (actual motor position θm) supplied from the actual motor state detector 15 (see FIG. 1). Based on the virtual dq-axis actual currents Id and Iq, the virtual dq-axis command voltages Vd * and Vq * output from the current controllers 70 and 72 are corrected.

仮想モータ60を実モータ12から切り離して使用する従来の技術では、非干渉化制御器74は、仮想モータ位置θのもとで、仮想dq軸実電流Id,Iqに基づき、仮想dq軸指令電圧Vd*,Vq*を補正する。これに対し、本実施形態においては、非干渉化制御器74が、仮想モータ位置θに代えて実モータ位置θmを用いる。   In the conventional technique that uses the virtual motor 60 separated from the real motor 12, the non-interacting controller 74 uses the virtual dq-axis actual voltage Id, Iq based on the virtual dq-axis actual current Id and Iq under the virtual motor position θ. Correct Vd * and Vq *. On the other hand, in this embodiment, the non-interacting controller 74 uses the actual motor position θm instead of the virtual motor position θ.

その結果、本実施形態によれば、仮想dq軸指令電圧Vd*,Vq*が、仮想モータ位置θと実モータ位置θmとが互いに一致するように、補正されることになる。   As a result, according to the present embodiment, the virtual dq axis command voltages Vd * and Vq * are corrected so that the virtual motor position θ and the actual motor position θm coincide with each other.

図5(a)に示すように、仮想モータ制御部64は、dq−UVW座標変換器76をさらに備えている。そのdq−UVW座標変換器76は、実モータ位置θmのもとで、仮想dq軸指令電圧Vd*,Vq*を仮想3相指令電圧Vu*,Vv*,Vw*に変換する。   As shown in FIG. 5A, the virtual motor control unit 64 further includes a dq-UVW coordinate converter 76. The dq-UVW coordinate converter 76 converts the virtual dq axis command voltages Vd * and Vq * into virtual three-phase command voltages Vu *, Vv * and Vw * under the actual motor position θm.

仮想モータ60を実モータ12から切り離して使用する従来の技術では、dq−UVW座標変換器76は、仮想モータ位置θのもとで、仮想dq軸指令電圧Vd*,Vq*を仮想3相指令電圧Vu*,Vv*,Vw*に変換する。これに対し、本実施形態においては、dq−UVW座標変換器76が、仮想モータ位置θに代えて実モータ位置θmを用いる。   In the conventional technique in which the virtual motor 60 is used separately from the real motor 12, the dq-UVW coordinate converter 76 uses the virtual dq axis command voltages Vd * and Vq * based on the virtual motor position θ as a virtual three-phase command. The voltage is converted to Vu *, Vv *, Vw *. On the other hand, in this embodiment, the dq-UVW coordinate converter 76 uses the actual motor position θm instead of the virtual motor position θ.

その結果、本実施形態によれば、仮想3相指令電圧Vu*,Vv*,Vw*が、仮想モータ位置θと実モータ位置θmとが互いに一致するように、取得されることになる。   As a result, according to the present embodiment, the virtual three-phase command voltages Vu *, Vv *, and Vw * are acquired so that the virtual motor position θ and the actual motor position θm coincide with each other.

このように、本実施形態においては、前記制御信号を生成するために、UVW−dq座標変換器68、非干渉化制御器74およびdq−UVW座標変換器76が、仮想モータ位置θに代えて実モータ位置θmを参照する。   Thus, in this embodiment, in order to generate the control signal, the UVW-dq coordinate converter 68, the non-interacting controller 74, and the dq-UVW coordinate converter 76 are replaced with the virtual motor position θ. Refer to the actual motor position θm.

しかし、仮想モータ60が実モータ12の入出力特性を十分に正確に再現するように教示される場合には、仮想モータ位置θと実モータ位置θmとが互いに十分に一致することになる。この場合には、UVW−dq座標変換器68、非干渉化制御器74およびdq−UVW座標変換器76が実モータ位置θmに代えて仮想モータ位置θを参照したとしても、前記制御信号が、仮想モータ位置θと実モータ位置θ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 UVW-dq coordinate converter 68, the non-interacting controller 74, and the dq-UVW coordinate converter 76 refer to the virtual motor position θ instead of the actual motor position θm, the control signal is The virtual motor position θ and the actual motor position θm are acquired so as to coincide with each other.

図5(a)に示すように、仮想モータ制御部64は、前記位相遅れ補償を行うために、Δθ推定器80をさらに備えている。   As shown in FIG. 5A, the virtual motor control unit 64 further includes a Δθ estimator 80 for performing the phase delay compensation.

図6(b)に例示するように、仮想モータ計算周期Tvの長さを有する1計算サイクルの間に、次回の制御信号を決定するために仮想モータ60を作動させる。その間、実モータ位置θmが不変であれば、その次回の制御信号を決定するために用いられた実モータ位置θm(t)と、その決定された次回の制御信号が実モータ12に入力され始めるとき(または、その制御信号に対する実モータ12の応答が完了するとき)の実モータ位置θm(t+1)とが互いに一致するため、前記制御信号の誤差が発生しない。   As illustrated in FIG. 6B, the virtual motor 60 is operated to determine the next control signal during one calculation cycle having the length of the virtual motor calculation period Tv. 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.

そこで、本実施形態においては、Δθ推定器80が、実モータ位置θmが入力された時期と、次回の制御信号が実モータ12に入力され始める時期(または、その制御信号に対する実モータ12の応答が完了する時期)との間の期間に、実モータ位置θmが変化することが予想される変化量Δθを推定する。   Therefore, in the present embodiment, the Δθ estimator 80 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).

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

図5(a)に示すように、dq−UVW座標変換器76は、そのように補正された実モータ位置θmのもとで、仮想dq軸指令電圧Vd*,Vq*を仮想3相指令電圧Vu*,Vv*,Vw*に変換し、その結果、それら仮想3相指令電圧Vu*,Vv*,Vw*は、変化量Δθを見込んだ値として取得されることになる。これにより、前記制御信号が、実モータ位置θmの将来の変化を予測して決定されるため、前述の位相遅れ補償がフィードフォワード制御の一種として行われることになる。   As shown in FIG. 5A, the dq-UVW coordinate converter 76 converts the virtual dq axis command voltages Vd * and Vq * to the virtual three-phase command voltage under the actual motor position θm corrected as described above. As a result, the virtual three-phase command voltages Vu *, Vv *, and Vw * are acquired as values that allow for the amount of change Δθ. As a result, the control signal is determined by predicting a future change in the actual motor position θm, so that the above-described phase delay compensation is performed as a kind of feedforward control.

図3に示すように、仮想モータ計算部50は、前記制御信号が入力される仮想PWMインバータ90をさらに備えている。前記制御信号は、複数のゲート信号Gu,Gv,Gw,Gx,Gy,Gwであり、それらゲート信号のうち、ゲート信号Gu,Gv,Gwは、仮想PWMインバータ90に属するUVW各相の上アーム・スイッチング素子(図2に示す3つの上アーム・スイッチング素子24に相当する)にそれぞれ供給されるパルス信号であり、これに対し、ゲート信号Gx,Gy,Gwは、仮想PWMインバータ90に属するUVW各相の下アーム・スイッチング素子(図2に示す3つの下アーム・スイッチング素子24に相当する)にそれぞれ供給されるパルス信号である。このことは、実インバータ16についても該当する。   As shown in FIG. 3, the virtual motor calculation unit 50 further includes a virtual PWM inverter 90 to which the control signal is input. The control signals are a plurality of gate signals Gu, Gv, Gw, Gx, Gy, Gw, and among these gate signals, the gate signals Gu, Gv, Gw are upper arms of each UVW phase belonging to the virtual PWM inverter 90. A pulse signal supplied to each of the switching elements (corresponding to the three upper arm switching elements 24 shown in FIG. 2), whereas the gate signals Gx, Gy, Gw are UVWs belonging to the virtual PWM inverter 90 These are pulse signals respectively supplied to the lower arm switching elements (corresponding to the three lower arm switching elements 24 shown in FIG. 2) of each phase. This also applies to the actual inverter 16.

各ゲート信号Gu,Gv,Gw,Gx,Gy,Gwは、パルス信号であり、各デューティ比Du,Dv,Dw,Dx,Dy,Dzを有する。また、仮想PWMインバータ90には、直流電圧Vdcが仮想的に印加される。   Each gate signal Gu, Gv, Gw, Gx, Gy, Gw is a pulse signal, and has each duty ratio Du, Dv, Dw, Dx, Dy, Dz. The virtual PWM inverter 90 is virtually applied with the DC voltage Vdc.

図7に示すように、仮想モータ60に各相ごとに入力される仮想モータ端子電圧Vu,Vv,Vwは、3つの式によって記述される。よって、仮想PWMインバータ90は、各ゲートに入力されるゲート信号Gu,Gv,Gw,Gx,Gy,Gwを、所定のサンプリング周期(例えば、10ns)でサンプリングし、そのサンプリング結果を用いてデューティ比Du,Dv,Dw,Dx,Dy,Dzを計算する。各デューティ比Dは、例えば、各パルスのオン時間Tonの長さをパルス周期(=Ton+Toff)で割り算することによって計算することが可能である。仮想PWMインバータ90は、デューティ比Du,Dv,Dw,Dx,Dy,Dzの計算値(0以上1以下の数値)と、直流電圧Vdcの値(例えば、固定値)とを前述の3つの式に代入することにより、仮想モータ端子電圧Vu,Vv,Vwを計算する。   As shown in FIG. 7, the virtual motor terminal voltages Vu, Vv, Vw input to the virtual motor 60 for each phase are described by three equations. Therefore, the virtual PWM inverter 90 samples the gate signals Gu, Gv, Gw, Gx, Gy, Gw input to each gate at a predetermined sampling period (for example, 10 ns), and uses the sampling result to determine the duty ratio. Du, Dv, Dw, Dx, Dy, Dz are calculated. Each duty ratio D can be calculated, for example, by dividing the length of the on-time Ton of each pulse by the pulse period (= Ton + Toff). The virtual PWM inverter 90 calculates the calculated values of the duty ratios Du, Dv, Dw, Dx, Dy, Dz (numerical values from 0 to 1) and the value of the DC voltage Vdc (for example, a fixed value) from the above three formulas. By substituting into, virtual motor terminal voltages Vu, Vv, and Vw are calculated.

図8には、モータ制御装置10の作動の一例がフローチャートで表されている。このフローチャートは、CPU44によって実行されるステップS1と、演算回路42によって反復的に実行されるステップS2−S11とを表している。それらステップS2−S11は、1回ずつ実行されることにより、一回の計算サイクルを達成する。図8は、モータ制御装置10を作動させるためにプロセッサ40によって実行される仮想モータ制御プログラムを概略的にフローチャートで表している。   FIG. 8 is a flowchart illustrating an example of the operation of the motor control device 10. This flowchart represents step S1 executed by the CPU 44 and steps S2-S11 executed repeatedly by the arithmetic circuit 42. These steps S2-S11 are executed once to achieve one calculation cycle. FIG. 8 schematically shows a virtual motor control program executed by the processor 40 for operating the motor control device 10 in a flowchart.

この仮想モータ制御プログラムが実行されると、まず、ステップS1において、初期化が行われる。具体的には、例えば、実モータ状態検出部15により、初期の実モータ位置θinitが取得され、同じ位置が、仮想モータ60の初期の仮想モータ位置θinitとされる。   When this virtual motor control program is executed, first, initialization is performed in step S1. Specifically, for example, the actual motor state detection unit 15 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.

次に、ステップS2が入力周期Tin(例えば、数10μsec)が経過するごとに1回ずつ実行される。このステップS2においては、今回の目標信号(制御目標値T)が入力される。これに対し、ステップS3−S11は、仮想モータ計算周期Tvが経過するごとにそれぞれ1回ずつ実行される。 Next, step S2 is executed once every time an input cycle Tin (for example, several tens of μsec) elapses. In this step S2, the current target signal (control target value T 0 ) is input. On the other hand, steps S3-S11 are executed once each time the virtual motor calculation cycle Tv elapses.

続いて、ステップS3において、データ入力が行われ、具体的には、仮想モータ状態検出部62からは仮想モータ電流信号Iu*,Iv*,Iw*が、実モータ状態検出部15からは実モータ位置信号θmがそれぞれ入力される。   Subsequently, in step S3, data is input. Specifically, the virtual motor current signals Iu *, Iv *, and Iw * are output from the virtual motor state detection unit 62, and the actual motor state detection unit 15 outputs the actual motor. Each of the position signals θm is input.

その後、ステップS4−S6において、仮想モータ制御部64が作動させられる。具体的には、まず、ステップS4において、UVW−dq座標変換器68、電流制御器70,72および非干渉化制御器74により、実モータ位置信号θm(補正前の値)を基準にして、仮想モータ60と実モータ12とが、モータ位置(位相)に関して互いに同期するように、仮想dq軸指令電圧信号Vd*,Vq*が生成される。   Thereafter, in steps S4 to S6, the virtual motor control unit 64 is operated. Specifically, first, in step S4, the UVW-dq coordinate converter 68, the current controllers 70 and 72, and the non-interacting controller 74 are used as a reference for the actual motor position signal θm (value before correction). Virtual dq axis command voltage signals Vd * and Vq * are generated so that virtual motor 60 and real motor 12 are synchronized with each other with respect to the motor position (phase).

次に、ステップS5において、Δθ推定器80により、変化量Δθが推定され、その推定された変化量Δθに基づき、実モータ位置θmが補正される。その後、dq−UVW座標変換器76により、その補正された実モータ位置θmのもとで、仮想dq軸指令電圧信号Vd*,Vq*が仮想3相指令電圧信号Vu*,Vv*,Vw*に変換される。   Next, in step S5, the change amount Δθ is estimated by the Δθ estimator 80, and the actual motor position θm is corrected based on the estimated change amount Δθ. Thereafter, the virtual dq-axis command voltage signals Vd *, Vq * are converted into virtual three-phase command voltage signals Vu *, Vv *, Vw * by the dq-UVW coordinate converter 76 under the corrected actual motor position θm. Is converted to

続いて、ステップS6において、PWM信号発生器78により、仮想3相指令電圧信号Vu*,Vv*,Vw*がPWM信号(仮想モータ制御信号)Gu,Gv,Gw,Gx,Gy,Gzに変換される。   In step S6, the PWM signal generator 78 converts the virtual three-phase command voltage signals Vu *, Vv *, Vw * into PWM signals (virtual motor control signals) Gu, Gv, Gw, Gx, Gy, Gz. Is done.

その後、ステップS7において、そのようにして取得されたPWM信号Gu,Gv,Gw,Gx,Gy,Gzが仮想PWMインバータ90に対して出力される。その結果、仮想PWMインバータ90により、仮想モータ電圧信号Vu*,Vv*,Vw*(仮想モータ60の仮想モータ端子電圧Vu,Vv,Vwを表す)が生成される。   Thereafter, in step S7, the PWM signals Gu, Gv, Gw, Gx, Gy, Gz acquired in this way are output to the virtual PWM inverter 90. As a result, the virtual PWM inverter 90 generates virtual motor voltage signals Vu *, Vv *, Vw * (representing virtual motor terminal voltages Vu, Vv, Vw of the virtual motor 60).

続いて、ステップS8において、その生成された仮想モータ電圧信号Vu*,Vv*,Vw*が仮想モータ60に対して出力されることにより、前述のモータモデルを用いることにより、仮想モータ電流信号Iu*,Iv*,Iw*が生成される。   Subsequently, in step S8, the generated virtual motor voltage signals Vu *, Vv *, Vw * are output to the virtual motor 60, whereby the virtual motor current signal Iu is used by using the motor model described above. *, Iv *, and Iw * are generated.

その後、ステップS9において、仮想モータ状態検出部62により、上記生成された仮想モータ電流信号Iu*,Iv*,Iw*が出力される。具体的には、その仮想モータ電流信号Iu*,Iv*,Iw*は、次回の計算サイクルでの計算に備えて、特定のメモリ(図示しない)に一時的に保存される。さらに、同じ仮想モータ電流信号Iu*,Iv*,Iw*は、実コントローラ13に出力され、これにより、実モータ12が制御される。   Thereafter, in step S9, the virtual motor state detection unit 62 outputs the generated virtual motor current signals Iu *, Iv *, Iw *. Specifically, the virtual motor current signals Iu *, Iv *, and Iw * are temporarily stored in a specific memory (not shown) in preparation for calculation in the next calculation cycle. Further, the same virtual motor current signals Iu *, Iv *, and Iw * are output to the real controller 13, thereby controlling the real motor 12.

続いて、ステップS10において、仮想モータ状態検出部62から出力された仮想モータ電流信号Iu*,Iv*,Iw*(各相ごとの仮想モータ電流値)がディスプレイ66の画面上に、各相に関連づけて、かつ、時系列的に、かつ、テーブルまたはグラフという表現形態で表示される。これにより、実モータ12の実モータ電流値Iu,Iv,Iwの時間的推移の推定値が各相ごとに可視化される。   Subsequently, in step S10, the virtual motor current signals Iu *, Iv *, Iw * (virtual motor current values for each phase) output from the virtual motor state detection unit 62 are displayed on the screen of the display 66 for each phase. They are displayed in association with each other and in time series and in the form of a table or graph. Thereby, the estimated value of the temporal transition of the actual motor current values Iu, Iv, and Iw of the actual motor 12 is visualized for each phase.

その後、ステップS11において、システム11の主電源(図示しない)がオフにされたか否かが判定される。その主電源が未だオンである場合には、その判定がNOとなり、次回の計算サイクルでの計算のために、ステップS2に戻る。これに対し、主電源がオフにされた場合には、ステップS11の判定がYESとなり、以上で、モータ制御装置10の作動が終了する。   Thereafter, in step S11, it is determined whether or not a main power supply (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 S11 is YES, and the operation of the motor control device 10 is thus completed.

なお付言するに、本実施形態には種々の変形例が存在する。一変形例においては、前述の位相遅れ補償を行うことなく、仮想モータ制御部64が前記制御信号をフォードフォワード的に決定する。   In addition, there are various modifications in this embodiment. In one modification, the virtual motor control unit 64 determines the control signal in a Ford forward manner without performing the above-described phase delay compensation.

具体的には、この変形例に従うモータ制御装置10は、上述の第1実施形態と基本的に共通する構成を有するが、仮想モータ制御部64は、図5(b)に示すものに変更される。   Specifically, the motor control device 10 according to this modification has a configuration that is basically the same as that of the first embodiment described above, but the virtual motor control unit 64 is changed to that shown in FIG. The

具体的には、この変形例においては、仮想モータ制御部64が、Δθ推定器80を備えておらず、dq−UVW座標変換器76は、同じ回の計算サイクルの当初において取得した実モータ位置θmのもとで、仮想dq軸指令電圧Vd*,Vq*を仮想3相指令電圧Vu*,Vv*,Vw*に変換し、その結果、それら仮想3相指令電圧Vu*,Vv*,Vw*は、変化量Δθを無視した値として取得されることになる。   Specifically, in this modification, the virtual motor control unit 64 does not include the Δθ estimator 80, and the dq-UVW coordinate converter 76 acquires the actual motor position acquired at the beginning of the same calculation cycle. Under θm, virtual dq-axis command voltages Vd *, Vq * are converted into virtual three-phase command voltages Vu *, Vv *, Vw *, and as a result, these virtual three-phase command voltages Vu *, Vv *, Vw * Is acquired as a value ignoring the variation Δθ.

この変形例は、仮想モータ計算周期Tvの長さが短いか、および/または、実モータ12の角速度が低速であるために、変化量Δθを無視しても支障を来たさない場合に、Δθ推定器80を使用せずに済む点で有利である。   In this modification, when the length of the virtual motor calculation cycle Tv is short and / or the angular speed of the actual motor 12 is low, there is no problem even if the change amount Δθ is ignored. This is advantageous in that the Δθ estimator 80 can be omitted.

この変形例については、モータ制御装置10の作動の一例を表すタイミングチャートが、図6(c)に示すものに変更され、また、モータ制御装置10の作動の一例を表すフローチャートは、図8に示すフローチャートと基本的に共通するが、ステップS5においては、Δθ推定器80による変化量Δθの推定が省略され、dq−UVW座標変換器76により、実モータ位置θmのもとで、ステップS4において生成された仮想dq軸指令電圧信号が仮想3相指令電圧信号に変換される。   For this modification, the timing chart representing an example of the operation of the motor control device 10 is changed to that shown in FIG. 6C, and a flowchart showing an example of the operation of the motor control device 10 is shown in FIG. Although basically the same as that shown in the flowchart, in step S5, the estimation of the change amount Δθ by the Δθ estimator 80 is omitted, and the dq-UVW coordinate converter 76 uses the actual motor position θm in step S4. The generated virtual dq axis command voltage signal is converted into a virtual three-phase command voltage signal.

図9には、実モータ12を制御するために実コントローラ13においてプロセッサ(図示しない)によって反復的に実行される実モータ制御プログラムがフローチャートで概念的に表されている。この実モータ制御プログラムが反復的に実行されることにより、図6(a)に示すように、実モータ12の制御(実モータ制御)が、仮想モータ計算周期Tvと同じ制御周期で反復される。   FIG. 9 conceptually shows, in a flowchart, an actual motor control program that is repeatedly executed by a processor (not shown) in the actual controller 13 in order to control the actual motor 12. By executing this real motor control program repeatedly, as shown in FIG. 6A, the control of the real motor 12 (real motor control) is repeated at the same control cycle as the virtual motor calculation cycle Tv. .

この実モータ制御プログラムが実行されると、まず、ステップS51において、仮想モータ計算部50から最新の仮想モータ電流信号Iu*,Iv*,Iw*が入力される。   When the actual motor control program is executed, first, in step S51, the latest virtual motor current signals Iu *, Iv *, and Iw * are input from the virtual motor calculation unit 50.

次に、ステップS52において、それら入力された仮想モータ電流信号Iu*,Iv*,Iw*に基づき、それら仮想モータ電流値Iu*,Iv*,Iw*によって表される目標物理量を実現するのに適当な実モータ12のためのPWM信号(実モータ制御信号)Gu,Gv,Gw,Gx,Gy,Gzが生成される。   Next, in step S52, on the basis of the inputted virtual motor current signals Iu *, Iv *, Iw *, a target physical quantity represented by these virtual motor current values Iu *, Iv *, Iw * is realized. PWM signals (actual motor control signals) Gu, Gv, Gw, Gx, Gy, and Gz for an appropriate actual motor 12 are generated.

続いて、ステップS53において、それら生成されたPWM信号Gu,Gv,Gw,Gx,Gy,Gzが実インバータ/パワーアンプ14に出力され、それにより、実モータ12が制御される。   Subsequently, in step S53, the generated PWM signals Gu, Gv, Gw, Gx, Gy, Gz are output to the actual inverter / power amplifier 14, thereby controlling the actual motor 12.

その後、ステップS54において、実モータ12の実際の作動状態(本実施形態においては、実モータ位置θm)が実モータ状態検出部15によって検出される。その検出された実モータ作動状態を表す信号は仮想モータ計算部50に出力される。   Thereafter, in step S54, the actual operating state of the actual motor 12 (in the present embodiment, the actual motor position θm) is detected by the actual motor state detection unit 15. A signal representing the detected actual motor operating state is output to the virtual motor calculation unit 50.

以上で、1制御サイクル分の実モータ制御が終了し、続いて、ステップS51に戻り、次回の制御サイクルについての実モータ制御が開始される。   Thus, the actual motor control for one control cycle is completed, and then the process returns to step S51 to start the actual motor control for the next control cycle.

本実施形態によれば、実モータ12の回転角を検出する角度センサさえ存在すれば、その角度センサより通常高価な電流センサを実モータ12に追加しなくても、そのような電流センサの代わりに仮想モータ60を用いることにより、実モータ12の電流を安価に検出することが可能となる。   According to the present embodiment, as long as there is an angle sensor that detects the rotation angle of the actual motor 12, it is possible to replace such a current sensor without adding a current sensor that is usually more expensive than the angle sensor to the actual motor 12. By using the virtual motor 60, the current of the actual motor 12 can be detected at a low cost.

本実施形態においては、仮想モータ状態検出部62が、仮想モータ60の作動状態として、仮想モータ60によって計算された仮想モータ電流値Iu*,Iv*,Iw*を検出する。   In the present embodiment, the virtual motor state detection unit 62 detects virtual motor current values Iu *, Iv *, and Iw * calculated by the virtual motor 60 as the operating state of the virtual motor 60.

仮想モータ状態検出部62の別の例は、それら仮想モータ電流値Iu*,Iv*,Iw*という物理量に加えて、それら仮想モータ電流値Iu*,Iv*,Iw*に基づき、前述の運動方程式、電圧方程式およびフレミング方程式を用いることによって計算される他の物理量、例えば、仮想トルクTe*、仮想モータ速度ωm*、仮想モータ位置θm*、仮想3相誘起電圧Eu*,Ev*,Ew*、仮想3相磁束Fu*,Fv*,Fw*などを検出することが可能である。   Another example of the virtual motor state detection unit 62 is based on the virtual motor current values Iu *, Iv *, Iw * and the above-described motion based on the virtual motor current values Iu *, Iv *, Iw *. Other physical quantities calculated by using equations, voltage equations and Fleming equations, for example, virtual torque Te *, virtual motor speed ωm *, virtual motor position θm *, virtual three-phase induced voltages Eu *, Ev *, Ew * Virtual three-phase magnetic fluxes Fu *, Fv *, Fw *, etc. can be detected.

以上の説明から明らかなように、本実施形態においては、仮想モータ60が、各計算サイクルごとに、仮想モータ制御信号が入力されると、その入力された仮想モータ制御信号に基づき、その仮想モータ制御信号と同じ実モータ制御信号が実モータ12に出力された場合にその実モータ制御信号に応答して実現される実モータ12の作動状態を推定し、その推定された作動状態を仮想モータ60の仮想作動状態として出力する。ここに、「仮想作動状態」の一例は、仮想モータ電流Iu*,Iv*,Iw*である。   As is apparent from the above description, in this embodiment, when the virtual motor 60 receives a virtual motor control signal for each calculation cycle, the virtual motor 60 is based on the input virtual motor control signal. When the same real motor control signal as the control signal is output to the real motor 12, the operating state of the real motor 12 realized in response to the real motor control signal is estimated, and the estimated operating state is estimated for the virtual motor 60. Output as a virtual operating state. Here, examples of the “virtual operating state” are virtual motor currents Iu *, Iv *, and Iw *.

さらに、仮想モータ制御部64が、各計算サイクルごとに、前記目標信号に基づき、かつ、前回の計算サイクルにおいて仮想モータ60から出力された仮想作動状態をフィードバックすることにより、仮想モータ制御信号を決定する。   Further, the virtual motor control unit 64 determines the virtual motor control signal for each calculation cycle by feeding back the virtual operation state output from the virtual motor 60 in the previous calculation cycle based on the target signal. To do.

さらに、同じ回の計算サイクルと同期する制御サイクルにおいて、実コントローラ13が、仮想モータ60から取得される信号に基づいて実モータ制御信号を決定し、その決定された実モータ制御信号を実モータ12に出力する。ここに、「仮想モータ60から取得される信号」の一例は、最新の仮想モータ電流Iu*,Iv*,Iw*であって最新の仮想モータ制御信号を決定するために仮想モータ制御部64が参照したものと同じものである。   Further, in a control cycle synchronized with the same calculation cycle, the real controller 13 determines an actual motor control signal based on a signal acquired from the virtual motor 60, and uses the determined actual motor control signal as the actual motor 12. Output to. Here, an example of the “signal acquired from the virtual motor 60” is the latest virtual motor current Iu *, Iv *, Iw *, and the virtual motor control unit 64 determines the latest virtual motor control signal. It is the same as the reference.

これに代えて、別の例においては、「仮想モータ60から取得される信号」が、最新の仮想モータ電流Iu*,Iv*,Iw*に代わるかまたはそれに加えられる別の物理量、すなわち、その最新の仮想モータ電流Iu*,Iv*,Iw*が仮想モータ60から出力されたタイミングと実質的に同じタイミングで仮想モータ状態検出部62によって計算された別の物理量、例えば、上述のように、仮想トルクTe*、仮想モータ速度ωm*、仮想モータ位置θm*、仮想3相誘起電圧Eu*,Ev*,Ew*、仮想3相磁束Fu*,Fv*,Fw*などのうちの少なくとも一つである。   Alternatively, in another example, the “signal obtained from the virtual motor 60” is another physical quantity that replaces or is added to the latest virtual motor currents Iu *, Iv *, Iw *, ie, its Another physical quantity calculated by the virtual motor state detection unit 62 at substantially the same timing as when the latest virtual motor currents Iu *, Iv *, Iw * are output from the virtual motor 60, for example, as described above. At least one of virtual torque Te *, virtual motor speed ωm *, virtual motor position θm *, virtual three-phase induced voltage Eu *, Ev *, Ew *, virtual three-phase magnetic flux Fu *, Fv *, Fw *, etc. It is.

仮想モータ制御信号を決定するために参照される第1物理量も、実モータ制御信号を決定するために参照される第2物理量も、仮想モータ60から直接的にまたは間接的に取得される物理量であるとしても、それら第1物理量と第2物理量とが種類に関して互いに一致することは不可欠ではなく、実質的に同じタイミングで仮想モータ60から直接的にまたは間接的に取得された物理量同士であるという条件さえ満たされれば足りる。そのような物理量同士である限り、物理的にみて互いに等価であって、相互に置換可能であるからである。   Both the first physical quantity referred to determine the virtual motor control signal and the second physical quantity referred to determine the actual motor control signal are physical quantities obtained directly or indirectly from the virtual motor 60. Even if there is, it is not indispensable that the first physical quantity and the second physical quantity coincide with each other with respect to the type, and they are physical quantities acquired directly or indirectly from the virtual motor 60 at substantially the same timing. It only needs to meet the conditions. This is because as long as they are such physical quantities, they are physically equivalent to each other and can be replaced with each other.

<第2実施形態> Second Embodiment

次に、本発明の第2実施形態に従うモータ制御装置100を図10ないし図13を参照することにより説明する。ただし、本実施形態は、第1実施形態と共通する要素があるため、共通する要素については、同一の符号または名称を付して引用することにより、重複した説明を省略し、異なる要素についてのみ、詳細に説明する。   Next, a motor control device 100 according to a second embodiment of the present invention will be described with reference to FIGS. 10 to 13. 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.

前述の第1実施形態においては、仮想モータ状態検出部62が、仮想3相実電流値Iu*,Iv*,Iw*を実モータ12の実3相実電流値Iu,Iv,Iwとして検出する電流センサとして機能する。   In the first embodiment described above, the virtual motor state detector 62 detects the virtual three-phase actual current values Iu *, Iv *, and Iw * as the actual three-phase actual current values Iu, Iv, and Iw of the actual motor 12. Functions as a current sensor.

これに対し、本実施形態においては、仮想モータ状態検出部62が、電流センサとして機能するのみならず、入力電圧センサ、トルクセンサおよび誘起電圧センサとしても機能する。   In contrast, in the present embodiment, the virtual motor state detection unit 62 not only functions as a current sensor, but also functions as an input voltage sensor, a torque sensor, and an induced voltage sensor.

入力電圧センサは、仮想モータ60の各相仮想巻線に印加される電圧である仮想3相入力電圧Vu*,Vv*,Vw*を、実モータ12の各相実巻線に印加される電圧である実3相入力電圧Vu,Vv,Vwとして検出する。   The input voltage sensor applies a virtual three-phase input voltage Vu *, Vv *, Vw *, which is a voltage applied to each phase virtual winding of the virtual motor 60, to a voltage applied to each phase real winding of the real motor 12. Are detected as actual three-phase input voltages Vu, Vv, and Vw.

トルクセンサは、仮想モータ60の仮想シャフト(実モータ12のシャフト13に相当する)に作用するトルクである仮想トルクTe*を、実モータ12のシャフト13に作用するトルクである実トルクTeとして検出する。   The torque sensor detects a virtual torque Te * that is a torque acting on a virtual shaft of the virtual motor 60 (corresponding to the shaft 13 of the real motor 12) as a real torque Te that is a torque acting on the shaft 13 of the real motor 12. To do.

誘起電圧センサは、仮想モータ60の各相仮想巻線に誘起される電圧である仮想3相誘起電圧Eu*,Ev*,Ew*を、実モータ12の各相実巻線に誘起される電圧である実3相誘起電圧Eu,Ev,Ewとして検出する。   The induced voltage sensor generates a virtual three-phase induced voltage Eu *, Ev *, Ew *, which is a voltage induced in each phase virtual winding of the virtual motor 60, and a voltage induced in each phase actual winding of the real motor 12. Are detected as actual three-phase induced voltages Eu, Ev, Ew.

さらに、前述の第1実施形態においては、実コントローラ13が、仮想モータ計算部50から出力された仮想モータ電流信号Iu*,Iv*,Iw*に基づき、実モータ12のためのPWM信号(実モータ制御信号)Gu,Gv,Gw,Gx,Gy,Gzを決定する。   Furthermore, in the above-described first embodiment, the real controller 13 is configured to output a PWM signal (real signal) for the real motor 12 based on the virtual motor current signals Iu *, Iv *, Iw * output from the virtual motor calculation unit 50. Motor control signals) Gu, Gv, Gw, Gx, Gy, Gz are determined.

これに対し、本実施形態においては、実コントローラ13が、仮想モータ計算部50に入力される目標信号と同じ目標信号に基づき、実モータ12のためのPWM信号Gu,Gv,Gw,Gx,Gy,Gzを決定する。   On the other hand, in the present embodiment, the real controller 13 is based on the same target signal as the target signal input to the virtual motor calculation unit 50, and the PWM signals Gu, Gv, Gw, Gx, Gy for the real motor 12 are used. , Gz.

図11には、本実施形態に従う仮想モータ計算部50が機能ブロック図で概念的に表されている。この仮想モータ計算部50は、第1実施形態に従う仮想モータ計算部50(図y3)に対し、仮想モータ状態検出部62が仮想モータ電流信号Iu*,Iv*,Iw*と、仮想モータ電圧信号Vu*,Vv*,Vw*と、仮想モータトルクTe*と、仮想モータ誘起電圧信号Eu*,Ev*,Ew*とをディスプレイ66に出力する点と、仮想モータ状態検出部62が仮想モータ電流信号Iu*,Iv*,Iw*を実コントローラ13に出力しない点とを除き、共通する。   FIG. 11 conceptually shows a virtual motor calculation unit 50 according to the present embodiment in a functional block diagram. This virtual motor calculation unit 50 is different from the virtual motor calculation unit 50 (FIG. Y3) according to the first embodiment in that the virtual motor state detection unit 62 has virtual motor current signals Iu *, Iv *, Iw * and a virtual motor voltage signal. Vu *, Vv *, Vw *, virtual motor torque Te *, virtual motor induced voltage signals Eu *, Ev *, Ew * are output to the display 66, and the virtual motor state detection unit 62 has a virtual motor current. The signals Iu *, Iv *, and Iw * are common except that they are not output to the actual controller 13.

図12には、モータ制御装置100を作動させるためにプロセッサ40によって実行される仮想モータ制御プログラムが概念的にフローチャートで表されている。この仮想モータ制御プログラムは、図8に示すものと共通するステップが多く、異なるのは、ステップS9がステップ9aに、ステップS10がステップS10aにそれぞれ置換されている点のみである。   FIG. 12 conceptually shows a virtual motor control program executed by the processor 40 in order to operate the motor control device 100 in a flowchart. This virtual motor control program has many steps in common with those shown in FIG. 8, and the only difference is that step S9 is replaced with step 9a and step S10 is replaced with step S10a.

ステップS9aにおいては、ステップS9に準じて、仮想モータ状態検出部62により、仮想モータ電流信号Iu*,Iv*,Iw*と、仮想モータ電圧信号Vu*,Vv*,Vw*と、仮想モータトルクTe*と、仮想モータ誘起電圧信号Eu*,Ev*,Ew*とが出力される。ステップS10aにおいては、ステップS10に準じて、仮想モータ状態検出部62によって検出された複数の仮想モータ状態量がディスプレイ66の画面上に表示される。   In step S9a, in accordance with step S9, the virtual motor state detector 62 causes the virtual motor current signals Iu *, Iv *, Iw *, the virtual motor voltage signals Vu *, Vv *, Vw *, and the virtual motor torque. Te * and virtual motor induced voltage signals Eu *, Ev *, Ew * are output. In step S10a, in accordance with step S10, a plurality of virtual motor state quantities detected by the virtual motor state detection unit 62 are displayed on the screen of the display 66.

図13には、実モータ12を制御するために実コントローラ13においてプロセッサ(図示しない)によって実行される実モータ制御プログラムがフローチャートで概念的に表されている。この実モータ制御プログラムは、図9に示すものと基本的に共通する。   FIG. 13 conceptually shows a real motor control program executed by a processor (not shown) in the real controller 13 for controlling the real motor 12 in a flowchart. This actual motor control program is basically the same as that shown in FIG.

具体的には、この実モータ制御プログラムが実行されると、まず、ステップS56において、前記目標信号が入力される。   Specifically, when the actual motor control program is executed, first, in step S56, the target signal is input.

次に、ステップS57において、その入力された目標信号に基づき、その目標信号によって表される物理量を実現するのに適当な、実モータ12のためのPWM信号(実モータ制御信号)Gu,Gv,Gw,Gx,Gy,Gzが生成される。   Next, in step S57, based on the inputted target signal, PWM signals (actual motor control signals) Gu, Gv, Gu for the real motor 12 that are suitable for realizing the physical quantity represented by the target signal. Gw, Gx, Gy, and Gz are generated.

続いて、ステップS58において、それら生成されたPWM信号Gu,Gv,Gw,Gx,Gy,Gzが実インバータ/パワーアンプ14に出力され、それにより、実モータ12が制御される。その後、ステップS59において、実モータ12の実際の作動状態(本実施形態においては、実モータ位置θm)が実モータ状態検出部15によって検出される。その検出された実モータ作動状態を表す信号は、仮想モータ制御部64に出力される。   Subsequently, in step S58, the generated PWM signals Gu, Gv, Gw, Gx, Gy, Gz are output to the actual inverter / power amplifier 14, thereby controlling the actual motor 12. Thereafter, in step S59, the actual operating state of the actual motor 12 (in the present embodiment, the actual motor position θm) is detected by the actual motor state detection unit 15. A signal representing the detected actual motor operating state is output to the virtual motor control unit 64.

以上で、1制御サイクル分の実モータ制御が終了し、続いて、ステップS56に戻り、次回の制御サイクルについての実モータ制御が開始される。   Thus, the actual motor control for one control cycle is completed, and then the process returns to step S56, and the actual motor control for the next control cycle is started.

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

次に、本発明の第3実施形態に従うモータ制御装置200を図14ないし図16を参照することにより説明する。ただし、本実施形態は、第1実施形態と共通する要素があるため、共通する要素については、同一の符号または名称を付して引用することにより、重複した説明を省略し、異なる要素についてのみ、詳細に説明する。   Next, a motor control device 200 according to a third 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.

前述の第1実施形態においては、実コントローラ13が、仮想モータ計算部50から出力された仮想モータ電流信号Iu*,Iv*,Iw*に基づき、実モータ12のためのPWM信号(制御信号)Gu,Gv,Gw,Gx,Gy,Gzを決定する。これに対し、仮想モータ制御部64は、目標信号と、仮想モータ電流信号Iu*,Iv*,Iw*と、実モータ位置θmとに基づき、仮想モータ60のためのPWM信号(仮想モータ制御信号)Gu,Gv,Gw,Gx,Gy,Gzを決定する。したがって、同じ制御サイクルにつき、実モータ12に供給されるPWM信号(実モータ制御信号)Gu,Gv,Gw,Gx,Gy,Gzと、仮想モータ60に供給されるPWM信号(仮想モータ制御信号)Gu,Gv,Gw,Gx,Gy,Gzとは、完全には互いに一致しない。   In the first embodiment described above, the real controller 13 uses the PWM signal (control signal) for the real motor 12 based on the virtual motor current signals Iu *, Iv *, and Iw * output from the virtual motor calculation unit 50. Gu, Gv, Gw, Gx, Gy, and Gz are determined. On the other hand, the virtual motor control unit 64 generates a PWM signal (virtual motor control signal) for the virtual motor 60 based on the target signal, the virtual motor current signals Iu *, Iv *, Iw *, and the actual motor position θm. ) Determine Gu, Gv, Gw, Gx, Gy, Gz. Therefore, PWM signals (real motor control signals) Gu, Gv, Gw, Gx, Gy, Gz supplied to the real motor 12 and PWM signals (virtual motor control signal) supplied to the virtual motor 60 for the same control cycle. Gu, Gv, Gw, Gx, Gy, and Gz do not completely match each other.

これに対し、本実施形態においては、図14および図15に示すように、仮想モータ制御部64が、第1実施形態と同様にして、目標信号と、仮想モータ電流信号Iu*,Iv*,Iw*と、実モータ位置θmとに基づき、仮想モータ60のためのPWM信号(仮想モータ制御信号)Gu,Gv,Gw,Gx,Gy,Gzを決定すると、それらPWM信号Gu,Gv,Gw,Gx,Gy,Gzを仮想PWMインバータ90を経由して仮想モータ60に出力するとともに、完全に同じPWM信号Gu,Gv,Gw,Gx,Gy,Gzを実モータ制御信号として実インバータ/パワーアンプ14を経由して実モータ12にも出力する。   On the other hand, in this embodiment, as shown in FIGS. 14 and 15, the virtual motor control unit 64 performs the target signal and the virtual motor current signals Iu *, Iv *, When PWM signals (virtual motor control signals) Gu, Gv, Gw, Gx, Gy, Gz for the virtual motor 60 are determined based on Iw * and the actual motor position θm, the PWM signals Gu, Gv, Gw, Gx, Gy, Gz are output to the virtual motor 60 via the virtual PWM inverter 90, and the actual inverter / power amplifier 14 uses the completely same PWM signals Gu, Gv, Gw, Gx, Gy, Gz as actual motor control signals. To the actual motor 12 via.

このように、本実施形態においては、仮想モータ計算部50が完全に実モータ12を制御するため、実コントローラ13に相当する要素が存在しない。これに対し、第1実施形態においては、仮想モータ計算部50が部分的にしか実モータ12を制御しないため、実コントローラ13が追加されている。   Thus, in this embodiment, since the virtual motor calculation unit 50 completely controls the real motor 12, there is no element corresponding to the real controller 13. On the other hand, in the first embodiment, since the virtual motor calculation unit 50 controls the real motor 12 only partially, the real controller 13 is added.

図16には、モータ制御装置200を作動させるためにプロセッサ40によって実行される仮想モータ制御プログラムが概念的にフローチャートで表されている。この仮想モータ制御プログラムは、図8に示すものと共通するステップが多く、異なるのは、ステップS6aがステップS6とS7との間に追加されている点のみである。このステップS6aは、ステップS6において決定されたPWM信号Gu,Gv,Gw,Gx,Gy,Gzを実インバータ/パワーアンプ14に出力するために追加されている。   FIG. 16 conceptually shows a virtual motor control program executed by the processor 40 to operate the motor control device 200 in a flowchart. This virtual motor control program has many steps in common with those shown in FIG. 8, and the only difference is that step S6a is added between steps S6 and S7. This step S6a is added to output the PWM signals Gu, Gv, Gw, Gx, Gy, Gz determined in step S6 to the actual inverter / power amplifier 14.

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

次に、本発明の第4実施形態に従うモータ制御装置300を図17ないし図20を参照することにより説明する。ただし、本実施形態は、第1実施形態と共通する要素があるため、共通する要素については、同一の符号または名称を付して引用することにより、重複した説明を省略し、異なる要素についてのみ、詳細に説明する。   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 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.

1.実モータ状態検出部15の機能について 1. Functions of the actual motor state detection unit 15

前述の第1実施形態においては、実モータ状態検出部15が実モータ位置θmを検出する。これに対し、本実施形態においては、図17に示すように、実モータ状態検出部15が、実モータ位置θmのみならず、実モータ12の実3相実電流値Iu,Iv,Iwおよび実3相実電圧値Vu,Vv,Vwも検出する。そのため、この実モータ状態検出部15は、ロータリ・エンコーダのみならず、通常の電流センサおよび電圧センサをも有するように設計されている。   In the first embodiment described above, the actual motor state detection unit 15 detects the actual motor position θm. In contrast, in the present embodiment, as shown in FIG. 17, the actual motor state detection unit 15 performs not only the actual motor position θm but also the actual three-phase actual current values Iu, Iv, Iw and the actual motor 12. Three-phase actual voltage values Vu, Vv, and Vw are also detected. Therefore, the actual motor state detection unit 15 is designed to have not only a rotary encoder but also a normal current sensor and voltage sensor.

2.実コントローラ13の機能について 2. About the function of the actual controller 13

前述の第1実施形態においては、実コントローラ13が、仮想モータ計算部50から出力された仮想モータ電流信号Iu*,Iv*,Iw*に基づき、実モータ12のためのPWM信号(制御信号)Gu,Gv,Gw,Gx,Gy,Gzを決定する。これに対し、仮想モータ制御部64は、目標信号と、仮想モータ電流信号Iu*,Iv*,Iw*と、実モータ位置θmとに基づき、仮想モータ60のためのPWM信号(制御信号)Gu,Gv,Gw,Gx,Gy,Gzを決定する。したがって、同じ制御サイクルにつき、実モータ12に供給されるPWM信号(実モータ制御信号)Gu,Gv,Gw,Gx,Gy,Gzと、仮想モータ60に供給されるPWM信号(仮想モータ制御信号)Gu,Gv,Gw,Gx,Gy,Gzとは、完全には互いに一致しない。   In the first embodiment described above, the real controller 13 uses the PWM signal (control signal) for the real motor 12 based on the virtual motor current signals Iu *, Iv *, and Iw * output from the virtual motor calculation unit 50. Gu, Gv, Gw, Gx, Gy, and Gz are determined. On the other hand, the virtual motor control unit 64 generates a PWM signal (control signal) Gu for the virtual motor 60 based on the target signal, the virtual motor current signals Iu *, Iv *, Iw *, and the actual motor position θm. , Gv, Gw, Gx, Gy, Gz are determined. Therefore, PWM signals (real motor control signals) Gu, Gv, Gw, Gx, Gy, Gz supplied to the real motor 12 and PWM signals (virtual motor control signal) supplied to the virtual motor 60 for the same control cycle. Gu, Gv, Gw, Gx, Gy, and Gz do not completely match each other.

これに対し、本実施形態においては、図17および図18に示すように、仮想モータ制御部64が、第1実施形態と同様にして、目標信号と、仮想モータ電流信号Iu*,Iv*,Iw*と、実モータ位置θmとに基づき、仮想モータ60のためのPWM信号(仮想モータ制御信号)Gu,Gv,Gw,Gx,Gy,Gzを決定するとともに、それらPWM信号Gu,Gv,Gw,Gx,Gy,Gzを決定するために用いられた仮想モータ電流信号Iu*,Iv*,Iw*を実コントローラ13に出力する。   On the other hand, in the present embodiment, as shown in FIGS. 17 and 18, the virtual motor control unit 64 performs the target signal and the virtual motor current signals Iu *, Iv *,. Based on Iw * and the actual motor position θm, PWM signals (virtual motor control signals) Gu, Gv, Gw, Gx, Gy, Gz for the virtual motor 60 are determined and the PWM signals Gu, Gv, Gw are determined. , Gx, Gy, Gz are output to the real controller 13 as virtual motor current signals Iu *, Iv *, Iw * used to determine.

さらに、本実施形態においては、実コントローラ13が、仮想モータ制御部64から出力された仮想モータ電流信号Iu*,Iv*,Iw*を目標電流信号として用い、かつ、実モータ状態検出部15から出力された実モータ12の実モータ電流値Iu,Iv,Iwをフィードバックすることにより、実モータ12のためのPWM信号(実モータ制御信号)Gu,Gv,Gw,Gx,Gy,Gzを決定する。   Further, in the present embodiment, the real controller 13 uses the virtual motor current signals Iu *, Iv *, Iw * output from the virtual motor control unit 64 as the target current signal, and from the real motor state detection unit 15. By feeding back the actual motor current values Iu, Iv, and Iw of the actual motor 12, the PWM signals (actual motor control signals) Gu, Gv, Gw, Gx, Gy, and Gz for the actual motor 12 are determined. .

3.仮想モータ状態検出部62の機能について 3. Function of virtual motor state detection unit 62

前述の第1実施形態においては、仮想モータ状態検出部62が、仮想モータ電流値Iu*,Iv*,Iw*を実モータ12の実モータ電流値Iu,Iv,Iwの推定値として検出する電流センサとして機能する。これにより、仮想モータ60を用いることにより、実モータ12の実際の作動特性として実モータ12の電流特性が出力される。   In the first embodiment described above, the virtual motor state detection unit 62 detects the virtual motor current values Iu *, Iv *, Iw * as the estimated values of the actual motor current values Iu, Iv, Iw of the real motor 12. Functions as a sensor. Thereby, by using the virtual motor 60, the current characteristic of the real motor 12 is output as the actual operation characteristic of the real motor 12.

これに対し、本実施形態においては、図17および図18に示すように、仮想モータ状態検出部62が、電流センサとして機能するのみならず、仮想モータ電圧値Vu*,Vv*,Vw*を実モータ12の実モータ電圧値Vu,Vv,Vwの推定値として検出する電圧センサとしても機能する。これにより、本実施形態においては、仮想モータ60を用いることにより、実モータ12の実際の作動特性として実モータ12の電流特性のみならず電圧特性も出力される。   In contrast, in the present embodiment, as shown in FIGS. 17 and 18, the virtual motor state detection unit 62 not only functions as a current sensor, but also uses virtual motor voltage values Vu *, Vv *, and Vw *. It also functions as a voltage sensor that detects actual motor voltage values Vu, Vv, Vw of the actual motor 12 as estimated values. Thus, in the present embodiment, by using the virtual motor 60, not only the current characteristic of the real motor 12 but also the voltage characteristic is output as the actual operating characteristic of the real motor 12.

4.実モータ12の機械損の推定について 4). About estimation of mechanical loss of actual motor 12

図17および図18に示すように、モータ制御装置300は、さらに、仮想モータ電力計算部302を備えている。その仮想モータ電力計算部302は、仮想モータ状態検出部62から出力された仮想モータ電流値Iu*,Iv*,Iw*と仮想モータ電圧値Vu*,Vv*,Vw*との積として、各相ごとに、かつ、実モータ12の各回転角θmごとに仮想モータ電力Pvを計算する。   As shown in FIGS. 17 and 18, the motor control device 300 further includes a virtual motor power calculation unit 302. The virtual motor power calculation unit 302 calculates the product of the virtual motor current values Iu *, Iv *, Iw * and the virtual motor voltage values Vu *, Vv *, Vw * output from the virtual motor state detection unit 62 as The virtual motor power Pv is calculated for each phase and for each rotation angle θm of the real motor 12.

図17に示すように、モータ制御装置300は、さらに、実モータ電力計算部304を備えている。その実モータ電力計算部304は、実モータ状態検出部15から出力された実モータ電流値Iu,Iv,Iwと実モータ電圧値Vu,Vv,Vwとの積として、各相ごとに、かつ、実モータ12の各回転角θmごとに実モータ電力Pmを計算する。   As shown in FIG. 17, the motor control device 300 further includes an actual motor power calculation unit 304. The actual motor power calculation unit 304 calculates the actual motor current values Iu, Iv, Iw output from the actual motor state detection unit 15 and the actual motor voltage values Vu, Vv, Vw for each phase and The actual motor power Pm is calculated for each rotation angle θm of the motor 12.

図17に示すように、モータ制御装置300は、さらに、機械損計算部306を備えている。   As shown in FIG. 17, the motor control device 300 further includes a mechanical loss calculation unit 306.

ところで、よく知られているように、実モータ12は、電気エネルギーを機械エネルギーに変換する機械であり、そのエネルギー変換に際し、入力された電気エネルギーの一部が熱エネルギーとして実モータ12の内部で消費される。そのようにして消費された電気エネルギーが、実モータ12の全損失である。   As is well known, the actual motor 12 is a machine that converts electrical energy into mechanical energy. During the energy conversion, part of the input electrical energy is converted into heat energy inside the actual motor 12. Is consumed. The electric energy thus consumed is the total loss of the actual motor 12.

この全損失は、鉄損と銅損と機械損とに分類される。、また、負荷損は、銅損に分類される。実モータ12の負荷率に依存しない固定損、負荷率に依存する負荷損、漂遊負荷損などに分類される。固定損は、鉄損と機械損に分類され、また、負荷損は、銅損に分類される。   This total loss is classified into iron loss, copper loss and mechanical loss. The load loss is classified as copper loss. They are classified into fixed loss that does not depend on the load factor of the actual motor 12, load loss that depends on the load factor, stray load loss, and the like. Fixed loss is classified as iron loss and mechanical loss, and load loss is classified as copper loss.

鉄損は、実モータ12の鉄心(コア)に渦電流が生じることによって発生する損失であり、高速・低トルク域において有意となる。鉄損は、実モータ12の負荷率に依存しない固定損の一種である。   The iron loss is a loss generated when an eddy current is generated in the iron core (core) of the actual motor 12, and becomes significant in a high speed / low torque region. The iron loss is a kind of fixed loss that does not depend on the load factor of the actual motor 12.

機械損は、実モータ12の回転に際して機械的な要因によって発生する損失であり、前記ロータと前記ステータとの間のベアリングの摩擦抵抗による損失や、空気抵抗による風損、不適切なエア・ギャップなどを含む。機械損は、実モータ12の負荷率に依存しない要素と、依存する要素とを含んでいる。   The mechanical loss is a loss caused by a mechanical factor when the actual motor 12 is rotated. The loss due to the frictional resistance of the bearing between the rotor and the stator, the windage loss due to the air resistance, the inappropriate air gap, etc. Etc. The mechanical loss includes an element that does not depend on the load factor of the actual motor 12 and an element that depends on the element.

銅損は、前記ロータの銅巻線および前記ステータの銅巻線の電気抵抗によって発生する損失であり、低速・高トルク域において有意となる。銅損は、実モータ12の負荷率に依存する負荷損の一種である。   The copper loss is a loss generated by the electrical resistance of the copper winding of the rotor and the copper winding of the stator, and becomes significant in the low speed / high torque range. Copper loss is a type of load loss that depends on the load factor of the actual motor 12.

ここで、実モータ12の全損失は、鉄損および銅損という電気的な要因によって発生する損失と、機械的な要因によって発生する機械損との和に等しいと仮定することが可能である。これに対し、仮想モータ60の入出力特性は、実モータ12の鉄損および銅損を反映するように設計されているが、機械損を考慮していない。したがって、仮想モータ60の全損失は、鉄損および銅損という電気的な要因によって発生する損失に等しいと仮定することが可能である。   Here, it is possible to assume that the total loss of the actual motor 12 is equal to the sum of the loss caused by electrical factors such as iron loss and copper loss and the mechanical loss caused by mechanical factors. On the other hand, the input / output characteristics of the virtual motor 60 are designed to reflect the iron loss and the copper loss of the actual motor 12, but the mechanical loss is not taken into consideration. Therefore, it can be assumed that the total loss of the virtual motor 60 is equal to the loss caused by the electrical factors of iron loss and copper loss.

一方、実モータ12に入力された電気エネルギーのうち、機械エネルギーに変換された部分は、実モータ12の電力である実モータ電力Pmとして計算することが可能である。同様に、仮想モータ60に入力された電気エネルギーのうち、機械エネルギーに変換された部分は、仮想モータ60の電力である仮想モータ電力Pvとして計算することが可能である。   On the other hand, the portion of the electrical energy input to the actual motor 12 that has been converted to mechanical energy can be calculated as the actual motor power Pm that is the power of the actual motor 12. Similarly, the portion of the electrical energy input to the virtual motor 60 that has been converted to mechanical energy can be calculated as the virtual motor power Pv that is the power of the virtual motor 60.

仮想モータ電力Pvの計算値は、実モータ12の機械損を含んでいない。そのため、仮想モータ電力Pvから実モータ電力Pmを引き算して得られる値ΔP(=Pv−Pm)は、実モータ12の機械損MLの推定値を意味することになる。   The calculated value of the virtual motor power Pv does not include the mechanical loss of the actual motor 12. Therefore, the value ΔP (= Pv−Pm) obtained by subtracting the actual motor power Pm from the virtual motor power Pv means an estimated value of the mechanical loss ML of the actual motor 12.

このような知見に基づき、本実施形態においては、機械損計算部306が、仮想モータ電力計算部302によって計算された仮想モータ電力Pvから、実モータ電力計算部304によって計算された実モータ電力Pmを引き算することにより、実モータ12の機械損MLの推定値を、各相ごとに、かつ、実モータ12の各回転角θmごとに計算する。   Based on such knowledge, in this embodiment, the mechanical loss calculation unit 306 uses the actual motor power Pm calculated by the actual motor power calculation unit 304 from the virtual motor power Pv calculated by the virtual motor power calculation unit 302. , The estimated value of the mechanical loss ML of the actual motor 12 is calculated for each phase and for each rotation angle θm of the actual motor 12.

本実施形態においては、前述の他のいくつかの実施形態と同様に、仮想モータ60が実モータ12と位相に関して実質的に同期するように制御される。この同期のおかげで、実質的に同じタイミングで取得された仮想モータ電力Pv(最新値)および実モータ電力Pm(最新値)は、仮想モータ60の仮想モータ位置θと実モータ12の実モータ位置θmとが互いに実質的に一致する状況で取得されることが保証される。したがって、それら仮想モータ電力Pvと実モータ電力Pmとの差が実モータ12の機械損MLを表す正確性が向上する。   In the present embodiment, the virtual motor 60 is controlled so as to be substantially synchronized with the real motor 12 with respect to the phase, as in some of the other embodiments described above. Thanks to this synchronization, the virtual motor power Pv (latest value) and the actual motor power Pm (latest value) acquired at substantially the same timing are the virtual motor position θ of the virtual motor 60 and the real motor position of the real motor 12. It is guaranteed that θm is acquired in a situation where they substantially match each other. Therefore, the accuracy in which the difference between the virtual motor power Pv and the actual motor power Pm represents the mechanical loss ML of the actual motor 12 is improved.

このように、本実施形態においては、実モータ12の機械損MLの推定値が、実モータ12の回転角θmをパラメータとする関数f(θm)として表現されるが、これに代えて、例えば、実モータ12の機械損MLの推定値を、実モータ12の回転角θmと、実モータ12の負荷率Rとをそれぞれパラメータとする関数g(θm,R)として表現することが可能である。   As described above, in this embodiment, the estimated value of the mechanical loss ML of the actual motor 12 is expressed as a function f (θm) having the rotation angle θm of the actual motor 12 as a parameter. The estimated value of the mechanical loss ML of the actual motor 12 can be expressed as a function g (θm, R) having the rotation angle θm of the actual motor 12 and the load factor R of the actual motor 12 as parameters. .

さらに、本実施形態においては、図17に示すように、モータ制御装置300が、さらに、メモリ310を備えている。そのメモリ310には、機械損計算部306によって計算された機械損MLの推定値が、実モータ12の回転角θmをパラメータとする関数f(θm)として保存される。   Further, in the present embodiment, as shown in FIG. 17, the motor control device 300 further includes a memory 310. The estimated value of the mechanical loss ML calculated by the mechanical loss calculation unit 306 is stored in the memory 310 as a function f (θm) having the rotation angle θm of the actual motor 12 as a parameter.

実モータ12の機械損MLが推定できれば、その機械損MLが減少するように実モータ12の設計を変更したり製造工程を改善することが容易となる。具体的には、例えば、実モータ12において、使用するグリスを低損失のものに変更したり、ベアリングの摩擦抵抗を最適化したり、コイルの数や配向・配列を最適化したり、エア・ギャップを最適化したり、熱の流れを最適化することが容易となる。   If the mechanical loss ML of the actual motor 12 can be estimated, it becomes easy to change the design of the actual motor 12 and improve the manufacturing process so that the mechanical loss ML is reduced. Specifically, for example, in the actual motor 12, the grease to be used is changed to one with low loss, the frictional resistance of the bearing is optimized, the number of coils, the orientation and the arrangement are optimized, the air gap is It becomes easy to optimize and optimize the heat flow.

以上の説明から明らかなように、本実施形態においては、実モータ状態検出部15と、仮想モータ状態検出部62と、仮想モータ電力計算部302と、実モータ電力計算部304と、機械損計算部306とが互いに共同して、前記「実モータ作動特性出力部」の一例を構成し、また、前記「実モータ機械損取得部」の一例を構成する。   As is clear from the above description, in the present embodiment, the real motor state detection unit 15, the virtual motor state detection unit 62, the virtual motor power calculation unit 302, the real motor power calculation unit 304, and the mechanical loss calculation The unit 306 cooperates with each other to configure an example of the “actual motor operating characteristic output unit” and configure an example of the “actual motor mechanical loss acquisition unit”.

図19には、モータ制御装置300を作動させるためにプロセッサ40によって実行される仮想モータ制御プログラムが概念的にフローチャートで表されている。この仮想モータ制御プログラムは、図8に示すものと共通するステップが多く、異なるのは、ステップS10が一連のステップS21−S27で置換されている点のみである。   In FIG. 19, a virtual motor control program executed by the processor 40 for operating the motor control device 300 is conceptually shown in a flowchart. This virtual motor control program has many steps in common with those shown in FIG. 8, and the only difference is that step S10 is replaced with a series of steps S21 to S27.

ステップS21においては、仮想モータ状態検出部62から出力された仮想モータ電流値Iu*,Iv*,Iw*と仮想モータ電圧値Vu*,Vv*,Vw*が仮想モータ電力計算部302に入力される。   In step S 21, the virtual motor current values Iu *, Iv *, Iw * and virtual motor voltage values Vu *, Vv *, Vw * output from the virtual motor state detection unit 62 are input to the virtual motor power calculation unit 302. The

次に、ステップS22において、その仮想モータ電力計算部302により、仮想モータ電流値Iu*,Iv*,Iw*と仮想モータ電圧値Vu*,Vv*,Vw*との積として、各相ごとに仮想モータ電力Pvが計算される。その計算された仮想モータ電力Pvは機械損計算部306に出力される。   Next, in step S22, the virtual motor power calculation unit 302 calculates the product of the virtual motor current values Iu *, Iv *, Iw * and the virtual motor voltage values Vu *, Vv *, Vw * for each phase. A virtual motor power Pv is calculated. The calculated virtual motor power Pv is output to the mechanical loss calculator 306.

続いて、ステップS23において、ステップS21と同様にして、実モータ状態検出部15から出力された実モータ電流値Iu,Iv,Iwと実モータ電圧値Vu,Vv,Vwが実モータ電力計算部304に入力される。   Subsequently, in step S23, as in step S21, the actual motor current values Iu, Iv, Iw and the actual motor voltage values Vu, Vv, Vw output from the actual motor state detection unit 15 are converted into the actual motor power calculation unit 304. Is input.

その後、ステップS24において、ステップS22と同様にして、その実モータ電力計算部304により、実モータ電流値Iu,Iv,Iwと実モータ電圧値Vu,Vv,Vwとの積として、各相ごとに実モータ電力Pmが計算される。その計算された実モータ電力Pmは機械損計算部306に出力される。   Thereafter, in step S24, as in step S22, the actual motor power calculation unit 304 calculates the actual motor current values Iu, Iv, Iw and the actual motor voltage values Vu, Vv, Vw for each phase. A motor power Pm is calculated. The calculated actual motor power Pm is output to the mechanical loss calculation unit 306.

続いて、ステップS25において、機械損計算部306により、仮想モータ電力計算部302によって計算された仮想モータ電力Pvから、実モータ電力計算部304によって計算された実モータ電力Pmを引き算することにより、実モータ12の機械損MLの推定値が各相ごとに計算される。   Subsequently, in step S25, the mechanical loss calculation unit 306 subtracts the actual motor power Pm calculated by the actual motor power calculation unit 304 from the virtual motor power Pv calculated by the virtual motor power calculation unit 302. An estimated value of the mechanical loss ML of the actual motor 12 is calculated for each phase.

その後、ステップS26において、実モータ状態検出部15から最新の実モータ角度(すなわち、実モータ位置)θmが入力される。   Thereafter, in step S26, the latest actual motor angle (that is, actual motor position) θm is input from the actual motor state detector 15.

続いて、ステップS27において、実モータ12の機械損MLの推定値が、各相ごとに、実モータ12の回転角θmをパラメータとする関数f(θm)として、メモリ310に保存される。すなわち、最新の機械損MLが最新の実モータ位置θmに関連付けてメモリ310に保存されるのである。その後、ステップS11に移行する。   Subsequently, in step S27, the estimated value of the mechanical loss ML of the actual motor 12 is stored in the memory 310 as a function f (θm) having the rotation angle θm of the actual motor 12 as a parameter for each phase. That is, the latest mechanical loss ML is stored in the memory 310 in association with the latest actual motor position θm. Thereafter, the process proceeds to step S11.

図20には、実モータ12を制御するために実コントローラ13においてプロセッサ(図示しない)によって反復的に実行される実モータ制御プログラムがフローチャートで概念的に表されている。この実モータ制御プログラムは、図9に示すものと基本的に共通する。   FIG. 20 conceptually shows, in a flowchart, an actual motor control program that is repeatedly executed by a processor (not shown) in the actual controller 13 in order to control the actual motor 12. This actual motor control program is basically the same as that shown in FIG.

具体的には、この実モータ制御プログラムが実行されると、まず、ステップS61において、ステップS51と同様にして、仮想モータ計算部50から最新の仮想モータ電流信号Iu*,Iv*,Iw*が目標電流信号として入力される。   Specifically, when the actual motor control program is executed, first, in step S61, the latest virtual motor current signals Iu *, Iv *, Iw * are obtained from the virtual motor calculation unit 50 in the same manner as in step S51. Input as target current signal.

次に、ステップS62において、実モータ状態検出部15から最新の実モータ電流信号Iu,Iv,Iwが入力される。続いて、ステップS63において、それら入力された仮想モータ電流信号Iu*,Iv*,Iw*と実モータ電流信号Iu,Iv,Iwとに基づき、前記目標電流信号によって表される物理量を実現するのに適当な、実モータ12のためのPWM信号(実モータ制御信号)Gu,Gv,Gw,Gx,Gy,Gzが生成される。   Next, in step S62, the latest actual motor current signals Iu, Iv, Iw are input from the actual motor state detector 15. Subsequently, in step S63, the physical quantity represented by the target current signal is realized based on the inputted virtual motor current signals Iu *, Iv *, Iw * and the actual motor current signals Iu, Iv, Iw. PWM signals (actual motor control signals) Gu, Gv, Gw, Gx, Gy, and Gz for the actual motor 12 are generated.

続いて、ステップS64において、それら生成されたPWM信号Gu,Gv,Gw,Gx,Gy,Gzが実インバータ/パワーアンプ14に出力され、それにより、実モータ12が制御される。その後、ステップS65において、実モータ12の実際の作動状態(本実施形態においては、実モータ位置θm、実モータ電流値Iu,Iv,Iw、実モータ電圧値Vu,Vv,Vw)が実モータ状態検出部15によって検出される。その検出された実モータ作動状態を表す複数の信号は、それぞれ、該当する要素に出力される。   Subsequently, in step S64, the generated PWM signals Gu, Gv, Gw, Gx, Gy, Gz are output to the actual inverter / power amplifier 14, thereby controlling the actual motor 12. Thereafter, in step S65, the actual operating state of the actual motor 12 (in the present embodiment, the actual motor position θm, the actual motor current values Iu, Iv, Iw, the actual motor voltage values Vu, Vv, Vw) is determined as the actual motor state. It is detected by the detector 15. A plurality of signals representing the detected actual motor operating state are respectively output to the corresponding elements.

以上で、1制御サイクル分の実モータ制御が終了し、続いて、ステップS61に戻り、次回の制御サイクルについての実モータ制御が開始される。   Thus, the actual motor control for one control cycle is completed, and then the process returns to step S61 to start the actual motor control for the next control cycle.

<第5実施形態> <Fifth Embodiment>

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

上述の第4実施形態においては、実モータ12の実モータ電力Pmと仮想モータ60の仮想モータ電力Pvとの差が実モータ12の機械損を反映する可能性があるという事実に着目し、実モータ12と仮想モータ60との電力差を用いて実モータ12の機械損が推定される。   In the fourth embodiment described above, focusing on the fact that the difference between the real motor power Pm of the real motor 12 and the virtual motor power Pv of the virtual motor 60 may reflect the mechanical loss of the real motor 12, The mechanical loss of the real motor 12 is estimated using the power difference between the motor 12 and the virtual motor 60.

これに対し、本実施形態においては、実モータ12の実際の作動状態量と仮想モータ60の作動状態量すなわち実モータ12の作動状態量の推定値との差があれば、その差は、仮想モータ60の教示誤差に起因すると仮定し、その仮定のもと、その差が減少するように、仮想モータ60が表現するモータモデルが自動的に修正される。   On the other hand, in this embodiment, if there is a difference between the actual operating state quantity of the real motor 12 and the operating state quantity of the virtual motor 60, that is, the estimated value of the operating state quantity of the real motor 12, the difference is Assuming that it is caused by the teaching error of the motor 60, the motor model expressed by the virtual motor 60 is automatically corrected so that the difference decreases under the assumption.

図21に示すように、そのような自動モデル修正のため、モータ制御装置400は、図17に示す仮想モータ電力計算部302、実モータ電力計算部304、機械損計算部306およびメモリ310に代えて、比較部402およびモデル修正部404を有する。   As shown in FIG. 21, for such automatic model correction, the motor control device 400 replaces the virtual motor power calculation unit 302, the actual motor power calculation unit 304, the mechanical loss calculation unit 306, and the memory 310 shown in FIG. Thus, a comparison unit 402 and a model correction unit 404 are provided.

比較部402は、実モータ電流信号Iu,Iv,Iwによって表される電流値と仮想モータ電流信号Iu*,Iv*,Iw*によって表される電流値との差である電流誤差ΔIを、各相ごとに計算する。モデル修正部404は、その計算された電流誤差ΔIが減少するように、仮想モータ60のモータモデルを自動的に修正する。それら比較部402およびモデル修正部404は、CPU44によって実行される。   The comparison unit 402 calculates a current error ΔI that is a difference between the current value represented by the actual motor current signals Iu, Iv, and Iw and the current value represented by the virtual motor current signals Iu *, Iv *, and Iw *. Calculate for each phase. The model correction unit 404 automatically corrects the motor model of the virtual motor 60 so that the calculated current error ΔI decreases. The comparison unit 402 and the model correction unit 404 are executed by the CPU 44.

具体的には、モデル修正部404は、前記計算された電流誤差ΔIに基づき、その電流誤差ΔIが減少するように、仮想モータ60の入出力特性を定義する前記モータモデル(図4参照)を修正する。モデル修正部404は、例えば、前記計算された電流誤差ΔIに基づき、図4に示すインダクタンス行列のうち、該当する要素を、電流誤差ΔIと要素の値との間に予め定められた関係(例えば、経験的にまたは実験的に取得される)を表すテーブルに従って修正する。このモデル修正部404は、仮想モータ60と実モータ12とを一緒に作動させることにより、実モータ12の実際の入出力特性を仮想モータ60に教示するティーチングを実行する。   Specifically, the model correction unit 404 determines the motor model (see FIG. 4) that defines the input / output characteristics of the virtual motor 60 based on the calculated current error ΔI so that the current error ΔI decreases. Correct it. For example, based on the calculated current error ΔI, the model correction unit 404 sets the corresponding element in the inductance matrix shown in FIG. 4 to a predetermined relationship between the current error ΔI and the value of the element (for example, (Acquired empirically or experimentally). The model correcting unit 404 executes teaching that teaches the virtual motor 60 the actual input / output characteristics of the real motor 12 by operating the virtual motor 60 and the real motor 12 together.

図22には、本実施形態に従う仮想モータ計算部50が機能ブロック図で概念的に表されている。この仮想モータ計算部50は、第4実施形態に従う仮想モータ計算部50に対し、仮想モータ状態検出部62が仮想モータ電流信号Iu*,Iv*,Iw*を比較部402に出力する点を除き、共通する。   FIG. 22 conceptually shows a virtual motor calculation unit 50 according to the present embodiment in a functional block diagram. The virtual motor calculation unit 50 is different from the virtual motor calculation unit 50 according to the fourth embodiment except that the virtual motor state detection unit 62 outputs virtual motor current signals Iu *, Iv *, and Iw * to the comparison unit 402. , In common.

図23には、比較部402およびモデル修正部404の作動の一例がフローチャートで概念的に表されている。それら比較部402およびモデル修正部404は、CPU44により、誤差監視計算周期Tc(例えば、数10μsec)で反復的に実行される。   FIG. 23 conceptually shows an example of operations of the comparison unit 402 and the model correction unit 404 in a flowchart. The comparison unit 402 and the model correction unit 404 are repeatedly executed by the CPU 44 at an error monitoring calculation period Tc (for example, several tens of μsec).

具体的には、まず、ステップS121において、比較部402により、仮想モータ60の仮想モータ電流値Iu*,Iv*,Iw*の、実モータ12の実モータ電流値Iu,Iv,Iwからの誤差である電流誤差ΔIが、各相U,V,Wごとに計算され、それら3相のうちの少なくとも一つについてでも、前記計算された電流誤差ΔIの絶対値が、予め定められたしきい値ΔIthより大きいか否かが判定される。今回は、いずれの相についても、電流誤差ΔIの計算値がしきい値ΔIth以下であると仮定すると、このステップS121の判定がNOとなり、同じステップS121が再度実行される。   Specifically, first, in step S121, the comparison unit 402 causes the virtual motor current values Iu *, Iv *, Iw * of the virtual motor 60 to be different from the actual motor current values Iu, Iv, Iw of the real motor 12. Is calculated for each phase U, V, and W, and the absolute value of the calculated current error ΔI is a predetermined threshold value for at least one of the three phases. It is determined whether or not it is greater than Δ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においては、比較部402により、電流誤差ΔIがいずれの相についても、しきい値ΔIthを超えないように前記モータモデルを修正すべき修正量が計算される。   In step S122, the comparison unit 402 calculates a correction amount for correcting the motor model 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において、モデル修正部404により、仮想モデル60の入出力特性を定義するモータモデルが、前記計算された修正量に基づいて修正される(例えば、前記インダクタンス行列の複数の要素に共通に取得される補正係数または要素ごとに取得される修正係数が、それら要素のもとの値に乗算される)。電流誤差ΔIの計算値に基づいて仮想モデル60のティーチングが行われるのであり、その結果、仮想モデル60の入出力特性が、実モータ12の入出力特性をより正確に反映することとなる。その後、ステップS121に戻る。   Subsequently, in step S123, the model correction unit 404 corrects the motor model that defines the input / output characteristics of the virtual model 60 based on the calculated correction amount (for example, a plurality of elements of the inductance matrix). The correction factor acquired in common or the correction factor acquired 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.

以上の説明から明らかなように、本実施形態によれば、システム11が試運転されている状況にあるか本格稼動している状況にあるかを問わず、実モータ12の実際の入出力特性を反映するように、仮想モータ60の入出力特性すなわち前記モータモデルを個別にチューニングすることが可能である。   As is clear from the above description, according to the present embodiment, the actual input / output characteristics of the actual motor 12 can be obtained regardless of whether the system 11 is in a trial operation state or a full-scale operation state. As reflected, the input / output characteristics of the virtual motor 60, that is, the motor model can be individually tuned.

したがって、本実施形態によれば、システム11の製造段階にあっては、実モータ12の入出力特性の個体ばらつきなどを反映するように、仮想モータ60の入出力特性すなわちモータモデルを個別にチューニングすることが可能である。   Therefore, according to the present embodiment, in the manufacturing stage of the system 11, the input / output characteristics of the virtual motor 60, that is, the motor model is individually tuned to reflect individual variations in the input / output characteristics of the actual motor 12. Is possible.

また、システム11の出荷後であって、ユーザが実際にシステム11を使用する段階にあっては、実モータ12の入出力特性の経時劣化や、外的環境(例えば、温度環境)に起因する変化などを反映するように、仮想モータ60の入出力特性すなわちモータモデルを個別に、かつ、本来の用途で使用しつつ、それと並行して、かつ、自動的にチューニングすることが可能である。   In addition, after the system 11 is shipped, when the user actually uses the system 11, the input / output characteristics of the actual motor 12 are deteriorated with time or due to an external environment (for example, a temperature environment). It is possible to automatically tune the input / output characteristics of the virtual motor 60, that is, the motor model, individually and in parallel with the original application so as to reflect changes and the like.

そのようにしてチューニングされたモータモデルは、前述の他のいくつかの実施形態において採用したり、後述の他のいくつかの実施形態において採用することが可能である。   The motor model so tuned can be employed in some of the other embodiments described above or in some of the other embodiments described below.

以上の説明から明らかなように、本実施形態においては、比較部402とモデル修正部404とが互いに共同して、前記「修正部」の一例を構成する。   As is clear from the above description, in the present embodiment, the comparison unit 402 and the model correction unit 404 together form an example of the “correction unit”.

<第6実施形態> <Sixth Embodiment>

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

前述の第4実施形態においては、図17および図18に示すように、仮想モータ制御部64が、目標信号に基づき、かつ、仮想モータ電流信号Iu*,Iv*,Iw*の前回推定値をフィードバックし、かつ、最新の実モータ位置θmのもとでの座標変換を行うことにより、仮想モータ60のためのPWM信号(仮想モータ制御信号)Gu,Gv,Gw,Gx,Gy,Gzを決定する。さらに、仮想モータ制御部64は、それら仮想モータ制御信号Gu,Gv,Gw,Gx,Gy,Gzを決定するために用いられた仮想モータ電流信号Iu*,Iv*,Iw*を実コントローラ13に出力する。   In the above-described fourth embodiment, as shown in FIGS. 17 and 18, the virtual motor control unit 64 calculates the previous estimated values of the virtual motor current signals Iu *, Iv *, and Iw * based on the target signal. The PWM signals (virtual motor control signals) Gu, Gv, Gw, Gx, Gy, Gz for the virtual motor 60 are determined by performing feedback and performing coordinate conversion under the latest actual motor position θm. To do. Further, the virtual motor control unit 64 sends the virtual motor current signals Iu *, Iv *, Iw * used to determine the virtual motor control signals Gu, Gv, Gw, Gx, Gy, Gz to the real controller 13. Output.

さらに、第4実施形態においては、実コントローラ13が、仮想モータ制御部64から出力された仮想モータ電流信号Iu*,Iv*,Iw*を目標電流信号として用い、かつ、実モータ状態検出部15から出力された実モータ12の実モータ電流値Iu,Iv,Iwをフィードバックすることにより、実モータ12のためのPWM信号(実モータ制御信号)Gu,Gv,Gw,Gx,Gy,Gzを生成する。   Further, in the fourth embodiment, the real controller 13 uses the virtual motor current signals Iu *, Iv *, Iw * output from the virtual motor control unit 64 as the target current signal, and the real motor state detection unit 15 By feeding back the actual motor current values Iu, Iv, Iw of the actual motor 12 output from PWM, PWM signals (actual motor control signals) Gu, Gv, Gw, Gx, Gy, Gz for the actual motor 12 are generated. To do.

このように、第4実施形態においては、実モータ制御信号を決定するために、仮想モータ制御部64における1段目のフィードバック制御と、実コントローラ13における2段目のフィードバック制御とが行われる。   As described above, in the fourth embodiment, in order to determine the actual motor control signal, the first-stage feedback control in the virtual motor control unit 64 and the second-stage feedback control in the actual controller 13 are performed.

これに対し、本実施形態においては、図24に示すように、それら2段のフィードバック制御が仮想モータ制御部64のみにおいて行われ、その結果、その仮想モータ制御部64は、仮想モータ制御信号のみならず実モータ制御信号をも決定し、その決定された実モータ制御信号を実インバータ/パワーアンプ14に出力する。よって、本実施形態においては、実コントローラ13に相当する要素を有しない。   On the other hand, in the present embodiment, as shown in FIG. 24, the two-stage feedback control is performed only in the virtual motor control unit 64, and as a result, the virtual motor control unit 64 has only the virtual motor control signal. The actual motor control signal is also determined, and the determined actual motor control signal is output to the actual inverter / power amplifier 14. Therefore, in the present embodiment, there is no element corresponding to the actual controller 13.

図25には、モータ制御装置500を作動させるためにプロセッサ40によって実行される仮想モータ制御プログラムが概念的にフローチャートで表されている。この仮想モータ制御プログラムは、図19に示すものと共通するステップが多く、異なるのは、ステップS6が、仮想モータ制御信号としてのPWM信号を生成する点と、ステップS7が、仮想モータ制御信号としてのPWM信号を仮想PWMインバータ90に出力する点と、一連のステップS21−S27が一連のステップS41−S43で置換されている点とである。   FIG. 25 conceptually shows a virtual motor control program executed by the processor 40 to operate the motor control device 500 in a flowchart. This virtual motor control program has many steps in common with those shown in FIG. 19. The difference is that step S6 generates a PWM signal as a virtual motor control signal, and step S7 is a virtual motor control signal. The PWM signal is output to the virtual PWM inverter 90, and the series of steps S21 to S27 is replaced with the series of steps S41 to S43.

本実施形態においては、ステップS2−S9が、上述の1段目のフィードバック制御のために実行され、また、ステップS41−S43が、上述の2段目のフィードバック制御のために実行される。   In the present embodiment, steps S2-S9 are executed for the above-described first-stage feedback control, and steps S41-S43 are executed for the above-described second-stage feedback control.

ステップS41においては、実モータ状態検出部15から最新の実モータ電流信号Iu,Iv,Iwが入力される。   In step S41, the latest actual motor current signals Iu, Iv, Iw are input from the actual motor state detector 15.

続いて、ステップS42において、ステップS9において入力された最新の仮想モータ電流信号Iu*,Iv*,Iw*であって上述の1段目のフィードバック制御の効果すなわち誤差を反映しているものが目標電流信号として参照され、かつ、前記入力された実モータ電流信号Iu,Iv,Iwがフィードバックされることにより、実モータ制御信号Gu,Gv,Gw,Gx,Gy,Gzが生成される。これにより、上述の2段目のフィードバック制御が実行される。   Subsequently, in step S42, the latest virtual motor current signals Iu *, Iv *, Iw * input in step S9, which reflect the effect of the first-stage feedback control, that is, the error, are the targets. The actual motor control signals Gu, Gv, Gw, Gx, Gy, and Gz are generated by referring to the current signals and feeding back the input actual motor current signals Iu, Iv, and Iw. Thereby, the above-mentioned second-stage feedback control is executed.

その後、ステップS43において、それら生成された実モータ制御信号Gu,Gv,Gw,Gx,Gy,Gzが実インバータ/パワーアンプ14に出力され、それにより、実モータ12が制御される。続いて、ステップS11に移行する。   Thereafter, in step S43, the generated actual motor control signals Gu, Gv, Gw, Gx, Gy, and Gz are output to the actual inverter / power amplifier 14, thereby controlling the actual motor 12. Subsequently, the process proceeds to step S11.

以上の説明から明らかなように、本実施形態においては、仮想モータ制御部64は、各回の計算サイクルにおいて、1段目および2段目のフィードバック制御を順に実行する。具体的には、仮想モータ制御部64は、1段目のフィードバック制御のために、目標信号に基づき、かつ、前回の計算サイクルにおいて仮想モータ60から出力された前回推定値(例えば、仮想モータ電流信号Iu*,Iv*,Iw*)をフィードバックする。それにより、仮想モータ制御部64は、仮想モータ制御信号を決定し、その決定された仮想モータ制御信号を仮想モータ60に出力し、それにより、その仮想モータ60を作動させる。   As is apparent from the above description, in the present embodiment, the virtual motor control unit 64 sequentially executes the first-stage feedback control and the second-stage feedback control in each calculation cycle. Specifically, the virtual motor control unit 64 performs the previous estimated value (for example, virtual motor current) output from the virtual motor 60 in the previous calculation cycle based on the target signal for the first-stage feedback control. The signals Iu *, Iv *, Iw *) are fed back. Thereby, the virtual motor control unit 64 determines a virtual motor control signal, outputs the determined virtual motor control signal to the virtual motor 60, and thereby operates the virtual motor 60.

さらに、仮想モータ制御部64は、2段目のフィードバック制御のために、前記1段目のフィードバック制御において仮想モータ60から出力された直前推定値(例えば、仮想モータ電流信号Iu*,Iv*,Iw*)に基づき、かつ、実モータ12の作動状態(例えば、実モータ電流信号Iu,Iv,Iw)をフィードバックする。それにより、仮想モータ制御部64は、実モータ制御信号を決定し、その決定された実モータ制御信号を実モータ12に出力し、それにより、その実モータ12を作動させる。   Further, the virtual motor control unit 64 performs an immediately preceding estimated value output from the virtual motor 60 in the first-stage feedback control (for example, virtual motor current signals Iu *, Iv *, Iw *) and the operating state of the actual motor 12 (for example, actual motor current signals Iu, Iv, Iw) is fed back. Thereby, the virtual motor control unit 64 determines an actual motor control signal, outputs the determined actual motor control signal to the actual motor 12, and thereby operates the actual motor 12.

これに代えて、仮想モータ制御部64は、2段目のフィードバック制御のために、1段目のフィードバック制御において仮想モータ60に出力された仮想モータ制御信号に基づき、かつ、前記直前推定値をフィードバックすることにより、実モータ制御信号を決定するように変更することが可能である。この態様によれば、実モータ12の実モータ電流信号Iu,Iv,Iwを参照せずに済むため、この態様は、実モータ電流信号Iu,Iv,Iwを検出することが不可能または困難である場合に有効である。   Instead, the virtual motor control unit 64 uses the virtual motor control signal output to the virtual motor 60 in the first-stage feedback control for the second-stage feedback control, and calculates the immediately preceding estimated value. It is possible to change to determine the actual motor control signal by feeding back. According to this aspect, since it is not necessary to refer to the actual motor current signals Iu, Iv, and Iw of the actual motor 12, it is impossible or difficult to detect the actual motor current signals Iu, Iv, and Iw. Effective in some cases.

以上、本発明の実施の形態のいくつかを図面に基づいて詳細に説明したが、これらは例示であり、前記[発明の概要]の欄に記載の態様を始めとして、当業者の知識に基づいて種々の変形、改良を施した他の形態で本発明を実施することが可能である。   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 (6)

電気エネルギーを運動エネルギーに変換する実モータを制御するモータ制御装置であって、
前記実モータを模擬する仮想モータと、
その仮想モータを、前記実モータと一緒に、かつ、その実モータと実質的に同期するように作動するように制御する制御部と、
前記実モータと前記仮想モータとが一緒に作動している並行作動期間中に、前記実モータから、その実モータの実電力を計算するのに必要な実モータ関連情報を取得する実モータ関連情報取得部と、
前記並行作動期間中に、前記仮想モータから、その仮想モータの仮想電力を計算するのに必要な仮想モータ関連情報を取得する仮想モータ関連情報取得部と、
前記取得された実モータ関連情報および仮想モータ関連情報に基づき、前記実モータの実際の機械損を、その実モータまたは前記仮想モータの回転角に関連づけて取得して出力する実モータ機械損取得部と
を含むモータ制御装置。
A motor control device that controls an actual motor that converts electrical energy into kinetic energy,
A virtual motor that simulates the real motor;
A controller that controls the virtual motor to operate in conjunction with the real motor and in substantial synchronization with the real motor;
Real motor related information acquisition for acquiring real motor related information necessary to calculate the real power of the real motor from the real motor during a parallel operation period in which the real motor and the virtual motor are operating together. And
During the parallel operation period, from the virtual motor, a virtual motor related information acquisition unit that acquires virtual motor related information necessary for calculating virtual power of the virtual motor;
An actual motor mechanical loss acquisition unit that acquires and outputs the actual mechanical loss of the actual motor in association with the actual motor or the rotation angle of the virtual motor based on the acquired actual motor related information and virtual motor related information; Including a motor control device.
前記実モータ機械損取得部は、前記実モータ関連情報に基づいて前記実モータの実電力値を計算し、前記仮想モータ関連情報に基づいて前記仮想モータの仮想電力値を計算し、それら計算された実電力値と仮想電力値との差を前記実モータの実際の機械損として、その実モータまたは前記仮想モータの回転角に関連づけて取得して出力する請求項1に記載のモータ制御装置。   The actual motor mechanical loss acquisition unit calculates the actual power value of the actual motor based on the actual motor related information, calculates the virtual power value of the virtual motor based on the virtual motor related information, and these are calculated. The motor control device according to claim 1, wherein the difference between the actual power value and the virtual power value is acquired and output as an actual mechanical loss of the actual motor in association with the actual motor or the rotation angle of the virtual motor. 電気エネルギーを運動エネルギーに変換する実モータを制御するモータ制御方法であって、
前記実モータを模擬する仮想モータを、前記実モータと一緒に、かつ、その実モータと実質的に同期するように作動するように制御する制御工程と、
前記実モータと前記仮想モータとが一緒に作動している並列作動期間中に、前記実モータから、その実モータの実電力を計算するのに必要な実モータ関連情報を取得する実モータ関連情報取得工程と、
前記並列作動期間中に、前記仮想モータから、その仮想モータの仮想電力を計算するのに必要な仮想モータ関連情報を取得する仮想モータ関連情報取得工程と、
前記取得された実モータ関連情報および仮想モータ関連情報に基づき、前記実モータの実際の機械損を、その実モータまたは前記仮想モータの回転角に関連づけて取得して出力する実モータ機械損取得工程と
を含むモータ制御方法。
A motor control method for controlling an actual motor that converts electrical energy into kinetic energy,
A control step for controlling a virtual motor that simulates the real motor so as to operate together with the real motor and substantially in synchronization with the real motor;
Real motor related information acquisition for acquiring real motor related information necessary for calculating real power of the real motor from the real motor during a parallel operation period in which the real motor and the virtual motor are operating together Process,
During the parallel operation period, a virtual motor related information acquisition step of acquiring virtual motor related information necessary for calculating virtual power of the virtual motor from the virtual motor;
An actual motor mechanical loss acquisition step of acquiring and outputting an actual mechanical loss of the real motor in association with the rotation angle of the real motor or the virtual motor based on the acquired actual motor related information and virtual motor related information; A motor control method including:
前記実モータ機械損取得工程は、前記実モータ関連情報に基づいて前記実モータの実電力値を計算し、前記仮想モータ関連情報に基づいて前記仮想モータの仮想電力値を計算し、それら計算された実電力値と仮想電力値との差を前記実モータの実際の機械損として、その実モータまたは前記仮想モータの回転角に関連づけて取得して出力する請求項3に記載のモータ制御方法。   The actual motor mechanical loss acquisition step calculates the actual power value of the actual motor based on the actual motor related information, calculates the virtual power value of the virtual motor based on the virtual motor related information, and these are calculated. The motor control method according to claim 3, wherein the difference between the actual power value and the virtual power value is acquired and output as an actual mechanical loss of the actual motor in association with the actual motor or the rotation angle of the virtual motor. 請求項3または4に記載のモータ制御方法を実行するためにコンピュータによって実行されるプログラム。   A program executed by a computer to execute the motor control method according to claim 3 or 4. 請求項5に記載のプログラムをコンピュータ読み取り可能に記録した記録媒体。   A recording medium in which the program according to claim 5 is recorded so as to be readable by a computer.
JP2013199656A 2013-09-26 2013-09-26 Motor control device and motor control method Pending JP2015023788A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2013199656A JP2015023788A (en) 2013-09-26 2013-09-26 Motor control device and motor control method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2013199656A JP2015023788A (en) 2013-09-26 2013-09-26 Motor control device and motor control method

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
JP2013147284A Division JP5379327B1 (en) 2013-07-16 2013-07-16 Motor control device and motor control method

Publications (1)

Publication Number Publication Date
JP2015023788A true JP2015023788A (en) 2015-02-02

Family

ID=52487796

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2013199656A Pending JP2015023788A (en) 2013-09-26 2013-09-26 Motor control device and motor control method

Country Status (1)

Country Link
JP (1) JP2015023788A (en)

Similar Documents

Publication Publication Date Title
JP5156352B2 (en) AC motor control device
JP5781235B2 (en) Synchronous machine controller
JP3467961B2 (en) Control device for rotating electric machine
US8497645B2 (en) Control device for electric motor drive device
CN102969951A (en) Synchronous motor drive system and synchronous motor
JP5405685B1 (en) Motor control device and motor control method
JP5637155B2 (en) Motor control device and motor control method
CN103378793B (en) Generate the method for voltage instruction, system and the equipment for controlling magneto operation
JP3397013B2 (en) Control device for synchronous motor
JP6687228B1 (en) AC rotating electric machine control device
JP2012231615A (en) Motor drive controller and motor drive method
WO2013024780A1 (en) Pm motor position-sensorless control device
JP4228651B2 (en) Method and apparatus for controlling IPM motor
JP5379327B1 (en) Motor control device and motor control method
JP2014128190A (en) Motor control device and motor control method
JP6307223B2 (en) Three-phase synchronous motor control device, three-phase synchronous motor drive system using the same, integrated motor system, pump system, compressor system, and three-phase synchronous motor control method
Feng et al. Flux estimation of induction motors using high-order terminal sliding-mode observer
JP5301025B1 (en) Motor control device and motor control method
JP2015023788A (en) Motor control device and motor control method
JP2014217269A (en) Motor control device and motor control method
JP2013219988A (en) Control device of rotating machine
JP2014161201A (en) Motor controller
JP5351345B1 (en) Motor control device
JP2018046615A (en) Temperature estimation device, interlinkage magnetic flux estimation device and motor controller
Li et al. Commutation compensation strategy for brushless DC motor based on terminal voltage reconstruction