ジオラマ”ALTENHOF機関区”の紹介とMärklin CS3による自動運転(その2)

以下に自動運転シーケンスプログラムの作成方法を記載させていただきます。なお、最初にお断りさせていただきますが、以下の手順、方法は私が実際に行なったものですが他にもやり方は色々あると思いますのでひとつの参考としてお読み下さい。また、この記事に従った設定で万一システムの故障が発生しても当方では責任を負いかねますのでご理解どご了承をお願い致します。
なお、私の使用しているCS3ハードウエアは比較的初期の製品で、この設定を行なった時のソフトウエアバージョンは1.4.1でした。

(5) 機関車のプログラミングその1:全体の構想とスタート時の設定

個々の機関車に対する設定を行う前に、自動運転の全体構想を検討します。
画像には機関車のアイコンがありますが、このアイコンが個々の機関車を動かすシーケンスプログラムを発動させるアイコンです。また、S字状のアイコンは機関車を動かすシーケンスプログラムを発動させるアイコンを複数組み合わせたものです。以降、前者をロコシーケンス、後者をセッションシーケンスと呼ぶことにします。

1)ロコシーケンスの基本構造
ロコシーケンスの機関車の動きを制御する指令(コマンド)は下図に示すコマンドの集合体で構成します。その内容は
a) 機関車を選択し・b)その機関車の目的地(目的地となるコンタクトトラック(CT)への経路)を設定し・c) 機関車の進行方向を設定し・d) 機関車をスタートさせ・e) 定速で走行させ・f) 目的地のCTに到達したら停止させる。
です。これがロコシーケンスのコマンドの基本構成です。

次に、このロコシーケンスを複数組み合わせてセッションシーケンスを作ります。

これで機関車の動きの制御が完成します。上の画像の下の方に上記の構造が表示されています。

2)機関車の走行に関係ない機能(function)の設定
機関車の走行に関係ない機関車のアクション(function)はロコシーケンスの中に組み込んで設定します。その方法は後で述べます。

3)機関車の走行に関係ないセッションシーケンス
上記のロコシーケンスをとセッションシーケンスを作れば複数の機関車での自動運転は可能になりますが、その他のセッションシーケンスとして次の2つのセッションシーケンスを用意しておくと良いと思います。

<機関車をすべて停止させるセッションシーケンス>
セッションシーケンスを作成ではほとんどの場合セッションが意図どおり動くまでには何回かのやり直しが発生します。その場合は通常失敗だと思った時点でセントラルステーションのストップボタンを押して機関車を停止させます。その後セッションシーケンスをリセットしてストップボタンを押してストップを解除すると、ストップボタンを押した時点で動いていた機関車はその時の速度で再び走り出してしまいます。
その場合、再びストップボタンを押してコントローラーに動いている機関車を呼び出して速度を0にして機関車を停止させますが、この作業は結構煩わしいものです。
この時、セッションで使用する機関車をすべて止めるためのセッションシーケンスを作成しておくと、再開直後にそのセッションシーケンスを発動させればすべての機関車を停止させることができます。具体的には機関車を選択して短時間低速走行させて停止させるというロコシーケンスを各々の機関車に対して作成し、それらをまとめたセッションシーケンスを作成します(一つのロコシーケンスの中に複数の機関車の速度設定はできません)。再開後機関車が動きはじめた時にはこのセッションシーケンスを発動させれば動いている機関車はすべて停止します。

<機関車の初期化シーケンス>
セッション終了時機関車はすべて停止しますが、各機関車の走行に関係ない機能のステーテスはロコシーケンスのスタート時のステータスに対して変化している場合があります。また、機関車をこのジオラマ以外のところで走行させた際に、走行に関係ない機能がセッション開始時のステータスと異なるステータスに設定されている可能性があります。例えば、ある機関車がこのセッションシーケンス以外の運転時にOperating Sound をOFFにしていると、今回作成したセッションを発動してもOperating SoundはOFFのままになってしまいOperating Soundは鳴りません。この状況に対応するため、セッションシーケンスの先頭に各々の機関車の状態をこのセッションの初期状態に設定するセッションシーケンスを作成し、今回のセッションシーケンスの先頭に組み入れます。
機関車の初期化シーケンスを先頭に入れるとセッションシーケンスは下の画像のような構造となります。。これが今回作成したセッションシーケンスの構造です。
補足ですが、下記のセッションシーケンスの初期化シーケンスですべての機関車のOperateing SoundをOFFに設定した別のセッションシーケンスを作成すればOperateing Soundが鳴らない静かな自動運転が可能になります。Operateing Soundは実物の世界では「騒音」ですので音楽でも聴きながら静かに運転を楽しみたい場合に活用できます。

次回、その3ではロコシーケンス、セッションシーケンスを実際にどのように作ったについて説明させていただきたいと思います。