Բովանդակություն:
Video: Raspberry Pi - ADXL345 3 -Axis Accelerometer Java ձեռնարկ. 4 քայլ
2024 Հեղինակ: John Day | [email protected]. Վերջին փոփոխված: 2024-01-30 09:46
ADXL345- ը փոքր, բարակ, ծայրահեղ ցածր, 3 առանցքի արագացուցիչ է ՝ բարձր լուծաչափով (13 բիթ) չափմամբ մինչև ± 16 գ: Թվային ելքային տվյալները ձևաչափվում են որպես 16-բիթ երկակի լրացում և հասանելի են I2 C թվային ինտերֆեյսի միջոցով: Չափում է թեքության զգայարանների ծանրության ստատիկ արագացումը, ինչպես նաև շարժման կամ հարվածի հետևանքով առաջացած դինամիկ արագացումը: Դրա բարձր լուծաչափը (3.9 մգ/LSB) թույլ է տալիս չափել թեքության փոփոխությունները 1.0 ° -ից պակաս: Ահա այն ցուցադրում է ազնվամորու pi- ով `օգտագործելով java կոդ:
Քայլ 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- ի համար Java կոդը կարելի է ներբեռնել մեր GitHub պահոցից- Dcube Store
Ահա նույնի հղումը.
github.com/DcubeTechVentures/ADXL345
Մենք օգտագործել ենք pi4j գրադարանը java կոդի համար, ազնվամորի pi- ի վրա pi4j տեղադրելու քայլերը նկարագրված են այստեղ.
pi4j.com/install.html
Այստեղից կարող եք նաև պատճենել կոդը, այն տրվում է հետևյալ կերպ.
// Տարածված է ազատ կամքի լիցենզիայով:
// Օգտագործեք այն ինչպես ցանկանում եք, շահույթ կամ անվճար, պայմանով, որ այն տեղավորվում է դրա հետ կապված աշխատանքների լիցենզիաներում:
// ADXL345
// Այս ծածկագիրը նախատեսված է Dcube Store- ում առկա ADXL345_I2CS I2C մինի մոդուլի հետ աշխատելու համար:
ներմուծել com.pi4j.io.i2c. I2CBus;
ներմուծել com.pi4j.io.i2c. I2CD սարք;
ներմուծել com.pi4j.io.i2c. I2CFactory;
ներմուծում java.io. IOException;
հանրային դաս ADXL345
{
public static void main (String args ) նետում է Բացառություն
{
// Ստեղծել I2C ավտոբուս
I2CBus Bus = I2CFactory.getInstance (I2CBus. BUS_1);
// Ստացեք I2C սարք, սարքի I2C հասցեն ՝ 0x53 (83)
I2CDevice սարք = Bus.getDevice (0x53);
// Ընտրեք թողունակության մակարդակի գրանցամատյան
// Նորմալ ռեժիմ, ելքային տվյալների արագություն = 100 Հց
device.write (0x2C, (բայթ) 0x0A);
// Ընտրեք Power control register
// Ավտոմատ քունն անջատել
device.write (0x2D, (բայթ) 0x08);
// Ընտրեք Տվյալների ձևաչափի գրանցամատյան
// Ինքնաթեստը անջատված է, 4-լարային ինտերֆեյս, Ամբողջական լուծաչափ, միջակայք = +/- 2 գ
device.write (0x31, (բայթ) 0x08);
Thread.sleep (500);
// Կարդացեք տվյալների 6 բայթ
// xAccl lsb, xAccl msb, yAccl lsb, yAccl msb, zAccl lsb, zAccl msb
բայթ տվյալներ = նոր բայթ [6];
տվյալներ [0] = (բայթ) սարք. կարդալ (0x32);
տվյալներ [1] = (բայթ) սարք. կարդալ (0x33);
տվյալներ [2] = (բայթ) սարք. կարդալ (0x34);
տվյալներ [3] = (բայթ) սարք. կարդալ (0x35);
տվյալներ [4] = (բայթ) սարք. կարդալ (0x36);
տվյալներ [5] = (բայթ) սարք. կարդալ (0x37);
// Տվյալները փոխակերպեք 10 բիթ
int xAccl = ((տվյալները [1] & 0x03) * 256 + (տվյալները [0] & 0xFF));
եթե (xAccl> 511)
{
xAccl -= 1024;
}
int yAccl = ((տվյալները [3] & 0x03) * 256 + (տվյալները [2] & 0xFF));
եթե (yAccl> 511)
{
yAccl -= 1024;
}
int zAccl = ((տվյալները [5] & 0x03) * 256 + (տվյալները [4] & 0xFF));
եթե (zAccl> 511)
{
zAccl -= 1024;
}
// Ելքի տվյալները էկրանին
System.out.printf ("Արագացում X- առանցքում. %D %n", xAccl);
System.out.printf ("Արագացում Y- առանցքում. %D %n", yAccl);
System.out.printf ("Արագացում Z- առանցքում. %D %n", zAccl);
}
}
Քայլ 4: Դիմումներ
ADXL345- ը փոքր, բարակ, ծայրահեղ ցածր հզորության, 3 առանցքի արագացուցիչ է, որը կարող է օգտագործվել հեռախոսների, բժշկական սարքավորումների և այլնի մեջ: Դրա կիրառումը ներառում է նաև խաղային և մատնանշող սարքեր, արդյունաբերական գործիքներ, անհատական նավիգացիոն սարքեր և կոշտ սկավառակի (HDD) պաշտպանություն:
Խորհուրդ ենք տալիս:
Raspberry Pi - TMD26721 ինֆրակարմիր թվային հարևանության դետեկտոր Java ձեռնարկ. 4 քայլ
Raspberry Pi-TMD26721 Ինֆրակարմիր թվային հարևանության դետեկտոր Java ձեռնարկ: ճշգրտություն. Պրո
Raspberry Pi - TSL45315 Ambient Light Sensor Java ձեռնարկ. 4 քայլ
Raspberry Pi - TSL45315 Ambient Light Sensor Java ձեռնարկ. TSL45315- ը շրջապատող լուսավորության թվային տվիչ է: Այն մոտեցնում է մարդու աչքի արձագանքը լուսավորության տարբեր պայմաններում: Սարքերն ունեն երեք ընտրելի ինտեգրման ժամանակ և ապահովում են ուղիղ 16-բիթանոց լյուքս ելք I2C ավտոբուսի միջերեսի միջոցով: Սարքը համատեղ
Raspberry Pi MCP9803 ջերմաստիճանի տվիչ Java ձեռնարկ. 4 քայլ
Raspberry Pi MCP9803 ջերմաստիճանի տվիչ Java ձեռնարկ. MCP9803- ը 2 լարային բարձր ճշգրտության ջերմաստիճանի տվիչ է: Նրանք մարմնավորված են օգտագործողների կողմից ծրագրավորվող գրանցամատյաններով, որոնք հեշտացնում են ջերմաստիճանի զգայուն ծրագրերը: Այս տվիչը հարմար է բարձրակարգ բազմաշերտ ջերմաստիճանի մոնիտորինգի համակարգի համար: Այստեղ
Raspberry Pi MCP9805 ջերմաստիճանի տվիչ Java ձեռնարկ. 4 քայլ
Raspberry Pi MCP9805 ջերմաստիճանի տվիչ Java ձեռնարկ. MCP9805- ը թվային ջերմաստիճանի տվիչ է հիշողության մոդուլի համար: Այն ներառված է օգտագործողների կողմից ծրագրավորվող գրանցամատյանների հետ, որոնք ճկունություն են ապահովում ջերմաստիճանի զգայուն ծրագրերի համար: Այս սենսորը նախագծված է բջջային հարթակի հիշողության մոդուլում ներառված լինելու համար
Raspberry Pi - TMP100 ջերմաստիճանի տվիչ Java ձեռնարկ. 4 քայլ
Raspberry Pi-TMP100 ջերմաստիճանի տվիչ Java ձեռնարկ. TMP100 բարձր ճշգրտության, ցածր էներգիայի, թվային ջերմաստիճանի տվիչ I2C MINI մոդուլ: TMP100- ը իդեալական է երկարացված ջերմաստիճանի չափման համար: Այս սարքն առաջարկում է ± 1 ° C ճշգրտություն ՝ առանց չափաբերման կամ արտաքին բաղադրիչի ազդանշանի կոնդիցիոներ պահանջելու: Նա