Πίνακας περιεχομένων:
2025 Συγγραφέας: John Day | [email protected]. Τελευταία τροποποίηση: 2025-01-23 14:39
Η γεννήτρια σήματος είναι ένα πολύ χρήσιμο εργαλείο δοκιμής. Αυτό χρησιμοποιεί μια μονάδα AD9833 και ένα Arduino Nano - αυτό είναι όλο, ούτε καν ένα PCB. Μπορείτε προαιρετικά να προσθέσετε μια οθόνη OLED. Το AD9833 μπορεί να δημιουργήσει ημιτονοειδή, τρίγωνα και τετραγωνικά κύματα από 0,1 Hz έως 12,5 MHz - το λογισμικό σε αυτό το έργο περιορίζεται σε 1Hz έως 100kHz.
Υπήρξαν και άλλες οδηγίες χρήσης με Arduino και AD9833, εδώ και εδώ. Αυτό είναι πιο απλό και μπορεί να χρησιμοποιηθεί ως γεννήτρια σάρωσης. Οι γεννήτριες σάρωσης βοηθούν στον έλεγχο της απόκρισης συχνότητας φίλτρων, ενισχυτών και ούτω καθεξής. Σε αντίθεση με τα άλλα σχέδια Instructables, αυτό δεν περιλαμβάνει ενισχυτή ή χειριστήριο έντασης, αλλά μπορείτε να τα προσθέσετε αν θέλετε.
Βήμα 1: Απλούστερη γεννήτρια σημάτων
Για την απλούστερη γεννήτρια σήματος, μόλις συγκολλήσετε τη μονάδα AD9833 στο πίσω μέρος του Arduino Nano. Δεν απαιτείται PCB.
Η ενότητα AD9833 που επέλεξα είναι παρόμοια με αυτήν. Δεν λέω ότι αυτός είναι ο καλύτερος ή φθηνότερος προμηθευτής, αλλά θα πρέπει να αγοράσετε έναν που μοιάζει με αυτήν τη φωτογραφία (ή την παραπάνω φωτογραφία).
Οι συνδέσεις μεταξύ των ενοτήτων είναι:
- συνδέονται μεταξύ τους
- D2 = FSync
- D3 = Clk
- D4 = Δεδομένα
- D6 = Vcc του AD9833
Το AD9833 τροφοδοτείται από την ακίδα δεδομένων D6 του Arduino - το Arduino μπορεί να παρέχει επαρκές ρεύμα. Έχω προσθέσει έναν πυκνωτή αποσύνδεσης 100n επειδή νόμιζα ότι "έπρεπε", αλλά δεν μπορούσα να δω καμία διαφορά - υπάρχει ήδη ένας πυκνωτής αποσύνδεσης στην πλακέτα μονάδων AD9833.
Αν ήσουν φανταχτερός, μπορεί να ανησυχείς για το "αναλογικό έδαφος" έναντι του "ψηφιακού εδάφους", αλλά αν ήσουν φανταχτερό, θα ξόδευες περισσότερα από 4 £.
Η απλούστερη γεννήτρια σήματος ελέγχεται και τροφοδοτείται μέσω καλωδίου USB από υπολογιστή. Το USB μιμείται μια σειριακή θύρα που τρέχει στα 115200bps (8-bit, χωρίς ισοτιμία). Οι εντολές είναι:
- '0'.. '9': μετατόπιση ψηφίου σε πίνακα συχνοτήτων "min"
- 'S': ρυθμίστε τη συχνότητα AD9833 και παράγετε ημιτονοειδές κύμα
- 'T': ορίστε συχνότητα και παράγετε κύμα τριγώνου
- «Q»: ορίστε συχνότητα και παράγετε τετράγωνο κύμα
- 'R': επαναφέρετε το AD9833
- 'M': αντιγράψτε τον πίνακα συχνοτήτων "min" σε πίνακα "max"
- 'G': σάρωση από "min" σε "max" για 1 δευτερόλεπτο
- 'H': σάρωση από "min" σε "max" για 5 δευτερόλεπτα
- "I": σάρωση από "min" σε "max" για 20 δευτερόλεπτα
Το πρόγραμμα Arduino περιέχει δύο πίνακες 6 χαρακτήρων "min" και "max. Εάν μεταφέρετε ένα ψηφίο, τότε μετατοπίζεται στον πίνακα" min ". Εάν στείλετε ένα" S ", τότε οι χαρακτήρες πίνακα" min "μετατρέπονται σε συχνότητα longint και αποστέλλεται στο AD9833. Έτσι, στέλνοντας τη συμβολοσειρά
002500S
θα ρυθμίσει την έξοδο AD9833 σε ημιτονοειδές κύμα 2500Hz. Πρέπει πάντα να στέλνετε και τα 6 ψηφία. Η ελάχιστη συχνότητα είναι 000001 και η μέγιστη συχνότητα είναι 999999.
Εάν στείλετε ένα "M", τότε ο πίνακας "min" αντιγράφεται στον πίνακα "max". Εάν στείλετε ένα «Η», τότε το AD9833 εξάγει επανειλημμένα μια σταδιακά αυξανόμενη συχνότητα σε διάστημα 5 δευτερολέπτων. Ξεκινά σε συχνότητα "min" και 5 δευτερόλεπτα αργότερα είναι σε "max" συχνότητα. Έτσι
020000M000100SH
σαρώνει από 100Hz έως 20kHz. Η αλλαγή συχνότητας είναι λογαριθμική οπότε μετά από 1 δευτερόλεπτο η συχνότητα θα είναι 288Hz, μετά από 2 δευτερόλεπτα 833Hz στη συνέχεια 2402, 6931 και 20000. Η συχνότητα αλλάζει κάθε milliSecond.
Ο βρόχος σταματά όταν το Arduino λαμβάνει έναν άλλο χαρακτήρα, οπότε προσέξτε να μην στείλετε την εντολή που ακολουθείται από μεταφορά-επιστροφή ή τροφοδοσία γραμμής. Αυτός ο επιπλέον χαρακτήρας θα τερμάτιζε τον βρόχο. Εάν χρησιμοποιείτε το Serial Monitor, υπάρχει ένα πλαίσιο κάτω δεξιά που μπορεί να λέει για παράδειγμα "Και τα δύο NL & CR" το οποίο (νομίζω) στέλνει χαρακτήρες μετά την εντολή σας. Ρυθμίστε το σε "Δεν τελειώνει γραμμή".
Μπορείτε να κατεβάσετε το πρόγραμμα Windows EXE παρακάτω, το οποίο θα στείλει τις απαιτούμενες εντολές ή μπορείτε να γράψετε το δικό σας. Το αρχείο Arduino INO είναι επίσης εδώ.
Βήμα 2: Προσθέστε ένα OLED
Εάν προσθέσετε ένα OLED και δύο κουμπιά, η γεννήτρια σήματος μπορεί να λειτουργήσει μόνη της χωρίς υπολογιστή.
Όσοι έχετε διαβάσει τον παλμογράφο μου Instructable θα αναγνωρίσετε την ομοιότητα. Το δομοστοιχείο AD9833 μπορεί να προστεθεί στο παλμογράφο μου για να παράγει ένα "παλμογράφο και γεννήτρια σήματος σε ένα κιβώτιο αντιστοίχισης".
Η οθόνη είναι OLED 1.3 ιντσών που λειτουργεί στα 3.3V και ελέγχεται από ένα τσιπ SH1106 μέσω διαύλου I2C.
Αναζήτηση eBay για 1.3 "OLED. Δεν θέλω να συστήσω έναν συγκεκριμένο πωλητή καθώς οι σύνδεσμοι ξεπεράζονται γρήγορα. Επιλέξτε μία που να μοιάζει με εκείνη τη φωτογραφία, που λέει" I2C "ή" IIC "και έχει τέσσερις ακίδες με την ένδειξη VDD GND SCL SDA. (Μερικές οθόνες φαίνεται να έχουν τις καρφίτσες με διαφορετική σειρά. Ελέγξτε τις. Το σωστό όνομα για το ρολόι του I2C είναι "SCL", αλλά στο eBay οι πίνακες μπορούν να φέρουν την ένδειξη "SCK" όπως η δική μου στη φωτογραφία.)
Μια πληρέστερη περιγραφή της βιβλιοθήκης OLED βρίσκεται στον παλμογράφο μου Instructable στο Βήμα 8. Θα πρέπει να κατεβάσετε και να εγκαταστήσετε τη βιβλιοθήκη προγράμματος οδήγησης SimpleSH1106.zip που βρίσκεται στο Βήμα 8. (Δεν θέλω να ανεβάσω άλλο αντίγραφο εδώ και πρέπει να διατηρήσω δύο αντίγραφα.)
Μπορείτε να κατεβάσετε το αρχείο INO παρακάτω. Οι αριθμοί καρφιτσών που χρησιμοποιούνται για το OLED δηλώνονται γύρω από τη γραμμή 70. Εάν έχετε δημιουργήσει το "Παλμογράφο και γεννήτρια σήματος σε ένα Matchbox" και θέλετε να δοκιμάσετε αυτό το αρχείο INO με αυτό, οι εναλλακτικοί αριθμοί pin ενεργοποιούνται μέσω ενός #define.
Έχω δείξει διάταξη stripboard για το κύκλωμα. Υπάρχουν δύο πίνακες strip - ένας για το Nano και τον AD9833 και ένας για την οθόνη. Θα πρέπει να σχηματίσουν ένα σάντουιτς. Οι πίνακες εμφανίζονται από την πλευρά του εξαρτήματος. Λεπτά εύκαμπτα σύρματα ενώνουν τις δύο σανίδες. Συνδέστε τις σανίδες μαζί με συγκολλημένα στερεώματα. Στο διάγραμμά μου, ο χαλκός της λωρίδας εμφανίζεται με κυανό χρώμα. Οι κόκκινες γραμμές είναι συρματόσχοινοι στον πίνακα ή εύκαμπτα σύρματα που ενώνουν τις σανίδες μεταξύ τους. Δεν έχω δείξει τους αγωγούς ισχύος και "σήματος".
Η μονάδα AD9833 είναι συγκολλημένη στην χάλκινη πλευρά του stripboard - στην αντίθετη πλευρά από το Nano. Κολλήστε καρφίτσες στις λωρίδες χαλκού και στη συνέχεια τοποθετήστε το AD9833 πάνω τους και κολλήστε το.
Η οθόνη εμφανίζει είτε μία μόνο συχνότητα είτε τις συχνότητες "min" και "max".
Υπάρχουν δύο κουμπιά: ένα "Οριζόντιο" κουμπί για να επιλέξετε ένα ψηφίο των συχνοτήτων και ένα "Κάθετο" κουμπί για να αλλάξετε αυτό το ψηφίο.
Τροφοδοτώ τη γεννήτρια σήματος από το κύκλωμα που αναπτύσσω - έχω πάντα 5V διαθέσιμα στο σταθμό εργασίας μου.
Βήμα 3: Μελλοντικές εξελίξεις
Μπορεί να τροφοδοτείται από μπαταρία; Ναι, απλά προσθέστε ένα 9V PP3 συνδεδεμένο με τον ακροδέκτη RAW του Nano. Συνήθως χρησιμοποιεί 20mA.
Θα μπορούσε να τροφοδοτηθεί από ένα μόνο στοιχείο λιθίου; Δεν βλέπω γιατί όχι. Θα πρέπει να συνδέσετε το OLED Vdd και την αντίστασή του στην μπαταρία 3.7V (αμφιβάλλω αν η έξοδος 3.3V του Arduino θα λειτουργούσε σωστά).
Μια γεννήτρια σάρωσης είναι πιο χρήσιμη όταν δοκιμάζετε την απόκριση συχνότητας ενός φίλτρου εάν μπορείτε να γράψετε το πλάτος έναντι της συχνότητας. Η μέτρηση του πλάτους ενός σήματος είναι δύσκολη - πρέπει να αντισταθμίσετε τη φθορά του ανιχνευτή φακέλου σας έναντι κυματισμού με χαμηλές συχνότητες και χρόνο απόκρισης για υψηλές συχνότητες. Έχοντας δημιουργήσει τον ανιχνευτή πλάτους, θα μπορούσατε να τροφοδοτήσετε την έξοδο του στο ADC του Arduino της "Απλούστερης Γεννήτριας Σήματος" και, στη συνέχεια, να στείλετε το αποτέλεσμα, μαζί με την τρέχουσα συχνότητα στον υπολογιστή.
Αυτή η σελίδα είναι ένα χρήσιμο σημείο εκκίνησης ή αναζητήστε στο Google "ανιχνευτή φακέλων" ή "ανιχνευτή αιχμής". Στο προτεινόμενο κύκλωμα παραπάνω, θα ορίσετε τη συχνότητα σήματος, θα περιμένετε να σταθεροποιηθεί, θα ρυθμίσετε τον ακροδέκτη Arduino A0 στην ψηφιακή χαμηλή έξοδο, θα περιμένετε να εκφορτιστεί το C, θα ορίσετε το A0 στην είσοδο, θα περιμένετε και, στη συνέχεια, θα μετρήσετε με το ADC. Πες μου πώς περνάς.
Συνιστάται:
ESP32 TTGO Ισχύς σήματος WiFi: 8 βήματα (με εικόνες)
ESP32 TTGO Ισχύς σήματος WiFi: Σε αυτό το σεμινάριο θα μάθουμε πώς να εμφανίζουμε την ισχύ του σήματος δικτύου WiFi χρησιμοποιώντας τον πίνακα ESP32 TTGO. Δείτε το βίντεο
Πώς να χρησιμοποιήσετε τη γεννήτρια σήματος συχνότητας Arduino DDS AD9850: 7 βήματα
Πώς να χρησιμοποιήσετε τη γεννήτρια σημάτων συχνότητας Arduino DDS AD9850: Σε αυτό το σεμινάριο θα μάθουμε πώς να φτιάχνουμε μια γεννήτρια σημάτων συχνότητας χρησιμοποιώντας μια μονάδα AD9850 και Arduino. Δείτε το βίντεο! Σημείωση: Κατάφερα να έχω συχνότητα έως +50MHz, αλλά η ποιότητα του σήματος γίνεται χειρότερα με τις υψηλότερες συχνότητες
Δύο κανάλια σήματος γεννήτρια για κιθάρα: 10 βήματα
Δύο κανάλια σήματος γεννήτρια για κιθάρα: Αυτό το έργο είναι μια εύκολη κατασκευή, πρωτότυπος σχεδιασμός για γεννήτρια σήματος διπλού καναλιού για κιθάρα και άλλες χρήσεις. Καλύπτει όλο το φάσμα των νότες κιθάρας (για εσάς τους κιθαρίστες, από ανοιχτή χορδή Low E - 83 Hertz, μέχρι και την 24η φρεσκάδα στα υψηλά E
Δημιουργήστε αυτήν τη γεννήτρια σήματος σάρωσης LED 5Hz έως 400KHz από κιτ: 8 βήματα
Δημιουργήστε αυτήν τη γεννήτρια σήματος σάρωσης LED 5Hz έως 400KHz από κιτ: Δημιουργήστε αυτήν την εύκολη γεννήτρια σήματος σάρωσης από άμεσα διαθέσιμα κιτ. Αν ρίχνατε μια ματιά στα τελευταία μου διδάσκοντα (Make Professional Looking Front Panels), ίσως να είχα διαφύγει σε αυτό που δούλευα εκείνη τη στιγμή, η οποία ήταν γεννήτρια σήματος. Ήθελα μια
Γεννήτρια σήματος RF: 8 βήματα (με εικόνες)
Γεννήτρια σήματος RF: Η γεννήτρια σήματος RF είναι ένα εργαλείο που πρέπει να έχετε όταν παίζετε με ραδιοφωνικούς δέκτες. Χρησιμοποιείται για τον συντονισμό κυκλωμάτων αντήχησης και τη ρύθμιση της απόδοσης διαφορετικών σταδίων RF. Πολύ χρήσιμο χαρακτηριστικό της γεννήτριας σήματος RF είναι η δυνατότητα διαμόρφωσής της. Αν είναι