Բովանդակություն:

Raspberry Pi - ADXL345 3 -Axis Accelerometer Python Tutorial: 4 Steps
Raspberry Pi - ADXL345 3 -Axis Accelerometer Python Tutorial: 4 Steps

Video: Raspberry Pi - ADXL345 3 -Axis Accelerometer Python Tutorial: 4 Steps

Video: Raspberry Pi - ADXL345 3 -Axis Accelerometer Python Tutorial: 4 Steps
Video: Input Shaper with a Pi Pico - Klipper Tips 2024, Նոյեմբեր
Anonim

ADXL345- ը փոքր, բարակ, ծայրահեղ ցածր, 3 առանցքի արագացուցիչ է ՝ բարձր լուծաչափով (13 բիթ) չափմամբ մինչև ± 16 գ: Թվային ելքային տվյալները ձևաչափվում են որպես 16-բիթ երկակի լրացում և հասանելի են I2 C թվային ինտերֆեյսի միջոցով: Չափում է թեքության զգայարանների ծանրության ստատիկ արագացումը, ինչպես նաև շարժման կամ հարվածի հետևանքով առաջացած դինամիկ արագացումը: Դրա բարձր լուծաչափը (3.9 մգ/LSB) թույլ է տալիս չափել թեքության փոփոխությունները 1.0 ° -ից պակաս: Ահա այն ցուցադրում է ազնվամորու pi- ով ՝ օգտագործելով python ծածկագիրը:

Քայլ 1: Այն, ինչ ձեզ հարկավոր է..

Այն, ինչ ձեզ պետք է.. !!
Այն, ինչ ձեզ պետք է.. !!
Այն, ինչ ձեզ պետք է.. !!
Այն, ինչ ձեզ պետք է.. !!

1. Ազնվամորի Պի

2. ADXL345

3. I²C մալուխ

4. I²C Shield ազնվամորի Pi- ի համար

5. Ethernet մալուխ

Քայլ 2: Միացում

Միացում
Միացում
Միացում
Միացում
Միացում
Միացում
Միացում
Միացում

Վերցրեք I2C վահան ազնվամորու pi- ի համար և նրբորեն մղեք այն ազնվամորի pi- ի gpio կապանքների վրա:

Այնուհետև I2C մալուխի մի ծայրը միացրեք ADXL345 սենսորին, իսկ մյուս ծայրը ՝ I2C վահանին:

Միացրեք Ethernet մալուխը pi- ին կամ կարող եք օգտագործել WiFi մոդուլ:

Կապերը ցուցադրվում են վերևի նկարում:

Քայլ 3: Կոդ

Կոդ
Կոդ

ADXL345- ի Python ծածկագիրը կարելի է ներբեռնել մեր GitHub պահոցից- Dcube Store

Ահա նույնի հղումը.

github.com/DcubeTechVentures/ADXL345..

Մենք օգտագործել ենք SMBus գրադարանը python կոդի համար, ազնվամորի pi- ի վրա SMBus տեղադրելու քայլերը նկարագրված են այստեղ.

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

Այստեղից կարող եք նաև պատճենել կոդը, այն տրվում է հետևյալ կերպ.

# Տարածված է ազատ կամքի լիցենզիայով:

# Օգտագործեք այն ինչպես ցանկանում եք, շահույթ կամ անվճար, պայմանով, որ այն տեղավորվում է դրա հետ կապված աշխատանքների լիցենզիաներում:

# ADXL345

# Այս ծածկագիրը նախատեսված է Dcube Store- ում առկա ADXL345_I2CS I2C մինի մոդուլի հետ աշխատելու համար:

ներմուծել smbus

ներմուծման ժամանակը

# Ձեռք բերեք I2C ավտոբուս

ավտոբուս = smbus. SMBus (1)

# ADXL345 հասցե, 0x53 (83)

# Ընտրեք թողունակության արագության գրանցամատյան, 0x2C (44)# 0x0A (10) Նորմալ ռեժիմ, ելքային տվյալների արագություն = 100 Հց

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

# ADXL345 հասցե, 0x53 (83)

# Ընտրեք էներգիայի կառավարման գրանցամատյան, 0x2D (45)

# 0x08 (08) Ավտոմատ քունն անջատված է

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

# ADXL345 հասցե, 0x53 (83)

# Ընտրեք տվյալների ձևաչափի գրանցամատյան, 0x31 (49)

# 0x08 (08) Ինքնաթեստը անջատված է, 4-լարային ինտերֆեյս

# Լիարժեք լուծում, միջակայք = +/- 2 գ

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

ժամանակ. քուն (0.5)

# ADXL345 հասցե, 0x53 (83)

# Կարդացեք տվյալները 0x32- ից (50), 2 բայթ

# X-Axis LSB, X-Axis MSB

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

տվյալներ 1 = bus.read_byte_data (0x53, 0x33)

# Փոխակերպեք տվյալները 10 բիթ

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

եթե xAccl> 511:

xAccl -= 1024

# ADXL345 հասցե, 0x53 (83)

# Կարդացեք տվյալները 0x34- ից (52), 2 բայթ

# Y-Axis LSB, Y-Axis MSB

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

տվյալներ 1 = bus.read_byte_data (0x53, 0x35)

# Փոխակերպեք տվյալները 10 բիթ

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

եթե yAccl> 511:

yAccl -= 1024

# ADXL345 հասցե, 0x53 (83)

# Կարդացեք տվյալները 0x36- ից (54), 2 բայթ

# Z-Axis LSB, Z-Axis MSB

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

տվյալներ 1 = bus.read_byte_data (0x53, 0x37)

# Փոխակերպեք տվյալները 10 բիթ

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

եթե zAccl> 511:

zAccl -= 1024

# Ելքի տվյալները էկրանին

տպել «Արագացում X- առանցքում. %d» %xAccl

տպել «Արագացում Y- առանցքում. %d» %yAccl

տպել «Արագացում Z- առանցքում. %d» %zAccl

Քայլ 4: Դիմումներ

ADXL345- ը փոքր, բարակ, ծայրահեղ ցածր հզորության, 3 առանցքի արագացուցիչ է, որը կարող է օգտագործվել հեռախոսների, բժշկական սարքավորումների և այլնի մեջ: Դրա կիրառումը ներառում է նաև խաղային և մատնանշող սարքեր, արդյունաբերական գործիքներ, անհատական նավիգացիոն սարքեր և կոշտ սկավառակի (HDD) պաշտպանություն:

Խորհուրդ ենք տալիս: