(57)【特許請求の範囲】
【請求項１】
マスタ局とスレーブ局との間において同一経路による双方向通信を行う通信システムであって、
前記マスタ局は、前記スレーブ局からスレーブデータを受信した後、自身で定めたマスタ側アイドル期間が経過すると、当該マスタ側アイドル期間に対するパルス幅の比率にて表したマスタデータを前記スレーブ局へ送信し、
前記スレーブ局は、前記マスタ局からマスタデータを受信した後、自身で定めたスレーブ側アイドル期間が経過すると、当該スレーブ側アイドル期間に対するパルス幅の比率にて表したスレーブデータを前記マスタ局へ送信し、
前記マスタ局は、スレーブデータの受信毎にマスタ側アイドル期間を設定し、
前記スレーブ局は、マスタデータの受信毎にスレーブ側アイドル期間を設定し、
前記マスタ局は、スレーブデータの受信後における今回のマスタデータの送信前に、前回のマスタデータの送信直前のマスタ側アイドル期間に対する今回のマスタ側アイドル期間の比率が今回送信するマスタデータの種類を表す当該今回のマスタ側アイドル期間を設定し、
前記スレーブ局は、マスタデータの受信後における今回のスレーブデータの送信前に、前回のスレーブデータの送信直前のスレーブ側アイドル期間に対する今回のスレーブ側アイドル期間の比率が今回送信するスレーブデータの種類を表す当該今回のスレーブ側アイドル期間を設定することを特徴とする通信システム。
【請求項２】
前記マスタ局及び前記スレーブ局の起動後にマスタデータの伝送をスレーブデータの伝送より先に行う通信システムであって、
前記マスタ局は、起動後一回目のマスタデータの送信後に起動後一回目のスレーブデータを受信した場合、当該一回目のマスタデータに対応のパルス幅に対する起動後二回目のマスタ側アイドル期間の比率が起動後二回目に送信のマスタデータの種類を表す当該二回目のマスタ側アイドル期間を設定することを特徴とする請求項１に記載の通信システム。
【請求項３】
請求項１又は２に記載の通信システムからなり、前記マスタ局及び前記スレーブ局が各々の制御対象を分散制御することを特徴とする分散制御システム。
【請求項４】
前記マスタ局は、前記スレーブ局の制御対象の制御状態を指令する指令データをマスタデータとして生成し、
前記スレーブ局は、自身の制御対象の状態量を表す状態量データをスレーブデータとして生成することを特徴とする請求項３に記載の分散制御システム。
【請求項５】
マスタ局とスレーブ局との間において同一経路による双方向通信を行う通信方法であって、
前記マスタ局が前記スレーブ局からスレーブデータを受信した後、前記マスタ局が定めたマスタ側アイドル期間が経過すると、当該マスタ側アイドル期間に対するパルス幅の比率にて表したマスタデータを前記マスタ局から前記スレーブ局へ送信し、
前記スレーブ局が前記マスタ局からマスタデータを受信した後、前記スレーブ局が定めたスレーブ側アイドル期間が経過すると、当該スレーブ側アイドル期間に対するパルス幅の比率にて表したスレーブデータを前記スレーブ局から前記マスタ局へ送信し、
前記マスタ局において、スレーブデータの受信毎にマスタ側アイドル期間を設定し、
前記スレーブ局において、マスタデータの受信毎にスレーブ側アイドル期間を設定し、
前記マスタ局において、スレーブデータの受信後における今回のマスタデータの送信前に、前回のマスタデータの送信直前のマスタ側アイドル期間に対する今回のマスタ側アイドル期間の比率が今回送信するマスタデータの種類を表す当該今回のマスタ側アイドル期間を設定し、
前記スレーブ局において、マスタデータの受信後における今回のスレーブデータの送信前に、前回のスレーブデータの送信直前のスレーブ側アイドル期間に対する今回のスレーブ側アイドル期間の比率が今回送信するスレーブデータの種類を表す当該今回のスレーブ側アイドル期間を設定することを特徴とする通信方法。
【請求項６】
前記マスタ局及び前記スレーブ局の起動後にマスタデータの伝送をスレーブデータの伝送より先に行う通信方法であって、
前記マスタ局において、起動後一回目のマスタデータの送信後に起動後一回目のスレーブデータを受信した場合、当該一回目のマスタデータに対応のパルス幅に対する起動後二回目のマスタ側アイドル期間の比率が起動後二回目に送信のマスタデータの種類を表す当該二回目のマスタ側アイドル期間を設定することを特徴とする請求項５に記載の通信方法。
【請求項７】
前記マスタ局と前記スレーブ局との間において請求項５又は６に記載の通信方法により双方向通信を行いつつ、前記マスタ局及び前記スレーブ局の各々の制御対象を分散制御することを特徴とする分散制御方法。
【請求項８】
前記マスタ局において、前記スレーブ局の制御対象の制御状態を指令する指令データをマスタデータとして生成し、
前記スレーブ局において、自身の制御対象の状態量を表す状態量データをスレーブデータとして生成することを特徴とする請求項７に記載の分散制御方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、マスタ局とスレーブ局との間において同一経路により双方向通信を行う技術に関する。
【背景技術】
【０００２】
従来、短距離通信技術としてＬＩＮ（Local Interconnect Network）が広く用いられている。このＬＩＮは、マスタ局とスレーブ局との間における双方向通信を同一経路により実現する通信技術であり、車両に搭載された複数の制御対象を分散制御するために開発されたものである。ＬＩＮの一特徴は、パルス幅に基づくデータ伝送において各局の通信クロック差に起因する通信エラーを防止すべく、ボーレート調整用のデータをマスタ局からスレーブ局へと送信し、当該データに基づいてスレーブ局のボーレートをマスタ局のボーレートと合致させるところにある。この特徴によれば、高精度な分散制御を実現することができるが、ボーレート調整用データの伝送は通信時間を無駄に長くするものであり、特に分散制御システムの場合には、制御応答性の低下に繋がるため、望ましくない。
【０００３】
また従来、マスタ局とスレーブ局との間における双方向通信を同一経路により実現する通信技術として、例えば特許文献１に開示される技術が知られている。この特許文献１に開示の技術は、マスタ局からスレーブ局へはパルスのデューティ比により表したデータを伝送する一方、スレーブ局からマスタ局へはパルスの振幅により表したデータを伝送することで、それら双方向のデータ伝送を通信周期毎に実現するものである。この特徴によれば、通信時間を短くできるので、特許文献１に開示の技術を分散制御システムに適用した場合には、高い制御応答性を確保できると予測される。
【０００４】
【特許文献１】特開平８−２６５３０８号公報
【発明の開示】
【発明が解決しようとする課題】
【０００５】
さて、特許文献１に開示の技術においてパルスのデューティ比を変化させることは、例えばＬＩＮ用の電気回路を利用することによって容易に実現することができる。しかしながら、特許文献１に開示の技術においてパルスの振幅を変化させる場合、送信パルスの振幅を調整出力するために特別な電気回路をスレーブ局に設け、また受信パルスの振幅を検出するために特別な電気回路をマスタ局に設ける必要がある。そのため、コストの高騰を招いてしまう。
【０００６】
本発明は、上述した問題に鑑みてなされたものであって、その目的は、短時間且つ高精度な通信を実現しつつ、コストの低減に貢献する通信システム及び方法を提供することにある。
また、本発明の他の目的は、高応答性且つ高精度な制御を実現しつつ、コストの低減に貢献する分散制御システム及び方法を提供することにある。
【課題を解決するための手段】
【００１９】
請求項１，５に記載の発明によると、マスタ局では、スレーブ局からのスレーブデータの受信に応答してスレーブ局へのマスタデータの送信が行われ、スレーブ局では、マスタ局からのマスタデータの受信に応答してマスタ局へのスレーブデータの送信が行われるので、マスタデータの伝送とスレーブデータの伝送とが交互に繰り返される。しかもマスタデータの送信は、スレーブデータの受信後、マスタ局が定めたマスタ側アイドル期間が経過すると行われ、スレーブデータの送信は、マスタデータの受信後、スレーブ局が定めたスレーブ側アイドル期間が経過すると行われるので、マスタデータの伝送とスレーブデータの伝送との重畳が確実に防止される。以上より、マスタ局とスレーブ局との間では、同一経路による双方向通信を実現して、その通信時間を短縮することが可能になる。
【００２０】
また、マスタ側アイドル期間に対するパルス幅の比率にて表したマスタデータと、スレーブ側アイドル期間に対するパルス幅の比率にて表したスレーブデータとを用いる。このようにパルス幅の比率にて表したデータの場合、その送受信のために特別な電気回路をマスタ局やスレーブ局に設ける必要がなくなるので、コストの低減に貢献することができる。しかも、パルス幅の比率にて表したデータは、パルス幅自体にて表したデータと比べて、各局の通信クロックの差やそれら通信クロックの温度特性に起因する誤差が小さくなるので、通信の高精度化にも貢献することができる。加えて、データ伝送の重畳防止効果をもたらす各アイドル期間がデータの表現にも利用されるので、データの伝送効率を高めることができる。
尚、請求項１，５に記載の「パルス幅」については、オンパルスの幅であってもよいし、オフパルスの幅であってもよい。
【００２１】
さらに、マスタ局では、スレーブデータの受信毎にマスタ側アイドル期間を設定し、スレーブ局では、マスタデータの受信毎にスレーブ側アイドル期間を設定するので、それら各アイドル期間が可変となる。したがって、例えば各局における処理負荷に応じて各アイドル期間を調整することで、通信負荷を軽減することが可能となる。
【００２２】
加えて、マスタ局では、スレーブデータの受信後における今回のマスタデータの送信前に、前回のマスタデータの送信直前のマスタ側アイドル期間に対する今回のマスタ側アイドル期間の比率が今回送信するマスタデータの種類を表す当該今回のマスタ側アイドル期間を設定する。故にスレーブ局では、前回のマスタデータの受信直前のマスタ側アイドル期間に対する今回のマスタデータの受信直前のマスタ側アイドル期間の比率に基づいて、今回のマスタデータの種類を識別することができる。また同様にスレーブ局では、マスタデータの受信後における今回のスレーブデータの送信前に、前回のスレーブデータの送信直前のスレーブ側アイドル期間に対する今回のスレーブ側アイドル期間の比率が今回送信するスレーブデータの種類を表す当該今回のスレーブ側アイドル期間を設定する。故にマスタ局では、前回のスレーブデータの受信直前のスレーブ側アイドル期間に対する今回のスレーブデータの受信直前のスレーブ側アイドル期間の比率に基づいて、今回のスレーブデータの種類を識別することができる。このような請求項１，５に記載の発明によれば、マスタ側アイドル期間及びスレーブ側アイドル期間を有効に利用して複数種類のマスタデータ及びスレーブデータを伝送することができるので、データの伝送効率がより一層高められる。
【００２３】
一般に起動直後のマスタ局やスレーブ局では、それらの局が電気的に不安定であること等により、時間を正確に把握することが難しくなる。
請求項２，６に記載の発明では、各局の起動後にマスタデータの伝送をスレーブデータの伝送より先に行うので、マスタ局において起動後一回目のマスタデータの送信前にマスタ側アイドル期間を正確に設定することや、スレーブ局において起動後一回目のマスタデータの受信前にマスタ側アイドル期間を正確に検知することが難しくなる。そのためマスタ局では、起動後一回目のマスタデータの送信後に起動後一回目のスレーブデータを受信した場合、請求項１，５に記載のようにマスタ側アイドル期間を設定すると、その設定精度が悪化するおそれがある。しかし、請求項２，６に記載の発明によるマスタ局では、起動後一回目のマスタデータの送信後に起動後一回目のスレーブデータを受信した場合、当該一回目のマスタデータに対応のパルス幅に対する起動後二回目のマスタ側アイドル期間の比率が起動後二回目に送信のマスタデータの種類を表す当該二回目のマスタ側アイドル期間を設定するので、その設定精度の悪化を回避することが可能になる。
【００２４】
請求項３に記載の発明は、請求項１又は２に記載の通信システムからなり、マスタ局及びスレーブ局が各々の制御対象を分散制御するので、短時間且つ高精度な通信により高応答性且つ高精度な制御を実現しつつコストを低減することができる。
請求項７に記載の発明は、マスタ局とスレーブ局との間において請求項５又は６に記載の通信方法により双方向通信を行いつつ、マスタ局及びスレーブ局の各々の制御対象を分散制御するので、短時間且つ高精度な通信により高応答性且つ高精度な制御を実現しつつコストを低減することができる。
尚、請求項３，７に記載の「分散制御におけるマスタ局の制御対象」は、スレーブ局とは異なる要素であってもよいし、スレーブ局であってもよいし、それらの双方であってもよい。
【００２５】
請求項４，８に記載の発明によると、マスタ局では、スレーブ局の制御対象の制御状態を指令する指令データをマスタデータとして生成し、またスレーブ局では、自身の制御対象の状態量を表す状態量データをスレーブデータとして生成する。これにより、マスタ局においてスレーブ局の制御対象の状態量を当該制御対象の制御等に反映させることができるので、分散制御の制御精度が向上する。
【発明を実施するための最良の形態】
【００２６】
以下、本発明の複数の実施形態を図面に基づいて説明する。尚、各実施形態において対応する構成要素には同一の符号を付すことにより、重複する説明を省略する。
（第一実施形態）
図２は、本発明の第一実施形態による分散制御システム１０を示している。この分散制御システム１０は、ケーブル、ワイヤハーネス等の一本の信号線１１を介して二つの制御装置２０，３０を相互接続してなる通信システム１２を主体とし、各制御装置２０，３０に接続された制御対象１，２を分散制御するものである。
【００２７】
通信システム１２において各制御装置２０，３０は、ＣＰＵ２１，３１、メモリ２２，３２及び入出力インタフェース（ＩＦ）２４，３４を備えたマイクロコンピュータ等の電気回路で構成されている。ここで各制御装置２０，３０の入出力ＩＦ２４，３４は、それら装置間通信のために信号線１１が接続されるＩＦ回路として、図３に示す如きＬＩＮ用のＩＦ回路２５，３５を有している。したがって、信号線１１が形成する通信経路を通じた制御装置２０，３０間のデータ伝送には、図１（Ａ），（Ｂ）に示すように高（Ｈ）レベルと低（Ｌ）レベルとの間の電圧振幅が略一定のパルス列信号が用いられる。
【００２８】
図２に示すようにエンジン制御装置２０の入出力ＩＦ２４には、内燃式エンジン１に設けられたイグナイタ、インジェクタ等のエンジン電装品３と、車両に設けられたアクセルセンサ、水温センサ、速度センサ等の車両センサ４とが接続されている。エンジン制御装置２０は、メモリ２２に記憶されているプログラムをＣＰＵ２１により実行することで、内燃式エンジン１を制御するための信号をエンジン電装品３へ与えると共に、車両状態を表す信号を車両センサ４から受け取る。
【００２９】
一方、吸気制御装置３０の入出力ＩＦ３４には、吸気系２に設けられたスロットル弁５の駆動装置６が接続されている。ここで本実施形態の吸気系２は、エアクリーナ７を通じて吸入した空気をスロットル弁５により流量調整して内燃式エンジン１の吸気ポート８へと導くものであり、故に当該吸気の流量はスロットル弁５の開度によって決まる。そこで吸気制御装置３０は、メモリ３２に記憶されているプログラムをＣＰＵ３１により実行することで、スロットル弁５の目標開度に基づく駆動信号を駆動装置６へ与えると共に、スロットル弁５の実開度を表す信号を駆動装置６から受け取る。
【００３０】
このような通信システム１２において各制御装置２０，３０は、メモリ２２，３２に記憶されているプログラムをＣＰＵ２１，３１により実行することで、それぞれマスタ局及びスレーブ局として機能して双方向通信を実現する。
以下、通信システム１２による双方向通信について詳しく説明する。尚、以下の説明では、信号線１１の電圧レベルを高（Ｈ）レベルから低（Ｌ）レベルへ変化させる各制御装置２０，３０の出力を、「オンパルス」の出力とする。
【００３１】
内燃式エンジン１が始動すると、通信周期Ｔc毎にエンジン制御装置２０は、各周期Ｔcの開始からインターバル期間Ｔiが経過するまでに、指令データを生成する。ここで通信周期Ｔcは、固定値に設定されてエンジン制御装置２０のメモリ２２に記憶されている。また、インターバル期間Ｔiは、図１に示すように通信周期Ｔcより短い固定値（例えば周期Ｔcの半値）に設定される期間である。さらにまた、指令データは、吸気制御装置３０によるスロットル弁５の目標開度を指令するものであり、図４に示すように本実施形態では、スロットル弁５の全閉状態を表す「０度」からスロットル弁５の全開状態を表す「９０度」の間の開度値とされる。尚、指令データを「０度」と「９０度」との間のいずれの開度値とするかは、エンジン制御装置２０が吸気制御装置３０から受信する状態量データの他、内燃式エンジン１の制御状態や車両状態等に基づいて判断される。また、「０度」と「９０度」との間において指令データとして設定される開度値は、連続値であってもよいし、離散値であってもよい。
【００３２】
また、エンジン制御装置２０は、各通信周期Ｔcのインターバル期間Ｔiにおいて指令データの生成後には、当該生成データを周期Ｔcに対するオンパルス幅Ｔmの比率Ｒmへと変換し、入出力ＩＦ２４から信号線１１へ出力する。ここで比率Ｒmは、図１（Ａ）に示すように通信周期Ｔcを基準としたときのオンパルス幅Ｔmの百分率にて表されるものであり、指令データとしての開度値と線形関係を有するように、ＣＰＵ２１の内部クロック等を利用して設定される。図４はその設定例であり、指令データが「０度」であるときには比率Ｒmが「２．５％」に設定され、指令データが「９０度」であるときには比率Ｒmが「２５％」に設定される。尚、本実施形態において比率Ｒmの上限値は、オンパルス幅Ｔmがインターバル期間Ｔi未満となるように設定されてメモリ２２に記憶されている。したがって、エンジン制御装置２０は、以上のデータ生成並びに出力処理をインターバル期間Ｔi内に終えることができる。
【００３３】
以上の処理によりエンジン制御装置２０から信号線１１へ通信周期Ｔc毎に出力される指令データは、各周期Ｔcのインターバル期間Ｔiに吸気制御装置３０の入出力ＩＦ３４にて受信される。吸気制御装置３０は、この指令データの受信が内燃式エンジン１の始動後、初めての受信であった場合には、応答処理を行わず、初期処理を行って待機する。ここで初期処理とは、受信した指令データを表すオンパルスの立ち上がりエッジを検出し、その検出タイミングをメモリ３２に記憶する処理である。
【００３４】
一方、指令データの受信が内燃式エンジン１の始動後、二回目以降の受信であった場合に吸気制御装置３０は、応答処理を開始する。
具体的に応答処理では、まず、受信した指令データを表すオンパルスの立ち上がりエッジを検出して、その検出タイミングをメモリ３２に記憶すると共に、今回の検出タイミングと前回の検出タイミングとの差から通信周期Ｔcを割り出す。
【００３５】
応答処理では次に、割り出した通信周期Ｔcの開始（ここでは、上記今回の検出タイミングと一致する）から、メモリ３２に記憶されているインターバル期間Ｔiが経過するまでに、スロットル弁５の実開度を表す状態量データを生成する。ここで状態量データは、吸気制御装置３０がスロットル弁５の駆動装置６から受ける信号に基づいて生成するものであり、図５に示す「０度」から「９０度」の間の開度値とされる。尚、「０度」と「９０度」との間において状態量データとして生成される開度値は、連続値であってもよいし、離散値であってもよい。
【００３６】
応答処理ではさらに、通信周期Ｔcの開始からインターバル期間Ｔiが経過すると、期間Ｔiに生成の状態量データを期間Ｔiに対するオンパルス幅Ｔsの比率Ｒsへと変換し、入出力ＩＦ３４から信号線１１へ出力する。ここで比率Ｒsは、図１（Ｂ）に示すようにインターバル期間Ｔiを基準したときのオンパルス幅Ｔsの百分率にて表されるものであり、状態量データとしての開度値と線形関係を有するように、ＣＰＵ３１の内部クロック等を利用して設定される。図５はその設定例であり、状態量データが「０度」であるときには比率Ｒsが「６．２５％」に設定され、状態量データが「９０度」であるときには比率Ｒsが「６２．５％」に設定される。尚、本実施形態において比率Ｒsの上限値は、オンパルス幅Ｔsが通信周期Ｔcにおける期間Ｔi後の残期間Ｔr未満となるように設定されてメモリ３２に記憶されている。したがって、吸気制御装置３０は、以上のデータ出力処理を残期間Ｔr内に終えることができる。
【００３７】
尚、上述した初期処理及び応答処理のいずれにおいても、吸気制御装置３０は、受信した指令データをメモリ３２に記憶し、当該指令データの目標開度に従う駆動信号をスロットル弁５の駆動装置６に対して与える。
また、上述の応答処理により吸気制御装置３０から信号線１１へ通信周期Ｔc毎に出力される状態量データは、各周期Ｔcの期間Ｔrにエンジン制御装置２０の入出力ＩＦ２４にて受信され、以降の指令データの生成や内燃式エンジン１の制御に反映される。
【００３８】
以上説明した第一実施形態によると、マスタ局としてのエンジン制御装置２０からスレーブ局としての吸気制御装置３０への指令データの送信は、通信周期Ｔcの開始から通信周期Ｔcより短いインターバル期間Ｔiが経過するまでに行われる。その一方、吸気制御装置３０からエンジン制御装置２０への状態量データの送信は、通信周期Ｔcにおけるインターバル期間Ｔi後の残期間Ｔrに行われる。したがって、指令データの伝送と状態量データの伝送とは、単一の信号線１１を通じた同一経路によるものであるにも拘らず、図１（Ｃ）に示すように各通信周期Ｔcで重畳することがない。しかも吸気制御装置３０では、指令データを表すオンパルスの立ち上がりエッジを検出することにより、別の制御装置２０の定めた通信周期Ｔcを認識して期間Ｔiの経過判断に利用しているので、各通信周期Ｔcにおけるデータ重畳を確実に防止することができる。これらのことより第一実施形態では、同一経路による双方向通信を各通信周期Ｔc毎に実現することができるので、通信時間の短縮が可能となる。
【００３９】
さらに第一実施形態によると、指令データは、通信周期Ｔcに対するオンパルス幅Ｔmの比率Ｒmにて表され、また状態量データは、インターバル期間Ｔiに対するオンパルス幅Ｔsの比率Ｒsにて表される。故に、データ送受信のための特別な電気回路を各制御装置２０，３０に設ける必要がなく、図３に示すようなＬＩＮ用のＩＦ回路２５，３５を利用することも可能となるので、コストが低減する。しかも、オンパルス幅Ｔm，Ｔsの比率Ｒm，Ｒsにより表されるデータは、パルス幅自体により表されるデータと比べて、各制御装置２０，３０の通信クロック（ここでは、ＣＰＵ２１，３１の内部クロック等）の差やそれら通信クロックの温度特性に起因する誤差が小さくなるので、通信精度が高くなる。
【００４０】
したがって、こうした第一実施形態によれば、短時間且つ高精度な通信によって高応答性且つ高精度な分散制御を実現しつつも、コストの低減に貢献することができる。
尚、第一実施形態では、指令データが特許請求の範囲に記載の「マスタデータ」に相当し、状態量データが特許請求の範囲に記載の「スレーブデータ」に相当する。
【００４１】
（第二実施形態）
図６に示すように、本発明の第二実施形態は第一実施形態の変形例である。第二実施形態の分散制御システム１００は、マスタ局としての一つのエンジン制御装置１２０とスレーブ局としての二つの吸気制御装置１３０，１４０とを組み合わせてなる通信システム１０２を主体としている。この通信システム１０２では、一本のケーブルからなる共通バス１１０に各制御装置１２０，１３０，１４０が個別の信号線１１２，１１３，１１４を介して接続されている。即ち通信システム１０２は、バス型の通信ネットワークを形成している。
【００４２】
通信システム１０２において各制御装置１２０，１３０，１４０は、第一実施形態と同様、ＣＰＵ１２１，１３１，１４１、メモリ１２２，１３２，１４２及び入出力ＩＦ１２４，１３４，１４４を備えたマイクロコンピュータ等の電気回路で構成されている。そして、第一実施形態と同様に入出力ＩＦ１２４，１３４，１４４にはＬＩＮ用のＩＦ回路１２５，１３５，１４５が設けられており、それらＩＦ回路１２５，１３５，１４５に上述の信号線１１２，１１３，１１４がそれぞれ接続されている。したがって、信号線１１２，１１３及び共通バス１１０が形成する通信経路を通じた制御装置１２０，１３０間のデータ伝送には、図７（Ａ），（Ｂ）に示すように高（Ｈ）レベルと低（Ｌ）レベルとの間の電圧振幅が略一定のパルス列信号が用いられる。また、信号線１１２，１１４及び共通バス１１０が形成する通信経路を通じた制御装置１２０，１４０間のデータ伝送には、図７（Ａ），（Ｃ）に示すように高（Ｈ）レベルと低（Ｌ）レベルとの間の電圧振幅が略一定のパルス列信号が用いられる。
【００４３】
図６に示すエンジン制御装置１２０は、メモリ１２２に記憶されているプログラムの内容を除いて第一実施形態と同様の構成を有している。
各吸気制御装置１３０，１４０は、吸気系１５０における相異なる弁１５１，１５２の開度を制御する。
【００４４】
具体的に吸気管長切換弁１５１は、スロットル弁５の下流側において吸気を流す流路を、主流路１５３と、主流路１５３よりも長い迂回流路１５４との間で切り換えるものであり、当該弁１５１の駆動装置１５５が第一吸気制御装置１３０の入出力ＩＦ１３４に接続されている。そこで第一吸気制御装置１３０は、メモリ１３２に記憶されているプログラムをＣＰＵ１３１により実行することで、吸気管長切換弁１５１の目標開度に基づく駆動信号を駆動装置１５５へ与えると共に、吸気管長切換弁１５１の実開度を表す信号を駆動装置１５５から受け取る。尚、本実施形態では、吸気管長切換弁１５１が全閉、即ち弁開度が「０度」に制御されるとき迂回流路１５４が吸気流路として選択され、吸気管長切換弁１５１が全開、即ち弁開度が「９０度」に制御されるとき主流路１５３が吸気流路として選択される。
【００４５】
一方、吸気流制御弁１５２は、流路１５３，１５４の下流側において吸気ポート８直前の流路面積を制御するものであり、当該弁１５２の駆動装置１５６が第二吸気制御装置１４０の入出力ＩＦ１４４に接続されている。そこで第二吸気制御装置１４０は、メモリ１４２に記憶されているプログラムをＣＰＵ１４１により実行することで、吸気流制御弁１５２の目標開度に基づく駆動信号を駆動装置１５６へ与えると共に、吸気流制御弁１５２の実開度を表す信号を駆動装置１５６から受け取るようになっている。尚、本実施形態では、吸気流制御弁１５２が全閉、即ち弁開度が「０度」に制御されるとき流路面積が最小となり、吸気流制御弁１５２が全開、即ち弁開度が「９０度」に制御されるとき流路面積が最大となる。
【００４６】
このような通信システム１０２において各制御装置１２０，１３０，１４０は、メモリ１２２，１３２，１４２に記憶されているプログラムをＣＰＵ１２１，１３１，１４１により実行することで、装置１２０，１３０間及び装置１２０，１４０間の双方向通信を実現する。
以下、通信システム１０２による双方向通信について詳しく説明する。尚、以下の説明では、信号線１１２，１１３，１１４及び共通バス１１０の電圧レベルを高（Ｈ）レベルから低（Ｌ）レベルへ変化させる各制御装置１２０，１３０，１４０の出力を、「オンパルス」の出力とする。
【００４７】
内燃式エンジン１が始動すると、メモリ１２２に記憶の通信周期Ｔc毎にエンジン制御装置１２０は、各周期Ｔcの開始からインターバル期間Ｔiが経過するまでに、指令対象装置の選定と、対象特定データ及び指令データの生成とを実施する。ここで指令対象装置の選定は、吸気制御装置１３０，１４０のうち指令を与える装置を選定するものであり、エンジン制御装置１２０が各吸気制御装置１３０，１４０から受信する状態量データの他、内燃式エンジン１の制御状態や車両状態等に基づいて実施される。また、対象特定データは、指令対象装置を特定するＩＤであり、図８（Ａ）に示すように本実施形態では、指令対象装置が第一吸気制御装置１３０のとき「１」、指令対象装置が第二吸気制御装置１４０のとき「２」とされる。さらにまた、指令データは、吸気系１５０の弁１５１，１５２のうち指令対象装置に接続の弁の目標開度を指令するものであり、本実施形態においても「０度」から「９０度」の間の開度値（連続値又は離散値）とされる。尚、指令データを「０度」と「９０度」との間のいずれの開度値とするかは、エンジン制御装置１２０が各吸気制御装置１３０，１４０から受信する状態量データの他、内燃式エンジン１の制御状態や車両状態等に基づいて判断される。
【００４８】
また、エンジン制御装置１２０は、各通信周期Ｔcのインターバル期間Ｔiにおいて対象特定データ及び指令データの生成後には、それらの生成データを図７（Ａ）に示すように変換して、入出力ＩＦ１２４から信号線１１２へと出力する。具体的に対象特定データは、通信周期Ｔcに対するオンパルス幅Ｔm1の比率Ｒm1へと変換され、また指令データは、周期Ｔcに対するオンパルス幅Ｔm2の比率Ｒm2へと変換される。ここで比率Ｒm1は、インターバル期間Ｔiのうち第一期間Ｔi1未満のオンパルス幅Ｔm1を実現する範囲で設定される。図８（Ａ）はその設定例であり、対象特定データが「１」であるときには比率Ｒm1が「２．５％」に設定され、対象特定データが「２」であるときには比率Ｒm1が「２５％」に設定される。一方、比率Ｒm2は、指令データとしての開度値と線形関係を有するよう、インターバル期間Ｔiのうち第二期間Ｔi2未満のオンパルス幅Ｔm2を実現する範囲で設定される。図８（Ｂ）はその設定例であり、指令データが「０度」であるときには比率Ｒm2が「２．５％」に設定され、指令データが「９０度」であるときには比率Ｒm2が「２５％」に設定される。尚、図７に示すように本実施形態では、第一期間Ｔi1が、インターバル期間Ｔiの開始から当該期間Ｔiの途中まで継続する期間（例えば期間Ｔiの半値）とされ、また第二期間Ｔi2が、第一期間Ｔi1の後に連続しインターバル期間Ｔiの終わりまで継続する期間とされる。さらに本実施形態では、オンパルス幅Ｔm1が第一期間Ｔi1未満となるように比率Ｒm1の上限値が設定されてメモリ１２２に記憶されており、またオンパルス幅Ｔm2が第二期間Ｔi2未満となるように比率Ｒm2の上限値が設定されてメモリ１２２に記憶されている。したがって、エンジン制御装置１２０は、以上のデータ生成並びに出力処理をインターバル期間Ｔi内に終えることができ、しかも対象特定データの出力後に指令データを出力することができる。
【００４９】
以上の処理によりエンジン制御装置１２０から信号線１１２へ通信周期Ｔc毎に出力される対象特定データ並びに指令データは、各周期Ｔcのインターバル期間Ｔiに共通バス１１０及び信号線１１３，１１４へ伝播する。そして、これら伝播データのうち対象特定データは、各吸気制御装置１３０，１４０の入出力ＩＦ１３４，１４４にて受信される。各吸気制御装置１３０，１４０は、この対象特定データの受信が内燃式エンジン１の始動後、初めての受信であった場合には、第一実施形態と同様な初期処理を対象特定データを表すオンパルスに関して実施した後、当該対象特定データと同一期間Ｔiの指令データを無視して待機する。尚、インターバル期間Ｔiは、各吸気制御装置１３０，１４０のメモリ１３２，１４２に記憶されて利用されるようになっている。
【００５０】
一方、対象特定データの受信が内燃式エンジン１の始動後、二回目以降の受信であった場合に各吸気制御装置１３０，１４０は、第一実施形態の応答処理と同様にして対象特定データを表すオンパルスのエッジ検出を行い、通信周期Ｔcを割り出す。続いて各吸気制御装置１３０，１４０は、受信した対象特定データが自身を特定するＩＤではない場合は、当該対象特定データと同一期間Ｔiの指令データを無視して待機する一方、受信した対象特定データが自身を特定するＩＤである場合は、本実施形態の応答処理を実施する。
【００５１】
具体的に第一吸気制御装置１３０の応答処理では、まず、受信した対象特定データと同一期間Ｔiの指令データを受信してメモリ１３２に記憶すると共に、当該指令データの目標開度に従う駆動信号を吸気管長切換弁１５１の駆動装置１５５に対して与える。
第一吸気制御装置１３０の応答処理では次に、通信周期Ｔcの開始からインターバル期間Ｔiが経過するまでに、吸気管長切換弁１５１の実開度を表す状態量データを生成する。ここで状態量データは、第一吸気制御装置１３０が吸気管長切換弁１５１の駆動装置１５５から受ける信号に基づいて生成するものであり、図９（Ｂ）に示す「０度」から「９０度」の間の開度値（連続値又は離散値）とされる。
【００５２】
第一吸気制御装置１３０の応答処理ではさらに、通信周期Ｔcの開始からインターバル期間Ｔiが経過すると、メモリ１３２に記憶の自己特定データと、期間Ｔiに生成の状態量データとを図７（Ｂ）に示すように変換して、入出力ＩＦ１３４から信号線１１３へと出力する。具体的に自己特定データは、図９（Ａ）に示すように第一吸気制御装置１３０を特定するＩＤ「１」であって、インターバル期間Ｔiに対するオンパルス幅Ｔs1の比率Ｒs1へと変換され、また状態量データは、期間Ｔiに対するオンパルス幅Ｔs2の比率Ｒs2へと変換される。ここで比率Ｒs1は、通信周期Ｔcにおけるインターバル期間Ｔi後の残期間Ｔrのうち第一期間Ｔr1未満のオンパルス幅Ｔs1を実現する範囲で設定される。図９（Ａ）はその設定例であり、比率Ｒs1が自己特定データ「１」に対応して「６．２５％」に設定される。一方、比率Ｒs2は、状態量データとしての開度値と線形関係を有するよう、残期間Ｔrのうち第二期間Ｔr2未満のオンパルス幅Ｔs2を実現する範囲で設定される。図９（Ｂ）はその設定例であり、状態量データが「０度」であるときには比率Ｒs2が「６．２５％」に設定され、状態量データが「９０度」であるときには比率Ｒs2が「６２．５％」に設定される。尚、図７に示すように本実施形態では、第一期間Ｔr1が、残期間Ｔrの開始から当該期間Ｔrの途中まで継続する期間（例えば期間Ｔrの半値）とされ、また第二期間Ｔr2が、第一期間Ｔr1の後に連続し残期間Ｔrの終わりまで継続する期間とされる。さらに本実施形態では、オンパルス幅Ｔs1が第一期間Ｔr1未満となるように比率Ｒs1の上限値が設定されてメモリ１３２に記憶されており、またオンパルス幅Ｔs2が第二期間Ｔr2未満となるように比率Ｒs2の上限値が設定されてメモリ１３２に記憶されている。したがって、第一吸気制御装置１３０は、以上のデータ出力処理を残期間Ｔr内に終えることができ、しかも自己特定データの出力後に状態量データを出力することができる。
【００５３】
以上、第一吸気制御装置１３０の応答処理について説明した。以下、第二吸気制御装置１４０の応答処理について、第一吸気制御装置１３０の応答処理と異なる点を中心に説明する。
第二吸気制御装置１４０の応答処理では、まず、受信した対象特定データと同一期間Ｔiの指令データを受信してメモリ１４２に記憶すると共に、当該指令データの目標開度に従う駆動信号を吸気流制御弁１５２の駆動装置１５６に対して与える。
【００５４】
第二吸気制御装置１４０の応答処理では次に、インターバル期間Ｔiが経過するまでに、吸気流制御弁１５２の実開度を表す状態量データ、即ち「０度」から「９０度」の間の開度値（連続値又は離散値）を生成する。
第二吸気制御装置１４０の応答処理ではさらに、インターバル期間Ｔiが経過すると、メモリ１４２に記憶の自己特定データと、期間Ｔiに生成の状態量データとをそれぞれ図７（Ｃ）に示すように比率Ｒs1及びＲs2へと変換し、入出力ＩＦ１４４から信号線１１４へ出力する。ここで自己特定データは、図９（Ａ）に示すように第二吸気制御装置１４０を特定するＩＤ「２」であり、当該自己特定データを表す比率Ｒs1は、通信周期Ｔcの残期間Ｔrのうち第一期間Ｔr1未満のオンパルス幅Ｔs1を実現する範囲で例えば図９（Ａ）の「６２．５％」に設定される。一方、状態量データを表す比率Ｒs2については、図９（Ｂ）に示す如く、第一吸気制御装置１３０の場合と同様に設定される。尚、メモリ１４２には、第一吸気制御装置１３０の場合と同様に設定された各比率Ｒs1，Ｒs2の上限値が記憶されている。したがって、第二吸気制御装置１４０は、以上のデータ出力処理を残期間Ｔr内に終えることができ、しかも自己特定データの出力後に状態量データを出力することができる。
【００５５】
さて、通信周期Ｔc毎に吸気制御装置１３０，１４０のいずれかから出力される自己特定データ及び状態量データは、各周期Ｔcの期間Ｔrにおいて、共通バス１１０及び信号線１１２を経由してエンジン制御装置１２０へ伝播する。これら伝播データのうち自己特定データを入出力ＩＦ１２４にて受信するエンジン制御装置１２０は、当該自己特定データ及び後続する状態量データの送信元の吸気制御装置を判定する。さらに、自己特定データに続いて状態量データを入出力ＩＦ１２４にて受信するエンジン制御装置１２０は、当該状態量データを、先に判定された送信元の吸気制御装置と関連付けてメモリ１２２に記憶し、以降の指令データの生成や内燃式エンジン１の制御に反映させる。
【００５６】
以上説明した第二実施形態によると、マスタ局としてのエンジン制御装置１２０からスレーブ局としての吸気制御装置１３０，１４０へのデータ送信は、通信周期Ｔcの開始から通信周期Ｔcより短いインターバル期間Ｔiが経過するまでに行われる。その一方、吸気制御装置１３０，１４０からエンジン制御装置１２０へのデータ送信は、通信周期Ｔcにおけるインターバル期間Ｔi後の残期間Ｔrに行われる。しかも吸気制御装置１３０，１４０では、指令データを表すオンパルスの立ち上がりエッジを検出することにより、別の制御装置１２０が定めた通信周期Ｔcを認識して期間Ｔiの経過判断に利用している。したがって、第一実施形態と同様の原理により、各通信周期Ｔcにおけるデータ重畳を図７（Ｄ）に示すように確実に防止することができるので、通信時間の短縮が可能となる。
【００５７】
さらに第二実施形態によると、エンジン制御装置１２０から吸気制御装置１３０，１４０へ送信される対象特定データ及び指令データは、通信周期Ｔcに対するオンパルス幅Ｔm1，Ｔm2の比率Ｒm1，Ｒm2にて表される。また、吸気制御装置１３０，１４０からエンジン制御装置１２０へ送信される自己特定データ及び状態量データは、インターバル期間Ｔiに対するオンパルス幅Ｔs1，Ｔs2の比率Ｒs1，Ｒs2にて表される。したがって、第一実施形態と同様の原理により、コストの低減と通信精度の向上とを図ることができる。
【００５８】
またさらに第二実施形態によると、各通信周期Ｔcのインターバル期間Ｔiにおいてエンジン制御装置１２０からは、指令対象装置を特定する対象特定データと、指令対象装置に与える指令データとがシリアルに出力される。これにより各吸気制御装置１３０，１４０では、自身を特定した対象特定データと同一期間Ｔiの指令データを受信することで、自身への指令データのみを選択的に受け取ることができる。したがって、エンジン制御装置１２０から複数の吸気制御装置１３０，１４０へのデータ伝送を正確に行うことができる。しかも第二実施形態では、指令データが対象特定データに後続して出力されるので、各吸気制御装置１３０，１４０では、自身を特定した対象特定データを受信した場合に限り、指令データを受信してメモリ１３２，１４２に記憶すればよい。したがって、メモリ１３２，１４２の記憶容量が少なくても済むので、コストの低減に繋がる。
【００５９】
加えて第二実施形態によると、各通信周期Ｔcのインターバル期間Ｔi後の残期間Ｔrおいて吸気制御装置１３０，１４０のいずれかからは、当該装置自身を特定する自己特定データと、当該装置の制御する弁に関する状態量データが、この順でシリアルに出力される。これによりエンジン制御装置１２０では、先に受信する自己特定データに基づいてその送信元の吸気制御装置を正確に判定し、後に受信する状態量データを送信元の吸気制御装置と関連付けてメモリ１２２に記憶することができる。したがって、エンジン制御装置１２０では、受信した状態量データを指令データの生成や内燃式エンジン１の制御に正確に反映させることができ、分散制御の精度が向上する。
【００６０】
このように第二実施形態によっても、短時間且つ高精度な通信の下、高応答性且つ高精度な分散制御を実現しつつ、コストの低減に貢献することができる。
尚、第二実施形態では、対象特定データ及び指令データが特許請求の範囲に記載の「マスタデータ」に相当し、対象特定データが特許請求の範囲に記載の「送信先特定データ」に相当する。また、自己特定データ及び状態量データが特許請求の範囲に記載の「スレーブデータ」に相当し、自己特定データが特許請求の範囲に記載の「送信元特定データ」に相当する。
【００６１】
（第三実施形態）
図１０に示すように、本発明の第三実施形態は第一実施形態の変形例である。第三実施形態による分散制御システム２００の通信システム２０２では、吸気系２５０に設けられた吸気流制御弁１５２の駆動装置１５６が吸気制御装置２１０の入出力ＩＦ３４に接続されている。ここで、吸気流制御弁１５２及び駆動装置１５６の構成は第二実施形態と実質的に同一である。したがって、吸気制御装置２１０は、メモリ２１２に記憶されているプログラムをＣＰＵ３１により実行することで、吸気流制御弁１５２の目標開度に基づく駆動信号を駆動装置１５６へ与えると共に、吸気流制御弁１５２の実開度を表す信号を駆動装置１５６から受け取るようになっている。
また、通信システム２０２においてエンジン制御装置２２０は、メモリ２２２に記憶されているプログラムを除いて、第一実施形態のエンジン制御装置２０に準ずる構成を有している。
【００６２】
このような通信システム２０２において各制御装置２２０，２１０は、内燃式エンジン１の始動に応じて起動し、メモリ２２２，２１２に記憶されているプログラムをＣＰＵ２１，３１により実行することで、それぞれマスタ局及びスレーブ局として機能して双方向通信を実現する。
以下、通信システム２０２による双方向通信について詳しく説明する。尚、以下の説明では、信号線１１の電圧レベルを高（Ｈ）レベルから低（Ｌ）レベルへ変化させる各制御装置２２０，２１０の出力を、「オンパルス」の出力とする。
【００６３】
図１１（Ａ）に示すようにエンジン制御装置２２０は、起動直後と、吸気制御装置２１０から状態量データを受信する毎に、マスタ側アイドル期間ＴMIを設定する。ここで、エンジン制御装置２２０の起動直後における一回目のマスタ側アイドル期間ＴMIの設定では、当該起動直後にエンジン制御装置２２０が電気的に不安定になる時間を考慮して定められた固定値をメモリ２２２から読み出して、マスタ側アイドル期間ＴMIとする。一方、エンジン制御装置２２０の起動後、状態量データの受信毎に行われる二回目以降のマスタ側アイドル期間ＴMIの設定は、エンジン制御装置２２０の負荷状態等に基づく。
【００６４】
また、エンジン制御装置２２０は、起動後又は状態量データの受信後、設定したマスタ側アイドル期間ＴMIが経過するまでに、指令データを生成する。ここで指令データは、吸気流制御弁１５２の目標開度を指令するものであり、第二実施形態の場合と同様に「０度」から「９０度」の間の開度値とされる。尚、指令データを「０度」と「９０度」との間のいずれの開度値とするかは、状態量データ、内燃式エンジン１の制御状態、車両状態等に基づいて判断される。
【００６５】
さらにエンジン制御装置２２０は、起動後又は状態量データの受信後、設定したマスタ側アイドル期間ＴMIが経過すると、その経過の直前に生成した指令データを図１１（Ａ）に示すように変換し、入出力ＩＦ２４から信号線１１へ出力する。ここで指令データは、その変換の直前に設定されたマスタ側アイドル期間ＴMIに対するオンパルス幅ＴMの比率ＲMにて表される。特に本実施形態において指令データを表す比率ＲMは、開度値に対して線形関係を有するように設定される。図１２はその設定例を示しており、指令データが「０度」であるとき比率ＲMが「１００％」に設定され、指令データが「４５度」であるとき比率ＲMが「２００％」に設定され、指令データが「９０度」であるとき比率ＲMが「３００％」に設定される。
【００６６】
こうした処理によりエンジン制御装置２２０から信号線１１へ出力された指令データは、吸気制御装置２１０の入出力ＩＦ３４にて順次受信される。そして、図１１（Ｂ）に示すように吸気制御装置２１０は、エンジン制御装置２２０から指令データを受信する毎に、装置２１０自身の負荷状態等に基づいてスレーブ側アイドル期間ＴSIを設定する。
【００６７】
また、吸気制御装置２１０は、指令データの受信後、設定したスレーブ側アイドル期間ＴSIが経過するまでに、状態量データを生成する。ここで状態量データは、吸気流制御弁１５２の実開度を表すものであり、第二実施形態の場合と同様に「０度」から「９０度」の間の開度値とされる。
【００６８】
さらに吸気制御装置２１０は、指令データの受信後、設定したスレーブ側アイドル期間ＴSIが経過すると、その経過の直前に生成した状態量データを図１１（Ｂ）に示すように変換し、入出力ＩＦ３４から信号線１１へ出力する。ここで状態量データは、その変換の直前に設定されたスレーブ側アイドル期間ＴSIに対するオンパルス幅ＴSの比率ＲSにて表される。特に本実施形態において状態量データを表す比率ＲSは、開度値に対して線形関係を有するように設定される。図１３はその設定例を示しており、状態量データが「０度」であるとき比率ＲSが「１００％」に設定され、状態量データが「４５度」であるとき比率ＲSが「２００％」に設定され、状態量データが「９０度」であるとき比率ＲSが「３００％」に設定される。
【００６９】
こうした処理により吸気制御装置２１０から信号線１１へ出力された状態量データは、エンジン制御装置２２０の入出力ＩＦ２４にて順次受信される。故にエンジン制御装置２２０では、スレーブ側アイドル期間ＴSIとそれに続くオンパルス幅ＴSとを検知して、それらの比率ＲSを算出することで、状態量データの内容を把握し、以降の指令データの生成や内燃式エンジン１の制御に反映させることができる。また、吸気制御装置２１０では、上述した処理とは別に、エンジン制御装置２２０から受信した指令データの内容をメモリ２１２に記憶し、指令データの目標開度に従う駆動信号を吸気流制御弁１５２の駆動装置１５６に対して与える処理も行う。このとき指令データの内容の把握は、マスタ側アイドル期間ＴMIとそれに続くオンパルス幅ＴMとを検知して、それらの比率ＲMを算出することにより可能となる。
【００７０】
以上説明した第三実施形態によると、エンジン制御装置２２０は、吸気制御装置２１０からのデータ受信に応答して当該装置２１０へのデータ送信を行い、また吸気制御装置２１０は、エンジン制御装置２２０からのデータ受信に応答して当該装置２２０へのデータ送信を行う。故に制御装置２２０，２１０間では、図１１に示すように、一方向のデータ伝送と他方向のデータ伝送とが同一経路において交互に繰り返される。しかもエンジン制御装置２２０は、吸気制御装置２１０からのデータ受信後、マスタ側アイドル期間ＴMIが経過すると、データ送信を行い、また吸気制御装置２１０は、エンジン制御装置２２０からのデータ受信後、スレーブ側アイドル期間ＴSIが経過すると、データ送信を行う。故に制御装置２２０，２１０間では、図１１（Ｃ）に示すように、一方向のデータ伝送と他方向のデータ伝送とが同時に行われることがなく、重畳しない。これらのことより第三実施形態では、同一経路による双方向通信を実現して、その通信時間を短縮することが可能になる。
【００７１】
さらに第三実施形態によると、制御装置２２０，２１０間において伝送される指令データ及び状態量データは、アイドル期間ＴMI，ＴSIに対するオンパルス幅ＴM，ＴSの比率ＲM，ＲSにて表される。故に、第一実施形態と同様の原理によってコストの低減と通信精度の向上とが図られるのみならず、データ伝送の重畳防止効果をもたらす各アイドル期間ＴMI，ＴSIが各データの表現にも利用されることによってデータの伝送効率が高められる。また、第三実施形態のオンパルス幅ＴM，ＴSや比率ＲM，ＲSは、第一実施形態のオンパルス幅Ｔm，Ｔsや比率Ｒm，Ｒsに比べて設定自由度が高いので、双方向通信を実現するプログラムを簡素化してコストを低減することができる。
【００７２】
またさらに第三実施形態によると、各制御装置２２０，２１０では、負荷状態に応じて各アイドル期間ＴMI，ＴSIを逐次調整することができる。故に、例えば内燃式エンジン１の高速回転時等、内燃式エンジン１の制御によってエンジン制御装置２２０の制御処理負荷が大きくなるときには、図１４に示すようにマスタ側アイドル期間ＴMIを延長してエンジン制御装置２２０の通信負荷を軽減することができる。また、内燃式エンジン１の高速回転時等、エンジン制御装置２２０の制御処理負荷が大きく且つ吸気流制御弁１５２の開度を保持しておくだけでよいときには、図１５に示すようにスレーブ側アイドル期間ＴSIを延長してエンジン制御装置２２０の通信負荷を軽減することができる。尚、勿論、内燃式エンジン１の高速回転時等にアイドル期間ＴMI，ＴSIの双方を延長してエンジン制御装置２２０の通信負荷を大幅に軽減することも可能である。
【００７３】
このように第三実施形態によっても、短時間且つ高精度な通信の下、高応答性且つ高精度な分散制御を実現しつつ、コストの低減に貢献することができる。
尚、第三実施形態では、指令データが特許請求の範囲に記載の「マスタデータ」に相当し、状態量データが特許請求の範囲に記載の「スレーブデータ」に相当する。
【００７４】
（第四実施形態）
図１６に示すように、本発明の第四実施形態は第三実施形態の変形例である。第四実施形態による分散制御システム３００の通信システム３０２では、吸気系３５０の吸気流制御弁１５２の実開度を表す信号に加え、診断結果を表す信号を吸気制御装置３１０が吸気流制御弁１５２の駆動装置３５２から受け取るようになっている。ここで診断結果とは、駆動装置３５２が自身の異常と吸気流制御弁１５２の実開度の検出異常とを診断した結果である。尚、以下の説明では、駆動装置３５２と実開度検出との双方に異常が認められないときの診断結果を「正常」、駆動装置３５２に異常が認められたときの診断結果を「装置異常」、実開度検出に異常が認められたときの診断結果を「検出異常」という。
また、通信システム３０２では、吸気流制御弁１５２の駆動装置３５２等の車両電装品に電力を供給する車両の電源３０６がエンジン制御装置３２０の入出力ＩＦ２４に接続されており、エンジン制御装置３２０は当該電源３０６の電圧値を監視する。
【００７５】
このような通信システム３０２において各制御装置３２０，３１０は、内燃式エンジン１の始動に応じて起動し、メモリ３２２，３１２に記憶されているプログラムをＣＰＵ２１，３１により実行することで、それぞれマスタ局及びスレーブ局として機能して双方向通信を実現する。
以下、通信システム３０２による双方向通信について詳しく説明する。尚、以下の説明では、信号線１１の電圧レベルを高（Ｈ）レベルから低（Ｌ）レベルへ変化させる各制御装置３２０，３１０の出力を、「オンパルス」の出力とする。
【００７６】
図１７（Ａ）に示すようにエンジン制御装置３２０は、起動直後と、吸気制御装置３１０からスレーブデータを受信する毎に、マスタ側アイドル期間ＴMIを設定する。ここでエンジン制御装置３２０の起動直後における一回目のマスタ側アイドル期間ＴMIの設定は、第三実施形態の場合と同様である。
【００７７】
一方、エンジン制御装置３２０の起動後に一回目のスレーブデータを受信して行われる二回目のマスタ側アイドル期間ＴMIの設定では、後に出力するマスタデータの種類を選択し、その選択した種類に応じてマスタ側アイドル期間ＴMIを変化させる。ここでマスタデータは、吸気流制御弁１５２の目標開度を指令する指令データと、電源３０６の電圧値を表す監視データの二種類である。また、エンジン制御装置３２０が起動後一回目のスレーブデータを受信する前に出力する一回目のマスタデータを初期マスタデータとすると、二回目のマスタ側アイドル期間ＴMIは、初期マスタデータを表すオンパルス幅ＴM0に対する比率ＰM0がマスタデータの種類を表すものとされる。図１８（Ａ）は、二回目のマスタ側アイドル期間ＴMIを表す比率ＰM0の設定例を示しており、選択したマスタデータが指令データであるとき比率ＰM0が「１００％以下」の値（例えば５０％）に設定され、選択したマスタデータが監視データであるとき比率ＰM0が「１００％超」の値（例えば２００％）に設定される。
【００７８】
また一方、エンジン制御装置３２０の起動後、二回目以降のスレーブデータの受信毎に行われる三回目以降のマスタ側アイドル期間ＴMIの設定では、マスタデータの種類の選択後、マスタ側アイドル期間ＴMIを変化させる方法が二回目のマスタ側アイドル期間ＴMIの場合と異なっている。具体的に三回目以降のマスタ側アイドル期間ＴMIは、その前の回に設定のマスタ側アイドル期間ＴMIに対する比率ＰMがマスタデータの種類を表すものとされる。図１８（Ｂ）は、三回目以降のマスタ側アイドル期間ＴMIを表す比率ＰMの設定例を示しており、選択したマスタデータが指令データであるとき比率ＰMが「１００％以下」の値（例えば５０％）に設定され、選択したマスタデータが監視データであるとき比率ＰMが「１００％超」の値（例えば２００％）に設定される。
【００７９】
このようなマスタ側アイドル期間ＴMIの設定（以下、単にＴMI設定という）に続いてエンジン制御装置３２０は、起動後又はスレーブデータの受信から当該設定期間ＴMIが経過するまでに、指令データ又は監視データをマスタデータとして生成する。ここで一回目のＴMI設定に続く場合と、マスタデータとして指令データが選択された二回目及び三回目以降のＴMI設定に続く場合は、第三実施形態と同様な指令データが生成される。一方、マスタデータとして監視データが選択された二回目及び三回目以降のＴMI設定に続く場合、電源３０６の電圧値の監視結果に基づいて「８Ｖ」から「１６Ｖ」の間の監視データが生成される。
【００８０】
エンジン制御装置３２０はさらに、起動後又はスレーブデータの受信後、設定したマスタ側アイドル期間ＴMIが経過すると、その経過直前にマスタデータとして生成した指令データ又は監視データを図１７（Ａ）に示すように変換し、入出力ＩＦ２４から信号線１１へ出力する。ここで指令データ及び監視データは、その変換直前に設定したマスタ側アイドル期間ＴMIに対するオンパルス幅ＴM（ＴM0を含む）の比率ｒMにて表される。特に本実施形態において指令データを表す比率ｒMは、開度値に対して線形関係を有するように設定される。図１９（Ａ）はその設定例を示しており、指令データが「０度」であるとき比率ｒMが「１００％」に設定され、指令データが「４５度」であるとき比率ｒMが「２００％」に設定され、指令データが「９０度」であるとき比率ｒMが「３００％」に設定される。また、本実施形態において監視データを表す比率ｒMは、電圧値に対して線形関係を有するように設定される。図１９（Ｂ）はその設定例を示しており、監視データが「８Ｖ」であるとき比率ｒMが「１００％」に設定され、監視データが「１２Ｖ」であるとき比率ｒMが「２００％」に設定され、監視データが「１６Ｖ」であるとき比率ｒMが「３００％」に設定される。
【００８１】
こうした処理によりエンジン制御装置３２０から信号線１１へ出力されたマスタデータは、吸気制御装置３１０の入出力ＩＦ３４にて順次受信される。そして、図１７（Ｂ）に示すように吸気制御装置３１０は、エンジン制御装置３２０からマスタデータを受信する毎に、スレーブ側アイドル期間ＴSIを設定する。ここで、吸気制御装置３１０の起動後に一回目のマスタデータを受信して行われる一回目のスレーブ側アイドル期間ＴSIの設定では、予め定めたれた固定値をメモリ２２２から読み出してスレーブ側アイドル期間ＴSIとする。
【００８２】
一方、吸気制御装置３１０の起動後に二回目のマスタデータを受信して行われる二回目のスレーブ側アイドル期間ＴSIの設定では、後に出力するスレーブデータの種類を選択し、その選択した種類に応じてスレーブ側アイドル期間ＴSIを変化させる。ここでスレーブデータは、吸気流制御弁１５２の実開度を表す状態量データと、駆動装置３５２による診断結果を表す診断データの二種類である。また、吸気制御装置３１０が起動後二回目のマスタデータを受信する前に出力する一回目のスレーブデータを初期スレーブデータとすると、二回目のスレーブ側アイドル期間ＴSIは、初期スレーブデータを表すオンパルス幅ＴS0に対する比率ＰS0がスレーブデータの種類を表すものとされる。図２０（Ａ）は、二回目のスレーブ側アイドル期間ＴSIを表す比率ＰS0の設定例を示しており、選択したスレーブデータが状態量データであるとき比率ＰS0が「１００％以下」の値（例えば５０％）に設定され、選択したスレーブデータが診断データであるとき比率ＰS0が「１００％超」の値（例えば２００％）に設定される。
【００８３】
また一方、吸気制御装置３１０の起動後、三回目以降のマスタデータの受信毎に行われる三回目以降のスレーブ側アイドル期間ＴSIの設定では、スレーブデータの種類の選択後、スレーブ側アイドル期間ＴSIを変化させる方法が二回目のスレーブ側アイドル期間ＴSIの場合と異なっている。具体的に三回目以降のスレーブ側アイドル期間ＴSIは、その前の回に設定のスレーブ側アイドル期間ＴSIに対する比率ＰSがスレーブデータの種類を表すものとされる。図２０（Ｂ）は、三回目以降のスレーブ側アイドル期間ＴSIを表す比率ＰSの設定例を示しており、選択したスレーブデータが状態量データであるとき比率ＰSが「１００％以下」の値（例えば５０％）に設定され、選択したスレーブデータが診断データであるとき比率ＰSが「１００％超」の値（例えば２００％）に設定される。
【００８４】
このようなスレーブ側アイドル期間ＴSIの設定（以下、単にＴSI設定という）に続いて吸気制御装置３１０は、マスタデータの受信から当該設定期間ＴSIが経過するまでに、状態量データ又は診断データをスレーブデータとして生成する。ここで一回目のＴSI設定に続く場合と、スレーブデータとして状態量データが選択された二回目及び三回目以降のＴSI設定に続く場合は、第三実施形態と同様な状態量データが生成される。一方、スレーブデータとして診断データが選択された二回目及び三回目以降のＴSI設定に続く場合、「正常」、「装置異常」、「検出異常」のいずれかの診断結果を表す診断データが生成される。
【００８５】
吸気制御装置３１０はさらに、マスタデータの受信後、設定したスレーブ側アイドル期間ＴSIが経過すると、その経過直前にスレーブデータとして生成した状態量データ又は診断データを図１７（Ｂ）に示すように変換し、入出力ＩＦ２４から信号線１１へ出力する。ここで状態量データ及び診断データは、その変換直前に設定したスレーブ側アイドル期間ＴSIに対するオンパルス幅ＴS（ＴS0を含む）の比率ｒSにて表される。特に本実施形態において状態量データを表す比率ｒSは、開度値に対して線形関係を有するように設定される。図２１（Ａ）はその設定例を示しており、状態量データが「０度」であるとき比率ｒSが「１００％」に設定され、状態量データが「４５度」であるとき比率ｒSが「２００％」に設定され、状態量データが「９０度」であるとき比率ｒSが「３００％」に設定される。また、本実施形態において診断データを表す比率ｒSは、各診断結果に対して離散値をとるように設定される。図２１（Ｂ）はその設定例を示しており、診断結果が「正常」であるとき比率ｒSが「１００％」に設定され、診断結果が「装置異常」であるとき比率ｒSが「２００％」に設定され、診断結果が「検出異常」であるとき比率ｒSが「３００％」に設定される。
【００８６】
こうした処理により吸気制御装置３１０から信号線１１へ出力されたスレーブデータは、エンジン制御装置３２０の入出力ＩＦ２４にて順次受信される。故にエンジン制御装置３２０では、スレーブ側アイドル期間ＴSIとそれに続くオンパルス幅ＴSとを検知して、それらの比率ｒSを算出することで、スレーブデータの内容を把握し、以降の指令データの生成や内燃式エンジン１の制御に反映させることができる。また、吸気制御装置３１０では、上述した処理とは別に、エンジン制御装置３２０から受信した指令データ及び監視データの内容をメモリ３１２に記憶し、指令データの目標開度に従う駆動信号を監視データに応じて補正しつつ当該駆動信号を駆動装置３５２に対して与える処理も行う。このとき指令データ及び監視データの内容の把握は、マスタ側アイドル期間ＴMIとそれに続くオンパルス幅ＴMとを検知して、それらの比率ｒMを算出することにより可能となる。
【００８７】
以上説明した第四実施形態によると、エンジン制御装置３２０は、吸気制御装置３１０からのデータ受信後マスタ側アイドル期間ＴMIが経過すると、吸気制御装置３１０へのデータ送信を行う。また、吸気制御装置３１０は、エンジン制御装置３２０からのデータ受信後スレーブ側アイドル期間ＴSIが経過すると、エンジン制御装置３２０へのデータ送信を行う。したがって、制御装置３２０，３１０間では、図１７に示すように一方向のデータ伝送と他方向のデータ伝送とが交互に実現されて、重畳しないので、同一経路による双方向通信の通信時間の短縮が可能になる。
【００８８】
さらに第四実施形態によると、制御装置３２０，３１０間において伝送されるマスタデータ及びスレーブデータは、それらデータの重畳防止効果をもたらすアイドル期間ＴMI，ＴSIに対するオンパルス幅ＴM，ＴSの比率ｒM，ｒSにて表され、しかも当該比率ｒM，ｒSは設定自由度が高い。したがって、コストの低減と通信精度の向上とを図ることができるのみならず、データの伝送効率を高めることができる。
【００８９】
またさらに第四実施形態によると、エンジン制御装置３２０が起動して二回目以降のスレーブデータを受信した後、三回目以降のマスタデータを出力する前には、三回目以降のマスタ側アイドル期間ＴMIの設定が行われる。この設定によれば、三回目以降のマスタ側アイドル期間ＴMIとその前の回のマスタ側アイドル期間ＴMIとの比率ＰMにて三回目以降のマスタデータの種類が表される。故に吸気制御装置３１０では、起動後三回目以降のマスタ側アイドル期間ＴMIとその前の回のマスタ側アイドル期間ＴMIを検知して、それらの比率ＰMを算出することで、起動後三回目以降に受信するマスタデータの種類を識別することができる。また同様に第四実施形態によると、吸気制御装置３１０が起動して三回目以降のマスタデータを受信した後、三回目以降のスレーブデータを出力する前には、三回目以降のスレーブ側アイドル期間ＴSIの設定が行われる。この設定によれば、三回目以降のスレーブ側アイドル期間ＴSIとその前の回のスレーブ側アイドル期間ＴSIとの比率ＰSにて三回目以降のスレーブデータの種類が表される。故にエンジン制御装置３２０では、起動後三回目以降のスレーブ側アイドル期間ＴSIとその前の回のスレーブ側アイドル期間ＴSIとを検知して、それらの比率ＰSを算出することで、起動後三回目以降に受信するスレーブデータの種類を識別することができる。これらのことより第四実施形態では、アイドル期間ＴMI，ＴSIを有効利用して複数種類のマスタデータ及びスレーブデータを伝送することができるので、データの伝送効率がより一層高められる。
【００９０】
加えて第四実施形態によると、エンジン制御装置３２０が起動後に一回目のスレーブデータを受信した後、二回目のマスタデータを出力する前には、二回目のマスタ側アイドル期間ＴMIの設定が行われる。この設定によれば、二回目のマスタ側アイドル期間ＴMIとその前の回となる起動直後のマスタ側アイドル期間ＴMIとの比率ではなく、二回目のマスタ側アイドル期間ＴMIと初期マスタデータに対応するオンパルス幅ＴM0との比率ＰM0にて、二回目のマスタデータの種類が表される。ここで幅ＴM0を持つオンパルスは、電気的に不安定な起動直後のマスタ側アイドル期間ＴMIを過ぎてから出力されるものである。故に吸気制御装置３１０では、起動後二回目のマスタ側アイドル期間ＴMIと初期マスタデータに対応のオンパルス幅ＴM0とを検知して、それらの比率ＰMを算出することで、起動後二回目に受信するマスタデータの種類を識別することができる。
【００９１】
さらに加えて第四実施形態によると、吸気制御装置３１０が起動後に二回目のマスタデータを受信した後、二回目のスレーブデータを出力する前には、二回目のスレーブ側アイドル期間ＴSIの設定が行われる。この設定によれば、二回目のスレーブ側アイドル期間ＴSIと初期スレーブデータに対応するオンパルス幅ＴS0との比率ＰS0にて、二回目のスレーブデータの種類が表される。故にエンジン制御装置３２０では、起動後二回目のスレーブ側アイドル期間ＴSIと初期スレーブデータに対応のオンパルス幅ＴS0とを検知して、それらの比率ＰSを算出することで、起動後二回目に受信するスレーブデータの種類を識別することができる。したがって、この場合にも、スレーブ側アイドル期間ＴSIを複数種類のデータ伝送に有効利用することができるので、データの伝送効率がより一層高められる。
このように第四実施形態によっても、短時間且つ高精度な通信の下、高応答性且つ高精度な分散制御を実現しつつ、コストの低減に貢献することができる。
【００９２】
ここまで、本発明の複数の実施形態について説明してきたが、本発明はそれらの実施形態に限定して解釈されるものではなく、その要旨を逸脱しない範囲内において種々の実施形態に適用可能である。
例えば第一及び第二実施形態では、エンジン制御装置２０，１２０における通信周期Ｔcを可変としてもよい。尚、この場合においても吸気制御装置３０，１３０，１４０は、パルスのエッジ検出によって通信周期Ｔcを正確に把握することができる。また、この場合には、各制御装置２０，３０，１２０，１３０，１４０におけるインターバル期間Ｔiを通信周期Ｔcに応じて可変とする。
【００９３】
さらに第一実施形態では、吸気制御装置３０の初期処理において、受信した指令データに従う弁開度の指令を実施しないようにしてもよい。また、第二実施形態では、吸気制御装置１３０，１４０による対象特定データの受信が内燃式エンジン１の始動後、初めてであった場合に、当該対象特定データが吸気制御装置１３０，１４０自身を特定しているときには、後続する指令データを受信してそれに従う弁開度を与える処理を実施してもよい。
【００９４】
またさらに第一及び第二実施形態では、伝送データを、通信周期Ｔc又はインターバル期間Ｔiに対するオンパルス幅Ｔm，Ｔs，Ｔm1，Ｔm2，Ｔs1，Ｔs2の比率Ｒm，Ｒs，Ｒm1，Ｒm2，Ｒs1，Ｒs2にて表す代わりに、通信周期Ｔc又はインターバル期間Ｔiに対するオフパルス幅の比率にて表してもよい。また、第一及び第二実施形態において通信周期Ｔcを割り出すためのエッジ検出は、オンパルスの立ち上がりエッジ（オフパルスの立ち下がりエッジ）について実施する代わりに、オンパルスの立ち下がりエッジ（オフパルスの立ち上がりエッジ）について実施してもよいし、それらの両方について実施してもよい。尚、これらの変形例では、「オフパルス」の出力は、信号線や共通バスの電圧レベルを低レベルから高レベルへ変化させる各制御装置の出力を意味する。
加えて第一及び第二実施形態では、制御データ及び状態量データをそれぞれ期間Ｔi，Ｔrに二つ以上伝送するようにしてもよい。
【００９５】
また加えて第二実施形態では、エンジン制御装置１２０と吸気制御装置１３０，１４０との接続トポロジーをスター型あるいはリング型としてもよい。また、第二実施形態では、スレーブ局としての吸気制御装置を三つ以上、共通バス１１０に接続してもよく、例えば吸気制御装置１３０，１４０に加えて第一実施形態の吸気制御装置３０を共通バス１１０に接続する。さらにまた、第二実施形態では、期間Ｔiにおける対象特定データと指令データの出力順序を逆にしてもよいし、期間Ｔrにおける自己特定データと状態量データの出力順序を逆にしてもよい。
【００９６】
さらに加えて第三及び第四実施形態では、伝送データを、アイドル期間ＴMI，ＴSIに対するオンパルス幅ＴM，ＴSの比率ＲM，ＲS，ｒM，ｒSにて表す代わりに、アイドル期間ＴMI，ＴSIに対するオフパルス幅の比率にて表してもよい。また、第四実施形態においてオフパルス幅の比率を伝送データの表現に利用する場合には、二回目のマスタ側アイドル期間ＴMI及び二回目のスレーブ側アイドル期間ＴSIと、初期マスタデータ及び初期スレーブデータに対応のオフパルス幅との比率にて、二回目のマスタデータ及び二回目のスレーブデータの種類を表すようにしてもよい。尚、これらの変形例では、「オフパルス」の出力は、信号線の電圧レベルを低レベルから高レベルへ変化させる各制御装置の出力を意味する。この他、第四実施形態では、二回目のスレーブ側アイドル期間ＴSIの設定により、二回目のスレーブ側アイドル期間ＴSIとその前の回となる一回目のスレーブ側アイドル期間ＴSIとの比率にて二回目のスレーブデータの種類を表すようにしてもよい。
【００９７】
またさらに加えて第一〜第四実施形態では、車両用の分散制御システム１０，１００，２００，３００におけるエンジン制御装置２０，１２０，２２０，３２０と吸気制御装置３０，１３０，１４０，２１０，３１０との間の双方向通信に本発明を適用した例について説明したが、本発明の適用対象はこれに限定されない。即ち車両用の分散制御システムにおいて、マスタ局としての制御装置と、スレーブ局としての少なくとも一つの制御装置との間の双方向通信であれば、本発明を適用することができる。またその他、車両用以外の分散制御システムにおける制御装置間の双方向通信や、分散制御システムを構成しない通信システムにおける二局間の双方向通信に本発明を適用してもよい。
【図面の簡単な説明】
【００９８】
【図１】第一実施形態による通信方法を説明するための模式図である。
【図２】第一実施形態による分散制御システムを示す構成図である。
【図３】図２のＩＦ回路を示す回路図である。
【図４】第一実施形態による通信方法を説明するための模式図である。
【図５】第一実施形態による通信方法を説明するための模式図である。
【図６】第二実施形態による分散制御システムを示す構成図である。
【図７】第二実施形態による通信方法を説明するための模式図である。
【図８】第二実施形態による通信方法を説明するための模式図である。
【図９】第二実施形態による通信方法を説明するための模式図である。
【図１０】第三実施形態による分散制御システムを示す構成図である。
【図１１】第三実施形態による通信方法を説明するための模式図である。
【図１２】第三実施形態による通信方法を説明するための模式図である。
【図１３】第三実施形態による通信方法を説明するための模式図である。
【図１４】第三実施形態による通信方法を説明するための模式図である。
【図１５】第三実施形態による通信方法を説明するための模式図である。
【図１６】第四実施形態による分散制御システムを示す構成図である。
【図１７】第四実施形態による通信方法を説明するための模式図である。
【図１８】第四実施形態による通信方法を説明するための模式図である。
【図１９】第四実施形態による通信方法を説明するための模式図である。
【図２０】第四実施形態による通信方法を説明するための模式図である。
【図２１】第四実施形態による通信方法を説明するための模式図である。
【符号の説明】
【００９９】
１  内燃式エンジン（制御対象）、２，１５０，２５０，３５０  吸気系（制御対象）、３  エンジン電装品、４  車両センサ、５  スロットル弁、６  駆動装置、１０，１００，２００，３００  分散制御システム、１１，１１２，１１３，１１４  信号線、１２，１０２，２０２，３０２  通信システム、２０，１２０，２２０，３２０  エンジン制御装置（マスタ局）、２２，３２，１２２，１３２，１４２，２１２，２２２，３１２，３２２  メモリ、２５，３５，１２５，１３５，１４５  ＩＦ回路、３０，２１０，３１０  吸気制御装置（スレーブ局）、１１０  共通バス、１３０  第一吸気制御装置（スレーブ局）、１４０  第二吸気制御装置（スレーブ局）、１５１  吸気管長切換弁、１５２  吸気流制御弁、１５５，１５６，３５２  駆動装置、３０６  電源
【図１】
0004756340.tif 000002
【図２】
0004756340.tif 000003
【図３】
0004756340.tif 000004
【図４】
0004756340.tif 000005
【図５】
0004756340.tif 000006
【図６】
0004756340.tif 000007
【図７】
0004756340.tif 000008
【図８】
0004756340.tif 000009
【図９】
0004756340.tif 000010
【図１０】
0004756340.tif 000011
【図１１】
0004756340.tif 000012
【図１２】
0004756340.tif 000013
【図１３】
0004756340.tif 000014
【図１４】
0004756340.tif 000015
【図１５】
0004756340.tif 000016
【図１６】
0004756340.tif 000017
【図１７】
0004756340.tif 000018
【図１８】
0004756340.tif 000019
【図１９】
0004756340.tif 000020
【図２０】
0004756340.tif 000021
【図２１】
0004756340.tif 000022