guards e ajuste na bomba pressurizadora

This commit is contained in:
Diego Freitas 2026-07-02 10:32:16 -03:00
parent c98972129c
commit 912773fea2
3 changed files with 17 additions and 2 deletions

View File

@ -231,6 +231,9 @@ namespace AgroBase.Forms.Operacoes
private async Task AtualizarCameraSolo()
{
if (CameraWorkerService.CamerasSolo.Count == 0)
return;
ReqFrameCam = true;
try
{

View File

@ -1802,7 +1802,7 @@ namespace AgroBase.Models.Modules
bool pressaoDivergente = bomba.Sensor_ID_Num > -1 && Math.Abs(bomba._PressaoSP - pressaoEfetiva) > 0.05;
if (estadoDivergente || potenciaDivergente || pressaoDivergente)
if (potenciaDivergente || pressaoDivergente) // estadoDivergente ||
{
EnviarComandoFisicoBomba(
bomba,
@ -1859,6 +1859,8 @@ namespace AgroBase.Models.Modules
dispAtu.AdicionarMensagemFila(bomba.ID_Num, CanMessagePosicaoDados.Command1, CanMessagePosicaoDados.Command1, data, false);
Variaveis.MostrarLog($"Enviando comando para a bomba {bomba.ID}: potencia={potencia}, pressao={pressao}");
bomba.UltimoComandoEnviado = DateTime.Now;
bomba.UltimoStatusDesejado = status;
bomba.UltimaPotenciaDesejada = potencia;

View File

@ -69,6 +69,12 @@ class BombaPressurizadora_v2 : public ComponenteCAN {
sensorFluxo(sensorFluxoLinha),
_bicos(bicos),
_qtdBicos(qtdBicos) {
if (_bicos == nullptr || _qtdBicos == 0) {
DesligarSemBicosAbertos = false;
HabilitarSupervisorFluxo = false;
HabilitarKickInicial = false;
HabilitarDetectorCavitacao = false;
}
}
String _ID;
@ -584,7 +590,7 @@ class BombaPressurizadora_v2 : public ComponenteCAN {
static_cast<uint8_t>(ModoControle) != 0
);
if (QtdBicosLigados == 0 && DesligarSemBicosAbertos) {
if (TemBicosConfigurados() && QtdBicosLigados == 0 && DesligarSemBicosAbertos) {
AplicarSaida(false, 0);
ResetarEstadosDeBicosFechados();
AtualizarLeitura();
@ -1607,6 +1613,10 @@ class BombaPressurizadora_v2 : public ComponenteCAN {
return flags;
}
bool TemBicosConfigurados() {
return _bicos != nullptr && _qtdBicos > 0;
}
void MostrarLog(String mensagem) {
if (DebugMode) {
PrintTela("[BMB " + _ID + "] " + mensagem);