Sadržaj:

Novi način za Arduino upravljanje RC automobilom: 7 koraka (sa slikama)
Novi način za Arduino upravljanje RC automobilom: 7 koraka (sa slikama)

Video: Novi način za Arduino upravljanje RC automobilom: 7 koraka (sa slikama)

Video: Novi način za Arduino upravljanje RC automobilom: 7 koraka (sa slikama)
Video: CS50 2014 – 9-я неделя 2024, Srpanj
Anonim
Novi način za Arduino upravljanje RC automobilom
Novi način za Arduino upravljanje RC automobilom

Radio sam neke poslove s automobilima kontroliranim Arduinom, ali oni na kojima sam radio uvijek su bili spori i metodični. Ovo je sjajno pri učenju arduina, ali htio sam nešto više … zabavno. Uđite u RC automobil.

RC automobili doslovno su dizajnirani da budu što zabavniji u vožnji - oni su igračke! Otišao sam na YouTube, ali sve što sam pronašao je hrpa previše kompliciranih načina pretvaranja RC automobila u Arduino kontrolu. Mislio sam da moraju postojati jednostavniji načini za to, pa sam krenuo pronaći svoj vlastiti način pretvaranja RC automobila u Arduino kontrolu, naglašavajući jednostavnost i učinkovitost.

Umjesto da izvadim automobil i krenem ispočetka, mislio sam da bi bilo puno lakše povratiti postojeću infrastrukturu. Ova metoda ima neke jako dobre prednosti.

Hakirao sam kontroler automobila, ali sam sam automobil ostavio netaknut. To mi je omogućilo autonomno upravljanje automobilom po znatno jeftinijoj cijeni, koristeći radio sustav koji već imaju.

Ovo rješenje mi se sviđa jer je elegantno, jednostavno, jeftino i proširivo. Nadam se da će vam biti koristan kao i meni!

Korak 1: Testna vožnja

Image
Image

Stvarno želite otvoriti automobil i početi. Ali čekaj! Upravo ste dobili ovaj sjajan novi RC automobil, odvojite trenutak da se ponašate pomalo djetinjasto i vozite ga uokolo! Moji prijatelji i ja smo se jako zabavljali trčeći uokolo s RC automobilom "za znanost". Naša omiljena mjesta za vožnju bili su lokalni skate park i stari bejzbolski dijamant. Ova su mjesta bila izvrsna za vježbanje skokova i krafni, pogledajte spor mo video koji smo dobili!

Korak 2: Otvorite kontroler

Otvorite kontroler
Otvorite kontroler
Otvorite kontroler
Otvorite kontroler

Svaki kontroler je drugačiji, pa je važno pogledati unutra kako biste shvatili s čime imate posla. Moj kontroler je imao okidač za plin i kotačić od pjene za okretanje. Ispada da su i okidač i kotač bili samo složena kućišta za potenciometre! Ovo je super prikladno jer to možemo lako prevariti s arduinom.

Odvojite minutu da shvatite gdje se potenciometri spajaju na ploču. Tu bi trebali imati 3 lemljene žice: napajanje, uzemljenje i prijenos podataka. Ovo će uskoro biti važno.

Korak 3: Multimetar

Naišao sam na problem i zaboravio sam pokušati koristiti multimetar. Nakon što sam se napokon sjetio koristiti multimetar, riješio je sve moje probleme!

Multimetri su poput ispisa ispisa u vašem kodu, uređivača vašeg papira. U ovom slučaju, multimetar mi je pomogao razumjeti način na koji su potenciometri spojeni kako bih ih mogao bolje lažirati s arduinom.

Da biste shvatili kako su vaši potenciometri spojeni, jednostavno dodirnite tlo uzemljenje, a crvenu žicu vašeg multimetra do podatkovnog pina na ploči. Redoslijed bi trebao biti jasan iz boje žica, ali ako nije, podatkovni pin će biti taj koji će promijeniti vrijednost dok se okreće potenciometar.

Zatim sam zabilježio vrijednosti podatkovne linije na sredini (zadani položaj) i na oba pola. Na ovaj način bih znao što je 0 i u kojem smjeru ići za povećanje ili smanjenje brzine ili za skretanje ulijevo ili udesno. Evo mojih mjera:

  • 0 maksimalna brzina
  • 1.75v bez kretanja
  • 3.0v max unatrag
  • 0 max skretanje ulijevo
  • 1.57 bez skretanja
  • 3,37 max skretanje udesno

Planirao sam koristiti Adafruit pero za upravljanje autom jer mi se ploča sviđa, ali ova mjerenja podržavaju tu odluku. Perje radi na 3.3v logici, što se jako dobro slaže s ovim analognim rasponom. To se može učiniti i s 5v pločom, ali morate biti oprezniji pri maksimalnom analognom naponu koji opskrbljujete.

Korak 4: Isprobajte

Image
Image

Ovaj korak nije obavezan, ali smatram da je uvijek bolje isprobati srednje korake pomoću kontrola, ako je moguće. Koristio sam stolnu banku za napajanje da bih spojio kontroler sa štipaljkama od aligatora (nakon odlemljivanja podatkovnih vodova) i testirao različite napone. Bilo je strašno okrenuti gumb na power poweru da promijeni napon i gledati kako se kotači okreću kao da sam ih natjerao da se kreću pomoću kontrolera.

Korak 5: Priključite Arduino

Priključite Arduino
Priključite Arduino
Priključite Arduino
Priključite Arduino

Ovaj korak je zapravo bio prilično jednostavan, ali učinio sam nekoliko stvari koje su učinile ovaj rad puno boljim. Evo moje metode:

  1. Odlijepite podatkovne vodove s dva potenciometra, sa strane ploče.
  2. Lemljenje labavih žica na muški utikač: brzina na napajanje i okretanje na masu.
  3. Lemiti odgovarajući ženski utikač na ploču, tako da bi, ako je priključen, funkcionirao isto kao i prije.
  4. Lemite muški utikač na arduino.

    • Jedna žica do ugrađenog DAC -a (na mojoj ploči ovo je pin A0, nemaju ga sve ploče pa provjerite prvo!).
    • Ako slučajno koristite Arduino Due ili slično, povežite drugu žicu s drugim ugrađenim DAC -om.
    • U protivnom spojite drugu žicu na izlaz vanjskog DAC -a; Kupio sam vanjsku DAC probojnu ploču od adafruta.
    • Spojite druge pinove vanjskog DAC -a na Arduino.
  5. Spojite uzemljenje jednog od potenciometara na uzemljenje Arduina

    Pružanje zajedničke osnove pomaže dramatično smanjiti smetnje

Korak 6: Programiranje vašeg novog autonomnog automobila

Image
Image

Sada možete autonomno upravljati svojim RC automobilom! Morat ćete koristiti knjižnicu ako koristite vanjski DAC, ali u protivnom bi programiranje trebalo biti prilično jednostavno. Kao što ste možda pretpostavili iz ožičenja, ključno je koristiti pravi analogni signal. U početku sam pokušavao postići da radi s PWM signalom, ali imao je zbunjujuće i općenito loše rezultate. Međutim, s pravim analognim izlazima, radilo je sjajno!

Počnite s geometrijskim oblicima i uzorcima koje bi inače bilo teško izraditi pomoću kontrolera. Na primjer, prvo što sam programirao za svoje bilo je vožnja u savršenim krugovima različitog promjera.

Ovo je ujedno i najlakša modifikacija težine koju sam vidio za autonomnu kontrolu RC automobila, a naučit ćete mnogo o tome kako oni rade tijekom procesa!

Korak 7: Sljedeći koraci

Glavni nedostatak ovog rješenja je to što nemam dvosmjernu komunikaciju. To znači da mogu poslati upute za automobil, ali ne mogu primiti podatke senzora.

Sljedeće što planiram učiniti je riješiti ovaj problem, bilo hakiranjem bočne strane automobila radi slanja podataka natrag, ili postavljanjem zasebne veze za prijenos podataka senzora. Ako postavim zasebnu vezu, ona neće morati biti pouzdana kao glavna veza pogona jer su kontrole motora važnije.

Preporučeni: