パソコンで鉄道模型を制御するための基礎検討(11)
ハードウエア接続自動抽出ソフトウエア
PC側の制御ソフトが前述の各制御基板間と通信するには基板の種類と接続順序の情報が必要です。
その情報は制御盤データ(*.txt)経由でPC上の制御ソフトに渡すことにしました。
そのために基板の接続情報を自動抽出するソフトウェアを作成しました。
下記のプログラムをダウンロード(右クリック-->名前を付けてリンク先を保存)して使ってください。
USBケーブル+USB-Serial変換基板で接続する場合
USB_Serial_GetConnection.py
bluetooth通信基板で接続する場合
BLE_GetConnection.py
その情報は制御盤データ(*.txt)経由でPC上の制御ソフトに渡すことにしました。
そのために基板の接続情報を自動抽出するソフトウェアを作成しました。
下記のプログラムをダウンロード(右クリック-->名前を付けてリンク先を保存)して使ってください。
USBケーブル+USB-Serial変換基板で接続する場合
USB_Serial_GetConnection.py
bluetooth通信基板で接続する場合
BLE_GetConnection.py
【Bluetoothによる接続例】
使用手順は
1.鉄道模型レイアウトに組み込む各制御基板をUSBケーブル+USB-Serial変換基板、またはbluetooth通信基板を介してPCと接続します。
シリアル通信の送信端子(Tx端子)を次の基板の受信端子(Rx端子)に接続し、各基板をループ状に接続します。
2.PC上のコマンドウインドウ、またはPowerShellウインドウを開き
python BLE_GetConnection.py
または
python USB_Serial_GetConnection.py
で起動します。
USB_Serial_GetConnection.py は USB Serial通信ケーブルが接続されているCOMポートを自動でサーチしますが、うまくいかない場合は引数にCOMポート名を指定してください。
例:python USB_Serial_GetConnection.py com3
正常に終了すると、control_panel_数字.txtが出力されます。
1.鉄道模型レイアウトに組み込む各制御基板をUSBケーブル+USB-Serial変換基板、またはbluetooth通信基板を介してPCと接続します。
シリアル通信の送信端子(Tx端子)を次の基板の受信端子(Rx端子)に接続し、各基板をループ状に接続します。
2.PC上のコマンドウインドウ、またはPowerShellウインドウを開き
python BLE_GetConnection.py
または
python USB_Serial_GetConnection.py
で起動します。
USB_Serial_GetConnection.py は USB Serial通信ケーブルが接続されているCOMポートを自動でサーチしますが、うまくいかない場合は引数にCOMポート名を指定してください。
例:python USB_Serial_GetConnection.py com3
正常に終了すると、control_panel_数字.txtが出力されます。
【6種の基板とBluetooth通信基板をループ接続してテストしている様子】
3.制御基板エディタを起動すると接続順のID番号が付いたシンボルが確認できます。
図はPWR_S、PMD_S、SPD_S、SIG3_S、SIG6_S、SW_Sの順で基板が接続された場合の自動抽出結果(制御盤エディタ画面表示)です。
SIG3_S基板は3灯信号機+センサーが2組接続されるので、制御盤上では連続したID番号をもつ4つのシンボル(3灯信号機+センサー+3灯信号機+センサー)になります。
SIG6_S基板は続したID番号を持つ3つのシンボル(6灯信号機+センサー+センサー)になります。
SW_S基板は基板上に実装されたリレーの数と同じ数のシンボル(1~4個のスイッチ)になります。
なお、SW_S基板上のPICプログラムはリレーに対応したLED+抵抗の有無でリレー実装の有無を判定しています。
これらのシンボルを適当な位置に移動させ、レール等を追加して制御盤をデザインします。
図はPWR_S、PMD_S、SPD_S、SIG3_S、SIG6_S、SW_Sの順で基板が接続された場合の自動抽出結果(制御盤エディタ画面表示)です。
SIG3_S基板は3灯信号機+センサーが2組接続されるので、制御盤上では連続したID番号をもつ4つのシンボル(3灯信号機+センサー+3灯信号機+センサー)になります。
SIG6_S基板は続したID番号を持つ3つのシンボル(6灯信号機+センサー+センサー)になります。
SW_S基板は基板上に実装されたリレーの数と同じ数のシンボル(1~4個のスイッチ)になります。
なお、SW_S基板上のPICプログラムはリレーに対応したLED+抵抗の有無でリレー実装の有無を判定しています。
これらのシンボルを適当な位置に移動させ、レール等を追加して制御盤をデザインします。
【自動抽出されたcontrol_panel_1.txtをikcpedit.pyで表示】