# 音声制御ハードウェアシナリオ

純粋な音声対話に基づき、音声制御ハードウェアシナリオではユーザーが音声で物理デバイスを操作できます。ユーザーは口頭でコマンドを発し、AIは理解・応答するだけでなく、実際のデバイス操作を行いタスクを完了します。

**技術的実装**：音声伝送、ASR、TTSは純粋な音声対話シナリオと同様です。主な違いは、AIエージェントがツール呼び出し機能を持つことです。制御インテントを検出すると、エージェントはMCPを介してMQTTプロトコルでデバイスにツール呼び出し要求を送信します。デバイスはMCPサーバーとして動作し、カメラのオン・オフ、音量調整、表情切り替え、写真撮影などのハードウェア操作を実行し、実行結果をエージェントに返します。エージェントは最終的にユーザーに音声フィードバックを提供します。

**アーキテクチャ構成要素**：

- **Volcano Engine RTC + ASR + TTS**：リアルタイム音声チャネルおよび音声認識・合成（標準製品）
- **AIエージェント（MCPクライアント）**：インテント理解とツール呼び出し判断（カスタム開発）
- **EMQX**：MCPプロトコルのMQTTトランスポート層（標準製品）
- **デバイス（MCPサーバー）**：ハードウェア機能をMCPツールとして公開（カスタム開発）

## フローダイアグラム

![音声制御ハードウェアのフロー](./voice-control-hardware.png)

**フロー説明**：

1. 音声伝送およびASR/TTSは純粋な音声対話シナリオと同様
2. AIエージェントがユーザーのインテントを解析しツール呼び出しを決定
3. MCPを介してMQTTでツール呼び出し要求を送信
4. デバイス（MCPサーバー）が要求を受信しハードウェア操作を実行
5. 実行結果がAIエージェントに返される
6. エージェントが結果を音声フィードバックに変換しユーザーに提供

## 代表的なシナリオ

### スマートホーム — 全館音声制御

午後10時、シャオ・ジャンは就寝準備中：

> **シャオ・ジャン**：「寝るよ。」
>  **スピーカー**：「了解です。おやすみモードを起動しました。」
>
> *(リビングの照明が暗くなり消灯、寝室のカーテンがゆっくり閉まり、エアコンが26℃の睡眠モードに切り替わり、テレビがオフになる)*
>
> **シャオ・ジャン**：「ベッドサイドランプを少し暗くして。」
>  **スピーカー**：「ベッドサイドランプの明るさを20%に設定しました。」
>
> **シャオ・ジャン**：「明日の朝7時にカーテンを開けて。」
>  **スピーカー**：「了解です。寝室のカーテンは明日7時に自動で開きます。」

一文で複数デバイスの連携動作をトリガーします。AIは「寝る」という文脈を理解し、あらかじめ設定された複数デバイスの動作を自動実行します。

### 車載システム — 運転中の安全な操作

リーさんは市街地を運転中：

> **リーさん**：「ちょっと暑い。エアコンの温度を2度下げて。」
>  **車載システム**：「了解です。エアコンを24℃から22℃に調整しました。」
>
> *(温度が自動調整される)*
>
> **リーさん**：「サンルーフを開けて風を入れて。」
>  **車載システム**：「サンルーフを開けました。」
>
> *(サンルーフがゆっくり開く)*
>
> **リーさん**：「後部窓を閉めて。風が強いから。」
>  **車載システム**：「後部窓を閉めました。」
>
> **リーさん**：「シートマッサージを腰モードでオンにして。」
>  **車載システム**：「腰部マッサージを起動しました。安全運転をお楽しみください。」

運転手は視線を落としたり操作パネルに手を伸ばす必要がなく、音声操作で安全な運転を実現します。

### 医療支援 — 手術室での音声制御

主任外科医のワン医師が手術中：

> **ワン医師**：「手術用ライトを左に10度動かして。」
>  **システム**：「手術用ライトを調整しました。」
>
> *(ライトが自動で動く)*
>
> **ワン医師**：「明るさを上げて。」
>  **システム**：「明るさを90%に上げました。」
>
> **ワン医師**：「患者のCT画像、3枚目を表示して。」
>  **システム**：「3枚目のCT画像を表示します。」
>
> *(表示が指定画像に切り替わる)*
>
> **ワン医師**：「右上の部分をズームインして。」
>  **システム**：「ズームインしました。」

非滅菌環境の機器に触れられない無菌環境下で、音声制御は手術効率と安全性を向上させます。

### 工業生産 — ハンズフリー操作

工場作業員のラオ・ジャンは機械を操作中：

> **ラオ・ジャン**（両手に部品を持ちながら）：「コンベヤーベルトをスタートして。」
>  **システム**：「コンベヤーベルトを起動しました。」
>
> **ラオ・ジャン**：「速度をレベル2に設定して。」
>  **システム**：「コンベヤーベルトの速度をレベル2、毎分30ユニットに設定しました。」
>
> **ラオ・ジャン**：「検査用カメラをオンにして。」
>  **システム**：「品質検査カメラを起動し、リアルタイム検査を開始しました。」
>
> **ラオ・ジャン**：「現在のパラメータを記録して。」
>  **システム**：「記録しました：温度180℃、圧力2.5MPa、速度レベル2。」

作業者の手がふさがっている場合、音声は最も自然な操作手段となり、生産性を大幅に向上させます。

## コア機能

### MCPツール呼び出し

デバイスはMCPサーバーとして機能し機能を公開、AIエージェントはMCPクライアントとして呼び出します：

```
ユーザー音声 → ASR → AIエージェントのインテント理解 → MCPツール呼び出し → デバイス実行 → 音声フィードバック
```

### 並列処理

音声フィードバックとデバイス操作を並列で行い、スムーズなユーザー体験を実現：

- ユーザーが「カメラをオンにして」と言う
- AIは即座に「了解、オンにします」と応答
- 同時にカメラが起動

カメラの起動完了を待つことなく応答するため、体感レイテンシが大幅に低減されます。

## 技術的ハイライト

| 項目                       | 説明                                                         |
| -------------------------- | ------------------------------------------------------------ |
| インテント解析             | 自然言語を特定のデバイス操作にマッピング                     |
| 複数デバイスのオーケストレーション | 一つのコマンドで複数デバイスの連携動作を実現                 |
| 状態フィードバック         | 実行結果を音声で報告                                         |
| コンテキスト認識           | 「少し上げて」や「あのライト」などの参照を理解               |

## 対応デバイス

- スマートホームゲートウェイ／コントロールパネル
- サービスロボット／コンパニオンロボット
- 車載制御システム
- 手術室医療機器
- 工業制御端末
- スマート会議室機器
