レイアウトの製作:自動運転を前提としたレイアウトセクションの製作 <12>

今回は前回ご説明した貨物ホームを作成するための素材と同時に入手したTelex Couplerを装備したBR094 (#37180 2020 New Item) と既存のTelex Couplerを装備したBR323(Köf II : #26005)との組み合わせで、Märklin Central Station2による終端駅での入れ替え作業の自動運転プログラムの作成を行いましたので、今回はその内容と、実際に自動運転プログラムを作成した際に発覚した問題点とその対策について記載したいと思います。

<シナリオ>
今回作成した自動運転のシナリオは以下のとおりです。

  1. BR218の牽引するプッシュプルトレインが奥側ホームに到着します

2. 貨車を牽引したBR094(Telex Coupler付き)が手前ホームに到着します

3. 貨車を牽引したBR094が後退して貨物ホームに貨車を移動、その後BR094は貨車を解放して手前ホームに戻ります

4. BR218の牽引するプッシュプルトレインの連結部がUncoupler上に移動し、機関車が切り離されます。その後機関車は単機で出発していきます

5. BR094が奥側ホームに移動して、客車と連結します

6. BR323(Telex Coupler付き)が貨車を手前側ホームに移動させます

7. 貨車をホーム で開放後、BR323(が貨物ホームに戻ります。作業を終えたBR323のエンジンが停止し、ライトが消灯します。

8. BR218が単機で手前側の線路に入線し、貨車と連結します。

9. 入れ替わりにBR094の牽引する旅客列車が出発します

10. BR218が牽引する貨物列車が出発します

動画は以下をご覧ださい。約9分のノーカット版です。画面の右上にはEvent発動後のCS3の画面を表示しています。タイムラインを表示しているダイアログボックスの右上の緑丸の中の数字はロコシーケンスの残り数、各ロコシーケンスのところの緑丸の中には各ロコシーケンスのコマンドの残り数が表示されます。赤線が実行中のロコシーケンスと次のロコシーケンスの間に表示されます。画面ではわかりにくいですが連動制御盤にポイントの方向、信号現示、コンタクトトラック上の列車の有無が表示されます。また画面の左側にBR094の速度、右側にBR218の速度が表示されます。

今までMärklin CS3を使用した自動運転はこのブログでも何回かご紹介させていただきました。ALTENHOF機関区の機関車入れ替え運転の説明では機関車を制御するプログラム(ロコシーケンス)の作成方法の詳細、このレイアウトの製作記事の<7>では自動運転のシナリオを主体に説明しました。今回は入換作業の自動運転ですので機関車のシーケンス(ロコシーケンス)の中には往復運転や信号制御のコマンドが入りますので、ロコシーケンスプログラムは少し複雑(多ステップ)になるとともに多数のプログラムが必要になります。ここではそのようなプログラムをどのようにして作成したかを簡単に説明させていただきます。まずはプログラミング前のテスト時点で発生した問題点です。

まずはこのプログラムを作成したときに発生した問題点を記載します。

<問題点1: Uncoupler Trackを使用できない機関車の存在>
このプログラムを作成するにあたり、最初は使用する機関車はBR212とBR094で計画しました。しかし、ロコシーケンス作成のためのテスト運転の中で問題が発生しました。それはUncoupler Trackを使用できない機関車があることが発覚したということです。

Uncoupler Trackは連結部をアクチュエーター部に停車させて動作させると、アクチュエーターが上に飛び出してカプラーの開放腕を押し上げカプラーを解放します。この開放動作をBR212でテストしたところ、アクチュエーター動作時に機関車がアクチュエータにより飛び跳ねてしまい、カプラーが解放できない現象が発生しました。調べてみるとその原因は機関車の前方にある排障器でした。

このBR212は上の写真のように排障器が線路すれすれにあるため、アクチュエーターを動作させるとアクチュエーターがカプラーの解放腕に当たる前にこの排障器に当たってしまい、機関車がアクチュエーターによって持ち上げられてカプラーが解放できないのです(Uncoupler Trackの押上力はこのくらい強力です)。これを避けるためには機関車の排障器部分をアクチュエータの斜面部、カプラーの解放用の腕をアクチュエータの平面部に位置するように列車を停車させれば良いということがわかりましたが、さすがにその位置を狙って安定的に列車を停車させるのは困難でした、そこで今回はBR212の使用は諦め、機関車は前回の自動運転で使用したものと同じBR218を使用することとしました。BR212はセンターキャブの凸型機でこのような支線に似合う車体ですので、このレイアウトではBR212の方がお似合だと思い、サウンドの種類も充実しているのでこちらを使用しようと思ったのですが、今回はは諦めました。Uncoupler Trackのアクチュエータ部は線路から大きく盛り上がっており、当初軽量で2軸のBR323(Köf II)がこの部分を通過できるかを危惧したのですが、何の支障もなかったため、さすがメルクリンシステムと思ったのですが思わぬところに落とし穴がありました。

<問題点2: レイアウトの水平度>
今回、機関車と貨車の開放動作をTelex Couplerにより行いましたが、ここでも問題が発生しました。それはレイアウトの水平度です。以前Uncoupler Trackで同じ貨車を解放したときは気がつかなかったのですが、このレイアウトはわずかに中央部がたわんでいるようです。そのため、Telex Couplerで貨車を解放すると、解放された貨車が解放された場所に留まらずに中央部の低い方に向かって動いてしまいます。前回Uncoupler Trackでの解放ではこのような現象は起ませんでした。今回発生した原因は、Telex Couplerによる解放動作はUncoupler Trackによる開放動作と異なり、機関車と貨車のカプラーが離れる際に貨車に機関車進行方向にわずかな初速を与えてしまうことのようです。最近のメルクリンの貨車は非常に走行抵抗が少ないので、Telex Couplerによる解放動作をする際は、その場所の傾斜に注意する必要があります。レイアウト側の傾斜の修正は大掛かりになりますので、対症療法になりますが、今回は写真のように貨車の車軸部にモルトプレンを貼り付けて、貨車の走行抵抗を増すことにより対策しました。

<プログラミングの詳細(ロコシーケンス)>

個々の機関車の制御プログラム(ロコシーケンスプログラム)は以前説明したように、機関車を選択後その機関車に対するコマンドを順番に並べ、そのコマンドにDelay時間を設定して次のコマンドが発効する間隔を設定していくという作業になります。その作業自体はコマンド設定の考え方(設計の意図)を理解してしまえば比較的容易にできますが、今回のシーケンスは信号、進路、速度、サウンドのコマンドがプログラムの中に混在しますので、従来作成していたプログラムより少し複雑になります。それゆえその場で気軽に作成してしまうと後の改修の際に、解読に手間がかかります。かと言って全ての設定をドキュメンテーションするというのも現実的ではありません(一度試みましたが結構な手間がかかります)。そこで今回は簡単な規則を決めてプログラミングを行いました。なお、今回のロコシーケンスのステップ数は多いもので25ステップ程度です。

今回定めた規則は以下になります。

1)ロコシーケンスのコマンドの順番は、機関車選択後、原則下記に従うこととする 
  a) 進路の設定
  b) 信号機の制御
  c) 速度0コマンドによる一定時間の停止
  d) 発進
  e) コンタクトトラックでのトリガー
  f) 停止
2)進路の設定は最小限とする(スプリングポイント機能で通過できるところはその機能を使用する)
3)入れ替えの際の往復運転は原則1つのプログラムで作成する
4)上記の基本プログラムの中に汽笛等一定時間継続させるサウンドを挿入する場合は、必ずFunctionをOFF/ON/OFFのセットで挿入し、その間には他のコマンドを入れない
プログラム自体、コマンドを時系列的に並べていくだけであり、条件による分岐はないので、この程度の規則を頭に入れてプログラムを作成するだけでも後から修正するときの解読、修正が容易になります。
ロコシーケンスの作成方法の詳細は今回は説明しませんので必要であればALTENHOF機関区の自動運転の項を参照してください。プログラムはコマンドに与えるDelay時間の設定方法(下記の(*))さえ頭に入れておけばそれほど難しいものではないのでまずはやってみることが肝心かと思います。

(*) Delay時間はコマンドを与えた時点から次のコマンドまでの間隔ですので、例えば停車後コンプレッサを動作させたい場合は、速度0コマンドに設定するDelay時間は機関車が停止するまでの時間と停止後動作を開始させるまでの時間の合計となり、機関車の速度と減速度に依存します。

<プログラミングの詳細(セッションシーケンス)>

こちらは出来上がったロコシーケンスを並べて個々にDelay時間を設定するだけですので特に難しいことはありませんが、Delay時間の設定の際には、まずすべてのロコシーケンスの所要時間を測定し、Delay時間を最長のロコシーケンス時間より長くして設定し、その後適宜各部を調整してセッションシーケンスをオーバーラップさせると比較的簡単に所望のセッションシーケンスが作成できるようです。複数の機関車を動かそうとする場合、頭の中だけで各ロコシーケンスのDelay時間を設定し、ロコシーケンスをオーバーラップさせて複数の機関車を動かそうとすると、試運転の際思わぬところで衝突事故を起こしそうになることがあります。その際STOPボタンで緊急停止させるとプログラムを修正して再度テストする際に、再会前に列車の速度を0に設定し直したり、列車位置を初期状態に戻すのに手間がかかります。よってこの方法がおすすめです。今回のプログラムのセッションシーケンスは10個のロコーケンスで構成しています。ALTENHOF機関区の自動運転の際の作成した機関車のサウンドをまとめてON /OFFするセッションは作成しておりません。

ここで作成したロコシーケンスにBR094(BR218)のプッシュプル列車が手前側ホームに発着するロコシーケンスを追加したり、さらに前回ご紹介したレールバスのロコシーケンスと組合わせれば、さらに多彩な運転が可能になります。ただし、機関区側の引き込み線が3線ですので列車(動力車)の種類は3種類までとなります。

なお、今回はTelex Coupler付きのBR094を使用しましたが、BR094のTelex Coupler動作地点近傍にはUncoupler Trackを設置してありますので、貨物列車はTelex Couplerを装備していない車両でも今回と同じようなセッションは可能です。

次回は再び工作の説明に戻ろうと思います。