#23 Arduino & L293D - Κίνηση DC μοτέρ


Στο σημερινό άρθρο-μάθημα θα μάθουμε πως να κινήσουμε DC μοτέρ με την χρήση του ολοκληρωμένου L293D. To τηλ/μενο που θα φτιάξουμε έχει 2 DC μοτέρ, ένα για την κίνηση πίσω και ένα για την αλλαγή κατεύθυνσης μπροστά.

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


Ενώστε τους πόλους μιας μπαταρίας 1.5V ΑΑ με τα καλώδια του πίσω μοτέρ (κίνησης) για να βρείτε με πια πολικότητα το όχημα κινείται μπροστά. Βάλτε ένα αυτοκόλλητο σε αυτό το καλώδιο (που ενώνετε με το + μπαταρίας) για να το ξεχωρίζετε. Κάντε το ίδιο με το μοτέρ κατεύθυνσης για να δείτε με πια πολικότητα οι ρόδες στρίβουν αριστερά και δεξιά. Βάλτε αυτοκόλλητο στο καλώδιο (που ενώνετε με το + μπαταρίας) που έκανε τις ρόδες να στρίψουν αριστερά.

Το ολοκληρωμένο L293D το χρησιμοποιούμε για να "οδηγήσουμε" σωστά τα μοτέρ μας. Τι σημαίνει αυτό; Είναι απλό, τα pin του Arduino uno δεν μπορούν να δώσουν το ρεύμα που χρειάζεται για να κινηθούν τα μοτέρ, για αυτό τον λόγο πρέπει να χρησιμοποιήσουμε tranzistor. Το L293D κάνει ακριβώς αυτή την δουλεία κρύβοντας στο εσωτερικό του 4 tranzistor. 



Το L293D εκτός οτι μπορεί να παρέχει το απαιτούμενο ρεύμα στα μοτέρ για να οδηγηθούν σωστά, μπορεί να δώσει και τάση μέχρι 35V, αυξάνοντας έτσι την ισχύ P=V*I. Όμως, αυτό δεν σημαίνει οτι τα μοτέρ θα μπορέσουν να αποδώσουν σε τέτοιες τιμές... πιθανόν να καούν ή να καεί και το ίδιο το ολοκληρωμένο. Γι αυτό θυμηθείτε στο Pin 8 του L293 "Motor Power" να δώσετε απο 5V μέχρι το πολύ 12V(!).

To L293D δεν είναι και οτι καλύτερο υπάρχει για την οδήγηση κινητήρων DC καθώς θερμαίνετε όσο ανεβαίνει η ισχύς και μειώνετε η απόδοση του και δεν μπορεί να δώσει ρεύμα πάνω απο 0.5Α σε κάθε κανάλι. Ωστόσο είναι φθηνό και έχει εύκολη συνδεσμολογία και το ρεύμα του επαρκεί για την κατασκευή μας. Όμοιο ολοκληρωμένο είναι το L298, το οποίο μπορεί να δώσει 1Α σε κάθε κανάλι.

Τα υλικά που θα χρειαστούμε:

  1. Arduino uno
  2. L293D

Το κύκλωμα μας σε breadboard

(κλικ στην εικόνα για μεγέθυνση)

Κώδικας (download)

Το αρχείο αυτό θα κινήσει μπροστά - πίσω τις πίσω ρόδες και αριστερά-δεξιά τις μπροστά. Οι αλλαγές θα γίνονται κάθε 2 δευτερόλεπτα.
Με ποια εντολή-συνάρτηση μπορούμε να ελέγξουμε την ταχύτητα των κινητήρων?Δώστε το κομμάτι του κώδικα που κινεί μπροστά το όχημα με την μισή ταχύτητα!

Συντάκτης: Βασιλάκης Μιχάλης 
www.ardumotive.com