Main Content

無線波形発生器

変調された波形の作成、劣化要因の追加、可視化、およびエクスポート

説明

無線波形発生器アプリを使用することで、変調された波形の作成、劣化要因の追加、可視化、およびエクスポートができます。

このアプリを使用して以下ができます。

  • カスタムの OFDM、QAM、および PSK 変調された波形の生成。

  • 正弦波テスト波形の生成。

  • 5G NR アップリンクとダウンリンクの搬送波形の生成。この機能には5G Toolboxが必要です。詳細については、5G 波形発生器 (5G Toolbox)アプリのリファレンス ページを参照してください。

  • LTE 変調された波形の生成。この機能にはLTE Toolboxが必要です。詳細については、LTE Waveform Generator (LTE Toolbox) アプリのリファレンス ページを参照してください。

  • WLAN (802.11™) 変調された波形の生成。この機能にはWLAN Toolboxが必要です。詳細については、WLAN 波形発生器 (WLAN Toolbox)アプリのリファレンス ページを参照してください。

  • Bluetooth 変調された波形の生成。この機能にはBluetooth Toolboxが必要です。

  • レーダー波形の生成。この機能にはPhased Array System Toolboxが必要です。

  • ZigBee® および UWB (IEEE® 802.15.4z) 変調波形の生成。この機能には、Communications Toolbox Library for ZigBee and UWB アドオンが必要です。

  • ワークスペース、.mat または .bb ファイルへの波形のエクスポート。

  • 実行可能な MATLAB® スクリプトまたは Simulink® ブロックへの波形生成パラメーターのエクスポート。

    • エクスポートしたスクリプトを使用して、アプリを使用せずにコマンド ラインから波形を生成する。

    • エクスポートしたブロックを Simulink モデルで波形ソースとして使用する。詳細については、Waveform From Wireless Waveform Generator App を参照してください。

  • コンスタレーション ダイアグラム、スペクトル アナライザー、OFDM グリッド、および時間スコープのプロットでの波形の可視化。

  • AWGN、位相オフセット、周波数オフセット、DC オフセット、IQ 不平衡、および無記憶 3 次非線形性などの RF 劣化要因の追加による波形の歪みの生成。

  • 接続された無線計器または Lab テスト計器を使用して送信できる波形の生成。

    • SDR を使用して波形を送信するには、サポートされている SDR (ADALM-Pluto 無線機、USRP™ 無線機、USRP Embedded Series 無線機、および Xilinx® Zynq ベース無線機) の 1 つをコンピューターに接続し、関連するアドオンをインストールします。詳細については、Transmit Using SDRを参照してください。

    • Lab テスト計器を使用して波形を送信するには、関数 rfsiggen (Instrument Control Toolbox) でサポートされている計器の 1 つをコンピューターに接続します。詳細については、Quick-Control RF Signal Generator Requirements (Instrument Control Toolbox)を参照してください。この機能にはInstrument Control Toolboxが必要です。

    • 無線機のフル レートで波形を無線送信するには、Wireless Testbench™ ソフトウェアを使用し、サポートされている無線機をコンピューターに接続します。デバイスのフル レートをサポートする無線機のリストについては、Supported Radio Devices (Wireless Testbench)を参照してください。この機能にはWireless Testbenchが必要です。例については、無線送信機を使用したアプリ生成無線波形の送信を参照してください。

詳細は、Create Waveforms Using Wireless Waveform Generator App を参照してください。

Wireless Waveform Generator app display of 16QAM waveform with IQ imbalance and RRC filtering.

無線波形発生器 アプリを開く

MATLAB ツールストリップ: [アプリ] タブの [信号処理と通信] でアプリのアイコンをクリックします。

MATLAB コマンド プロンプト: wirelessWaveformGenerator と入力します。

すべて展開する

無線波形発生器アプリを開き、[波形タイプ] タブから the OFDM button を選択して OFDM 波形を構成します。[生成] をクリックし、既定の波形を生成します。表示される波形は、QPSK 変調されたシンボルをもつ OFDM 波形です。

Wireless Waveform Generator app display of OFDM waveform for default configuration.

[Insert DC null] をクリックして、[Guard band subcarriers][20;19] に増やします。[Generate] を再度クリックします。プロットされた波形が変化し、更新された構成が反映されます。

Wireless Waveform Generator app display of OFDM waveform with DC null and guard band subcarriers set to [20;19].

無線波形発生器アプリを開き、[波形タイプ] タブから Icon to configure wireless waveform generator for QAM waveform generation. を選択して QAM 波形を生成します。既定の波形設定を更新して、11.25 度 (pi/16 ラジアン) の位相の不均衡と 1.5 dB の振幅の不均衡を指定します。[Generate] をクリックし、波形を生成します。

Wireless Waveform Generator app display of 16QAM waveform with IQ imbalance.

[Filtering] パラメーターを選択し、ルート レイズド コサイン フィルター処理を適用します。[Generate] を再度クリックし、現在の構成を使用して波形を生成します。プロットされた波形が変化し、更新された構成が反映されます。

Wireless Waveform Generator app display of 16QAM waveform with IQ imbalance and RRC filtering.

この例は 5G NR 波形の生成方法を示します。詳細については、5G 波形発生器 (5G Toolbox)アプリのリファレンス ページを参照してください。

5G 波形発生器アプリを開く

MATLAB ツールストリップの [アプリ] タブにある [信号処理と通信]5G 波形発生器アプリのアイコンをクリックします。5G 波形の生成用に構成された無線波形発生器アプリが開きます。この機能には5G Toolboxが必要です。

5G NR 波形の生成

次の図は、既定のパラメーターを使用した 5G ダウンリンク波形生成の可視化結果を示しています。

5G Wireless Waveform Generator app default configuration.

この例は LTE 波形の生成方法を示します。詳細については、LTE Waveform Generator (LTE Toolbox) アプリのリファレンス ページを参照してください。

LTE Waveform Generator アプリを開く

MATLAB ツールストリップの [アプリ] タブにある [信号処理と通信]LTE Waveform Generator アプリのアイコンをクリックします。LTE 波形生成用に構成された無線波形発生器アプリが開きます。この機能にはLTE Toolboxが必要です。

LTE 波形の生成

次の図は、既定のパラメーターを使用した LTE ダウンリンク波形生成の可視化結果を示しています。

LTE Wireless Waveform Generator app default configuration.

この例は Bluetooth® 波形の生成方法を示します。Bluetooth 波形の生成用に構成された無線波形発生器アプリが開きます。この機能にはBluetooth Toolboxが必要です。

MATLAB ツールストリップの [アプリ] タブにある [信号処理と通信]無線波形発生器アプリのアイコンをクリックします。無線波形発生器アプリが開きます。[Waveform Type] セクションで、[Bluetooth Low Energy] をクリックします。[Generate] をクリックし、Bluetooth Low Energy (LE) 波形を生成します。

次の図は、既定のパラメーターを使用した Bluetooth LE ダウンリンク波形生成の可視化結果を示しています。

Bluetooth LE Wireless Waveform Generator app default configuration.

この例は WLAN 波形の生成方法を示します。詳細については、WLAN 波形発生器 (WLAN Toolbox)アプリのリファレンス ページを参照してください。

WLAN 波形発生器アプリを開く

MATLAB ツールストリップの [アプリ] タブにある [信号処理と通信]WLAN 波形発生器アプリのアイコンをクリックします。WLAN 波形生成用に構成された無線波形発生器アプリが開きます。この機能にはWLAN Toolboxが必要です。

WLAN 波形の生成

次の図は、既定のパラメーターを使用した WLAN ダウンリンク波形生成の可視化結果を示しています。

WLAN Wireless Waveform Generator app default configuration.

この例では、Phased Array System Toolbox™ にあるレーダー波形を生成する方法を示します。レーダー波形については、Pulse Waveform Analyzer (Phased Array System Toolbox) アプリのリファレンス ページを参照してください。

まず、無線波形発生器アプリを開き、[波形タイプ] タブから Icon to configure wireless waveform generator for Linear FM waveform generation. を選択します。既定の波形設定を使用し、[生成] をクリックして単一の波形を生成します。Wireless Waveform Generator app display of Linear FM waveform with default settings.アプリには、1 つの線形 FM パルスとパルスのスペクトルが表示されます。

次に、[Number of pulses] を 5 に設定して波形のパルス数を変更し、[生成] を再度選択します。5 つのパルスが表示されますが、スペクトルはほぼ同じままです。Wireless Waveform Generator app display of Linear FM waveform with default settings.

無線波形発生器アプリを開き、[波形タイプ] タブから Icon to configure wireless waveform generator for UWB waveform generation. を選択して、UWB 波形を生成します。既定の波形設定を使用します。[Generate] をクリックし、波形を生成します。

Wireless Waveform Generator app display of UWB waveform with default settings.

[波形タイプ] タブから Icon to configure wireless waveform generator for UWB waveform generation. を選択して、ZigBee で使用される 802.15.4 OQPSK 波形を生成します。既定の波形設定を使用します。[Generate] をクリックし、波形を生成します。

Wireless Waveform Generator app display of 802.15.4 OQPSK waveform with default settings.

この例は、無線波形発生器アプリで使用可能な [Simulink にエクスポート] 機能を使用して生成されたブロックを構成および使用する方法を示します。

はじめに

"無線波形発生器" アプリは、波形の作成、劣化要因の追加、可視化、およびエクスポートを行うための対話型のツールです。ワークスペース、.mat または .bb ファイルに波形をエクスポートできます。また、実行可能な MATLAB® スクリプトまたは Simulink® ブロックに波形生成パラメーターをエクスポートできます。エクスポートした Simulink ブロックを使用して、Simulink で波形を再現できます。この例では、アプリの "Simulink にエクスポート" 機能を使用する方法と、エクスポートしたブロックを構成して Simulink で波形を生成する方法を説明します。

この例では OFDM 波形のエクスポートを取り上げていますが、サポートされているすべての波形タイプに同じプロセスを適用できます。

Simulink へのワイヤレス波形構成のエクスポート

[アプリ] タブの [信号処理と通信]無線波形発生器アプリのアイコンをクリックし、このアプリを開きます。あるいは MATLAB コマンド プロンプトで wirelessWaveformGenerator と入力します。

[Waveform Type] セクションで [OFDM] をクリックして OFDM を選択します。アプリの左端のペインで、選択した波形のコンフィギュレーション パラメーターを調整します。次にアプリ ツールストリップの [Export] をクリックし、[Export to Simulink] を選択して、構成をエクスポートします。

[Export to Simulink] オプションにより Simulink ブロックが作成されます。このブロックは、Simulink モデルの実行時に選択された波形を出力します。開いているモデルがない場合、このブロックは新しいモデルにエクスポートされます。

modelName = 'WWGExport2SimulinkBlock';
open_system(modelName);

"Form output after final data value by" ブロック パラメーターは、指定されたすべての信号サンプルの生成後の出力を指定します。このパラメーターの値は Cyclic repetition および Setting to zero です。Cyclic repetition オプションでは、信号の最後のサンプルに到達後、最初から信号が繰り返されます。Setting to zero オプションでは、ブロックは信号の最後のフレームを生成後、シミュレーションの間、ゼロ値の出力を生成します。"波形のサンプル レート (Fs)" および "波形長" ブロック パラメーターは、[マスク エディター] ダイアログ ボックスの [コード] タブで使用可能な波形構成から導出されます。ブロック パラメーターの詳細については、Waveform From Wireless Waveform Generator Appを参照してください。この図は、エクスポートしたブロックのパラメーターを示しています。

close_system(modelName);

エクスポートしたブロックに Spectrum Analyzer ブロックを接続します。

modelName = 'WWGExport2SimulinkModel';
open_system(modelName);

モデルをシミュレーションし、現在の構成を使用して波形を可視化します。

sim(modelName);

Spectrum Analyzer ブロックは [Waveform sample rate (Fs)] パラメーター (64 MHz) を継承します。

close_system(modelName);

ワイヤレス波形の構成の変更

Simulink モデルを実行すると、エクスポートされたブロックによって、ブロックの [マスク エディター] ダイアログ ボックスの [コード] タブで生成された波形が出力されます。このタブで波形を初期化する MATLAB コードは、ブロックをエクスポートする前に無線波形発生器アプリで選択した構成に対応しています。波形の構成を変更するには、次のオプションのいずれかを選択します。

  • 無線波形発生器アプリを開き、構成を選択し、新しいブロックをエクスポートする。このオプションでは、MATLAB コードの代わりにアプリ インターフェイスを操作し、パラメーター化プロセスでパラメーター範囲を検証し、Simulink モデル実行前に波形を可視化できます。

  • エクスポートしたブロックの [マスク エディター] ダイアログ ボックスの [コード] タブで使用できるコンフィギュレーション パラメーターを更新する。このオプションの場合、このタブで使用できる MATLAB コードを変更する必要があります。これにより、変更適用時にのみパラメーター範囲の検証が行われるようになります。このオプションでは、Simulink モデル実行前の波形の可視化は行われません。選択した波形を生成する MATLAB コードを熟知していない場合には、このオプションを使用して波形パラメーターを変更することは推奨されません。

マスク エディターの [コード] タブで構成を更新できます。マスク エディターを開くには、エクスポートされたブロックをクリックし、"Ctrl+M" を押します。

[コード] タブで使用可能な MATLAB コードを使用して、必要なパラメーターを更新します。たとえば、サブキャリア間隔 scs を 1,500,000 Hz に設定します。

[OK] をクリックし、変更を適用して [マスク エディター] ダイアログ ボックスを閉じます。モデルをシミュレーションし、更新後の波形を可視化します。

modelName = 'WWGExport2SimulinkModelSCSModified';
sim(modelName);

Spectrum Analyzer ブロックにはサンプル レート 96 MHz が表示されます。これは予期されるとおり、前のサンプル レートの 1.5 倍です。

モデルのその他のブロックとのワイヤレス波形構成の共有

読み取り専用のブロック パラメーターと波形コンフィギュレーション パラメーターにアクセスするには、UserData 共通のブロック プロパティを使用します。このプロパティは次のフィールドからなる構造体です。

  • WaveformConfig:波形の構成

  • WaveformLength:波形の長さ

  • Fs:波形のサンプル レート

関数 get_param を使用することで、エクスポートしたブロックのユーザー データにアクセスできます。

get_param([gcs '/OFDM Waveform Generator'],'UserData')
ans = 

  struct with fields:

    WaveformConfig: [1x1 comm.OFDMModulator]
    WaveformLength: 8000
                Fs: 96000000

コールバックで InitFcn を使用して、ユーザー データで使用可能な構造体をベース ワークスペース変数に保管します。InitFcn コールバックは、モデルの更新およびシミュレーション中に実行されます。このコールバックを使用するには、[モデル化] タブをクリックし、[モデル設定] ドロップダウン、[モデル プロパティ] オプションの順にクリックします。[コールバック] ペインで、InitFcn コールバックを選択します。ユーザー データを新しいベース ワークスペース変数 (cfg など) に割り当てます。

エクスポートしたブロックのユーザー データで使用可能なパラメーターは、[コード] タブで構成変更を適用するたびに更新されます。

OFDM 波形を復調するには、OFDM Demodulator ブロックをモデルに追加します。OFDM Waveform Generator ブロックと OFDM Demodulator ブロックの間に AWGN Channel ブロックを接続して、入力信号にホワイト ガウス ノイズを付加します。また Constellation Diagram ブロックを追加して、復調されたシンボルをプロットします。

modelName = 'WWGExport2SimulinkModelWithDemod';
open_system(modelName);

OFDM Demodulator ブロックの構成に必要なパラメーターは、エクスポートしたブロックを構成するために使用されるパラメーターと一致している必要があります (一致していない場合、復調が失敗します)。エクスポートしたブロックのコンフィギュレーション パラメーターにアクセスするには、変数 cfg を使用します。この図は、OFDM Demodulator ブロックのパラメーターを示しています。

OFDM Demodulator ブロックには復調する OFDM 波形全体が必要であるため、エクスポートしたブロックの [Samples per frame] パラメーターを cfg.WaveformLength に設定します。モデルをシミュレートします。

sim(modelName);

OFDM Demodulator ブロックを使用して OFDM 波形を復調した後、Constellation Diagram ブロックによって、結果の QAM シンボルが表示されます。

マルチキャリア波形の生成

マルチキャリア生成では、すべての波形のサンプリング レートが同じでなければなりません。波形を搬送波オフセットにシフトして集約するには、Multiband Combiner ブロックを使用できます。

modelName = 'WWGExport2SimulinkMulticarrier';
open_system(modelName);

波形を周波数でシフトするには、サンプリング レートを上げる必要がある場合があります。Multiband Combiner ブロックは、入力波形をシフトして結合する前にその入力波形をオーバーサンプリングするオプションを提供します。この図は、Multiband Combiner ブロックのパラメーターを示しています。

モデルをシミュレーションし、-80、20、および 100 MHz を中心とする波形を可視化します。

sim(modelName);

この例では、"無線波形発生器" アプリで利用可能な NI™ USRP™ N310、USRP N320、USRP N321、および USRP X310 の無線送信機を使用して、アプリで生成された波形を無線で送信する方法を示します (Wireless Testbench™ が必要)。これらの無線送信機を使用すると、最大 2 GB の連続データを無線機のフル レートで無線送信できます。

はじめに

無線波形発生器アプリは、波形の作成、劣化要因の追加、可視化、および送信を行うための対話型のツールです。アプリで利用可能な USRP N310、USRP N320、USRP N321、および USRP X310 の無線送信機を使用して、生成された波形を無線で繰り返し送信できます。また、波形生成パラメーターおよび送信パラメーターを実行可能な MATLAB® スクリプトにエクスポートすることもできます。この例では、これらの無線送信機を構成する方法を示します。

この例では OFDM 波形を送信する方法を示していますが、アプリで生成できるすべての波形タイプに同じプロセスを適用できます。

無線送信の設定

アプリで無線送信機を使用するには、Wireless Testbench Support Package for NI USRP Radios をインストールし、アプリ外で無線機を設定する必要があります。詳細については、Connect and Set Up NI USRP Radios (Wireless Testbench)を参照してください。

送信用波形の生成

[アプリ] タブの [信号処理と通信]無線波形発生器アプリのアイコンをクリックし、このアプリを開きます。あるいは MATLAB コマンド プロンプトで wirelessWaveformGenerator と入力します。

[Waveform Type] セクションで [OFDM] をクリックして OFDM を選択します。アプリの左端のペインで、選択した波形の構成パラメーターを調整します。次に、アプリのツールストリップで [生成] をクリックして構成を生成します。

無線送信機の設定

アプリのツールストリップから [送信機] タブを選択します。送信機ギャラリーで、USRP N310、USRP N320、USRP N321、または USRP X310 の無線送信機を選択します。

アプリの左端のペインで、無線機セットアップ ウィザードを使用して保存した無線セットアップ構成の名前を選択します。詳細については、Connect and Set Up NI USRP Radios (Wireless Testbench)を参照してください。

中心周波数、ゲイン、およびアンテナの構成パラメーターを設定します。アプリは、以前に生成した波形に基づいて、波形のサンプル レートを自動的に設定します。無線送信機は、オンボードのデータ バッファリングを使用して、ハードウェアの最大サンプル レートまでの連続データ伝送を確保します。必要に応じて、指定されたサンプル レートを達成するために、無線機は Farrow レート コンバーターを使用します。サンプル レートを設定する際の参考として、次のリストを使用してください。

  • USRP N310 — 120,945 Hz ~ 76.8 MHz、または次のいずれか: 122.88 MHz、125 MHz、または 153.6 MHz

  • USRP N320 — 196,851 Hz ~ 125 MHz、または次のいずれか: 200 MHz、245.76 MHz、または 250 MHz

  • USRP N321 — 196,851 Hz ~ 125 MHz、または次のいずれか: 200 MHz、245.76 MHz、または 250 MHz

  • USRP X310 — 181,418 Hz ~ 100 MHz、または次のいずれか: 184.32 MHz または 200 MHz

波形の送信

連続して波形を送信するには、[送信] をクリックします。連続送信を終了するには、[Stop transmission] をクリックします。波形生成および伝送パラメーターを実行可能 MATLAB スクリプトにエクスポートするには、[MATLAB スクリプトのエクスポート] をクリックします。

バージョン履歴

R2018b で導入