Main Content

レガシ物理量信号ブロックを使用したモデルのアップグレード

R2019a では、信号のサイズと単位の伝播を容易にするために、Physical Signals ライブラリにあるすべてのブロックが、型なしの入力と出力付きで再実装されました。これらの新しいブロックは、モデル内の対応するレガシ ブロックを自動的に置き換えるわけではありません。ブロックを最新バージョンにアップグレードするには、アップグレード アドバイザーを使用します。

[旧式の Simscape Physical Signal ブロックがないかチェックして更新] チェックを実行すると、アップグレード アドバイザー ウィンドウの右側のペインに、旧式のブロックへのリンクが一覧表示されます。リンクをクリックすると、モデル内の対応するブロックが強調表示されます。

モデルによっては、リンクが複数のグループに分けられていることがあります。

レポートのセクションアップグレード アクション

自動的に更新可能な旧式のブロックがモデルに含まれている場合、それらはレポートの最初のセクションに一覧表示され、その後に [アップグレード] リンクが続きます。

ブロック リンクのリストの下にある [アップグレード] リンクをクリックします。一覧表示されたそれぞれのブロックが、最新のライブラリ バージョンで自動的に置き換えられます。その一方で、すべてのパラメーター値は維持され、また適切な場合はパラメーター単位が設定されます。詳細については、自動アップグレードの例を参照してください。

場合によっては、直接変換するとコンパイル エラーになったり、異なる結果が得られるために、レガシ ブロックを自動的に変換できないこともあります。これらのブロックは、根底にある問題ごとにグループ化され、表に一覧表示されます。表の各行には、以下が記載されます。

  1. この問題の影響を受けるブロックへのリンクのリスト

  2. 問題の説明

  3. [新しいバージョンに切り替え] リンク

根底にある問題に基づいてブロックがグループ化された表を確認します。表の各行について [新しいバージョンに切り替え] リンクをクリックし、この行の 1 番目のセルに表示されたすべてのブロックを変換してから、影響を受けたブロックに個別にアクセスして問題を解決します。詳細については、非自動アップグレードの例を参照してください。

自動アップグレードの例

アップグレード アドバイザーで、自動的に更新可能なレガシ Physical Signal ブロックが見つかった場合、これらのブロックはすべて最初のリンク グループに表示され、その後に [アップグレード] リンクが表示されます。

これは、自動的にアップグレードできるモデルの例です。

レガシ PS Product ブロックでは、単位が伝播されません。しかし、このブロックを PS Product ブロックの現在のバージョンに置き換えると、単位の伝播が問題なく行われます。最初の入力信号は Current Sensor から生じ、単位は A です。2 番目の入力信号は Voltage Sensor から生じ、単位は V です。それらの積、つまり出力信号の単位は W で、これは Controlled Heat Flow Rate Source ブロックの入力端子 S で必要とされる単位です。

[アップグレード] リンクをクリックすると、レガシ PS Product ブロックが自動的に最新ライブラリのバージョンに置き換えられます。

非自動アップグレードの例

場合によっては、直接変換するとコンパイル エラーになったり、異なる結果が得られるために、レガシ ブロックを自動的に変換できないこともあります。この場合、影響を受けたブロックを個別に検証して問題を解決し、モデルが意図したとおりに動作するかどうかを確認しなければなりません。

これは、自動的にアップグレードできないモデルの例です。

このブロック線図の PS Lookup Table (1D) ブロックには、トルク損失の表形式データが lbf*ft 単位で、シャフト速度 (rpm 単位) の関数として含まれています。

Ideal Rotational Motion Sensor ブロックからの出力信号の単位は rad/s で、トルク損失をモデル化する Ideal Torque Source ブロックの入力端子 S には単位 N/m が必要です。レガシ Physical Signal ブロックでは単位が伝播されなかったので、モデルでは単位変換を考慮するために 2 つの PS Gain ブロックが PS Lookup Table (1D) ブロックの両側に含まれています。たとえば、最初の PS Gain ブロックでは rad/s を rpm に変換するための係数が提供されています。

このモデルで [旧式の Simscape Physical Signal ブロックがないかチェックして更新] チェックを実行すると、アップグレード アドバイザーは単位の不一致を検出しますが、PS Gain ブロックが問題に対処しているかは判定できません。したがって、3 つのブロックはすべて表の同じ行に表示され、その後にエラーの説明と [新しいバージョンに切り替え] リンクが続きます。

[新しいバージョンに切り替え] をクリックすると、3 つのレガシ ブロックはそれぞれ対応する最新バージョンに置き換わります。しかし、これでは単位の不一致の問題は解決しません。手動で対応しなければなりません。

新しい Physical Signal ブロックでは単位が伝播されるので、2 つの PS Gain ブロックは不要になります。このモデルで問題を解決する正しい方法は、これら 2 つのブロックを削除し、PS Lookup Table (1D) ブロック パラメーターに正しい単位を設定することです。

関連するトピック