Έχετε δει έλικες σε αεροσκάφη ή σε θαλάσσια πλοία, αν όχι στην πραγματικότητα, τότε σε ταινίες σίγουρα. Σε αυτήν τη συνεδρία θα σχεδιάσουμε μια Προπέλα Έλικας με Arduino, LED και έναν κινητήρα DC. Σε αυτήν την Προπέλα Έλικας, το κείμενο φαίνεται να περιστρέφεται με τρόπο έλικα σε κυκλικό σχήμα.
Η οθόνη της έλικας είναι με έναν τρόπο όπως το LED Matrix. Περιέχει 8 LED (δίοδοι εκπομπής φωτός) που είναι διατεταγμένες με τη μορφή μήτρας 8 * 1 (8 σειρές και 1 στήλη). Τακτοποιούνται με τη μορφή σκάλας το ένα πάνω στο άλλο. Αυτά τα 8 LED μπορεί να γίνει για να εμφανίσετε οποιοδήποτε περιεχόμενο, όπως κείμενο, αριθμοί, σύμβολα κ.λ.π. Αυτό επιτυγχάνεται με την αντίληψη της όρασης (POV), στην οποία πολλές εικόνες εξακολουθούν να μετακινούνται γρήγορα ένα προς ένα σε μια ακολουθία, η οποία δίνει μια αίσθηση της κίνησης ή μια κινούμενη εικόνα. Το πώς γίνεται αυτό εξηγείται στο σεμινάριο που δίνεται παρακάτω.
Απαιτούμενα στοιχεία:
- Arduino Uno
- DC κινητήρα
- + 3.6V LI-ION μπαταρία
- LED (8 τεμάχια)
- Αντίσταση 1KΩ (8 τεμάχια)
Κατασκευή έλικας:
Πρώτα πάρτε μια σταθερή βάση. Χρησιμοποίησα ένα παλιό DVD DVD DRIVE που ήταν γύρω. Μπορείτε να πάρετε μια ξύλινη σανίδα ή ένα κουτί από χαρτόνι. Στη συνέχεια, κάντε μια τρύπα στη μέση της μονάδας DVD (βάση) και εισάγετε τον άξονα του κινητήρα DC σε αυτό. Βεβαιωθείτε ότι η τρύπα είναι αρκετά σφιχτή για να συγκρατεί τον κινητήρα και ο κινητήρας μπορεί να περιστρέφεται ελεύθερα. Χρησιμοποίησα το Feviquick για να βάλω τον άξονα στη θέση του.
Υποστηρίξτε το πάνω μέρος του κινητήρα για να εξισώσετε τις ανώμαλες ανωμαλίες. Χρησιμοποίησα μια κουκκίδα πάνω του και χρησιμοποίησα ξανά γρήγορη κόλλα για να το κολλήσω με κινητήρα DC.
Συνδέστε την μπαταρία LI-ION στην κορυφή. Εάν δεν έχετε μπαταρία ίδιου μεγέθους LI-ION, απλώς αφήστε την. Μετά από αυτό πάρτε κάθε LED και δοκιμάστε το με κελί κουμπιού ή οποιαδήποτε άλλη πηγή. Στη συνέχεια, πάρτε μερικές αντιστάσεις και κολλήστε τις με LED σύμφωνα με την εικόνα και το διάγραμμα κυκλώματος που φαίνεται παρακάτω.
Συνδέστε τα συγκολλημένα LED και τις αντιστάσεις με το Arduino UNO, όπως φαίνεται στο παρακάτω σχήμα και στο διάγραμμα κυκλώματος.
Τοποθετήστε το UNO στην κορυφή του DC MOTOR και ασφαλίστε το με τη βοήθεια της ταινίας βιολοντσέλου για να ολοκληρώσετε την εγκατάσταση. Έτσι, η τελική ρύθμιση του Propeller θα μοιάζει παρακάτω:
Κύκλωμα και επεξήγηση εργασίας:
Το Circuit of Arduino POV Display είναι πολύ απλό, απλώς συνδέσαμε 8 LED με το Arduino Uno σύμφωνα με το παρακάτω διάγραμμα κυκλώματος.
PORTD, PIN0 ------------------ LED8 ΘΕΤΙΚΟ ΤΕΡΜΑΤΙΚΟ
PORTD, PIN1 ------------------ LED7 ΘΕΤΙΚΟ ΤΕΡΜΑΤΙΚΟ
PORTD, PIN2 ------------------ LED6 ΘΕΤΙΚΟ ΤΕΡΜΑΤΙΚΟ
PORTD, PIN3 ------------------ LED5 ΘΕΤΙΚΟ ΤΕΡΜΑΤΙΚΟ
PORTD, PIN4 ------------------ LED4 ΘΕΤΙΚΟ ΤΕΡΜΑΤΟΛΟΓΙΟ
PORTD, PIN5 ------------------ ΛΕΙΤΟΥΡΓΙΑ LED3 ΘΕΜΑ
PORTD, PIN6 ------------------ LED2 ΘΕΤΙΚΟ ΤΕΡΜΑΤΙΚΟ
PORTD, PIN7 ------------------ LED1 ΘΕΤΙΚΟ Τερματικό
Όπως προσθέτουμε περισσότερες στήλες σε 8x8 LED Matrix για να επεκτείνουμε την οθόνη, με τον ίδιο τρόπο αντί να προσθέτουμε περισσότερες LED COLUMNS, μετακινούμε την πρώτη LED COLUMN στη δεύτερη LED COLUMN θέση χρησιμοποιώντας την κίνηση του DC MOTOR.
Για να κατανοήσουμε ολόκληρη την κατάσταση, ας πούμε ότι θέλουμε να εμφανίζεται το «Α» από την οθόνη της έλικας. Λάβετε υπόψη ότι το LED «βελόνα» βρίσκεται στην ΘΕΣΗ1 στην αρχή, όπως φαίνεται στο παρακάτω σχήμα. Το LED Needle είναι η στήλη των 8 LED.
Τώρα θα τροφοδοτήσουμε τον κινητήρα και θα αρχίσει να λειτουργεί.
Σε t = 0ms: η βελόνα θα βρίσκεται στη ΘΕΣΗ 1. Σε αυτήν τη θέση και τα οκτώ LED, από TOP LED (MSB) έως BOTTOM LED (LSB), είναι ενεργοποιημένα.
Σε t = 1ms: η βελόνα θα βρίσκεται στη ΘΕΣΗ 2. Όπως και στη θέση 1, σε αυτή τη θέση και τα οκτώ LED, από TOP LED (MSB) έως BOTTOM LED (LSB), είναι ενεργοποιημένα.
Σε t = 2ms: η βελόνα θα βρίσκεται στη ΘΕΣΗ 3. Σε αυτήν τη θέση μόνο τα LED7, LED6 & LED3 παραμένουν αναμμένα και τα υπόλοιπα LED είναι απενεργοποιημένα.
Σε t = 3ms: η βελόνα θα βρίσκεται στη ΘΕΣΗ 4. Όπως και στη θέση 3, σε αυτή τη θέση μόνο τα LED7, LED6 & LED3 παραμένουν αναμμένα και τα υπόλοιπα LED είναι απενεργοποιημένα.
Στα t = 4ms: η βελόνα θα βρίσκεται στη ΘΕΣΗ 5. Όπως και στη θέση 3 & 4, σε αυτήν τη θέση μόνο τα LED7, LED6 & LED3 παραμένουν αναμμένα. Τα υπόλοιπα LED σβήνουν.
Σε t = 5ms: η βελόνα θα είναι στη ΘΕΣΗ 6. Σε αυτήν τη θέση και τα οκτώ LED ανάβουν ξανά, τα LED TOP (MSB) σε BOTTOM led (LSB) είναι ενεργοποιημένα.
Σε t = 6ms: η βελόνα θα είναι στη θέση 7. Όπως με τη θέση 6, σε αυτήν τη θέση και τα οκτώ LED παραμένουν αναμμένα.
Όπως εξηγήθηκε παραπάνω, θα ανάβουμε τις κατάλληλες λυχνίες LED στις κατάλληλες θέσεις βελόνας για να εμφανίσουμε τον απαραίτητο χαρακτήρα. Εάν η ταχύτητα κίνησης της βελόνας είναι αργή, μπορούμε να δούμε κάθε στήλη LED ξεχωριστά. Αλλά όταν η ταχύτητα του κινητήρα είναι υψηλή και η βελόνα κινείται πολύ γρήγορα, τότε η οθόνη θα φαίνεται ότι δείχνει συνεχώς τον χαρακτήρα «Α».
Επεξήγηση προγραμματισμού:
Έχουμε προγραμματίσει το Arduino να τροφοδοτεί το κατάλληλο LED σε κατάλληλους χρόνους ενώ περιστρέφεται, έτσι ώστε η στήλη LED να εμφανίζει το κείμενο "CIRCUIT DIGEST" σε κυκλική θέση.
Ο προγραμματισμός της οθόνης της Έλικας είναι εύκολα κατανοητός. Ένα Char Array 26x8 έχει ληφθεί ως πτητικό char ALPHA. Αυτή η σειρά αποτελείται από 8 θέσεις της βελόνας για να εμφανίσει καθένα από τα 26 αλφάβητα που το καθιστούν συστοιχία 26x8. 26 σειρές στο Array αντιπροσωπεύουν τα 26 αλφάβητα και 8 στήλες σε κάθε σειρά αντιπροσωπεύουν την οκτώ θέση της βελόνας για την εμφάνιση του χαρακτήρα ενώ περιστρέφεται. Τώρα κάθε κελί αποτελείται από έναν δυαδικό αριθμό που αντιπροσωπεύει την κατάσταση ενεργοποίησης / απενεργοποίησης 8 LED σε μια συγκεκριμένη θέση της βελόνας. Θυμηθείτε ότι η βελόνα αναφέρεται σε γραμμή 8 LED που συνδέονται με το Arduino, όπως εξηγείται παραπάνω.
Τώρα πρέπει απλώς να περιστρέψετε τον κινητήρα DC και να χρησιμοποιήσετε ένα « για βρόχο » με οκτώ επαναλήψεις για την εμφάνιση ενός χαρακτήρα. Όπως εάν θέλετε να εμφανίσετε 10 χαρακτήρες, τότε πρέπει να εκτελέσετε 10 " για βρόχους" με οκτώ επαναλήψεις σε κάθε μία. Έτσι, χρησιμοποιήσαμε 13 για βρόχους για την εμφάνιση του κειμένου CIGCUIT DIGEST. Ελέγξτε τον πλήρη κωδικό προγράμματος παρακάτω με ένα βίντεο επίδειξης.
Έτσι λοιπόν μπορείτε να δημιουργήσετε μια όμορφη ψευδαίσθηση παραμονής της όρασης (POV) με τον Arduino σαν ένα κείμενο να περιστρέφεται σαν έλικα.