JP6096201B2 - チェックサムを有する改良されたdmx512通信のための方法及び装置 - Google Patents

チェックサムを有する改良されたdmx512通信のための方法及び装置 Download PDF

Info

Publication number
JP6096201B2
JP6096201B2 JP2014534025A JP2014534025A JP6096201B2 JP 6096201 B2 JP6096201 B2 JP 6096201B2 JP 2014534025 A JP2014534025 A JP 2014534025A JP 2014534025 A JP2014534025 A JP 2014534025A JP 6096201 B2 JP6096201 B2 JP 6096201B2
Authority
JP
Japan
Prior art keywords
dmx
checksum
bytes
dmx slave
packet
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
Application number
JP2014534025A
Other languages
English (en)
Other versions
JP2014532264A (ja
Inventor
レナート イセブート
レナート イセブート
ジョン ブレアン ミルズ
ジョン ブレアン ミルズ
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Signify Holding BV
Original Assignee
Signify Holding BV
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Signify Holding BV filed Critical Signify Holding BV
Publication of JP2014532264A publication Critical patent/JP2014532264A/ja
Application granted granted Critical
Publication of JP6096201B2 publication Critical patent/JP6096201B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/08Error detection or correction by redundancy in data representation, e.g. by using checking codes
    • G06F11/10Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's
    • G06F11/1004Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's to protect a block of data words, e.g. CRC or checksum
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/22Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing
    • G06F11/2257Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing using expert systems
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L49/00Packet switching elements
    • H04L49/10Packet switching elements characterised by the switching fabric construction
    • H04L49/103Packet switching elements characterised by the switching fabric construction using a shared central buffer; using a shared memory
    • HELECTRICITY
    • H05ELECTRIC TECHNIQUES NOT OTHERWISE PROVIDED FOR
    • H05BELECTRIC HEATING; ELECTRIC LIGHT SOURCES NOT OTHERWISE PROVIDED FOR; CIRCUIT ARRANGEMENTS FOR ELECTRIC LIGHT SOURCES, IN GENERAL
    • H05B47/00Circuit arrangements for operating light sources in general, i.e. where the type of light source is not relevant
    • H05B47/10Controlling the light source
    • H05B47/175Controlling the light source by remote control

Description

[0001]本発明は、一般的には通信プロトコルの拡張に関する方法及び装置に向けられている。より具体的には、本明細書に開示される多様な方法及び装置は、DMX通信プロトコルの拡張に関する方法及び装置に関する。
[0002]DMX通信プロトコルは、照明産業において、いくつかのプログラム可能な照明アプリケーションのために慣習的に用いられている照明コマンドプロトコルであり、現行では、DMX512プロトコル及びDMX512−Aプロトコルを含む。DMXプロトコルにおいて、照明関連指示は、最大で512バイトのデータを含むパケットにフォーマットされた制御データとして照明ユニットに送信することができ、各データバイトは、0〜255のデジタル値を表す8ビットによって構成されている。これらの512データバイトは、「スタートコード」バイト(典型的には0x00)によって先行される。
[0003]DMXプロトコルにおいて、所与のパケット内の最大で512バイトの個々のデータバイトは、特定の照明ユニットのための照明関連コマンドとして意図されている。例えば、個々のデータバイトは、マルチチャネル照明ユニットの特定の「チャネル」用のコマンドとして意図されてもよい。デジタル値0は、照明ユニットの所与のチャネルに発光出力がないこと(すなわち、チャネルオフ)を意味し、デジタル値255は、照明ユニットの所与のチャネルのフル発光出力(100%利用可能電力)(チャネルフルオン)を意味する。例えば、ここで、赤色、緑色、及び青色LEDに基づく3チャネル照明ユニット(すなわち、「R−G−B」照明ユニット)を考えると、DMXプロトコル内の照明コマンドは、赤色チャネルコマンド、緑色チャネルコマンド、及び青色チャネルコマンドのそれぞれを、0〜255の値を表す8ビットデータ(すなわち、データバイト)として指定することができる。任意の1つのカラーチャネルの最大値255は、照明ユニットのプロセッサに、対応する光源をチャネルの最大利用電力(すなわち、100%)で動作するように制御することを指示し、これにより、その色の最大利用可能放射電力を生成する(R−G−B照明ユニットのためのこのようなコマンド構造は、通常、24ビットカラーコントロールと呼ばれる)。したがって、フォーマット[R,G,B]=[255,255,255]のコマンドは、照明ユニットに、赤色光、緑色光、及び青色光のそれぞれに対して最大放射電力を発生させる(これによって、白色光をつくる)。
[0004]また、例えば、個々のデータバイトの全て又は側面は、照明ユニット及び/又は他のDMXスレーブデバイスの1つ以上の付加的な側面を制御するためのコマンドとして意図されてもよい。例えば、1つ以上のデータバイトは、照明ユニットのパターン、ピント、プリズム、パン、ティルト、回転速度、及び/又はアニメーションを制御し得る。また、例えば、1つ以上のデータバイトが、照明ユニットの調光シャッター、カラーホイール、及び/又はフレーミングレンズを制御してもよい。当業者によって理解されるように、DMXプロトコルは、さらに又は代わりに、1つ以上の照明ユニット及び/又は他のDMXスレーブデバイスの他の側面を制御するために利用されてもよい。
[0005]したがって、DMXプロトコルを使用する所与の通信リンクは、慣習的に最大で512の異なる照明ユニットチャネルをサポートできる。DMXプロトコルにフォーマットされた通信を受信するよう設計された所与の照明ユニットは、通常、パケット内の最大512データバイトの全シーケンス中の所望のデータバイトの特定の位置に基づいて、パケット内の512バイトのうち、照明ユニットのチャネル数に対応する1つ以上の特定のデータバイトのみに応答し(例えば、3チャネル照明ユニットの例においては、3つのバイトが照明ユニットによって使用される)、他のバイトは無視するよう構成されている。これを実現するために、DMXベース照明ユニットは、所与のDMXパケットにおいて照明ユニットが応答するデータバイトの特定の位置を決定するためにユーザ/インストーラによって手動で設定され得るアドレス選択機構を備えてもよい。
[0006]DMXプロトコルのいくつかの実施形態は、プロトコルの元の範囲の外側のプロトコルの使用、及び/又はプロトコルの能力の伸長を含む。例えば、いくつかの実施形態において、DMXプロトコルは無線ネットワーク上で使用されている。また、例えば、いくつかの実施形態においては、DMXプロトコルは、人々及び/又は所有物(資産)をリスクにかける照明ユニットを制御するために利用できる(例えば、人々の周辺で利用される、眼に損傷を与えるレーザー発光照明ユニット)。このような実施形態において、及びDMXプロトコルの他の実施形態において、照明ユニットの信頼性、機能性、及び/又は安全性を向上させるためにエラー検出訂正を実行することが望ましい。
[0007]DMX512プロトコルは、エラー検出を備えない。DMX512−Aプロトコルは、System Information Packet(SIP)の使用によってエラー検出に言及する。SIPは、交互のスタートコード(例えば、0x00ではない)を有し、データリンク上に、直前のスタートコードパケットに関連するチェックサムデータを他の制御情報とともに含む。SIPはある程度のエラー検出を実行するが、その利用のためには、全てのDMXスレーブデバイスがDMX512−Aプロトコルと互換性を有さなければならない。また、SIP内に含まれるチェックサムは、チェックサムの複雑さの割には多くのバイトを含む別個のパケットで送信されなければならない、単純な加算チェックサムである。
[0008]したがって、当該技術分野において、改良DMXスレーブデバイスによるエラー検出を可能にし、非改良DMXスレーブデバイスとの完全な互換性を維持し、選択任意でSIPの1つ以上の付加的な欠点を克服する拡張DMXプロトコルに関する方法及び装置を提供するニーズが存在する。
[0009]本開示は、後方互換性を有する改良DMX通信のための方法及び装置に向けられる。例えば、いくつかの実施形態において、DMXプロトコルの拡張に関する方法及び装置は、非改良DMXスレーブデバイスとの完全な互換性を維持しつつ、改良DMXスレーブデバイスによるエラー検出を可能にする。当該方法及び装置は、スタートコードパケット内に組み込まれた、スタートコードパケット内の複数のバイトのチェックサムであるパケットチェックサムバイトを利用し得る。いくつかの変形例において、任意で、スタートコードパケット内の複数のバイトをインターリーブ方式に従ってインターリーブしてもよい。
[0010]一般的に、一側面において、後方互換性を維持しつつ改良DMX通信を提供する方法は、複数の改良DMXスレーブをDMXネットワークに接続するステップを含む。複数の改良DMXスレーブは、対応する複数のDMXスレーブ制御アドレスを有する。当該方法は、さらに、複数のバイトを有するDMXスタートコードパケットをコンパイルするステップを含む。複数のバイトは、複数の改良DMXスレーブ制御アドレスに対応する複数のDMXスレーブ指示バイト、及び少なくとも1つのパケットチェックサムバイトを含む。パケットチェックサムバイトは、スタートコードパケット内に組み込まれた、スタートコードパケットの複数のバイトのチェックサムである。当該方法は、さらに、スタートコードパケットをDMXネットワーク上で送信するステップと、各改良DMXスレーブにおいてスタートコードパケットを受信するステップと、各改良DMXスレーブにおいてパケットチェックサムを含む複数のバイトをバッファリングするステップと、各改良DMXスレーブにおいて、バッファリングされたバイトの受信されたチェックサムを計算し、受信されたチェックサムをパケットチェックサムと比較するステップとを含む。各改良DMXスレーブは、計算された受信チェックサムがパケットチェックサムと実質的に一致する場合のみ、改良DMXスレーブ指示バイトのうちの対応する少なくとも1つに少なくとも選択的に従って動作する。
[0011]いくつかの実施形態において、複数の改良DMXスレーブ指示バイトは、複数の改良DMXスレーブのための動作指示に対応する複数のビットを任意で有し得る、インターリーブされた複数のDMXスレーブ指示バイトを含む。これらの実施形態のいくつかのバージョンにおいて、DMXスタートコードの複数のバイトは、さらに、非改良DMXスレーブ制御アドレスに対応する、インターリーブされていない少なくとも1つの非改良DMXスレーブ指示バイトを含む。
[0012]いくつかの実施形態において、当該方法は、さらに、DMXネットワーク上でスタートコードパケットを送信する前に、インターリーブ方式に従って、複数のDMXスレーブ指示バイト間で複数の個別のビットをインターリーブするステップを含む。これらの実施形態のいくつかのバージョンにおいて、複数の改良DMXスレーブ指示バイトは、第1、第2、及び第3改良DMXスレーブ指示バイトを含む。第1、第2、及び第3改良DMXスレーブ指示バイトのそれぞれは、複数の改良DMXスレーブのうちの第1改良DMXスレーブに対応する第1改良DMXスレーブ指示ビット、及び複数の改良DMXスレーブのうちの第2改良DMXスレーブに対応する第2改良DMXスレーブ指示ビットを含む。
[0013]いくつかの実施形態において、当該方法は、さらに、受信されたチェックサムの計算に関連するデータを含む別個の情報パケットをDMXスレーブに送信するステップを含む。
[0014]いくつかの実施形態において、受信されたチェックサムの計算に関連するデータは、改良DMXスレーブ上に予めロードされる。
[0015]いくつかの実施形態において、パケットチェックサムバイトはスタートコードパケットの末尾に設けられる。
[0016]いくつかの実施形態において、チェックサムは、スタートコードパケットの全ての制御指示のチェックサムである。
[0017]一般的に、他の側面において、後方互換性を維持しつつ改良DMX通信を提供する方法は、少なくとも1つの改良DMXスレーブをDMXネットワークに接続し、少なくとも1つの非改良DMXスレーブをDMXネットワークに接続するステップを含む。改良DMXスレーブは、少なくとも1つの改良DMXスレーブ制御アドレスを有し、非改良DMXスレーブは、少なくとも1つの非改良DMXスレーブ制御アドレスを有する。また、当該方法は、複数のバイトを有するスタートコードパケットをコンパイルするステップを含む。複数のバイトは、改良DMXスレーブ制御アドレスに対応する少なくとも1つの改良DMXスレーブ指示バイト、非改良DMXスレーブ制御アドレスに対応する少なくとも1つの非改良DMXスレーブ指示バイト、及び少なくとも1つのパケットチェックサムバイトを含む。パケットチェックサムバイトは、スタートコードパケット内に組み込まれた、スタートコードパケットの複数のバイトのチェックサムである。当該方法は、さらに、スタートコードパケットをDMXネットワーク上で送信するステップと、改良DMXスレーブにおいてスタートコードパケットを受信するステップと、改良DMXスレーブにおいてパケットチェックサムを含む複数のバイトをバッファリングするステップと、改良DMXスレーブにおいて、バッファリングされたバイトの受信されたチェックサムを計算し、受信されたチェックサムをパケットチェックサムと比較するステップとを含む。改良DMXスレーブは、受信されたチェックサムとパケットチェックサムとが実質的に一致する場合のみ、改良DMXスレーブ指示バイトに少なくとも選択的に従う。非改良DMXスレーブは、パケットチェックサムとは無関係に、任意の受信された非改良DMXスレーブ指示バイトに従う。
[0018]いくつかの実施形態において、少なくとも1つの改良DMXスレーブ指示バイトは、第1改良DMXスレーブ指示バイト及び第2改良DMXスレーブ指示バイトを含む。
[0019]いくつかの実施形態において、改良DMXスレーブは、受信されたチェックサムとパケットチェックサムとが実質的に一致する場合、第1改良DMXスレーブ指示バイトにのみ従って動作するが、受信されたチェックサムとパケットチェックサムとが実質的に一致しない場合でさえ、第2改良DMXスレーブ指示バイトに従って動作する。これらの実施形態のいくつかのバージョンにおいて、当該方法は、さらに、DMXネットワーク上でスタートコードパケットを送信する前に、インターリーブ方式に従って、第1改良DMXスレーブ指示バイト及び第2改良DMXスレーブ指示バイト内の複数の個別のビットをインターリーブすることを含む。これらの実施形態のいくつかのバージョンにおいて、当該方法は、さらに、インターリーブ方式に関連するデータを含む製造者特有パケットをDMXスレーブに送信するステップを含む。
[0020]いくつかの実施形態において、少なくとも1つの改良DMXスレーブは、第1改良DMXスレーブ及び第2改良DMXスレーブを含む。これらの実施形態のいくつかのバージョンにおいて、少なくとも1つの改良DMXスレーブ指示バイトは、第1、第2、及び第3改良DMXスレーブ指示バイトを含み、第1、第2、及び第3改良DMXスレーブ指示バイトのそれぞれは、第1改良DMXスレーブに対応する第1改良DMXスレーブ指示ビット、及び第2改良DMXスレーブに対応する第2改良DMXスレーブ指示ビットを含む。
[0021]一般的に、他の側面において、改良DMX通信を受信及び解析する方法は、複数のバイトを有するスタートコードパケットを受信するステップを含む。複数のバイトは、改良DMXスレーブに対応する少なくとも1つの改良DMXスレーブ指示バイト、及び少なくとも1つのパケットチェックサムバイトを含む。パケットチェックサムバイトは、スタートコードパケット内に組み込まれた、スタートコードパケットの複数のバイトのチェックサムである。当該方法は、さらに、パケットチェックサムを含む複数のバイトをバッファリングするステップと、バッファリングされたバイトの受信されたチェックサムを計算し、受信されたチェックサムをパケットチェックサムと比較するステップと、受信されたチェックサムとパケットチェックサムとが実質的に一致する場合のみ、改良DMXスレーブ指示バイトに少なくとも選択的に従って動作するステップとを含む。
[0022]いくつかの実施形態において、少なくとも1つのDMXスレーブ指示バイトは、インターリーブされた第1改良DMXスレーブ指示バイト、及びインターリーブされた第2改良DMXスレーブ指示バイトを含み、当該方法は、さらに、第1改良DMXスレーブ指示バイト及び第2改良DMXスレーブ指示バイトをデインターリーブするステップを含む。
[0023]いくつかの実施形態において、複数のDMXスレーブ指示バイトが含まれ、当該方法は、さらに、受信されたチェックサムとパケットチェックサムとが実質的に一致する場合のみ、いくつかの改良DMXスレーブ指示バイトに少なくとも選択に従い、受信されたチェックサムとパケットチェックサムとが実質的に一致しない場合でさえ、複数の改良DMX指示バイトの他の指示バイトに少なくとも選択的に従う。
[0024]一般的に、他の側面において、後方互換性を維持しつつ改良DMX通信を提供する方法は、複数のバイトを有するスタートコードパケットをコンパイルするステップを含む。複数のバイトは、改良DMXスレーブ制御アドレスに対応する少なくとも1つの改良DMXスレーブ指示バイト、非改良DMXスレーブ制御アドレスに対応する少なくとも1つの非改良DMXスレーブ指示バイト、及び少なくとも1つのパケットチェックサムバイトを含む。パケットチェックサムバイトは、スタートコードパケットに組み込まれた、スタートコードパケットの複数のバイトのチェックサムである。当該方法は、さらに、スタートコードパケットをDMXネットワーク上で送信するステップを含む。
[0025]本開示の目的のために本明細書で使用される限り、用語「LED」は、あらゆるエレクトロルミネセントダイオード、又は、電気信号に応じて発光可能な他のタイプのキャリア注入/結合ベースシステムを含むと理解されたい。したがって、用語LEDは、限定はされないが、電流に応じて発光する様々な半導体ベース構造、発光ポリマー、有機発光ダイオード(OLED)、エレクトロルミネセントストリップ等を含む。特に、用語LEDは、赤外線スペクトル、紫外線スペクトル、及び可視スペクトル(一般的に、放射波長400〜700nmを含む)の様々な部分のうちの1つ以上を放射するよう構成され得るあらゆる種類の発光ダイオード(半導体及び有機発光ダイオードを含む)を指す。LEDのいくつかの例は、限定されないが、様々な種類の赤外線LED、紫外線LED、赤色LED、青色LED、緑色LED、黄色LED、こはく色LED、橙色LED、及び白色LED(下記においてより詳細に説明)を含む。また、LEDは、所与のスペクトルに対して様々なバンド幅(例えば、狭いバンド幅、広いバンド幅)(例えば、半値全幅FWHM)を有し、また所与の一般的な色カテゴリ内に様々な主波長を有する放射線を生成するよう構成及び/又は制御されてもよいことを理解されたい。
[0026]例えば、基本的に白色光を生成するよう構成されたLED(例えば、白色LED)の一実施形態は、組み合わされて混ざると白色光を形成する、それぞれが異なるエレクトロルミネセンススペクラムを出射する複数のダイを含んでもよい。他の実施形態において、白色光LEDは、第1スペクトラムを有するエレクトロルミネセンスを異なる第2スペクトルに変換する蛍光体材料を伴ってもよい。この実施形態の一例において、比較的短い波長及び狭いバンド幅スペクトルを有するエレクトロルミネセンスは蛍光体材料に(光を)「注入」し、蛍光体材料は、いくらか幅が広いスペクトルを有する、より長い波長の放射線を放射する。
[0027]また、用語LEDは、LEDの物理的及び/又は電気的なパッケージタイプを限定しないことを理解されたい。例えば、上記のように、LEDは、それぞれが異なるスペクトルの放射線を出射するよう構成された複数のダイ(例えば、個別に制御可能又は不可能である)を有する単一の発光デバイスを指してもよい。また、LEDは、LED(例えば、白色LEDの一種)の不可欠な部品として考えられる蛍光体を伴ってもよい。一般的に、用語LEDは、パッケージLED、非パッケージLED、表面実装LED、チップオンボードLED、T−パッケージ実装LED、放射状パッケージLED、パワーパッケージLED、何らかの種類の包装及び/又は光学素子(例えば、拡散レンズ)を含むLED等を指してもよい。
[0028]用語「光源」は、限定はされないが、LEDベース光源(上記で定義された1つ以上のLEDを含む)、白熱光源(例えば、フィラメントランプ、ハロゲンランプ)、蛍光源、燐光源、高輝度放電(HID)源(例えば、ナトリウムランプ、水銀ランプ、及びメタルハライドランプ)、レーザ、他の種類の電子発光源、高熱発光源(例えば炎)、キャンドル発光源(例えば、ガスマントル、炭素アーク放射線源)、光ルミネセンス源(例えば、放電源)、電子飽和を利用するカソード発光源、ガルバノ発光源、水晶発光源、キネ(kine−)発光源、熱発光源、摩擦発光源、ソノルミネッセンス発光源、放射発光源、及び発光ポリマーを含む、様々な放射線源のうちの任意の1つ以上を指すと理解されたい。
[0029]本明細書において、用語「照明器具」は、特定のフォームファクタ、アセンブリ、又はパッケージの1つ以上照明ユニットの実装又は構成を指す。本明細書において、用語「照明ユニット」は、同じ又は異なる種類の1つ以上の光源を含む装置を指す。所与の照明ユニットは、光源の様々な実装配置、筐体/ハウジングの配置及び形状、並びに/又は電気的及び機械的接続構成のうちの任意の1つを有し得る。また、所与の照明ユニットは、任意で、光源の動作に関連する様々な他の部品(例えば、制御回路)を伴ってもよい(例えば、含む、結合される、及び/又はともにパッケージングされる)。「LEDベース照明ユニット」は、上記のような1つ以上のLEDベース光源を、単独で又は他の非LEDベース光源と組み合わせて含む照明ユニットを指す。「マルチチャネル」照明ユニットは、それぞれが異なる放射スペクトルを発生するように構成された少なくとも2つの光源を含むLEDベース又は非LEDベース照明ユニットを指し、異なるスペクトルのそれぞれは、マルチチャネル照明ユニットの「チャネル」と呼ばれ得る。
[0030]本明細書において、用語「コントローラ」は、一般的には1つ以上の光源の動作に関連する様々な装置を説明するために用いられる。コントローラは、本明細書で説明される多様な機能を実行するために、多数の方法で実装できる(例えば、専用のハードウェアによって)。「プロセッサ」は、コントローラの一例であり、本明細書において説明される多様な機能を実行するためにソフトウェア(例えば、マイクロコード)を使用してプログラミングされ得る1つ以上のマイクロプロセッサを使用する。コントローラは、プロセッサを使用して又は使用せずに実装されてもよく、また、いくつかの機能を実行する専用ハードウェアと、他の機能を実行するプロセッサ(例えば、1つ以上のプログラミングされたマイクロプロセッサ及び関連する回路)との組み合わせとしても実装できる。本開示の多様な実施形態において使用され得るコントローラ部品の例は、限定されないが、従来のマイクロプロセッサ、特定用途向け集積回路(ASIC)、及びフィールドプログラマブルゲートアレイ(FPGA)である。
[0031]多様な実施形態において、プロセッサ又はコントローラは1つ以上の記憶媒体(本明細書において、通常「メモリ」と呼ばれ、例えばRAM、PROM、EPROM、EEPROM、フロッピー(登録商標)ディスク、コンパクトディスク、光学ディスク、磁気テープ等の揮発性及び非揮発性コンピュータメモリ)に関連付けられ得る。いくつかの実施形態において、1つ以上のプロセッサ及び/又はコントローラ上で実行される際、記憶媒体は、本明細書で説明される機能のうちの少なくとも一部を実行する1つ以上のプログラムによって符号化され得る。様々な記憶媒体がプロセッサ若しくはコントローラ内に固定されてもよく、又は、移動可能でもよく、記憶媒体上に記憶された1つ以上のプログラムがプロセッサ若しくはコントローラにロードされて、本明細書に説明される本発明の多様な側面を実行してもよい。本明細書において、用語「プログラム」又は「コンピュータプログラム」は広義の意味で使用され、1つ以上のプロセッサ又はコントローラをプログラミングするために用いることができるあらゆる種類のコンピュータコード(例えば、ソフトウェア又はマイクロコード)を指す。
[0032]本明細書において、用語「アドレス指定可能」は、自身を含む複数のデバイス用の情報(例えば、データ)を受信し、自身を対象とする特定の情報に選択的に応答するよう構成されたデバイス(例えば、光源全般、照明ユニット又は照明器具、1つ以上光源又は照明ユニットと関連付けられたコントローラ又はプロセッサ、他の照明に関係ないデバイス等)を指す。用語「アドレス指定可能」は、しばしば、複数のデバイスが何らかの通信媒体を介して一体的に結合されるネットワーク化された環境(又は「ネットワーク」、以下で詳細に説明)と関連して用いられる。
[0033]1つのネットワークの実施形態において、ネットワークに結合される1つ以上のデバイスが、当該ネットワークに結合される1つ以上の他のデバイスのコントローラとして機能し得る(例えば、マスタ/スレーブ関係)。他の実施形態において、ネットワーク化された環境は、当該ネットワークに結像された1つ以上のデバイスを制御するよう構成された1つ以上の専用のコントローラを含み得る。一般的に、ネットワークに結合された複数のデバイスはそれぞれ、通信媒体上に存在するデータにアクセスを有する。ただし、所与のデバイスは、例えば自身に割り当てられた1つ以上の特定の識別子(例えば、アドレス)に基づいてネットワークと選択的にデータを交換できる(すなわち、データを受信できる及び/又は送信できる)という点で、「アドレス指定可能」であり得る。
[0034]本明細書において、用語「ネットワーク」は、ネットワークに接続される任意の2つ以上のデバイス間及び/又は複数のデバイス間での情報(例えば、デバイス制御、データ保存、データ交換のための情報等)の転送を容易にする2つ以上のデバイス(コントローラ又はプロセッサを含む)のあらゆる相互接続を指す。容易に理解されるように、複数のデバイスを相互接続するために適した様々なネットワークの実施形態は、あらゆる多様なネットワークトポロジーを含んでもよく、また、あらゆる多様な通信プロトコルを用い得る。また、本開示に係る様々なネットワークによれば、任意の2つのデバイス間の1つの接続は、2つのシステム間の専用接続、又は非専用接続を表し得る。かかる非専用接続は、2つのデバイス用の情報を運ぶのに加えて、必ずしも2つのデバイス用ではない情報を運んでもよい(例えば、オープンネットワーク接続)。また、本明細書で説明されるデバイスの多様なネットワークは、ネットワークを通じた情報転送を容易にするために、無線、有線/ケーブル、及び/又は光ファイバーリンクの1つ以上を使用し得ることが容易に理解されるであろう。
[0035]本明細書において、用語「ユーザインターフェイス」は、ユーザとデバイスとの間の通信を可能にする、人間のユーザ又はオペレータと1つ以上のデバイスとの間のインターフェイスを指す。本開示の多様な実施形態に使用されるユーザインターフェイスの例は、限定はされないが、スイッチ、ポテンショメータ、ボタン、ダイヤル、スライダ、マウス、キーボード、キーパッド、様々な種類のゲームコントローラ(例えば、ジョイスティック)、トラックボール、ディスプレイ画面、様々な種類のグラフィカルユーザインターフェイス(GUI)、タッチスクリーン、マイク、及び人によって生成された何らかの形態の刺激を受信し、それに応じて信号を生成する他の種類のセンサを含む。
[0036]上記概念、及び下記において詳細に説明される他の概念の組み合わせの全てが(かかる概念が互いに矛盾しないことを前提として)、本明細書が開示する主題の一部として考えられることを理解されたい。特に、本開示の末尾に表す特許請求の主題の組み合わせの全ては、本開示の主題の一部として考えられる。また、本明細書で明確に使用され、また、参照によって組み込まれる開示内に現れ得る用語は、本開示が開示する特定の概念と最も調和する意味を与えられるべきであると理解されたい。
[0037]図面において、同様な参照符号は、通常異なる図面にかけて同じ部品(部分)を指す。また、図面は必ずしも縮尺通りでなくてもよく、発明の原理を説明するために、通常誇張される。
[0038]図1は、DMXスタートコードパケットの実施形態の開始部を示す。 [0039]図2は、DMXネットワークの実施形態を示す。 [0040]図3は、改良DMXスレーブ及び非改良DMXスレーブを有するDMXネットワークの実施形態を示す。 [0041]図4は、後方互換性を維持する改良DMX通信のコンパイル及び送信の実施形態を示す。 [0042]図5は、改良DMX通信の受信及び解析の実施形態を示す。 [0043]図6は、インターリーブされたDMXパケットをコンパイル及び送信する方法の実施形態を示す。 [0044]図7は、インターリーブされたDMXパケットからインターリーブされたデータを受信及び解析する方法の実施形態を示す。 [0045]図8は、DMX照明ネットワークの他の例を示す。
[0046]DMX512プロトコルは、エラー検出を提供しない。DMX512−AプロトコルはSIPの使用によりエラー検出に言及し、エラー保護をある程度実行するが、全てのDMXスレーブデバイスがDMX512−Aプロトコルと互換性を有すること、及びチェックサムの複雑さに比して多くのバイトを含む別個のパケットの送信を要求する。
[0047]したがって、当該技術分野には、改良DMXスレーブデバイスによるエラー検出を可能にし、非改良DMXスレーブデバイスとの完全な互換性を維持し、また任意でSIPの1つ以上の付加的な欠点を克服する、DMXプロトコルの拡張に関する方法及び装置を提供するニーズが存在する。当該方法及び装置は、スタートコードパケット内に組み込まれ、スタートコードパケット内の複数のバイトのチェックサムであるパケットチェックサムバイトを利用し得る。
[0048]より一般的には、出願人は、後方互換性を維持するDMX通信プロトコルの拡張を提供することが有益であることを認識及び理解した。
[0049]これに照らして、本発明の多様な実施形態は拡張通信プロトコルに向けられている。
[0050]下記の詳細な説明において、限定ではなく説明を目的として、本発明の完全な理解のために、具体的な詳細を開示する代表的な実施形態を述べる。しかし、本開示の利益を享受した当業者は、本明細書に開示される具体的な詳細から外れる、本明細書の教示に従う他の実施形態も特許請求の範囲に依然として含まれることを理解するであろう。例えば、本明細書を通して、多様な実施形態が、所定の用途のために構成され得るDMX制御照明器具と関連して説明される。しかし、本開示の利益を享受した当業者は、本発明の原理が、他の用途のために構成され得る他の照明器具、及び/又は他の非照明DMXデバイスに実装され得ることを認識及び理解するであろう。また、既知の装置及び方法の説明は、代表的な実施形態の説明を不明瞭にしないよう省略され得る。かかる方法及び装置は明らかに本発明の範囲に含まれる。
[0051]図1は、DMXスタートコードパケット110の実施形態の開始部を示す。DMXスタートコードパケット110は、ヌル値(0x00)を有するスタートコード112を含む。スタートコード112は、「BREAK」によって示されるリセットシーケンスに続く。また、DMXスタートコードパケット110は、第1データバイト1140、第2データバイト1141、及び他のデータバイト114Xを含む複数のデータバイトを含む。アドレス「0」用に構成されたDMXスレーブデバイスは、第1指示データバイト1140内で送信されるデータを利用し、アドレス「1」用に構成されたDMXスレーブデバイスは、第2指示データバイト1141内で送信されたデータを利用する。選択任意で、単一のDMXスレーブデバイスが指示データバイト1140及び1141を利用してもよい。他の指示バイト114Xは、1つ以上の追加のDMXスレーブデバイスへの指示を与えるために構成された、且つ/又は1つ以上のパケットチェックサムバイトを本明細書に説明されるように実行するために構成された、最大で509のさらなるバイトを含み得る。
[0052]図2は、DMXネットワーク200の実施形態を示す。DMXネットワーク200は、スタートコードパケット210を複数のDMXスレーブ221〜224に送信するDMXコントローラ250を含む。スタートコードパケット210は、スタートコード212、及びスタートコード212に続く、複数のデータバイト2140〜2146を含む。DMXスレーブ221は、指示データバイト2140内のデータを利用するよう構成される。DMXスレーブ222は、指示データバイト2141及び2142内のデータを利用するよう構成される。DMXスレーブ223は、指示データバイト2143内のデータを利用するよう構成される。DMXスレーブ224は、指示データバイト2144、2145、及び2146内のデータを利用するよう構成される。DMXコントローラ250は、本明細書に説明されるような1つ以上のパケットチェックサムバイト等の1つ以上の追加データバイトを任意で実装してもよい。本明細書で説明されるような1つ以上のパケットチェックサムバイトがスタートコードパケット210内に実装される場合、かかるチェックサムバイトを解析するように拡張されたあらゆるDMXスレーブ221〜224が解析を実行してもよい。DMXスレーブ221〜224のうちの1つ以上が拡張されていないとしても、本明細書に説明される1つ以上のパケットチェックサムバイトを含むスタートコードパケットから指示バイトを読み取る場合でさえ、依然として正常に機能することができる。
[0053]図3は、改良DMXスレーブ322、323及び非改良DMXスレーブ321、324を有するDMXネットワークの実施形態を示す。DMXネットワーク300は、スタートコードパケット310をDMXスレーブ321〜324に送信するDMXコントローラ350を含む。いくつかの実施形態において、DMXコントローラ350は、電力線ネットワーク及び/又は無線ネットワーク等、ノイズ及び干渉を受ける通信媒体を介してスタートコードパケットを送信し得る。スタートコードパケット310は、スタートコード312、及びスタートコード312に続く、複数のデータバイト3140〜3148を含む。非改良DMXスレーブ321は、指示データバイト3140内のデータに従うよう構成される。非改良DMXスレーブ324は、データバイト3144〜3146内のデータに従うよう構成される。
[0054]改良DMXスレーブ322は、指示データバイト3141及び3142内のデータに従って動作するよう構成される。また、改良DMXスレーブ322は、指示データバイト3140〜3146をバッファリング及び解析し、チェックサムバイト3147及び3148をバッファリング及び解析するよう構成される。一実施形態において、改良DMXスレーブ322は指示データバイト3140〜3146をバッファリングして、既定のチェックサムアルゴリズムに基づいて、受信されたチェックサムを計算してもよい。その後、改良DMXスレーブ322は、受信されたチェックサムを送信されたデータバイト3147及び3148のマスターチェックサムと比較してもよい。受信されたチェックサムがマスターチェックサムと一致する場合、DMXスレーブ322は、指示データバイト3141及び3142に従って動作してもよい。受信されたチェックサムがマスターチェックサムと一致しない場合、DMXスレーブ322は、指示データバイト3141及び3142の一方又は両方に従わなくてもよい。例えば、いくつかの実施形態において、DMXスレーブ322は、受信されたチェックサムとマスターチェックサムとの間の対応に関係なく指示データバイト3141に従うが、受信されたチェックサムとマスターチェックサムが一致する場合、指示データバイト3142のみに従う。改良DMXスレーブ323は、指示データバイト3143内のデータに従うよう構成される。また、改良DMXスレーブ323は、指示データバイト3140〜3146をバッファリング及び解析し、本明細書に説明されるようにチェックサムバイト3147及び3148をバッファリング及び解析するよう構成されてもよい。いくつかの実施形態において、改良DMXスレーブ323は指示データバイト3140〜3146をバッファリングし、受信されたチェックサムを算出し、算出されたチェックサムをデータバイト3147及び3148のマスターチェックサムと比較して、受信されたチェックサムとマスターチェックサムとが一致する場合、指示データバイト3143のみに従ってもよい。
[0055]また、第1スタートコードパケット310に続く第2スタートコードパケット3101が図3に示される。第2スタートコードパケット3101は、第1スタートコードパケット310と同じフォーマットを有してもよい。また、改良DMXスレーブ322及び323は同様に第2スタートコードパケット3101のデータバイトをバッファリングし、受信されたチェックサムを算出して、算出されたチェックサムを送信されたマスターチェックサムと比較してもよい。
[0056]図4は、後方互換性を維持する改良DMX通信のコンパイリング及び送信の実施形態を示す。図4のステップは、例えば、DMXネットワーク200/300のいくつかの実施形態においては、コントローラ250/350内で実行されてもよい。
[0057]ステップ401において、改良DMXスレーブデバイスは、DMXパケットの1つ以上のチャネルにおいてチェックサムデータの位置について通知を受ける。例えば、改良DMXスレーブデバイスは、チェックサムデータの位置がDMXパケットの最後の2つのデータバイト内であることを知らされてもよい。また、例えば、改良DMXスレーブデバイスは、チェックサムデータの位置が、DMXパケットの始め、終わり、又は中間に位置する、1つ以上の特定のチェックサムデータバイト内であることを知らされてもよい。また、改良DMXスレーブデバイスは、チェックサムが取るフォーマットについて任意で通知を受けてもよい(例えば、どのチェックサムアルゴリズムが利用されるか)。いくつかの実施形態において、DMXスレーブデバイスは、DMXパケット内のチェックサムデータバイトの固定位置を特定し、且つ/又はチェックサムフォーマットを特定する、予めロードされたデータを含んでもよい。いくつかの実施形態において、DMXスレーブデバイスは、ユーザが、DMXパケット内のチェックサムデータバイトの1つ以上の特定の位置、及び/又はチェックサムフォーマットを特定することを可能にする、ジャンパー又は他のユーザインターフェイスを含んでもよい。いくつかの実施形態において、コントローラは、チェックサムがDMXパケット内のどこに存在するかを示し、且つ、任意でチェックサムが取るフォーマットを示すデータを含むSIPを送信してもよい。
[0058]ステップ402では、DMXパケットのチェックサムが計算される。いくつかの実施形態において、チェックサムはDMXパケットの全ての指示データバイトに関して計算される。他の実施形態において、チェックサムは、DMXパケットの全てより少ない指示データバイトに関して計算されてもよい。いくつかの実施形態において、チェックサムアルゴリズムは、例えばフレッチャーのチェックサム、Adler−32、又は巡回冗長検査等の位置依存チェックサムでもよい。
[0059]ステップ403では、チェックサムはDMXスタートコードパケット内の1つ以上の空きデータバイト内に実装される。当該空きデータバイトは、チェックサムを有するとDMXスレーブデバイスが知らされたバイトである。いくつかの実施形態において、当該データバイトはDMXスタートコードパケットの末尾のバイトでもよい。
[0060]ステップ404では、DMXスタートコードパケットが複数のDMXスレーブデバイスに送信される。DMXスレーブデバイスの少なくとも一部は改良DMXスレーブデバイスであり、DMXパケットの送信されたマスターチェックサムを、受信されたDMXパケットデータに基づいて改良DMXスレーブデバイスで計算されたチェックサムと照合する。他のDMXスレーブデバイスは非改良DMXスレーブデバイスでもよく、これらは送信されたマスターチェックサムを単純に無視する。これは、マスターチェックサムが、非改良DMXスレーブデバイスによって使用されていない空きデータバイト内で送信されるからである。
[0061]図5は、改良されたDMX通信データを受信及び解析する実施形態を示す。図5のステップは、例えば、いくつかの実施形態において、図3の改良DMXスレーブ322、323内で実行されてもよい。
[0062]ステップ501では、DMXスタートコードパケットの1つ以上のデータバイトからのデータが受信されてバッファリングされる。例えば、いくつかの実施形態において、DMXスタートコードパケットの全ての指示バイトが受信されてバッファリングされる。
[0063]ステップ502では、チェックサムアルゴリズムに従って、受信及びバッファリングされたデータバイトの受信されたチェックサムが計算される。いくつかの実施形態において、利用されるアルゴリズムは、例えばDMXスレーブ上に予めロードされたデータ、DMXコントローラから送信されたデータ、及び/又はユーザインターフェイスを介したユーザからの入力によって指示されてもよい。受信されたチェックサムの計算は、いくつかの実施形態では全ての受信及びバッファリングされたデータ(例えば、ほぼ全てのDMXスタートコードパケットデータバイト)を利用してもよいし、他の実施形態では、データの一部のみを利用してもよい。
[0064]ステップ503では、DMXスタートコードパケットの1つ以上のデータバイト内のチェックサムデータ位置からマスターチェックサムが受信される。マスターチェックサムを保持する特定のデータバイトは、例えばDMXスレーブ上に予めロードされたデータ、DMXコントローラから送信されたデータ、及び/又はユーザインターファイスを介したユーザによる入力によって指示されてもよい。多くの実施形態において、ステップ503は、好ましくはステップ502より先に起こる。
[0065]ステップ504では、(受信されたデータバイトに基づいて計算された)受信されたチェックサムが(1つ以上のデータバイト内で送信された)マスターチェックサムと比較される。ステップ505では、受信されたチェックサムとマスターチェックサムとの比較に基づいて、デバイス特有指示バイトが機能するか否かが判定される。例えば、いくつかの実施形態において、受信されたチェックサムとマスターチェックサムとが互いに合致しない限り、デバイス特有指示バイトが機能しない。また、例えば、いくつかの実施形態において、いくつかのデータバイト(又はその側面)は受信されたチェックサムとマスターチェックサムとが互いに合致しない限り機能しないが、他のデータバイト(又はその側面)はそれとは無関係に機能する。例えば、非決定的データバイトは受信されたチェックサム及びマスターチェックサムの対応に関係なく機能する一方、決定的及び/又は潜在的に危険なデータバイトは、受信されたチェックサムとマスターチェックサムとが一致しない限り機能しなくてもよい。また、例えば、いくつかの実施形態において、受信されたチェックサム及びマスターチェックサムが互いの所定の誤差範囲内に存在しない限り、デバイス特有指示バイトは機能しない。また、例えば、いくつかの実施形態において、所定の期間内に2つ以上の連続エラーDMXスタートコードパケットが生じない限り、デバイス特有指示は機能しない。
[0066]図6は、インターリーブDMXパケットのコンパイル及び送信方法の実施形態を示す。図6の方法は、任意で、例えば、いくつかの実施形態においてはDMXネットワーク200/300のコントローラ250/350内で実行され得る。図6の方法は、単独で、又は任意でチェックサムデータを有するスタートコードDMXパケットのコンパイル及び送信と組み合わせて実行され得る。
[0067]ステップ601では、改良DMXスレーブデバイスはインターリーブ方式についての通知を受ける。いくつかの実施形態において、改良DMXスレーブデバイスは、インターリーブ方式を特定するプリロードデータを含んでもよい。いくつかの実施形態において、改良DMXスレーブデバイスは、ユーザが特定のインターリーブ方式を特定することを可能にするジャンパー又は他のユーザインターフェイスを含んでもよい。いくつかの実施形態において、コントローラは、インターリーブ方式を示すデータを含むSIPを送信してもよい。
[0068]ステップ602では、インターリーブ方式に従ってデータがインターリーブされた複数のデータバイトを有するDMXスタートコードパケットが作成される。例えば、図3を参照すると、一実施形態において、データバイト3144、3145、及び3146のデータが互いにインターリーブされてもよい。例えば、データバイト3144、3145、及び3146のそれぞれが、DMXスレーブ324の異なるチャネルを対象とした個別のビットを含み得る(データバイト3144、3145、及び3146のそれぞれが、DMXスレーブ324の単一のチャネルのみを対象としたビットを含むのではなく)。いくつかの実施形態において、インターリーブは、複数の異なるDMXスレーブデバイスに対応するデータバイトにかけて生じてもよい。言い換えれば、1つのデータバイトは、複数のDMXスレーブデバイスに対応するデータを含んでもよい。また、インターリーブは、任意で、インターリーブがチェックサムバイトと組み合わされた実施形態において、チェックサムデータバイトを含んでもよい。非改良デバイスが指示データバイトを意図された通りに受信するよう、インターリーブは、非改良DMXスレーブに対応するデータバイト間に生じるべきではない。
[0069]ステップ603では、インターリーブされたDMXスタートコードパケットが、複数のDMXスレーブデバイスに送信される。DMXスレーブデバイスの少なくとも一部は改良DMXスレーブデバイスであり、DMXスタートコードパケットを受信するとデインターリーブする。他のDMXスレーブデバイスは非改良DMXスレーブデバイスでもよく、インターリーブされたデータは非改良DMXスレーブデバイスに対応しないデータバイト内でのみ送信されるため、非改良DMXスレーブデバイスはこれを単純に無視する。
[0070]図7は、インターリーブされたDMXパケットからのインターリーブされたデータを受信及び解析する方法の実施形態を示す。図7の方法は、例えば、いくつかの実施形態において、図3の改良DMXスレーブ322、323内で実行され得る。
[0071]ステップ701では、DMXスタートコードパケットの複数のデータバイトからインターリーブデータが受信されバッファリングされる。例えば、受信されたチェックサムを決定するためにバッファリングされるデータバイトも同様にバッファリングされてもよい。ステップ702では、インターリーブされたデータは、インターリーブ方式に従ってデインターリーブされたデータに再編成される。例えば、DMXスレーブに対応する複数のデータバイトからの個別のデータビットがインターリーブ方式に対応する順番に再編成されて、これによりDMXスレーブのためのデインターリーブされた指示を取得してもよい。また、任意で、DMXスタートコードパケットがチェックサムデータを含み、チェックサムデータがインターリーブされている場合、個別のデータビットをデインターリーブすることによってマスターチェックサムを取得してもよい。受信されたチェックサムの計算において、DMXスレーブは、いくつかの実施形態ではインターリーブされたデータを利用してもよく、他の実施形態では、デインターリーブされたデータを利用してもよい。ステップ703では、DMXスレーブに対応するDMX被制御機器の少なくとも1つの側面が、デインターリーブされたデータに基づいて指示を受ける。
[0072]インターリーブがDMXスタートコードパケット内に組み込まれたチェックサムバイトと組みわされた実施形態において、受信されたチェックサムがマスターチェックサムと合致しないにも関わらず、DMXスレーブデバイスが1つ以上のデータバイトを利用することが適切であると判定する場合(例えば、1つ以上のデータバイトが決定的でない場合、受信されたチェックサムとマスターチェックサムとの違いが最小の破損を示す場合、設定された時間内においてエラーDMXスタートコードパケットがさらなるエラーパケットによって先行されない場合)、送信されるDMXスタートコードパケット内のエラーの影響を最小化することを助け得る。
[0073]図8は、DMX照明ネットワーク800の他の実施形態を示す。DMX照明ネットワーク800は、DMXスレーブ照明器具821、822、及び823の3つの別々のグループを制御するDMXコントローラ850を含む。DMXコントローラ850は、同じDMXスタートコードパケットを3つのグループ821、822、及び823の全てに送信してもよいし、1つ以上のグループ821〜823に別々のDMXスタートコードパケットを送信してもよい。例えば、DMXコントローラは、グループ821に標準DMX512スタートコードパケットを送信し、グループ822にスタートコードパケット内にチェックサムバイトを実装するDMX情報を送信し、そしてグループ823にスタートコードパケット内にインターリーブを実装するDMX情報(任意で、チェックサムバイトと組み合わせて)を送信してもよい。
[0074]本明細書においていくつかの実施形態が説明されてきたが、当業者は、本明細書で説明される機能を実行するための、並びに/又は本明細書で説明される結果及び/若しくは1つ以上の利益を取得するための多様な他の手段及び/又は構造を容易に想像することができ、また、かかる変形例及び/又は改変例は、本明細書に説明される実施形態の範囲に含まれると見なされる。より一般的には、当業者は、本明細書に記載される全てのパラメータ、寸法、材料、及び構成は例示的であり、実際のパラメータ、寸法、材料、及び/又は構成は、本明細書の教示が使用される具体的な用途に依存する。当業者は、通常の実験以上を要求されることなく、本発明の具体的な実施形態の多数の均等物を認識又は確認することができるであろう。したがって、上記の実施形態は単に例としてのみ提示され、実施形態は、特許請求の範囲及びその均等物の範囲内において、具体的に説明及び請求された態様とは異なる態様で実施されてもよいことを理解されたい。本開示の実施形態は、本明細書で説明される個別の特徴、システム、物品、材料、キット、及び/又は方法に向けられる。また、かかる特徴、システム、物品、材料、キット、及び/又は方法の2つ以上が互いに矛盾しない場合、このような特徴、システム、物品、材料、キット、及び/又は方法の2つ以上の任意の組み合わせが、本開示の範囲に含まれる。
[0075]本明細書で定義及び使用される全ての用語の定義は、辞書の定義、参照によって組み込まれる文書内の定義、及び/又は定義される用語の通常の意味を含むことを理解されたい。
[0076]本明細書及び特許請求の範囲において、特に指定されない限り、要素は複数を除外しない。
[0077]本明細書及び特許請求の範囲で使用される「及び/又は」というフレーズは、結合された要素の「いずれか又は両方」、すなわち、いくつかの場合においては結合して存在し、他の場合においては分離して存在する要素を意味すると理解されるべきである。「及び/又は」によって列挙される複数の要素も同様に解釈されるべきであり、すなわち、複数の要素のうちの「1つ以上」が結合される。任意で、「及び/又は」の節によって具体的に特定された要素以外の要素が存在してもよく、これらの要素は、具体的に特定された要素と関係しても無関係でもよい。したがって、非限定的な例として、「含む」等の非制限的な(open−ended)文言とともに「A及び/又はB」が使用される場合、これは、例えば1つの実施形態においてはAのみを指し(任意でB以外の要素を含む)、他の実施形態においてはBのみを指し(任意でA以外の要素を含む)、他の実施形態においては、A及びBの両方を指す(任意で他の要素を含む)。
[0078]また、明確に否定的な記載がない限り、1つ以上のステップ又は動作を含む本願で請求される方法において、方法のステップ又は動作の順番は、必ずしもその方法のステップ又は動作が記載される順番に限定されないことを理解されたい。また、特許請求の範囲内の括弧内の参照番号は、単に便宜上用いられ、特許請求の範囲を如何なる意味でも限定しないと解されるべきである。
[0079]特許請求の範囲において、また本明細書において、「備える」、「含む」、「運ぶ」、「有する」、「保有する」、「保持する」、「から構成される」等の全ての移行句は、非制限的、すなわち、限定ではなく含むを意味すると理解されるべきである。移行句「からなる」及び「本質的に〜からなる」のみが、制限的又は準制限的移行句であろう。

Claims (20)

  1. 後方互換性を維持しつつ、改良されたDMX通信を提供する方法であって、
    複数の改良DMXスレーブをDMXネットワークに接続するステップであって、前記複数の改良DMXスレーブは、対応する複数のDMXスレーブ制御アドレスを有する、接続するステップと、
    複数のバイトを有するDMXスタートコードパケットをコンパイルするステップであって、前記複数のバイトは、前記複数の改良DMXスレーブ制御アドレスに対応する複数の改良DMXスレーブ指示バイト、及び少なくとも1つのパケットチェックサムバイトを含む、コンパイルするステップとを含み、
    前記パケットチェックサムバイトは、前記スタートコードパケット内に組み込まれた、前記スタートコードパケットの複数のバイトのチェックサムであり、
    前記DMXネットワーク上で前記スタートコードパケットを送信するステップと、
    前記改良DMXスレーブのそれぞれにおいて、前記スタートコードパケットを受信するステップと、
    前記改良DMXスレーブのそれぞれにおいて、前記パケットチェックサムを含む複数のバイトをバッファリングするステップと、
    前記改良DMXスレーブのそれぞれにおいて、前記バッファリングされたバイトの受信されたチェックサムを計算し、前記受信されたチェックサムを前記パケットチェックサムと比較するステップとをさらに含み、
    前記改良DMXスレーブのそれぞれは、前記計算された受信チェックサムと前記パケットチェックサムとが実質的に一致する場合のみ、前記改良DMXスレーブ指示バイトのうちの対応する少なくとも1つに少なくとも選択的に従って動作する、方法。
  2. 前記複数の改良DMXスレーブ指示バイトは、インターリーブされた複数のDMXスレーブ指示バイトを含み、前記インターリーブされた複数のDMXスレーブ指示バイトのそれぞれは、複数の改良DMXスレーブのための動作指示に対応する複数のビットを有する、請求項1に記載の方法。
  3. 前記DMXスタートコードパケットの前記複数のバイトは、非改良DMXスレーブアドレスに対応する、インターリーブされていない少なくとも1つの非改良DMXスレーブ指示バイトをさらに含む、請求項2に記載の方法。
  4. 前記DMXネットワーク上で前記スタートコードパケットを送信する前に、インターリーブ方式に従って、前記複数のDMXスレーブ指示バイト間で複数の個別のビットをインターリーブすることをさらに含む、請求項1に記載の方法。
  5. 前記複数の改良DMXスレーブ指示バイトは、第1、第2、及び第3改良DMXスレーブ指示バイトを含み、前記第1、第2、及び第3改良DMXスレーブ指示バイトのそれぞれは、前記複数の改良DMXスレーブのうちの第1改良DMXスレーブに対応する第1改良DMXスレーブ指示ビット、及び、前記複数の改良DMXスレーブのうちの第2改良DMXスレーブに対応する第2改良DMXスレーブ指示ビットを含む、請求項4に記載の方法。
  6. 前記DMXスレーブに別個の情報パケットを送信するステップであって、前記別個の情報パケットは、前記受信されたチェックサムの計算に関連するデータを含む、送信するステップをさらに含む、請求項1に記載の方法。
  7. 前記受信されたチェックサムの計算に関連するデータは、前記改良DMXスレーブ上に予めロードされる、請求項4に記載の方法。
  8. 前記パケットチェックサムバイトは、前記スタートコードパケットの末尾に設けられる、請求項1に記載の方法。
  9. 前記チェックサムは、前記スタートコードパケットの全ての制御指示のチェックサムである、請求項8に記載の方法。
  10. 後方互換性を維持しつつ、改良されたDMX通信を提供する方法であって、
    少なくとも1つの改良DMXスレーブをDMXネットワークに接続するステップであって、前記改良DMXスレーブは少なくとも1つの改良DMXスレーブ制御アドレスを有する、接続するステップと、
    少なくとも1つの非改良DMXスレーブを前記DMXネットワークに接続するステップであって、前記非改良DMXスレーブは少なくとも1つの非改良DMXスレーブ制御アドレスを有する、接続するステップと、
    複数のバイトを有するスタートコードパケットをコンパイルするステップであって、前記複数のバイトは、前記改良DMXスレーブ制御アドレスに対応する少なくとも1つの改良DMXスレーブ指示バイト、前記非改良DMXスレーブ制御アドレスに対応する少なくとも1つの非改良DMXスレーブ指示バイト、及び少なくとも1つのパケットチェックサムバイトを含む、コンパイルするステップとを含み、
    前記パケットチェックサムバイトは、前記スタートコードパケット内に組み込まれた、前記スタートコードパケットの複数のバイトのチェックサムであり、
    前記スタートコードパケットを前記DMXネットワーク上で送信するステップと、
    前記改良DMXスレーブにおいて前記スタートコードパケットを受信するステップと、
    前記改良DMXスレーブにおいて、前記パケットチェックサムを含む複数のバイトをバッファリングするステップと、
    前記改良DMXスレーブにおいて、前記バッファリングされた複数のバイトの受信されたチェックサムを計算し、前記受信されたチェックサムを前記パケットチェックサムと比較するステップとをさらに含み、
    前記改良DMXスレーブは、前記受信されたチェックサムと前記パケットチェックサムとが実質的に一致する場合のみ、前記改良DMXスレーブ指示バイトに少なくとも選択的に従って動作し、
    前記非改良DMXスレーブは、前記パケットチェックサムとは関係なく、任意の受信された前記非改良DMXスレーブ指示バイトに従って動作する、方法。
  11. 前記少なくとも1つの改良DMXスレーブ指示バイトは、第1改良DMXスレーブ指示バイト及び第2改良DMXスレーブ指示バイトを含む、請求項10に記載の方法。
  12. 前記改良DMXスレーブは、前記受信されたチェックサムと前記パケットチェックサムとが実質的に一致する場合、前記第1改良DMXスレーブ指示バイトにのみ従って動作するが、前記受信されたチェックサムと前記パケットチェックサムとが実質的に一致しない場合でさえ、前記第2改良DMXスレーブ指示バイトに従って動作する、請求項11に記載の方法。
  13. 前記DMXネットワーク上での前記スタートコードパケットの送信の前に、インターリーブ方式に従って、前記第1改良DMXスレーブ指示バイト、及び前記第2改良DMXスレーブ指示バイト内の複数の個別のビットをインターリーブするステップをさらに含む、請求項12に記載の方法。
  14. 前記インターリーブ方式に関連するデータを含む製造者特有パケットを前記DMXスレーブに送信するステップをさらに含む、請求項13に記載の方法。
  15. 前記少なくとも1つの改良DMXスレーブは、第1改良DMXスレーブ及び第2改良DMXスレーブを含む、請求項10に記載の方法。
  16. 前記少なくとも1つの改良DMXスレーブ指示バイトは、第1、第2、及び第3改良DMXスレーブ指示バイトを含み、前記第1、第2、及び第3改良DMXスレーブ指示バイトのそれぞれは、前記第1改良DMXスレーブに対応する第1改良DMXスレーブ指示ビット、及び前記第2改良DMXスレーブに対応する第2改良DMXスレーブ指示ビットを含む、請求項15に記載の方法。
  17. 複数のバイトを有するスタートコードパケットを受信するステップであって、前記複数のバイトは、改良DMXスレーブに対応する少なくとも1つの改良DMXスレーブ指示バイト、及び少なくとも1つのパケットチェックサムバイトを含む、受信するステップを含み、
    前記パケットチェックサムバイトは、前記スタートコードパケット内に組み込まれた、前記スタートコードパケットの複数のバイトのチェックサムであり、
    前記パケットチェックサムを含む複数のバイトをバッファリングするステップと、
    前記バッファリングされた複数のバイトの受信されたチェックサムを計算し、前記受信されたチェックサムを前記パケットチェックサムと比較するステップと、
    前記受信されたチェックサムと前記パケットチェックサムとが実質的に一致する場合のみ、前記改良DMXスレーブ指示バイトに少なくとも選択的に従って動作するステップとをさらに含む、改良されたDMX通信を受信及び解析する方法。
  18. 前記少なくとも1つの改良DMXスレーブ指示バイトは、インターリーブされた第1改良DMXスレーブ指示バイト、及びインターリーブされた第2改良DMXスレーブ指示バイトを含み、前記方法は、前記第1改良DMXスレーブ指示バイト、及び前記第2改良DMXスレーブ指示バイトをデインターリービングするステップをさらに含む、請求項17に記載の方法。
  19. 複数のDMXスレーブ指示バイトを含み、前記受信されたチェックサムと前記パケットチェックサムとが実質的に一致する場合のみ、前記複数の改良DMXスレーブ指示バイトのうちのいくつかの指示バイトに少なくとも選択的に従い、前記受信されたチェックサムと前記パケットチェックサムとが実質的に一致しない場合でさえ、前記複数の改良DMXスレーブ指示バイトのうちの他の指示バイトに少なくとも選択に従うステップをさらに含む、請求項17に記載の方法。
  20. 後方互換性を維持しつつ、改良DMX通信を提供する方法であって、
    複数のバイトを有するスタートコードパケットをコンパイルするステップであって、前記複数のバイトは、改良DMXスレーブ制御アドレスに対応する少なくとも1つの改良DMXスレーブ指示バイト、非改良DMXスレーブ制御アドレスに対応する少なくとも1つの非改良DMXスレーブ指示バイト、及び少なくとも1つのパケットチェックサムバイトを含む、コンパイルするステップを含み、
    前記パケットチェックサムバイトは、前記スタートコードパケット内に組み込まれた、前記スタートコードパケットの複数のバイトのチェックサムであり、
    DMXネットワーク上で前記スタートコードパケットを送信するステップをさらに含む、方法。

JP2014534025A 2011-10-07 2012-10-04 チェックサムを有する改良されたdmx512通信のための方法及び装置 Expired - Fee Related JP6096201B2 (ja)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
US201161544301P 2011-10-07 2011-10-07
US61/544,301 2011-10-07
US201161547085P 2011-10-14 2011-10-14
US61/547,085 2011-10-14
PCT/IB2012/055323 WO2013050954A1 (en) 2011-10-07 2012-10-04 Methods and apparatus for improved dmx512 communication having checksum

Publications (2)

Publication Number Publication Date
JP2014532264A JP2014532264A (ja) 2014-12-04
JP6096201B2 true JP6096201B2 (ja) 2017-03-15

Family

ID=47226227

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2014534025A Expired - Fee Related JP6096201B2 (ja) 2011-10-07 2012-10-04 チェックサムを有する改良されたdmx512通信のための方法及び装置

Country Status (6)

Country Link
US (1) US9378087B2 (ja)
EP (1) EP2745637B1 (ja)
JP (1) JP6096201B2 (ja)
CN (1) CN103875312B (ja)
RU (1) RU2608542C2 (ja)
WO (1) WO2013050954A1 (ja)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP2745638B1 (en) * 2011-10-11 2018-12-26 Philips Lighting Holding B.V. Methods and apparatus for improved dmx512 communication
JP6502355B2 (ja) * 2013-09-04 2019-04-17 シグニファイ ホールディング ビー ヴィ Dmxネットワーク上でのインターネットプロトコル通信のための方法及び装置
US9871616B2 (en) 2015-05-29 2018-01-16 Abl Ip Holding Llc Error detection and recovery in a DMX512 network
CA3034986A1 (en) 2016-09-09 2018-03-15 Socovar, Societe En Commandite Checksum-filtered decoding, checksum-aided forward error correction of data packets, forward error correction of data using bit erasure channels and sub-symbol level decoding for erroneous fountain codes
CN111615242B (zh) * 2020-06-03 2022-09-23 深圳爱克莱特科技股份有限公司 灯具、控制器及灯具调光方法
CN112437061B (zh) * 2020-11-11 2022-10-21 广州彩熠灯光股份有限公司 一种基于dmx512协议的带外通信方法、系统、存储介质及装置

Family Cites Families (21)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5319301A (en) 1984-08-15 1994-06-07 Michael Callahan Inductorless controlled transition and other light dimmers
US4881230A (en) * 1987-10-05 1989-11-14 Ibm Corporation Expert system for processing errors in a multiplex communications system
EP0721714B1 (en) 1994-07-28 2004-05-06 Koninklijke Philips Electronics N.V. Method of and system for communicating messages
CA2289525A1 (en) * 1997-05-11 1998-11-19 S. Jay Cross Seatbelt system having seamless inflatable member
US6211627B1 (en) 1997-07-29 2001-04-03 Michael Callahan Lighting systems
US6016038A (en) * 1997-08-26 2000-01-18 Color Kinetics, Inc. Multicolored LED lighting method and apparatus
US7024685B1 (en) * 2000-09-13 2006-04-04 International Business Machines Corporation Transport demultiplexor with bit maskable filter
US7394210B2 (en) * 2004-09-29 2008-07-01 Tir Technology Lp System and method for controlling luminaires
EP1894075A4 (en) * 2005-06-06 2008-06-25 Color Kinetics Inc METHODS AND APPARATUS FOR IMPLEMENTING POWER CYCLE CONTROL OF LIGHTING DEVICES BASED ON NETWORK PROTOCOLS
US7501571B2 (en) 2005-06-14 2009-03-10 Jon Forsman Lighting display responsive to vibration
JP2008005416A (ja) * 2006-06-26 2008-01-10 Toshiba Corp 信号合成装置,信号送信装置,および信号受信装置
WO2009087537A2 (en) 2007-12-31 2009-07-16 Koninklijke Philips Electronics, N.V. Methods and apparatus for facilitating design, selection and/or customization of lighting effects or lighting shows
KR100985439B1 (ko) * 2008-01-02 2010-11-09 루미너스엘이디(주) Dmx512 프로토콜 환경에서의 조명제어시스템 및조명제어방법
ITTO20080268A1 (it) 2008-04-08 2009-10-09 Ilti Luce S R L Dispositivo e sistema di illuminazione, e relativo metodo di controllo
US8255487B2 (en) * 2008-05-16 2012-08-28 Integrated Illumination Systems, Inc. Systems and methods for communicating in a lighting network
US8072974B1 (en) * 2008-07-18 2011-12-06 Tellabs San Jose Inc Method and apparatus for improving packet processing performance using multiple contexts
CN101547542B (zh) 2009-04-30 2013-01-09 浙江大学 支持逻辑组地址的dmx512景观照明管控系统及方法
CN201398255Y (zh) * 2009-04-30 2010-02-03 浙江大学 支持逻辑组地址的dmx512景观照明管控系统
CN101588221B (zh) 2009-06-19 2012-07-04 中兴通讯股份有限公司 一种实现校验和算法自适应选择的方法及装置
KR101107886B1 (ko) * 2009-10-30 2012-01-25 삼성엘이디 주식회사 항만 조명등 제어 장치
CN101699923B (zh) 2009-11-11 2013-05-01 广州中大中鸣科技有限公司 一种基于dmx512协议的灯光控制系统及方法

Also Published As

Publication number Publication date
US9378087B2 (en) 2016-06-28
CN103875312A (zh) 2014-06-18
CN103875312B (zh) 2016-07-06
US20140223268A1 (en) 2014-08-07
WO2013050954A1 (en) 2013-04-11
JP2014532264A (ja) 2014-12-04
EP2745637B1 (en) 2017-09-20
EP2745637A1 (en) 2014-06-25
RU2014118433A (ru) 2015-11-20
RU2608542C2 (ru) 2017-01-19

Similar Documents

Publication Publication Date Title
JP6096201B2 (ja) チェックサムを有する改良されたdmx512通信のための方法及び装置
US10292225B2 (en) Methods and apparatus for adaptable lighting unit
CN102484917B (zh) 基于led的照明器材和用于热量管理的相关方法
US9807824B2 (en) Methods and apparatus for sensing light output and controlling light output
JP2015511383A (ja) 距離センサーを利用した照明コンフィグレーション装置及び方法
JP6207587B2 (ja) Ledドライバのプロセッサの外部プログラミングのための装置及び方法
JP6290463B2 (ja) レガシ照明制御コンポーネント用プロキシ
US20090102401A1 (en) Solid-state lighting network and protocol
KR20130099087A (ko) 조명 기구 노드들의 그룹을 동작시키는 방법 및 장치
WO2016083954A2 (en) Lighting control apparatus and methods
EP2966938B1 (en) Communication protocol for lighting system with embedded processors and system operating with the protocol
JP6133302B2 (ja) 改良されたdmx512通信のための方法及び装置
JP6502355B2 (ja) Dmxネットワーク上でのインターネットプロトコル通信のための方法及び装置
CN111837459B (zh) 用于使用无线信号特性自动重新入网初始化照明节点的系统,方法和计算机可读介质
JP7199036B2 (ja) 照明システム、照明器具および照明システムの制御方法

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20150930

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20160704

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20160920

A711 Notification of change in applicant

Free format text: JAPANESE INTERMEDIATE CODE: A711

Effective date: 20160927

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: 20170120

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20170215

R150 Certificate of patent or registration of utility model

Ref document number: 6096201

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

S531 Written request for registration of change of domicile

Free format text: JAPANESE INTERMEDIATE CODE: R313531

S533 Written request for registration of change of name

Free format text: JAPANESE INTERMEDIATE CODE: R313533

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

LAPS Cancellation because of no payment of annual fees