Përmbajtje:

Matja e Përshpejtimit duke Përdorur BMA250 dhe Raspberry Pi: 4 Hapa
Matja e Përshpejtimit duke Përdorur BMA250 dhe Raspberry Pi: 4 Hapa

Video: Matja e Përshpejtimit duke Përdorur BMA250 dhe Raspberry Pi: 4 Hapa

Video: Matja e Përshpejtimit duke Përdorur BMA250 dhe Raspberry Pi: 4 Hapa
Video: Matematikë 5 - Përsëritje: Matja e gjatësisë 2024, Nëntor
Anonim
Image
Image

BMA250 është një akselerometër i vogël, i hollë, me ultra të ulët, me 3 boshte me matje me rezolucion të lartë (13-bit) deri në ± 16 g. Të dhënat dalëse dixhitale janë të formatuara si plotësuese 16-bitësh dy dhe janë të arritshme përmes ndërfaqes dixhitale I2C. Mat mat nxitimin statik të gravitetit në aplikimet e ndjeshmërisë së pjerrësisë, si dhe nxitimin dinamik që rezulton nga lëvizja ose goditja. Rezolucioni i tij i lartë (3.9 mg/LSB) mundëson matjen e ndryshimeve të prirjes më pak se 1.0 °.

Në këtë tutorial ne do të masim nxitimin në të tre akset pingul duke përdorur BMA250 dhe Raspberry Pi. Sensori është programuar në gjuhën python.

Hapi 1: Kërkohet harduer:

Kërkohet harduer
Kërkohet harduer
Kërkohet harduer
Kërkohet harduer
Kërkohet harduer
Kërkohet harduer

Materialet që na duhen për të arritur qëllimin tonë përfshijnë përbërësit e mëposhtëm të harduerit:

1. BMA250

2. Raspberry Pi

3. Kabllo I2C

4. Mburoja I2C për Raspberry Pi

5. Kabllo Ethernet

Hapi 2: Bashkimi i harduerit:

Lidhja e harduerit
Lidhja e harduerit
Lidhja e harduerit
Lidhja e harduerit

Seksioni i lidhjes së harduerit në thelb shpjegon lidhjet e telave të kërkuara midis sensorit dhe mjedrës pi. Sigurimi i lidhjeve të sakta është nevoja themelore gjatë punës në çdo sistem për daljen e dëshiruar. Pra, lidhjet e nevojshme janë si më poshtë:

BMA250 do të funksionojë mbi I2C. Këtu është shembulli i diagramit të instalimeve elektrike, duke demonstruar se si të lidhni secilën ndërfaqe të sensorit.

Jashtë kutisë, bordi është i konfiguruar për një ndërfaqe I2C, si i tillë ne rekomandojmë përdorimin e këtij bashkimi nëse përndryshe jeni agnostik. Gjithçka që ju nevojitet janë katër tela!

Vetëm katër lidhje kërkohen kunjat Vcc, Gnd, SCL dhe SDA dhe këto janë të lidhura me ndihmën e kabllit I2C.

Këto lidhje demonstrohen në fotot e mësipërme.

Hapi 3: Kodi Python për Matjen e Përshpejtimit:

Kodi Python për Matjen e Përshpejtimit
Kodi Python për Matjen e Përshpejtimit
Kodi Python për Matjen e Përshpejtimit
Kodi Python për Matjen e Përshpejtimit

Avantazhi i përdorimit të mjedrës pi është, që ju siguron fleksibilitetin e gjuhës programuese në të cilën dëshironi të programoni bordin në mënyrë që të ndërlidhni sensorin me të. Duke shfrytëzuar këtë avantazh të këtij bordi, ne po demonstrojmë këtu programimin e tij në piton. Python është një nga gjuhët më të lehta të programimit me sintaksën më të lehtë. Kodi python për BMA250 mund të shkarkohet nga komuniteti ynë GitHub që është Dyqani Dcube

Si dhe për lehtësinë e përdoruesve, ne po shpjegojmë kodin edhe këtu:

Si hapi i parë i kodimit, duhet të shkarkoni bibliotekën SMBus në rast të python sepse kjo bibliotekë mbështet funksionet e përdorura në kod. Pra, për të shkarkuar bibliotekën mund të vizitoni lidhjen e mëposhtme:

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

Kodin e punës mund ta kopjoni edhe këtu:

import smbus

koha e importit

# Merr autobus I2C = smbus. SMBus (1)

Adresa # BMA250, 0x18 (24)

# Zgjidh regjistrin e përzgjedhjes së diapazonit, 0x0F (15)

# 0x03 (03) Vendosni diapazonin = +/- 2gbus.write_byte_data (0x18, 0x0F, 0x03)

# Adresa BMA250, 0x18 (24)# Zgjidh regjistrin e gjerësisë së brezit, 0x10 (16)

# 0x08 (08) Bandwidth = 7.81 Hzbus.write_byte_data (0x18, 0x10, 0x08)

koha. gjumi (0.5)

Adresa # BMA250, 0x18 (24)

# Lexoni të dhënat mbrapa nga 0x02 (02), 6 bajt

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

të dhëna = bus.read_i2c_block_data (0x18, 0x02, 6)

# Ktheni të dhënat në 10 bit

xAccl = (të dhëna [1] * 256 + (të dhëna [0] & 0xC0)) / 64

nëse xAccl> 511:

xAccl -= 1024

yAccl = (të dhëna [3] * 256 + (të dhëna [2] & 0xC0)) / 64

nëse yAccl> 511:

yAccl -= 1024

zAccl = (të dhëna [5] * 256 + (të dhëna [4] & 0xC0)) / 64

nëse zAccl> 511:

zAccl -= 1024

# Dalja e të dhënave në ekran

print "Përshpejtimi në boshtin X: % d" % xAccl

print "Përshpejtimi në Boshtin Y: % d" % yAccl

print "Përshpejtimi në Boshtin Z: % d" % zAccl

Kodi ekzekutohet duke përdorur komandën e mëposhtme:

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

Dalja e sensorit tregohet në figurën e mësipërme për referencë të përdoruesit.

Hapi 4: Aplikimet:

Aplikimet
Aplikimet

Përshpejtuesit si BMA250 kryesisht gjejnë aplikimin e tij në lojërat dhe ndërrimin e profilit të ekranit. Ky modul sensor përdoret gjithashtu në sistemin e avancuar të menaxhimit të energjisë për aplikacionet mobile. BMA250 është një sensor dixhital i nxitimit dixhital i cili është i përfshirë me një kontrollues ndërprerës të shkaktuar nga lëvizja inteligjente në çip.

Recommended: