Sadržaj:

Raspberry Pi MMA8452Q 3-osi 12-bitni/8-bitni digitalni akcelerometar Python Vodič: 4 koraka
Raspberry Pi MMA8452Q 3-osi 12-bitni/8-bitni digitalni akcelerometar Python Vodič: 4 koraka

Video: Raspberry Pi MMA8452Q 3-osi 12-bitni/8-bitni digitalni akcelerometar Python Vodič: 4 koraka

Video: Raspberry Pi MMA8452Q 3-osi 12-bitni/8-bitni digitalni akcelerometar Python Vodič: 4 koraka
Video: Как использовать гироскоп, акселерометр, магнитометр MPU-9250 для Arduino 2024, Srpanj
Anonim
Image
Image

MMA8452Q je pametan, troosni, kapacitivni, mikroobrinuti akcelerometar male snage s 12 bita rezolucije. Fleksibilne korisnički programirane opcije omogućene su uz pomoć ugrađenih funkcija u mjeraču ubrzanja, koje se mogu konfigurirati na dva pina prekida. Ima korisničke skale od ± 2 g/± 4 g/± 8 g koje korisnik može odabrati s podacima filtriranim visokopropusnim filtrom, kao i nefiltriranim podacima dostupnim u stvarnom vremenu. Evo njegove demonstracije s malinom pi pomoću python koda.

Korak 1: Što vam treba..

Što trebaš..!!
Što trebaš..!!

1. Malina Pi

2. MMA8452Q

3. I²C kabel

4. I²C štit za Raspberry Pi

5. Ethernet kabel

Korak 2: Veze:

Priključci
Priključci
Priključci
Priključci
Priključci
Priključci
Priključci
Priključci

Uzmite I2C štit za malinu pi i nježno je gurnite preko gpio igle maline pi.

Zatim spojite jedan kraj I2C kabela na senzor MMA8452Q, a drugi kraj na I2C štit.

Također priključite Ethernet kabel na pi ili možete koristiti WiFi modul.

Priključci su prikazani na gornjoj slici.

Korak 3: Kôd:

Kodirati
Kodirati

Python kôd za MMA8452Q može se preuzeti s našeg github spremišta- ControlEverythingCommunity

Evo linka.

Koristili smo knjižnicu SMBus za python kôd, koraci za instaliranje SMBusa na malinu pi opisani su ovdje:

pypi.python.org/pypi/smbus-cffi/0.5.1

Ovdje možete i kopirati kôd, dat je na sljedeći način:

# Distribuirano s licencom slobodne volje.

# Koristite ga kako god želite, profitno ili besplatno, pod uvjetom da se uklapa u licence povezanih djela.

# MMA8452Q

# Ovaj kôd je dizajniran za rad s MMA8452Q_I2CS I2C mini modulom.

uvoz smbus

vrijeme uvoza

# Nabavite I2C autobus

sabirnica = smbus. SMBus (1)

# MMA8452Q adresa, 0x1C (28)

# Odaberite Upravljački registar, 0x2A (42)

# 0x00 (00) StandBy način rada

bus.write_byte_data (0x1C, 0x2A, 0x00)

# MMA8452Q adresa, 0x1C (28)

# Odaberite Upravljački registar, 0x2A (42)

# 0x01 (01) Aktivni način rada

bus.write_byte_data (0x1C, 0x2A, 0x01)

# MMA8452Q adresa, 0x1C (28)

# Odaberite Registar konfiguracije, 0x0E (14)

# 0x00 (00) Područje postavite na +/- 2g

bus.write_byte_data (0x1C, 0x0E, 0x00)

vrijeme.spavanje (0,5)

# MMA8452Q adresa, 0x1C (28)

# Očitavanje podataka unatrag od 0x00 (0), 7 bajtova

# Registar statusa, X-Axis MSB, X-Axis LSB, Y-Axis MSB, Y-Axis LSB, Z-Axis MSB, Z-Axis LSB

podaci = sabirnica.čitani_i2c_blok_podaci (0x1C, 0x00, 7)

# Pretvorite podatke

xAccl = (podaci [1] * 256 + podaci [2]) / 16

ako je xAccl> 2047:

xAccl -= 4096

yAccl = (podaci [3] * 256 + podaci [4]) / 16

ako je yAccl> 2047:

yAccl -= 4096 z

Accl = (podaci [5] * 256 + podaci [6]) / 16

ako je zAccl> 2047:

zAccl -= 4096

# Izlažite podatke na zaslon

ispis "Ubrzanje u osi X: %d" %xAccl

ispis "Ubrzanje u osi Y: %d" %yAccl

ispis "Ubrzanje u osi Z: %d" %zAccl

Korak 4: Aplikacije:

MMA8452Q ima različite aplikacije koje uključuju aplikacije za e-kompas, detekciju statičke orijentacije koja uključuje portret/pejzaž, gore/dolje, lijevo/desno, natrag/sprijeda identifikaciju položaja, prijenosno računalo, e-čitač i otkrivanje padova i laptopa u stvarnom vremenu otkrivanje orijentacije, uključujući virtualnu stvarnost i povratne informacije o položaju korisnika 3D igre, analizu aktivnosti u stvarnom vremenu, poput brojanja koraka koraka, detekciju slobodnog pada za HDD, sigurnosno kopiranje GPS-a i još mnogo toga.

Preporučeni: