» elektronik » Arduino »Meget nøjagtig ultralydsmåler

Meget nøjagtig ultrasonisk afstandsmåler



Denne HC-SR04 ultrasoniske afstandsmåler er forbedret med LM35 temperatursensoren.

Fra skolen kan du huske, at lydhastigheden afhænger af lufttætheden, og luftens densitet afhænger af temperaturen.
Vi beregner temperaturen ved hjælp af denne formel
temp2 = (temp / 1023,0) * 5,0 * 1000/10;

Hvor temp2 er den færdige temperaturværdi efter formlen,
Og hvor temp er den rå værdi fra sensoren.

Hvad vi har brug for:
  • Ultralyds afstandsmåler HC-SR04
  • Arduino
  • prototyping board
  • jumpere
  • Thermistor LM35 (temperatursensor)


Husk, at HC-SR04 findes i to former -
Her har jeg en god, og den måler stabilt afstand.
De måler begge fra 4 cm til 400 cm.
Drives af 3.3 til 5 v


Til at begynde med håner vi det hele på en brødbræt.

Ultralydsensor:
  • GND - gnd
  • Echo - 3 pins
  • Trig - 2 stifter
  • Vcc - 5v

Termistor LM35:
  • 1 - 5v
  • 2 - A0
  • 3 - GND

Meget nøjagtig ultrasonisk afstandsmåler

Det skulle være sådan:

Derefter udfylder vi skitsen.
Download bibliotek til HC-SR04 sensor -
iarduino_hc-sr04.zip [299.69 Kb] (downloads: 207)

Download skitse -
sketch_mar23f.zip [338 b] (downloads: 157)

#include  // tilslut biblioteket til at arbejde med ultralydssensoren HC-SR04
iarduino_HC_SR04 hcsr (2,3); // betegner kontakter Trig og Echo
int temp = 0; // rå temperatur
float temp2 = 0; // klar temperaturværdi

void setup () {// kør 1 gang
  Serial.begin (9600); // start portmonitoren
  pinMode (A0, INPUT); // betegner kontakt A0 som input
}

void loop () {// gentager et uendeligt antal gange
  temp = analoglæse (A0); // læse værdien af ​​kontakt A0 og tildele den variable temp til den
  temp2 = (temp / 1023,0) * 5,0 * 1000/10; // beregne råværdien i henhold til formlen for at få den færdige temperaturværdi
  Serial.println (hcsr.distance (temp2)); // skriv det klare område i portmonitoren
  forsinkelse (1000); // forsink 1 sekund
}

Og her er en skitse til et LCD-display-
Download skitse -
sketch_mar23f-1.zip [861 b] (downloads: 139)


#include  // tilslut biblioteket til at arbejde med ultralydssensoren HC-SR04
#include  // tilslut biblioteket til at arbejde med displayet på I2C-bussen

LiquidCrystal_I2C lcd (0x27, 16, 2); // betegne (adresse, kolonner, linjer)
iarduino_HC_SR04 hcsr (2,3); // betegner kontakter Trig og Echo

int temp = 0; // rå temperatur
float temp2 = 0; // klar temperaturværdi

void setup () {// kør 1 gang
  lcd.init (); // initialiser displayet
  lcd.backlight (); // tænd for displayets baggrundsbelysning
  pinMode (A0, INPUT); // betegner kontakt A0 som input
}

void loop () {// gentager et uendeligt antal gange
  temp = analoglæse (A0); // læse værdien af ​​kontakt A0 og tildele den variable temp til den
  temp2 = (temp / 1023,0) * 5,0 * 1000/10; // beregne råværdien i henhold til formlen for at få den færdige temperaturværdi
  lcd.set markør (2, 0); // Sæt markøren på 2 kolonne og 0 række
  lcd.print (temp2); // skriv afstanden
  lcd.setCursor (5,0); // placer markøren på 5. kolonne og 0. række
  lcd.print ("cm"); // skriv cm
  forsinkelse (1000); // forsink 1 sekund
}


Skriv kommentarer og spørgsmål, jeg vil svare på alt!
10
10
10

Tilføj en kommentar

    • smilesmilxaxaokdontknowyahoonea
      bossscratchnarrejaja-jaaggressivhemmelighed
      undskylddansdance2dance3benådninghjælpdrikkevarer
      stop-vennergodgoodgoodfløjtedånetunge
      røgklappecrayerklærerspottendedon-t_mentiondownloade
      hedeirefullaugh1mdamødemoskingnegativ
      not_ipopcornstraffelæseskræmmeforskrækkelsersøg
      hånethank_youdetteto_clueumnikakutenig
      dårligbeeeblack_eyeblum3blushpralekedsomhed
      censureretpleasantrysecret2truesejryusun_bespectacled
      SHOKRespektlolprevedvelkommenkrutoyya_za
      ya_dobryihjælperenne_huliganne_othodiFludforbudtæt
13 kommentar
Gæst Alexander
Hvor kommer denne formel fra:
temp2 = (temp / 1023,0) * 5,0 * 1000/10
Kunne du fortælle mig mere detaljeret, hvor kom disse værdier fra?
Jeg vil også tilføje punkt 4. Må ikke bruges til målinger, kun til automatiseringsenheder!
Jeg forstår (ud fra de ovennævnte parametre), at instruktionerne til det ser sådan ud:
1. Grib HC-SR04 i din venstre hånd og Atoruchka eller markør til højre.
2. Skøn afstanden med øjet, og skriv den ned.
3. Sæt HC-SR04 tilbage i kassen.
ok
Citat: “Funktioner i den ultrasoniske afstandsmåler HC-SR04
Måleområde: fra 2 cm til 400 cm.
Målenøjagtighed: ± 1 cm (ved maks. Afstand ± 3 cm).

Spørgsmål: Hvor "tung" er temperaturkorrektionen i den samlede fejl?
Jeg tror, ​​at det hjemmelavede produkt ikke blev implementeret, at der ikke er noget foto af den færdige enhed og dens funktion.
Jeg betragter dette hjemmelavede produkt som "barnligt", men artiklen viser eller tyder ikke på, hvordan skærmen forbindes. For begyndere er vores websteder uklare, men erfarne har ikke brug for det. Tyg og vis alle de hjemmelavede.
Citat: Anton Martyanov
Faktisk adskiller de sig ikke kun i inskription, men også i nøjagtighed!

I henhold til dokumentationen, eller kom du over dette?
Forfatteren
Faktisk adskiller de sig ikke kun i inskription, men også i nøjagtighed!
Men er det ikke nok ??? boss For eksempel kan jeg heller ikke lide det, når markeringerne er skrevet under en halv meter !!! smil dontknow
Og hvorfor er det stadig dårligt bortset fra markeringens højde?
Forfatteren
Den dårlige er påskriften HC-SR04 0,5 cm lavere
Meget nøjagtig
Og hvad er nøjagtigheden? Hvad blev brugt som reference? Hvad er temperaturfejlen?
Husk, at HC-SR04 findes i to former -
Jeg har en god
Og hvilken synes du er dårlig?
Jeg vil fortælle dig fra min egen oplevelse, at en ultralyds afstandsmåler, som "kontaktløs roulette" er en forkælelse !!!
Man ligger omkring som unødvendig ...
Og ikke på grund af utilstrækkelig nøjagtighed, men fordi de kun kan måle afstanden til en tilstrækkelig stor mur af massivt materiale ... Men til bagvæggen i en niche i denne væg - ingen måde !!! Og det fungerer heller ikke, hvis denne væg er fyldt med møbler og andre ting, og der kun er et lille "vindue" fri for rod ... (I dette tilfælde er det lettere at ikke frigøre væggen fra alt dette, men bare bruge almindelig roulette).
Prøv igen at måle afstanden til en knag, der er kørt ned i jorden !!!

Og til drivhuset?)))
Og til væggen dækket med stof?)))
Og til facaden, der allerede er indsat med plader af mineraluld, men stadig uden en endelig belægning?))))
Og før hver af de ti spær arrangeret i række?
Og fra væggen til enden af ​​brættet, der allerede er spikret fast i loftet for at afskære den nødvendige længde og lukke dette "hul" ???

Intet af ovenstående vil arbejde ud for dig !!!

Og hvad skal man så måle med det under reparation, eller på en byggeplads, for eksempel ??? Kun lokalets størrelse og areal, mens de er fri for møbler ???

Kort sagt, jeg kastede det på hylden for et par år siden, og huskede ordsproget om den "avaricious, der betaler to gange", besluttede jeg, at jeg skulle købe en laser ...

Vi råder dig til at læse:

Giv den til smartphonen ...