S-9.2.1 デジタルコマンドコントロールの拡張パケット形式
原文版:July 2012
This document received approval from the NMRA Board of Trustees in July 1995, March 1997, July 2003 and January 2006. Changes since the last approved version are indicated by change bars on the left or right side of the document. Minor edit changes made to agree with S-9.2.2. Edit changes made July 2009. Changed to Standard July 2012.
NMRA の「デジタルコマンドコントロールの通信標準(S-9.2)」は相互運用性のための最低限で基本的なパケット形式を提供しています。この標準は、発生する現実的な運用を可能にする枠組みを提供する拡張パケット形式を提供します。この形式は S-9.2 で定義される一般パケット形式にしたがいます。基本パケットは 0
ビットで分割された3バイトでしたが、拡張パケット形式では 0
ビットで分割された3から6バイトをもちえます。
形式定義
この標準では、アドレスとデータバイト内のビットは次に示す省略によって定義されます。パケット形式のそれぞれのバイトは空白によって分割されます。角括弧([
・]
)によって囲われたバイトは必要に応じて1回以上出現します。ビットは右から左の順に番号が付けられます。ビット0(最右ビット)は最下位ビット(LSB)、ビット7(最左ビット)は最上位ビット(MSB)となります。
記号 | 説明 |
---|---|
A |
アドレスビット |
0 |
0 値ビット |
1 |
1 値ビット |
U |
未既定ビット(0 値でも 1 値でもよい) |
B |
ビット位置・アドレス |
C |
命令種別 |
F |
命令実装判別子 |
L |
下位バイナリー状態制御アドレス |
H |
上位バイナリー状態制御アドレス |
S |
デコーダー副アドレスビット |
V |
CV アドレスビット |
D |
データ |
X |
Signal Head Aspect Data Bit |
E |
エラー検出ビット |
A:アドレス分割
拡張パケット形式のパケットの最初のバイトは主アドレスをもちます。ことなった種類のデコーダーのために、主アドレスは下記のように固定区分に分割されます。
アドレス | 説明 |
---|---|
00000000 (0 ) |
ブロードキャストアドレス |
00000001 ~ 01111111 (1 ~ 127 ) |
7ビットアドレス多機能デコーダー |
10000001 ~ 10111111 (128 ~ 191 ) |
9ビットアドレス基本アクセサリーデコーダー 11ビットアドレス拡張アクセサリーデコーダー |
11000001 ~ 11100111 (192 ~ 231 ) |
14ビットアドレス多機能デコーダー |
11101000 ~ 11111110 (232 ~ 254 ) |
将来の使用のため予約 |
11111111 (255 ) |
アイドルパケット |
B:多機能デジタルデコーダー用ブロードキャストコマンド
このパケットの形式は下記です。
前文 0 00000000 0 命令バイト 0 EEEEEEEE 1
「ブロードキャストアドレス」00000000
向けの命令はすべての多機能デジタルデコーダーによって実行されなければいけません。単一の命令は「多機能デジタルデコーダーパケット」で定義されるものと同じ定義をもち、命令によって1から3バイトになります。デジタルデコーダーは自身が解釈できない命令は無視しなければいけません。製造者はデコーダーが解釈できるブロードキャストコマンドを記載しなければいけません。
C:多機能デジタルデコーダー用命令パケット
このパケットの形式は下記です。
前文 0 [ AAAAAAAA ] 0 命令バイト 0 EEEEEEEE 1
多機能デジタルデコーダーは1つ以上のモーターやアクセサリーを操作する目的で使用されます。これらの機器を操作するために使用されるパケット形式は3から6バイトで構成されます。最初のバイトはアドレスバイトで、それに続き1つか2つの命令バイトが、最後はエラー制御バイトで終わります。
最初のアドレスバイトは、8ビットのアドレス情報をもちます。もしアドレスの最上位の2ビットが 11
で残りが 111111
でない場合、2番目のアドレスバイトがそのすぐ後に続かなければいけません。この2番目のアドレスバイトは8ビットの追加のアドレス情報をもちます。 アドレス情報が2バイトあるとき、それらは 0
ビットで分割されます。2バイトアドレスの最上位ビットは最初のアドレスバイトのビット5です(この場合ビット6とビット7は 1
の値をもちます)。
命令バイトは多機能デジタルデコーダーにコマンドを送信するために使用されるデータバイトです。すべてのデジタルデコーダーがすべての命令を実装していませんが、もし1つ以上の命令を解釈できる場合、バイトが新規の命令なのか前の命令の2番目のバイトなのかを認識できるようにデジタルデコーダーがパケットを十分に解析できることは重要です。
それぞれの命令は下記のように定義されます。
命令バイト = CCCDDDDD または
CCCDDDDD 0 DDDDDDDD または
CCCDDDDD 0 DDDDDDDD 0 DDDDDDDD
Each instruction consists of a 3-bit instruction type field followed by a 5-bit data field. Some instructions have one or two or three additional bytes of data. The 3-bit instruction type field is defined as follows:
CCC |
説明 |
---|---|
000 |
デコーダー制御命令と編成制御命令 |
001 |
発展運転命令 |
010 |
後方運転の速度方向命令 |
011 |
前方運転の速度方向命令 |
100 |
第1機能群命令 |
101 |
第2機能群命令 |
110 |
将来的拡張 |
111 |
CV 読み書き命令 |
The last byte of the packet is the Error Detection Byte, which is calculated the same as is done in the baseline packet using all address, and all instruction bytes (see S-9.2).
デコーダー制御命令と編成制御命令(000
)
デコーダー応答機能(00001111
)をのぞいて、単一のデコーダーと編成制御命令のみひとつのパケットにふくめることができます。
デコーダー制御(0000
)
デコーダー制御命令はデコーダー設定の初期設定や変更をするためにあります。
このパケットの形式は下記です。
命令バイト = 0000CCCF または
0000CCCF DDDDDDDD
この命令(0000CCCF
)は特定のデコーダー機能が D
の値によって設定もしくは削除されることを許可します(1
は設定を意味します)。デコーダーでデコーダー応答機能が有効な場合、デコーダー制御命令の受信は運転モード応答によって応答されるべきです訳注 1。
CCCD |
説明 |
---|---|
0000 |
デジタルデコーダーリセット |
0001 |
強制リセット |
001D |
工場試験命令 |
010D |
将来の使用のため予約 |
011D |
デコーダーフラグの設定 |
100D |
将来の使用のため予約 |
101D |
拡張アドレスの設定(CV 29 のビット5) |
110D |
将来の使用のため予約 |
111D |
デコーダー応答要求 |
デジタルデコーダーリセット
デジタルデコーダーリセットは(速度と方向データを含め)すべての揮発性記憶を消去し、S-9.2.4 の A に定義された初期起動状態へ戻らなければいけません。コマンドステーションはアドレス112~127にデジタルデコーダーリセットの後10パケット期間はパケットを送信してはいけません。これは、デコーダーがサービスモード命令パケットを運転モードパケットとして実行しはじめないようにするためです(サービスモード命令パケットは10進数で112~127の短形式アドレスをもちます)。
強制リセット
CV 29・31・32 は工場出荷状態にリセットされ、CV 19 は 00000000
に設定され、上記命令の通りデジタルデコーダーリセットが実行されなければいけません。
工場試験命令
この命令は製造者が工場でデコーダーをテストするために使用されます。通常運用ではコマンドステーションはこの命令を送信してはいけません。この命令は多バイト命令である可能性があります。
デコーダーフラグの設定
この命令は NMRA DCC ワーキンググループで再評価中です。製造者はこの命令を実装する前に NMRA CDD 調整者に連絡をとるべきです。
デコーダーフラグ設定は拡張されたデコーダー制御機能で、コマンドステーションに特定のデコーダーもしくはデコーダーのグループのフラグをオン・オフできるようにします。
このパケットの形式は下記です。
命令バイト = 0000011D CCCC0SSS
SSS
はそのデコーダーの副アドレスです。これは、最大で7つのデコーダーに主アドレスを共有することを許可し、しかし特定の機能(設定値アクセス命令のような)では個別に実施されます。SSS
が 000
のとき操作はグループ内のすべてのデコーダーに反映されます。デコーダー副アドレスは CV15 で定義されます。
CCCC
は下記の表によって定義されます。
CCCC |
意味 | 動作 | 期間 |
---|---|---|---|
0000 |
111 命令の無効化1 |
すべての副アドレスに対して命令を無視する。 | 次のデジタルデコーダーリセットパケットを受信するまで |
0100 |
デコーダー応答要求命令の無効化 | Acknowledgement and Address are not transmitted in response to a Decoder Acknowledgement Instruction for all sub addresses. | Until power is removed long enough to power down the decoder. |
0101 |
双方向通信の有効化 | B-Directional Communications are enabled per CVs (See note below). | Permanent (sets CV 29 (or 541), bit 3) or internal Flag if sent to Consist Address. |
1000 |
双方向通信のセット | Bi-Directional communications are enabled for specified sub address; all other sub addresses are disabled. (Not valid at Consist Address). | Permanent (sets CV 16, bit 0) |
1001 |
Set 111 Instruction | Enables 111 Instructions for specified subaddress, all other sub addresses are disabled. (Not valid at Consist Address). | Permanent (sets CV 16, bit 1) |
1111 |
Accept 111 Instructions | All multi-CV programming instructions are now valid. | 一度 |
備考:この命令は、デコーダーの基本アドレスと(有効な場合は)編成アドレスの両方に対して妥当です。基本アドレスに送信された場合、この命令は基本アドレスと(あれば)有効な編成アドレスの両方に影響します。編成アドレスに送信された場合、D
= 0
ではこの命令は基本アドレスに影響しません。編成アドレスに送信された場合、D
= 1
ではこの命令は効果がありません。
編成制御(0001
)
この命令は編成のセットアップと有効化・無効化の制御をします。
編成制御が有効なとき、デコーダーはその通常の機関車アドレスがその編成アドレスと一緒でない限り、その通常の機関車アドレスへの速度方向命令を無視します。速度方向命令は編成アドレスにのみ適用されます。
命令 100
と 101
によって制御される機能はデコーダー基本アドレスに返答しつづけます。命令 100
と 101
によって制御される機能は、CV 21 と 22 の適切なビットが有効ならば編成アドレスにも応答します。
デフォルトではデコーダー制御命令によって特に有効化されるまで編成アドレスへ送信されたコマンドに応答してすべての形式の双方向通信は有効にされません。運転モードの応答とデータ転送はそれぞれデコーダーアドレスの適切なコマンドに適用されます。
この命令の形式は下記です。
命令バイト = 0001CCCC 0 0AAAAAAA
2番目のバイトのビット7の値 1
は将来の使用のため予約されています。この命令において CCCC
は編成セットアップ命令を含み、2番目のバイトの AAAAAAA
は7ビットの編成アドレスです。アドレスが 0000000
なら編成は無効化されます。アドレスが0でない場合は編成は有効化されます。
(編成が 0000000
に設定されて)編成が無効化されている場合、双方向通信の設定は CV 26~28 で設定されます。
運転モード応答が有効である場合、すべての編成コマンドは運転モード応答を通じて応答しなければいけません。
CCCC
の形式は下記でないといけません。
CCCC |
説明 |
---|---|
0010 |
2番目のバイトで指定された編成アドレスを設定し、編成を有効化します。編成アドレスは CV 19 のビット0~6に保存され、CV 19 のビット7は 0 の値に設定されます。編成内のこの車両の方向は通常の方向です。編成アドレスが 0000000 なら編成は無効化されます。 |
0011 |
2番目のバイトで指定された編成アドレスを設定し、編成を有効化します。編成アドレスは CV 19 のビット0~6に保存され、CV 19 のビット7は 1 の値に設定されます。編成内のこの車両の方向は通常と逆の方向です。編成アドレスが 0000000 なら編成は無効化されます。 |
その他 | 将来の使用のために予約 |
発展的制御命令(001
)
これらの命令は発展的なデコーダー機能を制御します。パケットにただ1つの発展的制御命令が含まれえます。
この命令の形式は下記です。
001CCCCC 0 DDDDDDDD
CCCCC |
説明 |
---|---|
11111 |
128段階速度制御 |
11110 |
制限された速度制御命令 |
11101 |
アナログ機能群 |
128段階速度制御
命令 11111
は126デジタルデコーダー速度段階のうちの1つを送信することに使用されます。続く単一のバイトは、ビット7が方向(1
が前方で 0
が後方)、残りのビットが速度を示すのに使用されるように、速度と方向を定義しなければいけません。速度の最上位ビットはビット6です。U0000000
のデータバイト値は停止に使用され、U0000001
のデータバイト値は緊急停止に使用されます。これは最大126速度段階まで許容されます。運転モード応答が有効であるとき、128速度段階制御パケットの受信は運転モード応答によって応答されなければいけません。
制限された速度制御命令
命令 11110
はデコーダーの最大速度を制限するために使用されます。データバイト(上記で DDDDDDDD
)のビット7は制限された速度運転を有効化(0
)・無効化(1
)します。データバイトのビット0~5は S-9.2 に定義された速度段階です2。運転モード応答が有効であるとき、制限された速度命令の受信は運転モード応答によって応答されなければいけません。
アナログ機能群
この命令の形式は下記です。
001CCCCC 0 VVVVVVVV 0 DDDDDDDD
ただし、VVVVVVVV
はアナログ機能出力(0~255)、DDDDDDDD
はアナログ機能データ(0~255)です。アナログ出力 00000001
はボリューム制御です。
VVVVVVVV
の他の値は予約されています。この機能は可搬デコーダーの速度の制御に使用してはいけません。
運転モード応答が有効であるとき、アナログ機能群命令は運転モード応答によって応答されなければいけません。
残りの29の命令は将来の使用のために予約されています。
速度方向命令(010
・011
)
これら2つの命令は下記の形式です。
010DDDDD 後方運転
011DDDDD 前方運転
速度方向命令は多機能デジタルデコーダーに接続されたモーターに情報を送信するために使用されます。命令 010
は後方運転のための速度方向命令を示し、命令 011
は前方運転のための速度方向命令を示します。これらの命令ではデータは S-9.2 の B に定義されるようにビット0~3が速度を制御するために使用されます。CV 29 のビット1が 1
の値をもつ場合、 S-9.2 の B に定義されるようにビット4は中間速度段階として使用されます。CV 29 のビット1が 0
の値をもつ場合、ビット4は FL を制御するために使用されなければいけません3。このモードでは速度 U0000
は停止、速度 U0001
は緊急停止、速度 U0010
は1段速度、速度 U1111
は最高速です。それぞれの方向に14段の離散速度が提供されます。デコーダーが現在の速度段階の1段以内の新しい速度段階を受信した場合、デジタルデコーダーはこれら2つの速度段階の中間の段階を選択することがあります。This provides the potential to control 56 speed steps should the command station alternate speed packets. Decoders may ignore the direction information transmitted in a broadcast packet for Speed and Direction commands that do not contain stop or emergency stop information. When operations mode acknowledgement is enabled, receipt of any speed and direction packet must be acknowledged with an operations mode acknowledgement.
第1機能群命令(100
)4
この命令は下記の形式です。
100DDDDD
5つまでの補助機能(FL と F1~F4)が第1機能群命令で制御できます。ビット0~3は機能F1~F4 の値として定義されなければいけず、F1 はビット0で、F4 はビット3で制御されます。1
の値は機能がオンであること、0
の値は機能がオフであることを示さなければいけません。CV 29 のビット1が 1
の値をもつならばビット4は機能FL を制御し、そうでないならばビット4は意味をもちません。
運転モード応答が有効であるとき、第1機能群命令は運転モード応答によって応答されなければいけません。
第2機能群命令(101
)5
この命令は下記の形式です。
101SDDDD
8つまでの補助機能(F5~F12)が第2機能群命令で制御できます。ビット4がビット0~3の使われ方を定義します。ビット4が 1
のとき、ビット0~3(DDDD
)は機能F5~F8 の値として定義されなければいけず、F5 はビット0で、F8 はビット3で制御されます。ビット4が 0
のとき、ビット0~3(DDDD
)は機能F9~F12 の値として定義されなければいけず、F9 はビット0で、F12 はビット3で制御されます。1
の値は機能がオンであること、0
の値は機能がオフであることを示さなければいけません。
運転モード応答が有効であるとき、第2機能群命令は運転モード応答によって応答されなければいけません。
機能拡張命令(110
)
この群の命令はデコーダーに追加の機能のサポートを提供します(TN-3.05 参照)。
この群の2バイト命令の形式は下記です。
110CCCCC 0 DDDDDDDD
この群の3バイト命令の形式は下記です。
110CCCCC 0 DDDDDDDD 0 DDDDDDDD
5ビットの副命令 CCCCC
は32の別々の機能拡張副命令のために許可されます。
CCCCC |
説明 |
---|---|
00000 |
2値状態制御命令(長形式) |
11101 |
2値状態制御命令(短形式) |
11110 |
F13~F20機能制御 |
11111 |
F21~F28機能制御 |
2値状態制御命令(長形式)
副命令 00000
は3バイト命令でデコーダー内の32767の2値状態の内の1つの制御を提供します。この命令バイトに続く2バイトは DLLLLLLL 0 HHHHHHHH
の形式をもちます。最初のデータバイトのビット0~6(LLLLLL
)は2値状態アドレスの下位ビットを定義しなければいけません。2番目のバイトのビット0~7(HHHHHHHH
)は2値状態アドレスの上位ビットを定義しなければいけません。アドレスの範囲は1から32767までです。2番目のバイトのビット7(D
)は2値状態を定義します。1
の値はその2値状態がオンであることを示し、0
の値はその2値状態がオフであることを示さなければいけません。0
の値のアドレスは、32767個の2値状態のすべてを消去・セットをブロードキャストするために予約されています。命令 11000000 0 00000000 0 00000000
はすべての32767個の2値状態をオフに設定します。
すべての上位アドレスビットが0にセットされたアドレスで読み書きされた2値状態は、2値状態制御の短形式で読み書きされたものと同じです。コマンドステーションはこの場合短形式を使用しなければいけません。つまり、1から127まで2値状態制御はつねに短形式を使用して読み書きされなければいけません。長形式をサポートするデコーダーは同様に短形式をサポートしなければいけません。
2値状態制御命令(短形式)
副命令 11101
は2バイト命令で、デコーダーの127個の2値状態の1つを制御するために提供されます。この命令バイトに続く単一バイトは DLLLLLLL
の形式をもちます。2番目のバイトのビット0~6(LLLLLLL
)は1で始まり127で終わる2値状態の数を定義しなければいけません。ビット7(D
)は2値状態を定義します。1
の値はその2値状態がオンであることを示し、0
の値はその2値状態がオフであることを示さなければいけません。LLLLLLL
の 0
の値は2値状態制御の短形式で読み書きする127個の2値状態のすべてを消去・セットをブロードキャストするために予約されています。命令 11011101 0 00000000
はこの命令でアクセスされるすべての127個の2値状態をオフにセットします。
受信したパケットに直接応答してデコーダーのデジタル特性の出力やサウンド・他の特徴を制御しうるという点で、2値状態制御は機能によく似ています。しかし、2値状態制御はことなった読み書き方法と機能空間をもちます。なので、別の名前をもちます。
2値状態制御パケットは短形式も長形式もリフレッシュされません。なので機能状況の非揮発記憶装置が提案されます。運転モード応答が有効であるとき、2値状態制御パケットは運転モード応答によって応答されなければいけません。この命令の追加情報は技術的注釈を参考にしてください(TN-4.05)。
F13~F20 機能制御
副命令 11110
は2バイト命令で、8つの追加の補助的な機能F13~F20 を制御するために提供されます。この命令バイトに続く単一バイトは与えられた機能がオンにされるかオフにされるかをしめします。最下位ビット(ビット0)は F13 を制御し、最上位ビット(ビット7)は F20 を制御します。与えられた機能の D
の 1
の値はその機能がオンであることをしめし、与えられた機能の D
の 0
の値は与えられた機能がオフであることをしめさなければいけません。これらの機能の状況が NVRAM のようなデコーダー記憶装置に保存されることは推奨されますが、必須ではありません。これらの機能の状態がコマンドステーションにつねにリフレッシュされることは必須ではなく、想定すべきではありません。これらのパケットを生成するコマンドステーションは、機能の状態が変わるときはこれらのコマンドを少なくとも2回くりかえして送信しなければいけません。運転モード応答が有効であるとき、F13~F20機能制御パケットは運転モード応答によって応答されなければいけません。この命令の追加情報は技術的注釈を参考にしてください(TN-4.05)。
F21~F28 機能制御
副命令 11110
は2バイト命令で、8つの追加の補助的な機能F21~F28 を制御するために提供されます。この命令バイトに続く単一バイトは与えられた機能がオンにされるかオフにされるかをしめします。最下位ビット(ビット0)は F21 を制御し、最上位ビット(ビット7)は F28 を制御します。与えられた機能の D
の 1
の値はその機能がオンであることをしめし、与えられた機能の D
の 0
の値は与えられた機能がオフであることをしめさなければいけません。これらの機能の状況が NVRAM のようなデコーダー記憶装置に保存されることは推奨されますが、必須ではありません。これらの機能の状態がコマンドステーションにつねにリフレッシュされることは必須ではなく、想定すべきではありません。これらのパケットを生成するコマンドステーションは、機能の状態が変わるときはこれらのコマンドを少なくとも2回くりかえして送信しなければいけません。運転モード応答が有効であるとき、2F3~F28機能制御パケットは運転モード応答によって応答されなければいけません。この命令の追加情報は技術的注釈を参考にしてください(TN-4.05)。
残りの28の副命令は NMRA によって将来の使用のために予約されています6。
CV 読み書き命令(111
)
CV 読み書き命令は、プログラム線路もしくは主線路で CV をセットしたり書き換えたりすることを意図されています。この命令には2通りの形式があります。短形式は選択された高頻度に書き換える CV を書き換えるためにあります。長形式は選択された CV を検証したり書き換えたりするためにあります。単一の CV 読み書き命令のみが1つのパケットに含まれえます。
CV 読み書き応答
CV 読み書き応答が要求され、運転モード応答が有効であるとき、デコーダーは運転モード応答によって応答しなければいけません。
CV 読み書き手順(短式)
この命令は下記の形式です。
1111CCCC 0 DDDDDDDD
8ビットデータ DDDDDDDD
は下記の表にしたがって CCCCC
で識別される CV に配置されます。
CCCC |
説明 |
---|---|
0000 |
使用不可 |
0010 |
加速値(CV 23) |
0011 |
減速値(CV 24) |
1001 |
S-9.2.3 付録 B 参照 |
CCCC
の残りの値は予約されており、必要に応じて NMRA によって選択されることに決まっています。
この命令を使って CV を変更するために単一のパケットのみ必要です。デコーダーがこのパケットを受信した場合、運転モード応答で応答しなければいけません。
CV 読み書き手順(長式)
長式はすべての CV を直接操作することを許します7。この命令は、デジタルデコーダーで長いアドレスが有効なときと短いアドレスが有効なときの両方で妥当です。編成アドレスに送信されたとき、デジタルデコーダーはこの命令で動作してはいけません。直接 CV 読み書きに使用される命令の形式は下記です。
1110CCVV 0 VVVVVVVV 0 DDDDDDDD
要求される実際の CV は10ビットアドレスと最初のデータバイトの2ビットアドレス(アドレスの最上位ビット VV
)で選択されます。読み書きされる CV は提供された10ビットアドレス足す1です。例えば、CV 1 を読み書きするには10ビットアドレスは 00 00000000
です。
定義された命令の種類(CC
)は下記です。
CC |
説明 |
---|---|
00 |
将来の使用のため予約 |
01 |
検証バイト |
11 |
書き込みバイト |
10 |
ビット操作 |
検証バイト
10ビットアドレスで示される CV の内容はデータバイト(DDDDDDDD
)と比較されます。デコーダーがこのパケットの受信に成功し、その値が同一であり、かつデコーダー返答転送が有効な場合、デジタルデコーダーはデコーダー返答転送として CV の内容を返答しなければいけません。
書き込みバイト
10ビットアドレスで示される CV の内容はデータバイト(DDDDDDDD
)と置換されます。デコーダーが CV を変更する前に2つの同一のパケットが必要です8。これらの2つのパケットは線路で背中合わせになっている必要はありません。しかし、同じデコーダーへの別のパケットは書き込み操作を無効化します(これにはブロードキャストパケットも含まれます)。デコーダーが2番目の同一パケットの受信に成功した場合、デコーダーは CV 読み書き応答で返答しなければいけません。
ビット演算
ビット操作命令はデータバイト(DDDDDDDD
)に特別な形式を使用します。
111CDBBB
BBB
が CV でのビット位置を意味する場合において、D
は検証もしくは書き込みされるビットの値を含み、C
は操作が検証ビット操作もしくは書き込みビット操作のどちらであるかをしめします。
C |
説明 |
---|---|
1 |
書き込みビット |
0 |
検証ビット |
検証ビット命令と書き込みビット命令は(単一のビットに対してということを除いて)検証バイト命令と検証バイト命令と同様に動作します。検証バイト命令と同じ基準を使用し、適切な場合、運転モード応答が検証ビット命令に返答して生成されます。書き込みバイト命令と同じ基準を使用し、適切な場合、CV 読み書き応答が2番目の同一の書き込みビット命令に返答して生成されます。
D:アクセサリーデジタルデコーダーパケット形式
アクセサリーデジタルデコーダーは、転轍機制御やライトのオン・オフなどの複数の単純な機能の制御に使用されます。複数のアドレスに応答するデジタルデコーダーを開発して、単一のデジタルデコーダーでより多くのデバイスを制御することもできます。
基本アクセサリーデコーダーパケット形式
アクセサリーデジタルデコーターのパケットの形式は下記です。
前文 0 10AAAAAA 0 1AAACDDD 0 EEEEEEEE 1
アクセサリーデジタルデコーダーは、瞬間的なものや常時オンのものを制御するように設計できます。各出力がアクティブになる時間の長さは、設定変数 CV 515~518 によって制御されます。バイト2のビット3 C
は、アドレス指定されたデバイスをアクティブにするか非アクティブにするかを制御するために使用されます(デバイスがオンになる期間が設定された期間以下の場合、非アクティブにする必要はありません)。ほとんどのデバイスはペアになっているので、慣例としてバイト2のビット0 は、アクセサリーデコーダーが有効にするか無効にするかを区別するために使用されます。バイト2のビット1と2は、パケットが制御している4組の出力のうちどれかを示すために使用されます。9ビットアドレスの最上位ビットは、第2データバイトのビット4~6です。慣習として、これらのビット(第2データバイトのビット4~6)は1の補数表現になっています。
運転モード応答が有効であるとき、基本アクセサリーデコーダーパケットは運転モード応答によって応答されなければいけません。
拡張アクセサリーデコーダー制御パケット形式
The Extended Accessory Decoder Control Packet is included for the purpose of transmitting aspect control to signal decoders or data bytes to more complex accessory decoders. Each signal head can display one aspect at a time.
前文 0 10AAAAAA 0 0AAA0AA1 0 000XXXXX 0 EEEEEEEE 1
XXXXX is for a single head. A value of 00000 for XXXXX indicates the absolute stop aspect. All other aspects represented by the values for XXXXX are determined by the signaling system used and the prototype being modeled.
運転モード応答が有効であるとき、拡張アクセサリーデコーダーパケットは運転モード応答によって応答されなければいけません。
アクセサリーデコーダー用ブロードキャストコマンド
基本アクセサリーデコーダー用ブロードキャストコマンド
ブロードキャスト命令の形式は下記です。
前文 0 10111111 0 1000CDDD 0 EEEEEEEE 1
This packet shall be executed by all accessory decoders. CDDD is defined as specified in the paragraph on Basic Accessory Decoder Packet Format.
拡張アクセサリーデコーダー用ブロードキャストコマンド
ブロードキャスト命令の形式は下記です。
前文 0 10111111 0 00000111 0 000XXXXX 0 EEEEEEEE 1
All extended accessory decoders must execute this packet. XXXXX is defined as specified in the paragraph on Extended Accessory Decoder Packet Format.
アクセサリーデコーダー CV 読み書き手順
Accessory decoders can have their Configuration variables changed in the same method as locomotive decoders using the Configuration Variable Access Instruction - Long Form instruction defined above. For the purpose of this instruction, the accessory decoders’ address is expanded to two bytes in the following method. If operations470 mode acknowledgement is enabled, the receipt of an Accessory Decoder Configuration Variable Access instruction must be acknowledged in the same manner as the Configuration Variable Access Instruction – Long Form.
運転モードプログラミングのための基本アクセサリーデコーダーパケットアドレス
10AAAAAA 0 1AAACDDD
Where DDD
is used to indicate the output whose CVs are being modified and C
= 1
. If CDDD
= 0000
then the CVs refer to the entire decoder. The resulting packet would be
前文 10AAAAAA 0 1AAACDDD 0 1110CCVV 0 VVVVVVVV 0 DDDDDDDD 0 EEEEEEEE 1
アクセサリーデコーダーアドレス エラーバイト
CV 読み書き命令
運転モードプログラミングのための拡張デコーダー制御パケットアドレス
10AAAAAA 0 0AAA0AA1
Please note that the use of 0
in bit 3 of byte 2 is to ensure that this packet cannot be confused with the legacy accessory-programming packets. The resulting packet would be:
前文 10AAAAAA 0 0AAA0AA1 0 1110CCVV 0 VVVVVVVV 0 DDDDDDDD 0 EEEEEEEE 1
信号デコーダーアドレス エラーバイト
CV 読み書き命令
E:運転モード応答
The operations-mode acknowledgement mechanism as defined in S-9.3.1 and S-9.3.2 are the only valid acknowledgement in operations mode. Whenever an acknowledgement is requested, the decoder shall respond using this mechanism described in S-9.3.1 and S-9.3.2.
付録 A
This Appendix contains additional useful information and/or legacy instructions. A DCC product need not implement any items described in this appendix.
アクセサリーデコーダー CV 読み書き手順9
The following command is included for backward compatibility for some older accessory decoders. Its use is discouraged in new decoder designs.
The format for Accessory Decoder Configuration Variable Access Instructions is:
前文 0 10AAAAAA 0 0AAA11VV 0 VVVVVVVV 0 DDDDDDDD 0 EEEEEEEE 1
Where:
Symbol | Description |
---|---|
A |
Decoder address bits |
V |
Desired CV address - (CV 513 = 10 00000000 ) |
D |
Data for CV |
The bit patterns described by VV VVVVVVVV
in the second and third bytes and DDDDDDDD
in the fourth byte are also identical to the corresponding bits in the Configuration Variable Access Instruction - Long Form (see S520 9.2.1).
The purpose of this instruction is to provide a means of programming all parameters of an accessory decoder after it is installed on the layout. It is recommended that Command Stations exercise caution if changes to the address (CV 513 and CV 521) are allowed.
1. This instruction also applies to accessory decoders. ↩
2. In 128 speed step mode, the maximum restricted speed is scaled from 28 speed mode. ↩
3. FL is used for the control of the headlights. ↩
4. Any function in this packet group may be directionally qualified. ↩
5. Any function in this packet group may be directionally qualified. ↩
6. The NMRA shall not issue a NMRA Conformance Warrant for any product that uses an instruction or subinstruction that has been reserved by the NMRA. ↩
7. Because of the length of this instruction, care must be taken to ensure that the maximum time between packets is not exceeded. ↩
8. Note that CV 17 and CV 18 are a “paired CV”. A “paired CV” refers to a pair of CVs which taken together hold one piece of data. A Write Byte instruction to CV17 will take effect only when CV18 is written. Other paired CVs will work in a similar manner. See S-9.2.2 for more information on paired CVs. ↩
9. For backward compatibility, decoders should check the length of instruction packets when bit 7 of byte 2 is zero. ↩
訳注 1. May 15, 2022 の版で、この項のD
はF
に改定されており、D
との記述は誤りだと思われます。 ↩