Πίνακας περιεχομένων:
- Προμήθειες
- Βήμα 1: Κώδικας και προγραμματισμός
- Βήμα 2: Πληκτρολόγιο
- Βήμα 3: Οθόνη LCD
- Βήμα 4: Τελικό (τραχύ) προϊόν εργασίας
- Βήμα 5: Όλα τα κουδούνια και τα σφυρίγματα
Βίντεο: Lazy 301 Dart Buddy !: 5 Βήματα
2024 Συγγραφέας: John Day | [email protected]. Τελευταία τροποποίηση: 2024-01-30 08:35
Οι συγκάτοικοι του κολλεγίου μου και εγώ κληρονομήσαμε πρόσφατα έναν ξυλοδαρμένο πίνακα με βελάκια…
Ξεκινήσαμε να εξερευνούμε παιχνίδια όπως τα 301, στα οποία κάθε παίκτης ξεκινά από 301 πόντους και φτάνει στο μηδέν βαθμούς κατά τη διάρκεια μερικών γύρων. Αυτό ήταν διασκεδαστικό, ωστόσο το γράψιμο στον (μικρό) πίνακα που παρέχεται δίπλα στον πίνακα ήταν χρονοβόρο και εμπόδισε τον επόμενο παίκτη να πυροβολήσει έως ότου ο προηγούμενος παίκτης ήταν εκτός δρόμου.
Λοιπόν, σκέφτηκα ότι θα ήταν ένα διασκεδαστικό απογευματινό έργο να συνδυάσουμε μια αριθμομηχανή με βάση το arduino που θα μπορούσε να μας βοηθήσει.
Σε περίπου μία ώρα είχα ένα πρόχειρο πρωτότυπο εργασίας σε μια σανίδα ψωμιού. Ωστόσο, με άλλες δύο ώρες δουλειάς αφαίρεσα το ψωμί και στερέωσα τα πάντα σε ένα φτηνό κουτί που κρέμασα από τον τοίχο.
Προμήθειες
Arduino Nano
Οποιαδήποτε φθηνή έκδοση Adafruit/Amazon των παρακάτω:
Οθόνη LCD 16x2
Πληκτρολόγιο
Ποτενσιόμετρο (θα λειτουργήσουν διάφορες αντιστάσεις)
Αρσενικό-αρσενικό, αρσενικό-θηλυκό, θηλυκό-θηλυκό ανάμεικτα καλώδια
Piezo ηχείο
Breadboard
Βήμα 1: Κώδικας και προγραμματισμός
Ο κώδικας ήταν εξαιρετικά εύκολος και βασικός. Δεν ήθελα τίποτα φανταχτερό εδώ, καθώς ήταν ένα γρήγορο έργο, αλλά μπορείτε να μπλέξετε με τον κώδικα της αρεσκείας σας. Σχεδίασα το παιχνίδι για οπουδήποτε από έναν έως τέσσερις παίκτες.
Έγραψα μια λειτουργία arduino για να ικανοποιήσω τέσσερις παίκτες. Το ονόμασα "game4p". Στη συνέχεια, το αντιγράφω και το επικολλάω άλλες τρεις φορές και μετονομάζω τις συναρτήσεις "game1P", "game2P" κ.λπ. και διαγράφω αναλόγως τον επιπλέον κώδικα. Η βασική ιδέα ήταν η εξής:
1) Εκτύπωση αποτελεσμάτων, ζητήστε από τον παίκτη 1 να ξεκινήσει
2) Όταν ο παίκτης εισάγει το σκορ, προχωρήστε στον επόμενο παίκτη εάν υπάρχει
3) επαναλάβετε (2) μέχρι να φύγουν όλοι οι παίκτες και μετά ξεκινήστε ξανά στο (1)
4) εάν η βαθμολογία ενός παίκτη φτάσει στο μηδέν, τερματίστε το παιχνίδι και ζητήστε ένα νέο παιχνίδι
Μπορείτε να δείτε τον κώδικα για να δείτε πώς χειρίζομαι πράγματα όπως
-Εισαγωγή υλικών στο πληκτρολόγιο
-Εξασφάλιση καλής εισόδου
-Επιτρέποντας τόσο την πρόσθεση όσο και την αφαίρεση χρησιμοποιώντας τα κάτω αριστερά και δεξιά πλήκτρα αντίστοιχα
Βήμα 2: Πληκτρολόγιο
Χρησιμοποίησα ένα φτηνό πληκτρολόγιο για να χειριστώ την εισαγωγή μου.
Η βιβλιοθήκη πληκτρολογίου του Arduino φροντίζει για όλα τα ωραία πράγματα πίσω από τις σκηνές που εξηγούνται όμορφα εδώ. Βασικά χρειάζεστε ένα pin ανά σειρά και ένα pin ανά στήλη δωρεάν στο arduino σας.
Στην περίπτωσή μου, χρησιμοποίησα το κάτω δεξί πλήκτρο για να ενεργοποιήσω μια ενέργεια αφαίρεσης (για να αφαιρέσω το σκορ σας από το 301) και το κάτω αριστερό πλήκτρο για προσθήκη (σε περίπτωση που κάποιος μπέρδεψε, το παιχνίδι δεν θα χαλάσει). Πατώντας αυτά τα πλήκτρα χωρίς να εισαγάγετε έναν αριθμό, προχωρήστε απλώς στον επόμενο παίκτη.
Μετά από μερικά λεπτά παιχνιδιού με τη Σειριακή οθόνη και τον παρεχόμενο παράδειγμα κώδικα που συνοδεύει τη βιβλιοθήκη του πληκτρολογίου, ήμουν έτοιμος να ενσωματώσω την οθόνη LCD για να εμφανίσω τα πατήματα πλήκτρων.
Βήμα 3: Οθόνη LCD
Για άλλη μια φορά, το arduino έχει ενσωματωμένη βιβλιοθήκη και για αυτό το στοιχείο. Η βιβλιοθήκη LCD χειρίζεται όλα τα ευρήματα που χρησιμοποιούν οι οθόνες LCD. Μπορείτε να βρείτε έναν μεγάλο πόρο pinout εδώ. Όλες οι οθόνες LCD που έχω χρησιμοποιήσει ακολουθούν το ίδιο pinout που εξηγείται σε αυτόν τον σύνδεσμο.
Τη στιγμή του ακατέργαστου πρωτοτύπου, δεν μπορούσα να βρω ένα ποτενσιόμετρο, το οποίο χρειάζεται για να προσαρμόσω την αντίθεση του κειμένου στην οθόνη με τον οπίσθιο φωτισμό (απαιτείται για την ακίδα 3). Έτσι χρησιμοποίησα ένα σωρό αντιστάσεις για να δημιουργήσω ένα διαχωριστή τάσης και ανίχνευσα ένα σημείο που μου φαινόταν λογικό.
Μετά από μερικά ακόμη λεπτά που μπλέχτηκαν με τη σειριακή οθόνη, ήμουν έτοιμος να τα συνδυάσω όλα!
Βήμα 4: Τελικό (τραχύ) προϊόν εργασίας
Εδώ είναι ένα βίντεο του προϊόντος ψωμιού σε δράση. Όλα λειτουργούν όπως αναμενόταν.
Μπορείτε να σταματήσετε εδώ μετά την ώρα εργασίας σας, ή μπορείτε να περάσετε άλλες λίγες ώρες και να το συσκευάσετε για να δείξετε (ελαφρώς) ωραιότερο όπως έκανα…
Βήμα 5: Όλα τα κουδούνια και τα σφυρίγματα
Όχι, δεν είναι βόμβα. Αυτό φαίνεται αρκετά τραχύ, αλλά κάνει τη δουλειά!
Πρόσθεσα ένα ηχείο για μερικά ευχάριστα σχόλια που αντιστοιχούν σε καλά/κακά πατήματα πλήκτρων. Με ένα μικρό πλαστικό κουτί που είχα στρώσει και μερικές φερμουάρ, μπόρεσα να το συσκευάσω και να το κρεμάσω στον τοίχο!
Ευχαριστώ για την ανάγνωση, βαθμολογήστε και σκεφτείτε να με ψηφίσετε στην "Πρόκληση 1 ώρας" στην οποία υποβάλλεται αυτό το προβλεπόμενο.
Μη διστάσετε να κάνετε ερωτήσεις στα σχόλια!
Συνιστάται:
Lazy 7 / Quick Build Edition: 8 βήματα (με εικόνες)
Lazy 7 / Quick Build Edition: Ναι. Αλλο ένα. Θα αντιγράψω/επικολλήσω εδώ τις πληροφορίες που έχω βάλει στο Thingiverse, αυτή η τεκμηρίωση είναι πραγματικά απαραίτητη μόνο για τη δρομολόγηση της λωρίδας led. Πρόσφατα δημοσίευσα το 7 Segment Clock - Small Printers Edition, την πρώτη οθόνη 7 τμημάτων που μας έχτισα
Φυγόκεντρος του Poor Man και Lazy Suzan: 3 Βήματα
Φυγοκεντρική Poor Man's και Lazy Suzan: Εισαγωγή + Μαθηματικά και σχεδιασμόςΚεντροφυγοί Οι φυγοκεντρικές φυγοκεντρίσεις χρησιμοποιούνται για τον διαχωρισμό των υλικών κατά πυκνότητα. Όσο μεγαλύτερη είναι η διαφορά πυκνότητας μεταξύ των υλικών, τόσο πιο εύκολο είναι να διαχωριστούν. Έτσι, σε γαλακτώματα όπως το γάλα, μια φυγόκεντρος μπορεί να διαχωρίσει μερικές
Lazy 7 / One: 12 βήματα (με εικόνες)
Lazy 7/One: Lazy 7/One Οι λειτουργίες/οδηγίες είναι οι ίδιες όπως σε άλλα έργα που βασίζονται στο ίδιο σκίτσο, εδώ είναι ένα άλλο βίντεο (επίσης συνδεδεμένο από τις οδηγίες σκίτσων στο βήμα 10). Ενημέρωση - 2020/07/30 Σπασμένη θήκη ηλεκτρονικών STL και πρόσθεσε ένα άλλο εξώφυλλο (Β)
Lazy Clock for Lazy People !: 5 Βήματα
Lazy Clock for Lazy People !: Σε ένα ζεστό και ηλιόλουστο πρωινό Σαββάτου, ξαπλώνετε στο κρεβάτι, ονειρεύεστε όλα τα γλυκά πράγματα στον κόσμο. Ξαφνικά, το ξυπνητήρι αρχίζει να ουρλιάζει, διαπερνώντας τον εγκέφαλό σας, αναγκάζοντάς σας να ξυπνήσετε. Φτάνετε στο χέρι σας για να βρείτε το κουμπί αναβολής
Glider Dart Airplane: 4 Βήματα
Glider Dart Airplane: Θα σας δείξω πώς να φτιάξετε ένα αεροπλάνο με βελάκι. Είναι αρκετά απλό