Schritt 17: Gewusst wie: verwenden Sie die MMA7361-Beschleunigungsmesser?:
Es ist ein Breakout-Board für Freescales MMA7361L 3-Achsen analoge MEMS Beschleunigungsmesser. Der Sensor benötigt eine sehr geringe Menge Strom und hat eine g-SELECT-Anweisung geben die Beschleunigungsmesser zwischen ±1.5 g und ±6g Messbereiche wechselt. Andere Eigenschaften umfassen einen Schlafmodus, Signalkonditionierung, einen 1-poligen Tiefpassfilter, Temperaturkompensation, Selbsttest, und 0 g-erkennen die lineare Freifall erkennt. Zero-g Offset und Empfindlichkeit sind werkseitig eingestellt und erfordern keine externen Geräte.
Die Spezifikationen sind:
- Unterstützt 2.2V ~ 3.6V oder 5V Spannungseingang.
- Zwei wählbare Messbereiche (±1.5 g, ±6g)
- Steckbrett freundlich - 0.1" Pitch-Header
- Geringe Stromaufnahme: 400 µA
- Sleep-Modus: 3 µA
- Niedrige Spannung Betrieb: 2,2 V - 3,6 V
- Hohe Empfindlichkeit (800 mV/g bei 1,5 g)
- Schnelle Einschaltzeit (0,5 ms aktivieren Reaktionszeit)
- Selbsttest für freien Fall erkennen, Diagnose
- 0 Erkennung g-für den Freifall-Schutz
- Signalkonditionierung mit Low pass filter
- Robuste Bauweise, hohe Schocks Überlebensfähigkeit
Mit der AcceleroMMA7361-Bibliothek ist es so einfach, dieses kleine Modul benutzen. Die Befehle, die Sie mit dieser Bibliothek verwenden können sind:
- leere beginnen)
- leere beginnen (Int SleepPin, Int SelfTestPin, Int ZeroGPin, Int gSelectPin, Int xPin, Int yPin, Int zPin)
- Int GetXRaw)
- getXRaw(): kehrt die Rohdaten aus der X-Achse analoge i/o Port des Arduino als Ganzzahl
- Int GetYRaw)
- getYRaw(): kehrt die Rohdaten von der Y-Achse analoge i/o Port des Arduino als Ganzzahl
- Int GetZRaw)
- getZRaw(): kehrt die Rohdaten aus der z-Achse analog i/o Port des Arduino als Ganzzahl
- Int GetXVolt)
- getXVolt(): kehrt die Spannung in mV aus der X-Achse analoge i/o Port des Arduino als Ganzzahl
- Int GetYVolt)
- getYVolt(): kehrt die Spannung in mV aus der Y-Achse analoge i/o Port des Arduino als Ganzzahl
- Int GetZVolt)
- getZVolt(): kehrt die Spannung in mV aus der z-Achse analog i/o Port des Arduino als Ganzzahl
- Int GetXAccel)
- getXAccel(): gibt die Beschleunigung der X-Achse als ein Int (1 = 100.00)
- Int GetYAccel)
- getYAccel(): gibt die Beschleunigung der Y-Achse als ein Int (1 = 100.00)
- Int GetZAccel)
- getZAccel(): gibt die Beschleunigung der z-Achse als ein Int (1 = 100.00)
- void GetAccelXYZ (Int _XAxis, Int _YAxis, Int _ZAxis)
- GetAccelXYZ (Int _XAxis, Int _YAxis, Int _ZAxis) liefert alle Achsen gleichzeitig als Zeiger
- Int GetTotalVector)
- GetTotalVector gibt die Größe des gesamten Beschleunigung Vektors als Ganzzahl
- void SetOffSets (Int xOffSet, Int yOffSet, Int zOffSet)
- leere kalibrieren)
- void SetARefVoltage (double _refV)
- void SetAveraging (Int Avg)
- SetAveraging (Int Avg): Sätze wie viele Proben müssen in Standard-GetAccel gemittelt ist 10.
- Int GetOrientation)
- void SetSensitivity (Boolesche Sensi)
- SetSensitivity setzt die Empfindlichkeit um + /-1,5 G (HIGH) oder + / 6 G (LOW) mit hohem boolesche (1,5 G) oder niedrig (6 G)
- nichtig Schlaf)
- Schlaf lässt die Gerät schlafen (wenn Gerät bereits dieses tut nichts schläft)
- leere Folge)
- Gefolge ermöglicht das Gerät nach dem Schlaf (wenn Gerät nicht dieses tut nichts schläft) gibt es eine Verzögerung von 2 ms, durch aktivieren Reaktionszeit (Datenblatt: Typ 0,5 ms, max 2 ms)
Die Bibliothek gibt es 3 einfache Beispiele. Man bekommt die Beschleunigungen in jeder Achse, die zweite den Winkel und die dritte erhält die Spannung. Früher habe ich die "Rohdaten" um den Winkel jeder Achse Othe Controller zu steuern, die Neigung zu bekommen: