Talaan ng mga Nilalaman:

Raspberry Pi + Xbee RC Transmitter: 5 Hakbang
Raspberry Pi + Xbee RC Transmitter: 5 Hakbang

Video: Raspberry Pi + Xbee RC Transmitter: 5 Hakbang

Video: Raspberry Pi + Xbee RC Transmitter: 5 Hakbang
Video: Raspberry Pi Server Xbee Arduino - Xbee Setup 2024, Hulyo
Anonim
Raspberry Pi + Xbee RC Transmitter
Raspberry Pi + Xbee RC Transmitter

Ituturo sa iyo ng itinuturo na ito kung ano ang ginawa ko upang lumikha ng sarili kong Raspberry Pi Zero + Xbee RC transmitter

Hakbang 1: Raspberry PI at Xbee RC Transmitter

Hakbang 2: I-configure ang Raspberry Pi UART

Hoy, ikaw!

Ang Raspberry Pi (lahat ng mga pagkakaiba-iba) ay lubos na maraming nalalaman at ngayon ay ang pundasyon ng isang ecosystem ng maraming madaling maghinang na mga add-on na talagang madaling gamiting mga aparato. Sa kasamaang palad ang isang bagay na nawawala ang Raspberry Pi (kasalukuyang) ay isang breakout board o turnkey GPIO interface para sa mga radio ng XBee (ZigBee). Ang mga XBee device ay isang mahusay na paraan upang makipag-ugnay sa pagitan ng lahat ng mga uri ng mga aparato nang walang maraming mga dicing at slicing na mga protocol o mga format ng data at ginagawang napakadali upang isama ang mga USB device at ipadala ang kanilang data sa iba pang mga remote na aparato. Upang magsimula, magsimula sa anumang bersyon ng Raspberry Pi. Sa Instructable na ito gumamit ako ng isang Raspberry Pi zero, at na-configure ang serial console upang mapalaya ang UART gamit ang Instructable na ito.

Hakbang 3: Sumulat ng isang Python Script upang Basahin ang Mga Halaga ng Controller ng Laro

Ang bit ng code ng Python na ito ay tumutugon sa mga kaganapan na itinaas ng game controller at inililipat ang halaga ng input sa kontrol na tumaas ang kaganapan. Ang code na ito ay magpapadala ng data nang mas mabilis hangga't ang rate ng baud na nakatakda sa mga radio ng XBee. Sa halimbawang ito ang mga radio ay nakatakda sa 57600 ngunit maaaring itakda sa kanilang pinakamataas na rate ng baud. Ang game controller ay isang Logitech USB game controller. Nasa ibaba ang ginamit na code:

i-import ang pygame

mag-import ng serial

sOut = ""

ser = serial. Serial {

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

}

pygame.init ()

tapos = Mali

habang tapos na == maling:

joystick = pygame.joystick.joystick (0)

joystick.init ()

#EVENT PROCESSING

para sa kaganapan sa pygame.event.get ():

kung event.type == pygame. JOYAXISMOTION:

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

print (sOut)

ser.write (sOut)

ser.flush ()

sOut = ""

kung event.type == pygame. JOYHATMOTION:

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

print (sOut)

ser.write (sOut)

ser.flush ()

sOut = ""

kung event.type == pygame. JOYBUTTONDOWN:

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

print (sOut)

ser.write (sOut)

ser.flush ()

sOut = ""

kung event.button == 8:

print ("Quitting")

tapos = Totoo

kung event.type == pygame. JOYBUTTONUP:

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

print (sOut)

ser.write (sOut)

ser.flush ()

sOut = ""

ser.close ()

pygame.quit ()

Hakbang 4: Konklusyon

Ang pangwakas na pagbuo nito ay gumagamit ng isang pantulong na baterya ng telepono upang mapagana ang Raspberry Pi, na nagpapagana sa XBee at Logitech game controller. Sa isang hinaharap na proyekto ay magdaragdag ako ng isang vacuum na nabuo na plastik na takip na isasara ang Raspberry PI Zero, XBee Radio, at supply ng kuryente, lahat ay nakakabit sa game controller sa isang maganda, maayos na bundle. Ginagawa nitong RC transmitter build na napakadali upang magpadala ng data ng kontrol sa halos anumang bagay. Sa aking susunod na pagbuo ay magpapadala ako ng data sa isang hexapod robot na aking nailigtas mula sa Goodwill. Inaasahan kong kapaki-pakinabang ang pagtuturo na ito. Maligayang Gusali!

Hakbang 5: I-wire ang Raspberry Pi Zero sa XBee Radio

Wire ang Raspberry Pi Zero sa XBee Radio
Wire ang Raspberry Pi Zero sa XBee Radio

Tulad ng ipinakita sa diagram, ikonekta ang Pi GPIO pin 1 (3.3v) sa XBee pin 1. Ikonekta ang Pi GPIO pin 6 (Gnd) sa XBee pin 10, at Pi GPIO Pin 8 (TX) sa XBee pin 3 (Din). Maaari mo ring gamitin ang isang breakout board ng XBee na mangangailangan sa iyo upang ikonekta ang Pi GPIO pin 2 (5v) sa 5v pin sa breakout board

Inirerekumendang: