Smoothing analog sensor values: Unterschied zwischen den Versionen

Aus hyperdramatik
Zur Navigation springen Zur Suche springen
Keine Bearbeitungszusammenfassung
Keine Bearbeitungszusammenfassung
Zeile 1: Zeile 1:
If the sensor value on your analog pin has some unwanted amplitudes, you can smooth it with some tricks.
If the sensor value on your analog pin has some unwanted amplitudes, you can smooth it with some tricks.


=smoothing analog sensor values #1 =
==smoothing analog sensor values #1==
Tremors can come from fluctuating power supply, interference or a circuit inside the Arduino chip.  
Tremors can come from fluctuating power supply, interference or a circuit inside the Arduino chip.  


Zeile 25: Zeile 25:


</source>
</source>
==smoothing analog sensor values #2==
==running average==

Version vom 24. Mai 2022, 16:28 Uhr

If the sensor value on your analog pin has some unwanted amplitudes, you can smooth it with some tricks.

smoothing analog sensor values #1

Tremors can come from fluctuating power supply, interference or a circuit inside the Arduino chip.

In this example, we simply take a portion of the new measurement and combine it with a portion of the value measured last time. The part of the old value is always a bit bigger than the new value and so the new value influences the measurement but we overwrite the tremor.

>> https://www.youtube.com/watch?v=AsQ4G1lckhY

int sensorValue = 0;

void setup(){
Serial.begin(9600);
}

void loop(){
sensorValue = analogRead(A0);
smoothValue = 0.6 * smoothValue + 0.4 * sensorValue; //you can tray with the values you multiply. It is just always under 1
Serial.print(sensorValue);
Serial.print("\t"); //TAB
Serial.print(smoothValue);
}

smoothing analog sensor values #2

running average