"アノードガスである水素を用いて発電する燃料電池を備える燃料電池システムであって、前記燃料電池の出力信号に基づいて、前記燃料電池の内部インピーダンスの位相特性を算出する位相特性算出手段と、前記内部インピーダンスの位相特性に基づいて、前記燃料電池内の水素濃度を算出する水素濃度算出手段と、を備えることを特徴とする燃料電池システム。前記燃料電池の出力信号が所定周波数を有する交流信号となるように前記燃料電池の出力を制御する出力制御手段をさらに備え、前記位相特性算出手段は、前記燃料電池の出力信号である交流電流及び交流電圧に基づいて、交流電流に対する交流電圧の位相遅れを算出し、前記水素濃度算出手段は、交流電流に対する交流電圧の位相遅れに基づいて、前記燃料電池内の水素濃度を算出することを特徴とする請求項1に記載の燃料電池システム。前記位相特性算出手段は、前記燃料電池の出力信号である交流電流に基づいて、交流電流の振幅を算出する電流振幅算出部と、前記燃料電池の出力信号である交流電圧に基づいて、交流電圧の振幅を算出する電圧振幅算出部と、前記燃料電池の出力信号である交流電流及び交流電圧と、前記電流振幅算出部によって算出された交流電流の振幅とに基づいて、交流電圧の実部成分を算出する電圧実部算出部と、前記電圧実部算出部によって算出された交流電圧の実部成分と、前記電圧振幅算出部によって算出された交流電圧の振幅とに基づいて、交流電流に対する交流電圧の位相遅れを算出する位相遅れ算出部と、を備えることを特徴とする請求項2に記載の燃料電池システム。前記燃料電池の出力信号が所定周波数を有する交流信号となるように前記燃料電池の出力を制御する出力制御手段をさらに備え、前記位相特性算出手段は、前記燃料電池の出力信号である交流電流及び交流電圧に基づいて、前記燃料電池の内部インピーダンスの虚部成分を算出し、前記水素濃度算出手段は、内部インピーダンスの虚部成分に基づいて、前記燃料電池内の水素濃度を算出することを特徴とする請求項1に記載の燃料電池システム。前記燃料電池から排出された水素を含むアノードオフガスを外部に排出するための排出通路と、外部に排出されるアノードオフガスの流量を調整する排出流量調整部と、前記水素濃度算出手段によって算出された水素濃度が低下するほど、アノードオフガスの排出流量が大きくなるように前記排出流量調整部を制御する排出流量制御手段と、をさらに備えることを特徴とする請求項1から請求項4のいずれか一つに記載の燃料電池システム。前記水素濃度算出手段によって算出された水素濃度に基づいて、前記燃料電池に供給する水素の圧力条件を設定する圧力条件設定手段をさらに備えることを特徴とする請求項1から請求項5のいずれか一つに記載の燃料電池システム。前記圧力条件設定手段は、水素濃度が低下するほど前記燃料電池に供給する水素の供給圧力を大きく設定することを特徴とする請求項6に記載の燃料電池システム。前記圧力条件設定手段は、システム始動時には、水素濃度が低下するほど、前記燃料電池に供給する水素の供給圧力を大きく設定するとともに圧力上昇速度を速く設定することを特徴とする請求項6に記載の燃料電池システム。前記燃料電池に対する要求出力電流を算出する要求出力電流算出手段をさらに備え、前記圧力条件設定手段は、システム始動後の発電中には、水素濃度が低下するほど前記燃料電池に供給される水素の供給圧力を大きく設定するとともに、前記要求出力電流に基づいて下限供給圧力からの圧力上昇代を設定することを特徴とする請求項6に記載の燃料電池システム。前記燃料電池から排出された未反応の水素を前記燃料電池のアノードガス供給側に還流するための還流通路と、還流される水素の流量を調整する還流流量調整部と、前記水素濃度算出手段によって算出された水素濃度が低下するほど、水素の還流流量が大きくなるように前記還流流量調整部を制御する還流流量制御手段と、をさらに備えることを特徴とする請求項1から請求項5のいずれか一つに記載の燃料電池システム。しかしながら、特許文献1に記載の燃料電池システムでは、水素還流通路に設けられた逆止弁の上流側及び下流側の圧力に基づいて水素の圧力損失を検出するための差圧計が必要となり、水素濃度を算出するシステム構成が比較的複雑なものとなっている。そこで、本発明は、上記した問題点に鑑みてなされたものであり、簡素な構成で、燃料電池内の水素濃度を算出可能な燃料電池システムを提供することを目的とする。本発明は、アノードガスである水素を用いて発電する燃料電池を備える燃料電池システムである。燃料電池システムは、燃料電池の出力信号に基づいて燃料電池の内部インピーダンスの位相特性を算出する位相特性算出手段と、内部インピーダンスの位相特性に基づいて燃料電池内の水素濃度を算出する水素濃度算出手段と、を備えることを特徴とする。本発明の燃料電池システムは、燃料電池の出力信号から得られる燃料電池の内部インピーダンスの位相特性に基づいて燃料電池内における水素濃度を算出するように構成されているので、簡素な構成で燃料電池内の水素濃度の算出が可能となる。以下、図面等を参照して、本発明の実施形態について説明する。第1実施形態燃料電池は、電解質膜を燃料極としてのアノード電極と酸化剤極としてのカソード電極とで挟んで構成されており、アノード電極に供給される水素を含有するアノードガス及びカソード電極に供給される酸素を含有するカソードガスを用いて発電する。アノード電極及びカソード電極の両電極において進行する電気化学反応は、以下の通りである。アノード電極:2H2→4H4e-1カソード電極:4H4e-O2→2H2O2これら12の電気化学反応によって、燃料電池は1Vボルト程度の起電力を生じる。このような燃料電池を自動車用動力源として使用する場合には、要求される電力が大きいため、数百枚の燃料電池を積層した燃料電池スタックとして使用する。そして、燃料電池スタックにアノードガス及びカソードガスを供給する燃料電池システムを構成して、車両を駆動させるための電力を取り出す。図1は、本発明の第1実施形態による燃料電池システム100の概略構成図である。燃料電池システム100は、燃料電池スタック1と、アノードガス供給装置2と、カソードガス供給装置3と、冷却装置4と、インバータ5と、駆動モータ6と、バッテリ7と、DC/DCコンバータ8と、コントローラ60と、を備える。燃料電池スタック1は、所定枚数の燃料電池10を積層して構成されている。燃料電池スタック1は、アノードガスとしての水素及びカソードガスとしての空気の供給を受けて発電し、車両を駆動する駆動モータ6等の各種電装部品に電力を供給する。燃料電池スタック1は、電力を取り出すための出力端子として、アノード側端子11とカソード側端子12とを有している。アノードガス供給装置2は、高圧タンク21と、アノードガス供給通路22と、調圧弁23と、圧力センサ24と、アノードガス排出通路25と、バッファタンク26と、パージ通路27と、パージ弁28と、を備える。高圧タンク21は、燃料電池スタック1に供給されるアノードガスとしての水素を高圧状態に保って貯蔵する容器である。アノードガス供給通路22は、高圧タンク21から排出されたアノードガスを燃料電池スタック1に供給するための通路である。アノードガス供給通路22の一端は高圧タンク21に接続され、他端は燃料電池スタック1のアノードガス入口部に接続される。調圧弁23は、連続的又は段階的に開度を調節可能な電磁弁であって、アノードガス供給通路22に設置される。調圧弁23は、高圧タンク21から排出された高圧状態のアノードガスを所定の圧力に調節する。調圧弁23の開度はコントローラ60によって制御される。圧力センサ24は、調圧弁23よりも下流側のアノードガス供給通路22に設けられる。圧力センサ24は、アノードガス供給通路22を流れるアノードガスの圧力を検出する。圧力センサ24で検出されたアノードガスの圧力は、バッファタンク26や燃料電池スタック1内部のアノードガス流路等を含むアノード系全体の圧力を代表する。アノードガス排出通路25は、燃料電池スタック1とバッファタンク26とを連通する通路である。アノードガス排出通路25の一端は燃料電池スタック1のアノードガス出口部に接続され、他端はバッファタンク26の上部に接続される。アノードガス排出通路25には、電気化学反応に使用されなかった余剰のアノードガスと、燃料電池スタック1内においてカソード側からアノードガス流路へとリーククロスオーバーしてきた窒素や水蒸気等を含む不純ガスとの混合ガス以下、アノードオフガスという。が排出される。バッファタンク26は、アノードガス排出通路25を流れてきたアノードオフガスを一時的に蓄える容器である。アノードオフガスに含まれる水蒸気の一部は、バッファタンク26内で凝縮して凝縮水となり、アノードオフガスから分離される。パージ通路27は、バッファタンク26を外部に連通させる排出通路である。パージ通路27の一端はバッファタンク26の下部に接続され、パージ通路27の他端は開口端として形成される。バッファタンク26に蓄えられたアノードオフガスは、後述のカソードガス排出通路35からパージ通路27に流入するカソードオフガスによって稀釈され、凝縮水とともにパージ通路27の開口端から外部へ排出される。パージ弁28は、連続的又は段階的に開度を調節可能な電磁弁であり、パージ通路27に設置される。パージ弁28の開度を調節することで、パージ通路27から外部へ排出されるアノードオフガスの流量が調整される。パージ弁28の開度はコントローラ60によって制御される。カソードガス供給装置3は、カソードガス供給通路31と、フィルタ32と、コンプレッサ33と、圧力センサ34と、カソードガス排出通路35と、調圧弁36と、を備える。カソードガス供給通路31は、燃料電池スタック1に供給されるカソードガスである空気が流れる通路である。カソードガス供給通路31の一端はフィルタ32に接続され、他端は燃料電池スタック1のカソードガス入口部に接続される。フィルタ32は、外部から取り込まれる空気に含まれる塵や埃等の異物を除去するものである。フィルタに32によって異物が除去された空気が、燃料電池スタック1に供給されるカソードガスとなる。コンプレッサ33は、フィルタ32と燃料電池スタック1との間のカソードガス供給通路31に設置される。コンプレッサ33は、フィルタ32を介して取り込まれたカソードガスを燃料電池スタック1に圧送する。圧力センサ34は、コンプレッサ33よりも下流側のカソードガス供給通路31に設けられる。圧力センサ34は、カソードガス供給通路31を流れるカソードガスの圧力を検出する。圧力センサ34で検出されたカソードガスの圧力は、燃料電池スタック1内部のカソードガス流路等を含むカソード系全体の圧力を代表する。カソードガス排出通路35は、燃料電池スタック1とアノードガス供給装置2のパージ通路27とを連通する通路である。カソードガス排出通路35の一端は燃料電池スタック1のカソードガス出口部に接続され、他端はパージ弁28よりも下流側のパージ通路27に接続される。燃料電池スタック1において電気化学反応に使用されなかったカソードガスは、カソードオフガスとして、カソードガス排出通路35を介してパージ通路27に排出される。調圧弁36は、連続的又は段階的に開度を調節可能な電磁弁であって、カソードガス排出通路35に設置される。調圧弁36は、コントローラ60によって開度が制御され、燃料電池スタック1に供給されるカソードガスの圧力を調整する。冷却装置4は、冷却水によって燃料電池スタック1を冷却するための装置である。冷却装置4は、冷却水循環通路41と、冷却水循環ポンプ42と、ラジエータ43と、冷却水温度センサ44,45と、を備える。冷却水循環通路41は、燃料電池スタック1を冷却するための冷却水が流れる通路である。冷却水循環通路41の一端は燃料電池スタック1の冷却水入口部に接続され、他端は燃料電池スタック1の冷却水出口部に接続される。冷却水循環ポンプ42は、冷却水を循環させる圧送装置であって、冷却水循環通路41に設置される。ラジエータ43は、燃料電池スタック1から排出された冷却水を冷却するための放熱器であって、冷却水循環ポンプ42よりも上流側の冷却水循環通路41に設置される。冷却水温度センサ44,45は、冷却水の温度を検出するセンサである。冷却水温度センサ44は、燃料電池スタック1の冷却水入口部寄りの冷却水循環通路41に設けられ、燃料電池スタック1に流入する冷却水の温度を検出する。これに対して、冷却水温度センサ45は、燃料電池スタック1の冷却水出口部寄りの冷却水循環通路41に設けられ、燃料電池スタック1から排出された冷却水の温度を検出する。インバータ5は、スイッチ部51及び平滑コンデンサ52を備え、アノード側端子11及びカソード側端子12を介して燃料電池スタック1に電気的に接続される。スイッチ部51は、複数のスイッチング素子から構成され、直流を交流に又は交流を直流に変換する。平滑コンデンサ52は、燃料電池スタック1と並列に接続されて、スイッチ部51でのスイッチング等によって生じるリプルを抑制する。駆動モータ6は、三相交流モータであって、インバータ5から供給される交流電流によって作動して、車両を駆動させるトルクを発生する。バッテリ7は、DC/DCコンバータ8を介して、駆動モータ6及び燃料電池スタック1と電気的に接続される。バッテリ7は、リチウムイオン二次電池等の充放電可能な二次電池である。DC/DCコンバータ8は、燃料電池スタック1に電気的に接続される。DC/DCコンバータ8は、燃料電池スタック1の電圧を昇降圧させる双方向性の電圧変換機であり、直流入力から直流出力を得るとともに入力電圧を任意の出力電圧に変換する。コントローラ60は、中央演算装置CPU、読み出し専用メモリROM、ランダムアクセスメモリRAM、及び入出力インタフェースI/Oインタフェースを備えたマイクロコンピュータで構成される。コントローラ60には、圧力センサ24,34や冷却水温度センサ44,45の他に、燃料電池スタック1の出力電流を検出する電流センサ61や燃料電池スタック1の出力電圧を検出する電圧センサ62、車両に備えられるアクセルペダルの踏み込み量を検出するアクセルペダルセンサ63、バッテリ7の充電量を検出するSOCセンサ64からの検出信号が、燃料電池システム100の運転状態を検出するための信号として入力する。コントローラ60は、これらの入力信号に基づいて調圧弁23を周期的に開閉して、アノード圧を周期的に増減圧させる脈動運転を行う。アノードガス非循環型の燃料電池システム100の場合、調圧弁23を開いたままにして高圧タンク21から燃料電池スタック1にアノードガスを供給し続けてしまうと、燃料電池スタック1から排出された未使用のアノードガスを含むアノードオフガスがパージ通路27を介して外部へ排出され続けてしまうので、アノードガスを無駄に使用することとなる。そこで、本実施形態では、調圧弁23を周期的に開閉し、アノード圧を周期的に増減圧させる脈動運転を行うのである。脈動運転を行うことで、バッファタンク26に溜めたアノードオフガスを、アノード圧の減圧時に燃料電池スタック1に逆流させることができる。これにより、アノードオフガス中のアノードガスを再利用することができ、外部へ排出されるアノードガス量を減らすことができ、無駄をなくすことができる。図2を参照して、燃料電池システム100での脈動運転について説明する。図2は、燃料電池システム100の定常運転時における脈動運転について説明する図である。図2Aに示すように、コントローラ60は、燃料電池システム100の運転状態に基づいて燃料電池スタック1の目標出力を算出し、目標出力に応じたアノード圧の上限値及び下限値を設定する。そして、設定したアノード圧の上限値及び下限値の間でアノード圧を周期的に増減圧させる。具体的には、時刻t1でアノード圧が下限値に達したら、図2Bに示すように、少なくともアノード圧を上限値まで増圧させることができる開度まで調圧弁23を開く。この状態のときは、アノードガスは高圧タンク21から燃料電池スタック1に供給され、バッファタンク26へと排出される。時刻t2でアノード圧が上限値に達したら、図2Bに示すように調圧弁23を全閉とし、高圧タンク21から燃料電池スタック1へのアノードガスの供給を停止する。そうすると、前述した1の電気化学反応によって、燃料電池スタック1内のアノードガス流路に残されたアノードガスが時間の経過とともに消費され、アノードガスの消費分だけアノード圧が低下する。燃料電池スタック1内のアノードガスがある程度消費されると、バッファタンク26の圧力が一時的に燃料電池スタック1のアノードガス流路の圧力よりも高くなるため、バッファタンク26から燃料電池スタック1へとアノードオフガスが逆流する。その結果、燃料電池スタック1のアノードガス流路に残されたアノードガスと、バッファタンク26から逆流したアノードオフガス中のアノードガスが時間の経過とともに消費される。時刻t3でアノード圧が下限値に達したら、時刻t1の時と同様に調圧弁23が開かれる。そして、時刻t4で再びアノード圧が上限値に達したら、調圧弁23を全閉とする。このように調圧弁23を周期的に開閉することで、脈動運転が行われる。上記した燃料電池システム100では、システム運転状態を正常に維持するため、燃料電池スタック1の内部インピーダンス燃料電池10の電解質膜の内部インピーダンスを算出して燃料電池スタック1の含水量燃料電池10の電解質膜の湿潤度等を管理したり、燃料電池スタック1内におけるアノードガス濃度以下、水素濃度という。を算出してアノード系内における不純ガスの蓄積状態等を管理したりする。まず、図3~図5を参照して、燃料電池スタック1の内部インピーダンスの算出について説明する。図3は、燃料電池燃料電池スタックの等価回路を示す模式図である。図4は、コントローラ60が実行する燃料電池スタック1の内部インピーダンス算出処理のフローチャートである。図5は、逆ノッチフィルタの周波数-振幅特性を示す図である。図3に示すように、燃料電池の等価回路は、膜抵抗Rmemと、アノード電極側の電荷移動抵抗Ra及び電気二重層容量Caと、カソード電極側の電荷移動抵抗Rc及び電気二重層容量Ccとによって表すことができる。なお、燃料電池では、アノード電極の方が電極反応しやすいので、アノード電極の触媒層の白金担持量がカソード電極の触媒層の白金担持量よりも少なく、アノード側の電気二重層容量Caはカソード側の電気二重層容量Ccよりも小さく設定されている。このような等価回路に、例えば周波数が1kHz程度の高周波交流電流高周波交流信号を重畳した場合には、電荷移動抵抗Raと電気二重層容量Caとの合成インピーダンス及び電荷移動抵抗Rcと電気二重層容量Ccとの合成インピーダンスを無視でき、電圧振幅値ΔVを電流振幅値ΔIを除することで、燃料電池の膜抵抗Rmem、つまり燃料電池の内部インピーダンスZを算出することができる。図4を参照して、燃料電池システム100のコントローラ60が実行する内部インピーダンス算出処理について説明する。燃料電池スタック1の内部インピーダンス算出処理は、従来から知られている交流インピーダンス法に基づくものである。内部インピーダンス算出処理は、燃料電池スタック1の内部インピーダンスの算出が必要となる所定タイミングで実行される。S101ステップ101において、コントローラ60は、車両運転状態に応じて設定される燃料電池スタック1の目標燃料電池電圧に1kHzの交流電圧値を加算したものを、今回の目標燃料電池電圧として設定する。S102において、コントローラ60は、S101で設定した目標燃料電池電圧となるようにDC/DCコンバータ8を制御する。DC/DCコンバータ8を制御することで、燃料電池の出力信号が1kHzの周波数を含んだ交流電圧及び交流電流となる。S103において、コントローラ60は、電流センサ61を用いて燃料電池スタック1の出力電流値を検出するとともに、電圧センサ62を用いて燃料電池スタック1の出力電圧値を検出する。S104において、コントローラ60は、S103で検出した交流電流値及び交流電圧値の1kHz成分を逆ノッチフィルタにより抽出し、1kHzにおける交流電流値及び交流電圧値を算出する。なお、逆ノッチフィルタは、図5に示すように、通過帯域中心が1kHzに設定された周波数-振幅特性を有するフィルタである。S105において、コントローラ60は、交流電流値の絶対値を100ms間積算して、電流積算値を算出する。S106において、コントローラ60は、交流電圧値の絶対値を100ms間積算して、電圧積算値を算出する。S107において、コントローラ60は、S106で算出した電圧積算値をS105で算出した電流積算値で除し、燃料電池スタック1の内部インピーダンスZを算出して、内部インピーダンス算出処理を終了する。本願出願人は、上記のように算出される燃料電池スタック1の内部インピーダンスZと、燃料電池スタック1内の水素濃度との間に、図6及び図7に示すような相関があることを見出した。図6は、1kHzの交流出力信号に基づいて算出された燃料電池スタック1の内部インピーダンスを複素平面上に示した図である。横軸は内部インピーダンスの実部であり、縦軸は内部インピーダンスの虚部である。図7は、燃料電池スタック1内の水素濃度と内部インピーダンスの位相遅れθとの関係を示す図である。図6及び図7に示すように、燃料電池スタック1内の水素濃度が低下するほど、出力される交流電流に対する内部インピーダンスZの位相遅れθが大きくなる。この位相遅れは、燃料電池スタック1内の水素濃度が低下することで、図3におけるアノード電極側の電荷移動抵抗Raが増加し電気二重層容量Caにも交流電流が流れるようになって、電気二重層容量Ca、Ccの合成値が小さくなることに起因して生じるものである。本実施形態の燃料電池システム100では、燃料電池スタック1内における水素濃度と、燃料電池スタック1の内部インピーダンスの位相遅れとに相関があることを利用して、燃料電池スタック1内の水素濃度を算出する。図8及び図9を参照して、燃料電池スタック1内の水素濃度の算出について説明する。図8は、コントローラ60が実行する水素濃度算出処理を示すフローチャートである。図9は、1kHzにおける交流電流に対する交流電圧の位相遅れと、水素濃度との関係を示す図である。図8に示す水素濃度算出処理は、内部インピーダンス算出処理の実行後や水素濃度の算出が必要となる所定タイミングで実行される。S201において、コントローラ60は、燃料電池スタック1の出力信号が1kHzの交流信号を含むようにDC/DCコンバータ8を制御して、電流センサ61により交流電流値を検出し、電圧センサ62により交流電圧値を検出する。S202において、コントローラ60は、検出された交流電流値に既知のフーリエ変換処理を施して、1kHzにおける交流電流の位相角を算出する。S203において、コントローラ60は、検出された交流電圧値に既知のフーリエ変換処理を施して、1kHzにおける交流電圧の位相角を算出する。S204において、コントローラ60は、算出された交流電流の位相角及び交流電圧の位相角に基づいて、交流電流に対する交流電圧の位相遅れθを算出する。この交流電流に対する交流電圧の位相遅れθは、燃料電池スタック1の内部インピーダンスの位相遅れに相当するものである。S205において、コントローラ60は、図9に示す位相遅れθ-水素濃度特性を参照し、S204で算出した交流電流に対する交流電圧の位相遅れθに基づいて燃料電池スタック1内における水素濃度を算出して、水素濃度算出処理を終了する。なお、図9の位相遅れθ-水素濃度特性は、燃料電池スタック1内における水素濃度を算出するために使用されるデータであって、予め設定されたものである。位相遅れθ-水素濃度特性は、交流電流に対する交流電圧の位相遅れθが小さくなるほど、水素濃度が高くなるように設定されている。次に、図10~図17を参照して、算出された水素濃度に基づいて、コントローラ60が実行する各種処理について説明する。図10及び図11を参照して、燃料電池システム100におけるアノード系内の不純ガスの排出処理について説明する。図10は、コントローラ60が実行する不純ガス排出処理を示すフローチャートである。図11は、水素濃度とパージ弁開度との関係を示す図である。図10に示す不純ガス排出処理は、イグニッションスイッチがオンされてからオフされるまでの間、所定演算周期例えば100マイクロ秒周期で実行される。S301において、コントローラ60は、図11に示す水素濃度-パージ弁開度特性を参照し、水素濃度算出処理で算出された燃料電池スタック1内の水素濃度に基づいてパージ弁28の開度を決定する。図11の水素濃度-パージ弁開度特性は、パージ弁28の開度を決定するために使用されるデータであって、予め設定されたものである。水素濃度-パージ弁開度特性は、水素濃度が低下するほど、パージ弁28の開度が大きくなるように設定されている。燃料電池スタック1内の水素濃度が低下するほど、燃料電池スタック1内に窒素等の不純ガスが多く存在していると推定されるため、パージ弁28の開度を大きくして外部に排出されるアノードオフガスの流量を増加させることで、バッファタンク26から燃料電池スタック1内に不純ガスが逆流することを抑制する。S302において、コントローラ60は、S301で決定された開度となるようにパージ弁28を制御して、不純ガス排出処理を終了する。上記した不純ガス排出処理により、燃料電池スタック1内における水素濃度の低下を防ぐことができ、燃料電池スタック1の発電効率の悪化を抑制することが可能となる。図12~図14を参照して、システム始動時に燃料電池スタック1に水素を供給する水素供給処理について説明する。図12は、コントローラ60が実行するシステム始動時の水素供給処理を示すフローチャートである。図13は、システム始動時における水素濃度と目標アノード入口圧力との関係を示す図である。図14は、システム始動時における水素濃度と圧力上昇速度との関係を示す図である。図12に示すシステム始動時の水素供給処理は、イグニッションスイッチがオンされ、燃料電池システムが始動起動する時に実行される。S401及びS402において、コントローラ60は、システム始動時に燃料電池スタック1に供給する水素の圧力条件アノードガス圧力条件を設定する。S401では、コントローラ60は、図13に示す水素濃度-目標アノード入口圧力特性を参照し、システム始動時に算出された水素濃度に基づいて目標アノード入口圧力を決定する。目標アノード入口圧力は、燃料電池スタック1のアノードガス入口部における水素供給圧力である。なお、システム始動時に算出される水素濃度は、アノードガスが燃料電池スタック1に供給される前の水素濃度である。図13の水素濃度-目標アノード入口圧力特性は、目標アノード入口圧力を決定するために使用されるデータであって、予め設定されたものである。水素濃度-目標アノード入口圧力特性は、水素濃度が低下するほど、目標アノード入口圧力が大きくなるように設定されている。なお、水素濃度が所定濃度よりも低くなると、目標アノード入口圧力は所定の最大圧力に設定される。S402では、コントローラ60は、図14に示す水素濃度-圧力上昇速度特性を参照し、システム始動時に算出された水素濃度に基づいて圧力上昇速度を決定する。図14の水素濃度-圧力上昇速度特性は、目標アノード入口圧力までアノード圧を上昇させる時の上昇速度を決定するために使用されるデータであって、予め設定されたものである。水素濃度-圧力上昇速度特性は、水素濃度が低下するほど、圧力上昇速度が速くなるように設定されている。なお、水素濃度が所定濃度よりも低くなると、圧力上昇速度は所定の最高速度に設定される。S403において、コントローラ60は、圧力センサ24により検出されるアノード圧が、S403で決定された圧力上昇速度でS402で決定された目標アノード入口圧力まで上昇するように調圧弁23をPID制御して、水素供給処理を終了する。システム始動時において燃料電池スタック1内に空気が留まっている場合にアノードガスである水素を緩やかに供給すると、いわゆる水素フロントに起因してカソード側の触媒が劣化することがある。燃料電池システム100では、システム始動時にアノード系内が空気で満たされているような場合、つまり燃料電池スタック1内の水素濃度が低い場合には、目標アノード入口圧力を大きくしかつ圧力上昇速度を速めるので、アノードガスの強い流れによって燃料電池スタック1内に留まっている空気をバッファタンク26に排出することができる。これにより、システム始動時における燃料電池スタック1での水素フロントの発生を抑制することが可能となる。図15~図17を参照して、システム始動後の発電中に燃料電池スタック1に水素を供給する水素供給処理について説明する。図15は、システム始動後の発電中に燃料電池システム100のコントローラ60が実行する水素供給処理を示すフローチャートである。図16は、システム始動後の発電中における水素濃度と目標アノード入口下限圧力との関係を示す図である。図17は、システム始動後の発電中における水素濃度とアノード圧力上昇代との関係を示す図である。システム始動後の発電中においては、燃料電池システム100は、図12に示した水素供給処理ではなく、図15に示した水素供給処理を実行する。図15に示すように、コントローラ60は、S501及びS502において燃料電池スタック1に供給するアノードガスの圧力条件を設定する。S501において、コントローラ60は、図16に示す水素濃度-目標アノード入口下限圧力特性を参照し、システム始動後の発電中に算出された水素濃度に基づいて目標アノード入口下限圧力を決定する。目標アノード入口下限圧力は、車両を走行させるために必要な最低限のアノード圧である。図16の水素濃度-目標アノード入口下限圧力特性は、目標アノード入口下限圧力を決定するために使用されるデータであって、予め設定されたものである。水素濃度-目標アノード入口下限圧力特性は、水素濃度が低下するほど、目標アノード入口下限圧力が大きくなるように設定されている。また、水素濃度-目標アノード入口下限圧力特性は、燃料電池スタック1に対する要求出力電流毎に設定されており、要求出力電流が大きくなるほど同水素濃度での目標アノード入口下限圧力が大きくなるように設定されている。なお、水素濃度が第1所定濃度よりも低い場合には、目標アノード入口圧力は、要求出力電流によって定まる水素濃度-目標アノード入口下限圧力特性に基づいて所定の最大圧力に設定される。また、水素濃度が第2所定濃度よりも高い場合には、目標アノード入口圧力は、要求出力電流によって定まる水素濃度-目標アノード入口下限圧力特性に基づいて所定の最小圧力に設定される。S502において、コントローラ60は、図17に示す要求出力電流-アノード圧力上昇代特性を参照し、燃料電池スタック1に対する要求出力電流に基づいてアノード圧力上昇代を決定する。アノード圧力上昇代は、目標アノード入口下限圧力からの圧力上昇量を示す値である。また、燃料電池スタック1に対する要求出力電流は、アクセルペダルセンサ63の検出値に基づいてコントローラ60が算出する。このように、コントローラ60は要求出力電流算出手段を含んでいる。図17の要求出力電流-アノード圧力上昇代特性は、アノード圧力上昇代を決定するために使用されるデータであって、予め設定されたものである。要求出力電流-アノード圧力上昇代特性は、要求出力電流が大きくなるほどアノード圧力上昇代が大きくなるように設定されている。S503において、コントローラ60は、圧力センサ24により検出されるアノード圧が、目標アノード入口下限圧力にアノード圧力上昇代を加えた圧力まで上昇するように調圧弁23をPID制御して、水素供給処理を終了する。燃料電池システム100では、システム始動後の発電中において、要求出力電流及び燃料電池スタック1内の水素濃度に応じた目標アノード入口下限圧力を設定するとともに要求出力電流に応じたアノード圧力上昇代を設定するので、発電中における燃料電池スタック1での水素濃度不足を防止できる。これにより、水素濃度不足に起因する燃料電池スタック1の劣化を抑制することが可能となる。上記した本実施形態の燃料電池システム100によれば、以下の効果を得ることができる。燃料電池システム100では、燃料電池スタック1内の水素濃度と相関関係のある燃料電池スタック1の内部インピーダンスの位相特性を利用して、燃料電池スタック1内の水素濃度を算出する。具体的には、燃料電池スタック1の出力信号が所定周波数を含む交流信号となるように燃料電池スタック1を制御し、燃料電池スタック1から出力される交流電流に対する交流電圧の位相遅れを算出し、交流電流に対する交流電圧の位相遅れに基づいて燃料電池スタック1内の水素濃度を算出する。このように、燃料電池スタック1の内部インピーダンスの測定等に使用される交流電流及び交流電圧に基づいて水素濃度を算出するので、従来よりも簡素な構成で水素濃度を算出することが可能となる。第2実施形態次に、本発明の第2実施形態による燃料電池システム100について説明する。本実施形態の燃料電池システム100は、燃料電池スタック1の内部インピーダンスの虚部成分に基づいて水素濃度を算出する点において、第1実施形態の燃料電池システムと相違する。以下、その相違点を中心に説明する。なお、以下の各実施形態では、第1実施形態と同じ機能を果たす構成等には同一の符号を用い、重複する説明を適宜省略する。図18は、1kHzの交流出力信号に基づいて算出された燃料電池スタック1の内部インピーダンスを複素平面上に示した図である。図18に示すように、燃料電池スタック1内の水素濃度が低下するほど、燃料電池スタック1の内部インピーダンスの位相遅れθは大きくなる。第1実施形態では交流電流に対する交流電圧の位相遅れを内部インピーダンスの位相遅れとして捉えたが、第2実施形態では内部インピーダンスの虚部成分Zimを内部インピーダンスの位相遅れとして捉える。内部インピーダンスの位相遅れθが大きくなるほど、内部インピーダンスの虚部成分Zimも大きくなる。第2実施形態による燃料電池システム100では、内部インピーダンスの位相遅れθと相関する内部インピーダンスの虚部成分Zimを用いて燃料電池スタック1の水素濃度を算出する。図19及び図20を参照して、燃料電池スタック1内の水素濃度の算出について説明する。図19は、第2実施形態による燃料電池システム100のコントローラ60が実行する水素濃度算出処理を示すフローチャートである。図20は、燃料電池スタック1の内部インピーダンスの虚部成分Zimと、水素濃度との関係を示す図である。図19及び図20は、第1実施形態において説明した図8及び図9に置き換わるものである。図19に示す水素濃度算出処理は、内部インピーダンス算出処理の実行後や水素濃度の算出が必要となる所定タイミングで実行される。S201において、コントローラ60は、燃料電池スタック1の出力信号が1kHzの交流信号を含むようにDC/DCコンバータ8を制御して、電流センサ61により交流電流値を検出し、電圧センサ62により交流電圧値を検出する。S206において、コントローラ60は、検出された交流電流値に既知のフーリエ変換処理を施して、1kHzにおける交流電流値の振幅の虚部成分を算出する。S207において、コントローラ60は、検出された交流電圧値に既知のフーリエ変換処理を施して、1kHzにおける交流電圧値の振幅の虚部成分を算出する。S208において、コントローラ60は、交流電圧値の振幅の虚部成分を交流電流値の振幅の虚部成分で除することによって、燃料電池スタック1の内部インピーダンスの虚部成分Zimを算出する。この燃料電池スタック1の内部インピーダンスの虚部成分Zimと、燃料電池スタック1の内部インピーダンスの位相遅れとには相関がある。S209において、コントローラ60は、図20示す内部インピーダンスの虚部成分-水素濃度特性を参照し、S208で算出した内部インピーダンスの虚部成分Zimに基づいて燃料電池スタック1内における水素濃度を算出して、水素濃度算出処理を終了する。なお、図20の内部インピーダンスの虚部成分-水素濃度特性は、燃料電池スタック1内における水素濃度を算出するために使用されるデータであって、予め設定されたものである。内部インピーダンスの虚部成分-水素濃度特性は、燃料電池スタック1の内部インピーダンスの虚部成分Zimが小さくなるほど、水素濃度が高くなるように設定されている。上記した第2実施形態による燃料電池システム100では、燃料電池スタック1の出力信号が所定周波数を含む交流信号となるように燃料電池スタック1を制御し、燃料電池スタック1から出力される交流電流及び交流電圧に基づいて内部インピーダンスの虚部成分Zimを算出し、内部インピーダンスの虚部成分Zimに基づいて燃料電池スタック1内の水素濃度を算出する。このように、燃料電池スタック1の内部インピーダンスの測定等に使用される交流電流及び交流電圧に基づいて水素濃度を算出するので、従来よりも簡素な構成で水素濃度を算出することが可能となる。第3実施形態図21~図25を参照して、本発明の第3実施形態による燃料電池システム100について説明する。本実施形態の燃料電池システム100は、交流電流に対する交流電圧の位相遅れの算出の仕方において、第1実施形態の燃料電池システム100と相違する。以下、その相違点を中心に説明する。第1実施形態による燃料電池システム100では、燃料電池スタック1の出力信号が1kHzの周波数を含む交流信号となるように燃料電池スタック1を制御し、交流電流に対する交流電圧の位相遅れを算出して、その位相遅れに基づいて水素濃度を算出している。しかしながら、燃料電池スタック1の出力信号の設定周波数を1kHzに設定した場合であっても、DC/DCコンバータ8による制御誤差や電流センサ61及び電圧センサ62での検出誤差等に起因して、図21A及び図21Bに示すように、交流電流及び交流電圧の周波数が設定周波数1kHzからずれてしまうことがある。このように設定周波数からずれた交流電流及び交流電圧に離算フーリエ変換を施して、交流電流に対する交流電圧の位相遅れを算出すると、位相遅れの算出精度が低下する。図22は、燃料電池スタック1の出力信号である交流電流及び交流電圧を離算フーリエ変換して、交流電流に対する交流電圧の位相遅れを算出した時の算出結果を示す図である。実線Aは、交流電流及び交流電圧の周波数が設定周波数からずれていない場合を示す。破線Bは、交流電流及び交流電圧の周波数が設定周波数から0.5Hzずれている場合を示す。一点鎖線Cは、交流電流及び交流電圧の周波数が設定周波数から1.0Hzずれている場合を示す。交流電流及び交流電圧の周波数が設定周波数からずれていない場合には、交流電流に対する交流電圧の位相遅れは真値例えば10°に収束しているが、交流電流及び交流電圧の周波数が設定周波数からずれている場合には、交流電流に対する交流電圧の位相遅れは演算時間が長くなるほど真値からずれた値となる。このように真値からずれた位相遅れに基づいて水素濃度を算出すると、水素濃度の算出精度が悪化してしまう。そこで、第3実施形態による燃料電池システム100では、図23に示す演算部200を用いて交流電流に対する交流電圧の位相遅れを演算することで、上記した位相遅れの算出精度の低下を抑制する。図23は、第3実施形態による燃料電池システム100のコントローラ60が備える演算部200を示すブロック図である。演算部200は、図8のS201~S204の処理に代わって、交流電流に対する交流電圧の位相遅れを演算する。なお、本実施形態の燃料電池システム100では、演算部200で算出された位相遅れを用いて図8のS205の処理を実行し、水素濃度を算出する。演算部200は、燃料電池スタック1の出力信号が1kHzの周波数を含む交流信号となるように燃料電池スタック1を制御した時に検出される交流電流に基づいて、交流電流の振幅Iaを算出する。演算部200では、電流センサ61により検出された交流電流をS104と同様の逆ノッチフィルタに通し、その交流電流値を乗算部201で二乗する。乗算部201で算出された値を所定時間だけ積分部202で積分し、除算部203において積分値をタイマー値で除する。タイマー値は、タイマー値算出部205で算出される値であって、積分時間の2分の1の値である。除算部203で算出された値の平方根を平方根算出部204で算出し、その算出値が交流電流の振幅Iaとなる。このように、演算部200の乗算部201、積分部202、除算部203、及び平方根算出部204が交流電流振幅算出部を構成する。また、演算部200は、燃料電池スタック1の出力信号が1kHzの周波数を含む交流信号となるように燃料電池スタック1を制御した時に検出される交流電圧に基づいて、交流電圧の振幅Vaを算出する。演算部200では、電圧センサ62により検出された交流電圧をS104と同様の逆ノッチフィルタに通し、その交流電圧値の正負をゲイン部206で反転させ、その後、乗算部207で二乗する。乗算部207で算出された値を所定時間だけ積分部208で積分し、除算部209において積分値をタイマー値で除する。タイマー値は、タイマー値算出部205で算出される値であって、積分時間の2分の1の値である。除算部209で算出された値の平方根を平方根算出部210で算出し、その算出値が交流電圧の振幅Vaとなる。このように、演算部200のゲイン部206、乗算部207、積分部208、除算部209、及び平方根算出部210が交流電圧振幅算出部を構成する。さらに、演算部200は、電流センサ61により検出される交流電流、電圧センサ62により検出される交流電圧、及び算出された交流電流の振幅Iaに基づいて、交流電圧の実部成分Vrを算出する。演算部200では、電流センサ61の検出値をS104と同様の逆ノッチフィルタに通した交流電流値と、ゲイン部206から出力された交流電圧値とを乗算部211で掛け合わせ、乗算部211で算出された値を所定時間だけ積分部212で積分する。除算部213では、積分部212で算出された積分値を、積分時間の2分の1の値であるタイマー値で除し、さらに平方根算出部204で算出された交流電流の振幅Iaで除する。除算部213で算出された値が交流電圧の実部成分Vrとなる。このように、演算部200の乗算部211、積分部212、及び除算部213が交流電圧実部算出部を構成する。さらに、演算部200は、交流電圧の実部成分Vr及び交流電圧の振幅Vaに基づいて、交流電流に対する交流電圧の位相遅れθを算出する。除算部214において交流電圧の実部成分Vrを交流電圧の振幅Vaで除し、除算部214で算出された値の逆余弦アークコサインを逆余弦算出部215で算出する。逆余弦算出部215で算出された値を単位変換ゲイン部216を通すことで、交流電流に対する交流電圧の位相遅れθ[°]が算出される。なお、図24は、除算部214、逆余弦算出部215、及び単位変換ゲイン部216での演算内容を模式的に表わしたものである。また、演算部200の除算部214、逆余弦算出部215、及び単位変換ゲイン部216が位相遅れ算出部を構成する。図25は、演算部200によって算出される交流電流に対する交流電圧の位相遅れθを示す図である。実線Aは、交流電流及び交流電圧の周波数が設定周波数からずれていない場合を示す。破線Bは、交流電流及び交流電圧の周波数が設定周波数から10Hzずれている場合を示す。一点鎖線Cは、交流電流及び交流電圧の周波数が設定周波数から20Hzずれている場合を示す。図25に示すように、演算部200によって算出される交流電流に対する交流電圧の位相遅れθは、交流電流及び交流電圧の周波数が設定周波数からずれている場合であっても、真値例えば10°に収束する。上記した第3実施形態の燃料電池システム100では、演算部200を用いて交流電流に対する交流電圧の位相遅れを算出するので、周波数ずれに起因する交流電流に対する交流電圧の位相遅れの算出精度の悪化を抑制でき、燃料電池スタック1内の水素濃度の算出精度を向上させることが可能となる。なお、本発明は上記の実施形態に限定されずに、その技術的な思想の範囲内において種々の変更がなしうることは明白である。第1から第3実施形態ではアノードガス非循環型の燃料電池システム100を例に水素濃度算出処理について説明したが、各実施形態における水素濃度算出処理は図26に示すアノードガス循環型の燃料電池システム100に適用することもできる。図26は、アノードガス循環型の燃料電池システム100の概略構成図である。アノードガス循環型の燃料電池システム100は、基本的に図1に示した燃料電池システム100と同じ構成であるが、アノードガス排出通路25に排出された未反応のアノードガス水素をアノードガス供給通路22に還流する還流通路71を備えている点で相違する。アノードガス排出通路25は燃料電池スタック1と外部とを連通するように構成されている。還流通路71の一端はアノードガス排出通路25に設けられた三方弁29に接続され、他端はアノードガス供給通路22に接続される。還流通路71には、アノードガス排出通路25に排出された未反応のアノードガスをアノードガス供給通路22に圧送する循環ポンプ72が取り付けられている。循環ポンプ72は、還流されるアノードガスの流量を調整可能に構成されている。なお、アノードガス循環型の燃料電池システム100は、図1に示した燃料電池システム100が備えるバッファタンク26やパージ弁28を有していない。このように構成されるアノードガス循環型の燃料電池システム100においても、第1から第3実施形態で説明した手法を用いて水素濃度を算出することができる。また、アノードガス循環型の燃料電池システム100では、算出された水素濃度を用いて、図27に示すようなアノードガス循環処理を実行する。図27は、燃料電池システム100のコントローラ60が実行するアノードガス循環処理を示すフローチャートである。アノードガス循環処理は、イグニッションスイッチがオンされてからオフされるまでの間、所定演算周期例えば100マイクロ秒周期で実行される。S601において、コントローラ60は、循環ポンプ72を作動させる運転条件が成立しているか否かを判定する。これは、燃料電池スタック1の発電性能が悪化する程度まで、燃料電池スタック1内の水素濃度が低下したか否かに基づいて判定される。循環ポンプ運転条件が成立していない場合には、コントローラ60は、アノードガス循環処理を終了する。これに対して、燃料電池スタック1内の水素濃度が低く、循環ポンプ運転条件が成立している場合には、コントローラ60は、不純ガスに起因して発電効率が低下するおそれがあると判定し、S602及びS603の処理を実行する。S602において、コントローラ60は、図28に示す水素濃度-循環ポンプ回転速度特性を参照し、システム運転中に算出された水素濃度に基づいて循環ポンプ回転速度を決定する。これにより、アノードガス供給通路22に還流されるアノードガス水素の流量が設定される。図28の水素濃度-循環ポンプ回転速度特性は、循環ポンプ72の回転速度を決定するために使用されるデータであって、予め設定されたものである。水素濃度-循環ポンプ回転速度特性は、水素濃度が低下するほど、循環ポンプ回転速度が大きくなるように設定されている。なお、水素濃度が第1所定濃度よりも低い場合には循環ポンプ回転速度は所定の最大回転速度に設定され、水素濃度が第2所定濃度よりも高い場合には循環ポンプ回転速度は所定の最小回転速度に設定される。S603において、コントローラ60は、循環ポンプ72に設置された回転速度センサによって検出された回転速度検出値がS602で決定された循環ポンプ回転速度となるように循環ポンプ72をPID制御して、アノードガス循環処理を終了する。アノードガス循環型の燃料電池システム100では、燃料電池スタック1内の水素濃度が低下するほど循環ポンプ回転速度を大きくするので、アノードガス供給通路22に還流されるアノードガスの流れによって燃料電池スタック1内に留まっている不純ガスをアノードガス排出通路25に排出できる。これにより、燃料電池スタック1の発電効率の悪化を抑制することが可能となる。"