Sisällysluettelo:

Raspberry Pi - ADXL345 3 -akselinen kiihtyvyysmittari Python -opetusohjelma: 4 vaihetta
Raspberry Pi - ADXL345 3 -akselinen kiihtyvyysmittari Python -opetusohjelma: 4 vaihetta

Video: Raspberry Pi - ADXL345 3 -akselinen kiihtyvyysmittari Python -opetusohjelma: 4 vaihetta

Video: Raspberry Pi - ADXL345 3 -akselinen kiihtyvyysmittari Python -opetusohjelma: 4 vaihetta
Video: Raspberry Pi Accelerometer Rig 2024, Marraskuu
Anonim

ADXL345 on pieni, ohut, erittäin pienitehoinen, 3-akselinen kiihtyvyysanturi, jonka tarkkuus (13-bittinen) mitataan jopa ± 16 g. Digitaalinen lähtötieto on muotoiltu 16-bittiseksi kaksoiskappaleeksi, ja se on saatavana digitaalisen I2 C-liitännän kautta. Se mittaa staattisen painovoiman kiihtyvyyden kallistusanturisovelluksissa sekä liikkeen tai iskun aiheuttaman dynaamisen kiihtyvyyden. Sen suuri resoluutio (3,9 mg/LSB) mahdollistaa kaltevuuden muutosten mittaamisen alle 1,0 °. Tässä on esittely vadelma pi: llä käyttäen python -koodia.

Vaihe 1: Mitä tarvitset..

Mitä tarvitset..!!
Mitä tarvitset..!!
Mitä tarvitset..!!
Mitä tarvitset..!!

1. Vadelma Pi

2. ADXL345

3. I²C -kaapeli

4. I²C -kilpi Raspberry Pi: lle

5. Ethernet -kaapeli

Vaihe 2: Yhteys:

Liitäntä
Liitäntä
Liitäntä
Liitäntä
Liitäntä
Liitäntä
Liitäntä
Liitäntä

Ota I2C -kilpi vadelma pi: lle ja työnnä sitä varovasti vadelma pi: n gpio -nastojen päälle.

Liitä sitten I2C -kaapelin toinen pää ADXL345 -anturiin ja toinen pää I2C -suojaan.

Liitä myös Ethernet -kaapeli pi: hen tai voit käyttää WiFi -moduulia.

Liitännät näkyvät yllä olevassa kuvassa.

Vaihe 3: Koodi:

Koodi
Koodi

ADXL345: n python-koodi voidaan ladata GitHub-arkistostamme- Dcube Store

Tässä linkki samaan:

github.com/DcubeTechVentures/ADXL345..

Olemme käyttäneet SMBus -kirjastoa python -koodille, SMBus -asennuksen vaiheet vadelma pi: lle on kuvattu tässä:

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

Voit myös kopioida koodin täältä, se annetaan seuraavasti:

# Jaetaan vapaaehtoisella lisenssillä.

# Käytä sitä haluamallasi tavalla, voittoa tai ilmaiseksi, jos se sopii siihen liittyvien teosten lisensseihin.

# ADXL345

# Tämä koodi on suunniteltu toimimaan Dcube Storessa saatavilla olevan ADXL345_I2CS I2C -moduulin kanssa.

tuoda smbus

tuonnin aika

# Hanki I2C -bussi

väylä = smbus. SMBus (1)

# ADXL345 -osoite, 0x53 (83)

# Valitse kaistanleveysrekisteri, 0x2C (44)# 0x0A (10) Normaalitila, Lähdön datanopeus = 100 Hz

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

# ADXL345 -osoite, 0x53 (83)

# Valitse virranhallintarekisteri, 0x2D (45)

# 0x08 (08) Automaattinen lepotila pois käytöstä

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

# ADXL345 -osoite, 0x53 (83)

# Valitse tietomuotorekisteri, 0x31 (49)

# 0x08 (08) Itsetesti pois käytöstä, 4-johtiminen liitäntä

# Täysi resoluutio, alue = +/- 2g

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

aika. unta (0,5)

# ADXL345 -osoite, 0x53 (83)

# Lue tiedot takaisin 0x32 (50), 2 tavua

# X-akseli LSB, X-akseli MSB

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

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

# Muunna tiedot 10-bittisiksi

xAccl = ((data1 & 0x03) * 256) + data0

jos xAccl> 511:

xAccl -= 1024

# ADXL345 -osoite, 0x53 (83)

# Lue tiedot takaisin 0x34 (52), 2 tavua

# Y-akseli LSB, Y-akseli MSB

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

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

# Muunna tiedot 10-bittisiksi

yAccl = ((data1 & 0x03) * 256) + data0

jos yAccl> 511:

yAccl -= 1024

# ADXL345 -osoite, 0x53 (83)

# Lue tiedot takaisin 0x36 (54), 2 tavua

# Z-akseli LSB, Z-akseli MSB

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

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

# Muunna tiedot 10-bittisiksi

zAccl = ((data1 & 0x03) * 256) + data0

jos zAccl> 511:

zAccl -= 1024

# Tulosta tiedot näytölle

tulosta "Kiihtyvyys X-akselilla: %d" %xAccl

tulosta "Kiihtyvyys Y-akselilla: %d" %yAccl

tulosta "Kiihtyvyys Z-akselilla: %d" %zAccl

Vaihe 4: Sovellukset:

ADXL345 on pieni, ohut, erittäin pienitehoinen, 3-akselinen kiihtyvyysmittari, jota voidaan käyttää luureissa, lääketieteellisissä laitteissa jne. Sen sovellus sisältää myös peli- ja osoitinlaitteet, teollisuuslaitteet, henkilökohtaiset navigointilaitteet ja kiintolevyaseman (HDD).

Suositeltava: