Arduino Musical Tune Generator Circuit

Δοκιμάστε Το Όργανο Μας Για Την Εξάλειψη Των Προβλημάτων





Μπορείτε να χρησιμοποιήσετε αυτό το μικρό κύκλωμα γεννήτριας μουσικού συντονισμού Arduino για μια προτιμώμενη εφαρμογή, όπως για να φτιάξετε ένα ενδιαφέρον κουδούνι πόρτας, ως αντίστροφο κέρατο αυτοκινήτου ή κουτί μουσικής για να δώσετε κάποιον ή απλά για προσωπική διασκέδαση.

Απαιτείται υλικό

Το υλικό που απαιτείται για το έργο δίνεται ως εξής:



  • Πίνακας Arduino ή Genuino
  • piezo buzzer ή ένα ηχείο
  • καλώδια σύνδεσης

Το Arduino τροφοδοτείται με είσοδο τροφοδοσίας 9V, 500mA που θα μπορούσε να είναι από οποιονδήποτε τυπικό προσαρμογέα SMPS AC σε DC, ή μπορείτε επίσης να δοκιμάσετε τον φορτιστή κινητού τηλεφώνου σας για τον ίδιο.

Το Pin # 8 από το Arduino μπορεί να διαμορφωθεί απευθείας με το ηχείο που δεν πρέπει να έχει βαθμολογία πάνω από 8 ohm και 1 watt.



Έτσι, ένα καλώδιο του ηχείου συνδέεται με τον πείρο # 8 της πλακέτας Arduino και το άλλο καλώδιο πηγαίνει στην αρνητική γραμμή ή τη γραμμή γείωσης της πλακέτας.

Για ενισχυμένη έξοδο

Για δυνατότερο ή εξαιρετικά ενισχυμένο ήχο, μπορείτε να διαμορφώσετε τον ακροδέκτη # 8 με ένα στάδιο τρανζίστορ, που αποτελείται από ένα τρανζίστορ TIP31, του οποίου η βάση μπορεί να συνδεθεί με pin8 μέσω αντίστασης 1Κ, πομπού στη γείωση και συλλέκτη σε ένα από τα καλώδια του ηχείο, το άλλο καλώδιο του spaker συνδέεται τώρα με τη θετική παροχή που είναι η τροφοδοσία 9V (+).

Εδώ βεβαιωθείτε ότι το ηχείο έχει βαθμολογία στα 8 ohms, αλλά σε πολύ υψηλότερη ισχύ, ενδέχεται να είναι περίπου 5 watt για μια ενισχυμένη παραγωγή μουσικής.

Αυτό το σκίτσο κωδικοποιείται για αναπαραγωγή και δημιουργία πολλών τυχαίων
μελωδίες διαδοχικά χρησιμοποιώντας πεντατονική κλίμακα
/*
Musician
Plays a (fairly) random tune until the program is stopped.
8-ohm speaker on digital pin 8.
//Copyright (c) 2012 Jeremy Fonte
//This code is released under the MIT license
//https://opensource.org/licenses/MIT
*/
int randomNote = 131
int randomDuration = 2
int noteStep = 1
int notes[15]
void setup() {
pinMode(8, OUTPUT)
notes[1] = 131
notes[2] = 147
notes[3] = 165
notes[4] = 196
notes[5] = 220
notes[6] = 262
notes[7] = 294
notes[8] = 330
notes[9] = 392
notes[10] = 440
notes[11] = 523
notes[12] = 587
notes[13] = 659
notes[14] = 784
notes[15] = 880
randomNote = random(1, 15)
}
void loop() {
noteStep = random(-3, 3)
randomNote = randomNote + noteStep
if(randomNote <1) {
randomNote = random(1, 15)
}
else if(randomNote > 15) {
randomNote = random(1, 15)
}
randomDuration = random(1, 8)
// to calculate the note duration, take one second
// divided by the note type.
//e.g. quarter note = 1000 / 4, eighth note = 1000/8, etc.
int noteDuration = 1000/randomDuration
tone(8, notes[randomNote],noteDuration)
// to distinguish the notes, set a minimum time between them.
// the note's duration + 30% seems to work well:
int pauseBetweenNotes = noteDuration * 1.30
delay(pauseBetweenNotes)
// stop the tone playing:
noTone(8)
}

Το διάγραμμα σύνδεσης για το προτεινόμενο κύκλωμα γεννήτριας μουσικού συντονισμού Arduino φαίνεται παρακάτω:

Arduino Musical Tune Generator Circuit

Για ακρόαση με ενισχυμένη ισχύ, η ίδια ρύθμιση μπορεί να αναβαθμιστεί με τρανζίστορ ισχύος όπως φαίνεται στο παρακάτω σχήμα:




Προηγούμενο: Εξηγήθηκαν 4 κυκλώματα απλής τράπεζας ισχύος Επόμενο: Arduino RGB Flowing Sequential Light Circuit