(57)【要約】【課題】マイクロプロセッサを内蔵する電子制御装置において、制御プログラムの一部を定期的に代替実行して運転中に動作点検を行う監視制御回路を得る。【解決手段】不揮発プログラムメモリ２５ａの内容と入力センサ群１１の動作状態に応動して電気負荷群１２を制御するマイクロプロセッサ２０ａに対して、監視制御回路部３０ａは照会パケットによって多数の質問事項を順次送信し、マイクロプロセッサ２０ａからの応答内容と正解情報とを比較して異常判定を行う。マイクロプロセッサ２０ａは照会パケットの受信間隔を診断して監視制御回路部３０ａの監視動作を逆監視する。【選択図】        図１
2005031865.tif 000002
【特許請求の範囲】
【請求項１】
不揮発プログラムメモリと、演算処理用ＲＡＭメモリと、入力センサ群が接続された入力インタフェース回路と、電気負荷群が接続された出力インタフェース回路と、上記不揮発プログラムメモリに格納された制御プログラムの内容と上記入力センサ群の動作状態に応動して上記電気負荷群を制御するマイクロプロセッサとを備える電子制御装置において、
上記マイクロプロセッサに対して一対のシリアルインタフェース回路によって接続され、上記マイクロプロセッサに対する質問情報を定期的に順次送信する照会パケット送信手段と、上記質問情報に対する正解情報格納手段と、上記質問情報に基づく回答情報と上記正解情報格納手段に格納されている正解情報とを比較して異常の有無を判定する異常判定手段とを有する監視制御回路部と、
上記不揮発プログラムメモリに対して入出力制御のための制御プログラムに加えて格納された被監視処理プログラムであって、上記照会パケット送信手段によって送信されてきた質問情報に基づいて実行される模擬演算実行処理手段と、上記模擬演算実行処理手段の実行結果を回答情報として上記監視制御回路部に送信する応答パケット送信手段と、上記照会パケットの受信間隔が異常であるときに上記監視制御回路部を再起動又は警報停止するための逆監視手段である受信間隔異常処理手段とによって構成された被監視処理手段とを備え、
上記制御プログラムに含まれる被試験対象プログラムと、上記被監視処理プログラムに含まれる模擬演算実行処理手段としての模擬演算実行処理プログラムとは少なくとも一部の共通プログラムを有していることを特徴とする監視制御回路を有する電子制御装置。
【請求項２】
上記模擬演算実行処理プログラムは入力データテーブルを備えると共に、上記被試験対象プログラムと上記模擬演算実行処理プログラムは交互に実行され、上記模擬演算実行処理プログラムで扱われる入力データは上記照会パケットの内容に応じて上記入力データテーブルから順次選択されるものであることを特徴とする請求項１記載の監視制御回路を有する電子制御装置。
【請求項３】
上記被試験対象プログラムは複数グループに分割されていて、各グループに対応した上記模擬演算実行処理プログラムは該処理プログラムに対応した入力データテーブルを備え、上記照会パケットは上記各入力データテーブル全体の中から一つの入力データ群を選択し、選択された入力データ群が属する上記模擬演算実行処理プログラムと上記各被試験対象プログラムが実行されてから次の入力データ群を順次選択するものであることを特徴とする請求項１記載の監視制御回路を有する電子制御装置。
【請求項４】
不揮発プログラムメモリと、演算処理用ＲＡＭメモリと、入力センサ群が接続された入力インタフェース回路と、電気負荷群が接続された出力インタフェース回路と、上記不揮発プログラムメモリの内容と上記入力センサ群の動作状態に応動して上記電気負荷群を制御するマイクロプロセッサとを備える電子制御装置において、
上記マイクロプロセッサに対して一対のシリアルインタフェース回路によって接続され、上記マイクロプロセッサに対する質問情報を定期的に順次送信する照会パケット送信手段と、上記質問情報に対する正解情報格納手段と、上記質問情報に基づく回答情報と上記正解情報格納手段に格納されている正解情報とを比較して異常の有無を判定する異常判定手段とを有する監視制御回路部と、
上記不揮発プログラムメモリに内蔵された被監視処理プログラムであって、上記照会パケット送信手段によって送信されてきた質問情報に基づいて実行される模擬演算実行処理手段と、上記模擬演算実行処理手段の実行結果を回答情報として上記監視制御回路部に送信する応答パケット送信手段と、上記照会パケットの受信間隔が異常であるときに上記監視制御回路部を再起動又は警報停止するための逆監視手段である受信間隔異常処理手段とを有する被監視処理手段と、
上記マイクロプロセッサが発生するパルス列であるウオッチドグ信号のパルス幅が所定値を超過したときにリセットパルス信号を発生して、上記マイクロプロセッサ及び上記監視制御回路部を再起動又は警報停止させるウオッチドグタイマとを備え、
上記マイクロプロセッサは上記ウオッチドグタイマと上記監視制御回路部によって動作監視されると共に、上記監視制御回路部の監視制御動作を逆監視していることを特徴とする監視制御回路を有する電子制御装置。
【請求項５】
上記不揮発プログラムメモリはツールインタフェース回路を介してシリアル接続された外部ツールから転送書込みされた入出力制御のための上記制御プログラムと、上記被監視処理手段となる上記被監視処理プログラムと、質問情報に対する正解情報データとを有し、上記正解情報データは上記監視制御回路部に設けられた上記正解情報格納手段に対して再転送されるものであることを特徴とする請求項１〜４のいずれか１項に記載の監視制御回路を有する電子制御装置。
【請求項６】
上記監視制御回路部は補助プログラムメモリと補助ＲＡＭメモリとを備えた補助マイクロプロセッサによって構成され、上記補助プログラムメモリは、上記照会パケット送信手段と上記異常判定手段に対応したプログラムの格納手段とし、上記補助ＲＡＭメモリは、上記不揮発プログラムメモリに予め格納されている正解情報が運転開始時に転送書込みされて、上記補助マイクロプロセッサで適用される正解情報格納手段とし、
上記補助マイクロプロセッサは上記補助プログラムメモリと協働して上記照会パケットの送信と上記異常判定を実行すると共に、上記マイクロプロセッサと協働して上記補助ＲＡＭメモリに対する正解情報の転送処理を実行するものであることを特徴とする請求項１〜５のいずれか１項に記載の監視制御回路を有する電子制御装置。
【請求項７】
上記マイクロプロセッサは上記監視制御回路部から送信されてきたｎ番目の照会パケットを受信した直後に、前回のｎ―１番目の照会パケットの内容に対応した応答パケットを返信し、該応答パケットの返信によって上記ｎ番目の照会パケットを受信したことに対する認知情報を兼ねるものであることを特徴とする請求項１〜６のいずれか１項に記載の監視制御回路を有する電子制御装置。
【請求項８】
上記被監視処理手段は、上記監視制御回路部に対して送信し、上記監視制御回路部が上記照会パケットを定期送信することを許可又は禁止する情報を包含した第一の同期パケット送信手段を備え、
上記監視制御回路部は、運転開始後所定時間を超過しても上記監視制御回路部が上記第一の同期パケットによる定期送信許可が得られないときに作用し、警報停止，再起動及び警報・表示のいずれかを実施する監視許可異常処理手段を備えていることを特徴とする請求項７記載の監視制御回路を有する電子制御装置。
【請求項９】
上記被監視処理手段は、上記監視制御回路部に対して送信し、上記監視制御回路部が送信した初回の１番目照会パケットを受信したことに対する認知手段となる第二の同期パケット送信手段を備え、循環する次回の１番目照会パケットを受信したときは最終番目の照会パケットに対する応答パケットが返信されるものであことを特徴とする請求項８に記載の監視制御回路を有する電子制御装置。
【請求項１０】
上記監視制御回路部は、各種の受信パケットのうち、少なくとも上記マイクロプロセッサから送信されてくる応答パケットのサムチェック操作によるビット情報の欠落・混入の判定結果によって正常受信であったか不正受信であったかを判定する受信確認手段を備えると共に、所定の初期値を有するエラーカウンタを備え、
上記受信確認手段が正常受信の判定であったときには上記エラーカウンタのダウンカウントを行い、正常受信であっても上記異常判定手段によって応答パケットの内容が不正解であったと判定されたときには上記エラーカウンタを複数カウント分だけアップカウントさせると共に、上記エラーカウンタの現在値が所定値を超過したときにはカウントアップ出力によって上記マイクロプロセッサの再起動又は警報停止を行うことを特徴とする請求項１〜９のいずれか１項に記載の監視制御回路を有する電子制御装置。
【請求項１１】
上記照会パケットは上記エラーカウンタの現在値情報を包含すると共に、
上記不揮発プログラムメモリは、上記エラーカウンタの現在値が所定値以下となったときに作用して、前回の照会パケットの内容に合致しない意図的な誤答である上記応答パケットを送信する誤答送信選択手段と、
上記監視制御回路部が誤答を受信したことを認識して上記エラーカウンタの現在値が増加するかどうかを監視して、上記監視制御回路部の異常判定手段が正常に作動していないときに上記監視制御回路部を再起動又は警報停止するための逆監視手段となる現在値監視手段となるプログラムとを備えていることを特徴とする請求項１０に記載の監視制御回路を有する電子制御装置。
【請求項１２】
上記不揮発プログラムメモリは、上記監視制御回路部から受信した上記照会パケットの内容がサムチェック異常のビット情報の欠落・混入異常であるときに作用して、次回送信される上記応答パケットの内容を所定の誤答に決定するプログラムである誤答送信確定手段を備えていることを特徴とする請求項１０又は請求項１１記載の監視制御回路を有する電子制御装置。
【請求項１３】
上記監視制御回路部は、各種の受信パケットのうち、少なくとも上記マイクロプロセッサから送信されてくる上記応答パケットのサムチェック操作によるビット情報の欠落・混入の判定結果によって正常受信であったか不正受信であったかを判定し、該判定結果に応じて正常確認パケット又は不正常確認パケットを選択して上記マイクロプロセッサに対して返信する受信確認応答手段と、
上記照会パケットを送信してから所定時間を経過しても上記マイクロプロセッサから応答パケットが返信されないか又は上記不正受信が継続しているときに作用して上記マイクロプロセッサを再起動又は警報停止する応答間隔異常処理手段とを備え、
上記不揮発プログラムメモリは、上記不正常確認パケットを受信したマイクロプロセッサが再度上記応答パケットを送信する再送処理手段と、上記マイクロプロセッサが上記応答パケットを送信してから正常確認パケットを受信するまでの時間が所定値を超過したときに作用して上記監視制御回路部を再起動又は警報停止する確認返信異常処理手段となる処理プログラムとを備えていることを特徴とする請求項１〜１２のいずれか１項に記載の監視制御回路を有する電子制御装置。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
この発明は、マイクロプロセッサを内蔵した電子制御装置、特に制御の安全性を向上させるために監視制御回路が付加された電子制御装置の改良に関するものである。
【０００２】
【従来の技術】
マイクロプロセッサの動作をウオッチドグ信号で監視したり、運転中にプログラムメモリの内容をチェックすることについては様々な工夫がなされている。例えば、特許文献１によれば、メインＣＰＵがサブＣＰＵから出力されるウオッチドグパルス信号の周期を監視し、その結果に基づいてサブＣＰＵの異常を検出する機能を有し、サブＣＰＵがメインＣＰＵから出力されるウオッチドグパルス信号の周期を監視し、その結果に基づいてメインＣＰＵの異常を検出する機能を有するようにして、メインＣＰＵとサブＣＰＵとが相互に異常を検出する技術が示されている。
【０００３】
また、特許文献２によれば、メインＣＰＵとサブＣＰＵの２つのＣＰＵで構成されるシステムにおいて、メインＣＰＵの動作は外部に設けたウオッチドグタイマ回路によって監視され、サブＣＰＵの動作はメインＣＰＵによって監視される暴走監視手段が提示されている。
更に、特許文献３によれば、制御プログラムや判定用データ等を格納したＲＯＭメモリの内容は、マイクロプロセッサの処理負荷に応じて時分割されてサムチェックを行い、制御プログラムの異常の有無を検出する技術が提示されている。
【０００４】
その他、この発明に関連して、特許文献４によれば、データ通信を制御し、通信エラーを検出するとエラー通知信号を出力する通信制御部と、エラー通知信号の入力に応じてアップカウントするエラーカウンタと、このエラーカウンタのカウント値が正の所定値に達したことに応じて通信異常を報知する報知部とを備えた通信監視装置において、通信制御部にてデータ通信の制御が正常に行われるとエラーカウンタのカウント値をカウントダウンするカウンタ減算手段を設ける技術が提示されている。
【０００５】
【特許文献１】
特開平５−９７０４２号公報
【特許文献２】
特開平５−８１２２２号公報
【特許文献３】
特開２００１−２２７４０２号公報
【特許文献４】
特開平９−１６２８１４号公報
【０００６】
【発明が解決しようとする課題】
（１）従来技術の課題の説明
特許文献１や特許文献２のものは、メインＣＰＵやサブＣＰＵの暴走監視を行うことに主眼があり、ＣＰＵによる制御内容に対する監視を行うものではない。
また、特許文献３のものは制御内容に関わるプログラムメモリの内容のサムチェックを行って、制御の信頼性を向上することが期待されるが、これはあくまでも自己診断機能であって疑いを持たれたものが疑いのある部分をチェックするものであることの弱点があるのと、制御動作そのものの診断ではないという問題点が残されている。
更に、特許文献４によるものは通信エラーの発生後の対策手段であって、制御動作の異常を検出するためのものではない。
【０００７】
（２）発明の目的の説明
この発明の第一の目的は、併用接続された監視制御回路部によって監視制御の対象となるマイクロプロセッサの制御プログラムの動作チェックを行って、安全性の高い電子制御装置を提供することである。
この発明の第二の目的は、監視制御回路部が併用されたことによって、システムが複雑化したことに伴うシステム全体としての安全性の低下を防止することができる監視制御回路を有する電子制御装置を提供することである。
【０００８】
【課題を解決するための手段】
この発明に係わる監視制御回路を有する電子制御装置は、不揮発プログラムメモリと、演算処理用ＲＡＭメモリと、入力センサ群が接続された入力インタフェース回路と、電気負荷群が接続された出力インタフェース回路と、上記不揮発プログラムメモリに格納された制御プログラムの内容と上記入力センサ群の動作状態に応動して上記電気負荷群を制御するマイクロプロセッサとを備える電子制御装置において、
上記マイクロプロセッサに対して一対のシリアルインタフェース回路によって接続され、上記マイクロプロセッサに対する質問情報を定期的に順次送信する照会パケット送信手段と、上記質問情報に対する正解情報格納手段と、上記質問情報に基づく回答情報と上記正解情報格納手段に格納されている正解情報とを比較して異常の有無を判定する異常判定手段とを有する監視制御回路部と、
上記不揮発プログラムメモリに対して入出力制御のための制御プログラムに加えて格納された被監視処理プログラムであって、上記照会パケット送信手段によって送信されてきた質問情報に基づいて実行される模擬演算実行処理手段と、上記模擬演算実行処理手段の実行結果を回答情報として上記監視制御回路部に送信する応答パケット送信手段と、上記照会パケットの受信間隔が異常であるときに上記監視制御回路部を再起動又は警報停止するための逆監視手段である受信間隔異常処理手段とによって構成された被監視処理手段とを備え、
上記制御プログラムに含まれる被試験対象プログラムと、上記被監視処理プログラムに含まれる模擬演算実行処理手段としての模擬演算実行処理プログラムとは少なくとも一部の共通プログラムを有しているものである。
【０００９】
また、この発明に係わる監視制御回路を有する電子制御装置は、不揮発プログラムメモリと、演算処理用ＲＡＭメモリと、入力センサ群が接続された入力インタフェース回路と、電気負荷群が接続された出力インタフェース回路と、上記不揮発プログラムメモリの内容と上記入力センサ群の動作状態に応動して上記電気負荷群を制御するマイクロプロセッサとを備える電子制御装置において、
上記マイクロプロセッサに対して一対のシリアルインタフェース回路によって接続され、上記マイクロプロセッサに対する質問情報を定期的に順次送信する照会パケット送信手段と、上記質問情報に対する正解情報格納手段と、上記質問情報に基づく回答情報と上記正解情報格納手段に格納されている正解情報とを比較して異常の有無を判定する異常判定手段とを有する監視制御回路部と、
上記不揮発プログラムメモリに内蔵された被監視処理プログラムであって、上記照会パケット送信手段によって送信されてきた質問情報に基づいて実行される模擬演算実行処理手段と、上記模擬演算実行処理手段の実行結果を回答情報として上記監視制御回路部に送信する応答パケット送信手段と、上記照会パケットの受信間隔が異常であるときに上記監視制御回路部を再起動又は警報停止するための逆監視手段である受信間隔異常処理手段とを有する被監視処理手段と、
上記マイクロプロセッサが発生するパルス列であるウオッチドグ信号のパルス幅が所定値を超過したときにリセットパルス信号を発生して、上記マイクロプロセッサ及び上記監視制御回路部を再起動又は警報停止させるウオッチドグタイマとを備え、
上記マイクロプロセッサは上記ウオッチドグタイマと上記監視制御回路部によって動作監視されると共に、上記監視制御回路部の監視制御動作を逆監視しているものである。
【００１０】
【発明の実施の形態】
実施の形態１の構成の詳細な説明．
図１はこの発明の実施の形態１における監視制御回路を有する電子制御装置を示す全体構成図である。図１には、一枚の電子基板上でマイクロプロセッサ２０ａを主体として構成された電子制御装置１０ａが示されている。まず、電子制御装置１０ａは、その外部に接続されるものとして、ＯＮ／ＯＦＦ信号又はアナログ信号を含む入力センサ群１１、電子制御装置１０ａによって駆動される電気負荷群１２、電子制御装置１０ａに対してシリアル接続された外部ツール１３、警報表示器１４がある。外部ツール１３は、製品出荷時又は保守点検時に電子制御装置１０ａに対して、図示しない脱着コネクタを介して接続され、後述の不揮発プログラムメモリ２５ａに制御プログラム２６ａや被監視処理プログラム２７ａを転送書込みするためのものである。
【００１１】
次に、電子制御装置１０ａは、その内部の構成として、後述の各種インタフェース回路やメモリに対してバス接続されたマイクロプロセッサ２０ａ、このマイクロプロセッサ２０ａと入力センサ群１１との間に設けられた入力インタフェース回路２１があり、アナログの入力センサに対しては図示しないＡＤ変換器が使用されている。マイクロプロセッサ２０ａと電気負荷群１２との間には、出力インタフェース回路２２が接続されている。マイクロプロセッサ２０ａと外部ツール１３間にはツールインタフェース回路２３が接続されている。電子制御装置１０ａには、演算処理用のＲＡＭメモリ２４、例えばフラッシュメモリ等による不揮発プログラムメモリ２５ａがあり、該プログラムメモリは図５〜図１１で詳述する各種プログラムが格納されている。更に、電子制御装置１０ａには、マイクロプロセッサ２０ａと後述の監視制御回路部３０ａ間で双方向のシリアル交信を行うために設けられた直並列変換器によるシリアルインタフェース回路２９がある。
【００１２】
なお、上記不揮発プログラムメモリ２５ａの内容としては、制御プログラム２６ａと被監視処理プログラム２７ａとがあり、制御プログラム２６ａは入出力制御を行うための主たる制御プログラムの他に、外部ツール１３や後述の監視制御回路部３０ａとのシリアル通信用プログラム、又は入出力制御で使用される例えば比較処理用の閾値データなどである制御定数などで構成されている。また、被監視処理プログラム２７ａは後述の監視制御回路部３０ａと協働して監視制御を実行するものである。被監視処理プログラム２７ａは、追って詳述する模擬演算実行処理プログラム、応答パケット送信プログラム、受信間隔異常処理プログラム、第一・第二の同期パケット送信プログラム、誤答送信選択プログラム、エラーカウンタの現在値監視プログラム、応答パケットの再送処理プログラム、確認返信異常処理プログラム等によって構成されている。
【００１３】
監視制御回路部３０ａは、マイクロプロセッサ２０ａを主体として、不揮発メモリ２５ａ内の制御プログラム２６ａの内容と入力センサ群１１の動作状態に応動して電気負荷群１２を制御する電子制御装置１０ａに付加されたものである。ウオッチドグタイマ３１は、マイクロプロセッサ２０ａが発生するパルス列であるウオッチドグ信号ＷＤのパルス幅を監視して、該パルス幅が所定値を超過したときにリセットパルス信号ＲＳＴを発生して、マイクロプロセッサ２０ａ及び監視制御回路部３０ａを再起動させる。
【００１４】
監視制御回路部３０ａは、その内部構成として、データ処理回路４０、ＥＥＰＲＯＭメモリ等による不揮発データメモリ４６、現在値が１〜１６に循環変化し後述の循環番号ｎ＝１〜１６を指定する工程カウンタ４７、初期値が１１で現在値が０以下にならないように構成されていて、しかも現在値が１３以上になると異常判定用のカウントアップ出力を発生してリセットパルス信号ＲＳＴ２によってマイクロプロセッサ２０ａをリセットして再起動するエラーカウンタ４８、シリアルインタフェース回路２９と対を成す直並列変換器によるシリアルインタフェース回路４９を有する。
【００１５】
なお、上記データ処理回路４０は、その構成として、マイクロプロセッサ２０ａから送信されたデータが一時的に格納されたり、マイクロプロセッサ２０ａに送信されるデータが一時的に格納される送受信バッファメモリ４１、送受信バッファメモリ４１に一時的に格納された受信データの内容をサムチェクする受信確認手段４２、受信データの内容に対応した返信パケットとして正常確認パケット（ＡＣＫ）又は不正常確認パケット（ＮＡＣＫ）を選択する受信確認応答手段４３、マイクロプロセッサ２０ａから送信されてくる応答パケットの受信間隔が異常であるときにマイクロプロセッサ２０ａをリセットする応答間隔異常処理手段４４ａ、運転開始後所定時間が経過しても、マイクロプロセッサ２０ａが監視制御回路部３０ａに対して監視動作の開始許可を出さないときに警報・表示器１４を作動させる監視許可異常処理手段４４ｂ、監視制御回路部３０ａが送信した照会パケットの内容に対してマイクロプロセッサ２０ａが送信してくる応答パケットの内容が適切であるかどうかを判定する異常判定手段４５を有する。
【００１６】
なお、上記不揮発データメモリ４６には、異常判定手段４５で使用される正解情報や監視制御回路部３０ａが送信する照会パケットや正常確認パケットや不正常確認パケットのデータが予め格納されている。
また、上記工程カウンタ４７は、監視制御回路部３０ａが紹介パケットを送信する都度アップカウントして、該工程カウンタの現在値１〜１６によって送信されるべき照会パケットの番号１〜１６が順次更新されるようになっている。
【００１７】
更に、上記エラーカウンタ４８は、受信確認手段４２が正常受信判定であったときに例えば１カウントのダウンカウントを行い、異常判定手段４５の判定結果が異常であったときには例えば３カウントのアップカウントを行うようになっていて、エラーカウンタ４８の現在値が例えば１３以上になると、マイクロプロセッサ２０ａをリセットして再起動するようになっている。
また、上記エラーカウンタ４８の現在値は照会パケットの中の一部データとして送受信バッファメモリ４１に転送され、マイクロプロセッサ２０ａに送信されるようになっている。
【００１８】
その他、上記データ処理回路４０は、図示しないチェックサム操作手段を有し、送受信バッファメモリ４１に格納された送信データにチェックサムデータを付加してマイクロプロセッサ２０ａへ送信するようになっている。
また、ＲＳＴ１はマイクロプロセッサ２０ａによる監視制御回路部３０ａのリセットパルス信号、ＲＳＴ２は監視制御回路部部３０ａによるマイクロプロセッサ２０ａのリセットパルス信号であり、リセットパルス信号ＲＳＴ１によって工程カウンタ４７の現在値は１となり、エラーカウンタ４８の現在値は１１となるよう構成されている。
【００１９】
図２は図１の部分等価制御ブロック図である。上記制御プログラム２６ａの中の一部のプログラムである被試験対象プログラム２８ａが実行する制御ブロックを例示したものである。この例では、例えば、入力センサ群１１の中の一部のアナログ入力である入力Ａ・入力Ｂ・入力Ｃの内容を、ＲＡＭメモリ２４の中のアドレスａ・アドレスｂ・アドレスｃに格納すると共に、共通プログラム２８ｃ内の演算プログラムによって入力Ａ・Ｂ・Ｃが相対誤差５％以内で一致しているときには、Ａ・Ｂ・Ｃの平均値をアドレスＸのＲＡＭメモリを介して外部へ出力するようになっている。なお、上記演算プログラムは入力Ａ・Ｂ・Ｃのうちいずれか一つの誤差が大きいときには、これを除外した残りの二つの入力の平均値を出力し、全ての入力の相対誤差が大きいときには最少値を示す入力の値をそのまま外部へ出力するものであり、これらの演算過程では演算処理用としてＲＡＭメモリ２４が使用されている。
【００２０】
また、図２には、被試験対象プログラム２８ａに対応した模擬演算実行処理プログラム２８ｂが実行する制御ブロックを示す。入力データテーブル２８ｄは模擬演算制御ブロックで適用されるものであり、番号１から番号１５で示される入力データ群は監視制御回路部３０ａから送信された照会パケットの内容によって選択される。共通プログラム２８ｃは上記被試験対象プログラム２８ａと模擬演算実行処理プログラム２８ｂに共通して使用されるものであり、共通プログラム２８ｃによる模擬演算の実行結果はアドレスＹのＲＡＭメモリを介して応答パケットによって監視制御回路部３０ａに送信される。
【００２１】
従って、照会パケットが番号１を指定し、例えばＡ１＝１０１、Ａ２＝１０２、Ａ３＝１０３が格納されているときであれば、共通プログラム２８ｃによる演算結果は全体の平均値である１０２が正解となる。また、照会パケットが番号２を指定し、例えばＡ１＝１１０、Ａ２＝１１２、Ａ３＝１２０が格納されているときであれば、共通プログラム２８ｃによる演算結果はＡ１とＡ２の平均値である１１１が正解となる。更に、照会パケットが番号３を指定し、例えばＡ１＝１０、Ａ２＝２０、Ａ３＝３０が格納されているときであれば、共通プログラム２８ｃによる演算結果は最少値である１０が正解となる。
【００２２】
マイクロプロセッサ２０ａは被試験対象プログラム２８ａと模擬演算実行処理プログラム２８ｂを交互に実行するが、模擬演算実行処理プログラム２８ｂで扱われる入力データ群の番号は監視制御回路部３０ａから順次送信されてくる照会パケットの内容によって順次更新されるようになっている。マイクロプロセッサ２０ａは模擬演算実行処理プログラム２８ｂによる演算結果を応答パケットによって監視制御回路部３０ａに送信し、監視制御回路部３０ａは正解情報格納手段としての不揮発データメモリ４６に予め格納されている正解情報とマイクロプロセッサ２０ａからの回答内容を比較することによって、共通プログラム２８ｃの異常判定を行うようになっている。
【００２３】
図３は図１のシリアル通信のタイムチャートである。図４は図１のシリアル通信のパケット構成図である。以下に図４を引用しながら図３の説明を行う。図３において、ＣＰＵ→ＬＳＩで示したタイムチャートはマイクロプロセッサ２０ａから監視制御回路部３０ａに対する送信データのタイミングを示している。ＬＳＩ→ＣＰＵで示したタイムチャートは、監視制御回路部３０ａからマイクロプロセッサ２０ａに対する送信データのタイミングを示している。マイクロプロセッサ２０ａが送信する第一の同期パケット６１ａは、図４で図示するとおり、開始宣言データＳＴＸ＝５５Ｈ（Ｈは１６進数の意味、以下同様）、コマンドデータ＝１０Ｈ、アドレスデータ＝０２Ｈ、モードデータ＝０１Ｈ、終了宣言データＥＴＸ＝ＡＡＨの５フレームのデータと、各データのバイナリ加算値であるチェックサムデータによる合計６個のデータフレームによって構成されている。
【００２４】
なお、一対のシリアルインタフェース回路２９・４９間で送受信されるシリアルデータは、１フレーム当たり８ビットの正味データに加えて、送信側直並列変換器で付加されたスタートビット・ストップビット・パリティビットの合計１１ビットのデータで構成されていて、受信側ではパリティチェックを行って異常があれば受信データを破棄するが、異常が無ければ８ビットの正味データのみを抽出して、各フレーム毎に順次図示しないバッファメモリに格納するようになっている。
【００２５】
上記第一の同期パケット６１ａのモードデータが０１Ｈになっていると、これは監視制御回路部３０ａに対して照会パケットを定期的に送信することを許可する内容となっている。図４の６１ｂで示したとおり、第一の同期パケットのモードデータが００Ｈになると照会パケットの送信を禁止することを意味している。
【００２６】
図３における６３ａは、第一の同期パケット６１ａを受信した監視制御回路部３０ａが返信する正常確認パケットである。正常確認パケット６３ａは、図４で示すとおり、開始宣言データＳＴＸ＝５５Ｈ、正常確認データＡＣＫ＝６１Ｈ、アドレスデータ＝０２Ｈ（第一の同期パケット６１ａのアドレスと同じ）、終了宣言データＥＴＸ＝ＡＡＨの４フレームのデータと、各データのバイナリ加算値であるチェックサムデータによる合計５個のデータフレームによって構成されている。
もしも、受信した第一の同期パケット６１ａにサムチェックエラーがあれば、上記正常確認パケット６３ａに代わって、図４で示す不正常確認パケット６３ｂが返信される。不正常確認パケット６３ｂは、不正常確認データＮＡＣＫ＝６２Ｈとなっている点が、上記正常確認パケット６３ａとは異なっている。なお、確認パケットは同期パケットや応答パケットに対する確認応答であり、ＮＡＣＫであれば再送要求したことになる。
【００２７】
初回の照会パケット７１ａは、監視制御回路部３０ａが正常確認パケット６３ａを返信してから、所定時間後にマイクロプロセッサ２０ａに対して送信する。照会パケット７１ａは、図４で示すとおり、開始宣言データＳＴＸ＝３３Ｈ、照会データ＝０＊Ｈ、エラーカウンタの現在値＝０＊Ｈ、終了宣言データＥＴＸ＝ＡＡＨの４フレームのデータと、各データのバイナリ加算値であるチェックサムデータによる合計５個のデータフレームによって構成されている。なお、初回の照会パケット７１ａにおける照会データは００Ｈであり、照会データは順次０１Ｈ、０２Ｈ・・・０ＦＨの１６種類となっている。また、エラーカウンタ４８の現在値も１３までの値であるため、１６進数では１桁の数値で扱えるようになっている。
【００２８】
図３において、第二の同期パケット６２は、照会パケット７１ａを受信したマイクロプロセッサ２０ａが送信する。第二の同期パケット６２は、図４で示すとおりであり、第一の同期パケット６１ａに比べると、アドレスが０２Ｈから１ＥＨとなり、モードデータが０１ＨからＦＦＨとなっていることである。なお、第二の同期パケット６２は、初回の照会パケット７１ａを正常受信したことを監視制御回路部３０ａに通知するためのものとなっている。６３ａは第二の同期パケット６２を監視制御回路部３０ａが正常受信したことに対する正常確認パケットである。２番目の照会パケット７２ａは照会パケット７１ａを送信してから所定時間後に送信される。７１ｂは照会パケット７２ａを正常受信したマイクロプロセッサ２０ａが返信する初回の応答パケットである。なお、照会パケットは再送は行われなく定期送信されるものである。
【００２９】
応答パケット７１ｂの構成は図４に示すとおりであり、開始宣言データＳＴＸ＝５５Ｈ、コマンドデータ＝１０Ｈ、アドレスデータ＝１ＥＨ、回答データ＝＊＊Ｈ、終了宣言データＥＴＸ＝ＡＡＨの５フレームのデータと、各データのバイナリ加算値であるチェックサムデータによる合計６個のデータフレームによって構成されている。なお、上記回答データ＊＊Ｈの内容は照会パケット７１ａで指定された質問事項に対する回答情報になっている。
以下同様に照会パケット７２ａ・７３ａ・・が定期的に順次送信され、これに対する応答パケット７２ｂ・７３ｂ・・が１タイミングだけ遅れて返信される。照会パケットが再び７１ａとなったときの応答パケット７１６ｂは前回の照会パケット７１６ａに対する回答データを含んだものである。
一方、各種パケットを受信した側では、受信した全フレーム（チェックサムデータを含む）のバイナリ加算を行って、その結果が０となればサムチェック正常と判定し、０でなければサムチェック異常と判定するようになっている。
【００３０】
実施の形態１の作用・動作の詳細な説明．
図１のとおり構成されたこの発明の実施の形態１の電子制御装置において、図５から図１１で示す通信動作説明用フローチャートについて説明する。なお、図５〜図１１は中継符号Ａ〜Ｆ、Ｔ〜Ｚを介して繋がっている。図３における第一の同期パケット６１ａの送信から照会パケット７１ａの受信までの動作を図５，図６に示す。図５，図６において、１００は定期的に活性化されるマイクロプロセッサ２０ａの通信動作開始工程、１０１ａは工程１００に続いて作用し、例えばタイムアップ時間が７０ｍｓ程度のタイマＴ１を起動する工程、１０２ａは工程１０１ａに続いて作用し、図３・図４で示した第一の同期パケット６１ａを送信する工程（第一の同期パケット送信手段）、１０３ａは工程１０２ａに続いて作用し、工程１０１ａで起動されたタイマＴ１がタイムアップしているかどうかを判定する工程である。
【００３１】
１０４ａは工程１０３ａがタイムアップ判定をしていないときに作用し、後述の工程２０５ａによって監視制御回路部３０ａが送信した確認パケットを受信したかどうかを判定する工程、１０５ａは工程１０４ａが確認パケットの未受信であるときに作用して、例えば待機時間Ｔ２として１０〜２０ｍｓの時間待ちをする工程である。この待機時間を経過するまでは上記工程１０４ａに復帰して確認パケットの受信を待ち続けると共に、待機時間を超過すると工程１０２ａへ復帰して、再度第一の同期パケット６１ａを送信する再送処理手段となっている。
【００３２】
１０６ａは工程１０４ａが確認パケットの受信判定をしたときに作用し、その受信内容が図４で示した正常確認パケット６３ａ（ＡＣＫ）と不正常確認パケット６３ｂ（ＮＡＣＫ）のどちらであったかを判定する工程であり、工程１０６ａが不正常受信（ＮＡＣＫ）の判定であったときには工程１０２ａに復帰して再度第一の同期パケット６１ａを送信する再送処理手段となっている。
１０７ａは工程１０２ａ・１０３ａ・１０４ａ・１０５ａ又は１０６ａを繰返し実行する過程で、工程１０３ａがタイマＴ１のタイムアップ判定を行ったときに作用し、監視制御回路部３０ａの動作を初期工程２００に復帰させる工程、１０８は工程１０７ａに続いて作用する動作終了工程であり、マイクロプロセッサ２０ａは上記動作終了工程１０８で動作待機して、その他の制御を実行してから再度上記動作開始工程１００へ復帰するようになっている。
【００３３】
１１０ａ（図６）は上記工程１０６ａが正常受信（ＡＣＫ）の判定であったときに作用し、工程１０１ａで起動されていたタイマＴ１を停止してタイマの現在値をリセットする工程、１１１ａは上記工程１０６ａが正常受信（ＡＣＫ）判定を行ってから待機時間Ｔ３として、例えば３０〜４０  ｍｓを経過したかどうかを判定する工程である。１１２ａは上記工程１１１ａが未経過判定であったときに作用し、後述の工程２０７ａによって監視制御回路部３０ａから送信された照会パケット７１ａ（図３・図４参照）をマイクロプロセッサ２０ａが受信したかどうかを判定する工程であり、工程１１２ａが未受信であれば、上記工程１１１ａに復帰して照会パケット７１ａの受信待ちを行うようになっている。
【００３４】
１１３ａは上記工程１１２ａが受信判定であったときに作用し、受信した照会パケット７１ａのサムチェックを行って、エラーの有無を判定する工程、１１４ａは工程１１３ａがエラー無しの判定であったときに作用し、照会パケット７１ａ内の照会データを格納する工程、１１５ａは上記工程１１３ａがエラーありの判定であったときに作用し、後述の工程１０２ｃ（図９参照）における応答パケットの内容を意図的に誤答にするための情報を格納しておく工程であり、該工程１１５ａは誤答送信確定手段となるものである。
【００３５】
１１７ａは上記工程１１１ａが待機時間経過の判定であって、この間に照会パケット７１ａが受信できなかったときに作用し、監視制御回路部３０ａの動作を初期工程２００に復帰させる工程であり、該工程１１７ａに続いて動作終了工程１０８へ移行して、所定時間後には再度動作開始工程１００へ移行するようになっている。
【００３６】
２００は監視制御回路部３０ａの制御動作と等価な動作内容を示すフローチャートに対する動作開始工程、２０１ａは工程２００に続いて作用し、図１で示したエラーカウンタ４８の現在値を１１に初期設定すると共に、工程カウンタ４７の現在値を１に初期設定するリセット工程、２０２ａは上記工程１０２ａで送信された第一の同期パケット６１ａを受信したかどうかを判定する工程、２０３ａは工程２０２ａが受信判定であったときに作用し、サムチェック操作をおこなってエラーの有無を判定する工程であり、工程２０３ａは受信確認手段となっている。
【００３７】
２０４ａは上記工程２０３ａがエラー無しの判定であったときに作用し、図４の確認パケット６３ａで示す正常受信（ＡＣＫ）データを返信すると共に、エラーカウンタ４８の現在値を一つ減少させる工程、２０４ｂは上記工程２０３ａがエラーありの判定であったときに作用し、図４の確認パケット６３ｂで示す不正常受信（ＮＡＣＫ）データを返信する工程、２０５ａは上記工程２０４ａと２０４ｂで構成された工程ブロックであり、該工程ブロック２０５ａは受信確認応答手段となるものである。
【００３８】
２０６ａは上記工程２０４ａに続いて作用し、待機時間であるＴ６が例えば２０〜３０ｍｓを経過するまで循環動作を行いながら待機する待機時間の経過判定工程、２０７ａは該工程２０６ａが待機時間経過を判定したときに作用し、図３・図４で示す初回の照会パケット７１ａを送信する工程（照会パケット送信手段）であり、照会パケット７１ａには上記エラーカウンタ４８の現在値データが含まれている。
【００３９】
２０８ａは上記工程２０２ａが第一の同期パケット６１ａを受信していない判定であるとき、又は受信していても不正常受信（ＮＡＣＫ）であった上記工程２０４ｂに続いて作用し、待機時間であるＴ５が例えば１秒を経過したかどうかを判定する工程、２０９ａは工程２０８ａが待機時間超過の判定であったときに作用し、図１の警報表示器１４を作動させる工程（監視許可異常処理手段）である。２１０は上記工程２０８ａが待機時間未経過であるとき、又は上記工程２０９ａに続いて作用する動作終了工程であり、動作終了工程２１０において監視制御回路部３０ａはその他の制御動作を行った後に再度動作開始工程２００へ移行するようになっている。従って、工程２００・２０１ａ・２０２ａ・２０８ａ・２１０を循環しながら第一の同期パケット６１ａが送信されて来るのを待っていて、待機時間Ｔ５を超過すると工程２０９ａで警報表示が行われることになる。
【００４０】
図３における第二の同期パケット６２の送信から照会パケット７２ａの受信までの動作を図７，図８に示す。図７，図８において、１０１ｂは前記工程１１４ａ又は１１５ａに続いて作用し、例えばタイムアップ時間が７０ｍｓ程度のタイマＴ１を起動する工程、１０２ｂは工程１０１ｂに続いて作用し、図３・図４で示した第二の同期パケット６２を送信する工程（第二の同期パケット送信手段）、１０３ｂは工程１０２ｂに続いて作用し、工程１０１ｂで起動されたタイマＴ１がタイムアップしているかどうかを判定する工程である。
１０４ｂは上記工程１０３ｂがタイムアップ判定をしていないときに作用し、後述の工程２０５ｂによって監視制御回路部３０ａが送信した確認パケットを受信したかどうかを判定する工程、１０５ｂは工程１０４ｂが確認パケットを未受信であるときに作用して、例えば待機時間Ｔ２として１０〜２０ｍｓの時間待ちをする工程であり、この待機時間を経過するまでは工程１０４ｂに復帰して確認パケットの受信を待ち続けると共に、待機時間を超過すると工程１０２ｂへ復帰して、再度第二の同期パケット６２を送信する再送処理手段となっている。
【００４１】
１０６ｂは上記工程１０４ｂが確認パケットの受信判定をしたときに作用し、その受信内容が図４で示した正常確認パケット６３ａ（ＡＣＫ）と不正常確認パケット６３ｂ（ＮＡＣＫ）のどちらであったかを判定する工程であり、工程１０６ｂが不正常受信（ＮＡＣＫ）の判定であったときには上記工程１０２ｂに復帰して再度第二の同期パケット６２を送信する再送処理手段になっている。
１０７ｂは上記工程１０２ｂ・１０３ｂ・１０４ｂ・１０５ｂ又は１０６ｂを繰返し実行する過程で上記工程１０３ｂがタイマＴ１のタイムアップ判定を行ったときに作用し、監視制御回路部３０ａの動作を初期工程２００に復帰させる工程、１０８は工程１０７ｂに続いて作用する動作終了工程であり、マイクロプロセッサ２０ａは上記動作終了工程１０８で動作待機して、その他の制御を実行してから再度上記動作開始工程１００へ復帰するようになっている。
【００４２】
１１０ｂは上記工程１０６ｂが正常受信（ＡＣＫ）の判定であったときに作用し、上記工程１０１ｂで起動されていたタイマＴ１を停止してタイマの現在値をリセットする工程、１１１ｂは前記工程１１２ａで照会パケット７１ａを受信判定してからの待機時間Ｔ４として例えば５０〜６０  ｍｓを経過したかどうかを判定する工程である。
１１２ｂは上記工程１１１ｂが未経過判定であったときに作用し、後述の工程２０７ｂによって監視制御回路部３０ａから送信された照会パケット７２ａ（図３・図４参照）をマイクロプロセッサ２０ａが受信したかどうかを判定する工程であり、工程１１２ｂが未受信であれば上記工程１１１ｂに復帰して照会パケット７２ａの受信待ちを行うようになっている。
【００４３】
１１３ｂは上記工程１１２ｂが受信判定であったときに作用し、受信した照会パケット７２ａのサムチェックを行って、エラーの有無を判定する工程、１１４ｂは工程１１３ｂがエラー無しの判定であったときに作用し、照会パケット７２ａ内の照会データを格納する工程、１１５ｂは上記工程１１３ｂがエラーありの判定であったときに作用し、後述の工程１０２ｃ（図９参照）における応答パケットの内容を意図的に誤答にするための情報を格納しておく工程であり、該工程１１５ｂは誤答送信確定手段となるものである。
１１７ｂは上記工程１１１ｂが待機時間経過の判定であって、この間に照会パケット７２ａが受信できなかったときに作用し、監視制御回路部３０ａの動作を初期工程２００に復帰させる工程であり、該工程１１７ｂに続いて動作終了工程１０８へ移行して、所定時間後には再度動作開始工程１００へ移行するようになっている。
【００４４】
２０２ｂは前記工程２０７ａから続いて作動し、上記工程１０２ｂで送信された第二の同期パケット６２を受信したかどうかを判定する工程、２０３ｂは該工程２０２ｂが受信判定であったときに作用し、サムチェック操作をおこなってエラーの有無を判定する工程（受信確認手段）である。
２０４ｃは上記工程２０３ｂがエラー無しの判定であったときに作用し、図４の確認パケット６３ａで示す正常受信（ＡＣＫ）データを返信すると共に、エラーカウンタ４８の現在値を一つ減少させる工程、２０４ｄは上記工程２０３ｂがエラーありの判定であったときに作用し、図４の確認パケット６３ｂで示す不正常受信（ＮＡＣＫ）データを返信する工程、２０５ｂは上記工程２０４ｃと２０４ｄで構成された工程ブロックであり、該工程ブロック２０５ｂは受信確認応答手段となるものである。
【００４５】
２０６ｂは上記工程２０４ｃに続いて作用し、照会パケット７１ａを送信してからの待機時間であるＴ８が例えば４０ｍｓを経過するまで循環動作を行いながら待機する待機時間の経過判定工程、２０７ｂは該工程２０６ｂが待機時間経過を判定したときに作用し、図３・図４で示す照会パケット７２ａを送信する工程（照会パケット送信手段）であり、照会パケット７２ａには上記エラーカウンタ４８の現在値データが含まれている。
【００４６】
２０８ｂは上記工程２０２ｂが第二の同期パケット６２を受信していない判定であるとき、又は受信していても不正常受信（ＮＡＣＫ）であった上記工程２０４ｄに続いて作用し、照会パケット７１ａを送信してからの待機時間であるＴ７が例えば４０ｍｓを経過したかどうかを判定する工程であり、未経過のときは上記工程２０２ｂに復帰して再び第二の同期パケット６２の受信判定を行うようになっている。
２０９ｂは上記工程２０８ｂが待機時間超過の判定であったときに作用し、図１のリセットパルス信号ＲＳＴ２によってマイクロプロセッサ２０ａをリセットして再起動させる工程、２１０は上記工程２０９ｂに続いて作用する動作終了工程であり、該動作終了工程２１０において監視制御回路部部３０ａはその他の制御動作を行った後に再度動作開始工程２００へ移行するようになっている。
【００４７】
図３における応答パケット７１ｂの送信から照会パケット７３ａの受信までの動作を図９，図１０に示す。図９，図１０において、１０１ｃは前記工程１１４ｂ又は１１５ｂから続いて作用し、例えばタイムアップ時間が７０ｍｓ程度のタイマＴ１を起動する工程、１０２ｃは工程１０１ｃに続いて作用し、図３・図４で示した応答パケット７１ｂを送信する工程（応答パケット送信手段）、１０３ｃは工程１０２ｃに続いて作用し、上記工程１０１ｃで起動されたタイマＴ１がタイムアップしているかどうかを判定する工程である。
【００４８】
１０４ｃは上記工程１０３ｃがタイムアップ判定をしていないときに作用し、後述の工程２０５ｃによって監視制御回路部３０ａが送信した確認パケットを受信したかどうかを判定する工程、１０５ｃは工程１０４ｃが確認パケットを未受信であるときに作用して、例えば待機時間Ｔ２として１０〜２０ｍｓの時間待ちをする工程であり、この待機時間を経過するまでは上記工程１０４ｃに復帰して確認パケットの受信を待ち続けると共に、待機時間を超過すると上記工程１０２ｃへ復帰して、再度応答パケット７１ｂを送信する再送処理手段となっている。
【００４９】
１０６ｃは上記工程１０４ｃが確認パケットの受信判定をしたときに作用し、その受信内容が図４で示した正常確認パケット６３ａ（ＡＣＫ）と不正常確認パケット６３ｂ（ＮＡＣＫ）のどちらであったかを判定する工程であり、工程１０６ｃが不正常受信（ＮＡＣＫ）の判定であったときには工程１０２ｃに復帰して再度応答パケット７１ｂを送信する再送処理手段となっている。
【００５０】
１０７ｃは上記工程１０２ｃ・１０３ｃ・１０４ｃ・１０５ｃ又は１０６ｃを繰返し実行する過程で上記工程１０３ｃがタイマＴ１のタイムアップ判定を行ったときに作用し、監視制御回路部３０ａの動作を初期工程２００に復帰させる工程（確認返信異常処理手段）、１０８は工程１０７ｃに続いて作用する動作終了工程であり、マイクロプロセッサ２０ａは上記動作終了工程１０８で動作待機して、その他の制御を実行してから再度上記動作開始工程１００へ復帰するようになっている。
【００５１】
１１０ｃは上記工程１０６ｃが正常受信（ＡＣＫ）の判定であったときに作用し、上記工程１０１ｃで起動されていたタイマＴ１を停止してタイマの現在値をリセットする工程、１１１ｃは前記工程１１２ｂで照会パケット７２ａを受信判定してからの待機時間Ｔ４として例えば５０〜６０  ｍｓを経過したかどうかを判定する工程である。１１２ｃは上記工程１１１ｃが未経過判定であったときに作用し、後述の工程２０７ｃによって監視制御回路部３０ａから送信された照会パケット７３ａ（図３・図４参照）をマイクロプロセッサ２０ａが受信したかどうかを判定する工程であり、該工程１１２ｃが未受信であれば上記工程１１１ｃに復帰して照会パケット７３ａの受信待ちを行うようになっている。
【００５２】
１１３ｃは上記工程１１２ｃが受信判定であったときに作用し、受信した照会パケット７３ａのサムチェックを行って、エラーの有無を判定する工程、１１４ｃは工程１１３ｃがエラー無しの判定であったときに作用し、照会パケット７３ａ内の照会データを格納する工程、１１５ｃは上記工程１１３ｃがエラーありの判定であったときに作用し、上記工程１０２ｃが再度循環実行されたときにおける応答パケットの内容を意図的に誤答にするための情報を格納しておく工程であり、該工程１１５ｃは誤答送信確定手段となるものである。
【００５３】
１１７ｃは上記工程１１１ｃが待機時間経過の判定であって、この間に照会パケット７３ａが受信できなかったときに作用し、監視制御回路部３０ａの動作を初期工程２００に復帰させる工程（受信間隔異常処理手段）であり、工程１１７ｃに続いて動作終了工程１０８へ移行して、所定時間後には再度動作開始工程１００へ移行するようになっている。
【００５４】
２０２ｃは前記工程２０７ｂから続いて作動し、上記工程１０２ｃで送信された応答パケット７１ｂを受信したかどうかを判定する工程、２０３ｃは工程２０２ｃが受信判定であったときに作用し、サムチェック操作をおこなってエラーの有無を判定する工程（受信確認手段）である。２０４ｅは上記工程２０３ｃがエラー無しの判定であったときに作用し、図４の確認パケット６３ａで示す正常受信（ＡＣＫ）データを返信する工程、２０４ｆは上記工程２０３ｃがエラーありの判定であったときに作用し、図４の確認パケット６３ｂで示す不正常受信（ＮＡＣＫ）データを返信する工程、２０５ｃは上記工程２０４ｅと２０４ｆで構成された工程ブロックであり、該工程ブロック２０５ｃは受信確認応答手段となるものである。
【００５５】
２１１は上記工程２０４ｅに続いて作用し、受信した応答パケット７１ｂ内の回答データが照会パケット７１ａ内の照会データによって質問された回答として正解であるか不正解であるかを判定する工程（異常判定手段）であり、該工程２１１で使用される正解情報は図１における不揮発データメモリ４６に予め格納されている。２１２は上記工程２１１が正解判定であったときに作用し、図１におけるエラーカウンタ４８の現在値を１カウントだけ減少させる工程、２１３は上記工程２１１が誤答判定であったときに作用し、図１におけるエラーカウンタ４８の現在値を３カウントだけ増加させる工程である。
【００５６】
２０６ｃは上記工程２１２又は工程２１３に続いて作用し、照会パケット７２ａを送信してからの待機時間であるＴ８が例えば４０ｍｓを経過するまで循環動作を行いながら待機する待機時間の経過判定工程、２０７ｃは工程２０６ｃが待機時間経過を判定したときに作用し、図３・図４で示す照会パケット７３ａを送信する工程（照会パケット送信手段）であり、照会パケット７３ａには上記エラーカウンタ４８の現在値データが含まれている。
【００５７】
２０８ｃは上記工程２０２ｃが応答パケット７１ｂを受信していない判定であるとき、又は受信していても不正常受信（ＮＡＣＫ）であった上記工程２０４ｆに続いて作用し、照会パケット７１ａを送信してからの待機時間であるＴ７が例えば４０ｍｓを経過したかどうかを判定する工程であり、未経過のときは上記工程２０２ｃに復帰して再び応答パケット７１ｂの受信判定を行うようになっている。２０９ｃは上記工程２０８ｃが待機時間超過の判定であったときに作用し、図１のリセットパルス信号ＲＳＴ２によってマイクロプロセッサ２０ａをリセットして再起動させる工程（応答間隔異常処理手段）、２１０は上記工程２０９ｃに続いて作用する動作終了工程であり、該動作終了工程２１０において監視制御回路部３０ａはその他の制御動作を行った後に再度動作開始工程２００へ移行するようになっている。
【００５８】
図３における応答パケット７２ｂの送信以降の循環動作を図１１に示す。図１１において、１１６は上記工程１１４ｃ又は１１５ｃから続いて作用し、受信した最新の照会パケットに含まれるエラーカウンタ４８の現在値の変化が正常であるかどうかを判定する工程（現在値監視手段）である。ここでいう正常変化とはマイクロプロセッサ２０ａが上記工程１１５ａ・１１５ｂ・１１５ｃや後述の工程１２２で意図的に誤答選択を行い、その後の応答パケットで所定の誤答データを送信した場合には、監視制御回路部３０ａの処置結果としてエラーカウンタ４８の現在値が３カウント増加しているかどうかを判定するものである。１２０は上記工程１１６が正常判定であったときに作用し、循環番号ｎ（ｎ＝１〜１６）が１５以下であるかどうかを判定する工程であり、上記工程１０２ｃから１１２ｃのフローは応答パケット番号ｎ＝１の送信から照会パケット番号ｎ＋２＝３の受信に至るフローである。
【００５９】
１２１は上記工程１２０の判定が１５超過即ちｎ＝１６であったときに作用し、最新の照会パケットに含まれているエラーカウンタ４８の現在値が例えば６以下であるかどうかを判定する工程、１２２は該工程１２１の判定が６以下であったときに作用し、次回の応答パケットにおいて意図的に所定の誤答を回答する（例えば０を回答する）ことを選択する工程（誤答送信選択手段）である。１２３は上記工程１２１の判定が６超過であったときに作用し、次回の応答パケットにおいて正解データとして例えば１６を回答することを選択する工程であり、上記工程１２１は意図的に誤答送信した結果として後述の工程２１６でカウントアップ出力が発生しないようにするためのものであって、余裕の無い限界としては９以下の設定を行っても良い。
１２４は上記工程１２２又は工程１２３に続いて作用し、循環番号ｎ＝１６からｎ＝１に循環させる工程、１２５は上記工程１２０が循環番号１５以下であると判定したときに作用し、循環番号ｎを１つ増加させる工程であり、上記工程１２４又は工程１２５に続いて前記工程１０１ｃへ復帰し、次回の動作としては工程１０２ｃで応答パケット７２ｂを送信し、工程１１２ｃで照会パケット７４ａの受信判定を行うことになる。
【００６０】
１２６は上記工程１１６が現在値変化異常の判定を行ったときに作用し、監視制御回路部３０ａの動作を初期工程２００に復帰させる工程、１０８は工程１２６に続いて作用する動作終了工程であり、マイクロプロセッサ２０ａは上記動作終了工程１０８で動作待機して、その他の制御を実行してから再度上記動作開始工程１００へ復帰するようになっている。
【００６１】
２１６は前記工程２０７ｃから続いて作動し、エラーカウンタ４８の現在値が１３以上になっていないかどうかを判定する工程、２２０は工程２１６が１３未満の判定であったときに作用し、工程カウンタ４７の現在値を読出して循環番号ｎ（ｎ＝１〜１６）が１５以下であるかどうかを判定する工程である。２２４は上記工程２２０が循環番号１５超過の判定であったときに作用し、工程カウンタ４７の現在値である循環番号ｎ＝１６からｎ＝１に循環させる工程、２２５は上記工程２２０が循環番号１５以下であると判定したときに作用し、工程カウンタ４７をアップカウントさせて循環番号ｎを１つ増加させる工程であり、上記工程２２４又は工程２２５に続いて上記工程２０２ｃへ復帰し、次回の動作としては工程２０２ｃで応答パケット７２ｂを受信判定し、工程２０７ｃで照会パケット７４ａの送信を行うことになる。
【００６２】
２０９ｄは上記工程２１６でエラーカウンタ４８の現在値が１３以上の判定であったときに作用し、エラーカウンタ４８がカウントアップして図１のリセットパルス信号ＲＳＴ２によってマイクロプロセッサ２０ａをリセットして再起動させる工程、２１０は上記工程２０９ｄに続いて作用する動作終了工程であり、該動作終了工程２１０において監視制御回路部３０ａはその他の制御動作を行った後に再度動作開始工程２００へ移行するようになっている。
【００６３】
以上で詳述したこの発明の実施の形態１の電子制御装置に関する作用動作について、再度概括説明する。図１においてマイクロプロセッサ２０ａは入力センサ群１１の動作状態と不揮発プログラムメモリ２５ａに格納された制御プログラム２６ａに内容によって電気負荷群１２を駆動制御するものである。マイクロプロセッサ２０ａはウオッチドグタイマ３１で暴走監視されると共に、その制御動作は監視制御回路部３０ａによって監視されており、上記不揮発プログラムメモリ２５ａには制御プログラム２６ａに加えて監視制御回路部３０ａと協働するための被監視処理プログラム２７ａが予め外部ツール１３から転送書込みされている。
【００６４】
一対の直並列変換器であるシリアルインタフェース回路２９・４９を介してマイクロプロセッサ２０ａと相互交信する監視制御回路部３０ａは、照会パケットによってマイクロプロセッサ２０ａに質問情報を定期送信し、マイクロプロセッサ２０ａは応答パケットによって回答情報を返信する。
【００６５】
監視制御回路部３０ａは不揮発データメモリ４６に格納されている正解情報と上記回答情報とを比較する異常判定手段によって異常判定を行い、不一致であればエラーカウンタ４８の現在値Ｃを３カウント分アップカウントさせ、一致であれば１カウント分ダウンカウントさせる。エラーカウンタ４８の初期値は１１に設定されていて、現在値は０以下にはならないように構成されているが、現在値が１３以上になるとカウントアップ出力を発生して、リセットパルス信号ＲＳＴ２によってマイクロプロセッサ２０ａをリセットして再起動させるようになっている。なお、定期的に送信される照会パケットの番号は工程カンタ４７によってｎ＝１・２・３・・・・１６・１・２・・・のように順次循環更新するようになっている。
【００６６】
一方、全体制御の主導権はマイクロプロセッサ２０ａが持っていて、上述の照会パケットによる定期的な質問情報の送信は、予めマイクロプロセッサ２０ａが第一の同期パケットを監視制御回路部３０ａに送信して照会パケットの送信許可を与えることによって開始するものであって、第一の同期パケットによって照会パケットの送信禁止が行われると監視制御回路部３０ａは照会パケットの送信を停止するようになっている。ただし、運転開始後所定時間が経過しても送信許可が与えられず、マイクロプロセッサ２０ａが監視されることなく単独動作するのを規制するために、監視許可異常処理手段が設けられ、所定時間を経過すると警報表示が行われるようになっている。
【００６７】
監視制御回路部３０ａは受信した応答パケットのサムチェックを行って、正常受信（ＡＣＫ）又は不正常受信（ＮＡＣＫ）の確認パケットをマイクロプロセッサ２０ａに返信し、もしも不正常受信であればマイクロプロセッサ２０ａは応答パケットの再送処理を行うようになっている。
なお、監視制御回路部３０ａによる確認パケットの返信が所定時間を超過すると、マイクロプロセッサ２０ａは確認返信異常処理手段によって監視制御回路部３０ａをリセットすると共に、定期送信が許可されている照会パケットの送信間隔が所定時間を超過しても、マイクロプロセッサ２０ａは受信間隔異常処理手段によって監視制御回路部３０ａをリセットし、監視制御回路部３０ａを逆監視している。
逆に、マイクロプロセッサ２０ａによる応答パケットの返信間隔が所定時間を超過すると、監視制御回路部３０ａは応答間隔異常処理手段によってマイクロプロセッサ２０ａをリセットして再起動する監視手段も付加されている。
【００６８】
図２において、マイクロプロセッサ２０ａは被試験対象プログラム２８ａと模擬演算実行処理プログラム２８ｂを交互に実行するが、共通プログラム２８ｃは両方で実行される。また、模擬演算実行処理プログラム２８ｂの中で扱われる入力データ群の番号は監視制御回路部３０ａから送信された照会パケットの中の照会データによって１〜１５の番号に指定される。マイクロプロセッサ２０ａは指定された番号の入力データ群を用いて共通プログラム２８ｃを動作させ、その結果を応答パケットによって監視制御回路部３０ａに返信する。なお、照会データの番号１６は誤答処理を行うためのものであって、模擬演算実行処理プログラム２８ｂでは扱われない。
【００６９】
図３・図４において、マイクロプロセッサ２０ａは第一の同期パケット６１ａ、第二の同期パケット６２の送信をおこなってから、応答パケット７１ｂ、応答パケット７２ｂ、・・・・・応答パケット７１６ｂ、応答パケット７１ｂ、応答パケット７２ｂ、・・・の順で応答パケットの返信を行い、監視制御回路部３０ａは照会パケット７１ａ、照会パケット７２ａ、・・・照会パケット７１６ａの順で照会パケットの送信を行う。
【００７０】
また、監視制御回路部３０ａはマイクロプロセッサ２０ａから受信した全てのパケットに対して正常受信（ＡＣＫ）又は不正常受信（ＮＡＣＫ）の確認パケットを直ちに返信する。これに対して、マイクロプロセッサ２０ａは監視制御回路部３０ａから受信した照会パケットｎを正常受信した場合には、その確認情報として第二の同期パケット６２又は応答パケットｎ―１を直ちに返信するようになっている。ただし、ここで返信される応答パケットｎ―１の内容は前回の照会パケットｎ―１の質問情報に対する回答情報を含むものであって、マイクロプロセッサ２０ａが回答情報を得るために必要な時間を確保するために１タイミングだけ遅れた回答となっている。
【００７１】
第一の同期パケット６１ａを送信してから第一の照会パケット７１ａを受信するまでの動作を示す図５，図６において、１０２ａは第一の同期パケット送信手段、２０３ａは受信確認手段、２０５ａは正常確認パケット２０４ａ又は不正常確認パケット２０４ｂによる受信確認応答手段、１０５ａ・１０６ａは正常確認パケット６３ａが得られない場合の再送処理手段、２０９ａは所定時間を経過しても第一の同期パケット６１ａの正常受信ができないときの監視許可異常処理手段、２０７ａは照会パケット送信手段、１１５ａはマイクロプロセッサ２０ａが受信した照会パケット７１ａにサムチェックエラーがあるときに次回の応答パケットで誤答を返信するための誤答送信確定手段である。
【００７２】
第二の同期パケット６２を送信してから第二の照会パケット７２ａを受信するまでの動作を示す図７，図８において、１０２ｂは第二の同期パケット送信手段、２０３ｂは受信確認手段、２０５ｂは正常確認パケット２０４ｃ又は不正常確認パケット２０４ｄによる受信確認応答手段、１０５ｂ・１０６ｂは正常確認パケット６３ａが得られない場合の再送処理手段、２０９ｂは所定時間を経過しても第二の同期パケット６２が受信できないときの異常処理手段、２０７ｂは照会パケット送信手段、１１５ｂはマイクロプロセッサ２０ａが受信した照会パケット７２ａにサムチェックエラーがあるときに次回の応答パケットで誤答を返信するための誤答送信確定手段である。
【００７３】
応答パケット７１ｂを送信してから照会パケット７３ａを受信するまでの動作を示す図９，１０において、１０２ｃは応答パケット送信手段、２０３ｃは受信確認手段、２０５ｃは正常確認パケット２０４ｅ又は不正常確認パケット２０４ｆによる受信確認応答手段、１０５ｃ・１０６ｃは正常確認パケット６３ａが得られない場合の再送処理手段、２０９ｃは所定時間を経過しても応答パケット６１ｂが受信できないときの応答間隔異常処理手段、２１１は応答パケット６１ｂの回答情報と不揮発データメモリ４６（図１参照）に格納されている正解情報とを比較する異常判定手段であり、該異常判定手段２１１が正解判定であれば工程２１２でエラーカウンタ４８のカウントダウンを行い、誤答判定であれば工程２１３によってエラーカウンタ４８を３カウント増加するようになっている。２０７ｃは照会パケット送信手段、１１５ｃはマイクロプロセッサ２０ａが受信した照会パケット７３ａにサムチェックエラーがあるときに次回の応答パケットで誤答を返信するための誤答送信確定手段である。
【００７４】
照会パケット７３ａを受信してから次回の循環サイクルへの移行処理を示す図１１において、２０９ｄはエラーカウンタ４８の現在値が１３以上になったときに作用してマイクロプロセッサ２０ａをリセットするカウントアップ出力、１１６は照会パケットによって監視制御回路部３０ａから送信されたきたエラーカウンタ４８の現在値の変化を監視する現在値監視手段、１２２は受信した照会パケット番号がｎ＝１６であって、しかもエラーカウンタ４８の現在値が６以下であるときに作用する誤答送信選択手段であり、次回の応答パケット１６で誤答を送信してエラーカウンタ４８が３カウント増加してもまだカウントアップ出力手段２０９ｄが動作しないようになっている。
これに対し、図５〜図１０で示した誤答送信確定手段１１５ａ・１１５ｂ・１１５ｃの場合には、受信した照会パケットにサムチェックエラーがあった場合の誤答返信手段であるため、図１０の工程２１３によってエラーカウンタ４８のアップカウントが行われ、その現在値が１３以上になると図１１の工程２０９ｄによってマイクロプロセッサ２０ａがリセットされることになる。
【００７５】
実施の形態２．
図１２はこの発明の実施の形態２の電子制御装置を示す全体構成図である。図１２において、電子制御装置１０ｂは一枚の電子基板上でマイクロプロセッサ２０ｂを主体として構成されている。まず、電子制御装置１０ｂの外部に接続されるものとして、ＯＮ／ＯＦＦ信号又はアナログ信号を含む第一の入力センサ群１１ａ、ＯＮ／ＯＦＦ信号又はアナログ信号を含む第二の入力センサ群１１ｂ、上記電子制御装置１０ｂによって駆動される第一の電気負荷群１２ａ、上記電子制御装置１０ｂによって駆動される第二の電気負荷群１２ｂ、上記電子制御装置１０ｂに対してシリアル接続された外部ツール１３であり、外部ツール１３は製品出荷時又は保守点検時に上記電子制御装置１０ｂに対して図示しない脱着コネクタを介して接続され、後述の不揮発プログラムメモリ２５ｂに制御プログラム２６ｂや被監視処理プログラム２７ｂを転送書込みするものである。
【００７６】
次に、上記電子制御装置１０ｂの内部の構成として、後述の各種インタフェース回路やメモリに対してバス接続されたメインとなるマイクロプロセッサ２０ｂ、マイクロプロセッサ２０ｂと第一の入力センサ群１１ａとの間に設けられた入力インタフェース回路２１があり、アナログの入力センサに対しては図示しないＡＤ変換器が使用されている。マイクロプロセッサ２０ｂにはまた第一の電気負荷群１２ａとの間に接続された出力インタフェース回路２２、マイクロプロセッサ２０ｂと外部ツール１３間に接続されたツールインタフェース回路２３、演算処理用のＲＡＭメモリ２４、例えばフラッシュメモリ等による不揮発プログラムメモリ２５ｂとが接続され、該プログラムメモリは図５〜図１１で詳述した各種プログラムが格納されている。マイクロプロセッサ２０ｂにはまた後述の補助マイクロプロセッサ８０間で双方向のシリアル交信を行うために設けられた直並列変換器によるシリアルインタフェース回路２９が接続されている。
【００７７】
なお、不揮発プログラムメモリ２５ｂの内容としては、制御プログラム２６ｂと被監視処理プログラム２７ｂとがあり、上記制御プログラム２６ｂは入出力制御を行うための主たる制御プログラムの他に、外部ツール１３や後述の補助マイクロプロセッサ８０とのシリアル通信用プログラム、或いは入出力制御で使用される例えば比較処理用の閾値データなどである制御定数などで構成されている。
【００７８】
また、被監視処理プログラム２７ｂは後述の監視制御回路部３０ｂと協働して監視制御を実行するためのものであり、該被監視処理プログラムは図５から図１１で詳述した模擬演算実行処理プログラム、応答パケット送信プログラム、受信間隔異常処理プログラム、第一・第二の同期パケット送信プログラム、誤答送信選択プログラム、エラーカウンタの現在値監視プログラム、応答パケットの再送処理プログラム、確認返信異常処理プログラム、後述の補助ＲＡＭメモリ８４に転送される正解情報データによって構成されている。
【００７９】
監視制御回路部３０ｂは補助マイクロプロセッサ８０を主体として構成され、マイクロプロセッサ２０ｂの動作を監視するものである。入力インタフェース回路８１は補助マイクロプロセッサ８０と第二の入力センサ群１１ｂとの間に設けられたものであり、アナログの入力センサに対しては図示しないＡＤ変換器が使用されている。出力インタフェース回路８２は補助マイクロプロセッサ８０と第二の電気負荷群１２ｂとの間に接続されたものである。補助マイクロプロセッサ８０には補助ＲＡＭメモリ８４がバス接続されると共に、マスクＲＯＭ等による補助プログラムメモリ８５や上記シリアルインタフェース回路２９と対をなす直並列変換器によるシリアルインタフェース回路８９もバス接続されている。
【００８０】
ウオッチドグタイマ３１は、マイクロプロセッサ２０ｂが発生するパルス列であるウオッチドグ信号ＷＤ１のパルス幅を監視して、該パルス幅が所定値を超過したときにリセットパルス信号ＲＳＴ１を発生して上記マイクロプロセッサ２０ｂを再起動させるものである。ウオッチドグ信号ＷＤ２は補助マイクロプロセッサ８０が発生するパルス列である。リセットパルス信号ＲＳＴ２はマイクロプロセッサ２０ｂがウオッチドグ信号ＷＤ２のパルス幅を監視して、該パルス幅が所定値を超過したときに補助マイクロプロセッサ８０を再起動させるものである。
【００８１】
なお、補助ＲＡＭメモリ８４は、補助マイクロプロセッサ８０で計数されるエラーカウンタの現在値が格納されたり、不揮発プログラムメモリ２５ｂに一旦格納された正解情報が転送書込みされている。また、補助プログラムメモリ８５には入出力制御プログラム８６と監視制御プログラム８７とが格納されている。上記入出力制御プログラム８６は例えば第二の入力センサ群１１ｂからの入力信号をマイクロプロセッサ２０ｂに対してシリアル送信したり、マイクロプロセッサ２０ｂによる制御出力を第二の電気負荷群１２ｂにシリアル送信するためのプログラムである。
【００８２】
監視制御プログラム８７には、補助マイクロプロセッサ８０が送信した照会パケットの内容に対してマイクロプロセッサ２０ｂが返信してくる応答パケットの内容が適切であるかどうかを判定する異常判定手段、マイクロプロセッサ２０ｂから送信された受信データの内容をサムチェクする受信確認手段、受信データの内容に対応した確認パケットとして正常確認パケット（ＡＣＫ）又は不正常確認パケット（ＮＡＣＫ）を選択する受信確認応答手段、照会パケット送信手段、マイクロプロセッサ２０ｂから送信されてくる応答パケットの受信間隔が異常であるときにマイクロプロセッサ２０ｂをリセットする応答間隔異常処理手段、運転開始後所定時間が経過しても、マイクロプロセッサ２０ｂが補助マイクロプロセッサ８０に対して監視動作の開始許可を出さないときに警報表示を行う監視許可異常処理手段などのプログラムが設けられている。
【００８３】
以上の説明で明らかなとおり、図１２で示した実施の形態２の電子制御装置と図１で示した実施の形態１の電子制御装置との相違点として、図１の監視制御回路部３０ａがマイクロプロセッサを持たない論理回路によって構成されているのに対して、図１２のものはこれと等価な動作を補助マイクロプロセッサ８０と補助プログラムメモリ８５によって実行するようになっている。補助マイクロプロセッサ８０は入出力信号の送信機能も持っているが、マイクロプロセッサ２０ｂとの間で機能分担を行って、一部の入出力制御を行うようにしてもよいし、入出力を一切取り扱わないでマイクロプロセッサ２０ｂに対する監視制御に専念するように構成しても良い。
【００８４】
実施の形態３．
図１３はこの発明の実施の形態３の電子制御装置における部分等価制御ブロック図を示す。図１３（Ａ）において、被試験対象プログラムＡ２８１ａは、図２の被試験対象プログラム２８ａに代わって不揮発プログラムメモリ２５ａの中の制御プログラム２６ａの一部として格納されたプログラムである。模擬演算実行処理プログラム２８１ｂは、図２の模擬演算実行処理プログラム２８ｂに代わって不揮発プログラムメモリ２５ａの中の被監視処理プログラム２７ａの一部として格納されたプログラムである。共通プログラム２８１ｃは、被試験対象プログラム２８１ａと模擬演算実行処理プログラム２８１ｂのどちらが実行されるときでも実行されるプログラムである。入力データテーブル２８１ｄは、上記模擬演算実行処理プログラム２８１ｂの中で扱われるようになっている。被試験対象プログラム２８２ａ・２８３ａ・２８４ａや模擬演算実行処理プログラム２８２ｂ・２８３ｂ・２８４ｂも同様であり、かつ共通プログラム２８２ｃ・２８３ｃ・２８４ａも同様である。この実施の形態では図２のものに比べて被試験対象プログラム２８ａが複数の被試験対象プログラム２８１ａ〜２８４ａに分割されている。
【００８５】
上記被試験対象プログラム２８１ａ〜２８４ａは、例えば制御プログラム２６ａの局所で使用されるサブルーチンプログラムであって、ここで扱われる入力情報は必ずしも入力センサ群１１から入力されるものではなく、演算経過の中間的情報が使用されるものである。なお、被試験対象プログラム２８４ａと模擬演算実行処理プログラム２８４ｂに関しては、共通プログラムｄがそれぞれのプログラム領域に分離して格納され、共通プログラム２８４ｃと２８４ｅとなっている例を示している。
【００８６】
これらのプログラムの実行順序は、図１３（Ｂ）で示すとおりであり、先ず第一段階としては被試験対象プログラム２８１ａ（共通プログラム２８１ｃを含む）→被試験対象プログラム２８２ａ（共通プログラム２８２ｃを含む）→被試験対象プログラム２８３ａ（共通プログラム２８３ｃを含む）→被試験対象プログラム２８４ａ（共通プログラム２８４ｃを含む）→模擬演算実行処理プログラム２８１ｂ（共通プログラム２８１ｃを含み入力データ番号は１）→その他の全体制御プログラムが実行される。
【００８７】
次に、被試験対象プログラム２８１ａ（共通プログラム２８１ｃを含む）→被試験対象プログラム２８２ａ（共通プログラム２８２ｃを含む）→被試験対象プログラム２８３ａ（共通プログラム２８３ｃを含む）→被試験対象プログラム２８４ａ（共通プログラム２８４ｃを含む）→模擬演算実行処理プログラム２８２ｂ（共通プログラム２８２ｃを含み入力データ番号は２）→その他の全体制御プログラムが実行される。
【００８８】
以下同様に、被試験対象プログラム２８１ａ（共通プログラム２８１ｃを含む）→被試験対象プログラム２８２ａ（共通プログラム２８２ｃを含む）→被試験対象プログラム２８３ａ（共通プログラム２８３ｃを含む）→被試験対象プログラム２８４ａ（共通プログラム２８４ｃを含む）→模擬演算実行処理プログラム２８３ｂ（共通プログラム２８３ｃを含み入力データ番号は３）→その他の全体制御プログラムが実行される。
次に、被試験対象プログラム２８１ａ（共通プログラム２８１ｃを含む）→被試験対象プログラム２８２ａ（共通プログラム２８２ｃを含む）→被試験対象プログラム２８３ａ（共通プログラム２８３ｃを含む）→被試験対象プログラム２８４ａ（共通プログラム２８４ｃを含む）→模擬演算実行処理プログラム２８４ｂ（共通プログラム２８４ｅを含み入力データ番号は４）→その他の全体制御プログラムが実行される。
【００８９】
以下同様に入力データ番号５〜１５による模擬演算実行処理プログラムが実行されるが、入力データ番号１から１５は特定の模擬演算実行処理プログラムに集中することなく、順次配分割付されている。従って、被試験対象プログラム２８１ａ〜２８４ａのどれかに異常があったときに、速やかに検出される可能性が高くなるものである。また、入力データ番号１５の次には１６番目の照会パケットによる誤答回答処理が行われてから入力データ番号１のものへ循環復帰するようになっている。
【００９０】
他の実施の形態．
以上の説明で明らかなとおり、この発明はマイクロプロセッサによって構成された電子制御装置において、上記マイクロプロセッサとシリアル接続された監視制御回路部によってマイクロプロセッサの制御動作の監視を行うものであって、監視制御回路部としてはマイクロプロセッサを持たない論理回路で構成したり、補助となるサブマイクロプロセッサを有して、機能分担を行ったりするなど様々な実施形態がある。
【００９１】
また、模擬演算実行処理プログラムとしては、被試験対象プログラムとは無関係な専用の模擬演算プログラムを使用することもできるが、望ましくは被試験対象プログラムを定め、該被試験対象プログラムの中で使用されているものと同一の共通プログラムを用いた模擬演算実行処理プログラムにすることである。
更に、監視制御回路部を付加したことによってシステムが複雑化し、全体としての安全性が低下するのを防止するためにはウオッチドグタイマを併用することが望ましい。
また、監視制御回路部が単にマイクロプロセッサの制御動作の監視を行うだけでなく、相互に通信間隔異常判定を行う相互監視によってシステムの安全性を向上することが可能となるものである。
【００９２】
以上の説明では、模擬演算実行処理プログラムが入力データテーブルを持っている実施の形態について説明したが、模擬演算で使用される入力データは照会パケットによって監視制御回路部から送信するようにしても良い。
また、マイクロプロセッサは模擬演算の実行結果を応答パケットによって返信するようになっているが、実行結果によって正解番号を選択し選択された正解番号を応答パケットによって返信することもできる。この場合の正解番号テーブルは不揮発プログラムメモリに格納されていて、マイクロプロセッサの模擬演算実行結果が不正解であったときには選択するべき正解番号が見つからないことになるので、この場合には所定の誤答番号を返信するようにすれば良い。
【００９３】
以上の説明では、マイクロプロセッサが監視制御回路部をリセットするときには、監視制御回路部の制御フローを中断して動作開始工程へ復帰させ、監視制御回路部内の工程カウンタやエラーカウンタを初期値に設定しなおしてから監視制御動作を再起動すると共に、マイクロプロセッサ自体も動作開始工程に復帰するように構成されている。
また、監視制御回路部がマイクロプロセッサをリセットするときには、リセットパルス信号によってマイクロプロセッサを再起動すると共に、監視制御回路部自体も動作開始工程に復帰するようになっている。
このように、異常発生時にマイクロプロセッサと監視制御回路部を自動的に再起動するのは、ノイズ等による一次的な誤動作に対して敏感な処置をしないようにする場合に適したものであって、異常発生後は制御動作を停止して警告を行い、人為的にスタートボタンを押さなければ再起動しないようなインターロックを施すように変更することも可能である。
【００９４】
次に、この発明による監視制御回路を有する電子制御装置の付加的な特徴をまとめて記載する。
この発明の電子制御装置は、模擬演算実行処理プログラムは入力データテーブルを備えると共に、被試験対象プログラムと模擬演算実行処理プログラムは交互に実行され、上記模擬演算実行処理プログラムで扱われる入力データは照会パケットの内容に応じて上記入力データテーブルから順次選択されるよう構成されている。
従って、様々な入力データを用いて模擬演算が実行できて確実に異常検出ができると共に、監視制御回路部から入力データを送信する必要がないので通信の応答性を改善することができる。
【００９５】
また、この発明の電子制御装置は、被試験対象プログラムは複数グループに分割されていて、各グループに対応した模擬演算実行処理プログラムは該処理プログラムに対応した入力データテーブルを備え、照会パケットによって入力データ群を順次選択するよう構成されている。
従って、複雑な被試験対象プログラムを分割監視して手軽に異常検出ができると共に、分割された被試験対象プログラムを順次模擬演算することによって速やかに異常が発見できる。
【００９６】
また、この発明の電子制御装置は、不揮発プログラムメモリはツールインタフェース回路を介してシリアル接続された外部ツールから転送書込みされた入出力制御のための制御プログラムと、被監視処理手段となる被監視処理プログラムと、質問情報に対する正解情報データとを有し、正解情報データは監視制御回路部に設けられた正解情報格納手段に対して再転送されるよう構成されている。
従って、模擬演算実行処理プログラムが変更された場合に、その正解情報データも同時に変更して、プログラムの変更管理が一元化できる。
【００９７】
また、この発明の電子制御装置は、監視制御回路部は補助プログラムメモリと補助ＲＡＭメモリとを備えた補助マイクロプロセッサによって構成されている。
従って、補助プログラムメモリの内容を変更することによって手軽に監視制御の内容を変更することができたり、監視制御回路部に監視制御以外の特定機能を持たせれば、メインとなるマイクロプロセッサの負担を軽減したりすることができる。
【００９８】
また、この発明の電子制御装置は、マイクロプロセッサは監視制御回路部から送信されてきたｎ番目の照会パケットを受信した直後に、前回のｎ−１番目の照会パケットの内容に対応した応答パケットを返信し、該応答パケットの返信によってｎ番目の照会パケットを受信したことに対する認知情報を兼ねるように構成されている。
従って、交信情報を削減することができると共に、マイクロプロセッサが模擬演算を実行するための不確定な時間待ちをする必要がないので高速通信が行える。
【００９９】
また、この発明の電子制御装置は、被監視処理手段は上記監視制御回路部に対して送信される第一の同期パケット送信手段を備えると共に、監視制御回路部は監視許可異常処理手段を備えている。
従って、マイクロプロセッサが主導権をもって監視制御の許可／禁止を決定できると共に、運転開始後所定時間を超過しても第一の同期パケットによる照会パケットの定期送信許可が得られないときには監視許可異常処理手段によって異常報知が行える。
【０１００】
また、この発明の電子制御装置は、被監視処理手段は監視制御回路部に対して送信される第二の同期パケット送信手段を備え、該第二の同期パケット送信手段は上記監視制御回路部が送信した初回の１番目照会パケットを受信したことに対する認知手段であり、循環する次回の１番目照会パケットを受信したときは最終番目の照会パケットに対する応答パケットが返信されるよう構成されている。
従って、循環動作を行っているときの交信情報を削減することができるので、高速通信が行える。
【０１０１】
また、この発明の電子制御装置は、監視制御回路部は受信確認手段と、エラーカウンタとを備え、上記エラーカウンタの現在値が所定値を超過したときにはカウントアップ出力によってマイクロプロセッサを再起動又は警報停止するるよう構成されている。
従って、一時的なノイズ誤動作に対して敏感な反応をするのを回避することができると共に、異常が継続していると速やかに再起動又は警報停止を行って安全性を確保することができる。
【０１０２】
また、この発明の電子制御装置は、照会パケットはエラーカウンタの現在値情報を包含すると共に、不揮発プログラムメモリは誤答送信選択手段と現在値監視手段となるプログラムを備えている。
従って、監視制御回路部の異常判定手段が正常に作動していないときに監視制御回路部を再起動又は警報停止することができて、安全性を向上することができる。
【０１０３】
また、この発明の電子制御装置は、不揮発プログラムメモリは誤答送信確定手段となるプログラムを備えている。
従って、誤答送信確定手段は監視制御回路部から受信した照会パケットの内容がサムチェック異常であるときに作用して、次回送信される応答パケットの内容を所定の誤答にすることによって、エラーカウンタの現在値を増加させておくことができる。
【０１０４】
更にまた、この発明の電子制御装置は、監視制御回路部は受信確認応答手段と、応答間隔異常処理手段とを備えると共に、不揮発プログラムメモリは再送処理手段となる再送処理プログラムと確認返信異常処理手段となる処理プログラムとを備えている。
従って、応答パケットの交信に関して相互に間隔時間の監視を行って、異常があればマイクロプロセッサや監視制御回路部の再起動又は警報停止を行って、安全性を向上することができる。
【０１０５】
【発明の効果】
以上説明したように、この発明の監視制御回路を有する電子制御装置によれば、不揮発プログラムメモリと、演算処理用ＲＡＭメモリと、入力センサ群が接続された入力インタフェース回路と、電気負荷群が接続された出力インタフェース回路と、上記不揮発プログラムメモリに格納された制御プログラムの内容と上記入力センサ群の動作状態に応動して上記電気負荷群を制御するマイクロプロセッサとを備える電子制御装置において、
上記マイクロプロセッサに対して一対のシリアルインタフェース回路によって接続され、上記マイクロプロセッサに対する質問情報を定期的に順次送信する照会パケット送信手段と、上記質問情報に対する正解情報格納手段と、上記質問情報に基づく回答情報と上記正解情報格納手段に格納されている正解情報とを比較して異常の有無を判定する異常判定手段とを有する監視制御回路部と、
上記不揮発プログラムメモリに対して入出力制御のための制御プログラムに加えて格納された被監視処理プログラムであって、上記照会パケット送信手段によって送信されてきた質問情報に基づいて実行される模擬演算実行処理手段と、上記模擬演算実行処理手段の実行結果を回答情報として上記監視制御回路部に送信する応答パケット送信手段と、上記照会パケットの受信間隔が異常であるときに上記監視制御回路部を再起動又は警報停止するための逆監視手段である受信間隔異常処理手段とによって構成された被監視処理手段とを備え、
上記制御プログラムに含まれる被試験対象プログラムと、上記被監視処理プログラムに含まれる模擬演算実行処理手段としての模擬演算実行処理プログラムとは少なくとも一部の共通プログラムを有しているものである。
そのため、マイクロプロセッサの制御プログラムの一部を模擬演算によって実行監視して異常の有無を判定できると共に、監視制御回路部が正常動作していることをマイクロプロセッサによって逆監視することによって制御装置全体の安全性を向上させることができる。
【０１０６】
また、この発明の監視制御回路を有する電子制御装置によれば、不揮発プログラムメモリと、演算処理用ＲＡＭメモリと、入力センサ群が接続された入力インタフェース回路と、電気負荷群が接続された出力インタフェース回路と、上記不揮発プログラムメモリの内容と上記入力センサ群の動作状態に応動して上記電気負荷群を制御するマイクロプロセッサとを備える電子制御装置において、
上記マイクロプロセッサに対して一対のシリアルインタフェース回路によって接続され、上記マイクロプロセッサに対する質問情報を定期的に順次送信する照会パケット送信手段と、上記質問情報に対する正解情報格納手段と、上記質問情報に基づく回答情報と上記正解情報格納手段に格納されている正解情報とを比較して異常の有無を判定する異常判定手段とを有する監視制御回路部と、
上記不揮発プログラムメモリに内蔵された被監視処理プログラムであって、上記照会パケット送信手段によって送信されてきた質問情報に基づいて実行される模擬演算実行処理手段と、上記模擬演算実行処理手段の実行結果を回答情報として上記監視制御回路部に送信する応答パケット送信手段と、上記照会パケットの受信間隔が異常であるときに上記監視制御回路部を再起動又は警報停止するための逆監視手段である受信間隔異常処理手段とを有する被監視処理手段と、
上記マイクロプロセッサが発生するパルス列であるウオッチドグ信号のパルス幅が所定値を超過したときにリセットパルス信号を発生して、上記マイクロプロセッサ及び上記監視制御回路部を再起動又は警報停止させるウオッチドグタイマとを備え、
上記マイクロプロセッサは上記ウオッチドグタイマと上記監視制御回路部によって動作監視されると共に、上記監視制御回路部の監視制御動作を逆監視しているものである。
そのため、模擬演算実行処理プログラムによってマイクロプロセッサの動作を実行監視して異常の有無を判定できると共に、監視制御回路部が正常動作していることをマイクロプロセッサによって逆監視することによって制御装置全体の安全性を向上させることができる。更に、監視制御回路部が付加されてシステム全体が複雑化していても、ウオッチドグタイマによってマイクロプロセッサの暴走監視が行われているので、安全性を一層向上させることができる。
【図面の簡単な説明】
【図１】この発明の実施の形態１における監視制御回路を有する電子制御装置を示す全体構成図である。
【図２】図１の部分等価制御ブロック図である。
【図３】図１のシリアル通信のタイムチャートである。
【図４】図１のシリアル通信のパケット構成図である。
【図５】図１のＣＰＵ動作説明用部分フロ−チャ−トである。
【図６】図１のＣＰＵ動作説明用部分フロ−チャ−トである。
【図７】図１のＣＰＵ動作説明用部分フロ−チャ−トである。
【図８】図１のＣＰＵ動作説明用部分フロ−チャ−トである。
【図９】図１のＣＰＵ動作説明用部分フロ−チャ−トである。
【図１０】図１のＣＰＵ動作説明用部分フロ−チャ−トである。
【図１１】図１のＣＰＵ動作説明用部分フロ−チャ−トであり、図５〜図１１で、全体のＣＰＵ動作説明用フロ−チャ−トを表す。
【図１２】この発明の実施の形態２における電子制御装置を示す全体ブロック図である。
【図１３】この発明の実施の形態３の電子制御装置の部分等価制御ブロック図である。
【符号の説明】
１０ａ  電子制御装置                    １０２ａ  第一の同期パケット送信手段
１０ｂ  電子制御装置                    １０２ｂ  第二の同期パケット送信手段
１３  外部ツール                      １０２ｃ  応答パケット送信手段
２０ａ  マイクロプロセッサ              １０５ａ  再送処理手段
２０ｂ  マイクロプロセッサ              １０５ｂ  再送処理手段
２１  入力インタフェース回路          １０５ｃ  再送処理手段
２２  出力インタフェース回路          １０６ａ  再送処理手段
２３  ツールインタフェース回路        １０６ｂ  再送処理手段
２４  ＲＡＭメモリ                          １０６ｃ  再送処理手段
２５ａ  不揮発プログラムメモリ          １０７ｃ  確認返信異常処理手段
２５ｂ  不揮発プログラムメモリ          １１５ａ  誤答送信確定手段
２６ａ  制御プログラム                  １１５ｂ  誤答送信確定手段
２６ｂ  制御プログラム                  １１５ｃ  誤答送信確定手段
２７ａ  被監視処理プログラム              １１６  現在値監視手段
２７ｂ  被監視処理プログラム            １１７ｃ  受信間隔異常処理手段
２８ａ  被試験対象プログラム              １２２  誤答送信選択手段
２８ｂ  模擬演算実行処理プログラム    ２０３ａ  受信確認手段
２８ｃ  共通プログラム                  ２０３ｂ  受信確認手段
２８ｄ  入力データテーブル              ２０３ｃ  受信確認手段
２９  シリアルインタフェース回路      ２０４ａ  正常返信パケット
３０ａ  監視制御回路部部                ２０４ｂ  不正常返信パケット
３０ｂ  監視制御回路部部                ２０４ｃ  正常返信パケット
３１  ウオッチドグタイマ              ２０４ｄ  不正常返信パケット
４０  データ処理回路                  ２０４ｅ  正常返信パケット
４６  不揮発データメモリ（正解情報格納手段）
２０４ｆ  不正常返信パケット
４８  エラーカウンタ                  ２０５ａ  受信確認応答手段
４９  シリアルインタフェース回路      ２０５ｂ  受信確認応答手段
２０５ｃ  受信確認応答手段
ＲＳＴ  リセットパルス信号                ２０７ａ  照会パケット送信手段
ＷＤ  ウオッチドグ信号                    ２０７ｂ  照会パケット送信手段
２０７ｃ  照会パケット送信手段
８０  補助マイクロプロセッサ        ２０９ａ  監視許可異常処理手段
８４  補助ＲＡＭメモリ（正解情報格納手段）
８５    補助プログラムメモリ        ２０９ｃ  応答間隔異常処理手段
８９  シリアルインタフェース回路    ２０９ｄ  カウントアップ出力
２８１ａ〜２８４ａ  被試験対象プログラム
２８１ｂ〜２８４ｂ  模擬演算実行処理プログラム
２８１ｃ〜２８３ｃ  共通プログラム            ２１１  異常判定手段
２８１ｄ〜２８４ｄ  入力データテーブル
２８４ｃ・２８４ｅ  共通プログラム。
【図１】
2005031865.tif 000003
【図２】
2005031865.tif 000004
【図３】
2005031865.tif 000005
【図４】
2005031865.tif 000006
【図５】
2005031865.tif 000007
【図６】
2005031865.tif 000008
【図７】
2005031865.tif 000009
【図８】
2005031865.tif 000010
【図９】
2005031865.tif 000011
【図１０】
2005031865.tif 000012
【図１１】
2005031865.tif 000013
【図１２】
2005031865.tif 000014
【図１３】
2005031865.tif 000015