Բովանդակություն:
- Քայլ 1: Պահանջվում է սարքավորում
- Քայլ 2: Սարքավորման միացում
- Քայլ 3. Arduino կոդ արագացման չափման համար
- Քայլ 4: Դիմումներ
Video: Արագացման չափում BMA250- ի և Arduino Nano- ի միջոցով. 4 քայլ
2024 Հեղինակ: John Day | [email protected]. Վերջին փոփոխված: 2024-01-30 09:47
BMA250- ը փոքր, բարակ, ծայրահեղ ցածր հզորության, 3 առանցքի արագացուցիչ է `բարձր լուծաչափով (13 բիթ) չափմամբ մինչև ± 16 գ: Թվային ելքային տվյալները ձևաչափվում են որպես 16-բիթ երկակի լրացում և հասանելի են I2C թվային ինտերֆեյսի միջոցով: Չափում է թեքության զգայարանների ծանրության ստատիկ արագացումը, ինչպես նաև շարժման կամ հարվածի հետևանքով առաջացած դինամիկ արագացումը: Դրա բարձր լուծաչափը (3.9 մգ/LSB) թույլ է տալիս չափել թեքության փոփոխությունները 1.0 ° -ից պակաս:
Այս ձեռնարկում մենք մտադիր ենք չափել արագացումը բոլոր երեք ուղղահայաց առանցքներում ՝ օգտագործելով BMA250 և Arduino Nano:
Քայլ 1: Պահանջվում է սարքավորում
Նյութերը, որոնք մեզ անհրաժեշտ են մեր նպատակին հասնելու համար, ներառում են հետևյալ ապարատային բաղադրիչները.
1. BMA250
2. Արդուինո Նանո
3. I2C մալուխ
4. I2C վահան Arduino Nano- ի համար
Քայլ 2: Սարքավորման միացում
Սարքավորումների միացման բաժինը հիմնականում բացատրում է սենսորի և arduino- ի միջև պահանջվող լարերի միացումները: Connectionsանկալի ելքի համար ցանկացած համակարգի վրա աշխատելիս հիմնական անհրաժեշտությունն է հիմնական կապերի ապահովումը: Այսպիսով, անհրաժեշտ կապերը հետևյալն են.
BMA250- ը կաշխատի I2C- ով: Ահա միացման սխեմայի օրինակ, որը ցույց է տալիս, թե ինչպես միացնել սենսորի յուրաքանչյուր միջերեսը:
Տուփից դուրս, տախտակը կազմաձևված է I2C ինտերֆեյսի համար, ուստի խորհուրդ ենք տալիս օգտագործել այս կապը, եթե այլապես ագնոստիկ եք: Ձեզ անհրաժեշտ է չորս լար:
Միայն չորս միացում է պահանջվում Vcc, Gnd, SCL և SDA կապում, որոնք միացված են I2C մալուխի օգնությամբ:
Այս կապերը ցուցադրվում են վերը նշված նկարներում:
Քայլ 3. Arduino կոդ արագացման չափման համար
Եկեք հիմա սկսենք Arduino կոդով:
Arduino- ի հետ սենսորային մոդուլն օգտագործելիս մենք ներառում ենք Wire.h գրադարանը: «Լար» գրադարանը պարունակում է գործառույթներ, որոնք հեշտացնում են i2c հաղորդակցությունը սենսորի և Arduino տախտակի միջև:
Ամբողջ Arduino ծածկագիրը տրված է ստորև ՝ օգտագործողի հարմարության համար.
#ներառում
// BMA250 I2C հասցեն ՝ 0x18 (24)
#սահմանել Addr 0x18
դատարկ կարգավորում ()
{
// Նախնականացնել I2C հաղորդակցությունը որպես ՎԱՐՊԵՏ
Wire.begin ();
// Սկզբնականացնել սերիական հաղորդակցությունը, սահմանել բաուդ արագություն = 9600
Serial.begin (9600);
// Սկսել I2C փոխանցումը
Wire.beginTransmission (Addr);
// Ընտրեք տիրույթի ընտրության գրանցամատյան
Wire.write (0x0F);
// Սահմանել միջակայքը +/- 2 գ
Wire.write (0x03);
// Դադարեցնել I2C փոխանցումը
Wire.endTransmission ();
// Սկսել I2C փոխանցումը
Wire.beginTransmission (Addr);
// Ընտրեք թողունակության գրանցամատյան
Wire.write (0x10);
// Սահմանել թողունակություն 7.81 Հց
Wire.write (0x08);
// Դադարեցնել I2C փոխանցումը
Wire.endTransmission (); ուշացում (300);}
դատարկ շրջան ()
{
անստորագիր int տվյալներ [0];
// Սկսել I2C փոխանցումը
Wire.beginTransmission (Addr);
// Ընտրեք տվյալների գրանցամատյաններ (0x02 - 0x07)
Wire.write (0x02);
// Դադարեցնել I2C փոխանցումը
Wire.endTransmission ();
// Պահանջել 6 բայթ
Հաղորդալար. Խնդրում ենք (Addr, 6);
// Կարդացեք վեց բայթ
// xAccl lsb, xAccl msb, yAccl lsb, yAccl msb, zAccl lsb, zAccl msb
եթե (Wire.available () == 6)
{
տվյալներ [0] = Wire.read ();
տվյալներ [1] = Wire.read ();
տվյալներ [2] = Wire.read ();
տվյալներ [3] = Wire.read ();
տվյալներ [4] = Wire.read ();
տվյալներ [5] = Wire.read ();
}
ուշացում (300);
// Տեղափոխեք տվյալները 10 բիթ
float xAccl = ((տվյալները [1] * 256.0) + (տվյալները [0] & 0xC0)) / 64;
եթե (xAccl> 511)
{
xAccl -= 1024;
}
բոց yAccl = ((տվյալները [3] * 256.0) + (տվյալները [2] & 0xC0)) / 64;
եթե (yAccl> 511)
{
yAccl -= 1024;
}
float zAccl = ((տվյալները [5] * 256.0) + (տվյալները [4] & 0xC0)) / 64;
եթե (zAccl> 511)
{
zAccl -= 1024;
}
// Ելքային տվյալները սերիական մոնիտորին
Serial.print («Արագացում X- առանցքում.»);
Serial.println (xAccl);
Serial.print («Արագացում Y- առանցքում.»);
Serial.println (yAccl);
Serial.print («Արագացում Z- առանցքում.»);
Serial.println (zAccl);
}
Լարային գրադարանում Wire.write () և Wire.read () օգտագործվում են հրամանները գրելու և սենսորի ելքը կարդալու համար: Serial.print () և Serial.println () օգտագործվում են Arduino IDE- ի սերիական մոնիտորի վրա սենսորի ելքը ցուցադրելու համար:
Սենսորի ելքը ցուցադրվում է վերևի նկարում:
Քայլ 4: Դիմումներ
BMA250- ի նման արագացուցիչները հիմնականում գտնում են դրա կիրառումը խաղերում և ցուցադրվող պրոֆիլի անցումներում: Այս սենսորային մոդուլը նաև օգտագործվում է բջջային ծրագրերի էներգիայի կառավարման առաջադեմ համակարգում: BMA250- ը եռակի առանցքային թվային արագացման տվիչ է, որը ներառված է չիպերի շարժման խելամիտ անջատիչ վերահսկիչով:
Խորհուրդ ենք տալիս:
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 գ լիարժեք կշեռքներ օգտագործողի կողմից և ունակ է չափել արագացումները
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 թվային ինտերֆեյսի միջոցով: Չափում է ստատիկ
Արագացման չափում BMA250- ի և մասնիկի ֆոտոնի միջոցով `4 քայլ
BMA250- ի և մասնիկի ֆոտոնի միջոցով արագացման չափում. BMA250- ը փոքր, բարակ, ծայրահեղ ցածր հզորության, 3 առանցքի արագացուցիչ է `բարձր լուծաչափով (13 բիթ) չափմամբ մինչև ± 16 գ: Թվային ելքային տվյալները ձևաչափվում են որպես 16-բիթ երկակի լրացում և հասանելի են I2C թվային ինտերֆեյսի միջոցով: Չափում է ստատիկ