コンテンツにスキップ

🖥️ Web UI 操作・観測マニュアル

iceradar-webui は、ブラウザ上から RedPitaya のデバイス管理、観測ワークフローの実行、波形送信(TX/ASG)、およびデータ収集とグラフ解析を一括で行う Web アプリケーションです。

v0.8.0 より、「登録したデバイスを選んで直接操作する」デバイス中心の UX に刷新されました。


1. 画面構成とナビゲーション

Web UI(http://localhost:3334)は、左側のサイドバーとメイン操作パネルで構成されています:

┌─────────────────┬────────────────────────────────────────────────────────┐
│ [Observe WebUI] │ ⚙️ 設定  🤖 AI相談  ⬆ Update                           │
├─────────────────┼────────────────────────────────────────────────────────┤
│ DEVICES    +Add │ ┌─ 📟 rp-f0c5a7.local (root) ─────────────────────────┐ │
│                 │ │ ● Standby  |  📡 TX: Active  | Last Checked: ...    │ │
│ ┌─────────────┐ │ │ [🔄 更新] [🔑 鍵設定] [🚀 Deploy] [🔄 再起動] [🗑️]   │ │
│ │rp-f0c5a7    │ │ ├────────────────────────────────────────────────────┤ │
│ │● Standby    │ │ │ [🔄 送受信 (RX→TX)] [📥 受信] [📡 送信] [📂 回収]  │ │
│ │📡 TX:Active │ │ ├────────────────────────────────────────────────────┤ │
│ └─────────────┘ │ │                                                    │ │
│ ┌─────────────┐ │ │  (選択したワークフローに応じた設定フォーム)        │ │
│ │rp-ffff18    │ │ │                                                    │ │
│ │● Standby    │ │ │  [ ▶ 実行ボタン ]  [ ⏹ 停止ボタン ]                 │ │
│ │📡 TX: Idle  │ │ │                                                    │ │
│ └─────────────┘ │ │ ────────────────────────────────────────────────── │ │
│                 │ │ > デバイス別ターミナルログ                           │ │
│ ─────────────── │ │                                                    │ │
│ 📂 Data (データ)│ │ 🔍 CLI コマンドプレビュー (Advanced)                 │ │
│                 │ └────────────────────────────────────────────────────┘ │
└─────────────────┴────────────────────────────────────────────────────────┘
  1. サイドバー (DEVICES):
  2. 登録された RedPitaya デバイスが一覧表示されます。
  3. 各デバイスには、受信状態バッジ (Standby / Running / Offline) と 送信状態バッジ (TX: Active / Idle) が常時表示されます。
  4. + Add ボタンから、IP/ホスト名の手動登録および LAN 内自動検索 (Discover) が可能です。
  5. メイン操作パネル:
  6. サイドバーで選択したデバイスの操作・設定を行います。
  7. 上部のワークフローセレクターで観測モードを切り替えます。
  8. データビュー (📂 Data):
  9. サイドバー下部の「📂 Data (収集データ)」をクリックすると、全セッションの観測データ一覧とブラウザ内グラフ描画画面が開きます。

2. 観測ワークフローの選択

RedPitaya の FPGA 仕様上、受信(RX)を開始するとビットストリームが再構成されるため、実行中の送信(TX)がリセットされます。
この特性に合わせて、以下の 3 つの観測ワークフロー から目的に応じたモードを選択して実行します。

① 🔄 送受信 (RX → TX) モード 【モノスタティック観測】

1 台の RedPitaya で自己送信・自己受信を行う標準的なレーダ観測モードです。

  • 動作シーケンス:
    「▶ 送受信を開始 (RX → TX)」 をクリックすると、まず RX プロセスが起動(FPGA ビットストリーム書き込み&トリガ待機状態へ遷移)し、続いて自動的に TX 波形送信が開始されます。
  • 停止:
    「⏹ RX 停止」または「■ TX 停止」ボタンで個別に停止できます。

② 📥 受信のみ (RX) モード 【バイスタティック受信 / パッシブ観測】

別デバイスが送信した電波を受信する場合や、外部トリガ信号に同期してデータ取得を行うモードです。

  • 動作:
    「▶ 受信を開始 (RX)」 をクリックすると、指定したトリガソース(cha, chb, ext, asg)からの信号を待機し、反射波形を積算・保存します。

受信 (RX) 設定パラメータ

パラメータ 選択肢・設定値 説明
Model 125 / 250 125 (STEMLab 125-14) または 250 (SignalLab 250-12)
Mode sum (積算) / raw (生波形) 高感度積算モード、またはトリガごとの生サンプリングモード
Integration 64 〜 32768 積算回数(積算モード時)
Count (-c) 数値(例: 10、0 は無制限) 取得するサイクル数。0 を指定すると停止ボタンを押すまで連続取得
Trigger Source cha, chb, ext, asg トリガソース(外部トリガ ext、ASG 内部同期 asg、入力信号 cha/chb)
Trigger Level (-l) 電圧(mV) アナログトリガの判定しきい値
Debounce (-d) クロック数 (デフォルト: 48000) トリガチャタリング防止用デバウンス幅

③ 📡 送信のみ (TX) モード 【送信機運用】

RedPitaya を信号発生器(送信機)として単独動作させるモードです。

  • 波形種類 (Wave Type):
  • pulse: ガウス変調パルス信号(Period, Width, Amplitude, Burst Count, Burst Spacing)
  • chirp: 周波数変調チャープ波形(Start Freq, End Freq, Duration, Amplitude)
  • sine: 正弦波(Frequency, Amplitude)
  • square: 矩形波パルス(Frequency, Amplitude)
  • custom: CSV 形式の独自波形ファイル
  • トリガ出力 (OUT2):
  • トリガパルス幅 (Trigger Width) および遅延時間 (Delay) を調整して、外部機器や受信機へ同期信号を供給可能。
  • 動作:
    「▶ 送信を開始 (TX)」 をクリックすると連続送信を開始します。「■ 送信停止 (STOP TX)」を押すまで出力し続けます。

3. マルチデバイス並行運用 (バイスタティック観測)

送信機(Device A)と受信機(Device B)の 2 台を用いた観測も簡単に行えます:

  1. サイドバーで Device A を選択し、「📡 送信のみ (TX)」タブから送信を開始します(サイドバーのバッジが TX に変化)。
  2. サイドバーで Device B に切り替えます(Device A の送信はバックグラウンドで継続します)。
  3. Device B の「📥 受信のみ (RX)」タブで受信を開始します。
  4. 両デバイスのログやステータスは独立してリアルタイム更新されます。

4. データ回収とグラフ解析 (Collect)

観測完了後、デバイス内に保存されたバイナリデータ(.bin)をホスト PC に転送して可視化します。

  1. デバイスパネルの 「📂 データ回収 (Collect)」 タブを選択し、「📥 データを回収する」 をクリックします。
  2. データがホスト PC の data/ フォルダへ転送され、自動で CSV / PNG へ変換されます。
  3. サイドバー下部の 「📂 Data (収集データ)」 をクリックすると、ブラウザ上で波形グラフ(uPlot)を動的に拡大・縮小して解析できます。

5. デバイス管理機能 (⚙️ 管理)

  • 🔑 SSH 鍵設定: ホスト PC の公開鍵を RedPitaya に自動登録し、パスワードレス接続を有効化します。
  • 🚀 Deploy Program: C 言語バイナリ (observe) およびスクリプトを転送し、デバイス上でネイティブコンパイルします。
  • 🔄 Reboot Device: デバイスをリモートで安全に再起動します。
  • 🗑️ 削除: 登録済みデバイスを Web UI から登録解除します。

6. AI 相談機能 (AI Helpdesk)

画面右上の 「🤖 AI相談 (Beta)」 ボタンから、マニュアルや設定に関する質問を自然言語で行えます。

  • マルチプロバイダ対応:
  • Gemini agy CLI: Google Gemini / Antigravity サブスク(agy コマンド)
  • OpenAI Codex CLI: ChatGPT Plus/Pro/Team サブスク(codex コマンド)
  • Claude CLI: Claude Pro サブスク(claude コマンド)
  • OpenAI API: 従量課金 API Key / 互換サーバー(vLLM, Ollama 等)
  • カスタムLLM: 任意のCLIコマンド
  • 登録式プロバイダ管理:
  • 「⚙️ 設定」モーダルの「AI機能」タブで複数のプロバイダ(プロバイダ1, 2, 3...)を登録・管理できます。
  • AI相談ウィンドウ内の「使用プロバイダ」ドロップダウンから、質問時に使用するプロバイダをワンクリックで切り替え可能です。
  • 有料サブスクのCLIツールを利用すれば、従量課金API Keyの登録や追加費用なしで安心してご利用いただけます。