ajustes workers

This commit is contained in:
Diego Freitas 2026-03-06 08:55:38 -03:00
parent bc9fc9a0b8
commit d2f6a9e03c
5 changed files with 11 additions and 10 deletions

View File

@ -826,11 +826,11 @@ class CameraOak:
self._op_mode += 1
self._last_mode_change_ts = now
# desce se está pesado
elif util > 85 and self._op_mode > 0:
elif util > 75 and self._op_mode > 0:
self._op_mode -= 1
self._last_mode_change_ts = now
# emergência: muito alto, cai mais
if util > 90 and self._op_mode > 0:
if util > 85 and self._op_mode > 0:
self._op_mode = max(0, self._op_mode - 1)
self._last_mode_change_ts = now

View File

@ -34,7 +34,7 @@ class ModuloGPS(ModuloDiagnosticoBase):
saude = 100
motivos = []
if not conectado or fail_pos or fail_ori:
if not conectado:
motivos.append("desconectado")
saude = 0
elif freq_pos <= FREQ_MIN or fail_pos:

View File

@ -75,9 +75,9 @@ class ModuloIPBribge(ModuloDiagnosticoBase):
self._ping_count = 2 # recomendado: 1 (janela já suaviza)
self._ping_min_interval = 0.6 # não precisa pingar a cada 100ms
self.bw_max_mbps = 2.0 # capacidade aproximada do link (ajuste por teste)
self.bw_safe_mbps = 1.2 # alvo saudável (até aqui não penaliza)
self.bw_hard_mbps = 1.8 # acima disso é zona vermelha
self.bw_max_mbps = 3.0 # capacidade aproximada do link (ajuste por teste)
self.bw_safe_mbps = 2.0 # alvo saudável (até aqui não penaliza)
self.bw_hard_mbps = 2.5 # acima disso é zona vermelha

View File

@ -35,6 +35,8 @@ class ModuloTrajetorira(ModuloDiagnosticoBase):
status = StatusModulo.OPERANTE
if not iniciado:
status = StatusModulo.DESCONECTADO
elif saude <= 0:
status = StatusModulo.FALHA
elif saude < SAUDE_MIN_ALERTA:
status = StatusModulo.ALERTA

View File

@ -211,15 +211,14 @@ class ContextoGlobalRedis:
@classmethod
def _atualizar_operacao_liberada(cls):
_operacao = cls.get_operacao()
_contexto = cls.get_contexto()
# 🔹 Conjuntos de módulos
modulos_mandatorios = set(_operacao.get("modulos_mandatorios", []))
modulos_opcionais = set(_operacao.get("modulos_opcionais", []))
emergencia = _operacao.get("emergencia", False)
pausa = _operacao.get("pausa", False)
_t = _contexto.get("Trajetoria", {})
trajetoria_liberada = True if _t is None or _t == "" else _t.get("CorredorAtual", {}).get("liberado", False)
_t = cls.get_modulo(T_Code.Trj)
trajetoria_liberada = _t.get("liberado", False) if _t.get("iniciado", False) else True
modulos_presentes = set()
status_modulos = []
@ -383,7 +382,7 @@ class ContextoGlobalRedis:
trajetoria_ok = True
if not trajetoria_liberada:
trajetoria_ok = False
_motivo_traj = _contexto.get("Trajetoria", {}).get("CorredorAtual", {}).get("motivo")
_motivo_traj = _t.get("motivo")
if _motivo_traj:
motivos_dos_modulos_mandatorios.append(_motivo_traj)