Arduino RC bil med FPV Camera (9 / 15 steg)

Steg 9: Bilen gas och styrning



Den gas och styrning på bilen är "analog", vilket innebär att med hjälp av XBox controller, bilen kan flytta på en rad olika hastigheter, och vända på en rad styra vinklarna. Den rätt trigger används för framlänges, vänster utlösaren används för omvänd och vänster styrspak används för styrning (dessa är standardkontroller för XBox spel). För att överföra dessa "analoga" ingångar från XBox-handkontrollen till bilen, färdas data genom program som följer:

Throttle Data - C#:

1. statusen XBox Controller läses. Vänster/höger avtryckare värden sparas som flöten

2. en jämförelse görs mellan de två trigger värdena. Det större värdet används och det lägre värdet ignoreras (t.ex om både framåt och bakåt är nere, det större värdet "vinner")

3. värdet är multiplicerat med 100, och manipuleras så att 0 hastighet är värdet 500. Detta innebär att full fart bakåt är motsvarande värdet "400", och full fart framåt är värdet "600". Detta gjordes för att förhindra att behöva använda negativa tal, och valet av 500 som mittpunkten var helt godtyckligt.

4. det nya spjäll värdet konverteras till en sträng (som 3 siffror).

5. spjäll strängen läggs till Utdatasträngen C#, och skickas till Arduino när det behövs.

Throttle Data - Arduino:

1. Arduino får full sträng, och sparar gas tecken till en karaktär array.

2. gasen karaktär array konverteras till ett int

3. använda funktionen "karta", spjäll värdet konverteras till ett kompatibelt värde för ESC. ESK accepterar samma styrsignaler som servomotorer, så Servo typen används för att skriva ett "graden" värde till ESC stift. ESK har kalibrerats så att 0 grader är full fart bakåt och 180 grader är full fart framåt. 90 grader är 0 hastighet.

4. värdet skrivs till ESC.

I C#-koden ser du också några extra funktioner som manipulerar gasreglaget. Dessa ingick att förändra körsättet, men jag har inte hittat dem som användbara. En av dessa funktioner innebär en linjär/fyrkant/kubik gas läge. Linjärt läge finns en 1:1-relation mellan avtryckaren position och hastighet. Så, att trycka framåt avtryckaren halvvägs resultaten i bilen rör sig med hälften av dess max hastighet. Fyrkantiga läge innebär kvadratur raw värdet, så att trycka på avtryckaren halvvägs leder till bilen rör sig med en fjärdedel av dess max hastighet. Detta ger mer utbud av kontroll vid lägre hastigheter, och mindre vid högre hastigheter. Dessa spjäll lägen kan väljas med droppa ned låda på C# program GUI (med en mus).

Den andra funktionen innebär förmågan att aktivera/inaktivera "långsamt mode", genom att trycka på B-knappen på XBox-handkontrollen. Långsam läge begränsar bilens toppfart till hälften av dess max hastighet. Så, kan du använda alla de triggers för att styra lägre hastigheter. Detta läge faktiskt är praktiskt ibland - det är bra för exakt kontroll vid låga hastigheter.

Styrningen är ganska lika till spjäll. Hur data färdas är:

Styrning Data - C#:

1. statusen XBox Controller läses. Vänster styrspak x-värde sparas som en flöte

2. värdet multipliceras med 100, och 500 läggs. Detta innebär att hela vänster är motsvarande värdet "400", och full rätt är värdet "600". Detta gjordes för att förhindra att behöva använda negativa tal som gasen, och valet av 500 som mittpunkten var helt godtyckligt.

3. det nya styrsystemet värdet konverteras till en sträng (som 3 siffror).

4. styrning strängen läggs till Utdatasträngen C#, och skickas till Arduino när det behövs.

Styrning Data - Arduino:

1. Arduino får full sträng, och sparar styrning tecken till en karaktär array.

2. styrning karaktär array konverteras till ett int

3. använda funktionen "karta", styrning värdet konverteras till ett kompatibelt värde för styrning servo. Observera att styrning servo inte har ett fullständigt utbud av 0 till 180. På min bil, full vänster är 133 grader och full rätt är 60 grader, med ett centrum värde på ca 96 grader

4. värdet skrivs till styrning servo.

Som gasreglaget, kan styrningen konfigureras till linjär/fyrkant/kubik läge i C# program. Jag tyckte att detta var lite meningslöst, på grund av den relativt litet utbud i styrutslag för min bil. Eftersom hjulen inte vänder långt, är det lätt att få dem till rätt vinkel i linjära läge.

Observera om Arduino Servo bibliotek:

När jag höll på att utveckla den Arduino skissen, använde jag standardbiblioteket för Arduino Servo för både ESC och styrning servo. När jag presenterade NeoPixel pinnen, Servo biblioteket inte kunde användas längre (se https://learn.adafruit.com/neopixels-and-servos). TiCoServo biblioteket fungerar lika bra i min RC bil, men det finns gränser - endast två servon kan användas samtidigt, bara en liten uppsättning stift kan användas (även på en Arduino Mega), och endast specifika par av dessa stift kan arbeta tillsammans. Sist var listat ut genom försök och misstag...

Se Steg
Relaterade Ämnen

Kontroll Arduino RC bil med android telefon & 1Sheeld

Om du vill kontrollera RC bil med din android smartphone utan att använda Bluetooth-modul och programmering android ansökan, kan du använda 1Sheeld i stället för dem.I grund och botten består 1Sheeld av två delar. Den första delen är en sköld som är...

Arduino RC bil med lång räckvidd och anpassade sändare.

Hej! Detta är min första instructable.I det ska jag visa dig hur man gör en RC bil med Arduino och den trådlösa modulen nrf24l01 +, eller hur du uppgraderar ett billigt 27 MHz RC bil.Den gamla RC bil, som från jag ta chassit och heli Controller, jag...

1. BM ARDUINO kontrollerad bil med HC-SR04

Med detta projekt vill jag visa dig vägen om hur du konverterar en RC bil in i en bil kontrolleras bil med Arduino Uno R3.Steg 1: Material som behövs: RC bil (med avskilda bakhjulet motorer)Arduino Uno R39V battarySladdarUltra Sonic sensor HC-SR04Str...

Arduino kontrollerad bil med colission undvikande

Tanke på rätt tid och kärlek, kommer att denna bil undvika saker framför den. kom och följ med när vi går igenom stegen för att bygga detta awesome projekt...Steg 1: Samla material Ta en gammal bil från din lokala sparsamhet butik, och samla in alla...

RC tank med en glidande FPV camera

Hej.I detta instructable jag visa dig hur man bygger fjärrkontroll tank med FPV camera. I början jag bygger bara RC tank utan FPV kamera men när jag körde det i huset har jag inte sett vart det är. Så jag kom på att jag kommer att lägga till det kame...

Autonoma Arduino bil med infraröd närhets-Sensor

Detta Instructable visar hur du ändrar en preloved RC bil så det kan styras med en Arduino. Sedan visar Instructable dig hur man gör RC kör en enkel figur 8 kod därifrån Instructable visar dig hur du lägger till en infraröd rörelsesensor så det kan i...

Bluetooth kontrollerad Arduino RC bil

detta projekt är något som jag började för min Microcontroller klass. Vi var i uppdrag att plocka antingen Arduino eller Raspberry pi och sedan få MCU styra en RC bil eller göra något fancy med en RC bil; Sedan när vi bestämt vad vi ska göra skulle v...

Remote Control bil med Arduino och Bluetooth

Projektet består i att göra en fjärrkontroll bil använder en bluetooth-anslutning. Denna bil är tänkt att användas i en ballong poppar konkurrens mot andra liknande bilar. Den trådlösa anslutningen uppnås genom att använda en bluetooth-modul som är a...

Datorstyrd RC bil med två Arduinos

krävs delar: detta projekt kräver två Arduino styrelser som kan köpas från http://www.adafruit.com/category/17Detta projekt använder två Arduino Uno kompatibel styrelser.En L293D eller andra Dual H-Bridge motorn förarens chip kommer att behövas att k...

Hur man gör en trådbunden Rc bil med en Arduino

Jag ska visa dig hur man gör en RC bil med en arduinoSteg 1: material2 Arduino unos (det är vad jag använde bara.)Hoppare ledningar och manliga till kvinnliga ledningar2 Arduino joysticks2 9v batterier1 9.6v laddningsbara RC bilbatteri1 tower Pro Ser...

Snabba Controlled RC bil med (4 CH Motor Driver styrenhet + Arduino + Bluetooth)

Hej, eftersom detta är min första instructable här, jag hoppas du gillar det och Känn dig fri att fråga om något inte klart i den.För det första, jag började detta projekt efter jag ville styra 4 motorer som kräver relativt hög effekt (12Volts, 4 amp...

Arduino Bluetooth RC bil med LCD-

LCD-skärmen visar var din bil riktning (till exempel rör framåt, bakåt,..)Jag har bara ändrat koden och bifoga en LCDSteg 1: Reservdelslista Arduino unoHC06 Bluetooth-modulL293D motorn förarensLCD 16 * 2Bil chassiVarierande resistorBatteri (jag använ...

Bygga ett högpresterande FPV Camera Quadcopter

Detta Instructable kommer att visa dig, i detalj, hur man bygger en hög kvalitet quadcopter för flygande FPV och inspelning antenn bilder/video.Vi vet alla människor inte kan flyga. Våra ben är alltför tät och flaxa med armarna inte producerar tillrä...

Android kontrollerade RC bil med Video i realtid via Bluetooth & Wi-Fi

på Internet finns det många artiklar om användningen av RC bilar med IP eller webbaserade kamera. Men de flesta av dem används en bärbar dator eller en intern router med Open-WRT eller DD-WRT firmware. Visa video och kontroll av RC bil i sådana proje...

Bearbetning kontroller R/C bil med XBee moduler

detta instructable är en modifiering av min presentation till Bearbetning Chicago gemenskapen vid (EVL) elektroniska visualisering Laboratory, University of Illinois i Chicago den 1 okt 2012. I ämnetBearbetning bibliotek serienBearbetning och trådlös...

Hur man styr alla R/C bil med ett flygplan sändare!

Har du någonsin undrat om du använda din R/C flygplan sändare för att styra alla R/C bil också?Hur häftigt vore det att ha 6 eller fler kanaler för att styra din R/C bil, och även anpassa varje kanal enligt ditt val?Jag har längtat att göra något så...

Arduino Bluetooth bil kontrolleras av Labview

Detta är en Arduino RC bil, ursprungligen baserade bort av ett projekt av Owen_soo. Det är mycket lättmanövrerad, kunna göra snabba svängar, gå bakåt och framåt med bara en hjälp av en strömbrytare. Detta ursprungligen bara kommer att vara en mycket...

Arduino kontrollerad bil Tracking System baserade på SMS-

Hej jag gjorde en Arduino kontrollerad bil Tracking System baserat på SMS för min fars bil.Använda modulerna är;Arduino nano V3.0SkyLab GPS-modulenWaveCom GSM-modulSoftwareSerial bibliotek, TinyGPS används för att kommunicera med moduler.När jag ring...

Pinewood derby video bil (med fjädring)

år min äldsta söner Cub Scout pack hade en öppen avdelning. Jag tror bilarna att barnen loppet bör vara sin egen skapelse. Så efter att ha tjänstgjort som säkerhet-skärm för att skapa verkliga bilen. Jag skapade en video bil med mina yngre barn.Steg...