GY-61 mit ADXL335: 3-Achsen-MEMS-Beschleunigungsmesser
- Wir testen das Modul an einem Arduino.
Diese Werte stammen von einem Arduino Nano, jedoch um zweiten Fall erfolgte die Zeitmessung erst nach den Ausgaben.GY-61-testen-1.ino GY-61-testen-1.ino 428µs,395,357,299 394,358,293,964µs 340µs,394,357,332 393,357,342,832µs 340µs,393,357,345 393,357,360,844µs 340µs,394,357,349 394,358,358,832µs 336µs,393,357,351 394,357,353,832µs ...Wir sehen in diesem Beispiel, dass die Serial.print()-Anweiung eine merkliche Laufzeit aufweist.
Gelingt es dir, das gegebene Programm entsprechend umzustellen?- Wir testen das Modul an einem Arduino.
Jetzt ist der Einfluss der Ausgabe-Anweisung auf die Laufzeit sehr gering.... 394,358,350,340µs ...- Wir machen eine Erweiterung im Programm, um die Laufzeit im loop()-Bereich besser zu verstehen.
Die delay()-Anweiung in der Zeile 20 bestimmt die Anzahl der Messwerte pro Sekunde.
Wenn später andere Programme seriell auf die Daten des Arduino zugreifen möchten, ist die Angabe wichtig.
delay-Wert im ms: 0 1 10 100 Anzahl der Messungen pro Sekunde: 493 453 89 10Sollte mehr Daten auf die serielle Schnittstelle geschrieben werden, als von dieser gelesen werde, kommt es zu einen Datenstau bzw. Datenverlust.- Die folgende Variante bestimmt einige statistische Wert.
Es werden Mittelwert, kleinster und größter Wert der drei Messwerte bestimmt.- Wir wollen nun aus den Messwerten die Lage des Sensors bestimmen.
Dazu legen wir die Platine mit dem Sensor waagerecht auf den Tisch und starten das Programm auf dem Arduino neu.
In 'setup()' wird 'messen(1000)' aufgerufen. Während dieser Zeit sollte der Sensor waagerecht auf dem Tisch liegen.
![]()
...