Inhoudsopgave:
- Stap 1: Onderdelen die u nodig heeft
- Stap 2: installeer de IDE en vervolgens de CH340-stuurprogramma's
- Stap 3: plaatsing van componenten
- Stap 4: De Arduino-schets
- Stap 5: Conclusie
Video: Ultrasone afstandsmeter-tutorial met Arduino & LCD - Ajarnpa
2024 Auteur: John Day | [email protected]. Laatst gewijzigd: 2024-01-30 11:18
Veel mensen hebben Instructables gemaakt over het gebruik van de Arduino Uno met een ultrasone sensor en soms ook met een LCD-scherm. Ik heb echter altijd geconstateerd dat deze andere instructables vaak stappen overslaan die niet voor de hand liggend zijn voor beginners. Daarom heb ik geprobeerd een tutorial te maken die alle mogelijke details bevat, zodat andere beginners er hopelijk van kunnen leren.
Ik gebruikte eerst een Arduino UNO, maar vond het een beetje groot voor het doel. Ik heb toen de Arduino Nano onderzocht. Dit kleine bord biedt bijna alles wat de UNO doet, maar met een veel kleinere footprint. Met wat manoeuvreren kreeg ik het op hetzelfde breadboard als het LCD-scherm, de ultrasone sensor en de verschillende draden, weerstanden en de potentiometer.
De resulterende build is volledig functioneel en is een goede opstap naar het maken van een meer permanente opstelling. Ik besloot mijn eerste Instructable te maken om dit proces te documenteren en hopelijk anderen te helpen die hetzelfde willen doen. Waar mogelijk heb ik aangegeven waar ik mijn informatie vandaan heb en ik heb ook geprobeerd om zoveel mogelijk ondersteunende documentatie in de schets te stoppen, zodat iedereen die het leest kan begrijpen wat er aan de hand is.
Stap 1: Onderdelen die u nodig heeft
Je hebt maar een handvol onderdelen nodig en die zijn gelukkig erg goedkoop.
1 - Broodplank op ware grootte (830 pinnen)
1 - Arduino Nano (met pin-headers aan beide zijden geïnstalleerd)
1 - HC-SRO4 ultrasone sensor
1 - 16x2 LCD-scherm (met een enkele header geïnstalleerd). LET OP: je hebt de duurdere I2C-versie van deze module niet nodig. We kunnen direct werken met de 16-pins "basis" -eenheid
1 - 10 K Potentiometer
1 - Ballastweerstand voor gebruik met de LED-achtergrondverlichting voor de 16x2 (normaal 100 Ohm - 220 Ohm, ik vond dat een 48 Ohm-weerstand het beste werkte voor mij)
1 -1K Ohm belastingsbegrenzingsweerstand - voor gebruik met HC-SR04
Breadboard draden in diverse lengtes en kleuren.
OPTIONEEL - Breadboard-voeding - Een voedingsmodule die rechtstreeks op het breadboard wordt aangesloten, zodat u draagbaarder bent in plaats van aan een pc vast te zitten, of het systeem van stroom te voorzien via de Arduino Nano.
1 - PC/laptop om uw Arduino Nano te programmeren - Opmerking Mogelijk hebt u ook CH340-stuurprogramma's nodig om uw Windows-pc correct op de Arduino Nano aan te sluiten. Download stuurprogramma's HIER
1 - Arduino Integrated Development Environment (IDE) - Download IDE HIER
Stap 2: installeer de IDE en vervolgens de CH340-stuurprogramma's
Als u de IDE- of CH340-stuurprogramma's nog niet hebt geïnstalleerd, gaat u verder met deze stap:
1) Download de IDE van HIER.
2) Gedetailleerde instructies voor het installeren van de IDE zijn te vinden op de Arduino-website HIER
3) Download de CH340 seriële stuurprogramma's van HIER.
4) Gedetailleerde instructies voor het installeren van de stuurprogramma's vindt u HIER.
Uw softwareomgeving is nu up-to-date
Stap 3: plaatsing van componenten
Zelfs een breadboard van volledige grootte heeft slechts een eindige ruimte en dit project gaat tot het uiterste.
1) Als je een breadboard-voeding gebruikt, bevestig deze dan eerst aan de meest rechtse pinnen op je breadboard
2) Installeer de Arduino Nano, met de USB-poort naar rechts gericht
3) Installeer het LCD-scherm aan de "bovenkant" van het breadboard (zie afbeeldingen)
4) Installeer de HC-SR04 en de potentiometer. Laat ruimte over voor de draden en weerstanden die ze nodig hebben.
5) Sluit op basis van het Fritzing-diagram alle draden op het breadboard aan. Let ook op de plaatsing van de 2 weerstanden op het bord. - Ik heb een Fritzing FZZ-bestand toegevoegd dat je kunt downloaden als je geïnteresseerd bent.
6) Als je GEEN Breadboard-voeding gebruikt, zorg er dan voor dat je jumpers hebt die vanaf de grond lopen en een +V-lijn aan de "onderkant" van het bord naar de overeenkomende lijnen aan de "bovenkant" om ervoor te zorgen dat alles wordt geaard en aangedreven.
Voor deze configuratie heb ik geprobeerd de pinnen van het LCD-scherm en de pinnen op de Arduino in volgorde te houden om het zo eenvoudig mogelijk te maken (D7-D4 op LCD verbindt met D7-D4 op de Nano). Hierdoor kon ik ook een heel duidelijk diagram gebruiken om de bedrading te laten zien.
Hoewel veel sites vragen om een weerstand van 220 ohm om de LCD-achtergrondverlichting op het 2x20-scherm te beschermen, vond ik dit in mijn geval te hoog. Ik probeerde verschillende steeds kleinere waarden totdat ik er een vond die goed voor mij werkte. In dit geval komt het neer op een weerstand van 48 ohm (zo staat het op mijn ohm-meter). Je moet beginnen met een 220 Ohm en alleen naar beneden werken als het LCD-scherm niet helder genoeg is.
De potentiometer wordt gebruikt om het contrast op het LCD-scherm aan te passen, dus u moet mogelijk een kleine schroevendraaier gebruiken om de binnenste socket in de positie te draaien die voor u het beste werkt.
Stap 4: De Arduino-schets
Ik heb verschillende bronnen gebruikt als inspiratie voor mijn schets, maar ze vereisten allemaal een aanzienlijke aanpassing. Ik heb ook geprobeerd de code volledig te becommentariëren, zodat het duidelijk is waarom elke stap wordt uitgevoerd zoals hij is. Ik geloof dat de commentaren de daadwerkelijke codeerinstructies met een redelijk percentage overtreffen!!!
Het meest interessante deel van deze schets, voor mij, draait om de ultrasone sensor. De HC-SR04 is erg goedkoop (minder dan 1 Amerikaanse of Canadese $ op Ali Express). Het is ook vrij nauwkeurig voor dit soort projecten.
Er zitten 2 ronde "ogen" op de sensor maar ze hebben elk een ander doel. De ene is de geluidszender, de andere is de ontvanger. Wanneer de TRIG-pin op HIGH is ingesteld, wordt er een puls verzonden. De ECHO-pin retourneert een waarde in milliseconden die de totale vertraging is tussen het moment waarop de puls werd verzonden en het moment waarop deze werd ontvangen. Er zijn enkele eenvoudige formules in het script om Milliseconden om te zetten in Centimeters of Inches. Onthoud dat de geretourneerde tijd gehalveerd moet worden omdat de puls NAAR het object gaat en dan TERUGKEER, waarbij de afstand twee keer wordt afgelegd.
Voor meer details over hoe de ultrasone sensor werkt, raad ik de tutorial van Dejan Nedelkovski op Howtomechatronics ten zeerste aan. Hij heeft een uitstekende video en diagrammen die het concept veel beter uitleggen dan ik zou kunnen!
OPMERKING: De geluidssnelheid is geen constante. Het varieert op basis van temperatuur en druk. Een zeer interessante uitbreiding van dit project zou een temperatuur- en druksensor toevoegen om "drift" te compenseren. Ik heb verschillende voorbeelden gegeven voor alternatieve temperaturen als uitgangspunt, als je de volgende stap wilt zetten!
Een internetbron die veel tijd heeft besteed aan het onderzoeken van deze sensoren, kwam met deze waarden. Ik raad het You Tube-kanaal van Andreas Spiess aan voor een verscheidenheid aan interessante video's. Ik heb deze waarden uit een van hen gehaald.
// 340 M/sec is de geluidssnelheid bij 15 graden C. (0,034 CM/sec)// 331,5 M/sec is de geluidssnelheid bij 0 graden C (0,0331,5 CM/sec)
// 343 M/Sec is de geluidssnelheid bij 20 graden C (0,0343 CM/Sec)
// 346 M/Sec is de geluidssnelheid bij 25 graden C (0,0346 CM/Sec)
Het LCD-scherm is een beetje een uitdaging, alleen omdat het zoveel pinnen (6!) nodig heeft om het te bedienen. Het voordeel is dat deze basisversie van het LCD-scherm ook erg goedkoop is. Ik kan het gemakkelijk vinden op Aliexpress voor minder dan $ 2 Canadees.
Gelukkig, als je het eenmaal hebt aangesloten, is het besturen ervan heel eenvoudig. U wist het, stelt vervolgens in waar u uw tekst wilt uitvoeren en geeft vervolgens een reeks LCD. PRINT-opdrachten om de tekst en cijfers op het scherm te drukken. Ik vond een geweldige tutorial hierover van Vasco Ferraz op vascoferraz.com. Ik heb zijn pinlay-out gewijzigd om het voor een beginner (zoals ikzelf!) duidelijker te maken.
Stap 5: Conclusie
Ik pretendeer niet een elektrotechnisch ingenieur of een professionele codeur te zijn (ik heb oorspronkelijk in de jaren '70 leren programmeren!). Hierdoor vind ik de hele Arduino-ruimte enorm bevrijdend. Ik, met alleen basiskennis, kan beginnen met zinvolle experimenten. Dingen maken die echt werken en genoeg bruikbaarheid in de echte wereld laten zien dat zelfs mijn vrouw "Cool!" zegt..
Zoals we allemaal doen, gebruik ik de bronnen die op internet beschikbaar zijn om te leren hoe ik dingen moet doen, en dan koppel ik ze aan elkaar om, hopelijk, iets nuttigs te maken. Ik heb mijn best gedaan om deze bronnen binnen dit boek en in mijn schets te vermelden.
Gaandeweg geloof ik dat ik anderen kan helpen, die ook aan hun leertraject beginnen. Ik hoop dat je dit een nuttige Instructable vindt en ik verwelkom alle opmerkingen of vragen die je hebt.
Aanbevolen:
Draagbare afstandsmeter: 10 stappen
Draagbare bereikmeter: Kyle Scott 11/4/2020In deze instructable laat ik je zien hoe je een draagbare bereikmeter maakt
Sonar-afstandsmeter: 4 stappen
Sonar Range Finder: In deze Instructable is een testplan gemaakt om te zien of een sonar-afstandsmeter kan bepalen of de laptop open is of niet. Hieronder vindt u instructies voor het maken van de sonar-afstandsmeter, het programmeren van de Arduino en het kalibreren ervan
Afstandsmeter maken met een laser en een camera: 6 stappen
Afstandsmeter maken met een laser en een camera: Ik ben momenteel bezig met wat interieurwerkzaamheden voor volgend voorjaar, maar aangezien ik net een oud huis heb gekocht, heb ik geen huisplan. Ik begon afstanden van muur tot muur te meten met behulp van een liniaal, maar het is traag en foutgevoelig. Ik dacht erover om een afstandsmeter te kopen
Arduino-afstandsmeter: 6 stappen
Arduino Range Finder: Deze afstandsmeter is gemaakt om te controleren of een deur al dan niet open is. Door de afstand van een deur te meten, kunnen we bepalen of een deur open of gesloten is
Hoe maak je een ultrasone radar met Arduino ⚡: 5 stappen
Hoe maak je een ultrasone radar met Arduino ⚡: ↪ Hallo, het is SuperTech en vandaag ga ik je laten zien hoe je een ultrasone radar maakt met Arduino