Analyse de télémétrie matérielle avec TofuPilot
Les données de capteurs issues des tests matériels ne sont utiles que si vous pouvez identifier des tendances sur des milliers d'exécutions. TofuPilot ingère la télémétrie multidimensionnelle, l'indexe automatiquement et vous fournit des tableaux de bord qui révèlent les tendances avant qu'elles ne deviennent des problèmes de production.
La télémétrie matérielle en pratique
Une seule exécution de test matériel peut produire des centaines de relevés de capteurs : courbes de température, traces de tension, spectres de vibration, formes d'onde de pression. Sans système structuré, ces données finissent dans des fichiers CSV sur des disques partagés, impossibles à interroger à grande échelle.
TofuPilot traite chaque mesure de capteur comme un objet de première classe. Chaque relevé reçoit un nom, une unité, des limites et une dimension de tableau optionnelle pour les données temporelles ou multi-axes.
Ingestion des données de capteurs
Utilisateurs OpenHTF
Les mesures OpenHTF transitent automatiquement vers TofuPilot. Les tableaux multidimensionnels (formes d'onde 1D, matrices 2D, tenseurs ND) sont traités sans modification de code.
import openhtf as htf
from tofupilot.openhtf import TofuPilotClient
@htf.measures(
htf.Measurement("temperature_curve").with_dimensions("time_s"),
htf.Measurement("vibration_spectrum").with_dimensions("freq_hz"),
)
def sensor_sweep(test):
for t in range(100):
test.measurements.temperature_curve[t] = read_thermocouple()
for f in range(500):
test.measurements.vibration_spectrum[f] = read_accelerometer_fft(f)
def main():
test = htf.Test(sensor_sweep)
test.add_output_callbacks(TofuPilotClient())
test.execute(lambda: "DUT-001")Utilisateurs du client Python
Passez des listes ou des tableaux NumPy directement dans vos charges de mesure.
from tofupilot import TofuPilotClient
import numpy as np
client = TofuPilotClient()
voltage_trace = np.sin(np.linspace(0, 2 * np.pi, 1000)).tolist()
client.create_run(
procedure_id="PSU-RIPPLE-TEST",
unit_under_test={"serial_number": "PSU-2025-0042"},
steps=[{
"name": "Output Ripple",
"step_type": "measurement",
"status": True,
"measurements": [{
"name": "ripple_voltage_mv",
"value": voltage_trace,
"unit": "mV",
"limit_low": -50,
"limit_high": 50,
}],
}],
)Interrogation de la télémétrie à grande échelle
Une fois ingérée, chaque mesure est interrogeable via le tableau de bord TofuPilot. Filtrez par procédure, numéro de série, plage de dates ou statut réussite/échec.
| Requête | Ce qu'elle affiche |
|---|---|
Toutes les exécutions de PSU-RIPPLE-TEST des 7 derniers jours | Tendances de la tension d'ondulation sur la production |
Exécutions échouées avec temperature_curve hors limites | Unités ayant dépassé les spécifications thermiques |
Distribution des mesures pour vibration_spectrum | Histogramme des amplitudes de vibration sur l'ensemble du parc |
Configuration des alertes sur la dérive de télémétrie
TofuPilot suit les distributions de mesures dans le temps. Quand un relevé de capteur commence à dériver vers ses limites, vous pouvez le détecter avant que cela ne cause des défaillances.
- Ouvrez le tableau de bord de procédure pour votre test
- Sélectionnez la mesure que vous souhaitez surveiller
- Définissez des seuils d'alerte à 80 % de vos limites de spécification
- TofuPilot signale les exécutions où les relevés franchissent la zone d'alerte
C'est particulièrement utile pour les capteurs de température, où une dérive progressive de l'étalonnage peut passer inaperçue jusqu'à ce que des unités commencent à échouer sur le terrain.
Exemple concret : télémétrie de chambre thermique
Un fabricant de dispositifs médicaux effectue des tests de cyclage thermique sur 8 zones de température. Chaque test produit 8 mesures temporelles (une par zone) avec 500 points de données chacune.
Avant TofuPilot, les ingénieurs téléchargeaient des fichiers CSV depuis chaque contrôleur de chambre, les fusionnaient dans Excel et vérifiaient manuellement les limites. Avec TofuPilot, les 8 formes d'onde sont envoyées automatiquement à la fin de chaque cycle, les limites sont vérifiées côté serveur et le tableau de bord affiche les tendances zone par zone sur l'ensemble de l'historique de production.
Le résultat : les violations de limites qui prenaient auparavant des heures à identifier apparaissent désormais en quelques secondes.