(57)【要約】【課題】システム駆動中における例外条件の発生によりマイクロコントローラのプログラム処理が無限ループに陥ることを回避できる，マイクロコントローラシステム及びその駆動方法を提供する。【解決手段】本発明のマイクロコントローラシステムは，マイクロコントローラ（１）と，マイクロコントローラにより制御される装置（３）と，監視装置（２）とを有する。マイクロコントローラは，通常駆動プログラム（７）の制御下で通常駆動通知信号（Ｗ）を出力する。監視装置は，通常駆動通知信号が入力されない場合に装置を安全状態に移行し，さらに通常駆動通知信号が所定の時間以上にわたり入力されない場合に装置を安全状態にロックする。所定の例外条件が発生すると，マイクロコントローラは駆動準備プログラム（６）に移行し，監視装置はレジスタ（１７）をインクリメントさせる。レジスタの内容が所定の値に達すると，監視装置は装置を安全状態にロックする。【選択図】図１
2007531944.tif 000002
【特許請求の範囲】
【請求項１】
システム起動時，およびシステム駆動中における所定の例外条件の発生時に駆動準備プログラム（５，６）を実行し，前記駆動準備プログラム（５，６）の実行後に通常駆動プログラム（７）に移行し，前記通常駆動プログラム（７）の制御下で通常駆動通知信号を出力するように形成される，マイクロコントローラ（１）と；
前記マイクロコントローラ（１）により制御される装置（３）と；
前記マイクロコントローラ（１）による前記通常駆動プログラム（７）の実行を前記通常駆動通知信号に基づいて監視し，前記通常駆動通知信号が入力されない場合に，前記装置（３）を安全状態に移行し，さらに所定の時間以上にわたり前記通常駆動通知信号が入力されない場合に，前記装置（３）を前記安全状態にロックする監視装置（２）と；
を有するマイクロコントローラシステムであって：
前記監視装置（２）は，前記所定の例外条件の発生毎にインクリメントされるレジスタ（１７）を有し，前記レジスタ（１７）の値が所定の値に達すると，前記装置（３）を安全状態にロックするように形成されることを特徴とする，マイクロコントローラシステム。
【請求項２】
前記所定の例外条件の発生時に実行される前記駆動準備プログラム（６）は，起動時に実行される前記駆動準備プログラム（５，６）に含まれることを特徴とする，請求項１に記載のマイクロコントローラシステム。
【請求項３】
前記マイクロコントローラ（１）は，前記所定の例外条件の発生を検知して前記監視装置（２）に例外条件検知信号（Ｒ）を出力するように形成されることを特徴とする，請求項１または２に記載のマイクロコントローラシステム。
【請求項４】
前記マイクロコントローラ（１）は，前記レジスタ（１７）に対する読み取りアクセスを有し，前記例外条件検知信号（Ｒ）の出力前後における前記レジスタ（１７）の値を比較するように形成されることを特徴とする，請求項３に記載のマイクロコントローラシステム。
【請求項５】
前記比較は，前記駆動準備プログラム（５）の制御下で実行されることを特徴とする，請求項４に記載のマイクロコントローラシステム。
【請求項６】
前記監視装置（２）は，前記通常駆動通知信号が入力されないために前記装置（３）を前記安全状態にロックするに至るまでの所定の時間を，前記所定の例外条件の発生が検知される場合には前記所定の例外条件の発生が検知されない場合より長く設定するように形成されることを特徴とする，請求項１〜５のいずれかに記載のマイクロコントローラシステム。
【請求項７】
前記レジスタ（１７）は，システムの起動時毎に同一の値を有することを特徴とする，請求項１〜６のいずれかに記載のマイクロコントローラシステム。
【請求項８】
前記マイクロコントローラシステムは，車両用の安全関連システム，特にアンチロックブレーキシステム，電気油圧ブレーキシステム，位置制御システムまたはスリップ制御システムの一部であることを特徴とする,請求項１〜７のいずれかに記載のマイクロコントローラシステム。
【請求項９】
前記マイクロコントローラ（１）と，前記マイクロコントローラ（１）により制御される装置（３）と，前記監視装置（２）とを有する請求項１〜８のいずれかに記載のマイクロコントローラシステムの駆動方法であって：
前記マイクロコントローラ（１）は，前記通常駆動プログラム（７）の制御下で前記通常駆動通知信号（Ｗ）を出力し，
前記監視装置（２）は，前記通常駆動通知信号（Ｗ）が入力されない場合に，前記装置（３）を前記安全状態に移行し，さらに前記通常駆動通知信号（Ｗ）が所定の時間以上にわたり入力されない場合に，前記装置（３）を前記安全状態にロックし，
前記所定の例外条件が発生した場合に，前記マイクロコントローラ（１）が前記駆動準備プログラム（６）に移行し，前記監視装置（２）は，前記レジスタ（１７）をインクリメントさせ，前記レジスタ（１７）の値が所定の値に達すると，前記装置（３）を前記安全状態にロックすることを特徴とする，マイクロコントローラシステムの駆動方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は，マイクロコントローラシステムおよびその駆動方法に関し，より詳細には，システム駆動中におけるマイクロコントローラのプログラム処理が改良されたマイクロコントローラシステムおよびその駆動方法に関する。
【０００２】
（背景技術）
この種のマイクロコントローラは，アンチロックブレーキシステム，位置制御システム，油圧ブレーキシステム等，車両用の様々な安全関連システムを制御するために用いられる。この場合，監視装置は，通常駆動通知信号の欠落を通じて，通常駆動プログラムの実行が阻害されてシステム全体の安全性が確保されていない状態にあることを検知すると，例えば，車両ブレーキ，位置制御アクチュエータ等の制御される装置を安全状態に移行させる。
【０００３】
通常駆動通知信号は，プログラムエラーによりマイクロコントローラが不測の状態（クラッシュ）に陥った場合，あるいは通常駆動プログラムで所定の例外条件が発生し，その除去のために駆動準備プログラムの全体または一部が繰り返し実行された場合に欠落する可能性がある。
【０００４】
しかし，通常駆動プログラムの自動再開に際しては，駆動準備プログラムの繰り返し実行が必要とされるため，通常駆動通知信号の欠落に伴う安全状態への移行は一時的なものに留められる。このことにより，通常駆動通知信号の入力が所定の時間内に再び確認されると，制御される装置は，安全状態から通常駆動状態に復帰されうる。通常駆動通知信号の欠落が所定の時間以上にわたると，制御される装置は，安全状態にロックされることにより，外部からの介入なしには通常駆動状態に復帰できなくなる。
【０００５】
例えばマイクロコントローラのプログラムエラーに起因して，通常駆動プログラムの実行が所定の例外条件の発生を常に伴う場合，従来のこの種のマイクロコントローラシステムは，新たな例外条件が発生するまで，駆動準備プログラムの繰返しと通常駆動プログラムの実行とを交互に繰り返す無限ループに陥ってしまう。
【０００６】
（発明の利点）
本発明によれば，システム起動時，およびシステム駆動中における所定の例外条件の発生時に駆動準備プログラムを実行し，駆動準備プログラムの実行後に通常駆動プログラムに移行し，通常駆動プログラムの制御下で通常駆動通知信号を出力するように形成される，マイクロコントローラと；マイクロコントローラにより制御される装置と；マイクロコントローラによる通常駆動プログラムの実行を通常駆動通知信号に基づいて監視し，通常駆動通知信号が入力されない場合に，装置を安全状態に移行し，さらに所定の時間以上にわたり通常駆動通知信号が入力されない場合に，装置を安全状態にロックする監視装置と；を有し，監視装置が，例外条件の発生毎にインクリメントされるレジスタを有し，レジスタの値が所定の値に達すると，装置を安全状態にロックするように形成されるマイクロコントローラシステムが提供される。また，制御される装置が最終的にロックされるに至るまでの例外条件の発生回数は，所定の値に限定されている。かかる構成によれば，マイクロコントローラのプログラム修正を必要としないため，複雑な修正なしに任意の制御目的を有するマイクロコントローラシステムに適用することができる。
【０００７】
所定の例外条件の発生時に実行される駆動準備プログラムは，各々の例外条件に対応する専用のプログラム指示であっても良いが，起動時に実行される駆動準備プログラムに含まれるプログラム指示の少なくとも一部を含むようにしてもよい。
【０００８】
マイクロコントローラは，それ自体で所定の例外条件の発生を検知して監視装置に例外条件検知信号を出力するように形成されるようにしてもよい。このことにより，例外条件として，マイクロコントローラと別途に実装される例外条件検知装置には出力されない，マイクロコントローラの内部条件も用いることができる。
【０００９】
マイクロコントローラは，レジスタに対する読み取りアクセスを有し，例外条件検知信号の出力前後におけるレジスタの値を比較するように形成されるようにしてもよい。このことにより，マイクロコントローラは，監視装置の正常な動作を確認し，必要に応じてエラー警告を発することができる。
【００１０】
例外条件検知信号の出力前後におけるレジスタ値の比較は，駆動準備プログラムの制御下で実行されるようにしてもよい。この場合，比較を制御するプログラムは，システム起動時にのみ実行され，例外条件の発生が検知された後には実行されないプログラムセクションである。
【００１１】
制御される装置が安全状態にロックされるに至るまでの時間は，２つの異なる時間として設定される。監視装置は，通常駆動通知信号が入力されないために装置を安全状態にロックするに至るまでの所定の時間を，所定の例外条件の発生が検知される場合には例外条件の発生が検知されない場合より長く設定するように形成されるようにしてもよい。このことにより，通常駆動通知信号の欠落が不測の原因，すなわち所定（駆動プログラムの開発に際して考慮済み）の例外条件の発生以外に起因する場合，速やかに安全状態にロックすることにより高い安全性を確保することが可能となる。一方，所定の例外条件の発生に起因する場合，安全状態にロックするまでの時間に余裕を見込むことにより駆動準備プログラムを確実に実行することが可能となる。
【００１２】
レジスタは，システムの起動時毎に同一の値を有することが望ましい。このことにより，制御される装置がロックされるに至るまでの例外条件の発生回数を起動時毎に所定の値に保つことができる。
【００１３】
（実施例の説明）
以下に，添付した図面を参照しながら，本発明の好適な実施形態について詳細に説明する。なお，本明細書および図面において，実質的に同一の機能構成を有する発明特定事項については，同一の符号を付することにより重複説明を省略する。
【００１４】
図１に示すマイクロコントローラシステムは，概ね３つの構成要素，すなわちマイクロコントローラ１と，例えば特定用途向け集積回路（ＡＳＩＣ：Application Specific Integrated Circuit）等の監視装置２と，マイクロコントローラ１により制御される装置３（例えば車両用アンチロックブレーキシステムのバルブ）と，からなる。
【００１５】
マイクロコントローラ１の構造自体は，既知であるため詳述しない。マイクロコントローラ１のプログラムメモリ４は，通常駆動時に実行される指示を含む通常駆動プログラムと称されるセクション７と，通常駆動の準備時に実行され，障害のない通常駆動時には実行されない指示を含む駆動準備プログラムと称されるセクション５と６とを含んでなる。マイクロコントローラ１は，例えば車両のエンジン点火によりシステムが起動されると，セクション５と６に含まれる指示を実行し，後述するリセットが実行されると，セクション６に含まれる指示のみを実行する。
【００１６】
障害のない通常駆動時において，マイクロコントローラ１は，装置３を制御するとともに，デッドマン（自動断線）パルスを出力Ｗに規則的かつ周期的に出力する。デッドマンパルスは，監視装置２のウォッチドッグ（番犬）回路８に入力される。図１は，ウォッチドッグ回路８の機能を説明するための概略的な回路構成例を示す。ウォッチドッグ回路８のＡＮＤゲート９には，第１入力としてデッドマン信号が入力されるとともに，システム起動後に第２入力としてＮＯＴゲート１０からハイレベル信号が印加されるため，デッドマンパルスはＡＮＤゲート９を通過する。ＡＮＤゲート９の出力はモノフロップまたは第１カウンタ１１のリセット入力に接続されており，第１カウンタ１１はリセット信号により作動されて所定の初期値から計数を開始する。第１カウンタ１１の値が所定の終端値に達すると，その出力が論理的ローレベルからハイレベルに移行することになる。しかし，第１カウンタ１１がこの移行に要する時間は，マイクロコントローラ１から入力されるデッドマン信号の周期より長いため，通常駆動時においては第１カウンタ１１が終端値に達する前にリセットされ，その出力がローレベルに保たれる。
【００１７】
一方，デッドマンパルスの欠落により第１カウンタ１１の出力がハイレベルに移行すると，第２カウンタ１２が作動される。さらに，第１カウンタ１１の出力信号がＯＲゲート１３を介してスイッチ１４を制御することにより，スイッチ１４は装置３に対する供給電圧Ｖｃｃの停止，または装置３の実装形態に応じた他の方法により装置３の機能を遮断する。すなわち，アンチロックブレーキシステムのバルブは，マイクロコントローラ１から出力される開放指令を入力されることなく閉鎖された状態に保たれる。よって，アンチロックブレーキシステムの機能が遮断されるため，車両のブレーキはブレーキペダル操作のみにより制御される。すなわち，デッドマンパルスの欠落がマイクロコントローラ１の駆動プログラムのエラーに起因する場合，アンチロックブレーキシステムの誤作動によって，ブレーキペダル操作によるブレーキングが妨げられることを防止する。よって，ウォッチドッグ回路８は，スイッチ１４をオフ制御することによりアンチロックブレーキシステムを安全状態にし，アンチロックブレーキシステムの誤作動によって，危険状態が発生することを防止する。
【００１８】
第２カウンタ１２の値が所定の終端値に達する前に，マイクロコントローラ１から新たなデッドマンパルスが入力されると，このデッドマンパルスは上述のとおりＡＮＤゲート９を通過して第１カウンタ１１をリセットする。そして，第１カウンタ１１の出力がローレベルに復帰し，第２カウンタ１２がリセットされてスイッチ１４は再びオン制御される。このことにより，装置３は再びマイクロコントローラ１の制御下におかれる。
【００１９】
しかし，第２カウンタ１２の値が所定の終端値に達する前に，マイクロコントローラ１から新たなデッドマンパルスが入力されないと，所定の終端値に達した時点でＮＯＴゲート１０に接続されている第２カウンタ１２の出力がローレベルからハイレベルに移行し，ＮＯＴゲート１０の出力がローレベルになり，マイクロコントローラ１から入力されるデッドマンパルスはＡＮＤゲート９を通過できなくなる。このことにより，装置３は安全状態にロックされる。
【００２０】
マイクロコントローラ１は，不図示の様々な周辺モジュールを所定の初期状態に移行させることができる出力Ｒを有する。ウォッチドッグ回路８自体は，出力Ｒに出力されるリセット信号の影響を受けない。ＡＮＤゲート１５には，第１入力として出力Ｒが入力され，第２入力としてＮＯＴゲート１６の出力が入力される。この第２入力はシステム起動後にＮＯＴゲート１６によりハイレベルに保たれるため，リセットパルスは，ＡＮＤゲート１５を通過してカウンタ１７をインクリメントさせる。カウンタ１７は，揮発性の半導体メモリであり，システム起動時には常に０に設定される。
【００２１】
カウンタ１７の出力は，マイクロコントローラ１の入力Ｃと，比較器１８の第１入力とに接続されており，比較器１８の第２入力には不揮発性のレジスタ１９の所定の計数値が印加される。カウンタ１７の値がレジスタ１９の値より小さいと，比較器１８からＯＲゲート１３への出力はローレベルに保たれる。しかし，カウンタ１７の値がレジスタ１９の値に達すると，比較器１８からの出力はハイレベルに移行され，このことによりスイッチ１４がオフ制御されて安全状態に移行される。比較器１８により作動される安全状態は，出力Ｗにおけるデッドマンパルスの存否にかかわらずロックされ，マイクロコントローラ１から入力されるリセット信号によっても無効にされない。このロックされた状態は，システム全体の電源を切りカウンタ１７の値がクリアされることによってのみ無効とされうる。
【００２２】
システムが起動されると，マイクロコントローラ１は，セクション５に含まれる駆動準備プログラムの指示に則る処理を開始する。この指示は，出力Ｒにリセットパルスを出力し，入力Ｃを介してカウンタ１７の値を読み取る指示を含む。カウンタ１７の値はシステム起動時に０であり，一度インクリメントされているため，システムが正常に機能していれば読み取り値は１でなければならない。読み取り値が１以外であると，通常駆動プログラムは，適当なエラー検出ルーチンに移行し，運転者にエラー報告を出力するとともに，安全性がもはや確保できないようであればマイクロコントローラ１の所定の機能を遮断する。読み取り値が１であれば，マイクロコントローラ１は，セクション６に含まれる指示を含む駆動準備プログラムを実行し，セクション７に含まれる通常駆動プログラムに移行し，デッドマンパルスを規則的に出力する。この場合，第２カウンタ１２のカウント時間が駆動準備プログラムの実行に必要とされる時間より長く設定されているため，駆動準備プログラムの実行中にデッドマンパルスが入力されなくても安全状態にロックされることはない。
【００２３】
通常駆動プログラムの実行に際して，マイクロコントローラ１は，例外条件，すなわち障害のない通常駆動時に発生するべきでなく，その発生がエラーを示唆する可能性のある所定の条件の発生を検知すると，自動的にリセットを実行する。例外条件としては，例えば，通常駆動プログラムによるアクセス権のない未解放領域へのアクセス，周辺モジュールによる想定外の動作等が含まれる。この種のリセットは，プログラムメモリ４のセクション６に含まれる駆動準備プログラムの実行を繰り返し，出力Ｒに対するリセットパルスの出力と，通常駆動プログラムの停止とを実行する。リセットパルスが出力されると，カウンタ１７がインクリメントされ，さらにデッドマンパルスが欠落すると，ウォッチドッグ回路８により安全状態への移行がもたらされる。しかし，第２カウンタ１２のカウント時間は，駆動準備プログラムの実行に必要とされる時間より長く設定されているため，ウォッチドッグ回路８により安全状態がロックされるまでには至らない。
【００２４】
リセット後に新たな例外条件または他の例外条件が発生すると，最終的にカウンタ１７の値がレジスタ１９の値に達し，監視装置２が安全状態をロックするまで新たなリセットが実行される。
【図面の簡単な説明】
【００２５】
【図１】本発明に基づくマイクロコントローラシステムを示すブロック図である。
【符号の説明】
【００２６】
１      マイクロコントローラ
２      監視装置
３      装置
４      プログラムメモリ
５，６  駆動準備プログラム
７      通常駆動プログラム
８      ウォッチドッグ回路
９      ＡＮＤゲート
１０    ＮＯＴゲート
１１    第１カウンタ
１２    第２カウンタ
１３    ＯＲゲート
１４    スイッチ
１５    ＡＮＤゲート
１６    ＮＯＴゲート
１７    カウンタ
１８    比較器
１９    レジスタ
Ｗ      出力
Ｒ      出力
Ｃ      入力
【図１】
2007531944.tif 000003
【国際調査報告】
2007531944.tif 000004
2007531944.tif 000005
2007531944.tif 000006
2007531944.tif 000007