Orodha ya maudhui:

Kipimo cha kuongeza kasi Kutumia BMA250 na Raspberry Pi: 4 Hatua
Kipimo cha kuongeza kasi Kutumia BMA250 na Raspberry Pi: 4 Hatua

Video: Kipimo cha kuongeza kasi Kutumia BMA250 na Raspberry Pi: 4 Hatua

Video: Kipimo cha kuongeza kasi Kutumia BMA250 na Raspberry Pi: 4 Hatua
Video: It Became Unliveable! ~ Abandoned Home Of The Spenser's In The USA 2024, Julai
Anonim
Image
Image

BMA250 ni nguvu ndogo, nyembamba, nguvu ya mwisho, 3-axis accelerometer na azimio la juu (13-bit) kipimo hadi ± 16 g. Takwimu za pato la dijiti zimepangwa kama vijazo 16-bit vinavyosaidia na hupatikana kupitia I2C interface ya dijiti. Inapima kasi ya kasi ya mvuto katika programu-kuhisi matumizi, na pia kasi ya nguvu inayosababishwa na mwendo au mshtuko. Azimio lake kubwa (3.9 mg / LSB) huwezesha kipimo cha mabadiliko ya mwelekeo chini ya 1.0 °.

Katika mafunzo haya tutapima kuongeza kasi katika shoka zote tatu za kutumia kwa kutumia BMA250 na Raspberry Pi. Sensor imewekwa kwa lugha ya chatu.

Hatua ya 1: Vifaa vinahitajika:

Vifaa vinahitajika
Vifaa vinahitajika
Vifaa vinahitajika
Vifaa vinahitajika
Vifaa vinahitajika
Vifaa vinahitajika

Vifaa ambavyo tunahitaji kutimiza lengo letu ni pamoja na vifaa vifuatavyo vya vifaa:

1. BMA250

2. Raspberry Pi

3. Cable ya I2C

4. I2C Shield kwa Raspberry Pi

5. Cable ya Ethernet

Hatua ya 2: Kuunganishwa kwa vifaa:

Kuunganishwa kwa Vifaa
Kuunganishwa kwa Vifaa
Kuunganishwa kwa Vifaa
Kuunganishwa kwa Vifaa

Sehemu ya uunganishaji wa vifaa kimsingi inaelezea uunganisho wa wiring unaohitajika kati ya sensorer na pi ya raspberry. Kuhakikisha unganisho sahihi ni hitaji la msingi wakati unafanya kazi kwenye mfumo wowote wa pato unalotaka. Kwa hivyo, viunganisho vinavyohitajika ni kama ifuatavyo.

BMA250 itafanya kazi juu ya I2C. Hapa kuna mfano wa mchoro wa wiring, unaonyesha jinsi ya kuweka waya kila kiunganishi cha sensa.

Nje ya sanduku, bodi imesanidiwa kwa kiolesura cha I2C, kwa hivyo tunapendekeza utumie uunganisho huu ikiwa wewe ni agnostic. Unachohitaji ni waya nne!

Viunganisho vinne tu vinahitajika Vcc, Gnd, SCL na SDA pini na hizi zimeunganishwa kwa msaada wa kebo ya I2C.

Uunganisho huu umeonyeshwa kwenye picha hapo juu.

Hatua ya 3: Nambari ya Python ya Upimaji wa Kuharakisha:

Nambari ya Python ya Upimaji wa Kuharakisha
Nambari ya Python ya Upimaji wa Kuharakisha
Nambari ya Python ya Upimaji wa Kuharakisha
Nambari ya Python ya Upimaji wa Kuharakisha

Faida ya kutumia rasipiberi pi ni kwamba, inakupa kubadilika kwa lugha ya programu ambayo unataka kupanga bodi ili kuunganisha kihisi nayo. Kuunganisha faida hii ya bodi hii, tunaonyesha hapa programu yake katika chatu. Python ni moja wapo ya lugha rahisi za programu na sintaksia rahisi. Nambari ya chatu ya BMA250 inaweza kupakuliwa kutoka kwa jamii yetu ya GitHub ambayo ni Duka la Dcube

Pamoja na urahisi wa watumiaji, tunaelezea nambari hapa pia:

Kama hatua ya kwanza ya kuweka alama, unahitaji kupakua maktaba ya SMBus ikiwa kuna chatu kwa sababu maktaba hii inasaidia kazi zinazotumiwa kwenye nambari. Kwa hivyo, kupakua maktaba unaweza kutembelea kiunga kifuatacho:

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

Unaweza kunakili nambari ya kufanya kazi kutoka hapa pia:

kuagiza smbus

muda wa kuagiza

# Pata basi ya I2C = smbus. SMBus (1)

Anwani ya # BMA250, 0x18 (24)

# Chagua sajili ya uteuzi wa anuwai, 0x0F (15)

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

Anwani ya # BMA250, 0x18 (24) # Chagua rejista ya kipimo data, 0x10 (16)

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

saa. kulala (0.5)

Anwani ya # BMA250, 0x18 (24)

# Soma data nyuma kutoka 0x02 (02), 6 ka

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

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

# Badilisha data iwe bits 10

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

ikiwa xAccl> 511:

xAccl - = 1024

yAccl = (data [3] * 256 + (data [2] & 0xC0)) / 64

ikiwa yAccl> 511:

yAccl - = 1024

zAccl = (data [5] * 256 + (data [4] & 0xC0)) / 64

ikiwa zAccl> 511:

zAccl - = 1024

# Pato data kwa screen

chapisha "Kuongeza kasi katika X-Axis:% d"% xAccl

chapisha "Kuongeza kasi katika Y-Axis:% d"% yAccl

chapisha "Kuongeza kasi katika Z-Axis:% d"% zAccl

Nambari hiyo inafanywa kwa kutumia amri ifuatayo:

$> chatu BMA250.py gt; chatu BMA250.py

Pato la sensorer linaonyeshwa kwenye picha hapo juu kwa kumbukumbu ya mtumiaji.

Hatua ya 4: Maombi:

Maombi
Maombi

Accelerometers kama BMA250 hupata matumizi yake kwenye michezo na kuonyesha ubadilishaji wa wasifu. Moduli hii ya sensorer pia imeajiriwa katika mfumo wa juu wa usimamizi wa nguvu kwa matumizi ya rununu. BMA250 ni sensa ya kuongeza kasi ya dijiti triaxial ambayo imejumuishwa na mwendo wa akili wa-chip uliosababisha mdhibiti wa usumbufu.

Ilipendekeza: