// CP: 65001 // SimulationX Version: 3.8.2.45319 x64 within AIDAModelica; model Cosim_Sim_m parameter Modelica.SIunits.Time Cosim_step(start=0.02); parameter Boolean Cosim_activ=false; parameter Integer N=1; Modelica.Blocks.Discrete.ZeroOrderHold zeroOrderHold1[N](samplePeriod=Cosim_step) annotation(Placement(transformation(extent={{-10,-10},{10,10}}))); Modelica.Blocks.Logical.Switch logicalSwitch1[N] annotation(Placement(transformation(extent={{-10,-10},{10,10}}))); Modelica.Blocks.Interfaces.RealInput u[N] annotation(Placement( transformation( origin={-74,8}, extent={{-20,-20},{20,20}}), iconTransformation( origin={-74,8}, extent={{-20,-20},{20,20}}))); Modelica.Blocks.Interfaces.RealOutput[N] y annotation(Placement( transformation( origin={78,6}, extent={{-10,-10},{10,10}}), iconTransformation( origin={85,13}, extent={{-17,-17},{17,17}}))); equation for i in 1:N loop connect(u[i], zeroOrderHold1[i].u) ; logicalSwitch1[i].u2 = Cosim_activ; connect(zeroOrderHold1[i].y, logicalSwitch1[i].u1) ; connect(u[i], logicalSwitch1[i].u3) ; connect(logicalSwitch1[i].y, y[i]) ; end for; annotation( Icon(graphics={ Text( textString="Discretisation par zero hold", fillPattern=FillPattern.None, extent={{-30,10},{90,-30}}, origin={-32,44}), Line( points={{-72,-28},{-54,-28},{-54,-6},{-34,-6},{-34,16},{-12, 16},{-12,-6},{12,-6},{12,-16},{32,-16},{32,28},{52, 28},{52,16},{72,16},{72,-2}}, origin={-2,-30}), Text( textString="Cosim port model", fillPattern=FillPattern.None, extent={{-23,8},{87,-28}}, origin={-35,80})}), experiment( StopTime=1, StartTime=0, Interval=0.002, MaxInterval="0.001")); end Cosim_Sim_m;