(57)【要約】【課題】より信頼性の高い車両用電池システムの提供。【解決手段】車両用電池システムには、電池セル(BC1〜BC4)の計測線を介して該電池セル(BC1〜BC4)を放電させる放電回路（R1,129A〜129D,128A〜128D）が設けられている。制御回路は、セルグループ(GB1)の奇数番目の電池セル(BC1,BC3)を放電させる第１の放電指令と、第１の放電指令の実行時に計測される奇数番目のみの電池セル(BC1,BC3)の端子電圧を制御回路に送出させる第１の送出指令と、セルグループ(GB1)の偶数番目の電池セル(BC2,BC4)を放電させる第２の放電指令と、第２の放電指令の実行時に計測される偶数番目のみの電池セル(BC2,BC4)の端子電圧を制御回路に送出させる第２の送出指令とを集積回路(3A)に送信し、集積回路(3A)のそれぞれから送出された端子電圧に基づいて、電池セル、計測線および放電回路を含む系の異常を診断する。【選択図】図２
2010228523.tif 000002
【特許請求の範囲】
【請求項１】
複数の電池セルが電気的に直列に接続されたセルグループを複数、電気的に直列に接続してなるバッテリユニットと、
前記セルグループ毎に設けられ、セルグループを構成する各電池セルの端子電圧を計測線を介してそれぞれ計測して電池セル情報を出力する集積回路と、
前記集積回路からの電池セル情報に基づいて前記電池セルの状態を監視する制御回路とを備え、
前記集積回路は、前記セルグループの各電池セルの端子電圧を計測する計測回路と、前記電池セル毎に設けられ、該電池セルの計測線を介して該電池セルを放電させる放電回路と有し、
前記制御回路は、
前記セルグループの奇数番目の電池セルを放電させる第１の放電指令と、
前記第１の放電指令の実行時に計測される奇数番目のみの電池セルの端子電圧を、前記制御回路に送出させる第１の送出指令と、
前記セルグループの偶数番目の電池セルを放電させる第２の放電指令と、
前記第２の放電指令の実行時に計測される偶数番目のみの電池セルの端子電圧を、前記制御回路に送出させる第２の送出指令とを前記集積回路のそれぞれに送信し、
前記集積回路のそれぞれから送出された端子電圧に基づいて、前記電池セル、前記計測線および前記放電回路を含む系の異常を診断することを特徴とする車両用電池システム。
【請求項２】
請求項１に記載の車両用電池システムにおいて、
前記放電回路は、前記放電のオンオフを行う半導体スイッチング素子と、前記半導体スイッチング素子のスイッチング状態を検知する検知回路とを備え、
前記制御回路は、前記奇数番目の電池セルの端子電圧と、前記偶数番目の電池セルの端子電圧と、前記スイッチング状態とに基づいて、前記計測線の断線、前記電池セルの充電状態異常および前記放電回路の異常のいずれが生じたかを診断することを特徴とする車両用電池システム。
【請求項３】
請求項１または２に記載の車両用電池システムにおいて、
前記複数の集積回路を直列接続する第１の伝送路と、前記制御回路から前記直列接続された最上位の集積回路へ信号を伝送するための第２の伝送路と、前記直列接続された最下位の集積回路から前記制御回路へ信号を伝送するための第３の伝送路とからなるシリアル通信系を備え、
前記制御回路から前記複数の集積回路への前記第１の放電指令、前記第２の放電指令、前記第１の送出指令および前記第２の送出指令の送信、および、前記複数の集積回路から前記制御回路への前記端子電圧の送出を、前記シリアル通信系を介して行うことを特徴とする車両用電池システム。
【請求項４】
複数の電池セルが電気的に直列に接続されたセルグループを複数、電気的に直列に接続してなるバッテリユニットと、
前記セルグループ毎に設けられ、セルグループを構成する各電池セルの端子電圧を計測線を介してそれぞれ計測して電池セル情報を出力する集積回路と、
前記集積回路からの電池セル情報に基づいて前記電池セルの状態を監視する制御回路とを備え、
前記集積回路は、
前記セルグループの各電池セルの端子電圧を計測する計測回路と、
前記電池セル毎に設けられ、該電池セルの計測線を介して放電電流を流すための半導体スイッチング素子を含む放電回路と、
前記半導体スイッチング素子のスイッチング状態を検知する検知回路とを有し、
前記制御回路は、前記放電回路による放電動作を指示する放電指令を前記集積回路に送信し、放電指令実行時に計測される端子電圧と前記スイッチング状態とに基づいて、前記計測線の断線、前記電池セルの充電状態異常および前記放電回路の異常のいずれが生じたかを診断することを特徴とする車両用電池システム。
【請求項５】
請求項４に記載の車両用電池システムにおいて、
前記制御回路は、
前記セルグループの奇数番目の電池セルを放電させる第１の放電指令と、
前記第１の放電指令の実行時に計測される奇数番目のみの電池セルの端子電圧を、前記制御回路に送出させる第１の送出指令と、
前記セルグループの偶数番目の電池セルを放電させる第２の放電指令と、
前記第２の放電指令の実行時に計測される偶数番目のみの電池セルの端子電圧を、前記制御回路に送出させる第２の送出指令とを前記集積回路のそれぞれに送信し、
前記集積回路のそれぞれから送出された端子電圧に基づいて、前記計測線の断線、前記電池セルの充電状態異常および前記放電回路の異常のいずれが生じたかを診断することを特徴とする車両用電池システム。
【請求項６】
請求項１〜５のいずれか一項に記載の車両用電池システムにおいて、
前記検知回路による検知を、所定の検知周期の各期間においてそれぞれ行うことを特徴とする車両用電池システム。
【請求項７】
請求項６に記載の車両用電池システムにおいて、
前記計測回路は前記端子電圧の計測を所定の計測周期で行い、
前記所定の検知周期は、前記計測周期であることを特徴とする車両用電池システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、車両用電池システムに関する。
【背景技術】
【０００２】
リチウム電池を使用する電池システム、特に車両用電池システムにおいて、電池セルの過充電や過放電の診断を行うものが知られている（例えば、特許文献１参照）。また、その電池システムは、電池セル間の充電量の違いを少なくするために設けられたバランス回路に関して、その動作状態を診断する機能も備えている。さらに、電池セルと端子電圧を検出する回路との間の接続線の断線を検知する技術も知られている（例えば、特許文献２参照）。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２００５−３１８７５１号公報
【特許文献２】特開２００６−２９４３３９号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
このように、車両用電池システムにおいては、バランス回路による充電量の調整や、過充電や過放電の診断を行って電池セルの状態を監視する必要があるが、さらに、電池セルの状態だけでなく、計測系の信頼性を高めるなどして電池システム全体の信頼性を向上させる必要がある。本発明の課題は、信頼性のより高い車両用電池システムを提供することにある。
【課題を解決するための手段】
【０００５】
請求項１の発明に係る車両用電池システムは、複数の電池セルが電気的に直列に接続されたセルグループを複数、電気的に直列に接続してなるバッテリユニットと、セルグループ毎に設けられ、セルグループを構成する各電池セルの端子電圧を計測線を介してそれぞれ計測して電池セル情報を出力する集積回路と、集積回路からの電池セル情報に基づいて電池セルの状態を監視する制御回路とを備え、集積回路は、セルグループの各電池セルの端子電圧を計測する計測回路と、電池セル毎に設けられ、該電池セルの計測線を介して該電池セルを放電させる放電回路と有し、制御回路は、セルグループの奇数番目の電池セルを放電させる第１の放電指令と、第１の放電指令の実行時に計測される奇数番目のみの電池セルの端子電圧を、前記制御回路に送出させる第１の送出指令と、セルグループの偶数番目の電池セルを放電させる第２の放電指令と、第２の放電指令の実行時に計測される偶数番目のみの電池セルの端子電圧を、制御回路に送出させる第２の送出指令とを集積回路のそれぞれに送信し、集積回路のそれぞれから送出された端子電圧に基づいて、電池セル、計測線および放電回路を含む系の異常を診断することを特徴とする。
請求項４の発明に係る車両用電池システムは、複数の電池セルが電気的に直列に接続されたセルグループを複数、電気的に直列に接続してなるバッテリユニットと、セルグループ毎に設けられ、セルグループを構成する各電池セルの端子電圧を計測線を介してそれぞれ計測して電池セル情報を出力する集積回路と、集積回路からの電池セル情報に基づいて電池セルの状態を監視する制御回路とを備え、集積回路は、セルグループの各電池セルの端子電圧を計測する計測回路と、電池セル毎に設けられ、該電池セルの計測線を介して放電電流を流すための半導体スイッチング素子を含む放電回路と、半導体スイッチング素子のスイッチング状態を検知する検知回路とを有し、制御回路は、放電回路による放電動作を指示する放電指令を前記集積回路に送信し、放電指令実行時に計測される端子電圧と前記スイッチング状態とに基づいて、計測線の断線、電池セルの充電状態異常および放電回路の異常のいずれが生じたかを診断することを特徴とする。
【発明の効果】
【０００６】
本発明によれば、車両用電池システムの信頼性を向上させることができる。
【図面の簡単な説明】
【０００７】
【図１】本発明による車両用電池システムの一実施の形態を示す図であり、バッテリ部９、セルコントローラ８０、バッテリコントローラ２０を示すブロック図である。
【図２】集積回路３Ａを詳細に示すブロック図である。
【図３】集積回路の通信コマンドの送受信方法の一例を示した説明図である。
【図４】診断動作および計測動作のタイミングと、診断動作項目を説明する図である。
【図５】診断動作および計測動作に関係する回路を説明する図である。
【図６】第１の実施形態における診断動作を説明する図である。
【図７】集積回路の内部に設けられた通信コマンドの送受信を行う通信回路の一例を説明する図である。
【図８】バッテリコントローラからの通信コマンドにより各集積回路のアドレスレジスタの設定手順の一例を説明する説明図である。
【図９】通信コマンドの送信に基づく図７の回路の動作を説明する説明図である。
【図１０】図９に記載の各集積回路に、バッテリコントローラからの通信コマンドに基づいて順次アドレスを設定する実施形態の説明図である。
【図１１】各電池セルの充電状態を計測し、充電量の多い電池セルの放電を実行する処理フローの一例を示した図である。
【図１２】各集積回路または各電池セルが異常となっているか否かをテストするための処理フローの一例を示した図である。
【図１３】本実施の形態の車両用電池システムを、車両用回転電機の駆動システムに適用した場合の一例を示す回路図である。
【図１４】図１３に示した車両用電池システムにおける動作フローの一例を示した図である。
【図１５】車両用電源システムにおいて、バッテリコントローラのセルコントローラとの通信を終了させるシーケンスの一例を示す説明図である。
【図１６】車両用電池システムにおいてバッテリコントローラのセルコントローラとの通信を終了させるシーケンスの他の例を示す説明図である。
【図１７】各グループが有する電池セルの数を異なる数とした場合の一例を示す説明図である。
【図１８】バランシングスイッチの制御と各電池セルの端子電圧の計測の両方の制御を実現する構成の一例を示す図である。
【図１９】バランシングスイッチの制御と各電池セルの端子電圧の計測の両方の制御を実現する構成の他の実施形態を示す図である。
【図２０】図１８に示す回路において計測制御と充電状態の調整のための放電制御との関係を示す動作図である。
【図２１】図１９に示す回路において計測制御と充電状態の調整のための放電制御との関係を示す動作図である。
【図２２】図２０や図２１に示す制御を行うための回路の一例を示す図である。
【図２３】電池セルＢＣの端子電圧を検出するための正極および負極とセルコントローラとを接続する検出用ハーネスに異常が発生した場合の診断の一例を示す説明図である。
【図２４】電池セルＢＣの端子電圧を検出するための正極および負極とセルコントローラとを接続する検出用ハーネスに異常が発生した場合の診断の他の例を示す説明図である。
【図２５】図２３および図２４に示す構成において電池セルと各集積回路間の電気的な接続に異常が生じたことを検知する方法を示した説明図である。
【図２６】充電状態の調整のための制御に優先してバランシングスイッチを優先制御したい場合において放電制御回路に基づく信号の遮断期間を示す説明図である。
【図２７】充電状態の調整のための制御に優先してバランシングスイッチを優先制御したい場合において放電制御回路に基づく信号の遮断期間を示す説明図である。
【図２８】診断の対象となる回路および該診断のための回路の他の実施形態を説明する図である。
【図２９】バッテリ部およびセルコントローラの他の実施形態を示す構成図である。
【図３０】マルチプレクサ診断の第１の実施形態を説明する図である。
【図３１】ステージＳＴＧＣＶ２のＲＥＳ期間の動作を説明する図である。
【図３２】起動からシャットダウンまでの動作を説明するタイムチャートである。
【図３３】監視周期Ｔ２における動作を説明するタイムチャートである。
【図３４】データ形式を説明する模式図を示したものであり、（ａ）は同報コマンドを示し、（ｂ）は集積回路から出力される返信データを示す。
【図３５】要求コマンドに対するセルコントローラ８０側の返信の様子を示す模式図である。
【図３６】集積回路３Ｂへのセル電圧要求コマンドに対するセルコントローラ８０側の返信の様子を示す模式図である。
【図３７】判定テーブルを示す図である。
【図３８】バッテリコントローラ２０により実行される診断処理を示すフローチャートである。
【図３９】ステップＳ１３０の詳細を示すフローチャートである。
【発明を実施するための形態】
【０００８】
以下に実施の形態として説明する電池システムを備えた駆動システム、あるいは電池システム、車載用電池システム、さらに電池モジュール、前記電池モジュールに使用されるセルコントローラ、さらには前記セルコントローラが有する回路基板や集積回路などの回路部品は、それぞれ高い信頼性を備えている。また以下に説明のシステムおよび回路基板や集積回路などの回路部品は、製品として使用されるための検討がなされており、信頼性の向上のみならずその他にも色々な課題の解決がなされている。その代表的なものを次に記載する。
〔信頼性の向上〕
図１３に用いて後述する車両駆動システムは電池モジュールとインバータ装置と回転電機（以下モータと記す）２３０とを主要構成とし、上記インバータ装置２２０と電池モジュール９００とが通信回線を介して情報をやり取りできる構造としている。特に電池モジュール９００の診断結果がインバータ装置２２０の制御回路（以下ＭＣＵと記す）２２２に送られ、インバータ装置２２０と電池モジュール９００とで異常状態など重要情報が共有される構造となっている。電池モジュール９００はリチウム電池とインバータ装置２２０との電気回路を接続あるいは遮断するリレーＲＬＰやＲＬＮを有しており、上記リレーＲＬＰやＲＬＮはインバータ装置２２０のＭＣＵ２２２で制御される。インバータ装置２２０のＭＣＵ２２２はモータ２３０やインバータ装置２２０、モジュール９００の状態に基づいて上記リレーＲＬＰやＲＬＮを制御できるので、システム全体の信頼性が向上する。またインバータ装置２２０のＭＣＵ２２２は上記リレーＲＬＰやＲＬＮの制御に対応してインバータを制御することでモータ２３０の消費電力や発電電力を制御でき、高い安全性や高い信頼性が得られる。
電池モジュール９００は、リチウム電池セルを有するバッテリ部９とセルコントローラ８０とバッテリコントローラ２０とを主要構成として備え、セルコントローラ８０はバッテリ部９が有するリチウム電池セルの端子電圧の計測および診断、充電状態ＳＯＣを調整するための放電動作を行い、バッテリコントローラ２０はセルコントローラ８０の計測結果および診断結果を受けて電池モジュール９００の管理を行う。このように機能が分担されていることで電池モジュール９００の信頼性や安全性が向上する。
セルコントローラ８０はバッテリ部９が有する複数個のリチウム電池セルの各端子電圧を検出する機能を有する複数の集積回路を有している。リチウム電池を使用した電池モジュールは単電池と異なり、リチウム電池セルの端子電圧を高い信頼性を有して計測することが安全性の観点でたいへん重要である。一方車載機器は長期間高温あるいは低温の環境で使用され、一般産業機器の使用環境に比べ、過酷な環境に置かれることを考慮する必要がある。以下に説明する実施の形態では、集積回路はそれぞれリチウム電池セルの端子電圧を正しく計測しているかどうかを診断する診断回路を備えており、集積回路はそれぞれ定まった周期で繰り返し診断を実行している。集積回路あるいは上記集積回路を使用したセルコントローラ８０は上述の構造を有しており、上記各集積回路また上記セルコントローラ８０は高い信頼性を有している。
上述の如く、リチウム電池セルの劣化やリチウム電池セルの放電回路の診断に関する公知例は見受けられるが、リチウム電池セルの端子電圧の計測動作に関する診断の必要性は考えられていなかった。しかしより信頼性や安全性を向上する上で各集積回路の計測動作の診断が望ましいことが分かった。以下に説明する実施の形態では、各集積回路はそれぞれ端子電圧の計測動作が正しく行われているかどうかを、例えばマルチプレクサによるリチウム電池セルの端子電圧の選択が正常に行われているかどうか、を診断回路により繰り返し診断する構造となっている。従ってきわめて信頼性の高い集積回路を得ることができる。
〔集積回路の簡素化〕
以下に説明する実施の形態では、図４に示す如く、リチウム電池セルの端子電圧の計測と同期した周期で繰り返し診断が実施される構造であり、集積回路は計測の制御と診断の制御を総合的に実施でき、信頼性や安全性の向上に加え、集積回路の回路構成が比較的簡素化できる。
以下に説明する実施の形態では、図４に示す如く、集積回路の複数の診断を計測動作と同期して実施でき、集積回路全体の診断が総合的に実施される構成となっており、集積回路に関し高い信頼性を維持できる。なお、複数の診断とは、集積回路のバランススイッチの診断やアナログデジタル変換器の診断、マルチプレクサの診断、デジタル比較回路の診断などである。すなわち集積回路の本来の機能に加え、診断機能が追加されることとなるが、機能の増加に対し集積回路の動作全体および回路構成全体が統合的に動作する構造となっており、集積回路は比較的簡素化された構造となっている。
〔異常診断時間の短縮〕
リチウム電池を使用する車載用電池モジュールでは短時間に異常を検知し、できるだけ早く異常に対応することが望ましい。しかし一方使用電力が大きくなるにつれて、バッテリ部が有するリチウム電池セルの数が多くなり、使用する集積回路の数が多くなる。リチウム電池セルの異常診断に加え、各集積回路それ自身の診断を行う場合に、多数の診断項目を短時間に完了することが重要な課題となる。
以下に説明する実施の形態では、各集積回路は一旦計測動作や診断動作を開始するとそれぞれ独立して定められた周期で繰り返し、計測動作および診断動作を実施する構成となっている。従ってリチウム電池セルの数や集積回路の数が多いにもかかわらず電池システムや電池モジュールとしての計測動作や診断動作を短い時間で完了できる。例えば車両を短時間に始動し、走行しようとする場合であっても短い時間で上記計測および診断を実施できる。診断結果に基づく走行が可能となり、高い安全性を維持できる。
また集積回路やリチウム電池セルの異常に対し、電池モジュールや電池システムさらには図1３に記載の駆動システムは、電池モジュールが授受する電力量の速やかな低減や速やかなリレーの開放などの対応が可能としている。各集積回路は独立して異常診断を行うと共に異常が検知されると異常をあらわする信号を速やかに出力する送受信回路を備えている。この送受信回路はＯＲ回路２８８で例示する如くＯＲ機能を有している。すなわち異常信号を受信すると自らの集積回路の診断結果に関係なく異常信号を出力する、また異常信号を受信していない場合であっても自らの集積回路で異常を検知すると異常信号を出力する機能を有している。従ってバッテリコントローラ２０などの上位の制御回路は、集積回路から送られてきた上記異常信号の結果を調べることで、関係する複数の集積回路全体の異常診断結果を速やかに知ることができる。また特別に異常信号の送信を命令しなくても総合的な診断結果を得ることができるので、上位の制御回路の処理負荷の増大が押さえられる効果がある。
〔生産性の向上〕
以下に説明する実施の形態では、セルコントローラ８０の基板上に集積回路を保持し、各リチウム電池セルのＳＯＣ調整のための放電状態調整用抵抗Ｒ１〜Ｒ４および図２６や図２７に示すノイズ除去用のコンデンサＣ１〜Ｃ６もまたセルコントローラ８０の基板上に保持している。集積回路や放電状態調整用抵抗Ｒ１〜Ｒ４およびコンデンサＣ１〜Ｃ６をまとめてセルコントローラ８０の基板上に保持する構造としているので、生産性が向上する。またこれらの回路部品を近接して配置することで、信頼性や安全性も向上する。
【０００９】
以下、図を参照して本発明を実施するための形態について説明する。
〈セルコントローラの説明〉
図１は、車両用回転電機の駆動に使用される車両用電池システムのバッテリ部９およびセルコントローラ（以下、Ｃ／Ｃと略称する場合がある）８０を説明する図である。
【００１０】
バッテリ部９は、直列接続された複数個の電池セルのグループ（以下ではセルグループと称する）ＧＢ１、・・・ＧＢＭ、・・・ＧＢＮを有している。各セルグループは複数個の直列接続された電池セルＢＣ１〜ＢＣ４を有している。従って、バッテリ部９は直列に接続された複数の電池セルを有している。この実施の形態では、例えば数十個、場合によっては数百個からなる多数の電池セルを有している。この実施の形態では各電池セルはリチウムイオン電池である。
【００１１】
各リチウム電池セルの端子電圧はその電池セルの充電状態で変化し、例えば充電状態３０％程度の放電された状態では約３.３ボルト程度となり、充電状態７０％程度の充電された状態では約３.８ボルト程度となる。正常な動作状態を超えて放電した過放電状態では、例えば２.５ボルト以下になる場合があり、また正常な動作範囲を超えて充電された過充電状態では４.２ボルト以上になる場合がある。直列接続された複数の電池セルＢＣ１〜ＢＣ４は、端子電圧をそれぞれ計測することでそれぞれの充電状態ＳＯＣを把握できる。
【００１２】
本実施の形態では、各電池セルＢＣ１〜ＢＣ１２の端子電圧の計測を行い易くするなどの理由で、１セルグループを４個乃至６個の各電池セルＢＣ１〜ＢＣ４で構成している。この図１に示す実施の形態では各グループを４個の電池セルすなわち、セルグループＢＧ１やセルグループＧＢＭ、セルグループＧＢＮをそれぞれ電池セルＢＣ１〜ＢＣ４で構成している。図１で、セルグループＢＧ１とセルグループＧＢＭとの間およびセルグループＧＢＭとセルグループＧＢＮとの間には、電池セルを備えたセルグループがさらに存在しているが、同様の構成であり説明の煩雑さを避けるために省略する。
【００１３】
セルコントローラ８０は、バッテリ部９を構成する各セルグループＧＢ１、・・・ＧＢＭ、・・・ＧＢＮに対応して集積回路３Ａ、・・・３Ｍ、・・・３Ｎを有している。各集積回路は、各電池セルの端子電圧を検出するために電圧検出用の端子を備えており、各集積回路の電圧検出用の各端子Ｖ１乃至ＧＮＤは、各セルグループを構成する各電池セルの正極および負極にそれぞれ接続されている。また各集積回路は信号伝送のための送受信端子を有しており、これら各集積回路の送受信端子は以下に説明の如く直列接続され、信号伝送路を介してバッテリコントローラ２０に接続されている。以下更に詳述する。
【００１４】
セルコントローラ８０は各セルグループに対応して複数個、例えば数個から数十個、の集積回路を有しており、図１では、集積回路（以下ＩＣと略称する場合がある）を３Ａ、……、３Ｍ、……３Ｎ、として記載している。なお、集積回路３Ａと、集積回路３Ｍとの間および集積回路３Ｍと集積回路３Ｎとの間にさらに同様の構成の集積回路が存在するが煩雑さを避けるため、これらは省略する。
【００１５】
各集積回路３Ａ、……、３Ｍ、……、３Ｎは、それぞれ対応する各セルグループＧＢ１、……ＧＢＭ、……ＧＢＮを構成する各電池セル（以下、電池セルと称する場合がある）ＢＣ１〜ＢＣ４の電圧を検出する。また、各集積回路３Ａ、……、３Ｍ、……、３Ｎは、全セルグループの全電池セルの充電状態ＳＯＣ（Ｓｔａｔｅ  Ｏｆ  Ｃｈａｒｇｅ）を均一化するため、各電池セルＢＣ１〜ＢＣ４のＳＯＣを個別に調整するための充電状態調整用抵抗Ｒ１〜Ｒ４が、スイッチ素子を介して各電池セルと並列に接続される構成となっている。スイッチ素子は図２を用いて後述する。
【００１６】
さらに集積回路３Ａ、３Ｍ、３Ｎは、それぞれ対応する各セルグループＧＢ１、……ＧＢＭ、……ＧＢＮを構成する各電池セルＢＣ１〜ＢＣ４の異常状態を検出する機能を有している。これらの集積回路は何れも同じ構造を有しており、各集積回路はそれぞれ電池セルの（１）端子電圧計測回路、（２）充電状態調整回路、（３）異常状態検出回路を有している。この実施の形態で異常状態とは、バッテリセルの過充電や過放電、バッテリセル温度の異常上昇などである。 
【００１７】
集積回路３Ａ、３Ｍ、３Ｎと上位のバッテリコントローラ２０との信号の送受は、通信ハーネス５０を介しておこなわれる。バッテリコントローラ２０は車のシャーシ電位をグランド（ＧＮＤ）とし、１２Ｖ以下の低電位で動作するようになっている。一方、各集積回路３Ａ、３Ｍ、３Ｎは、対応するグループを構成する電池セルの電位が異なるので、それぞれ異なる電位に保持され、異なる電位で動作する。前述のとおり、電池セルの端子電圧は充電状態ＳＯＣに基づき変化するので、バッテリ部９の最低電位に対する各グループの電位は充電状態ＳＯＣに基づいて変化する。各集積回路３Ａ、３Ｍ、３Ｎは、バッテリ部９の対応するセルグループの電池セルの端子電圧を検出し、あるいは、対応するセルグループの電池セルの充電状態ＳＯＣの調整のための放電制御などを行うので、対応するセルグループの電位に基づいて集積回路の基準電位を変化させる方が、集積回路に加わる電圧差が小さくなる。集積回路に加わる電圧差が小さい方が、集積回路の耐圧をより小さくできる、あるいは安全性や信頼性が向上するなどの効果があり、本実施形態では関係するセルグループの電位に基づいて集積回路の基準電位を変化させるようにしている。各集積回路の基準電位となるＧＮＤ端子を関係するセルグループの電池セルのどこかに接続することで、集積回路の基準電位を関係するグループの電位に基づいて変化させることが可能となる。この実施形態では、各セルグループの最低位電位となる電池セルの端子を集積回路のＧＮＤ端子と接続している。
【００１８】
また、集積回路の内部回路を動作させる基準電圧や電源電圧を各集積回路の内部で発生させるために、各集積回路のＶ１端子を、対応する各セルグループの最高位電位となる電池セルの正極端子に接続し、各集積回路のＧＮＤ端子を各セルグループの最低位電位となる電池セルの負極端子に接続している。このような構成により、各セルグループの最高位電位と最低位電位との間の電位差すなわち電圧を受けて各集積回路は動作する。各集積回路の消費電力がバッテリ部９の電池セルに均等に分担される構成となり、ＳＯＣのアンバランスを抑える効果がある。
【００１９】
バッテリコントローラ２０の電源系統とセルコントローラ８０の電源系統とは電位関係が異なっており、また電圧の値も大きく異なるので、バッテリコントローラ２０に接続される通信ハーネス５０は、各集積回路３Ａ、３Ｍ、３Ｎの送受信端子が直列接続されている伝送路５２、５４と電気的に絶縁されていることが必要となる。そのため、電気的に絶縁するための絶縁回路が、集積回路で構成される伝送路５２、５４の入口側と出口側とにそれぞれ設けられている。
【００２０】
伝送路５２、５４の入口側に設けた絶縁回路を入口側インタフェースＩＮＴ（Ｅ）で示し、出口側に設けた絶縁回路を出口側インタフェースＩＮＴ（Ｏ）で示している。これら各インタフェースＩＮＴ（Ｅ）、ＩＮＴ（Ｏ）は、電気信号を一旦光信号に変換し、その後再び電気信号に変換する回路を有し、この回路を介して情報を伝送する。その結果、バッテリコントローラ２０の電気回路とセルコントローラ８０の電気回路との間の電気的な絶縁が維持される。入口側のインタフェースＩＮＴ（Ｅ）はフォトカプラＰＨ１、ＰＨ２を有している。フォトカプラＰＨ１はバッテリコントローラ２０の送信端子ＴＸと高電位側の集積回路３Ａの受信端子ＲＸとの間に設けられ、フォトカプラＰＨ２はバッテリコントローラ２０の送信端子ＦＦ−ＴＥＳＴと集積回路３Ａの受信端子ＦＦＩとの間に設けられている。入口側インタフェースＩＮＴ（Ｅ）内のフォトカプラＰＨ１、ＰＨ２は上述のバッテリコントローラ２０の各送信端子ＴＸ、ＦＦ−ＴＥＳＴと集積回路３Ａの受信端子ＲＸやＦＦＩとの間の電気的な絶縁を維持している。
【００２１】
同様に、バッテリコントローラ２０の受信端子と低電位側の集積回路３Ｎとの間には、出口側インタフェースＩＮＴ（Ｏ）の各フォトカプラＰＨ３、ＰＨ４が設けられ、バッテリコントローラ２０の受信端子と集積回路３Ｎの各送信端子との間の電気的な絶縁が維持されている。詳述すると、集積回路３Ｎの送信端子ＴＸとバッテリコントローラ２０の受信端子ＲＸとの間にフォトカプラＰＨ３が設けられ、集積回路３Ｎの送信端子ＦＦＯとバッテリコントローラ２０の受信端子ＦＦとの間にフォトカプラＰＨ４が設けられている。
【００２２】
バッテリコントローラ２０の送信端子ＴＸから送信される信号は、ループ状の通信路により集積回路３Ａ、……、３Ｍ、……、３Ｎを経由して、受信端子ＲＸで受信される。すなわち、バッテリコントローラ２０の送信端子ＴＸから送信される信号は、入口側インタフェースＩＮＴ（Ｅ）内のフォトカプラＰＨ１を介して集積回路３Ａの受信端子ＲＸで受信され、集積回路３Ａの送信端子ＴＸから送信されて集積回路３Ｍの受信端子ＲＸで受信され、集積回路３Ｍの送信端子ＴＸから送信されて集積回路３Ｎの受信端子ＲＸで受信され、集積回路３Ｎの送信端子ＴＸから送信されて出口側インタフェースＩＮＴ（Ｏ）のフォトカプラＰＨ３を介してバッテリコントローラ２０の受信端子ＲＸで受信される、ループ状の通信路が設けられており、このループ状の通信路を介してシリアル通信が行われる。なお、このシリアル通信により、各電池セルの端子電圧や温度などの計測値がバッテリコントローラ２０に受信される。さらに、集積回路３Ａ乃至３Ｎは、この伝送路を介してコマンドを受信すると自動的にウエイクアップ（Ｗａｋｅ  Ｕｐ）状態になるよう構成されている。従って、バッテリコントローラ２０から後述する通信コマンド２９２が伝送されると、各集積回路３Ａ〜３Ｎはそれぞれスリープ状態から動作状態に状態遷移する。
【００２３】
各集積回路３Ａ〜３Ｎはさらに異常診断を行い、異常がある場合に次の伝送路を介して１ビット信号が伝送される。各集積回路３Ａ〜３Ｎは自分自身が異常と判断した場合、あるいは前の集積回路から異常を表す信号を受信端子ＦＦＩで受信した場合に、送信端子ＦＦＯから異常信号を送信する。一方、既に受信端子ＦＦＩで受信していた異常を表す信号が消えたり、あるいは自分自身の異常判断が正常判断となったりした場合に、送信端子ＦＦＯから伝送される異常信号は消える。この異常信号は本実施形態では１ビット信号である。バッテリコントローラ２０は異常信号を集積回路に送信しないが、異常信号の伝送路が正しく動作することを診断するために、擬似異常信号であるテスト信号をバッテリコントローラ２０の端子ＦＦＴＥＳＴから送信する。次に伝送路を説明する。
【００２４】
擬似異常信号であるテスト信号は、バッテリコントローラ２０の送信端子ＦＦＴＥＳＴから、入口側インタフェースＩＮＴ（Ｅ）のフォトカプラＰＨ２を介して集積回路３Ａの受信端子ＦＦＩに送信される。この信号を受け、集積回路３Ａの送信端子ＦＦＯから異常を表す信号（以下異常信号と記す）が次の集積回路・・・集積回路３Ｍの受信端子ＦＦＩに送信される。異常信号はこのように順次送信され、集積回路３Ｎの送信端子ＦＦＯから出口側インタフェースＩＮＴ（Ｏ）のフォトカプラＰＨ４を介してバッテリコントローラ２０の受信端子ＦＦに送信される。送信路が正常に動作していれば、バッテリコントローラ２０から送信された擬似異常信号は、送信路を介してバッテリコントローラ２０の受信端子ＦＦに戻る。このように擬似異常信号をバッテリコントローラ２０が送受することで通信路の診断ができ、システムの信頼性が向上する。また上述のとおり、バッテリコントローラ２０からの送信依頼が無くても、異常状態を検知した集積回路が次の集積回路に異常信号を送ることで、速やかに異常状態がバッテリコントローラ２０に伝達される。従って異常に対する対応策を速やかに推進できる。
【００２５】
上記説明では、信号の伝送は、何れもバッテリ部９の電位の高いグループに対応する集積回路３Ａから電位の低いセルグループに対応する集積回路３Ｎに向けて行われたが、これは一例である。この逆に、バッテリコントローラ２０から、バッテリ部９の電位の低いセルグループに対応する集積回路３Ｎに信号を送信し、その後、順次電位の高いセルグループに対応した各集積回路（集積回路３Ｍを含む）に送り、最高電位のセルグループに対応した集積回路３ＡからインタフェースＩＮＴを介してバッテリコントローラ２０に送るようにしても良い。電位の高い方から低い方へ、あるいは電位の低い方から高い方へ、電位変化に従って伝送路を構成することで集積回路間にフォトカプラなどの絶縁手段を設ける必要がなくなり、簡単な構成および安価な構成で伝送路を作ることができる。
【００２６】
図１に示す直流電源システムは、正極側のリレーＲＬＰと負極側のリレーＲＬＮを介してインバータ装置などの負荷に直流電力を供給する。このリレーＲＬＰやＲＬＮの開閉は、集積回路が異常を検知すると、バッテリコントローラ２０からあるいはインバータ装置から制御される。
【００２７】
またバッテリコントローラ２０は電流センサＳｉの出力を受け、バッテリ部９全体からインバータ装置に供給される電流を検知し、また電圧計Ｖｄの出力により、バッテリ部９からインバータ装置に供給される直流電圧を検知する。
【００２８】
〈集積回路〉
図２は、集積回路３Ａの一例を示す電子回路のブロック図である。上述したように、各集積回路３Ａ、……、３Ｍ、……３Ｎはそれぞれ同一の構造となっている。したがって、集積回路３Ａ以外の他の集積回路の構成は図２に示す構成と同じである。図２に示す集積回路３Ａは、その集積回路に対応するバッテリ部９のセルグループＧＢ１に含まれる各電池セルＢＣ１〜ＢＣ４と接続されている。集積回路３Ａを代表例として説明しているが、集積回路３Ａ以外の集積回路はそれぞれ対応するバッテリ部９のセルグループと接続され、同様の動作を行う。なお、図１に示す如く集積回路３Ａおよび抵抗Ｒ１〜Ｒ４はセルコントローラ８０に設けられているが、図２では符号８０の記載を省略する。
【００２９】
集積回路３Ａの入力側端子は、セルグループＧＢ１を構成する電池セルＢＣ１からＢＣ４に接続されている。電池セルＢＣ１の正極端子は、入力端子Ｖ１を介して入力回路１１６に接続されている。この入力回路１１６は、後述するようにマルチプレクサを含む。電池セルＢＣ１の負極端子であって電池セルＢＣ２の正極端子は入力端子Ｖ２を介して、電池セルＢＣ２の負極端子であって電池セルＢＣ３の正極端子は入力端子Ｖ３を介して、電池セルＢ３の負極端子であって電池セルＢＣ４の正極端子は入力端子Ｖ４を介して、それぞれ入力回路１１６に接続されている。電池セルＢＣ４の負極端子は、集積回路３ＡのＧＮＤ端子に接続されている。
【００３０】
電源回路１２１は、たとえばＤＣ／ＤＣコンバータ等で構成され、各電池セルＢＣ１〜ＢＣ４からの電力を所定の定電圧に変換し、これらの電圧は集積回路３Ａ内の各回路に駆動電源として供給され、あるいは状態を判断するために比較回路に比較基準電圧として供給される。
【００３１】
電圧検出回路１２２は、各電池セルＢＣ１〜ＢＣ４のそれぞれの端子間電圧をデジタル値に変換する回路を有しており、デジタル値に変換された各端子間電圧はＩＣ制御回路１２３に送られ、内部の記憶回路１２５に保持される。これらの電圧は診断などに利用されたり、図１に示すバッテリコントローラ２０に通信回路１２７から送信されたりする。
【００３２】
ＩＣ制御回路１２３は、演算機能を有すると共に、記憶回路１２５、電源管理回路１２４、各種電圧の検知や状態診断を周期的に行うタイミング制御回路２５２を有している。記憶回路１２５は、例えばレジスタ回路で構成されており、電圧検出回路１２２で検出した各電池セルＢＣ１〜ＢＣ４の各端子間電圧を各電池セルＢＣ１〜ＢＣ４に対応づけて記憶し、また、その他の検出値を、予め定められたアドレスに読出し可能に保持する。電源管理回路１２４は電源回路１２１における状態を管理するように構成されている。
【００３３】
ＩＣ制御回路１２３には、通信回路１２７が接続され、この通信回路１２７を介して当該集積回路３Ａの外部から信号を受信できる。例えば、バッテリコントローラ２０から、入口側インタフェースＩＮＴ（Ｅ）のフォトカプラＰＨ１を介し、ＲＸ端子で通信コマンドを受信する。通信コマンドは通信回路１２７からＩＣ制御回路１２３に送られ、ここで通信コマンドの内容が解読され、通信コマンド内容に応じた処理が行われる。例えば通信コマンドは、各電池セルＢＣ１〜ＢＣ４の端子間電圧の計測値を要求する通信コマンド、各電池セルＢＣ１〜ＢＣ４の充電状態を調整するための放電動作を要求する通信コマンド、当該集積回路３Ａの動作を開始する通信コマンド（Ｗａｋｅ  ＵＰ）、動作を停止する通信コマンド（スリープ）、アドレス設定を要求する通信コマンド、等を含んでいる。
【００３４】
図２で、電池セルＢＣ１の正極端子は、抵抗Ｒ１を介して集積回路３Ａの端子Ｂ１に接続されている。この端子Ｂ１と端子Ｖ２との間にはバランシングスイッチ１２９Ａが設けられている。バランシングスイッチ１２９Ａには、このスイッチの動作状態を検出するための動作状態検出回路１２８Ａが並列接続されている。このバランシングスイッチ１２９Ａは放電制御回路１３２によって開閉が制御される。同様に、電池セルＢＣ２の正極端子は抵抗Ｒ２を介して端子Ｂ２に接続され、この端子Ｂ２と端子Ｖ３との間にはバランシングスイッチ１２９Ｂが設けられている。バランシングスイッチ１２９Ｂには、このスイッチの動作状態を検出するための動作状態検出回路１２８Ｂが並列接続されている。このバランシングスイッチ１２９Ａは放電制御回路１３２によって開閉が制御される。
【００３５】
電池セルＢＣ３の正極端子は抵抗Ｒ３を介して端子Ｂ３に接続され、この端子Ｂ３はと端子Ｖ４との間にはバランシングスイッチ１２９Ｃが設けられている。バランシングスイッチ１２９Ｃには、このスイッチの動作状態を検出するための動作状態検出回路１２８Ｃが並列接続されている。このバランシングスイッチ１２９Ｃは放電制御回路１３２によって開閉制御される。電池セルＢＣ４の正極端子は抵抗Ｒ４を介して端子Ｂ４に接続され、この端子Ｂ４と端子ＧＮＤとの間にはバランシングスイッチ１２９Ｄが設けられている。バランシングスイッチ１２９Ｄには、このスイッチの動作状態を検出するための動作状態検出回路１２８Ｄが並列接続されている。このバランシングスイッチ１２９Ｃは放電制御回路１３２によって開閉が制御される。
【００３６】
動作状態検出回路１２８Ａ〜１２８Ｄは、それぞれ各バランシングスイッチ１２９Ａ〜１２９Ｄの両端電圧を所定周期で繰り返し検出し、各バランシングスイッチ１２９Ａ〜１２９Ｄが正常であるかどうかを検出する。バランシングスイッチ１２９Ａ〜１２９Ｄは電池セルＢＣ１〜電池セルＢＣ４の充電状態を調整するスイッチで、これらスイッチが異常の場合、電池セルの充電状態を制御できなくなり、一部の電池セルが過充電あるいは過放電になる恐れがある。各バランシングスイッチ１２９Ａ〜１２９Ｄの異常検出は、例えば、あるバランシングスイッチが導通している状態にも拘わらず、対応するバランシングスイッチの端子間電圧が電池セルの端子電圧を示す場合である。この場合は、バランシングスイッチが制御信号に基づく導通状態になっていないこととなる。一方、あるバランシングスイッチが開放状態であるにも拘わらず、対応するバランシングスイッチの端子間電圧が電池セルの端子電圧に比べて低い値である場合、この場合は、バランシングスイッチは制御信号に関係なく導通していることとなる。これらスイッチの動作状態検出回路１２８Ａ〜１２８Ｄとしては、差動アンプ等で構成される電圧検出回路が用いられ、後述の異常判断回路１３１で上記判断を行う所定電圧と比較される。
【００３７】
バランシングスイッチ１２９Ａ〜１２９Ｄは、たとえばＭＯＳ型ＦＥＴで構成され、それぞれ対応する電池セルＢＣ１〜ＢＣ４に蓄積された電力を放電させる作用をする。多数の電池セルが直列接続されているバッテリ部９に対してインバータなどの電気負荷が接続され、電気負荷に対する電流の供給は直列接続された多数の電池セルの全体で行われる。またバッテリ部９が充電される状態では、電気負荷からの電流の供給は直列接続された多数の電池セルの全体に対して行われる。直列接続された多数の電池セルが異なる充電状態（ＳＯＣ）にあると、電気負荷への電流の供給は多数の電池セルの内の最も放電状態にある電池セルの状態により制限される。一方、電気負荷から電流が供給される場合、多数の電池セルの内の最も充電されている電池セルによって電流の供給が制限される。
【００３８】
このため直列接続された多数の電池セルの内、例えば平均状態を越えた充電状態にある電池セルに対して、電池セルに接続されているバランシングスイッチ１２９を導通状態とし、直列接続されている抵抗を介して放電電流を流す。これにより直列接続された電池セルの充電状態が互いに近づく方向に制御されることとなる。また他の方法として、最も放電状態にある電池セルを基準セルとし、基準セルとの充電状態の差に基づき放電時間を決める方法がある。他にも充電状態ＳＯＣを調整する色々の方法がある。充電状態は電池セルの端子電圧を基に演算で求めることができる。電池セルの充電状態とその電池セルの端子電圧は相関関係が有るので、各電池セルの端子電圧を近づけるようにバランシングスイッチ１２９を制御することで、各電池セルの充電状態を近づけることができる。
【００３９】
動作状態検出回路１２８Ａ〜１２８Ｄによって検出されるバランシングスイッチを構成する各ＦＥＴのソースとドレーン間の電圧は、電位変換回路１３０に出力される。各ＦＥＴのソースとドレーン間の電位は集積回路３Ａの基準電位に対してそれぞれ異なっており、このままでは比較判断が難しいので、電位変換回路１３０で電位をそろえ、次に異常判定回路１３１で異常判定する。また、電位変換回路１３０は、診断すべきバランシングスイッチ１２９をＩＣ制御回路１２３からの制御信号に基づき選択する機能も有している。選択されたバランシングスイッチ１２９の電圧が異常判定回路１３１に送られ、異常判定回路１３１はＩＣ制御回路１２３から制御信号に基づき、前記電位変換回路１３０からの信号である診断すべきバランシングスイッチ１２９の端子間電圧を判定電圧と比較し、各バランシングスイッチ１２９Ａ１〜１２９Ｄが異常か否かを判定する。
【００４０】
放電制御回路１３２には、ＩＣ制御回路１２３から放電させるべき電池セルに対応したバランシングスイッチ１２９を導通させるための指令信号が送られ、この指令信号に基づき、放電制御回路１３２から、上述したようにＭＯＳ型ＦＥＴから構成されるバランシングスイッチ１２９Ａ〜１２９Ｄの導通を行うゲート電圧に相当する信号が出力される。ＩＣ制御回路１２３は、図１のバッテリコントローラ２０から、電池セルに対応した放電時間の指令を通信により受け、上記放電の動作を実行する。
【００４１】
異常判定回路１３１によりバランシングスイッチ１２９Ａ〜１２９Ｄの異常の有無が検出される。
【００４２】
ＩＣ制御回路１２３は、バランシングスイッチ１２９Ａ〜１２９Ｄの異常を通信回路１２７の１ビット送信端子ＦＦＯから出力し、他の集積回路の通信回路１２７を介して前記バッテリコントローラ２０に送信する。また、ＩＣ制御回路１２３は、バランシングスイッチ１２９Ａ〜１２９Ｄの異常と、その異常であるバランシングスイッチを特定する情報を、通信回路１２７の送信端子ＴＸを介してバッテリコントローラ２０に送信する。
【００４３】
〈通信手段〉
図３は、各集積回路３Ａ、……、３Ｍ、……３Ｎにおける通信コマンドの送受信方法を示した説明図である。図３（ａ）は、集積回路３Ａの端子ＲＸが受信する信号３Ａ−ＲＸおよび集積回路３Ａの端子ＴＸから送信される信号３Ａ−ＴＸ、さらに次の集積回路３Ｂの端子ＲＸが受信する信号３Ｂ−ＲＸおよび次の集積回路３Ｂの端子ＴＸから送信される信号３Ｂ−ＴＸ、さらにまた次の集積回路３Ｃの端子ＲＸが受信する信号３Ｃ−ＲＸおよびその集積回路３Ｃの端子ＴＸから送信される信号３Ｃ−ＴＸを示している。
【００４４】
信号３Ａ−ＴＸは集積回路３Ａ内の抵抗ＲＡと集積回路３Ｂ内の抵抗ＲＢとで分圧されて信号３Ｂ−ＲＸが形成され、信号３Ｂ−ＴＸは集積回路３Ｂ内の抵抗ＲＢ'と集積回路３Ｃ内の抵抗ＲＣ'で分圧されて信号３Ｃ−ＲＸが形成される。以下直列接続された通信路において集積回路の内部の各抵抗により分圧されて受信信号の電位が定まる。
【００４５】
図３（ｂ）は、前記信号３Ａ−ＲＸ、３Ａ−ＴＸ、３Ｂ−ＲＸ、３Ｂ−ＴＸ、３Ｃ−ＲＸ、および３Ｃ−ＴＸのそれぞれの電位レベルを示している。
【００４６】
このように、電圧レベルの最上位のセルグループＧＢ１より下流側のセルグループに向けて、閾値の電圧は、電池セル４個分の加算電圧と電池セル２個分の加算電圧との半分の電圧に設定するようにしている。すなわち、図３（ｂ）に示すような信号３Ａ−ＴＸが集積回路３Ａから出力されると、集積回路３Ｂの入力信号は信号３Ａ−ＴＸを抵抗ＲＡ、ＲＢで分圧したものになる。集積回路３Ｂの入力信号は図３（ｂ）の信号３Ｂ−ＲＸのようになり、集積回路３ＢのグランドレベルＧＮＤＢから見ると、ハイレベル＝ＶＣＣＢは電池セル４個分の電圧で、ローレベルは電池セル２個分の電圧になる。閾値をハイ・ローの中間に設定すると、閾値の電位は、２個分の電位（ローレベル）と４個分の電位（ハイレベル）との中間になるので、４個分の合計と２個分の合計をさらに加算した値の半分に設定することになる。
【００４７】
このようにした理由は、集積回路３Ｂが管理する電池セルの各電圧を基準に集積回路３Ａと同様な閾値で集積回路３ＡのＴＸ端子からの信号を判定しようとした場合、上記信号のＬｏｗレベルが集積回路３Ｂに掛かる総電圧の１／２となってしまう不都合を回避させるためである。すなわち、各集積回路の閾値は、それが関係しているセル電池（４個分）の電圧を基準に設定される。集積回路３Ａにおける閾値を、信号３Ａ−ＲＸのハイ・ローの中間＝（ＶＣＣＡ−ＧＮＤＡ）／２に設定すると、これは、セル電池４個分の半分の電圧になる。集積回路３Ｂの閾値も、同様にセル電池４個分の半分＝（ＶＣＣＢ−ＧＮＤＢ）／２に設定すると、信号３Ｂ−ＲＸのローレベルと同じになってしまい不都合が生じる。このような不都合を避けるために、集積回路３Ｂ以降の集積回路では上述のように閾値を設定すれば、閾値レベルは信号ＲＸのハイ・ローの中間になる。なお上記信号レベルは高電位側から低電位側への送信を前提として説明したが、低電位側から高電位側への送信も同様に抵抗分割によるレベルシフトを行うことで可能となる。
【００４８】
〈診断および計測、（１）動作スケジュール概要〉
図４は計測動作のタイミングを説明する図である。図２に示す集積回路３Ａは計測動作と共に診断動作を行う機能を有しており、図４に記載の動作タイミングで繰り返し計測を行い、この計測に同期して診断を実行する。なお、上述した図１および図２はバッテリ部９を構成する各セルグループＧＢ１〜ＧＢＮが、４個の電池セルを有している実施形態であるが、集積回路３Ａ〜３Ｎは６個の電池セルに対応できる回路となっている。従って、各セルグループＧＢ１〜ＧＢＮを構成する電池セルの数は、最大６個まで増やすことが可能である。そのため、図４の動作タイミングを示す図においても、電池セルが６個を前提として構成されている。
【００４９】
図１の各セルグループＧＢ１〜ＧＢＮに対応付けて設けられた集積回路３Ａ〜３Ｎには、各セルグループＧＢ１〜ＧＢＮを構成する電池セル数がそれぞれセットされる。それにより、各集積回路３Ａ〜３Ｎは関係付けられたセルグループの電池セル数に対応したステージ信号を発生する。このように構成することで、セルグループＧＢ１〜ＧＢＮを構成する電池セル数を変えることが可能となり設計の自由度が増大すると共に、高速の処理が可能となる。
【００５０】
図４は上述のとおり、診断動作と計測動作のタイミングを説明する図である。上記計測動作のタイミングおよび測定周期、あるいは診断動作は、起動回路２５４と第１ステージカウンタ２５６および第２ステージカウンタ２５８からなるステージカウンタとにより管理される。ステージカウンタ２５６，２５８は、集積回路３Ａ全体の動作を管理する制御信号（タイミング信号）を発生する。ステージカウンタ２５６，２５８は、実際には分離されていないが、ここでは理解しやすくするためにあえて分離して示した。上記ステージカウンタは通常のカウンタであっても良いし、シフトレジスタであっても良い。
【００５１】
起動回路２５４は、（１）伝送路から送られてくるＷａｋｅ  ＵＰを要求する通信コマンドを端子ＲＸで受信すると、あるいは（２）集積回路のＩＣの電源電圧が供給され所定の電圧に達すると、（３）あるいは車のスタータスイッチ（キースイッチ）が投入されたことを表す信号を受信すると、前記第１と第２のステージカウンタ２５６，２５８へリセット信号を出力して各ステージカウンタ２５６，２５８を初期状態とし、所定の周波数でクロック信号を出力する。すなわち上記（１）乃至（３）の条件で集積回路３Ａは計測動作および診断動作を実行する。一方、伝送路からＳｌｅｅｐを要求する通信コマンドを受信すると、あるいは該通信コマンドを所定時間以上受信出来ないと、起動回路２５４はステージカウンタ２５６，２５８がリセット状態すなわち初期状態に戻ったタイミングで、クロックの出力を停止する。このクロックの出力停止によりステージの進行が停止されるので、上記計測動作および診断動作の実行は停止状態となる。
【００５２】
起動回路２５４からのクロック信号を受け、第１ステージカウンタ２５６はステージＳＴＧ２の各期間（後述する［ＳＴＧＣａｌのＲＥＳ］期間〜［ＳＴＧＰＳＢＧの計測］期間のそれぞれ）内の処理タイミングを制御する計数値を出力し、デコーダ２５７は、ステージＳＴＧ２の各期間内の処理タイミングを制御するタイミング信号ＳＴＧ１を発生する。第２ステージカウンタ２５８の計数値が進むに従い、対応する期間が動作表２６０の左から右に切り替わる。第２ステージカウンタ２５８の計数値に応じて、各期間を特定するステージ信号ＳＴＧ２がデコーダ２５９から出力される。
【００５３】
第１ステージカウンタ２５６は下位のカウンタであり、第２ステージカウンタ２５８は上位カウンタである。第２ステージカウンタ２５８の計数値が「００００」で、第１ステージカウンタ２５６の計数値が「００００」〜「１１１１」の間は、ステージＳＴＧＣａｌのＲＥＳ期間（以下では、［ＳＴＧＣａｌ ＲＥＳ］期間と称する）を表す信号がデコーダ２５９から出力される。そして、［ＳＴＧＣａｌ ＲＥＳ］期間に行われる種々の処理は、第１ステージカウンタ２５６の計数値「００００」〜「１１１１」に基づいて出力されるデコーダ２５７の信号に基づいて実行される。
【００５４】
なお、図４では、第１ステージカウンタ２５６は４ビットカウンタのように簡略して記載しているが、例えば、第１ステージカウンタ２５６が８ビットカウンタである場合には、１カウント毎に異なる処理動作が行われるとすると、２５６種類の処理が可能となる。第２ステージカウンタ２５８についても第１ステージカウンタ２５６の場合と同様であって、多数の計数を可能とすることで多数の処理が可能である。
【００５５】
第１ステージカウンタ２５６の計数値が「１１１１」となると［ＳＴＧＣａｌのＲＥＳ］期間が終了し、第２ステージカウンタ２５８の計数値が「０００１」となって［ＳＴＧＣａｌの計測］期間となる。そして、第１ステージカウンタ２５８が計数値「０００１」である［ＳＴＧＣａｌ 計測］期間においては、第１ステージカウンタ２５６の計数値「００００」〜「１１１１」に基づいてデコーダ２５７から出力される信号に基づいて種々の処理が実行される。そして、第１ステージカウンタ２５６の計数値が「１１１１」となると［ＳＴＧＣａｌの計測］期間が終了し、第２ステージカウンタ２５８の計数値が「００１０」となって［ＳＴＧＣＶ１ ＲＥＳ］期間となる。この［ＳＴＧＣＶ１ ＲＥＳ］期間において第１ステージカウンタ２５６の計数値が「１１１１」となると［ＳＴＧＣＶ１ ＲＥＳ］期間を終了し、第２ステージカウンタ２５８の計数値が「００１１」となって［ＳＴＧＣＶ１ 計測］期間が開始される。
【００５６】
このように、図４の［ＳＴＧＣａｌ ＲＥＳ］期間からスタートし、第２ステージカウンタ２５８の計数に従い順に動作期間が右側に移動し、［ＳＴＧＰＳＧＢ 計測］期間の終了で基本動作が終了する。この次に第２ステージカウンタ２５８が計数アップすると、再び［ＳＴＧＣａｌ ＲＥＳ］期間がスタートする。
【００５７】
なお、図２に示す実施の形態では、バッテリ部９の各セルグループＧＢ１〜ＧＢＮは４個の電池セルで構成されるので、表２６０のステージＳＴＧＣＶ５とステージＳＴＧＣＶ６は使用されない、あるいはスキップされてステージＳＴＧＣＶ５とステージＳＴＧＣＶ６は存在しない。また、強制的に第２ステージカウンタ２５８の内容を特定の計数値とすると、その計数値に対応した期間内の処理が実行される。
【００５８】
〈診断および計測、（２）各ステージにおける診断と計測〉
次に、図４の動作表２６０の行２６０Ｙ１に記載の各ステージにおける、計測および診断の内容について説明する。前述したように各ステージはＲＥＳ期間と計測期間とを有し、ＲＥＳ期間では診断動作が行われ、計測期間では計測動作、診断動作および計測された値に基づく被測定対象の診断が行われる。表２６０の行２６０Ｙ３〜行２６０Ｙ９に示す「丸印」は、それぞれの行に記載した診断項目が「丸印」が施された期間において実行されることを表している。これらの診断項目は、集積回路を含む制御装置、すなわち図２に記載の計測系あるいは電池セルの放電制御系の自己診断である。
【００５９】
なお、各ステージのＲＥＳ期間では丸印で示す項目の診断を行うだけでなく、計測のために使用するアナログデジタル変換器１２２Ａの初期化を行う。本実施の形態では、ノイズの影響を少なくするためにコンデンサを使用した充放電型のアナログデジタル変換器１２２Ａを使用する、前に行われた動作時にコンデンサに蓄えられた電荷の放電などもこのＲＥＳ期間で実施する。行２６０Ｙ２の各ステージの計測期間では、アナログデジタル変換器１２２Ａを使用した計測の実行や、計測された値に基づく被測定対象の診断を行う。
【００６０】
ステージＳＴＧＣａｌのＲＥＳ期間では行２６０Ｙ３〜行２６０Ｙ９に示す自己診断を主に行い、行２６０Ｙ６に記載するマルチプレクサとして機能する入力回路１１６の診断（ＨＶＭＵＸ）、行２６０Ｙ７に記載する入力回路１１６の切り替え動作を行う切り替え回路の診断（ＨＶＭＵＸ信号選択）、更に行２６０Ｙ９に記載する項目である、集積回路内部のデジタル比較動作を行う部分の選択信号の診断（図５の現在値記憶回路２７４や基準値記憶回路２７８の選択信号）などの診断を行う。
【００６１】
ステージＳＴＧＣａｌの計測期間では、行２６０Ｙ３に記載する項目である、電池セルの充電状態の調整のためのバランシングスイッチ１２９のドレーン電圧の計測とバランシングスイッチ１２９の診断を行い、さらに合わせて行２６０Ｙ５に記載する項目である、集積回路内部のデジタル比較回路の診断を行う。行２６０Ｙ８に記載する診断では、各電池セルがオーバーチャージ（過放電）の状態になった場合にそれを検知するための閾値を発生する回路が正常かどうかを診断する。仮に閾値を発生する回路が異常になると正しい過放電診断を行えなくなる。また、ステージＳＴＧＣａｌの計測期間では、行２６０Ｙ７および行２６０Ｙ９の診断も行われる。なお、行２６０Ｙ７に記載する診断項目と行２６０Ｙ９に記載する項目は全てのステージのＲＥＳ期間および計測期間おいて実行される。これらの診断実施周期は一例であり、毎回診断するのではなく、もっと長い間隔で行っても良い。
【００６２】
ステージＳＴＧＣＶ１〜ステージＳＴＧＣＶ６の計測期間では順に電池セルの端子電圧を計測し、さらに計測された値から各電池セルが過充電や過放電の状態にならないかを診断する。実際に過充電や過放電の状態にならないように、過充電や過放電の診断は安全性の幅を取って設定している。なお、図１や図２に示すようにグループＧＢ１〜ＧＢＮの電池セルが４個の場合は、ステージＳＴＧＣＶ５とステージＳＴＧＣＶ６はスキップされる。ステージＳＴＧＶＤＤの計測期間では図２に示す電源回路１２１の出力電圧が計測される。ステージＳＴＧＴＥＭの計測期間では温度計の出力電圧が測定される。ステージＳＴＧＰＳＢＧの計測期間では基準電圧が測定される。
【００６３】
診断動作に関しては、ステージＳＴＧＣＶ１〜ステージＳＴＧＰＳＢＧのＲＥＳ期間では、ステージＳＴＧＣａｌのＲＥＳ期間と同様の診断動作が行われる。また、ステージＳＴＧＣＶ１〜ステージＳＴＧＴＥＭの計測期間では、いずれの期間においても、行２６０Ｙ７および行２６０Ｙ９に示す診断項目が実行される。ステージＳＴＧＴＥＭでは、行２６０Ｙ４に記載する診断項目である集積回路内部のアナログ回路およびアナログデジタル変換器、基準電圧発生回路が、総合的に正常か否かを診断する。また、行２６０Ｙ７および行２６０Ｙ９に示す診断項目が実行される。基準電圧発生回路から出力される電圧は既知の電圧値であり、その電圧値の計測結果が所定に範囲に入っていない場合には上記回路のいずれかが異常と判断でき、制御を禁止すべき状態であることが診断できる。
【００６４】
〈診断および計測、（３）電池セルの端子電圧計測〉
図５は計測回路および診断回路を示す図である。入力回路１１６はマルチプレクサの働きをする回路であり、後述するようにマルチプレクサ１１８，１２０を備えている。入力回路１１６には、図４に示したデコーダ２５７，２５９から信号ＳＴＧ１，ＳＴＧ２が入力され、その信号に基づいてマルチプレクサによる選択動作が行われる。マルチプレクサ診断（ＨＶＭＵＸ）においては、電圧検出回路１２２の差動増幅器２６２の出力信号が診断回路１６０に取り込まれ、後述するような診断が行われる。また、例えば電池セルＢＣ１の電圧を計測する場合には、端子Ｖ１と端子Ｖ２とを選択すると電池セルＢＣ１の電圧が入力回路１１６から電圧検出回路１２２に出力される。ここでは、電池セルの端子電圧計測について説明する。
【００６５】
電圧検出回路１２２は差動増幅器２６２とアナログデジタル変換器１２２Ａとを有している。なお、電池セルＢＣ１〜ＢＣ４（または、ＢＣ１〜ＢＣ６）は直列接続されているので、各端子電圧の負極電位が異なっている。そのため、基準電位（各集積回路３Ａ〜３Ｎ内のＧＮＤ電位）をそろえるために差動増幅器２６２を使用している。差動増幅器２６２の出力はアナログデジタル変換器１２２Ａによりデジタル値に変換され、平均化回路２６４に出力される。平均化回路２６４は所定回数の測定結果の平均値を求める。その平均値は、電池セルＢＣ１の場合には現在値記憶回路２７４のレジスタＣＥＬＬ１に保持される。平均化回路２６４は、平均化制御回路２６３に保持された測定回数の平均値を演算し、その出力を上述の現在値記憶回路２７４に保持する。平均化制御回路２６３が１を指令すれば、アナログデジタル変換器１２２Ａの出力は、平均化されないでそのまま現在値記憶回路２７４のレジスタＣＥＬＬ１に保持される。平均化制御回路２６３が４を指令すれば、電池セルＢＣ１の端子電圧の４回の計測結果が平均化され、その平均値が上記現在値記憶回路２７４のレジスタＣＥＬＬ１に保持される。４回の平均を演算するには、最初は図４のステージによる計測を４回行うことが必要となるが、４回目以降は最新の測定結果の中から４個の測定値を演算に使用することで、各測定毎に平均化回路２６４の平均化演算が可能となる。上述のとおり、所定回数の平均化を行う平均化回路２６４を設けることで、ノイズの悪影響を除去できる。図１に示すバッテリ部９の直流電力はインバータ装置に供給され、交流電力に変換される。インバータ装置による直流電力から交流電力への変換の際に電流の導通や遮断動作が高速に行われ、そのときに大きなノイズが発生するが、平均化回路２６４を設けることで、そのようなノイズの悪影響を少なくできる効果がある。
【００６６】
デジタル変換された電池セルＢＣ１の端子電圧のデジタル値は現在値記憶回路２７４のレジスタＣＥＬＬ１に保持される。上記計測動作が図４の［ＳＴＧＣＶ１の計測］期間で行われる。その後、ステージＳＴＧＣＶ１の計測として示す時間内において、計測値に基づく診断動作が行われる。診断動作としては過充電診断と過放電診断である。先ず電池セルＢＣ１の端子電圧のデジタル値は現在値記憶回路２７４のレジスタＣＥＬＬ１に保持され、次に、デジタルマルチプレクサ２７２は、現在値記憶回路２７４のレジスタＣＥＬＬ１から電池セルＢＣ１の端子電圧を読み出してデジタル比較器２７０に送る。また、デジタルマルチプレクサ２７６は、基準値記憶回路２７８から過充電の判断基準値ＯＣを読み出しデジタル比較器２７０へ送る。デジタル比較器２７０はレジスタＣＥＬＬ１からの電池セルＢＣ１の端子電圧と過充電の判断基準値ＯＣとを比較し、もし電池セルＢＣ１の端子電圧が過充電の判断基準値ＯＣより大きい場合には、フラグ記憶回路２８４に異常を表すフラグ［ＭＦｆｌａｇ］をセットする。また、過充電を表すフラグ［ＯＣｆｌａｇ］もセットする。実際には過充電状態が生じないように制御しており、このような状態はほとんど生じない。しかし、信頼性を担保するため、診断を繰り返し実行する。
【００６７】
過充電診断に続いて、さらに過放電の診断を行う。デジタルマルチプレクサ２７２が現在値記憶回路２７４のレジスタＣＥＬＬ１から電池セルＢＣ１の端子電圧を読み出しデジタル比較器２７０に送る。またデジタルマルチプレクサ２７６が基準値記憶回路２７８から過放電の判断基準値ＯＤを読み出しデジタル比較器２７０へ送る。前記デジタル比較器２７０はレジスタＣＥＬＬ１からの電池セルＢＣ１の端子電圧と過放電の判断基準値ＯＤとを比較し、もし電池セルＢＣ１の端子電圧が過放電の判断基準値ＯＤより小さい場合には、フラグ記憶回路２８４に異常を表すフラグ［ＭＦｆｌａｇ］をセットする。また、過放電を表すフラグ［ＯＣｆｌａｇ］もセットする。上述の過充電の場合と同様、実際には過放電状態が生じないように制御しており、このような過放電の状態はほとんど生じない。しかし、信頼性を担保するため、診断を繰り返し実行する。
【００６８】
上記説明は図４のステージＳＴＧＣＶ１の計測期間での電池セルＢＣ１に関する計測と診断である。同様に次のステージＳＴＧＣＶ２では、図５の入力回路１１６は電池セルＢＣ２の端子電圧を選択して電圧検出回路１２２へ出力する。電圧検出回路１２２はデジタル変換し、平均化回路２６４で平均値を演算し、現在値記憶回路２７４のレジスタＣＥＬＬ２に保持する。デジタル比較器２７０は、デジタルマルチプレクサ２７２によってレジスタＣＥＬＬ２から読み出された電池セルＢＣ２の端子電圧を上記過充電の判断基準値ＯＣと比較し、次に電池セルＢＣ２の端子電圧を過放電の判断基準値ＯＤと比較する。上記過充電の判断基準値ＯＣとの比較や過放電の判断基準値ＯＤとの比較で異常状態の判断を行い、もし異常状態であればフラグ記憶回路２８４に異常を表すフラグ［ＭＦｆｌａｇ］をセットし、異常の原因を表すフラグ［ＯＣｆｌａｇ］あるいはフラグ［ＯＤｆｌａｇ］をセットする。
【００６９】
以下同様に図４のステージＳＴＧＣＶ３の計測期間で電池セルＢＣ３の端子電圧の計測と過充電や過放電の診断を行い、ステージＳＴＧＣＶ４の計測期間で電池セルＢＣ４の端子電圧の計測と過充電や過放電の診断を行う。
【００７０】
〈診断および計測、（４）診断〉
以下では、図４に示した各ステージのＲＥＳ期間に行われる診断項目のうち、行２６０Ｙ６に示したマルチプレクサ診断について説明する。
【００７１】
図６，図３０，３４を参照して、マルチプレクサ診断動作について説明する。図３０は、図５に示す回路の内、マルチプレクサ診断に関係する回路を示したものである。入力回路１１６は、図１に示す集積回路３Ａ〜３Ｎの内部回路であり、マルチプレクサ１１８、１２０を有している。Ｚ１〜Ｚ４は、既知の一定電圧を発生する定電圧発生素子や回路であり、ここではツェナー素子が用いられている。各ツェナー素子Ｚ１〜Ｚ４は、定電流回路１１７の電流によって両端に一定の電圧Ｖｚを発生する。ここでは、各ツェナー素子Ｚ１〜Ｚ４のツェナー電圧Ｖｚは等しく設定されている。
【００７２】
診断回路１６０には、電圧比較回路１６２、判断回路１６４、ＯＲ回路１６６および電圧源ＶＨ，ＶＬが設けられている。入力回路１１６および診断回路１６０にはＳＴＧ１、ＳＴＧ２信号が入力され、入力回路１１６および診断回路１６０に設けられたスイッチ（後述する）の動作は、ＳＴＧ１、ＳＴＧ２信号の指示に従って行われる。なお、図３０に示すマルチプレクサ１２０の状態は、ステージＳＴＧＣＶ１における状態を示している。
【００７３】
マルチプレクサ１２０の診断は、図４の行２６０Ｙ６に示すように、ステージＳＴＧＣａｌ〜ステージＳＴＧＰＳＢＧの全ての期間（ＲＥＳ期間、計測期間）において行われる。ここでは、それらを代表して、ステージＳＴＧＣＶ１〜ＳＴＧＣＶ４の各期間について説明する。各ステージＳＴＧＣＶ１〜ＳＴＧＣＶ４の計測期間では、マルチプレクサ１２０の診断を行ってマルチプレクサ１２０が正常動作することを確認した上で、電池セルの端子電圧の測定を行う。ステージＳＴＧＣａｌ，ステージＳＴＧＶＤＤ〜ステージＳＴＧＰＳＢＧの計測期間についても同様の考え方であり、マルチプレクサ１２０の正常動作を確認してから計測を行う。
【００７４】
図６は、ステージＳＴＧＣＶ１〜ステージＳＴＧＣＶ４における動作を説明する図であり、時間の経過に従って表の左側から右側へと動作が進む。すなわち、このようなスイッチ接続動作が、ＳＴＧ１・ＳＴＧ２信号によって入力回路１１６および診断回路１６０に指示される。まず、ステージＳＴＧＣＶ１について説明する。マルチプレクサ１２０に関しては、ステージＳＴＧＣＶ１のＲＥＳ期間および計測期間のいずれにおいても、スイッチＳＢ１は接点ＭＢ１に接続され、スイッチＳＢ２は接点ＭＢ２に接続される。一方、マルチプレクサ１１８に関しては、ＲＥＳ期間においてはスイッチＳＡ１が接点ＭＡ１に接続され、計測期間ではスイッチＳＡ１は接点ＭＡ２に接続される。マルチプレクサ１１８の他のスイッチＳＡ２〜ＳＡ４は、いずれの期間においても開放状態とされる。
【００７５】
図３０，３４を参照して説明する。ステージＳＴＧＣＶ１のＲＥＳ期間においてスイッチＳＡ１が接点ＭＡ１に接続されると、ツェナー素子Ｚ１のツェナー電圧Ｖｚがマルチプレクサ１２０に入力される。そして、そのときのマルチプレクサ１２０の出力電圧を、差動増幅器２６２を介して電圧比較回路１６２に入力する。なお、電池セルＢＣ１〜ＢＣ４（または、ＢＣ１〜ＢＣ６）は直列接続されているので、各端子電圧の負極電位が異なっている。そのため、上述したように、基準電位（各集積回路３Ａ〜３Ｎ内のＧＮＤ電位）をそろえるために差動増幅器２６２を使用している。
【００７６】
マルチプレクサ診断を行う［ＳＴＧＣＶ１ ＲＥＳ］期間では、電圧比較回路１６２のスイッチＳＣ１が接続される。そして、マルチプレクサ１２０の出力電圧Ｖｍが入力されたツェナー電圧Ｖｚと一致するか否か、すなわちマルチプレクサ１２０が正常に動作しているか否かを確認するために、スイッチＳＤ１を上限比較用の電圧源ＶＨと接続する。電圧源ＶＨの発生する電圧ＶＨは、上述したツェナー電圧Ｖｚ（既知の電圧）より高く設定されている。判断回路１６４は、電圧比較回路１６２の出力から、Ｖｍ＞ＶＨであった場合、すなわち出力電圧Ｖｍが入力されたツェナー電圧Ｖｚと一致しなかった場合には、マルチプレクサ１２０のスイッチ接続状態が正常でないとして異常信号を出力する。
【００７７】
次いで、スイッチＳＤ１を下限比較用の電圧源ＶＬと接続する。電圧源ＶＬの発生する電圧ＶＬはツェナー電圧Ｖｚ（既知の電圧）より低く設定されている。判断回路１６４は、電圧比較回路１６２の出力から、Ｖｍ＜ＶＬであった場合、すなわち出力電圧Ｖｍが入力されたツェナー電圧Ｖｚと一致しなかった場合には異常信号を出力する。なお、ここでは差動増幅器２６２の出力を電圧比較回路１６２に入力して異常判断を行っているので、マルチプレクサ１２０の異常が発生した場合だけでなく、マルチプレクサ１１８や差動増幅器２６２に異常が発生した場合にも、判断回路１６４により異常を検出することができる。
【００７８】
診断回路１６０のＯＲ回路１６６は、判断回路１６４から異常信号が入力されると異常信号を異常フラグ記憶回路１６８へと出力する。その結果、異常フラグ記憶回路１６８に異常フラグがセットされる。この異常フラグ記憶回路１６８は、図５に示すフラグ記憶回路２８４のＭＦflagレジスタと同じものである。異常フラグ記憶回路１６８は、異常フラグがセットされると、異常信号をＯＲ回路１６６および通信回路１２７のＯＲ回路２８８に出力する。そのため、異常フラグ記憶回路１６８に異常フラグが保持されていると、判断回路１６４から正常信号が出力されていてもＯＲ回路１６６からは異常信号が出力される。
【００７９】
なお、詳細な回路は図示していないが、異常フラグ記憶回路１６８にセットされた異常フラグは、通信回路１２７を介して送られてくるコマンドにより、リセットすることが可能である。
【００８０】
異常フラグ記憶回路１６８に異常フラグが保持されると、異常信号がＯＲ回路２８８へ常時出力される。ＯＲ回路２８８には、他の集積回路からの信号が入力端子ＦＦＩを介して入力される。ＯＲ回路２８８は、入力端子ＦＦＩを介して他の集積回路から異常信号が入力されると、または、異常フラグ記憶回路１６８から異常信号が入力されると、出力端子ＦＦＯから異常信号を出力する。すなわち、入力端子ＦＦＩに正常を表す信号が入力され、かつ異常フラグ記憶回路１６８に異常フラグが保持されていない条件においてのみ、正常を表す信号を出力端子ＦＦＯに出力する。
【００８１】
ＳＴＧ１・ＳＴＧ２信号に基づいて［ＳＴＧＣＶ１ ＲＥＳ］期間から［ＳＴＧＣＶ１ 計測］期間へと移行すると、図６の動作図に示すように、マルチプレクサ１１８のスイッチＳＡ１が接点ＭＡ２に接続されるとともに、診断回路１６０のスイッチＳＣ１およびＳＤ１が開放状態とされ、電池セルＢＣ１の端子電圧計測が行われる。このとき、判断回路１６４は非動作状態とされ、判断回路１６４からＯＲ回路１６６に対して正常／異常の信号は出力されない。このように、マルチプレクサ診断で正常と診断されたマルチプレクサ１２０のスイッチ状態を維持したまま、マルチプレクサ１１８のスイッチＳＡ１を切り替えることにより端子電圧の測定を行うようにしているので、電池セルＢＣ１の端子電圧計測を確実に行うことができる。なお、端子電圧計測の詳細については後述する。
【００８２】
［ＳＴＧＣＶ１ 計測］期間が終了すると、ステージＳＴＧＣＶ２のＲＥＳ期間に移行する。ステージＳＴＧＣＶ２においては、図３１に示すようにスイッチＳＢ１は接点ＭＢ２に接続され、スイッチＳＢ２は接点ＭＢ３に接続される。図６に示すように、このスイッチ状態は、ＲＥＳ期間および計測期間のいずれにおいても保持される。一方、マルチプレクサ１１８に関しては、ＲＥＳ期間においてはスイッチＳＡ１が接点ＭＡ２に接続され、スイッチＳＡ２が接点ＭＡ３に接続される。また、計測期間においては、スイッチＳＡ１は接点ＭＡ２に接続され、スイッチＳＡ２は接点ＭＡ４に接続される。マルチプレクサ１１８の他のスイッチＳＡ３およびＳＡ４は、いずれの期間においても開放状態とされる。
【００８３】
マルチプレクサ診断を行う［ＳＴＧＣＶ２ ＲＥＳ］期間では、電圧比較回路１６２のスイッチＳＣ１が接続される。そして、マルチプレクサ１２０の出力電圧Ｖｍが入力されたツェナー電圧Ｖｚと等しいか否か、すなわちマルチプレクサ１２０が正常に動作しているか否かを確認するために、スイッチＳＤ１を上限比較用の電圧源ＶＨ（電圧ＶＨ）と接続する。上述したように、この電圧ＶＨは、上述したツェナー電圧Ｖｚ（既知の電圧）より高く設定されている。判断回路１６４は、電圧比較回路１６２の出力から、Ｖｍ＞ＶＨであった場合には異常信号を出力する。
【００８４】
次いで、スイッチＳＤ１を下限比較用の電圧源ＶＬ（電圧ＶＬ）と接続し、ツェナー電圧Ｖｚ（既知の電圧）より低く設定されている電圧ＶＬを電圧比較回路１６２に入力する。判断回路１６４は、電圧比較回路１６２の出力から、Ｖｍ＜ＶＬであった場合には異常信号を出力する。電圧比較回路１６２から異常信号が出力されてから以後の処理は、上述したステージＳＴＧＣＶ１のＲＥＳ期間の場合と同様であり、ここでは説明を省略する。
【００８５】
［ＳＴＧＣＶ２ ＲＥＳ］期間が終了し、［ＳＴＧＣＶ２ 計測］期間へと移行すると、図６の動作図に示すように、マルチプレクサ１１８のスイッチＳＡ２が接点ＭＡ４に接続されるとともに、診断回路１６０のスイッチＳＣ１およびＳＤ１が開放状態とされ、電池セルＢＣ２の端子電圧計測が行われる。［ＳＴＧＣＶ２ 計測］期間の端子電圧計測においても、マルチプレクサ診断で正常と診断されたマルチプレクサ１２０のスイッチ状態を維持したまま、マルチプレクサ１１８のスイッチＳＡ２を切り替えることにより端子電圧の測定を行うようにしているので、電池セルＢＣ２の端子電圧計測を確実に行うことができる。
【００８６】
ステージＳＴＧＣＶ３においては、図６に示すように、ＲＥＳ期間および計測期間のいずれにおいても、スイッチＳＢ１は接点ＭＢ４に接続され、スイッチＳＢ２は接点ＭＢ５に接続される。一方、マルチプレクサ１１８に関しては、ＲＥＳ期間においてはスイッチＳＡ３が接点ＭＡ５に接続され、スイッチＳＡ４が接点ＭＡ６に接続される。また、計測期間においては、スイッチＳＡ３は接点ＭＡ４に接続され、スイッチＳＡ４は接点ＭＡ６に接続される。マルチプレクサ１１８の他のスイッチＳＡ１およびＳＡ２は、いずれの期間においても開放状態とされる。そして、［ＳＴＧＣＶ３ ＲＥＳ］期間におけるマルチプレクサ１２０の診断を、上述した［ＳＴＧＣＶ２ ＲＥＳ］期間の場合と同様に行う。［ＳＴＧＣＶ３ ＲＥＳ］期間が終了すると、［ＳＴＧＣＶ３ 計測］期間において電池セルＢＣ３の端子電圧を計測する。
【００８７】
ステージＳＴＧＣＶ４においては、図６に示すように、ＲＥＳ期間および計測期間のいずれにおいても、スイッチＳＢ１は接点ＭＢ５に接続され、スイッチＳＢ２は接点ＭＢ６に接続される。一方、マルチプレクサ１１８に関しては、ＲＥＳ期間においてはスイッチＳＡ４が接点ＭＡ７に接続され、計測期間においては、スイッチＳＡ４は接点ＭＡ６に接続される。マルチプレクサ１１８の他のスイッチＳＡ１〜ＳＡ３は、いずれの期間においても開放状態とされる。そして、スイッチＳＣ１，ＳＤ１に関して、上述したステージＳＴＧＣＶ１〜ステージＳＴＧＣＶ３と同様の動作を行って、マルチプレクサ１２０の診断と電池セルＢＣ４の端子電圧計測を行う。
【００８８】
ステージＳＴＧＣＶ３およびステージＳＴＧＣＶ４のいずれにおいても、マルチプレクサ診断で正常と診断されたマルチプレクサ１２０のスイッチ状態を維持したまま、マルチプレクサ１１８のスイッチを切り替えることにより端子電圧の測定を行うようにしているので、電池セルＢＣ３，ＢＣ４の端子電圧計測を確実に行うことができる。
【００８９】
〈診断および計測、（５）初期データの保持〉
図１に示す直流電源システムでは、車両が運転停止しており、運転者が運転を開始する前は、電池モジュール９からインバータ装置への電流供給が行われていない。各電池セルの充放電電流が流れていない状態で計測された各電池セルの端子電圧を使用すると、各電池セルの充電状態（ＳＯＣ）が正確に求められるので、車両のキースイッチの操作やバッテリコントローラ２０からのＷａｋｅ  Ｕｐなどの通信コマンド２９２に基づき、各集積回路は独自に計測動作を開始する。図５で説明の計測動作が各集積回路において計測と電池セルの診断動作が開始され、平均化制御回路２６３に保持された回数の測定が行われると、平均化回路２６４で測定値の平均化を求める演算が行われる。その演算結果は先ず現在値記憶回路２７４に保持される。各集積回路はそれぞれ独立してその集積回路が関係しているグループの電池セル全てに対して測定計測および計測結果の平均値の演算を行い、演算結果を、それぞれの集積回路の現在値記憶回路２７４のレジスタＣＥＬＬ１〜レジスタＣＥＬＬ６に保持する。
【００９０】
各電池セルの充電状態（ＳＯＣ）を正確に把握するために、各電池セルの充放電電流が流れていない状態で各電池セルの端子電圧を計測することが望ましい。上述のごとく各集積回路は独自に計測動作を開始することにより、バッテリ部９からインバータ装置への電流供給前に、各集積回路はそれぞれ関係する電池セル全ての端子電圧を計測し、現在値記憶回路２７４のレジスタＣＥＬＬ１〜レジスタＣＥＬＬ６に保持する。現在値記憶回路２７４に保持された計測値はその後の新たな計測結果により書き換えられてしまうので、電流供給開始前の測定結果は現在値記憶回路２７４のレジスタＣＥＬＬ１〜レジスタＣＥＬＬ６から初期値記憶回路２７５のレジスタＢＣＥＬＬ１〜レジスタＢＣＥＬＬ６に移され、初期値記憶回路２７５に保持される。このようにバッテリ部９からインバータ装置への電流供給を開始する前の計測値を初期値記憶回路２７５に保持するので、充電状態（ＳＯＣ）の演算などの処理を後回しにして、優先度の高い診断のための処理を優先的に実行できる。優先度の高い処理を実行して、バッテリ部９からインバータ装置への電流供給を開始した後、初期値記憶回路２７５に保持された計測値に基づいて各電池セルの充電状態（ＳＯＣ）を演算し、正確な状態検知に基づいて充電状態（ＳＯＣ）を調整するための制御を行うことが可能となる。車両の運転者はできるだけ早く運転を開始したいとの希望を持つ場合があり、上述のとおりインバータ装置への電流供給を早く可能にすることが望ましい。
【００９１】
図５に記載の実施形態では、上述のごとく電気負荷であるインバータ装置に電流供給を始める前の計測値が現在値記憶回路２７４に保持されたタイミングで、デジタル比較回路２７０により過充電や過放電の診断、更には漏洩電流などの診断を実施できる。このためインバータ装置への直流電力の供給前に異常状態を把握することができる。もし、異常状態が発生していれば電流供給前に前記診断で異常を検知でき、インバータ装置への直流電力の供給を行わないなどの対応策が可能となる。さらに電流供給前の測定値は現在値記憶回路２７４の保持値を初期値記憶回路２７５に移して専用の初期値記憶回路２７５に保持し続けることができるので、安全性の向上や正確な充電状態（ＳＯＣ）の把握において優れた効果がある。
【００９２】
〈通信コマンド〉
図７は、図２に示した集積回路３Ａの内部に設けられた通信コマンドの送受信を行う通信回路１２７の回路およびその動作を説明する回路図であり、各集積回路を代表して集積回路３Ａの回路構成でその動作を説明する、上述のとおり他の集積回路も構成や動作が同じである。通信回路１２７が有する受信端子ＲＸに、前記バッテリコントローラ２０から送られてくる通信コマンドは、８ｂｉｔを１単位として全部で５つの部分を有し、５バイトを１つの基本構成としている。ただし以下に説明のとおり、５バイトより長くなる場合があり、特に５バイトに限定されるものではない。前記通信コマンドは端子ＲＸから受信レジスタ３２２に入力され、保持される。なお、この受信レジスタ３２２はシフトレジスタであり、端子ＲＸからシリアルに入力される信号が受信レジスタ３２２に入力された順にシフトされて通信コマンドの先頭部分がレジスタの先頭部であるブレークフィールド部３２４に保持され、以下順次保持される。
【００９３】
上述のように、受信レジスタ３２２に保持される通信コマンド２９２は、その先頭の８ｂｉｔは信号が来たことを示す信号からなるブレークフィールド３２４、２番目の８ｂｉｔは同期をとるための働きをする信号からなるシンクロナスフィールド３２６、３番目の８ｂｉｔは各集積回路３Ａ、……、３Ｍ、……、３Ｎのうちいずれの集積回路なのか、さらに命令の対象となる回路はどこかを示す対象アドレス、及指令の内容を示すアイデンティファイア３２８である。４番目の８ｂｉｔは、通信内容（制御内容）を示すデータ３３０で前記命令を実行するために必要なデータを保持している。この部分は１バイトとは限らない。５番目の８ｂｉｔは送受信動作の誤りの有無をチェックするためのチェックサム３３２であり、ノイズなどで正確に伝達できなかった場合の有無を検知できる。このように、バッテリコントローラ２０からの通信コマンドは、ブレークフィールド３２４、シンクロナスフィールド３２６、アイデンティファイア（Ｉｄｅｎｔｉｆｉｅｒ）３２８、データ３３０、およびチェックサム３１２の５つの部分から構成され、それぞれが１バイトで構成たれた場合は、通信コマンドは５バイトとなり、５バイト構成を基本としているが前記データ３３０は１バイトに限らない、必要に応じてさらに増加する場合がある。
【００９４】
シンクロナスフィールド３２６は送信側の送信クロックと受信側の受信クロックとの同期を合わせるために使用され、シンクロナスフィールド３２６の各パルスが送られてくるタイミングを同期回路３４２が検知し、同期回路３４２の同期をシンクロナスフィールド３２６の各パルスのタイミングに合わせ、この合わせられたタイミングで前記受信レジスタ３２２はそれに続く信号を受信する。このようにすることで、送られてくる信号と信号の真理値を判断する閾値との比較タイミングを正確に選択でき、送受信動作の誤りを少なくできる効果がある。
【００９５】
図１に示すように通信コマンド２９２は、バッテリコントローラ２０から集積回路３Ａの端子ＲＸに送られ、集積回路３Ａの端子ＴＸから次の集積回路の端子ＲＸに送られ、・・・さらに次の集積回路３Ｍの端子ＲＸに送られ、集積回路３Ｍの端子ＴＸから次の集積回路の端子ＲＸに送られ、・・・更に次の集積回路３Ｎの端子ＲＸに送られ、集積回路３Ｎの端子ＴＸからバッテリコントローラ２０の端子ＲＸに送られる。このように通信コマンド２９２は各集積回路の送受信端子を直列にループ状に接続した伝送路５２を使用して通信する。
【００９６】
各集積回路を代表して集積回路３Ａの回路で説明するが、上述のとおり他の集積回路も構成や動作が同じである。集積回路３Ａの端子ＲＸに通信コマンド２９２が送信され、各集積回路は受信した通信コマンド２９２を次の集積回路に対して端子ＴＸから送信する。上記動作において、受信した通信コマンド２９２の指示対象が自分自身かを図７のコマンド処理回路３４４で判断し、自分自身の集積回路が対象の場合に通信コマンドに基づく処理を行う。上述の処理が各集積回路で通信コマンド２９２の送受信に基づき順次行われる。
【００９７】
従って、受信レジスタ３２２に保持された通信コマンド２９２が集積回路３Ａと関係しない場合であっても、受信した通信コマンド２９２に基づき次の集積回路への送信を行うことが必要となる。受信した通信コマンド２９２のアイデンティファイア部３２８の内容をコマンド処理回路３４４が取り込み、集積回路３Ａ自身が通信コマンド２９２の指令対象かどうかを判断する。集積回路３Ａ自身が通信コマンド２９２の指令対象でない場合は、アイデンティファイア部３２８およびデータ３３０の内容をそのまま送信レジスタ３０２のアイデンティファイア部３０８やデータ３１０の部分に移し、また送受信誤動作チェックのためのチェックサム３１２を入力して送信レジスタ３０２内の送信信号を完成し、端子ＴＸから送信する。送信レジスタ３０２も受信レジスタ３２２と同様にシフトレジスタで作られている。
【００９８】
受信した通信コマンド２９２の対象が自分である場合、通信コマンド２９２に基づく指令を実行する。以下実行について説明する。
【００９９】
受信した通信コマンド２９２の対象が自分を含む集積回路全体に関する場合がある。例えばＲＥＳコマンドやＷａｋｅＵＰコマンド、Ｓｌｅｅｐコマンドがこのようなコマンドである。ＲＥＳコマンドを受信するとコマンド処理回路３４４でコマンド内容を解読しＲＥＳ信号を出力する。ＲＥＳ信号が発生すると、図５の現在値記憶回路２７４や初期値記憶回路２７５、フラグ記憶回路２８４の保持データが全て初期値である「ゼロ」になる。図５の基準値記憶回路２７８の内容は「ゼロ」にならないが、「ゼロ」になるようにしても良い。もし基準値記憶回路２７８の内容を「ゼロ」に変更すると、ＲＥＳ信号の発生後に図４に示す測定と診断が各集積回路で独自に実行されるので、診断の基準値となる基準値記憶回路２７８の値を速やかにセットすることが必要となる。この煩雑さを避けるために、基準値記憶回路２７８の内容はＲＥＳ信号で変更されないように回路が構成されている。基準値記憶回路２７８の値は頻繁に変更される属性のデータではないので、以前の値を使用しても良い。もし変更の必要があれば他の通信コマンド２９２で個々に変更できる。ＲＥＳ信号で平均化制御回路２６３の保持値は所定値、例えば１６となる。すなわち通信コマンド２９２で変更されなければ、１６回の測定値の平均を演算するように設定される。
【０１００】
ＷａｋｅＵＰコマンドがコマンド処理回路３４４から出力されると図４の起動回路２５４が動作を開始し、計測と診断動作が開始される。これにより、集積回路自身の消費電力は増加する。一方、Ｓｌｅｅｐ信号がコマンド処理回路３４４から出力されると図４の起動回路２５４の動作が停止し、計測と診断動作が停止する。これにより、集積回路自信の消費電力は著しく減少する。
【０１０１】
次に通信コマンド２９２によるデータの書き込みおよび変更を、図５を参照して説明する。通信コマンド２９２のアイデンティファイア３２８（図９）は選択すべき集積回路を示している。データ３００が、アドレスレジスタ３４８や基準値記憶回路２７８へのデータ書き込み命令、あるいは平均化制御回路２６３や選択回路２８６へのデータ書き込み命令の場合は、コマンド処理回路３４４は命令内容に基づき書き込み対象を指定し、データ３３０を書き込み対象のレジスタに書き込む。
【０１０２】
アドレスレジスタ３４８は集積回路自身のアドレスを保持するレジスタであり、この内容により自分のアドレスが決まる。ＲＥＳ信号でアドレスレジスタ３４８の内容はゼロとなり、集積回路自身のアドレスは「ゼロ」アドレスとなる。新たに命令によりアドレスレジスタ３４８の内容が変更されると、集積回路自身のアドレスは変更された内容に変わる。
【０１０３】
通信コマンド２９２によりアドレスレジスタ３４８の記憶内容の変更の他に、上述のとおり図５に記載の基準値記憶回路２７８やフラグ記憶回路２８４,平均化制御回路２６３、選択回路２８６の保持内容を変更できる。これらに関し変更対象が指定されると、変更値であるデータ３３０の内容がデータバス２９４を介して変更対象の回路に送られ、保持内容が変更される。図５の回路はこの変更された内容に基づき動作を実行する。
【０１０４】
通信コマンド２９２には集積回路内部に保持されているデータの送信命令が含まれている。アイデンティファイア３２８の命令で送信対象データの指定が行われる。例えば現在値記憶回路２７４や基準値記憶回路２７８の内部レジスタが指定されると、指定されたレジスタの保持内容がデータバス２９４を介して送信レジスタ３０２のデータ３１０の回路に保持され、要求されたデータ内容として送信される。このようにして、図１のバッテリコントローラ２０は通信コマンド２９２により必要な集積回路の測定値や状態を表すフラグを取り込むことが可能となる。
【０１０５】
〈集積回路のアドレス設定方法〉
上述した各集積回路３Ａ、……、３Ｍ、……３Ｎのアドレスレジスタ３４８は信頼性の高い揮発性メモリで構成しており、揮発性メモリの内容が消えたり、保持内容の信頼性が維持できないと思われる場合に、新たなアドレスの設定を行うことができるように集積回路は構成されている。例えばセルコントローラ８０が実行を開始する際に、例えばバッテリコントローラ２０から各集積回路のアドレスレジスタ３４８を初期化するコマンドを送信する。このコマンドで各集積回路のアドレスレジスタ３４８を初期化、例えばアドレス「ゼロ」とし、その後それぞれの集積回路に新たにアドレスを設定する。各集積回路３Ａ、……、３Ｍ、……３Ｎにおけるアドレスの新たな設定は、バッテリコントローラ２０からのアドレス設定コマンドが各集積回路３Ａ、……、３Ｍ、……３Ｎに送信されることによって行われる。
【０１０６】
このように、コマンドにより各集積回路３Ａ、……、３Ｍ、……３Ｎのアドレスを設定できる回路構成となっているため、各集積回路はアドレス設定のための端子およびこれら端子に接続される外部配線を不要とすることができる効果を奏する。またアドレス設定を通信コマンドの処理で行えるので、制御の自由度が増大する。
【０１０７】
図８は、バッテリコントローラ２０からの通信コマンド２９２により各集積回路３Ａ、……、３Ｍ、……３Ｎのアドレスレジスタ３４８の設定手順の一例を説明する説明図、図９は、図８の通信コマンド２９２の送信に基づく図７の回路の動作を説明する説明図である。前記各集積回路３Ａ、……、３Ｍ、……３Ｎは、通信コマンド２９２の送受信の順に、集積回路ＩＣ１、ＩＣ２、ＩＣ３、……、ＩＣｎ−１、ＩＣｎとして示している。前記ＩＣ１、ＩＣ２、ＩＣ３、……、ＩＣｎ−１、ＩＣｎに対して個々のアドレスが１、２、３、……ｎ−１、ｎとなるように以下の方法で設定する。ＩＣの符号とそのアドレス番号とを一致させたのは、以下の説明での理解をより容易にするためであり、一致させる必要はない。
【０１０８】
図８は、バッテリコントローラ２０及び各集積回路ＩＣの通信コマンド２９２におけるメッセージの流れと、各集積回路ＩＣの内部のアドレスレジスタ３４８に保持されるデータおよび送信レジスタ３０２のデータ３１０の内容を示している。最初に、例えばセルコントローラ８０からの全ての集積回路のアドレスレジスタ３４８を初期状態とする通信コマンド２９２を送信し、各集積回路のアドレスレジスタ３４８を初期値である「ゼロ」とする。図８ではこの手順は省略されている。このような操作により、各集積回路ＩＣ１、ＩＣ２、ＩＣ３、……、ＩＣｎ−１のアドレスレジスタ３４８には初期値例えば"ゼロ"が保持されている。図９で全集積回路のアドレスレジスタ３４８を初期状態とする通信コマンド２９２を集積回路ＩＣ１が受信すると、集積回路ＩＣ１の受信レジスタ３２２に通信コマンド２９２が保持され、アイデンティファイア３２８の内容をコマンド処理回路３４４のコマンド解読回路３４５が取り込み、アドレスレジスタ３４８を初期状態とするメッセージに基づきアドレスレジスタ３４８を初期化する。アイデンティファイア３２８の内容はそのまま送信レジスタ３０２のアイデンティファイア３０８にセットされ、次の集積回路ＩＣ２に送られる。アドレスレジスタ３４８を初期状態とする通信コマンド２９２を受信した集積回路ＩＣは順にこのような動作を行い、全ての集積回路ＩＣのアドレスレジスタ３４８が初期化される。最後にこのコマンドは集積回路ＩＣＮからバッテリコントローラ２０に戻され、全ての集積回路ＩＣのアドレスレジスタ３４８が初期化されたことをバッテリコントローラ２０は確認できる。
【０１０９】
上記確認に基づき、次に各集積回路ＩＣのアドレス設定が行われる。具体的には、先ず、バッテリコントローラ２０は「命令実行対象アドレスを"ゼロ"とし、さらにデータ３３０の値を"ゼロ"とし、データ３３０の値に"１"を加算してアドレスレジスタ３４８および送信用データ３１０にセットせよ」とのメッセージを意味する通信コマンド２９２を送信する。伝送路５２の最初に位置する集積回路ＩＣ１の受信レジスタ３２２に上記通信コマンド２９２が入力される。この通信コマンド２９２のアイデンティファイア３２８の部分がコマンド解読回路３４５に取り込まれる。集積回路ＩＣ１のアドレスレジスタ３４８は受信時点では"ゼロ"であるので、（１）データ３３０の内容"ゼロ"に"１"を加算した値をアドレスレジスタ３４８にセットし、（２）さらに上記加算結果を送信レジスタ３０２のデータ３１０にセットする動作が実行される。
【０１１０】
図９でコマンド解読回路３４５の解読に基づき、演算回路３４６は３３０の値"ゼロ"を取り込み、この値に"１"を加算する動作を行う。演算結果"１"はアドレスレジスタ３４８にセットされると共に、データ３１０にセットされる。この動作を図８で説明する。バッテリコントローラ２０からの通信コマンド２９２を集積回路ＩＣ１が受信することで、集積回路ＩＣ１のアドレスレジスタ３４８は"１"となり、データ３１０は同様に"１"となる。集積回路ＩＣ１で通信コマンド２９２のデータ３１０が"１"に変えられ、集積回路ＩＣ２に送られる。集積回路ＩＣ１から送信された通信コマンド２９２のアイデンティファイア３０８はバッテリコントローラ２０の送信時と同じであり、データ３１０の内容が変えられている。
【０１１１】
集積回路ＩＣ２のアドレスレジスタ３４８には"ゼロ"が保持されているので、集積回路ＩＣ２も同様に図９に示すごとく、演算回路３４６は３３０の値"１"に"１"を加算し、アドレスレジスタ３４８とデータ３１０にセットする。集積回路ＩＣ２のアドレスレジスタ３４８は"０"から"２"に変更される。図８のごとく、集積回路ＩＣ２のアドレスレジスタ３４８は"０"から"２"に変更され更に送信レジスタ３０２のデータ３１０を"２"に変更して、次の集積回路ＩＣ３に送信される。このようにして集積回路ＩＣ３のアドレスレジスタ３４８は"０"から"３"に変更され、送信レジスタ３０２のデータ３１０は"３"に変更される。
【０１１２】
以下、順次このような動作が繰り返され、集積回路ＩＣｎ−１のアドレスレジスタ３４８は"０"から"ｎ−１"に変更され、更に送信レジスタ３０２のデータ３１０を"ｎ−１"に変更して、次の集積回路ＩＣｎに送信される。集積回路ＩＣｎのアドレスレジスタ３４８は"０"から"ｎ"に変更され、送信レジスタ３０２のデータ３１０を"ｎ"に変更される。集積回路ＩＣｎからバッテリコントローラ２０に通信コマンド２９２が戻される。この戻された通信コマンド２９２のデータ３３０が"ｎ"に変更されていることで、バッテリコントローラ２０はアドレス設定動作が正しく行われたことを確認することができる。
【０１１３】
このようにして、各集積回路ＩＣ１、ＩＣ２、ＩＣ３、ＩＣ４、……、ＩＣｎ−１、ＩＣｎのアドレスレジスタ３４８には、順次、１、２、３、４、……、ｎ−１、ｎが設定される。
【０１１４】
本実施形態では、全集積回路のアドレスレジスタ３４８を初期値（ゼロ）にリセットする機能を各集積回路が備えているので、上記アドレス設定動作を確実に行うことができる。
【０１１５】
〈アドレス設定の他の実施形態〉
図１０を用いて、図９に記載の集積回路ＩＣ１、ＩＣ２、ＩＣ３、ＩＣ４、……、ＩＣｎ−１、ＩＣｎに、バッテリコントローラ２０から通信コマンド２９２を送信して、順次アドレスを設定する他の実施の形態を説明する。
【０１１６】
先ず前提として、図８や図９の動作と同様に、バッテリコントローラ２０から「全集積回路のアドレスレジスタ３４８の内容を初期値に、例えば"ゼロ"にする」メッセージを内容とする通信コマンド２９２を送信し、全集積回路のアドレスレジスタ３４８の内容を"ゼロ"にする。次に図１０のステップ１で、前記バッテリコントローラ２０から「アドレス"ゼロ〔初期値〕"の集積回路を対象とし、アドレスレジスタ３４８の内容を"１"に変え、送信される通信コマンド２９２の対象集積回路のアドレス"１"とする」メッセージを内容とする通信コマンド２９２を送信する。ここで「送信される通信コマンド２９２の対象集積回路のアドレス"１"とする」点についてはアドレス"１"以外の値であっても何ら問題ない、すなわち"ゼロ〔初期値〕"以外の値であれば実行可能である。
【０１１７】
図１に示すごとく最初に通信コマンド２９２を最初に受信する集積回路は伝送路５２の最初に位置する集積回路ＩＣ１（３Ａ）である。集積回路ＩＣ１の通信回路１２７は図７に示すとおりで、受信レジスタ３２２に通信コマンド２９２が保持される。集積回路ＩＣ１のアドレスレジスタ３４８は既に"ゼロ〔初期値〕"の状態であり、アイデンティファイア３２８に基づきコマンド処理回路３４４は通信コマンド２９２のメッセージの実行対象と判断する。通信コマンド２９２のメッセージに従いアドレスレジスタ３４８の内容を"１"に変更する。更に送信レジスタ３０２のアイデンティファイア３０８の内容を変更し、通信コマンド２９２の実行対象のアドレスを"１"に変更する。変更された通信コマンド２９２を送信する。
【０１１８】
通信コマンド２９２を次に受信する集積回路ＩＣ２はアドレスレジスタ３４８の内容が"ゼロ〔初期値〕"であり、集積回路ＩＣ２のコマンド処理回路３４４は実行対象ではないと判断し、受信した通信コマンド２９２をそのまま送信レジスタ３０２にセットし、通信コマンド２９２をそのまま次へ送信する。集積回路ＩＣ３以降は全ての集積回路ＩＣにおいて同様にアドレスレジスタ３４８の内容が"ゼロ〔初期値〕"で実行対象外と判断され、実行されないで、通信コマンド２９２がバッテリコントローラ２０に戻される。
【０１１９】
通信コマンド２９２の戻りを確認し、次に図１０ステップ２で示すごとく、バッテリコントローラ２０から「アドレス"ゼロ〔初期値〕"の集積回路を対象とし、アドレスレジスタ３４８の内容を"２"に変え、送信される通信コマンド２９２の対象集積回路のアドレス"２"とする」メッセージを内容とする通信コマンド２９２を送信する。ここで「送信される通信コマンド２９２の対象集積回路のアドレス"２"とする」点についてはアドレス"２"以外の値であっても何ら問題ない、すなわちアドレス設定がダブらないように行われれば問題ない。最初に受信する集積回路ＩＣ１のアドレスレジスタ３４８は"１"であり、コマンド処理回路３４４は実行対象外と判断し、通信コマンド２９２はそのまま次の集積回路ＩＣ２に送信される。
【０１２０】
次に受信する集積回路ＩＣ２はアドレスレジスタ３４８が"ゼロ"であり、コマンド処理回路３４４は通信コマンド２９２を実行し、アドレスレジスタ３４８に"２"をセットし、さらに通信コマンド２９２の実行対象を"２"に変更して次へ送信する。集積回路ＩＣ３以降は全てアドレスレジスタ３４８が"ゼロ"であり、実行対象外であるので、実行されないまま通信コマンド２９２はバッテリコントローラ２０に戻される。
【０１２１】
以下同様にバッテリコントローラ２０が通信コマンド２９２を送信するごとに集積回路ＩＣ３のアドレスレジスタ３４８の内容が"ゼロ"から"３"に変更され、さらに集積回路ＩＣ４のアドレスレジスタ３４８の内容が"ゼロ"から"４"に変更される。そして集積回路ＩＣｎのアドレスレジスタ３４８の内容が"ゼロ"から"ｎ"に変更される。
【０１２２】
〈充電状態ＳＯＣの調整〉
図１１は、バッテリ部９の電池セルの充電状態ＳＯＣを計測し、充電量の多い電池セルを選択し、これらの選択された電池セルについてそれぞれ放電時間を演算し、放電を実行する処理フローを示している。図中、左側は各集積回路の動作を示し、右側はメインコントローラ２０側の動作を示す。
【０１２３】
図１１で、まずステップ４００にて、バッテリコントローラ２０から集積回路３Ａを指令の対象として電池セルの初期状態の電圧の読み込みを要求する通信コマンド２９２を送信する。集積回路３Ａが通信コマンド２９２を受信すると、図７に示すコマンド処理回路３４４は初期値記憶回路２７５の保持内容を送信レジスタ３０２のデータ３１０にセットし、次の集積回路に送信する（ステップ４１０）。
【０１２４】
バッテリコントローラ２０は、集積回路３Ａの次の集積回路を指定して電池セルの初期状態の電圧の読み込みを行い、更に順に集積回路３Ｍおよび集積回路３Ｎの取り込みを行い、バッテリ部９の全電池セルの初期状態における電圧値をそれぞれの集積回路の初期値記憶回路２７５から取込む。
【０１２５】
ステップ４２０にて、バッテリコントローラ２０は、バッテリ部９全体の各電池セルの測定電圧を取り込み、例えば上記取り込んだ情報からそれぞれの電池セルの充電状態ＳＯＣを演算する。演算値の平均値を求め、平均値より大きい電池セルに対してステップ４３０にて、バランシングスイッチ１２９Ａ〜１２９Ｄの導通時間を演算する。バランシングスイッチ１２９Ａ〜１２９Ｄの導通時間の求め方は、上記方法に限るものではなく、色々な方法がある。何れの方法であっても、充電状態ＳＯＣの大きい電池セルに関係付けられたバランシングスイッチ１２９Ａ〜１２９Ｄの導通時間が定められる。
【０１２６】
ステップ４４０にて、バッテリコントローラ２０は、求められたバランシングスイッチの導通時間を該当する集積回路に、通信コマンド２９２にて送信する。
【０１２７】
ステップ４５０にて、前記通電時間を受信した集積回路は、その指令に基づきバランシングスイッチ導通する。
【０１２８】
ステップ４６０にてバランシングスイッチの導通時間をそれぞれ計測し、ステップ４７０にて、各バランシングスイッチ導通時間と導通時間経過とを比較し、導通時間の計測値が計算された導通時間に達したかを判断し、導通時間の計測値が計算された導通時間に達したバランシングスイッチについては次のステップ４８０に移行してステップ４８０を実行する。
【０１２９】
ステップ４８０にて、バッテリコントローラ２０は、該当する集積回路に対して導通時間が計算された通電時間に達したバランシングスイッチの開放を指令する通信コマンド２９２を送信する。この通信コマンド２９２を受け、ステップ４９０にて、該当する集積回路は、通信コマンド２９２にて指令されたバランシングスイッチのスイッチ駆動回路１３３からの駆動信号を停止し、バランシングスイッチを開状態とする。これにより該当する電池セルの放電が停止される。
【０１３０】
〈各集積回路等が異常となっているか否かのテスト〉
図１２は、各集積回路３Ａ、…、３Ｍ、…、３Ｎまたは各電池セルが異常となっているか否かをテストするための処理フローを示している。図中、左側は各集積回路３Ａ、…、３Ｍ、…、３Ｎの動作を示し、右側はメインコントローラ２０の動作を示している。
【０１３１】
ステップ５００で、バッテリコントローラ２０から集積回路３Ａに状態（異常）検出のための通信コマンドを送信する。次に、ステップ５１０で、前記集積回路３Ａから、前記状態（異常）検出の通信コマンドを、…、集積回路３Ｍ、…、集積回路３Ｎ、の順に送信し、バッテリコントローラ２０に戻す。
【０１３２】
ステップ５２０にて、各集積回路から送られてきたそれぞれの状態（異常）をバッテリコントローラ２０は受信し、送られてきた状態（異常）の確認を行う。次にステップ５３０で、バッテリコントローラ２０は、集積回路３Ａ、…、３Ｍ、…、３Ｎのうちのどの集積回路に異常があるか、あるいは各グループの電池セルＢＣ１〜ＢＣ４のうちどの電池セルに異常があるかを判定する。そして、全ての集積回路または対応する電池セルに異常が無かったと判定した場合、このフローは終了する。一方、集積回路３Ａ、…、３Ｍ、…、３Ｎのうちいずれかの集積回路に異常が有ったと判定した場合、ステップ５４０に移行する。
【０１３３】
ステップ５４０では、バッテリコントローラ２０は、異常の有った集積回路のアドレスを指定して異常内容を特定する状態（異常内容）検出の通信コマンドを送信する。
【０１３４】
ステップ５５０にて、アドレスの指定を受けた集積回路は、異常状態（異常内容）の原因となった計測値あるいは診断結果を送信する。ステップ５６０にて、バッテリコントローラ２０は異常のあった集積回路と異常原因の確認を行う。図１２の処理は、異常原因の確認で終了する。この後、異常原因に従い、リチウム電池からの直流電力の供給あるいは発電された電力による充電を行うかどうかを判断し、異常が有る場合には、直流電源システムとインバータ装置などの電気負荷との間のリレーを開状態にし、電力供給を停止する。
【０１３５】
〈車両用電源システム〉
図１３は、図１に基づき上述した直流電源システムを車両用回転電機の駆動システムに適用した回路図である。電池モジュール９００は、バッテリ部９とセルコントローラ８０とバッテリコントローラ２０を有している。なお、図１３では、バッテリ部９を構成する電池セルは、高電位側ブロック１０と低電位側ブロック１１の２つのブロックに分けられている。高電位側ブロック１０と低電位側ブロック１１とは、スイッチとヒューズとが直列接続された保守・点検用のＳＤ（サービスディスコネクト）スイッチ６を介して直列接続されている。
【０１３６】
高電位側ブロック１０の正極は、正極強電ケーブル８１とリレーＲＬＰを介してインバータ装置２２０の正極に接続されている。低電位側ブロック１１の負極は、負極強電ケーブル８２とリレーＲＬＮを介してインバータ装置２２０の負極に接続されている。高電位側ブロック１０と低電位側ブロック１１はＳＤスイッチ６を介して直列接続され、例えば公称電圧３４０Ｖ、容量５．５Ａｈの強電バッテリ（２つのバッテリ部９が直列接続された電源システムのバッテリ）を構成している。なお、ＳＤスイッチ６のヒューズには、例えば、定格電流が１２５Ａ程度のものを用いることができる。このような構成により高い安全性を維持できる。
【０１３７】
前述のとおり、低電位側ブロック１１の負極とインバータ装置２２０との間にリレーＲＬＮが設けられ、高電位側ブロック１０の正極とインバータ装置２２０との間にリレーＲＬＰが設けられている。リレーＲＬＰと並列に、抵抗ＲＰＲＥとプリチャージリレーＲＬＰＲＥとの並列回路が接続されている。正極側メインリレーＲＬＰとインバータ装置２２０との間にはホール素子等の電流センサＳｉが挿入され、電流センサＳｉはジャンクションボックス内に内蔵されている。なお、電流センサＳｉの出力線はバッテリコントローラ２０に導かれ、リチウム電池直流電源から供給される電流量をインバータ装置２２０が常時モニタできる構成となっている。
【０１３８】
リレーＲＬＰやリレーＲＬＮは、例えば、定格電流が８０Ａ程度のものが使用され、プリチャージリレーＲＬＰＲＥには、例えば、定格電流が１０Ａ程度のものを用いることができる。また、抵抗ＲＰＲＥには、例えば、定格容量が６０Ｗ、抵抗値が５０Ω程度のもの、電流センサＳｉには、例えば、定格電流が±２００Ａ程度のものを用いることができる。
【０１３９】
上述した負極強電ケーブル８２および正極強電ケーブル８１は、リレーＲＬＰやリレーＲＬＮおよび出力端子８１０，８２０を介して、ハイブリッド車のモータ２３０を駆動するインバータ装置２２０に接続される。このような構成とすることで高い安全性が維持できる。
【０１４０】
インバータ装置２２０は、３４０Ｖの強電バッテリの電源から供給される直流電力を、モータ２３０を駆動するための３相交流電力に変換するインバータを構成しているパワーモジュール２２６と、ＭＣＵ２２２と、パワーモジュール２２６を駆動するためのドライバ回路２２４と、約７００μＦ〜約２０００μＦ程度の大容量の平滑キャパシタ２２８とを有している。平滑キャパシタ２２８は、電解キャパシタよりフィルムキャパシタの方が望ましい特性を得ることができる。車両に搭載される平滑キャパシタ２２８は車両の置かれている環境の影響を受け、摂氏マイナス数十度の低温から摂氏１００度程度の広い温度範囲で使用される。温度が零度以下に低下すると電解キャパシタは急激に特性が低下し電圧ノイズを除去する能力が低下する。このため図１や図２に示す集積回路に大きなノイズが加わる恐れがある。フィルムキャパシタは温度低下に対する特性低下が少なく、集積回路に加わる電圧ノイズを低減できる。
【０１４１】
ＭＣＵ２２２は、上位コントローラ１１０の命令に従い、モータ２３０の駆動時に、負極側のリレーＲＬＮを開状態から閉状態とした後に、プリチャージリレーＲＬＰＲＥを開状態から閉状態とし、平滑キャパシタ２２８を充電し、その後に正極側のリレーＲＬＰを開状態から閉状態として、電源システム１の強電バッテリからインバータ装置２２０への電力の供給を開始する。なお、インバータ装置２２０は、モータ２３０の回転子に対するパワーモジュール２２６により発生する交流電力の位相を制御して、ハイブリッド車の制動時にはモータ２３０をジェネレータとして動作させ、すなわち回生制動制御を行い、ジェネレータ運転により発電された電力を強電バッテリに回生し強電バッテリを充電する。バッテリ部９の充電状態が基準状態より低下した場合、インバータ装置２２０は上記モータ２３０を発電機として運転し、上記モータ２３０で発電された３相交流はパワーモジュール２２６により直流電力に変換されて強電バッテリであるバッテリ部９に供給され、充電される。
【０１４２】
上述のとおりインバータ装置２２０はパワーモジュール２２６を有しており、インバータ装置２２０は直流電力と交流電力との間の電力変換を行う。上位コントローラ１１０の命令に従い、モータ２３０をモータとして運転する場合は、モータ２３０の回転子の回転に対して進み方向の回転磁界を発生するようにドライバ回路２２４を制御し、パワーモジュール２２６のスイッチング動作を制御する。この場合は、バッテリ部９から直流電力がパワーモジュール２２６に供給される。一方、モータ２３０の回転子の回転に対して遅れ方向の回転磁界を発生するようにドライバ回路２２４を制御し、パワーモジュール２２６のスイッチング動作を制御する。この場合はモータ２３０から電力がパワーモジュール２２６に供給され、パワーモジュール２２６の直流電力がバッテリ部９へ供給される。結果的にモータ２３０は発電機として作用することとなる。
【０１４３】
インバータ装置２２０のパワーモジュール２２６は、導通および遮断動作を高速で行い直流電力と交流電力間の電力変換を行う。このとき例えば大電流を高速で遮断するので、直流回路の有するインダクタンスにより大きな電圧変動が発生する。この電圧変動を抑制するため大容量の平滑キャパシタ２２８が直流回路に設けられている。車載用のインバータ装置２２０ではパワーモジュール２２６の発熱が大きな問題であり、この発熱を抑えるにはパワーモジュール２２６の導通および遮断の動作速度を上げる必要がある。この動作速度を上げると上記インダクタンスによる電圧の跳ね上がりが増大し、より大きなノイズが発生する。このため平滑キャパシタ２２８の容量はより大きくなる傾向にある。
【０１４４】
上記インバータ装置２２０の動作開始状態では平滑キャパシタ２２８の電荷は略ゼロであり、リレーＲＬＰを閉じると大きな初期電流が流れ込む。強電バッテリから平滑キャパシタ２２８への初期流れ込み電流が大きくなるので、負極側メインリレーＲＬＮおよび正極側メインリレーＲＬＰが融着して破損するおそれがある。この問題を解決するため、ＭＣＵ２２２は、負極側のリレーＲＬＮを開状態から閉状態とした後に、正極側のリレーＲＬＰを開状態に維持したまま、プリチャージリレーＲＬＰＲＥを開状態から閉状態として抵抗ＲＰＲＥを介して最大電流を制限しながら上述した平滑キャパシタ２２８を充電する。この平滑キャパシタ２２８が所定の電圧まで充電された後は、初期状態は解除され、プリチャージリレーＲＬＰＲＥおよび抵抗ＲＰＲＥは使用されず、上述したように、負極側のリレーＲＬＮと正極側のリレーＲＬＰを閉状態として電源システム１からパワーモジュール２２６へ直流電力を供給する。このような制御を行うことでリレー回路を保護すると共に、リチウム電池セルやインバータ装置２２０を流れる最大電流を所定値以下に低減でき、高い安全性を維持できる。
【０１４５】
インバータ装置２２０の直流側回路のインダクタンスを低減することがノイズ電圧の抑制に繋がるので、平滑キャパシタ２２８はパワーモジュール２２６の直流側端子に接近して配置される。また、平滑キャパシタ２２８自身もインダクタンスを低減できるように構成されている。このような構成で平滑キャパシタ２２８の初期充電電流が供給されると、瞬間的に大きな電流が流れ込み、高熱を発生して損傷するおそれがある。しかし、上記プリチャージリレーＲＬＰＲＥと抵抗ＲＰＲＥとにより上記損傷を低減できる。インバータ装置２２０の制御はＭＣＵ２２２により行われるが、上述のとおり、平滑キャパシタ２２８を初期充電する制御もＭＣＵ２２２により行われる。
【０１４６】
電源システム１の強電バッテリの負極と負極側のリレーＲＬＮとの接続線、および強電バッテリの正極と正極側のリレーＲＬＰとの接続線には、ケースグランド（車両のシャーシと同電位）との間にそれぞれキャパシタＣＮ、ＣＰが挿入されている。これらのキャパシタＣＮ、ＣＰは、インバータ装置２２０が発生させるノイズを除去して、弱電系回路の誤作動や、セルコントローラ８０を構成するＩＣのサージ電圧による破壊を防止するものである。インバータ装置２２０はノイズ除去フィルタを有しているが、これらのキャパシタＣＮ、ＣＰは、バッテリコントローラ２０やセルコントローラ８０の誤作動を防止する効果をさらに高め、電源システム１の耐ノイズの信頼性をさらに高めるために挿入されている。なお、図１３において、電源システム１の強電系回路は太線で示している。これらの線には断面積の大きい平角の銅線が使用される。
【０１４７】
なお、図１３において、ブロアファン１７は、バッテリ部９を冷却するためのファンで、バッテリコントローラ２０からの指令によってＯＮするリレー１６を介して動作するようになっている。
【０１４８】
〈車両用電源システムにおける動作フロー〉
図１４は、図１３に示した車両用電源システムにおける動作フローを示した図である。以下、ステップ順に説明する。
【０１４９】
ステップ８０１にて、車両のキースイッチがＯＮして、エンジン始動のための操作が行われると、あるいは車両の駐車状態から走行のための操作がなされた状態になると、あるいは各集積回路がＳｌｅｅｐ状態からＷａｋｅ  ｕｐ状態になると、ステップ８０２にて、バッテリコントローラ２０が起動され、バッテリコントローラ２０の初期化がなされる。
【０１５０】
ステップ８０３にて、ＣＡＮ通信が行われるようになる。これにより各コントローラにいわゆる空メッセージが出され、各制御装置間の通信の状態確認が行われる。ステップ８０４にて、バッテリコントローラ２０からセルコントローラ８０に起動と初期化のための通信コマンド２９２が送信される。
【０１５１】
各集積回路３Ａ、…、３Ｍ、…、３Ｎは、通信コマンド２９２を受信することによりいわゆるウエイクアップ（Ｗａｋｅ  Ｕｐ）状態となり、図７に記載のコマンド処理回路３４４からの出力に基づいて、図４の起動回路２５４が動作を開始するとともに、各集積回路のアドレスレジスタ３４８が初期化される。その後、図８や図１０で説明の如く、各集積回路ＩＣに新たなアドレスが設定される。
【０１５２】
ステップ８０５で、各電池セルを全て直列に接続された総電池の電圧、電流が、図１に示した電圧計Ｖｄおよび電流センサＳｉにより検出され、それぞれの出力がバッテリコントローラ２０に入力される。また、たとえば図示しない温度センサによって温度の測定がなされる。
【０１５３】
一方、ステップ８０４でセルコントローラ８０は起動と初期化の通信コマンド２９２を受け、各集積回路３Ａ、…、３Ｍ、…、３Ｎはこの通信コマンド２９２を受信することにより、図４に記載の第１ステージカウンタ２５６や第２ステージカウンタ２５８が動作を開始し（ステップ８０６）、動作表２６０に記載の計測を繰り返し実行する（ステップ８０７）。ステップ８０７にて、図４や図６で説明の如く、各集積回路は独自に各電池セルの端子電圧を測定し、その測定値を現在値記憶回路２７４や初期値記憶回路２７５に記憶する（ステップ８０８）。ステップ８０７における各電池セルの電圧測定結果から、ステップ８０９で各集積回路は独自に各電池セルの充放電、過放電の判定を行う。異常があれば図５のフラグ記憶回路２８４に診断フラグがセットされるので、バッテリコントローラ２０は診断フラグを検知でき、異常を検知できる。各集積回路はそれぞれ独自に電池セル電圧の計測と電池セルの異常診断を行うので、多くの電池セルからバッテリ部９が構成されていても、全ての電池セルの状態を短時間に診断できる。この結果リレーＲＬＰやリレーＲＬＮの投入前に、全ての電池セルの状態を診断でき、高い安全性を維持できる。
【０１５４】
ステップ８１０にて、各電池セルの状態検出がなされたことを確認し、ステップ８１１にて、初期化が完了するとともに、フラグ記憶回路２８４の診断フラグがセットされなかったことを確認することにより、異常状態が存在しないことを検知できる。異常が無いことを確認すると、図１３に示したリレーＲＬＮを閉じ、次にリレーＲＬＰＲＥを閉じ、最後にリレーＲＬＰを閉じる。これにより、電池モジュール９からインバータ装置２２０への直流電力の供給が開始される。
【０１５５】
ステップ８０１におけるキースイッチＯＮの時点から電力供給開始可能までの経過時間は、約１００ｍｓｅｃ以下にできる。このように短時間に直流電力の供給を可能とすることで、運転者の要求に十分対応することが可能となる。
【０１５６】
さらにこの短期間の間に、各集積回路のアドレスが設定されるともに、各集積回路は関連する各グループの電池セルの全ての電圧を測定し、それら各測定結果は図５に記載の初期値記憶回路２７５に記憶され、更に異常診断を完了することが可能となる。
【０１５７】
そして、各電池セルの電圧の測定は、リレーＲＬＰ、ＲＬＮ、ＲＬＰＲＥのそれぞれがＯＮになる前において、すなわち、インバータ装置２２０とバッテリ部９とが電気的に接続される前になされる。このため、各電池セルの電圧の測定は、インバータ装置２２０への電力供給の前であり、電流供給前に測定された各電池セルの端子電圧から正確に充電状態ＳＯＣを求めることが可能となる。
【０１５８】
その後、ステップ８１２にて通常モードとなり、ステップ８１３にて、各電池セルの電圧、電流、温度の測定が行われるようになる。この場合の測定は、ステップ８１２にてセルコントローラ８０との通信を介して行われる。なお、温度の測定は、図示しない温度センサからの出力に基づくものである。
【０１５９】
そして、上記電流供給前に測定された各電池セルの電圧、電流の測定値に基づき、必要に応じ、温度の測定値に基づき、ステップ８１５にて、放電時間（バランシング）の演算が行われる。その演算結果に基づいて、図２に示したバランシングスイッチ１２９Ａ、１２９Ｂ、１２９Ｃ、１２９Ｄを制御するための導通時間がそれぞれの集積回路に送信される。ステップ８１６で、各集積回路は導通時間に基づきバランシングスイッチを閉じる制御を行う。この動作は、上述した図１１に示したフローに従って行われる。
【０１６０】
ステップ８１７にて、集積回路３Ａ〜３Ｎまたは各電池セルが異常か否かのテストが行われる。次に、ステップ８１８にて、各電池セルの残量あるいは劣化等を含む状態の演算が行われる。
【０１６１】
ステップ８１９にて、バランシングスイッチ１２９Ａ、１２９Ｂ、１２９Ｃ、１２９Ｄのそれぞれに対応して演算された導通時間にカウント数が達しているか否かが判定される。達していない場合には、ステップ８１３に戻り、ステップ８１６におけるバランシング、ステップ８１７におけるテスト、ステップ８１８における各電池セルの状態演算が繰り返される。
【０１６２】
そして、ステップ８１９にて前記バランシングスイッチ１２９Ａ、１２９Ｂ、１２９Ｃ、１２９Ｄの導通時間にカウント数が達した場合、カウント値が導通時間に達したバランシングスイッチ１２９Ａ、１２９Ｂ、１２９Ｃ、１２９Ｄに対して、放電動作を停止するための開状態にする命令が、バッテリコントローラ２０から該当の集積回路に送信される。バランシングスイッチを閉じて放電させる制御は、バッテリ部９の内充電状態ＳＯＣの大きい電池セルに対してのみ行われるので、充電状態ＳＯＣの小さい電池セルのバランシングスイッチは最初から開のまま維持される。上述のとおり、バッテリ部９のそれぞれの電池セルの充電状態ＳＯＣが演算され、それぞれの電池セルに対してバランシングスイッチの導通時間が演算され、バッテリコントローラ２０の記憶装置に保持される。導通時間はそれぞれの電池セルの充電状態ＳＯＣに対応して決められるので、通常はそれぞれ異なる導通時間となる。もちろん最初から導通時間がゼロの電池セルが存在する。このためステップ８１９では各電池セルの通電時間と計数値とが比較され、通電時間が経過した電池セルの放電を制御している集積回路に対して、該当する電池セルの放電停止の指令を送信する。
【０１６３】
〈通信終了シーケンス〉
図１５は、たとえば図１や図１３に示した車両用電源システムにおいて、バッテリコントローラ２０のセルコントローラ８０との通信を終了させるシーケンスを示す説明図である。
【０１６４】
図１５（ａ）は、バッテリコントローラ２０の電源（ＶＣ）端子における電源供給の停止のタイミングを示した図である。図１５（ｂ）は、絶縁回路である入口側インタフェースＩＮＴ（Ｅ）のフォトカプラＰＨ１や、フォトカプラＰＨ２および絶縁回路である出口側インタフェースＩＮＴ（Ｏ）のフォトカプラＰＨ３や、フォトカプラＰＨ４の電源供給の停止のタイミングを示した図である。図１５（ｃ）は、バッテリコントローラ２０からのＴＸ端子やＲＸ端子を介した送受信の停止のタイミングを示した図である。図１５（ｄ）は、バッテリコントローラ２０からのＷａｋｅ−ｕｐ端子を介した信号の停止のタイミングを示した図である。
【０１６５】
この図から明らかとなるように、まず、バッテリコントローラ２０からのＴＸ端子やＲＸ端子を介した送受信を停止する。さらに、バッテリコントローラ２０からのＷａｋｅ−ｕｐ端子からの信号をシステムとして使用している場合には、この信号の送信が停止する。次にバッテリコントローラ２０の電源（ＶＣ）端子における電源供給の供給停止を行い、そして絶縁回路である入口側インタフェースＩＮＴ（Ｅ）のフォトカプラＰＨ１とＰＨ２および絶縁回路である出口側インタフェースＩＮＴ（Ｏ）のフォトカプラＰＨ３とＰＨ４の電源供給の停止を行う。
【０１６６】
このような順序で上記各部の動作停止を行うことにより各集積回路を確実にスリープ状態とすることができるようになる。
【０１６７】
なお、図１６は上記図１５で説明したＷａｋｅ−ｕｐ端子からの信号を使用していないシステムの説明である。Ｗａｋｅ−ｕｐ端子からの信号を使用しないので図１５（ｄ）における信号停止が不要となる。他のシーケンスは図１５の場合と同じである。
【０１６８】
〈各集積回路と対応するセルグループの電池セルの構成〉
上述した実施形態では、各セルグループを構成する電池セルの数が同じであり、各セルグループに対応した集積回路３Ａ、…、３Ｍ、…、３Ｎにおいて、それぞれ４個の電池セルが接続されていた。各集積回路３Ａ、…、３Ｍ、…、３Ｎは、それぞれ４個の各電池セルから電圧等の情報を得、また該電池セルの充放電の制御を行うように構成されていた。また集積回路３Ａ、…、３Ｍ、…、３Ｎのそれぞれが担当する電池セルはそれぞれ等しい数であった。
【０１６９】
しかし、図１７に示すように、バッテリ部９の各セルグループが有する電池セルの数を異なる数とすることができる。バッテリ部９を構成する電池セル数を自由に選択でき、セルグループ数の倍数とする必要がない。図１７（ａ）は各セルグループの中の電池セルの数、図１７（ｂ）は各セルグループに対応した集積回路を示している。各集積回路の内部の現在値記憶回路２７４や初期値記憶回路２７５に保持される電池セルの端子電圧に関するデータの種類は異なる数となる。このデータがバッテリコントローラ２０からの要求に基づきバッテリコントローラ２０に送信される場合、それぞれ異なる数のデータを送信しても良いが、図１７（ｃ）に示す如く、決まった数に再配分して送信することができる。このように決まった数のデータを送受信することで、送信の信頼性を高くすることが可能となる。
【０１７０】
図１７（ｂ）に示すように、各集積回路３Ａ、…、３Ｍ、…３Ｎの関係するセルグループの電池セルの数はそれぞれ異なっている。図１７（ａ）に示すように、最上段の集積回路３Ａと最下段の集積回路３Ｎの関係するセルグループでは、それぞれ、例えば４個の電池セルを有していて、他のセルグループより電池セルの数が少なくなっている。バッテリ部９の端のセルグループではない内側のセルグループの電池セルの数は、端のセルグループの電池セルの数、４個より多いたとえば６個となっている。
【０１７１】
電位の最上位の集積回路３Ａあるいは最下位の集積回路３Ｎは、上述したようにフォトカプラＰＨ１、ＰＨ４からなる絶縁回路を介してバッテリコントローラ２０に接続されている。フォトカプラＰＨ１、ＰＨ４の耐圧を低くすることが安全性や価格の面で好ましい。フォトカプラＰＨ１、ＰＨ４に接続される集積回路が関係するセルグループの電池セルの数を少なくすることで、要求されるフォトカプラの耐圧を下げることが可能となる。すなわち、最上位の集積回路３Ａと最下位の集積回路３Ｎにおいて、それぞれ、たとえば６個の電池セルを接続させて構成した場合に、それらとバッテリコントローラ２０との間に接続されるフォトカプラの必要耐圧は６個分の電池セルの端子電圧の最大値より大きくすることが必要となる。セル数が増加するとそれに伴い要求される耐圧が増加する。
【０１７２】
この場合、最上位の集積回路３Ａと最下位の集積回路３Ｎに保持される電池セルの端子電圧の種類は４個となる。バッテリコントローラ２０との通信におけるデータは、４個分の電池セルにおけるデータとなる。また、集積回路３Ｍを含む他の集積回路において、該バッテリコントローラ２０との通信におけるデータは、６個分の電池セルにおけるデータとなる。
【０１７３】
この実施形態では、図１７（ｃ）に示すように、集積回路３Ａに接続される４個分の電池セルのデータ、次段の集積回路に接続される６個分の電池セルのデータのうち上段側に配置される４個分の電池セルのデータ、上記次段の集積回路に接続される６個分の電池セルのデータのうち下段側に配置される２個分の電池セルのデータおよびさらに次段の集積回路に接続される６個分の電池セルのデータのうち上段側に配置される２個分の電池セルのデータ、……、そして、最下段の集積回路３Ｎに接続される４個分の電池セルのデータというように、順次、４個分の電池セルのデータを単位として、全ての電池セルのデータを送受信するようになっている。
【０１７４】
図１３に示した車両用電源システムにおいて、たとえばバッテリコントローラ２０と上位コントローラ１１０との間の通信において一度に送れるデータの量が制限されている（たとえば上限のデータ量が電池セル４個分等）。したがって、図１７（ｃ）に示すバッテリ部９の構成を採用することにより、上記制限量を超えることのない量の信号の送受ができ、信頼性のある信号の送受を行うことができるようになる。
【０１７５】
上述した実施形態では、最上段と最下段の各集積回路３Ａ、３Ｎに接続される電池セルの数を４個とし、それ以外の集積回路に接続される電池セルの数を６個としている。しかし、これに限定されることはなく、最上段と最下段の集積回路３Ａ、３Ｎに接続される電池セルの数がそれ以外の集積回路に接続される電池セルの数よりも少なければ同様の効果を奏し、どちらか１方が少ない場合には少ない方のフォトカプラの耐圧を下げることができる。
【０１７６】
また、上述した実施形態では、各集積回路に接続される電池セルの数が異なっているにも拘わらず、順次、４個分の電池セルのデータを単位として送受信している。しかし、単位とする電池セルのデータは、４個分に限定されることはなく、各集積回路にそれぞれ接続される電池セルの数において、最も多い電池セルの数よりも少ない数分の電池セルのデータを単位として送受信するようにしても同様の効果が得られる。
【０１７７】
〈各電池セルの診断〉
図１に記載の各集積回路３Ａ・・・集積回路３Ｍ・・・集積回路３Ｎの内部処理動作で行われている各電池セルの計測と過充電や過放電の診断動作を説明する。図４の動作表２６０の行２６０Ｙ１に記載のステージＳＴＧＣＶ１〜ステージＳＴＧＣＶ６において各電池セルの端子電圧の取り込みと診断が行われる。ステージＳＴＧＣＶ１の計測の期間で、先の説明のごとく、図５の選択回路１２０はＶＣＣ（Ｖ１）とＶＣ２（Ｖ２）を選択する。この動作により図２のバッテリセルＢＣ１の端子電圧が選択され、電位シフト機能を有する差動増幅器２６２を介して電圧検出回路１２２Ａに入力される。電圧検出回路１２２Ａでデジタル値に変換され、平均化回路２６４で今回の測定を含め最も新しい所定回数の測定値を基に平均値が演算され、現在値記憶回路２７４のレジスタＣＥＬＬ１に保持される。
【０１７８】
現在値記憶回路２７４のレジスタＣＥＬＬ１に保持された測定値を基に、電池セルＢＣ１の過充電や過放電の診断が図４のステージＳＴＧＣＶ１の計測期間内で行われる。この診断に入る前にバッテリコントローラ２０から診断のための基準値が各集積回路に送信され、過充電の診断基準ＯＣが基準値記憶回路２７８のレジスタに、また、過放電の診断基準ＯＤが基準値記憶回路２７８のレジスタにそれぞれ保持される。さらに、バッテリコントローラ２０から通信コマンド２９２で基準値の送信ができない、あるいはノイズその他の原因で誤った値が基準値記憶回路２７８に保持されたとしても、過充電の異常状態を把握できるように、通信コマンド２９２で書き換えできない過充電基準値ＯＣＦＦＯを予め保持している。
【０１７９】
〈過充電の診断〉
ステージＳＴＧＣＶ１の計測における端子電圧の計測に続いて、測定された端子電圧値がデジタル比較回路２７０により過充電の判断値ＯＣと比較される。すなわち、現在値記憶回路２７４のレジスタＣＥＬＬ１〜ＣＥＬＬ６、レジスタＶＤＤに保持されている複数個の測定値さらにＶＤＤ値乃至基準電源（ＰＳＢＧ）の中から、図４の第１ステージカウンタ２５６や第２ステージカウンタ２５８の出力に基づきデコーダ２５７やデコーダ２５９により作られた選択信号により、レジスタＣＥＬＬ１の測定値が選択されてデジタル比較回路２７０に入力される。また、同様に上記デコーダ２５７やデコーダ２５９により生成された選択信号により、基準値記憶回路２７８に保持された複数の基準値の中から過充電診断基準値ＯＣが選択され、デジタル比較回路２７０はレジスタＣＥＬＬ１内の電池セルＢＣ１の測定値と過充電診断基準値ＯＣとを比較する。デジタル比較回路２７０は、電池セルＢＣ１の測定値が過充電診断基準値ＯＣより大きい時に異常を示す比較結果を出力する。デジタルマルチプレクサ２８２は、上記デコーダ２５７やデコーダ２５９により生成された選択信号によりデジタル比較回路２７０の出力の記憶先を選択する。電池セルＢＣ１の診断結果がもし異常であれば、フラグ記憶回路２８４のレジスタＭＦｆｌａｇおよびレジスタＯＣｆｌａｇにその異常診断結果が保持される。すなわち、ＭＦｆｌａｇおよびＯＣｆｌａｇがセットされた状態となる。上記異常フラグは集積回路の端子ＦＦＯから出力され、バッテリコントローラ２０に伝えられる。
【０１８０】
次に信頼性を向上するために、デジタル比較回路２７０は、電池セルＢＣ１の測定値と過充電診断基準値ＯＣＦＦＯとを比較する。電池セルＢＣ１の測定値が過充電診断基準値ＯＣＦＦＯより大きい場合に、過充電に関する異常として、フラグ記憶回路２８４のレジスタＭＦｆｌａｇおよびレジスタＯＣｆｌａｇにその異常診断結果が保持される。異常フラグがフラグ記憶回路２８４にセットされると、上述と同様にバッテリコントローラ２０に伝送される。過充電診断基準値ＯＣＦＦＯはバッテリコントローラ２０から書き換えできない基準値であり、バッテリコントローラ２０のプログラムや動作に異常が生じても過充電診断基準値ＯＣＦＦＯは変更されないので、信頼性の高い判断ができる。過充電診断基準値ＯＣはバッテリコントローラ２０から変更できるのできめ細かい判断が可能となり、また上述のとおり、過充電診断基準値ＯＣＦＦＯはバッテリコントローラ２０や伝送路の状態に係わらず維持される信頼性の高いデータであり、これら２種のデータを使用して診断することで信頼性の高い診断が実現できる。
【０１８１】
〈過放電の診断〉
ステージＳＴＧＣＶ１の計測の期間で、さらに引き続き電池セルＢＣ１の過放電の診断が行われる。現在値記憶回路２７４のレジスタＣＥＬＬ１に記憶された電池セルＢＣ１の測定値と、基準値記憶回路２７８の基準値ＯＤとが、デジタル比較回路２７０で比較される。電池セルＢＣ１の測定値が基準値記憶回路２７８の基準値ＯＤより小さい場合に、異常と判断して異常信号を出力する。デコーダ２５７とデコーダ２５９の出力に基づく選択信号により、デジタルマルチプレクサ２８２はフラグ記憶回路２８４のＭＦｆｌａｇとＯＤｆｌａｇを選択し、デジタル比較回路２７０から出力された異常信号はレジスタＭＦｆｌａｇとレジスタＯＤｆｌａｇにセットされる。
【０１８２】
上記各項目の診断で、もしＭＦｆｌａｇがセットされると、そのフラグは、ＯＲ回路２８８を介して１ビット出力端ＦＦＯから出力され、バッテリコントローラ２０に送信される。
【０１８３】
選択回路２８６の機能をバッテリコントローラ２０からの通信コマンド２９２で変えることができ、端子ＦＦＯから出力されるフラグをどのフラグまで含めるかを選択的に変更できる。例えばフラグ記憶回路２８４のＭＦｆｌａｇをセットする条件を過充電異常だけとしても良い。この場合、デジタル比較回路２７０の過放電異常診断出力はレジスタＭＦｆｌａｇにはセットせず、ＯＤｆｌａｇのみセットする。ＯＤｆｌａｇを端子ＦＦＯから出力するかどうかは、選択回路２８６の設定条件で決まるようにすることが可能である。この場合は、設定条件をバッテリコントローラ２０から変更できるので、多様な制御に対応できる。
【０１８４】
図４の動作表２６０の行２６０Ｙ１に記載のステージＳＴＧＣＶ１に続き、次にステージＳＴＧＣＶ２の期間となる。図６で選択回路１２０はＶＣ２（Ｖ２）とＶＣ３（Ｖ３）とを選択することにより、図２の電池セルＢＣ２の端子電圧が選択される。上述のステージＳＴＧＣＶ１と同様の動作により、電池セルＢＣ２の端子電圧が１２２Ａによりデジタル変換され、平均化回路２６４で今回の測定結果を含む最新の所定回数の測定値の平均が演算され、現在値記憶回路２７４のレジスタＣＥＬＬ２に保持される。測定結果の保持位置の選択は、他の測定値に対する場合と同様、図４のデコーダ２５７とデコーダ２５９の出力に基づいて行われる。
【０１８５】
次に、上述のステージＳＴＧＣＶ１と同様、図４のデコーダ２５７とデコーダ２５９の出力に基づいて、現在値記憶回路２７４から電池セルＢＣ２の測定値が選択され、基準値記憶回路２７８の過充電診断基準値ＯＣが選択され、デジタル比較回路２７０により比較されることで診断が行われる。診断内容と動作は、上述のステージＳＴＧＣＶ１と同様である。
【０１８６】
以下、ステージＳＴＧＣＶ３乃至ステージＳＴＧＣＶ６についても上記ステージＳＴＧＣＶ１や上記ステージＳＴＧＣＶ２と同様の動作内容で、図５の回路により計測に引き続き診断が行われる。
【０１８７】
〈充電状態ＳＯＣの調整と端子電圧の計測〉
バッテリ部９を構成する各電池セルの充電状態ＳＯＣを調整のためにバランシングスイッチ１２９Ａ〜１２９Ｆを制御し、充電量が多い電池セルの電力を放電用の抵抗を介して放電する制御に関しては上述した。バランシングスイッチ１２９Ａ〜１２９Ｆの開閉制御は各電池セルの端子電圧の検出に悪影響を及ぼす可能性がある。すなわち、図２の回路でバランシングスイッチ１２９が閉じると抵抗Ｒ１からＲ４を介して放電電流が流れ、電池セルＢＣ１〜ＢＣ４の端子電圧の計測精度を低下させる。
【０１８８】
上記バランシングスイッチ１２９Ａ〜１２９Ｆの開閉制御はバッテリ部９全体の電池セルの状態に基づいて行うことが必要である。従って図１に示すバッテリコントローラ２０が処理することが望ましく、バッテリコントローラ２０の指令に基づき各集積回路３Ａ〜３Ｎがバランシングスイッチ１２９Ａ乃至１２９Ｆを制御することが望ましい。一方、各電池セの端子電圧の計測に関しては、各集積回路３Ａ〜３Ｎがそれぞれ担当するグループの電池セル電圧の計測を独自に行い、バッテリコントローラ２０から計測値の送信命令を受けたときに、独自に計測し保持していた端子電圧の計測値を速やかに送信することが望ましい。従って、制御を行う回路が異なる上記バランシングスイッチ１２９Ａ〜１２９Ｆの制御と各電池セルの端子電圧の計測との調和を図り、両方制御を総合的に実行することが必要である。
【０１８９】
図１８から図２２を用いて上記両方の制御を実現する具体的構成を説明する。以下の説明では、図１や図２に示す放電用の抵抗Ｒ１からＲ４に加え、実際の製品ではノイズの影響を取り除くためコンデンサＣ１〜Ｃ６を設けることが望ましく、図１や図２の回路にノイズ除去用のコンデンサを追加した回路を図１８、図１９、図２３、図２４に示す、なお図１や図２では電池セルの数を４個としているが、図１８、図１９、図２３、図２４では６個として記載している。なお上記抵抗やコンデンサは破線で示す集積回路と共に破線８０で示すセルコントローラに保持されており、通信ハーネスを介してバッテリブロックの各電池セルＢＣ１からＢＣ６と接続されている。
【０１９０】
図１８に記載の放電用の抵抗Ｒ１〜Ｒ６を利用して、ノイズの影響を更に低減するように工夫した回路を図１９に示す。図２０および図２１は、計測制御と充電状態ＳＯＣの調整のための放電制御の動作を示す図であり、図２０は図１８に示す回路の動作を示し、図２１は図１９に示す回路の動作を示す。また図２０や図２１に示す制御を行うための回路を図２２に示す。
【０１９１】
図１８の回路において、ステージＳＴＧＣＶ１では電池セルＢＣ１の端子電圧が計測され、次のステージＳＴＧＣＶ２では電池セルＢＣ２の端子電圧が計測される。以下順に電池セルＢＣ３〜ＢＣ６の端子電圧の計測が実行される。このようにして計測を繰り返すことにより電池セルの端子電圧の状態を常に監視することが可能となる。
【０１９２】
例えば、バランシングスイッチ１２９Ｂが充電状態ＳＯＣの調整のために閉状態とすると、バランシングスイッチ１２９Ｂと抵抗Ｒ２を介して放電電流が流れており、この放電電流による電池セルＢＣ２の内部抵抗や配線抵抗が影響して、選択回路１２０に入力される電圧ＶＣ２はバランシングスイッチ１２９Ｂが開状態のときの端子電圧より低い値となる。すなわちバランシングスイッチ１２９Ｂが閉じることで入力回路１１６に入力される端子電圧が低い値となり、測定精度が低下する。
【０１９３】
上記測定精度の低下を防ぐため、図２０に記載のように電池セルＢＣ１の端子電圧を計測するステージＳＴＧＣＶ１では充電状態ＳＯＣの制御を一次的に停止して、バランシングスイッチ１２９Ａを開状態とし、電池セルＢＣ１の端子電圧を計測する。次の電池セルＢＣ２の端子電圧を計測するステージＳＴＧＣＶ２では充電状態ＳＯＣ制御を一次的に停止して、バランシングスイッチ１２９Ｂを開状態とし、電池セルＢＣ２の端子電圧を計測する。以下順にバランシングスイッチ１２９Ｃから１２９Ｆ（図２０のＢＳＷ３からＢＳＷ６）をそれぞれ開状態として電池セルの端子電圧を計測する。
【０１９４】
各ステージＳＴＧＣＶ１〜ＳＴＧＣＶ６のそれぞれの計測期間において、充電状態ＳＯＣの調整のための制御を停止しても良い。あるいは、各ステージＳＴＧＣＶ１からＳＴＧＣＶ６の期間内で実際に端子電圧を計測する短い時間のみ、充電状態ＳＯＣの調整のための制御を停止しても良い。
【０１９５】
次に図１９に示す回路について説明する。直列接続の電池セルＢＣ１乃至ＢＣ６からインバータ装置に供給する電力線には大きなノイズが混在している。このノイズの影響を少なくするためには、図１９に示す回路では、各電池セル端子と入力回路１１６の入力端との間に抵抗ＲＡ１から抵抗ＲＡ７を挿入している。上記抵抗ＲＡ１から抵抗ＲＡ７は、コンデンサＣ１からコンデンサＣ７と共にノイズ除去を行い、集積回路をノイズから保護する。
【０１９６】
図１９に記載の回路で、充電状態ＳＯＣの調整のためにバランシングスイッチ１２９Ａを閉じると、電池セルＢＣ１の放電電流は抵抗Ｒ１とバランシングスイッチ１２９Ａと抵抗ＲＡ２とを通して流れる。バランシングスイッチ１２９Ａが閉じた状態の放電電流が抵抗ＲＡ２を流れるため、電池セルＢＣ１の端子電圧の計測だけでなく、電池セルＢＣ２の端子電圧の計測にも影響を及ぼす。従って電池セルＢＣ２の端子電圧の計測時にはバランシングスイッチ１２９Ａとバランシングスイッチ１２９Ｂの両方の開放が必要となる。同様に電池セルＢＣ３の端子電圧の計測時にはバランシングスイッチ１２９Ｂとバランシングスイッチ１２９Ｃの両方の開放が必要となり、以下同様に他の電池セルの計測時も同様である。
【０１９７】
図２１は、図１９に記載の回路において、電池セルの計測を行うときのバランシングスイッチ１２９の強制開放の状況を示している。ステージＳＴＧＣＶ２では図１９の電池セルＣＢ２の端子電圧の計測が行われるので、バランシングスイッチ１２９Ａおよび１２９Ｂの充電状態ＳＯＣの調整のための制御を停止し、これらのバランシングスイッチ１２９Ａおよび１２９Ｂを開放状態に維持する。この場合ステージＳＴＧＣＶ２の期間全体に渡り、バランシングスイッチ１２９Ａおよび１２９Ｂの充電状態ＳＯＣの調整のための制御を停止しても良いし、前記ステージＳＴＧＣＶ２の期間中の実際に電圧を計測する短い期間のみバランシングスイッチ１２９Ａおよび１２９Ｂの充電状態ＳＯＣの調整のための制御を停止しても良い、ことは上述の図２０の場合と同じである。
【０１９８】
また、図２１のステージＳＴＧＣＶ３では図１９の電池セルＢ３の端子電圧の計測が行われるので、電池セルＢＣ３の端子電圧の計測期間はバランシングスイッチ１２９Ｂおよび１２９Ｃの充電状態ＳＯＣの調整のための制御を停止し、計測期間はバランシングスイッチ１２９Ｂおよび１２９Ｃを開放状態に維持する。この場合、ステージＳＴＧＣＶ３の期間全体に渡り、バランシングスイッチ１２９Ｂおよび１２９Ｃの充電状態ＳＯＣの調整のための制御を停止しても良い。あるいは、前記ステージＳＴＧＣＶ３の期間中の実際に電圧を計測する短い期間のみ、バランシングスイッチ１２９Ｂおよび１２９Ｃの充電状態ＳＯＣの調整のための制御を停止するようにしても良いことは上述と同じである。
【０１９９】
ステージＳＴＧＣＶ４あるいはステージＳＴＧＣＶ５では電池セルＢＣ４あるいはＢＣ５の端子電圧の計測が行われるので、バランシングスイッチ１２９Ｃおよび１２９Ｄあるいはバランシングスイッチ１２９Ｄおよび１２９Ｅを開放状態に維持する。ステージＳＴＧＣＶ６では電池セルＢＣ６の端子電圧の計測が行われる。このため電池セルＢＣ６の端子電圧の計測期間はバランシングスイッチ１２９Ｆを開放状態に維持する。
【０２００】
尚図２０や図２１で矢印←→で示した期間は充電状態ＳＯＣの調整のためのバランシングスイッチ１２９Ａ〜１２９Ｆの制御が行われる期間である。また「オフ」と記載した期間は充電状態ＳＯＣの調整のためのバランシングスイッチ１２９Ａ〜１２９Ｆの制御を停止し、強制的に開放状態にする期間を示している。以上の様にバッテリコントローラ２０で行う充電状態ＳＯＣの調整制御に優先して電池セル端子電圧の測定期間には関係するバランシングスイッチ１２９を強制的に開放することで、電池セル端子電圧の測定精度を向上することができる。
【０２０１】
次に、図２２に記載の回路を用いて上記バランシングスイッチ１２９の開放動作を説明する。まず充電状態ＳＯＣの調整を行うための制御値が図１４のステップ８１５で演算され、演算結果に基づき各集積回路３Ａ・・・３Ｍ・・・３Ｎに通信コマンド２９２により送られてくる。各集積回路３Ａ・・・３Ｍ・・・３Ｎでは、図２や図７に示す通信回路１２７で受信し、受信結果に基づいて各バランシングスイッチ１２９Ａ〜１２９Ｆが制御される。
【０２０２】
図２２に示すデータ３３０は、図７の受信レジスタ３２２のデータ３３０の部分を拡大して示しており、データ３３０の内容が放電制御回路１３２１〜１３２６に入力される。入力される制御信号は例えば「１」または「ゼロ」を示す信号で、「１」はバランシングスイッチ１２９を閉じて放電する制御を表し、「ゼロ」はバランシングスイッチ１２９を開いて放電しない制御を意味する。これらの制御信号は放電制御回路１３２１〜１３２６に保持され、この保持データに基づきバランシングスイッチ１２９Ａ〜１２９Ｆはそれぞれ制御される。
【０２０３】
放電制御回路１３２１〜１３２６の保持データはＡＮＤゲート１２〜６２に加えられ、さらにＯＲゲート１１〜ＯＲゲート６１を介してバランシングスイッチ１２９Ａ〜１２９Ｆを駆動する。一方これら充電状態ＳＯＣの調整のための制御に優先してバランシングスイッチ１２９Ａ〜１２９Ｆを優先制御する場合は、各ＡＮＤゲート１２〜ＡＮＤゲート６２で上記放電制御回路１３２１〜１３２６に基づく信号を遮断する。この遮断期間は図２６や図２７で説明の期間であり、デコーダ２５７やデコーダ２５９の出力に基づいて電池の端子電圧の計測が行われるので、このデコーダ２５７やデコーダ２５９の出力に基づいて回路２８０２から制御停止信号を各ＡＮＤゲート１２〜ＡＮＤゲート６２に送る。
【０２０４】
各ＡＮＤゲート１２〜ＡＮＤゲート６２を開放して充電状態ＳＯＣの調整のための制御を停止している期間は、ＡＮＤゲート１１〜ＡＮＤゲート６１が閉じており、ＯＲゲート１２〜ＯＲゲート６２の出力により、バランシングスイッチ１２９Ａ〜１２９Ｆが駆動される。従って、各ＡＮＤゲート１２〜ＡＮＤゲート６２が開放しＡＮＤゲート１１〜ＡＮＤゲート６１が閉じている期間は、計測が最適に行われるように、計測制御回路２８１１〜計測制御回路２８６１からバランシングスイッチ１２９Ａ乃至１２９Ｆを制御する制御信号を出力することができる。また、後述する検出用ハーネスの異常診断を行う場合は、診断制御回路２８１２乃至診断制御回路２８６２からバランシングスイッチ１２９Ａ乃至Ｆを制御する制御信号を出力する。
【０２０５】
このように各集積回路は３Ａ・・・３Ｍ・・・３Ｎは、充電状態ＳＯＣの調整のための制御に優先して充電状態ＳＯＣ調整制御を停止し、停止期間に各集積回路は独自にバランシングスイッチ１２９Ａ〜１２９Ｆを制御できる回路を有するので、正確な測定や診断が可能なる効果がある。
【０２０６】
〈ＡＤＣ、差動増幅器２６２、基準電圧の診断〉
図４に示す動作表２６０の行２６０Ｙ１に記載のステージＳＴＧＰＳＢＧで内部基準電圧やアナログおよび電圧検出回路１２２Ａの診断を行う。図５に記載のアナログ回路やデジタル回路を動作させるための電源電圧を集積回路内部の電源回路１２１（図２）で発生する。電源電圧を絶対的な基準電源に基づいて発生すると高精度の前記電源電圧を比較的容易に得ることができる。しかし一方絶対的な基準電圧が変化すると、電源電圧が変化してしまう心配がある。
【０２０７】
ステージＳＴＧＰＳＢＧでは基準電源の診断およびアナログ回路や電圧検出回路１２２Ａの診断を効率良く行うことができる。以下具体的に説明する。
【０２０８】
図５の回路で、入力回路１１６は基準電源とＧＮＤを選択する。この選択により、ＧＮＤの電位と基準電源との差電圧が差動増幅器２６２に入力され、電位シフトとスケール合わせが行われ、アナログデジタル変換器１２２Ａに入力される。アナログデジタル変換器１２２Ａは入力信号をデジタル値に変換し、このデジタル信号は、デコーダ２５７とデコーダ２５９に基づき、現在値記憶回路２７４にデータＰＳＢＧとしてＰＳＢＧレジスタに保持される。
【０２０９】
基準電源は関係する回路の動作が正常であればその電圧は既知であり、基準電源の既知の電圧より少し小さい値である基準電源の下位許容値（ＰＳＢＧｍｉｎ）と基準電源の既知の電圧より少し大きい値である基準電源の上位許容値（ＰＳＢＧｍａｘ）を、基準値記憶回路２７８のレジスタに予め割り当てた下位許容値と上位許容値の保存領域とにそれぞれ保持する。これらの値は、基準電源が正常な電圧であれば、基準電源の下位許容値と上位許容値との間の値である。またアナログ回路が正常に動作しない場合、例えば差動増幅器２６２が正常でない場合は、例え基準電源が正常な電圧であってもアナログデジタル変換器１２２Ａの出力は正常な範囲から外れることとなる。またアナログデジタル変換器１２２Ａが正常でない場合も、アナログデジタル変換器１２２Ａの出力は正常な範囲から外れることとなる。
【０２１０】
従って、現在値記憶回路２７４の保持値「基準電源」が、基準値記憶回路２７８に保持されている基準電源の下位許容値と上位許容値との間にあるかどうかをデジタル比較回路２７０で比較し、診断する。
【０２１１】
デコーダ２５７とデコーダ２５９との出力に基づいてデジタルマルチプレクサ２７２は計測値「基準電源」を選択してデジタル比較回路２７０に送り、また、デコーダ２５７とデコーダ２５９との出力に基づいてデジタルマルチプレクサ２７２は基準電源の下位許容値を選択してデジタル比較回路２７０に送る。デジタル比較回路２７０は、計測値「基準電源」が基準電源の下位許容値より小さい場合に異常として、デコーダ２５７とデコーダ２５９との出力に基づいてデジタルマルチプレクサ２８２が選択した異常フラグの保持レジスタ、本実施形態ではフラグ記憶回路２８４のレジスタＭＦｆｌａｇに異常フラグを保持する。計測値「基準電源」が基準電源の下位許容値より大きい場合には正常と判断し、フラグ記憶回路２８４の異常フラグのセットは行われない。
【０２１２】
ステージＳＴＧＰＳＢＧの期間において、さらにデジタルマルチプレクサ２７２はデコーダ２５７とデコーダ２５９との出力に基づいて計測値「基準電源」を選択してデジタル比較回路２７０に送り、また、デコーダ２５７とデコーダ２５９との出力に基づいてデジタルマルチプレクサ２７２は基準電源の上位許容値を選択してデジタル比較回路２７０に送る。デジタル比較回路２７０は計測値「基準電源」が基準電源の上位許容値より大きい場合に異常として、デコーダ２５７とデコーダ２５９との出力に基づいてデジタルマルチプレクサ２８２が選択した異常フラグの保持レジスタ、本実施形態ではフラグ記憶回路２８４のレジスタＭＦｆｌａｇに異常フラグを保持する。計測値「基準電源」が基準電源の上位許容値より小さい場合には正常と判断し、フラグ記憶回路２８４の異常フラグのセットは行われない。このようにしてアナログ増幅器である差動増幅器２６２やアナログデジタル変換器１２２Ａが正常に動作しているかどうかの診断を、ステージＳＴＧＰＳＢＧの期間に実行することができ、高い信頼性を維持できる。
【０２１３】
〈デジタル比較回路の診断〉
図４に記載の動作表２６０のステージＳＴＧＣａｌでデジタル比較回路の診断が行われる。以下その動作を説明する。デジタルマルチプレクサ２７２はデコーダ２５７とデコーダ２５９の出力に基づき増加演算値２８０を選択する。この増加演算値２８０は、基準値記憶回路２７８に保持されている基準値、例えば基準値ＯＣに所定値を加算して得られた値である。デジタルマルチプレクサ２７６が基準値記憶回路２７８に保持されている基準値の一つ、本実施形態では基準値ＯＣを選択し、デジタル比較回路２７０に比較対象として入力する。さらにまた、選択された基準値ＯＣに所定値、例えば"１"を加算して得られた増加演算値２８０をデジタルマルチプレクサ２７２を介してデジタル比較回路２７０に入力する。デジタル比較回路２７０が基準値ＯＣより増加演算値２８０を大きいと判断すれば、デジタル比較回路２７０は正しく動作していることになる。
【０２１４】
次に、デジタルマルチプレクサ２７２はデコーダ２５７とデコーダ２５９の出力に基づき減少演算値２８１を選択する。この減少演算値２８１は、基準値記憶回路２７８に保持されている基準値、例えば基準値ＯＣから所定値、例えば"１"を減算して得られた値である。デジタルマルチプレクサ２７６が基準値記憶回路２７８に保持されている基準値の一つ、本実施形態では基準値ＯＣを選択し、デジタル比較回路２７０に比較対象として入力する。さらにまた、選択された基準値ＯＣに所定値、例えば"１"を減算して得られた減少演算値２８１をデジタルマルチプレクサ２７２を介してデジタル比較回路２７０に入力する。デジタル比較回路２７０が基準値ＯＣより減少演算値２８１を小さいと判断すれば、デジタル比較回路２７０は正しく動作していることになる。
【０２１５】
以上の様に、基準値記憶回路２７８に保持された基準値ＯＣを、この基準値ＯＣに所定値を加算した値と比較し、あるいは所定値を減算した値と比較することで比較器の動作が正常かどうかを診断することができる。
【０２１６】
増加演算値２８０や減少演算値２８１を使用する目的は、比較対象に対して大小関係が既知である条件を作り出して比較結果を診断することであり、所定値の加算や減算の代わりに、データを上位側にシフトあるいは下位側にシフトさせた値を使用しても良い。この場合は、所定値４で乗算や減算したことになり、上述のごとく既知の大小関係を作り出すことが可能となる。
【０２１７】
図２３と図２４に基づいて、電池セルＢＣの正極および負極とセルコントローラ８０とを接続する検出用ハーネスに異常が発生した場合の診断について説明する。図２３は図１乃至図２の検出用ハーネスの内のハーネスＬ２が断線した場合である。また図２４は図１９の回路の検出用ハーネスの内の上記と同様ハーネスＬ２が断線した場合である。断線の原因としては、各電池セルと検出用ハーネスとの接続部や、セルコントローラ８０と各ハーネスとの接続部のコネクタの接触不良が考えられ、またまれには検出用ハーネスそのものの断線の可能性がある。
【０２１８】
各電池セルの異常の可能性を検知し、異常が生じないようにすることが大切である。仮に電池セルと各集積回路間の電気的な接続に異常が生じると上記電池セルの異常の可能性を検知できなくなる。上記図２３や図２４における電池セルと各集積回路間の電気的な接続に異常が生じたことを検知する検知方法を、図２５を用いて説明する。なお上記図２３や図２４の基本的な動作は先に説明のとおりであり、また検出用ハーネスの内のハーネスＬ２が断線したとして説明するが、ハーネスＬ１からＬ７のどの線であっても同じように異常の診断が可能である。
【０２１９】
図２５において、バランシングスイッチ１２９Ａから１２９Ｃが開状態で検出用ハーネスのハーネスＬ２が断線しても、コンデンサＣ２を含む色々な静電容量があるので、選択回路１２０に入力される電圧ＶＣ２は見かけ上では、電池セルの端子電圧Ｖ２に近い正常値を示す可能性がある。従ってこのままでは異常を検知できない。
【０２２０】
従って次に、診断したい検出用ハーネスのＬ２を介して放電電流を流すバランシングスイッチ１２９Ｂを閉じる。バランシングスイッチ１２９Ｂを閉じることにより、検出用ハーネスのうちハーネスＬ２とＬ３の回路間に存在するコンデンサＣ２を含む静電容量に蓄えられていた電荷が放電され、選択回路１２０の入力電圧ＶＣ２は急激に低下する。もし断線していなければ電池セルＢＣ２から電流が供給されるので、入力回路１１６の入力電圧ＶＣ２はほとんど低下しない。
【０２２１】
先の図２０や図２１で説明した電池セルＢＣ２の端子電圧の計測ステージで電池セルＢＣ２の端子電圧が計測される（計測１）。先に説明の如くこの測定期間はバランシングスイッチ１２９Ｂを開状態とする。検出用ハーネスのうちハーネスＬ２とＬ３との回路間に存在するコンデンサＣ２を含む静電容量に電荷が流れ込み蓄積されるので、入力回路１１６の入力電圧ＶＣ２は少し上昇するが、それでも上記計測１で計測された電圧ＶＣ２は正常電圧に比べれば非常に低い電圧である。測定された電圧ＶＣ２は、図５に示す現在値記憶回路２７４のＢＣ２に保持される。
【０２２２】
上記の状況下では、測定に引き続き行われる電池セルＢＣ２の診断において、現在値記憶回路２７４から読み出された測定値が基準値記憶回路２７８の過放電閾値ＯＤ以下の異常値であることから、デジタル比較器２７０で異常の診断が可能となる。異常の診断結果はフラグ記憶回路２８４のレジスタＭＦｆｌａｇにセットされる。断線時の電圧ＶＣ２は過放電閾値ＯＤより低くなるので、過放電閾値ＯＤよりさらに低い断線閾値を設け、断線閾値と現在値記憶回路２７４のレジスタＣＥＬＬ２に保持された計測値とをデジタル比較器２７０で比較することで断線判断が簡単に可能となる。図５で基準値記憶回路２７８のレジスタＯＣＦＦＯの値を前記断線閾値の値とすることで、常時断線検知が可能となる。
【０２２３】
図２５において、バランシングスイッチ１２９Ｂを開状態とした後、バランシングスイッチ１２９Ａと１２９Ｃとを閉じると、コンデンサＣ２には電池セルＢＣ１とＢＣ２の直列接続の電圧が加わることとなり、コンデンサＣ２の端子電圧は非常に高くなる。このため計測１の後直ちにバランシングスイッチ１２９Ａと１２９Ｃとを閉じ、電池セルＢＣ２に対して再度測定を行う（計測２）と、今度は電圧ＶＣ２は、過充電閾値をはるかに超えた非常に高い値となっているので、簡単に断線検知が可能となる。
【０２２４】
上述のとおり、図５に記載の現在値記憶回路２７４のレジスタＣＥＬＬ２に上記計測２の測定結果が保持される。現在値記憶回路２７４のレジスタＣＥＬＬ２に保持された計測値をデジタル比較器２７０で断線検知のための閾値と比較して、断線の検知を行っても良いし、バッテリコントローラ２０のソフトウエアの処理に基づき断線診断を行っても良い。
【０２２５】
図２６はバッテリコントローラ２０からの通信コマンド２９２により診断を行う方法である。先に説明のとおり、検出用ハーネスのうちハーネスＬ２が断線したとする。予め定められたタイミングで断線診断のための通信コマンド２９２を送信する。この通信コマンド２９２は診断対象の集積回路を特定すると共に「バランシングスイッチ１２９を全て開にせよ」の命令である。すなわち通信コマンド２９２のデータ３３０は開を意味する「ゼロ」となっている。この命令を受けると、この命令の対象集積回路はバランシングスイッチ１２９を開にする。
【０２２６】
次に、予め決められたタイミングで診断対象の検出用ハーネスが接続されている電池セルを放電するため、バランシングスイッチ１２９Ｂに閉命令を送りバランシングスイッチ１２９Ｂを閉じる。ハーネスＬ２が断線していた場合、マルチプレクサ１２０への入力信号ＶＣ２はほとんどゼロとなる。その後、集積回路のステージ信号に基づく電池セルＢＣ２の測定ステージにおいて、バッテリコントローラ２０からの命令が出力される前に、バランシングスイッチ１２９Ｂが開状態となり、電池セルＢＣ２の端子電圧を計測するための計測が行われる。ハーネスＬ２が断線していた場合、マルチプレクサ１２０への入力信号ＶＣ２は非常に低い電圧であり、この低い電圧が図５の現在値記憶回路２７４のレジスタＣＥＬＬ２に保持される。
【０２２７】
集積回路は独自に短い周期で電池セル端子の計測を行っているので、バランシングスイッチ１２９Ｂが再び開状態となり、電池セルＢＣ２の端子電圧を計測するための計測が行われる。ハーネスＬ２が断線していた場合、計測結果は非常に低い値であり、この値が現在値記憶回路２７４のレジスタＣＥＬＬ２に保持される。
【０２２８】
バッテリコントローラ２０から診断結果を取り込む命令を受けると、集積回路は現在値記憶回路２７４のレジスタＣＥＬＬ２に保持されている計測結果を送信する。この計測結果を受信し、過放電状態よりさらに低い計測結果に基づき、バッテリコントローラ２０は断線の検知を行うことができる。すなわち集積回路から送られてきた計測結果を図２６に記載の閾値ＴｈＬ1と比較し、この閾値ＴｈＬ1より測定結果が下であれば断線と判断し、リチウム電池を使用した直流電源とインバータとの接続を切り離す準備を開始し、準備が出来次第リレーＲＬＰやＲＬＮを開にする。
【０２２９】
さらに正確を期すため、バッテリコントローラ２０はバランシングスイッチ１２９Ａと１２９Ｃを閉じ、バランシングスイッチ１２９Ｂを開く命令を送信する。もし断線している場合、診断する電池セルの両隣のバランシングスイッチ１２９を閉じると選択回路１２０への入力電圧ＶＣ２が非常に大きくなるので、過充電閾値より大きな電圧が測定されることとなる。この計測結果が現在値記憶回路２７４のレジスタＣＥＬＬ２に保持される。
【０２３０】
バッテリコントローラ２０から計測結果の取り込み命令を受信すると、集積回路は計測値をバッテリコントローラ２０に送信する。バッテリコントローラ２０は計測結果を受信し、過充電の閾値より高い断線検知用の閾値ＴｈＬ２と比較し、計測結果が前記閾値ＴｈＬ２より大きい場合に断線と判断する。計測１または計測２の結果と閾値ＴｈＬ１との比較、あるいは計測１と計測２の平均値と閾値ＴｈＬ１との比較でも正確に断線検知が可能であるが、さらに閾値ＴｈＬ１と比較することにより、非常に高い精度で断線の検知を行うことができる。しかも、通常の電池セルの端子電圧の計測動作を利用して行うことができ、容易である。また、特別な回路を多く増やすことがなく、既に有している充電状態ＳＯＣを制御するためのバランシングスイッチ１２９を利用して診断することができ、簡単である。
【０２３１】
次に各集積回路内で自動的に断線を診断する方法を図２７乃至図２９を用いて説明する。図４に記載のステージ信号に基づいて電池セルの単位電圧の計測と断線診断を行うことにより、自動的に断線の診断を実施することができる。図２７に具体的な計測および診断のスケジュールを示し、図２９に具体的な回路を示す。
【０２３２】
図２７の上段は、ステージ信号のｍ回目およびｍ+１回目の周期の集積回路３Ａの計測と断線診断を示し、中断は集積回路３Ａの次の集積回路３Ｂの計測と断線診断を示し、下段は集積回路３Ｂのさらに次の集積回路３Ｃの計測と断線診断を示す。集積回路３Ｂは集積回路３Ａから同期信号を受けて、また集積回路３Ｃは集積回路３Ｂから同期信号を受けて、それぞれ図４に示すステージの処理が開始される。なお、図２７において、表示「ＯＮ」はバランシングスイッチ１２９を閉じる制御を行っている期間を意味し、「ＯＦＦ」はバランシングスイッチ１２９を開く制御を行っている期間を意味する。「計測」は電池セルの端子電圧の計測と断線診断の制御を行っている期間を意味する。「ＯＮ」や「ＯＦＦ」や「計測」の記載の無い部分は充電状態ＳＯＣを行っている期間である。
【０２３３】
集積回路３ＡのステージＳＴＧＣａｌでバランシングスイッチ１２９Ａを閉じる。もし検出用ハーネスに断線があれば、バランシングスイッチ１２９Ａを閉じることで、図２５で説明のとおり、選択回路１２０の入力電圧は非常に小さくなるので、ステージＳＴＧＣＶ１で計測される電池セルＢＣ1の端子電圧は異常に小さい値として図２８のアナログデジタル変換器１２２Ａで検出される。したがって、現在値記憶回路２７４のレジスタＣＥＬＬ１に保持される計測値が非常に小さい値となる。なお、ステージＳＴＧＣＶ１での計測精度を上げるため、バランシングスイッチ１２９Ｂも開状態に制御される。
【０２３４】
計測に引き続き行われる断線診断において、現在値記憶回路２７４のレジスタＣＥＬＬ１に保持された計測値と基準値記憶回路２７８に保持された断線診断の閾値ＴｈＬ1とがデジタル比較器２７０で比較される。もしレジスタＣＥＬＬ１に保持された計測値が断線診断の閾値ＴｈＬ1より小さければ、断線を理由とする異常が発生したとしてフラグ記憶回路２８４の診断フラグが「１」となる。この診断フラグのセットは、直ちにバッテリコントローラ２０に伝送されることは既に図６で説明のとおりである。なお、図２８の基本動作は既に図５などで説明したとおりである。
【０２３５】
断線などの異常が無ければ、ステージＳＴＧＣＶ１で計測される電池セルＢＣ１の端子電圧は正常な値を示し、デジタル比較器２７０の診断でも異常検出は行われない。図２７のｍ周期では、奇数番目の電池セルのみの端子電圧の計測および診断が行われる。電池セルＢＣ１の次に電池セルＢＣ３の端子電圧の計測と断線診断が行われる。ステージＳＴＧＣＶ２において、電池セルＢＣ３のバランシングスイッチ１２９Ｃを一度閉じ、次にステージＳＴＧＣＶ３でバランシングスイッチ１２９Ｃを開にして電池セルＢＣ３の端子電圧の計測を行う。さらに図２８のデジタル比較器２７０で上記説明と同様に断線診断を行う。ステージＳＴＧＣＶ３における電池セルＢＣ３の端子電圧の検出精度や診断精度を高めるため、バランシングスイッチ１２９Ｃの両隣のバランシングスイッチ１２９Ｂと１２９Ｄは図２７に示すとおり、開状態に維持する。
【０２３６】
同様にステージＳＴＧＣＶ５において、電池セルＢＣ３の端子電圧の計測と診断を行うためバランシングスイッチ１２９Ｄや１２９Ｆを開状態に保持する。上記計測および診断は、奇数番目の電池セルＢＣ１、ＢＣ３、ＢＣ５について行われる。同様に電池セルＢＣ２、ＢＣ４、ＢＣ６の計測や診断はつぎのｍ＋１の周期で行われる。このように図２７では奇数番目の電池セルと偶数番目の電池セルで、計測と診断はそれぞれステージ周期の異なる周期で行うようにしている。
【０２３７】
集積回路３ＢのステージＳＴＧＣＶ１での電池セルＢＣ１に関する計測と診断では、一つ前の集積回路３Ａのバランシングスイッチ１２９Ｆが開状態に保たれることが必要である。このため集積回路３Ａから同期信号を集積回路３Ｂに送り、集積回路３Ｂは集積回路３Ａの同期信号に同期してステージを発生する。この実施形態では、集積回路３Ａからの同期信号を受けて最初のステージ信号ＳＴＧＣａｌの発生を開始している。
【０２３８】
このように隣接する集積回路において、一方の集積回路の所定周期で他方の集積回路に同期信号を送り、この同期信号を受けて他方の集積回路は決まったステージ信号をスタートさせるようにしているので、一方の集積回路の他方側の電池セルすなわち集積回路３Ａの電池セルＢＣ６の計測の期間は、他方の集積回路３Ｂの電池セルＢＣ１のバランシングスイッチ１２９Ａは開に保持される。また他方の集積回路３Ｂの電池セルＢＣ１の計測期間は、一方の集積回路３Ａの他方側の電池セルＢＣ６のバランシングスイッチ１２９Ｆを開に保持する。
【０２３９】
図２７において、集積回路３Ｂと３Ｃについても上記と同様であり、集積回路３Ｂの特定のステージで同期信号が集積回路３Ｂから集積回路３Ｃに送られる。このようにすることで計測される電池セルと直列接続されている両隣の電池セルのバランシングスイッチ１２９を開に維持し、正確な計測と正確な診断を実現している。
【０２４０】
上記図２７や図２９では電位の高い集積回路から隣接する電位の低い集積回路に同期信号を送信したが、これは一例であり、電位の低い集積回路から電位の高い集積回路へ同期信号を送信するようにしても問題ない。重要なことは隣接する集積回路内のステージ信号を、互いに同期して発生することである。
【０２４１】
（監視周期の短縮化）
上述したような診断を行うことにより、セル電圧を収集する集積回路をも含めて、電池状態がより正確に把握される。バッテリコントローラ２０はセルコントローラ８０からのセル電圧収集および診断を所定の測定・診断周期（以下では、監視周期と称する）で行っているが、車両走行状態の変化に対して電池側も素早く対応するためには、この監視周期をより短くする必要がある。以下に説明する実施形態では、セル電圧を計測するためのセンシング線（上述したハーネス）の断線診断等を行う際に、バッテリコントローラ２０とセルコントローラ８０との通信量を削減して、監視周期の短縮を図るようにした。
【０２４２】
まず、バッテリコントローラ２０で行っている診断について説明する前に、バッテリコントローラ２０とセルコントローラ８０と含む監視装置の全体的な動作を、図３２のタイムチャートを参照して説明する。
【０２４３】
図３２は、車両起動（キーオン）により装置が立ち上がってから、車両停止（キーオフ）により監視装置がシャットダウンするまでの流れを示したものである。これは、上述した図１４のフローチャートを用いて説明した動作の内の、以下に説明する診断に関係する概略の動作を図示したものである。動作全体は、監視装置が起動してからリレーＲＬＰ，ＲＬＮ（図１３参照）がオンされるまでの初期化動作、リレーＲＬＰ，ＲＬＮがオンしてからバッテリコントローラ２０がキーオフ信号を受信するまでのノーマル動作、キーオフ信号を受信してから監視装置が停止するまでのシャットダウン動作に分けられる。
【０２４４】
初期化動作においては、バッテリコントローラ２０は、ＲＯＭ／ＲＡＭのチェックや電流センサオフセット測定を行い、コマンドをセルコントローラ２０に送信して、セルコントローラ２０の起動、アドレッシング、ＯＣＶ（開回路電圧）測定などを行わせる。
【０２４５】
ノーマル動作においては、バッテリコントローラ２０は所定の監視周期Ｔ２で電池状態の監視を行い、その監視結果を上位のコントローラ（図１３に示す上位コントローラ１１０やインバータ装置２２０）に送信する。周期Ｔ２の監視動作（セル電圧測定や診断）はノーマル動作期間中繰り返し実行される。この監視周期Ｔ２の期間において、バッテリコントローラ２０は、セル電圧や後述するバランシングスイッチ状態を要求するコマンドをセルコントローラ８０に送信する。セルコントローラ８０は、そのコマンドに対して、セル電圧やバランシングスイッチ状態に関するデータをバッテリコントローラ２０に返信する。バッテリコントローラ２０は、収集したセル電圧およびバランシングスイッチ状態に基づいて後述する診断を行い、次の監視周期Ｔ２において、診断結果および全セル電圧を上位のコントローラに送信する。
【０２４６】
シャットダウン動作では、キーオフ信号受信後にインバータ装置２２０からの指令によりリレーＲＬＰ，ＲＬＮがオフされると、バッテリコントローラ２０は、必要なデータをバッテリコントローラ２０に設けられたＥＥＰＲＯＭに書込み、その後、監視装置を停止する。
【０２４７】
図３３は、監視周期Ｔ２における動作を説明する図であり、バッテリコントローラ２０からセルコントローラ８０へのコマンド送信と、セルコントローラ８０からバッテリコントローラ２０へのデータ返信との関係を示すタイムチャートである。ここでは、診断に関するデータ収集を主に示した。以下では、当該電池セルの均等化を行うためのバランシングスイッチをオンして、その電池セルのセル電圧を測定し、測定されたセル電圧とバランシングスイッチの状態とに基づいて、後述するような故障診断を行う。なお、以下の説明では、図１９に示す回路図を参照しながら説明する。また、説明を簡単にするために集積回路の数Ｎを３として説明する。
【０２４８】
まず、バッテリコントローラ２０は、奇数番目のバランシングスイッチ１２９Ａ，１２９Ｃ，１２９Ｅをオンしなさいという同報コマンドを、セルコントローラ８０へ送信する。同報コマンドとは、全ての集積回路３Ａ〜３Ｃの全てに同じ処理を行うことを指令するコマンドである。セルコントローラ８０においては、集積回路３Ａ，３Ｂ，３Ｃがデイジーチェーンで繋がっており、同報コマンドは集積回路３Ａ〜３Ｃを順に受け渡され、集積回路３Ｃからバッテリコントローラ２０にループバックされる。同報コマンドを受信した各集積回路３Ａ〜３Ｃは、奇数番目のバランシングスイッチ１２９Ａ，１２９Ｃ，１２９Ｅをそれぞれオンする。
【０２４９】
図３４（ａ）は、同報コマンドのデータ形式の一例を説明する図である。コマンドは８ビットで表され、１番目から６番目までのビットがバランシングスイッチ１２９Ａ〜１２９Ｆのオンオフ設定であり、７番目および８番目のビットは、次に読み出すセル電圧の組み合わせを設定している。例えば、オン設定が１およびオフ設定が０で、奇数番目のセル電圧返信設定が「０１」、偶数番目のセル電圧返信設定が「１０」であったとした場合、奇数番目のバランシングスイッチをオンするコマンドは「１０１０１００１」で表され、偶数番目のバランシングスイッチをオンする同報コマンドは「０１０１０１１０」で表される。
【０２５０】
次いで、バッテリコントローラ２０は、同報コマンドの送信から所定時間Ｔ３だけ待った後に、セル電圧を収集するためのコマンドを、セルコントローラ８０の最上位の集積回路３Ａへ送信する。なお、所定時間Ｔ３は、各集積回路が同報コマンドを受信してからセル電圧測定を開始し、その後、全てのセル電圧測定が終了してセル電圧データの収集ができる状態にまでの時間である。
【０２５１】
本実施の形態では、複数の集積回路３Ａ〜３Ｃがデイジーチェーンでシリアルに繋がっているので、各集積回路へコマンドを出力する場合には、一つの集積回路としか通信ができない。そのため、３つの集積回路３Ａ〜３Ｃが繋がっている場合には、図３３に示すように、各集積回路３Ａ〜３Ｃに対して個別にセル電圧読み出しのコマンドを送信する必要がある。
【０２５２】
先ず、バッテリコントローラ２０は、セルコントローラ８０の集積回路３Ａに対してセル電圧を返信しなさいというコマンドを送信する。図３５は、要求コマンドに対するセルコントローラ８０側の返信の様子を模式的に示したものである。集積回路３Ａに対するコマンドが集積回路３Ａの受信端子ＲＸに入力されると、集積回路３Ａは、アドレスからそのコマンドが自分へのコマンドであることを認識する。集積回路３Ａは、前述した同報コマンドにより奇数番目のセル電圧を送信すべきことが事前に知らされているので、このセル電圧を要求するコマンド列の後ろに、奇数番目の電池セルＢＣ１，ＢＣ３，ＢＣ５のセル電圧データ、バランシングスイッチ状態およびチェックサムを付加して送信端子ＴＸから次の集積回路３Ｂへと送信する。なお、バランシング状態については後述する。
【０２５３】
前述したように、各集積回路３Ａ〜３Ｃは、起動後、セル電圧の測定を所定の周期で繰り返し行う。測定したセル電圧は、図５に示す現在値記憶回路２７４の対応するレジスタＣＥＬＬ１〜ＣＥＬＬ６に記憶される。各レジスタＣＥＬＬ１〜ＣＥＬＬ６のセル電圧は、セル電圧測定が所定の周期Ｔ１で行われる度に、その都度書き換えられる。そのため、各レジスタＣＥＬＬ１〜ＣＥＬＬ６には常に直近のセル電圧が記憶されるようになっている。上述したセル電圧読み出し（収集）のコマンドを集積回路３Ａが受信すると、集積回路３Ａは、レジスタＣＥＬＬ１，ＣＥＬＬ３，ＣＥＬＬ５に記憶されている各セル電圧をコマンド列の後ろに付加する（図３３参照）。
【０２５４】
なお、通常のセル電圧測定においては、放電電流制限抵抗での電圧降下による誤差を回避し、測定精度を高めるためにセル電圧測定期間中はバランシングスイッチが強制的にオフされる。しかし、上述したように、セル電圧測定は高速に実施されるため、図２６に示すように、断線している場合はほぼゼロの電圧を維持し、判定閾値ＴｈＬ１を超えることはない。また、集積回路に診断モードを設け、強制オフ機能を解除するようにし、確実に診断閾値ＴｈＬ１以下を保持するようにしてもよい。つまり、セル電圧の測定端子に設けたフィルタ時定数と測定回路のサンプリング時間の最適設計が行われていればよい。
【０２５５】
図３５に示すように、集積回路３Ａから出力された返信を受信した集積回路３Ｂは、アドレスが自分自身と異なるので、そのままコピーしたものを送信端子ＴＸから送信する。集積回路３Ｃの場合も集積回路３Ｂの場合と同様に、コピーしたものを送信端子ＴＸから送信する。最下位の集積回路３Ｃから送信された集積回路３Ａの返信は、バッテリコントローラ２０の受信端子ＲＸに入力される。
【０２５６】
集積回路３Ａからの返信を受信したバッテリコントローラ２０は、図３６に示すように、次の集積回路３Ｂに対してセル電圧を返信しなさいというコマンドを最上位の集積回路３Ａへ送信する。集積回路３Ｂへのコマンドを受信した集積回路３Ａは、コマンドが自分に対するものでないことを認識すると、それをコピーして次の集積回路３Ｂへと送信する。集積回路３Ｂへのコマンドを受信した集積回路３Ｂは、コマンド列の後ろに、奇数番目の電池セルＢＣ１，ＢＣ３，ＢＣ５のセル電圧データ、バランシングスイッチ状態およびチェックサムを付加して送信端子ＴＸから次の集積回路３Ｃへと送信する。この集積回路３Ｂの返信を受信した集積回路３Ｃは、アドレスが自分自身と異なるので、そのままコピーしたものを送信端子ＴＸからバッテリコントローラ２０へと送信する。
【０２５７】
なお、図３３では図示を省略したが、バッテリコントローラ２０は、奇数番目のバランシングスイッチ１２９Ａ，１２９Ｃ，１２９Ｅをオンして奇数番目のセル電圧を収集したならば、次いで、偶数番目のバランシングスイッチ１２９Ｂ，１２９Ｄ，１２９Ｆをオンして偶数番目のセル電圧を収集する処理を同様に行う。
【０２５８】
そして、奇数番目のバランシングスイッチをオンしたときのセル電圧、および、偶数番目のバランシングスイッチをオンしたときのセル電圧を読み出したならば、バッテリコントローラ２０は、セル電圧均等化のためのバランシングスイッチオンオフのコマンドをセルコントローラ８０へ送信する。このコマンドは集積回路３Ａ、集積回路３Ｂ、集積回路３Ｃの順に受け渡され、バッテリコントローラ２０へループバックされる。このコマンドを受信した各集積回路３Ａ〜３Ｃは、自分自身へのコマンドに従ってバランシングスイッチをオンオフしセル電圧均等化を開始する。
【０２５９】
次いで、バッテリコントローラ２０は、後述する異常フラグ返信を要求する同報コマンドをセルコントローラ８０へ送信する。この同報コマンドを受信したセルコントローラ８０は、異常フラグをバッテリコントローラ２０へ送信する。バッテリコントローラ２０は、バランシングスイッチオン時のセル電圧、バランシングスイッチ状態および異常フラグの各データを受信したならば、これらのデータに基づき後述する集積回路の診断を行う。その診断の結果、セル電圧測定に異常が無いことが判定した場合には、全てのセル電圧を収集し、診断結果と全セル電圧をＣＡＮによりインバータ装置２２０へ送信する。この全セル電圧の収集も図３３に示した監視周期Ｔ２内に行われる。
【０２６０】
上述したように、本実施の形態では、奇数番目のバランシングスイッチをオンして測定されたセル電圧を収集する際には、奇数番目のセル電圧のみを収集し、偶数番目のバランシングスイッチをオンして測定されたセル電圧を収集する際には、偶数番目のセル電圧のみを収集するようにした。バランシングスイッチがオフ状態のセル電圧が、診断に不要な理由は、上述したように、断線時には測定端子がフローティングとなり、判定閾値ＴｈＬ１以下となることが不確実であり診断が正しく行えないため。また逆に、Ｎ番のセルの断線を診断するために、Ｎ−１番目とＮ＋１番目のバランシングスイッチをオン状態とし、Ｎ番目のバランシングスイッチをオフ状態としてＮ番のセル電圧を測定し、判定閾値ＴｈＬ２以上であるかを判定することでも可能である。この場合は奇数番目のバランシングスイッチを全てオン状態とし、偶数番目のセル電圧のみを読み出すことにより達成できる。集積回路の設計は変更することなく、バッテリコントローラ２０からの送信コマンドを、偶数番目のセル電圧返信設定「１０」かつ、奇数番目のバランシングスイッチをオンさせる「１０１０１０１０」として、同報送信すればよい。
【０２６１】
一般的には、セル電圧を収集する場合には、集積回路のレジスタに記憶されたセル電圧データの全てを読み出すのが普通である。しかし、上述のように奇数番目または偶数番目のバランシングスイッチをオンにして、バランシングスイッチがオン状態のセル電圧を読み出し、判定閾値ＴｈＬ１以下を断線と判断する場合に、診断に不要なバランシングスイッチがオフ状態のセル電圧（すなわち、偶数番目または奇数番目のセル電圧）までバッテリコントローラ２０に返信する構成とすると、図３４（ｂ）に示すように返信の通信量が増大してしまう。その結果、通信経路の占有時間が長くなり、監視周期Ｔ２が長くなるという不都合が生じる。
【０２６２】
そこで、本実施の形態では、上述したように奇数番目または偶数番目のセル電圧データを収集する際に不要なセル電圧データ、すなわち、バランシングスイッチがオフとなっている偶数番目または奇数番目のセル電圧データを省くことによって、通信量を減らして監視周期Ｔ２の短縮を図るようにした。監視周期Ｔ２の短縮化を行う方法としては、単純に通信スピードを上げる方法もあるが、そうすると、車両駆動用バッテリに対する余計な消費電流が大きくなり好ましくなく、また、集積回路のチップサイズも大きくなる。さらに、通信スピードを上げた場合には、耐ノイズ性が低下するという欠点があると共に、図３５に示す絶縁素子ＰＨ１，ＰＨ３が高価になりコスト上昇を招く。
【０２６３】
なお、上述した例では、読み出すセルが奇数番目か偶数番目かを同報コマンドで指定したが、各集積回路へのコマンドで奇数番目か偶数番目かを指定するようにしても良い。
【０２６４】
（バランシングスイッチ状態）
次に、上述したバランシングスイッチ状態について説明する。図２において説明したように、バランシングスイッチ１２９Ａ〜１２９ＦはＭＯＳＦＥＴで構成されており、放電制御回路１３２によってゲート電圧を制御することにより、バランシングスイッチ１２９Ａ〜１２９Ｆのオンオフを行う。各バランシングスイッチ１２９Ａ〜１２９Ｆのソース−ドレーン間電圧（以下では、ドレーン電圧と称する）Ｖdsは、動作状態検出回路１２８Ａ〜１２８Ｄによって検出され、電位変換回路１３０に出力される。
【０２６５】
動作状態検出回路１２８Ａ〜１２８Ｄは、バランシングスイッチ１２９Ａ〜１２９Ｆのドレーン電圧Ｖdsを基準電圧ＶdsHおよびＶdsLと比較するコンパレータとを備えている。このコンパレータによりドレーン電圧Vdsと基準電圧ＶdsHおよびＶdsLとを比較することにより、バランシングスイッチ状態が検出される。各バランシングスイッチ１２９Ａ〜１２９Ｆのドレーン電圧Vdsと基準電圧ＶdsHおよびＶdsLとの比較は、図４に示した前処理ステージのＲＥＳ期間において行われる。
【０２６６】
図３３に示すセル電圧測定のタイミングチャートでは、セル電圧計測のタイミングしか記載していないが、符号１で示した電池セルＢＣ１のセル電圧計測の前に前処理ステージがあり、その期間においてバランシングスイッチのドレーン電圧検出、すなわち基準電圧ＶdsHおよびＶdsLとの比較が行われる。そのため、セル電圧測定の一周期Ｔ１が経過する毎に、奇数番目のバランシングスイッチ１２９Ａ，１２９Ｃ，１２９Ｅに関する比較結果が取得される。また、この前処理ステージでは、ドレーン電圧の比較結果に基づく異常フラグもセットされる。
【０２６７】
図３７は、ドレーン電圧Ｖdsと基準電圧ＶdsHおよびＶdsLとを比較する際の判定テーブルを示したものである。基準電圧ＶdsHおよびＶdsLは、ＭＯＳＦＥＴの動作点を含む正常動作範囲におけるドレーン電圧範囲の下限値と上限値である。例えば、ドレーン電圧Ｖdsの比較結果が「Ｖds≦ＶdsH」であった場合には、バランシングスイッチ状態（ＢＳＷ状態）は１（オン）と判定され、比較結果が「Ｖds＞ＶdsH」であった場合には、バランシングスイッチ状態（ＢＳＷ状態）は０（オフ）と判定される。すなわち、バランシングスイッチ状態は、ドレーン電圧Ｖdsと基準電圧ＶdsHとの比較で決まる。
【０２６８】
また、バランシングスイッチ異常判定（ＢＳＷ判定）については、判定テーブルの１行目の場合には、コマンドがＨ（ハイ）でバランシングスイッチ状態がオン（１）であるが、ドレーン電圧Ｖdsの比較結果が「Ｖds＜ＶdsL」と低すぎるので、例えば、バランシングスイッチの短絡故障や抵抗の開放故障などが考えられ、ＮＧ（異常）と判定されて異常フラグがセットされる。テーブルの２行目の場合には、コマンドがハイでバランシングスイッチ状態がオンであって、ドレーン電圧Ｖdsの比較結果が「ＶdsL≦Ｖds≦ＶdsH」と正常範囲なので、正常（ＯＫ）であると判定する。テーブルの３行目の場合には、コマンドはハイであるが、バランシングスイッチ状態がオフであって、かつ、比較結果が「Ｖds＞ＶdsH」であるので、バランシングスイッチが開放故障していると考えられ、異常（ＮＧ）と判定されて、異常フラグがセットされる。
【０２６９】
テーブルの４行目の場合には、コマンドはロー（Ｌ）であるが、バランシングスイッチ状態がオンであって、かつ、比較結果が「Ｖds＜ＶdsL」であるので、バランシングスイッチの短絡故障や抵抗の開放故障などが考えられ、ＮＧ（異常）と判定されて異常フラグがセットされる。テーブルの５行目の場合には、コマンドはローであるがバランシングスイッチ状態がオンであるので、異常と判定されて異常フラグがセットされる。テーブルの６行目の場合には、コマンドがローでバランシングスイッチ状態がオフなので、正常であると判定される。
【０２７０】
判定テーブルに基づく上述のような判定は、バランシングスイッチ１２９Ａ〜１２９Ｆの各ドレーン電圧Ｖdsに対して行われ、判定結果はレジスタに記憶される。そして、図３３に示すセル電圧測定（上記診断も含む）の一周期Ｔ１が繰り返される度に、レジスタの値が更新されることになる。各集積回路３ａ〜３Ｃは、バッテリコントローラ２０からのセル電圧読み出しコマンドを受信すると、図３３，３５，３６に示すように、セル電圧データの後ろにバランシングスイッチ状態を付けて返信する。例えば、奇数番目のバランシングスイッチをオンするコマンドの後のセル電圧読み出しのタイミングにおいては、「１０１０１０」というデータがバランシングスイッチ状態としてレジスタに記憶されている。「１０１０１０」というバランシング状態は、全てのバランシングスイッチがコマンド通りに動作していることを示す。
【０２７１】
なお、異常フラグに関しては、それぞれの判定結果がＯＲ判定され、集積回路１つに関して１つの異常フラグが、図３３の異常フラグ要求に対する返信のところでバッテリコントローラ２０に送信される。
【０２７２】
（バッテリコントローラ２０における診断動作）
次に、バッテリコントローラ２０により実行される診断処理について、図３８，３９のフローチャートを参照して説明する。なお、図３８は、一つの集積回路に関する診断処理のフローを示したものであり、各集積回路毎に図３８に示す一連の処理を繰り返し実行することで、全てのセル電圧が正しく読み出された否かの診断ができる。
【０２７３】
ステップＳ１１０では、診断に必要なデータ、すなわち、セル電圧、バランシングスイッチの状態および異常フラグに関するデータを収集する。なお、データの収集は、図３３に示したようにセル電圧読み出しコマンドおよび異常フラグ要求コマンドをセルコントローラ８０に送信することにより、各集積回路３Ａ〜３Ｃからそれぞれ収集される。
【０２７４】
ステップＳ１２０では、収集したバランシングスイッチの状態が期待値通りか否かを判定する。すなわち、バッテリコントローラ２０から送信したコマンドのオンオフとバランシングスイッチ状態のオンオフとが全て一致している場合には、期待値通りであると判定しステップＳ１３０へ進む。一方、一つでもオンオフに不一致が有る場合には、ステップＳ１７０へ進む。
【０２７５】
まず、ステップＳ１３０へ進んだ場合について説明する。ステップＳ１３０では、電池セルＢＣｎ毎の診断処理が行われる。図３９は、ステップＳ１３０での処理を示すフローチャートである。なお、符号ｎは、集積回路が監視するセルグループ内のｎ番目のセルを表している。
【０２７６】
図３９のステップＳ２００では、隣接しているｎ番目とｎ＋１番目の電池セルのセル電圧がともに所定電圧Ｖ１以下か否かを判定する。ここで、所定電圧値Ｖ１は図１９のハーネス（ここではセンシング線と呼ぶことにする）Ｌ１〜Ｌ６が断線していか否かを診断する閾値である。なお、セル電圧の過放電閾値をＶ２、過充電閾値をＶ３とすると、セル電圧の正常範囲は「Ｖ３＞（正常電圧）＞Ｖ２＞Ｖ１」の関係を満たしている。
【０２７７】
ステップＳ２００でｎ番目とｎ＋１番目の電池セルのセル電圧がともに所定電圧Ｖ１以下であると判定されると、ステップＳ２５０へ進んでセンシング線Ｌn+1の断線または抵抗ＲＡn+1の開放故障と診断する。診断結果は、バッテリコントローラ２０内の不揮発メモリに記憶される。
【０２７８】
例えば、ｎ＝２の場合についてステップＳ２００を考えると、この場合の隣接するｎ番目の電池セルはＢＣ２であって、ｎ＋１番目の電池セルはＢＣ３となる。電池セルＢＣ２のセル電圧Ｖc2がセンシング線診断閾値Ｖ１以下である場合には、センシング線Ｌ２またはＬ３が断線しているか、抵抗ＲＡ２またはＲＡ３が開放故障していることが考えられる。同様に、電池セルＢＣ３のセル電圧Ｖc3がセンシング線診断閾値Ｖ１以下である場合には、センシング線Ｌ３またはＬ４が断線しているか、抵抗ＲＡ３またはＲＡ４が開放故障していることが考えられる。そのため、セル電圧Ｖc2およびＶc3の両方ともＶ１以下である場合には、センシング線Ｌ３が断線しているか、または、抵抗ＲＡ３が開放故障していると考えることができる。すなわち、ステップＳ２５０のような診断結果となる。
【０２７９】
ステップＳ２００でＮＯと判定されてステップＳ２１０に進んだ場合には、すなわち、セル電圧ＶcnまたはＶcn+1がＶ１以下ではない場合には、ステップＳ２１０において、隣接２セルの内、電池セルＢＣｎのセル電圧ＶcnだけがＶ１以下か否かを判定する。電池セルＢＣｎのセル電圧ＶcnだけがＶ１以下と判定された場合には、ステップＳ２６０に進んで電池セルＢＣｎが過放電であると診断し、診断結果を不揮発メモリに記憶する。
【０２８０】
ステップＳ２１０においてＮＯと判定された場合には、ステップＳ２２０に進んで、電池セルＢＣｎのセル電圧Ｖcnが過充電閾値Ｖ３以上か否かを判定する。ステップＳ２２０でセル電圧Ｖcnが過充電閾値Ｖ３以上と判定されると、ステップＳ２７０に進んで電池セルＢＣｎが過充電であると診断し、診断結果を不揮発メモリに記憶する。
【０２８１】
ステップＳ２２０においてＮＯと判定された場合には、ステップＳ２３０に進んで、電池セルＢＣｎのセル電圧Ｖcnが過放電閾値Ｖ２以上で、かつ、図３３，３７で説明した異常フラグが立っているか否かを判定する。この段階では、バランシング状態については図３８のステップＳ１２０で期待値通りと判定されているので、図３７の判定テーブルの３行目や４行目のＮＧ（異常）は排除され、ドレーン電圧ＶdsがＶdsLより小さいために異常フラグが立っていると考えられる。
【０２８２】
ステップＳ２３０においてＹＥＳと判定された場合は、すなわち、セル電圧Ｖcnが正常電圧範囲であって、かつ、異常フラグが立っている（ドレーン電圧ＶdsがＶdsLより小さい）と判定された場合には、ステップＳ２８０に進んでバランシング回路に開放故障が生じていると診断し、診断結果を不揮発メモリに記憶する。バランシング回路の開放故障としては、例えば、バランシングスイッチ自身の開放故障、抵抗Ｒnの開放故障やドレーン配線の基板パターンの断線などが考えられる。
【０２８３】
ステップＳ１３０でＮＯと判定された場合には、ステップＳ２４０へ進んで、当該集積回路の全ての電池セルに関して診断が終了したか否かを判定する。ステップＳ２４０において、全セル終了していないと判定されるとステップＳ２００へ戻って、次の電池セルに関するステップＳ２００からステップＳ２８０までの処理を実行する。一方、当該集積回路の全ての電池セルに関して診断が終了したと判定されると、図３８のステップＳ１４０へと進む。
【０２８４】
ステップＳ１４０では、集積回路の診断（例えば、前述したマルチプレクサ診断など）において異常が有ったか否かを判定する。ステップＳ１４０において異常ありと判定されると、ステップＳ１５０へ進んで集積回路そのものに異常が生じていると診断し、診断結果を不揮発メモリに記憶する。一方、ステップＳ１４０においてＮＯと判定されると、ステップＳ１６０へ進んで、正常であると、すなわち、セル電圧を正しく読めていると診断し、診断結果を不揮発メモリに記憶する。
【０２８５】
一方、ステップＳ１２０においてバランシング状態が期待値通りでないと判定された場合には、ステップＳ１７０に進んで、当該集積回路に対応する電池セルの全てのセル電圧が、センシング線診断閾値Ｖ１以上であるか否かを判定する。ここで、センシング線診断閾値Ｖ１は過放電閾値Ｖ２よりも低い値なので、Ｖ１以下のセル電圧が一つでも有った場合には、その電池セルはかなり重症な過放電状態であると言える。よって、ステップＳ１７０でＮＯと判定された場合には、ステップＳ１８０へ進んで過放電と診断して、診断結果を不揮発メモリに記憶する。
【０２８６】
一方、ステップＳ１７０でＹＥＳと判定された場合には、バランシング回路の故障と診断し、診断結果を不揮発メモリに記憶する。この場合のバランシング回路故障としては、例えば、バランシングスイッチの常時はりつきや、抵抗の開放故障などが考えられる。
【０２８７】
前述したように、バッテリコントローラ２０は、次の監視周期Ｔ２において、診断結果および全セル電圧を上位のコントローラに送信する。そのため、ユーザは、上位コントローラに吸い上げられた診断データを参照することで、故障箇所の修理が行いやすくなる
【０２８８】
このように、上述した診断処理では、奇数番目の電池セルのバランシングスイッチをオンし、全てのセル電圧（端子電圧）ではなく奇数番目のセル電圧のみを返信し、同様に、偶数番目の電池セルのバランシングスイッチをオンして偶数番目のセル電圧のみを返信するようにしているので、通信量の低減が図れ、監視周期Ｔ２を短縮することができる。その結果、セル電圧計測結果や診断結果の更新をより速く行うことができ、車両用電池システムの信頼性向上を図ることができる。また、車両側の要求に対してより速く追従できる。
【０２８９】
また、バッテリコントローラ２０は、上述のようにより短い時間で収集された奇数番目の電池セルの端子電圧と、偶数番目の電池セルの端子電圧と、バランシングスイッチのスイッチング状態という少ない情報に基づいて故障診断を行い、センシング線が断線したのか、電池セルの充電状態が異常（過充電、過放電）であるか、バランシング回路側に異常が有るのかの区別を行うことができる。
【０２９０】
なお、上述した説明では、通信量の低減を図るために不要なセル電圧データをバッテリコントローラ２０へ返信しないような構成としたが、奇数番目または偶数番目のバランシングスイッチをオンにして計測されるセル電圧の全てを返信するような構成であっても、センシング線が断線したのか、電池セルの充電状態が異常（過充電、過放電）であるか、バランシング回路側に異常が有るのかの区別を行うことができる。
【０２９１】
上述した各実施形態はそれぞれ単独に、あるいは組み合わせて用いても良い。それぞれの実施形態での効果を単独あるいは相乗して奏することができるからである。また、本発明の特徴を損なわない限り、本発明は上記実施の形態に何ら限定されるものではない。例
【符号の説明】
【０２９２】
ＢＣ１〜ＢＣ１２……電池セル、Ｒ，Ｒ１〜Ｒ６……抵抗、３Ａ、３Ｂ、４Ａ、４Ｂ、５Ａ、５Ｂ……集積回路、Ｓｉ……電流センサ、Ｖｄ……電圧計、９……バッテリ部、２０……バッテリコントローラ、３２……検出用ハーネス、５０……通信ハーネス、５２……伝送路（シリアル通信）、５４……伝送路（フラグ通信）、５６……伝送路（Wake  ＵＰ）、６６……センターポール、８０……セルフコントローラ、８１……正極強電ケーブル、８２……負極強電ケーブル、９２……比較回路、９３……切り換えスイッチ、１１６……入力回路、１１８，１２０……マルチプレクサ、１２１……電源回路、１２２……電圧検出回路、１２２Ａ……アナログデジタル変換器、１２３……ＩＣ制御回路、１２４……電源管理回路、１２５……記憶回路、１２７……通信回路、１２８Ａ〜１２８Ｄ……動作状態検出回路、１２９Ａ〜Ｆ……バランシングスイッチ、１３０……電位変換回路、１３１……異常判定回路、１３２……放電制御回路、１３３……スイッチ駆動回路、１６０，２５９６……診断回路、１６４……判断回路、１６８……異常フラグ記憶回路、２２０……インバータ装置、２２２……ＭＣＵ、２２４……ドライバ回路、２２６……パワーモジュール、２３０……モータ、２５２……タイミング制御回路、２５４……起動回路、２５６……第１ステージカウンタ、２５７……デコーダ、２５８……第２ステージカウンタ、２５８２……レジスタ、２５８４、２５８６……ロジック回路、２５９……デコーダ、２６０……動作表、２６２……差動増幅器、２６３……平均化制御回路、２６４……平均化回路、２７０……デジタル比較器、２７２、２７６……デジタルマルチプレクサ、２７４，２７４Ａ……現在値記憶回路、２７５……初期値記憶回路、２７５Ａ……異常時データ記憶回路、２７８，２７８Ａ……基準値記憶回路、２８１１〜２８６１……計測制御回路、２８４……フラグ記憶回路、２８６……選択回路、２９２……通信コマンド、２９４……データバス、３０２……送信レジスタ、３２２……受信レジスタ、３４４……コマンド処理回路、３４５……コマンド解読回路、３４６……演算回路、
【図１】
2010228523.tif 000003
【図２】
2010228523.tif 000004
【図３】
2010228523.tif 000005
【図４】
2010228523.tif 000006
【図５】
2010228523.tif 000007
【図６】
2010228523.tif 000008
【図７】
2010228523.tif 000009
【図８】
2010228523.tif 000010
【図９】
2010228523.tif 000011
【図１０】
2010228523.tif 000012
【図１１】
2010228523.tif 000013
【図１２】
2010228523.tif 000014
【図１３】
2010228523.tif 000015
【図１４】
2010228523.tif 000016
【図１５】
2010228523.tif 000017
【図１６】
2010228523.tif 000018
【図１７】
2010228523.tif 000019
【図１８】
2010228523.tif 000020
【図１９】
2010228523.tif 000021
【図２０】
2010228523.tif 000022
【図２１】
2010228523.tif 000023
【図２２】
2010228523.tif 000024
【図２３】
2010228523.tif 000025
【図２４】
2010228523.tif 000026
【図２５】
2010228523.tif 000027
【図２６】
2010228523.tif 000028
【図２７】
2010228523.tif 000029
【図２８】
2010228523.tif 000030
【図２９】
2010228523.tif 000031
【図３０】
2010228523.tif 000032
【図３１】
2010228523.tif 000033
【図３２】
2010228523.tif 000034
【図３３】
2010228523.tif 000035
【図３４】
2010228523.tif 000036
【図３５】
2010228523.tif 000037
【図３６】
2010228523.tif 000038
【図３７】
2010228523.tif 000039
【図３８】
2010228523.tif 000040
【図３９】
2010228523.tif 000041