Sadržaj:
- Korak 1: Lemljenje pin zaglavlja na dodatne Arduino I/O portove
- Korak 2: Dodajte biblioteku džojstika Arduino u svoj IDE
- Korak 3: Prenesite kôd na Arduino
- Korak 4: Ožičite
- Korak 5: Vežite prijemnik
- Korak 6: Prilagodite kôd svojim okolnostima
- Korak 7: Kalibrirajte emuliranu joystick
Video: R/C na USB most: 7 koraka
2024 Autor: John Day | [email protected]. Zadnja izmjena: 2024-01-30 08:07
Pretvara PPM signale sa radio prijemnika u položaje džojstika
Koristite ga za igranje vaših omiljenih igara i simulatora letenja s vašim R/C radio predajnikom. Ovaj Instructable koristi Arduino iz littleBits -a i DSMX prijemnik plus jednostavan isječak koda za ovu konverziju.
Trebat će vam
- Snaga
- Arduino
- USB kablovi
- pin headers
- kratkospojnik
- radio prijemnik sa PPM izlazom.
Korak 1: Lemljenje pin zaglavlja na dodatne Arduino I/O portove
Za napajanje prijemnika (RX), Arduinu je potrebno dodati pin zaglavlja. Ovo će također znatno olakšati ožičenje između Bit -a i RX -a. Za više informacija pogledajte
Korak 2: Dodajte biblioteku džojstika Arduino u svoj IDE
Biblioteku možete pronaći na GitHub -u, https://github.com/MHeironimus/ArduinoJoystickLib… Hvala vam, Matthew Heironimus, što ste je napisali.
Samo određeni Arduinos može oponašati HID poput džojstika. Kako je mali upravljač littleBits Arduino Leonardo, u srcu ste spremni.
Korak 3: Prenesite kôd na Arduino
#include #define inputPin 16#definirati kanale 4 #define lo 800 // prilagoditi izlazu RX#definirati hi 1600 // prilagoditi izlazu RX#definirati filter 10int kanal [kanali]; int previousValue [kanali]; int counter = 0; Joystick_ Joystick (JOYSTICK_DEFAULT_REPORT_ID, JOYSTICK_TYPE_MULTI_AXIS, 0, 0, true, true, false, false, false, false, true, false, false, false); void setup () {Joystick.setXAxisRange, zdravo); Joystick.setYAxisRange (lo, zdravo); Joystick.setThrottleRange (lo, hi); Joystick.setRudderRange (lo, zdravo); Joystick.begin (); Serial.begin (9600); pinMode (inputPin, INPUT); } void loop () {if (pulseIn (inputPin, HIGH)> 3000) {for (int i = 0; i <= channel-1; i ++) {channel = pulseIn (inputPin, HIGH); } za (int i = 0; i <= kanali-1; i ++) {ako ((kanal > 2000) || (kanal <500)) {kanal = prethodnaVrednost ; } else {kanal = (prethodna vrijednost +kanal )/2; counter ++; }} Joystick.setXAxis (kanal [0]); Joystick.setYAxis (kanal [1]); Joystick.setThrottle (kanal [2]); Joystick.setRudder (kanal [3]); } if (brojač> filter) {za (int i = 0; i <= kanali-1; i ++) {Serial.print ("kanal"); Serial.print (i+1); Serial.print (":"); Serial.println (kanal ); previousValue = kanal ; } brojač = 0; }}
Imajte na umu da kod koji premošćuje R/C signal i emulirani USB HID dolazi u svom najjednostavnijem obliku. Ovdje korištena funkcija - pulseIn - je funkcija blokiranja. Ovdje i ovdje pročitajte kako primijeniti pristup koji ne blokira pomoću prekida.
Korak 4: Ožičite
Spojite kratkospojnik / DuPont kabele između bita i RX -a. Priključci na kraju ovih kabela moraju biti ženski. Povezujemo GND (plavo), VCC (smeđe) i signal (narančasto) s PPM porta RX -a na GND, VCC i d16 na Arduinu.
Korak 5: Vežite prijemnik
Isključite Arduino iz napajanja. Umetnite kabelski svežanj u mjesto konektora označeno BIND na RX -u. Uključite radio predajnik i prebacite ga u način vezivanja. Zatim priključite napajanje na Arduino. Proces vezivanja je bio uspješan kada se LED u prijemniku uključi.
Korak 6: Prilagodite kôd svojim okolnostima
Konstante hi i lo u Arduino skici potrebno je promijeniti tako da odražavaju stvarni izlaz prijemnika koji koristite.
#define lo 800
#define hi 1600
Signali unutar PPM impulsa idealno se kreću od 1000μs do 2000μs. RX koji se koristi u ovom Instructable daje vrijednosti otprilike između 800 i 1600 i malo se razlikuje na svakom kanalu. Da biste saznali koji raspon ima vaš prijemnik, otvorite Serial Monitor u Arduino IDE -u da vidite izlaz vašeg RX -a. To će izgledati ovako:
kanal 1: 728
kanal 2: 729 kanal 3: 703 kanal 4: 726 kanal 1: 1681 kanal 2: 1639 kanal 3: 1613 kanal 4: 1676
Jednom kada imate jasniju predstavu o rasponu koji emituje vaš RX, odaberite dobre aproksimacije za hi i lo i prema tome promijenite konstante. Zatim ponovo prenesite skicu na Arduino.
Korak 7: Kalibrirajte emuliranu joystick
Priključite uređaj na računar i koristite funkciju kalibracije vašeg OS za kalibraciju emuliranog džojstika. Dobar alat za Linux je jstest-gtk.
Daljnja poboljšanja
- Napišite kôd koji ne blokira (pogledajte korak 3)
- Postavite raspone po kanalu, ne globalno (pogledajte korak 6)
Dalje čitanje
- Redcon CM703
- PPM
Preporučuje se:
KaKu most (Klik-aan Klik-uit): 4 koraka
KaKu Bridge (Klik-aan Klik-uit): Ovaj KakuBridge je vrlo jeftin (<8 USD) i vrlo jednostavan za izgradnju domotica sistema za Klik-aan Klik-uit uređaje, (CoCo). Pomoću daljinskog upravljača na web stranici možete kontrolirati do 9 uređaja. Osim toga, pomoću KakuBridge -a možete zakazati svaki uređaj
Jeftino NMEA/AIS čvorište - RS232 na Wifi most za upotrebu na brodu: 6 koraka
Jeftino NMEA /AIS čvorište - RS232 na Wifi Bridge za ugrađenu upotrebu: ažuriranje 9. januara 2021 - dodana dodatna TCP veza i ponovna upotreba posljednje veze ako se poveže više klijenataAžuriranje 13. prosinca 2020 - Dodana je verzija bez konfiguracije koda za brodove sa postojećim usmjerivačima UvodOva NMEA / AIS RS232 do WiFi most je
Izgradite Rainbow interaktivni most koristeći Minecraft Raspberry Pi Edition: 11 koraka
Izgradite Rainbow interaktivni most koristeći Minecraft Raspberry Pi Edition: Jučer sam vidio svog osmogodišnjeg nećaka kako igra Minecraft s Raspberry Pi-em koji sam mu dao prije, a onda sam dobio ideju da koristi kod za izradu prilagođenog i uzbudljivog Minecraft-a pi projekt LED blokova. Minecraft Pi je odličan način da započnete sa
Kako napraviti H-most: 15 koraka
Kako napraviti H-most: H-most je vrsta strujnog kruga koju možete koristiti za pokretanje reverzibilnog istosmjernog motora koji se okreće i u smjeru kazaljke na satu. okretanje pomoću prekidača ili kontrolera c
Ispravljač za puni valni most (za početnike): 6 koraka
Punovalni valni ispravljač (za početnike): Punotalasni ispravljač je elektroničko kolo koje pretvara izmjeničnu struju u istosmjernu. Električna energija koja izlazi iz zidne utičnice je izmjenična struja, dok se većina modernih elektroničkih uređaja napaja istosmjernom strujom. To znači da je f