JP6239210B1 - Control device, equipment and control program - Google Patents

Control device, equipment and control program Download PDF

Info

Publication number
JP6239210B1
JP6239210B1 JP2017545758A JP2017545758A JP6239210B1 JP 6239210 B1 JP6239210 B1 JP 6239210B1 JP 2017545758 A JP2017545758 A JP 2017545758A JP 2017545758 A JP2017545758 A JP 2017545758A JP 6239210 B1 JP6239210 B1 JP 6239210B1
Authority
JP
Japan
Prior art keywords
calculation
time
processing
control
processing unit
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2017545758A
Other languages
Japanese (ja)
Other versions
JPWO2018198237A1 (en
Inventor
秀一 瀬川
秀一 瀬川
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.)
Mitsubishi Electric Corp
Original Assignee
Mitsubishi Electric Corp
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 Mitsubishi Electric Corp filed Critical Mitsubishi Electric Corp
Application granted granted Critical
Publication of JP6239210B1 publication Critical patent/JP6239210B1/en
Publication of JPWO2018198237A1 publication Critical patent/JPWO2018198237A1/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/48Program initiating; Program switching, e.g. by interrupt

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Control Of Electric Motors In General (AREA)
  • Feedback Control In General (AREA)

Abstract

制御装置において、第1処理部(51)は、第1処理として、制御のための出力値の演算をデジタル演算装置(21)で実行する。第2処理部(52)は、第2処理として、第1処理の演算精度を上げるために第1処理部(51)に入力される入力値の演算であり、演算量が多いほど第1処理の演算精度が上がる演算をデジタル演算装置(21)で実行する。スケジュール処理部(54)は、デジタル演算装置(21)の使用時間と第1処理の演算精度との制約に合わせて、第2処理部(52)に対し、第2処理の演算量および演算頻度の少なくともいずれかを調整する。In the control device, the first processing unit (51) executes the calculation of the output value for control by the digital arithmetic device (21) as the first processing. The second processing unit (52) calculates the input value input to the first processing unit (51) in order to increase the calculation accuracy of the first processing as the second processing. The digital arithmetic unit (21) executes an arithmetic operation that increases the operational accuracy of. The schedule processing unit (54) sets the calculation amount and calculation frequency of the second process to the second processing unit (52) in accordance with the restriction between the usage time of the digital calculation device (21) and the calculation accuracy of the first process. Adjust at least one of the following.

Description

本発明は、制御装置、機器および制御プログラムに関するものである。   The present invention relates to a control device, a device, and a control program.

電動機および電力制御装置等のパワーエレクトロニクス機器は、一般的に、スイッチング素子と制御装置との組み合わせを用いて実現される。制御装置の制御機構の一部または多くの部分は、一般的に、マイクロコンピュータで動作するソフトウェアにより実現される。   Power electronics equipment such as an electric motor and a power control device is generally realized using a combination of a switching element and a control device. A part or many parts of the control mechanism of the control device are generally realized by software operating on a microcomputer.

近年のパワーエレクトロニクス機器に対する要求は、以前に増して高くなっている。特に、低損失性および小型化が求められている。   The demand for power electronics equipment in recent years is higher than before. In particular, low loss and downsizing are required.

要求を満たすために、より低損失の素子を高いスイッチング速度で制御することが必要である。より短時間での制御を実施する必要がある。   In order to meet the requirements, it is necessary to control the lower loss elements at high switching speeds. It is necessary to perform control in a shorter time.

一方で、制御に関して考慮すべき事項が増えている。多入力、多出力および多制約条件を加味して、電気的および物理的に低ノイズの制御を実現するために、モデル予測制御等の複雑な制御を実現する必要がある。モデル予測制御については、非特許文献1に記載されている。   On the other hand, matters to be considered regarding control are increasing. In order to realize electrically and physically low noise control in consideration of multiple inputs, multiple outputs, and multiple constraints, it is necessary to realize complex control such as model predictive control. Model predictive control is described in Non-Patent Document 1.

コスト低減を目的として、単一のマイクロコンピュータで、制御だけでなく、制御に付随する、通信または異常監視等の処理を実現する必要があることも多い。そのようなケースでは、高応答または短処理時間の制御に加えて、低応答または長処理時間の、制御以外の処理を実現する必要があることが多い。   For the purpose of cost reduction, it is often necessary to realize not only control but also communication or abnormality monitoring associated with control with a single microcomputer. In such a case, it is often necessary to realize processing other than control with low response or long processing time in addition to control with high response or short processing time.

したがって、制御のための処理の時間を、制御品質を適切に保つよう確保しつつ、他の必要な処理の時間を確保する必要がある。   Therefore, it is necessary to secure other necessary processing time while ensuring the processing time for control so as to keep the control quality appropriately.

特許文献1および特許文献2には、タスクのスケジューリングに関する技術が記載されている。   Patent Documents 1 and 2 describe techniques related to task scheduling.

特許文献3には、残存時間に応じて処理の一部を省略する技術が記載されている。   Patent Document 3 describes a technique that omits a part of the processing according to the remaining time.

特開2015−136259号公報Japanese Patent Laying-Open No. 2015-136259 国際公開第2012/104901号International Publication No. 2012/104901 特開2007−252056号公報JP 2007-252056 A

Li Dai, Yuanqing Xia, Mengyin Fu and Magdi S. Mahmoud, “Discrete−Time Model Predictive Control”, Chapter 4, “Advances in Discrete Time Systems”, book edited by Magdi S. Mahmoud, December 5, 2012Li Dai, Yuanqing Xia, Mengyin Fu and Magdi S. Mahmud, “Discrete-Time Model Predictive Control”, Chapter 4, “Advanceds in Discrete Time Systems”, book edited by Magdi S. Mahmaud, December 5, 2012

特許文献1および特許文献2に記載の技術では、制御のための処理の時間を調整する機構が設けられていない。よって、制御以外の必要な処理の時間を確保することができない。   In the techniques described in Patent Document 1 and Patent Document 2, a mechanism for adjusting the processing time for control is not provided. Therefore, it is not possible to secure a necessary processing time other than the control.

特許文献3に記載の技術では、制御品質を維持するための機構が設けられていない。よって、残存時間が僅少になるケースが多くなると、制御品質が落ちる。そして、モータの脱調等、想定制御シーケンスから逸脱する事象が発生する。   In the technique described in Patent Document 3, a mechanism for maintaining control quality is not provided. Therefore, when the remaining time becomes short, the control quality deteriorates. Then, an event deviating from the assumed control sequence occurs, such as motor step-out.

本発明は、制御のための処理の時間を、制御品質を適切に保つよう確保しつつ、他の必要な処理の時間を確保することを目的とする。   It is an object of the present invention to secure other necessary processing time while ensuring the processing time for control so as to keep the control quality appropriately.

本発明の一態様に係る制御装置は、
第1処理として、制御のための出力値の演算をデジタル演算装置で実行する第1処理部と、
第2処理として、前記第1処理の演算精度を上げるために前記第1処理部に入力される入力値の演算であり、演算量が多いほど前記第1処理の演算精度が上がる演算を前記デジタル演算装置で実行する第2処理部と、
前記デジタル演算装置の使用時間と前記第1処理の演算精度との制約に合わせて、前記第2処理部に対し、前記第2処理の演算量および演算頻度の少なくともいずれかを調整するスケジュール処理部とを備える。
A control device according to one aspect of the present invention includes:
As a first process, a first processing unit that executes calculation of an output value for control by a digital arithmetic device;
The second process is a calculation of an input value input to the first processing unit in order to increase the calculation accuracy of the first process, and an operation in which the calculation accuracy of the first process increases as the calculation amount increases. A second processing unit executed by the arithmetic device;
A schedule processing unit that adjusts at least one of the calculation amount and the calculation frequency of the second processing with respect to the second processing unit in accordance with the restriction between the usage time of the digital arithmetic device and the calculation accuracy of the first processing. With.

本発明では、第1処理として、制御のための出力値の演算が実行される。第2処理として、第1処理の演算精度を上げるための入力値の演算であり、演算量が多いほど第1処理の演算精度が上がる演算が実行される。デジタル演算装置の使用時間と第1処理の演算精度との制約に合わせて、第2処理の演算量および演算頻度の少なくともいずれかが調整される。このため、制御のための処理の時間を、制御品質を適切に保つよう確保しつつ、他の必要な処理の時間を確保することができる。   In the present invention, calculation of an output value for control is executed as the first process. The second process is an input value calculation for increasing the calculation accuracy of the first process, and an operation in which the calculation accuracy of the first process increases as the calculation amount increases. At least one of the calculation amount and the calculation frequency of the second process is adjusted according to the restriction between the usage time of the digital calculation device and the calculation accuracy of the first process. For this reason, it is possible to secure other necessary processing time while ensuring the processing time for control so as to appropriately maintain the control quality.

実施の形態1に係る機器の構成を示す回路図。FIG. 2 is a circuit diagram illustrating a configuration of a device according to Embodiment 1. 実施の形態1に係る制御装置のハードウェア構成を示すブロック図。FIG. 2 is a block diagram showing a hardware configuration of a control device according to the first embodiment. PWMによるゲート電圧制御の例を示す図。The figure which shows the example of the gate voltage control by PWM. 実施の形態1に係る制御装置の機能構成を示すブロック図。FIG. 2 is a block diagram showing a functional configuration of a control device according to the first embodiment. 実施の形態1に係る制御装置のフィードフォワード制御部の動作例を示す図。FIG. 3 is a diagram illustrating an operation example of a feedforward control unit of the control device according to the first embodiment. 実施の形態1に係る制御装置のフィードバック制御部の入出力例を示す図。FIG. 3 is a diagram illustrating an input / output example of a feedback control unit of the control device according to the first embodiment. 実施の形態1に係る制御装置の制御精度予測部による推定誤差の演算例を示すグラフ。6 is a graph showing an example of calculation of an estimation error by a control accuracy prediction unit of the control device according to Embodiment 1. 実施の形態1に係る制御装置の制御精度予測部の動作を示すフローチャート。5 is a flowchart showing an operation of a control accuracy prediction unit of the control device according to the first embodiment. 実施の形態1に係る制御装置の制御精度予測部のマップ例を示す表。4 is a table illustrating a map example of a control accuracy prediction unit of the control device according to the first embodiment. 実施の形態1に係る制御装置のスケジューリング実行部の動作を示すフローチャート。5 is a flowchart showing an operation of a scheduling execution unit of the control device according to the first embodiment. 実施の形態1に係る制御装置の機能要素間の協調動作例を示すシーケンス図。FIG. 3 is a sequence diagram illustrating an example of cooperative operation between functional elements of the control device according to the first embodiment. 実施の形態1に係る制御装置の機能要素間の協調動作例を示すシーケンス図。FIG. 3 is a sequence diagram illustrating an example of cooperative operation between functional elements of the control device according to the first embodiment.

以下、本発明の実施の形態について、図を用いて説明する。各図中、同一または相当する部分には、同一符号を付している。実施の形態の説明において、同一または相当する部分については、説明を適宜省略または簡略化する。なお、本発明は、以下に説明する実施の形態に限定されるものではなく、必要に応じて種々の変更が可能である。例えば、以下に説明する実施の形態は、部分的に実施されても構わない。   Hereinafter, embodiments of the present invention will be described with reference to the drawings. In the drawings, the same or corresponding parts are denoted by the same reference numerals. In the description of the embodiments, the description of the same or corresponding parts will be omitted or simplified as appropriate. The present invention is not limited to the embodiments described below, and various modifications can be made as necessary. For example, the embodiment described below may be partially implemented.

実施の形態1.
本実施の形態について、図1から図12を用いて説明する。
Embodiment 1 FIG.
This embodiment will be described with reference to FIGS.

***構成の説明***
図1を参照して、本実施の形態に係る機器10の構成を説明する。
*** Explanation of configuration ***
With reference to FIG. 1, the structure of the apparatus 10 which concerns on this Embodiment is demonstrated.

機器10は、具体的には、パワーエレクトロニクス機器である。機器10は、同期モータ11と、スイッチング素子12と、制御装置13とを備える。   The device 10 is specifically a power electronics device. The device 10 includes a synchronous motor 11, a switching element 12, and a control device 13.

同期モータ11は、非同期モータに置き換えられてもよいし、電力制御装置等に置き換えられてもよい。すなわち、機器10は、制御対象の要素として、電動機または電力制御装置等の任意の要素を備えていてよい。   The synchronous motor 11 may be replaced with an asynchronous motor, or may be replaced with a power control device or the like. That is, the device 10 may include an arbitrary element such as an electric motor or a power control device as an element to be controlled.

スイッチング素子12は、同期モータ11に入力される電流を調整するための素子である。スイッチング素子12は、例えば、MOSFETである。「MOSFET」は、Metal−Oxide−Semiconductor Field−Effect Transistorの略語である。   The switching element 12 is an element for adjusting a current input to the synchronous motor 11. The switching element 12 is, for example, a MOSFET. “MOSFET” is an abbreviation for Metal-Oxide-Semiconductor Field-Effect Transistor.

制御装置13は、ゲート信号線14を介してスイッチング素子12のゲート電圧を制御することにより、同期モータ11の回転を制御する装置である。制御装置13の制御機構の一部または多くの部分は、マイクロコンピュータで動作するソフトウェアにより実現される。   The control device 13 is a device that controls the rotation of the synchronous motor 11 by controlling the gate voltage of the switching element 12 via the gate signal line 14. Part or many parts of the control mechanism of the control device 13 are realized by software operating on a microcomputer.

図2を参照して、本実施の形態に係る制御装置13のハードウェア構成を説明する。   With reference to FIG. 2, the hardware configuration of the control device 13 according to the present embodiment will be described.

制御装置13は、マイクロコンピュータ、あるいは、マイクロコンピュータを含む装置である。制御装置13は、デジタル演算装置21を備えるとともに、メモリ22、リアルタイムクロック23、ADコンバータ24、シリアル通信デバイス25、汎用IO26、パルス幅変調器27、フラッシュROM28、ウォッチドッグタイマ29および割り込みコントローラ30といった他のハードウェアを備える。「AD」は、Analog to Digitalの略語である。「IO」は、Input/Outputの略語である。「ROM」は、Read Only Memoryの略語である。図中、「RTC」は、Real Time Clockの略語である。「GPIO」は、General Purpose Input/Outputの略語である。「PWM」は、Pulse Width
Modulatorの略語である。「WDT」は、Watchdog Timerの略語である。デジタル演算装置21は、バス31を介して他のハードウェアと接続され、これら他のハードウェアを制御する。
The control device 13 is a microcomputer or a device including a microcomputer. The control device 13 includes a digital arithmetic device 21, a memory 22, a real-time clock 23, an AD converter 24, a serial communication device 25, a general-purpose IO 26, a pulse width modulator 27, a flash ROM 28, a watchdog timer 29, and an interrupt controller 30. Other hardware is provided. “AD” is an abbreviation for Analog to Digital. “IO” is an abbreviation for Input / Output. “ROM” is an abbreviation for Read Only Memory. In the figure, “RTC” is an abbreviation for Real Time Clock. “GPIO” is an abbreviation for General Purpose Input / Output. "PWM" is Pulse Width
Abbreviation for Modulator. “WDT” is an abbreviation for Watchdog Timer. The digital arithmetic unit 21 is connected to other hardware via the bus 31 and controls these other hardware.

デジタル演算装置21は、本実施の形態ではプロセッサである。プロセッサは、各種処理を行うICである。「IC」は、Integrated Circuitの略語である。プロセッサは、例えば、CPUである。「CPU」は、Central Processing Unitの略語である。   The digital arithmetic unit 21 is a processor in the present embodiment. The processor is an IC that performs various processes. “IC” is an abbreviation for Integrated Circuit. The processor is, for example, a CPU. “CPU” is an abbreviation for Central Processing Unit.

メモリ22は、例えば、RAMである。「RAM」は、Random Access Memoryの略語である。   The memory 22 is, for example, a RAM. “RAM” is an abbreviation for Random Access Memory.

ADコンバータ24は、同期モータ11のセンサ値を取得するためのデバイスである。   The AD converter 24 is a device for acquiring the sensor value of the synchronous motor 11.

シリアル通信デバイス25は、入出力ポート32を介して外部からの動作要求を受け取るためのデバイスである。   The serial communication device 25 is a device for receiving an operation request from the outside via the input / output port 32.

パルス幅変調器27は、入出力ポート32を介してスイッチング素子12のゲート電圧をPWMにより制御するためのデバイスである。「PWM」は、Pulse Width Modulationの略語である。   The pulse width modulator 27 is a device for controlling the gate voltage of the switching element 12 via the input / output port 32 by PWM. “PWM” is an abbreviation for Pulse Width Modulation.

図3は、PWMによるゲート電圧制御の例を示している。   FIG. 3 shows an example of gate voltage control by PWM.

PWM制御では、多くの場合、固定のキャリア周期が設定される。キャリア周期に対するオン時間の比率であるデューティ比によって通電比が調節されて、電圧または電流が制御される。これにより、交流波が生成されて、同期モータ11を制御することが可能となる。   In PWM control, a fixed carrier cycle is often set. The energization ratio is adjusted by the duty ratio, which is the ratio of the on time to the carrier period, and the voltage or current is controlled. As a result, an AC wave is generated and the synchronous motor 11 can be controlled.

実際には、出力したいリファレンス波41に対し、キャリア波42が比較される。キャリア波42がリファレンス波41を上回る時間帯のみを通電時間に設定することで、PWM波形43が実現される。大局的に見ると、PWM波形43によって生成される電圧はリファレンス波41と一致する。   Actually, the carrier wave 42 is compared with the reference wave 41 to be output. By setting only the time zone in which the carrier wave 42 exceeds the reference wave 41 as the energization time, the PWM waveform 43 is realized. When viewed globally, the voltage generated by the PWM waveform 43 matches the reference wave 41.

図4を参照して、本実施の形態に係る制御装置13の機能構成を説明する。   With reference to FIG. 4, the functional configuration of the control device 13 according to the present embodiment will be described.

制御装置13は、機能要素として、第1処理部51と、第2処理部52と、第3処理部53と、スケジュール処理部54とを備える。第1処理部51、第2処理部52、第3処理部53およびスケジュール処理部54の機能は、ソフトウェアにより実現される。   The control device 13 includes a first processing unit 51, a second processing unit 52, a third processing unit 53, and a schedule processing unit 54 as functional elements. The functions of the first processing unit 51, the second processing unit 52, the third processing unit 53, and the schedule processing unit 54 are realized by software.

第1処理部51は、直接出力を制御するフィードフォワード制御部61と、フィードバック制御部62へセンサ値を提供するセンサ値取得部64とを有する。   The first processing unit 51 includes a feedforward control unit 61 that directly controls output, and a sensor value acquisition unit 64 that provides a sensor value to the feedback control unit 62.

第2処理部52は、フィードフォワード制御部61の動作を、センサ値を確認しながら大局的に制御するフィードバック制御部62を有する。   The second processing unit 52 includes a feedback control unit 62 that controls the operation of the feedforward control unit 61 globally while confirming the sensor value.

第3処理部53は、制御以外の処理として、通信処理を実行する通信処理部63を有する。   The third processing unit 53 includes a communication processing unit 63 that executes communication processing as processing other than control.

スケジュール処理部54は、スケジューリングのための誤差の見積もり値の演算を行う制御精度予測部65と、スケジュールの立案を行うスケジューリング実行部66とを有する。   The schedule processing unit 54 includes a control accuracy prediction unit 65 that calculates an estimated error value for scheduling, and a scheduling execution unit 66 that creates a schedule.

フラッシュROM28には、第1処理部51、第2処理部52、第3処理部53およびスケジュール処理部54の機能を実現するプログラムである制御プログラムが記憶されている。制御プログラムは、メモリ22にロードされ、デジタル演算装置21によって実行される。   The flash ROM 28 stores a control program that is a program for realizing the functions of the first processing unit 51, the second processing unit 52, the third processing unit 53, and the schedule processing unit 54. The control program is loaded into the memory 22 and executed by the digital arithmetic device 21.

第1処理部51、第2処理部52、第3処理部53およびスケジュール処理部54の処理の結果を示す情報、データ、信号値および変数値は、メモリ22、または、デジタル演算装置21内のレジスタまたはキャッシュメモリに記憶される。   Information, data, signal values, and variable values indicating the processing results of the first processing unit 51, the second processing unit 52, the third processing unit 53, and the schedule processing unit 54 are stored in the memory 22 or the digital arithmetic unit 21. Stored in a register or cache memory.

制御装置13は、デジタル演算装置21を代替する複数のデジタル演算装置を備えていてもよい。これら複数のデジタル演算装置は、制御プログラムの実行を分担する。それぞれのデジタル演算装置は、デジタル演算装置21と同じように、プロセッサである。   The control device 13 may include a plurality of digital arithmetic devices that replace the digital arithmetic device 21. The plurality of digital arithmetic units share the execution of the control program. Each digital arithmetic device is a processor, like the digital arithmetic device 21.

制御プログラムは、磁気ディスクおよび光ディスクといった可搬記録媒体に記憶されてもよい。   The control program may be stored in a portable recording medium such as a magnetic disk and an optical disk.

***動作の説明***
引き続き図4を参照して、本実施の形態に係る制御装置13の動作を説明する。制御装置13の動作は、本実施の形態に係る制御方法に相当する。
*** Explanation of operation ***
With continued reference to FIG. 4, the operation of the control device 13 according to the present embodiment will be described. The operation of the control device 13 corresponds to the control method according to the present embodiment.

第1処理部51は、第1処理として、制御のための出力値の演算をデジタル演算装置21で実行する。第1処理は、任意の高応答処理でよいが、本実施の形態ではフィードフォワード制御の処理である。具体的には、第1処理は、同期モータ11の制御のためにスイッチング素子12に出力される信号のデューティ比の演算である。第1処理は、フィードフォワード制御部61により実行される。   The first processing unit 51 executes the calculation of the output value for control by the digital arithmetic device 21 as the first processing. The first process may be an arbitrary high response process, but is a feedforward control process in the present embodiment. Specifically, the first process is calculation of the duty ratio of a signal output to the switching element 12 for controlling the synchronous motor 11. The first process is executed by the feedforward control unit 61.

第2処理部52は、第2処理として、第1処理の演算精度を上げるために第1処理部51に入力される入力値の演算であり、演算量が多いほど第1処理の演算精度が上がる演算をデジタル演算装置21で実行する。第2処理は、任意の準高応答処理でよいが、本実施の形態ではフィードバック制御の処理である。第2処理は、任意の制御方式を用いる処理でよいが、本実施の形態ではモデル予測制御を用いる処理である。具体的には、第2処理は、センサ値取得部64により取得された同期モータ11の位置センサの測定値に応じた、第1処理部51に入力される動作指令値の演算である。第2処理は、フィードバック制御部62により実行される。   The second processing unit 52 is a calculation of an input value input to the first processing unit 51 in order to increase the calculation accuracy of the first process as the second process, and the calculation accuracy of the first process increases as the calculation amount increases. The ascending calculation is executed by the digital calculation device 21. The second process may be any quasi-high response process, but is a feedback control process in the present embodiment. The second process may be a process using an arbitrary control method, but is a process using model predictive control in the present embodiment. Specifically, the second process is an operation command value input to the first processing unit 51 according to the measurement value of the position sensor of the synchronous motor 11 acquired by the sensor value acquisition unit 64. The second process is executed by the feedback control unit 62.

第3処理部53は、第3処理として、第1処理および第2処理とは別の処理をデジタル演算装置21で実行する。第3処理は、任意の低応答処理でよいが、本実施の形態では通信処理である。具体的には、第3処理は、同期モータ11の制御に直接関わらない通信処理である。第3処理は、通信処理部63により実行される。   The third processing unit 53 executes a process different from the first process and the second process by the digital arithmetic device 21 as the third process. The third process may be any low response process, but is a communication process in the present embodiment. Specifically, the third process is a communication process that is not directly related to the control of the synchronous motor 11. The third process is executed by the communication processing unit 63.

スケジュール処理部54は、デジタル演算装置21の使用時間と第1処理の演算精度との制約に合わせて、第2処理部52に対し、第2処理の演算量および演算頻度の少なくともいずれかを調整する。本実施の形態では、第2処理の演算量および演算頻度の両方が調整される。   The schedule processing unit 54 adjusts at least one of the calculation amount and the calculation frequency of the second processing with respect to the second processing unit 52 in accordance with the restriction between the usage time of the digital calculation device 21 and the calculation accuracy of the first processing. To do. In the present embodiment, both the calculation amount and the calculation frequency of the second process are adjusted.

スケジュール処理部54は、デジタル演算装置21の使用時間と第1処理の演算精度との制約に合わせて、さらに、第3処理部53に第3処理の少なくとも一部を実行させるかどうかを決定する。具体的には、スケジュール処理部54は、デジタル演算装置21の使用時間と第1処理の演算精度との制約に合わせて、第3処理部53に第3処理を実行させるか第3処理の一部を実行させるか第3処理を実行させないかを決定する。   The schedule processing unit 54 further determines whether or not to cause the third processing unit 53 to execute at least a part of the third process in accordance with the restriction between the usage time of the digital arithmetic device 21 and the calculation accuracy of the first process. . Specifically, the schedule processing unit 54 causes the third processing unit 53 to execute the third process according to the restriction between the usage time of the digital arithmetic device 21 and the calculation accuracy of the first process, or one of the third processes. Or whether to execute the third process.

なお、あらかじめ決定された時間が第3処理のために確保され、残りの時間がスケジュール処理部54により第1処理および第2処理に割り当てられてもよい。すなわち、スケジュール処理部54は、第1処理および第2処理の実行にかかる時間がデジタル演算装置21の使用時間の上限値から第3処理のために確保された時間を引いて得られる残り時間内に収まり、かつ、第1処理の演算精度が閾値を上回るように、第2処理の演算量および演算頻度の少なくともいずれかを調整してもよい。   Note that a predetermined time may be reserved for the third process, and the remaining time may be allocated to the first process and the second process by the schedule processing unit 54. That is, the schedule processing unit 54 determines that the time required for executing the first process and the second process is within the remaining time obtained by subtracting the time reserved for the third process from the upper limit value of the usage time of the digital arithmetic device 21. And the calculation amount of the second process and the calculation frequency may be adjusted so that the calculation accuracy of the first process exceeds the threshold.

図5から図12を参照して、制御装置13の動作の詳細を説明する。   The details of the operation of the control device 13 will be described with reference to FIGS.

図5は、フィードフォワード制御部61の動作例を示している。   FIG. 5 shows an operation example of the feedforward control unit 61.

この例において、フィードフォワード制御部61は、フィードバック制御部62から動作指令値として動作モードと、電圧指令値と、同期モータ11の測定機械角および測定時刻とを受け取る。フィードフォワード制御部61は、機械角予測器71を用いた内部演算によって、同期モータ11の予測機械角θを算出する。フィードフォワード制御部61は、デューティ値変換72を実行して、予測機械角θと電圧指令値とに対して3相デューティ比を算出する。動作モードは、稼動状態および停止状態のいずれかの値をとる。フィードフォワード制御部61は、動作モード判断73を実行して、動作モードが稼動状態の場合に3相デューティ比を出力する。フィードフォワード制御部61は、動作モードが停止状態の場合は3相デューティ比を出力しない。   In this example, the feedforward control unit 61 receives an operation mode, a voltage command value, a measurement mechanical angle of the synchronous motor 11 and a measurement time as an operation command value from the feedback control unit 62. The feedforward control unit 61 calculates the predicted mechanical angle θ of the synchronous motor 11 by an internal calculation using the mechanical angle predictor 71. The feedforward control unit 61 executes a duty value conversion 72 to calculate a three-phase duty ratio with respect to the predicted mechanical angle θ and the voltage command value. The operation mode takes one of an operating state and a stopped state. The feedforward control unit 61 executes the operation mode determination 73 and outputs a three-phase duty ratio when the operation mode is in the operating state. The feedforward control unit 61 does not output a three-phase duty ratio when the operation mode is in a stopped state.

図6は、フィードバック制御部62の入出力例を示している。   FIG. 6 shows an input / output example of the feedback control unit 62.

フィードバック制御部62は、センサ値取得部64から得た位置センサ値とスケジューリング実行部66から得た演算精度とを入力として受け、動作指令値をフィードフォワード制御部61へ出力する。   The feedback control unit 62 receives the position sensor value obtained from the sensor value acquisition unit 64 and the calculation accuracy obtained from the scheduling execution unit 66 as inputs, and outputs an operation command value to the feedforward control unit 61.

フィードバック制御部62は、スケジューリング実行部66により決定される動作計画に基づいて制御を行う。   The feedback control unit 62 performs control based on the operation plan determined by the scheduling execution unit 66.

フィードバック制御部62が行う制御は、以下のような性質を満たす必要がある。
・スケジューリング実行部66が指定する精度および実施頻度等のスケジュール要素を変更しても動作するアルゴリズムが用いられていること。
・演算の程度に対して制御品質が何らかの尺度で見積もれること。
・演算の程度に対して必要な時間が導出できること。
・フィードバック制御部62が動作しない期間でもフィードフォワード制御部61がある程度の制御品質で動作すること。
The control performed by the feedback control unit 62 needs to satisfy the following properties.
An algorithm that can operate even if the schedule elements such as the accuracy and the execution frequency specified by the scheduling execution unit 66 are changed is used.
-Control quality can be estimated on some scale with respect to the degree of computation.
・ Determine the time required for the degree of computation.
The feedforward control unit 61 operates with a certain degree of control quality even during a period when the feedback control unit 62 does not operate.

このような性質を満たす制御として、モデル予測制御を用いることができる。モデル予測制御は、Receding Horizon制御とも呼ばれる。   Model predictive control can be used as control satisfying such properties. Model predictive control is also called Receding Horizon control.

モデル予測制御は、最適解を探索するアルゴリズムを含んでいる。探索演算を実施する回数によって、得られる結果の精度が変化する。演算が繰り返し実施されるため、探索演算を繰り返すと実施回数分演算時間がかかる。   Model predictive control includes an algorithm for searching for an optimal solution. The accuracy of the obtained result varies depending on the number of times the search operation is performed. Since the calculation is repeatedly performed, it takes a calculation time for the number of executions when the search calculation is repeated.

モデル予測制御の手順を簡単に説明する。
・制御ホライズンに相当する一定時間分の制御プランに基づく、予測ホライズンに相当する一定時間分の制御予測が、プラントモデルをもとに実施される。予測ホライズンと制御ホライズンとの間のギャップは固定値等で埋められる。
・予測結果が評価関数にかけられて良し悪しが計測される。
・評価関数をもとに、制御プランを解空間として用いた最適化探索が実施される。
The procedure of model predictive control will be briefly described.
A control prediction for a fixed time corresponding to the predicted horizon based on a control plan for a fixed time corresponding to the control horizon is performed based on the plant model. The gap between the predicted horizon and the control horizon is filled with a fixed value or the like.
・ The prediction result is applied to the evaluation function to measure good or bad.
Based on the evaluation function, an optimization search using the control plan as a solution space is performed.

モデル予測制御の詳細については、非特許文献1を参照されたい。   Refer to Non-Patent Document 1 for details of model predictive control.

図4に示したように、通信処理部63は、現在の処理負荷および割り込みに応じて、デッドライン、要求処理時間、最低処理時間およびエラー応答時間を提示する。具体的には、通信処理部63は、通信要求が来た際に、通信種別ごとに必要な処理およびデッドラインが異なるので、メッセージ解析直後に要求処理時間、最低処理時間およびエラー応答時間の概算見積もりを追加する。   As shown in FIG. 4, the communication processing unit 63 presents a deadline, request processing time, minimum processing time, and error response time in accordance with the current processing load and interrupt. Specifically, when a communication request comes, the communication processing unit 63 differs in required processing and deadline for each communication type, so that the request processing time, minimum processing time, and error response time are estimated immediately after message analysis. Add a quote.

デッドラインとは、目標応答時刻のことである。要求処理時間とは、通信処理部63が現在保持しているすべてのリクエストを処理できる時間のことである。最低処理時間とは、通信処理部63が現在保持している高優先度のリクエストを処理できる時間のことである。エラー応答時間とは、通信処理部63が処理できないリクエストに対してエラーを返却するのに必要な時間のことである。   A deadline is a target response time. The request processing time is a time during which all requests currently held by the communication processing unit 63 can be processed. The minimum processing time is a time during which the communication processing unit 63 can process a high priority request currently held. The error response time is a time required for returning an error to a request that cannot be processed by the communication processing unit 63.

通信処理部63は、スケジューリング実行部66からエラーが通知された場合、処理を予定しているリクエストに対して実処理を行わず、エラーを返却する処理を実施する。例えば、通信処理部63は、フラッシュROM28上に置かれた設定値の読み出しを通信元から要求された場合に、スケジューリング実行部66によってエラーが通知されているとフラッシュROM28の読み出しを行わずにエラーを返却する。   When an error is notified from the scheduling execution unit 66, the communication processing unit 63 performs a process of returning an error without performing an actual process on a request scheduled to be processed. For example, when the communication processing unit 63 is requested by the communication source to read the setting value placed on the flash ROM 28, if the error is notified by the scheduling execution unit 66, the error is not read from the flash ROM 28. To return.

制御精度予測部65は、フィードバック制御部62の制御の実行時間を予測するアルゴリズムを持つ。制御精度予測部65は、このアルゴリズムを用いて、要求処理時間に対するスケジュール候補を探索する。スケジューリング実行部66は、要求処理時間に対して制御精度予測部65の結果からスケジュールを決定するスケジューリングを実行する。   The control accuracy prediction unit 65 has an algorithm for predicting the execution time of the control of the feedback control unit 62. The control accuracy prediction unit 65 searches for a schedule candidate for the requested processing time using this algorithm. The scheduling execution unit 66 executes scheduling for determining a schedule from the result of the control accuracy prediction unit 65 with respect to the requested processing time.

制御精度予測部65は、発生し得る「あるべき制御状態」からの乖離見積もり量が小さいほど、精度が高いと判断する。本実施の形態では、フィードバックによる乖離補正と、演算誤差とを主な要因とした精度劣化を測る尺度として、乖離見積もり量が算出されるが、別の尺度が用いられてもよい。   The control accuracy predicting unit 65 determines that the accuracy is higher as the estimated deviation from the “control state” that can be generated is smaller. In the present embodiment, the estimated divergence amount is calculated as a scale for measuring accuracy degradation mainly due to feedback correction and calculation error, but another scale may be used.

本実施の形態では、制御精度予測部65は、以下の情報に基づき、スケジュールを評価し探索する。
・制御対象の要素で保証すべき制御品質、すなわち、演算精度
・イテレーション回数および実行周期に対する計算所要時間、すなわち、演算量および演算頻度に応じた演算時間
・フィードバックを行わなかった場合の信頼性低下シーケンス、すなわち、フィードバック制御を使用しなかった場合に制御品質が標準品質まで低下するまでの時間
In the present embodiment, the control accuracy prediction unit 65 evaluates and searches the schedule based on the following information.
・ Control quality to be assured by the element to be controlled, that is, calculation accuracy, calculation time for iteration count and execution cycle, that is, calculation time according to the calculation amount and calculation frequency, reliability decrease when feedback is not performed Sequence, i.e. the time until the control quality drops to standard quality when feedback control is not used

図7は、制御精度予測部65による推定誤差の演算例を、時間に対する誤差見積もり量のグラフで示している。誤差見積もり量は、前述した乖離見積もり量に相当する。   FIG. 7 shows a calculation example of the estimation error by the control accuracy prediction unit 65 in a graph of the error estimation amount with respect to time. The estimated error amount corresponds to the aforementioned estimated divergence amount.

誤差見積もり量が増えることにより、精度が悪化する。一方、フィードバック制御部62によるフィードバックが発生することにより、精度が回復する。フィードバックのイテレーション回数および実行周期が変更されることで、実線で表された変化パターンを、破線で表された変化パターンに変えることができる。   As the estimated error amount increases, the accuracy deteriorates. On the other hand, the accuracy is restored by the occurrence of feedback by the feedback control unit 62. By changing the number of feedback iterations and the execution period, the change pattern represented by the solid line can be changed to the change pattern represented by the broken line.

以下、制御精度予測部65による見積もりの例を説明する。   Hereinafter, an example of estimation by the control accuracy prediction unit 65 will be described.

時刻nにおける内部状態の予想誤差をEEi(n)とする。外界との相互作用においての誤差悪化見積もり係数をEEextとする。フィードバックが発生せず、フィードフォワード制御部61が単体で動作する際の誤差の単位時間経過に対する遷移は、
EEi(n+1)=EEi(n)*EEext
と表現される。
Let EEi (n) be the prediction error of the internal state at time n. Let EEext be the error deterioration estimation coefficient in the interaction with the outside world. The transition with respect to the unit time lapse of the error when the feedforward control unit 61 operates alone without feedback is
EEi (n + 1) = EEi (n) * EEext
It is expressed.

フィードバック発生時は、誤差見積もり量の減少が発生する。フィードバック制御部62による処理の寄与度をFEとする。入力値の誤差見積もり値をEEipとする。演算誤差をEEcとする。フィードバックが発生したときの誤差は、
EEi(n+1)=(1−FE)*EEi(n)*EEext+FE*EEc*EEip
と定式化される。
When feedback occurs, the estimated error amount decreases. The contribution of processing by the feedback control unit 62 is defined as FE. Let EEip be the estimated error value of the input value. Let EEc be the calculation error. The error when feedback occurs is
EEi (n + 1) = (1-FE) * EEi (n) * EEext + FE * EEc * EEip
Is formulated.

デッドラインの時刻をd、最後のフィードバックからの経過時間をc、フィードバック周期をyとする。上記の漸化式から、デッドライン時点での誤差見積もり量は以下の式で算出できる。

Figure 0006239210
The deadline time is d, the elapsed time from the last feedback is c, and the feedback period is y. From the above recurrence formula, the estimated error amount at the time of the deadline can be calculated by the following formula.
Figure 0006239210

図8を参照して、制御精度予測部65によるスケジュール探索の動作を説明する。   With reference to FIG. 8, the operation of the schedule search by the control accuracy prediction unit 65 will be described.

ステップS101において、制御精度予測部65は、スケジュールが要求処理時間treqを満たす周期yおよび演算回数xの条件を探索する。   In step S <b> 101, the control accuracy prediction unit 65 searches for the condition of the cycle y and the number of operations x that satisfy the request processing time treq in the schedule.

評価演算1回あたりの計算見積もり時間をtev、フィードフォワード制御部61の周期あたりの動作時間をthとする。デッドラインまでの時間tresは、

Figure 0006239210
と表せる。制御精度予測部65は、tres(y,x,d,c)<treqとなる周期yおよび演算回数xの組み合わせを算出する。The estimated calculation time per evaluation operation is tev, and the operation time per cycle of the feedforward control unit 61 is th. The time tres until the deadline is
Figure 0006239210
It can be expressed. The control accuracy predicting unit 65 calculates a combination of the cycle y and the number of operations x where tres (y, x, d, c) <treq.

ステップS102において、制御精度予測部65は、最良精度のスケジュールを探索する。   In step S102, the control accuracy prediction unit 65 searches for the schedule with the best accuracy.

スケジュールを周期yおよび演算回数xの組み合わせとする。演算誤差EEcを演算回数xの関数EEc(x)とする。デッドライン時点での誤差見積もり値EEd(y,x,d,c)は以下の式で決定できる。

Figure 0006239210
The schedule is a combination of the cycle y and the operation count x. The calculation error EEc is defined as a function EEc (x) of the number of calculations x. The estimated error value EEd (y, x, d, c) at the time of deadline can be determined by the following equation.
Figure 0006239210

制御精度予測部65は、EEdの結果が最小となるような周期yおよび演算回数xの組み合わせを探索する。   The control accuracy predicting unit 65 searches for a combination of the cycle y and the number of times of calculation x that minimizes the EEd result.

なお、探索については固定パターンを用いたほうが高速なケースが多い。このため、実際には、よく使用するデッドラインdおよび経過時間cの値と要求処理時間treqとに対して周期yおよび演算回数xを導出するマップを用意しておくとよい。   In many cases, it is faster to use a fixed pattern for searching. Therefore, in practice, it is preferable to prepare a map for deriving the cycle y and the number of operations x with respect to the frequently used deadline d and elapsed time c values and the requested processing time treq.

図9に、マップの構成例を示す。制御精度予測部65は、マップを探索し、該当する組み合わせがあれば、その組み合わせの値を使用する。制御精度予測部65は、マップの範囲外については、上述のアルゴリズムまたは他の簡易アルゴリズムを使用する。   FIG. 9 shows a configuration example of the map. The control accuracy prediction unit 65 searches the map and, if there is a corresponding combination, uses the value of that combination. The control accuracy prediction unit 65 uses the above-described algorithm or another simple algorithm outside the map range.

図10を参照して、スケジューリング実行部66によるスケジュール決定の動作を説明する。   With reference to FIG. 10, the operation of schedule determination by the scheduling execution unit 66 will be described.

ステップS201において、スケジューリング実行部66は、通信処理部63から通知された要求処理時間を確保するための最良精度のスケジュールを探索する。   In step S <b> 201, the scheduling execution unit 66 searches for a schedule with the best accuracy for securing the requested processing time notified from the communication processing unit 63.

ステップS202において、スケジューリング実行部66は、要求処理時間を確保できるスケジュールが要求精度を満たすかどうかを判定する。   In step S202, the scheduling execution unit 66 determines whether or not a schedule that can secure the requested processing time satisfies the required accuracy.

ステップS202で要求精度が満たされていれば、ステップS203において、スケジューリング実行部66は、要求処理時間を確保できるスケジュールを結果として出力する。   If the required accuracy is satisfied in step S202, in step S203, the scheduling execution unit 66 outputs a schedule that can secure the required processing time as a result.

ステップS202で要求精度が満たされていなければ、ステップS204において、スケジューリング実行部66は、通信処理部63から通知された最低処理時間を確保するための最良精度のスケジュールを探索する。   If the required accuracy is not satisfied in step S202, in step S204, the scheduling execution unit 66 searches for a schedule with the best accuracy for securing the minimum processing time notified from the communication processing unit 63.

ステップS205において、スケジューリング実行部66は、最低処理時間を確保できるスケジュールが要求精度を満たすかどうかを判定する。   In step S205, the scheduling execution unit 66 determines whether a schedule that can secure the minimum processing time satisfies the required accuracy.

ステップS205で要求精度が満たされていれば、ステップS206において、スケジューリング実行部66は、最低処理時間を確保できるスケジュールを結果として出力する。   If the required accuracy is satisfied in step S205, in step S206, the scheduling execution unit 66 outputs a schedule that can secure the minimum processing time as a result.

ステップS205で要求精度が満たされていなければ、ステップS207において、スケジューリング実行部66は、通信処理部63へエラーを返却し、通信処理部63の処理をエラー返却のみに限定させる。これにより、要求精度を確保し、制御の安全性を担保することができる。なお、通信処理部63の処理を優先し、制御処理を異常系処理に移行させることで安全性を担保することもできる。   If the required accuracy is not satisfied in step S205, in step S207, the scheduling execution unit 66 returns an error to the communication processing unit 63, and limits the processing of the communication processing unit 63 to error return only. Thereby, the required accuracy can be ensured and the safety of the control can be ensured. In addition, priority can be given to the process of the communication process part 63, and safety | security can also be ensured by shifting a control process to an abnormal process.

上記のように、スケジュール処理部54は、第1処理の実行にかかる時間を固定時間とみなす。スケジュール処理部54は、第3処理の実行にかかる時間を要求処理時間として第3処理部53から通知される。ステップS201において、スケジュール処理部54は、第2処理の実行にかかる時間がデジタル演算装置21の使用時間の上限値から固定時間と要求処理時間とを引いて得られる第1残り時間内に収まり、かつ、第1処理の演算精度が閾値を上回る、第2処理の演算量および演算頻度の組み合わせを探索する。これにより、ステップS202において、スケジュール処理部54は、第2処理の演算量および演算頻度を調整する。   As described above, the schedule processing unit 54 regards the time taken to execute the first process as a fixed time. The schedule processing unit 54 is notified from the third processing unit 53 with the time required for executing the third processing as the requested processing time. In step S201, the schedule processing unit 54 falls within the first remaining time obtained by subtracting the fixed time and the requested processing time from the upper limit value of the usage time of the digital arithmetic device 21 for the time taken to execute the second processing, And the combination of the calculation amount and calculation frequency of a 2nd process in which the calculation precision of a 1st process exceeds a threshold value is searched. Thereby, in step S202, the schedule process part 54 adjusts the calculation amount and calculation frequency of a 2nd process.

スケジュール処理部54は、第3処理の一部の実行にかかる時間を最低処理時間として第3処理部から通知される。ステップS202において、第2処理の実行にかかる時間が第1残り時間内に収まり、かつ、第1処理の演算精度が閾値を上回る、第2処理の演算量および演算頻度の組み合わせがなければ、ステップS204の処理が行われる。ステップS204において、スケジュール処理部54は、第2処理の実行にかかる時間がデジタル演算装置21の使用時間の上限値から固定時間と最低処理時間とを引いて得られる第2残り時間内に収まり、かつ、第1処理の演算精度が閾値を上回る、第2処理の演算量および演算頻度の組み合わせを探索する。これにより、ステップS206において、スケジュール処理部54は、第2処理の演算量および演算頻度を調整する。   The schedule processing unit 54 is notified from the third processing unit with the time taken to execute a part of the third processing as the minimum processing time. In step S202, if there is no combination of the amount of calculation and the calculation frequency of the second process within which the time required for executing the second process falls within the first remaining time and the calculation accuracy of the first process exceeds the threshold, step The process of S204 is performed. In step S204, the schedule processing unit 54 falls within the second remaining time obtained by subtracting the fixed time and the minimum processing time from the upper limit value of the usage time of the digital arithmetic device 21, and the time taken to execute the second processing. And the combination of the calculation amount and calculation frequency of a 2nd process in which the calculation precision of a 1st process exceeds a threshold value is searched. Thereby, in step S206, the schedule process part 54 adjusts the calculation amount and calculation frequency of a 2nd process.

ステップS205において、第2処理の実行にかかる時間が第2残り時間内に収まり、かつ、第1処理の演算精度が閾値を上回る、第2処理の演算量および演算頻度の組み合わせがなければ、ステップS207の処理が行われる。ステップS207において、スケジュール処理部54は、第2処理の実行にかかる時間がデジタル演算装置21の使用時間の上限値から固定時間を引いて得られる第3残り時間内に収まり、かつ、第1処理の演算精度が閾値を上回る、第2処理の演算量および演算頻度の組み合わせを探索する。これにより、ステップS207において、スケジュール処理部54は、第2処理の演算量および演算頻度を調整する。   In step S205, if there is no combination of the amount of calculation and the calculation frequency of the second process within which the time taken to execute the second process falls within the second remaining time and the calculation accuracy of the first process exceeds the threshold value, step The process of S207 is performed. In step S207, the schedule processing unit 54 falls within the third remaining time obtained by subtracting the fixed time from the upper limit value of the usage time of the digital arithmetic device 21, and the time required for executing the second process is within the first process. The combination of the calculation amount and the calculation frequency of the second process in which the calculation accuracy of the second calculation exceeds the threshold value is searched. Thereby, in step S207, the schedule process part 54 adjusts the calculation amount and calculation frequency of a 2nd process.

図11を参照して、制御装置13の機能要素間の協調動作例を説明する。   With reference to FIG. 11, an example of cooperative operation between the functional elements of the control device 13 will be described.

ステップS301およびステップS302において、スケジューリング実行部66は、各時点でのスケジュールに基づき、フィードフォワード制御部61を駆動する。ステップS321において、スケジューリング実行部66は、通信処理部63から要求を受ける。ステップS331において、スケジューリング実行部66は、スケジュールを見直す。ステップS341において、スケジューリング実行部66は、図10のステップS201以降の処理を行う。必要であれば、ステップS342において、スケジューリング実行部66は、図10のステップS204以降の処理を行う。ステップS332において、スケジューリング実行部66は、スケジューリングを実行し、周期および演算回数を設定する。ステップS351において、スケジューリング実行部66は、通信処理部63に動作許可を発行する。ステップS361において、通信処理部63は、実処理を実行する。この処理は、低優先度処理であるため、常にフィードフォワード制御部61およびフィードバック制御部62の処理にプリエンプトされる。   In step S301 and step S302, the scheduling execution unit 66 drives the feedforward control unit 61 based on the schedule at each time point. In step S <b> 321, the scheduling execution unit 66 receives a request from the communication processing unit 63. In step S331, the scheduling execution unit 66 reviews the schedule. In step S341, the scheduling execution unit 66 performs the processing after step S201 in FIG. If necessary, in step S342, the scheduling execution unit 66 performs the processing after step S204 in FIG. In step S332, the scheduling execution unit 66 executes scheduling and sets the cycle and the number of operations. In step S <b> 351, the scheduling execution unit 66 issues an operation permission to the communication processing unit 63. In step S361, the communication processing unit 63 executes actual processing. Since this process is a low-priority process, it is always preempted by the processes of the feedforward control unit 61 and the feedback control unit 62.

ステップS303およびステップS304において、スケジューリング実行部66は、各時点でのスケジュールに基づき、フィードフォワード制御部61を駆動する。ステップS311において、スケジューリング実行部66は、その時点でのスケジュールに基づき、フィードバック制御部62を駆動する。ステップS305およびステップS306において、スケジューリング実行部66は、各時点でのスケジュールに基づき、フィードフォワード制御部61を駆動する。   In step S303 and step S304, the scheduling execution unit 66 drives the feedforward control unit 61 based on the schedule at each time point. In step S311, the scheduling execution unit 66 drives the feedback control unit 62 based on the schedule at that time. In step S305 and step S306, the scheduling execution unit 66 drives the feedforward control unit 61 based on the schedule at each time point.

図示していないが、デッドライン経過後、スケジューリング実行部66は、再度スケジュールを見直し、動作を継続する。   Although not shown, after the deadline has elapsed, the scheduling execution unit 66 reviews the schedule again and continues the operation.

図12を参照して、適切なスケジュールが見つからず、エラー応答を実施する例を説明する。   With reference to FIG. 12, an example in which an appropriate schedule is not found and an error response is performed will be described.

ステップS351に代わるステップS451において、スケジューリング実行部66は、通信処理部63にエラー応答を発行する。ステップS361に代わるステップS461において、通信処理部63は、エラー処理を実行する。   In step S451 instead of step S351, the scheduling execution unit 66 issues an error response to the communication processing unit 63. In step S461 instead of step S361, the communication processing unit 63 executes error processing.

***実施の形態の効果の説明***
上記の動作により、制御対象要素の制御については最低限度の制御品質を担保できる。また、通信処理等の低応答処理に必要な時間を極力確保することができる。時間が確保できない場合にはエラー処理を実施することができる。
*** Explanation of the effect of the embodiment ***
With the above operation, a minimum control quality can be secured for the control of the control target element. In addition, the time required for low response processing such as communication processing can be ensured as much as possible. If time cannot be secured, error processing can be performed.

本実施の形態では、第1処理として、制御のための出力値の演算が実行される。第2処理として、第1処理の演算精度を上げるための入力値の演算であり、演算量が多いほど第1処理の演算精度が上がる演算が実行される。デジタル演算装置21の使用時間と第1処理の演算精度との制約に合わせて、第2処理の演算量および演算頻度の少なくともいずれかが調整される。このため、制御のための処理の時間を、制御品質を適切に保つよう確保しつつ、他の必要な処理の時間を確保することができる。   In the present embodiment, calculation of an output value for control is executed as the first process. The second process is an input value calculation for increasing the calculation accuracy of the first process, and an operation in which the calculation accuracy of the first process increases as the calculation amount increases. At least one of the calculation amount and the calculation frequency of the second process is adjusted according to the restriction between the usage time of the digital calculation device 21 and the calculation accuracy of the first process. For this reason, it is possible to secure other necessary processing time while ensuring the processing time for control so as to appropriately maintain the control quality.

本実施の形態では、デジタル演算装置21によって実現されるスイッチング制御システムが、制御対象要素の制御にあたり以下の要素を具備する。
・制御頻度および制御精度の少なくともいずれかを調節可能なフィードバック制御部62・フィードバック制御部62により制御されるが、一定範囲内では自立的に動作するフィードフォワード制御部61
・演算量に基づき制約を実現可能なスケジュールとフィードバック制御部62の演算精度との組み合わせを探索する制御精度予測部65
・制御精度予測部65の探索結果に基づきスケジューリングおよび演算精度指定を実施するスケジューリング実行部66
In the present embodiment, the switching control system realized by the digital arithmetic device 21 includes the following elements for controlling the control target elements.
A feedforward control unit 61 that is controlled by the feedback control unit 62 and / or the feedback control unit 62 that can adjust at least one of the control frequency and the control accuracy, but operates autonomously within a certain range.
A control accuracy prediction unit 65 that searches for a combination of a schedule capable of realizing the constraint based on the calculation amount and the calculation accuracy of the feedback control unit 62
A scheduling execution unit 66 that performs scheduling and calculation accuracy designation based on the search result of the control accuracy prediction unit 65

本実施の形態によれば、デジタル演算装置21によって実現されるスイッチング制御システムにおいて、制御処理のために使用する時間を、制御品質を適切に保つよう確保しつつ、必要な他の処理の時間を確保することができる。   According to the present embodiment, in the switching control system realized by the digital arithmetic unit 21, the time used for the control processing is ensured so as to keep the control quality appropriately, and the time required for other processing is reduced. Can be secured.

本実施の形態では、スケジュール処理部54に制御精度および処理時間に基づいた計画を演算する処理を設け、制御精度と制御以外の処理のための時間とのバランスを取ったスケジュールを決定することができる。   In the present embodiment, the schedule processing unit 54 is provided with a process for calculating a plan based on the control accuracy and the processing time, and a schedule that balances the control accuracy and the time for processing other than the control can be determined. it can.

本実施の形態では、スイッチング制御システムでスケジューリングおよび演算精度指定の探索にテーブルを使用することで、効率を高めることができる。   In the present embodiment, the efficiency can be improved by using a table for searching for scheduling and calculation accuracy designation in the switching control system.

本実施の形態では、スイッチング制御システムでスケジューリング不可の場合に制御以外の処理としてエラー処理を実行することで負荷を軽減し、制御精度を担保することができる。   In this embodiment, when scheduling is impossible in the switching control system, error processing is executed as processing other than control, thereby reducing the load and ensuring control accuracy.

***他の構成***
本実施の形態では、第1処理部51、第2処理部52、第3処理部53およびスケジュール処理部54の機能がソフトウェアにより実現されるが、変形例として、第1処理部51、第2処理部52、第3処理部53およびスケジュール処理部54の機能がソフトウェアとハードウェアとの組み合わせにより実現されてもよい。すなわち、第1処理部51、第2処理部52、第3処理部53およびスケジュール処理部54の機能の一部が専用の電子回路により実現され、残りがソフトウェアにより実現されてもよい。
*** Other configurations ***
In the present embodiment, the functions of the first processing unit 51, the second processing unit 52, the third processing unit 53, and the schedule processing unit 54 are realized by software, but as a modification, the first processing unit 51, the second processing unit 54, The functions of the processing unit 52, the third processing unit 53, and the schedule processing unit 54 may be realized by a combination of software and hardware. That is, some of the functions of the first processing unit 51, the second processing unit 52, the third processing unit 53, and the schedule processing unit 54 may be realized by a dedicated electronic circuit, and the rest may be realized by software.

専用の電子回路は、例えば、単一回路、複合回路、プログラム化したプロセッサ、並列プログラム化したプロセッサ、ロジックIC、GA、FPGAまたはASICである。「GA」は、Gate Arrayの略語である。「FPGA」は、Field−Programmable Gate Arrayの略語である。「ASIC」は、Application Specific Integrated Circuitの略語である。   The dedicated electronic circuit is, for example, a single circuit, a composite circuit, a programmed processor, a parallel programmed processor, a logic IC, a GA, an FPGA, or an ASIC. “GA” is an abbreviation for Gate Array. “FPGA” is an abbreviation for Field-Programmable Gate Array. “ASIC” is an abbreviation for Application Specific Integrated Circuit.

別の変形例として、第1処理部51、第2処理部52、第3処理部53およびスケジュール処理部54の機能がハードウェアにより実現されてもよい。すなわち、デジタル演算装置21は、本実施の形態ではプロセッサであるが、FPGA等の演算装置であってもよい。   As another modification, the functions of the first processing unit 51, the second processing unit 52, the third processing unit 53, and the schedule processing unit 54 may be realized by hardware. That is, the digital arithmetic device 21 is a processor in the present embodiment, but may be an arithmetic device such as an FPGA.

10 機器、11 同期モータ、12 スイッチング素子、13 制御装置、14 ゲート信号線、21 デジタル演算装置、22 メモリ、23 リアルタイムクロック、24 ADコンバータ、25 シリアル通信デバイス、26 汎用IO、27 パルス幅変調器、28 フラッシュROM、29 ウォッチドッグタイマ、30 割り込みコントローラ、31 バス、32 入出力ポート、41 リファレンス波、42 キャリア波、43 PWM波形、51 第1処理部、52 第2処理部、53 第3処理部、54 スケジュール処理部、61 フィードフォワード制御部、62 フィードバック制御部、63 通信処理部、64 センサ値取得部、65 制御精度予測部、66 スケジューリング実行部、71 機械角予測器、72 デューティ値変換、73 動作モード判断。   DESCRIPTION OF SYMBOLS 10 apparatus, 11 synchronous motor, 12 switching element, 13 control apparatus, 14 gate signal line, 21 digital arithmetic unit, 22 memory, 23 real time clock, 24 AD converter, 25 serial communication device, 26 general purpose IO, 27 pulse width modulator 28 Flash ROM, 29 Watchdog timer, 30 Interrupt controller, 31 Bus, 32 Input / output port, 41 Reference wave, 42 Carrier wave, 43 PWM waveform, 51 First processing unit, 52 Second processing unit, 53 Third processing Unit, 54 schedule processing unit, 61 feed forward control unit, 62 feedback control unit, 63 communication processing unit, 64 sensor value acquisition unit, 65 control accuracy prediction unit, 66 scheduling execution unit, 71 mechanical angle predictor, 72 duty value conversion 73 Operation mode judgment.

Claims (7)

第1処理として、制御のための出力値の演算をデジタル演算装置で実行する第1処理部と、
第2処理として、前記第1処理の演算精度を上げるために前記第1処理部に入力される入力値の演算であり、演算量が多いほど前記第1処理の演算精度が上がる演算を前記デジタル演算装置で実行する第2処理部と、
第3処理として、前記第1処理および前記第2処理とは別の処理を前記デジタル演算装置で実行する第3処理部と、
前記第1処理の実行にかかる時間を固定時間とみなし、前記第3処理の実行にかかる時間を要求処理時間として前記第3処理部から通知され、前記第2処理の実行にかかる時間が前記デジタル演算装置の使用時間の上限値から前記固定時間と前記要求処理時間とを引いて得られる第1残り時間内に収まり、かつ、前記第1処理の演算精度が閾値を上回る、前記第2処理の演算量および演算頻度の組み合わせを探索することで、前記第2処理の演算量および演算頻度を調整するスケジュール処理部と
を備える制御装置。
As a first process, a first processing unit that executes calculation of an output value for control by a digital arithmetic device;
The second process is a calculation of an input value input to the first processing unit in order to increase the calculation accuracy of the first process, and an operation in which the calculation accuracy of the first process increases as the calculation amount increases. A second processing unit executed by the arithmetic device;
As a third process, a third processing unit that executes a process different from the first process and the second process by the digital arithmetic device;
The time required to execute the first process is regarded as a fixed time, the time required to execute the third process is notified from the third processing unit as the required processing time, and the time required to execute the second process is the digital time. In the second process, the calculation time of the second process is within a first remaining time obtained by subtracting the fixed time and the required processing time from the upper limit value of the use time of the arithmetic device , and the calculation accuracy of the first process exceeds a threshold value . by searching for a combination of computing amount and calculating the frequency control device and a schedule processing section for adjusting the operation amount and the operation frequency at the second processing.
前記スケジュール処理部は、前記第3処理の一部の実行にかかる時間を最低処理時間として前記第3処理部から通知され、前記第2処理の実行にかかる時間が前記第1残り時間内に収まり、かつ、前記第1処理の演算精度が前記閾値を上回る、前記第2処理の演算量および演算頻度の組み合わせがなければ、前記第2処理の実行にかかる時間が前記デジタル演算装置の使用時間の上限値から前記固定時間と前記最低処理時間とを引いて得られる第2残り時間内に収まり、かつ、前記第1処理の演算精度が前記閾値を上回る、前記第2処理の演算量および演算頻度の組み合わせを探索することで、前記第2処理の演算量および演算頻度を調整する請求項に記載の制御装置。 The schedule processing unit is notified from the third processing unit with a time required for execution of a part of the third processing as a minimum processing time, and a time required for execution of the second processing falls within the first remaining time. In addition, if there is no combination of the calculation amount and the calculation frequency of the second process in which the calculation accuracy of the first process exceeds the threshold value, the time required to execute the second process is equal to the usage time of the digital calculation device. Calculation amount and calculation frequency of the second process that fall within a second remaining time obtained by subtracting the fixed time and the minimum processing time from an upper limit value, and the calculation accuracy of the first process exceeds the threshold value by searching for a combination of the control device according to claim 1 for adjusting the amount of computation and calculation frequency of the second processing. 前記スケジュール処理部は、前記第2処理の実行にかかる時間が前記第2残り時間内に収まり、かつ、前記第1処理の演算精度が前記閾値を上回る、前記第2処理の演算量および演算頻度の組み合わせがなければ、前記第2処理の実行にかかる時間が前記デジタル演算装置の使用時間の上限値から前記固定時間を引いて得られる第3残り時間内に収まり、かつ、前記第1処理の演算精度が前記閾値を上回る、前記第2処理の演算量および演算頻度の組み合わせを探索することで、前記第2処理の演算量および演算頻度を調整する請求項に記載の制御装置。 The schedule processing unit includes a calculation amount and a calculation frequency of the second process in which the time taken to execute the second process is within the second remaining time and the calculation accuracy of the first process exceeds the threshold value. If the combination is not included, the time required to execute the second process falls within the third remaining time obtained by subtracting the fixed time from the upper limit value of the use time of the digital arithmetic device, and the first process calculation accuracy is above the threshold, by searching a combination of the operation amount and operation frequency of the second processing, the control apparatus according to claim 2 for adjusting the amount of computation and calculation frequency of the second processing. 前記第1処理は、フィードフォワード制御の処理であり、
前記第2処理は、フィードバック制御の処理である請求項1からのいずれか1項に記載の制御装置。
The first process is a process of feedforward control,
The second process, the control device according to any one of claims 1 3 is a process feedback control.
前記第2処理は、モデル予測制御を用いる処理である請求項1からのいずれか1項に記載の制御装置。 The second process, the control device according to claim 1, any one of 4 is a process using a model predictive control. 請求項1からのいずれか1項に記載の制御装置と、
前記制御装置により制御される電動機と
を備える機器。
A control device according to any one of claims 1 to 5 ;
A device comprising an electric motor controlled by the control device.
デジタル演算装置を備えるコンピュータに、
制御のための出力値の演算である第1処理と、
前記第1処理の演算精度を上げるための入力値の演算であり、演算量が多いほど前記第1処理の演算精度が上がる演算である第2処理と、
前記第1処理および前記第2処理とは別の処理である第3処理と、
前記第1処理の実行にかかる時間を固定時間とみなし、前記第3処理の実行にかかる時間を要求処理時間として通知され、前記第2処理の実行にかかる時間が前記デジタル演算装置の使用時間の上限値から前記固定時間と前記要求処理時間とを引いて得られる第1残り時間内に収まり、かつ、前記第1処理の演算精度が閾値を上回る、前記第2処理の演算量および演算頻度の組み合わせを探索することで、前記第2処理の演算量および演算頻度を調整するスケジューリングと
を実行させる制御プログラム。
In a computer equipped with a digital arithmetic device,
A first process that is a calculation of an output value for control;
A second process that is a calculation of an input value for increasing the calculation accuracy of the first process, and the calculation accuracy of the first process increases as the calculation amount increases;
A third process which is a process different from the first process and the second process;
The time required to execute the first process is regarded as a fixed time, the time required to execute the third process is notified as the required processing time, and the time required to execute the second process is equal to the usage time of the digital arithmetic device . The amount of computation and the computation frequency of the second processing that fall within the first remaining time obtained by subtracting the fixed time and the requested processing time from the upper limit, and the computation accuracy of the first processing exceeds a threshold value by searching for a combination, the control program for executing the scheduling for adjusting the amount of computation and calculation frequency at the second processing.
JP2017545758A 2017-04-26 2017-04-26 Control device, equipment and control program Active JP6239210B1 (en)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2017/016595 WO2018198237A1 (en) 2017-04-26 2017-04-26 Control device, device, and control program

Publications (2)

Publication Number Publication Date
JP6239210B1 true JP6239210B1 (en) 2017-11-29
JPWO2018198237A1 JPWO2018198237A1 (en) 2019-06-27

Family

ID=60477127

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2017545758A Active JP6239210B1 (en) 2017-04-26 2017-04-26 Control device, equipment and control program

Country Status (2)

Country Link
JP (1) JP6239210B1 (en)
WO (1) WO2018198237A1 (en)

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002354857A (en) * 2001-05-22 2002-12-06 Yaskawa Electric Corp Motor controller
JP2011100338A (en) * 2009-11-06 2011-05-19 Hitachi Automotive Systems Ltd Onboard multiple application execution apparatus

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002354857A (en) * 2001-05-22 2002-12-06 Yaskawa Electric Corp Motor controller
JP2011100338A (en) * 2009-11-06 2011-05-19 Hitachi Automotive Systems Ltd Onboard multiple application execution apparatus

Also Published As

Publication number Publication date
WO2018198237A1 (en) 2018-11-01
JPWO2018198237A1 (en) 2019-06-27

Similar Documents

Publication Publication Date Title
US20180321980A1 (en) Execution time prediction for energy-efficient computer systems
US20140277815A1 (en) Processor control system
US9671844B2 (en) Method and apparatus for managing global chip power on a multicore system on chip
JP6232258B2 (en) Prediction device, prediction method, and program
US20150006940A1 (en) Server power predicting apparatus and method using virtual machine
Zanini et al. Multicore thermal management using approximate explicit model predictive control
JP6239210B1 (en) Control device, equipment and control program
US20240047966A1 (en) Systems, devices and methods for power management and power estimation
US10846086B2 (en) Method for managing computation tasks on a functionally asymmetric multi-core processor
US11860707B2 (en) Current prediction-based instruction throttling control
US11163345B2 (en) Electronic device to control temperature and computing performance of at least one processing unit and system and method thereof
USRE48100E1 (en) Method and system for power management
Zanini et al. Thermal-aware system-level modeling and management for multi-processor systems-on-chip
CN112764509B (en) Computing core, computing core temperature adjustment method, computing core temperature adjustment device, computer readable medium, computer program, chip and computer system
US11966786B2 (en) Proxy-based instruction throttling control
US20230324856A1 (en) Control of a technical system by means of a computing unit for artificial intelligence
US8089236B2 (en) System and method for adjusting pulse width modulation signals according to component temperatures in a computer
US20180032123A1 (en) Power source control method, power source control apparatus, and storage medium
Wu et al. Load-aware stochastic feedback control for DVFS with tight performance guarantee
KR20140068515A (en) System and method for electric vehicle charging load forecasting
US11467546B2 (en) Semiconductor device and prediction method for resource usage in semiconductor device
JP4952057B2 (en) Clock abnormality detection method and clock abnormality detection program
US20130086402A1 (en) DFVS-Enabled Multiprocessor
US20110016472A1 (en) Image processing apparatus, image processing method, and program
Ulbrich et al. Qronos: Towards quality-aware responsive real-time control systems

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20170830

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20170830

A871 Explanation of circumstances concerning accelerated examination

Free format text: JAPANESE INTERMEDIATE CODE: A871

Effective date: 20170830

A975 Report on accelerated examination

Free format text: JAPANESE INTERMEDIATE CODE: A971005

Effective date: 20170912

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

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20171003

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20171031

R150 Certificate of patent or registration of utility model

Ref document number: 6239210

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