Πίνακας περιεχομένων:

Animatronic Eye: 7 Βήματα
Animatronic Eye: 7 Βήματα

Βίντεο: Animatronic Eye: 7 Βήματα

Βίντεο: Animatronic Eye: 7 Βήματα
Βίντεο: ALL TYPES OF MARIONETTE ANIMATRONICS Fanmade Timeline V1 2024, Νοέμβριος
Anonim
Image
Image
Αυτό είναι αυτό που χρειάζεστε
Αυτό είναι αυτό που χρειάζεστε

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

Βήμα 1: Αυτό είναι που χρειάζεστε

Υλικά:

  • 2 λευκές μπάλες πινγκ πονγκ
  • Σωλήνας ψύξης νερού με στρογγυλή κεφαλή

Εργαλεία:

  • Πυροβόλο θερμής κόλλας
  • στρογγυλό μύλο
  • είδε
  • Σφυρί

Βήμα 2: Τα μάτια

Τα μάτια
Τα μάτια
Τα μάτια
Τα μάτια
Τα μάτια
Τα μάτια

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

Βάψτε και ανοίξτε τις τρύπες.

Βήμα 3: Εναλλαγή Παρ

Image
Image
Παρ. Περιστροφή
Παρ. Περιστροφή
Παρ. Περιστροφή
Παρ. Περιστροφή

Δεν ήθελα ένα μάτι που κινείται μόνο από τη μια πλευρά στην άλλη. Είδα πολλά διδακτικά, αλλά δεν ήμουν σε θέση να καταλάβω πώς να το καταφέρω. Τελικά βρήκα ένα βίντεο στο You-Tube αλλά δεν ήθελα να αγοράσω. Έκανα μια πρώτη προσπάθεια χρησιμοποιώντας ξύλο και μέταλλο από κλιπ. Ασφάλισα τις καρφίτσες με το πιστόλι κόλλας αλλά δεν ήμουν ικανοποιημένος με τα αποτελέσματα. Ως βιομηχανικός εργάτης έχω πρόσβαση σε πολλά πράγματα. Παρατήρησα ότι ο σωλήνας ψύξης νερού Round Head μοιάζει ακριβώς με αυτό που χρειαζόμουν, αλλά ήταν σφιχτός για να περιστρέφεται ελεύθερος. Αλέθηκα μέσα στο τμήμα και στη συνέχεια το τμήμα μου ήταν έτοιμο να περιστραφεί ελεύθερο.

Βήμα 4: Η βάση

Η βάση
Η βάση
Η βάση
Η βάση
Η βάση
Η βάση

Μπορείτε να χρησιμοποιήσετε ένα σφυρί για να λυγίσετε τη βάση, μια μέγγενη πάγκου βοηθά να αποκτήσετε το τέλειο 90 °. Βεβαιωθείτε ότι έχετε ανοίξει την τρύπα πριν από την κάμψη, είναι πολύ πιο εύκολο.

Βήμα 5: Έλεγχος των ματιών

Έλεγχος των ματιών
Έλεγχος των ματιών
Έλεγχος των ματιών
Έλεγχος των ματιών
Έλεγχος των ματιών
Έλεγχος των ματιών

Βήμα 6: Το πρόγραμμα

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

Αντιγράψτε και επικολλήστε το πρόγραμμα στο περιβάλλον σας Arduino.

#περιλαμβάνω

#define pi 3.14159265358979323846 #define twopi (2*pi) float circleradius = 50; // 50 κάθε πλευρά - μην κάνετε πλέον καμία από τις μέγιστες οριακές τιμές σας float stepnumber = 360; επιπλέων τρίγωνο?

#include // include servo Library για servo control

Servo horServo; // σερβο για κίνηση αριστερά/δεξιά Servo vertServo; // σερβο για κίνηση πάνω/κάτω

byte randomhor? // καθορισμός τυχαίας οριζόντιας θέσης μεταβλητή byte randomvert; // καθορισμός τυχαίας μεταβλητής κάθετης θέσης int randomdelay; // καθορισμός μεταβλητής τυχαίας καθυστέρησης

#define HLEFTLIMIT 40 // καθορισμός αριστερού ορίου σε οριζόντια (αριστερά/δεξιά) servo #define HRIGHTLIMIT 80 // καθορισμός δεξιού ορίου σε οριζόντιο (αριστερά/δεξιά) σερβο

#define VTOPLIMIT 70 // καθορισμός ανώτατου ορίου σε κάθετο (πάνω/κάτω) servo #define VBOTLIMIT 110 // καθορισμό κατώτατου ορίου σε οριζόντιο (πάνω/κάτω) σερβο

void setup () {horServo.attach (8); // οριζόντιο σερβο στον πείρο 8 vertServo.attach (9); // κάθετος σερβο στον ακροδέκτη 9 randomSeed (analogRead (0)); // Δημιουργήστε μερικές τυχαίες τιμές χρησιμοποιώντας ένα μη συνδεδεμένο αναλογικό pin

stepangle = twopi/stepnumber? για (int i = 0; i

x = χάρτης (x, 1-circleradius, circleradius, 0, 2*circleradius); y = χάρτης (y, 1-κύκλος, κύκλος, 0, 2*κύκλος);

horServo.write (x); // εγγραφή στο οριζόντιο σερβο vertServo.write (y); // γράψτε στον οριζόντιο σερβο

καθυστέρηση (10)? }}

void loop () {randomhor = random (HLEFTLIMIT, HRIGHTLIMIT); // ορίστε όρια randomvert = random (VTOPLIMIT, VBOTLIMIT); // ορίστε όρια randomdelay = random (1000, 4000); // κινείται κάθε 1 έως 4 δευτερόλεπτα

horServo.write (randomhor); // εγγραφή στο οριζόντιο σερβο vertServo.write (randomvert); // εγγραφή στην κάθετη καθυστέρηση σερβο (τυχαία καθυστέρηση). // καθυστέρηση τυχαίου χρονικού διαστήματος (εντός των τιμών που ορίστηκαν παραπάνω)}

Συνιστάται: