Բովանդակություն:
![Arduino Nano - MPL3115A2 Precision Altimeter Sensor Tutorial: 4 Step Arduino Nano - MPL3115A2 Precision Altimeter Sensor Tutorial: 4 Step](https://i.howwhatproduce.com/images/002/image-3723-13-j.webp)
Video: Arduino Nano - MPL3115A2 Precision Altimeter Sensor Tutorial: 4 Step
![Video: Arduino Nano - MPL3115A2 Precision Altimeter Sensor Tutorial: 4 Step Video: Arduino Nano - MPL3115A2 Precision Altimeter Sensor Tutorial: 4 Step](https://i.ytimg.com/vi/1SQNlzMTexM/hqdefault.jpg)
2024 Հեղինակ: John Day | [email protected]. Վերջին փոփոխված: 2024-01-30 09:45
![Image Image](https://i.howwhatproduce.com/images/002/image-3723-15-j.webp)
![](https://i.ytimg.com/vi/1SQNlzMTexM/hqdefault.jpg)
MPL3115A2- ն օգտագործում է MEMS ճնշման տվիչ ՝ I2C ինտերֆեյսով ՝ ճշգրիտ ճնշման/բարձրության և ջերմաստիճանի տվյալներ ապահովելու համար: Սենսորային ելքերը թվայնացվում են բարձր լուծման 24-բիթանոց ADC- ով: Ներքին մշակումը հեռացնում է փոխհատուցման առաջադրանքները ընդունող MCU համակարգից: Այն ունակ է հայտնաբերել միայն 0.05 կՊա -ի փոփոխություն, ինչը հավասար է 0.3 մ բարձրության փոփոխության: Ահա նրա ցուցադրումը Արդուինո Նանոյի հետ:
Քայլ 1: Այն, ինչ ձեզ հարկավոր է..
![Այն, ինչ ձեզ պետք է.. !! Այն, ինչ ձեզ պետք է.. !!](https://i.howwhatproduce.com/images/002/image-3723-16-j.webp)
1. Արդուինո Նանո
2. MPL3115A2
3. I²C մալուխ
4. I²C վահան Arduino Nano- ի համար
Քայլ 2: Միացումներ
![Միացումներ Միացումներ](https://i.howwhatproduce.com/images/002/image-3723-17-j.webp)
![Միացումներ Միացումներ](https://i.howwhatproduce.com/images/002/image-3723-18-j.webp)
![Միացումներ Միացումներ](https://i.howwhatproduce.com/images/002/image-3723-19-j.webp)
![Միացումներ Միացումներ](https://i.howwhatproduce.com/images/002/image-3723-20-j.webp)
Վերցրեք I2C վահան Arduino Nano- ի համար և նրբորեն մղեք այն Նանոյի կապանքների վրա:
Այնուհետև I2C մալուխի մի ծայրը միացրեք MPL3115A2 սենսորին, իսկ մյուս ծայրը ՝ I2C վահանին:
Կապերը ցուցադրվում են վերևի նկարում:
Քայլ 3: Կոդ
![Կոդ Կոդ](https://i.howwhatproduce.com/images/002/image-3723-21-j.webp)
MPL3115A2- ի arduino կոդը կարելի է ներբեռնել մեր github պահոցից-DCUBE Store:
Ահա նույնի հղումը.
github.com/DcubeTechVentures/MPL3115A2/blob/master/Arduino/MPL3115A2.ino
Մենք ներառում ենք Wire.h գրադարանը ՝ սենսորի I2c հաղորդակցումը Arduino տախտակի հետ հեշտացնելու համար:
Այստեղից կարող եք նաև պատճենել կոդը, այն տրվում է հետևյալ կերպ.
// Տարածված է ազատ կամքի լիցենզիայով:
// Օգտագործեք այն ինչպես ցանկանում եք, շահույթ կամ անվճար, պայմանով, որ այն տեղավորվում է դրա հետ կապված աշխատանքների լիցենզիաներում:
// MPL3115A2
// Այս կոդը նախատեսված է MPL3115A2_I2CS I2C մինի մոդուլի հետ աշխատելու համար
#ներառում
// MPL3115A2 I2C հասցեն ՝ 0x60 (96)
#սահմանեք Addr 0x60
դատարկ կարգավորում ()
{
// Նախնականացնել I2C հաղորդակցությունը
Wire.begin ();
// Սկզբնականացնել սերիական հաղորդակցությունը, սահմանել բաուդ արագություն = 9600
Serial.begin (9600);
// Սկսել I2C փոխանցումը
Wire.beginTransmission (Addr);
// Ընտրեք հսկիչ գրանցամատյան
Wire.write (0x26);
// Ակտիվ ռեժիմ, OSR = 128, բարձրաչափի ռեժիմ
Wire.write (0xB9);
// Դադարեցնել I2C փոխանցումը
Wire.endTransmission ();
// Սկսել I2C փոխանցումը
Wire.beginTransmission (Addr);
// Ընտրեք տվյալների կազմաձևման գրանցամատյան
Wire.write (0x13);
// Տվյալների պատրաստ իրադարձությունը միացված է բարձրության, ճնշման, ջերմաստիճանի համար
Wire.write (0x07);
// Դադարեցնել I2C փոխանցումը
Wire.endTransmission ();
ուշացում (300);
}
դատարկ շրջան ()
{
անստորագիր int տվյալներ [6];
// Սկսել I2C փոխանցումը
Wire.beginTransmission (Addr);
// Ընտրեք հսկիչ գրանցամատյան
Wire.write (0x26);
// Ակտիվ ռեժիմ, OSR = 128, բարձրաչափի ռեժիմ
Wire.write (0xB9);
// Դադարեցնել I2C փոխանցումը
Wire.endTransmission ();
ուշացում (1000);
// Սկսել I2C փոխանցումը
Wire.beginTransmission (Addr);
// Ընտրեք տվյալների գրանցամատյան
Wire.write (0x00);
// Դադարեցնել I2C փոխանցումը
Wire.endTransmission ();
// Պահանջել 6 բայթ տվյալներ
Հաղորդալար. Խնդրում ենք (Addr, 6);
// Կարդացեք 6 բայթ տվյալներ 0x00 հասցեից (00)
// կարգավիճակ, tHeight msb1, tHeight msb, tHeight lsb, temp msb, temp lsb
եթե (Wire.available () == 6)
{
տվյալներ [0] = Wire.read ();
տվյալներ [1] = Wire.read ();
տվյալներ [2] = Wire.read ();
տվյալներ [3] = Wire.read ();
տվյալներ [4] = Wire.read ();
տվյալներ [5] = Wire.read ();
}
// Տեղափոխեք տվյալները 20 բիթ
int tHeight = (((երկար) (տվյալներ [1] * (երկար) 65536) + (տվյալներ [2] * 256) + (տվյալներ [3] & 0xF0)) / 16);
int temp = ((տվյալները [4] * 256) + (տվյալները [5] & 0xF0)) / 16;
բոց բարձրություն = t Բարձրություն / 16.0;
float cTemp = (temp / 16.0);
float fTemp = cTemp * 1.8 + 32;
// Սկսել I2C փոխանցումը
Wire.beginTransmission (Addr);
// Ընտրեք հսկիչ գրանցամատյան
Wire.write (0x26);
// Ակտիվ ռեժիմ, OSR = 128, բարոմետր ռեժիմ
Wire.write (0x39);
// Դադարեցնել I2C փոխանցումը
Wire.endTransmission ();
ուշացում (1000);
// Սկսել I2C փոխանցումը
Wire.beginTransmission (Addr);
// Ընտրեք տվյալների գրանցամատյան
Wire.write (0x00);
// Դադարեցնել I2C փոխանցումը
Wire.endTransmission ();
// Պահանջել 4 բայթ տվյալներ
Մետաղալար. Խնդրում ենք (Addr, 4);
// Կարդացեք 4 բայթ տվյալներ
// կարգավիճակ, pres msb1, pres msb, pres lsb
եթե (Wire.available () == 4)
{
տվյալներ [0] = Wire.read ();
տվյալներ [1] = Wire.read ();
տվյալներ [2] = Wire.read ();
տվյալներ [3] = Wire.read ();
}
// Տվյալները փոխակերպեք 20 բիթ
երկար pres = (((երկար) տվյալներ [1] * (երկար) 65536) + (տվյալներ [2] * 256) + (տվյալներ [3] և 0xF0)) / 16;
լողացող ճնշում = (pres / 4.0) / 1000.0;
// Ելքային տվյալները սերիական մոնիտորին
Serial.print ("Բարձրություն:");
Serial.print (բարձրություն);
Serial.println («մ»);
Serial.print («Pressնշում.»);
Serial.print (ճնշում);
Serial.println ("kPa");
Serial.print ("Cերմաստիճանը Celsius:");
Serial.print (cTemp);
Serial.println ("C");
Serial.print («Fերմաստիճանը Ֆարենհայտում.»);
Serial.print (fTemp);
Serial.println ("F");
ուշացում (500);
}
Քայլ 4: Դիմումներ
MPL3115A2- ի տարբեր ծրագրեր ներառում են բարձր ճշգրտության բարձրաչափություն, սմարթֆոններ/պլանշետներ, անհատական էլեկտրոնիկայի բարձրաչափություն և այլն: Այն կարող է ներառվել նաև GPS Dead Reckoning, GPS Enhancement for Emergency Services, Map Assist, Navigation, ինչպես նաև Եղանակային կայանի սարքավորումներում:
Խորհուրդ ենք տալիս:
Arduino Nano - TSL45315 Ambient Light Sensor Tutorial: 4 քայլ
![Arduino Nano - TSL45315 Ambient Light Sensor Tutorial: 4 քայլ Arduino Nano - TSL45315 Ambient Light Sensor Tutorial: 4 քայլ](https://i.howwhatproduce.com/images/001/image-610-10-j.webp)
Arduino Nano - TSL45315 Ambient Light Sensor Tutorial: TSL45315- ը շրջապատող լուսավորության թվային տվիչ է: Այն մոտեցնում է մարդու աչքի արձագանքը լուսավորության տարբեր պայմաններում: Սարքերն ունեն երեք ընտրելի ինտեգրման ժամանակ և ապահովում են ուղիղ 16-բիթանոց լյուքս ելք I2C ավտոբուսի միջերեսի միջոցով: Սարքը համատեղ
Raspberry Pi - TMP007 Infrared Thermopile Sensor Python Tutorial: 4 Step
![Raspberry Pi - TMP007 Infrared Thermopile Sensor Python Tutorial: 4 Step Raspberry Pi - TMP007 Infrared Thermopile Sensor Python Tutorial: 4 Step](https://i.howwhatproduce.com/images/009/image-26532-j.webp)
Raspberry Pi - TMP007 Ինֆրակարմիր ջերմաչափի սենսոր Python ձեռնարկ. TMP007 ինֆրակարմիր ջերմապաշտպան ցուցիչ է, որը չափում է օբյեկտի ջերմաստիճանը ՝ առանց դրա հետ շփման: Սենսորային դաշտում օբյեկտի կողմից արտանետվող ինֆրակարմիր էներգիան ներծծվում է սենսորի մեջ ինտեգրված ջերմափողով: Թերմոպիլը
Arduino- ի ավտոմատ ստվերային էկրանի ծրագրի համար Step Step Motor և Driver- ի ընտրություն. 12 քայլ (նկարներով)
![Arduino- ի ավտոմատ ստվերային էկրանի ծրագրի համար Step Step Motor և Driver- ի ընտրություն. 12 քայլ (նկարներով) Arduino- ի ավտոմատ ստվերային էկրանի ծրագրի համար Step Step Motor և Driver- ի ընտրություն. 12 քայլ (նկարներով)](https://i.howwhatproduce.com/images/001/image-914-40-j.webp)
Arduino- ի ավտոմատ ստվերային էկրանի նախագծի համար Step Motor և Driver- ի ընտրություն. Այս հրահանգում ես կանցնեմ այն քայլերի միջոցով, որոնք կատարել եմ Step Motor և Driver ընտրելու համար `Automated Shade Screen նախագծի նախատիպի համար: Ստվերային էկրանները հայտնի և էժան Coolaroo ձեռքերով սեղմված մոդելներն են, և ես ուզում էի փոխարինել
Raspberry Pi A1332 Precision Hall - Effect Angle Sensor Java ձեռնարկ. 4 քայլ
![Raspberry Pi A1332 Precision Hall - Effect Angle Sensor Java ձեռնարկ. 4 քայլ Raspberry Pi A1332 Precision Hall - Effect Angle Sensor Java ձեռնարկ. 4 քայլ](https://i.howwhatproduce.com/images/002/image-3072-60-j.webp)
Raspberry Pi A1332 Precision Hall - Effect Angle Sensor Java Tutorial: A1332- ը 360 ° առանց կոնտակտ բարձր լուծման ծրագրավորվող մագնիսական անկյան դիրքի սենսոր է: Այն նախատեսված է թվային համակարգերի համար `օգտագործելով I2C ինտերֆեյս: Այն կառուցված է Circular Vertical Hall (CVH) տեխնոլոգիայի և ծրագրավորվող միկրոպրոցեսորային ազդանշանի վրա
Raspberry Pi MMA8452Q 3-Axis 12-bit/8-bit Digital Accelerometer Java Tutorial: 4 Step
![Raspberry Pi MMA8452Q 3-Axis 12-bit/8-bit Digital Accelerometer Java Tutorial: 4 Step Raspberry Pi MMA8452Q 3-Axis 12-bit/8-bit Digital Accelerometer Java Tutorial: 4 Step](https://i.howwhatproduce.com/images/002/image-3153-20-j.webp)
Raspberry Pi MMA8452Q 3 առանցքի 12-բիթ/8-բիթ թվային արագացուցիչ Javaավա ձեռնարկ. MMA8452Q- ը խելացի, ցածր էներգիայի, երեք առանցքի, տարողունակ, միկրոմեքենայական արագացուցիչ է ՝ 12 բիթ թույլատրությամբ: Օգտվողի կողմից ծրագրավորվող ճկուն տարբերակները տրամադրվում են արագացուցիչի մեջ ներկառուցված գործառույթների օգնությամբ, որոնք կարող են կարգավորվել երկու ընդհատման համար