static void Main(string[] args) { ListPoints = new List <Points>(); DateTime datahora_atual = DateTime.MinValue; bool started = false; do { var datahora = Simulation.Memory.Get().dmDateTime; var Dados_A = Simulation.Input.Termostato_A(); var Dados_D = Simulation.Input.Termostato_D(); var Dados_E = Simulation.Input.Termostato_E(); var Dados_G = Simulation.Input.Termostato_G(); bool saida_heater_A = Decisao.ResultadoAquecedorSimplificado(Dados_A.TemperaturaReal, Dados_A.SetPointReal); bool saida_heater_D = Decisao.ResultadoAquecedorSimplificado(Dados_D.TemperaturaReal, Dados_D.SetPointReal); bool saida_heater_E = Decisao.ResultadoAquecedorSimplificado(Dados_E.TemperaturaReal, Dados_E.SetPointReal); bool saida_heater_G = Decisao.ResultadoAquecedorSimplificado(Dados_G.TemperaturaReal, Dados_G.SetPointReal); if (saida_heater_A) { Simulation.Output.LigarAquecedor_A(); } else { Simulation.Output.DesligarAquecedor_A(); } ///////////////// if (saida_heater_D) { Simulation.Output.LigarAquecedor_D(); } else { Simulation.Output.DesligarAquecedor_D(); } ///////////////// if (saida_heater_E) { Simulation.Output.LigarAquecedor_E(); } else { Simulation.Output.DesligarAquecedor_E(); } ///////////////// if (saida_heater_G) { Simulation.Output.LigarAquecedor_G(); } else { Simulation.Output.DesligarAquecedor_G(); } if (datahora.DataHora.Hour == 0 && datahora.DataHora.Minute == 0 && datahora.DataHora.Second > 0) { started = true; } if (started == true) { if (datahora.DataHora >= datahora_atual.AddSeconds(1)) { datahora_atual = datahora.DataHora; var p = new Points(); p.Hora = datahora.DataHoraNormalizado; p.TempA = Dados_A.TemperaturaNormalizado; p.SetA = Dados_A.SetPointNormalizado; p.TempD = Dados_D.TemperaturaNormalizado; p.SetD = Dados_D.SetPointNormalizado; p.TempE = Dados_E.TemperaturaNormalizado; p.SetE = Dados_E.SetPointNormalizado; p.TempG = Dados_G.TemperaturaNormalizado; p.SetG = Dados_G.SetPointNormalizado; p.SaidaEsperada.AquecedorA = Normalizacao.Norm_Bool(saida_heater_A); p.SaidaEsperada.AquecedorD = Normalizacao.Norm_Bool(saida_heater_D); p.SaidaEsperada.AquecedorE = Normalizacao.Norm_Bool(saida_heater_E); p.SaidaEsperada.AquecedorG = Normalizacao.Norm_Bool(saida_heater_G); ListPoints.Add(p); Console.WriteLine(ListPoints.Count); /*if (datahora.Hour == 23 && datahora.Minute == 59 && datahora.Second > 0) * break;*/ } } }while (ListPoints.Count < 10000); Salvar(); Console.WriteLine("Total points: " + ListPoints.Count); Console.ReadKey(); }
static void Main(string[] args) { ListPoints = new List <Points>(10000); Random random = new Random(); int total = 10000; //A for (int A = 0; A < total; A++) { double SetA = random.Next(5, 30) + random.NextDouble(); double SetD = random.Next(5, 30) + random.NextDouble(); double SetE = random.Next(5, 30) + random.NextDouble(); double SetG = random.Next(5, 30) + random.NextDouble(); double TempA = random.Next(-20, 50) + random.NextDouble(); double TempD = random.Next(-20, 50) + random.NextDouble(); double TempE = random.Next(-20, 50) + random.NextDouble(); double TempG = random.Next(-20, 50) + random.NextDouble(); bool estadoA = false; bool estadoD = false; bool estadoE = false; bool estadoG = false; if (SetA > TempA) { estadoA = true; } if (SetD > TempD) { estadoD = true; } if (SetE > TempE) { estadoE = true; } if (SetG > TempG) { estadoG = true; } Points p = new Points() { Hora = 0, SetA = Normalizacao.Norm_Temp((float)SetA), TempA = Normalizacao.Norm_Temp((float)TempA), SetD = Normalizacao.Norm_Temp((float)SetD), TempD = Normalizacao.Norm_Temp((float)TempD), SetE = Normalizacao.Norm_Temp((float)SetE), TempE = Normalizacao.Norm_Temp((float)TempE), SetG = Normalizacao.Norm_Temp((float)SetG), TempG = Normalizacao.Norm_Temp((float)TempG), SaidaEsperada = new PointsSaida() { AquecedorA = Normalizacao.Norm_Bool(estadoA), AquecedorD = Normalizacao.Norm_Bool(estadoD), AquecedorE = Normalizacao.Norm_Bool(estadoE), AquecedorG = Normalizacao.Norm_Bool(estadoG) } }; ListPoints.Add(p); } Salvar(); Console.WriteLine("total: " + ListPoints.Count); Console.ReadKey(); }