ajustes no fluxo de reconexao mqtt

This commit is contained in:
Diego Freitas 2024-12-05 14:11:38 -03:00
parent 9e8f198fcd
commit 2344b8880a
29 changed files with 560 additions and 422 deletions

Binary file not shown.

View File

@ -28,9 +28,9 @@
/// </summary>
private void InitializeComponent()
{
System.Windows.Forms.DataVisualization.Charting.ChartArea chartArea3 = new System.Windows.Forms.DataVisualization.Charting.ChartArea();
System.Windows.Forms.DataVisualization.Charting.Legend legend3 = new System.Windows.Forms.DataVisualization.Charting.Legend();
System.Windows.Forms.DataVisualization.Charting.Series series3 = new System.Windows.Forms.DataVisualization.Charting.Series();
System.Windows.Forms.DataVisualization.Charting.ChartArea chartArea1 = new System.Windows.Forms.DataVisualization.Charting.ChartArea();
System.Windows.Forms.DataVisualization.Charting.Legend legend1 = new System.Windows.Forms.DataVisualization.Charting.Legend();
System.Windows.Forms.DataVisualization.Charting.Series series1 = new System.Windows.Forms.DataVisualization.Charting.Series();
this.pnlCamerasSolo = new System.Windows.Forms.Panel();
this.pnlCameraSoloE = new System.Windows.Forms.Panel();
this.pnlCameraSoloD = new System.Windows.Forms.Panel();
@ -150,17 +150,17 @@
//
this.chartGraficos.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left)
| System.Windows.Forms.AnchorStyles.Right)));
chartArea3.Name = "ChartArea1";
this.chartGraficos.ChartAreas.Add(chartArea3);
legend3.Name = "Legend1";
this.chartGraficos.Legends.Add(legend3);
chartArea1.Name = "ChartArea1";
this.chartGraficos.ChartAreas.Add(chartArea1);
legend1.Name = "Legend1";
this.chartGraficos.Legends.Add(legend1);
this.chartGraficos.Location = new System.Drawing.Point(640, 7);
this.chartGraficos.Margin = new System.Windows.Forms.Padding(2);
this.chartGraficos.Name = "chartGraficos";
series3.ChartArea = "ChartArea1";
series3.Legend = "Legend1";
series3.Name = "Series1";
this.chartGraficos.Series.Add(series3);
series1.ChartArea = "ChartArea1";
series1.Legend = "Legend1";
series1.Name = "Series1";
this.chartGraficos.Series.Add(series1);
this.chartGraficos.Size = new System.Drawing.Size(591, 318);
this.chartGraficos.TabIndex = 2;
this.chartGraficos.Text = "chart1";
@ -621,7 +621,6 @@
this.chbPulverizador.TabIndex = 35;
this.chbPulverizador.Text = "Pulverizador automático";
this.chbPulverizador.UseVisualStyleBackColor = true;
this.chbPulverizador.CheckedChanged += new System.EventHandler(this.chbPulverizador_CheckedChanged);
//
// frmOperacaoManual
//

View File

@ -43,6 +43,8 @@ namespace AgroBase.Forms.Operacoes
Variaveis.OperacaoEmAndamento.AtualizaListaCameras(pnlCameraRua, new List<Panel>() { pnlCameraSoloE, pnlCameraSoloD }, true);
chbPulverizador.Checked = Variaveis.OperacaoEmAndamento.Controle.PulverizadorAutomatico;
InicializarComandosDirecional();
PopularInformacoesGerais();
InicializarMapa();
@ -159,6 +161,8 @@ namespace AgroBase.Forms.Operacoes
});
UltimoComandoDir = DateTime.Now;
}
Variaveis.OperacaoEmAndamento.Controle.PulverizadorAutomatico = chbPulverizador.Checked;
}
@ -546,10 +550,6 @@ namespace AgroBase.Forms.Operacoes
Variaveis.OperacaoEmAndamento.Controle.TipoMovimento = (TipoMovimentoDirecional)cmbTipoMovimento.SelectedIndex;
}
private void chbPulverizador_CheckedChanged(object sender, EventArgs e)
{
Variaveis.OperacaoEmAndamento.Controle.PulverizadorAutomatico = chbPulverizador.Checked;
}
}
}

View File

@ -28,30 +28,30 @@
/// </summary>
private void InitializeComponent()
{
System.Windows.Forms.DataVisualization.Charting.ChartArea chartArea17 = new System.Windows.Forms.DataVisualization.Charting.ChartArea();
System.Windows.Forms.DataVisualization.Charting.Legend legend17 = new System.Windows.Forms.DataVisualization.Charting.Legend();
System.Windows.Forms.DataVisualization.Charting.Series series17 = new System.Windows.Forms.DataVisualization.Charting.Series();
System.Windows.Forms.DataVisualization.Charting.ChartArea chartArea18 = new System.Windows.Forms.DataVisualization.Charting.ChartArea();
System.Windows.Forms.DataVisualization.Charting.Legend legend18 = new System.Windows.Forms.DataVisualization.Charting.Legend();
System.Windows.Forms.DataVisualization.Charting.Series series18 = new System.Windows.Forms.DataVisualization.Charting.Series();
System.Windows.Forms.DataVisualization.Charting.ChartArea chartArea19 = new System.Windows.Forms.DataVisualization.Charting.ChartArea();
System.Windows.Forms.DataVisualization.Charting.Legend legend19 = new System.Windows.Forms.DataVisualization.Charting.Legend();
System.Windows.Forms.DataVisualization.Charting.Series series19 = new System.Windows.Forms.DataVisualization.Charting.Series();
System.Windows.Forms.DataVisualization.Charting.ChartArea chartArea20 = new System.Windows.Forms.DataVisualization.Charting.ChartArea();
System.Windows.Forms.DataVisualization.Charting.Legend legend20 = new System.Windows.Forms.DataVisualization.Charting.Legend();
System.Windows.Forms.DataVisualization.Charting.Series series20 = new System.Windows.Forms.DataVisualization.Charting.Series();
System.Windows.Forms.DataVisualization.Charting.ChartArea chartArea21 = new System.Windows.Forms.DataVisualization.Charting.ChartArea();
System.Windows.Forms.DataVisualization.Charting.Legend legend21 = new System.Windows.Forms.DataVisualization.Charting.Legend();
System.Windows.Forms.DataVisualization.Charting.Series series21 = new System.Windows.Forms.DataVisualization.Charting.Series();
System.Windows.Forms.DataVisualization.Charting.ChartArea chartArea22 = new System.Windows.Forms.DataVisualization.Charting.ChartArea();
System.Windows.Forms.DataVisualization.Charting.Legend legend22 = new System.Windows.Forms.DataVisualization.Charting.Legend();
System.Windows.Forms.DataVisualization.Charting.Series series22 = new System.Windows.Forms.DataVisualization.Charting.Series();
System.Windows.Forms.DataVisualization.Charting.ChartArea chartArea23 = new System.Windows.Forms.DataVisualization.Charting.ChartArea();
System.Windows.Forms.DataVisualization.Charting.Legend legend23 = new System.Windows.Forms.DataVisualization.Charting.Legend();
System.Windows.Forms.DataVisualization.Charting.Series series23 = new System.Windows.Forms.DataVisualization.Charting.Series();
System.Windows.Forms.DataVisualization.Charting.ChartArea chartArea24 = new System.Windows.Forms.DataVisualization.Charting.ChartArea();
System.Windows.Forms.DataVisualization.Charting.Legend legend24 = new System.Windows.Forms.DataVisualization.Charting.Legend();
System.Windows.Forms.DataVisualization.Charting.Series series24 = new System.Windows.Forms.DataVisualization.Charting.Series();
System.Windows.Forms.DataVisualization.Charting.ChartArea chartArea1 = new System.Windows.Forms.DataVisualization.Charting.ChartArea();
System.Windows.Forms.DataVisualization.Charting.Legend legend1 = new System.Windows.Forms.DataVisualization.Charting.Legend();
System.Windows.Forms.DataVisualization.Charting.Series series1 = new System.Windows.Forms.DataVisualization.Charting.Series();
System.Windows.Forms.DataVisualization.Charting.ChartArea chartArea2 = new System.Windows.Forms.DataVisualization.Charting.ChartArea();
System.Windows.Forms.DataVisualization.Charting.Legend legend2 = new System.Windows.Forms.DataVisualization.Charting.Legend();
System.Windows.Forms.DataVisualization.Charting.Series series2 = new System.Windows.Forms.DataVisualization.Charting.Series();
System.Windows.Forms.DataVisualization.Charting.ChartArea chartArea3 = new System.Windows.Forms.DataVisualization.Charting.ChartArea();
System.Windows.Forms.DataVisualization.Charting.Legend legend3 = new System.Windows.Forms.DataVisualization.Charting.Legend();
System.Windows.Forms.DataVisualization.Charting.Series series3 = new System.Windows.Forms.DataVisualization.Charting.Series();
System.Windows.Forms.DataVisualization.Charting.ChartArea chartArea4 = new System.Windows.Forms.DataVisualization.Charting.ChartArea();
System.Windows.Forms.DataVisualization.Charting.Legend legend4 = new System.Windows.Forms.DataVisualization.Charting.Legend();
System.Windows.Forms.DataVisualization.Charting.Series series4 = new System.Windows.Forms.DataVisualization.Charting.Series();
System.Windows.Forms.DataVisualization.Charting.ChartArea chartArea5 = new System.Windows.Forms.DataVisualization.Charting.ChartArea();
System.Windows.Forms.DataVisualization.Charting.Legend legend5 = new System.Windows.Forms.DataVisualization.Charting.Legend();
System.Windows.Forms.DataVisualization.Charting.Series series5 = new System.Windows.Forms.DataVisualization.Charting.Series();
System.Windows.Forms.DataVisualization.Charting.ChartArea chartArea6 = new System.Windows.Forms.DataVisualization.Charting.ChartArea();
System.Windows.Forms.DataVisualization.Charting.Legend legend6 = new System.Windows.Forms.DataVisualization.Charting.Legend();
System.Windows.Forms.DataVisualization.Charting.Series series6 = new System.Windows.Forms.DataVisualization.Charting.Series();
System.Windows.Forms.DataVisualization.Charting.ChartArea chartArea7 = new System.Windows.Forms.DataVisualization.Charting.ChartArea();
System.Windows.Forms.DataVisualization.Charting.Legend legend7 = new System.Windows.Forms.DataVisualization.Charting.Legend();
System.Windows.Forms.DataVisualization.Charting.Series series7 = new System.Windows.Forms.DataVisualization.Charting.Series();
System.Windows.Forms.DataVisualization.Charting.ChartArea chartArea8 = new System.Windows.Forms.DataVisualization.Charting.ChartArea();
System.Windows.Forms.DataVisualization.Charting.Legend legend8 = new System.Windows.Forms.DataVisualization.Charting.Legend();
System.Windows.Forms.DataVisualization.Charting.Series series8 = new System.Windows.Forms.DataVisualization.Charting.Series();
this.trbMomento = new System.Windows.Forms.TrackBar();
this.panel1 = new System.Windows.Forms.Panel();
this.tabControl4 = new System.Windows.Forms.TabControl();
@ -88,6 +88,14 @@
this.panel2 = new System.Windows.Forms.Panel();
this.tabControl1 = new System.Windows.Forms.TabControl();
this.tabSituacao = new System.Windows.Forms.TabPage();
this.label117 = new System.Windows.Forms.Label();
this.tvwFalhas = new System.Windows.Forms.TreeView();
this.lblManual = new System.Windows.Forms.Label();
this.lblOperacao = new System.Windows.Forms.Label();
this.pnlManual = new System.Windows.Forms.Panel();
this.pnlOperacao = new System.Windows.Forms.Panel();
this.lblAutomatico = new System.Windows.Forms.Label();
this.pnlAutomatico = new System.Windows.Forms.Panel();
this.tabDirecional = new System.Windows.Forms.TabPage();
this.txtDIR_Controlar_ET = new System.Windows.Forms.TextBox();
this.label39 = new System.Windows.Forms.Label();
@ -299,6 +307,20 @@
this.label63 = new System.Windows.Forms.Label();
this.chartSensoriamento = new System.Windows.Forms.DataVisualization.Charting.Chart();
this.tabUltrassom = new System.Windows.Forms.TabPage();
this.pnlUltrassom = new System.Windows.Forms.Panel();
this.pnlP_10 = new System.Windows.Forms.Panel();
this.pnlP_11 = new System.Windows.Forms.Panel();
this.pnlP_7 = new System.Windows.Forms.Panel();
this.pnlP_12 = new System.Windows.Forms.Panel();
this.pnlP_8 = new System.Windows.Forms.Panel();
this.pnlP_9 = new System.Windows.Forms.Panel();
this.pnlP_6 = new System.Windows.Forms.Panel();
this.pnlP_3 = new System.Windows.Forms.Panel();
this.pnlP_5 = new System.Windows.Forms.Panel();
this.pnlP_2 = new System.Windows.Forms.Panel();
this.pnlP_4 = new System.Windows.Forms.Panel();
this.pnlP_1 = new System.Windows.Forms.Panel();
this.picRobo = new System.Windows.Forms.PictureBox();
this.tabOrientacao = new System.Windows.Forms.TabPage();
this.pnlInclinacao = new System.Windows.Forms.Panel();
this.pnl3D = new System.Windows.Forms.Panel();
@ -394,28 +416,10 @@
this.label36 = new System.Windows.Forms.Label();
this.txtMomento = new System.Windows.Forms.TextBox();
this.btnPlay = new System.Windows.Forms.Button();
this.tvwFalhas = new System.Windows.Forms.TreeView();
this.lblManual = new System.Windows.Forms.Label();
this.lblOperacao = new System.Windows.Forms.Label();
this.pnlManual = new System.Windows.Forms.Panel();
this.pnlOperacao = new System.Windows.Forms.Panel();
this.lblAutomatico = new System.Windows.Forms.Label();
this.pnlAutomatico = new System.Windows.Forms.Panel();
this.label117 = new System.Windows.Forms.Label();
this.pnlUltrassom = new System.Windows.Forms.Panel();
this.pnlP_10 = new System.Windows.Forms.Panel();
this.pnlP_11 = new System.Windows.Forms.Panel();
this.pnlP_7 = new System.Windows.Forms.Panel();
this.pnlP_12 = new System.Windows.Forms.Panel();
this.pnlP_8 = new System.Windows.Forms.Panel();
this.pnlP_9 = new System.Windows.Forms.Panel();
this.pnlP_6 = new System.Windows.Forms.Panel();
this.pnlP_3 = new System.Windows.Forms.Panel();
this.pnlP_5 = new System.Windows.Forms.Panel();
this.pnlP_2 = new System.Windows.Forms.Panel();
this.pnlP_4 = new System.Windows.Forms.Panel();
this.pnlP_1 = new System.Windows.Forms.Panel();
this.picRobo = new System.Windows.Forms.PictureBox();
this.lblATU_QualidadeWifi = new System.Windows.Forms.Label();
this.lblATU_LatenciaLoop = new System.Windows.Forms.Label();
this.lblSEN_LatenciaLoop = new System.Windows.Forms.Label();
this.lblSEN_QualidadeWifi = new System.Windows.Forms.Label();
((System.ComponentModel.ISupportInitialize)(this.trbMomento)).BeginInit();
this.panel1.SuspendLayout();
this.tabControl4.SuspendLayout();
@ -465,6 +469,8 @@
this.gpbSEN_Filtro.SuspendLayout();
((System.ComponentModel.ISupportInitialize)(this.chartSensoriamento)).BeginInit();
this.tabUltrassom.SuspendLayout();
this.pnlUltrassom.SuspendLayout();
((System.ComponentModel.ISupportInitialize)(this.picRobo)).BeginInit();
this.tabOrientacao.SuspendLayout();
this.tabSonar.SuspendLayout();
this.tabControl3.SuspendLayout();
@ -480,8 +486,6 @@
((System.ComponentModel.ISupportInitialize)(this.chartCpu)).BeginInit();
this.panel6.SuspendLayout();
((System.ComponentModel.ISupportInitialize)(this.picCameraCaminho)).BeginInit();
this.pnlUltrassom.SuspendLayout();
((System.ComponentModel.ISupportInitialize)(this.picRobo)).BeginInit();
this.SuspendLayout();
//
// trbMomento
@ -896,6 +900,77 @@
this.tabSituacao.Text = "Situação";
this.tabSituacao.UseVisualStyleBackColor = true;
//
// label117
//
this.label117.AutoSize = true;
this.label117.Font = new System.Drawing.Font("Microsoft Sans Serif", 10F);
this.label117.Location = new System.Drawing.Point(6, 141);
this.label117.Name = "label117";
this.label117.Size = new System.Drawing.Size(118, 17);
this.label117.TabIndex = 19;
this.label117.Text = "Código de Falhas";
//
// tvwFalhas
//
this.tvwFalhas.Anchor = ((System.Windows.Forms.AnchorStyles)((((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom)
| System.Windows.Forms.AnchorStyles.Left)
| System.Windows.Forms.AnchorStyles.Right)));
this.tvwFalhas.Location = new System.Drawing.Point(6, 161);
this.tvwFalhas.Name = "tvwFalhas";
this.tvwFalhas.Size = new System.Drawing.Size(484, 355);
this.tvwFalhas.TabIndex = 18;
//
// lblManual
//
this.lblManual.AutoSize = true;
this.lblManual.Font = new System.Drawing.Font("Microsoft Sans Serif", 10F);
this.lblManual.Location = new System.Drawing.Point(393, 6);
this.lblManual.Name = "lblManual";
this.lblManual.Size = new System.Drawing.Size(65, 17);
this.lblManual.TabIndex = 16;
this.lblManual.Text = "MANUAL";
//
// lblOperacao
//
this.lblOperacao.AutoSize = true;
this.lblOperacao.Font = new System.Drawing.Font("Microsoft Sans Serif", 10F);
this.lblOperacao.Location = new System.Drawing.Point(212, 6);
this.lblOperacao.Name = "lblOperacao";
this.lblOperacao.Size = new System.Drawing.Size(85, 17);
this.lblOperacao.TabIndex = 17;
this.lblOperacao.Text = "OPERAÇÃO";
//
// pnlManual
//
this.pnlManual.Location = new System.Drawing.Point(375, 26);
this.pnlManual.Name = "pnlManual";
this.pnlManual.Size = new System.Drawing.Size(100, 100);
this.pnlManual.TabIndex = 14;
//
// pnlOperacao
//
this.pnlOperacao.Location = new System.Drawing.Point(204, 26);
this.pnlOperacao.Name = "pnlOperacao";
this.pnlOperacao.Size = new System.Drawing.Size(100, 100);
this.pnlOperacao.TabIndex = 15;
//
// lblAutomatico
//
this.lblAutomatico.AutoSize = true;
this.lblAutomatico.Font = new System.Drawing.Font("Microsoft Sans Serif", 10F);
this.lblAutomatico.Location = new System.Drawing.Point(18, 6);
this.lblAutomatico.Name = "lblAutomatico";
this.lblAutomatico.Size = new System.Drawing.Size(99, 17);
this.lblAutomatico.TabIndex = 13;
this.lblAutomatico.Text = "AUTOMÁTICO";
//
// pnlAutomatico
//
this.pnlAutomatico.Location = new System.Drawing.Point(18, 26);
this.pnlAutomatico.Name = "pnlAutomatico";
this.pnlAutomatico.Size = new System.Drawing.Size(100, 100);
this.pnlAutomatico.TabIndex = 12;
//
// tabDirecional
//
this.tabDirecional.Controls.Add(this.txtDIR_Controlar_ET);
@ -1566,17 +1641,17 @@
//
// chartMovVelocidade
//
chartArea17.Name = "ChartArea1";
this.chartMovVelocidade.ChartAreas.Add(chartArea17);
legend17.Name = "Legend1";
this.chartMovVelocidade.Legends.Add(legend17);
chartArea1.Name = "ChartArea1";
this.chartMovVelocidade.ChartAreas.Add(chartArea1);
legend1.Name = "Legend1";
this.chartMovVelocidade.Legends.Add(legend1);
this.chartMovVelocidade.Location = new System.Drawing.Point(4, 4);
this.chartMovVelocidade.Margin = new System.Windows.Forms.Padding(2);
this.chartMovVelocidade.Name = "chartMovVelocidade";
series17.ChartArea = "ChartArea1";
series17.Legend = "Legend1";
series17.Name = "Series1";
this.chartMovVelocidade.Series.Add(series17);
series1.ChartArea = "ChartArea1";
series1.Legend = "Legend1";
series1.Name = "Series1";
this.chartMovVelocidade.Series.Add(series1);
this.chartMovVelocidade.Size = new System.Drawing.Size(474, 356);
this.chartMovVelocidade.TabIndex = 96;
this.chartMovVelocidade.Text = "chart1";
@ -1985,17 +2060,17 @@
//
// chartMovTemperatura
//
chartArea18.Name = "ChartArea1";
this.chartMovTemperatura.ChartAreas.Add(chartArea18);
legend18.Name = "Legend1";
this.chartMovTemperatura.Legends.Add(legend18);
chartArea2.Name = "ChartArea1";
this.chartMovTemperatura.ChartAreas.Add(chartArea2);
legend2.Name = "Legend1";
this.chartMovTemperatura.Legends.Add(legend2);
this.chartMovTemperatura.Location = new System.Drawing.Point(4, 4);
this.chartMovTemperatura.Margin = new System.Windows.Forms.Padding(2);
this.chartMovTemperatura.Name = "chartMovTemperatura";
series18.ChartArea = "ChartArea1";
series18.Legend = "Legend1";
series18.Name = "Series1";
this.chartMovTemperatura.Series.Add(series18);
series2.ChartArea = "ChartArea1";
series2.Legend = "Legend1";
series2.Name = "Series1";
this.chartMovTemperatura.Series.Add(series2);
this.chartMovTemperatura.Size = new System.Drawing.Size(474, 336);
this.chartMovTemperatura.TabIndex = 95;
this.chartMovTemperatura.Text = "chart1";
@ -2403,17 +2478,17 @@
//
// chartMovTensao
//
chartArea19.Name = "ChartArea1";
this.chartMovTensao.ChartAreas.Add(chartArea19);
legend19.Name = "Legend1";
this.chartMovTensao.Legends.Add(legend19);
chartArea3.Name = "ChartArea1";
this.chartMovTensao.ChartAreas.Add(chartArea3);
legend3.Name = "Legend1";
this.chartMovTensao.Legends.Add(legend3);
this.chartMovTensao.Location = new System.Drawing.Point(4, 4);
this.chartMovTensao.Margin = new System.Windows.Forms.Padding(2);
this.chartMovTensao.Name = "chartMovTensao";
series19.ChartArea = "ChartArea1";
series19.Legend = "Legend1";
series19.Name = "Series1";
this.chartMovTensao.Series.Add(series19);
series3.ChartArea = "ChartArea1";
series3.Legend = "Legend1";
series3.Name = "Series1";
this.chartMovTensao.Series.Add(series3);
this.chartMovTensao.Size = new System.Drawing.Size(474, 336);
this.chartMovTensao.TabIndex = 131;
this.chartMovTensao.Text = "chart1";
@ -2912,23 +2987,25 @@
//
// chartMovGeral
//
chartArea20.Name = "ChartArea1";
this.chartMovGeral.ChartAreas.Add(chartArea20);
legend20.Name = "Legend1";
this.chartMovGeral.Legends.Add(legend20);
chartArea4.Name = "ChartArea1";
this.chartMovGeral.ChartAreas.Add(chartArea4);
legend4.Name = "Legend1";
this.chartMovGeral.Legends.Add(legend4);
this.chartMovGeral.Location = new System.Drawing.Point(4, 4);
this.chartMovGeral.Margin = new System.Windows.Forms.Padding(2);
this.chartMovGeral.Name = "chartMovGeral";
series20.ChartArea = "ChartArea1";
series20.Legend = "Legend1";
series20.Name = "Series1";
this.chartMovGeral.Series.Add(series20);
series4.ChartArea = "ChartArea1";
series4.Legend = "Legend1";
series4.Name = "Series1";
this.chartMovGeral.Series.Add(series4);
this.chartMovGeral.Size = new System.Drawing.Size(474, 311);
this.chartMovGeral.TabIndex = 94;
this.chartMovGeral.Text = "chart1";
//
// tabAtuador
//
this.tabAtuador.Controls.Add(this.lblATU_LatenciaLoop);
this.tabAtuador.Controls.Add(this.lblATU_QualidadeWifi);
this.tabAtuador.Controls.Add(this.chbDesenharErvas);
this.tabAtuador.Controls.Add(this.chartAtuador);
this.tabAtuador.Controls.Add(this.pnlAtuadores);
@ -2947,7 +3024,7 @@
//
this.chbDesenharErvas.AutoSize = true;
this.chbDesenharErvas.BackColor = System.Drawing.Color.White;
this.chbDesenharErvas.Location = new System.Drawing.Point(375, 500);
this.chbDesenharErvas.Location = new System.Drawing.Point(375, 1);
this.chbDesenharErvas.Name = "chbDesenharErvas";
this.chbDesenharErvas.RightToLeft = System.Windows.Forms.RightToLeft.Yes;
this.chbDesenharErvas.Size = new System.Drawing.Size(116, 17);
@ -2957,17 +3034,17 @@
//
// chartAtuador
//
chartArea21.Name = "ChartArea1";
this.chartAtuador.ChartAreas.Add(chartArea21);
legend21.Name = "Legend1";
this.chartAtuador.Legends.Add(legend21);
chartArea5.Name = "ChartArea1";
this.chartAtuador.ChartAreas.Add(chartArea5);
legend5.Name = "Legend1";
this.chartAtuador.Legends.Add(legend5);
this.chartAtuador.Location = new System.Drawing.Point(4, 276);
this.chartAtuador.Margin = new System.Windows.Forms.Padding(2);
this.chartAtuador.Name = "chartAtuador";
series21.ChartArea = "ChartArea1";
series21.Legend = "Legend1";
series21.Name = "Series1";
this.chartAtuador.Series.Add(series21);
series5.ChartArea = "ChartArea1";
series5.Legend = "Legend1";
series5.Name = "Series1";
this.chartAtuador.Series.Add(series5);
this.chartAtuador.Size = new System.Drawing.Size(489, 241);
this.chartAtuador.TabIndex = 95;
this.chartAtuador.Text = "chart1";
@ -2983,20 +3060,20 @@
//
// picCameraSoloD
//
this.picCameraSoloD.Location = new System.Drawing.Point(252, 5);
this.picCameraSoloD.Location = new System.Drawing.Point(252, 18);
this.picCameraSoloD.Margin = new System.Windows.Forms.Padding(2);
this.picCameraSoloD.Name = "picCameraSoloD";
this.picCameraSoloD.Size = new System.Drawing.Size(242, 184);
this.picCameraSoloD.Size = new System.Drawing.Size(242, 171);
this.picCameraSoloD.SizeMode = System.Windows.Forms.PictureBoxSizeMode.StretchImage;
this.picCameraSoloD.TabIndex = 2;
this.picCameraSoloD.TabStop = false;
//
// picCameraSoloE
//
this.picCameraSoloE.Location = new System.Drawing.Point(4, 5);
this.picCameraSoloE.Location = new System.Drawing.Point(4, 18);
this.picCameraSoloE.Margin = new System.Windows.Forms.Padding(2);
this.picCameraSoloE.Name = "picCameraSoloE";
this.picCameraSoloE.Size = new System.Drawing.Size(242, 184);
this.picCameraSoloE.Size = new System.Drawing.Size(242, 171);
this.picCameraSoloE.SizeMode = System.Windows.Forms.PictureBoxSizeMode.StretchImage;
this.picCameraSoloE.TabIndex = 1;
this.picCameraSoloE.TabStop = false;
@ -3014,22 +3091,24 @@
//
// chartErvas
//
chartArea22.Name = "ChartArea1";
this.chartErvas.ChartAreas.Add(chartArea22);
legend22.Name = "Legend1";
this.chartErvas.Legends.Add(legend22);
chartArea6.Name = "ChartArea1";
this.chartErvas.ChartAreas.Add(chartArea6);
legend6.Name = "Legend1";
this.chartErvas.Legends.Add(legend6);
this.chartErvas.Location = new System.Drawing.Point(6, 6);
this.chartErvas.Name = "chartErvas";
series22.ChartArea = "ChartArea1";
series22.Legend = "Legend1";
series22.Name = "Series1";
this.chartErvas.Series.Add(series22);
series6.ChartArea = "ChartArea1";
series6.Legend = "Legend1";
series6.Name = "Series1";
this.chartErvas.Series.Add(series6);
this.chartErvas.Size = new System.Drawing.Size(484, 510);
this.chartErvas.TabIndex = 0;
this.chartErvas.Text = "chart1";
//
// tabSensoriamento
//
this.tabSensoriamento.Controls.Add(this.lblSEN_LatenciaLoop);
this.tabSensoriamento.Controls.Add(this.lblSEN_QualidadeWifi);
this.tabSensoriamento.Controls.Add(this.groupBox1);
this.tabSensoriamento.Controls.Add(this.gpbSEN_Filtro);
this.tabSensoriamento.Controls.Add(this.chartSensoriamento);
@ -3286,17 +3365,17 @@
//
// chartSensoriamento
//
chartArea23.Name = "ChartArea1";
this.chartSensoriamento.ChartAreas.Add(chartArea23);
legend23.Name = "Legend1";
this.chartSensoriamento.Legends.Add(legend23);
chartArea7.Name = "ChartArea1";
this.chartSensoriamento.ChartAreas.Add(chartArea7);
legend7.Name = "Legend1";
this.chartSensoriamento.Legends.Add(legend7);
this.chartSensoriamento.Location = new System.Drawing.Point(2, 4);
this.chartSensoriamento.Margin = new System.Windows.Forms.Padding(2);
this.chartSensoriamento.Name = "chartSensoriamento";
series23.ChartArea = "ChartArea1";
series23.Legend = "Legend1";
series23.Name = "Series1";
this.chartSensoriamento.Series.Add(series23);
series7.ChartArea = "ChartArea1";
series7.Legend = "Legend1";
series7.Name = "Series1";
this.chartSensoriamento.Series.Add(series7);
this.chartSensoriamento.Size = new System.Drawing.Size(491, 389);
this.chartSensoriamento.TabIndex = 95;
this.chartSensoriamento.Text = "chart1";
@ -3312,6 +3391,135 @@
this.tabUltrassom.Text = "Ultrassom";
this.tabUltrassom.UseVisualStyleBackColor = true;
//
// pnlUltrassom
//
this.pnlUltrassom.Controls.Add(this.pnlP_10);
this.pnlUltrassom.Controls.Add(this.pnlP_11);
this.pnlUltrassom.Controls.Add(this.pnlP_7);
this.pnlUltrassom.Controls.Add(this.pnlP_12);
this.pnlUltrassom.Controls.Add(this.pnlP_8);
this.pnlUltrassom.Controls.Add(this.pnlP_9);
this.pnlUltrassom.Controls.Add(this.pnlP_6);
this.pnlUltrassom.Controls.Add(this.pnlP_3);
this.pnlUltrassom.Controls.Add(this.pnlP_5);
this.pnlUltrassom.Controls.Add(this.pnlP_2);
this.pnlUltrassom.Controls.Add(this.pnlP_4);
this.pnlUltrassom.Controls.Add(this.pnlP_1);
this.pnlUltrassom.Controls.Add(this.picRobo);
this.pnlUltrassom.Location = new System.Drawing.Point(6, 6);
this.pnlUltrassom.Name = "pnlUltrassom";
this.pnlUltrassom.Size = new System.Drawing.Size(484, 510);
this.pnlUltrassom.TabIndex = 19;
//
// pnlP_10
//
this.pnlP_10.BackColor = System.Drawing.Color.Red;
this.pnlP_10.Location = new System.Drawing.Point(346, 77);
this.pnlP_10.Name = "pnlP_10";
this.pnlP_10.Size = new System.Drawing.Size(30, 30);
this.pnlP_10.TabIndex = 6;
//
// pnlP_11
//
this.pnlP_11.BackColor = System.Drawing.Color.Red;
this.pnlP_11.Location = new System.Drawing.Point(346, 191);
this.pnlP_11.Name = "pnlP_11";
this.pnlP_11.Size = new System.Drawing.Size(30, 30);
this.pnlP_11.TabIndex = 5;
//
// pnlP_7
//
this.pnlP_7.BackColor = System.Drawing.Color.Red;
this.pnlP_7.Location = new System.Drawing.Point(99, 77);
this.pnlP_7.Name = "pnlP_7";
this.pnlP_7.Size = new System.Drawing.Size(30, 30);
this.pnlP_7.TabIndex = 3;
//
// pnlP_12
//
this.pnlP_12.BackColor = System.Drawing.Color.Red;
this.pnlP_12.Location = new System.Drawing.Point(346, 306);
this.pnlP_12.Name = "pnlP_12";
this.pnlP_12.Size = new System.Drawing.Size(30, 30);
this.pnlP_12.TabIndex = 4;
//
// pnlP_8
//
this.pnlP_8.BackColor = System.Drawing.Color.Red;
this.pnlP_8.Location = new System.Drawing.Point(99, 191);
this.pnlP_8.Name = "pnlP_8";
this.pnlP_8.Size = new System.Drawing.Size(30, 30);
this.pnlP_8.TabIndex = 3;
//
// pnlP_9
//
this.pnlP_9.BackColor = System.Drawing.Color.Red;
this.pnlP_9.Location = new System.Drawing.Point(99, 306);
this.pnlP_9.Name = "pnlP_9";
this.pnlP_9.Size = new System.Drawing.Size(30, 30);
this.pnlP_9.TabIndex = 2;
//
// pnlP_6
//
this.pnlP_6.BackColor = System.Drawing.Color.Red;
this.pnlP_6.Location = new System.Drawing.Point(286, 44);
this.pnlP_6.Name = "pnlP_6";
this.pnlP_6.Size = new System.Drawing.Size(30, 30);
this.pnlP_6.TabIndex = 5;
//
// pnlP_3
//
this.pnlP_3.BackColor = System.Drawing.Color.Red;
this.pnlP_3.Location = new System.Drawing.Point(286, 340);
this.pnlP_3.Name = "pnlP_3";
this.pnlP_3.Size = new System.Drawing.Size(30, 30);
this.pnlP_3.TabIndex = 2;
//
// pnlP_5
//
this.pnlP_5.BackColor = System.Drawing.Color.Red;
this.pnlP_5.Location = new System.Drawing.Point(223, 44);
this.pnlP_5.Name = "pnlP_5";
this.pnlP_5.Size = new System.Drawing.Size(30, 30);
this.pnlP_5.TabIndex = 4;
//
// pnlP_2
//
this.pnlP_2.BackColor = System.Drawing.Color.Red;
this.pnlP_2.Location = new System.Drawing.Point(223, 340);
this.pnlP_2.Name = "pnlP_2";
this.pnlP_2.Size = new System.Drawing.Size(30, 30);
this.pnlP_2.TabIndex = 2;
//
// pnlP_4
//
this.pnlP_4.BackColor = System.Drawing.Color.Red;
this.pnlP_4.Location = new System.Drawing.Point(159, 44);
this.pnlP_4.Name = "pnlP_4";
this.pnlP_4.Size = new System.Drawing.Size(30, 30);
this.pnlP_4.TabIndex = 3;
//
// pnlP_1
//
this.pnlP_1.BackColor = System.Drawing.Color.Red;
this.pnlP_1.Location = new System.Drawing.Point(159, 340);
this.pnlP_1.Name = "pnlP_1";
this.pnlP_1.Size = new System.Drawing.Size(30, 30);
this.pnlP_1.TabIndex = 1;
//
// picRobo
//
this.picRobo.Anchor = ((System.Windows.Forms.AnchorStyles)((((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom)
| System.Windows.Forms.AnchorStyles.Left)
| System.Windows.Forms.AnchorStyles.Right)));
this.picRobo.Image = global::AgroBase.Properties.Resources.robo_superior;
this.picRobo.Location = new System.Drawing.Point(3, 3);
this.picRobo.Name = "picRobo";
this.picRobo.Size = new System.Drawing.Size(478, 504);
this.picRobo.SizeMode = System.Windows.Forms.PictureBoxSizeMode.Zoom;
this.picRobo.TabIndex = 0;
this.picRobo.TabStop = false;
//
// tabOrientacao
//
this.tabOrientacao.Controls.Add(this.pnlInclinacao);
@ -3883,17 +4091,17 @@
//
// chartCpu
//
chartArea24.Name = "ChartArea1";
this.chartCpu.ChartAreas.Add(chartArea24);
legend24.Name = "Legend1";
this.chartCpu.Legends.Add(legend24);
chartArea8.Name = "ChartArea1";
this.chartCpu.ChartAreas.Add(chartArea8);
legend8.Name = "Legend1";
this.chartCpu.Legends.Add(legend8);
this.chartCpu.Location = new System.Drawing.Point(2, 3);
this.chartCpu.Margin = new System.Windows.Forms.Padding(2);
this.chartCpu.Name = "chartCpu";
series24.ChartArea = "ChartArea1";
series24.Legend = "Legend1";
series24.Name = "Series1";
this.chartCpu.Series.Add(series24);
series8.ChartArea = "ChartArea1";
series8.Legend = "Legend1";
series8.Name = "Series1";
this.chartCpu.Series.Add(series8);
this.chartCpu.Size = new System.Drawing.Size(491, 389);
this.chartCpu.TabIndex = 134;
this.chartCpu.Text = "chart1";
@ -4350,205 +4558,41 @@
this.btnPlay.UseVisualStyleBackColor = true;
this.btnPlay.Click += new System.EventHandler(this.btnPlay_Click);
//
// tvwFalhas
// lblATU_QualidadeWifi
//
this.tvwFalhas.Anchor = ((System.Windows.Forms.AnchorStyles)((((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom)
| System.Windows.Forms.AnchorStyles.Left)
| System.Windows.Forms.AnchorStyles.Right)));
this.tvwFalhas.Location = new System.Drawing.Point(6, 161);
this.tvwFalhas.Name = "tvwFalhas";
this.tvwFalhas.Size = new System.Drawing.Size(484, 355);
this.tvwFalhas.TabIndex = 18;
this.lblATU_QualidadeWifi.AutoSize = true;
this.lblATU_QualidadeWifi.Location = new System.Drawing.Point(5, 2);
this.lblATU_QualidadeWifi.Name = "lblATU_QualidadeWifi";
this.lblATU_QualidadeWifi.Size = new System.Drawing.Size(112, 13);
this.lblATU_QualidadeWifi.TabIndex = 0;
this.lblATU_QualidadeWifi.Text = "Qualidade Wifi: 0 dBm";
//
// lblManual
// lblATU_LatenciaLoop
//
this.lblManual.AutoSize = true;
this.lblManual.Font = new System.Drawing.Font("Microsoft Sans Serif", 10F);
this.lblManual.Location = new System.Drawing.Point(393, 6);
this.lblManual.Name = "lblManual";
this.lblManual.Size = new System.Drawing.Size(65, 17);
this.lblManual.TabIndex = 16;
this.lblManual.Text = "MANUAL";
this.lblATU_LatenciaLoop.AutoSize = true;
this.lblATU_LatenciaLoop.Location = new System.Drawing.Point(177, 2);
this.lblATU_LatenciaLoop.Name = "lblATU_LatenciaLoop";
this.lblATU_LatenciaLoop.Size = new System.Drawing.Size(118, 13);
this.lblATU_LatenciaLoop.TabIndex = 96;
this.lblATU_LatenciaLoop.Text = "Latência de Loop: 0 ms";
//
// lblOperacao
// lblSEN_LatenciaLoop
//
this.lblOperacao.AutoSize = true;
this.lblOperacao.Font = new System.Drawing.Font("Microsoft Sans Serif", 10F);
this.lblOperacao.Location = new System.Drawing.Point(212, 6);
this.lblOperacao.Name = "lblOperacao";
this.lblOperacao.Size = new System.Drawing.Size(85, 17);
this.lblOperacao.TabIndex = 17;
this.lblOperacao.Text = "OPERAÇÃO";
this.lblSEN_LatenciaLoop.AutoSize = true;
this.lblSEN_LatenciaLoop.Location = new System.Drawing.Point(227, 420);
this.lblSEN_LatenciaLoop.Name = "lblSEN_LatenciaLoop";
this.lblSEN_LatenciaLoop.Size = new System.Drawing.Size(118, 13);
this.lblSEN_LatenciaLoop.TabIndex = 135;
this.lblSEN_LatenciaLoop.Text = "Latência de Loop: 0 ms";
//
// pnlManual
// lblSEN_QualidadeWifi
//
this.pnlManual.Location = new System.Drawing.Point(375, 26);
this.pnlManual.Name = "pnlManual";
this.pnlManual.Size = new System.Drawing.Size(100, 100);
this.pnlManual.TabIndex = 14;
//
// pnlOperacao
//
this.pnlOperacao.Location = new System.Drawing.Point(204, 26);
this.pnlOperacao.Name = "pnlOperacao";
this.pnlOperacao.Size = new System.Drawing.Size(100, 100);
this.pnlOperacao.TabIndex = 15;
//
// lblAutomatico
//
this.lblAutomatico.AutoSize = true;
this.lblAutomatico.Font = new System.Drawing.Font("Microsoft Sans Serif", 10F);
this.lblAutomatico.Location = new System.Drawing.Point(18, 6);
this.lblAutomatico.Name = "lblAutomatico";
this.lblAutomatico.Size = new System.Drawing.Size(99, 17);
this.lblAutomatico.TabIndex = 13;
this.lblAutomatico.Text = "AUTOMÁTICO";
//
// pnlAutomatico
//
this.pnlAutomatico.Location = new System.Drawing.Point(18, 26);
this.pnlAutomatico.Name = "pnlAutomatico";
this.pnlAutomatico.Size = new System.Drawing.Size(100, 100);
this.pnlAutomatico.TabIndex = 12;
//
// label117
//
this.label117.AutoSize = true;
this.label117.Font = new System.Drawing.Font("Microsoft Sans Serif", 10F);
this.label117.Location = new System.Drawing.Point(6, 141);
this.label117.Name = "label117";
this.label117.Size = new System.Drawing.Size(118, 17);
this.label117.TabIndex = 19;
this.label117.Text = "Código de Falhas";
//
// pnlUltrassom
//
this.pnlUltrassom.Controls.Add(this.pnlP_10);
this.pnlUltrassom.Controls.Add(this.pnlP_11);
this.pnlUltrassom.Controls.Add(this.pnlP_7);
this.pnlUltrassom.Controls.Add(this.pnlP_12);
this.pnlUltrassom.Controls.Add(this.pnlP_8);
this.pnlUltrassom.Controls.Add(this.pnlP_9);
this.pnlUltrassom.Controls.Add(this.pnlP_6);
this.pnlUltrassom.Controls.Add(this.pnlP_3);
this.pnlUltrassom.Controls.Add(this.pnlP_5);
this.pnlUltrassom.Controls.Add(this.pnlP_2);
this.pnlUltrassom.Controls.Add(this.pnlP_4);
this.pnlUltrassom.Controls.Add(this.pnlP_1);
this.pnlUltrassom.Controls.Add(this.picRobo);
this.pnlUltrassom.Location = new System.Drawing.Point(6, 6);
this.pnlUltrassom.Name = "pnlUltrassom";
this.pnlUltrassom.Size = new System.Drawing.Size(484, 510);
this.pnlUltrassom.TabIndex = 19;
//
// pnlP_10
//
this.pnlP_10.BackColor = System.Drawing.Color.Red;
this.pnlP_10.Location = new System.Drawing.Point(346, 77);
this.pnlP_10.Name = "pnlP_10";
this.pnlP_10.Size = new System.Drawing.Size(30, 30);
this.pnlP_10.TabIndex = 6;
//
// pnlP_11
//
this.pnlP_11.BackColor = System.Drawing.Color.Red;
this.pnlP_11.Location = new System.Drawing.Point(346, 191);
this.pnlP_11.Name = "pnlP_11";
this.pnlP_11.Size = new System.Drawing.Size(30, 30);
this.pnlP_11.TabIndex = 5;
//
// pnlP_7
//
this.pnlP_7.BackColor = System.Drawing.Color.Red;
this.pnlP_7.Location = new System.Drawing.Point(99, 77);
this.pnlP_7.Name = "pnlP_7";
this.pnlP_7.Size = new System.Drawing.Size(30, 30);
this.pnlP_7.TabIndex = 3;
//
// pnlP_12
//
this.pnlP_12.BackColor = System.Drawing.Color.Red;
this.pnlP_12.Location = new System.Drawing.Point(346, 306);
this.pnlP_12.Name = "pnlP_12";
this.pnlP_12.Size = new System.Drawing.Size(30, 30);
this.pnlP_12.TabIndex = 4;
//
// pnlP_8
//
this.pnlP_8.BackColor = System.Drawing.Color.Red;
this.pnlP_8.Location = new System.Drawing.Point(99, 191);
this.pnlP_8.Name = "pnlP_8";
this.pnlP_8.Size = new System.Drawing.Size(30, 30);
this.pnlP_8.TabIndex = 3;
//
// pnlP_9
//
this.pnlP_9.BackColor = System.Drawing.Color.Red;
this.pnlP_9.Location = new System.Drawing.Point(99, 306);
this.pnlP_9.Name = "pnlP_9";
this.pnlP_9.Size = new System.Drawing.Size(30, 30);
this.pnlP_9.TabIndex = 2;
//
// pnlP_6
//
this.pnlP_6.BackColor = System.Drawing.Color.Red;
this.pnlP_6.Location = new System.Drawing.Point(286, 44);
this.pnlP_6.Name = "pnlP_6";
this.pnlP_6.Size = new System.Drawing.Size(30, 30);
this.pnlP_6.TabIndex = 5;
//
// pnlP_3
//
this.pnlP_3.BackColor = System.Drawing.Color.Red;
this.pnlP_3.Location = new System.Drawing.Point(286, 340);
this.pnlP_3.Name = "pnlP_3";
this.pnlP_3.Size = new System.Drawing.Size(30, 30);
this.pnlP_3.TabIndex = 2;
//
// pnlP_5
//
this.pnlP_5.BackColor = System.Drawing.Color.Red;
this.pnlP_5.Location = new System.Drawing.Point(223, 44);
this.pnlP_5.Name = "pnlP_5";
this.pnlP_5.Size = new System.Drawing.Size(30, 30);
this.pnlP_5.TabIndex = 4;
//
// pnlP_2
//
this.pnlP_2.BackColor = System.Drawing.Color.Red;
this.pnlP_2.Location = new System.Drawing.Point(223, 340);
this.pnlP_2.Name = "pnlP_2";
this.pnlP_2.Size = new System.Drawing.Size(30, 30);
this.pnlP_2.TabIndex = 2;
//
// pnlP_4
//
this.pnlP_4.BackColor = System.Drawing.Color.Red;
this.pnlP_4.Location = new System.Drawing.Point(159, 44);
this.pnlP_4.Name = "pnlP_4";
this.pnlP_4.Size = new System.Drawing.Size(30, 30);
this.pnlP_4.TabIndex = 3;
//
// pnlP_1
//
this.pnlP_1.BackColor = System.Drawing.Color.Red;
this.pnlP_1.Location = new System.Drawing.Point(159, 340);
this.pnlP_1.Name = "pnlP_1";
this.pnlP_1.Size = new System.Drawing.Size(30, 30);
this.pnlP_1.TabIndex = 1;
//
// picRobo
//
this.picRobo.Anchor = ((System.Windows.Forms.AnchorStyles)((((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom)
| System.Windows.Forms.AnchorStyles.Left)
| System.Windows.Forms.AnchorStyles.Right)));
this.picRobo.Image = global::AgroBase.Properties.Resources.robo_superior;
this.picRobo.Location = new System.Drawing.Point(3, 3);
this.picRobo.Name = "picRobo";
this.picRobo.Size = new System.Drawing.Size(478, 504);
this.picRobo.SizeMode = System.Windows.Forms.PictureBoxSizeMode.Zoom;
this.picRobo.TabIndex = 0;
this.picRobo.TabStop = false;
this.lblSEN_QualidadeWifi.AutoSize = true;
this.lblSEN_QualidadeWifi.Location = new System.Drawing.Point(227, 404);
this.lblSEN_QualidadeWifi.Name = "lblSEN_QualidadeWifi";
this.lblSEN_QualidadeWifi.Size = new System.Drawing.Size(112, 13);
this.lblSEN_QualidadeWifi.TabIndex = 134;
this.lblSEN_QualidadeWifi.Text = "Qualidade Wifi: 0 dBm";
//
// frmResultadosOperacao
//
@ -4632,12 +4676,15 @@
this.tabErvas.ResumeLayout(false);
((System.ComponentModel.ISupportInitialize)(this.chartErvas)).EndInit();
this.tabSensoriamento.ResumeLayout(false);
this.tabSensoriamento.PerformLayout();
this.groupBox1.ResumeLayout(false);
this.groupBox1.PerformLayout();
this.gpbSEN_Filtro.ResumeLayout(false);
this.gpbSEN_Filtro.PerformLayout();
((System.ComponentModel.ISupportInitialize)(this.chartSensoriamento)).EndInit();
this.tabUltrassom.ResumeLayout(false);
this.pnlUltrassom.ResumeLayout(false);
((System.ComponentModel.ISupportInitialize)(this.picRobo)).EndInit();
this.tabOrientacao.ResumeLayout(false);
this.tabSonar.ResumeLayout(false);
this.tabSonar.PerformLayout();
@ -4658,8 +4705,6 @@
this.panel6.ResumeLayout(false);
this.panel6.PerformLayout();
((System.ComponentModel.ISupportInitialize)(this.picCameraCaminho)).EndInit();
this.pnlUltrassom.ResumeLayout(false);
((System.ComponentModel.ISupportInitialize)(this.picRobo)).EndInit();
this.ResumeLayout(false);
this.PerformLayout();
@ -5031,5 +5076,9 @@
private System.Windows.Forms.Panel pnlP_4;
private System.Windows.Forms.Panel pnlP_1;
private System.Windows.Forms.PictureBox picRobo;
private System.Windows.Forms.Label lblATU_LatenciaLoop;
private System.Windows.Forms.Label lblATU_QualidadeWifi;
private System.Windows.Forms.Label lblSEN_LatenciaLoop;
private System.Windows.Forms.Label lblSEN_QualidadeWifi;
}
}

View File

@ -957,6 +957,15 @@ namespace AgroBase.Forms.Operacoes
graficoErvas.AtualizarDados(idxMomentoAtual);
pnlAtuadores.Invalidate();
var Log = LogsAtuador.FirstOrDefault(x => x.Momento == MomentoAtual);
if (Log == null)
{
return;
}
lblATU_QualidadeWifi.Text = $"Qualidade Wi-Fi: {Log.QualidadeWifi} dBm";
lblATU_LatenciaLoop.Text = $"Latencia de Loop: {Log.LatenciaLoop} ms";
}
private void AtualizarInformacoesSensoriamento()
@ -987,6 +996,8 @@ namespace AgroBase.Forms.Operacoes
pnlManual.BackColor = LogSen.Sinaleiros?.FirstOrDefault(x => x.ID.Contains("MN"))?.Leitura == Enums.StatusLED.Aceso ? Color.Yellow : Color.Gold;
pnlAutomatico.BackColor = LogSen.Sinaleiros?.FirstOrDefault(x => x.ID.Contains("AT"))?.Leitura == Enums.StatusLED.Aceso ? Color.Yellow : Color.Gold;
pnlOperacao.BackColor = LogSen.Sinaleiros?.FirstOrDefault(x => x.ID.Contains("OP"))?.Leitura == Enums.StatusLED.Aceso ? Color.Green : Color.DarkGreen;
lblSEN_QualidadeWifi.Text = $"Qualidade Wi-Fi: {LogSen.QualidadeWifi} dBm";
lblSEN_LatenciaLoop.Text = $"Latencia de Loop: {LogSen.LatenciaLoop} ms";
var LogA05 = LogsA05.FirstOrDefault(x => x.Momento == MomentoAtual);

View File

@ -53,6 +53,7 @@ namespace AgroBase
this.lblStripOperacaoLiberada = new System.Windows.Forms.ToolStripStatusLabel();
this.lblStripOperacaoStatus = new System.Windows.Forms.ToolStripStatusLabel();
this.lblStripMqtt = new System.Windows.Forms.ToolStripStatusLabel();
this.lblStripWifi = new System.Windows.Forms.ToolStripStatusLabel();
this.gpbMovimentacao = new System.Windows.Forms.GroupBox();
this.lblKmh = new System.Windows.Forms.Label();
this.trkKmh = new System.Windows.Forms.TrackBar();
@ -99,7 +100,8 @@ namespace AgroBase
this.btnForcarAtualizacao = new System.Windows.Forms.Button();
this.clbRotinas = new System.Windows.Forms.CheckedListBox();
this.btnAtualizarRotinas = new System.Windows.Forms.Button();
this.lblStripWifi = new System.Windows.Forms.ToolStripStatusLabel();
this.txtCodErro = new System.Windows.Forms.TextBox();
this.lblCodErro = new System.Windows.Forms.Label();
this.gpbAcoes.SuspendLayout();
this.erroStrip.SuspendLayout();
this.pnlLateral.SuspendLayout();
@ -160,6 +162,8 @@ namespace AgroBase
// pnlLateral
//
this.pnlLateral.AutoScroll = true;
this.pnlLateral.Controls.Add(this.lblCodErro);
this.pnlLateral.Controls.Add(this.txtCodErro);
this.pnlLateral.Controls.Add(this.chbConexaoautomatica);
this.pnlLateral.Controls.Add(this.gpbDispositivos);
this.pnlLateral.Controls.Add(this.btnRemover);
@ -367,6 +371,12 @@ namespace AgroBase
this.lblStripMqtt.Size = new System.Drawing.Size(119, 17);
this.lblStripMqtt.Text = "MQTT: Desconectado";
//
// lblStripWifi
//
this.lblStripWifi.Name = "lblStripWifi";
this.lblStripWifi.Size = new System.Drawing.Size(116, 17);
this.lblStripWifi.Text = "Wi-Fi: Desconectado";
//
// gpbMovimentacao
//
this.gpbMovimentacao.Controls.Add(this.lblKmh);
@ -906,11 +916,23 @@ namespace AgroBase
this.btnAtualizarRotinas.UseVisualStyleBackColor = true;
this.btnAtualizarRotinas.Click += new System.EventHandler(this.btnAtualizarRotinas_Click);
//
// lblStripWifi
// txtCodErro
//
this.lblStripWifi.Name = "lblStripWifi";
this.lblStripWifi.Size = new System.Drawing.Size(116, 17);
this.lblStripWifi.Text = "Wi-Fi: Desconectado";
this.txtCodErro.Location = new System.Drawing.Point(379, 48);
this.txtCodErro.Name = "txtCodErro";
this.txtCodErro.Size = new System.Drawing.Size(210, 20);
this.txtCodErro.TabIndex = 22;
this.txtCodErro.KeyDown += new System.Windows.Forms.KeyEventHandler(this.txtCodErro_KeyDown);
//
// lblCodErro
//
this.lblCodErro.AutoSize = true;
this.lblCodErro.Location = new System.Drawing.Point(376, 32);
this.lblCodErro.Margin = new System.Windows.Forms.Padding(2, 0, 2, 0);
this.lblCodErro.Name = "lblCodErro";
this.lblCodErro.Size = new System.Drawing.Size(77, 13);
this.lblCodErro.TabIndex = 23;
this.lblCodErro.Text = "Código de Erro";
//
// frmPrincipal
//
@ -1037,6 +1059,8 @@ namespace AgroBase
private System.Windows.Forms.Button btnAtualizarRotinas;
public System.Windows.Forms.ProgressBar pgbAtualizacaoArquivos;
public System.Windows.Forms.ToolStripStatusLabel lblStripWifi;
private System.Windows.Forms.Label lblCodErro;
private System.Windows.Forms.TextBox txtCodErro;
}
}

View File

@ -130,7 +130,7 @@ namespace AgroBase
public void AtualizaDadosGerais()
{
if (Variaveis.DispositivosConectados.Any() && pnlLateral.Controls.Count == 7)
if (Variaveis.DispositivosConectados.Any() && pnlLateral.Controls.Count == 9)
{
SerialService.DispositivosConexaoInicial.ForEach(Dispositivo =>
{
@ -442,8 +442,17 @@ namespace AgroBase
#endregion
private void txtCodErro_KeyDown(object sender, KeyEventArgs e)
{
if (e.KeyCode == Keys.Enter && string.IsNullOrEmpty(txtCodErro.Text))
{
ulong cod = ulong.Parse(txtCodErro.Text);
string desc = OperacaoModel.DescricaoCodigoFalha(cod);
MessageBox.Show(desc);
}
}
}
}

View File

@ -377,8 +377,10 @@ namespace AgroBase.Models.Modules
private string[] SensoresConfig(bool Conectar)
{
bool configurarTodos = (Sensores.Any(x => x.Aferir && x.Inicializado) && Sensores.Any(x => x.Aferir && !x.Inicializado));
var sensoresConfig = Sensores
.Where(x => x.Aferir && x.Inicializado != Conectar)
.Where(x => x.Aferir && (configurarTodos ? true : x.Inicializado != Conectar))
.GroupBy(x => x.Componente)
.Select(x =>
((int)F_Code.Cfg).ToString() + SerialService.SplitMessage +
@ -392,8 +394,10 @@ namespace AgroBase.Models.Modules
private string[] BicosConfig(bool Conectar)
{
bool configurarTodos = (BicosPulverizadores.Any(x => x.Comandar && x.Inicializado) && BicosPulverizadores.Any(x => x.Comandar && !x.Inicializado));
var relesConfig = BicosPulverizadores
.Where(x => x.Comandar && x.Inicializado != Conectar)
.Where(x => x.Comandar && (configurarTodos ? true : x.Inicializado != Conectar))
.GroupBy(x => x.Componente)
.Select(x =>
((int)F_Code.Cfg).ToString() + SerialService.SplitMessage +
@ -407,8 +411,10 @@ namespace AgroBase.Models.Modules
private string[] BombasConfig(bool Conectar)
{
bool configurarTodos = (BombasPressurizadoras.Any(x => x.Comandar && x.Inicializado) && BombasPressurizadoras.Any(x => x.Comandar && !x.Inicializado));
var servosConfig = BombasPressurizadoras
.Where(x => x.Comandar && x.Inicializado != Conectar)
.Where(x => x.Comandar && (configurarTodos ? true : x.Inicializado != Conectar))
.GroupBy(x => x.Componente)
.Select(x =>
((int)F_Code.Cfg).ToString() + SerialService.SplitMessage +
@ -548,6 +554,11 @@ namespace AgroBase.Models.Modules
public async Task tmrRegistrador_Tick()
{
if (Variaveis.OperacaoEmAndamento?.DispAtu != null)
{
await Variaveis.OperacaoEmAndamento.DispAtu.GerenciarMqttTopicos();
}
tmrRegistrador.SetInterval(_TaxaAmostragem);
bool _conectado = DadosLeitura.Conectado && DadosLeitura.Momento.AddMilliseconds(10 * _TaxaAmostragem) >= DateTime.Now;
@ -1093,9 +1104,11 @@ namespace AgroBase.Models.Modules
public class AtuadorMensagemJsonModel
{
public DateTime Momento { get; set; }
public bool Conectado { get; set; }
public string Mod_ID { get; set; }
public DateTime Momento { get; set; }
public int QualidadeWifi { get; set; }
public int LatenciaLoop { get; set; }
public List<FirmwareRele> BicosPulverizadores { get; set; } = new List<FirmwareRele>();
public List<FirmwareBombaPressurizadora> BombasPressurizadoras { get; set; } = new List<FirmwareBombaPressurizadora>();
public List<FirmwareSensorFluxo> SensoresFluxo { get; set; } = new List<FirmwareSensorFluxo>();

View File

@ -518,8 +518,10 @@ namespace AgroBase.Models.Modules
private string[] SensoresConfig(bool Conectar)
{
bool configurarTodos = (Sensores.Any(x => x.Aferir && x.Inicializado) && Sensores.Any(x => x.Aferir && !x.Inicializado));
var sensoresConfig = Sensores
.Where(x => x.Aferir && x.Inicializado != Conectar)
.Where(x => x.Aferir && (configurarTodos ? true : x.Inicializado != Conectar))
.GroupBy(x => x.Componente)
.Select(x =>
((int)F_Code.Cfg).ToString() + SerialService.SplitMessage +
@ -533,8 +535,10 @@ namespace AgroBase.Models.Modules
private string[] SinaleirosConfig(bool Conectar)
{
bool configurarTodos = (Sinaleiros.Any(x => x.Inicializado) && Sinaleiros.Any(x => !x.Inicializado));
var sinaleirosConfig = Sinaleiros
.Where(x => x.Inicializado != Conectar)
.Where(x => (configurarTodos ? true : x.Inicializado != Conectar))
.GroupBy(x => x.Componente)
.Select(x =>
((int)F_Code.Cfg).ToString() + SerialService.SplitMessage +
@ -548,8 +552,10 @@ namespace AgroBase.Models.Modules
private string[] RelesConfig(bool Conectar)
{
bool configurarTodos = (Reles.Any(x => x.Controlar && x.Inicializado) && Reles.Any(x => x.Controlar && !x.Inicializado));
var relesConfig = Reles
.Where(x => x.Controlar && x.Inicializado != Conectar)
.Where(x => x.Controlar && (configurarTodos ? true : x.Inicializado != Conectar))
.GroupBy(x => x.Componente)
.Select(x =>
((int)F_Code.Cfg).ToString() + SerialService.SplitMessage +
@ -563,8 +569,10 @@ namespace AgroBase.Models.Modules
private string[] ServosConfig(bool Conectar)
{
bool configurarTodos = (Servos.Any(x => x.Controlar && x.Inicializado) && Servos.Any(x => x.Controlar && !x.Inicializado));
var servosConfig = Servos
.Where(x => x.Controlar && x.Inicializado != Conectar)
.Where(x => x.Controlar && (configurarTodos ? true : x.Inicializado != Conectar))
.GroupBy(x => x.Componente)
.Select(x =>
((int)F_Code.Cfg).ToString() + SerialService.SplitMessage +
@ -711,6 +719,11 @@ namespace AgroBase.Models.Modules
public async Task tmrRegistrador_Tick()
{
if (Variaveis.OperacaoEmAndamento?.DispSen != null)
{
await Variaveis.OperacaoEmAndamento.DispSen.GerenciarMqttTopicos();
}
tmrRegistrador.SetInterval(_TaxaAmostragem);
bool _conectado = DadosLeitura.Conectado && DadosLeitura.Momento.AddMilliseconds(10 * _TaxaAmostragem) >= DateTime.Now;
@ -1650,9 +1663,11 @@ namespace AgroBase.Models.Modules
public class SensoriamentoMensagemJsonModel
{
public DateTime Momento { get; set; }
public bool Conectado { get; set; }
public string Mod_ID { get; set; }
public DateTime Momento { get; set; }
public int QualidadeWifi { get; set; }
public int LatenciaLoop { get; set; }
public List<FirmwareSensorTemperatura> SensoresTemperatura { get; set; } = new List<FirmwareSensorTemperatura>();
public List<FirmwareSensorCorrente> SensoresCorrente { get; set; } = new List<FirmwareSensorCorrente>();
public List<FirmwareSinaleiro> Sinaleiros { get; set; } = new List<FirmwareSinaleiro>();

View File

@ -279,8 +279,11 @@ namespace AgroBase.Models.Operacoes
{
Mensagem.Mensagem = Mensagem.Mensagem.Replace("\n", "");
Mensagem.Mensagem = Mensagem.Mensagem.Replace("\"", "");
ids = JsonConvert.DeserializeObject<int[]>(Mensagem.Mensagem).Select(x => x.ToString()).ToList();
idsMensagem = true;
if (!string.IsNullOrEmpty(Mensagem.Mensagem))
{
ids = JsonConvert.DeserializeObject<int[]>(Mensagem.Mensagem).Select(x => x.ToString()).ToList();
idsMensagem = true;
}
}
if (idsMensagem && ids.Count != Variaveis.OperacaoEmAndamento.Mapa.RuasPercorrer.Count)
{

View File

@ -1970,6 +1970,8 @@ namespace AgroBase.Models
{
Momento = Agora,
Inicializado = Variaveis.OperacaoEmAndamento.DispAtu.Dados.Conectado,
QualidadeWifi = Variaveis.OperacaoEmAndamento.DispAtu.Dados.DadosLeitura.QualidadeWifi,
LatenciaLoop = Variaveis.OperacaoEmAndamento.DispAtu.Dados.DadosLeitura.LatenciaLoop,
MassaReservatorio = Variaveis.OperacaoEmAndamento.DispAtu.Dados.MassaReservatorio,
PercentualReservatorio = Variaveis.OperacaoEmAndamento.DispAtu.Dados.PercentualReservatorio,
VolumeReservatorio = Variaveis.OperacaoEmAndamento.DispAtu.Dados.VolumeReservatorio,
@ -2002,6 +2004,8 @@ namespace AgroBase.Models
{
Momento = Agora,
Conectado = senLeitura.Conectado,
LatenciaLoop = senLeitura.LatenciaLoop,
QualidadeWifi = senLeitura.QualidadeWifi,
Mod_ID = senLeitura.Mod_ID,
Reles = new List<FirmwareRele>(senLeitura.Reles),
SensoresCorrente = new List<FirmwareSensorCorrente>(senLeitura.SensoresCorrente),
@ -3125,6 +3129,8 @@ namespace AgroBase.Models
{
public DateTime Momento { get; set; }
public bool Inicializado { get; set; }
public int QualidadeWifi { get; set; }
public int LatenciaLoop { get; set; }
public double MassaReservatorio { get; set; }
public double PressaoLinha_SP { get; set; }
public double PressaoLinha { get; set; }

View File

@ -187,25 +187,28 @@ public class MqttService
public async Task<MqttTopicosModel> AdicionarNovoTopico(string topico, bool inscrever = false, int mensagensManter = 2, Func<MqttTopicosMensagensModel, Task> callback = null)
{
var _mqttTopico = new MqttTopicosModel()
{
Topico = topico,
Mensagens = new List<MqttTopicosMensagensModel>(),
Inscrever = inscrever,
MensagensManter = mensagensManter,
Callback = callback
};
if (!Topicos.Any(x => x.Topico == _mqttTopico.Topico))
var _mqttTopico = Topicos.FirstOrDefault(x => x.Topico == topico);
if (_mqttTopico == null)
{
_mqttTopico = new MqttTopicosModel()
{
Topico = topico,
Mensagens = new List<MqttTopicosMensagensModel>(),
Inscrever = inscrever,
MensagensManter = mensagensManter,
Callback = callback
};
Topicos.Add(_mqttTopico);
}
if (_mqttTopico.Inscrever)
{
await SubscribeAsync(_mqttTopico);
}
if (_mqttTopico.Inscrever)
{
await SubscribeAsync(_mqttTopico);
}
await LimparMensagensRetidas(_mqttTopico.Topico);
await LimparMensagensRetidas(_mqttTopico.Topico);
}
return _mqttTopico;
}

View File

@ -1 +1 @@
{"tmrRegistrador":{"_uiControl":null,"State":2,"IsRunning":false,"IsStopped":true,"IsCreated":false,"Interval":1000,"StackTrace":"AtuadorModel.IniciarRegistrador","Id":"tmrRegistrador_Atu","TimeTick":"00:00:00"},"Modulo_ID":"Atu","IP":"192.168.100.13","RequisitarDados":true,"Conectado":false,"QuantidadeBicos":4,"DensidadeHerbicida":1.05,"BicosPulverizadores":[{"ID":"B01","Posicao":1,"Componente":422,"AtuacaoNivelAlto":true,"ComandoAtuar":false,"Comandar":true,"Testando":false,"Funcoes":[21],"LeituraStatusBico":false,"MediaNivelFluxo":0.0,"Leitura":null,"Inicializado":false,"Atuacoes":0,"InicioAtuacao":"0001-01-01T00:00:00","TempoAtuado":0.0},{"ID":"B02","Posicao":2,"Componente":422,"AtuacaoNivelAlto":true,"ComandoAtuar":false,"Comandar":true,"Testando":false,"Funcoes":[21],"LeituraStatusBico":false,"MediaNivelFluxo":0.0,"Leitura":null,"Inicializado":false,"Atuacoes":0,"InicioAtuacao":"0001-01-01T00:00:00","TempoAtuado":0.0},{"ID":"B03","Posicao":3,"Componente":422,"AtuacaoNivelAlto":true,"ComandoAtuar":false,"Comandar":true,"Testando":false,"Funcoes":[21],"LeituraStatusBico":false,"MediaNivelFluxo":0.0,"Leitura":null,"Inicializado":false,"Atuacoes":0,"InicioAtuacao":"0001-01-01T00:00:00","TempoAtuado":0.0},{"ID":"B04","Posicao":4,"Componente":422,"AtuacaoNivelAlto":true,"ComandoAtuar":false,"Comandar":true,"Testando":false,"Funcoes":[21],"LeituraStatusBico":false,"MediaNivelFluxo":0.0,"Leitura":null,"Inicializado":false,"Atuacoes":0,"InicioAtuacao":"0001-01-01T00:00:00","TempoAtuado":0.0}],"BombasPressurizadoras":[{"ID":"BOMBA","ComandoAtuar":false,"Componente":325,"LeituraEstado":false,"Comandar":true,"Testando":false,"Funcoes":[14,35,36,37,5],"LeituraPotencia":0.0,"LeituraPressaoSP":0.0,"LeituraPressao":0.0,"Leitura":null,"Inicializado":false}],"Sensores":[{"LogGrafico":[],"ID":"FLXLN","Prioridade":23,"Descricao":"Fluxo na linha principal","Componente":198,"Aferir":true,"DelayAmostragem":300,"Leitura":null,"Inicializado":false,"Testando":false,"Funcoes":[25],"Parametros":[],"UnidadeMedida":"mL/s","LimiteMaximo":0.0,"LimiteMinimo":0.0},{"LogGrafico":[],"ID":"MASRS","Prioridade":3,"Descricao":"Massa do reservatório de herbicida","Componente":532,"Aferir":true,"DelayAmostragem":1000,"Leitura":null,"Inicializado":false,"Testando":false,"Funcoes":[22,23],"Parametros":[],"UnidadeMedida":"Kg","LimiteMaximo":50.0,"LimiteMinimo":5.0},{"LogGrafico":[],"ID":"PRSLN","Prioridade":3,"Descricao":"Pressão na linha principal","Componente":333,"Aferir":true,"DelayAmostragem":1000,"Leitura":null,"Inicializado":false,"Testando":false,"Funcoes":[24],"Parametros":[["Vmin","000.00"],["Vmax","004.50"],["Pmax","174.04"]],"UnidadeMedida":"psi","LimiteMaximo":120.0,"LimiteMinimo":60.0}],"BombaPressurizadora":{"ID":"BOMBA","ComandoAtuar":false,"Componente":325,"LeituraEstado":false,"Comandar":true,"Testando":false,"Funcoes":[14,35,36,37,5],"LeituraPotencia":0.0,"LeituraPressaoSP":0.0,"LeituraPressao":0.0,"Leitura":null,"Inicializado":false},"ScriptDeteccaoErvas":"weed_detector-1_0.py","DadosLeitura":{"Conectado":false,"Mod_ID":null,"Momento":"0001-01-01T00:00:00","BicosPulverizadores":[],"BombasPressurizadoras":[],"SensoresFluxo":[],"SensoresMassa":[],"SensoresPressao":[]},"_MassaRef":0.8,"_MassaLeituraRef":40876.37,"_MassaLeituraExtra":1895800.0,"MassaReservatorio":0.0,"VolumeReservatorio":0.0,"PercentualReservatorio":0.0,"VolumeVazaoAferido":0.0,"_FluxoMlRef":102.0,"_FluxoPulsoRef":80.0,"VazaoFluxoMLpSInstantanea":0.0,"VazaoFluxoMLpSMedia":0.0,"VolumeVazaoML":0.0,"InicioAtuacao":"0001-01-01T00:00:00","TempoAtuado":0.0,"_PressaoVmin":0.0,"_PressaoVmax":4.5,"_PressaoMax":174.045,"PressaoLinha":0.0,"PressaoLinhaCalc":0.0}
{"tmrRegistrador":{"_uiControl":null,"State":2,"IsRunning":false,"IsStopped":true,"IsCreated":false,"Interval":1000,"StackTrace":"AtuadorModel.IniciarRegistrador","Id":"tmrRegistrador_Atu","TimeTick":"00:00:00"},"Modulo_ID":"Atu","IP":"192.168.100.13","RequisitarDados":true,"Conectado":false,"QuantidadeBicos":4,"DensidadeHerbicida":1.05,"BicosPulverizadores":[{"ID":"B01","Posicao":1,"Componente":422,"AtuacaoNivelAlto":true,"ComandoAtuar":false,"Comandar":true,"Testando":false,"Funcoes":[21],"LeituraStatusBico":false,"MediaNivelFluxo":0.0,"Leitura":null,"Inicializado":false,"Atuacoes":0,"InicioAtuacao":"0001-01-01T00:00:00","TempoAtuado":0.0},{"ID":"B02","Posicao":2,"Componente":422,"AtuacaoNivelAlto":true,"ComandoAtuar":false,"Comandar":true,"Testando":false,"Funcoes":[21],"LeituraStatusBico":false,"MediaNivelFluxo":0.0,"Leitura":null,"Inicializado":false,"Atuacoes":0,"InicioAtuacao":"0001-01-01T00:00:00","TempoAtuado":0.0},{"ID":"B03","Posicao":3,"Componente":422,"AtuacaoNivelAlto":true,"ComandoAtuar":false,"Comandar":true,"Testando":false,"Funcoes":[21],"LeituraStatusBico":false,"MediaNivelFluxo":0.0,"Leitura":null,"Inicializado":false,"Atuacoes":0,"InicioAtuacao":"0001-01-01T00:00:00","TempoAtuado":0.0},{"ID":"B04","Posicao":4,"Componente":422,"AtuacaoNivelAlto":true,"ComandoAtuar":false,"Comandar":true,"Testando":false,"Funcoes":[21],"LeituraStatusBico":false,"MediaNivelFluxo":0.0,"Leitura":null,"Inicializado":false,"Atuacoes":0,"InicioAtuacao":"0001-01-01T00:00:00","TempoAtuado":0.0}],"BombasPressurizadoras":[{"ID":"BOMBA","ComandoAtuar":false,"Componente":325,"LeituraEstado":false,"Comandar":true,"Testando":false,"Funcoes":[14,35,36,37,5],"LeituraPotencia":0.0,"LeituraPressaoSP":0.0,"LeituraPressao":0.0,"Leitura":null,"Inicializado":false}],"Sensores":[{"LogGrafico":[],"ID":"FLXLN","Prioridade":23,"Descricao":"Fluxo na linha principal","Componente":198,"Aferir":true,"DelayAmostragem":300,"Leitura":null,"Inicializado":false,"Testando":false,"Funcoes":[25],"Parametros":[],"UnidadeMedida":"mL/s","LimiteMaximo":0.0,"LimiteMinimo":0.0},{"LogGrafico":[],"ID":"MASRS","Prioridade":3,"Descricao":"Massa do reservatório de herbicida","Componente":532,"Aferir":true,"DelayAmostragem":1000,"Leitura":null,"Inicializado":false,"Testando":false,"Funcoes":[22,23],"Parametros":[],"UnidadeMedida":"Kg","LimiteMaximo":50.0,"LimiteMinimo":5.0},{"LogGrafico":[],"ID":"PRSLN","Prioridade":3,"Descricao":"Pressão na linha principal","Componente":333,"Aferir":true,"DelayAmostragem":1000,"Leitura":null,"Inicializado":false,"Testando":false,"Funcoes":[24],"Parametros":[["Vmin","000.00"],["Vmax","004.50"],["Pmax","174.04"]],"UnidadeMedida":"psi","LimiteMaximo":120.0,"LimiteMinimo":60.0}],"BombaPressurizadora":{"ID":"BOMBA","ComandoAtuar":false,"Componente":325,"LeituraEstado":false,"Comandar":true,"Testando":false,"Funcoes":[14,35,36,37,5],"LeituraPotencia":0.0,"LeituraPressaoSP":0.0,"LeituraPressao":0.0,"Leitura":null,"Inicializado":false},"ScriptDeteccaoErvas":"weed_detector-1_0.py","DadosLeitura":{"Momento":"0001-01-01T00:00:00","Conectado":false,"Mod_ID":null,"QualidadeWifi":null,"LatenciaLoop":0,"BicosPulverizadores":[],"BombasPressurizadoras":[],"SensoresFluxo":[],"SensoresMassa":[],"SensoresPressao":[]},"_MassaRef":0.8,"_MassaLeituraRef":40876.37,"_MassaLeituraExtra":1895800.0,"MassaReservatorio":0.0,"VolumeReservatorio":0.0,"PercentualReservatorio":0.0,"VolumeVazaoAferido":0.0,"_FluxoMlRef":102.0,"_FluxoPulsoRef":80.0,"VazaoFluxoMLpSInstantanea":0.0,"VazaoFluxoMLpSMedia":0.0,"VolumeVazaoML":0.0,"InicioAtuacao":"0001-01-01T00:00:00","TempoAtuado":0.0,"_PressaoVmin":0.0,"_PressaoVmax":4.5,"_PressaoMax":174.045,"PressaoLinha":0.0,"PressaoLinhaCalc":0.0}

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

File diff suppressed because one or more lines are too long

View File

@ -39,6 +39,7 @@ bool Verificando = false;
int _TaxaAmostragem = 1000;
volatile bool RequisitarDados = false;
int latenciaLoop = 0;
std::vector<Rele*> listaBicos;
@ -85,6 +86,8 @@ void setup() {
}
void loop() {
unsigned long startLoop = millis();
if (!RequisitarDados) {
enviarLogsPeriodicamente();
}
@ -99,6 +102,8 @@ void loop() {
}
delay(1);
latenciaLoop = millis() - startLoop;
}
@ -152,6 +157,8 @@ String MontarMensagemSensores() {
// Adicionar campos gerais
jsonDoc["Conectado"] = Conectado;
jsonDoc["Mod_ID"] = Mod_ID;
jsonDoc["QualidadeWifi"] = WiFi.RSSI();
jsonDoc["LatenciaLoop"] = latenciaLoop;
// Array JSON para bicos pulverizadores
JsonArray bicosArray = jsonDoc.createNestedArray("BicosPulverizadores");

View File

@ -29,7 +29,7 @@ class BombaPressurizadora {
double _Kp = 3.0;
double _Ki = 2.2;
double _Kd = 0.5;
const int histerese = -5;
const int histerese = 3;
bool bombaDesligadaPorPressao = false;
PID* _PID = nullptr;
@ -114,31 +114,27 @@ class BombaPressurizadora {
}
void Loop() {
if (sensorPressao != nullptr) {
if (Iniciado && sensorPressao != nullptr) {
sensorPressao->AferirPressao();
double _PressaoAtual = sensorPressao->Pressao; // Obtém a leitura mais recente
if (Iniciado) {
// Supondo que PressaoAtual seja atualizado em AtualizarStatusSensor()
if (_PressaoAtual >= (_PressaoSP + histerese)) {
// Desliga a bomba se a pressão estiver acima do set point + histerese
bombaDesligadaPorPressao = true;
} else if (_PressaoAtual <= (_PressaoSP - histerese) && bombaDesligadaPorPressao) {
// Permite que o PID atue novamente se a pressão cair abaixo do set point - histerese
bombaDesligadaPorPressao = false;
}
if (_EstadoControle == Desligado || bombaDesligadaPorPressao) {
PotenciaLeitura = ZeroRampa;
} else {
_PID->Compute();
// Ajusta PotenciaAtual com base no PID
}
ledcWrite(_canal, PotenciaLeitura);
AtualizarLeitura();
if (_PressaoAtual >= (_PressaoSP + histerese)) {
bombaDesligadaPorPressao = true;
} else if (_PressaoAtual <= (_PressaoSP - histerese) && bombaDesligadaPorPressao) {
// Permite que o PID atue novamente se a pressão cair abaixo do set point - histerese
bombaDesligadaPorPressao = false;
}
if (_EstadoControle == Desligado || bombaDesligadaPorPressao) {
PotenciaLeitura = ZeroRampa;
} else {
_PID->Compute();
// Ajusta PotenciaAtual com base no PID
}
ledcWrite(_canal, PotenciaLeitura);
AtualizarLeitura();
}
}

View File

@ -132,12 +132,10 @@ class MqttService {
}
void loop() {
if (mqttClient.connected()) {
mqttClient.loop();
}
else {
if (!mqttClient.connected() && millis() - ultimaTentativaConexao >= intervaloTentativa) {
InicializarComunicacaoMqtt();
}
mqttClient.loop();
}

View File

@ -72,22 +72,20 @@ class SensorFluxo {
// Método principal de leitura
void Loop() {
if (!Iniciado) {
return;
}
if (Iniciado) {
bool Leitura = _pino.get() == 1;
if (Leitura != ultimaLeitura) {
if (Leitura && !ultimaLeitura) {
unsigned long tempoAtual = millis();
unsigned long intervalo = (unsigned long)(tempoAtual - tempoAnterior); // Garante cálculo correto
tempoAnterior = tempoAtual;
bool Leitura = _pino.get() == 1;
if (Leitura != ultimaLeitura) {
if (Leitura && !ultimaLeitura) {
unsigned long tempoAtual = millis();
unsigned long intervalo = (unsigned long)(tempoAtual - tempoAnterior); // Garante cálculo correto
tempoAnterior = tempoAtual;
_Pulsos++;
_PeriodoTotal += intervalo;
}
_Pulsos++;
_PeriodoTotal += intervalo;
ultimaLeitura = Leitura;
}
ultimaLeitura = Leitura;
}
}

View File

@ -39,6 +39,7 @@ bool Verificando = false;
int _TaxaAmostragem = 1000;
volatile bool RequisitarDados = false;
int latenciaLoop = 0;
PinoModel _pinoSDA = PinoModel(21, CONTROLADOR, _INPUT);
PinoModel _pinoSCL = PinoModel(22, CONTROLADOR, _INPUT);
@ -89,6 +90,8 @@ void setup() {
}
void loop() {
unsigned long startLoop = millis();
if (!RequisitarDados) {
enviarLogsPeriodicamente();
}
@ -96,6 +99,8 @@ void loop() {
mqttService.loop();
delay(1);
latenciaLoop = millis() - startLoop;
}
// Função para enviar logs do sensor periodicamente via MQTT
@ -148,6 +153,8 @@ String MontarMensagemSensores() {
// Adicionar campos gerais
jsonDoc["Conectado"] = Conectado;
jsonDoc["Mod_ID"] = Mod_ID;
jsonDoc["QualidadeWifi"] = WiFi.RSSI();
jsonDoc["LatenciaLoop"] = latenciaLoop;
// Array JSON para sensores de temperatura
JsonArray sensoresTemperaturaArray = jsonDoc.createNestedArray("SensoresTemperatura");