(57)【要約】【課題】多数のアンプ等をネットワークを介して接続しアンプ等の監視・制御を行う場合に、制御データの伝送路が狭帯域であってもアンプ等を安定して監視・制御する。【解決手段】複数のノードのうちの一のノードとして接続される信号伝送装置（１１００）において、複数のノードの全ての設定情報であって所定のブロック毎にエラーチェックコードを付与して成る設定情報を記憶する記憶手段と、他のノードのエラーチェックコードを繰り返し受信するエラーチェックコード受信手段と、受信したエラーチェックコードと設定情報内のコードとを比較することにより、エラーが生じたブロックを検知する比較手段と、該エラーが生じたブロックの送信を該ブロックに対応する特定のノードへ要求する送信手段と、該ブロックから受信した設定情報によって、設定情報内のブロックを更新する更新手段とを設けた。【選択図】  図１
2004349772.tif 000002
【特許請求の範囲】
【請求項１】
所定の伝送サイクル毎に複数チャンネルの音声信号を伝送する音声信号伝送期間と、これら音声信号伝送期間以外の空き時間であって制御データを伝送する制御データ伝送期間とが設けられたネットワークに対して複数のノードのうちの一のノードとして接続される信号伝送装置において、
前記複数のノードの全ての設定情報であって所定のブロック毎にエラーチェックコードを付与して成る設定情報を記憶する記憶手段と、
他のノードのエラーチェックコードを前記ネットワークを介して他のノードから繰り返し受信するエラーチェックコード受信手段と、
受信したエラーチェックコードと前記設定情報内に保持している対応するエラーチェックコードとを比較することにより、前記設定情報の中からエラーが生じたブロックを検知する比較手段と、
該エラーが生じたブロックの送信を要求する要求データを、該ブロックに対応する特定のノードへ送信する送信手段と、
該ブロックに対する設定情報を該特定のノードから受信する設定情報受信手段と、
この受信した設定情報によって、前記ブロックを更新する更新手段と、
この更新されたブロックの設定情報に対応する新たなエラーチェックコードを生成し、生成したエラーチェックコードを前記設定情報の対応部分に書き込むエラーチェックコード更新手段と
を有することを特徴とする信号伝送装置。
【請求項２】
前記エラーチェックコードのうち、自機の設定状態に対応するエラーチェックコードを前記ネットワークを介して繰り返し送信するエラーチェックコード送信手段と、
このエラーチェックコードに対応するブロックについて他のノードから要求データを受信すると、要求されたブロックを当該他のノードに対して送信する設定情報送信手段と
をさらに有することを特徴とする信号伝送装置。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、ネットワークを介して音声信号を伝送するとともにアンプ等を制御するシステムに用いて好適な信号伝送装置に関する。
【０００２】
【従来の技術】
大型のコンサートホール等に用いられる音響システムにおいては、ミキシングシステム等によって生成された複数チャンネルの音声信号が多数のアンプを介して、多数のスピーカから発音される。そして、これら個々のチャンネル毎に音声信号伝送用のケーブルを敷設すると、ケーブル量が多大になるため、複数チャンネルの音声信号をパケット（音声データ）に変換し、ネットワークを介して伝送することが望ましい。
【０００３】
そこで、ＣＳＭＡ／ＣＤ（搬送波感知多重アクセス／衝突検出）方式のネットワーク、例えばイーサネット（登録商標）を介して複数チャンネルの音声データをリアルタイムに伝送する方法として、Ｃｏｂｒａ  Ｎｅｔ（商標）という技術が知られている（非特許文献１）。ＣＳＭＡ／ＣＤ方式においては、衝突が発生した場合すなわち複数のノードが同時に送信を開始した場合の調停方法が定められているが、衝突が生じた場合に帯域のロスが大きくなる。このため、Ｃｏｂｒａ  Ｎｅｔにおいては、ネットワーク上の各ノードに対して所定の伝送サイクル毎に音声データの送信期間を割り当て、衝突を回避することによって最大１２８チャンネルの音声データの伝送を可能にしている。
【０００４】
ここで、図３（ａ）を参照し、Ｃｏｂｒａ  Ｎｅｔのプロトコルの概要を説明しておく。まず、Ｃｏｂｒａ  Ｎｅｔにおいては、１．３３ｍｓｅｃの「伝送サイクル２００」を周期として、ネットワーク上の各ノードから音声データが出力される。そして、各ノードのうち何れか一のノードは、伝送サイクル２００を管理するための特殊ノード（「コンダクタ」という）に設定される。そして、各伝送サイクル２００の先頭においては、コンダクタによって開始パケット２０１がネットワーク１０００上に出力される。
【０００５】
この開始パケット２０１が出力されると、該コンダクタを含む全てのノードから所定順序で音声データのパケット２１１，２１２，……２１ｎが出力される。これらのパケットを「バンドル」といい、「１」バンドルは複数のチャンネル、例えば最大「８」チャンネルの音声データから構成されている。各バンドルには他のバンドルとは重ならないバンドル番号が付与されており、出力された音声データを受信しようとするノードは、該バンドル番号により受信すべき音声データを含むバンドルを判別して取り込み、取り込んだバンドルから所望のチャンネルの音声データを取り出す。また、各ノードから送信されるパケット２１１，２１２，……２１ｎの各々において、複数のバンドルが出力されることもあり得る。そして、一の伝送サイクル２００内において各バンドルが出力された後、伝送サイクル２００が終了するまでの空き時間に、シリアル通信用のパケット２２０を送信できる期間が確保されている。
【０００６】
このため、Ｃｏｂｒａ  Ｎｅｔにおいては、伝送サイクル２００内の空き時間を利用してシリアル通信を行うことが可能であるが、シリアル通信用の帯域が元々狭いために制御データを伝送しようとすると遅延時間が長くなるという問題がある。しかも、この遅延時間は、音声データのバンドル数によって左右されるため、多数のアンプ等を安定して制御したり、あるいはアンプ等の状態データを安定して収集することが困難であった。
【０００７】
かかる理由により、Ｃｏｂｒａ  Ｎｅｔに規定されているシリアル通信用のパケット２２０は、実際には用いられていない場合が多い。例えば、Ｃｏｂｒａ  Ｎｅｔを適用したシステムに対して制御データを伝送する技術としてＱＳＣｏｎｔｒｏｌ（商標）またはＡｕｄｉａ（商標）のようなものが知られているが、これらの技術においては、何れもＣｏｂｒａ  Ｎｅｔからは独立した制御データ専用のネットワークを介して、各ノードの制御、例えばアンプの状態の収集や制御が行われている。
【０００８】
【非特許文献１】「Ａｕｄｉｏ  Ｎｅｔｗｏｒｋｓ  ｏｎ  Ｏｖｅｒｖｉｅｗ」ＣＩＲＲＵＳ  ＬＯＧＩＣ社，２００１年
【０００９】
【発明が解決しようとする課題】
しかし、アンプ等の制御を行うためにＣｏｂｒａ  Ｎｅｔから独立したネットワークを用いると、音声データ用のネットワークケーブルと制御データ用のネットワークケーブルの双方を各ノードに接続する必要がある。これにより、使用されるケーブルの本数が多大になり、音響システムのセッティングを行う手間が増大するという問題が生じていた。
この発明は上述した事情に鑑みてなされたものであり、制御データの伝送路が狭帯域であってもアンプ等を安定して監視・制御することができる信号伝送装置を提供することを目的としている。
【００１０】
【課題を解決するための手段】
上記課題を解決するため本発明にあっては、下記構成を具備することを特徴とする。なお、括弧内は例示である。
請求項１記載の信号伝送装置にあっては、所定の伝送サイクル（２００）毎に複数チャンネルの音声信号（パケット２１１，２１２，……２１ｎ）を伝送する音声信号伝送期間と、これら音声信号伝送期間以外の空き時間であって制御データ（パケット２２０）を伝送する制御データ伝送期間とが設けられたネットワークに対して複数のノードのうちの一のノードとして接続される信号伝送装置において、前記複数のノードの全ての設定情報（４００）であって所定のブロック（４０４〜４１０）毎にエラーチェックコード（ＣＲＣ符号）を付与して成る設定情報（４００）を記憶する記憶手段（１２２）と、他のノードのエラーチェックコードを前記ネットワークを介して他のノードから繰り返し受信するエラーチェックコード受信手段（１１０）と、受信したエラーチェックコードと前記設定情報（４００）内に保持している対応するエラーチェックコードとを比較することにより、前記設定情報の中からエラーが生じたブロックを検知する比較手段と、該エラーが生じたブロックの送信を要求する要求データを、該ブロックに対応する特定のノードへ送信する送信手段と、該ブロックに対する設定情報を該特定のノードから受信する設定情報受信手段と、この受信した設定情報によって、前記ブロックを更新する更新手段と、この更新されたブロックの設定情報に対応する新たなエラーチェックコードを生成し、生成したエラーチェックコードを前記設定情報の対応部分に書き込むエラーチェックコード更新手段とを有することを特徴とする。
また、請求項２記載の信号伝送装置にあっては、前記エラーチェックコード（ＣＲＣ符号）のうち、自機の設定状態に対応するエラーチェックコードを前記ネットワークを介して繰り返し送信するエラーチェックコード送信手段（１１０）と、このエラーチェックコードに対応するブロックについて他のノードから要求データを受信すると、要求されたブロックを当該他のノードに対して送信する設定情報送信手段（１１０）とをさらに有することを特徴とする。
【００１１】
【発明の実施の形態】
１．実施形態の構成
１．１．全体構成
次に、本発明の一実施形態の信号伝送システムの全体構成を図１を参照し説明する。
１０００はイーサネット（登録商標）形式のネットワークであり、ここに接続された複数のノード間のパケットを伝送する。ネットワーク１０００に接続されるノードは「汎用Ｉ／Ｏノード」と「アンプＩ／Ｏノード」とに大別される。前者は、ネットワーク１０００を介して音声データの入出力を行えるノードであり、後者は音声データについてはネットワーク１０００からの入力のみが可能なノードである。ネットワーク１０００には、最大「８」台の汎用Ｉ／Ｏノードと、最大「１６」台のアンプＩ／Ｏノードとを接続することが可能である。
【００１２】
図示の例においては、「２」台の汎用Ｉ／Ｏノード１１００，１２００と、「２」台のアンプＩ／Ｏノード１５００，１６００とがネットワーク１０００に接続されている。そして、汎用Ｉ／Ｏノード１１００にはマイク１１０２およびレコーダ１１０４が接続され、汎用Ｉ／Ｏノード１２００にはミキサ１２０２が接続され、該ミキサ１２０２にマイク１２０４およびレコーダ１２０６が接続されている。
【００１３】
また、アンプＩ／Ｏノード１５００には、複数のアンプ１５０２〜１５０ｎが接続され、これらアンプから出力された音声信号はスピーカ１５１２〜１５１ｎを介して発音される。なお、アンプＩ／Ｏノード１５００と各アンプ１５０２〜１５０ｎとを接続するケーブルは、ノードから各アンプに対してアナログ音声信号を伝送するためのケーブルと、ノードと各アンプ間で制御信号の双方向伝送を行うためのケーブルとから構成されるが、図上では便宜上各々一本の線によって表現されている。ここで、一のアンプＩ／Ｏノードは、「４」バンドル（「３２」チャンネル）の音声データの中から任意の最大「１６」チャンネルの音声データをアナログ信号に変換し出力することができ、最大「３２」のアンプに対して制御信号を双方向伝送することができる。
【００１４】
同様に、アンプＩ／Ｏノード１６００は、複数のアンプ１６０２〜１６０ｎに接続され、これらアンプには各々スピーカ１６１２〜１６１ｎが接続されている。また、本実施形態においては、一または複数の任意のノードに対して、信号伝送システムの監視・制御用のパーソナルコンピュータ（ＰＣ）を接続することができる。図示の例においては、汎用Ｉ／Ｏノード１１００およびアンプＩ／Ｏノード１６００に各々ＰＣ１９１０，１９２０が接続されている。
【００１５】
１．２．各ノードの構成
次に、図２（ａ）を参照し、各ノードの詳細構成を説明する。
図において１０２は表示器であり、ユーザに対して各種情報を表示する。１０４はパネル操作子であり、各種情報を設定する。なお、表示器１０２およびパネル操作子１０４は簡易な構成であるため、各ノードの詳細な設定あるいは表示はＰＣ１９１０または１９２０を介して実行されることになる。１０６は固有Ｉ／Ｏ部であり、各ノード毎に用途に応じて構成される。例えば、汎用Ｉ／Ｏノード１１００，１２００においては、ミキサ等に対してデジタル信号またはアナログ信号の入出力を行えるよう、ＡＤコンバータ、ＤＡコンバータ、デジタルＩ／Ｏなどが固有Ｉ／Ｏ部１０６に設けられる。一方、アンプＩ／Ｏノード１５００，１６００においては、各アンプにアナログ信号を供給するためのＤＡコンバータと、アンプとの間で制御信号をやりとりするためのシリアルインタフェースとが固有Ｉ／Ｏ部１０６に設けられる。
【００１６】
１１０はＬＡＮＩ／Ｏ部であり、ネットワーク１０００との間で音声データおよび制御データのパケットの入出力を行う。１０８はＤＳＰであり、後述するプロトコルに基づいて、音声信号または制御信号と、音声データパケットまたは制御データパケットとの相互変換を行う。１１６はＰＣ・Ｉ／Ｏ部であり、ここに上述したＰＣ１９１０，１９２０が接続されると、該ＰＣとの間でデータ通信を行う。１１８はＣＰＵであり、フラッシュメモリ１２０に格納された制御プログラムに基づいて、バス１１２を介して該ノード内の各部を制御する。１２２はＲＡＭであり、ＣＰＵ１１８のワークメモリとして用いられる。
【００１７】
１．３．各パーソナルコンピュータの構成
次に、各ＰＣの構成を図２（ｂ）を参照し説明する。図において１３４は入力装置であり、文字入力用キーボードおよびマウス等から構成されている。１３６は表示装置であり、ユーザに対して各種情報を表示する。１３８はハードディスクであり、オペレーティングシステムと、信号伝送システムを制御するアプリケーションプログラム（詳細は後述する）等のプログラムが記憶される。１４０はＣＰＵであり、これらのプログラムに基づいて、バス１３０を介して他の構成要素を制御する。１４２はＲＯＭであり、イニシャルプログラムローダ等が記憶されている。１４４はＲＡＭであり、ＣＰＵ１４０のワークメモリとして用いられる。１３２はシリアルインタフェースであり、上述した何れかのノードのＰＣ・Ｉ／Ｏ部１１６に接続される。
【００１８】
２．実施形態のデータ構造
各ノードのＲＡＭ１２２および各ＰＣのハードディスク１３８またはＲＡＭ１４４には、信号伝送システムの状態を共有するための情報として、各々図４に示す設定情報４００が記憶される。そして、各ノードに記憶された設定情報４００は、後述する処理によって、同一内容になるように同期制御される。ここで、設定情報４００は、「２４」のノード領域４００−１〜２４に分割されている。上述したように、ネットワーク１０００には、最大「８」台の汎用Ｉ／Ｏノードと、最大「１６」台のアンプＩ／Ｏノードとを接続することが可能である。そこで、これらのノードが最大数接続された場合に備えて、実際の接続数にかかわらず最大数に応じた「２４」領域が予め確保されているのである。
【００１９】
ノード領域４００−１において４０４はＲＯ（Ｒｅａｄ  Ｏｎｌｙ）ブロックであり、ＰＣによって状態の変更を指示することができない読み出し専用のデータが格納される。４０６〜４１０はＲＷブロックであり、ＰＣによって状態設定のための書き込みと状態確認のための読み出しが共に可能なデータが格納される。また、４１２は物理量ブロックであり、対応するノードにおける温度以外の各種物理量、すなわちアンプへの入力電圧、アンプの出力電圧、アンプの出力電力、アンプの出力インピーダンス等が格納される。この物理量ブロック４１２も状態確認のための読み出しのみが許容される「Ｒｅａｄ  Ｏｎｌｙ」のブロックである。また、４０２はＣＲＣブロックであり、上記各ブロック４０４〜４１０の各々に対するＣＲＣ符号（エラーチェックコード）と、該ノードのＭＡＣアドレスが格納される。すなわち、ＣＲＣブロック４０２には、ブロック４０４〜４１０の各々のＣＲＣ符号、すなわち「４」種類のＣＲＣ符号が記憶されることになる。
【００２０】
ここで、ある一つのノードにおいては、ノード領域４００−１〜２４のうち何れか一つのノード領域４００−ｊは自ノードの情報を表すものであるから、この領域を「自ノード領域」と呼ぶ。また、その他のノード領域４００−１〜（ｊ−１），（ｊ＋１）〜２４は他のノードの状態を表すものであるから「他ノード領域」という。
【００２１】
上記各ブロック４０４〜４１０に記憶されるデータは、ノードの種類に応じて異なる。まず、仮にノード領域４００−１が汎用Ｉ／Ｏノードに係る領域であったとすると、ＲＯブロック４０４には当該汎用Ｉ／Ｏノードのワードクロックのソースを特定する情報が記憶される。また、ＲＷブロック４０６には、当該ノードから入出力されるバンドルのバンドル番号が記憶される。また、ＲＷブロック４０８には、当該ノードに対して外部から入出力されるアナログまたはデジタル音声信号のチャンネルと、ネットチャンネル（ネットワーク１０００に対して入出力されるバンドル内のチャンネル）との対応関係が記憶される。また、ＲＷブロック４１０には、当該汎用Ｉ／Ｏノードの名称（文字列）が記憶される。
【００２２】
また、仮にノード領域４００−１がアンプＩ／Ｏノードに係る領域であったとすると、ＲＯブロック４０４には当該ノードに接続されているアンプの温度、当該ノードによって制御される最大「３２」台のアンプが動作可能状態であるか否か、および、これらのアンプから何らかの警告が出力されているか否かが記憶される。また、ＲＷブロック４０６には、当該アンプＩ／Ｏノードによって受信される最大「４」バンドル（３２ネットチャンネル相当）のバンドル番号が記憶される。また、ＲＷブロック４０８には、これらのチャンネルのうちアナログ信号に変換されるものについて対応するＤＡコンバータのチャンネル番号を特定する情報が記憶される。そして、ＲＷブロック４１０には、当該アンプＩ／Ｏノードの名称（文字列）が記憶される。
【００２３】
そして、アンプＩ／Ｏノードに接続されているアンプに係る物理量のうち、アンプの温度等の変化の頻度が低い物理量はＲＯブロック４０４に記憶され、常時変化する物理量（電圧、インピーダンス等）は物理量ブロック４１２に記憶される。
【００２４】
３．データ伝送プロトコル
図３（ａ）について上述したように、Ｃｏｂｒａ  Ｎｅｔにおいては、各伝送サイクル２００にシリアル通信用のパケット２２０を送信し得る期間が確保されている。そこで、本実施形態においては、この一連の伝送サイクル２００によってさらに上位のレイヤ（制御レイヤ）を形成し、この制御レイヤを介して、各種制御信号を伝送することとした。この制御レイヤにおけるプロトコルを図３（ｂ）を参照し説明する。
【００２５】
制御レイヤにおいては、最短「２５０ｍｓｅｃ」の「制御サイクル２４０」を周期として、各種制御データが伝送される。そして、各ノードのうち何れか一のノードは、制御サイクル２４０を管理するための特殊なノード（「指揮ノード」という）に設定される。なお、指揮ノードは、上述した「コンダクタ」と同一のノードであってもよいし異なるノードであってもよい。そして、各制御サイクル２４０の先頭においては、指揮ノードによってサイクル開始指示パケット２５０がネットワーク１０００上に出力される。そして、これに引き続いて、各ノードから制御データパケット群２５１〜２５４が順次ネットワーク１０００上に出力される。
【００２６】
ここで、制御データパケット群の数は、ネットワーク１０００に接続されているノード数（図１の例では「４」）と同数であり、１回の制御サイクル２４０内において各ノードから１回づつ制御データパケット群が出力されることになる。ここで、先頭の制御データパケット群２５１は、指揮ノードが出力する制御データパケット群である。従って、該制御データパケット群２５１は、サイクル開始指示パケット２５０が出力された後に直ちに出力される。一方、その後の制御データパケット群２５２〜２５４は指揮ノード以外のノードから出力される制御データパケット群であり、これらパケット群は、衝突を防止するために所定の猶予期間づづ隔てられる。
【００２７】
そして、制御データパケット群は、イベントデータパケット２６０、レポートパケット２６２、物理量データパケット２６４および終了パケット２６６から構成される。このうち、レポートパケット２６２および終了パケット２６６は必須のパケットであり、他のパケットは必要に応じて追加されるパケットである。
【００２８】
制御サイクル２４０の周期は最短で「２５０ｍｓｅｃ」であるから、接続されるノード数が多くなると、図３（ｃ）に示すように「２５０ｍｓｅｃ」よりも長くなる。しかし、制御サイクル２４０の周期は「２５０ｍｓｅｃ」よりも短くなることはない。これは、各ノードは制御サイクル２４０毎に自ノードの状態を収集して他ノードに報告するため、自ノードの状態を収集するための時間として最短でも「２５０ｍｓｅｃ」を予め確保しているのである。
【００２９】
３．１．サイクル開始指示パケット２５０
以下、上述した各パケットの詳細を説明する。まず、サイクル開始指示パケット２５０は、以下のデータから構成される。
（１）各ノードのパケット群出力順序
上述したように、制御サイクル２４０内においては各ノードによって制御データパケット群２５１〜２５４が順次出力されるが、各ノードの出力順序はサイクル開始指示パケット２５０において指定される。
【００３０】
（２）各ノードが出力すべき物理量の内容
詳細は後述するが、各ノードは自機に接続されているアンプの温度、電圧、インピーダンス等の物理量を制御データパケット群２５１〜２５４に含めて送信することができる。そして、出力すべき物理量のうち常時変化する物理量は、主としてＰＣが接続されたノード（接続ノード）から出力されるイベントデータパケット２６０によって指定される。しかし、他の個々のノードが接続ノードからのイベントデータパケット２６０に基づいて出力すべき物理量を認識すると、通信エラー等によるとりこぼしが発生することがある。そこで、本実施形態においては、各ノードが出力すべき物理量については、サイクル開始指示パケット２５０の中に該出力すべき物理量のリストである「表示中リスト」を含めることにより、指揮ノードによって一括して指示することにしている。
【００３１】
３．２．イベントデータパケット２６０
また、イベントデータパケット２６０は、以下のデータから構成される。
（１）指示データ
詳細は後述するが、制御データパケット群を送信するノード（以下、送信ノードという）にＰＣが接続されている場合には、ユーザはこのＰＣを介して、送信ノードのみならず全てのノードに対する全ての設定状態（各ノード領域のＲＷブロック４０６〜４１０に記憶されたデータ）の変更を指示することができる。その際、当該送信ノードから、状態が変更されるべき他ノードに対してその旨が指示される。この指示を行うためのデータを「指示データ」という。なお、ＰＣによって、該ＰＣが接続されているノード（以下、接続ノードという）自体の変更が行われた場合には、当該ノードからは指示データは出力されない。また、ＰＣによって物理量の監視ポイント（所望のノードの所望の物理量）が指定された場合には、その監視ポイントは指揮ノードに通知され、上述したようにサイクル開始指示パケット２５０を介して他の各ノードに通知される。なお、指揮ノード以外のノードも指揮ノードに昇格する可能性があるため、ＰＣから通知された監視ポイントないしサイクル開始指示パケット２５０により通知された監視ポイントを各ノードにおいて保存しておくようにするとよい。
【００３２】
（２）変更データ
上記指示データを受けたノードにおいて設定状態が変更されると、変更後の設定状態が全てのノードに対して通知される。また、ＰＣによって、ＰＣが接続されているノード自体の変更が行われた場合も、変更後の設定状態が他のノードに対して通知される。また、頻繁には変化しない、例えばアンプの出力段の「温度」等の物理量を検出しているノードにおいては、その検出された物理量に変化が生じたとき、その変化後の物理量が他のノードに通知される。これらの通知を行うデータを「変更データ」という。すなわち、各ノードは、自ノード領域４００−ｊのブロック４０４〜４１０の何れかのデータが変更された場合は、変更データによって、他のノードに対してその状態変更を通知しなければならない。これは、各ノードおよびＰＣにおける各ノード領域のブロック４０４〜４１０のの内容を同期させるためである。
【００３３】
（３）要求データ
ある第１のノードの自ノード領域を４００−ｊとしたとき、何れかの他ノード領域４００−ｋ（ｋは１〜（ｊ−１），（ｊ＋１）〜２４の何れか）において、ＣＲＣブロック４０２の内容と、他のブロック４０４〜４１０のＣＲＣ演算結果との間に矛盾が生じた場合は、他ノード領域４００−ｋのブロック４０４〜４１０にエラーが生じていることになる。かかる場合には、第１のノードが送信ノードになった際に、エラーが生じた他ノード領域４００−ｋに係る第２のノードに対して、第１のノードによって他ノード領域４００−ｋのエラーが生じたブロックを転送するように要求される。かかる要求を行うデータを「要求データ」という。
【００３４】
３．３．レポートパケット２６２
また、レポートパケット２６２は、以下のデータから構成される。
（１）送信ノードに係るＣＲＣブロック４０２の内容
送信ノードの自ノード領域４００−ｊ内のＣＲＣブロック４０２は、制御サイクル２４０毎に常にレポートパケット２６２に含めて送信される。従って、このレポートパケット２６２は、制御サイクル２４０毎に必ず発生する必須のパケットになる。このＣＲＣ符号を受信することにより、他ノードにおいては、該他ノードの設定情報４００に該送信ノードに係る正しいデータが格納されているか否かを確認することができる。
【００３５】
（２）送信ノードに係る他のブロック４０４〜４１０の内容
上述したように、ある第１のノードに記憶されている、第２のノードに係るノード領域の何れかのブロックにエラーが生じた場合は、該第１のノードから第２のノードに対して要求データが送信される。第２のノードがこの要求データを受信すると、次に第２のノードが送信ノードになった際に、要求されたブロックの内容がレポートパケット２６２中に追加される。
【００３６】
３．４．物理量データパケット２６４
サイクル開始指示パケット２５０によって、出力すべき物理量が指定されると、アンプへの入力電圧、アンプの出力電圧、アンプの出力インピーダンス等の常時変化する物理量のうち、指定された物理量の値が当該物理量データパケット２６４に含められ、制御サイクル２４０毎に出力される。なお、上述したように、「温度」については変化が生じた時にイベントデータパケット２６０内の変更データとして送信される。これは、「温度」は変化する頻度が小さいために、制御サイクル２４０毎に物理量データパケット２６４を介して伝送すると、相当のデータ量が無駄になることに鑑みたものであり、変化が生じたことを条件として送信することにより、送信される全体のデータ量を削減することができる。
３．５．終了パケット２６６
終了パケット２６６は、今回の送信ノードによるパケット送信が終了した旨を他のノードに通知するために出力される。
【００３７】
４．実施形態の動作
４．１．ノードにおける制御データ送信（図６）
次に、本実施形態の動作を説明する。まず、各ノードにおいて制御データパケット群２５１〜２５４をネットワーク１０００を介して他ノードへ送信すべき状態になると、図６に示す制御データ送信ルーチンが起動される。なお、該パケット群を「送信すべき状態」とは、具体的には以下の３通りが考えられる。
（１）サイクル開始指示パケット２５０が出力された直後
指揮ノードにおいては、自ノード内のクロックに基づいて、制御サイクル２４０毎にサイクル開始指示パケット２５０が出力される。かかる指揮ノードにおいては、サイクル開始指示パケット２５０が出力された直後のタイミングが制御データパケット群２５１を出力すべきタイミングになる。
【００３８】
（２）終了パケット２６６の検出後
上述したように、各ノードが制御データパケット群を出力する順序はサイクル開始指示パケット２５０によって指示される。従って、指揮ノード以外のノードにおいては、順番が一つ前のノードから終了パケット２６６が出力された後に所定の猶予期間が経過したタイミングが、制御データパケット群を出力するタイミングになる。
（３）指揮ノードから指示を受けた場合
指揮ノードにおいては、各ノードが正しい順序で制御データパケット群を出力しているか否かが常時監視されている。そして、パケット群を本来出力すべきノードからのパケット群が検出できなかった場合には、その次の順序のノードに対してパケット群の出力が指示される。かかる場合には、指示を受けたノードにおいて制御データパケット群が直ちに出力される。
【００３９】
さて、図６において処理がステップＳＰ６に進むと、送信すべきイベントデータが存在するか否かが判定される。すなわち、送信ノードにおいて状態変更（測定が指示された「温度変化」を含む）が生じた場合は変更データを出力する必要があり、ＰＣの指示に基づいて他のノードに対して状態変更を要求する場合には指示データを出力する必要があり、ＣＲＣ符号に矛盾が生じた場合は他ノードに対して要求データを出力する必要がある。これら何れかの場合に該当すれば、ここで「ＹＥＳ」と判定され、処理はステップＳＰ８に進む。該ステップＳＰ８においては、対応するイベントデータに基づいてイベントデータパケット２６０が生成されネットワーク１０００に送信される。
【００４０】
次に、処理がステップＳＰ１０に進むと、自ノード領域４００−ｊ内のブロック４０４〜４１０のうち送信すべきブロックが存在するか否か、すなわち他ノードから先に「要求データ」を受信したか否かが判定される。ここで「ＹＥＳ」と判定されると、処理はステップＳＰ１２に進み、レポートパケット２６２に含めるべきブロックとして、この要求データによって送信要求を受けた一または複数のブロックがリストアップされる。
【００４１】
次に、処理がステップＳＰ１４に進むと、レポートパケット２６２に含めるべきブロックのリストに、自ノード領域４００−ｊ内のＣＲＣブロック４０２が追加される。従って、先にステップＳＰ１０において「ＮＯ」と判定された場合には、ＣＲＣブロック４０２のみがリストアップされることになる。次に、リストアップされた全てのブロックに基づいて、それらの内容を表すレポートパケット２６２が作成される。次に、処理がステップＳＰ１６に進むと、この作成されたレポートパケット２６２がネットワーク１０００を介して出力される。
【００４２】
次に、処理がステップＳＰ１８に進むと、指揮ノードから受信した「表示中リスト」の内容がチェックされる。すなわち、「表示中リスト」には各ノードが出力すべき物理量が全て含まれているため、この中から「自ノードが出力すべき物理量であって温度以外の物理量」が検索される。次に、処理がステップＳＰ２０に進むと、このステップＳＰ１８のチェック結果に基づいて、送信すべき物理量が存在するか否かが判定される。ここで「ＹＥＳ」と判定されると、処理はステップＳＰ２２に進み、送信すべき物理量に基づいて物理量データパケット２６４が生成され、該パケットがネットワーク１０００に出力される。次に、処理がステップＳＰ２４に進むと、終了パケット２６６がネットワーク１０００に出力される。以上の処理により、本ルーチンが終了する。
【００４３】
４．２．ノードにおける制御データ受信（図７）
次に、送信ノード以外のノードにおいてネットワーク１０００を介して制御データパケット群が受信されると、該パケット群を受信した各ノード（受信ノード）において図７に示す制御データ受信ルーチンが起動される。図において処理がステップＳＰ３２に進むと、自ノードのＰＣ・Ｉ／Ｏ部１１６にＰＣが接続されているか否かが判定される。ここで「ＹＥＳ」と判定されると、処理はステップＳＰ３４に進み、受信した各種制御データを当該ＰＣに転送する処理が実行される。ここで、ＰＣに転送される制御データは、「直ちに転送すべきデータ」と「所定時間待機した後に転送すべきデータ」とに分類され、この分類に応じたタイミングで各制御データが転送される。なお、この制御データの分類方法および分類する理由については後述する。
【００４４】
次に、処理がステップＳＰ３６に進むと、受信したパケット群の中に自ノードに対する「要求データ」が含まれているか否かが判定される。ここで「ＹＥＳ」と判定されると、処理はステップＳＰ３８に進み、自ノード領域４００−ｊ内のブロック４０４〜４１０のうち、要求されたブロックの送信準備が行われる。すなわち、自ノードが次に送信ノードになった際、上述したステップＳＰ１２の処理によってレポートパケット２６２に含めるべき一または複数のブロックに、今回要求されたブロックが追加されることになる。
【００４５】
次に、処理がステップＳＰ４０に進むと、受信したパケット群の中に自ノードに対する「指示データ」が含まれているか否かが判定される。ここで「ＹＥＳ」と判定されると、処理はステップＳＰ４２に進み、当該指示データに基づいて自ノード領域４００−ｊの内容が変更される。また、指示データが例えば自ノードに接続されるアンプの状態変更を指示するものである場合には、かかる状態変更を実現するように、アンプ等に制御信号が出力される。次に、処理がステップＳＰ４４に進むと、自ノード領域４００−ｊの変更内容を表す変更データの送信準備が行われる。すなわち、自ノードが次に送信ノードになった際、上記ステップＳＰ８の処理によってイベントデータパケット２６０に含めるべき変更データに、今回の自ノード領域４００−ｊの変更内容が追加される。
【００４６】
次に、処理がステップＳＰ４６に進むと、受信したパケット群の中に「変更データ」すなわち送信ノードからの変更データが含まれているか否かが判定される。ここで「ＹＥＳ」と判定されると、処理はステップＳＰ４７に進み、当該送信ノードに係るノード領域４００−ｋ（ｋは１〜２４のうち何れか）の内容が、該変更データに基づいて変更される。
【００４７】
次に、処理がステップＳＰ４８に進むと、受信したレポートパケット２６２中にブロック４０４〜４１０の何れかが含まれているか否かが判定され、含まれていた場合には、当該送信ノードに係るノード領域４００−ｋ内の対応する箇所に、受信したブロックの内容が上書きされる。そして、ブロック４０４〜４１０のうち変更されたブロック（すなわちステップＳＰ４７において変更されたブロックまたは本ステップＳＰ４８において上書きされたブロック）について変更後の内容に対応するＣＲＣ符号が計算され、算出されたＣＲＣ符号がＣＲＣブロック４０２内の対応する箇所に書き込まれる。なお、ＣＲＣ符号の計算式は全てのノードおよびＰＣ間で統一されており、ブロック４０４〜４１０の内容が特定されると、ＣＲＣブロック４０２内のＣＲＣ符号は一意に特定される。
【００４８】
次に、処理がステップＳＰ５０に進むと、受信したパケット群の中に物理量データパケット２６４が含まれているか否かが判定され、含まれていた場合には該パケットの内容が、送信ノードのノード領域４００−ｋ内の物理量ブロック４１２に上書きされる。次に、処理がステップＳＰ５４に進むと、当該送信ノードに係るノード領域４００−ｋ内のＣＲＣブロック４０２に格納された複数のＣＲＣ符号と、送信ノードから供給された（レポートパケット２６２に含まれていた）対応する複数のＣＲＣ符号とが各々比較される。
【００４９】
次に、処理がステップＳＰ５６に進むと、これらのＣＲＣ符号のうち一致しないものが存在するか否かが判定される。ここで、一致しないＣＲＣ符号に係るブロックは、通信エラー等によって不正な情報が記憶されていることになる。ここで「ＹＥＳ」と判定されると、処理はステップＳＰ５８に進み、送信ノードに対して当該ブロックの再送信を要求する要求データが作成されるとともに、通信エラーが発生した旨のメッセージが表示器１０２に表示される。この要求データは、次に自ノードが送信ノードになった際、上記ステップＳＰ８を介して出力される。
【００５０】
但し、ＣＲＣ符号の不一致がＲＯブロック４０４について発生した場合には、表示器１０２に通信エラーのメッセージを表示させないようにしてもよい。一方、物理量ブロック４１２については元々ＣＲＣ符号は作成されていない。このため、物理量ブロック４１２については、伝送エラー等によって仮に誤った内容が記憶されたとしても、該ブロックが次回更新されるまで、その状態が継続することになる。これにより、要求データが出力される頻度を抑え、ネットワーク１０００上の制御データ量を抑制することができる。
【００５１】
ここで、ネットワーク１０００には、新規ノードをホットプラグインにより接続することが可能である。ネットワーク１０００に接続された時点においては、この新規ノードに記憶されている設定情報４００は、自ノード領域４００−ｊ以外の領域が「空」になっており、該自ノード領域以外の領域におけるＣＲＣブロック４０２には、各ブロックが「空」であることを示すＣＲＣ符号が記録されている。このため、ネットワーク１０００上の他ノードから受信するＣＲＣ符号と、この新規ノードに記憶されているＣＲＣ符号とは必ず不一致になるため、他ノードからＣＲＣ符号を受信するたびに、その送信ノードに対して、該送信ノードに係る全ての設定状態を表す設定情報（ブロック４０４〜４１０）の再送信が要求されることになる。この要求によって、全ての他ノードからそれぞれのノードの全ての設定情報が順次受信される。そして、受信された情報は設定情報４００として該新規ノードに記録されるから、この新規ノードにおいてもネットワーク１０００上の全ノードの設定情報を保持することができる。
【００５２】
４．３．ＰＣの接続
ＰＣ１９１０，１９２０が何れかのノードに接続され、このＰＣにおいて所定のアプリケーシ
ョンプログラムが起動されると、最初に「転送コマンド」が実行される。このコマンドが実行されると、接続ノードに記憶されている設定情報４００が当該ＰＣに転送される。これにより、当該ＰＣにおいては、設定情報４００を参照する様々な画面を表示することができるようになる。そして、ユーザはこれらの画面によって信号伝送システムの状態を把握することができ、状態の変更を指示することができるようになる。
【００５３】
４．４．画面選択イベント（図８（ａ），図５）
上記アプリケーションプログラムにおいては、当該ＰＣ内の設定情報４００を参照する各種の画面（ウィンドウ）の中から任意のものを入力装置１３４によって選択して表示することができる。この画面の選択イベントが発生すると、当該ＰＣにおいて図８（ａ）に示す画面選択イベント発生ルーチンが起動される。図において処理がステップＳＰ７０に進むと、選択された画面は「物理量」（温度、電圧、インピーダンス等）を表示する画面であるか否かが判定される。
【００５４】
ここで「ＹＥＳ」と判定されると、処理はステップＳＰ７２に進み、当該選択された画面が表示装置１３６に表示される。次に、処理がステップＳＰ７４に進むと、接続ノードに対して、画面に表示される物理量の指定を行う指定イベントが送信される。また、ステップＳＰ７０において「ＮＯ」と判定されると、処理はステップＳＰ７６に進み、選択された画面が表示装置１３６に表示される。次に、処理がステップＳＰ７８に進むと、その他各種の処理が実行され、本ルーチンが終了する。
【００５５】
ここで、「物理量」の表示を行う画面の一例として、任意のアンプＩ／Ｏノードに接続された任意のアンプの任意のチャンネルを複数チャンネル分グループ化して、グループ単位で複数チャンネルの動作状態を表示するようにしたグループ表示画面（図５）を参照し説明する。まず、本実施形態においては、物理量の監視ポイントが複数の「グループ」に分類される。図において３５０〜３５４はタグであり、ユーザが任意のタグをマウスでクリックすることによって対応するグループが選択される。３００は表示ウィンドウであり、選択されたグループに属する物理量を表示する。３００−１，３００−２，……は監視ポイント枠であり、各々が一の監視ポイントに対応する複数の物理量等を表示する。
【００５６】
監視ポイント枠３００−１の内部において３０２はチャンネル表示部であり、監視ポイント枠３００−１で行われている表示が、どのアンプＩ／Ｏノードに接続されたどのアンプのどのチャンネルに係るものであるかを特定する文字列を表示する。この文字列「ＡＮ１−３−２」において最初の２文字「ＡＮ」は「アンプＩ／Ｏノード」の意味であり、次の「１」はアンプＩ／Ｏノードのシリアル番号を表す。次の「３」は、当該アンプＩ／Ｏノードに接続されているアンプのシリアル番号であり、最後の「２」は、当該アンプにおけるチャンネル番号である。
【００５７】
次に、３０４は名称表示部であり、アンプのメーカーが定めたアンプ名を表す文字列が表示される。３０６はパワーボタンであり、マウスでクリックされる毎に当該アンプの電源を「ＯＮ」または「ＳＴＡＮＤ−ＢＹ」状態に設定するとともに、この状態を表す文字列を表示する。３０８はチャンネル名表示部であり、ユーザによって定められた任意のチャンネル名（文字列）を表示する。３１０はプロテクト表示部である。ここには通常は何も表示されないが、例えばアンプが過熱状態になりアンプのプロテクションシステムが作動したときに「ＰＲＯＴＥＣＴ」の文字列が表示される。
【００５８】
３１２は出力クリップ表示部であり、当該チャンネルの出力信号がクリップすると点灯状態になる。３１４は出力メータであり、該出力信号の出力レベル（「電力」または「電圧」）を表示する。３１６はインピーダンス表示器であり、当該チャンネルの負荷インピーダンスを数値表示する。３１８は温度メータであり、当該チャンネルの出力段の温度を表示する。３２０は入力メータであり、当該チャンネルへの入力レベルをｄＢ単位で表示する。３２２はＡＴＴフェーダであり、当該チャンネルに入力される入力信号を減衰させる減衰率の設定状態が表示されるとともに、マウスでドラッグされることにより、該減衰率の設定状態が変更される。
【００５９】
３２４は位相ボタンであり、マウスでクリックされる毎に、当該チャンネルの出力の位相を「ＮＯＲＭＡＬ」または「ＲＥＶＥＲＳＥ」に交互に切り替える。３２６はミュートボタンであり、マウスでクリックされる毎に、当該チャンネルのミュート（出力レベルの減衰）のオンオフを切り替える。上述した各表示内容のうち、出力メータ３１４、インピーダンス表示器３１６、入力メータ３２０の表示内容は、当該アンプＩ／Ｏノードの自ノード領域４００−ｊ内の物理量ブロック４１２に記憶されている内容に基づくものであり、温度メータ３１８の表示内容は同ＲＯブロック４０４に基づくものであり、その他の表示内容は同ＲＷブロック４０６〜４１０の何れかに基づくものである。すなわち、アンプＩ／Ｏノードは、接続されているアンプから各種設定状態や物理量を収集し、当該アンプＩ／Ｏノードの自ノード領域４００−ｊ内にその内容を記憶している。そして、該領域の内容が接続ノードを介してＰＣ内の設定情報４００に反映されると、該ＰＣにおける表示ウィンドウ３００の内容が更新される。
【００６０】
監視ポイント枠３００−２等も監視ポイント枠３００−１と同様に構成されている。そして、各グループに属するアンプのチャンネルはユーザが自由に選択することができ、異なるノード、異なるアンプの任意のチャンネルも一の表示ウィンドウ３００内に表示することが可能である。
【００６１】
４．５．設定変更イベント（図８（ｂ））
上述したように、ユーザは、ＰＣ上の操作によって各部の設定状態を操作することができる。図５の例においては、例えばあるアンプＩ／ＯノードのあるチャンネルのＡＴＴフェーダ３２２をマウスでドラッグすることにより、該ＡＴＴフェーダ３２２に対応する設定状態を変更することができる。このように何れかのノード（またはノードに接続されているアンプ等）の状態を変更するイベントが発生すると、該ＰＣにおいて図８（ｂ）に示す設定変更イベント発生ルーチンが起動される。
【００６２】
図において処理がステップＳＰ８０に進むと、当該ＰＣ内の設定情報４００が、指示された内容通りに変更される。例えば、上記ＡＴＴフェーダ３２２によって減衰率が「１０ｄＢ」に設定されたのであれば、当該アンプＩ／Ｏノードに係るノード領域のＲＷブロック４０６〜４１０内の当該アンプの当該チャンネルに対応する領域に、直ちに「１０ｄＢ」のデータが書き込まれる。そして、更新されたブロックに対応するＣＲＣ符号が再計算され、この計算結果がＣＲＣブロック４０２内の対応する領域に書き込まれる。次に、処理がステップＳＰ８２に進むと、この更新された設定情報４００に基づいて、当該ＰＣにおける表示内容が更新される。すなわち、上記例においては、ＡＴＴフェーダ３２２の「つまみ」の部分が「１０ｄＢ」に対応する位置に移動される。
【００６３】
但し、この時点では、実際のアンプの対応するチャンネルの減衰量が未だ「１０ｄＢ」に設定されたことが確認されていないため、未確認であることが判るように通常とは異なる表示態様（例えばグレー表示や点滅表示）によって、当該表示部分（ここではＡＴＴフェーダ３２２）が表示される。次に、処理がステップＳＰ８４に進むと、変更内容（変更対象のノード、アンプ、パラメータの種類、変更量など）を表す変更指示が当該ＰＣから接続ノードに対して送信される。
【００６４】
４．６．設定変更イベント（図８（ｃ））
次に、接続ノードにおいて上記変更指示が受信されると、当該接続ノードにおいて図８（ｃ）に示す変更指示受信ルーチンが起動される。図において処理がステップＳＰ９０に進むと、受信した変更指示は自ノード（または自ノードに接続されているアンプ等）に対する変更指示であるか否かが判定される。ここで「ＹＥＳ」と判定されると、処理はステップＳＰ９６に進み、当該接続ノードの自ノード領域４００−ｊの対応箇所が変更される。
【００６５】
また、変更箇所がブロック４０４〜４１０の何れかである場合には、当該ブロックに係るＣＲＣ符号が再計算され、ＣＲＣブロック４０２内の対応箇所に上書きされる。また、受信した変更指示が自ノードに接続されているアンプ等に対する変更指示である場合には、当該アンプ等の設定状態も変更される。そして、当該変更内容を表す変更データが作成され、この変更データは、当該接続ノードが接続されたＰＣに送信されるとともに、当該接続ノードが送信ノードになった際にイベントデータパケット２６０に含められ、他のノードに対して伝送される（図６のステップＳＰ８）。
【００６６】
一方、ステップＳＰ９０において「ＮＯ」と判定されると、処理はステップＳＰ９２に進む。ここでは、状態変更を行うべき他ノードに対する指示データが作成される。この場合には設定情報４００の内容は変更されない。すなわち、この接続ノードが送信ノードになると、当該指示データは状態変更を行うべき他ノードに送信され（図６のステップＳＰ８）、該他ノードにおいて設定情報４００が変更される（図７のステップＳＰ４２，ＳＰ４４）。その後、該他ノードが送信ノードになると、変更された状態に応じた変更データが接続ノードおよび他のノードに対して送信される（図６のステップＳＰ８）。そこで、当該接続ノードにおいては、該変更データ（ステップＳＰ９２の指示データで変更を指示した箇所に係る変更データ）を受信した際に設定情報４００の対応する箇所が変更されるのである（図７のステップＳＰ４７）。
【００６７】
次に、処理がステップＳＰ９４に進むと、所定時間の計時が開始される。ここで、「所定時間」とは、例えば過去の制御サイクル２４０の平均値を「１サイクル」として「４サイクル」相当の時間である。ところで、上述したステップＳＰ３４（図７）においては、ある接続ノードがネットワーク１０００から受信した制御データをＰＣに転送する際に、制御データは「直ちに転送すべきデータ」と「所定時間待機した後に転送すべきデータ」とに分類される旨を述べた。ここで、「所定時間待機した後に転送すべきデータ」とは、「ステップＳＰ９２の指示データで変更を指示した箇所に係る変更データ」のことであり、「所定時間」とは「ステップＳＰ９４において計時が開始される所定時間（例えば４サイクル）」のことである。
【００６８】
ここで、このように転送を待機すべき理由について説明する。まず、仮に待機を行わなかった場合に発生する不具合を例を挙げて説明する。
図１の例においては、汎用Ｉ／Ｏノード１１００にＰＣ１９１０が接続され、アンプＩ／Ｏノード１６００にＰＣ１９２０が接続されている。これらＰＣ１９１０，１９２０において、共に図５に示す表示ウィンドウ３００が表示されているとする。また、同ウィンドウ内の監視ポイント枠３００−１は、アンプＩ／Ｏノード１５００に接続されているアンプ１５０２の第２チャンネルに係るものであったとする。ここで、例えばＰＣ１９１０においてＡＴＴフェーダ３２２が「１０ｄＢ」に設定され、これに僅かに（数１００ｍｓｅｃ程度）遅れてＰＣ１９２０においてＡＴＴフェーダ３２２が「２０ｄＢ」に設定されると、以下のような挙動が予想される。
【００６９】
（１）まず、ＰＣ１９１０において、ＡＴＴフェーダ３２２を「１０ｄＢ」に設定する操作イベントが検出されると、その変更指示が汎用Ｉ／Ｏノード１１００に伝達される。
（２）これに応じて、汎用Ｉ／Ｏノード１１００においては、自ノードが送信ノードになった際に、アンプＩ／Ｏノード１５００に対して、「アンプ１５０２の第２チャンネルの減衰率を１０ｄＢにせよ」との指示データが送信される。
（３）ここで、ＰＣ１９２０において、ＡＴＴフェーダ３２２を「２０ｄＢ」に設定する操作イベントが検出されると、その変更指示がアンプＩ／Ｏノード１６００に伝達される。
【００７０】
（４）アンプＩ／Ｏノード１５００においては、先の汎用Ｉ／Ｏノード１１００からの指示データに基づいてアンプ１５０２が制御されるとともに設定情報４００が更新され、その結果として「アンプ１５０２の第２チャンネルの減衰率を１０ｄＢに設定した」旨の変更データが他の各ノードに出力される。
（５）この変更データがアンプＩ／Ｏノード１６００によって受信されると、「アンプ１５０２の第２チャンネルの減衰率を１０ｄＢに設定した」旨の変更データがアンプＩ／Ｏノード１６００からＰＣ１９２０に転送される。
（６）次に、アンプＩ／Ｏノード１６００が送信ノードになると、アンプＩ／Ｏノード１５００に対して、「アンプ１５０２の第２チャンネルの減衰率を２０ｄＢにせよ」との指示データが送信される。
【００７１】
（７）アンプＩ／Ｏノード１５００においては、このアンプＩ／Ｏノード１６００からの指示データに基づいてアンプ１５０２が制御されるとともに設定情報４００が更新され、その結果として「アンプ１５０２の第２チャンネルの減衰率を２０ｄＢに設定した」旨の変更データが他の各ノードに出力される。
（８）この変更データがアンプＩ／Ｏノード１６００によって受信されると、「アンプ１５０２の第２チャンネルの減衰率を２０ｄＢに設定した」旨の変更データがアンプＩ／Ｏノード１６００からＰＣ１９２０に転送される。
【００７２】
以上の動作をＰＣ１９２０の側から見ると、減衰率を２０ｄＢに設定するように指示したにもかかわらず、「減衰率を１０ｄＢに設定した」旨の変更データが受信され、これに引き続いて「減衰率を２０ｄＢに設定した」旨の変更データが受信されることになる。詳細は後述するが、各ＰＣにおいては、設定情報４００内の何れかの箇所についての変更指示が接続ノードに送信された後は、この箇所に対する変更データに基づいて、変更指示の通りに状態が変更されたか否かが監視されている。従って、「２０ｄＢ」の変更指示に対して「１０ｄＢ」の変更データが供給された場合には、通信エラーが生じたものとみなされ、その旨がＰＣ１９２０上で警告されることになる。
【００７３】
このように、仮に変更指示に対応する変更データの転送を待機しなかった場合には、複数のＰＣを用いて信号伝送システムの設定を行っている場合に、実際には伝送エラーが生じていないにもかかわらず「エラーが生じた」との警告が頻発することになる。そこで、本実施形態においては、変更指示に対応する変更データについては、所定時間だけ転送を待機することとしたものである。この「所定時間（例えば４サイクル）」は、「ＰＣが接続ノード以外のノードに対する変更指示を接続ノードに対して出力した後、この変更指示に対応する変更データを受信するまでの時間の予測値」に等しい。
【００７４】
また、ここで「待機する」とは、単に「遅延させる」こととは異なり、「対応箇所について待機時間中に複数の変更データを受信された場合には、待機時間終了時に最後に受信された変更データを転送する」という意味である。上記例においては、ＰＣ１９２０において「１０ｄＢ」および「２０ｄＢ」の変更データが順次受信されるが、これらが待機時間中に受信された場合には、最後の「２０ｄＢ」の変更データのみがＰＣ１９２０に転送される。従って、ＰＣ１９２０においては「２０ｄＢ」の変更指示に対して「２０ｄＢ」の変更データが受信されるのであるから、変更指示と変更データとの間になんら矛盾が生じないのである。
【００７５】
一方、ＰＣ１９１０においても、「１０ｄＢ」および「２０ｄＢ」の変更データが順次受信される。ここで、「１０ｄＢ」の変更データを受信した後に待機時間が満了すると、ＰＣ１９１０においては「１０ｄＢ」の変更指示に対して「１０ｄＢ」の変更データが受信されるのであるから、変更指示と変更データとの間にやはり矛盾が生じない。なお、ＰＣ１９１０においては、その後に「２０ｄＢ」の変更データが受信されるが、これは先の変更指示には対応しない単なる変更データとして受信される。このように、本実施形態においては、変更指示に係る箇所の変更データのＰＣへの転送が所定時間だけ待機されるから、上述したような複数のＰＣを用いて両方から指示データを送信する場合や、ＰＣからの指示データの送信直後に、他ノードから「該指示データを変更しようとするデータを含むブロックを要求する要求データ」が送信された場合などの、エラーとみなさなくてよい場合を除外することができ、エラーの発生頻度を抑制することができるのである。
【００７６】
４．７．制御データを受信した際のＰＣ処理（図９）
上記ステップＳＰ３４（図７）の処理により、接続ノードからＰＣに制御データが供給されると、該ＰＣにおいて図９に示す制御データ受信ルーチンが起動される。
図において処理がステップＳＰ１００に進むと、該制御データに変更データが含まれているか否かが判定される。ここで「ＹＥＳ」と判定されると、処理はステップＳＰ１０１に進み、先に接続ノードに対して出力された変更指示（図８（ｂ）のステップＳＰ８４）のうち、該指示の結果が未確認である変更指示が存在するか否かが判定される。ここで「ＹＥＳ」と判定されると、処理はステップＳＰ１０２に進み、受信した変更データのうち「先に出力した変更指示に対応する変更データ」、すなわち「当該変更指示に係る箇所について、変更指示の後に最初に受信した変更データ」が検索される。次に、処理がステップＳＰ１０３に進むと、この「変更指示に対応する変更データ」が存在するか否かが判定される。
【００７７】
ステップＳＰ１０３において「ＹＥＳ」と判定されると、次に処理がステップＳＰ１０４に進み、これらの変更データの表す内容は先に出力された変更指示の表す内容に一致するか否かが判定される。ここで「一致する」との判定は当該変更指示通りにパラメータが変更されたことを示し、「一致しない」との判定は当該変更指示通りにパラメータが変更されたなかったことを示す。ここで、「ＮＯ（一致しない）」と判定されると、処理はステップＳＰ１０６に進む。ここでは、必要に応じて、「変更データが変更指示とは異なる」旨の警告が行われる（例えばポップアップウィンドウが表示される）。すなわち、ＰＣにおいては、かかる警告表示を行うか否かの動作モードを事前に設定することができる。この動作モードが「表示を行う」ように設定されていた場合にのみ、当該ＰＣ上の表示装置１３６において、警告表示が行われるのである。
【００７８】
なお、ステップＳＰ８０（図８（ｂ））において説明したように、当該ＰＣ内の設定情報４００は既に変更指示が反映された内容に更新されている。従って、ステップＳＰ１０４における一致判定は、データ同士を比較（ブロック４０４〜４１０の内容と変更データとを比較）することによって行ってもよく、ＣＲＣ符号同士を比較（ＣＲＣブロック４０２内のＣＲＣ符号と、変更データに基づいて新たに求めたＣＲＣ符号とを比較）してもよい。
【００７９】
上記ステップＳＰ１０１またはＳＰ１０３において「ＮＯ」と判定された場合、ステップＳＰ１０４において「ＹＥＳ」と判定された場合、あるいはステップＳＰ１０６の警告処理が完了すると、次に処理はステップＳＰ１０８に進み、受信した変更データに基づいて、ＰＣ内の設定情報４００の内容が変更される。すなわち、送信ノードのノード領域４００−ｋにおけるブロック４０４〜４１０の内容が更新されるとともに、ＣＲＣブロック４０２内の対応するＣＲＣ符号が更新される。ステップＳＰ１０８はステップＳＰ１０４の判定結果にかかわらず実行されるから、ＰＣにおいては、変更指示と変更データとが矛盾する場合には、常に変更データの方が正しいものとみなされることになる。また、表示装置１３６上の表示状態も、この変更データに基づいて更新される。
【００８０】
また、先にステップＳＰ８２（図８（ｂ））において説明したように、未確認の変更指示に対応する設定の表示部分は、通常とは異なる表示態様で表示されていた。該未確認の変更指示に対応するデータが今回の変更データに含まれていた場合には、ステップＳＰ１０８によって、当該表示部分の表示態様が未確認を示す表示態様から通常の表示態様に戻される。
【００８１】
次に、処理がステップＳＰ１０９に進むと、先に受信した制御データ中にレポートパケット２６２としてブロック４０４〜４１０の何れかが含まれているか否かが判定され、含まれていた場合には、当該送信ノードに係るノード領域４００−ｋ内の対応する箇所に、受信したブロックの内容が上書きされる。そして、ブロック４０４〜４１０のうち変更されたブロック（すなわちステップＳＰ１０８において変更されたブロックまたは本ステップＳＰ１０９において上書きされたブロック）についてＣＲＣ符号が計算され、算出されたＣＲＣ符号がＣＲＣブロック４０２内の対応する箇所に書き込まれる。
【００８２】
次に、処理がステップＳＰ１１０に進むと、先のステップＳＰ１０９におけるデータ更新（すなわちレポートパケット２６２に基づくデータ更新）によって表示装置１３６に表示中のデータが更新されたか否かが判定される。ここで「ＹＥＳ」と判定されると、処理はステップＳＰ１１２に進み、該データの表示内容が今回受信した制御データに基づいて更新される。次に、処理がステップＳＰ１１６に進むと、ＣＲＣブロック４０２に格納された複数のＣＲＣ符号と、送信ノードから供給された（レポートパケット２６２に含まれていた）対応する複数のＣＲＣ符号とが各々比較される。次に、処理がステップＳＰ１１８に進むと、これらのＣＲＣ符号のうち一致しないものが存在するか否かが判定される。ここで「ＹＥＳ」と判定されると、処理はステップＳＰ１２４に進み、ＣＲＣ符号の不一致が発生した旨が表示装置１３６に表示される。その際、不一致の発生したブロックが特定できるように表示を行ってもよい。
【００８３】
次に、処理がステップＳＰ１２６に進むと、当該ＰＣの接続ノードに対して、ＣＲＣ符号の不一致が発生した箇所のデータを再送信するように要求が出力される。
【００８４】
次に、処理がステップＳＰ１１９に進むと、受信した制御データの中に物理量データパケット２６４が含まれているか否かが判定され、含まれていた場合には該パケットの内容が、送信ノードのノード領域４００−ｋ内の物理量ブロック４１２に上書きされる。次に、処理がステップＳＰ１２０に進むと、表示装置１３６において常時変化する物理量のうち何れかが表示中であるか否かが判定される。ここで「ＹＥＳ」と判定されると、処理はステップＳＰ１２２に進み、設定情報４００内に記憶された物理量に基づいて、表示内容が更新される。ここで、サイクル開始指示パケット２５０の表示中リストでは表示中の物理量のうちの常時変化する物理量が指定されているので、ここで表示が更新されるものは、該表示中リストに従って対応する送信ノードから物理量データパケットとして転送された物理量である。なお、頻繁には変化しない物理量は各ノード領域のＲＯブロック４０４に記憶されているので、その表示はステップＳＰ１０８またはＳＰ１１２で更新される。
【００８５】
４．８．指揮ノードにおける処理
４．８．１．既存ノードの障害検出
指揮ノードにおいては、サイクル開始指示パケット２５０において指示した送信順序通りに他のノードが制御データパケット群を送信しているか否かが監視されている。ここで、ある第１のノードから終了パケット２６６が出力された後、所定時間内に次の第２のノードから制御データパケット群が出力されなかった場合には、当該第２のノードに何らかの障害が発生した（例えばネットワーク１０００から切断された等）と考えられる。この第２のノードを「障害ノード」と呼ぶ。
【００８６】
かかる場合には、指揮ノードにおいて、図１０（ａ）の障害ノード検出ルーチンが起動される。図において処理がステップＳＰ１３０に進むと、当該障害ノードは送信順序中の最後のノードであるか否かが判定される。ここで「ＮＯ」と判定されると、処理はステップＳＰ１３２に進み、当該障害ノードの次に送信順序が割り当てられているノードに対して、制御データパケット群の送信が指示される。次に、処理がステップＳＰ１３４に進むと、当該障害ノードを除くように送信順序が変更される。すなわち、元々の送信順序の中から障害ノードを除いた新しい送信順序に対応する送信順序リストが作成される。従って、次の制御サイクル２４０においては、この新たな送信順序に従って各ノードから制御データパケット群が出力されることになる。
【００８７】
４．８．２．新規ノードの追加検出
上述したように、ネットワーク１０００には、新規ノードをホットプラグインにより接続することが可能である。制御サイクル２４０の終端部分には若干の空き時間が設けられており、この空き時間内に「自ノードが接続された」旨が新規ノードによって指揮ノードに報告される。指揮ノードにおいては、この報告が受信されると図１０（ｂ）に示すノード接続検出ルーチンが起動される。図において処理がステップＳＰ１４０に進むと、当該新規ノードを追加するように送信順序が変更される。すなわち、元々の送信順序に対してこの新規ノードを追加した新しい送信順序に対応する送信順序リストが作成される。従って、次の制御サイクル２４０においては、この新たな送信順序に従って各ノードから制御データパケット群が出力されることになる。なお、新たにネットワークに接続されたノードのみならず、サイクル開始指示パケット２５０で示される送信順序に含まれていないノードについても、それが新規ノードであるとして上記の処理を行うようにしてもよい。
【００８８】
４．８．３．終了パケット検出処理
また、指揮ノードにおいては、他のノードからの終了パケット２６６を検出する毎に図１０（ｃ）に示す終了パケット検出ルーチンが起動される。図において処理がステップＳＰ１５０に進むと、当該終了パケット２６６は、送信順序における最後のノードから出力されたものであるか否かが判定される。ここで「ＮＯ」と判定されると、本ルーチンの処理は直ちに終了する。一方、「ＹＥＳ」と判定されると、処理はステップＳＰ１５２に進み、現在の制御サイクル２４０が開始された後、制御サイクル２４０の最短時間（２５０ｍｓｅｃ）が経過したか否かが判定される。
【００８９】
ここで「ＮＯ」と判定されると、処理はステップＳＰ１５４に進み、この最短時間が経過するまで処理が待機する。また、「ＹＥＳ」と判定された場合には、ステップＳＰ１５４はスキップされる。次に、処理がステップＳＰ１５６に進むと、新規ノード検出のために（上述したように新規ノードが指揮ノードに対して該新規ノードの接続を通知できるように）、若干の時間だけ処理が待機される。そして、処理がステップＳＰ１５８に進むと、各ノードに対して最新の送信順序を報知するサイクル開始指示パケット２５０が出力され、これによって新たな制御サイクル２４０が開始される。このサイクル開始指示パケット２５０に含まれる送信順序リストは、上述した図１０（ａ）のステップＳＰ１３４、または同図（ｂ）のステップＳＰ１４０の変更結果を反映した最新の送信順序リストである。そして、ネットワーク１０００上の各ノードにおいては、このサイクル開始指示パケット２５０が受信されると、ここに含まれる最新の送信順序リストが保持される。
【００９０】
５．変形例
本発明は上述した実施形態に限定されるものではなく、例えば以下のように種々の変形が可能である。
（１）上記各実施形態においては、ノード上で動作するプログラムおよびパーソナルコンピュータ上で動作するアプリケーションプログラムによって各種処理を実行したが、これらのプログラムのみをＣＤ−ＲＯＭ、フレキシブルディスク等の記録媒体に格納して頒布し、あるいは伝送路を通じて頒布することもできる。
【００９１】
（２）上記実施形態の各ノードで実行される制御データ受信ルーチン（図７）においては、レポートパケット２６２中にブロック４０４〜４１０の何れかが含まれていたとき、ステップＳＰ４８で送信ノードに係るノード領域４００−ｋ内の対応する箇所に該ブロックが上書きされ、しかる後にステップＳＰ５６においてＣＲＣ符号のチェックが行われた。しかし、両ステップの順序を逆にしてもよい。すなわち、まず、受信したレポートパケット２６２中のブロック４０４〜４１０に関してＣＲＣ符号のチェックを行い、整合していれば該ブロックをその対応する箇所に上書きする一方、整合していなければ該ブロックの上書きを行わず、そのブロックの再送信を要求する要求データを作成するようにしってもよい。
【００９２】
（３）また、各ＰＣで実行される制御データ受信ルーチン（図９）のステップＳＰ１００〜ＳＰ１０６においては、当該ＰＣにおける未確認の変更指示に対応する変更データについてのみ、その変更指示の内容と矛盾するか否かがチェックされている。しかしながら、当該ＰＣにおける操作による変更指示以外で、何れかのノードのＲＷブロックのデータの変更が行われた場合を全てエラーチェックの対象とし、エラーが生じた場合は警告するようにしてもよい。その場合、例えばステップＳＰ１０１〜ＳＰ１０４を以下のように変更するとよい。
【００９３】
・ステップＳＰ１００１：ここでは、変更データが「ＲＯブロック４０４の変更データであるか？」が判定される。「ＮＯ」であるときステップＳＰ１００２に進み、「ＹＥＳ」であればステップＳＰ１０８に進む。
・ステップＳＰ１００２：ここでは、該変更データと、該ＰＣに記憶されている対応するＲＷブロック４０６〜４１０の値とが比較され、それらが一致するか否かが判定される。一致しないものがあれば、ステップＳＰ１０６の警告処理が実行される。また、全て一致すれば、ステップＳＰ１０８に進む。
以上のように処理内容を変更した場合であっても、当該ＰＣにおける未確認の変更指示についてのチェックは正しく行われる。
【００９４】
（４）上記実施形態においては、アンプＩ／Ｏノードに関して設定状態や物理量の監視、および設定状態のリモート制御を行う例を説明したが、汎用Ｉ／Ｏノード等の他のノードについても同様に監視やリモート制御を行うことができる。
【００９５】
【発明の効果】
以上説明したように本発明によれば、信号伝送装置はエラーチェックコードの比較結果に応じて、必要なブロックの送信のみを他のノードに要求するから、ネットワークを流れるデータの量を極力抑えながら、全ノードの最新の設定情報を効率的に受信することができ、ネットワークでのデータの通信を安定させることができる。さらに、通信エラー等の原因により、他のノードから送信された設定情報を受信できなかったとしても、ネットワークを流れるデータの量を極力抑えながら、その設定情報をその後に補うことができる。
【図面の簡単な説明】
【図１】本発明の一実施形態の信号伝送システムの全体ブロック図である。
【図２】図１における各ノードおよびパーソナルコンピュータ（ＰＣ）のブロック図である。
【図３】一実施形態のタイミングチャートである。
【図４】一実施形態のデータ構造図である。
【図５】ＰＣにおける表示例を示す図である。
【図６】各ノードにおける制御データ送信ルーチンのフローチャートである。
【図７】各ノードにおける制御データ受信ルーチンのフローチャートである。
【図８】各ノードおよびＰＣにおける処理プログラムのフローチャートである。
【図９】ＰＣにおける制御データ受信ルーチンのフローチャートである。
【図１０】指揮ノードにおける処理プログラムのフローチャートである。
【符号の説明】
１０２：表示器、１０４：パネル操作子、１０６：固有Ｉ／Ｏ部、１０８：ＤＳＰ、１１０：ＬＡＮＩ／Ｏ部、１１２：バス、１１６：ＰＣ・Ｉ／Ｏ部、１１８：ＣＰＵ、１２０：フラッシュメモリ、１２２：ＲＡＭ、１３０：バス、１３２：シリアルインタフェース、１３４：入力装置、１３６：表示装置、１３８：ハードディスク、１４０：ＣＰＵ、１４２：ＲＯＭ、１４４：ＲＡＭ、２００：伝送サイクル、２０１：開始パケット、２２０：パケット、２４０：制御サイクル、２５０：サイクル開始指示パケット、２５１〜２５４：制御データパケット群、２６０：イベントデータパケット、２６２：レポートパケット、２６４：物理量データパケット、２６６：終了パケット、３００：表示ウィンドウ、３００−１，３００−２，……：監視ポイント枠、３０２：チャンネル表示部、３０６：パワーボタン、３０８：チャンネル名表示部、３１０：プロテクト表示部、３１２：出力クリップ表示部、３１４：出力メータ、３１６：インピーダンス表示器、３１８：温度メータ、３２０：入力メータ、３２２：ＡＴＴフェーダ、３２４：位相ボタン、３２６：ミュートボタン、４００：設定情報、４００−１〜２４：ノード領域、４０２：ＣＲＣブロック、４０４：ＲＯブロック、４０６〜４１０：ＲＷブロック、４１２：物理量ブロック、１０００：ネットワーク、１９１０，１９２０：パーソナルコンピュータ、１５０２〜１５０ｎ，１６０２〜１６０ｎ：アンプ、１５１２〜１５１ｎ，１６１２〜１６１ｎ：スピーカ、１１００，１２００：汎用Ｉ／Ｏノード、１５００，１６００：アンプＩ／Ｏノード。
【図１】
2004349772.tif 000003
【図２】
2004349772.tif 000004
【図３】
2004349772.tif 000005
【図４】
2004349772.tif 000006
【図５】
2004349772.tif 000007
【図６】
2004349772.tif 000008
【図７】
2004349772.tif 000009
【図８】
2004349772.tif 000010
【図９】
2004349772.tif 000011
【図１０】
2004349772.tif 000012