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

Παιχνίδι κυνηγετών σκύλων ελεγχόμενου λέιζερ Arduino: 6 βήματα
Παιχνίδι κυνηγετών σκύλων ελεγχόμενου λέιζερ Arduino: 6 βήματα

Βίντεο: Παιχνίδι κυνηγετών σκύλων ελεγχόμενου λέιζερ Arduino: 6 βήματα

Βίντεο: Παιχνίδι κυνηγετών σκύλων ελεγχόμενου λέιζερ Arduino: 6 βήματα
Βίντεο: ΠΑΙΧΝΙΔΙ ΖΩΗΣ ΚΑΙ ΘΑΝΑΤΟΥ! | Buckshot Roulette 2024, Νοέμβριος
Anonim
Image
Image
Παιχνίδι κυνηγιού σκύλου ελεγχόμενου Arduino
Παιχνίδι κυνηγιού σκύλου ελεγχόμενου Arduino

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

Βήμα 1: Υλικά

Υλικά
Υλικά
Υλικά
Υλικά
Υλικά
Υλικά

Το έργο αποτελείται από 4 μέρη: έναν πίνακα Arduino, 2 micro servos και μια μονάδα λέιζερ. Είναι όλα τοποθετημένα σε ένα πλαστικό δοχείο από ξινή κρέμα όπου η σανίδα Arduino είναι κολλημένη στο κάτω μέρος ενώ τα servos και το λέιζερ βρίσκονται στην κορυφή.

Παρακάτω είναι μια λίστα με συνδέσμους αγοράς όπου μπορείτε να πάρετε αυτό που χρειάζεστε:

  • Arduino Board:

    www.banggood.com/custlink/vKGvhaBTl3

  • 9g Mini Servos:

    www.banggood.com/custlink/v33GdlgfaE

  • Ενότητα διόδου λέιζερ:

    s.click.aliexpress.com/e/crrJMQgs

Βήμα 2: Κατασκευή

Κατασκευή
Κατασκευή
Κατασκευή
Κατασκευή
Κατασκευή
Κατασκευή

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

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

Βήμα 3: Καλωδίωση

Καλωδίωση
Καλωδίωση
Καλωδίωση
Καλωδίωση
Καλωδίωση
Καλωδίωση
Καλωδίωση
Καλωδίωση

Η ηλεκτρική καλωδίωση του έργου είναι σχετικά εύκολη. Οι σερβοκινητήρες έχουν τρία καλώδια: ισχύ, γείωση και σήμα. Το καλώδιο τροφοδοσίας είναι συνήθως κόκκινο και πρέπει να συνδεθεί με τον πείρο 5V στην πλακέτα Arduino. Το καλώδιο γείωσης είναι συνήθως μαύρο ή καφέ και πρέπει να συνδεθεί με έναν πείρο γείωσης στον πίνακα Arduino. Ο ακροδέκτης σήματος είναι συνήθως κίτρινος, πορτοκαλί ή λευκός και πρέπει να είναι συνδεδεμένος με έναν ψηφιακό ακροδέκτη στον πίνακα Arduino. Στην περίπτωσή μας χρησιμοποιούμε ψηφιακούς πείρους 9 και 11. Σημειώστε ότι τα σερβίς παίρνουν σημαντική ισχύ, οπότε αν χρειαστεί να οδηγήσετε περισσότερους από έναν ή δύο, πιθανότατα θα πρέπει να τους τροφοδοτήσετε από ξεχωριστή τροφοδοσία και όχι από τον πείρο +5V στο Arduino.

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

Το πλήρες διάγραμμα είναι διαθέσιμο στο EasyEda:

easyeda.com/bkolicoski/Arduino-Laser-Toy

Βήμα 4: Αρχές Λειτουργίας

Αρχές Λειτουργίας
Αρχές Λειτουργίας
Αρχές Λειτουργίας
Αρχές Λειτουργίας

Τώρα που ολοκληρώθηκε η επισκευή, ας ρίξουμε μια ματιά στον κωδικό και πώς λειτουργεί αυτή η συσκευή. Ένας τυπικός μικροϋπολογιστής σερβο 9g έχει κίνηση 180 μοίρες και ελέγχεται με σήμα PWM. Αυτό το σήμα δημιουργείται από το Arduino με τη βοήθεια της βιβλιοθήκης Servo. Η βιβλιοθήκη παρέχει μια βολική μέθοδο που ονομάζεται "εγγραφή" που γράφει μια τιμή στο σερβο, ελέγχοντας τον άξονα ανάλογα. Σε ένα τυπικό σερβο, αυτό θα ρυθμίσει τη γωνία του άξονα (σε μοίρες), μετακινώντας τον άξονα σε αυτόν τον προσανατολισμό.

Στην περίπτωσή μας, θέλουμε να περιορίσουμε αυτήν την κίνηση σε περίπου 50 έως 70 μοίρες προς κάθε κατεύθυνση, έτσι ώστε η περιοχή όπου τρέχει ο σκύλος να μην είναι μεγάλη για να μην κουραστεί πολύ σύντομα. Επιπλέον, χρησιμοποίησα αυτά τα όρια για να ορίσω την περίμετρο του λέιζερ έτσι ώστε να μην βγαίνει από την περιοχή που πρέπει να μετακινήσει ο σκύλος μου. Ορίζονται στην αρχή του σκίτσου μαζί με τους ορισμούς για τα δύο servos και τις μεταβλητές που θα χρησιμοποιήσουμε για τη θέση τους.

Βήμα 5: Κωδικός Arduino

Κωδικός Arduino
Κωδικός Arduino
Κωδικός Arduino
Κωδικός Arduino

Στη συνάρτηση ρύθμισης, αρχικοποιούμε πρώτα τα servos και τα συνδέουμε στις σωστές ακίδες του Arduino. Αυτό θα πει στη βιβλιοθήκη να βγάλει το σήμα PWM σε αυτόν τον ακροδέκτη. Στη συνέχεια γράφουμε την αρχική θέση και στα δύο servos και για να μπορέσουμε να τοποθετήσουμε σωστά το παιχνίδι, πρόσθεσα έναν κωδικό που θα μετακινήσει τα servos σε κυκλικό μοτίβο για 3 φορές στις άκρες του ορίου που έχει οριστεί. Με αυτόν τον τρόπο μπορείτε να δείτε πού κινείται η κουκκίδα και να προσαρμόσετε ανάλογα την τοποθέτηση του παιχνιδιού.

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

Ο πλήρης κωδικός βρίσκεται στη σελίδα μου στο GitHub:

github.com/bkolicoski/LaserToy

Βήμα 6: Απολαύστε

Απολαμβάνω!
Απολαμβάνω!
Απολαμβάνω!
Απολαμβάνω!

Ελπίζω ότι αυτό το Instructable ήταν εκπαιδευτικό και ενδιαφέρον, γι 'αυτό προτείνω να με ακολουθήσετε και μην ξεχάσετε να εγγραφείτε στο κανάλι μου στο YouTube.

Συνιστάται: