エルムDCC交流会

エルムDCC交流会はDCC鉄道模型を楽しむ会です

【DCC】CV設定でbit値が出てくると「?」になってしまう人のために【CVとbit】

<CV設定でbit値が出てくると「?」になってしまう人のために>

とにかく難しいことは考えず、直ぐにでも変換したい人はこちら↓です。
ダウンロードして使用できます。

bit値をCV値に変換はこちら↓
bit値 ⇔ CV値 変換

docs.google.com

4桁アドレス入力 CV17とCV18の設定値計算はこちら↓
CV17とCV18

docs.google.com

DCCをやっているとCV設定を頻繁に行うようになってきます。その際にbit値を設定する項目があるといつも困惑してしまいます。bit値って何?と言う人も結構いるのではないでしょうか?

今回は(自分も含めて)bit値がさっぱりわからないと言う人向けに、難しいことはさておいてDCCにおけるbit値とCV値について超簡単に(雑に?)まとめておこうと思います。(自分もよくわからないので備忘録としてまとめます)
もし間違っていたらコメント等でお教えいただけると助かります。

DCCは様々な機能をCV値の設定によって変更できます。進行方向やライトの光り方などをCV番号に適切な数値を入力することによって設定できます。

デコーダーの取扱説明書を見てみるとCV設定一覧がありますが、各CV設定の項目をよく見てみるとbit値を入力することによって、より細かく設定できることがわかります。

<例:NGDCCライト用デコーダー DF11r4 のCVリスト>

CV112  灯火の明るさ設定と灯火種別(光り方)を細かく設定できる

bit0-3のbit値を変更することによって、様々な光り方に設定することができる。
0110や1110など「0」と「1」の並びを変更することによって、設定が変更できる様になっています。

このbit値をCV値に変換してデコーダーに入力するわけですが、その変換方法がいつもわからなくて困ってしまいます。

<DCCにおけるbit値 bit値は2進数 CV値は10進数>

とにかく難しいことは置いといて、コレだけは覚えておくべき基本から。
DCCににおいてbit値はCVの設定を細かくプログラミングする数値だと考えておくことにしましょう。

bit値は「0」と「1」のどちらかの数字が入ります。つまり2進数です。

DCCのbit値は、NMRAというDCCの統一規格だとbit:7~bit:0の合計8つ。
ほとんどのデコーダーは、NMRA規格に則っていると思います。
例外としてレンツ社の場合はbit:8~bit:1の合計8つです。
いずれにしても8つの「0」と「1」の数字が並んでいると考えておけば大丈夫です。
<例>
0000 0000
0000 0110 など

bit値は2進数であるのに対し、CV値は10進数です。
10進数とは、いつも使ってる数字の増え方だと思っておいて大丈夫です。

<例>
12345678910
11,12,13…………20,21,22,………99,100,101………

とりあえずコレだけ覚えておきましょう!
あとは上記URLの計算ソフトにbit値を入れれば、CV値が表示されます。

<例:NGDCC ライトデコーダー DF11r4 のCV112の場合>

CV112 の 灯火の種類の変更
bit値      CV値
1111 0110 ⇔ 246 ヘッドライト(フェードイン/フェードアウト)
1111 0100 ⇔ 244 室内蛍光灯
1111 1010 ⇔ 250 フリッカー
1111 0001 ⇔ 241 ヘッドライト

表計算ソフトでbit値をCV値に変換してみる>

bit値をCV値に変換するには、難しそうな計算が必要なんですが、
自分で計算できなくても表計算ソフトの関数を使って計算できるみたいなので、やってみることにしました。

自分で変換シートを作ってみたい方はご参考にしてみてください。

bit(2進数)→CV値(10進数変換)
2進数を10進数に変換(BIN2DEC関数)=BIN2DEC(2進数)

表計算ソフトの左側にbitの8つの数字を入力、右側には関数BIN2DECを入れて2数文字列のセルを指定します。

8つの数字の先頭に0があると省略されて「0000 0100」が「100」と表示されたりしてしまうので、表示の形式を8桁に設定しました。表計算ソフトの種類によって設定方法が色々あると思います。当方はMacOS標準のNumbersを使用しています。

 

逆のパターン、CV値をbitに変換してみます。あまり使う機会はないかもしれませんが…。

CV値(10進数変換)→bit(2進数)
10進数を2進数に変換(DEC2BIN関数)=DEC2BIN(10進数,[桁数])

表計算ソフトの左側にCV値を入力、右側には関数DEC2BIN(を入れて10数文字列のセルを指定します。
その横に「,8」と入れておくと8桁表示になりました。

<4桁アドレス CV17とCV18>

「CV17」と「CV18」の計算を表計算ソフトを用いて計算してみました。
デコーダーに4桁アドレスを入れる場合、デコーダーとコントローラーの組み合わせ次第では直接4桁アドレスを入力できない時があります。そんな時には、「CV17」と「CV18」に適切な数値を入力して4桁アドレスを設定する必要があります。

計算式は

CV17=(入力したい4桁の数字/256)+192
CV18=(入力したい4桁の数字/256)の余りの数字

となるらしいです。

上記URLの表計算で、設定したいアドレスに4桁の数字をいれると「CV17」と「CV18」の適切な数値が表示されます。

4桁アドレスを設定したらCV29(進行方向)も続けて設定しておいたほうが良いでしょう。
CV29 4桁アドレス
正方向 38
逆方法 39

<まとめ>

表計算ソフトでCV値を計算してみました。今回はbitについての詳しい解説は省略しています。この記事を書いている本人も、bitについてはよくわかっていないので
詳しく知りたい方は他のサイトをご参照ください。

DCCにおけるbit値とCV値については

●bit値は2進数 CV値は10進数
●DCCのbit値は、bit:7~bit:0の合計8つのbit値があります。
NMRAというDCCの統一規格だとbit:7~bit:0の合計8つ。

コレだけ覚えておきましょう。
あとは表計算ソフトで計算して、CV値をデコーダーに入力すればOKです。

なにか間違いなどがありましたらコメント欄で教えて下さい。