WO2018198237A1 - 制御装置、機器および制御プログラム - Google Patents
制御装置、機器および制御プログラム Download PDFInfo
- Publication number
- WO2018198237A1 WO2018198237A1 PCT/JP2017/016595 JP2017016595W WO2018198237A1 WO 2018198237 A1 WO2018198237 A1 WO 2018198237A1 JP 2017016595 W JP2017016595 W JP 2017016595W WO 2018198237 A1 WO2018198237 A1 WO 2018198237A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- calculation
- time
- processing unit
- control
- processing
- Prior art date
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/46—Multiprogramming arrangements
- G06F9/48—Program 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処理の演算量および演算頻度の少なくともいずれかを調整する。
Description
本発明は、制御装置、機器および制御プログラムに関するものである。
電動機および電力制御装置等のパワーエレクトロニクス機器は、一般的に、スイッチング素子と制御装置との組み合わせを用いて実現される。制御装置の制御機構の一部または多くの部分は、一般的に、マイクロコンピュータで動作するソフトウェアにより実現される。
近年のパワーエレクトロニクス機器に対する要求は、以前に増して高くなっている。特に、低損失性および小型化が求められている。
要求を満たすために、より低損失の素子を高いスイッチング速度で制御することが必要である。より短時間での制御を実施する必要がある。
一方で、制御に関して考慮すべき事項が増えている。多入力、多出力および多制約条件を加味して、電気的および物理的に低ノイズの制御を実現するために、モデル予測制御等の複雑な制御を実現する必要がある。モデル予測制御については、非特許文献1に記載されている。
コスト低減を目的として、単一のマイクロコンピュータで、制御だけでなく、制御に付随する、通信または異常監視等の処理を実現する必要があることも多い。そのようなケースでは、高応答または短処理時間の制御に加えて、低応答または長処理時間の、制御以外の処理を実現する必要があることが多い。
したがって、制御のための処理の時間を、制御品質を適切に保つよう確保しつつ、他の必要な処理の時間を確保する必要がある。
特許文献1および特許文献2には、タスクのスケジューリングに関する技術が記載されている。
特許文献3には、残存時間に応じて処理の一部を省略する技術が記載されている。
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, 2012
特許文献1および特許文献2に記載の技術では、制御のための処理の時間を調整する機構が設けられていない。よって、制御以外の必要な処理の時間を確保することができない。
特許文献3に記載の技術では、制御品質を維持するための機構が設けられていない。よって、残存時間が僅少になるケースが多くなると、制御品質が落ちる。そして、モータの脱調等、想定制御シーケンスから逸脱する事象が発生する。
本発明は、制御のための処理の時間を、制御品質を適切に保つよう確保しつつ、他の必要な処理の時間を確保することを目的とする。
本発明の一態様に係る制御装置は、
第1処理として、制御のための出力値の演算をデジタル演算装置で実行する第1処理部と、
第2処理として、前記第1処理の演算精度を上げるために前記第1処理部に入力される入力値の演算であり、演算量が多いほど前記第1処理の演算精度が上がる演算を前記デジタル演算装置で実行する第2処理部と、
前記デジタル演算装置の使用時間と前記第1処理の演算精度との制約に合わせて、前記第2処理部に対し、前記第2処理の演算量および演算頻度の少なくともいずれかを調整するスケジュール処理部とを備える。
第1処理として、制御のための出力値の演算をデジタル演算装置で実行する第1処理部と、
第2処理として、前記第1処理の演算精度を上げるために前記第1処理部に入力される入力値の演算であり、演算量が多いほど前記第1処理の演算精度が上がる演算を前記デジタル演算装置で実行する第2処理部と、
前記デジタル演算装置の使用時間と前記第1処理の演算精度との制約に合わせて、前記第2処理部に対し、前記第2処理の演算量および演算頻度の少なくともいずれかを調整するスケジュール処理部とを備える。
本発明では、第1処理として、制御のための出力値の演算が実行される。第2処理として、第1処理の演算精度を上げるための入力値の演算であり、演算量が多いほど第1処理の演算精度が上がる演算が実行される。デジタル演算装置の使用時間と第1処理の演算精度との制約に合わせて、第2処理の演算量および演算頻度の少なくともいずれかが調整される。このため、制御のための処理の時間を、制御品質を適切に保つよう確保しつつ、他の必要な処理の時間を確保することができる。
以下、本発明の実施の形態について、図を用いて説明する。各図中、同一または相当する部分には、同一符号を付している。実施の形態の説明において、同一または相当する部分については、説明を適宜省略または簡略化する。なお、本発明は、以下に説明する実施の形態に限定されるものではなく、必要に応じて種々の変更が可能である。例えば、以下に説明する実施の形態は、部分的に実施されても構わない。
実施の形態1.
本実施の形態について、図1から図12を用いて説明する。
本実施の形態について、図1から図12を用いて説明する。
***構成の説明***
図1を参照して、本実施の形態に係る機器10の構成を説明する。
図1を参照して、本実施の形態に係る機器10の構成を説明する。
機器10は、具体的には、パワーエレクトロニクス機器である。機器10は、同期モータ11と、スイッチング素子12と、制御装置13とを備える。
同期モータ11は、非同期モータに置き換えられてもよいし、電力制御装置等に置き換えられてもよい。すなわち、機器10は、制御対象の要素として、電動機または電力制御装置等の任意の要素を備えていてよい。
スイッチング素子12は、同期モータ11に入力される電流を調整するための素子である。スイッチング素子12は、例えば、MOSFETである。「MOSFET」は、Metal-Oxide-Semiconductor Field-Effect Transistorの略語である。
制御装置13は、ゲート信号線14を介してスイッチング素子12のゲート電圧を制御することにより、同期モータ11の回転を制御する装置である。制御装置13の制御機構の一部または多くの部分は、マイクロコンピュータで動作するソフトウェアにより実現される。
図2を参照して、本実施の形態に係る制御装置13のハードウェア構成を説明する。
制御装置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を介して他のハードウェアと接続され、これら他のハードウェアを制御する。
Modulatorの略語である。「WDT」は、Watchdog Timerの略語である。デジタル演算装置21は、バス31を介して他のハードウェアと接続され、これら他のハードウェアを制御する。
デジタル演算装置21は、本実施の形態ではプロセッサである。プロセッサは、各種処理を行うICである。「IC」は、Integrated Circuitの略語である。プロセッサは、例えば、CPUである。「CPU」は、Central Processing Unitの略語である。
メモリ22は、例えば、RAMである。「RAM」は、Random Access Memoryの略語である。
ADコンバータ24は、同期モータ11のセンサ値を取得するためのデバイスである。
シリアル通信デバイス25は、入出力ポート32を介して外部からの動作要求を受け取るためのデバイスである。
パルス幅変調器27は、入出力ポート32を介してスイッチング素子12のゲート電圧をPWMにより制御するためのデバイスである。「PWM」は、Pulse Width Modulationの略語である。
図3は、PWMによるゲート電圧制御の例を示している。
PWM制御では、多くの場合、固定のキャリア周期が設定される。キャリア周期に対するオン時間の比率であるデューティ比によって通電比が調節されて、電圧または電流が制御される。これにより、交流波が生成されて、同期モータ11を制御することが可能となる。
実際には、出力したいリファレンス波41に対し、キャリア波42が比較される。キャリア波42がリファレンス波41を上回る時間帯のみを通電時間に設定することで、PWM波形43が実現される。大局的に見ると、PWM波形43によって生成される電圧はリファレンス波41と一致する。
図4を参照して、本実施の形態に係る制御装置13の機能構成を説明する。
制御装置13は、機能要素として、第1処理部51と、第2処理部52と、第3処理部53と、スケジュール処理部54とを備える。第1処理部51、第2処理部52、第3処理部53およびスケジュール処理部54の機能は、ソフトウェアにより実現される。
第1処理部51は、直接出力を制御するフィードフォワード制御部61と、フィードバック制御部62へセンサ値を提供するセンサ値取得部64とを有する。
第2処理部52は、フィードフォワード制御部61の動作を、センサ値を確認しながら大局的に制御するフィードバック制御部62を有する。
第3処理部53は、制御以外の処理として、通信処理を実行する通信処理部63を有する。
スケジュール処理部54は、スケジューリングのための誤差の見積もり値の演算を行う制御精度予測部65と、スケジュールの立案を行うスケジューリング実行部66とを有する。
フラッシュROM28には、第1処理部51、第2処理部52、第3処理部53およびスケジュール処理部54の機能を実現するプログラムである制御プログラムが記憶されている。制御プログラムは、メモリ22にロードされ、デジタル演算装置21によって実行される。
第1処理部51、第2処理部52、第3処理部53およびスケジュール処理部54の処理の結果を示す情報、データ、信号値および変数値は、メモリ22、または、デジタル演算装置21内のレジスタまたはキャッシュメモリに記憶される。
制御装置13は、デジタル演算装置21を代替する複数のデジタル演算装置を備えていてもよい。これら複数のデジタル演算装置は、制御プログラムの実行を分担する。それぞれのデジタル演算装置は、デジタル演算装置21と同じように、プロセッサである。
制御プログラムは、磁気ディスクおよび光ディスクといった可搬記録媒体に記憶されてもよい。
***動作の説明***
引き続き図4を参照して、本実施の形態に係る制御装置13の動作を説明する。制御装置13の動作は、本実施の形態に係る制御方法に相当する。
引き続き図4を参照して、本実施の形態に係る制御装置13の動作を説明する。制御装置13の動作は、本実施の形態に係る制御方法に相当する。
第1処理部51は、第1処理として、制御のための出力値の演算をデジタル演算装置21で実行する。第1処理は、任意の高応答処理でよいが、本実施の形態ではフィードフォワード制御の処理である。具体的には、第1処理は、同期モータ11の制御のためにスイッチング素子12に出力される信号のデューティ比の演算である。第1処理は、フィードフォワード制御部61により実行される。
第2処理部52は、第2処理として、第1処理の演算精度を上げるために第1処理部51に入力される入力値の演算であり、演算量が多いほど第1処理の演算精度が上がる演算をデジタル演算装置21で実行する。第2処理は、任意の準高応答処理でよいが、本実施の形態ではフィードバック制御の処理である。第2処理は、任意の制御方式を用いる処理でよいが、本実施の形態ではモデル予測制御を用いる処理である。具体的には、第2処理は、センサ値取得部64により取得された同期モータ11の位置センサの測定値に応じた、第1処理部51に入力される動作指令値の演算である。第2処理は、フィードバック制御部62により実行される。
第3処理部53は、第3処理として、第1処理および第2処理とは別の処理をデジタル演算装置21で実行する。第3処理は、任意の低応答処理でよいが、本実施の形態では通信処理である。具体的には、第3処理は、同期モータ11の制御に直接関わらない通信処理である。第3処理は、通信処理部63により実行される。
スケジュール処理部54は、デジタル演算装置21の使用時間と第1処理の演算精度との制約に合わせて、第2処理部52に対し、第2処理の演算量および演算頻度の少なくともいずれかを調整する。本実施の形態では、第2処理の演算量および演算頻度の両方が調整される。
スケジュール処理部54は、デジタル演算装置21の使用時間と第1処理の演算精度との制約に合わせて、さらに、第3処理部53に第3処理の少なくとも一部を実行させるかどうかを決定する。具体的には、スケジュール処理部54は、デジタル演算装置21の使用時間と第1処理の演算精度との制約に合わせて、第3処理部53に第3処理を実行させるか第3処理の一部を実行させるか第3処理を実行させないかを決定する。
なお、あらかじめ決定された時間が第3処理のために確保され、残りの時間がスケジュール処理部54により第1処理および第2処理に割り当てられてもよい。すなわち、スケジュール処理部54は、第1処理および第2処理の実行にかかる時間がデジタル演算装置21の使用時間の上限値から第3処理のために確保された時間を引いて得られる残り時間内に収まり、かつ、第1処理の演算精度が閾値を上回るように、第2処理の演算量および演算頻度の少なくともいずれかを調整してもよい。
図5から図12を参照して、制御装置13の動作の詳細を説明する。
図5は、フィードフォワード制御部61の動作例を示している。
この例において、フィードフォワード制御部61は、フィードバック制御部62から動作指令値として動作モードと、電圧指令値と、同期モータ11の測定機械角および測定時刻とを受け取る。フィードフォワード制御部61は、機械角予測器71を用いた内部演算によって、同期モータ11の予測機械角θを算出する。フィードフォワード制御部61は、デューティ値変換72を実行して、予測機械角θと電圧指令値とに対して3相デューティ比を算出する。動作モードは、稼動状態および停止状態のいずれかの値をとる。フィードフォワード制御部61は、動作モード判断73を実行して、動作モードが稼動状態の場合に3相デューティ比を出力する。フィードフォワード制御部61は、動作モードが停止状態の場合は3相デューティ比を出力しない。
図6は、フィードバック制御部62の入出力例を示している。
フィードバック制御部62は、センサ値取得部64から得た位置センサ値とスケジューリング実行部66から得た演算精度とを入力として受け、動作指令値をフィードフォワード制御部61へ出力する。
フィードバック制御部62は、スケジューリング実行部66により決定される動作計画に基づいて制御を行う。
フィードバック制御部62が行う制御は、以下のような性質を満たす必要がある。
・スケジューリング実行部66が指定する精度および実施頻度等のスケジュール要素を変更しても動作するアルゴリズムが用いられていること。
・演算の程度に対して制御品質が何らかの尺度で見積もれること。
・演算の程度に対して必要な時間が導出できること。
・フィードバック制御部62が動作しない期間でもフィードフォワード制御部61がある程度の制御品質で動作すること。
・スケジューリング実行部66が指定する精度および実施頻度等のスケジュール要素を変更しても動作するアルゴリズムが用いられていること。
・演算の程度に対して制御品質が何らかの尺度で見積もれること。
・演算の程度に対して必要な時間が導出できること。
・フィードバック制御部62が動作しない期間でもフィードフォワード制御部61がある程度の制御品質で動作すること。
このような性質を満たす制御として、モデル予測制御を用いることができる。モデル予測制御は、Receding Horizon制御とも呼ばれる。
モデル予測制御は、最適解を探索するアルゴリズムを含んでいる。探索演算を実施する回数によって、得られる結果の精度が変化する。演算が繰り返し実施されるため、探索演算を繰り返すと実施回数分演算時間がかかる。
モデル予測制御の手順を簡単に説明する。
・制御ホライズンに相当する一定時間分の制御プランに基づく、予測ホライズンに相当する一定時間分の制御予測が、プラントモデルをもとに実施される。予測ホライズンと制御ホライズンとの間のギャップは固定値等で埋められる。
・予測結果が評価関数にかけられて良し悪しが計測される。
・評価関数をもとに、制御プランを解空間として用いた最適化探索が実施される。
・制御ホライズンに相当する一定時間分の制御プランに基づく、予測ホライズンに相当する一定時間分の制御予測が、プラントモデルをもとに実施される。予測ホライズンと制御ホライズンとの間のギャップは固定値等で埋められる。
・予測結果が評価関数にかけられて良し悪しが計測される。
・評価関数をもとに、制御プランを解空間として用いた最適化探索が実施される。
モデル予測制御の詳細については、非特許文献1を参照されたい。
図4に示したように、通信処理部63は、現在の処理負荷および割り込みに応じて、デッドライン、要求処理時間、最低処理時間およびエラー応答時間を提示する。具体的には、通信処理部63は、通信要求が来た際に、通信種別ごとに必要な処理およびデッドラインが異なるので、メッセージ解析直後に要求処理時間、最低処理時間およびエラー応答時間の概算見積もりを追加する。
デッドラインとは、目標応答時刻のことである。要求処理時間とは、通信処理部63が現在保持しているすべてのリクエストを処理できる時間のことである。最低処理時間とは、通信処理部63が現在保持している高優先度のリクエストを処理できる時間のことである。エラー応答時間とは、通信処理部63が処理できないリクエストに対してエラーを返却するのに必要な時間のことである。
通信処理部63は、スケジューリング実行部66からエラーが通知された場合、処理を予定しているリクエストに対して実処理を行わず、エラーを返却する処理を実施する。例えば、通信処理部63は、フラッシュROM28上に置かれた設定値の読み出しを通信元から要求された場合に、スケジューリング実行部66によってエラーが通知されているとフラッシュROM28の読み出しを行わずにエラーを返却する。
制御精度予測部65は、フィードバック制御部62の制御の実行時間を予測するアルゴリズムを持つ。制御精度予測部65は、このアルゴリズムを用いて、要求処理時間に対するスケジュール候補を探索する。スケジューリング実行部66は、要求処理時間に対して制御精度予測部65の結果からスケジュールを決定するスケジューリングを実行する。
制御精度予測部65は、発生し得る「あるべき制御状態」からの乖離見積もり量が小さいほど、精度が高いと判断する。本実施の形態では、フィードバックによる乖離補正と、演算誤差とを主な要因とした精度劣化を測る尺度として、乖離見積もり量が算出されるが、別の尺度が用いられてもよい。
本実施の形態では、制御精度予測部65は、以下の情報に基づき、スケジュールを評価し探索する。
・制御対象の要素で保証すべき制御品質、すなわち、演算精度
・イテレーション回数および実行周期に対する計算所要時間、すなわち、演算量および演算頻度に応じた演算時間
・フィードバックを行わなかった場合の信頼性低下シーケンス、すなわち、フィードバック制御を使用しなかった場合に制御品質が標準品質まで低下するまでの時間
・制御対象の要素で保証すべき制御品質、すなわち、演算精度
・イテレーション回数および実行周期に対する計算所要時間、すなわち、演算量および演算頻度に応じた演算時間
・フィードバックを行わなかった場合の信頼性低下シーケンス、すなわち、フィードバック制御を使用しなかった場合に制御品質が標準品質まで低下するまでの時間
図7は、制御精度予測部65による推定誤差の演算例を、時間に対する誤差見積もり量のグラフで示している。誤差見積もり量は、前述した乖離見積もり量に相当する。
誤差見積もり量が増えることにより、精度が悪化する。一方、フィードバック制御部62によるフィードバックが発生することにより、精度が回復する。フィードバックのイテレーション回数および実行周期が変更されることで、実線で表された変化パターンを、破線で表された変化パターンに変えることができる。
以下、制御精度予測部65による見積もりの例を説明する。
時刻nにおける内部状態の予想誤差をEEi(n)とする。外界との相互作用においての誤差悪化見積もり係数をEEextとする。フィードバックが発生せず、フィードフォワード制御部61が単体で動作する際の誤差の単位時間経過に対する遷移は、
EEi(n+1)=EEi(n)*EEext
と表現される。
EEi(n+1)=EEi(n)*EEext
と表現される。
フィードバック発生時は、誤差見積もり量の減少が発生する。フィードバック制御部62による処理の寄与度をFEとする。入力値の誤差見積もり値をEEipとする。演算誤差をEEcとする。フィードバックが発生したときの誤差は、
EEi(n+1)=(1-FE)*EEi(n)*EEext+FE*EEc*EEip
と定式化される。
EEi(n+1)=(1-FE)*EEi(n)*EEext+FE*EEc*EEip
と定式化される。
図8を参照して、制御精度予測部65によるスケジュール探索の動作を説明する。
ステップS101において、制御精度予測部65は、スケジュールが要求処理時間treqを満たす周期yおよび演算回数xの条件を探索する。
評価演算1回あたりの計算見積もり時間をtev、フィードフォワード制御部61の周期あたりの動作時間をthとする。デッドラインまでの時間tresは、
と表せる。制御精度予測部65は、tres(y,x,d,c)<treqとなる周期yおよび演算回数xの組み合わせを算出する。
ステップS102において、制御精度予測部65は、最良精度のスケジュールを探索する。
制御精度予測部65は、EEdの結果が最小となるような周期yおよび演算回数xの組み合わせを探索する。
なお、探索については固定パターンを用いたほうが高速なケースが多い。このため、実際には、よく使用するデッドラインdおよび経過時間cの値と要求処理時間treqとに対して周期yおよび演算回数xを導出するマップを用意しておくとよい。
図9に、マップの構成例を示す。制御精度予測部65は、マップを探索し、該当する組み合わせがあれば、その組み合わせの値を使用する。制御精度予測部65は、マップの範囲外については、上述のアルゴリズムまたは他の簡易アルゴリズムを使用する。
図10を参照して、スケジューリング実行部66によるスケジュール決定の動作を説明する。
ステップS201において、スケジューリング実行部66は、通信処理部63から通知された要求処理時間を確保するための最良精度のスケジュールを探索する。
ステップS202において、スケジューリング実行部66は、要求処理時間を確保できるスケジュールが要求精度を満たすかどうかを判定する。
ステップS202で要求精度が満たされていれば、ステップS203において、スケジューリング実行部66は、要求処理時間を確保できるスケジュールを結果として出力する。
ステップS202で要求精度が満たされていなければ、ステップS204において、スケジューリング実行部66は、通信処理部63から通知された最低処理時間を確保するための最良精度のスケジュールを探索する。
ステップS205において、スケジューリング実行部66は、最低処理時間を確保できるスケジュールが要求精度を満たすかどうかを判定する。
ステップS205で要求精度が満たされていれば、ステップS206において、スケジューリング実行部66は、最低処理時間を確保できるスケジュールを結果として出力する。
ステップS205で要求精度が満たされていなければ、ステップS207において、スケジューリング実行部66は、通信処理部63へエラーを返却し、通信処理部63の処理をエラー返却のみに限定させる。これにより、要求精度を確保し、制御の安全性を担保することができる。なお、通信処理部63の処理を優先し、制御処理を異常系処理に移行させることで安全性を担保することもできる。
上記のように、スケジュール処理部54は、第1処理の実行にかかる時間を固定時間とみなす。スケジュール処理部54は、第3処理の実行にかかる時間を要求処理時間として第3処理部53から通知される。ステップS201において、スケジュール処理部54は、第2処理の実行にかかる時間がデジタル演算装置21の使用時間の上限値から固定時間と要求処理時間とを引いて得られる第1残り時間内に収まり、かつ、第1処理の演算精度が閾値を上回る、第2処理の演算量および演算頻度の組み合わせを探索する。これにより、ステップS202において、スケジュール処理部54は、第2処理の演算量および演算頻度を調整する。
スケジュール処理部54は、第3処理の一部の実行にかかる時間を最低処理時間として第3処理部から通知される。ステップS202において、第2処理の実行にかかる時間が第1残り時間内に収まり、かつ、第1処理の演算精度が閾値を上回る、第2処理の演算量および演算頻度の組み合わせがなければ、ステップS204の処理が行われる。ステップS204において、スケジュール処理部54は、第2処理の実行にかかる時間がデジタル演算装置21の使用時間の上限値から固定時間と最低処理時間とを引いて得られる第2残り時間内に収まり、かつ、第1処理の演算精度が閾値を上回る、第2処理の演算量および演算頻度の組み合わせを探索する。これにより、ステップS206において、スケジュール処理部54は、第2処理の演算量および演算頻度を調整する。
ステップS205において、第2処理の実行にかかる時間が第2残り時間内に収まり、かつ、第1処理の演算精度が閾値を上回る、第2処理の演算量および演算頻度の組み合わせがなければ、ステップS207の処理が行われる。ステップS207において、スケジュール処理部54は、第2処理の実行にかかる時間がデジタル演算装置21の使用時間の上限値から固定時間を引いて得られる第3残り時間内に収まり、かつ、第1処理の演算精度が閾値を上回る、第2処理の演算量および演算頻度の組み合わせを探索する。これにより、ステップS207において、スケジュール処理部54は、第2処理の演算量および演算頻度を調整する。
図11を参照して、制御装置13の機能要素間の協調動作例を説明する。
ステップ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の処理にプリエンプトされる。
ステップS303およびステップS304において、スケジューリング実行部66は、各時点でのスケジュールに基づき、フィードフォワード制御部61を駆動する。ステップS311において、スケジューリング実行部66は、その時点でのスケジュールに基づき、フィードバック制御部62を駆動する。ステップS305およびステップS306において、スケジューリング実行部66は、各時点でのスケジュールに基づき、フィードフォワード制御部61を駆動する。
図示していないが、デッドライン経過後、スケジューリング実行部66は、再度スケジュールを見直し、動作を継続する。
図12を参照して、適切なスケジュールが見つからず、エラー応答を実施する例を説明する。
ステップS351に代わるステップS451において、スケジューリング実行部66は、通信処理部63にエラー応答を発行する。ステップS361に代わるステップS461において、通信処理部63は、エラー処理を実行する。
***実施の形態の効果の説明***
上記の動作により、制御対象要素の制御については最低限度の制御品質を担保できる。また、通信処理等の低応答処理に必要な時間を極力確保することができる。時間が確保できない場合にはエラー処理を実施することができる。
上記の動作により、制御対象要素の制御については最低限度の制御品質を担保できる。また、通信処理等の低応答処理に必要な時間を極力確保することができる。時間が確保できない場合にはエラー処理を実施することができる。
本実施の形態では、第1処理として、制御のための出力値の演算が実行される。第2処理として、第1処理の演算精度を上げるための入力値の演算であり、演算量が多いほど第1処理の演算精度が上がる演算が実行される。デジタル演算装置21の使用時間と第1処理の演算精度との制約に合わせて、第2処理の演算量および演算頻度の少なくともいずれかが調整される。このため、制御のための処理の時間を、制御品質を適切に保つよう確保しつつ、他の必要な処理の時間を確保することができる。
本実施の形態では、デジタル演算装置21によって実現されるスイッチング制御システムが、制御対象要素の制御にあたり以下の要素を具備する。
・制御頻度および制御精度の少なくともいずれかを調節可能なフィードバック制御部62・フィードバック制御部62により制御されるが、一定範囲内では自立的に動作するフィードフォワード制御部61
・演算量に基づき制約を実現可能なスケジュールとフィードバック制御部62の演算精度との組み合わせを探索する制御精度予測部65
・制御精度予測部65の探索結果に基づきスケジューリングおよび演算精度指定を実施するスケジューリング実行部66
・制御頻度および制御精度の少なくともいずれかを調節可能なフィードバック制御部62・フィードバック制御部62により制御されるが、一定範囲内では自立的に動作するフィードフォワード制御部61
・演算量に基づき制約を実現可能なスケジュールとフィードバック制御部62の演算精度との組み合わせを探索する制御精度予測部65
・制御精度予測部65の探索結果に基づきスケジューリングおよび演算精度指定を実施するスケジューリング実行部66
本実施の形態によれば、デジタル演算装置21によって実現されるスイッチング制御システムにおいて、制御処理のために使用する時間を、制御品質を適切に保つよう確保しつつ、必要な他の処理の時間を確保することができる。
本実施の形態では、スケジュール処理部54に制御精度および処理時間に基づいた計画を演算する処理を設け、制御精度と制御以外の処理のための時間とのバランスを取ったスケジュールを決定することができる。
本実施の形態では、スイッチング制御システムでスケジューリングおよび演算精度指定の探索にテーブルを使用することで、効率を高めることができる。
本実施の形態では、スイッチング制御システムでスケジューリング不可の場合に制御以外の処理としてエラー処理を実行することで負荷を軽減し、制御精度を担保することができる。
***他の構成***
本実施の形態では、第1処理部51、第2処理部52、第3処理部53およびスケジュール処理部54の機能がソフトウェアにより実現されるが、変形例として、第1処理部51、第2処理部52、第3処理部53およびスケジュール処理部54の機能がソフトウェアとハードウェアとの組み合わせにより実現されてもよい。すなわち、第1処理部51、第2処理部52、第3処理部53およびスケジュール処理部54の機能の一部が専用の電子回路により実現され、残りがソフトウェアにより実現されてもよい。
本実施の形態では、第1処理部51、第2処理部52、第3処理部53およびスケジュール処理部54の機能がソフトウェアにより実現されるが、変形例として、第1処理部51、第2処理部52、第3処理部53およびスケジュール処理部54の機能がソフトウェアとハードウェアとの組み合わせにより実現されてもよい。すなわち、第1処理部51、第2処理部52、第3処理部53およびスケジュール処理部54の機能の一部が専用の電子回路により実現され、残りがソフトウェアにより実現されてもよい。
専用の電子回路は、例えば、単一回路、複合回路、プログラム化したプロセッサ、並列プログラム化したプロセッサ、ロジックIC、GA、FPGAまたはASICである。「GA」は、Gate Arrayの略語である。「FPGA」は、Field-Programmable Gate Arrayの略語である。「ASIC」は、Application Specific Integrated Circuitの略語である。
別の変形例として、第1処理部51、第2処理部52、第3処理部53およびスケジュール処理部54の機能がハードウェアにより実現されてもよい。すなわち、デジタル演算装置21は、本実施の形態ではプロセッサであるが、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 動作モード判断。
Claims (10)
- 第1処理として、制御のための出力値の演算をデジタル演算装置で実行する第1処理部と、
第2処理として、前記第1処理の演算精度を上げるために前記第1処理部に入力される入力値の演算であり、演算量が多いほど前記第1処理の演算精度が上がる演算を前記デジタル演算装置で実行する第2処理部と、
前記デジタル演算装置の使用時間と前記第1処理の演算精度との制約に合わせて、前記第2処理部に対し、前記第2処理の演算量および演算頻度の少なくともいずれかを調整するスケジュール処理部と
を備える制御装置。 - 第3処理として、前記第1処理および前記第2処理とは別の処理を前記デジタル演算装置で実行する第3処理部をさらに備え、
前記スケジュール処理部は、前記デジタル演算装置の使用時間と前記第1処理の演算精度との制約に合わせて、前記第3処理部に前記第3処理の少なくとも一部を実行させるかどうかを決定する請求項1に記載の制御装置。 - 前記スケジュール処理部は、前記デジタル演算装置の使用時間と前記第1処理の演算精度との制約に合わせて、前記第3処理部に前記第3処理を実行させるか前記第3処理の一部を実行させるか前記第3処理を実行させないかを決定する請求項2に記載の制御装置。
- 前記スケジュール処理部は、前記第1処理の実行にかかる時間を固定時間とみなし、前記第3処理の実行にかかる時間を要求処理時間として前記第3処理部から通知され、前記第2処理の実行にかかる時間が前記デジタル演算装置の使用時間の上限値から前記固定時間と前記要求処理時間とを引いて得られる第1残り時間内に収まり、かつ、前記第1処理の演算精度が閾値を上回る、前記第2処理の演算量および演算頻度の組み合わせを探索することで、前記第2処理の演算量および演算頻度を調整する請求項2または3に記載の制御装置。
- 前記スケジュール処理部は、前記第3処理の一部の実行にかかる時間を最低処理時間として前記第3処理部から通知され、前記第2処理の実行にかかる時間が前記第1残り時間内に収まり、かつ、前記第1処理の演算精度が前記閾値を上回る、前記第2処理の演算量および演算頻度の組み合わせがなければ、前記第2処理の実行にかかる時間が前記デジタル演算装置の使用時間の上限値から前記固定時間と前記最低処理時間とを引いて得られる第2残り時間内に収まり、かつ、前記第1処理の演算精度が前記閾値を上回る、前記第2処理の演算量および演算頻度の組み合わせを探索することで、前記第2処理の演算量および演算頻度を調整する請求項4に記載の制御装置。
- 前記スケジュール処理部は、前記第2処理の実行にかかる時間が前記第2残り時間内に収まり、かつ、前記第1処理の演算精度が前記閾値を上回る、前記第2処理の演算量および演算頻度の組み合わせがなければ、前記第2処理の実行にかかる時間が前記デジタル演算装置の使用時間の上限値から前記固定時間を引いて得られる第3残り時間内に収まり、かつ、前記第1処理の演算精度が前記閾値を上回る、前記第2処理の演算量および演算頻度の組み合わせを探索することで、前記第2処理の演算量および演算頻度を調整する請求項5に記載の制御装置。
- 前記第1処理は、フィードフォワード制御の処理であり、
前記第2処理は、フィードバック制御の処理である請求項1から6のいずれか1項に記載の制御装置。 - 前記第2処理は、モデル予測制御を用いる処理である請求項1から7のいずれか1項に記載の制御装置。
- 請求項1から8のいずれか1項に記載の制御装置と、
前記制御装置により制御される電動機と
を備える機器。 - デジタル演算装置を備えるコンピュータに、
制御のための出力値の演算である第1処理と、
前記第1処理の演算精度を上げるための入力値の演算であり、演算量が多いほど前記第1処理の演算精度が上がる演算である第2処理と、
前記デジタル演算装置の使用時間と前記第1処理の演算精度との制約に合わせて、前記第2処理の演算量および演算頻度の少なくともいずれかを調整するスケジューリングと
を実行させる制御プログラム。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2017545758A JP6239210B1 (ja) | 2017-04-26 | 2017-04-26 | 制御装置、機器および制御プログラム |
PCT/JP2017/016595 WO2018198237A1 (ja) | 2017-04-26 | 2017-04-26 | 制御装置、機器および制御プログラム |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/JP2017/016595 WO2018198237A1 (ja) | 2017-04-26 | 2017-04-26 | 制御装置、機器および制御プログラム |
Publications (1)
Publication Number | Publication Date |
---|---|
WO2018198237A1 true WO2018198237A1 (ja) | 2018-11-01 |
Family
ID=60477127
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/JP2017/016595 WO2018198237A1 (ja) | 2017-04-26 | 2017-04-26 | 制御装置、機器および制御プログラム |
Country Status (2)
Country | Link |
---|---|
JP (1) | JP6239210B1 (ja) |
WO (1) | WO2018198237A1 (ja) |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2002354857A (ja) * | 2001-05-22 | 2002-12-06 | Yaskawa Electric Corp | 電動機制御装置 |
JP2011100338A (ja) * | 2009-11-06 | 2011-05-19 | Hitachi Automotive Systems Ltd | 車載用マルチアプリ実行装置 |
-
2017
- 2017-04-26 JP JP2017545758A patent/JP6239210B1/ja active Active
- 2017-04-26 WO PCT/JP2017/016595 patent/WO2018198237A1/ja active Application Filing
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2002354857A (ja) * | 2001-05-22 | 2002-12-06 | Yaskawa Electric Corp | 電動機制御装置 |
JP2011100338A (ja) * | 2009-11-06 | 2011-05-19 | Hitachi Automotive Systems Ltd | 車載用マルチアプリ実行装置 |
Also Published As
Publication number | Publication date |
---|---|
JPWO2018198237A1 (ja) | 2019-06-27 |
JP6239210B1 (ja) | 2017-11-29 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN106873506B (zh) | 校正装置、校正装置的控制方法、信息处理程序及记录介质 | |
US20140277815A1 (en) | Processor control system | |
JP6232258B2 (ja) | 予測装置、予測方法、及びプログラム | |
US9671844B2 (en) | Method and apparatus for managing global chip power on a multicore system on chip | |
WO2015019541A1 (ja) | 電力系統安定化方法、電力系統安定化システムおよび電源装置 | |
US20150006940A1 (en) | Server power predicting apparatus and method using virtual machine | |
JP6476353B2 (ja) | 発電プラントのランプレート制御 | |
JP2010117760A (ja) | 仮想マシン移動管理サーバおよび仮想マシン移動方法 | |
US9035710B2 (en) | PWM signal generating circuit, printer, and PWM signal generating method | |
JP6239210B1 (ja) | 制御装置、機器および制御プログラム | |
US20240047966A1 (en) | Systems, devices and methods for power management and power estimation | |
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 | |
JP2010003213A (ja) | 制御装置、演算モード切換方法及びプログラム | |
CN112764509B (zh) | 计算核、计算核温度调整方法、设备、介质、芯片和系统 | |
US11966786B2 (en) | Proxy-based instruction throttling control | |
US10275015B2 (en) | Power source control method, power source control apparatus, and storage medium | |
KR101405594B1 (ko) | 전기자동차 충전부하 예측 방법 및 시스템 | |
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 | |
Wu et al. | Load-aware stochastic feedback control for DVFS with tight performance guarantee | |
US11467546B2 (en) | Semiconductor device and prediction method for resource usage in semiconductor device | |
US8966300B2 (en) | DFVS-enabled multiprocessor | |
RU2446461C2 (ru) | Цифровое прогнозирующее устройство | |
JP4952057B2 (ja) | クロック異常検出方法及びクロック異常検出プログラム |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
ENP | Entry into the national phase |
Ref document number: 2017545758 Country of ref document: JP Kind code of ref document: A |
|
121 | Ep: the epo has been informed by wipo that ep was designated in this application |
Ref document number: 17907792 Country of ref document: EP Kind code of ref document: A1 |
|
NENP | Non-entry into the national phase |
Ref country code: DE |
|
122 | Ep: pct application non-entry in european phase |
Ref document number: 17907792 Country of ref document: EP Kind code of ref document: A1 |