JP5405685B1 - Motor control device and motor control method - Google Patents
Motor control device and motor control method Download PDFInfo
- Publication number
- JP5405685B1 JP5405685B1 JP2013089698A JP2013089698A JP5405685B1 JP 5405685 B1 JP5405685 B1 JP 5405685B1 JP 2013089698 A JP2013089698 A JP 2013089698A JP 2013089698 A JP2013089698 A JP 2013089698A JP 5405685 B1 JP5405685 B1 JP 5405685B1
- Authority
- JP
- Japan
- Prior art keywords
- motor
- virtual
- signal
- current
- actual
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Landscapes
- Control Of Electric Motors In General (AREA)
- Control Of Ac Motors In General (AREA)
Abstract
【課題】実モータおよび/またはその実モータのための実制御系の設計の支援を容易にしたり、実モータの制御を容易にする。
【解決手段】モータ制御装置10は、制御信号に基づいて実モータ12を制御するために、実モータ12の作動中、仮想モータを作動させ、それにより、制御信号を決定する仮想モータ計算部50を有する。仮想モータは、実モータ12を模擬するために、仮想3相電流信号が入力されると、その仮想3相電流信号によって表される3相電流を実モータ12から出力するためにその実モータ12に入力すべき3相電圧を表す仮想3相電圧信号を出力する。仮想モータ計算部50は、実モータの制御目標値を表す目標信号に基づいて仮想電流信号を生成し、その仮想電流信号を仮想モータに入力し、それに応答して仮想モータから出力された仮想電圧信号をそのまま制御信号として用いるかまたは仮想電圧信号に基づいて制御信号を決定する。
【選択図】図1The present invention facilitates design support of an actual motor and / or an actual control system for the actual motor, and facilitates control of the actual motor.
In order to control a real motor based on a control signal, a motor control device operates a virtual motor during operation of the real motor and thereby determines a control signal. Have When a virtual three-phase current signal is input to simulate the real motor 12, the virtual motor outputs the three-phase current represented by the virtual three-phase current signal from the real motor 12 to the real motor 12. A virtual three-phase voltage signal representing the three-phase voltage to be input is output. The virtual motor calculation unit 50 generates a virtual current signal based on a target signal representing a control target value of the actual motor, inputs the virtual current signal to the virtual motor, and outputs a virtual voltage output from the virtual motor in response to the virtual current signal. The signal is used as it is as the control signal or the control signal is determined based on the virtual voltage signal.
[Selection] Figure 1
Description
本発明は、電気エネルギーを運動エネルギーに変換する実モータを制御する技術に関する。 The present invention relates to a technique for controlling an actual motor that converts electrical energy into kinetic energy.
電気エネルギーを運動エネルギーに変換するために、電気的に駆動されるモータが使用される。この種のモータは、ますます拡大する種々の用途を有しており、そのような用途としては、例えば、自動車の如き移動体の駆動源や、ロボット、工作機械、搬送機械、荷役機械、空調機器、事務機器の如き運動発生装置の駆動源(アクチュエータ)がある。 An electrically driven motor is used to convert electrical energy into kinetic energy. This type of motor has a wide variety of applications. Examples of such applications include a drive source for a moving body such as an automobile, a robot, a machine tool, a transport machine, a cargo handling machine, and an air conditioner. There are drive sources (actuators) for motion generators such as equipment and office equipment.
例えば、自動車という用途においては、モータのみを駆動源として搭載する形式であるか、モータと燃焼機関とをいずれも駆動源として搭載する形式であるかを問わず、モータを駆動源として自動車に搭載することが普及している。この用途においては、モータの種類やモータが使用される環境の如何を問わず、モータを思い通りに制御することがますます必要となってきている。 For example, in the case of an automobile, whether it is a type in which only a motor is mounted as a driving source or a type in which both a motor and a combustion engine are mounted as driving sources, the motor is mounted on the automobile as a driving source. It is popular. In this application, it is becoming increasingly necessary to control the motor as desired regardless of the type of motor and the environment in which the motor is used.
モータを使用する場合には、そのモータを制御する制御系の設計が重要である。また、モータを精度よく制御するためには、モータの入出力特性に適合する制御系の設計が必要である。 When a motor is used, it is important to design a control system that controls the motor. In addition, in order to control the motor with high accuracy, it is necessary to design a control system suitable for the input / output characteristics of the motor.
また、モータのための制御系を設計するために、実際のモータを使用することが困難である場合がある。この場合には、その実モータの入出力特性を模擬する計算を行う仮想モータが実モータの代わりに使用され、その仮想モータを用いて、実モータのための制御系が設計される場合もある(例えば、特許文献1および2参照。)。
In addition, it may be difficult to use an actual motor in order to design a control system for the motor. In this case, a virtual motor that performs calculation that simulates the input / output characteristics of the actual motor may be used instead of the actual motor, and a control system for the actual motor may be designed using the virtual motor ( For example, see
制御系の設計に際し、実モータの入出力特性が線形である場合には、制御系の設計も、仮想モータの設計も容易である。この種の実モータは、一般に、希土類を使用する磁石を使用する。 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.
しかしながら、近年、希土類の入手が困難となっていることもあり、磁石を用いないモータに転換したいという要望が増してきている。また、磁石を用いるにしてもその使用量を減らしたいという要望もある。磁石の使用量が少ないモータは、小型化・高速化に伴い、定格出力(例えば、モータ速度やモータトルク)を超えた領域で使用される場合がある。また、安価な磁石材料を用いてモータを製作したいという要望もある。 However, in recent years, it has become difficult to obtain rare earth elements, and there is an increasing demand for switching to motors that do not use magnets. There is also a desire to reduce the amount of use of magnets. A motor that uses a small amount of magnets may be used in a region that exceeds a rated output (for example, motor speed or motor torque) as the size and speed of the motor increase. There is also a desire to manufacture motors using inexpensive magnet materials.
いずれにしても、モータの入出力特性が非線形となり易く、そのため、そのようなモータのための制御系の設計も困難となり易い。 In any case, the input / output characteristics of the motor are likely to be non-linear, which makes it difficult to design a control system for such a motor.
以上説明した事情を背景として、本発明は、実モータおよび/またはその実モータのための実制御系の設計の支援を容易にしたり、実モータの制御を容易にすることを課題としてなされたものである。 In view of the circumstances described above, the present invention has been made with the object of facilitating the support of the design of the actual motor and / or the actual control system for the actual motor, and facilitating the control of the actual motor. is there.
本発明によって下記の各態様が得られる。各態様は、項に区分し、各項には番号を付し、必要に応じて他の項の番号を引用する形式で記載する。これは、本発明が採用し得る技術的特徴の一部およびそれの組合せの理解を容易にするためであり、本発明が採用し得る技術的特徴およびそれの組合せが以下の態様に限定されると解釈すべきではない。すなわち、下記の態様には記載されていないが本明細書には記載されている技術的特徴を本発明の技術的特徴として適宜抽出して採用することは妨げられないと解釈すべきなのである。 The following aspects are obtained by the present invention. Each aspect is divided into sections, each section is given a number, and is described in a form that cites other section numbers as necessary. This is to facilitate understanding of some of the technical features that the present invention can employ and combinations thereof, and the technical features that can be employed by the present invention and combinations thereof are limited to the following embodiments. Should not be interpreted. That is, it should be construed that it is not impeded to appropriately extract and employ the technical features described in the present specification as technical features of the present invention although they are not described in the following embodiments.
さらに、各項を他の項の番号を引用する形式で記載することが必ずしも、各項に記載の技術的特徴を他の項に記載の技術的特徴から分離させて独立させることを妨げることを意味するわけではなく、各項に記載の技術的特徴をその性質に応じて適宜独立させることが可能であると解釈すべきである。 Further, describing each section in the form of quoting the numbers of the other sections does not necessarily prevent the technical features described in each section from being separated from the technical features described in the other sections. It should not be construed as meaning, but it should be construed that the technical features described in each section can be appropriately made independent depending on the nature.
(1) 電気エネルギーを運動エネルギーに変換する実モータを制御するモータ制御装置であって、
前記実モータを模擬する仮想モータであって、仮想電流信号が入力されると、その仮想電流信号によって表される電流を前記実モータが出力するためにその実モータに入力すべき電圧を表す仮想電圧信号を出力するものと、
前記実モータの制御目標値を表す目標信号に基づいて前記仮想電流信号を生成し、その仮想電流信号を前記仮想モータに入力し、それに応答して前記仮想モータから出力された仮想電圧信号をそのまま制御信号として用いるかまたは前記仮想電圧信号に基づいて前記制御信号を決定し、その決定された制御信号に基づいて前記実モータを制御する制御部と
を含むモータ制御装置。
(1) A motor control device that controls an actual motor that converts electrical energy into kinetic energy,
A virtual motor that simulates the real motor, and when a virtual current signal is input, a virtual voltage that represents a voltage to be input to the real motor in order to output the current represented by the virtual current signal. One that outputs a signal,
The virtual current signal is generated based on a target signal representing a control target value of the actual motor, the virtual current signal is input to the virtual motor, and the virtual voltage signal output from the virtual motor in response to the virtual current signal is directly input. A control unit that uses the control signal as a control signal or determines the control signal based on the virtual voltage signal and controls the real motor based on the determined control signal.
本明細書の全体を通して、「実モータを模擬する仮想モータ」という文言は、例えば、実モータの実際のまたは目標の入出力特性(例えば、入力電圧−出力電流特性)と実質的に同じ入出力特性を有する仮想モータを意味するように解釈したり、モータの入出力特性や動特性を定義するモータモデルを実モータとの間で実質的に共有する仮想モータを意味するように解釈することが可能である。 Throughout this specification, the phrase “virtual motor that simulates a real motor” means, for example, an input / output that is substantially the same as an actual or target input / output characteristic (eg, input voltage-output current characteristic) of the real motor. It can be interpreted to mean a virtual motor with characteristics, or it can be interpreted to mean a virtual motor that substantially shares the motor model that defines the input / output characteristics and dynamic characteristics of the motor with the actual motor. Is possible.
また、「制御信号」という用語は、実モータおよび仮想モータに直接的に入力されるか、または間接的に入力され、それにより、結果的に、それら実モータおよび仮想モータの作動状態に変化を与えることとなる信号を意味する。 In addition, the term “control signal” is input directly or indirectly to the real motor and the virtual motor, thereby changing the operation state of the real motor and the virtual motor. Means the signal to be given.
この意味における制御信号は、例えば、第1信号がインバータやパワーアンプなどの電力変換器に入力されると、前記第1信号に見合った電気エネルギーが第2信号としてモータに入力される入力系統については、前記第1信号を意味する用語として解釈したり、前記第2信号を意味する用語として解釈することが可能である。なぜなら、前記第1信号も前記第2信号も、モータにとり、そのモータを制御するための信号であることに変わりはなく、しかも、モータの作動状態に一義的に対応する信号であるからである。 The control signal in this sense is an input system in which, for example, when a first signal is input to a power converter such as an inverter or a power amplifier, electric energy corresponding to the first signal is input to the motor as a second signal. Can be interpreted as a term meaning the first signal or as a term meaning the second signal. This is because both the first signal and the second signal are signals for controlling the motor for the motor, and are signals that uniquely correspond to the operating state of the motor. .
(2) 前記制御部は、前記目標信号に基づいて前記仮想モータのための目標電流信号を生成し、その目標電流信号に基づき、前記仮想モータの電流のベクトル制御を、前記目標電流信号の座標変換が前記実モータの回転角を用いて行われるように行い、それにより、前記仮想電流信号を生成する(1)項に記載のモータ制御装置。 (2) The control unit generates a target current signal for the virtual motor based on the target signal, and performs vector control of the current of the virtual motor based on the target current signal, and coordinates of the target current signal. The motor control device according to item (1), wherein the conversion is performed using the rotation angle of the real motor, thereby generating the virtual current signal.
(3) さらに、前記実モータの電流を検出する検出部を含み、
前記制御部は、前記検出された実モータ電流と、その実モータ電流の検出タイミングに時間的に関連付けられるタイミングで前記仮想モータに入力される前記仮想電流信号によって表される仮想モータ電流との差に基づき、その差が減少するように、前記仮想電圧信号を直接的にまたは間接的に補正する(1)または(2)項に記載のモータ制御装置。
(3) Furthermore, a detection unit for detecting the current of the actual motor is included,
The control unit determines a difference between the detected actual motor current and a virtual motor current represented by the virtual current signal input to the virtual motor at a timing temporally related to the detection timing of the actual motor current. The motor control device according to (1) or (2), wherein the virtual voltage signal is corrected directly or indirectly so that the difference is reduced.
(4) 前記仮想モータは、仮想3相電流信号が入力されると、その仮想3相電流信号によって表される3相電流を前記実モータが出力するためにその実モータに入力すべき3相電圧を表す仮想3相電圧信号を出力し、
前記制御部は、前記目標信号を、前記仮想モータのための仮想dq軸指令電流信号に変換し、その仮想dq軸指令電流信号を、前記実モータの回転角のもとで、前記仮想モータのための仮想3相指令電流信号に変換し、その仮想3相指令電流信号を前記仮想モータに入力し、それに応答して前記仮想モータから出力された仮想3相指令電圧信号に前記仮想3相指令電流信号を変換し、前記仮想3相指令電圧信号をそのまま前記制御信号として用いるかまたは前記仮想3相指令電圧信号に基づいて前記制御信号を決定する(1)項に記載のモータ制御装置。
(4) When the virtual three-phase current signal is input to the virtual motor, the three-phase voltage to be input to the real motor in order for the real motor to output the three-phase current represented by the virtual three-phase current signal Output a virtual three-phase voltage signal representing
The control unit converts the target signal into a virtual dq axis command current signal for the virtual motor, and converts the virtual dq axis command current signal of the virtual motor under the rotation angle of the real motor. The virtual three-phase command current signal is input to the virtual motor, and the virtual three-phase command voltage signal output from the virtual motor in response to the virtual three-phase command current signal is input to the virtual motor. The motor control device according to (1), wherein a current signal is converted and the virtual three-phase command voltage signal is used as the control signal as it is or the control signal is determined based on the virtual three-phase command voltage signal.
(5) さらに、前記実モータ回転角を取得する取得部を含み、
前記制御部は、さらに、
前記取得部によって前記実モータ回転角が取得された時期から、その取得された実モータ回転角を用いて計算された前記制御信号が前記実モータに供給される時期までの間に前記実モータ回転角が変化することが予想される変化量を推定する推定部と、
その推定された変化量に基づき、前記取得された実モータ回転角を補正する角度補正部と
を含み、
前記制御部は、前記補正された実モータ回転角のもとで、前記仮想dq軸指令電流信号を前記仮想3相指令電流信号に変換する(4)項に記載のモータ制御装置。
(5) Furthermore, the acquisition part which acquires the said actual motor rotation angle is included,
The control unit further includes:
The actual motor rotation from the time when the actual motor rotation angle is acquired by the acquisition unit to the time when the control signal calculated using the acquired actual motor rotation angle is supplied to the actual motor. An estimator for estimating the amount of change in which the angle is expected to change;
An angle correction unit that corrects the acquired actual motor rotation angle based on the estimated change amount, and
The motor control device according to (4), wherein the control unit converts the virtual dq-axis command current signal into the virtual three-phase command current signal under the corrected actual motor rotation angle.
(6) 前記仮想モータは、前記実モータにおける入力電圧と出力電流との関係である実入出力特性を模擬する仮想入出力特性を有し、前記仮想3相指令電流信号が入力されると、前記仮想入出力特性に基づき、前記仮想3相指令電流信号に対応する前記仮想3相指令電圧信号を出力し、
当該モータ制御装置は、さらに、前記実モータの実3相電流を検出する検出部を含み、
前記制御部は、前記検出された実3相電流と、その実3相電流の検出タイミングに時間的に関連付けられるタイミングで前記仮想モータに入力される前記仮想3相指令電流信号によって表される仮想3相電流との差に基づき、前記実3相電流の次回値と前記仮想3相電流の次回値との差が減少するように、前記仮想入出力特性を修正する(4)または(5)項に記載のモータ制御装置。
(6) The virtual motor has a virtual input / output characteristic that simulates a real input / output characteristic that is a relationship between an input voltage and an output current in the real motor, and when the virtual three-phase command current signal is input, Based on the virtual input / output characteristics, the virtual three-phase command voltage signal corresponding to the virtual three-phase command current signal is output,
The motor control device further includes a detection unit that detects a real three-phase current of the real motor,
The control unit is a virtual 3 represented by the detected real three-phase current and the virtual three-phase command current signal input to the virtual motor at a timing temporally related to the detection timing of the real three-phase current. The virtual input / output characteristic is corrected so that the difference between the next value of the actual three-phase current and the next value of the virtual three-phase current is reduced based on the difference from the phase current (4) or (5) The motor control device described in 1.
(7) さらに、前記実モータの実3相電流を検出する検出部を含み、
前記制御部は、前記検出された実3相電流と、その実3相電流の検出タイミングに時間的に関連付けられるタイミングで前記仮想モータに入力される前記仮想3相指令電流信号によって表される仮想3相電流との差に基づき、前記実3相電流の次回値と前記仮想3相電流の次回値との差が減少するように、前記仮想モータから出力された仮想3相指令電圧信号を補正する(4)ないし(6)項のいずれかに記載のモータ制御装置。
(7) Furthermore, a detection unit for detecting an actual three-phase current of the actual motor is included,
The control unit is a virtual 3 represented by the detected real three-phase current and the virtual three-phase command current signal input to the virtual motor at a timing temporally related to the detection timing of the real three-phase current. Based on the difference from the phase current, the virtual three-phase command voltage signal output from the virtual motor is corrected so that the difference between the next value of the actual three-phase current and the next value of the virtual three-phase current is reduced. The motor control device according to any one of (4) to (6).
(8) 前記制御部は、さらに、前記実モータの作動状態と前記仮想モータの作動状態との差に基づき、その差が減少するように、前記仮想モータの入出力特性を修正する(1)項に記載のモータ制御装置。 (8) The controller further modifies the input / output characteristics of the virtual motor based on the difference between the operating state of the real motor and the operating state of the virtual motor so that the difference decreases (1). The motor control device according to item.
(9) 電気エネルギーを運動エネルギーに変換する実モータを制御するモータ制御方法であって、
制御信号に基づいて前記実モータを制御する第1工程と、
前記実モータの作動中、仮想モータを作動させ、それにより、前記制御信号を決定する第2工程と
を含み、
前記仮想モータは、前記実モータを模擬するために、仮想電流信号が入力されると、その仮想電流信号によって表される電流を前記実モータが出力するためにその実モータに入力すべき電圧を表す仮想電圧信号を出力し、
前記第2工程は、前記実モータの制御目標値を表す目標信号に基づいて前記仮想電流信号を生成し、その仮想電流信号を前記仮想モータに入力し、それに応答して前記仮想モータから出力された仮想電圧信号をそのまま前記制御信号として用いるかまたは前記仮想電圧信号に基づいて前記制御信号を決定するモータ制御方法。
(9) A motor control method for controlling an actual motor that converts electrical energy into kinetic energy,
A first step of controlling the actual motor based on a control signal;
A second step of activating a virtual motor during operation of the real motor, thereby determining the control signal;
The virtual motor represents a voltage to be input to the real motor in order to output the current represented by the virtual current signal when the virtual current signal is input to simulate the real motor. Output virtual voltage signal
The second step generates the virtual current signal based on a target signal representing a control target value of the real motor, inputs the virtual current signal to the virtual motor, and outputs the virtual current signal in response to the virtual current signal. A motor control method in which the virtual voltage signal is directly used as the control signal or the control signal is determined based on the virtual voltage signal.
(10) (9)項に記載のモータ制御方法を実行するためにコンピュータによって実行されるプログラム。 (10) A program executed by a computer to execute the motor control method according to (9).
(11) (10)項に記載のプログラムをコンピュータ読み取り可能に記録した記録媒体。 (11) A recording medium on which the program according to item (10) is recorded so as to be readable by a computer.
この記録媒体は種々な形式を採用可能であり、例えば、フレキシブル・ディスク等の磁気記録媒体、CD、CD−ROM等の光記録媒体、MO等の光磁気記録媒体、ROM等のアンリムーバブル・ストレージ等のいずれかを採用し得るが、それらに限定されない。 This recording medium can adopt various formats, for example, a magnetic recording medium such as a flexible disk, an optical recording medium such as a CD and a CD-ROM, a magneto-optical recording medium such as an MO, and an unremovable storage such as a ROM. However, it is not limited to them.
本発明によれば、実モータと仮想モータとを一緒に作動させることにより、仮想モータの作動状態量を用いて実モータを精度よく制御したり、実モータの作動状態量を用いて仮想モータの入出力特性をキャリブレートすることが可能となる。 According to the present invention, by operating the real motor and the virtual motor together, the real motor can be accurately controlled using the operation state quantity of the virtual motor, or the virtual motor can be controlled using the operation state quantity of the real motor. Input / output characteristics can be calibrated.
以下、本発明のさらに具体的で例示的な実施の形態のうちのいくつかを図面に基づいて詳細に説明する。 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
実モータ12は、一般に、複数極のロータ(図示しない)と、複数極のステータ(図示しない)と、磁束形成部(図示しないが、具体的には、例えば、巻き線)とを有するように構成される。図2に示すように、実モータ12は、前記ロータと共に回転するシャフト13を有しており、そのシャフト13が可動部材(図示しないが、具体的には、例えば、車両の車輪、工作機械の工具、ロボットのアームなど)に機械的に連結され、それにより、可動部材が駆動される。
The
実モータ12のいくつかの具体例としては、界磁に永久磁石を使用して回転する永久磁石同期モータ(PMSM)、永久磁石を使用せず、渦電流を利用して回転する誘導モータ(IM)、スイッチ・リラクタンス・モータ(SRM)などがある。そのリラクタンス・モータにおいては、ロータが、永久磁石を使用することなく、強磁性の鉄心で構成されるため、リラクタンス・モータは、永久磁石を使用しない無整流子モータの一種である。
Some specific examples of the
実モータ12が3相(U相、V相、W相)の巻線を有する場合、実モータ12の各種物理量を記述するために、次のような記号が使用される。
When the
Vu,Vv,Vw:端子電圧(「巻線電圧」または「相電圧」ともいう。)[V]
Iu,Iv,Iw:相電流(「巻線電流」ともいう。)[A]
θm:ロータ(またはシャフト13)の角度(位相または回転位置であり、「モータ角」または「モータ位置」ともいう)[rad]
ωm:ロータ(またはシャフト13)の角速度(「モータ速度」ともいう)[rad/sec]
T:モータ出力トルク[Nm]
Fu,Fv,Fw:相磁束[Wb]
Vu, Vv, Vw: terminal voltage (also referred to as “winding voltage” or “phase voltage”) [V]
Iu, Iv, Iw: Phase current (also referred to as “winding current”) [A]
θm: angle of rotor (or shaft 13) (phase or rotational position, also referred to as “motor angle” or “motor position”) [rad]
ωm: Angular speed of rotor (or shaft 13) (also called “motor speed”) [rad / sec]
T: Motor output torque [Nm]
Fu, Fv, Fw: Phase magnetic flux [Wb]
なお、本実施形態および後述のいくつかの実施形態の説明において、同じ記号が、単独で使用される箇所と、「*」を末尾に有するように使用される箇所とが存在する。それら実施形態においては、同じ記号が、単独で使用される場合には、実際値または検出値を意味する一方、「*」と組み合わせて使用される場合には、指令値を意味するという用法と、同じ記号が、単独で使用される場合には、実モータ12についての物理量であることを意味する一方、「*」と組み合わせて使用される場合には、後述の仮想モータ60についての物理量であることを意味するという用法とがあるが、特記しない限り、前者の用法を採用することに留意されたい。
In the present embodiment and the description of some embodiments described later, there are places where the same symbol is used alone and places where “*” is used at the end. In these embodiments, the same symbol means an actual value or a detected value when used alone, whereas when used in combination with “*”, it means a command value. When the same symbol is used alone, it means a physical quantity for the
図1に示すように、システム11は、実モータ12を駆動するために、実インバータ/パワーアンプ14をさらに備えている。その実インバータ/パワーアンプ14は、実モータ12に電気エネルギーを供給する実インバータまたは実パワーアンプを有するように構成される。実モータ12に供給される電気エネルギーは、実モータ12が3相(U相、V相、W相)の巻線を有する場合、端子電圧Vu,Vv,Vwである。
As shown in FIG. 1, the
図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
複数のゲート24は、複数のスイッチング素子(すなわち、複数の上アーム・スイッチング素子および複数の下アーム・スイッチング素子)として構成されており、それらゲート24は、外部からの複数のパルス信号であるゲート信号Gu,Gv,Gw,Gx,Gy,Gwに応じてスイッチング動作を行う。
The plurality of
このように構成されることにより、実インバータ16は、外部から複数のゲート信号Gu,Gv,Gw,Gx,Gy,Gwが制御信号として入力されると、その制御信号に応じた高さの端子電圧Vu,Vv,VwをPWM(パルス幅変調)方式によって生成し、それら生成された端子電圧Vu,Vv,Vwを実モータ12に供給する。すなわち、本実施形態においては、複数のゲート信号Gu,Gv,Gw,Gx,Gy,Gwが、複数の制御信号を構成するとともに、各信号が、PWM信号として形成されるのである。
With this configuration, when the plurality of gate signals Gu, Gv, Gw, Gx, Gy, and Gw are input as control signals from the outside, the
外部から実インバータ/パワーアンプ14に入力される制御信号は、実インバータ/パワーアンプ14が実インバータ16を有する場合には、上述のように、前記複数のゲート信号であるが、実インバータ/パワーアンプ14が実パワーアンプ(図示しない)を有する場合には、実モータ12の相数と同数のアナログ信号となる。
When the actual inverter /
図1に示すように、システム11は、実モータ12の作動状態をモニタするために、実モータ12の作動状態を検出し、その結果を表す実モータ状態信号を出力する実モータ状態検出部30をさらに備えている。実モータ状態検出部30は、実モータ12の作動状態として、例えば、実モータ12の実3相電流Iu,Iv,Iw、実モータ速度ωm、実モータ位置θmなどを検出できる。実3相電流Iu,Iv,Iwをモニタすることが必要である場合には、実モータ状態検出部30は、電流センサ(図示しない)を含むように構成され、また、実モータ位置θmを検出することが必要である場合には、実モータ状態検出部30は、例えば、ロータリ・エンコーダ(図示しない)を含むように構成される。
As shown in FIG. 1, in order to monitor the operating state of the
図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
演算回路42により、仮想モータ計算部50が実現される。すなわち、仮想モータ計算部50は、演算回路42により、高速演算可能であるように構成されているのである。
A
概略的に説明するに、仮想モータ計算部50は、図3に示すように、実モータ12の電圧−電流特性(後に図4を参照して詳述される電圧電流方程式により表される)を模擬する仮想モータ60を主体として構成されている。仮想モータ計算部50は、その仮想モータ60を用いることにより、目標信号によって表される制御目標値に応じた実モータ12の電流(指令電流)を生成するためにその実モータ12に供給すべき電圧(指令電圧)を計算する。
In general, the virtual
仮想モータ60は、それに、指令電流を表す電流信号が入力されると、実モータ12を模擬する解析プログラムを演算回路42(図1参照)に実行させることにより、前記入力された電流信号によって表される仮想電流(仮想3相電流)と同じ大きさを有する実電流(実3相電流)を実モータ12によって実現するためにその実モータ12に供給すべき実電圧(実3相電圧)が計算される。その計算された実電圧が、上述の指令電圧である。
When a current signal representing a command current is input to the
その実モータ12の指令電圧は、仮想モータ60にとっての指令電圧でもあり、また、上述の、実モータ12の指令電流は、仮想モータ60にとっての指令電流でもある。よって、結局、仮想モータ計算部50は、実モータ12と仮想モータ60との共通の指令電流から、それら実モータ12と仮想モータ60とに共通の指令電圧を計算することになる。
The command voltage of the
前記「背景技術」の欄において詳述したように、従来の技術では、仮想モータ60は、実モータ12や、その実モータ12を制御する実コントローラについての試験が終了するまで、実モータ12を代替するものとして試験機において使用される。そして、それら実モータ12や実コントローラが完成する(仕様が確定する)と、今度は、実モータ12が、仮想モータ60を代替するものとして実機に搭載される。このように、従来の技術では、試験機においても実機においても、仮想モータ60が実モータ12と一緒に搭載されるとともに一緒に作動させられることはなかった。
As described in detail in the section “Background Art”, in the conventional technique, the
これに対し、本実施形態においては、試験機であるか実機であるかを問わず、仮想モータ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
仮想モータ計算部50は、実モータ12の停止中(実モータ12に入力される制御信号が時間的に変化しないために、実モータ12への電気エネルギーの供給が不要である場合)であっても、作動し続ける。
The virtual
本実施形態においては、システム11のうち、図1に示す仮想モータ計算部50(プロセッサ40によって実現される)を構成する部分が、モータ制御装置10を構成し、図3に示す仮想モータ計算部50のうち、仮想モータ60を除く部分が、モータ制御装置10のうちの「制御部」を構成している。
In the present embodiment, the portion of the
ここで、一般的なモータの入出力特性を説明するに、図4に示すように、3相巻線のモータの入出力特性は、一般に、電圧方程式(電圧電流方程式)によって近似的に記述できることが既に知られている。この事実によれば、その電圧方程式を用いることにより、各相ごとの相電流を表すモータ電流ベクトルi(=[iu,iv,iw])から、各相ごとの端子電圧を表すモータ電圧ベクトルv(=[vu,vv,vw])を計算することができる。 Here, the input / output characteristics of a general motor will be described. As shown in FIG. 4, the input / output characteristics of a three-phase winding motor can generally be described approximately by a voltage equation (voltage-current equation). Is already known. According to this fact, by using the voltage equation, a motor voltage vector v representing a terminal voltage for each phase is obtained from a motor current vector i (= [iu, iv, iw]) representing a phase current for each phase. (= [Vu, vv, vw]) can be calculated.
図4に示す電圧方程式中の各種記号の定義を説明するに、「Ra」は、モータの巻線抵抗を表し、また、「ψ」は、モータの鎖交磁束ベクトルψ(=[ψu,ψv,ψw])を表し、また、「t」は、時間を表している。 To describe the definitions of various symbols in the voltage equation shown in FIG. 4, “Ra” represents the winding resistance of the motor, and “ψ” represents the flux linkage vector ψ (= [ψu, ψv) of the motor. , Ψw]), and “t” represents time.
図4に示すように、モータの鎖交磁束ベクトルψは、相電流による鎖交磁束と、電機子鎖交磁束との和に等しい。相電流による鎖交磁束は、「L(自己インダクタンス)」と「M(相互インダクタンス)」を各要素とするインダクタンス行列を用いて表現され、また、電機子鎖交磁束は、ベクトルφ(=[φu,φv,φw])として表現される。インダクタンス行列は、各要素L,Mが、モータの電流と角度(位置、位相)との少なくとも一方に依存するテーブルとして表現され、また、電機子鎖交磁束ベクトルφも、各要素が、モータの電流と角度(位置、位相)との少なくとも一方に依存するテーブルとして表現される。それらテーブルにより、前記電圧方程式と協働して、モータの非線形特性を、モータの駆動周波数全域にわたって表現することができる。 As shown in FIG. 4, the linkage flux vector ψ of the motor is equal to the sum of the linkage flux due to the phase current and the armature linkage flux. The interlinkage magnetic flux due to the phase current is expressed using an inductance matrix having “L (self-inductance)” and “M (mutual inductance)” as elements, and the armature interlinkage magnetic flux is represented by the vector φ (= [ φu, φv, φw]). The inductance matrix is expressed as a table in which each element L, M depends on at least one of the motor current and angle (position, phase), and the armature flux linkage vector φ It is expressed as a table that depends on at least one of current and angle (position, phase). With these tables, the non-linear characteristics of the motor can be expressed over the entire driving frequency of the motor in cooperation with the voltage equation.
したがって、図4に示す電圧方程式によって表現される非線形モータモデルを使用すれば、モータの入出力特性が非線形であっても、モータの駆動周波数全域を複数の帯域に分割して各帯域ごとに異なる線形モータモデルを使用することなく、モータの駆動周波数全域を実質的に漏れなくカバーする非線形モータ特性を単一のモデルで精度よく表現することが可能となる。 Therefore, if the nonlinear motor model expressed by the voltage equation shown in FIG. 4 is used, even if the input / output characteristics of the motor are nonlinear, the entire driving frequency of the motor is divided into a plurality of bands and is different for each band. Without using a linear motor model, it is possible to accurately represent a nonlinear motor characteristic that covers the entire drive frequency range of the motor substantially without omission with a single model.
図4に示す電圧方程式は、実モータ12についても成立し、よって、仮想モータ60は、その電圧方程式を用いることにより、図3に示すように、仮想モータ60の各相ごとの相電流を表す仮想モータ電流ベクトルI*(=[Iu*,Iv*,Iw*](仮想3相指令電流信号によって表される)であって、図4に示すモータ電流ベクトルi(=[iu,iv,iw])に相当する)から、仮想モータ60の各相ごとの端子電圧を表す仮想モータ電圧ベクトルV*(=[Vu*,Vv*,Vw*](仮想3相指令電圧信号によって表される)であって、図4に示すモータ電圧ベクトルv(=[vu,vv,vw]に相当する)を計算する。
The voltage equation shown in FIG. 4 is also true for the
したがって、本実施形態によれば、仮想モータ60が、図4に示す電圧方程式によって表現される非線形モータモデルを使用して実モータ12の作動を模擬するため、入出力特性が非線形である実モータ12の駆動周波数全域にわたり、実モータ12の作動を精度よく模擬することが可能となる。
Therefore, according to the present embodiment, the
図4に示す電圧方程式は、実モータ12につき、電流から電圧を計算するために使用することも、電圧から電流を計算するために使用することも可能である。前者の計算は、実モータ12において電圧から電流が発生するという現実の物理的現象の時間的進行方向とは逆向きの計算であるため、逆モデル計算と称することができるのに対し、後者の計算は、上述の現実の物理的現象の時間的進行方向と同じ向きの計算であるため、順モデル計算と称することができる。本実施形態においては、それら2種類の計算のうち、逆モデル計算が採用されている。
The voltage equation shown in FIG. 4 can be used to calculate the voltage from the current for the
実モータ12は、前記ロータを含む可動部材が質量(イナーシャ)や抵抗を有するなどの理由により、応答遅れを有するが、仮想モータ60は、応答遅れを実質的に有しない。その結果、実モータ12に指令電圧が入力されるタイミングと同じタイミングで仮想モータ60に指令電流が入力されると、指令電圧に対して実モータ12の出力電流(現実の物理量)が応答するタイミングより早いタイミングで、仮想モータ60の出力電圧(電圧の計算値)が応答する。その結果、各回の計算サイクル(図5参照)内において、実モータ12に入力すべき指令電圧が、その指令電圧を実モータ12に入力すべきタイミングより早いタイミングで計算されることが保証されるように仮想モータ計算部50を設計することが容易となる。
The
図3に示すように、仮想モータ計算部50は、前記目標信号と、実モータ状態検出部30から出力された実モータ状態信号(例えば、実モータ位置θmを表す信号)とに基づき、仮想モータ60を制御することにより(すなわち、前記逆モデル計算を行うことにより)、複数の制御信号(前述のゲート信号Gu,Gv,Gw,Gx,Gy,Gw)を生成する。仮想モータ計算部50は、それら生成された複数の制御信号を、実インバータ/パワーアンプ14に出力し、それにより、実モータ12を制御する。
As illustrated in FIG. 3, the virtual
具体的には、仮想モータ計算部50は、前記目標信号によって表される制御目標値に基づき、かつ、仮想モータ60の仮想作動位置(仮想可動部材としての仮想ロータの作動位置)が実モータ12の実作動位置(実可動部材としての実ロータの実作動位置)に一致すると仮定して、実モータ12と仮想モータ60とに共通の指令電圧を前記逆モデル計算によって決定する。これにより、実モータ12と仮想モータ60とが、一緒に、かつ、ロータ位置に関して互いに実質的に同期するように、駆動されることになる。
Specifically, the virtual
仮想モータ計算部50のより具体的な構成については、後に図3を参照することにより、説明するが、それに先立ち、図5に示すタイミングチャートを参照することにより、この仮想モータ計算部50の作動の一例を詳細に説明する。
A more specific configuration of the virtual
仮想モータ計算部50の全体シーケンスを表す図5(a)に例示するように、制御目標値T0は、仮想モータ計算部50に入力周期Tin(例えば、数10μsec)で反復的に入力される。仮想モータ計算部50は、1サイクル分の計算を入力周期Tinより短い仮想モータ計算周期Tv(例えば、1μsec)で反復的に行い、それにより、制御目標値T0の1回の入力サイクルの間、複数サイクル分の計算を行う。本実施形態においては、入力周期Tinが、仮想モータ計算周期Tvより長い長さを有するように設定されているが、これに代えて、仮想モータ計算周期Tvと実質的に同じ長さを有するように設定することが可能である。
As illustrated in FIG. 5A representing the entire sequence of the virtual
ここに、「制御目標値T0」は、例えば、実モータ12からの出力に関連する物理量の指令値、例えば、実モータ12の前記ロータの位置に関する物理量(例えば、位置、速度、加速度)の指令値や、実モータ12の前記ロータに作用する力に関する物理量(例えば、トルク、軸力)の指令値としたり、実モータ12への入力に関連する物理量の指令値、例えば、3相指令電流信号Iu*,Iv*,Iw*や、dq軸指令電流信号Id*,Iq*としたり、それら複数種類の指令値からの任意の組合せとすることが可能である。
Here, the “control target value T 0 ” is, for example, a command value of a physical quantity related to the output from the
仮想モータ計算部50の各回の計算サイクル内の処理のシーケンスを表す図5(b)に例示するように、仮想モータ計算部50は、1サイクル分の計算を仮想モータ計算周期Tvで反復的に行い、各回の計算サイクルにおいては、制御目標値T0(i)と、実モータ12の実モータ位置θm(t)とに基づき、前記制御信号Gu−Gzを決定し、その決定された制御信号Gu−Gzを実インバータ/パワーアンプ14に出力し、それにより、実モータ12を制御する。
As illustrated in FIG. 5B, which represents a processing sequence in each calculation cycle of the virtual
制御目標値T0(i)は、入力周期Tinを有する入力サイクルごとに、例えば外部装置から、入力されるのに対し、実モータ位置θm(t)は、仮想モータ計算周期Tvを有する計算サイクルごとに、実モータ状態検出部30から取り込まれる。制御目標値T0(i)は、入力サイクルごとに入力されると、メモリに一時的に保存される。同じ入力サイクルに属する複数回の計算サイクルについては、同じ制御目標値T0(i)が、各回の計算サイクルごとに、前記メモリから仮想モータ計算部50に取り込まれることになる。
The control target value T 0 (i) is input for each input cycle having an input cycle Tin, for example, from an external device, whereas the actual motor position θm (t) is a calculation cycle having a virtual motor calculation cycle Tv. Every time, it is taken in from the actual motor
各回の計算サイクルにおける複数の処理のシーケンスをより具体的に説明するに、図5(b)に例示するように、仮想モータ計算部50は、各回の計算サイクルにおいて、まず、制御目標値T0(t)と、実モータ位置θm(t)とを取り込む。この処理を、図5(b)においては、「θm(t)入力」で表す。
In order to describe the sequence of a plurality of processes in each calculation cycle more specifically, as illustrated in FIG. 5B, the virtual
次に、仮想モータ計算部50は、状態量の変換を行う。具体的には、仮想モータ計算部50は、取り込まれた制御目標値T0(t)を後述の仮想dq軸指令電流信号(前記(2)項における「目標電流信号」の一例)に変換する第1変換と、その仮想dq軸指令電流信号を、実モータ位置θm(t)のもと、仮想3相指令電流信号(前記(1)および(2)項における「仮想電流信号」の一例)に変換する第2変換とを行う。この処理を、図5(b)においては、「変換」で表す。
Next, the virtual
その後、仮想モータ計算部50は、前記仮想3相指令電流信号に基づいて前記逆モデル計算を行い、それにより、前記仮想3相指令電流信号に対応する仮想3相指令電圧信号(前記(1)項における「仮想電圧信号」の一例)を決定し、その決定された仮想3相指令電圧信号を前記制御信号Gu−Gzに変換する第3変換を行う。この処理を、図5(b)においては、「逆モデル計算」で表す。
Thereafter, the virtual
続いて、仮想モータ計算部50は、その取得された制御信号Gu−Gzを実インバータ/パワーアンプ14に出力し、それにより、実モータ12を制御する。この処理を、図5(b)においては、「Gu〜Gz出力」で表す。各回の計算サイクルにおいて、仮想モータ60に仮想3相指令電流信号が1回しか入力されないため、仮想モータ60は、1回しか作動しない。
Subsequently, the virtual
なお、図5(b)(図8も同様)においては、制御信号Gu−Gzが実インバータ/パワーアンプ14に供給された後、その制御信号Gu−Gzが属する回の計算サイクルが終了するタイミングと同じタイミングで、実モータ位置θm(t)がθm(t+1)(=θm(t)+Δθ)に変化することが図示されている。しかし、これは、説明のための一例にすぎず、実際には、前記タイミングより早いか遅いタイミングで、実モータ位置θm(t)がθm(t+1)に変化する。
In FIG. 5B (same in FIG. 8), after the control signal Gu-Gz is supplied to the real inverter /
次に、図3を参照することにより、仮想モータ計算部50の構成の一例を具体的に説明する。ただし、同じ記号が、単独で使用される場合には、仮想モータ60についての実際値または検出値を意味する一方、「*」と組み合わせて使用される場合には、仮想モータ60についての指令値を意味する。
Next, an example of the configuration of the virtual
仮想モータ計算部50は、dq座標系(回転直交2軸dq座標系)上において磁束−トルク制御を行う。ここに、「d」は、仮想モータ60の仮想磁束を表し、また、「q」は、仮想モータ60の仮想トルクを表している。
The virtual
そのような制御を実現するために、仮想モータ計算部50は、前記目標信号を仮想dq軸指令電流信号Id*,Iq*(仮想d軸指令電流信号Id*および仮想q軸指令電流信号Iq*)に変換する目標信号変換器66と、ベクトル制御(前記ロータの位置情報を用いて、軸電流をdq座標系から3相座標系へ座標変換し、前記ステータの相電流を制御する)により、それら仮想dq軸指令電流信号Id*,Iq*を仮想3相指令電流信号Iu*,Iv*,Iw*に変換するdq/UVW座標変換器68とを備えている。
In order to realize such control, the virtual
仮想モータ60を実モータ12から切り離して使用する従来の技術では、dq−UVW座標変換器68は、仮想モータ60の仮想モータ位置θmのもとで、仮想dq軸指令電流信号Id*,Iq*を仮想3相指令電流信号Iu*,Iv*,Iw*に変換するように設計されるのが通常である。これに対し、本実施形態においては、dq−UVW座標変換器68が、仮想モータ位置θmに代えて実モータ位置θmを用いる。
In the conventional technique that uses the
その結果、本実施形態によれば、仮想3相指令電流信号Iu*,Iv*,Iw*が、仮想モータ60の仮想モータ位置θと、実モータ12の実モータ位置θmとが互いに一致する状態で取得されることになる。
As a result, according to the present embodiment, the virtual three-phase command current signals Iu *, Iv *, Iw * are in a state where the virtual motor position θ of the
しかし、仮想モータ60が実モータ12の入出力特性を十分に正確に再現するように教示される場合には、仮想モータ位置θと実モータ位置θmとが互いに十分に一致することになる。この場合には、dq−UVW座標変換器68が実モータ位置θmに代えて仮想モータθを参照したとしても、仮想3相指令電圧信号Vu*,Vv*,Vw*が、仮想モータ60の仮想モータ位置θと、実モータ12の実モータ位置θmとが互いに一致する状態で取得されることになる。
However, when the
仮想モータ計算部50においては、仮想3相指令電流信号Iu*,Iv*,Iw*が仮想モータ60に入力され、その後、仮想モータ60は、前記逆モデル計算により、それら仮想3相指令電流信号Iu*,Iv*,Iw*によって表される電流を実モータ12において実現するためにその実モータ12に供給すべき電圧を表す仮想3相指令電圧信号Vu*,Vv*,Vw*を出力する。
In the virtual
仮想モータ計算部50は、さらに、その出力された仮想3相指令電圧信号Vu*,Vv*,Vw*を、各々PWM信号という形態を有する複数の制御信号Gu,Gv,Gw,Gx,Gy,Gzに変換するPWM信号発生器78を備えている。
The virtual
図6には、モータ制御装置10の作動の一例がフローチャートで表されている。このフローチャートは、CPU44によって実行されるステップS1およびS2と、演算回路42によって反復的に実行されるステップS3−S9とを表している。それらステップS3−S11は、1回ずつ実行されることにより、一回の計算サイクルを達成する。
FIG. 6 is a flowchart showing an example of the operation of the
まず、ステップS1において、初期化が行われる。具体的には、例えば、実モータ状態検出部30により、初期の実モータ位置θinitが取得され、同じ位置が、仮想モータ60の初期の仮想モータ位置θinitとされる。
First, in step S1, initialization is performed. Specifically, for example, the actual motor
次に、入力周期Tin(例えば、数10μsec)が経過するごとに割り込みが発生してステップS2が実行される。このステップS2においては、今回の制御目標値T0が入力される。 Next, every time an input cycle Tin (for example, several tens of microseconds) elapses, an interrupt is generated and step S2 is executed. In step S2, the control target value T 0 the current is input.
続いて、ステップS3において、データ入力が行われ、具体的には、実モータ状態検出部30から実モータ位置θmが入力される。
Subsequently, in step S <b> 3, data input is performed. Specifically, the actual motor position θm is input from the actual motor
その後、ステップS4において、目標信号変換器66により、制御目標値T0を表す目標信号が仮想dq軸指令電流信号Id*,Iq*に変換される。これにより、前記第1変換が行われる。続いて、ステップS5において、dq/UVW座標変換器68により、その仮想dq軸指令電流信号Id*,Iq*が、実モータ12の実モータ回転角θmのもとで、仮想3相指令電流信号Iu*,Iv*,Iw*に変換される。これにより、前記第2変換が行われる。
Thereafter, in step S4, the
その後、ステップS6において、その仮想3相指令電流信号Iu*,Iv*,Iw*が仮想モータ60に入力され、それに応答して仮想モータ60から仮想3相指令電圧信号Vu*,Vv*,Vw*が出力される。これにより、前記逆モデル計算が行われる。続いて、ステップS7において、PWM信号発生器78により、仮想3相指令電圧信号Vu*,Vv*,Vw*がPWM信号Gu,Gv,Gw,Gx,Gy,Gzに変換される。これにより、前記第3変換が行われる。
Thereafter, in step S6, the virtual three-phase command current signals Iu *, Iv *, Iw * are input to the
その後、ステップS8において、そのようにして取得されたPWM信号Gu,Gv,Gw,Gx,Gy,Gzが実インバータ/パワーアンプ14に対して出力され、それにより、実モータ12が駆動される。
Thereafter, in step S8, the PWM signals Gu, Gv, Gw, Gx, Gy, and Gz acquired in this way are output to the real inverter /
続いて、ステップS9において、システム11の主電源(図示しない)がオフにされたか否かが判定される。その主電源が未だオンである場合には、その判定がNOとなり、次回の計算サイクルでの計算のために、ステップS2に戻る。これに対し、主電源がオフにされた場合には、ステップS9の判定がYESとなり、以上で、モータ制御装置10の作動が終了する。
Subsequently, in step S9, it is determined whether or not a main power source (not shown) of the
以上の説明から明らかなように、本実施形態においては、仮想モータ計算部50が、目標信号に基づいて仮想モータ60を作動させることにより、その目標信号によって表される制御目標値を実モータ12が実現するためにその実モータ12に必要な制御信号をフィードフォワード制御で決定する。
As is apparent from the above description, in the present embodiment, the virtual
仮想モータ計算部50は、制御信号を決定するために実モータ位置θmを参照するが、これは、仮想モータ60の仮想モータ位置を実モータ位置θmに一致させ、それにより、仮想モータ60が実モータ12を模擬する精度を向上させるためである。
The virtual
実モータ位置θmを参照するという処理が存在するという事実に注目すれば、仮想モータ計算部50が採用しているフィードフォワード制御がフィードバック要素を有するように解釈される余地がある。しかし、実モータ位置θmは、制御系においてフィードバック信号として用いられるのではなく、仮想モータ60のための前述のdq軸制御において座標変換のために用いられるに過ぎない。よって、仮想モータ計算部50が採用している制御は、前記処理の存在にもかかわらず依然としてフィードフォワード制御であると解釈するのが自然である。
If attention is paid to the fact that there is a process of referring to the actual motor position θm, there is room for the feedforward control adopted by the virtual
<第2実施形態> Second Embodiment
次に、本発明の第2実施形態に従うモータ制御装置100を図7ないし図9を参照することにより説明する。ただし、本実施形態は、第1実施形態と共通する要素があるため、共通する要素については、同一の符号または名称を付して引用することにより、重複した説明を省略し、異なる要素についてのみ、詳細に説明する。
Next, a
図7に示すように、本実施形態に従うモータ制御装置100の仮想モータ計算部110は、位相遅れ補償を行うために、Δθ推定器120をさらに備えている。
As shown in FIG. 7, the virtual
図8(b)に例示するように、仮想モータ計算部110は、第1実施形態と同様に、仮想モータ計算周期Tvの長さを有する1計算サイクルの間に、次回の制御信号を決定するために仮想モータ60を作動させる。その間、実モータ位置θmが不変であれば、その次回の制御信号を決定するために用いられた実モータ位置θm(t)と、その決定された次回の制御信号が実モータ12に入力され始めるとき(または、その制御信号に対する実モータ12の応答が完了するとき)の実モータ位置θm(t+1)とが互いに一致するため、前記制御信号の誤差が発生しない。
As illustrated in FIG. 8B, the virtual
しかし、その間、実モータ位置θ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
そこで、本実施形態においては、Δθ推定器120が、実モータ位置θmが入力された時期と、次回の制御信号が実モータ12に入力され始める時期(または、その制御信号に対する実モータ12の応答が完了する時期)との間の期間に、実モータ位置θmが変化することが予想される変化量Δθを推定する。
Therefore, in the present embodiment, the
その変化量Δθは、例えば、実モータ位置θ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
図7に示すように、仮想モータ計算部110は、Δθ推定器120が、上述のようにして、前記変化量Δθを取得すると、その変化量Δθを、同じ回の計算サイクルの当初において取得した実モータ位置θmに加算し、それにより、dq−UVW座標変換器68に入力されるモータ位置が、θm+Δθに等しくなり、結局、実モータ12の作動に追従するように補正される。
As illustrated in FIG. 7, when the
なお、本実施形態においては、変化量Δθの今回値が実モータ位置θmの最新実際値に加算されることにより、その実モータ位置θmの最新実際値が補正されるが、その補正の仕方は、それに限定されない。 In this embodiment, the latest actual value of the actual motor position θm is corrected by adding the current value of the change amount Δθ to the latest actual value of the actual motor position θm. It is not limited to it.
例えば、変化量Δθの今回値を、その今回値より過去に取得された少なくとも1つの過去変化量Δθに基づき、例えば重み付き平均化などによって平滑化することにより、その変化量Δθの今回値を補正し、その補正された値に基づいて実モータ位置θmの最新実際値を補正することが可能である。 For example, by smoothing the current value of the change amount Δθ based on at least one past change amount Δθ acquired in the past from the current value, for example, by weighted averaging, the current value of the change amount Δθ is obtained. The latest actual value of the actual motor position θm can be corrected based on the corrected value.
図7に示すように、dq−UVW座標変換器68は、そのように補正された実モータ位置θmのもとで、仮想dq軸指令電流信号Id*,Iq*を仮想3相指令電流信号Iu*,Iv*,Iw*に変換し、その結果、それら仮想3相指令電流信号Iu*,Iv*,Iw*は、変化量Δθを見込んだ値として取得されることになる。これにより、前記制御信号が、実モータ位置θmの将来の変化を予測して決定されるため、前述の位相遅れ補償が別のフィードフォワード要素として前述の基本的なフィードフォワード制御に付加されることになる。
As shown in FIG. 7, the dq-UVW coordinate
図8(a)に例示するように、モータ制御装置100の全体シーケンスについては、第1実施形態と同様に、制御目標値T0が、仮想モータ計算部110に入力周期Tin(例えば、数10μsec)で反復的に入力される。
As illustrated in FIG. 8A, for the entire sequence of the
図8(b)に例示するように、仮想モータ計算部110は、1サイクル分の計算を入力周期Tinより短い仮想モータ計算周期Tv(例えば、1μsec)で反復的に行い、それにより、制御目標値T0の1回の入力サイクルの間、複数サイクル分の計算を行う。
As illustrated in FIG. 8B, the virtual
仮想モータ計算部110は、各回の計算サイクルにおいて、まず、制御目標値T0(t)と、実モータ位置θm(t)とを取り込む。この処理を、図8(b)においては、「θm(t)入力」で表す。次に、仮想モータ計算部110は、その取り込まれた制御目標値T0(t)を仮想dq軸指令電流信号に変換する。この処理を、図8(b)においては、「目標信号変換」で表す。
In each calculation cycle, the virtual
続いて、仮想モータ計算部110は、同じ回の計算サイクルにおいて、前記変化量Δθを推定する。この処理を、図8(b)においては、「Δθ推定」で表す。その後、仮想モータ計算部110は、その推定された変化量Δθに基づき、前記取り込まれた実モータ位置θm(t)を補正し、その補正されたを実モータ位置θm(t)のもと、仮想dq軸指令電流信号を仮想3相指令電流信号に変換する。この処理を、図8(b)においては、「座標変換」で表す。
Subsequently, the virtual
その後、仮想モータ計算部110は、前記仮想3相指令電流信号に基づいて前記逆モデル計算を行い、それにより、前記仮想3相指令電流信号に対応する仮想3相指令電圧信号を決定し、その決定された仮想3相指令電圧信号を前記制御信号Gu−Gzに変換する第3変換を行う。この処理を、図8(b)においては、「逆モデル計算」で表す。
Thereafter, the virtual
続いて、仮想モータ計算部110は、その取得された制御信号Gu−Gzを実インバータ/パワーアンプ14に出力し、それにより、実モータ12を制御する。この処理を、図8(b)においては、「Gu〜Gz出力」で表す。
Subsequently, the virtual
図9には、モータ制御装置100の作動の一例がフローチャートで表されている。このフローチャートは、図6に示すフローチャートであって第1実施形態に従うモータ制御装置10の作動の一例を表すものに対し、ステップS4とS5との間にステップS4aおよびS4bが追加されている点を除き、共通する。よって、それらステップS4aおよびS4bのみを説明し、他のステップS1−S9は、図6におけるステップS1−S9と共通するため、文章による説明を省略する。
FIG. 9 shows an example of the operation of the
図9に示すように、ステップS4が終了すると、ステップS4aにおいて、Δθ推定器120により、前記変化量Δθが推定される。次に、ステップS4bにおいて、その推定された変化量Δθに基づき、前記取り込まれた実モータ位置θm(実モータ位置θmの最新検出値)が補正される。
As shown in FIG. 9, when step S4 is completed, the change amount Δθ is estimated by the
その後、ステップS5において、その補正されたを実モータ位置θm(t)のもと、仮想dq軸指令電流信号が仮想3相指令電流信号に変換される。 Thereafter, in step S5, the virtual dq-axis command current signal is converted into a virtual three-phase command current signal based on the corrected actual motor position θm (t).
<第3実施形態> <Third Embodiment>
次に、本発明の第3実施形態に従うモータ制御装置200を図10および図11を参照することにより説明する。ただし、本実施形態は、第1実施形態と共通する要素があるため、共通する要素については、同一の符号または名称を付して引用することにより、重複した説明を省略し、異なる要素についてのみ、詳細に説明する。
Next, a
図10に示すように、本実施形態に従うモータ制御装置200においては、第1実施形態に従うモータ制御装置10に対し、モータ制御装置200の製造段階における実モータ12の実運転中か、またはモータ制御装置200の使用段階における実モータ12の実運転中に、実モータ12の作動状態量を用いて、仮想モータ60のモデル特性、すなわち、実モータ12における入力電圧と出力電流との関係である実入出力特性を模擬する仮想入出力特性をキャリブレートし、それにより、実モータ12に入力されるべき制御信号を最適化する仮想モータ・キャリブレーション部220が追加されている。
As shown in FIG. 10, in the
概略的に説明すれば、この仮想モータ・キャリブレーション部220においては、実モータ12の実3相電流信号によって表される実3相電流Iu,Iv,Iwと、その実3相電流Iu,Iv,Iwの検出タイミングと実質的に同じタイミングで仮想モータ60に入力されるべき仮想3相指令電流信号によって表される仮想3相電流Iu*,Iv*,Iw*との差に基づき、実3相電流Iu,Iv,Iwの次回値と仮想3相電流Iu*,Iv*,Iw*の次回値との差が減少するように、仮想モータ60のモデル特性が修正される。
In brief, in the virtual motor calibration unit 220, the real three-phase currents Iu, Iv, Iw represented by the real three-phase current signal of the
この仮想モータ・キャリブレーション部220においては、実モータ12の実電流値の今回値であってその実モータ12の実入出力特性を反映したものの、制御目標値を反映した仮想電流値の今回値からの偏差に基づき、その偏差の次回値が減少するように、仮想モータ60の仮想入出力特性がキャリブレートされる。その結果、上述の仮想電流値の今回値に応答して仮想モータ60から出力されることとなる指令電圧信号の今回値であって実モータ12にその後入力されることとなる指令電圧を表すものが最適化される。
The virtual motor calibration unit 220 reflects the actual current value of the
図1に示すモータ制御装置10と同様に、モータ制御装置200は、実モータ状態検出部30を備えている。その実モータ状態検出部30は、実モータ12の実モータ位置θmのみならず、実モータ電流Iu,Iv,Iw、実モータ速度ωm等、他の実モータ状態量を検出し、それを表す実モータ状態信号を出力する。
Similar to the
図10に示すように、モータ制御装置200は、仮想モータ計算部210を有し、その仮想モータ計算部210は、仮想モータ60を有し、さらに、比較部222およびモデル修正部224を有する。仮想モータ60は、演算回路42により、高速に、すなわち、短い周期で反復的に実行されるのに対し、比較部222およびモデル修正部224は、CPU44により、低速に、すなわち、長い周期で反復的に実行される。
As shown in FIG. 10, the
図10に示すように、比較部222は、実モータ状態検出部30から出力された実モータ12の実3相電流Iu,Iv,Iwの今回値(最新値)と、座標変換器68から出力された仮想モータ60の仮想3相電流Iu*,Iv*,Iw*の今回値(最新値)とを互いに比較し、両者の差を電流誤差ΔI(ΔIu,ΔIv,ΔIw)として各相ごとに計算する。それら互いに比較されるべき実3相電流Iu,Iv,Iwの今回値と、仮想3相電流Iu*,Iv*,Iw*の今回値はいずれも、図5に示す同じ仮想モータ計算サイクル(周期Tv)内に取得される。
As illustrated in FIG. 10, the
具体的には、図5(b)に示すように、実3相電流Iu,Iv,Iwの今回値は、「θm(t)入力」で表される処理において取得され、一方、仮想3相電流Iu*,Iv*,Iw*の今回値は、「変換」で表される処理において取得される。よって、それら2つの今回値は、実質的に同じタイミングで取得されることになる。 Specifically, as shown in FIG. 5B, the current values of the actual three-phase currents Iu, Iv, and Iw are acquired in the process represented by “θm (t) input”, while the virtual three-phase currents The current values of the currents Iu *, Iv *, and Iw * are acquired in a process represented by “conversion”. Therefore, these two current values are acquired at substantially the same timing.
図10に示すように、モデル修正部224は、前記計算された電流誤差ΔI(ΔIu,ΔIv,ΔIw)に基づき、実3相電流Iu,Iv,Iwの次回値(次回の計算サイクルにおいて取得される実3相電流Iu,Iv,Iw)と仮想3相電流Iu*,Iv*,Iw*の次回値(次回の計算サイクルにおいて取得される仮想3相電流Iu*,Iv*,Iw*)との差ΔI(ΔIu,ΔIv,ΔIw)が減少するように、仮想モータ60の入出力特性を定義する前記モータモデル(図4参照)を修正する。
As shown in FIG. 10, the
モデル修正部224は、例えば、各相ごとに、前記計算された電流誤差ΔIに基づき、図4に示すインダクタンス行列のうち、該当する要素を、電流誤差ΔIと要素の値との間に予め定められた関係(例えば、経験的にまたは実験的に取得される)を表すテーブルに従って修正する。
For example, for each phase, the
このモデル修正部224は、実モータ12を実際に駆動することにより、その実モータ12の入出力特性を仮想モータ60に教示するティーチングを実行し、その結果、実モータ12の作動状態と仮想モータ60の作動状態、すなわち、その仮想モータ60の計算結果とが互いに一致するようになる。
The
図11には、仮想モータ・キャリブレーション部220を実現するための比較部222およびモデル修正部224の作動の一例がフローチャートで概念的に表されている。それら比較部222およびモデル修正部224は、CPU44により、誤差監視計算周期Tc(例えば、数10μsec)で反復的に実行される。
FIG. 11 conceptually shows an example of the operation of the
具体的には、まず、ステップS121において、仮想モータ60の仮想3相電流の、実モータ12の実3相電流からの誤差である電流誤差ΔIが、各相U,V,Wごとに計算され、それら3相のうちの少なくとも一つにつき、前記計算された電流誤差ΔIの絶対値が、予め定められたしきい値ΔIthより大きいか否かが判定される。今回は、いずれの相についても、電流誤差ΔIの計算値がしきい値ΔIth以下であると仮定すると、このステップS121の判定がNOとなり、同じステップS121が再度実行される。
Specifically, first, in step S121, a current error ΔI that is an error from the virtual three-phase current of the
これに対し、今回は、少なくとも一つの相につき、電流誤差ΔIの計算値がしきい値ΔIthを超えていると仮定すると、このステップS121の判定がYESとなり、ステップS122に移行する。 On the other hand, this time, assuming that the calculated value of the current error ΔI exceeds the threshold value ΔIth for at least one phase, the determination in step S121 is YES, and the process proceeds to step S122.
このステップS122においては、比較部222が作動させられる。具体的には、電流誤差ΔIがいずれの相についても、しきい値ΔIthを超えないように前記モータモデルを修正すべき修正量が計算される。
In step S122, the
その計算手法の一例においては、各相ごとの電流誤差Δ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
続いて、ステップS123において、モデル修正部224が作動させられる。具体的には、仮想モデル60の入出力特性を定義するモータモデルが、前記計算された修正量に基づいて修正される(例えば、前記インダクタンス行列の複数の要素に共通に取得される補正係数または要素ごとに取得される修正係数が、それら要素のもとの値に乗算される)。電流誤差ΔIの計算値に基づいて仮想モデル60のティーチングが行われるのであり、その結果、仮想モデル60の入出力特性が、実モータ12の入出力特性をより正確に反映することとなる。その後、ステップS121に戻る。
Subsequently, in step S123, the
それらステップS121からS123までのステップ群が、仮想モータ計算周期Tvより長い誤差監視周期(ティーチング周期でもある)Tcで反復的に実行される。 These steps S121 to S123 are repeatedly executed with an error monitoring period (which is also a teaching period) Tc longer than the virtual motor calculation period Tv.
以上の説明から明らかなように、本実施形態によれば、モータ制御装置200が試験的に稼動させられる状況(試験運転中)にあるか実際に稼動している状況(本格稼動中)にあるかを問わず、実モータ12の実際の入出力特性を反映するように、仮想モータ60の入出力特性すなわち前記モータモデルを個別にチューニングすることが可能である。
As is apparent from the above description, according to the present embodiment, the
したがって、本実施形態によれば、モータ制御装置200の製造段階にあっては、実モータ12の入出力特性の個体ばらつきなどを反映するように、仮想モータ60の入出力特性すなわちモータモデルを個別にチューニングすることが可能である。また、モータ制御装置200の出荷後であって、ユーザが実際にモータ制御装置200を使用する段階にあっては、実モータ12の入出力特性の経時劣化や、実モータ12の入出力特性の、外的環境(例えば、温度環境)に起因する変化などを反映するように、仮想モータ60の入出力特性すなわちモータモデルを個別に、かつ、本来の用途で使用しつつ、それと並行して、かつ、自動的にチューニングすることが可能である。
Therefore, according to the present embodiment, in the manufacturing stage of the
なお、本実施形態に従う仮想モータ・キャリブレーション部220は、第2実施形態に従うモータ制御装置100に追加することが可能である。
The virtual motor calibration unit 220 according to the present embodiment can be added to the
<第4実施形態> <Fourth embodiment>
次に、本発明の第4実施形態に従うモータ制御装置300を図12および図13を参照することにより説明する。ただし、本実施形態は、第1実施形態および第3実施形態と共通する要素があるため、共通する要素については、同一の符号または名称を付して引用することにより、重複した説明を省略し、異なる要素についてのみ、詳細に説明する。
Next, a
図12に示すように、本実施形態に従うモータ制御装置300においては、第1実施形態に従うモータ制御装置10に対し、モータ制御装置200の製造段階における実モータ12の実運転中か、またはモータ制御装置200の使用段階における実モータ12の実運転中に、実モータ12の作動状態量を用いて、仮想モータ60から出力された仮想3相指令電圧信号Vu*,Vv*,Vw*を補正し、それにより、実モータ12に入力されるべき制御信号Gu,Gv,Gw,Gx,Gy,Gzを最適化する仮想モータ出力値補正部320が追加されている。
As shown in FIG. 12, in the
この仮想モータ出力値補正部320においては、実モータ12の実電流値の今回値であってその実モータ12の実入出力特性を反映したものの、制御目標値を反映した仮想電流値の今回値からの偏差に基づき、その偏差の次回値が減少するように、上述の仮想電流値の今回値に応答して仮想モータ60から出力された指令電圧信号の今回値であって実モータ12にその後入力されることとなる指令電圧を表すものが補正される。
The virtual motor output
概略的に説明すれば、この仮想モータ出力値補正部320においては、実モータ12の実3相電流Iu,Iv,Iwと、その実3相電流Iu,Iv,Iwの検出タイミングと実質的に同じタイミングで仮想モータ60に入力されるべき仮想3相指令電流信号によって表される仮想3相電流Iu*,Iv*,Iw*との差に基づき、実3相電流Iu,Iv,Iwの次回値と仮想3相電流Iu*,Iv*,Iw*の次回値との差が減少するように、仮想モータ60から出力された仮想3相指令電圧信号Vu*,Vv*,Vw*が補正される。
If it demonstrates roughly, in this virtual motor output value correction |
図12に示すように、モータ制御装置300は、仮想モータ計算部310を有し、その仮想モータ計算部310は、仮想モータ60を有し、さらに、比較部322および電圧補正部324を有する。仮想モータ60は、演算回路42により、高速に、すなわち、短い周期で反復的に実行されるのに対し、比較部322および電圧補正部324は、CPU44により、低速に、すなわち、長い周期で反復的に実行される。
As illustrated in FIG. 12, the
図12に示すように、比較部322は、第3実施形態に従う比較部222と同様にして、実モータ状態検出部30から出力された実モータ12の実3相電流Iu,Iv,Iwの今回値(最新値)と、座標変換器68から出力された仮想モータ60の仮想3相電流Iu*,Iv*,Iw*の今回値(最新値)とを互いに比較し、両者の差を電流誤差ΔI(ΔIu,ΔIv,ΔIw)として各相ごとに計算する。それら互いに比較されるべき実3相電流Iu,Iv,Iwの今回値と、仮想3相電流Iu*,Iv*,Iw*の今回値はいずれも、図5に示す同じ仮想モータ計算サイクル(周期Tv)内に取得される。
As shown in FIG. 12, the
具体的には、図5(b)に示すように、実3相電流Iu,Iv,Iwの今回値は、「θm(t)入力」で表される処理において取得され、一方、仮想3相電流Iu*,Iv*,Iw*の今回値は、「変換」で表される処理において取得される。よって、それら2つの今回値は、実質的に同じタイミングで取得されることになる。 Specifically, as shown in FIG. 5B, the current values of the actual three-phase currents Iu, Iv, and Iw are acquired in the process represented by “θm (t) input”, while the virtual three-phase currents The current values of the currents Iu *, Iv *, and Iw * are acquired in a process represented by “conversion”. Therefore, these two current values are acquired at substantially the same timing.
図12に示すように、電圧補正部324は、前記計算された電流誤差ΔIに基づき、実3相電流Iu,Iv,Iwの次回値(次回の計算サイクルにおいて取得される実3相電流Iu,Iv,Iw)と仮想3相電流Iu*,Iv*,Iw*の次回値(次回の計算サイクルにおいて取得される仮想3相電流Iu*,Iv*,Iw*)との差ΔI(ΔIu,ΔIv,ΔIw)が減少するように、仮想3相電流Iu*,Iv*,Iw*の今回値の入力に応答して仮想モータ60から出力された仮想3相指令電圧信号Vu*,Vv*,Vw*の補正量ΔV*(ΔVu*,ΔVv*,ΔVw*)を決定する。
As shown in FIG. 12, the
電圧補正部324は、例えば、各相ごとに、前記計算された電流誤差ΔIに基づき、電流誤差ΔIと補正量ΔV*との間に予め定められた関係(例えば、経験的にまたは実験的に取得される)を表すテーブルに従って、補正量ΔV*を決定する。さらに、電圧補正部324は、その決定された補正量ΔV*に基づき、補正量ΔV*を仮想3相指令電圧信号Vu*,Vv*,Vw*のもとの値に加算するか、または、掛け算することにより、仮想3相指令電圧信号Vu*,Vv*,Vw*を補正する。
The
図13には、仮想モータ出力値補正部320を実現するための比較部322および電圧補正部324の作動の一例がフローチャートで概念的に表されている。それら比較部322および電圧補正部324は、CPU44により、誤差監視計算周期Tc(例えば、数10μsec)で反復的に実行される。
FIG. 13 conceptually shows an example of the operation of the
具体的には、まず、ステップS201において、図11に示すステップS121と同様にして、仮想モータ60の仮想3相電流の、実モータ12の実3相電流からの誤差である電流誤差ΔIが、各相U,V,Wごとに計算され、それら3相のうちの少なくとも一つにつき、前記計算された電流誤差ΔIの絶対値が、予め定められたしきい値ΔIthより大きいか否かが判定される。今回は、いずれの相についても、電流誤差ΔIの計算値がしきい値ΔIth以下であると仮定すると、このステップS201の判定がNOとなり、同じステップS201が再度実行される。
Specifically, first, in step S201, as in step S121 shown in FIG. 11, the current error ΔI that is an error from the virtual three-phase current of the
これに対し、今回は、少なくとも一つの相につき、電流誤差ΔIの計算値がしきい値ΔIthを超えていると仮定すると、このステップS201の判定がYESとなり、ステップS202に移行する。 On the other hand, this time, assuming that the calculated value of the current error ΔI exceeds the threshold value ΔIth for at least one phase, the determination in step S201 is YES, and the process proceeds to step S202.
このステップS202においては、比較部322が作動させられる。具体的には、電流誤差ΔIがいずれの相についても、しきい値ΔIthを超えないようにするための補正量ΔVu*,ΔVv*,ΔVw*が計算される。
In step S202, the
その計算手法の一例においては、各相ごとの電流誤差ΔIが取り得る複数の離散的な代表値と、補正量ΔV*との間において予め定められた関係(例えば、テーブルとして、プロセッサ40のためのメモリに予め記憶されている)に従い、電流誤差ΔIの実際の計算値に対応する補正量ΔV*(もとの値に加算される値としたり、もとの値に乗算される係数とすることが可能である)が取得される。 In an example of the calculation method, a predetermined relationship (for example, as a table for the processor 40) between a plurality of discrete representative values that can be taken by the current error ΔI for each phase and the correction amount ΔV *. The correction amount ΔV * corresponding to the actual calculation value of the current error ΔI (a value added to the original value or a coefficient multiplied by the original value) Is possible).
続いて、ステップS203において、電圧補正部324が作動させられる。具体的には、仮想モデル60から出力された仮想3相指令電圧信号Vu*,Vv*,Vw*の今回値(最新値)が取り込まれ、その今回値が、前記計算された補正量ΔVu*,ΔVv*,ΔVw*に基づいて補正される。その後、ステップS201に戻る。
Subsequently, in step S203, the
なお、本実施形態に従う仮想モータ出力値補正部320は、第2実施形態に従うモータ制御装置100に追加したり、第3実施形態に従うモータ制御装置200に追加することが可能である。仮想モータ出力値補正部320がモータ制御装置200に追加されれば、実モータ12の実稼動中に、その実モータ12の作動状態量を用いて、仮想モータ60の仮想入出力特性を修正することと、その仮想モータ60の出力値を補正することとの双方が行われるため、最終的な制御信号の精度が向上し、ひいては、実モータ12の制御精度が向上する。
In addition, the virtual motor output value correction |
以上、本発明の実施の形態のいくつかを図面に基づいて詳細に説明したが、これらは例示であり、前記[発明の概要]の欄に記載の態様を始めとして、当業者の知識に基づいて種々の変形、改良を施した他の形態で本発明を実施することが可能である。 As described above, some of the embodiments of the present invention have been described in detail with reference to the drawings. However, these are exemplifications, and are based on the knowledge of those skilled in the art including the aspects described in the section of [Summary of the Invention]. The present invention can be implemented in other forms with various modifications and improvements.
Claims (11)
前記実モータの入力電圧−出力電流間関係に従ってその実モータを模擬する仮想モータであって、仮想電流信号が入力されると、その仮想電流信号によって表される電流を前記実モータが出力するためにその実モータに入力すべき電圧を表す仮想電圧信号を出力するものと、
前記実モータの制御目標値を表す目標信号に基づいて前記仮想電流信号を生成し、その仮想電流信号を前記仮想モータに入力し、それに応答して前記仮想モータから出力された仮想電圧信号をそのまま制御信号として用いるかまたは前記仮想電圧信号に基づいて前記制御信号を決定し、その決定された制御信号に基づいて前記実モータを制御する制御部と
を含むモータ制御装置。 A motor control device that controls an actual motor that converts electrical energy into kinetic energy,
A virtual motor that simulates the real motor according to the relationship between the input voltage and the output current of the real motor , and when the virtual current signal is input, the real motor outputs the current represented by the virtual current signal. Outputting a virtual voltage signal representing the voltage to be input to the actual motor;
The virtual current signal is generated based on a target signal representing a control target value of the actual motor, the virtual current signal is input to the virtual motor, and the virtual voltage signal output from the virtual motor in response to the virtual current signal is directly input. A control unit that uses the control signal as a control signal or determines the control signal based on the virtual voltage signal and controls the real motor based on the determined control signal.
前記制御部は、前記検出された実モータ電流と、その実モータ電流の検出タイミングに時間的に関連付けられるタイミングで前記仮想モータに入力される前記仮想電流信号によって表される仮想モータ電流との差に基づき、その差が減少するように、前記仮想電圧信号を直接的にまたは間接的に補正する請求項1または2に記載のモータ制御装置。 Furthermore, a detection unit for detecting the current of the actual motor is included,
The control unit determines a difference between the detected actual motor current and a virtual motor current represented by the virtual current signal input to the virtual motor at a timing temporally related to the detection timing of the actual motor current. The motor control device according to claim 1, wherein the virtual voltage signal is corrected directly or indirectly so that the difference is reduced.
前記制御部は、前記目標信号を、前記仮想モータのための仮想dq軸指令電流信号に変換し、その仮想dq軸指令電流信号を、前記実モータの回転角のもとで、前記仮想モータのための仮想3相指令電流信号に変換し、その仮想3相指令電流信号を前記仮想モータに入力し、それに応答して前記仮想モータから出力された仮想3相指令電圧信号に前記仮想3相指令電流信号を変換し、前記仮想3相指令電圧信号をそのまま前記制御信号として用いるかまたは前記仮想3相指令電圧信号に基づいて前記制御信号を決定する請求項1に記載のモータ制御装置。 When a virtual three-phase current signal is input to the virtual motor, the virtual motor represents a three-phase voltage to be input to the real motor in order to output the three-phase current represented by the virtual three-phase current signal. Outputs a three-phase voltage signal,
The control unit converts the target signal into a virtual dq axis command current signal for the virtual motor, and converts the virtual dq axis command current signal of the virtual motor under the rotation angle of the real motor. The virtual three-phase command current signal is input to the virtual motor, and the virtual three-phase command voltage signal output from the virtual motor in response to the virtual three-phase command current signal is input to the virtual motor. The motor control device according to claim 1, wherein a current signal is converted and the virtual three-phase command voltage signal is used as the control signal as it is or the control signal is determined based on the virtual three-phase command voltage signal.
前記制御部は、さらに、
前記取得部によって前記実モータ回転角が取得された時期から、その取得された実モータ回転角を用いて計算された前記制御信号が前記実モータに供給される時期までの間に前記実モータ回転角が変化することが予想される変化量を推定する推定部と、
その推定された変化量に基づき、前記取得された実モータ回転角を補正する角度補正部と
を含み、
前記制御部は、前記補正された実モータ回転角のもとで、前記仮想dq軸指令電流信号を前記仮想3相指令電流信号に変換する請求項4に記載のモータ制御装置。 Furthermore, the acquisition part which acquires the said actual motor rotation angle is included,
The control unit further includes:
The actual motor rotation from the time when the actual motor rotation angle is acquired by the acquisition unit to the time when the control signal calculated using the acquired actual motor rotation angle is supplied to the actual motor. An estimator for estimating the amount of change in which the angle is expected to change;
An angle correction unit that corrects the acquired actual motor rotation angle based on the estimated change amount, and
The motor control device according to claim 4, wherein the control unit converts the virtual dq-axis command current signal into the virtual three-phase command current signal under the corrected actual motor rotation angle.
当該モータ制御装置は、さらに、前記実モータの実3相電流を検出する検出部を含み、
前記制御部は、前記検出された実3相電流と、その実3相電流の検出タイミングに時間的に関連付けられるタイミングで前記仮想モータに入力される前記仮想3相指令電流信号によって表される仮想3相電流との差に基づき、前記実3相電流の次回値と前記仮想3相電流の次回値との差が減少するように、前記仮想入出力特性を修正する請求項4または5に記載のモータ制御装置。 The virtual motor has a virtual input / output characteristic that simulates an actual input / output characteristic that is a relationship between an input voltage and an output current in the real motor. When the virtual three-phase command current signal is input, the virtual motor Based on the output characteristics, the virtual three-phase command voltage signal corresponding to the virtual three-phase command current signal is output,
The motor control device further includes a detection unit that detects a real three-phase current of the real motor,
The control unit is a virtual 3 represented by the detected real three-phase current and the virtual three-phase command current signal input to the virtual motor at a timing temporally related to the detection timing of the real three-phase current. 6. The virtual input / output characteristic is modified so that a difference between a next value of the actual three-phase current and a next value of the virtual three-phase current is reduced based on a difference with a phase current. Motor control device.
前記制御部は、前記検出された実3相電流と、その実3相電流の検出タイミングに時間的に関連付けられるタイミングで前記仮想モータに入力される前記仮想3相指令電流信号によって表される仮想3相電流との差に基づき、前記実3相電流の次回値と前記仮想3相電流の次回値との差が減少するように、前記仮想モータから出力された仮想3相指令電圧信号を補正する請求項4ないし6のいずれかに記載のモータ制御装置。 And a detector that detects an actual three-phase current of the actual motor,
The control unit is a virtual 3 represented by the detected real three-phase current and the virtual three-phase command current signal input to the virtual motor at a timing temporally related to the detection timing of the real three-phase current. Based on the difference from the phase current, the virtual three-phase command voltage signal output from the virtual motor is corrected so that the difference between the next value of the actual three-phase current and the next value of the virtual three-phase current is reduced. The motor control device according to claim 4.
制御信号に基づいて前記実モータを制御する第1工程と、
前記実モータの作動中、仮想モータを作動させ、それにより、前記制御信号を決定する第2工程と
を含み、
前記仮想モータは、前記実モータの入力電圧−出力電流間関係に従ってその実モータを模擬するために、仮想電流信号が入力されると、その仮想電流信号によって表される電流を前記実モータが出力するためにその実モータに入力すべき電圧を表す仮想電圧信号を出力し、
前記第2工程は、前記実モータの制御目標値を表す目標信号に基づいて前記仮想電流信号を生成し、その仮想電流信号を前記仮想モータに入力し、それに応答して前記仮想モータから出力された仮想電圧信号をそのまま前記制御信号として用いるかまたは前記仮想電圧信号に基づいて前記制御信号を決定するモータ制御方法。 A motor control method for controlling an actual motor that converts electrical energy into kinetic energy,
A first step of controlling the actual motor based on a control signal;
A second step of activating a virtual motor during operation of the real motor, thereby determining the control signal;
When the virtual current signal is input, the virtual motor outputs the current represented by the virtual current signal in order to simulate the real motor according to the relationship between the input voltage and the output current of the real motor. Output a virtual voltage signal representing the voltage to be input to the actual motor
The second step generates the virtual current signal based on a target signal representing a control target value of the real motor, inputs the virtual current signal to the virtual motor, and outputs the virtual current signal in response to the virtual current signal. A motor control method in which the virtual voltage signal is directly used as the control signal or the control signal is determined based on the virtual voltage signal.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2013089698A JP5405685B1 (en) | 2013-04-22 | 2013-04-22 | Motor control device and motor control method |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2013089698A JP5405685B1 (en) | 2013-04-22 | 2013-04-22 | Motor control device and motor control method |
Related Child Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2013225167A Division JP2014217269A (en) | 2013-10-30 | 2013-10-30 | Motor control device and motor control method |
Publications (2)
Publication Number | Publication Date |
---|---|
JP5405685B1 true JP5405685B1 (en) | 2014-02-05 |
JP2014217086A JP2014217086A (en) | 2014-11-17 |
Family
ID=50202585
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2013089698A Active JP5405685B1 (en) | 2013-04-22 | 2013-04-22 | Motor control device and motor control method |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP5405685B1 (en) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107645253A (en) * | 2017-10-23 | 2018-01-30 | 上海交通大学 | The three-phase simulation device of current-responsive type permagnetic synchronous motor and its drive system |
CN107994820A (en) * | 2017-11-30 | 2018-05-04 | 上海交通大学 | The simulator of voltage responsive type permanent magnet synchronous motor and its drive system |
CN110429885A (en) * | 2019-08-08 | 2019-11-08 | 阳光电源股份有限公司 | A kind of motor scaling method and host computer |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107390071A (en) * | 2017-08-21 | 2017-11-24 | 上海交通大学 | The simulation system of current-responsive type three-phase permanent magnet synchronous motor |
CN109818543B (en) * | 2019-03-13 | 2021-03-09 | 浙江吉利汽车研究院有限公司 | Automatic motor calibration method and device and controller |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2004260891A (en) * | 2003-02-25 | 2004-09-16 | Yaskawa Electric Corp | Motor control device and method therefor |
JP2005094964A (en) * | 2003-09-19 | 2005-04-07 | Yaskawa Electric Corp | Motor control device and method therefor |
JP2005346455A (en) * | 2004-06-03 | 2005-12-15 | Yaskawa Electric Corp | Motor controller |
JP2006318200A (en) * | 2005-05-12 | 2006-11-24 | Dsp Technology Kk | Block diagram type simulation model creation device, real-time simulation execution device and library |
JP2009055693A (en) * | 2007-08-27 | 2009-03-12 | Hitachi Ltd | Power converting device |
JP2009284637A (en) * | 2008-05-21 | 2009-12-03 | Dsp Technology Kk | Simulated motor and controller test device |
JP2010051061A (en) * | 2008-08-19 | 2010-03-04 | Dsp Technology Kk | Simulation system equipped with servo analysis function |
-
2013
- 2013-04-22 JP JP2013089698A patent/JP5405685B1/en active Active
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2004260891A (en) * | 2003-02-25 | 2004-09-16 | Yaskawa Electric Corp | Motor control device and method therefor |
JP2005094964A (en) * | 2003-09-19 | 2005-04-07 | Yaskawa Electric Corp | Motor control device and method therefor |
JP2005346455A (en) * | 2004-06-03 | 2005-12-15 | Yaskawa Electric Corp | Motor controller |
JP2006318200A (en) * | 2005-05-12 | 2006-11-24 | Dsp Technology Kk | Block diagram type simulation model creation device, real-time simulation execution device and library |
JP2009055693A (en) * | 2007-08-27 | 2009-03-12 | Hitachi Ltd | Power converting device |
JP2009284637A (en) * | 2008-05-21 | 2009-12-03 | Dsp Technology Kk | Simulated motor and controller test device |
JP2010051061A (en) * | 2008-08-19 | 2010-03-04 | Dsp Technology Kk | Simulation system equipped with servo analysis function |
Non-Patent Citations (2)
Title |
---|
JPN6013007543; 赤津: 'モータ設計における電磁界有限要素解析とその応用' シミュレーション Vol.29, No.4, 20110209, Page.172-176 * |
JPN6013007546; 成田 他: '制御シミュレーションへの高精度モータモデルの適用' 電気学会研究会資料 回転機・半導体電力変換・モータドライブ合同研究会 Vol.RM-10, No.56-69, 20100528, Page.17-22 * |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107645253A (en) * | 2017-10-23 | 2018-01-30 | 上海交通大学 | The three-phase simulation device of current-responsive type permagnetic synchronous motor and its drive system |
CN107994820A (en) * | 2017-11-30 | 2018-05-04 | 上海交通大学 | The simulator of voltage responsive type permanent magnet synchronous motor and its drive system |
CN110429885A (en) * | 2019-08-08 | 2019-11-08 | 阳光电源股份有限公司 | A kind of motor scaling method and host computer |
Also Published As
Publication number | Publication date |
---|---|
JP2014217086A (en) | 2014-11-17 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP5156352B2 (en) | AC motor control device | |
JP3467961B2 (en) | Control device for rotating electric machine | |
JP5697745B2 (en) | Synchronous motor drive system | |
JP5405685B1 (en) | Motor control device and motor control method | |
JP5652610B2 (en) | Motor control device | |
JP2014515244A (en) | Method and system for controlling an electric motor with temperature compensation | |
JP6687228B1 (en) | AC rotating electric machine control device | |
JP3397013B2 (en) | Control device for synchronous motor | |
JP5733404B2 (en) | PM motor position sensorless control device | |
JP4228651B2 (en) | Method and apparatus for controlling IPM motor | |
Decker et al. | Predictive current control and online parameter identification of interior permanent magnet synchronous machines | |
JP5683427B2 (en) | Motor control device and torque value acquisition method | |
JP2019037019A (en) | Device and method for controlling rotary electric machine | |
JP2014128190A (en) | Motor control device and motor control method | |
JP2014217269A (en) | Motor control device and motor control method | |
JP5379327B1 (en) | Motor control device and motor control method | |
JP7162685B2 (en) | AC rotary electric machine control device | |
JP5301025B1 (en) | Motor control device and motor control method | |
JP2013219988A (en) | Control device of rotating machine | |
JP2015023788A (en) | Motor control device and motor control method | |
JP2018046615A (en) | Temperature estimation device, interlinkage magnetic flux estimation device and motor controller | |
JP6945673B2 (en) | Control device for AC rotating electric machine | |
JP2000217384A (en) | Controller of position-sensorless motor | |
JP2014161201A (en) | Motor controller | |
JP5351345B1 (en) | Motor control device |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
TRDD | Decision of grant or rejection written | ||
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20131030 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 5405685 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |