Kazalo:
- Korak: Spajite glave za spajkanje na dodatne V/I porte Arduina
- Korak: Dodajte knjižnico igralnih palic Arduino v svoj IDE
- Korak: Kodo prenesite na Arduino
- 4. korak: Ožičite
- 5. korak: Povežite sprejemnika
- 6. korak: Kodo prilagodite svojim okoliščinam
- 7. korak: Umerite simulirano igralno palico
Video: R/C do USB Bridge: 7 korakov
2024 Avtor: John Day | [email protected]. Nazadnje spremenjeno: 2024-01-30 12:05
Pretvori signale PPM iz radijskega sprejemnika v položaje krmilne palice
Uporabite ga za igranje vaših najljubših iger in simulatorjev letenja z radijskim oddajnikom R/C. Ta Instructable za to pretvorbo uporablja Arduino iz littleBits in sprejemnik DSMX ter preprost delček kode.
Boste potrebovali
- Moč
- Arduino
- USB kabli
- pin glave
- mostična žica
- radijski sprejemnik z izhodom PPM.
Korak: Spajite glave za spajkanje na dodatne V/I porte Arduina
Za napajanje sprejemnika (RX) je treba v Arduino dodati pin -glave. To bo tudi olajšalo ožičenje med Bitom in RX. Za več informacij glejte
Korak: Dodajte knjižnico igralnih palic Arduino v svoj IDE
Knjižnico najdete na spletnem mestu GitHub, https://github.com/MHeironimus/ArduinoJoystickLib… Hvala, Matej Heironimus, da ste jo napisali.
Samo nekateri Arduino lahko posnemajo HID kot igralno palico. Ker je mikrokrmilnik littleBits po srcu Arduino Leonardo, ste pripravljeni.
Korak: Kodo prenesite na Arduino
#include #define inputPin 16#definiraj kanale 4 #define lo 800 // prilagodi izhodu RX#definiraj hi 1600 // prilagodi izhodu RX#definiraj 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 (glej, zdravo); Joystick.setThrottleRange (glej, zdravo); Joystick.setRudderRange (glej, 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 ++) {if ((kanal > 2000) || (kanal <500)) {kanal = prejšnjaVrednost ; } else {kanal = (prejšnjaVrednost +kanal )/2; števec ++; }} Joystick.setXAxis (kanal [0]); Joystick.setYAxis (kanal [1]); Joystick.setThrottle (kanal [2]); Joystick.setRudder (kanal [3]); } if (števec> filter) {za (int i = 0; i <= kanali-1; i ++) {Serial.print ("kanal"); Serial.print (i+1); Serial.print (":"); Serial.println (kanal ); previousValue = kanal ; } števec = 0; }}
Upoštevajte, da je koda, ki premosti med signalom R/C in emuliranim USB HID -om, v svoji najpreprostejši obliki. Tu uporabljena funkcija - pulseIn - je blokirna funkcija. Tukaj in tukaj preberite, kako z uporabo prekinitev izvesti pristop, ki ne blokira.
4. korak: Ožičite
Mostični kabel / kable DuPont priključite med Bit in RX. Priključki na koncu teh kablov morajo biti ženski. GND (modro), VCC (rjavo) in signal (oranžno) povežemo iz vrat PPM RX na GND, VCC in d16 na Arduinu.
5. korak: Povežite sprejemnika
Arduino izključite iz napajanja. Vezni pas vstavite v mesto priključka z oznako BIND na RX. Vklopite radijski oddajnik in ga preklopite v način vezave. Nato priključite napajanje na Arduino. Postopek vezave je bil uspešen, ko se prižge LED v sprejemniku.
6. korak: Kodo prilagodite svojim okoliščinam
Konstante hi in lo v skici Arduino je treba spremeniti, da odražajo dejanski izhod sprejemnika, ki ga uporabljate.
#Določi 800
#define hi 1600
Signali znotraj impulza PPM se idealno gibljejo od 1000μs do 2000μs. RX, uporabljen v tem navodilu, daje vrednosti približno med 800 in 1600 in se na vsakem kanalu nekoliko razlikuje. Če želite izvedeti, kakšen doseg ima vaš sprejemnik, odprite serijski monitor v Arduino IDE in si oglejte izhod vašega RX. Izgledalo bo takole:
kanal 1: 728
kanal 2: 729 kanal 3: 703 kanal 4: 726 kanal 1: 1681 kanal 2: 1639 kanal 3: 1613 kanal 4: 1676
Ko imate jasnejšo predstavo o razponu, ki ga oddaja vaš RX, izberite dobre približke za hi in lo in ustrezno spremenite konstante. Nato znova naložite skico v Arduino.
7. korak: Umerite simulirano igralno palico
Napravo priključite na računalnik in s funkcijo umerjanja v operacijskem sistemu umerite emulirano krmilno palčko. Dobro orodje za Linux je jstest-gtk.
Nadaljnje izboljšave
- Napišite kodo, ki ne blokira (glejte 3. korak)
- Določite obsege na kanal, ne globalno (glejte 6. korak)
nadaljnje branje
- Redcon CM703
- PPM
Priporočena:
Drobni gonilniki H-Bridge - Osnove: 6 korakov (s slikami)
Drobni gonilniki H-Bridge | Osnove: Pozdravljeni in dobrodošli nazaj v drugi Instructable! V prejšnjem sem vam pokazal, kako sem ustvaril tuljave v KiCadu s pomočjo skripta python. Nato sem ustvaril in preizkusil nekaj različic tuljav, da vidim, katera najbolje deluje. Moj cilj je nadomestiti ogromno
Poceni vozlišče NMEA/AIS - RS232 do Wifi Bridge za uporabo na krovu: 6 korakov
Poceni središče NMEA /AIS - RS232 na Wifi Bridge za uporabo na krovu: posodobitev 9. januarja 2021 - dodana dodatna povezava TCP in ponovna uporaba zadnje povezave, če se poveže več strank Posodobitev 13. december 2020 - dodana konfiguracijska različica kode za čolne z obstoječimi usmerjevalniki Uvod Ta NMEA / AIS RS232 do WiFi most je
Raspberry Pi Ethernet do Wifi Bridge: 7 korakov
Raspberry Pi Ethernet do Wifi Bridge: Imam preskusno mrežo različnih Raspberry Pies, naprav in drugih računalnikov ter omrežne opreme, vse jih upravlja požarni zid/usmerjevalnik Ubiquity in želim, da je povezan z internetom, da lahko potegnite posodobitve, programsko opremo itd
Uporaba impulznih solenoidov z namakalnimi napravami Wemos D1 Mini in H-Bridge: 7 korakov
Uporaba impulznih solenoidov z Wemos D1 Mini in H-Bridge za namakanje: Za to navodilo sem želel ustvariti rešitev, tako da lahko na daljavo vklopim brizgalni sistem ali samodejno zalivam svoje sadike. Za nadzor bom uporabil wemos D1 impulzni solenoidi. Ti solenoidi porabijo veliko manj energije, ker ko prejmejo
ESP32 Dual H Bridge Breakout Board: 8 korakov
ESP32 Dual H Bridge Breakout Board: Ta projekt je za ESP32 Breakout board, ki je bil zasnovan kot možgani vašega naslednjega robota. Značilnosti te plošče so; Lahko sprejme kateri koli komplet za razvijalce ESP32, ki ima dve vrsti do dvajset zatičev na središčih enega palca. Kraj za namestitev tuberkuloze