Satura rādītājs:

Paātrinājuma mērīšana, izmantojot BMA250 un Raspberry Pi: 4 soļi
Paātrinājuma mērīšana, izmantojot BMA250 un Raspberry Pi: 4 soļi

Video: Paātrinājuma mērīšana, izmantojot BMA250 un Raspberry Pi: 4 soļi

Video: Paātrinājuma mērīšana, izmantojot BMA250 un Raspberry Pi: 4 soļi
Video: Kustība elektriskajā laukā - mācību stunda (Elektriskais lauks) 2024, Novembris
Anonim
Image
Image

BMA250 ir mazs, plāns, īpaši zems jauda, 3 asu akselerometrs ar augstas izšķirtspējas (13 bitu) mērījumu līdz ± 16 g. Digitālie izvaddati tiek formatēti kā 16 bitu papildinājumi, un tie ir pieejami, izmantojot I2C digitālo interfeisu. Tas mēra statisko gravitācijas paātrinājumu slīpuma noteikšanas lietojumos, kā arī dinamisku paātrinājumu, ko rada kustība vai trieciens. Tā augstā izšķirtspēja (3,9 mg/LSB) ļauj izmērīt slīpuma izmaiņas, kas ir mazākas par 1,0 °.

Šajā apmācībā mēs izmērīsim paātrinājumu visās trīs perpendikulārajās asīs, izmantojot BMA250 un Raspberry Pi. Sensors ir ieprogrammēts python valodā.

1. darbība. Nepieciešamā aparatūra:

Nepieciešamā aparatūra
Nepieciešamā aparatūra
Nepieciešamā aparatūra
Nepieciešamā aparatūra
Nepieciešamā aparatūra
Nepieciešamā aparatūra

Materiāli, kas nepieciešami mūsu mērķa sasniegšanai, ietver šādas aparatūras sastāvdaļas:

1. BMA250

2. Aveņu Pi

3. I2C kabelis

4. I2C vairogs Raspberry Pi

5. Ethernet kabelis

2. darbība. Aparatūras savienošana:

Aparatūras savienojums
Aparatūras savienojums
Aparatūras savienojums
Aparatūras savienojums

Aparatūras savienošanas sadaļa pamatā izskaidro nepieciešamos vadu savienojumus starp sensoru un aveņu pi. Pareizu savienojumu nodrošināšana ir pamatvajadzība, strādājot pie jebkuras sistēmas vēlamajam rezultātam. Tātad nepieciešamie savienojumi ir šādi:

BMA250 darbosies, izmantojot I2C. Šeit ir elektroinstalācijas shēmas piemērs, kas parāda, kā savienot katru sensora saskarni.

Izņemot komplektu, tāfele ir konfigurēta I2C saskarnei, tāpēc mēs iesakām izmantot šo savienojumu, ja esat citādi agnostiķis. Viss, kas Jums nepieciešams, ir četri vadi!

Nepieciešami tikai četri savienojumi Vcc, Gnd, SCL un SDA, un tie ir savienoti, izmantojot I2C kabeli.

Šie savienojumi ir parādīti iepriekš redzamajos attēlos.

3. darbība: Python kods paātrinājuma mērīšanai:

Python paātrinājuma mērīšanas kods
Python paātrinājuma mērīšanas kods
Python paātrinājuma mērīšanas kods
Python paātrinājuma mērīšanas kods

Aveņu pi izmantošanas priekšrocība ir tā, ka tas nodrošina programmēšanas valodas elastību, kādā vēlaties programmēt tāfeli, lai sasaistītu sensoru ar to. Izmantojot šīs plates priekšrocības, mēs šeit demonstrējam tās programmēšanu pitonā. Python ir viena no vienkāršākajām programmēšanas valodām ar vienkāršāko sintaksi. BMA250 python kodu var lejupielādēt no mūsu GitHub kopienas, kas ir Dcube Store

Kā arī lietotāju ērtībai mēs šeit izskaidrojam kodu:

Kā pirmais kodēšanas solis, jums ir nepieciešams lejupielādēt SMBus bibliotēku python gadījumā, jo šī bibliotēka atbalsta kodā izmantotās funkcijas. Tātad, lai lejupielādētu bibliotēku, varat apmeklēt šo saiti:

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

Darba kodu varat nokopēt arī šeit:

importēt smbus

importa laiks

# Iegūstiet I2C kopni = smbus. SMBus (1)

# BMA250 adrese, 0x18 (24)

# Atlasiet diapazona izvēles reģistru, 0x0F (15)

# 0x03 (03) Iestatīt diapazonu = +/- 2gbus.write_byte_data (0x18, 0x0F, 0x03)

# BMA250 adrese, 0x18 (24)# Izvēlieties joslas platuma reģistru, 0x10 (16)

# 0x08 (08) Joslas platums = 7,81 Hz bus.write_byte_data (0x18, 0x10, 0x08)

miega laiks (0,5)

# BMA250 adrese, 0x18 (24)

# Lasīt datus no 0x02 (02), 6 baiti

# X ass LSB, X ass MSB, Y ass LSB, Y ass MSB, Z ass LSB, Z ass ass MSB

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

# Pārvērtiet datus par 10 bitiem

xAccl = (dati [1] * 256 + (dati [0] un 0xC0)) / 64

ja xAccl> 511:

xAccl -= 1024

yAccl = (dati [3] * 256 + (dati [2] un 0xC0)) / 64

ja yAccl> 511:

yAccl -= 1024

zAccl = (dati [5] * 256 + (dati [4] un 0xC0)) / 64

ja zAccl> 511:

zAccl -= 1024

# Izvadiet datus ekrānā

drukāt "Paātrinājums X-asī: % d" % xAccl

drukāt "Paātrinājums Y-asī: % d" % yAccl

drukāt "Paātrinājums Z-asī: % d" % zAccl

Kods tiek izpildīts, izmantojot šādu komandu:

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

Sensora izeja ir parādīta iepriekšējā attēlā lietotāja atsaucei.

4. darbība. Lietojumprogrammas:

Lietojumprogrammas
Lietojumprogrammas

Akselerometri, piemēram, BMA250, galvenokārt tiek izmantoti spēlēs un displeja profila pārslēgšanā. Šis sensora modulis tiek izmantots arī uzlabotajā enerģijas pārvaldības sistēmā mobilajām lietojumprogrammām. BMA250 ir trīsasu digitālais paātrinājuma sensors, kas ir apvienots ar inteliģentu mikroshēmas kustības izraisītu pārtraukuma kontrolieri.

Ieteicams: