Innehållsförteckning:

Ultrasonic Range Finder -handledning med Arduino och LCD: 5 steg
Ultrasonic Range Finder -handledning med Arduino och LCD: 5 steg

Video: Ultrasonic Range Finder -handledning med Arduino och LCD: 5 steg

Video: Ultrasonic Range Finder -handledning med Arduino och LCD: 5 steg
Video: Control Position and Speed of Stepper motor with L298N module using Arduino 2024, December
Anonim
Ultrasonic Range Finder -handledning med Arduino och LCD
Ultrasonic Range Finder -handledning med Arduino och LCD

Många har skapat instruktioner om hur du använder Arduino Uno med en ultraljudssensor och ibland även med en LCD -skärm. Jag har dock alltid funnit att dessa andra instruktioner ofta hoppar över steg som inte är uppenbara för nybörjare. Som ett resultat har jag försökt skapa en självstudie som innehåller alla möjliga detaljer så att andra nybörjare förhoppningsvis kan lära av det.

Jag använde först en Arduino UNO men fann att den var lite stor för ändamålet. Jag undersökte sedan Arduino Nano. Denna lilla bräda erbjuder nästan allt som UNO gör, men med ett mycket mindre fotavtryck. Med lite manöver fick jag den att passa på samma brödbräda som LCD -skärmen, ultraljudssensorn och de olika trådarna, motstånden och potentiometern.

Den resulterande byggnaden är helt funktionell och är ett bra steg för att göra en mer permanent installation. Jag bestämde mig för att göra min första Instructable att dokumentera denna process och förhoppningsvis hjälpa andra som vill göra samma sak. Om möjligt har jag angett varifrån jag har fått min information och jag har också försökt lägga in så mycket stödjande dokumentation i skissen som möjligt för att låta alla som läser den förstå vad som händer.

Steg 1: Delar du behöver

Delar du behöver
Delar du behöver
Delar du behöver
Delar du behöver
Delar du behöver
Delar du behöver

Det finns bara en handfull delar som du behöver och som tur är är de väldigt billiga.

1 - Brödbräda i full storlek (830 stift)

1 - Arduino Nano (med stifthuvuden installerade på båda sidor)

1 - HC -SRO4 ultraljudssensor

1 - 16x2 LCD -skärm (med en enda rubrik installerad). OBS: du behöver inte den dyrare I2C -versionen av denna modul. Vi kan arbeta direkt med 16 -stifts "grundläggande" enhet

1 - 10 K Potentiometer

1 - Ballastmotstånd för användning med LED -bakgrundsbelysningen för 16x2 (normalt 100 Ohm- 220 Ohm, jag hittade ett 48 Ohm motstånd som fungerade bäst för mig)

1 -1K Ohm belastningsbegränsande motstånd -för användning med HC -SR04

Brödbrädrådar i olika längder och färger.

VALFRITT - Strömförsörjning för brödbräda - En strömmodul som ansluts direkt till brödbrädan så att du kan vara mer portabel istället för att hålla dig ansluten till en dator eller driva systemet via Arduino Nano.

1 - PC/ bärbar dator för att programmera din Arduino Nano - Obs! Du kan också behöva CH340 -drivrutiner för att din Windows -dator ska kunna ansluta korrekt till Arduino Nano. Ladda ner drivrutiner HÄR

1 - Arduino Integrated Development Environment (IDE) - Ladda ner IDE HÄR

Steg 2: Installera IDE och sedan CH340 -drivrutinerna

Om du inte redan har IDE- eller CH340 -drivrutinerna installerade, fortsätt med det här steget

1) Ladda ner IDE HÄR.

2) Detaljerade instruktioner om hur man installerar IDE finns på Arduinos webbplats HÄR

3) Ladda ner CH340 seriella drivrutiner HÄR.

4) Detaljerade instruktioner om hur du installerar drivrutinerna hittar du HÄR.

Din mjukvara är nu uppdaterad

Steg 3: Placering av komponenter

Placering av komponenter
Placering av komponenter
Placering av komponenter
Placering av komponenter
Placering av komponenter
Placering av komponenter

Även en fullstor brödbräda har bara begränsat utrymme på sig, och detta projekt tar det till det yttersta.

1) Om du använder en strömförsörjning för brödbräda, fäst den först vid de högra stiften på din brödbräda

2) Installera Arduino Nano, med USB -porten vänd åt höger

3) Installera LCD -skärmen högst upp på panelen (se bilder)

4) Installera HC-SR04 och potentiometern. Lämna utrymme för de ledningar och motstånd som de kommer att kräva.

5) Anslut alla trådar på brödbrädet baserat på Fritzing -diagrammet. Notera placeringen av de 2 motstånden på kortet också. - Jag har lagt till en Fritzing FZZ -fil som du kan ladda ner om du är intresserad.

6) Om du INTE använder en Breadboard -strömförsörjning, se till att du har hoppare som körs från marken och +V -linjen på "botten" på brädet som går till matchande linjer på "toppen" för att säkerställa att allt blir jordat och drivs.

För denna konfiguration försökte jag hålla stiften från LCD-skärmen och stiften på Arduino i följd för att göra saker så enkla som möjligt (D7-D4 på LCD-anslutningar till D7-D4 på Nano). Detta tillät mig också att använda ett mycket rent diagram för att visa ledningarna.

Medan många platser kräver ett 220 ohm motstånd för att skydda LCD -bakgrundsbelysningen på 2x20 -skärmen, tyckte jag att det var för högt i mitt fall. Jag provade flera successivt mindre värden tills jag hittade en som fungerade bra för mig. I det här fallet fungerar det till ett 48 ohm motstånd (det är vad det visas som på min ohm-mätare). Du bör börja med en 220 Ohm och bara arbeta ner om LCD -skärmen inte är tillräckligt stark.

Potentiometern används för att justera kontrasten på LCD -skärmen, så du kan behöva använda en liten skruvmejsel för att vrida det inre uttaget till den position som fungerar bäst för dig.

Steg 4: Arduino -skissen

Arduino -skissen
Arduino -skissen
Arduino -skissen
Arduino -skissen

Jag använde flera källor som inspiration för min skiss, men alla krävde betydande modifiering. Jag har också försökt att kommentera koden fullständigt så att det är klart varför varje steg utförs som det är. Jag tror att kommentarerna överstiger de faktiskt kodande instruktionerna med en rimlig procentsats !!!

Den mest intressanta delen av denna skiss, för mig, kretsar kring ultraljudssensorn. HC-SR04 är mycket billig (mindre än 1 US eller kanadensisk $ på Ali Express). Det är också ganska korrekt för denna typ av projekt.

Det finns 2 runda "ögon" på sensorn men de har alla ett annat syfte. Den ena är ljudsändaren den andra är mottagaren. När TRIG -stiftet är inställt på HIGH skickas en puls ut. ECHO -stiftet returnerar ett värde i millisekunder som är den totala fördröjningen mellan när pulsen skickades och den mottogs. Det finns några enkla formler i manuset som hjälper till att konvertera millisekunder till antingen centimeter eller tum. Kom ihåg att den returnerade tiden måste halveras eftersom pulsen går TILL objektet och sedan RETURNER, täcker avståndet två gånger.

För mer information om hur ultraljudssensorn fungerar rekommenderar jag starkt Dejan Nedelkovskis handledning på Howtomechatronics. Han har en utmärkt video och diagram som förklarar konceptet mycket bättre än jag kunde!

OBS: Ljudets hastighet är inte konstant. Det varierar beroende på temperatur och tryck. En mycket intressant expansion till detta projekt skulle lägga till en temperatur- och trycksensor för att kompensera för "drift". Jag har gett flera prov för alternativa temperaturer som utgångspunkt, om du vill ta nästa steg!

En internetkälla som har ägnat mycket tid åt att undersöka dessa sensorer kom med dessa värden. Jag rekommenderar Andreas Spiess You Tube -kanal för en mängd intressanta videor. Jag tog dessa värden från en av dem.

// 340 M/sek är ljudets hastighet vid 15 grader C. (0,034 CM/sek) // 331,5 M/sek är ljudets hastighet vid 0 grader (0,0331,5 cm/sek)

// 343 M/sek är ljudets hastighet vid 20 grader C (0,0343 CM/sek)

// 346 M/sek är ljudets hastighet vid 25 grader C (0,0346 CM/sek)

LCD -skärmen är lite av en utmaning, bara för att den kräver så många stift (6!) För att styra den. Uppåtsidan är att denna grundversion av LCD -skärmen också är mycket billig. Jag kan enkelt hitta den på Aliexpress för mindre än $ 2 kanadensiska.

Lyckligtvis, när du väl har anslutit det, är kontrollen mycket rak framåt. Du rensar det, ställer in var du vill mata ut din text och utfärdar sedan en serie LCD. PRINT -kommandon för att trycka texten och siffrorna på skärmen. Jag hittade en bra handledning om detta från Vasco Ferraz på vascoferraz.com. Jag ändrade hans pin -layout för att göra det tydligare för en nybörjare (som jag själv!).

Steg 5: Slutsats

Jag låtsas inte vara varken elingenjör eller professionell kodare. (Jag lärde mig ursprungligen hur man programmerade på 1970 -talet!). På grund av detta tycker jag att hela Arduino -rummet är oerhört befriande. Jag, med bara grundläggande kunskaper, kan börja med meningsfulla experiment. Skapa saker som faktiskt fungerar och visar tillräckligt med verkliga verktyg för att även min fru säger "Cool!".

Som vi alla använder, använder jag de resurser som finns tillgängliga för mig från internet för att lära mig hur jag gör saker, sedan länkar jag ihop dem för att förhoppningsvis göra något användbart. Jag har gjort mitt bästa för att tillgodoräkna mig dessa källor inom denna ible och i min skiss.

Längs vägen tror jag att jag kan hjälpa andra, som också börjar sin inlärningsresa. Jag hoppas att du tycker att detta är en användbar instruktion och jag välkomnar alla kommentarer eller frågor du kan ha.

Rekommenderad: