Main Content

HIL テスト用に構成された油圧アクチュエータ

この例では、HIL テスト用に構成された物理システム モデルとコントローラーを説明します。これは、デジタル位置コントローラーを備えた油圧アクチュエータの例 (ssc_isothermal_liquid_actuator_digital_control) から導出されます。このモデルは、以下の手順を実行して HIL テスト用に構成されています。

1. コントローラーの離散時間を作成します。Transport Delay ブロックを Unit Delay ブロックで置き換えます。これは最悪の場合の遅延を表します。この場合、コントローラー出力 u を r と y の電流入力値に基づいて更新するには、計算フレーム時間全体がかかります。すべてのアナログ測定には、Zero-Order Hold ブロック ZOHr および ZOHy が追加され、連続時間測定のデジタル サンプリングを表します。コントローラー自体も離散時間に設定し、連続時間 1 次フィルターを、双一次変換を使用して離散時間フィルターに変換しなければなりません。この例では、離散サンプル時間はパラメーターとなっています。これには、必要に応じて簡単に調整でき、コントローラーの計算でフレーム時間のオーバーランの発生を防止できるという利点があります。

2. 各 HIL コンポーネントを、それぞれのサブシステムに分割します。油圧プラントは既にサブシステムとしてまとまっているため、あとはコントローラーをサブシステムとしてグループ化するだけです。この分割は、HIL でモデルの一部のみを実行する場合や、コントローラーとプラントを別の HIL システムで実行する場合に役立ちます。

3. 固定ステップ ローカル ソルバーのオプションを設定し、固定ステップをコントローラーのサンプル時間 ts に設定します。ts は、必要なシミュレーションの忠実度を維持できる範囲で、できる限り大きい値にします。場合によっては、プラントにはコントローラーと異なる (一般的にコントローラーより小さい) サンプル時間が必要なことがあります。この場合、ts = 0.001 が、プラントとコントローラーの両方にとって十分に小さい値です。収束に必要な非線形反復の回数を判断します。モデルによっては、既定の 3 より大きい値が必要です。

4. Simscape™ に関連するパフォーマンス アドバイザーのチェックを実行します。

5. パフォーマンス アドバイザーでは見つからなかった単純化がないか、モデルを確認します。1 つの方法は、モデルを線形化して結果の A 行列で高速の固有値を探し、それらをモデルのコンポーネントに関連付け直すことです。HydraulicActuatorWithDigitalPositionControllerExample に適用すると、Hydraulic Cylinder の動的圧縮率を外すことで振動する動的な極のペアを回避できることがわかります。この変更がモデルに追加されました。

6. コード生成ターゲットを構成します。Simulink® Coder の展開に関するドキュメンテーションを参照してください。

モデル

Hydraulic Actuator サブシステム

Hydraulic Cylinder サブシステム

Scope からのシミュレーション結果

Simscape ログからのシミュレーション結果

プロット "Cylinder Pressures" は、シリンダーの圧力がシミュレーション中にどのように変化するかを示します。圧力は、バルブの開口に対応します。バルブの開口は、コントローラーにより、アクチュエータが基準信号を追跡するように設定されます。

プロット "Cylinder Pressure, Solver Types" は、ソルバーの種類がシミュレーション結果にどのように影響するかを示します。可変ステップ シミュレーションでは、より小さいシミュレーション ステップを使用して、システムのダイナミクスを正確に取得します。固定ステップ シミュレーションでは、シミュレーション結果は可変ステップ シミュレーションの結果と近いものの、正確には一致しません。これは、ソルバーがステップ サイズを調整できないためです。固定ステップ ソルバーの設定を調整して、固定ステップ シミュレーションの結果が、可変ステップ シミュレーションの結果と比較して許容可能な範囲に収まるようにする必要があります。