最新のリリースでは、このページがまだ翻訳されていません。 このページの最新版は英語でご覧になれます。

dB Conversion

振幅データをデシベル (dB または dBm) に変換

ライブラリ

Math Functions / Math Operations

dspmathops

説明

dB Conversion ブロックは、線形にスケーリングされた電力または振幅の入力を dB または dBm に変換します。基準電力は、dB への変換では 1 W、dBm への変換では 1 mW です。[Input signal] パラメーターは入力が電力信号か電圧信号かを指定し、[Convert to] パラメーターは出力のスケーリングを制御します。[Add eps to input to protect against “log(0) = -inf”] パラメーターが選択された場合、eps の値をすべての電力入力と電圧入力に追加します。このオプションが有効になっていない場合、ゼロ値の入力が出力で -inf を生成します。

出力は入力と同じサイズになります。

電力入力

入力 u が実数で非負の電力信号 (W 単位) の場合、[Power][Input signal] パラメーターとして選択します。[Convert to] パラメーターを [dB] に設定すると、ブロックで dB 変換が実行されます。

y = 10*log10(u)							% Equivalent MATLAB code

[Convert to] パラメーターを [dBm] に設定すると、ブロックで dBm 変換が実行されます。

y = 10*log10(u) + 30

dBm 変換は、入力を mW に変換した "後" に dB 変換することと等価です。

電圧入力

入力 u が実数の電圧信号 (V 単位) の場合、[Amplitude][Input signal] パラメーターとして選択します。ブロックは、[Load resistance] パラメーター R によって指定されたスケール係数 (Ω) を使用して電圧入力を電力単位 (W) に変換してから、dB または dBm への変換を行います。

[Convert to] パラメーターを [dB] に設定すると、ブロックで dB 変換が実行されます。

y = 10*log10(abs(u)^2/R)

[Convert to] パラメーターを [dBm] に設定すると、ブロックで dBm 変換が実行されます。

y = 10*log10(abs(u)^2/R) + 30

dBm 変換は、(abs(u)^2/R) の結果を mW に変換した "後" に dB 変換することと等価です。

パラメーター

Convert to

入力が変換される対数スケーリング。[dB] または [dBm] があります。基準電力は、dB への変換では 1 W、dBm への変換では 1 mW です。これは調整可能 (Simulink)です。

Input signal

入力信号のタイプ。[Power] または [Amplitude] があります。

Load resistance

電圧入力を電力単位に変換するために使用するスケール係数。これは調整可能 (Simulink)です。

Add eps to input to protect against “log(0) = -inf”

選択した場合、eps がすべての入力値 (電力または電圧) に追加されます。これは調整可能 (Simulink)です。

サポートされているデータ型

  • 倍精度浮動小数点

  • 単精度浮動小数点

参考

dB GainDSP System Toolbox
Math FunctionSimulink
log10MATLAB

拡張機能

C/C++ コード生成
Simulink® Coder™ を使用して C および C++ コードを生成します。

R2006a より前に導入