// Start is called before the first frame update void Start() { cam = GetComponent <Camera>(); minFOV = cam.fieldOfView; maxFOV = minFOV * MaxZoomOutFactor; filter = new IIRFilter3(new Vector3(0.0f, 0.0f, 0.0f), 0.002f); fovFilter = new IIRFilter(minFOV, 0.001f); }
public override void Initialize() { VoltageFilter = new IIRFilter(IIRFilter.FilterTypes.Butterworth, 1, IIRFilter.HzToRad(0.7f), 0.001f); Battery.ChargePercent = 100; Battery.VoltageV = 72; Rele_minima = new Timer(this); Rele_minima.Setup(2f * 60f + 30); Convertidor_Estático = new Convertidor_3000Vcc_380Vca3(() => new Electricity(CurrentCircuitBreakerState() == CircuitBreakerState.Closed && Contactor_bateria ? RealLineVoltageV : 0, Acceleration / 0.7f * 315 + 15)); Cargador_Batería = new Cargador_Bateria(Convertidor_Estático); }
public override void Initialize() { VoltageFilter = new IIRFilter(IIRFilter.FilterTypes.Butterworth, 1, IIRFilter.HzToRad(0.7f), 0.001f); PowerOnTimer = new Timer(this); PowerOnTimer.Setup(PowerOnDelayS()); AuxPowerOnTimer = new Timer(this); AuxPowerOnTimer.Setup(AuxPowerOnDelayS()); }
// filter data. Each IIRFilter stores two data points of filtered and unfiltered data. Therefore, filtering should be continuous and not be switched on and off. // Furthermore, each IIRFilter may only process one data stream. If you intend to filter two data streams with the same kind of filter, you need to initialize // two IIRFilters accordingly (e.g. "Notch50_1" and "Notch50_2"), each filtering only one data stream. public float filter(float x0, IIRFilter iirfilter) { float y = iirfilter.a0 * x0 + iirfilter.a1 * iirfilter.x1 + iirfilter.a2 * iirfilter.x2 + iirfilter.b1 * iirfilter.y1 + iirfilter.b2 * iirfilter.y2; iirfilter.x2 = iirfilter.x1; iirfilter.x1 = x0; iirfilter.y2 = iirfilter.y1; iirfilter.y1 = y; return(y); }
public override void Initialize() { PantographFilter = new IIRFilter(IIRFilterType.Butterworth, 1, Frequency.Angular.HzToRad(0.7f), 0.001f); VoltageFilter = new IIRFilter(IIRFilterType.Butterworth, 1, Frequency.Angular.HzToRad(0.7f), 0.001f); PowerOnTimer = new Timer(this); PowerOnTimer.Setup(PowerOnDelayS()); AuxPowerOnTimer = new Timer(this); AuxPowerOnTimer.Setup(AuxPowerOnDelayS()); }
// Start is called before the first frame update void Start() { startTime = Time.time; CurrentRotation = new Vector3(0.0f, 0.0f, 0.0f); CurrentScale = new Vector3(0.0f, 0.0f, 0.0f); CurrentPosition = new Vector3(0.0f, 0.0f, 0.0f); windPhase = Gen.RandomRange(0.0f, Mathf.PI * 2.0f); deltaWindPhase = Gen.RandomRange(0.003f, 0.007f) * 60.0f; windStrengthFilter = new IIRFilter(Gen.SpeedMultiplier, 0.01f); }
public Deemphasis(float fs, float tau = 75e-6f) { double c = 1 / tau; double ca = (2 * fs * Math.Atan(c / (2 * fs))); double k = -ca / (2 * fs); double p1 = (1 + k) / (1 - k); double b0 = -k / (1 - k); double[] btaps = new double[] { b0, b0 }; double[] ataps = new double[] { 1.0, -p1 }; iir = new IIRFilter(btaps, ataps); }
// Use this for initialization void Start() { if (!Input.gyro.enabled) { Input.gyro.enabled = true; } low0Hz0 = new IIRFilter(new float[] { 1f, -1.979133761292768f, 0.979521463540373f }, new float[] { 0.000086384997973502f, 0.000172769995947004f, 0.000086384997973502f }); low0Hz1 = new IIRFilter(new float[] { 1f, -1.979133761292768f, 0.979521463540373f }, new float[] { 0.000086384997973502f, 0.000172769995947004f, 0.000086384997973502f }); low0Hz2 = new IIRFilter(new float[] { 1f, -1.979133761292768f, 0.979521463540373f }, new float[] { 0.000086384997973502f, 0.000172769995947004f, 0.000086384997973502f }); low0Hz3 = new IIRFilter(new float[] { 1f, -1.979133761292768f, 0.979521463540373f }, new float[] { 0.000086384997973502f, 0.000172769995947004f, 0.000086384997973502f }); low0Hz4 = new IIRFilter(new float[] { 1f, -1.979133761292768f, 0.979521463540373f }, new float[] { 0.000086384997973502f, 0.000172769995947004f, 0.000086384997973502f }); low5Hz0 = new IIRFilter(new float[] { 1f, -1.80898117793047f, 0.827224480562408f }, new float[] { 0.095465967120306f, -0.172688631608676f, 0.095465967120306f }); low5Hz1 = new IIRFilter(new float[] { 1f, -1.80898117793047f, 0.827224480562408f }, new float[] { 0.095465967120306f, -0.172688631608676f, 0.095465967120306f }); low5Hz2 = new IIRFilter(new float[] { 1f, -1.80898117793047f, 0.827224480562408f }, new float[] { 0.095465967120306f, -0.172688631608676f, 0.095465967120306f }); low5Hz3 = new IIRFilter(new float[] { 1f, -1.80898117793047f, 0.827224480562408f }, new float[] { 0.095465967120306f, -0.172688631608676f, 0.095465967120306f }); low5Hz4 = new IIRFilter(new float[] { 1f, -1.80898117793047f, 0.827224480562408f }, new float[] { 0.095465967120306f, -0.172688631608676f, 0.095465967120306f }); // high1Hz = new IIRFilter(new float[] { 1f, -1.905384612118461f, 0.910092542787947f }, new float[] { 0.953986986993339f, -1.907503180919730f, 0.953986986993339f }); }
// Use this for initialization void Start() { Notch50 = new IIRFilter(250, 50, 5); // sample rate 250Hz, Notch at 50Hz with bandwidth of 5 Notch100 = new IIRFilter(250, 100, 5); }
// Start is called before the first frame update void Start() { filter = new IIRFilter(DefaultScale, 0.02f); }
private void cmbLowPass_SelectedIndexChanged(object sender, EventArgs e) { lock (this) { switch (cmbLowPass.SelectedIndex) { case 0: LowPass = null; LowPassI = null; LowPassQ = null; break; case 1: LowPass = new IIRFilter(IIRCoefficients.IIRLowPass_2); LowPassI = new IIRFilter(IIRCoefficients.IIRLowPass_2); LowPassQ = new IIRFilter(IIRCoefficients.IIRLowPass_2); break; case 2: LowPass = new IIRFilter(IIRCoefficients.IIRLowPass_4); LowPassI = new IIRFilter(IIRCoefficients.IIRLowPass_4); LowPassQ = new IIRFilter(IIRCoefficients.IIRLowPass_4); break; case 3: LowPass = new IIRFilter(IIRCoefficients.IIRLowPass_8); LowPassI = new IIRFilter(IIRCoefficients.IIRLowPass_8); LowPassQ = new IIRFilter(IIRCoefficients.IIRLowPass_8); break; case 4: LowPass = new IIRFilter(IIRCoefficients.IIRLowPass_16); LowPassI = new IIRFilter(IIRCoefficients.IIRLowPass_16); LowPassQ = new IIRFilter(IIRCoefficients.IIRLowPass_16); break; case 5: LowPass = new IIRFilter(IIRCoefficients.IIRLowPass_32); LowPassI = new IIRFilter(IIRCoefficients.IIRLowPass_32); LowPassQ = new IIRFilter(IIRCoefficients.IIRLowPass_32); break; case 6: LowPass = new IIRFilter(IIRCoefficients.IIRLowPass_64); LowPassI = new IIRFilter(IIRCoefficients.IIRLowPass_64); LowPassQ = new IIRFilter(IIRCoefficients.IIRLowPass_64); break; case 7: LowPass = new IIRFilter(IIRCoefficients.IIRLowPass_128); LowPassI = new IIRFilter(IIRCoefficients.IIRLowPass_128); LowPassQ = new IIRFilter(IIRCoefficients.IIRLowPass_128); break; case 8: LowPass = new IIRFilter(IIRCoefficients.IIRLowPass_256); LowPassI = new IIRFilter(IIRCoefficients.IIRLowPass_256); LowPassQ = new IIRFilter(IIRCoefficients.IIRLowPass_256); break; } } }
public Cargador_Bateria(Convertidor_3000Vcc_380Vca3 Input) { VFilter = new IIRFilter(IIRFilter.FilterTypes.Butterworth, 1, IIRFilter.HzToRad(0.7f), 0.001f); this.Input = Input; }