Gains :
- Capacité à établir avec précision les paramètres de traitement du signal tels que la fréquence d'échantillonnage, le type de filtre et le fenêtrage avec l'IA
- Capacité à générer du code Python pour la FFT, la conception de filtres et l'analyse du bruit et à vérifier Nyquist et l'aliasing
- Capacité à vérifier l'interprétation du spectre généré par l'IA en la comparant aux mesures et aux attentes physiques
Les données brutes provenant d’un capteur, d’un microphone ou d’une ligne électrique seules n’ont souvent aucun sens ; Il faut le traiter et l’interpréter sur l’axe de la fréquence, de l’amplitude et du temps. Extraire un spectre avec FFT, filtrer le bruit, reconnaître une signature vibratoire... Tout cela relève du traitement du signal et l'IA génère du code Python rapide dans ce domaine, explique les concepts, calcule le coefficient de filtre. Mais une petite erreur de paramètre dans le traitement du signal (mauvaise fréquence d'échantillonnage, mauvaise fenêtre, contrôle Nyquist ignoré) ruine silencieusement toute l'analyse ; Le code ne donne pas d'erreurs, il donne juste des résultats erronés. Dans cette unité, nous aborderons la définition des paramètres corrects avec l'IA, la vérification du code généré en termes de Nyquist et d'alias, et la vérification de l'interprétation du spectre avec la réalité physique.
Paramètres de base : échantillonnage, Nyquist, aliasing
La première règle du traitement du signal numérique est le théorème de Nyquist-Shannon : pour représenter avec précision un signal, la fréquence d'échantillonnage doit être au moins deux fois la composante de fréquence la plus élevée du signal. Sinon, les hautes fréquences apparaîtront comme des basses fréquences (aliasing) et cela ne pourra pas être inversé.
Fréquence la plus élevée du signal : f_max = 2 kHzFréquence d'échantillonnage minimale : f_s ≥ 2 · f_max = 4 kHzPour laisser une marge en pratique : f_s ≈ 5 · f_max = 10 kHz est sélectionnéDe plus, un filtre anti-aliasing analogique est un DOIT AVANT l'échantillonnage.
Attention : lorsque l'IA suggère une fréquence d'échantillonnage, assurez-vous de vérifier si elle fournit Nyquist en fonction de la composante la plus élevée de votre signal. Le code s'exécute sans erreur même à faible fréquence d'échantillonnage ; mais le résultat est faux à cause de l'alias. De plus, aucun logiciel ne peut annuler cette erreur sans un filtre anti-aliasing intégré au matériel.
Résolution et fenêtrage pour FFT
La résolution en fréquence de la FFT dépend de la fréquence d'échantillonnage et du nombre d'échantillons : Δf = f_s / N. Pour une résolution plus fine, soit vous collectez plus d'échantillons, soit vous choisissez un f_s inférieur (sans casser Nyquist). De plus, la discontinuité entre le début et la fin du signal crée une « fuite spectrale » ; Pour réduire cela, des fonctions de fenêtre telles que Hann et Hamming sont appliquées.
f_s = 10 kHz, N = 1024 échantillonsRésolution de fréquence : Δf = 10000 / 1024 ≈ 9,77 HzDurée d'enregistrement totale : T = N / f_s = 1024 / 10000 ≈ 102,4 ms
Génération et vérification du code FFT et du filtre
Spécifiez explicitement la fréquence d’échantillonnage, le type de fenêtre et l’échelle de l’axe lorsque vous demandez le code FFT à l’IA. Le code suivant génère le spectre d'amplitude unilatéral d'un signal :
importer numpy en tant que npfs = 10000 # fréquence d'échantillonnage (Hz) - vérifier Nyquist!N = 1024t = np.arange(N) / fs# signal d'échantillonnage : 500 Hz + 1500 Hzx = np.sin(2*np.pi*500*t) + 0,5*np.sin(2*np.pi*1500*t)w = np.hanning(N) # fenêtrage : réduit la fuite spectrale normalisée par le gain# vérifier les fréquences maximalespeaks = f[np.argsort(mag)[-2:]]print("Fréquences dominantes (Hz) :", np.sort(peaks))
Lors de la vérification de ce code, il vous sera demandé : l'axe des fréquences est-il vraiment Hz ou l'index de l'échantillon (rfftfreq est-il utilisé) ? L'amplitude est-elle normalisée au gain de la fenêtre ? Les pics attendus de 500 et 1 500 Hz se produisent-ils réellement à ces endroits ? Si vous vérifiez le code avec un signal de test connu (sinusoïdal à fréquence unique), vous confirmerez en toute confiance l'axe et la normalisation.
Invite faible/Invite forte
FAIBLE : "Appliquez la FFT à ces données." (Résultat : la fréquence d'échantillonnage, l'échelle de l'axe et le fenêtrage ne sont pas clairs ; le graphique est probablement tracé sur le mauvais axe.) FORT : "Appliquez la FFT à un signal échantillonné à 10 kHz. Fournissez : - Tracez l'axe des fréquences en Hz (utilisez rfftfreq). - Appliquez la fenêtre de Hann et normalisez l'amplitude par le gain de la fenêtre. - Imprimez numériquement les deux fréquences dominantes. - Marquez la limite de Nyquist (5 kHz) sur le Notez que l'axe se déplacera si la fréquence d'échantillonnage est incorrecte.
Conception de filtres et analyse du bruit
L'IA peut générer des coefficients de filtre bas/haut/passe-bande (FIR/IIR). Mais la fréquence de coupure, l'ordre et la stabilité du filtre doivent être vérifiés. Cela peut provoquer une instabilité d'ordre élevé et une distorsion de phase, en particulier dans les filtres IIR. Après avoir conçu le filtre, tracez la réponse en fréquence (à la manière de Bode) pour voir que la coupure est au bon endroit et qu'il n'y a pas d'ondulation indésirable dans la bande passante.
La tâche typique de l’analyse du bruit consiste à séparer le signal réel du bruit. Ici, évaluez le seuil ou le filtre suggéré par l'IA par rapport à la bande passante physique du signal : si votre signal réel est à 0-500 Hz, un composant à 2 kHz est très probablement du bruit ou des interférences. L'IA donne des statistiques ; Vous faites l'interprétation physique.
Validation de l'interprétation du spectre avec la réalité physique
Lors de l’interprétation d’un spectre, l’IA fait des déductions raisonnables mais pas toujours précises telles que « Il y a un pic à 50 Hz, c’est une interférence de grille ». Comparez ces commentaires avec l'attente physique : le système dispose-t-il vraiment d'un raccordement secteur 50 Hz ? La fréquence de rotation et les harmoniques attendues sont-elles presque présentes dans le spectre vibratoire d'un moteur ? Si possible, répétez la mesure avec une deuxième méthode (capteur différent, logiciel différent) et observez les mêmes pics.
Indice : Pour chaque interprétation du spectre, « à quel phénomène physique correspond ce pic ? Posez la question. Le réseau 50/100/150 Hz et ses harmoniques, la fréquence de rotation et ses multiples dans les machines tournantes, et la fréquence de découpage dans les alimentations à découpage sont des signatures connues. Un pic inconnu est soit un événement réel, soit une erreur de mesure/traitement ; Recherchez les deux.
Mini-étui
Un ingénieur R&D mesure la vibration d’un ventilateur et demande à l’IA d’interpréter le spectre. "Il y a un pic dominant à 1 200 Hz, cela peut être une défaillance du roulement", explique AI. L'ingénieur contrôle la vitesse du ventilateur : 1800 tr/min = 30 Hz. Les fréquences de transition des roulements et des pales devraient être à certaines valeurs compatibles avec ce cycle ; 1200 Hz ne correspond à aucun de ces éléments. Il contrôle la fréquence d'échantillonnage : le signal transporte du contenu jusqu'à 2 kHz, mais seulement 2 kHz sont échantillonnés, donc une violation de Nyquist. Le pic à 1 200 Hz est une fréquence fantôme résultant d'un alias. Lorsque j'augmente la fréquence d'échantillonnage à 8 kHz, le faux pic disparaît. Leçon : testez toujours l'interprétation du spectre avec l'attente du cycle physique/fréquence et un échantillonnage correct.
Erreurs courantes
- Choisir la fréquence d'échantillonnage sans vérifier le critère de Nyquist ; Surplombant l'alias.
- Laisser l'axe des fréquences FFT à l'indice d'échantillon au lieu de Hz.
- Confondre la fuite spectrale avec un signal sans fenêtrage.
- Ne pas normaliser l'amplitude par nombre de fenêtres/échantillons.
- Ne pas vérifier la stabilité du filtre IIR et la distorsion de phase.
- Interpréter les pics du spectre sans les tester en prévision du régime/fréquence physique.
En résumé
- La fréquence d'échantillonnage doit être au moins deux fois la composante la plus élevée du signal ; Sinon, l'alias perturbera toute l'analyse.
- Résolution FFT Δf = f_s/N ; Choisissez N et f_s selon vos besoins.
- Le fenêtrage réduit les fuites spectrales ; normaliser l'amplitude en fonction du gain de la fenêtre.
- Vérifiez le code AI avec un signal de test connu pour confirmer l'axe et la normalisation.
- Vérifiez la stabilité du filtre et la réponse en fréquence en les traçant.
- Testez toujours l’interprétation du spectre en attendant la fréquence physique.
Tâche de candidature
Générez un signal de test de fréquence connue (par exemple 500 Hz + 1 500 Hz sinusoïdal). Demandez la FFT et filtrez le code à l'IA. Ensuite : (1) vérifiez que le critère de Nyquist est rempli, (2) vérifiez que les pics FFT apparaissent réellement à 500 et 1 500 Hz, (3) réduisez délibérément la fréquence d'échantillonnage en dessous de Nyquist et observez comment le crénelage crée un pic parasite. Notez vos observations et le paramètre que vous avez corrigé.