HOME >> 鉄道模型工作室 > 新登山鉄道 信号機を作ろう その2
物置部屋の登山鉄道ユニットを取外し、独立したレイアウトとして新登山鉄道を工作して来たが、信号機の設置や右半分のゾーンの工作が未着手状態であった。 そこでその信号機の工作を実施している。 今回は、PICマイコンのプログラム作成を実施した。
.
■ 寄り道
PICマイコンのプログラム検討を始めた時、あまりにも簡単であったので何もマイコンを使う理由がない事に気が付いた。 でも、ハード工作が進んでしまっているので後の祭りであった。 そして、その簡単な回路を右に示す。 専門外でつたない知識ではあるが、なんと簡単な回路で良いのであった。
IN ポートの入力信号がLOW の場合は、トランジスタがOFFとなり赤信号用のRのLEDが点灯する一方、信号がHIGH になると緑信号用のGのLEDが点灯する。 本当に機能するかどうかの自信が無かったのでブレッドボードで確かめてみた。 その様子を下に示す。
確かに作動することが確認できたが、LEDの初期電圧の関係など、検証しておく必要があるだろう。 また、場内用と出発用のふたつの回路が必要となることは当然である。 でも、もうすでにPIC用のハード回路は出来ているのだ・・・・・・・・。
■ フローチャートでの検討
プログラムを検討するにあたり、制御フローをフローチャートにまとめた。
なーんだ! こんなに単純だったのである。 過去の工作の経緯により、制御はPICマイコンだと考えていたのであるが、このような思い込みって恐ろしいですね。
*******************************************************
気を取り直して、プログラム作成を進めた。 しかし、今年になってデスクトップマイコンは不調のために初期化処理を実施しているし、ノートパソコンはキーボードとバッテリの故障により使えない状態であった。 このため、PICマイコンを使うには、その環境整備を初めから実施する必要であった。
■ プログラミング環境の整備
かれこれ何年も前のことなので、もう忘れているようであった。 そこで、参考とするサイトを見つけて思い出しながら実施した。 参考にさせてもらったサイトは、サヌキテックネットさんのPICマイコン Lab.で、MPLAB X IDEによるPICマイコンのプログラミング環境(C言語)についての紹介記事です。 同様な操作は実施した経験があるので作業内容はすぐに理解でき、その手順を確認しながらの作業であった。
使用しているパソコンのOS はWindows 10 です。 今回インストールしたソフトは、
です。 書込みは、手持ちのPICkit 3 を使用します。
使い方についても、上記の紹介記事を参照にしながら実施しましたが、丁寧な説明でよくわかりました。 最新バージョンをインストールしてので、説明と合わない部分も一部ありましが、同様な操作は容易に実施することが出来ました。
■ プログラミング内容と書込み
使用する石は、8ピンの PIC12F683 です。 これに合わせてコンフィグレーションを次の様に設定しました。 以前の設定と同じです。
項目 | 内容 | 設定内容 | 備考 |
---|---|---|---|
FOSC | クロックの設定 | INTOSCIO | 内部クロック使用で、2番と3番ピンをGPとして使用する。 |
WDTE | ウオッチドッグタイマ | OFF | ウオッチドッグは使用しない。 |
PWRTE | パワーアップタイマ | ON | |
MCLRE | 外部リセット | OFF | 外部リセットは使用しない。 |
CP | メモリプロテクト | OFF | |
CPD | EEPROMプロテクト | OFF | |
BOREN | 外部電源低下時処理 | ON | |
IESO | 切り替えモード | OFF | 使用しない。 |
FCMEN | フェールセーフクロックモニタ | OFF | 使用しない。 |
.
プログラムの記述は、以前印刷していたマルツさんの「はじめてのPICマイコン」を参照しながら、記述していきました。 このページは新しく再編集されていますが、その内容は、ほとんど同じでした。
プリプロセッサ部は、コンフィグレーションの表を実施させると、記述内容が表示されますので、そのままコピーしてペーストしました。 メイン関数部は、内容をチェックしながらコピーしていきましたが、ピンの入出力設定が異なるので、自分の設定内容に変更しました。
実行する命令は、フローチャートに従って、if と else if と else のループを無限に続ける内容です。 ⇒ Singoki02.html
***********************************************
PICマイコンへの書込みは、少しモタモタしましたが無事に実施できました。
■ 信号機の外部との配線
マイコンの準備が出来たので、次に外部との配線を工作しました。 レイアウトでの設置場所をおおよそ決めておき、中央制御部との距離を見ながら配線の長さを決めました。
また、接続部のコネクタとの接続配列は、工作時のメモをもとに整理し直し、ピンヘッダにハンダ付けしました。 位置合わせは配線の色が頼りです。 電源ラインの赤と黒の線をタミヤの平行コードを使用しました。 エレクラフトシリーズ No.19です。 柔らかい線材を使用して、扱いやすく断線しにくいのが特徴とのことで、この柔らかい線材が気にいっています。 信号線は、ELPAの工作・ホビー用10芯コード PP-14NH の黄色と青色を使いました。
.
配線が完了した状態を上に示す。 各配線は白色のMTテープを使って束ねています。 そして、PICマイコンを取付けて、機能チェックを実施しました。
方法は、右の写真に示すようにブレッドボードを使って簡単な回路を構成し、5Vの電源を供給します。 信号ポートはジャンパー線を使って+5VかGNDに接続させるという単純なチェック方法です。
プログラム通りに、赤または緑の信号が点灯すれば、配線やハンダ付けのハード工作と、プログラムとその書込みが正常であることが確認できるのです。
*********************************
ふたつの信号がLOWの場合は場内信号と出発信号のどちらも赤を点灯し、一方の信号がHIGH の場合は、対応する信号機が緑が点灯すれば正常です。
チェック結果、下の写真のように問題なく機能していることが確認できました。 ちなみに、両方の信号ポートをHIGH にした場合は出発信号が緑に点灯し、場内信号は赤のままで、緑にはなりませんでした。 正常ですね。
機能の確認が出来ましたので、最終工程に入ることにします。 梯子の取付、絶縁などの保護処理と塗装が必要です。
********************************************************
次回は、これらの作業とレイアウトへの取付工作を報告予定です。
2022/9/11 作成