メインコンテンツ

hydraulicToIsothermalLiquid

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

説明

hydraulicToIsothermalLiquid は、油圧ブロックを等温流体ブロックに変換し、元のファイルの名前に _converted を付加し、変換した各ファイルを保存します。変換ツールはパラメーター値とブロック間の接続を保持しようとしますが、Isothermal Liquid ライブラリ ブロックと Hydraulic ライブラリ ブロックの間に 1 対 1 の対応が常にあるわけではありません。変換ツールでは、変換中に発生した問題を HTML レポートにリストします。

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

hydraulicToIsothermalLiquid(oldfile) は、ブロック線図システム oldfile に含まれる Foundation、Hydraulic ライブラリのブロックを、Isothermal Liquid ライブラリの同等のブロックに置き換え、変換された各ファイルを元のファイルと同じフォルダーに保存します。また、Simscape™ Fluids™ ライセンスがある場合、このツールは Fluids、Hydraulics (Isothermal) ライブラリのブロックについても Fluids、Isothermal Liquid ライブラリおよび Foundation、Isothermal Liquid ライブラリの同等のブロックに置き換えます。

hydraulicToIsothermalLiquid(oldfile,newpath) では、指定されたブロック線図システム内のブロックを置き換え、変換されたブロック線図システムと変換レポートを newpath で指定された場所に保存します。

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

hydraulicToIsothermalLiquid(toppath) は、フォルダー toppath とそのサブフォルダーにあるモデル、サブシステム、およびライブラリを変換します。この構文は、カスタム ライブラリの変換や、他のライブラリ、モデル、サブシステムへの参照またはリンクを含むその他のモデルの変換に使用します。toppath とそのサブフォルダーは、どちらも MATLAB® パス上になければなりません。

hydraulicToIsothermalLiquid(___,subsystemflag) は、Hydraulic ライブラリのブロックを Isothermal Liquid ライブラリの同等のブロックに置き換え、subsystemflag パラメーターの値に従って newfile モデル内にブロックを整理します。

hydraulicToIsothermalLiquid(___,oldcustomblocks,newcustomblocks) は、oldcustomblocks にリストされたカスタム油圧ブロックを対応する等温流体ブロック newcustomblocks に置き換えます。この構文は、マスクされたライブラリ ブロックや Simscape 言語で記述されたカスタム ブロックなどのカスタマイズされた油圧ブロックを含むモデルの変換に使用します。

カスタマイズされたブロックと同等の等温流体バージョンを作成するには、次を行います。

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

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

newfiles = hydraulicToIsothermalLiquid(___) は、変換されたファイルの名前のリストを newfiles として返します。変換ツールにより、元のファイルの名前に _converted を付加して新しい各ファイルの名前が形成されます。

すべて折りたたむ

この例では、Hydraulic ブロックを含むモデルに対する変換ツールの使用方法を示します。変換されたモデルと HTML レポートがツールで生成されます。

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

openExample('simscape/HydraulicActuatorWithAnalogControlHExample')

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

Hydraulic ライブラリのブロックを Isothermal Liquid ライブラリの同等のブロックに置き換えます。

hydraulicToIsothermalLiquid(bdroot)
ans =

  1×1 cell array

    {'HydraulicActuatorWithAnalogControlH_converted'}

変換ツールは HydraulicActuatorWithAnalogControlH_converted という名前の新しいファイルを作成し、そのファイルと変換レポートを現在のフォルダーに保存します。

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

この例では、変換モデルの使用後にモデルをクリーンアップします。まず、等温流体ブロックを使用するためのモデルの変換の例を完了します。これらのイメージは、変換されたモデルと変換レポートを示します。

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

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

Translational Hydro-Mechanical Converter ブロックには [比熱比] パラメーターがありましたが、等温流体ドメインでは、流体特性はすべて Isothermal Liquid Properties (IL) ブロックで定義されます。元のブロックの [比熱比] パラメーターの元の値が変換レポートでリストされるため、流体特性を 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 つの変換メッセージに対処した後、[ブロック] 列で 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) ブロックにそれぞれ置き換えられています。Orifice PA ブロックをダブルクリックして、そのパラメーターを確認します。

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

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

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

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

変換メッセージに対処した後、元のモデルと変換されたモデルのシミュレーション結果を比較して、それらが同じであることを確認できます。必要に応じて、さらに外観のクリーンアップも実行できます。たとえば、接続ラインを手動で再配線できます。

このモデルの変換とクリーンアップが終了した例を参照するには、HydraulicActuatorWithAnalogControlExample モデルを開きます。

openExample('simscape/HydraulicActuatorWithAnalogControlExample')

このモデルを元のモデル HydraulicActuatorWithAnalogControlH および変換後のモデル HydraulicActuatorWithAnalogControlH_converted と比較します。

この例では、サブシステムを使用して、モデルを変換するときにライン ルーティングを保持する方法を説明します。

キャビテーション サイクル モデル例を開きます。

openExample('simscape/CavitationCycleExample')

サブシステムを使用してモデルを変換し、ライン ルーティングを保持します。

hydraulicToIsothermalLiquid('CavitationCycle.slx','addsubsystems')

Custom Cylinder サブシステムを開きます。

関数では、ライン ルーティングを保持するために両方のピストンをサブシステムに配置します。

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

modelWithLink という名前のモデルがあるとします。このモデルには油圧ブロックと参照モデル referenceModel が含まれ、その参照モデルにも油圧ブロックが含まれています。referenceModel は、MATLAB パス上の個別のフォルダー Reference Systems にあります。

modelWithLink モデルと参照モデルを、cell 配列のファイルを指定することによって変換します。

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

  2×1 cell array

    {'modelWithLink_converted' }
    {'referenceModel_converted'}

変換ツールにより、新しい 2 つのモデル modelWithLink_converted および referenceModel_converted が元のモデルと同じフォルダーに作成されます。

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

ツールによって、oldfiles 入力引数の最初のファイルの場所に、変換レポート HtoIL_report が保存されます。

レポートを確認し、問題を手動で修正し、シミュレーション結果を比較したら、hydraulicToIsothermalLiquidPostProcess 関数を使用して元のファイル名に戻すことができます。

finalFiles = hydraulicToIsothermalLiquidPostProcess(convertedFiles)

関数は元のモデル ファイルを _converted モデルで上書きします。

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

ここで、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 ファイルが生成されていません。

ツールによって、topFolder に変換レポートが保存されます。

レポートを確認し、問題を手動で修正し、シミュレーション結果を比較したら、hydraulicToIsothermalLiquidPostProcess 関数を使用して元のファイル名に戻すことができます。

finalFiles = hydraulicToIsothermalLiquidPostProcess('topFolder')

この関数は、ファイル名とファイル間のリンクから接尾辞 _converted を削除して、元のファイルを上書きします。

入力引数

すべて折りたたむ

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

例: 'HydraulicActuator'

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

例: 'subfolder\HydraulicActuator'

変換されたブロック線図システムとレポートの場所。絶対パス名または相対パス名を含む文字ベクトルまたは string スカラーとして指定します。

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

例: 'C:\Work'

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

例: {'HydraulicActuatorLibrary' 'PumpLibrary'}

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

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

例: 'C:\Work\MyLibraries'

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

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

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

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

変換されたブロックをサブシステムに配置するオプション。'omitsubsystems' または 'addsubsystems' として指定します。subsystemflag'omitsubsystems' の場合、ツールが単一の Hydraulic ブロックを複数の Simscape ブロックで置き換える場合に関数はサブシステムのみを使用します。subsystemflag'addsubsystems' として指定した場合、関数は Hydraulic モデルのライン ルーティングを保持するために、ライン ルーティングに影響するブロックをサブシステムに配置します。

subsystemflag の値を指定する場合、これは最後の入力引数でなければなりません。

出力引数

すべて折りたたむ

変換されたモデル、サブシステム、またはライブラリの名前。パスまたは拡張子を除くファイル名を含む文字ベクトルの 1 次元の列の cell 配列として返されます。

変換ツールにより、元のファイルの名前に _converted を付加して新しい各ファイルの名前が形成されます。

バージョン履歴

R2020a で導入

すべて展開する