メインコンテンツ

物理量信号の単位の伝播

物理量信号では、信号値に単位が関連付けられています。ブロックのダイアログまたはプロパティ インスペクターで単位をパラメーター値と共に指定すると、Simscape™ ソフトウェアは物理ネットワークを解決する際に必要な単位変換処理を実行します。信号がベクトルまたは行列の場合、信号のすべての要素が同じ単位になります。単位なしの信号では、単位は 1 に指定されます。

Physical Signals ブロック ライブラリ内の Simscape ブロック (PS ブロック) では、物理量信号に対して数学演算やその他の関数を実行することで、物理ネットワーク内に方程式をグラフィカルに実装できます。これらのブロックには、単位の伝播を容易にするために、型なしの入力端子と出力端子があります。

  • PS ブロックの入力信号に関連付けられた物理単位は、接続された出力信号から伝播されます。

  • PS ブロックの出力信号に関連付けられた物理単位は、入力信号の単位と、ブロック内の方程式によって決定されます。ブロックが数学演算を実行すると、その演算は入力物理量信号の値と単位の両方に対して実行されます。

たとえば、Current Sensor 出力端子に接続された PS Gain ブロックについて考えます。この場合、PS Gain 入力端子における物理単位は A です。PS Gain 出力端子における物理単位は、入力信号単位に [ゲイン] パラメーターの単位を乗算したものです。

  • [ゲイン] パラメーターの単位が 1 (単位なし) の場合、出力信号の単位は入力信号と同じ、つまり A になります。

  • [ゲイン] パラメーターの単位が V の場合、出力物理量信号の単位は W になります。

同様に、PS Product ブロックでは、2 つの入力信号の値と単位の両方が乗算されます。

Unit propagation in a PS Product block

PS Add ブロックと PS Subtract ブロックでは、2 つの入力信号に対してそれぞれ加算と減算が行われるため、これらのブロックの 2 つの入力端子における物理量信号の単位は相応していなければなりません。2 つの入力信号の単位が同じであれば、出力信号もその単位になります。入力信号の単位が相応している場合、出力信号の単位は、その次元の基本単位になります。

Unit propagation in a PS Add block when input signals have the same unit

Unit propagation in a PS Add block when input signals have commensurate units unit

Unit propagation in a PS Add block when input signal units are not commensurate

PS Signal Specification ブロックでは、物理量信号のサイズと単位を明示的に指定できます。モデルの接続に基づいて信号のサイズと単位が暗黙的に特定できない場合に、このブロックを使用します。

アフィン単位の伝播

R2026a 以降

入出力信号では、アフィン単位は使用できません。ブロック パラメーターでアフィン単位が使用されている場合、物理量信号の単位伝播によって、その単位は基本単位に変換されます。変換タイプは、コンポーネント ファイルで指定された Conversion 属性によって定義されます。Physical Signal ライブラリ ブロックでは、既定の Conversion 属性 (absolute) が使用されます。

つまり、ブロック パラメーターで単位として degC または degF が指定されている場合、単位伝播により、絶対温度の K に変換されます。モデルで相対温度を指定するために degC または degF が使用されている場合、単位伝播によって得られる結果は数値的に不正確になります。相対温度を指定するには、deltadegC または deltadegF を使用します。

たとえば、Temperature Sensor ブロックが PS Lookup Table (1D) ブロックに入力を提供し、Temperature Sensor ブロックの [温度測定] パラメーターが [絶対] に設定されている場合、PS Lookup Table (1D) ブロックの [テーブル グリッド ベクトル] パラメーターの単位として degC または degF を指定できます。

Affine unit propagation for absolute temperature and one port

Temperature Sensor ブロックの [温度測定] パラメーターを [差分] に設定しても、端子 [B]Thermal Reference ブロックに接続した場合は、[テーブル グリッド ベクトル] パラメーターの単位として degC または degF も指定できます。これは、この場合の Temperature Sensor ブロックは実質的に絶対温度を測定するからです。

Affine unit propagation for absolute temperature and two ports

ただし、端子 [B]Thermal Reference ブロックに接続していないと、Temperature Sensor ブロックは相対温度を測定します。この場合、[テーブル グリッド ベクトル] パラメーターの単位として degC または degF を指定すると、数値的に不正確な結果が得られます。そのモデルでは、deltadegC または deltadegF を使用する必要があります。

Affine unit propagation for relative temperature

参考

トピック