» Elektronika » Arduino »Labai tikslus ultragarsinis nuotolio ieškiklis

Labai tikslus ultragarsinis nuotolio ieškiklis



Šis ultragarsinis diapazono ieškiklis HC-SR04 buvo patobulintas su LM35 temperatūros jutikliu.

Iš mokyklos galite prisiminti, kad garso greitis priklauso nuo oro tankio, o oro tankis priklauso nuo temperatūros.
Mes apskaičiuosime temperatūrą pagal šią formulę
temp2 = (temp / 1023,0) * 5,0 * 1000/10;

Kur temp2 yra galutinė temperatūros vertė po formulės,
O kur temp yra neapdorota jutiklio vertė.

Ko mums reikia:
  • Ultragarsinis nuotolio ieškiklis HC-SR04
  • Arduino
  • Duonos lenta
  • Džemperiai
  • Termistorius LM35 (temperatūros jutiklis)


Atminkite, kad HC-SR04 yra dviejų formų -
Turiu gerą ir jis stabiliai matuoja atstumą.
Jie abu yra nuo 4 cm iki 400 cm.
Varomas 3,3 - 5 v


Norėdami pradėti, mes visa tai sumetame ant duonos lentos.

Ultragarsinis jutiklis:
  • GND - gnd
  • Aidas - 3 kaiščiai
  • Trig - 2 kaiščiai
  • Vcc - 5v

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

Labai tikslus ultragarsinis nuotolio ieškiklis

Tai turėtų būti tokia:

Kitas mes užpildome eskizą.
Atsisiųsti „HC-SR04“ jutiklio biblioteką -
iarduino_hc-sr04.zip [299,69 Kb] (atsisiuntimai: 207)

Atsisiųsti eskizą -
eskizas_mar23f.zip [338 b] (atsisiuntimų: 157)

#include  // prijunkite biblioteką darbui su ultragarso jutikliu HC-SR04
iarduino_HC_SR04 hcsr (2,3); // žymėti kontaktus Trig ir Echo
int temp = 0; // žaliavos temperatūra
plūdės temp2 = 0; paruoštos temperatūros vertė

void setup () {// paleisti 1 kartą
  „Serial.begin“ (9600); // paleiskite uosto monitorių
  pinMode (A0, INPUT); // nurodo kontaktą A0 kaip įvestį
}

void loop () {// pakartojamas begalinis skaičius kartų
  temp = analoginis skaitymas (A0); // nuskaitykite kontakto A0 vertę ir priskirkite jai kintamąją temp
  temp2 = (temp / 1023,0) * 5,0 * 1000/10; // apskaičiuokite neapdorotą vertę pagal formulę, kad gautumėte galutinę temperatūros vertę
  Serial.println (hcsr.distance (temp2)); // uosto monitoriuje įrašykite paruoštą diapazoną
  vėlavimas (1000); // atidėkite 1 sekundę
}

Čia yra skystųjų kristalų ekrano eskizas -
Atsisiųsti eskizą -
eskizas_mar23f-1.zip [861 b] (atsisiuntimų: 139)


#include  // prijunkite biblioteką darbui su ultragarso jutikliu HC-SR04
#include  // prijunkite biblioteką, kad ji veiktų su I2C magistralės ekranu

„LiquidCrystal_I2C LCD“ (0x27, 16, 2); // žymėti (adresas, stulpeliai, eilutės)
iarduino_HC_SR04 hcsr (2,3); // žymėti kontaktus Trig ir Echo

int temp = 0; // žaliavos temperatūra
plūdės temp2 = 0; paruoštos temperatūros vertė

void setup () {// paleisti 1 kartą
  lcd.init (); // inicijuokite ekraną
  lcd.backlight (); // įjunkite ekrano foninį apšvietimą
  pinMode (A0, INPUT); // nurodo kontaktą A0 kaip įvestį
}

void loop () {// pakartojamas begalinis skaičius kartų
  temp = analoginis skaitymas (A0); // nuskaitykite kontakto A0 vertę ir priskirkite jai kintamąją temp
  temp2 = (temp / 1023,0) * 5,0 * 1000/10; // apskaičiuokite neapdorotą vertę pagal formulę, kad gautumėte galutinę temperatūros vertę
  „lcd.setCursor“ (2, 0); // užveskite žymeklį ant 2 stulpelio ir 0 eilutės
  lcd.print (temp2); // užrašyk atstumą
  lcd.setCursor (5,0); // užveskite žymeklį ant 5-osios stulpelio ir 0-osios eilutės
  lcd.print („cm“); // rašyti cm
  vėlavimas (1000); // atidėkite 1 sekundę
}


Rašykite komentarus ir klausimus, aš atsakysiu į viską!
10
10
10

Pridėti komentarą

    • šypsotisšypsosixaxagerainežiniaYahoonea
      viršininkassubraižytikvailystaiptaip-taipagresyvusslapta
      atsiprašaušoktišokis2šokis3atleiskpadėtigėrimai
      sustotidraugaigeraigerašvilpukassupyktiliežuvis
      rūkytiplojimaiklastingaspareikštiniokojantisdon-t_mentionatsisiųsti
      šilumanedrąsusjuoktis1mdasusitikimasmoskingneigiamas
      not_ipopkornasnubaustiskaitytigąsdintigąsdinapaieška
      gundytiačiūtaito_clueumnikūmussusitarti
      blogaibičiųjuoda akisblum3skaistalaipasigirtinuobodulys
      cenzūruotamalonumasslapta2grasintipergalėju„sun_bespectacled“
      šoktipagarbalolišlenktaslaukiamekrutojusya_za
      ya_dobryipagalbininkasne_huliganne_othodifludisuždraustiarti
13 komentarai
Svečias Aleksandras
Iš kur ši formulė:
temp2 = (temp / 1023,0) * 5,0 * 1000/10
Ar galėtumėte man išsamiau papasakoti, iš kur atsirado šios vertybės?
Taip pat pridėčiau 4 punktą. Nenaudokite matavimams, tik automatikos įtaisams!
Aš suprantu (spręsdamas pagal aukščiau nurodytus parametrus), kad instrukcijos jame atrodo maždaug taip:
1. Paimkite HC-SR04 kaire ranka, o „Atoruchka“ arba žymeklį dešinėje.
2. Įvertinkite atstumą akimis ir užrašykite.
3. Įdėkite HC-SR04 atgal į dėžę.
gerai
Citata: „Ultragarsinio nuotolio ieškiklio HC-SR04 ypatybės
Matavimo diapazonas: nuo 2 cm iki 400 cm.
Matavimo tikslumas: ± 1 cm (didžiausiame diapazone ± 3 cm).

Klausimas: Kiek „svarus“ yra visos paklaidos temperatūros pataisa?
Manau, kad naminis produktas nebuvo įgyvendintas, nėra gatavo prietaiso ir jo veikimo nuotraukos.
Aš šį naminį gaminį laikau „vaikišku“, tačiau straipsnyje nerodoma ir nekramtoma, kaip prijungti ekraną. Pradedantiesiems mūsų svetainės neaiškios, tačiau patyrusiems to nereikia. Kramtyti ir parodyti visus namuose pagamintus.
Citata: Antonas Martjanovas
Tiesą sakant, jie skiriasi ne tik užrašu, bet ir tikslumu!

Remiantis dokumentais ar jūs su tuo susidūrėte?
Autorius
Tiesą sakant, jie skiriasi ne tik užrašu, bet ir tikslumu!
Bet ar to nepakanka ??? viršininkas Pavyzdžiui, man taip pat nepatinka, kai žymėjimai užrašyti žemiau pusės metro !!! šypsosi nežinia
Ir kodėl jis vis dar blogas, išskyrus žymėjimo aukštį?
Autorius
Blogas yra užrašas HC-SR04 0,5 cm žemiau
Labai tikslus
O koks tikslumas? Kas buvo naudojama kaip nuoroda? Kokia yra temperatūros paklaida?
Atminkite, kad HC-SR04 yra dviejų formų -
Aš turiu gerą
Ir kuris, jūsų manymu, yra blogas?
Iš savo patirties aš jums pasakysiu, kad ultragarsinis diapazono ieškiklis, toks kaip „bekontaktė ruletė“, yra palepinimas !!!
Vienas meluoja kaip nereikalingas ...
Ir ne dėl nepakankamo tikslumo, o todėl, kad jie gali išmatuoti atstumą tik iki pakankamai didelės kietos medžiagos sienos ... Bet iki šios sienos nišos užpakalinės sienos - jokiu būdu !!! Taip pat neveiks, jei ši siena yra aptraukta baldais ir kitais daiktais, o joje yra tik mažas „langas“, kuriame nėra netvarkos ... (Tokiu atveju lengviau neatlaisvinti sienos nuo viso to, o tiesiog naudoti įprastą ruletę).
Vėlgi, pabandykite išmatuoti atstumą iki kaiščio, įmesto į žemę !!!

O į šiltnamį?)))
O prie sienos, aptrauktos audiniu?)))
Ir prie fasado, jau įklijuoto mineralinės vatos plokštėmis, bet vis tiek be galutinės dangos?))))
Ir prieš kiekvieną iš dešimties gegnių, išdėstytų iš eilės?
O nuo sienos iki lentos galo jau prikalta prie lubų, kad būtų galima nupjauti reikiamą ilgį ir uždaryti šią „skylę“ ???

Nei vienas iš aukščiau išvardytų dalykų jums nepasiteisins !!!

O ką tada su ja išmatuoti atliekant remontą ar pavyzdžiui statybvietėje ??? Tik patalpų dydis ir plotas, be baldų ???

Žodžiu, prieš porą metų išmečiau į lentyną ir, prisimindamas patarlę apie „keblus, kuris moka du kartus“, nusprendžiau, kad man reikia nusipirkti lazerį ...

Mes patariame perskaityti:

Perduokite jį išmaniajam telefonui ...