ワンコインFLデコーダ4 (One Coin FL Decoder 4) ver4.1 (スリム版共通)
300円以下の激安DCCデコーダ!
サイズワンコイン!部品代ワンコインを目指した、DCCファンクションデコーダをご紹介します。FLデコーダは特に安価に製作できます!
(2016.2.6時点で1個あたり290円で製作できます。)
【ご注意】(2022.5.29追記) PICマイコンへの書込みに『SNAP』を使用する場合『PIC12F1822』を使用してください。 これは、古いデバイス『PIC12F629/675/683』をサポートしていないためです。 半導体の高騰に伴い安価だった古いデバイスも価格が上昇しておりコストメリットが少ない状況です。 |
スリム版はプリント基板の板厚が0.6mmになっているだけで組み立て方法は共通です。スマイルコネクタアダプタはスリム版専用を使用ください。Ver4.1はスマイルコネクタを短縮し基板サイズを小型化したものです。部品配置、ソフトなどはVer4.0と差異はありません。
■FLデコ-ダ
サイズはVer4.1で約23X10mmになりました。(写真はVer4.0は約27x10mmです。)
モータ用/FL両極性/ポイント用の1台3役兼用のワンコインデコーダ4のページはこちらです。
ワンコインデコーダの旧バーションは別ページを参照ください。
トピックス
2018.06.09 Youtubeに組みたて方法の動画をUPしました(成功への手引き参照)
2017.04.28 VER4.1に関する事項を追記。
2017.04.01 C2の容量を1uFから10uFに変更しました。(1uFで問題なければ改装する必要はありません。)
2016.05.07 F0(前進/後進)に加えて、F1~F12までのファンクション番号の出力に対応しました。
2016.03.27 ワンコインデコーダ4シリーズ公開開始に伴い名称変更。(FL両極性デコーダはワンコインデコーダ4に統合しました。)
2017.04.01 C2の容量を1uFから10uFに変更しました。(1uFで問題なければ改装する必要はありません。)
2016.05.07 F0(前進/後進)に加えて、F1~F12までのファンクション番号の出力に対応しました。
2016.03.27 ワンコインデコーダ4シリーズ公開開始に伴い名称変更。(FL両極性デコーダはワンコインデコーダ4に統合しました)
2022.05.29 PIC12F1822版のソフト公開開始に伴いページ修正。(SNAPが古いデバイスに対応していないことを踏まえた対応です。)
はじめに...
鉄道模型をDCCシステムで楽しんでいる方が増えてまいりました。私も導入してからというもの高価なデコーダを買っては所有車両に搭載工事を行ってきました。ある日ふと、購入したデコーダを眺めているとPICマイコンが搭載されていました。電子工作でよく使われているPICマイコンなら、デコーダを自作できるかもと思い、研究をはじめました。
どうせ作るなら多くの人がDCCを導入しやすくするために、サイズも費用もワンコイン(500円程度)で製作できることを目指し開発を進め、完成したのが「ワンコインデコーダ・シリーズ」です。
改良版第4弾の「ワンコインFLデコーダ4」は。「ワンコインデコーダ3」と同様に、やあさん、スマイラ―さんのアイデアである、スマイルコネクタと同じ6ピンのカードエッジコネクタ搭載し、表面実装パッケージのPICマイコンへのソフト書込みの敷居を低くするように専用基板を作成致しました。(もちろん頒布も行っています)
※ただし、スマイルコネクタPIC版(Type-P)はワンコインデコーダシリーズ専用になります。
ファンクション用のデコーダです。外部コンデンサ用端子も装備し、終電が不安定な車両への配慮を行いました。
一般的な青、白、黄色線で接続するFLデコーダタイプです。(ライトユニットライトユニットの改造が不要な両極性FXタイプはワンコインデコーダ6を利用してください。)
CV設定を変更することで、F0(前進/後進)に加えて、F1~F12のファンクションに対応しています。
「ワンコインFLデコーダ4」では部品の入手製を考え、秋月電子で入手可能な部品を中心に選定し、回路、ソフトの変更を行いました。
Zゲージでも搭載できるように回路の簡素化による部品点数の削減による小型化と、半田付けしやすい比較的大きいサイズの表面実装部品にこだわり、製作しやすく、組み込みしやすいデコーダとなるように工夫を行っています。
ご注意: ・本サイトの情報を元にした製作等に関わる破損、傷害等につきましてはご自身の責任のもとでお願いします。 ・ご紹介している方法は一例です。一部部品を規格外で使用している部分があり、最善の方法とは限りません。 ご自身でもご検討いただければ幸いです。 ・使用する部品の規格を確認のうえ必要であれば定数、回路の変更等をお願いいたします。 |
概要
NMRA規格のコマンドを受信し動作するDCCのデコーダです。ただしNMRAが規定するすべての内容を盛り込んではいませんので、準拠とは申しません。ご注意をお願いします。
マイクロコントローラーには電子工作で人気のあるマイクロチップテクノロジー社のPICマイコンを用います。8ピンのPICマイコンで安価なPIC12F1822(PIC12F629,PIC12F675,PIC12F683)が使用が可能です。
一部環境で動作が不安定な時はASMソースのDCC信号受信タイミング調整を行う必要があります。
(PICは書き込むソフトを各々別に用意して対応します。基板は共通です。)
3216サイズの抵抗が秋月電子で購入できませんが、当サイトで基板とともに頒布していますので、ご利用ください。それ以外の部品は秋月電子で調達してください。
プログラムは、各PICマイコンに応じた、アセンブラソース3種とHEXファイル3種を公開いたします。(適切に書き込んでください。)
電源にはDCC信号電流を整流しDC12Vを生成しています。また、マイコン回路自体は5Vで稼動させるので、78L05を搭載し、5Vを生成しています。PICマイコンでFET回路を制御できる信号を生成します。FETはuPA2753GRを使用しており、いずれも秋月で入手可能でます。
特徴











回路図
■FLデコ-ダ
回路図です。EAGLEで作成しました。
2017.04.01 C1,C2コンデンサ容量変更(回路図の容量を適宜読み替えてください。)
回路の説明
回路を簡単に説明しておきます。レールからの電力をショットキーバリアダイオードを介して整流します。電流容量は1Aあれば十分でしょう。 10μFのチップ積層コンデンサで平滑し直流12Vを得ます。12VはFETやHブリッジを介して、LEDや電球に電流を供給する電源になります。3端子レギュレータIC(78L05)を用いてPICマイコンの電源となる5Vを得ます。
レールからのDCC信号は33kΩの抵抗を介してPICマイコンのPOIRTA/GP2端子に入力します。マイコンでソフト処理された速度信号はファンクション(方向別)信号としてGP4,5端子に出力されます。
ファンクション制御を行うために、FETはuPA2753GRをを使います。
各端子の使用方法は次のとおりです。(もしも、入れ替える場合はASMソースを直してください。GP3は入力専用です。)
PORTA/GP2 ; DCC信号入力(推奨)
POTRA/,GP4 ; F0出力(逆方向)
PORTA/GP5 ; F0出力(正方向)
集電が安定しない車両に搭載すると電源電圧が不安定になりPICマイコンがリセット繰り返し、走行がギクシャクする場合があります。この場合、外付けコンデンサ回路を設けると改善できる場合があります。(詳細は後述します。)
部品リスト
パーツ集めで秋葉原等の電気街に足を運ぶのも電子工作の楽しみのひとつですが、最近はネット通販を上手に利用し部品あつめをすることも便利かと思います。3216サイズのチップ抵抗以外は秋月電子ですべて入手できます。3216サイズのチップ抵抗と基板は、当サイトの頒布を活用頂ければと思います。
表中の金額は秋月電子のWebを参考に見積しています。部品の纏め売りで単価が安くなっている部品を私が良く利用するので少量の部品を調達すると割高になる場合があります。まとめ買い欄に「@」印があるものはまとめ買いした際の単価を示しています。
ワンコインデコーダの名目どおり、安価(500円以内!)にすることができました。部品点数の削減効果が大きいと思います。
また、リスト以外に「ハンダとこて等の工具」、「電線」、「ユニバーサル基板(場合によっては専用プリント基板)」「(必要に応じて)ICソケット」等の用意が必要です。
ワンコインFLデコーダ4部品表
■FLデコ-ダ部品 | 部品番号 | 仕様 | 個数 | 入手先 | 参考単価 | 備考 |
チップ抵抗 | R1 | 33KΩ | 1 | 頒布 | 基板に同封 | 3216サイズ |
チップコンデンサ | C1,C2 | 10uF/50V | 2 | 秋月 | @20 | |
PICマイコン ※ | IC1 | PIC12F1822-I/SN (※推奨) | 1 | 秋月 | @140 | いづれか1つ |
PIC12F683T-I/SN | 秋月 | @120 | ||||
PIC12F629T-I/SN | 秋月 | @140 | ||||
PIC12F675T-I/SN | 秋月 | @160 | ||||
三端子レギュレーター | IC2 | TA78L05F | 1 | 秋月 | @25 | |
デュアルMOS-FET | Q1 | uPA2753GR | 1 | 秋月 | @25 | |
ショットキーバリア ダイオード |
D1,D2,D3,D4 | RB160M-30TR | 4 | 秋月 | @15 | いづれか4つ |
SS2040FL | 秋月 | |||||
専用プリント基板 | PCB | スマイルコネクタPIC版(Type-P) | 1 | 頒布 | @100 | |
熱収縮チューブ | Φ10×0.25×1m | 秋月 | - | |||
参考合計価格 | 290円 | 2016.2時点 |
参考単価はまとめ売りの金額を数量で割った参考の単価です。
秋月電子の情報はリンクのページからたどって見てください。
とくに通信販売で入手される場合は、単価、員数、送料で条件が変わってきますので、よく勘案してから注文しましょう。
部品の概要
ワンコインFLデコーダ4で使用する部品を紹介します。
チップ抵抗 33kΩ (3216サイズ)
(写真は「303」表示の30kΩです。33kオームは「333」もしくは「3302」表示です。)
3216サイズと呼ばれる、3.2x1.6mmのサイズも抵抗です。秋月で扱っていないので、頒布しているプリント基板にセットしています。
部品の向き(極性)はありません。
チップコンデンサ (3216サイズ)
チップ抵抗と同じ3216サイズを選定しています。
電圧は12Vと5Vなので耐圧25V品を使用しました。極性はありません。HO等使用電圧が高い場合は耐圧50V品を使用すると、設計余裕度があがります。
袋から開封すると選別できなくなるので、半田付けする際に注意しましょう。
PICマイコン : PIC12F1822-I/SN
PIC12F629,375,683T-I/SNも刻印以外の外観は同じです。
PICとはマイクロチップテクノロジー社のワンチップマイコンのことで、電子工作ではよく利用されているマイコンです。
写真はプログラムメモリ容量が2Kワードある8ピンのPIC12F1822-I/SNです。この他、書込み環境に問題なければPIC12F629、675、683T-I/SNも利用可能です。
一部環境では、ASMソースのDCC信号受信タイミング調整(標準値 0x08)が必要になる場合があります。(標準値変更0x07->0x08 2016.01.04)
プログラムの書き込みには、Pickit2等の書込み器(プログラマー)を使用します。
部品の向き(極性)があります。
※PICなどマイクロコントローラーは目的の動作をするようにプログラムを書き込んで使う部品です。
プログラムを書き込まないで製作した場合は動作しません。
3端子レギュレータ:TA78L05F
3端子レギュレータとは電源ICの仲間です。
変動する電源から、安定した決まった電圧の電源を生成する目的に用いられます。
SOT-89パッケージです。部品の向き(極性)があります。他メーカの互換品でもOKです。
デュアルMOSFET : μPA2753GR
デュアルMOSFETのうち、秋月で入手できるμPA2753GRを使用します。 ファンクション回路の電流を制御するためのFETがワンチップに2回路入っています。外観とリード線の名称はデータシートを参照してください。
モータ用デコーダで使用しているBD6231とは機能互換性、ピン互換性はありません。ご注意ください。
ショットキーバリアダイオード:RB160M-30TR、SS2040FL
(写真はRB160M-30TR)
DCC信号を整流し、直流電力を得るためにブリッジダイオードを用います。秋月電子で入手できるショットキーバリアダイオードから2種を選定しています。
お好きなほうを選んでください。部品の向き(極性)があります。
専用プリント基板
製作するタイプによって、プリント基板を使い分けています。
■FLデコ-ダ
当サイトで頒布している専用のプリント基板です。スマイルコネクターPIC版(Type-P)を装備し、面実装のPICマイコンへの書込みを容易にしています。
※重要 スマイルコネクタPIC版(Type-P)はワンコインデコーダシリーズ専用になります。
DesktopStationのデコーダ(Type-A)を挿入すると破損します。注意ください。
※重要 基板は何枚か繋がって製造されるため折って切断します。このためバリが残りますので、ニッパーで荒修正し、ヤスリで仕上げます。
きれいに仕上げずに、無理やりコネクタに挿入すると、最悪、コネクタが壊れます。
熱収縮チューブ:Φ10×0.25×1m
プリント基板への半田付け後にショートによる故障を防ぐための絶縁チューブです。
ドライヤーで熱を与えて、収縮させます。
製作方法
「ワンコインFLデコーダ4」の製作方法を紹介します。写真はver4.0ですが、VER4.1でも同じです。表面の番号順、裏面の番号順に半田付けを行います。
部品と部品の間が狭いので、順番を考えて半田付けを行わないと、作業がとても難しくなります。番号は推奨する順番です。
また、①のPICマイコンを半田付けした後、いったん、マイコンを書込みして正常に半田付けできているか確認をすると、失敗が少ないです。
(すべて半田付けした後でも書込み可能(書き換え可能)ですが、半田付け不良の際、探求が難しくなります。)
部品配置図です。部品番号は回路図の番号と一致しています。


■FLデコーダ 部品実装例
(表側)
(裏側)
成功への手引き (組み立て方)
まずはPICマイコンのみを半田付けして、正常に書込みできるか確認します。この時点で正常に書込み出来ないようであれば、半田付けをやり直します。
あせらず半田付けをすることが大事です。部品が小さいので、私はマスキングテープで基板と部品を固定したうえで半田付けを行っています。
以下の動画はFLタイプではないですが、コツは同じですので、参考にしてください。

書込み方法はこのページを参照してください。

サンプルソフト
「ワンコインFLデコーダ4」のサンプルソフトです。
通常はHEXファイルをPickit3やSNAP等のライターでマイコンに書き込んでください。
書込みに使用するアダプタ(ハードウェア)はこちらのページを参照ください。
書込みに使用するソフトのインストールはこちらのページを、ソフトの使用方法はこちらのページを参照ください。
参考までに、ソースファイルも置いておきます。動作方式の解析、改良等に活用ください。MPLABでアセンブルしてください。
動作しない場合の調整方法は下述いたしますが、自己責任でのご利用をお願いします。当方でのサポートも致しかねます。
すべてのDCC環境で、動作保証するものではありません。
なお、著作権は主張します。改良版を作成される方は出典を表示のうえ、公開してください。その際、ご連絡をいたければ、リンクを張らせていただきます。
(無断転載は禁止します。また、商業目的の利用も禁止とします。)
尚、ファイルは右クリックし対象を保存を選択して下さい。保存すると拡張子がtxtになる場合がありますので適宜hexに修正してください。
最新ソフトウェア一覧 (FLデコーダ)
PIC種類 | ファイル種類 | Ver | 日付 |
PIC12F1822用 | ![]() |
Ver0.92beta | 2022.05.29 |
![]() |
Ver0.92beta | 2022.05.29 |
PIC種類 | ファイル種類 | Ver | 日付 |
PIC12F629用 | ![]() |
Ver3.3a | 2016.05.07 |
![]() |
Ver3.3a | 2016.05.07 | |
PIC12F675用 | ![]() |
Ver3.3a | 2016.05.07 |
![]() |
Ver3.3a | 2016.05.07 | |
PIC12F683用 | ![]() |
Ver3.3a | 2016.05.07 |
![]() |
Ver3.3a | 2016.05.07 |
(DCC信号の0/1判定部はしみずさんのページのDCCデコーダを参考にしています。)
旧Ver ソフトウェア一覧 (FLデコーダ)
PIC種類 | ファイル種類 | Ver | 日付 |
PIC12F629用 | ![]() |
Ver3.2 beta | 2016.01.04 |
![]() |
Ver3.2 beta | 2016.01.04 | |
PIC12F675用 | ![]() |
Ver3.2 beta | 2016.01.04 |
![]() |
Ver3.2 beta | 2016.01.04 | |
PIC12F683用 | ![]() |
Ver3.2 beta | 2016.01.04 |
![]() |
Ver3.2 beta | 2016.01.04 |
PIC種類 | ファイル種類 | Ver | 日付 |
PIC12F629用 | ![]() |
Ver3.1 beta | 2016.01.01 |
![]() |
Ver3.1 beta | 2016.01.01 | |
PIC12F675用 | ![]() |
Ver3.1 beta | 2016.01.01 |
![]() |
Ver3.1 beta | 2016.01.01 | |
PIC12F683用 | ![]() |
Ver3.1 beta | 2016.01.01 |
![]() |
Ver3.1 beta | 2016.01.01 |
PIC種類 | ファイル種類 | Ver | 日付 |
PIC12F629用 | ![]() |
Ver3.0 | 2015.11.11 |
![]() |
Ver3.0 | 2015.11.11 | |
PIC12F675用 | ![]() |
Ver3.0 | 2015.11.11 |
![]() |
Ver3.0 | 2015.11.11 | |
PIC12F683用 | ![]() |
Ver3.0 | 2015.11.11 |
![]() |
Ver3.0 | 2015.11.11 |
注意:アナログ対応について
アナログ対応はレールの電圧極性を読み取り、モータドライバの方向制御をおこなっているだけで速度制御は供給電圧がそのままモータに加わるようになっています。PICマイコンが正常に動作するのには約8V程度(3端子レギュレータのドロップ含む)の電圧が必要であり、特にNゲージ等のモータ容量の小さい模型は低速運転が効きない場合があります。DCC運転がメイン機能で、アナログ対応は、あくまで簡易機能とお考え下さい。
(CV初期設定でもOFFにしてあります。)
注意:CVの読み込みについて
CVの読み込みにはコマンドステーションから読み込みするときの応答として、消費電流の増加で応答しています。
モータおよびライトを短い時間だけONの制御をおこない、消費電流を増やしています。
モータ接続せずにデコーダを使用している場合や、ライトがLED等で消費電流が低い場合、応答が正常に認識されず、コマンドステーション側でCVの読み込み処理に失敗する場合があります。(電流値の目安はDCCの規格上60mA以上となっています。)
車両への搭載
動作確認が終了したら、車両に搭載します。モータドライバは出力保護回路が搭載されていますが、過信はできません。FETは保護回路無しですので、各部の絶縁には十分に注意しましょう。(最悪、部品が焼損します。)■FLデコーダ

<重要>
F0以外のファンクション番号で使用する場合、CV33とCV34で設定すると黄色線の制御が、CV35とCV36で設定すると白色線の制御が可能になります。
Keep aliveコンデンサコンデンサ回路はオプションです。集電性能が悪くギクシャクする場合にお試しください。
(ただし、線路電源ON時にコマンドステーションの負担になりますからほどほどにしましょう。)
トラブル解決(調整方法ほか)
どうしても、DCC信号の読み込みがうまくいかないようなら、プログラムのソースファイルにある、読み込みタイミングの調整値を変更し、HEXファイルを作成しPICに書き込んでみてください。初期値は16進数で20です。ソースでは0x20と表記しています。これを0x1fとか0x21等にしてみて試してください。大抵は初期値のままでOKのはずです。
トラブル解決の進め方、掲示板に寄せられるFAQ等をPdfにまとめています。参考にしてください。
WebNucky部品頒布(トラブル解決編)(pdf)はこちら
CV設定
CV設定については、こちらのページを参照してください。DCS50Kで「AD4」と表示され4桁アドレスを設定するモードでは、DCS50Kにバグがあるため一部DirectモードによるCV設定が行われる場合があります。このため、CV29が正常に書込みされない場合があります。この場合、CV29を新たに設定(CV設定値38)することで、使用可能になります。
本デコーダでの4桁アドレス設定は、CV17,CV18,CV29を個別に設定することをお勧めします。詳細はCV設定ページを参照してください。
ユーザーサイト












最後に...
電子工作の経験があれば、自作DCCデコーダが作れると思います。半田付けミスさえしなければ短時間で仕上がってしまいますから、時間をかけて丁寧に作りましょう。
自分で作ったDCCデコーダで運転を思い存分に楽しみましょう!