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

Κύκλωμα LED διπλού κουμπιού: 5 βήματα
Κύκλωμα LED διπλού κουμπιού: 5 βήματα

Βίντεο: Κύκλωμα LED διπλού κουμπιού: 5 βήματα

Βίντεο: Κύκλωμα LED διπλού κουμπιού: 5 βήματα
Βίντεο: Κύκλωμα ένδειξης στάθμης δοχείου - Ένδειξη LED 5 σταδίων 2024, Νοέμβριος
Anonim
Κύκλωμα LED διπλού κουμπιού
Κύκλωμα LED διπλού κουμπιού

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

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

Σε αυτό το διδακτικό, το πρώτο μου: D, θα σας δείξω πώς να συνδέσετε το κύκλωμα για αυτό που ονόμασα το έργο μου Mark One, ένα κύκλωμα όπου δύο κουμπιά ελέγχουν τη φωτεινότητα του LED (το ένα θα αυξήσει τη φωτεινότητα και το δεύτερο θα το μειώσει) καθώς και τον τρόπο προγραμματισμού και προβολής των αποτελεσμάτων σας στο εργαλείο σειριακής παρακολούθησης. Θα σας δείξω ακριβώς τι χρειάζεστε καθώς και έναν οδηγό βήμα προς βήμα για τον τρόπο κατασκευής του. Το πρότζεκτ μου ενσωματώνει στοιχεία τόσο του κουμπιού όσο και του μαθήματος ξεθώριασης στον ιστότοπο με οδηγίες και σχολιάζεται έντονα για τη δική μου ευκολία καθώς και για τη δική σας. Εάν δεν έχετε ακόμη εξοικειωθεί με τη γλώσσα προγραμματισμού, πάρτε το χρόνο σας, αξίζει τον κόπο.

Απολαμβάνω!

Βήμα 1: Υλικά + Εργαλεία:

Υλικά + Εργαλεία
Υλικά + Εργαλεία

Υλικά:

1. Ένας πίνακας Arduino (χρησιμοποίησα ένα Mega 2560)

2. Ένα breadboard (με τουλάχιστον 60 σειρές)

3. Ένα LED (οποιοδήποτε χρώμα, χρησιμοποίησα κόκκινο)

4. Δύο τυπικά κουμπιά

5. Πέντε μπλε σύρματα (για να υποδείξετε το αρνητικό ρεύμα)

6. Τρία κόκκινα σύρματα (για να υποδείξετε το θετικό ρεύμα)

7. Ένα πορτοκαλί, πράσινο και κίτρινο σύρμα (σύρματα ελέγχου PWM για διάκριση μεταξύ των 3 κύριων εξαρτημάτων)

8. Τέσσερα λευκά σύρματα (για σύνδεση του κυκλώματος)

9. Τρεις αντιστάσεις 10K ohm (καφέ, μαύρο, πορτοκαλί, χρυσό)

Εργαλεία:

1. Ένα φορητό υπολογιστή

2. Η εφαρμογή Arduino IDE (με δυνατότητα λήψης από το κατάστημα Microsoft Play

Ή

2. Το Arduino δημιουργεί διαδικτυακό ιστότοπο (αν αυτό προτιμάτε)

3. Ευκίνητα χέρια

4. Google (ο εκπαιδευτικός ιστότοπος με βοήθησε πολύ)

5. Φορτία υπομονής · Δ

Βήμα 2: Ρύθμιση του αναλογικού σας κυκλώματος:

Ρύθμιση του αναλογικού σας κυκλώματος
Ρύθμιση του αναλογικού σας κυκλώματος

Η διαφορά μεταξύ αναλογικών και ψηφιακών συστημάτων είναι ότι τα αναλογικά συστήματα κωδικοποιούν διαφορετικές καταστάσεις, όπως διαφορετική φωτεινότητα ενός LED ενώ το ψηφιακό κωδικοποιεί μόνο δύο καταστάσεις (είτε ON είτε OFF).

Αυτό το κύκλωμα είναι αναλογικό γιατί ο στόχος ήταν να γίνει το φως να αλλάξει τη φωτεινότητα, όχι απλώς να ανάψει ή να σβήσει.

Για να το ρυθμίσετε:

1. Πάρτε ένα μπλε σύρμα (για αρνητικό) και συνδέστε το (στο Arduino) σε οποιαδήποτε από τις θύρες GND (γείωσης) στις θύρες τροφοδοσίας και συνδέστε το οπουδήποτε στο breadboard στις σειρές δίπλα στο μπλε αρνητικό έδαφος.

2. Πάρτε ένα κόκκινο (θετικό) σύρμα και συνδέστε το (στο Arduino) στη θύρα 5V στις θύρες τροφοδοσίας και συνδέστε το στη σειρά στο breadboard δίπλα στην κόκκινη θετική γραμμή γείωσης [Εξοικειωθείτε με τον τρόπο λειτουργίας του breadboard έχει ρυθμιστεί η διάταξη και ποιες σειρές είναι συνδεδεμένες κ.λπ. Οι οδηγίες χρήσης και ο ιστότοπος Arduino έχουν πολύ προσεγμένα μαθήματα για να κάνουν ακριβώς αυτό]

3. Στο αντίθετο άκρο του breadboard χρησιμοποιείτε ένα μπλε και ένα κόκκινο σύρμα για να συνδέσετε τις γραμμές γείωσης.

4. Στη συνέχεια, χρησιμοποιήστε τα τέσσερα λευκά σύρματα για να συνδέσετε τις σειρές γείωσης και των θετικών και των αρνητικών σε κάθε πλευρά της σειράς 30 της μέσης (θα πρέπει να γεφυρώσουν ένα μικρό κενό)

Βήμα 3: Ρυθμίστε τα κουμπιά:

Ρυθμίστε τα κουμπιά
Ρυθμίστε τα κουμπιά

1. Τώρα πάρτε τα κουμπιά σας και συνδέστε τα έτσι ώστε να απλώνεται στο μεσαίο κενό της σανίδας ψωμιού σε οποιοδήποτε σημείο (μου αρέσει να βγάζω λίγο τα πράγματα μου, ώστε να μπορώ πιο εύκολα να αλλάζω και να φτιάχνω τα πράγματα.

2. Πάρτε δύο κόκκινα σύρματα και συνδέστε το δεξί πόδι των κουμπιών που βλέπουν προς το μέρος σας με τη θετική γραμμή γείωσης.

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

4. Τώρα συνδέστε τις αντιστάσεις 10Κ (Καφέ, Μαύρο, Πορτοκαλί, Χρυσό) με το ένα πόδι στην ίδια κεντρική σειρά με το αρνητικό μπλε σύρμα και το άλλο πόδι στην ίδια σειρά με το αριστερό σκέλος του κουμπιού

[Όλα αυτά εξακολουθούν να συνδέονται στη μία πλευρά του διαχωρισμού στη μέση του breadboard εκτός από τα κουμπιά που βρίσκονται στο διάκενο και τα λευκά, κόκκινα και μπλε σύρματα για την αναλογική ρύθμιση)

5. Τώρα πάρτε το κίτρινο και πράσινο σύρμα και συνδέστε το αριστερό πόδι στην αντίθετη πλευρά του κεντρικού διαχωρισμού με τους πείρους 9 και 11 [Σημείωση: Το αναλογικό λειτουργεί μόνο στον πείρο 3, 5, 6, 9, 10 και 11]. Αυτά τα καλώδια προορίζονται για επικοινωνία με το Arduino.

Βήμα 4: Ρυθμίστε το LED:

Ρυθμίστε το LED
Ρυθμίστε το LED

1. Πάρτε το LED (χρώμα της επιλογής σας) και τοποθετήστε το στο πλάι του διαχωρισμού όπου βρίσκονται οι περισσότερες συνδέσεις σας.

2. Πάρτε ένα μπλε σύρμα και συνδέστε την αρνητική μπλε γραμμή γείωσης με την ίδια σειρά με το κοντό πόδι (άνοδος) της λυχνίας LED [Το κύκλωμα θα λειτουργήσει μόνο εάν η αρνητική μπλε γραμμή είναι συνδεδεμένη στο δεξί σκέλος του LED i.o.w. η άνοδος.

3. Πάρτε μια άλλη αντίσταση 10K ohm και συνδέστε τη σειρά στην οποία είναι συνδεδεμένη η κάθοδος (θετικό μακρύ πόδι του LED) με μια κοντινή σειρά στην ίδια πλευρά του κεντρικού διαχωρισμού.

4. Τώρα πάρτε το πορτοκαλί σύρμα και συνδέστε την αντίσταση με τον πείρο 3 στο Arduino

Το κύκλωμά σας είναι πλέον ολοκληρωμένο, το μόνο που απομένει τώρα είναι να προγραμματίσετε τα πάντα

Βήμα 5: Προγραμματισμός του κυκλώματος:

Είμαι λίγο νέος σε όλα αυτά, οπότε με συγχωρείτε γιατί αντιγράφω μόνο τον κώδικα και δεν δημιουργώ βίντεο…

Εδώ είναι ο κωδικός για το κύκλωμα:

// Το πρώτο δικό μου έργο My (Altus Lourens): // Δημιουργήθηκε μεταξύ 29 και 30 Ιουνίου 2018

// Σημείωση για τον εαυτό μου: Το AnalogWrite λειτουργεί μόνο σε 3, 5, 6, 9, 10 και 11

// ΣΗΜΕΙΩΣΗ: Το αναλογικό έχει να κάνει με διαφορετικές καταστάσεις, το ψηφιακό λειτουργεί μόνο για (Υ HIGHΗΛΗ) ή απενεργοποίηση (ΧΑΜΗΛΗ)

// Θα αναβοσβήνει η λυχνία LED

// τα κουμπιά θα είναι είσοδοι

// Το pushButton1 αυξάνει τη φωτεινότητα με ένα fadeAmount με κάθε πάτημα

// Το pushButton2 μειώνει τη φωτεινότητα με ένα fadeAmount με κάθε πάτημα

// οι σταθερές δεν θα αλλάξουν, ορίστε τους αριθμούς καρφιτσών PWM

const int ledPin = 3; // αριθμός του πείρου LED PWM

const int fadeAmount = 50; // αλλαγή φωτεινότητας με κάθε πάτημα του κουμπιού

const int buttonPin1 = 11;

const int buttonPin2 = 9; // αριθμός του πείρου του κουμπιού

// μεταβλητή που θα αλλάξει:

int φωτεινότητα = 5; // εκκίνηση φωτεινότητας των LED

int buttonState1 = 0; // καθορίστε το κουμπί που ξεκινά ως LOW

int buttonState2 = 0; // καθορίστε το κουμπί που ξεκινά ως LOW

void setup () {

// βάλτε τον κωδικό εγκατάστασης εδώ, για να εκτελεστεί μία φορά:

// αρχικοποιήστε την ακίδα LED ως έξοδο:

pinMode (ledPin, OUTPUT);

// αρχικοποιήστε τα κουμπιά ώθησης ως εισόδους:

pinMode (buttonPin1, INPUT);

pinMode (buttonPin2, INPUT);

Serial.begin (9600); // ταχύτητα επικοινωνίας στο κύκλωμα

}

// buttonPin1 θα αυξήσει τη φωτεινότητα της λυχνίας LED

// buttonPin2 θα μειώσει την ευχέρεια της λυχνίας LED

void loop () {

// βάλτε τον κύριο κωδικό σας εδώ, για να εκτελείται επανειλημμένα:

// ρυθμίστε τη φωτεινότητα του πείρου 9:

analogWrite (ledPin, φωτεινότητα)? // φωτεινότητα = 5, η λυχνία LED είναι αναμμένη

φωτεινότητα = περιορισμός (φωτεινότητα, 0, 255); // περιορίστε τη φωτεινότητα μεταξύ 0 και 255

// διαβάστε την κατάσταση της τιμής του κουμπιού ώθησης:

buttonState1 = digitalRead (buttonPin1);

buttonState2 = digitalRead (buttonPin2);

// ελέγξτε αν έχουν πατηθεί τα κουμπιά:

// αν είναι -> buttonState = HIGH:

// κουμπί1:

εάν (buttonState1 == HIGH) {

brightness = brightness + fadeAmount; // αύξηση φωτεινότητας:

analogWrite (ledPin, brightness + fadeAmount);

}

else {// η φωτεινότητα παραμένει στο ίδιο επίπεδο και η λυχνία LED είναι ακόμα σβηστή:

analogWrite (ledPin, φωτεινότητα)?

}

// κουμπί2:

εάν (buttonState2 == HIGH) {

brightness = brightness - fadeAmount; // μείωση φωτεινότητας:

analogWrite (ledPin, brightness - fadeAmount);

}

αλλιώς {

// η φωτεινότητα παραμένει στο ίδιο επίπεδο, δεν πραγματοποιείται καμία αλλαγή:

analogWrite (ledPin, φωτεινότητα)?

}

Serial.print ("φωτεινότητα");

Serial.println (φωτεινότητα); }

Τώρα μπορείτε να προσαρμόσετε την ταχύτητα επικοινωνίας και να παίξετε λίγο με αυτήν μέχρι να βρείτε μια ταχύτητα που λειτουργεί τέλεια για το εργαλείο σειριακής οθόνης [το 9600 Baud είναι απλώς μια τυπική ταχύτητα]

Συνιστάται: