Inhoudsopgave:

Een nieuwe manier om Arduino een RC-auto te besturen - Ajarnpa
Een nieuwe manier om Arduino een RC-auto te besturen - Ajarnpa

Video: Een nieuwe manier om Arduino een RC-auto te besturen - Ajarnpa

Video: Een nieuwe manier om Arduino een RC-auto te besturen - Ajarnpa
Video: Microbit - op afstand bestuurbare auto - remote control 2wd rc car 2024, November
Anonim
Een nieuwe manier om Arduino een RC-auto te besturen
Een nieuwe manier om Arduino een RC-auto te besturen

Ik heb wat werk gedaan met door Arduino bestuurde auto's, maar de auto's waaraan ik heb gewerkt, zijn altijd traag en methodisch geweest. Dit is geweldig als je arduino leert, maar ik wilde iets meer … leuks. Stap in de RC-auto.

RC-auto's zijn letterlijk ontworpen om zo leuk mogelijk te rijden - het zijn speelgoed! Ik ging op YouTube, maar alles wat ik vond was een heleboel te gecompliceerde manieren om een RC-auto om te zetten in Arduino-besturing. Ik dacht dat er eenvoudigere manieren moesten zijn om dit te doen, dus ging ik op zoek naar mijn eigen manier om een RC-auto om te zetten in Arduino-besturing, waarbij ik de nadruk legde op eenvoud en effectiviteit.

In plaats van de auto te strippen en opnieuw te beginnen, dacht ik dat het een stuk makkelijker zou zijn om mee te liften op de bestaande infrastructuur. Er zijn een aantal echt coole voordelen aan deze methode.

Ik heb de controller van de auto gehackt, maar de auto zelf onaangeroerd gelaten. Hierdoor kon ik de auto veel goedkoper autonoom besturen, met behulp van het radiosysteem dat ze al hebben.

Ik hou van deze oplossing omdat het elegant, gemakkelijk, goedkoop en uitbreidbaar is. Ik hoop dat je het net zo nuttig vindt als ik!

Stap 1: proefrit

Image
Image

Je wilt echt de auto openbreken en aan de slag gaan. Maar wacht! Je hebt net deze geweldige nieuwe RC-auto, neem even de tijd om een beetje kinderachtig te doen en rond te rijden! Mijn vrienden en ik hadden veel plezier met het rondrennen met een RC-auto "voor de wetenschap". Onze favoriete plekken om rond te rijden waren een lokaal skatepark en een oude honkbaldiamant. Deze plaatsen waren geweldig voor het oefenen van sprongen en donuts, bekijk de slow-mo-video die we hebben gekregen!

Stap 2: Open de controller

Open de controller
Open de controller
Open de controller
Open de controller

Elke controller is anders, dus het is belangrijk om binnen te kijken om erachter te komen waar je mee te maken hebt. Mijn controller had een trigger voor het gas en een schuimwiel om te draaien. Het blijkt dat zowel de trekker als het wiel slechts complexe behuizingen waren voor potentiometers! Dit is superhandig omdat we dit gemakkelijk kunnen vervalsen met een arduino.

Neem even de tijd om erachter te komen waar de potentiometers op het bord zijn aangesloten. Ze zouden daar 3 gesoldeerde draden moeten hebben: stroom, aarde en gegevens. Dit wordt binnenkort belangrijk.

Stap 3: Multimeter

Ik kwam een probleem tegen en ik vergat te proberen een multimeter te gebruiken. Nadat ik me er eindelijk aan herinnerde de multimeter te gebruiken, loste het al mijn problemen op!

Multimeters zijn als de printstatements in je code, de editor voor je paper. In dit geval hielp de multimeter me om te begrijpen hoe de potentiometers waren aangesloten, zodat ik ze beter kon vervalsen met de Arduino.

Om erachter te komen hoe uw potentiometers zijn aangesloten, raakt u eenvoudig de grond tegen de grond en de rode draad van uw multimeter aan de datapin van het bord. De volgorde moet duidelijk zijn uit de kleur van de draden, maar als dat niet het geval is, is de datapin degene die van waarde verandert als de potentiometer wordt gedraaid.

Vervolgens heb ik de waarden van de datalijn opgenomen in het middelpunt (de standaardpositie) en aan beide polen. Op deze manier zou ik weten wat 0 was en in welke richting ik moest gaan om de snelheid te verhogen of te verlagen, of om naar links of rechts te draaien. Hier zijn mijn metingen:

  • 0 maximale snelheid
  • 1.75v geen beweging
  • 3.0v max achteruit
  • 0 max linksaf
  • 1.57 geen beurt
  • 3.37 max rechtsaf

Ik was van plan om toch een Adafruit-veer te gebruiken om de auto te besturen, omdat ik het bord leuk vind, maar deze metingen ondersteunen die beslissing. De veer werkt op 3.3v-logica, wat heel goed aansluit bij dit analoge bereik. Dit zou ook kunnen met een 5v-bord, maar je zou voorzichtiger moeten zijn met de maximale analoge spanning die je levert.

Stap 4: Test het

Image
Image

Deze stap is optioneel, maar ik vind dat het altijd beter is om de tussenliggende stappen indien mogelijk met bedieningselementen te testen. Ik heb een desktop-powerbank gebruikt om de controller aan te sluiten met krokodillenklemmen (na het desolderen van de datalijnen) en verschillende spanningen te testen. Het was geweldig om aan de knop op de powerbank te draaien om de spanning te variëren en de wielen te zien draaien alsof ik ze met de controller liet bewegen.

Stap 5: Sluit de Arduino aan

Sluit de Arduino aan
Sluit de Arduino aan
Sluit de Arduino aan
Sluit de Arduino aan

Deze stap was eigenlijk vrij eenvoudig, maar ik deed een paar dingen die dit werk een stuk beter maakten. Hier is mijn methode:

  1. Desoldeer de datalijnen van de twee potentiometers, aan de bordzijde.
  2. Soldeer de losse draden aan een mannelijke stekker: snelheid naar stroom en draaien naar aarde.
  3. Soldeer een bijpassende vrouwelijke stekker op het bord, zodat het, als het wordt aangesloten, hetzelfde werkt als voorheen.
  4. Soldeer een mannelijke stekker aan de arduino.

    • Eén draad naar de ingebouwde DAC (op mijn bord was dit pin A0, niet alle borden hebben dit dus controleer eerst!).
    • Als je toevallig een Arduino Due of iets dergelijks gebruikt, sluit dan de andere draad aan op de tweede ingebouwde DAC.
    • Sluit anders de andere draad aan op de uitgang van een externe DAC; Ik heb een extern DAC-breakoutboard gekocht van adafruit.
    • Sluit de andere pinnen van de externe DAC aan op de Arduino.
  5. Sluit de aardleiding van een van de potentiometers aan op de aarde van de Arduino

    Door een gemeenschappelijke basis te bieden, wordt interferentie drastisch verminderd

Stap 6: Programmeer uw nieuwe autonome auto

Image
Image

Nu kunt u uw RC-auto autonoom besturen! Je zult een bibliotheek moeten gebruiken als je een externe DAC gebruikt, maar verder zou de programmering vrij eenvoudig moeten zijn. Zoals je misschien al geraden hebt uit de bedrading, is het cruciaal om een echt analoog signaal te gebruiken. In het begin probeerde ik het werkend te krijgen met een PWM-signaal, maar het had verwarrende en over het algemeen slechte resultaten. Met echte analoge uitgangen werkt het echter geweldig!

Begin met geometrische vormen en patronen die anders moeilijk te maken zouden zijn met de controller. Het eerste waarvoor ik de mijne heb geprogrammeerd, was bijvoorbeeld om in perfecte cirkels met verschillende diameters te rijden.

Dit is ook de lichtste modificatie die ik heb gezien om autonoom een rc-auto te besturen, en je zult veel leren over hoe ze werken tijdens het proces!

Stap 7: Volgende stappen

Het grote nadeel van deze oplossing is dat ik geen tweerichtingscommunicatie heb. Dit betekent dat ik de auto-instructies kan verzenden, maar geen sensorgegevens kan ontvangen.

Het volgende dat ik van plan ben te doen, is dit probleem aanpakken, hetzij door de autozijde te hacken om gegevens terug te sturen, of door een aparte link op te zetten om sensorgegevens door te geven. Als ik een aparte koppeling instel, hoeft deze niet zo betrouwbaar te zijn als de hoofdaandrijfkoppeling omdat de motorbesturing belangrijker is.

Aanbevolen: