Une baisse de rendement passée inaperçue pendant un poste complet peut signifier des centaines d'unités mises au rebut. Les fonctionnalités d'alerte de TofuPilot vous notifient quand quelque chose ne va pas, afin que vous puissiez intervenir avant que les dégâts ne s'étendent.
Pourquoi les alertes en temps réel sont importantes
Les problèmes de production s'annoncent rarement d'eux-mêmes. Une machine de pâte à braser tourne à vide et commence à produire des joints fragiles. Un contact de montage s'use et ajoute de la résistance à chaque mesure. Un nouveau lot de composants présente des caractéristiques légèrement différentes.
Dans tous ces cas, la baisse de rendement commence faiblement et s'amplifie. Plus vous la détectez tôt, moins d'unités sont affectées. Attendre les rapports de fin de poste ou les revues qualité hebdomadaires est trop lent.
Produire des données de test propres et structurées
Les alertes ne valent que par les données qui les alimentent. Écrivez vos tests OpenHTF avec des sorties claires et mesurables pour que TofuPilot puisse suivre les tendances et déclencher des alertes sur les bons signaux.
import openhtf as htf
from openhtf.util import units
from tofupilot.openhtf import TofuPilot
@htf.measures(
htf.Measurement("charge_voltage")
.in_range(minimum=4.15, maximum=4.25)
.with_units(units.VOLT),
htf.Measurement("charge_current")
.in_range(minimum=0.450, maximum=0.550)
.with_units(units.AMPERE),
htf.Measurement("thermal_shutdown_temp")
.in_range(minimum=80, maximum=90)
.with_units(units.DEGREE_CELSIUS),
)
def test_charging_circuit(test):
test.measurements.charge_voltage = 4.19
test.measurements.charge_current = 0.498
test.measurements.thermal_shutdown_temp = 85.2
def main():
test = htf.Test(
test_charging_circuit,
station_id="LINE-A-FCT-02",
)
with TofuPilot(test):
test.execute(test_start=lambda: "CHG-2026-03318")
if __name__ == "__main__":
main()Chaque mesure avec des limites définies alimente les analyses de TofuPilot. Plus votre nommage est strict et cohérent, plus vos alertes seront utiles.
Ce que TofuPilot peut surveiller
TofuPilot surveille vos données de production et peut vous notifier de plusieurs conditions :
| Type d'alerte | Ce qu'elle détecte |
|---|---|
| Seuil de rendement | Le FPY descend en dessous de votre objectif (par ex. sous 95 %) |
| Échecs consécutifs | Plusieurs unités échouent au même test à la suite |
| Dérive de mesure | La moyenne d'une mesure se déplace vers une limite |
| Inactivité de station | Une station cesse de transmettre des résultats |
Ces alertes couvrent les problèmes de production les plus courants. Les alertes de seuil de rendement détectent les problèmes généraux. Les alertes d'échecs consécutifs détectent les problèmes aigus comme un montage défectueux. Les alertes de dérive de mesure détectent la dégradation lente avant qu'elle ne provoque des échecs.
Configurer les alertes dans TofuPilot
Configurez les alertes depuis le tableau de bord TofuPilot. Accédez à votre procédure, puis configurez les règles de notification :
- Alertes de rendement : Définissez un plancher de rendement. Quand le FPY sur une fenêtre glissante passe sous le seuil, TofuPilot notifie votre équipe.
- Alertes d'échecs consécutifs : Définissez le nombre. Trois échecs consécutifs sur la même mesure sont un signal fort que quelque chose a changé.
- Alertes de dérive : TofuPilot surveille les distributions de mesure et signale quand la moyenne se déplace significativement. Vous n'avez pas besoin de définir de seuils manuels pour cela.
- Alertes de station hors ligne : TofuPilot suit la dernière transmission de chaque station. Si une station devient silencieuse pendant les heures de production prévues, vous recevez une notification.
Concevoir des tests pour de meilleures alertes
Vous pouvez rendre les alertes plus utiles par la façon dont vous structurez vos tests.
import openhtf as htf
from openhtf.util import units
from tofupilot.openhtf import TofuPilot
@htf.measures(
# Des mesures séparées par canal rendent les alertes spécifiques
htf.Measurement("led_current_ch1")
.in_range(minimum=0.018, maximum=0.022)
.with_units(units.AMPERE),
htf.Measurement("led_current_ch2")
.in_range(minimum=0.018, maximum=0.022)
.with_units(units.AMPERE),
htf.Measurement("led_current_ch3")
.in_range(minimum=0.018, maximum=0.022)
.with_units(units.AMPERE),
htf.Measurement("led_current_ch4")
.in_range(minimum=0.018, maximum=0.022)
.with_units(units.AMPERE),
)
def test_led_channels(test):
test.measurements.led_current_ch1 = 0.0201
test.measurements.led_current_ch2 = 0.0198
test.measurements.led_current_ch3 = 0.0203
test.measurements.led_current_ch4 = 0.0200
def main():
test = htf.Test(
test_led_channels,
station_id="LINE-B-FCT-01",
)
with TofuPilot(test):
test.execute(test_start=lambda: "LED-2026-05519")
if __name__ == "__main__":
main()Séparer les mesures par canal (au lieu d'un simple pass/fail pour tous les canaux) permet à TofuPilot de vous alerter que le canal 3 dérive spécifiquement. C'est exploitable. Un générique « le test LED échoue plus souvent » ne l'est pas.
Réagir aux alertes
Quand une alerte se déclenche, agissez :
- Consultez les données de mesure dans TofuPilot. Examinez le graphique de tendance et l'histogramme pour comprendre ce qui a changé.
- Ciblez le périmètre. Est-ce une station ou toutes les stations ? Un poste ou tous les postes ? Cela oriente vers la cause racine.
- Corrigez la cause racine. Recalibrez l'équipement, remplacez le montage, reformez l'opérateur, mettez en quarantaine le lot de composants.
- Vérifiez la correction. Surveillez les résultats du lot suivant dans TofuPilot pour confirmer que le rendement remonte et que les mesures reviennent à la normale.
Les alertes sont un point de départ, pas la réponse. Elles vous disent que quelque chose a changé. Les données de mesure dans TofuPilot vous disent quoi.