ajustes performance manager worker
This commit is contained in:
parent
97acd6f2f4
commit
1574cd5538
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
|
|
@ -2,33 +2,29 @@
|
|||
"Version": 1,
|
||||
"WorkspaceRootPath": "C:\\ZendionINC\\agrobot_base\\AgroBase\\",
|
||||
"Documents": [
|
||||
{
|
||||
"AbsoluteMoniker": "D:0:0:{C54B41C0-1D21-4E3E-949E-0F86BBC86A33}|AgroBase\\AgroBase.csproj|c:\\zendioninc\\agrobot_base\\agrobase\\agrobase\\models\\trajetoriamapaoperacaomodel.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
|
||||
"RelativeMoniker": "D:0:0:{C54B41C0-1D21-4E3E-949E-0F86BBC86A33}|AgroBase\\AgroBase.csproj|solutionrelative:agrobase\\models\\trajetoriamapaoperacaomodel.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
|
||||
},
|
||||
{
|
||||
"AbsoluteMoniker": "D:0:0:{C54B41C0-1D21-4E3E-949E-0F86BBC86A33}|AgroBase\\AgroBase.csproj|c:\\zendioninc\\agrobot_base\\agrobase\\agrobase\\models\\operacoes\\operacaomodel.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
|
||||
"RelativeMoniker": "D:0:0:{C54B41C0-1D21-4E3E-949E-0F86BBC86A33}|AgroBase\\AgroBase.csproj|solutionrelative:agrobase\\models\\operacoes\\operacaomodel.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
|
||||
},
|
||||
{
|
||||
"AbsoluteMoniker": "D:0:0:{C54B41C0-1D21-4E3E-949E-0F86BBC86A33}|AgroBase\\AgroBase.csproj|C:\\ZendionINC\\agrobot_base\\AgroBase\\agrobase\\services\\mks057dcanservice.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
|
||||
"RelativeMoniker": "D:0:0:{C54B41C0-1D21-4E3E-949E-0F86BBC86A33}|AgroBase\\AgroBase.csproj|solutionrelative:agrobase\\services\\mks057dcanservice.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
|
||||
"AbsoluteMoniker": "D:0:0:{C54B41C0-1D21-4E3E-949E-0F86BBC86A33}|AgroBase\\AgroBase.csproj|c:\\zendioninc\\agrobot_base\\agrobase\\agrobase\\services\\operadores\\operadoresservice.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
|
||||
"RelativeMoniker": "D:0:0:{C54B41C0-1D21-4E3E-949E-0F86BBC86A33}|AgroBase\\AgroBase.csproj|solutionrelative:agrobase\\services\\operadores\\operadoresservice.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
|
||||
},
|
||||
{
|
||||
"AbsoluteMoniker": "D:0:0:{C54B41C0-1D21-4E3E-949E-0F86BBC86A33}|AgroBase\\AgroBase.csproj|c:\\zendioninc\\agrobot_base\\agrobase\\agrobase\\forms\\frmmks.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
|
||||
"RelativeMoniker": "D:0:0:{C54B41C0-1D21-4E3E-949E-0F86BBC86A33}|AgroBase\\AgroBase.csproj|solutionrelative:agrobase\\forms\\frmmks.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
|
||||
"AbsoluteMoniker": "D:0:0:{C54B41C0-1D21-4E3E-949E-0F86BBC86A33}|AgroBase\\AgroBase.csproj|c:\\zendioninc\\agrobot_base\\agrobase\\agrobase\\forms\\frminstancial.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
|
||||
"RelativeMoniker": "D:0:0:{C54B41C0-1D21-4E3E-949E-0F86BBC86A33}|AgroBase\\AgroBase.csproj|solutionrelative:agrobase\\forms\\frminstancial.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
|
||||
},
|
||||
{
|
||||
"AbsoluteMoniker": "D:0:0:{C54B41C0-1D21-4E3E-949E-0F86BBC86A33}|AgroBase\\AgroBase.csproj|c:\\zendioninc\\agrobot_base\\agrobase\\agrobase\\forms\\frmmks.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}|Form",
|
||||
"RelativeMoniker": "D:0:0:{C54B41C0-1D21-4E3E-949E-0F86BBC86A33}|AgroBase\\AgroBase.csproj|solutionrelative:agrobase\\forms\\frmmks.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}|Form"
|
||||
"AbsoluteMoniker": "D:0:0:{C54B41C0-1D21-4E3E-949E-0F86BBC86A33}|AgroBase\\AgroBase.csproj|c:\\zendioninc\\agrobot_base\\agrobase\\agrobase\\forms\\simuladores\\frmsimulacaomapagps.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
|
||||
"RelativeMoniker": "D:0:0:{C54B41C0-1D21-4E3E-949E-0F86BBC86A33}|AgroBase\\AgroBase.csproj|solutionrelative:agrobase\\forms\\simuladores\\frmsimulacaomapagps.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
|
||||
},
|
||||
{
|
||||
"AbsoluteMoniker": "D:0:0:{C54B41C0-1D21-4E3E-949E-0F86BBC86A33}|AgroBase\\AgroBase.csproj|C:\\ZendionINC\\agrobot_base\\AgroBase\\agrobase\\models\\modules\\direcionalmodel.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
|
||||
"RelativeMoniker": "D:0:0:{C54B41C0-1D21-4E3E-949E-0F86BBC86A33}|AgroBase\\AgroBase.csproj|solutionrelative:agrobase\\models\\modules\\direcionalmodel.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
|
||||
},
|
||||
{
|
||||
"AbsoluteMoniker": "D:0:0:{C54B41C0-1D21-4E3E-949E-0F86BBC86A33}|AgroBase\\AgroBase.csproj|c:\\zendioninc\\agrobot_base\\agrobase\\agrobase\\services\\serialservice.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
|
||||
"RelativeMoniker": "D:0:0:{C54B41C0-1D21-4E3E-949E-0F86BBC86A33}|AgroBase\\AgroBase.csproj|solutionrelative:agrobase\\services\\serialservice.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
|
||||
},
|
||||
{
|
||||
"AbsoluteMoniker": "D:0:0:{C54B41C0-1D21-4E3E-949E-0F86BBC86A33}|AgroBase\\AgroBase.csproj|C:\\ZendionINC\\agrobot_base\\AgroBase\\agrobase\\models\\modules\\sensoriamentomodel.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
|
||||
"RelativeMoniker": "D:0:0:{C54B41C0-1D21-4E3E-949E-0F86BBC86A33}|AgroBase\\AgroBase.csproj|solutionrelative:agrobase\\models\\modules\\sensoriamentomodel.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
|
||||
"AbsoluteMoniker": "D:0:0:{C54B41C0-1D21-4E3E-949E-0F86BBC86A33}|AgroBase\\AgroBase.csproj|c:\\zendioninc\\agrobot_base\\agrobase\\agrobase\\services\\pythonservice.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
|
||||
"RelativeMoniker": "D:0:0:{C54B41C0-1D21-4E3E-949E-0F86BBC86A33}|AgroBase\\AgroBase.csproj|solutionrelative:agrobase\\services\\pythonservice.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
|
||||
}
|
||||
],
|
||||
"DocumentGroupContainers": [
|
||||
|
|
@ -38,96 +34,84 @@
|
|||
"DocumentGroups": [
|
||||
{
|
||||
"DockedWidth": 200,
|
||||
"SelectedChildIndex": 0,
|
||||
"SelectedChildIndex": 2,
|
||||
"Children": [
|
||||
{
|
||||
"$type": "Document",
|
||||
"DocumentIndex": 0,
|
||||
"DocumentIndex": 1,
|
||||
"Title": "OperacaoModel.cs",
|
||||
"DocumentMoniker": "C:\\ZendionINC\\agrobot_base\\AgroBase\\AgroBase\\Models\\Operacoes\\OperacaoModel.cs",
|
||||
"RelativeDocumentMoniker": "AgroBase\\Models\\Operacoes\\OperacaoModel.cs",
|
||||
"ToolTip": "C:\\ZendionINC\\agrobot_base\\AgroBase\\AgroBase\\Models\\Operacoes\\OperacaoModel.cs",
|
||||
"RelativeToolTip": "AgroBase\\Models\\Operacoes\\OperacaoModel.cs",
|
||||
"ViewState": "AQIAACIDAAAAAAAAAAAUwGMDAAAWAAAA",
|
||||
"ViewState": "AQIAAHwDAAAAAAAAAAAQwJQFAABMAAAA",
|
||||
"Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
|
||||
"WhenOpened": "2025-05-19T10:52:21.592Z",
|
||||
"EditorCaption": ""
|
||||
},
|
||||
{
|
||||
"$type": "Document",
|
||||
"DocumentIndex": 5,
|
||||
"Title": "SerialService.cs",
|
||||
"DocumentMoniker": "C:\\ZendionINC\\agrobot_base\\AgroBase\\AgroBase\\Services\\SerialService.cs",
|
||||
"RelativeDocumentMoniker": "AgroBase\\Services\\SerialService.cs",
|
||||
"ToolTip": "C:\\ZendionINC\\agrobot_base\\AgroBase\\AgroBase\\Services\\SerialService.cs",
|
||||
"RelativeToolTip": "AgroBase\\Services\\SerialService.cs",
|
||||
"ViewState": "AQIAABcAAAAAAAAAAAAQwCIAAAAxAAAA",
|
||||
"Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
|
||||
"WhenOpened": "2025-05-19T10:55:20.352Z",
|
||||
"WhenOpened": "2025-07-30T23:29:07.62Z",
|
||||
"EditorCaption": ""
|
||||
},
|
||||
{
|
||||
"$type": "Document",
|
||||
"DocumentIndex": 2,
|
||||
"Title": "frmMKS.cs",
|
||||
"DocumentMoniker": "C:\\ZendionINC\\agrobot_base\\AgroBase\\AgroBase\\Forms\\frmMKS.cs",
|
||||
"RelativeDocumentMoniker": "AgroBase\\Forms\\frmMKS.cs",
|
||||
"ToolTip": "C:\\ZendionINC\\agrobot_base\\AgroBase\\AgroBase\\Forms\\frmMKS.cs",
|
||||
"RelativeToolTip": "AgroBase\\Forms\\frmMKS.cs",
|
||||
"ViewState": "AQIAAEcJAAAAAAAAAAA5wG8JAAAaAAAA",
|
||||
"Title": "OperadoresService.cs",
|
||||
"DocumentMoniker": "C:\\ZendionINC\\agrobot_base\\AgroBase\\AgroBase\\Services\\Operadores\\OperadoresService.cs",
|
||||
"RelativeDocumentMoniker": "AgroBase\\Services\\Operadores\\OperadoresService.cs",
|
||||
"ToolTip": "C:\\ZendionINC\\agrobot_base\\AgroBase\\AgroBase\\Services\\Operadores\\OperadoresService.cs",
|
||||
"RelativeToolTip": "AgroBase\\Services\\Operadores\\OperadoresService.cs",
|
||||
"ViewState": "AQIAAB4AAAAAAAAAAIAwwFIAAAAQAAAA",
|
||||
"Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
|
||||
"WhenOpened": "2025-05-19T10:42:45.135Z",
|
||||
"WhenOpened": "2025-07-30T23:10:32.958Z",
|
||||
"EditorCaption": ""
|
||||
},
|
||||
{
|
||||
"$type": "Document",
|
||||
"DocumentIndex": 3,
|
||||
"Title": "frmMKS.cs [Design]",
|
||||
"DocumentMoniker": "C:\\ZendionINC\\agrobot_base\\AgroBase\\AgroBase\\Forms\\frmMKS.cs",
|
||||
"RelativeDocumentMoniker": "AgroBase\\Forms\\frmMKS.cs",
|
||||
"ToolTip": "C:\\ZendionINC\\agrobot_base\\AgroBase\\AgroBase\\Forms\\frmMKS.cs [Design]",
|
||||
"RelativeToolTip": "AgroBase\\Forms\\frmMKS.cs [Design]",
|
||||
"DocumentIndex": 0,
|
||||
"Title": "TrajetoriaMapaOperacaoModel.cs",
|
||||
"DocumentMoniker": "C:\\ZendionINC\\agrobot_base\\AgroBase\\AgroBase\\Models\\TrajetoriaMapaOperacaoModel.cs",
|
||||
"RelativeDocumentMoniker": "AgroBase\\Models\\TrajetoriaMapaOperacaoModel.cs",
|
||||
"ToolTip": "C:\\ZendionINC\\agrobot_base\\AgroBase\\AgroBase\\Models\\TrajetoriaMapaOperacaoModel.cs",
|
||||
"RelativeToolTip": "AgroBase\\Models\\TrajetoriaMapaOperacaoModel.cs",
|
||||
"ViewState": "AQIAAKICAAAAAAAAAAAkwLICAABFAAAA",
|
||||
"Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
|
||||
"WhenOpened": "2025-05-19T10:40:53.896Z",
|
||||
"EditorCaption": " [Design]"
|
||||
},
|
||||
{
|
||||
"$type": "Document",
|
||||
"DocumentIndex": 1,
|
||||
"Title": "MKS057DCanService.cs",
|
||||
"DocumentMoniker": "C:\\ZendionINC\\agrobot_base\\AgroBase\\AgroBase\\Services\\MKS057DCanService.cs",
|
||||
"RelativeDocumentMoniker": "AgroBase\\Services\\MKS057DCanService.cs",
|
||||
"ToolTip": "C:\\ZendionINC\\agrobot_base\\AgroBase\\AgroBase\\Services\\MKS057DCanService.cs",
|
||||
"RelativeToolTip": "AgroBase\\Services\\MKS057DCanService.cs",
|
||||
"ViewState": "AQIAACcAAAAAAAAAAAAmwIUAAAA9AAAA",
|
||||
"Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
|
||||
"WhenOpened": "2025-05-16T13:48:29.51Z",
|
||||
"WhenOpened": "2025-07-30T22:49:55.626Z",
|
||||
"EditorCaption": ""
|
||||
},
|
||||
{
|
||||
"$type": "Document",
|
||||
"DocumentIndex": 4,
|
||||
"Title": "DirecionalModel.cs",
|
||||
"DocumentMoniker": "C:\\ZendionINC\\agrobot_base\\AgroBase\\AgroBase\\Models\\Modules\\DirecionalModel.cs",
|
||||
"RelativeDocumentMoniker": "AgroBase\\Models\\Modules\\DirecionalModel.cs",
|
||||
"ToolTip": "C:\\ZendionINC\\agrobot_base\\AgroBase\\AgroBase\\Models\\Modules\\DirecionalModel.cs",
|
||||
"RelativeToolTip": "AgroBase\\Models\\Modules\\DirecionalModel.cs",
|
||||
"ViewState": "AQIAAGYAAAAAAAAAAAAowGQBAAARAAAA",
|
||||
"Title": "frmSimulacaoMapaGPS.cs",
|
||||
"DocumentMoniker": "C:\\ZendionINC\\agrobot_base\\AgroBase\\AgroBase\\Forms\\Simuladores\\frmSimulacaoMapaGPS.cs",
|
||||
"RelativeDocumentMoniker": "AgroBase\\Forms\\Simuladores\\frmSimulacaoMapaGPS.cs",
|
||||
"ToolTip": "C:\\ZendionINC\\agrobot_base\\AgroBase\\AgroBase\\Forms\\Simuladores\\frmSimulacaoMapaGPS.cs",
|
||||
"RelativeToolTip": "AgroBase\\Forms\\Simuladores\\frmSimulacaoMapaGPS.cs",
|
||||
"ViewState": "AQIAAFcAAAAAAAAAAAAIwHQAAAAsAAAA",
|
||||
"Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
|
||||
"WhenOpened": "2025-05-16T13:46:41.52Z",
|
||||
"WhenOpened": "2025-07-30T22:13:15.946Z",
|
||||
"EditorCaption": ""
|
||||
},
|
||||
{
|
||||
"$type": "Document",
|
||||
"DocumentIndex": 6,
|
||||
"Title": "SensoriamentoModel.cs",
|
||||
"DocumentMoniker": "C:\\ZendionINC\\agrobot_base\\AgroBase\\AgroBase\\Models\\Modules\\SensoriamentoModel.cs",
|
||||
"RelativeDocumentMoniker": "AgroBase\\Models\\Modules\\SensoriamentoModel.cs",
|
||||
"ToolTip": "C:\\ZendionINC\\agrobot_base\\AgroBase\\AgroBase\\Models\\Modules\\SensoriamentoModel.cs",
|
||||
"RelativeToolTip": "AgroBase\\Models\\Modules\\SensoriamentoModel.cs",
|
||||
"ViewState": "AQIAAIsDAAAAAAAAAAAcwKkDAAAlAAAA",
|
||||
"DocumentIndex": 5,
|
||||
"Title": "PythonService.cs",
|
||||
"DocumentMoniker": "C:\\ZendionINC\\agrobot_base\\AgroBase\\AgroBase\\Services\\PythonService.cs",
|
||||
"RelativeDocumentMoniker": "AgroBase\\Services\\PythonService.cs",
|
||||
"ToolTip": "C:\\ZendionINC\\agrobot_base\\AgroBase\\AgroBase\\Services\\PythonService.cs",
|
||||
"RelativeToolTip": "AgroBase\\Services\\PythonService.cs",
|
||||
"ViewState": "AQIAAAwAAAAAAAAAAAAYwNMAAAAMAAAA",
|
||||
"Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
|
||||
"WhenOpened": "2025-05-16T12:09:31.074Z",
|
||||
"WhenOpened": "2025-07-30T22:11:44.833Z",
|
||||
"EditorCaption": ""
|
||||
},
|
||||
{
|
||||
"$type": "Document",
|
||||
"DocumentIndex": 3,
|
||||
"Title": "frmInstancial.cs",
|
||||
"DocumentMoniker": "C:\\ZendionINC\\agrobot_base\\AgroBase\\AgroBase\\Forms\\frmInstancial.cs",
|
||||
"RelativeDocumentMoniker": "AgroBase\\Forms\\frmInstancial.cs",
|
||||
"ToolTip": "C:\\ZendionINC\\agrobot_base\\AgroBase\\AgroBase\\Forms\\frmInstancial.cs",
|
||||
"RelativeToolTip": "AgroBase\\Forms\\frmInstancial.cs",
|
||||
"ViewState": "AQIAAAAAAAAAAAAAAAAAACMAAAArAAAA",
|
||||
"Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
|
||||
"WhenOpened": "2025-07-30T22:11:37.87Z",
|
||||
"EditorCaption": ""
|
||||
}
|
||||
]
|
||||
|
|
|
|||
|
|
@ -433,7 +433,7 @@ namespace AgroBase.Forms
|
|||
try
|
||||
{
|
||||
double angulo = Variaveis.OperacaoEmAndamento.SimulacaoAnguloControle;
|
||||
double dif = Variaveis.OperacaoEmAndamento.Sensoriamento.Trajetoria.ErroOrientacaoAngularProximoPonto;
|
||||
double dif = Variaveis.OperacaoEmAndamento.Sensoriamento.Trajetoria?.ErroOrientacaoAngularProximoPonto ?? 0;
|
||||
FuncoesGlobais.DesenharInclinacao((Panel)sender, e, (float)angulo, 90, (float)dif);
|
||||
}
|
||||
catch { }
|
||||
|
|
|
|||
|
|
@ -40,7 +40,7 @@ namespace AgroBase.Forms
|
|||
|
||||
Task.Run(async () =>
|
||||
{
|
||||
await VariaveisOperacao.Operadores.IniciarProcessamento(true);
|
||||
await VariaveisOperacao.Operadores.IniciarProcessamento(false);
|
||||
});
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -184,6 +184,7 @@ namespace AgroBase.Models
|
|||
public LoRaProtocoloTransmissaoCoordenadasModel Coordenadas { get; set; }
|
||||
public LoRaProtocoloTransmissaoSensoresModel Sensores { get; set; }
|
||||
public LoRaProtocoloTransmissaoOperacaoModel Operacao { get; set; }
|
||||
public LoRaProtocoloTransmissaoControleModel Controle { get; set; }
|
||||
}
|
||||
|
||||
public class LoRaProtocoloTransmissaoCoordenadasModel
|
||||
|
|
@ -191,6 +192,12 @@ namespace AgroBase.Models
|
|||
public double Latitude { get; set; }
|
||||
public double Longitude { get; set; }
|
||||
public double Orientacao { get; set; }
|
||||
public double Altitude { get; set; }
|
||||
public double Velocidade { get; set; }
|
||||
public bool Inicializado { get; set; }
|
||||
public TiposCorrecaoGPS Correcao { get; set; }
|
||||
public int NSatelites { get; set; }
|
||||
public double Precisao { get; set; }
|
||||
}
|
||||
|
||||
public class LoRaProtocoloTransmissaoSensoresModel
|
||||
|
|
@ -219,6 +226,15 @@ namespace AgroBase.Models
|
|||
public string TempoEstimado { get; set; }
|
||||
}
|
||||
|
||||
public class LoRaProtocoloTransmissaoControleModel
|
||||
{
|
||||
public Direcao direcao { get; set; }
|
||||
public int percentual_velocidade_sp { get; set; }
|
||||
public TipoMovimentoDirecional tipo_movimento { get; set; }
|
||||
public int angulo_sp { get; set; }
|
||||
public int velocidade_mp { get; set; }
|
||||
}
|
||||
|
||||
public enum LoRaTipoProtocolo
|
||||
{
|
||||
Parametrizacao = 0x00,
|
||||
|
|
|
|||
|
|
@ -668,6 +668,8 @@ namespace AgroBase.Models
|
|||
Variaveis.OperacaoEmAndamento.Controle.PercentualVelocidadeSP = Variaveis.OperacaoEmAndamento.Controle.PercentualVelocidadeMin;
|
||||
|
||||
RedisService.AtualizarCampos(CtxKey.DadosOperacao, ("configurado", false));
|
||||
|
||||
Variaveis.OperacaoEmAndamento.Sensoriamento.AtualizarDados();
|
||||
}
|
||||
|
||||
|
||||
|
|
@ -688,6 +690,8 @@ namespace AgroBase.Models
|
|||
ID = DataInicio.ToString("dd_MM_yyyy_HH_mm_ss");
|
||||
Directory.CreateDirectory(Variaveis.CaminhoOperacoes + ID + "/");
|
||||
|
||||
Sensoriamento.AtualizarDados();
|
||||
|
||||
DispMvd?.Dados?.ReiniciarLeituras(DispMvd?.Dados);
|
||||
DispAtu?.Dados?.ReiniciarLeituras(DispAtu?.Dados);
|
||||
DispSen?.Dados?.ReiniciarLeituras(DispSen?.Dados);
|
||||
|
|
@ -798,6 +802,8 @@ namespace AgroBase.Models
|
|||
|
||||
ID = "";
|
||||
|
||||
Sensoriamento.AtualizarDados();
|
||||
|
||||
DispMvd?.Dados?.ReiniciarLeituras(DispMvd.Dados);
|
||||
DispAtu?.Dados?.ReiniciarLeituras(DispAtu.Dados);
|
||||
DispSen?.Dados?.ReiniciarLeituras(DispSen.Dados);
|
||||
|
|
@ -1418,6 +1424,9 @@ namespace AgroBase.Models
|
|||
|
||||
private double _angulo_sp = 0.0;
|
||||
public double Angulo { get; set; }
|
||||
public int heartbeat { get; set; } = 1;
|
||||
//public int ticks_sem_resposta { get; set; } = 0;
|
||||
public DateTime ticks_sem_resposta { get; set; } = DateTime.MinValue;
|
||||
public int RPM_SP
|
||||
{
|
||||
get
|
||||
|
|
@ -1776,7 +1785,10 @@ namespace AgroBase.Models
|
|||
ErroOrientacaoAngular = _Trajetoria?.ErroOrientacaoAngular ?? 0,
|
||||
ErroOrientacaoAngularCombinado = _Trajetoria?.ErroOrientacaoAngularCombinado ?? 0,
|
||||
ErroOrientacaoAngularCaminho = _Trajetoria?.ErroOrientacaoAngularCaminho ?? 0,
|
||||
ErroOrientacaoAngularProximoPonto = _Trajetoria?.ErroOrientacaoAngularProximoPonto ?? 0
|
||||
ErroOrientacaoAngularProximoPonto = _Trajetoria?.ErroOrientacaoAngularProximoPonto ?? 0,
|
||||
PercentualOperacao = _Trajetoria?.PercentualTrajetoria ?? 0,
|
||||
PercentualRuaAtual = _Trajetoria?.CorredorAtual?.Progresso ?? 0,
|
||||
IdxRuaAtual = _Trajetoria?.CorredorAtual?.Idx ?? 0,
|
||||
};
|
||||
|
||||
var dadosGps = GPSService.UltimaLeitura.Clone();
|
||||
|
|
@ -2021,6 +2033,10 @@ namespace AgroBase.Models
|
|||
public double ErroOrientacaoAngularProximoPonto { get; set; }
|
||||
public double ErroLateralAngular { get; set; }
|
||||
|
||||
public int IdxRuaAtual { get; set; }
|
||||
public double PercentualOperacao { get; set; }
|
||||
public double PercentualRuaAtual { get; set; }
|
||||
|
||||
public OperacaoSensoriamentoLogTrajetoriaModel Clone()
|
||||
{
|
||||
return new OperacaoSensoriamentoLogTrajetoriaModel()
|
||||
|
|
@ -2048,6 +2064,9 @@ namespace AgroBase.Models
|
|||
ProximoPonto = ProximoPonto.Clone(),
|
||||
PontoAtual = PontoAtual.Clone(),
|
||||
PontoMaisProximo = PontoMaisProximo.Clone(),
|
||||
IdxRuaAtual = IdxRuaAtual,
|
||||
PercentualOperacao = PercentualOperacao,
|
||||
PercentualRuaAtual = PercentualRuaAtual,
|
||||
};
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -51,6 +51,7 @@ namespace AgroBase.Models.Operadores
|
|||
public double angulo { get; set; }
|
||||
public TipoMovimentoDirecional tipo_movimento { get; set; }
|
||||
public List<double[]> simulacao { get; set; }
|
||||
public int heartbeat { get; set; }
|
||||
}
|
||||
|
||||
public class ManagerWorkerMessageResponseModulosPendentesModel
|
||||
|
|
|
|||
|
|
@ -52,8 +52,8 @@ namespace AgroBase.Models.Operadores
|
|||
return new WeedWorkerAnaliseModel()
|
||||
{
|
||||
timestamp = timestamp,
|
||||
deteccoes = new List<WeedWorkerAnaliseDeteccaoModel>(deteccoes),
|
||||
controle = new Dictionary<int, bool>(controle),
|
||||
deteccoes = new List<WeedWorkerAnaliseDeteccaoModel>(deteccoes ?? new List<WeedWorkerAnaliseDeteccaoModel>()),
|
||||
controle = new Dictionary<int, bool>(controle ?? new Dictionary<int, bool>()),
|
||||
ervas_identificadas = ervas_identificadas?.Select(dict => new Dictionary<string, int>(dict)).ToList(),
|
||||
height = height,
|
||||
width = width,
|
||||
|
|
|
|||
|
|
@ -1,6 +1,7 @@
|
|||
using AgroBase.Models.Operadores;
|
||||
using AgroBase.Services;
|
||||
using Newtonsoft.Json;
|
||||
using Newtonsoft.Json.Linq;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
|
|
@ -673,7 +674,84 @@ namespace AgroBase.Models
|
|||
|
||||
//Variaveis.OperacaoEmAndamento.AtualizaInformacoesControleOperacao();
|
||||
|
||||
RedisService.Publish(CmdKey.ManagerWorkerRx, JsonConvert.SerializeObject(new { cmd = ManagerWorkerCommandType.AtualizarDadosControle }));
|
||||
//RedisService.Publish(CmdKey.ManagerWorkerRx, JsonConvert.SerializeObject(new { cmd = ManagerWorkerCommandType.AtualizarDadosControle }));
|
||||
|
||||
AtualizarDadosControleRedis();
|
||||
}
|
||||
|
||||
private void AtualizarDadosControleRedis()
|
||||
{
|
||||
int min_ticks_sem_resposta = 500;
|
||||
int max_ticks_sem_resposta = 2000;
|
||||
ManagerWorkerMessageResponseComandoModel novoComando = null;
|
||||
try
|
||||
{
|
||||
string controleStr = RedisService.Get(CtxKey.DadosControle);
|
||||
var dictParams = JObject.Parse(controleStr);
|
||||
dictParams.TryGetValue("angulo_sp", out var _angulo);
|
||||
dictParams.TryGetValue("velocidade_sp", out var _velocidade);
|
||||
dictParams.TryGetValue("tipo_movimento_direcional", out var _movimento);
|
||||
dictParams.TryGetValue("simulacao", out var _simulacao);
|
||||
dictParams.TryGetValue("heartbeat", out var _heartbeat);
|
||||
novoComando = new ManagerWorkerMessageResponseComandoModel()
|
||||
{
|
||||
angulo = Convert.ToDouble(_angulo),
|
||||
percentual_velocidade = Convert.ToDouble(_velocidade),
|
||||
tipo_movimento = (TipoMovimentoDirecional)Convert.ToInt32(_movimento),
|
||||
simulacao = JsonConvert.DeserializeObject<List<double[]>>((_simulacao ?? "").ToString()),
|
||||
heartbeat = Convert.ToInt32(_heartbeat)
|
||||
};
|
||||
}
|
||||
catch (Exception ex)
|
||||
{
|
||||
//MostrarLog($"Erro ao receber novo comando: {ex.Message}");
|
||||
}
|
||||
|
||||
DateTime agora = DateTime.Now;
|
||||
|
||||
var _Controle = Variaveis.OperacaoEmAndamento.Controle;
|
||||
bool comandoMudou = (_Controle.Angulo != novoComando.angulo || _Controle.PercentualVelocidadeSP != novoComando.percentual_velocidade || _Controle.TipoMovimento != novoComando.tipo_movimento);
|
||||
bool mangerDestravou = (_Controle.ticks_sem_resposta.AddMilliseconds(min_ticks_sem_resposta) < agora && novoComando.heartbeat != _Controle.heartbeat);
|
||||
if (novoComando != null && (comandoMudou || mangerDestravou))
|
||||
{
|
||||
_Controle.Angulo = novoComando.angulo;
|
||||
_Controle.TipoMovimento = novoComando.tipo_movimento;
|
||||
_Controle.PercentualVelocidadeSP = novoComando.percentual_velocidade;
|
||||
_Controle.SimulacaoMPC = novoComando.simulacao?.Select(x => new MPCSimulacaoModel() { latitude = x[0], longitude = x[1], orientacao = x[2] }).ToList() ?? new List<MPCSimulacaoModel>();
|
||||
Variaveis.OperacaoEmAndamento.AtualizaInformacoesControleOperacao();
|
||||
}
|
||||
|
||||
if (novoComando.heartbeat == _Controle.heartbeat)
|
||||
{
|
||||
if (_Controle.ticks_sem_resposta == DateTime.MinValue)
|
||||
{
|
||||
_Controle.ticks_sem_resposta = agora;
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
_Controle.ticks_sem_resposta = DateTime.MinValue;
|
||||
}
|
||||
_Controle.heartbeat = novoComando.heartbeat;
|
||||
if (_Controle.ticks_sem_resposta != DateTime.MinValue)
|
||||
{
|
||||
if (_Controle.ticks_sem_resposta.AddMilliseconds(max_ticks_sem_resposta) < agora)
|
||||
{
|
||||
Console.WriteLine("Muito tempo sem receber novo comando do Manager Worker! Parando Movimento!");
|
||||
RedisService.AtualizarCampos(
|
||||
CtxKey.DadosControle,
|
||||
("velocidade_sp", 0)
|
||||
);
|
||||
}
|
||||
else if (_Controle.ticks_sem_resposta.AddMilliseconds(min_ticks_sem_resposta) < agora)
|
||||
{
|
||||
Console.WriteLine("Muito tempo sem receber novo comando do Manager Worker! Reduzindo Velocidade!");
|
||||
RedisService.AtualizarCampos(
|
||||
CtxKey.DadosControle,
|
||||
("velocidade_sp", _Controle.PercentualVelocidadeMin)
|
||||
);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
|
|
|||
|
|
@ -379,7 +379,12 @@ namespace AgroBase.Services
|
|||
equipamento = new LoRaProtocoloTransmissaoModel()
|
||||
{
|
||||
EnderecoCarro = remetente,
|
||||
Coordenadas = new LoRaProtocoloTransmissaoCoordenadasModel()
|
||||
Coordenadas = new LoRaProtocoloTransmissaoCoordenadasModel(),
|
||||
CodigoFalha = 0,
|
||||
Momento = DateTime.Now,
|
||||
Operacao = new LoRaProtocoloTransmissaoOperacaoModel(),
|
||||
Sensores = new LoRaProtocoloTransmissaoSensoresModel(),
|
||||
RecebidoEm = DateTime.Now,
|
||||
};
|
||||
LeituraDadosOperacao.Add(equipamento);
|
||||
}
|
||||
|
|
@ -404,6 +409,50 @@ namespace AgroBase.Services
|
|||
double _velocidade = LoRaSerializer.DescompactarDecimal(dados, 4);
|
||||
double _orientacao = LoRaSerializer.DescompactarDecimal(dados, 6);
|
||||
equipamento.Coordenadas.Orientacao = _orientacao;
|
||||
equipamento.Coordenadas.Altitude = _altitude;
|
||||
equipamento.Coordenadas.Velocidade = _velocidade;
|
||||
break;
|
||||
}
|
||||
case DadosLoRaParse.GpsQualidade:
|
||||
{
|
||||
bool _inicializado = dados[2] == 1;
|
||||
TiposCorrecaoGPS _fix = (TiposCorrecaoGPS)((int)dados[3]);
|
||||
int _n_satelites = (int)dados[4];
|
||||
double _precisao = LoRaSerializer.DescompactarDecimal(dados, 5);
|
||||
equipamento.Coordenadas.Inicializado = _inicializado;
|
||||
equipamento.Coordenadas.Correcao = _fix;
|
||||
equipamento.Coordenadas.NSatelites = _n_satelites;
|
||||
equipamento.Coordenadas.Precisao = _precisao;
|
||||
break;
|
||||
}
|
||||
case DadosLoRaParse.ComandoControle:
|
||||
{
|
||||
Direcao _direcao = (Direcao)((int)dados[2]);
|
||||
int _velocidade_sp =(int)dados[3];
|
||||
TipoMovimentoDirecional _tipo = (TipoMovimentoDirecional)((int)dados[4]);
|
||||
int _angulo_sp = (int)dados[5];
|
||||
int _velocidade_mp = (int)dados[6];
|
||||
|
||||
equipamento.Controle.direcao = _direcao;
|
||||
equipamento.Controle.percentual_velocidade_sp = _velocidade_sp;
|
||||
equipamento.Controle.tipo_movimento = _tipo;
|
||||
equipamento.Controle.angulo_sp = _angulo_sp;
|
||||
equipamento.Controle.velocidade_mp = _velocidade_mp;
|
||||
break;
|
||||
}
|
||||
case DadosLoRaParse.DadosOperacao:
|
||||
{
|
||||
StatusOperacao _status_operacao = (StatusOperacao)((int)dados[2]);
|
||||
StatusCarroMapa _status_carro = (StatusCarroMapa)((int)dados[3]);
|
||||
int _percentual_operacao = (int)dados[4];
|
||||
int _percentual_rua = (int)dados[5];
|
||||
int _idx_rua = (int)dados[6];
|
||||
|
||||
equipamento.Operacao.statusOperacao = _status_operacao;
|
||||
equipamento.Operacao.statusCarro = _status_carro;
|
||||
equipamento.Operacao.PercentualOperacao = _percentual_operacao;
|
||||
equipamento.Operacao.PercentualRua = _percentual_rua;
|
||||
equipamento.Operacao.idxRuaAtual = _idx_rua;
|
||||
break;
|
||||
}
|
||||
case DadosLoRaParse.DadosControle:
|
||||
|
|
|
|||
|
|
@ -102,6 +102,12 @@ namespace AgroBase.Services
|
|||
{
|
||||
var _Sensoriamento = Variaveis.OperacaoEmAndamento.Sensoriamento;
|
||||
|
||||
List<byte[]> dadosOperacao = LoRaSerializer.SerializeOperacao(_Sensoriamento);
|
||||
foreach (var dado in dadosOperacao)
|
||||
{
|
||||
Variaveis.LoraService?.EnviarDadosLoRaViaCAN(dado);
|
||||
}
|
||||
|
||||
List<byte[]> dadosGps = LoRaSerializer.SerializeGPS(_Sensoriamento.Gps);
|
||||
foreach (var dado in dadosGps)
|
||||
{
|
||||
|
|
@ -122,6 +128,7 @@ namespace AgroBase.Services
|
|||
GpsGerais = (int)CanMessagePosicaoDados.Command6,
|
||||
ComandoControle = (int)CanMessagePosicaoDados.Command7,
|
||||
DadosControle = (int)CanMessagePosicaoDados.Command8,
|
||||
DadosOperacao = (int)CanMessagePosicaoDados.Command9,
|
||||
}
|
||||
|
||||
public enum LoRaCaracteresEspeciais
|
||||
|
|
|
|||
|
|
@ -2,7 +2,6 @@
|
|||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using System.Numerics;
|
||||
using System.Text;
|
||||
using System.Windows.Forms;
|
||||
using static AgroBase.Models.Enums;
|
||||
|
|
@ -301,6 +300,23 @@ namespace AgroBase.Services
|
|||
return dados.ToArray();
|
||||
}
|
||||
|
||||
public static List<byte[]> SerializeOperacao(OperacaoSensoriamentoLogModel sensoriamento)
|
||||
{
|
||||
List<byte> operacao = new List<byte>();
|
||||
operacao.AddRange(CanPrefix(DadosLoRaParse.DadosOperacao));
|
||||
operacao.Add((byte)(sensoriamento.StatusOperacao)); // 1 byte
|
||||
operacao.Add((byte)sensoriamento.Trajetoria.StatusCarro); // 1 byte
|
||||
operacao.Add((byte)sensoriamento.Trajetoria.PercentualOperacao); // 1 byte
|
||||
operacao.Add((byte)sensoriamento.Trajetoria.PercentualRuaAtual); // 1 byte
|
||||
operacao.Add((byte)sensoriamento.Trajetoria.IdxRuaAtual); // 1 byte
|
||||
|
||||
return new List<byte[]>()
|
||||
{
|
||||
operacao.ToArray(),
|
||||
};
|
||||
}
|
||||
|
||||
|
||||
private static byte[] CompactarDecimal(double precisaoCm)
|
||||
{
|
||||
ushort valor = (ushort)Math.Round(precisaoCm); // Arredonda para inteiro
|
||||
|
|
|
|||
|
|
@ -57,12 +57,14 @@ namespace AgroBase.Services.Operadores
|
|||
dictParams.TryGetValue("velocidade_sp", out object _velocidade);
|
||||
dictParams.TryGetValue("tipo_movimento_direcional", out object _movimento);
|
||||
dictParams.TryGetValue("simulacao", out object _simulacao);
|
||||
dictParams.TryGetValue("heartbeat", out object _heartbeat);
|
||||
novoComando = new ManagerWorkerMessageResponseComandoModel()
|
||||
{
|
||||
angulo = Convert.ToDouble(_angulo),
|
||||
percentual_velocidade = Convert.ToDouble(_velocidade),
|
||||
tipo_movimento = (Enums.TipoMovimentoDirecional)Convert.ToInt32(_movimento),
|
||||
simulacao = JsonConvert.DeserializeObject<List<double[]>>((_simulacao ?? "").ToString())
|
||||
simulacao = JsonConvert.DeserializeObject<List<double[]>>((_simulacao ?? "").ToString()),
|
||||
heartbeat = Convert.ToInt32(_heartbeat)
|
||||
};
|
||||
}
|
||||
catch (Exception ex)
|
||||
|
|
|
|||
|
|
@ -69,11 +69,11 @@ namespace AgroBase.Services.Operadores
|
|||
|
||||
private async Task tmrHearthbeat_Tick()
|
||||
{
|
||||
Conectado = true;
|
||||
Conectado = false;
|
||||
foreach (var worker in Workers)
|
||||
{
|
||||
worker.AtualizarSaude();
|
||||
Conectado &= worker.Saude.conectado;
|
||||
Conectado |= worker.Saude.conectado;
|
||||
}
|
||||
|
||||
if (!Conectado)
|
||||
|
|
|
|||
|
|
@ -209,7 +209,7 @@ namespace AgroBase.Services
|
|||
|
||||
public static void EncerrarProcessos(int processId = -1)
|
||||
{
|
||||
//return;
|
||||
return;
|
||||
foreach (var processo in Process.GetProcessesByName("python"))
|
||||
{
|
||||
try
|
||||
|
|
|
|||
Binary file not shown.
Binary file not shown.
|
|
@ -22,5 +22,5 @@
|
|||
"top_topics_and_observing_domains": [ ]
|
||||
} ],
|
||||
"hex_encoded_hmac_key": "40F346D3248C3AFDF2BEE1FE496DBD32F7CED6E5AE98B881ABC421AA7E7B5642",
|
||||
"next_scheduled_calculation_time": "13398455528649568"
|
||||
"next_scheduled_calculation_time": "13398455528649993"
|
||||
}
|
||||
|
|
|
|||
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
|
|
@ -1,3 +1,3 @@
|
|||
2025/07/30-13:45:05.219 7cc4 Reusing MANIFEST C:\ZendionInc\agrobot_base\AgroBase\AgroBase\bin\x64\Debug\AgroBase.exe.WebView2\EBWebView\Default\Local Storage\leveldb/MANIFEST-000001
|
||||
2025/07/30-13:45:05.225 7cc4 Recovering log #3
|
||||
2025/07/30-13:45:05.228 7cc4 Reusing old log C:\ZendionInc\agrobot_base\AgroBase\AgroBase\bin\x64\Debug\AgroBase.exe.WebView2\EBWebView\Default\Local Storage\leveldb/000003.log
|
||||
2025/07/30-21:33:49.609 56e4 Reusing MANIFEST C:\ZendionINC\agrobot_base\AgroBase\AgroBase\bin\x64\Debug\AgroBase.exe.WebView2\EBWebView\Default\Local Storage\leveldb/MANIFEST-000001
|
||||
2025/07/30-21:33:49.618 56e4 Recovering log #3
|
||||
2025/07/30-21:33:49.621 56e4 Reusing old log C:\ZendionINC\agrobot_base\AgroBase\AgroBase\bin\x64\Debug\AgroBase.exe.WebView2\EBWebView\Default\Local Storage\leveldb/000003.log
|
||||
|
|
|
|||
|
|
@ -1,3 +1,3 @@
|
|||
2025/07/30-13:29:47.201 865c Reusing MANIFEST C:\ZendionInc\agrobot_base\AgroBase\AgroBase\bin\x64\Debug\AgroBase.exe.WebView2\EBWebView\Default\Local Storage\leveldb/MANIFEST-000001
|
||||
2025/07/30-13:29:47.207 865c Recovering log #3
|
||||
2025/07/30-13:29:47.212 865c Reusing old log C:\ZendionInc\agrobot_base\AgroBase\AgroBase\bin\x64\Debug\AgroBase.exe.WebView2\EBWebView\Default\Local Storage\leveldb/000003.log
|
||||
2025/07/30-21:19:10.001 514 Reusing MANIFEST C:\ZendionINC\agrobot_base\AgroBase\AgroBase\bin\x64\Debug\AgroBase.exe.WebView2\EBWebView\Default\Local Storage\leveldb/MANIFEST-000001
|
||||
2025/07/30-21:19:10.034 514 Recovering log #3
|
||||
2025/07/30-21:19:10.037 514 Reusing old log C:\ZendionINC\agrobot_base\AgroBase\AgroBase\bin\x64\Debug\AgroBase.exe.WebView2\EBWebView\Default\Local Storage\leveldb/000003.log
|
||||
|
|
|
|||
|
|
@ -1 +1 @@
|
|||
{"net":{"http_server_properties":{"servers":[{"alternative_service":[{"advertised_alpns":["h3"],"expiration":"13398454400339748","port":443,"protocol_str":"quic"}],"anonymization":["DAAAAAcAAABmaWxlOi8vAA==",false,0],"network_stats":{"srtt":16690},"server":"https://tile.openstreetmap.org","supports_spdy":true}],"supports_quic":{"address":"2804:d78:609:f200:c506:7fc8:b135:b811","used_quic":true},"version":5},"network_qualities":{"CAASABiAgICA+P////8B":"4G","CAESABiAgICA+P////8B":"4G","CAISABiAgICA+P////8B":"4G","CAYSABiAgICA+P////8B":"Offline"}}}
|
||||
{"net":{"http_server_properties":{"servers":[{"alternative_service":[{"advertised_alpns":["h3"],"expiration":"13398482057963342","port":443,"protocol_str":"quic"}],"anonymization":["DAAAAAcAAABmaWxlOi8vAA==",false,0],"network_stats":{"srtt":11735},"server":"https://tile.openstreetmap.org","supports_spdy":true}],"supports_quic":{"address":"192.168.1.10","used_quic":true},"version":5},"network_qualities":{"CAASABiAgICA+P////8B":"4G","CAESABiAgICA+P////8B":"4G","CAISABiAgICA+P////8B":"4G","CAYSABiAgICA+P////8B":"Offline"}}}
|
||||
|
|
@ -1 +1 @@
|
|||
{"sts":[{"expiry":1785430400.33992,"host":"bWGAftl61rqoc0YzqPncsLvQQh/iC2Bdp3ejUeGC83w=","mode":"force-https","sts_include_subdomains":true,"sts_observed":1753894400.339923}],"version":2}
|
||||
{"sts":[{"expiry":1785458055.97563,"host":"bWGAftl61rqoc0YzqPncsLvQQh/iC2Bdp3ejUeGC83w=","mode":"force-https","sts_include_subdomains":true,"sts_observed":1753922055.975635}],"version":2}
|
||||
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
|
|
@ -1,3 +1,3 @@
|
|||
2025/07/30-13:55:20.640 7cc4 Reusing MANIFEST C:\ZendionInc\agrobot_base\AgroBase\AgroBase\bin\x64\Debug\AgroBase.exe.WebView2\EBWebView\Default\Session Storage/MANIFEST-000001
|
||||
2025/07/30-13:55:20.641 7cc4 Recovering log #3
|
||||
2025/07/30-13:55:20.644 7cc4 Reusing old log C:\ZendionInc\agrobot_base\AgroBase\AgroBase\bin\x64\Debug\AgroBase.exe.WebView2\EBWebView\Default\Session Storage/000003.log
|
||||
2025/07/30-21:42:34.039 5418 Reusing MANIFEST C:\ZendionINC\agrobot_base\AgroBase\AgroBase\bin\x64\Debug\AgroBase.exe.WebView2\EBWebView\Default\Session Storage/MANIFEST-000001
|
||||
2025/07/30-21:42:34.041 5418 Recovering log #3
|
||||
2025/07/30-21:42:34.045 5418 Reusing old log C:\ZendionINC\agrobot_base\AgroBase\AgroBase\bin\x64\Debug\AgroBase.exe.WebView2\EBWebView\Default\Session Storage/000003.log
|
||||
|
|
|
|||
|
|
@ -1,3 +1,3 @@
|
|||
2025/07/30-13:30:08.915 865c Reusing MANIFEST C:\ZendionInc\agrobot_base\AgroBase\AgroBase\bin\x64\Debug\AgroBase.exe.WebView2\EBWebView\Default\Session Storage/MANIFEST-000001
|
||||
2025/07/30-13:30:08.916 865c Recovering log #3
|
||||
2025/07/30-13:30:08.919 865c Reusing old log C:\ZendionInc\agrobot_base\AgroBase\AgroBase\bin\x64\Debug\AgroBase.exe.WebView2\EBWebView\Default\Session Storage/000003.log
|
||||
2025/07/30-21:28:06.850 514 Reusing MANIFEST C:\ZendionINC\agrobot_base\AgroBase\AgroBase\bin\x64\Debug\AgroBase.exe.WebView2\EBWebView\Default\Session Storage/MANIFEST-000001
|
||||
2025/07/30-21:28:06.855 514 Recovering log #3
|
||||
2025/07/30-21:28:06.864 514 Reusing old log C:\ZendionINC\agrobot_base\AgroBase\AgroBase\bin\x64\Debug\AgroBase.exe.WebView2\EBWebView\Default\Session Storage/000003.log
|
||||
|
|
|
|||
|
|
@ -1,3 +1,3 @@
|
|||
2025/07/30-13:45:05.146 2cb0 Reusing MANIFEST C:\ZendionInc\agrobot_base\AgroBase\AgroBase\bin\x64\Debug\AgroBase.exe.WebView2\EBWebView\Default\Site Characteristics Database/MANIFEST-000001
|
||||
2025/07/30-13:45:05.147 2cb0 Recovering log #7
|
||||
2025/07/30-13:45:05.148 2cb0 Reusing old log C:\ZendionInc\agrobot_base\AgroBase\AgroBase\bin\x64\Debug\AgroBase.exe.WebView2\EBWebView\Default\Site Characteristics Database/000007.log
|
||||
2025/07/30-21:33:49.527 1e74 Reusing MANIFEST C:\ZendionINC\agrobot_base\AgroBase\AgroBase\bin\x64\Debug\AgroBase.exe.WebView2\EBWebView\Default\Site Characteristics Database/MANIFEST-000001
|
||||
2025/07/30-21:33:49.529 1e74 Recovering log #12
|
||||
2025/07/30-21:33:49.529 1e74 Reusing old log C:\ZendionINC\agrobot_base\AgroBase\AgroBase\bin\x64\Debug\AgroBase.exe.WebView2\EBWebView\Default\Site Characteristics Database/000012.log
|
||||
|
|
|
|||
|
|
@ -1,3 +1,3 @@
|
|||
2025/07/30-13:29:47.127 741c Reusing MANIFEST C:\ZendionInc\agrobot_base\AgroBase\AgroBase\bin\x64\Debug\AgroBase.exe.WebView2\EBWebView\Default\Site Characteristics Database/MANIFEST-000001
|
||||
2025/07/30-13:29:47.129 741c Recovering log #7
|
||||
2025/07/30-13:29:47.130 741c Reusing old log C:\ZendionInc\agrobot_base\AgroBase\AgroBase\bin\x64\Debug\AgroBase.exe.WebView2\EBWebView\Default\Site Characteristics Database/000007.log
|
||||
2025/07/30-21:19:09.902 3b4c Reusing MANIFEST C:\ZendionINC\agrobot_base\AgroBase\AgroBase\bin\x64\Debug\AgroBase.exe.WebView2\EBWebView\Default\Site Characteristics Database/MANIFEST-000001
|
||||
2025/07/30-21:19:09.904 3b4c Recovering log #12
|
||||
2025/07/30-21:19:09.904 3b4c Reusing old log C:\ZendionINC\agrobot_base\AgroBase\AgroBase\bin\x64\Debug\AgroBase.exe.WebView2\EBWebView\Default\Site Characteristics Database/000012.log
|
||||
|
|
|
|||
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
File diff suppressed because one or more lines are too long
Binary file not shown.
Binary file not shown.
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
|
|
@ -23,7 +23,7 @@ class ManagerWorker:
|
|||
self.definir_processador()
|
||||
if self.processador:
|
||||
comando = self.processador.processar()
|
||||
if comando is not None:
|
||||
if comando is not None and False:
|
||||
ContextoGlobalRedis.publicar_comando(CmdKey.ManagerWorkerTx, { "cmd": ManagerWorkerCommandType.EnviarDadosControle.value, "params": comando })
|
||||
else:
|
||||
mostrar_log("Processador nao definido")
|
||||
|
|
|
|||
|
|
@ -21,7 +21,7 @@ def main():
|
|||
manager.executar()
|
||||
|
||||
manager = ManagerWorker()
|
||||
fila = WorkerFilaMensagens("controle", fila_callback, 1, True, 120)
|
||||
fila = WorkerFilaMensagens("controle", fila_callback, 1, True, 100)
|
||||
|
||||
frequencia_loop = 5 # hz
|
||||
|
||||
|
|
@ -33,8 +33,8 @@ def main():
|
|||
t0 = agora
|
||||
latencia = 0.0
|
||||
try:
|
||||
pass
|
||||
#latencia = manager.executar()
|
||||
#pass
|
||||
latencia = manager.executar()
|
||||
except KeyboardInterrupt:
|
||||
mostrar_log("🛑 Encerrando Manager Worker...")
|
||||
break
|
||||
|
|
@ -49,8 +49,8 @@ def main():
|
|||
latencia=latencia
|
||||
)
|
||||
|
||||
#delay_corrigido = max(0, (1.0 / frequencia_loop) - latencia)
|
||||
time.sleep(0.1)
|
||||
delay_corrigido = max(0, (1.0 / frequencia_loop) - latencia) # 0.1
|
||||
time.sleep(delay_corrigido)
|
||||
|
||||
def redis_callback(dados):
|
||||
acao = ManagerWorkerCommandType(dados.get("cmd", 0))
|
||||
|
|
@ -65,6 +65,7 @@ def main():
|
|||
#mostrar_log("Adicionado na fila")
|
||||
fila.adicionar(acao)
|
||||
#manager.executar()
|
||||
pass
|
||||
else:
|
||||
mostrar_log(f"⚠️ Comando desconhecido: {acao.name}")
|
||||
|
||||
|
|
|
|||
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
|
|
@ -4,18 +4,21 @@ from manager_worker.config import mostrar_log
|
|||
from shared.contexto_global_redis import ContextoGlobalRedis, CtxKey
|
||||
|
||||
def comando_controle(percentual_velocidade: float, angulo: float, tipo_movimento: int, simulacao = []):
|
||||
heartbeat = 1 if ContextoGlobalRedis.get_controle().get("heartbeat", 0) == 0 else 0
|
||||
ContextoGlobalRedis.atualizar_ctx_dict(
|
||||
CtxKey.DadosControle,
|
||||
angulo_sp=angulo,
|
||||
tipo_movimento_direcional=tipo_movimento,
|
||||
velocidade_sp=percentual_velocidade,
|
||||
simulacao=simulacao
|
||||
simulacao=simulacao,
|
||||
heartbeat=heartbeat
|
||||
)
|
||||
return {
|
||||
"velocidade_sp": percentual_velocidade,
|
||||
"angulo_sp": angulo,
|
||||
"tipo_movimento_direcional": tipo_movimento,
|
||||
"simulacao": simulacao
|
||||
"simulacao": simulacao,
|
||||
"heartbeat": heartbeat
|
||||
}
|
||||
|
||||
def comando_parado():
|
||||
|
|
|
|||
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in New Issue