Բովանդակություն:
- Քայլ 1: Պահանջվում է սարքավորում
- Քայլ 2: Սարքավորման միացում
- Քայլ 3. Արագացման չափման ծածկագիր
- Քայլ 4: Դիմումներ
Video: ADXL345- ի և Raspberry Pi- ի միջոցով արագացման չափում. 4 քայլ
2024 Հեղինակ: John Day | [email protected]. Վերջին փոփոխված: 2024-01-30 09:46
ADXL345- ը փոքր, բարակ, ծայրահեղ ցածր, 3 առանցքի արագացուցիչ է ՝ բարձր լուծաչափով (13 բիթ) չափմամբ մինչև ± 16 գ: Թվային ելքային տվյալները ձևաչափվում են որպես 16-բիթ երկակի լրացում և հասանելի են I2 C թվային ինտերֆեյսի միջոցով: Չափում է թեքության զգայարանների ծանրության ստատիկ արագացումը, ինչպես նաև շարժման կամ հարվածի հետևանքով առաջացած դինամիկ արագացումը: Դրա բարձր լուծաչափը (3.9 մգ/LSB) թույլ է տալիս չափել թեքության փոփոխությունները 1.0 ° -ից պակաս:
Այս ձեռնարկում ցուցադրվում է ADXL345 սենսորային մոդուլի և ազնվամորու pi- ի հետ փոխկապակցումը, ինչպես նաև պատկերված է դրա ծրագրավորումը պիթոնի լեզվով: Բոլոր 3 առանցքների արագացման արժեքները կարդալու համար մենք օգտագործել ենք ազնվամորի pi- ն I2C ադապտերով: Այս I2C ադապտերը դյուրին և հուսալի է դարձնում սենսորային մոդուլի հետ կապը:
Քայլ 1: Պահանջվում է սարքավորում
Նյութերը, որոնք մեզ անհրաժեշտ են մեր նպատակին հասնելու համար, ներառում են հետևյալ ապարատային բաղադրիչները.
1. ADXL345
2. Ազնվամորի Պի
3. I2C մալուխ
4. I2C Shield ազնվամորու pi- ի համար
5. Ethernet մալուխ
Քայլ 2: Սարքավորման միացում
Սարքավորումների միացման բաժինը հիմնականում բացատրում է սենսորի և ազնվամորու pi- ի միջև պահանջվող լարերի միացումները: Connectionsանկալի ելքի համար ցանկացած համակարգի վրա աշխատելիս հիմնական անհրաժեշտությունն է հիմնական կապերի ապահովումը: Այսպիսով, անհրաժեշտ կապերը հետևյալն են.
ADXL345- ը կաշխատի I2C- ով: Ահա միացման սխեմայի օրինակ, որը ցույց է տալիս, թե ինչպես միացնել սենսորի յուրաքանչյուր միջերեսը:
Տուփից դուրս, տախտակը կազմաձևված է I2C ինտերֆեյսի համար, ուստի խորհուրդ ենք տալիս օգտագործել այս կապը, եթե այլապես ագնոստիկ եք:
Ձեզ անհրաժեշտ է չորս լար: Միայն չորս միացում է պահանջվում Vcc, Gnd, SCL և SDA կապում, որոնք միացված են I2C մալուխի օգնությամբ:
Այս կապերը ցուցադրվում են վերը նշված նկարներում:
Քայլ 3. Արագացման չափման ծածկագիր
Ազնվամորու pi- ի օգտագործման առավելությունն այն է, որ ձեզ տալիս է ծրագրավորման այն լեզվի ճկունությունը, որով ցանկանում եք ծրագրավորել տախտակը `սենսորը դրա հետ միացնելու համար: Օգտվելով այս տախտակի այս առավելությունից ՝ մենք այստեղ ցուցադրում ենք դրա ծրագրավորումը պիթոնում: ADXL345- ի Python կոդը կարելի է ներբեռնել մեր github համայնքից, որը Control Everything համայնքն է:
Ինչպես նաև օգտվողների հեշտության համար, մենք այստեղ բացատրում ենք ծածկագիրը.
Որպես կոդավորման առաջին քայլ անհրաժեշտ է ներբեռնել smbus գրադարանը պիթոնի դեպքում, քանի որ այս գրադարանը աջակցում է կոդի մեջ օգտագործվող գործառույթներին: Այսպիսով, գրադարանը ներբեռնելու համար կարող եք այցելել հետևյալ հղումը.
pypi.python.org/pypi/smbus-cffi/0.5.1
Այս սենսորի աշխատանքային պիթոնի ծածկագիրը կարող եք պատճենել նաև այստեղից.
ներմուծել 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
Ստորև նշված կոդի մասը ներառում է գրադարանները, որոնք անհրաժեշտ են պիթոնի ծածկագրերի ճիշտ կատարման համար:
ներմուծել smbusimport ժամանակը
Կոդը կարող է կատարվել `հրամանի տողում մուտքագրելով ստորև նշված հրամանը:
$> պիթոն ADXL345.py
Սենսորի ելքը նույնպես ցուցադրված է վերևի նկարում ՝ օգտագործողի տեղեկանքի համար:
Քայլ 4: Դիմումներ
ADXL345- ը փոքր, բարակ, ծայրահեղ ցածր հզորության, 3 առանցքի արագացուցիչ է, որը կարող է օգտագործվել հեռախոսների, բժշկական սարքավորումների և այլնի մեջ: Դրա կիրառումը ներառում է նաև խաղային և մատնանշող սարքեր, արդյունաբերական գործիքներ, անհատական նավիգացիոն սարքեր և կոշտ սկավառակի (HDD) պաշտպանություն:
Խորհուրդ ենք տալիս:
ADXL345- ի և մասնիկի ֆոտոնի միջոցով արագացման չափում. 4 քայլ
ADXL345- ի և մասնիկի ֆոտոնի միջոցով արագացման չափում. ADXL345- ը փոքր, բարակ, ծայրահեղ ցածր հզորության, 3 առանցքի արագացուցիչ է `բարձր լուծաչափով (13 բիթ) չափմամբ մինչև ± 16 գ: Թվային ելքային տվյալները ձևաչափվում են որպես 16-բիթ երկակի լրացում և հասանելի են I2 C թվային ինտերֆեյսի միջոցով: Չափում է
H3LIS331DL- ի և Arduino Nano- ի միջոցով արագացման չափում. 4 քայլ
H3LIS331DL- ի և Arduino Nano- ի միջոցով արագացման չափումը ՝ H3LIS331DL, ցածր հզորության բարձր արդյունավետությամբ 3 առանցքի գծային արագացուցիչ է, որը պատկանում է «նանո» ընտանիքին ՝ թվային I²C սերիական ինտերֆեյսով: H3LIS331DL- ն ունի 100 գ/g 200 գ/g 400 գ լիարժեք կշեռքներ օգտագործողի կողմից և ունակ է չափել արագացումները
H3LIS331DL- ի և Raspberry Pi- ի միջոցով արագացման չափում. 4 քայլ
H3LIS331DL- ի և Raspberry Pi- ի միջոցով արագացման չափում. H3LIS331DL- ը ցածր էներգիայի բարձր արդյունավետությամբ 3 առանցքի գծային արագացուցիչ է, որը պատկանում է «նանո» ընտանիքին ՝ թվային I²C սերիական ինտերֆեյսով: H3LIS331DL- ն ունի 100 գ/g 200 գ/g 400 գ լիարժեք կշեռքներ օգտագործողի կողմից և ունակ է չափել արագացումները
ADXL345- ի և Arduino Nano- ի միջոցով արագացման չափում. 4 քայլ
ADXL345- ի և Arduino Nano- ի միջոցով արագացման չափում. ADXL345- ը փոքր, բարակ, ծայրահեղ ցածր հզորության, 3 առանցքի արագացուցիչ է ՝ բարձր լուծաչափով (13 բիթ) չափմամբ մինչև ± 16 գ: Թվային ելքային տվյալները ձևաչափվում են որպես 16-բիթ երկակի լրացում և հասանելի են I2 C թվային ինտերֆեյսի միջոցով: Չափում է
BMA250- ի և Raspberry Pi- ի միջոցով արագացման չափում. 4 քայլ
BMA250- ի և Raspberry Pi- ի միջոցով արագացման չափում. BMA250- ը փոքր, բարակ, ծայրահեղ ցածր հզորության, 3 առանցքի արագացուցիչ է `բարձր լուծաչափով (13 բիթ) չափմամբ մինչև ± 16 գ: Թվային ելքային տվյալները ձևաչափվում են որպես 16-բիթ երկակի լրացում և հասանելի են I2C թվային ինտերֆեյսի միջոցով: Չափում է ստատիկ