Jump to content

arximidis

Members
  • Content Count

    97
  • Joined

  • Last visited

  • Days Won

    2

arximidis last won the day on November 23

arximidis had the most liked content!

Community Reputation

2.935 Excellent

About arximidis

  • Rank
    RetroWannaBe
  1. arximidis

    The GameBoy Robot

    Βήμα 11ο Μεταγλωττίζοντας το gbafix.c Προκειμένου να μεταγλωττίσουμε τον πηγαίο κώδικα του gbafix.c σε εκτελέσιμη μορφή, θα χρειαστούμε φυσικά τον κατάλληλο compiler. Στη δική μας περίπτωση είναι ο gcc. Στο Linux είναι προεγκατεστημένος και δεν χρειάζεται να κάνουμε τίποτα επιπλέον. Στα Windows όμως θα πρέπει να τον εγκαταστήσουμε. Η διαδικασία ευτυχώς δεν είναι δύσκολη και την περιγράφω στη συνέχεια Εγκαθιστώντας το TDM-GCC Επισκεφθείτε τη σελίδα http://tdm-gcc.tdragon.net/download και από τη λίστα installers κάντε κλικ στην τελευταία 32bit έκδοση του tdm-gcc. Στη δική μου περίπτωση ήταν η tdm-gcc-5.1.0-3.exe. Αυτό θα σας κατευθύνει στην αντίστοιχη σελίδα sourceforge, ώστε να το κατεβάσετε. Μόλις ολοκληρωθεί το κατέβασμα, κάντε διπλό κλικ στο εκτελέσιμο αρχείο που κατεβάσατε, ώστε να ξεκινήσει η διαδικασία της εγκατάστασης. Ακολουθείστε τα επόμενα βήματα Βήμα 1ο: Στο αρχικό παράθυρο που θα εμφανιστεί κάντε κλικ στο Create, ώστε να δημιουργήσετε μια καινούργια εγκατάσταση του tdm-gcc. Αφήστε την επιλογή check for updated files on the TDM-GCC server, τσεκαρισμένη (βεβιαωθείτε ότι είστε συνδεδεμένοι στο διαδίκτυο). Βήμα 2ο: Επιλέξτε την έκδοση MinGW/TDM (32bit) και πατήστε το Next. Διαβάστε την άδεια και μετά ξανά κλικ στο Next Βήμα 3ο: Επιλέξτε τον φάκελο προορισμού. Μπορείτε να αφήσετε τον προεπιλεγμένο ή να φτιάξετε έναν καινούργιο. Στη δική μου περίπτωση επέλεξα φάκελο προορισμού το c:\files\TDM-GCC-32. Γενικά αποφύγετε έναν φάκελο προορισμού που να περιέχει κενά στο όνομα. πατήστε το Next Βήμα 4ο: Αφήστε τον επιλεγμένο εξ' ορισμού καθρέπτη (Sourceforge). Κλικ στο Next Βήμα 5ο: Αφήστε την προτιμώμενη επιλογή (TDM-GCC recommended, C/C++), και κάντε κλικ στο install Βήμα 6ο. Μολις ολοκληρωθεί η εγκατάσταση πατήστε το Next και μετά το finish για να κλείσετε το πρόγραμμα. Είναι σημαντικό να κάνετε επανεκκίνηση στον υπολογιστή σας για να ολοκληρωθεί η διαδικασία με επιτυχία Δοκιμάζοντας ότι η εγκατάσταση του compiler έγινε σωστά Μετά την επανεκκίνηση του υπολογιστή καλό είναι να δοκιμάσετε ότι το tdm-gcc έχει εγκατασταθεί με επιτυχία στον υπολογιστή σας. Για να το κάνετε αυτό θα χρειαστεί η κονσόλα των Windows (command prompt). Πατήστε το start button και στην αναζήτηση γράψτε cmd. Στη λίστα θα εμφανιστεί το cmd.exe. Kάντε κλικ σε αυτό. Μολίς φορτώσει η κονσόλα, γράψτε gcc - v και πατήστε το enter. Αν δείτε να εμφανίζεται ένα μήνυμα που να σας πληροφορεί για την έκδοση του compiler, τότε όλα πήγαν καλά
  2. arximidis

    The GameBoy Robot

    Βήμα 10ο To Gbafix.c Ένα πράγμα που θα διαπιστώσετε αν αποφασίσετε να γράψετε το δικό σας κώδικα για το GameBoy Αdvance είναι ότι, ενώ το πρόγραμμά σας θα εκτελείται ωραία και καλά στον εξομοιωτή, όταν θα προσπαθήσετε να το τρέξετε στο πραγματικό υλικό (στο GameBoy δηλαδή), αυτό δε θα φορτώνει. Για να μπορέσετε λοιπόν να τρέξετε το πρόγραμμά σας στο GameBoy, θα πρέπει να διορθώσετε το rom που προκύπτει από τη μεταγλώττιση του κώδικα με το devkit Advance. Αυτό μπορεί να γίνει με ένα εργαλείο που λέγεται Gbafix (DevkitPro GBA ROM fix utility). Το πρόβλημα είναι ότι θα το βρείτε σε μορφή πηγαίου κώδικα, που σημαίνει, με τη σειρά του, ότι θα πρέπει πρώτα να το μεταγλωττίσετε (compile). Ευτυχώς δεν είναι δύσκολο. Τη διαδικασία θα σας την περιγράψω με λεπτομέρειες στο επόμενο βήμα, αφού στην περίπτωση που χρησιμοποιείτε τα Windows θα πρέπει πρώτα να εγκαταστήσετε τον gcc Για την ώρα θα πρέπει να κατεβάσετε τον πηγαίο κώδικα του Gbafix Κατευθυνθείτε στη σελίδα του github https://github.com/devkitPro/gba-tools... και κάντι κλικ στο κουμπί raw. Αντιγράψτε τον κώδικα και επικολλήστε τον στο σημειωματάριο (notepad) των Windows. Στη συνέχεια αποθηκεύστε το αρχείο με το όνομα gbafix.c (Σημ: Μην ξεχάσετε να αλλάξετε το πεδίο "Αποθήκευση ως" από "έγγραφα κειμένου (*.txt)" σε "όλα τα αρχεία (*.*)", διαφορετικά το αρχείο θα σωθεί ως gbafix.c.txt, που προφανώς δε θέλουμε )
  3. arximidis

    The GameBoy Robot

    Βήμα 9ο ( προαιρετικό ) VisualBoyAdvance Emulator Το VisualBoyAdvane είναι ένας πολύ καλός εξομοιωτής για το GameBoy γενικότερα. Δεν είναι απαραίτητο να το εγκαταστήσετε, αφού δε θα είναι σε θέση να εξομοιώσει την πλακέτα εισόδων/εξόδων του ρομπότ αλλά ούτε τους αισθητήρες και τις συσκευές που συνδέονται σε αυτήν. Ωστόσο προτείνω να το εγκαταστήσετε αφού θα σας δώσει την δυνατότητα να βλέπετε τα αποτελέσματα του κώδικα που γράφετε, αν για παράδειγμα εμφανίζετε μηνύματα στην οθόνη ή σχεδιάζετε κάποια γραφικά Εγκατάσταση Κατευθυνθείτε στη διεύθυνση https://sourceforge.net/projects/vba/ και απλά πατήστε το Download. Αφού το κατεβάσετε μπορείτε να το αποσυμπιέσετε οπουδήποτε θέλετε στον υπολογιστή σας, αφού το πρόγραμμα δεν απαιτεί κάποια εγκατάσταση Στην δική μου περίπτωση απλά αντέγραψα το zip αρχείο στον κατάλογο C:\files (που δημιουργτήσαμε στο προηγούμενο βήμα) και μετά το αποσυμπίσεσα με το 7zip, επιλέγοντας extract to VisualBoyAdvance-1.7.2, όπως φαίνεται στις φωτογραφίες. Δεν επέλεξα το "extract here" γιατί σε αυτήν την περίπτωση θα αποσυμπίεζε όλα τα περιεχόμενα αρχεία απ' ευθείας στον κατάλογο C:\files και δε θα δημιουργούσε έναν ξεχωριστό κατάλογο.
  4. arximidis

    The GameBoy Robot

    Βήμα 8ο Ο προγραμματισμός. Το DevKit Advance Και ήρθε λοιπόν η ώρα του προγραμματισμού. Πιθανόν κάποιοι να μην το γνωρίζουν, αλλά ένα ρομπότ από μόνο του, χωρίς τον απαραίτητο προγραμματισμό, δεν κάνει απολύτως τίποτα. Βέβαια αυτό ακριβώς είναι και η "δύναμή" του. Ο προγραμματισμός είναι αυτός που δίνει ευελιξία στο ρομπότ, αφού ή ίδια μηχανή μπορεί να κάνει διαφορετικά πράγματα απλά αλλάζοντας κάθε φορά τον κώδικα που θα εκτελεί Για να μπορέσουμε όμως να γράψουμε τον κώδικα (μια διαδικασία για την οποία φυσικά χρησιμοποιούμε τον υπολογιστή μας 😛 ), θα χρειαστεί να εγκαταστήσουμε πρώτα όλα τα απαραίτητα προγράμματα. Αυτό ακριβώς θα ξεκινήσω να περιγράφω στη συνέχεια Το βασικό εργαλείο που χρειάζεται για να προγραμματίζουμε το GameBoy (και άρα το ρομπότ ) είναι το DevKit Advance. DevKit Advance Επισκεφθείτε τη σελίδα http://devkitadv.sourceforge.net/ και κάντε κλίκ στο download. Θα σας μεταφέρει στη σελίδα sourceforge, από όπου μπορείτε να καταβέσετε το πρόγραμμα. Εκεί κάντε κλικ στο Windows και μετά στο Release 5 (Beta 3). Κατεβάστε όλα τα αρχεία ζιπ που θα βρείτε εκεί (Σημ: απ' ευθείας link: https://sourceforge.net/projects/devkitadv/files/...) Εγκατάσταση του DevKit Advance Αφού λοιπόν κατεβάσετε όλα τα αρχεία zip, ακολουθήστε τις ακόλουθες οδηγίες για να εγκαταστήσετε το πρόγραμμα: Δημιουργείστε έναν κατάλογο, κάτω από τον προγονικό κατάλογο C:\ του σκληρού σας δίσκου, και ονομάστε τον π.χ. files, όπως φαίνεται και στην εικόνα (Μπορείτε να του δώσετε και διαφορετικό όνομα, ωστόσο δε θα πρέπει να περιέχει κενά) Αντιγράψτε όλα τα αρχεία zip που κατεβάσατε μέσα στο φάκελο που δημιουργήσατε στο προηγούμενο βήμα Κάντε δεξί κλικ στο πρώτο αρχείο zip και επιλέξτε 7-zip -> Extract here, όπως φαίνεται στην εικόνα Κάντε ακριβώς το ίδιο και για όλα τα zip αρχεία στον κατάλογο. Όταν εμφανιστεί ένα παράθυρο που να γράφει Confirm File Replace, επιλέξτε Yes to All για να αντικαταστήσετε όλα τα αρχεία με τις καινούργιες εκδόσεις Με την ολοκλήρωση της αποσυμπίεσης όλων των αρχείων θα δημιουργηθεί ένας καινούργιος φάκελος με το όνομα devkitadv-r5-beta-3. Τώρα μπορείτε να διαγράψετε όλα τα zip αρχεία και να μετονομάσετε τον φάκελο που δημιουργήθηκε σε devkitadv, όπως φαίνεται και στην εικόνα Αυτό ήταν όλο! Πλέον το devkit Advance είναι εγκατεστημένο στον υπολογιστή σας
  5. arximidis

    The GameBoy Robot

    Βήμα 7ο Το Mini SD Flash SuperCard Cartridge Adapter για το GBA Φτάσαμε στο τελευταίο βήμα της κατασκευής πριν ξεκινήσουμε τον προγραμμαρισμό (έχει μερικά πραγματάκια να κάνουμε ακόμη μέχρι να προγραμματίσουμε το ρομπότ) Πρόκειται για ένα cartridge για το GameBoy Advance που σας επιτρέπει να φορτώνετε roms παιχνιδιών από μια SD κάρτα. Έτσι αν έχετε αρκετά roms, τότε μπορείτε να τα αποθηκεύσετε στην sd κάρτα και με αυτόν τον τρόπο να γλυτώνετε να κουβαλέτε όλες αυτές τις ξεχωριστές "κασέτες" των τίτλων που έχετε για το GameBoy Adcance ή ακόμη και για το GameBoy. Εμείς βέβαια το cartridge αυτό θα το χρειαστούμε για να αποθηκεύουμε και να φορτώνουμε το δικό μας κώδικα που θα γράφουμε για το ρομπότ. Ωστόσο τα πράγματα δεν είναι τόσο απλά, με την έννοια ότι τα roms χρειάζονται μια μικρή τροποποίηση για να μπορέσουν να παίξουν. Το ίδιο θα χρειαστεί και ο δικός μας κώδικας Λίγη προσοχή χρειάζεται στην SD κάρτα που θα επιλέξετε για το cartridge (αφού αυτό έρχεται χωρίς αυτήν). Γενικά υποστηρίζει κάρτες μέχρι 2GB (προφανώς δυσεύρετες, αλλά υπάρχουν στο eBay), την οποία και πρέπει να διαμορφώσετε σε FAT (δηλαδή FAT16, όχι FAT32 και φυσικά με την καμία σε NTFS), αλλιώς δε θα μπορέσει να τη διαβάσει. Επίσης η κάρτα δεν θα πρέπει να είναι και πολύ γρήγορη γιατί πάλι θα έχετε πρόβλημα. Εγώ για παράδειγμα έχω μια sd 1GB και παρόλο που την διαμόρφωσα σε FAT, δεν την αναγνωρίζει γιατί είναι πιο καινούργια
  6. arximidis

    The GameBoy Robot

    Βήμα 6ο Τοποθετώντας το GameBoy στο ρομπότ Ένα θετικό σημείο της κατασκευής είναι ότι ΔΕΝ χρειάζεται να επέμβετε ή να "πειράξετε" το GameBoy, που θα μπορούσε να οδηγήσει σε πιθανή καταστροφή του. Ευτυχώς το GameBoy σας ΔΕΝ κινδυνεύει 🤗 Ο λόγος πολύ απλός... Τα μόνα που χρειάζονται για την τοποθέτηση είναι αυτοκόλλητα βέλκρο Προσωπικά χρησιμοποήσα λευκά στρογγυλά για το GameBoy και μαύρα για το ρομπότ, ώστε να μην φαίνονται. Τα τοποθέτησα σε τέτοια σημεία ώστε να μην ενοχλούν ακόμη και όταν παίζεις κάποιο παιχνίδι με το GameBoy. Με αυτόν τον τρόπο δεν χρειάζονται ξεκόλλημα κάθε φορά. Αν όμως πάλι για κάποιο λόγο μετανιώσετε και δε θέλετε να χρησιμοποιήσετε το GameBoy στην κατασκευή, απλά ξεκολλάτε τα βέλκρο και ούτε γάτα ούτε ζημιά 😉
  7. arximidis

    The GameBoy Robot

    Εννοείται 😄 Βέβαια αν σου δείξω φωτογραφία από το εργαστήριο, θα απογοητευτείς 😛
  8. arximidis

    The GameBoy Robot

    Βήμα 5ο Σύνδεση των πλακετών Υγεία σε όλους! Συνεχίζουμε την περιγραφή με τις απαραίτητες καλωδιώσεις. Σε αυτό το μήνυμα θα περιγράψω τον τρόπο που πρέπει να συνδεθεί η πλακέτα εισόδων/εξόδων με την πλακέτα των κινητήρων (motor shield), σε περίπτωση που δεν την φτιάξετε μόνοι σας και την αγοράσετε έτοιμη από το εμπόριο. Για όλα τα παρακάτω καλό είναι να έχετε μπροστά σας και το σχεδιάγραμμα της συνολικής πλακέτας, όπως αυτό παρουσιάστηκε στο βήμα 3 Λοιπόν... όπως έχω ήδη πει, το "κάτω" μέρος του σχεδιαγράμματος (δηλαδή αυτό που εσωκλείεται στο κόκκινο πλαίσιο) είναι στην ουσία το motor shiled (που στην περίπτωσή μας το έχουμε έτοιμο από το εμπόριο). Το "πάνω" κομμάτι είναι στην ουσία το τμήμα με τις ψηφιακές εξόδους και τις αναλογικές εισόδους. Στην επόμενη εικόνα φαίνεται το "πάνω" μέρος του σχεδιαγράμματος, όπως το υλοποίησα εγώ σε μια διάτρητη πλακλέτα Παρατηρήστε το ταμπελάκι κάτω δεξιά. Το SC, το SI (που κρύβεται από το πράσινο καλώδιο), το 3V3, το SD και το SO θα πρέπει να συνδεδούν με τα αντίστοιχα SCK,SI,3V3,SD και SO του καλωδίου διασύνδεσης δύο παικτών του GameBoy (GameBoy Link cable), το οποίο και περιγράψαμε στο προηγούμενη βήμα. Το QH που βλέπετε, δεν συνδέεται με το GameBoy, αλλα με την πλακέτα των κινητήρων. Στην ουσία πρόκειται για το Q7S (pin 9) του "πάνω" 74HC595 του σχηματικού διαγράμματος. Αυτό το QH λοιπόν, θα πρέπει να το συνδέσετε στο pin 8 του motor shield με ένα καλώδιο Επιπλέον... Είπαμε ότι το SC και το SO συνδέονται στο καλώδιο του GameBoy. Ωστόσο ταυτόχρονα πρέπει να συνδεθούν και στο motor shield (βλέπε σχηματικό). Πιο συγκεκριμένα... Το SC με το pin 4 του motor shield και το SO με το pin 12 αντιστοίχως. Επίσης θα πρέπει να συνδέσετε το pin 1 (Q1) του "πάνω" 74HC595 (όπως φαινεται στο σχηματικό) με τα pin 3, 5, 6 και 11 του motor shield ταυτόχρονα. Πληροφοριακά, στην προηγούμενη εικόνα, φαίνεται αυτή η σύνδεση με το καλώδιο που είναι λιγο πιο κάτω από το Α7 και λίγο πιο πάνω από το D3 από τα αντίστοιχα ταμπελάκια. Ακόμη θα πρέπει να συνδέσετε το pin 7 του motor shield με το GND. Μπορείτε να χρησιμοποιήσετε μια από τις υποδοχές GND που έχει ήδη το motor shield Όλες οι προηγούμενες συνδέσεις φαίνονται στην επόμενη εικόνα Τέλος θα πρεπει να τροφοδοτήσετε και την πλακέτα με τα απαραίτητα 5V, όπως προκύπτουν από την έξοδο του σταθεροποιητή. Αν θυμάστε, στον κατάλογο υλικών είχαμε προσθέσει και έναν σταθεροποιητή τάσης (DC-DC Buck Step Down Converter ). Αυτός συνδέεται απ' ευθείας με τις μπαταρίες στην είσοδο (μέσω φυσικά του διακόπτη on-off) και στην έξοδο παράγει μια 5V σταθερή τάση. Βασικά με ενα μικρό κατσαβίδι εσείς θα ρυθμίσετε τον σταθεροποητή ώστε να βγάζει 5V στην έξοδο, αφού αυτός μπορεί να ρυθμίζεται και να βγάζει μια τάση από κοντά στο μηδέν μέχρι κοντά στην συνολική τάση των μπαταριών. Εμείς θέλουμε μια τάση των 5V, οπότε και θα πρέπει να τη ρυθμίσετε κατάλληλα (θα χρειαστείτε ένα πολύμετυρο για να μετράτε την τάση εξόδου). Στην επόμενη εικόνα φαίνεται η εν λόγω σύνδεση. Είναι τα καλώδια κόκκινο και μαύρο που πηγαίνουν στην κλέμα Επίσης, πολύ σημαντικό για την πλακέτα του motor shield (έτσι όπως την έχουμε διασυνδέσει)... Παρατηρήστε το καλώδιο με το κίτρινο θερμοσυστελλόμενο (που μετά στη μια άκρη είναι πραινο και στην άλλη μπλε Δεν είχα το ίδιο χρώμα ). Με ένα καλώδιο λοιπον, θα πρέπει να συνδέσετε το έναν ακροδέκτη (αυτόν που "κοιτάει" προς την κλέμα) του PWR jumper, με το 5V pin του motor shield (είναι το τρίτο κατα σειρά κοιτώντας από την πλευρά που βρίσκεται η κλέμα) Τέλος το μωβ καλώδιο που φαίνεται στην εικόνα συνδέεται στο GND της πλακέτας και θα πρέπει επίσης να συνδεθεί με το GND του καλωδίου του GameBoy ώστε να υπάρχει κοινή γείωση. Η πλακέτα εισόδων/εξόδων πρέπει να έχει και αυτή κοινή γείωση, αλλά δεν χρειάζεται έξτρα καλώδιο, αφού ούτως ή άλλως θα πρέπει και αυτήν να την τροφοδοτήσετε απ' ευθέιας με 5V από την έξοδο του σταθεροποιητή, όπως κάνατε και με το motor shield Και μια συνολική εικόνα των συνδέσεων
  9. arximidis

    The GameBoy Robot

    Βήμα 4ο Τροποποιώντας το καλώδιο διασύνδεσης δύο παικτών Ήρθε η ώρα να καταστρέψετε... εεε... να τροποποιήσετε ήθελα να πω, το καλώδιο διασύνδεσης δύο παικτών του GameBoy (GameBoy Link cable). Εδώ θέλει λίγη προσοχή ποιο καλώδιο να αγοράσετε. Θα πρέπει το βύσμα να έχει όλους τους διαθέσιμους εσωτερικούς ακροδέκτες, όπως φαίνεται στην επόμενη φωτογραφία: Ενώ, για παράδειγμα, στο επόμενο δεν υπάρχουν: Θα πρέπει, λοιπόν, να υπάρχουν και τα έξι εσωτερικά βυσματάκια που αντιστοιχούν στα 3V3, SI, SCK, SO, SD και GND. Προσοχή: Στο GameBoy Advance το 5V, που φαίνεται στην προηγούμενη φωτογραφία πάνω στο καλώδιο, είναι στην πραγματικότητα το 3V3 και αυτό γιατί το GameBoy Advance λειτουργεί με τάση 3,3 Volt και όχι με 5V. Οπότε μην το μπερδέψετε με το αντίστοιχο Vcc (=5V) που φαίνεται στο σχηματικό διάγραμμα του προηγούμενου μηνύματος. Εκείνο αφορά την τροφοδοσία της πλακέτας εισόδων/εξόδων (και όντως είναι Vcc = 5V) και δεν έχει καμία σχέση με το αντίστοιχο του GameBoy.Το κύκλωμα του ρομπότ δεν τροφοδοτεί το GameBoy. Το τελευταίο λειτουργεί με τη δική του εσωτερική επαναφορτιζόμενη μπαταρία. Οπότε λίγη προσοχή μην τα μπερδέψετε... Αφού λοιπόν αγοράσετε το καλώδιο, "κλάψτε" το, γιατί θα πρέπει να το διαλύσετε. Με ένα κοπίδι, με πολύ προσοχή, κόψτε το πλαστικό κάλυμμα του καλωδίου, ώστε να ελευθερωθεί το εσωτερικό πλαστικό βύσμα. Το σιδεράκι που το καλύπτει μπορείτε να το κρατήσετε, αν και δε θα κάθεται και θα βγαίνει. Βοηθάει ωστόσο να κουμπώνει καλύτερα το βύσμα πάνω στο GameBoy. Εγω, δεν το κράτησα αλλά και πάλι δεν είχα πρόβλημα, αφού το σημείο σύνδεσης δεν μετακινείται, οπότε και δεν βγαίνει από τη θέση του. Άρα δεν υπάρχει πρόβλημα είτε το κρατήσετε, είτε όχι. Παρατήρησα ότι η απόσταση των μεταλλικών εσωτερικών ακροδεκτών του βύσματος, από την πίσω μεριά, ταιριάζει περίπου με την απόσταση που έχουν οι 6 συνολικά ακροδέκτες σε μια συστοιχία δύο γραμμών. Οπότε μπορείτε να την κολλήσετε απ' ευθείας πάνω στο βύσμα. Το αποτέλεσμα θα είναι όπως στις επόμενες φωτογραφίες Προσοχή: Το ίδιο όπως και προηγουμένως. Το Vcc που βλέπετε πάνω στο βύσμα είναι στην πραγματικότητα το 3V3 και καμία σχέση δεν έχει με το αντίστοιχο Vcc στο σχηματικό διάγραμμα, παρά μόνο στο σημείο που λέει 3V3. Δηλαδή το Vcc που φαίνεται στο καρτελάκι πάνω στο βύσμα, πρέπει να συνδεθεί με το 3V3 που φαίνεται στο σχηματικό. Αν και, όπως είπα, το κύκλωμα δεν τροφοδοτεί το GameBoy, τα 3,3Volt χρειάζονται για την απαραίτητη μετατροπή του 5V σήματος της πλακέτας εισόδων/εξόδων, σε αντίστοιχο σήμα στάθμης 3,3Volt που δέχεται το GameBoy Με αυτόν τον τρόπο θα μπορείτε εύκολα και απλά να συνδέσετε τα καλώδια πάνω στο βύσμα, χωρίς να χρειάζεται κάθε φορά να τα κολλάτε πάνω στο βύσμα, με κίνδυνο την καταστροφή του Προσωπικά κόλλησα όλα τα απαραίτητα καλώδια σε μια αντίστοιχη αρσενική συστοιχία. Μετά απλά συνδέω την αρσενική με την θηλυκή. Έτσι αν για κάποιο λόγο χαλάσει η αρσενική συστοιχία (π.χ. από τις πιθανές αλλαγές στις κολλήσεις), δεν θα "κλάψω" του βύσμα του GameBoy που είναι ακριβότερο και δυσεύρετο
  10. arximidis

    The GameBoy Robot

    Βήμα 3ο Η πλακέτα Εισόδων/Εξόδων. Το σχηματικό διάγραμμα Όπως σας είπα η πλακέτα Εισόδων/Εξόδων δεν υπάρχει έτοιμη στο εμπόριο, οπότε θα αναγκαστείτε να τη φτιάξετε μόνοι σας. Εκτός βέβαια αν έχετε κάποιον γνωστό να σας βοηθήσει 😉 Παρακάτω σας στέλνω το σχηματικό διάγραμμα της κατασκευής. Το σχηματικό διάγραμμα περιλαμβάνει και το κύκλωμα οδήγησης των κινητήρων (υποδεικνύεται από την κόκκινη περιοχή). Ωστόσο αν αγοράσετε έτοιμο το shield που σας πρότεινα στον κατάλογο υλικών, δε χρειάζεται να φτιάξετε το εν λόγω τμήμα του σχηματικού. Τις ενώσεις, προφανώς, θα τις κάνετε με εξωτερικά καλώδια. Αυτή την λογική ακολούθησα και εγώ. Έφτιαξα μόνο το κομάτι που αφορά τις εισόδους/εξόδους και για την οδήγηση των κινητήρων χρησιμοποίησα το εμπορικό shield Η κατασκευή δεν είναι δύσκολη αν γνωρίζεις τι κάνεις. Η μόνη παρατήρηση που έχω, είναι να κολλήσετε τους πυκνωτές των 100nF, που φαίνονται σε κάθε τσιπάκι, όσο το δυνατόν πιο κοντά στους ακροδέκτες τροφοδοσίας του. Δηλαδή,για παράδειγμα, κολλήστε τον πυκνωτή 100nF του τσιπ 74HC595, όσο το δυνατόν πιο κοντά στους ακροδέκτες του 16 (Vcc) και 8 (GND) Σας στέλνω επίσης και φωτογραφίες από την δική μου κατασκευή, ώστε να δείτε πως περίπου πρέπει να μοιάζει η τελική πλακέτα. Προσέξτε ότι τη θηλυκή συστοιχία 6 ακροδεκτών, για τη σύνδεση με τη Link Port του GameBoy, την αντικατέστησα με μια 4-πλή θηλυκή και αρσενική με τη λογική που φαίνεται στο αυτοκόλλητο καρτελάκι. Αυτό με βόλεψε πάρα πολύ για την ταυτόχρονη διασύνδεση με το GameBoy και την εμπορική πλακέτα οδήγησης των κινητήρων (motor shield) edit: To QH που φαίνεται στο αυτοκόλληλο καρτελάκι στη φωτογραφία της πλακέτας είναι το Q7S (ακροδέκτης 9) του πρώτου 74ΗC595 στο σχηματικό διάγραμμα (το πάνω δηλαδή). Επίσης σας στέλνω και τα datasheet όλων των ολοκληρωμένων που χρησιμοποιούνται στο κύκλωμα, για να μπορείτε να δείτε τους ακροδέκτες τους 74HC595 MCP3008 L293D Υπενθυμίζω ότι στην περίπτωση που αγοράσετε την εμπορική πλακέτα οδήγησης των κινητήρων (motor shield), δε χρειάζεται να αγοράσετε τα δύο L293D και από το 74HC595 χρειάζεται να αγοράσετε μόνο ένα
  11. arximidis

    The GameBoy Robot

    Βήμα 2ο Η πλακέτα Εισόδων/Εξόδων. Τα υλικά για την κατασκευή Ένα ρομπότ πρέπει να είναι σε θέση να αλληλεπιδρά με το περιβάλλον του. Αυτό σημαίνει ότι χρειάζεται μια βασική μονάδα εισόδων/εξόδων, πάνω στην οποία θα μπορείτε να συνδέετε διάφορους αισθητήρες. Δυστυχώς δεν υπάρχει έτοιμη στο εμπόριο, οπότε αναγκαστικά θα χρειαστεί να τη φτιάξετε μόνοι σας. 😐 Δεν είναι και πάρα πολύ δύσκολο να φτιαχτεί, αλλά φυσικά χρειάζεται την απαραίτητη εξοικείωση με τα ηλετρονικά και κυρίως τις ηλεκτρικές κολλήσεις με κολλητήρι και καλάι Η πλακέτα εκμεταλλέυεται την game link port του GameBoy προκειμένου να του δώσει τη δυνατότητα να επικοινωνεί με τον έξω κόσμο, αφού εξ' ορισμού δεν είναι φτιαγμένο για κάτι τέτοιο. Στην επόμενη λίστα φαίνονται όλα τα υλικά που θα χρειαστούν για την κατασκευή της: 1 x 74HC595 8bit shift register TTL chip --- Καταχωρητής ολίσθησης 8bit 1 x MCP3008 8 channel analog to digital converter chip (ADC) --- Μετατροπέας από αναλογικό σε ψηφιακό 8 καναλιών 2 x Βάσεις DIP 16 ακροδεκτών για τα ολοκληρωμένα MCP3008 και 74HC595 1 x BAT45 or BAT85 Schottky diode --- Δίοδος Schottky 1 x 4K7 (4.7KΩ) Αντίσταση (1/4 Watt) 2 x 100nF Πυκνωτές 2 x θηλυκές συστοιχίες μιας γραμμής 6 ακροδεκτών (6 pin single row female pin headers). Μπορείτε να αγοράσετε μια μεγαλύτερη και να την κόψετε κατάλληλα 1 x θηλυκή συστοιχία μιας γραμμής 8 ακροδεκτών (8 pin single row female pin header). Και πάλι μπορείτε να αγοράσετε μια μεγαλύτερη και να την κόψετε κατάλληλα 1 x κλέμα για πλακέτα 20 x καλώδια συνδέσεων από αρσενικό σε θυληκό (male to female jumper Breadboard wires) 1 μικρό κομμάτι διάτρητης πλακέτας για κολλήσεις. Αν δεν βρειτε ένα που να κάνει, μπορείτε να πάρετε ένα μεγαλύτερο και να το κόψετε στις επιθυμητές διαστάσεις Μονόκλωνο καλώδιο για τις ηλεκτρικές κολλήσεις, κολλητήρι και καλάι Επίσης θα χρειαστεί λίγη αφρώδης κολλητική ταινία δύο όψεων για την τοποθέτηση των αισθητήρων απόστασης και του σταθεροποιητή πάνω στο σασί του ρομπότ Στην περίπτωση που επιθυμείτε να φτιάξετε μόνοι σας το κύκλωμα οδήγησης των κινητήρων και δεν θέλετε να αγοράσετε το shield της Adafruit (ή για την ακρίβεια τον αντίστοιχο κλώνο), στην παρακάτω λίστα φαίνονται τα επιπλέον εξαρτήματα που απαιτούνται για την κατασκευή: 1 x 74HC595 8bit shift register TTL chip --- Καταχωρητής ολίσθησης 8bit 2 x ολοκληρωμένα L293D. Προτιμήστε την έκδοση L293D (με το γραμμα D στο τέλος) διότι περιλαμβάνει εσωτερικά τις απαραίτητες διόδους προστασίας. Αν όχι θα χρειαστεί να τις τοποθετήσετε εξωτερικά στο κύκλωμα 3 x Βάσεις DIP 16 ακροδεκτών για τα ολοκληρωμένο 74HC595 και L293D 3 x100nF Πυκνωτές 4 x κλέμες για πλακέτα
  12. arximidis

    The GameBoy Robot

    Βήμα 1ο Υλικά για την κατασκευή 1 x GameBoy Advance φυσικά (Η έκδοση GBA SP πιστεύω είναι η πιο κατάλληλη) 1 x Supercard Mini SD Adapter για το GBA. Με αυτήν θα μπορείτε να γράφετε και να εκτελείτε τα δικά σας προγράμματα στο GBA. Θα χρειαστείτε επίσης μια κάρτα microSD 1 x GameBoy Advance Link cable το οποίο θα χρειαστεί να καταστρέψε...εεε... να μετατρέψετε εννοούσα 1 x σασί για ρομπότ με δύο ή τέσσερις τροχούς (π.χ. από eBay 2WD smart car robot chassis ή 4WD smart car robot chassis ). Υπάρχουν και στην Ελληνική αγορά (4WD smart robot car chassis) 1 x Adafruit motor shield. Θα χρειαστείτε την παλιότερη έκδοση 1.2, που βέβαια έχει καταργηθεί. Ωστοσο μπορείτε να βρείτε εύκολα έναν κλώνο από το eBay και μαλιστα πολύ φθηνότερο (π.χ. L293D motor drive shield). Φυσικά το ίδιο ακριβώς μπορείτε να το βρείτε και στην Ελληνική αγορά (L293D motor shield ή L293D motor shield ). Αν δε θέλετε να το αγοράσετε, σε επόμενο μήνυμα θα σας δείξω τί πρέπει να αγοράσετε επιπλέον για να το φτιάξετε μόνοι σας 2 x Sharp GP2Y0A21YK0F IR αναλογικούς αισθητήρες απόστασης (10 - 80cm). Υπάρχουν τόσο στο eBay όσο και στην Ελληνική αγορά (π.χ. GP2Y0A21YK ή GP2Y0A21YK ή GP2Y0A21YK ) 1 x 5V σταθεροποιητή τάσης. Υπάρχουν πολλές επιλογές για αυτό. Μερικοί από αυτούς είναι ρυθμιζόμενοι ώστε να αλλάζετε την τάση στην επιθυμητή με ένα κατσαβίδι. Μια από τις καλύτερες είναι να αγοράσετε αυτόν DC-DC Buck Step Down Converter από το eBay. Φυσικά θα τον βρείτε και στην Ελληνική αγορά (π.χ. Mini DC-DC Buck Converter Step Down Module ή Mini-360 DC-DC 4.75V-23V to 1V-17V ). 1 x 18650 2x Battery holder (δηλαδή για δύο μπαταρίες Li-ion τύπου 18650). Στην Ελληνική αγορά π.χ. μπαταριοθήκη ή μπαταριοθήκη 2 x 18650 Li-ion επαναφορτιζόμενες μπαταρίες. Αν θέλατε μπορείτε να χρησιμοποιήσετε επαναφορτιζόμενες μπαταρίες παλαιότερου τύπου (π.χ. Ni-MH). Θεωρώ όμως καλύτερη επιλογή τις λιθίου γιατί θα χρειαστούν μόνο δύο και όχι έξι. Συμβουλή: Αποφύγετε να αγοράσετε μπαταρίες από το eBay, ιδιαίτερα αν βρείτε μπαταρίες με χωρητικότητα μεγαλύτερη από 2500mAh Στρογγυλά velcro για να τοποπθετήσετε το GameBoy στο σασί του ρομπότ. προσωπικά χρησιμοποίησα συνολικά 3. Με αυτήν την μέθοδο δε θα καταστρέψετε το GameBoy και θα είστε σε θέση να το αποσυνδέετε και να το συνδέετε πάνω στο σασί όποτε θέλετε. Σημαντικό: Τα link που έχω βάλει είναι ενδεικτικά. Ουδεμία σχέση έχω με τα συγκεκριμένα καταστήματα και για αυτό τον λόγο έχω βάλει διαφορετικά. Ωστόσο αν η εισαγωγή των link δημιουργεί πρόβλημα, μπορείτε να τα διαγράψετε.
  13. arximidis

    The GameBoy Robot

    Καλημέρα και καλό μήνα σε όλους. Έρχεται ή μάλλον ήρθε το καλοκαιράκι Λοιπόν, είχα ξεκινήσει ένα instructable αλλά ακόμη το έχω στα draft ανολοκλήρωτο. Δυστυχώς ο χρόνος μου δεν είναι αρκετός (η αλήθεια είναι ότι είναι λίγο βαρετό να γράφω 😊 ) Οπότε σκέφτηκα να γράψω τις λεπτομέρειες και εδώ (σιγά σιγά) και βήμα βήμα. Αν γίνει και πιο χαλαρή κουβέντα θα είναι ευκολότερο να γράφω ή να απαντάω Ξεκινάω αυτό το μήνυμα με βασικά υλικά που θα χρειαστούν για την κατασκευή. Στόχος μου είναι να μπορεί να το φτιάξει ο οποιοσδήποτε, ακόμη και αυτός που δεν γνωρίζει προγραμματισμό. Βέβαια υπάρχει ένα σημείο που θα χρειαστούν ηλεκτρικές κολλήσεις για την κατασκευή της πλακέτας εισόδου/εξόδου, αφού δεν υπάρχει έτοιμη στο εμπόριο. Ωστόσο, αν κάποιος δεν μπορεί να την φτιάξει και ενδιαφέρετε, πιθανόν να δείξω πως μπορεί να τη συναρμολογήσει σε μια διάτρητη πλακέτα breadboard, όπου δε χρειάζονται κολλήσεις Επίσης.... Σημαντικό... Η κατασκευή του αυτού του ρομπότ ΔΕΝ καταστρέφει και γενικότερα δεν επεμβαίνει στο GameBoy οπότε δεν υπάρχει λόγος ανησυχίας. Όπως είπα όμως θα χρειαστούν κάποια υλικά για την κατασκευή, τα περισσότερα εκ των οποίων θα τα βρείτε στην Ελληνική αγορά. Δυστυχώς όμως μερικά θα πρέπει να τα προμηθευτείτε από το εξωτερικό (δηλαδή από το eBay)
  14. arximidis

    The GameBoy Robot

    :D:D Για την ώρα δε σκέφτομαι τίποτα περισσότερο.... Ετοιμάζω ένα Instructable. Επιπλέοιν έχω γράψει μια βιλιοθήκη ώστε να είναι εύκολος ο προγραμματισμός και μην ασχολείσαι με το πως πρέπι να κάνεις μια πόρτα high ή πώς να διαβάσεις μια είσοδο, αλλά και το πως να κινηθείς μπροστά κτλ Απλα δηλαδή γράφεις analogRead για να διαβάσεις μια πόρτα κτλ , όπως κάνεις και με το arduino
  15. arximidis

    The GameBoy Robot

    Πλοήγηση με αισθητήρες απόστασης υπερύθρων.
×