Ardumotive Arduino Greek Playground
  • Home
    • About us
    • Contact
    • License
  • Arduino
    • Tutorials
    • Workshop
  • Raspberry Pi
  • DIY 3D Printer
  • News
    • Events >
      • Unboxing & Review
    • Blog
The 1st Arduino Playground in Greece - Open Source Hardware

Βασικά ηλεκτρονικά εξαρτήματα

24/7/2014

Comments

 
Picture
Αντίσταση R
Την αντίσταση την χρησιμοποιούμε για να μειώσουμε την κατανάλωση - ισχύ σε κάποιο ηλεκτρονικό εξάρτημα, π.χ. ένα led, χρησιμοποιώντας τον νόμο του Ωμ και τον τύπο υπολογισμού της ισχύος (δες εδώ). Όσο πιο μεγάλη η τιμή της αντίστασης τόσο λιγότερο ρεύμα θα περάσει απο αυτή. Στις κατασκευές μας δεν θα χρειαστεί να υπολογίσετε την τιμή της αντίστασης, θα σας την δίνω εγώ. Μια αντίσταση έχει δυο ακροδέκτες και δεν έχει πολικότητα, δηλαδή όπως και να την τοποθετήσετε θα λειτουργήσει. Συμβολίζεται με το γράμμα R και μετριέται σε Ωμ (Ohm). Μερικά παραδείγματα R=4.7KOhm, R=500Ohm, R=1MOhm.

Picture
Μεταβλητή Αντίσταση
Η μεταβλητή αντίσταση δεν έχει σταθερή τιμή όπως η απλή αντίσταση, αντίθετα έχει την ιδιότητα μέσω ενός "μοχλού" να αλλάζει τιμή ανάλογα με την θέση του. Για παράδειγμα, μια μεταβλητή αντίσταση 10ΚΟhm μπορεί να δώσει τιμές από 0Οhm μέχρι 10ΚOhm, ανάλογα σε πια θέση είναι ο "μοχλός". Αν είναι γυρισμένος στην μέση τότε η αντίσταση που θα έχουμε θα είναι 5ΚΟhm. Φανταστείτε πως έχετε μια λάμπα και έναν μοχλό με τον οποίο όσο τον περιστρέφουμε μπορούμε να χαμηλώσουμε ή να αυξήσουμε την φωτεινότητα της. Σε αντίθεση με την απλή αντίσταση, η μεταβλητή αντίσταση έχει τρεις ακροδέκτες. Από τους ακριανούς ο ένας πάει στην γείωση (GND ή 0V) και ο άλλος στην τάση (Vcc ή π.χ.5V), και ο μεσαίος στο ηλεκτρονικό εξάρτημά μας π.χ. ένα led.
Picture
Φωτοαντίσταση
Ο φωτοαντιστάτης ή φωτοαντίσταση είναι ένα εξάρτημα το οποίο χρησιμοποιείται κυρίως ως αισθητήρας φωτός σε διάφορα ηλεκτρονικά κυκλώματα όπου είναι απαραίτητο οι αλλαγές στο φωτισμό να μετατραπούν σε ηλεκτρικά σήματα, έτσι ώστε να ενεργοποιηθούν κάποια εξαρτήματα. Διαθέτει δύο ακροδέκτες και δεν έχει πολικότητα. Η τιμή της αντίστασης αυξάνετε όσο το φως μειώνεται, για παράδειγμα το βράδυ η τιμή της αντίστασης είναι 1ΜΟhm ενώ την ημέρα 400Ohm (οι τιμές είναι ενδεικτικές). Χρησιμοποιείτε σε πολλά συστήματα αυτοματισμού και ασφαλείας καθώς εκμεταλλεύεται την φωτεινότητα του χώρου.
Picture
Πυκνωτής
Οι πυκνωτές χρησιμοποιούνται στα ηλεκτρονικά κυκλώματα για μείωση θορύβου και εξομάλυνση της τάσης και τους τοποθετούμε συνήθως μεταξύ την τάσης και γείωσης. Δεν θα πούμε περισσότερα για τον τρόπο λειτουργία τους, ωστόσο εάν κάποιοι από εσάς θέλετε να μάθετε περισσότερα δείτε την αναλυτική περιγραφή τους εδώ. Ανάλογα με την τιμή και τον τύπο τους έχουν διάφορα σχήματα και μεγέθη. Όλοι οι πυκνωτές έχουν δύο ακροδέκτες. Οι απλοί πυκνωτές δεν έχουν πολικότητα ενώ οι ηλεκτρολυτικοί έχουν, και ο μακρύτερος ακροδέκτης δείχνει το θετικό τους άκρο. Συμβολίζονται με το γράμμα C και η χωρητικότητα τους μετριέται σε Farad (F). Μερικά παραδείγματα C=10pF, C=100nF, C=0.1μF.

Picture
LED
Led, ή αλλιώς στα ελληνικά Δίοδος Εκπομπής Φωτός, απ τα αρχικά των λέξεων Light Emitting Diode, αποκαλείται ένας ημιαγωγός ο οποίος εκπέμπει φωτεινή ακτινοβολία στενού φάσματος όταν του παρέχεται μία ηλεκτρική τάση κατά τη φορά ορθής πόλωσης. Διαθέτουν δύο ακροδέκτες και έχουν πόλωση, με το μακρύτερο ακροδέκτη να δείχνει το θετικό τους άκρο. Υπάρχουν σε διάφορα χρώματα και μεγέθη.
Picture
Διακόπτες καταστάσεων και Διακόπτες κουμπιά
Ένας διακόπτης on/off είναι ένας διακόπτης δύο καταστάσεων, τέτοιον διακόπτη θα συναντήσετε σε παιχνίδια με μπαταρίες αλλά και στους διακόπτες που ανάβετε / κλείνετε το φως σπίτι σας. Ανάλογα την θέση του διακόπτη επιλέγουμε και την αντίστοιχη κατάσταση. Υπάρχουν και διακόπτες τριών καταστάσεων ή και παραπάνω. Δείτε το μπιστολάκι που έχετε σπίτι σας, έχει έναν διακόπτη τριών καταστάσεων για την θερμοκρασία, στην πρώτη θέση είναι ο παγωμένος αέρας, στην δεύτερη ο ζεστός και στην τρίτη ο πολύ ζεστός. Εκτός απ' τους διακόπτες κατάστασης υπάρχουν και οι διακόπτες κουμπιά (buttons), οι οποίοι έχουν μόνο δύο καταστάσεις (1.πατάω-2.δεν πατάω) και σε αντίθεση με τους άλλους δεν μπορούν από μόνοι τους να διατηρήσουν την κατάσταση "πατάω" σταθερή. Δείτε το πληκτρολόγιο του υπολογιστή σας, αν πατήσουμε το κουμπί-γράμμα 'Α' μια φορά θα γράψουμε 'Α', εαν το κρατήσουμε πατημένο 'ΑΑΑΑΑΑ'. Άρα από μόνος του ένας διακόπτης κουμπί δεν μπορεί να διατηρήσει μια κατάσταση, στην πορεία θα δούμε πως το Arduino θα μας βοηθήσει να πετύχουμε αυτή την λειτουργία.

Picture

Ερώτηση Κατανόησης

Picture
Στο παραπάνω κύκλωμα, έστω ότι η πηγή μας είναι μια μπαταρία 5V και μπορεί να δώσει μέχρι 1000mAh ρεύμα. Απαντήστε στα παρακάτω:
1. Μέγιστη ισχύς μπαταρίας
2. Το ρεύμα μετά το led (έστω οτι το led έχει μηδενική αντίσταση)
3. Την ισχύ που καταναλώνει το led

Τι θα πρέπει να αλλάξουμε στο παραπάνω κύκλωμα αν θέλουμε να κάνουμε χρήση μιας φωτοαντίστασης για να ανάβει αυτόματα το led; To led θα ανάβει την μέρα ή την νύχτα και γιατί;

Απάντηση:
1. Pmax=V*I=5V*1000mA=5V*1A=5Watt
2. Ι'=V/R=5V/220Ω=0,022Α
3. P=V*I=5V*0,022A=0,11Watt

Θα βγάζαμε τον διακόπτη και την αντίσταση και στην θέση τους θα βάζαμε μια φωτοαντίσταση. Το led θα άναβε την μέρα και θα έσβηνε την νύχτα και αυτό γιατί η τιμή της αντίστασης μεγαλώνει όσο ελαττώνεται ο φωτισμός στον χώρο.
Comments

Βασικές έννοιες πάνω στα ηλεκτρονικά για το Arduino

20/7/2014

Comments

 
Picture
Τάση: 
Είναι η τιμή της διαφοράς του ηλεκτρικού δυναμικού μεταξύ δύο σημείων. Μπορεί να είναι θετική, αρνητική ή μηδέν. H μονάδα μέτρησης της είναι τα Volt (Βόλτ) και συμβολίζεται με το κεφαλαίο γράμμα V. Μερικά παραδείγματα: +5V, -2.5V, 0V, 220V, 5mV.

Ρεύμα: 
Είναι η προσανατολισμένη κίνηση ηλεκτρικών φορτίων ή φορέων ηλεκτρικού φορτίου, κατά μήκος ενός ηλεκτροφόρου αγωγού. Υπάρχουν δύο κύρια είδη ηλεκτρικού ρεύματος: το συνεχές (από μια μπαταρία) και το εναλλασσόμενο (όπως αυτό που έχουμε στο σπίτι μας). Η μονάδα μέτρησης είναι τα Amper (Αμπέρ) και συμβολίζεται με το κεφαλαίο γράμμα I. Στις επαναφορτιζόμενες μπαταρίες αναφέρετε πόσο ρεύμα μπορεί να δώσει σε μία ώρα και συμβολίζεται ως mAh. Μερικά παραδείγματα: 1A, 1000mA, 0.5A, 1000mAh = 1A για 1 ώρα.

Γείωση: 
Ονομάζεται η αγώγιμη σύνδεση ενός ακροδέκτη ηλεκτρικού κυκλώματος με το έδαφος ή άλλο αντικείμενο μηδενικού δυναμικού. Φυσικά εμείς στα κυκλώματα μας δεν θα ψάξουμε να βρούμε "χώμα" για να βάλουμε την γείωση, ως γείωση θα εννοούμε απο εδώ και πέρα τον αρνητικό πόλο της μπαταρίας (-). Η γείωση αναφέρεται και ως GND, από το ground.

Πηγή: 
Μπορεί να είναι μια μπαταρία, ή ένας μετασχηματιστής στα κυκλώματα μας. Έχει θετικό (+) και αρνητικό άκρο (-). Το θετικό άκρο είναι η τάση μας π.χ. 5V και συμβολίζεται και ως Vcc, ενώ το αρνητικό είναι η γείωση. Μια πηγή εκτός από τάση μπορεί να δώσει και ρεύμα, θα έχετε παρατηρήσει ότι πάνω στους φορτιστές των κινητών μας αναφέρετε στην DC OUT: 5V - 700mA. Αυτό σημαίνει σταθερή τάση 5V με μέγιστο δυνατό ρεύμα 700mA. Συνήθως την πηγή την συμβολίζουμε με το γράμμα V, όπως και την τάση.

Ισχύς: 
Εάν ένα αγώγιμο καλώδιο είναι συνδεδεμένο με μπαταρία τάσης V και διέρχεται από ρεύμα Ι καταναλώνει ισχύ. Η μονάδα μέτρησης της είναι τα Watt (Βάτ) και συμβολίζεται με το γράμμα P. Η ισχύς υπολογίζεται από τον τύπο: P=V*I. Έτσι για παράδειγμα εάν έχουμε μια πηγή  με τάση 5V και ένα κύκλωμα που καταναλώνει 1Α ρεύμα, τότε η ισχύς που καταναλώνει είναι P=5*1=5Watt.
Αν έχουμε μια ηλεκτρική συσκευή, π.χ. μια σκούπα, με μέγιστη ισχύ 2200W μπορούμε να βρούμε πολύ εύκολα πόσο ρεύμα καταναλώνει στην μέγιστη λειτουργία της: P=V*I ή I=P/V=2200Watt / 220Volt=10Α.

Νόμος του Ωμ: 
Συνδέει την Τάση, το Ρεύμα και την Αντίσταση. 
Η σχέση δίνεται απ' τον τύπο: I=V/R ή V=I*R ή R=V/I όπου R η τιμή μιας αντίστασης.

Comments

Κατανόηση προγράμματος στο Arduino IDE

16/7/2014

Comments

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

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

Picture
Ερώτηση με βάση οτι είδαμε στα προηγούμενα μαθήματα:
Στο πρόγραμμα παραπάνω, εάν θέλαμε να ανάψουμε το led στο 50% της φωτεινότητας του, πια συνάρτηση θα χρησιμοποιούσαμε και πώς; Χρειάζεται να συνδέσουμε σε άλλο pin / ακροδέκτη του Arduino uno το led μας;

Απάντηση:
Θα πρέπει να συνδέσουμε το led σε ένα απ' τα PWM pins / ακροδέκτες του Arduino uno, δηλαδή σε ένα απ' τα 3, 5, 6, 9, 10 ή 11. Η συνάρτηση που θα χρησιμοποιούσαμε είναι η alalogWrite (led, 126);

Comments

Γράφοντας προγράμματα στο Arduino IDE (Μέρος 2ο)

15/7/2014

Comments

 
Picture
Φυσικά δεν μπορούμε να δούμε όλες τις συναρτήσεις που υπάρχουν, θα αναφερθούμε στις πιο σημαντικές - βασικές. Οι συναρτήσεις του Arduino αποτελούν βασικό παράγοντα στον προγραμματισμό του μικρο ελεγκτή μας καθώς αυτές συνδέουν πολύ εύκολα το Arduino uno με τα υπόλοιπα στοιχεία του κυκλώματος μας. (π.χ. led, κουμπιά/διακόπτες, οθόνη LCD, ηχείο).

pinMode(pin, mode) ;
Είναι πολύ σημαντικό να "πούμε" στο Arduino εάν ο ακροδέκτης/pin που έχουμε συνδέσει με το στοιχείο του κυκλώματος μας είναι είσοδος ή έξοδος, εάν δηλαδή θα λάβει ή θα στείλει κάποιο σήμα. Για παράδειγμα εάν έχουμε κάποιο led, θέλουμε να στείλουμε σήμα να ανάψει ή να σβήσει, άρα το pin που το έχουμε συνδέσει στο Arduino uno θα πρέπει να το δηλώσουμε ως έξοδο. Αντίστοιχα, εάν έχουμε ένα κουμπί/διακόπτη, θέλουμε να λάβουμε ένα σήμα στο Arduino uno όταν ενεργοποιηθεί για να κάνει κάποια λειτουργία, άρα το pin θα το δηλώσουμε ως είσοδο. π.χ. pinMode(5,INPUT); ή pinMode(2,OUTPUT);

Picture
digitalWrite(pin, value); 
Αφού έχουμε δηλώσει τον ρόλο του pin που μας ενδιαφέρει με την συνάρτηση pinMode πρέπει τώρα να πούμε στο Arduino τι να κάνει με αυτό. Ας δούμε τις λειτουργίες μέσα απο κάποια παραδείγματα. Έστω οτι έχουμε ένα led και θέλουμε να το ανάψουμε, όπως στην εικόνα παραπάνω, θα κάνουμε χρήση της συνάρτησης digitalWrite ως εξής: digitalWrite(2, HIGH); Εάν θέλουμε να το σβήσουμε τότε η συνάρτηση αλλάζει και γίνεται: digitalWrite(2, LOW); Με την τιμή HIGH δίνουμε λογικό '1' ή 5V ή Vcc και με την LOW λογικό '0' ή 0V ή GND.

όνομα_μεταβλητής=digitalRead(pin);
Με την digitalRead αντίστοιχα λέμε στο Arduino να διαβάσει μια τιμή. Η τιμή αυτή και εδώ μπορεί να είναι HIGH ή LOW. Έτσι για παράδειγμα εάν έχουμε ένα κουμπί, όπως στην εικόνα παραπάνω, το οποίο όταν τον πατάμε περνάει ρεύμα, τότε το διαβάζουμε ως εξής:
timi=digitalRead(5); και η τιμή που θα πάρει θα είναι HIGH. Μόλις σταματήσουμε να τον πατάμε η τιμή θα γίνει LOW.

analogWrite(pin, value);
Με την συνάρτηση digitalWrite είδαμε οτι μπορούμε να δώσουμε έξοδο με μόνο δυο τιμές, HIGH και LOW. Τι γίνεται όμως όταν θέλουμε να χαμηλώσουμε τον φωτισμό σε ένα led ή να περιστρέψουμε ένα DC μοτερ με λιγότερη ταχύτητα; Σαν σκέψη θα λέγαμε να δώσουμε λιγότερη τάση, π.χ. 2.5V αντί για 5V στο μοτέρ μας για να περιστρέφετε με την μισή ταχύτητα, αλλά δεν γίνεται αυτό. Έτσι για να το πετύχουμε στο Arduino χρησιμοποιούμε την συνάρτηση analogWrite η οποία μπορεί να πάρει τιμές από 0 έως 255. Η λειτουργία αυτή λέγετε Pulse Width Modulation - PWM και στo Arduino uno μπορούμε να την χρησιμοποιήσουμε στα pin 3, 5, 6, 9, 10 και 11. Αυτό που κάνει είναι να στέλνει παλμούς, φανταστείτε το σαν έναν διακόπτη που ανοιγοκλείνει πολύ γρήγορα. Έτσι εάν θέλαμε να περιστρέψουμε ένα μοτέρ με την μισή ταχύτητα θα κάναμε χρήση της συνάρτησης ως εξής: analogWrite(3, 127); Η παρακάτω εικόνα θα σας βοηθήσει να καταλάβετε την λειτουργία των παλμών.
Picture
όνομα_μεταβλητής=analogRead(pin);
Την συνάρτηση analogRead την χρησιμοποιούμε όταν θέλουμε να διαβάσουμε μια αναλογική τιμή, π.χ. από ένα αισθητήρα θερμοκρασίας, αισθητήρα υπερήχων, αισθητήρα υπερύθρων. Οι τιμές που μπορεί να διαβάσει είναι από 0 έως 1023. Τα διαθέσιμα analog pins του Arduino uno είναι απ'το Α0 έως το Α5.

Comments

Γράφοντας προγράμματα στο Arduino IDE (Μέρος 1ο)

14/7/2014

Comments

 
Picture
Θα ξεκινήσουμε χωρίζοντας το πρόγραμμα μας σε τρία μέρη: την δομή, τις μεταβλητές & σταθερές και τις συναρτήσεις. Πρώτα θα δούμε το κομμάτι της δομής. Η δομή ενός προγράμματος Arduino χωρίζετε σε τρία μέρη με την ακόλουθη σειρά: την δήλωση μεταβλητών, το κομμάτι κώδικα που περιέχει την αρχικοποίηση καταστάσεων και μεταβλητών καθώς και τον κώδικα που θέλουμε να τρέξει μόνο μια φορά στο Arduino και το κομμάτι του κώδικα loop() που περιέχει το κυρίως πρόγραμμα μας και θα τρέχει συνέχεια, μέχρι να βγάλουμε το Arduino απ' το ρεύμα. Δείτε την παρακάτω εικόνα:
Picture
Οι μεταβλητές παίζουν πολύ σημαντικό ρόλο στην σύνταξη του κώδικα μας καθώς αλλάζοντας τις τιμές τους κατά την διάρκεια εκτέλεσης του προγράμματος μπορούμε να επιτύχουμε διάφορες λειτουργίες. Μπορούν να πάρουν διάφορες τιμές όπως νούμερα, χαρακτήρες, και τα δύο ή να έχουν λογική τιμή True ή False (αληθής-ψευδής). Ανάλογα με την τιμή αυτή τις αρχικοποιούμε ή τις δηλώνουμε αντίστοιχα στο πρώτο τμήμα της δομής του προγράμματος μας όπως παρακάτω (τύπος όνομα_μεταβλητής):

  • int number  Ακέραιους αριθμούς απ' το -32.768 μέχρι 32.768
    ( π.χ. int number = 500 ;  ή int arnitikos = -5 ; )
  • float number1 Δεκαδικούς αριθμούς
    ( π.χ. float number1 = 0.0015 ; ή float number_2 = 15.025 ; )
  • char onoma Γράμματα αλλά και αριθμούς
    ( π.χ. char onoma='Michalis'; ή char gramma='A'; ή char allo='AB32b'; )
  • boolean state Τιμή true ή false
    ( π.χ.boolean state1 = true ; ή boolean state2 = false ; )

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

Στις σταθερές ισχύει ότι και παραπάνω αλλά πριν τον τύπο βάζουμε το χαρακτηριστικό 'const' (const τύπος όνομα_σταθερής). Μια σταθερή την χρησιμοποιούμε σαν συντόμευση μέσα στο πρόγραμμα μας αποφεύγοντας να γράφουμε τιμές τις οποίες μπορεί να ξεχάσουμε παρακάτω. ( π.χ. const int statheri_timi = 58 ; ) Μια μεταβλητή μπορεί να μην έχει αρχική τιμή και η τιμή της να υπολογίζεται μετά από εκτέλεση κάποιας εντολής μέσα στο πρόγραμμα, όμως μια σταθερή πρέπει να έχει υποχρεωτικά τιμή, αλλιώς τι σταθερή είναι?

Comments
<<Previous
Forward>>
    Picture
    Picture

    Διαβάστε τα νέα του Ardumotive!

    Picture

    Κατηγορίες:

    All
    Arduino
    Ardumotive
    DIY
    Raspberry
    Μαθήματα Arduino

    Δείτε τα νέα του μήνα:

    August 2021
    September 2020
    July 2020
    June 2020
    May 2020
    January 2020
    November 2019
    July 2019
    February 2019
    October 2018
    June 2018
    February 2018
    May 2017
    October 2016
    July 2015
    May 2015
    April 2015
    March 2015
    February 2015
    January 2015
    December 2014
    November 2014
    October 2014
    September 2014
    August 2014
    July 2014



Donate us
About us
License
Cookies policy

Visit the biggest Arduino Shop in Greece!

Picture
find us on dwrean.net
find us on Codebender
find us on Instructables
Developed and designed by Vasilakis Michalis Copyright © 2013 Ardumotive All Rights Reserved
All trademarks referenced herein are properties of their
Powered by Create your own unique website with customizable templates.
Design by DivTag Templates