JP4023381B2 - ノード制御方法、ノード制御装置およびプログラム - Google Patents
ノード制御方法、ノード制御装置およびプログラム Download PDFInfo
- Publication number
- JP4023381B2 JP4023381B2 JP2003141507A JP2003141507A JP4023381B2 JP 4023381 B2 JP4023381 B2 JP 4023381B2 JP 2003141507 A JP2003141507 A JP 2003141507A JP 2003141507 A JP2003141507 A JP 2003141507A JP 4023381 B2 JP4023381 B2 JP 4023381B2
- Authority
- JP
- Japan
- Prior art keywords
- node
- change
- data
- setting information
- amplifier
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
Images
Description
【発明の属する技術分野】
本発明は、ネットワークを介して音声信号を伝送するとともにアンプ等を制御するシステムに用いて好適なノード制御方法、ノード制御装置およびプログラムに関する。
【0002】
【従来の技術】
大型のコンサートホール等に用いられる音響システムにおいては、ミキシングシステム等によって生成された複数チャンネルの音声信号が多数のアンプを介して、多数のスピーカから発音される。そして、これら個々のチャンネル毎に音声信号伝送用のケーブルを敷設すると、ケーブル量が多大になるため、複数チャンネルの音声信号をパケット(音声データ)に変換し、ネットワークを介して伝送することが望ましい。
【0003】
そこで、CSMA/CD(搬送波感知多重アクセス/衝突検出)方式のネットワーク、例えばイーサネット(登録商標)を介して複数チャンネルの音声データをリアルタイムに伝送する方法として、Cobra Net(商標)という技術が知られている(非特許文献1)。CSMA/CD方式においては、衝突が発生した場合すなわち複数のノードが同時に送信を開始した場合の調停方法が定められているが、衝突が生じた場合に帯域のロスが大きくなる。このため、Cobra Netにおいては、ネットワーク上の各ノードに対して所定の伝送サイクル毎に音声データの送信期間を割り当て、衝突を回避することによって最大128チャンネルの音声データの伝送を可能にしている。
【0004】
ここで、図3(a)を参照し、Cobra Netのプロトコルの概要を説明しておく。まず、Cobra Netにおいては、1.33msecの「伝送サイクル200」を周期として、ネットワーク上の各ノードから音声データが出力される。そして、各ノードのうち何れか一のノードは、伝送サイクル200を管理するための特殊ノード(「コンダクタ」という)に設定される。そして、各伝送サイクル200の先頭においては、コンダクタによって開始パケット201がネットワーク1000上に出力される。
【0005】
この開始パケット201が出力されると、該コンダクタを含む全てのノードから所定順序で音声データのパケット211,212,……21nが出力される。これらのパケットを「バンドル」といい、「1」バンドルは複数のチャンネル、例えば最大「8」チャンネルの音声データから構成されている。各バンドルには他のバンドルとは重ならないバンドル番号が付与されており、出力された音声データを受信しようとするノードは、該バンドル番号により受信すべき音声データを含むバンドルを判別して取り込み、取り込んだバンドルから所望のチャンネルの音声データを取り出す。また、各ノードから送信されるパケット211,212,……21nの各々において、複数のバンドルが出力されることもあり得る。そして、一の伝送サイクル200内において各バンドルが出力された後、伝送サイクル200が終了するまでの空き時間に、シリアル通信用のパケット220を送信できる期間が確保されている。
【0006】
このため、Cobra Netにおいては、伝送サイクル200内の空き時間を利用してシリアル通信を行うことが可能であるが、シリアル通信用の帯域が元々狭いために制御データを伝送しようとすると遅延時間が長くなるという問題がある。しかも、この遅延時間は、音声データのバンドル数によって左右されるため、多数のアンプ等を安定して制御したり、あるいはアンプ等の状態データを安定して収集することが困難であった。
【0007】
かかる理由により、Cobra Netに規定されているシリアル通信用のパケット220は、実際には用いられていない場合が多い。例えば、Cobra Netを適用したシステムに対して制御データを伝送する技術としてQSControl(商標)またはAudia(商標)のようなものが知られているが、これらの技術においては、何れもCobra Netからは独立した制御データ専用のネットワークを介して、各ノードの制御、例えばアンプの状態の収集や制御が行われている。
【0008】
【非特許文献1】
「Audio Networks on Overview」CIRRUS LOGIC社,2001年
【0009】
【発明が解決しようとする課題】
しかし、アンプ等の制御を行うためにCobra Netから独立したネットワークを用いると、音声データ用のネットワークケーブルと制御データ用のネットワークケーブルの双方を各ノードに接続する必要がある。これにより、使用されるケーブルの本数が多大になり、音響システムのセッティングを行う手間が増大するという問題が生じていた。
この発明は上述した事情に鑑みてなされたものであり、制御データの伝送路が狭帯域であってもアンプ等を安定して監視・制御することができるノード制御方法、ノード制御装置およびプログラムを提供することを目的としている。
【0010】
【課題を解決するための手段】
上記課題を解決するため本発明にあっては、下記構成を具備することを特徴とする。なお、括弧内は例示である。
請求項1記載の制御方法にあっては、所定の伝送サイクル(200)毎に複数チャンネルの音声信号(パケット211,212,……21n)を伝送する音声信号伝送期間と、これら音声信号伝送期間以外の空き時間であって制御データ(パケット220)を伝送する制御データ伝送期間とが設けられ複数のノードが接続されたネットワークに対して、前記複数のノードのうちの一のノードに接続される制御装置において実行されるノード制御方法であって、前記一のノードから前記複数のノードの全ての設定情報(400)を受信する設定情報受信過程と、前記設定情報(400)の内容を表示装置(136)に表示する過程と、前記設定情報(400)の一部を変更するように指示する変更操作(表示ウィンドウ300内の操作)を検出する変更操作検出過程と、前記変更操作に応じた変更指示を前記一のノードに通知する過程(SP84)と、前記変更操作に応じて前記設定情報の一部を変更する過程と、該変更された設定情報に基づいて、前記表示装置(136)の表示内容を変更する過程と、前記一のノードから、前記変更指示に対応する箇所についての変更を行った旨を報告する変更データを受信する変更データ受信過程と、該受信した変更データと、前記設定情報の一部の内容とが一致するか否かを判定する一致判定過程(SP104)と、前記一致判定過程(SP104)において不一致であると判定されたことを条件として、不一致が発生したことを警告する警告過程(SP106)と、前記一致判定過程(SP104)において不一致であると判定されたことを条件として、前記設定情報の一部の内容を該変更データに一致するように更新する過程(SP108)と、前記一致判定過程(SP104)において不一致であると判定されたことを条件として、前記表示装置(136)における表示内容を該変更データに応じた内容に変更する過程(SP108)とを有することを特徴とする。
さらに、請求項2記載の構成にあっては、請求項1記載のノード制御方法において、警告を行うか否かの動作モードを設定する動作モード設定過程をさらに有し、前記警告過程は、該動作モードが警告を行うように設定されており、かつ、前記一致判定過程(SP104)において不一致であると判定されたことを条件として、前記警告を行う過程であることを特徴とする。
さらに、請求項3記載の構成にあっては、請求項1記載のノード制御方法において、前記変更操作検出過程の後に、前記表示装置(136)における表示内容中、変更するように指示された設定情報に係る特定部分の表示態様を通常の表示態様とは異なるように設定する表示態様変更過程と、変更データ受信過程の後に、前記特定部分の表示態様を通常の表示態様に戻す表示態様復旧過程とをさらに有することを特徴とする。
また、請求項4記載のノード制御装置にあっては、請求項1ないし3の何れかに記載のノード制御方法を実行することを特徴とする。
また、請求項5記載のプログラムにあっては、請求項1ないし3の何れかに記載のノード制御方法を実行することを特徴とする。
【0011】
【発明の実施の形態】
1.実施形態の構成
1.1.全体構成
次に、本発明の一実施形態の信号伝送システムの全体構成を図1を参照し説明する。
1000はイーサネット(登録商標)形式のネットワークであり、ここに接続された複数のノード間のパケットを伝送する。ネットワーク1000に接続されるノードは「汎用I/Oノード」と「アンプI/Oノード」とに大別される。前者は、ネットワーク1000を介して音声データの入出力を行えるノードであり、後者は音声データについてはネットワーク1000からの入力のみが可能なノードである。ネットワーク1000には、最大「8」台の汎用I/Oノードと、最大「16」台のアンプI/Oノードとを接続することが可能である。
【0012】
図示の例においては、「2」台の汎用I/Oノード1100,1200と、「2」台のアンプI/Oノード1500,1600とがネットワーク1000に接続されている。そして、汎用I/Oノード1100にはマイク1102およびレコーダ1104が接続され、汎用I/Oノード1200にはミキサ1202が接続され、該ミキサ1202にマイク1204およびレコーダ1206が接続されている。
【0013】
また、アンプI/Oノード1500には、複数のアンプ1502〜150nが接続され、これらアンプから出力された音声信号はスピーカ1512〜151nを介して発音される。なお、アンプI/Oノード1500と各アンプ1502〜150nとを接続するケーブルは、ノードから各アンプに対してアナログ音声信号を伝送するためのケーブルと、ノードと各アンプ間で制御信号の双方向伝送を行うためのケーブルとから構成されるが、図上では便宜上各々一本の線によって表現されている。ここで、一のアンプI/Oノードは、「4」バンドル(「32」チャンネル)の音声データの中から任意の最大「16」チャンネルの音声データをアナログ信号に変換し出力することができ、最大「32」のアンプに対して制御信号を双方向伝送することができる。
【0014】
同様に、アンプI/Oノード1600は、複数のアンプ1602〜160nに接続され、これらアンプには各々スピーカ1612〜161nが接続されている。また、本実施形態においては、一または複数の任意のノードに対して、信号伝送システムの監視・制御用のパーソナルコンピュータ(PC)を接続することができる。図示の例においては、汎用I/Oノード1100およびアンプI/Oノード1600に各々PC1910,1920が接続されている。
【0015】
1.2.各ノードの構成
次に、図2(a)を参照し、各ノードの詳細構成を説明する。
図において102は表示器であり、ユーザに対して各種情報を表示する。104はパネル操作子であり、各種情報を設定する。なお、表示器102およびパネル操作子104は簡易な構成であるため、各ノードの詳細な設定あるいは表示はPC1910または1920を介して実行されることになる。106は固有I/O部であり、各ノード毎に用途に応じて構成される。例えば、汎用I/Oノード1100,1200においては、ミキサ等に対してデジタル信号またはアナログ信号の入出力を行えるよう、ADコンバータ、DAコンバータ、デジタルI/Oなどが固有I/O部106に設けられる。一方、アンプI/Oノード1500,1600においては、各アンプにアナログ信号を供給するためのDAコンバータと、アンプとの間で制御信号をやりとりするためのシリアルインタフェースとが固有I/O部106に設けられる。
【0016】
110はLANI/O部であり、ネットワーク1000との間で音声データおよび制御データのパケットの入出力を行う。108はDSPであり、後述するプロトコルに基づいて、音声信号または制御信号と、音声データパケットまたは制御データパケットとの相互変換を行う。116はPC・I/O部であり、ここに上述したPC1910,1920が接続されると、該PCとの間でデータ通信を行う。118はCPUであり、フラッシュメモリ120に格納された制御プログラムに基づいて、バス112を介して該ノード内の各部を制御する。122はRAMであり、CPU118のワークメモリとして用いられる。
【0017】
1.3.各パーソナルコンピュータの構成
次に、各PCの構成を図2(b)を参照し説明する。図において134は入力装置であり、文字入力用キーボードおよびマウス等から構成されている。136は表示装置であり、ユーザに対して各種情報を表示する。138はハードディスクであり、オペレーティングシステムと、信号伝送システムを制御するアプリケーションプログラム(詳細は後述する)等のプログラムが記憶される。140はCPUであり、これらのプログラムに基づいて、バス130を介して他の構成要素を制御する。142はROMであり、イニシャルプログラムローダ等が記憶されている。144はRAMであり、CPU140のワークメモリとして用いられる。132はシリアルインタフェースであり、上述した何れかのノードのPC・I/O部116に接続される。
【0018】
2.実施形態のデータ構造
各ノードのRAM122および各PCのハードディスク138またはRAM144には、信号伝送システムの状態を共有するための情報として、各々図4に示す設定情報400が記憶される。そして、各ノードに記憶された設定情報400は、後述する処理によって、同一内容になるように同期制御される。ここで、設定情報400は、「24」のノード領域400−1〜24に分割されている。上述したように、ネットワーク1000には、最大「8」台の汎用I/Oノードと、最大「16」台のアンプI/Oノードとを接続することが可能である。そこで、これらのノードが最大数接続された場合に備えて、実際の接続数にかかわらず最大数に応じた「24」領域が予め確保されているのである。
【0019】
ノード領域400−1において404はRO(Read Only)ブロックであり、PCによって状態の変更を指示することができない読み出し専用のデータが格納される。406〜410はRWブロックであり、PCによって状態設定のための書き込みと状態確認のための読み出しが共に可能なデータが格納される。また、412は物理量ブロックであり、対応するノードにおける温度以外の各種物理量、すなわちアンプへの入力電圧、アンプの出力電圧、アンプの出力電力、アンプの出力インピーダンス等が格納される。この物理量ブロック412も状態確認のための読み出しのみが許容される「Read Only」のブロックである。また、402はCRCブロックであり、上記各ブロック404〜410の各々に対するCRC符号(エラーチェックコード)と、該ノードのMACアドレスが格納される。すなわち、CRCブロック402には、ブロック404〜410の各々のCRC符号、すなわち「4」種類のCRC符号が記憶されることになる。
【0020】
ここで、ある一つのノードにおいては、ノード領域400−1〜24のうち何れか一つのノード領域400−jは自ノードの情報を表すものであるから、この領域を「自ノード領域」と呼ぶ。また、その他のノード領域400−1〜(j−1),(j+1)〜24は他のノードの状態を表すものであるから「他ノード領域」という。
【0021】
上記各ブロック404〜410に記憶されるデータは、ノードの種類に応じて異なる。まず、仮にノード領域400−1が汎用I/Oノードに係る領域であったとすると、ROブロック404には当該汎用I/Oノードのワードクロックのソースを特定する情報が記憶される。また、RWブロック406には、当該ノードから入出力されるバンドルのバンドル番号が記憶される。また、RWブロック408には、当該ノードに対して外部から入出力されるアナログまたはデジタル音声信号のチャンネルと、ネットチャンネル(ネットワーク1000に対して入出力されるバンドル内のチャンネル)との対応関係が記憶される。また、RWブロック410には、当該汎用I/Oノードの名称(文字列)が記憶される。
【0022】
また、仮にノード領域400−1がアンプI/Oノードに係る領域であったとすると、ROブロック404には当該ノードに接続されているアンプの温度、当該ノードによって制御される最大「32」台のアンプが動作可能状態であるか否か、および、これらのアンプから何らかの警告が出力されているか否かが記憶される。また、RWブロック406には、当該アンプI/Oノードによって受信される最大「4」バンドル(32ネットチャンネル相当)のバンドル番号が記憶される。また、RWブロック408には、これらのチャンネルのうちアナログ信号に変換されるものについて対応するDAコンバータのチャンネル番号を特定する情報が記憶される。そして、RWブロック410には、当該アンプI/Oノードの名称(文字列)が記憶される。
【0023】
そして、アンプI/Oノードに接続されているアンプに係る物理量のうち、アンプの温度等の変化の頻度が低い物理量はROブロック404に記憶され、常時変化する物理量(電圧、インピーダンス等)は物理量ブロック412に記憶される。
【0024】
3.データ伝送プロトコル
図3(a)について上述したように、Cobra Netにおいては、各伝送サイクル200にシリアル通信用のパケット220を送信し得る期間が確保されている。そこで、本実施形態においては、この一連の伝送サイクル200によってさらに上位のレイヤ(制御レイヤ)を形成し、この制御レイヤを介して、各種制御信号を伝送することとした。この制御レイヤにおけるプロトコルを図3(b)を参照し説明する。
【0025】
制御レイヤにおいては、最短「250msec」の「制御サイクル240」を周期として、各種制御データが伝送される。そして、各ノードのうち何れか一のノードは、制御サイクル240を管理するための特殊なノード(「指揮ノード」という)に設定される。なお、指揮ノードは、上述した「コンダクタ」と同一のノードであってもよいし異なるノードであってもよい。そして、各制御サイクル240の先頭においては、指揮ノードによってサイクル開始指示パケット250がネットワーク1000上に出力される。そして、これに引き続いて、各ノードから制御データパケット群251〜254が順次ネットワーク1000上に出力される。
【0026】
ここで、制御データパケット群の数は、ネットワーク1000に接続されているノード数(図1の例では「4」)と同数であり、1回の制御サイクル240内において各ノードから1回づつ制御データパケット群が出力されることになる。ここで、先頭の制御データパケット群251は、指揮ノードが出力する制御データパケット群である。従って、該制御データパケット群251は、サイクル開始指示パケット250が出力された後に直ちに出力される。一方、その後の制御データパケット群252〜254は指揮ノード以外のノードから出力される制御データパケット群であり、これらパケット群は、衝突を防止するために所定の猶予期間づづ隔てられる。
【0027】
そして、制御データパケット群は、イベントデータパケット260、レポートパケット262、物理量データパケット264および終了パケット266から構成される。このうち、レポートパケット262および終了パケット266は必須のパケットであり、他のパケットは必要に応じて追加されるパケットである。
【0028】
制御サイクル240の周期は最短で「250msec」であるから、接続されるノード数が多くなると、図3(c)に示すように「250msec」よりも長くなる。しかし、制御サイクル240の周期は「250msec」よりも短くなることはない。これは、各ノードは制御サイクル240毎に自ノードの状態を収集して他ノードに報告するため、自ノードの状態を収集するための時間として最短でも「250msec」を予め確保しているのである。
【0029】
3.1.サイクル開始指示パケット250
以下、上述した各パケットの詳細を説明する。まず、サイクル開始指示パケット250は、以下のデータから構成される。
(1)各ノードのパケット群出力順序
上述したように、制御サイクル240内においては各ノードによって制御データパケット群251〜254が順次出力されるが、各ノードの出力順序はサイクル開始指示パケット250において指定される。
【0030】
(2)各ノードが出力すべき物理量の内容
詳細は後述するが、各ノードは自機に接続されているアンプの温度、電圧、インピーダンス等の物理量を制御データパケット群251〜254に含めて送信することができる。そして、出力すべき物理量のうち常時変化する物理量は、主としてPCが接続されたノード(接続ノード)から出力されるイベントデータパケット260によって指定される。しかし、他の個々のノードが接続ノードからのイベントデータパケット260に基づいて出力すべき物理量を認識すると、通信エラー等によるとりこぼしが発生することがある。そこで、本実施形態においては、各ノードが出力すべき物理量については、サイクル開始指示パケット250の中に該出力すべき物理量のリストである「表示中リスト」を含めることにより、指揮ノードによって一括して指示することにしている。
【0031】
3.2.イベントデータパケット260
また、イベントデータパケット260は、以下のデータから構成される。
(1)指示データ
詳細は後述するが、制御データパケット群を送信するノード(以下、送信ノードという)にPCが接続されている場合には、ユーザはこのPCを介して、送信ノードのみならず全てのノードに対する全ての設定状態(各ノード領域のRWブロック406〜410に記憶されたデータ)の変更を指示することができる。その際、当該送信ノードから、状態が変更されるべき他ノードに対してその旨が指示される。この指示を行うためのデータを「指示データ」という。なお、PCによって、該PCが接続されているノード(以下、接続ノードという)自体の変更が行われた場合には、当該ノードからは指示データは出力されない。また、PCによって物理量の監視ポイント(所望のノードの所望の物理量)が指定された場合には、その監視ポイントは指揮ノードに通知され、上述したようにサイクル開始指示パケット250を介して他の各ノードに通知される。なお、指揮ノード以外のノードも指揮ノードに昇格する可能性があるため、PCから通知された監視ポイントないしサイクル開始指示パケット250により通知された監視ポイントを各ノードにおいて保存しておくようにするとよい。
【0032】
(2)変更データ
上記指示データを受けたノードにおいて設定状態が変更されると、変更後の設定状態が全てのノードに対して通知される。また、PCによって、PCが接続されているノード自体の変更が行われた場合も、変更後の設定状態が他のノードに対して通知される。また、頻繁には変化しない、例えばアンプの出力段の「温度」等の物理量を検出しているノードにおいては、その検出された物理量に変化が生じたとき、その変化後の物理量が他のノードに通知される。これらの通知を行うデータを「変更データ」という。すなわち、各ノードは、自ノード領域400−jのブロック404〜410の何れかのデータが変更された場合は、変更データによって、他のノードに対してその状態変更を通知しなければならない。これは、各ノードおよびPCにおける各ノード領域のブロック404〜410のの内容を同期させるためである。
【0033】
(3)要求データ
ある第1のノードの自ノード領域を400−jとしたとき、何れかの他ノード領域400−k(kは1〜(j−1),(j+1)〜24の何れか)において、CRCブロック402の内容と、他のブロック404〜410のCRC演算結果との間に矛盾が生じた場合は、他ノード領域400−kのブロック404〜410にエラーが生じていることになる。かかる場合には、第1のノードが送信ノードになった際に、エラーが生じた他ノード領域400−kに係る第2のノードに対して、第1のノードによって他ノード領域400−kのエラーが生じたブロックを転送するように要求される。かかる要求を行うデータを「要求データ」という。
【0034】
3.3.レポートパケット262
また、レポートパケット262は、以下のデータから構成される。
(1)送信ノードに係るCRCブロック402の内容
送信ノードの自ノード領域400−j内のCRCブロック402は、制御サイクル240毎に常にレポートパケット262に含めて送信される。従って、このレポートパケット262は、制御サイクル240毎に必ず発生する必須のパケットになる。このCRC符号を受信することにより、他ノードにおいては、該他ノードの設定情報400に該送信ノードに係る正しいデータが格納されているか否かを確認することができる。
【0035】
(2)送信ノードに係る他のブロック404〜410の内容
上述したように、ある第1のノードに記憶されている、第2のノードに係るノード領域の何れかのブロックにエラーが生じた場合は、該第1のノードから第2のノードに対して要求データが送信される。第2のノードがこの要求データを受信すると、次に第2のノードが送信ノードになった際に、要求されたブロックの内容がレポートパケット262中に追加される。
【0036】
3.4.物理量データパケット264
サイクル開始指示パケット250によって、出力すべき物理量が指定されると、アンプへの入力電圧、アンプの出力電圧、アンプの出力インピーダンス等の常時変化する物理量のうち、指定された物理量の値が当該物理量データパケット264に含められ、制御サイクル240毎に出力される。なお、上述したように、「温度」については変化が生じた時にイベントデータパケット260内の変更データとして送信される。これは、「温度」は変化する頻度が小さいために、制御サイクル240毎に物理量データパケット264を介して伝送すると、相当のデータ量が無駄になることに鑑みたものであり、変化が生じたことを条件として送信することにより、送信される全体のデータ量を削減することができる。
3.5.終了パケット266
終了パケット266は、今回の送信ノードによるパケット送信が終了した旨を他のノードに通知するために出力される。
【0037】
4.実施形態の動作
4.1.ノードにおける制御データ送信(図6)
次に、本実施形態の動作を説明する。まず、各ノードにおいて制御データパケット群251〜254をネットワーク1000を介して他ノードへ送信すべき状態になると、図6に示す制御データ送信ルーチンが起動される。なお、該パケット群を「送信すべき状態」とは、具体的には以下の3通りが考えられる。
(1)サイクル開始指示パケット250が出力された直後
指揮ノードにおいては、自ノード内のクロックに基づいて、制御サイクル240毎にサイクル開始指示パケット250が出力される。かかる指揮ノードにおいては、サイクル開始指示パケット250が出力された直後のタイミングが制御データパケット群251を出力すべきタイミングになる。
【0038】
(2)終了パケット266の検出後
上述したように、各ノードが制御データパケット群を出力する順序はサイクル開始指示パケット250によって指示される。従って、指揮ノード以外のノードにおいては、順番が一つ前のノードから終了パケット266が出力された後に所定の猶予期間が経過したタイミングが、制御データパケット群を出力するタイミングになる。
(3)指揮ノードから指示を受けた場合
指揮ノードにおいては、各ノードが正しい順序で制御データパケット群を出力しているか否かが常時監視されている。そして、パケット群を本来出力すべきノードからのパケット群が検出できなかった場合には、その次の順序のノードに対してパケット群の出力が指示される。かかる場合には、指示を受けたノードにおいて制御データパケット群が直ちに出力される。
【0039】
さて、図6において処理がステップSP6に進むと、送信すべきイベントデータが存在するか否かが判定される。すなわち、送信ノードにおいて状態変更(測定が指示された「温度変化」を含む)が生じた場合は変更データを出力する必要があり、PCの指示に基づいて他のノードに対して状態変更を要求する場合には指示データを出力する必要があり、CRC符号に矛盾が生じた場合は他ノードに対して要求データを出力する必要がある。これら何れかの場合に該当すれば、ここで「YES」と判定され、処理はステップSP8に進む。該ステップSP8においては、対応するイベントデータに基づいてイベントデータパケット260が生成されネットワーク1000に送信される。
【0040】
次に、処理がステップSP10に進むと、自ノード領域400−j内のブロック404〜410のうち送信すべきブロックが存在するか否か、すなわち他ノードから先に「要求データ」を受信したか否かが判定される。ここで「YES」と判定されると、処理はステップSP12に進み、レポートパケット262に含めるべきブロックとして、この要求データによって送信要求を受けた一または複数のブロックがリストアップされる。
【0041】
次に、処理がステップSP14に進むと、レポートパケット262に含めるべきブロックのリストに、自ノード領域400−j内のCRCブロック402が追加される。従って、先にステップSP10において「NO」と判定された場合には、CRCブロック402のみがリストアップされることになる。次に、リストアップされた全てのブロックに基づいて、それらの内容を表すレポートパケット262が作成される。次に、処理がステップSP16に進むと、この作成されたレポートパケット262がネットワーク1000を介して出力される。
【0042】
次に、処理がステップSP18に進むと、指揮ノードから受信した「表示中リスト」の内容がチェックされる。すなわち、「表示中リスト」には各ノードが出力すべき物理量が全て含まれているため、この中から「自ノードが出力すべき物理量であって温度以外の物理量」が検索される。次に、処理がステップSP20に進むと、このステップSP18のチェック結果に基づいて、送信すべき物理量が存在するか否かが判定される。ここで「YES」と判定されると、処理はステップSP22に進み、送信すべき物理量に基づいて物理量データパケット264が生成され、該パケットがネットワーク1000に出力される。次に、処理がステップSP24に進むと、終了パケット266がネットワーク1000に出力される。以上の処理により、本ルーチンが終了する。
【0043】
4.2.ノードにおける制御データ受信(図7)
次に、送信ノード以外のノードにおいてネットワーク1000を介して制御データパケット群が受信されると、該パケット群を受信した各ノード(受信ノード)において図7に示す制御データ受信ルーチンが起動される。図において処理がステップSP32に進むと、自ノードのPC・I/O部116にPCが接続されているか否かが判定される。ここで「YES」と判定されると、処理はステップSP34に進み、受信した各種制御データを当該PCに転送する処理が実行される。ここで、PCに転送される制御データは、「直ちに転送すべきデータ」と「所定時間待機した後に転送すべきデータ」とに分類され、この分類に応じたタイミングで各制御データが転送される。なお、この制御データの分類方法および分類する理由については後述する。
【0044】
次に、処理がステップSP36に進むと、受信したパケット群の中に自ノードに対する「要求データ」が含まれているか否かが判定される。ここで「YES」と判定されると、処理はステップSP38に進み、自ノード領域400−j内のブロック404〜410のうち、要求されたブロックの送信準備が行われる。すなわち、自ノードが次に送信ノードになった際、上述したステップSP12の処理によってレポートパケット262に含めるべき一または複数のブロックに、今回要求されたブロックが追加されることになる。
【0045】
次に、処理がステップSP40に進むと、受信したパケット群の中に自ノードに対する「指示データ」が含まれているか否かが判定される。ここで「YES」と判定されると、処理はステップSP42に進み、当該指示データに基づいて自ノード領域400−jの内容が変更される。また、指示データが例えば自ノードに接続されるアンプの状態変更を指示するものである場合には、かかる状態変更を実現するように、アンプ等に制御信号が出力される。次に、処理がステップSP44に進むと、自ノード領域400−jの変更内容を表す変更データの送信準備が行われる。すなわち、自ノードが次に送信ノードになった際、上記ステップSP8の処理によってイベントデータパケット260に含めるべき変更データに、今回の自ノード領域400−jの変更内容が追加される。
【0046】
次に、処理がステップSP46に進むと、受信したパケット群の中に「変更データ」すなわち送信ノードからの変更データが含まれているか否かが判定される。ここで「YES」と判定されると、処理はステップSP47に進み、当該送信ノードに係るノード領域400−k(kは1〜24のうち何れか)の内容が、該変更データに基づいて変更される。
【0047】
次に、処理がステップSP48に進むと、受信したレポートパケット262中にブロック404〜410の何れかが含まれているか否かが判定され、含まれていた場合には、当該送信ノードに係るノード領域400−k内の対応する箇所に、受信したブロックの内容が上書きされる。そして、ブロック404〜410のうち変更されたブロック(すなわちステップSP47において変更されたブロックまたは本ステップSP48において上書きされたブロック)について変更後の内容に対応するCRC符号が計算され、算出されたCRC符号がCRCブロック402内の対応する箇所に書き込まれる。なお、CRC符号の計算式は全てのノードおよびPC間で統一されており、ブロック404〜410の内容が特定されると、CRCブロック402内のCRC符号は一意に特定される。
【0048】
次に、処理がステップSP50に進むと、受信したパケット群の中に物理量データパケット264が含まれているか否かが判定され、含まれていた場合には該パケットの内容が、送信ノードのノード領域400−k内の物理量ブロック412に上書きされる。次に、処理がステップSP54に進むと、当該送信ノードに係るノード領域400−k内のCRCブロック402に格納された複数のCRC符号と、送信ノードから供給された(レポートパケット262に含まれていた)対応する複数のCRC符号とが各々比較される。
【0049】
次に、処理がステップSP56に進むと、これらのCRC符号のうち一致しないものが存在するか否かが判定される。ここで、一致しないCRC符号に係るブロックは、通信エラー等によって不正な情報が記憶されていることになる。ここで「YES」と判定されると、処理はステップSP58に進み、送信ノードに対して当該ブロックの再送信を要求する要求データが作成されるとともに、通信エラーが発生した旨のメッセージが表示器102に表示される。この要求データは、次に自ノードが送信ノードになった際、上記ステップSP8を介して出力される。
【0050】
但し、CRC符号の不一致がROブロック404について発生した場合には、表示器102に通信エラーのメッセージを表示させないようにしてもよい。一方、物理量ブロック412については元々CRC符号は作成されていない。このため、物理量ブロック412については、伝送エラー等によって仮に誤った内容が記憶されたとしても、該ブロックが次回更新されるまで、その状態が継続することになる。これにより、要求データが出力される頻度を抑え、ネットワーク1000上の制御データ量を抑制することができる。
【0051】
ここで、ネットワーク1000には、新規ノードをホットプラグインにより接続することが可能である。ネットワーク1000に接続された時点においては、この新規ノードに記憶されている設定情報400は、自ノード領域400−j以外の領域が「空」になっており、該自ノード領域以外の領域におけるCRCブロック402には、各ブロックが「空」であることを示すCRC符号が記録されている。このため、ネットワーク1000上の他ノードから受信するCRC符号と、この新規ノードに記憶されているCRC符号とは必ず不一致になるため、他ノードからCRC符号を受信するたびに、その送信ノードに対して、該送信ノードに係る全ての設定状態を表す設定情報(ブロック404〜410)の再送信が要求されることになる。この要求によって、全ての他ノードからそれぞれのノードの全ての設定情報が順次受信される。そして、受信された情報は設定情報400として該新規ノードに記録されるから、この新規ノードにおいてもネットワーク1000上の全ノードの設定情報を保持することができる。
【0052】
4.3.PCの接続
PC1910,1920が何れかのノードに接続され、このPCにおいて所定のアプリケーシ
ョンプログラムが起動されると、最初に「転送コマンド」が実行される。このコマンドが実行されると、接続ノードに記憶されている設定情報400が当該PCに転送される。これにより、当該PCにおいては、設定情報400を参照する様々な画面を表示することができるようになる。そして、ユーザはこれらの画面によって信号伝送システムの状態を把握することができ、状態の変更を指示することができるようになる。
【0053】
4.4.画面選択イベント(図8(a),図5)
上記アプリケーションプログラムにおいては、当該PC内の設定情報400を参照する各種の画面(ウィンドウ)の中から任意のものを入力装置134によって選択して表示することができる。この画面の選択イベントが発生すると、当該PCにおいて図8(a)に示す画面選択イベント発生ルーチンが起動される。図において処理がステップSP70に進むと、選択された画面は「物理量」(温度、電圧、インピーダンス等)を表示する画面であるか否かが判定される。
【0054】
ここで「YES」と判定されると、処理はステップSP72に進み、当該選択された画面が表示装置136に表示される。次に、処理がステップSP74に進むと、接続ノードに対して、画面に表示される物理量の指定を行う指定イベントが送信される。また、ステップSP70において「NO」と判定されると、処理はステップSP76に進み、選択された画面が表示装置136に表示される。次に、処理がステップSP78に進むと、その他各種の処理が実行され、本ルーチンが終了する。
【0055】
ここで、「物理量」の表示を行う画面の一例として、任意のアンプI/Oノードに接続された任意のアンプの任意のチャンネルを複数チャンネル分グループ化して、グループ単位で複数チャンネルの動作状態を表示するようにしたグループ表示画面(図5)を参照し説明する。まず、本実施形態においては、物理量の監視ポイントが複数の「グループ」に分類される。図において350〜354はタグであり、ユーザが任意のタグをマウスでクリックすることによって対応するグループが選択される。300は表示ウィンドウであり、選択されたグループに属する物理量を表示する。300−1,300−2,……は監視ポイント枠であり、各々が一の監視ポイントに対応する複数の物理量等を表示する。
【0056】
監視ポイント枠300−1の内部において302はチャンネル表示部であり、監視ポイント枠300−1で行われている表示が、どのアンプI/Oノードに接続されたどのアンプのどのチャンネルに係るものであるかを特定する文字列を表示する。この文字列「AN1-3-2」において最初の2文字「AN」は「アンプI/Oノード」の意味であり、次の「1」はアンプI/Oノードのシリアル番号を表す。次の「3」は、当該アンプI/Oノードに接続されているアンプのシリアル番号であり、最後の「2」は、当該アンプにおけるチャンネル番号である。
【0057】
次に、304は名称表示部であり、アンプのメーカーが定めたアンプ名を表す文字列が表示される。306はパワーボタンであり、マウスでクリックされる毎に当該アンプの電源を「ON」または「STAND-BY」状態に設定するとともに、この状態を表す文字列を表示する。308はチャンネル名表示部であり、ユーザによって定められた任意のチャンネル名(文字列)を表示する。310はプロテクト表示部である。ここには通常は何も表示されないが、例えばアンプが過熱状態になりアンプのプロテクションシステムが作動したときに「PROTECT」の文字列が表示される。
【0058】
312は出力クリップ表示部であり、当該チャンネルの出力信号がクリップすると点灯状態になる。314は出力メータであり、該出力信号の出力レベル(「電力」または「電圧」)を表示する。316はインピーダンス表示器であり、当該チャンネルの負荷インピーダンスを数値表示する。318は温度メータであり、当該チャンネルの出力段の温度を表示する。320は入力メータであり、当該チャンネルへの入力レベルをdB単位で表示する。322はATTフェーダであり、当該チャンネルに入力される入力信号を減衰させる減衰率の設定状態が表示されるとともに、マウスでドラッグされることにより、該減衰率の設定状態が変更される。
【0059】
324は位相ボタンであり、マウスでクリックされる毎に、当該チャンネルの出力の位相を「NORMAL」または「REVERSE」に交互に切り替える。326はミュートボタンであり、マウスでクリックされる毎に、当該チャンネルのミュート(出力レベルの減衰)のオンオフを切り替える。上述した各表示内容のうち、出力メータ314、インピーダンス表示器316、入力メータ320の表示内容は、当該アンプI/Oノードの自ノード領域400−j内の物理量ブロック412に記憶されている内容に基づくものであり、温度メータ318の表示内容は同ROブロック404に基づくものであり、その他の表示内容は同RWブロック406〜410の何れかに基づくものである。すなわち、アンプI/Oノードは、接続されているアンプから各種設定状態や物理量を収集し、当該アンプI/Oノードの自ノード領域400−j内にその内容を記憶している。そして、該領域の内容が接続ノードを介してPC内の設定情報400に反映されると、該PCにおける表示ウィンドウ300の内容が更新される。
【0060】
監視ポイント枠300−2等も監視ポイント枠300−1と同様に構成されている。そして、各グループに属するアンプのチャンネルはユーザが自由に選択することができ、異なるノード、異なるアンプの任意のチャンネルも一の表示ウィンドウ300内に表示することが可能である。
【0061】
4.5.設定変更イベント(図8(b))
上述したように、ユーザは、PC上の操作によって各部の設定状態を操作することができる。図5の例においては、例えばあるアンプI/OノードのあるチャンネルのATTフェーダ322をマウスでドラッグすることにより、該ATTフェーダ322に対応する設定状態を変更することができる。このように何れかのノード(またはノードに接続されているアンプ等)の状態を変更するイベントが発生すると、該PCにおいて図8(b)に示す設定変更イベント発生ルーチンが起動される。
【0062】
図において処理がステップSP80に進むと、当該PC内の設定情報400が、指示された内容通りに変更される。例えば、上記ATTフェーダ322によって減衰率が「10dB」に設定されたのであれば、当該アンプI/Oノードに係るノード領域のRWブロック406〜410内の当該アンプの当該チャンネルに対応する領域に、直ちに「10dB」のデータが書き込まれる。そして、更新されたブロックに対応するCRC符号が再計算され、この計算結果がCRCブロック402内の対応する領域に書き込まれる。次に、処理がステップSP82に進むと、この更新された設定情報400に基づいて、当該PCにおける表示内容が更新される。すなわち、上記例においては、ATTフェーダ322の「つまみ」の部分が「10dB」に対応する位置に移動される。
【0063】
但し、この時点では、実際のアンプの対応するチャンネルの減衰量が未だ「10dB」に設定されたことが確認されていないため、未確認であることが判るように通常とは異なる表示態様(例えばグレー表示や点滅表示)によって、当該表示部分(ここではATTフェーダ322)が表示される。次に、処理がステップSP84に進むと、変更内容(変更対象のノード、アンプ、パラメータの種類、変更量など)を表す変更指示が当該PCから接続ノードに対して送信される。
【0064】
4.6.設定変更イベント(図8(c))
次に、接続ノードにおいて上記変更指示が受信されると、当該接続ノードにおいて図8(c)に示す変更指示受信ルーチンが起動される。図において処理がステップSP90に進むと、受信した変更指示は自ノード(または自ノードに接続されているアンプ等)に対する変更指示であるか否かが判定される。ここで「YES」と判定されると、処理はステップSP96に進み、当該接続ノードの自ノード領域400−jの対応箇所が変更される。
【0065】
また、変更箇所がブロック404〜410の何れかである場合には、当該ブロックに係るCRC符号が再計算され、CRCブロック402内の対応箇所に上書きされる。また、受信した変更指示が自ノードに接続されているアンプ等に対する変更指示である場合には、当該アンプ等の設定状態も変更される。そして、当該変更内容を表す変更データが作成され、この変更データは、当該接続ノードが接続されたPCに送信されるとともに、当該接続ノードが送信ノードになった際にイベントデータパケット260に含められ、他のノードに対して伝送される(図6のステップSP8)。
【0066】
一方、ステップSP90において「NO」と判定されると、処理はステップSP92に進む。ここでは、状態変更を行うべき他ノードに対する指示データが作成される。この場合には設定情報400の内容は変更されない。すなわち、この接続ノードが送信ノードになると、当該指示データは状態変更を行うべき他ノードに送信され(図6のステップSP8)、該他ノードにおいて設定情報400が変更される(図7のステップSP42,SP44)。その後、該他ノードが送信ノードになると、変更された状態に応じた変更データが接続ノードおよび他のノードに対して送信される(図6のステップSP8)。そこで、当該接続ノードにおいては、該変更データ(ステップSP92の指示データで変更を指示した箇所に係る変更データ)を受信した際に設定情報400の対応する箇所が変更されるのである(図7のステップSP47)。
【0067】
次に、処理がステップSP94に進むと、所定時間の計時が開始される。ここで、「所定時間」とは、例えば過去の制御サイクル240の平均値を「1サイクル」として「4サイクル」相当の時間である。ところで、上述したステップSP34(図7)においては、ある接続ノードがネットワーク1000から受信した制御データをPCに転送する際に、制御データは「直ちに転送すべきデータ」と「所定時間待機した後に転送すべきデータ」とに分類される旨を述べた。ここで、「所定時間待機した後に転送すべきデータ」とは、「ステップSP92の指示データで変更を指示した箇所に係る変更データ」のことであり、「所定時間」とは「ステップSP94において計時が開始される所定時間(例えば4サイクル)」のことである。
【0068】
ここで、このように転送を待機すべき理由について説明する。まず、仮に待機を行わなかった場合に発生する不具合を例を挙げて説明する。
図1の例においては、汎用I/Oノード1100にPC1910が接続され、アンプI/Oノード1600にPC1920が接続されている。これらPC1910,1920において、共に図5に示す表示ウィンドウ300が表示されているとする。また、同ウィンドウ内の監視ポイント枠300−1は、アンプI/Oノード1500に接続されているアンプ1502の第2チャンネルに係るものであったとする。ここで、例えばPC1910においてATTフェーダ322が「10dB」に設定され、これに僅かに(数100msec程度)遅れてPC1920においてATTフェーダ322が「20dB」に設定されると、以下のような挙動が予想される。
【0069】
(1)まず、PC1910において、ATTフェーダ322を「10dB」に設定する操作イベントが検出されると、その変更指示が汎用I/Oノード1100に伝達される。
(2)これに応じて、汎用I/Oノード1100においては、自ノードが送信ノードになった際に、アンプI/Oノード1500に対して、「アンプ1502の第2チャンネルの減衰率を10dBにせよ」との指示データが送信される。
(3)ここで、PC1920において、ATTフェーダ322を「20dB」に設定する操作イベントが検出されると、その変更指示がアンプI/Oノード1600に伝達される。
【0070】
(4)アンプI/Oノード1500においては、先の汎用I/Oノード1100からの指示データに基づいてアンプ1502が制御されるとともに設定情報400が更新され、その結果として「アンプ1502の第2チャンネルの減衰率を10dBに設定した」旨の変更データが他の各ノードに出力される。
(5)この変更データがアンプI/Oノード1600によって受信されると、「アンプ1502の第2チャンネルの減衰率を10dBに設定した」旨の変更データがアンプI/Oノード1600からPC1920に転送される。
(6)次に、アンプI/Oノード1600が送信ノードになると、アンプI/Oノード1500に対して、「アンプ1502の第2チャンネルの減衰率を20dBにせよ」との指示データが送信される。
【0071】
(7)アンプI/Oノード1500においては、このアンプI/Oノード1600からの指示データに基づいてアンプ1502が制御されるとともに設定情報400が更新され、その結果として「アンプ1502の第2チャンネルの減衰率を20dBに設定した」旨の変更データが他の各ノードに出力される。
(8)この変更データがアンプI/Oノード1600によって受信されると、「アンプ1502の第2チャンネルの減衰率を20dBに設定した」旨の変更データがアンプI/Oノード1600からPC1920に転送される。
【0072】
以上の動作をPC1920の側から見ると、減衰率を20dBに設定するように指示したにもかかわらず、「減衰率を10dBに設定した」旨の変更データが受信され、これに引き続いて「減衰率を20dBに設定した」旨の変更データが受信されることになる。詳細は後述するが、各PCにおいては、設定情報400内の何れかの箇所についての変更指示が接続ノードに送信された後は、この箇所に対する変更データに基づいて、変更指示の通りに状態が変更されたか否かが監視されている。従って、「20dB」の変更指示に対して「10dB」の変更データが供給された場合には、通信エラーが生じたものとみなされ、その旨がPC1920上で警告されることになる。
【0073】
このように、仮に変更指示に対応する変更データの転送を待機しなかった場合には、複数のPCを用いて信号伝送システムの設定を行っている場合に、実際には伝送エラーが生じていないにもかかわらず「エラーが生じた」との警告が頻発することになる。そこで、本実施形態においては、変更指示に対応する変更データについては、所定時間だけ転送を待機することとしたものである。この「所定時間(例えば4サイクル)」は、「PCが接続ノード以外のノードに対する変更指示を接続ノードに対して出力した後、この変更指示に対応する変更データを受信するまでの時間の予測値」に等しい。
【0074】
また、ここで「待機する」とは、単に「遅延させる」こととは異なり、「対応箇所について待機時間中に複数の変更データを受信された場合には、待機時間終了時に最後に受信された変更データを転送する」という意味である。上記例においては、PC1920において「10dB」および「20dB」の変更データが順次受信されるが、これらが待機時間中に受信された場合には、最後の「20dB」の変更データのみがPC1920に転送される。従って、PC1920においては「20dB」の変更指示に対して「20dB」の変更データが受信されるのであるから、変更指示と変更データとの間になんら矛盾が生じないのである。
【0075】
一方、PC1910においても、「10dB」および「20dB」の変更データが順次受信される。ここで、「10dB」の変更データを受信した後に待機時間が満了すると、PC1910においては「10dB」の変更指示に対して「10dB」の変更データが受信されるのであるから、変更指示と変更データとの間にやはり矛盾が生じない。なお、PC1910においては、その後に「20dB」の変更データが受信されるが、これは先の変更指示には対応しない単なる変更データとして受信される。このように、本実施形態においては、変更指示に係る箇所の変更データのPCへの転送が所定時間だけ待機されるから、上述したような複数のPCを用いて両方から指示データを送信する場合や、PCからの指示データの送信直後に、他ノードから「該指示データを変更しようとするデータを含むブロックを要求する要求データ」が送信された場合などの、エラーとみなさなくてよい場合を除外することができ、エラーの発生頻度を抑制することができるのである。
【0076】
4.7.制御データを受信した際のPC処理(図9)
上記ステップSP34(図7)の処理により、接続ノードからPCに制御データが供給されると、該PCにおいて図9に示す制御データ受信ルーチンが起動される。
図において処理がステップSP100に進むと、該制御データに変更データが含まれているか否かが判定される。ここで「YES」と判定されると、処理はステップSP101に進み、先に接続ノードに対して出力された変更指示(図8(b)のステップSP84)のうち、該指示の結果が未確認である変更指示が存在するか否かが判定される。ここで「YES」と判定されると、処理はステップSP102に進み、受信した変更データのうち「先に出力した変更指示に対応する変更データ」、すなわち「当該変更指示に係る箇所について、変更指示の後に最初に受信した変更データ」が検索される。次に、処理がステップSP103に進むと、この「変更指示に対応する変更データ」が存在するか否かが判定される。
【0077】
ステップSP103において「YES」と判定されると、次に処理がステップSP104に進み、これらの変更データの表す内容は先に出力された変更指示の表す内容に一致するか否かが判定される。ここで「一致する」との判定は当該変更指示通りにパラメータが変更されたことを示し、「一致しない」との判定は当該変更指示通りにパラメータが変更されたなかったことを示す。ここで、「NO(一致しない)」と判定されると、処理はステップSP106に進む。ここでは、必要に応じて、「変更データが変更指示とは異なる」旨の警告が行われる(例えばポップアップウィンドウが表示される)。すなわち、PCにおいては、かかる警告表示を行うか否かの動作モードを事前に設定することができる。この動作モードが「表示を行う」ように設定されていた場合にのみ、当該PC上の表示装置136において、警告表示が行われるのである。
【0078】
なお、ステップSP80(図8(b))において説明したように、当該PC内の設定情報400は既に変更指示が反映された内容に更新されている。従って、ステップSP104における一致判定は、データ同士を比較(ブロック404〜410の内容と変更データとを比較)することによって行ってもよく、CRC符号同士を比較(CRCブロック402内のCRC符号と、変更データに基づいて新たに求めたCRC符号とを比較)してもよい。
【0079】
上記ステップSP101またはSP103において「NO」と判定された場合、ステップSP104において「YES」と判定された場合、あるいはステップSP106の警告処理が完了すると、次に処理はステップSP108に進み、受信した変更データに基づいて、PC内の設定情報400の内容が変更される。すなわち、送信ノードのノード領域400−kにおけるブロック404〜410の内容が更新されるとともに、CRCブロック402内の対応するCRC符号が更新される。ステップSP108はステップSP104の判定結果にかかわらず実行されるから、PCにおいては、変更指示と変更データとが矛盾する場合には、常に変更データの方が正しいものとみなされることになる。また、表示装置136上の表示状態も、この変更データに基づいて更新される。
【0080】
また、先にステップSP82(図8(b))において説明したように、未確認の変更指示に対応する設定の表示部分は、通常とは異なる表示態様で表示されていた。該未確認の変更指示に対応するデータが今回の変更データに含まれていた場合には、ステップSP108によって、当該表示部分の表示態様が未確認を示す表示態様から通常の表示態様に戻される。
【0081】
次に、処理がステップSP109に進むと、先に受信した制御データ中にレポートパケット262としてブロック404〜410の何れかが含まれているか否かが判定され、含まれていた場合には、当該送信ノードに係るノード領域400−k内の対応する箇所に、受信したブロックの内容が上書きされる。そして、ブロック404〜410のうち変更されたブロック(すなわちステップSP108において変更されたブロックまたは本ステップSP109において上書きされたブロック)についてCRC符号が計算され、算出されたCRC符号がCRCブロック402内の対応する箇所に書き込まれる。
【0082】
次に、処理がステップSP110に進むと、先のステップSP109におけるデータ更新(すなわちレポートパケット262に基づくデータ更新)によって表示装置136に表示中のデータが更新されたか否かが判定される。ここで「YES」と判定されると、処理はステップSP112に進み、該データの表示内容が今回受信した制御データに基づいて更新される。次に、処理がステップSP116に進むと、CRCブロック402に格納された複数のCRC符号と、送信ノードから供給された(レポートパケット262に含まれていた)対応する複数のCRC符号とが各々比較される。次に、処理がステップSP118に進むと、これらのCRC符号のうち一致しないものが存在するか否かが判定される。ここで「YES」と判定されると、処理はステップSP124に進み、CRC符号の不一致が発生した旨が表示装置136に表示される。その際、不一致の発生したブロックが特定できるように表示を行ってもよい。
【0083】
次に、処理がステップSP126に進むと、当該PCの接続ノードに対して、CRC符号の不一致が発生した箇所のデータを再送信するように要求が出力される。
【0084】
次に、処理がステップSP119に進むと、受信した制御データの中に物理量データパケット264が含まれているか否かが判定され、含まれていた場合には該パケットの内容が、送信ノードのノード領域400−k内の物理量ブロック412に上書きされる。次に、処理がステップSP120に進むと、表示装置136において常時変化する物理量のうち何れかが表示中であるか否かが判定される。ここで「YES」と判定されると、処理はステップSP122に進み、設定情報400内に記憶された物理量に基づいて、表示内容が更新される。ここで、サイクル開始指示パケット250の表示中リストでは表示中の物理量のうちの常時変化する物理量が指定されているので、ここで表示が更新されるものは、該表示中リストに従って対応する送信ノードから物理量データパケットとして転送された物理量である。なお、頻繁には変化しない物理量は各ノード領域のROブロック404に記憶されているので、その表示はステップSP108またはSP112で更新される。
【0085】
4.8.指揮ノードにおける処理
4.8.1.既存ノードの障害検出
指揮ノードにおいては、サイクル開始指示パケット250において指示した送信順序通りに他のノードが制御データパケット群を送信しているか否かが監視されている。ここで、ある第1のノードから終了パケット266が出力された後、所定時間内に次の第2のノードから制御データパケット群が出力されなかった場合には、当該第2のノードに何らかの障害が発生した(例えばネットワーク1000から切断された等)と考えられる。この第2のノードを「障害ノード」と呼ぶ。
【0086】
かかる場合には、指揮ノードにおいて、図10(a)の障害ノード検出ルーチンが起動される。図において処理がステップSP130に進むと、当該障害ノードは送信順序中の最後のノードであるか否かが判定される。ここで「NO」と判定されると、処理はステップSP132に進み、当該障害ノードの次に送信順序が割り当てられているノードに対して、制御データパケット群の送信が指示される。次に、処理がステップSP134に進むと、当該障害ノードを除くように送信順序が変更される。すなわち、元々の送信順序の中から障害ノードを除いた新しい送信順序に対応する送信順序リストが作成される。従って、次の制御サイクル240においては、この新たな送信順序に従って各ノードから制御データパケット群が出力されることになる。
【0087】
4.8.2.新規ノードの追加検出
上述したように、ネットワーク1000には、新規ノードをホットプラグインにより接続することが可能である。制御サイクル240の終端部分には若干の空き時間が設けられており、この空き時間内に「自ノードが接続された」旨が新規ノードによって指揮ノードに報告される。指揮ノードにおいては、この報告が受信されると図10(b)に示すノード接続検出ルーチンが起動される。図において処理がステップSP140に進むと、当該新規ノードを追加するように送信順序が変更される。すなわち、元々の送信順序に対してこの新規ノードを追加した新しい送信順序に対応する送信順序リストが作成される。従って、次の制御サイクル240においては、この新たな送信順序に従って各ノードから制御データパケット群が出力されることになる。なお、新たにネットワークに接続されたノードのみならず、サイクル開始指示パケット250で示される送信順序に含まれていないノードについても、それが新規ノードであるとして上記の処理を行うようにしてもよい。
【0088】
4.8.3.終了パケット検出処理
また、指揮ノードにおいては、他のノードからの終了パケット266を検出する毎に図10(c)に示す終了パケット検出ルーチンが起動される。図において処理がステップSP150に進むと、当該終了パケット266は、送信順序における最後のノードから出力されたものであるか否かが判定される。ここで「NO」と判定されると、本ルーチンの処理は直ちに終了する。一方、「YES」と判定されると、処理はステップSP152に進み、現在の制御サイクル240が開始された後、制御サイクル240の最短時間(250msec)が経過したか否かが判定される。
【0089】
ここで「NO」と判定されると、処理はステップSP154に進み、この最短時間が経過するまで処理が待機する。また、「YES」と判定された場合には、ステップSP154はスキップされる。次に、処理がステップSP156に進むと、新規ノード検出のために(上述したように新規ノードが指揮ノードに対して該新規ノードの接続を通知できるように)、若干の時間だけ処理が待機される。そして、処理がステップSP158に進むと、各ノードに対して最新の送信順序を報知するサイクル開始指示パケット250が出力され、これによって新たな制御サイクル240が開始される。このサイクル開始指示パケット250に含まれる送信順序リストは、上述した図10(a)のステップSP134、または同図(b)のステップSP140の変更結果を反映した最新の送信順序リストである。そして、ネットワーク1000上の各ノードにおいては、このサイクル開始指示パケット250が受信されると、ここに含まれる最新の送信順序リストが保持される。
【0090】
5.変形例
本発明は上述した実施形態に限定されるものではなく、例えば以下のように種々の変形が可能である。
(1)上記各実施形態においては、ノード上で動作するプログラムおよびパーソナルコンピュータ上で動作するアプリケーションプログラムによって各種処理を実行したが、これらのプログラムのみをCD−ROM、フレキシブルディスク等の記録媒体に格納して頒布し、あるいは伝送路を通じて頒布することもできる。
【0091】
(2)上記実施形態の各ノードで実行される制御データ受信ルーチン(図7)においては、レポートパケット262中にブロック404〜410の何れかが含まれていたとき、ステップSP48で送信ノードに係るノード領域400−k内の対応する箇所に該ブロックが上書きされ、しかる後にステップSP56においてCRC符号のチェックが行われた。しかし、両ステップの順序を逆にしてもよい。すなわち、まず、受信したレポートパケット262中のブロック404〜410に関してCRC符号のチェックを行い、整合していれば該ブロックをその対応する箇所に上書きする一方、整合していなければ該ブロックの上書きを行わず、そのブロックの再送信を要求する要求データを作成するようにしってもよい。
【0092】
(3)また、各PCで実行される制御データ受信ルーチン(図9)のステップSP100〜SP106においては、当該PCにおける未確認の変更指示に対応する変更データについてのみ、その変更指示の内容と矛盾するか否かがチェックされている。しかしながら、当該PCにおける操作による変更指示以外で、何れかのノードのRWブロックのデータの変更が行われた場合を全てエラーチェックの対象とし、エラーが生じた場合は警告するようにしてもよい。その場合、例えばステップSP101〜SP104を以下のように変更するとよい。
【0093】
・ステップSP1001:ここでは、変更データが「ROブロック404の変更データであるか?」が判定される。「NO」であるときステップSP1002に進み、「YES」であればステップSP108に進む。
・ステップSP1002:ここでは、該変更データと、該PCに記憶されている対応するRWブロック406〜410の値とが比較され、それらが一致するか否かが判定される。一致しないものがあれば、ステップSP106の警告処理が実行される。また、全て一致すれば、ステップSP108に進む。
以上のように処理内容を変更した場合であっても、当該PCにおける未確認の変更指示についてのチェックは正しく行われる。
【0094】
(4)上記実施形態においては、アンプI/Oノードに関して設定状態や物理量の監視、および設定状態のリモート制御を行う例を説明したが、汎用I/Oノード等の他のノードについても同様に監視やリモート制御を行うことができる。
【0095】
【発明の効果】
以上説明したように本発明によれば、制御装置上の操作に応じて変更された内容を、変更直後に、制御装置の保持している設定情報の内容と表示とに反映させることができるから、変更指示の内容を制御装置上で迅速に確認することができる。さらに、変更指示を行った箇所に係る変更データと、設定情報の内容とが異なる場合には変更データに応じて設定情報が更新されるから、ネットワーク上の全ノードが指示した通りに設定されているか否かを迅速に確認できるとともに、制御装置とネットワーク上の全ノードにおいて同一の設定情報を保持していることも保証できるようにもなる。
また、動作モードに応じて警告表示を行うか否かを選択できる構成によれば、例えばモニタ用としてのみ使用する制御装置において警告表示をオフにしておくことにより、エラー警告が何度も表示されたり、表示されるたびにエラー警告を閉じる等の煩わしさがなくなる。
また、変更操作検出過程ないし変更データ受信過程の前後で表示態様を変更する構成によれば、変更指示した内容が実際に対応するノード上で反映されたか否かを一見して確認することができ、また、異なる態様での表示時間によりネットワーク上のノードを制御する時間長(制御の遅れ具合)を確認することができる。
【図面の簡単な説明】
【図1】 本発明の一実施形態の信号伝送システムの全体ブロック図である。
【図2】 図1における各ノードおよびパーソナルコンピュータ(PC)のブロック図である。
【図3】 一実施形態のタイミングチャートである。
【図4】 一実施形態のデータ構造図である。
【図5】 PCにおける表示例を示す図である。
【図6】 各ノードにおける制御データ送信ルーチンのフローチャートである。
【図7】 各ノードにおける制御データ受信ルーチンのフローチャートである。
【図8】 各ノードおよびPCにおける処理プログラムのフローチャートである。
【図9】 PCにおける制御データ受信ルーチンのフローチャートである。
【図10】 指揮ノードにおける処理プログラムのフローチャートである。
【符号の説明】
102:表示器、104:パネル操作子、106:固有I/O部、108:DSP、110:LANI/O部、112:バス、116:PC・I/O部、118:CPU、120:フラッシュメモリ、122:RAM、130:バス、132:シリアルインタフェース、134:入力装置、136:表示装置、138:ハードディスク、140:CPU、142:ROM、144:RAM、200:伝送サイクル、201:開始パケット、220:パケット、240:制御サイクル、250:サイクル開始指示パケット、251〜254:制御データパケット群、260:イベントデータパケット、262:レポートパケット、264:物理量データパケット、266:終了パケット、300:表示ウィンドウ、300−1,300−2,……:監視ポイント枠、302:チャンネル表示部、306:パワーボタン、308:チャンネル名表示部、310:プロテクト表示部、312:出力クリップ表示部、314:出力メータ、316:インピーダンス表示器、318:温度メータ、320:入力メータ、322:ATTフェーダ、324:位相ボタン、326:ミュートボタン、400:設定情報、400−1〜24:ノード領域、402:CRCブロック、404:ROブロック、406〜410:RWブロック、412:物理量ブロック、1000:ネットワーク、1910,1920:パーソナルコンピュータ、1502〜150n,1602〜160n:アンプ、1512〜151n,1612〜161n:スピーカ、1100,1200:汎用I/Oノード、1500,1600:アンプI/Oノード。
Claims (5)
- 所定の伝送サイクル毎に複数チャンネルの音声信号を伝送する音声信号伝送期間と、これら音声信号伝送期間以外の空き時間であって制御データを伝送する制御データ伝送期間とが設けられ複数のノードが接続されたネットワークに対して、前記複数のノードのうちの一のノードに接続される制御装置において実行されるノード制御方法であって、
前記一のノードから前記複数のノードの全ての設定情報を受信する設定情報受信過程と、
前記設定情報の内容を表示装置に表示する過程と、
前記設定情報の一部を変更するように指示する変更操作を検出する変更操作検出過程と、
前記変更操作に応じた変更指示を前記一のノードに通知する過程と、
前記変更操作に応じて前記設定情報の一部を変更する過程と、
該変更された設定情報に基づいて、前記表示装置の表示内容を変更する過程と、
前記一のノードから、前記変更指示に対応する箇所についての変更を行った旨を報告する変更データを受信する変更データ受信過程と、
該受信した変更データと、前記設定情報の一部の内容とが一致するか否かを判定する一致判定過程と、
前記一致判定過程において不一致であると判定されたことを条件として、不一致が発生したことを警告する警告過程と、
前記一致判定過程において不一致であると判定されたことを条件として、前記設定情報の一部の内容を該変更データに一致するように更新する過程と、
前記一致判定過程において不一致であると判定されたことを条件として、前記表示装置における表示内容を該変更データに応じた内容に変更する過程と
を有することを特徴とするノード制御方法。 - 警告を行うか否かの動作モードを設定する動作モード設定過程をさらに有し、
前記警告過程は、該動作モードが警告を行うように設定されており、かつ、前記一致判定過程において不一致であると判定されたことを条件として、前記警告を行う過程であることを特徴とする請求項1記載のノード制御方法。 - 前記変更操作検出過程の後に、前記表示装置における表示内容中、変更するように指示された設定情報に係る特定部分の表示態様を通常の表示態様とは異なるように設定する表示態様変更過程と、
変更データ受信過程の後に、前記特定部分の表示態様を通常の表示態様に戻す表示態様復旧過程と
をさらに有することを特徴とする請求項1記載のノード制御方法。 - 請求項1ないし3の何れかに記載のノード制御方法を実行することを特徴とするノード制御装置。
- 請求項1ないし3の何れかに記載のノード制御方法を実行することを特徴とするプログラム。
Priority Applications (8)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2003141507A JP4023381B2 (ja) | 2003-05-20 | 2003-05-20 | ノード制御方法、ノード制御装置およびプログラム |
EP04102153A EP1482664A3 (en) | 2003-05-20 | 2004-05-17 | Signal transmission apparatus |
US10/850,613 US7606174B2 (en) | 2003-05-20 | 2004-05-19 | Signal transmission apparatus |
CN2007100921533A CN101026905B (zh) | 2003-05-20 | 2004-05-20 | 信号传输装置及方法 |
CNB2004100458266A CN100377623C (zh) | 2003-05-20 | 2004-05-20 | 信号传输装置和信号传输方法 |
CN2009101705225A CN101667876B (zh) | 2003-05-20 | 2004-05-20 | 信号传输装置及方法 |
CN 200420051171 CN2765424Y (zh) | 2003-05-20 | 2004-05-20 | 信号传输装置 |
US12/552,586 US8228802B2 (en) | 2003-05-20 | 2009-09-02 | Signal transmission apparatus |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2003141507A JP4023381B2 (ja) | 2003-05-20 | 2003-05-20 | ノード制御方法、ノード制御装置およびプログラム |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2004349776A JP2004349776A (ja) | 2004-12-09 |
JP4023381B2 true JP4023381B2 (ja) | 2007-12-19 |
Family
ID=33529846
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2003141507A Expired - Fee Related JP4023381B2 (ja) | 2003-05-20 | 2003-05-20 | ノード制御方法、ノード制御装置およびプログラム |
Country Status (2)
Country | Link |
---|---|
JP (1) | JP4023381B2 (ja) |
CN (2) | CN2765424Y (ja) |
Families Citing this family (19)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP4134810B2 (ja) * | 2003-05-20 | 2008-08-20 | ヤマハ株式会社 | 信号伝送システム |
US7742606B2 (en) * | 2004-03-26 | 2010-06-22 | Harman International Industries, Incorporated | System for audio related equipment management |
JP4501746B2 (ja) | 2005-03-25 | 2010-07-14 | ヤマハ株式会社 | ミキサ装置及びそのコンピュータプログラム |
JP4893985B2 (ja) * | 2006-03-22 | 2012-03-07 | ヤマハ株式会社 | オーディオネットワークシステム |
JP4930757B2 (ja) * | 2006-03-22 | 2012-05-16 | ヤマハ株式会社 | オーディオネットワークシステム |
JP4923655B2 (ja) * | 2006-03-22 | 2012-04-25 | ヤマハ株式会社 | オーディオネットワークシステム |
EP2485445B1 (en) | 2006-03-22 | 2013-10-02 | Yamaha Corporation | Method of performing line connection in an audio network system |
JP4858821B2 (ja) * | 2006-03-31 | 2012-01-18 | ヤマハ株式会社 | ドットマトリクス表示器を有するディジタルミキサ |
JP4893664B2 (ja) * | 2008-03-11 | 2012-03-07 | ヤマハ株式会社 | アンプシステム |
JP4893665B2 (ja) * | 2008-03-11 | 2012-03-07 | ヤマハ株式会社 | アンプシステム |
JP4911083B2 (ja) * | 2008-03-11 | 2012-04-04 | ヤマハ株式会社 | アンプシステム |
JP4900291B2 (ja) * | 2008-03-11 | 2012-03-21 | ヤマハ株式会社 | アンプ制御装置、アンプシステム及びプログラム |
JP5157543B2 (ja) * | 2008-03-11 | 2013-03-06 | ヤマハ株式会社 | 複数の音響機器と、該複数の音響機器を制御するための少なくとも1台の制御装置とを接続したネットワークにより構成される音響システム及びプログラム |
JP4953035B2 (ja) * | 2010-03-31 | 2012-06-13 | ヤマハ株式会社 | オーディオネットワークシステム |
JP5141990B2 (ja) * | 2010-03-31 | 2013-02-13 | ヤマハ株式会社 | オーディオネットワークシステム |
JP5338960B2 (ja) * | 2012-10-15 | 2013-11-13 | ヤマハ株式会社 | 複数の音響機器と、該複数の音響機器を制御するための少なくとも1台の制御装置とを接続したネットワークにより構成される音響システム及びプログラム |
CN110175084B (zh) * | 2019-04-04 | 2023-04-25 | 阿里巴巴集团控股有限公司 | 数据变化的监控方法及装置 |
US11405261B1 (en) | 2020-09-10 | 2022-08-02 | Juniper Networks, Inc. | Optimizing bandwidth utilization when exporting telemetry data from a network device |
JP2023155823A (ja) * | 2022-04-11 | 2023-10-23 | 株式会社エフノート | 電子楽器操作装置 |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP3870701B2 (ja) * | 2000-03-10 | 2007-01-24 | 株式会社日立製作所 | コンピュータの階層情報管理方法および装置ならびにその処理プログラムを記録した記録媒体 |
US7899066B2 (en) * | 2001-01-25 | 2011-03-01 | Alcatel Lucent | Distributed intelligence MAC protocols for DWDM ring networks |
JP4023380B2 (ja) * | 2003-05-20 | 2007-12-19 | ヤマハ株式会社 | 信号伝送装置 |
-
2003
- 2003-05-20 JP JP2003141507A patent/JP4023381B2/ja not_active Expired - Fee Related
-
2004
- 2004-05-20 CN CN 200420051171 patent/CN2765424Y/zh not_active Expired - Fee Related
- 2004-05-20 CN CN2009101705225A patent/CN101667876B/zh not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
CN101667876B (zh) | 2012-06-20 |
CN2765424Y (zh) | 2006-03-15 |
JP2004349776A (ja) | 2004-12-09 |
CN101667876A (zh) | 2010-03-10 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP4023381B2 (ja) | ノード制御方法、ノード制御装置およびプログラム | |
EP1482664A2 (en) | Signal transmission apparatus | |
JP4340300B2 (ja) | 伝送装置、試験方法および伝送装置制御プログラム | |
US20080089361A1 (en) | System and method for transferring data | |
US7526526B2 (en) | System and method for transferring data | |
JP2003198550A (ja) | 通信装置及び通信方法 | |
JP4023379B2 (ja) | 信号伝送装置 | |
US7389469B2 (en) | Bus systems, apparatuses, and methods of operating a bus | |
CN112423321A (zh) | 一种基于无线广播的升级方法和装置及电子设备 | |
JP3849670B2 (ja) | 信号伝送装置 | |
JP4023380B2 (ja) | 信号伝送装置 | |
JP4134810B2 (ja) | 信号伝送システム | |
US10075330B1 (en) | Systems and methods for statuses of communication links | |
JP4893665B2 (ja) | アンプシステム | |
JP4893664B2 (ja) | アンプシステム | |
EP1941669A2 (en) | System and method for automatic plug detection | |
JP2002218007A (ja) | 伝送チェック方法及び伝送チェック装置 | |
US20230231739A1 (en) | Inspection apparatus and inspection method | |
US20020067741A1 (en) | Information control method, information processing apparatus, and information control system | |
JP2003032311A (ja) | 制御方法、伝送システム及び伝送装置 | |
JP4911083B2 (ja) | アンプシステム | |
JP3882719B2 (ja) | 信号折返装置及び通信回線試験方法 | |
CN109918270A (zh) | 多服务器系统、侦错方法、系统及电子设备和存储介质 | |
JP2001237910A (ja) | 通信装置及び方法 | |
WO2004057804A1 (ja) | データ伝送システム、データ伝送方法およびデータ伝送装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20050310 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20070605 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20070911 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20070924 |
|
R150 | Certificate of patent or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20101012 Year of fee payment: 3 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20101012 Year of fee payment: 3 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20111012 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20111012 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20121012 Year of fee payment: 5 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20121012 Year of fee payment: 5 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20131012 Year of fee payment: 6 |
|
LAPS | Cancellation because of no payment of annual fees |