Turinys:

Raspberry Pi - ADXL345 3 ašių akselerometro „Python“vadovėlis: 4 žingsniai
Raspberry Pi - ADXL345 3 ašių akselerometro „Python“vadovėlis: 4 žingsniai

Video: Raspberry Pi - ADXL345 3 ašių akselerometro „Python“vadovėlis: 4 žingsniai

Video: Raspberry Pi - ADXL345 3 ašių akselerometro „Python“vadovėlis: 4 žingsniai
Video: Raspberry Pi Accelerometer using the ADXL345 2024, Lapkritis
Anonim

„ADXL345“yra mažas, plonas, itin mažos galios 3 ašių akselerometras su didelės skiriamosios gebos (13 bitų) matavimu iki ± 16 g. Skaitmeniniai išvesties duomenys yra suformatuoti kaip 16 bitų du papildymai ir yra prieinami per I2 C skaitmeninę sąsają. Jis matuoja statinį gravitacijos pagreitį pasvirimo jutiklyje, taip pat dinaminį pagreitį, atsirandantį dėl judesio ar smūgio. Didelė skiriamoji geba (3,9 mg/LSB) leidžia matuoti nuolydžio pokyčius, mažesnius nei 1,0 °. Štai tai demonstravimas su aviečių pi naudojant python kodą.

1 žingsnis: ko jums reikia..

Ko tau reikia..!!
Ko tau reikia..!!
Ko tau reikia..!!
Ko tau reikia..!!

1. Avietė Pi

2. ADXL345

3. I²C kabelis

4. „I²C Shield“, skirtas „Raspberry Pi“

5. Ethernet kabelis

2 veiksmas: prijungimas:

Ryšys
Ryšys
Ryšys
Ryšys
Ryšys
Ryšys
Ryšys
Ryšys

Paimkite aviečių pi I2C skydą ir švelniai stumkite jį virš aviečių pi gpio kaiščių.

Tada vieną I2C kabelio galą prijunkite prie ADXL345 jutiklio, o kitą - prie I2C skydo.

Taip pat prijunkite Ethernet kabelį prie pi arba galite naudoti „WiFi“modulį.

Sujungimai parodyti aukščiau esančiame paveikslėlyje.

3 žingsnis: kodas:

Kodas
Kodas

ADXL345 python kodą galima atsisiųsti iš mūsų „GitHub“saugyklos- „Dcube Store“

Čia yra nuoroda į tą patį:

github.com/DcubeTechVentures/ADXL345..

„Python“kodui naudojome „SMBus“biblioteką, čia aprašyti SMBus diegimo „Raspberry pi“veiksmai:

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

Taip pat galite nukopijuoti kodą iš čia, jis pateikiamas taip:

# Platinama su laisvos valios licencija.

# Naudokite bet kokiu būdu, pelningai ar nemokamai, jei jis atitinka su juo susijusių darbų licencijas.

# ADXL345

# Šis kodas skirtas dirbti su „ADCL345_I2CS I2C Mini“moduliu, kurį galima įsigyti „Dcube Store“.

importuoti smbus

importo laikas

# Gaukite I2C autobusą

autobusas = smbus. SMBus (1)

# ADXL345 adresas, 0x53 (83)

# Pasirinkite dažnių juostos pločio registrą, 0x2C (44)# 0x0A (10) normalus režimas, išvesties duomenų dažnis = 100 Hz

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

# ADXL345 adresas, 0x53 (83)

# Pasirinkite galios valdymo registrą, 0x2D (45)

# 0x08 (08) Automatinis miego režimas išjungtas

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

# ADXL345 adresas, 0x53 (83)

# Pasirinkite duomenų formatų registrą, 0x31 (49)

# 0x08 (08) Savęs testavimas išjungtas, 4 laidų sąsaja

# Visa raiška, diapazonas = +/- 2g

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

laikas. miegas (0,5)

# ADXL345 adresas, 0x53 (83)

# Perskaitykite duomenis iš 0x32 (50), 2 baitų

# X ašis LSB, X ašis MSB

duomenys0 = magistralė.skaito_baitų_datai (0x53, 0x32)

duomenys1 = magistralė

# Konvertuokite duomenis į 10 bitų

xAccl = ((duomenys1 ir 0x03) * 256) + duomenys0

jei xAccl> 511:

xAccl -= 1024

# ADXL345 adresas, 0x53 (83)

# Perskaitykite duomenis iš 0x34 (52), 2 baitų

# Y ašis LSB, Y ašis MSB

duomenys0 = magistralė.skaito_baitų_datai (0x53, 0x34)

duomenys1 = magistralė

# Konvertuokite duomenis į 10 bitų

yAccl = ((duomenys1 ir 0x03) * 256) + duomenys0

jei yAccl> 511:

yAccl -= 1024

# ADXL345 adresas, 0x53 (83)

# Perskaitykite duomenis iš 0x36 (54), 2 baitų

# Z ašies LSB, Z ašies MSB

duomenys0 = magistralės.skaito_baitų_datai (0x53, 0x36)

duomenys1 = magistralė

# Konvertuokite duomenis į 10 bitų

zAccl = ((duomenys1 ir 0x03) * 256) + duomenys0

jei zAccl> 511:

zAccl -= 1024

# Išveskite duomenis į ekraną

spausdinti "pagreitis X ašyje: %d" %xAccl

spausdinti "pagreitis Y ašyje: %d" %yAccl

spauda "Pagreitis Z ašyje: %d" %zAccl

4 žingsnis: programos:

ADXL345 yra mažas, plonas, itin mažos galios 3 ašių akselerometras, kurį galima naudoti telefonuose, medicinos prietaisuose ir pan. Jo taikymas taip pat apima žaidimų ir rodymo prietaisus, pramoninius prietaisus, asmeninius navigacijos įrenginius ir standžiojo disko (HDD) apsaugą.

Rekomenduojamas: