Tartalomjegyzék:

Raspberry Pi - ADXL345 3 tengelyes gyorsulásmérő Python bemutató: 4 lépés
Raspberry Pi - ADXL345 3 tengelyes gyorsulásmérő Python bemutató: 4 lépés

Videó: Raspberry Pi - ADXL345 3 tengelyes gyorsulásmérő Python bemutató: 4 lépés

Videó: Raspberry Pi - ADXL345 3 tengelyes gyorsulásmérő Python bemutató: 4 lépés
Videó: Как использовать гироскоп, акселерометр, магнитометр MPU-9250 для Arduino 2024, Június
Anonim

Az ADXL345 egy kicsi, vékony, rendkívül alacsony teljesítményű, 3 tengelyes gyorsulásmérő, nagy felbontású (13 bites) méréssel, ± 16 g-ig. A digitális kimeneti adatok 16 bites kettes kiegészítésként vannak formázva, és az I2 C digitális interfészen keresztül érhetők el. Méri a gravitáció statikus gyorsulását dőlésérzékelő alkalmazásokban, valamint a mozgásból vagy ütésből eredő dinamikus gyorsulást. Nagy felbontása (3,9 mg/LSB) lehetővé teszi az 1,0 ° alatti dőlésváltozások mérését. Itt a bemutató a málna pi -vel python kód használatával.

1. lépés: Amire szüksége van..

Amire szükséged van..!!
Amire szükséged van..!!
Amire szükséged van..!!
Amire szükséged van..!!

1. Málna Pi

2. ADXL345

3. I²C kábel

4. I²C pajzs a Raspberry Pi számára

5. Ethernet kábel

2. lépés: Csatlakozás:

Kapcsolat
Kapcsolat
Kapcsolat
Kapcsolat
Kapcsolat
Kapcsolat
Kapcsolat
Kapcsolat

Vegyünk egy I2C pajzsot a málna pi számára, és óvatosan toljuk át a málna pi gpio csapjaira.

Ezután csatlakoztassa az I2C kábel egyik végét az ADXL345 érzékelőhöz, a másik végét pedig az I2C árnyékoláshoz.

Csatlakoztassa az Ethernet kábelt is a pi -hez, vagy használhat WiFi modult.

A csatlakozásokat a fenti kép mutatja.

3. lépés: Kód:

Kód
Kód

Az ADXL345 python kódja letölthető a GitHub adattárunkból- Dcube Store

Itt a link ugyanerre:

github.com/DcubeTechVentures/ADXL345..

Az SMBus könyvtárat használtuk a python kódhoz, az SMBus raspberry pi -re történő telepítésének lépéseit itt írjuk le:

pypi.python.org/pypi/smbus-cffi/0.5.1

Innen is másolhatja a kódot, ez a következőképpen van megadva:

# Szabad akaratú licenccel terjesztik.

# Használhatja bármilyen módon, nyereséggel vagy ingyen, feltéve, hogy illeszkedik a kapcsolódó művek licenceihez.

# ADXL345

# Ez a kód a Dcube Store -ban elérhető ADXL345_I2CS I2C Mini modullal való együttműködésre készült.

import smbus

importálási idő

# Szerezzen I2C buszt

busz = smbus. SMBus (1)

# ADXL345 cím, 0x53 (83)

# Válassza ki a sávszélesség -nyilvántartást, 0x2C (44)# 0x0A (10) Normál mód, Kimeneti adatsebesség = 100 Hz

bus.write_byte_data (0x53, 0x2C, 0x0A)

# ADXL345 cím, 0x53 (83)

# Válassza ki a teljesítményszabályozó regisztert, 0x2D (45)

# 0x08 (08) Automatikus alvás letiltása

bus.write_byte_data (0x53, 0x2D, 0x08)

# ADXL345 cím, 0x53 (83)

# Válassza ki az adatformátum regisztert, 0x31 (49)

# 0x08 (08) Önteszt tiltva, 4 vezetékes interfész

# Teljes felbontás, tartomány = +/- 2g

bus.write_byte_data (0x53, 0x31, 0x08)

time.sleep (0,5)

# ADXL345 cím, 0x53 (83)

# Adatok visszaolvasása 0x32 (50), 2 bájtból

# X-tengely LSB, X-tengely MSB

data0 = bus.read_byte_data (0x53, 0x32)

data1 = bus.read_byte_data (0x53, 0x33)

# Konvertálja az adatokat 10 bitesre

xAccl = ((adat1 és 0x03) * 256) + adat0

ha xAccl> 511:

xAccl -= 1024

# ADXL345 cím, 0x53 (83)

# Adatok visszaolvasása 0x34 (52), 2 bájtból

# Y-tengely LSB, Y-tengely MSB

data0 = bus.read_byte_data (0x53, 0x34)

data1 = bus.read_byte_data (0x53, 0x35)

# Konvertálja az adatokat 10 bitesre

yAccl = ((adat1 és 0x03) * 256) + adat0

ha yAccl> 511:

yAccl -= 1024

# ADXL345 cím, 0x53 (83)

# Adatok visszaolvasása 0x36 (54), 2 bájtból

# Z-tengely LSB, Z-tengely MSB

data0 = bus.read_byte_data (0x53, 0x36)

data1 = bus.read_byte_data (0x53, 0x37)

# Konvertálja az adatokat 10 bitesre

zAccl = ((adat1 és 0x03) * 256) + adat0

ha zAccl> 511:

zAccl -= 1024

# Adatok megjelenítése a képernyőn

print "Gyorsulás az X-tengelyben: %d" %xAccl

print "Gyorsulás Y tengelyen: %d" %yAccl

print "Gyorsulás Z-tengelyben: %d" %zAccl

4. lépés: Alkalmazások:

Az ADXL345 egy kicsi, vékony, rendkívül alacsony teljesítményű, 3 tengelyes gyorsulásmérő, amely kézibeszélőkben, orvosi műszerekben stb. Használható. Alkalmazása magában foglalja a játék- és mutatóeszközöket, az ipari műszereket, a személyi navigációs eszközöket és a merevlemez-meghajtó (HDD) védelmét is.

Ajánlott: