Δεν έχετε παίξει ποτέ αυτό το παιχνίδι
Πέρα από την πλάκα καιρό ήθελα να το κάνω αυτό... Άλλωστε ήταν και ένας από τους βασικούς λόγους που είχα αγοράσει το GameBoy τότε (ο άλλος ήταν ο στρατός
)
Πρόκειται για ένα μικρό αυτοκινούμενο ρομπότ που χρησιμοποιεί ως κύριο και μοναδικό επεξεργαστή το GameBoy Advance SP της Nintendo.
Στο βίντεο φαίνεται μια δοκιμή του ελέγxου των κινητήρων. Στο εν λόγω ρομπότ έχω τέσσερις τροχούς που κινούνται απο 4 ανεξάρτητους κινητήρες. Ωστόσο θα μπορούσε να είχε και δύο τροχούς (με δύο κινητήρες κάτι σαν τρίκυκλο) ή ακόμη καλύτερα να είχε ερπύστριες. Σε οποιαδήποτε περίπτωση ο κώδικας παραμένει ίδιος.
Το ρομπότ δεν έχει κάποιον επιπλέον μικροεπεξεργαστή-μικροελεγκτή, πέρα από το GameBoy και το βασικό κύκλωμα φαίνεται στην εικόνα:
https://1.bp.blogspot.com/-fhPwxdZdY...0/DSC_1649.JPG
Αποτελείται απο ένα Motor shield για arduino της adafruit και συγκεκριμένα αυτό: https://www.adafruit.com/product/81
Βασικά χρησιμοποιώ ένα κινέζικο κλώνο.
Το κύκλωμα εισόδων/εξόδων είναι πολύ απλό.
Έχει έναν shift register (καταχωρητή ολίσθησης) εκ των οποίων μόνο οι 6 (από τις 8 συνολικά) εξόδους είναι διαθέσιμες για γενική χρήση. Οι άλλες δύο είναι δεσμευμένες. Στην πραγματικότητα το Moter shield έχει και αυτό έναν shift register (και μάλιστα ακριβώς τον ίδιο) ανεβάζοντας τον αριθμό των εξόδων στις 14. Ωστόσο οι 8 έξοδοι του καταχωρητή του shield χρησιμοποιούνται για τους τέσσερις κινητήρες. Το shield δευσμεύει και μια επιπλέον έξοδο από τον καταχωρητή του κυκλώματος εισόδων/εξόδων (Η μία εκ των δύο που ανέφερα προηγουμένως)
Η τελευταία δεσμευμένη έξοδος χρησιμοποιείται προφανώς για τις εισόδους. Τώρα, για ότι αφορά τις εισόδους είχα ένα δίλλημα. Ψηφιακές ή αναλογικές; Δυστυχώς δεν μπορούσα να έχω και τις δύο περιπτώσεις, αφού δεν υπήρχαν άλλες διαθέσιμες θύρες στην πόρτα του GameBoy (link port). Επέλεξα τις αναλογικές γιατί μπορούν να χρησιμοποιηθούν και ως ψηφιακές, θυσιάζοντας λίγο την ταχύτητα. Θα μπορούσα να κάνω αλχημείες για να βάλω και ψηφιακές, αλλά ήταν υπερβολή.
Έτσι στο κύκλωμα υπάρχει ένας αναλογικός-ψηφιακός μετατροπέας ADC 8 καναλιών, με αποτέλεσμα το ρομπότ να έχει διαθέσιμες συνολικά 8 αναλογικές εισόδους (για αισθητήρες κτλ)
https://1.bp.blogspot.com/-zM2NHNxj0...185552_078.jpg
https://2.bp.blogspot.com/-UJnC5e8N1...0/DSC_1558.JPG
https://4.bp.blogspot.com/-9LIQKq6pZ...0/DSC_1647.JPG
https://2.bp.blogspot.com/-hjIcWiz0R...0/DSC_1648.JPG
https://2.bp.blogspot.com/-yscooGi6R...185552_079.jpg
Χαρακτηριστικά

Πέρα από την πλάκα καιρό ήθελα να το κάνω αυτό... Άλλωστε ήταν και ένας από τους βασικούς λόγους που είχα αγοράσει το GameBoy τότε (ο άλλος ήταν ο στρατός

Πρόκειται για ένα μικρό αυτοκινούμενο ρομπότ που χρησιμοποιεί ως κύριο και μοναδικό επεξεργαστή το GameBoy Advance SP της Nintendo.
Στο βίντεο φαίνεται μια δοκιμή του ελέγxου των κινητήρων. Στο εν λόγω ρομπότ έχω τέσσερις τροχούς που κινούνται απο 4 ανεξάρτητους κινητήρες. Ωστόσο θα μπορούσε να είχε και δύο τροχούς (με δύο κινητήρες κάτι σαν τρίκυκλο) ή ακόμη καλύτερα να είχε ερπύστριες. Σε οποιαδήποτε περίπτωση ο κώδικας παραμένει ίδιος.
Το ρομπότ δεν έχει κάποιον επιπλέον μικροεπεξεργαστή-μικροελεγκτή, πέρα από το GameBoy και το βασικό κύκλωμα φαίνεται στην εικόνα:
https://1.bp.blogspot.com/-fhPwxdZdY...0/DSC_1649.JPG
Αποτελείται απο ένα Motor shield για arduino της adafruit και συγκεκριμένα αυτό: https://www.adafruit.com/product/81
Βασικά χρησιμοποιώ ένα κινέζικο κλώνο.
Το κύκλωμα εισόδων/εξόδων είναι πολύ απλό.
Έχει έναν shift register (καταχωρητή ολίσθησης) εκ των οποίων μόνο οι 6 (από τις 8 συνολικά) εξόδους είναι διαθέσιμες για γενική χρήση. Οι άλλες δύο είναι δεσμευμένες. Στην πραγματικότητα το Moter shield έχει και αυτό έναν shift register (και μάλιστα ακριβώς τον ίδιο) ανεβάζοντας τον αριθμό των εξόδων στις 14. Ωστόσο οι 8 έξοδοι του καταχωρητή του shield χρησιμοποιούνται για τους τέσσερις κινητήρες. Το shield δευσμεύει και μια επιπλέον έξοδο από τον καταχωρητή του κυκλώματος εισόδων/εξόδων (Η μία εκ των δύο που ανέφερα προηγουμένως)
Η τελευταία δεσμευμένη έξοδος χρησιμοποιείται προφανώς για τις εισόδους. Τώρα, για ότι αφορά τις εισόδους είχα ένα δίλλημα. Ψηφιακές ή αναλογικές; Δυστυχώς δεν μπορούσα να έχω και τις δύο περιπτώσεις, αφού δεν υπήρχαν άλλες διαθέσιμες θύρες στην πόρτα του GameBoy (link port). Επέλεξα τις αναλογικές γιατί μπορούν να χρησιμοποιηθούν και ως ψηφιακές, θυσιάζοντας λίγο την ταχύτητα. Θα μπορούσα να κάνω αλχημείες για να βάλω και ψηφιακές, αλλά ήταν υπερβολή.
Έτσι στο κύκλωμα υπάρχει ένας αναλογικός-ψηφιακός μετατροπέας ADC 8 καναλιών, με αποτέλεσμα το ρομπότ να έχει διαθέσιμες συνολικά 8 αναλογικές εισόδους (για αισθητήρες κτλ)
https://1.bp.blogspot.com/-zM2NHNxj0...185552_078.jpg
https://2.bp.blogspot.com/-UJnC5e8N1...0/DSC_1558.JPG
https://4.bp.blogspot.com/-9LIQKq6pZ...0/DSC_1647.JPG
https://2.bp.blogspot.com/-hjIcWiz0R...0/DSC_1648.JPG
https://2.bp.blogspot.com/-yscooGi6R...185552_079.jpg
Χαρακτηριστικά
- ΚΜΕ: GameBoy Advance SP
- Κίνηση: Τέσσερις τροχοί κινούμενοι από τέσσερις ανεξάρτητους dc κινητήρες (4x4)
- Κινητήρες: Τέσσερις dc κινητήρες
- GPIO: Έξι έξοδοι και οχτώ αναλογικές είσοδοι. Υπάρχουν επίσης 8 + 1 έξοδοι που προορίζονται για τον έλεγχο των κινητήρων. Μία έξοδος χρειάζεται για την επικοινωνία με τον αναλογικό/ψηφιακό μετατροπέα (ADC). Έτσι απομένουν μόνο 6 έξοδοι γενικού σκοπού για οποιαδήποτε χρήση.
- Αισθητήρες:
Μάτια: Δύο αναλογικοί πομποδέκτες υπερύθρων στο μπροστινό τμήμα, για αποφυγή εμποδίων (προς τοποθέτηση).
Τελευταία επεξεργασία από έναν συντονιστή: