Innholdsfortegnelse:
- Trinn 1: Nødvendig maskinvare:
- Trinn 2: Maskinvaretilkobling:
- Trinn 3: Python -kode for akselerasjonsmåling:
- Trinn 4: Søknader:
Video: Måling av akselerasjon ved hjelp av H3LIS331DL og Raspberry Pi: 4 trinn
2024 Forfatter: John Day | [email protected]. Sist endret: 2024-01-30 11:22
H3LIS331DL, er et laveffekt 3-akset lineært akselerometer med høy ytelse som tilhører "nano" -familien, med digitalt I²C serielt grensesnitt. H3LIS331DL har full skalaer som kan velges av brukeren på ± 100g/± 200g/± 400g, og den er i stand til å måle akselerasjoner med utdatahastigheter fra 0,5 Hz til 1 kHz. H3LIS331DL fungerer garantert over et utvidet temperaturområde fra -40 ° C til +85 ° C.
I denne opplæringen skal vi demonstrere grensesnittet mellom H3LIS331DL og Raspberry Pi, ved å bruke python som programmeringsspråk.
Trinn 1: Nødvendig maskinvare:
Materialene vi trenger for å nå målet vårt inkluderer følgende maskinvarekomponenter:
1. H3LIS331DL
2. Bringebær Pi
3. I2C -kabel
4. I2C Shield for bringebær pi
5. Ethernet -kabel
Trinn 2: Maskinvaretilkobling:
Maskinvaretilkoblingsdelen forklarer i utgangspunktet ledningsforbindelsene som kreves mellom sensoren og bringebær -pi. Å sikre riktige tilkoblinger er den grunnleggende nødvendigheten mens du arbeider på et hvilket som helst system for ønsket utgang. Så de nødvendige tilkoblingene er som følger:
H3LIS331DL fungerer over I2C. Her er eksempel på koblingsskjema, som viser hvordan du kobler til hvert grensesnitt på sensoren.
Uten boksen er brettet konfigurert for et I2C-grensesnitt, derfor anbefaler vi å bruke denne tilkoblingen hvis du ellers er agnostiker. Alt du trenger er fire ledninger!
Bare fire tilkoblinger kreves Vcc, Gnd, SCL og SDA -pinner, og disse er koblet til ved hjelp av I2C -kabel.
Disse sammenhengene er vist på bildene ovenfor.
Trinn 3: Python -kode for akselerasjonsmåling:
Fordelen med å bruke bringebær pi er, det vil si at du får fleksibiliteten til programmeringsspråket der du vil programmere brettet for å koble sensoren til det. Ved å utnytte denne fordelen med dette brettet, demonstrerer vi her programmeringen i python. Python er et av de enkleste programmeringsspråkene med den enkleste syntaksen. Python -koden for H3LIS331DL kan lastes ned fra vårt github -fellesskap som er DCUBE Store.
I tillegg til brukernes brukervennlighet, forklarer vi koden også her:
Som det første trinnet i kodingen må du laste ned SMBus -biblioteket i tilfelle python, fordi dette biblioteket støtter funksjonene som brukes i koden. Så for å laste ned biblioteket kan du besøke følgende lenke:
pypi.python.org/pypi/smbus-cffi/0.5.1
Du kan også kopiere arbeidskoden herfra:
importer smbus
importtid
# Få I2C -bussbuss = smbus. SMBus (1)
# H3LIS331DL adresse, 0x18 (24)
# Velg kontrollregister 1, 0x20 (32)
# 0x27 (39) Strøm PÅ-modus, Datautgangshastighet = 50 Hz# X, Y, Z-akse aktivert
bus.write_byte_data (0x18, 0x20, 0x27)
# H3LIS331DL -adresse, 0x18 (24)# Velg kontrollregister 4, 0x23 (35)
# 0x00 (00) Kontinuerlig oppdatering, valg av full skala = +/- 100g
bus.write_byte_data (0x18, 0x23, 0x00)
time.sleep (0,5)
# H3LIS331DL adresse, 0x18 (24)
# Les data tilbake fra 0x28 (40), 2 byte
# X-Axis LSB, X-Axis MSB
data0 = bus.read_byte_data (0x18, 0x28)
data1 = bus.read_byte_data (0x18, 0x29)
# Konverter dataxAccl = data1 * 256 + data0
hvis xAccl> 32767:
xAccl -= 65536
# H3LIS331DL adresse, 0x18 (24)
# Les data tilbake fra 0x2A (42), 2 byte
# Y-akse LSB, Y-akse MSB
data0 = bus.read_byte_data (0x18, 0x2A)
data1 = bus.read_byte_data (0x18, 0x2B)
# Konverter dataene
yAccl = data1 * 256 + data0
hvis yAccl> 32767:
yAccl -= 65536
# H3LIS331DL adresse, 0x18 (24)
# Les data tilbake fra 0x2C (44), 2 byte
# Z-Axis LSB, Z-Axis MSB
data0 = bus.read_byte_data (0x18, 0x2C)
data1 = bus.read_byte_data (0x18, 0x2D)
# Konverter dataene
zAccl = data1 * 256 + data0
hvis zAccl> 32767:
zAccl -= 65536
# Utdata til skjermen
print "Akselerasjon i X-aksen: %d" %xAccl
print "Akselerasjon i Y-aksen: %d" %yAccl
print "Akselerasjon i Z-aksen: %d" %zAccl
Koden kjøres med følgende kommando:
$> python H3LIS331DL.py gt; python H3LIS331DL.py
Sensorens utgang er vist på bildet ovenfor for referanse til brukeren.
Trinn 4: Søknader:
Akselerometre som H3LIS331DL finner stort sett sin anvendelse i spillene og viser profilveksling. Denne sensormodulen brukes også i det avanserte strømstyringssystemet for mobile applikasjoner. H3LIS331DL er en triaksial digital akselerasjonssensor som er integrert med en intelligent bevegelsesutløst avbruddskontroller på brikken.
Anbefalt:
Måling av akselerasjon ved bruk av ADXL345 og Particle Photon: 4 trinn
Måling av akselerasjon ved bruk av ADXL345 og Particle Photon: ADXL345 er et lite, tynt, ultralavt, 3-akset akselerometer med høy oppløsning (13-bit) måling på opptil ± 16 g. Digitale utdata er formatert som 16-biters tokomplement og er tilgjengelig via I2 C digitalt grensesnitt. Den måler
Måling av akselerasjon ved hjelp av H3LIS331DL og Arduino Nano: 4 trinn
Måling av akselerasjon ved bruk av H3LIS331DL og Arduino Nano: H3LIS331DL, er et laveffekt 3-akset lineært akselerometer med høy ytelse som tilhører "nano" -familien, med digitalt I²C serielt grensesnitt. H3LIS331DL har full skalaer som kan velges på ± 100g/± 200g/± 400g, og den er i stand til å måle akselerasjoner m
Måling av akselerasjon ved bruk av H3LIS331DL og partikkelfoton: 4 trinn
Måling av akselerasjon ved hjelp av H3LIS331DL og Particle Photon: H3LIS331DL, er et laveffekt 3-akset lineært akselerometer med høy ytelse som tilhører "nano" -familien, med digitalt I²C serielt grensesnitt. H3LIS331DL har full skalaer som kan velges på ± 100g/± 200g/± 400g, og den er i stand til å måle akselerasjoner m
Måling av akselerasjon ved bruk av ADXL345 og Raspberry Pi: 4 trinn
Måling av akselerasjon ved bruk av ADXL345 og Raspberry Pi: ADXL345 er et lite, tynt, ultralavt, 3-akset akselerometer med høy oppløsning (13-bit) måling på opptil ± 16 g. Digitale utdata er formatert som 16-biters tokomplement og er tilgjengelig via I2 C digitalt grensesnitt. Den måler
Overvåke akselerasjon ved bruk av Raspberry Pi og AIS328DQTR ved hjelp av Python: 6 trinn
Overvåke akselerasjon ved hjelp av Raspberry Pi og AIS328DQTR Bruke Python: Akselerasjon er begrenset, tror jeg i henhold til noen fysikklover.- Terry Riley En gepard bruker fantastisk akselerasjon og raske endringer i hastighet når jeg jager. Den raskeste skapningen i land en gang i blant bruker sitt høyeste tempo for å fange byttedyr. Den