Sisällysluettelo:

UChip - Yksinkertainen luonnos kauko -ohjattaviin moottoreihin ja/tai servoihin 2,4 GHz: n radion Tx -Rx kautta!: 3 vaihetta
UChip - Yksinkertainen luonnos kauko -ohjattaviin moottoreihin ja/tai servoihin 2,4 GHz: n radion Tx -Rx kautta!: 3 vaihetta

Video: UChip - Yksinkertainen luonnos kauko -ohjattaviin moottoreihin ja/tai servoihin 2,4 GHz: n radion Tx -Rx kautta!: 3 vaihetta

Video: UChip - Yksinkertainen luonnos kauko -ohjattaviin moottoreihin ja/tai servoihin 2,4 GHz: n radion Tx -Rx kautta!: 3 vaihetta
Video: Lesson 101: Using IR Remote to control TV, AC Bulb with Relay, DC Motor and Servo Motor 2024, Heinäkuu
Anonim
Image
Image
UChip - Yksinkertainen luonnos kauko -ohjattaviin moottoreihin ja/tai servoihin 2,4 GHz: n radion Tx -Rx kautta!
UChip - Yksinkertainen luonnos kauko -ohjattaviin moottoreihin ja/tai servoihin 2,4 GHz: n radion Tx -Rx kautta!
UChip - Yksinkertainen luonnos kauko -ohjattaviin moottoreihin ja/tai servoihin 2,4 GHz: n radion Tx -Rx kautta!
UChip - Yksinkertainen luonnos kauko -ohjattaviin moottoreihin ja/tai servoihin 2,4 GHz: n radion Tx -Rx kautta!

Pidän todella RC -maailmasta. RC -lelun käyttö antaa sinulle tunteen, että hallitset jotain poikkeuksellista, vaikka se olisi pieni vene, auto tai drone!

Lelujen mukauttaminen ja niiden tekeminen ei kuitenkaan ole helppoa. Yleensä sinun on käytettävä lähettimen oletusasetuksia tai erityisesti suunniteltuja kytkinten ja nuppien yhdistelmiä.

Kaikkien hallitseminen haluamallasi tavalla on melko vaikeaa, lähinnä siksi, että RC-maailma vaatii melko syvää tietoa laitteistotason ohjelmoinnista saadakseen parhaan hyödyn.

Kokeilin monia alustoja ja asetuksia, mutta se maksoi aina valtavia ponnisteluja saadakseen riittävän mukavan koodin kanssa ennen kuin tein todellisia mukautuksia RC -lelulleni.

Minulta puuttui yksinkertainen luonnos, jonka voisin ladata Arduino IDE: n avulla ja jonka avulla voisin helposti muuntaa Radio RX: stä (vastaanottimesta) tulevat arvot haluttuun moottori/servo -ohjaimeen.

Siksi tässä on se, mitä loin pelatessani vähän uChipin ja Arduino IDE: n kanssa: Yksinkertainen luonnos moottorien ja/tai servojen kauko-ohjaamiseen 2,4 GHz: n Radio Tx-Rx: n kautta!

Materiaaliluettelo

1 x uChip: Arduino IDE -yhteensopiva levy

1 xTx-Rx-radiojärjestelmä: mikä tahansa radiojärjestelmä, jossa on cPPM-vastaanotin, on hyvä (yhdistelmäni on vanha Spectrum DX7 Tx + Oranssi R614XN cPPM Rx), varmista, että noudatat oikeaa sidontamenettelyä sitoaksesi Tx ja Rx.

1 x akku: suurpurkautumisvirtaparistot ovat tarpeen moottoreiden ja servojen kanssa.

Moottorit/Servot: tarpeidesi mukaan

Elektroniset komponentit moottorien/servojen käyttämiseen: yksinkertaiset vastukset, MOSFETit ja diodit mahdollistavat ajotavoitteen saavuttamisen.

Vaihe 1: Johdotus

Johdotus
Johdotus
Johdotus
Johdotus
Johdotus
Johdotus
Johdotus
Johdotus

Kytke komponentit yhteen kaavioiden mukaisesti.

Rx on kytketty suoraan uChipandiin eikä vaadi ulkoisia komponentteja. Jos käytät toista vastaanotinta, tarkista, tarvitsetko tasonsiirtimen vai et. Muista liittää cPPM -signaali uChip PIN_9: ään (joka on PORTA19, jos haluat mukauttaa koodin toiseen SAMD21 -korttiin).

Jäljellä olevat johdotukset ovat tarpeen moottorin ja/tai servon käyttämiseksi. Oheinen kaavio edustaa peruspiiriä uChipin suojaamiseksi piikeiltä/ylityksiltä, joita tavallisesti esiintyy induktiivisia kuormia käytettäessä. Keskeinen komponentti uChip -turvallisuuden säilyttämiseksi on 5,1 V: n Zener -diodi (kaaviossa D1), joka sinun on asetettava rinnakkain VEXT: n (uChip -nasta 16) ja GND: n (uChip -nasta 8) kanssa. Vaihtoehtoisesti voit Zener -diodin käyttämisen sijaan valita lisävarusteena piirin D2, C1 ja C2, mikä estää käänteiset piikit vahingoittamasta uChip -komponentteja.

Voit ajaa niin monta moottoria/servoa kuin tarvitset yksinkertaisesti toistamalla kaavion ja vaihtamalla ohjaustappeja (voit käyttää mitä tahansa tappia paitsi nastat (PIN_8 ja PIN_16) ja cPPM -nasta (PIN_9)). Huomaa, että vaikka tarvitset vain yhden suojapiirin, jota edustaa Zener -diodi (tai valinnaisen piirin komponentit), moottoriin/servokäyttöön liittyvät sähkökomponentit on toistettava niin monta kertaa kuin moottorien lukumäärä. servoja, joita aiot ajaa.

Koska halusin ajaa vähintään 2 moottoria ja 2 servoa, tein pienen piirilevyn, joka toteutti kuvatun piirin ja joka näkyy kuvassa. Ensimmäinen prototyyppi tehtiin kuitenkin proto-levylle käyttäen lentäviä johtoja.

Et siis tarvitse juotos-/piirilevyjen suunnittelutaitoja tämän yksinkertaisen projektin toteuttamiseksi:)

Vaihe 2: Ohjelmointi

Ohjelmointi
Ohjelmointi

Tässä on taikuutta! Tässä asiat kiinnostavat.

Jos olet rakentanut edellisessä kaaviossa kuvatun piirin, voit ladata luonnoksen “DriveMotorAndServo.ino” ja kaiken pitäisi toimia.

Katso koodi ja tarkista, miten se toimii.

Alussa käytetään muutamia #define määritellä:

- Rx: n kanavat (6Ch ja Orange 614XN)

- nastat, joihin moottorit/servot on kiinnitetty

- Maksimi ja minimi, joita käytetään servolle ja moottoreille

- Maksimi ja minimi, joita käytetään radiokanavien alueella

Sitten on muuttujien ilmoitusosa, jossa moottorit/servomuuttujat ilmoitetaan.

Jos käytät useampaa kuin yhtä moottoria ja yhtä servoa, kuten edellisessä kaaviossa on kuvattu, sinun on muokattava luonnosta ja lisättävä koodi, joka käsittelee liitettyjä lisämoottoreita/servoja. Sinun on lisättävä niin monta servoa, servo_arvoa ja moottorin_arvoa kuin monta servoa/moottoria käytät.

Muuttujien ilmoitus -osiossa on myös joitain haihtuvia muuttujia, joita käytetään cPPM -signaalin kaappaukseen. ÄLÄ MUUTA näitä muuttujia!

Seuraavaksi sinun on tehtävä silmukka () -funktio. Täällä voit päättää, mitä tulevien kanavien arvoa käytetään.

Minun tapauksessani liitin saapuvan arvon suoraan moottoriin ja servoon, mutta olet tervetullut muuttamaan sen tarpeidesi mukaan! Tähän opetusohjelmaan linkitettyihin videoihin ja kuviin liitin 2 moottoria ja 2 servoa, mutta niitä saattaa olla 3, 4, 5,… enimmäisvapaaseen nastaan asti (13 uChipin tapauksessa).

Löydät kaapatun kanavan arvon ch [index] -matriisista, jonka "indeksi" on 0 - NUM_CH - 1. Jokainen kanava vastaa radiosi tikkua/kytkintä/nuppia. Sinun tehtäväsi on ymmärtää mikä on:)

Lopuksi otin käyttöön joitakin virheenkorjaustoimintoja helpottaakseni tapahtumien ymmärtämistä. Kommentoi/poista #define DEBUG -toiminto, joka tulostaa natiivin SerialUSB -kanavan arvon.

VIHJE: Silmukka () -funktion alla on enemmän koodia. Tämä koodin osa on tarpeen uChip -virtapistokkeiden asettamiseksi, sieppauksen vertailutoiminnon aiheuttamien keskeytysten käsittelemiseksi, ajastimien asettamiseksi ja virheenkorjaustarkoituksen määrittämiseksi. Jos sinusta tuntuu tarpeeksi rohkealta pelata rekisterien kanssa, voit muokata sitä!

Edit: Päivitetty luonnos, korjattu virhe kartoitustoiminnossa.

Vaihe 3: Pelaa, aja, rotu, lennä

Image
Image

Varmista, että Tx- ja Rx -järjestelmä on liitetty oikein. Käynnistä se kytkemällä akku. Tarkista, että kaikki toimii. Voit laajentaa toimintoja tai muuttaa kunkin kanavan toimintoja haluamallasi tavalla, koska nyt hallitset tulevaa RC -malliasi täysin.

Rakenna nyt räätälöity RC -malli!

P. S.: koska sitominen voi olla melko tylsää, aion julkaista pian luonnoksen, joka mahdollistaa Tx-Rx-järjestelmän sitomisen ilman manuaalista tekemistä. Pysy kuulolla päivitysten suhteen!

Suositeltava: