コンテンツにスキップ

VRM-NXネットワークコントローラー

概要

「VRM-NXネットワークコントローラー」は .NET Framework で作成された「VRM-NXファイル連携システム」対応のファイル出力運転盤プログラムです。
ネットワーク動作に対応しており、サーバー・クライアントと連動させることで遠隔のレイアウトを操作することが出来ます。
VRM-NXファイル連携システム対応ネットワークコントローラー概要

ダウンロード

サンプルプログラムがOS機能でブロックされる場合はプロパティから「ブロックの解除」をしてください。
ウィルス対策ソフトで検出される場合は除外操作をしてください。

操作方法

VRM-NXファイル連携システム対応ネットワークコントローラー

動作モード

  • ローカルモード
    • 「VRM-NXファイル連携システム」のみを利用するモードです。
    • 「出力フォルダ」パスに命令用ファイルが生成されます。
  • クライアントモード
    • 送信先URL・ポート番号に対して「VRM-NXファイル連携システム」対応のUDPコマンドを発信するモードです。
    • 本モードを利用するには別途サーバーが必要です。
    • 送信先URLに「127.0.0.1」または「localhost」を指定することで自身を対象にすることが出来ます。
    • UDPの発信にはエフェメラルポートが利用されます。(ファイアウォール等の設定不要)
    • 「;」で区切ることで複数サーバーに送信します。(※v2.3以降。暫定対応)
  • サーバーモード
    • 「VRM-NXファイル連携システム」対応のクライアントから発信されたUDPコマンドを自身の出力フォルダにファイル出力するモードです。
    • 本機能を利用する際はファイアウォールの解除が必要です。通常は「実行」タイミングでファイアウォールからポップアップが表示されるので解除してください。(ポップアップでキャンセルを押した場合「コントロールパネル」→「Windows Defender ファイアウォール」→「Windows Defender ファイアウォールを介したアプリまたは機能を許可」でチェックを入れてください)ファイアウォール警告
    • グローバルネットワークから通信を受け付けるときはルータのポート開放などを行ってください。

データグリッド共通操作

  • 先頭列「ID」にオブジェクトIDを入力することで、対象オブジェクトを操作できます。
  • 「名前」は名称を任意で入力できます。
  • 「ID」「名前」ヘッダーをクリックして並び順をソートできます。
  • 左端をクリックした行選択モード時に「Del」キーを押すことで行を削除できます。
  • 「サーバーモード」でクライアントから受信した命令内容は表示に反映されます。

ポイント制御(左)

  • 「直」「曲」列はポイントの分岐スイッチです。
  • それぞれのセルをクリックするとポイントを「直進方向」「分岐方向」に切り替えます。
  • アンダーバー「_」で複数のIDを繋げて一括制御することが可能です。(例:675_678)

編成制御(右)

  • 編成の速度を「減速」「加速」ボタンで操作します。
  • 速度は「AutoSpeedCTRL」関数で変更します。移動距離は速度によって自動調整されます。
  • 速度は編成最高速度の0~100%で10%刻みに設定されます。(電圧0.0~1.0に相当)
  • 「反転」を押すと列車の向きを反転します。速度は0になります。
  • 「Pw」を押すと列車の電装を切り替えます。電装の対象は電灯・効果音・蒸気機関車の煙・パンタグラフです。

実行・停止

  • 「実行」ボタンを押すと命令出力可能になります。
  • 実行中はラジオボタンにロックが掛かります。
  • 停止中は分岐制御と編成制御の設定やログ確認が可能ですが命令出力されません。
    ログには「未出力」と表示されます。
  • 「ローカルモード」ではファイル出力、「クライアントモード」ではUDP送信、「サーバーモード」ではUDP受信と、受信パケットのファイル出力が有効になります。

設定保存

  • 「設定保存」ボタンを押すと動作モードの文字列と分岐制御、編成制御のID・名前をテキストファイルに保存します。
  • 保存されたファイルは次回起動時に読み込まれます。
  • テキストファイルなので手作業で編集することも可能です。(タブ区切りのためタブ文字は利用しないでください。例外処理などは細かく実装していないのでご注意ください)
  • 運転制御盤が有効な場合、表示位置も保存されます。
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
textBoxPath C:\VRM-NX\FLS\read
textBoxUrl  127.0.0.1
textBoxSendPort 5200
textBoxReadPort 5200

p   645 A-1
p   635 A-2
p   145 A-3 120 540
p   138 A-4 520 540

t   25  A1_787系_にちりん
t   708 A2_883系_ソニック
t   64  B1_683系_サンダーバード

運転制御盤

運転制御盤は「VRM-NXネットワークコントローラー」と同階層に「vrmnxflsNetController.png」ファイルを置くと、そのファイルを透過PNGファイルとして読み込んで別フォームで表示されるサブコントローラーです。
VRM-NXファイル連携システム対応 ネットワークコントローラー 運転制御盤
設定保存ファイルでポイント情報に横位置と縦位置が登録されている場合、数値を読み込んでポイント操作可能なチェックボックスコントロールとして表示します。
運転制御盤の配線図作成は作図に特化したWebサービスの Diagrams.net が便利です。

履歴

  • v2.5 2020/10/24
    • 編成電源スイッチ「Pw」を追加(vrmnxfls.py v1.4以降)
    • 複数ポイントを含んだ状態で設定を保存するとエラーとなる不具合を修正
  • v2.4 2020/09/27
    • アンダーバー区切りによるポイント一括設定に対応(vrmnxfls.py v1.3以降)
  • v2.3 2020/09/23
    • 運転制御盤を実装
    • 列車コントロールボタン配置を入替え
    • クライアントモード時のURLを「;」で区切ることで複数サーバー送信に対応(※暫定)
    • クライアントモード時の不正URLエラー処理を実装
  • v2.2 2020/09/17 (ビルドのみ)
    • DataGridViewのチラツキを低減(DoubleBuffered)
    • DataGridViewの全体サイズ調整、列ヘッダーの幅・高さの変更禁止
    • サーバーモード時にクライアントからの命令をコントロールに反映
    • UDPクラスをサーバーモードとクライアントモードで分離
  • v2.1 2020/09/16
    • 設定保存機能を実装
    • UDPサーバ・クライアントを連続して使う場合にエラーとなる処理を修正
    • 機能ボタン画像を置き換え
    • 速度0及び100の時でも出力されるように変更
  • v2.0 2020/09/14 ネットワーク機能搭載。GUIフルチェンジ
  • v1.0 2019/12/28 ネットワーク機能のないローカルコントローラーを作成

今後の実装予定

  • 操作オブジェクトと命令種類の増加
  • 複数サーバー・クライアント同期機能