Inhoudsopgave:
Video: Raspberry Pi MMA8452Q 3-Axis 12-bit/8-bit Digitale Accelerometer Python Tutorial - Ajarnpa
2024 Auteur: John Day | [email protected]. Laatst gewijzigd: 2024-01-30 11:15
De MMA8452Q is een slimme, energiezuinige, drie-assige, capacitieve, micromachined accelerometer met 12 bits resolutie. Flexibele door de gebruiker programmeerbare opties worden geboden met behulp van ingebouwde functies in de accelerometer, configureerbaar tot twee interrupt-pinnen. Het heeft door de gebruiker selecteerbare volledige schalen van ±2g/±4g/±8g met high-pass filter gefilterde data en niet-gefilterde data die in realtime beschikbaar zijn. Hier is de demonstratie met raspberry pi met behulp van python-code.
Stap 1: Wat je nodig hebt.
1. Raspberry Pi
2. MMA8452Q
3. I²C-kabel
4. I²C-schild voor Raspberry Pi
5. Ethernet-kabel
Stap 2: Aansluitingen:
Neem een I2C-schild voor Raspberry Pi en duw het voorzichtig over de gpio-pinnen van Raspberry Pi.
Sluit vervolgens het ene uiteinde van de I2C-kabel aan op de MMA8452Q-sensor en het andere uiteinde op de I2C-afscherming.
Sluit ook de Ethernet-kabel aan op de pi of u kunt een WiFi-module gebruiken.
De aansluitingen zijn weergegeven in de afbeelding hierboven.
Stap 3: Coderen:
De python-code voor MMA8452Q kan worden gedownload van onze github-repository- ControlEverythingCommunity
Hier is de link.
We hebben de SMBus-bibliotheek gebruikt voor python-code, de stappen om SMBus op raspberry pi te installeren worden hier beschreven:
pypi.python.org/pypi/smbus-cffi/0.5.1
U kunt de code ook hier kopiëren, deze wordt als volgt gegeven:
# Gedistribueerd met een vrije wilslicentie.
# Gebruik het zoals je wilt, winst of gratis, op voorwaarde dat het past in de licenties van de bijbehorende werken.
# MMA8452Q
# Deze code is ontworpen om te werken met de MMA8452Q_I2CS I2C Mini Module.
import smbus
import tijd
# Krijg I2C-bus
bus = smbus. SMBus(1)
# MMA8452Q adres, 0x1C(28)
# Selecteer Besturingsregister, 0x2A(42)
# 0x00(00) Standby-modus
bus.write_byte_data(0x1C, 0x2A, 0x00)
# MMA8452Q adres, 0x1C(28)
# Selecteer Besturingsregister, 0x2A(42)
# 0x01(01) Actieve modus
bus.write_byte_data(0x1C, 0x2A, 0x01)
# MMA8452Q adres, 0x1C(28)
# Selecteer Configuratieregister, 0x0E(14)
# 0x00(00) Stel bereik in op +/- 2g
bus.write_byte_data(0x1C, 0x0E, 0x00)
tijd.slaap(0.5)
# MMA8452Q adres, 0x1C(28)
# Lees gegevens terug van 0x00 (0), 7 bytes
# Statusregister, X-as MSB, X-as LSB, Y-as MSB, Y-as LSB, Z-as MSB, Z-as LSB
data = bus.read_i2c_block_data(0x1C, 0x00, 7)
# Converteer de gegevens
xAccl = (gegevens[1] * 256 + gegevens[2]) / 16
als xAccl > 2047:
xAccl -= 4096
yAccl = (gegevens[3] * 256 + gegevens[4]) / 16
indien yAccl > 2047:
yAccl -= 4096 z
Accl = (gegevens[5] * 256 + gegevens[6]) / 16
als zAccl > 2047:
zAccl -= 4096
# Gegevens uitvoeren naar scherm
print "Versnelling in X-as: %d" %xAccl
print "Versnelling in Y-as: %d" %yAccl
print "Versnelling in Z-as: %d" %zAccl
Stap 4: Toepassingen:
MMA8452Q heeft verschillende toepassingen, waaronder E-kompas-toepassingen, detectie van statische oriëntatie met detectie van portret/landschap, omhoog/omlaag, links/rechts, positie-identificatie achter/voor, notebook, e-reader en tuimel- en vrije valdetectie van laptops, realtime oriëntatiedetectie inclusief virtual reality en gaming 3D-gebruikerspositiefeedback, real-time activiteitenanalyse zoals stappenteller tellen, vrije val-valdetectie voor HDD, gegist bestede GPS-back-up en nog veel meer.
Aanbevolen:
YADPF (nog een digitale fotolijst): 7 stappen (met afbeeldingen)
YADPF (YET Another Digital Picture Frame): Ik weet dat dit niet nieuw is, ik weet het, ik heb een aantal van deze projecten hier gezien, maar ik heb altijd al mijn eigen digitale fotolijst willen bouwen. Alle fotolijsten die ik heb gezien zijn leuk, maar ik was op zoek naar iets anders, ik ben op zoek naar een heel mooie fr
DIY digitale waterpas: 5 stappen (met afbeeldingen)
DIY digitale waterpas: in dit project zullen we accelerometer-IC's nader bekijken en ontdekken hoe we ze kunnen gebruiken met een Arduino. Daarna combineren we zo'n IC met een paar complementaire componenten en een 3D-geprinte behuizing om een digitale
Accelerometer jas: 5 stappen
Accelerometer Jacket: Ontworpen door ThunderLily voor een samenwerking met ontwerper Minika Ko voor de KOllision catwalkshow, het acceleratiejack combineert mode, technologie en kunst. Met behulp van een versnellingsmeter om de bewegingsrichting te detecteren, een microprocessor van de flora en
Een digitale schuifmaat afbreken en hoe werkt een digitale schuifmaat: 4 stappen
Een digitale schuifmaat afbreken en hoe werkt een digitale schuifmaat: Veel mensen weten hoe ze een schuifmaat moeten gebruiken om te meten. Deze tutorial leert je hoe je een digitale schuifmaat afbreekt en een uitleg over hoe de digitale schuifmaat werkt
Een Cubesat bouwen met een Arduino en accelerometer: 5 stappen
Hoe maak je een Cubesat bouwen met een Arduino en Accelerometer .: Onze namen zijn Brock, Eddie en Drew. Het belangrijkste doel van onze natuurkundeles is om van de aarde naar Mars te reizen terwijl we de baan rond Mars simuleren met behulp van een Cube Sat en het verzamelen van gegevens. Het doel van onze groep voor dit project is om gegevens te verzamelen met behulp van een accele