Orodha ya maudhui:

Upimaji wa Kuharakisha Kutumia H3LIS331DL na Arduino Nano: Hatua 4
Upimaji wa Kuharakisha Kutumia H3LIS331DL na Arduino Nano: Hatua 4

Video: Upimaji wa Kuharakisha Kutumia H3LIS331DL na Arduino Nano: Hatua 4

Video: Upimaji wa Kuharakisha Kutumia H3LIS331DL na Arduino Nano: Hatua 4
Video: 🟡 POCO X5 PRO - САМЫЙ ДЕТАЛЬНЫЙ ОБЗОР и ТЕСТЫ 2024, Julai
Anonim
Image
Image

H3LIS331DL, ni kiwango cha chini cha nguvu ya kiwango cha juu cha 3-axis linear accelerometer ya familia ya "nano", na kiunga cha dijitali cha I²C. H3LIS331DL ina mizani kamili inayoweza kuchagua ya ± 100g / ± 200g / ± 400g na inauwezo wa kupima kasi na viwango vya data ya pato kutoka 0.5 Hz hadi 1 kHz. H3LIS331DL imehakikishiwa kufanya kazi juu ya kiwango cha joto kilichopanuliwa kutoka -40 ° C hadi +85 ° C.

Katika mafunzo haya tutaonyesha kuingiliana kwa H3LIS331DL na Arduino Nano.

Hatua ya 1: Vifaa vinahitajika:

Vifaa vinahitajika
Vifaa vinahitajika
Vifaa vinahitajika
Vifaa vinahitajika
Vifaa vinahitajika
Vifaa vinahitajika

Vifaa ambavyo tunahitaji kutimiza lengo letu ni pamoja na vifaa vifuatavyo vya vifaa:

1. H3LIS331DL

2. Arduino Nano

3. Cable ya I2C

4. I2C Shield kwa Arduino Nano

Hatua ya 2: Kuunganishwa kwa vifaa:

Kuunganishwa kwa Vifaa
Kuunganishwa kwa Vifaa
Kuunganishwa kwa Vifaa
Kuunganishwa kwa Vifaa

Sehemu ya uunganishaji wa vifaa kimsingi inaelezea uunganisho wa wiring unaohitajika kati ya sensa na nano ya arduino. Kuhakikisha unganisho sahihi ni hitaji la msingi wakati unafanya kazi kwenye mfumo wowote wa pato unalotaka. Kwa hivyo, viunganisho vinavyohitajika ni kama ifuatavyo.

H3LIS331DL itafanya kazi juu ya I2C. Hapa kuna mfano wa mchoro wa wiring, unaonyesha jinsi ya kuweka waya kila kiunganishi cha sensa.

Nje ya sanduku, bodi imesanidiwa kwa kiolesura cha I2C, kwa hivyo tunapendekeza utumie uunganisho huu ikiwa wewe ni agnostic. Unachohitaji ni waya nne!

Viunganisho vinne tu vinahitajika Vcc, Gnd, SCL na SDA pini na hizi zimeunganishwa kwa msaada wa kebo ya I2C.

Uunganisho huu umeonyeshwa kwenye picha hapo juu.

Hatua ya 3: Nambari ya Arduino ya Upimaji wa Kuharakisha:

Nambari ya Arduino ya Upimaji wa Kuharakisha
Nambari ya Arduino ya Upimaji wa Kuharakisha
Nambari ya Arduino ya Upimaji wa Kuharakisha
Nambari ya Arduino ya Upimaji wa Kuharakisha

Hebu tuanze na nambari ya arduino sasa.

Wakati wa kutumia moduli ya sensorer na arduino, tunajumuisha maktaba ya Wire.h. Maktaba ya "Waya" ina kazi ambazo zinawezesha mawasiliano ya i2c kati ya sensa na bodi ya arduino.

Nambari nzima ya arduino imepewa hapa chini kwa urahisi wa mtumiaji:

# pamoja

// Anwani ya H3LIS331DL I2C ni 0x18 (24)

#fafanua Addr 0x18

kuanzisha batili ()

{

// Anzisha mawasiliano ya I2C kama MASTER

Wire.begin ();

// Awali Mawasiliano ya Siri, weka kiwango cha baud = 9600

Kuanzia Serial (9600);

// Anza Uhamisho wa I2C

Uwasilishaji wa waya (Addr);

// Chagua rejista ya kudhibiti 1

Andika waya (0x20);

// Wezesha mhimili wa X, Y, Z, nguvu kwenye hali, kiwango cha pato la data 50Hz

Andika waya (0x27);

// Acha Uhamisho wa I2C

Uwasilishaji wa waya ();

// Anza Uhamisho wa I2C

Uwasilishaji wa waya (Addr);

// Chagua rejista ya kudhibiti 4

Andika waya (0x23);

// Weka kiwango kamili, +/- 100g, sasisho endelevu

Andika waya (0x00);

// Acha Uhamisho wa I2C

Uwasilishaji wa waya ();

kuchelewesha (300);

}

kitanzi batili ()

{

data isiyoingia [6];

kwa (int i = 0; i <6; i ++)

{

// Anza Uhamisho wa I2C

Uwasilishaji wa waya (Addr);

// Chagua rejista ya data

Andika waya ((40 + i));

// Acha Uhamisho wa I2C

Uwasilishaji wa waya ();

// Omba 1 byte ya data

Ombi la Wire. Toka (Addr, 1);

// Soma ka 6 za data

// xAccl lsb, xAccl msb, yAccl lsb, yAccl msb, zAccl lsb, zAccl msb

ikiwa (Waya haipatikani () == 1)

{

data = soma kwa waya ();

}

}

kuchelewesha (300);

// Badilisha data

int xAccl = ((data [1] * 256) + data [0]);

int yAccl = ((data [3] * 256) + data [2]);

int zAccl = ((data [5] * 256) + data [4]);

// data ya Pato kwa mfuatiliaji wa serial

Serial.print ("Kuongeza kasi katika X-Axis:");

Serial.println (xAccl);

Serial.print ("Kuongeza kasi katika Y-Axis:");

Serial.println (yAccl);

Serial.print ("Kuongeza kasi katika Z-Axis:");

Serial.println (zAccl);

kuchelewesha (300);

}

Unachohitaji kufanya ni kuchoma nambari katika arduino na kukagua usomaji wako kwenye bandari ya serial. Pato linaonyeshwa kwenye picha hapo juu.

Hatua ya 4: Maombi:

Maombi
Maombi

Accelerometers kama H3LIS331DL hupata matumizi yake kwenye michezo na kuonyesha ubadilishaji wa wasifu. Moduli hii ya sensorer pia imeajiriwa katika mfumo wa juu wa usimamizi wa nguvu kwa matumizi ya rununu. H3LIS331DL ni sensa ya kuongeza kasi ya dijiti triaxial ambayo imejumuishwa na mwendo wa akili wa-chip uliosababisha mdhibiti wa usumbufu.

Ilipendekeza: