Indholdsfortegnelse:
Video: Raspberry Pi MMA8452Q 3-Axis 12-bit/8-bit Digital Accelerometer Python Tutorial: 4 trin
2024 Forfatter: John Day | [email protected]. Sidst ændret: 2024-01-30 08:26
MMA8452Q er et smart, laveffekt, tre-akset, kapacitivt, mikromaskinet accelerometer med 12 bits opløsning. Fleksible brugerprogrammerbare muligheder leveres ved hjælp af integrerede funktioner i accelerometeret, der kan konfigureres til to afbrydelsesnåle. Den har brugervalgbare fulde skalaer på ± 2g/± 4g/± 8g med højpasfilterfiltrerede data samt ikke-filtrerede data tilgængelige i realtid. Her er dens demonstration med hindbær pi ved hjælp af python -kode.
Trin 1: Hvad du har brug for..
1. Hindbær Pi
2. MMA8452Q
3. I²C -kabel
4. I²C Shield til Raspberry Pi
5. Ethernet -kabel
Trin 2: Forbindelser:
Tag et I2C -skjold til hindbærpi og skub det forsigtigt hen over gpio -benene på hindbærpi.
Tilslut derefter den ene ende af I2C -kablet til MMA8452Q -sensoren og den anden ende til I2C -skærmen.
Tilslut også Ethernet -kablet til pi'en, eller du kan bruge et WiFi -modul.
Forbindelser er vist på billedet ovenfor.
Trin 3: Kode:
Python-koden til MMA8452Q kan downloades fra vores github-lager- ControlEverythingCommunity
Her er linket.
Vi har brugt SMBus -bibliotek til python -kode, trinene til at installere SMBus på hindbær pi er beskrevet her:
pypi.python.org/pypi/smbus-cffi/0.5.1
Du kan også kopiere koden herfra, den er givet som følger:
# Distribueret med en fri vilje-licens.
# Brug den, som du vil, profit eller gratis, forudsat at den passer ind i licenserne til de tilhørende værker.
# MMA8452Q
# Denne kode er designet til at fungere med MMA8452Q_I2CS I2C Mini Module.
import smbus
importtid
# Få I2C -bus
bus = smbus. SMBus (1)
# MMA8452Q adresse, 0x1C (28)
# Vælg kontrolregister, 0x2A (42)
# 0x00 (00) Standby -tilstand
bus.write_byte_data (0x1C, 0x2A, 0x00)
# MMA8452Q adresse, 0x1C (28)
# Vælg kontrolregister, 0x2A (42)
# 0x01 (01) Aktiv tilstand
bus.write_byte_data (0x1C, 0x2A, 0x01)
# MMA8452Q adresse, 0x1C (28)
# Vælg konfigurationsregister, 0x0E (14)
# 0x00 (00) Indstil område til +/- 2g
bus.write_byte_data (0x1C, 0x0E, 0x00)
time.sleep (0,5)
# MMA8452Q adresse, 0x1C (28)
# Læs data tilbage fra 0x00 (0), 7 bytes
# Statusregister, X-Axis MSB, X-Axis LSB, Y-Axis MSB, Y-Axis LSB, Z-Axis MSB, Z-Axis LSB
data = bus.read_i2c_block_data (0x1C, 0x00, 7)
# Konverter dataene
xAccl = (data [1] * 256 + data [2]) / 16
hvis xAccl> 2047:
xAccl -= 4096
yAccl = (data [3] * 256 + data [4]) / 16
hvis yAccl> 2047:
yAccl -= 4096 z
Accl = (data [5] * 256 + data [6]) / 16
hvis zAccl> 2047:
zAccl -= 4096
# Output data til skærmen
print "Acceleration i X-akse: %d" %xAccl
print "Acceleration i Y-akse: %d" %yAccl
print "Acceleration i Z-akse: %d" %zAccl
Trin 4: Ansøgninger:
MMA8452Q har forskellige applikationer, som omfatter E-Kompass-applikationer, Statisk orienteringsdetektering, der inkorporerer Portræt/Landskab, Op/Ned, Venstre/Højre, Tilbage/Front position identifikation, Notebook, e-reader og Laptop Tumble og Freefall Detection, Real-time orienteringsdetektering inklusive virtual reality og gaming 3D brugerpositionsfeedback, realtidsaktivitetsanalyse såsom skridttæller-trintælling, freefall-drop-detektion for HDD, dødregning af GPS-backup og meget mere.
Anbefalede:
Bevægelseskontrol med Raspberry Pi og LIS3DHTR, 3-akset accelerometer, ved hjælp af Python: 6 trin
Bevægelseskontrol med Raspberry Pi og LIS3DHTR, 3-akset accelerometer, ved hjælp af Python: Skønhed omgiver os, men normalt skal vi gå i en have for at vide det. - Rumi Som den uddannede gruppe, som vi ser ud til at være, investerer vi langt størstedelen af vores energi i at arbejde før vores pc'er og mobiltelefoner. Derfor lader vi ofte vores velbefindende
Raspberry Pi - BH1715 Digital Ambient Light Sensor Python Tutorial: 4 trin
Raspberry Pi - BH1715 Digital Ambient Light Sensor Python Tutorial: BH1715 er en digital Ambient Light Sensor med en I²C busgrænseflade. BH1715 bruges almindeligvis til at indhente omgivelseslysdata til justering af LCD- og tastaturets baggrundsbelysning til mobile enheder. Denne enhed tilbyder en 16-bit opløsning og en justering
Arduino Accelerometer Tutorial: Styr en skibsbro ved hjælp af en servomotor: 5 trin
Arduino Accelerometer Tutorial: Styr en skibsbro ved hjælp af en servomotor: Accelerometer sensorer er nu i de fleste af vores smartphones for at give dem en bred vifte af brug og muligheder, som vi bruger dagligt, uden selv at vide, at den, der er ansvarlig for det, er accelerometeret. En af disse muligheder er kontrollen
CubeSat Accelerometer Tutorial: 6 trin
CubeSat Accelerometer Tutorial: En cubesat er en type miniaturiseret satellit til rumforskning, der består af multipler på 10x10x10 cm kubiske enheder og en masse på ikke mere end 1,33 kg pr. Enhed. Cubesats gør det muligt at sende en stor mængde satellitter til rummet og al
3-akset accelerometer, ADXL345 med hindbær Pi ved hjælp af Python: 6 trin
3-akset accelerometer, ADXL345 Med Raspberry Pi Brug af Python: Tænker på en gadget, der kan kontrollere det punkt, hvor din Offroader er vippet mod at blive hængende. Ville det ikke være behageligt i tilfælde af, at nogen justeres, når der er mulighed for at vælte? Selvfølgelig ja. Det ville være sandt