Πίνακας περιεχομένων:

Sound Switcher: 9 Βήματα
Sound Switcher: 9 Βήματα

Βίντεο: Sound Switcher: 9 Βήματα

Βίντεο: Sound Switcher: 9 Βήματα
Βίντεο: How to SEE FOOTSTEPS in Fortnite Chapter 3 on SCREEN 2024, Ιούλιος
Anonim
Sound Switcher
Sound Switcher

Έχετε ποτέ ακούσει τη μουσική σας στη δουλειά και δεν έχετε συνειδητοποιήσει ότι κάποιος προσπαθούσε να σας μιλήσει. Ακόμα χειρότερα, έχετε θελήσει ποτέ να κοιμηθείτε στη δουλειά, αλλά δεν είχατε έναν καλό τρόπο να ξυπνήσετε εάν κάποιος (όπως το αφεντικό σας) επρόκειτο να μπει στην καμπίνα σας. Εχω. Για να λύσω αυτά τα προβλήματα, εφηύρα το SoundSwitcher με βάση το Arduino. Βασικά αυτό χρησιμοποιεί 6 τρανζίστορ για εναλλαγή μεταξύ μιας πηγής ήχου (στην περίπτωσή μου ενός iPod) και της ασπίδας κυμάτων της Ladyada που σας ενημερώνει τι συμβαίνει. Στη συνέχεια, μπορείτε να συνδέσετε το Arduino σε οποιονδήποτε τύπο αισθητήρα θέλετε. Για παράδειγμα, το δικό μου είναι συνδεδεμένο με υπερηχητικό εύρημα Parallax Ping, μικρόφωνο, κουμπί κουδουνιού και υπολογιστή (ειδοποιήσεις για νέο μήνυμα ηλεκτρονικού ταχυδρομείου). Θα μπορούσατε να προχωρήσετε συνδέοντας μια αντίσταση φωτογραφιών για να εντοπίσετε πότε χτυπάει το κινητό σας τηλέφωνο (ανάβει η οθόνη) ή έναν αισθητήρα Parallax CH4, ώστε να μπορείτε να λάβετε μια έγκαιρη προειδοποίηση για αύξηση των επιπέδων μεθανίου στο θάλαμό σας επειδή ο σύντροφός σας είχε πάρα πολλά λάχανο στο μεσημεριανό γεύμα. Τέλος πάντων, οι περισσότεροι από εσάς πιθανότατα δεν έχετε αυτό το πρόβλημα (μακάρι να μην το είχα). Εκτός από το τι κάνει το έργο, δίνει επίσης οδηγίες σχετικά με τη μετατροπή κειμένου σε αρχείο wav και τη μεταφορά αρχείων στην κάρτα SD στο Arduino μέσω Serial Το Ας ελπίσουμε ότι αυτά θα είναι χρήσιμα για τους άλλους στα έργα τους. ΣΗΜΕΙΩΣΗ: Είμαι πολύ νέος σε όλα αυτά, οπότε δεν υπάρχει καμία εγγύηση ότι κάνω τα πράγματα σωστά. Αυτό είναι το πρώτο έργο που έχω σχεδιάσει ποτέ με τρανζίστορ, οπότε μπορεί να μου λείπουν κάποια καπάκια και δίοδοι κάπου. Το Το Αν κάποιος έχει κάποια συμβουλή θα χαρώ να την ακούσω και να την ενσωματώσω.

Βήμα 1: Μέρη

Ανταλλακτικά
Ανταλλακτικά
Ανταλλακτικά
Ανταλλακτικά

1- Arduino1- Wave Shield (Ladyada) 6 - 2n3904 τρανζίστορ6 - 330 Ohm αντιστάσεις6 - 22 Ohm αντιστάσεις2 - 10k Ohm αντιστάσεις (pullups για κουμπιά) 2 - κουμπιά2 - στερεοφωνικά αρσενικά ακουστικά 1 - θηλυκό στερεοφωνικό ακουστικό σύνδεσμος Όποιοι αισθητήρες θέλετε, έκανα 1 - Microphone1 - Parallax Ping Ultrasonic Range Finder1- Photocell1 - Υπολογιστής που εκτελεί ένα σενάριο Ruby που ελέγχει το email και συνδέεται με το Arduino μέσω σειριακής σειράς

Βήμα 2: Τρανζίστορ

Τρανζίστορ
Τρανζίστορ

Τα τρανζίστορ χρησιμοποιούνται κυρίως για την ενίσχυση των πραγμάτων ή ως διακόπτες. Σε αυτήν την περίπτωση χρησιμοποιώ τα τρανζίστορ ως διακόπτη. Όταν γυρίζω τον πείρο Arduino ψηλά, τότε το τρανζίστορ επιτρέπει τον ήχο να προέρχεται από τη συσκευή που είναι συνδεδεμένη με αυτά στα ακουστικά μου. Τρία τρανζίστορ σε κάθε πλευρά μου επιτρέπουν να αλλάζω γείωση και αριστερά και δεξιά στερεοφωνικά κανάλια για κάθε πηγή ήχου. Πειραματίστηκα με αρκετές αντιστάσεις και εγκαταστάθηκα σε αυτές. Τα τρανζίστορ δεν ζεσταίνονται και η αντίσταση από το ίδιο το τρανζίστορ είναι πολύ χαμηλή όταν ο πείρος Arduino που συνδέεται με αυτό είναι υψηλός. Αυτό είναι σημαντικό, ώστε να μπορώ να έχω καλό μη ανακατωμένο ήχο. Όπως μπορείτε να δείτε στο σχηματικό σχήμα στο επόμενο βήμα, τα τρανζίστορ συνδέονται το καθένα έτσι ώστε η βάση να πηγαίνει στον πείρο Arduino για να τον ελέγχει (με αντίσταση μεταξύ τους). Ο πομπός συνδέεται τόσο με τη γείωση (με αντίσταση) όσο και με την είσοδο ήχου. Ο συλλέκτης συνδέεται με την έξοδο ήχου στα ακουστικά. Εδώ είναι μια καλή ιστοσελίδα για τη χρήση τρανζίστορ ως διακόπτες

Βήμα 3: Συνδέστε τα όλα μαζί

Συνδέστε τα όλα μαζί
Συνδέστε τα όλα μαζί

Το σχηματικό είναι αρκετά απλό. Ένα πράγμα που πρέπει να θυμάστε είναι ότι η ασπίδα κυμάτων χρησιμοποιεί ένα σωρό καρφίτσες στο Arduino, οπότε μείνετε μακριά από αυτούς (τους συμπλήρωσα με κολλήσεις στον πίνακα μου). Χρησιμοποίησα τις καρφίτσες 8 και 9 για τα τρανζίστορ (8 παίζει κύμα ασπίδα, 9 παίζει εξωτερική πηγή ήχου). Το αναλογικό pin 0 χρησιμοποιήθηκε για το μικρόφωνο (δεν λειτουργεί πολύ καλά όμως, δουλεύω σε αυτό). Ο αναλογικός πείρος 1 χρησιμοποιείται για το κουμπί "Παράβλεψη". Όταν πιέζεται αυτό το κουμπί όλοι οι αισθητήρες αγνοούνται για προκαθορισμένο χρονικό διάστημα. Ο αναλογικός πείρος 2 είναι ένα "κουδούνι πόρτας". Υπάρχουν ακόμα μερικές δωρεάν καρφίτσες για άλλα πράγματα. Σχεδιάζω να προσθέσω μια αντίσταση φωτογραφιών που έβαλα στην οθόνη ενός κινητού για να εντοπίσω πότε χτυπάει στην αναλογική καρφίτσα 3. Θα το προσθέσω εδώ μόλις το δοκιμάσω.

Βήμα 4: Αισθητήρες

Αισθητήρες
Αισθητήρες

Αυτή τη στιγμή χρησιμοποιώ τους ακόλουθους "αισθητήρες" (πιθανώς οι είσοδοι είναι πιο ακριβείς) για να ενεργοποιήσω γεγονότα: -Πατήστε το κουμπί για το κουδούνι της πόρτας - Αυτό είναι αρκετά απλό, το κάνει έτσι ώστε κάποιος να μπορεί να πατήσει ένα κουμπί και θα ακούσει έναν ήχο στα ακουστικά σας σας ενημερώνει ότι κάποιος είναι κοντά. Το κουμπί που χρησιμοποίησα έκλεισε το κύκλωμα από προεπιλογή και άνοιξε το κύκλωμα όταν πατήθηκε το κουμπί (μόλις τα είχα γύρω). Μην ξεχνάτε τις αντιστάσεις έλξης (γενικά μια αντίσταση 10k Ohm που πηγαίνει στην ακίδα Arduino του σύρματος για να δώσει καλό σήμα όταν το κύκλωμα είναι ανοιχτό). Το δικό μου είναι συνδεδεμένο με το Arduino Analog Pin 2. -Parallax Ping Υπερηχητικό εύρημα εύρους - Ενημερώστε με όταν κάποιος είναι κοντά (δηλαδή κάποιος πρόκειται να εισέλθει στην καμπίνα σας). Το δικό μου συνδέεται με το Arduino Pin 6 (στο λευκό καλώδιο του αισθητήρα). Το κόκκινο καλώδιο του αισθητήρα πηγαίνει στα 5 βολτ και το μαύρο καλώδιο πηγαίνει στη γείωση. -Μικρόφωνο - Αυτό προορίζεται για την ανίχνευση όταν κάποιος σας μιλάει. Ξέρεις εκείνους τους τύπους που δεν συνειδητοποιούν ότι έχεις ακουστικά και αρχίζουν να μιλούν. Εξακολουθώ να το επεξεργάζομαι, φαίνεται ότι χρειάζομαι έναν προενισχυτή για να διαβάσω καλά με το μικρόφωνο που πήρα από το sparkfun. Ένα ενδιαφέρον επόμενο βήμα θα ήταν η εγγραφή μερικών δευτερολέπτων του ήχου σε ένα αρχείο στην ασπίδα κυμάτων και στη συνέχεια η αναπαραγωγή του, ώστε να γνωρίζετε αν είναι κάτι που σας ενδιαφέρει πριν απενεργοποιήσετε τη μουσική σας. -Υπολογιστής - Αυτή τη στιγμή αυτό χρησιμοποιεί ένα Ruby δέσμη ενεργειών για έλεγχο νέου μηνύματος ηλεκτρονικού ταχυδρομείου και στέλνει σήμα στη σειριακή θύρα όπου το Arduino πρέπει να το ενημερώσει ότι έχει ληφθεί νέο μήνυμα ηλεκτρονικού ταχυδρομείου. Θα μπορούσατε προφανώς να κάνετε πολλά περισσότερα με αυτό. Βασικά οτιδήποτε θα μπορούσε να ειδοποιήσει ο υπολογιστής, θα μπορούσατε να το έχετε ενεργοποιήσει μέσω των ακουστικών σας. Θα ήταν ωραίο αν μπορούσα ο υπολογιστής να δημιουργήσει αυτόματα ένα κύμα αρχείου χρησιμοποιώντας μερικές από τις φωνές AT&T, και στη συνέχεια να το στείλω στο Arduino μέσω σειριακής σειράς. Αυτό είναι μια διέξοδος όμως. -Αισθητήρας κλήσης κινητού τηλεφώνου - Χρησιμοποίησα ένα φωτοκύτταρο από το Radio Shack (The Shack) για αυτό. Το συνέδεσα στην αναλογική ακίδα 4 και μετά στα 5 βολτ. Πρέπει επίσης να κάνετε μια αντίσταση 10k Ohm από την πλευρά που συνδέεται με το pin 4 στο Arduino στη γείωση (διαφορετικά το σήμα δεν θα αλλάξει). Για το τηλέφωνό μου, αν το φωτοκύτταρο που χρησιμοποιώ υπερβαίνει τα 400 σε αναλογική ανάγνωση στο Arduino, τότε η οθόνη φωτίζεται. Άλλοι αισθητήρες κλήσης δυναμικών αισθητήρων -γραφείου - theσως το μικρόφωνο να μπορούσε να το πάρει. Ανάλογα με το τηλέφωνο, υπάρχουν πιθανώς διάφοροι τρόποι για να το κάνετε αυτό. Θα πρέπει να το σκεφτώ λίγο περισσότερο για να δω αν μπορώ να βρω μια λύση γενικής χρήσης. -Λέιζερ και αντίσταση φωτογραφιών - Μπορείτε να δείξετε έναν δείκτη λέιζερ στο άνοιγμα του θαλάμου σας σε μια αντίσταση φωτογραφίας. Όταν το φως σπάσει επειδή κάποιος μπαίνει στην καμπίνα σας, μπορείτε να ακούσετε μια ειδοποίηση. -CH4 ανιχνευτής αερίου - Εντοπίστε αύξηση των επιπέδων μεθανίου στο θάλαμο σας. Αυτό μπορεί να βοηθήσει ως σύστημα έγκαιρης προειδοποίησης για το αέριο που περνάει κοντά.

Βήμα 5: Γραμμή εντολών Κείμενο σε ομιλία

Εδώ είναι μια μικρή χρησιμότητα που έγραψα πολύ γρήγορα για να κρυφτεί κείμενο σε λόγο. Είναι γραμμένο σε C# με τη δωρεάν έκδοση Visual C# 2008 Express Edition. Πιθανώς θα χρειαστείτε. Net 3.5 για να το εκτελέσετε. Ο κωδικός περιλαμβάνεται, αλλά αν θέλετε απλώς το exe, μπορείτε να τον αποκτήσετε στο CommandLineText2Speech/CommandLineText2Speech/bin/Release στο αρχείο zip. Για να λειτουργήσει το εργαλείο, μπορείτε απλώς να ανοίξετε μια γραμμή εντολών, να μεταβείτε στον κατάλογο όπου έχετε βάλει το exe και να πληκτρολογήσετε CommandLineText2Speech.exe. Θα εξάγει αυτό: Χρήση: Για να εμφανίσετε εγκατεστημένες φωνές: CommandLineText2Speech.exe whatvoices

Για να μετατρέψετε κείμενο σε wav: CommandLineText2Speech.exe [φωνή] [ποσοστό - προεπιλογή 0 (-10 έως 10)] [ένταση - προεπιλογή 80 (0 έως 100)] "[κείμενο προς μετατροπή]" [αρχείο εξόδου] Με άλλα λόγια πιθανότατα θα θέλετε πρώτα να εκτελέσετε: CommandLineText2Speech.exe whatvoicesΑυτό θα αναφέρει ποιες φωνές έχετε εγκαταστήσει στον υπολογιστή σας. Θα χρειαστείτε το όνομα μιας φωνής για να εκτελέσετε το εργαλείο. Οι φωνές που έρχονται με τα Windows δεν είναι υπέροχες, η AT&T έχει μερικές πολύ καλές. Δίπλα για τη μετατροπή κειμένου σε αρχείο wav κάντε αυτόCommandLineText2Speech.exe "Microsoft Sam" 0 80 "This is a test" test.wavΑκολουθεί αυτό που σημαίνει: "Microsoft Sam"- η φωνή, αυτή είναι η οποία συνοδεύει τα Windows, έχετε για να το θέσω σε εισαγωγικά αφού υπάρχει κενό0- Κανονική ταχύτητα (μπορεί να πάει από -10 έως 10) 80- Κανονικός όγκος (μπορεί να πάει από 0 έως 100) "Αυτό είναι μια δοκιμή"- Το κείμενο που θα μετατραπεί σε αρχείο wavest.wav- πώς θα ονομάζεται το αρχείο wav

Βήμα 6:

Ο συνημμένος κώδικας Ruby κάνει τους ακόλουθους ελέγχους για να διαπιστώσει εάν υπάρχει νέο μήνυμα ηλεκτρονικού ταχυδρομείου και εάν υπάρχει, το μεταφέρει στο Arduino μέσω της διεπαφής USB σε σειριακή ενσωματωμένη στο Arduino. Είχα προβλήματα με τις συνδέσεις υψηλής ταχύτητας μέσω Serial (πιθανότατα το μέγεθος του buffer). Όλες οι ρυθμίσεις για το αρχείο βρίσκονται στο επάνω μέρος του αρχείου. Αυτό χρησιμοποιεί το πρόγραμμα μου C# για να δημιουργήσει ένα αρχείο wav. Μάλλον θα έπρεπε να τα μετατρέψω όλα σε μία γλώσσα, είμαι μεγάλος θαυμαστής του Ruby, αλλά δεν φαινόταν ότι θα μπορούσε να δημιουργήσει το wav από το κείμενο πολύ εύκολα, έτσι έγραψα τη μικρή εφαρμογή C#. Θα χρειαστείτε επίσης το ρουμπίνι σειριακό κόσμημα, το έχω συμπεριλάβει και αυτό. Για να το εγκαταστήσετε (αφού εγκαταστήσετε το Ruby) πληκτρολογήστε "gem install win32-serial-0.5.1-x86-mswin32-60.gem" στη γραμμή εντολών του καταλόγου στον οποίο κάνετε λήψη του πολύτιμου λίθου. Αυτό είναι το μόνο που χρειάζεστε για να λειτουργήσει αυτό το πρόγραμμα.

Βήμα 7: Κωδικός

Έχω επισυνάψει το σκίτσο μου Arduino. Έχει πολλά σχόλια για να βοηθήσει. Βασικά συνεχίζει να ελέγχει όλες τις εισόδους, αν ενεργοποιηθεί μία από αυτές, τότε αλλάζει τον ήχο στην ασπίδα κύματος και αναπαράγει το αρχείο wav που σχετίζεται με αυτήν την ειδοποίηση.

Βήμα 8: Εκτελέστε τα προγράμματα

Εντάξει, τώρα έχετε όλα τα μέρη. Για να λειτουργήσει σωστά, πρέπει να 1. Εγκαταστήστε το Wave Shield στο Arduino2. Συνδέστε το Arduino με τον υπολογιστή (ή χρησιμοποιήστε το XBee) - υποθέτω ότι έχετε ήδη εγκαταστήσει το υλικολογισμικό3. Εκτελέστε το σενάριο Ruby checkEmail.rb4. Απολαύστε τη μουσική σας, το Arduino θα σας διακόψει όταν χρειάζεται να διαβάσει το email σας ή όταν αισθανθεί κάτι στις περιπλανήσεις σας.

Βήμα 9: Βίντεο του τελικού προϊόντος

Εδώ είναι ο διακόπτης ήχου στη δουλειά

Συνιστάται: