Obsah:
- Krok 1: Vysílač Raspberry PI a Xbee RC
- Krok 2: Konfigurujte Raspberry Pi UART
- Krok 3: Napište skript Pythonu pro čtení hodnot herního ovladače
- Krok 4: Závěr
- Krok 5: Připojte Raspberry Pi Zero k rádiu XBee
Video: RC vysílač Raspberry Pi + Xbee: 5 kroků
2024 Autor: John Day | [email protected]. Naposledy změněno: 2024-01-30 08:23
Tento návod vám ukáže, co jsem udělal pro vytvoření vlastního RC vysílače Raspberry Pi Zero + Xbee
Krok 1: Vysílač Raspberry PI a Xbee RC
Krok 2: Konfigurujte Raspberry Pi UART
Zdravím!
Raspberry Pi (všechny varianty) jsou extrémně univerzální a nyní jsou základním kamenem ekosystému mnoha snadno pájitelných doplňků, díky nimž jsou tato zařízení SKUTEČNĚ po ruce. Bohužel jedna věc, která Raspberry Pi chybí (v současné době), je oddělovací deska nebo rozhraní GPIO na klíč pro rádia XBee (ZigBee). Zařízení XBee jsou skvělým způsobem, jak komunikovat mezi všemi druhy zařízení bez velkého množství protokolů a formátování dat a formátování dat a velmi usnadňuje integraci zařízení USB a odesílání jejich dat na jiná vzdálená zařízení. Začněte tím, že začnete s jakoukoli verzí Raspberry Pi. V tomto Instructable jsem použil nulu Raspberry Pi a nakonfiguroval jsem sériovou konzolu tak, aby uvolnila UART pomocí tohoto Instructable.
Krok 3: Napište skript Pythonu pro čtení hodnot herního ovladače
Tento kousek kódu Pythonu reaguje na události vyvolané herním ovladačem a přenáší hodnotu vstupu na ovládací prvek, který událost vyvolal. Tento kód bude odesílat data tak rychle, jak je přenosová rychlost nastavena na vysílačkách XBee. V tomto případě jsou rádia nastavena na 57 600, ale lze je nastavit na nejvyšší přenosovou rychlost. Herní ovladač je herní ovladač Logitech USB. Použitý kód je níže:
importovat pygame
importní seriál
sOut = ""
ser = serial. Serial {
port = '/dev/ttyAMA0', přenosová rychlost = 57600, parita = serial. PARITY_NONE, stopbits = serial. STOPBITS_ONE, bytesize = serial. EIGHTBITS, časový limit = 1
}
pygame.init ()
hotovo = nepravda
po dokončení == false:
joystick = pygame.joystick.joystick (0)
joystick.init ()
#ZPRACOVÁNÍ UDÁLOSTÍ
pro událost v pygame.event.get ():
if event.type == pygame. JOYAXISMOTION:
sOut = "Osa:" + str (event.axis) + "; Hodnota:" + str (event.value)
tisk (sOut)
ser.write (sOut)
ser.flush ()
sOut = ""
if event.type == pygame. JOYHATMOTION:
sOut = "Klobouk: + str (event.hat) +"; Hodnota: " + str (event.value)
tisk (sOut)
ser.write (sOut)
ser.flush ()
sOut = ""
if event.type == pygame. JOYBUTTONDOWN:
sOut = "Tlačítko dolů:" + str (tlačítko event.button)
tisk (sOut)
ser.write (sOut)
ser.flush ()
sOut = ""
if event.button == 8:
tisk („Ukončení“)
hotovo = pravda
if event.type == pygame. JOYBUTTONUP:
sOut = "Tlačítko Nahoru:" + str (event.button)
tisk (sOut)
ser.write (sOut)
ser.flush ()
sOut = ""
ser.close ()
pygame.quit ()
Krok 4: Závěr
Konečné sestavení využívá pomocnou baterii k napájení Raspberry Pi, která napájí herní ovladač XBee a Logitech. V budoucím projektu přidám vakuově tvarovaný plastový kryt, který uzavře Raspberry PI Zero, XBee Radio a napájecí zdroj, vše připojené k hernímu ovladači v jednom pěkném, úhledném svazku. Tato konstrukce RC vysílače umožňuje velmi snadné odesílání řídicích dat téměř na cokoli. V mém dalším sestavení pošlu data hexapodovému robotovi, kterého jsem zachránil před Goodwillem. Doufám, že vám tento návod pomůže. Šťastnou stavbu!
Krok 5: Připojte Raspberry Pi Zero k rádiu XBee
Jak je znázorněno na obrázku, připojte kolík Pi GPIO 1 (3,3 V) ke kolíku XBee 1. Připojte kolík Pi GPIO 6 (Gnd) ke kolíku XBee 10 a Pi GPIO pin 8 (TX) ke kolíku 3 XBee (Din). Můžete také použít odpojovací desku XBee, která bude vyžadovat, abyste připojili Pi GPIO pin 2 (5v) ke kolíku 5v na breakout desce
Doporučuje:
Jak stáhnout kód MicroPython do XBee 3: 18 kroků (s obrázky)
Jak stáhnout kód MicroPython do XBee 3: MicroPython je programovací jazyk inspirovaný Pythonem 3.0, který funguje na mikrokontrolérech, jako je XBee 3. MicroPython může pomoci snížit množství dodávek a celkovou objemnost vašeho projektu a hodně usnadnit práci . Nicméně fauluji