Indholdsfortegnelse:

Raspberry Pi + Xbee RC -sender: 5 trin
Raspberry Pi + Xbee RC -sender: 5 trin

Video: Raspberry Pi + Xbee RC -sender: 5 trin

Video: Raspberry Pi + Xbee RC -sender: 5 trin
Video: Lilypad XBee with Processing 2024, November
Anonim
Raspberry Pi + Xbee RC -sender
Raspberry Pi + Xbee RC -sender

Denne instruktive viser dig, hvad jeg gjorde for at lave min egen Raspberry Pi Zero + Xbee RC -sender

Trin 1: Hindbær PI og Xbee RC -sender

Trin 2: Konfigurer Raspberry Pi UART

Hej med dig!

Raspberry Pi (alle variationer) er ekstremt alsidige og er nu hjørnestenen i et økosystem med mange let at lodde tilføjelser, der gør disse enheder VIRKELIG handy. Desværre er den eneste ting, Raspberry Pi mangler (i øjeblikket) et breakout board eller nøglefærdig GPIO -interface til XBee (ZigBee) radioer. XBee -enheder er en fantastisk måde at kommunikere mellem alle slags enheder uden mange protokolprøver eller dataformater på, og gør det meget let at integrere USB -enheder og sende deres data til andre eksterne enheder. Start med en hvilken som helst version af Raspberry Pi. I denne Instructable brugte jeg en Raspberry Pi zero og konfigurerede den serielle konsol til at frigøre UART ved hjælp af denne Instructable.

Trin 3: Skriv et Python -script for at læse værdier for spilcontroller

Denne bit af Python -kode reagerer på de begivenheder, der er rejst af spilcontrolleren og transmitterer værdien af input på den kontrol, der rejste begivenheden. Denne kode sender data lige så hurtigt som den baudhastighed, der er indstillet på XBee -radioerne. I dette eksempel er radioerne indstillet til 57600, men kan indstilles til deres højeste baudhastighed. Spilcontrolleren er en Logitech USB -spilcontroller. Den anvendte kode er herunder:

importer pygame

import seriel

sOut = ""

ser = serial. Serial {

port = '/dev/ttyAMA0', baudrate = 57600, paritet = serie. PARITY_NONE, stopbits = seriel. STOPBITS_ONE, bytesize = serial. EIGHTBITS, timeout = 1

}

pygame.init ()

udført = Falskt

mens det er gjort == false:

joystick = pygame.joystick.joystick (0)

joystick.init ()

#EVENT BEHANDLING

for begivenhed i pygame.event.get ():

hvis event.type == pygame. JOYAXISMOTION:

sOut = "Axis:" + str (event.axis) + "; Value:" + str (event.value)

print (sOut)

ser.write (sOut)

ser.flush ()

sOut = ""

hvis event.type == pygame. JOYHATMOTION:

sOut = "Hat: + str (event.hat) +"; Værdi: " + str (event.value)

print (sOut)

ser.write (sOut)

ser.flush ()

sOut = ""

hvis event.type == pygame. JOYBUTTONDOWN:

sOut = "Button Down:" + str (event.button)

print (sOut)

ser.write (sOut)

ser.flush ()

sOut = ""

hvis event.button == 8:

print ("Afslutter")

udført = Sandt

hvis event.type == pygame. JOYBUTTONUP:

sOut = "Button Up:" + str (event.button)

print (sOut)

ser.write (sOut)

ser.flush ()

sOut = ""

ser.close ()

pygame.quit ()

Trin 4: Konklusion

Den sidste opbygning af dette bruger et ekstra telefonbatteri til at drive Raspberry Pi, som driver XBee og Logitech -spilcontrolleren. I et fremtidigt projekt vil jeg tilføje et vakuumformet plastdæksel, der vil omslutte Raspberry PI Zero, XBee Radio og strømforsyning, der alle er knyttet til gamecontrolleren i et flot, pænt bundt. Denne RC -senderbygning gør det meget let at sende kontroldata til næsten alt. I min næste build vil jeg sende dataene til en hexapod -robot, som jeg reddede fra Goodwill. Håber du finder dette instruerbart nyttigt. Glad bygning!

Trin 5: Tilslut Raspberry Pi Zero til XBee Radio

Kør Raspberry Pi Zero til XBee -radioen
Kør Raspberry Pi Zero til XBee -radioen

Som vist i diagrammet skal du slutte Pi GPIO -pin 1 (3.3v) til XBee -pin 1. Tilslut Pi GPIO -pin 6 (Gnd) til XBee -pin 10 og Pi GPIO Pin 8 (TX) til XBee -pin 3 (Din). Du kan også bruge et XBee breakout board, som kræver, at du forbinder Pi GPIO pin 2 (5v) til 5v pin på breakout board

Anbefalede: