Taula de continguts:
- Pas 1: Raspberry PI i transmissor RC Xbee
- Pas 2: configureu el Raspberry Pi UART
- Pas 3: escriviu un script Python per llegir els valors del controlador de jocs
- Pas 4: Conclusió
- Pas 5: connecteu el Raspberry Pi Zero a la XBee Radio
Vídeo: Transmissor RC Raspberry Pi + Xbee: 5 passos
2024 Autora: John Day | [email protected]. Última modificació: 2024-01-30 08:15
Aquest instructiu us mostrarà què he fet per crear el meu propi transmissor RC Raspberry Pi Zero + Xbee
Pas 1: Raspberry PI i transmissor RC Xbee
Pas 2: configureu el Raspberry Pi UART
Hola!
Els Raspberry Pi (totes les variants) són extremadament versàtils i ara són la pedra angular d’un ecosistema de molts complements fàcils de soldar que fan que aquests dispositius siguin molt útils. Malauradament, l’únic que falta a Raspberry Pi (actualment) és una placa GPO o una interfície GPIO clau en mà per a ràdios XBee (ZigBee). Els dispositius XBee són una manera excel·lent de comunicar-se entre tot tipus de dispositius sense necessitat de protoques ni formats de dades, i faciliten la integració de dispositius USB i l’enviament de dades a altres dispositius remots. Per començar, comenceu amb qualsevol versió del Raspberry Pi. En aquest Instructable he utilitzat un Raspberry Pi zero i he configurat la consola sèrie per alliberar la UART mitjançant aquest Instructable.
Pas 3: escriviu un script Python per llegir els valors del controlador de jocs
Aquest bit de codi Python reacciona als esdeveniments generats pel controlador del joc i transmet el valor de l'entrada al control que ha generat l'esdeveniment. Aquest codi enviarà dades tan ràpid com la velocitat en bauds establerta a les ràdios XBee. En aquest exemple, les ràdios es defineixen a 57600, però es poden establir a la seva velocitat de transmissió més alta. El controlador del joc és un controlador de jocs Logitech USB. El codi utilitzat es mostra a continuació:
importa Pygame
importació de sèries
sOut = ""
ser = serial. Serial {
port = '/ dev / ttyAMA0', velocitat de transmissió = 57600, paritat = serial. PARITY_NONE, stopbits = serial. STOPBITS_ONE, bytesize = serial. EIGHTBITS, temps d'espera = 1
}
pygame.init ()
fet = Fals
mentre està fet == fals:
joystick = pygame.joystick.joystick (0)
joystick.init ()
PROCESSAMENT DE # EVENTS
per a un esdeveniment a pygame.event.get ():
si event.type == pygame. JOYAXISMOTION:
sOut = "Eix:" + str (event.axis) + "; Valor:" + str (event.value)
imprimir (sOut)
ser.write (sOut)
ser.flush ()
sOut = ""
si event.type == pygame. JOYHATMOTION:
sOut = "Barret: + str (event.hat) +"; Valor: "+ str (event.value)
imprimir (sOut)
ser.write (sOut)
ser.flush ()
sOut = ""
si event.type == pygame. JOYBUTTONDOWN:
sOut = "Botó avall": + str (event.button)
imprimir (sOut)
ser.write (sOut)
ser.flush ()
sOut = ""
si event.button == 8:
imprimir ("Surt")
fet = cert
si event.type == pygame. JOYBUTTONUP:
sOut = "Button Up": + str (event.button)
imprimir (sOut)
ser.write (sOut)
ser.flush ()
sOut = ""
ser.close ()
pygame.quit ()
Pas 4: Conclusió
La versió final d’aquest model utilitza una bateria de telèfon auxiliar per alimentar el Raspberry Pi, que alimenta el controlador de jocs XBee i Logitech. En un futur projecte afegiré una tapa de plàstic formada al buit que inclourà el Raspberry PI Zero, la XBee Radio i la font d'alimentació, tot connectat al controlador del joc en un bonic paquet. Aquesta construcció de transmissor RC fa que sigui molt fàcil enviar dades de control a gairebé qualsevol cosa. En la meva propera versió enviaré les dades a un robot hexàpode que vaig rescatar de Goodwill. Espero que us sigui útil. Feliç edifici!
Pas 5: connecteu el Raspberry Pi Zero a la XBee Radio
Com es mostra al diagrama, connecteu el pin Pi GPIO 1 (3.3v) al pin XBee 1. Connecteu el pin Pi GPIO 6 (Gnd) al pin XBee 10 i el pin GPIO Pi 8 (TX) al pin XBee 3 (Din). També podeu utilitzar un tauler de ruptura XBee que us obligarà a connectar el pin 2 GPIO Pi (5v) al pin de 5v del tauler de ruptura.
Recomanat:
Com descarregar el codi MicroPython a XBee 3: 18 Passos (amb imatges)
Com descarregar el codi MicroPython a XBee 3: MicroPython és un llenguatge de programació inspirat en Python 3.0 que funciona amb microcontroladors, com ara el XBee 3. MicroPython pot ajudar a disminuir la quantitat de subministraments i la volumetria general del vostre projecte i facilitar les coses. . Tanmateix, he de