Πίνακας περιεχομένων:
- Βήμα 1: Raspberry PI και Xbee RC Transmitter
- Βήμα 2: Διαμορφώστε το Raspberry Pi UART
- Βήμα 3: Γράψτε ένα σενάριο Python για ανάγνωση τιμών ελεγκτή παιχνιδιών
- Βήμα 4: Συμπέρασμα
- Βήμα 5: Συνδέστε το Raspberry Pi Zero στο XBee Radio
Βίντεο: Raspberry Pi + Xbee RC Transmitter: 5 Βήματα
2024 Συγγραφέας: John Day | [email protected]. Τελευταία τροποποίηση: 2024-01-30 08:37
Αυτό το διδακτικό θα σας δείξει τι έκανα για να δημιουργήσω τον δικό μου πομπό Raspberry Pi Zero + Xbee RC
Βήμα 1: Raspberry PI και Xbee RC Transmitter
Βήμα 2: Διαμορφώστε το Raspberry Pi UART
Γεια σου!
Το Raspberry Pi (όλες οι παραλλαγές) είναι εξαιρετικά ευπροσάρμοστο και αποτελούν πλέον τον ακρογωνιαίο λίθο ενός οικοσυστήματος πολλών εύκολων για συγκόλληση πρόσθετων που κάνουν αυτές τις συσκευές ΠΡΑΓΜΑΤΙΚΑ εύχρηστες. Δυστυχώς, το μόνο πράγμα που λείπει από το Raspberry Pi (επί του παρόντος) είναι ένας πίνακας διακοπών ή το κλειδί στο χέρι GPIO για ραδιόφωνα XBee (ZigBee). Οι συσκευές XBee είναι ένας πολύ καλός τρόπος επικοινωνίας μεταξύ όλων των ειδών συσκευών χωρίς πολλά πρωτόκολλα ή μορφές δεδομένων και καθιστούν πολύ εύκολη την ενσωμάτωση συσκευών USB και την αποστολή των δεδομένων τους σε άλλες απομακρυσμένες συσκευές. Για να ξεκινήσετε, ξεκινήστε με οποιαδήποτε έκδοση του Raspberry Pi. Σε αυτό το Instructable χρησιμοποίησα ένα Raspberry Pi zero και διαμόρφωσα τη σειριακή κονσόλα για να ελευθερώσω το UART χρησιμοποιώντας αυτό το Instructable.
Βήμα 3: Γράψτε ένα σενάριο Python για ανάγνωση τιμών ελεγκτή παιχνιδιών
Αυτό το κομμάτι κώδικα Python αντιδρά στα γεγονότα που ανέκυψαν από τον ελεγκτή παιχνιδιού και μεταδίδει την τιμή της εισόδου στο στοιχείο ελέγχου που ανέβασε το συμβάν. Αυτός ο κωδικός θα στείλει δεδομένα τόσο γρήγορα όσο ο ρυθμός baud που έχει οριστεί στα ραδιόφωνα XBee. Σε αυτό το παράδειγμα τα ραδιόφωνα έχουν οριστεί σε 57600 αλλά θα μπορούσαν να ρυθμιστούν στο υψηλότερο ρυθμό baud. Ο ελεγκτής παιχνιδιών είναι ένας ελεγκτής παιχνιδιών USB της Logitech. Ο κωδικός που χρησιμοποιείται είναι ο παρακάτω:
εισαγωγή pygame
σειρά εισαγωγής
sOut = ""
ser = serial. Serial {
θύρα = '/dev/ttyAMA0', baudrate = 57600, ισοτιμία = σειριακή. PARITY_NONE, stopbits = serial. STOPBITS_ONE, bytesize = σειριακό. EIGHTBITS, χρονικό όριο = 1
}
pygame.init ()
έγινε = Λάθος
ενώ τελείωσε == false:
joystick = pygame.joystick.joystick (0)
joystick.init ()
#ΕΚΤΕΛΕΣΤΙΚΗ ΕΠΕΞΕΡΓΑΣΙΑ
για εκδήλωση στο pygame.event.get ():
εάν event.type == pygame. JOYAXISMOTION:
sOut = "Άξονας:" + str (event.axis) + "; Τιμή:" + str (event.value)
εκτύπωση (sOut)
ser.write (sOut)
ser.flush ()
sOut = ""
if event.type == pygame. JOYHATMOTION:
sOut = "Καπέλο: + str (event.hat) +"; Τιμή: " + str (event.value)
εκτύπωση (sOut)
ser.write (sOut)
ser.flush ()
sOut = ""
if event.type == pygame. JOYBUTTONDOWN:
sOut = "Πλήκτρο προς τα κάτω:" + str (event.button)
εκτύπωση (sOut)
ser.write (sOut)
ser.flush ()
sOut = ""
if event.button == 8:
εκτύπωση ("Διακοπή")
έγινε = Αλήθεια
if event.type == pygame. JOYBUTTONUP:
sOut = "Πλήκτρο επάνω:" + str (event.button)
εκτύπωση (sOut)
ser.write (sOut)
ser.flush ()
sOut = ""
ser.close ()
pygame.quit ()
Βήμα 4: Συμπέρασμα
Η τελική έκδοση αυτού χρησιμοποιεί μια βοηθητική μπαταρία τηλεφώνου για να τροφοδοτήσει το Raspberry Pi, το οποίο τροφοδοτεί το χειριστήριο παιχνιδιών XBee και Logitech. Σε ένα μελλοντικό έργο θα προσθέσω ένα πλαστικό κάλυμμα με κενό που θα περικλείει τα Raspberry PI Zero, XBee Radio και τροφοδοτικό, όλα προσαρτημένα στο χειριστήριο του παιχνιδιού σε ένα ωραίο, προσεγμένο πακέτο. Αυτή η κατασκευή πομπού RC καθιστά πολύ εύκολη την αποστολή δεδομένων ελέγχου σε σχεδόν οτιδήποτε. Στην επόμενη κατασκευή μου θα στείλω τα δεδομένα σε ένα εξάποδο ρομπότ που διέσωσα από την καλή θέληση. Ελπίζω να βρείτε αυτό το διδακτικό χρήσιμο. Καλό κτίριο!
Βήμα 5: Συνδέστε το Raspberry Pi Zero στο XBee Radio
Όπως φαίνεται στο διάγραμμα, συνδέστε τον ακροδέκτη Pi GPIO 1 (3.3v) στον ακροδέκτη XBee 1. Συνδέστε τον ακροδέκτη Pi GPIO 6 (Gnd) στον ακροδέκτη XBee 10 και τον Pi GPIO Pin 8 (TX) στον ακροδέκτη XBee 3 (Din) Το Μπορείτε επίσης να χρησιμοποιήσετε έναν πίνακα διαρροής XBee ο οποίος θα απαιτήσει από εσάς να συνδέσετε τον ακροδέκτη Pi GPIO 2 (5v) με τον πείρο 5v στον πίνακα διαρροής
Συνιστάται:
Πώς να κατεβάσετε τον κωδικό MicroPython Onto XBee 3: 18 βήματα (με εικόνες)
Πώς να κατεβάσετε τον κωδικό MicroPython Onto XBee 3: Το MicroPython είναι μια γλώσσα προγραμματισμού εμπνευσμένη από το Python 3.0 που λειτουργεί σε μικροελεγκτές, όπως το XBee 3. Το MicroPython μπορεί να βοηθήσει στη μείωση του όγκου των προμηθειών και της συνολικής ογκώδους του έργου σας και να κάνει τα πράγματα πολύ πιο εύκολα Το Ωστόσο, κάνω τέσσερις