» Elektronika » Arduino »Velmi přesný ultrazvukový dálkoměr

Velmi přesný ultrazvukový dálkoměr



Tento ultrazvukový dálkoměr HC-SR04 byl vylepšen teplotním senzorem LM35.

Ze školy si můžete vzpomenout, že rychlost zvuku závisí na hustotě vzduchu a hustota vzduchu závisí na teplotě.
Vypočítáme teplotu pomocí tohoto vzorce
temp2 = (temp / 1023,0) * 5,0 * 1000/10;

Kde temp2 je konečná hodnota teploty podle vzorce,
A kde temp je hrubá hodnota ze senzoru.

Co potřebujeme:
  • Ultrazvukový dálkoměr HC-SR04
  • Arduino
  • Prkénko
  • Svetry
  • Termistor LM35 (teplotní senzor)


Mějte na paměti, že HC-SR04 má dvě formy -
Tady mám dobrý a stabilně měří vzdálenost.
Oba měří od 4 cm do 400 cm.
Běží na 3,3 až 5 v


Nejprve to vysmíváme na prkénku.

Ultrazvukový senzor:
  • GND - gnd
  • Echo - 3 kolíky
  • Trig - 2 kolíky
  • Vcc - 5v

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

Velmi přesný ultrazvukový dálkoměr

Mělo by to být takto:

Dále vyplníme náčrt.
Stáhnout knihovnu pro senzor HC-SR04 -
iarduino_hc-sr04.zip [299,69 Kb] (počet stažení: 207)

Stáhnout skicu -
sketch_mar23f.zip [338 b] (počet stažení: 157)

#include  // připojte knihovnu pro práci s ultrazvukovým senzorem HC-SR04
iarduino_HC_SR04 hcsr (2,3); // označují kontakty Trig a Echo
int temp = 0; // hrubá teplota
float temp2 = 0; // hodnota připravené teploty

void setup () {// běh 1krát
  Serial.egegin (9600); // spusťte sledování portu
  pinMode (A0, INPUT); // označují kontakt A0 jako vstup
}

void loop () {// opakuje nekonečný početkrát
  temp = analogRead (A0); // přečte hodnotu kontaktu A0 a přiřadí jí proměnnou temp
  temp2 = (temp / 1023,0) * 5,0 * 1000/10; // vypočítejte surovou hodnotu podle vzorce a získejte konečnou hodnotu teploty
  Serial.println (hcsr.distance (temp2)); // napište rozsah připravenosti do monitoru portu
  zpoždění (1000); // zpoždění 1 sekunda
}

A tady je skica pro LCD displej-
Stáhnout skicu -
sketch_mar23f-1.zip [861 b] (počet stažení: 139)


#include  // připojte knihovnu pro práci s ultrazvukovým senzorem HC-SR04
#include  // připojte knihovnu pro práci s displejem na sběrnici I2C

LiquidCrystal_I2C lcd (0x27, 16, 2); // označit (adresa, sloupce, řádky)
iarduino_HC_SR04 hcsr (2,3); // označují kontakty Trig a Echo

int temp = 0; // hrubá teplota
float temp2 = 0; // hodnota připravené teploty

void setup () {// běh 1krát
  lcd.init (); // inicializuje displej
  lcd.backlight (); // zapněte podsvícení displeje
  pinMode (A0, INPUT); // označují kontakt A0 jako vstup
}

void loop () {// opakuje nekonečný početkrát
  temp = analogRead (A0); // přečte hodnotu kontaktu A0 a přiřadí jí proměnnou temp
  temp2 = (temp / 1023,0) * 5,0 * 1000/10; // vypočítejte surovou hodnotu podle vzorce a získejte konečnou hodnotu teploty
  lcd.setCursor (2, 0); // umístěte kurzor na 2 sloupce a 0 řádek
  lcd.print (temp2); // napište vzdálenost
  lcd.setCursor (5,0); // umístěte kurzor na pátý sloupec a 0. řádek
  lcd.print ("cm"); // napište cm
  zpoždění (1000); // zpoždění 1 sekunda
}


Napište připomínky a dotazy, odpovím na všechno!
10
10
10

Přidejte komentář

    • úsměvúsměvyxaxaokdontknowyahoone
      šéfeškrábnutíhlupákanoano-anoagresivnítajemství
      promiňtanecdance2dance3prominoutpomocnápoje
      zastavitpřátelédobředobrá náladapískatlžícejazyk
      kouřtleskánícrayprohlásitvýsměšnýdon-t_mentionstáhnout
      teploirefulsmích1mdasetkánímoskingnegativní
      not_ipopcorntrestatčístvyděsitděsíhledat
      posměchděkujitototo_clueumnikakutnísouhlasím
      špatnévčelablack_eyeblum3červenat sechlubit senuda
      cenzurovánopleasantrysecret2hrozitvítězstvíyusun_bespectacled
      třástrespektlolprovedenívítejtekrutoyya_za
      ya_dobryipomocníkne_huliganne_othodibludzákazblízko
13 komentáře
Host Alexander
Odkud tento vzorec pochází:
temp2 = (temp / 1023,0) * 5,0 * 1000/10
Mohl byste mi říci více, odkud jsou tyto hodnoty převzaty?
Chtěl bych také přidat bod 4. Nepoužívat pro měření, pouze pro automatizační zařízení!
Rozumím (soudě podle výše uvedených parametrů), že návod na to vypadá takto:
1. Chyťte HC-SR04 v levé ruce a Atoruchka nebo značku v pravé ruce.
2. Odhadněte vzdálenost okem a napište ji.
3. Vložte HC-SR04 zpět do krabice.
ok
Citace: „Vlastnosti ultrazvukového dálkoměru HC-SR04
Rozsah měření: od 2 cm do 400 cm.
Přesnost měření: ± 1 cm (při maximálním rozsahu ± 3 cm).

Otázka: Jak vážná je korekce teploty v celkové chybě?
Věřím, že domácí produkt nebyl implementován, neexistuje žádná fotka hotového zařízení a jeho funkce.
Tento domácí produkt považuji za „dětinský“, ale článek neukazuje ani nežvýká, jak propojit displej. Pro začátečníky jsou naše stránky nejasné, ale zkušené stránky je nepotřebují. Žvýkejte a ukazujte všechny domácí výrobky.
Citace: Anton Martyanov
Ve skutečnosti se liší nejen nápisem, ale také správností!

Podle dokumentace jste se s tím setkali?
Autor
Ve skutečnosti se liší nejen nápisem, ale také správností!
Ale to nestačí ??? šéfe Například se mi také nelíbí, když jsou označení psána pod půl metru !!! úsměvy dontknow
A proč je to stále špatné, s výjimkou výšky značky?
Autor
Špatným je nápis HC-SR04 o 0,5 cm níže
Velmi přesné
A jaká je přesnost? Co bylo použito jako reference? Jaká je chyba teploty?
Mějte na paměti, že HC-SR04 má dvě formy -
Mám dobrý
A který z nich je podle vás špatný?
Z vlastní zkušenosti vám řeknu, že ultrazvukový dálkoměr, jako je „bezkontaktní ruleta“, je hýčkající !!!
Jeden leží kolem jako zbytečné ...
A ne kvůli nedostatečné přesnosti, ale protože mohou měřit pouze vzdálenost k dostatečně velké zdi z pevného materiálu ... Ale k zadní stěně výklenku v této zdi - v žádném případě !!! A také to nebude fungovat, pokud je tato zeď plná nábytku a dalších věcí, a je zde jen malé „okno“ bez nepořádku ... (V tomto případě je snazší osvobodit zeď od toho všeho, ale pouze použít pravidelnou ruletu).
Znovu zkuste změřit vzdálenost k kolíku vhozenému do země !!!

A do skleníku?)))
A ke zdi pokryté látkou?)))
A na fasádu, již vloženou doskami z minerální vlny, ale stále bez finálního nátěru?))))
A než se každý z deseti krokví uspořádal v řadě?
A od zdi až do konce desky již přibité ke stropu, aby odřízl požadovanou délku a zavřel tuto „díru“ ???

Nic z výše uvedeného pro vás nebude fungovat !!!

A co s tím měřit během opravy nebo na staveništi? Pouze velikost a plocha areálu, zatímco bez nábytku ???

Stručně řečeno, hodil jsem to na polici před pár lety, a když jsem si vzpomněl na přísloví o „avaritovi, který platí dvakrát“, rozhodl jsem se, že musím koupit laser ...

Doporučujeme si přečíst:

Podejte to pro smartphone ...