public PID(int pidId, string pidName, BrewIO brewIO, Outputs output, IPidRepository pidRepo) { _pidId = pidId; _pidName = pidName; _brewIO = brewIO; _output = output; _heater = new HeaterController(_brewIO, output); _heater.Start(); PidConfig = pidRepo.GetPidConfig(pidId); if (PidConfig == null) { PidConfig = new PidConfig { PidId = pidId, PIDKp = DefaultPIDKp, PIDKi = DefaultPIDKi, PIDKd = DefaultPIDKd }; pidRepo.AddPidConfig(PidConfig); } _pidRegulator = new PIDRegulator3(PidConfig.PIDKp, PidConfig.PIDKi, PidConfig.PIDKd); Status = new PidStatusDto { PidId = _pidId, PidName = _pidName }; }
public void UpdateExistingPidConfig(PidConfig pidConfig) { _db.PidConfigs.ReplaceOne(x => x.Id == pidConfig.Id, pidConfig); }
public void AddPidConfig(PidConfig pidConfig) { _db.PidConfigs.InsertOne(pidConfig); }