Indholdsfortegnelse:
- Trin 1: Dele og software
- Trin 2: Byggeproces
- Trin 3: L293D -motordriver
- Trin 4: HC-05 Bluetooth
- Trin 5: Batteriovervågning
- Trin 6: HC-SR04 ultralydssensor
- Trin 7: Larson Scanner
- Trin 8: Kode
- Trin 9: Kamera
- Trin 10: MIT App Inventor2
- Trin 11: Tilslut din mobiltelefon til din RC -bil
- Trin 12: Du er færdig
Video: Robotbil med Bluetooth, kamera og MIT App Inventor2: 12 trin (med billeder)
2024 Forfatter: John Day | [email protected]. Sidst ændret: 2024-01-30 08:28
Har du nogensinde ønsket at bygge din egen robotbil? Nå … det er din chance !!
I denne instruktionsbog vil jeg vise dig, hvordan du laver en robotbil styret via Bluetooth og MIT App Inventor2. Vær opmærksom på, at jeg er en nybegynder, og at dette er min første instuctable, så vær venlig i dine kommentarer.
Der er mange instruktører derude, men i denne har jeg forsøgt at kombinere mange funktioner som: kamera streaming, forhindring af forhindringer, ultralydssensor, Larson scanner (med charlieplexing) og batteriovervågning til en Android App !!
Så lad os komme i gang og møde Frankie (den bruger ideer fra mange steder … derfra Robo Frankenstein)
Trin 1: Dele og software
Her i min hjemby er det svært at få alle delene, derfor kunne jeg få de fleste af dem fra www.aliexpress.com
Jeg vurderer, at projektet kan bygges til USD 25 - 30 uden at overveje den gamle mobiltelefon.
- Bilchassis: 3 hjul, 2 motorer 6V (USD 9)
- Arduino Nano (USD 2)
- Bluetooth HC-05 (3 til 4 USD)
- L293D -motordriver til at køre hjulmotorer (USD 1,50 for en del på 5 stykker)
- Gammel mobil med kamera og Wi-Fi
- Ultralydssensor HC-SR04 til måling til et objekt i nærheden (USD 1)
- 6 lysdioder til Larson scanner
- ATtiny85 til Larson scanner (USD 1)
- Brødbræt (USD 1)
- Ledninger
- 100K Ohm modstand (4)
- 1K Ohm modstand (2)
- 2K Ohm modstand (1)
- 270 Ohm modstand (3)
- Summer
Software:
- Arduino IDE
- IP -webcam (til gammel mobil Android)
- MIT App Inventor2: Denne app er fantastisk, men fungerer kun til Android -operativsystem (ingen Iphones … undskyld!)
Trin 2: Byggeproces
Bilchassis er meget let at samle; den har 2 motorer 6V, der driver baghjul og en 4 batteripakke.
Robotbilen styres via Bluetooth og Wi-Fi. Bluetooth styrer den serielle kommunikation mellem bilen og MIT App inventor2, og Wi-Fi bruges til at kommunikere med kameraet (gammel mobiltelefon) installeret foran bilen.
Til dette projekt har jeg brugt to sæt batterier: arduinoen drives af et 9V batteri og bilmotorerne af 6V (fire 1,5V AA batterier).
Arduino Nano er hjernen i dette projekt, der styrer bilen, summer, ultralydssensor HC-SR04, Bluetooth HC-05, Larson scanner (ATtiny85) og overvåger batterierne. 9V batteri går til Vin (pin 30) og Arduinos pin 27 giver 5V reguleret strøm til brødbrættet. Har brug for at binde alle grunde fra alle IC'er og batterier sammen.
Vedhæftet lavede kredsløbsdiagrammet det i Excel (Undskyld …. næste gang prøver jeg Fritzing). Jeg har forbundet alt ved hjælp af brødbræt og han til hanstik, min ligner en rotterede.
Trin 3: L293D -motordriver
L293D er en firdobbelt højstrøm halv-H driver designet til at levere tovejs drivstrømme på op til 600 mA ved spændinger 4,5V til 36V. Det bruges til at køre bilens hjul.
Den drives af en 6V batteripakke (fire 1,5V AA) til motorerne og bruger 5V til logikken, der kommer fra reguleret 5V (pin 27) i Arduino Nano. Forbindelser er vist i den vedlagte skema.
Det var ikke nødvendigt at installere det i en køleplade.
Trin 4: HC-05 Bluetooth
HC-05 Bluetooth drives af 5V (arduino pin 27), men det er vigtigt at forstå, at det logiske niveau er 3,3V, dvs. kommunikation (Tx og Rx) med 3,3V. Det er derfor, Rx skal konfigureres med maks. 3,3V, som kan opnås med en niveauskifteromformer eller, som i dette tilfælde, med en spændingsdeler ved hjælp af en 1K og 2K modstande, som det ses i kredsløbet.
Trin 5: Batteriovervågning
For at overvåge batteriniveauerne har jeg indstillet spændingsdelere for at bringe spændingsniveauer under 5V (Arduinos maksimale område). Spændingsdeleren reducerer spændingen, der måles til inden for området for Arduino analoge indgange.
De analoge indgange A4 og A6 bruges, og der bruges høje modstande (100K ohm) for ikke at dræne batterierne for meget i måleprocessen. Vi er nødt til at gå på kompromis, hvis modstande er for lave (10K ohm), mindre belastningseffekt, spændingsaflæsning er mere præcis, men mere strømtegning; hvis de er for høje (1M ohm), mere indlæsningseffekt, er spændingsaflæsning mindre præcis, men mindre strømtegning.
Batteriovervågning foretages hvert 10. sekund og vises direkte i din controller -mobiltelefon.
Jeg er sikker på, at der er masser af plads til forbedringer i denne del, da jeg læser fra to analoge ben, og den interne MUX skifter mellem dem. Jeg måler ikke flere målinger i gennemsnit, og det er måske det, jeg skal gøre.
Lad mig forklare følgende formel:
// Læs spænding fra analog pin A4, og foretag kalibrering for Arduino:
spænding1 = (analogRead (A4)*5,0/1024,0)*2,0; //8.0V
Arduino nano-kortet indeholder 8-kanals, 10-bit analog til digital konverter. Funktion analogRead () returnerer et tal mellem 0 og 1023, der er proportional med den spænding, der påføres stiften. Dette giver en opløsning mellem aflæsninger på: 5 volt / 1024 enheder eller, 0,0049 volt (4,9 mV) pr. Enhed.
Spændingsdeleren halverer spændingen, og for at få ægte spænding skal ganget med 2 !!
VIGTIGT: Jeg er sikker på, at der er en mere effektiv måde at drive en arduino på end den måde, jeg gør det på !! Som nybegynder har jeg lært på den hårde måde. Arduino Vin pin bruger en lineær spændingsregulator, hvilket betyder, at du med et 9V batteri brænder en stor del af strømmen i selve den lineære regulator! Ikke godt. Jeg gjorde det på denne måde, fordi det var hurtigt og bare fordi jeg ikke vidste bedre … men vær sikker på, at jeg i Robo Frankie version 2.0 helt sikkert vil gøre det anderledes.
Jeg tænker (højt), at en DC DC Step up Switching Power Supply og et Li-ion genopladeligt batteri måske er en bedre måde. Dit venlige forslag vil være mere end velkommen …
Trin 6: HC-SR04 ultralydssensor
HC-SR04 er en ultralydssensor. Denne sensor giver måling fra 2 cm til 400 cm med en nøjagtighed på op til 3 mm. I dette projekt bruges det til at undgå forhindringer, når det når 20 cm eller mindre, og også til at måle afstanden til ethvert objekt, der sendes tilbage til din mobiltelefon.
Der er en knap på din mobiltelefons skærm, der skal klikkes på for at anmode om afstand til et objekt i nærheden.
Trin 7: Larson Scanner
Jeg ville medtage noget sjovt, så jeg inkluderede Larson -scanner, der ligner K. I. T. T. fra Knight Rider.
Til Larson -scanneren har jeg brugt ATtiny85 med charlieplexing. Charlieplexing er en teknik til at køre et multiplekset display, hvor relativt få I/O -ben på en mikrokontroller bruges til at drive en række LED'er. Metoden anvender mikrokontrollernes tri-state logiske muligheder for at opnå effektivitet i forhold til traditionel multiplexering.
I dette tilfælde bruger jeg 3 ben fra ATtiny85 til at tænde 6 lysdioder !!
Du kan tænde "X" LED'er med N -ben. Brug følgende formel til at udlede, hvor mange lysdioder du kan køre:
X = N (N-1) lysdioder med N-ben:
3 ben: 6 lysdioder;
4 ben: 12 lysdioder;
5 ben: 20 lysdioder … du får ideen;-)
Strøm strømmer fra positiv (anode) til negativ (katode). Spidsen af pilen er katode.
Det er vigtigt at bemærke, at pin 1 (i Arduino IDE -kode) refererer til fysisk pin 6 i ATtiny85 (se vedhæftede pinout).
Vedhæftet finder du den kode, der skal uploades til ATtiny85, der styrer Larson -scanneren. Jeg beskriver ikke, hvordan man uploader en kode til ATtiny85, da der er masser af instruktører, der gør det som denne.
Trin 8: Kode
Jeg vedhæfter koden, der skal uploades til ATtiny85, der styrer Larson -scanneren og koden til Arduino nano's.
Hvad angår Arduino nano, har jeg brugt en del af koder fra andre instruktører (her) og foretaget ændringer, der passer til mine behov. Jeg har inkluderet et rutediagram (også i ord for et klarere billede) af koden for bedre at forstå, hvordan switch -case fungerer.
Vigtigt: For at uploade CarBluetooth-kode til Arduino nano skal du afbryde Rx og Tx fra HC-05 Bluetooth-modulet!
Trin 9: Kamera
IP -webcam -appen skal downloades fra play -butikken og installeres i din gamle mobiltelefon. Kontroller videopræferencer, juster opløsningen i overensstemmelse hermed, og gå endelig ned til den sidste kommando "Start server" for at starte transmissionen. Glem ikke at slå Wi-Fi til i mobiltelefonen !!
Trin 10: MIT App Inventor2
MIT App inventor2 er et skybaseret værktøj, der hjælper med at bygge apps i din webbrowser. Denne app (kun til Android -baseret mobil) kan derefter uploades til din celle og styre din robotbil.
Jeg vedhæfter.apk og.aia kode, så du kan se, hvad jeg har gjort, og kan ændre det, som du ønsker. Jeg har brugt en kode fra internettet (MIT App) og foretaget mine egne ændringer. Denne kode styrer robotbilens bevægelse, modtager signal fra ultralydssensor, tænder lys og bipper summeren. Det modtager også signal fra batterierne, der fortæller os spændingsniveauet.
Med denne kode vil vi kunne modtage to forskellige signaler fra bilen: 1) afstand til et objekt i nærheden og 2) spænding fra motor og arduinos batterier.
For at identificere den modtagne seriestreng har jeg inkluderet et flag i Arduinos kode, der angiver, hvilken type streng der er blevet sendt. Hvis Arduino sender afstanden målt fra ultralydssensoren, sender den et "A" -tegn foran strengen. Når Arduino sender batteriniveauer, sender det et flag med en "B" -tegn. I MIT App opfindere2 -kode har jeg analyseret den serielle streng, der kommer fra Arduino og kontrolleret for disse flag. Som sagt er jeg en nybegynder, og jeg er sikker på, at der er mere effektive måder at gøre dette på, og jeg håber, at nogen kan oplyse mig på en bedre måde.
Send Arduino_Bluetooth_Car.apk til din mobiltelefon (via e -mail eller Google Drev) og installer den.
Trin 11: Tilslut din mobiltelefon til din RC -bil
Først og fremmest skal du tænde for wi-fi i gammel mobiltelefon (den i RC-robot).
Tænd din wi-fi, Bluetooth i din controller-mobiltelefon, og åbn Arduino_Bluetooth_Car.apk, som du lige har installeret. I slutningen af skærmen (rul ned, hvis du ikke kan se det) vil du se to knapper: Enheder og TILSLUT. Klik på Enheder, og vælg Bluetooth fra din RC -bil (skulle være noget HC 05), klik derefter på TILSLUT, og du skulle se meddelelsen TILSLUTT nederst til venstre på skærmen. Første gang bliver du bedt om en adgangskode (indtast 0000 eller 1234).
Der er en boks, hvor du skal indtaste IP -adressen på din gamle celle (mobiltelefon, der er i din RC -bil), i mit tilfælde er det
Dette IP-nummer kan registreres i din Wi-Fi Router. Du skal komme ind på din routerkonfiguration, vælge Enhedsliste (eller sådan noget afhængigt af dit routermærke), og du skal kunne se din gamle mobilenhed, klikke på den og indtaste dette IP -nummer i denne boks.
Vælg derefter CAMERA, og du skal begynde at se kameraets streaming fra din RC -bil.
Trin 12: Du er færdig
Du er færdig! Begynd at lege med det
Fremtidige ændringer: Jeg vil ændre 9V batteriet med Li-ion batterier for at genoplade dem og bruge en DC-DC trin-up spændingsregulator, også vil jeg forbedre batteriovervågningen ved at inkludere udjævning (gennemsnit) af de analoge aflæsninger. Planlægger ikke at inkludere A. I. endnu …;-)
Jeg har deltaget i min første instruktive konkurrence … så stem venligst;-)
Anbefalede:
Spiderbot V2 Robotbil: 8 trin (med billeder)
Spiderbot V2 Robotbil: Spiderbot V2 er en opgraderingsversion af mit sidste projekt: https://www.instructables.com/id/3D-printed-Transformers-Robot-Spiderbot/ Spiderbot er inspireret af " Transformers ". Det er en RC firdobbelt robot og har to funktionsmåder: sp
OSOYOO 2WD Robotbil Starter Kit: 30 trin (med billeder)
OSOYOO 2WD Robot Car Starter Kit: Du kan købe denne bil fra Amazon: OSOYOO 2WD Robot Car Starter K it (US) OSOYOO 2WD Robot Car Starter Kit (UK) OSOYOO 2WD Robot Car Starter Kit (DE) OSOYOO 2WD Robot Car Starter Kit ( FR) OSOYOO 2WD Robot Car Starter Kit (IT) OSOYOO 2WD Robot Car Sta
Bluetooth -styret robotbil: 13 trin (med billeder)
Bluetooth -styret robotbil: var du altid fascineret af RC -biler? Har du nogensinde ønsket at lave en selv? styret af din egen smartphone? ---- > lad os starte, hey fyre, her i dette projekt har jeg forsøgt at lave en Bluetooth -kontrolleret bil ved hjælp af Arduino. Jeg har inc
Bluetooth -styret robotbil ved hjælp af Arduino: 8 trin (med billeder)
Bluetooth -styret robotbil ved hjælp af Arduino: I denne instruktive guide vil jeg guide dig til at lave en robotbil, der styrer Bluetooth fra din Android -mobiltelefon. Ikke nok med det, har robotbilen en særlig evne til at undgå forhindringer, som den møder, når den kører bilen fremad. Roboen
ESP8266 Robotbil programmeret med ESP8266 Basic: 18 trin (med billeder)
ESP8266 Robotbil programmeret med ESP8266 Basic: Jeg er en naturskolelærer på mellemskolen og også rådgiver i Robotic Club. Jeg har ledt efter mere omkostningseffektive måder at få robotter i hænderne på mine elever. Med de lave priser på ESP8266 -plader har jeg været i stand til at skabe en autonom