const int sensorPin = A0; // Sensor is verbonden met pin A0
const int numReadings = 10; // Aantal metingen voor gemiddelde
int readings[numReadings]; // Array om de metingen op te slaan
int readIndex = 0; // Huidige positie in de array
int total = 0; // Som van de metingen
int average = 0; // Gemiddelde waarde
void setup() {
Serial.begin(9600); // Start seriële communicatie
for (int i = 0; i < numReadings; i++) {
readings[i] = 0; // Initialiseer de array met nullen
}
}
void loop() {
total = total - readings[readIndex]; // Haal de oude meting uit de som
readings[readIndex] = analogRead(sensorPin); // Lees de nieuwe waarde van de sensor
total = total + readings[readIndex]; // Voeg de nieuwe waarde toe aan de som
readIndex = (readIndex + 1) % numReadings; // Ga naar de volgende positie in de array
average = total / numReadings; // Bereken het gemiddelde
Serial.println(average); // Print de gemiddelde waarde naar de seriële monitor
delay(10); // Wacht een korte tijd voordat de volgende meting wordt gedaan
}