(57)【特許請求の範囲】
【請求項１】
少なくとも２つの分散形制御装置（１０，１１，１２）間のデータの周期的伝送方法であって、
前記少なくとも２つの制御装置（１０，１１，１２）は、１つのシリアルバスを介して相互に接続されており、前記少なくとも２つの制御装置（１０，１１，１２）はそれぞれ少なくとも１つのシリアルインターフェースと計算／制御ユニットを有しており、
前記少なくとも２つの制御装置（１０，１１，１２）のうちの１つの計算／制御ユニットからは周期的にデータが供給される形式の方法において、
ａ）前記メッセージを送信する少なくとも２つの制御装置のうちの１つの計算／制御ユニットを用いて予め定められた時点で、前記メッセージを送信する少なくとも２つの制御装置（１０，１１，１２）のうちの１つ（１０）のシリアルインターフェースに送信要求を供給するステップと、
ｂ）前記ステップａ）による供給の後で、前記メッセージを送信する少なくとも２つの制御装置（１０，１１，１２）のうちの１つ（１０）に対し更新されたデータを周期的に引き渡し、シリアルバスを介したメッセージの送信に先だってメッセージ内のデータを当該の更新されたデータに置換えるステップと、
ｃ）前記ステップｂ）の後で、メッセージを送信する少なくとも２つの制御装置（１０，１１，１２）のうちの１つ（１０）のシリアルインターフェースを用いて、当該少なくとも２つの制御装置（１０，１１，１２）のうちの他の装置に前記シリアルバスを介してメッセージを送信するステップとが含まれ、
これによって前記送信要求と実際の送信との間の介在期間中に更新されたデータないし最新のデータが伝送されるようにしたことを特徴とする、少なくとも２つの分散形制御装置間のデータの周期的伝送方法。
【請求項２】
前記シリアルバスはＣＡＮバスであり、前記データは同期データを含んでいる、請求項１記載の方法。
【請求項３】
少なくとも２つの制御装置（１０，１１，１２）においてそれぞれ１つのカウンタ（１９）が設けられ、データを含んだメッセージを受信する前記少なくとも２つの制御装置（１０，１１，１２）の１つ（１１，１２）のカウンタ（１９）が受信データに基づいて所定の値にセットされる、請求項１記載の方法。
【請求項４】
前記カウンタは、角度カウンタである、請求項３記載の方法。
【請求項５】
前記所定の値は、メッセージを受信する前記少なくとも２つの制御装置の１つにおいて受信されたデータによって特定される、請求項３記載の方法。
【請求項６】
シリアルバスに接続された少なくとも２つの制御装置（１０，１１，１２）の間のシリアルバスを介したデータの周期的な伝送方法に使用するバス加入者ステーションであって、前記シリアルバスを介して少なくとも２つの制御装置間で引き渡される送信メッセージに取入れられたデータは、前記少なくとも２つの制御装置（１０，１１，１２）のうちの１つ（１０）において前記伝送の時点まで周期的に更新されたデータである形式のバス加入者ステーションにおいて、
計算／制御ユニット（１５，１８）を有しており、該計算／制御ユニット（１５，１８）は、シリアルバス（２０）を介した送信に対し更新されたデータを周期的に供給する手段を含んでおり、
シリアルインターフェース（１７）を有しており、該シリアルインターフェース（１７）にはシリアルバス（２０）が接続可能であり、さらに前記シリアルインターフェースは第１のシフトレジスタ（３０）を有しており、該第１のシフトレジスタには、送信すべきデータが記憶されており、
制御回路を有しており、該制御回路は、前記データが第１のシフトレジスタ（３０）に記憶された後で、当該第１のシフトレジスタ（３０）内に先に記憶されているデータの少なくとも一部を、送信要求と実際の送信との間の介在期間中に前記計算／制御ユニット（１５，１８）によって最後に更新された最新データに置換する手段（３１，３６）を含んでいることを特徴とするバス加入者ステーション。
【請求項７】
先に記憶されているデータの少なくとも一部を更新された最新データに置換する前記手段（３６，３１）は、第２のシフトレジスタ（３６）と切換えスイッチ（３１）によって構成されており、前記第２のシフトレジスタ（３６）内には所定の時点（ｔ９）で更新されたデータが記憶されており、前記切換えスイッチ（３１）は、第１の切換え状態（ａ）と第２の切換え状態（ｂ）を有しており、前記第１の切換状態（ａ）においては第１のシフトレジスタ（３０）の出力側をシリアルバス（２０）に接続させ、第２の切換状態（ｂ）においては第２のシフトレジスタ（３６）の出力側をシリアルバス（２０）に接続させる、請求項６記載のバス加入者ステーション。
【請求項８】
前記切換えスイッチ（３１）は、マルチプレクサである、請求項７記載のバス加入者ステーション。
【請求項９】
前記シリアルインターフェース（１７）は、ビットカウンタ（４５）を含んでおり、該ビットカウンタ（４５）は、メッセージ毎に送信されたビットを計数する手段を有しており、さらに前記ビットカウンタ（４５）は、更新されたデータが第２のシフトレジスタ（３６）へ記憶された瞬間と、前記切換スイッチ（３１）が前記２つの切換え状態（ａ，ｂ）の間で切り替わる別の瞬間を定める手段を含んでいる、請求項６記載のバス加入者ステーション。
【請求項１０】
前記バス加入者ステーションはさらに、クランク軸を含めた内燃機関とエンジン回転数を制御する手段と、前記クランク軸の回転変位を測定する手段を含んでおり、前記更新されたデータは、内燃機関のクランク軸の瞬時の位置の少なくとも１つとエンジン回転数の瞬時の値を表している、請求項６記載のバス加入者ステーション。
【請求項１１】
前記バス加入者ステーションは、連続的にカウントするさらなる付加的なカウンタ（５０）を含んでおり、該カウンタ（５０）は、所定のカウント間隔の経過毎に信号をシリアルインターフェース（１７）に送信する手段を含み、該シリアルインターフェース（１７）は、該シリアルインターフェース（１７）の状態レジスタ（４１）において前記信号に応じて送信要求ビットをセットする手段を含んでいる、請求項６記載のバス加入者ステーション。
【請求項１２】
シリアルバスに接続された少なくとも２つの制御装置（１０，１１，１２）の間のシリアルバスを介したデータの周期的な伝送方法に使用するバス加入者ステーションであって、前記シリアルバスを介して少なくとも２つの制御装置間で引き渡される送信メッセージに取入れられたデータは、前記少なくとも２つの制御装置（１０，１１，１２）のうちの１つ（１０）において前記伝送の時点まで周期的に更新されたデータである形式のバス加入者ステーションにおいて、
シリアルインターフェース（１７）を有しており、該シリアルインターフェース（１７）にはシリアルバス（２０）が接続可能であり、前記シリアルインターフェースは第１のシフトレジスタ（３０）を有しており、該第１のシフトレジスタ（３０）内には、前記シリアルバス（２０）を介して受信したデータが記憶されており、第１のシフトレジスタへの受信データの記憶と平行する記憶のための第２のシフトレジスタ（３６）を有し、さらに第１のシフトレジスタへの受信データを第２のシフトレジスタへ記憶させるための手段を有していることを特徴とするバス加入者ステーション。
【請求項１３】
前記バス加入者ステーションはさらに、受信したデータのエラーの有無を検査する手段と、該検査中に受信したデータのエラーフリー状態が確定した場合にのみ第２のシフトレジスタ（３６）の記憶されているデータを処理のために受入れる手段を含んでいる、請求項１２記載のバス加入者ステーション。
【請求項１４】
前記シリアルインターフェース（１７）はビットカウンタ（４５）を有し、該ビットカウンタ（４５）はデータを含んだメッセージ毎に受信されたビットを計数する手段と、前記ビットカウンタ（４５）は、第２のシフトレジスタ（３６）へのデータの記憶開始の瞬間とデータの記憶終了の瞬間を確定するための手段とを含んでいる、請求項１２記載のバス加入者ステーション。
【請求項１５】
前記バス加入者ステーションはさらに、クランク軸を含んだ内燃機関を制御する手段と、シリアルバス（２０）を介して周期的にデータを受信する手段とを含み、該データには、前記クランク軸の瞬時の位置の少なくとも１つと内燃機関の瞬時の回転数が含まれる、請求項１２記載のバス加入者ステーション。
【請求項１６】
前記内燃機関を制御する手段は、点火制御装置を含んでいる、請求項１５記載のバス加入者ステーション。
【請求項１７】
前記内燃機関を制御する手段は、噴射制御装置を含んでいる、請求項１５記載のバス加入者ステーション。
【発明の詳細な説明】
従来の技術
本発明は、請求の範囲第１項の上位概念による、少なくとも２つの分散して動作する制御装置間のデータ（例えば同期データ）の周期的伝送方法に関する。少なくとも２つの分散形制御装置間でデータを周期的に伝送するための方法は既に公知文献“Ｂｕｓｓｙｓｔｅｍ  ｆｕｅｒ  Ｋｆｚ−Ｓｔｅｕｅｒｇｅｒａｅｔｅ，ｖｏｎ  Ｗ．Ｂｏｔｚｅｎｈａｒｄｔ，Ｍ．Ｌｉｔｓｃｈｅｌ  ｕｎｄ  Ｊ．Ｕｎｒｕｈ，ＶＤＩ  Ｂｅｒｉｃｈｔｅ  Ｎｒ．６１２，１９８６，４５９頁〜４７０頁”から公知である。この種の方法では一例として内燃機関のエンジン回転数がエンジン制御部によって検出され、ＣＡＮ−バスシステムを介して変速機制御部とドライバーインフォメーションシステムに周期的に伝送されている。内燃機関のエンジン回転数は内燃機関の動作中は常時変動の影響を受ける。それ故にエンジン回転数は短い時間間隔で周期的にエンジン制御装置から変速機制御部やドライバーインフォメーションシステムに伝送されなければならない。回転数データの伝送は回転数データを含んだメッセージを用いて行われる。エンジン制御装置のＣＰＵは、接続された回転数センサの測定信号からエンジン回転数データを周期的に算出する。エンジン制御装置のＣＰＵは、制御装置のＣＡＮインターフェースへ回転数データに対する伝送要求を提起する。その際エンジン制御装置のＣＰＵは、伝送すべきデータをＣＡＮインターフェースのメモリにファイルし、ＣＡＮインターフェースの状態レジスタにて伝送要求ビットをセットする。しかしながら伝送要求と、実際の回転数データの伝送との間では最悪の場合には大きな時間差が生じる。
発明の利点
それに対して請求の範囲第１項の特徴部分に記載の本発明は、次のような利点を有する。すなわち伝送データのアクチュアリティ（即時性）が著しく向上される利点を有する。
さらなる別の利点は、即時性のロスを抑えるのにリアルデータ伝送のためのデータプロトコルへの介入的操作を何も必要としないことである。その他にもシリアルバスを介すことにより任意にメッセージが交換可能である。
本発明の別の有利な実施例及び改善例は従属請求項に記載される。
有利には、周期的にデータが伝送される少なくとも２つの制御装置にそれぞれ１つのカウンタ、例えば時間カウンタ又は角度カウンタが連続的にカウントされ、データを受信する制御装置におけるカウンタが受信データに基づいて所定の値にセットされる。それにより複数の制御装置間の同期が容易に可能となる。特に有利には所定の値が受信データによって直接表される。それによって初めて、時間遅延を付加的に引き起こすような長い計算を実施する必要がなくなる。
さらに有利にはデータを送信する制御装置からのデータの伝送に対する時間が次のように考慮される。すなわち最後に伝送されたデータが将来に向かって射影的に変換されるような値を表すように考慮される。この場合この値は、同期データを伝送するメッセージの予測受信時点でのデータ送信側制御装置のカウント状態に相応する。これにより伝送データの瞬時性のロスもさらに低減され得る。問題となるような瞬時性ロスはもはや内燃機関のクランク軸の回転数が比較的大きなダイナミック領域において大きな変動の影響を受けている場合にしか生じない。
このような考慮を簡単に行うために有利には、データを送信する制御装置において先行するデータの伝送期間中に生じたカウントアップ又はカウントダウンが計数され、この値が後続のデータ伝送の際に瞬時のカウント状態に加算される。
前記時間差を考慮するさらなる手段として、データを送信する制御装置において、データ伝送のための時間が測定され、この測定された時間値の持続時間に対して測定窓が周期的に生ぜしめられ、この時間窓の中で発生したカウントアップ又はカウントダウンが計数され、各瞬時値が後続の同期データ伝送の際に瞬時のカウント状態に加算される。それによりエンジンのダイナミック特性が良好に考慮される。
同様に有利には、データを受信する制御装置からのデータの伝送に対する時間が次のように考慮される。すなわちデータを送信する制御装置の、データを伝送するメッセージの完全なる受信時点でのカウント状態に相応するカウント状態が受信側制御装置のカウンタで生じるような受信データの補正がなされるように考慮される。この場合伝送時間の考慮はデータを受信する制御装置によっても行われる。それに対して有利には、制御装置がデータの伝送期間中にそのカウンタで生じたカウントアップ又はカウントダウンを計数して、受信データから生じた値に加算し、それによって生じた値に前記カウンタをセットする。送信側制御装置のカウンタと受信側制御装置のカウンタとの間の位相差は内燃機関の回転数に大きな動的変化が生じない限り問題にはならない。
周期的なデータ伝送方法を使用するバス加入者ステーションに対して有利には、当該バス加入者ステーションが次のような手段を有する。すなわち送信ジョブの実行の際に事前にネットワークインターフェースのシフトレジスタに記憶されたデータの一部を、介在期間中に実際化された最新データに置換する手段を有している。請求の範囲第１１項及び１２項には著しく高い回路コストを必要としないバス加入者ステーションの有利な実施形態が記載されている。
バス加入者ステーションの計算／制御ユニットが送信ジョブを周期的にシリアルインターフェースに送出するように構成されている。この場合制御ユニットはこれに対して連続的にカウントするカウンタを有している。このカウンタは所定のカウンタ間隔の経過の後でそのつど１つの信号を送出する。この信号によってシリアルインタフェースの状態レジスタにて送信要求ビットがセットされる。それによりＣＰＵがその目的から開放され、実際のデータの準備と送信要求ビットのセットとの間の時間遅延はＣＰＵの待ち時間分だけ低減される。
周期的なデータ伝送方法を使用するさらに別の有利なバス加入者ステーションでは、メッセージの受信の際に受信データの少なくとも一部を平行して第２のシフトレジスタに記憶する手段を有している。このデータの一部分は当該データを必要とするデータ処理ユニットで遅滞なく得られる。それによってバス加入者ステーションのＣＰＵは、シリアルインターフェースからの受信データをピックアップして主要なデータ処理ユニットに書き込むことによる負担を初めに受けなくてもよくなる。これによって、ＣＰＵを介したデータのデータ処理ユニットへのピックアップ過程により生じる時間遅延が解消される。
誤ったデータをデータ処理ユニットへ到達させないために有利には、シリアルインターフェースが受信したメッセージの誤りを監視し、メッセージが誤りなく伝送されていることが検出された場合にのみ第２のシフトレジスタに記憶されているデータの処理が行われる。
図面
本発明の実施例は図面に示され、以下の明細書で詳細に説明される。
図１は、従来技術から公知の方法による通常のメッセージ伝送に対する時間ダイヤグラムである。
図２は分散されたエンジン管理システムに対する制御装置の接続関係を示した図である。
図３は本発明の方法によるメッセージの伝送に対する信号ダイヤグラムである。
図４は制御装置接続関係における第１の制御装置のブロック回路図である。
図５はＣＡＮプロトコルに従って伝送されたメッセージデータの信号ダイヤグラムである。
図６は本発明による伝送データの補正を表す信号ダイヤグラムである。
図７は制御装置接続関係における第２の制御装置のブロック回路図である。
図８は図７に相応する制御ユニットに第２の制御ユニットが付属している関係を示した図である。
図９は図６に対する変化例を示した信号ダイヤグラムである。
実施例の説明
まず初めに従来技術に基づく適用例における回転数データのデータ伝送の遅延に対してどのような影響因子ないし作用が関与するかを図１に基づき説明する。時点ｔ１では回転数の検出がエンジン制御装置のＣＰＵで行われる。時点ｔ２ではエンジン制御装置のＣＰＵがＣＡＮインタフェースの状態レジスタにて伝送要求ビットをセットする。ＣＡＮインターフェースは送信要求を直ぐに果たすことができない。なぜならバスがその前に開始された他のメッセージの伝送によってまだ塞がっているからである。時点ｔ３において初めてＣＡＮインターフェースは、バスが空いていること及び回転数データを伴ったメッセージの伝送が開始されたことを識別する。時点ｔ４ではＣＡＮインターフェースが、回転数データを伴ったメッセージの伝送の際にエラーが発生したことを識別する。それによりＣＡＮインターフェースはメッセージを再度新たに伝送しなければならない。その後時点ｔ５にてメッセージが完全に伝送される。しかしながら変速機制御部は受信したメッセージを時点ｔ６において初めて受け取る。なぜなら変速機制御部のＣＰＵは、メッセージの受信に関する変速機制御装置のＣＡＮインターフェースの割込みを受け入れる前にまず、開始された計算を終了させるからである。それ故に時点ｔ５〜ｔ６の時間遅延は、変速機制御部のＣＰＵがＣＡＮインターフェースをポーリング方式に従ってメッセージ受信の有無に関する問合せを行っていることにも起因する。時点ｔ２とｔ１の時間差はＣＰＵの待ち時間としても表される。また時点ｔ３とｔ２の時間差はバスの待ち時間としても表される。
総じて回転数検出と、回転数データの伝送との間には変速機制御装置側ないしはエラーインフォメーションシステム側で時点ｔ１〜ｔ６までの時間遅延が生じる。
このような時間差は、従来技術で示された適用例では決定的な問題にはならない。なぜなら変速機制御部やエラーインフォメーションシステムに対する回転数データの提供は、非常に短時間で更新されなくてもよいからである。しかしながらこのような時間遅延は、例えば分散されたエンジン管理システムの場合にはエンジン制御に悪影響を及ぼす（例えば燃費、摩耗、排ガス組成等）。分散されたエンジン管理システムでは中央制御装置がシリアルバスを介して例えば燃料噴射制御装置や点火制御装置に接続されている。中央制御装置は測定値検出を行い、そこから点火制御装置に対しては点火時期やドエルアングルを算出し、燃料噴射制御装置に対しては燃料噴射時間を計算する。これらの算出値はシリアルバスを介して点火ないし燃料噴射制御装置に伝送される。しかしながら点火命令や燃料噴射命令は、最適なエンジン制御のためには内燃機関のクランク軸の回転連動に同期してトリガされなければならない。この場合は点火制御装置や燃料噴射装置も内燃機関のクランク軸の実際の位置に関する情報を得る必要がある。しかしながこれらの制御装置の各々が固有の回転数検出を行なわなくてもよいようにするために、最近では次のような提案が実施されている。すなわち中央制御装置のみが内燃機関のクランク軸の位置を検出し、この情報をシリアルバスを介して点火ないし燃料噴射制御装置に伝送することである。しかしながらこれには伝送データの更新に係る非常に大きな問題があり、そのため回転数検出と、受信側制御装置での伝送された回転数データの受取との間の時間遅延をできるだけ最小化することが望まれている。
図２には分散されたエンジン管理システムのメインモジュールが符号１０で示されている。符号１１はエンジン管理システムの点火モジュールを示し、符号１２は同システムの燃料噴射モジュールを示している。メインモジュール１０、点火モジュール１１、燃料噴射モジュール１２は、シリアルバス２０を介して相互に接続されている。シリアルバス２０は例えばＣＡＮバスとして構成され得る。この“ＣＡＮ”とは“Ｃｏｎｔｒｏｌｌｅｒ  Ａｒｅａ  Ｎｅｔｗｏｒｋ”の略である。この特殊なバスシステムは自動車専用に特別に開発されたものである。このバスシステムの詳細は従来技術から十分に公知なものである。これについては特にドイツ連邦共和国特許第３５０６１１８号明細書が関連している。
メインモジュール１０は、マイクロコンピュータ１３を含んでいる。このマイクロコンピュータ１３はＣＰＵ１６と、シリアルインターフェース１７と、データ検出ユニット１５からなる。シリアルインターフェース１７は例えばＣＡＮインターフェースとして構成されている。ＣＡＮインターフェースの構造と機能については例えば公知文献“８２５２６  Ｓｅｒｉａｌ  Ｃｏｍｍｕｎｉｃａｔｉｏｎｓ  Ｃｏｎｔｒｏｌｌｅｒ  Ａｒｃｈｉｔｅｃｔｕｒａｌ  Ｏｖｅｒｖｉｅｗ，Ｉｎｔｅｒ  Ｃｏｒｐ．，１９８９”が参照される。データ検出ユニット１５では内燃機関のクランク軸の回転運動が検出される。そのためにメインモジュール１０にはクランク軸センサ１４が接続されている。このクランク軸センサ１４はクランク軸の回転運動を次のようにして検出する。すなわち内燃機関のクランク軸に結合している回転部材の角度マークの回転毎に１つの信号を発生することによって検出する。この信号はデータ検出ユニット１５での処理の後で供給される。データ検出ユニット１５では発生した矩形パルスが時間単位毎にカウントされる。そこからは内燃機関の回転数が求められ得る。しかしながら回転数だけがエンジン制御のための情報として重要なのではなく、基準マークに関するクランク軸のそのつどの位置も重要である。すなわちこの基準マークの位置からは内燃機関の個々のシリンダのそれぞれの位置がわかり、これは点火及び燃料噴射制御にとって必要な情報である。それ故にデータ検出ユニット１５内にはカウンタ１９が設けられている。このカウンタ１９はクランク軸センサ１４における角度マークの回転移動に基づいた信号の発生のもとで増分される。このカウンタ１９のカウント状態はそのつどのクランク軸の瞬時の位置を表す。そのためカウンタ１９は角度指示器としても表される。この場合角度マークの回転移動に基づく角度分解能はしばしば不十分であることを述べておく。そのため角度マーク信号はデータ検出ユニット１５において特別な処理により精密に細分化される。カウンタ１９は精密に細分化された角度パルスをカウントする。
メインモジュール１０はその他のエンジンパラメータ、例えばエンジン負荷、エンジン温度、バッテリ電圧等の検出に対しても使用される。これらのエンジンパラメータからは点火時期調整角度やドエルアングル並びに内燃機関の個々のシリンダに対する燃料噴射時間等が算出される。これらのデータはシリアルバス２０を介して点火モジュール１１と燃料噴射モジュール１２に伝送される。点火モジュール１１は受信した値を用いて点火時期調整角度制御及びドエルアングル制御を実行する。それ自体に対してはもはや固有のエンジンパラメータ検出は必要ない。同様に燃料噴射モジュールも受信したデータに基づいて内燃機関の個々のシリンダに対する燃料噴射制御を行う。燃料噴射モジュール１２ももはや固有のエンジンパラメータ検出を必要としない。燃料噴射モジュール１２には燃料噴射弁の制御のための出力段２２が接続されている。点火モジュール１１には点火コイルの制御のための出力段２１が接続されている。点火モジュール１１にはマイクロコンピュータ２３も含まれている。このマイクロコンピュータ２３もその構成要素としてシリアルインタフェース１７とＣＰＵ１６を含んでいる。さらにその中には制御ユニット１８が含まれている。この制御ユニット１８にもカウンタ１９が設けられている。このカウンタ１９も内燃機関のクランク軸の位置を示すのに用いられる。カウンタ１９は所定の時間間隔毎に増分される。この場合この時間間隔は任意に設定可能である。エンジンの最適な制御を保証するためにはメインモジュール１０内のウンタ１９が点火モジュール１１内のカウント１９と同期して作動しなければならない。このことは次のようにして達成される。すなわちメインモジュール１０内のカウンタ１９のカウント状態が所定の時間間隔で読み出され、シリアルバス２０を介して点火モジュール１１に伝送されるようにして達成される。この受信したカウント状態に基づいて点火モジュール内のカウンタ１９のカウント状態が補正される。
燃料噴射モジュール１２は基本的には点火モジュール１１と同じような構造を有している。燃料噴射モジュール１２内にもマイクロコンピュータ２３が設けられており、このマイクロコンピュータ２３もシリアルインタフェース１７とＣＰＵ１６と制御ユニット１８を有している。この制御ユニット１８内でも、前記点火モジュール１１の時に記述したのと全く同じようにカウンタ１９が補正される。
次にクランク軸の位置に関するデータを伴ったメッセージの伝送について図３に基づき以下に詳細に説明する。
クランク軸の位置は中央制御装置において非常に短い時間間隔で検出される。そのため各時点ｔ７，ｔ８，ｔ１０，ｔ１２，ｔ１４においてクランク軸の位置に関する瞬時のデータが存在する。図からは時点ｔ７において、回転数検出を行っている制御装置のＣＡＮインターフェースに内燃機関のクランク軸の位置を伝送するための送信要求なされているものと認められる。この送信要求はその後時点ｔ９にて初めて実施される。なぜならその時点まではバスがまだ塞がっているからである。時点ｔ９ではいずれにしても時点ｔ７でＣＡＮインタフェースに伝送されたデータが伝送されるのではなく、その代りにその間に更新されたデータが送信される（これは時点ｔ８から存在している）。時点ｔ１１では障害も発生している。それ故にメッセージは新たに送信される。この新たな送信の際にはいずれにしても先行の時点ｔ８にて送信されたデータではなく、代わりに時点ｔ１０から存在する更新されたデータが送信される。時点ｔ１３ではクランク軸の位置に対する瞬時のデータを伴ったメッセージの伝送が終了している。時点ｔ１５では伝送されたデータが受信側の制御装置によって受け取られている。伝送されるデータの更新の際のロスは最大で時点ｔ１０〜ｔ１５までの時間差となる。伝送すべきデータが中央制御装置によってさらに短い時間間隔で準備されるならば、時間遅延はさらに低減される。
次に図４に基づいてメインモジュール１０のマイクロコンピュータ１３の構造を詳細に説明する。ここでは図２に示しているものと同じ部分には同じ符号が付されている。シリアルインターフェース１７はシフトレジスタ３０を含んでいる。このシフトレジスタ３０の出力側は切換スイッチ３１に接続されている。この切換スイッチ３１は線路を介してＣＲＣスイッチング回路３２とバス制御ユニット３３に接続されている。このバス制御ユニット３３の出力側はシリアルバス２０に接続されている。シフトレジスタ３０は線路を介して第１のＡＮＤゲート３４に接続されている。この線路を介してシフトレジスタ３０のシフトクロックが伝送される。第１のＡＮＤゲート３４の第２の入力側はＲ／Ｓフリップフロップ３５の出力側に接続されている。このＡＮＤゲート３４の出力側は第２のシフトレジスタ３６のクロック入力側に接続されている。この第２のシフトレジスタ３６の出力側も切換スイッチ３１に接続されている。Ｒ／Ｓフリップフロップ３５のＱ出力側を介して切換スイッチ３１は作動される。第２のシフトレジスタ３６からはバス接続線路３７がデータ検出ユニット１５に案内されている。このバス接続路３７とスイッチ３８を介して、伝送すべきデータがカウンタ１９から永続的に第２のシフトレジスタ３６に供給される。必ずしも必要ではないラッチ４７はバス接続線路３７のデータバッファとして用いられる。
スイッチ３８はＲ／ＳフリップフロップのＱ出力側からの信号を介して導通接続される。シリアルインターフェース１７はさらにデータ／アドレス及び制御用のバス接続線路３９を介してマイクロコンピュータ１３のＣＰＵ１６とデータ検出ユニット１５に接続されている。バス接続線路３９からは制御線路が第２のＡＮＤゲート４０の一方の入力側に延びている。シリアルインターフェース１７はさらにもう１つの状態レジスタ４１を有している。この状態レジスタ４１からは制御線路４２と４３が第２のＡＮＤゲートの別の入力側に延びている。この第２のＡＮＤゲート４０の出力側はＲ／Ｓフリップフロップ３５のセット入力側に接続されている。さらなる制御線路４４は状態レジスタ４１からＲ／Ｓフリップフロップ３５のリセット入力側に案内されている。シリアルインターフェース１７はさらにもう１つのビットカウンタ４５を有している。このビットカウンタ４５のカウント状態に基づいて、メッセージの送信の際に状態レジスタ４１の所定のビットのセットタイミングが決定される。データ検出ユニット１５にはさらにもう１つの別のカウンタ５０が含まれていてもよい。
次に図４の装置の機能を詳細に説明する。メッセージの送信の前に、データ検出ユニット１５は送信要求をシリアルインターフェース１７に供給する。それに対してシリアルインターフェース１７は伝送すべきデータをシリアルインターフェース１７のシフトレジスタ３０に書き込む。送信要求をそれぞれ作動させる時間はカウンタ５０によって設定される。同時にシリアルインターフェースはその状態レジスタ４１において送信要求ビットもセットする。シリアルインターフェース１７は送信要求を自動的に実行する。伝送すべきデータはメッセージ内で所定のメッセージ形態で伝送される。ＣＡＮバスに対するメッセージ形態は図５に基づいて詳細に説明される。メッセージはＳＯＦ（Ｓｔａｒｔ  ｏｆ  Ｆｒａｍｅ）ビットで開始される。引続きＩＤ（識別子）領域が続く。この領域はどのようなデータが当該のメッセージと共に伝送されるかを表す。識別子はデータの名前としての機能も果たす（内燃機関のクランク軸の位置、内燃機関のエンジン温度、エンジン回転数、第１シリンダに対する点火時期調整角度等）。続いてコントロール領域が伝送される。この領域は種々の目的に対して使用することができる。例えばその中には後続のデータの長さを表す情報をエントリさせることができる。コントロール領域の後には本来のデータを伴ったデータ領域が続く。データ領域の後にはさらに１つのＣＲＣ領域が伝送される。この領域はデータ伝送の保護のために用いられる。その中には１つのコードがファイルされており、このコードに基づいて受信側制御装置はメッセージがエラーなしで伝送されたか否かを識別することが可能である。メッセージはＡＣＫ領域によって終了する。このＡＣＫ領域では受信側ステーションがメッセージの受信を確認できる。
シリアルインターフェース１７がクランク軸の瞬時位置に関するデータ送信のための送信要求を得た後では、シリアルインターフェース１７は接続されているバス２０が塞がっているか否かを監視する。シリアルインターフェース１７がバスの空きを識別すると直ちに、要求において供給されたメッセージの送信を開始する。この時点で切換スイッチ３１はａの位置に切り替わり、それによってシリアルインタフェース１７のシフトレジスタ３０のデータはバス制御ユニット３３を介して、接続されているシリアルバス２０に達し得る。メッセージの送信の際にはビットカウンタ４５もスタートする。このビットカウンタのスタートと同時に状態レジスタ４１内のビットもセットされる。それにより制御線路４２は第２のＡＮＤゲート４０の相応の入力側に論理“１”の信号を供給する。シリアルインターフェース１７への送信要求の状態のもとでは既にＣＰＵ１６側にてＡＮＤゲート４０の第１の入力側線路が論理の１レベルにセットされる。識別子領域とコントロール領域がシフトレジスタ３０を介してバス線路２０に伝送された後では、ビットカウンタ４５は、状態レジスタ４１にてさらなるビットをセットするカウント状態に達する。それにより伝送線路４３を介しても論理１の信号がＡＮＤゲート４０の第３の入力側に供給される。それによりＲ／Ｓフリップフロップ３５はセットされる。Ｒ／Ｓフリップフロップ３５のＱ出力側を介してさらに切換スイッチ３１は切換位置ｂに切り替わる。同時にスイッチ３８は遮断され、カウンタ１９の状態はＲ／Ｓフリップフロップ３５のセットの時点で第２のシフトレジスタ３６に保持される。Ｒ／Ｓフリップフロップ３５のＱ出力側からの信号によりＡＮＤゲート３４の相応の入力側には論理１の信号が供給される。それによりＡＮＤゲート３４は、シリアルインターフェース１７のシフトレジスタ３０からのビットクロック信号が論理１の信号を生ぜしめた場合にはいつでも導通接続される。それによりこの時点からシフトレジスタ３６はクロック制御され、このシフトレジスタ３６に取り込まれたデータは切換スイッチ３１を介してシリアルバス２０に伝送される。データ領域の最後のビットが伝送された後ではビットカウンタ４５は再び状態レジスタ４１にてさらなるビットをセットするカウント状態に達する。このビットのセットにより伝送線路４４を介してＲ／Ｓフリップフロップ３５はリセットされる。それと共にＲ／Ｓフリップフロップ３５のＱ出力側を介して切換スイッチ３１が作動される。それにより切換スイッチ３１は再び切換位置ａに切り替わる。同じくＡＮＤゲート３４も遮断される。それによりシフトレジスタ３６にはさらなるクロック信号が供給されなくなる。それに続いてＣＲＣユニット３２からはＣＲＣ領域がシリアルバス２０に伝送される。バス制御ユニット３３はさらにＡＣＫ領域をシリアルバス２０に送出する。その後でメッセージの伝送は終了する。本発明の装置によれば、瞬時のクランク軸の位置の伝送のために送信要求の状態のもとでデータ検出ユニット１５を動作準備状態にするデータが、データ領域の伝送の時点でカウンタ１９に生じる、非常に大きな即時性を有するデータに置き換えられる。これは図６にも示されている。
以下では図７に基づいて点火モジュール１１のマイクロコンピュータ２３の構造を詳細に説明する。この構造が先のメインモジュール１０のマイクロコンピュータ１３の構造と一致する限り、当該点火モジュール１１の図において同じ符号が用いられる。それ故同じ構成要素の再度の説明はここでは省く。マイクロコンピュータ１３との相違点には切換スイッチが設けられていないことが挙げられる。シリアルバス２０はシフトレジスタ３０のデータ入力側にも第２のシフトレジスタ３６のデータ入力側にも接続されている。またさらなる相違点は、スイッチ３８がもはやＲ／Ｓフリップフロップ３５のＱ出力側によって制御されず、第２のシフトレジスタ３６に準備されるデータは永続的に一時記憶用ラッチ４６に伝送される点である。スイッチ３８は状態レジスタ４１からも制御される。ＡＮＤゲート４０は２つの入力側しか有していない。
次に内燃機関のクランク軸の瞬時位置を伝送するメッセージの受信の際の作用を以下に詳細に説明する。メッセージのスタート−フレームビットの受信直後にビットカウンタ４５はスタートされる。受信ビットは順次シフトレジスタ３０へ導入される。コントロール領域が完全に受信された後ではビットカウンタ４５が、状態レジスタ４１にてビットをセットするカウント状態に達する。同時にＣＰＵ１６の側からＡＮＤゲート４０の第１の入力側へ論理１の信号が供給されている状態の場合には、前記ビットのセットによってＡＮＤゲート４０が線路４３を介して導通接続される。ＣＰＵ１６はＡＮＤゲート４０の第１の入力側をマイクロコンピュータ２３の初期化フェーズの際に既に論理１の信号にセットしている。状態レジスタ４１におけるビットのセットと共にＲ／Ｓフリップフロップ３５もセットされる。Ｒ／Ｓフリップフロップ３５のＱ出力側を介してＡＮＤゲート３４はシフトレジスタ３０のクロックパルスに対して導通接続される。それによりシフトレジスタ３６はここにおいてクロック制御される。つまり目下到来しているデータはシフトレジスタ３０にもシフトレジスタ３６にも転送される。データ領域の最後のビットが受信された後では、ビットカウンタ４５は新たに、状態レジスタにてビットをセットするカウント状態に達する。このビットのセットにより線路４４を介してＲ／Ｓフリップフロップ３５はリセットされる。それによりＡＮＤゲート３４は遮断され、さらなるデータはシフトレジスタ３６に受け入れられない。ＣＲＣ領域とＡＣＫ領域はシフトレジスタ３０に記憶される。メッセージが完全に受信された後では、このメッセージがバス制御ユニット３３とＣＲＣ生成ユニット３２によって検査される。伝送エラーが生じている場合には、シフトレジスタ３０内のメッセージが破棄される。しかしながらメッセージがエラーなしで受信され、識別子がクランク軸のそのつどの位置のデータに相応している状態ならば状態レジスタ４１内でビットがセットされ、それによって線路４７を介してスイッチ３８が導通接続に切換られる。シフトレジスタ３６の記憶内容がラッチ４６に転送される。それにより制御ユニット１８はこの時点からバス接続路３７を介してアクセスできる。制御ユニット１８は、カウンタ１９を同期化するためにラッチ４６の記憶内容を直接使用できる。これは最も簡単な場合には次のように行われる。すなわち制御ユニット１８がカウンタ１９のカウント状態をラッチ４６に記憶されている値に設定することによって行われる。
線路４７を介してスイッチ３８へ供給される状態レジスタ４１の状態ビットはシリアルバス２０の後続のメッセージの新たなデータ領域の受信の前にリセットされる。
ここに記載した方法によっては時間的に変化する値の伝送の待ち時間がメッセージの伝送時間に低減される。シリアルバス２０としてＣＡＮバスが使用されるならば、この時間は１ＭＢＡＵＤと３２データビットの伝送レートのもとでクランク軸の位置とエンジンの回転数に対して５０〜７０μＳである。この値は適切なデータビット数の低減によりさらに低減することができる。この値は最も多くの適用例において待ち時間が無視できるくらいに小さい。
以下では待ち時間がさらに低減できるさらなる別の方法を記載する。クランク軸の位置を伴うメッセージの最後の受信から内燃機関のクランク軸の回転運動が僅かな動的変化しか伴わない場合には、点火モジュール１１と燃料噴射モジュール１２のカウンタが既にクランク軸の位置のほぼ正確な値を表しているものとする。
それ故に制御ユニット１８では受信した同期メッセージ毎にさらなるカウンタがスタートされる。このカウンタはメッセージのデータ領域の最初のビットの伝送からメッセージの完全な受信までカウンタ１９にて生じた増分を計数する。この場合このカウンタに対する制御信号は例えばＲ／Ｓフリップフロップ３５のＱ出力側に供給される。メッセージが線路４７の活性化により有効と認められても、あるいは同期メッセージとして識別されても、さらなるカウンタのカウント内容がバス接続線路３７上のメッセージデータに加算され、カウンタ１９に対する瞬時の状態を生ぜしめる。この状態にカウンタが同期化される。もちろんクランク軸の動的変化が大きい場合には、エラーは、第１のデータビットから応答領域までの伝送期間中に増分の数が変化し得る程度の大きさである。この解決手段の利点としては付加的回路コストが僅かで済むことが挙げられる。
さらなる手段は伝送すべき同期データの送信側での事前補正に関する。メインモジュール１０は同期メッセージの送信の際にさらなるカウンタをスタートさせる。このカウンタは最初のビットの伝送からメッセージの完全な受信までにカウンタ１９にて生じた数を計数する。メッセージが中断されるか又は障害が発生した場合には、この情報は破棄される。同期メッセージが完全に送信された状態の場合にはこの値は記憶され、この値とカウンタ１９の瞬時のカウント状態との和が次の同期メッセージの送信の際にカウンタ１９のその時のカウント状態の代わりに送信される。このようにしてカウンタ１９の予測値（これは同期メッセージの送信の最後に存在すべきものである）が送信される。ここでも最後の同期メッセージ以後の内燃機関の動的変化が角度指示器としての精度を決定している。
別の解決手段ではメインモジュール１０のデータ検出ユニット１５において同期メッセージのデータ領域の送信から付加的なカウンタがスタートされる。このカウンタは同期メッセージが完全に送信されるまでの時間を計測する。メッセージが中断するか又は障害が発生した場合には、この情報は破棄される。メッセージの送信が成功した場合にはこの情報は記憶される。第２の付加的カウンタ（これは第１のカウンタと同一でもよい）はこの記憶された時間値と共に１つの時間窓を生成する。この時間窓においては第３の付加的カウンタがこの時間窓において生じたカウンタ１９の増分を計数する。この計数値とカウンタ１９の瞬時のカウント状態との和が次の同期メッセージの送信の際に伝送される。この解決手段は、動的な不確実性が、計測された２つの時間窓の間の期間に限定される利点を有する。
ＣＡＮバスの場合ではＣＡＮインターフェースのバス制御ユニット３３によって、伝送すべきデータに基づいて６つの順次連続するビットの連続したシーケンスが同じビットレベルで生じた場合にはいつでも付加的なスタッフビットがメッセージに挿入される。このスタッフビットの挿入によって同期データの伝送の際にも待ち時間の不確実性が加わる。この不確実性はこれまでに記載した待ち時間のさならる低減のための解決手段の場合にも存在する。それ故にさらなる手段の場合にはメッセージの期間中に到来するスタッフビットの数が評価される。そのため時間窓の生成のための評価される一定の総時間値が生ぜしめられる。この時間窓の期間中はカウンタ１９の増分が再びカウントされる。次の同期メッセージの送信の際には前述した手段のようにこの値とカウンタ１９の瞬時のカウント状態との和が同期値として伝送される。動的な不確実性はこの手段の場合には前述の手段の場合と同じ大きさである。しかしながらスタッフビットの可能な数が考慮される。
さらなる別の手段では動的不確実性をさらに低減することが試みられる。この場合は前記手段のように最後の同期メッセージの時間が測定される。メインモジュール１０ではその他に、カウンタ１９で生じた増分の発生時点がＦＩＦＯ（ファーストインファーストアウト）メモリ記憶される。各エントリ毎にメインモジュール１０は、最初にエントリされた時点がまだ時間窓内で生じたのか否かを検査する。この場合測定窓の終端は最後の増分の発生時点である。最も先行する時点が時間窓外にあるのならば、メインモジュール１０はこのＦＩＦＯメモリのエントリを破棄する。それによりＦＩＦＯメモリには最後の瞬時の増分しかエントリされない。このメモリへのエントリの数は、最終的に同期メッセージの送信の際にカウンタ１９の瞬時のカウント状態に加算され、その和が伝送される。これにより動的不確実性はほぼ測定窓の期間内に低減される。しかしながらこの手段の場合でもスタッフビットの数は不確実である。
さらなる別の手段ではこのスタッフビットによって生じる不確実性をさらに低減することが試みられる。スタッフビットの見込数は非常に高性能な計算機を用いる以外に具体的に予め計算することができない。なぜならそれはデータに依存しており、このデータもスタッフビットの数に依存しているからである。しかしながら考慮の対象となり得るスタッフビットの可能な最大数もある。スタッフビットなしの同期メッセージの完全なる送信までの最小時間は、シリアルバスの伝送レートが既知の場合にはわかっている。スタッフビットの可能な数毎に１つの時間値が生成される。“第１のカウンタ”の数は当該の総時間値と共にそれぞれ１つの時間窓を生成する。この時間窓では“第２のカウンタ”のセットが当該時間窓内で生じるカウンタ１９のカウントアップの数を計数する。ＣＲＣコードの通知と共に個々の測定に対するスタッフビットの実際の数が求められ、この測定が受入れられ求められたスタッフビット数の最も少ない差と共に次の同期メッセージの送信の際に利用される。この手段の場合には動的な不確実性がほぼビットの伝送期間に低減される。
以下に記載する手段ではスタッフビットの数が再びメインモジュール１０によって同期メッセージの送信前に新たに評価される。スタッフビットなしの同期メッセージの完全な送信までの最小時間は、シリアルバス２０の伝送レートが既知の場合にはわかっている。同様にスタッフビットの最大数が使用された場合の最大時間もわかる。メインモジュール１０は、カウンタ１９の今後の増分の時点を例えばそれぞれ記憶されている先行の増分が行われた時点から算出する。カウンタは付加的なスタッフビットなしのメッセージに対する増分の数を前記手段のようにして求める。同様にメッセージに対するカウントアップの数もスタッフビットの最大数を用いて求められる。これらの２つの数が一致する場合にはこの数がカウンタ１９の瞬時のカウント状態に加算され、この和が次の同期メッセージに対する同期データとして準備される。
前記２つの値が一致していない場合には、これらの値と全ての可能な中間値毎に、当該の値を生ぜしめているスタッフビットの数が求められる。それにより、受入れられたカウントアップと算出されたカウントアップとの差が最も少なくなるような和が同期メッセージに対して使用される。
例えば；
スタッフビットなしのメッセージでは１０のカウントアップが補正されなければならないような長さになる。同じように受入れられる最大数の１０のスタッフビットではメッセージの長さは、１２のカウントアップが補正されなければならない長さとなる。これらの２つの数は一致していないので、さらに細分化する必要がある。：
スタッフビット数が０〜１の間では１０のカウントアップが補正され、スタッフビット数が２〜６の間では１１のカウントアップが補正され、スタッフビット数が７〜１０の間では１２のカウントアップが補正される。
また以下のようなことが予測される。；
メッセージが＋１０の角度指示値を有している場合には７つの付加的スタッフビットが挿入されるべきである。しかしながらこの期間では１２のカウントアップが生じる。
メッセージが＋１１の角度指示値を有している場合には１つの付加的スタッフビットが挿入されるべきである。しかしながらこの期間では１０のカウントアップしか生じない。
メッセージが＋１２の角度指示値を有する場合には挿入されるべき付加的スタッフビットは０である。しかしながらこの期間でも１０のカウントアップしか生じない。
すなわち差が最も少ないのは、付加的カウントアップの受け入れ数が１１の場合であり、そのためこの値が同期メッセージに対して使用される。
スタッフビット数の事前補正に対してはさらなる反復ステップも可能ではあるが、しかしながらこれは必ずしも結果の改善に結び付くものではない。前述の例で１０の増分の補正によってわかったことは、実際には１２の増分が必要となることである（１２の増分の補正の際には１０の増分が必要）。
受信側での補正のさらなる別の手段は、ＣＲＣ領域ないしＡＣＫ領域の受信期間中の、完全に伝送されてはいるがまだ検証されてないデータを考慮する。この場合ではマイクロコンピュータ２３の付加的カウンタがデータ領域の伝送に必要な期間をカウントする。第２の制御ユニット１１８内の第２の角度指示−カウンタ１１９（図８に示されている）は、データ領域の受信直後に（これは線路４４の活性化によって特徴付けられる）第２のシフトレジスタ３６からの受信データによって補正される。第２の制御ユニット１１８の処理速度（カウントアップの周波数）は高められ、これにたいして付加的なカウンタはこの速度上昇に応じてカウントダウンされる。それにより付加的カウンタにおいて０に達した場合には第２の角度指示カウンタ１１９は送信側マイクロコンピュータ１３のカウンタ１９の瞬時の状態に相応する。その後角度指示カウンタ１１９の処理速度は再び平常化される。
制御ユニット１８のカウンタ１９は、補正伝送の作動された場合には線路４７の活性化を介して第２の制御ユニット１１８の第２の角度指示カウンタ１１９の値に補正される。受信データが誤ったものとして識別された場合には第２の角度指示カウンタ１１９のカウント状態は破棄される。
本発明はこれまでに記載された実施例に限定されるものではない。例えば分散的なエンジン管理に対する２つの角度指示器の同期の代わりにその他の類似のデータ源からの各測定値を前述した手法で伝送することも可能である。シリアルバスを介して同期メッセージの前述したような伝送の他にも別の識別子を有するその他の任意のメッセージを伝送することも可能である。この場合には切換スイッチは切換位置ａに切り替えられた状態を保持され、それによってデータの置換は行われない。しかしながら所定の識別子を有する複数のメッセージに対するデータの置換を行うことも可能である。その他にも多数の並列な外部シフトレジスタを備えた実施例も考えられる。この場合は複数の入力側を備えたさならる切換スイッチないしマルチプレクサ等が使用される。最後に個々の外部レジスタに対しては複数の種々のラッチ４６を設けてもよい。
本発明の変化例ではモジュール１１ないし１２のマイクロコンピュータ２３において、シフトレジスタ３０の並列なデータ出力側がシリアルインターフェース１７から引き出されている場合には第２のシフトレジスタ３６を省略することも可能である。この場合には図７に符号３４，３５，４０，４３，４４で示されている構成素子も必要ない。
本発明の第２の変化例ではメインモジュール１０のマイクロコンピュータ１３において、シフトレジスタ３０の並列なデータ入力側がシリアルインターフェース１７から引き出され、かつＲ／Ｓフリップフロップ３５の投入接続によってバス接続線路３７のデータがシフトレジスタ３０に伝送される場合には第２のシフトレジスタ３６を省略してもよい。この場合には図４中の符号３１，３４，３８で示されている構成素子も必要ない。
本発明のさらなる別の変化例では図５のデータ領域の重要でない関連部分が本発明によって伝送期間中に置き換えられる（図９参照）。
【図１】
0004116073.tif 000002
【図３】
0004116073.tif 000003
【図２】
0004116073.tif 000004
【図５】
0004116073.tif 000005
【図６】
0004116073.tif 000006
【図４】
0004116073.tif 000007
【図７】
0004116073.tif 000008
【図８】
0004116073.tif 000009
【図９】
0004116073.tif 000010