From 9a0e3cbb6b2d023a8cdae8f2ba11cf51fb42ad57 Mon Sep 17 00:00:00 2001 From: Diego Freitas Date: Fri, 12 Jun 2026 13:18:56 -0300 Subject: [PATCH] ajustes no gps service --- AgroBase/AgroBase/Services/GPSService.cs | 32 ++++++++++++++---------- 1 file changed, 19 insertions(+), 13 deletions(-) diff --git a/AgroBase/AgroBase/Services/GPSService.cs b/AgroBase/AgroBase/Services/GPSService.cs index ba4985698..daca5d080 100644 --- a/AgroBase/AgroBase/Services/GPSService.cs +++ b/AgroBase/AgroBase/Services/GPSService.cs @@ -97,7 +97,7 @@ namespace AgroBase.Services public static async Task ConfigurarModulo() { - Console.WriteLine("Iniciando configuração do módulo GPS..."); + Variaveis.MostrarLog($"[GPSService.ConfigurarModulo] Iniciando configuração do módulo GPS..."); await ConfigurarModuloRover(comprimento_antena: 130); } @@ -131,7 +131,7 @@ namespace AgroBase.Services // NMEA só na USB (COM1) $"gngga {porta_usb} {freq}\r\n", $"gpths {porta_usb} {freq}\r\n", - $"gnvtg {porta_usb} {freq}\r\n", + $"gpvtg {porta_usb} {freq}\r\n", $"saveconfig\r\n" }; @@ -147,7 +147,7 @@ namespace AgroBase.Services } catch (Exception ex) { - Console.WriteLine($"Erro ao enviar comando de configuração GNSS: {ex.Message}"); + Variaveis.MostrarLog($"[GPSService.ConfigurarModuloRover] Erro ao enviar comando de configuração GNSS: {ex.Message}"); } await Task.Delay(1000); // Pequeno delay para evitar sobrecarga na comunicação } @@ -199,7 +199,7 @@ namespace AgroBase.Services } catch (Exception ex) { - Console.WriteLine($"Erro ao enviar comando de configuração GNSS: {ex.Message}"); + Variaveis.MostrarLog($"[GPSService.ConfigurarModuloBase] Erro ao enviar comando de configuração GNSS: {ex.Message}"); } await Task.Delay(500); } @@ -254,7 +254,7 @@ namespace AgroBase.Services } catch (Exception ex) { - Console.WriteLine("Erro ao processar dados da porta serial: " + ex.Message); + Variaveis.MostrarLog($"[GPSService.PortaGPS_DataReceived] Erro ao processar dados da porta serial: " + ex.Message); } } @@ -320,9 +320,15 @@ namespace AgroBase.Services { ProcessarGxRMC(sentenca); } + // ACK de comando do UM982, não é sentença NMEA de navegação. + else if (sentenca.StartsWith("$command,", StringComparison.OrdinalIgnoreCase)) + { + Variaveis.MostrarLog($"[GPSService.ProcessarDadosNMEA] {sentenca}"); + return; + } else { - Console.WriteLine($"Sentença desconhecida: {sentenca}"); + Variaveis.MostrarLog($"[GPSService.ProcessarDadosNMEA] Sentença desconhecida: {sentenca}"); } } @@ -617,7 +623,7 @@ namespace AgroBase.Services if (campos.Length < 2) { - Console.WriteLine("Sentença incompleta."); + Variaveis.MostrarLog("[GPSService.ProcessarGNTHS] Sentença incompleta."); return; } @@ -650,7 +656,7 @@ namespace AgroBase.Services } catch (Exception ex) { - Console.WriteLine($"Erro ao processar a sentença: {ex.Message}"); + Variaveis.MostrarLog($"[GPSService.ProcessarGNTHS] Erro ao processar a sentença: {ex.Message}"); } } @@ -925,7 +931,7 @@ namespace AgroBase.Services { if ((response ?? "").Contains("200 OK")) { - Console.WriteLine("Conexão bem-sucedida ao mountpoint!"); + Variaveis.MostrarLog($"[GPSService.AplicarCorrecaoRTK_Ntrip] Conexão bem-sucedida ao mountpoint!"); byte[] buffer = new byte[4096]; int bytesRead; @@ -942,13 +948,13 @@ namespace AgroBase.Services } catch (Exception ex) { - Console.WriteLine($"Erro ao enviar correção RTCM para o módulo GNSS: {ex.Message}"); + Variaveis.MostrarLog($"[GPSService.AplicarCorrecaoRTK_Ntrip] Erro ao enviar correção RTCM para o módulo GNSS: {ex.Message}"); } } } else { - Console.WriteLine($"Falha na conexão com NTRIP: {response}"); + Variaveis.MostrarLog($"[GPSService.AplicarCorrecaoRTK_Ntrip] Falha na conexão com NTRIP: {response}"); await Task.Delay(5000); // Aguarde antes de tentar novamente break; } @@ -958,7 +964,7 @@ namespace AgroBase.Services } catch (Exception ex) { - Console.WriteLine($"Erro na conexão RTK: {ex.Message}"); + Variaveis.MostrarLog($"[GPSService.AplicarCorrecaoRTK_Ntrip] Erro na conexão RTK: {ex.Message}"); await Task.Delay(5000); // Aguarde antes de tentar novamente } } @@ -1348,7 +1354,7 @@ namespace AgroBase.Services } catch (Exception e) { - Console.WriteLine($"Erro ao salvar dados do GPS no Redis: {e.Message}"); + Variaveis.MostrarLog($"[GPSService.AtualizarDadosRedis] Erro ao salvar dados do GPS no Redis: {e.Message}"); Variaveis.OperacaoEmAndamento.Sensoriamento.InserirLog(T_Code.Gps, StatusModulo.Falha, 0, $"Erro ao salvar dados do GPS no Redis: {e.Message}"); } }