FC2ブログ

Entries

ロクハン DCCデコーダ 新製品レビュー


 ロクハンからDCCデコーダがまもなく発売になりますが、発売に先行しまして、サンプルを特別にご提供いただきましたので、レビューをさせていただきます。


 サンプル提供いただいたのは以下の2種です。

  ・A053 DCCデコーダー 小型汎用タイプ

  ・A059 DCCデコーダー 室内灯型マルチタイプ


 まずは、パッケージ。一般的なロクハンのレールやアクセサリ製品と同じデザインですが、黒と赤でなんかかっこいいですね。

20180711_113003334_iOS.jpg


 A053 DCCデコーダー 小型汎用タイプ の中身です。取扱説明書は日本語と英語の2種類が付属します。デコーダ本体と熱収縮チューブが付属します。

20180711_124214252_iOS.jpg


 デコーダ本体です。サイズは約13.6x7.6mmです。ワンコインデコーダ(約23x10mm)を見慣れているせいか、とても小さく感じます。

20180711_124244548_iOS.jpg


 続いて、A059 DCCデコーダー 室内灯型マルチタイプ の中身です。

デコーダ本体と、集電バネと固定ねじが付属します。取説は汎用タイプと共用で、日本語と英語の2種が付属します。

 ロクハンのWebにも記載されていますが、基板を切断することで、複数種の車両に搭載可能になっています。(室内灯Aタイプ、B1タイプ、B2タイプ、Cタイプ、Dタイプ)

 なお、取説を読むと、「切断せずにNゲージへの搭載用」としても考慮されています。

20180711_124652476_iOS.jpg


 さすがにZゲージ用とのことで、コンパクトに出来ていています。


 ヨドバシカメラではもう予約受付を中止しているくらいの人気のようです。

  ・A053 DCCデコーダー 小型汎用タイプ

  ・A059 DCCデコーダー 室内灯型マルチタイプ


 Zゲージは所有していないので、NやHOゲージでどのように使えるかという点で、車両等への搭載、電気的なレビューを今後実施したいと思います。


 サンプル提供協力:ロクハンさま

Eagleで面付してみた

 この度、Eagle CADで面付けをしてみました。


 実は、古くはOlimexに発注していた頃から、CADでの面付けに今まで抵抗があり、業者任せにしていたのですが、DCC電子工作連合の仲間からアドバイスを受けて今回チャレンジしてみました。


 結論から言うと、基板図の編集画面上で、コピー&ペーストするだけなのですが、ポイントとしては、基板のシルクで印刷される部品番号が重複できない関係で、勝手に繰り上がる対策が必要です。


 異なるレイヤーにコピーして回避することが通例のようですが、今回は基板規模が小さいので、安宅締め部品番号のシルクを文字情報として個別に記載することで回避しました。


 あとは、Elecrowのページに書いてある、面付時の注意事項を参考にして、基板を設計しまして、完成です。今回は、Vカットではなく、ミシン目にて設計してみました。


Eagle panelize


 備忘録で、参考にしたWebを記載しておきます。

  http://linux.papa.to/wordpress/?p=383

  https://blog.goo.ne.jp/jh3kxm/e/6d974ef0d3aaa6fc3b675f9f7a1eccaa



PICKit Adapter


 PICKitでPICマイコンに書き込むときは、基板にICSP端子を設けるのが一般的ではありますが、基板に実装する前に書き込みたい場合や、部品として書込みしたうえで供給したいといった場合、治具を使って書き込むことになります。


 秋月電子でもこんなものを売っています。2000円です。高い!

 しかもPIC種類ごとの設定が面倒な感じです。

 http://akizukidenshi.com/catalog/g/gK-05355/


 種類が「た~くさんあるPICマイコン」ですが、実は、ピン数が同じPICはピン配列が極力おなじようになっているので、法則性を解析して整理すると、以下のようなボードができます。


PICkit Adapter


 ゼロプレッシャーソケットと、8/14/20ピン用、16/18ピン用、28/40ピン用のPICKitの接続端子を設けました。


 ピン数に応じて、PICKitを差し込む位置を変えることで、これで面倒なジャンパピンの設定は不要ですし、ジャンパ設定を間違えて、PICを壊すこともなくなります。


 実は、大昔にユニバーサル基板で作ったものがあるのですが、経年とともに、老朽化を迎えているので、設計してみました。需要あれば頒布もしたいと思います。



確実に組みたてられるように基板2題

 今日は「ワンコインデコーダシリーズ」を確実に組み立てられるようにと思って、基板を2種類設計してみました。


<その1> デコーダテスター基板(5x5cm) です。


ワンコインデコーダ(モータ用)と、NEM652用、ねじ止め端子装備です。

FLデコーダはちょっと接続に工夫が必要です。(青線の処理)

製作後、車両に搭載する前にデコーダの試験が可能です。


DecTester.png


<その2> ワンコインFLデコーダDIP版(3.4x1.0cm)です。


表面実装部品のはんだ付けはちょっと。。。という方向けです。

すべてリード部品で製作できるようにしています。

FLデコーダの出力トランジスタを省略し、PICマイコンの出力を直接、両極性Fxデコーダとして使用します。HOスケールなら余裕、Nゲージでも頑張れば搭載可能かと思います。


OnecoinDec-DIP.png


近日中に、プリント基板の試作発注をかけたいと思います。


米粒PICでデコーダ その2

PIC10F322で、CV値を保存するための検討を行いました。


データシートを見ると、プログラムメモリとは別の領域に読み書き出来そうなものを発見。

2000h~2003hにあるユーザIDの領域です。

user_id_01.png


ということで、もう少し詳細を調べてみました。EEPROMと比較すると、制限があるようです。


・1番地あたり、14bit(0x3FFF)のデータを保持できる。

・1->0の書き込みは事前の消去不要。

・0->1の書き込みは事前の消去必要。

・なので、書き込み前に、いったん消去(3FFFで埋める)する必要がある。

・しかも消去は2000h~2003h、一度に行われる。

・初期値の設定は下位4bitまでしかできない。(0x0000~0x000F)

・初期値の設定を行わない場合は0x3FFFが書き込まれる。

・消去、書き込みにはEEPROMと同じようなシーケンスを踏む必要がある。


 ファンクション(FL)デコーダとして使うには、2桁アドレス、4桁アドレス、前後進の入れ替えぐらい設定できれば良いと考えます。

 つまり、CV1、CV17、CV18、CV29の4つを保持できれば良いです。

 そこで、2000hにCV1を、順にCV17、CV18、CV29と割り当てることとします。


 OPS命令を受信するたびに消去、書き込みを行うと、目的のCV値以外も消してしまうので、CV1、CV17,CV18と順次受信して仮の変数に代入しておき、CV29を受信した際に、まとめてこれらを書き込みをするように工夫してみました。


 また、初期値の制限もあるので、CV1=3、CV17=0、CV18=0、CV29=2として、最初はアドレス3のデコーダとして動作させ、その状態で、OPSで上記操作で書き込むことで、好きなアドレス、前後進を設定できるようにしました。

user_id_03.png


 この状態で、アドレス3のデコーダとして動作させ、OPSで順に、CV1=58、CV17=192、CV18=128、CV29=34を書き込んでみました。その後、書かれたUserIDをMPLAB X IDEで読み出してみました。

user_id_04.png


 16進数表記ですが、正しく書き込まれていることが確認できました。当然ですが、アドレス128でF0制御も可能でした。これらを、PICの起動時に読み込むことで、アドレスを適宜設定されたデコーダとして動作することができるわけです。


 あと、この前段で、プログラム容量が厳しかったので、DCC信号の読み取り処理をサブルーチン化してダイエットしてみました。


 これで、どれくらいの容量になりますでしょうか。。。。

 結果、405命令で79%となりました。

user_id_02.png


 CV設定操作を誤ると、アドレスが不定となり、以後OPSでの設定もできなくなってしまうので、CVリセット機能を実装する必要がありそうです。


 とりあえず、何とか、デコーダとしては使えそうな道筋は立ちました(^^;)


 この「米粒」みたいなPICでどんなデコーダを作るのが面白いか、考えたいと思います。