Ξεκινώντας με το Arduino: Οδηγός για αρχάριους

Ξεκινώντας με το Arduino: Οδηγός για αρχάριους

Το Arduino είναι μια πλατφόρμα πρωτοτύπων ηλεκτρονικών ανοιχτού κώδικα και είναι μία από τις πιο δημοφιλείς στον κόσμο-με πιθανή εξαίρεση το Raspberry Pi. Έχοντας πουλήσει πάνω από 3 εκατομμύρια μονάδες (και πολλές άλλες με τη μορφή συσκευών κλωνοποίησης τρίτων): τι το κάνει τόσο καλό και τι μπορείτε να κάνετε με ένα;





Τι είναι το Arduino;

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





Το Arduino ανιχνεύει το περιβάλλον διαβάζοντας δεδομένα από διάφορα κουμπιά, εξαρτήματα και αισθητήρες. Μπορούν να επηρεάσουν το περιβάλλον ελέγχοντας τα LED, κινητήρες , σερβο, ρελέ και πολλά άλλα.





Τα έργα Arduino μπορεί να είναι αυτόνομα ή να επικοινωνούν με λογισμικό που εκτελείται σε υπολογιστή ( Επεξεργασία είναι το πιο δημοφιλές λογισμικό για αυτό). Μπορούν να μιλήσουν με άλλα Arduinos, Raspberry Pis, NodeMCU ή σχεδόν οτιδήποτε άλλο. Βεβαιωθείτε ότι έχετε διαβάσει τη σύγκριση των μικροελεγκτών $ 5 για μια λεπτομερή σύγκριση των διαφορών μεταξύ αυτών των μικροελεγκτών.

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



Εκτός από την απλότητα του Arduino, είναι επίσης φθηνό, πολλαπλών πλατφορμών και ανοιχτού κώδικα. Το Arduino Uno (το πιο δημοφιλές μοντέλο) βασίζεται στους μικροελεγκτές ATMEGA 16U2 της Atmel. Παράγονται πολλά διαφορετικά μοντέλα, τα οποία διαφέρουν σε μέγεθος, ισχύ και προδιαγραφές, οπότε ρίξτε μια ματιά στον οδηγό αγοράς μας για όλες τις διαφορές.

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





Τι μπορείτε να κάνετε με ένα Arduino;

Ένα Arduino μπορεί να κάνει έναν εκπληκτικό αριθμό πραγμάτων. Είναι ο εγκέφαλος της επιλογής για την πλειοψηφία των 3D εκτυπωτών. Το χαμηλό κόστος και η ευκολία χρήσης τους σημαίνει ότι χιλιάδες κατασκευαστές, σχεδιαστές, χάκερ και δημιουργοί έχουν κάνει εκπληκτικά έργα. Εδώ είναι μερικά μόνο από τα έργα Arduino που κάναμε εδώ στο MakeUseOf:

Τι υπάρχει μέσα σε ένα Arduino;

Παρόλο που υπάρχουν πολλοί διαφορετικοί τύποι πινάκων Arduino, αυτό το εγχειρίδιο εστιάζει στην Arduino uno μοντέλο. Αυτός είναι ο πιο δημοφιλής πίνακας Arduino που υπάρχει. Τι είναι αυτό που κάνει αυτό το πράγμα; Εδώ είναι οι προδιαγραφές:





  • Επεξεργαστής: 16 Mhz ATmega16U2
  • Μνήμη flash: 32KB
  • Εμβολο: 2KB
  • Τάση λειτουργίας: 5V
  • Τάση εισόδου: 7-12V
  • Αριθμός αναλογικών εισόδων: 6
  • Αριθμός ψηφιακής εισόδου/εξόδου: 14 (6 από αυτά διαμόρφωση πλάτους παλμού - PWM )

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

Ένα άλλο υπέροχο χαρακτηριστικό του Arduino είναι η δυνατότητα χρήσης των λεγόμενων «ασπίδων» ή πρόσθετων πινάκων. Παρόλο που οι ασπίδες δεν θα καλύπτονται σε αυτό το εγχειρίδιο, είναι ένας πολύ προσεγμένος τρόπος για να επεκτείνετε τις δυνατότητες και τη λειτουργικότητα του Arduino σας.

Τι θα χρειαστείτε για αυτόν τον οδηγό

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

Εάν δεν μπορείτε να λάβετε μια συγκεκριμένη τιμή αντίστασης, κάτι όσο το δυνατόν πιο κοντά συνήθως λειτουργεί κανονικά.

Επισκόπηση ηλεκτρικών εξαρτημάτων

Ας δούμε τι ακριβώς είναι όλα αυτά τα συστατικά, τι κάνουν και πώς μοιάζουν.

Breadboard

Χρησιμοποιούνται για το πρωτότυπο ηλεκτρονικών κυκλωμάτων, παρέχουν ένα προσωρινό μέσο σύνδεσης στοιχείων μεταξύ τους. Οι πλάκες ψωμιού είναι πλαστικά τεμάχια με τρύπες, στα οποία μπορούν να εισαχθούν σύρματα. Οι τρύπες είναι διατεταγμένες σε σειρές, σε ομάδες των πέντε. Όταν θέλετε να αναδιατάξετε ένα κύκλωμα, τραβήξτε το σύρμα ή μέρος από την τρύπα και μετακινήστε το. Πολλοί πίνακες ψωμιού περιέχουν δύο ή τέσσερις ομάδες οπών που τρέχουν το μήκος της σανίδας, κατά μήκος των πλευρών, και είναι όλες συνδεδεμένες - αυτές είναι συνήθως για διανομή ισχύος και μπορεί να επισημαίνονται με κόκκινη και μπλε γραμμή.

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

LED

LED σημαίνει Δίοδος εκπομπής φωτός Το Είναι μια πολύ φθηνή πηγή φωτός και μπορεί να είναι πολύ φωτεινά - ειδικά όταν ομαδοποιούνται. Μπορούν να αγοραστούν σε διάφορα χρώματα, δεν ζεσταίνονται ιδιαίτερα και διαρκούν πολύ. Ενδέχεται να έχετε LED στην τηλεόρασή σας, στο ταμπλό του αυτοκινήτου σας ή στους λαμπτήρες Philips Hue.

Ο μικροελεγκτής Arduino διαθέτει επίσης ένα ενσωματωμένο LED στον ακροδέκτη 13 που χρησιμοποιείται συχνά για να υποδείξει μια ενέργεια ή ένα συμβάν ή απλώς για δοκιμή.

Αντίσταση φωτογραφιών

Αντίσταση φωτογραφίας ( Π hotocell ή Αντίσταση εξαρτώμενη από το φως ) επιτρέπει στο Arduino σας να μετρά τις αλλαγές στο φως. Θα μπορούσατε να το χρησιμοποιήσετε για να ενεργοποιήσετε τον υπολογιστή σας όταν είναι φως της ημέρας, για παράδειγμα.

Tactile Switch

πώς να φτιάξετε ένα αρχείο δέσμης των windows 10

Ένας απτικός διακόπτης είναι βασικά ένα κουμπί. Πατώντας το θα ολοκληρωθεί το κύκλωμα και (συνήθως) θα αλλάξει από 0V σε +5V. Το Arduinos μπορεί να εντοπίσει αυτήν την αλλαγή και να απαντήσει ανάλογα. Αυτά είναι συχνά στιγμιαίος - που σημαίνει ότι «πιέζονται» μόνο όταν το δάχτυλό σας τα κρατάει κάτω. Μόλις τα αφήσετε, θα επιστρέψουν στην προεπιλεγμένη τους κατάσταση («χωρίς πίεση» ή απενεργοποιημένη).

Ηχείο Piezo

Το πιεζοηχείο είναι ένα μικρό μικρό ηχείο που παράγει ήχο από ηλεκτρικά σήματα. Είναι συχνά σκληρές και κακές, και δεν ακούγονται σε τίποτα σαν πραγματικό ηχείο. Τούτου λεχθέντος, είναι πολύ φθηνά και εύκολο στον προγραμματισμό. Το Buzz Wire Game μας χρησιμοποιεί ένα για να παίξει το Θεματικό τραγούδι Monty Python «Flying Circus» Το

Αντίσταση

Μια αντίσταση περιορίζει τη ροή του ηλεκτρισμού. Είναι πολύ φθηνά εξαρτήματα και βασικό στοιχείο ερασιτεχνικών και επαγγελματικών ηλεκτρονικών κυκλωμάτων. Απαιτούνται σχεδόν πάντα για να προστατεύουν τα εξαρτήματα από την υπερφόρτωση. Χρειάζονται επίσης για την αποφυγή βραχυκυκλώματος εάν το Arduino +5V συνδέεται κατευθείαν στο έδαφος. Εν ολίγοις: πολύ βολικό και απολύτως απαραίτητο.

Jumper Wires

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

Ρύθμιση του Arduino σας

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

Εγκατάσταση του πακέτου λογισμικού Arduino στα Windows

Προχωρήστε στο Ιστοσελίδα Arduino και κατεβάστε μια έκδοση του λογισμικού Arduino κατάλληλη για την έκδοσή σας των Windows. Μετά τη λήψη, ακολουθήστε τις οδηγίες για να εγκαταστήσετε το Arduino Ολοκληρωμένο περιβάλλον ανάπτυξης (ΕΔΩ).

Η εγκατάσταση περιλαμβάνει προγράμματα οδήγησης, οπότε θεωρητικά, καλό θα είναι να πάτε αμέσως. Εάν αυτό αποτύχει για κάποιο λόγο, δοκιμάστε αυτά τα βήματα για να εγκαταστήσετε τα προγράμματα οδήγησης με μη αυτόματο τρόπο:

  • Συνδέστε τον πίνακα και περιμένετε τα Windows να ξεκινήσουν τη διαδικασία εγκατάστασης του προγράμματος οδήγησης. Μετά από λίγα λεπτά, η διαδικασία θα αποτύχει, παρά τις προσπάθειές της.
  • Κάντε κλικ στο Αρχικο ΜΕΝΟΥ >> Πίνακας Ελέγχου Το
  • Μεταβείτε στο ΣΥΣΤΗΜΑ ΚΑΙ ΑΣΦΑΛΕΙΑ >> Σύστημα Το Μόλις ανοίξει το παράθυρο του συστήματος, ανοίξτε το Διαχειριστή της συσκευής Το
  • Υπό Λιμάνια (COM & LPT), θα πρέπει να δείτε μια ανοιχτή θύρα με όνομα Arduino UNO (COMxx) Το
  • Κάντε δεξί κλικ επάνω Arduino UNO (COMxx) >> Ενημέρωση λογισμικού προγράμματος οδήγησης Το
  • Επιλέγω Περιηγηθείτε στον υπολογιστή μου για λογισμικό προγράμματος οδήγησης Το
  • Μεταβείτε και επιλέξτε το αρχείο προγράμματος οδήγησης Uno, με όνομα ArduinoUNO.inf , που βρίσκεται στο Οδηγοί φάκελο της λήψης λογισμικού Arduino.

Τα Windows θα ολοκληρώσουν την εγκατάσταση του προγράμματος οδήγησης από εκεί.

Εγκατάσταση του πακέτου λογισμικού Arduino σε Mac OS

Κατεβάστε το λογισμικό Arduino για Mac από το Ιστοσελίδα Arduino Το Εξαγάγετε το περιεχόμενο του .φερμουάρ αρχείο και εκτελέστε την εφαρμογή. Μπορείτε να το αντιγράψετε στο φάκελο εφαρμογών σας, αλλά θα τρέξει μια χαρά από το δικό σας επιφάνεια εργασίας ή λήψεις φακέλους. Δεν χρειάζεται να εγκαταστήσετε πρόσθετα προγράμματα οδήγησης για το Arduino UNO.

Εγκατάσταση του λογισμικού Arduino στο πακέτο Ubuntu/Linux

Εγκαθιστώ gcc-avr και avr-libc :

sudo apt-get install gcc-avr avr-libc

Εάν δεν έχετε ήδη openjdk-6-jre, εγκαταστήστε και διαμορφώστε και αυτό:

sudo apt-get install openjdk-6-jre
sudo update-alternatives --config java

Επιλέξτε το σωστό JRE εάν έχετε εγκαταστήσει περισσότερα από ένα.

μεταβείτε στο Ιστοσελίδα Arduino και κατεβάστε το λογισμικό Arduino για Linux. Μπορείς εξάπλωση και εκτελέστε το με την ακόλουθη εντολή:

tar xzvf arduino-x.x.x-linux64.tgz
cd arduino-1.0.1
./arduino

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

Εκτέλεση του λογισμικού Arduino

Τώρα που έχει εγκατασταθεί το λογισμικό και έχει ρυθμιστεί το Arduino, ας επαληθεύσουμε ότι όλα λειτουργούν. Ο ευκολότερος τρόπος για να γίνει αυτό είναι χρησιμοποιώντας το δείγμα της εφαρμογής 'Blink'.

Ανοίξτε το λογισμικό Arduino κάνοντας διπλό κλικ στην εφαρμογή Arduino ( ./arduino στο Linux ). Βεβαιωθείτε ότι η πλακέτα είναι συνδεδεμένη στον υπολογιστή σας και, στη συνέχεια, ανοίξτε την Αναβοσβήνει η λυχνία LED παράδειγμα σκίτσο: Αρχείο >> Παραδείγματα >> 1. Βασικά >> Αναβοσβήνω Το Θα πρέπει να δείτε τον κωδικό για την εφαρμογή ανοιχτό:

Για να ανεβάσετε αυτόν τον κωδικό στο Arduino σας, επιλέξτε την καταχώριση στο Εργαλεία >> Σανίδα μενού που αντιστοιχεί στο μοντέλο σας - Arduino uno σε αυτήν την περίπτωση.

Επιλέξτε τη σειριακή συσκευή της πλακέτας σας από το Εργαλεία >> Σειριακή θύρα μενού. Στα Windows, αυτό είναι πιθανό να είναι COM3 ή υψηλότερα. Σε Mac ή Linux αυτό θα πρέπει να είναι κάτι με /dev/tty.usbmodem μέσα σε αυτό.

Τέλος, κάντε κλικ στο Μεταφόρτωση κουμπί επάνω αριστερά του περιβάλλοντός σας. Περιμένετε μερικά δευτερόλεπτα και θα δείτε το RX και TX Οι λυχνίες LED στο Arduino αναβοσβήνουν. Εάν η μεταφόρτωση είναι επιτυχής, το μήνυμα 'Ολοκλήρωση φόρτωσης' θα εμφανιστεί στη γραμμή κατάστασης.

Λίγα δευτερόλεπτα μετά την ολοκλήρωση της μεταφόρτωσης, θα πρέπει να δείτε το καρφίτσα 13 Η λυχνία LED στον πίνακα αρχίζει να αναβοσβήνει. Συγχαρητήρια! Έχετε θέσει σε λειτουργία το Arduino σας.

Έργα εκκίνησης

Τώρα που γνωρίζετε τα βασικά, ας δούμε μερικά έργα για αρχάριους.

Χρησιμοποιήσατε προηγουμένως το δείγμα κώδικα Arduino για να αναβοσβήνει η ενδεικτική λυχνία LED επί του σκάφους. Αυτό το έργο αναβοσβήνει μια εξωτερική λυχνία LED χρησιμοποιώντας ένα breadboard. Ιδού το κύκλωμα:

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

Εδώ είναι ο κώδικας που χρειάζεστε:

void setup() {
// put your setup code here, to run once:
pinMode(7, OUTPUT); // configure the pin as an output
}
void loop() {
// put your main code here, to run repeatedly:
digitalWrite(7, HIGH); // turn LED on
delay(1000); // wait 1 second
digitalWrite(7, LOW); // turn LED off
delay(1000); // wait one second
}

Αυτός ο κώδικας κάνει πολλά πράγματα:

void setup (): Αυτό λειτουργεί από το Arduino μία φορά κάθε φορά που ξεκινά. Εδώ μπορείτε να διαμορφώσετε μεταβλητές και οτιδήποτε χρειάζεται το Arduino σας για να τρέξει.

pinMode (7, ΕΞΟΔΟΣ): Αυτό λέει στο Arduino να χρησιμοποιήσει αυτόν τον πείρο ως έξοδο, χωρίς αυτήν τη γραμμή, το Arduino δεν θα ήξερε τι να κάνει με κάθε καρφίτσα. Αυτό πρέπει να διαμορφωθεί μόνο μία φορά ανά καρφίτσα και χρειάζεται μόνο να διαμορφώσετε τις καρφίτσες που σκοπεύετε να χρησιμοποιήσετε.

κενός βρόχος (): Οποιοσδήποτε κώδικας μέσα σε αυτόν τον βρόχο εκτελείται επανειλημμένα ξανά και ξανά, μέχρι να απενεργοποιηθεί το Arduino. Αυτό μπορεί να κάνει τα μεγαλύτερα έργα πιο περίπλοκα, αλλά λειτουργεί εκπληκτικά καλά για απλά έργα.

digitalWrite (7, HIGH): Αυτό χρησιμοποιείται για τη ρύθμιση του πείρου ΥΨΗΛΟΣ ή ΧΑΜΗΛΟΣ - ΕΠΙ ή ΜΑΚΡΙΑ ΑΠΟ Το Ακριβώς όπως ένας διακόπτης φώτων, όταν ο πείρος είναι Υ HIGHΟΣ, το LED θα είναι αναμμένο. Όταν ο πείρος είναι ΧΑΜΗΛΟΣ, το LED θα σβήσει. Μέσα στις αγκύλες, πρέπει να καθορίσετε ορισμένες πρόσθετες πληροφορίες για να λειτουργήσει σωστά. Οι πρόσθετες πληροφορίες είναι γνωστές ως παράμετροι ή ορίσματα.

Το πρώτο (7) είναι ο αριθμός pin. Εάν έχετε συνδέσει το LED σας σε διαφορετικό πείρο, για παράδειγμα, θα το αλλάξετε από επτά σε άλλο αριθμό. Η δεύτερη παράμετρος πρέπει να είναι ΥΨΗΛΟΣ ή ΧΑΜΗΛΟΣ , το οποίο καθορίζει εάν η λυχνία LED πρέπει να είναι ενεργοποιημένη ή απενεργοποιημένη.

καθυστέρηση (1000): Το σύστημα λέει στο Arduino να περιμένει για συγκεκριμένο χρονικό διάστημα σε χιλιοστά του δευτερολέπτου. 1000 χιλιοστά του δευτερολέπτου είναι ίσο με ένα δευτερόλεπτο, οπότε αυτό θα κάνει το Arduino να περιμένει μία φορά το δευτερόλεπτο.

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

Πρόκληση: Προσπαθήστε να ρυθμίσετε την χρονική καθυστέρηση μεταξύ της ενεργοποίησης και απενεργοποίησης της λυχνίας LED. Τι παρατηρείτε; Τι συμβαίνει εάν ορίσετε την καθυστέρηση σε έναν πολύ μικρό αριθμό, όπως ένα ή δύο; Μπορείτε να τροποποιήσετε τον κωδικό και το κύκλωμα για να αναβοσβήνει δύο LED?

Προσθήκη κουμπιού

Τώρα που έχετε ένα LED που λειτουργεί, ας προσθέσουμε ένα κουμπί στο κύκλωμά σας:

Συνδέστε το κουμπί έτσι ώστε να γεφυρώνει το κανάλι στη μέση του breadboard. Συνδέστε το πάνω δεξιά πόδι προς Καρφίτσα 4 Το Συνδέστε το κάτω δεξιά πόδι σε α 10k Ohm αντίσταση και μετά να έδαφος Το Συνδέστε το κάτω αριστερά πόδι προς 5V Το

Mayσως αναρωτιέστε γιατί ένα απλό κουμπί χρειάζεται αντίσταση. Αυτό εξυπηρετεί δύο σκοπούς. Είναι ένα τραβάω κάτω αντίσταση - δένει τον πείρο στη γείωση. Αυτό διασφαλίζει ότι δεν εντοπίζονται ψευδείς τιμές και αποτρέπει το Arduino σκέψη πατήσατε το κουμπί όταν δεν το κάνατε. Ο δεύτερος σκοπός αυτής της αντίστασης είναι ως περιοριστής ρεύματος. Χωρίς αυτό, τα 5V θα μπουν απευθείας στο έδαφος μαγικός καπνός θα κυκλοφορούσε και το Arduino σας θα πέθαινε. Αυτό είναι γνωστό ως βραχυκύκλωμα, οπότε η χρήση αντίστασης εμποδίζει αυτό να συμβεί.

Όταν το κουμπί δεν πατηθεί, το Arduino ανιχνεύει τη γείωση ( καρφίτσα 4 >> αντίσταση >> έδαφος ). Όταν πατάτε το κουμπί, 5V συνδέεται στη γείωση. Ο πείρος Arduino 4 μπορεί να ανιχνεύσει αυτήν την αλλαγή, καθώς ο πείρος 4 έχει πλέον αλλάξει από τη γείωση σε 5V.

Εδώ είναι ο κωδικός:

boolean buttonOn = false; // store the button state
void setup() {
// put your setup code here, to run once:
pinMode(7, OUTPUT); // configure the LED as an output
pinMode(4, INPUT); // configure the button as an input
}
void loop() {
// put your main code here, to run repeatedly:
if(digitalRead(4)) {
delay(25);
if(digitalRead(4)) {
// if button was pressed (and was not a spurious signal)
if(buttonOn)
// toggle button state
buttonOn = false;
else
buttonOn = true;
delay(500); // wait 0.5s -- don't run the code multiple times
}
}
if(buttonOn)
digitalWrite(7, LOW); // turn LED off
else
digitalWrite(7, HIGH); // turn LED on
}

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

boolean buttonOn = false: Αυτή η μεταβλητή χρησιμοποιείται για την αποθήκευση της κατάστασης του κουμπιού - ON ή OFF, HIGH ή LOW. Έχει δώσει μια προεπιλεγμένη τιμή ψευδούς.

pinMode (4, ΕΙΣΟΔΟΣ): Όπως και ο κώδικας που χρησιμοποιείται για το LED, αυτή η γραμμή λέει στο Arduino ότι έχετε συνδέσει μια είσοδο (το κουμπί σας) στο pin 4.

εάν (digitalRead (4)): Με παρόμοιο τρόπο να digitalWrite () , digitalRead () χρησιμοποιείται για την ανάγνωση της κατάστασης μιας καρφίτσας. Πρέπει να του δώσετε έναν αριθμό pin (4, για το κουμπί σας).

Μόλις πατήσετε το κουμπί, το Arduino περιμένει 25ms και ελέγχει ξανά το κουμπί. Αυτό είναι γνωστό ως α κατάργηση λογισμικού Το Αυτό διασφαλίζει ότι αυτό που νομίζει το Arduino ήταν ένα πάτημα κουμπιού, Πραγματικά ήταν ένα πάτημα κουμπιού και όχι θόρυβος. Δεν χρειάζεται να το κάνετε αυτό και στις περισσότερες περιπτώσεις τα πράγματα θα λειτουργήσουν καλά χωρίς αυτό. Είναι περισσότερο μια καλύτερη πρακτική.

Εάν το Arduino είναι βέβαιο ότι πατήσατε πραγματικά το κουμπί, τότε αλλάζει την τιμή του κουμπίOn μεταβλητός. Αυτό αλλάζει την κατάσταση:

Το ButtonOn είναι αλήθεια: Ορίστηκε σε false.

Το ButtonOn είναι ψευδές: Ορίστηκε σε αληθινό.

Τέλος, η λυχνία LED απενεργοποιείται σύμφωνα με την κατάσταση που είναι αποθηκευμένη κουμπίOn Το

Φωτοανιχνευτής

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

ο καλύτερος τρόπος για ροή από υπολογιστή σε τηλεόραση

Ιδού το κύκλωμα:

Δεδομένου ότι τα LDR είναι ένας τύπος αντίστασης, δεν έχει σημασία ποιος είναι ο γύρος που τοποθετούνται - δεν έχουν πολικότητα. Συνδέω-συωδεομαι 5V στη μία πλευρά του LDR. Συνδέστε την άλλη πλευρά με έδαφος μέσω α 1k Ohm αντίσταση. Συνδέστε επίσης αυτήν την πλευρά με αναλογική είσοδος 0 Το

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

Εδώ είναι ο κωδικός:

int light = 0; // store the current light value
void setup() {
// put your setup code here, to run once:
Serial.begin(9600); //configure serial to talk to computer
}
void loop() {
// put your main code here, to run repeatedly:
light = analogRead(A0); // read and save value from LDR

//tell computer the light level
if(light <100) {
Serial.println('It is quite light!');
}
else if(light > 100 && light <400) {
Serial.println('It is average light!');
}
else {
Serial.println('It is pretty dark!');
}
delay(500); // don't spam the computer!
}

Αυτός ο κώδικας κάνει μερικά νέα πράγματα:

Serial.begin (9600): Αυτό λέει στο Arduino ότι θέλετε να επικοινωνήσετε μέσω σειρών με ρυθμό 9600. Το Arduino θα προετοιμάσει όλα τα απαραίτητα για αυτό. Η τιμή δεν είναι τόσο σημαντική, αλλά τόσο το Arduino όσο και ο υπολογιστής σας πρέπει να χρησιμοποιούν το ίδιο.

analogRead (A0): Αυτό χρησιμοποιείται για την ανάγνωση της τιμής που προέρχεται από το LDR. Μια χαμηλότερη τιμή σημαίνει ότι υπάρχει περισσότερο διαθέσιμο φως.

Serial.println (): Αυτό χρησιμοποιείται για τη σύνταξη κειμένου στη σειριακή διεπαφή.

Το απλό αν δήλωση στέλνει διαφορετικές συμβολοσειρές (κείμενο) στον υπολογιστή σας, ανάλογα με το διαθέσιμο φως.

Ανεβάστε αυτόν τον κωδικό και κρατήστε το καλώδιο USB συνδεδεμένο (έτσι θα επικοινωνήσει το Arduino και από πού προέρχεται η τροφοδοσία). Ανοίξτε τη σειριακή οθόνη ( Πάνω δεξιά >> Σειριακή οθόνη ), Θα πρέπει να βλέπετε τα μηνύματά σας να φτάνουν κάθε 0,5 δευτερόλεπτα.

Τι παρατηρείτε; Τι συμβαίνει εάν καλύψετε το LDR ή ρίξετε έντονο φως σε αυτό; Μπορείτε να τροποποιήσετε τον κώδικα για να εκτυπώσετε την τιμή του LDR σε σειριακή σειρά;

Κάντε λίγο θόρυβο

Αυτό το έργο χρησιμοποιεί το ηχείο Piezo για να κάνει ήχους. Ιδού το κύκλωμα:

Παρατηρήσατε κάτι γνωστό; Αυτό το κύκλωμα είναι σχεδόν το ίδιο με το έργο LED. Τα πιέζοι είναι πολύ απλά συστατικά - κάνουν ήχο όταν δίνεται ηλεκτρικό σήμα. Συνδέστε το θετικός πόδι στο ψηφιακό καρφίτσα 9 μέσω α 220 Ohm αντίσταση. Συνδέστε το αρνητικός πόδι προς έδαφος Το

Εδώ είναι ο κώδικας, είναι πολύ απλός για αυτό το έργο:

void setup() {
// put your setup code here, to run once:
pinMode(9, OUTPUT); // configure piezo as output
}
void loop() {
// put your main code here, to run repeatedly:
tone(9, 1000); // make piezo buzz
delay(1000); // wait 1s
noTone(9); // stop sound
delay(1000); // wait 1s
}

Υπάρχουν μόνο μερικές νέες δυνατότητες κώδικα εδώ:

τόνος (9, 1000): Αυτό κάνει το πιεζό να παράγει ήχο. Χρειάζονται δύο επιχειρήματα. Η πρώτη είναι η καρφίτσα που θα χρησιμοποιηθεί και η δεύτερη είναι η συχνότητα του ήχου.

noTone (9): Αυτό σταματά να παράγει οποιονδήποτε ήχο στην παρεχόμενη ακίδα.

Δοκιμάστε να αλλάξετε αυτόν τον κωδικό για να παράγετε διαφορετική συχνότητα. Αλλάξτε την καθυστέρηση σε 1ms - τι παρατηρείτε;

Πού να πάτε από εδώ

Όπως μπορείτε να δείτε, το Arduino είναι ένας εύκολος τρόπος για να ασχοληθείτε με τα ηλεκτρονικά και το λογισμικό. Είναι ένας από τους καλύτερους μικροελεγκτές για αρχάριους. Ας ελπίσουμε ότι έχετε δει ότι είναι εύκολο να χτίσετε απλά ηλεκτρονικά έργα με το Arduino. Μπορείτε να δημιουργήσετε πολύ πιο σύνθετα έργα μόλις κατανοήσετε τα βασικά:

  • Δημιουργήστε ελαφριά χριστουγεννιάτικα στολίδια
  • Arduino Shields για να υπερδυναμώσετε το έργο σας
  • Φτιάξτε το δικό σας παιχνίδι pong με ένα Arduino
  • Συνδέστε το Arduino σας στο διαδίκτυο
  • Δημιουργήστε ένα σύστημα αυτοματισμού σπιτιού με το Arduino σας

Τι Arduino σας ανήκει; Υπάρχουν κάποια διασκεδαστικά έργα που σας αρέσουν να κάνετε; Για περισσότερα, ρίξτε μια ματιά στο πώς μπορείτε να βελτιώσετε την κωδικοποίηση Arduino με VS Code και PlatformIO.

Μερίδιο Μερίδιο Τιτίβισμα ΗΛΕΚΤΡΟΝΙΚΗ ΔΙΕΥΘΥΝΣΗ 15 Εντολές γραμμής εντολών των Windows (CMD) που πρέπει να γνωρίζετε

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

Διαβάστε Επόμενο
Σχετικά θέματα
  • DIY
  • Arduino
  • ΗΛΕΚΤΡΟΝΙΚΑ ΕΙΔΗ
Σχετικά με τον Συγγραφέα Τζο Κόμπερν(136 δημοσιευμένα άρθρα)

Ο Joe είναι απόφοιτος της Επιστήμης των Υπολογιστών από το Πανεπιστήμιο του Lincoln, Ηνωμένο Βασίλειο. Είναι επαγγελματίας προγραμματιστής λογισμικού και όταν δεν πετάει με drones ή δεν γράφει μουσική, μπορεί συχνά να βρεθεί να βγάζει φωτογραφίες ή να παράγει βίντεο.

Περισσότερα από τον Joe Coburn

Εγγραφείτε στο newsletter μας

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

Κάντε κλικ εδώ για εγγραφή
Κατηγορία Diy