Përmbajtje:
- Hapi 1: Kërkohet harduer:
- Hapi 2: Bashkimi i harduerit:
- Hapi 3: Kodi për Matjen e Përshpejtimit:
- Hapi 4: Aplikimet:
Video: Matja e përshpejtimit duke përdorur ADXL345 dhe Raspberry Pi: 4 hapa
2024 Autor: John Day | [email protected]. E modifikuara e fundit: 2024-01-30 12:16
ADXL345 është një akselerometër i vogël, i hollë, me fuqi ultra të ulët, me 3 boshte me matje me rezolucion të lartë (13-bit) deri në ± 16 g. Të dhënat dalëse dixhitale janë të formatuara si plotësuese 16-bitësh dy dhe janë të arritshme përmes ndërfaqes dixhitale I2 C. Mat mat nxitimin statik të gravitetit në aplikimet e ndjeshmërisë së pjerrësisë, si dhe nxitimin dinamik që rezulton nga lëvizja ose goditja. Rezolucioni i tij i lartë (3.9 mg/LSB) mundëson matjen e ndryshimeve të prirjes më pak se 1.0 °.
Në këtë tutorial demonstrohet ndërfaqja e modulit të sensorit ADXL345 me pi mjedër dhe programimi i tij duke përdorur gjuhën python është ilustruar gjithashtu. Për të lexuar vlerat e nxitimit në të gjithë boshtin 3, ne kemi përdorur mjedër pi me një përshtatës I2C. Ky përshtatës I2C e bën lidhjen me modulin e sensorit të lehtë dhe më të besueshëm.
Hapi 1: Kërkohet harduer:
Materialet që na duhen për të arritur qëllimin tonë përfshijnë përbërësit e mëposhtëm të harduerit:
1. ADXL345
2. Raspberry Pi
3. Kabllo I2C
4. Mburoja I2C për pi mjedër
5. Kabllo Ethernet
Hapi 2: Bashkimi i harduerit:
Seksioni i lidhjes së harduerit në thelb shpjegon lidhjet e telave të kërkuara midis sensorit dhe mjedrës pi. Sigurimi i lidhjeve të sakta është nevoja themelore gjatë punës në çdo sistem për daljen e dëshiruar. Pra, lidhjet e nevojshme janë si më poshtë:
ADXL345 do të funksionojë mbi I2C. Këtu është shembulli i diagramit të instalimeve elektrike, duke demonstruar se si të lidhni secilën ndërfaqe të sensorit.
Jashtë kutisë, bordi është i konfiguruar për një ndërfaqe I2C, si i tillë ne rekomandojmë përdorimin e këtij bashkimi nëse përndryshe jeni agnostik.
Gjithçka që ju nevojitet janë katër tela! Vetëm katër lidhje kërkohen kunjat Vcc, Gnd, SCL dhe SDA dhe këto janë të lidhura me ndihmën e kabllit I2C.
Këto lidhje demonstrohen në fotot e mësipërme.
Hapi 3: Kodi për Matjen e Përshpejtimit:
Avantazhi i përdorimit të mjedrës pi është, që ju siguron fleksibilitetin e gjuhës programuese në të cilën dëshironi të programoni bordin në mënyrë që të ndërlidhni sensorin me të. Duke shfrytëzuar këtë avantazh të këtij bordi, ne po demonstrojmë këtu programimin e tij në piton. Kodi python për ADXL345 mund të shkarkohet nga komuniteti ynë github që është Control Everything Community.
Si dhe për lehtësinë e përdoruesve, ne po shpjegojmë kodin edhe këtu:
Si hapi i parë i kodimit ju duhet të shkarkoni bibliotekën smbus në rast të python, sepse kjo bibliotekë mbështet funksionet e përdorura në kod. Pra, për të shkarkuar bibliotekën mund të vizitoni lidhjen e mëposhtme:
pypi.python.org/pypi/smbus-cffi/0.5.1
Ju gjithashtu mund të kopjoni kodin python të punës për këtë sensor nga këtu:
import smbus
koha e importit
# Merr autobus I2C = smbus. SMBus (1)
Adresa # ADXL345, 0x53 (83)
# Zgjidh regjistrin e shkallës së brezit, 0x2C (44)
# 0x0A (10) Mënyra normale, Shkalla e të dhënave të daljes = 100 Hz
bus.write_byte_data (0x53, 0x2C, 0x0A)
Adresa # ADXL345, 0x53 (83)
# Zgjidhni regjistrin e kontrollit të energjisë, 0x2D (45)
# 0x08 (08) Çaktivizo gjumin automatik
bus.write_byte_data (0x53, 0x2D, 0x08)
Adresa # ADXL345, 0x53 (83)
# Zgjidh regjistrin e formatit të të dhënave, 0x31 (49)
# 0x08 (08) Vetë-testimi i çaktivizuar, ndërfaqe me 4 tela
# Rezolucion i plotë, Gama = +/- 2g
bus.write_byte_data (0x53, 0x31, 0x08)
koha. gjumi (0.5)
Adresa # ADXL345, 0x53 (83)
# Lexoni të dhënat mbrapa nga 0x32 (50), 2 bajt
# X-Boshti LSB, X-Boshti MSB
data0 = bus.read_byte_data (0x53, 0x32)
data1 = bus.read_byte_data (0x53, 0x33)
# Ktheni të dhënat në 10-bit
xAccl = ((të dhëna1 & 0x03) * 256) + të dhëna0
nëse xAccl> 511:
xAccl -= 1024
Adresa # ADXL345, 0x53 (83)
# Lexoni të dhënat mbrapa nga 0x34 (52), 2 bajt
# Y-Boshti LSB, Y-Boshti MSB
data0 = bus.read_byte_data (0x53, 0x34)
data1 = bus.read_byte_data (0x53, 0x35)
# Ktheni të dhënat në 10-bit
yAccl = ((të dhënat1 & 0x03) * 256) + të dhëna0
nëse yAccl> 511:
yAccl -= 1024
Adresa # ADXL345, 0x53 (83)
# Lexoni të dhënat mbrapa nga 0x36 (54), 2 bajt
# Z-Boshti LSB, Z-Boshti MSB
data0 = bus.read_byte_data (0x53, 0x36)
data1 = bus.read_byte_data (0x53, 0x37)
# Ktheni të dhënat në 10-bit
zAccl = ((të dhëna1 & 0x03) * 256) + të dhëna0
nëse zAccl> 511:
zAccl -= 1024
# Dalja e të dhënave në ekran
print "Përshpejtimi në boshtin X: %d" %xAccl
print "Përshpejtimi në Boshtin Y: %d" %yAccl
print "Përshpejtimi në Boshtin Z: %d" %zAccl
Pjesa e kodit të përmendur më poshtë përfshin bibliotekat e kërkuara për ekzekutimin e saktë të kodeve python.
importo kohë smbusimport
Kodi mund të ekzekutohet duke shtypur komandën e përmendur më poshtë në komandën e shpejtë.
$> python ADXL345.py
Dalja e sensorit tregohet gjithashtu në figurën e mësipërme për referencë të përdoruesit.
Hapi 4: Aplikimet:
ADXL345 është një akselerometër i vogël, i hollë, me ultra të ulët, me 3 boshte i cili mund të përdoret në Celularë, instrumente mjekësorë etj. Aplikimi i tij përfshin gjithashtu pajisje për lojëra dhe tregues, instrumente industriale, pajisje të navigimit personal dhe mbrojtje nga hard disku (HDD).
Recommended:
Matja e Përshpejtimit duke Përdorur ADXL345 dhe Foton Grimcash: 4 Hapa
Matja e Përshpejtimit Duke Përdorur ADXL345 dhe Foton Grimcash: ADXL345 është një nxitues i vogël, i hollë, me fuqi ultra të ulët, me 3 boshte me matje me rezolucion të lartë (13-bit) deri në ± 16 g. Të dhënat dalëse dixhitale janë të formatuara si plotësuese 16-bitësh dy dhe janë të arritshme përmes ndërfaqes dixhitale I2 C. Ajo mat
Monitorimi i përshpejtimit duke përdorur Raspberry Pi dhe AIS328DQTR duke përdorur Python: 6 hapa
Monitorimi i përshpejtimit duke përdorur Raspberry Pi dhe AIS328DQTR Duke përdorur Python: Përshpejtimi është i kufizuar, mendoj sipas disa ligjeve të Fizikës.- Terry Riley Një cheetah përdor përshpejtim të mahnitshëm dhe ndryshime të shpejta në shpejtësi kur ndiqni. Krijesa më e shpejtë në breg, herë pas here, përdor ritmin e saj të lartë për të kapur prenë.
Matja e përshpejtimit duke përdorur H3LIS331DL dhe Raspberry Pi: 4 hapa
Matja e Përshpejtimit Duke Përdorur H3LIS331DL dhe Raspberry Pi: H3LIS331DL, është një akselerometër linear me fuqi të ulët me performancë të lartë 3 aksesh që i përket familjes “nano”, me ndërfaqe serike dixhitale I²C. H3LIS331DL ka peshore të plota të zgjedhura nga përdoruesi prej ± 100g/± 200g/± 400g dhe është i aftë të masë përshpejtimet me
Matja e përshpejtimit duke përdorur ADXL345 dhe Arduino Nano: 4 hapa
Matja e përshpejtimit duke përdorur ADXL345 dhe Arduino Nano: ADXL345 është një nxitues i vogël, i hollë, me fuqi ultra të ulët, me 3 boshte me matje me rezolucion të lartë (13-bit) deri në ± 16 g. Të dhënat dalëse dixhitale janë të formatuara si plotësuese 16-bitësh dy dhe janë të arritshme përmes ndërfaqes dixhitale I2 C. Ajo mat
Matja e Përshpejtimit duke Përdorur BMA250 dhe Raspberry Pi: 4 Hapa
Matja e Përshpejtimit Duke Përdorur BMA250 dhe Raspberry Pi: BMA250 është një akselerometër i vogël, i hollë, me fuqi ultra të ulët, me 3 boshte me matje me rezolucion të lartë (13-bit) deri në ± 16 g. Të dhënat dalëse dixhitale janë të formatuara si plotësuese 16-bitësh dy dhe janë të arritshme përmes ndërfaqes dixhitale I2C. Mat masat statike