PyFMI を使用して、フィードバック ループで接続された 2 つのコシミュレーション タイプの FMU をコシミュレーションする方法は? コシミュレーションのセットアップは PyFMI でどのように機能しますか? 接続の定義方法
- 入力は「y_ref」に与えられます
- 「u」への入力は、実際には「SUM ブロック」の後に来る信号です。
結合された FMU シミュレーションのセットアップで、すべての結果がゼロになっています。これが私が使用しているsciptの一部です
import pyfmi
from pyfmi import load_fmu
from pyfmi.master import Master
import pylab as P
import numpy as np
sub_system1 = load_fmu("Simple_System_PI.fmu")
sub_system2 = load_fmu("Simple_System_Plant.fmu")
models = [sub_system1, sub_system2]
connections = [( sub_system1 ,"y",sub_system2 ,"u"),
( sub_system2 ,"y",sub_system1 ,"u")]
#Generate input
t = np.linspace (0, 10, 100)
u = np.cos(t)
u_traj = np.transpose(np.vstack((t,u)))
input_object = ((sub_system1, 'u'), u_traj)
#print(input_object)
sub_system1.set('u',u[0])
master_simulator = Master (models, connections)
res = master_simulator.simulate(start_time = 0.0, final_time = 10.0, input = input_object)