(57)【要約】【課題】簡素な構成で要求電力を燃料電池からの取出電流量に精度よく変換する。【解決手段】コントローラ２６が、燃料電池スタック１の基準となる出力特性に基づいて要求発電電力を出力するために必要な燃料電池からの取出電流量を算出し、燃料電池スタック１の基準となる出力特性と燃料電池スタック１の実際の出力特性の関係を学習する。そして、コントローラ２６は、学習結果に基づいて取出電流量の補正量を算出し、算出された補正量に基づいて取出電流量を補正し、補正された取出電流量を目標電流値として燃料電池スタック１に供給する水素及び空気の流量や圧力を制御する。【選択図】図１
2007012549.tif 000002
【特許請求の範囲】
【請求項１】
反応ガスの供給を受けて発電する燃料電池を有する燃料電池システムであって、
前記燃料電池に対する要求発電電力を算出する要求発電電力算出手段と、
前記燃料電池の基準となる出力特性に基づいて前記要求発電電力を出力するために必要な燃料電池からの取出電流量を算出する取出電流算出手段と、
前記燃料電池の基準となる出力特性と当該燃料電池の実際の出力特性の関係を学習する出力特性学習手段と、
前記出力特性学習手段の学習結果に基づいて前記取出電流量の補正量を算出し、算出された補正量に基づいて前記取出電流量を補正する取出電流補正量算出手段と、
前記取出電流補正量算出手段により補正された取出電流量を目標電流値として燃料電池に供給する反応ガス量を制御する制御手段と
を備えることを特徴とする燃料電池システム。
【請求項２】
請求項１に記載の燃料電池システムであって、
前記燃料電池の出力電流を検出する電流検出手段と、
前記燃料電池の出力電圧を検出する電圧検出手段とを備え、
前記出力特性学習手段は、
前記燃料電池の運転状態に基づいて燃料電池の基準となる電流電圧特性から燃料電池の基準電圧を算出する基準電圧算出手段と、
前記電流検出手段により検出された出力電流を入力として前記基準電圧と前記電圧検出手段により検出された出力電圧の差を出力とする場合の入出力関係を学習する電圧差学習手段と
を備えることを特徴とする燃料電池システム。
【請求項３】
請求項２に記載の燃料電池システムであって、
前記燃料電池の基準となる電流電圧特性は、前記燃料電池の出力電流と温度を入力として燃料電池の基準電圧を出力とする電流電圧特性であり、前記基準電圧算出手段は、燃料電池の出力電流と温度に基づいて燃料電池の基準電圧を算出することを特徴とする燃料電池システム。
【請求項４】
請求項２又は請求項３に記載の燃料電池システムであって、
前記電圧差学習手段は、前記電流検出手段により検出された出力電流を入力として前記基準電圧と前記電圧検出手段により検出された出力電圧の差を出力とする一次関数から成る学習式を用いて入出力関係を学習することを特徴とする燃料電池システム。
【請求項５】
請求項１乃至請求項４のうち、いずれか１項に記載の燃料電池システムであって、
前記取出電流補正量算出手段は、予め算出された取出電流量の補正量を記憶し、記憶している補正量のデータを参照して取出電流値の補正量を算出することを特徴とする燃料電池システム。
【請求項６】
請求項２乃至請求項４のうち、いずれか１項に記載の燃料電池システムであって、
前記取出電流補正量算出手段は、前記電流検出手段により検出された出力電流を入力として前記基準電圧と前記電圧検出手段により検出された出力電圧の差を出力とする一次関数の各項の係数に基づいて取出電流量の補正量を算出することを特徴とする燃料電池システム。
【請求項７】
請求項２乃至請求項４のうち、いずれか１項に記載の燃料電池システムであって、
前記取出電流補正量算出手段は、前記電流検出手段により検出された出力電流を入力として前記基準電圧と前記電圧検出手段により検出された出力電圧の差を出力とする一次関数の各項の係数に基づいて予め算出された取出電流量の補正量を記憶し、記憶している補正量のデータを参照して取出電流量の補正量を算出することを特徴とする燃料電池システム。
【請求項８】
請求項１乃至請求項７のうち、いずれか１項に記載の燃料電池システムであって、
前記燃料電池の発電電力を検出する発電電力検出手段と、
前記要求発電電力と前記発電電力検出手段により検出された発電電力とが等しくなるように要求発電電力と発電電力の差に基づいて取出電流量の補正量を調整する手段と
を備えることを特徴とする燃料電池システム。
【請求項９】
請求項８に記載の燃料電池システムであって、
前記取出電流補正量算出手段は、前記要求発電電力と前記発電電力検出手段により検出された発電電力とが等しくなるように、要求発電電力と発電電力の差に基づいて取出電流量の補正量を学習する手段を備えることを特徴とする燃料電池システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、反応ガスの供給を受けて発電する燃料電池を有する燃料電池システムに関する。
【背景技術】
【０００２】
一般に、要求電力を供給するために必要な燃料電池からの取出電流量を算出し、算出された取出電流量に従って燃料電池に供給する反応ガス量を制御するシステムは、燃料電池の基準となる出力特性に基づいて要求電力を取出電流量に変換する演算を行う。ところが、燃料電池の出力特性は、通常、燃料電池の個体差や経時変化によって変化するために、燃料電池の基準となる出力特性に基づいて取出電流量を演算する場合には、演算精度が燃料電池の個体差や経時変化によって変化する。このような背景から、最近では、燃料電池の出力特性を示す近似式を導出し、最小二乗法等の一般的な学習アルゴリズムを用いて導出された近似式の各項の係数を学習パラメータとして繰り返し演算することにより、燃料電池の出力特性を学習するシステムが提案されている（特許文献１を参照）。
【特許文献１】特開２０００−３５７５２６号公報
【発明の開示】
【発明が解決しようとする課題】
【０００３】
しかしながら、出力特性に基づいて燃料電池の出力電流を出力電力に変換することは、出力電流とその時の出力電圧とを乗算すればよいので演算が容易であるが、要求電力を取出電流量に変換するためには、高次の方程式の解を演算したり、要求電力値となる取出電流値を探索するような収束演算を行う必要があることから、高い演算処理能力が必要になる。このため、マイコン等の演算能力が低い情報処理装置を利用して演算を行うようなシステムでは、オンボードでリアルタイムに要求電力を取出電流量に変換することができない。このため、従来のシステムによれば、取出電流量に従って燃料電池に供給する反応ガス量を適切に制御し、要求電力を精度よく出力することは難しい。
【０００４】
なお、このような問題を解決するために、要求電力に対する燃料電池の取出電流量の特性を学習する方法も考えられるが、この方法を用いた場合であっても、特性を示す近似式が高次になったり、運転温度の変化も考慮して学習を行う必要があるこから、学習アルゴリズムが複雑になり、オンボードでリアルタイムに要求電力を取出電流量に変換することは難しい。
【０００５】
本発明は、上述の課題を解決するためになされたものであり、その目的は、簡素な構成で要求電力を燃料電池からの取出電流量に精度よく変換することが可能な燃料電池システムを提供することにある。
【課題を解決するための手段】
【０００６】
上述の課題を解決するために、本発明に係る燃料電池システムは、燃料電池の基準となる出力特性に基づいて要求発電電力を出力するために必要な燃料電池からの取出電流量を算出し、燃料電池の基準となる出力特性と燃料電池の実際の出力特性の関係を学習し、学習結果に基づいて取出電流量を補正する。
【発明の効果】
【０００７】
本発明に係る燃料電池システムによれば、要求電力を燃料電池からの取出電流量に変換するために収束演算等の複雑な演算処理を行う必要がないので、簡素な構成で要求電力を燃料電池からの取出電流量に精度よく変換することができる。
【発明を実施するための最良の形態】
【０００８】
以下、図面を参照して、本発明の第１及び第２の実施形態となる燃料電池システムの構成及びその動作について説明する。
【実施例１】
【０００９】
［燃料電池システムの構成］
本発明の第１の実施形態となる燃料電池システムは、ハイブリッド型電気自動車等の車両の駆動動力源として使用され、図１に示すように、アノード及びカソードにそれぞれ燃料ガス及び酸化剤ガスとしての水素及び空気の供給を受けて発電する燃料電池が複数積層された燃料電池スタック１を備える。なお、この実施形態では、燃料電池は、アノードとカソードにより挟持された電解質膜を備え、電解質膜は、高エネルギー密度化，低コスト化，及び軽量化を考慮して、固体高分子電解質膜により形成されている。固体高分子電解質膜は、例えばフッ素樹脂系イオン交換膜等のイオン（プロトン）伝導性を有する高分子膜から成るものであり、飽和含水することによりイオン伝導性電解質として機能する。また、アノード及びカソードにおける電気化学反応及び燃料電池スタック１全体としての電気化学反応は以下に示す式（１）〜（３）による。
【００１０】
〔アノード〕    Ｈ2 →  ２Ｈ+  ＋２ｅ-               …（１）
〔カソード〕    1/2 Ｏ2 ＋２Ｈ+ ＋２ｅ-  → Ｈ2Ｏ     …（２）
〔全体〕        Ｈ2 ＋1/2 Ｏ2     → Ｈ2Ｏ           …（３）
〔水素系の構成〕
上記燃料電池システムは、高圧水素タンク２及び水素圧力制御弁３を備え、高圧水素タンク２から供給される水素の圧力を水素圧力制御弁３によって燃料電池スタック１の運転状態に適した圧力まで減圧した後、水素供給流路４を介して燃料電池スタック１に水素を供給する。なお、燃料電池スタック１に供給される水素の圧力は、圧力センサ１９により検出された水素圧力をフィードバックして水素圧力制御弁３を駆動することによって制御される。
【００１１】
燃料電池スタック１で未使用の水素は、水素循環流路５及びエゼクタ６を介して燃料電池スタック１の水素入口側へ循環される。水素循環流路５及びエゼクタ６を設けることにより、燃料電池スタック１で未使用の水素を再利用することが可能となり、燃料電池システムの燃費性能を向上させることができる。なお、水素循環流路５及びエゼクタ６を介して燃料電池スタック１に戻る水素の循環流路には、カソード側からリークした空気中の窒素やアルゴン等の不純物ガス、或いは過剰な水分が液化した液水が蓄積することがある。そして、これらの不純物ガスは、水素の分圧を低下させて発電効率を低下させたり、循環ガスの平均分子量を上昇させ水素の循環を困難にする。また液水は水素の循環を妨げる。
【００１２】
このため、燃料電池スタック１の水素出口側には、水素排出流路７とこれを開閉する水素パージ弁８が設けられている。そして、不純物ガスや液水が蓄積した際には、水素パージ弁８を短時間開き、不純物ガスや液水を系外へ排出するパージを行う。これにより、燃料電池スタック１を含む水素の循環流路内の水素分圧や循環性能を回復させることができる。
【００１３】
〔空気系の構成〕
上記燃料電池システムは、空気供給流路９を介して燃料電池スタック１に空気を圧送するコンプレッサ１０と、空気排出流路１１を介して燃料電池スタック１から排出された空気を圧力調整した後に系外に排出する空気圧力制御弁１２とを備える。なお、燃料電池スタック１に供給される空気の圧力は、圧力センサ２１により検出された空気圧力をフィードバックして空気圧力制御弁１２を駆動することによって制御される。
【００１４】
〔冷却系の構成〕
上記燃料電池システムは、冷却液流路１３を介して燃料電池スタック１に冷却液を圧送する冷却液循環ポンプ１４と、燃料電池スタック１から排出された冷却液を冷却して冷却液循環ポンプ１４に供給する熱交換器１５とを備える。
【００１５】
〔制御系の構成〕
上記燃料電池システムは、高圧水素タンク２内の水素の温度及び圧力を検出する温度センサ１６及び圧力センサ１７と、燃料電池スタック１に供給される水素の温度及び圧力を検出する温度センサ１８及び圧力センサ１９と、燃料電池スタック１に供給される空気の流量及び圧力を検出する流量センサ２０及び圧力センサ２１と、燃料電池スタック１から排出された冷却液の温度を検出する温度センサ２２と、燃料電池スタック１の出力電圧を検出する電圧センサ２３と、燃料電池スタック１の出力電流を検出する電流センサ２４と、燃料電池スタック１から取り出す電力量を制御する電力制御装置２５と、燃料電池システム全体の動作を制御するコントローラ２６とを備える。
【００１６】
なお、この実施形態では、電力制御装置２５は、ＤＣ／ＤＣコンバータにより構成されている。ＤＣ／ＤＣコンバータは、昇圧変換時と降圧変換時とでは動作するスイッチング素子が異なっており、スイッチング素子に印加される制御信号のデューティ比を変化させることにより所望の電圧を出力することができる。具体的には、昇圧時は入力電圧以上の電圧を出力するようにスイッチング素子が制御され、降圧時には入力電圧以下の電圧を出力するようにスイッチング素子が制御される。
【００１７】
また、コントローラ２６は、ＣＰＵと、プログラムＲＯＭと、作業用ＲＡＭと、入出力インタフェースとを備えたマイクロプロセッサにより構成され、ＣＰＵがプログラムＲＯＭ内に記憶された制御プログラムを実行することにより、図２に示す本発明に係る要求発電電力算出手段３１，実電流検出手段３２，実電圧検出手段３３，出力特性学習手段３４，取出電流補正量算出手段３５，及び取出電流算出手段３６として機能する。なお、これら各部の機能については後述する。
【００１８】
また、燃料電池スタック１の運転圧力は可変圧であり、燃料電池スタック１から取り出す出力が高い時には運転圧力は高くなり、逆に出力が低い時には運転圧力は低くなる。そして、このような構成を有する燃料電池システムでは、コントローラ２６が以下に示す電力制御処理を実行することにより簡素な構成で要求電力を燃料電池スタック１からの取出電流量に精度よく変換する。以下、図３に示すフローチャートを参照して、この電力制御処理を実行する際のコントローラ２６の動作について説明する。
【００１９】
［電力制御処理］
図３に示すフローチャートは、燃料電池システムが起動されるのに応じて開始となり、電力制御処理はステップＳ１の処理に進む。なお、この電力制御処理は、起動後、所定制御周期（例えば１０［ｍｓｅｃ］周期）毎に繰り返し実行されるものとする。
【００２０】
ステップＳ１の処理では、コントローラ２６が、要求発電電力算出手段３１として機能することにより、燃料電池システムに接続された電気負荷から要求される発電電力（以下、要求発電電力と表記）を算出する。なお、この要求発電電力算出処理の詳細については図４に示すフローチャートを参照して後述する。これにより、ステップＳ１の処理は完了し、電力制御処理はステップＳ２の処理に進む。
【００２１】
ステップＳ２の処理では、コントローラ２６が、出力特性学習手段３４として機能することにより、電圧センサ２３と電流センサ２４により検出された燃料電池スタック１の出力電圧と出力電流に基づいて燃料電池スタック１の電流電圧特性を学習する。なお、この電流電圧特性学習処理の詳細については図６に示すフローチャートを参照して後述する。これにより、ステップＳ２の処理は完了し、電力制御処理はステップＳ３の処理に進む。
【００２２】
ステップＳ３の処理では、コントローラ２６が、取出電流算出手段３６として機能することにより、燃料電池の基準となる電流電圧特性に基づいてステップＳ１の処理により算出された要求発電電力を出力するために必要な燃料電池スタック１からの取出電流量を算出する。また、コントローラ２６は、取出電流補正量算出手段３５として機能することにより、ステップＳ２の処理の学習結果に基づいて取出電流量の補正量を算出する。
【００２３】
そして、コントローラ２６は、取出電流算出手段３６として機能することにより、算出された取出電流量とその補正量に基づいて燃料電池スタック１の目標電流値を算出する。なお、この目標電流算出処理の詳細については図１３に示すフローチャートを参照して後述する。これにより、ステップＳ３の処理は完了し、電力制御処理はステップＳ４の処理に進む。
【００２４】
ステップＳ４の処理では、コントローラ２６が、ステップＳ３の処理により算出された目標電流値を出力するように燃料電池スタック１に供給する水素及び空気の流量や圧力を制御する。なお、このガス供給制御処理の詳細については図１６に示すフローチャートを参照して後述する。これにより、ステップＳ４の処理は完了し、電力制御処理はステップＳ５の処理に進む。
【００２５】
ステップＳ５の処理では、コントローラ２６が、燃料電池スタック１から要求発電電力を取り出すように電力制御装置２５を制御する。これにより、ステップＳ５の処理は完了し、一連の電力制御処理は終了する。
【００２６】
〔要求発電電力算出処理〕
図４に示すフローチャートは、燃料電池システムが起動されるのに応じて開始となり、要求発電電力算出処理はステップＳ１１の処理に進む。なお、この要求発電電力算出処理は、起動後、所定制御周期（例えば１０［ｍｓｅｃ］周期）毎に繰り返し実行されるものとする。
【００２７】
ステップＳ１１の処理では、コントローラ２６が、車両に設けられたアクセルセンサの出力に基づいて運転者のアクセル操作量を検出する。これにより、ステップＳ１１の処理は完了し、要求発電電力算出処理はステップＳ１２の処理に進む。
【００２８】
ステップＳ１２の処理では、コントローラ２６が、車両に設けられた車速センサの出力に基づいて車両の速度を検出する。これにより、ステップＳ１２の処理は完了し、要求発電電力算出処理はステップＳ１３の処理に進む。
【００２９】
ステップＳ１３の処理では、コントローラ２６が、図５に示すような車両の速度毎のアクセル操作量と要求発電電力の関係を示すマップデータからステップＳ１１，Ｓ１２の処理により検出されたアクセル操作量及び車両の速度に対応する要求発電電力を読み出すことにより、要求発電電力を算出する。これにより、ステップＳ１３の処理は完了し、一連の要求発電電力算出処理は終了する。
【００３０】
〔電流電圧特性学習処理〕
図６に示すフローチャートは、ステップＳ１の処理が完了するのに応じて開始となり、電流電圧特性学習処理はステップＳ２１の処理に進む。
【００３１】
ステップＳ２１の処理では、コントローラ２６が、実電流検出手段３２及び実電圧検出手段３３として機能することにより、電圧センサ２３と電流センサ２４を利用して燃料電池スタック１の出力電圧及び出力電流（以下、実電圧及び実電流と表記）を検出する。これにより、ステップＳ２１の処理は完了し、電流電圧特性学習処理はステップＳ２２の処理に進む。
【００３２】
ステップＳ２２の処理では、コントローラ２６が、温度センサ２２により検出された冷却液温度に基づいて燃料電池スタック１の温度を検出する。なお、コントローラ２６は、燃料電池スタック１の入口側及び出口側の冷却液温度の平均値を算出する等、燃料電池スタック１と運転負荷の相関関係がある箇所の温度から燃料電池スタック１の温度を推定してもよい。これにより、ステップＳ２２の処理は完了し、電流電圧特性学習処理はステップＳ２３の処理に進む。
【００３３】
ステップＳ２３の処理では、コントローラ２６が、電流電圧特性の誤学習を防止するために、燃料電池スタック１が電流電圧特性の学習処理を実施できる状態にあるか否かを判別する。そして、学習処理を実施できる状態にない場合、コントローラ２６は学習実施許可フラグの値を０に設定し、逆に学習処理を実施できる状態にある場合には、学習実施許可フラグの値を１に設定する。なお、この学習実施判定処理の詳細については図１１に示すフローチャートを参照して後述する。これにより、ステップＳ２３の処理は完了し、電流電圧特性学習処理はステップＳ２４の処理に進む。
【００３４】
ステップＳ２４の処理では、コントローラ２６が、学習実施許可フラグの値が１であるか否かを判定する。そして、判定の結果、学習実施許可フラグの値が０である場合、コントローラ２６は、燃料電池スタック１が電流電圧特性の学習処理を実施できる状態にはないと判断し、一連の電流電圧特性学習処理を終了する。一方、学習実施許可フラグの値が１である場合には、コントローラ２６は、燃料電池スタック１が電流電圧特性の学習処理を実施できる状態にあると判断し、電流電圧特性学習処理をステップＳ２５の処理に進める。
【００３５】
ステップＳ２５の処理では、コントローラ２６が、図７に示すような燃料電池スタック１の温度毎の燃料電池スタック１の実電流と基準電圧の関係を示すマップからステップＳ２１，Ｓ２２の処理により検出された実電流及び温度に対応する基準電圧を読み出すことにより、燃料電池スタック１の基準電圧を算出する。なお、コントローラ２６は、運転圧力等の燃料電池スタック１の運転状態に応じて変化するパラメータ及び基準電圧をそれぞれ入力及び出力とするマップデータや関数を用いて燃料電池スタック１の基準電圧を算出してもよい。これにより、ステップＳ２５の処理は完了し、電流電圧特性学習処理はステップＳ２６の処理に進む。
【００３６】
ステップＳ２６の処理では、コントローラ２６が、学習式を用いて燃料電池スタック１の基準となる電流電圧特性に対する実際の電流電圧特性の電圧変化を学習する。具体的には、燃料電池スタック１の基準電圧と実電圧の差ΔＰＭＩＶ（図８に示す斜線領域）は燃料電池スタック１の実電流ＰＭＩＣを用いて以下に示す数式１のように表される。そこで、コントローラ２６は、数式１を学習式として数式１のパラメータＡ（ｋ），Ｂ（ｋ）を学習パラメータとして繰り返し演算することにより、燃料電池スタック１の基準となる電流電圧特性に対する実際の電流電圧特性の電圧変化を学習する。これにより、ステップＳ２６の処理は完了し、一連の電流電圧特性学習処理は終了する。
【数１】
2007012549.tif 000003
【００３７】
なお、上記学習パラメータＡ（ｋ），Ｂ（ｋ）は燃料電池スタック１の電流電圧特性の経時的な変化に対して時々刻々と変化する特性を有する。また、燃料電池スタック１の実電圧は電圧センサ２３の分解能の影響によって計測誤差を有する。そこで、この実施形態では、コントローラ２６は、アダプティブ制御の分野で使用される適応パラメータ推定アルゴリズムとして一般的に知られているＲＬＳ（逐次最小二乗法，図９の数式参照）を利用して学習処理を行う。
【００３８】
ＲＬＳによれば、学習パラメータＡ（ｋ），Ｂ（ｋ）を統計的に算出することができるため、計測誤差に対する誤学習を防止することができ、また、ＲＬＳにおいて用いられる数式中の忘却計数λの値を０以上１以下に設定することにより、現在のデータに対する過去のデータの重みを変更できるので、燃料電池スタック１の電流電圧特性の経時的な変化に対して学習パラメータＡ（ｋ），Ｂ（ｋ）を追従させることができる。
【００３９】
なお、最尤法や一括最小二乗法等のその他の演算方法を利用して学習パラメータＡ（ｋ），Ｂ（ｋ）を算出してもよい。また、固定小数点演算を行う際、ＲＬＳにおいて用いられるＰ（ｋ）（図９中の式（１０）参照）の時間更新時に大きな演算誤差が生じ、その結果、誤学習してしまうことがある。これは、Ｐ（ｋ）は常に正定値性及び対称性の性質を持たなければならないが、固定小数点にて繰り返し演算を行う際に、量子化誤差の影響によってＰ（ｋ）の正定値性及び対称性が崩れてしまうためである。
【００４０】
このことから、この実施形態では、固定小数点演算を行う際には、Ｐ（ｋ）をＵＤ分解し、上三角行行列Ｕと対角成分Ｄをそれぞれ時間更新することにより、量子化誤差によって演算誤差が生じないようにする。以上の処理により、学習パラメータＡ（ｋ），Ｂ（ｋ）の真値がそれぞれＰＡＲＡＭ１，ＰＡＲＡＭ２である場合には、図１０に示すように学習パラメータＡ（ｋ），Ｂ（ｋ）はＰＡＲＡＭ１，ＰＡＲＡＭ２に漸近するようになる。
【００４１】
〔学習実施判定処理〕
図１１に示すフローチャートは、ステップＳ２２の処理が完了するのに応じて開始となり、学習実施判定処理はステップＳ３１の処理に進む。
【００４２】
ステップＳ３１の処理では、コントローラ２６が、学習実施許可フラグの値を０に設定し、学習実施許可フラグの初期化を行う。これにより、ステップＳ３１の処理は完了し、学習実施判定処理はステップＳ３２の処理に進む。
【００４３】
ステップＳ３２の処理では、コントローラ２６が、燃料電池スタック１の実電圧の分散値が所定値以下であるか否かを判定する。なお、所定値は電圧センサ２３の分解能の影響で生じる分散値の最大値に設定する。但し、分散値として実電流，実電圧，運転圧力，水素利用率，空気利用率等の燃料電池スタック１の運転状態に起因するその他の値を用いてもよい。これにより、ステップＳ３２の処理は完了し、学習実施判定処理はステップＳ３３の処理に進む。
【００４４】
ステップＳ３３の処理では、コントローラ２６が、燃料電池スタック１が定常発電状態にあるか否を判定する。具体的には、燃料電池スタック１の実電圧の分散値が所定値以下である場合、コントローラ２６は燃料電池スタック１が定常発電状態にあると判定し、逆に分散値が所定値以下でない場合には、コントローラ２６は燃料電池スタック１が定常発電状態にないと判定する。そして、判定の結果、燃料電池スタック１が定常発電状態にない場合、コントローラ２６は、燃料電池スタック１が電流電圧特性の学習処理を実施できる状態にはないと判断し、一連の学習実施判定処理を終了する。一方、燃料電池スタック１が定常発電状態にある場合には、コントローラ２６は学習実施判定処理をステップＳ３４の処理に進める。
【００４５】
ステップＳ３４の処理では、コントローラ２６が、燃料電池スタック１の実電流が学習可能な電流値であるか否かを判別する。具体的には、図１２に示すように、第１の所定値Ａ以下の活性化過電圧が顕著に現れる極低負荷領域や、第１の所定値Ａより大きい第２の所定値Ｂ以上の濃度過電圧が顕著に現れる極高負荷領域は、電流の変化量に対して電圧の変化が大きく、電圧を安定して検出することができない。
【００４６】
そこで、コントローラ２６は、燃料電池スタック１の実電流が第１の所定値Ａより大きく、第２の所定値Ｂより小さい場合は学習可能な電流値であると判定し、それ以外の範囲の実電流値は学習可能な電流値でないと判定する。そして、燃料電池スタック１の実電流が学習可能な電流値でないと判定した場合、コントローラ２６は、燃料電池スタック１が電流電圧特性の学習処理を実施できる状態にないと判断し、一連の学習実施判定処理を終了する。一方、燃料電池スタック１の実電流が学習可能な電流値であると判定した場合には、コントローラ２６は学習実施判定処理をステップＳ３５の処理に進める。
【００４７】
ステップＳ３５の処理では、コントローラ２６が、燃料電池スタック１の実電流と前回学習処理を実施した時の実電流の差分値の絶対値を算出し、絶対値が所定値以上であるか否かを判別する。具体的には、図１３に示すように、燃料電池スタック１の出力電流に対する基準電圧と実電圧の差ΔＰＭＩＶの関係が上述の数式１に示す学習式により表現できない出力電流領域で燃料電池スタック１が運転している場合には、狭い運転領域で連続して学習を実施し、誤学習してしまう恐れがある。
【００４８】
そこで、コントローラ２６は、燃料電池スタック１の実電流と前回学習処理を実施した時の実電流値の差分値の絶対値を算出し、絶対値が所定値以上でない場合、燃料電池スタック１が電流電圧特性の学習処理を実施できる状態にないと判断し、一連の学習実施判定処理を終了する。一方、絶対値が所定値以上である場合には、コントローラ２６は学習実施判定処理をステップＳ３６の処理に進める。
【００４９】
ステップＳ３６の処理では、コントローラ２６が、燃料電池スタック１の実電流を学習した出力電流に設定する。これにより、ステップＳ３６の処理は完了し、学習実施判定処理はステップＳ３７の処理に進む。
【００５０】
ステップＳ３７の処理では、コントローラ２６が、学習実施許可フラグの値を１に設定し、一連の学習実施判定処理を終了する。
【００５１】
〔目標電流算出処理〕
図１４に示すフローチャートは、上記ステップＳ２の処理が完了するのに応じて開始となり、目標電流算出処理はステップＳ４１の処理に進む。
【００５２】
ステップＳ４１の処理では、コントローラ２６が、燃料電池スタック１の基本的な電流電圧特性を用いてステップＳ１の処理により算出された要求発電電力に対応する目標電流の基準値を算出する。より具体的には、この実施形態では、コントローラ２６は、図１５に示すような温度毎の要求発電電力と目標電流基本値の関係を示すマップからステップＳ１，Ｓ２２の処理により得られた要求発電電力と温度に対応する目標電流基本値を読み出すことにより、燃料電池スタック１の目標電流基本値を算出する。
【００５３】
なお、図１５に示すマップは、燃料電池スタック１の基準となる電流電圧特性として、例えば稼働開始初期の電流電圧特性において、個体差による特性ばらつきの中央値に相当する特性データを用いて運転温度毎に発電電力に対する電流値を設定することにより得られる。これにより、ステップＳ４１の処理は完了し、目標電流算出処理はステップＳ４２の処理に進む。
【００５４】
ステップＳ４２の処理では、コントローラ２６が、ステップＳ２６の処理により得られた学習パラメータＡ（ｋ），Ｂ（ｋ）を用いて目標電流基本値の補正値を算出する。なお、目標電流基本値の補正値は、燃料電池スタック１の電流電圧特性が個体差や経時変化によって変化した場合、要求発電電力を得るために目標電流の補正を行うためのものであり、学習した燃料電池スタック１の電流電圧特性、すなわち、学習パラメータＡ（ｋ），Ｂ（ｋ）と要求発電電力に基づいて算出することができるが、この実施形態では、コントローラ２６は、図１６に示すような学習パラメータの値毎の要求発電電力と目標電流補正値の関係を示すマップを複数用意し、このマップを参照することによって目標電流補正値を算出する。
【００５５】
なお、図１６に示すマップは、学習パラメータＢ（ｋ）の値をある所定値に固定した場合に学習パラメータＡ（ｋ）と要求発電電力に基づいて目標電流の補正値を算出するためのものであり、図１５に示すマップの設定で使用した燃料電池スタック１の基準となる電流電圧特性に対して実際の電流電圧特性が変化した場合に、要求発電電力を得るために、ステップＳ４１の処理により算出された目標電流の基本値に対する電流の補正値を予め算出してデータを設定したものである。
【００５６】
また、図１６に示すマップを学習パラメータＢ（ｋ）の値に応じて複数用意し、学習パラメータＢ（ｋ）それぞれの値に対して予め算出した目標電流の補正値を設定する。そして、これら複数のマップを参照してそれぞれ電流補正値を算出し、学習パラメータＢ（ｋ）の値に基づいて複数の電流補正値の線形補間を行って目標電流の補正値を算出する。このように複数のマップを参照し、その結果を補間することによって、学習パラメータＡ（ｋ），Ｂ（ｋ）及び要求発電電力に基づいて目標電流の補正値を算出することができる。これにより、ステップＳ４２の処理は完了し、目標電流算出処理はステップＳ４３の処理に進む。
【００５７】
ステップＳ４３の処理では、コントローラ２６が、ステップＳ４１の処理により算出された目標電流基本値とステップＳ４２の処理により算出された補正値を加算することにより、目標電流を算出する。これにより、ステップＳ４３の処理は完了し、一連の目標電流算出処理は終了する。
【００５８】
〔ガス供給制御処理〕
図１７に示すフローチャートは、上記ステップＳ３の処理が完了するのに応じて開始となり、ガス供給制御処理はステップＳ５１の処理に進む。
【００５９】
ステップＳ５１の処理では、コントローラ２６が、燃料電池スタック１の発電効率を考慮して作成された図１８に示すような目標発電電流と目標ガス圧力の関係を示すマップからステップＳ３の処理により算出された目標発電電流に対応する目標ガス圧力を読み出すことにより目標ガス圧力を算出する。これにより、ステップＳ５１の処理は完了し、ガス供給制御処理はステップＳ５２の処理に進む。
【００６０】
ステップＳ５２の処理では、コントローラ２６が、ステップＳ５１の処理により算出された目標ガス圧力に基づいて水素圧力制御弁３を制御する。なお、水素圧力制御弁３は、圧力センサ１９により検出された水素圧力と目標ガス圧力の偏差に基づいて指令開度をフィードバック制御することにより制御される。
【００６１】
なお、このフィードバック制御は、ＰＩ制御やモデル規範型制御等、一般的によく知られている方法により行うことができる。また、水素圧力制御弁３の指令開度は、コントローラ２６から水素圧力制御弁３の駆動回路に入力され、水素圧力制御弁３は指令開度に従って駆動される。これにより、ステップＳ５２の処理は完了し、ガス供給制御処理はステップＳ５３の処理に進む。
【００６２】
ステップＳ５３の処理では、コントローラ２６が、コンプレッサ１０を制御することにより燃料電池スタック１に供給される空気の流量を制御する。具体的には、コントローラ２６は、燃料電池スタック１内部で局所的な空気供給不足が起きないような空気利用率になるように設定された図１９に示すような目標発電電流と目標空気流量の関係を示すマップからステップＳ３の処理により算出された目標発電電流に対応する目標空気流量を読み出すことにより目標空気流量を算出する。
【００６３】
次に、コントローラ２６は、コンプレッサ１０の回転数と圧力比に対する空気流量特性に基づいて設定された図２０に示すような目標ガス圧力毎の目標空気流量とコンプレッサ指令回転数の関係を示すマップから算出された目標空気流量に対応するコンプレッサ指令回転数を読み出すことによりコンプレッサ指令回転数を算出する。そして、コントローラ２６は、算出されたコンプレッサ指令回転数をコンプレッサ１０の駆動回路に出力することによりコンプレッサ１０を指令回転数で駆動させる。これにより、ステップＳ５３の処理は完了し、ガス供給制御処理はステップＳ５４の処理に進む。
【００６４】
ステップＳ５４の処理では、コントローラ２６が、ステップＳ５１の処理により算出された目標空気圧力に基づいて空気圧力制御弁１２を制御する。なお、空気圧力制御弁１２は、圧力センサ２１により検出された空気圧力と目標空気圧力の偏差に基づいて指令開度をフィードバック制御することにより制御される。また、空気圧力制御弁１２の指令開度は、コントローラ２６から空気圧力制御弁１２の駆動回路に入力され、空気圧力制御弁１２は、指令開度に従って駆動される。これにより、ステップＳ５４の処理は完了し、一連のガス供給制御処理は終了する。
【００６５】
以上の説明から明らかなように、本発明の第１の実施形態となる燃料電池システムでは、コントローラ２６が、燃料電池スタック１の基準となる出力特性に基づいて要求発電電力を出力するために必要な燃料電池からの取出電流量を算出し、燃料電池スタック１の基準となる出力特性と燃料電池スタック１の実際の出力特性の関係を学習する。そして、コントローラ２６は、学習結果に基づいて取出電流量の補正量を算出し、算出された補正量に基づいて取出電流量を補正し、補正された取出電流量を目標電流値として燃料電池スタック１に供給する水素及び空気の流量や圧力を制御する。
【００６６】
すなわち、本発明の第１の実施形態となる燃料電池システムでは、コントローラ２６が、燃料電池スタック１の出力特性の変化を学習し、学習結果に基づいて燃料電池スタック１の取出電流量を補正する。従って、本発明の第１の実施形態となる燃料電池システムによれば、簡素な構成で要求電力を燃料電池スタック１からの取出電流量に精度よく変換し、燃料電池スタック１の発電量を精度よく制御することができる。
【００６７】
また、本発明の第１の実施形態となる燃料電池システムによれば、コントローラ２６は、燃料電池スタック１の運転状態に基づいて燃料電池スタック１の基準となる電流電圧特性から燃料電池スタック１の基準電圧を算出し、燃料電池スタック１の出力電流を入力として燃料電池スタック１の基準電圧と出力電圧の差ΔＰＭＩＶを出力とする場合の入出力関係を学習するので、燃料電池スタック１の出力電流に対する電圧降下を学習し、燃料電池スタック１の出力の変化を容易に検出することができる。
【００６８】
また、本発明の第１の実施形態となる燃料電池システムによれば、燃料電池スタック１の基準となる電流電圧特性は燃料電池スタック１の出力電流と温度を入力として燃料電池スタック１の基準電圧を出力とする電流電圧特性であり、コントローラ２６は、燃料電池スタック１の出力電流と温度に基づいて燃料電池スタック１の基準電圧を算出するので、出力電流や温度が変化した場合であっても、基準電圧と出力電圧の関係を学習することができる。
【００６９】
また、本発明の第１の実施形態となる燃料電池システムによれば、コントローラ２６は、燃料電池スタック１の出力電流を入力として燃料電池スタック１の基準電圧と出力電圧の差ΔＰＭＩＶを出力とする一次関数から成る学習式を用いて入出力関係を学習するので、学習ロジックを簡素にすることができると共に、出力電流の変化に対して学習値の変化が小さい関数を用いることができる。そしてこの結果、運転条件が限定された場合であっても、単純な学習ロジックを用いて学習精度を向上させることができる。
【００７０】
また、本発明の第１の実施形態となる燃料電池システムによれば、コントローラ２６は、予め算出された取出電流量の補正量を記憶し、記憶している補正量のデータを参照して取出電流値の補正量を算出するので、高次の方程式の解を演算したり、収束演算を行う必要がなくなり、演算負荷を小さくすることができる。
【００７１】
また、本発明の第１の実施形態となる燃料電池システムによれば、コントローラ２６は、燃料電池スタック１の出力電流を入力として燃料電池スタック１の基準電圧と出力電圧の差ΔＰＭＩＶを出力とする一次関数の各項の係数に基づいて取出電流量の補正量を算出するので、取出電流量の補正量を容易に演算することができる。
【００７２】
また、本発明の第１の実施形態となる燃料電池システムによれば、コントローラ２６は、燃料電池スタック１の出力電流を入力として燃料電池スタック１の基準電圧と出力電圧の差ΔＰＭＩＶを出力とする一次関数の各項の係数に基づいて予め算出された取出電流量の補正量を記憶し、記憶している補正量のデータを参照して取出電流値の補正量を算出するので、高次の方程式の解を演算したり、収束演算を行う必要がなくなり、演算負荷を小さくすることができる。
【実施例２】
【００７３】
本発明の第２の実施形態となる燃料電池システムは、上記第１の実施形態となる燃料電池システムと同じ構成を有し、目標電流算出処理の流れが上記第１の実施形態となる燃料電池システムのそれとは異なる。そこで、以下では図２１に示すフローチャートを参照して目標電流算出処理の流れについてのみ説明し、構成及びその他の処理については説明を省略する。
【００７４】
〔目標電流算出処理〕
図２１に示すフローチャートは、上記ステップＳ２の処理が完了するのに応じて開始となり、目標電流算出処理はステップＳ６１の処理に進む。なお、ステップＳ６１，Ｓ６２の処理は図１４に示すステップＳ４１，Ｓ４２の処理と同じ内容であるので以下ではその説明を省略し、ステップＳ６３の処理から説明を始める。
【００７５】
ステップＳ６３の処理では、コントローラ２６が、燃料電池スタック１の実際の発電電力が要求発電電力と等しくなるように、燃料電池スタック１の実際の発電電力を検出し、ステップＳ６２の処理により算出された目標電流の補正値を変更する。なお、燃料電池スタック１の実際の発電電力は、電流センサ２４により検出された電流値と電圧センサ２３により検出された電圧とを乗算することにより検出することができるので、実際の発電電力と要求発電電力の差に基づいて目標電流の補正値を変更することができる。
【００７６】
また、変更量は、電力の差に比例する変更量と電力の差の積算値に比例する変更量の和から算出する方法（いわゆるＰＩ制御ロジック）等、ある状態を目標値に収束させるフィードバック制御ロジックにより算出することができる。これにより、ステップ６３の処理は完了し、目標電流算出処理はステップＳ６４の処理に進む。
【００７７】
ステップＳ６４の処理では、コントローラ６４が、ステップＳ６３の処理により算出された変更量を学習する。なお、変更量の学習は、一般的な学習ロジックを利用することにより行うことができ、運転温度や発電電流等の燃料電池スタック１の運転条件を入力、変更値を出力とした学習式等を用いて行うことができる。これにより、ステップＳ６４の処理は完了し、目標電流算出処理はステップＳ６５の処理に進む。なお、ステップＳ６５の処理は図１４に示すステップＳ４３の処理と同じであるので、以下ではその説明を省略する。
【００７８】
以上の説明から明らかなように、本発明の第２の実施形態となる燃料電池システムによれば、コントローラ２６が、要求発電電力と燃料電池スタック１の発電電力とが等しくなるように要求発電電力と発電電力の差に基づいて取出電流量の補正量を調整するので、燃料電池スタック１の実際の出力特性に合わせて取出電流量を精度よく演算することができる。
【００７９】
また、本発明の第２の実施形態となる燃料電池システムによれば、コントローラ２６が、要求発電電力と燃料電池スタック１の発電電力とが等しくなるように、要求発電電力と発電電力の差に基づいて取出電流量の補正量を学習するので、燃料電池スタック１の実際の出力特性に合わせて取出電流量を短時間で精度よく演算することができる。
【００８０】
以上、本発明者らによってなされた発明を適用した実施の形態について説明したが、この実施の形態による本発明の開示の一部をなす論述及び図面により本発明は限定されることはない。すなわち、上記実施の形態に基づいて当業者等によりなされる他の実施の形態、実施例及び運用技術等は全て本発明の範疇に含まれることは勿論であることを付け加えておく。
【図面の簡単な説明】
【００８１】
【図１】本発明の第１及び第２の実施形態となる燃料電池システムの構成を示す模式図である。
【図２】本発明に係る燃料電池システムの構成を示す機能ブロック図である。
【図３】本発明の第１及び第２の実施形態となる発電電力制御処理の流れを示すフローチャート図である。
【図４】本発明の第１及び第２の実施形態となる要求発電電力算出処理の流れを示すフローチャート図である。
【図５】車両速度毎のアクセル操作量と要求発電電力の関係を示すマップ図である。
【図６】本発明の第１及び第２の実施形態となる電流電圧特性学習処理の流れを示すフローチャート図である。
【図７】燃料電池スタックの温度毎の出力電流と基準電圧の関係を示すマップ図である。
【図８】燃料電池スタックの出力電流と、基準電圧と実電圧の差分値との関係を示す図である。
【図９】逐次最小二乗法において使用される数式を示す図である。
【図１０】学習処理に伴う学習パラメータの時間変化を示す図である。
【図１１】本発明の第１及び第２の実施形態となる学習実施判定処理の流れを示すフローチャート図である。
【図１２】極低負荷領域及び極高負荷領域を示す図である。
【図１３】燃料電池スタックの出力電流と、基準電圧と実電圧の差分値との関係が学習式により表現できない出力電流領域を示す図である。
【図１４】本発明の第１の実施形態となる目標電流算出処理の流れを示すフローチャート図である。
【図１５】燃料電池スタックの温度毎の要求発電電力と目標電流基本値の関係を示す図である。
【図１６】学習パラメータ毎の要求発電電力と目標電流補正値の関係を示す図である。
【図１７】本発明の第１及び第２の実施形態となるガス供給制御処理の流れを示すフローチャート図である。
【図１８】目標発電電流と目標ガス圧力の関係を示すマップ図である。
【図１９】目標発電電流と目標空気流量の関係を示すマップ図である。
【図２０】目標ガス圧力毎の目標空気流量とコンプレッサ指令回数の関係を示すマップ図である。
【図２１】本発明の第２の実施形態となる目標電流算出処理の流れを示すフローチャート図である。
【符号の説明】
【００８２】
１：燃料電池スタック
２：高圧水素タンク
３：水素圧力制御弁
４：水素供給流路
５：水素循環流路
６：エゼクタ
７：水素排出流路
８：水素パージ弁
９：空気供給流路
１０：コンプレッサ
１１：空気排出流路
１２：空気圧力制御弁
１３：冷却液流路
１４：冷却液循環ポンプ
１５：熱交換器
１６，１８，２２：温度センサ
１７，１９，２１：圧力センサ
２０：流量センサ
２３：電圧センサ
２４：電流センサ
２５：電力制御装置
２６：コントローラ
【図１】
2007012549.tif 000004
【図２】
2007012549.tif 000005
【図３】
2007012549.tif 000006
【図４】
2007012549.tif 000007
【図５】
2007012549.tif 000008
【図６】
2007012549.tif 000009
【図７】
2007012549.tif 000010
【図８】
2007012549.tif 000011
【図９】
2007012549.tif 000012
【図１０】
2007012549.tif 000013
【図１１】
2007012549.tif 000014
【図１２】
2007012549.tif 000015
【図１３】
2007012549.tif 000016
【図１４】
2007012549.tif 000017
【図１５】
2007012549.tif 000018
【図１６】
2007012549.tif 000019
【図１７】
2007012549.tif 000020
【図１８】
2007012549.tif 000021
【図１９】
2007012549.tif 000022
【図２０】
2007012549.tif 000023
【図２１】
2007012549.tif 000024