Obsah:

Raspberry Pi MMA8452Q 3-osový 12-bitový/8-bitový digitálny akcelerometer Python výučba: 4 kroky
Raspberry Pi MMA8452Q 3-osový 12-bitový/8-bitový digitálny akcelerometer Python výučba: 4 kroky

Video: Raspberry Pi MMA8452Q 3-osový 12-bitový/8-bitový digitálny akcelerometer Python výučba: 4 kroky

Video: Raspberry Pi MMA8452Q 3-osový 12-bitový/8-bitový digitálny akcelerometer Python výučba: 4 kroky
Video: Raspberry Pi 3: обзор, первое включение, настройка – Часть 1 2024, Júl
Anonim
Image
Image

MMA8452Q je inteligentný, trojosový, kapacitný, mikroosý akcelerometer s malým výkonom a 12 bitovým rozlíšením. Flexibilné programovateľné možnosti pre používateľov sú k dispozícii pomocou vstavaných funkcií v akcelerometri, konfigurovateľných na dva kolíky prerušenia. Má užívateľsky voliteľné plné stupnice ± 2 g/± 4 g/± 8 g s filtrovanými údajmi filtrovanými horným prechodom a nefiltrovanými údajmi, ktoré sú k dispozícii v reálnom čase. Tu je jeho ukážka s malinou pi pomocou kódu python.

Krok 1: Čo potrebujete.. !

Čo potrebuješ..!!
Čo potrebuješ..!!

1. Raspberry Pi

2. MMA8452Q

3. Kábel I²C

4. I²C štít pre Raspberry Pi

5. Ethernetový kábel

Krok 2: Pripojenia:

Pripojenia
Pripojenia
Pripojenia
Pripojenia
Pripojenia
Pripojenia
Pripojenia
Pripojenia

Vezmite I2C štít na malinový pi a jemne ho zatlačte cez gpio kolíky malinového pi.

Potom pripojte jeden koniec kábla I2C k senzoru MMA8452Q a druhý koniec k štítu I2C.

Pripojte tiež ethernetový kábel k pí alebo môžete použiť modul WiFi.

Pripojenia sú znázornené na obrázku vyššie.

Krok 3: Kód:

Kód
Kód

Pythonový kód pre MMA8452Q je možné stiahnuť z nášho úložiska github- ControlEverythingCommunity

Tu je odkaz.

Na kód pythonu sme použili knižnicu SMBus, kroky na inštaláciu SMBus na Raspberry Pi sú popísané tu:

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

Odtiaľto môžete tiež skopírovať kód, ktorý je nasledujúci:

# Distribuované s licenciou slobodnej vôle.

# Používajte ho akýmkoľvek spôsobom chcete, so ziskom alebo zadarmo, za predpokladu, že sa zmestí do licencií súvisiacich diel.

# MMA8452Q

# Tento kód je navrhnutý tak, aby pracoval s mini modulom MMA8452Q_I2CS I2C.

import smbus

čas importu

# Získajte autobus I2C

bus = smbus. SMBus (1)

# MMA8452Q adresa, 0x1C (28)

# Vyberte riadiaci register, 0x2A (42)

# 0x00 (00) Pohotovostný režim

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

# MMA8452Q adresa, 0x1C (28)

# Vyberte riadiaci register, 0x2A (42)

# 0x01 (01) Aktívny režim

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

# MMA8452Q adresa, 0x1C (28)

# Vyberte konfiguračný register, 0x0E (14)

# 0x00 (00) Nastavte rozsah na +/- 2g

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

čas.spánok (0,5)

# MMA8452Q adresa, 0x1C (28)

# Načítajte údaje späť z 0x00 (0), 7 bytov

# Stavový register, os X MSB, os X LSB, os Y MSB, os Y LSB, os Z MSB, os Z LSB

data = bus.read_i2c_block_data (0x1C, 0x00, 7)

# Previesť údaje

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

ak xAccl> 2047:

xAccl -= 4096

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

ak yAccl> 2047:

yAccl -= 4096 z

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

ak zAccl> 2047:

zAccl -= 4096

# Výstup údajov na obrazovku

vytlačiť „Zrýchlenie v osi X: %d“%xAccl

vytlačiť "Zrýchlenie v osi Y: %d" %yAccl

vytlačiť "Zrýchlenie v osi Z: %d" %zAccl

Krok 4: Aplikácie:

MMA8452Q má rôzne aplikácie, ktoré zahŕňajú aplikácie E-Compass, detekciu statickej orientácie, ktorá zahŕňa portrét/krajinu, hore/dole, vľavo/vpravo, identifikáciu polohy zozadu/spredu, notebook, elektronickú čítačku a detekciu pádu a voľného pádu notebooku, v reálnom čase detekcia orientácie vrátane virtuálnej reality a hier 3D spätná väzba o polohe užívateľa, analýza aktivít v reálnom čase, ako je počítanie krokov krokomerom, detekcia pádu voľného pádu pre pevný disk, zálohovanie GPS s mŕtvym zúčtovaním a mnoho ďalších.

Odporúča: