複数のCOMポートを接続するソフト hub4comのGUI開発

1. 概要

hub4comとは,コンピュータ内の複数のCOMポートを接続し,1つのCOMポートから受信したデータを複数のCOMポートに送信することを可能にする,Windowns用のフリーソフトウェアである.hub4comは,GUIがなくCUIのみが提供されているため,コマンドプロンプトからコマンドを入力し操作する.しかし,hub4comを起動する度に毎回長いコマンドを入力するのは面倒である.そこで,本研究室ではhub4comをマウス操作で簡単に使用できるGUIを,Processingを使って開発した.
本ページでは,作成したGUIを公開し,使い方を紹介する.

開発したhub4com GUI画面

2. 機能

・3つのCOMポートを双方向接続する
・ボーレートは9600,19200,38400,57600,115200[bps]の中から選択可能
・接続成功時には背景色が金色,未接続・接続切断時には背景色が黒になる

3.使用準備

1) 必要ソフトのダウンロード

hub4com
最新版は下記のURLからダウンロードできる.hub4com-2.0.0.0-386で動作を確認している.
https://sourceforge.net/projects/com0com/files/hub4com/
ダウンロードしたらZIPファイルを展開して保存する.

hub4com_gui
下記のURLからZIPファイルをダウンロードできる.
http://www2.kaiyodai.ac.jp/~jtahar0/downloads/hub4com_gui05.zip
ダウンロードしたらZIPファイルを展開して保存する.
展開したフォルダ内には以下のファイルが含まれる.
Windows32bit版実行ファイル: application.windows32 > hub4com_gui.exe
Windows64bit版実行ファイル: application.windows64 > hub4com_gui.exe (Windows7で動作確認済)
Processingソースコード: hub4com_gui05.pde (Processing 3.3.6とcontrolP5 2.2.6の組み合わせで動作確認済)

hub4com GUIはProcessingを用いて作成したが,GUIのソースコードを改変する必要がない限り,Processingのインストールは不要.

2) hub4com本体の保存先をGUI設定ファイルに記入

実行ファイルの保存されているフォルダに「hub4com_location.txt」というテキストファイルがある.このテキストファイルに,hub4com本体を保存したフォルダの場所を記入する.

例:hub4comをCドライブのProgram Files (x86)フォルダ内に保存し,GUIは64bit版を使う場合
hub4com_gui05 > application.windows64 > hub4com_location.txtに,C:/Program Files (x86)/hub4com-2.0.0.0-386 とだけ記入して上書き保存

以上でhub4com GUIの使用準備は完了

4. 使い方

32bit版コンピュータをお使いの場合はapplication.windows32フォルダ内のhub4com_gui.exe,
64bit版コンピュータをお使いの場合はapplication.windows64フォルダ内のhub4com_gui.exeをダブルクリックして実行する.

GUIを実行すると,上の画面が表示される.
COM A, COM B, COM Cそれぞれの入力欄に,接続したい3つのCOMポート名を入力する.3つ全て入力すること.
Baudrate から,所望のボーレート設定値を選択する.

「CONNECT」をクリックすると,接続が開始される.接続に成功すると,最下部に「Connected」と表示され,背景が金色に変化する.接続に失敗すると,「Connection failure」と表示される.

「DISCONNECT」をクリックすると,接続解除される.接続解除に成功すると,最下部に「Disconnected」と表示され,背景が黒に変化する.接続解除に失敗すると,「Disconnection failure」と表示される.

「CLEAR」をクリックすると,COM A, COM B, COM Cそれぞれの入力欄に記入した内容が消去される.

【接続がうまくいかない場合】
COMの入力欄に入力したCOMポート名が間違っていないか確認する.COMポート名はWindowsコントロールパネルのデバイスマネージャーから確認できる.
一度「DISCONNECT」ボタンをクリックしてからもう一度「CONNECT」をクリックする.
実行ファイルの保存されているフォルダの「hub4com_location.txt」に適切なフォルダ保存場所が入力されているか確認する.

5. 技術メモ

hub4comを従来通りCUIで操作する場合のコマンドを記載しておく

cd hub4comフォルダの場所
hub4comを保存したディレクトリ(フォルダ)にチェンジ(移動)

hub4com \\.\COM Aの名前 \\.\COM Bの名前 \\.\COM Cの名前
この場合,データはCOM A→COM Bと,COM A→COM Cの一方通行

hub4com --route=All:All \\.\COM Aの名前 \\.\COM Bの名前 \\.\COM Cの名前
この場合,データは3つのCOM間で双方向に流れる

hub4com --baud=ボーレート設定値 \\.\COM Aの名前 \\.\COM Bの名前 \\.\COM Cの名前
ボーレート指定オプション

hub4com --route=All:All --baud=ボーレート設定値 \\.\COM Aの名前 \\.\COM Bの名前 \\.\COM Cの名前
オプション付けは同時に複数可能

COMポート間の接続は,hub4comの実行を終了すると解消する.



2017年11月20日