Taula de continguts:
Vídeo: Raspberry Pi - Tutorial d’acceleròmetre de 3 eixos ADXL345 Python: 4 passos
2024 Autora: John Day | [email protected]. Última modificació: 2024-01-30 08:11
L’ADXL345 és un acceleròmetre de 3 eixos petit, prim i ultralleuger, de 3 eixos, amb una resolució d’alta resolució (13 bits) de fins a ± 16 g. Les dades de sortida digital es formaten com a complement de dos bits de 16 bits i són accessibles a través de la interfície digital I2 C. Mesura l’acceleració estàtica de la gravetat en aplicacions de detecció d’inclinació, així com l’acceleració dinàmica resultant del moviment o xoc. La seva alta resolució (3,9 mg / LSB) permet mesurar canvis d’inclinació inferiors a 1,0 °. Aquí teniu la demostració amb raspberry pi mitjançant codi Python.
Pas 1: el que necessiteu..
1. Raspberry Pi
2. ADXL345
3. Cable I²C
4. Escut I²C per a Raspberry Pi
5. Cable Ethernet
Pas 2: connexió:
Agafeu un escut I2C per a raspberry pi i passeu-lo suaument per sobre dels pins gpio de raspberry pi.
A continuació, connecteu un extrem del cable I2C al sensor ADXL345 i l’altre extrem a l’escut I2C.
Connecteu també el cable Ethernet al pi o podeu utilitzar un mòdul WiFi.
Les connexions es mostren a la imatge superior.
Pas 3: Codi:
El codi python de l'ADXL345 es pot descarregar des del nostre dipòsit GitHub - Dcube Store
Aquí teniu l’enllaç per al mateix:
github.com/DcubeTechVentures/ADXL345..
Hem utilitzat la biblioteca SMBus per al codi python; aquí es descriuen els passos per instal·lar SMBus al raspberry pi:
pypi.python.org/pypi/smbus-cffi/0.5.1
També podeu copiar el codi des d’aquí, es dóna de la següent manera:
# Distribuït amb una llicència de lliure voluntat.
# Utilitzeu-lo de la manera que vulgueu, de beneficis o de franc, sempre que encaixi en les llicències de les obres associades.
# ADXL345
# Aquest codi està dissenyat per funcionar amb el mini mòdul ADXL345_I2CS I2C disponible a Dcube Store.
importar smbus
temps d'importació
# Aconsegueix un bus I2C
bus = smbus. SMBus (1)
# ADXL345 adreça, 0x53 (83)
# Seleccioneu el registre de velocitat d'amplada de banda, 0x2C (44) # 0x0A (10) Mode normal, velocitat de dades de sortida = 100 Hz
bus.write_byte_data (0x53, 0x2C, 0x0A)
# ADXL345 adreça, 0x53 (83)
# Seleccioneu el registre de control de potència, 0x2D (45)
# 0x08 (08) Desactivació de la suspensió automàtica
bus.write_byte_data (0x53, 0x2D, 0x08)
# ADXL345 adreça, 0x53 (83)
# Seleccioneu el registre de format de dades, 0x31 (49)
# 0x08 (08) Autotest desactivat, interfície de 4 fils
# Resolució completa, rang = +/- 2g
bus.write_byte_data (0x53, 0x31, 0x08)
time.sleep (0,5)
# ADXL345 adreça, 0x53 (83)
# Llegiu les dades de 0x32 (50), 2 bytes
# Eix X LSB, eix X MSB
data0 = bus.read_byte_data (0x53, 0x32)
data1 = bus.read_byte_data (0x53, 0x33)
# Converteix les dades a 10 bits
xAccl = ((dades1 i 0x03) * 256) + dades0
si xAccl> 511:
xAccl - = 1024
# ADXL345 adreça, 0x53 (83)
# Llegiu les dades de 0x34 (52), 2 bytes
# Eix Y LSB, eix Y MSB
data0 = bus.read_byte_data (0x53, 0x34)
data1 = bus.read_byte_data (0x53, 0x35)
# Converteix les dades a 10 bits
yAccl = ((dades1 i 0x03) * 256) + dades0
si yAccl> 511:
yAccl - = 1024
# ADXL345 adreça, 0x53 (83)
# Llegiu les dades de 0x36 (54), 2 bytes
# Eix Z LSB, eix Z MSB
data0 = bus.read_byte_data (0x53, 0x36)
data1 = bus.read_byte_data (0x53, 0x37)
# Converteix les dades a 10 bits
zAccl = ((dades1 i 0x03) * 256) + dades0
si zAccl> 511:
zAccl - = 1024
# Sortida de dades a la pantalla
imprimir "Acceleració a l'eix X:% d"% xAccl
imprimir "Acceleració a l'eix Y:% d"% yAccl
imprimir "Acceleració a l'eix Z:% d"% zAccl
Pas 4: aplicacions:
L'ADXL345 és un acceleròmetre de 3 eixos petit, prim i de poca potència, que es pot utilitzar en telèfons mòbils, instrumentació mèdica, etc.
Recomanat:
Interfície del sensor de giroscopi de 3 eixos BMG160 amb Arduino Nano: 5 passos
Interfície del sensor de giroscopi de 3 eixos BMG160 amb Arduino Nano: al món actual, més de la meitat de la joventut i dels nens els agrada el joc i tots aquells que els hi agraden, fascinats pels aspectes tècnics del joc, saben la importància de la detecció de moviment. en aquest domini. També ens va sorprendre el mateix i
Control de moviment amb Raspberry Pi i LIS3DHTR, acceleròmetre de 3 eixos, amb Python: 6 passos
Control de moviment amb Raspberry Pi i LIS3DHTR, acceleròmetre de 3 eixos, utilitzant Python: la bellesa ens envolta, però normalment cal caminar per un jardí per conèixer-la. - Rumi Com a grup educat que semblem ser, invertim la gran majoria de la nostra energia treballant abans que els nostres ordinadors i telèfons mòbils. Per tant, sovint deixem el nostre benestar
Acceleròmetre de 3 eixos, ADXL345 amb Raspberry Pi mitjançant Python: 6 passos
Acceleròmetre de 3 eixos, ADXL345 amb Raspberry Pi amb Python: pensant en un gadget que pot comprovar el punt en què el vostre Offroader està inclinat cap a la seva retard. No seria agradable si algú s’ajusta quan hi ha la possibilitat de bolcar? Viouslybviament sí. Seria cert
Interfície del sensor de giroscopi de 3 eixos BMG160 amb Raspberry Pi: 5 passos
Interfície del sensor de giroscopi de 3 eixos BMG160 amb Raspberry Pi: al món actual, a més de la meitat dels joves i dels nens els agrada el joc i tots aquells que els hi agraden, fascinats pels aspectes tècnics del joc, saben la importància de la detecció de moviment. en aquest domini. També ens va sorprendre el mateix i
SPI preliminar * al Pi: comunicar-se amb un acceleròmetre de 3 eixos SPI mitjançant un Raspberry Pi: 10 passos
SPI preliminar * al Pi: Comunicar-se amb un acceleròmetre de 3 eixos SPI utilitzant un Raspberry Pi: guia pas a pas sobre com configurar Raspbian i comunicar-se amb un dispositiu SPI mitjançant la biblioteca SPI bcm2835 (NO està petita). molt preliminar … Necessito afegir millors imatges de connexió física i treballar alguns codis incòmodes