Përmbajtje:

Matja e përshpejtimit duke përdorur H3LIS331DL dhe Raspberry Pi: 4 hapa
Matja e përshpejtimit duke përdorur H3LIS331DL dhe Raspberry Pi: 4 hapa

Video: Matja e përshpejtimit duke përdorur H3LIS331DL dhe Raspberry Pi: 4 hapa

Video: Matja e përshpejtimit duke përdorur H3LIS331DL dhe Raspberry Pi: 4 hapa
Video: 大人気! 見た目から「未来感」を感じる、500系新幹線に乗車‼️ 2024, Dhjetor
Anonim
Image
Image

H3LIS331DL, është një akselerometër linear me fuqi të ulët me performancë të lartë 3 boshte që i përket familjes "nano", me ndërfaqe serike dixhitale I²C. H3LIS331DL ka shkallë të plota të zgjedhura nga përdoruesi prej ± 100g/± 200g/± 400g dhe është i aftë të matë përshpejtimet me normat e të dhënave të daljes nga 0.5 Hz në 1 kHz. H3LIS331DL është e garantuar të funksionojë në një gamë të zgjatur të temperaturës nga -40 ° C në +85 ° C.

Në këtë tutorial ne do të demonstrojmë ndërlidhjen e H3LIS331DL me Raspberry Pi, duke përdorur python si një gjuhë programimi.

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. H3LIS331DL

2. Raspberry Pi

3. Kabllo I2C

4. Mburoja I2C për pi mjedër

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ë:

H3LIS331DL 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

Avantazhi i përdorimit të mjedrës pi është, 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 H3LIS331DL 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 ju 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)

# H3LIS331DL adresa, 0x18 (24)

# Zgjidhni regjistrin e kontrollit 1, 0x20 (32)

# 0x27 (39) Mënyra e ndezjes, Shkalla e daljes së të dhënave = 50 Hz# X, Y, Z-Axis aktivizuar

bus.write_byte_data (0x18, 0x20, 0x27)

# H3LIS331DL adresa, 0x18 (24)# Zgjidh regjistrin e kontrollit 4, 0x23 (35)

# 0x00 (00) Përditësim i vazhdueshëm, Zgjedhje në shkallë të plotë = +/- 100g

bus.write_byte_data (0x18, 0x23, 0x00)

koha. gjumi (0.5)

# H3LIS331DL adresa, 0x18 (24)

# Lexoni të dhënat mbrapa nga 0x28 (40), 2 bajt

# X-Boshti LSB, X-Boshti MSB

data0 = bus.read_byte_data (0x18, 0x28)

data1 = bus.read_byte_data (0x18, 0x29)

# Konvertoni të dhënatxAccl = data1 * 256 + data0

nëse xAccl> 32767:

xAccl -= 65536

# H3LIS331DL adresa, 0x18 (24)

# Lexoni të dhënat mbrapa nga 0x2A (42), 2 bajt

# Y-Boshti LSB, Y-Boshti MSB

data0 = bus.read_byte_data (0x18, 0x2A)

të dhëna 1 = bus.read_byte_data (0x18, 0x2B)

# Konvertoni të dhënat

yAccl = të dhëna1 * 256 + të dhëna0

nëse yAccl> 32767:

yAccl -= 65536

# H3LIS331DL adresa, 0x18 (24)

# Lexoni të dhënat përsëri nga 0x2C (44), 2 bajt

# Z-Boshti LSB, Z-Boshti MSB

data0 = bus.read_byte_data (0x18, 0x2C)

të dhëna 1 = bus.read_byte_data (0x18, 0x2D)

# Konvertoni të dhënat

zAccl = të dhëna1 * 256 + të dhëna0

nëse zAccl> 32767:

zAccl -= 65536

# 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 H3LIS331DL.py gt; python H3LIS331DL.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 H3LIS331DL kryesisht gjejnë aplikimin e tij në ndërrimin e profilit të lojërave dhe ekranit. Ky modul sensor përdoret gjithashtu në sistemin e avancuar të menaxhimit të energjisë për aplikacionet mobile. H3LIS331DL ë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: