Cuprins:
Video: Raspberry Pi - Tutorial ADXL345 cu 3 axe accelerometru Python: 4 pași
2024 Autor: John Day | [email protected]. Modificat ultima dată: 2024-01-30 11:41
ADXL345 este un accelerometru cu 3 axe mic, subțire, cu putere foarte mică, cu măsurare cu rezoluție înaltă (13 biți) până la ± 16 g. Datele de ieșire digitală sunt formatate ca un complement de doi biți pe 16 biți și sunt accesibile prin interfața digitală I2 C. Măsurează accelerația statică a gravitației în aplicațiile de detectare a înclinării, precum și accelerația dinamică rezultată din mișcare sau șoc. Rezoluția sa înaltă (3,9 mg / LSB) permite măsurarea modificărilor de înclinație mai mici de 1,0 °. Iată demonstrația cu raspberry pi folosind codul python.
Pasul 1: De ce ai nevoie..
1. Raspberry Pi
2. ADXL345
3. Cablu I²C
4. Scut I²C pentru Raspberry Pi
5. Cablu Ethernet
Pasul 2: Conexiune:
Luați un scut I2C pentru raspberry pi și împingeți-l ușor peste pinii gpio ai raspberry pi.
Apoi conectați capătul cablului I2C la senzorul ADXL345 și celălalt capăt la ecranul I2C.
De asemenea, conectați cablul Ethernet la pi sau puteți utiliza un modul WiFi.
Conexiunile sunt afișate în imaginea de mai sus.
Pasul 3: Cod:
Codul python pentru ADXL345 poate fi descărcat din depozitul nostru GitHub - Magazinul Dcube
Iată linkul pentru același lucru:
github.com/DcubeTechVentures/ADXL345..
Am folosit biblioteca SMBus pentru codul Python, pașii pentru instalarea SMBus pe raspberry pi sunt descriși aici:
pypi.python.org/pypi/smbus-cffi/0.5.1
De asemenea, puteți copia codul de aici, acesta este dat după cum urmează:
# Distribuit cu o licență de voință liberă.
# Folosiți-l în orice mod doriți, profit sau gratuit, cu condiția să se încadreze în licențele lucrărilor sale asociate.
# ADXL345
# Acest cod este conceput pentru a funcționa cu Mini-modulul ADXL345_I2CS I2C disponibil în Magazinul Dcube.
import smbus
timpul de import
# Ia autobuzul I2C
autobuz = smbus. SMBus (1)
# Adresă ADXL345, 0x53 (83)
# Selectați registrul lățimii de bandă, 0x2C (44) # 0x0A (10) Mod normal, Rată de date de ieșire = 100 Hz
bus.write_byte_data (0x53, 0x2C, 0x0A)
# Adresă ADXL345, 0x53 (83)
# Selectați registrul de control al puterii, 0x2D (45)
# 0x08 (08) Dezactivare oprire automată
bus.write_byte_data (0x53, 0x2D, 0x08)
# Adresă ADXL345, 0x53 (83)
# Selectați registrul formatului de date, 0x31 (49)
# 0x08 (08) Autotest dezactivat, interfață cu 4 fire
# Rezoluție completă, interval = +/- 2g
bus.write_byte_data (0x53, 0x31, 0x08)
time.sleep (0,5)
# Adresă ADXL345, 0x53 (83)
# Citiți datele înapoi de la 0x32 (50), 2 octeți
# Axa X LSB, Axa X MSB
data0 = bus.read_byte_data (0x53, 0x32)
data1 = bus.read_byte_data (0x53, 0x33)
# Convertiți datele în 10 biți
xAccl = ((data1 & 0x03) * 256) + data0
dacă xAccl> 511:
xAccl - = 1024
# Adresă ADXL345, 0x53 (83)
# Citiți datele înapoi de la 0x34 (52), 2 octeți
# Axa Y LSB, axa Y MSB
data0 = bus.read_byte_data (0x53, 0x34)
data1 = bus.read_byte_data (0x53, 0x35)
# Convertiți datele în 10 biți
yAccl = ((data1 & 0x03) * 256) + data0
dacă yAccl> 511:
yAccl - = 1024
# Adresă ADXL345, 0x53 (83)
# Citiți datele înapoi de la 0x36 (54), 2 octeți
# Z-Axis LSB, Z-Axis MSB
data0 = bus.read_byte_data (0x53, 0x36)
data1 = bus.read_byte_data (0x53, 0x37)
# Convertiți datele în 10 biți
zAccl = ((date1 și 0x03) * 256) + date0
dacă zAccl> 511:
zAccl - = 1024
# Ieșire date pe ecran
print "Accelerare în axa X:% d"% xAccl
print "Accelerare în axa Y:% d"% yAccl
print "Accelerare în axa Z:% d"% zAccl
Pasul 4: Aplicații:
ADXL345 este un accelerometru cu 3 axe mic, subțire, cu putere foarte mică, care poate fi utilizat în receptoare, instrumente medicale etc. Aplicația sa include, de asemenea, dispozitive pentru jocuri și indicare, instrumentare industrială, dispozitive de navigație personală și protecție pentru unitatea de disc (HDD).
Recomandat:
Control al mișcării cu Raspberry Pi și LIS3DHTR, accelerometru pe 3 axe, folosind Python: 6 pași
Controlul mișcării cu Raspberry Pi și LIS3DHTR, accelerometru pe 3 axe, folosind Python: frumusețea ne înconjoară, dar, de obicei, trebuie să mergem într-o grădină pentru a o cunoaște. - Rumi Ca grup educat care pare să fim, investim marea majoritate a energiei noastre lucrând înainte de computerele și telefoanele noastre mobile. Prin urmare, ne lăsăm frecvent bunăstarea
Accelerometru cu 3 axe, ADXL345 cu Raspberry Pi folosind Python: 6 pași
Accelerometru cu 3 axe, ADXL345 cu Raspberry Pi Utilizarea Python: Gândindu-vă la un gadget care poate verifica punctul în care Offroader-ul dvs. este înclinat spre a zăbovi. Nu ar fi unul plăcut în cazul în care cineva este adaptat atunci când există posibilitatea de a răsturna? Evident că da. Ar fi adevărat
Interfațarea senzorului giroscopului 3 axe BMG160 cu Raspberry Pi: 5 pași
Interfața senzorului giroscopului cu 3 axe BMG160 cu Raspberry Pi: În lumea de astăzi, mai mult de jumătate dintre tineri și copii sunt pasionați de jocuri și toți cei care sunt pasionați de acest lucru, fascinați de aspectele tehnice ale jocului, cunosc importanța detectării mișcării în acest domeniu. Am fost, de asemenea, uimiți de același lucru și
Accelerometru 3 axe Modul LIS2HH12: 10 pași (cu imagini)
Modulul LIS2HH12 cu 3 axe Accelerometru: Acest instructabil este considerat la nivel de începător, cu o anumită experiență în software-ul arduino și lipire. Modulul LIS2HH12 este realizat de Tiny9. Tiny9 este o companie nouă care începe să vândă module de senzori pentru jucători de bricolaj, companii sau inventatori. Acolo
SPI preliminar * pe Pi: comunicarea cu un accelerometru cu 3 axe SPI folosind un Raspberry Pi: 10 pași
SPI preliminar * pe Pi: Comunicarea cu un accelerometru cu 3 axe SPI Utilizarea unui Raspberry Pi: Ghid pas cu pas despre cum să configurați Raspbian și să comunicați cu un dispozitiv SPI utilizând biblioteca SPI bcm2835 (NU bit banged!) Acest lucru este încă foarte preliminar … Trebuie să adaug imagini mai bune ale legăturii fizice și să analizez un cod incomod