HOME >> 鉄道模型自動運転システム >  新ATSに挑戦 改良した制御ユニットの機能チェック

新ATSに挑戦 改良した制御ユニットの機能チェック

■ はじめに

 改良した制御ユニットの機能チェックを書斎の床の上に新しく組みなおしたレイアウトにて実施した。 今回のレイアウトは、駅構内での出発制御と入場制御のチェックを想定して、待避線のあるレイアウトとした。 但し、設置場所の制約によって、走行車両はBトレを使用した。

 

■ レイアウトの変更と閉塞区間の設定

 待避線を設けたエンドレスレイアウトを下に示すように設置した。 ポイントは、距離が短くなるように Y字ポイント N-PY280-15 を使用し、C280-15 を使って 直線に戻している。 半径が 280mm のカーブであるがフルサイズのNゲージ車両には少しきついS字カーブとなってしまった。

 閉塞区間の設定は、3区間とし、それぞれの先端部分に制御ユニットを設け、通過センサと信号機を設けた。 そして、これらのユニット間を通信線で接続している。 右上の写真は、駅の本線を想定して改良した制御ユニットを設置する。 駅への入場区間には、曲線ワイドレールに取り付けた改良制御ユニットを用いた。 下左の写真。

 奥に位置する閉塞区間には、最初に作ったユニットを使用した。 駅の区間が短いので走行列車は短め編成としたが、ポイント部のS字カーブではたびたび脱線が発生したので、走行車両をBトレに変更した。

 

■ 制御ユニットのロジックの検証

 各ユニットに装着した PIC のプログラムは先回報告したダブルチェックの入ったロジックを使用している。 今回はそれを右に示すように、フローチャートにして整理した。

 EXCELにて作成し、関連する項目なども記載しておき、後からでも参考に出来るようにした。 その内容をPDFにして添付しておく。

  プログラム名 ATS-test-3-42.asm のPDF資料

 このようなシーケンス制御のプログラムには意外と手間取ってしまった。 最初は、機能のON/OFFやYES/NO といった表現と、信号レベルの HIGH/LOW 表現がゴチャゴチャになってしまい、後期高齢者の頭では混乱続きであった。

 そこで、まず、意識しやすい機能レベルでの状態でフローチャートを作成しておき、シーケンスを整理・整頓しておく。 とはいっても、まれな(?)状態を忘れている事が多く、作動させて初めて気が付く場合が多発していたのだ。

 勿論、ON、あるいはOFF とした機能の状態も明記しておき、その時の信号レベルが HIGH なのか LOW なのかも回路図に従って記入して置いた。 その様子は上記のPDF資料を参照ください。

 さらに、このフローをアッセンブル命令に記述する時、最も注意すべきなのはスキップ命令の記述なのである。 BTFSC ( Bit Test, Skip if Cleare ) と BTFSS ( Bit Test, Skip if Set ) のどちらを使うのか、何度もここで引っかかってしまうのである。 機能のON/OFFから信号レベルの HIGH/LOW に置き換えて、さらに、どっちの場合にどっちにジャンプするのか・・・・・・・・・・。

 そこで、フロー図の右端に、ジャンプ命令の一覧を追記しておき、この表に従って機械的に記述していけば、ストレスも無くアッセンブル命令を記述出来るようになった。

 これによって、フローチャートの吟味に集中すれば良いことになり、鈍くなった頭でもアッセンブリ言語に取り組み事が容易になったと自負している。

 尚、右のフローで、スタート直後に先方区間に列車が存在する場合は、スルーしてしまう欠陥に後から気が付いているが、最初だけだと無視しているのだが・・・・・・。

 

■ 作動状態の検証

 作動状態でのLEDの点灯の様子を下に示す。 

 

 観察していた限りでは正常に作動していたと判断している。

ページトップへ戻る .


 2018/10/4 作成