拡張インタフェイスの設定
NATOCでは標準インタフェイス以外に次の方法でPCとNゲージを接続する方法に対応しています。
シリアル変換ボードとサーボモーターを使用する方法
Arduinoとリレーを使用する方法
Arduinoとリレーおよびサーボモーターを使用する方法
なおこれらのインタフェイスと標準インタフェイスを組み合わせる事もできます。
拡張インタフェイスの作成方法はサーボのインタフェイス作製およびArduinoインタフェイスの作製を参照してください。
・接続COMポートの設定
設定メニュの拡張インタフェイス設定コマンドで接続COMポートやサーボIDの設定およびサーボの角度を調整を行います。
サーボ制御を行うにあたってはまずCOMポートを設定します。
Windowsのコントロールパネルのデバイスマネージャで変換ボートのポートを確認します。
なお変換ボートやArduinoのドライバーは製品マニュアル等に従ってインストールしておいてください。
COMポートのプルダウンリストの中からデバイスマネージャで表示されたCOMポートを選択します。
なおCOM10以上のポートの場合、COM10〜を選択すると以下のダイアログが表示されますのでCOMポート番号を設定して下さい。
・サーボIDの変更
複数のサーボをそれぞれ制御するために別のサーボIDを割り当てる必要があります。
工場出荷状態ではサーボIDには1が割り当てられています。
転車台制御用のサーボはそのままで構いませんが、それ以外のサーボIDを個々の番号に変更します。(転車台制御用サーボのみの場合はこの作業は必要ありません)
まず列車制御用のサーボをひとつだけインタフェイスボードに接続しておきます。
ダイアログの「列車制御」をチェックして「サーボID変更」ボタンをクリックします。
サーボのROMを書き換えるためサーボの接続が切れても変更されたサーボIDはそのまま保持されます。
同様にポイント制御用のサーボのみインタフェイスボードに接続しておき「ポイント制御」をチェックして「サーボID変更」ボタンをクリックします。
列車制御用サーボを転車台電源制御の改造にした場合は「転車台連動」をチェックしておきます。
各サーボIDは変更できますのでサーボの構成に応じて1〜8の範囲で変更する事ができます。
サーボがひとつの場合はサーボIDを1にすればサーボ自体のIDを変えずにそのまま使う事ができます。
なおサーボIDは連続していなくても構いません。
「工場出荷時に戻す」ボタンでサーボIDなどの設定を元の状態に戻す事ができます。
この時チェックされているサーボ全てが工場出荷時に戻されます。戻したくないサーボはチェックを外すか接続を外しておいてください。
・サーボ角度の調整
次に各サーボの動作角度を調整します。
速度はレイアウトや電源の電圧による変化するのでレイアウトに合わせた調整が必要です。
調整は実際に列車を走らせて行います。
「テスト走行(前進)」または「テスト走行(後進)」をチェックすると列車が走り出します。
「最低速角度」と「最高速角度」のスピンボタンで数値を上下させてそれぞれの速度を調整してください。
次にポイント制御用サーボの角度を調整します。
初期状態ではポイント調整用サーボの角度は最小限に設定されていますのでポイントが完全に動作しない可能性があります。
またレイアウトの形状により直進と分岐の値が逆の場合もあります。
「直進角度」と「分岐角度」のスピンボタンで数値を上下させてそれぞれの位置を調整してください。
数値を変更するとその角度にサーボは作動しますので実際にポイントの動作を見ながら調整する事ができます。
必要に応じて列車を走らせながらポイントの角度を調整する事も構いません。
SL鉄道模型のレイアウトの場合、ポイント3は直進側で転車台方向に分岐する構造になっています。
NATOCでは操作上、転車台に向かう方向を分岐側とします。
角度調整を行う時に分岐で転車台側に切り替わるよう調整してください。
列車用サーボは通常調整しなくても構いませんが、スイッチが押せなかったり前進と後進が逆の場合は値を調整してください
転車台の停止位置は設定ダイアログでレイアウトに合わせて簡単に調整できるようになっています。
調整は実際に転車台を動かしながらスピンボタンで停止位置を変化させていき線路と真っ直ぐに接続する値を設定します。
接続線の番号はレイアウト上の引込線から転車台を時計回りで1〜5にしています。
転車台を時計とすると時刻の順番と方向に一致しています。
なお反転側や回転方向によりこの値が微妙に違ってきますのでそれぞれの向きと回転方向に対して設定する事ができます。
「前(正回転)」「前(逆回転)」「後(正回転)」と「後(逆回転)」のラジオボタンで切替えて転車台の向きを変えてそれぞれ別の角度を設定します。
前と後は転車台の接続する方向を表し反転ボタンが押されている時は主桁の後が接続します。
またサーボモーターは回転方向によって停止位置が微妙に違ってきますので転車台の回転方向によっても停止位置を変える事ができます。
時計回りを正回転、反時計回りを逆回転で表しています。
停止位置を決めたらその回転方向で停止位置のテストをします。
例えば正回転で3番の停止位置を設定している場合はラジオボタンで1番に切替えてから3番ラジオボタンを押して停止位置を確認します。
この時、1番に移動する時は正回転の値(実際は逆回転)で移動されるので停止位置が違っていても無視をしてください。
なおラジオボタンで主桁の方向と回転方向を切り替えた場合は、設定した値が適用されますので後でキャンセルボタンを押しても元には戻りません。
元に戻す時は設定し直してください。
回転速度は転車台の回転速度を指定します。
転車台が1回転する時間を1/100秒単位で指定します。(初期値は20秒)
ただしサーボの負荷等で必ずしも正確な速度ではありませんので目安としてください。
この値を小さくすると転車台は速く回転しますがあまり速いと停止する位置がずれる事があります。
本プログラムでは転車台が停止位置で止まった後しばらく経つとサーボモーターのトルクをオフにしています。
トルクオフでこの時間を調整できます。
ミリ秒単位で指定します。(初期値は1秒)
サーボの電圧が低い場合など停止位置に来る前にトルクがオフになるような場合はこの値を増やしてください。
なおこの値を0にすると停止してもトルクを入れっぱなしの状態にできます。
トルクを入れっぱなしにすると常にサーボに電流が流れた状態になり電力を消費します。
転車台電源サーボはONとOFFの角度で調整します。
転車台連動のチェックがある時は転車台電源がONになる角度を前進と後進の角度で設定します。
通常は列車制御用のサーボが90度と-90度に対して120度と-120度で指定します。
・Arduinoインターフェイスの設定
ArduinoインタフェイスでサーボではなくてリレーでNゲージをコントロールする場合は拡張インタフェイスの設定のサーボIDを0に設定します。
拡張インタフェイスで設定した場合はひとつのArduinoでサーボとリレーの両方をコントロールする事ができます。
このダイアログは列車制御はArduinoのPWM制御(インタフェイスのモータードライバ)で転車台電源制御はArduinoのリレーで転車台とポイントはサーボを使った例です。
なおサーボIDに0を指定した時の角度の値は無視されます。
自動運転を使って各サーボを動作させた動画です。
上記のリンクをクリックするとYouTubeに接続します。
ポイントを切り替えると同時にゆっくりホームに入線するように速度を落とすよう命令(何秒かけて何%の速度にする)しています。
カメラによる位置認識でホームの端に停車します。
タイマー機能を使って発車しますがこの時も最高速(100%)まで徐々にスピードを上げてるようプログラムしています。
途中で反転してプログラムを繰り返します。
速度変更のプログラミングについてはこちらを参照してください。
なお最高速度を上げるためコントローラの電源電圧を12Vにしています。
目次に戻る