public PIDRegulator(double dt, double K = 0, double Ki = 0, double Kd = 0) { m_gainBlock = new GainBlock(K); m_integralBlock = new RegIntegralBlock(dt); m_diffBlock = new DifferentialBlock(dt); this.K = K; this.Ki = Ki; this.Kd = Kd; }
public ChannelUnit() { for (int i = 0; i < components.Length; i++) { components[i] = new TonalComponent(); } for (int i = 0; i < gainBlock.Length; i++) { gainBlock[i] = new GainBlock(); } }
public BarrelControlSystem(double dt) : base() { DT = dt; InputStream = 0; InputStreamBlock = new GainBlock(SystemSettings.Gain); m_withoutHitBlock = new AperiodicBlock(dt, SystemSettings.TForValve); var blocks = new Queue <IBlock>(); blocks.Enqueue(new DelayBlock(dt, SystemSettings.Delay)); blocks.Enqueue(new IntegralBlock(dt)); blocks.Enqueue(new InterferenceBlock(SystemSettings.Interference)); Object = new ComplexBlock(blocks); Regulator = new PIDRegulator(dt); }
public ObjectModel(double k, double T1, double T2, double delayTime, double noize, double dt) { K10 = new GainBlock(k); K11 = new GainBlock(k); K12 = new GainBlock(k); K13 = new GainBlock(k); K14 = new GainBlock(k); K15 = new GainBlock(k); AperiodicBlockZ1 = new AperiodicBlock(T1, dt); AperiodicBlockZ2 = new AperiodicBlock(T2, dt); Z2Delay = new DelayBlock(delayTime, dt); Z2Noize = new NoizeBlock(noize); Z1Delay = new DelayBlock(delayTime, dt); Z1Noize = new NoizeBlock(noize); }