Obsah:

RC vysielač Raspberry Pi + Xbee: 5 krokov
RC vysielač Raspberry Pi + Xbee: 5 krokov

Video: RC vysielač Raspberry Pi + Xbee: 5 krokov

Video: RC vysielač Raspberry Pi + Xbee: 5 krokov
Video: Подключение и настройка nRF24L01 к Arduino (модуль беспроводной связи) 2024, Júl
Anonim
RC vysielač Raspberry Pi + Xbee
RC vysielač Raspberry Pi + Xbee

Tento návod vám ukáže, čo som urobil pre vytvorenie vlastného RC vysielača Raspberry Pi Zero + Xbee

Krok 1: Vysielač RC Raspberry PI a Xbee

Krok 2: Nakonfigurujte Raspberry Pi UART

Hej vy tam!

Raspberry Pi (všetky variácie) sú mimoriadne univerzálne a teraz sú základným kameňom ekosystému mnohých ľahko spájkovateľných doplnkov, vďaka ktorým sú tieto zariadenia SKUTOČNE praktické. Jedna vec, ktorá Raspberry Pi chýba (v súčasnosti), je bohužiaľ rozbíjacia doska alebo rozhranie GPIO na kľúč pre rádiá XBee (ZigBee). Zariadenia XBee sú skvelým spôsobom komunikácie medzi všetkými druhmi zariadení bez veľkého množstva protokolov a krájania na kocky alebo dátových formátov a veľmi uľahčujú integráciu zariadení USB a odosielanie ich údajov na iné vzdialené zariadenia. Na začiatku začnite s akoukoľvek verziou Raspberry Pi. V tomto návode som použil nulu Raspberry Pi a nakonfiguroval som sériovú konzolu na uvoľnenie UART pomocou tohto príkazu.

Krok 3: Napíšte skript Python na čítanie hodnôt ovládača hry

Tento bit kódu Pythonu reaguje na udalosti vyvolané herným ovládačom a prenáša hodnotu vstupu na ovládací prvok, ktorý vyvolal udalosť. Tento kód bude odosielať údaje tak rýchlo, ako je prenosová rýchlosť nastavená na rádiách XBee. V tomto prípade sú rádiá nastavené na 57 600, ale je možné ich nastaviť na najvyššiu prenosovú rýchlosť. Herný ovládač je herný ovládač Logitech USB. Použitý kód je uvedený nižšie:

import pygame

importný seriál

sOut = ""

ser = serial. Serial {

port = '/dev/ttyAMA0', prenosová rýchlosť = 57600, parita = serial. PARITY_NONE, stopbits = serial. STOPBITS_ONE, bytesize = serial. EIGHTBITS, časový limit = 1

}

pygame.init ()

hotovo = nepravda

hotovo == nepravda:

joystick = pygame.joystick.joystick (0)

joystick.init ()

#SPRACOVANIE UDALOSTÍ

pre udalosť v pygame.event.get ():

if event.type == pygame. JOYAXISMOTION:

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

vytlačiť (sOut)

ser.write (sOut)

ser.flush ()

sOut = ""

if event.type == pygame. JOYHATMOTION:

sOut = "Klobúk: + str (event.hat) +"; Hodnota: " + str (event.value)

vytlačiť (sOut)

ser.write (sOut)

ser.flush ()

sOut = ""

if event.type == pygame. JOYBUTTONDOWN:

sOut = "Tlačidlo nadol:" + str (tlačidlo event.button)

vytlačiť (sOut)

ser.write (sOut)

ser.flush ()

sOut = ""

if event.button == 8:

tlač („Ukončenie“)

hotovo = pravda

if event.type == pygame. JOYBUTTONUP:

sOut = "Tlačidlo hore:" + str (tlačidlo event.button)

vytlačiť (sOut)

ser.write (sOut)

ser.flush ()

sOut = ""

ser.close ()

pygame.quit ()

Krok 4: Záver

Konečné zostavenie tohto systému využíva pomocnú batériu telefónu na napájanie Raspberry Pi, ktorá napája herný ovládač XBee a Logitech. V budúcom projekte pridám vákuovo tvarovaný plastový kryt, ktorý uzavrie Raspberry PI Zero, XBee Radio a napájanie, všetko pripojené k hernému ovládaču v jednom peknom úhľadnom zväzku. Táto konštrukcia RC vysielača umožňuje veľmi jednoduché odosielanie riadiacich údajov takmer všetkému. V mojej ďalšej zostave pošlem údaje hexapodovému robotovi, ktorého som zachránil z Goodwillu. Dúfam, že vám tento návod pomôže. Šťastnú stavbu!

Krok 5: Pripojte Raspberry Pi Zero k rádiu XBee

Pripojte Raspberry Pi Zero k rádiu XBee
Pripojte Raspberry Pi Zero k rádiu XBee

Ako je znázornené na obrázku, pripojte kolík Pi GPIO 1 (3,3 V) k kolíku XBee 1. Pripojte kolík Pi GPIO 6 (Gnd) k kolíku XBee 10 a kolík Pi GPIO 8 (TX) k kolíku 3 XBee (Din). Môžete tiež použiť oddeľovaciu dosku XBee, ktorá bude vyžadovať pripojenie kolíka Pi GPIO 2 (5v) k kolíku 5v na oddeľovacej doske

Odporúča: