Το Raspberry Pi Pico είναι μια πλακέτα μικροελεγκτή χαμηλού κόστους που διευκολύνει τους αρχάριους να ξεκινήσουν με ηλεκτρονικά έργα και να μάθουν πώς να κωδικοποιούν.
Για αυτό το έργο, θα μάθετε πώς να διαβάζετε ένα αναλογικό σήμα από ένα ποτενσιόμετρο και να το μετατρέπετε σε PWM (διαμόρφωση πλάτους παλμού) σήμα για χειρισμό της συχνότητας ή του τόνου ενός βομβητή με τη βοήθεια του MicroPython κώδικας.
Τι εξαρτήματα χρειάζονται;
Αυτό το έργο βασίζεται στο Kitronik Inventor's Kit για Raspberry Pi Pico. Όλα τα απαραίτητα ηλεκτρονικά εξαρτήματα περιλαμβάνονται στο κιτ. Ωστόσο, αυτά είναι κοινά στοιχεία που μπορεί να έχετε:
- Βομβητής πιεζοστοιχείων
- Περιστροφικό ποτενσιόμετρο
- 7x καλώδια άλτης αρσενικού-αρσενικού
- Raspberry Pi Pico με συγκολλημένες ακίδες κεφαλίδας GPIO
- Breadboard
Εάν είστε νέοι στη διαμόρφωση πλάτους παλμού (PWM) και στα ποτενσιόμετρα, πρώτα ανατρέξτε στον οδηγό μας για
πώς να χρησιμοποιήσετε ένα ποτενσιόμετρο με το Raspberry Pi Pico, το οποίο περιγράφει πώς να το χρησιμοποιήσετε για να ρυθμίσετε τη φωτεινότητα ενός LED με PWM.Απαιτούμενη συναρμολόγηση
Ένα καλώδιο βραχυκυκλωτήρα (κίτρινο στη φωτογραφία) συνδέει την αριστερή πλευρά του ποτενσιόμετρου με τη θετική (+) ράγα της πλάκας ψωμιού. Ένα άλλο καλώδιο βραχυκυκλωτήρα συνδέει τη δεξιά πλευρά του ποτενσιόμετρου με την αρνητική (-) πλευρά της πλακέτας ψωμιού. Από τη μεσαία ακίδα του ποτενσιόμετρου, θα χρειαστεί να περάσετε ένα καλώδιο βραχυκυκλωτήρα στον πείρο GP26/A0 στο Pico.
Ο πιεζοηχητικός βομβητής θα πρέπει να έχει ένα καλώδιο που πηγαίνει από το αρνητικό του πόδι στην αρνητική ράγα breadboard και, στη συνέχεια, μια άλλη σύνδεση από το θετικό του σκέλος στον πείρο GP15 στο Raspberry Pi Pico.
Θα χρειαστεί επίσης να περάσετε ένα καλώδιο βραχυκυκλωτήρα από μια ακίδα GND στο Pico στην αρνητική ράγα στο breadboard, για να τη γειώσετε. Ένα άλλο καλώδιο βραχυκυκλωτήρα θα συνδέσει τον πείρο εξόδου 3V3 στο Pico με τη θετική ράγα της πλακέτας ψωμιού, για να τροφοδοτήσει τα εξαρτήματα.
Δημιουργήστε τον Κώδικα
Μπορείτε να πάρετε τον κωδικό από το Αποθετήριο MUO GitHub. Κάντε λήψη του αρχείου MicroPython με το όνομα piezo-buzzer.py και στη συνέχεια φορτώστε το στο Pico σας μέσω ενός υπολογιστή συνδεδεμένου σε USB που εκτελεί το Thonny IDE. Ελέγξτε πώς να ξεκινήστε με το MicroPython στο Raspberry Pi Pico για λεπτομέρειες.
Τα διάφορα μέρη του κώδικα κάνουν τα εξής:
- Στην κορυφή, εισάγουμε τα απαιτούμενα μηχανή, μαθηματικά, και χρόνος Ενότητες MicroPython.
- ΕΝΑ βομβητής Στη συνέχεια, η μεταβλητή εκχωρείται στην καρφίτσα GP15 ως έξοδο PWM.
- ΕΝΑ ποτενσιόμετρο Η μεταβλητή εκχωρείται στον μετατροπέα αναλογικού σε ψηφιακό (ADC) στον ακροδέκτη GP26/A0 του Pico.
- Ορίζουμε α κλίμακα() συνάρτηση που χρησιμοποιεί μαθηματικές συναρτήσεις για να μετατρέψει το εύρος της κίνησης του ποτενσιόμετρου σε έξοδο για το βομβητή.
- ο ενώ: Αλήθεια Ο άπειρος βρόχος διαβάζει την είσοδο του ποτενσιόμετρου και μετά χρησιμοποιεί το κλίμακα λειτουργία για τη μετατροπή του. Αφού ελέγξει ότι δεν έχει αλλάξει πολύ από την προηγούμενη συχνότητα, στέλνει την υπολογισμένη συχνότητα στον βομβητή χρησιμοποιώντας PWM (διαμόρφωση πλάτους παλμού).
Συνοπτικά, υπάρχουν εκατοντάδες παλμοί που αποστέλλονται ανά δευτερόλεπτο και ο τόνος του βομβητή θα μετατοπιστεί μεταξύ 120 Hz και 5 kHz καθώς το ποτενσιόμετρο περιστρέφεται δεξιόστροφα ή αριστερόστροφα. Η περιστροφή του ποτενσιόμετρου αλλάζει την τάση που διαβάζεται από την αναλογική ακίδα εισόδου του Pico, η οποία με τη σειρά της χρησιμοποιείται για τη ρύθμιση της συχνότητας του βομβητή χρησιμοποιώντας PWM.
Εκτελέστε τον κωδικό από το Thonny (κάντε κλικ στο εικονίδιο αναπαραγωγής ή πατήστε F5 στο πληκτρολόγιό σας) και δοκιμάστε το μόνοι σας. Μετά την πρώτη σας εκτέλεση, τυχόν αλλαγές στον κώδικα θα επηρεάσουν τα φυσικά αποτελέσματα; Για παράδειγμα, τι συμβαίνει εάν αλλάξετε το εύρος (0 έως 65535); Αυτό το τμήμα του κώδικα βρίσκεται ακριβώς από κάτω ενώ Αλήθεια: όπου το συχνότητα ορίζεται.
Ρύθμιση του τόνου
Εάν αισθάνεστε περιπετειώδεις, μπορεί να θέλετε να δοκιμάσετε να χρησιμοποιήσετε το buzzer για να δημιουργήσετε μουσικούς τόνους χρησιμοποιώντας martinkooij's πι-πικο-τόνοι βιβλιοθήκη στο GitHub. Από προεπιλογή, αυτή η βιβλιοθήκη θα δημιουργήσει ημιτονοειδή κύματα. Οι γεννήτριες τεσσάρων τόνων μπορούν να λειτουργήσουν σε τέσσερις διαφορετικές ακίδες Pico όπως μπορείτε να επιλέξετε. Σημειώστε ότι αυτό το έργο βασίζεται σε C++ χρησιμοποιώντας το Raspberry Pi Pico SDK, αντί για το MicroPython, αλλά πλήρεις οδηγίες παρέχονται στο GitHub readme.
The Buzz of Pico Electronics
Συγχαρητήρια: μάθατε πώς να διαβάζετε την αναλογική είσοδο από ένα ποτενσιόμετρο και να τη μετατρέπετε σε σήμα PWM για να ελέγχετε έναν ήχο βομβητή. Το ποτενσιόμετρο είναι μια ευέλικτη συσκευή εισόδου για ηλεκτρονικά. Ένας πιεζοφωνικός βομβητής είναι ένα άλλο εύχρηστο στοιχείο: με την προσθήκη ενός αισθητήρα υπέρυθρης κίνησης PIR, για παράδειγμα, θα μπορούσατε να ανιχνεύσετε την παρουσία εισβολέων και να ηχήσετε τον συναγερμό.