SerialTool VT-100 ターミナル

最終更新日: 著者:Oliver Reed

SerialTool VT-100 ターミナルは、VT-100 / ANSI 標準に基づく高度なテキストインターフェイスを使用するデバイスとの対話型通信用に設計されています。 このモードは、リモートデバイスがシリアルポートを介してメニュー、シェル、またはテキストベースの設定インターフェイスを公開するプロフェッショナル産業、および組み込み環境で広く使用されています。

注:詳細については、このリンクもご覧ください SerialTool ターミナル

受信したバイトの表示に限定される「クラシック」シリアルターミナルとは異なり、SerialToolのVT-100ターミナルは データストリームANSIエスケープシーケンスを解釈し、 デバイスが意図したインターフェイスに忠実な正しいグラフィックレンダリングを可能にします。

対話型通信とANSIシーケンス

VT-100ターミナルでは、送信されるデータは単純なASCII文字ではなく、 ターミナル内で「視覚的」な操作を実行するために使用される制御シーケンス (ESC)が含まれています。 SerialToolはこれらのシーケンスをリアルタイムで解釈し、色付きの出力、対話型プロンプト、 テキストメニュー、および動的に更新される画面の表示を可能にします。

ANSI/ESCシーケンスは通常、以下の用途に使用されます:

  • 画面上のカーソル移動;
  • 行またはターミナルの内容全体の消去;
  • テキストの色と属性の変更;
  • 対話型メニューおよび動的に更新される画面の管理;
  • プログレスバーまたはテキストインジケーターの表示。

VT-100 ターミナルを使用するタイミング

VT-100モードは、高度なヒューマンマシンインタラクションを必要とするデバイスに接続する場合、 たとえば、シリアルコンソールを介して機器や組み込みシステムを構成または管理する場合に推奨されます。

代表的な例:

  • ネットワークルーターおよびスイッチ;
  • ハードウェアファイアウォールおよびエンタープライズアクセスポイント;
  • エンタープライズサーバー(BIOS/UEFI、リモート管理モジュール);
  • 組み込みLinuxシステム(コンソール、U-Boot、シェル);
  • PLCおよびテキストメニューを備えた産業用デバイス;
  • ブート中またはコンソールモードのマイクロコントローラー。

完全なツールに統合された VT-100 ターミナル

SerialTool VT-100 ターミナルはソフトウェアに完全に統合されており、他の高度な機能と一緒に使用できます。 各シリアルポートに専用のVT-100ウィンドウを割り当てることができ、複数のデバイスのログを分離して トラフィック分析を容易にすることができます。

このように、SerialToolはVT-100エミュレーションと低レベルのシリアルデバッグを1つのソリューションに組み合わせ、別々のアプリケーションを使用する必要をなくします。

VT-100標準とANSIシーケンスの完全なサポートのおかげで、SerialToolは信頼性が高くプロフェッショナルなシリアル対話環境を提供し、 組み込み開発者、産業技術者、およびIT専門家に最適です。

SerialTool VT-100 シリアルターミナルについて知っておくべきこと

シリアルターミナルには、SerialToolの一般的な動作に関して明確にすべきいくつかの重要な特徴があります。 まず、SerialToolには2つの主要なカテゴリのターミナルがあります: シリアルターミナル16進数ターミナルです。

シリアルターミナルは、2つの異なるモードで動作できます: クラシックモードVT-100 エミュレーションモード(本文書の主題)です。

クラシックターミナルは、開いている割り当てられたすべてのシリアルポートからのすべての送受信トラフィックを 単一のメイン画面に表示します。

VT-100エミュレーションのシリアルターミナルとの違いをよりよく理解するために、 クラシックシリアルターミナルの動作について詳細な前提を説明することは有用です。

各シリアルポートについて、クラシックターミナルでは、送受信トラフィックは 読みやすくするために異なるフォント色で表示されます。

送信および受信されたバイトは、さまざまなモードで表示できます: ASCII、16進数、バイナリ、またはこれらの組み合わせ。 これは、開発者が特にModbusのような独自のプロトコルや標準プロトコルを使用する場合に、 異なる分析ニーズを持つ可能性があるためです。

基本的な側面は、すべてのバイトが連続して表示され、 解釈が困難になるのを防ぐために、いつターミナルに改行を挿入するかを確立することです。

したがって、クラシックターミナルでは、データがストリーミングモードで到着するかどうか、 およびターミネーター文字(例:0x0A0x0D、またはそれらの組み合わせ)が到着したときに 新しい行を追加する必要があるかどうかを判断する必要があります。

他のケースでは、ターミネーター文字がない場合でもパケットの終了を判断する必要があります。 これは、最後に受信したバイトからの経過時間を測定することによって行われます。

このため、各シリアルポートにはLast Byte Timeout(最終バイトタイムアウト)パラメータがあり、 ミリ秒単位で表され、その後SerialToolは受信したパケットを表示します。

この概念は基本的であり、常に念頭に置いておく必要があります。

クラシックターミナル – パケットモード

パケットモードでは、以下の場合に新しい行がターミナルに追加されます:

  • SerialToolがバイトシーケンスを送信するときは常に、送信の最後に;
  • 受信時、Last Byte Timeoutで設定された時間が経過したとき;
  • 異なるシリアルポートからバイトが送信または受信されたとき。

クラシックターミナル – ストリーミングモード

ストリーミングモードでは、以下の場合に新しい行が追加されます:

  • ターミネーター文字(カスタムを含む)を受信したとき;
  • 異なるシリアルポートからバイトが送信または受信されたとき。

VT-100 ターミナルとの違い

VT-100エミュレーションを備えたシリアルターミナルは、大きな違いをもたらします。 まず、開いている各シリアルポートに対して1つ以上の画面を専用にすることができます。

したがって、各シリアルポートは特定のウィンドウ(タブ)に関連付けられ、 複数のデバイスのトラフィックを分離して保持します。 これがグラフィカルインターフェイスレベルでの最初の違いです。

2番目の違いは機能的です: クラシックターミナルでは、バイトはユーザーの好み(ASCII、HEXなど)に従って表示されますが、 VT-100ターミナルでは、バイトストリームはエミュレータによって解釈され、 視覚的な意味を持ちます。

たとえば、リモートデバイスが色付きのメッセージを送信する場合、 テキストの色はユーザーによって選択されるのではなく、 デバイスによって決定され、VT-100ターミナルによって解釈されます。

VT-100ターミナルは、画面のクリア、カーソルの再配置、 およびその他のグラフィック操作のシーケンスも解釈します。

さらなる機能は、行と列の管理であり、 これによりターミナルは、文字数に関する画面の「解像度」を知ることで、 実際のテキストアプリケーションをエミュレートできます。

ユーザーは、CTRL + キーのようなキーの組み合わせを含む特別な文字シーケンスをリモートデバイスに送信することもでき、 これにより特定の動作が生成されます。

このタイプの対話は、低レベルのクラシックターミナルを使用すると 非常に複雑になります。

これらの予備的な説明は、ニーズに基づいてどのタイプのターミナルを使用するかを 理解するために不可欠です。 良いニュースは、SerialToolが両方のモードをサポートしていることです。

SerialTool VT-100 シリアルターミナルの使用方法

前述のように、各ターミナルウィンドウには物理シリアルポートを割り当てる必要があり、 これはSerialToolの基本的な動作原理を表しています。

まず、メインメニューからターミナルモードを選択します。

serial terminal option select

ターミナルモードの選択

set serial port terminal mode

VT-100 シリアルターミナルモードの選択

シリアルポートをVT-100シリアルターミナルに割り当てることができる画面を 表示することから始めましょう。

シリアルポート設定メニューから既に設定されているシリアルポートがある場合、 これらをSerialTool VT-100ターミナルの特定のタブに割り当てることができます。

中央のボタンをクリックすると、VT-100ターミナルでの表示用に割り当てることができる 利用可能なシリアルポートが表示されます。

serial port terminal assignment

シリアルポートが割り当てられたメインシリアルターミナル画面

シリアルポートが選択されると、ターミナルと割り当てられたシリアルポートの情報を含む 専用タブが開きます。これには、使用されている物理ポートまたはアダプターへの参照が含まれます (例:WindowsではCOMx、LinuxおよびmacOSではデバイスパス)。

serial port terminal port

シリアルポート1が割り当てられた画面と専用タブの開き

この時点で、シリアルポートに関連付けられたターミナルが開いたら、 リモートデバイスへのバイトの受信と送信が可能になります(専用の設定メニューからシリアルポートを開き、 通信パラメータを正しく設定することを忘れないでください)。

以下の例では、ESP32-S3モジュールのブートが表示されています。 緑色で表示されているテキストはESP32モジュールによって生成され、 特定のバイトシーケンスが送信され、その後SerialTool VT-100エミュレータによって 解釈されました。

serial port bootloader esp32

ESP32 モジュールブートローダー画面

VT-100ターミナルでは、マウスで関心のある文字領域を選択し、 その後、マウスの右ボタンを使用してエクスポートできます。

serial port export data

ターミナルデータエクスポート(コピー)画面

マウスの右ボタンを押すと、ターミナルの内容をコピーする機能に加えて、 VT-100エミュレーションで提供される制限内で、 いくつかのターミナル構成を変更できます。

“VT100 Terminal Settings”を選択すると、 ターミナル設定を変更し、そのシリアルポートのデフォルト構成として 保存できます。

物理的なシリアルポートが変更されても、構成は変更されないことを強調することが重要です。 これにより、SerialToolが再起動した場合でも、物理デバイスではなく論理シリアルポートに関連付けられた設定を維持できます。

たとえば、シリアル1が最初にポートCOM12に割り当てられ、 その後COM8に割り当てられた場合、 設定は物理ポートではなく割り当てられたシリアルに従うため、変更されません。

VT100 ターミナル設定 – 完全解説

設定画面から開始します(右クリックして“VT100 Terminal Settings”

serial port terminal settings

VT-100 エミュレーションのシリアルポートターミナルの設定画面

Use VT-100 Terminal Key Sequence

実際のVT-100エミュレーションをアクティブにします。 キーシーケンス(矢印、F1〜F4、ESCなど)は、実際のVT-100ターミナルと同じように 送信されます。

以下に不可欠:

  • テキストメニュー
  • 組み込みシェル
  • ブートローダー

推奨: シリアル使用の場合は ON

VT-100 Terminal Keyboard Input Settings

CTRLベースのASCII制御

CTRL + キーの組み合わせをクラシックASCIIコードにマッピングします:

組み合わせコード意味
CTRL + @0x00NUL
CTRL + Z0x1ASUB
CTRL + [0x1BESC
CTRL + \0x1CFS
CTRL + ]0x1DGS
CTRL + ^0x1ERS
CTRL + _0x1FUS
CTRL + ?0x7FDEL

ファームウェア、シリアルモニター、および低レベルデバッグに不可欠です。 推奨: ON

CTRL以外の特殊キー

特殊キーが押されたときに送信される内容を定義します:

キーシーケンス
ESC0x1B
ESC [ D
ESC [ C
ESC [ A
ESC [ B
F1–F4ESC OP / OQ / OR / OS
Backspace0x7F

U-Boot、Linuxシリアルコンソール、およびVT-100メニューと互換性があります。 推奨: ON

Caret Echo (^C, ^[, ^?)

制御文字を読み取り可能な形式で表示します(例:CTRL+C → ^C)。 デバッグや教育に役立ちます。

推奨: 通常の使用では OFF、デバッグ時のみ ON

色 (Colors)

  • Background Color – ターミナルの背景色
  • Opacity – ウィンドウの透明度

フォント (Fonts)

  • フォントの変更 / デフォルト設定 / 等幅設定 / ターミナルフォント設定
  • フォントサイズの拡大 / 縮小 – テキストズーム
  • フォント間隔 – 文字間のスペース(100% 推奨)

その他 (Misc)

Enter Key – Enterを押したときに送信される内容を定義します:

  • CR → \r
  • LF → \n
  • CRLF → \r\n

通常: MCU / モデム / ファームウェア → CRLF
組み込み Linux → 多くの場合 LF
推奨: CRLF

Suppress Local Echo:アクティブな場合、入力した内容は表示されません (リモートデバイスがエコーする場合にのみ使用)。

Show Timestamp:受信データの横にタイムスタンプを表示します。

Show Navigation Bar:ログ履歴のナビゲーションを有効にします (ターミナルエミュレータがアクティブな場合のみ有効)。

Terminal Emulator:受信および送信されたバイトの履歴を保持し、 クラシックターミナルの行と列の視覚的制限を克服します。

Terminal Columns × Lines:ターミナルの寸法。 Auto モードを推奨。

Support UTF-8 (Receive / Transmit): 受信時にUTF-8をデコードし、送信時にUTF-8を送信します。 推奨: 特別な必要がない限り OFF。

Save Settings – このシリアルポートの構成を保存します
Reset to Default – このターミナルのみをリセットします
Reset All Terminals – グローバルリセット
Exit – ウィンドウを閉じます