Bonjour à tous,
je suis Cédric et je début dans l’univers d'Arduino, j'ai un Arduino Uno Wifi, un écran LCD 2x16, un capteur à ultra-son HC-SR04.
J'aimerais mesuré la hauteur d'eau dans une cuve et l'exprimé en litre, j'ai réussi sauf que le code est inversé en effet le capteur ne bouge pas et avec mon code quand l'eau monte et sur mon écran LCD il y as moins de litres, par exemple si j'ai 10 cm = 5 litres et si j'ai 20 cm = 12 litres, je voudrais que cela s'inverse 10 cm = 12 litres et 20 cm = 5 litres.
Voici monde code
/*
* Ultrasonic Sensor HC-SR04 and Arduino Tutorial
*
* Crated by Dejan Nedelkovski,
* www.HowToMechatronics.com
*
*/
#include <LiquidCrystal.h> // includes the LiquidCrystal Library
LiquidCrystal lcd(12, 11, 5, 4, 3, 2); // Creates an LCD object. Parameters: (rs, enable, d4, d5, d6, d7)
const int trigPin = 7;
const int echoPin = 10;
long duration;
int distanceCm, volume;
void setup() {
lcd.begin(16,2); // Initializes the interface to the LCD screen, and specifies the dimensions (width and height) of the display
pinMode(trigPin, OUTPUT);
pinMode(echoPin, INPUT);
}
void loop() {
digitalWrite(trigPin, LOW);
delayMicroseconds(2);
digitalWrite(trigPin, HIGH);
delayMicroseconds(10);
digitalWrite(trigPin, LOW);
duration = pulseIn(echoPin, HIGH);
distanceCm= duration*0.034/2;
volume = distanceCm *10* 0.40*0.20*0.15;
lcd.setCursor(0,0); // Sets the location at which subsequent text written to the LCD will be displayed
lcd.print("Distance: "); // Prints string "Distance" on the LCD
lcd.print(distanceCm); // Prints the distance value from the sensor
lcd.print(" cm");
delay(10);
lcd.setCursor(0,1);
lcd.print("Volume: ");
lcd.print(volume);
lcd.print(" Litres");
delay(10);
}
Pouvez-vous m'aidé s'il vous plait ?
Merci.
Volume_en_litres.ino (1.16 KB)
