2017-03-01 2 views
-1

Supposons que nous ayons une fréquence sinusoïdale de 100 Hz et une fréquence d'échantillonnage de 1000 Hz. Cela signifie que notre signal a 100 périodes en une seconde et nous prenons 1000 échantillons en une seconde. Par conséquent, afin de sélectionner une période complète, je vais devoir prendre des échantillons fs/f=10. Droite? Que faire si la période d'échantillonnage n'est pas un multiple de la fréquence du signal (comme 550Hz)? Dois-je trouver le minimum multiple M de f et fs, et que de prendre des échantillons M? Mon objectif est de sélectionner un nombre entier de périodes afin de pouvoir les répliquer sans modifications.Sélectionnez un nombre entier de périodes

+0

Pas une question de programmation - essayez http://dsp.stackexchange.com? –

+0

Je vote pour clore cette question hors-sujet car il s'agit de [dsp.se] au lieu de directement sur la programmation ou le codage. – Pang

Répondre

1

Vous avez f périodes par seconde, et fs échantillons par seconde.

Si vous prenez des échantillons M, il couvrirait M/fs une partie d'une seconde, ou P = f * (M/fs) périodes. Vous voulez que ce nombre soit entier.

Vous devez donc prélever des échantillons M = fs/gcd(f, fs).

Pour votre exemple P = 1000/gcd(100, 1000) = 1000/100 = 10.

Si vous avez une fréquence de 60 Hz et une fréquence d'échantillonnage de 80 Hz, cela donne P = 80/gcd(60, 80) = 80/20 = 4 - 4 échantillons couvriront 4 * 1/80 = 1/20 une partie de seconde, et ce sera 3 périodes. Si vous avez une fréquence de 113 Hz et une fréquence d'échantillonnage de 512 Hz, vous n'avez pas de chance, puisque gcd(113, 512) = 1 et vous aurez besoin de 512 échantillons, couvrant toute la seconde et 113 périodes.

0

En général, une fréquence arbitraire n'aura pas un nombre entier de périodes. Les fréquences irrationnelles ne se répéteront jamais. Donc, certains moyens autres que la concaténation de tampons une période de longueur seront nécessaires pour synthétiser des formes d'onde exactement périodiques de fréquences arbitraires. L'approximation par interpolation pour les déphasages fractionnaires est une possibilité.