(57)【特許請求の範囲】
【請求項１】
燃焼部と、前記燃焼部にて燃焼させるために使用される複数の補機と、を備え、前記複数の補機は、少なくとも、前記燃焼部に燃料を供給する燃料供給管に設けられて前記燃料供給管を開閉する常閉型の複数の燃料遮断弁を含んでいる燃焼装置であって、
前記燃焼装置を統括して制御するメイン制御部と、
前記複数の燃料遮断弁を少なくともそれぞれ制御するとともに前記メイン制御部とは独立して作動する複数の安全制御部と、
前記各燃料遮断弁に対する電源電圧の供給を遮断する電源遮断装置と、を備え、
前記各安全制御部は、
自分自身の異常、および他の前記安全制御部の異常を検出可能であるエラー検出部と、
前記エラー検出部によって前記異常が検出された場合、前記電源遮断装置を駆動して前記電源電圧を遮断することにより、前記燃料の供給を遮断する燃料遮断制御部と、
を備え、
前記エラー検出部は、前記安全制御部に設けられた発振子を自己診断によりチェックすることにより、前記自分自身の異常の有無または前記他の安全制御部の異常の有無を検出する発振子チェック部を備え、
前記発振子チェック部は、同期通信により相互通信可能である前記他の安全制御部との間で通信される通信データの通信状態に基づいて行う燃焼装置。
【請求項２】
燃焼部と、前記燃焼部にて燃焼させるために使用される複数の補機と、を備え、前記複数の補機は、少なくとも、前記燃焼部に燃料を供給する燃料供給管に設けられて前記燃料供給管を開閉する常閉型の複数の燃料遮断弁を含んでいる燃焼装置であって、
前記燃焼装置を統括して制御するメイン制御部と、
前記複数の燃料遮断弁を少なくともそれぞれ制御するとともに前記メイン制御部とは独立して作動する複数の安全制御部と、
前記各燃料遮断弁に対する電源電圧の供給を遮断する電源遮断装置と、を備え、
前記各安全制御部は、
自分自身の異常、および他の前記安全制御部の異常を検出可能であるエラー検出部と、
前記エラー検出部によって前記異常が検出された場合、前記電源遮断装置を駆動して前記電源電圧を遮断することにより、前記燃料の供給を遮断する燃料遮断制御部と、
を備え、
前記エラー検出部は、他の安全制御部との間で行われる通信により互いに監視し合うことにより、前記自分自身の異常の有無または前記他の安全制御部の異常の有無を検出する相互監視部を備え、
前記相互監視部は、前記自分自身における割り込み情報と、前記通信により受信した前記他の安全制御部における割り込み情報とを比較することにより、前記自分自身の異常の有無または前記他の安全制御部の異常の有無を検出する燃焼装置。
【請求項３】
前記燃料遮断制御部は、さらに前記燃料遮断弁に閉指示を行う請求項１または請求項２記載の燃焼装置。
【請求項４】
前記エラー検出部は、前記安全制御部に設けられたＲＯＭを自己診断によりチェックすることにより、前記自分自身の異常の有無を検出するＲＯＭチェック部を備え、
前記ＲＯＭチェック部は、全ＲＯＭ領域のうち第一格納領域に格納されている第一ＲＯＭチェック処理プログラムにより行われる第一ＲＯＭチェック処理と、前記第一格納領域とは異なる領域である第二格納領域に格納されている第二ＲＯＭチェック処理プログラムにより行われる第二ＲＯＭチェック処理と、を行う請求項１または請求項２記載の燃焼装置。
【請求項５】
燃焼部と、前記燃焼部にて燃焼させるために使用される複数の補機と、を備え、前記複数の補機は、少なくとも、前記燃焼部に燃料を供給する燃料供給管に設けられて前記燃料供給管を開閉する常閉型の複数の燃料遮断弁を含んでいる燃焼装置であって、
前記燃焼装置を統括して制御するメイン制御部と、
前記複数の燃料遮断弁を少なくともそれぞれ制御するとともに前記メイン制御部とは独立して作動する複数の安全制御部と、
前記各燃料遮断弁に対する電源電圧の供給を遮断する電源遮断装置と、を備え、
前記各安全制御部は、
自分自身の異常、および他の前記安全制御部の異常を検出可能であるエラー検出部と、
前記エラー検出部によって前記異常が検出された場合、前記電源遮断装置を駆動して前記電源電圧を遮断することにより、前記燃料の供給を遮断する燃料遮断制御部と、
を備えている前記燃焼装置を含んで構成されている燃料電池システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、燃焼装置および燃料電池システムに関する。
【背景技術】
【０００２】
燃料電池システムの一形式として、特許文献１に示されているものが知られている。特許文献１の図１に示されているように、燃料電池システムは、燃料電池本体４と、燃料を改質して前記燃料電池本体に供給するための燃料処理系３と、前記燃料処理系へ送る燃料を遮断するための２つのフェイルクローズ式燃料遮断弁９，１０と、前記燃料電池本体に酸素を供給するための空気供給系５と、前記フェイルクローズ式燃料遮断弁を制御するための制御装置６と、を有する。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２０１０−１７０９１３号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
上述した特許文献１に記載されている燃料電池システムの制御装置６は、燃料電池システムの統括運転を行なっている。しかし、制御装置６は１つだけであり、制御装置６が故障した場合、燃料電池システムの運転、特に燃料を遮断するための２つのフェイルクローズ式燃料遮断弁９，１０の閉処理ができなくなるおそれがあった。そこで、制御装置６の故障の検出および制御装置６が万一故障した場合にフェイルクローズ式燃料遮断弁９，１０の閉処理を行って燃料供給の停止を確実に行う要請があった。
【０００５】
本発明は、上述した問題を解消するためになされたもので、燃焼装置および燃料電池システムにおいて、制御装置の故障を検出するとともにその故障時に燃料遮断弁を確実に閉じることを目的とする。
【課題を解決するための手段】
【０００６】
上記の課題を解決するため、請求項１に係る燃焼装置の発明は、燃焼部と、燃焼部にて燃焼させるために使用される複数の補機と、を備え、複数の補機は、少なくとも、燃焼部に燃料を供給する燃料供給管に設けられて燃料供給管を開閉する常閉型の複数の燃料遮断弁を含んでいる燃焼装置であって、燃焼装置を統括して制御するメイン制御部と、複数の燃料遮断弁を少なくともそれぞれ制御するとともにメイン制御部とは独立して作動する複数の安全制御部と、各燃料遮断弁に対する電源電圧の供給を遮断する電源遮断装置と、を備え、各安全制御部は、自分自身の異常、および他の安全制御部の異常を検出可能であるエラー検出部と、エラー検出部によって異常が検出された場合、電源遮断装置を駆動して燃料遮断弁に対する電源電圧の供給を遮断することにより、燃料の供給を遮断する燃料遮断制御部と、を備え、エラー検出部は、安全制御部に設けられた発振子を自己診断によりチェックすることにより、自分自身の異常の有無または他の安全制御部の異常の有無を検出する発振子チェック部を備え、発振子チェック部は、同期通信により相互通信可能である他の安全制御部との間で通信される通信データの通信状態に基づいて行う。
【０００７】
これによれば、各安全制御部のエラー検出部は、自分自身の異常、および他の安全制御部の異常を検出可能である。よって、安全制御部の故障を確実に検出することができる。これに加えて、各安全制御部の燃料遮断制御部は、エラー検出部によって異常が検出された場合、電源遮断装置を駆動して燃料遮断弁に対する電源電圧の供給を遮断することにより、燃料の供給を遮断する。よって、安全制御部が万一故障しても、燃料の供給停止を確実に行うことができる。
さらに、各安全制御部のエラー検出部は、自分自身または他の安全制御部の異常を簡便かつ確実に検出することができる。
【００１１】
また請求項２に係る発明は、燃焼部と、燃焼部にて燃焼させるために使用される複数の補機と、を備え、複数の補機は、少なくとも、燃焼部に燃料を供給する燃料供給管に設けられて燃料供給管を開閉する常閉型の複数の燃料遮断弁を含んでいる燃焼装置であって、燃焼装置を統括して制御するメイン制御部と、複数の燃料遮断弁を少なくともそれぞれ制御するとともにメイン制御部とは独立して作動する複数の安全制御部と、各燃料遮断弁に対する電源電圧の供給を遮断する電源遮断装置と、を備え、各安全制御部は、自分自身の異常、および他の安全制御部の異常を検出可能であるエラー検出部と、エラー検出部によって異常が検出された場合、電源遮断装置を駆動して燃料遮断弁に対する電源電圧の供給を遮断することにより、燃料の供給を遮断する燃料遮断制御部と、を備え、エラー検出部は、他の安全制御部との間で行われる通信により互いに監視し合うことにより、自分自身の異常の有無または他の安全制御部の異常の有無を検出する相互監視部を備え、相互監視部は、自分自身における割り込み情報と、通信により受信した他の安全制御部における割り込み情報とを比較することにより、自分自身の異常の有無または他の安全制御部の異常の有無を検出する。
これによれば、各安全制御部のエラー検出部は、自分自身の異常、および他の安全制御部の異常を検出可能である。よって、安全制御部の故障を確実に検出することができる。これに加えて、各安全制御部の燃料遮断制御部は、エラー検出部によって異常が検出された場合、電源遮断装置を駆動して燃料遮断弁に対する電源電圧の供給を遮断することにより、燃料の供給を遮断する。よって、安全制御部が万一故障しても、燃料の供給停止を確実に行うことができる。
さらに、各安全制御部のエラー検出部は、自分自身または他の安全制御部の異常を簡便かつ確実に検出することができる。
【００１２】
また請求項３に係る発明は、請求項１または請求項２において、燃料遮断制御部は、さらに燃料遮断弁に閉指示を行う。
これによれば、より確実に燃料遮断弁を閉じることができるので、燃料の供給停止をより確実に行うことができる。
また請求項４に係る発明は、請求項１または請求項２において、エラー検出部は、安全制御部に設けられたＲＯＭを自己診断によりチェックすることにより、自分自身の異常の有無を検出するＲＯＭチェック部を備え、ＲＯＭチェック部は、全ＲＯＭ領域のうち第一格納領域に格納されている第一ＲＯＭチェック処理プログラムにより行われる第一ＲＯＭチェック処理と、第一格納領域とは異なる領域である第二格納領域に格納されている第二ＲＯＭチェック処理プログラムにより行われる第二ＲＯＭチェック処理と、を行う。
これによれば、各安全制御部のエラー検出部は、自分自身の異常を簡便かつ確実に検出することができる。
また請求項５に係る燃料電池システムの発明は、燃焼部と、燃焼部にて燃焼させるために使用される複数の補機と、を備え、複数の補機は、少なくとも、燃焼部に燃料を供給する燃料供給管に設けられて燃料供給管を開閉する常閉型の複数の燃料遮断弁を含んでいる燃焼装置であって、燃焼装置を統括して制御するメイン制御部と、複数の燃料遮断弁を少なくともそれぞれ制御するとともにメイン制御部とは独立して作動する複数の安全制御部と、各燃料遮断弁に対する電源電圧の供給を遮断する電源遮断装置と、を備え、各安全制御部は、自分自身の異常、および他の安全制御部の異常を検出可能であるエラー検出部と、エラー検出部によって異常が検出された場合、電源遮断装置を駆動して電源電圧を遮断することにより、燃料の供給を遮断する燃料遮断制御部と、を備えている燃焼装置を含んで構成されている。
これによれば、前記燃焼装置を含んで構成されている燃料電池システムにおいても、上述した各請求項に係る作用・効果を得ることができる。
【図面の簡単な説明】
【００１３】
【図１】本発明による燃料電池システムの一実施形態の概要を示す概要図である。
【図２】図１に示す燃料電池システムを示すブロック図である。
【図３】第一および第二安全制御部の構成を示すブロック図である。
【図４】図２に示す第一および第二安全制御部で実行される制御プログラムのフローチャートである。
【図５】図２に示す第一および第二安全制御部で実行される制御プログラム（ＲＯＭチェック処理）のフローチャートである。
【図６】ＲＯＭチェック処理におけるＲＯＭ領域を示す図である。
【図７】図２に示す第一および第二安全制御部で実行される制御プログラム（ＲＡＭチェック処理）のフローチャートである。
【図８】図２に示す第一および第二安全制御部で実行される制御プログラム（レジスタチェック処理）のフローチャートである。
【図９】図２に示す第一および第二安全制御部で実行される制御プログラム（相互監視処理）のフローチャートである。
【図１０】図２に示す第一および第二安全制御部で実行される制御プログラム（プログラムシーケンスチェック処理）のフローチャートである。
【図１１】図２に示す第一および第二安全制御部で実行される制御プログラム（プログラムシーケンスチェック処理）のフローチャートである。
【図１２】図２に示す第一および第二安全制御部で実行される制御プログラム（スタックオーバフローチェック処理）のフローチャートである。
【図１３】図２に示す第一および第二安全制御部で実行される制御プログラム（命令セットチェック処理）のフローチャートである。
【図１４】図２に示す第一および第二安全制御部で実行される制御プログラム（発振子チェック処理）のフローチャートである。
【発明を実施するための形態】
【００１４】
以下、本発明による燃料電池システムの一実施形態について説明する。図１に示すように、燃料電池システムは、発電ユニット１０（燃焼装置に相当する）および貯湯槽２１を備えている。発電ユニット１０は、筐体１０ａ、燃料電池モジュール１１、熱交換器１２、インバータ装置１３、水タンク１４、および制御装置１５を備えている。制御装置１５は、図２に示すように、メイン制御部１５ａ、第一安全制御部１５ｂ１および第二安全制御部１５ｂ２（以下、安全制御部１５ｂと略称する場合もある）を備えている。
【００１５】
図１に示すように、燃料電池モジュール１１は、後述するように燃料電池３４を少なくとも含んで構成されるものである。燃料電池モジュール１１は、改質用原料、改質水およびカソードエアが供給されている。具体的には、燃料電池モジュール１１は、一端が供給源Ｇｓに接続されて改質用原料が供給される改質用原料供給管１１ａ（燃料供給管）の他端が接続されている。さらに、燃料電池モジュール１１は、一端が水タンク１４に接続されて改質水が供給される水供給管１１ｂの他端が接続されている。水供給管１１ｂは、改質水ポンプ１１ｂ１が設けられている。さらに、燃料電池モジュール１１は、一端がカソードエアブロワ１１ｃ１に接続されてカソードエアが供給されるカソードエア供給管１１ｃの他端が接続されている。カソードエア供給管１１ｃは、燃料電池３４に供給されているカソードエアの流量すなわち単位時間あたりの流量を検出する流量センサ１１ｃ２が設けられている。
【００１６】
改質用原料供給管１１ａに関して詳述する。改質用原料供給管１１ａには、上流から順番に燃料遮断弁１１ａ１、脱硫器１１ａ２、流量センサ１１ａ３、圧力センサ１１ａ４、バッファタンク１１ａ５、および原料ポンプ１１ａ６が設けられている。燃料遮断弁１１ａ１、脱硫器１１ａ２、流量センサ１１ａ３、圧力センサ１１ａ４、バッファタンク１１ａ５、および原料ポンプ１１ａ６は、筐体１０ａ内に収納されている。
【００１７】
燃料遮断弁１１ａ１は、制御装置１５（安全制御部１５ｂ）の指令によって、改質用原料供給管１１ａを開閉自在に遮断する常閉型の弁（２連弁）である。具体的には、燃料遮断弁１１ａ１は、それぞれ開閉自在に遮断する第一燃料遮断弁１１ａ１ａおよび第二燃料遮断弁１１ａ１ｂから構成されている。第一燃料遮断弁１１ａ１ａおよび第二燃料遮断弁１１ａ１ｂは、信頼性の高い部品である。信頼性が高いとは、例えば、使用開始から寿命を迎えるまでの期間を通して、故障や性能の劣化が発生しないことをいう。
【００１８】
なお、補機Ａは、燃料電池３４を発電させるために使用されるものである。例えば、補機Ａは、本明細書に記載されている、第一および第二燃料遮断弁１１ａ１ａ，１１ａ１ｂ、各ポンプ１１ａ６，１１ｂ１、２２ａ、カソードエアブロワ１１ｃ１、各センサ１１ａ３，１１ａ４，１１ｃ２，３４ｄ，３６ｂ１，３６ｂ２である。
【００１９】
脱硫器１１ａ２は、改質用原料中の硫黄分（例えば、硫黄化合物）を除去するものである。流量センサ１１ａ３は、燃料電池３４に供給されている燃料（改質用原料）の流量すなわち単位時間あたりの流量を検出するものであり、その検出結果を制御装置１５のメイン制御部１５ａに送信している。圧力センサ１１ａ４は、燃料電池３４に供給されている燃料（改質用原料）の圧力（特に圧力センサ１１ａ４の設置場所の圧力）を検出するものであり、その検出結果を制御装置１５のメイン制御部１５ａに送信している。バッファタンク１１ａ５は、原料ポンプ１１ａ６の気体流れを整流するものである。原料ポンプ１１ａ６は、燃料電池３４に燃料（改質用原料）を供給する供給装置であり、制御装置１５のメイン制御部１５ａからの制御指令値にしたがって供給源Ｇｓからの燃料供給量（供給流量（単位時間あたりの流量））を調整するものである。この原料ポンプ１１ａ６は、改質用原料を吸入し改質部３３に圧送する圧送装置である。
【００２０】
なお、改質用原料供給管１１ａには、原料ポンプ１１ａ６と燃料電池モジュール１１（蒸発部３２）との間に逆止弁（図示省略）を配設するようにしてもよい。また、燃料遮断弁１１ａ１、脱硫器１１ａ２、流量センサ１１ａ３、圧力センサ１１ａ４、バッファタンク１１ａ５、および原料ポンプ１１ａ６の配置は、上述した順番に限定されない。
【００２１】
燃料電池モジュール１１（３０）は、ケーシング３１、蒸発部３２、改質部３３および燃料電池３４を備えている。ケーシング３１は、断熱性材料で箱状に形成されている。
蒸発部３２は、後述する燃焼ガスにより加熱されて、供給された改質水を蒸発させて水蒸気を生成するとともに、供給された改質用原料を予熱するものである。蒸発部３２は、このように生成された水蒸気と予熱された改質用原料を混合して改質部３３に供給するものである。改質用原料としては天然ガス、ＬＰガスなどの改質用気体燃料、灯油、ガソリン、メタノールなどの改質用液体燃料があり、本実施形態においては天然ガスにて説明する。
【００２２】
蒸発部３２には、一端（下端）が水タンク１４に接続された水供給管１１ｂの他端が接続されている。また、蒸発部３２には、一端が供給源Ｇｓに接続された改質用原料供給管１１ａが接続されている。供給源Ｇｓは、例えば都市ガスのガス供給管、ＬＰガスのガスボンベである。
【００２３】
改質部３３は、上述した燃焼ガスにより加熱されて水蒸気改質反応に必要な熱が供給されることで、蒸発部３２から供給された混合ガス（改質用原料、水蒸気）から改質ガスを生成して導出するものである。改質部３３内には、触媒（例えば、ＲｕまたはＮｉ系の触媒）が充填されており、混合ガスが触媒によって反応し改質されて水素ガスと一酸化炭素などを含んだガスが生成されている（いわゆる水蒸気改質反応）。改質ガスは、水素、一酸化炭素、二酸化炭素、水蒸気、未改質の天然ガス（メタンガス）、改質に使用されなかった改質水（水蒸気）を含んでいる。このように、改質部３３は改質用原料（原燃料）と改質水とから改質ガス（燃料）を生成して燃料電池３４に供給する。なお、水蒸気改質反応は吸熱反応である。
【００２４】
燃料電池３４は、燃料極、空気極（酸化剤極）、および両極の間に介装された電解質からなる複数のセル３４ａが積層されて構成されている。本実施形態の燃料電池は、固体酸化物形燃料電池であり、電解質として固体酸化物の一種である酸化ジルコニウムを使用している。燃料電池３４の燃料極には、燃料として水素、一酸化炭素、メタンガスなどが供給される。動作温度は４００〜１０００℃程度である。なお、４００℃以下でも定格以下の発電量の発電は可能である。また、６００℃で発電開始を許可している。水素だけではなく天然ガスや石炭ガスなども直接燃料として用いることが可能である。この場合、改質部３３は省略することができる。
【００２５】
セル３４ａの燃料極側には、燃料である改質ガスが流通する燃料流路３４ｂが形成されている。セル３４ａの空気極側には、酸化剤ガスである空気（カソードエア）が流通する空気流路３４ｃが形成されている。
【００２６】
燃料電池３４は、燃料電池３４の温度を検出する温度センサ３４ｄを備えている。温度センサ３４ｄは、燃料電池３４のセル３４ａの積層方向の中央部分であって上下方向中央部分に設けられている。温度センサ３４ｄは、その検出結果を制御装置１５のメイン制御部１５ａに送信するようになっている。
【００２７】
燃料電池３４は、マニホールド３５上に設けられている。マニホールド３５には、改質部３３からの改質ガスが改質ガス供給管３８を介して供給される。燃料流路３４ｂは、その下端（一端）がマニホールド３５の燃料導出口に接続されており、その燃料導出口から導出される改質ガスが下端から導入され上端から導出されるようになっている。カソードエアブロワ１１ｃ１によって送出されたカソードエアはカソードエア供給管１１ｃを介して供給され、空気流路３４ｃの下端から導入され上端から導出されるようになっている。
【００２８】
燃焼部３６は、燃料電池３４と蒸発部３２および改質部３３との間に設けられている。燃焼部３６は、燃料電池３４からのアノードオフガス（燃料オフガス）と燃料電池３４からのカソードオフガス（酸化剤オフガス）とが燃焼されて改質部３３を加熱する。
【００２９】
燃焼部３６では、アノードオフガスが燃焼されて火炎３７が発生している。燃焼部３６では、アノードオフガスが燃焼されてその燃焼排ガスが発生している。燃焼部３６には、アノードオフガスを着火させるための一対の着火ヒータ３６ａ１，３６ａ２が設けられている。また、燃焼部３６には、燃焼部３６の温度を検出するための第一および第二燃焼部温度センサ３６ｂ１，３６ｂ２（以下、燃焼部温度センサ３６ｂと省略する場合もある）が設けられている。第一および第二燃焼部温度センサ３６ｂ１，３６ｂ２の検出結果（出力信号）は制御装置１５の第一および第二安全制御部１５ｂ１，１５ｂ２に送信されている。
【００３０】
熱交換器１２は、燃料電池モジュール１１から排気される燃焼排ガスが供給されるとともに貯湯槽２１からの貯湯水が供給され、燃焼排ガスと貯湯水とが熱交換する熱交換器である。具体的には、貯湯槽２１は、貯湯水を貯湯するものであり、貯湯水が循環する（図にて矢印の方向に循環する）貯湯水循環ライン２２が接続されている。貯湯水循環ライン２２上には、貯湯槽２１の下端から上端に向かって順番に貯湯水循環ポンプ２２ａおよび熱交換器１２が配設されている。熱交換器１２は、燃料電池モジュール１１からの排気管１１ｄが接続（貫設）されている。熱交換器１２は、水タンク１４に接続されている凝縮水供給管１２ａが接続されている。
【００３１】
熱交換器１２において、燃料電池モジュール１１からの燃焼排ガスは、排気管１１ｄを通って熱交換器１２内に導入され、貯湯水との間で熱交換が行われ凝縮されるとともに冷却される。凝縮後の燃焼排ガスは排気管１１ｄを通って外部に排出される。また、凝縮された凝縮水は、凝縮水供給管１２ａを通って水タンク１４に供給される。なお、水タンク１４は、凝縮水をイオン交換樹脂によって純水化するようになっている。
【００３２】
上述した熱交換器１２、貯湯槽２１および貯湯水循環ライン２２から、排熱回収システム２０が構成されている。排熱回収システム２０は、燃料電池モジュール１１の排熱を貯湯水に回収して蓄える。
【００３３】
さらに、インバータ装置１３は、燃料電池３４から出力される直流電圧を入力し所定の交流電圧に変換して、交流の系統電源１６ａおよび外部電力負荷１６ｃ（例えば電化製品）に接続されている電源ライン１６ｂに出力する。また、インバータ装置１３は、系統電源１６ａからの交流電圧を電源ライン１６ｂを介して入力し所定の直流電圧に変換して補機Ａ（各ポンプ、ブロワなど）や制御装置１５に出力する。
【００３４】
制御装置１５は、補機Ａを駆動して燃料電池システムの運転を制御する。制御装置１５のメイン制御部１５ａは、発電ユニット１０ひいては燃料電池システムを統括して制御する。
図２に示すように、メイン制御部１５ａは、各流量センサ１１ａ３，１１ｃ２、圧力センサ１１ａ４、温度センサ３４ｄ、各ポンプ１１ａ６，１１ｂ１，２２ａ、カソードエアブロワ１１ｃ１、着火ヒータ３６ａ１，３６ａ２および記憶部１５ｃが接続されている。メイン制御部１５ａはマイクロコンピュータ（図示省略）を有しており、マイクロコンピュータは、バスを介してそれぞれ接続された入出力インターフェース、ＣＰＵ、ＲＡＭおよびＲＯＭ（いずれも図示省略）を備えている。ＣＰＵは、燃料電池システムの統括運転を実施している。ＲＡＭは同プログラムの実行に必要な変数を一時的に記憶するものであり、ＲＯＭは前記プログラムを記憶するものである。
【００３５】
制御装置１５の第一および第二安全制御部１５ｂ１，１５ｂ２は、複数の燃料遮断弁１１ａ１ａ，１１ａ１ｂを少なくともそれぞれ制御するとともにメイン制御部１５ａとは独立して作動する。図２に示すように、制御装置１５の第一安全制御部１５ｂ１は、第一燃焼部温度センサ３６ｂ１、第一ドライブ回路１５ｅ１、第一スイッチ１５ｆ１、および記憶部１５ｄ１が接続されている。第一ドライブ回路１５ｅ１は、第一安全制御部１５ｂ１からの開閉指令に応じて第一燃料遮断弁１１ａ１ａを開閉制御するものである。第一安全制御部１５ｂ１から閉指令があった場合、第一ドライブ回路１５ｅ１は、電源Ｖ１から第一燃料遮断弁１１ａ１ａの電磁コイルへの駆動電圧の供給を停止する。これにより、第一燃料遮断弁１１ａ１ａの電磁コイルが非励磁されて、付勢部材による付勢力によって第一燃料遮断弁１１ａ１ａが閉状態となる。一方、第一安全制御部１５ｂ１から開指令があった場合、第一ドライブ回路１５ｅ１は、電源Ｖ１から第一燃料遮断弁１１ａ１ａの電磁コイルへの駆動電圧の供給を開始する。これにより、第一燃料遮断弁１１ａ１ａの電磁コイルが励磁されて、付勢部材による付勢力に抗して第一燃料遮断弁１１ａ１ａが開状態となる。
【００３６】
第一スイッチ１５ｆ１は、電源Ｖ１と第一ドライブ回路１５ｅ１との間に設けられ、第一安全制御部１５ｂ１からのオン・オフ指令に応じて電源Ｖ１と第一燃料遮断弁１１ａ１ａとを連通・遮断するものである。第一安全制御部１５ｂ１からオン指令があった場合、第一スイッチ１５ｆ１は、電源Ｖ１と第一燃料遮断弁１１ａ１ａとを連通する。一方、第一安全制御部１５ｂ１からオフ指令があった場合、第一スイッチ１５ｆ１は、電源Ｖ１と第一燃料遮断弁１１ａ１ａとを遮断する。
記憶部１５ｄ１は、ＤａｔａＦｌａｓｈやＥＥＰＲＯＭである。
【００３７】
制御装置１５の第二安全制御部１５ｂ２は、第二燃焼部温度センサ３６ｂ２、第二ドライブ回路１５ｅ２、第二スイッチ１５ｆ２、および記憶部１５ｄ２が接続されている。第二ドライブ回路１５ｅ２は第一ドライブ回路１５ｅ１と同様に構成され、第二スイッチ１５ｆ２は第一スイッチ１５ｆ１と同様に構成されている。なお、第一および第二スイッチ１５ｆ１，１５ｆ２は、各燃料遮断弁１１ａ１に対する電源電圧Ｖ１の供給を遮断する電源遮断装置１５ｆを構成する。また、以下、第一および第二スイッチ１５ｆ１，１５ｆ２をスイッチ１５ｆと略称する場合がある。
【００３８】
第一および第二安全制御部１５ｂ１，１５ｂ２は、マイクロコンピュータで構成されており、図３に示すように、バスを介してそれぞれ接続された、ＣＰＵ４１、ＲＡＭ４２、ＲＯＭ４３、調歩同期通信回路４４、タイマ回路４５および位相同期回路４６をそれぞれ備えている。
【００３９】
ＣＰＵ４１は、主として燃料遮断弁１１ａ１の制御を実施している。ＲＡＭ４２は制御プログラムの実行に必要な変数を一時的に記憶するものであり、ＲＯＭ４３は制御プログラムを記憶するものである。調歩同期通信回路４４は、他の安全制御部の調歩同期通信回路４４と互いに通信可能である。調歩同期通信回路４４は、調歩同期式の通信を行う回路である。調歩同期式とは、シリアル通信において、一文字分の文字情報を送るたびに、データの先頭にデータ送信開始の情報（スタートビット）と、データ末尾にデータ送信終了の信号（ストップビット）を付け加えて送受信を行う方式のことである。調歩同期式では、データそのものに同期用信号を追加して同期を取っている。
【００４０】
タイマ回路４５は、ハードウェア時間計測器である。タイマ回路４５は、一定間隔でＣＰＵ４１に対して割り込みを発生させたり（例えばインターバルタイマ）、コンピュータシステムの正常動作を確認したりするためのものである（例えばウォッチドッグタイマ）。タイマ回路４５は、ＣＰＵ４１や調歩同期通信回路４４に信号(割込み信号や、調歩同期通信回路４４の基準速度生成としてのタイマカウンタ動作での信号)を入力する。
【００４１】
位相同期回路４６は、入力される周期的な信号を元にフィードバック制御を加えて、別の発振器から位相が同期した信号を出力する電子回路である。位相同期回路４６は、基準周波数となる入力信号と、電圧に応じて周波数が変化するＶＣＯ（電圧制御発振器）出力のフィードバック信号との位相差をそのＶＣＯに入力することにより、入力信号と出力信号の位相を同期させる。
【００４２】
発振子４７（発振回路）は、クロック信号を出力する。クロック信号は、クロック同期設計のデジタル論理回路が動作する時に、複数の回路のタイミングを合わせる（同期を取る）ために使用される。クロック信号は、位相同期回路４６を介してＣＰＵ４１、ＲＡＭ４２、ＲＯＭ４３、調歩同期通信回路４４およびタイマ回路４５に出力されている。なお、発振子４７は、安全制御部１５ｂ１の外部に設けるようにしたが、安全制御部１５ｂ１の内部に設けるようにしてもよい。
【００４３】
メイン制御部１５ａ、第一および第二安全制御部１５ｂ１，１５ｂ２は、互いに通信可能に接続されている。第一燃焼部温度センサ３６ｂ１からの検出信号は、第一安全制御部１５ｂ１に入力される。この検出信号は、第一安全制御部１５ｂ１を介してメイン制御部１５ａに出力されている。第二燃焼部温度センサ３６ｂ２からの検出信号は、第二安全制御部１５ｂ２に入力される。この検出信号は、第二安全制御部１５ｂ２を介してメイン制御部１５ａに出力されている。
一方、メイン制御部１５ａが入力した情報（センサからの検出信号）は、第一および第二安全制御部１５ｂ１，１５ｂ２に出力されている。
【００４４】
（異常チェック処理）
次に、安全制御部１５ｂが実行する各チェック処理について図４に示すフローチャートに沿って説明する。安全制御部１５ｂは、そのフローチャートに沿ったプログラムを所定時間毎に繰り返し実行する。
【００４５】
安全制御部１５ｂは、ステップＳ１０２において、後述する各異常チェック処理を行う処理タイミングとなったか否かを判定する。いずれの異常チェック処理のタイミングとなっていない場合には、ステップＳ１０２にて「ＮＯ」と判定し、本プログラムを一旦停止する。一方、いずれかの異常チェック処理のタイミングとなった場合には、ステップＳ１０２にて「ＹＥＳ」と判定し、いずれかの異常チェック処理（ステップＳ１０４−１２６）を行う。
【００４６】
いずれの異常チェック処理においても異常を検出しない場合、すなわち安全制御部１５ｂが故障（マイコン故障）していない場合、安全制御部１５ｂは、ステップＳ１２８にて「ＮＯ」と判定し、本プログラムを一旦停止する。一方、いずれかの異常チェック処理において異常を検出した場合、すなわち安全制御部１５ｂが故障している場合、安全制御部１５ｂは、ステップＳ１２８にて「ＹＥＳ」と判定し、インターロック動作を行う（ステップＳ１３０）。
【００４７】
インターロック動作は、安全制御部１５ｂが燃料遮断弁１１ａ１に対して閉指示を行い、その結果、燃料遮断弁１１ａ１を遮断する動作と、安全制御部１５ｂがスイッチ１５ｆに対してオフ指示を行い、その結果燃料遮断弁１１ａ１への電源供給を停止する動作と、を合わせた動作のことである。なお、燃料遮断弁１１ａ１への電源供給を停止する動作のみをインターロック動作としてもよい。
【００４８】
なお、全ての異常チェック処理（ステップＳ１０４−１２６）は、自分自身の異常、および他の前記安全制御部の異常を検出可能であるエラー検出部である。また、ステップＳ１３０の処理は、エラー検出部によって異常が検出された場合、電源遮断装置１５ｆを駆動して電源電圧Ｖ１を遮断することにより、燃料の供給を遮断する燃料遮断制御部である。
【００４９】
上述したように、安全制御部１５ｂは、マイコン故障を検出すると、発電ユニット１０（燃焼装置）内の燃焼部３６へ接続されている改質用原料供給管１１ａ（燃料供給管）に設けた燃料遮断弁１１ａ１を遮断制御するとともに、燃料遮断弁１１ａ１への電源供給も遮断する。その結果、たとえマイコンポート故障に伴い駆動指示ポートから遮断制御できない場合(例えばマイコンポートのＨｉラッチ故障時)でも、燃料遮断弁１１ａ１を確実に閉止することができる。
【００５０】
なお、安全制御部１５ｂは、マイコン故障が発生した場合、その故障回数をカウントして予め設定した回数に到達した場合にインターロック動作しても良いし、一回でもマイコン故障発生を検知すると即座にインターロック動作しても良い。
【００５１】
また、安全制御部１５ｂは、マイコン異常を検出するとその異常検知した旨を記憶部１５ｄに記憶する。安全制御部１５ｂは、修理業者によるメンテナンス実施時以外には、記憶部１５ｄ（１５ｄ１，１５ｄ２）に記憶されているマイコン異常を検知した旨の消去およびインターロック動作の解除をできないように制御するのが望ましい。さらに、安全制御部１５ｂは、起動時に、記憶部１５ｄにマイコン異常を検知した旨が記憶されている場合には、インターロック動作を行うように制御するのが望ましい。これにより、停電や修理業者以外のユーザ操作による電源スイッチのオフによって、偶発的にマイコン異常を検知した旨の消去やインターロック動作の解除を抑制することができる。
【００５２】
（ＲＯＭチェック処理）
以下、各異常チェック処理について詳述する。安全制御部１５ｂは、ＲＯＭチェック実施タイミングとなったとき、ＲＯＭチェック処理を行う（ステップＳ１０４）。
安全制御部１５ｂは、最初に第一ＲＯＭチェック処理を行う。第一ＲＯＭチェック処理は、第一格納領域Ａ１に格納されている第一ＲＯＭチェック処理プログラムにより行われるものであり、第一格納領域Ａ１を含む全ＲＯＭ領域に対してデータチェックを行う処理である。データチェックは、第一格納領域Ａ１を含む全ＲＯＭ領域のＣＲＣコード／ＢＣＣコード／チェックサム等のチェック値を算出し、その算出結果が理論値と比較することにより、ＲＯＭ４１が正常であるか否かを検出する。なお、ＲＯＭ４１は、図６に示すように、全領域を区画して形成された複数の領域（ＲＯＭアドレス）Ａ１・・・Ａｎを備えている。なお、ＣＲＣは、巡回冗長検査である。ＢＣＣ（Block checking character）は、誤り検出で用いられる冗長符号である。
【００５３】
具体的には、安全制御部１５ｂは、図５に示すフローチャートに沿ったプログラムを実行する。安全制御部１５ｂは、ステップＳ２０２において、第一格納領域Ａ１を含む全ＲＯＭ領域のチェックコードを算出する。安全制御部１５ｂは、ステップＳ２０４において、ステップＳ２０２にて算出したチェックコードを、予め記憶している理論値と比較する。安全制御部１５ｂは、ステップＳ２０４の比較結果が不一致である場合には、ステップＳ２０６にて「ＹＥＳ」と判定し、ＲＯＭチェック結果はＮＧである旨の判定、すなわちＲＯＭ４１は異常である旨の判定を行う（ステップＳ２０８）。一方、安全制御部１５ｂは、ステップＳ２０４の比較結果が一致である場合には、ステップＳ２０６にて「ＮＯ」と判定し、プログラムをステップＳ２１０に進めて、さらに第二ＲＯＭチェック処理を行う。
【００５４】
第二ＲＯＭチェック処理は、第一格納領域Ａ１とは異なる領域である第二格納領域Ａ２に格納されている第二ＲＯＭチェック処理プログラムにより行われるものであり、第二格納領域Ａ２を含む全ＲＯＭ領域に対してデータチェックを行う処理である。データチェックは、第二格納領域Ａ２を含む全ＲＯＭ領域のＣＲＣコード／ＢＣＣコード／チェックサム等のチェック値を算出し、その算出結果が理論値と比較することにより、ＲＯＭ４１が正常であるか否かを検出する。
【００５５】
具体的には、安全制御部１５ｂは、ステップＳ２１０において、第二格納領域Ａ２を含む全ＲＯＭ領域のチェックコードを算出する。安全制御部１５ｂは、ステップＳ２１２において、ステップＳ２１０にて算出したチェックコードを、予め記憶している理論値と比較する。安全制御部１５ｂは、ステップＳ２１２の比較結果が不一致である場合には、ステップＳ２１４にて「ＹＥＳ」と判定し、ＲＯＭチェック結果はＮＧである旨の判定、すなわちＲＯＭ４１は異常である旨の判定を行う（ステップＳ２０８）。一方、安全制御部１５ｂは、ステップＳ２１２の比較結果が一致である場合には、ステップＳ２１４にて「ＮＯ」と判定し、ＲＯＭチェック結果はＯＫである旨の判定、すなわちＲＯＭ４１は正常である旨の判定を行う（ステップＳ２１６）。
【００５６】
ＲＯＭチェック処理自体が格納されているＲＯＭ領域が１つである場合、そのＲＯＭ領域が故障した場合、その異常を検出しそれを通知できない可能性がある。これに対して、上述したように、複数のＲＯＭチェック処理を異なるＲＯＭ領域へ冗長的に配置することにより、ＲＯＭチェック処理自体が格納されたＲＯＭ領域が故障したとしても、確実にＲＯＭ４１の故障を検出することができる。
上述したＲＯＭチェック処理（ステップＳ１０４）が、安全制御部１５ｂに設けられたＲＯＭ４３を自己診断によりチェックすることにより、自分自身の異常の有無を検出するＲＯＭチェック部である。
【００５７】
（ＲＡＭチェック処理）
安全制御部１５ｂは、ＲＡＭチェック実施タイミングとなったとき、ＲＡＭチェック処理を行う（ステップＳ１０６）。
安全制御部１５ｂは、ＲＡＭ全領域において各ｂｉｔ（ＲＡＭアドレス）に対して読み書き照合（ＲＡＭ全領域の各アドレスに対してｂｉｔ毎に全てチェックする）を行って、ＲＡＭを構成するメモリ全ビットの短絡等の故障を検出する。ＲＡＭへの書込みデータとＲＡＭからの読込みデータが一致する場合はＲＡＭ４２が正常であると判断し、一致しない場合はＲＡＭ４２が故障であると判断する。
【００５８】
具体的には、安全制御部１５ｂは、図７に示すフローチャートに沿ったプログラムを実行する。安全制御部１５ｂは、ＲＡＭ先頭アドレスをチェック対象アドレスに設定し（ステップＳ２５２）、チェック対象アドレスのＲＡＭデータ内容を退避させ（ステップＳ２５４）、チェック対象アドレスにチェックパターンを書き込み（ステップＳ２５６）、チェック対象アドレスからチェックパターンを読み込む（ステップＳ２５８）。
【００５９】
安全制御部１５ｂは、ステップＳ２６０において、書き込みデータと読み込みデータとが一致するか否かを判定する。両データが一致しない場合、安全制御部１５ｂは、ステップＳ２６０にて「ｎｏ」と判定し、ＲＡＭ４２の故障を検出する（ステップＳ２６２）。一方、両データが一致する場合、安全制御部１５ｂは、ステップＳ２６０にて「ｙｅｓ」と判定し、ステップＳ２６４に進め、ＲＡＭ４２の全領域のチェックを行う（ステップＳ２６６，２５４−２６０，２６４）。
そして、ＲＡＭ４２の全領域のデータのチェックが正常である場合には、安全制御部１５ｂは、ステップＳ２６４にて「ｙｅｓ」と判定し、ＲＡＭ４２が正常であると判断する。
【００６０】
（レジスタチェック処理）
安全制御部１５ｂは、レジスタチェック実施タイミングとなったとき、レジスタチェック処理を行う（ステップＳ１０８）。
安全制御部１５ｂは、ＲＡＭチェック処理と同様に、ＣＰＵ４１内における全レジスタの各ｂｉｔに対して読み書き照合を行い、レジスタを構成するメモリ全ビットの短絡等の故障を検出する。レジスタとしては、汎用レジスタ、制御レジスタ、スタックポインタレジスタなどがある。
【００６１】
具体的には、安全制御部１５ｂは、図８に示すフローチャートに沿ったプログラムを実行する。安全制御部１５ｂは、チェック対象レジスタを一個目のレジスタに設定し（ステップＳ３０２）、チェック対象レジスタのデータ内容を退避させ（ステップＳ３０４）、チェック対象レジスタにチェックパターンを書き込み（ステップＳ３０６）、チェック対象レジスタからチェックパターンを読み込む（ステップＳ３０８）。
【００６２】
安全制御部１５ｂは、ステップＳ３１０において、書き込みデータと読み込みデータとが一致するか否かを判定する。両データが一致しない場合、安全制御部１５ｂは、ステップＳ３１０にて「ｎｏ」と判定し、レジスタの故障を検出する（ステップＳ３１２）。一方、両データが一致する場合、安全制御部１５ｂは、ステップＳ３１０にて「ｙｅｓ」と判定し、ステップＳ３１４に進め、全レジスタのチェックを行う（ステップＳ３１６，３０４−３１０，３１４）。
そして、全レジスタのチェックが正常である場合には、安全制御部１５ｂは、ステップＳ３１４にて「ｙｅｓ」と判定し、レジスタが正常であると判断する。
【００６３】
（相互監視処理）
安全制御部１５ｂは、相互監視実施タイミングとなったとき、相互監視処理を行う（ステップＳ１１０）。
相互監視処理は、通信ラインで接続されている複数の安全制御部１５ｂが互いに監視し合うことにより、１つの安全制御部１５ｂだけでは検出できない故障を容易に検出するものである。１つの安全制御部１５ｂだけでは検出できない故障は、例えば、ＣＰＵ４１に対して一定間隔で割り込みを発生させるタイマ回路４５（インターバルタイマ機能）の故障である。
【００６４】
具体的には、第一安全制御部１５ｂ１は、図９に示すフローチャートに沿ったプログラムを実行する。第一安全制御部１５ｂ１は、ステップＳ３５２において、自分のＥＣＵ４１に対するタイマ回路４５からの割り込み回数（単位時間あたり）を計測する。同時に、第一安全制御部１５ｂ１は、計測した割り込み回数を第二安全制御部１５ｂ２に送信する。第一安全制御部１５ｂ１は、ステップＳ３５４において、相手（第二安全制御部１５ｂ２）のＥＣＵ４１に対するタイマ回路４５からの割り込み回数を受信して格納(記憶)する。
【００６５】
安全制御部１５ｂ１は、ステップＳ３５６において、自分の割り込み回数と相手の割り込み回数とが一致するか否かを判定する。両割り込み回数が一致しない場合、安全制御部１５ｂ１は、ステップＳ３５６にて「ｎｏ」と判定し、タイマ回路４５やＣＰＵ４１の故障を検出する（ステップＳ３５８）。一方、両割り込み回数が一致する場合、安全制御部１５ｂ１は、ステップＳ３５６にて「ｙｅｓ」と判定し、タイマ回路４５やＣＰＵ４１が正常である旨を検出する（ステップＳ３６０）。
【００６６】
第二安全制御部１５ｂ２も、第一安全制御部１５ｂ１と同様に相互監視処理を行う。なお、単位時間あたりの割り込み回数の代わりに、割り込み周期を算出するようにしてもよい。この場合、各安全制御部１５ｂは、割り込み周期が判定周期内にあるか否かを判定することにより、正常であるか否かを判定すればよい。安全制御部１５ｂの各割り込み周期が異なる場合に有効である。
上述した相互監視処理（ステップＳ１１０）が、他の安全制御部１５ｂとの間で行われる通信により互いに監視し合うことにより、自分自身の安全制御部１５ｂ（例えば第一安全制御部１５ｂ１）または他の安全制御部１５ｂ（例えば第二安全制御部１５ｂ２）の異常の有無を検出する相互監視部である。
【００６７】
（プログラムシーケンスチェック処理）
安全制御部１５ｂは、プログラムシーケンスチェック実施タイミングとなったとき、プログラムシーケンスチェック処理を行う（ステップＳ１１２）。安全制御部１５ｂは、メイン周期において未実行の関数があった場合、それを検知する。すなわち、安全制御部１５ｂは、各関数実行時にチェックカウンタをカウントアップし、１メイン周期の処理を完了したとき全関数を過不足なく正常実行したことを確認する。
【００６８】
具体的には、安全制御部１５ｂは、図１０に示すフローチャートに沿ったプログラムを実行する。安全制御部１５ｂは、メイン周期の実行中において、最初の関数Ａを実行し（ステップＳ４０２）、関数Ａの実行時にチェックカウンタをカウントアップする（ステップＳ４０４）。安全制御部１５ｂは、次の関数の実行時にも関数Ａと同様にチェックカウンタをカウントアップし、最後の関数Ｘを実行し（ステップＳ４０６）、関数Ｘの実行時にチェックカウンタをカウントアップする（ステップＳ４０８）。その後、安全制御部１５ｂは、プログラムシーケンスチェック処理を行う（ステップＳ４１０）。
【００６９】
安全制御部１５ｂは、図１１に示すフローチャートに沿ったプログラムを実行する。安全制御部１５ｂは、関数Ｘ実行時に算出したチェックカウンタ（ゲートカウンタ値ともいう）と、理論値とを比較する（ステップＳ４１２）。チェックカウンタと理論値とが一致しない場合、安全制御部１５ｂは、ステップＳ４１４にて「ｎｏ」と判定し、プログラムシーケンスチェック異常である旨を検出する（ステップＳ４１６）。一方、一致する場合、安全制御部１５ｂは、ステップＳ４１４にて「ｙｅｓ」と判定し、プログラムシーケンスチェック正常である旨を検出する（ステップＳ４１８）。なお、プログラムシーケンスチェック異常は、未実行関数があり、または、重複実行関数があるなど、ＥＣＵ４１の故障である。
【００７０】
（スタックオーバフローチェック処理）
安全制御部１５ｂは、スタックオーバフローチェック実施タイミングとなったとき、スタックオーバフローチェック処理を行う（ステップＳ１１４）。スタックオーバフローチェック処理は、ＲＡＭ領域内に予め設定された使用可能なスタック領域をオーバしてスタックを使用するスタックオーバーフローの発生をチェックする。スタック領域は、ソフトウェアで使用可能な領域であり、通常は予め設定されているものである。予め設定された使用可能領域をオーバしてスタックを使用した場合、ソフトウェア動作が不定になる可能性が高い。
【００７１】
具体的には、安全制御部１５ｂは、図１２に示すフローチャートに沿ったプログラムを実行する。安全制御部１５ｂは、チェック実施ＲＡＭアドレスを設定する（ステップＳ４５２）。チェック実施ＲＡＭアドレスとしては、例えば、スタック領域の先頭アドレスがある。設定したアドレスのＲＡＭ値が初期値（例えば０）以外である場合、安全制御部１５ｂは、ステップＳ４５４にて「ｙｅｓ」と判定し、スタックオーバーフロー異常である旨（すなわち、スタックオーバーフローが発生した旨）を検出する（ステップＳ４５６）。一方、設定したアドレスのＲＡＭ値が初期値である場合、安全制御部１５ｂは、ステップＳ４５４にて「ｎｏ」と判定し、スタックオーバーフロー異常でない（正常である）旨を検出する（ステップＳ４５８）。
【００７２】
（命令セットチェック処理）
安全制御部１５ｂは、命令セットチェック実施タイミングとなったとき、命令セットチェック処理を行う（ステップＳ１１６）。命令セットチェック処理は、ＣＰＵ４１内で実行される全アセンブラ命令の正常動作をチェックする。アセンブラ命令は、ＣＰＵ４１で実行可能な全ての命令、もしくは、マイコンで動作させるソフトウェアに含まれる全命令のどちらかをチェックする。
【００７３】
具体的には、安全制御部１５ｂは、図１３に示すフローチャートに沿ったプログラムを実行する。安全制御部１５ｂは、第一チェック対象の命令を実行する（ステップＳ５０２）。第一チェック対象の命令が正常に動作していない場合、安全制御部１５ｂは、ステップＳ５０４にて「ｎｏ」と判定し、異常が発生したとして（異常を検出したとして）命令セットチェック処理の停止工程を実施する（ステップＳ５１０）。一方、第一チェック対象の命令が正常に動作している場合、安全制御部１５ｂは、ステップＳ５０４にて「ｙｅｓ」と判定し、異常が発生していないとして（正常を検出したとして）、次のチェック対象命令の動作をチェックする。
【００７４】
安全制御部１５ｂは、最後の第ｎチェック対象の命令を実行する（ステップＳ５０６）。第ｎチェック対象の命令が正常に動作していない場合、安全制御部１５ｂは、ステップＳ５０６にて「ｎｏ」と判定し、異常が発生したとして命令セットチェック処理の停止工程を実施する（ステップＳ５１０）。一方、第ｎチェック対象の命令が正常に動作している場合、安全制御部１５ｂは、ステップＳ５０８にて「ｙｅｓ」と判定し、異常が発生していないとして（正常を検出したとして）、通常動作を継続する（ステップＳ５１２）。
なお、上記例では一命令実施毎に正常動作チェックをしているが、複数命令をまとめて実行した後に正常動作チェックをするようにしてもよい。
【００７５】
（発振子チェック処理）
安全制御部１５ｂは、発振子チェック実施タイミングとなったとき、発振子チェック処理を行う（ステップＳ１１８）。発振子チェック処理は、調歩同期通信で相互通信する２個以上のマイコン（本実施形態では安全制御部１５ｂ１，１５ｂ２である）と、それらに接続された各発振子４７とを使用して行われる。
【００７６】
調歩同期通信は予め両マイコン（安全制御部１５ｂ１，１５ｂ２である）で決められたボーレートで通信する事を前提としており、そのボーレートがずれると期待タイミングでパリティビットやストップビットを受理できない為、互いの電文データを正しく受信できない。各マイコンは各々発振子４７の生成クロック信号を基準として調歩同期通信回路４４で通信データを送出／受信する。よって、元のクロック信号がズレた場合、その両発振子４７間の誤差が、ある範囲以内であれば、正常に他デバイスと通信できるが、その範囲以上のズレがあると、正常に通信できない。クロック信号がズレたことを発振子ズレという。このように、専用の検出手段を設けなくても、発振子ズレを検出することができる。
【００７７】
具体的には、安全制御部１５ｂは、図１４に示すフローチャートに沿ったプログラムを実行する。一の安全制御部１５ｂ（第一安全制御部１５ｂ１）は、ステップＳ５２２において、他の安全制御部１５ｂ２と調歩同期通信により定期的に通信し、上述した通信異常検出を実施する。異常を検出しない場合、第一安全制御部１５ｂ１は、ステップＳ５２４にて「ｎｏ」と判定し、通信正常である（すなわち発振子４７は正常であるとみなす）旨を検出し、燃料電池システムの通常の動作を継続する（ステップＳ５２６）。
【００７８】
一方、異常を検出した場合、第一安全制御部１５ｂ１は、ステップＳ５２４にて「ｙｅｓ」と判定し、通信異常である（すなわち発振子４７は異常であるとみなす）旨を検出する。その後、第一安全制御部１５ｂ１は、プログラムをステップＳ５２８以降に進めて、最終的に燃料電池システムの動作（暖機運転・発電運転）を停止する。
【００７９】
第一安全制御部１５ｂ１は、通信異常の発生原因を特定する。受信完了割り込みが途絶している場合、第一安全制御部１５ｂ１は、ステップＳ５２８にて「ｙｅｓ」と判定し、異常原因が、両安全制御部１５ｂ１，１５ｂ２の発振子４７は正常であるが、他の安全制御部１５ｂ２のシステムダウンまたは通信線断線による通信自体の途絶であると判定する（ステップＳ５３０）。
【００８０】
受信完了割り込みが途絶しておらず、かつ、オーバーランエラーが発生した場合、第一安全制御部１５ｂ１は、ステップＳ５２８，５３２にて「ｎｏ」、「ｙｅｓ」と判定し、異常原因が、自分のマイコンソフト不良による受信データバッファ読み出し遅れであると判定する（ステップＳ５３４）。
【００８１】
受信完了割り込みが途絶しておらず、かつ、オーバーランエラーが発生していない場合、第一安全制御部１５ｂ１は、ステップＳ５２８，５３２にてそれぞれ「ｎｏ」と判定し、異常原因が、自分の発振子４７が異常であるか、相手の発振子４７が異常であるか、両発振子４７は正常であるがノイズによる通信データ化けであると判定する（ステップＳ５３６）。
【００８２】
上述した発振子チェック処理（ステップＳ１１８）が、安全制御部１５ｂに設けられた発振子４７を自己診断によりチェックすることにより、自分自身の安全制御部１５ｂ（例えば第一安全制御部１５ｂ１）または他の安全制御部１５ｂ（例えば第二安全制御部１５ｂ２）の異常の有無を検出する発振子チェック部である。
また、２つの安全制御部を例に説明したが、本方式は２つの制御部の相互通信だけではなく２つ以上の制御装置の相互通信でも同じ効果が得られる。
【００８３】
（相互監視通信異常チェック処理）
安全制御部１５ｂは、相互監視通信異常チェック実施タイミングとなったとき、相互監視通信異常チェック処理を行う（ステップＳ１２０）。具体的には、安全制御部１５ｂは、他の安全制御部１５ｂとの間で通信される通信電文に付与したＣＲＣやＢＣＣにより、相互監視通信そのものの通信成立をチェックする。ＣＲＣやＢＣＣが不一致または、通信相手端末が沈黙する場合、通信異常とする。
【００８４】
（外部記憶手段チェック処理）
安全制御部１５ｂは、外部記憶手段チェック実施タイミングとなったとき、外部記憶手段チェック処理を行う（ステップＳ１２２）。具体的には、安全制御部１５ｂは、外部記憶手段として記憶部１５ｄが接続されており、記憶部１５ｄの記憶データのチェックを目的としてＣＲＣ付与や、データ多重化による照合チェックを実施する。記憶データチェックで異常発生する場合、その記憶データが信用できないため、故障とする。
【００８５】
（マイコンＡＤ変換器の線形性チェック処理）
安全制御部１５ｂは、マイコンＡＤ変換器の線形性チェック実施タイミングとなったとき、マイコンＡＤ変換器の線形性チェック処理を行う（ステップＳ１２４）。具体的には、安全制御部１５ｂは、マイコン外部回路として、例えば複数の一定電圧を発生する基準電圧回路に接続されており、その電圧に基づいてＡＤ変換するＡＤ変換器を備えている。安全制御部１５ｂは、基準電圧回路からの各電圧のＡＤ変換結果によりＡＤ変換器をチェックする。
【００８６】
複数の安全制御部１５ｂ（１５ｂ１，１５ｂ２）は、例えば異常検出に用いるセンサ信号を分岐して入力し、独自にＡＤ変換と異常検出を実施する。これにより、一方のＣＰＵのＡＤ変換器故障時においても異常検出機能を喪失しないようにする。
【００８７】
また、前述の相互監視通信でＡＤ変換結果も送受信し、同一センサ信号を入力した場合における、他マイコンでのＡＤ変換結果と自マイコンでのＡＤ変換結果を比較し、正常な誤差範囲を逸脱したＡＤ変換結果差分を検出すると異常を検出するようにしてもよい。
【００８８】
（マイコンデジタルＩ／Ｏポートのチェック処理）
安全制御部１５ｂは、マイコンデジタルＩ／Ｏポートのチェック実施タイミングとなったとき、マイコンデジタルＩ／Ｏポートのチェック処理を行う（ステップＳ１２６）。具体的には、安全制御部１５ｂの入力ポートは、入力信号をマイコン外部で分岐するとともに冗長入力化し、その入力結果を比較する事でチェックできる。安全制御部１５ｂの出力ポートは、出力信号をマイコン外部で分岐し一片側をマイコンに入力し、出力値と入力値を比較することでチェックできる。
【００８９】
複数の安全制御部１５ｂ（１５ｂ１，１５ｂ２）は、例えば異常検出に用いるセンサ信号を分岐して入力し、独自に入力処理と異常検出を実施する。これにより、一方のＣＰＵの入力ポート故障時にも異常検出機能を喪失しないようにする。出力ポート信号はたとえば複数ＣＰＵに同一出力機能を設け、その出力値を論理合成して補機Ａ等に指示を与えられる様に外部回路を設ければ、一方のＣＰＵ出力がポート故障により期待通りの出力とならない場合でも不安全な出力にならない。
【００９０】
上述した説明から明らかなように、本実施形態の発電ユニット１０（燃焼装置）は、燃焼部３６と、燃焼部３６にて燃焼させるために使用される複数の補機Ａと、を備え、複数の補機Ａは、少なくとも、燃焼部３６に燃料を供給する改質用原料供給管１１ａ（燃料供給管）に設けられて改質用原料供給管１１ａを開閉する常閉型の複数の燃料遮断弁１１ａ１ａ，１１ａ１ｂを含んでいる燃焼装置である。発電ユニット１０は、発電ユニット１０を統括して制御するメイン制御部１５ａと、複数の燃料遮断弁１１ａ１ａ，１１ａ１ｂを少なくともそれぞれ制御するとともにメイン制御部１５ａとは独立して作動する複数の安全制御部１５ｂ１，１５ｂ２と、各燃料遮断弁１１ａ１ａ，１１ａ１ｂに対する電源電圧の供給を遮断する電源遮断装置１５ｆと、を備え、各安全制御部１５ｂ１，１５ｂ２は、自分自身の異常、および他の安全制御部１５ｂ１，１５ｂ２の異常を検出可能であるエラー検出部（ステップＳ１０４−１２６）と、エラー検出部によって異常が検出された場合、電源遮断装置１５ｆを駆動して燃料遮断弁１１ａ１ａ，１１ａ１ｂに対する電源電圧の供給を遮断することにより、燃料の供給を遮断する燃料遮断制御部（ステップＳ１３０）と、を備えている。
【００９１】
これによれば、各安全制御部１５ｂ１，１５ｂ２のエラー検出部（ステップＳ１０４−１２６）は、自分自身の異常、および他の安全制御部１５ｂ１，１５ｂ２の異常を検出可能である。よって、安全制御部１５ｂ１，１５ｂ２の故障を確実に検出することができる。これに加えて、各安全制御部１５ｂ１，１５ｂ２の燃料遮断制御部（ステップＳ１３０）は、エラー検出部によって異常が検出された場合、電源遮断装置１５ｆを駆動して燃料遮断弁１１ａ１ａ，１１ａ１ｂに対する電源電圧の供給を遮断することにより、燃料の供給を遮断する。よって、安全制御部１５ｂ１，１５ｂ２が万一故障しても、燃料の供給停止を確実に行うことができる。
【００９２】
また、安全制御部１５ｂ１，１５ｂ２の燃料遮断制御部（ステップＳ１３０）は、さらに燃料遮断弁１１ａ１ａ，１１ａ１ｂに閉指示を行う。
これによれば、より確実に燃料遮断弁１１ａ１ａ，１１ａ１ｂを閉じることができるので、燃料の供給停止をより確実に行うことができる。
【００９３】
また、安全制御部１５ｂ１，１５ｂ２のエラー検出部（ステップＳ１０４−１２６）は、安全制御部１５ｂ１，１５ｂ２に設けられたＲＯＭ４３を自己診断によりチェックすることにより、自分自身（安全制御部１５ｂ１，１５ｂ２）の異常の有無を検出するＲＯＭチェック部（ステップＳ１０４）を備え、ＲＯＭチェック部は、全ＲＯＭ領域のうち第一格納領域に格納されている第一ＲＯＭチェック処理プログラムにより行われる第一ＲＯＭチェック処理（ステップＳ２０２−２０６）と、第一格納領域とは異なる領域である第二格納領域に格納されている第二ＲＯＭチェック処理プログラムにより行われる第二ＲＯＭチェック処理（ステップＳ２１０−２１４）と、を行う。
これによれば、各安全制御部１５ｂ１，１５ｂ２のエラー検出部は、自分自身の異常を簡便かつ確実に検出することができる。
【００９４】
また、安全制御部１５ｂ１，１５ｂ２のエラー検出部（ステップＳ１０４−１２６）は、安全制御部１５ｂ１，１５ｂ２に設けられた発振子４７を自己診断によりチェックすることにより、自分自身の異常の有無または他の安全制御部１５ｂ１，１５ｂ２の異常の有無を検出する発振子チェック部（ステップＳ１１８）を備え、発振子チェック部は、同期通信により相互通信可能である他の安全制御部１５ｂ１，１５ｂ２との間で通信される通信データの通信状態に基づいて行う。
これによれば、各安全制御部１５ｂ１，１５ｂ２のエラー検出部は、自分自身または他の安全制御部１５ｂ１，１５ｂ２の異常を簡便かつ確実に検出することができる。
【００９５】
また、安全制御部１５ｂ１，１５ｂ２のエラー検出部（ステップＳ１０４−１２６）は、他の安全制御部１５ｂ１，１５ｂ２との間で行われる通信により互いに監視し合うことにより、自分自身の異常の有無または他の安全制御部１５ｂ１，１５ｂ２の異常の有無を検出する相互監視部（ステップＳ１１０）を備え、相互監視部は、自分自身における割り込み情報と、通信により受信した他の安全制御部１５ｂ１，１５ｂ２における割り込み情報とを比較することにより、自分自身の異常の有無または他の安全制御部１５ｂ１，１５ｂ２の異常の有無を検出する。
これによれば、各安全制御部１５ｂ１，１５ｂ２のエラー検出部は、自分自身または他の安全制御部１５ｂ１，１５ｂ２の異常を簡便かつ確実に検出することができる。
【００９６】
また、上述した燃料電池システムは、燃焼装置である発電ユニット１０を含んで構成されている。
これによれば、燃焼装置である発電ユニット１０を含んで構成されている燃料電池システムにおいても、上述した各作用・効果を得ることができる。
【００９７】
なお、上述した実施形態においては、燃焼装置として、発電ユニット１０を挙げて説明したが、他の燃焼装置にも本発明は適用可能である。他の燃焼装置は、燃焼部と、燃焼部にて燃焼させるために使用される複数の補機と、を備え、複数の補機は、少なくとも、燃焼部に燃料を供給する燃料供給管に設けられて燃料供給管を開閉する常閉型の複数の燃料遮断弁を含んでいる燃焼装置であればよい。さらに、燃焼装置は、燃焼装置を統括して制御するメイン制御部と、複数の燃料遮断弁を少なくともそれぞれ制御するとともにメイン制御部とは独立して作動する複数の安全制御部と、各燃料遮断弁に対する電源電圧の供給を遮断する電源遮断装置と、を備えていればよい。
【符号の説明】
【００９８】
１０…発電ユニット（燃焼装置）、１１ａ…改質用原料供給管（燃料供給管）、１５…制御装置、１５ａ…メイン制御部、１５ｂ…安全制御部（エラー検出部、燃料遮断制御部、ＲＯＭチェック部、発振子チェック部、相互監視部）、１５ｂ１…第一安全制御部、１５ｂ２…第二安全制御部、１５ｆ…電源遮断装置、１５ｆ１…第一スイッチ、１５ｆ２…第二スイッチ、４１…ＣＰＵ、４３…ＲＯＭ、４７…発振子、Ａ…補機。
【図１】
0006317194.tif 000002
【図２】
0006317194.tif 000003
【図３】
0006317194.tif 000004
【図４】
0006317194.tif 000005
【図５】
0006317194.tif 000006
【図６】
0006317194.tif 000007
【図７】
0006317194.tif 000008
【図８】
0006317194.tif 000009
【図９】
0006317194.tif 000010
【図１０】
0006317194.tif 000011
【図１１】
0006317194.tif 000012
【図１２】
0006317194.tif 000013
【図１３】
0006317194.tif 000014
【図１４】
0006317194.tif 000015