ajustado controle direcional
This commit is contained in:
parent
d95257ff2a
commit
63058b5abf
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.
|
|
@ -3,20 +3,20 @@
|
|||
"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\\forms\\frmmapa.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}|Form",
|
||||
"RelativeMoniker": "D:0:0:{C54B41C0-1D21-4E3E-949E-0F86BBC86A33}|AgroBase\\AgroBase.csproj|solutionrelative:agrobase\\forms\\frmmapa.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\\models\\generaljoystick.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
|
||||
"RelativeMoniker": "D:0:0:{C54B41C0-1D21-4E3E-949E-0F86BBC86A33}|AgroBase\\AgroBase.csproj|solutionrelative:agrobase\\models\\generaljoystick.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\\frmmapa.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
|
||||
"RelativeMoniker": "D:0:0:{C54B41C0-1D21-4E3E-949E-0F86BBC86A33}|AgroBase\\AgroBase.csproj|solutionrelative:agrobase\\forms\\frmmapa.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\\movimentacaounificadomodel.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
|
||||
"RelativeMoniker": "D:0:0:{C54B41C0-1D21-4E3E-949E-0F86BBC86A33}|AgroBase\\AgroBase.csproj|solutionrelative:agrobase\\models\\modules\\movimentacaounificadomodel.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\\frmgps.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
|
||||
"RelativeMoniker": "D:0:0:{C54B41C0-1D21-4E3E-949E-0F86BBC86A33}|AgroBase\\AgroBase.csproj|solutionrelative:agrobase\\forms\\frmgps.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\\frmacompanhamento.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
|
||||
"RelativeMoniker": "D:0:0:{C54B41C0-1D21-4E3E-949E-0F86BBC86A33}|AgroBase\\AgroBase.csproj|solutionrelative:agrobase\\forms\\frmacompanhamento.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\\frmgps.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}|Form",
|
||||
"RelativeMoniker": "D:0:0:{C54B41C0-1D21-4E3E-949E-0F86BBC86A33}|AgroBase\\AgroBase.csproj|solutionrelative:agrobase\\forms\\frmgps.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\\services\\mks057dservice.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
|
||||
"RelativeMoniker": "D:0:0:{C54B41C0-1D21-4E3E-949E-0F86BBC86A33}|AgroBase\\AgroBase.csproj|solutionrelative:agrobase\\services\\mks057dservice.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
|
||||
}
|
||||
],
|
||||
"DocumentGroupContainers": [
|
||||
|
|
@ -26,57 +26,59 @@
|
|||
"DocumentGroups": [
|
||||
{
|
||||
"DockedWidth": 200,
|
||||
"SelectedChildIndex": 3,
|
||||
"SelectedChildIndex": 1,
|
||||
"Children": [
|
||||
{
|
||||
"$type": "Document",
|
||||
"DocumentIndex": 2,
|
||||
"Title": "frmGPS.cs",
|
||||
"DocumentMoniker": "C:\\ZendionINC\\agrobot_base\\AgroBase\\AgroBase\\Forms\\frmGPS.cs",
|
||||
"RelativeDocumentMoniker": "AgroBase\\Forms\\frmGPS.cs",
|
||||
"ToolTip": "C:\\ZendionINC\\agrobot_base\\AgroBase\\AgroBase\\Forms\\frmGPS.cs",
|
||||
"RelativeToolTip": "AgroBase\\Forms\\frmGPS.cs",
|
||||
"ViewState": "AQIAABMAAAAAAAAAAAAwwFMAAAB1AAAA",
|
||||
"Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
|
||||
"WhenOpened": "2025-02-06T23:36:23.855Z",
|
||||
"EditorCaption": ""
|
||||
},
|
||||
{
|
||||
"$type": "Document",
|
||||
"DocumentIndex": 3,
|
||||
"Title": "frmGPS.cs [Design]",
|
||||
"DocumentMoniker": "C:\\ZendionINC\\agrobot_base\\AgroBase\\AgroBase\\Forms\\frmGPS.cs",
|
||||
"RelativeDocumentMoniker": "AgroBase\\Forms\\frmGPS.cs",
|
||||
"ToolTip": "C:\\ZendionINC\\agrobot_base\\AgroBase\\AgroBase\\Forms\\frmGPS.cs [Design]",
|
||||
"RelativeToolTip": "AgroBase\\Forms\\frmGPS.cs [Design]",
|
||||
"Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
|
||||
"WhenOpened": "2025-02-06T23:32:18.176Z",
|
||||
"EditorCaption": " [Design]"
|
||||
},
|
||||
{
|
||||
"$type": "Document",
|
||||
"DocumentIndex": 1,
|
||||
"Title": "frmMapa.cs",
|
||||
"DocumentMoniker": "C:\\ZendionINC\\agrobot_base\\AgroBase\\AgroBase\\Forms\\frmMapa.cs",
|
||||
"RelativeDocumentMoniker": "AgroBase\\Forms\\frmMapa.cs",
|
||||
"ToolTip": "C:\\ZendionINC\\agrobot_base\\AgroBase\\AgroBase\\Forms\\frmMapa.cs",
|
||||
"RelativeToolTip": "AgroBase\\Forms\\frmMapa.cs",
|
||||
"ViewState": "AQIAAI0AAAAAAAAAAAAqwJwAAAAuAAAA",
|
||||
"Title": "MovimentacaoUnificadoModel.cs",
|
||||
"DocumentMoniker": "C:\\ZendionINC\\agrobot_base\\AgroBase\\AgroBase\\Models\\Modules\\MovimentacaoUnificadoModel.cs",
|
||||
"RelativeDocumentMoniker": "AgroBase\\Models\\Modules\\MovimentacaoUnificadoModel.cs",
|
||||
"ToolTip": "C:\\ZendionINC\\agrobot_base\\AgroBase\\AgroBase\\Models\\Modules\\MovimentacaoUnificadoModel.cs",
|
||||
"RelativeToolTip": "AgroBase\\Models\\Modules\\MovimentacaoUnificadoModel.cs",
|
||||
"ViewState": "AQIAAF4CAAAAAAAAAAAhwBEEAAAuAAAA",
|
||||
"Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
|
||||
"WhenOpened": "2025-02-06T17:31:27.011Z",
|
||||
"WhenOpened": "2025-03-05T18:33:00.132Z",
|
||||
"EditorCaption": ""
|
||||
},
|
||||
{
|
||||
"$type": "Document",
|
||||
"DocumentIndex": 0,
|
||||
"Title": "frmMapa.cs [Design]",
|
||||
"DocumentMoniker": "C:\\ZendionINC\\agrobot_base\\AgroBase\\AgroBase\\Forms\\frmMapa.cs",
|
||||
"RelativeDocumentMoniker": "AgroBase\\Forms\\frmMapa.cs",
|
||||
"ToolTip": "C:\\ZendionINC\\agrobot_base\\AgroBase\\AgroBase\\Forms\\frmMapa.cs [Design]",
|
||||
"RelativeToolTip": "AgroBase\\Forms\\frmMapa.cs [Design]",
|
||||
"Title": "GeneralJoystick.cs",
|
||||
"DocumentMoniker": "C:\\ZendionINC\\agrobot_base\\AgroBase\\AgroBase\\Models\\GeneralJoystick.cs",
|
||||
"RelativeDocumentMoniker": "AgroBase\\Models\\GeneralJoystick.cs",
|
||||
"ToolTip": "C:\\ZendionINC\\agrobot_base\\AgroBase\\AgroBase\\Models\\GeneralJoystick.cs",
|
||||
"RelativeToolTip": "AgroBase\\Models\\GeneralJoystick.cs",
|
||||
"ViewState": "AQIAAFYCAAAAAAAAAAASwHgCAABgAAAA",
|
||||
"Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
|
||||
"WhenOpened": "2025-02-06T17:31:25.372Z",
|
||||
"EditorCaption": " [Design]"
|
||||
"WhenOpened": "2025-03-05T16:35:13.298Z",
|
||||
"EditorCaption": ""
|
||||
},
|
||||
{
|
||||
"$type": "Document",
|
||||
"DocumentIndex": 3,
|
||||
"Title": "MKS057DService.cs",
|
||||
"DocumentMoniker": "C:\\ZendionINC\\agrobot_base\\AgroBase\\AgroBase\\Services\\MKS057DService.cs",
|
||||
"RelativeDocumentMoniker": "AgroBase\\Services\\MKS057DService.cs",
|
||||
"ToolTip": "C:\\ZendionINC\\agrobot_base\\AgroBase\\AgroBase\\Services\\MKS057DService.cs",
|
||||
"RelativeToolTip": "AgroBase\\Services\\MKS057DService.cs",
|
||||
"ViewState": "AQIAAOwBAAAAAAAAAAAlwBkCAAANAAAA",
|
||||
"Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
|
||||
"WhenOpened": "2025-03-05T13:29:23.053Z",
|
||||
"EditorCaption": ""
|
||||
},
|
||||
{
|
||||
"$type": "Document",
|
||||
"DocumentIndex": 2,
|
||||
"Title": "frmAcompanhamento.cs",
|
||||
"DocumentMoniker": "C:\\ZendionINC\\agrobot_base\\AgroBase\\AgroBase\\Forms\\frmAcompanhamento.cs",
|
||||
"RelativeDocumentMoniker": "AgroBase\\Forms\\frmAcompanhamento.cs",
|
||||
"ToolTip": "C:\\ZendionINC\\agrobot_base\\AgroBase\\AgroBase\\Forms\\frmAcompanhamento.cs",
|
||||
"RelativeToolTip": "AgroBase\\Forms\\frmAcompanhamento.cs",
|
||||
"ViewState": "AQIAAAwAAAAAAAAAAAAAAG8AAABfAAAA",
|
||||
"Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
|
||||
"WhenOpened": "2025-03-05T13:10:45.219Z",
|
||||
"EditorCaption": ""
|
||||
}
|
||||
]
|
||||
}
|
||||
|
|
|
|||
|
|
@ -53,9 +53,9 @@
|
|||
this.tabInformacoes = new System.Windows.Forms.TabPage();
|
||||
this.gridDados = new System.Windows.Forms.DataGridView();
|
||||
this.tabDeteccoes = new System.Windows.Forms.TabPage();
|
||||
this.pnlDeteccoesRua = new System.Windows.Forms.Panel();
|
||||
this.chbSonarAtivado = new System.Windows.Forms.CheckBox();
|
||||
this.chbMostrarGrade = new System.Windows.Forms.CheckBox();
|
||||
this.pnlDeteccoesRua = new System.Windows.Forms.Panel();
|
||||
this.chbSonarDesvioAutomatico = new System.Windows.Forms.CheckBox();
|
||||
this.tabPulverizador = new System.Windows.Forms.TabPage();
|
||||
this.lblPressaoSP = new System.Windows.Forms.Label();
|
||||
|
|
@ -82,6 +82,7 @@
|
|||
this.lblTipoMovimento = new System.Windows.Forms.Label();
|
||||
this.chbPulverizador = new System.Windows.Forms.CheckBox();
|
||||
this.flwCamerasSolo = new System.Windows.Forms.FlowLayoutPanel();
|
||||
this.lblGPSFix = new System.Windows.Forms.Label();
|
||||
((System.ComponentModel.ISupportInitialize)(this.chartGraficos)).BeginInit();
|
||||
this.tabControl1.SuspendLayout();
|
||||
this.tabMapa.SuspendLayout();
|
||||
|
|
@ -198,6 +199,7 @@
|
|||
// tabMapa
|
||||
//
|
||||
this.tabMapa.BackColor = System.Drawing.Color.White;
|
||||
this.tabMapa.Controls.Add(this.lblGPSFix);
|
||||
this.tabMapa.Controls.Add(this.lblGPSprecisao);
|
||||
this.tabMapa.Controls.Add(this.lblGPSaltitude);
|
||||
this.tabMapa.Controls.Add(this.lblGPSvelocidade);
|
||||
|
|
@ -228,7 +230,7 @@
|
|||
// lblGPSaltitude
|
||||
//
|
||||
this.lblGPSaltitude.AutoSize = true;
|
||||
this.lblGPSaltitude.Location = new System.Drawing.Point(4, 142);
|
||||
this.lblGPSaltitude.Location = new System.Drawing.Point(4, 155);
|
||||
this.lblGPSaltitude.Margin = new System.Windows.Forms.Padding(2, 0, 2, 0);
|
||||
this.lblGPSaltitude.Name = "lblGPSaltitude";
|
||||
this.lblGPSaltitude.Size = new System.Drawing.Size(74, 13);
|
||||
|
|
@ -238,7 +240,7 @@
|
|||
// lblGPSvelocidade
|
||||
//
|
||||
this.lblGPSvelocidade.AutoSize = true;
|
||||
this.lblGPSvelocidade.Location = new System.Drawing.Point(4, 129);
|
||||
this.lblGPSvelocidade.Location = new System.Drawing.Point(4, 142);
|
||||
this.lblGPSvelocidade.Margin = new System.Windows.Forms.Padding(2, 0, 2, 0);
|
||||
this.lblGPSvelocidade.Name = "lblGPSvelocidade";
|
||||
this.lblGPSvelocidade.Size = new System.Drawing.Size(80, 13);
|
||||
|
|
@ -346,14 +348,6 @@
|
|||
this.tabDeteccoes.Text = "Detecção rua";
|
||||
this.tabDeteccoes.UseVisualStyleBackColor = true;
|
||||
//
|
||||
// pnlDeteccoesRua
|
||||
//
|
||||
this.pnlDeteccoesRua.Location = new System.Drawing.Point(13, 13);
|
||||
this.pnlDeteccoesRua.Margin = new System.Windows.Forms.Padding(2);
|
||||
this.pnlDeteccoesRua.Name = "pnlDeteccoesRua";
|
||||
this.pnlDeteccoesRua.Size = new System.Drawing.Size(434, 242);
|
||||
this.pnlDeteccoesRua.TabIndex = 0;
|
||||
//
|
||||
// chbSonarAtivado
|
||||
//
|
||||
this.chbSonarAtivado.AutoSize = true;
|
||||
|
|
@ -378,6 +372,14 @@
|
|||
this.chbMostrarGrade.UseVisualStyleBackColor = true;
|
||||
this.chbMostrarGrade.CheckedChanged += new System.EventHandler(this.chbMostrarGrade_CheckedChanged);
|
||||
//
|
||||
// pnlDeteccoesRua
|
||||
//
|
||||
this.pnlDeteccoesRua.Location = new System.Drawing.Point(13, 13);
|
||||
this.pnlDeteccoesRua.Margin = new System.Windows.Forms.Padding(2);
|
||||
this.pnlDeteccoesRua.Name = "pnlDeteccoesRua";
|
||||
this.pnlDeteccoesRua.Size = new System.Drawing.Size(434, 242);
|
||||
this.pnlDeteccoesRua.TabIndex = 0;
|
||||
//
|
||||
// chbSonarDesvioAutomatico
|
||||
//
|
||||
this.chbSonarDesvioAutomatico.AutoSize = true;
|
||||
|
|
@ -665,6 +667,16 @@
|
|||
this.flwCamerasSolo.Size = new System.Drawing.Size(597, 172);
|
||||
this.flwCamerasSolo.TabIndex = 36;
|
||||
//
|
||||
// lblGpsFix
|
||||
//
|
||||
this.lblGPSFix.AutoSize = true;
|
||||
this.lblGPSFix.Location = new System.Drawing.Point(4, 129);
|
||||
this.lblGPSFix.Margin = new System.Windows.Forms.Padding(2, 0, 2, 0);
|
||||
this.lblGPSFix.Name = "lblGpsFix";
|
||||
this.lblGPSFix.Size = new System.Drawing.Size(71, 13);
|
||||
this.lblGPSFix.TabIndex = 32;
|
||||
this.lblGPSFix.Text = "SemCorrecao";
|
||||
//
|
||||
// frmOperacaoManual
|
||||
//
|
||||
this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F);
|
||||
|
|
@ -773,5 +785,6 @@
|
|||
private System.Windows.Forms.CheckBox chbSonarAtivado;
|
||||
private System.Windows.Forms.CheckBox chbMostrarGrade;
|
||||
private System.Windows.Forms.FlowLayoutPanel flwCamerasSolo;
|
||||
private System.Windows.Forms.Label lblGPSFix;
|
||||
}
|
||||
}
|
||||
|
|
@ -165,7 +165,8 @@ namespace AgroBase.Forms.Operacoes
|
|||
lblDistanciaEsquerda.Text = "Distancia Esq: " + _Sensoriamento.Trajetoria.DistanciaEsquerda.ToString("0.00") + " cm";
|
||||
lblDistanciaDireita.Text = "Distancia Dir: " + _Sensoriamento.Trajetoria.DistanciaDireita.ToString("0.00") + " cm";
|
||||
lblGPSsatelites.Text = _Sensoriamento.Gps.NumeroSatelites.ToString() + " satélites";
|
||||
lblGPSprecisao.Text = "Precisão: " + _Sensoriamento.Gps.PrecisaoHorizontal.ToString("0.00") + " m";
|
||||
lblGPSFix.Text = _Sensoriamento.Gps.QualidadeFix.ToString();
|
||||
lblGPSprecisao.Text = "Precisão: " + _Sensoriamento.Gps.PrecisaoCm.ToString("0.00") + " cm";
|
||||
lblGPSvelocidade.Text = "Vel.: " + _Sensoriamento.Gps.Velocidade.ToString("0.00") + " km/h";
|
||||
lblGPSaltitude.Text = "Altitude: " + _Sensoriamento.Gps.Altitude.ToString("0.0") + " m";
|
||||
|
||||
|
|
|
|||
|
|
@ -668,25 +668,25 @@ namespace AgroBase.Forms.Operacoes
|
|||
new GraficoInterativoSerieModel()
|
||||
{
|
||||
Titulo = $"{camNome} RAM %",
|
||||
Valores = camSolo.Select(x => (double)(x?.Leitura.device_data.Memory_Usage.Percent ?? 0)).ToList(),
|
||||
Valores = camSolo.Select(x => (double)(x?.Leitura?.device_data?.Memory_Usage?.Percent ?? 0)).ToList(),
|
||||
Visivel = true,
|
||||
},
|
||||
new GraficoInterativoSerieModel()
|
||||
{
|
||||
Titulo = $"{camNome} CPU Temp",
|
||||
Valores = camSolo.Select(x => (double)(x?.Leitura.device_data.Temperature.css ?? 0)).ToList(),
|
||||
Valores = camSolo.Select(x => (double)(x?.Leitura?.device_data?.Temperature?.css ?? 0)).ToList(),
|
||||
Visivel = true,
|
||||
},
|
||||
new GraficoInterativoSerieModel()
|
||||
{
|
||||
Titulo = $"{camNome} RAM Temp",
|
||||
Valores = camSolo.Select(x => (double)(x?.Leitura.device_data.Temperature.mss ?? 0)).ToList(),
|
||||
Valores = camSolo.Select(x => (double)(x?.Leitura?.device_data?.Temperature?.mss ?? 0)).ToList(),
|
||||
Visivel = true,
|
||||
},
|
||||
new GraficoInterativoSerieModel()
|
||||
{
|
||||
Titulo = $"{camNome} VCC Temp",
|
||||
Valores = camSolo.Select(x => (double)(x?.Leitura.device_data.Temperature.upa ?? 0)).ToList(),
|
||||
Valores = camSolo.Select(x => (double)(x?.Leitura?.device_data?.Temperature?.upa ?? 0)).ToList(),
|
||||
Visivel = true,
|
||||
}
|
||||
});
|
||||
|
|
@ -701,25 +701,25 @@ namespace AgroBase.Forms.Operacoes
|
|||
new GraficoInterativoSerieModel()
|
||||
{
|
||||
Titulo = $"{camNome} RAM %",
|
||||
Valores = camCaminho.Select(x => (double)(x?.Leitura.device_data.Memory_Usage.Percent ?? 0)).ToList(),
|
||||
Valores = camCaminho.Select(x => (double)(x?.Leitura?.device_data?.Memory_Usage?.Percent ?? 0)).ToList(),
|
||||
Visivel = true,
|
||||
},
|
||||
new GraficoInterativoSerieModel()
|
||||
{
|
||||
Titulo = $"{camNome} CPU Temp",
|
||||
Valores = camCaminho.Select(x => (double)(x?.Leitura.device_data.Temperature.css ?? 0)).ToList(),
|
||||
Valores = camCaminho.Select(x => (double)(x?.Leitura?.device_data?.Temperature?.css ?? 0)).ToList(),
|
||||
Visivel = true,
|
||||
},
|
||||
new GraficoInterativoSerieModel()
|
||||
{
|
||||
Titulo = $"{camNome} RAM Temp",
|
||||
Valores = camCaminho.Select(x => (double)(x?.Leitura.device_data.Temperature.mss ?? 0)).ToList(),
|
||||
Valores = camCaminho.Select(x => (double)(x?.Leitura?.device_data?.Temperature?.mss ?? 0)).ToList(),
|
||||
Visivel = true,
|
||||
},
|
||||
new GraficoInterativoSerieModel()
|
||||
{
|
||||
Titulo = $"{camNome} VCC Temp",
|
||||
Valores = camCaminho.Select(x => (double)(x?.Leitura.device_data.Temperature.upa ?? 0)).ToList(),
|
||||
Valores = camCaminho.Select(x => (double)(x?.Leitura?.device_data?.Temperature?.upa ?? 0)).ToList(),
|
||||
Visivel = true,
|
||||
}
|
||||
});
|
||||
|
|
|
|||
|
|
@ -623,14 +623,16 @@ namespace AgroBase
|
|||
}
|
||||
else
|
||||
{
|
||||
Variaveis.OperacaoEmAndamento.DispMvd.Dados.Modulos.ForEach(x => x.DirMotor.EnviarComandoControle(DirecaoAtual));
|
||||
/*Task.Run(async () =>
|
||||
foreach (var mod in Variaveis.OperacaoEmAndamento.DispMvd.Dados.Modulos)
|
||||
{
|
||||
foreach (var mod in Variaveis.OperacaoEmAndamento.DispMvd.Dados.Modulos)
|
||||
mod.DirMotor.EnviarComandoControle(DirecaoAtual);
|
||||
|
||||
if (mod.MovMotor.CompensacaoNecessaria)
|
||||
{
|
||||
mod.DirMotor.EnviarComandoControle(DirecaoAtual);
|
||||
};
|
||||
});*/
|
||||
Direcao ultimaDirecaoMov = Variaveis.OperacaoEmAndamento.Controle.TiposControle.FirstOrDefault(x => x.Tipo == T_Code.Mov)?.UltimaDirecao ?? Direcao.Parado;
|
||||
mod.MovMotor.EnviarComandoControle(ultimaDirecaoMov);
|
||||
}
|
||||
};
|
||||
}
|
||||
break;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -341,12 +341,17 @@ namespace AgroBase.Models.Modules
|
|||
GeneralJoystick.EnviarComandoSensoriamento(S_Code.sRLE, Modulo.DirMotor.SensorAnguloAuxiliar.ReleControle.ID, Estado.Desligado);
|
||||
await Task.Delay(2000);
|
||||
}
|
||||
Direcao direcaoContraria = Modulo.DirMotor.SensorAnguloAuxiliar.Sentido == Sentido.Horario ? Direcao.Esquerda : Direcao.Direita;
|
||||
var _sentido = Modulo.DirMotor.SensorAnguloAuxiliar?.Sentido ?? Sentido.Parado;
|
||||
Direcao direcaoContraria =
|
||||
_sentido == Sentido.Horario ? Direcao.Esquerda :
|
||||
_sentido == Sentido.Antihorario ? Direcao.Direita :
|
||||
Direcao.Parado;
|
||||
|
||||
Modulo.DirMotor.EnviarComandoControle(direcaoContraria);
|
||||
}
|
||||
|
||||
// Verifica se o angulo de set point do motor em questao e diferente do angulo atual, e se for, reenvia o comando para garantir que o motor esteja coerente com o set point
|
||||
if (!MKS057DService.Referenciando && (Modulo.DirMotor.UltimoComandoEnviado.AddMilliseconds(1000) < DateTime.Now) && !Modulo.DirMotor.AtingiuAnguloSP)
|
||||
if (!MKS057DService.Referenciando && (Modulo.DirMotor.UltimoComandoEnviado.AddMilliseconds(500) < DateTime.Now) && !Modulo.DirMotor.AtingiuAnguloSP)
|
||||
{
|
||||
var Controle = Variaveis.OperacaoEmAndamento.Controle.TiposControle?.FirstOrDefault(x => x.Tipo == T_Code.Dir);
|
||||
if (Controle != null)
|
||||
|
|
@ -603,6 +608,13 @@ namespace AgroBase.Models.Modules
|
|||
return Convert.ToByte(Endereco.Replace("0x", ""), 16);
|
||||
}
|
||||
}
|
||||
public string Mod_ID
|
||||
{
|
||||
get
|
||||
{
|
||||
return Variaveis.OperacaoEmAndamento.DispMvd?.Dados?.Modulos?.FirstOrDefault(x => x.MovMotor.EnderecoByte == EnderecoByte)?.Modulo_ID ?? "";
|
||||
}
|
||||
}
|
||||
public bool LeituraLigado
|
||||
{
|
||||
get
|
||||
|
|
@ -743,6 +755,37 @@ namespace AgroBase.Models.Modules
|
|||
}
|
||||
}
|
||||
|
||||
public bool CompensacaoNecessaria
|
||||
{
|
||||
get
|
||||
{
|
||||
if (ComandoLigado)
|
||||
{
|
||||
var _Controle = Variaveis.OperacaoEmAndamento.Controle;
|
||||
var _ControleDir = _Controle.TiposControle.FirstOrDefault(x => x.Tipo == T_Code.Dir);
|
||||
|
||||
bool movimentoCompensado =
|
||||
_Controle.TipoMovimento == TipoMovimentoDirecional.MovimentoArco ||
|
||||
_Controle.TipoMovimento == TipoMovimentoDirecional.RodasDianteiras ||
|
||||
_Controle.TipoMovimento == TipoMovimentoDirecional.RodasTraseiras;
|
||||
bool emCurva = _ControleDir.UltimaDirecao != Direcao.Parado;
|
||||
|
||||
if (movimentoCompensado && emCurva)
|
||||
{
|
||||
if (
|
||||
(_ControleDir.UltimaDirecao == Direcao.Esquerda && Mod_ID.Contains("E")) ||
|
||||
(_ControleDir.UltimaDirecao == Direcao.Direita && Mod_ID.Contains("D"))
|
||||
)
|
||||
{
|
||||
return true;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
public Dictionary<TipoMovimentoDirecional,ConfiguracaoSentidoMotor> ConfigSentidos { get; set; }
|
||||
public List<FuncoesPinout> Funcoes { get; set; }
|
||||
|
|
@ -914,6 +957,8 @@ namespace AgroBase.Models.Modules
|
|||
|
||||
ComandoLigado = RPM_SP > 0;
|
||||
|
||||
RPM_SP = Convert.ToInt32(RPM_SP * FatorCompensacaoCurvas());
|
||||
|
||||
Variaveis.OperacaoEmAndamento.SimulacaoRpmControle = (RPM_SP / VariaveisEquipamento.RelacaoRPM);
|
||||
|
||||
switch (DirecaoAtual)
|
||||
|
|
@ -948,7 +993,7 @@ namespace AgroBase.Models.Modules
|
|||
ComandoLigado ? OIDModoControle.Velocidade :
|
||||
OIDModoControle.Corrente;
|
||||
|
||||
if (Leitura.ModoControle != modoControle)
|
||||
if ((Leitura?.ModoControle ?? OIDModoControle.Velocidade) != modoControle)
|
||||
{
|
||||
OIDService.AdicionarComandoNaFila(new OIDComandoModel()
|
||||
{
|
||||
|
|
@ -994,6 +1039,19 @@ namespace AgroBase.Models.Modules
|
|||
}
|
||||
}
|
||||
|
||||
private float FatorCompensacaoCurvas()
|
||||
{
|
||||
if (CompensacaoNecessaria)
|
||||
{
|
||||
double compensacao = 1 - FuncoesMatematicas.Map(Variaveis.OperacaoEmAndamento.Controle.Angulo, 0.0, 45.0, 0.0, 0.7);
|
||||
return (float)compensacao;
|
||||
}
|
||||
else
|
||||
{
|
||||
return 1;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
||||
}
|
||||
|
|
@ -1035,7 +1093,10 @@ namespace AgroBase.Models.Modules
|
|||
{
|
||||
get
|
||||
{
|
||||
return Leitura?.Direcao ?? Sentido.Parado;
|
||||
return
|
||||
Angulo > 0 ? Sentido.Horario :
|
||||
Angulo < 0 ? Sentido.Antihorario :
|
||||
Sentido.Parado;
|
||||
}
|
||||
}
|
||||
public double Angulo
|
||||
|
|
@ -1108,7 +1169,9 @@ namespace AgroBase.Models.Modules
|
|||
{
|
||||
get
|
||||
{
|
||||
return (UltimaDirecao != Direcao.Esquerda && UltimaDirecao != Direcao.Direita);
|
||||
bool foraZero = !FuncoesMatematicas.ValorEstaEntre(Angulo, 0, 1);
|
||||
bool parar = UltimaDirecao == Direcao.Parado;
|
||||
return foraZero && parar;
|
||||
}
|
||||
}
|
||||
public bool EmMovimento
|
||||
|
|
@ -1258,25 +1321,28 @@ namespace AgroBase.Models.Modules
|
|||
|
||||
bool limiteLateralExcedido = SensorAnguloAuxiliar?.LimiteExcedido ?? false;
|
||||
|
||||
if (UltimaDirecao != Direcao)
|
||||
if (!Comandar || limiteLateralExcedido)
|
||||
{
|
||||
Sentido_SP =
|
||||
Direcao == Direcao.Direita ? ConfigSentidos[_Controle.TipoMovimento].Direita :
|
||||
Direcao == Direcao.Esquerda ? ConfigSentidos[_Controle.TipoMovimento].Esquerda :
|
||||
Sentido_SP == Sentido.Horario ? Sentido.Antihorario :
|
||||
Sentido_SP == Sentido.Antihorario ? Sentido.Horario :
|
||||
Sentido.Parado;
|
||||
|
||||
if (!limiteLateralExcedido)
|
||||
{
|
||||
UltimaDirecao = Direcao;
|
||||
}
|
||||
Sentido_SP = Sentido.Parado;
|
||||
}
|
||||
else if (Direcao == Direcao.Direita)
|
||||
{
|
||||
Sentido_SP = ConfigSentidos[_Controle.TipoMovimento].Direita;
|
||||
}
|
||||
else if (Direcao == Direcao.Esquerda)
|
||||
{
|
||||
Sentido_SP = ConfigSentidos[_Controle.TipoMovimento].Esquerda;
|
||||
}
|
||||
else
|
||||
{
|
||||
Sentido_SP = Sentido.Parado;
|
||||
}
|
||||
|
||||
if (RetornandoAzero || !Comandar || limiteLateralExcedido)
|
||||
UltimaDirecao = Direcao;
|
||||
|
||||
if (Sentido_SP == Sentido.Parado)
|
||||
{
|
||||
Angulo_SP = 0;
|
||||
Sentido_SP = Sentido.Parado;
|
||||
UltimaDirecao = Direcao.Parado;
|
||||
}
|
||||
else if (AnguloTipoMovimento != -1)
|
||||
|
|
@ -1305,6 +1371,7 @@ namespace AgroBase.Models.Modules
|
|||
MKS057DService.AdicionarComandoNaFila(MKS057DService.MontarComandoMovimento(EnderecoByte, Angulo_SP, Velocidade, Sentido_SP));
|
||||
UltimoComandoEnviado = DateTime.Now;
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
public async Task ReferenciaMotor()
|
||||
|
|
@ -1402,7 +1469,7 @@ namespace AgroBase.Models.Modules
|
|||
if (_anguloEntrada == 9999)
|
||||
{
|
||||
inverterGiro = (_angulo > 0 && Angulo >= (_angulo - 0.5)) || (_angulo < 0 && Angulo <= (_angulo + 0.5));
|
||||
if (!inverterGiro && SensorAnguloAuxiliar != null)
|
||||
if (!inverterGiro && SensorAnguloAuxiliar != null && false)
|
||||
{
|
||||
if (SensorAnguloAuxiliar.Angulo < (SensorAnguloAuxiliar.LimiteMinimo / 2.0) || SensorAnguloAuxiliar.Angulo > (SensorAnguloAuxiliar.LimiteMaximo / 2.0))
|
||||
{
|
||||
|
|
|
|||
|
|
@ -357,6 +357,7 @@ namespace AgroBase.Services
|
|||
Endereco = Endereco,
|
||||
AguardaResposta = true,
|
||||
TamanhoResposta = 8,
|
||||
TimeoutResposta = 200,
|
||||
};
|
||||
}
|
||||
|
||||
|
|
@ -371,6 +372,7 @@ namespace AgroBase.Services
|
|||
Endereco = Endereco,
|
||||
AguardaResposta = true,
|
||||
TamanhoResposta = 5,
|
||||
TimeoutResposta = 200,
|
||||
};
|
||||
}
|
||||
|
||||
|
|
@ -445,6 +447,7 @@ namespace AgroBase.Services
|
|||
ModoControle = Controle,
|
||||
AguardaResposta = true,
|
||||
TamanhoResposta = 5,
|
||||
TimeoutResposta = 200,
|
||||
};
|
||||
}
|
||||
|
||||
|
|
@ -586,7 +589,7 @@ namespace AgroBase.Services
|
|||
ushort velocidade = (ushort)Comando.Velocidade;
|
||||
byte[] VelocidadeBytes = BitConverter.GetBytes(velocidade); // Little Endian
|
||||
|
||||
byte _Sentido = Comando._Sentido == Sentido.Horario ? (byte)0x01 : (byte)0x00;
|
||||
byte _Sentido = Comando._Sentido == Sentido.Horario ? FWD : RWD;
|
||||
|
||||
string _AnguloStr = ConverterAnguloParaValor(Comando.Angulo).ToString();
|
||||
|
||||
|
|
@ -595,14 +598,7 @@ namespace AgroBase.Services
|
|||
uint PulseText = Convert.ToUInt32(_AnguloStr, 10);
|
||||
byte[] PulsosBytes = BitConverter.GetBytes(PulseText);
|
||||
|
||||
if (Comando._Sentido == Sentido.Antihorario)
|
||||
{
|
||||
VelocidadeBytes[1] |= RWD;
|
||||
}
|
||||
else if (Comando._Sentido == Sentido.Horario)
|
||||
{
|
||||
VelocidadeBytes[1] |= FWD;
|
||||
}
|
||||
VelocidadeBytes[1] |= _Sentido;
|
||||
|
||||
// Construção do Buffer de Pulsos (idêntico ao original)
|
||||
Buffer = new byte[]
|
||||
|
|
@ -640,7 +636,7 @@ namespace AgroBase.Services
|
|||
|
||||
private static bool DecifrarRespostaDriver(byte[] resposta)
|
||||
{
|
||||
if (resposta == null || resposta.Length == 0 || resposta.Length > 11)
|
||||
if (resposta == null || resposta.Length == 0)
|
||||
{
|
||||
return false;
|
||||
}
|
||||
|
|
@ -796,7 +792,7 @@ namespace AgroBase.Services
|
|||
break;
|
||||
|
||||
default:
|
||||
MessageBox.Show("Erro ao decodificar resposta");
|
||||
Console.WriteLine("Erro ao decodificar resposta");
|
||||
return false;
|
||||
}
|
||||
|
||||
|
|
|
|||
Binary file not shown.
Binary file not shown.
Binary file not shown.
|
|
@ -312,3 +312,4 @@
|
|||
29/01/2025 14:28:23:051 - Porta COM20 - 0: Erro ao processar fila de comandos. Erro=The port is closed.
|
||||
19/02/2025 16:02:07:001 - Porta COM - 0: Erro ao processar fila de comandos. Erro=The port is closed.
|
||||
19/02/2025 16:05:23:105 - Porta COM77 - 0: Erro ao processar fila de comandos. Erro=The port is closed.
|
||||
05/03/2025 15:45:57:518 - Porta COM28 - 0: Erro ao processar fila de comandos. Erro=A porta está fechada.
|
||||
|
|
|
|||
File diff suppressed because it is too large
Load Diff
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
|
|
@ -25,7 +25,7 @@
|
|||
<meta name="viewport" content="width=device-width,
|
||||
initial-scale=1.0, maximum-scale=1.0, user-scalable=no" />
|
||||
<style>
|
||||
#map_40b1108e333517ffcf33c7dc2f290963 {
|
||||
#map_621b62163f2ccafd05c33f58249e3800 {
|
||||
position: relative;
|
||||
width: 100.0%;
|
||||
height: 100.0%;
|
||||
|
|
@ -39,14 +39,14 @@
|
|||
<body>
|
||||
|
||||
|
||||
<div class="folium-map" id="map_40b1108e333517ffcf33c7dc2f290963" ></div>
|
||||
<div class="folium-map" id="map_621b62163f2ccafd05c33f58249e3800" ></div>
|
||||
|
||||
</body>
|
||||
<script>
|
||||
|
||||
|
||||
var map_40b1108e333517ffcf33c7dc2f290963 = L.map(
|
||||
"map_40b1108e333517ffcf33c7dc2f290963",
|
||||
var map_621b62163f2ccafd05c33f58249e3800 = L.map(
|
||||
"map_621b62163f2ccafd05c33f58249e3800",
|
||||
{
|
||||
center: [0.0, 0.0],
|
||||
crs: L.CRS.EPSG3857,
|
||||
|
|
@ -60,13 +60,13 @@
|
|||
|
||||
|
||||
|
||||
var tile_layer_12f8b928aba0bec9587603488d6125aa = L.tileLayer(
|
||||
var tile_layer_54182e004e62958132ef1f2ec111c5b8 = L.tileLayer(
|
||||
"https://tile.openstreetmap.org/{z}/{x}/{y}.png",
|
||||
{"attribution": "\u0026copy; \u003ca href=\"https://www.openstreetmap.org/copyright\"\u003eOpenStreetMap\u003c/a\u003e contributors", "detectRetina": false, "maxNativeZoom": 19, "maxZoom": 19, "minZoom": 0, "noWrap": false, "opacity": 1, "subdomains": "abc", "tms": false}
|
||||
);
|
||||
|
||||
|
||||
tile_layer_12f8b928aba0bec9587603488d6125aa.addTo(map_40b1108e333517ffcf33c7dc2f290963);
|
||||
tile_layer_54182e004e62958132ef1f2ec111c5b8.addTo(map_621b62163f2ccafd05c33f58249e3800);
|
||||
|
||||
</script>
|
||||
|
||||
|
|
@ -87,7 +87,7 @@
|
|||
}
|
||||
trajeto_json_add({"features": []});
|
||||
|
||||
trajeto_json.addTo(map_40b1108e333517ffcf33c7dc2f290963);
|
||||
trajeto_json.addTo(map_621b62163f2ccafd05c33f58249e3800);
|
||||
|
||||
function adicionarGeometria(novaGeometria) {
|
||||
trajeto_json.addData(novaGeometria);
|
||||
|
|
@ -145,7 +145,7 @@
|
|||
|
||||
var marcadorDinamico = L.marker([0, 0], {
|
||||
icon: customIcon
|
||||
}).addTo(map_40b1108e333517ffcf33c7dc2f290963);
|
||||
}).addTo(map_621b62163f2ccafd05c33f58249e3800);
|
||||
|
||||
// Conectar ao broker MQTT
|
||||
const client = mqtt.connect('ws://localhost:9001'); // Use wss para conexão segura
|
||||
|
|
@ -183,7 +183,7 @@
|
|||
marcadorDinamico.setRotationAngle(angulo);
|
||||
|
||||
adicionarCoordenada("Tj", [novaLongitude, novaLatitude]);
|
||||
map_40b1108e333517ffcf33c7dc2f290963.setView(novaPosicao, map_40b1108e333517ffcf33c7dc2f290963.getZoom());
|
||||
map_621b62163f2ccafd05c33f58249e3800.setView(novaPosicao, map_621b62163f2ccafd05c33f58249e3800.getZoom());
|
||||
});
|
||||
|
||||
function calcularOrientacao(P1latitude, P1longitude, P2latitude, P2longitude) {
|
||||
|
|
|
|||
File diff suppressed because one or more lines are too long
Binary file not shown.
|
|
@ -480,6 +480,6 @@ C:\ZendionInc\agrobot_base\AgroBase\AgroBase\obj\Debug\AgroBase.Forms.Sensoriame
|
|||
C:\ZendionInc\agrobot_base\AgroBase\AgroBase\obj\Debug\AgroBase.Properties.Resources.resources
|
||||
C:\ZendionInc\agrobot_base\AgroBase\AgroBase\obj\Debug\AgroBase.csproj.GenerateResource.cache
|
||||
C:\ZendionInc\agrobot_base\AgroBase\AgroBase\obj\Debug\AgroBase.csproj.CoreCompileInputs.cache
|
||||
C:\ZendionInc\agrobot_base\AgroBase\AgroBase\obj\Debug\AgroBase.csproj.CopyComplete
|
||||
C:\ZendionInc\agrobot_base\AgroBase\AgroBase\obj\Debug\AgroBase.exe
|
||||
C:\ZendionInc\agrobot_base\AgroBase\AgroBase\obj\Debug\AgroBase.pdb
|
||||
C:\ZendionINC\agrobot_base\AgroBase\AgroBase\obj\Debug\AgroBase.csproj.Up2Date
|
||||
|
|
|
|||
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Loading…
Reference in New Issue