JP3849670B2 - Signal transmission device - Google Patents
Signal transmission device Download PDFInfo
- Publication number
- JP3849670B2 JP3849670B2 JP2003141486A JP2003141486A JP3849670B2 JP 3849670 B2 JP3849670 B2 JP 3849670B2 JP 2003141486 A JP2003141486 A JP 2003141486A JP 2003141486 A JP2003141486 A JP 2003141486A JP 3849670 B2 JP3849670 B2 JP 3849670B2
- Authority
- JP
- Japan
- Prior art keywords
- node
- data
- block
- setting information
- nodes
- 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
- 230000008054 signal transmission Effects 0.000 title claims description 16
- 230000005540 biological transmission Effects 0.000 claims description 85
- 230000005236 sound signal Effects 0.000 claims description 13
- 238000000034 method Methods 0.000 description 79
- 238000012544 monitoring process Methods 0.000 description 17
- 238000004891 communication Methods 0.000 description 13
- 238000012545 processing Methods 0.000 description 8
- 238000001514 detection method Methods 0.000 description 7
- 238000012546 transfer Methods 0.000 description 7
- 239000004020 conductor Substances 0.000 description 4
- 238000010586 diagram Methods 0.000 description 4
- 230000004044 response Effects 0.000 description 4
- 102100038445 Claudin-2 Human genes 0.000 description 2
- 102100022465 Methanethiol oxidase Human genes 0.000 description 2
- 101100172132 Mus musculus Eif3a gene Proteins 0.000 description 2
- 238000012790 confirmation Methods 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 238000002360 preparation method Methods 0.000 description 2
- 102100022907 Acrosin-binding protein Human genes 0.000 description 1
- 102100031798 Protein eva-1 homolog A Human genes 0.000 description 1
- 102100040791 Zona pellucida-binding protein 1 Human genes 0.000 description 1
- 230000006399 behavior Effects 0.000 description 1
- 230000002457 bidirectional effect Effects 0.000 description 1
- 230000004397 blinking Effects 0.000 description 1
- 238000006243 chemical reaction Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000005259 measurement Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
Images
Landscapes
- Control Of Amplification And Gain Control (AREA)
- Detection And Prevention Of Errors In Transmission (AREA)
- Small-Scale Networks (AREA)
Description
【0001】
【発明の属する技術分野】
本発明は、ネットワークを介して音声信号を伝送するとともにアンプ等を制御するシステムに用いて好適な信号伝送装置に関する。
【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)であって所定のブロック(404〜410)毎にエラーチェックコード(CRC符号)を付与して成る設定情報(400)を記憶する記憶手段(122)と、他のノードのエラーチェックコードを前記ネットワークを介して他のノードから繰り返し受信するエラーチェックコード受信手段(110)と、受信したエラーチェックコードと前記設定情報(400)内に保持している対応するエラーチェックコードとを比較することにより、前記設定情報の中からエラーが生じたブロックを検知する比較手段と、該エラーが生じたブロックの送信を要求する要求データを、該ブロックに対応する特定のノードへ送信する送信手段と、該ブロックに対する設定情報を該特定のノードから受信する設定情報受信手段と、この受信した設定情報によって、前記ブロックを更新する更新手段と、この更新されたブロックの設定情報に対応する新たなエラーチェックコードを生成し、生成したエラーチェックコードを前記設定情報の対応部分に書き込むエラーチェックコード更新手段とを有することを特徴とする。
さらに、請求項2記載の構成にあっては、請求項1記載の信号伝送装置において、前記エラーチェックコード(CRC符号)のうち、自機の設定状態に対応するエラーチェックコードを前記ネットワークを介して繰り返し送信するエラーチェックコード送信手段(110)と、このエラーチェックコードに対応するブロックについて他のノードから要求データを受信すると、要求されたブロックを当該他のノードに対して送信する設定情報送信手段(110)とをさらに有することを特徴とする。
【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ノード。[0001]
BACKGROUND OF THE INVENTION
The present invention relates to a signal transmission apparatus suitable for use in a system for transmitting an audio signal via a network and controlling an amplifier or the like.
[0002]
[Prior art]
In an acoustic system used in a large concert hall or the like, a plurality of channels of audio signals generated by a mixing system or the like are generated from a large number of speakers via a large number of amplifiers. If a cable for audio signal transmission is laid for each individual channel, the amount of cable becomes large. Therefore, it is desirable to convert audio signals of a plurality of channels into packets (audio data) and transmit them via a network. .
[0003]
Therefore, a technique called Cobra Net (trademark) is known as a method for transmitting audio data of a plurality of channels in real time via a CSMA / CD (carrier sense multiple access / collision detection) network, for example, Ethernet (registered trademark). (Non-Patent Document 1). In the CSMA / CD method, an arbitration method is defined when a collision occurs, that is, when a plurality of nodes start transmission at the same time. However, when a collision occurs, a loss of bandwidth increases. For this reason, in Cobra Net, a voice data transmission period is assigned to each node on the network every predetermined transmission cycle to avoid collision, thereby enabling transmission of voice data of up to 128 channels.
[0004]
Here, an outline of the Cobra Net protocol will be described with reference to FIG. First, in Cobra Net, audio data is output from each node on the network with a “
[0005]
When the
[0006]
For this reason, in Cobra Net, it is possible to perform serial communication using the free time in the
[0007]
For this reason, the packet 220 for serial communication defined in Cobra Net is often not actually used. For example, QSControl (trademark) or Audi (trademark) is known as a technology for transmitting control data to a system using Cobra Net, but these technologies are all from Cobra Net. Each node is controlled through, for example, an independent network dedicated to control data, for example, collecting and controlling the state of the amplifier.
[0008]
[Non-Patent Document 1]
"Audio Networks on Overview" CIRRUS LOGIC, 2001
[0009]
[Problems to be solved by the invention]
However, if a network independent of Cobra Net is used to control an amplifier or the like, both a network cable for audio data and a network cable for control data need to be connected to each node. As a result, the number of cables used is enormous, and there has been a problem that the effort for setting the acoustic system increases.
The present invention has been made in view of the above-described circumstances, and an object thereof is to provide a signal transmission device capable of stably monitoring and controlling an amplifier or the like even when the transmission path of control data is a narrow band. Yes.
[0010]
[Means for Solving the Problems]
In order to solve the above problems, the present invention is characterized by having the following configuration. The parentheses are examples.
In the signal transmission device according to
Furthermore, in the configuration according to
[0011]
DETAILED DESCRIPTION OF THE INVENTION
1. Configuration of the embodiment
1.1. overall structure
Next, the overall configuration of the signal transmission system according to the embodiment of the present invention will be described with reference to FIG.
[0012]
In the illustrated example, “2” general-purpose I /
[0013]
In addition, a plurality of
[0014]
Similarly, the amplifier I /
[0015]
1.2. Configuration of each node
Next, the detailed configuration of each node will be described with reference to FIG.
In the figure,
[0016]
A LAN I /
[0017]
1.3. Configuration of each personal computer
Next, the configuration of each PC will be described with reference to FIG. In the figure,
[0018]
2. Data structure of the embodiment
The
[0019]
In the node area 400-1, 404 is an RO (Read Only) block, and stores read-only data that cannot be instructed to change the state by the PC.
[0020]
Here, in a certain node, any one of the node areas 400-1 to 400-j represents the information of the own node, and therefore this area is referred to as “own node area”. . The other node areas 400-1 to (j-1) and (j + 1) to 24 represent the states of the other nodes and are referred to as "other node areas".
[0021]
The data stored in each of the
[0022]
Also, assuming that the node area 400-1 is an area related to the amplifier I / O node, the
[0023]
Of the physical quantities related to the amplifier connected to the amplifier I / O node, the physical quantity whose frequency of change such as the temperature of the amplifier is low is stored in the
[0024]
3. Data transmission protocol
As described above with reference to FIG. 3A, in Cobra Net, a period during which the serial communication packet 220 can be transmitted in each
[0025]
In the control layer, various control data are transmitted with a “
[0026]
Here, the number of control data packet groups is the same as the number of nodes connected to the network 1000 (“4” in the example of FIG. 1), and control is performed once from each node in one
[0027]
The control data packet group includes an
[0028]
Since the cycle of the
[0029]
3.1. Cycle
Hereinafter, details of each packet described above will be described. First, the cycle
(1) Packet group output order of each node
As described above, the control
[0030]
(2) Contents of physical quantity that each node should output
Although details will be described later, each node can transmit the control
[0031]
3.2.
The
(1) Instruction data
As will be described in detail later, when a PC is connected to a node that transmits a control data packet group (hereinafter referred to as a transmission node), the user does not only transmit to the transmitting node but also all nodes via this PC. Can be instructed to change the setting state (data stored in the RW blocks 406 to 410 of each node area). At that time, the transmission node instructs the other node whose state is to be changed. Data for performing this instruction is referred to as “instruction data”. Note that when a PC changes a node to which the PC is connected (hereinafter referred to as a connection node), instruction data is not output from the node. Also, when a physical quantity monitoring point (desired physical quantity of a desired node) is designated by the PC, the monitoring point is notified to the command node, and as described above, each of the other monitoring points is transmitted via the cycle
[0032]
(2) Change data
When the setting state is changed in the node that has received the instruction data, the changed setting state is notified to all nodes. In addition, when the PC itself is changed by the PC, the setting state after the change is notified to the other nodes. Also, in a node that detects a physical quantity that does not change frequently, such as the “temperature” of the output stage of the amplifier, when a change occurs in the detected physical quantity, the physical quantity after the change is changed to another node. Will be notified. The data for performing these notifications is called “change data”. That is, each node must notify other nodes of the state change by the change data when any of the data in the
[0033]
(3) Request data
A CRC block in any other node region 400-k (k is any one of (1 to (j-1), (j + 1) to 24)) where the local node region of a certain first node is 400-j. If there is a conflict between the contents of 402 and the CRC calculation results of the
[0034]
3.3.
The
(1) Contents of CRC block 402 related to transmission node
The
[0035]
(2) Contents of
As described above, when an error occurs in any block in the node area related to the second node, which is stored in a certain first node, from the first node to the second node Request data is sent. When the second node receives this request data, the contents of the requested block are added to the
[0036]
3.4. Physical
When the physical quantity to be output is designated by the cycle
3.5.
The
[0037]
Four. Operation of the embodiment
4.1. Control data transmission in the node (Fig. 6)
Next, the operation of this embodiment will be described. First, when the control
(1) Immediately after the cycle
The command node outputs a cycle
[0038]
(2) After detecting
As described above, the order in which each node outputs the control data packet group is instructed by the cycle
(3) When receiving instructions from the command node
In the command node, it is constantly monitored whether each node outputs the control data packet group in the correct order. When a packet group from a node that should originally output the packet group cannot be detected, the next group of nodes is instructed to output the packet group. In such a case, the control data packet group is immediately output at the node receiving the instruction.
[0039]
Now, when the process proceeds to step SP6 in FIG. 6, it is determined whether there is event data to be transmitted. That is, when a state change (including a “temperature change” instructed to be measured) occurs in the transmission node, it is necessary to output change data, and request a state change from another node based on an instruction from the PC In order to do so, it is necessary to output the instruction data, and when there is a contradiction in the CRC code, it is necessary to output the request data to other nodes. If any of these cases is met, “YES” is determined here, and the process proceeds to step SP8. In step SP8, an
[0040]
Next, when the process proceeds to step SP10, whether there is a block to be transmitted among the
[0041]
Next, when the process proceeds to step SP14, the
[0042]
Next, when the process proceeds to step SP18, the contents of the “displaying list” received from the command node are checked. That is, since the “displayed list” includes all physical quantities to be output by each node, “physical quantities to be output by the own node and other than temperature” are searched from this list. Next, when the process proceeds to step SP20, it is determined whether there is a physical quantity to be transmitted based on the check result of step SP18. If “YES” is determined here, the process proceeds to step SP 22, a physical
[0043]
4.2. Control data reception at the node (Fig. 7)
Next, when a control data packet group is received via the
[0044]
Next, when the process proceeds to step SP36, it is determined whether or not “request data” for the own node is included in the received packet group. If “YES” is determined here, the process proceeds to step SP38 to prepare for transmission of the requested block among the
[0045]
Next, when the process proceeds to step SP40, it is determined whether or not “instruction data” for the own node is included in the received packet group. If “YES” is determined here, the process proceeds to step SP42, and the content of the own node area 400-j is changed based on the instruction data. Further, when the instruction data indicates, for example, a state change of an amplifier connected to the own node, a control signal is output to the amplifier or the like so as to realize the state change. Next, when the process proceeds to step SP44, preparation for transmitting change data representing the change contents of the own node area 400-j is performed. That is, when the own node becomes the transmission node next time, the change contents of the current own node area 400-j are added to the change data to be included in the
[0046]
Next, when the process proceeds to step SP46, it is determined whether or not “change data”, that is, change data from the transmission node is included in the received packet group. If "YES" is determined here, the process proceeds to step SP47, and the content of the node area 400-k (k is any one of 1 to 24) related to the transmission node is changed based on the change data. Is done.
[0047]
Next, when the process proceeds to step SP48, it is determined whether or not any of the
[0048]
Next, when the processing proceeds to step SP50, it is determined whether or not the physical
[0049]
Next, when the process proceeds to step SP56, it is determined whether or not there is a mismatch among these CRC codes. Here, in the block related to the CRC code that does not match, incorrect information is stored due to a communication error or the like. If "YES" is determined here, the process proceeds to step SP58, request data for requesting the transmission node to retransmit the block is created, and a message indicating that a communication error has occurred is displayed on the display unit. 102. This request data is output via the step SP8 when the own node becomes the transmission node next time.
[0050]
However, if a CRC code mismatch occurs in the
[0051]
Here, a new node can be connected to the
[0052]
4.3. PC connection
When the
[0053]
4.4. Screen selection event (Fig. 8 (a), Fig. 5)
In the application program described above, any one of various screens (windows) referring to the setting information 400 in the PC can be selected and displayed by the
[0054]
If “YES” is determined here, the process proceeds to step SP 72, and the selected screen is displayed on the
[0055]
Here, as an example of a screen for displaying “physical quantities”, an arbitrary channel of an arbitrary amplifier connected to an arbitrary amplifier I / O node is grouped into a plurality of channels, and the operation state of the multiple channels is displayed in units of groups. This will be described with reference to the group display screen (FIG. 5) configured to be displayed. First, in the present embodiment, physical quantity monitoring points are classified into a plurality of “groups”. In the figure,
[0056]
In the monitoring point frame 300-1, 302 is a channel display unit, and the display performed in the monitoring point frame 300-1 relates to which channel of which amplifier connected to which amplifier I / O node. Displays a character string that identifies whether or not it exists. In this character string “AN1-3-2”, the first two characters “AN” mean “amplifier I / O node”, and the next “1” represents the serial number of the amplifier I / O node. The next “3” is the serial number of the amplifier connected to the amplifier I / O node, and the last “2” is the channel number in the amplifier.
[0057]
[0058]
An output
[0059]
A
[0060]
The monitoring point frame 300-2 and the like are configured in the same manner as the monitoring point frame 300-1. The channels of the amplifiers belonging to each group can be freely selected by the user, and arbitrary channels of different nodes and different amplifiers can be displayed in one
[0061]
4.5. Setting change event (Figure 8 (b))
As described above, the user can operate the setting state of each unit by an operation on the PC. In the example of FIG. 5, for example, the setting state corresponding to the
[0062]
In the figure, when the process proceeds to step SP80, the setting information 400 in the PC is changed as instructed. For example, if the attenuation factor is set to “10 dB” by the
[0063]
However, at this point in time, it has not been confirmed that the attenuation amount of the channel corresponding to the actual amplifier has been set to “10 dB”. The display portion (here, ATT fader 322) is displayed by display or blinking display. Next, when the process proceeds to step SP84, a change instruction indicating the change contents (change target node, amplifier, parameter type, change amount, etc.) is transmitted from the PC to the connection node.
[0064]
4.6. Setting change event (Figure 8 (c))
Next, when the change instruction is received at the connection node, a change instruction reception routine shown in FIG. 8C is started at the connection node. In the figure, when the process proceeds to step SP90, it is determined whether or not the received change instruction is a change instruction for the own node (or an amplifier or the like connected to the own node). If "YES" is determined here, the process proceeds to step SP96, and the corresponding part of the own node area 400-j of the connection node is changed.
[0065]
When the changed part is any of the
[0066]
On the other hand, if “NO” is determined in step SP90, the process proceeds to step SP92. Here, instruction data for another node whose state is to be changed is created. In this case, the contents of the setting information 400 are not changed. That is, when this connection node becomes a transmission node, the instruction data is transmitted to another node whose state is to be changed (step SP8 in FIG. 6), and the setting information 400 is changed in the other node (step SP42 in FIG. 7). , SP44). Thereafter, when the other node becomes a transmission node, change data corresponding to the changed state is transmitted to the connection node and other nodes (step SP8 in FIG. 6). Therefore, in the connection node, when the change data (change data related to the location instructed to change by the instruction data in step SP92) is received, the corresponding location of the setting information 400 is changed (FIG. 7). Step SP47).
[0067]
Next, when the process proceeds to step SP94, timing of a predetermined time is started. Here, the “predetermined time” is, for example, a time corresponding to “4 cycles” where the average value of the past control cycles 240 is “1 cycle”. By the way, in the above-described step SP34 (FIG. 7), when control data received from a
[0068]
Here, the reason why the transfer should be waited for will be described. First, a problem that occurs when standby is not performed will be described as an example.
In the example of FIG. 1, a
[0069]
(1) First, when the
(2) In response to this, in the general-purpose I /
(3) Here, when an operation event for setting the
[0070]
(4) In the amplifier I /
(5) When the changed data is received by the amplifier I /
(6) Next, when the amplifier I /
[0071]
(7) In the amplifier I /
(8) When the changed data is received by the amplifier I /
[0072]
When the above operation is viewed from the
[0073]
As described above, if the transfer of the change data corresponding to the change instruction is not waited, no transmission error actually occurs when the signal transmission system is set using a plurality of PCs. Nevertheless, the warning “An error has occurred” will occur frequently. Therefore, in the present embodiment, transfer of change data corresponding to the change instruction is waited for a predetermined time. This “predetermined time (for example, 4 cycles)” is an estimated value of the time from when the PC outputs a change instruction for a node other than the connection node to the connection node until the change data corresponding to this change instruction is received. "be equivalent to.
[0074]
Also, here, “waiting” is different from simply “delaying”, and “when a plurality of change data is received during the waiting time for the corresponding part, it is received last when the waiting time ends. It means "transfer change data". In the above example, the change data “10 dB” and “20 dB” are sequentially received by the
[0075]
On the other hand, the
[0076]
4.7. PC processing when receiving control data (Fig. 9)
When control data is supplied from the connection node to the PC by the processing in step SP34 (FIG. 7), the control data reception routine shown in FIG. 9 is started in the PC.
In the figure, when the process proceeds to step SP100, it is determined whether or not change data is included in the control data. If “YES” is determined here, the process proceeds to step SP101, and the result of the instruction among the change instructions (step SP84 in FIG. 8B) previously output to the connection node is not confirmed. It is determined whether there is a certain change instruction. If "YES" is determined here, the process proceeds to step SP102, and "change data corresponding to the change instruction output earlier" in the received change data, that is, "change instruction for the location related to the change instruction""Change data received first after" is searched. Next, when the process proceeds to step SP103, it is determined whether or not the “change data corresponding to the change instruction” exists.
[0077]
If “YES” is determined in step SP103, the process then proceeds to step SP104, and it is determined whether or not the contents represented by the change data match the contents represented by the change instruction output previously. Here, the determination of “match” indicates that the parameter has been changed according to the change instruction, and the determination of “not match” indicates that the parameter has not been changed according to the change instruction. If it is determined “NO (does not match)”, the process proceeds to step SP106. Here, a warning that “change data is different from the change instruction” is issued as necessary (for example, a pop-up window is displayed). That is, in the PC, an operation mode for determining whether or not to perform such warning display can be set in advance. Only when the operation mode is set to “display”, a warning is displayed on the
[0078]
As described in step SP80 (FIG. 8B), the setting information 400 in the PC has already been updated to the contents reflecting the change instruction. Therefore, the coincidence determination in step SP104 may be performed by comparing the data (comparing the contents of the
[0079]
If “NO” is determined in step SP101 or SP103, “YES” is determined in step SP104, or if the warning process in step SP106 is completed, the process proceeds to step SP108, and the received change data is received. The contents of the setting information 400 in the PC are changed based on the above. That is, the contents of the
[0080]
Further, as described above in step SP82 (FIG. 8B), the display portion of the setting corresponding to the unconfirmed change instruction is displayed in a display mode different from normal. When the data corresponding to the unconfirmed change instruction is included in the current change data, the display form of the display portion is returned from the display form indicating unconfirmed to the normal display form by step SP108.
[0081]
Next, when the process proceeds to step SP109, it is determined whether or not any of the
[0082]
Next, when the process proceeds to step SP110, it is determined whether or not the data being displayed on the
[0083]
Next, when the process proceeds to step SP126, a request is output to the connection node of the PC so as to retransmit the data at the location where the CRC code mismatch has occurred.
[0084]
Next, when the process proceeds to step SP119, it is determined whether or not the physical
[0085]
4.8. Processing at the command node
4.8.1. Fault detection for existing nodes
In the command node, it is monitored whether another node is transmitting the control data packet group in the transmission order instructed in the cycle
[0086]
In such a case, the failure node detection routine of FIG. 10A is started in the command node. In the figure, when the process proceeds to step SP130, it is determined whether or not the faulty node is the last node in the transmission order. If “NO” is determined here, the process proceeds to step SP132 to instruct the transmission of the control data packet group to the node to which the transmission order is assigned next to the failed node. Next, when the process proceeds to step SP134, the transmission order is changed so as to exclude the failed node. That is, a transmission order list corresponding to a new transmission order obtained by removing the faulty node from the original transmission order is created. Therefore, in the
[0087]
4.8.2. New node detection
As described above, a new node can be connected to the
[0088]
4.8.3. End packet detection processing
Further, in the command node, every time the
[0089]
If "NO" is determined here, the process proceeds to step SP154, and the process waits until the shortest time elapses. If it is determined as “YES”, step SP154 is skipped. Next, when the process proceeds to step SP156, the process waits for a short time to detect a new node (so that the new node can notify the command node of the connection of the new node as described above). The When the process proceeds to step SP158, a cycle
[0090]
Five. Modified example
The present invention is not limited to the above-described embodiment, and various modifications can be made as follows, for example.
(1) In each of the above embodiments, various processes are executed by a program that operates on a node and an application program that operates on a personal computer, but only these programs are stored in a recording medium such as a CD-ROM or a flexible disk. Then, it can also be distributed through a transmission line.
[0091]
(2) In the control data reception routine (FIG. 7) executed by each node of the above embodiment, when any of the
[0092]
(3) Further, in steps SP100 to SP106 of the control data reception routine (FIG. 9) executed in each PC, only the change data corresponding to the unconfirmed change instruction in the PC is inconsistent with the contents of the change instruction. It is checked whether or not. However, any change in the data of the RW block of any node other than the change instruction by the operation on the PC may be subjected to error check, and a warning may be issued if an error occurs. In that case, for example, steps SP101 to SP104 may be changed as follows.
[0093]
Step SP1001: Here, it is determined whether the change data is “change data of RO block 404?”. If “NO”, the process proceeds to step SP1002, and if “YES”, the process proceeds to step SP108.
Step SP1002: Here, the change data is compared with the values of the corresponding RW blocks 406 to 410 stored in the PC, and it is determined whether or not they match. If there is a mismatch, the warning process in step SP106 is executed. If all match, the process proceeds to step SP108.
Even when the processing content is changed as described above, an unconfirmed change instruction on the PC is correctly checked.
[0094]
(4) In the above embodiment, an example in which the setting state and physical quantity are monitored and the setting state is remotely controlled with respect to the amplifier I / O node has been described. The same applies to other nodes such as general-purpose I / O nodes. Monitoring and remote control can be performed.
[0095]
【The invention's effect】
As described above, according to the present invention, since the signal transmission apparatus requests other nodes to transmit only the necessary blocks according to the comparison result of the error check code, while suppressing the amount of data flowing through the network as much as possible. The latest setting information of all the nodes can be received efficiently, and the data communication on the network can be stabilized. Further, even if the setting information transmitted from another node cannot be received due to a communication error or the like, the setting information can be supplemented thereafter while suppressing the amount of data flowing through the network as much as possible.
[Brief description of the drawings]
FIG. 1 is an overall block diagram of a signal transmission system according to an embodiment of the present invention.
2 is a block diagram of each node and personal computer (PC) in FIG. 1. FIG.
FIG. 3 is a timing chart of an embodiment.
FIG. 4 is a data structure diagram of one embodiment.
FIG. 5 is a diagram showing a display example on a PC.
FIG. 6 is a flowchart of a control data transmission routine in each node.
FIG. 7 is a flowchart of a control data reception routine in each node.
FIG. 8 is a flowchart of a processing program in each node and PC.
FIG. 9 is a flowchart of a control data reception routine in the PC.
FIG. 10 is a flowchart of a processing program in a command node.
[Explanation of symbols]
102: Display, 104: Panel operator, 106: Specific I / O unit, 108: DSP, 110: LAN I / O unit, 112: Bus, 116: PC / I / O unit, 118: CPU, 120: Flash Memory: 122: RAM, 130: Bus, 132: Serial interface, 134: Input device, 136: Display device, 138: Hard disk, 140: CPU, 142: ROM, 144: RAM, 200: Transmission cycle, 201: Start packet 220: packet, 240: control cycle, 250: cycle start instruction packet, 251 to 254: control data packet group, 260: event data packet, 262: report packet, 264: physical quantity data packet, 266: end packet, 300: Display window, 300-1, 300-2, ... Monitoring point frame, 302: Channel display section, 306: Power button, 308: Channel name display section, 310: Protection display section, 312: Output clip display section, 314: Output meter, 316: Impedance display, 318: Temperature meter 320: Input meter 322: ATT fader 324: Phase button 326: Mute button 400: Setting information 400-1-24: Node area 402: CRC block 404: RO block 406-410: RW Block, 412: physical quantity block, 1000: network, 1910, 1920: personal computer, 1502-150n, 1602-160n: amplifier, 1512-151n, 1612-161n: speaker, 1100, 1200: general-purpose I / O node, 1500, 600: amplifier I / O node.
Claims (2)
前記複数のノードの全ての設定情報であって所定のブロック毎にエラーチェックコードを付与して成る設定情報を記憶する記憶手段と、
他のノードのエラーチェックコードを前記ネットワークを介して他のノードから繰り返し受信するエラーチェックコード受信手段と、
受信したエラーチェックコードと前記設定情報内に保持している対応するエラーチェックコードとを比較することにより、前記設定情報の中からエラーが生じたブロックを検知する比較手段と、
該エラーが生じたブロックの送信を要求する要求データを、該ブロックに対応する特定のノードへ送信する送信手段と、
該ブロックに対する設定情報を該特定のノードから受信する設定情報受信手段と、
この受信した設定情報によって、前記ブロックを更新する更新手段と、
この更新されたブロックの設定情報に対応する新たなエラーチェックコードを生成し、生成したエラーチェックコードを前記設定情報の対応部分に書き込むエラーチェックコード更新手段と
を有することを特徴とする信号伝送装置。For a network provided with an audio signal transmission period for transmitting audio signals of a plurality of channels every predetermined transmission cycle and a control data transmission period for transmitting control data that is idle time other than these audio signal transmission periods In a signal transmission device connected as one of a plurality of nodes,
Storage means for storing all the setting information of the plurality of nodes and setting information formed by adding an error check code for each predetermined block;
Error check code receiving means for repeatedly receiving error check codes of other nodes from other nodes via the network;
Comparing means for detecting a block in which an error has occurred in the setting information by comparing the received error check code and a corresponding error check code held in the setting information;
Transmitting means for transmitting request data requesting transmission of the block in which the error has occurred to a specific node corresponding to the block;
Setting information receiving means for receiving setting information for the block from the specific node;
Update means for updating the block according to the received setting information;
An error check code updating unit for generating a new error check code corresponding to the updated setting information of the block and writing the generated error check code in a corresponding part of the setting information. .
このエラーチェックコードに対応するブロックについて他のノードから要求データを受信すると、要求されたブロックを当該他のノードに対して送信する設定情報送信手段と
をさらに有することを特徴とする請求項1記載の信号伝送装置。Among the error check codes, an error check code transmitting means for repeatedly transmitting an error check code corresponding to the setting state of the own device via the network;
If the block corresponding to the error check code for receiving the request data from other nodes, according to claim 1, wherein the requested block, characterized by further comprising a setting information transmission unit to be transmitted to the other nodes signal transmission device.
Priority Applications (7)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2003141486A JP3849670B2 (en) | 2003-05-20 | 2003-05-20 | Signal transmission device |
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 |
CN2009101705225A CN101667876B (en) | 2003-05-20 | 2004-05-20 | Signal transmission apparatus and method |
CNB2004100458266A CN100377623C (en) | 2003-05-20 | 2004-05-20 | Signal transmission device |
CN2007100921533A CN101026905B (en) | 2003-05-20 | 2004-05-20 | Signal transmission device and method |
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 |
---|---|---|---|
JP2003141486A JP3849670B2 (en) | 2003-05-20 | 2003-05-20 | Signal transmission device |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2004349772A JP2004349772A (en) | 2004-12-09 |
JP3849670B2 true JP3849670B2 (en) | 2006-11-22 |
Family
ID=33529829
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2003141486A Expired - Fee Related JP3849670B2 (en) | 2003-05-20 | 2003-05-20 | Signal transmission device |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP3849670B2 (en) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP4893985B2 (en) * | 2006-03-22 | 2012-03-07 | ヤマハ株式会社 | Audio network system |
JP6807113B2 (en) * | 2019-06-07 | 2021-01-06 | ソナス株式会社 | Communication system, communication method and communication device |
-
2003
- 2003-05-20 JP JP2003141486A patent/JP3849670B2/en not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
JP2004349772A (en) | 2004-12-09 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP4023381B2 (en) | Node control method, node control apparatus, and program | |
EP1482664A2 (en) | Signal transmission apparatus | |
JP4340300B2 (en) | Transmission apparatus, test method, and transmission apparatus control program | |
US20070050479A1 (en) | Content receiving apparatus and content receiving method | |
JP4899568B2 (en) | Network system and acoustic signal processing apparatus | |
JP2003198550A (en) | Communication device and communication method | |
JP2955555B1 (en) | Network system | |
US7389469B2 (en) | Bus systems, apparatuses, and methods of operating a bus | |
JP4023379B2 (en) | Signal transmission device | |
JP3849670B2 (en) | Signal transmission device | |
JP4023380B2 (en) | Signal transmission device | |
JP4134810B2 (en) | Signal transmission system | |
US20120008628A1 (en) | Network communication apparatus, communication method, and integrated circuit | |
US20010024445A1 (en) | Communication system, communication device and communication method | |
CN102195967A (en) | Content output apparatus, content playback system, content output method, and program | |
WO2007044463A2 (en) | System and method for automatic plug detection | |
JPH10164113A (en) | System, device and method for data communication | |
JP2002218007A (en) | Transmission check method and transmission check device | |
EP1182827B1 (en) | Information control method, information processing apparatus, and information control system | |
JP3800058B2 (en) | Gateway device | |
JP2003032311A (en) | Control method, transmission system and transmitter | |
WO2004057804A1 (en) | Data transmission system, data transmission method, and data transmission apparatus | |
JP2001237910A (en) | Method and device for communication | |
KR20210045186A (en) | Recording Medium | |
CN109918270A (en) | Multi-server system, debugging method, system and electronic equipment and storage medium |
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: 20060516 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20060606 |
|
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: 20060808 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20060821 |
|
R150 | Certificate of patent or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
S531 | Written request for registration of change of domicile |
Free format text: JAPANESE INTERMEDIATE CODE: R313532 |
|
R350 | Written notification of registration of transfer |
Free format text: JAPANESE INTERMEDIATE CODE: R350 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20100908 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20100908 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110908 Year of fee payment: 5 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120908 Year of fee payment: 6 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130908 Year of fee payment: 7 |
|
LAPS | Cancellation because of no payment of annual fees |