IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ 株式会社日本自動車部品総合研究所の特許一覧 ▶ 株式会社デンソーの特許一覧

(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2024159007
(43)【公開日】2024-11-08
(54)【発明の名称】燃料電池発電システム
(51)【国際特許分類】
   H01M 8/04 20160101AFI20241031BHJP
   H01M 8/04858 20160101ALI20241031BHJP
   H01M 8/04537 20160101ALI20241031BHJP
   H02M 7/48 20070101ALI20241031BHJP
   H01M 8/12 20160101ALN20241031BHJP
【FI】
H01M8/04 Z
H01M8/04858
H01M8/04537
H02M7/48 E
H01M8/12 102A
H01M8/12 101
【審査請求】未請求
【請求項の数】9
【出願形態】OL
(21)【出願番号】P 2023074716
(22)【出願日】2023-04-28
(71)【出願人】
【識別番号】000004695
【氏名又は名称】株式会社SOKEN
(71)【出願人】
【識別番号】000004260
【氏名又は名称】株式会社デンソー
(74)【代理人】
【識別番号】110001128
【氏名又は名称】弁理士法人ゆうあい特許事務所
(72)【発明者】
【氏名】浅倉 史生
(72)【発明者】
【氏名】黒木 丈二
(72)【発明者】
【氏名】田淵 貴一
【テーマコード(参考)】
5H126
5H127
5H770
【Fターム(参考)】
5H126BB06
5H127AA07
5H127AC05
5H127AC15
5H127BA05
5H127BA12
5H127BA34
5H127BA57
5H127BB02
5H127BB19
5H127DB63
5H127DC43
5H127DC44
5H127DC50
5H127DC72
5H127DC89
5H770AA15
5H770CA01
5H770CA04
5H770DA03
5H770DA11
5H770EA01
5H770HA02W
5H770HA03W
(57)【要約】
【課題】燃料電池の出力をパワーコンディショナが昇圧、増幅する燃料電池発電システムにおいて、パワーコンディショナへの入力電圧の電圧分解能の粗さに起因して、燃料電池の出力電流値と制御部が指示する電流値との乖離を抑制する。
【解決手段】システム制御部は、定常制御において、前の制御が終了した時点における電流センサ値Irと現在の電流センサ値Irとの差に基づいたPI制御演算B41により、燃料電池の電圧制御値Vcmd2を算出する。また、前の制御が終了した時点における電圧指令値Vxから電圧制御値Vcmd2を減算した値をパワーコンディショナの入力電圧とする。また、協調制御B42において、電流センサ値Irを指示電流値Ixsとして燃料供給装置に出力する。
【選択図】図17
【特許請求の範囲】
【請求項1】
燃料ガスを供給する燃料供給装置(40)と、
前記燃料供給装置から供給された前記燃料ガスを用いて発電して直流を出力する燃料電池(30)と、
前記燃料電池が出力する前記直流を昇圧して交流に変換するパワーコンディショナ(50)と、
前記燃料供給装置に前記燃料電池の出力電流の目標値である指示電流値(Ixs)を出力すると共に前記パワーコンディショナに電圧指令値(Vx)を出力するシステム制御部(60)と、を備え、
前記パワーコンディショナは、所定の電圧分解能で前記電圧指令値が設定可能であり、前記電圧指令値に相当する電圧で前記燃料電池から前記直流が出力されるよう昇圧比を調整し、
前記燃料供給装置は、前記指示電流値に基づいて前記燃料電池に供給する前記燃料ガスの量を調整すると共に、前記パワーコンディショナにおける前記電圧指令値の前記電圧分解能に起因して前記直流の電流値が取り得る刻み幅である電流幅(Zi)よりも細かい刻みで、前記指示電流値が設定可能であり、
前記システム制御部は、前記燃料電池が出力する前記直流の電流値である電流センサ値(Ir)を取得し、前記指示電流値が前記電流センサ値に近づくよう前記指示電流値を設定する協調制御を行う、燃料電池発電システム。
【請求項2】
前記システム制御部は、前記電流センサ値に近づける以外の目的で前記指示電流値を変化させた場合、その変化に起因する前記電流センサ値の変動が緩和されるよう、前記協調制御を行わずに待機した後、前記協調制御において、前記指示電流値が前記電流センサ値に近づくよう前記指示電流値を設定する、請求項1に記載の燃料電池発電システム。
【請求項3】
前記システム制御部は、前記燃料電池を定常発電させるための定常制御において、前記協調制御を行う請求項1に記載の燃料電池発電システム。
【請求項4】
前記システム制御部は、前記燃料電池の発電を開始した後、前記燃料電池が出力する前記直流の電圧を低下させながら前記直流の電流値を上昇させる区間B1制御を行い、その後、前記直流の電流値を上昇させながら、前記直流の電流値の増加に対する前記燃料電池が出力する前記直流の電圧増加の勾配を、前記区間B1制御よりも緩やかに抑える区間B2制御を行い、前記区間B2制御の後に、前記燃料電池を定常発電させるための定常制御を行い、
前記システム制御部は、前記区間B1制御または前記区間B2制御において、前記協調制御を行う、請求項1に記載の燃料電池発電システム。
【請求項5】
前記システム制御部は、前記区間B2制御においては、前記電圧指令値を、前記区間B1制御の終了時の値に維持する、請求項4に記載の燃料電池発電システム。
【請求項6】
前記システム制御部は、前記区間B2制御の後、前記燃料電池の温度を前記定常発電のための温度まで上昇させる区間B3制御を行い、前記区間B3制御の後に、前記燃料電池を前記定常発電させるための定常制御を行い、
前記システム制御部は、前記区間B3制御において、前記指示電流値を前記電流センサ値より大きい値に設定する、請求項5に記載の燃料電池発電システム。
【請求項7】
前記システム制御部は、前記区間B3制御における前記電圧指令値を、前記区間B2制御の終了時の前記電圧指令値の値(Vcmd1)、および、前記区間B3制御における前記指示電流値と前記電流センサ値との差分に基づく電圧制御値(Vcmd2)に基づいて、算出する、請求項6に記載の燃料電池発電システム。
【請求項8】
燃料ガスを供給する燃料供給装置(40)と、
前記燃料供給装置から供給された前記燃料ガスを用いて発電して直流を出力する燃料電池(30)と、
前記燃料電池が出力する前記直流を昇圧して交流に変換するパワーコンディショナ(50)と、
前記燃料供給装置に前記燃料電池の出力電流の目標値である指示電流値(Ixs)を出力すると共に前記パワーコンディショナに電圧指令値(Vx)を出力するシステム制御部(60)と、を備え、
前記パワーコンディショナは、所定の電圧分解能(Zv)で前記電圧指令値が離散的に設定可能であり、前記電圧指令値に相当する電圧で前記燃料電池から前記直流が出力されるよう昇圧比を調整し、
前記燃料供給装置は、所定の電流分解能(Zi2)で前記指示電流値が離散的に設定可能であり、前記指示電流値に基づいて前記燃料電池に供給する前記燃料ガスの量を調整し、
前記システム制御部は、前記電圧指令値として設定可能な離散的な電圧(CVj-1、CV、CVj+1、CVj+2)と前記指示電流値として設定可能な離散的な電流値(CIj-1、CI、CIj+1)との複数の組み合わせのうち、前記燃料電池の出力電流と出力電圧の対応関係であるIV特性(L1)に対して所定の近傍の許容範囲(IAj-1、IA、IAj+1)内にある1つの組み合わせを選択し、選択した組み合わせにおける電流値(CIj+1)を前記指示電流値として前記燃料供給装置に出力し、選択した組み合わせにおける電圧(CVj+2)を前記電圧指令値として前記パワーコンディショナに出力する、燃料電池発電システム。
【請求項9】
燃料ガスを供給する燃料供給装置(40)と、
前記燃料供給装置から供給された前記燃料ガスを用いて発電して直流を出力する燃料電池(30)と、
前記燃料電池が出力する前記直流を昇圧して出力するプリコンバータ(90)と、
前記プリコンバータの出力を昇圧して交流に変換するパワーコンディショナ(50)と、
前記燃料供給装置に前記燃料電池の出力電流の目標値である指示電流値(Ixs)を出力すると共に前記パワーコンディショナに電圧指令値(Vx)を出力し、更に前記プリコンバータを制御するシステム制御部(60)と、を備え、
前記パワーコンディショナは、所定の電圧分解能(Zv)で前記電圧指令値が離散的に設定可能であり、前記電圧指令値に相当する電圧が前記プリコンバータから出力されるよう昇圧比を調整し、
前記プリコンバータは、前記燃料電池が出力する前記直流の電圧を前記電圧分解能よりも細かい刻みで調整可能に制御され、
前記システム制御部は、前記燃料電池から前記指示電流値に追従する電流値で出力される前記直流を前記プリコンバータが前記電圧指令値に相当する電圧の直流に昇圧して前記パワーコンディショナに出力するよう、前記プリコンバータを制御する、燃料電池発電システム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、燃料電池発電システムに関するものである。
【背景技術】
【0002】
特許文献1には、燃料供給装置、燃料電池、パワーコンディショナ、制御部を備えた燃料電池発電システムが記載されている。燃料電池は燃料供給装置から供給された燃料ガスを用いて発電する。パワーコンディショナは、燃料電池が出力する直流を昇圧して交流に変換して負荷に供給する。制御部は、パワーコンディショナ等を制御する。
【先行技術文献】
【特許文献】
【0003】
【特許文献1】特開2014-71988号公報
【発明の概要】
【発明が解決しようとする課題】
【0004】
このような燃料電池発電システムにおいて、発明者は、制御部が燃料供給装置から燃料電池への燃料ガスの供給量を制御すると共にパワーコンディショナへの入力電圧を制御する場合について検討した。そして、その場合、パワーコンディショナにおいて当該入力電圧の電圧分解能の粗さに起因する問題があることを見出した。
【0005】
具体的には、パワーコンディショナのへの入力電圧(すなわち燃料電池の出力電圧)の電圧分解能が粗くなると、それに起因して燃料電池の出力電流の電流分解能も粗くなる。その結果、制御部が燃料電池の出力電流の目標値として電流指令値を燃料供給装置に出力し、燃料供給装置が当該電流指令値に応じた量の燃料を燃料電池に供給したとしても、燃料電池の実際の出力電流値と電流指令値の示す電流値とが乖離してしまう可能性がある。これは、燃料電池の損傷、劣化、効率低下の可能性を高める恐れがある。
【0006】
本発明は、燃料電池の出力をパワーコンディショナが昇圧、増幅する燃料電池発電システムにおいて、パワーコンディショナへの入力電圧の電圧分解能の粗さに起因して、燃料電池の出力電流値と制御部が指示する電流値との乖離を抑制することを目的とする。
【課題を解決するための手段】
【0007】
上記目的を達成するための請求項1に記載の発明は、
燃料ガスを供給する燃料供給装置(40)と、
前記燃料供給装置から供給された前記燃料ガスを用いて発電して直流を出力する燃料電池(30)と、
前記燃料電池が出力する前記直流を昇圧して交流に変換するパワーコンディショナ(50)と、
前記燃料供給装置に前記燃料電池の出力電流の目標値である指示電流値(Ixs)を出力すると共に前記パワーコンディショナに電圧指令値(Vx)を出力するシステム制御部(60)と、を備え、
前記パワーコンディショナは、所定の電圧分解能で前記電圧指令値が設定可能であり、前記電圧指令値に相当する電圧で前記燃料電池から前記直流が出力されるよう昇圧比を調整し、
前記燃料供給装置は、前記指示電流値に基づいて前記燃料電池に供給する前記燃料ガスの量を調整すると共に、前記パワーコンディショナにおける前記電圧指令値の前記電圧分解能に起因して前記直流の電流値が取り得る刻み幅である電流幅(Zi)よりも細かい刻みで、前記指示電流値が設定可能であり、
前記システム制御部は、前記燃料電池が出力する前記直流の電流値である電流センサ値(Ir)を取得し、前記指示電流値が前記電流センサ値に近づくよう前記指示電流値を設定する協調制御を行う、燃料電池発電システムである。
【0008】
このように、パワーコンディショナにおける電圧指令値の電圧分解能が比較的粗い状況において、システム制御部は、当該電圧分解能に起因して燃料電池から出力される電流値が取り得る刻み幅である電流幅よりも細かい刻みで、指示電流値を設定可能とする。そして、指示電流値が電流センサ値に近づくよう指示電流値を設定する。
【0009】
このように、指示電流値を細かく制御して電流センサ値に追従させることで、燃料電池の実際の出力電流値と、システム制御部が指示する電流値との乖離が抑制される。ひいては、燃料電池の損傷、劣化、効率低下の可能性が低減される。
【0010】
また、請求項8に記載の発明は、
燃料ガスを供給する燃料供給装置(40)と、
前記燃料供給装置から供給された前記燃料ガスを用いて発電して直流を出力する燃料電池(30)と、
前記燃料電池が出力する前記直流を昇圧して交流に変換するパワーコンディショナ(50)と、
前記燃料供給装置に前記燃料電池の出力電流の目標値である指示電流値(Ixs)を出力すると共に前記パワーコンディショナに電圧指令値(Vx)を出力するシステム制御部(60)と、を備え、
前記パワーコンディショナは、所定の電圧分解能(Zv)で前記電圧指令値が離散的に設定可能であり、前記電圧指令値に相当する電圧で前記燃料電池から前記直流が出力されるよう昇圧比を調整し、
前記燃料供給装置は、所定の電流分解能(Zi2)で前記指示電流値が離散的に設定可能であり、前記指示電流値に基づいて前記燃料電池に供給する前記燃料ガスの量を調整し、
前記システム制御部は、前記電圧指令値として設定可能な離散的な電圧(CVj-1、CV、CVj+1、CVj+2)と前記指示電流値として設定可能な離散的な電流値(CIj-1、CI、CIj+1)との複数の組み合わせのうち、前記燃料電池の出力電流と出力電圧の対応関係であるIV特性(L1)に対して所定の近傍の許容範囲(IAj-1、IA、IAj+1)内にある1つの組み合わせを選択し、選択した組み合わせにおける電流値(CIj+1)を前記指示電流値として前記燃料供給装置に出力し、選択した組み合わせにおける電圧(CVj+2)を前記電圧指令値として前記パワーコンディショナに出力する、燃料電池発電システムである。
【0011】
このように、パワーコンディショナにおける電圧指令値の電圧分解能に起因する燃料電池の出力電流の電流分解能が比較的粗く、かつ、燃料供給装置への指示電流値の電流分解能も同程度に粗い場合もある。この場合は、電圧指令値として設定可能な離散的な電圧と指示電流値として設定可能な離散的な電流値の複数の組み合わせのうち、IV特性に対して所定の近傍の許容範囲にある組み合わせを採用して実現することで、燃料電池の実際の出力電流値と指示電流値との乖離を抑制することができる。したがって、燃料電池の損傷、劣化、効率低下の可能性が低減される。
【0012】
また、請求項9に記載の発明は、
燃料ガスを供給する燃料供給装置(40)と、
前記燃料供給装置から供給された前記燃料ガスを用いて発電して直流を出力する燃料電池(30)と、
前記燃料電池が出力する前記直流を昇圧して出力するプリコンバータ(90)と、
前記プリコンバータの出力を昇圧して交流に変換するパワーコンディショナ(50)と、
前記燃料供給装置に前記燃料電池の出力電流の目標値である指示電流値(Ixs)を出力すると共に前記パワーコンディショナに電圧指令値(Vx)を出力し、更に前記プリコンバータを制御するシステム制御部(60)と、を備え、
前記パワーコンディショナは、所定の電圧分解能(Zv)で前記電圧指令値が離散的に設定可能であり、前記電圧指令値に相当する電圧が前記プリコンバータから出力されるよう昇圧比を調整し、
前記プリコンバータは、前記燃料電池が出力する前記直流の電圧を前記電圧分解能よりも細かい刻みで調整可能に制御され、
前記システム制御部は、前記燃料電池から前記指示電流値に追従する電流値で出力される前記直流を前記プリコンバータが前記電圧指令値に相当する電圧の直流に昇圧して前記パワーコンディショナに出力するよう、前記プリコンバータを制御する、燃料電池発電システムである。
【0013】
このようにすることで、燃料電池から出力される直流が指示電流値に追従するように設定された昇圧比でプリコンバータが作動する。これにより、燃料電池の実際の出力電流値と指示電流値の乖離を抑制することができる。したがって、燃料電池の損傷、劣化、効率低下の可能性が低減される。
【0014】
なお、各構成要素等に付された括弧付きの参照符号は、その構成要素等と後述する実施形態に記載の具体的な構成要素等との対応関係の一例を示すものである。
【図面の簡単な説明】
【0015】
図1】第1実施形態における燃料電池発電システムの構成図である。
図2】セルスタックの出力電圧電流範囲を示す図である。
図3】スタック電流の分解能とパワーコンディショナへの入力電圧の分解能を示す図である。
図4】電流誤差を示す図である。
図5】発電開始から定常発電までの発電開始工程におけるセルスタックの動作点の軌跡を示す図である。
図6】セルスタックの電気的な等価回路である。
図7】セルスタックの昇温スピードと動作点の軌跡との関係を示す図である。
図8】システム制御部が実行する処理のフローチャートである。
図9】区間B1制御の概要を示す図である。
図10】区間B1制御のフローチャートである。
図11】ソフトスタート制御のフローチャートである。
図12】電流、ガス量、CS温度の時間経過に伴う変化を示すグラフである。
図13】区間B2制御の概要を示す図である。
図14】区間B2制御のフローチャートである。
図15】区間B3制御の概要を示す図である。
図16】区間B3制御のフローチャートである。
図17】定常制御の概要を示す図である。
図18】定常制御のフローチャートである。
図19】協調制御のフローチャートである。
図20】電流センサ値、電流指令値、指示電流値の時間経過に伴う変化を示すグラフである。
図21】比較例における、協調制御電流センサ値、電流指令値、指示電流値の時間経過に伴う変化を示すグラフである。
図22】第1実施形態における、協調制御電流センサ値、電流指令値、指示電流値の時間経過に伴う変化を示すグラフである。
図23】区間B1制御、区間B2制御における電流センサ値、指示電流値、電流誤差の経時変化を示すグラフである。
図24】区間B2制御、区間B3制御における電流センサ値、指示電流値、電流誤差の経時変化を示すグラフである。
図25】区間B3制御、定常制御における電流センサ値、指示電流値、電流誤差の経時変化を示すグラフである。
図26】第2実施形態における発電開始から定常発電までの発電開始工程におけるセルスタックの動作点の軌跡を示す図である。
図27】第3実施形態における発電開始から定常発電までの発電開始工程におけるセルスタックの動作点の軌跡を示す図である。
図28】第4実施形態における協調制御のフローチャートである。
図29】協調制御電流センサ値、電流指令値、指示電流値の時間経過に伴う変化を示すグラフである。
図30】比較例、第1実施形態、第4実施形態における発電電力と最大電流誤差の例を示すグラフである。
図31】比較例、第1実施形態、第4実施形態における最大電流誤差の例を示すグラフである。
図32】第5実施形態における、セルスタックのIV特性と電圧指令値および指示電流値が取り得る値との関係を示すグラフである。
図33】定常制御のフローチャートである。
図34】第6実施形態における燃料電池発電システムの構成図である。
図35】協調制御のフローチャートである。
図36】電圧変換制御の概要を示す図である。
【発明を実施するための形態】
【0016】
(第1実施形態)
以下、第1実施形態について説明する。図1に示すように、本実施形態に係る発電システム100は、系統商用電源10と共に機器20に対して電力を供給する燃料電池発電システムである。機器20は、工場、家屋等に備え付けられて、系統商用電源10および発電システム100から電力供給を受けて各種作動を行う単一または複数の電気負荷である。
【0017】
発電システム100から出力される三相交流電流は、三相絶縁トランス80を介して機器20に供給される。発電システム100の発電電力は応答が遅いので、機器20のベース電力とされ、機器20の電力変動分は系統商用電源10より供給される。そのため、発電システム100の発電電力と系統商用電源10の供給電力との比率が数パーセント変化しても、電力供給不足が発生する可能性は低い。なお、他の例として、発電システム100から出力される交流電流は、単層であってもよい。
【0018】
発電システム100は、燃料電池30、燃料供給装置40、パワーコンディショナ50、システム制御部60、電流センサ71、電圧センサ72、温度センサ73を有している。図中ではパワーコンディショナ50はPCSと記載する。
【0019】
燃料電池30は、燃料処理系統および電池系統を含み、これらを断熱材で覆うことで高温に保持するホットモジュールである。燃料電池30は、セルスタック31、改質器32、バーナ33等を有している。
【0020】
セルスタック31は、積層された複数の平板型の燃料電池セルを有する。これら燃料電池セルは、固体酸化物型の燃料電池セルであり、SOFCとも呼ばれる。SOFCは、Solid Oxide Fuel Cellの略である。燃料電池セルの各々は、改質後ガス(本例では水素)よび酸化剤ガス(本例では空気中の酸素)の電気化学反応により直流電力を出力する。この出力に応じた電力が、燃料電池30の直流電力となる。
【0021】
改質器32は、燃料供給装置40から供給された燃料ガス(例えば都市ガス)を水蒸気を用いて改質することにより、改質後ガスを生成し、生成された改質後ガスをセルスタック31等に供給する。
【0022】
バーナ33は、セルスタック31から排出されるオフガスまたは燃料ガスを燃焼させることで、セルスタック31、改質器32等の燃料電池30内の構成要素を加熱して昇温させる。
【0023】
このように、燃料電池30は、燃料供給装置40から燃料ガスの供給を受け、燃料ガスを用いて発電を行い、発電によって生成された直流電流をパワーコンディショナ50に出力する。
【0024】
燃料供給装置40は、燃料ガスを改質器32に供給するポンプ等を有する。また、燃料供給装置40には、システム制御部60から指示電流値Ixsが入力される。指示電流値は、セルスタック31の出力電流の目標値に相当する。そして燃料供給装置40は、入力された指示電流値Ixsに基づいて、セルスタック31が当該指示電流値Ixsの直流を出力するよう、当該指示電流値Ixsに対応するガス量の燃料ガスを改質器32に供給する。つまり、指示電流値Ixsによって燃料供給装置40に対する燃料供給制御が行われる。
【0025】
パワーコンディショナ50は、系統商用電源10に系統連系させるために、燃料電池30が出力する直流電力を交流電力に変換する。パワーコンディショナ50は、太陽電池用のパワーコンディショナをそのまま燃料電池30用に転用したものであってもよいし、それ以外のものであってもよい。太陽電池用のパワーコンディショナは、太陽電池が発電して出力した直流を昇圧して交流に変換して負荷に供給するための装置である。
【0026】
本実施形態のパワーコンディショナ50は、燃料電池30が出力する直流電力を系統商用電源10と同じ三相交流電力に変換して三相絶縁トランス80に出力する。機器20には、パワーコンディショナ50および系統商用電源10のいずれかまたは両方から電力が供給される。
【0027】
パワーコンディショナ50は、コンバータ51、インバータ52、パワー制御部53を有している。コンバータ51は、燃料電池30が発電する直流が入力され、入力された直流の電圧を機器20に適合する所定の電圧に変換して昇圧する。コンバータ51は、燃料電池30の出力電圧(すなわち自らへの入力電圧)を制御することができる。コンバータ51は、例えば、電圧制御型の昇圧回路である。インバータ52は、コンバータ51で昇圧された直流電力を交流電力に変換する。
【0028】
パワー制御部53は、コンバータ51およびインバータ52の作動を制御する。具体的には、パワー制御部53には、システム制御部60から電圧指令値Vxが入力される。そしてパワー制御部53は、入力された電圧指令値Vxに基づき、セルスタック31からコンバータ51に電圧指令値Vxが示す電圧の直流が出力されるよう、コンバータ51の昇圧比等を制御する。このように、電圧指令値Vxは、セルスタック31が出力する電圧の目標値である。
【0029】
パワー制御部53は、例えば、この機能を実現するプログラムを記録する記憶媒体と、当該プログラムを読み出して実行する演算回路とを有するマイクロコンピュータで実現されていてもよい。あるいは、パワー制御部53は、この機能を実現するよう回路構成が組まれたハードウェア回路で実現されていてもよい。
【0030】
なお、パワー制御部53は、所定の電圧分解能で電圧指令値Vxが離散的に設定可能となっている。すなわち、電圧指令値Vxを所定の電圧幅Zvの刻みで離散的に受け付けるようになっている。
【0031】
具体的には、パワー制御部53は、入力された電圧指令値Vxを0、Zv、2×Zv、3×Zv、…という風に、整数×Zvの値のいずれかとしてのみ認識し、コンバータ51の制御に反映する。その意味で、パワー制御部53が受け付ける電圧指令値Vxの電圧分解能はZvとなる。Zvが大きいほど電圧分解能が粗く、小さいほど電圧分解能が細かい。
【0032】
電流センサ71は、セルスタック31からパワーコンディショナ50に出力される直流の電流値を検出して検出結果に応じた信号をシステム制御部60に入力する。電圧センサ72は、セルスタック31からパワーコンディショナ50に出力される直流の電圧値を検出して検出結果に応じた信号をシステム制御部60に入力する。温度センサ73は、セルスタック31の温度(以下、CS温度という)を検出し、検出結果に応じた信号をシステム制御部60に入力する。
【0033】
システム制御部60は、電流センサ71、電圧センサ72、温度センサ73からの入力に応じて、指示電流値Ixsおよび電圧指令値Vxを決定する。そしてシステム制御部60は、決定した指示電流値Ixsを燃料供給装置40に入力すると共に、決定した電圧指令値Vxをパワー制御部53に入力する。なお、電流センサ71からの入力については、当該入力からコンバータ51由来のスイッチングノイズをローパスフィルタで除去した値が、電流センサ値Irとして用いられる。また、電圧センサ72からの入力については、当該入力からコンバータ51由来のスイッチングノイズをローパスフィルタで除去した値が、電圧センサ値Vrとして用いられる。また、温度センサ73からの入力については、当該入力からコンバータ51由来のスイッチングノイズをローパスフィルタで除去した値が、温度センサ値として用いられる。
【0034】
システム制御部60は、例えば、この機能を実現するプログラムを記録する記憶媒体と、当該プログラムを読み出して実行する演算回路とを有するマイクロコンピュータで実現されていてもよい。あるいは、システム制御部60は、この機能を実現するよう回路構成が組まれたハードウェア回路で実現されていてもよい。
【0035】
ここで、パワーコンディショナ50をシステム制御部60から制御する場合の課題について説明する。図2はセルスタック31の出力電圧電流範囲の例を示す。横軸はセルスタック31の出力電流値を示し、縦軸はセルスタック31の出力電圧を示す。出力電圧電流範囲中の各点を、動作点という。
【0036】
図2に示すように、セルスタック31の出力電圧電流範囲は、最大の電圧V1かつ電流ゼロとなる発電開始の動作点S1、下限電圧V0となる動作点S2、Sx、および電力超過となる動作点Syを頂点とする四角形の範囲となる。この範囲は、CS温度が比較的低いときの範囲Q1、CS温度が範囲Q1よりも高い範囲Q2、および電力超過となる範囲Q3を含む。
【0037】
上述の通り、電圧指令値Vxが電圧幅Zvの刻みでしか認識されない。これに起因して、スタック電流すなわちセルスタック31から出力される電流値も、図3に例示するように、電圧幅Zvに対応した電流値の刻み幅Ziの刻みで離散的に変化する。すなわち、セルスタック31から出力される電流値は、所定の電流分解能で離散的に設定可能となる。
【0038】
具体的には、範囲Q1においては電圧がV1からV0まで変化でき、電流が0から最大電流のIMまで変化できるので、電流分解能に相当する電流幅ZiがIM×Zv/(V1-V0)となる。これに対し、範囲Q2においては、電圧がV1からV2まで変化でき、電流がゼロから概ねIMまで変化できるので、電流分解能に相当する電流幅ZiがIM×Zv/(V1-V2)となる。V1-V0よりもV1-V2の方が小さいので、範囲Q2の方が範囲Q1よりも電流分解能に相当する電流幅Ziが粗い傾向にある。特に、セルスタック31が定常発電を行う動作点S4におけるCS温度(すなわち、後述する第2目標CS温度)が維持される場合は、電流分解能が最も粗くなる。
【0039】
例えば、図4に示すように、範囲Q1における電流誤差は、例えば誤差として許容される限界に相当する基準値TH以下に収まるのに対し、範囲Q2における電流誤差は、基準値THを超えてしまう場合がある。ここで、電流誤差は、スタック電流値と指示電流値Ixsとの差の絶対値であるが、それに、電流センサ71の検出誤差およびシステム制御部60の検出回路の誤差を加算した値としてもよい。このような電流誤差が大きくなると、セルスタック31の損傷、劣化、効率低下の恐れがある。例えば、指示電流値Ixsがスタック電流値より大きい場合は、乖離が大きくなるほど発電効率が低下する。逆に指示電流値Ixsよりスタック電流値が大きい場合は、乖離が大きくなるほどセルスタック31の劣化が早い。したがって、電流誤差はなるべく小さくしたいという要請がある。
【0040】
なお、本実施形態において燃料供給装置40が受け付ける指示電流値Ixsの電流分解能は、Ziよりも十分細かい。
【0041】
以下、発電システム100の作動について説明する。図5に、発電開始から定常発電までの発電開始工程におけるセルスタック31の動作点の軌跡を示す。図5中の複数の破線は、CS温度が一定となる線を示している。
【0042】
まず、セルスタック31が常温からバーナ33によって温められて所定の目標CS温度まで昇温される。その後、動作点S1にて発電が開始される。SOFC等は高温にすると内部抵抗が低減し発電効率が向上するので、早期に定常発電するCS温度にすることが良い。まずバーナ33によって十分に昇温を行い、その後に発電開始する理由は、仮に順序を逆にすると、バーナ33により生じた熱が燃料ガス、改質後ガス、酸化剤ガスなどの配管等の周辺機器にも取られるため、セルスタック31の昇温効率が悪いからである。
【0043】
その後、セルスタック31は出力電流を徐々に増加させつつ出力電圧を低下させながら、CS温度を概ね一定に保ち、動作点S1から動作点S2までの実線で示す区間B1に沿って、動作点を変化させる。この区間B1におけるシステム制御部60の制御を、電流制御とも、区間B1制御ともいう。
【0044】
その後、セルスタック31は、電流制御の終了時点の動作点S2における出力電圧と同じ一定電圧を維持しながら出力電流を増加させ、動作点S2から動作点S3までの実線で示す区間B2に沿って、動作点を変化させる。この区間B2におけるシステム制御部60の制御を、定電圧制御とも、区間B2制御ともいう。
【0045】
その後、セルスタック31は、定電圧制御の終了時点の動作点S3における電流と同じ一定の出力電流で出力電圧を増加させながら動作点S3から動作点S4までの実線で示す区間B3に沿って、動作点を変化させる。これにより、セルスタック31の温度は定常発電のための温度まで上昇する。この区間B3におけるシステム制御部60の制御を、定電流制御とも、区間B3制御ともいう。
【0046】
その後、セルスタック31は、動作点S4およびその近傍において、定常発電を行う。定常発電を実現するためにシステム制御部60が行う制御を、定常制御という。
【0047】
セルスタック31を電気的な等価回路で示すと、図6のように、電源に直列に内部抵抗Rがある構成になる。そして、CS温度が上昇すると共に内部抵抗Rが低減する。
【0048】
区間B1において動作点S1の電圧V1から下限電圧付近の電圧Vjまで電圧を下げると、内部抵抗Rの両端に電位差がかかるため、電位差の2乗に比例して内部抵抗Rが発熱する。そして、内部抵抗の発熱はセルスタック31を直接昇温するため、バーナ33による昇温より昇温効率がよい。
【0049】
ここで、区間B1、B2、B3内のある時点におけるセルスタック31の出力電圧をVjとし、その時点における内部抵抗Rの抵抗値をRjとすると、
Rj=(V1-Vj)/Ij
という式が成立する。ここでIjは、その時点におけるセルスタック電流値である。したがって、その時点における内部抵抗Rの単位時間当たりの発熱量をAjとすると、
Aj=Rj×(Ij)=(V1-Vj)×Ij
となり、区間B1、B2、B3の全工程における内部抵抗Rの発熱量は、このAjを当該全工程について時間積分したものとなる。もし、燃料ガスの供給量が決まっているなら、全工程を通じた内部抵抗Rの発熱量およびセルスタック31の昇温スピードは、図7の斜線部の面積が広いほど大きくなる。
【0050】
なお、他の例として、動作点S1までCS温度が昇温するより先に、内部抵抗Rを発熱させてもよい。ただしその場合、区間B1において、内部抵抗Rの抵抗値が大きくなり、図7の区間B1において傾きが急になる。その場合、セルスタック31の出力電圧の変化が急峻になり、少しの電流変化で下限電圧以下になる可能性がある。下限電圧以下になるとセルスタック31が酸化する等の理由により劣化する恐れがある。このような他の例ではなく本例では、傾きが少し緩やかになるCS温度から発電を開始する。
【0051】
ここで、発電前のバーナ33による昇温、区間B1、B2、B3における、システム制御部60の制御内容について説明する。システム制御部60は、図8に示す処理を実行することで、当該制御を実現する。
【0052】
図8の処理においてシステム制御部60は、まずステップS105で、燃料供給装置40を制御してバーナ33に燃料供給を行うことで、バーナ33を燃焼させる。これにより、バーナ33の加熱によるセルスタック31の昇温が開始される。
【0053】
続いてステップS110では、CS温度が所定の第1目標CS温度に到達したか否かを、温度センサ73の出力信号から得られた温度センサ値に基づいて判定し、到達していない場合はステップS105に戻ってバーナ33によるセルスタック31の加熱を継続する。なお、ステップS105、S110のループが継続する間は、セルスタック31の発電は行われていない。
【0054】
システム制御部60は、S110でCS温度が所定の目標CS温度に到達したと判定した場合は、ステップS115に進む。ステップS115では、バーナ33の燃焼を停止させる。この時点で、セルスタック31は、動作点S1の状態にある。
【0055】
システム制御部60は続いてステップS120に進み、セルスタック31による発電を開始させると共に上述の区間B1を実現させるための電流制御すなわち区間B1制御を、1回の制御周期分だけ行う。続いてステップS125では、所定の電流制御終了条件が成立したか否かを判定する。この電流制御終了条件は、「セルスタック31の出力電流が所定の第1目標電流値まで増加したか、または、セルスタック31の出力電圧が所定の下限電圧にまで低下した」というものであり、電流センサ71および電圧センサ72の出力信号に基づいて判定される。
【0056】
システム制御部60は、この電流制御終了条件が成立していないと判定した場合はステップS120に戻って区間B1のための電流制御を継続する。ステップS120、S125のループが継続する間は、セルスタック31の内部抵抗Rの発熱によりセルスタック31が昇温し、区間B1に沿って動作点S1から動作点S2までセルスタック31の状態が変化する。
【0057】
システム制御部60は、S125で電流制御終了条件が成立したと判定した場合は、ステップS130に進む。ステップS130では、上述の区間B2を実現させるための定電圧制御すなわち区間B2制御を、1回の制御周期分だけ行う。続いてステップS135では、所定の定電圧制御終了条件が成立したか否かを判定する。この定電圧制御終了条件は、「セルスタック31の出力電流が所定の第2目標電流値に到達した」というものであり、電流センサ71の出力信号に基づいて判定される。第2目標電流は、定常発電する電流値に相当し、第1目標電流値よりも高い。
【0058】
システム制御部60は、この定電圧制御終了条件が成立していないと判定した場合はステップS130に戻って区間B2のための定電圧制御を継続する。ステップS130、S135のループが継続する間は、セルスタック31の内部抵抗Rの発熱によりセルスタック31が昇温し、区間B2に沿って動作点S2から動作点S3までセルスタック31の状態が変化する。
【0059】
システム制御部60は、S135で定電圧制御終了条件が成立したと判定した場合は、ステップS140に進む。ステップS140では、上述の区間B3を実現させるための定電流制御すなわち区間B3制御を、1回の制御周期分だけ行う。続いてステップS145では、所定の定電流制御終了条件が成立したか否かを判定する。この定電流制御終了条件は、「セルスタック31の出力電圧が所定の目標電圧に到達したか、またはCS温度が所定の第2目標CS温度に到達した」というものであり、電圧センサ72および温度センサ73の出力信号に基づいて判定される。なお、第2目標CS温度は、定常発電を開始するために必要なセルスタック31の温度である。
【0060】
システム制御部60は、この定電流制御終了条件が成立していないと判定した場合はステップS140に戻って区間B3のための定電流制御を継続する。ステップS140、S145のループが継続する間は、セルスタック31の内部抵抗Rの発熱によりセルスタック31が昇温し、区間B3に沿って動作点S3から動作点S4までセルスタック31の状態が変化する。
【0061】
システム制御部60は、S145で定電流制御終了条件が成立したと判定した場合は、ステップS150に進む。ステップS150では、セルスタック31を定常発電させるための定常制御を行う。続いてステップS155では、所定の停止条件が成立したか否かを判定する。この停止条件は、例えば、ユーザが不図示の停止スイッチを操作した等の条件である。
【0062】
システム制御部60は、この停止条件が成立していないと判定した場合はステップS150に戻って定常制御を継続する。ステップS150、S155のループが継続する間は、定常制御が実現し、セルスタック31からパワーコンディショナ50を介して機器20に電力供給が安定的に行われる。
【0063】
システム制御部60は、S155で定電流制御終了条件が成立したと判定した場合は、燃料供給装置40から燃料電池30への燃料ガスの供給を停止させ、セルスタック31の発電を停止させ、図8の処理を終了する。
【0064】
ここで、ステップS120における区間B1制御の詳細について説明する。システム制御部60は、ステップS120では、概念的には、図9に示すような制御を行う。すなわち、ソフトスタート制御B11では、暫定電流指令値Icmd_preを、ゼロから所定の電流指令値Icmdまで、時間経過と共に幅Icmd_stepで段階的に変化するように、算出する。
【0065】
そしてシステム制御部60は、算出した暫定電流指令値Icmd_preと電流センサ値Irとの差に基づいたPI制御演算B12を行う。このPI制御演算B12により、電流センサ値Irが暫定電流指令値Icmd_preに追従して変化するよう、セルスタック31の出力電圧の変化量に相当する電圧制御値Vcmd2が算出される。ここで、電流センサ値Irとは、電流センサ71からの信号によって特定されたセルスタック31の出力電流をいう。
【0066】
またシステム制御部60は、特性利用処理B13で、セルスタック31の出力電流値と出力電圧との対応関係(すなわちIV特性)があらかじめ規定されたIV特性テーブルに対して、電流センサ値Irを適用する。そして、それにより電流センサ値Irに対応する電圧Vcmd1を特定する。この電圧は、現在のセルスタック31の出力電圧に相当する。IV特性テーブルは、システム制御部60の不揮発性記憶媒体にあらかじめ記録されている。
【0067】
またシステム制御部60は、電圧Vcmd1から電圧制御値Vcmd2を減算した値を、パワー制御部53に出力する電圧指令値Vxとして決定する。またシステム制御部60は、燃料供給装置40に出力する指示電流値Ixsの値に電流センサ値Irを代入して指示電流値Ixsを燃料供給装置40に出力する。
【0068】
システム制御部60は、このような区間B1制御を実現するため、図10に示す処理を実行する。図10の処理は、1回のステップS120の処理につき1回(すなわち、1制御周期分)実行される。図10の処理においてシステム制御部60は、まずステップS205で、電流指令値Icmd、電流センサ値Irを取得する。電流指令値Icmdは、セルスタック31の能力を増減させるために、種々の要因(例えば、機器20の動作状態、燃料供給装置40の動作状態等)に基づいて増加、減少する場合がある。
【0069】
続いてステップS210では、電流指令値Icmdが更新されたか否かを判定する。すなわち、今回の制御周期におけるステップS205で取得した電流指令値Icmdが、その1回前の制御周期におけるステップS205で取得した電流指令値Icmdから、変化したか否かを判定する。
【0070】
更新されたと判定した場合はステップS215に進み、更新されていないと判定された場合はステップS215をバイパスしてステップS220に進む。なお、今回が区間B1制御の最初の制御周期の場合も、ステップS215に進む。
【0071】
ステップS215では、電流指令値Icmdの値を指示電流値Ixsに代入すると共に、PI制御演算B12で用いるP項計数kpおよびI項計数kiを初期値に初期化し、タイマ値Tをゼロに初期化する。ステップS215に続いては、ステップS220に進む。
【0072】
ステップS220では、ソフトスタート制御B11を行う。ソフトスタート制御B11では、図11に示す処理を実行する。具体的には、システム制御部60は、まずステップS305で、暫定電流指令値Icmd_preを算出する。具体的には、ステップS120の区間B1制御の開始からの時間経過と共に、3段階以上の段階的にゼロから電流指令値Icmdまで増加するよう、暫定電流指令値Icmd_preを設定する。
【0073】
続いてステップS310では、「指示電流値Ixsが電流センサ値Ir未満、または、電流センサ値Irに所定の正の値I2を加算した値よりも大きい」という条件について判定を行う。これは、基本的に増大するはずの電流センサ値Irが指示電流値Ixsを超えたとき、または、電流センサ値Irが指示電流値Ixsを大きく下回ったときに、指示電流値Ixsを電流センサ値Irに追従して更新すべきタイミングとするためである。条件が満たされる場合はステップS315に進み、満たされない場合はステップS315をバイパスしてステップS320に進む。
【0074】
ステップS315では、電流センサ値Irを指示電流値Ixsに代入し、ステップS320に進む。この処理により、システム制御部60から燃料供給装置40に出力される指示電流値Ixsが新しい値に更新される。なお、ステップS310,S315の処理は、区間B1制御における協調制御に対応する。
【0075】
ステップS320では、暫定電流指令値Icmd_preと電流センサ値Irとの差の絶対値が所定の正の値I2以下であるという条件を判定する。条件が満たされればステップS330に進み、満たされなければステップS325に進む。ステップS325では、PI制御演算B12で用いるP項計数kpおよびI項計数kiを初期値に初期化し、タイマ値Tをゼロに初期化し、ソフトスタート制御B11の今回の制御周期を終了する。
【0076】
ステップS330では、タイマ値Tが安定時間T1を超えたか否かを判定し、超えていればステップS340に進み、超えていなければステップS335に進む。ステップS335では、タイマ値Tのカウントアップを行い、ソフトスタート制御B11の今回の制御周期を終了する。
【0077】
ステップS340では、暫定電流指令値Icmd_preと電流センサ値Irとの差の絶対値が所定の正の値I1以上であるという条件を判定する。ここで、値I1は、値I2よりも小さく、電流幅Ziよりも小さい。条件が満たされればステップS350に進み、満たされなければステップS345に進む。ステップS345では、PI制御演算B12で用いるP項計数kpおよびI項計数kiを初期値に初期化し、タイマ値Tをゼロに初期化し、ソフトスタート制御B11の今回の制御周期を終了する。
【0078】
ステップS350では、P項計数kpおよびI項計数kiをゼロにセットすることで、PI制御演算B12で電圧指令値Vxが変更されないようにする。その後、ソフトスタート制御B11の今回の制御周期を終了する。
【0079】
このステップS320-S350の処理により、暫定電流指令値Icmd_preと電流センサ値Irの差の絶対値すなわち絶対値偏差がI2(すなわち上限の誤差)より大きい場合はPI制御演算B12が続けて行われるようにkp、ki、Tを初期化する。
【0080】
そして、絶対値偏差がI2以下となり、その状態でタイマ値Tが安定時間T1を超えるまで時間経過したとする。その場合、絶対値偏差がI1以下の場合すなわち暫定電流指令値Icmd_preが電流センサ値Irに十分近い場合は、ステップS330からステップS340、ステップS350と進む。そして、PI制御演算B12によって電圧指令値Vxが変更されないようにkp、kiをゼロにする。また、絶対値偏差がI1より大きい場合は、ステップS330からステップS340、ステップS345と進む。PI制御演算B12が更に安定時間T1の分だけ続けて行われるようにkp、ki、Tを初期化する。
【0081】
システム制御部60は、図10のステップS220におけるソフトスタート制御B11の後は、ステップS225で、電流センサ値IrがPI制御演算B12の開始電流Istart以上になったか否かを判定する。そして、開始電流Istart以上になっていなければステップS230に進んで電流偏差の値をゼロにセットし、開始電流Istart以上になっていればステップS235に進む。ステップ230で電流偏差をゼロにするのは、PI制御演算B12によって電圧指令値Vxを発電開始時のセルスタック31の出力電圧から更新しないようにするためである。ステップS235では、ステップS220のソフトスタート制御B11で算出された暫定電流指令値Icmd_preから電流センサ値Irを減算した値を、電流偏差とする。
【0082】
ステップS230、S235に続いては、ステップS240に進み、特性利用処理B13を行う。すなわち、上述のIV特性テーブルに対して電流センサ値Irを適用することで、電流センサ値Irに対応する電圧Vcmd1を特定する。電圧Vcmd1は、セルスタック31の現在の出力電圧と推定される値である。
【0083】
続いてステップS245では、PI制御演算B12を行う。すなわち、上述の通り、電流センサ値Irが暫定電流指令値Icmd_preに追従して変化するよう、セルスタック31の出力電圧の変化量に相当する電圧制御値Vcmd2を算出する。
【0084】
より具体的には、
Vcmd2=積算値+ΔVn
ΔVn={kp×(今回の電流偏差-前回の電流偏差)}+(ki×今回の電流偏差)
となるよう、電圧制御値Vcmd2の算出を行う。ここで、そして、今回の電流偏差とは、今回の制御周期においてステップS230またはステップS235で算出された電流偏差をいう。また、前回の電流偏差とは、前回の制御周期においてステップS230またはステップS235で算出された電流偏差をいう。また、積算値は、前回の制御周期で算出された電圧制御値Vcmd2である。
【0085】
続いてステップS250では、電圧指令値Vxを決定する。具体的には、ステップS240で算出された電圧Vcmd1からステップS245で算出された電圧制御値Vcmd2を減算した結果を、電圧指令値Vxに代入する。Vcmd1にVcmd2を加算するのでなく減算するのは、セルスタック31のIV特性によれば電流が増加すると電圧が下がるためである。
【0086】
続いてステップS255では、電圧指令値Vxの上下限処理および丸めを行う。具体的には、算出された電圧指令値Vxが所定の上限値より大きければ上限値に設定し、所定の下限値よりも小さければ下限値に設定する。これにより、電圧指令値Vxに上下限のガードがかかる。また、電圧指令値Vxが所定電圧幅Zv×整数の値のいずれかに一致するように、電圧指令値Vxの値を丸める。具体的には、電圧指令値Vxが所定電圧幅Zv×整数の値に一致しない場合は、所定電圧幅Zv×整数の値のうち、現在の電圧指令値Vxに最も近い値を、電圧指令値Vxに代入する。
【0087】
続いてステップS260では、現在の電圧指令値Vxの値を、パワーコンディショナ50のパワー制御部53に出力する。その後、今回の制御周期の区間B1制御を終了し、図8のステップS125に進む。
【0088】
なお、このような区間B1制御が継続する間、すなわち、ステップS120、S125が繰り返される間、図12に示すように、セルスタック31の出力電流および燃料電池に供給される燃料ガス量は動作点S1から動作点S2まで増加する。そして、CS温度は、動作点S1から動作点S2まで一定に保たれる。なお、燃料ガス量は、指示電流値Ixsに連動して増減する。
【0089】
次に、ステップS130における区間B2制御の詳細について説明する。システム制御部60は、ステップS130では、概念的には、図13に示すような制御を行う。すなわち、区間B1制御が終了した時点における電圧指令値Vxを、現在の電圧指令値Vxとして固定し、電流センサ値Irを指示電流値Ixsに代入する。
【0090】
システム制御部60は、このような区間B2制御を実現するため、図14に示す処理を実行する。図14の処理は、1回のステップS130の処理につき1回(すなわち、1制御周期分)実行される。図14の処理においてシステム制御部60は、まずステップS405で、区間B1制御の最後の制御周期において決定された電圧指令値Vxを取得し、続いてステップS410で、取得した電圧指令値Vxを、現在の電圧指令値Vxに代入する。この処理により、システム制御部60からパワー制御部53に出力される電圧指令値Vxが、区間B1制御の最後の制御周期において決定された電圧指令値Vxに維持される。
【0091】
続いてステップS415では、電流センサ値Irが指示電流値Ixsより大きいか否かを判定し、大きければステップS420に進み、大きくなければステップS415をバイパスして今回の制御周期における区間B2制御を終了し、図8のステップS135に進む。
【0092】
ステップS420では、電流センサ値Irの値を指示電流値Ixsに代入する。これにより、CS温度の上昇に伴って電流センサ値Irが増大する区間B2において、システム制御部60から燃料供給装置40に出力される指示電流値Ixsが電流センサ値Irに追従するよう新しい値に逐次更新されていく。ステップS420の後は、今回の制御周期における区間B2制御を終了し、図8のステップS135に進む。なお、ステップS415、S420の処理は、区間B2制御における協調制御に対応する。
【0093】
なお、ステップS130の処理において、電圧指令値Vxがセルスタック31の能力を増減させるために、種々の要因(例えば、機器20の動作状態、燃料供給装置40の動作状態等)に基づいて増加、減少する場合がある。
【0094】
このような区間B2制御が継続してステップS130、S135が繰り返される間、図12に示すように、セルスタック31の出力電流、セルスタック31に供給される改質後ガス量、およびCS温度は動作点S2から動作点S21を経由してS3まで増加する。
【0095】
このように、区間B2においては、電圧指令値Vxが一定に維持されることにより、燃料電池30の出力電流増加に伴う出力電圧増加の勾配が、区間B1制御における出力電流増加に伴う出力電圧減少の勾配よりも、緩やかに抑えられる。つまり、出力電流の単位増加分当たりの出力電圧の変化量の絶対値は、区間B1制御全体よりも区間B2制御全体の方が、小さい。
【0096】
次に、ステップS140における区間B3制御の詳細について説明する。システム制御部60は、ステップS140では、概念的には、図15に示すような制御を行う。すなわち、区間B2制御が終了した時点における電流センサ値Irと、現在の電流センサ値Irとの差に基づいたPI制御演算B31を行う。これにより、電流センサ値Irが概ね一定値(すなわち、区間B2制御が終了した時点における電流センサ値Ir)を維持するよう、セルスタック31の出力電圧の変化量に相当する電圧制御値Vcmd2が算出される。また、区間B2において維持された電圧指令値Vxから電圧制御値Vcmd2を減算した値を、電圧指令値Vxに代入する。また、電流センサ値Irに所定の正の所定値αを加算した値を指示電流値Ixsに代入する。
【0097】
システム制御部60は、このような区間B3制御を実現するため、図16に示す処理を実行する。図16の処理は、1回のステップS140の処理につき1回(すなわち、1制御周期分)実行される。図16の処理においてシステム制御部60は、まずステップS505で、電流指令値Icmd、電流センサ値Irを取得する。
【0098】
続いてステップS510では、電流指令値Icmdが更新されたか否か、すなわち、直前のステップS505で取得した電流指令値Icmdが、その1回前の制御周期のステップS505で取得した電流指令値Icmdから変化したか否かを判定する。更新されたと判定した場合はステップS515に進み、更新されていないと判定された場合はステップS520に進む。
【0099】
ステップS515では、電流指令値Icmdの値を指示電流値Ixsに代入すると共に、PI制御演算B12で用いるP項計数kpおよびI項計数kiを初期値に初期化し、タイマ値Tをゼロに初期化する。ステップS515に続いては、ステップS525に進む。
【0100】
ステップS520では、指示電流値Ixsの値を設定する。具体的には、電流センサ値Irに正の所定値αを加算した値を、指示電流値Ixsに代入する。これにより、指示電流値Ixsは電流センサ値Irよりも大きな値になる。所定値αは、例えば、あらかじめ定められた固定値でもよい。例えば、所定値αの値は、電流分解能に相当する電流幅Ziと同じに設定されていてもよい。このようにすることで、セルスタック31から出力される電流値がばらついた場合であっても、セルスタック31から出力される電流値が指示電流値Ixsより大きくなる可能性が十分低減される。
【0101】
ステップS525では、電流センサ値IrがPI制御演算B31の開始電流Istart以上になったか否かを判定する。そして、開始電流Istart以上になっていなければステップS530に進んで電流偏差の値をゼロにセットし、開始電流Istart以上になっていればステップS535に進む。ステップ530で電流偏差をゼロにするのは、PI制御演算B31によって電圧指令値Vxを更新しないようにするためである。ステップS535では、指示電流値Ixsから電流センサ値Irを減算した値を、電流偏差とする。
【0102】
ステップS530、S535に続いては、ステップS540に進み、区間B3制御の最初の制御周期の実行中であるか否か判定する。最初の制御周期であればステップS542に進み、2回目以降の制御周期であればステップS542をバイパスしてステップS545に進む。
【0103】
ステップS542では、区間B2制御の終了時点(すなわち動作点S3の時点)における電圧指令値Vxを電圧Vcmd1に代入し、ステップS545に進む。これにより、区間B3制御の最初の制御周期およびそれ以降の制御周期においては、電圧Vcmd1の値は区間B2制御の終了時点の電圧指令値となる。
【0104】
ステップS545では、PI制御演算B31を行う。すなわち、上述の通り、電流センサ値Irが概ね一定値を維持するよう、セルスタック31の出力電圧の変化量に相当する電圧制御値Vcmd2を算出する。
【0105】
電流偏差を用いた電圧制御値Vcmd2の具体的な算出方法は、図10のステップS245と同様である。ただし、今回の電流偏差は、区間B2制御の終了時点における電流センサ値Irから今回の制御周期における電流センサ値Irを減算した値である。また、前回の電流偏差は、区間B2制御の終了時点における電流センサ値Irから前回の制御周期における電流センサ値Irを減算した値である。
【0106】
続いてステップS550では、電圧指令値Vxを決定する。具体的には、ステップS540で算出された電圧Vcmd1からステップS545で算出された電圧制御値Vcmd2を減算した結果を、電圧指令値Vxに代入する。Vcmd1にVcmd2を加算するのでなく減算するのは、セルスタック31のIV特性によれば電流が増加すると電圧が下がるためである。
【0107】
続いてステップS555では、図10のステップS255と同様の手法で、電圧指令値Vxの上下限処理および丸めを行う。続いてステップS560では、現在の電圧指令値Vxの値を、パワーコンディショナ50のパワー制御部53に出力する。その後、区間B1制御の今回の制御周期を終了し、図8のステップS145に進む。
【0108】
このような区間B3制御が繰り返されることで、セルスタック31の出力電流値が所定の範囲で維持されながら、CS温度の上昇に伴い、セルスタック31の出力電圧が上昇していき、セルスタック31の動作点がS3からS4に移動する。そして、区間B3制御においては、指示電流値Ixsが電流センサ値Irよりも大きくなるよう制御されているので、セルスタック31の劣化を抑制できる。
【0109】
次に、ステップS150における定常制御の詳細について説明する。システム制御部60は、ステップS150では、概念的には、図17に示すような制御を行う。すなわち、区間B3制御が終了した時点における電流センサ値Irを電流指令値Icmdに代入してその電流指令値Icmdと、現在の電流センサ値Irとの差に基づいたPI制御演算B41を行う。このPI制御演算B41により、電流センサ値Irが概ね一定値(すなわち、区間B3制御が終了した時点における電流センサ値Ir)を維持するよう、セルスタック31の出力電圧の変化量に相当する電圧制御値Vcmd2を算出する。
【0110】
また、区間B3制御が終了した時点における電圧指令値Vxから電圧制御値Vcmd2を減算した値を、今回の電圧指令値Vxに代入する。また、協調制御B42において、指示電流値Ixsと電流センサ値Irの差の絶対値が基準値I2より大きければ、電流指令値Icmdを指示電流値Ixsに代入し、基準値I2以下であれば、電流センサ値Irを指示電流値Ixsに代入する。
【0111】
システム制御部60は、このような定常制御を実現するため、図18に示す処理を実行する。図18の処理は、1回のステップS150の処理につき1回(すなわち、1制御周期分)実行される。図18の処理においてシステム制御部60は、まずステップS605で、電流指令値Icmd、電流センサ値Irを取得する。
【0112】
続いてステップS610では、電流指令値Icmdが更新されたか否か、すなわち、直前のステップS605で取得した電流指令値Icmdが、その1回前の制御周期のステップS605で取得した電流指令値Icmdから変化したか否かを判定する。更新されたと判定した場合はステップS615に進み、更新されていないと判定された場合はステップS615をバイパスしてステップS625に進む。
【0113】
ステップS615では、電流指令値Icmdの値を指示電流値Ixsに代入すると共に、PI制御演算B41で用いるP項計数kpおよびI項計数kiを初期値に初期化し、タイマ値Tをゼロに初期化する。ステップS615に続いては、ステップS625に進む。
【0114】
ステップS625では、電流センサ値IrがPI制御演算B41の開始電流Istart以上になったか否かを判定する。そして、開始電流Istart以上になっていなければステップS630に進んで電流偏差の値をゼロにセットし、開始電流Istart以上になっていればステップS635に進む。ステップ630で電流偏差をゼロにするのは、PI制御演算B41によって電圧指令値Vxを更新しないようにするためである。ステップS635では、指示電流値Ixsから電流センサ値Irを減算した値を、電流偏差とする。
【0115】
ステップS625、S630に続いては、ステップS637に進み、協調制御B42を行う。システム制御部60は、協調制御B42において、図19に示す処理を行う。
【0116】
図19の処理では、まずステップS720で、指示電流値Ixsと電流センサ値Irとの差の絶対値が所定の正の値I2以下であるという条件を判定する。条件が満たされれば、タイマ値Tのカウントを開始するためにステップS730に進み、満たされなければステップS725に進む。ステップS725では、PI制御演算B41で用いるP項計数kpおよびI項計数kiを初期値に初期化し、タイマ値Tをゼロに初期化し、今回の協調制御B42を終了する。
【0117】
ステップS730では、タイマ値Tが安定時間T1を超えたか否かを判定し、超えていればステップS740に進み、超えていなければステップS735に進む。ステップS735では、タイマ値Tのカウントアップを行い、今回の協調制御B42を終了する。
【0118】
ステップS740では、指示電流値Ixsと電流センサ値Irとの差の絶対値が所定の正の値I1以上であるという条件を判定する。ここで、値I1は、値I2よりも小さく、電流幅Ziよりも小さい。条件が満たされればステップS745に進み、満たされなければステップS750に進む。
【0119】
ステップS745では、PI制御演算B41で用いるP項計数kpおよびI項計数kiを初期値に初期化し、タイマ値Tをゼロに初期化する。続いてステップS748では、電流偏差を低減するため、電流センサ値Irを指示電流値Ixsに代入し、今回の協調制御B42を終了する。これにより、電流センサ値Irに相当する指示電流値Ixsがシステム制御部60から燃料供給装置40に出力される。
【0120】
ステップS750では、P項計数kpおよびI項計数kiをゼロにセットすることで、PI制御演算B41で積分項を積算して電圧指令値Vxを変更しないようにする。そして、ステップS748がバイパスされるので、指示電流値Ixsが変化せず維持される。このようにするのは、指示電流値Ixsが電流センサ値Irにある程度近い場合は、むしろ電流センサ値の細かい変動に合わせて指示電流値Ixs、電圧指令値Vxを変化させない方が動作の安定性が高いからである。ステップS750の後、今回の協調制御B42を終了する。
【0121】
システム制御部60は、協調制御の後、図18のステップS640で、定常制御の今回の制御周期は、定常制御における最初の制御周期であるか否かを判定する。最初の制御周期であればステップS642に進み、2回目以降の制御周期であればステップS642をバイパスしてステップS645に進む。
【0122】
ステップS642では、区間B3制御の終了時点(すなわち動作点S4の時点)における電圧指令値Vxを電圧Vcmd1に代入し、ステップS645に進む。これにより、定常制御の最初の制御周期およびそれ以降の制御周期においては、電圧Vcmd1の値は区間B3制御の終了時点の電圧指令値となる。
【0123】
ステップS645では、PI制御演算B41を行う。すなわち、上述の通り、電流センサ値Irが概ね一定値(すなわち、区間B3制御が終了した時点における電流センサ値Ir)を維持するよう、セルスタック31の出力電圧の変化量に相当する電圧制御値Vcmd2を算出する。
【0124】
電流偏差を用いた電圧制御値Vcmd2の具体的な算出方法は、図10のステップS245と同様である。ただし、今回の電流偏差は、区間B3制御の終了時点における電流センサ値Irから今回の制御周期における電流センサ値Irを減算した値である。また、前回の電流偏差は、区間B3制御の終了時点における電流センサ値Irから前回の制御周期における電流センサ値Irを減算した値である。
【0125】
続いてステップS650では、電圧指令値Vxを決定する。具体的には、ステップS640で算出された電圧Vcmd1からステップS645で算出された電圧制御値Vcmd2を減算した結果を、電圧指令値Vxに代入する。Vcmd1にVcmd2を加算するのでなく減算するのは、セルスタック31のIV特性によれば電流が増加すると電圧が下がるためである。
【0126】
続いてステップS655では、図10のステップS255と同様の手法で、電圧指令値Vxの上下限処理および丸めを行う。続いてステップS660では、現在の電圧指令値Vxの値を、パワーコンディショナ50のパワー制御部53に出力する。その後、区間B1制御の今回の制御周期を終了し、図8のステップS155に進む。
【0127】
ここで、定常制御において協調制御B42を行うことの効果について、図20の事例を用いて説明する。図20は、横軸が時間、縦軸が電流値を示している。この事例では、時点T11を境に電流指令値Icmdの値が増加している。
【0128】
時点T11以前は、電流指令値Icmdと電流センサ値Irの差がI1未満と許容範囲内にあるので、システム制御部60は、タイマ値Tが安定時間T1を
協調制御B42において図19のステップS740を実行した場合は、ステップS745でなくステップS750に進む。したがって、指示電流値Ixsは電流指令値Icmdが現状の値に変化した過去時点の図18のステップS615で設定された値(すなわち、現状の電流指令値Icmd)になる。
【0129】
そして、時点T11において何らかの要因により電流指令値Icmdが上昇すると、図18のステップS615で、指示電流値Ixsに上昇後の電流指令値Icmdが代入される。その結果、I1≦|Ixs-Ir|≦I2となっても、協調制御B42においてステップS720でタイマ値Tが安定時間T1未満となる期間は、処理がステップS720、S730、S735と進むので、指示電流値Ixsが電流指令値Icmdのままとなる。
【0130】
このように電流指令値Icmdの上昇に合わせて指示電流値Ixsが上昇する。それにより、時点T11以降においては、ステップS645のPI制御演算B41およびS650の演算により、セルスタック31の出力電流が指示電流値Ixsに追従するように電圧指令値Vxが変動する。その結果、パワーコンディショナ50の制御により、電流センサ値Irが上昇する。ただし、電圧指令値Vxが電圧幅Zv刻みでしか変化できないことにより、上述の通り、電流センサ値Irも電流幅Ziの刻みに検出誤差当を加えた値でしか変化できない。
【0131】
図20の事例では、電流センサ値Irが指示電流値Ixsを超えて増大することにより、指示電流値Ixsと電流センサ値Irの差の絶対値が値I1より小さくなった後、再度値I1より大きくなる。
【0132】
そして、時点T11以降で、I1≦|Ixs-Ir|≦I2となっていた期間であるタイマ値Tが安定時間T1を超えるまでは、ステップS730からステップS735に進んで指示電流値Ixsは変化しない。このように、タイマ値Tが安定時間T1を超えるまで、指示電流値Ixsを変化させるのを待つのは、電流センサ値Irの変動を緩和させて安定化させるためである。
【0133】
その後、時点T12において、タイマ値Tが安定時間T1を超えることにより、協調制御B42で処理がステップS730からステップS745、S748に進み、指示電流値Ixsに電流センサ値Irが代入される。すなわち、電流偏差が小さくなるよう、指示電流値Ixsを電流センサ値Irに近づける調整を行う。このような協調制御B42により、電流偏差が小さくなり、セルスタック31の劣化、損傷、効率低下の可能性が低減される。このときの、指示電流値Ixsの変動量は、電流センサ値Irの緩和された変動量よりも、大きい。なお、ある時刻の変動量は、例えば、その時刻を中央とするタイマ時間Tの範囲における、最大値と最小値の差の絶対値であってもよい。
【0134】
このような協調制御B42を行わない場合について、図21のグラフを用いて説明する。図21は、比較例としての、協調制御B42を行わない場合の、電流センサ値Irおよびセルスタックの出力する電圧を示す電圧センサ値Vrの時間経過に伴う変化を示す。協調制御B42を行わない場合、電流センサ値Irと指示電流値Ixsとの差が比較的大きいため、PI制御演算B41において、電圧指令値Vxが一定にならず、図21に示すように増加、減少を繰り返してしまう可能性が比較的高い。
【0135】
これに対し、協調制御B42を行うと、図22に示すように、指示電流値Ixsが当初の電流指令値Icmdに一致する値から、電流センサ値Irに近づくように変更される。これにより、指示電流値Ixsと実電流(すなわち、セルスタック31から出力される実際の電流)との最大誤差X1は許容範囲Y1内となる。
【0136】
次に、図23図24図25に、区間B1制御、区間B2制御、区間B3制御、定常制御における電流センサ値Irと指示電流値Ixsの時間経過に伴う変化と、これら2つの電流値の差(すなわち電流誤差)の変化を示す。各図に示す通り、区間B1制御、区間B2制御、および定常性における電流誤差は、I1未満の目標範囲内に収まっている。
【0137】
このようになるのは、区間B1制御においては、ステップS315で電流偏差が小さくなるよう指示電流値Ixsに電流センサ値Irを代入するからである。また区間B2制御においては、図14のステップ420で電流偏差が小さくなるよう指示電流値Ixsに電流センサ値Irを代入するからである。また区間B3制御においては、図16の処理において、電流指令値Icmdが更新されない限り、指示電流値Ixsが区間B2制御の最後の制御周期における指示電流値Ixsに維持されるからである。
【0138】
(1)以上説明した通り、燃料供給装置40は、指示電流値Ixsに相当する電流で燃料電池30から直流が出力されるよう、燃料電池30に供給する燃料ガスの量を調整する。また燃料供給装置40は、パワーコンディショナ50における電圧指令値Vxの電圧分解能に起因して電流値が取り得る刻み幅である電流幅Ziよりも細かい刻みで、指示電流値Ixsが設定可能である。そして、システム制御部60は、電流センサ値Irを取得し、指示電流値Ixsが電流センサ値Irに近づくよう、指示電流値Ixsを設定する協調制御を行う。
【0139】
このように、電圧指令値Vxの電圧分解能が比較的粗い状況において、システム制御部60は、電流幅Ziよりも細かい刻みで、指示電流値Ixsを設定可能とする。そして、指示電流値Ixsが電流センサ値Irに近づくよう指示電流値が設定される。
【0140】
このように、指示電流値Ixsを細かく制御して電流センサ値Irに追従させることで、燃料電池30の実際の出力電流値と、システム制御部60が指示する指示電流値Ixsとの乖離が抑制される。ひいては、燃料電池30の損傷、劣化、効率低下の可能性が低減される。
【0141】
(2)また、システム制御部60は、電流センサ値Irに近づける以外の目的(例えば、微調整、能力調整)で指示電流値Ixsを変化させた場合、その変化に起因する電流センサ値Irの変動が緩和されるよう、協調制御を行わずに待機する。そして待機した後、協調制御において、指示電流値Ixsが電流センサ値Irに近づくよう指示電流値Ixsを設定する。
これにより、電流センサ値Irに近づける以外の目的で指示電流値Ixsが変化した場合、それに起因する電流センサ値Irの変動が安定した後で、協調制御が行われる。したがって、より安定的に、燃料電池30の実際の出力電流値と、システム制御部60が出力する指示電流値Ixsとの乖離を抑制できる。
【0142】
(3)また、システム制御部60は、燃料電池30を定常発電させるための定常制御において、協調制御B42を行う。このようにすることで、定常運転時における燃料電池30の実際の出力電流値と指示電流値Ixsとの乖離を抑制することができる。したがって、定常運転に起因する燃料電池30の損傷、劣化、効率低下の可能性が低減される。
【0143】
(4)また、システム制御部60は、区間B1制御および区間B2制御において、協調制御を行う。このようにすることで、区間B1制御時、区間B2制御時における燃料電池30の実際の出力電流値と指示電流値Ixsとの乖離を抑制することができる。したがって、区間B1制御時および区間B2制御に起因するセルスタック31の損傷、劣化、効率低下の可能性が低減される。なお、本実施形態とは異なる他の例として、区間B1制御時および区間B2制御のうち、前者のみまたは後者のみにおいて、協調制御が行われてもよい。
【0144】
(5)また、システム制御部60は、区間B2制御においては、電圧指令値Vxを、区間B1制御の終了時の値に維持する。このようにすることで、区間B1制御から区間B2制御へ、シームレスに制御を移行することができる。
【0145】
(6)また、システム制御部60は、区間B2制御の後、燃料電池30の温度を定常発電のための温度まで上昇させる区間B3制御を行う。そしてシステム制御部60は、区間B3制御において、指示電流値Ixsを電流センサ値Irより大きい値に設定する。このようにすることで、セルスタック31の劣化をより効果的に防止できる。
【0146】
(7)また、システム制御部60は、区間B3制御における電圧指令値Vxを、区間B2制御の終了時の電圧指令値Vxの値(すなわち、Vcmd1に代入された値)、および電圧制御値Icmd2に基づいて算出する。そして、電圧制御値Icmd2は、区間B3制御における電流指令値Ixsと電流センサ値Irとの差分に基づく値である。このようにすることで、区間B2制御から区間B3制御へ、シームレスに制御を移行することができる。
【0147】
(第2実施形態)
次に、第2実施形態について、図26を用いて説明する。本実施形態の発電システム100のハードウェア構成は、第1実施形態と同じである。また、本実施形態における発電システム100の作動は、システム制御部60の区間B2制御、区間B3制御およびこれら制御に起因する作動が、第1実施形態とは異なり、他は第1実施形態と同じである。
【0148】
具体的には、本実施形態の区間B2制御の終了を判定するために図8のステップS135で用いられる第2目標電流値は、第1実施形態よりも高い値となっている。本実施形態の第2目標電流値は、セルスタック31の出力可能な最大電流となっている。これにより、区間B2において、動作点S2から動作点S3を経て動作点S3bまで、セルスタック31の出力電圧が維持されながら動作点が移動する。
【0149】
そしてシステム制御部60は、区間B3制御においては、動作点S3aから区間B3aに沿って動作点S3bまで動作点が移動するよう定電流制御を行い、更に、動作点S3bから区間B3bに沿って動作点S4まで動作点が移動するよう、電流制御、または定電力制御を行う。区間B3aと区間B3bが、区間B3を構成する。これによって、第1実施形態に比べ、動作点S1の発電開始から動作点S4の定常発電に至る時間が短縮される。なお、本実施形態において第1実施形態と同様の構成および同様作動からは、同様の効果が得られる。
【0150】
(第3実施形態)
次に、第3実施形態について、図27を用いて説明する。本実施形態の発電システム100のハードウェア構成は、第1実施形態と同じである。また、本実施形態における発電システム100の作動は、システム制御部60の区間B3制御が廃され、区間B2制御の内容が変更されており、他は第1実施形態と同じである。具体的には、本実施形態の区間B2制御においては、システム制御部60は、ステップ状に動作点S2から定常発電の動作点S4まで定電圧制御と定電流制御を繰り返し交互に切り替えることで、動作点をステップ状に移動させる。これによって、第1実施形態に比べ、発電開始から定常発電までの時間は少し長くなるが、それでも従来に対して時間短縮効果が得られる。
【0151】
(第4実施形態)
次に、第4実施形態について説明する。本実施形態の発電システム100のハードウェア構成は、第1実施形態と同じである。本実施形態は、第1実施形態に対して、定常制御中の協調制御B42の処理内容が異なっている。それ以外は第1実施形態と同じである。
【0152】
本実施形態のシステム制御部60は、協調制御B42において、図19の処理に変えて、図28の処理を実行する。図28の処理中、ステップS720、S725、S730、S735、S740、S745、S748、S750の処理内容は、図19の同じステップ番号の処理と同じである。ただし、ステップS730でタイマ値Tが安定時間T1を超えたと判定した場合は、ステップS736に進む。
【0153】
ステップS736では、ステップS730でタイマ値Tが安定時間T1以下の状態から安定時間T1を超えるように変化したのは、定常制御の最初の制御周期を始めてから1回目であるかを判定する。1回目であればステップS740に進み、2回目以降であればステップS738に進む。
【0154】
ステップS738では、指示電流値Ixsと電流センサ値Irとの差の絶対値が所定の正の値I3以上であるという条件を判定する。ここで、値I3は、値I1よりも小さい値である。条件が満たされればステップS745に進み、満たされなければステップS739に進む。ステップS739では、ステップS750と同様に、P項計数kpおよびI項計数kiをゼロにセットする。ステップS739の後、今回の協調制御B42を終了する。
【0155】
これにより、システム制御部60は、図29に示すグラフの時点T22で、第1実施形態の時点T12と同様に、ステップS740からステップS745、S748に進み、タイマ値Tをゼロに初期化する。そして電流偏差を低減するため、電流センサ値Irを指示電流値Ixsに代入する。これは、ステップS730からステップS736に進んだときに、1回目であると判定してステップS740に進むからである。
【0156】
そしてその後、時点T23において、ステップS730で再びタイマ値Tが安定時間T1を超えたと判定すると、ステップS736に進んだときに、1回目でないと判定し、ステップS738に進む。そして、ステップS738で、指示電流値Ixsと電流センサ値Irとの差の絶対値が所定の正の値I3以上であると判定し、ステップS745、S748に進む。そしてステップS748で、電流偏差を低減するため、電流センサ値Irを指示電流値Ixsに代入する。ステップS738では、値I3が値I2よりも小さいため、値I2よりも小さい電流偏差であっても、それを低減するための処理(すなわちステップS748の処理)が実行される。
【0157】
以上のような処理により、電流センサ値Irと指示電流値Ixsのずれをより低減することができる。例えば、図30図31に示すように、定常制御において、協調制御なしの場合(すなわち比較例)よりも第1実施形態の場合の方がより最大電流誤差が小さく、更に、第1実施形態の場合よりも本実施形態の場合の方が、より最大電流誤差が小さい。ここで、最大電流誤差とは、所定の期間のセルスタック31の所定の発電電力での定常制御において最も大きかった電流誤差である。
【0158】
なお、図30においては、横軸がセルスタック31の発電電力を示し、縦軸が最大電流誤差を示す。協調制御なし(すなわち比較例)の場合の値は、三角形で示され、第1実施形態の場合の値は、×印で示され、本実施形態の場合は丸印で示されている。また、図31においては、縦軸は最大電流誤差を示している。また、電流偏差を低減する処理を複数段階で行うことで、指示電流値Ixsの急峻な変化を抑えることができる。
【0159】
(第5実施形態)
次に、第5実施形態について説明する。本実施形態の発電システム100のハードウェア構成は、第1実施形態と同じである。ただし、本実施形態においては、燃料供給装置40は、指示電流値Ixsとして所定の電流幅Zi2の刻みで受け付けるようになっている。
【0160】
すなわち、燃料供給装置40は、入力された指示電流値Ixsを0、Zi2、2×i2、3×i2、…という風に、整数×i2の値のいずれかとしてのみ認識する。その意味で、燃料供給装置40が受け付ける指示電流値Ixsの電圧分解能はZi2となる。なお、第1実施形態において燃料供給装置40が受け付ける指示電流値Ixsの電流分解能は、Zi2よりも十分細かい。
【0161】
この場合は、第1実施形態のように指示電流値Ixsを細かく変更することができないので、第1実施形態のような制御では、指示電流値Ixsによる協調制御の効果が低くできない場合がある。例えば、本実施形態では、図32のようなX軸、Y軸がそれぞれ電流値、電圧値を示すグラフに示すように、電圧指令値Vxとしては電圧幅Zvの刻みでCVj-1、CV、CVj+1、CVj+2、…しか設定できない。また、指示電流値Ixsとしては電流幅Zi2の刻みでCIj-1、CI、CIj+1、…しか設定できない。
【0162】
これに対し、定常制御(例えば一定温度)中におけるセルスタック31のIV特性が、図32の実線L1のようになっている。この実線L1に示すIV特性の情報はあらかじめ実験等によって定められてIV特性テーブルとしてシステム制御部60の不揮発性記憶媒体に記録されている。
【0163】
この場合、電圧指令値VxがCVに設定されたとすると、セルスタック31の動作点は、実線L1と電圧がCVとなる破線の交点となる。これら交点は、後述する予想電流IPの候補である。この動作点に対応する電流値は、CIj-1、CIの間の値であると共に、CIj-1からのずれとして許容される電流値の許容範囲IAj-1にも、CIからのずれとして許容される電流値の許容範囲IAにも、入っていない。このような場合、指示電流値IxsをCIj-1にしてもCIにしても、セルスタック31の損傷、劣化、効率低下の恐れが高くなる。なお、許容範囲IAj+1は、CIj+1からのずれとして許容される電流値の許容範囲である。IAj-1、IA、IAj+1は、それぞれ、CIj-1、CI、CIj+1を中心とする±ΔIの幅を有する。ここで、ΔIは、あらかじめ定められた値であり、電流幅Zi2の1/2よりも小さい。
【0164】
そこで、本実施形態では、システム制御部60は、セルスタック31の動作点が許容範囲に入るように、電圧指令値Vx、指示電流値Ixsを調整する。具体的には、システム制御部60は、定常制御において、図18の処理に代えて、図33の処理を実行する。
【0165】
システム制御部60は、図33の制御において、まずステップS810で、セルスタック31の定常制御におけるIV特性式を算出する。具体的には、現在の電流センサ値Irおよび電圧センサ72によって検出された電圧(すなわち電圧センサ値Vr)に基づいて、IV特性式の傾きKを算出する。算出される傾きKは、電流値が単位量増加したときの電圧の降下量を示す値であり、
K=(V1-Vr)/Ir
という式により算出する。ここで、V1は、セルスタック31の出力電流値がゼロである場合のセルスタック31の出力電圧である。この値は、温度センサ73によって検出されたセルスタック31の温度を温度-電圧対応テーブルに適用することで算出されてもよい。温度-電圧対応テーブルは、セルスタック31の温度と、その温度のセルスタック31の出力電流値がゼロのときのセルスタック31の出力電圧との、対応関係を示すデータであり、あらかじめシステム制御部60の不揮発性記憶媒体に記録されている。
【0166】
あるいは、V1の値は、セルスタック31の出力電流値がゼロのときのセルスタック31の出力電圧としてあらかじめシステム制御部60の不揮発性記憶媒体に記録されたものが用いられてもよい。
【0167】
続いてステップS820では、V1以下かつVmin以上で電圧指令値Vxが取り得る値CV(ただしkは自然数)の各々について、予想電流IPを算出する。ここで、Vminは、セルスタック31の最低出力電圧であり、あらかじめ記憶媒体に記録されている。予想電流IPは、IV特性を示す実線L1上における、電流がCVである動作点の電流値である。
【0168】
予想電流IPは、具体的には、
IP=(V1-CV)/K
という式で算出される。例えば、図32のグラフの範囲内では、CVj-1に対して予想電流IPj-1が、CVに対して予想電流IPが、CVj+1に対して予想電流IPj+1が、CVj+2に対して予想電流IPj+2が、それぞれ算出される。
【0169】
続いてステップS830では、最大電流であるIM以下かつ0以上で指示電流値Ixsが取り得る値CI(ただしmは自然数)のうち、その許容範囲IA内に予想電流IPのいずれかが入るCIを候補として特定する。
【0170】
例えば、図32のグラフの範囲内では、CIj-1、CI、CIj+1のうち、CIj+1の許容範囲IAj+1内に予想電流IPj+2のみが入り、CIj-1、CIの許容範囲IAj-1、IA内には、どれも入らない。したがって、CIj-1、CI、CIj+1のうち、CIj+1が候補として特定される。
【0171】
続いてステップS840では、ステップS830で候補として特定したCIのうちから、電流センサ値Irに最も近いものを選び、選んだCIを指示電流値Ixsに代入する。例えば、図32の事例では、CIj+1が選ばれて指示電流値Ixsに代入される。
【0172】
続いてステップS850では、ステップS840で選んで指示電流値Ixsに代入したCIの許容範囲IA内に入るとステップS830で判定された予想電流IPを特定し、特定した予想電流IPに対応するCVを抽出する。そして、抽出したCVを電圧指令値Vxに代入する。
【0173】
図32の事例では、CIj+1の許容範囲IAj+1に入る予想電流IPj+2を特定し、特定した予想電流IPj+2に対応する電流、すなわち、IV特性を示す実線L1上の予想電流IPj+2に対応する動作点の電圧CVj+2を抽出する。そして、抽出したCVj+2を電圧指令値Vxに代入する。ステップS850の後、処理はステップS810に戻る。
【0174】
このような処理により、システム制御部60は、ステップS840で決定した指示電流値Ixsを燃料供給装置40に出力し、ステップS850で決定した電圧指令値Vxをパワー制御部53に出力する。
【0175】
このようにすることで、指示電流値Ixsに対して許容範囲内に入る電流値をセルスタック31の出力電流が実現するよう、電圧指令値Vxが選ばれることになる。したがって、電圧指令値Vxに応じた電流センサ値Irと、指示電流値Ixsとの差の絶対値が、すなわち、電流誤差が、低減される。ひいては、定常制御において、セルスタック31の損傷、劣化、効率低下の可能性が低減される。
【0176】
なお、電流誤差を低減することを主目的として上述のように指示電流値Ixs、電圧指令値Vxが調整されると、その結果、セルスタック31の発電電力が狙いの値からずれる(例えば狙いの値よりも低下する)場合がある。しかし、本実施形態では、第1実施形態と同様、発電システム100の発電電力は機器20のベース電力とされ、機器20の電力変動は系統商用電源10より供給される。したがって、このようなずれは、系統商用電源10の供給電力の変動で補うことができるので、電力供給不足が発生する可能性は低い。
【0177】
(1)以上の通り、電圧指令値Vxとして設定可能な離散的な電圧(例えばCVj-1、CV、CVj+1、CVj+2)と指示電流値Ixsとして設定可能な離散的な電流値(例えば、CIj-1、CI、CIj+1)との複数の組み合わせが用いられる。
【0178】
すなわち、システム制御部60は、燃料電池30の出力電流と出力電圧の対応関係であるIV特性に対して所定の近傍の許容範囲(例えば、IAj-1、IA、IAj+1)内にある1つの組み合わせを選択する。そして、選択した組み合わせにおける電流値(例えばCIj+1)を指示電流値Ixsとして燃料供給装置40に出力し、選択した組み合わせにおける電圧(例えばCVj+2)を電圧指令値Vxとしてパワーコンディショナ50に出力する。
【0179】
本実施形態のように、パワーコンディショナ50における電圧指令値Vxの電圧分解能に起因する燃料電池30の出力電流の電流分解能が比較的粗く、かつ、燃料供給装置40への指示電流値の電流分解能も同程度に粗い場合もある。この場合は、電圧指令値Vxとして設定可能な離散的な電圧と指示電流値Ixsとして設定可能な離散的な電流値の複数の組み合わせのうち、IV特性に対して所定の近傍の許容範囲にある組み合わせを採用して実現される。こにより、燃料電池30の実際の出力電流値と指示電流値Ixsとの乖離を抑制することができる。したがって、燃料電池30の損傷、劣化、効率低下の可能性が低減される。
【0180】
なお本実施形態では、まず電圧指令値Vxとして設定できる離散的な値にそれぞれIV特性において対応する電流値として予想電流IPを特定し、その予想電流に対して所定の近傍の許容範囲にある電流値を離散的な電流値から選択して指示電流値Ixsとする。しかし、他の例が採用されてもよい。例えば、指示電流値Ixsとして設定できる離散的な値にそれぞれIV特性において対応する予想電圧を特定し、その予想電圧に対して所定の近傍の許容範囲にある電圧を離散的な電圧から選択してもよい。
【0181】
(第6実施形態)
次に第6実施形態について説明する。本実施形態の発電システム100は、図34に示すような構成となっている。具体的には、第1実施形態の発電システム100に対して、プリコンバータ90を有している。
【0182】
プリコンバータ90は、セルスタック31の出力する直流を昇圧してパワーコンディショナ50のコンバータ51に直流として入力する電流制御型の昇圧回路である。具体的には、昇圧のためのデューティ比VDがシステム制御部60からプリコンバータ90に入力され、プリコンバータ90は入力されたデューティ比VDでPWM制御することで、昇圧比を制御することができる。
【0183】
これに対応して、パワー制御部53は、入力された電圧指令値Vxに基づき、プリコンバータ90からコンバータ51に電圧指令値Vxが示す電圧の直流が出力されるよう、コンバータ51の昇圧比等を制御する。
【0184】
また、本実施形態のシステム制御部60は、図18に示す定常制御のステップS637の協調制御において、図19の処理に代えて、図35に示す処理を実行する。図33の処理では、まずステップS920で、指示電流値Ixsと電流センサ値Irとの差の絶対値が所定の正の値I2以下であるという条件を判定する。条件が満たされればステップS930に進み、満たされなければステップS925に進む。ステップS925では、タイマ値Tをゼロに初期化し、今回の協調制御を終了する。
【0185】
ステップS930では、タイマ値Tが安定時間T1を超えたか否かを判定し、超えていればステップS940に進み、超えていなければステップS935に進む。ステップS935では、タイマ値Tのカウントアップを行い、今回の協調制御を終了する。
【0186】
ステップS940では、指示電流値Ixsと電流センサ値Irとの差の絶対値が所定の正の値I1以上であるという条件を判定する。条件が満たされればステップS945に進み、満たされなければ協調制御を終了する。
【0187】
ステップS945では、電圧変換制御を行う。具体的には、図36に示すように、まず、システム制御部60は、指示電流値Ixsと電流センサ値Irとの差に基づいたPI制御演算B91を行う。これにより、電流センサ値Irが指示電流値Ixsに追従して変化するよう、セルスタック31の出力電圧が取るべき電圧Vt0が算出される。
【0188】
更にシステム制御部60は、電圧センサ値Vrと算出された電圧Vt0との差に基づいたPI制御演算B92を行うことで、電圧センサ値Vrが電圧Vt0に追従するよう、セルスタック31の出力電圧の目標である電圧Vt1を算出する。そしてシステム制御部60は、電圧Vt1と電圧指令値Vxの差を電圧指令値Vxで除算した結果を、デューティ比VDとしてプリコンバータ90に出力する。
【0189】
そしてプリコンバータ90は、入力されたデューティ比VDに従って入力電流制御を行うことで、Vx/Vt1の昇圧比を実現する。このように、指示電流値Ixsと電流センサ値Irの差が低減されるように設定された昇圧比でプリコンバータ90が作動することにより、燃料電池30の実際の出力電流値と指示電流値Ixsとの乖離が抑制される。
【0190】
(1)以上の通りシステム制御部60は、燃料電池30から指示電流値Ixsに追従する電流値で出力される直流をプリコンバータ90が電圧指令値Vxに相当する電圧の直流に昇圧してパワーコンディショナ50に出力するよう、プリコンバータ90を制御する。
【0191】
このようにすることで、燃料電池30から出力される直流が指示電流値Ixsに追従するように設定された昇圧比でプリコンバータ90が作動する。これにより、燃料電池30の実際の出力電流値と指示電流値Ixsの乖離を抑制することができる。したがって、燃料電池30の損傷、劣化、効率低下の可能性が低減される。
【0192】
なお、他の例として、システム制御部60は、定常制御におけるセルスタック31の出力電流と出力電圧の対応関係であるIV特性において指示電流値Ixsに対応する電圧として電圧Vt1を算出し、この電圧Vt1と電圧指令値Vxの差を電圧指令値Vxで除算した結果を、デューティ比VDとしてプリコンバータ90に出力してもよい。また、システム制御部60は、デューティ比VDを出力する方法以外でも、Vx/Vt1の昇圧比を実現するよう、プリコンバータ90を制御してもよい。
【0193】
(他の実施形態)
なお、本発明は上記した実施形態に限定されるものではなく、適宜変更が可能である。また、上記各実施形態は、互いに無関係なものではなく、組み合わせが明らかに不可な場合を除き、適宜組み合わせが可能である。また、上記各実施形態において、実施形態を構成する要素は、特に必須であると明示した場合および原理的に明らかに必須であると考えられる場合等を除き、必ずしも必須のものではない。また、上記各実施形態において、実施形態の構成要素の個数、数値、量、範囲等の数値が言及されている場合、特に必須であると明示した場合および原理的に明らかに特定の数に限定される場合等を除き、その特定の数に限定されるものではない。また、上記実施形態において、センサから車両の外部環境情報(例えば車外の湿度)を取得することが記載されている場合、そのセンサを廃し、車両の外部のサーバまたはクラウドからその外部環境情報を受信することも可能である。あるいは、そのセンサを廃し、車両の外部のサーバまたはクラウドからその外部環境情報に関連する関連情報を取得し、取得した関連情報からその外部環境情報を推定することも可能である。特に、ある量について複数個の値が例示されている場合、特に別記した場合および原理的に明らかに不可能な場合を除き、それら複数個の値の間の値を採用することも可能である。また、上記各実施形態において、構成要素等の形状、位置関係等に言及するときは、特に明示した場合および原理的に特定の形状、位置関係等に限定される場合等を除き、その形状、位置関係等に限定されるものではない。また、本発明は、上記各実施形態に対する以下のような変形例および均等範囲の変形例も許容される。なお、以下の変形例は、それぞれ独立に、上記実施形態に適用および不適用を選択できる。すなわち、以下の変形例のうち任意の組み合わせを、上記実施形態に適用することができる。
【0194】
また、本開示に記載のシステム制御部60及びその手法は、コンピュータプログラムにより具体化された一つ乃至は複数の機能を実行するようにプログラムされたプロセッサ及びメモリを構成することによって提供された専用コンピュータにより、実現されてもよい。あるいは、本開示に記載の制御部及びその手法は、一つ以上の専用ハードウェア論理回路によってプロセッサを構成することによって提供された専用コンピュータにより、実現されてもよい。もしくは、システム制御部60及びその手法は、一つないしは複数の機能を実行するようにプログラムされたプロセッサ及びメモリと一つ以上のハードウェア論理回路によって構成されたプロセッサとの組み合わせにより構成された一つ以上の専用コンピュータにより、実現されてもよい。また、コンピュータプログラムは、コンピュータにより実行されるインストラクションとして、コンピュータ読み取り可能な非遷移的実体的記録媒体に記憶されていてもよい。
【0195】
(変形例1)
上記実施形態におけるセルスタック31としては固体酸化物形のSOFCに限らず、溶融炭酸塩形のMCFC、リン酸形のPAFC、固体高分子形のPEFC、アルカリ水溶液型のAFCのいずれであってもよい。MCFCは、Molten Carbonate Fuel Cellの略称である。PAFCは、Phosphoric Acid Fuel Cellの略称である。PEFCは、Polymer Electrolyte Fuel Cellの略称である。AFCは、Alkaline FueiCellの略称である。
【0196】
(変形例2)
上記実施形態の協調制御において、S315、S420、S748では、指示電流値Ixsを電流センサ値Irと同じ値にするよう電流センサ値Irに近づけているが、必ずしも同じ値にする必要はない。例えば、指示電流値Ixsと電流センサ値Irの差の絶対値を現在の1/2にするよう、指示電流値Ixsを電流センサ値Irに近づけてもよい。
【0197】
(変形例3)
第1実施形態においては、定常制御における図18のステップS642では、電圧Vcmd1の値は、区間B3の最後における電圧指令値Vxに設定されている。しかし、必ずしもこのようになっていなくてもよい。例えば、電圧Vcmd1の値は、電流センサ値Irを定常制御におけるセルスタック31のIV特性に適用することで得られる電圧を、電圧Vcmd1に代入してもよい。
【0198】
(変形例4)
上記第1実施形態において、区間B3制御において協調制御を行わないが、定常制御と同様に協調制御を行ってもよい。
【符号の説明】
【0199】
1 燃料電池発明システム
30 燃料電池
40 燃料供給装置
50 パワーコンディショナ
60 システム制御部
図1
図2
図3
図4
図5
図6
図7
図8
図9
図10
図11
図12
図13
図14
図15
図16
図17
図18
図19
図20
図21
図22
図23
図24
図25
図26
図27
図28
図29
図30
図31
図32
図33
図34
図35
図36