(57)【要約】【課題】マイコン内蔵センサのＣＰＵに起因する検出データの送信停止だけでなく、通信コントローラに起因する送信停止をも検出して動作復帰させる。【解決手段】センサで検出した検出値をディジタル値にてシリアル送信するマイコン内蔵センサにおいて、通信コントローラから外部通信線を駆動するドライバに送られるシリアル送信信号のパルス間隔をウォッチドッグタイマで監視する。所定時間以上パルスが途絶した場合には異常と判定してＣＰＵ及び通信コントローラをリセットし動作復帰させる。【選択図】  図１
2004252555.tif 000002
【特許請求の範囲】
【請求項１】
センサで検出した検出値をディジタル値にてシリアル送信するマイコン内蔵センサであって、センサと、所定周期で該センサで検出した検出値をディジタル値にして通信コントローラに渡し送信を指示する内蔵マイコンと、渡された検出値を所定の通信手順に従ってシリアル送信信号に変換して出力する前記通信コントローラと、該シリアル送信信号を受けて外部通信線を駆動するドライバと、第１のウォッチドッグタイマとを備えて構成され、該第１のウォッチドッグタイマは、前記通信コントローラのシリアル送信信号を入力信号として受け、該入力信号が所定時間以上途絶した場合には異常と判定し、前記内蔵マイコン及び通信コントローラをリセットして動作復帰させることを特徴とするマイコン内蔵センサ。
【請求項２】
請求項１に記載のマイコン内蔵センサであって、更に第２のウォッチドッグタイマを備え、前記内蔵マイコンは、前記通信コントローラに送信を指示する都度、ウォッチドッグ用パルスを出力し、前記第２のウォッチドッグタイマは該ウォッチドッグ用パルスを入力信号として受け、該入力信号が所定時間以上途絶した場合には異常と判定するものであり、前記第１、第２のウォッチドッグタイマの少なくとも何れか一方が異常を検出した場合には、前記内蔵マイコン及び前記通信コントローラをリセットして動作復帰させることを特徴とするマイコン内蔵センサ。
【請求項３】
前記外部通信線はＣＡＮ通信バスであり、前記通信コントローラはＣＡＮ通信手順に従って通信制御するＣＡＮ通信コントローラであり、前記ドライバはＣＡＮ通信バス用ドライバであることを特徴とする請求項１又は２に記載のマイコン内蔵センサ。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明はセンサで検出したアナログの物理量をディジタル値に変換し、検出データをシリアル伝送方式のＣＡＮ（Ｃｏｎｔｒｏｌｌｅｒ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）などのネットワーク、あるいは１対１、１対Ｎの同期、非同期シリアル通信線を介して他のマイコンあるいはコントローラに送信するマイコン内蔵センサであって、自己診断機能を有するものに関する。
【０００２】
【従来の技術】
近年、マイコン用ＣＰＵの小型化、低コスト化が著しく進展し、あらゆる制御装置、制御機器にマイコンが内蔵されるようになってきた。温度、圧力、加速度等の物理量を検出して電気信号に変換するセンサもその例外ではなく、検出精度の向上、アナログ信号配線の省略、ノイズ対策等を目的として、センサ毎にマイコンを内蔵させることが珍しくなくなってきた。このようなマイコン内蔵センサでは、アナログ値で検出した物理量をＡ／Ｄ変換してディジタル値に変え、ＬＡＮなどのネットワークを経由して他のマイコンやコントローラに送信することが行なわれる。
【０００３】
こうしたマイコン内蔵センサは、内蔵するマイコンのプログラムを工夫し、様々な補正を施すなどにより検出精度を向上させることができる。反面、ＣＰＵ、Ａ／Ｄ変換器、ＲＡＭ、ＲＯＭ等の多くのハードウェアを必要とし、加えてソフトウェアも必要とするため、予期せぬことから内蔵マイコンのＣＰＵが動作停止、暴走等を引き起こして検出データの送信が止まることが起こり得る。こうしたＣＰＵの動作停止、暴走等による検出データの送信停止を検出するための手段としては、従来からウォッチドッグタイマを使用する方式が広く用いられている。
【０００４】
図５は、このようなマイコン内蔵センサの従来の一般的な回路構成を示したものである。マイコン内蔵センサ１は、センサ２、内蔵マイコン３、通信コントローラ４、トランシーバ５、ウォッチドッグタイマ６等により構成される。ＣＰＵ３ａは、予めＲＯＭ３ｂに格納されているプログラムに従い、センサ２が検出したアナログの物理量をＡ／Ｄ変換器３ｃによりディジタル値に変換してＲＡＭ３ｄに一旦格納する。そして補正等の演算を施して検出データとし、それを通信コントローラ４に渡し、ネットワーク７経由で他のマイコン等に送信指示する。
【０００５】
通信コントローラ４は、内蔵する所定の通信プロトコルに従い、受け取った検出データをシリアル信号にして順次、その出力端子Ｄより出力しトランシーバ５内のドライバ５ａに送る。ドライバ５ａは、通信コントローラ４から送られてきたシリアル送信信号を、ネットワークを形成する通信バス７の仕様に合わせた信号レベルに変換する。そして通信バス７を駆動して、通信バス７に接続された他のマイコンやコントローラに伝える。
【０００６】
図５中の通信バス７としては、例えば、ＣＡＮ（Ｃｏｎｔｒｏｌｌｅｒ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）通信バスが用いられ、その場合にはトランシーバ５はＣＡＮ用トランシーバが、通信コントローラ４にはＣＡＮ用通信コントローラが使用される。ＣＡＮ通信バス７は、２本の線で構成される直列バスシステムである。ＣＡＮは、当初車載系のＬＡＮとして開発されたものであるが、現在ではその信頼性や洗練された故障検出機能が認められ、幅広い分野で注目されているネットワークである。
【０００７】
内蔵マイコン３のＣＰＵ３ａは、検出データを通信コントローラ４に渡し、送信を指示した後に、自己の出力ポートにウォッチドッグ用パルスを発生させてウォッチドッグタイマ６に送る。ＣＰＵ３ａは、このような検出データの生成と送出、ウォッチドッグ用パルスの発生を所定周期で繰り返す。ウォッチドッグタイマ６は、ＣＰＵ３ａより送られたパルスの間隔を内蔵のウォッチドッグタイマで監視する。そして、所定時間以上パルスが断絶した場合には、ＣＰＵ３ａの動作停止又は暴走による送信停止と判定し、ＣＰＵ３ａと通信コントローラ４にリセットパルスを送ってリセットさせ、動作復帰させる。
【０００８】
従来はこのような方式で、ＣＰＵ３ａの動作停止や暴走による送信停止の検出が行なわれてきた。しかし、このような従来の方式は、ソフトウェアの不具合やノイズなどに起因するＣＰＵ３ａの検出データの送信停止の検出には有効であるが、通信コントローラ４などの異常停止による送信停止は検出することができない。
【０００９】
図６は、ＣＰＵ３ａから出力されるウォッチドッグ用パルス及び、通信コントローラ４の出力端子Ｄからトランシーバ５内のドライバ５ａに送られるシリアル送信信号の波形を示したものである。ＣＰＵ３ａからは、所定周期でウォッチドッグ用パルスが出力される。通信コントローラ４は所定周期でＣＰＵ３ａから渡される検出データをシリアル送信信号に変換してドライバ５ａに送る。従って、通信コントローラ４の出力端子Ｄからは、図中のシリアル送信信号に示すような送信パルスが出力される。
【００１０】
ＣＰＵ３ａが正常に動作している間は、ウォッチドッグ用パルスが所定周期でウォッチドッグタイマ６に入力されるため、ウォッチドッグタイマ６は異常を検出せず、送信は正常に実行されているものと判断する。しかしながら、ＣＰＵ３ａが正常に動作していたとしても、例えば通信コントローラ４が何らかの理由により動作停止、暴走等を引き起こして送信が停止すると、図中の送信停止の部分に示すように、ドライバ５ａにパルスが送られなくなる。ウォッチドッグタイマ６は、ＣＰＵ３ａの動作のみを監視しているため、このような理由による送信停止を検出することができない。従って、リセットして動作復帰させることができない。このような事態が生ずると、センサ２で検出された検出データは、最早、他のマイコンやコントローラに伝送されなくなる。検出データの送信が停止することは、センサ２自体の機能が停止したことに等しい。その結果は、その検出データ使用している他のマイコンやコントローラで行なわれているデータ処理や制御の停止、あるいは誤動作、暴走といった事態を引き起こすことになる。
【００１１】
【特許文献１】
特開２００２−８９３３６号報
【００１２】
【特許文献２】
特開２０００−１４８５４２号報
【００１３】
【発明が解決しようとする課題】
本発明は、従来技術の有するこうした問題点を解決するためになされたもので、その目的は、センサで検出した検出データを、シリアル通信バスやシリアル通信線を経由して他のマイコン等に送信する方式のマイコン内蔵センサにおいて、内蔵マイコンのＣＰＵに起因する検出データの送信停止だけでなく、通信コントローラに起因する送信停止をも検出する。そして、ＣＰＵと通信コントローラをリセットして動作復帰させることのできる自己診断機能を有するマイコン内蔵センサを提供することにある。
【００１４】
【課題を解決するための手段】
前記目的を達成するための請求項１に記載の発明は、センサで検出した検出値をディジタル値にてシリアル送信するマイコン内蔵センサである。該マイコン内蔵センサは、センサと、所定周期で該センサで検出した検出値をディジタル値にして通信コントローラに渡し送信を指示する内蔵マイコンと、渡された検出値を所定の通信手順に従ってシリアル送信信号に変換して出力する通信コントローラと、該シリアル送信信号を受けて外部通信線を駆動するドライバと、第１のウォッチドッグタイマとを備えて構成される。そして、第１のウォッチドッグタイマは、通信コントローラのシリアル送信信号を入力信号として受け、該入力信号が所定時間以上途絶した場合には異常と判定し、内蔵マイコン及び通信コントローラの双方をリセットして動作復帰させることを特徴とするマイコン内蔵センサである。
【００１５】
このように構成することにより、内蔵マイコンが異常を生じて検出データを送信しなくなった場合のみならず、通信コントローラの異常により検出データが送信されなくなった異常状態をも検出可能になる。そして、その様な異常状態が発生した場合には、内蔵マイコンと通信コントローラの双方をリセットして初期化し、その後、再起動して動作復帰させることが可能となる。
【００１６】
また、請求項２に記載の発明は、請求項１に記載のマイコン内蔵センサであって、更に第２のウォッチドッグタイマを備える。内蔵マイコンは、通信コントローラに送信を指示する都度、ウォッチドッグ用パルスを出力する。第２のウォッチドッグタイマは該ウォッチドッグ用パルスを入力信号として受け、該入力信号が所定時間以上途絶した場合には異常と判定する。そして、前記第１及び第２のウォッチドッグタイマの少なくとも何れか一方が異常を検出した場合には、内蔵マイコン及び通信コントローラをリセットして動作復帰させることを特徴とするマイコン内蔵センサである。
【００１７】
このように構成することにより、請求項１に記載の発明の場合の効果に加え、何らかの理由により内蔵マイコンが検出データを送信しなくなったにも関わらず、通信コントローラが暴走して異常信号を出力し続ける異常状態の検出も可能になる。そして、そのような場合にも内蔵マイコン及び通信コントローラをリセットして動作復帰させることが可能になる。
【００１８】
また、請求項３に記載の発明は、前記外部通信線としてＣＡＮ通信バスを採用し、通信コントローラとしてＣＡＮ通信手順に従って通信制御するＣＡＮ通信コントローラを使用し、ドライバとしてＣＡＮ通信バス用ドライバを採用したことを特徴とする請求項１又は２に記載のマイコン内蔵センサである。
【００１９】
このように構成することで、ＣＡＮ通信により検出データを送信するマイコン内蔵センサの自己診断と、異常が発生した場合の動作復帰が可能となる。
【００２０】
【発明の実施の形態】
（第１の実施形態）
図１、図２を参照して本発明の第１の実施形態を説明する。なお、本実施形態は、従来技術として説明した図５の回路構成と類似点が多いので、同一又は相当部分には同一符号が付してある。本実施形態のマイコン内蔵センサ１は、センサ２、内蔵マイコン３、通信コントローラ４、トランシーバ５、第１のウォッチドッグタイマ６ａを備えて構成される。
【００２１】
センサ２は温度、加速度、圧力等の物理量を電気信号の形で検出するセンサであり、その出力信号はＡ／Ｄ変換器３ｃに入力される。内蔵マイコン３は、ＣＰＵ３ａ、Ａ／Ｄ変換器３ｃ、ＲＯＭ３ｂ、ＲＡＭ３ｄを備えて構成され、それらはバス３ｅにより相互接続されている。ＣＰＵ３ａが実行するプログラムは、ＲＯＭ３ｂに予め記憶されている。
【００２２】
ＣＰＵ３ａは、ＲＯＭ３ｂに記憶されているプログラムを実行し、センサ２が検出した検出信号をＡ／Ｄ変換器３ｃにてディジタル値に変換し、一旦、ＲＡＭ３ｄに格納する。ディジタル値に変換された検出値は、更にプログラムに従って補正計算を始めとする必要な計算処理が加えられ、目的とする物理量の検出データが算出される。
【００２３】
算出された検出データは、バス３ｅを経由して通信コントローラ４内の図示しない送信レジスタに渡される。通信コントローラ４は、所定の通信手順（通信プロトコル）に従って、送信レジスタ内のデータをシリアル信号にして出力端子Ｄより出力するものである。本実施形態では、ＣＡＮ（Ｃｏｎｔｒｏｌｌｅｒ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）規格によるネットワークを介してデータ送信する方式を採用しており、通信コントローラ４はＣＡＮ通信用の通信コントローラである。送信レジスタに検出データがセットされた後、ＣＰＵ３ａより送信開始の指示が出されると、通信コントローラ４は、ＣＡＮ通信プロトコルに従って送信レジスタ内検出データをシリアル送信信号に変換して出力端子Ｄから論理レベルで出力する。
【００２４】
出力端子Ｄより出力された論理レベルのシリアル送信信号は、トランシーバ５内のドライバ５ａに入力される。トランシーバ５ａは、ＣＡＮ通信用の通信コントローラと通信線であるＣＡＮ通信バス７との間をインタフェースするためのもので、ドライバ５ａとレシーバ５ｂとにより構成される。ＣＡＮ通信バス７は、２本の線で構成される直列バスである。ドライバ５ａの出力は差動出力となっており、受け取った論理レベルのシリアル送信信号をＣＡＮ通信バス７の信号レベルに変換してＣＡＮ通信バス７を駆動する。これにより、センサ２で検出された物理量の検出データは、ＣＡＮ通信バス７に接続された他のマイコン、通信コントローラ等に送信されて行く。
【００２５】
図２は、通信コントローラ４よりドライバ５ａに出力されるシリアル送信信号波形と、ＣＰＵ３ａと通信コントローラ４のリセット入力端子に加えられるリセット信号の波形を示したものである。電源が投入された直後には図示しないリセット信号によりＣＰＵ３ａ、通信コントローラ４が共にリセットされて初期化され、続いてＣＰＵ３ａがＲＯＭ３ｂ内のプログラムを最初から実行開始する。
【００２６】
ＣＰＵ３ａがセンサ２より得た検出データを通信コントローラ４の送信レジスタに渡し、送信開始を指示すると通信コントローラ４が送信を開始する。すると出力端子Ｄからは、図２のシリアル送信信号に示すような波形信号が出力される。ＣＰＵ３ａは、所定の送信周期Ｔで検出データを送るようにプログラムされているので、シリアル送信信号の波形も同じ送信周期Ｔで繰り返し出力される。
【００２７】
このシリアル送信信号は、第１のウォッチドッグタイマ６ａのパルス入力端子にも入力される。第１のウォッチドッグタイマ６ａは、パルス入力端子に入力された信号のパルス間隔を内蔵のウォッチドッグタイマで監視する。そして、所定時間Ｔ１以上パルスが入力されない場合には、異常発生と判定してその出力であるリセット端子よりリセットパルスを出力する。このリセットパルス信号は、ＣＰＵ３ａと通信コントローラ４のリセット入力端子に入力される。
【００２８】
通信コントローラ４は、リセットパルス信号を受けると初期化されてＣＰＵ３ａからの新たな指令待ちの状態となる。ＣＰＵ３ａもリセットパルス信号を受けると初期化され、ＲＯＭ３ｂのプログラムを最初から実行開始する。即ち、シリアル送信信号が所定時間Ｔ１以上途絶すると、第１のウォッチドッグタイマ６ａよりリセットパルス信号が出力されてマイコン内蔵センサは一旦初期化され、その後、再起動してセンサ２による検出データの送信が再開（動作復帰）される。
【００２９】
図５に示した前述の従来回路方式では、ＣＰＵ３ａが動作停止、暴走等の異常を起こしてウォッチドッグ用パルスが出力されなくなったことは検出できた。しかし、ＣＰＵ３ａは正常に動作しているにも関わらず、通信コントローラ４が何らかの理由でシリアル送信信号を出力しなくなった異常状態を検出することはできない不都合があった。これに対して本実施形態の回路方式の場合には、ＣＰＵ３ａが異常を生じた場合のみならず、通信コントローラ４のみが動作停止、暴走等を引き起こして検出データの送信をしなくなった異常状態をも検出することができる。そして、その様な異常状態が発生した場合には、ＣＰＵ３ａと通信コントローラ４の双方をリセットして初期化し、その後、再起動して動作復帰させる。このため、センサ２の検出データの送信が途絶えるという不具合がなくなる。
【００３０】
（第２の実施形態）
図３、図４を参照して本発明の第２の実施形態を説明する。なお、本実施形態は、第１の実施形態である図１の回路構成と類似点が多いので、同一又は相当部分には同一符号が付してある。
【００３１】
図３に示す本実施形態のマイコン内蔵センサ１の回路構成が、第１の実施形態の図１の回路構成と異なる点は、第２のウォッチドッグタイマ６ｂと２入力ＯＲ回路８とが追加された点である。本実施形態におけるＣＰＵ３ａは、従来技術で説明した場合と同様に、検出データを通信コントローラ４内の送信レジスタに渡し送信開始を指示した後に、自己の出力ポートからウォッチドッグ用パルスを出力する。そのウォッチドッグ用パルスは、第２のウォッチドッグタイマ６ｂのパルス入力端子に入力される。従って、第２のウォッチドッグタイマ６ｂは、従来技術で説明した場合と同様に、ＣＰＵ３ａの異常停止を検出してリセットパルスを出力する。
【００３２】
第１のウォッチドッグタイマ６ａのパルス入力端子には、第１の実施形態の場合と同様に、通信コントローラ４よりドライバ５ａに送られるシリアル送信信号が入力され、監視される。従って、第１のウォッチドッグタイマ６ａは、第１の実施形態の場合と同様に、ＣＰＵ３ａの異常停止のみならず、通信コントローラ４の異常停止をも検出してリセットパルスを出力すする。
【００３３】
第１、第２のウォッチドッグタイマ６ａ、６ｂの出力するリセットパルスは、共に２入力ＯＲ回路８に入力される。そして、２入力ＯＲ回路８の出力信号は、ＣＰＵ３ａと通信コントローラ４の各リセット入力端子に入力される。従って、第１、第２のウォッチドッグタイマ６ａ、６ｂの少なくとも一方がリセットパルスを出力した時には、ＣＰＵ３ａと通信コントローラ４が共にリセットにより初期化され、その後、再起動して動作復帰する。
【００３４】
本実施形態が、第１の実施形態の回路方式と比較して優れている点は、何らかの理由によりＣＰＵ３ａが動作停止したにも関わらず、通信コントローラ４が暴走してその出力端子Ｄより異常なパルス信号を出力し続ける状態をも検出できる点にある。このような状態が発生した場合の監視信号の波形を図４に示す。このような異常状態が発生した場合には、第１のウォッチドッグタイマ６ａがウォッチドッグ用パルスが途絶したことを検出してリセットパルスを出力する。従って、そのリセットパルス信号により、初期化と動作復帰が行なわれる。こうした異常状態が発生することは極めて稀と考えられるため、通常は第１の実施形態の回路方式で十分であるが、第１の実施形態の回路方式では検出できないこうした異常状態も検出できる点で、本実施形態は更に優れた効果を奏する。
【００３５】
以上、本発明者によってなされた発明を２つの実施形態に基づき具体的に説明したが、本発明は、上記実施形態に限定されるものではなく、その要旨を逸脱しない範囲で種々変更可能であることはいうまでもない。例えば、前記２つの実施形態では、ＣＡＮ規格によるネットワークを介して検出データの送信を行なう方式を説明したが、通信形態はＣＡＮ規格による通信方式に限定されない。通信コントローラより、外部通信線を駆動するドライバに向けて検出データがシリアル送信される送信方式であれば、本発明を適用すること可能である。
【００３６】
また、１対１の同期、非同期通信により検出データを他の装置に送信する場合には、ドライバを通信コントローラに内蔵して外部に設けない構成であってもよい。この場合には、通信コントローラの出力信号をウォッチドッグタイマに入力することで本発明と同様の効果を得ることができる。
【００３７】
更に、検出データをシリアル送信するのでなく、パラレルバスを使用してパラレル送信するようにしてもよい。例えば、パラレルバスのバス幅が１６ビットで検出データが１２ビットの場合には、余っているビットの内の何れか１つのビットには常に論理１が出力されるように送信データを設定する。そして、そのビットに対応するパラレルバスのビット線を駆動するドライバへの入力信号をウォッチドッグタイマのパルス入力端子に入力すれば、本発明と同様の効果を得ることが可能となる。
【図面の簡単な説明】
【図１】本発明の第１の実施形態に係るマイコン内蔵センサの電気的構成図である。
【図２】本発明の第１の実施形態による送信停止検出を説明する波形図である。
【図３】本発明の第２の実施形態に係る図１相当図である。
【図４】本発明の第２の実施形態に係る図２相当図である。
【図５】従来技術に係る図１相当図である。
【図６】従来技術に係る図２相当図である。
【符号の説明】
図面中、１はマイコン内蔵センサ、２はセンサ、３は内蔵マイコン、３ａはＣＰＵ、４は通信コントローラ（ＣＡＮ通信コントローラ）、５はトランシーバ、５ａはドライバ（ＣＡＮ通信バス用ドライバ）、７は外部通信線（ＣＡＮ通信バス）、６ａは第１のウォッチドッグタイマ、６ｂは第２のウォッチドッグタイマを示す。
【図１】
2004252555.tif 000003
【図２】
2004252555.tif 000004
【図３】
2004252555.tif 000005
【図４】
2004252555.tif 000006
【図５】
2004252555.tif 000007
【図６】
2004252555.tif 000008