Πίνακας περιεχομένων:
- Βήμα 1: Πώς λειτουργεί (έννοια):
- Βήμα 2: Πώς λειτουργεί (στον κώδικα):
- Βήμα 3: Χρήση κώδικα για ανάλυση συχνότητας:
- Βήμα 4: Έξοδος:
- Βήμα 5: Έλεγχος διαφόρων μεγεθών παραθύρου και δείγματος:
- Βήμα 6: Παράδειγμα:
Βίντεο: Arduino: Frequency Transform (DFT): 6 βήματα
2024 Συγγραφέας: John Day | [email protected]. Τελευταία τροποποίηση: 2024-01-30 08:32
Αυτό το πρόγραμμα είναι να υπολογίσει τον μετασχηματισμό συχνότητας στο arduino με έλεγχο του χτυπήματος στις παραμέτρους. επιλύεται χρησιμοποιώντας βεβηλωμένο τέταρτο μετασχηματισμό.
αυτό δεν είναι FFT
Ο FFT είναι αλγόριθμος που χρησιμοποιείται για την επίλυση του DFT με μικρότερο χρόνο.
Κωδικός για FFT μπορείτε να βρείτε πουθενά.
Βήμα 1: Πώς λειτουργεί (έννοια):
Το δεδομένο πρόγραμμα μετατροπής συχνότητας παρέχει εξαιρετικό έλεγχο της εξόδου που χρειάζεστε. αυτό το πρόγραμμα αξιολογεί το εύρος συχνοτήτων που δίνει ο χρήστης σε δεδομένη είσοδο για το σύνολο δεδομένων.
- Στο σχήμα ένα σύνολο δεδομένων που αποτελείται από δύο συχνότητες που ονομάζονται f2 και f5 και πρέπει να ελεγχθούν. Τα f2 και f5 είναι τυχαία ονόματα για δύο συχνότητες, υψηλότερος αριθμός για σχετικά υψηλότερη συχνότητα. εδώ μικρότερη συχνότητα f2 έχει μεγαλύτερο πλάτος και f5 μικρότερο πλάτος.
- Μπορεί να αποδειχθεί μαθηματικά ότι -το άθροισμα του πολλαπλασιασμού δύο αρμονικών συνόλων δεδομένων με διαφορετική συχνότητα τείνει στο μηδέν (υψηλότερος αριθμός δεδομένων μπορεί να οδηγήσει σε αποτέλεσμα ζύμωσης). Στην περίπτωσή μας Αν αυτές οι δύο συχνότητες πολλαπλασιασμού έχουν την ίδια (ή πολύ κοντινή) συχνότητα, το άθροισμα του πολλαπλασιασμού είναι μη μηδενικός αριθμός όπου το πλάτος εξαρτάται από το πλάτος των δεδομένων.
- για την ανίχνευση συγκεκριμένης συχνότητας, το σύνολο δεδομένων μπορεί να πολλαπλασιαστεί με διάφορες συχνότητες δοκιμής και το αποτέλεσμα μπορεί να δώσει συστατικό αυτής της συχνότητας στα δεδομένα.
Βήμα 2: Πώς λειτουργεί (στον κώδικα):
για αυτά τα δεδομένα (f2+f5) ένα προς ένα f1 σε f6 πολλαπλασιάζεται και η τιμή του αθροίσματος σημειώνεται. αυτό το τελικό άθροισμα αντιπροσωπεύει το περιεχόμενο αυτής της συχνότητας. Η ανάπαυση (μη αντιστοίχιση) συχνότητας θα πρέπει να είναι ιδανικά μηδενική, αλλά δεν είναι δυνατή σε πραγματική περίπτωση. Για να γίνει το άθροισμα μηδέν απαιτείται να έχουμε άπειρο μέγεθος συνόλων δεδομένων.
- όπως μπορεί να φανεί στο σχήμα f1 έως f6 δοκιμαστική συχνότητα και εμφανίζεται ο πολλαπλασιασμός του με το σύνολο δεδομένων σε κάθε σημείο.
- στο δεύτερο σχήμα απεικονίζεται το άθροισμα αυτού του πολλαπλασιασμού σε κάθε συχνότητα. δύο κορυφές στο 1 και 5 είναι αναγνωρίσιμες.
Έτσι, χρησιμοποιώντας την ίδια προσέγγιση για τυχαία δεδομένα, μπορούμε να αξιολογήσουμε για τόσες πολλές συχνότητες και να αναλύσουμε το περιεχόμενο συχνότητας των δεδομένων.
Βήμα 3: Χρήση κώδικα για ανάλυση συχνότητας:
για παράδειγμα, ας χρησιμοποιήσουμε αυτόν τον κώδικα για να βρούμε DFT τετραγωνικού κύματος.
πρώτα επικολλήστε τον συνημμένο κώδικα (λειτουργία dft) μετά από βρόχο όπως φαίνεται στην εικόνα
8 ΟΡΟΙ ΠΟΥ ΠΡΕΠΕΙ ΝΑ ΕΙΝΑΙ ΕΙΔΙΚΟΙ
- μια σειρά από τις οποίες πρέπει να ληφθεί dft
- μέγεθος ενός πίνακα
- χρονικό διάστημα μεταξύ 2 μετρήσεων σε πίνακα σε milliSECONDS
- χαμηλότερη τιμή εύρους συχνοτήτων σε Hz
- ανώτερη τιμή εύρους συχνοτήτων σε Hz
- μέγεθος των βημάτων για το εύρος συχνοτήτων
- επανάληψη σήματος (τουλάχιστον 1) υψηλότερη ακρίβεια ζύμης αριθμού αλλά αυξημένος χρόνος διαλύματος
-
λειτουργία παραθύρου:
0 για παράθυρο 1 για παράθυρο επίπεδης κορυφής 2 για παράθυρο hann 3 για παράθυρο σφυρί
(εάν δεν έχετε ιδέα σχετικά με την επιλογή παραθύρου διατηρήστε την προεπιλογή 3)
παράδειγμα: dft (a, 8, 0.5, 0, 30, 0.5, 10, 3); εδώ a είναι ένας πίνακας μεγέθους 8 στοιχείου που πρέπει να ελεγχθεί για 0 Hz έως 30 Hz με 0,5 βήματα (0, 0.5, 1, 1.5,…, 29, 29.5, 30) 10 παράθυρο επανάληψης και σφυρηλάτησης
εδώ είναι δυνατόν να χρησιμοποιηθεί πίνακας μεγαλύτερου μεγέθους όσο μπορεί να χειριστεί το arduino.
Βήμα 4: Έξοδος:
αν σχολιάσετε
Serial.print (f); Serial.print ("\ t");
από τον σειριακό σχεδιαστή κώδικα θα δοθεί η φύση του φάσματος συχνοτήτων, αν όχι η σειριακή οθόνη θα δώσει συχνότητα με το πλάτος της.
Βήμα 5: Έλεγχος διαφόρων μεγεθών παραθύρου και δείγματος:
στο σχήμα, η συχνότητα του ημιτονοειδούς κύματος μετριέται χρησιμοποιώντας διαφορετική ρύθμιση.
Βήμα 6: Παράδειγμα:
συγκρίνεται ο μετασχηματισμός των δεδομένων χρησιμοποιώντας SciLab και arduino.
Συνιστάται:
CMOS FREQUENCY COUNTER: 3 Βήματα
CMOS FREQUENCY COUNTER: Αυτός είναι ένας οδηγός με περιεχόμενα PDF και φωτογραφίες για το πώς σχεδίασα τον δικό μου μετρητή συχνοτήτων για διασκέδαση εκτός διακριτικής λογικής. Δεν θα μπω σε πλήρη λεπτομέρεια για το πώς έφτιαξα τους κάπρους ή πώς να το συνδέσω, αλλά τα σχήματα είναι κατασκευασμένα σε KICAD που είναι δωρεάν μαλακό
GPSDO YT, Disciplin Oscillator 10Mhz Reference Frequency. Χαμηλό κόστος. Ακριβής .: 3 βήματα
GPSDO YT, Disciplin Oscillator 10Mhz Reference Frequency. Χαμηλό κόστος. Ακριβές .: ******************************************* ******************************* STOP STOP STOP STOP STOP STOP STOP STOP STOP Αυτό είναι ένα ξεπερασμένο έργο. Αντ 'αυτού ελέγξτε το νέα έκδοση οθόνης 2x16 LCD που διατίθεται εδώ: https: //www.instructables.com/id
EasyFFT: Fast Fourier Transform (FFT) για Arduino: 6 βήματα
EasyFFT: Fast Fourier Transform (FFT) για Arduino: Η μέτρηση της συχνότητας από το σήμα που έχει ληφθεί μπορεί να είναι μια δύσκολη εργασία, ειδικά στο Arduino καθώς έχει χαμηλότερη υπολογιστική ισχύ. Υπάρχουν διαθέσιμες μέθοδοι για τη λήψη μηδενικής διέλευσης όπου η συχνότητα καταγράφεται με έλεγχο πόσες φορές το
Φασματικό στηθοσκόπιο Fast Hartley Transform: 22 Βήματα
Φασματικό στηθοσκόπιο Fast Hartley Transform: Σε αυτό το διδακτικό θα μάθετε πώς να φτιάχνετε ένα φασματικό στηθοσκόπιο χρησιμοποιώντας τον γρήγορο μετασχηματισμό hartley. Αυτό μπορεί να χρησιμοποιηθεί για να απεικονίσει τους ήχους της καρδιάς και των πνευμόνων
Βιομηχανικός αυτοματισμός βασισμένος σε Arduino -- VFD (Variable Frequency Drives): 10 βήματα
Βιομηχανικός αυτοματισμός βασισμένος σε Arduino || VFD (Variable Frequency Drives): Σε αυτό το εκπαιδευτικό, θα σας δείξω πώς να φτιάξετε1. Προσαρμοσμένος πίνακας Arduino για βιομηχανικό αυτοματισμό 2. Πώς να ελέγχετε το VFD [Variable Frequency Drives] χρησιμοποιώντας το Arduino 3. Πώς να σχεδιάσετε μητρική πλακέτα για DigiCone MDF Winding MachineΠοια πράγματα θέλετε