Sadržaj:

Raspberry Pi + Xbee RC odašiljač: 5 koraka
Raspberry Pi + Xbee RC odašiljač: 5 koraka

Video: Raspberry Pi + Xbee RC odašiljač: 5 koraka

Video: Raspberry Pi + Xbee RC odašiljač: 5 koraka
Video: 433MHz 500mW High Power Transceiver Module w RS232TTL Interface - Orange 2024, Srpanj
Anonim
Raspberry Pi + Xbee RC odašiljač
Raspberry Pi + Xbee RC odašiljač

Ova instrukcija će vam pokazati što sam učinio za stvaranje vlastitog Raspberry Pi Zero + Xbee RC odašiljača

Korak 1: Raspberry PI i Xbee RC odašiljač

Korak 2: Konfigurirajte Raspberry Pi UART

Hej tamo!

Raspberry Pi (sve varijacije) iznimno je svestran i sada je kamen temeljac ekosustava mnogih dodataka za jednostavno lemljenje koji ove uređaje čine ZDRAVO zgodnima. Nažalost, jedna stvar koja nedostaje Raspberry Pi -u (trenutno) je ploča za razbijanje ili GPIO sučelje po principu ključ u ruke za XBee (ZigBee) radije. XBee uređaji izvrstan su način za komunikaciju između svih vrsta uređaja bez puno protokola ili kockanja protokola ili formata podataka te olakšavaju integraciju USB uređaja i slanje njihovih podataka na druge udaljene uređaje. Za početak počnite s bilo kojom verzijom Raspberry Pi. U ovom Instructable koristio sam Raspberry Pi nulu i konfigurirao serijsku konzolu da oslobodi UART pomoću ovog Instructable.

Korak 3: Napišite Python skriptu za čitanje vrijednosti kontrolera igre

Ovaj dio Python koda reagira na događaje koje je pokrenuo kontroler igre i prenosi vrijednost unosa na kontroli koja je pokrenula događaj. Ovaj kôd šalje podatke onoliko brzo koliko je brzina prijenosa postavljena na radijima XBee. U ovom primjeru radiji su postavljeni na 57600, ali se mogu postaviti na najveću brzinu prijenosa. Kontroler za igre je Logitech USB kontroler za igre. Kôd koji se koristi je dolje:

uvoziti pygame

serijski uvoz

sOut = ""

ser = serial. Serial {

port = '/dev/ttyAMA0', baudrate = 57600, paritet = serijski. PARITY_NONE, stopbits = serijski. STOPBITS_ONE, bytesize = serial. EIGHTBITS, istek = 1

}

pygame.init ()

učinjeno = Netačno

dok je gotovo == false:

joystick = pygame.joystick.joystick (0)

joystick.init ()

#RECENTNA OBRADA

za događaj u pygame.event.get ():

if event.type == pygame. JOYAXISMOTION:

sOut = "Os:" + str (event.axis) + "; Vrijednost:" + str (event.value)

ispis (sOut)

ser.write (sOut)

ser.flush ()

sOut = ""

if event.type == pygame. JOYHATMOTION:

sOut = "Hat: + str (event.hat) +"; Vrijednost: " + str (event.value)

ispis (sOut)

ser.write (sOut)

ser.flush ()

sOut = ""

if event.type == pygame. JOYBUTTONDOWN:

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

ispis (sOut)

ser.write (sOut)

ser.flush ()

sOut = ""

if event.button == 8:

print ("Odustajanje")

učinjeno = Istina

if event.type == pygame. JOYBUTTONUP:

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

ispis (sOut)

ser.write (sOut)

ser.flush ()

sOut = ""

ser.close ()

pygame.quit ()

Korak 4: Zaključak

Konačna verzija ovoga koristi pomoćnu bateriju telefona za napajanje Raspberry Pi, koji napaja XBee i Logitech kontroler igre. U budućem projektu dodat ću vakuumski oblikovan plastični poklopac koji će obuhvatiti Raspberry PI Zero, XBee Radio i napajanje, sve spojeno na kontroler igre u jedan lijep, uredan paket. Ova izvedba RC odašiljača olakšava slanje kontrolnih podataka na gotovo sve. U sljedećoj verziji poslat ću podatke heksapodnom robotu kojeg sam spasio iz dobre volje. Nadam se da će vam ovo uputstvo biti od pomoći. Sretna zgrada!

Korak 5: Priključite Raspberry Pi Zero na radio XBee

Spojite Raspberry Pi Zero na radio XBee
Spojite Raspberry Pi Zero na radio XBee

Kao što je prikazano na dijagramu, spojite Pi GPIO pin 1 (3.3v) na XBee pin 1. Spojite Pi GPIO pin 6 (Gnd) na XBee pin 10, a Pi GPIO Pin 8 (TX) na XBee pin 3 (Din). Također možete koristiti XBee probojnu ploču za koju je potrebno da spojite Pi GPIO pin 2 (5v) na 5v pin na razbojnoj ploči.

Preporučeni: