Tartalomjegyzék:
- 1. lépés: Forrasztófej fejlécek az Arduino további I/O portjaihoz
- 2. lépés: Adja hozzá az Arduino joystick könyvtárat az IDE -hez
- 3. lépés: Villanja be a kódot az Arduino -ra
- 4. lépés: Végezze el a huzalozást
- 5. lépés: Kötözze be a vevőt
- 6. lépés: Állítsa be a kódot a körülményeihez
- 7. lépés: Kalibrálja az emulált joystickot
Videó: R/C az USB -hídhoz: 7 lépés
2024 Szerző: John Day | [email protected]. Utoljára módosítva: 2024-01-30 09:41
A rádióvevőből érkező PPM jeleket joystick helyzetbe alakítja
Használja kedvenc játékait és repülési szimulátorait az R/C rádióadóval. Ez az Instructable egy kis bitekből származó Arduino -t és egy DSMX vevőt, valamint egy egyszerű kódrészletet használ az átalakításhoz.
Szükséged lesz
- Erő
- Arduino
- USB kábelek
- tűfejlécek
- jumper huzal
- egy rádióvevő PPM kimenettel.
1. lépés: Forrasztófej fejlécek az Arduino további I/O portjaihoz
A vevő tápellátásához (RX) a tűfejléceket hozzá kell adni az Arduino -hoz. Ez jelentősen megkönnyíti a Bit és az RX közötti huzalozást is. További információért lásd:
2. lépés: Adja hozzá az Arduino joystick könyvtárat az IDE -hez
A könyvtárat megtalálod a GitHubon, https://github.com/MHeironimus/ArduinoJoystickLib… Köszönöm, Matthew Heironimus, hogy megírtad.
Csak bizonyos Arduinos képes emulálni a HID -t, mint a joystick. Mivel a littleBits mikrovezérlő egy Arduino Leonardo, szívesen megy.
3. lépés: Villanja be a kódot az Arduino -ra
#include #define inputPin 16#define csatornák 4 #define lo 800 // állítsa be az RX kimenetét#define hi 1600 // állítsa be az RX kimenetét#definiálja a szűrőt 10int csatorna [csatornák]; int previousValue [csatornák]; int counter = 0; Joystick_ Joystick (JOYSTICK_DEFAULT_REPORT_ID, JOYSTICK_TYPE_MULTI_AXIS, 0, 0, true, true, false, false, false, false, true, true, false, false, false); void setup () {Joystick.setXAxisRange (lo, Szia); Joystick.setYAxisRange (íme, szia); Joystick.setThrottleRange (lo, szia); Joystick.setRudderRange (íme, szia); Joystick.begin (); Sorozat.kezdet (9600); pinMode (inputPin, INPUT); } void loop () {if (pulseIn (inputPin, HIGH)> 3000) {for (int i = 0; i <= channels-1; i ++) {channel = pulseIn (inputPin, HIGH); } for (int i = 0; i <= csatornák-1; i ++) {if ((csatorna > 2000) || (csatorna <500)) {csatorna = előzőValue ; } else {csatorna = (előzőValue +csatorna )/2; számláló ++; }} Joystick.setXAxis ([0] csatorna); Joystick.setYAxis (csatorna [1]); Joystick.setThrottle (csatorna [2]); Joystick.setRudder (csatorna [3]); } if (számláló> szűrő) {for (int i = 0; i <= channels-1; i ++) {Serial.print ("channel"); Sorozatnyomat (i+1); Serial.print (":"); Serial.println ( csatorna); previousValue = csatorna ; } számláló = 0; }}
Kérjük, vegye figyelembe, hogy az R/C jel és az emulált USB HID között áthidaló kód a legegyszerűbb formában jelenik meg. Az itt használt funkció - pulseIn - blokkoló funkció. Olvassa el itt és itt, hogyan lehet blokkolásmentes megközelítést alkalmazni megszakításokkal.
4. lépés: Végezze el a huzalozást
Csatlakoztassa a jumper vezetéket / DuPont kábeleket a bit és az RX közé. Ezeknek a kábeleknek a végén lévő csatlakozóknak nőnek kell lenniük. Csatlakoztatjuk a GND (kék), a VCC (barna) és a jel (narancssárga) jeleket az RX PPM portjáról az Arduino GND, VCC és d16 csatlakozóihoz.
5. lépés: Kötözze be a vevőt
Válassza le az Arduino -t az áramellátásról. Helyezze a kötőköteget az RX BIND jelű csatlakozóhelyére. Kapcsolja be a rádióadót, és kapcsolja kötési módba. Ezután kapcsolja be az Arduino áramellátását. A kötési folyamat sikeres volt, amikor a vevő LED -je kigyullad.
6. lépés: Állítsa be a kódot a körülményeihez
Az Arduino vázlat hi és lo konstansát módosítani kell, hogy tükrözze a használt vevő tényleges kimenetét.
#define lo 800
#define szia 1600
A PPM impulzuson belüli jelek ideális esetben 1000μs és 2000μs között mozognak. Az ebben az utasítható kimenetben használt RX nagyjából 800 és 1600 között van, és minden csatornán kissé eltér. A vevőkészülék hatótávolságának kiderítéséhez nyissa meg a soros monitort az Arduino IDE -ben, hogy megtekinthesse az RX kimenetét. Így fog kinézni:
1. csatorna: 728
csatorna 2: 729 csatorna 3: 703 csatorna 4: 726 csatorna 1: 1681 csatorna 2: 1639 csatorna 3: 1613 csatorna 4: 1676
Ha világosabb elképzelése van az RX kimenetek tartományáról, válasszon jó közelítéseket a hi és lo számára, és ennek megfelelően módosítsa az állandókat. Ezután töltse fel újra a vázlatot az Arduino -ba.
7. lépés: Kalibrálja az emulált joystickot
Csatlakoztassa az eszközt a számítógéphez, és használja az operációs rendszer kalibrációs funkcióját az emulált joystick kalibrálásához. Linuxra jó eszköz a jstest-gtk.
További fejlesztések
- Írjon nem blokkoló kódot (lásd a 3. lépést)
- Állítsa be a tartományokat csatornánként, ne globálisan (lásd a 6. lépést)
További irodalom
- Redcon CM703
- PPM
Ajánlott:
Hogyan készítsünk USB flash meghajtót radírral - DIY USB meghajtótok: 4 lépés
Hogyan készítsünk USB flash meghajtót radírral | DIY USB meghajtótok: Ez a blog arról szól, hogyan készíthetünk USB flash meghajtót radírral | DIY USB meghajtótok " remélem tetszeni fog
Egy közönséges USB -pálca biztonságos USB -pendrivé alakítása: 6 lépés
Egy közönséges USB -pálca biztonságos USB -pendrive -vé alakítása: Ebben az utasításban megtanuljuk, hogyan lehet egy közönséges USB -pendrót biztonságos USB -pendrivé alakítani. Mindez szabványos Windows 10 funkciókkal, semmi különös és semmi extra. Amire szüksége van: USB memóriakártya vagy meghajtó. Nagyon ajánlom a getti
Egyszerű 5 perces USB napelemes töltő/túlélő USB töltő: 6 lépés (képekkel)
Egyszerű 5 perces USB napelemes töltő/túlélő USB töltő: Helló srácok! Ma elkészítettem (valószínűleg) a legegyszerűbb usb napelemes töltőt! Először is sajnálom, hogy nem töltöttem fel valami tanulságosat, srácok .. Az elmúlt hónapokban néhány vizsgát kaptam (valójában nem néhány, talán egy hétig ..). De
Hogyan készítsünk saját USB autós töltőt bármilyen iPod vagy más USB -n keresztül tölthető eszközhöz: 10 lépés (képekkel)
Hogyan készítsünk saját USB autós töltőt bármilyen iPod vagy más USB -n keresztül tölthető eszközhöz: Hozzon létre egy USB autós töltőt bármely iPod vagy más eszköz számára, amely USB -n keresztül töltődik, ha összeilleszt egy autós adaptert, amely 5 V -os kimenetet és USB csatlakozó dugót csatlakoztat. Ennek a projektnek a legfontosabb része, hogy megbizonyosodjon arról, hogy a választott autós adapter kimenete fogadott
USB beltéri/kültéri hőmérő (vagy „Az első USB -eszközöm”): 4 lépés (képekkel)
USB beltéri/kültéri hőmérő (vagy „Saját első USB -eszköz”): Ez egy egyszerű kialakítás, amely bemutatja a PIC 18F -ek USB -perifériáját. Van egy csomó példa az 18F4550 40 tűs chipekre az interneten, ez a kialakítás a kisebb 18F2550 28 tűs verziót mutatja be. A NYÁK felületre szerelhető alkatrészeket használ, de minden c