» Elektronika » Arduino »Ļoti precīzs ultraskaņas tālmērs

Ļoti precīzs ultraskaņas tālmērs



Šis ultraskaņas diapazona meklētājs HC-SR04 ir uzlabots ar temperatūras sensoru LM35.

Jau no skolas jūs varat atcerēties, ka skaņas ātrums ir atkarīgs no gaisa blīvuma, un gaisa blīvums ir atkarīgs no temperatūras.
Mēs aprēķināsim temperatūru, izmantojot šo formulu
temp2 = (temp / 1023,0) * 5,0 * 1000/10;

Kur temp2 ir gala formula pēc formulas,
Un kur temp ir neapstrādāta sensora vērtība.

Kas mums nepieciešams:
  • Ultraskaņas tālmērs HC-SR04
  • Arduino
  • Maizes dēlis
  • Džemperi
  • Termistors LM35 (temperatūras sensors)


Ņemiet vērā, ka HC-SR04 ir divu veidu -
Man šeit ir labs, un tas stabili mēra attālumu.
Viņi abi ir no 4 cm līdz 400 cm.
Darbojas ar 3,3 līdz 5 v


Sākumā mēs to visu izsmejam uz maizes dēļa.

Ultraskaņas sensors:
  • GND - gnd
  • Atbalss - 3 tapas
  • Trig - 2 tapas
  • Vcc - 5v

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

Ļoti precīzs ultraskaņas tālmērs

Tam vajadzētu būt šādam:

Tālāk mēs aizpildām skici.
Lejupielādēt sensora HC-SR04 bibliotēku -
iarduino_hc-sr04.zip [299,69 Kb] (lejupielādes: 207)

Lejupielādēt skici -
skice_mar23f.zip [338 b] (lejupielādes: 157)

# iekļaujiet  // pievienojiet bibliotēku darbam ar ultraskaņas sensoru HC-SR04
iarduino_HC_SR04 hcsr (2,3); // apzīmē kontaktus Trig un Echo
int temp = 0; // neapstrādāta temperatūra
pludiņa temp2 = 0; Gatavās temperatūras vērtība

void setup () {// palaist 1 reizi
  Sērijas.begin (9600); // sāciet ostas monitoru
  pinMode (A0, INPUT); // apzīmē kontaktu A0 kā ievadi
}

void loop () {// atkārto bezgalīgi vairākas reizes
  temp = analogRead (A0); // nolasa kontakta A0 vērtību un piešķir tai mainīgo temp
  temp2 = (temp / 1023,0) * 5,0 * 1000/10; // aprēķina izejvielu vērtību pēc formulas, lai iegūtu gatavas temperatūras vērtību
  Serial.println (hcsr.distance (temp2)); // porta monitorā ierakstiet gatavu diapazonu
  kavēšanās (1000); // aizkavēt 1 sekundi
}

Un šeit ir skice LCD displejam -
Lejupielādēt skici -
skice_mar23f-1.zip [861 b] (lejupielādes: 139)


# iekļaujiet  // pievienojiet bibliotēku darbam ar ultraskaņas sensoru HC-SR04
#include  // pievienojiet bibliotēku darbam ar I2C kopnes displeju

LiquidCrystal_I2C LCD (0x27, 16, 2); // apzīmē (adrese, kolonnas, līnijas)
iarduino_HC_SR04 hcsr (2,3); // apzīmē kontaktus Trig un Echo

int temp = 0; // neapstrādāta temperatūra
pludiņa temp2 = 0; Gatavās temperatūras vērtība

void setup () {// palaist 1 reizi
  lcd.init (); // inicializēt displeju
  LCD displejs (); // ieslēdziet displeja fona apgaismojumu
  pinMode (A0, INPUT); // apzīmē kontaktu A0 kā ievadi
}

void loop () {// atkārto bezgalīgi vairākas reizes
  temp = analogRead (A0); // nolasa kontakta A0 vērtību un piešķir tai mainīgo temp
  temp2 = (temp / 1023,0) * 5,0 * 1000/10; // aprēķina izejvielu vērtību pēc formulas, lai iegūtu gatavas temperatūras vērtību
  lcd.setCursor (2, 0); // novietojiet kursoru uz 2 kolonas un 0 rindas
  lcd.print (temp2); // uzrakstiet attālumu
  lcd.setCursor (5,0); // novietojiet kursoru uz 5. kolonnu un 0. rindu
  lcd.print ("cm"); // uzrakstīt cm
  kavēšanās (1000); // aizkavēt 1 sekundi
}


Rakstiet komentārus un jautājumus, es atbildēšu uz visu!
10
10
10

Pievienojiet komentāru

    • smaidismaidaxaxalabinezinuYahoonea
      priekšniekssaskrāpētmuļķisjājā-jāagresīvsslepeni
      žēldejotdeja2deja3apžēlošanapalīdzētdzērieni
      apstātiesdraugilabilabsirdīgssvilpegulbismēle
      smēķētaplaudēkrauklispaziņodrausmīgsdon-t_mentionlejupielādēt
      karstumsdrausmīgssmieties1mdasapulceņirgāšanāsnegatīvs
      not_ipopkornssodītlasītnobiedētbiedēmeklēt
      ņurdētpaldiesšoto_clueumņikakūtapiekrītu
      sliktibēmelnā acsblum3sarktlielītiesgarlaicība
      cenzētspleasantryslepens2draudētuzvarajusun_bespectacled
      šoksrespektlolprevedlaipni gaidītikrutojsya_za
      ya_dobryipalīgsne_huliganne_othodifludsaizliegumstuvu
13 komentāri
Viesis Aleksandrs
No kurienes nāk šī formula:
temp2 = (temp / 1023,0) * 5,0 * 1000/10
Vai jūs varētu man pastāstīt sīkāk, no kurienes radās šīs vērtības?
Es arī pievienotu 4. punktu. Nelietot mērījumiem, tikai automatizācijas ierīcēm!
Es saprotu (spriežot pēc iepriekšminētajiem parametriem), ka instrukcijas tam izskatās apmēram šādi:
1. Satveriet HC-SR04 kreisajā rokā un Atoruchka jeb marķieri labajā.
2. Novērtējiet attālumu ar aci un pierakstiet to.
3. Ielieciet HC-SR04 atpakaļ kastē.
labi
Citāts: “Ultraskaņas tālmēra HC-SR04 funkcijas
Mērījumu diapazons: no 2 cm līdz 400 cm.
Mērījumu precizitāte: ± 1 cm (maksimālajā diapazonā ± 3 cm).

Jautājums: Cik "smaga" ir temperatūras korekcija kopējā kļūda?
Es uzskatu, ka mājās gatavots produkts netika ieviests, nav fotoattēla par gatavo ierīci un tās darbību.
Es šo mājās gatavoto izstrādājumu uzskatu par “bērnišķīgu”, taču rakstā nav parādīts vai sakošļāts, kā savienot displeju. Iesācējiem mūsu vietnes ir neskaidras, taču pieredzējušiem tas nav nepieciešams. Košļājiet un parādiet visu mājās gatavoto.
Citāts: Antons Martjanovs
Patiesībā tie atšķiras ne tikai ar uzrakstu, bet arī ar precizitāti!

Saskaņā ar dokumentāciju vai jūs ar to saskārāties?
Autore
Patiesībā tie atšķiras ne tikai ar uzrakstu, bet arī ar precizitāti!
Bet vai ar to nepietiek ??? priekšnieks Piemēram, man arī nepatīk, kad marķējumi ir uzrakstīti zem pusmetra !!! smaida nezinu
Un kāpēc tas joprojām ir slikts, izņemot marķējuma augstumu?
Autore
Sliktais ir 0,5 cm zemāks uzraksts HC-SR04
Ļoti precīzi
Un kāda ir precizitāte? Kas tika izmantots kā atsauce? Kāda ir temperatūras kļūda?
Ņemiet vērā, ka HC-SR04 ir divu veidu -
Man ir labi
Un kurš no tiem, jūsuprāt, ir slikts?
Pēc savas pieredzes es jums teikšu, ka ultraskaņas tālmērs, piemēram, “bezkontakta rulete”, ir lutinošs !!!
Viens melo kā nevajadzīgs ...
Un nevis nepietiekamas precizitātes dēļ, bet gan tāpēc, ka viņi var izmērīt attālumu tikai līdz pietiekami lielai cietā materiāla sienai ... Bet līdz šīs sienas nišas aizmugurējai sienai - nekādā veidā !!! Un tas nedarbosies arī tad, ja šī siena būs aizkrāsota ar mēbelēm un citām lietām, un tur ir tikai mazs “logs”, kas ir brīvs no jucekļa ... (Šajā gadījumā ir vieglāk neatbrīvot sienu no visa šī, bet vienkārši izmantot parasto ruleti).
Atkal mēģiniet izmērīt attālumu līdz zemē ievietotam taustei !!!

Un uz siltumnīcu?)))
Un pie sienas, kas pārklāta ar audumu?)))
Un fasādei, kas jau ir ielīmēta ar minerālvates plāksnēm, bet joprojām bez gala pārklājuma?))))
Un pirms katra no desmit spārēm, kas sakārtotas pēc kārtas?
Un no sienas līdz dēļa galam jau pavirši pie griestiem, lai nogrieztu nepieciešamo garumu un aizvērtu šo "caurumu" ???

Neviens no iepriekšminētajiem jums nedarbosies !!!

Un ko tad ar to izmērīt remonta laikā vai, piemēram, būvlaukumā ??? Tikai telpu lielums un platība bez mēbelēm ???

Īsāk sakot, es to izmetu uz plaukta pirms pāris gadiem, un, atceroties sakāmvārdu par “ārišķīgo, kurš maksā divreiz”, es nolēmu, ka man jāpērk lāzers ....

Mēs iesakām izlasīt:

Nododiet to viedtālrunim ...