(57)【要約】【課題】歯科医療機器における高速通信ネットワークを提供する。【解決手段】システムが、通信インタフェースを介してピア−ツー−ピア・ネットワークの形に接続された複数のノードを具えている。これら複数のノードのうちの少なくとも１つのノードは、トランシーバ、少なくとも２つのコネクタ、トランシーバに結合された少なくとも１つの終端抵抗モジュール、少なくとも２つのコネクタのうちの第１コネクタに結合された第１検出回路、及び少なくとも２つのコネクタのうちの第２コネクタに結合された第２検出回路を具え、少なくとも１つの終端抵抗モジュールはノード内に終端抵抗を提供する。第１及び第２検出回路は、ノードがピア−ツー−ピア・ネットワーク内の１つ以上の他のノードに結合されていることを検出し、この検出に基づいて終端抵抗を調整するように構成されている。【選択図】図２
2017188900.tif 000002
【特許請求の範囲】
【請求項１】
通信インタフェースを介してピア−ツー−ピア・ネットワークの形に接続された複数のノードを具えたシステムであって、該複数のノードのうちの少なくとも１つのノードが、
トランシーバと、
少なくとも２つのコネクタと、
前記トランシーバに結合された少なくとも１つの終端抵抗モジュールであって、終端抵抗を前記ノード内に提供する終端抵抗モジュールと、
前記少なくとも２つのコネクタのうちの第１コネクタに結合された第１検出回路と、
前記少なくとも２つのコネクタのうちの第２コネクタに結合された第２検出回路とを具え、
前記第１検出回路及び前記第２検出回路は、前記ノードが前記ピア−ツー−ピア・ネットワーク内の１つ以上の他の前記ノードに結合されていることを検出し、この検出に基づいて前記終端抵抗を自動的に調整するように構成されている、システム。
【請求項２】
前記通信バスがコントローラ・エリア・ネットワーク（ＣＡＮ）バスである、請求項１に記載のシステム。
【請求項３】
前記少なくとも２つのコネクタがＲＪ５０コネクタであり、前記トランシーバがＣＡＮトランシーバである、請求項２に記載のシステム。
【請求項４】
前記ノードが、前記少なくとも１つの終端抵抗モジュールに結合された終端回路をさらに具え、該終端回路は、前記検出に基づいて前記終端抵抗を追加または除去するように構成されている、請求項１に記載のシステム。
【請求項５】
前記検出回路は、
前記少なくとも２つのコネクタが前記他のノードのうちの少なくとも２つのノードに結合されていることを検出することによって、前記ノードが非エンドポイントであるものと判定し、
前記ノードが非エンドポイントであるものと判定すると、当該ノード内の前記終端抵抗を除去するか、さもなければ不作動状態にする
ように構成されている、請求項４に記載のシステム。
【請求項６】
前記検出回路は、
前記少なくとも２つのコネクタのうちの１つのコネクタのみが、前記他のノードのうちの１つのノードのみに結合されていることを検出することによって、前記ノードがエンドポイントであるものと判定し、
前記ノードがエンドポイントであるものと判定すると、前記終端抵抗を当該ノード内に追加する
ように構成されている、請求項４に記載のシステム。
【請求項７】
前記終端抵抗が、ほぼ９９．８Ωに等しい高速用終端抵抗である、請求項１に記載のシステム。
【請求項８】
前記ノードが前記他のノードのうちの１つ以上のノードから切り離された際に、あるいは前記ノードがエンドポイントである際に、前記終端抵抗が前記ノード内にデフォルトで存在する、請求項１に記載のシステム。
【請求項９】
前記第１検出回路は、前記第１コネクタが切り離されると第１の論理値ハイの信号を発生するように構成され、
前記第２検出回路は、前記第２コネクタが切り離されると第２の論理値ハイの信号を発生するように構成されている、
請求項１に記載のシステム。
【請求項１０】
前記第１検出回路は、前記第１コネクタが、当該第１コネクタに差し込まれた第１コネクタケーブルを介して前記通信バスに接続されると、第１の論理値ローの信号を発生するように構成され、
前記第２検出回路は、前記第２コネクタが、当該第２コネクタに差し込まれた第２コネクタケーブルを介して前記通信バスに接続されると、第２の論理値ローの信号を発生するように構成されている、
請求項１に記載のシステム。
【請求項１１】
前記第１検出回路は、前記第１コネクタケーブル内の少なくとも２つのピン間の短絡接続を検出すると、前記第１の論理値ローの信号を発生するように構成され、
前記第２の検出回路は、前記第１コネクタケーブル内の少なくとも２つのコネクタピン間の短絡接続を検出すると、前記第２の論理値ローの信号を発生するように構成されている、
請求項１０に記載のシステム。
【請求項１２】
前記通信バスが高速ＣＡＮバスであり、前記ノードが高速ＣＡＮノードであり、前記第１検出回路は、さらに、
第１接続ケーブル内で短絡した第１対のピンに基づいて、前記ノードが前記第１接続ケーブルを介して少なくとも第２のノードに結合されていることを検出するように構成されている、請求項１に記載のシステム。
【請求項１３】
前記第１検出回路は、さらに、
前記第１接続ケーブル内で短絡した第２対のピンに基づいて、前記少なくとも第２のノードが低速ＣＡＮノードであることを検出するように構成されている、請求項１２に記載のシステム。
【請求項１４】
前記第１検出回路は、さらに、
前記少なくとも第２のノードが低速ＣＡＮノードであることを検出したことに基づいて、前記終端抵抗を高速用終端抵抗から低速用終端抵抗へ調整するように構成されている、請求項１３に記載のシステム。
【請求項１５】
前記高速用終端抵抗はおよそ９９．８Ωであり、
前記低速用終端抵抗はおよそ３３０Ωである、
請求項１４に記載のシステム。
【請求項１６】
ネットワーク・ノード内の終端抵抗を動的に切り換える方法であって、該ノードが利用可能な複数のコネクタのうちの少なくとも１つのコネクタを介してピア−ツー−ピア・ネットワークの形に接続されている方法において、
前記ノードが、前記複数のコネクタのうちの第１コネクタに結合された単一の接続ケーブルを介して前記ネットワークに結合されると、前記ノード内に終端抵抗を追加するステップであって、前記検出が、前記単一の接続ケーブルにより短絡された一対のコネクタピンに基づくステップと、
前記ノードが、前記複数のコネクタのうちの少なくとも第２コネクタに差し込まれた少なくとも１つの他の接続ケーブルを介して前記ネットワークに結合されていることを検出すると、前記ノード内の前記終端抵抗を除去するステップと
を含む方法。
【請求項１７】
前記第１コネクタ及び前記第２コネクタにおける前記接続ケーブル毎に、少なくとも２つのコネクタピンが短絡していることを検出するステップを含む、請求項１６に記載の方法。
【請求項１８】
前記接続ケーブル毎に前記少なくとも２つのコネクタピンが短絡していることを検出すると、少なくとも２つの前記接続ケーブルに対応する少なくとも２つの論理信号を発生するステップと、
前記論理信号に基づいて、前記ノード内の前記終端抵抗を不作動状態にするステップと
を含む請求項１７に記載の方法。
【請求項１９】
処理装置と、
第１通信プロトコルに関連する第１ネットワーク内で動作するように構成された少なくとも第１トランシーバであって、前記処理装置に結合された第１トランシーバと、
第２通信プロトコルに関連する第２ネットワーク内で動作するように構成された少なくとも第２トランシーバであって、前記処理装置に結合された第２トランシーバと、
前記第１トランシーバに関連する高速用終端抵抗モジュールと、
前記第２トランシーバに関連する低速用終端抵抗モジュールとを具え、
前記処理装置は、前記第１ネットワークと前記第２ネットワークとの間で情報を交換する動作を実行するように構成され、該動作は、
前記第１トランシーバを介して、前記第１通信プロトコルに準拠した第１メッセージを受信するステップと、
前記第１メッセージに関連する意図した動作を特定するステップと、
前記意図した動作を実行することに関連する第２メッセージを生成するステップであって、該第２メッセージは前記第２通信プロトコルに準拠するステップと、
前記第２トランシーバを介して、前記第２メッセージを前記第２ネットワーク内の１つ以上の装置に送信するステップと
を含む、歯科医療機器。
【請求項２０】
前記動作は、
コネクタにおいて短絡された第１対のコネクタピンを検出するステップであって、前記短絡された第１対のコネクタピンは、前記第２トランシーバに関連するコネクタにあるステップと、
前記短絡された第１対のコネクタピンを検出すると、前記低速用終端抵抗モジュールを作動させて、前記第２トランシーバに関連する前記コネクタに低速用終端抵抗を提供するステップと
をさらに含む、請求項１９に記載の歯科医療機器。
【請求項２１】
前記動作は、
前記第１トランシーバが前記第１ネットワークに接続されていないのに対し、前記第２トランシーバが前記第２ネットワークに接続されていることを検出すると、前記第１トランシーバに関連する終端抵抗を除去するステップをさらに含む、請求項２０に記載の歯科医療機器。
【請求項２２】
前記動作は、
短絡された第２対のコネクタピンを検出するステップであって、前記短絡された第２対のコネクタピンは、前記第１トランシーバに関連するコネクタにあるステップと、
前記第２対のコネクタピン及び前記第１対のコネクタピンが短絡されたことを検出すると、前記高速用終端抵抗モジュールを不動作状態にするステップと
をさらに含む、請求項２０に記載の歯科医療機器。
【請求項２３】
前記第１ネットワークが高速ＣＡＮネットワークであり、
前記第２ネットワークが低速ＣＡＮネットワークである、
請求項１９に記載の歯科医療機器。
【請求項２４】
複数のノードのピア−ツー−ピア・ネットワーク内で情報を通信する方法であって、
前記複数のノードのうちの第１ノードにおいて、前記複数のノードのうちの第２ノードからの申込要求を受信するステップであって、前記申込要求は、１つ以上の信号が発生され、変更され、または更新される都度、前記第１ノードが前記１つ以上の信号を前記第２ノードに送信することを規定するステップと、
前記第１ノードが、前記申込要求に基づいてマッピングデータを生成するステップであって、該マッピングデータは、前記複数のノードのうちの１つ以上のノードの信号申込を識別するステップと
を含む方法。
【請求項２５】
前記マッピングデータを前記第１ノードのメモリに記憶するステップと、
前記複数のノードのうちの少なくとも第３ノードからの少なくとも他の申込要求を受信すると、前記マッピングデータを更新するステップと
をさらに含む、請求項２４に記載の方法。
【請求項２６】
前記第２ノードからの前記申込要求を受信する前に、前記第１ノードにおいて、前記複数のノードのうちの前記第２ノードから心拍メッセージを受信するステップであって、該心拍メッセージは、前記第２ノードを前記ピア−ツー−ピア・ネットワーク上に接続された装置として識別するステップをさらに含む、請求項２４に記載の方法。
【請求項２７】
前記第１ノードが第２申込要求を前記第２ノードに送信するステップであって、該第２申込要求は、前記第２ノードが発生することができる１つ以上の信号であって前記第１ノードが申し込むことを要求している信号を識別するステップをさらに含む、請求項２６に記載の方法。
【請求項２８】
前記第１ノードが補足的な申込コマンドを前記第２ノードに送信するステップであって、該補足的な申込コマンドは、前記複数のノードのうちの前記第１ノードまたは前記複数のノードのうちの１つ以上の他のノードが発生する１つ以上の他の信号であって前記第２ノードが申し込むことができる信号を識別して、該識別した信号の申込要求を開始するように前記第２ノードに命令するステップをさらに含む、請求項２６に記載の方法。
【発明の詳細な説明】
【技術分野】
【０００１】
コントローラ・エリア・ネットワーク（ＣＡＮ：Controller Area Network）バスは、Robert Bosch GmbH（ロバートボッシュ社）によって開発された、自動車関係のマイクロコントローラ及び装置が、汎用（ホスト）コンピュータ端末なしに互いに通信することを可能にするための車両バス規格である。従来、ＣＡＮバス・ネットワークはリニア（直線的）であり、このことは自動車環境では有益であるが、分岐構成の方が好ましい他の環境においてＣＡＮバス・ネットワークを用いる場合には欠点となり得る。
【背景技術】
【０００２】
分岐構成の方が好ましい一例は、歯科医療機器ネットワークである。リニア接続は組み立てるのが容易であり得るが、歯科医療機器ネットワークは、残りのネットワークから遠隔なモジュール（例えば、作動べダルまたは歯科用ライト）を含むことがあり、こうした遠隔モジュールをリニア構成の形に接続することは長尺のケーブルを必要とすることがあり、このことは通信効率を低下させる。これに加えて、従来、リニア・ネットワークは、（例えば、技術者によって追加される）他のエンドポイント（端点）終端を用いることにより、及び／または、エンドポイントを規定するための固定組の回路ボード（基板）を用いることにより、リニア構成の形に接続されたすべてのノード（例えば、各個別の歯科医療機器）において抵抗終端を必要とすることによって、これらの制限を克服することができる。しかし、すべてのノードにある個別の終端抵抗は、歯科医療機器ネットワークにおける通信速度を大幅に低下させ、手作業で設置される（例えば、技術者によって追加される）エンドポイント終端はヒューマンエラー（人為的過誤）に対して脆弱であり、固定組の回路ボードは構成のフレキシビリティ（柔軟性）を制限し得る。
【発明の概要】
【課題を解決するための手段】
【０００３】
本概要は、概念の選択を簡略化した形式で紹介するために提供し、これらの概念は以下の実施形態の詳細な説明においてさらに説明する。本概要は、特許請求する主題の主要な特徴または本質的特徴を識別することを意図しておらず、特許請求する主題を限定することも意図していない。
【０００４】
１つ以上の態様によれば、２つの通信方法を、本明細書に記載する種々の実施形態に関連して用いることができる。本明細書では、これら２つの通信方法を「規格Ｊ」（またはＳＪ：Standard J）及び「規格Ｋ」（またはＳＫ：Standard K）と称し、これらの方法は、本明細書中に説明するように、ＣＡＮバス・コントローラ（またはボード）を用いた１つ以上のＣＡＮバス通信ネットワークに関連して用いることができる。規格Ｊ及び規格Ｋは、各方法に関連する以下の機能に基づいて特徴付けられる。
【０００５】
規格Ｊ
ＳＪは、ＩＳＯ １１８９８規格の種々の態様、並びにＩＳＯ １１８９８規格の派生品に基づく。ボード／コントローラ当たり１つだけのトランシーバを用いるが、ボード当たり２つ以上のトランシーバを用いることも理論的に可能である。各ボードのトランシーバは終端抵抗器（例えば、３３Ωの抵抗器）で終端する。ＳＪに基づくＣＡＮバス構成は、リニアまたはメッシュ／分岐ネットワークを含むことができる。ＳＪ通信ネットワーク内の各ボード／コントローラは、１つ以上の接続部を用いて、他の種々のボード／コントローラとの間でデータを連絡する。これらの接続部は、コネクタ（例えば、ＲＪ１２コネクタ）、ハンダ付けされた配線、または端子ストリップを含むことができる。単一のトランシーバが１つ以上の（例えば、１,...,Ｎ）ＣＡＮバス接続をサポートすることができる。ＳＪに基づくＣＡＮバス・ネットワークは終端抵抗器のサイズ、接続長、及び他のパラメータに応じて、様々な範囲のボード量をサポートする。接続された回路ボード間にＳＪネットワークが１つだけ存在し、一部の構成では１千フィートを超える最大ケーブル長を有する。ＳＪベースのネットワークにおける最大通信速度は、構成に依存する（より低速またはより高速で動作することができる特定の構成を伴う）。ＳＪベースのネットワークは、比較的低速（例えば３１２５０bps）で動作して、より大きな範囲のボード、構成、及びケーブル長に対応することができる。好適例は、ＲＪ１２コネクタ、３３０Ωの終端抵抗器を各ノードにおけるトランシーバ上に用いたＳＪベース・ネットワークを含むことができ、ネットワーク当たり２０ボードまでを伴い、約３１２５０bpsの公称速度で動作することができる。
【０００６】
規格Ｋ
ＳＫも、ＩＳＯ １１８９８規格の種々の態様、並びにＩＳＯ １１８９８規格の派生に基づく。ボード当たり１つ以上のトランシーバを用いることができ、各ネットワークのエンドポイント回路ボードは終端する（中間ボードも終端することができるが、このことは、通信速度の低下の可能性があるため望ましくないことがある）。ＳＫは、コネクタ内のケーブルの存在を検出する方法を用いて、エンドポイントであるボードを特定することができる。代表的には、トランシーバ当たり２つのコネクタでは、１つだけ検出されたケーブル接続はエンドポイントを示し、２つ検出されたケーブル接続は中間ボード（即ち、エンドポイントではない）を示す。ＳＫは、動的な方法を用いて、ボード／コントローラ上の種々のトランシーバに終端抵抗を付加するか、これらのトランシーバから終端抵抗を除去することもできる（例外は、単一コネクタのＳＫ ＣＡＮ装置とすることができ、これは、理論的には常にそれぞれのリニア・ネットワークのエンドポイントである）。
【０００７】
ＳＫベースのＣＡＮバス・ネットワークは、エンドポイントが終端したリニア・ネットワークを含むことができる。ＳＫを用いるＣＡＮバス・ネットワークは、メッシュまたは分岐ネットワークを含むこともできるが、一般に、メッシュまたは分岐ネットワークは、通信速度を低下させがちであるので好ましくない。ＳＫ通信ネットワーク内の各ボード・コントローラは、１つ以上の接続部を用いて、他の種々のネットワークとの間でデータを連絡する。これらの接続部は、コネクタ（例えば、ＲＪ５０コネクタ）、ハンダ付けされた配線、または端子ストリップを含むことができ、単一のトランシーバが１つまたは２つの接続部をサポートする。一部の例では、トランシーバが（例えば、非リニア・ネットワークを実現する目的で）３つ以上のコネクタをサポートすることができる。ＳＫに基づくＣＡＮバス・ネットワークは、終端抵抗器のサイズ、接続長、及び他のパラメータに応じて、様々な範囲のボード量をサポートする。様々な範囲のボードが同じネットワーク上でサポートされる（１,...,Ｎ個のネットワークが、接続された回路ボード間に存在し／接続された回路ボード間で可能である）。ＳＫに基づくＣＡＮバスは、ブリッジ（例えば、ＳＫ−ＳＫブリッジ）を含むことができ、ＳＫベースのネットワークは無限個のネットワーク及び接続部（ボード）をサポートすることができる。ＳＫを用いるＣＡＮバス・ネットワーク用のケーブル長最大値は１千フィートを超え得る。ＳＫベースのネットワークにおける最大通信速度は構成に依存する（特定の構成は、より低速またはより高速で動作することができる）。ＳＫベースのネットワークは、説明するより効率的な終端の可能性を前提とすれば、ＳＪベースのネットワークと比較して相対的に高い速度（例えば６１５３８０bps）で動作して、ＳＪベースのネットワークと同様なボード量、ケーブル長、及び／または構成をサポートすることができつつ、より大きな範囲のデータに対応することができる。好適例は、トランシーバ当たり２つのＲＪ５０コネクタを用い、エンドポイントのトランシーバ上に９９．８Ωの終端抵抗器を用いる（そして非エンドポイントには終端抵抗器がない）ＳＫベースのネットワーク、エンドポイントまたは非エンドポイントを検出し、それに応じて終端を付加または除去する方法、ネットワーク当たり２０個のボードで構成され、６１５３８０bpsの公称速度で動作するシステムを含むことができる。
【０００８】
１つ以上の態様によれば、ＳＫ装置（例えば、３０２ｅ）をＳＪベースのネットワークに接続することができる。ＳＫ装置をＳＪベースのネットワークに接続することができる１つの方法は、ハイブリッド・ケーブル（例えば、ＲＪ５０−ＲＪ１２ケーブル４００ｆ）、このハイブリッド・ケーブル用の検出論理回路、及びＳＫ終端とＳＪ終端とを切り換える能力（例えば、図３Ｅ及び４Ｅ）の利用による。上述したように、ＳＪ及びＳＫネットワークは様々な範囲の接続方法を用いることができる。
【０００９】
１つ以上の態様によれば、ＳＫベースのネットワークは、ＳＪ−ＳＫ通信ブリッジ（例えば、図４Ｂ〜４Ｃ）の使用により、ＳＪベースのネットワークと通信することができる。
【００１０】
１つ以上の態様によれば、ＳＫベースのネットワークに準拠するＣＡＮバス・コントローラをＳＫコントローラ（またはＳＫボード）と称することができ、ＳＪベースのネットワークに準拠するＣＡＮバス・コントローラをＳＪコントローラ（またはＳＪボード）と称することができる。これに加えて、以上で説明したように、ＳＪコントローラは、ＳＫコントローラの公称通信速度よりも低い公称通信速度を有する。この関係では、本明細書ではＳＪコントローラを「低速」コントローラと称することがあり、ＳＫコントローラを「高速」コントローラと称することがある。ＳＪコントローラはより低速なコントローラであるものと考えることができ、ＳＫコントローラはより高速なコントローラと考えることができる。
【００１１】
１つ以上の態様によれば、システムが、通信インタフェースを介してピア−ツー−ピア・ネットワークの形に接続された複数のノードを含む。少なくとも１つのノードが、当該ノードがネットワークのエンドポイントであるか非エンドポイントであるかに基づいて、当該少なくとも１つのノード内の終端抵抗を変更する能力を有する。こうした能力を有する上記少なくとも１つのノードは、トランシーバ、少なくとも２つのコネクタ、及びトランシーバに結合された少なくとも１つの終端抵抗モジュールを含む。この少なくとも１つの終端抵抗モジュールは、ノード内に終端抵抗を提供する。このノードは、上記少なくとも２つのコネクタのうちの第１コネクタに結合された第１検出回路、及び上記少なくとも２つのコネクタのうちの第２コネクタに結合された第２検出回路も含む。これらの検出回路は、当該ノードがピア−ツー−ピア・ネットワーク内の１つ以上の他のノードに結合されていることを検出し、この検出に基づいて終端抵抗を自動的に調整するように構成されている。
【００１２】
１つ以上の態様によれば、ネットワーク・ノードにおける終端抵抗を動的に切り換える方法が開示され、このノードは、複数の利用可能なコネクタのうちの少なくとも１つを介してピア−ツー−ピア・ネットワークの形に接続されている。上記方法は、当該ノードが、複数のコネクタのうちの第１コネクタに結合された単一の接続ケーブルを介してネットワークに結合されていることを検出すると、終端抵抗を当該ノード内に追加するステップを含む。この検出は、上記単一の接続ケーブルにより短絡された一対のコネクタピンに基づく。当該ノードが、複数のコネクタのうちの少なくとも第２コネクタ内に差し込まれた少なくとも１つの他の接続ケーブルを介してネットワークに結合されていることを検出すると、当該ノード内の終端抵抗を除去する。
【００１３】
１つ以上の態様によれば、複数のノードのピア−ツー−ピア・ネットワーク内で情報を伝達する方法が、複数のノードのうちの第１ノードにおいて、複数のノードのうちの第２ノードからの申込要求を受信するステップを含むことができる。この申込要求は、第２ノードが使用する１つ以上の信号を指定して、これら１つ以上の信号が発生、変更または更新される都度、これら１つ以上の信号が第２ノードへ送信されるようにすることができる。この申込要求に基づいて第１ノードがマッピングデータを生成する。このマッピングデータは、複数のノードのうちの１つ以上の信号申込を識別することができる。
【００１４】
本明細書に記載するように、他の種々の特徴及び利点を、要望に応じて技術に含めることができる。
【図面の簡単な説明】
【００１５】
【図１】終端抵抗が各回路ボードに存在するリニア規格Ｊ（ＳＪ）ベースのＣＡＮバス・ネットワークの概略図である。
【図２】本発明の一実施形態による、分岐構成の形に接続されて自己終端抵抗を用いるＳＫベースのＣＡＮバス・ネットワークを用いた歯科医療機器ネットワークの概略図である。
【図３Ａ】本発明の一実施形態による、自己終端抵抗を付加するために使用される複数のコネクタ及び対応する検出回路を有する規格Ｋ（ＳＫ）ベースのＣＡＮバス・コントローラの例のブロック図である。
【図３Ｂ】図３ＡのＳＫベースのＣＡＮバス・コントローラのより詳細な回路図である。
【図３Ｃ】ＳＫベースのコントローラにおいて使用することができる検出回路の追加的な具体例を示す図である。
【図３Ｄ】ＳＫベースのコントローラにおいて使用することができる終端抵抗制御ブロックの具体例を示す図である。
【図３Ｅ】本発明の一実施形態による、マルチモードの自己終端抵抗を有するＳＫベースのＣＡＮバス・コントローラのブロック図である。
【図３Ｆ】ＣＡＮバス・コントローラが、ケーブル検出用に、及び自己終端抵抗を付加するために使用することができる短絡された一対のピンを有するコネクタケーブルの例を示す図である。
【図３Ｇ】本発明の一実施形態による、自己終端抵抗を付加するために使用される複数のコネクタ及び対応する検出回路を有するＳＫベースのＣＡＮバス・コントローラの他の例のブロック図である。
【図４Ａ】本発明の一実施形態による、分岐構成の形に接続されたＳＪベース及びＳＫベースのＣＡＮバス・コントローラを用いたハイブリッド歯科医療機器ネットワークを示す図である。
【図４Ｂ】本発明の一実施形態による、ＳＫベースのＣＡＮバス・ネットワークとＳＪベースのＣＡＮバス・ネットワークとの間の通信を実行するための終端抵抗及び通信ブリッジを有するハイブリッドＣＡＮバス・コントローラの例のブロック図である。
【図４Ｃ】本発明の一実施形態による、ＳＫベースのＣＡＮバス・ネットワークとＳＪベースのＣＡＮバス・ネットワークとの間の通信を実行するための自己終端抵抗及び通信ブリッジを有するハイブリッドＣＡＮバス・コントローラの他の例のブロック図である。
【図４Ｄ】本発明の一実施形態による、自己終端抵抗、及び別個のマイクロコントローラに結合された複数のＳＫベース及びＳＪベースのコネクタを有するハイブリッドＣＡＮバス・コントローラの例のブロック図である。
【図４Ｅ】ハイブリッド・コネクタケーブルを用いてＳＪベースのＣＡＮバス・コントローラに結合されたＳＫベースのＣＡＮバス・コントローラのブロック図である。
【図４Ｆ】図４Ｅに関連して用いることができるハイブリッド・コネクタケーブルの例を示す図である。
【図５】本発明の一実施形態による、ＳＫベースのＣＡＮバス・コントローラ用のエンドポイント検出及び自動自己終端を行う方法の流れ図の例である。
【図６Ａ】ＣＡＮバス・コントローラ・ネットワークの通信フレームワークにおいて使用することができるメッセージ・フォーマットの例のブロック図である。
【図６Ｂ】ＣＡＮバス・コントローラ・ネットワークの通信フレームワークにおいて使用することができるメッセージ・フォーマットの例のブロック図である。
【図６Ｃ】ＳＪベース及び／またはＳＫベースのＣＡＮバス・コントローラ・ネットワークの通信フレームワークにおける各種の通信を例示する図である。
【図６Ｄ】ＳＪベース及び／またはＳＫベースのＣＡＮバス・コントローラ・ネットワークの通信フレームワークにおける各種の通信を例示する図である。
【図６Ｅ】ＳＪベース及び／またはＳＫベースのＣＡＮバス・コントローラ・ネットワークの通信フレームワークにおける各種の通信を例示する図である。
【図６Ｆ】ＳＪベース及び／またはＳＫベースのＣＡＮバス・コントローラ・ネットワークの通信フレームワークにおける各種の通信を例示する図である。
【図６Ｇ】ＳＪベース及び／またはＳＫベースのＣＡＮバス・コントローラ・ネットワークの通信フレームワークにおける各種の通信を例示する図である。
【図６Ｈ】ＳＪベース及び／またはＳＫベースのＣＡＮバス・コントローラ・ネットワークの通信フレームワークにおける各種の通信を例示する図である。
【図６Ｉ】ＳＪベース及び／またはＳＫベースのＣＡＮバス・コントローラ・ネットワークの通信フレームワークにおける各種の通信を例示する図である。
【図６Ｊ】ＳＪベース及び／またはＳＫベースのＣＡＮバス・コントローラ・ネットワークの通信フレームワークにおける各種の通信を例示する図である。
【図６Ｋ】ＳＪベース及び／またはＳＫベースのＣＡＮバス・コントローラ・ネットワークの通信フレームワークにおける各種の通信を例示する図である。
【図６Ｌ】ＳＪベース及び／またはＳＫベースのＣＡＮバス・コントローラ・ネットワークの通信フレームワークにおける各種の通信を例示する図である。
【図６Ｍ】ＳＪベース及び／またはＳＫベースのＣＡＮバス・コントローラ・ネットワークの通信フレームワークにおける各種の通信を例示する図である。
【図７】本発明の一実施形態による、ケーブル検出を行いネットワーク・ノードを自己終端させる方法の例の流れ図である。
【図８】本発明の一実施形態による、異なる通信プロトコルに関連するノード間で通信する方法の例の流れ図である。
【図９】所望の実施形態、技法、及び技術を実現することができる適切なコンピュータ環境を一般化した図である。
【発明を実施するための形態】
【００１６】
ＳＪベースのＣＡＮバス・ネットワークの一般的概説
本発明の一実施形態によれば、ＣＡＮバス・ネットワークを、歯科医療機器／器具ネットワークに関連して用いることができる。しかし、単一のリニア・ネットワークは歯科医療機器には適さないことが多い、というのは、こうしたネットワーク内の装置は、分岐構成の形に配置されたアームまたは他の構造上に搭載されていることが多いからである。新たな歯科医療機器をリニアな歯科医療機器ネットワーク内に接続しなければならない場合、２本の別個の接続ケーブルを延ばして、新たな歯科医療機器をリニア・ネットワークの中間に接続しなければならず、このことは困難であり得ると共に膨大な費用を要し得る。適切なＣＡＮバス・ケーブル接続を行うことに伴う誤りは、製造組み立て中に、あるいは製品を修理点検する際に生じ得る。他の重要な考慮事項は終端抵抗であり、終端抵抗は、（一般に、ＳＫベースのＣＡＮバス・ネットワークについては）最高性能のためにネットワーク・エンドポイントに配置しなければならない。終端抵抗器を各ノードに配置することは、ネットワークの分岐を可能にし、ノードがエンドポイントであるか否かを判定する必要性を軽減するが、（ＳＪベースのＣＡＮバス・ネットワークにとっては）全体速度を制限し得る。
【００１７】
図１は、各回路ボードに終端抵抗器が存在する、リニア規格Ｊ（ＳＪ）ベースのＣＡＮバス・ネットワークの概略図である。図１に示すように、リニアＳＪベース・ネットワーク１００は、複数のノード（またはコントローラ）１〜ｎを含む。ノードの各々は、デジタル・シグナル・プロセッサ（ＤＳＰ：digital signal processor）及びＣＡＮトランシーバを含むことができる。このＤＳＰは、ＣＡＮマイクロコントローラ（μＣ）または（フィールド・プログラマブル・ゲートアレイ、ＣＰＵ、等のような）他の種類のプロセッサとすることができる。このＤＳＰは、適切な回路、インタフェース、ロジック及び／またはコードをさらに含むことができ、トランシーバから到着するビット列を受信し、解釈用のメッセージを構成し、受信したメッセージを解釈／翻訳し、そして（例えば、受信したメッセージに応答して）送信すべきメッセージを決定するように構成されている。ＣＡＮマイクロコントローラは、送信メッセージからのビット列を、他のノードへの送信用にトランシーバへ送ることもできる。本明細書中に用いる用語ノード、コントローラ、及びボードは、互換に用いることができる。
【００１８】
図１に見られるように、ＳＪベースのＣＡＮバス・ネットワーク１００は、終端抵抗器を各ノードで用いる。この方法は、エンドポイントで終端抵抗器を管理する必要性をなくすにせよ、ＣＡＮバス・ノードの総数、及び各ノードにおける終端抵抗の存在に基づいて、通信速度は大幅に低下し得る（それ故に、ＳＪノードまたはＳＪベース・ネットワークを参照する際の称号「低速」がある）。
【００１９】
これとは対照的に、ＳＫベースのＣＡＮバス・ネットワークは、最適な性能を達成するために、リニア・ネットワークの両エンドポイントにしか終端抵抗器を必要としない（中間ノードには必要としない）。しかし、統合型歯科医療機器／器具の「ミックス・アンド・マッチ（多種多様なものを組み合わせた）」プラットフォームでは、接続されたモジュールの数、あるいはそれらの配置／構成（即ち、リニアまたは分岐）を常に知ることはできない。これに加えて、モジュールを後に追加または除去することがあり、適切な終端抵抗器が適所にあること、即ち各エンドポイントにはあるが他のノードにはないことを保証することは挑戦的である。
【００２０】
ＳＫベースのＣＡＮバス・ネットワークの概説
ＳＫベースのＣＡＮバス・ネットワークは、一般に、好適にはエンドポイント・ノードに終端抵抗を有し、非エンドポイント・ノードには終端抵抗を有さないリニア・ネットワークとして構成されることによって、ＳＪベースのＣＡＮバス・ネットワークよりも高い通信速度を実現することができる。本発明の一実施形態によれば、ＳＫベースのＣＡＮバス・ネットワークが、動的なケーブル検出付きの自己終端エンドポイント（即ち、ノードまたはコントローラ）を利用して、モジュール形の「ミックス・アンド・マッチ」プラットフォーム設計を可能にすることができる。本明細書中に用いる「自己終端」または「自己終端エンドポイント」とは、それ自身がエンドポイントであるか否かを自動的に検出して、こうした判定に基づいて終端抵抗を自動的に付加（または除去）するように構成されたノード（またはコントローラ）を参照する。ＳＫベースのＣＡＮバス・コントローラは、マイクロプロセッサ、１つ以上のトランシーバ、トランシーバ毎の終端抵抗モジュール、及びトランシーバ毎に２つまでのコネクタを含むことができる。各コネクタは検出回路に関連することが好ましく、この検出回路を用いて、当該コネクタ内にケーブルが存在するか否か、及び上記コントローラがエンドポイントである（あるいはエンドポイントでない）か否かを自動的に検出することができる（例えば、上記コネクタのうち１つしかケーブルが存在するものとして検出されない場合、当該コントローラはエンドポイントであり、上記コントローラのうちの２つが当該コネクタに接続されたケーブルを介してネットワークに結合されている場合、当該コントローラはエンドポイントではない）。上記終端抵抗モジュールは、上記コントローラがエンドポイントであるものと判定された場合に、終端抵抗を自動的に付加するように構成されている。代案として、終端抵抗をデフォルトで付加することができ（即ち、上記コントローラがエンドポイントであるものと仮定し）、あるトランシーバに関連する両コネクタが当該コネクタ内にケーブルが挿入されているものと判定された際に、上記終端抵抗モジュールを除去することができる。
【００２１】
実施形態では、ＳＪベース及びＳＫベースのＣＡＮバス通信を、単一コントローラ上の別個のトランシーバにより実現することができ、各トランシーバは、１つ以上のＳＪベース及び／またはＳＫベースのコネクタのそれぞれに結合されている（例えば、１つまたは２つのコネクタ当たり１つのトランシーバを用いることができる）。
【００２２】
本発明の一実施形態によれば、ＳＫベースのＣＡＮバス・コントローラが、マイクロコントローラ、トランシーバ、２つのコネクタ（例えば、Ａ及びＢとラベル付けされている）、終端抵抗モジュール、及びコネクタＢに結合された単一の検出回路を含むことができる。このコントローラは、第１接続ケーブルをコネクタＡ内に挿入することができ、（必要であれば）第２接続（コネクタ）ケーブルがコネクタＢ内に挿入されるようにラベル付けすることができる。１つのケーブルしかコントローラに接続されていない例では、この接続ケーブルをコネクタＡに接続し、当該コントローラはエンドポイントであるので、上記終端抵抗モジュールをデフォルトで作動させる（例えば、０本または１本のケーブルが存在する際に、終端抵抗を作動させることができる）。第２接続が存在する（即ち、コネクタＢを用いる）例では、コネクタＢに結合された単一の検出モジュールが、コネクタＢ内に接続ケーブルが存在することを検出し、これにより、両コネクタＡ及びＢにケーブルが存在するので、当該ノードがもはやエンドポイントではないことを判定することができる。この場合、コントローラはもはやエンドポイントではないので、終端抵抗を使用停止／除去することができる。
【００２３】
自動エンドポイント検出及び自己終端付きのマルチ（多重）コネクタノードを用いることによって、ＳＫベースのＣＡＮバスを、（例えば、エンドポイントにしか終端抵抗を有さないことによって）現場技術者からの介入なしに、より高速で動作するように構成／確立することができる。この関係では、自己終端能力を有するＳＫベースのＣＡＮバス・ネットワーク設計は、２つの特有のボードの存在を必要としないが、その代わりに、任意の２つ（以上）のボードの存在を必要とし、以下に説明するように、これらのボードの少なくとも１つは検出回路及び自動自己終端を備えている。
【００２４】
図２は、本発明の一実施形態による、分岐構成の形に接続され、自己終端抵抗を使用するＳＫベースのＣＡＮバス・コントローラを用いた歯科医療機器ネットワークの概略図である。図２を参照すれば、ＳＫベースのＣＡＮバス・ネットワーク２００が複数のコントローラ（即ち、コントローラ・ボードまたはノード）２０２〜２０８を含む。例えば、コントローラ２０２は（歯科用椅子を制御するための）椅子ボードであり、コントローラ・ボード２０４は制御ヘッド・ボードであり、コントローラ・ボード２０６は吐き出しボードであり、コントローラ・ボード２０８はＬＥＤライト・ボードである。
【００２５】
図２に見られるように、コントローラ２０２〜２０８は種々のリニア構成の形に接続することができる。コントローラ２０２と２０４とが単一のケーブルを介して結合された例では、単一のＳＫベース・ネットワークがコントローラ２０２と２０４との間に形成される。コネクタ２１８ａ及び２１８ｂに単一接続が存在するので、これらの接続はエンドポイントであるコントローラ２０２及び２０４を生じさせる。しかし、各コントローラは２つ以上のコネクタを含むことができ、これにより複数のリニアな高速ネットワーク（例えばコントローラ２０４）をサポートするので、分岐構成も可能である。この関係では、ボード上のＳＫベースのネットワーク接続毎に、トランシーバ当たりに用いることができる最大２つのコネクタが存在することが好ましい（即ち、トランシーバ当たり１つまたは２つのコネクタが好ましいが、追加的なコネクタも可能である）。この関係では、ボード当たり１つまたは２つのコネクタといった各グループ分けがＣＡＮバス・トランシーバを必要とする。コントローラ２０４上に見られるように、コネクタ２１８ｂはトランシーバによってサポートされる。また、このボード上には、３つ以上のコネクタをサポートしてシステム内の分岐ケーブル配線を可能にするために、追加的なトランシーバ（２１４ｆ）が接続された追加的な２つのコネクタ（例えば、２１８ｆ）も存在する。これに加えて、図２に見られるように、コントローラ２０４内のトランシーバ２１４ｂ及び２１４ｆの各々が終端モジュール（例えば、それぞれ２１６ｂ及び２１６ｆ）に関連する。
【００２６】
本発明の一実施形態によれば、（トランシーバ当たり１つ以上のコネクタを有する）別個のトランシーバを単一のコントローラ内に用いることによって、単一のコントローラを複数の通信ネットワーク上で用いることができ、このコントローラは、こうしたネットワークのうちの１つ以上のネットワーク上でエンドポイント（または非エンドポイント）として機能する。一例として、図２に見られるように、コントローラ２０２及び２０４は共に、（コネクタ２１８ａと２１８ｂとの間の接続を用いて）トランシーバ２１４ａと２１４ｂとの間に形成されるＣＡＮバス・ネットワーク内のエンドポイントとすることができる。しかし、コントローラ２０４は、（例えば、コネクタ２１８ｆ、２１８ｃ及び２１８ｄを用いてトランシーバ２１４ｆ、２１４ｃ及び２１４ｄの間に形成される）独立したＳＫベースのリニアＣＡＮバス・ネットワークを通して、コントローラ２０６及び２０８に接続することもできる。コントローラ２０４がコントローラ２０６及び２０８に結合される例では、コントローラ２０４及び２０８がエンドポイントであり、（例えば２１６ｆ及び２１６ｄを用いて）適切な終端抵抗を付加することができる。
【００２７】
ボード上の３つ以上のコネクタをサポートするこは、追加的なボードをもっと容易に追加することを可能にする。例えば、（トランシーバ２１４ｅを有する）コントローラ・ボード２１０を、制御ヘッドボード２０４からの分岐接続として、かつトランシーバ２１４ｆ、２１４ｃ及び２１４ｄによって形成されるＳＫベースのＣＡＮバス・ネットワークの一部として追加することができる。複数のリニア・ネットワークで構成されるコントローラの分岐構成は、独立したネットワークの各々が、それぞれのデジタルケーブル検出を用いて適切な終端用のエンドポイントを決定することを可能にしつつ、接続の簡略化を可能にする。
【００２８】
コントローラ・ボード２０２〜２１０は、対応するマイクロコントローラ（ＭＣ：microcontroller）（またはＤＳＰ）２１２ａ〜２１２ｅ、トランシーバ・モジュール２１４ａ〜２１４ｆ、終端モジュール２１６ａ〜２１６ｆ、及びコネクタ２１８ａ〜２１８ｆを含む。図２に見られるように、そして以上で説明したように、コントローラ２０４は２つの別個のトランシーバ２１４ｂ及び２１４ｆを含み、トランシーバ毎に、対応する一対のコネクタ（２１８ｂ及び２１８ｆ）及び対応する終端モジュール（２１６ｂ及び２１６ｆ）を伴う。終端モジュール２１６ａ〜２１６ｆは、適切な回路、インタフェース、ロジック及び／またはコードを具えることができ、そして、（トランシーバに関連するコネクタのうちの１つ以上がケーブルに結合されているか否かを検出するための）検出回路、終端抵抗、及びコントローラ・ボードが（検出回路によって検出された接続の数に基づいて判定された）エンドポイントであるか否かに基づいて抵抗を作動させる（または作動を停止させる）ための終端回路（例えばリレー）を含むように構成することができる。一実施形態では、他の種類の終端回路をリレー回路の代わりに用いて、（例えば図３Ｄに例示するように）終端抵抗を追加または除去することができる。
【００２９】
ケーブル検出及び自己終端コントローラ
図３Ａは、本発明の一実施形態による、自己終端抵抗を付加するために使用される複数のコネクタ及び対応する検出回路を有するＳＫベースのＣＡＮバス・コントローラのブロック図である。図３Ａを参照すれば、コントローラ・ボード３０１は、ＣＡＮバス・マイクロコントローラ３０２ａ、ＣＡＮバス・トランシーバ３０４ａ、コネクタ３０６ａ、３０８ａ、検出回路３１０ａ、３１２ａ、終端抵抗３１６ａ、及び終端リレー３１４ａを含む。マイクロコントローラ３０２ａ及びトランシーバ３０４ａの機能は、図１のノード内の対応する要素の機能と同様にすることができる。
【００３０】
検出回路３１０ａ、３１２ａ、リレー３１４ａ及び終端抵抗３１６ａは、（例えば、コントローラ・ボードがエンドポイントである例において）デジタルケーブル検出及び自己終端に関連して使用される終端モジュール（例えば、図２中の２１６ａ〜２１６ｅ）の一部分として含めることができる。検出回路、リレー、及び終端抵抗のより詳細な図を図３Ｂに例示する。コネクタ３０６ａ、３０８ａはＲＪ５０コネクタとして例示するが、種々の実施形態では、他の種類のＳＫベース・コネクタを用いることもできる。
【００３１】
図３Ｂは、図３ＡのＳＫベースのＣＡＮバス・コントローラのより詳細な回路図である。図３Ｂを参照すれば、ＳＫベースのＣＡＮバス・コントローラ３０２ｂは、図３ＡのＳＫベースのＣＡＮバス・コントローラのより詳細な図である。図３Ｂに見られるように、トランシーバ３０８ｂの種々のピンは、マイクロコントローラ（３２３ｂ、図３Ｂには図示せず）、電源フィルタ３２０ｂ、３２２ｂ、コネクタ３０４ｂ、３０６ｂ、及び静電放電（ＥＳＤ：electro-static discharge）保護ブロック３２４ｂに接続されている。
【００３２】
図３Ｂを参照すれば、検出回路（例えば、３１０ｂ〜３１２ｂ）はＣＡＮバス通信から分離され、各回路ボード上のデジタル論理回路を一意的なデジタルケーブル配線と共に使用して、接続が行われているか否かを判定する。これに加えて、検出回路は、対応するコネクタにケーブルが存在するか否かを検出するために、ＣＡＮバス通信が動作状態であることを必要としない。より具体的には、検出回路３１０ｂはコネクタ３０４ｂに関連し、プルアップ抵抗器３３０ｂ、ＥＳＤ保護モジュール３３２ｂ、及び信号フィルタリング（フィルタ処理）モジュール３３４ｂを含むことができる。プルアップ抵抗器３３０ｂは、（コネクタ３４０ｂのピン５の）ＣＡＮ１＿ＤＴ１＿ＩＮ接続部を例えばＤＣ３．３Vにプルし、このＤＣ３．３Vは論理値ハイ（HIGH）の信号と考えることができる。コネクタ３０４ｂにケーブルが存在する際には、ピン５がピン６（回路の接地（ＧＮＤ））に短絡されて、ＣＡＮ１＿ＤＴ１＿ＩＮが論理値ロー（LOW）になる。信号ＣＡＮ１＿ＤＴ１＿ＩＮは、信号フィルタリング回路３３４ｂによってフィルタ処理されて、接続部３２８ｂを介してマイクロコントローラ３２８ｂに伝達される。検出回路３１０ｂから受信した論理値ローまたは論理値ハイの信号を検出することによって、マイクロコントローラは、コネクタ３０４ｂに接続されたケーブルが存在するか否かを判定することができる。次に、両コネクタ３０４ｂ〜３０６ｂのケーブル検出に基づいて、終端抵抗を係合（または離脱）させることができる。検出回路３１０ｂをプルアップ抵抗器を用いて実現しているにせよ、（例えば、図３Ｃに例示するような）検出回路の他の具体例を用いることもできる。これに加えて、ここではピン５とピン６との間のケーブル検出短絡を用いているにせよ、本発明はこの関係に限定されず、ケーブルを検出する目的及び／またはＳＫボードに結合されたＳＪボードを検出する目的で、他のピンを短絡させることができる。
【００３３】
同様に、検出回路３１２ｂはコネクタ３０６ｂに関連し、プルアップ抵抗器３３１ｂ、ＥＳＤ保護モジュール３３３ｂ、及び信号フィルタリング・モジュール３３５ｂを含む。プルアップ抵抗器３３１ｂは、（コネクタ３０６ｂのピン５の）ＣＡＮ１＿ＤＴ２＿ＩＮ接続部をＤＣ３．３Vにプルし、このＤＣ３．３Vは論理値ハイの信号と考えることができる。コネクタ３０６ｂにケーブルが存在する際には、ピン５がピン６（回路接地）に短絡されて、ＣＡＮ１＿ＤＴ２＿ＩＮが論理値ローの信号になる。
【００３４】
ピン５とピン６（または短絡されてケーブル検出用に用いられる他のあらゆるピン）との間の短絡をトリガするために、ピン５とピン６とが短絡されるようにカスタマイズされたケーブルを用いることができる。図３Ｆは、短絡された一対のピンを有するコネクタケーブルの例であり、このコネクタケーブルは、ＣＡＮバス・コントローラが、ケーブル検出用に、及び自己終端抵抗を付加するために用いることができる。図３Ｆに見られるように、接続ケーブル３０２ｆは１０ピンのＲＪ５０接続ケーブルであり、ここでは、コネクタ３０４ｂ〜３０６ｂに接続ケーブルが存在するか否かに基づいて検出回路が論理値ロー及びハイの信号を発生する目的で、ピン５とピン６とを短絡させる（即ち、ピンの図３０３ｄに関連して見られるように、ピン５とピン６とは検出短絡状態にある）。
【００３５】
終端抵抗リレー３１４ｂは、終端抵抗ブロック３１６ｂによって終端抵抗３４０ｂが設けられるように、通常閉のモード（即ち、オフ状態）にすることができる。リレー３１４ｂは、マイクロコントローラが論理値ローの信号（ＣＡＮ１＿ＤＴ１＿ＩＮ及びＣＡＮ１＿ＤＴ２＿ＩＮ）を検出回路３１０ｂ及び３１２ｂから受信した際にしか作動せず（即ち、オン状態にされず）、このことは、両コネクタ３０４ｂ〜３０６ｂにケーブルが存在し、コントローラ３０２ｂがエンドポイントではないことを示す。両コネクタにケーブルが存在する（検出回路３１０ｂ〜３１２ｂからマイクロコントローラへ伝達される２つの論理値ローの信号を生じさせる）際には、リレー３１４ｂが（例えば、マイクロコントローラからのＣＡＮ０＿Ｒｅｌａｙ信号により）オン状態にされ、終端抵抗３４０ｂが除去／作動を停止される。一実施形態では、ＳＫベースのＣＡＮバス・コントローラにおいて終端用に用いられる終端抵抗３４０ｂを９９．８Ωにすることができる。実現に基づいて他の抵抗値を用いることもできる。
【００３６】
一実施形態では、（コネクタ３０４ｂに関連する）検出回路３１０ｂをオプションにすることができる。コントローラは、検出回路３１０ｂに関連するコネクタ３０４ｂ内に第１ケーブルが挿入されることを示すように通知されることができる。コントローラ３０２ｂがエンドポイントになるので、コネクタ３０４ｂを介して接続された単一ケーブルは、終端抵抗３１６ｂを自動的に付加される（リレー３１４ｂが不作動状態である際に、３１６ｂがデフォルトで付加される）。コネクタ３０６ｂ内に第２ケーブルが挿入されている例では、対応する検出回路３１２ｂが挿入されたケーブルを検出し、リレー３１４ｂを作動させて終端抵抗３１６ｂを除去することができる（この場合、コントローラ３０２ｂはエンドポイントではなくなる）。以上で説明したように、終端抵抗リレーはデフォルトでオフ（閉）状態であり、コントローラ３０２ｂ内では終端抵抗３４０ｂが作動状態である。デフォルトで終端を通常閉／接続状態にすることによって、電源を失った、及び／または機能停止したコントローラ・ボード上に終端抵抗が存在する。コントローラがエンドポイントである例では、終端抵抗が作動状態であるので、ＣＡＮバス通信が通常通りに機能し続ける。コントローラがエンドポイントでない例でも、コントローラが、ネットワーク内のボードの量、ケーブル長、及びシステム内の他の故障のようなパラメータに応じた種々の能力（０％から１００％まで）で動作することを可能にすることができる。
【００３７】
本発明の一実施形態によれば、ＥＭＩ（electromagnetic interference：電磁波妨害）性能を改善するために、ＣＡＮバスのＳＫベースのケーブル検出をＣＡＮバス通信から分離することができる。図３Ｂを参照すれば、トランシーバ３０８ｂのバス側（通信側）が論理回路（マイクロコントローラ）側から分離された接地を有する。分離された接地（ＧＮＤ＿ＣＡＮ１で参照する）は、通信バス（ＣＡＮバス）の側のみに電気接続されている。マイクロコントローラ及び残りの回路は、ＧＮＤ＿ＣＡＮ１から分離された接地（ＧＮＤで示す）上で機能する。このことは、回路検出を通信バスの接地から分離することを可能にし、マイクロコントローラがバス状態にかかわらず検出を実行することを可能にする。接続が存在するか否かをマイクロコントローラが検出するために、バスが動作状態である必要がないことが有用であり得る。接続が存在し、バス上に通信が存在しない例でも、マイクロコントローラは、エラーが存在することをユーザ／技術者に通知するための診断機能を有効にすることができる。上記リレー、トランシーバ、及び回路ボードにあり得る他の構成要素（例えば光カプラ）を用いて、上述した２つの接地の分離を行うことができる。
【００３８】
（例えば、検出回路３１０ｂ〜３１２ｂによる）ＳＫベースのケーブル検出を用いることによって、ＣＡＮバス・ネットワーク内のネットワーク・エンドポイントを、（接続ケーブルの挿入／除去時に）自動的に認識することができ、これに応じて終端抵抗を動的に設定して、通信線路に沿った反射を参照にしつつ、高速通信かつ複数ノード用のシステムを最大にすることができる。ＳＫベースの自己終端エンドポイント（例えば、コントローラ３０２ｂ）は、分離された回路に頼って、プロセッサの／ボードの電源（回路接地）からの分離を維持しつつ、ＣＡＮバス通信に終端を入れることができる。この関係では、（以上で説明したように）２つの電源システムを使用し、１つは通信用であり、１つはボード機能用である。
【００３９】
図３Ｃは検出回路の追加的な具体例を示し、この検出回路はＳＫベースのコントローラにおいて用いることができる。図３Ｂ〜３Ｃを参照すれば、検出回路３１０ｂ及び３１２ｂは、コネクタ３０４ｂ及び３０６ｂに接続されたケーブルが存在しない際には、プルアップ抵抗器３３０ｂ及び３３１ｂを用いてハイの論理信号を発生し、（以上で説明したように）接続ピンの短絡によりケーブルが検出された際には、能動的なローの論理信号を発生する。図３Ｃは他の種類の検出回路を例示し、この検出回路は、検出回路３１０ｂ及び３１２ｂの代案の実現として用いることができる。
【００４０】
より具体的には、コネクタ３０４ｂまたは３０６ｂのコネクタピンのうちの２つ（例えば、ピンＸ及びＹ）の間の短絡が能動的なハイの論理信号を生じさせる場合に、検出回路３０２ｃを用いることができる。従って、上記マイクロコントローラは、能動的なハイの論理信号を１つしか検出しない際には終端抵抗をコントローラ３０２ｂ上に保持することができ、あるいは、検出回路３１０ｂ及び３１２ｂから２つのハイの論理信号が伝達される際には、終端抵抗を除去することができる。本明細書中に用いる「ＶＣＣ」とは、論理値ハイの電圧（代表的にはＤＣ３．３VまたはＤＣ５V）の指標である。
【００４１】
コネクタのピンＸとＹとの間の短絡を検出した際に（即ち、ケーブルがコネクタ内に挿入され、ピンＸとＹとの間の短絡をトリガした際に）、回路３０４Ｃを用いて能動的なアナログ信号を発生することができる。能動的なアナログ信号の発生を例示するために、３つのテストポイント（ＴＰ：test point）を図３中にＴＰ１、ＴＰ２、及びＴＰ３のように例示する。抵抗器Ｒ１及びＲ２は、ピンＸとピンＹとの間に短絡が存在する際に、ＴＰ１及びＴＰ２の所に抵抗分圧回路網を生成する。この条件中にＴＰ１及びＴＰ２に生じる電圧は；(ＶＣＣ×Ｒ２)／(Ｒ２＋Ｒ１)である。Ｒ１＝Ｒ２であれば、生じる電圧はＶＣＣの１／２である。この場合、マイクロコントローラへの入力は（デジタル入力ではなく）アナログ入力であり、この入力はある範囲内（例えば、接地とＶＣＣとの間）で電圧を区別することができる。
【００４２】
具体例で説明するために、ＶＣＣ＝ＤＣ５VかつＲ１＝Ｒ２の各々が１０kΩであるものと仮定する。ＴＰ１及びＴＰ３における電圧は（通常はＲ１のプルアップの性質により）およそＤＣ５Vに等しい。ピンＸとピンＹとの間に短絡が存在する際には、Ｒ２が回路内に導入されて、ＴＰ１とＴＰ２との間に抵抗分圧器を生成する。この状況における電圧は、およそＤＣ２．５VをＴＰ１、ＴＰ２、及びＴＰ３に生じさせる。マイクロコントローラのアナログ入力は、ＴＰ３において検出された時点に基づいて次の状態／論理値を有するようにすることができる：
【００４３】
ＴＰ３における電圧が＞ＤＣ４．５V、従って、ピンＸとＹとは短絡されていない（コネクタにＣＡＮバス・ケーブルが存在しない）；
【００４４】
ＴＰ３における電圧が＜ＤＣ４．５Vであるが＞ＤＣ３．５V、従ってエラーを示すことができる；
【００４５】
ＴＰ３における電圧がＤＣ１．５V〜ＤＣ３．５V、従ってピンＸとＹとが短絡されている（ＸＡＮバス・ケーブルが接続されていることを示す）；及び、
【００４６】
ＴＰ３における電圧が＜ＤＣ１．５V、従って、エラーを示すことができる。
【００４７】
図３Ｄに、終端抵抗制御ブロックの具体例を例示し、この終端抵抗制御ブロックはＳＫベースのコントローラにおいて用いることができる。図３Ｂは終端抵抗リレー回路３１４ｂを用いているにせよ、他の種類の終端抵抗追加／除去制御回路を用いることもできる。例えば、図３Ｄは他の２種類の終端抵抗制御回路を例示する。より具体的には、終端抵抗制御回路３０２ｄは、（例えば、トランジスタ３０６ｄによる）トランジスタ制御回路を用いて終端抵抗を制御する。終端抵抗制御回路３０４ｄは、（例えば、半導体リレー３０８ｄによる）半導体リレー制御回路を用いて終端抵抗を制御する。
【００４８】
動的なマルチモード動作
図３Ｅは、本発明の一実施形態による、マルチ（多重）モードの自己終端抵抗を有するＳＫベースのＣＡＮバス・コントローラのブロック図である。図３Ｅを参照すれば、コントローラ３０２ｅは、ＤＳＰ（またはマイクロコントローラ）３０４ｅ、トランシーバ３０６ｅ、コネクタ３０８ｅ、及びマルチモードの終端抵抗モジュール３０９ｅを含むことができる。コントローラ３０２ｅは単一のコネクタ３０８ｅを有するように例示しているにせよ、一部の実施形態では、２つ以上のコネクタをコントローラ３０２ｅ用に用いることができる。
【００４９】
マルチモードの終端抵抗モジュール３０９ｅは、リレー３１０ｅ、１つ以上の検出回路３１７ｅ、及び終端抵抗３１２ｅを含むことができる。検出回路を用いる例では、１つの検出回路を低速検出（例えば、接続されたＳＪコントローラの検出）用に用いることができ、他の検出回路を高速検出（例えば、接続されたＳＫコントローラの検出）用に用いることができる。本発明の一実施形態によれば、マルチモードの終端抵抗モジュール３０９ｅ内の検出回路３１７ｅを、コントローラ３０２ｅがＳＪベースのＣＡＮバス・コントローラまたはＳＫベースのＣＡＮバス・コントローラに接続されていることを認識／判定するように構成することができる。この関係では、コネクタ３０８ｅがＳＪベースのＣＡＮバス・コントローラに接続されている場合、マルチモードの終端抵抗モジュール３０９ｅは、ＳＪベースのＣＡＮバス・コントローラへの接続を検出することができ、そしてＳＪベースの終端抵抗３１６ｅを作動させ、これによりコントローラ３０２ｅをＳＪベースのＣＡＮバス・ノードとして動的に再構成することができる。同様に、コネクタ３０８ｅがＳＫベースのＣＡＮバス・コントローラに接続されている場合、マルチモードの終端抵抗モジュール３０９ｅは、ＳＫベースのバス・コントローラへの接続を検出することができ、そして、ＳＫベースの終端抵抗３１４ｅを作動させ、これによりコントローラ３０２ｅをＳＫベースのＣＡＮバス・ノードとして動的に再構成することができる。
【００５０】
検出回路３１７ｅは、低速ケーブル検出（例えば、ＳＪコントローラの検出）及び高速ケーブル検出（例えば、ＳＫコントローラの検出）のような１種類以上の検出を実行するように構成することができる。ケーブル検出中には、検出回路３１７ｅは、コネクタ３０８ｅにケーブルが接続されているか否かを検出することができる。例えば、検出回路３１７ｃは、コネクタピンのうちの２つの間の短絡を検出して、コネクタ３０８ｅにケーブルが接続されていることを検出することができる。ＳＪベースの検出中には、検出回路３１７ｅは、ケーブル検出の短絡用に用いるピンとは異なるピン間の短絡を検出することができる。
【００５１】
図４Ｆは、ハイブリッド・コネクタケーブルの例の図であり、このハイブリッド・コネクタケーブルは、ＳＫベースのＣＡＮバス・コントローラとＳＪベースのＣＡＮバス・コントローラとを接続するために用いることができる。図４Ｆに見られるように、コネクタケーブルは、一方の面上はＲＪ５０（１０ピン）コネクタとすることができ、他方の面上はＲＪ１２（６ピン）コネクタとすることができる。６ピン接続を用いてＳＪベースのＣＡＮバス・コントローラに接続することができ、１０ピン・コネクタを用いてＳＫベースのＣＡＮバス・コントローラに接続することができる。図４Ｆは、１０ピン・コネクタにおける異なる２対の短絡されたピンも示す。第１の短絡された一対のピンは、ピン５と６との間の接続を含み、この接続を用いてケーブルを検出する。第２の短絡された一対のピンは、ピン４と７との間の接続を含み、この接続を用いてＳＪベースのＣＡＮバス・コントローラを検出する。コネクタケーブル４００ｆは１０ピンのＲＪ５０−６ピンのＲＪ１２コネクタケーブルとして例示しているが、異なるピン数及びピン構成を有する他の種類のコネクタも同様に用いることができる。例えば、第１の種類のコネクタをケーブルの一方の端上に用いてＳＪボードに接続し、第２の種類のコネクタをケーブルの他方の端上に用いてＳＫコントローラに接続する。
【００５２】
再び図３Ｅを参照すれば、検出回路３１７ｅは、ピン５と６との検出短絡に基づいて、コネクタ３０８ｅにおいてケーブルが検出されたことを検出することができる。ＳＪベースの検出（例えば、ピン４及び７の検出）が存在しない場合、ノードがＳＫベースのＣＡＮバス・エンドポイントであるのでＳＫベースの終端抵抗３１４ｅを作動させる。ピン５−６間並びにピン４−７間に短絡を検出した場合、ノード３０２ｅはＳＪベースのＣＡＮバス・エンドポイントであるので、ＳＪベースの終端抵抗のみを作動させる。ハイブリッド・ケーブル４００ｆ（図４Ｆ）を用いて、ＳＫベースのコネクタ（例えば、３０８ｅ）を、（例えば、ＳＪベースのＲＪ１２コネクタを有する）ＳＪベースのコントローラ・ボードに接続することができる。図４Ｆに見られるように、ケーブル４００ｆの左面は１０ピン・コネクタを用い、ケーブル４００ｆの右面は６ピン・コネクタを用いている。１０ピン・コネクタ用の具体的なピン接続短絡、及びケーブル４００ｆの左面にある１０ピンをケーブル４００ｆの右面にある６ピンに接続する方法は、ピンの図４０２ｆに例示する。
【００５３】
本発明の一実施形態によれば、コントローラ３０２ｅはＳＫベースの終端抵抗をデフォルトとすることができる（例えば、抵抗３１４ｅがデフォルトで存在／作動する）。この場合、検出回路３１７ｅを用いてＳＪベースのコントローラを検出することができ、ＳＪベースのコントローラの検出時に、高速用（ＳＫベース）の終端抵抗３１４ｅを除去して、低速用（ＳＪベース）び終端抵抗３１６ｅを追加することができる。
【００５４】
この関係では、上述したマルチモードの終端抵抗モジュール３０９ｅの機能は、（例えば、ＳＫベースのＣＡＮバス・コントローラを用いる）新型製品と（例えば、ＳＪベースのＣＡＮバス・コントローラを用いる）旧型製品との間の互換性を提供し、このことは、顧客が１つまたは少数のモジュールだけを既存の歯科医療機器ネットワークに対してアップグレードまたは追加する際に、顧客が全モジュールを置き換える必要がないことを意味する。また、このことは、歯科医療機器の製造業者が、ＳＫベースのＣＡＮバス・コントローラを含めるために、費用をかけて全モジュールを更新する必要がないことも意味する。
【００５５】
マルチＳＫベースのネットワークシステム
図３Ｇは、本発明の一実施形態による、自己終端抵抗を付加するために用いられる複数のコネクタ及び対応する検出回路を有するＳＫベースのＣＡＮバス・コントローラの他の例のブロック図である。図３Ｇを参照すれば、ＳＫベースのＣＡＮバス・コントローラ３０２ｇは、２組のコネクタ（３０８ｇ／３１０ｇ及び３２２ｇ／３２４ｇ）に結合されたマイクロコントローラ３０４ｇを含むことができる。第１組のコネクタ（３０８ｇ／３１０ｇ）は、トランシーバ３０６ｇ、リレー回路３１２ｇ、終端抵抗３１８ｇ、及び検出回路３１６ｇ〜３１８ｇに結合されている。。第２組のコネクタ（３２２ｇ／３２４ｇ）は、トランシーバ３２０ｇ、リレー回路３２６ｇ、終端抵抗３２８ｇ、及び検出回路３３０ｇ〜３３２ｇに結合されている。これらの検出回路、リレー回路、及び終端抵抗は、同様のモジュールについては、本明細書において上述した機能と同様である。コネクタ３０８ｇ、３１０ｇ、３２２ｇ、及び３２４ｇはＲＪ５０コネクタとして例示しているにせよ、他の種類のコネクタも同様に用いることができる（例えば、通信ブリッジを有するハイブリッド低速／高速ＣＡＮバス・コントローラを、図４Ｂを参照して例示する）。
【００５６】
本発明の一実施形態によれば、マルチコネクタ／マルチトランシーバ３０２ｇは、複数のＳＫベースのＣＡＮバス・ネットワークを有するＳＫベースのＣＡＮバス・システムにおいて用いることができる。複数のネットワークの利用は、本明細書中で説明した有能な検出及び自己終端エンドポイントの機能を維持しつつ、各回路ボード上のより多数の接続点を可能にする。複数のネットワークの存在（例えば、１つのＳＫベースのＣＡＮバス・ネットワークをコネクタ３０８ｇ／３１０ｇに結合することができ、他のネットワークを、コネクタ３２２ｇ／３２４ｇに結合することができる）は、より単純な配線及びよりフレキシブルな集積を可能にする。複数のネットワークの存在は、回路ボードが１つ、２つ、または任意数の接続部を含むことを可能にして、歯科医療機器をケーブルによって分岐構成の形に物理的に接続することを可能にする。この方法の追加的な利益は、１つのネットワークが機能不全な場合に、残りのネットワークが機能し続けることができることにある。また、（マルチコネクタのコントローラ・ボード３０２ｇのような）ボードによって３つ以上の接続部でリンクされた複数のネットワークは、（各個別のネットワーク上のノードの数は制限され得るにせよ）複数のノードを接続する複数のネットワークを可能にする。
【００５７】
図４Ａは、本発明の一実施形態による、分岐構成の形に接続されたＳＪベースのハイブリッドＣＡＮバス・コントローラ、ＳＫベースのハイブリッドＣＡＮバス・コントローラ、及びハイブリッドＣＡＮバス・コントローラを用いたハイブリッド歯科医療機器の図である。図４Ａを参照すれば、ハイブリッド歯科医療機器ネットワーク４００ａは、ＳＫベースのＣＡＮバス・コントローラ（例えば、４１４ａ〜４１６ａ）、ＳＪベースのＣＡＮバス・コントローラ（例えば、４０２ａ〜４０６ａ）、及びハイブリッドＣＡＮバス・コントローラ（例えば、４０８ａ〜４１２ａ）を含む分岐ネットワークである。ＳＪベースのＣＡＮバス・コントローラはＲＪ１２コネクタを使用し、ＳＫベースのＣＡＮバス・コントローラは、（他のＳＫベースのコントローラへの接続用の）１つ以上のＲＪ５０コネクタ、及び／または（ＳＪベースのＣＡＮバス・コントローラへの接続用の）１つ以上のＲＪ１２コネクタを使用する。例えば、ハイブリッドＣＡＮバス・コントローラ４１０ａは、４つのＳＫベースのコネクタ及び２つのＳＪベースのコネクタを含む。ＳＫベースのコネクタは、他のＳＫベースのＣＡＮバス・コントローラへの（例えば、３０２ｆのようなコネクタケーブルを用いた）接続用に用いることができる。一実施形態では、単一コネクタのＳＫベースのＣＡＮバス・コントローラ（例えば４１４ａ）を、４００ｆのようなハイブリッド接続ケーブルを用いてＳＪベースのＣＡＮバス・コントローラ（例えば４０６ａ）に接続することができる（図４Ａは４１２ａに接続された４１４ａを例示するが、その代わりに、４１４ａを４０６ａに接続することができ、可能な接続を点線で例示する）。ハイブリッド・コントローラ（例えば４１０ａ）がＳＫベースのコネクタ（例えばＲＪ５０）及びＳＪベースのコネクタ（例えばＲＪ１２）を共に有する例では（各組のコネクタは別個のトランシーバを有する）、こうしたコントローラを（ＲＪ１２−ＲＪ１２接続ケーブルを用いて）他のＳＪベースのコントローラに結合することができ、あるいは、（例えば、ケーブル検出を可能にするための短絡されたピンを有する３０２ｆの接続ケーブルを用いて）他のＳＫベースのコントローラに接続することができる。
【００５８】
通信ブリッジ
図４Ｂは、本発明の一実施形態による、ＳＫベースのネットワークとＳＪベースのネットワークとの間の通信を実行するための終端抵抗及び通信ブリッジを有するハイブリッドＣＡＮバス・コントローラの例のブロック図である。図４Ｂを参照すれば、ハイブリッドＣＡＮバス・コントローラ０２ｂは、マイクロコントローラ４０４ｂ、トランシーバ４０８ｂに結合されたＳＫベースのコネクタ４１０ｂ（例えばＲＪ５０）、及び終端抵抗４１４ｂを含む。ＣＡＮバス・コントローラは、トランシーバ４０８ｂに結合されたＳＪベースのコネクタ（例えばＲＪ１２）、及び終端抵抗４２４ｂも含む。
【００５９】
図４Ｂに見られるように、単一のＳＫベースのコネクタ（例えば４１０ｂ）を用いる例では、終端抵抗４１４ｂが常に作動しているのでリレーを必要としない（単一のＳＫベースのコネクタを使用するので、トランシーバ４０８ｂを用いるＳＫベースのＣＡＮバス・コントローラ４０２ｂはエンドポイントとして用いられる）。これに加えて、トランシーバ４１６ｂに関連するＳＪベースのＣＡＮバス・コネクタ（４１８ｂ,...,４２０ｂ）の各々は抵抗４２４ｂによって終端させることができ、このこともリレーの使用を必要としない。この関係では、２つ以上のＳＫベースのコネクタを所定のコントローラ内のＳＫベースのＣＡＮバス用に用いる例では、リレーモジュール及び対応する検出回路を随意的に用いることができる。
【００６０】
本発明の一実施形態によれば、マイクロコントローラ４０４ｂは、ブリッジ４０６ｂを用いたブリッジ接続機能を提供することができる。ブリッジ４０６ｂは、適切な回路、インタフェース、ロジック及び／またはコードを具えることができ、そして（例えば、ＳＪベースのコネクタのうちの１つ以上及びトランシーバ４１６ｂ経由で受信した）ＳＪベースの通信のデータ転送を、（例えば、トランシーバ４０８ｂ及びコネクタ４１０ｂ経由で）ＳＫベースのバス上に広く伝えるするように実行し、その逆も実行するように構成することができる。ブリッジ４０６ｂによって提供されるブリッジ接続機能は、ＳＪベースの装置（例えば、ＳＪベースのコネクタ４１８ｂ〜４２０ｂに結合された装置）とＳＫベースの装置（例えば、ＳＫベースのコネクタ４１０ｂに結合された装置）との相互運用性を可能にする。
【００６１】
ブリッジ４０６ｂに関連する１つ以上のブリッジ接続機能は、（ＳＪベースのコネクタ４１８ｂ〜４２０ｂを介してコントローラ４０２ｂに結合されたＳＪベースのＣＡＮバス・ネットワークに関連する）ＳＪベースのドライバ（駆動回路）４３０ｂ、及び（ＳＫベースのコネクタ４１０ｂを介してコントローラ４０２ｂに結合されたＳＫベースのＣＡＮバス・ネットワークに関連する）ＳＫベースのドライバ４３２ｂによって提供することができる。本発明の一実施形態によれば、ブリッジ４０６ｂ、ＳＪベースのドライバ４３０ｂ、及びＳＫベースのドライバ４３２ｂは、上記マイクロコントローラ上に、ファームウェアまたは他の種類のソフトウェアとして、本明細書に記載するＣＡＮバス・ネットワークのうちの１つ以上において使用される通信プロトコルの一部分として実現することができる。例えば、ブリッジ４０６ｂは、（トランシーバ４１６ｂによって受信した）ＳＪベースのＣＡＮバス・メッセージ及び関連するプロトコル・ロジックを、トランシーバ４０８ｂを介した通信用の等価なＳＫベースの通信信号に翻訳し、その逆の翻訳も行う役割を担うことができる。ＳＫベースのドライバ４３２ｂ及びＳＪベースのドライバ４３０ｂは、すべてのブリッジ接続信号（例えば、トランシーバ４１６から受信してブリッジ４０６ｂによって翻訳した信号）、並びにコントローラ４０２ｂの１つ以上の構成要素上で実行中の内部ソフトウェアをサポートするために必要な他の信号を受信することができる。
【００６２】
ブリッジ４０６ｂによって実行されるブリッジ接続機能は、例えば通信プロトコル翻訳を含むことができる。ブリッジ４０６ｂによって実行される翻訳プロセスは、１つ以上のＳＪベースのＣＡＮバス・メッセージを（トランシーバ４１６ｂ経由で）受信すること、これらのメッセージを解釈して意図した動作を生成すること、及びこの動作を、トランシーバ４０８ｂ経由で伝達することができる対応するＳＫベースのＣＡＮバス・メッセージに翻訳することを含むことができる。同様な翻訳プロセスは、少なくとも１つのＳＫベースのＣＡＮバス・メッセージをトランシーバ４０８から受信し、対応するメッセージをブリッジ４０６ｂによって生成してトランシーバ４１６ｂ経由で伝達する際に生じる。以下はメッセージ翻訳の例であり、ブリッジ４０６ｂによって実行することができる。この例では、ＳＪベースのタッチパッドで歯科用ライトの状態をオン状態からオフ状態へ変更するためのメッセージを、ブリッジによって受信し翻訳して、このメッセージを実行するＳＫベースの歯科用ライトへ送信する。
【００６３】
【表１】
2017188900.tif 000003
【００６４】
マルチコネクタＣＡＮバス・コントローラの例
図４Ｃは、本発明の一実施形態による、ＳＪベースのＣＡＮバス・ネットワークとＳＫベースのＣＡＮバス・ネットワークとの間で通信を実行するための自己終端抵抗及び通信ブリッジを有するハイブリッドＣＡＮバス・コントローラの他の例のブロック図である。図４Ｃを参照すれば、ハイブリッドＣＡＮバス・コントローラ４０２ｃは、コントローラ４０２ｃが複数のＳＫベースのコネクタ（例えば、ＲＪ５０コネクタ４０１ｃ〜４１２ｃ）を含むことを除いた多くの点で、ハイブリッドＣＡＮバス・コントローラ（図４Ｂ）と同様である。より具体的には、ハイブリッドＣＡＮバス・コントローラ４０２ｃは、マイクロコントローラ４０４ｃ、トランシーバ４０８ｃに結合されたＳＫベースのコネクタ４１０ｃ〜４１２ｃ（例えばＲＪ５０）、リレー４１８ｃ、終端抵抗４２０ｃ、及び検出回路４１４ｃ、４１６ｃを含む。ＣＡＮバス・コントローラ４０２ｃは、トランシーバ４２２ｃ及び終端抵抗４３０ｃに結合された１つ以上のＳＪベースのコネクタ（例えばＲＪ１２）４２４ｃ〜４２６ｃも含む。終端抵抗４３０ｃを用いて、１つ以上のＳＪベースのコネクタ４２４ｃ〜４２６ｃに関連するトランシーバ４２２ｃを終端させる（図４Ｃでは、コネクタ４２６はオプションであることを示すために破線で図示している）。マイクロコントローラ４０４ｃはブリッジ４０６ｃを含むこともでき、ブリッジ４０６ｃはブリッジ４０６ｂ（図４Ｂ）と同様の機能を有することができる。
【００６５】
図４Ｄは、本発明の一実施形態による、別個のマイクロコントローラに結合された終端抵抗及び複数のＳＫベース及びＳＪベースのコネクタを有するハイブリッドＣＡＮバス・コントローラの例のブロック図である。図４Ｄを参照すれば、ＳＫベースのＣＡＮバス・コントローラ４０２ｄは、マイクロコントローラ４０６ｄ、トランシーバ４０６ｄに結合された第１組のＳＫベースのコネクタ４０８ｄ〜４１０ｄ（例えばＲＪ５０）、リレー４１６ｄ、終端抵抗４１８ｄ、及び検出回路４１２ｄ〜４１４ｄを含む。コントローラ４０２ｄは、トランシーバ４２０ｄに結合された第２組のＳＫベースのコネクタ４２２ｄ〜４２４ｄ（例えばＲＪ５０）、リレー４３０ｄ、終端抵抗４３２ｄ、及び検出回路４２６ｄ〜４２８ｄも含む。
【００６６】
本発明の一実施形態によれば、コントローラ４０２ｄは追加的なトランシーバ４４０ｄを具えることもでき、このトランシーバは、ＲＪ１２コネクタ４４４ｄ〜４４８ｄのような１つ以上のＳＪベースのＣＡＮバス・コネクタに関連する。これに加えて、マイクロコントローラ４０４ｄは（例えば４０６ｃと同様な）ブリッジを含むことができ、このブリッジは、少なくとも１つのＳＪベースのＣＡＮバス（例えば、ＳＪベースのコネクタ４４４ｄ〜４４８ｄのいずれかとの間の通信）と少なくとも１つのＳＫベースのＣＡＮバス（例えば、ＳＫベースのコネクタ４０８ｄ〜４１０ｄ及び４２０ｄ〜４２４ｄとの間の通信）との間の通信を「翻訳」するために用いることができる。
【００６７】
さらに他の実施形態では、コントローラ４０２ｄが第２のマイクロコントローラ４５０ｄを含むことができ、第２のマイクロコントローラ４５０ｄは、ＳＪベースのトランシーバ４４０ｄに結合することができ、そして、ＳＪベースのコネクタ４４４ｄ〜４４８ｄのうちの少なくとも１つを介してコントローラ４０２ｄに結合された１つ以上の他のＣＡＮバス装置との間のＳＪベースのＣＡＮバス通信を処理するために用いることができる。第２の（専用）マイクロコントローラ４５０ｄを用いてＳＪベースの通信を処理する例では、ブリッジをマイクロコントローラ４０４ｄまたは４５０ｄ内に配置することができる。マイクロコントローラ４０４ｄと４５０ｄとは、これら２者の間で情報を共有するために、通信リンク４０３ｄ（有線及び／または無線接続）を介して接続されている。この関係では、４０４ｄ及び４５０ｄ内に通信ブリッジが存在して、マイクロコントローラ４０４ｄと４５０ｄとの間の通信を処理することができる。図示していないが、第２のマイクロコントローラを代わりに他のＳＫベースのトランシーバに結合して、１つ以上のＳＫベースのコネクタを介してコントローラ４０２ｄに結合された１つ以上の他のＣＡＮバス装置との間のＳＫベースのＣＡＮバス通信を処理する方法を想像することは容易である。
【００６８】
図４Ｅは、ハイブリッド・コネクタケーブルを用いてＳＪベースのＣＡＮバス・コントローラに結合されたＳＫベースのＣＡＮバス・コントローラのブロック図である。図４Ｆは、図４Ｅに関連して用いることができるハイブリッド・コネクタケーブルの例の図である。図４Ｅを参照すれば、ＳＫベースのＣＡＮバス・コントローラ４０２ｅは、マイクロコントローラ４０６ｅ、トランシーバ４０８ｅ、及びＳＫベースのコネクタ４１０ｅを含むことができる。ＳＪベースのＣＡＮバス・コントローラ４０４ｅは、マイクロコントローラ４１２ｅ、トランシーバ４１４ｅ、及びＳＪベースのＣＡＮバス・コネクタ４１６ｅを含むことができる。終端抵抗４０９ｅ及び４１５ｅは、それぞれトランシーバ４０８ｅ及び４１４ｅに関連することができる。本明細書において上述したように、これらのコントローラは、検出回路のような追加的なモジュールを含むこともできる。ＳＫベースのコントローラ４０２ｅは、マルチモード終端抵抗モジュール３０９ｃを用いて、図３Ｅのコントローラ３０２ｅと同じにすることができる。この関係では、ハイブリッド・コネクタケーブル４００ｆ（図４Ｆ）を用いて、このＳＫベースのコントローラをＳＪベースのコントローラ４０４ｅに接続して、（例えば、本明細書において以上で説明したように、ピン５／６間及びピン４／７間の接続短絡を用いて）ＳＪベースの終端抵抗を自動的に提供することができる。
【００６９】
ハイブリッド・ケーブル接続を用いた処理の流れの例
図５は、本発明の一実施形態による、ハイブリッドＣＡＮバス・コントローラ用のエンドポイント検出及び自動的な自己終端の方法の流れ図の例である。図３Ａ及び５を参照すれば、方法の例は、何らかのＳＪベースの検出が（例えば、ケーブル４００ｆを介してＳＫベースの（ＨＳ：high speed（高速））コネクタに結合された少なくとも１つのＳＪベースのコントローラの）コネクタ３０６ａ及び３０８ａに存在するか否かを判定するステップ５０１で開始することができる。３１０ａ及び／または３１２ａによる（例えば、３０６ａ〜３０８ａに接続された１つ以上のケーブルにおけるピン４と７との間の短絡を検出することによる）ＳＪベースの検出が存在する場合、ステップ５０２において、３０６ａ〜３０８ａにおけるケーブル接続に関連するＳＪベースの（ＬＳ：low speed（低速））検出の数を判定する。
【００７０】
２つのＬＳ検出を検出した場合、ステップ５０６において、（例えば、コネクタケーブルのピン５と６との間の短絡を検出することによって）３０６ａ〜３０８ａにおけるケーブルの数を判定する。０本または１本のケーブルを検出した場合、（ステップ５０７において）エラーを報告して、ステップ５０８においてＬＳ（低速用）終端を作動させて処理を再開する。
【００７１】
一実施形態では、コントローラ３０１（図３Ａ）が、３０９ｅ（図３Ｅ）のようなマルチモード終端抵抗モジュールを含むことができる。ステップ５０６において２本のケーブルを検出した場合（即ち、上記コントローラが、ＨＳコネクタ３０６ａ〜３０８ａを介し、かつ４００ｆのようなハイブリッド・ケーブルを用いて２つのＬＳコントローラに結合されている場合）、ステップ５０８に処理を進めて、ＬＳ終端抵抗（例えば、図３Ｅの３１６ｅ）をオン状態にし（即ち、リレー３１０ｅをオン状態にすることによって終端抵抗を追加し）、ＨＳ終端リレーもオン状態にする（ＨＳ終端抵抗３１４ｅを除去する）。単一のリレー（例えば３１０ｅ）を用いて、追加／除去機能を同時に実行することができる（例えば、ＨＳ終端抵抗を除去することにより、ＬＳ終端抵抗が自動的に追加される）。ステップ５０９においてＬＳ通信を開始することができる。ステップ５１０において、ＣＡＮバス通信が存在するか否かを判定する。存在する場合、ステップ５１２でプロセスを終了し、存在しない場合、ステップ５１１においてエラーを報告し、（ＬＳ終端を除去した後に）ステップ５１７においてＨＳ通信処理の試行を開始することができる。
【００７２】
ステップ５０２において１つのＬＳ接続を検出した場合、ステップ５０３においてケーブル検出の数を判定することができる。０本のケーブルを検出した場合、ステップ５０４においてエラーを報告して、ステップ５０８におけるＬＳ終端で処理を再開する。２本のケーブルを検出した場合、ステップ５０５においてエラーを報告して、ステップ５０８におけるＬＳ終端で処理を再開する。ステップ５０３において１本のケーブルを検出した場合、ステップ５０８におけるＬＳ終端で処理を再開する。
【００７３】
ステップ５０１においてＬＳ接続を検出しない場合、ステップ５１３において、（例えば、ＳＫベースのコネクタのピン５と６との間の短絡を検出することによって）検出したケーブルの数を判定する。ステップ５１３において１本のケーブルを検出した場合、ステップ５１７に処理を進めて、（ＨＳ終端抵抗を付加して）ＨＳ通信を開始することができる。ステップ５１９において、ＣＡＮバス通信が行われているか否かを判定する。通信が存在しない場合、ステップ５２０においてエラーを報告して、ステップ５１８に処理を進めることができる。ＣＡＮバス通信を検出した場合、ステップ５２１において診断を実行することができる。診断が合格の場合、ステップ５２３で処理を終了する。診断が不合格の場合、ステップ５２２においてエラーを報告して、ステップ５２３で処理を終了する。
【００７４】
ステップ５１３において２本のケーブルを検出した場合、ステップ５１８において、ＨＳ終端リレー（例えば４１６ｄまたは４３０ｄ）をオン状態にする（これにより、ＨＳ終端抵抗を除去する）。ステップ５２４においてＨＳ通信を開始することができる。ステップ５２５において、ＣＡＮバス通信が存在するか否かを判定する。ＣＡＮバス通信が存在しない場合、ステップ５２６においてエラーを報告し、ＨＳ終端リレーをオフ状態にしてステップ５１７に処理を進める。ＣＡＮバス通信が存在する場合、ステップ５２７において診断を実行する。診断が合格の場合、ステップ５２９で処理を終了する。診断が不合格の場合、ステップ５２８においてエラーを報告して、ステップ５２９で処理を終了する。
【００７５】
ステップ５１３においてケーブルを検出しない場合、（ステップ５１４において）何らかの通信が存在するか否かを判定する。何らかの通信を検出した場合、ステップ５１６においてエラーを報告して、ステップ５２９で処理を終了する。ステップ５１４において通信を検出しない場合、ＨＳデータ指示器（例えばＬＥＤ：light emitting diode：発光ダイオード）をオフ状態にすることができる。
【００７６】
通信プロトコル
通信プロトコルが取り組む挑戦の一般的概説
一実施形態では、（例えば、図２または図４に例示するような）ＣＡＮバス装置ネットワークは、非決定性の装置トポロジを生じさせるミックス・アンド・マッチ製品戦略に基づくことができる。通信ネットワーク上に何らかの装置が存在する保証はないので、マスター−スレーブ型通信プロトコルは、ＣＡＮバス装置ネットワークでは実現可能でない。ネットワーク上の装置毎にデータ要求が異なり得るし、ＣＡＮバス・ネットワーク内で通信されるデータの種類は、設置された装置の集合（即ち、歯科用椅子、歯科用ライト、医療用装置、ユーザインタフェース、等）に依存する。従って、ＣＡＮバス通信プロトコルは、非決定性の（そして場合によっては動的な）一組のネットワーク化された装置間の任意データの交換をサポートする。
【００７７】
一実施形態では、ＣＡＮバス通信ネットワーク内の装置間で交換されるデータが、送信されるデータの種類に基づいて、次の３つのカテゴリ：即ちユニキャスト、マルチキャスト、及びブロードキャストのうちの１つに該当する。ユニキャスト（１対１の）通信は、例えば、ソフトウェア更新動作中に必要になる。一部のネットワークでは、同じネットワークに接続された特定装置の２つ以上の例が存在し得る。ロバスト（頑健、堅固）な再プログラミング動作を保証するために、上記通信プロトコルは、自律的なプログラミング／ソフトウェア更新機能をサポートすることができ、ここでは接続された装置の各々が別個に更新される。マルチキャスト（１対多の）通信は、同じデータ更新を複数の装置に受信させることによってバス帯域幅を低減するために用いることができる。この場合、データは１回だけ送信し、意図された各受信者は通信メッセージで識別される。最後に、ブロードキャスト（１対全員の）通信は、装置が、受信者を明示的に知らずに（あるいは識別せずに）ネットワーク上にデータを「無差別に」送信する際に用いることができる。この種の通信は、例えば自動発見中に用いることができる。
【００７８】
一実施形態では、２つ以上のユーザインタフェースを用意して、ＣＡＮバス装置ネットワーク内の１つ以上の装置の機能を制御することができる。例えば、歯科用ライトの状態は、ライト自体の上で直接、助手用ユーザインタフェース上のボタンを押すことによって、歯科医のユーザインタフェース上のボタンを押すことによって変化させることができ、あるいは、歯科用椅子が事前にプログラムされた「治療」位置に到達した際に歯科用ライトの状態を自動的に変化させることができる。この関係では、複数の装置が更新データ値を同時に生成する際に、特に処理及び伝送の遅延を考慮すると、データの「競合」状態が存在し得る。従って、上記通信プロトコルは、「同時の」データ更新を衝突防止する機能を含む。
【００７９】
一部の旧式的なＣＡＮバス・ネットワークの例では、使用する通信プロトコルが、追加される新たな装置毎に修正を必要とすることがある。これに加えて、旧式的なＣＡＮバス・ネットワークにおける通信プロトコルは、この旧式的なプロトコルがデータの通信よりもむしろ駆動機能に重点をおく際に、固定的な意味／解釈を有するＣＡＮメッセージを用いることができる。しかし、この方法は望ましくないことがある、というのは、装置のアプリケーション・ロジック（機能）とＣＡＮバス通信ドライバ（データ交換）との間にソフトウェア内の明確な責任の分離が存在しないからであり、このことは、テストして修正することが困難な密結合のソフトウェア本体を生じさせる。一実施形態では、ＣＡＮバス通信プロトコルがデータの通信に重点をおくことができ、このことは、機能を実現する手段を、それぞれの装置のアプリケーション・ソフトウェアに委ねる。これに加えて、本明細書に開示するＣＡＮバス通信プロトコルは、交換されるメッセージの伝送レイテンシ（待ち時間）を最小にして、他の装置がネットワークに接続された際にもネットワークから切り離された際にも各装置に通知することを可能にする標準化されたプラグ・アンド・プレイ能力をサポートし、ネットワーク化された装置毎に一意的に識別する手段を提供する。この関係では、上記通信プロトコルは、リソースに制約される「ベアメタル（地金）」型装置（例えば、オペレーティングシステムを有さない装置）からコンシューマ（民生）用または特化したオペレーティングシステム（即ち、Windows（登録商標）、Linux（登録商標）、Mac OS（登録商標）、Android（登録商標）、FreeRTOS（登録商標）、VxWorks（登録商標）、等）を実行する装置までに及ぶＣＡＮバス・ネットワークに関連して用いることができる。
【００８０】
ＣＡＮバス通信ネットワーク内で送信されるデータ及び実現される機能は、時間と共に変化し得る。例えば、単一のＣＡＮバス・ネットワークは、異なる年代の物を有し異なる通信プロトコルをサポートする装置を含むことができる。一実施形態では、本明細書に開示するＣＡＮバス通信プロトコルが、時間と共に（意図的にも偶発的にも）変化しないメカニズムを用いて１つ１つのデータのすべてを明確に識別する。これに加えて、本明細書に開示する通信プロトコルは、接続された装置のデータ変更またはデータ／信号要求、及びデータ変更毎の理由付けを伝達する標準化された方法を提供する。
【００８１】
ＣＡＮバス・ネットワークシステム内の装置機能を適切に検証することは挑戦的であり得る。一実施形態では、本明細書に開示するＣＡＮバス通信プロトコルは、１つの装置が他の装置によって送信されるあり得るすべてのデータ項目を理解することを可能にする。この能力は、送信されるデータ項目の有効性を検証することには役立たないが、この能力を用いて、装置が送信するべきデータ項目のリストを、この装置が送信することができるデータ項目のリストと比較することによって、検証プロセス全体を簡略化することができる。これら２つのリストを比較する際に見出される不一致は、所定装置用のソフトウェアの設計またはその実現における問題を迅速に強調することができる。例えば、歯科用椅子は電気マイクロモータを設定または制御するデータを決して生成するはずがない。この椅子のソフトウェアがこうしたデータを送信する技術的能力を有さないことを明確に知ることによって、検証プロセスを簡略化することができる。
【００８２】
一実施形態では、本明細書に開示するＣＡＮバス通信プロトコルを用いて、「データ」帯域幅を同時に最大にすることができ、かつ、任意数の装置が（同一または異なるデータ値を有する）同じデータ項目を「同時に」送信することを可能にすることができる。ネットワーク上の装置が十分な量のデータを受信して、これらの装置が、複数の発生源から生じた多数の（同一な可能性のある）データの塊を適正に再構成しなければならない。
【００８３】
一実施形態では、本明細書に開示するＣＡＮバス通信プロトコルが、仮定したプライオリティ（優先度）を有する識別子付きのＣＡＮバス・メッセージを用いて、複数の装置による同時のメッセージ送信の衝突を防止することができる（例えば、識別子の値が低いほど、プライオリティはより高い）。本明細書中で説明したように（例えば図４Ａ）、ＣＡＮバス・ネットワークは分岐トポロジを有することができ、ここではＳＪベース及びＳＫベースのコントローラを共に用いて（あるいは、低速及びＳＫベースのコネクタを有するハイブリッド・コントローラを用いて）１つ以上のＣＡＮバス・ネットワークを形成する。各ネットワークの装置トポロジは、システム内の装置の物理的位置によって大きく影響され、このことは、主に特定のプライオリティが混合した低速メッセージから成る１つのネットワーク、及び異なるプライオリティが混合した高速メッセージを有する他のネットワークを生じさせることができる。異なる装置トポロジに起因して、１つのネットワーク上でのデータ項目の重要性は、他のネットワーク上では必ずしも同じ重要性に移行されない。例えば、足踏み制御の作動割合はＣＡＮネットワーク上の電気マイクロモータの回転速度を直接制御することができ、位置の最小の変化に迅速に対応するための高プライオリティのメッセージを必要とする。しかし、歯科用椅子を含むネットワークは、椅子の移動をロックするために、精密な位置ではなく足踏み制御が作動している時を知るための低プライオリティのメッセージしか必要としない。この関係では、本明細書に開示するＣＡＮバス通信プロトコルは、単一のデータ項目を、同じ装置システム・アーキテクチャ内の異なるＣＡＮネットワーク上で、異なるプライオリティ・レベルで送信する能力を提供する。
【００８４】
解決策：プラグ・アンド・プレイ；メッセージ・フォーマット
本発明の一実施形態によれば、本明細書に開示するＣＡＮバス通信プロトコルは、設定の要求なしに、かつマスター・コントローラを用いることなしに、装置の自己構成能力を実現する。装置は、ネットワークをシャットダウン（電源遮断）することなしに、任意の時点で追加または除去することができる。
【００８５】
より具体的には、ＣＡＮバス・ネットワーク上のすべての装置／コントローラが、識別子の「心拍」メッセージを周期的に（例えば５００ミリ秒毎に１回）広く伝える。この「心拍」メッセージは２つの目的を果たす：この心拍メッセージは、装置の存在をネットワーク上の他の装置に通知し、この心拍メッセージは、例えばネットワーク・アドレス（即ち、ニックネーム）及び一意的な装置ＩＤ（identification：識別情報）で符号化することができる。一意的な装置ＩＤは、例えば、装置の製造業者ＩＤ、装置の型のＩＤ、及び装置の通し番号の組合せとすることができる。一意的な装置ＩＤは、製造工程中に装置に恒久的に割り当てることができる。ニックネームは、例えば各装置が任意に選択した５ビットの値とすることができ、そして、その装置がＣＡＮバス・ネットワーク上に存在を維持している間に、「心拍」メッセージの規則的な送信により、その装置に関連付けることができる。５ビットのニックネーム値を用いることは、単一のＣＡＮバス・ネットワーク上に３２個までの装置が同時に存在することをサポートする。異なるビットサイズをニックネーム用に選定することによって、より多数またはより少数の装置を単一のＣＡＮバス・ネットワーク上に収容することができる。
【００８６】
一実施形態では、ニックネーム値を複数のネットワーク間で共有することができる。２つの装置がたまたま同じニックネームを用いることがあれば、最小の（最低の大きさの）一意的な装置ＩＤを有する装置がそのニックネームを保持することができ、他の装置は今のところ未使用の新たなニックネーム値を選択することができる。これに加えて、ネットワーク上の他の装置は、所定の装置がネットワークから切り離された時点（例えば、所定装置用の「心拍」メッセージをもはや受信しない時点）を検出することができる
【００８７】
一実施形態では、一旦、装置のニックネームがネットワーク上で受け入れられると（即ち、ニックネームがかち合う他の装置が存在しないと）、この装置は、当該装置に送信されるべきすべてのデータ項目を識別する一連の申込要求メッセージ（ＳＲＭ：subscription request message）を広く伝えることができる。例えば、ＳＲＭは、当該装置へ送信するための１つ以上の信号を、当該信号が発生、変更、または更新された際にいつでも識別することができる。それ以来、要求された（申し込まれた）１つ１つのデータを生成するあらゆる装置が、こうしたデータ項目を、当該データ項目を申し込んだ装置のすべてに（ＣＡＮバス上の１つ以上の１つ以上のメッセージを用いて）送信する。
【００８８】
図６Ａ〜６Ｂに、ＣＡＮバス・コントローラ・ネットワークの通信フレームワーク（枠組み）内で用いることができるメッセージ・フォーマットの例のブロック図を示す。図６Ａ〜６Ｂを参照すれば、本明細書に開示するＣＡＮバス通信プロトコルはデータ項目を送信するために用いることができ、各データ項目は、ヘッダ・メッセージ（６０２ａ）及び０個以上の追加的なマルチ（複数）セグメントのデータ・メッセージ（６０２ｂ）を用いて送信される。送信されるデータ項目がヘッダ・メッセージ６０２ａの未使用のデータビット内に納まる例では、マルチセグメントのデータメッセージは必要ない。
【００８９】
図６Ａは、ヘッダ・メッセージ６０２ａのＣＡＮメッセージＩＤ部分及びＣＡＮメッセージ・ペイロード（実体）部分の組成の例、並びに伝達されるメッセージが「心拍」メッセージである際にメッセージ・ペイロードとして用いることができる代案の定義を、より詳細に例示する。図６Ｂは、マルチセグメント・データ・メッセージ６０２ｂのメッセージＩＤ部分及びメッセージ・ペイロード部分の組成をより詳細に例示する。
【００９０】
前に説明したように、ネットワーク上の各装置はニックネーム（ネットワーク・アドレス）に関連する。ＣＡＮメッセージを送信する装置は、その５ビットのニックネーム値を送信者の識別子（ＩＤ）としてＣＡＮメッセージ識別子（メッセージＩＤ）内に埋め込む。すべてのメッセージ内に送信者のＩＤが存在することは、特に複数の送信者が同じデータ項目についてのメッセージを同時に送信している際に、単一のデータ項目を送信するために必要な複数の個別メッセージを受信者が適正に再構成することを可能にする。また、送信側装置は、意図した各メッセージ受信者のニックネーム値を、ヘッダ・メッセージデータのペイロード部分中の意図した受信者フィールド内に符号化し、受信者フィールド内の各ビットは、可能な（例えば３２個の）ニックネーム値のうちの１つにに直接対応させることができる。ユニキャスト（１対１）通信は、ヘッダ・メッセージの受信者フィールド内に１つの受信者しか識別されない際に実現される。マルチキャスト（１対多）通信は、受信者フィールド内に２つ以上の受信者が識別される際に実現される。最後に、ブロードキャスト（１対全員）通信は、「管理」メッセージ（例えば「心拍」メッセージ）を送信する際に暗示され、あるいは、受信者フィールド内の（有効なニックネームに対応しないビットも含めた）全ビットが１にセットされた際に明示的に実現される。
【００９１】
同期された精密なタイムベース
本発明の一実施形態によれば、本明細書に開示するＣＡＮバス通信プロトコルは、衝突を防止した「同時の」データ更新を、当該更新の精密な時刻に各データ項目をトリガすることによって実行することができる。「現在時刻」の共通の定義を、リアルタイム・クロック（ＲＴＣ：Real-Time Clock）能力を有する装置からＣＡＮバス上に周期的に（例えば、２００ミリ秒毎に）広く伝える。複数の装置がＲＴＣ能力を有する場合、最小の（最低の大きさの）一意的な装置ＩＤを有する装置がＲＴＣを広く伝え続けることができ、他のすべての装置は、このようにＲＴＣを広く地耐えることを停止することができる。ＲＴＣ能力を有する装置がない場合、最小の一意的な装置ＩＤを有する装置が所定の初期「現在時刻」を選択し、他のすべての装置はそれに同期する。
【００９２】
ＣＡＮバス装置間の通信の例
図６Ｃ〜６Ｍは、ＳＪベース及び／またはＳＫベースのの通信フレームワーク内の種々の通信を例示する。図６Ｃは、通信ブリッジ機能を有する装置の通信フレームワークの例を示す。図６Ｃに見られるように、各装置（Ａ〜Ｎ）はＣＡＮバス・コントローラとすることができ、１つ以上のソフトウェア・ユニット（例えば、ＣＡＮバス・コントローラのマイクロコントローラ（またはＤＳＰ）上で実行されるソフトウェア）を含むことができる。各コントローラ上の発送フレームワークは、適切な回路、インタフェース、ロジック及び／またはコードを具えることができ、そしてソフトウェア・ユニット間で動作及びデータフローを連係させるために用いることができる。上記通信ブリッジは、適切な回路、インタフェース、ロジック及び／またはコードを具えることができ、そして、複数の発送フレームワークを物理的な通信インタフェースにより互いにリンクするように構成することができる。本発明の一実施形態によれば、図６Ｃの装置ネットワーク内で用いられる通信プロトコルは、新たに接続された装置の（例えば、心拍メッセージによる）自動的な発見、及び一意的なネットワーク識別子を作成する能力を可能にすることができる。
【００９３】
図６Ｄは、ＣＡＮバス・ネットワークにおけるＣＡＮバス通信プロトコルを用いた一般的な通信のやり取りを例示する。図６Ｄを参照すれば、心拍メッセージが開始されてすべての装置によって周期的に伝えられた後に、申込要求メッセージ（ＳＲＭ）も各装置によって送信される。ＳＲＭは、要求した装置へ送信するための１つ以上の信号を、その信号が発生され、変更され、更新される都度、識別することができる。ＳＲＭ用のメッセージＩＤは、心拍メッセージ用に用いられるものと同じにすることができるが、メッセージ・ペイロード中には異なる動作ＩＤを用いることができる。ＳＲＭを受信すると、受信側装置は識別された受信者フィールドを検査し、受信側装置に対応するビットがセットされていれば、受信側装置は要求された動作を実行する（即ち、受信側装置が発生することができる情報を、要求した装置に申し出る）。
【００９４】
一旦、適切なネットワークを確立すると（即ち、すべての装置が心拍メッセージ及び適切なネットワーク・アドレスを交換すると）、各装置はＳＲＭをネットワーク上のあらゆる新たな装置に送信する（例えば、図６Ｄ中に識別される信号の申込）。特定の装置は、関心のある信号をネットワーク上のあらゆる新たな装置が発生することができるか否かを知らず、従って、この装置はＳＲＭをネットワーク上のすべての新たな装置に送信する。例として、装置Ａは歯科用ライトの回路ボードとすることができる。最初は、他のすべての装置（Ｂ〜Ｎ）はネットワークにとって新たなものであり、従って、歯科用ライトはＳＲＭを他のすべての装置に送信する。後に、例えば超音波除石器のような新たな装置が追加された場合、一旦、除石器が適切なネットワーク・アドレスを有すると、歯科用ライトは超音波除石器のみにＳＲＭを送信する。
【００９５】
これに加えて、ＳＲＭは、要求した装置にとって関心のある特定のメッセージを識別する。例えば、歯科用ライトからのＳＲＭは、照明設定を変更するコマンド（命令語）、電源のオン／オフ状態を切り換えるコマンド、通常モードから治療安全モードへ変化するコマンド、等のような歯科用ライトにとって関心のある信号を生成するあらゆる装置に申し込むことを要求する。制御ヘッド回路ボードは、タッチスクリーン・インタフェースからの入力を受信して、歯科用ライトにとって関心のある信号を発生し、従って、制御ヘッド回路ボードは、歯科用ライトを、当該制御ヘッド回路ボードが発生する特定信号を申し込む装置のリストに追加し、この特定信号は歯科用ライトにとって関心のある信号である。制御ヘッド回路ボードが発生するが歯科用ヘッドは必要としない他の信号が存在する（これらの信号は、申し込まれる信号である、制御ヘッドから歯科用ライトへの信号のリストに追加されない）。
【００９６】
一実施形態では、装置Ａ〜Ｎの各々が、ＳＲＭの記録、即ち、要求した各装置の記録、及び当該要求した装置が申し込んだ信号の種類を記憶する（この信号は受信側装置が発生する）。上記の例では、制御ヘッド回路ボードは、当該制御ヘッド回路ボードが発生することができる各信号を申し込みたいすべての装置の記録を維持する。従って、制御ヘッド回路ボードは、歯科用ライトの照度設定を変更するための信号を当該制御ヘッド回路ボードが発生する時点の記録を維持し、この信号は歯科用ライトへ送信される。
【００９７】
図６Ｅは、心拍メッセージの周期的な通信を例示する。各装置は、心拍メッセージを周期的に、例えば５００ミリ秒毎に送信する。心拍メッセージは、各装置がネットワーク上の他の装置の各々を一意的に識別することを可能にする。ある装置の心拍がもはや検出されないと、この装置は「オフライン」状態になり、もはやネットワーク上に存在しないものと仮定する。（上述したように）各装置は一意的な装置ＩＤを有し、このＩＤは当該装置を製造する際に恒久的に割り当てられる。（上述したように）各装置は一意的なネットワークＩＤも有し、このネットワークＩＤは、発見段階中に自己割り当てされ、当該装置が取り付けられた通信ネットワークに関してのみ一意的である。２つ以上の装置が同じ一意的なネットワークＩＤを選択するような場合、最小の（最低の大きさの）一意的な装置ＩＤを有する装置が、この選定した一意的なネットワークＩＤを保持し、かち合う装置は、ネットワーク上にまだ観測されていない新たな一意的ネットワークＩＤを選定しなければならない。
【００９８】
図６ＦはＳＲＭの交換を例示する。図６Ｆに見られるように、申込要求メッセージ（ＳＲＭ）を開始する２つの方法が存在する。各装置は、当該装置が申し込むデフォルトの信号の集合を有するように工場で設定される。これに加えて、同じＣＡＮバス・ネットワーク上の他の装置は、１つ以上の補足申込コマンド（ＳＳＣ：supplemental subscription command）を、申し込み中の装置に送信して、当該装置のデフォルト集合以外の追加的なＳＲＭを発行するように当該装置に指示する。これらの補足的なデフォルト外のＳＲＭは、例えば、先進の、あるいは「ロック解除された」機能を当該申し込み中の装置内で制御する信号を申し込むために用いることができる。一旦、ある装置が安定した心拍メッセージ（例えば、同じ一意的なネットワークＩＤを有する５つの心拍メッセージ）を生成すると、申込メッセージを送信することによって、この装置との通信を直接開始することができる。ＳＲＭは、装置が受信したい信号を識別する。
【００９９】
ＳＳＣは、所定の装置（装置Ａ）が、他の装置（例えば装置Ｎ）内の機能にとって必要な１つ以上の信号を識別する例で用いられる。（装置Ｎによって有用な）識別される信号は、装置Ａまたは他の装置から発生することができる。装置ＡはＳＳＣを装置Ｎに送信して、装置Ｎにとって重要であるか装置Ｎが用いることができる信号を申し込むように、装置Ｎに命令することができる。装置Ｎはそれに応答して、このＳＳＣによって識別される信号を求めるＳＲＭを送信する。各装置は、マッピング（例えば、記憶している記録）を、他のすべての装置のそれぞれのＳＫベースのドライバ（あるいは当該装置の指定した記憶領域）内、及びそれぞれに対応する申込中に維持することができる。ある装置が信号を内部的に発行する都度、ＳＫベースのドライバはこのマッピングをチェックして、他の装置がこの信号を申し込んでいれば、この装置を見極める。申込が見出された場合、この内部的に発行された信号を申し込んだ装置の各々に転送する。
【０１００】
一実施形態では、ソフトウェア開発者が、コンパイル時に、装置が他の装置から受信したい信号（例えば、信号申込のデフォルト集合）を決定する。
【０１０１】
図６Ｇに、データフローの例を示す。信号を内部的に発行する各装置は、この信号を申し込んだ他のすべての装置へ、この信号を転送（プッシュ）することもできる。送信側装置は、既に内部的に発行した信号を求める申込を受信すると即座に、最後に発行した信号を新たな申込者（申し込んだ装置）にプッシュし、従って、申込者はデータの最新バージョンを有する。プル要求は、発行者の指定された信号用のプッシュ・メカニズムを手動で起動する。
【０１０２】
図６Ｈに、本発明の一実施形態による、再プログラミングのやり取りの例を示す。より具体的には、新たなソフトウェアを装置Ａから装置Ｎにプッシュして、装置Ｎの１つ以上のソフトウェア・モジュールを再プログラミングすることができる。
【０１０３】
図６Ｉに、再プログラミング・セッションを開始するためのメッセージ交換の例を示す。図６Ｊに、再プログラミングの準備の例を示す。図６Ｋに、装置Ｎの再プログラミング用の新たなソフトウェアをダウンロードする例を示す。図６Ｌに、ソフトウェア・ダウンロード検証のためのメッセージ交換の例を示す。図６Ｍに、新たなソフトウェアを実行するためのメッセージ交換の例を示す。
【０１０４】
方法の例
図７は、本発明の一実施形態による、ケーブル検出及びネットワーク・ノードを自己終端させる方法の例の流れ図である。図３Ａ及び７を参照すれば、方法の例７００は、ネットワーク・ノード内の終端抵抗を動的に切り換える方法を含むことができ、このノードは、利用可能な複数のコネクタのうちの少なくとも１つを介してピア−ツー−ピア・ネットワークの形に接続されている。ステップ７０２では、検出回路（例えば３１０ａ）が、このノード（例えば３０１）が、複数のコネクタのうちの第１コネクタ（例えば３０６ａ）に差し込まれた単一の接続ケーブル（例えば３０２ｆ）を介してネットワークに結合されている。この検出は、例えば、この単一の接続ケーブル（３０２ｆ）の短絡された一対のコネクタピン（例えば、ピンの図３０３ｄ内に見られるピン５と６）に基づくことができる。ノードが接続ケーブルを介してネットワークに結合されていることを検出する他の方法は、電気機械的スイッチ、コネクタ内に実装された赤外線またはＲＦＩＤ（Radio Frequency Identification：無線ＩＤタグ）機能、磁気、（例えば、遮断されたビームにより可能にされる検出による）光学的検出、等を用いることを含む。ステップ７０４において、終端抵抗をノード内に追加する（あるいは既に存在すれば保持する）。ステップ７０６において、ノード（３０１）が、上記複数のコネクタのうちの少なくとも第２コネクタ（例えば３０８ａ）に差し込まれた少なくとも１本の他のケーブルを介してネットワークに結合されていることを検出すると、ノード内の終端抵抗（例えば３１６ａ）を除去する（あるいは、既に存在しなければ追加しない）。
【０１０５】
図８ａは、本発明の一実施形態による、異なる通信プロトコルに関連するノード間で通信する方法の例の流れ図である。図４Ｂ及び８を参照すれば、方法の例８００は、第１ネットワークと第２ネットワークとの間で情報を交換する動作を含むことができる。ステップ８０２において、第１通信プロトコルに準拠した第１のメッセージまたはメッセージ集合を、第１トランシーバを介して受信する。例えば、コントローラ４０２ｂは、第１メッセージを、ＳＪベースのコネクタ４１８ｂ及びトランシーバ４１６ｂを介して受信することができる。ステップ８０４において、ブリッジ４０６ｂが第１メッセージに関連する意図した動作を特定することができる。ステップ８０６において、ブリッジ４０６ｂが、意図した動作を実行することに関連する第２メッセージを生成する（あるいは、マイクロコントローラ４０４ｂ、またはコントローラ４０２ｂの他の構成要素に生成させる）ことができ、この第２メッセージは第２通信プロトコルに準拠する（例えば、第２メッセージは、ＳＫベースのコネクタ４１０ｂに接続されたバスのようなＳＫベースのＣＡＮバスに準拠する）。ステップ８０８において、生成された第２メッセージを、第２トランシーバ（例えば４０８ｂ）を介して、第２ネットワーク上の１つ以上の装置（例えば、ＳＫベースのコネクタ４１０ｂを介してコントローラ４０２ｂに結合された１つ以上の装置）に送信する。
【０１０６】
コンピュータ環境の例
図９に、説明した実施形態、技法、及び技術を実現することができる適切な環境を一般化した例を示す。コンピュータ環境９００は、技術の利用または機能の範囲についての限定を意図するものではない、というのは、これらの技術は汎用または特定目的のコンピュータ環境において様々な形で実現することができるからである。例えば、開示する技術は、ハンドヘルド装置、マルチプロセッサ・システム、プログラマブルなコンシューマ（民生）用電子機器、ネットワークＰＣ（Personal Computer：パーソナル・コンピュータ）、ミニコンピュータ、メインフレーム（大型）コンピュータ、等を含む他のコンピュータシステム構成で実現することができる。開示する技術は、分散型のコンピュータ環境において実施することもでき、こうしたコンピュータ環境では、タスクは、通信ネットワークを通してリンクされたリモート（遠隔）処理装置によって実行される。分散型のコンピュータ環境では、（ブロックベースの命令ブロック用の実行可能な命令を含む）プログラム・モジュールを、ローカル及びリモートなメモリ記憶装置内に配置することができる。
【０１０７】
図９を参照すれば、コンピュータ環境９００は、少なくとも１つの処理装置９１０及びメモリ９２０を含む。図９では、こうした最も基本的な構成９３０を破線内に含める。ブロックベースの処理装置９１０は、コンピュータで実行可能な命令を実行し、実在のプロセッサまたは仮想的なプロセッサとすることができる。マルチ処理システムでは、複数の処理装置がコンピュータで実行可能な命令を実行して処理能力を増加させ、このため、複数のプロセッサを同時に動作させることができる。メモリ９２０は、揮発性メモリ（例えば、レジスタ、キャッシュ、ＲＡＭ（Random Access Memory：ランダムアクセスメモリ））、不揮発性メモリ（例えば、ＲＯＭ（Read Only Memory：読出し専用メモリ）、ＥＥＰＲＯＭ（Electrically Erasable Programmable ROM：電気的消去可能プログラマブルＲＯＭ）、フラッシュメモリ、等）、あるいはこれら２者の組合せとすることができる。メモリ９２０は、ソフトウェア９８０、画像、音声及び映像を記憶し、これらは、例えば本明細書に記載する技術を実現する。コンピュータ環境は追加的な特徴を有することができる。例えば、コンピュータ環境９００は、記憶装置９４０、１つ以上の入力装置９５０、１つ以上の出力装置９６０、及び１つ以上の通信接続部９７０を含む。バス、コントローラ、またはネットワークのような相互接続メカニズム（図示せず）が、コンピュータ環境９００内の構成要素を相互接続する。一般に、オペレーティングシステム・ソフトウェア（図示せず）は、コンピュータ環境９００内で実行される他のソフトウェア用の動作環境を提供し、コンピュータ環境９００の構成要素の動作を連係させる。
【０１０８】
記憶装置９４０は、リムーバブル（着脱可能）または非リムーバブルとすることができ、磁気ディスク、磁気テープ、ＣＤ−ＲＯＭ（Compact Disk ROM：コンパクトディスクＲＯＭ）、ＣＤ−ＲＷ（CD-Rewrite：書き変え可能ＣＤ）、ＤＶＤ（Digital Versatile Disk：デジタル多用途ディスク）、あるいは、情報を記憶することができ、かつコンピュータ環境９００内でアクセスすることができる他のあらゆる媒体を含む。記憶装置９４０は、ソフトウェア９８０用の命令、プラグイン・データ、及びメッセージを記憶し、これらを用いて本明細書に記載する技術を実現することができる。
【０１０９】
入力装置９５０は、キーボード、キーパッド、マウス、タッチスクリーン・ディスプレイ、ペン、またはトラックボールのようなタッチ入力装置、音声入力装置、スキャン装置、あるいはコンピュータ環境９００への入力を行う他の装置とすることができる。音声については、入力装置９５０は、音声入力をアナログまたはデジタル形式で受け入れるサウンドカードまたは同様の装置、あるいは音声サンプルをコンピュータ環境９００に提供するＣＤ−ＲＯＭリーダとすることができる。出力装置９６０は、ディスプレイ、プリンタ、スピーカ、ＣＤ−ライター（ＣＤ書込み装置）、あるいはコンピュータ環境９００からの出力を提供する他の装置とすることができる。
【０１１０】
通信接続９７０は、通信媒体（例えば接続ネットワーク）越しの他のコンピュータ実体への通信を可能にする。この通信媒体は、コンピュータで実行可能な命令、圧縮したグラフィック情報、映像、または他のデータを変調信号の形で搬送する。通信接続９７０は、有線接続（例えば、ＣＡＮバス・ネットワーク、メガビットまたはギガビットのイーサネット（登録商標）、インフィニバンド（登録商標）、電気接続または光ファイバ接続によるファイバチャネル）に限定されず、無線技術（例えば、ブルートゥース（登録商標）、ＷｉＦｉ（IEEE802.11a/b/n）、ＷｉＭａｘ、セルラ、衛星、レーザ、赤外線を介したＲＦ（Radio Frequency：無線周波数）接続）、及び開示したエージェント、ブリッジ、及びエージェント・データ消費者用のネットワークを提供する他の適切な通信接続も含む。仮想的なホスト環境では、通信接続は仮想ホストが提供する仮想的なネットワーク接続とすることができる。
【０１１１】
コンピュータ可読媒体は、コンピュータ環境９００内でアクセスすることができるあらゆる利用可能な媒体とすることができる。限定ではない一例として、コンピュータ環境９００では、コンピュータ可読媒体はメモリ９２０及び／または記憶装置９４０を含む。「コンピュータ可読な記憶媒体」とは、メモリ９２０及び記憶装置９４０のようなデータ記憶用の媒体を含み、変調データ信号のような伝送媒体を含まないことは、容易に理解されるはずである。
【０１１２】
開示する技術の追加的な例
ここでは、開示する主題の追加的な例を、上述した例により説明する。
【０１１３】
一実施形態では、システムが、通信インタフェースを介してピア−ツー−ピア・ネットワークの形に接続された複数のノードを含む。少なくとも１つのノードは、当該少なくとも１つのノード内の終端抵抗を、当該ノードがネットワークのエンドポイントであるか非エンドポイントであるかに基づいて変更する能力を有する。こうした能力を有する少なくとも１つのノードは、トランシーバ、少なくとも２つのコネクタ、及びこのトランシーバに結合された少なくとも１つの終端抵抗モジュールを含む。この少なくとも１つの終端抵抗モジュールは、ノード内の終端抵抗を提供する。このノードは、上記少なくとも２つのコネクタのうちの第１コネクタに結合された第１検出回路、及び上記少なくとも２つのコネクタのうちの第２コネクタに結合された第２検出回路も含む。これらの検出回路は、ノードがピア−ツー−ピア・ネットワーク内の１つ以上の他のノードに結合されていることを検出し、この検出に基づいて終端抵抗を自動的に調整するように構成されている。
【０１１４】
上記通信バスは、コントローラ・エリア・ネットワーク（ＣＡＮ）バスとすることができる。上記少なくとも２つのコネクタはＲＪ５０コネクタであり、上記トランシーバはＣＡＮトランシーバである。上記ノードは、上記少なくとも１つの終端抵抗モジュールに結合された終端回路をさらに含む。この終端回路は、上記検出に基づいて終端抵抗を追加または除去するように構成されている。上記検出回路は、上記少なくとも２つのコネクタが他のノードのうちの少なくとも２つに結合されていることを検出することによって、上記ノードが非エンドポイントであるものと判定する。上記ノードが非エンドポイントであることを検出すると、当該ノード内の終端抵抗を変更することができる（例えば、この終端抵抗を除去することができ、この終端抵抗にインピーダンスを追加することができ、この終端抵抗を不作動状態にしておくことができ、等である）。上記検出回路は、上記少なくとも２つのコネクタのうちの１つだけが少なくとも１つの他のノードに結合されていることを検出することによって、上記ノードがエンドポイントであるものと判定するように構成されている。ノードがエンドポイントであるものと判定すると、このノード内に終端抵抗を追加するか、存在したままにするか、さもなければ変更する。この終端抵抗は高速用終端抵抗であり、実質的に約９９．８Ωに等しい。ノードが他のノードのうちの１つ以上から切り離されている際に、あるいはノードがエンドポイントである際には、この終端抵抗がノード内にデフォルトで存在する（例えば、終端抵抗が追加されるか、既に存在すれば作動している）。
【０１１５】
上記第１検出回路は、上記第１コネクタが切り離されると、第１の論理値ハイの信号を発生するように構成されている。上記第２検出回路は、上記第２コネクタが切り離されると、第２の論理値ハイの信号を発生するように構成されている。上記第１検出回路は、上記第１コネクタが、当該第１コネクタに差し込まれた第１コネクタケーブルを介して通信バスに接続されると、第１の論理値ローの信号を発生するように構成されている。上記第２検出回路は、上記第２コネクタが、当該第２コネクタに差し込まれた第２コネクタケーブルを介して通信バスに接続されると、第２の論理値ローの信号を発生するように構成されている。上記第１検出回路は、上記第１コネクタケーブル内の少なくとも２つのコネクタピン間の短絡接続を検出すると、第１の論理値ローの信号を発生するように構成されている。上記第２検出回路は、上記第１コネクタケーブル内の少なくとも２つのコネクタピン間の短絡接続を検出すると、第２の論理値ローの信号を発生するように構成されている。上記通信バスは高速ＣＡＮバスであり、上記ノードは高速ＣＡＮノードであり、上記第１検出回路は、さらに、第１接続ケーブル内の短絡された第１対のピンに基づいて、上記ノードが第１接続ケーブルを介して少なくとも第２のノードに結合されていることを検出するように構成されている。上記第１検出回路は、さらに、第１接続ケーブル内の短絡された第２対のピンに基づいて、上記少なくとも第２のノードが低速のＣＡＮノードであることを検出するように構成され、この第２対は上記第１対と異なる。上記第１検出回路は、さらに、上記少なくとも第２のノードが低速ＣＡＮバス・ノードであることを検出したことに基づいて、上記終端抵抗を高速用終端抵抗から低速用終端抵抗へ調整するように構成されている。上記高速用終端抵抗はおよそ９９．８Ωであり、上記低速用終端抵抗はおよそ３３０Ωである。
【０１１６】
一実施形態では、ネットワーク・ノード内の終端抵抗を動的に切り換える方法を開示し、このノードは、利用可能な複数のコネクタのうちの少なくとも１つを介してピア−ツー−ピア・ネットワークの形に接続されている。この方法は、ノードが、上記複数のコネクタのうちの第１コネクタに結合された単一の接続ケーブルを介してネットワークに結合されていることを検出すると、終端抵抗をノード内に追加するステップを含む。この検出は、上記単一の接続ケーブルにより短絡された一対のコネクタピンに基づく。ノードが、上記複数のコネクタのうちの少なくとも第２コネクタに差し込まれた少なくとも１本の他の接続ケーブルを介してネットワークに結合されていることを検出すると、このノード内の終端抵抗を除去する。この方法は、上記第１及び第２コネクタにおける接続ケーブル毎に、少なくとも２つのコネクタピンを検出するステップをさらに含む。接続ケーブル毎に、少なくとも２つのコネクタピンが短絡されていることを検出すると、これら少なくとも２本の接続ケーブルに対応する少なくとも２つの論理信号を発生し、これらの論理信号に基づいて、上記ノード内の終端抵抗を不作動状態にする（あるいは除去し、さもなければ変更する）。
【０１１７】
一実施形態では、コンピュータ装置（例えば歯科医療機器）が、処理装置、第１通信プロトコルに関連する第１ネットワーク内で動作するように構成された少なくとも第１トランシーバ、及び第２通信プロトコルに関連する第２ネットワーク内で動作するように構成された少なくとも第２トランシーバを含む。第１及び第２トランシーバは処理装置に結合されている。このコンピュータ装置は、第１トランシーバに関連するＳＫベースの（例えば高速用の）終端抵抗モジュール、及び第２トランシーバに関連するＳＪベースの（例えば低速用の）終端抵抗モジュールをさらに含む。上記処理装置は、上記第１ネットワークと上記第２ネットワークとの間で情報を交換する動作を実行するように構成されている。この動作は、第１トランシーバを介して、第１通信プロトコルに準拠した第１メッセージを受信することを含む。第１メッセージに関連する意図した動作を特定する。この意図した動作を実行することに関連した第２メッセージを生成し、この第２メッセージは第２通信プロトコルに準拠する。この第２メッセージは、第２トランシーバを介して第２ネットワーク上の１つ以上の装置へ送信される。
【０１１８】
上記動作は、短絡された第１対のコネクタピンを検出することをさらに含み、短絡された第１対のコネクタピンは、第２トランシーバに関連するコネクタにある。短絡された第１対のピンを検出すると、低速用終端抵抗モジュールを作動させて、第２トランシーバに関連するコネクタに低速用終端抵抗を提供する（例えば、終端抵抗が予め接続されていなければ終端抵抗を追加することができ、終端抵抗が予め接続されていれば、この終端抵抗を存在したままにすることができ、さもなければ変更することができる）。第１トランシーバは第１ネットワークに接続されていないのに対し第２トランシーバは第２ネットワークに接続されていることを検出すると、第１トランシーバに関連する終端抵抗を変更する（例えば、除去することができる、この終端抵抗にインピーダンスを追加することができる、この終端抵抗を不作動状態にしておくことができる、等である）。これらの動作は、短絡された第２対のコネクタピンを検出することをさらに含むことができる。これらの短絡された第２対のピンは、第１トランシーバに関連するコネクタに存在することができる。上記第２対のピン及び上記第１対のピンが短絡されていることを検出すると、高速用終端抵抗モジュールを不作動状態にする（例えば、終端抵抗を変更、除去することができる、終端抵抗にインピーダンスを追加することができる、終端抵抗を不作動状態にしておくことができる、等である）。上記第１ネットワークは高速ＣＡＮネットワーク（例えば、ＳＫベースのネットワーク）であり、上記第２ネットワークは低速ネットワーク（例えば、ＳＪベースのネットワーク）である。
【０１１９】
一実施形態では、複数のノードのピア−ツー−ピア・ネットワーク内で情報を通信する方法が、これら複数のノードのうちの第１ノードで、これら複数のノードのうちの第２ノードからの申込要求を受信するステップを含むことができる。この申込要求は、１つ以上の信号が発生、変更、または更新される都度、これらの信号を第１ノードが第２ノードへ送信することを指定することができる。マッピングデータは、この申込要求に基づいて第１ノードが生成する。このマッピングデータは、上記複数のノードのうちの１つ以上の信号申込を識別することができる。このマッピングデータは第１ノードのメモリに記憶される。このマッピングデータは、上記複数のノードのうちの少なくとも第３ノードからの少なくとも他の申込要求の受信時に更新される。この申込要求を受信する前に、上記複数のノードのうちの第２ノードからの心拍メッセージを第１ノードで受信し、この心拍メッセージは、第２ノードを、上記ピア−ツー−ピア・ネットワーク上に接続された装置として識別する。第２の申込要求を、第１ノードが第２ノードへ送信し、この第２の申込要求は、第２ノードが発生することができ、第１ノードが申し込むことを要求している１つ以上の信号を識別する。補足的な申込コマンドを、第１ノードが第２ノードへ送信する。この補足的な申込コマンドは、第２ノードが利用することができ、第１ノードまたは上記複数のノードのうちの他のノードが発生することができる１つ以上の識別される信号を求める申込要求を開始するように第２ノードに命令する。
【０１２０】
開示する主題の原理を応用することができる多数の可能な実施形態を考慮すれば、例示した実施形態は好適な例に過ぎず、特許請求の範囲をこれらの好適な例に限定するものとして捉えるべきではないことが認められるべきである。むしろ、特許請求する主題の範囲は、以下の特許請求の範囲によって規定される。従って、これらの請求項の範囲内に入るすべてのものを本発明として特許請求する。
【０１２１】
開示した技術を実現するためのコンピュータで実行可能なあらゆる命令、並びに開示した実施形態の実現中に作成されて使用されるあらゆるデータは、１つ以上のコンピュータ可読の記憶媒体上に記憶することができる。上記のコンピュータで実行可能な命令は、例えば、専用ソフトウェア・アプリケーション、またはウェブ・ブラウザによりアクセスまたはダウンロードされるソフトウェア・アプリケーション、あるいは（リモート・コンピュータ・アプリケーションのような）他のアプリケーションの一部とすることができる。こうしたソフトウェアは、例えば、単一のローカル・コンピュータ（例えば、あらゆる適切な市販のコンピュータ）上で、あるいは、１つ以上のネットワーク・コンピュータを用いたネットワーク環境内で（例えば、インターネット、ワイドエリア・ネットワーク、ローカルエリア・ネットワーク、（クラウド・コンピューティング・ネットワークのような）クライアント−サーバー・ネットワーク）、または他のこうしたネットワーク経由で）実行することができる。
【０１２２】
明瞭にするために、ソフトウェアベースの実現のうち選択した特定の態様のみを説明した。現在技術において周知である他の細部は省略した。例えば、開示した技術はどの特定のコンピュータ言語またはプログラムにも限定されないことは明らかである。例えば、開示した技術は、C++、Java（登録商標）、Perl（登録商標）、JavaScript（登録商標）、Adobe Flash（登録商標）、または他のあらゆる適切なプログラミング言語によって実現することができる。同様に、開示した技術は、どの特定のコンピュータまたはハードウェアの種類にも限定されない。適切なコンピュータ及びハードウェアの特定の細部は周知であり、本開示では詳細に記載する必要はない。
【０１２３】
さらに、（例えば、開示した方法のいずれかをコンピュータに実行させるためのコンピュータで実行可能な命令を含む）上記ソフトウェアベースの実施形態のいずれも、適切な通信手段を通してアップロード、ダウンロード、または遠隔的にアクセスすることができる。こうした適切な通信手段は、例えば、インターネット、ワールドワイド・ウェブ、イントラネット、ソフトウェア・アプリケーション、（光ファイバケーブルを含む）ケーブル、磁気通信、（ＲＦ、マイクロ波、及び赤外線通信を含む）電磁波通信、電子通信、または他のこうした通信手段を含む。
【０１２４】
開示した方法、装置、及びシステムは、いかなる形でも限定的なものとして解釈するべきでない。その代わりに、本発明は、開示した種々の実施形態のすべての新規で自明でない特徴及び態様に、単独でも、種々の相互の組合せ及び副次的組合せでも、指向している。開示した方法、装置、及びシステムは、いずれの特定の態様または特徴、あるいはその組合せにも限定されす、開示した実施形態は、１つ以上の特定の特徴のいずれが存在することも、１つ以上の特定の課題のいずれを解決することも要求しない。
【０１２５】
いずれの例からの技術も、いずれの１つ以上の他の例において説明した技術と組み合わせることができる。開示した技術の原理を応用することができる多数の可能な実施形態を考慮すれば、例示した実施形態は開示した技術の例であり、開示した技術の範囲に対する限定として捉えるべきでないことは、認められるべきである。むしろ、開示した技術の範囲は、以下の特許請求の範囲及び精神によってカバーされるものを含む。
【図１】
2017188900.tif 000004
【図２】
2017188900.tif 000005
【図３Ａ】
2017188900.tif 000006
【図３Ｂ】
2017188900.tif 000007
【図３Ｃ】
2017188900.tif 000008
【図３Ｄ】
2017188900.tif 000009
【図３Ｅ】
2017188900.tif 000010
【図３Ｆ】
2017188900.tif 000011
【図３Ｇ】
2017188900.tif 000012
【図４Ａ】
2017188900.tif 000013
【図４Ｂ】
2017188900.tif 000014
【図４Ｃ】
2017188900.tif 000015
【図４Ｄ】
2017188900.tif 000016
【図４Ｅ】
2017188900.tif 000017
【図４Ｆ】
2017188900.tif 000018
【図５】
2017188900.tif 000019
【図６Ａ】
2017188900.tif 000020
【図６Ｂ】
2017188900.tif 000021
【図６Ｃ】
2017188900.tif 000022
【図６Ｄ】
2017188900.tif 000023
【図６Ｅ】
2017188900.tif 000024
【図６Ｆ】
2017188900.tif 000025
【図６Ｇ】
2017188900.tif 000026
【図６Ｈ】
2017188900.tif 000027
【図６Ｉ】
2017188900.tif 000028
【図６Ｊ】
2017188900.tif 000029
【図６Ｋ】
2017188900.tif 000030
【図６Ｌ】
2017188900.tif 000031
【図６Ｍ】
2017188900.tif 000032
【図７】
2017188900.tif 000033
【図８】
2017188900.tif 000034
【図９】
2017188900.tif 000035
【外国語明細書】
2017188900000001.pdf