Main Content

hydraulicToIsothermalLiquid

等温流体ブロックを使用するための油圧ブロック線図システムのアップグレード

R2020a 以降

説明

newfile = hydraulicToIsothermalLiquid(oldfile,newpath) は、指定されたブロック線図システム oldfile に含まれる Foundation、Hydraulic ライブラリのブロックを Isothermal Liquid ライブラリの同等のブロックに置き換えます。パラメーター値とブロック間の接続は可能な限り保持されます。また、Simscape™ Fluids™ ライセンスがある場合、このツールは Fluids、Hydraulics (Isothermal) ライブラリのブロックについても Fluids、Isothermal Liquid ライブラリおよび Foundation、Isothermal Liquid ライブラリの同等のブロックに置き換えます。oldfile は、モデル、サブシステム、またはライブラリのいずれかになります。

Isothermal Liquid ブロック ライブラリは Thermal Liquid などの他の流体ドメインと同様の構成になっており、Isothermal Liquid ライブラリ ブロックと Hydraulic ライブラリ ブロックの間に 1 対 1 の対応がない場合がよくあります。変換ツールでは、変換中に発生したすべての問題を HTML レポートにリストし、レポートと変換されたブロック線図システムの両方を newpath で指定された場所に保存して、変換後のシステムの名前 newfile を返します。

newfile 引数と newpath 引数はどちらもオプションです。newpath 引数を省略した場合、ツールでは変換されたシステムとレポートが現在のフォルダーに保存されるため、現在の作業フォルダーに対する書き込み権限が必要です。

新しいファイルは古いファイルの最後に保存されたバージョンに基づきます。つまり、元のブロック線図システムを変更した後、それらを保存せずに変換ツールを使用した場合、それらの変更は新しいシステムに反映されません。また、変換ツールを使用する前に、元のブロック線図システムをコンパイルして問題がないことを確認するようお勧めします。

アップグレードの考慮事項とプロセスの詳細については、Isothermal Liquid ブロックを使用するための油圧モデルのアップグレードを参照してください。

newfiles = hydraulicToIsothermalLiquid(oldfiles) は、ファイルのリスト oldfiles を変換します。それぞれのファイルは、モデル、サブシステム、またはライブラリのいずれかになります。ファイルのリストを変換する場合、変換ツールは変換されたファイル間のリンクをリストで保持します。この構文は、他のライブラリ、モデル、サブシステムへの参照またはリンクを含むモデルの変換に使用します。

oldfiles にリストされたファイルに Foundation、Hydraulic ライブラリまたは Fluids、Hydraulics (Isothermal) ライブラリのブロックが含まれている場合、ツールはそれらを Isothermal Liquid ライブラリの同等のブロックに置き換えます。元のファイルの名前に _converted が付加され、変換された各ファイルが元のファイルと同じフォルダーに保存されます。ファイルが油圧ブロックを含まず、油圧ブロックを含む oldfiles にリストされているファイルも参照していない場合、そのファイルはツールで変更されません。ツールは、変換されたファイルの名前のリスト newfiles を返し、変換レポートを oldfiles にリストされた最初のファイルの場所に保存します。変換レポートの名前は HtoIL_report で、このレポートに oldfiles のリストに含まれるすべてのファイルについての変換中に発生したすべての問題がリストされます。

newfiles = hydraulicToIsothermalLiquid(toppath) は、フォルダー toppath とそのサブフォルダーにあるすべてのモデル、サブシステム、およびライブラリを変換します。変換されたファイル間のリンクがリストで保持されます。この構文は、カスタム ライブラリの変換や他のライブラリ、モデル、サブシステムへの参照またはリンクを含むその他のモデルの変換に使用します。

toppath とそのサブフォルダーは、どちらも MATLAB® パス上になければなりません。モデル、サブシステム、またはライブラリに Foundation、Hydraulic ライブラリまたは Fluids、Hydraulics (Isothermal) ライブラリのブロックが含まれている場合、ツールはそれらを Isothermal Liquid ライブラリの同等のブロックに置き換えます。元のファイルの名前に _converted が付加され、変換された各ファイルが元のファイルと同じフォルダーに保存されます。ファイルが油圧ブロックを含まず、油圧ブロックを含む toppath フォルダー階層内のファイルも参照していない場合、そのファイルはツールで変更されません。ツールは、変換されたファイルの名前のリスト newfiles を返し、HtoIL_report という名前の変換レポートを toppath フォルダーに保存します。

newfiles = hydraulicToIsothermalLiquid(___,oldcustomblocks,newcustomblocks) は、oldcustomblocks にリストされたカスタム油圧ブロックを対応する等温流体ブロック newcustomblocks に置き換えます。前述の構文の任意の入力引数の組み合わせで、他のすべての入力引数の後にカスタム ブロックの名前の cell 配列を 2 つ指定します。この構文は、マスクされたライブラリ ブロックや Simscape 言語で記述されたカスタム ブロックなどのカスタマイズされた油圧ブロックを含むモデルの変換に使用します。

この構文を使用する前に、カスタマイズされたブロックと同等の等温流体バージョンを準備しておきます。

  • Foundation、Hydraulic ライブラリまたは Fluids、Hydraulics (Isothermal) ライブラリのブロックを含むカスタム ライブラリのブロックとサブシステムについては、それらのカスタム ライブラリに対して変換ツールを実行します。

  • Simscape 言語で記述されたカスタム油圧ブロックについては、それらのブロックと同等の等温流体ドメインを使用するバージョンを手動で作成します。

oldcustomblocks にリストされたブロックを変換中に検出すると、ツールはそのブロックを newcustomblocks にリストされた同等のブロックに置き換えます。2 つの cell 配列 oldcustomblocksnewcustomblocks の要素数は同じでなければなりません。各要素はブロック名に対応します。各配列にリストされたそれぞれのブロックで、端子数、端子の順序、およびプログラム上のパラメーター名が一致している必要があります。

すべて折りたたむ

この例では、Hydraulic ブロックを含むモデルに対する変換ツールの使用方法を示します。変換されたモデルと HTML レポートがツールで生成されます。次の例の変換後のモデルのクリーンアップでは、この HTML レポートを使用して、変換ツールで見つかった問題を確認して修正する方法を示しています。

アナログ位置コントローラーを備えた油圧アクチュエータのモデル例を開きます。

openExample('simscape/HydraulicActuatorWithAnalogControlHExample')

このモデル例には、Hydraulic ライブラリのブロックが含まれています。

モデルを変換し、Hydraulic ライブラリのブロックを Isothermal Liquid ライブラリの同等のブロックに置き換えます。

hydraulicToIsothermalLiquid(bdroot)
ans =

  1×1 cell array

    {'HydraulicActuatorWithAnalogControlH_converted'}

変換ツールにより、元のモデルの名前に _converted を付加して新しいモデルの名前が形成されます。newpath 引数を指定していないため、変換ツールでは HydraulicActuatorWithAnalogControlH_converted モデルを現在のフォルダーに保存します。

さらに、ツールによって HTML レポートが生成され、現在のフォルダーに保存されます。このレポートに変換プロセス中に発生した問題がリストされます。

HTML レポートを確認し、残っている問題を手動で修正します。この例では、変換されたモデルに切断された接続や削除されたブロックはありませんが、注意が必要なパラメーターの警告が変換ツールでいくつか生成されています。詳細については、変換後のモデルのクリーンアップを参照してください。

前の例の等温流体ブロックを使用するためのモデルの変換では、HydraulicActuatorWithAnalogControlH モデルに対して変換ツールを使用しました。変換されたモデル HydraulicActuatorWithAnalogControlH_converted と HTML レポートがツールで生成されています。この例では、その HTML レポートを使用して、変換ツールで見つかった問題を確認して修正します。

変換メッセージとそれらに対処するための推奨されるアクションの一覧については、Conversion Messages After Converting Hydraulic to Isothermal Liquid Modelsを参照してください。それぞれのメッセージについて、HTML レポートの [ブロック] 列のリンクをクリックすると、必要に応じて適切なサブシステムが開き、メッセージを生成したブロックが強調表示されます。

HTML レポートの最初の 2 つのメッセージは、Hydraulic Actuator サブシステムの 2 つのチャンバーに関するものです。元のモデルでは、それらの各チャンバーが Translational Hydro-Mechanical Converter ブロックで実装されていました。それらの各ブロックが変換ツールで Translational Mechanical Converter (IL) ブロックに置き換えられています。

元のモデルの Translational Hydro-Mechanical Converter ブロックには [比熱比] パラメーターがありましたが、等温流体ドメインでは、流体特性はすべて Isothermal Liquid Properties (IL) ブロックで定義されます。

便宜を図るため、元のブロックの [比熱比] パラメーターの値が変換ツールで出力されます。Original block had Specific heat ratio of 1.4. Set Air polytropic index to this value in an Isothermal Liquid Properties (IL) block.

変換されたモデルの Isothermal Liquid Properties (IL) ブロックを開き、その [空気のポリトロープ指数] パラメーターを 1.4 に設定します。

このようにして最初の 2 つの変換メッセージに対処した後、HTML レポートの [ブロック] 列で 3 つ目のリンクをクリックします。

ツールで Spool Valve ブロックのマスクの下が調べられ、Orifice PA サブシステムが強調表示されます。

元のモデル HydraulicActuatorWithAnalogControlH で、Spool Valve ブロックのマスクの下を調べます。

Orifice PA はバルブを構成する 4 つの Variable Area Hydraulic Orifice ブロックのうちの 1 つであり、それらの各ブロックについて同様の変換メッセージが表示されています。手動のクリーンアップ プロセスもそれらの各ブロックで同様です。

元のモデルの Orifice PA ブロックをダブルクリックして、そのパラメーターを確認します。

Variable Area Hydraulic Orifice ブロックは、変換ツールで Local Restriction (IL) ブロックにそれぞれ置き換えられています。(詳細についてはBlock Substitutions for Foundation Library Hydraulic Blocksを参照。)それらのブロックでは端子の位置が異なるため、変換ツールでは、ブロック線図のレイアウトを維持するために、それぞれの Local Restriction (IL) ブロックをサブシステムに配置しています。

変換されたモデルの Orifice PA サブシステムをダブルクリックしてから、その中の Orifice PA ブロックをダブルクリックし、そのパラメーターを確認します。

Orifice PA ブロックについての最初の変換メッセージ「Critical Reynolds number set to 150」は、元の Variable Area Hydraulic Orifice ブロックで [層流の遷移の指定] パラメーターが [圧力比] に設定されていたことによるものです。層流と乱流状態間の遷移は、代替の Local Restriction (IL) ブロックでは臨界レイノルズ数でのみ指定でき、変換ツールで [臨界レイノルズ数] パラメーターがその既定値である 150 に設定されています。元のモデルの Variable Area Hydraulic Orifice ブロックでは [層流の圧力比] パラメーターで既定値の 0.999 が使用されていたため、アクションは必要ありません。

Orifice PA ブロックについての 2 つ目の変換メッセージ「Maximum restriction area set to 1e10 m^2」は、元の Variable Area Hydraulic Orifice ブロックで最大開放面積が無限大と仮定されていたことによるものです。代替の Local Restriction (IL) ブロックでは、[制限のタイプ][可変] に設定され、[最大制限面積] パラメーターの値を inf 未満にする必要があります。

変換ツールで、代替の Local Restriction (IL) ブロックの [最大制限面積] パラメーターを、任意の大きい値 1e10 m^2 に設定します。アクションは必要ありませんが、この値はモデルのデータ シートに合わせて必要に応じて調整できます。

残りの変換メッセージは他の 3 つのオリフィスに関するものであり、それらでも予期される動作の変化はないと記載されています。それらの 3 つのブロックを元のモデルで同じように検査して、アクションが必要ないことを確認できます。

この時点で、すべての変換メッセージに対処したら、必要なモデルのクリーンアップは完了です。元のモデルと変換されたモデルのシミュレーション結果を比較して、それらが同じであることを確認できます。必要に応じて、さらに外観のクリーンアップも実行できます。たとえば、端子の配置が変わった変換されたブロックをサブシステムの外に移動し、接続ラインを手動で再配線できます。

このモデルの変換とクリーンアップが終了した例を参照するには、等温流体ドメインのアナログ位置コントローラーを備えた油圧アクチュエータのモデル例を開きます。

openExample('simscape/HydraulicActuatorWithAnalogControlExample')

このモデルを元のモデル HydraulicActuatorWithAnalogControlH およびツールで生成された変換後のモデル HydraulicActuatorWithAnalogControlH_converted と比較します。

この例では、モデルをその参照モデル、サブシステム、およびリンク ライブラリと一緒に変換し、変換されたファイル間のリンクを保持する方法を示します。

ここでは、この例の目的のために用意された modelWithLink という名前のモデルについて考えます。このモデルには、いくつかの油圧ブロックと参照モデル referenceModel が含まれ、その参照モデルにも油圧ブロックが含まれています。referenceModel は、MATLAB パス上の個別のフォルダー Reference Systems にあります。

modelWithLink モデルと参照モデルの名前をファイルのリストで指定して、それらを一緒に変換します。

convertedFiles = hydraulicToIsothermalLiquid({'modelWithLink' 'referenceModel'})
convertedFiles =

  2×1 cell array

    {'modelWithLink_converted' }
    {'referenceModel_converted'}

変換ツールにより、元のモデルの名前に _converted を付加して新しいモデルの名前が形成され、変換された各モデルが元のモデルと同じフォルダーに保存されます。

変換されたモデル modelWithLink_converted に等温流体ブロックと変換された参照モデル referenceModel_converted へのリンクが含まれ、その参照モデルにも等温流体ブロックが含まれていることがわかります。

さらに、ツールによって HtoIL_report という名前の共通の変換レポートが生成され、oldfiles 入力引数でリストされた最初のファイルの場所に保存されます。このケースでは、最初のファイルは modelWithLink であるため、このファイルと同じフォルダーにレポートが保存されます。このレポートに oldfiles のリストに含まれるすべてのファイルについての変換の問題がリストされます。

HTML レポートを確認し、残っている問題を手動で修正します。

変換されたモデルと元のモデルでシミュレーション結果を比較して、結果が想定どおりであることを確認します。HTML レポートで、Removed Blocks セクションおよび Parameter Warnings セクションのメッセージを調べます。これらのセクションのメッセージでは動作の変化が予期されるかどうかが示され、適切なアクションが提案されます。

変換されたシステムが想定どおりに動作することを確認したら、関数 hydraulicToIsothermalLiquidPostProcess を使用して元のファイル名に戻すことができます。

finalFiles = hydraulicToIsothermalLiquidPostProcess(convertedFiles)

この関数は、ファイル名とファイル間のリンクから接尾辞 _converted を削除して、元のファイルを上書きします。詳細については、hydraulicToIsothermalLiquidPostProcess を参照してください。

この例では、変換ツールで最上位フォルダーのパスを指定して、その最上位フォルダーとそのサブフォルダーにあるすべてのファイルを処理する方法を示します。ツールにより、油圧ブロックを含むすべてのファイルが変換されます。それらの間のリンクは保持され、変換されたファイルのリストが返されます。ファイルに油圧ブロックが含まれていない場合、そのファイルはツールで変更されません。

ここでは、この例をわかりやすくするために用意された topFolder という名前のフォルダーについて考えます。このフォルダーには、カスタム Simulink® ライブラリを含むサブフォルダー、参照モデルと参照サブシステムを含むサブフォルダー、および油圧ブロックを含むモデルと含まないモデルが含まれています。

ファイルを変換する前に、topFolder とそのすべてのサブフォルダーが MATLAB パス上にあることを確認します。

addpath(genpath('topFolder'))

topFolder とそのサブフォルダーにあるすべてのファイルを変換します。

convertedFiles = hydraulicToIsothermalLiquid('topFolder')
convertedFiles =

  5×1 cell array

    {'model_converted'             }
    {'custom_Library1_converted'   }
    {'custom_Library2_converted'   }
    {'referenceModel_converted'    }
    {'referenceSubsystem_converted'}

変換ツールにより、元のモデルの名前に _converted を付加して新しいモデルの名前が形成され、変換された各モデルが元のモデルと同じフォルダーに保存されます。

modelWithoutHydraulicBlocks には油圧ブロックが含まれていないため、このモデルについてはツールで _converted ファイルが生成されず、cell 配列 convertedFiles でその名前が返されていないことに注意してください。

さらに、ツールによって HtoIL_report.html という名前の HTML レポートが生成され、topFolder に保存されます。このレポートに、変換された各ファイルについて、変換プロセス中に発生した問題がリストされます。

HTML レポートを確認し、残っている問題を手動で修正します。

変換されたモデルと元のモデルでシミュレーション結果を比較して、結果が想定どおりであることを確認します。HTML レポートで、Removed Blocks セクションおよび Parameter Warnings セクションのメッセージを調べます。これらのセクションのメッセージでは動作の変化が予期されるかどうかが示され、適切なアクションが提案されます。

変換ツールでフォルダーとそのサブフォルダーにあるすべてのファイルを変換する場合、それらのファイルに含まれるすべてのライブラリ リンク、モデル参照、およびサブシステム参照がそれらのファイルの _converted バージョンをポイントするように更新されます。変換されたシステムが想定どおりに動作することを確認したら、関数 hydraulicToIsothermalLiquidPostProcess を使用して元のファイル名に戻すことができます。

finalFiles = hydraulicToIsothermalLiquidPostProcess('topFolder')

この関数は、ファイル名とファイル間のリンクから接尾辞 _converted を削除して、元のファイルを上書きします。詳細については、hydraulicToIsothermalLiquidPostProcess を参照してください。

入力引数

すべて折りたたむ

変換するブロック線図システムの名前。文字ベクトル、string スカラー、またはハンドルとして指定します。oldfile は、モデル、サブシステム、またはライブラリのいずれかになります。MATLAB パス上にあるか、変換ツールを使用する前に読み込んでおく必要があります。ファイル名には絶対パス名または相対パス名を含めることができます。詳細については、ファイル名の指定を参照してください。

例: 'HydraulicActuator'

例: 'C:\Work\HydraulicActuator.slx'

例: 'subfolder\HydraulicActuator'

変換されたブロック線図システムとレポートをツールで保存する場所。絶対パス名または相対パス名として指定します。

この引数はオプションです。newpath 引数を省略した場合、ツールでは変換されたシステムとレポートが現在の作業フォルダーに保存されます。

例: 'C:\Work'

変換するブロック線図システムのリスト。各ファイル名を文字ベクトルまたは string スカラーとして指定した、ファイル名の 1 次元 cell 配列として指定します。1 次元 cell 配列は水平でも垂直でもかまいません。ファイル名には絶対パス名または相対パス名を含めることができます。これらの各ファイルはモデル、サブシステム、またはライブラリのいずれかで、MATLAB パス上にあるか、変換ツールを使用する前に読み込んでおく必要があります。ファイルのリストを変換する場合、変換ツールは変換されたファイル間のリンクをリストで保持します。ツールでは、変換された各ファイルを元のファイルと同じフォルダーに保存し、共通の変換レポートを生成して HtoIL_report という名前を付け、oldfiles にリストされた最初のファイルの場所に保存します。

例: {'HydraulicActuatorLibrary' 'PumpLibrary'}

例: {'PumpLibrary';'C:\Work\MyPump.slx'}

変換するブロック線図システムを含む上位フォルダーのパス名。絶対パス名または相対パス名として指定します。上位フォルダーは MATLAB パス上になければなりません。上位フォルダーに、ブロック線図システムを含むサブフォルダーを含めることもできます。これらのシステムを変換するには、サブフォルダーも MATLAB パス上になければなりません。ツールでは、変換されたファイル間のリンクを保持して、変換された各ファイルを元のファイルと同じフォルダーに保存し、変換レポートに HtoIL_report という名前を付けて toppath フォルダーに保存します。

例: 'C:\Work\MyLibraries'

置き換える対象のカスタマイズされた油圧ブロックのリスト。各ファイル名を文字ベクトルまたは string スカラーとして指定した、ファイル名の 1 次元 cell 配列として指定します。

oldcustomfiles の代わりとして使用するカスタマイズされた等温流体ブロックのリスト。各ファイル名を文字ベクトルまたは string スカラーとして指定した、ファイル名の 1 次元 cell 配列として指定します。

出力引数

すべて折りたたむ

変換されたモデル、サブシステム、またはライブラリの名前。文字ベクトルの単一要素の cell 配列として返されます。文字ベクトルは、パスまたは拡張子を除く新しいファイルの名前です。変換ツールにより、元のファイル oldfile の名前に _converted を付加して新しいファイルの名前が形成されます。

変換されたモデル、サブシステム、またはライブラリの名前。パスまたは拡張子を除くファイル名の 1 次元の列の cell 配列として返されます。変換ツールにより、元のファイルの名前に _converted を付加して新しい各ファイルの名前が形成されます。

バージョン履歴

R2020a で導入

すべて展開する