Cuprins:
- Pasul 1: Raspberry PI și Xbee RC Transmitter
- Pasul 2: Configurați Raspberry Pi UART
- Pasul 3: Scrieți un script Python pentru a citi valorile controlerului de joc
- Pasul 4: Concluzie
- Pasul 5: conectați Raspberry Pi Zero la XBee Radio
Video: Transmițător RC Raspberry Pi + Xbee: 5 pași
2024 Autor: John Day | [email protected]. Modificat ultima dată: 2024-01-30 11:45
Acest instructiv vă va arăta ce am făcut pentru a-mi crea propriul transmițător Raspberry Pi Zero + Xbee RC
Pasul 1: Raspberry PI și Xbee RC Transmitter
Pasul 2: Configurați Raspberry Pi UART
Buna!
Raspberry Pi (toate variantele) sunt extrem de versatile și sunt acum piatra de temelie a unui ecosistem de multe suplimente ușor de lipit care fac aceste dispozitive cu adevărat la îndemână. Din păcate, singurul lucru care lipsește Raspberry Pi (în prezent) este o placă de breakout sau o interfață GPIO la cheie pentru radiourile XBee (ZigBee). Dispozitivele XBee sunt o modalitate excelentă de a comunica între toate tipurile de dispozitive fără o mulțime de protocoale sau formate de date în dicing și feliere și facilitează integrarea dispozitivelor USB și trimiterea datelor către alte dispozitive la distanță. Pentru început, începeți cu orice versiune a Raspberry Pi. În acest Instructable am folosit un Raspberry Pi zero și am configurat consola serială pentru a elibera UART folosind acest Instructable.
Pasul 3: Scrieți un script Python pentru a citi valorile controlerului de joc
Acest bit de cod Python reacționează la evenimentele generate de controlerul jocului și transmite valoarea intrării pe controlul care a generat evenimentul. Acest cod va trimite date la fel de rapid ca rata de transmisie setată pe radiourile XBee. În acest exemplu, radiourile sunt setate la 57600, dar ar putea fi setate la cea mai mare rată de baud. Controlerul de joc este un controler de joc USB Logitech. Codul folosit este mai jos:
import pygame
import serial
sOut = ""
ser = serial. Serial {
port = '/ dev / ttyAMA0', baudrate = 57600, paritate = serial. PARITY_NONE, stopbits = serial. STOPBITS_ONE, bytesize = serial. EIGHTBITS, timeout = 1
}
pygame.init ()
făcut = Fals
în timp ce ați terminat == false:
joystick = pygame.joystick.joystick (0)
joystick.init ()
#PROCESAREA EVENIMENTELOR
pentru eveniment în pygame.event.get ():
dacă event.type == pygame. JOYAXISMOTION:
sOut = "Axis:" + str (event.axis) + "; Value:" + str (event.value)
print (sOut)
ser.write (sOut)
ser.flush ()
sOut = ""
dacă event.type == pygame. JOYHATMOTION:
sOut = "Hat: + str (event.hat) +"; Valoare: "+ str (event.value)
print (sOut)
ser.write (sOut)
ser.flush ()
sOut = ""
dacă event.type == pygame. JOYBUTTONDOWN:
sOut = "Button Down:" + str (event.button)
print (sOut)
ser.write (sOut)
ser.flush ()
sOut = ""
if event.button == 8:
print („Renunțare”)
făcut = Adevărat
dacă event.type == pygame. JOYBUTTONUP:
sOut = "Button Up:" + str (event.button)
print (sOut)
ser.write (sOut)
ser.flush ()
sOut = ""
ser.close ()
pygame.quit ()
Pasul 4: Concluzie
Construcția finală a acestuia folosește o baterie de telefon auxiliar pentru a alimenta Raspberry Pi, care alimentează controlerul de joc XBee și Logitech. Într-un proiect viitor, voi adăuga un capac din plastic format sub vid, care va cuprinde Raspberry PI Zero, XBee Radio și sursa de alimentare, toate atașate controlerului de joc într-un pachet frumos și îngrijit. Această construcție de transmițător RC face foarte ușor să trimiteți date de control la aproape orice. În următoarea mea versiune voi trimite datele către un robot hexapod pe care l-am salvat din Goodwill. Sper că veți găsi acest lucru de ajutor. Happy Building!
Pasul 5: conectați Raspberry Pi Zero la XBee Radio
Așa cum se arată în diagramă, conectați pinul GPIO Pi 1 (3,3v) la pinul XBee 1. Conectați pinul GPIO Pi 6 (Gnd) la pinul 10 XBee și Pinul GPIO Pi 8 (TX) la pinul 3 XBee (Din). De asemenea, puteți utiliza o placă de separare XBee care vă va cere să conectați pinul GPIO Pi 2 (5v) la pinul de 5v de pe placa de rupere
Recomandat:
Cum se descarcă codul MicroPython pe XBee 3: 18 pași (cu imagini)
Cum să descărcați codul MicroPython pe XBee 3: MicroPython este un limbaj de programare inspirat de Python 3.0 care funcționează pe microcontrolere, cum ar fi XBee 3. MicroPython poate ajuta la scăderea cantității de aprovizionare și a volumului general al proiectului dvs. și poate face lucrurile mult mai ușoare . Cu toate acestea, eu sunt