2021-03-25

ROUTE05:複線駅入れ違い発車、4列車

 ROUTE05:複線駅入れ違い発車、4列車

単線用のROUTE03を2つ作って複線で動かした。
複線というより、2つの単線の併走ではある。
現実にはあまり無いがなかなか面白い。
長時間走らせると、列車速度の違いにより複線的な走行にもなる。
分岐器の切り替え必要無いので簡単ではあるが、routeを8つ作るのは手間。

*状況
(DL:ディーゼル機関車の貨物列車、 SL:蒸気機関車の客車列車、 EL:電気機関車の貨物列車、 LT:ディーゼルレイルカー/気動車 と略す)
A と B が同時進行。
[A] ---- 内回り線:DLとSL、ROUTE03そのもの
DLが待避線に停車中
[繰り返し始まり]
SLが時計回りに本線に入線し停車
待避線上のDLが反時計回りに発車
一周して、
DLが追いつき反時計回りに待避線に入線し停車
本線上のSLが時計回りに発車
[繰り返し終わり]
[B]---- 外回り線:ELとLT
ELが待避線に停車中
[繰り返し始まり]
LTが時計回りに本線に入線し停車
待避線上のELが反時計回りに発車
一周して、
ELが追いつき反時計回りに待避線に入線し停車
本線上のLTが時計回りに発車
[繰り返し終わり]

<図解>
[内回り]
列車検知:
11番(待避線西)、7番(待避線東)、
2番(本線西)、6番(本線東)
16番(駅東手前)は使わない。
分岐器:
11番(駅西手前)、20番(駅東手前)
[外回り]
列車検知:
13番(待避線西)、3番(待避線東)
14番(本線西)、10番(本線東)
分岐器:
9番(駅西手前)、21番(駅東手前)

*プログラムを考える
追突防止のため、内回り外回りとも本線上を走るのは1列車だけにする。
したがって、どちらかの列車が常に駅に停車している。
内回り:待避線はDL、本線はSLと入線を固定。
外回り:待避線はEL、本線はLTと入線を固定。
routeの名前は内容が分かる表現にする。
初期値
内回り
11番分岐器は左、20番分岐器は左
なを、分岐器は初期値のまま固定で切替はしない
7番列車検知はOn状態(DLが待避線に停車中)
SLが時計回りで駅に向かって走って来る。
外回り
9番分岐器は左、21番分岐器は左
なを、分岐器は初期値のまま固定で切替はしない
3番列車検知はOn状態(ELが待避線に停車中)
ELやLTのエンジン音やヘッドライトはお好みで。

*実際のroute
既にその名前は使われているとの警告がでたので、名前を少々変更した。
速度は、0が停止、1が徐行、1が中速、3が高速。
内回り線の4つのrouteは、ROUTE03で作成したrouteなので ROUTE03を参照。
[S.6:S2h]
[D.11:D2h]
[S.2:S0D3]
[D.7:D0S3]
以下外回り線の4つを新規に作成した。
[L.10:L2h]
画面右側に、route L.10:L2hの中のunitが表示。
予め作っておいた機関車ごと動作ごとのrouteを入れ子にして用いる。
詳しくは one-unit routeの説明参照。
1番目のunit:L.Sp:M LTのSpeedをMiddle(中速)にし1.0秒待て、という内容
2番目のunit:L.Ho:10 LTのHornを鳴らし15秒待て、という内容
画面下に、routeの名前、起動条件が表示。
Name 名前 L.10:S2h
Bus0:Contact:10 列車検知 CS2のBus0のデバイス(LinkS88)の10番
Tr. トリガー 機関車が向かってくる絵 列車検知が Off→Onに変化したら

[E.13:E2h]
画面右側に、route E.13:E2hの中のunitが表示。
予め作っておいた機関車ごと動作ごとのrouteを入れ子にして用いる。
詳しくは one-unit routeの説明参照。
1番目のunit:E.Sp:M ELのSpeedをMiddle(中速)にし1.0秒待て、という内容
2番目のunit:E.Ho:10 ELのHornを鳴らし15秒待て、という内容
画面下に、routeの名前、起動条件が表示。
Name 名前 E13:S2h
Bus0:Contact:13 列車検知 CS2のBus0のデバイス(LinkS88)の13番
Tr. トリガー 機関車が向かってくる絵 列車検知が Off→Onに変化したら

[L.14:L0E3]
画面右側に、route L.14:L0E3の中のunitが表示。
予め作っておいた機関車ごと動作ごとのrouteを入れ子にして用いる。
詳しくは one-unit routeの説明参照。
1番目のunit:L.Sp:0 LTのSpeedを0(停止)にし1.0秒待て、という内容
2番目のunit:E.Sp:H ELのSpeedをHighにし15秒待て、という内容
画面下に、routeの名前、起動条件が表示。
Name 名前 E14:L0E3
Bus0:Contact:14 列車検知 CS2のBus0のデバイス(LinkS88)の14番
Tr. トリガー 機関車が向かってくる絵 列車検知が Off→Onに変化したら

[E.3:E0L3]
画面右側に、route E.3:E0L3の中のunitが表示。
予め作っておいた機関車ごと動作ごとのrouteを入れ子にして用いる。
詳しくは one-unit routeの説明参照。
1番目のunit:E.Sp:0 ELのSpeedを0(停止)にし1.0秒待て、という内容
2番目のunit:L.Sp:H LTのSpeedをHighにし15秒待て、という内容
画面下に、routeの名前、起動条件が表示。
Name 名前 E3:E0L3
Bus0:Contact:3 列車検知 CS2のBus0のデバイス(LinkS88)の3番
Tr. トリガー 機関車が向かってくる絵 列車検知が Off→Onに変化したら

*実走
1. 初期状態の確認
内回り
11番分岐器は左、20番分岐器は左。
7番列車検知はOn状態(DLが反時計回り向きで停車)。
外回り
9番分岐器は左、21番分岐器は左。
3番列車検知はOn状態(ELが反時計回り向きで停車)。

2. 手動モードから自動モードに切り替える。
作成した8つのrouteの右端にある[手]のボタンをタッチして[手と機関車]にする。
これで、この列のrouteはそれぞれの条件に応じてトリガーされ起動する。
ちなみに、左側4つはROUTE03の時のものをそのまま利用、右側4つを今回作成した。
なを、実行中は以下の様になる。
列車検知に反応し、routeが起動するとそのボタンの中に黄色の丸が出現し、動作中は緑に色が変化する。動作が終了すると丸は消える。次々にボタンに色丸が出たり消えたり、とてもきれい。そして、あ〜ちゃんと動いているんだなぁ、今あれが反応しているんだなぁと楽しい。本来は、動作確認、デバッグに用いるんだと思うけど。

3. 時計回りでSL(内回り)とLT(外回り)を適当な速さで走らせ、駅に向かわせる。
後は、入れ違い発車を無限に繰り返す。列車速度や駅停車時間の違い(差)により、内回りと外回りが併走したり、通常の複線状態になったり変化して面白い。




0 件のコメント:

コメントを投稿