Sadržaj:
![Arduino Nano - vodič za senzor preciznog visinomjera MPL3115A2: 4 koraka Arduino Nano - vodič za senzor preciznog visinomjera MPL3115A2: 4 koraka](https://i.howwhatproduce.com/images/002/image-3723-13-j.webp)
Video: Arduino Nano - vodič za senzor preciznog visinomjera MPL3115A2: 4 koraka
![Video: Arduino Nano - vodič za senzor preciznog visinomjera MPL3115A2: 4 koraka Video: Arduino Nano - vodič za senzor preciznog visinomjera MPL3115A2: 4 koraka](https://i.ytimg.com/vi/WksZg8aLRSU/hqdefault.jpg)
2024 Autor: John Day | [email protected]. Zadnja izmjena: 2024-01-30 08:04
![Image Image](https://i.howwhatproduce.com/images/002/image-3723-15-j.webp)
![](https://i.ytimg.com/vi/1SQNlzMTexM/hqdefault.jpg)
MPL3115A2 koristi MEMS senzor pritiska sa I2C interfejsom za pružanje tačnih podataka o pritisku/nadmorskoj visini i temperaturi. Izlazi senzora digitalizirani su 24-bitnim ADC-om visoke rezolucije. Interna obrada uklanja zadatke kompenzacije iz host MCU sistema. Sposoban je otkriti promjenu od samo 0,05 kPa, što je jednako promjeni visine 0,3 m. Evo njegove demonstracije s Arduino Nano.
Korak 1: Šta vam treba..
![Sta ti treba..!! Sta ti treba..!!](https://i.howwhatproduce.com/images/002/image-3723-16-j.webp)
1. Arduino Nano
2. MPL3115A2
3. I²C kabel
4. I²C štit za Arduino Nano
Korak 2: Veze:
![Veze Veze](https://i.howwhatproduce.com/images/002/image-3723-17-j.webp)
![Veze Veze](https://i.howwhatproduce.com/images/002/image-3723-18-j.webp)
![Veze Veze](https://i.howwhatproduce.com/images/002/image-3723-19-j.webp)
![Veze Veze](https://i.howwhatproduce.com/images/002/image-3723-20-j.webp)
Uzmite I2C štit za Arduino Nano i lagano ga gurnite preko igala Nano -a.
Zatim spojite jedan kraj I2C kabela na senzor MPL3115A2, a drugi kraj na I2C štit.
Veze su prikazane na gornjoj slici.
Korak 3: Kod:
![Šifra Šifra](https://i.howwhatproduce.com/images/002/image-3723-21-j.webp)
Arduino kôd za MPL3115A2 može se preuzeti sa našeg github spremišta-DCUBE Store.
Evo linka za isto:
github.com/DcubeTechVentures/MPL3115A2/blob/master/Arduino/MPL3115A2.ino
Uključujemo knjižnicu Wire.h kako bismo olakšali I2c komunikaciju senzora s Arduino pločom.
Kôd možete i kopirati odavde, dat je na sljedeći način:
// Distribuirano s licencom za slobodnu volju.
// Koristite ga kako god želite, profitno ili besplatno, pod uvjetom da se uklapa u licence povezanih djela.
// MPL3115A2
// Ovaj kod je dizajniran za rad s MPL3115A2_I2CS I2C mini modulom
#include
// MPL3115A2 I2C adresa je 0x60 (96)
#define Addr 0x60
void setup ()
{
// Inicijalizacija I2C komunikacije
Wire.begin ();
// Pokrećemo serijsku komunikaciju, postavljena brzina prijenosa = 9600
Serial.begin (9600);
// Pokretanje I2C prijenosa
Wire.beginTransmission (Addr);
// Odabir kontrolnog registra
Wire.write (0x26);
// Aktivni način rada, OSR = 128, način rada visinomera
Wire.write (0xB9);
// Zaustavljanje I2C prijenosa
Wire.endTransmission ();
// Pokretanje I2C prijenosa
Wire.beginTransmission (Addr);
// Odabir registra konfiguracije podataka
Wire.write (0x13);
// Omogućen događaj spremnosti podataka za nadmorsku visinu, pritisak, temperaturu
Wire.write (0x07);
// Zaustavljanje I2C prijenosa
Wire.endTransmission ();
kašnjenje (300);
}
void loop ()
{
nepotpisani int podaci [6];
// Pokretanje I2C prijenosa
Wire.beginTransmission (Addr);
// Odabir kontrolnog registra
Wire.write (0x26);
// Aktivni način rada, OSR = 128, način rada visinomera
Wire.write (0xB9);
// Zaustavljanje I2C prijenosa
Wire.endTransmission ();
kašnjenje (1000);
// Pokretanje I2C prijenosa
Wire.beginTransmission (Addr);
// Odabir registra podataka
Wire.write (0x00);
// Zaustavljanje I2C prijenosa
Wire.endTransmission ();
// Zatražite 6 bajta podataka
Wire.requestFrom (Addr, 6);
// Očitavanje 6 bajtova podataka s adrese 0x00 (00)
// status, tHeight msb1, tHeight msb, tHeight lsb, temp msb, temp lsb
if (Wire.available () == 6)
{
podaci [0] = Wire.read ();
podaci [1] = Wire.read ();
podaci [2] = Wire.read ();
podaci [3] = Wire.read ();
podaci [4] = Wire.read ();
podaci [5] = Wire.read ();
}
// Pretvorimo podatke u 20-bitne
int tHeight = (((dugo) (podaci [1] * (dugo) 65536) + (podaci [2] * 256) + (podaci [3] & 0xF0)) / 16);
int temp = ((podaci [4] * 256) + (podaci [5] & 0xF0)) / 16;
plovna nadmorska visina = tHeight / 16,0;
float cTemp = (temp / 16.0);
float fTemp = cTemp * 1,8 + 32;
// Pokretanje I2C prijenosa
Wire.beginTransmission (Addr);
// Odabir kontrolnog registra
Wire.write (0x26);
// Aktivni način rada, OSR = 128, način rada barometra
Wire.write (0x39);
// Zaustavljanje I2C prijenosa
Wire.endTransmission ();
kašnjenje (1000);
// Pokretanje I2C prijenosa
Wire.beginTransmission (Addr);
// Odabir registra podataka
Wire.write (0x00);
// Zaustavljanje I2C prijenosa
Wire.endTransmission ();
// Zatražite 4 bajta podataka
Wire.requestFrom (Addr, 4);
// Očitavanje 4 bajta podataka
// status, pres msb1, pres msb, pres lsb
if (Wire.available () == 4)
{
podaci [0] = Wire.read ();
podaci [1] = Wire.read ();
podaci [2] = Wire.read ();
podaci [3] = Wire.read ();
}
// Pretvorimo podatke u 20-bitne
long pres = (((dugački) podaci [1] * (dugi) 65536) + (podaci [2] * 256) + (podaci [3] & 0xF0)) / 16;
pritisak plovka = (pres / 4.0) / 1000.0;
// Izlaz podataka na serijski monitor
Serial.print ("Visina:");
Serial.print (nadmorska visina);
Serial.println ("m");
Serial.print ("Pritisak:");
Serijski.tisak (pritisak);
Serial.println ("kPa");
Serial.print ("Temperatura u Celzijusima:");
Serial.print (cTemp);
Serial.println ("C");
Serial.print ("Temperatura u Fahrenheitu:");
Serial.print (fTemp);
Serial.println ("F");
kašnjenje (500);
}
Korak 4: Aplikacije:
Različite primjene MPL3115A2 uključuju altimetriju visoke preciznosti, pametne telefone/tablete, altimetriju lične elektronike itd. Također se može uključiti u GPS mrtvo računanje, GPS poboljšanje za hitne službe, pomoć pri mapiranju, navigaciju kao i opremu meteorološke stanice.
Preporučuje se:
DIY senzor daha s Arduinom (provodljivi pleteni senzor istezanja): 7 koraka (sa slikama)
![DIY senzor daha s Arduinom (provodljivi pleteni senzor istezanja): 7 koraka (sa slikama) DIY senzor daha s Arduinom (provodljivi pleteni senzor istezanja): 7 koraka (sa slikama)](https://i.howwhatproduce.com/images/002/image-3942-6-j.webp)
DIY senzor daha s Arduinom (vodljivi pleteni senzor istezanja): Ovaj DIY senzor poprimit će oblik provodljivog pletenog senzora za istezanje. Omotat će vas oko prsa/trbuha, a kada se grudi/želudac prošire i stegnu, senzor će se povećati, a time i ulazni podaci koji se unose u Arduino. Pa
Raspberry Pi - MPL3115A2 Precizni senzor visinomjera Senzor za Python: 4 koraka
![Raspberry Pi - MPL3115A2 Precizni senzor visinomjera Senzor za Python: 4 koraka Raspberry Pi - MPL3115A2 Precizni senzor visinomjera Senzor za Python: 4 koraka](https://i.howwhatproduce.com/images/004/image-9994-j.webp)
Raspberry Pi - MPL3115A2 Precizni senzor visinomera sa Python vodičem: MPL3115A2 koristi MEMS senzor pritiska sa I2C interfejsom za pružanje tačnih podataka o pritisku/nadmorskoj visini i temperaturi. Izlazi senzora digitalizirani su 24-bitnim ADC-om visoke rezolucije. Interna obrada uklanja zadatke kompenzacije iz
Arduino solarni senzor temperature i vlažnosti kao 433mhz Oregonski senzor: 6 koraka
![Arduino solarni senzor temperature i vlažnosti kao 433mhz Oregonski senzor: 6 koraka Arduino solarni senzor temperature i vlažnosti kao 433mhz Oregonski senzor: 6 koraka](https://i.howwhatproduce.com/images/009/image-25178-j.webp)
Arduino senzor temperature i vlažnosti na solarni pogon kao 433mhz Oregonski senzor: Ovo je konstrukcija senzora temperature i vlažnosti na solarni pogon. Senzor emulira 433mhz Oregonski senzor i vidljiv je na Telldus Net gatewayu. Šta vam je potrebno: 1x " 10-LED Senzor pokreta solarne energije " sa Ebaya. Provjerite da li piše baterija od 3,7 V
Eksperiment preciznog ispravljanja: 11 koraka
![Eksperiment preciznog ispravljanja: 11 koraka Eksperiment preciznog ispravljanja: 11 koraka](https://i.howwhatproduce.com/images/003/image-8124-6-j.webp)
Eksperiment preciznog ispravljanja: Nedavno sam napravio eksperiment na krugu preciznog ispravljanja i došao sam do nekih grubih zaključaka. S obzirom na to da je krug preciznog ispravljača uobičajen krug, rezultati ovog eksperimenta mogu pružiti neke referentne informacije
Senzor dodira i senzor zvuka Upravljanje AC/DC svjetlima: 5 koraka
![Senzor dodira i senzor zvuka Upravljanje AC/DC svjetlima: 5 koraka Senzor dodira i senzor zvuka Upravljanje AC/DC svjetlima: 5 koraka](https://i.howwhatproduce.com/images/003/image-6330-39-j.webp)
Senzor dodira i senzor zvuka Kontrola AC/DC svjetla: Ovo je moj prvi projekt i radi na osnovu dva osnovna senzora, jedan je Senzor dodira, a drugi Senzor zvuka, kada pritisnete dodirnu ploču na senzoru za dodir, uključit će se svjetlo naizmjenične struje UKLJUČENO, ako ga pustite, svjetlo će biti isključeno, a isto