ajustes na comunicacao e controle do MVD

This commit is contained in:
Diego Freitas 2024-06-14 06:37:22 -03:00
parent d5a871c020
commit c95e395dce
168 changed files with 159014 additions and 1119 deletions

View File

@ -5,6 +5,7 @@
"initializer_list": "cpp", "initializer_list": "cpp",
"list": "cpp", "list": "cpp",
"xstring": "cpp", "xstring": "cpp",
"xutility": "cpp" "xutility": "cpp",
"string": "cpp"
} }
} }

Binary file not shown.

View File

@ -2,37 +2,33 @@
"Version": 1, "Version": 1,
"WorkspaceRootPath": "C:\\ZendionINC\\agrobot_base\\AgroBase\\", "WorkspaceRootPath": "C:\\ZendionINC\\agrobot_base\\AgroBase\\",
"Documents": [ "Documents": [
{
"AbsoluteMoniker": "D:0:0:{C54B41C0-1D21-4E3E-949E-0F86BBC86A33}|AgroBase\\AgroBase.csproj|C:\\ZendionINC\\agrobot_base\\AgroBase\\agrobase\\forms\\operacoes\\frmoperacaomanual.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
"RelativeMoniker": "D:0:0:{C54B41C0-1D21-4E3E-949E-0F86BBC86A33}|AgroBase\\AgroBase.csproj|solutionrelative:agrobase\\forms\\operacoes\\frmoperacaomanual.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\\operacoes\\frmresultadosoperacao.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
"RelativeMoniker": "D:0:0:{C54B41C0-1D21-4E3E-949E-0F86BBC86A33}|AgroBase\\AgroBase.csproj|solutionrelative:agrobase\\forms\\operacoes\\frmresultadosoperacao.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}", "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}" "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\\services\\serialservice.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}", "AbsoluteMoniker": "D:0:0:{C54B41C0-1D21-4E3E-949E-0F86BBC86A33}|AgroBase\\AgroBase.csproj|c:\\zendioninc\\agrobot_base\\agrobase\\agrobase\\models\\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\\models\\enuns.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
"RelativeMoniker": "D:0:0:{C54B41C0-1D21-4E3E-949E-0F86BBC86A33}|AgroBase\\AgroBase.csproj|solutionrelative:agrobase\\models\\enuns.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
},
{
"AbsoluteMoniker": "D:0:0:{C54B41C0-1D21-4E3E-949E-0F86BBC86A33}|AgroBase\\AgroBase.csproj|c:\\zendioninc\\agrobot_base\\agrobase\\agrobase\\services\\serialservice.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
"RelativeMoniker": "D:0:0:{C54B41C0-1D21-4E3E-949E-0F86BBC86A33}|AgroBase\\AgroBase.csproj|solutionrelative:agrobase\\services\\serialservice.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}" "RelativeMoniker": "D:0:0:{C54B41C0-1D21-4E3E-949E-0F86BBC86A33}|AgroBase\\AgroBase.csproj|solutionrelative:agrobase\\services\\serialservice.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
}, },
{ {
"AbsoluteMoniker": "D:0:0:{C54B41C0-1D21-4E3E-949E-0F86BBC86A33}|AgroBase\\AgroBase.csproj|c:\\zendioninc\\agrobot_base\\agrobase\\agrobase\\forms\\frmprincipal.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}", "AbsoluteMoniker": "D:0:0:{C54B41C0-1D21-4E3E-949E-0F86BBC86A33}|AgroBase\\AgroBase.csproj|c:\\zendioninc\\agrobot_base\\agrobase\\agrobase\\services\\dispositivosservice.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
"RelativeMoniker": "D:0:0:{C54B41C0-1D21-4E3E-949E-0F86BBC86A33}|AgroBase\\AgroBase.csproj|solutionrelative:agrobase\\forms\\frmprincipal.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
},
{
"AbsoluteMoniker": "D:0:0:{C54B41C0-1D21-4E3E-949E-0F86BBC86A33}|AgroBase\\AgroBase.csproj|C:\\ZendionINC\\agrobot_base\\AgroBase\\agrobase\\services\\dispositivosservice.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
"RelativeMoniker": "D:0:0:{C54B41C0-1D21-4E3E-949E-0F86BBC86A33}|AgroBase\\AgroBase.csproj|solutionrelative:agrobase\\services\\dispositivosservice.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}" "RelativeMoniker": "D:0:0:{C54B41C0-1D21-4E3E-949E-0F86BBC86A33}|AgroBase\\AgroBase.csproj|solutionrelative:agrobase\\services\\dispositivosservice.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
}, },
{ {
"AbsoluteMoniker": "D:0:0:{C54B41C0-1D21-4E3E-949E-0F86BBC86A33}|AgroBase\\AgroBase.csproj|C:\\ZendionINC\\agrobot_base\\AgroBase\\agrobase\\models\\operacoes\\operacaomodel.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}", "AbsoluteMoniker": "D:0:0:{C54B41C0-1D21-4E3E-949E-0F86BBC86A33}|AgroBase\\AgroBase.csproj|c:\\zendioninc\\agrobot_base\\agrobase\\agrobase\\services\\filaservice.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
"RelativeMoniker": "D:0:0:{C54B41C0-1D21-4E3E-949E-0F86BBC86A33}|AgroBase\\AgroBase.csproj|solutionrelative:agrobase\\models\\operacoes\\operacaomodel.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}" "RelativeMoniker": "D:0:0:{C54B41C0-1D21-4E3E-949E-0F86BBC86A33}|AgroBase\\AgroBase.csproj|solutionrelative:agrobase\\services\\filaservice.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\\frmprincipal.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
"RelativeMoniker": "D:0:0:{C54B41C0-1D21-4E3E-949E-0F86BBC86A33}|AgroBase\\AgroBase.csproj|solutionrelative:agrobase\\forms\\frmprincipal.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
} }
], ],
"DocumentGroupContainers": [ "DocumentGroupContainers": [
@ -42,110 +38,96 @@
"DocumentGroups": [ "DocumentGroups": [
{ {
"DockedWidth": 200, "DockedWidth": 200,
"SelectedChildIndex": 4, "SelectedChildIndex": 6,
"Children": [ "Children": [
{ {
"$type": "Document", "$type": "Document",
"DocumentIndex": 2, "DocumentIndex": 2,
"Title": "frmResultadosOperacao.cs", "Title": "Enuns.cs",
"DocumentMoniker": "C:\\ZendionINC\\agrobot_base\\AgroBase\\AgroBase\\Forms\\Operacoes\\frmResultadosOperacao.cs", "DocumentMoniker": "C:\\ZendionINC\\agrobot_base\\AgroBase\\AgroBase\\Models\\Enuns.cs",
"RelativeDocumentMoniker": "AgroBase\\Forms\\Operacoes\\frmResultadosOperacao.cs", "RelativeDocumentMoniker": "AgroBase\\Models\\Enuns.cs",
"ToolTip": "C:\\ZendionINC\\agrobot_base\\AgroBase\\AgroBase\\Forms\\Operacoes\\frmResultadosOperacao.cs", "ToolTip": "C:\\ZendionINC\\agrobot_base\\AgroBase\\AgroBase\\Models\\Enuns.cs",
"RelativeToolTip": "AgroBase\\Forms\\Operacoes\\frmResultadosOperacao.cs", "RelativeToolTip": "AgroBase\\Models\\Enuns.cs",
"ViewState": "AQIAACkCAAAAAAAAAAAAAEgCAAAXAAAA", "ViewState": "AQIAAAAAAAAAAAAAAAAAAB4AAAATAAAA",
"Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|", "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
"WhenOpened": "2024-06-08T00:52:51.592Z", "WhenOpened": "2024-06-13T18:47:52.232Z",
"EditorCaption": "" "EditorCaption": ""
}, },
{ {
"$type": "Document", "$type": "Document",
"DocumentIndex": 1, "DocumentIndex": 1,
"Title": "frmAcompanhamento.cs", "Title": "GeneralJoystick.cs",
"DocumentMoniker": "C:\\ZendionINC\\agrobot_base\\AgroBase\\AgroBase\\Forms\\frmAcompanhamento.cs", "DocumentMoniker": "C:\\ZendionINC\\agrobot_base\\AgroBase\\AgroBase\\Models\\GeneralJoystick.cs",
"RelativeDocumentMoniker": "AgroBase\\Forms\\frmAcompanhamento.cs", "RelativeDocumentMoniker": "AgroBase\\Models\\GeneralJoystick.cs",
"ToolTip": "C:\\ZendionINC\\agrobot_base\\AgroBase\\AgroBase\\Forms\\frmAcompanhamento.cs", "ToolTip": "C:\\ZendionINC\\agrobot_base\\AgroBase\\AgroBase\\Models\\GeneralJoystick.cs",
"RelativeToolTip": "AgroBase\\Forms\\frmAcompanhamento.cs", "RelativeToolTip": "AgroBase\\Models\\GeneralJoystick.cs",
"ViewState": "AQIAAAAAAAAAAAAAAAAAAHEBAABMAAAA", "ViewState": "AQIAACwCAAAAAAAAAAAYwE8CAACVAAAA",
"Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|", "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
"WhenOpened": "2024-06-08T00:34:52.765Z", "WhenOpened": "2024-06-13T18:41:06.762Z",
"EditorCaption": ""
},
{
"$type": "Document",
"DocumentIndex": 5,
"Title": "frmPrincipal.cs",
"DocumentMoniker": "C:\\ZendionINC\\agrobot_base\\AgroBase\\AgroBase\\Forms\\frmPrincipal.cs",
"RelativeDocumentMoniker": "AgroBase\\Forms\\frmPrincipal.cs",
"ToolTip": "C:\\ZendionINC\\agrobot_base\\AgroBase\\AgroBase\\Forms\\frmPrincipal.cs",
"RelativeToolTip": "AgroBase\\Forms\\frmPrincipal.cs",
"ViewState": "AQIAABoAAAAAAAAAAAAkwFkAAAApAAAA",
"Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
"WhenOpened": "2024-06-07T19:57:07.232Z",
"EditorCaption": ""
},
{
"$type": "Document",
"DocumentIndex": 4,
"Title": "SerialService.cs",
"DocumentMoniker": "C:\\ZendionINC\\agrobot_base\\AgroBase\\AgroBase\\Services\\SerialService.cs",
"RelativeDocumentMoniker": "AgroBase\\Services\\SerialService.cs",
"ToolTip": "C:\\ZendionINC\\agrobot_base\\AgroBase\\AgroBase\\Services\\SerialService.cs",
"RelativeToolTip": "AgroBase\\Services\\SerialService.cs",
"ViewState": "AQIAAAEAAAAAAAAAAAAiwDkAAAAAAAAA",
"Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
"WhenOpened": "2024-06-07T18:00:32.305Z",
"EditorCaption": ""
},
{
"$type": "Document",
"DocumentIndex": 0,
"Title": "frmOperacaoManual.cs",
"DocumentMoniker": "C:\\ZendionINC\\agrobot_base\\AgroBase\\AgroBase\\Forms\\Operacoes\\frmOperacaoManual.cs",
"RelativeDocumentMoniker": "AgroBase\\Forms\\Operacoes\\frmOperacaoManual.cs",
"ToolTip": "C:\\ZendionINC\\agrobot_base\\AgroBase\\AgroBase\\Forms\\Operacoes\\frmOperacaoManual.cs",
"RelativeToolTip": "AgroBase\\Forms\\Operacoes\\frmOperacaoManual.cs",
"ViewState": "AQIAAA0AAAAAAAAAAAAkwMcBAAAIAAAA",
"Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
"WhenOpened": "2024-06-07T16:53:23.408Z",
"EditorCaption": ""
},
{
"$type": "Document",
"DocumentIndex": 7,
"Title": "OperacaoModel.cs",
"DocumentMoniker": "C:\\ZendionINC\\agrobot_base\\AgroBase\\AgroBase\\Models\\Operacoes\\OperacaoModel.cs",
"RelativeDocumentMoniker": "AgroBase\\Models\\Operacoes\\OperacaoModel.cs",
"ToolTip": "C:\\ZendionINC\\agrobot_base\\AgroBase\\AgroBase\\Models\\Operacoes\\OperacaoModel.cs",
"RelativeToolTip": "AgroBase\\Models\\Operacoes\\OperacaoModel.cs",
"ViewState": "AQIAAOUAAAAAAAAAAAAqwCEAAAAfAAAA",
"Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
"WhenOpened": "2024-06-07T11:12:40.207Z",
"EditorCaption": "" "EditorCaption": ""
}, },
{ {
"$type": "Document", "$type": "Document",
"DocumentIndex": 3, "DocumentIndex": 3,
"Title": "MovimentacaoUnificadoModel.cs", "Title": "SerialService.cs",
"DocumentMoniker": "C:\\ZendionINC\\agrobot_base\\AgroBase\\AgroBase\\Models\\Modules\\MovimentacaoUnificadoModel.cs", "DocumentMoniker": "C:\\ZendionINC\\agrobot_base\\AgroBase\\AgroBase\\Services\\SerialService.cs",
"RelativeDocumentMoniker": "AgroBase\\Models\\Modules\\MovimentacaoUnificadoModel.cs", "RelativeDocumentMoniker": "AgroBase\\Services\\SerialService.cs",
"ToolTip": "C:\\ZendionINC\\agrobot_base\\AgroBase\\AgroBase\\Models\\Modules\\MovimentacaoUnificadoModel.cs", "ToolTip": "C:\\ZendionINC\\agrobot_base\\AgroBase\\AgroBase\\Services\\SerialService.cs",
"RelativeToolTip": "AgroBase\\Models\\Modules\\MovimentacaoUnificadoModel.cs", "RelativeToolTip": "AgroBase\\Services\\SerialService.cs",
"ViewState": "AQIAAAkAAAAAAAAAAAAqwB8AAABLAAAA", "ViewState": "AQIAAC0AAAAAAAAAAAAQwEwAAAAYAAAA",
"Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|", "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
"WhenOpened": "2024-06-06T18:02:19.931Z", "WhenOpened": "2024-06-13T17:24:58.564Z",
"EditorCaption": "" "EditorCaption": ""
}, },
{ {
"$type": "Document", "$type": "Document",
"DocumentIndex": 6, "DocumentIndex": 4,
"Title": "DispositivosService.cs", "Title": "DispositivosService.cs",
"DocumentMoniker": "C:\\ZendionINC\\agrobot_base\\AgroBase\\AgroBase\\Services\\DispositivosService.cs", "DocumentMoniker": "C:\\ZendionINC\\agrobot_base\\AgroBase\\AgroBase\\Services\\DispositivosService.cs",
"RelativeDocumentMoniker": "AgroBase\\Services\\DispositivosService.cs", "RelativeDocumentMoniker": "AgroBase\\Services\\DispositivosService.cs",
"ToolTip": "C:\\ZendionINC\\agrobot_base\\AgroBase\\AgroBase\\Services\\DispositivosService.cs", "ToolTip": "C:\\ZendionINC\\agrobot_base\\AgroBase\\AgroBase\\Services\\DispositivosService.cs",
"RelativeToolTip": "AgroBase\\Services\\DispositivosService.cs", "RelativeToolTip": "AgroBase\\Services\\DispositivosService.cs",
"ViewState": "AQIAADQAAAAAAAAAAAA7wNwAAAAhAAAA", "ViewState": "AQIAABkAAAAAAAAAAAAgwCwAAAArAAAA",
"Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|", "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
"WhenOpened": "2024-06-06T17:38:48.095Z", "WhenOpened": "2024-06-13T16:57:41.713Z",
"EditorCaption": ""
},
{
"$type": "Document",
"DocumentIndex": 5,
"Title": "FilaService.cs",
"DocumentMoniker": "C:\\ZendionINC\\agrobot_base\\AgroBase\\AgroBase\\Services\\FilaService.cs",
"RelativeDocumentMoniker": "AgroBase\\Services\\FilaService.cs",
"ToolTip": "C:\\ZendionINC\\agrobot_base\\AgroBase\\AgroBase\\Services\\FilaService.cs",
"RelativeToolTip": "AgroBase\\Services\\FilaService.cs",
"ViewState": "AQIAAAAAAAAAAAAAAAAAAOAAAAABAAAA",
"Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
"WhenOpened": "2024-06-11T17:06:06.589Z",
"EditorCaption": ""
},
{
"$type": "Document",
"DocumentIndex": 6,
"Title": "frmPrincipal.cs",
"DocumentMoniker": "C:\\ZendionINC\\agrobot_base\\AgroBase\\AgroBase\\Forms\\frmPrincipal.cs",
"RelativeDocumentMoniker": "AgroBase\\Forms\\frmPrincipal.cs",
"ToolTip": "C:\\ZendionINC\\agrobot_base\\AgroBase\\AgroBase\\Forms\\frmPrincipal.cs",
"RelativeToolTip": "AgroBase\\Forms\\frmPrincipal.cs",
"ViewState": "AQIAADMAAAAAAAAAAAAqwFcAAAAJAAAA",
"Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
"WhenOpened": "2024-06-11T17:04:24.362Z"
},
{
"$type": "Document",
"DocumentIndex": 0,
"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": "AQIAANcBAAAAAAAAAAAuwBsCAABUAAAA",
"Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
"WhenOpened": "2024-06-06T18:02:19.931Z",
"EditorCaption": "" "EditorCaption": ""
} }
] ]

View File

@ -235,6 +235,12 @@
<Compile Include="Forms\frmMapa.Designer.cs"> <Compile Include="Forms\frmMapa.Designer.cs">
<DependentUpon>frmMapa.cs</DependentUpon> <DependentUpon>frmMapa.cs</DependentUpon>
</Compile> </Compile>
<Compile Include="Forms\frmMvdConfig.cs">
<SubType>Form</SubType>
</Compile>
<Compile Include="Forms\frmMvdConfig.Designer.cs">
<DependentUpon>frmMvdConfig.cs</DependentUpon>
</Compile>
<Compile Include="Forms\frmPinout.cs"> <Compile Include="Forms\frmPinout.cs">
<SubType>Form</SubType> <SubType>Form</SubType>
</Compile> </Compile>
@ -650,6 +656,9 @@
<EmbeddedResource Include="Forms\frmMapa.resx"> <EmbeddedResource Include="Forms\frmMapa.resx">
<DependentUpon>frmMapa.cs</DependentUpon> <DependentUpon>frmMapa.cs</DependentUpon>
</EmbeddedResource> </EmbeddedResource>
<EmbeddedResource Include="Forms\frmMvdConfig.resx">
<DependentUpon>frmMvdConfig.cs</DependentUpon>
</EmbeddedResource>
<EmbeddedResource Include="Forms\frmPinout.resx"> <EmbeddedResource Include="Forms\frmPinout.resx">
<DependentUpon>frmPinout.cs</DependentUpon> <DependentUpon>frmPinout.cs</DependentUpon>
</EmbeddedResource> </EmbeddedResource>

View File

@ -155,7 +155,7 @@ namespace AgroBase.Forms.Atuador
private void EnviarProtocoloComandoBomba() private void EnviarProtocoloComandoBomba()
{ {
string Protocolo = DispAtu.Dados.BombaPressurizadora.ProtocoloComando(); string Protocolo = DispAtu.Dados.BombaPressurizadora.ProtocoloComando();
DispAtu.AdicionarMensagemFila(DispAtu.Dados.Modulo_ID, Protocolo); DispAtu.AdicionarMensagemFila(DispAtu.Dados.Modulo_ID, Protocolo, true, true);
} }
private void nudPressaoSP_ValueChanged(object sender, EventArgs e) private void nudPressaoSP_ValueChanged(object sender, EventArgs e)
@ -202,7 +202,7 @@ namespace AgroBase.Forms.Atuador
{ {
Bico.Atuado = !DispAtu.Dados.AtuacaoNivelAlto; Bico.Atuado = !DispAtu.Dados.AtuacaoNivelAlto;
string Protocolo = Bico.ProtocoloComando(); string Protocolo = Bico.ProtocoloComando();
DispAtu.AdicionarMensagemFila(DispAtu.Dados.Modulo_ID, Protocolo); DispAtu.AdicionarMensagemFila(DispAtu.Dados.Modulo_ID, Protocolo, true, false);
pnlBicos.Controls.OfType<Panel>().First(x => x.Name == "pnlB_" + ID).Invalidate(); pnlBicos.Controls.OfType<Panel>().First(x => x.Name == "pnlB_" + ID).Invalidate();
pnlBicos.Controls.OfType<Panel>().First(x => x.Name == "pnlB_" + ID).Controls.OfType<Label>().First(x => x.Name == "lblCmd_" + ID).Text = "Comando: Desligado"; pnlBicos.Controls.OfType<Panel>().First(x => x.Name == "pnlB_" + ID).Controls.OfType<Label>().First(x => x.Name == "lblCmd_" + ID).Text = "Comando: Desligado";
@ -218,7 +218,7 @@ namespace AgroBase.Forms.Atuador
{ {
Bico.Atuado = DispAtu.Dados.AtuacaoNivelAlto; Bico.Atuado = DispAtu.Dados.AtuacaoNivelAlto;
string Protocolo = Bico.ProtocoloComando(); string Protocolo = Bico.ProtocoloComando();
DispAtu.AdicionarMensagemFila(DispAtu.Dados.Modulo_ID, Protocolo); DispAtu.AdicionarMensagemFila(DispAtu.Dados.Modulo_ID, Protocolo, true, false);
pnlBicos.Controls.OfType<Panel>().First(x => x.Name == "pnlB_" + ID).Invalidate(); pnlBicos.Controls.OfType<Panel>().First(x => x.Name == "pnlB_" + ID).Invalidate();
pnlBicos.Controls.OfType<Panel>().First(x => x.Name == "pnlB_" + ID).Controls.OfType<Label>().First(x => x.Name == "lblCmd_" + ID).Text = "Comando: Ligado"; pnlBicos.Controls.OfType<Panel>().First(x => x.Name == "pnlB_" + ID).Controls.OfType<Label>().First(x => x.Name == "lblCmd_" + ID).Text = "Comando: Ligado";

View File

@ -30,13 +30,9 @@ namespace AgroBase.Forms.Direcional
private void InitializeComponent() private void InitializeComponent()
{ {
this.gpbSentido = new System.Windows.Forms.GroupBox(); this.gpbSentido = new System.Windows.Forms.GroupBox();
this.chbAA_Ref270 = new System.Windows.Forms.CheckBox();
this.chbAA_Ref90 = new System.Windows.Forms.CheckBox();
this.chbAA_Ref0 = new System.Windows.Forms.CheckBox();
this.btnSalvarSentido = new System.Windows.Forms.Button(); this.btnSalvarSentido = new System.Windows.Forms.Button();
this.gpbDF = new System.Windows.Forms.GroupBox(); this.gpbDF = new System.Windows.Forms.GroupBox();
this.chbDFLivre = new System.Windows.Forms.CheckBox(); this.chbDFLivre = new System.Windows.Forms.CheckBox();
this.chbDFReferenciar = new System.Windows.Forms.CheckBox();
this.chbDFEstabilizar = new System.Windows.Forms.CheckBox(); this.chbDFEstabilizar = new System.Windows.Forms.CheckBox();
this.chbDFControlar = new System.Windows.Forms.CheckBox(); this.chbDFControlar = new System.Windows.Forms.CheckBox();
this.nudDFOffset = new System.Windows.Forms.NumericUpDown(); this.nudDFOffset = new System.Windows.Forms.NumericUpDown();
@ -47,7 +43,6 @@ namespace AgroBase.Forms.Direcional
this.lblDFDireita = new System.Windows.Forms.Label(); this.lblDFDireita = new System.Windows.Forms.Label();
this.gpbEF = new System.Windows.Forms.GroupBox(); this.gpbEF = new System.Windows.Forms.GroupBox();
this.chbEFLivre = new System.Windows.Forms.CheckBox(); this.chbEFLivre = new System.Windows.Forms.CheckBox();
this.chbEFReferenciar = new System.Windows.Forms.CheckBox();
this.chbEFEstabilizar = new System.Windows.Forms.CheckBox(); this.chbEFEstabilizar = new System.Windows.Forms.CheckBox();
this.chbEFControlar = new System.Windows.Forms.CheckBox(); this.chbEFControlar = new System.Windows.Forms.CheckBox();
this.nudEFOffset = new System.Windows.Forms.NumericUpDown(); this.nudEFOffset = new System.Windows.Forms.NumericUpDown();
@ -58,7 +53,6 @@ namespace AgroBase.Forms.Direcional
this.lblEFDireita = new System.Windows.Forms.Label(); this.lblEFDireita = new System.Windows.Forms.Label();
this.gpbDT = new System.Windows.Forms.GroupBox(); this.gpbDT = new System.Windows.Forms.GroupBox();
this.hbDTLivre = new System.Windows.Forms.CheckBox(); this.hbDTLivre = new System.Windows.Forms.CheckBox();
this.chbDTReferenciar = new System.Windows.Forms.CheckBox();
this.chbDTEstabilizar = new System.Windows.Forms.CheckBox(); this.chbDTEstabilizar = new System.Windows.Forms.CheckBox();
this.chbDTControlar = new System.Windows.Forms.CheckBox(); this.chbDTControlar = new System.Windows.Forms.CheckBox();
this.nudDTOffset = new System.Windows.Forms.NumericUpDown(); this.nudDTOffset = new System.Windows.Forms.NumericUpDown();
@ -69,7 +63,6 @@ namespace AgroBase.Forms.Direcional
this.lblDTDireita = new System.Windows.Forms.Label(); this.lblDTDireita = new System.Windows.Forms.Label();
this.gpbET = new System.Windows.Forms.GroupBox(); this.gpbET = new System.Windows.Forms.GroupBox();
this.chbETLivre = new System.Windows.Forms.CheckBox(); this.chbETLivre = new System.Windows.Forms.CheckBox();
this.chbETReferenciar = new System.Windows.Forms.CheckBox();
this.chbETEstabilizar = new System.Windows.Forms.CheckBox(); this.chbETEstabilizar = new System.Windows.Forms.CheckBox();
this.chbETControlar = new System.Windows.Forms.CheckBox(); this.chbETControlar = new System.Windows.Forms.CheckBox();
this.nudETOffset = new System.Windows.Forms.NumericUpDown(); this.nudETOffset = new System.Windows.Forms.NumericUpDown();
@ -91,9 +84,6 @@ namespace AgroBase.Forms.Direcional
// //
// gpbSentido // gpbSentido
// //
this.gpbSentido.Controls.Add(this.chbAA_Ref270);
this.gpbSentido.Controls.Add(this.chbAA_Ref90);
this.gpbSentido.Controls.Add(this.chbAA_Ref0);
this.gpbSentido.Controls.Add(this.btnSalvarSentido); this.gpbSentido.Controls.Add(this.btnSalvarSentido);
this.gpbSentido.Controls.Add(this.gpbDF); this.gpbSentido.Controls.Add(this.gpbDF);
this.gpbSentido.Controls.Add(this.gpbEF); this.gpbSentido.Controls.Add(this.gpbEF);
@ -108,39 +98,6 @@ namespace AgroBase.Forms.Direcional
this.gpbSentido.TabStop = false; this.gpbSentido.TabStop = false;
this.gpbSentido.Text = "Sentido de giro"; this.gpbSentido.Text = "Sentido de giro";
// //
// chbAA_Ref270
//
this.chbAA_Ref270.AutoSize = true;
this.chbAA_Ref270.Location = new System.Drawing.Point(176, 343);
this.chbAA_Ref270.Margin = new System.Windows.Forms.Padding(2);
this.chbAA_Ref270.Name = "chbAA_Ref270";
this.chbAA_Ref270.Size = new System.Drawing.Size(81, 17);
this.chbAA_Ref270.TabIndex = 17;
this.chbAA_Ref270.Text = "AA_Ref270";
this.chbAA_Ref270.UseVisualStyleBackColor = true;
//
// chbAA_Ref90
//
this.chbAA_Ref90.AutoSize = true;
this.chbAA_Ref90.Location = new System.Drawing.Point(94, 343);
this.chbAA_Ref90.Margin = new System.Windows.Forms.Padding(2);
this.chbAA_Ref90.Name = "chbAA_Ref90";
this.chbAA_Ref90.Size = new System.Drawing.Size(81, 17);
this.chbAA_Ref90.TabIndex = 16;
this.chbAA_Ref90.Text = "AA_Ref090";
this.chbAA_Ref90.UseVisualStyleBackColor = true;
//
// chbAA_Ref0
//
this.chbAA_Ref0.AutoSize = true;
this.chbAA_Ref0.Location = new System.Drawing.Point(14, 343);
this.chbAA_Ref0.Margin = new System.Windows.Forms.Padding(2);
this.chbAA_Ref0.Name = "chbAA_Ref0";
this.chbAA_Ref0.Size = new System.Drawing.Size(81, 17);
this.chbAA_Ref0.TabIndex = 15;
this.chbAA_Ref0.Text = "AA_Ref000";
this.chbAA_Ref0.UseVisualStyleBackColor = true;
//
// btnSalvarSentido // btnSalvarSentido
// //
this.btnSalvarSentido.Location = new System.Drawing.Point(276, 339); this.btnSalvarSentido.Location = new System.Drawing.Point(276, 339);
@ -155,7 +112,6 @@ namespace AgroBase.Forms.Direcional
// gpbDF // gpbDF
// //
this.gpbDF.Controls.Add(this.chbDFLivre); this.gpbDF.Controls.Add(this.chbDFLivre);
this.gpbDF.Controls.Add(this.chbDFReferenciar);
this.gpbDF.Controls.Add(this.chbDFEstabilizar); this.gpbDF.Controls.Add(this.chbDFEstabilizar);
this.gpbDF.Controls.Add(this.chbDFControlar); this.gpbDF.Controls.Add(this.chbDFControlar);
this.gpbDF.Controls.Add(this.nudDFOffset); this.gpbDF.Controls.Add(this.nudDFOffset);
@ -184,17 +140,6 @@ namespace AgroBase.Forms.Direcional
this.chbDFLivre.Text = "Livre"; this.chbDFLivre.Text = "Livre";
this.chbDFLivre.UseVisualStyleBackColor = true; this.chbDFLivre.UseVisualStyleBackColor = true;
// //
// chbDFReferenciar
//
this.chbDFReferenciar.AutoSize = true;
this.chbDFReferenciar.Location = new System.Drawing.Point(12, 123);
this.chbDFReferenciar.Margin = new System.Windows.Forms.Padding(2);
this.chbDFReferenciar.Name = "chbDFReferenciar";
this.chbDFReferenciar.Size = new System.Drawing.Size(81, 17);
this.chbDFReferenciar.TabIndex = 18;
this.chbDFReferenciar.Text = "Referenciar";
this.chbDFReferenciar.UseVisualStyleBackColor = true;
//
// chbDFEstabilizar // chbDFEstabilizar
// //
this.chbDFEstabilizar.AutoSize = true; this.chbDFEstabilizar.AutoSize = true;
@ -287,7 +232,6 @@ namespace AgroBase.Forms.Direcional
// gpbEF // gpbEF
// //
this.gpbEF.Controls.Add(this.chbEFLivre); this.gpbEF.Controls.Add(this.chbEFLivre);
this.gpbEF.Controls.Add(this.chbEFReferenciar);
this.gpbEF.Controls.Add(this.chbEFEstabilizar); this.gpbEF.Controls.Add(this.chbEFEstabilizar);
this.gpbEF.Controls.Add(this.chbEFControlar); this.gpbEF.Controls.Add(this.chbEFControlar);
this.gpbEF.Controls.Add(this.nudEFOffset); this.gpbEF.Controls.Add(this.nudEFOffset);
@ -316,17 +260,6 @@ namespace AgroBase.Forms.Direcional
this.chbEFLivre.Text = "Livre"; this.chbEFLivre.Text = "Livre";
this.chbEFLivre.UseVisualStyleBackColor = true; this.chbEFLivre.UseVisualStyleBackColor = true;
// //
// chbEFReferenciar
//
this.chbEFReferenciar.AutoSize = true;
this.chbEFReferenciar.Location = new System.Drawing.Point(12, 123);
this.chbEFReferenciar.Margin = new System.Windows.Forms.Padding(2);
this.chbEFReferenciar.Name = "chbEFReferenciar";
this.chbEFReferenciar.Size = new System.Drawing.Size(81, 17);
this.chbEFReferenciar.TabIndex = 16;
this.chbEFReferenciar.Text = "Referenciar";
this.chbEFReferenciar.UseVisualStyleBackColor = true;
//
// chbEFEstabilizar // chbEFEstabilizar
// //
this.chbEFEstabilizar.AutoSize = true; this.chbEFEstabilizar.AutoSize = true;
@ -419,7 +352,6 @@ namespace AgroBase.Forms.Direcional
// gpbDT // gpbDT
// //
this.gpbDT.Controls.Add(this.hbDTLivre); this.gpbDT.Controls.Add(this.hbDTLivre);
this.gpbDT.Controls.Add(this.chbDTReferenciar);
this.gpbDT.Controls.Add(this.chbDTEstabilizar); this.gpbDT.Controls.Add(this.chbDTEstabilizar);
this.gpbDT.Controls.Add(this.chbDTControlar); this.gpbDT.Controls.Add(this.chbDTControlar);
this.gpbDT.Controls.Add(this.nudDTOffset); this.gpbDT.Controls.Add(this.nudDTOffset);
@ -448,17 +380,6 @@ namespace AgroBase.Forms.Direcional
this.hbDTLivre.Text = "Livre"; this.hbDTLivre.Text = "Livre";
this.hbDTLivre.UseVisualStyleBackColor = true; this.hbDTLivre.UseVisualStyleBackColor = true;
// //
// chbDTReferenciar
//
this.chbDTReferenciar.AutoSize = true;
this.chbDTReferenciar.Location = new System.Drawing.Point(12, 122);
this.chbDTReferenciar.Margin = new System.Windows.Forms.Padding(2);
this.chbDTReferenciar.Name = "chbDTReferenciar";
this.chbDTReferenciar.Size = new System.Drawing.Size(81, 17);
this.chbDTReferenciar.TabIndex = 18;
this.chbDTReferenciar.Text = "Referenciar";
this.chbDTReferenciar.UseVisualStyleBackColor = true;
//
// chbDTEstabilizar // chbDTEstabilizar
// //
this.chbDTEstabilizar.AutoSize = true; this.chbDTEstabilizar.AutoSize = true;
@ -551,7 +472,6 @@ namespace AgroBase.Forms.Direcional
// gpbET // gpbET
// //
this.gpbET.Controls.Add(this.chbETLivre); this.gpbET.Controls.Add(this.chbETLivre);
this.gpbET.Controls.Add(this.chbETReferenciar);
this.gpbET.Controls.Add(this.chbETEstabilizar); this.gpbET.Controls.Add(this.chbETEstabilizar);
this.gpbET.Controls.Add(this.chbETControlar); this.gpbET.Controls.Add(this.chbETControlar);
this.gpbET.Controls.Add(this.nudETOffset); this.gpbET.Controls.Add(this.nudETOffset);
@ -580,17 +500,6 @@ namespace AgroBase.Forms.Direcional
this.chbETLivre.Text = "Livre"; this.chbETLivre.Text = "Livre";
this.chbETLivre.UseVisualStyleBackColor = true; this.chbETLivre.UseVisualStyleBackColor = true;
// //
// chbETReferenciar
//
this.chbETReferenciar.AutoSize = true;
this.chbETReferenciar.Location = new System.Drawing.Point(12, 123);
this.chbETReferenciar.Margin = new System.Windows.Forms.Padding(2);
this.chbETReferenciar.Name = "chbETReferenciar";
this.chbETReferenciar.Size = new System.Drawing.Size(81, 17);
this.chbETReferenciar.TabIndex = 18;
this.chbETReferenciar.Text = "Referenciar";
this.chbETReferenciar.UseVisualStyleBackColor = true;
//
// chbETEstabilizar // chbETEstabilizar
// //
this.chbETEstabilizar.AutoSize = true; this.chbETEstabilizar.AutoSize = true;
@ -694,7 +603,6 @@ namespace AgroBase.Forms.Direcional
this.FormClosing += new System.Windows.Forms.FormClosingEventHandler(this.frmDirConfig_FormClosing); this.FormClosing += new System.Windows.Forms.FormClosingEventHandler(this.frmDirConfig_FormClosing);
this.Load += new System.EventHandler(this.frmDirConfig_Load); this.Load += new System.EventHandler(this.frmDirConfig_Load);
this.gpbSentido.ResumeLayout(false); this.gpbSentido.ResumeLayout(false);
this.gpbSentido.PerformLayout();
this.gpbDF.ResumeLayout(false); this.gpbDF.ResumeLayout(false);
this.gpbDF.PerformLayout(); this.gpbDF.PerformLayout();
((System.ComponentModel.ISupportInitialize)(this.nudDFOffset)).EndInit(); ((System.ComponentModel.ISupportInitialize)(this.nudDFOffset)).EndInit();
@ -751,15 +659,8 @@ namespace AgroBase.Forms.Direcional
private System.Windows.Forms.CheckBox chbETEstabilizar; private System.Windows.Forms.CheckBox chbETEstabilizar;
private System.Windows.Forms.CheckBox chbETControlar; private System.Windows.Forms.CheckBox chbETControlar;
private System.Windows.Forms.CheckBox chbDFLivre; private System.Windows.Forms.CheckBox chbDFLivre;
private System.Windows.Forms.CheckBox chbDFReferenciar;
private System.Windows.Forms.CheckBox chbEFLivre; private System.Windows.Forms.CheckBox chbEFLivre;
private System.Windows.Forms.CheckBox chbEFReferenciar;
private System.Windows.Forms.CheckBox hbDTLivre; private System.Windows.Forms.CheckBox hbDTLivre;
private System.Windows.Forms.CheckBox chbDTReferenciar;
private System.Windows.Forms.CheckBox chbETLivre; private System.Windows.Forms.CheckBox chbETLivre;
private System.Windows.Forms.CheckBox chbETReferenciar;
private System.Windows.Forms.CheckBox chbAA_Ref0;
private System.Windows.Forms.CheckBox chbAA_Ref270;
private System.Windows.Forms.CheckBox chbAA_Ref90;
} }
} }

View File

@ -16,7 +16,7 @@ namespace AgroBase.Forms.Direcional
{ {
public partial class frmDirConfig : Form public partial class frmDirConfig : Form
{ {
DispositivosService<DirecionalModel> Disp = (DispositivosService<DirecionalModel>)Variaveis.DispositivosConectados.FirstOrDefault(x => x.Dispositivo == T_Code.Dir); DispositivosService<MovimentacaoUnificadaModel> Disp = (DispositivosService<MovimentacaoUnificadaModel>)Variaveis.DispositivosConectados.FirstOrDefault(x => x.Dispositivo == T_Code.Mvd);
public frmDirConfig() public frmDirConfig()
{ {
@ -37,25 +37,25 @@ namespace AgroBase.Forms.Direcional
cmb.Items.AddRange(Enum.GetNames(typeof(Sentido)).ToArray()); cmb.Items.AddRange(Enum.GetNames(typeof(Sentido)).ToArray());
cmb.SelectedIndex = 0; cmb.SelectedIndex = 0;
var Motor = Disp.Dados.Motores.FirstOrDefault(x => x.ID == cmb.Name.Substring(3, 2)); var Modulo = Disp.Dados.Modulos.FirstOrDefault(x => x.Modulo_ID == cmb.Name.Substring(3, 2));
if (Motor != null) if (Modulo != null)
{ {
Sentido sentido = Sentido.Parado; Sentido sentido = Sentido.Parado;
if (cmb.Name.Contains("Frente")) if (cmb.Name.Contains("Frente"))
{ {
sentido = Motor.ConfigSentidos.Frente; sentido = Modulo.DirMotor.ConfigSentidos.Frente;
} }
else if (cmb.Name.Contains("Tras")) else if (cmb.Name.Contains("Tras"))
{ {
sentido = Motor.ConfigSentidos.Tras; sentido = Modulo.DirMotor.ConfigSentidos.Tras;
} }
else if (cmb.Name.Contains("Esquerda")) else if (cmb.Name.Contains("Esquerda"))
{ {
sentido = Motor.ConfigSentidos.Esquerda; sentido = Modulo.DirMotor.ConfigSentidos.Esquerda;
} }
else if (cmb.Name.Contains("Direita")) else if (cmb.Name.Contains("Direita"))
{ {
sentido = Motor.ConfigSentidos.Direita; sentido = Modulo.DirMotor.ConfigSentidos.Direita;
} }
cmb.SelectedItem = Enum.GetName(typeof(Sentido), sentido); cmb.SelectedItem = Enum.GetName(typeof(Sentido), sentido);
@ -66,10 +66,10 @@ namespace AgroBase.Forms.Direcional
var nudsOffsets = gpbET.Controls.OfType<NumericUpDown>().ToList().Union(gpbEF.Controls.OfType<NumericUpDown>().ToList()).Union(gpbDT.Controls.OfType<NumericUpDown>().ToList()).Union(gpbDF.Controls.OfType<NumericUpDown>().ToList()).ToList(); var nudsOffsets = gpbET.Controls.OfType<NumericUpDown>().ToList().Union(gpbEF.Controls.OfType<NumericUpDown>().ToList()).Union(gpbDT.Controls.OfType<NumericUpDown>().ToList()).Union(gpbDF.Controls.OfType<NumericUpDown>().ToList()).ToList();
foreach (var nud in nudsOffsets) foreach (var nud in nudsOffsets)
{ {
var Motor = Disp.Dados.Motores.FirstOrDefault(x => x.ID == nud.Name.Substring(3, 2)); var Modulo = Disp.Dados.Modulos.FirstOrDefault(x => x.Modulo_ID == nud.Name.Substring(3, 2));
if (Motor != null) if (Modulo != null)
{ {
nud.Value = Convert.ToInt32(Motor.Angulo_Offset); nud.Value = Convert.ToInt32(Modulo.DirMotor.Angulo_Offset);
} }
} }
@ -77,85 +77,17 @@ namespace AgroBase.Forms.Direcional
var chbs = gpbET.Controls.OfType<CheckBox>().ToList().Union(gpbEF.Controls.OfType<CheckBox>().ToList()).Union(gpbDT.Controls.OfType<CheckBox>().ToList()).Union(gpbDF.Controls.OfType<CheckBox>().ToList()).ToList(); var chbs = gpbET.Controls.OfType<CheckBox>().ToList().Union(gpbEF.Controls.OfType<CheckBox>().ToList()).Union(gpbDT.Controls.OfType<CheckBox>().ToList()).Union(gpbDF.Controls.OfType<CheckBox>().ToList()).ToList();
foreach (var chb in chbs) foreach (var chb in chbs)
{ {
var Motor = Disp.Dados.Motores.FirstOrDefault(x => x.ID == chb.Name.Substring(3, 2)); var Modulo = Disp.Dados.Modulos.FirstOrDefault(x => x.Modulo_ID == chb.Name.Substring(3, 2));
if (Motor != null) if (Modulo != null)
{ {
var chbEstabilizar = chbs.FirstOrDefault(x => x.Name.Contains(Motor.ID + "Estabilizar")); var chbEstabilizar = chbs.FirstOrDefault(x => x.Name.Contains(Modulo.Modulo_ID + "Estabilizar"));
chbEstabilizar.Checked = Motor.Estabilizar; chbEstabilizar.Checked = Modulo.DirMotor.Estabilizar;
var chbControlar = chbs.FirstOrDefault(x => x.Name.Contains(Motor.ID + "Controlar")); var chbControlar = chbs.FirstOrDefault(x => x.Name.Contains(Modulo.Modulo_ID + "Controlar"));
chbControlar.Checked = Motor.Controlar; chbControlar.Checked = Modulo.DirMotor.Controlar;
var chbReferenciar = chbs.FirstOrDefault(x => x.Name.Contains(Motor.ID + "Referenciar")); var chbLivre = chbs.FirstOrDefault(x => x.Name.Contains(Modulo.Modulo_ID + "Livre"));
chbReferenciar.Checked = Motor.Referenciar; chbDFLivre.Checked = Modulo.DirMotor.Livre;
var chbLivre = chbs.FirstOrDefault(x => x.Name.Contains(Motor.ID + "Livre"));
chbDFLivre.Checked = Motor.Livre;
} }
} }
chbAA_Ref0.Checked = Disp.Dados.AA_Ref000;
chbAA_Ref90.Checked = Disp.Dados.AA_Ref090;
chbAA_Ref270.Checked = Disp.Dados.AA_Ref270;
}
private void btnSalvarSentido_Click(object sender, EventArgs e)
{
var cmbsSentido = gpbET.Controls.OfType<ComboBox>().ToList().Union(gpbEF.Controls.OfType<ComboBox>().ToList()).Union(gpbDT.Controls.OfType<ComboBox>().ToList()).Union(gpbDF.Controls.OfType<ComboBox>().ToList()).ToList();
foreach (var cmb in cmbsSentido)
{
var Motor = Disp.Dados.Motores.FirstOrDefault(x => x.ID == cmb.Name.Substring(3, 2));
if (Motor != null)
{
Sentido sentido = (Sentido)cmb.SelectedIndex;
if (cmb.Name.Contains("Frente"))
{
Motor.ConfigSentidos.Frente = sentido;
}
else if (cmb.Name.Contains("Tras"))
{
Motor.ConfigSentidos.Tras = sentido;
}
else if (cmb.Name.Contains("Esquerda"))
{
Motor.ConfigSentidos.Esquerda = sentido;
}
else if (cmb.Name.Contains("Direita"))
{
Motor.ConfigSentidos.Direita = sentido;
}
}
}
var nudsOffsets = gpbET.Controls.OfType<NumericUpDown>().ToList().Union(gpbEF.Controls.OfType<NumericUpDown>().ToList()).Union(gpbDT.Controls.OfType<NumericUpDown>().ToList()).Union(gpbDF.Controls.OfType<NumericUpDown>().ToList()).ToList();
foreach (var nud in nudsOffsets)
{
var Motor = Disp.Dados.Motores.FirstOrDefault(x => x.ID == nud.Name.Substring(3, 2));
if (Motor != null)
{
Motor.Angulo_Offset = Convert.ToDouble(nud.Value);
}
}
var chbs = gpbET.Controls.OfType<CheckBox>().ToList().Union(gpbEF.Controls.OfType<CheckBox>().ToList()).Union(gpbDT.Controls.OfType<CheckBox>().ToList()).Union(gpbDF.Controls.OfType<CheckBox>().ToList()).ToList();
foreach (var chb in chbs)
{
var Motor = Disp.Dados.Motores.FirstOrDefault(x => x.ID == chb.Name.Substring(3, 2));
if (Motor != null)
{
var chbEstabilizar = chbs.FirstOrDefault(x => x.Name.Contains(Motor.ID + "Estabilizar"));
Motor.Estabilizar = chbEstabilizar.Checked;
var chbControlar = chbs.FirstOrDefault(x => x.Name.Contains(Motor.ID + "Controlar"));
Motor.Controlar = chbControlar.Checked;
var chbReferenciar = chbs.FirstOrDefault(x => x.Name.Contains(Motor.ID + "Referenciar"));
Motor.Referenciar = chbReferenciar.Checked;
var chbLivre = chbs.FirstOrDefault(x => x.Name.Contains(Motor.ID + "Livre"));
Motor.Livre = chbLivre.Checked;
}
}
Disp.Dados.AA_Ref000 = chbAA_Ref0.Checked;
Disp.Dados.AA_Ref090 = chbAA_Ref90.Checked;
Disp.Dados.AA_Ref270 = chbAA_Ref270.Checked;
Disp.SalvarParametros(Disp.Dados);
} }
private void frmDirConfig_FormClosing(object sender, FormClosingEventArgs e) private void frmDirConfig_FormClosing(object sender, FormClosingEventArgs e)
@ -163,5 +95,63 @@ namespace AgroBase.Forms.Direcional
e.Cancel = true; e.Cancel = true;
this.Visible = false; this.Visible = false;
} }
private void btnSalvarSentido_Click(object sender, EventArgs e)
{
var cmbsSentido = gpbET.Controls.OfType<ComboBox>().ToList().Union(gpbEF.Controls.OfType<ComboBox>().ToList()).Union(gpbDT.Controls.OfType<ComboBox>().ToList()).Union(gpbDF.Controls.OfType<ComboBox>().ToList()).ToList();
foreach (var cmb in cmbsSentido)
{
var Modulo = Disp.Dados.Modulos.FirstOrDefault(x => x.Modulo_ID == cmb.Name.Substring(3, 2));
if (Modulo != null)
{
Sentido sentido = (Sentido)cmb.SelectedIndex;
if (cmb.Name.Contains("Frente"))
{
Modulo.DirMotor.ConfigSentidos.Frente = sentido;
}
else if (cmb.Name.Contains("Tras"))
{
Modulo.DirMotor.ConfigSentidos.Tras = sentido;
}
else if (cmb.Name.Contains("Esquerda"))
{
Modulo.DirMotor.ConfigSentidos.Esquerda = sentido;
}
else if (cmb.Name.Contains("Direita"))
{
Modulo.DirMotor.ConfigSentidos.Direita = sentido;
}
}
}
var nudsOffsets = gpbET.Controls.OfType<NumericUpDown>().ToList().Union(gpbEF.Controls.OfType<NumericUpDown>().ToList()).Union(gpbDT.Controls.OfType<NumericUpDown>().ToList()).Union(gpbDF.Controls.OfType<NumericUpDown>().ToList()).ToList();
foreach (var nud in nudsOffsets)
{
var Modulo = Disp.Dados.Modulos.FirstOrDefault(x => x.Modulo_ID == nud.Name.Substring(3, 2));
if (Modulo != null)
{
Modulo.DirMotor.Angulo_Offset = Convert.ToDouble(nud.Value);
}
}
var chbs = gpbET.Controls.OfType<CheckBox>().ToList().Union(gpbEF.Controls.OfType<CheckBox>().ToList()).Union(gpbDT.Controls.OfType<CheckBox>().ToList()).Union(gpbDF.Controls.OfType<CheckBox>().ToList()).ToList();
foreach (var chb in chbs)
{
var Modulo = Disp.Dados.Modulos.FirstOrDefault(x => x.Modulo_ID == chb.Name.Substring(3, 2));
if (Modulo != null)
{
var chbEstabilizar = chbs.FirstOrDefault(x => x.Name.Contains(Modulo.Modulo_ID + "Estabilizar"));
Modulo.DirMotor.Estabilizar = chbEstabilizar.Checked;
var chbControlar = chbs.FirstOrDefault(x => x.Name.Contains(Modulo.Modulo_ID + "Controlar"));
Modulo.DirMotor.Controlar = chbControlar.Checked;
var chbLivre = chbs.FirstOrDefault(x => x.Name.Contains(Modulo.Modulo_ID + "Livre"));
Modulo.DirMotor.Livre = chbLivre.Checked;
}
}
Disp.SalvarParametros(Disp.Dados);
}
} }
} }

View File

@ -194,7 +194,7 @@ namespace AgroBase.Forms.Direcional
{ {
var Motor = ((DirecionalModel)Dispositivo.Dados).Motores.FirstOrDefault(x => x.ID == ID); var Motor = ((DirecionalModel)Dispositivo.Dados).Motores.FirstOrDefault(x => x.ID == ID);
string Comando = Motor.ProtocoloComando(Direcao.Parado, true); string Comando = Motor.ProtocoloComando(Direcao.Parado, true);
Dispositivo.AdicionarMensagemFila(((DirecionalModel)Dispositivo.Dados).Modulo_ID, Comando); Dispositivo.AdicionarMensagemFila(((DirecionalModel)Dispositivo.Dados).Modulo_ID, Comando, true, false);
} }
} }

View File

@ -103,9 +103,9 @@ namespace AgroBase.Forms.Movimentacao
this.gpbSentido.Controls.Add(this.gpbDT); this.gpbSentido.Controls.Add(this.gpbDT);
this.gpbSentido.Controls.Add(this.gpbET); this.gpbSentido.Controls.Add(this.gpbET);
this.gpbSentido.Location = new System.Drawing.Point(11, 11); this.gpbSentido.Location = new System.Drawing.Point(11, 11);
this.gpbSentido.Margin = new System.Windows.Forms.Padding(2, 2, 2, 2); this.gpbSentido.Margin = new System.Windows.Forms.Padding(2);
this.gpbSentido.Name = "gpbSentido"; this.gpbSentido.Name = "gpbSentido";
this.gpbSentido.Padding = new System.Windows.Forms.Padding(2, 2, 2, 2); this.gpbSentido.Padding = new System.Windows.Forms.Padding(2);
this.gpbSentido.Size = new System.Drawing.Size(376, 349); this.gpbSentido.Size = new System.Drawing.Size(376, 349);
this.gpbSentido.TabIndex = 40; this.gpbSentido.TabIndex = 40;
this.gpbSentido.TabStop = false; this.gpbSentido.TabStop = false;
@ -124,9 +124,9 @@ namespace AgroBase.Forms.Movimentacao
this.gpbDF.Controls.Add(this.lblDFTras); this.gpbDF.Controls.Add(this.lblDFTras);
this.gpbDF.Controls.Add(this.lblDFFrente); this.gpbDF.Controls.Add(this.lblDFFrente);
this.gpbDF.Location = new System.Drawing.Point(195, 21); this.gpbDF.Location = new System.Drawing.Point(195, 21);
this.gpbDF.Margin = new System.Windows.Forms.Padding(2, 2, 2, 2); this.gpbDF.Margin = new System.Windows.Forms.Padding(2);
this.gpbDF.Name = "gpbDF"; this.gpbDF.Name = "gpbDF";
this.gpbDF.Padding = new System.Windows.Forms.Padding(2, 2, 2, 2); this.gpbDF.Padding = new System.Windows.Forms.Padding(2);
this.gpbDF.Size = new System.Drawing.Size(168, 157); this.gpbDF.Size = new System.Drawing.Size(168, 157);
this.gpbDF.TabIndex = 9; this.gpbDF.TabIndex = 9;
this.gpbDF.TabStop = false; this.gpbDF.TabStop = false;
@ -145,7 +145,7 @@ namespace AgroBase.Forms.Movimentacao
// txtDFEndereco // txtDFEndereco
// //
this.txtDFEndereco.Location = new System.Drawing.Point(66, 124); this.txtDFEndereco.Location = new System.Drawing.Point(66, 124);
this.txtDFEndereco.Margin = new System.Windows.Forms.Padding(2, 2, 2, 2); this.txtDFEndereco.Margin = new System.Windows.Forms.Padding(2);
this.txtDFEndereco.Name = "txtDFEndereco"; this.txtDFEndereco.Name = "txtDFEndereco";
this.txtDFEndereco.Size = new System.Drawing.Size(92, 20); this.txtDFEndereco.Size = new System.Drawing.Size(92, 20);
this.txtDFEndereco.TabIndex = 8; this.txtDFEndereco.TabIndex = 8;
@ -155,7 +155,7 @@ namespace AgroBase.Forms.Movimentacao
// //
this.cmbDFFrente.FormattingEnabled = true; this.cmbDFFrente.FormattingEnabled = true;
this.cmbDFFrente.Location = new System.Drawing.Point(66, 25); this.cmbDFFrente.Location = new System.Drawing.Point(66, 25);
this.cmbDFFrente.Margin = new System.Windows.Forms.Padding(2, 2, 2, 2); this.cmbDFFrente.Margin = new System.Windows.Forms.Padding(2);
this.cmbDFFrente.Name = "cmbDFFrente"; this.cmbDFFrente.Name = "cmbDFFrente";
this.cmbDFFrente.Size = new System.Drawing.Size(92, 21); this.cmbDFFrente.Size = new System.Drawing.Size(92, 21);
this.cmbDFFrente.TabIndex = 7; this.cmbDFFrente.TabIndex = 7;
@ -164,7 +164,7 @@ namespace AgroBase.Forms.Movimentacao
// //
this.cmbDFTras.FormattingEnabled = true; this.cmbDFTras.FormattingEnabled = true;
this.cmbDFTras.Location = new System.Drawing.Point(66, 50); this.cmbDFTras.Location = new System.Drawing.Point(66, 50);
this.cmbDFTras.Margin = new System.Windows.Forms.Padding(2, 2, 2, 2); this.cmbDFTras.Margin = new System.Windows.Forms.Padding(2);
this.cmbDFTras.Name = "cmbDFTras"; this.cmbDFTras.Name = "cmbDFTras";
this.cmbDFTras.Size = new System.Drawing.Size(92, 21); this.cmbDFTras.Size = new System.Drawing.Size(92, 21);
this.cmbDFTras.TabIndex = 6; this.cmbDFTras.TabIndex = 6;
@ -173,7 +173,7 @@ namespace AgroBase.Forms.Movimentacao
// //
this.cmbDFDireita.FormattingEnabled = true; this.cmbDFDireita.FormattingEnabled = true;
this.cmbDFDireita.Location = new System.Drawing.Point(66, 74); this.cmbDFDireita.Location = new System.Drawing.Point(66, 74);
this.cmbDFDireita.Margin = new System.Windows.Forms.Padding(2, 2, 2, 2); this.cmbDFDireita.Margin = new System.Windows.Forms.Padding(2);
this.cmbDFDireita.Name = "cmbDFDireita"; this.cmbDFDireita.Name = "cmbDFDireita";
this.cmbDFDireita.Size = new System.Drawing.Size(92, 21); this.cmbDFDireita.Size = new System.Drawing.Size(92, 21);
this.cmbDFDireita.TabIndex = 5; this.cmbDFDireita.TabIndex = 5;
@ -182,7 +182,7 @@ namespace AgroBase.Forms.Movimentacao
// //
this.cmbDFEsquerda.FormattingEnabled = true; this.cmbDFEsquerda.FormattingEnabled = true;
this.cmbDFEsquerda.Location = new System.Drawing.Point(66, 101); this.cmbDFEsquerda.Location = new System.Drawing.Point(66, 101);
this.cmbDFEsquerda.Margin = new System.Windows.Forms.Padding(2, 2, 2, 2); this.cmbDFEsquerda.Margin = new System.Windows.Forms.Padding(2);
this.cmbDFEsquerda.Name = "cmbDFEsquerda"; this.cmbDFEsquerda.Name = "cmbDFEsquerda";
this.cmbDFEsquerda.Size = new System.Drawing.Size(92, 21); this.cmbDFEsquerda.Size = new System.Drawing.Size(92, 21);
this.cmbDFEsquerda.TabIndex = 4; this.cmbDFEsquerda.TabIndex = 4;
@ -240,9 +240,9 @@ namespace AgroBase.Forms.Movimentacao
this.gpbEF.Controls.Add(this.lblEFTras); this.gpbEF.Controls.Add(this.lblEFTras);
this.gpbEF.Controls.Add(this.lblEFFrente); this.gpbEF.Controls.Add(this.lblEFFrente);
this.gpbEF.Location = new System.Drawing.Point(13, 21); this.gpbEF.Location = new System.Drawing.Point(13, 21);
this.gpbEF.Margin = new System.Windows.Forms.Padding(2, 2, 2, 2); this.gpbEF.Margin = new System.Windows.Forms.Padding(2);
this.gpbEF.Name = "gpbEF"; this.gpbEF.Name = "gpbEF";
this.gpbEF.Padding = new System.Windows.Forms.Padding(2, 2, 2, 2); this.gpbEF.Padding = new System.Windows.Forms.Padding(2);
this.gpbEF.Size = new System.Drawing.Size(168, 157); this.gpbEF.Size = new System.Drawing.Size(168, 157);
this.gpbEF.TabIndex = 9; this.gpbEF.TabIndex = 9;
this.gpbEF.TabStop = false; this.gpbEF.TabStop = false;
@ -261,7 +261,7 @@ namespace AgroBase.Forms.Movimentacao
// txtEFEndereco // txtEFEndereco
// //
this.txtEFEndereco.Location = new System.Drawing.Point(66, 124); this.txtEFEndereco.Location = new System.Drawing.Point(66, 124);
this.txtEFEndereco.Margin = new System.Windows.Forms.Padding(2, 2, 2, 2); this.txtEFEndereco.Margin = new System.Windows.Forms.Padding(2);
this.txtEFEndereco.Name = "txtEFEndereco"; this.txtEFEndereco.Name = "txtEFEndereco";
this.txtEFEndereco.Size = new System.Drawing.Size(92, 20); this.txtEFEndereco.Size = new System.Drawing.Size(92, 20);
this.txtEFEndereco.TabIndex = 10; this.txtEFEndereco.TabIndex = 10;
@ -271,7 +271,7 @@ namespace AgroBase.Forms.Movimentacao
// //
this.cmbEFFrente.FormattingEnabled = true; this.cmbEFFrente.FormattingEnabled = true;
this.cmbEFFrente.Location = new System.Drawing.Point(66, 25); this.cmbEFFrente.Location = new System.Drawing.Point(66, 25);
this.cmbEFFrente.Margin = new System.Windows.Forms.Padding(2, 2, 2, 2); this.cmbEFFrente.Margin = new System.Windows.Forms.Padding(2);
this.cmbEFFrente.Name = "cmbEFFrente"; this.cmbEFFrente.Name = "cmbEFFrente";
this.cmbEFFrente.Size = new System.Drawing.Size(92, 21); this.cmbEFFrente.Size = new System.Drawing.Size(92, 21);
this.cmbEFFrente.TabIndex = 7; this.cmbEFFrente.TabIndex = 7;
@ -280,7 +280,7 @@ namespace AgroBase.Forms.Movimentacao
// //
this.cmbEFTras.FormattingEnabled = true; this.cmbEFTras.FormattingEnabled = true;
this.cmbEFTras.Location = new System.Drawing.Point(66, 50); this.cmbEFTras.Location = new System.Drawing.Point(66, 50);
this.cmbEFTras.Margin = new System.Windows.Forms.Padding(2, 2, 2, 2); this.cmbEFTras.Margin = new System.Windows.Forms.Padding(2);
this.cmbEFTras.Name = "cmbEFTras"; this.cmbEFTras.Name = "cmbEFTras";
this.cmbEFTras.Size = new System.Drawing.Size(92, 21); this.cmbEFTras.Size = new System.Drawing.Size(92, 21);
this.cmbEFTras.TabIndex = 6; this.cmbEFTras.TabIndex = 6;
@ -289,7 +289,7 @@ namespace AgroBase.Forms.Movimentacao
// //
this.cmbEFDireita.FormattingEnabled = true; this.cmbEFDireita.FormattingEnabled = true;
this.cmbEFDireita.Location = new System.Drawing.Point(66, 74); this.cmbEFDireita.Location = new System.Drawing.Point(66, 74);
this.cmbEFDireita.Margin = new System.Windows.Forms.Padding(2, 2, 2, 2); this.cmbEFDireita.Margin = new System.Windows.Forms.Padding(2);
this.cmbEFDireita.Name = "cmbEFDireita"; this.cmbEFDireita.Name = "cmbEFDireita";
this.cmbEFDireita.Size = new System.Drawing.Size(92, 21); this.cmbEFDireita.Size = new System.Drawing.Size(92, 21);
this.cmbEFDireita.TabIndex = 5; this.cmbEFDireita.TabIndex = 5;
@ -298,7 +298,7 @@ namespace AgroBase.Forms.Movimentacao
// //
this.cmbEFEsquerda.FormattingEnabled = true; this.cmbEFEsquerda.FormattingEnabled = true;
this.cmbEFEsquerda.Location = new System.Drawing.Point(66, 101); this.cmbEFEsquerda.Location = new System.Drawing.Point(66, 101);
this.cmbEFEsquerda.Margin = new System.Windows.Forms.Padding(2, 2, 2, 2); this.cmbEFEsquerda.Margin = new System.Windows.Forms.Padding(2);
this.cmbEFEsquerda.Name = "cmbEFEsquerda"; this.cmbEFEsquerda.Name = "cmbEFEsquerda";
this.cmbEFEsquerda.Size = new System.Drawing.Size(92, 21); this.cmbEFEsquerda.Size = new System.Drawing.Size(92, 21);
this.cmbEFEsquerda.TabIndex = 4; this.cmbEFEsquerda.TabIndex = 4;
@ -356,9 +356,9 @@ namespace AgroBase.Forms.Movimentacao
this.gpbDT.Controls.Add(this.lblDTTras); this.gpbDT.Controls.Add(this.lblDTTras);
this.gpbDT.Controls.Add(this.lblDTFrente); this.gpbDT.Controls.Add(this.lblDTFrente);
this.gpbDT.Location = new System.Drawing.Point(195, 181); this.gpbDT.Location = new System.Drawing.Point(195, 181);
this.gpbDT.Margin = new System.Windows.Forms.Padding(2, 2, 2, 2); this.gpbDT.Margin = new System.Windows.Forms.Padding(2);
this.gpbDT.Name = "gpbDT"; this.gpbDT.Name = "gpbDT";
this.gpbDT.Padding = new System.Windows.Forms.Padding(2, 2, 2, 2); this.gpbDT.Padding = new System.Windows.Forms.Padding(2);
this.gpbDT.Size = new System.Drawing.Size(168, 157); this.gpbDT.Size = new System.Drawing.Size(168, 157);
this.gpbDT.TabIndex = 9; this.gpbDT.TabIndex = 9;
this.gpbDT.TabStop = false; this.gpbDT.TabStop = false;
@ -377,7 +377,7 @@ namespace AgroBase.Forms.Movimentacao
// txtDTEndereco // txtDTEndereco
// //
this.txtDTEndereco.Location = new System.Drawing.Point(66, 124); this.txtDTEndereco.Location = new System.Drawing.Point(66, 124);
this.txtDTEndereco.Margin = new System.Windows.Forms.Padding(2, 2, 2, 2); this.txtDTEndereco.Margin = new System.Windows.Forms.Padding(2);
this.txtDTEndereco.Name = "txtDTEndereco"; this.txtDTEndereco.Name = "txtDTEndereco";
this.txtDTEndereco.Size = new System.Drawing.Size(92, 20); this.txtDTEndereco.Size = new System.Drawing.Size(92, 20);
this.txtDTEndereco.TabIndex = 10; this.txtDTEndereco.TabIndex = 10;
@ -387,7 +387,7 @@ namespace AgroBase.Forms.Movimentacao
// //
this.cmbDTFrente.FormattingEnabled = true; this.cmbDTFrente.FormattingEnabled = true;
this.cmbDTFrente.Location = new System.Drawing.Point(66, 25); this.cmbDTFrente.Location = new System.Drawing.Point(66, 25);
this.cmbDTFrente.Margin = new System.Windows.Forms.Padding(2, 2, 2, 2); this.cmbDTFrente.Margin = new System.Windows.Forms.Padding(2);
this.cmbDTFrente.Name = "cmbDTFrente"; this.cmbDTFrente.Name = "cmbDTFrente";
this.cmbDTFrente.Size = new System.Drawing.Size(92, 21); this.cmbDTFrente.Size = new System.Drawing.Size(92, 21);
this.cmbDTFrente.TabIndex = 7; this.cmbDTFrente.TabIndex = 7;
@ -396,7 +396,7 @@ namespace AgroBase.Forms.Movimentacao
// //
this.cmbDTTras.FormattingEnabled = true; this.cmbDTTras.FormattingEnabled = true;
this.cmbDTTras.Location = new System.Drawing.Point(66, 50); this.cmbDTTras.Location = new System.Drawing.Point(66, 50);
this.cmbDTTras.Margin = new System.Windows.Forms.Padding(2, 2, 2, 2); this.cmbDTTras.Margin = new System.Windows.Forms.Padding(2);
this.cmbDTTras.Name = "cmbDTTras"; this.cmbDTTras.Name = "cmbDTTras";
this.cmbDTTras.Size = new System.Drawing.Size(92, 21); this.cmbDTTras.Size = new System.Drawing.Size(92, 21);
this.cmbDTTras.TabIndex = 6; this.cmbDTTras.TabIndex = 6;
@ -405,7 +405,7 @@ namespace AgroBase.Forms.Movimentacao
// //
this.cmbDTDireita.FormattingEnabled = true; this.cmbDTDireita.FormattingEnabled = true;
this.cmbDTDireita.Location = new System.Drawing.Point(66, 74); this.cmbDTDireita.Location = new System.Drawing.Point(66, 74);
this.cmbDTDireita.Margin = new System.Windows.Forms.Padding(2, 2, 2, 2); this.cmbDTDireita.Margin = new System.Windows.Forms.Padding(2);
this.cmbDTDireita.Name = "cmbDTDireita"; this.cmbDTDireita.Name = "cmbDTDireita";
this.cmbDTDireita.Size = new System.Drawing.Size(92, 21); this.cmbDTDireita.Size = new System.Drawing.Size(92, 21);
this.cmbDTDireita.TabIndex = 5; this.cmbDTDireita.TabIndex = 5;
@ -414,7 +414,7 @@ namespace AgroBase.Forms.Movimentacao
// //
this.cmbDTEsquerda.FormattingEnabled = true; this.cmbDTEsquerda.FormattingEnabled = true;
this.cmbDTEsquerda.Location = new System.Drawing.Point(66, 101); this.cmbDTEsquerda.Location = new System.Drawing.Point(66, 101);
this.cmbDTEsquerda.Margin = new System.Windows.Forms.Padding(2, 2, 2, 2); this.cmbDTEsquerda.Margin = new System.Windows.Forms.Padding(2);
this.cmbDTEsquerda.Name = "cmbDTEsquerda"; this.cmbDTEsquerda.Name = "cmbDTEsquerda";
this.cmbDTEsquerda.Size = new System.Drawing.Size(92, 21); this.cmbDTEsquerda.Size = new System.Drawing.Size(92, 21);
this.cmbDTEsquerda.TabIndex = 4; this.cmbDTEsquerda.TabIndex = 4;
@ -472,9 +472,9 @@ namespace AgroBase.Forms.Movimentacao
this.gpbET.Controls.Add(this.lblETTras); this.gpbET.Controls.Add(this.lblETTras);
this.gpbET.Controls.Add(this.lblETFrente); this.gpbET.Controls.Add(this.lblETFrente);
this.gpbET.Location = new System.Drawing.Point(13, 181); this.gpbET.Location = new System.Drawing.Point(13, 181);
this.gpbET.Margin = new System.Windows.Forms.Padding(2, 2, 2, 2); this.gpbET.Margin = new System.Windows.Forms.Padding(2);
this.gpbET.Name = "gpbET"; this.gpbET.Name = "gpbET";
this.gpbET.Padding = new System.Windows.Forms.Padding(2, 2, 2, 2); this.gpbET.Padding = new System.Windows.Forms.Padding(2);
this.gpbET.Size = new System.Drawing.Size(168, 157); this.gpbET.Size = new System.Drawing.Size(168, 157);
this.gpbET.TabIndex = 0; this.gpbET.TabIndex = 0;
this.gpbET.TabStop = false; this.gpbET.TabStop = false;
@ -493,7 +493,7 @@ namespace AgroBase.Forms.Movimentacao
// txtETEndereco // txtETEndereco
// //
this.txtETEndereco.Location = new System.Drawing.Point(66, 124); this.txtETEndereco.Location = new System.Drawing.Point(66, 124);
this.txtETEndereco.Margin = new System.Windows.Forms.Padding(2, 2, 2, 2); this.txtETEndereco.Margin = new System.Windows.Forms.Padding(2);
this.txtETEndereco.Name = "txtETEndereco"; this.txtETEndereco.Name = "txtETEndereco";
this.txtETEndereco.Size = new System.Drawing.Size(92, 20); this.txtETEndereco.Size = new System.Drawing.Size(92, 20);
this.txtETEndereco.TabIndex = 10; this.txtETEndereco.TabIndex = 10;
@ -503,7 +503,7 @@ namespace AgroBase.Forms.Movimentacao
// //
this.cmbETFrente.FormattingEnabled = true; this.cmbETFrente.FormattingEnabled = true;
this.cmbETFrente.Location = new System.Drawing.Point(66, 25); this.cmbETFrente.Location = new System.Drawing.Point(66, 25);
this.cmbETFrente.Margin = new System.Windows.Forms.Padding(2, 2, 2, 2); this.cmbETFrente.Margin = new System.Windows.Forms.Padding(2);
this.cmbETFrente.Name = "cmbETFrente"; this.cmbETFrente.Name = "cmbETFrente";
this.cmbETFrente.Size = new System.Drawing.Size(92, 21); this.cmbETFrente.Size = new System.Drawing.Size(92, 21);
this.cmbETFrente.TabIndex = 7; this.cmbETFrente.TabIndex = 7;
@ -512,7 +512,7 @@ namespace AgroBase.Forms.Movimentacao
// //
this.cmbETTras.FormattingEnabled = true; this.cmbETTras.FormattingEnabled = true;
this.cmbETTras.Location = new System.Drawing.Point(66, 50); this.cmbETTras.Location = new System.Drawing.Point(66, 50);
this.cmbETTras.Margin = new System.Windows.Forms.Padding(2, 2, 2, 2); this.cmbETTras.Margin = new System.Windows.Forms.Padding(2);
this.cmbETTras.Name = "cmbETTras"; this.cmbETTras.Name = "cmbETTras";
this.cmbETTras.Size = new System.Drawing.Size(92, 21); this.cmbETTras.Size = new System.Drawing.Size(92, 21);
this.cmbETTras.TabIndex = 6; this.cmbETTras.TabIndex = 6;
@ -521,7 +521,7 @@ namespace AgroBase.Forms.Movimentacao
// //
this.cmbETDireita.FormattingEnabled = true; this.cmbETDireita.FormattingEnabled = true;
this.cmbETDireita.Location = new System.Drawing.Point(66, 74); this.cmbETDireita.Location = new System.Drawing.Point(66, 74);
this.cmbETDireita.Margin = new System.Windows.Forms.Padding(2, 2, 2, 2); this.cmbETDireita.Margin = new System.Windows.Forms.Padding(2);
this.cmbETDireita.Name = "cmbETDireita"; this.cmbETDireita.Name = "cmbETDireita";
this.cmbETDireita.Size = new System.Drawing.Size(92, 21); this.cmbETDireita.Size = new System.Drawing.Size(92, 21);
this.cmbETDireita.TabIndex = 5; this.cmbETDireita.TabIndex = 5;
@ -530,7 +530,7 @@ namespace AgroBase.Forms.Movimentacao
// //
this.cmbETEsquerda.FormattingEnabled = true; this.cmbETEsquerda.FormattingEnabled = true;
this.cmbETEsquerda.Location = new System.Drawing.Point(66, 101); this.cmbETEsquerda.Location = new System.Drawing.Point(66, 101);
this.cmbETEsquerda.Margin = new System.Windows.Forms.Padding(2, 2, 2, 2); this.cmbETEsquerda.Margin = new System.Windows.Forms.Padding(2);
this.cmbETEsquerda.Name = "cmbETEsquerda"; this.cmbETEsquerda.Name = "cmbETEsquerda";
this.cmbETEsquerda.Size = new System.Drawing.Size(92, 21); this.cmbETEsquerda.Size = new System.Drawing.Size(92, 21);
this.cmbETEsquerda.TabIndex = 4; this.cmbETEsquerda.TabIndex = 4;
@ -586,9 +586,9 @@ namespace AgroBase.Forms.Movimentacao
this.groupBox1.Controls.Add(this.lblRampa); this.groupBox1.Controls.Add(this.lblRampa);
this.groupBox1.Controls.Add(this.nudRampa); this.groupBox1.Controls.Add(this.nudRampa);
this.groupBox1.Location = new System.Drawing.Point(11, 363); this.groupBox1.Location = new System.Drawing.Point(11, 363);
this.groupBox1.Margin = new System.Windows.Forms.Padding(2, 2, 2, 2); this.groupBox1.Margin = new System.Windows.Forms.Padding(2);
this.groupBox1.Name = "groupBox1"; this.groupBox1.Name = "groupBox1";
this.groupBox1.Padding = new System.Windows.Forms.Padding(2, 2, 2, 2); this.groupBox1.Padding = new System.Windows.Forms.Padding(2);
this.groupBox1.Size = new System.Drawing.Size(376, 66); this.groupBox1.Size = new System.Drawing.Size(376, 66);
this.groupBox1.TabIndex = 135; this.groupBox1.TabIndex = 135;
this.groupBox1.TabStop = false; this.groupBox1.TabStop = false;
@ -607,7 +607,7 @@ namespace AgroBase.Forms.Movimentacao
// nudDiametroRoda // nudDiametroRoda
// //
this.nudDiametroRoda.Location = new System.Drawing.Point(283, 37); this.nudDiametroRoda.Location = new System.Drawing.Point(283, 37);
this.nudDiametroRoda.Margin = new System.Windows.Forms.Padding(2, 2, 2, 2); this.nudDiametroRoda.Margin = new System.Windows.Forms.Padding(2);
this.nudDiametroRoda.Maximum = new decimal(new int[] { this.nudDiametroRoda.Maximum = new decimal(new int[] {
20000, 20000,
0, 0,
@ -637,7 +637,7 @@ namespace AgroBase.Forms.Movimentacao
// nudRPMMax // nudRPMMax
// //
this.nudRPMMax.Location = new System.Drawing.Point(191, 37); this.nudRPMMax.Location = new System.Drawing.Point(191, 37);
this.nudRPMMax.Margin = new System.Windows.Forms.Padding(2, 2, 2, 2); this.nudRPMMax.Margin = new System.Windows.Forms.Padding(2);
this.nudRPMMax.Maximum = new decimal(new int[] { this.nudRPMMax.Maximum = new decimal(new int[] {
20000, 20000,
0, 0,
@ -652,7 +652,6 @@ namespace AgroBase.Forms.Movimentacao
0, 0,
0, 0,
0}); 0});
this.nudRPMMax.ValueChanged += new System.EventHandler(this.nudRPMMax_ValueChanged);
// //
// lblNumPolos // lblNumPolos
// //
@ -667,7 +666,7 @@ namespace AgroBase.Forms.Movimentacao
// nudNumPolos // nudNumPolos
// //
this.nudNumPolos.Location = new System.Drawing.Point(100, 37); this.nudNumPolos.Location = new System.Drawing.Point(100, 37);
this.nudNumPolos.Margin = new System.Windows.Forms.Padding(2, 2, 2, 2); this.nudNumPolos.Margin = new System.Windows.Forms.Padding(2);
this.nudNumPolos.Maximum = new decimal(new int[] { this.nudNumPolos.Maximum = new decimal(new int[] {
999, 999,
0, 0,
@ -682,7 +681,6 @@ namespace AgroBase.Forms.Movimentacao
0, 0,
0, 0,
0}); 0});
this.nudNumPolos.ValueChanged += new System.EventHandler(this.nudNumPolos_ValueChanged);
// //
// lblRampa // lblRampa
// //
@ -697,7 +695,7 @@ namespace AgroBase.Forms.Movimentacao
// nudRampa // nudRampa
// //
this.nudRampa.Location = new System.Drawing.Point(8, 37); this.nudRampa.Location = new System.Drawing.Point(8, 37);
this.nudRampa.Margin = new System.Windows.Forms.Padding(2, 2, 2, 2); this.nudRampa.Margin = new System.Windows.Forms.Padding(2);
this.nudRampa.Maximum = new decimal(new int[] { this.nudRampa.Maximum = new decimal(new int[] {
15, 15,
0, 0,
@ -707,12 +705,11 @@ namespace AgroBase.Forms.Movimentacao
this.nudRampa.Size = new System.Drawing.Size(85, 20); this.nudRampa.Size = new System.Drawing.Size(85, 20);
this.nudRampa.TabIndex = 31; this.nudRampa.TabIndex = 31;
this.nudRampa.TextAlign = System.Windows.Forms.HorizontalAlignment.Center; this.nudRampa.TextAlign = System.Windows.Forms.HorizontalAlignment.Center;
this.nudRampa.ValueChanged += new System.EventHandler(this.nudRampa_ValueChanged);
// //
// btnSalvar // btnSalvar
// //
this.btnSalvar.Location = new System.Drawing.Point(272, 432); this.btnSalvar.Location = new System.Drawing.Point(272, 432);
this.btnSalvar.Margin = new System.Windows.Forms.Padding(2, 2, 2, 2); this.btnSalvar.Margin = new System.Windows.Forms.Padding(2);
this.btnSalvar.Name = "btnSalvar"; this.btnSalvar.Name = "btnSalvar";
this.btnSalvar.Size = new System.Drawing.Size(115, 24); this.btnSalvar.Size = new System.Drawing.Size(115, 24);
this.btnSalvar.TabIndex = 136; this.btnSalvar.TabIndex = 136;
@ -729,7 +726,7 @@ namespace AgroBase.Forms.Movimentacao
this.Controls.Add(this.btnSalvar); this.Controls.Add(this.btnSalvar);
this.Controls.Add(this.groupBox1); this.Controls.Add(this.groupBox1);
this.Controls.Add(this.gpbSentido); this.Controls.Add(this.gpbSentido);
this.Margin = new System.Windows.Forms.Padding(2, 2, 2, 2); this.Margin = new System.Windows.Forms.Padding(2);
this.MaximizeBox = false; this.MaximizeBox = false;
this.Name = "frmMovConfig"; this.Name = "frmMovConfig";
this.StartPosition = System.Windows.Forms.FormStartPosition.CenterScreen; this.StartPosition = System.Windows.Forms.FormStartPosition.CenterScreen;

View File

@ -12,7 +12,7 @@ namespace AgroBase.Forms.Movimentacao
{ {
public partial class frmMovConfig : Form public partial class frmMovConfig : Form
{ {
DispositivosService<MovimentacaoModel> Disp = (DispositivosService<MovimentacaoModel>)Variaveis.DispositivosConectados.FirstOrDefault(x => x.Dispositivo == T_Code.Mov); DispositivosService<MovimentacaoUnificadaModel> Disp = (DispositivosService<MovimentacaoUnificadaModel>)Variaveis.DispositivosConectados.FirstOrDefault(x => x.Dispositivo == T_Code.Mvd);
public frmMovConfig() public frmMovConfig()
{ {
@ -35,35 +35,36 @@ namespace AgroBase.Forms.Movimentacao
cmb.Items.AddRange(Enum.GetNames(typeof(Sentido)).ToArray()); cmb.Items.AddRange(Enum.GetNames(typeof(Sentido)).ToArray());
cmb.SelectedIndex = 0; cmb.SelectedIndex = 0;
var Motor = Disp.Dados.Motores.FirstOrDefault(x => x.ID == cmb.Name.Substring(3, 2)); var Modulo = Disp.Dados.Modulos.FirstOrDefault(x => x.Modulo_ID == cmb.Name.Substring(3, 2));
if (Motor != null) if (Modulo != null)
{ {
Sentido sentido = Sentido.Parado; Sentido sentido = Sentido.Parado;
if (cmb.Name.Contains("Frente")) if (cmb.Name.Contains("Frente"))
{ {
sentido = Motor.ConfigSentidos.Frente; sentido = Modulo.MovMotor.ConfigSentidos.Frente;
} }
else if (cmb.Name.Contains("Tras")) else if (cmb.Name.Contains("Tras"))
{ {
sentido = Motor.ConfigSentidos.Tras; sentido = Modulo.MovMotor.ConfigSentidos.Tras;
} }
else if (cmb.Name.Contains("Esquerda")) else if (cmb.Name.Contains("Esquerda"))
{ {
sentido = Motor.ConfigSentidos.Esquerda; sentido = Modulo.MovMotor.ConfigSentidos.Esquerda;
} }
else if (cmb.Name.Contains("Direita")) else if (cmb.Name.Contains("Direita"))
{ {
sentido = Motor.ConfigSentidos.Direita; sentido = Modulo.MovMotor.ConfigSentidos.Direita;
} }
cmb.SelectedItem = Enum.GetName(typeof(Sentido), sentido); cmb.SelectedItem = Enum.GetName(typeof(Sentido), sentido);
nudNumPolos.Value = Motor.NumeroPolos; nudNumPolos.Value = Modulo.MovMotor.NumeroPolos;
nudRampa.Value = Motor.Rampa; nudRampa.Value = Modulo.MovMotor.Rampa;
nudRPMMax.Value = Motor.RPM_Max; nudRPMMax.Value = Modulo.MovMotor.RPM_Max;
nudDiametroRoda.Value = Convert.ToInt32(VariaveisEquipamento.DiametroRoda * 1000);
TextBox txtEndereco = FuncoesGlobais.FindControlRecursive<TextBox>(gpbSentido, "txt" + Motor.ID + "Endereco"); TextBox txtEndereco = FuncoesGlobais.FindControlRecursive<TextBox>(gpbSentido, "txt" + Modulo.Modulo_ID + "Endereco");
txtEndereco.Text = Motor.Endereco; txtEndereco.Text = Modulo.MovMotor.Endereco;
} }
} }
@ -80,57 +81,42 @@ namespace AgroBase.Forms.Movimentacao
var cmbsSentido = gpbET.Controls.OfType<ComboBox>().ToList().Union(gpbEF.Controls.OfType<ComboBox>().ToList()).Union(gpbDT.Controls.OfType<ComboBox>().ToList()).Union(gpbDF.Controls.OfType<ComboBox>().ToList()).ToList(); var cmbsSentido = gpbET.Controls.OfType<ComboBox>().ToList().Union(gpbEF.Controls.OfType<ComboBox>().ToList()).Union(gpbDT.Controls.OfType<ComboBox>().ToList()).Union(gpbDF.Controls.OfType<ComboBox>().ToList()).ToList();
foreach (var cmb in cmbsSentido) foreach (var cmb in cmbsSentido)
{ {
var Motor = Disp.Dados.Motores.FirstOrDefault(x => x.ID == cmb.Name.Substring(3, 2)); var Modulo = Disp.Dados.Modulos.FirstOrDefault(x => x.Modulo_ID == cmb.Name.Substring(3, 2));
if (Motor != null) if (Modulo != null)
{ {
Sentido sentido = (Sentido)cmb.SelectedIndex; Sentido sentido = (Sentido)cmb.SelectedIndex;
if (cmb.Name.Contains("Frente")) if (cmb.Name.Contains("Frente"))
{ {
Motor.ConfigSentidos.Frente = sentido; Modulo.MovMotor.ConfigSentidos.Frente = sentido;
} }
else if (cmb.Name.Contains("Tras")) else if (cmb.Name.Contains("Tras"))
{ {
Motor.ConfigSentidos.Tras = sentido; Modulo.MovMotor.ConfigSentidos.Tras = sentido;
} }
else if (cmb.Name.Contains("Esquerda")) else if (cmb.Name.Contains("Esquerda"))
{ {
Motor.ConfigSentidos.Esquerda = sentido; Modulo.MovMotor.ConfigSentidos.Esquerda = sentido;
} }
else if (cmb.Name.Contains("Direita")) else if (cmb.Name.Contains("Direita"))
{ {
Motor.ConfigSentidos.Direita = sentido; Modulo.MovMotor.ConfigSentidos.Direita = sentido;
} }
Motor.NumeroPolos = MovimentacaoModel.NumPolos; Modulo.MovMotor.NumeroPolos = Convert.ToInt32(nudNumPolos.Value);
Motor.Rampa = MovimentacaoModel.Rampa; Modulo.MovMotor.Rampa = Convert.ToInt32(nudRampa.Value);
Motor.RPM_Max = MovimentacaoModel.RPM_Max; Modulo.MovMotor.RPM_Max = Convert.ToInt32(nudRPMMax.Value);
TextBox txtEndereco = FuncoesGlobais.FindControlRecursive<TextBox>(gpbSentido, "txt" + Motor.ID + "Endereco"); TextBox txtEndereco = FuncoesGlobais.FindControlRecursive<TextBox>(gpbSentido, "txt" + Modulo.Modulo_ID + "Endereco");
Motor.Endereco = txtEndereco.Text; Modulo.MovMotor.Endereco = txtEndereco.Text;
} }
} }
Disp.SalvarParametros(Disp.Dados); Disp.SalvarParametros(Disp.Dados);
} }
private void nudRampa_ValueChanged(object sender, EventArgs e)
{
MovimentacaoModel.Rampa = Convert.ToInt32(nudRampa.Value);
}
private void nudNumPolos_ValueChanged(object sender, EventArgs e)
{
MovimentacaoModel.NumPolos = Convert.ToInt32(nudNumPolos.Value);
}
private void nudRPMMax_ValueChanged(object sender, EventArgs e)
{
MovimentacaoModel.RPM_Max = Convert.ToInt32(nudRPMMax.Value);
}
private void nudDiametroRoda_ValueChanged(object sender, EventArgs e) private void nudDiametroRoda_ValueChanged(object sender, EventArgs e)
{ {
VariaveisEquipamento.DiametroRoda = Convert.ToInt32(nudDiametroRoda.Value) / 1000; VariaveisEquipamento.DiametroRoda = Convert.ToDouble(nudDiametroRoda.Value / 1000);
} }
} }
} }

View File

@ -81,7 +81,7 @@ namespace AgroBase.Forms
foreach (var Motor in DispMov.Dados.Motores) foreach (var Motor in DispMov.Dados.Motores)
{ {
string ProtocoloMotor = Motor.ProtocoloTeste(); string ProtocoloMotor = Motor.ProtocoloTeste();
DispMov.AdicionarMensagemFila(DispMov.Dados.Modulo_ID, ProtocoloMotor); DispMov.AdicionarMensagemFila(DispMov.Dados.Modulo_ID, ProtocoloMotor, true, true);
System.Threading.Thread.Sleep(10); System.Threading.Thread.Sleep(10);
} }

View File

@ -51,7 +51,7 @@ namespace AgroBase.Forms.Operacoes
PopularInformacoesGerais(); PopularInformacoesGerais();
InicializarMapa(); InicializarMapa();
PopularBicos(); PopularBicos();
InicializarGraficos(); //InicializarGraficos();
tmrLeitura = new Timer() { Interval = 500 }; tmrLeitura = new Timer() { Interval = 500 };
tmrLeitura.Tick += tmrLeitura_Tick; tmrLeitura.Tick += tmrLeitura_Tick;
@ -147,7 +147,7 @@ namespace AgroBase.Forms.Operacoes
} }
Variaveis.OperacaoEmAndamento.DispMvd.Dados.Modulos.ForEach(Modulo => Variaveis.OperacaoEmAndamento.DispMvd.Dados.Modulos.ForEach(Modulo =>
{ {
Variaveis.OperacaoEmAndamento.DispMvd.AdicionarMensagemFila(Modulo.Modulo_ID, Modulo.DirMotor.ProtocoloComando(direcaoDesvio)); Variaveis.OperacaoEmAndamento.DispMvd.AdicionarMensagemFila(Modulo.Modulo_ID, Modulo.DirMotor.ProtocoloComando(direcaoDesvio), true, false);
}); });
UltimoComandoDir = DateTime.Now; UltimoComandoDir = DateTime.Now;
} }
@ -348,7 +348,7 @@ namespace AgroBase.Forms.Operacoes
var Dispositivo = Variaveis.OperacaoEmAndamento.DispMvd; var Dispositivo = Variaveis.OperacaoEmAndamento.DispMvd;
var Modulo = Dispositivo.Dados.Modulos.FirstOrDefault(x => x.Modulo_ID == ID); var Modulo = Dispositivo.Dados.Modulos.FirstOrDefault(x => x.Modulo_ID == ID);
var Comando = Modulo.DirMotor.ProtocoloComando(Direcao.Parado); var Comando = Modulo.DirMotor.ProtocoloComando(Direcao.Parado);
Dispositivo.AdicionarMensagemFila(Modulo.Modulo_ID, Comando); Dispositivo.AdicionarMensagemFila(Modulo.Modulo_ID, Comando, true, false);
} }
private void chbCmd_CheckedChanged(object sender, EventArgs e) private void chbCmd_CheckedChanged(object sender, EventArgs e)
@ -504,16 +504,44 @@ namespace AgroBase.Forms.Operacoes
Visivel = true, Visivel = true,
MostrarValor = true MostrarValor = true
},*/ },*/
}); }, 60);
} }
private void AtualizarGrafico() private void AtualizarGrafico()
{ {
var Logs = Variaveis.OperacaoEmAndamento.DispMvd.Dados.Modulos.SelectMany(x => x.MovMotor.LogGrafico); /*var Logs = Variaveis.OperacaoEmAndamento.DispMvd.Dados.Modulos.FirstOrDefault(x => x.Modulo_ID == "ET").MovMotor.LogGrafico.OrderBy(x => x.Momento).ToList();
int idx = Logs.Count() > 59 ? 60 : Logs.Count() - 1; var Momentos = Logs.Select(x => x.Momento.ToString("mm:ss:fff")).ToList();
graficoMovGeral.AtualizarDados(idx);
/*MvdMotorMOVSensorimanetoGrafico Log = null; int idx = Logs.Count() - 1;
var series = new List<GraficoInterativoSerieModel>()
{
new GraficoInterativoSerieModel()
{
Titulo = "RPM SP",
Valores = Logs.Select(x => Convert.ToDouble(x.RPM_SP)).ToList(),
Visivel = true,
MostrarValor = true
},
new GraficoInterativoSerieModel()
{
Titulo = "RPM",
Valores = Logs.Select(x => x.RPM).ToList(),
Visivel = true,
MostrarValor = true
},
new GraficoInterativoSerieModel()
{
Titulo = "Temperatura",
Valores = Logs.Select(x => x.Temperatura).ToList(),
Visivel = true,
MostrarValor = true
}
};
graficoMovGeral.AtualizarDados(idx, Momentos, series);*/
MvdMotorMOVSensorimanetoGrafico Log = null;
var Modulo = Variaveis.OperacaoEmAndamento.DispMvd.Dados.Modulos.FirstOrDefault(x => x.Modulo_ID == "ET" && x.MovMotor.LogGrafico.Any()); var Modulo = Variaveis.OperacaoEmAndamento.DispMvd.Dados.Modulos.FirstOrDefault(x => x.Modulo_ID == "ET" && x.MovMotor.LogGrafico.Any());
@ -566,7 +594,7 @@ namespace AgroBase.Forms.Operacoes
} }
chart.ChartAreas[0].AxisY.Minimum = Minimo - 5; chart.ChartAreas[0].AxisY.Minimum = Minimo - 5;
chart.ChartAreas[0].AxisY.Maximum = Maximo + 5;*/ chart.ChartAreas[0].AxisY.Maximum = Maximo + 5;
} }
#endregion #endregion
@ -694,7 +722,7 @@ namespace AgroBase.Forms.Operacoes
{ {
Bico.Atuado = Bico.Atuado ? !Variaveis.OperacaoEmAndamento.DispAtu.Dados.AtuacaoNivelAlto : Variaveis.OperacaoEmAndamento.DispAtu.Dados.AtuacaoNivelAlto; Bico.Atuado = Bico.Atuado ? !Variaveis.OperacaoEmAndamento.DispAtu.Dados.AtuacaoNivelAlto : Variaveis.OperacaoEmAndamento.DispAtu.Dados.AtuacaoNivelAlto;
string Protocolo = Bico.ProtocoloComando(); string Protocolo = Bico.ProtocoloComando();
Variaveis.OperacaoEmAndamento.DispAtu.AdicionarMensagemFila(Variaveis.OperacaoEmAndamento.DispAtu.Dados.Modulo_ID, Protocolo); Variaveis.OperacaoEmAndamento.DispAtu.AdicionarMensagemFila(Variaveis.OperacaoEmAndamento.DispAtu.Dados.Modulo_ID, Protocolo, true, false);
pnlAtuadores.Controls.OfType<Label>().First(x => x.Name == "lblCmd_" + ID).Text = "Comando: " + (Bico.Atuado ? "Ligado" : "Desligado"); pnlAtuadores.Controls.OfType<Label>().First(x => x.Name == "lblCmd_" + ID).Text = "Comando: " + (Bico.Atuado ? "Ligado" : "Desligado");
btn.Text = Bico.Atuado ? "Desligar" : "Ligar"; btn.Text = Bico.Atuado ? "Desligar" : "Ligar";
@ -722,7 +750,7 @@ namespace AgroBase.Forms.Operacoes
private void EnviarProtocoloComandoBomba() private void EnviarProtocoloComandoBomba()
{ {
string Protocolo = Variaveis.OperacaoEmAndamento.DispAtu.Dados.BombaPressurizadora.ProtocoloComando(); string Protocolo = Variaveis.OperacaoEmAndamento.DispAtu.Dados.BombaPressurizadora.ProtocoloComando();
Variaveis.OperacaoEmAndamento.DispAtu.AdicionarMensagemFila(Variaveis.OperacaoEmAndamento.DispAtu.Dados.Modulo_ID, Protocolo); Variaveis.OperacaoEmAndamento.DispAtu.AdicionarMensagemFila(Variaveis.OperacaoEmAndamento.DispAtu.Dados.Modulo_ID, Protocolo, true, false);
} }
private void pnlAtuadores_Paint(object sender, PaintEventArgs e) private void pnlAtuadores_Paint(object sender, PaintEventArgs e)

View File

@ -144,35 +144,35 @@ namespace AgroBase.Forms.Operacoes
new GraficoInterativoSerieModel() new GraficoInterativoSerieModel()
{ {
Titulo = "RPM SP", Titulo = "RPM SP",
Valores = LogsMovimentacao.GroupBy(x => new {ID = x.ComponenteID, Momento = x.Momento}).Select(x => x.Average(y => y.RPM_SP)).ToList(), Valores = LogsMovimentacao.GroupBy(x => new {ID = x.Modulo_ID, Momento = x.Momento}).Select(x => x.Average(y => y.RPM_SP)).ToList(),
Visivel = true, Visivel = true,
MostrarValor = true MostrarValor = true
}, },
new GraficoInterativoSerieModel() new GraficoInterativoSerieModel()
{ {
Titulo = "EF", Titulo = "EF",
Valores = LogsMovimentacao.Where(x => x.ComponenteID == "EF").Select(x => x.RPM).ToList(), Valores = LogsMovimentacao.Where(x => x.Modulo_ID == "EF").Select(x => x.RPM).ToList(),
Visivel = true, Visivel = true,
MostrarValor = true MostrarValor = true
}, },
new GraficoInterativoSerieModel() new GraficoInterativoSerieModel()
{ {
Titulo = "ET", Titulo = "ET",
Valores = LogsMovimentacao.Where(x => x.ComponenteID == "ET").Select(x => x.RPM).ToList(), Valores = LogsMovimentacao.Where(x => x.Modulo_ID == "ET").Select(x => x.RPM).ToList(),
Visivel = true, Visivel = true,
MostrarValor = true MostrarValor = true
}, },
new GraficoInterativoSerieModel() new GraficoInterativoSerieModel()
{ {
Titulo = "DT", Titulo = "DT",
Valores = LogsMovimentacao.Where(x => x.ComponenteID == "DT").Select(x => x.RPM).ToList(), Valores = LogsMovimentacao.Where(x => x.Modulo_ID == "DT").Select(x => x.RPM).ToList(),
Visivel = true, Visivel = true,
MostrarValor = true MostrarValor = true
}, },
new GraficoInterativoSerieModel() new GraficoInterativoSerieModel()
{ {
Titulo = "DF", Titulo = "DF",
Valores = LogsMovimentacao.Where(x => x.ComponenteID == "DF").Select(x => x.RPM).ToList(), Valores = LogsMovimentacao.Where(x => x.Modulo_ID == "DF").Select(x => x.RPM).ToList(),
Visivel = true, Visivel = true,
MostrarValor = true MostrarValor = true
}, },
@ -183,25 +183,25 @@ namespace AgroBase.Forms.Operacoes
new GraficoInterativoSerieModel() new GraficoInterativoSerieModel()
{ {
Titulo = "EF", Titulo = "EF",
Valores = LogsMovimentacao.Where(x => x.ComponenteID == "EF").Select(x => x.Temperatura).ToList(), Valores = LogsMovimentacao.Where(x => x.Modulo_ID == "EF").Select(x => x.Temperatura).ToList(),
Visivel = true Visivel = true
}, },
new GraficoInterativoSerieModel() new GraficoInterativoSerieModel()
{ {
Titulo = "ET", Titulo = "ET",
Valores = LogsMovimentacao.Where(x => x.ComponenteID == "ET").Select(x => x.Temperatura).ToList(), Valores = LogsMovimentacao.Where(x => x.Modulo_ID == "ET").Select(x => x.Temperatura).ToList(),
Visivel = true Visivel = true
}, },
new GraficoInterativoSerieModel() new GraficoInterativoSerieModel()
{ {
Titulo = "DT", Titulo = "DT",
Valores = LogsMovimentacao.Where(x => x.ComponenteID == "DT").Select(x => x.Temperatura).ToList(), Valores = LogsMovimentacao.Where(x => x.Modulo_ID == "DT").Select(x => x.Temperatura).ToList(),
Visivel = true Visivel = true
}, },
new GraficoInterativoSerieModel() new GraficoInterativoSerieModel()
{ {
Titulo = "DF", Titulo = "DF",
Valores = LogsMovimentacao.Where(x => x.ComponenteID == "DF").Select(x => x.Temperatura).ToList(), Valores = LogsMovimentacao.Where(x => x.Modulo_ID == "DF").Select(x => x.Temperatura).ToList(),
Visivel = true Visivel = true
}, },
}); });
@ -211,25 +211,25 @@ namespace AgroBase.Forms.Operacoes
new GraficoInterativoSerieModel() new GraficoInterativoSerieModel()
{ {
Titulo = "EF", Titulo = "EF",
Valores = LogsMovimentacao.Where(x => x.ComponenteID == "EF").Select(x => x.Velocidade).ToList(), Valores = LogsMovimentacao.Where(x => x.Modulo_ID == "EF").Select(x => x.Velocidade).ToList(),
Visivel = true Visivel = true
}, },
new GraficoInterativoSerieModel() new GraficoInterativoSerieModel()
{ {
Titulo = "ET", Titulo = "ET",
Valores = LogsMovimentacao.Where(x => x.ComponenteID == "ET").Select(x => x.Velocidade).ToList(), Valores = LogsMovimentacao.Where(x => x.Modulo_ID == "ET").Select(x => x.Velocidade).ToList(),
Visivel = true Visivel = true
}, },
new GraficoInterativoSerieModel() new GraficoInterativoSerieModel()
{ {
Titulo = "DT", Titulo = "DT",
Valores = LogsMovimentacao.Where(x => x.ComponenteID == "DT").Select(x => x.Velocidade).ToList(), Valores = LogsMovimentacao.Where(x => x.Modulo_ID == "DT").Select(x => x.Velocidade).ToList(),
Visivel = true Visivel = true
}, },
new GraficoInterativoSerieModel() new GraficoInterativoSerieModel()
{ {
Titulo = "DF", Titulo = "DF",
Valores = LogsMovimentacao.Where(x => x.ComponenteID == "DF").Select(x => x.Velocidade).ToList(), Valores = LogsMovimentacao.Where(x => x.Modulo_ID == "DF").Select(x => x.Velocidade).ToList(),
Visivel = true Visivel = true
}, },
}); });
@ -548,7 +548,7 @@ namespace AgroBase.Forms.Operacoes
private void AtualizarInformacoesMotorDirecional(string ID) private void AtualizarInformacoesMotorDirecional(string ID)
{ {
var Log = LogsDirecional.Where(x => x.ComponenteID == ID).FirstOrDefault(x => x.Momento == MomentoAtual); var Log = LogsDirecional.Where(x => x.Modulo_ID == ID).FirstOrDefault(x => x.Momento == MomentoAtual);
double Angulo = Log?.Angulo ?? 0; double Angulo = Log?.Angulo ?? 0;
double Multiplicador = (Log?.Sentido ?? Enuns.Sentido.Parado) == Enuns.Sentido.Horario ? 1 : -1; double Multiplicador = (Log?.Sentido ?? Enuns.Sentido.Parado) == Enuns.Sentido.Horario ? 1 : -1;
@ -584,7 +584,7 @@ namespace AgroBase.Forms.Operacoes
graficoMovGeral.AtualizarDados(idxMomentoAtual); graficoMovGeral.AtualizarDados(idxMomentoAtual);
graficoMovTemperatura.AtualizarDados(idxMomentoAtual); graficoMovTemperatura.AtualizarDados(idxMomentoAtual);
graficoMovPotencia.AtualizarDados(idxMomentoAtual); //graficoMovPotencia.AtualizarDados(idxMomentoAtual);
graficoMovVelocidade.AtualizarDados(idxMomentoAtual); graficoMovVelocidade.AtualizarDados(idxMomentoAtual);
AtulizarDadosMotorMovimentacao("DF"); AtulizarDadosMotorMovimentacao("DF");
@ -595,11 +595,11 @@ namespace AgroBase.Forms.Operacoes
private void AtulizarDadosMotorMovimentacao(string ID) private void AtulizarDadosMotorMovimentacao(string ID)
{ {
var Log = LogsMovimentacao.FirstOrDefault(x => x.Momento == MomentoAtual && x.ComponenteID == ID); var Log = LogsMovimentacao.FirstOrDefault(x => x.Momento == MomentoAtual && x.Modulo_ID == ID);
GroupBox gpbRpm = FuncoesGlobais.FindControlRecursive<GroupBox>(tabMovGreal, "gpbMOV_Geral_" + ID); GroupBox gpbRpm = FuncoesGlobais.FindControlRecursive<GroupBox>(tabMovGreal, "gpbMOV_Geral_" + ID);
CheckBox chbAlm = FuncoesGlobais.FindControlRecursive<CheckBox>(gpbRpm, "chbMOV_Alm_" + ID); CheckBox chbAlm = FuncoesGlobais.FindControlRecursive<CheckBox>(gpbRpm, "chbMOV_Alm_" + ID);
chbAlm.Checked = Log.Alarme; chbAlm.Checked = Log.CodAlarme > 0;
TextBox txtSentidoSP = FuncoesGlobais.FindControlRecursive<TextBox>(gpbRpm, "txtMOV_SentidoSP_" + ID); TextBox txtSentidoSP = FuncoesGlobais.FindControlRecursive<TextBox>(gpbRpm, "txtMOV_SentidoSP_" + ID);
txtSentidoSP.Text = Log.Sentido_SP.ToString(); txtSentidoSP.Text = Log.Sentido_SP.ToString();
TextBox txtSentido = FuncoesGlobais.FindControlRecursive<TextBox>(gpbRpm, "txtMOV_Sentido_" + ID); TextBox txtSentido = FuncoesGlobais.FindControlRecursive<TextBox>(gpbRpm, "txtMOV_Sentido_" + ID);
@ -609,9 +609,9 @@ namespace AgroBase.Forms.Operacoes
TextBox txtAtual = FuncoesGlobais.FindControlRecursive<TextBox>(gpbTmp, "txtMOV_TemperaturaAt_" + ID); TextBox txtAtual = FuncoesGlobais.FindControlRecursive<TextBox>(gpbTmp, "txtMOV_TemperaturaAt_" + ID);
txtAtual.Text = Log.Temperatura.ToString(); txtAtual.Text = Log.Temperatura.ToString();
TextBox txtMinima = FuncoesGlobais.FindControlRecursive<TextBox>(gpbTmp, "txtMOV_TemperaturaMn_" + ID); TextBox txtMinima = FuncoesGlobais.FindControlRecursive<TextBox>(gpbTmp, "txtMOV_TemperaturaMn_" + ID);
txtMinima.Text = LogsMovimentacao.Where(x => x.Momento <= MomentoAtual && x.ComponenteID == ID).Min(x => x.Temperatura).ToString("0.00"); txtMinima.Text = LogsMovimentacao.Where(x => x.Momento <= MomentoAtual && x.Modulo_ID == ID).Min(x => x.Temperatura).ToString("0.00");
TextBox txtMaxima = FuncoesGlobais.FindControlRecursive<TextBox>(gpbTmp, "txtMOV_TemperaturaMx_" + ID); TextBox txtMaxima = FuncoesGlobais.FindControlRecursive<TextBox>(gpbTmp, "txtMOV_TemperaturaMx_" + ID);
txtMaxima.Text = LogsMovimentacao.Where(x => x.Momento <= MomentoAtual && x.ComponenteID == ID).Max(x => x.Temperatura).ToString("0.00"); txtMaxima.Text = LogsMovimentacao.Where(x => x.Momento <= MomentoAtual && x.Modulo_ID == ID).Max(x => x.Temperatura).ToString("0.00");
txtMOV_Temperatura_Media.Text = LogsMovimentacao.Where(x => x.Momento <= MomentoAtual).Average(x => x.Temperatura).ToString("0.00"); txtMOV_Temperatura_Media.Text = LogsMovimentacao.Where(x => x.Momento <= MomentoAtual).Average(x => x.Temperatura).ToString("0.00");
txtMOV_Temperatura_Mediana.Text = FuncoesMatematicas.CalcularMediana(LogsMovimentacao.Where(x => x.Momento <= MomentoAtual).Select(x => x.Temperatura).ToList()).ToString("0.00"); txtMOV_Temperatura_Mediana.Text = FuncoesMatematicas.CalcularMediana(LogsMovimentacao.Where(x => x.Momento <= MomentoAtual).Select(x => x.Temperatura).ToList()).ToString("0.00");

View File

@ -105,25 +105,25 @@ namespace AgroBase.Forms
foreach (var Modulo in DispMvd.Dados.Modulos.Where(x => x.MovMotor.Comandar)) foreach (var Modulo in DispMvd.Dados.Modulos.Where(x => x.MovMotor.Comandar))
{ {
Label lblTitulo = pnlFundo.Controls.OfType<Label>().FirstOrDefault(ctrl => ctrl.Name == "lblM_" + Modulo.MovMotor.ID); Label lblTitulo = pnlFundo.Controls.OfType<Label>().FirstOrDefault(ctrl => ctrl.Name == "lblM_" + Modulo.Modulo_ID);
lblTitulo.ForeColor = Modulo.MovMotor.Comandar ? Modulo.MovMotor.Inicializado ? Color.Green : Color.Red : Color.Black; lblTitulo.ForeColor = Modulo.MovMotor.Comandar ? Modulo.MovMotor.Inicializado ? Color.Green : Color.Red : Color.Black;
lblTitulo.Text = lblTitulo.Text.Split(' ')[0] + " (" + Modulo.MovMotor.ID + ") - Alm: " + Modulo.MovMotor.CodigoAlarme; lblTitulo.Text = lblTitulo.Text.Split(' ')[0] + " (" + Modulo.Modulo_ID + ") - Alm: " + Modulo.MovMotor.CodigoAlarme;
Label lblM_RPMSP = pnlFundo.Controls.OfType<Label>().FirstOrDefault(ctrl => ctrl.Name == "lbl" + Modulo.MovMotor.ID + "M_RPMSP"); Label lblM_RPMSP = pnlFundo.Controls.OfType<Label>().FirstOrDefault(ctrl => ctrl.Name == "lbl" + Modulo.Modulo_ID + "M_RPMSP");
lblM_RPMSP.Text = "RPM SP: " + Modulo.MovMotor.RPM_SP.ToString("0.00"); lblM_RPMSP.Text = "RPM SP: " + Modulo.MovMotor.RPM_SP.ToString("0.00");
Label lblM_RPM = pnlFundo.Controls.OfType<Label>().FirstOrDefault(ctrl => ctrl.Name == "lbl" + Modulo.MovMotor.ID + "M_RPM"); Label lblM_RPM = pnlFundo.Controls.OfType<Label>().FirstOrDefault(ctrl => ctrl.Name == "lbl" + Modulo.Modulo_ID + "M_RPM");
lblM_RPM.Text = "RPM: " + Modulo.MovMotor.RPM.ToString("0.00"); lblM_RPM.Text = "RPM: " + Modulo.MovMotor.RPM.ToString("0.00");
Label lblM_Velocidade = pnlFundo.Controls.OfType<Label>().FirstOrDefault(ctrl => ctrl.Name == "lbl" + Modulo.MovMotor.ID + "M_Velocidade"); Label lblM_Velocidade = pnlFundo.Controls.OfType<Label>().FirstOrDefault(ctrl => ctrl.Name == "lbl" + Modulo.Modulo_ID + "M_Velocidade");
lblM_Velocidade.Text = "Velocidade: " + Modulo.MovMotor.VelocidadeInstantanea.ToString("0.00") + " Km/h"; lblM_Velocidade.Text = "Velocidade: " + Modulo.MovMotor.VelocidadeInstantanea.ToString("0.00") + " Km/h";
Label lblM_SentidoSP = pnlFundo.Controls.OfType<Label>().FirstOrDefault(ctrl => ctrl.Name == "lbl" + Modulo.MovMotor.ID + "M_SentidoSP"); Label lblM_SentidoSP = pnlFundo.Controls.OfType<Label>().FirstOrDefault(ctrl => ctrl.Name == "lbl" + Modulo.Modulo_ID + "M_SentidoSP");
lblM_SentidoSP.Text = "Sentido SP: " + Enum.GetName(typeof(Sentido), Modulo.MovMotor.Sentido_SP); lblM_SentidoSP.Text = "Sentido SP: " + Enum.GetName(typeof(Sentido), Modulo.MovMotor.Sentido_SP);
Label lblM_Sentido = pnlFundo.Controls.OfType<Label>().FirstOrDefault(ctrl => ctrl.Name == "lbl" + Modulo.MovMotor.ID + "M_Sentido"); Label lblM_Sentido = pnlFundo.Controls.OfType<Label>().FirstOrDefault(ctrl => ctrl.Name == "lbl" + Modulo.Modulo_ID + "M_Sentido");
lblM_Sentido.Text = "Sentido: " + Enum.GetName(typeof(Sentido), Modulo.MovMotor.Sentido); lblM_Sentido.Text = "Sentido: " + Enum.GetName(typeof(Sentido), Modulo.MovMotor.Sentido);
Label lblM_Temperatura = pnlFundo.Controls.OfType<Label>().FirstOrDefault(ctrl => ctrl.Name == "lbl" + Modulo.MovMotor.ID + "M_Temperatura"); Label lblM_Temperatura = pnlFundo.Controls.OfType<Label>().FirstOrDefault(ctrl => ctrl.Name == "lbl" + Modulo.Modulo_ID + "M_Temperatura");
lblM_Temperatura.Text = "Temperatura: " + Modulo.MovMotor.Temperatura.ToString("0.00") + "ºC"; lblM_Temperatura.Text = "Temperatura: " + Modulo.MovMotor.Temperatura.ToString("0.00") + "ºC";
lblM_Temperatura.ForeColor = Modulo.MovMotor.CodigoAlarme > 0 ? Color.Red : Color.Black; lblM_Temperatura.ForeColor = Modulo.MovMotor.CodigoAlarme > 0 ? Color.Red : Color.Black;
Label lblM_Corrente = pnlFundo.Controls.OfType<Label>().FirstOrDefault(ctrl => ctrl.Name == "lbl" + Modulo.MovMotor.ID + "M_Corrente"); Label lblM_Corrente = pnlFundo.Controls.OfType<Label>().FirstOrDefault(ctrl => ctrl.Name == "lbl" + Modulo.Modulo_ID + "M_Corrente");
lblM_Corrente.Text = "Corrente: " + Modulo.MovMotor.Corrente_Max.ToString("0.00") + "A"; lblM_Corrente.Text = "Corrente: " + Modulo.MovMotor.Corrente_Max.ToString("0.00") + "A";
Label lblM_Tensao = pnlFundo.Controls.OfType<Label>().FirstOrDefault(ctrl => ctrl.Name == "lbl" + Modulo.MovMotor.ID + "M_Tensao"); Label lblM_Tensao = pnlFundo.Controls.OfType<Label>().FirstOrDefault(ctrl => ctrl.Name == "lbl" + Modulo.Modulo_ID + "M_Tensao");
lblTensao.Text = "Tensão: " + Modulo.MovMotor.Tensao.ToString("0.00") + "V"; lblTensao.Text = "Tensão: " + Modulo.MovMotor.Tensao.ToString("0.00") + "V";
MvdMotorMOVSensorimanetoGrafico Log = null; MvdMotorMOVSensorimanetoGrafico Log = null;
@ -140,7 +140,7 @@ namespace AgroBase.Forms
{ {
Chart chart = (Chart)(pnlFundo.Controls.Find("chart" + Modulo.Modulo_ID, false).First()); Chart chart = (Chart)(pnlFundo.Controls.Find("chart" + Modulo.Modulo_ID, false).First());
chart.Titles.Clear(); chart.Titles.Clear();
chart.Titles.Add(Modulo.MovMotor.ID); chart.Titles.Add(Modulo.Modulo_ID);
var Logs = (Modulo.MovMotor.LogGrafico.Count > MovimentacaoModel.LogsManter ? Modulo.MovMotor.LogGrafico.Skip(Math.Max(0, Modulo.MovMotor.LogGrafico.Count - MovimentacaoModel.LogsManter)).Take(MovimentacaoModel.LogsManter).ToList() : Modulo.MovMotor.LogGrafico).Where(log => log.Modulo_ID == Modulo.Modulo_ID).ToList(); var Logs = (Modulo.MovMotor.LogGrafico.Count > MovimentacaoModel.LogsManter ? Modulo.MovMotor.LogGrafico.Skip(Math.Max(0, Modulo.MovMotor.LogGrafico.Count - MovimentacaoModel.LogsManter)).Take(MovimentacaoModel.LogsManter).ToList() : Modulo.MovMotor.LogGrafico).Where(log => log.Modulo_ID == Modulo.Modulo_ID).ToList();
chart.Series.Clear(); chart.Series.Clear();
List<string> Momentos = Logs.Select(x => x.Momento.ToString("mm:ss:fff")).ToList(); List<string> Momentos = Logs.Select(x => x.Momento.ToString("mm:ss:fff")).ToList();
@ -345,7 +345,7 @@ namespace AgroBase.Forms
string ID = ((Button)sender).Name.Substring(3, 2); string ID = ((Button)sender).Name.Substring(3, 2);
var Modulo = Variaveis.OperacaoEmAndamento.DispMvd.Dados.Modulos.FirstOrDefault(x => x.Modulo_ID == ID); var Modulo = Variaveis.OperacaoEmAndamento.DispMvd.Dados.Modulos.FirstOrDefault(x => x.Modulo_ID == ID);
string Comando = Modulo.DirMotor.ProtocoloComando(Direcao.Parado); string Comando = Modulo.DirMotor.ProtocoloComando(Direcao.Parado);
Variaveis.OperacaoEmAndamento.DispMvd.AdicionarMensagemFila(Modulo.Modulo_ID, Comando); Variaveis.OperacaoEmAndamento.DispMvd.AdicionarMensagemFila(Modulo.Modulo_ID, Comando, true, false);
} }
private void btnReverter_Click(object sender, EventArgs e) private void btnReverter_Click(object sender, EventArgs e)

View File

@ -0,0 +1,78 @@
namespace AgroBase.Forms
{
partial class frmMvdConfig
{
/// <summary>
/// Required designer variable.
/// </summary>
private System.ComponentModel.IContainer components = null;
/// <summary>
/// Clean up any resources being used.
/// </summary>
/// <param name="disposing">true if managed resources should be disposed; otherwise, false.</param>
protected override void Dispose(bool disposing)
{
if (disposing && (components != null))
{
components.Dispose();
}
base.Dispose(disposing);
}
#region Windows Form Designer generated code
/// <summary>
/// Required method for Designer support - do not modify
/// the contents of this method with the code editor.
/// </summary>
private void InitializeComponent()
{
this.btnMovimentação = new System.Windows.Forms.Button();
this.btnDirecional = new System.Windows.Forms.Button();
this.SuspendLayout();
//
// btnMovimentação
//
this.btnMovimentação.Font = new System.Drawing.Font("Microsoft Sans Serif", 11.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
this.btnMovimentação.Location = new System.Drawing.Point(12, 12);
this.btnMovimentação.Name = "btnMovimentação";
this.btnMovimentação.Size = new System.Drawing.Size(150, 45);
this.btnMovimentação.TabIndex = 0;
this.btnMovimentação.Text = "Movimentação";
this.btnMovimentação.UseVisualStyleBackColor = true;
this.btnMovimentação.Click += new System.EventHandler(this.btnMovimentação_Click);
//
// btnDirecional
//
this.btnDirecional.Font = new System.Drawing.Font("Microsoft Sans Serif", 11.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
this.btnDirecional.Location = new System.Drawing.Point(168, 12);
this.btnDirecional.Name = "btnDirecional";
this.btnDirecional.Size = new System.Drawing.Size(150, 45);
this.btnDirecional.TabIndex = 1;
this.btnDirecional.Text = "Direcional";
this.btnDirecional.UseVisualStyleBackColor = true;
this.btnDirecional.Click += new System.EventHandler(this.btnDirecional_Click);
//
// frmMvdConfig
//
this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F);
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
this.ClientSize = new System.Drawing.Size(330, 68);
this.Controls.Add(this.btnDirecional);
this.Controls.Add(this.btnMovimentação);
this.MaximizeBox = false;
this.Name = "frmMvdConfig";
this.StartPosition = System.Windows.Forms.FormStartPosition.CenterScreen;
this.Text = "Parametrização - Movimentação";
this.FormClosing += new System.Windows.Forms.FormClosingEventHandler(this.frmMvdConfig_FormClosing);
this.ResumeLayout(false);
}
#endregion
private System.Windows.Forms.Button btnMovimentação;
private System.Windows.Forms.Button btnDirecional;
}
}

View File

@ -0,0 +1,42 @@
using AgroBase.Forms.Direcional;
using AgroBase.Forms.Movimentacao;
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
namespace AgroBase.Forms
{
public partial class frmMvdConfig : Form
{
public frmMvdConfig()
{
InitializeComponent();
}
private void frmMvdConfig_FormClosing(object sender, FormClosingEventArgs e)
{
e.Cancel = true;
this.Visible = false;
}
private void btnMovimentação_Click(object sender, EventArgs e)
{
frmMovConfig frm = new frmMovConfig();
frm.ShowDialog();
}
private void btnDirecional_Click(object sender, EventArgs e)
{
frmDirConfig frm = new frmDirConfig();
frm.ShowDialog();
}
}
}

View File

@ -0,0 +1,120 @@
<?xml version="1.0" encoding="utf-8"?>
<root>
<!--
Microsoft ResX Schema
Version 2.0
The primary goals of this format is to allow a simple XML format
that is mostly human readable. The generation and parsing of the
various data types are done through the TypeConverter classes
associated with the data types.
Example:
... ado.net/XML headers & schema ...
<resheader name="resmimetype">text/microsoft-resx</resheader>
<resheader name="version">2.0</resheader>
<resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
<resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
<data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
<data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
<data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
<value>[base64 mime encoded serialized .NET Framework object]</value>
</data>
<data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
<comment>This is a comment</comment>
</data>
There are any number of "resheader" rows that contain simple
name/value pairs.
Each data row contains a name, and value. The row also contains a
type or mimetype. Type corresponds to a .NET class that support
text/value conversion through the TypeConverter architecture.
Classes that don't support this are serialized and stored with the
mimetype set.
The mimetype is used for serialized objects, and tells the
ResXResourceReader how to depersist the object. This is currently not
extensible. For a given mimetype the value must be set accordingly:
Note - application/x-microsoft.net.object.binary.base64 is the format
that the ResXResourceWriter will generate, however the reader can
read any of the formats listed below.
mimetype: application/x-microsoft.net.object.binary.base64
value : The object must be serialized with
: System.Runtime.Serialization.Formatters.Binary.BinaryFormatter
: and then encoded with base64 encoding.
mimetype: application/x-microsoft.net.object.soap.base64
value : The object must be serialized with
: System.Runtime.Serialization.Formatters.Soap.SoapFormatter
: and then encoded with base64 encoding.
mimetype: application/x-microsoft.net.object.bytearray.base64
value : The object must be serialized into a byte array
: using a System.ComponentModel.TypeConverter
: and then encoded with base64 encoding.
-->
<xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
<xsd:import namespace="http://www.w3.org/XML/1998/namespace" />
<xsd:element name="root" msdata:IsDataSet="true">
<xsd:complexType>
<xsd:choice maxOccurs="unbounded">
<xsd:element name="metadata">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" />
</xsd:sequence>
<xsd:attribute name="name" use="required" type="xsd:string" />
<xsd:attribute name="type" type="xsd:string" />
<xsd:attribute name="mimetype" type="xsd:string" />
<xsd:attribute ref="xml:space" />
</xsd:complexType>
</xsd:element>
<xsd:element name="assembly">
<xsd:complexType>
<xsd:attribute name="alias" type="xsd:string" />
<xsd:attribute name="name" type="xsd:string" />
</xsd:complexType>
</xsd:element>
<xsd:element name="data">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
<xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
</xsd:sequence>
<xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" />
<xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
<xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
<xsd:attribute ref="xml:space" />
</xsd:complexType>
</xsd:element>
<xsd:element name="resheader">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
</xsd:sequence>
<xsd:attribute name="name" type="xsd:string" use="required" />
</xsd:complexType>
</xsd:element>
</xsd:choice>
</xsd:complexType>
</xsd:element>
</xsd:schema>
<resheader name="resmimetype">
<value>text/microsoft-resx</value>
</resheader>
<resheader name="version">
<value>2.0</value>
</resheader>
<resheader name="reader">
<value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<resheader name="writer">
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
</root>

View File

@ -116,11 +116,11 @@ namespace AgroBase
this.gpbAcoes.Controls.Add(this.erroStrip); this.gpbAcoes.Controls.Add(this.erroStrip);
this.gpbAcoes.Controls.Add(this.pnlLateral); this.gpbAcoes.Controls.Add(this.pnlLateral);
this.gpbAcoes.Dock = System.Windows.Forms.DockStyle.Right; this.gpbAcoes.Dock = System.Windows.Forms.DockStyle.Right;
this.gpbAcoes.Location = new System.Drawing.Point(627, 0); this.gpbAcoes.Location = new System.Drawing.Point(470, 0);
this.gpbAcoes.Margin = new System.Windows.Forms.Padding(3, 2, 3, 2); this.gpbAcoes.Margin = new System.Windows.Forms.Padding(2, 2, 2, 2);
this.gpbAcoes.Name = "gpbAcoes"; this.gpbAcoes.Name = "gpbAcoes";
this.gpbAcoes.Padding = new System.Windows.Forms.Padding(3, 2, 3, 2); this.gpbAcoes.Padding = new System.Windows.Forms.Padding(2, 2, 2, 2);
this.gpbAcoes.Size = new System.Drawing.Size(744, 750); this.gpbAcoes.Size = new System.Drawing.Size(558, 609);
this.gpbAcoes.TabIndex = 0; this.gpbAcoes.TabIndex = 0;
this.gpbAcoes.TabStop = false; this.gpbAcoes.TabStop = false;
this.gpbAcoes.Text = "Conexão"; this.gpbAcoes.Text = "Conexão";
@ -130,17 +130,17 @@ namespace AgroBase
this.erroStrip.ImageScalingSize = new System.Drawing.Size(20, 20); this.erroStrip.ImageScalingSize = new System.Drawing.Size(20, 20);
this.erroStrip.Items.AddRange(new System.Windows.Forms.ToolStripItem[] { this.erroStrip.Items.AddRange(new System.Windows.Forms.ToolStripItem[] {
this.lblStripErro}); this.lblStripErro});
this.erroStrip.Location = new System.Drawing.Point(3, 722); this.erroStrip.Location = new System.Drawing.Point(2, 585);
this.erroStrip.Name = "erroStrip"; this.erroStrip.Name = "erroStrip";
this.erroStrip.Padding = new System.Windows.Forms.Padding(1, 0, 13, 0); this.erroStrip.Padding = new System.Windows.Forms.Padding(1, 0, 10, 0);
this.erroStrip.Size = new System.Drawing.Size(738, 26); this.erroStrip.Size = new System.Drawing.Size(554, 22);
this.erroStrip.TabIndex = 1; this.erroStrip.TabIndex = 1;
this.erroStrip.Text = "statusStrip1"; this.erroStrip.Text = "statusStrip1";
// //
// lblStripErro // lblStripErro
// //
this.lblStripErro.Name = "lblStripErro"; this.lblStripErro.Name = "lblStripErro";
this.lblStripErro.Size = new System.Drawing.Size(62, 20); this.lblStripErro.Size = new System.Drawing.Size(49, 17);
this.lblStripErro.Text = "Iniciado"; this.lblStripErro.Text = "Iniciado";
// //
// pnlLateral // pnlLateral
@ -154,19 +154,18 @@ namespace AgroBase
this.pnlLateral.Controls.Add(this.gpbNovoDispositivo); this.pnlLateral.Controls.Add(this.gpbNovoDispositivo);
this.pnlLateral.Controls.Add(this.btnNovoDispositivo); this.pnlLateral.Controls.Add(this.btnNovoDispositivo);
this.pnlLateral.Dock = System.Windows.Forms.DockStyle.Fill; this.pnlLateral.Dock = System.Windows.Forms.DockStyle.Fill;
this.pnlLateral.Location = new System.Drawing.Point(3, 17); this.pnlLateral.Location = new System.Drawing.Point(2, 15);
this.pnlLateral.Margin = new System.Windows.Forms.Padding(3, 2, 3, 2); this.pnlLateral.Margin = new System.Windows.Forms.Padding(2, 2, 2, 2);
this.pnlLateral.Name = "pnlLateral"; this.pnlLateral.Name = "pnlLateral";
this.pnlLateral.Size = new System.Drawing.Size(738, 731); this.pnlLateral.Size = new System.Drawing.Size(554, 592);
this.pnlLateral.TabIndex = 0; this.pnlLateral.TabIndex = 0;
// //
// chbConexaoautomatica // chbConexaoautomatica
// //
this.chbConexaoautomatica.AutoSize = true; this.chbConexaoautomatica.AutoSize = true;
this.chbConexaoautomatica.Location = new System.Drawing.Point(229, 34); this.chbConexaoautomatica.Location = new System.Drawing.Point(172, 28);
this.chbConexaoautomatica.Margin = new System.Windows.Forms.Padding(4);
this.chbConexaoautomatica.Name = "chbConexaoautomatica"; this.chbConexaoautomatica.Name = "chbConexaoautomatica";
this.chbConexaoautomatica.Size = new System.Drawing.Size(152, 20); this.chbConexaoautomatica.Size = new System.Drawing.Size(123, 17);
this.chbConexaoautomatica.TabIndex = 21; this.chbConexaoautomatica.TabIndex = 21;
this.chbConexaoautomatica.Text = "Conexão automática"; this.chbConexaoautomatica.Text = "Conexão automática";
this.chbConexaoautomatica.UseVisualStyleBackColor = true; this.chbConexaoautomatica.UseVisualStyleBackColor = true;
@ -174,11 +173,11 @@ namespace AgroBase
// gpbDispositivos // gpbDispositivos
// //
this.gpbDispositivos.Controls.Add(this.lstDisponiveis); this.gpbDispositivos.Controls.Add(this.lstDisponiveis);
this.gpbDispositivos.Location = new System.Drawing.Point(215, 96); this.gpbDispositivos.Location = new System.Drawing.Point(161, 78);
this.gpbDispositivos.Margin = new System.Windows.Forms.Padding(3, 2, 3, 2); this.gpbDispositivos.Margin = new System.Windows.Forms.Padding(2, 2, 2, 2);
this.gpbDispositivos.Name = "gpbDispositivos"; this.gpbDispositivos.Name = "gpbDispositivos";
this.gpbDispositivos.Padding = new System.Windows.Forms.Padding(3, 2, 3, 2); this.gpbDispositivos.Padding = new System.Windows.Forms.Padding(2, 2, 2, 2);
this.gpbDispositivos.Size = new System.Drawing.Size(514, 164); this.gpbDispositivos.Size = new System.Drawing.Size(386, 133);
this.gpbDispositivos.TabIndex = 3; this.gpbDispositivos.TabIndex = 3;
this.gpbDispositivos.TabStop = false; this.gpbDispositivos.TabStop = false;
this.gpbDispositivos.Text = "Dispositivos disponíveis"; this.gpbDispositivos.Text = "Dispositivos disponíveis";
@ -186,20 +185,20 @@ namespace AgroBase
// lstDisponiveis // lstDisponiveis
// //
this.lstDisponiveis.HideSelection = false; this.lstDisponiveis.HideSelection = false;
this.lstDisponiveis.Location = new System.Drawing.Point(15, 25); this.lstDisponiveis.Location = new System.Drawing.Point(11, 20);
this.lstDisponiveis.Margin = new System.Windows.Forms.Padding(3, 2, 3, 2); this.lstDisponiveis.Margin = new System.Windows.Forms.Padding(2, 2, 2, 2);
this.lstDisponiveis.Name = "lstDisponiveis"; this.lstDisponiveis.Name = "lstDisponiveis";
this.lstDisponiveis.Size = new System.Drawing.Size(335, 125); this.lstDisponiveis.Size = new System.Drawing.Size(252, 102);
this.lstDisponiveis.TabIndex = 0; this.lstDisponiveis.TabIndex = 0;
this.lstDisponiveis.UseCompatibleStateImageBehavior = false; this.lstDisponiveis.UseCompatibleStateImageBehavior = false;
this.lstDisponiveis.View = System.Windows.Forms.View.List; this.lstDisponiveis.View = System.Windows.Forms.View.List;
// //
// btnRemover // btnRemover
// //
this.btnRemover.Location = new System.Drawing.Point(116, 62); this.btnRemover.Location = new System.Drawing.Point(87, 50);
this.btnRemover.Margin = new System.Windows.Forms.Padding(3, 2, 3, 2); this.btnRemover.Margin = new System.Windows.Forms.Padding(2, 2, 2, 2);
this.btnRemover.Name = "btnRemover"; this.btnRemover.Name = "btnRemover";
this.btnRemover.Size = new System.Drawing.Size(83, 28); this.btnRemover.Size = new System.Drawing.Size(62, 23);
this.btnRemover.TabIndex = 12; this.btnRemover.TabIndex = 12;
this.btnRemover.Text = "Remover"; this.btnRemover.Text = "Remover";
this.btnRemover.UseVisualStyleBackColor = true; this.btnRemover.UseVisualStyleBackColor = true;
@ -208,9 +207,10 @@ namespace AgroBase
// lblDispositivos // lblDispositivos
// //
this.lblDispositivos.AutoSize = true; this.lblDispositivos.AutoSize = true;
this.lblDispositivos.Location = new System.Drawing.Point(27, 12); this.lblDispositivos.Location = new System.Drawing.Point(20, 10);
this.lblDispositivos.Margin = new System.Windows.Forms.Padding(2, 0, 2, 0);
this.lblDispositivos.Name = "lblDispositivos"; this.lblDispositivos.Name = "lblDispositivos";
this.lblDispositivos.Size = new System.Drawing.Size(81, 16); this.lblDispositivos.Size = new System.Drawing.Size(63, 13);
this.lblDispositivos.TabIndex = 11; this.lblDispositivos.TabIndex = 11;
this.lblDispositivos.Text = "Dispositivos"; this.lblDispositivos.Text = "Dispositivos";
// //
@ -218,10 +218,10 @@ namespace AgroBase
// //
this.cmbDispositivos.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList; this.cmbDispositivos.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList;
this.cmbDispositivos.FormattingEnabled = true; this.cmbDispositivos.FormattingEnabled = true;
this.cmbDispositivos.Location = new System.Drawing.Point(29, 32); this.cmbDispositivos.Location = new System.Drawing.Point(22, 26);
this.cmbDispositivos.Margin = new System.Windows.Forms.Padding(3, 2, 3, 2); this.cmbDispositivos.Margin = new System.Windows.Forms.Padding(2, 2, 2, 2);
this.cmbDispositivos.Name = "cmbDispositivos"; this.cmbDispositivos.Name = "cmbDispositivos";
this.cmbDispositivos.Size = new System.Drawing.Size(169, 24); this.cmbDispositivos.Size = new System.Drawing.Size(128, 21);
this.cmbDispositivos.TabIndex = 10; this.cmbDispositivos.TabIndex = 10;
this.cmbDispositivos.SelectedIndexChanged += new System.EventHandler(this.cmbDispositivos_SelectedIndexChanged); this.cmbDispositivos.SelectedIndexChanged += new System.EventHandler(this.cmbDispositivos_SelectedIndexChanged);
// //
@ -233,11 +233,11 @@ namespace AgroBase
this.gpbNovoDispositivo.Controls.Add(this.lblDescricao); this.gpbNovoDispositivo.Controls.Add(this.lblDescricao);
this.gpbNovoDispositivo.Controls.Add(this.lblTipo); this.gpbNovoDispositivo.Controls.Add(this.lblTipo);
this.gpbNovoDispositivo.Enabled = false; this.gpbNovoDispositivo.Enabled = false;
this.gpbNovoDispositivo.Location = new System.Drawing.Point(21, 96); this.gpbNovoDispositivo.Location = new System.Drawing.Point(16, 78);
this.gpbNovoDispositivo.Margin = new System.Windows.Forms.Padding(3, 2, 3, 2); this.gpbNovoDispositivo.Margin = new System.Windows.Forms.Padding(2, 2, 2, 2);
this.gpbNovoDispositivo.Name = "gpbNovoDispositivo"; this.gpbNovoDispositivo.Name = "gpbNovoDispositivo";
this.gpbNovoDispositivo.Padding = new System.Windows.Forms.Padding(3, 2, 3, 2); this.gpbNovoDispositivo.Padding = new System.Windows.Forms.Padding(2, 2, 2, 2);
this.gpbNovoDispositivo.Size = new System.Drawing.Size(188, 164); this.gpbNovoDispositivo.Size = new System.Drawing.Size(141, 133);
this.gpbNovoDispositivo.TabIndex = 9; this.gpbNovoDispositivo.TabIndex = 9;
this.gpbNovoDispositivo.TabStop = false; this.gpbNovoDispositivo.TabStop = false;
this.gpbNovoDispositivo.Text = "Novo Dispositivo"; this.gpbNovoDispositivo.Text = "Novo Dispositivo";
@ -246,18 +246,18 @@ namespace AgroBase
// //
this.cmbTipos.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList; this.cmbTipos.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList;
this.cmbTipos.FormattingEnabled = true; this.cmbTipos.FormattingEnabled = true;
this.cmbTipos.Location = new System.Drawing.Point(9, 46); this.cmbTipos.Location = new System.Drawing.Point(7, 37);
this.cmbTipos.Margin = new System.Windows.Forms.Padding(3, 2, 3, 2); this.cmbTipos.Margin = new System.Windows.Forms.Padding(2, 2, 2, 2);
this.cmbTipos.Name = "cmbTipos"; this.cmbTipos.Name = "cmbTipos";
this.cmbTipos.Size = new System.Drawing.Size(169, 24); this.cmbTipos.Size = new System.Drawing.Size(128, 21);
this.cmbTipos.TabIndex = 2; this.cmbTipos.TabIndex = 2;
// //
// btnSalvar // btnSalvar
// //
this.btnSalvar.Location = new System.Drawing.Point(9, 124); this.btnSalvar.Location = new System.Drawing.Point(7, 101);
this.btnSalvar.Margin = new System.Windows.Forms.Padding(3, 2, 3, 2); this.btnSalvar.Margin = new System.Windows.Forms.Padding(2, 2, 2, 2);
this.btnSalvar.Name = "btnSalvar"; this.btnSalvar.Name = "btnSalvar";
this.btnSalvar.Size = new System.Drawing.Size(169, 25); this.btnSalvar.Size = new System.Drawing.Size(127, 20);
this.btnSalvar.TabIndex = 9; this.btnSalvar.TabIndex = 9;
this.btnSalvar.Text = "Salvar"; this.btnSalvar.Text = "Salvar";
this.btnSalvar.UseVisualStyleBackColor = true; this.btnSalvar.UseVisualStyleBackColor = true;
@ -265,36 +265,38 @@ namespace AgroBase
// //
// txtDescricao // txtDescricao
// //
this.txtDescricao.Location = new System.Drawing.Point(9, 94); this.txtDescricao.Location = new System.Drawing.Point(7, 76);
this.txtDescricao.Margin = new System.Windows.Forms.Padding(3, 2, 3, 2); this.txtDescricao.Margin = new System.Windows.Forms.Padding(2, 2, 2, 2);
this.txtDescricao.Name = "txtDescricao"; this.txtDescricao.Name = "txtDescricao";
this.txtDescricao.Size = new System.Drawing.Size(169, 22); this.txtDescricao.Size = new System.Drawing.Size(128, 20);
this.txtDescricao.TabIndex = 3; this.txtDescricao.TabIndex = 3;
// //
// lblDescricao // lblDescricao
// //
this.lblDescricao.AutoSize = true; this.lblDescricao.AutoSize = true;
this.lblDescricao.Location = new System.Drawing.Point(5, 74); this.lblDescricao.Location = new System.Drawing.Point(4, 60);
this.lblDescricao.Margin = new System.Windows.Forms.Padding(2, 0, 2, 0);
this.lblDescricao.Name = "lblDescricao"; this.lblDescricao.Name = "lblDescricao";
this.lblDescricao.Size = new System.Drawing.Size(69, 16); this.lblDescricao.Size = new System.Drawing.Size(55, 13);
this.lblDescricao.TabIndex = 2; this.lblDescricao.TabIndex = 2;
this.lblDescricao.Text = "Descrição"; this.lblDescricao.Text = "Descrição";
// //
// lblTipo // lblTipo
// //
this.lblTipo.AutoSize = true; this.lblTipo.AutoSize = true;
this.lblTipo.Location = new System.Drawing.Point(5, 25); this.lblTipo.Location = new System.Drawing.Point(4, 20);
this.lblTipo.Margin = new System.Windows.Forms.Padding(2, 0, 2, 0);
this.lblTipo.Name = "lblTipo"; this.lblTipo.Name = "lblTipo";
this.lblTipo.Size = new System.Drawing.Size(35, 16); this.lblTipo.Size = new System.Drawing.Size(28, 13);
this.lblTipo.TabIndex = 0; this.lblTipo.TabIndex = 0;
this.lblTipo.Text = "Tipo"; this.lblTipo.Text = "Tipo";
// //
// btnNovoDispositivo // btnNovoDispositivo
// //
this.btnNovoDispositivo.Location = new System.Drawing.Point(29, 62); this.btnNovoDispositivo.Location = new System.Drawing.Point(22, 50);
this.btnNovoDispositivo.Margin = new System.Windows.Forms.Padding(3, 2, 3, 2); this.btnNovoDispositivo.Margin = new System.Windows.Forms.Padding(2, 2, 2, 2);
this.btnNovoDispositivo.Name = "btnNovoDispositivo"; this.btnNovoDispositivo.Name = "btnNovoDispositivo";
this.btnNovoDispositivo.Size = new System.Drawing.Size(80, 28); this.btnNovoDispositivo.Size = new System.Drawing.Size(60, 23);
this.btnNovoDispositivo.TabIndex = 8; this.btnNovoDispositivo.TabIndex = 8;
this.btnNovoDispositivo.Text = "Novo dispositivo"; this.btnNovoDispositivo.Text = "Novo dispositivo";
this.btnNovoDispositivo.UseVisualStyleBackColor = true; this.btnNovoDispositivo.UseVisualStyleBackColor = true;
@ -309,41 +311,41 @@ namespace AgroBase
this.lblStripOperacao, this.lblStripOperacao,
this.lblStripOperacaoStatus, this.lblStripOperacaoStatus,
this.lblStripMqtt}); this.lblStripMqtt});
this.generalStrip.Location = new System.Drawing.Point(0, 724); this.generalStrip.Location = new System.Drawing.Point(0, 587);
this.generalStrip.Name = "generalStrip"; this.generalStrip.Name = "generalStrip";
this.generalStrip.Padding = new System.Windows.Forms.Padding(1, 0, 13, 0); this.generalStrip.Padding = new System.Windows.Forms.Padding(1, 0, 10, 0);
this.generalStrip.Size = new System.Drawing.Size(627, 26); this.generalStrip.Size = new System.Drawing.Size(470, 22);
this.generalStrip.TabIndex = 1; this.generalStrip.TabIndex = 1;
this.generalStrip.Text = "statusStrip1"; this.generalStrip.Text = "statusStrip1";
// //
// lblStripJoystick // lblStripJoystick
// //
this.lblStripJoystick.Name = "lblStripJoystick"; this.lblStripJoystick.Name = "lblStripJoystick";
this.lblStripJoystick.Size = new System.Drawing.Size(161, 20); this.lblStripJoystick.Size = new System.Drawing.Size(129, 17);
this.lblStripJoystick.Text = "Joystick: Desconectado"; this.lblStripJoystick.Text = "Joystick: Desconectado";
// //
// lblStripJoystickComando // lblStripJoystickComando
// //
this.lblStripJoystickComando.Name = "lblStripJoystickComando"; this.lblStripJoystickComando.Name = "lblStripJoystickComando";
this.lblStripJoystickComando.Size = new System.Drawing.Size(18, 20); this.lblStripJoystickComando.Size = new System.Drawing.Size(16, 17);
this.lblStripJoystickComando.Text = "..."; this.lblStripJoystickComando.Text = "...";
// //
// lblStripOperacao // lblStripOperacao
// //
this.lblStripOperacao.Name = "lblStripOperacao"; this.lblStripOperacao.Name = "lblStripOperacao";
this.lblStripOperacao.Size = new System.Drawing.Size(130, 20); this.lblStripOperacao.Size = new System.Drawing.Size(104, 17);
this.lblStripOperacao.Text = "Operação: Manual"; this.lblStripOperacao.Text = "Operação: Manual";
// //
// lblStripOperacaoStatus // lblStripOperacaoStatus
// //
this.lblStripOperacaoStatus.Name = "lblStripOperacaoStatus"; this.lblStripOperacaoStatus.Name = "lblStripOperacaoStatus";
this.lblStripOperacaoStatus.Size = new System.Drawing.Size(94, 20); this.lblStripOperacaoStatus.Size = new System.Drawing.Size(74, 17);
this.lblStripOperacaoStatus.Text = "Não iniciado"; this.lblStripOperacaoStatus.Text = "Não iniciado";
// //
// lblStripMqtt // lblStripMqtt
// //
this.lblStripMqtt.Name = "lblStripMqtt"; this.lblStripMqtt.Name = "lblStripMqtt";
this.lblStripMqtt.Size = new System.Drawing.Size(150, 20); this.lblStripMqtt.Size = new System.Drawing.Size(119, 17);
this.lblStripMqtt.Text = "MQTT: Desconectado"; this.lblStripMqtt.Text = "MQTT: Desconectado";
// //
// gpbMovimentacao // gpbMovimentacao
@ -352,11 +354,11 @@ namespace AgroBase
this.gpbMovimentacao.Controls.Add(this.trkKmh); this.gpbMovimentacao.Controls.Add(this.trkKmh);
this.gpbMovimentacao.Controls.Add(this.trkRPM); this.gpbMovimentacao.Controls.Add(this.trkRPM);
this.gpbMovimentacao.Controls.Add(this.lblRPM); this.gpbMovimentacao.Controls.Add(this.lblRPM);
this.gpbMovimentacao.Location = new System.Drawing.Point(12, 78); this.gpbMovimentacao.Location = new System.Drawing.Point(9, 63);
this.gpbMovimentacao.Margin = new System.Windows.Forms.Padding(3, 2, 3, 2); this.gpbMovimentacao.Margin = new System.Windows.Forms.Padding(2, 2, 2, 2);
this.gpbMovimentacao.Name = "gpbMovimentacao"; this.gpbMovimentacao.Name = "gpbMovimentacao";
this.gpbMovimentacao.Padding = new System.Windows.Forms.Padding(3, 2, 3, 2); this.gpbMovimentacao.Padding = new System.Windows.Forms.Padding(2, 2, 2, 2);
this.gpbMovimentacao.Size = new System.Drawing.Size(440, 105); this.gpbMovimentacao.Size = new System.Drawing.Size(330, 85);
this.gpbMovimentacao.TabIndex = 2; this.gpbMovimentacao.TabIndex = 2;
this.gpbMovimentacao.TabStop = false; this.gpbMovimentacao.TabStop = false;
this.gpbMovimentacao.Text = "Controle Movimentação"; this.gpbMovimentacao.Text = "Controle Movimentação";
@ -364,19 +366,20 @@ namespace AgroBase
// lblKmh // lblKmh
// //
this.lblKmh.AutoSize = true; this.lblKmh.AutoSize = true;
this.lblKmh.Location = new System.Drawing.Point(221, 25); this.lblKmh.Location = new System.Drawing.Point(166, 20);
this.lblKmh.Margin = new System.Windows.Forms.Padding(2, 0, 2, 0);
this.lblKmh.Name = "lblKmh"; this.lblKmh.Name = "lblKmh";
this.lblKmh.Size = new System.Drawing.Size(122, 16); this.lblKmh.Size = new System.Drawing.Size(100, 13);
this.lblKmh.TabIndex = 23; this.lblKmh.TabIndex = 23;
this.lblKmh.Text = "Velocidade: 3 km/h"; this.lblKmh.Text = "Velocidade: 3 km/h";
// //
// trkKmh // trkKmh
// //
this.trkKmh.Location = new System.Drawing.Point(224, 46); this.trkKmh.Location = new System.Drawing.Point(168, 37);
this.trkKmh.Margin = new System.Windows.Forms.Padding(3, 2, 3, 2); this.trkKmh.Margin = new System.Windows.Forms.Padding(2, 2, 2, 2);
this.trkKmh.Maximum = 34; this.trkKmh.Maximum = 34;
this.trkKmh.Name = "trkKmh"; this.trkKmh.Name = "trkKmh";
this.trkKmh.Size = new System.Drawing.Size(211, 56); this.trkKmh.Size = new System.Drawing.Size(158, 45);
this.trkKmh.TabIndex = 22; this.trkKmh.TabIndex = 22;
this.trkKmh.TickFrequency = 2; this.trkKmh.TickFrequency = 2;
this.trkKmh.Value = 3; this.trkKmh.Value = 3;
@ -384,12 +387,12 @@ namespace AgroBase
// //
// trkRPM // trkRPM
// //
this.trkRPM.Location = new System.Drawing.Point(5, 46); this.trkRPM.Location = new System.Drawing.Point(4, 37);
this.trkRPM.Margin = new System.Windows.Forms.Padding(3, 2, 3, 2); this.trkRPM.Margin = new System.Windows.Forms.Padding(2, 2, 2, 2);
this.trkRPM.Maximum = 500; this.trkRPM.Maximum = 500;
this.trkRPM.Minimum = 5; this.trkRPM.Minimum = 5;
this.trkRPM.Name = "trkRPM"; this.trkRPM.Name = "trkRPM";
this.trkRPM.Size = new System.Drawing.Size(211, 56); this.trkRPM.Size = new System.Drawing.Size(158, 45);
this.trkRPM.TabIndex = 20; this.trkRPM.TabIndex = 20;
this.trkRPM.TickFrequency = 20; this.trkRPM.TickFrequency = 20;
this.trkRPM.Value = 5; this.trkRPM.Value = 5;
@ -398,19 +401,20 @@ namespace AgroBase
// lblRPM // lblRPM
// //
this.lblRPM.AutoSize = true; this.lblRPM.AutoSize = true;
this.lblRPM.Location = new System.Drawing.Point(3, 25); this.lblRPM.Location = new System.Drawing.Point(2, 20);
this.lblRPM.Margin = new System.Windows.Forms.Padding(2, 0, 2, 0);
this.lblRPM.Name = "lblRPM"; this.lblRPM.Name = "lblRPM";
this.lblRPM.Size = new System.Drawing.Size(50, 16); this.lblRPM.Size = new System.Drawing.Size(43, 13);
this.lblRPM.TabIndex = 21; this.lblRPM.TabIndex = 21;
this.lblRPM.Text = "RPM: 5"; this.lblRPM.Text = "RPM: 5";
// //
// tkbAngulo // tkbAngulo
// //
this.tkbAngulo.Location = new System.Drawing.Point(5, 117); this.tkbAngulo.Location = new System.Drawing.Point(4, 95);
this.tkbAngulo.Margin = new System.Windows.Forms.Padding(3, 2, 3, 2); this.tkbAngulo.Margin = new System.Windows.Forms.Padding(2, 2, 2, 2);
this.tkbAngulo.Maximum = 180; this.tkbAngulo.Maximum = 180;
this.tkbAngulo.Name = "tkbAngulo"; this.tkbAngulo.Name = "tkbAngulo";
this.tkbAngulo.Size = new System.Drawing.Size(419, 56); this.tkbAngulo.Size = new System.Drawing.Size(314, 45);
this.tkbAngulo.TabIndex = 17; this.tkbAngulo.TabIndex = 17;
this.tkbAngulo.TickFrequency = 5; this.tkbAngulo.TickFrequency = 5;
this.tkbAngulo.ValueChanged += new System.EventHandler(this.tkbRampa_ValueChanged); this.tkbAngulo.ValueChanged += new System.EventHandler(this.tkbRampa_ValueChanged);
@ -418,29 +422,31 @@ namespace AgroBase
// lblAngulo // lblAngulo
// //
this.lblAngulo.AutoSize = true; this.lblAngulo.AutoSize = true;
this.lblAngulo.Location = new System.Drawing.Point(3, 97); this.lblAngulo.Location = new System.Drawing.Point(2, 79);
this.lblAngulo.Margin = new System.Windows.Forms.Padding(2, 0, 2, 0);
this.lblAngulo.Name = "lblAngulo"; this.lblAngulo.Name = "lblAngulo";
this.lblAngulo.Size = new System.Drawing.Size(67, 16); this.lblAngulo.Size = new System.Drawing.Size(56, 13);
this.lblAngulo.TabIndex = 16; this.lblAngulo.TabIndex = 16;
this.lblAngulo.Text = "Angulo: 0º"; this.lblAngulo.Text = "Angulo: 0º";
// //
// lblVelocidade // lblVelocidade
// //
this.lblVelocidade.AutoSize = true; this.lblVelocidade.AutoSize = true;
this.lblVelocidade.Location = new System.Drawing.Point(3, 23); this.lblVelocidade.Location = new System.Drawing.Point(2, 19);
this.lblVelocidade.Margin = new System.Windows.Forms.Padding(2, 0, 2, 0);
this.lblVelocidade.Name = "lblVelocidade"; this.lblVelocidade.Name = "lblVelocidade";
this.lblVelocidade.Size = new System.Drawing.Size(102, 16); this.lblVelocidade.Size = new System.Drawing.Size(80, 13);
this.lblVelocidade.TabIndex = 15; this.lblVelocidade.TabIndex = 15;
this.lblVelocidade.Text = "Velocidade: 1%"; this.lblVelocidade.Text = "Velocidade: 1%";
// //
// tkbVelocidade // tkbVelocidade
// //
this.tkbVelocidade.Location = new System.Drawing.Point(5, 43); this.tkbVelocidade.Location = new System.Drawing.Point(4, 35);
this.tkbVelocidade.Margin = new System.Windows.Forms.Padding(3, 2, 3, 2); this.tkbVelocidade.Margin = new System.Windows.Forms.Padding(2, 2, 2, 2);
this.tkbVelocidade.Maximum = 100; this.tkbVelocidade.Maximum = 100;
this.tkbVelocidade.Minimum = 1; this.tkbVelocidade.Minimum = 1;
this.tkbVelocidade.Name = "tkbVelocidade"; this.tkbVelocidade.Name = "tkbVelocidade";
this.tkbVelocidade.Size = new System.Drawing.Size(419, 56); this.tkbVelocidade.Size = new System.Drawing.Size(314, 45);
this.tkbVelocidade.TabIndex = 14; this.tkbVelocidade.TabIndex = 14;
this.tkbVelocidade.TickFrequency = 5; this.tkbVelocidade.TickFrequency = 5;
this.tkbVelocidade.Value = 1; this.tkbVelocidade.Value = 1;
@ -448,10 +454,10 @@ namespace AgroBase
// //
// btnVer // btnVer
// //
this.btnVer.Location = new System.Drawing.Point(341, 25); this.btnVer.Location = new System.Drawing.Point(256, 20);
this.btnVer.Margin = new System.Windows.Forms.Padding(3, 2, 3, 2); this.btnVer.Margin = new System.Windows.Forms.Padding(2, 2, 2, 2);
this.btnVer.Name = "btnVer"; this.btnVer.Name = "btnVer";
this.btnVer.Size = new System.Drawing.Size(84, 25); this.btnVer.Size = new System.Drawing.Size(63, 20);
this.btnVer.TabIndex = 13; this.btnVer.TabIndex = 13;
this.btnVer.Text = "Ver"; this.btnVer.Text = "Ver";
this.btnVer.UseVisualStyleBackColor = true; this.btnVer.UseVisualStyleBackColor = true;
@ -459,10 +465,10 @@ namespace AgroBase
// //
// btnJoyAtt // btnJoyAtt
// //
this.btnJoyAtt.Location = new System.Drawing.Point(161, 25); this.btnJoyAtt.Location = new System.Drawing.Point(121, 20);
this.btnJoyAtt.Margin = new System.Windows.Forms.Padding(3, 2, 3, 2); this.btnJoyAtt.Margin = new System.Windows.Forms.Padding(2, 2, 2, 2);
this.btnJoyAtt.Name = "btnJoyAtt"; this.btnJoyAtt.Name = "btnJoyAtt";
this.btnJoyAtt.Size = new System.Drawing.Size(84, 25); this.btnJoyAtt.Size = new System.Drawing.Size(63, 20);
this.btnJoyAtt.TabIndex = 12; this.btnJoyAtt.TabIndex = 12;
this.btnJoyAtt.Text = "Atualizar"; this.btnJoyAtt.Text = "Atualizar";
this.btnJoyAtt.UseVisualStyleBackColor = true; this.btnJoyAtt.UseVisualStyleBackColor = true;
@ -470,10 +476,10 @@ namespace AgroBase
// //
// btnJoyEdt // btnJoyEdt
// //
this.btnJoyEdt.Location = new System.Drawing.Point(251, 25); this.btnJoyEdt.Location = new System.Drawing.Point(188, 20);
this.btnJoyEdt.Margin = new System.Windows.Forms.Padding(3, 2, 3, 2); this.btnJoyEdt.Margin = new System.Windows.Forms.Padding(2, 2, 2, 2);
this.btnJoyEdt.Name = "btnJoyEdt"; this.btnJoyEdt.Name = "btnJoyEdt";
this.btnJoyEdt.Size = new System.Drawing.Size(84, 25); this.btnJoyEdt.Size = new System.Drawing.Size(63, 20);
this.btnJoyEdt.TabIndex = 11; this.btnJoyEdt.TabIndex = 11;
this.btnJoyEdt.Text = "Editar"; this.btnJoyEdt.Text = "Editar";
this.btnJoyEdt.UseVisualStyleBackColor = true; this.btnJoyEdt.UseVisualStyleBackColor = true;
@ -483,10 +489,10 @@ namespace AgroBase
// //
this.cmbJoysticks.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList; this.cmbJoysticks.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList;
this.cmbJoysticks.FormattingEnabled = true; this.cmbJoysticks.FormattingEnabled = true;
this.cmbJoysticks.Location = new System.Drawing.Point(5, 26); this.cmbJoysticks.Location = new System.Drawing.Point(4, 21);
this.cmbJoysticks.Margin = new System.Windows.Forms.Padding(3, 2, 3, 2); this.cmbJoysticks.Margin = new System.Windows.Forms.Padding(2, 2, 2, 2);
this.cmbJoysticks.Name = "cmbJoysticks"; this.cmbJoysticks.Name = "cmbJoysticks";
this.cmbJoysticks.Size = new System.Drawing.Size(148, 24); this.cmbJoysticks.Size = new System.Drawing.Size(112, 21);
this.cmbJoysticks.TabIndex = 3; this.cmbJoysticks.TabIndex = 3;
// //
// timerDispositivos // timerDispositivos
@ -496,10 +502,10 @@ namespace AgroBase
// //
// btnDiagnosticos // btnDiagnosticos
// //
this.btnDiagnosticos.Location = new System.Drawing.Point(7, 8); this.btnDiagnosticos.Location = new System.Drawing.Point(5, 6);
this.btnDiagnosticos.Margin = new System.Windows.Forms.Padding(3, 2, 3, 2); this.btnDiagnosticos.Margin = new System.Windows.Forms.Padding(2, 2, 2, 2);
this.btnDiagnosticos.Name = "btnDiagnosticos"; this.btnDiagnosticos.Name = "btnDiagnosticos";
this.btnDiagnosticos.Size = new System.Drawing.Size(112, 25); this.btnDiagnosticos.Size = new System.Drawing.Size(84, 20);
this.btnDiagnosticos.TabIndex = 14; this.btnDiagnosticos.TabIndex = 14;
this.btnDiagnosticos.Text = "Diagnósticos"; this.btnDiagnosticos.Text = "Diagnósticos";
this.btnDiagnosticos.UseVisualStyleBackColor = true; this.btnDiagnosticos.UseVisualStyleBackColor = true;
@ -507,10 +513,10 @@ namespace AgroBase
// //
// btnAcompanhamento // btnAcompanhamento
// //
this.btnAcompanhamento.Location = new System.Drawing.Point(7, 39); this.btnAcompanhamento.Location = new System.Drawing.Point(5, 32);
this.btnAcompanhamento.Margin = new System.Windows.Forms.Padding(3, 2, 3, 2); this.btnAcompanhamento.Margin = new System.Windows.Forms.Padding(2, 2, 2, 2);
this.btnAcompanhamento.Name = "btnAcompanhamento"; this.btnAcompanhamento.Name = "btnAcompanhamento";
this.btnAcompanhamento.Size = new System.Drawing.Size(112, 25); this.btnAcompanhamento.Size = new System.Drawing.Size(84, 20);
this.btnAcompanhamento.TabIndex = 15; this.btnAcompanhamento.TabIndex = 15;
this.btnAcompanhamento.Text = "Plotagem"; this.btnAcompanhamento.Text = "Plotagem";
this.btnAcompanhamento.UseVisualStyleBackColor = true; this.btnAcompanhamento.UseVisualStyleBackColor = true;
@ -518,10 +524,10 @@ namespace AgroBase
// //
// btnAtuCamera // btnAtuCamera
// //
this.btnAtuCamera.Location = new System.Drawing.Point(7, 69); this.btnAtuCamera.Location = new System.Drawing.Point(5, 56);
this.btnAtuCamera.Margin = new System.Windows.Forms.Padding(3, 2, 3, 2); this.btnAtuCamera.Margin = new System.Windows.Forms.Padding(2, 2, 2, 2);
this.btnAtuCamera.Name = "btnAtuCamera"; this.btnAtuCamera.Name = "btnAtuCamera";
this.btnAtuCamera.Size = new System.Drawing.Size(112, 25); this.btnAtuCamera.Size = new System.Drawing.Size(84, 20);
this.btnAtuCamera.TabIndex = 16; this.btnAtuCamera.TabIndex = 16;
this.btnAtuCamera.Text = "Ver solo"; this.btnAtuCamera.Text = "Ver solo";
this.btnAtuCamera.UseVisualStyleBackColor = true; this.btnAtuCamera.UseVisualStyleBackColor = true;
@ -529,10 +535,10 @@ namespace AgroBase
// //
// btnMapas // btnMapas
// //
this.btnMapas.Location = new System.Drawing.Point(7, 132); this.btnMapas.Location = new System.Drawing.Point(5, 107);
this.btnMapas.Margin = new System.Windows.Forms.Padding(3, 2, 3, 2); this.btnMapas.Margin = new System.Windows.Forms.Padding(2, 2, 2, 2);
this.btnMapas.Name = "btnMapas"; this.btnMapas.Name = "btnMapas";
this.btnMapas.Size = new System.Drawing.Size(112, 25); this.btnMapas.Size = new System.Drawing.Size(84, 20);
this.btnMapas.TabIndex = 17; this.btnMapas.TabIndex = 17;
this.btnMapas.Text = "Mapas"; this.btnMapas.Text = "Mapas";
this.btnMapas.UseVisualStyleBackColor = true; this.btnMapas.UseVisualStyleBackColor = true;
@ -540,10 +546,10 @@ namespace AgroBase
// //
// btnSenCamera // btnSenCamera
// //
this.btnSenCamera.Location = new System.Drawing.Point(7, 101); this.btnSenCamera.Location = new System.Drawing.Point(5, 82);
this.btnSenCamera.Margin = new System.Windows.Forms.Padding(3, 2, 3, 2); this.btnSenCamera.Margin = new System.Windows.Forms.Padding(2, 2, 2, 2);
this.btnSenCamera.Name = "btnSenCamera"; this.btnSenCamera.Name = "btnSenCamera";
this.btnSenCamera.Size = new System.Drawing.Size(112, 25); this.btnSenCamera.Size = new System.Drawing.Size(84, 20);
this.btnSenCamera.TabIndex = 18; this.btnSenCamera.TabIndex = 18;
this.btnSenCamera.Text = "Ver caminho"; this.btnSenCamera.Text = "Ver caminho";
this.btnSenCamera.UseVisualStyleBackColor = true; this.btnSenCamera.UseVisualStyleBackColor = true;
@ -555,11 +561,11 @@ namespace AgroBase
this.gpbJoystick.Controls.Add(this.btnJoyEdt); this.gpbJoystick.Controls.Add(this.btnJoyEdt);
this.gpbJoystick.Controls.Add(this.btnJoyAtt); this.gpbJoystick.Controls.Add(this.btnJoyAtt);
this.gpbJoystick.Controls.Add(this.btnVer); this.gpbJoystick.Controls.Add(this.btnVer);
this.gpbJoystick.Location = new System.Drawing.Point(12, 12); this.gpbJoystick.Location = new System.Drawing.Point(9, 10);
this.gpbJoystick.Margin = new System.Windows.Forms.Padding(3, 2, 3, 2); this.gpbJoystick.Margin = new System.Windows.Forms.Padding(2, 2, 2, 2);
this.gpbJoystick.Name = "gpbJoystick"; this.gpbJoystick.Name = "gpbJoystick";
this.gpbJoystick.Padding = new System.Windows.Forms.Padding(3, 2, 3, 2); this.gpbJoystick.Padding = new System.Windows.Forms.Padding(2, 2, 2, 2);
this.gpbJoystick.Size = new System.Drawing.Size(440, 60); this.gpbJoystick.Size = new System.Drawing.Size(330, 49);
this.gpbJoystick.TabIndex = 18; this.gpbJoystick.TabIndex = 18;
this.gpbJoystick.TabStop = false; this.gpbJoystick.TabStop = false;
this.gpbJoystick.Text = "Joystick"; this.gpbJoystick.Text = "Joystick";
@ -570,11 +576,11 @@ namespace AgroBase
this.gpbControleDirecional.Controls.Add(this.tkbAngulo); this.gpbControleDirecional.Controls.Add(this.tkbAngulo);
this.gpbControleDirecional.Controls.Add(this.lblAngulo); this.gpbControleDirecional.Controls.Add(this.lblAngulo);
this.gpbControleDirecional.Controls.Add(this.lblVelocidade); this.gpbControleDirecional.Controls.Add(this.lblVelocidade);
this.gpbControleDirecional.Location = new System.Drawing.Point(12, 190); this.gpbControleDirecional.Location = new System.Drawing.Point(9, 154);
this.gpbControleDirecional.Margin = new System.Windows.Forms.Padding(3, 2, 3, 2); this.gpbControleDirecional.Margin = new System.Windows.Forms.Padding(2, 2, 2, 2);
this.gpbControleDirecional.Name = "gpbControleDirecional"; this.gpbControleDirecional.Name = "gpbControleDirecional";
this.gpbControleDirecional.Padding = new System.Windows.Forms.Padding(3, 2, 3, 2); this.gpbControleDirecional.Padding = new System.Windows.Forms.Padding(2, 2, 2, 2);
this.gpbControleDirecional.Size = new System.Drawing.Size(440, 196); this.gpbControleDirecional.Size = new System.Drawing.Size(330, 159);
this.gpbControleDirecional.TabIndex = 19; this.gpbControleDirecional.TabIndex = 19;
this.gpbControleDirecional.TabStop = false; this.gpbControleDirecional.TabStop = false;
this.gpbControleDirecional.Text = "Controle Direcional"; this.gpbControleDirecional.Text = "Controle Direcional";
@ -582,11 +588,11 @@ namespace AgroBase
// gpbAtalhos // gpbAtalhos
// //
this.gpbAtalhos.Controls.Add(this.pnlAtalhos); this.gpbAtalhos.Controls.Add(this.pnlAtalhos);
this.gpbAtalhos.Location = new System.Drawing.Point(459, 12); this.gpbAtalhos.Location = new System.Drawing.Point(344, 10);
this.gpbAtalhos.Margin = new System.Windows.Forms.Padding(3, 2, 3, 2); this.gpbAtalhos.Margin = new System.Windows.Forms.Padding(2, 2, 2, 2);
this.gpbAtalhos.Name = "gpbAtalhos"; this.gpbAtalhos.Name = "gpbAtalhos";
this.gpbAtalhos.Padding = new System.Windows.Forms.Padding(3, 2, 3, 2); this.gpbAtalhos.Padding = new System.Windows.Forms.Padding(2, 2, 2, 2);
this.gpbAtalhos.Size = new System.Drawing.Size(162, 374); this.gpbAtalhos.Size = new System.Drawing.Size(122, 304);
this.gpbAtalhos.TabIndex = 20; this.gpbAtalhos.TabIndex = 20;
this.gpbAtalhos.TabStop = false; this.gpbAtalhos.TabStop = false;
this.gpbAtalhos.Text = "Atalhos"; this.gpbAtalhos.Text = "Atalhos";
@ -609,17 +615,18 @@ namespace AgroBase
this.pnlAtalhos.Controls.Add(this.btnSonar); this.pnlAtalhos.Controls.Add(this.btnSonar);
this.pnlAtalhos.Controls.Add(this.btnContornos); this.pnlAtalhos.Controls.Add(this.btnContornos);
this.pnlAtalhos.Controls.Add(this.btnAtuCalibragem); this.pnlAtalhos.Controls.Add(this.btnAtuCalibragem);
this.pnlAtalhos.Location = new System.Drawing.Point(6, 17); this.pnlAtalhos.Location = new System.Drawing.Point(4, 14);
this.pnlAtalhos.Margin = new System.Windows.Forms.Padding(2, 2, 2, 2);
this.pnlAtalhos.Name = "pnlAtalhos"; this.pnlAtalhos.Name = "pnlAtalhos";
this.pnlAtalhos.Size = new System.Drawing.Size(150, 352); this.pnlAtalhos.Size = new System.Drawing.Size(112, 286);
this.pnlAtalhos.TabIndex = 0; this.pnlAtalhos.TabIndex = 0;
// //
// btnBLD300R // btnBLD300R
// //
this.btnBLD300R.Location = new System.Drawing.Point(7, 422); this.btnBLD300R.Location = new System.Drawing.Point(5, 343);
this.btnBLD300R.Margin = new System.Windows.Forms.Padding(3, 2, 3, 2); this.btnBLD300R.Margin = new System.Windows.Forms.Padding(2, 2, 2, 2);
this.btnBLD300R.Name = "btnBLD300R"; this.btnBLD300R.Name = "btnBLD300R";
this.btnBLD300R.Size = new System.Drawing.Size(112, 25); this.btnBLD300R.Size = new System.Drawing.Size(84, 20);
this.btnBLD300R.TabIndex = 28; this.btnBLD300R.TabIndex = 28;
this.btnBLD300R.Text = "BLD300R"; this.btnBLD300R.Text = "BLD300R";
this.btnBLD300R.UseVisualStyleBackColor = true; this.btnBLD300R.UseVisualStyleBackColor = true;
@ -627,10 +634,10 @@ namespace AgroBase
// //
// btnWT901C // btnWT901C
// //
this.btnWT901C.Location = new System.Drawing.Point(7, 393); this.btnWT901C.Location = new System.Drawing.Point(5, 319);
this.btnWT901C.Margin = new System.Windows.Forms.Padding(3, 2, 3, 2); this.btnWT901C.Margin = new System.Windows.Forms.Padding(2, 2, 2, 2);
this.btnWT901C.Name = "btnWT901C"; this.btnWT901C.Name = "btnWT901C";
this.btnWT901C.Size = new System.Drawing.Size(112, 25); this.btnWT901C.Size = new System.Drawing.Size(84, 20);
this.btnWT901C.TabIndex = 27; this.btnWT901C.TabIndex = 27;
this.btnWT901C.Text = "WT901C485"; this.btnWT901C.Text = "WT901C485";
this.btnWT901C.UseVisualStyleBackColor = true; this.btnWT901C.UseVisualStyleBackColor = true;
@ -638,10 +645,10 @@ namespace AgroBase
// //
// btnLoRaConfig // btnLoRaConfig
// //
this.btnLoRaConfig.Location = new System.Drawing.Point(7, 364); this.btnLoRaConfig.Location = new System.Drawing.Point(5, 296);
this.btnLoRaConfig.Margin = new System.Windows.Forms.Padding(3, 2, 3, 2); this.btnLoRaConfig.Margin = new System.Windows.Forms.Padding(2, 2, 2, 2);
this.btnLoRaConfig.Name = "btnLoRaConfig"; this.btnLoRaConfig.Name = "btnLoRaConfig";
this.btnLoRaConfig.Size = new System.Drawing.Size(112, 25); this.btnLoRaConfig.Size = new System.Drawing.Size(84, 20);
this.btnLoRaConfig.TabIndex = 26; this.btnLoRaConfig.TabIndex = 26;
this.btnLoRaConfig.Text = "Comunicação"; this.btnLoRaConfig.Text = "Comunicação";
this.btnLoRaConfig.UseVisualStyleBackColor = true; this.btnLoRaConfig.UseVisualStyleBackColor = true;
@ -649,10 +656,10 @@ namespace AgroBase
// //
// btnResultados // btnResultados
// //
this.btnResultados.Location = new System.Drawing.Point(7, 335); this.btnResultados.Location = new System.Drawing.Point(5, 272);
this.btnResultados.Margin = new System.Windows.Forms.Padding(3, 2, 3, 2); this.btnResultados.Margin = new System.Windows.Forms.Padding(2, 2, 2, 2);
this.btnResultados.Name = "btnResultados"; this.btnResultados.Name = "btnResultados";
this.btnResultados.Size = new System.Drawing.Size(112, 25); this.btnResultados.Size = new System.Drawing.Size(84, 20);
this.btnResultados.TabIndex = 25; this.btnResultados.TabIndex = 25;
this.btnResultados.Text = "Resultados"; this.btnResultados.Text = "Resultados";
this.btnResultados.UseVisualStyleBackColor = true; this.btnResultados.UseVisualStyleBackColor = true;
@ -660,10 +667,10 @@ namespace AgroBase
// //
// btnKinect // btnKinect
// //
this.btnKinect.Location = new System.Drawing.Point(7, 306); this.btnKinect.Location = new System.Drawing.Point(5, 249);
this.btnKinect.Margin = new System.Windows.Forms.Padding(3, 2, 3, 2); this.btnKinect.Margin = new System.Windows.Forms.Padding(2, 2, 2, 2);
this.btnKinect.Name = "btnKinect"; this.btnKinect.Name = "btnKinect";
this.btnKinect.Size = new System.Drawing.Size(112, 25); this.btnKinect.Size = new System.Drawing.Size(84, 20);
this.btnKinect.TabIndex = 24; this.btnKinect.TabIndex = 24;
this.btnKinect.Text = "Kinect"; this.btnKinect.Text = "Kinect";
this.btnKinect.UseVisualStyleBackColor = true; this.btnKinect.UseVisualStyleBackColor = true;
@ -671,10 +678,10 @@ namespace AgroBase
// //
// btnSimulador // btnSimulador
// //
this.btnSimulador.Location = new System.Drawing.Point(7, 277); this.btnSimulador.Location = new System.Drawing.Point(5, 225);
this.btnSimulador.Margin = new System.Windows.Forms.Padding(3, 2, 3, 2); this.btnSimulador.Margin = new System.Windows.Forms.Padding(2, 2, 2, 2);
this.btnSimulador.Name = "btnSimulador"; this.btnSimulador.Name = "btnSimulador";
this.btnSimulador.Size = new System.Drawing.Size(112, 25); this.btnSimulador.Size = new System.Drawing.Size(84, 20);
this.btnSimulador.TabIndex = 23; this.btnSimulador.TabIndex = 23;
this.btnSimulador.Text = "Simulador"; this.btnSimulador.Text = "Simulador";
this.btnSimulador.UseVisualStyleBackColor = true; this.btnSimulador.UseVisualStyleBackColor = true;
@ -682,10 +689,10 @@ namespace AgroBase
// //
// btnGPS // btnGPS
// //
this.btnGPS.Location = new System.Drawing.Point(7, 162); this.btnGPS.Location = new System.Drawing.Point(5, 132);
this.btnGPS.Margin = new System.Windows.Forms.Padding(3, 2, 3, 2); this.btnGPS.Margin = new System.Windows.Forms.Padding(2, 2, 2, 2);
this.btnGPS.Name = "btnGPS"; this.btnGPS.Name = "btnGPS";
this.btnGPS.Size = new System.Drawing.Size(112, 25); this.btnGPS.Size = new System.Drawing.Size(84, 20);
this.btnGPS.TabIndex = 19; this.btnGPS.TabIndex = 19;
this.btnGPS.Text = "GPS"; this.btnGPS.Text = "GPS";
this.btnGPS.UseVisualStyleBackColor = true; this.btnGPS.UseVisualStyleBackColor = true;
@ -693,10 +700,10 @@ namespace AgroBase
// //
// btnSonar // btnSonar
// //
this.btnSonar.Location = new System.Drawing.Point(7, 249); this.btnSonar.Location = new System.Drawing.Point(5, 202);
this.btnSonar.Margin = new System.Windows.Forms.Padding(3, 2, 3, 2); this.btnSonar.Margin = new System.Windows.Forms.Padding(2, 2, 2, 2);
this.btnSonar.Name = "btnSonar"; this.btnSonar.Name = "btnSonar";
this.btnSonar.Size = new System.Drawing.Size(112, 25); this.btnSonar.Size = new System.Drawing.Size(84, 20);
this.btnSonar.TabIndex = 22; this.btnSonar.TabIndex = 22;
this.btnSonar.Text = "Sonar"; this.btnSonar.Text = "Sonar";
this.btnSonar.UseVisualStyleBackColor = true; this.btnSonar.UseVisualStyleBackColor = true;
@ -704,10 +711,10 @@ namespace AgroBase
// //
// btnContornos // btnContornos
// //
this.btnContornos.Location = new System.Drawing.Point(7, 191); this.btnContornos.Location = new System.Drawing.Point(5, 155);
this.btnContornos.Margin = new System.Windows.Forms.Padding(3, 2, 3, 2); this.btnContornos.Margin = new System.Windows.Forms.Padding(2, 2, 2, 2);
this.btnContornos.Name = "btnContornos"; this.btnContornos.Name = "btnContornos";
this.btnContornos.Size = new System.Drawing.Size(112, 25); this.btnContornos.Size = new System.Drawing.Size(84, 20);
this.btnContornos.TabIndex = 20; this.btnContornos.TabIndex = 20;
this.btnContornos.Text = "Contornos"; this.btnContornos.Text = "Contornos";
this.btnContornos.UseVisualStyleBackColor = true; this.btnContornos.UseVisualStyleBackColor = true;
@ -715,10 +722,10 @@ namespace AgroBase
// //
// btnAtuCalibragem // btnAtuCalibragem
// //
this.btnAtuCalibragem.Location = new System.Drawing.Point(7, 220); this.btnAtuCalibragem.Location = new System.Drawing.Point(5, 179);
this.btnAtuCalibragem.Margin = new System.Windows.Forms.Padding(3, 2, 3, 2); this.btnAtuCalibragem.Margin = new System.Windows.Forms.Padding(2, 2, 2, 2);
this.btnAtuCalibragem.Name = "btnAtuCalibragem"; this.btnAtuCalibragem.Name = "btnAtuCalibragem";
this.btnAtuCalibragem.Size = new System.Drawing.Size(112, 25); this.btnAtuCalibragem.Size = new System.Drawing.Size(84, 20);
this.btnAtuCalibragem.TabIndex = 21; this.btnAtuCalibragem.TabIndex = 21;
this.btnAtuCalibragem.Text = "Atuador"; this.btnAtuCalibragem.Text = "Atuador";
this.btnAtuCalibragem.UseVisualStyleBackColor = true; this.btnAtuCalibragem.UseVisualStyleBackColor = true;
@ -732,21 +739,21 @@ namespace AgroBase
this.gpbOperacao.Controls.Add(this.btnIniciarOperacao); this.gpbOperacao.Controls.Add(this.btnIniciarOperacao);
this.gpbOperacao.Controls.Add(this.lblModoOperacao); this.gpbOperacao.Controls.Add(this.lblModoOperacao);
this.gpbOperacao.Controls.Add(this.cmbModoOperacao); this.gpbOperacao.Controls.Add(this.cmbModoOperacao);
this.gpbOperacao.Location = new System.Drawing.Point(12, 388); this.gpbOperacao.Location = new System.Drawing.Point(9, 315);
this.gpbOperacao.Margin = new System.Windows.Forms.Padding(3, 2, 3, 2); this.gpbOperacao.Margin = new System.Windows.Forms.Padding(2, 2, 2, 2);
this.gpbOperacao.Name = "gpbOperacao"; this.gpbOperacao.Name = "gpbOperacao";
this.gpbOperacao.Padding = new System.Windows.Forms.Padding(3, 2, 3, 2); this.gpbOperacao.Padding = new System.Windows.Forms.Padding(2, 2, 2, 2);
this.gpbOperacao.Size = new System.Drawing.Size(609, 119); this.gpbOperacao.Size = new System.Drawing.Size(457, 97);
this.gpbOperacao.TabIndex = 21; this.gpbOperacao.TabIndex = 21;
this.gpbOperacao.TabStop = false; this.gpbOperacao.TabStop = false;
this.gpbOperacao.Text = "Operação"; this.gpbOperacao.Text = "Operação";
// //
// btnIHM // btnIHM
// //
this.btnIHM.Location = new System.Drawing.Point(395, 72); this.btnIHM.Location = new System.Drawing.Point(296, 58);
this.btnIHM.Margin = new System.Windows.Forms.Padding(3, 2, 3, 2); this.btnIHM.Margin = new System.Windows.Forms.Padding(2, 2, 2, 2);
this.btnIHM.Name = "btnIHM"; this.btnIHM.Name = "btnIHM";
this.btnIHM.Size = new System.Drawing.Size(163, 41); this.btnIHM.Size = new System.Drawing.Size(122, 33);
this.btnIHM.TabIndex = 16; this.btnIHM.TabIndex = 16;
this.btnIHM.Text = "IHM"; this.btnIHM.Text = "IHM";
this.btnIHM.UseVisualStyleBackColor = true; this.btnIHM.UseVisualStyleBackColor = true;
@ -754,10 +761,10 @@ namespace AgroBase
// //
// btnConfigurarOperacao // btnConfigurarOperacao
// //
this.btnConfigurarOperacao.Location = new System.Drawing.Point(161, 72); this.btnConfigurarOperacao.Location = new System.Drawing.Point(121, 58);
this.btnConfigurarOperacao.Margin = new System.Windows.Forms.Padding(3, 2, 3, 2); this.btnConfigurarOperacao.Margin = new System.Windows.Forms.Padding(2, 2, 2, 2);
this.btnConfigurarOperacao.Name = "btnConfigurarOperacao"; this.btnConfigurarOperacao.Name = "btnConfigurarOperacao";
this.btnConfigurarOperacao.Size = new System.Drawing.Size(163, 41); this.btnConfigurarOperacao.Size = new System.Drawing.Size(122, 33);
this.btnConfigurarOperacao.TabIndex = 15; this.btnConfigurarOperacao.TabIndex = 15;
this.btnConfigurarOperacao.Text = "Configurar Operação"; this.btnConfigurarOperacao.Text = "Configurar Operação";
this.btnConfigurarOperacao.UseVisualStyleBackColor = true; this.btnConfigurarOperacao.UseVisualStyleBackColor = true;
@ -766,20 +773,20 @@ namespace AgroBase
// chbDebugMode // chbDebugMode
// //
this.chbDebugMode.AutoSize = true; this.chbDebugMode.AutoSize = true;
this.chbDebugMode.Location = new System.Drawing.Point(179, 43); this.chbDebugMode.Location = new System.Drawing.Point(134, 35);
this.chbDebugMode.Margin = new System.Windows.Forms.Padding(3, 2, 3, 2); this.chbDebugMode.Margin = new System.Windows.Forms.Padding(2, 2, 2, 2);
this.chbDebugMode.Name = "chbDebugMode"; this.chbDebugMode.Name = "chbDebugMode";
this.chbDebugMode.Size = new System.Drawing.Size(135, 20); this.chbDebugMode.Size = new System.Drawing.Size(109, 17);
this.chbDebugMode.TabIndex = 14; this.chbDebugMode.TabIndex = 14;
this.chbDebugMode.Text = "Modo Depuração"; this.chbDebugMode.Text = "Modo Depuração";
this.chbDebugMode.UseVisualStyleBackColor = true; this.chbDebugMode.UseVisualStyleBackColor = true;
// //
// btnIniciarOperacao // btnIniciarOperacao
// //
this.btnIniciarOperacao.Location = new System.Drawing.Point(9, 72); this.btnIniciarOperacao.Location = new System.Drawing.Point(7, 58);
this.btnIniciarOperacao.Margin = new System.Windows.Forms.Padding(3, 2, 3, 2); this.btnIniciarOperacao.Margin = new System.Windows.Forms.Padding(2, 2, 2, 2);
this.btnIniciarOperacao.Name = "btnIniciarOperacao"; this.btnIniciarOperacao.Name = "btnIniciarOperacao";
this.btnIniciarOperacao.Size = new System.Drawing.Size(145, 41); this.btnIniciarOperacao.Size = new System.Drawing.Size(109, 33);
this.btnIniciarOperacao.TabIndex = 13; this.btnIniciarOperacao.TabIndex = 13;
this.btnIniciarOperacao.Text = "Iniciar Operação"; this.btnIniciarOperacao.Text = "Iniciar Operação";
this.btnIniciarOperacao.UseVisualStyleBackColor = true; this.btnIniciarOperacao.UseVisualStyleBackColor = true;
@ -788,9 +795,10 @@ namespace AgroBase
// lblModoOperacao // lblModoOperacao
// //
this.lblModoOperacao.AutoSize = true; this.lblModoOperacao.AutoSize = true;
this.lblModoOperacao.Location = new System.Drawing.Point(5, 21); this.lblModoOperacao.Location = new System.Drawing.Point(4, 17);
this.lblModoOperacao.Margin = new System.Windows.Forms.Padding(2, 0, 2, 0);
this.lblModoOperacao.Name = "lblModoOperacao"; this.lblModoOperacao.Name = "lblModoOperacao";
this.lblModoOperacao.Size = new System.Drawing.Size(42, 16); this.lblModoOperacao.Size = new System.Drawing.Size(34, 13);
this.lblModoOperacao.TabIndex = 13; this.lblModoOperacao.TabIndex = 13;
this.lblModoOperacao.Text = "Modo"; this.lblModoOperacao.Text = "Modo";
// //
@ -798,18 +806,18 @@ namespace AgroBase
// //
this.cmbModoOperacao.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList; this.cmbModoOperacao.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList;
this.cmbModoOperacao.FormattingEnabled = true; this.cmbModoOperacao.FormattingEnabled = true;
this.cmbModoOperacao.Location = new System.Drawing.Point(9, 41); this.cmbModoOperacao.Location = new System.Drawing.Point(7, 33);
this.cmbModoOperacao.Margin = new System.Windows.Forms.Padding(3, 2, 3, 2); this.cmbModoOperacao.Margin = new System.Windows.Forms.Padding(2, 2, 2, 2);
this.cmbModoOperacao.Name = "cmbModoOperacao"; this.cmbModoOperacao.Name = "cmbModoOperacao";
this.cmbModoOperacao.Size = new System.Drawing.Size(145, 24); this.cmbModoOperacao.Size = new System.Drawing.Size(110, 21);
this.cmbModoOperacao.TabIndex = 13; this.cmbModoOperacao.TabIndex = 13;
this.cmbModoOperacao.SelectedIndexChanged += new System.EventHandler(this.cmbModoOperacao_SelectedIndexChanged); this.cmbModoOperacao.SelectedIndexChanged += new System.EventHandler(this.cmbModoOperacao_SelectedIndexChanged);
// //
// frmPrincipal // frmPrincipal
// //
this.AutoScaleDimensions = new System.Drawing.SizeF(8F, 16F); this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F);
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font; this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
this.ClientSize = new System.Drawing.Size(1371, 750); this.ClientSize = new System.Drawing.Size(1028, 609);
this.Controls.Add(this.gpbOperacao); this.Controls.Add(this.gpbOperacao);
this.Controls.Add(this.gpbAtalhos); this.Controls.Add(this.gpbAtalhos);
this.Controls.Add(this.gpbControleDirecional); this.Controls.Add(this.gpbControleDirecional);
@ -817,7 +825,7 @@ namespace AgroBase
this.Controls.Add(this.gpbMovimentacao); this.Controls.Add(this.gpbMovimentacao);
this.Controls.Add(this.generalStrip); this.Controls.Add(this.generalStrip);
this.Controls.Add(this.gpbAcoes); this.Controls.Add(this.gpbAcoes);
this.Margin = new System.Windows.Forms.Padding(3, 2, 3, 2); this.Margin = new System.Windows.Forms.Padding(2, 2, 2, 2);
this.Name = "frmPrincipal"; this.Name = "frmPrincipal";
this.StartPosition = System.Windows.Forms.FormStartPosition.CenterScreen; this.StartPosition = System.Windows.Forms.FormStartPosition.CenterScreen;
this.Text = "Agro Base"; this.Text = "Agro Base";

View File

@ -169,15 +169,16 @@ namespace AgroBase
lstDisponiveis.Items.Clear(); lstDisponiveis.Items.Clear();
lstDisponiveis.Items.AddRange( lstDisponiveis.Items.AddRange(
SerialService.DispositivosMapeados SerialService.DispositivosMapeados
.GroupBy(x => x.Dispositivo)
.Select(x => new ListViewItem() .Select(x => new ListViewItem()
{ {
Text = x.PortaCOM + " - " + Enum.GetName(typeof(T_Code), x.Dispositivo) + " v" + x.Versao + " (" + x.Mod_ID + ") - " + Text = x.FirstOrDefault().PortaCOM + " - " + Enum.GetName(typeof(T_Code), x.Key) + " v" + x.FirstOrDefault().Versao + " (" + string.Join(", ", x.Select(y => y.Mod_ID)) + ") - " +
(x.Dispositivo == T_Code.Gps ? (GPSService.Iniciado ? "Conectado" : "Desconectado") : (x.FirstOrDefault().Dispositivo == T_Code.Gps ? (GPSService.Iniciado ? "Conectado" : "Desconectado") :
x.Dispositivo == T_Code.Pzm ? (PZEMService.Iniciado ? "Conectado" : "Desconectado") : x.FirstOrDefault().Dispositivo == T_Code.Pzm ? (PZEMService.Iniciado ? "Conectado" : "Desconectado") :
x.Dispositivo == T_Code.Lra ? (LoRaService.Iniciado ? "Conectado" : "Desconectado") : x.FirstOrDefault().Dispositivo == T_Code.Lra ? (LoRaService.Iniciado ? "Conectado" : "Desconectado") :
x.Dispositivo == T_Code.Wit ? (WT901CService.Iniciado ? "Conectado" : "Desconectado") : x.FirstOrDefault().Dispositivo == T_Code.Wit ? (WT901CService.Iniciado ? "Conectado" : "Desconectado") :
x.Dispositivo == T_Code.Bld ? (BLD300RService.Iniciado ? "Conectado" : "Desconectado") : x.FirstOrDefault().Dispositivo == T_Code.Bld ? (BLD300RService.Iniciado ? "Conectado" : "Desconectado") :
(Variaveis.DispositivosConectados.FirstOrDefault(y => y.PortaCOM() == x.PortaCOM)?.StatusPorta() ?? "Desconectado")) (Variaveis.DispositivosConectados.FirstOrDefault(y => y.PortaCOM() == x.FirstOrDefault().PortaCOM)?.StatusPorta() ?? "Desconectado"))
}).ToArray() }).ToArray()
); );
if (SerialService.DispositivosMapeados.Count == 0) if (SerialService.DispositivosMapeados.Count == 0)
@ -202,6 +203,11 @@ namespace AgroBase
trkRPM.Maximum = Convert.ToInt32(Variaveis.OperacaoEmAndamento.DispMvd.Dados.Modulos.Average(x => x.MovMotor.RPM_Max)); trkRPM.Maximum = Convert.ToInt32(Variaveis.OperacaoEmAndamento.DispMvd.Dados.Modulos.Average(x => x.MovMotor.RPM_Max));
trkKmh.Maximum = Convert.ToInt32(MovimentacaoModel.CalculaVelocidadeRPM(trkRPM.Maximum)); trkKmh.Maximum = Convert.ToInt32(MovimentacaoModel.CalculaVelocidadeRPM(trkRPM.Maximum));
} }
Variaveis.DispositivosConectados.ForEach(x =>
{
x.AcaoConexao();
});
} }
private void frmPrincipal_FormClosed(object sender, FormClosedEventArgs e) private void frmPrincipal_FormClosed(object sender, FormClosedEventArgs e)
@ -264,14 +270,28 @@ namespace AgroBase
private void trkRPM_ValueChanged(object sender, EventArgs e) private void trkRPM_ValueChanged(object sender, EventArgs e)
{ {
int RPM = ((TrackBar)sender).Value; try
AtualizaRPM(RPM); {
int RPM = ((TrackBar)sender).Value;
AtualizaRPM(RPM);
}
catch (Exception ex)
{
}
} }
private void trkKmh_ValueChanged(object sender, EventArgs e) private void trkKmh_ValueChanged(object sender, EventArgs e)
{ {
int RPM = Convert.ToInt32(MovimentacaoModel.CalculaRPMVelocidade(((TrackBar)sender).Value)); try
AtualizaRPM(RPM); {
int RPM = Convert.ToInt32(MovimentacaoModel.CalculaRPMVelocidade(((TrackBar)sender).Value));
AtualizaRPM(RPM);
}
catch (Exception ex)
{
}
} }

View File

@ -120,6 +120,9 @@
<metadata name="erroStrip.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"> <metadata name="erroStrip.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
<value>11, 10</value> <value>11, 10</value>
</metadata> </metadata>
<metadata name="erroStrip.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
<value>11, 10</value>
</metadata>
<metadata name="generalStrip.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"> <metadata name="generalStrip.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
<value>133, 16</value> <value>133, 16</value>
</metadata> </metadata>

View File

@ -27,7 +27,8 @@ namespace AgroBase.Models
EsquerdaBaixo, EsquerdaBaixo,
EsquerdaCima, EsquerdaCima,
DireitaBaixo, DireitaBaixo,
DireitaCima DireitaCima,
EmFreio
} }
public enum Sentido public enum Sentido
@ -90,6 +91,8 @@ namespace AgroBase.Models
sLED = 445, sLED = 445,
sSNR = 532, sSNR = 532,
sBLD = 544, sBLD = 544,
sCMD = 878,
sMVD = 477,
} }
public enum BotoesJoystick public enum BotoesJoystick

View File

@ -30,6 +30,7 @@ namespace AgroBase
new DeParaComandos() { key = Keys.D, Dispositivo = T_Code.Dir, botaoJoy = BotoesJoystick.AEDireita, PararAoSoltar = true }, new DeParaComandos() { key = Keys.D, Dispositivo = T_Code.Dir, botaoJoy = BotoesJoystick.AEDireita, PararAoSoltar = true },
new DeParaComandos() { key = Keys.Up, Dispositivo = T_Code.Mov, botaoJoy = BotoesJoystick.A, PararAoSoltar = true }, new DeParaComandos() { key = Keys.Up, Dispositivo = T_Code.Mov, botaoJoy = BotoesJoystick.A, PararAoSoltar = true },
new DeParaComandos() { key = Keys.Down, Dispositivo = T_Code.Mov, botaoJoy = BotoesJoystick.X, PararAoSoltar = true }, new DeParaComandos() { key = Keys.Down, Dispositivo = T_Code.Mov, botaoJoy = BotoesJoystick.X, PararAoSoltar = true },
new DeParaComandos() { key = Keys.Space, Dispositivo = T_Code.Mov, botaoJoy = BotoesJoystick.B, PararAoSoltar = true },
new DeParaComandos() { key = Keys.Subtract, Dispositivo = T_Code.Mov, botaoJoy = BotoesJoystick.L1, PararAoSoltar = false }, new DeParaComandos() { key = Keys.Subtract, Dispositivo = T_Code.Mov, botaoJoy = BotoesJoystick.L1, PararAoSoltar = false },
new DeParaComandos() { key = Keys.Add, Dispositivo = T_Code.Mov, botaoJoy = BotoesJoystick.R1, PararAoSoltar = false }, new DeParaComandos() { key = Keys.Add, Dispositivo = T_Code.Mov, botaoJoy = BotoesJoystick.R1, PararAoSoltar = false },
new DeParaComandos() { key = Keys.D1, Dispositivo = T_Code.Atu, botaoJoy = BotoesJoystick.L2, PararAoSoltar = true, IDcontrolar = "B01" }, new DeParaComandos() { key = Keys.D1, Dispositivo = T_Code.Atu, botaoJoy = BotoesJoystick.L2, PararAoSoltar = true, IDcontrolar = "B01" },
@ -514,6 +515,12 @@ namespace AgroBase
DirecaoAtual = Direcao.Tras; DirecaoAtual = Direcao.Tras;
Pressionado = true; Pressionado = true;
} }
else if (Comando.Comando == Keys.Space && UltimaDirecao != Direcao.EmFreio)
{
Comando.Dispositivo = T_Code.Mov;
DirecaoAtual = Direcao.EmFreio;
Pressionado = true;
}
else if (Comando.Comando == Keys.Left && UltimaDirecao != Direcao.Esquerda) else if (Comando.Comando == Keys.Left && UltimaDirecao != Direcao.Esquerda)
{ {
Comando.Dispositivo = T_Code.Mov; Comando.Dispositivo = T_Code.Mov;
@ -604,12 +611,9 @@ namespace AgroBase
} }
foreach (var ProtocoloMotor in Protocolos) foreach (var ProtocoloMotor in Protocolos)
{ {
Dispositivo.AdicionarMensagemFila(ProtocoloMotor.Key, ProtocoloMotor.Value); Dispositivo.AdicionarMensagemFila(ProtocoloMotor.Key, ProtocoloMotor.Value, true, false);
Task.Delay(10);
Console.WriteLine(ProtocoloMotor); Console.WriteLine(ProtocoloMotor);
} }
Task.Delay(100);
} }
UltimaDirecao = DirecaoAtual; UltimaDirecao = DirecaoAtual;

View File

@ -10,8 +10,10 @@ namespace AgroBase.Models
{ {
public class GraficoInterativoModel public class GraficoInterativoModel
{ {
public GraficoInterativoModel(Chart _chart, List<string> _momentos, List<GraficoInterativoSerieModel> _series) public GraficoInterativoModel(Chart _chart, List<string> _momentos, List<GraficoInterativoSerieModel> _series, int qtdLogs = 11)
{ {
_qtdLogs = qtdLogs;
chart = _chart; chart = _chart;
chart.MouseClick += chart_MouseClick; chart.MouseClick += chart_MouseClick;
chart.MouseDoubleClick += chart_MouseDoubleClick; chart.MouseDoubleClick += chart_MouseDoubleClick;
@ -20,6 +22,7 @@ namespace AgroBase.Models
Series = _series; Series = _series;
} }
private int _qtdLogs { get; set; }
public Chart chart { get; set; } public Chart chart { get; set; }
public string Titulo { get; set; } public string Titulo { get; set; }
public double Minimo { get; set; } public double Minimo { get; set; }
@ -82,7 +85,7 @@ namespace AgroBase.Models
} }
} }
public void AtualizarDados(int _idx) public void AtualizarDados(int _idx, List<string> momentos = null, List<GraficoInterativoSerieModel> series = null)
{ {
Idx = _idx; Idx = _idx;
int startIdx, endIdx; int startIdx, endIdx;
@ -94,6 +97,18 @@ namespace AgroBase.Models
chart = Inicializar(chart); chart = Inicializar(chart);
if (momentos != null && !momentos.SequenceEqual(Momentos))
{
Momentos.Clear();
Momentos.AddRange(momentos.ToList());
}
if (series != null && !series.SequenceEqual(Series))
{
Series.Clear();
Series.AddRange(series.ToList());
}
foreach (var Serie in Series) foreach (var Serie in Series)
{ {
var _momentos = Momentos.GetRange(startIdx, endIdx - startIdx + 1).ToList(); var _momentos = Momentos.GetRange(startIdx, endIdx - startIdx + 1).ToList();
@ -104,22 +119,20 @@ namespace AgroBase.Models
private (int, int) DefineInicioFimLogs(int idxLog, int total) private (int, int) DefineInicioFimLogs(int idxLog, int total)
{ {
int qtdLogs = 11;
// Determina os limites do intervalo // Determina os limites do intervalo
int startIdx = Math.Max(idxLog - (qtdLogs / 2), 0); int startIdx = Math.Max(idxLog - (_qtdLogs / 2), 0);
int endIdx = Math.Min(idxLog + (qtdLogs / 2), total - 1); int endIdx = Math.Min(idxLog + (_qtdLogs / 2), total - 1);
// Ajusta startIdx e endIdx para garantir que temos qtdLogs itens se possível // Ajusta startIdx e endIdx para garantir que temos qtdLogs itens se possível
if (endIdx - startIdx + 1 < qtdLogs) if (endIdx - startIdx + 1 < _qtdLogs)
{ {
if (startIdx == 0) if (startIdx == 0)
{ {
endIdx = Math.Min(startIdx + qtdLogs - 1, total - 1); endIdx = Math.Min(startIdx + _qtdLogs - 1, total - 1);
} }
else if (endIdx == total - 1) else if (endIdx == total - 1)
{ {
startIdx = Math.Max(endIdx - qtdLogs + 1, 0); startIdx = Math.Max(endIdx - _qtdLogs + 1, 0);
} }
} }

View File

@ -119,12 +119,12 @@ namespace AgroBase.Models
{ {
get get
{ {
try if (Trajetoria.Any(x => x.Any()))
{ {
var primeiroPontoRua = Trajetoria.Skip(IdxRuaAtual).First().First(); var primeiroPontoRua = Trajetoria.Skip(IdxRuaAtual).First().First();
return primeiroPontoRua; return primeiroPontoRua;
} }
catch else
{ {
return new GPSModel(); return new GPSModel();
} }
@ -135,12 +135,12 @@ namespace AgroBase.Models
{ {
get get
{ {
try if (Trajetoria.Any(x => x.Any()))
{ {
var ultimoPontoRua = Trajetoria.Skip(IdxRuaAtual).First().Last(); var ultimoPontoRua = Trajetoria.Skip(IdxRuaAtual).First().Last();
return ultimoPontoRua; return ultimoPontoRua;
} }
catch else
{ {
return new GPSModel(); return new GPSModel();
} }

View File

@ -18,6 +18,9 @@ namespace AgroBase.Models
public DateTime? EnviadoEm { get; set; } public DateTime? EnviadoEm { get; set; }
public bool Recebido { get; set; } public bool Recebido { get; set; }
public DateTime? RecebidoEm { get; set; } public DateTime? RecebidoEm { get; set; }
public bool Prioridade { get; set; }
public bool AguardaCallback { get; set; }
public int Reenvios { get; set; }
} }
} }

View File

@ -421,6 +421,16 @@ namespace AgroBase.Models.Modules
} }
} }
public void DefineStatusConexao(string Mod_ID, bool conecatdo)
{
if (Mod_ID == Modulo_ID)
{
Conectado = conecatdo;
Variaveis.OperacaoEmAndamento.DispAtu.AcaoConexao();
}
}
public string GetTaxaAmostragem() public string GetTaxaAmostragem()
{ {
return _TaxaAmostragem.ToString("00000"); return _TaxaAmostragem.ToString("00000");
@ -440,6 +450,12 @@ namespace AgroBase.Models.Modules
{ {
} }
public async Task LoopRegistrador()
{
}
} }
public class AtuadorBicoModel public class AtuadorBicoModel

View File

@ -280,6 +280,16 @@ namespace AgroBase.Models.Modules
} }
} }
public void DefineStatusConexao(string Mod_ID, bool conecatdo)
{
if (Mod_ID == Modulo_ID)
{
Conectado = conecatdo;
Variaveis.OperacaoEmAndamento.DispDir.AcaoConexao();
}
}
public string GetTaxaAmostragem() public string GetTaxaAmostragem()
{ {
return _TaxaAmostragem.ToString("00000"); return _TaxaAmostragem.ToString("00000");
@ -321,6 +331,12 @@ namespace AgroBase.Models.Modules
{ {
} }
public async Task LoopRegistrador()
{
}
} }
public class DirSensoriamentoMotor public class DirSensoriamentoMotor

View File

@ -11,11 +11,13 @@ namespace AgroBase.Models
public interface DispositivoBaseModel public interface DispositivoBaseModel
{ {
void RecebeProtocoloSerial(string Protocolo); void RecebeProtocoloSerial(string Protocolo);
void DefineStatusConexao(string Mod_ID, bool conectado);
string GetTaxaAmostragem(); string GetTaxaAmostragem();
void SetTaxaAmostragem(int TaxaAmostragem); void SetTaxaAmostragem(int TaxaAmostragem);
bool GetStatusConexao(); bool GetStatusConexao();
Dictionary<string, List<string>> ProtocoloConfiguracao(bool Conectar); Dictionary<string, List<string>> ProtocoloConfiguracao(bool Conectar);
void IniciarRegistrador(); void IniciarRegistrador();
Task LoopRegistrador();
} }
} }

View File

@ -269,6 +269,16 @@ namespace AgroBase.Models
} }
} }
public void DefineStatusConexao(string Mod_ID, bool conecatdo)
{
if (Mod_ID == Modulo_ID)
{
Conectado = conecatdo;
Variaveis.OperacaoEmAndamento.DispMov.AcaoConexao();
}
}
public string GetTaxaAmostragem() public string GetTaxaAmostragem()
{ {
return _TaxaAmostragem.ToString("00000"); return _TaxaAmostragem.ToString("00000");
@ -324,6 +334,11 @@ namespace AgroBase.Models
return Velocidade / 3.6; return Velocidade / 3.6;
} }
public async Task LoopRegistrador()
{
}
} }
public class MovSensoriamentoMotor public class MovSensoriamentoMotor
@ -497,7 +512,7 @@ namespace AgroBase.Models
if (Inicializado && (!AlarmeAnterior || Adicionado) && AlarmeAtual) // Motor iniciado, Não estava em alarme anteriormente ou foi adicionado agora, alarme atual if (Inicializado && (!AlarmeAnterior || Adicionado) && AlarmeAtual) // Motor iniciado, Não estava em alarme anteriormente ou foi adicionado agora, alarme atual
{ {
Variaveis.DispositivosConectados.FirstOrDefault(x => x.Dispositivo == T_Code.Mov).AdicionarMensagemFila(Variaveis.OperacaoEmAndamento.DispMov.Dados.Modulo_ID, ProtocoloComando(Direcao.Frente, true)); Variaveis.OperacaoEmAndamento.DispMov.AdicionarMensagemFila(Variaveis.OperacaoEmAndamento.DispMov.Dados.Modulo_ID, ProtocoloComando(Direcao.Frente, true), true, false);
} }
Alm.Valor = _Alarme.Valor; Alm.Valor = _Alarme.Valor;

View File

@ -1,4 +1,5 @@
using AgroBase.Comum; using AgroBase.Comum;
using AgroBase.Forms;
using AgroBase.Services; using AgroBase.Services;
using Newtonsoft.Json; using Newtonsoft.Json;
using System; using System;
@ -45,26 +46,26 @@ namespace AgroBase.Models.Modules
new ModuloMvdModel() new ModuloMvdModel()
{ {
Modulo_ID = "ET", Modulo_ID = "ET",
MovMotor = MvdMotorBLDC.CarregarParametrosIniciais(), MovMotor = MvdMotorBLDC.CarregarParametrosIniciais("ET"),
DirMotor = MvdMotorPasso.CarregarParametrosIniciais(), DirMotor = MvdMotorPasso.CarregarParametrosIniciais("ET"),
}, },
new ModuloMvdModel() new ModuloMvdModel()
{ {
Modulo_ID = "EF", Modulo_ID = "EF",
MovMotor = MvdMotorBLDC.CarregarParametrosIniciais(), MovMotor = MvdMotorBLDC.CarregarParametrosIniciais("EF"),
DirMotor = MvdMotorPasso.CarregarParametrosIniciais() DirMotor = MvdMotorPasso.CarregarParametrosIniciais("EF")
}, },
new ModuloMvdModel() new ModuloMvdModel()
{ {
Modulo_ID = "DT", Modulo_ID = "DT",
MovMotor = MvdMotorBLDC.CarregarParametrosIniciais(), MovMotor = MvdMotorBLDC.CarregarParametrosIniciais("DT"),
DirMotor = MvdMotorPasso.CarregarParametrosIniciais() DirMotor = MvdMotorPasso.CarregarParametrosIniciais("DT")
}, },
new ModuloMvdModel() new ModuloMvdModel()
{ {
Modulo_ID = "DF", Modulo_ID = "DF",
MovMotor = MvdMotorBLDC.CarregarParametrosIniciais(), MovMotor = MvdMotorBLDC.CarregarParametrosIniciais("DF"),
DirMotor = MvdMotorPasso.CarregarParametrosIniciais() DirMotor = MvdMotorPasso.CarregarParametrosIniciais("DF")
}, },
}, },
}; };
@ -85,7 +86,7 @@ namespace AgroBase.Models.Modules
{ {
try try
{ {
string[] Dados = mensagem.Replace(SerialService.BeginSensor, "").Split(SerialService.EndLine[0])[0].Split(';'); string[] Dados = mensagem.Replace(SerialService.BeginSensor, "").Split(SerialService.EndLine[0])[0].Split(SerialService.SplitMessage[0]);
S_Code TipoSensor = (S_Code)(int.Parse(Dados[0])); S_Code TipoSensor = (S_Code)(int.Parse(Dados[0]));
string _IDcomponente = Dados[1]; string _IDcomponente = Dados[1];
@ -97,19 +98,12 @@ namespace AgroBase.Models.Modules
return; return;
} }
if (_IDcomponente == Modulo.Modulo_ID) Modulo.UltimoProtocoloRecebido = DateTime.Now;
/*if (_IDcomponente == Modulo.Modulo_ID)
{ {
Modulo.Conectado = Dados[2] == "1";
DispositivosService<MovimentacaoUnificadaModel> Disp = (DispositivosService<MovimentacaoUnificadaModel>)Variaveis.DispositivosConectados.FirstOrDefault(x => x.Dispositivo == T_Code.Mvd);
Disp.AcaoConexao().ConfigureAwait(false);
if (Modulo.Conectado)
{
LoopAquisicaoDados().ConfigureAwait(false);
}
return; return;
} }*/
try try
{ {
@ -160,6 +154,13 @@ namespace AgroBase.Models.Modules
Velocidade = Modulo.MovMotor.VelocidadeInstantanea Velocidade = Modulo.MovMotor.VelocidadeInstantanea
}); });
if (Modulo.MovMotor.LogGrafico.Count > 60)
{
Modulo.MovMotor.LogGrafico.RemoveAt(0);
}
frmInstancial.frmAcompanhamento.AtualizaGrafico();
break; break;
} }
case S_Code.sENC: case S_Code.sENC:
@ -187,7 +188,68 @@ namespace AgroBase.Models.Modules
break; break;
} }
case S_Code.sMVD:
{
Modulo.MovMotor.Inicializado = Dados[2] == "1";
double rpm = 0;
double.TryParse(Dados[3].Replace(".", ","), out rpm);
Modulo.MovMotor.RPM = rpm;
double temperatura = 0;
double.TryParse(Dados[4].Replace(".", ","), out temperatura);
temperatura = FuncoesMatematicas.CalcularTemperatura(temperatura, 0.0);
Modulo.MovMotor.Temperatura = temperatura;
double tensao = 0;
double.TryParse(Dados[5].Replace(".", ","), out tensao);
Modulo.MovMotor.Tensao = tensao;
double corrente_max = 0;
double.TryParse(Dados[6].Replace(".", ","), out corrente_max);
corrente_max = FuncoesMatematicas.Map(corrente_max, 15780, 16799, 0, 20.6);
Modulo.MovMotor.Corrente_Max = corrente_max;
bool ligado = Dados[7] == "1";
Modulo.MovMotor.Ligado = ligado;
int sentido = 0;
int.TryParse(Dados[8], out sentido);
Modulo.MovMotor.Sentido = (Sentido)sentido;
bool freio = Dados[9] == "1";
Modulo.MovMotor.Freio = freio;
int codAlarme = 0;
int.TryParse(Dados[10], out codAlarme);
Modulo.MovMotor.CodigoAlarme = codAlarme;
double tempDriver = 0;
double.TryParse(Dados[11].Replace(".", ","), out tempDriver);
tempDriver = FuncoesMatematicas.CalcularTemperatura(tempDriver, 0);
Modulo.MovMotor.TemperaturaDriver = tempDriver;
Modulo.DirMotor.Inicializado = Dados[12] == "1";
int _sentido = 0;
int.TryParse(Dados[13].ToString(), out _sentido);
Modulo.DirMotor.Sentido = (Sentido)_sentido;
double _angulo = 0;
double.TryParse(Dados[14].ToString().Replace(".", ","), out _angulo);
Modulo.DirMotor.Angulo = _angulo;
Modulo.MovMotor.LogGrafico.Add(new MvdMotorMOVSensorimanetoGrafico()
{
Momento = DateTime.Now,
Modulo_ID = Modulo.Modulo_ID,
RPM_SP = Modulo.MovMotor.RPM_SP,
RPM = Modulo.MovMotor.RPM,
Corrente = Modulo.MovMotor.Corrente,
Sentido = Modulo.MovMotor.Sentido,
Temperatura = Modulo.MovMotor.Temperatura,
TemperaturaDriver = Modulo.MovMotor.TemperaturaDriver,
Tensao = Modulo.MovMotor.Tensao,
Velocidade = Modulo.MovMotor.VelocidadeInstantanea
});
if (Modulo.MovMotor.LogGrafico.Count > 60)
{
Modulo.MovMotor.LogGrafico.RemoveAt(0);
}
frmInstancial.frmAcompanhamento.AtualizaGrafico();
break;
}
} }
} }
catch (Exception ex) catch (Exception ex)
@ -204,6 +266,17 @@ namespace AgroBase.Models.Modules
} }
} }
public void DefineStatusConexao(string Mod_ID, bool conecatdo)
{
var Modulo = Modulos.FirstOrDefault(x => x.Modulo_ID == Mod_ID);
if (Modulo != null)
{
//Modulo.Conectado = conecatdo;
Variaveis.OperacaoEmAndamento.DispMvd.AcaoConexao();
}
}
public string GetTaxaAmostragem() public string GetTaxaAmostragem()
{ {
return _TaxaAmostragem.ToString("00000"); return _TaxaAmostragem.ToString("00000");
@ -216,43 +289,60 @@ namespace AgroBase.Models.Modules
public bool GetStatusConexao() public bool GetStatusConexao()
{ {
return Modulos.Any(x => x.Conectado); return Conectado;
} }
public void IniciarRegistrador() public void IniciarRegistrador()
{ {
Modulos.ForEach(x =>
{
x.MovMotor.Inicializado = false;
x.DirMotor.Inicializado = false;
});
LoopRegistrador().ConfigureAwait(false);
} }
private async Task LoopAquisicaoDados() public async Task LoopRegistrador()
{ {
await Task.Delay(1000);
if (Conectado) if (Conectado)
{ {
await Task.Delay(_TaxaAmostragem);
Modulos.ForEach(x =>
{
if (x.MovMotor.Inicializado)
{
Variaveis.OperacaoEmAndamento.DispMvd.AdicionarMensagemFila(x.Modulo_ID, x.MovMotor.ProtocoloAquisicaoDados());
}
if (x.DirMotor.Inicializado)
{
Variaveis.OperacaoEmAndamento.DispMvd.AdicionarMensagemFila(x.Modulo_ID, x.DirMotor.ProtocoloAquisicaoDados());
}
});
if (UltimaDirecao != Direcao.Parado) if (UltimaDirecao != Direcao.Parado)
{ {
TempoEmAtividade++; TempoEmAtividade++;
double VelocidadeMedia = Modulos.Average(x => x.MovMotor.VelocidadeInstantanea * 1000 / 3600); double VelocidadeMedia = Modulos.Where(x => x.Conectado).Average(x => x.MovMotor.VelocidadeInstantanea * 1000 / 3600);
DistanciaPercorridaTotal += 1 * VelocidadeMedia; DistanciaPercorridaTotal += 1 * VelocidadeMedia;
DistanciaPercorridaParcial += (UltimaDirecao == Direcao.Frente ? 1 : UltimaDirecao == Direcao.Tras ? -1 : 0) * VelocidadeMedia; DistanciaPercorridaParcial += (UltimaDirecao == Direcao.Frente ? 1 : UltimaDirecao == Direcao.Tras ? -1 : 0) * VelocidadeMedia;
DistanciaPercorridaOperacao += 1 * VelocidadeMedia; DistanciaPercorridaOperacao += 1 * VelocidadeMedia;
} }
await LoopAquisicaoDados(); DateTime Agora = DateTime.Now;
if (Modulos.Any(x => x.Conectado && x.UltimoProtocoloRecebido.AddMilliseconds(_TaxaAmostragem * 20) < Agora))
{
foreach (var Modulo in Modulos.Where(x => x.Conectado && x.UltimoProtocoloRecebido.AddMilliseconds(_TaxaAmostragem * 20) < Agora))
{
Modulo.MovMotor.Inicializado = false;
Modulo.DirMotor.Inicializado = false;
}
}
/*foreach (var Modulo in Modulos.Where(x => (!x.MovMotor.Inicializado && x.MovMotor.Comandar) || (!x.DirMotor.Inicializado && x.DirMotor.Comandar)))
{
if (!Modulo.MovMotor.Inicializado && Modulo.MovMotor.Comandar)
{
string Protocolo = Modulo.MovMotor.ProtocoloConfiguracao(true);
Variaveis.OperacaoEmAndamento.DispMvd.AdicionarMensagemFila(Modulo.Modulo_ID, Protocolo, true, false);
}
if (!Modulo.DirMotor.Inicializado && Modulo.DirMotor.Comandar)
{
string Protocolo = Modulo.DirMotor.ProtocoloConfiguracao(true);
Variaveis.OperacaoEmAndamento.DispMvd.AdicionarMensagemFila(Modulo.Modulo_ID, Protocolo, true, false);
}
}*/
} }
await LoopRegistrador();
} }
} }
@ -263,7 +353,14 @@ namespace AgroBase.Models.Modules
public bool Disponivel { get; set; } public bool Disponivel { get; set; }
public bool Conectado { get; set; } = false; public bool Conectado
{
get
{
return MovMotor.Inicializado || DirMotor.Inicializado;
}
}
public DateTime UltimoProtocoloRecebido { get; set; } = DateTime.MaxValue;
public MvdMotorBLDC MovMotor { get; set; } public MvdMotorBLDC MovMotor { get; set; }
public MvdMotorPasso DirMotor { get; set; } public MvdMotorPasso DirMotor { get; set; }
@ -316,9 +413,34 @@ namespace AgroBase.Models.Modules
Config.Add(ProtocoloMOD); Config.Add(ProtocoloMOD);
} }
Config.Add(ProtocoloVerificacao(false));
return Config; return Config;
} }
public string ProtocoloVerificacao(bool Completo)
{
if (Completo)
{
string ProtocoloCheck =
SerialService.BeginLine +
0 + SerialService.SplitMessage +
Modulo_ID + SerialService.SplitMessage +
((int)F_Code.Chk).ToString() + SerialService.SplitMessage +
"check" +
SerialService.EndLine;
return ProtocoloCheck;
}
else
{
string ProtocoloCheck =
((int)F_Code.Chk).ToString() + SerialService.SplitMessage +
"check";
return ProtocoloCheck;
}
}
} }
@ -367,7 +489,7 @@ namespace AgroBase.Models.Modules
public List<MvdMotorMOVSensorimanetoGrafico> LogGrafico { get; set; } = new List<MvdMotorMOVSensorimanetoGrafico>(); public List<MvdMotorMOVSensorimanetoGrafico> LogGrafico { get; set; } = new List<MvdMotorMOVSensorimanetoGrafico>();
public static MvdMotorBLDC CarregarParametrosIniciais() public static MvdMotorBLDC CarregarParametrosIniciais(string Mod_ID)
{ {
return new MvdMotorBLDC() return new MvdMotorBLDC()
{ {
@ -375,14 +497,18 @@ namespace AgroBase.Models.Modules
Endereco = "0x01", Endereco = "0x01",
ConfigSentidos = new ConfiguracaoSentidoMotor() ConfigSentidos = new ConfiguracaoSentidoMotor()
{ {
Direita = Sentido.Antihorario, Direita = Sentido.Parado,
Esquerda = Sentido.Horario, Esquerda = Sentido.Parado,
Frente = Sentido.Horario, Frente = Mod_ID.Contains("E") ? Sentido.Antihorario : Sentido.Horario,
Tras = Sentido.Antihorario Tras = Mod_ID.Contains("E") ? Sentido.Horario : Sentido.Antihorario
}, },
Funcoes = new List<FuncoesPinout>() Funcoes = new List<FuncoesPinout>()
{ {
FuncoesPinout.TMP FuncoesPinout.TMP,
FuncoesPinout.ENA,
FuncoesPinout.DIR,
FuncoesPinout.PWM,
FuncoesPinout.BRK,
} }
}; };
} }
@ -439,11 +565,14 @@ namespace AgroBase.Models.Modules
Sentido_SP = ConfigSentidos.Direita; Sentido_SP = ConfigSentidos.Direita;
break; break;
case Direcao.Parado: case Direcao.Parado:
case Direcao.EmFreio:
default: default:
Sentido_SP = ConfigSentidos.Parado; Sentido_SP = ConfigSentidos.Parado;
break; break;
} }
Freio = DirecaoAtual == Direcao.EmFreio;
string ProtocoloMotor = ""; string ProtocoloMotor = "";
ProtocoloMotor = ProtocoloMotor =
@ -501,15 +630,15 @@ namespace AgroBase.Models.Modules
public List<FuncoesPinout> Funcoes { get; set; } public List<FuncoesPinout> Funcoes { get; set; }
public static MvdMotorPasso CarregarParametrosIniciais() public static MvdMotorPasso CarregarParametrosIniciais(string Mod_ID)
{ {
return new MvdMotorPasso() return new MvdMotorPasso()
{ {
ID = T_Code.Dir.ToString(), ID = T_Code.Dir.ToString(),
ConfigSentidos = new ConfiguracaoSentidoMotor() ConfigSentidos = new ConfiguracaoSentidoMotor()
{ {
Direita = Sentido.Antihorario, Direita = Mod_ID.Contains("F") ? Sentido.Horario : Sentido.Antihorario,
Esquerda = Sentido.Horario, Esquerda = Mod_ID.Contains("F") ? Sentido.Antihorario : Sentido.Horario,
Frente = Sentido.Parado, Frente = Sentido.Parado,
Tras = Sentido.Parado Tras = Sentido.Parado
}, },

View File

@ -637,10 +637,10 @@ namespace AgroBase.Models.Modules
Variaveis.OperacaoEmAndamento.DispMov.Dados.Conectado Variaveis.OperacaoEmAndamento.DispMov.Dados.Conectado
) )
{ {
foreach (var _motor in Variaveis.OperacaoEmAndamento.DispMov.Dados.Motores) foreach (var Modulo in Variaveis.OperacaoEmAndamento.DispMvd.Dados.Modulos)
{ {
string ProtocoloParada = _motor.ProtocoloComando(Direcao.Frente, true); string ProtocoloParada = Modulo.MovMotor.ProtocoloComando(Direcao.Frente, true);
Variaveis.OperacaoEmAndamento.DispMov.AdicionarMensagemFila(Variaveis.OperacaoEmAndamento.DispMov.Dados.Modulo_ID, ProtocoloParada); Variaveis.OperacaoEmAndamento.DispMvd.AdicionarMensagemFila(Modulo.Modulo_ID, ProtocoloParada, true, false);
} }
} }
} }
@ -708,6 +708,16 @@ namespace AgroBase.Models.Modules
} }
} }
public void DefineStatusConexao(string Mod_ID, bool conecatdo)
{
if (Mod_ID == Modulo_ID)
{
Conectado = conecatdo;
Variaveis.OperacaoEmAndamento.DispSen.AcaoConexao();
}
}
public string GetTaxaAmostragem() public string GetTaxaAmostragem()
{ {
return _TaxaAmostragem.ToString("00000"); return _TaxaAmostragem.ToString("00000");
@ -727,6 +737,13 @@ namespace AgroBase.Models.Modules
{ {
} }
public async Task LoopRegistrador()
{
}
} }
public class SensorModel public class SensorModel

View File

@ -757,6 +757,10 @@ namespace AgroBase.Models.Operacoes
{ {
get get
{ {
if (!Variaveis.OperacaoEmAndamento.Mapa.Trajetoria.Any())
{
return 0;
}
try try
{ {
if (UltimaLeituraDistancia == null) if (UltimaLeituraDistancia == null)

View File

@ -418,7 +418,7 @@ namespace AgroBase.Models
OperacaoCarregar.DispSen.Dados.Sinaleiros.First(x => x.ID == "LEDOP").Comportamento = Variaveis.ComportamentoPorStatus(); OperacaoCarregar.DispSen.Dados.Sinaleiros.First(x => x.ID == "LEDOP").Comportamento = Variaveis.ComportamentoPorStatus();
OperacaoCarregar.DispSen.Dados.Sinaleiros.ForEach(x => OperacaoCarregar.DispSen.AdicionarMensagemFila(Variaveis.OperacaoEmAndamento.DispSen.Dados.Modulo_ID, x.ProtocoloComando())); OperacaoCarregar.DispSen.Dados.Sinaleiros.ForEach(x => OperacaoCarregar.DispSen.AdicionarMensagemFila(Variaveis.OperacaoEmAndamento.DispSen.Dados.Modulo_ID, x.ProtocoloComando(), true, false));
} }
@ -534,7 +534,7 @@ namespace AgroBase.Models
{ {
DispAtu.Dados.BombaPressurizadora.BombaAtuada = false; DispAtu.Dados.BombaPressurizadora.BombaAtuada = false;
string Protocolo = DispAtu.Dados.BombaPressurizadora.ProtocoloComando(); string Protocolo = DispAtu.Dados.BombaPressurizadora.ProtocoloComando();
DispAtu.AdicionarMensagemFila(DispAtu.Dados.Modulo_ID, Protocolo); DispAtu.AdicionarMensagemFila(DispAtu.Dados.Modulo_ID, Protocolo, true, false);
} }
Iniciado = false; Iniciado = false;
@ -557,7 +557,7 @@ namespace AgroBase.Models
{ {
DispAtu.Dados.BombaPressurizadora.BombaAtuada = true; DispAtu.Dados.BombaPressurizadora.BombaAtuada = true;
string Protocolo = DispAtu.Dados.BombaPressurizadora.ProtocoloComando(); string Protocolo = DispAtu.Dados.BombaPressurizadora.ProtocoloComando();
DispAtu.AdicionarMensagemFila(DispAtu.Dados.Modulo_ID, Protocolo); DispAtu.AdicionarMensagemFila(DispAtu.Dados.Modulo_ID, Protocolo, true, true);
} }
await Task.Delay(5000); await Task.Delay(5000);
@ -569,12 +569,12 @@ namespace AgroBase.Models
if (Bico.Inicializado) if (Bico.Inicializado)
{ {
Bico.Atuado = true; Bico.Atuado = true;
DispAtu.AdicionarMensagemFila(DispAtu.Dados.Modulo_ID, Bico.ProtocoloComando()); DispAtu.AdicionarMensagemFila(DispAtu.Dados.Modulo_ID, Bico.ProtocoloComando(), true, true);
await Task.Delay(1000); await Task.Delay(1000);
Bico.Atuado = false; Bico.Atuado = false;
DispAtu.AdicionarMensagemFila(DispAtu.Dados.Modulo_ID, Bico.ProtocoloComando()); DispAtu.AdicionarMensagemFila(DispAtu.Dados.Modulo_ID, Bico.ProtocoloComando(), true, true);
} }
} }
@ -648,10 +648,10 @@ namespace AgroBase.Models
DispMvd.Dados.Modulos.ForEach(Modulo => DispMvd.Dados.Modulos.ForEach(Modulo =>
{ {
MvdSensoriamentoLogModel log = new MvdSensoriamentoLogModel() MovSensoriamentoLogModel logMov = new MovSensoriamentoLogModel()
{ {
Momento = Agora, Momento = Agora,
Modulo_ID = Modulo.MovMotor.ID, Modulo_ID = Modulo.Modulo_ID,
Inicializado = Modulo.MovMotor.Inicializado, Inicializado = Modulo.MovMotor.Inicializado,
RPM_SP = Modulo.MovMotor.RPM_SP, RPM_SP = Modulo.MovMotor.RPM_SP,
RPM = Modulo.MovMotor.RPM, RPM = Modulo.MovMotor.RPM,
@ -661,8 +661,23 @@ namespace AgroBase.Models
Sentido_SP = Modulo.MovMotor.Sentido_SP, Sentido_SP = Modulo.MovMotor.Sentido_SP,
Sentido = Modulo.MovMotor.Sentido, Sentido = Modulo.MovMotor.Sentido,
Velocidade = Modulo.MovMotor.VelocidadeInstantanea, Velocidade = Modulo.MovMotor.VelocidadeInstantanea,
CodAlarme = Modulo.MovMotor.CodigoAlarme,
}; };
SalvarLog(DispMvd.Dispositivo.ToString(), log, false); SalvarLog(T_Code.Mov.ToString(), logMov, false);
DirSensoriamentoLogModel logDir = new DirSensoriamentoLogModel()
{
Momento = Agora,
Modulo_ID = Modulo.Modulo_ID,
Inicializado = Modulo.MovMotor.Inicializado,
Angulo = Modulo.DirMotor.Angulo,
Angulo_SP = Modulo.DirMotor.Angulo_SP,
Controlar = Modulo.DirMotor.Controlar,
Sentido_SP = Modulo.MovMotor.Sentido_SP,
Sentido = Modulo.MovMotor.Sentido,
Velocidade = Modulo.MovMotor.VelocidadeInstantanea,
};
SalvarLog(T_Code.Dir.ToString(), logDir, false);
}); });
AtuSensoriamentoLogModel logAtu = new AtuSensoriamentoLogModel() AtuSensoriamentoLogModel logAtu = new AtuSensoriamentoLogModel()
@ -872,7 +887,7 @@ namespace AgroBase.Models
DispSen.Dados.Sinaleiros.FirstOrDefault(x => x.ID == "LEDAT").Comportamento.statusLED = Modo == ModoOperacao.MapaGPS ? StatusLED.Aceso : StatusLED.Apagado; DispSen.Dados.Sinaleiros.FirstOrDefault(x => x.ID == "LEDAT").Comportamento.statusLED = Modo == ModoOperacao.MapaGPS ? StatusLED.Aceso : StatusLED.Apagado;
DispSen.Dados.Sinaleiros.FirstOrDefault(x => x.ID == "LEDMN").Comportamento.statusLED = Modo == ModoOperacao.Manual ? StatusLED.Aceso : StatusLED.Apagado; DispSen.Dados.Sinaleiros.FirstOrDefault(x => x.ID == "LEDMN").Comportamento.statusLED = Modo == ModoOperacao.Manual ? StatusLED.Aceso : StatusLED.Apagado;
DispSen.Dados.Sinaleiros.ForEach(x => DispSen.AdicionarMensagemFila(DispSen.Dados.Modulo_ID, x.ProtocoloComando())); DispSen.Dados.Sinaleiros.ForEach(x => DispSen.AdicionarMensagemFila(DispSen.Dados.Modulo_ID, x.ProtocoloComando(), true, false));
} }
} }
@ -1088,7 +1103,7 @@ namespace AgroBase.Models
public class DirSensoriamentoLogModel public class DirSensoriamentoLogModel
{ {
public DateTime Momento { get; set; } public DateTime Momento { get; set; }
public string ComponenteID { get; set; } public string Modulo_ID { get; set; }
public bool Inicializado { get; set; } public bool Inicializado { get; set; }
public bool Controlar { get; set; } public bool Controlar { get; set; }
public double Angulo_SP { get; set; } public double Angulo_SP { get; set; }
@ -1101,9 +1116,8 @@ namespace AgroBase.Models
public class MovSensoriamentoLogModel public class MovSensoriamentoLogModel
{ {
public DateTime Momento { get; set; } public DateTime Momento { get; set; }
public string ComponenteID { get; set; } public string Modulo_ID { get; set; }
public bool Inicializado { get; set; } public bool Inicializado { get; set; }
public bool Alarme { get; set; }
public double RPM_SP { get; set; } public double RPM_SP { get; set; }
public double RPM { get; set; } public double RPM { get; set; }
public double Velocidade { get; set; } public double Velocidade { get; set; }
@ -1112,6 +1126,7 @@ namespace AgroBase.Models
public double Temperatura { get; set; } public double Temperatura { get; set; }
public double Corrente { get; set; } public double Corrente { get; set; }
public double Tensao { get; set; } public double Tensao { get; set; }
public int CodAlarme { get; set; }
} }
public class AtuSensoriamentoLogModel public class AtuSensoriamentoLogModel
@ -1156,20 +1171,4 @@ namespace AgroBase.Models
} }
public class MvdSensoriamentoLogModel
{
public DateTime Momento { get; set; }
public string Modulo_ID { get; set; }
public bool Inicializado { get; set; }
public double RPM_SP { get; set; }
public double RPM { get; set; }
public double Velocidade { get; set; }
public Sentido Sentido_SP { get; set; }
public Sentido Sentido { get; set; }
public double Temperatura { get; set; }
public double Corrente { get; set; }
public double Tensao { get; set; }
public int CodAlarme { get; set; }
}
} }

View File

@ -412,14 +412,14 @@ namespace AgroBase.Models
.Key; .Key;
} }
public static double CalcularTemperatura(double leitura, double offset) /*public static double CalcularTemperatura(double leitura, double offset)
{ {
double Vs = 3.3; // TENSÃO DE SAIDA DO ESP32 double Vs = 3.3; // TENSÃO DE SAIDA DO ESP32
double R1 = 10000; //RESISTOR UTILIZADO NO DIVISOR DE TENSÃO double R1 = 10000; //RESISTOR UTILIZADO NO DIVISOR DE TENSÃO
double Beta = 3950; // VALOR DE BETA double Beta = 3950; // VALOR DE BETA
double To = 298.15; // VALOR EM KELVIN REFERENTE A 25° CELSIUS double To = 298.15; // VALOR EM KELVIN REFERENTE A 25° CELSIUS
double Ro = 10000; double Ro = 10000;
double adcMax = 4095.0; double adcMax = 1024.0;
double Vout, Rt = 0; double Vout, Rt = 0;
double T, Tc, Tf, adc = 0; double T, Tc, Tf, adc = 0;
//CALCULOS PARA CONVERSÃO DA LEITURA RECEBIDA PELO ESP32 EM TEMPERATURA EM °C //CALCULOS PARA CONVERSÃO DA LEITURA RECEBIDA PELO ESP32 EM TEMPERATURA EM °C
@ -431,6 +431,28 @@ namespace AgroBase.Models
Tc = Math.Round(Tc, 2); Tc = Math.Round(Tc, 2);
return Tc;
}*/
public static double CalcularTemperatura(double leitura, double offset)
{
double Vs = 5.0; // TENSÃO DE SAÍDA DO ESP32
double Beta = 3950; // VALOR DE BETA
double To = 298.15; // VALOR EM KELVIN REFERENTE A 25° CELSIUS
double Ro = 10000; // RESISTÊNCIA DO NTC A 25°C
double adcMax = 1024.0;
double Vout, Rt = 0;
double T, Tc, Tf, adc = 0;
// CALCULOS PARA CONVERSÃO DA LEITURA RECEBIDA PELO ESP32 EM TEMPERATURA EM °C
Vout = (leitura * Vs / adcMax) + offset;
Rt = Ro * (Vs / Vout - 1);
T = 1 / (1 / To + Math.Log(Rt / Ro) / Beta);
Tc = T - 273.15;
Tf = Tc * 9 / 5 + 32;
Tc = Math.Round(Tc, 2);
return Tc; return Tc;
} }

View File

@ -47,7 +47,7 @@ namespace AgroBase.Comum
public Form frmPin { get; set; } public Form frmPin { get; set; }
public Timer tmrLimpeza = new Timer() { Interval = 1000, Enabled = false }; public Timer tmrLimpeza = new Timer() { Interval = 10000, Enabled = false };
public int Ticks { get; set; } = 0; public int Ticks { get; set; } = 0;
public int TempoConectado { get; set; } = 0; public int TempoConectado { get; set; } = 0;
@ -158,7 +158,7 @@ namespace AgroBase.Comum
{ {
if (!_Porta.IsOpen) if (!_Porta.IsOpen)
{ {
return false; return true;
} }
LimparBufferSerial(false); LimparBufferSerial(false);
@ -214,11 +214,11 @@ namespace AgroBase.Comum
} }
} }
public void AdicionarMensagemFila(string Mod_ID, string mensagem) public void AdicionarMensagemFila(string Mod_ID, string mensagem, bool _prioridade, bool _aguardaCallback)
{ {
if (PortaCOM() != "") if (_Porta.IsOpen && Mod_ID != "" && mensagem != "")
{ {
FilaService.AdicionarMensagemFila(Mod_ID, Dispositivo, mensagem); FilaService.AdicionarMensagemFila(Mod_ID, Dispositivo, mensagem, _prioridade, _aguardaCallback);
} }
} }
@ -230,7 +230,6 @@ namespace AgroBase.Comum
Dados = CarregarParametros(MovimentacaoModel.CarregarParametrosIniciais()); Dados = CarregarParametros(MovimentacaoModel.CarregarParametrosIniciais());
frmPlot = new frmMovPlot(); frmPlot = new frmMovPlot();
frmConfig = new frmMovConfig(); frmConfig = new frmMovConfig();
Dados.IniciarRegistrador();
MovimentacaoModel.Pinout = PinoutModel.CarregarPinout(Variaveis.CaminhoParametros + "pinout" + Enum.GetName(typeof(T_Code), Dispositivo) + ".pin"); MovimentacaoModel.Pinout = PinoutModel.CarregarPinout(Variaveis.CaminhoParametros + "pinout" + Enum.GetName(typeof(T_Code), Dispositivo) + ".pin");
break; break;
@ -256,6 +255,7 @@ namespace AgroBase.Comum
break; break;
case T_Code.Mvd: case T_Code.Mvd:
Dados = CarregarParametros(MovimentacaoUnificadaModel.CarregarParametrosIniciais()); Dados = CarregarParametros(MovimentacaoUnificadaModel.CarregarParametrosIniciais());
frmConfig = new frmMvdConfig();
ModuloMvdModel.Pinout = PinoutModel.CarregarPinout(Variaveis.CaminhoParametros + "pinout" + Enum.GetName(typeof(T_Code), Dispositivo) + ".pin"); ModuloMvdModel.Pinout = PinoutModel.CarregarPinout(Variaveis.CaminhoParametros + "pinout" + Enum.GetName(typeof(T_Code), Dispositivo) + ".pin");
break; break;
@ -264,6 +264,8 @@ namespace AgroBase.Comum
break; break;
} }
Dados.IniciarRegistrador();
((dynamic)Dados).Conectado = false; ((dynamic)Dados).Conectado = false;
frmPin = new frmPinout(Dispositivo); frmPin = new frmPinout(Dispositivo);
@ -735,7 +737,7 @@ namespace AgroBase.Comum
{ {
string modId = txtEnvios.Text.Split('¬')[0]; string modId = txtEnvios.Text.Split('¬')[0];
string mensagem = txtEnvios.Text.Split('¬')[1]; string mensagem = txtEnvios.Text.Split('¬')[1];
AdicionarMensagemFila(modId, mensagem); AdicionarMensagemFila(modId, mensagem, false, true);
txtEnvios.Text = ""; txtEnvios.Text = "";
txtEnvios.Focus(); txtEnvios.Focus();
} }
@ -769,21 +771,31 @@ namespace AgroBase.Comum
{ {
string Mod_ID = Recebido.Split(SerialService.SplitMessage[0])[0]; string Mod_ID = Recebido.Split(SerialService.SplitMessage[0])[0];
mensagem = Recebido.Substring(Mod_ID.Length + 1, Recebido.Length - Mod_ID.Length - 1); mensagem = Recebido.Substring(Mod_ID.Length + 1, Recebido.Length - Mod_ID.Length - 1);
var DadosMensagem = mensagem.Split(SerialService.SplitMessage[0]);
if (mensagem.Length >= 3 && int.TryParse(mensagem.Substring(0, 3), out int val)) if (DadosMensagem.Length > 2 && int.TryParse(DadosMensagem[0], out int val))
{ {
F_Code funcao = (F_Code)(val); try
if (funcao == F_Code.Msg)
{ {
try F_Code funcao = (F_Code)(val);
switch (funcao)
{ {
int _id = int.Parse(mensagem.Split(SerialService.SplitParams[0])[1]); case F_Code.Msg:
FilaService.MarcarMensagemRecebida(_id); {
int _id = int.Parse(DadosMensagem[1]);
FilaService.MarcarMensagemRecebida(_id);
break;
}
case F_Code.Chk:
{
bool conectado = DadosMensagem[3] == "1";
Dados.DefineStatusConexao(Mod_ID, conectado);
break;
}
} }
catch }
{ catch
{
}
} }
} }
} }
@ -816,7 +828,7 @@ namespace AgroBase.Comum
{ {
if (ProtocoloConfiguracao.Key != "" && ProtocoloConfiguracao.Value.Any()) if (ProtocoloConfiguracao.Key != "" && ProtocoloConfiguracao.Value.Any())
{ {
ProtocoloConfiguracao.Value.ForEach(x => AdicionarMensagemFila(ProtocoloConfiguracao.Key, x)); ProtocoloConfiguracao.Value.ForEach(x => AdicionarMensagemFila(ProtocoloConfiguracao.Key, x, true, false));
} }
} }
} }
@ -831,7 +843,7 @@ namespace AgroBase.Comum
{ {
if (ProtocoloConfiguracao.Key != "" && ProtocoloConfiguracao.Value.Any()) if (ProtocoloConfiguracao.Key != "" && ProtocoloConfiguracao.Value.Any())
{ {
ProtocoloConfiguracao.Value.ForEach(x => AdicionarMensagemFila(ProtocoloConfiguracao.Key, x)); ProtocoloConfiguracao.Value.ForEach(x => AdicionarMensagemFila(ProtocoloConfiguracao.Key, x, true, false));
} }
} }
} }
@ -840,13 +852,8 @@ namespace AgroBase.Comum
//tmrConexao.Enabled = true; //tmrConexao.Enabled = true;
} }
public async Task AcaoConexao() public void AcaoConexao()
{ {
while (FilaService.ExistemMensagensPendentesEnvio(Dispositivo) || FilaService.ExistemMensagensPendentesResposta(Dispositivo))
{
await Task.Delay(300);
}
if (!Dados.GetStatusConexao()) if (!Dados.GetStatusConexao())
{ {
if (DesconectarPortaSerial()) if (DesconectarPortaSerial())

View File

@ -1,10 +1,9 @@
using AgroBase.Models; using AgroBase.Models;
using System; using System;
using System.Collections.Generic; using System.Collections.Generic;
using System.ComponentModel;
using System.Linq; using System.Linq;
using System.Text;
using System.Threading.Tasks; using System.Threading.Tasks;
using System.Windows.Forms;
using static AgroBase.Models.Enuns; using static AgroBase.Models.Enuns;
namespace AgroBase.Services namespace AgroBase.Services
@ -12,69 +11,76 @@ namespace AgroBase.Services
public class FilaService public class FilaService
{ {
private static List<MensagemFilaModel> MensagensFila; private static List<MensagemFilaModel> MensagensFila;
private static readonly object _lock = new object();
private static int _counter = 1;
public static bool Liberado public static bool Liberado
{ {
get get
{ {
return !MensagensFila.Any(x => !x.Enviado && x.AdicionadoEm.AddSeconds(10) > DateTime.Now); lock (_lock)
{
return !MensagensFila.Any(x => !x.Enviado && x.AdicionadoEm.AddSeconds(10) > DateTime.Now);
}
} }
} }
public static void Inicializar() public static void Inicializar()
{ {
MensagensFila = new List<MensagemFilaModel>(); MensagensFila = new List<MensagemFilaModel>();
EnviarMensagensLoop().ConfigureAwait(false); EnviarMensagensLoop().ConfigureAwait(false);
} }
public static void AdicionarMensagemFila(string Modulo_ID, T_Code Dispositivo, string Mensagem) public static void AdicionarMensagemFila(string Modulo_ID, T_Code Dispositivo, string Mensagem, bool _prioridade, bool _aguardaCallback)
{ {
if (Mensagem != "") lock (_lock)
{ {
MensagensFila.Add(new MensagemFilaModel() MensagensFila.Add(new MensagemFilaModel()
{ {
Id = MensagensFila.Count + 1, Id = _counter,
ID_Modulo = Modulo_ID, ID_Modulo = Modulo_ID,
Dispositivo = Dispositivo, Dispositivo = Dispositivo,
Mensagem = Mensagem, Mensagem = Mensagem,
AdicionadoEm = DateTime.Now, AdicionadoEm = DateTime.Now,
Enviado = false, Enviado = false,
Recebido = false, Recebido = false,
Prioridade = _prioridade,
AguardaCallback = _aguardaCallback,
Reenvios = 0,
}); });
_counter++;
} }
} }
private static void MarcarMensagemEnviada(int Id) private static void MarcarMensagemEnviada(int Id)
{ {
var Mensagem = MensagensFila.FirstOrDefault(x => x.Id == Id); lock (_lock)
if (Mensagem != null)
{ {
//Console.WriteLine("Mensagem Enviada: " + Mensagem.Mensagem); var Mensagem = MensagensFila.FirstOrDefault(x => x.Id == Id);
Mensagem.Enviado = true; if (Mensagem != null && !Mensagem.Enviado)
Mensagem.EnviadoEm = DateTime.Now; {
Console.WriteLine($"Marcando mensagem {Id} como enviada: {Mensagem.Mensagem}");
Mensagem.Enviado = true;
Mensagem.EnviadoEm = DateTime.Now;
}
} }
} }
public static void MarcarMensagemRecebida(int Id) public static void MarcarMensagemRecebida(int Id)
{ {
try lock (_lock)
{ {
var Mensagem = MensagensFila.FirstOrDefault(x => x.Id == Id); var Mensagem = MensagensFila.FirstOrDefault(x => x.Id == Id);
if (Mensagem != null) if (Mensagem != null && !Mensagem.Recebido)
{ {
Mensagem.Enviado = true; Mensagem.Enviado = true;
Mensagem.Recebido = true; Mensagem.Recebido = true;
Mensagem.RecebidoEm = DateTime.Now; Mensagem.RecebidoEm = DateTime.Now;
Console.WriteLine($"Mensagem {Id} marcada como recebida: {Mensagem.Mensagem}");
} }
} }
catch
{
MarcarMensagemRecebida(Id);
}
} }
private static bool RealizarEnvio(MensagemFilaModel Mensagem) private static bool RealizarEnvio(MensagemFilaModel Mensagem)
{ {
var Dispositivo = Variaveis.DispositivosConectados.FirstOrDefault(x => x.Dispositivo == Mensagem.Dispositivo); var Dispositivo = Variaveis.DispositivosConectados.FirstOrDefault(x => x.Dispositivo == Mensagem.Dispositivo);
@ -107,64 +113,113 @@ namespace AgroBase.Services
public static bool ExistemMensagensPendentesEnvio(T_Code Dispositivo) public static bool ExistemMensagensPendentesEnvio(T_Code Dispositivo)
{ {
return MensagensFila.Any(x => x.Dispositivo == Dispositivo && !x.Enviado); lock (_lock)
{
return MensagensFila.Any(x => x.Dispositivo == Dispositivo && !x.Enviado);
}
} }
public static bool ExistemMensagensPendentesResposta(T_Code Dispositivo) public static bool ExistemMensagensPendentesResposta(T_Code Dispositivo)
{ {
return MensagensFila.Any(x => x.Dispositivo == Dispositivo && x.Enviado && !x.Recebido); lock (_lock)
{
return MensagensFila.Any(x => x.Dispositivo == Dispositivo && x.Enviado && !x.Recebido);
}
} }
private static bool FilaLiberada(T_Code Dispositivo) private static bool FilaLiberada(T_Code Dispositivo)
{ {
// Consulta mensagens do dispositivo lock (_lock)
var Fila = MensagensFila.Where(x => x.Dispositivo == Dispositivo).OrderBy(x => x.AdicionadoEm).ToList();
// Verifica se existe alguma mensagem que foi enviada e ainda não foi respondida
var MensagemPendente = Fila.FirstOrDefault(x => x.Enviado && !x.Recebido);
// Caso não hajam mensagens pendentes, então a fila está liberada
bool Liberado = MensagemPendente == null;
if (!Liberado)
{ {
// Se a mensagem pendente já foi enviada a mais de um segundo, recoloca ela na fila var Fila = MensagensFila.Where(x => x.Dispositivo == Dispositivo).OrderBy(x => x.AdicionadoEm);
if (MensagemPendente.EnviadoEm?.AddSeconds(1) < DateTime.Now) var MensagemPendente = Fila.FirstOrDefault(x => x.Enviado && !x.Recebido);
{ bool Liberado = MensagemPendente == null || (!MensagemPendente.AguardaCallback || MensagemPendente.EnviadoEm.Value.AddMilliseconds(1500) <= DateTime.Now);
MensagemPendente.Enviado = false;
MensagemPendente.AdicionadoEm = DateTime.Now; return Liberado;
Liberado = true;
}
} }
if (Dispositivo == T_Code.Dir && Fila.Any())
{
}
return Liberado;
} }
public static async Task EnviarMensagensLoop() public static async Task EnviarMensagensLoop()
{ {
while (true) while (true)
{ {
var Filas = MensagensFila.Where(x => !x.Enviado).GroupBy(x => x.Dispositivo).ToList(); RemoverDuplicatas();
foreach (var Fila in Filas)
{
if (FilaLiberada(Fila.Key))
{
var Mensagem = Fila.OrderBy(x => x.AdicionadoEm).FirstOrDefault();
if (RealizarEnvio(Mensagem)) lock (_lock)
{
var Filas = MensagensFila.Where(x => !x.Enviado).GroupBy(x => x.Dispositivo);
foreach (var Fila in Filas)
{
var Dispositivo = Variaveis.DispositivosConectados.FirstOrDefault(x => x.Dispositivo == Fila.Key);
if (!Dispositivo._Porta.IsOpen)
{ {
MarcarMensagemEnviada(Mensagem.Id); lock (_lock)
{
MensagensFila.RemoveAll(x => x.Dispositivo == Fila.Key);
}
continue;
}
if (FilaLiberada(Fila.Key))
{
MensagemFilaModel Mensagem = null;
lock (_lock)
{
Mensagem = MensagensFila.Where(x => x.Dispositivo == Fila.Key).OrderByDescending(x => x.Prioridade).ThenBy(x => x.AdicionadoEm).FirstOrDefault(x => !x.Enviado);
}
if (Mensagem != null)
{
if (RealizarEnvio(Mensagem))
{
MarcarMensagemEnviada(Mensagem.Id);
}
}
} }
} }
} }
VerificarMensagensSemResposta();
await Task.Delay(10); await Task.Delay(10);
} }
} }
private static void RemoverDuplicatas()
{
lock (_lock)
{
var mensagensAgrupadas = MensagensFila
.Where(x => !x.Enviado)
.GroupBy(x => new { x.Dispositivo, x.ID_Modulo, x.Mensagem })
.Select(g => g.OrderBy(x => x.AdicionadoEm).First())
.ToList();
// Remover todas as mensagens não enviadas
MensagensFila.RemoveAll(x => !x.Enviado);
// Adicionar de volta apenas as mensagens mais antigas de cada grupo
MensagensFila.AddRange(mensagensAgrupadas);
MensagensFila.RemoveAll(x => x.Enviado && x.Recebido);
}
}
private static void VerificarMensagensSemResposta()
{
lock (_lock)
{
var mensagensSemResposta = MensagensFila
.Where(x => x.Enviado && !x.Recebido && x.EnviadoEm.Value.AddMilliseconds(1500) <= DateTime.Now && x.Reenvios < 5)
.ToList();
foreach (var Mensagem in mensagensSemResposta)
{
Mensagem.Enviado = false;
Mensagem.AdicionadoEm = DateTime.Now;
Mensagem.Reenvios++;
}
}
}
} }
} }

View File

@ -25,10 +25,11 @@ namespace AgroBase.Services
string StatusPorta(); string StatusPorta();
Control InstanciarDispositivo(int index); Control InstanciarDispositivo(int index);
void AtualizaIndex(int index); void AtualizaIndex(int index);
void AcaoConexao();
void AcaoDesconectar(); void AcaoDesconectar();
void SalvarParametros(DispositivoBaseModel dados); void SalvarParametros(DispositivoBaseModel dados);
void LimparBufferSerial(bool LimparConsole); void LimparBufferSerial(bool LimparConsole);
void AdicionarMensagemFila(string Mod_ID, string Protocolo); void AdicionarMensagemFila(string Mod_ID, string Protocolo, bool _prioridade, bool _aguardaCallback);
void EnviarDadosSerial(string Protocolo); void EnviarDadosSerial(string Protocolo);
void btnConectar_Click(object sender, EventArgs e); void btnConectar_Click(object sender, EventArgs e);
} }

View File

@ -58,29 +58,28 @@ namespace AgroBase.Services
bool PortaDispositivoProprio = false; bool PortaDispositivoProprio = false;
if (Variaveis.OperacaoEmAndamento.DispMvd == null)
{
await TentarIdentificarDispositivo(_Porta);
continue;
}
try try
{ {
_Porta.Open(); _Porta.Open();
foreach (var Modulo in Variaveis.OperacaoEmAndamento.DispMvd.Dados.Modulos) foreach (var Modulo in Variaveis.OperacaoEmAndamento.DispMvd.Dados.Modulos)
{ {
string ProtocoloCheck = string ProtocoloCheck = Modulo.ProtocoloVerificacao(true);
BeginLine +
0 + SplitMessage +
Modulo.Modulo_ID + SplitMessage +
((int)F_Code.Chk).ToString() + SplitMessage +
"check" +
EndLine;
_Porta.Write(ProtocoloCheck); _Porta.Write(ProtocoloCheck);
await Task.Delay(1000); await AguardaRespostaPorta(_Porta, 1000);
PortaDispositivoProprio = ProcessarRespostaDispositivo(_Porta);
bool respondeu = ProcessarRespostaDispositivo(_Porta);
if (!PortaDispositivoProprio) if (!PortaDispositivoProprio)
{ {
break; PortaDispositivoProprio = respondeu;
} }
}; };
} }
@ -116,6 +115,11 @@ namespace AgroBase.Services
private static bool ProcessarRespostaDispositivo(SerialPort Porta) private static bool ProcessarRespostaDispositivo(SerialPort Porta)
{ {
if (Porta.BytesToRead == 0)
{
return false;
}
string Recebido = Porta.ReadLine(); string Recebido = Porta.ReadLine();
if (Recebido.Length > 2) if (Recebido.Length > 2)
@ -130,26 +134,19 @@ namespace AgroBase.Services
F_Code Verificacao = F_Code.Nda; F_Code Verificacao = F_Code.Nda;
int Versao = 0; int Versao = 0;
var Dados = Recebido.Split(';'); var Dados = Recebido.Split(SplitMessage[0]);
string Mod_ID = Dados[0]; string Mod_ID = Dados[0];
int code = 0; int.TryParse(Dados[1], out int check);
int.TryParse(Dados[1], out code); Verificacao = (F_Code)check;
if (code == 0)
{ if (Verificacao == F_Code.Msg)
return false;
}
if ((F_Code)code == F_Code.Msg)
{ {
return true; return true;
} }
Dispositivo = (T_Code)(int.Parse(Dados[1])); Dispositivo = (T_Code)(int.Parse(Dados[2]));
int.TryParse(Dados[2], out int check);
Verificacao = (F_Code)check;
int.TryParse(Dados[3], out int versao); int.TryParse(Dados[3], out int versao);
Versao = versao; Versao = versao;
@ -251,7 +248,7 @@ namespace AgroBase.Services
return Encontrado; return Encontrado;
} }
} }
if (!BLD300RService.Iniciado) if (false && !BLD300RService.Iniciado)
{ {
bool Encontrado = await BLD300RService.VerificaPortaBLD(porta); bool Encontrado = await BLD300RService.VerificaPortaBLD(porta);
if (Encontrado) if (Encontrado)
@ -259,7 +256,7 @@ namespace AgroBase.Services
return Encontrado; return Encontrado;
} }
} }
if (!WT901CService.Iniciado) if (false && !WT901CService.Iniciado)
{ {
bool Encontrado = await WT901CService.VerificaPortaWT901C(porta); bool Encontrado = await WT901CService.VerificaPortaWT901C(porta);
if (Encontrado) if (Encontrado)
@ -319,5 +316,14 @@ namespace AgroBase.Services
return buffer.ToArray(); return buffer.ToArray();
} }
public static async Task AguardaRespostaPorta(SerialPort _Porta, int Timeout)
{
DateTime inicio = DateTime.Now;
while (_Porta.BytesToRead == 0 && DateTime.Now < inicio.AddMilliseconds(Timeout))
{
await Task.Delay(50);
}
}
} }
} }

View File

@ -24,6 +24,10 @@ namespace AgroBase.Services
{ {
return true; return true;
} }
else if (PortaWT901C == null)
{
return false;
}
try try
{ {

File diff suppressed because one or more lines are too long

View File

@ -0,0 +1 @@
[{"Momento":"2024-06-10T11:03:09.9458033-03:00","Protocolo":"@1;ET;258;ET,1,1000,0,1,0,3,0,17,0,16,0,4$","Enviado":true},{"Momento":"2024-06-10T11:03:09.9656327-03:00","Protocolo":"ET;#1;211;ET;1$\r","Enviado":false},{"Momento":"2024-06-10T11:03:17.6661218-03:00","Protocolo":"@2;ET;258;Mov,1,0x01,2,0,800,0,34$","Enviado":true},{"Momento":"2024-06-10T11:03:19.2659661-03:00","Protocolo":"ET;#2;211;Mov;0$\r","Enviado":false},{"Momento":"2024-06-10T11:03:19.2756128-03:00","Protocolo":"ET;#2;211;Mov;0$\r","Enviado":false},{"Momento":"2024-06-10T11:03:25.0557819-03:00","Protocolo":"@3;ET;258;Mov,0,0x01,2,0,800,0,34$","Enviado":true},{"Momento":"2024-06-10T11:03:25.0685988-03:00","Protocolo":"ET;#3;211;Mov;0$\r","Enviado":false},{"Momento":"2024-06-10T11:03:25.1693276-03:00","Protocolo":"@4;ET;258;ET,0,1000,0,1,0,3,0,17,0,16,0,4$","Enviado":true},{"Momento":"2024-06-10T11:03:25.5915404-03:00","Protocolo":"ET;#4;211;ET;0$\r","Enviado":false}

View File

@ -0,0 +1 @@
[{"Momento":"2024-06-10T09:04:12.6951341-03:00","Protocolo":"@1;EF;258;EF,1,1000,0,1,0,3,0,17,0,16,0,4$","Enviado":true},{"Momento":"2024-06-10T09:04:12.7234616-03:00","Protocolo":"Modbus Inicializado\r","Enviado":false},{"Momento":"2024-06-10T09:04:12.8229177-03:00","Protocolo":"EF;#211;EF;1$\r","Enviado":false},{"Momento":"2024-06-10T09:04:20.4735116-03:00","Protocolo":"@2;EF;258;Mov,1,0x01,2,0,800,0,34$","Enviado":true},{"Momento":"2024-06-10T09:04:22.6329913-03:00","Protocolo":"@1;EF;258;EF,1,1000,0,1,0,3,0,17,0,16,0,4$","Enviado":true},{"Momento":"2024-06-10T09:04:27.1008232-03:00","Protocolo":"@2;EF;258;Mov,1,0x01,2,0,800,0,34$","Enviado":true},{"Momento":"2024-06-10T09:04:30.7626693-03:00","Protocolo":"EF;655,1,$\r","Enviado":false},{"Momento":"2024-06-10T09:04:30.7626693-03:00","Protocolo":"@1;EF;258;EF,1,1000,0,1,0,3,0,17,0,16,0,4$","Enviado":true},{"Momento":"2024-06-10T09:04:30.7626693-03:00","Protocolo":"Erro ao enviar comando\r","Enviado":false},{"Momento":"2024-06-10T09:04:30.7727011-03:00","Protocolo":"Erro ao enviar comando\r","Enviado":false},{"Momento":"2024-06-10T09:04:30.7727011-03:00","Protocolo":"EF;#211;Mov;0$\r","Enviado":false},{"Momento":"2024-06-10T09:04:30.7727011-03:00","Protocolo":"EF;655,2,$\r","Enviado":false},{"Momento":"2024-06-10T09:04:30.7773248-03:00","Protocolo":"Modbus Inicializado\r","Enviado":false},{"Momento":"2024-06-10T09:04:30.7829927-03:00","Protocolo":"EF;#211;EF;1$\r","Enviado":false},{"Momento":"2024-06-10T09:04:51.0825299-03:00","Protocolo":"EF;655,1,$\r","Enviado":false},{"Momento":"2024-06-10T09:05:10.8224738-03:00","Protocolo":"@3;EF;258;Mov,0,0x01,2,0,800,0,34$","Enviado":true},{"Momento":"2024-06-10T09:05:10.8375943-03:00","Protocolo":"EF;Mov nao esta inicializado\r","Enviado":false},{"Momento":"2024-06-10T09:05:10.8428673-03:00","Protocolo":"EF;#211;Mov;0$\r","Enviado":false},{"Momento":"2024-06-10T09:05:11.3532059-03:00","Protocolo":"EF;655,3,$\r","Enviado":false},{"Momento":"2024-06-10T09:05:11.3626712-03:00","Protocolo":"@4;EF;258;EF,0,1000,0,1,0,3,0,17,0,16,0,4$","Enviado":true},{"Momento":"2024-06-10T09:05:11.3827246-03:00","Protocolo":"Modbus Inicializado\r","Enviado":false},{"Momento":"2024-06-10T09:05:11.4939788-03:00","Protocolo":"EF;#211;EF;0$\r","Enviado":false}

View File

@ -0,0 +1 @@
[{"Momento":"2024-06-10T15:06:25.351838-03:00","Protocolo":"@1;ET;258;ET,1,1000,0,1,0,3,0,17,0,16,0,4$","Enviado":true},{"Momento":"2024-06-10T15:06:25.3655322-03:00","Protocolo":"ET;#211;ET;1$\r","Enviado":false},{"Momento":"2024-06-10T15:06:25.4819552-03:00","Protocolo":"ET;655,1,$\r","Enviado":false},{"Momento":"2024-06-10T15:06:25.5821626-03:00","Protocolo":"@2;ET;258;Mov,1,0x01,2,0,800,0,34$","Enviado":true},{"Momento":"2024-06-10T15:06:26.3823937-03:00","Protocolo":"ET;#211;Mov;1$\r","Enviado":false},{"Momento":"2024-06-10T15:06:26.8961955-03:00","Protocolo":"ET;655,2,$\r","Enviado":false},{"Momento":"2024-06-10T15:06:46.3535394-03:00","Protocolo":"@3;ET;293;Mov,1,211,0$","Enviado":true},{"Momento":"2024-06-10T15:06:46.6034787-03:00","Protocolo":"ET;655,3,$\r","Enviado":false},{"Momento":"2024-06-10T15:06:51.0038897-03:00","Protocolo":"@4;ET;293;Mov,0,0,0$","Enviado":true},{"Momento":"2024-06-10T15:06:51.2543629-03:00","Protocolo":"ET;655,4,$\r","Enviado":false},{"Momento":"2024-06-10T15:06:54.2183994-03:00","Protocolo":"@5;ET;293;Mov,2,211,0$","Enviado":true},{"Momento":"2024-06-10T15:06:54.4684882-03:00","Protocolo":"ET;655,5,$\r","Enviado":false},{"Momento":"2024-06-10T15:06:54.5406139-03:00","Protocolo":"@6;ET;293;Mov,0,0,0$","Enviado":true},{"Momento":"2024-06-10T15:06:54.7906942-03:00","Protocolo":"ET;655,6,$\r","Enviado":false},{"Momento":"2024-06-10T15:06:54.8883579-03:00","Protocolo":"@7;ET;293;Mov,2,211,0$","Enviado":true},{"Momento":"2024-06-10T15:06:55.1379733-03:00","Protocolo":"ET;655,7,$\r","Enviado":false},{"Momento":"2024-06-10T15:06:59.2419059-03:00","Protocolo":"@8;ET;293;Mov,0,0,0$","Enviado":true},{"Momento":"2024-06-10T15:06:59.4918371-03:00","Protocolo":"ET;655,8,$\r","Enviado":false},{"Momento":"2024-06-10T15:07:01.8665072-03:00","Protocolo":"@9;ET;293;Mov,2,211,0$","Enviado":true},{"Momento":"2024-06-10T15:07:02.1120921-03:00","Protocolo":"ET;655,9,$\r","Enviado":false},{"Momento":"2024-06-10T15:07:04.3063031-03:00","Protocolo":"@10;ET;293;Mov,0,0,0$","Enviado":true},{"Momento":"2024-06-10T15:07:04.5565022-03:00","Protocolo":"ET;655,10,$\r","Enviado":false},{"Momento":"2024-06-10T15:07:04.6393648-03:00","Protocolo":"@11;ET;293;Mov,2,211,0$","Enviado":true},{"Momento":"2024-06-10T15:07:04.8892749-03:00","Protocolo":"ET;655,11,$\r","Enviado":false},{"Momento":"2024-06-10T15:07:04.9902773-03:00","Protocolo":"@12;ET;293;Mov,0,0,0$","Enviado":true},{"Momento":"2024-06-10T15:07:05.2403344-03:00","Protocolo":"ET;655,12,$\r","Enviado":false},{"Momento":"2024-06-10T15:07:05.3252726-03:00","Protocolo":"@13;ET;293;Mov,2,211,0$","Enviado":true},{"Momento":"2024-06-10T15:07:05.5721775-03:00","Protocolo":"ET;655,13,$\r","Enviado":false},{"Momento":"2024-06-10T15:07:05.7902438-03:00","Protocolo":"@14;ET;293;Mov,0,0,0$","Enviado":true},{"Momento":"2024-06-10T15:07:06.0406859-03:00","Protocolo":"ET;655,14,$\r","Enviado":false},{"Momento":"2024-06-10T15:07:12.7718968-03:00","Protocolo":"@15;ET;293;Mov,1,357,0$","Enviado":true},{"Momento":"2024-06-10T15:07:13.0218929-03:00","Protocolo":"ET;655,15,$\r","Enviado":false},{"Momento":"2024-06-10T15:07:16.6560372-03:00","Protocolo":"@16;ET;293;Mov,0,0,0$","Enviado":true},{"Momento":"2024-06-10T15:07:16.9052365-03:00","Protocolo":"ET;655,16,$\r","Enviado":false},{"Momento":"2024-06-10T15:07:18.2369353-03:00","Protocolo":"@17;ET;293;Mov,2,357,0$","Enviado":true},{"Momento":"2024-06-10T15:07:18.4866625-03:00","Protocolo":"ET;655,17,$\r","Enviado":false},{"Momento":"2024-06-10T15:07:21.3585248-03:00","Protocolo":"@18;ET;293;Mov,0,0,0$","Enviado":true},{"Momento":"2024-06-10T15:07:21.6078024-03:00","Protocolo":"ET;655,18,$\r","Enviado":false},{"Momento":"2024-06-10T15:07:24.775246-03:00","Protocolo":"@19;ET;293;Mov,1,357,0$","Enviado":true},{"Momento":"2024-06-10T15:07:25.0260733-03:00","Protocolo":"ET;655,19,$\r","Enviado":false},{"Momento":"2024-06-10T15:07:26.3418984-03:00","Protocolo":"@20;ET;293;Mov,0,0,0$","Enviado":true},{"Momento":"2024-06-10T15:07:26.5954031-03:00","Protocolo":"ET;655,20,$\r","Enviado":false},{"Momento":"2024-06-10T15:07:33.1063904-03:00","Protocolo":"@21;ET;258;Mov,0,0x01,2,0,800,0,34$","Enviado":true},{"Momento":"2024-06-10T15:07:33.1119508-03:00","Protocolo":"ET;#211;Mov;0$\r","Enviado":false},{"Momento":"2024-06-10T15:07:33.6299591-03:00","Protocolo":"ET;655,21,$\r","Enviado":false},{"Momento":"2024-06-10T15:07:33.6741237-03:00","Protocolo":"@22;ET;258;ET,0,1000,0,1,0,3,0,17,0,16,0,4$","Enviado":true},{"Momento":"2024-06-10T15:07:33.6942689-03:00","Protocolo":"ET;#211;ET;0$\r","Enviado":false},{"Momento":"2024-06-10T15:07:33.8054569-03:00","Protocolo":"ET;655,22,$\r","Enviado":false}

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

@ -0,0 +1 @@
[{"Momento":"2024-06-10T16:21:10.6698458-03:00","Protocolo":"@1;ET;258;ET,1,1000,0,1,0,3,0,17,0,16,0,4$","Enviado":true},{"Momento":"2024-06-10T16:21:10.6859603-03:00","Protocolo":"ET;#211;ET;1$\r","Enviado":false},{"Momento":"2024-06-10T16:21:10.7943954-03:00","Protocolo":"ET;655,1,$\r","Enviado":false},{"Momento":"2024-06-10T16:21:10.8062057-03:00","Protocolo":"@2;ET;258;Mov,1,0x01,2,0,800,0,34$","Enviado":true},{"Momento":"2024-06-10T16:21:10.8140269-03:00","Protocolo":"ET;#211;Mov;1$\r","Enviado":false},{"Momento":"2024-06-10T16:21:11.3287792-03:00","Protocolo":"ET;655,2,$\r","Enviado":false},{"Momento":"2024-06-10T16:21:20.7374457-03:00","Protocolo":"@3;ET;258;Mov,0,0x01,2,0,800,0,34$","Enviado":true},{"Momento":"2024-06-10T16:21:20.744062-03:00","Protocolo":"ET;#211;Mov;0$\r","Enviado":false},{"Momento":"2024-06-10T16:21:21.2555126-03:00","Protocolo":"ET;655,3,$\r","Enviado":false},{"Momento":"2024-06-10T16:21:21.2738882-03:00","Protocolo":"@4;ET;258;ET,0,1000,0,1,0,3,0,17,0,16,0,4$","Enviado":true},{"Momento":"2024-06-10T16:21:21.2928912-03:00","Protocolo":"ET;#211;ET;0$\r","Enviado":false},{"Momento":"2024-06-10T16:21:21.4039417-03:00","Protocolo":"ET;655,4,$\r","Enviado":false},{"Momento":"2024-06-10T16:21:24.09403-03:00","Protocolo":"@5;ET;258;ET,1,1000,0,1,0,3,0,17,0,16,0,4$","Enviado":true},{"Momento":"2024-06-10T16:21:24.1140238-03:00","Protocolo":"ET;#211;ET;1$\r","Enviado":false},{"Momento":"2024-06-10T16:21:24.2240733-03:00","Protocolo":"ET;655,5,$\r","Enviado":false},{"Momento":"2024-06-10T16:21:24.2377766-03:00","Protocolo":"@6;ET;258;Mov,1,0x01,2,0,800,0,34$","Enviado":true},{"Momento":"2024-06-10T16:21:25.0437832-03:00","Protocolo":"ET;#211;Mov;1$\r","Enviado":false},{"Momento":"2024-06-10T16:21:25.5562577-03:00","Protocolo":"ET;655,6,$\r","Enviado":false},{"Momento":"2024-06-10T16:21:33.1059946-03:00","Protocolo":"@7;ET;258;Mov,0,0x01,2,0,800,0,34$","Enviado":true},{"Momento":"2024-06-10T16:21:33.1219681-03:00","Protocolo":"ET;#211;Mov;0$\r","Enviado":false},{"Momento":"2024-06-10T16:21:33.6238766-03:00","Protocolo":"ET;655,7,$\r","Enviado":false},{"Momento":"2024-06-10T16:21:33.6379586-03:00","Protocolo":"@8;ET;258;ET,0,1000,0,1,0,3,0,17,0,16,0,4$","Enviado":true},{"Momento":"2024-06-10T16:21:33.6601245-03:00","Protocolo":"ET;#211;ET;0$\r","Enviado":false},{"Momento":"2024-06-10T16:21:33.7643599-03:00","Protocolo":"ET;655,8,$\r","Enviado":false},{"Momento":"2024-06-10T16:22:29.4965971-03:00","Protocolo":"@9;ET;258;ET,1,1000,0,1,0,3,0,17,0,16,0,4$","Enviado":true},{"Momento":"2024-06-10T16:22:29.5136098-03:00","Protocolo":"ET;#211;ET;1$\r","Enviado":false},{"Momento":"2024-06-10T16:22:29.6238979-03:00","Protocolo":"ET;655,9,$\r","Enviado":false},{"Momento":"2024-06-10T16:22:29.6540373-03:00","Protocolo":"@10;ET;258;Mov,1,0x01,2,0,800,0,34$","Enviado":true},{"Momento":"2024-06-10T16:22:30.4543656-03:00","Protocolo":"ET;#211;Mov;1$\r","Enviado":false},{"Momento":"2024-06-10T16:22:30.971035-03:00","Protocolo":"ET;655,10,$\r","Enviado":false},{"Momento":"2024-06-10T16:22:35.5642911-03:00","Protocolo":"@11;ET;258;Mov,0,0x01,2,0,800,0,34$","Enviado":true},{"Momento":"2024-06-10T16:22:35.5805115-03:00","Protocolo":"ET;#211;Mov;0$\r","Enviado":false},{"Momento":"2024-06-10T16:22:36.0844321-03:00","Protocolo":"ET;655,11,$\r","Enviado":false},{"Momento":"2024-06-10T16:22:36.1065292-03:00","Protocolo":"@12;ET;258;ET,0,1000,0,1,0,3,0,17,0,16,0,4$","Enviado":true},{"Momento":"2024-06-10T16:22:36.1240151-03:00","Protocolo":"ET;#211;ET;0$\r","Enviado":false},{"Momento":"2024-06-10T16:22:36.2343624-03:00","Protocolo":"ET;655,12,$\r","Enviado":false},{"Momento":"2024-06-10T16:22:38.4341424-03:00","Protocolo":"@13;ET;258;ET,1,1000,0,1,0,3,0,17,0,16,0,4$","Enviado":true},{"Momento":"2024-06-10T16:22:38.4600647-03:00","Protocolo":"ET;#211;ET;1$\r","Enviado":false},{"Momento":"2024-06-10T16:22:38.5710915-03:00","Protocolo":"ET;655,13,$\r","Enviado":false},{"Momento":"2024-06-10T16:22:38.5803218-03:00","Protocolo":"@14;ET;258;Mov,1,0x01,2,0,800,0,34$","Enviado":true},{"Momento":"2024-06-10T16:22:39.3842425-03:00","Protocolo":"ET;#211;Mov;1$\r","Enviado":false},{"Momento":"2024-06-10T16:22:39.9002981-03:00","Protocolo":"ET;655,14,$\r","Enviado":false},{"Momento":"2024-06-10T16:22:45.5843284-03:00","Protocolo":"@15;ET;258;Mov,0,0x01,2,0,800,0,34$","Enviado":true},{"Momento":"2024-06-10T16:22:45.5843284-03:00","Protocolo":"ET;#211;Mov;0$\r","Enviado":false},{"Momento":"2024-06-10T16:22:46.0950236-03:00","Protocolo":"ET;655,15,$\r","Enviado":false},{"Momento":"2024-06-10T16:22:46.1138622-03:00","Protocolo":"@16;ET;258;ET,0,1000,0,1,0,3,0,17,0,16,0,4$","Enviado":true},{"Momento":"2024-06-10T16:22:46.1338569-03:00","Protocolo":"ET;#211;ET;0$\r","Enviado":false},{"Momento":"2024-06-10T16:22:46.2453628-03:00","Protocolo":"ET;655,16,$\r","Enviado":false}

View File

@ -0,0 +1 @@
[{"Momento":"2024-06-10T14:22:43.6344801-03:00","Protocolo":"@1;EF;258;EF,1,1000,0,1,0,3,0,17,0,16,0,4$","Enviado":true},{"Momento":"2024-06-10T14:22:43.6412333-03:00","Protocolo":"EF;#211;EF;1$\r","Enviado":false},{"Momento":"2024-06-10T14:22:50.0092883-03:00","Protocolo":"@2;EF;258;Mov,1,0x01,2,0,800,0,34$","Enviado":true},{"Momento":"2024-06-10T14:22:50.0118652-03:00","Protocolo":"EF;655,1,$\r","Enviado":false},{"Momento":"2024-06-10T14:22:52.817566-03:00","Protocolo":"EF;#211;Mov;0$\r","Enviado":false},{"Momento":"2024-06-10T14:22:52.8569452-03:00","Protocolo":"EF;655,2,$\r","Enviado":false},{"Momento":"2024-06-10T14:23:00.9008055-03:00","Protocolo":"@3;EF;258;Mov,0,0x01,2,0,800,0,34$","Enviado":true},{"Momento":"2024-06-10T14:23:00.9109123-03:00","Protocolo":"EF;#211;Mov;0$\r","Enviado":false},{"Momento":"2024-06-10T14:23:01.4212917-03:00","Protocolo":"EF;655,3,$\r","Enviado":false},{"Momento":"2024-06-10T14:23:01.4658532-03:00","Protocolo":"@4;EF;258;EF,0,1000,0,1,0,3,0,17,0,16,0,4$","Enviado":true},{"Momento":"2024-06-10T14:23:01.4810674-03:00","Protocolo":"EF;#211;EF;0$\r","Enviado":false},{"Momento":"2024-06-10T14:23:03.1219012-03:00","Protocolo":"EF;655,4,$\r","Enviado":false},{"Momento":"2024-06-10T14:23:14.8333429-03:00","Protocolo":"@5;EF;258;Mov,0,0x01,2,0,800,0,34$","Enviado":true},{"Momento":"2024-06-10T14:23:14.8413902-03:00","Protocolo":"EF;#211;Mov;0$\r","Enviado":false},{"Momento":"2024-06-10T14:23:15.3512731-03:00","Protocolo":"EF;655,5,$\r","Enviado":false},{"Momento":"2024-06-10T14:23:15.3894222-03:00","Protocolo":"@6;EF;258;EF,0,1000,0,1,0,3,0,17,0,16,0,4$","Enviado":true},{"Momento":"2024-06-10T14:23:15.4045429-03:00","Protocolo":"EF;#211;EF;0$\r","Enviado":false},{"Momento":"2024-06-10T14:23:37.6801247-03:00","Protocolo":"EF;655,6,$\r","Enviado":false}

View File

@ -0,0 +1 @@
[{"Momento":"2024-06-10T14:24:19.0256501-03:00","Protocolo":"@1;EF;258;EF,1,1000,0,1,0,3,0,17,0,16,0,4$","Enviado":true},{"Momento":"2024-06-10T14:24:19.0491511-03:00","Protocolo":"EF;#211;EF;1$\r","Enviado":false},{"Momento":"2024-06-10T14:24:21.9708541-03:00","Protocolo":"@2;EF;258;Mov,1,0x01,2,0,800,0,34$","Enviado":true},{"Momento":"2024-06-10T14:24:21.9747617-03:00","Protocolo":"EF;655,1,$\r","Enviado":false},{"Momento":"2024-06-10T14:24:22.3506707-03:00","Protocolo":"EF;#211;Mov;0$\r","Enviado":false},{"Momento":"2024-06-10T14:24:22.8613541-03:00","Protocolo":"EF;655,2,$\r","Enviado":false},{"Momento":"2024-06-10T14:24:29.8713498-03:00","Protocolo":"@3;EF;258;Mov,0,0x01,2,0,800,0,34$","Enviado":true},{"Momento":"2024-06-10T14:24:29.8811229-03:00","Protocolo":"EF;#211;Mov;0$\r","Enviado":false},{"Momento":"2024-06-10T14:24:30.3914206-03:00","Protocolo":"EF;655,3,$\r","Enviado":false},{"Momento":"2024-06-10T14:24:30.4211008-03:00","Protocolo":"@4;EF;258;EF,0,1000,0,1,0,3,0,17,0,16,0,4$","Enviado":true},{"Momento":"2024-06-10T14:24:30.4423138-03:00","Protocolo":"EF;#211;EF;0$\r","Enviado":false},{"Momento":"2024-06-10T14:24:30.5514421-03:00","Protocolo":"EF;655,4,$\r","Enviado":false}

View File

@ -0,0 +1 @@
[{"Momento":"2024-06-10T14:26:35.7958575-03:00","Protocolo":"@1;ET;258;ET,1,1000,0,1,0,3,0,17,0,16,0,4$","Enviado":true},{"Momento":"2024-06-10T14:26:35.806543-03:00","Protocolo":"ET;#211;ET;1$\r","Enviado":false},{"Momento":"2024-06-10T14:26:35.9159049-03:00","Protocolo":"ET;655,1,$\r","Enviado":false},{"Momento":"2024-06-10T14:26:36.013747-03:00","Protocolo":"@2;ET;258;Mov,1,0x01,2,0,800,0,34$","Enviado":true},{"Momento":"2024-06-10T14:26:36.3952245-03:00","Protocolo":"ET;#211;Mov;0$\r","Enviado":false},{"Momento":"2024-06-10T14:26:36.9052822-03:00","Protocolo":"ET;655,2,$\r","Enviado":false},{"Momento":"2024-06-10T14:26:43.5408311-03:00","Protocolo":"@3;ET;258;Mov,0,0x01,2,0,800,0,34$","Enviado":true},{"Momento":"2024-06-10T14:26:43.5508088-03:00","Protocolo":"ET;#211;Mov;0$\r","Enviado":false},{"Momento":"2024-06-10T14:26:44.0610727-03:00","Protocolo":"ET;655,3,$\r","Enviado":false},{"Momento":"2024-06-10T14:26:44.0812492-03:00","Protocolo":"@4;ET;258;ET,0,1000,0,1,0,3,0,17,0,16,0,4$","Enviado":true},{"Momento":"2024-06-10T14:26:44.1013451-03:00","Protocolo":"ET;#211;ET;0$\r","Enviado":false},{"Momento":"2024-06-10T14:26:44.2112345-03:00","Protocolo":"ET;655,4,$\r","Enviado":false},{"Momento":"2024-06-10T14:26:49.6310034-03:00","Protocolo":"@5;ET;258;ET,1,1000,0,1,0,3,0,17,0,16,0,4$","Enviado":true},{"Momento":"2024-06-10T14:26:49.6511115-03:00","Protocolo":"ET;#211;ET;1$\r","Enviado":false},{"Momento":"2024-06-10T14:26:49.7641796-03:00","Protocolo":"ET;655,5,$\r","Enviado":false},{"Momento":"2024-06-10T14:26:49.8610499-03:00","Protocolo":"@6;ET;258;Mov,1,0x01,2,0,800,0,34$","Enviado":true},{"Momento":"2024-06-10T14:26:50.2410074-03:00","Protocolo":"ET;#211;Mov;0$\r","Enviado":false},{"Momento":"2024-06-10T14:26:50.7550072-03:00","Protocolo":"ET;655,6,$\r","Enviado":false},{"Momento":"2024-06-10T14:27:25.4814041-03:00","Protocolo":"@7;ET;258;Mov,0,0x01,2,0,800,0,34$","Enviado":true},{"Momento":"2024-06-10T14:27:25.4908997-03:00","Protocolo":"ET;#211;Mov;0$\r","Enviado":false},{"Momento":"2024-06-10T14:27:26.0010636-03:00","Protocolo":"ET;655,7,$\r","Enviado":false},{"Momento":"2024-06-10T14:27:26.051117-03:00","Protocolo":"@8;ET;258;ET,0,1000,0,1,0,3,0,17,0,16,0,4$","Enviado":true},{"Momento":"2024-06-10T14:27:26.0706946-03:00","Protocolo":"ET;#211;ET;0$\r","Enviado":false},{"Momento":"2024-06-10T14:27:26.1813673-03:00","Protocolo":"ET;655,8,$\r","Enviado":false},{"Momento":"2024-06-10T14:27:38.1157413-03:00","Protocolo":"@9;ET;258;ET,1,1000,0,1,0,3,0,17,0,16,0,4$","Enviado":true},{"Momento":"2024-06-10T14:27:38.1214805-03:00","Protocolo":"ET;#211;ET;1$\r","Enviado":false},{"Momento":"2024-06-10T14:27:38.2351146-03:00","Protocolo":"ET;655,9,$\r","Enviado":false},{"Momento":"2024-06-10T14:27:38.3310216-03:00","Protocolo":"@10;ET;258;Mov,1,0x01,2,0,800,0,34$","Enviado":true},{"Momento":"2024-06-10T14:27:38.714343-03:00","Protocolo":"ET;#211;Mov;0$\r","Enviado":false},{"Momento":"2024-06-10T14:27:39.2210946-03:00","Protocolo":"ET;655,10,$\r","Enviado":false},{"Momento":"2024-06-10T14:27:46.5986251-03:00","Protocolo":"@11;ET;258;Mov,0,0x01,2,0,800,0,34$","Enviado":true},{"Momento":"2024-06-10T14:27:46.6011322-03:00","Protocolo":"ET;#211;Mov;0$\r","Enviado":false},{"Momento":"2024-06-10T14:27:47.1149331-03:00","Protocolo":"ET;655,11,$\r","Enviado":false},{"Momento":"2024-06-10T14:27:47.1576519-03:00","Protocolo":"@12;ET;258;ET,0,1000,0,1,0,3,0,17,0,16,0,4$","Enviado":true},{"Momento":"2024-06-10T14:27:47.1707022-03:00","Protocolo":"ET;#211;ET;0$\r","Enviado":false},{"Momento":"2024-06-10T14:27:47.280991-03:00","Protocolo":"ET;655,12,$\r","Enviado":false},{"Momento":"2024-06-10T14:28:28.8497137-03:00","Protocolo":"@13;ET;258;ET,1,1000,0,1,0,3,0,17,0,16,0,4$","Enviado":true},{"Momento":"2024-06-10T14:28:28.8532111-03:00","Protocolo":"ET;#211;ET;1$\r","Enviado":false},{"Momento":"2024-06-10T14:28:28.9613667-03:00","Protocolo":"ET;655,13,$\r","Enviado":false},{"Momento":"2024-06-10T14:28:29.0539404-03:00","Protocolo":"@14;ET;258;Mov,1,0x01,2,0,800,0,34$","Enviado":true},{"Momento":"2024-06-10T14:28:29.4352072-03:00","Protocolo":"ET;#211;Mov;0$\r","Enviado":false},{"Momento":"2024-06-10T14:28:29.9412046-03:00","Protocolo":"ET;655,14,$\r","Enviado":false},{"Momento":"2024-06-10T14:28:32.5710205-03:00","Protocolo":"@15;ET;258;Mov,0,0x01,2,0,800,0,34$","Enviado":true},{"Momento":"2024-06-10T14:28:32.5856891-03:00","Protocolo":"ET;#211;Mov;0$\r","Enviado":false},{"Momento":"2024-06-10T14:28:33.0960638-03:00","Protocolo":"ET;655,15,$\r","Enviado":false},{"Momento":"2024-06-10T14:28:33.1181605-03:00","Protocolo":"@16;ET;258;ET,0,1000,0,1,0,3,0,17,0,16,0,4$","Enviado":true},{"Momento":"2024-06-10T14:28:33.1338066-03:00","Protocolo":"ET;#211;ET;0$\r","Enviado":false},{"Momento":"2024-06-10T14:28:33.2459727-03:00","Protocolo":"ET;655,16,$\r","Enviado":false}

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

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

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

File diff suppressed because one or more lines are too long

View File

@ -0,0 +1 @@
[{"Momento":"2024-06-10T09:53:03.7766646-03:00","Protocolo":"@1;ET;258;ET,1,1000,0,1,0,3,0,17,0,16,0,4$","Enviado":true},{"Momento":"2024-06-10T09:53:07.8140381-03:00","Protocolo":"Modbus Inicializado\r","Enviado":false},{"Momento":"2024-06-10T09:53:09.7101717-03:00","Protocolo":"ET;#211;ET;1$\r","Enviado":false}

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View File

@ -0,0 +1 @@
[{"Momento":"2024-06-10T10:55:32.0370989-03:00","Protocolo":"@1;EF;258;EF,1,1000,0,1,0,3,0,17,0,16,0,4$","Enviado":true},{"Momento":"2024-06-10T10:55:32.055281-03:00","Protocolo":"EF;#1;211;EF;1$\r","Enviado":false},{"Momento":"2024-06-10T10:55:32.1523514-03:00","Protocolo":"@2;EF;258;Mov,1,0x01,2,0,800,0,34$","Enviado":true},{"Momento":"2024-06-10T10:55:32.53562-03:00","Protocolo":"EF;#2;211;Mov;0$\r","Enviado":false},{"Momento":"2024-06-10T10:55:32.5558224-03:00","Protocolo":"EF;#2;211;Mov;0$\r","Enviado":false},{"Momento":"2024-06-10T10:55:33.1470721-03:00","Protocolo":"@3;ET;887;Mov,$","Enviado":true},{"Momento":"2024-06-10T10:55:35.1601185-03:00","Protocolo":"@4;ET;887;Mov,$","Enviado":true},{"Momento":"2024-06-10T10:55:37.1755398-03:00","Protocolo":"@5;ET;887;Mov,$","Enviado":true},{"Momento":"2024-06-10T10:55:39.1855723-03:00","Protocolo":"@3;ET;887;Mov,$","Enviado":true},{"Momento":"2024-06-10T10:55:41.1992715-03:00","Protocolo":"@6;ET;887;Mov,$","Enviado":true},{"Momento":"2024-06-10T10:55:43.21183-03:00","Protocolo":"@7;ET;887;Mov,$","Enviado":true},{"Momento":"2024-06-10T10:55:45.2297186-03:00","Protocolo":"@4;ET;887;Mov,$","Enviado":true},{"Momento":"2024-06-10T10:55:47.2458701-03:00","Protocolo":"@8;ET;887;Mov,$","Enviado":true},{"Momento":"2024-06-10T10:55:49.2576781-03:00","Protocolo":"@9;ET;887;Mov,$","Enviado":true},{"Momento":"2024-06-10T10:55:51.2697661-03:00","Protocolo":"@5;ET;887;Mov,$","Enviado":true},{"Momento":"2024-06-10T10:55:53.275692-03:00","Protocolo":"@10;ET;887;Mov,$","Enviado":true},{"Momento":"2024-06-10T10:55:55.2790788-03:00","Protocolo":"@11;ET;887;Mov,$","Enviado":true},{"Momento":"2024-06-10T10:55:57.2880045-03:00","Protocolo":"@3;ET;887;Mov,$","Enviado":true},{"Momento":"2024-06-10T10:55:59.2995201-03:00","Protocolo":"@12;ET;887;Mov,$","Enviado":true},{"Momento":"2024-06-10T10:56:01.3112922-03:00","Protocolo":"@13;ET;887;Mov,$","Enviado":true},{"Momento":"2024-06-10T10:56:03.3132136-03:00","Protocolo":"@6;ET;887;Mov,$","Enviado":true}

File diff suppressed because one or more lines are too long

View File

@ -0,0 +1 @@
[{"Momento":"2024-06-10T10:58:27.9615504-03:00","Protocolo":"@1;ET;258;ET,1,1000,0,1,0,3,0,17,0,16,0,4$","Enviado":true},{"Momento":"2024-06-10T10:58:27.9656361-03:00","Protocolo":"ET;#1;211;ET;1$\r","Enviado":false},{"Momento":"2024-06-10T10:58:28.0678955-03:00","Protocolo":"@2;ET;258;Mov,1,0x01,2,0,800,0,34$","Enviado":true},{"Momento":"2024-06-10T10:58:28.4558311-03:00","Protocolo":"ET;#2;211;Mov;0$\r","Enviado":false},{"Momento":"2024-06-10T10:58:28.4681393-03:00","Protocolo":"ET;#2;211;Mov;0$\r","Enviado":false},{"Momento":"2024-06-10T10:58:57.6426822-03:00","Protocolo":"@3;ET;258;Mov,0,0x01,2,0,800,0,34$","Enviado":true},{"Momento":"2024-06-10T10:58:57.6469666-03:00","Protocolo":"ET;#3;211;Mov;0$\r","Enviado":false},{"Momento":"2024-06-10T10:58:57.7557571-03:00","Protocolo":"@4;ET;258;ET,0,1000,0,1,0,3,0,17,0,16,0,4$","Enviado":true},{"Momento":"2024-06-10T10:58:58.1709479-03:00","Protocolo":"ET;#4;211;ET;0$\r","Enviado":false},{"Momento":"2024-06-10T10:59:03.189394-03:00","Protocolo":"@5;ET;258;Mov,0,0x01,2,0,800,0,34$","Enviado":true},{"Momento":"2024-06-10T10:59:03.1977046-03:00","Protocolo":"ET;#5;211;Mov;0$\r","Enviado":false},{"Momento":"2024-06-10T10:59:03.3042126-03:00","Protocolo":"@6;ET;258;ET,0,1000,0,1,0,3,0,17,0,16,0,4$","Enviado":true},{"Momento":"2024-06-10T10:59:03.7211799-03:00","Protocolo":"ET;#6;211;ET;0$\r","Enviado":false},{"Momento":"2024-06-10T10:59:07.5413485-03:00","Protocolo":"@7;ET;258;Mov,0,0x01,2,0,800,0,34$","Enviado":true},{"Momento":"2024-06-10T10:59:07.5494886-03:00","Protocolo":"ET;#7;211;Mov;0$\r","Enviado":false},{"Momento":"2024-06-10T10:59:07.6556529-03:00","Protocolo":"@8;ET;258;ET,0,1000,0,1,0,3,0,17,0,16,0,4$","Enviado":true},{"Momento":"2024-06-10T10:59:08.0719749-03:00","Protocolo":"ET;#8;211;ET;0$\r","Enviado":false},{"Momento":"2024-06-10T10:59:27.873877-03:00","Protocolo":"@9;ET;258;Mov,0,0x01,2,0,800,0,34$","Enviado":true},{"Momento":"2024-06-10T10:59:27.8826724-03:00","Protocolo":"ET;#9;211;Mov;0$\r","Enviado":false},{"Momento":"2024-06-10T10:59:28.0108105-03:00","Protocolo":"@10;ET;258;ET,0,1000,0,1,0,3,0,17,0,16,0,4$","Enviado":true},{"Momento":"2024-06-10T10:59:28.4053776-03:00","Protocolo":"ET;#10;211;ET;0$\r","Enviado":false},{"Momento":"2024-06-10T10:59:41.4294791-03:00","Protocolo":"@11;ET;258;Mov,0,0x01,2,0,800,0,34$","Enviado":true},{"Momento":"2024-06-10T10:59:41.4407689-03:00","Protocolo":"ET;#11;211;Mov;0$\r","Enviado":false},{"Momento":"2024-06-10T10:59:43.5754378-03:00","Protocolo":"@12;ET;258;ET,0,1000,0,1,0,3,0,17,0,16,0,4$","Enviado":true},{"Momento":"2024-06-10T10:59:48.2109066-03:00","Protocolo":"ET;#12;211;ET;0$\r","Enviado":false},{"Momento":"2024-06-10T11:00:10.9906973-03:00","Protocolo":"@13;ET;258;Mov,0,0x01,2,0,800,0,34$","Enviado":true},{"Momento":"2024-06-10T11:00:10.9955834-03:00","Protocolo":"ET;#13;211;Mov;0$\r","Enviado":false},{"Momento":"2024-06-10T11:00:14.3955876-03:00","Protocolo":"@14;ET;258;ET,0,1000,0,1,0,3,0,17,0,16,0,4$","Enviado":true},{"Momento":"2024-06-10T11:00:14.4257283-03:00","Protocolo":"ET;#14;211;ET;0$\r","Enviado":false}

File diff suppressed because one or more lines are too long

View File

@ -0,0 +1 @@
[{"Momento":"2024-06-11T13:17:31.4476001-03:00","Protocolo":"@1;EF;258;EF,1,1000,0,1,0,3,0,17,0,16,0,4$","Enviado":true},{"Momento":"2024-06-11T13:17:31.4577215-03:00","Protocolo":"EF;#211;EF;1$\r","Enviado":false},{"Momento":"2024-06-11T13:17:31.5747315-03:00","Protocolo":"EF;655,1,$\r","Enviado":false},{"Momento":"2024-06-11T13:17:31.5824842-03:00","Protocolo":"@2;EF;258;Mov,1,0x01,4,0,800,0,34$","Enviado":true},{"Momento":"2024-06-11T13:17:32.5976345-03:00","Protocolo":"Erro ao enviar comando\r","Enviado":false},{"Momento":"2024-06-11T13:17:33.0975218-03:00","Protocolo":"@3;EF;258;Dir,1,0,0,0,25,0,33,0,32,0,35$","Enviado":true},{"Momento":"2024-06-11T13:17:33.6120877-03:00","Protocolo":"Erro ao enviar comando\r","Enviado":false},{"Momento":"2024-06-11T13:17:34.1176099-03:00","Protocolo":"EF;#211;Mov;0$\r","Enviado":false},{"Momento":"2024-06-11T13:17:34.1377613-03:00","Protocolo":"EF;655,2,$\r","Enviado":false},{"Momento":"2024-06-11T13:17:34.6492985-03:00","Protocolo":"EF;#211;Dir;1$\r","Enviado":false},{"Momento":"2024-06-11T13:17:35.1378646-03:00","Protocolo":"EF;655,3,$\r","Enviado":false},{"Momento":"2024-06-11T13:17:36.1376781-03:00","Protocolo":"EF;#111;Dir;2;78$\r","Enviado":false},{"Momento":"2024-06-11T13:17:37.1376498-03:00","Protocolo":"EF;#111;Dir;2;83$\r","Enviado":false},{"Momento":"2024-06-11T13:17:38.1374308-03:00","Protocolo":"EF;#111;Dir;2;78$\r","Enviado":false},{"Momento":"2024-06-11T13:17:39.138115-03:00","Protocolo":"EF;#111;Dir;2;78$\r","Enviado":false},{"Momento":"2024-06-11T13:17:40.1376181-03:00","Protocolo":"EF;#111;Dir;1;81$\r","Enviado":false},{"Momento":"2024-06-11T13:17:41.1379318-03:00","Protocolo":"EF;#111;Dir;1;75$\r","Enviado":false},{"Momento":"2024-06-11T13:17:42.1381209-03:00","Protocolo":"EF;#111;Dir;1;81$\r","Enviado":false},{"Momento":"2024-06-11T13:17:43.1396422-03:00","Protocolo":"EF;#111;Dir;2;78$\r","Enviado":false},{"Momento":"2024-06-11T13:17:44.1379332-03:00","Protocolo":"EF;#111;Dir;1;73$\r","Enviado":false},{"Momento":"2024-06-11T13:17:45.1377851-03:00","Protocolo":"EF;#111;Dir;1;81$\r","Enviado":false},{"Momento":"2024-06-11T13:17:46.1378305-03:00","Protocolo":"EF;#111;Dir;2;76$\r","Enviado":false},{"Momento":"2024-06-11T13:17:47.1378006-03:00","Protocolo":"EF;#111;Dir;1;75$\r","Enviado":false},{"Momento":"2024-06-11T13:17:48.1374424-03:00","Protocolo":"EF;#111;Dir;1;82$\r","Enviado":false},{"Momento":"2024-06-11T13:17:48.1424461-03:00","Protocolo":"@4;EF;258;Mov,0,0x01,4,0,800,0,34$","Enviado":true},{"Momento":"2024-06-11T13:17:48.149995-03:00","Protocolo":"EF;#211;Mov;0$\r","Enviado":false},{"Momento":"2024-06-11T13:17:48.6580528-03:00","Protocolo":"EF;655,4,$\r","Enviado":false},{"Momento":"2024-06-11T13:17:48.667997-03:00","Protocolo":"@5;EF;258;Dir,0,0,0,0,25,0,33,0,32,0,35$","Enviado":true},{"Momento":"2024-06-11T13:17:48.6777167-03:00","Protocolo":"EF;#211;Dir;0$\r","Enviado":false},{"Momento":"2024-06-11T13:17:49.1879119-03:00","Protocolo":"EF;655,5,$\r","Enviado":false},{"Momento":"2024-06-11T13:17:49.197476-03:00","Protocolo":"@6;EF;258;EF,0,1000,0,1,0,3,0,17,0,16,0,4$","Enviado":true},{"Momento":"2024-06-11T13:17:49.2177525-03:00","Protocolo":"EF;#211;EF;0$\r","Enviado":false},{"Momento":"2024-06-11T13:17:49.3312892-03:00","Protocolo":"EF;655,6,$\r","Enviado":false},{"Momento":"2024-06-11T13:17:56.187772-03:00","Protocolo":"@7;EF;258;Dir,0,0,0,0,25,0,33,0,32,0,35$","Enviado":true},{"Momento":"2024-06-11T13:17:56.1977392-03:00","Protocolo":"EF;#211;Dir;0$\r","Enviado":false},{"Momento":"2024-06-11T13:17:56.7111166-03:00","Protocolo":"EF;655,7,$\r","Enviado":false},{"Momento":"2024-06-11T13:17:56.7293135-03:00","Protocolo":"@8;EF;258;EF,0,1000,0,1,0,3,0,17,0,16,0,4$","Enviado":true},{"Momento":"2024-06-11T13:17:56.7479528-03:00","Protocolo":"EF;#211;EF;0$\r","Enviado":false},{"Momento":"2024-06-11T13:17:56.8576279-03:00","Protocolo":"EF;655,8,$\r","Enviado":false},{"Momento":"2024-06-11T13:18:00.3854476-03:00","Protocolo":"@9;EF;258;Dir,0,0,0,0,25,0,33,0,32,0,35$","Enviado":true},{"Momento":"2024-06-11T13:18:00.3876893-03:00","Protocolo":"EF;#211;Dir;0$\r","Enviado":false},{"Momento":"2024-06-11T13:18:00.9046347-03:00","Protocolo":"EF;655,9,$\r","Enviado":false},{"Momento":"2024-06-11T13:18:00.9178613-03:00","Protocolo":"@10;EF;258;EF,0,1000,0,1,0,3,0,17,0,16,0,4$","Enviado":true},{"Momento":"2024-06-11T13:18:00.9378286-03:00","Protocolo":"EF;#211;EF;0$\r","Enviado":false},{"Momento":"2024-06-11T13:18:01.0477049-03:00","Protocolo":"EF;655,10,$\r","Enviado":false}

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

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

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

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

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View File

@ -0,0 +1 @@
[{"Momento":"2024-06-12T08:36:53.4899123-03:00","Protocolo":"@1;ET;258;ET,1,1000,0,1,0,3,0,17,0,16,0,4$","Enviado":true},{"Momento":"2024-06-12T08:36:53.4899123-03:00","Protocolo":"ET;#211;ET;1$\r","Enviado":false},{"Momento":"2024-06-12T08:36:53.5998447-03:00","Protocolo":"ET;655,1,$\r","Enviado":false},{"Momento":"2024-06-12T08:36:53.613273-03:00","Protocolo":"@2;ET;258;Mov,1,0x01,4,0,800,0,34$","Enviado":true},{"Momento":"2024-06-12T08:36:54.2695965-03:00","Protocolo":"ET;#211;Mov;1$\r","Enviado":false},{"Momento":"2024-06-12T08:36:54.7799158-03:00","Protocolo":"ET;655,2,$\r","Enviado":false},{"Momento":"2024-06-12T08:36:56.3800098-03:00","Protocolo":"ET;#544;Mov;0.00;1699.00;16930.26;16807.75;0;0;0;0;16824.72$\r","Enviado":false},{"Momento":"2024-06-12T08:36:56.8974813-03:00","Protocolo":"ET;#544;Mov;0.00;3161.42;16930.26;16809.24;0;0;0;0;16826.91$\r","Enviado":false},{"Momento":"2024-06-12T08:36:57.8995508-03:00","Protocolo":"ET;#544;Mov;0.00;3293.87;16932.10;16809.24;0;0;0;0;16825.82$\r","Enviado":false},{"Momento":"2024-06-12T08:36:58.3097871-03:00","Protocolo":"@3;ET;258;Mov,0,0x01,4,0,800,0,34$","Enviado":true},{"Momento":"2024-06-12T08:36:58.3198909-03:00","Protocolo":"ET;#211;Mov;0$\r","Enviado":false},{"Momento":"2024-06-12T08:36:58.8299747-03:00","Protocolo":"ET;655,3,$\r","Enviado":false},{"Momento":"2024-06-12T08:36:58.8499599-03:00","Protocolo":"@4;ET;258;ET,0,1000,0,1,0,3,0,17,0,16,0,4$","Enviado":true},{"Momento":"2024-06-12T08:36:58.8697476-03:00","Protocolo":"ET;#211;ET;0$\r","Enviado":false},{"Momento":"2024-06-12T08:36:58.9800355-03:00","Protocolo":"ET;655,4,$\r","Enviado":false},{"Momento":"2024-06-12T08:37:03.991948-03:00","Protocolo":"@5;ET;258;ET,1,1000,0,1,0,3,0,17,0,16,0,4$","Enviado":true},{"Momento":"2024-06-12T08:37:04.0145394-03:00","Protocolo":"ET;#211;ET;1$\r","Enviado":false},{"Momento":"2024-06-12T08:37:04.1284486-03:00","Protocolo":"ET;655,5,$\r","Enviado":false},{"Momento":"2024-06-12T08:37:04.1449789-03:00","Protocolo":"@6;ET;258;Mov,1,0x01,4,0,800,0,34$","Enviado":true},{"Momento":"2024-06-12T08:37:04.8001493-03:00","Protocolo":"ET;#211;Mov;1$\r","Enviado":false},{"Momento":"2024-06-12T08:37:05.310036-03:00","Protocolo":"ET;655,6,$\r","Enviado":false},{"Momento":"2024-06-12T08:37:06.91138-03:00","Protocolo":"ET;#544;Mov;0.00;1663.50;16930.26;16807.75;0;0;0;0;16824.72$\r","Enviado":false},{"Momento":"2024-06-12T08:37:07.4212533-03:00","Protocolo":"ET;#544;Mov;0.00;3387.48;16930.26;16809.24;0;0;0;0;16823.63$\r","Enviado":false},{"Momento":"2024-06-12T08:37:08.4266744-03:00","Protocolo":"ET;#544;Mov;0.00;3321.89;16930.26;16807.75;0;0;0;0;16824.72$\r","Enviado":false},{"Momento":"2024-06-12T08:37:09.4327269-03:00","Protocolo":"ET;#544;Mov;0.00;3324.71;16930.26;16807.75;0;0;0;0;16824.72$\r","Enviado":false},{"Momento":"2024-06-12T08:37:10.429758-03:00","Protocolo":"ET;#544;Mov;0.00;3316.14;16930.26;16807.75;0;0;0;0;16823.63$\r","Enviado":false},{"Momento":"2024-06-12T08:37:11.4385047-03:00","Protocolo":"ET;#544;Mov;0.00;3366.49;16930.26;16809.24;0;0;0;0;16822.53$\r","Enviado":false},{"Momento":"2024-06-12T08:37:11.5498481-03:00","Protocolo":"@7;ET;258;Mov,0,0x01,4,0,800,0,34$","Enviado":true},{"Momento":"2024-06-12T08:37:11.5580093-03:00","Protocolo":"ET;#211;Mov;0$\r","Enviado":false},{"Momento":"2024-06-12T08:37:12.0699464-03:00","Protocolo":"ET;655,7,$\r","Enviado":false},{"Momento":"2024-06-12T08:37:12.0828916-03:00","Protocolo":"@8;ET;258;ET,0,1000,0,1,0,3,0,17,0,16,0,4$","Enviado":true},{"Momento":"2024-06-12T08:37:12.0997613-03:00","Protocolo":"ET;#211;ET;0$\r","Enviado":false},{"Momento":"2024-06-12T08:37:12.2098919-03:00","Protocolo":"ET;655,8,$\r","Enviado":false}

Some files were not shown because too many files have changed in this diff Show More