ajustes ao carregar os parametros da operacao
This commit is contained in:
parent
c9f3bd69d7
commit
84e2c88b4f
|
|
@ -204,6 +204,7 @@ namespace AgroBase.Models.Modules
|
|||
ID = T_Code.Dir.ToString(),
|
||||
_EnderecoCAN_Tx = _EnderecoTx,
|
||||
_EnderecoCAN_Rx = _EnderecoRx,
|
||||
Comandar = true,
|
||||
Funcoes = new List<FuncoesPinout>()
|
||||
{
|
||||
FuncoesPinout.PUL,
|
||||
|
|
|
|||
|
|
@ -281,6 +281,7 @@ namespace AgroBase.Models.Modules
|
|||
ID = T_Code.Mov.ToString(),
|
||||
_EnderecoCAN_Tx = _EnderecoTx,
|
||||
_EnderecoCAN_Rx = _EnderecoRx,
|
||||
Comandar = true,
|
||||
Funcoes = new List<FuncoesPinout>()
|
||||
{
|
||||
FuncoesPinout.TMP,
|
||||
|
|
|
|||
|
|
@ -191,6 +191,12 @@ namespace AgroBase.Models
|
|||
Mapa = null,
|
||||
PontosRetorno = null,
|
||||
DadosLeitura = new OperacaoParametrosDadosModel(),
|
||||
ModulosMandatorios = new List<OperacaoModulosMandatoriosModel>()
|
||||
{
|
||||
new OperacaoModulosMandatoriosModel() { Dispositivo = T_Code.Npc, Mandatorio = true, Utilizar = true },
|
||||
new OperacaoModulosMandatoriosModel() { Dispositivo = T_Code.Can, Mandatorio = true, Utilizar = true },
|
||||
new OperacaoModulosMandatoriosModel() { Dispositivo = T_Code.Bat, Mandatorio = true, Utilizar = true },
|
||||
}
|
||||
}
|
||||
};
|
||||
op.Sensoriamento = new OperacaoSensoriamentoConjuntoModel(op)
|
||||
|
|
@ -217,7 +223,7 @@ namespace AgroBase.Models
|
|||
switch (Modo)
|
||||
{
|
||||
case ModoOperacao.NaoDefinido:
|
||||
op.Parametros.ModulosMandatorios = new List<OperacaoModulosMandatoriosModel>();
|
||||
|
||||
break;
|
||||
case ModoOperacao.Manual:
|
||||
op.Parametros.Controle = new OperacaoParametrosControleModel()
|
||||
|
|
@ -255,7 +261,7 @@ namespace AgroBase.Models
|
|||
AtuAgitadorModo = ModoAgitadorCalda.SemAgitacao,
|
||||
AtuModoControle = ModoControleBomba.PID
|
||||
};
|
||||
op.Parametros.ModulosMandatorios = new List<OperacaoModulosMandatoriosModel>()
|
||||
op.Parametros.ModulosMandatorios.AddRange(new List<OperacaoModulosMandatoriosModel>()
|
||||
{
|
||||
new OperacaoModulosMandatoriosModel()
|
||||
{
|
||||
|
|
@ -275,7 +281,7 @@ namespace AgroBase.Models
|
|||
Mandatorio = false,
|
||||
Utilizar = true,
|
||||
}
|
||||
};
|
||||
});
|
||||
op.Parametros.ParametrosMandatorios = new List<OperacaoParametrosMandatoriosModel>()
|
||||
{
|
||||
new OperacaoParametrosMandatoriosModel()
|
||||
|
|
@ -366,7 +372,7 @@ namespace AgroBase.Models
|
|||
AtuAgitadorModo = ModoAgitadorCalda.Continuo,
|
||||
AtuModoControle = ModoControleBomba.PID,
|
||||
};
|
||||
op.Parametros.ModulosMandatorios = new List<OperacaoModulosMandatoriosModel>()
|
||||
op.Parametros.ModulosMandatorios.AddRange(new List<OperacaoModulosMandatoriosModel>()
|
||||
{
|
||||
new OperacaoModulosMandatoriosModel()
|
||||
{
|
||||
|
|
@ -416,7 +422,7 @@ namespace AgroBase.Models
|
|||
Mandatorio = true,
|
||||
Utilizar = true,
|
||||
},
|
||||
};
|
||||
});
|
||||
op.Parametros.ParametrosMandatorios = new List<OperacaoParametrosMandatoriosModel>()
|
||||
{
|
||||
new OperacaoParametrosMandatoriosModel()
|
||||
|
|
@ -506,7 +512,7 @@ namespace AgroBase.Models
|
|||
AtuAgitadorModo = ModoAgitadorCalda.SemAgitacao,
|
||||
AtuModoControle = ModoControleBomba.PID,
|
||||
};
|
||||
op.Parametros.ModulosMandatorios = new List<OperacaoModulosMandatoriosModel>()
|
||||
op.Parametros.ModulosMandatorios.AddRange(new List<OperacaoModulosMandatoriosModel>()
|
||||
{
|
||||
new OperacaoModulosMandatoriosModel()
|
||||
{
|
||||
|
|
@ -548,7 +554,7 @@ namespace AgroBase.Models
|
|||
Dispositivo = T_Code.Lra,
|
||||
Mandatorio = true,
|
||||
}
|
||||
};
|
||||
});
|
||||
op.Parametros.ParametrosMandatorios = new List<OperacaoParametrosMandatoriosModel>()
|
||||
{
|
||||
new OperacaoParametrosMandatoriosModel()
|
||||
|
|
@ -645,7 +651,7 @@ namespace AgroBase.Models
|
|||
AtuAgitadorModo = ModoAgitadorCalda.SemAgitacao,
|
||||
AtuModoControle = ModoControleBomba.PID,
|
||||
};
|
||||
op.Parametros.ModulosMandatorios = new List<OperacaoModulosMandatoriosModel>()
|
||||
op.Parametros.ModulosMandatorios.AddRange(new List<OperacaoModulosMandatoriosModel>()
|
||||
{
|
||||
new OperacaoModulosMandatoriosModel()
|
||||
{
|
||||
|
|
@ -665,7 +671,7 @@ namespace AgroBase.Models
|
|||
Mandatorio = true,
|
||||
Utilizar = true,
|
||||
}
|
||||
};
|
||||
});
|
||||
op.Parametros.ParametrosMandatorios = new List<OperacaoParametrosMandatoriosModel>()
|
||||
{
|
||||
new OperacaoParametrosMandatoriosModel()
|
||||
|
|
@ -744,7 +750,7 @@ namespace AgroBase.Models
|
|||
AtuAgitadorModo = ModoAgitadorCalda.SemAgitacao,
|
||||
AtuModoControle = ModoControleBomba.PID,
|
||||
};
|
||||
op.Parametros.ModulosMandatorios = new List<OperacaoModulosMandatoriosModel>()
|
||||
op.Parametros.ModulosMandatorios.AddRange(new List<OperacaoModulosMandatoriosModel>()
|
||||
{
|
||||
new OperacaoModulosMandatoriosModel()
|
||||
{
|
||||
|
|
@ -788,7 +794,7 @@ namespace AgroBase.Models
|
|||
Mandatorio = true,
|
||||
Utilizar = true,
|
||||
},
|
||||
};
|
||||
});
|
||||
op.Parametros.ParametrosMandatorios = new List<OperacaoParametrosMandatoriosModel>();
|
||||
op.Controle = new OperacaoControleModel()
|
||||
{
|
||||
|
|
@ -827,10 +833,6 @@ namespace AgroBase.Models
|
|||
|
||||
}
|
||||
|
||||
op.Parametros.ModulosMandatorios.Add(new OperacaoModulosMandatoriosModel() { Dispositivo = T_Code.Npc, Mandatorio = true, Utilizar = true });
|
||||
op.Parametros.ModulosMandatorios.Add(new OperacaoModulosMandatoriosModel() { Dispositivo = T_Code.Can, Mandatorio = true, Utilizar = true });
|
||||
op.Parametros.ModulosMandatorios.Add(new OperacaoModulosMandatoriosModel() { Dispositivo = T_Code.Bat, Mandatorio = true, Utilizar = true });
|
||||
|
||||
op.Parametros.ModulosMandatorios.ForEach(m => m.ComponentesEmUso = op.PreencherComponentesEmUso(m.Dispositivo));
|
||||
if (CarregarModulos)
|
||||
{
|
||||
|
|
@ -850,29 +852,25 @@ namespace AgroBase.Models
|
|||
switch (Modulo)
|
||||
{
|
||||
case T_Code.Mov:
|
||||
if (op.DispMvd != null)
|
||||
op.DispMvd?.Dados?.Modulos?.ForEach(m => d.Add(m.Modulo_ID, (true, m.MovMotor.Comandar)));
|
||||
var dadosMov = op?.DispMvd?.Dados ?? MovimentacaoUnificadaModel.CarregarParametrosIniciais();
|
||||
dadosMov?.Modulos?.ForEach(m => d.Add(m.Modulo_ID, (true, m.MovMotor.Comandar)));
|
||||
break;
|
||||
case T_Code.Dir:
|
||||
if (op.DispMvd != null)
|
||||
op.DispMvd?.Dados?.Modulos?.ForEach(m => d.Add(m.Modulo_ID, (true, m.DirMotor.Comandar)));
|
||||
var dadosDir = op?.DispMvd?.Dados ?? MovimentacaoUnificadaModel.CarregarParametrosIniciais();
|
||||
dadosDir?.Modulos?.ForEach(m => d.Add(m.Modulo_ID, (true, m.DirMotor.Comandar)));
|
||||
break;
|
||||
case T_Code.Atu:
|
||||
if (op.DispAtu != null)
|
||||
{
|
||||
op.DispAtu?.Dados?.Sensores?.ForEach(s => d.Add(s.ID, (s.Mandatorio, s.Aferir)));
|
||||
op.DispAtu?.Dados?.BombasPressurizadoras?.ForEach(b => d.Add(b.ID, (b.Mandatorio, b.Comandar)));
|
||||
op.DispAtu?.Dados?.BicosPulverizadores?.ForEach(b => d.Add(b.ID, (b.Mandatorio, b.Comandar)));
|
||||
}
|
||||
var dadosAtu = op?.DispAtu?.Dados ?? AtuadorModel.CarregarParametrosIniciais();
|
||||
dadosAtu?.Sensores?.ForEach(s => d.Add(s.ID, (s.Mandatorio, s.Aferir)));
|
||||
dadosAtu?.BombasPressurizadoras?.ForEach(b => d.Add(b.ID, (b.Mandatorio, b.Comandar)));
|
||||
dadosAtu?.BicosPulverizadores?.ForEach(b => d.Add(b.ID, (b.Mandatorio, b.Comandar)));
|
||||
break;
|
||||
case T_Code.Sen:
|
||||
if (op.DispSen != null)
|
||||
{
|
||||
op.DispSen?.Dados?.Sensores?.ForEach(s => d.Add(s.ID, (s.Mandatorio, s.Aferir)));
|
||||
op.DispSen?.Dados?.Sinaleiros?.ForEach(s => d.Add(s.ID, (s.Mandatorio, s.Controlar)));
|
||||
op.DispSen?.Dados?.Servos?.ForEach(s => d.Add(s.ID, (s.Mandatorio, s.Controlar)));
|
||||
op.DispSen?.Dados?.Reles?.ForEach(r => d.Add(r.ID, (r.Mandatorio, r.Controlar)));
|
||||
}
|
||||
var dadosSen = op?.DispSen?.Dados ?? SensoriamentoModel.CarregarParametrosIniciais();
|
||||
dadosSen?.Sensores?.ForEach(s => d.Add(s.ID, (s.Mandatorio, s.Aferir)));
|
||||
dadosSen?.Sinaleiros?.ForEach(s => d.Add(s.ID, (s.Mandatorio, s.Controlar)));
|
||||
dadosSen?.Servos?.ForEach(s => d.Add(s.ID, (s.Mandatorio, s.Controlar)));
|
||||
dadosSen?.Reles?.ForEach(r => d.Add(r.ID, (r.Mandatorio, r.Controlar)));
|
||||
break;
|
||||
}
|
||||
return d;
|
||||
|
|
|
|||
|
|
@ -448,7 +448,7 @@ namespace OperationControl.ViewModels.Views.Operacao.Monitoramento.Diagnostico
|
|||
|
||||
if (!string.IsNullOrWhiteSpace(item.LabelModulo))
|
||||
{
|
||||
return dados.DadosLeitura?.Operacao?.ModulosMandatorios?
|
||||
return dados.ModulosMandatorios?
|
||||
.FirstOrDefault(x => x.Dispositivo == item.Modulo)?
|
||||
.ComponentesEmUso?
|
||||
.Any(x => x.Key == item.LabelModulo && x.Value.Item1) ?? false;
|
||||
|
|
@ -464,7 +464,7 @@ namespace OperationControl.ViewModels.Views.Operacao.Monitoramento.Diagnostico
|
|||
|
||||
if (!string.IsNullOrWhiteSpace(item.LabelModulo))
|
||||
{
|
||||
return dados.DadosLeitura?.Operacao?.ModulosMandatorios?
|
||||
return dados.ModulosMandatorios?
|
||||
.FirstOrDefault(x => x.Dispositivo == item.Modulo)?
|
||||
.ComponentesEmUso?
|
||||
.Any(x => x.Key == item.LabelModulo && x.Value.Item2) ?? false;
|
||||
|
|
|
|||
|
|
@ -185,8 +185,6 @@
|
|||
<StackPanel>
|
||||
<TextBlock Text="MPC" Foreground="White" FontSize="15" FontWeight="SemiBold" Margin="0,0,0,12"/>
|
||||
|
||||
<CheckBox Content="Matriz de Custo" ToolTip="Define se o MPC deve usar a matriz de custo para filtrar candidatos e evitar regiões ruins ou com obstáculos." IsChecked="{Binding Parametros.Controle.MpcMatrizCusto}" Style="{StaticResource ParamCheckBoxStyle}"/>
|
||||
|
||||
<TextBlock Text="Horizonte (m)" Style="{StaticResource ParamLabelStyle}"/>
|
||||
<TextBox ToolTip="Distância, em metros, que o MPC usa como horizonte de previsão para escolher a melhor trajetória." Text="{Binding Parametros.Controle.MpcHorizonte, UpdateSourceTrigger=PropertyChanged}" Style="{StaticResource ParamTextBoxStyle}" Margin="0,0,0,0"/>
|
||||
|
||||
|
|
|
|||
Loading…
Reference in New Issue