このページの翻訳は最新ではありません。ここをクリックして、英語の最新版を参照してください。
modulate
通信シミュレーション用の変調
構文
説明
例
単側波帯振幅変調
200 Hz で 1 秒間サンプリングされた 10 Hz の正弦波信号を生成します。分散 0.01 のホワイト ガウス ノイズに正弦波を組み込みます。
fs = 200; t = 0:1/fs:1; x = sin(2*pi*10*t) + randn(size(t))/10;
50 Hz の搬送周波数を使用して、信号を単側波帯振幅変調します。新しいウェルチのパワー スペクトル密度推定を計算および表示します。
y = modulate(x,50,fs,'amssb'); pwelch([x;y]',hamming(100),80,1024,fs,'centered')
2 つの正弦波信号の直交振幅変調
200 Hz のレートで 1 秒間サンプリングされた 10 Hz と 20 Hz の 2 つの正弦波信号の周波数を生成します。分散 0.01 のホワイト ガウス ノイズに正弦波を組み込みます。
fs = 200; t = 0:1/fs:1; i = sin(2*pi*10*t) + randn(size(t))/10; q = sin(2*pi*20*t) + randn(size(t))/10;
70 Hz の搬送周波数を使用して、信号 i
と q
から直交振幅変調された信号を作成します。元のシーケンスと変調したシーケンスのウェルチ パワー スペクトル密度推定を計算します。80 サンプルがオーバーラップする 100 サンプルのハミング ウィンドウを使用します。FFT 長に 1024 を指定します。
y = modulate(i,70,fs,'qam',q); pwelch([i;q;y]',hamming(100),80,1024,fs,'centered') legend('In-phase signal','Quadrature signal','Modulated signal')
入力引数
x
— メッセージ信号
実数ベクトル | 実数行列
メッセージ信号。実数ベクトルまたは行列として指定します。
例: sin(2*pi*25*[0:(1/200):1])
fc
— 搬送周波数
実数の正のスカラー
メッセージ信号を変調するために使用される搬送周波数。実数の正のスカラーとして指定します。
fs
— サンプルレート
実数の正のスカラー
サンプルレート。実数の正のスカラーとして指定します。
method
— 使用された変調方法
'am'
(既定値) | 'amdsb-tc'
| 'amssb'
| 'fm'
| 'pm'
| 'pwm'
| 'ppm'
| 'qam'
使用された変調の方法。次のいずれかとして指定します。
amdsb-sc
またはam
— 振幅変調、両側波帯、抑圧搬送波。周波数fc
の正弦波をx
で乗算します。y = x.*cos(2*pi*fc*t)
amdsb-tc
— 振幅変調、両側波帯、伝送搬送波。x
からスカラーopt
を減算し、その結果に周波数fc
の正弦波が乗算されます。y = (x-opt).*cos(2*pi*fc*t)
opt
パラメーターを指定しない場合、modulate
では、メッセージ信号(x-opt)
が全体的に非負で、最小値がゼロになるように、min(min(x))
の既定値が使用されます。amssb
— 振幅変調、単側波帯。周波数fc
の正弦波をx
で乗算し、その結果に、x
のヒルベルト変換を周波数fc
の位相をシフトした正弦波で乗算したものに加算します。y = x.*cos(2*pi*fc*t)+imag(hilbert(x)).*sin(2*pi*fc*t)
これにより、上側波帯が効率的に除去されます。
fm
— 周波数変調。メッセージ信号x
と共に変化する瞬時周波数をもつ正弦波が作成されます。y = cos(2*pi*fc*t + opt*cumsum(x))
cumsum
はx
の積分の四角形近似です。modulate
では、周波数変調の定数としてopt
が使用されます。opt
パラメーターを指定しない場合、modulate
では、既定としてopt = (fc/fs)*2*pi/(max(max(x)))
が使用されます。このとき、fc
からの最大周波数偏差はfc
Hz となります。pm
— 位相変調。メッセージ信号x
と共に位相が変化する周波数fc
の正弦波が作成されます。y = cos(2*pi*fc*t + opt*x)
modulate
では、位相変調の定数として、opt
が使用されます。opt
パラメーターを指定しない場合、modulate
では、既定としてopt = pi/(max(max(x)))
が使用されます。このとき、最大位相偏位は π ラジアンです。pwm
— パルス幅変調。x
のパルス幅からパルス幅変調された信号が作成されます。x
の要素は、0 ~ 1 の間で、各パルスの幅を周期の割合で指定しなければなりません。パルスは、各周期の開始点で始まります。つまり、左に位置合わせされます。modulate(x,fc,fs,'pwm','centered')
では、パルスの中心が各周期の開始点に揃えられます。y
の長さはlength(x)*fs/fc
です。ppm
— パルス位置変調。x
のパルス幅からパルス位置変調された信号が作成されます。x
の要素は、0 ~ 1 の間になければならず、1 周期の細分化切片内の各パルスの左端を指定します。opt
は、0 ~ 1 の間のスカラー値で、1 周期の細分化切片内の各パルスの長さを指定します。opt
の既定値は0.1
です。y
の長さはlength(x)*fs/fc
です。qam
— 直交振幅変調。信号x
とopt
から直交振幅変調された信号が作成されます。y = x.*cos(2*pi*fc*t) + opt.*sin(2*pi*fc*t)
入力引数
opt
は、x
と同じサイズでなければなりません。
opt
— 一部のメソッドに対するオプションの入力
実数ベクトル
オプションの入力。一部のメソッドで指定します。opt
を使用する方法の詳細については、method
を参照してください。
出力引数
y
— 変調した信号
実数ベクトル | 実数行列
変調されたメッセージ信号。実数ベクトルまたは行列として返されます。メソッド pwm
と ppm
を除いて、y
は x
と同じサイズになります。
t
— 内部時間配列
実数ベクトル
計算で modulate
によって使用される内部時間配列。実数ベクトルとして指定します。
バージョン履歴
R2006a より前に導入
MATLAB コマンド
次の MATLAB コマンドに対応するリンクがクリックされました。
コマンドを MATLAB コマンド ウィンドウに入力して実行してください。Web ブラウザーは MATLAB コマンドをサポートしていません。
Select a Web Site
Choose a web site to get translated content where available and see local events and offers. Based on your location, we recommend that you select: .
You can also select a web site from the following list:
How to Get Best Site Performance
Select the China site (in Chinese or English) for best site performance. Other MathWorks country sites are not optimized for visits from your location.
Americas
- América Latina (Español)
- Canada (English)
- United States (English)
Europe
- Belgium (English)
- Denmark (English)
- Deutschland (Deutsch)
- España (Español)
- Finland (English)
- France (Français)
- Ireland (English)
- Italia (Italiano)
- Luxembourg (English)
- Netherlands (English)
- Norway (English)
- Österreich (Deutsch)
- Portugal (English)
- Sweden (English)
- Switzerland
- United Kingdom (English)