Obsah:

Meranie zrýchlenia pomocou BMA250 a Raspberry Pi: 4 kroky
Meranie zrýchlenia pomocou BMA250 a Raspberry Pi: 4 kroky

Video: Meranie zrýchlenia pomocou BMA250 a Raspberry Pi: 4 kroky

Video: Meranie zrýchlenia pomocou BMA250 a Raspberry Pi: 4 kroky
Video: Meranie tiažového zrýchlenia pomocou reverzného kyvadla 2024, November
Anonim
Image
Image

BMA250 je malý, tenký, 3-osový akcelerometer s ultra nízkym výkonom a meraním s vysokým rozlíšením (13 bitov) až ± 16 g. Digitálne výstupné údaje sú formátované ako 16-bitové dvojčatá a sú prístupné prostredníctvom digitálneho rozhrania I2C. Meria statické gravitačné zrýchlenie v aplikáciách snímajúcich náklon, ako aj dynamické zrýchlenie vyplývajúce z pohybu alebo šoku. Jeho vysoké rozlíšenie (3,9 mg/LSB) umožňuje meranie zmien sklonu menej ako 1,0 °.

V tomto návode sa chystáme zmerať zrýchlenie vo všetkých troch kolmých osiach pomocou BMA250 a Raspberry Pi. Senzor je naprogramovaný v jazyku python.

Krok 1: Potrebný hardvér:

Potrebný hardvér
Potrebný hardvér
Potrebný hardvér
Potrebný hardvér
Potrebný hardvér
Potrebný hardvér

Materiály, ktoré potrebujeme na dosiahnutie nášho cieľa, obsahujú nasledujúce hardvérové komponenty:

1. BMA250

2. Raspberry Pi

3. Kábel I2C

4. I2C štít pre Raspberry Pi

5. Ethernetový kábel

Krok 2: Pripojenie hardvéru:

Pripojenie hardvéru
Pripojenie hardvéru
Pripojenie hardvéru
Pripojenie hardvéru

Časť zapojenia hardvéru v zásade vysvetľuje zapojenie potrebné medzi senzorom a malinovým pi. Zabezpečenie správneho pripojenia je základnou potrebou pri práci na akomkoľvek systéme s požadovaným výstupom. Potrebné spojenia sú teda tieto:

BMA250 bude fungovať na I2C. Tu je príklad schémy zapojenia, ktorá ukazuje, ako prepojiť každé rozhranie snímača.

Hneď po vybalení je doska nakonfigurovaná na rozhranie I2C, preto vám toto pripojenie odporúčame použiť, ak ste inak agnostik. Všetko, čo potrebujete, sú štyri drôty!

Vyžadujú sa iba štyri pripojenia Vcc, Gnd, SCL a SDA piny, ktoré sú prepojené pomocou kábla I2C.

Tieto spojenia sú znázornené na obrázkoch vyššie.

Krok 3: Python kód na meranie zrýchlenia:

Python kód na meranie zrýchlenia
Python kód na meranie zrýchlenia
Python kód na meranie zrýchlenia
Python kód na meranie zrýchlenia

Výhodou použitia maliny pi je, že vám poskytuje flexibilitu programovacieho jazyka, v ktorom chcete dosku programovať, aby ste s ňou mohli prepojiť senzor. S využitím tejto výhody tejto dosky tu demonštrujeme jej programovanie v pythone. Python je jedným z najľahších programovacích jazykov s najľahšou syntaxou. Pythonový kód pre BMA250 je možné stiahnuť z našej komunity GitHub, ktorou je Dcube Store

Rovnako ako pre jednoduchosť používateľov, vysvetľujeme kód aj tu:

Ako prvý krok kódovania si musíte stiahnuť knižnicu SMBus v prípade pythonu, pretože táto knižnica podporuje funkcie použité v kóde. Ak si chcete stiahnuť knižnicu, môžete navštíviť nasledujúci odkaz:

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

Pracovný kód môžete skopírovať aj tu:

import smbus

čas importu

# Získajte zbernicu I2C = smbus. SMBus (1)

# Adresa BMA250, 0x18 (24)

# Register výberu rozsahu výberu, 0x0F (15)

# 0x03 (03) Nastavený rozsah = +/- 2gbus.write_byte_data (0x18, 0x0F, 0x03)

# Adresa BMA250, 0x18 (24)# Vyberte register šírky pásma, 0x10 (16)

# 0x08 (08) Šírka pásma = 7,81 Hz bus.write_byte_data (0x18, 0x10, 0x08)

čas.spánok (0,5)

# Adresa BMA250, 0x18 (24)

# Načítajte údaje späť z 0x02 (02), 6 bajtov

# Os X LSB, os X MSB, os Y LSB, os Y MSB, os Z LSB, os Z MSB

data = bus.read_i2c_block_data (0x18, 0x02, 6)

# Konvertujte údaje na 10 bitov

xAccl = (údaje [1] * 256 + (údaje [0] & 0xC0)) / 64

ak xAccl> 511:

xAccl -= 1024

yAccl = (údaje [3] * 256 + (údaje [2] a 0xC0)) / 64

ak yAccl> 511:

yAccl -= 1024

zAccl = (údaje [5] * 256 + (údaje [4] a 0xC0)) / 64

ak zAccl> 511:

zAccl -= 1024

# 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

Kód sa spustí pomocou nasledujúceho príkazu:

$> python BMA250.py gt; python BMA250.py

Výstup senzora je pre referenciu užívateľa zobrazený na obrázku vyššie.

Krok 4: Aplikácie:

Aplikácie
Aplikácie

Akcelerometre ako BMA250 väčšinou nachádzajú svoje uplatnenie v hrách a prepínaní profilov zobrazenia. Tento senzorový modul sa používa aj v pokročilom systéme riadenia spotreby pre mobilné aplikácie. BMA250 je trojosový digitálny snímač zrýchlenia, ktorý je vybavený inteligentným radičom prerušenia spúšťaným pohybom na čipe.

Odporúča: