ProjektX : Ultrazvočni merilec razdalje z LCD prikazovalnikom

Share on facebook
Share on twitter
Ime projektaUltrazvočni merilec razdalje z LCD prikazovalnikom
Ideja ali problem senzorMerilec razdalje.
RešitevPreko LCD prikaži razdaljo do ovire (stena, objekt, ipd. )

arduino srf04 lcd

Spisek potrebščin (BOM – Bill of Material)Za izvedbo potrebujemo:

  • Arduino,
  • Uv senzor – SRF04
  • LCD prikazovalnik
  • ostalo povezovalne žičke za UV senzor, protoboard oz testna ploščica, povezovalne žičke za protoboard oz. testno ploščico, napajanje

in primerna orodja: izvijači, pinceto

IzvedbaPriključite sledeče pine LCD prikazovalnika 16×2 (ali drugega z Hitachi HD44780 procesorjem):

LCD piniArduino pini
11 (D4)05
10 (D3)04
09 (D2)03
08 (D1)02
06 (Enable)11
05 (R/W)Gnd
04 (Rs)12
03 (V0)GND
02 (Vcc)+5V
01 (GND)GND

kar ustreza definiciji v Arduino kodi :
#include LiquidCrystal lcd(12, 11, 5, 4, 3, 2);

 

in lahko uporabljate vse ukaze knjižnice LiquidCrystal.h več o ukazih na tej strani.

Priključite ultrazvočni senzor SRF04:

SRF04 piniArduino pini
1 (GND)GND
3 (trigger)7
4 (Echo)6
5 (5v Suppy)+5v

srf

 

in še skupna koda za merjenje razdalje in prikazovanje na LCD prikazovalniku:

#include <LiquidCrystal.h>

LiquidCrystal lcd(12, 11, 5, 4, 3, 2);
#define echoPin 6 // Pin za sprejem echo impulza
#define trigPin 7 // Pin za oddajo trigger impulza

void setup() {

lcd.begin(16, 2); // Pozicija (kolumna in vrstica) prikazovanja naslednjega teksta.
lcd.print(“Razdalja je:”); // izpis teksta
Serial.begin(9600); // nastavitev komunikacije s SRF04
pinMode(echoPin, INPUT); // določitev pina za odčitek SRF04
pinMode(trigPin, OUTPUT); // določitev pina za proženje SRF04
}

void loop() {

digitalWrite(trigPin, LOW); // postavi Trigger pin na Low za 2 mikrosekundi
delayMicroseconds(2);
digitalWrite(trigPin, HIGH); // postavi Trigger pin na HIGH za 10 mikrosekundi delayMicroseconds(10);
digitalWrite(trigPin, LOW); // postavi Trigger pin na LOW za začetek merjenja
int distance = pulseIn(echoPin, HIGH); // odčitaj
distance= distance/58; // Izračunaj odčitek v cm

lcd.setCursor(0, 1); // pozicioniraj naslednji izpis
lcd.print(distance); // izpiši razdaljo
lcd.print(” cm “); // dodaj še napis cm

delay(50); // zakasnitev do naslednjega merjenja
}

 

admin

admin

Leave a Replay