Sisukord:
- Samm: Vaarika PI ja Xbee RC saatja
- Samm: seadistage Raspberry Pi UART
- Samm: kirjutage mängukontrolleri väärtuste lugemiseks Pythoni skript
- 4. samm: järeldus
- Samm: ühendage Raspberry Pi Zero XBee raadioga
Video: Raspberry Pi + Xbee RC saatja: 5 sammu
2024 Autor: John Day | [email protected]. Viimati modifitseeritud: 2024-01-30 08:49
See juhend annab teile teada, mida ma tegin oma Raspberry Pi Zero + Xbee RC saatja loomiseks
Samm: Vaarika PI ja Xbee RC saatja
Samm: seadistage Raspberry Pi UART
Tere!
Raspberry Pi (kõik variatsioonid) on äärmiselt mitmekülgsed ja on nüüd paljude kergesti joodetavate lisandmoodulite ökosüsteemi nurgakiviks, mis muudavad need seadmed PÄRIS käepäraseks. Kahjuks on üks asi, millest Raspberry Pi (praegu) puudu on, XBee (ZigBee) raadiosaatjate lauaplaat või võtmed kätte GPIO -liides. XBee -seadmed on suurepärane viis igasuguste seadmete vaheliseks suhtlemiseks ilma palju tükeldamis- ja viilutusprotokolle või andmevorminguid kasutamata ning lihtsustavad USB -seadmete integreerimist ja nende andmete saatmist teistesse kaugseadmetesse. Alustuseks alustage mis tahes Raspberry Pi versiooniga. Selles juhendis kasutasin ma Raspberry Pi nulli ja seadistasin jadakonsooli UART vabastamiseks selle juhendi abil.
Samm: kirjutage mängukontrolleri väärtuste lugemiseks Pythoni skript
See bitti Pythoni kood reageerib mängukontrolleri poolt tõstatatud sündmustele ja edastab sündmuse tekitanud juhtelemendi sisendi väärtuse. See kood saadab andmeid sama kiiresti kui XBee raadiod. Selles näites on raadiod seadistatud 57600 -le, kuid neid saab seada kõrgeimale edastuskiirusele. Mängukontroller on Logitechi USB -mängukontroller. Kasutatav kood on allpool:
impordi pügame
impordi seeria
sOut = ""
ser = jada. Sarja {
port = '/dev/ttyAMA0', baudrate = 57600, pariteet = seeria. PARITY_NONE, stopbitid = seeria. STOPBITS_ONE, baitide suurus = seeria. EIGHTBITS, ajalõpp = 1
}
pygame.init ()
tehtud = vale
tegemise ajal == vale:
juhtnupp = pygame.joystick.joystick (0)
joystick.init ()
#ÜRITUSTE TÖÖTLEMINE
sündmuse jaoks pygame.event.get ():
if event.type == pygame. JOYAXISMOTION:
sOut = "Telg:" + str (event.axis) + "; Väärtus:" + str (event.value)
print (välja)
ser.write (sOut)
ser.flush ()
sOut = ""
if event.type == pygame. JOYHATMOTION:
sOut = "Müts: + str (event.hat) +"; Väärtus: " + str (event.value)
print (välja)
ser.write (sOut)
ser.flush ()
sOut = ""
if event.type == pygame. JOYBUTTONDOWN:
sOut = "Nupp alla:" + str (event.button)
print (välja)
ser.write (sOut)
ser.flush ()
sOut = ""
if event.button == 8:
print ("Lõpetamine")
tehtud = tõsi
if event.type == pygame. JOYBUTTONUP:
sOut = "Nupp üles:" + str (event.button)
print (välja)
ser.write (sOut)
ser.flush ()
sOut = ""
ser.close ()
pygame.quit ()
4. samm: järeldus
Selle lõplik ehitis kasutab lisatelefoni aku, et toita Raspberry Pi, mis toidab XBee ja Logitechi mängukontrollerit. Tulevases projektis lisan vaakumvormitud plastkatte, mis sisaldab Raspberry PI Zero, XBee raadio ja toiteplokki, mis kõik on ühendatud mängukontrolleriga ühes kena ja korralikus kimbus. Selle RC -saatja konstruktsiooni abil on juhtimisandmete saatmine peaaegu kõigele väga lihtne. Järgmisel ehitamisel saadan andmed heasüdamlikule robotile, mille päästsin firmaväärtusest. Loodetavasti leiate sellest juhendist abi. Head ehitust!
Samm: ühendage Raspberry Pi Zero XBee raadioga
Nagu joonisel näidatud, ühendage Pi GPIO pin 1 (3.3v) XBee tihvtiga 1. Ühendage Pi GPIO pin 6 (Gnd) XBee pin 10 ja Pi GPIO Pin 8 (TX) XBee pin 3 (Din) külge. Võite kasutada ka XBee katkestusplaati, mis nõuab Pi GPIO tihvti 2 (5v) ühendamist katkestusplaadi 5v kontaktiga
Soovitan:
MicroPythoni koodi allalaadimine XBee -sse 3: 18 sammu (piltidega)
MicroPythoni koodi allalaadimine XBee 3 -le: MicroPython on programmeerimiskeel, mis on inspireeritud Python 3.0 -st ja töötab mikrokontrolleritel, näiteks XBee 3. MicroPython võib aidata vähendada teie projekti tarnete hulka ja üldist mahukust ning muuta asjad palju lihtsamaks . Siiski, ma fou