Arduino Nano - Ultrasone Sensor - LCD

Deze tutorial legt uit hoe u de Arduino Nano gebruikt om de afstand te meten met een ultrasone sensor en deze afstand weer te geven op een LCD I2C-display.

Hardware Benodigd

1×Official Arduino Nano
1×Alternatief: DIYables ATMEGA328P Nano Development Board
1×USB A naar Mini-B USB-kabel
1×LCD I2C
1×Ultrasone Sensor
1×Jumperdraden
1×(Aanbevolen) Schroefklem Uitbreidingsboard voor Arduino Nano
1×(Aanbevolen) Breakout Uitbreidingsboard voor Arduino Nano
1×(Aanbevolen) Stromsplitter voor Arduino Nano

Of u kunt de volgende kits kopen:

1×DIYables Sensorkit (30 sensoren/displays)
1×DIYables Sensorkit (18 sensoren/displays)
Openbaarmaking: Sommige van de links in deze sectie zijn Amazon-affiliate links. We kunnen een commissie ontvangen voor aankopen die via deze links worden gedaan, zonder extra kosten voor u. We waarderen uw steun.

Over Ultrasone Sensor en LCD

Als u nog niet bekend bent met de ultrasone sensor en het LCD (inclusief pinout, werking en programmeren), kunnen de volgende tutorials u helpen:

Bedradingsschema

Arduino Nano Ultrasone Sensor LCD bedradingsschema

This image is created using Fritzing. Click to enlarge image

Arduino Nano Code

/* * Deze Arduino Nano code is ontwikkeld door newbiely.nl * Deze Arduino Nano code wordt zonder enige beperking aan het publiek beschikbaar gesteld. * Voor volledige instructies en schema's, bezoek: * https://newbiely.nl/tutorials/arduino-nano/arduino-nano-ultrasonic-sensor-lcd */ #include <LiquidCrystal_I2C.h> #define TRIG_PIN 4 // The Arduino Nano pin connected to TRIG pin of ultrasonic sensor #define ECHO_PIN 3 // The Arduino Nano pin connected to ECHO pin of ultrasonic sensor LiquidCrystal_I2C lcd(0x27, 16, 2); // I2C address 0x27 (from DIYables LCD), 16 column and 2 rows float duration_us, distance_cm; void setup() { lcd.init(); // Initialize the LCD I2C display lcd.backlight(); // open the backlight pinMode(TRIG_PIN, OUTPUT); // config trigger pin to output mode pinMode(ECHO_PIN, INPUT); // config echo pin to input mode } void loop() { // Produce a 10-microsecond pulse to the TRIG pin. digitalWrite(TRIG_PIN, HIGH); delayMicroseconds(10); digitalWrite(TRIG_PIN, LOW); // Measure the pulse duration from the ECHO pin duration_us = pulseIn(ECHO_PIN, HIGH); // calculate the distance distance_cm = 0.017 * duration_us; lcd.clear(); lcd.setCursor(0, 0); // start to print at the first row lcd.print("Distance: "); lcd.print(distance_cm); delay(500); }

※ Notiz:

Het I2C-adres van het LCD kan verschillen per fabrikant. In onze code gebruiken we 0x27, zoals gespecificeerd door de fabrikant DIYables.

Snelle Stappen

  • Verbind uw Arduino Nano met uw computer via een USB-kabel.
  • Start de Arduino IDE en selecteer het juiste board en poort.
  • Klik op het Libraries-icoon in de linkerzijbalk van de Arduino IDE.
  • Zoek naar “LiquidCrystal I2C” en vind de LiquidCrystal_I2C bibliotheek gemaakt door Frank de Brabander.
  • Klik vervolgens op de Installeren-knop om de bibliotheek te installeren.
Arduino Nano LiquidCrystal I2C bibliotheek
  • Kopieer de code en open deze met de Arduino IDE.
  • Druk dan op de Upload-knop in de Arduino IDE om de code te compileren en naar de Arduino Nano te uploaden.
Arduino IDE Code Uploaden
  • Bevestig de sensor aan koud of warm water, of houd deze in uw hand.
  • Bekijk vervolgens de afstand die op het LCD wordt weergegeven.

Code-uitleg

Bekijk de regel-voor-regel uitleg die terug te vinden is in de commentaren van de broncode!

※ Notiz:

  • Als het LCD-scherm niets weergeeft, raadpleeg dan Probleemoplossing bij LCD I2C voor hulp.
  • De bovenstaande code is alleen bedoeld voor educatieve doeleinden. De ultrasone sensor is zeer gevoelig voor storingen, dus als u hem in een echte toepassing wilt gebruiken, moet u het signaal filteren. Voor meer informatie over hoe u dit doet, zie hoe ruis te filteren bij ultrasone sensormetingen.

Video Tutorial

We overwegen het maken van videotutorials. Als u videotutorials belangrijk vindt, abonneer u dan op ons YouTube-kanaal om ons te motiveren de video's te maken.

※ ONZE BERICHTEN

  • U bent welkom om de link naar deze tutorial te delen. Gebruik onze inhoud echter niet op andere websites. We hebben veel moeite en tijd gestoken in het maken van de inhoud, respecteer alstublieft ons werk!