(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2024-11-21
(45)【発行日】2024-11-29
(54)【発明の名称】制御装置、DC/DC変換装置、および制御方法
(51)【国際特許分類】
H02M 3/155 20060101AFI20241122BHJP
【FI】
H02M3/155 H
(21)【出願番号】P 2024504084
(86)(22)【出願日】2022-03-02
(86)【国際出願番号】 JP2022008859
(87)【国際公開番号】W WO2023166606
(87)【国際公開日】2023-09-07
【審査請求日】2024-02-22
(73)【特許権者】
【識別番号】000006013
【氏名又は名称】三菱電機株式会社
(74)【代理人】
【識別番号】110001195
【氏名又は名称】弁理士法人深見特許事務所
(72)【発明者】
【氏名】長門 秀一
【審査官】清水 康
(56)【参考文献】
【文献】特許第7010415(JP,B1)
【文献】特開2000-324810(JP,A)
【文献】特開2007-068253(JP,A)
【文献】特表2016-516383(JP,A)
【文献】米国特許出願公開第2011/0127980(US,A1)
(58)【調査した分野】(Int.Cl.,DB名)
H02M 3/155
(57)【特許請求の範囲】
【請求項1】
DC/DCコンバータの制御装置であって、
前記DC/DCコンバータの出力電圧にローパスフィルタ処理を実行するローパスフィルタと、
前記ローパスフィルタ処理された前記出力電圧を指令値に追従させるように、前記DC/DCコンバータの動作を制御する動作制御部と、
前記DC/DCコンバータの出力電圧の周波数特性を模擬するように、前記DC/DCコンバータの第1伝達関数を生成する生成部と、
前記DC/DCコンバータの出力電圧の周波数特性と前記第1伝達関数の周波数特性との誤差が許容値以下となる第1周波数範囲に基づいて、前記ローパスフィルタのカットオフ周波数を設定する設定部とを備える、制御装置。
【請求項2】
前記生成部は、前記第1周波数範囲に含まれる第2周波数範囲の各周波数において、前記誤差が前記許容値以下となるように前記第1伝達関数を生成する、請求項1に記載の制御装置。
【請求項3】
前記設定部は、前記第1周波数範囲における最高周波数に前記カットオフ周波数を設定する、請求項1または請求項2に記載の制御装置。
【請求項4】
前記設定部は、前記第2周波数範囲における最高周波数に前記カットオフ周波数を設定する、請求項2に記載の制御装置。
【請求項5】
前記生成部は、前記第1伝達関数と、前記動作制御部に含まれるフィードバック制御器の第2伝達関数とを合成した合成伝達関数を生成し、
前記合成伝達関数の出力値と目標値との最大誤差と、前記フィードバック制御器の制御定数とを含む学習用データを取得するデータ取得部と、
前記学習用データを用いて、前記最大誤差から前記制御定数を推定するための学習済モデルを生成するモデル生成部とをさらに備える、請求項1~請求項4のいずれか1項に記載の制御装置。
【請求項6】
DC/DCコンバータと、
請求項1~請求項5のいずれか1項に記載の制御装置とを備える、DC/DC変換装置。
【請求項7】
DC/DCコンバータの制御方法であって、
前記DC/DCコンバータの出力電圧にローパスフィルタ処理を実行するステップと、
前記ローパスフィルタ処理された前記出力電圧を指令値に追従させるように、前記DC/DCコンバータの動作を制御するステップと、
前記DC/DCコンバータの出力電圧の周波数特性を模擬するように、前記DC/DCコンバータの伝達関数を生成するステップと、
前記DC/DCコンバータの出力電圧の周波数特性と前記伝達関数の周波数特性との誤差が許容値以下となる周波数範囲に基づいて、前記ローパスフィルタ処理を実行するローパスフィルタのカットオフ周波数を設定するステップとを含む、制御方法。
【発明の詳細な説明】
【技術分野】
【0001】
本開示は、DC/DCコンバータの制御装置、DC/DC変換装置、およびDC/DCコンバータの制御方法に関する。
【背景技術】
【0002】
特許4816754(特許文献1)に係るモータ制御装置は、制御対象の伝達関数の逆モデルに入力し、この逆モデルの出力を、第一のローパスフィルタによりフィルタ処理する。第一のローパスフィルタのカットオフ周波数は、逆モデルの出力に含まれる観測ノイズが減衰するようなカットオフ周波数に設定される。
【先行技術文献】
【特許文献】
【0003】
【発明の概要】
【発明が解決しようとする課題】
【0004】
ところで、DC/DCコンバータの周波数特性を模擬する伝達関数を算出して、外乱を考慮したフィードバック制御を評価する場合には、当該伝達関数の応答をDC/DCコンバータの応答と一致させる必要がある。
【0005】
本開示のある局面における目的は、DC/DCコンバータの応答と、当該DC/DCコンバータを模擬する伝達関数の応答とを一致させることが可能な技術を提供することである。
【課題を解決するための手段】
【0006】
ある実施の形態に従うDC/DCコンバータの制御装置は、DC/DCコンバータの出力電圧にローパスフィルタ処理を実行するローパスフィルタと、ローパスフィルタ処理された出力電圧を指令値に追従させるように、DC/DCコンバータの動作を制御する動作制御部と、DC/DCコンバータの出力電圧の周波数特性を模擬するように、DC/DCコンバータの第1伝達関数を生成する生成部と、DC/DCコンバータの出力電圧の周波数特性と第1伝達関数の周波数特性との誤差が許容値以下となる第1周波数範囲に基づいて、ローパスフィルタのカットオフ周波数を設定する設定部とを備える。
【0007】
他の実施の形態に従うDC/DC変換装置は、DC/DCコンバータと、上記制御装置とを備える。
【0008】
さらに他の実施の形態に従うDC/DCコンバータの制御方法は、DC/DCコンバータの出力電圧にローパスフィルタ処理を実行するステップと、ローパスフィルタ処理された出力電圧を指令値に追従させるように、DC/DCコンバータの動作を制御するステップと、DC/DCコンバータの出力電圧の周波数特性を模擬するように、DC/DCコンバータの伝達関数を生成するステップと、DC/DCコンバータの出力電圧の周波数特性と伝達関数の周波数特性との誤差が許容値以下となる周波数範囲に基づいて、ローパスフィルタ処理を実行するローパスフィルタのカットオフ周波数を設定するステップとを含む。
【発明の効果】
【0009】
本開示によれば、DC/DCコンバータの応答と、当該DC/DCコンバータを模擬する伝達関数の応答とを一致させることができる。
【図面の簡単な説明】
【0010】
【
図1】DC/DC変換装置の構成を示すブロック図である。
【
図2】制御回路の具体的な構成を説明するためのブロック図である。
【
図3】DC/DCコンバータの周波数特性の算出方式を説明するためのブロック図である。
【
図4】DC/DCコンバータの出力電圧の周波数特性を示す図である。
【
図5】伝達関数の生成方式を説明するためのフローチャートである。
【
図6】ローパスフィルタのカットオフ周波数の設定方式を説明するためのフローチャートである。
【
図7】
図6のフローチャートに従ってカットオフ周波数を算出した結果の一例を示す図である。
【
図8】電気回路の過渡応答と伝達関数の過渡応答との比較結果の第1の例を示す図である。
【
図9】電気回路の過渡応答と伝達関数の過渡応答との比較結果の第2の例を示す図である。
【
図10】電気回路の過渡応答と伝達関数の過渡応答との比較結果の第3の例を示す図である。
【
図11】電気回路の過渡応答と伝達関数の過渡応答との比較結果の第4の例を示す図である。
【
図12】電気回路の過渡応答と伝達関数の過渡応答との比較結果の第5の例を示す図である。
【
図13】電気回路の過渡応答と伝達関数の過渡応答との比較結果の第6の例を示す図である。
【
図14】本実施の形態の変形例に従うカットオフ周波数の設定方式を説明するための図である。
【
図15】DC/DC変換装置に関する学習部の構成図である。
【発明を実施するための形態】
【0011】
以下、図面を参照しつつ、本実施の形態について説明する。以下の説明では、同一の部品には同一の符号を付してある。それらの名称および機能も同じである。したがって、それらについての詳細な説明は繰り返さない。
【0012】
実施の形態1.
<DC/DC変換装置の構成>
図1は、DC/DC変換装置の構成を示すブロック図である。
図1を参照して、DC/DC変換装置1は、直流電源2と負荷3との間に設けられた電力変換装置である。具体的には、DC/DC変換装置1は、主回路としてのDC/DCコンバータ4と、DC/DCコンバータ4の制御装置8と、電圧検出器7とを含む。
【0013】
DC/DCコンバータ4の一端には直流電源2が接続され、他端には負荷3が接続される。電圧検出器7は、DC/DCコンバータ4の出力電圧を検出し、当該出力電圧の検出値を制御装置8および周波数分析装置12に出力する。DC/DCコンバータ4は、双方向のDC/DCコンバータであってもよい。
【0014】
制御装置8は、制御回路5と、信号生成回路6と、ローパスフィルタ10とを含む。制御回路5、信号生成回路6およびローパスフィルタ10の各々は、専用のハードウェアであってもよいし、制御装置8の内部メモリ(例えば、ROM(Read Only Memory)、RAM(Random Access Memory)、ハードディスク等)に格納されるプログラムを実行するCPU(Central Processing Unit)等のプロセッサで実現される構成であってもよい。例えば、制御回路5が専用のハードウェアである場合、制御回路5は、FPGA(Field Programmable Gate Array)、ASIC(Application Specific Integrated Circuit)、またはこれらを組み合わせたもの等で構成される。
【0015】
ローパスフィルタ10は、検出された出力電圧に対してローパスフィルタ処理を実行して、高周波成分を除去した出力電圧を制御回路5に出力する。
【0016】
制御回路5は、通常動作時に、DC/DCコンバータ4を動作させるための制御信号P1を生成する。具体的には、制御回路5は、ローパスフィルタ処理された出力電圧を用いて各種演算を実行することにより、DC/DCコンバータ4のスイッチング素子をON/OFFするための制御信号P1を生成する。制御回路5は、制御信号P1をDC/DCコンバータ4に出力する。
【0017】
信号生成回路6は、DC/DCコンバータ4の出力電圧の周波数特性(すなわち、周波数応答)を取得する際に、DC/DCコンバータ4を動作させるための制御信号P2を生成する。信号生成回路6は、周波数分析装置12から受け付けた各周波数の正弦波と、制御量とに基づく制御信号P2をDC/DCコンバータ4に出力する。
【0018】
周波数分析装置12は、各周波数の正弦波を信号生成回路6に対して出力する。周波数分析装置12は、信号生成回路6により生成された制御信号P2によって動作したDC/DCコンバータ4の出力電圧の入力を受け付ける。周波数分析装置12は、当該出力電圧の周波数特性を算出してデータベース19に格納する。
【0019】
図1の例では、周波数分析装置12およびデータベース19は、DC/DC変換装置1の外部装置である構成について説明した。しかし、周波数分析装置12およびデータベース19は、DC/DC変換装置1に含まれる構成であってもよい。また、周波数分析装置12は、周波数特性を測定する際にDC/DC変換装置1に接続される構成であってもよい。なお、DC/DCコンバータ4の周波数特性は、実機を用いて算出される構成であってもよいし、DC/DCコンバータ4の電気回路モデルを用いてシミュレーションにより算出される構成であってもよい。
【0020】
<制御回路の構成>
図2は、制御回路の具体的な構成を説明するためのブロック図である。
図2を参照して、制御回路5は、動作制御部50と、伝達関数生成部31と、設定部33とを含む。なお、ローパスフィルタ10は、DC/DCコンバータ4の出力電圧にローパスフィルタ処理を実行する。
【0021】
動作制御部50は、ローパスフィルタ処理された出力電圧を指令値に追従させるように、DC/DCコンバータ4の動作を制御する。具体的には、動作制御部50は、減算部13と、フィードバック制御量算出部14と、リミッタ処理部15と、制御信号生成部16とを含む。
【0022】
減算部13は、上位装置(不図示)から送信された指令値Vsから、ローパスフィルタ処理された出力電圧V*を減算した偏差ΔV(=Vs-V*)を算出する。
【0023】
フィードバック制御量算出部14は、フィードバック制御器(例えば、P制御器、PI制御器、PD制御器、PID制御器)により構成される。フィードバック制御量算出部14は、偏差ΔVを用いて、フィードバック制御(例えば、P制御、PI制御、PD制御、PID制御等)を実行することにより制御量を算出する。典型的には、フィードバック制御量算出部14は、偏差ΔVを0にするためのフィードバック制御により、制御量Xを生成する。
【0024】
リミッタ処理部15は、制御量Xをリミット範囲内(すなわち、下限値:Xd、上限値:Xu)に制限する。具体的には、リミッタ処理部15は、制御量Xが上限値Xuを上回った場合には上限値Xuに設定した制御量Xを出力し、制御量Xが下限値Xdを下回った場合には下限値Xdに設定した制御量Xを出力し、制御量Xが下限値Xd以上かつ上限値Xu以下の場合には、当該制御量Xを出力する。例えば、上限値Xuは“1”、下限値Xdは“0”である。
【0025】
制御信号生成部16は、制御量Xとキャリア信号とを比較し、この比較結果に基づいて、PWM信号としての制御信号P1を生成する。例えば、キャリア信号として三角波が用いられる。制御信号生成部16は、制御信号P1をDC/DCコンバータ4に送信する。DC/DCコンバータ4は、制御信号P1に従って、スイッチング素子をON/OFFすることにより、直流電源2から負荷3に電力を供給する。
【0026】
伝達関数生成部31は、データベース19に格納された、DC/DCコンバータ4の出力電圧の周波数特性を模擬するように、DC/DCコンバータ4の伝達関数を生成する。伝達関数の生成方式の詳細については後述する。
【0027】
設定部33は、DC/DCコンバータ4の出力電圧の周波数特性と、生成された伝達関数の周波数特性とに基づいて、ローパスフィルタ10のカットオフ周波数Fcを設定する。カットオフ周波数Fcは、ローパスフィルタ10に出力される。カットオフ周波数Fcの設定方式の詳細については後述する。
【0028】
<DC/DCコンバータの周波数特性>
図3は、DC/DCコンバータの周波数特性の算出方式を説明するためのブロック図である。
図3を参照して、制御装置8の信号生成回路6は、加算部25と、制御信号生成部26とを含む。
【0029】
周波数分析装置12は、周波数設定部20と、正弦波生成部21と、周波数特性算出部22とを含む。これらの各機能は、処理回路により実現される。処理回路は、専用のハードウェアであってもよいし、周波数分析装置12の内部メモリに格納されるプログラムを実行するプロセッサであってもよい。処理回路が専用のハードウェアである場合、処理回路は、例えば、FPGA、ASIC、またはこれらを組み合わせたもの等で構成される。
【0030】
周波数設定部20は、測定対象の周波数範囲(すなわち、周波数応答区間)の最低周波数および最高周波数と、周波数範囲の分割数とに基づいて、周波数f(例えば、周波数範囲を均等分割した周波数)を算出する。周波数設定部20は、算出された周波数fを低周波側から順番に正弦波生成部21および周波数特性算出部22に送信する。周波数設定部20は、例えば、周波数特性算出部22により前回の周波数fに対するゲインおよび位相が算出されたタイミングで今回の周波数fを送信してもよいし、事前に設定された一定時間ごとのタイミングで周波数fを送信してもよい。
【0031】
正弦波生成部21は、周波数特性を測定する対象の周波数fを受け付けて、“Bsin(2πft)”で表わされる正弦波を信号生成回路6に出力する。“B”は正弦波の振幅を示し、“t”は時間を示している。振幅Bは、例えば、信号生成回路6に入力される制御量Aの1/10程度に設定される。
【0032】
信号生成回路6の加算部25は、制御量Aと、正弦波生成部21により生成された正弦波とを加算した値を制御信号生成部26に出力する。制御量Aは、リミッタ処理部15の上限値Xuから下限値Xdまでの範囲に含まれる値である。例えば、DC/DCコンバータ4が降圧チョッパである場合には、制御量Aはデューティー比を示す。この場合、制御量Aは、上限値“1”から下限値“0”の範囲を取り得る。DC/DCコンバータ4がDAB(Dual Active Bridge)コンバータである場合、制御量Aは位相シフトの割合を示す。この場合、制御量Aは、最小値“0”から最大値“1”の範囲を取り得る。
【0033】
制御信号生成部26は、加算部25から出力される加算値と、キャリア信号とを比較し、この比較結果に基づいて、PWM信号としての制御信号P2を生成する。例えば、キャリア信号として三角波が用いられる。制御信号生成部16は、制御信号P2をDC/DCコンバータ4に送信する。DC/DCコンバータ4は、制御信号P2に従って、スイッチング素子をON/OFFすることにより電圧を出力する。
【0034】
周波数分析装置12の周波数特性算出部22は、周波数fとDC/DCコンバータ4の出力電圧Vとを受け付ける。周波数特性算出部22は、出力電圧Vが定常状態(例えば、出力電圧Vの最大値が誤差1%以内の変動に収まった状態)になると、出力波形をFFT(Fast Fourier Transformation)解析することにより、受け付けた周波数fの成分に対応するゲインおよび位相を算出する。周波数特性算出部22は、周波数fに対応するゲインおよび位相をデータベース19に格納する。
【0035】
最低周波数から最高周波数までの周波数範囲の各周波数fについて、周波数分析装置12および信号生成回路6は、上述した処理を繰り返し実行する。これにより、各周波数fに対応するゲインおよび位相がデータベース19に格納され、
図4に示すようなDC/DCコンバータ4の出力電圧の周波数特性(すなわち、ゲイン特性および位相特性)を示すファイル(以下、「周波数特性ファイル」とも称する。)が生成される。周波数特性ファイルは、番号iごとに、周波数f(i)と、ゲインK(i)と、位相θ(i)とを関連付けたファイルである。
【0036】
図4は、DC/DCコンバータの出力電圧の周波数特性を示す図である。
図4を参照して、グラフ61はゲイン特性を示しており、グラフ62は位相特性を示している。
図4に示す各グラフ61,62は、データベース19に格納された周波数特性ファイルに基づいて生成される。
【0037】
上記では、
図4に示すような周波数特性を得るために、制御装置8において、
図3の信号生成回路6を別途用いる構成について説明したが、当該構成に限られない。例えば、制御回路5の制御信号生成部16を利用して制御信号P2を生成する構成であってもよい。
【0038】
具体的には、
図2の動作制御部50の減算部13、フィードバック制御量算出部14およびリミッタ処理部15の各機能は無効化され、リミッタ処理部15によるリミット処理済の制御量Xは制御信号生成部16には入力されない。その代わりに、信号生成回路6の加算部25が動作制御部50に設けられる。加算部25は、加算値(すなわち、制御量Aと、正弦波生成部21により生成された正弦波との加算値)を制御信号生成部16に入力する。そして、制御信号生成部16は、当該加算値とキャリア信号とを比較し、この比較結果に基づいて、制御信号P2を生成する。
【0039】
<伝達関数の生成方式>
本実施の形態では、
図4に示すDC/DCコンバータ4の周波数特性の波形を模擬する式(1)に示す伝達関数G1(例えば、波形の最大誤差が1%以内に収まる)を考える。
【0040】
【0041】
ここで、式(1)の“a
n、b
m、…、a
0、b
0”は係数である。DC/DCコンバータ4の周波数特性の波形(例えば、
図4のグラフ61,62)と、伝達関数G1の周波数特性との間で、各周波数における最大誤差が1%以内となるように最大許容誤差を設定して最小二乗法を適用することによって、伝達関数G1の各係数が求められる。
【0042】
続いて、最小二乗法によって求めた係数を用いた伝達関数G1の分母G1bを示す下記の式(2)が0(すなわち、G1b=0)となる解(すなわち、伝達関数G1の極)を求める。
【0043】
【0044】
極の実部(すなわち、複素数の解の実部)の符号の少なくとも1つが負ではない場合、定常状態において伝達関数G1の値が発振等を起こすため、求められた係数を伝達関数G1の係数として用いることができない。したがって、極の実部の符号がすべて負となるような係数を求める必要がある。以下、
図5のフローチャートを用いて伝達関数G1の生成方式について具体的に説明する。
【0045】
図5は、伝達関数の生成方式を説明するためのフローチャートである。
図5の各処理は、制御回路5(例えば、伝達関数生成部31)によって実行される。
【0046】
制御回路5は、求めたい伝達関数G1の周波数範囲の周波数f(i)の開始番号isおよび終了番号ieを設定する(ステップS100)。
【0047】
制御回路5は、ゲインの許容誤差εK(%)と位相の許容誤差εθ(%)とを設定する(ステップS110)。許容誤差εKは、データベース19の周波数特性ファイルにおけるゲインと、伝達関数G1から求められるゲインとの誤差の許容値である。許容誤差εθは、データベース19の周波数特性ファイルにおける位相と、伝達関数G1から求められる位相との誤差の許容値である。
【0048】
制御回路5は、想定する伝達関数G1の分母G1bの式(2)の許容次数m0を設定する(ステップS120)。制御回路5は、伝達関数G1の分子G1a(すなわち、ansn+an-1sn-1+…+a0)の初期次数をn=0に設定する(ステップS130)。制御回路5は、伝達関数G1の分母G1bの初期次数をm=1に設定する(ステップS140)。制御回路5は、データベース19に格納された周波数特性ファイルから周波数f(i)、ゲインK(i)、位相θ(i)を読み込む(ステップS150)。
【0049】
制御回路5は、伝達関数G1の分子G1aの最大次数nが分母G1bの最大次数mよりも大きいか否か(すなわち、n>m)を判断する。n>mである場合(ステップS160においてYES)、制御回路5は、分子G1aの最大次数をn=0に設定し(ステップS170)、分母G1bの最大次数をインクリメント(すなわち、m=m+1に設定)する(ステップS190)。一方、n≦mである場合(ステップS160においてNO)、制御回路5は、分子G1aの最大次数nをインクリメント(すなわち、n=n+1に設定)する(ステップS180)。
【0050】
続いて、制御回路5は、最小二乗法近似法を用いて、開始番号isから終了番号ieまでの“ie―is+1”個のデータについて、番号i(is≦i≦ie)のゲインK(i)および位相θ(i)の近似値を求めるための式(1)の伝達関数G1の係数を算出する(ステップS200)。
【0051】
制御回路5は、各周波数f(i)について、周波数特性ファイルのゲインK(i)と、算出された係数を用いた伝達関数G1のゲインとの誤差を順次算出し、これらの各誤差のうちの最大誤差Kmaxを求める(ステップS210)。
【0052】
制御回路5は、各周波数f(i)について、周波数特性ファイルの位相θ(i)と、算出された係数を用いた伝達関数G1の位相との誤差を順次算出し、これらの各誤差のうちの最大誤差θmaxを求める(ステップS220)。
【0053】
制御回路5は、ゲインの最大誤差Kmaxが許容誤差εK以下であって(すなわち、Kmax≦εK)、かつ、位相の最大誤差θmaxが許容誤差εθ以下である(すなわち、θmax≦εθ)であるとの条件が成立するか否かを判断する(ステップS230)。当該条件が成立しない場合(ステップS230においてNO)、制御回路5はステップS160の処理に戻る。当該条件が成立する場合(ステップS230においてYES)、制御回路5は、伝達関数G1の極を算出する(ステップS240)。具体的には、制御回路5は、算出された係数を式(2)に代入して、分母G1b=0となる極を算出する。
【0054】
続いて、制御回路5は、極の実部の符号がすべて負であるか否かを判断する(ステップS250)。極の実部の符号がすべて負である場合(ステップS250においてYES)、制御回路5は、算出された係数を、伝達関数G1の係数として最終決定する(ステップS270)。これにより、DC/DCコンバータ4の出力電圧の周波数特性(すなわち、データベース19に格納された周波数特性ファイル)を模擬した伝達関数G1が求められる。
【0055】
そうではない場合(ステップS250においてNO)、制御回路5は、分母G1bの最大次数m+1が許容次数m0よりも大きい(すなわち、m+1>m0)か否かを判断する(ステップS260)。m+1>m0である場合(ステップS260においてYES)、制御回路5は処理を終了する。m+1≦m0である場合(ステップS260においてNO)、制御回路5はステップS160の処理に戻る。
【0056】
上記のように、制御回路5(例えば、伝達関数生成部31)は、開始番号isおよび終了番号ieまでの周波数範囲の各周波数f(i)において、ゲインの誤差が許容誤差εK以下、かつ位相の誤差が許容誤差εθ以下となるように伝達関数G1を生成する。
【0057】
なお、伝達関数G1の係数が決定されることなく(すなわち、ステップS270の処理を実行することなく)、上記フローチャートが終了した場合、制御回路5は、再度、ステップS100において、伝達関数G1の周波数範囲を変更して(すなわち、開始番号isおよび終了番号ieを再設定して)、ステップS110からの処理を実行する。
【0058】
一般的には、共振点の周波数が伝達関数G1の周波数範囲に含まれると、伝達関数G1を求めることが困難となる。そのため、共振が発生する周波数よりも低い周波数範囲を選択することが望ましい。
【0059】
<カットオフ周波数の設定方式>
図6は、ローパスフィルタのカットオフ周波数の設定方式を説明するためのフローチャートである。
図6の各処理は、制御回路5(例えば、設定部33)によって実行される。
【0060】
制御回路5は、
図5のフローチャートにおいて伝達関数G1を算出するためにステップS100で設定された終了番号ieと同じ終了番号ieを設定する(ステップS300)。制御回路5は、ゲインの許容誤差εKと位相の許容誤差εθとを設定する(ステップS310)。ステップS310の処理は、
図5のステップS110の処理と同様である。
【0061】
制御回路5は、伝達関数G1の係数を設定する(ステップS320)。具体的には、伝達関数G1の係数は、
図5のステップS270で算出された係数に設定される。制御回路5は、データベース19に格納された周波数特性ファイルから周波数f(i)、ゲインK(i)、位相θ(i)を読み込む(ステップS330)。
【0062】
制御回路5は、読み込んだ周波数特性ファイルのデータ(すなわち、周波数f(i)、ゲインK(i)、位相θ(i))の最終番号をie1に設定する(ステップS340)。制御回路5は、周波数応答特性ファイルから読み込んだデータの番号iを、i=ieに設定する(ステップS350)。
【0063】
制御回路5は、i<ie1が成立するか否かを判断する(ステップS360)。i≧ie1である場合には(ステップS360においてNO)、制御回路5は後述するステップS410の処理を実行する。i<ie1である場合には(ステップS360においてYES)、制御回路5は番号iをインクリメント(すなわち、i=i+1に設定)する(ステップS370)。
【0064】
制御回路5は、周波数f(i)について、周波数特性ファイルのゲインK(i)と、ステップS320で設定した係数を用いた伝達関数G1のゲインとの誤差Kdを算出する(ステップS380)。
【0065】
制御回路5は、周波数f(i)について、周波数特性ファイルの位相θ(i)と、ステップS320で設定した係数を用いた伝達関数G1の位相との誤差θdを算出する(ステップS390)。
【0066】
制御回路5は、ゲインの誤差Kdが許容誤差εK以下であって(すなわち、Kd≦εK)、かつ、位相の誤差θdが許容誤差εθ以下である(すなわち、θd≦εθ)であるとの条件が成立するか否かを判断する(ステップS400)。当該条件が成立する場合(ステップS400においてYES)、制御回路5はステップS360の処理に戻る。当該条件が成立しない場合(ステップS400においてNO)、制御回路5は、番号iの周波数f(i)をカットオフ周波数Fcとして設定して(ステップS410)、処理を終了する。
【0067】
図7は、
図6のフローチャートに従ってカットオフ周波数を算出した結果の一例を示す図である。
図7を参照して、データベース19に格納された周波数特性ファイルに基づくゲイン特性を示す
図4のグラフ61に、伝達関数G1のゲイン特性を示すグラフ71が重畳されている。また、周波数特性ファイルに基づく位相特性を示す
図4のグラフ62に、伝達関数G1の位相特性を示すグラフ72が重畳されている。
【0068】
周波数特性が許容誤差に収まる(すなわち、Kd≦εK、かつθd≦εθが成立する)周波数範囲R1の最高周波数は、
図6のステップS410における周波数f(i)であり、これがカットオフ周波数Fcとして設定される。このように、カットオフ周波数Fcは、DC/DCコンバータ4の出力電圧の周波数特性を伝達関数G1により適切に模擬できる最高の周波数に設定される。
【0069】
最低周波数f(is)から最高周波数f(ie)までの周波数範囲R2は、
図5のフローチャートで説明したように、伝達関数G1の係数を決定するために用いられた周波数範囲である。周波数範囲R1は、周波数範囲R2よりも広い(すなわち、周波数範囲R2は周波数範囲R1に含まれる)ことが理解される。
【0070】
<比較結果>
DC/DC変換装置1を模擬した電気回路を回路シミュレータを用いてシミュレーションして得られた過渡応答の結果と、
図5のフローチャートに従って算出された伝達関数G1を用いて得られた過渡応答の結果とを比較する。
【0071】
図8は、電気回路の過渡応答と伝達関数の過渡応答との比較結果の第1の例を示す図である。
図8中の領域81で確認される振動波形はステップ入力の応答波形を示しており、
図8中の領域82で確認される振動波形は、負荷をランプ状に増加して最大負荷を与え、その後、最大負荷から負荷をランプ状に低減してゼロにしたときの応答波形である。負荷の入力条件は、以下の
図9~
図11についても同様である。
【0072】
図8を参照して、丸点は、ローパスフィルタを用いない電気回路の過渡応答を示しており、実線は伝達関数の過渡応答を示している。
【0073】
具体的には、
図8の「電気回路の過渡応答」は、
図2の制御装置8においてローパスフィルタ10を通していない出力電圧が減算部13に入力され、フィードバック制御量算出部14を構成するPI制御器のゲインが0.01、時定数が0.01である場合に、制御信号P1に従って動作するDC/DCコンバータ4から出力される出力電圧の波形である。
【0074】
図8の「伝達関数の過渡応答」は、主回路(すなわち、DC/DCコンバータ4)の伝達関数(すなわち、
図5のフローチャートに従って算出された伝達関数G1)と、ゲインを“0.01”、時定数を“0.01”に設定したPI制御器の伝達関数G2とを合成した伝達関数Gx(=G1・G2/(1+G1・G2))を用いて、外乱(負荷変動)を考慮して過渡計算した波形である。
【0075】
図8の条件においては、電気回路の過渡応答および伝達関数の過渡応答の挙動は一致しすることが理解される。
【0076】
図9は、電気回路の過渡応答と伝達関数の過渡応答との比較結果の第2の例を示す図である。
図9を参照して、丸点は、ローパスフィルタを用いない電気回路の過渡応答を示しており、実線は伝達関数の過渡応答を示している。
【0077】
具体的には、
図9の「電気回路の過渡応答」は、
図2の制御装置8においてローパスフィルタ10を通していない出力電圧が減算部13に入力され、フィードバック制御量算出部14を構成するPI制御器のゲインが0.03、時定数が0.01である場合に、DC/DCコンバータ4から出力される出力電圧の波形である。
【0078】
図9の「伝達関数の過渡応答」は、主回路の伝達関数G1と、ゲインを“0.03”、時定数を“0.01”に設定したPI制御器の伝達関数G2とを合成した伝達関数Gxを用いて過渡計算した波形である。
【0079】
図9の条件においては、電気回路の波形のみが発振しており、電気回路の過渡応答は伝達関数の過渡応答と一致しないことが理解される。
【0080】
図10は、電気回路の過渡応答と伝達関数の過渡応答との比較結果の第3の例を示す図である。
図10を参照して、丸点は、ローパスフィルタを用いた電気回路の過渡応答を示しており、実線は伝達関数の過渡応答を示している。ローパスフィルタのカットオフ周波数は、
図6のフローチャートにより算出されたカットオフ周波数Fcである。
【0081】
図10の「電気回路の過渡応答」は、
図2の制御装置8においてローパスフィルタ10を通した出力電圧が減算部13に入力され、フィードバック制御量算出部14を構成するPI制御器のゲインが0.03、時定数が0.01である場合に、DC/DCコンバータ4から出力される出力電圧の波形である。
【0082】
図10の「伝達関数の過渡応答」は、主回路の伝達関数G1と、ゲインを“0.03”、時定数を“0.01”に設定したPI制御器の伝達関数G2とを合成した伝達関数Gxを用いて過渡計算した波形である。
【0083】
図10の条件においては、電気回路の過渡応答および伝達関数の過渡応答の挙動は一致することが理解される。
【0084】
図11は、電気回路の過渡応答と伝達関数の過渡応答との比較結果の第4の例を示す図である。
図11を参照して、実線は、ローパスフィルタを用いた電気回路の過渡応答を示しており、丸点は伝達関数の過渡応答を示している。
【0085】
具体的には、
図11の「電気回路の過渡応答」は、
図2の制御装置8においてローパスフィルタ10を通した出力電圧が減算部13に入力され、フィードバック制御量算出部14を構成するPI制御器のゲインが0.06、時定数が0.01である場合に、DC/DCコンバータ4から出力される出力電圧の波形である。
【0086】
図11の「伝達関数の過渡応答」は、主回路の伝達関数G1と、ゲインを“0.06”、時定数を“0.01”に設定したPI制御器の伝達関数G2とを合成した伝達関数Gxを用いて過渡計算した波形である。
【0087】
図11の条件においては、電気回路の過渡応答および伝達関数の過渡応答はいずれも発振しており、これらの挙動は一致することが理解される。
【0088】
上記より、ローパスフィルタを用いない場合、
図9の比較結果によると、電気回路の過渡応答は発振しているが、伝達関数の過渡応答は発振しておらず両者の挙動が一致していない。一方、ローパスフィルタを用いる場合、
図10の比較結果によると、電気回路の過渡応答および伝達関数の過渡応答は発振しておらず挙動が一致し、
図11の比較結果によると、電気回路の過渡応答および伝達関数の過渡応答はともに発振しており挙動が一致する。
【0089】
このことから、ローパスフィルタを用いない場合には、伝達関数を利用して求めたフィードバック制御定数を電気回路に適用しても、当該電気回路の過渡応答で発振が発生してしまう可能性が高い。一方、ローパスフィルタを用いる場合には、伝達関数を利用して求めたフィードバック制御定数を電気回路に適用すれば、電気回路の過渡応答および伝達関数の過渡応答の挙動が一致すると推測される。
【0090】
図12は、電気回路の過渡応答と伝達関数の過渡応答との比較結果の第5の例を示す図である。
図12に示す過渡応答は
図10に示す過渡応答と実質的には同じであるが、
図12には過渡計算に用いられる時間刻み幅が記載されている。具体的には、
図12には、電気回路の過渡計算に用いられる時間刻み幅をΔtとし、伝達関数の過渡計算に用いられる時間刻み幅をΔtの1000倍とした場合の比較結果が示されている。ここで、Δt=1.0E-06であるとする。当該比較結果によると、電気回路の過渡応答および伝達関数の過渡応答の挙動は一致している。このことから、伝達関数の過渡計算では、電気回路の過渡計算よりも時間刻み幅を1000倍程度大きくできることが理解される。
【0091】
図13は、電気回路の過渡応答と伝達関数の過渡応答との比較結果の第6の例を示す図である。
図13を参照して、丸点は、ローパスフィルタを用いた電気回路の過渡応答を示しており、実線は伝達関数の過渡応答を示している。
図13には、伝達関数の過渡計算に用いられる時間刻み幅をΔt(ただし、
図12のΔtと同じ値である。)とし、電気回路の過渡計算に用いられる時間刻み幅をΔtの10倍(すなわち、Δt×10=1.0E-05)とした場合の比較結果が示されている。当該比較結果によると、電気回路の過渡応答は発振を起こすことが理解される。このことから、電気回路の過渡計算では、時間刻み幅をあまり大きくすることはできない(例えば、1.0E-06よりも大きくできない)ことが理解される。
【0092】
図13の結果より、電気回路の過渡応答が発振を起こさない時間刻み幅の限界値は“1.0E-06”程度であると推察される。そして、この時間刻み幅を基準とした場合、
図12の結果より、伝達関数の過渡計算では、電気回路の過渡計算よりも時間刻み幅を1000倍程度大きくできると推察される。
【0093】
以上より、
図1に示すローパスフィルタ10を用いるDC/DC変換装置1を模擬する伝達関数を利用することで、フィードバック制御の最適な制御定数を算出する際の時間を短縮することができる。
【0094】
<変形例>
上述した実施の形態では、
図7に示すように、
図6のフローチャートに従って求めた周波数範囲R1の最高周波数(すなわち、ステップS410における周波数f(i))をカットオフ周波数Fcとして設定した。本実施の形態の変形例では、カットオフ周波数Fcの設定方式の他の例について説明する。
【0095】
図14は、本実施の形態の変形例に従うカットオフ周波数の設定方式を説明するための図である。
【0096】
本実施の形態の変形例では、
図5のフローチャートにおいて伝達関数G1を算出する際に用いられた周波数範囲R2の最高周波数をカットオフ周波数Fcに設定する。これにより、
図6のフローチャートを実行する必要がない。
【0097】
一方、このような変形例に従うカットオフ周波数Fcの設定方式Z2によると、
図6に従うカットオフ周波数Fcの設定方式Z1よりもカットオフ周波数Fcが小さくなる。そのため、できるだけ高い周波数において、電気回路の過渡応答を伝達関数を用いて模擬したい場合には、
図6に従うカットオフ周波数Fcの設定方式Z1を選択すればよい。各種条件に応じて、設定者がいずれか設定方式を任意に選択すればよい。
【0098】
設定方式Z1と設定方式Z2とでは、制御定数の値によって起こる発振条件が異なると考えられる。しかし、設定方式Z2でも、設定方式Z1と同様に、伝達関数で評価したフィードバック制御の制御定数を、電気回路モデルに利用することができる。
【0099】
上記より、制御回路5(例えば、設定部33)は、DC/DCコンバータ4の出力電圧の周波数特性と伝達関数G1の周波数特性との誤差が許容値以下となる周波数範囲R1に基づいて、ローパスフィルタ10のカットオフ周波数Fcを設定するように構成される。具体的には、ある局面では、制御回路5は、設定方式Z1を用いて、周波数範囲R1における最高周波数にカットオフ周波数Fcを設定する。他の局面では、制御回路5は、設定方式Z2を用いて、周波数範囲R1に含まれる周波数範囲R2における最高周波数にカットオフ周波数Fcを設定する。
【0100】
<利点>
実施の形態1によると、DC/DCコンバータ4の周波数特性を模擬する伝達関数を生成し、DC/DCコンバータ4の周波数特性と伝達関数の周波数特性との誤差が許容値以下となる周波数範囲に基づいてカットオフ周波数Fcが設定される。これにより、カットオフ周波数Fcが設定されたローパスフィルタを用いたフィードバック制御によるDC/DCコンバータ4の応答と、伝達関数の応答とを一致させることができる。したがって、伝達関数で評価したフィードバック制御の制御定数を、そのままDC/DCコンバータの電気回路モデルでの制御定数として利用できる。
【0101】
また、DC/DCコンバータ4のような半導体の回路素子を含む電気回路を過渡計算する場合、回路素子のスイッチング周波数を考慮して、過渡計算の時間刻みを設定する必要がある。一方、伝達関数の過渡計算では、半導体の回路素子のスイッチング周波数を考慮する必要がない。そのため、伝達関数の過渡計算は、電気回路網の過渡計算よりも、時間刻み幅を大きくすることができ、計算時間を短くすることができる。
【0102】
実施の形態2.
実施の形態2では、機械学習を利用してフィードバック制御器の制御定数を求める構成について説明する。
【0103】
図15は、DC/DC変換装置に関する学習部の構成図である。
図15を参照して、制御装置8に含まれる学習部250は、データ取得部251と、モデル生成部255と、学習結果記憶部260と、行動選択部262とを含む。学習部250は、専用のハードウェアであってもよいし、制御装置8の内部メモリに格納されるプログラムを実行するプロセッサで実現される構成であってもよい。
【0104】
学習部250の入力パラメータは状態変数である。本実施の形態では、状態変数は、
図1に示すDC/DCコンバータ4の出力値(すなわち、出力電圧)と目標値との最大誤差と、フィードバック制御量算出部14を構成するフィードバック制御器の制御定数(例えば、ゲインおよび時定数)とを含む。なお、目標値は、設計者によって任意に定められる。学習部250の出力パラメータは行動値である。行動値は、将来的に得られる報酬が最大になるような制御定数である。
【0105】
制御回路5は、学習部250から出力された制御定数がフィードバック制御器に設定された場合において、負荷変動時におけるDC/DCコンバータ4の出力値と目標値との最大誤差を学習部250に出力する。
【0106】
データ取得部251は、DC/DCコンバータ4の出力電圧と目標電圧との最大誤差と、行動選択部262により選択されたフィードバック制御器の制御定数とを含む学習用データを取得する。
【0107】
モデル生成部255は、最大誤差および制御定数を含む学習用データに基づいて、最大誤差を低減させる最適な制御定数を学習する。すなわち、モデル生成部255は、学習用データを用いて、最大誤差から最適な制御定数を推定するための学習済モデルを生成する。
【0108】
モデル生成部255が用いる学習アルゴリズムは教師あり学習、教師なし学習、強化学習等の公知のアルゴリズムを用いることができる。一例として、強化学習を適用した場合について説明する。強化学習では、ある環境内におけるエージェント(すなわち、行動主体)が、現在の状態(すなわち、環境のパラメータ)を観測し、取るべき行動を決定する。エージェントの行動により環境が動的に変化し、エージェントには環境の変化に応じて報酬が与えられる。エージェントはこれを繰り返し、一連の行動を通じて報酬が最も多く得られる行動方針を学習する。
【0109】
強化学習の代表的な手法として、Q学習(Q-learning)が知られている。Q学習では、時刻t+1における最もQ値の高い行動aの行動価値Qが、時刻tにおいて実行された行動aの行動価値Qよりも大きければ、行動価値Qを大きくし、逆の場合は、行動価値Qを小さくする。換言すれば、時刻tにおける行動aの行動価値Qを、時刻t+1における最良の行動価値に近づけるように、行動価値関数Q(s,a)を更新する。これにより、ある環境における最良の行動価値が、それ以前の環境における行動価値に順次伝播していくようになる。
【0110】
上記のように、強化学習によって学習済モデルを生成する場合、モデル生成部255は、報酬計算部253と、関数更新部254とを含む。
【0111】
報酬計算部253は、学習モデルの学習に用いられる報酬をどのように増減させるのかを規定する報酬基準と、制御定数と、最大誤差とに基づいて報酬rを計算する。報酬基準は、最大誤差が低減した場合に報酬を増大し、最大誤差が増大した場合に報酬を低減するように設定される。具体的には、報酬計算部253は、取得した最大誤差が示す状態のときに、取得した制御定数を設定した場合に、当該最大誤差が低減すれば報酬を増大し(例えば、「+1」の報酬を与える)、当該最大誤差が増大すれば報酬を低減する(例えば、「-1」の報酬を与える)。
【0112】
関数更新部254は、報酬計算部253によって計算される報酬に従って、学習部250の出力パラメータ(すなわち、制御定数)を決定するための関数を更新し、学習結果記憶部260に出力する。例えば、Q学習の場合、行動価値関数Q(st,at)が、制御定数を算出するための関数として用いられる。stは時刻tにおける環境の状態を表し、atは時刻tにおける行動を表す。
【0113】
行動選択部262は、学習結果記憶部260に記憶された学習部250の学習結果である行動価値関数Q(s,a)に基づいて制御定数を選択する。典型的には、行動選択部262は、初期状態においては、ランダムに制御定数を選択する。行動選択部262は、学習途中段階においては、公知の行動選択方式(例えば、ε-greedy法)を用いて、制御定数を選択する。行動選択部262により選択された制御定数が、学習部250の出力パラメータとなる。
【0114】
制御回路5は、学習部250から出力された制御定数(すなわち、行動選択部262により選択された制御定数)をフィードバック制御器に設定した場合における最大誤差を算出して、学習部250に出力する。データ取得部251は、当該最大誤差と、行動選択部262により選択された制御定数とを取得してモデル生成部255に出力する。
【0115】
学習部250は、以上のような学習を繰り返し実行する。関数更新部254は、行動価値テーブルの更新が行われなくなり行動価値関数Q(st,at)が収束した場合(例えば、最大誤差が0.1%以内となった場合等)、学習部250による学習は終了したと判定する。この場合、行動選択部262は、収束した行動価値関数Q(st,at)に基づいて報酬が最も多く得られる制御定数を選択する(すなわち、最適な制御定数が出力される)。また、学習結果記憶部260には、最大誤差から最適な制御定数を推定するための学習済モデルが格納される。
【0116】
上記のように、最適な制御定数を求める学習済モデルを生成するためには学習を繰り返し実行する必要があり多大な時間を要するため、できるだけ学習時間を短縮することが好ましい。
【0117】
実施の形態1で説明したように、伝達関数の過渡計算では、電気回路の過渡計算よりも時間刻み幅を大きくできる。そのため、伝達関数を用いて算出された最大誤差を学習部250に出力することによって学習時間を低減できると考えられる。
【0118】
この場合、状態変数は、主回路(すなわち、DC/DCコンバータ4)の伝達関数G1と、フィードバック制御量算出部14を構成するフィードバック制御器の伝達関数G2とを合成した伝達関数Gxの出力値と目標値との最大誤差と、フィードバック制御器の制御定数とを含む。なお、行動値としての学習部250の出力パラメータは制御定数である。
【0119】
制御回路5は、学習部250から出力された制御定数がフィードバック制御器に設定された場合において、負荷変動に対応する外乱付与時における伝達関数Gxの出力値と目標値との最大誤差を学習部250に出力する。学習部250のデータ取得部251は、伝達関数Gxの出力値と目標値との最大誤差と、フィードバック制御器の制御定数とを含む学習用データを取得する。以降の学習部250の処理の流れについては上記と同様である。
【0120】
伝達関数の過渡計算の時間刻み幅は、電気回路の過渡計算の時間刻み幅の1000倍程度であることから、学習時間が1/1000程度に短縮されると考えられる。例えば、電気回路を用いた場合の学習時間が1日(すなわち、1440分)である場合、伝達関数を用いた場合の学習時間は、1.4分となり大幅に短縮することができる。
【0121】
<利点>
実施の形態2に従うと、伝達関数を用いてフィードバック制御器の最適な制御定数を学習することによって、当該制御定数を算出するための学習済モデルを生成するための学習時間を大幅に短縮することができる。
【0122】
その他の実施の形態.
上述の実施の形態として例示した構成は、本開示の構成の一例であり、別の公知の技術と組み合わせることも可能であるし、本開示の要旨を逸脱しない範囲で、一部を省略する等、変更して構成することも可能である。また、上述した実施の形態において、他の実施の形態で説明した処理および構成を適宜採用して実施する場合であってもよい。
【0123】
今回開示された実施の形態はすべての点で例示であって制限的なものではないと考えられるべきである。本開示の範囲は、上記した説明ではなく、請求の範囲によって示され、請求の範囲と均等の意味および範囲内でのすべての変更が含まれることが意図される。
【符号の説明】
【0124】
1 DC/DC変換装置、2 直流電源、3 負荷、4 コンバータ、5 制御回路、6 信号生成回路、7 電圧検出器、8 制御装置、10 ローパスフィルタ、12 周波数分析装置、13 減算部、14 フィードバック制御量算出部、15 リミッタ処理部、16,26 制御信号生成部、19 データベース、20 周波数設定部、21 正弦波生成部、22 周波数特性算出部、25 加算部、31 伝達関数生成部、33 設定部、50 動作制御部、250 学習部、251 データ取得部、253 報酬計算部、254 関数更新部、255 モデル生成部、260 学習結果記憶部、262 行動選択部。