ドキュメンテーション センター

  • 評価版
  • 製品アップデート

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

1 つの油圧シリンダーのシミュレーション

この例では、Simulink を使用して油圧シリンダーをモデル化する方法を示します。これらのコンセプトは、油圧動作をモデル化する必要のあるさまざまな用途に適用可能です。同じ基本コンポーネントを使用する 2 つの関連する例、4 つのシリンダーのモデル4 つのシリンダーのモデルおよび荷重制約をもつ「2 つのシリンダーのモデル2 つのシリンダーのモデル」を参照してください。

  • メモ:これは基本的な水力学の例です。SimDriveline™ と SimHydraulics を使用して、水力学モデルや自動車のモデルをより簡単に作成できます。

  • SimHydraulics は、Simulink の拡張機能として、水力および制御システムのモデル化およびシミュレーションのツールを備えています。これを使用すると、接続された油圧コンポーネントと機械コンポーネントを物理ネットワークとして含むマルチドメイン システムを記述できます。

  • SimDriveline は、Simulink の拡張機能として、動力伝達装置 (ドライブトレイン) システムの仕組みのモデル化およびシミュレーションのツールを備えています。これらのツールには、ギアや回転軸、クラッチなどのコンポーネントに加え、標準のトランスミッション テンプレート、さらにはエンジンやタイヤのモデルが含まれています。

モデルの解析と物理現象

図 1 は、基本モデルの概略ブロック線図を示しています。ポンプ流量 Q が供給圧 p1 に向けられ、ここから層流 q1ex が漏れて排出されます。ピストン/シリンダー アセンブリの制御バルブは、可変面積の開口部を通過する乱流としてモデル化されます。その流量 q12 によって中間圧力 p2 に達しますが、圧力はその後、アクチュエータ シリンダーにつながるラインで低下します。シリンダー圧力 p3 により、ピストンはバネ荷重に逆らって動き、位置が x になります。

図 1: 基本の油圧システムの概略ブロック線図

ポンプ出力で、流れは漏れと制御バルブへの流れに分かれます。漏れ q1ex を層流としてモデル化します (方程式ブロック 1 を参照)。

方程式ブロック 1

$$Q=q_{12}+q_{1ex}$$

$$q_{1ex}=C_2 \cdot p_1 $$

$$p_1=\frac{(Q-q_{12})}{C_2}$$

$$ Q = \mbox{ pump flow}$$

$$ q_{12} = \mbox{ control valve flow}$$

$$ q_{1ex} = \mbox{ leakage}$$

$$ C_2 = \mbox{ flow coefficient}$$

$$ p_1 = \mbox{ pump pressure}$$

制御バルブを通る乱流を、オリフィスの方程式と共にモデル化しました。符号関数と絶対値関数は、どちらの方向の流れにも対応します (方程式ブロック 2 を参照)。

方程式ブロック 2

$$q_{12}=C_d \cdot A \cdot sgn(p_1-p_2) \cdot \sqrt{\frac{2}{\rho}|p_1-p_2|}$$

$$ C_d = \mbox{ orifice discharge coefficient} $$

$$ A = \mbox{ orifice area} $$

$$ p_2 = \mbox{ pressure downstream of control valve} $$

$$ \rho = \mbox{ fluid density} $$

シリンダー内の流体は、この流れ q12 = q23 からピストン運動のコンプライアンスを引いたものによって加圧されます。この場合の流体圧縮率についてもモデル化しました (方程式ブロック 3 を参照)

方程式ブロック 3

$$\frac{dp_3}{dt}=\frac{\beta}{V_3} \left(q_{12}-A_c \frac{dx}{dt}\right)$$

$$V_3=V_{30} + A_c \cdot x$$

$$ p_3   = \mbox{ piston pressure} $$

$$ \beta = \mbox{ fluid bulk modulus} $$

$$ V_3   = \mbox{ fluid volume at } p_3 $$

$$ V_{30}= \mbox{ fluid volume in the piston for } x = 0 $$

$$ A_c   = \mbox{ cylinder cross-sectional area} $$

油圧力が大きいため、ピストンとバネの質量は無視しました。この関係を微分し、p2p3 の圧力低下を組み込むことにより、方程式系を完成させました。方程式ブロック 3 では、制御バルブからアクチュエータへのラインにおける層流をモデル化しています。方程式ブロック 4 では、ピストンでの力平衡が与えられています。

方程式ブロック 4

$$x=p_3\frac{A_c}{K}$$

$$\frac{dx}{dt}=\frac{dp_3}{dt} \frac{A_c}{K}$$

$$q_{23}=q_{12}=C_1 \left( p_2-p_3 \right)$$

$$ p_2=p_3 + \frac{q_{12}}{C_1} $$

$$ K   = \mbox{ spring constant} $$

$$ C_1 = \mbox{ laminar flow coefficient} $$

モデル化

図 2 は、モデルの最上位のブロック線図を示しています。ポンプ流量と制御バルブのオリフィス面積はシミュレーション入力です。このモデルは、Pump と Valve/Cylinder/Piston/Spring Assembly の 2 つのサブシステムとして体系化されています。

モデルを開いてシミュレーションを実行

このモデルを開くこのモデルを開くには、MATLAB 端末に「sldemo_hydcyl」と入力します (MATLAB ヘルプを使用している場合は、ハイパーリンクをクリックします)。モデル ツール バーの [再生] ボタンをクリックしてシミュレーションを実行します。

  • メモ: 関連データが MATLAB ワークスペースに sldemo_hydcyl_output という構造体でログが作成されます。ログが作成された信号には青いインジケーターが付きます (モデルを参照モデルを参照)。信号ログの詳細は、Simulink ヘルプを参照してください。

図 2: 1 つのシリンダーのモデルとシミュレーション結果

Pump サブシステム

Pump マスク サブシステムを右クリックし、[マスク ブロックのモデル表示] を選択してそのコンポーネントを表示します。供給圧が、ポンプ流量と負荷 (出力) 流量の関数として計算されます (図 3)。Qpump はポンプ流量データです (モデル ワークスペースに保存されています)。時間点とそれに対応する流量の列ベクトルをもつ行列 [T, Q] では、流量データが指定されます。圧力 p1 が方程式ブロック 1 に示したとおり計算されます。Qout = q12p1 (制御バルブを介して) の 1 次関数であるため、代数ループが形成されます。初期値を p10 と推定すると、より効率的な解が得られます。

図 3:Pump サブシステム

ユーザーがパラメーターに簡単にアクセスできるように、Simulink で Pump サブシステムにマスクを付けました (図 4 を参照)。指定するパラメーターは、TQp10、および C2 です。次に、マスク ブロックに図 2 のアイコンを割り当て、Simulink ライブラリに保存しました。

図 4: ポンプのパラメーターの入力

Valve/Cylinder/Piston/Spring Assembly サブシステム

モデルで Valve/Cylinder/Piston/Spring Assembly サブシステムを右クリックし、[マスク ブロックのモデル表示] を選択して Actuator サブシステムを表示します (図 5 を参照)。連立微分代数方程式により、圧力 p3 でのシリンダーの加圧がモデル化されます。これは、方程式ブロック 3 に導関数として出てきたもので、ステート (積分器) として使用されます。ピストンの質量を無視する場合、バネの力とピストンの位置は p3 の直接の倍数であり、速度は p3 の時間微係数の直接の倍数です。後者の関係により、[Beta] Gain ブロックの周りに代数ループが形成されます。中間圧力 p2 は、p3 と、シリンダーへとつながるバルブからの流量による圧力低下分の合計です (方程式ブロック 4)。また、この関係により、制御バルブと 1/C1 ゲインを通じて代数的な制約が課せられます。

Control Valve サブシステムでは、オリフィスが計算されます (方程式ブロック 2)。上流圧力、下流圧力、および可変のオリフィス面積が入力として使用されます。Control Valve Flow サブシステムにより、符号付き平方根が計算されます。

$$y=sgn(u)\sqrt{|u|}$$

3 つの非線形関数が使用されますが、そのうち 2 つは不連続です。しかし、組み合わせにより、yu の連続関数となります。

図 5: Valve/Cylinder/Piston/Spring サブシステム

結果

シミュレーション パラメーター

以下のデータを使用してこのモデルをシミュレートしました。この情報は MAT ファイル sldemo_hydcyl_data.mat から読み込まれています。このファイルは、他の 2 種類の油圧シリンダー モデルにも使用されます。ユーザーは、図 4 および 6 に示した Pump Mask と Cylinder Mask を介してデータを入力できます。

$$ C_d   = 0.61 $$

$$ \rho  = 800 kg/m^3 $$

$$ C_1   = 2e-8 m^3/sec/Pa $$

$$ C_2   = 3e-9 m^3/sec/Pa $$

$$ \beta = 7e8 Pa $$

$$ A_c   = 1e-3 m^2 $$

$$ K     = 5e4 N/m $$

$$ V_{30}  = 2.5e-5 m^3 $$

T = [0 0.04 0.04 0.05 0.05 0.1 ] sec

Q = [0.005 0.005 0 0 0.005 0.005] m^3/sec

図 6: バルブ/シリンダー/ピストン/バネ アセンブリのパラメーターの入力

シミュレーション結果のプロット

ポンプ流量は最初に 0.005 m^3/sec=300 l/ 分になり、t=0.04 秒で突然ゼロになった後、t=0.05 秒で最初の流量に戻ります。

制御バルブは、ゼロのオリフィス面積から始まり、0.1 秒のシミュレーション時間中に 1e-4 sq.m. へと一定の割合で増加します。バルブが閉じられると、ポンプ流量はすべて漏れるため、初期ポンプ圧は p10 = Q/C2 = 1667 kPa に上昇します。

バルブが開くと、圧力 p2 および p3 は上昇しますが、p1 は低下します。これは、図 7 に示した負荷増加への反応です。ポンプ流量が途切れると、バネとピストンがアキュムレーターのような働きをし、p3 は低下し続けます。次に、流れが逆向きになるため、p2 は、p3 に比較値的近かったものの、突然低下します。ポンプ本体では、逆流量がすべて漏れ、p1 が急激に低下します。流れが元に戻ると、これとは逆のことが起こります。

ピストン位置は p3 に正比例し、ここで油圧力とバネの力は釣り合っています。0.04 秒0.05 秒での速度の不連続性は、質量が無視できることを示しています。すべてのポンプ流量が再び漏れるようになると、制御バルブ全体で圧力低下がゼロになるため (つまり p3 = p2 = p1 = p10)、モデルは安定状態に達します。

図 7: シミュレーション結果システム圧力

図 8: シミュレーション結果: 油圧シリンダーのピストン位置

モデルを閉じる

モデルを閉じ、生成されたデータを消去します。

この情報は役に立ちましたか?