Ρελέ με Arduino

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

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

Το Project

Θα χρησιμοποιήσουμε ένα ρελέ διπλό, το οποίο θα ενεργοποιούμε με δύο διακόπτες button Switches και για κάθε διακόπτη θα ανάβουμε και ένα Led.

Το ρελέ

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

Οι επαφές διαχωρίζονται σε Normal Open (ΝΟ) και Normal Close(NC). Το normal σημαίνει η κατάσταση της επαφής όταν το πηνίο δεν τροφοδοτείται με ρεύμα. Έτσι, όταν τροφοδοτήσουμε με ρεύμα το πηνίο αυτές που είναι ΝΟ, γίνονται κλειστές επαφές, και αυτές που είναι ΝC, γίνονται ανοιχτές επαφές.

Arduino relay

Αν μπορούσαμε να δούμε το ρελέ εσωτερικά θα έμοιαζε περίπου όπως η παρακάτω εικόνα.

Εσωτερικό ενός ρελέ

Τα υλικά για το Project

Για το project θα χρειαστούμε τα παρακάτω:

  • 1 Arduino uno
  • breadboard
  • 2 led
  • 2 button switches
  • jumper wires
  • 2 relay module

Ο κώδικας

int relayIn1 = 2;
int relayIn2 = 3;
int switchPinLeft = 6;
int switchPinLeftState = 0;
int switchPinRight = 7;
int switchPinRightState = 0;
int led1 = 5;
int led2 = 4;
void setup() {
  pinMode(relayIn1,OUTPUT);
  pinMode(relayIn2, OUTPUT);
  pinMode(led1, OUTPUT);
  pinMode(led2, OUTPUT);
  pinMode(switchPinLeft, INPUT_PULLUP);
  pinMode(switchPinRight, INPUT_PULLUP);
}
void loop() {
  switchPinLeftState = digitalRead(switchPinLeft);
  switchPinRightState = digitalRead(switchPinRight);
  if (switchPinLeftState==0) {
    digitalWrite(relayIn1, LOW);
    digitalWrite(led1, HIGH);
  }
  else {
    digitalWrite(led1, LOW);
    digitalWrite(relayIn1, HIGH);
  }
}

Χρησιμοποιούμε την μέθοδο INPUT_PULLUP για τα button switches ώστε να εκμεταλλευτούμε την εσωτερική αντίσταση που έχει το Arduino. έτσι δεν χρειάζεται να συνδέσουμε επιπλέον αντιστάσεις που θα χρειαζόταν αν δηλώναμε τις εισόδους ως απλά input.

Οταν αλλάζει η κατάσταση του αριστερού ή δεξιού κουμπιού, switchPinLeftState,  switchPinRightState τότε με την DigitalWrite ανάβουμε το led1, HIGH και ενεργοποιούμε το relay input 1 με LOW. Το ίδιο κάνουμε και με τον άλλο διακόπτη - κουμπί.

Σχετικά άρθρα

Συγκεντρωτικοί πίνακες και εισαγωγή τους στο Power query

Μορφοποίηση υπό όρους για κάθε σειρά του πίνακα

Εισαγωγή στο Powerquery. Τι ακριβώς είναι;

Πληροφορίες

Χατζηγεωργίου Γεώργιος

info[@]getcert.gr

6945531647