Der M5Stack hat zwei eingebaute Neigungssensoren, einen für die X Achse und einen für die Y Achse. Damit lässt sich die Neigung des M5 Stack relativ genau bestimmen. Unter HARDWARE --> IMU finden sich die internen Neigungssensoren.
Den Wert für die X Achse und die Y Achse erhält man über die beiden Blöcke ERHALTE X und ERHALTE Y.
Als Kleines Beispiel habe ich hier eine digitale Wasserwage, wie man sie von vielen Handy Apps her kennt programmiert. Mit diesen beiden Sensoren könnte man dann wie bei Handy Spielen Autos steuern oder Kugel hin und her "laufen" lassen.
Für die Wasserwage habe ich ein Linie und einen Kreis. Ist der Wert 0, ist die Linie und der Kreis grün und die Linie gerade. Ist der Wert nicht 0, ist die Linie und der Kreis rot und die Linie entsprechend der Neigung. Zudem wird der Wert als Zahl auf dem Display angezeigt.
Das Wasserwagen Programm:
Wichtigster Teil ist das "Set" für die Linie.
- x1 ist dabei die Vertikale, mit 0 beginnt die Linie als ganz links am Rand
- y1 ist dabei der erste Punkt in der Horizontalen, damit ist der Punkt links ungefähr in der Mitte des Bildschirms
- x2 bestimmt die Länge der Linie. Da von x1 nach 2x die Horizontale Linie ist, ist.
- y2 ist der Punkt der über die Vertikale Verschiebung bestimmt.
- + 100 damit die Linie bei 0 auf gleicher Höhe ist. Da y1 auch bei 100 ist
- x 10 damit der Wert auch von in der Horizontalen zu sehen ist, der Wert von ERHALTE Y, sonst zu kleine wäre. Wer es noch schöner will, kann anstatt des x 10 auch die Zuordnen Funktion verwenden.
- Konvertiere zu integer, da die Funktion "Set" nur Ganzzahlen (1,2,300,4000 usw.) verwenden kann, ERHALT Y aber Kommazahlen (2,345/1,3275 usw.) ausgibt, wird der Wert über das Konvertieren zu einer Ganzzahl.
- Erhalte Y, hier wird der Wert des Neigungssensor ausgegeben.
Die Einstellungen für die Linie
Die Einstellung für den Kreis
Anzeige des M5Stack wenn der Wert 0 ist, wenn der Neigungssensor als in der Horizontalen genau liegt.
Die Anzeige des M5Stack wenn der Neigungssensor, nicht auf 0 ist.b