Kazalo:
Video: UChip - Enostavna skica za motorje na daljinskem upravljanju in/ali servomotorje prek radia Tx -Rx na 2,4 GHz!: 3 koraki
2024 Avtor: John Day | [email protected]. Nazadnje spremenjeno: 2024-01-30 12:03
Zelo mi je všeč svet RC. Z uporabo igrače z daljinskim upravljalnikom imate občutek, da obvladate nekaj izjemnega, kljub temu, da gre za manjši čoln, avto ali brezpilotni letnik!
Vendar pa ni enostavno prilagoditi vaših igrač in jih prisiliti, da storijo vse, kar želite. Običajno ste omejeni na privzete nastavitve oddajnika ali posebej zasnovane kombinacije stikal in gumbov.
Kontrolirati vse, kot si resnično želite, je precej težko, predvsem zato, ker svet RC zahteva precej globoko poznavanje programiranja na ravni strojne opreme, da bi iz tega kar najbolje izkoristili.
Preizkusil sem številne platforme in nastavitve, vendar je vedno stalo ogromno truda, da sem se dovolj dobro naučil kode, preden se resnično prilagodim svoji igrači RC.
Manjkala mi je preprosta skica, ki bi jo lahko naložil z uporabo Arduino IDE in bi mi z lahkoto omogočil pretvorbo vrednosti, ki prihajajo iz radia RX (sprejemnik) v želeni nadzor motorja/servo.
Zato je tukaj tisto, kar sem ustvaril, ko sem se malo poigral z uChipom in Arduino IDE: Preprosta skica do motorjev na daljinsko upravljanje in/ali servomotorjev preko 2,4 GHz radia Tx-Rx!
Račun za materiale
1 x uChip: Arduino IDE združljiva plošča
1 radijski sistem xTx-Rx: kateri koli radijski sistem s sprejemnikom cPPM je dober (moja kombinacija je stara Spectrum DX7 Tx + oranžna R614XN cPPM Rx), zato upoštevajte pravilni postopek vezave, da povežete Tx in Rx.
1 x Baterija: pri delu z motorji in servomotorji so potrebne baterije z visokim praznjenjem.
Motorji/servomotorji: glede na vaše potrebe
Elektronske komponente za pogon motorjev/servomotorjev: preprosti upori, MOSFET -i in diode vam omogočajo, da dosežete namen vožnje.
1. korak: Ožičenje
Sestavite komponente skupaj, kot je opisano v shemi.
Rx je priključen neposredno na uChipand ne potrebuje zunanjih komponent. Če uporabljate drug sprejemnik, preverite, ali potrebujete menjalnik nivoja ali ne. Signal cPPM priključite na uChip PIN_9 (to je PORTA19, če želite kodo prilagoditi drugi plošči SAMD21).
Preostalo ožičenje je potrebno za pogon motorja in/ali servo. Priložena shema predstavlja osnovno vezje za zaščito uChip pred konicami/pregretji, ki se običajno pojavijo pri poganjanju induktivnih obremenitev. Ključna sestavina za ohranitev varnosti uChip je zener dioda z napetostjo 5,1 V (D1 na shemi), ki jo morate priključiti vzporedno z VEXT (uChip pin 16) in GND (uChip pin 8). Druga možnost je, da se namesto Zener diode odločite za izbirno vezje, predstavljeno z D2, C1 in C2, ki preprečuje, da bi povratne konice poškodovale komponente uChip.
Lahko vozite toliko motorjev/servomotorjev, ki jih potrebujete, tako da preprosto ponovite shemo in spremenite krmilne zatiče (lahko uporabite kateri koli zatič, razen napajalnih (PIN_8 in PIN_16) in zatiča cPPM (PIN_9)). Upoštevajte, da medtem ko potrebujete samo eno zaščitno vezje, ki ga predstavlja Zener dioda (ali komponente za dodatno vezje), je treba električne komponente, povezane z motorno/servo vožnjo, ponoviti tolikokrat, kot je število motorjev/ servomotorji, ki jih nameravate voziti.
Ker sem hotel voziti vsaj 2 motorja in 2 servomotorja, sem naredil majhno tiskano vezje, ki je implementiralo opisano vezje in kar lahko vidite na sliki. Vendar je bil prvi prototip izdelan na proto plošči z uporabo letečih žic.
Tako za izvedbo tega preprostega projekta ne potrebujete nobenih veščin spajkanja/oblikovanja tiskanih vezij:)
2. korak: Programiranje
Tu je čarovnija! Tu stvari postanejo zanimive.
Če ste zgradili vezje, opisano v prejšnji shemi, lahko preprosto naložite skico »DriveMotorAndServo.ino« in vse bi moralo delovati.
Oglejte si kodo in preverite, kako deluje.
Na začetku je za definiranje uporabljenih nekaj #define:
- število kanalov Rx (6Ch z oranžno 614XN)
- zatiči, na katerih so pritrjeni motorji/servomotorji
- Maks. In min. Za servo in motorje
- Največja in najnižja vrednost za obseg radijskih kanalov
Potem je tu še razdelek z deklaracijo spremenljivk, kjer se razglasijo spremenljivke motorjev/servomotorjev.
Če vozite več kot en motor in en servo priključen, kot je opisano v prejšnji shemi, morate spremeniti skico in dodati kodo, ki obravnava dodatne motorje/servomotorje, ki ste jih priključili. Dodati morate toliko servo, servo_value in motor_value, kolikor servo/motorjev uporabljate.
V razdelku deklaracije spremenljivk je tudi nekaj spremenljivih spremenljivk, ki se uporabljajo za primerjavo zajema signala cPPM. NE SPREMEMBITE TE SPREMENLJIVE!
Naslednje morate narediti v funkciji loop (). Tu se lahko odločite, kako boste uporabili vrednost vhodnih kanalov.
V mojem primeru sem vhodno vrednost priključil neposredno na motor in servo, vendar ste več kot dobrodošli, da jo spremenite glede na vaše potrebe! V video posnetkih in slikah, povezanih v tej vadnici, sem priključil 2 motorja in 2 servomotorja, vendar so lahko 3, 4, 5,… do največje razpoložljive proste nožice (13 v primeru uChip).
Zajeto vrednost kanala lahko najdete v nizu ch [index], katerega "indeks" sega od 0 do NUM_CH - 1. Vsak kanal ustreza palici/stikalu/gumbu na vašem radiu. Na vas je, da razumete, kaj je-kaj:)
Nazadnje sem uvedel nekatere funkcije za odpravljanje napak, da bi olajšal razumevanje dogajanja. Komentirajte/odkomentirajte #define DEBUG za tiskanje vrednosti kanalov na izvornem SerialUSB.
NAMIG: Pod funkcijo loop () je več kode. Ta del kode je potreben za nastavitev vtičnic za napajanje uChip, obvladovanje prekinitev, ki jih ustvari funkcija primerjave zajema, nastavitev časovnikov in namen odpravljanja napak. Če se počutite dovolj pogumne, da se poigravate z registri, jih lahko spremenite!
Uredi: Posodobljena skica, odpravljena je napaka v funkciji preslikave.
3. korak: Igrajte se, vozite, dirkajte, letite
Prepričajte se, da pravilno povežete sistem Tx in Rx. Vklopite baterijo. Preverite, ali vse deluje. Lahko razširite funkcionalnosti ali spremenite funkcijo vsakega kanala, kot želite, saj zdaj popolnoma nadzorujete svoj prihodnji model RC.
Zdaj zgradite svoj prilagojeni model RC!
P. S.: Ker je vezava lahko zelo dolgočasna, nameravam kmalu izdati skico, ki omogoča vezavo vašega sistema Tx-Rx, ne da bi vam bilo treba to narediti ročno. Spremljajte posodobitve!
Priporočena:
Ustvarjanje signala PWM visoke ločljivosti za RC servomotorje z napravami STM32: 3 koraki
Generiranje signala PWM visoke ločljivosti za RC servomotorje z napravami STM32: Trenutno gradim RC oddajnik/sprejemnik na osnovi RF čipa SX1280. Eden od ciljev projekta je, da želim 12 -bitno servo ločljivost od palic vse do servomotorjev. Delno zato, ker imajo sodobni digitalni servomotorji 12 -bitno resolucijo
LED trak Neopixel Ws 2812 z Arduinom, ki ga upravlja Bluetooth prek Androida ali iPhonea: 4 koraki
LED trak Neopixel Ws 2812 z Arduinom, ki ga nadzira Bluetooth prek Androida ali iPhona: Pozdravljeni fantje, v tem navodilu sem razpravljal o tem, kako z vašim telefonom Android ali iPhoneom z uporabo povezave Bluetooth upravljati neopixel LED trak ali ws2812 LED trak. dodajte LED trak neopixel v svoj dom skupaj z Arduinom z
Dodajte mirovalnik (2. pritrditvena os druge osi) na mikro servomotorje za robotske projekte: 4 koraki
Dodajte mikrokontrolerje (2. os za montažo na drugo os) za mikro servomotorje pri robotskih projektih: Pri humanoidnih robotskih projektih se servomotorji uporabljajo na sklepih za premikanje različnih segmentov robota, najpogosteje je najbolje, da vsak segment namestite na 2 ali več točkah na vrtljiva os servo za stabilnost in pravilen prenos navora..Sma
UChip - Serijski prek IR!: 4 koraki
UChip-Serial Over IR !: Brezžična komunikacija je danes postala ključna značilnost naših projektov in govorimo o brezžični povezavi. Prva stvar, ki mi pride na misel, sta Wi-Fi ali BT, vendar ravnanje s komunikacijskimi protokoli Wi-Fi ali BT ni lahka naloga in porabi veliko
Upravljajte do 4 servomotorje s pametnim telefonom ali katero koli napravo z avdio izhodom: 3 koraki
Upravljajte do 4 servomotorje s pametnim telefonom ali katero koli napravo z avdio izhodom: tukaj predstavljam preprosto elektronsko montažo za nadzor do štirih servomotorjev s katero koli napravo, ki lahko prebere zvočno datoteko