Video: Arduino AMS5812_0050-D-B Vodič za senzor tlaka i temperature: 4 koraka
2025 Autor: John Day | [email protected]. Zadnja promjena: 2025-01-13 06:57
AMS5812 Pojačani osjetnik tlaka s analognim i digitalnim izlazima je senzor visoke preciznosti s analognim izlaznim naponom i digitalnim I2C sučeljem. Za svoj rad kombinira piezootporni osjetni element s elementom za kondicioniranje signala. Evo njegove demonstracije s arduino nano.
Korak 1: Što vam treba..
1. Arduino Nano
2. AMS5812_0050-D-B
3. I²C kabel
4. I2C štit za Arduino Nano
Korak 2: Veze:
Uzmite I2C štit za Arduino Nano i lagano ga gurnite preko igle Nano.
Zatim spojite jedan kraj I2C kabela na senzor AMS5812_0050-D-B, a drugi kraj na I2C štit.
Priključci su prikazani na gornjoj slici.
Korak 3: Kôd:
Arduino kôd za AMS5812_0050-D-B može se preuzeti s našeg GitHub spremišta-Dcube Store.
Evo linka za isto:
github.com/DcubeTechVentures/AMS5812-0050-D-B
Uključujemo knjižnicu Wire.h kako bismo olakšali I2c komunikaciju senzora s Arduino pločom.
Ovdje možete i kopirati kôd, dat je na sljedeći način:
// Distribuirano s licencom slobodne volje.
// Koristite ga kako god želite, profitno ili besplatno, pod uvjetom da se uklapa u licence povezanih djela.
// AMS5812
// Ovaj kôd je dizajniran za rad s AMS5812_I2CS_0050-D-B I2C mini modulom dostupnim u trgovini Dcube.
#uključi
// AMS5812 I2C adresa je 0x78 (120)
#define Addr 0x78
void setup ()
{
// Inicializirajte I2C komunikaciju kao MASTER
Wire.begin ();
// Pokretanje serijske komunikacije, postavljena brzina prijenosa = 9600
Serial.begin (9600);
kašnjenje (300);
}
void loop ()
{
nepotpisani int podaci [4];
kašnjenje (500);
// Zatražite 4 bajta podataka
Wire.requestFrom (Addr, 4);
// Očitavanje 4 bajta podataka
// tlak msb, tlak lsb, temp msb, temp lsb
if (Wire.available () == 4)
{
podaci [0] = Wire.read ();
podaci [1] = Wire.read ();
podaci [2] = Wire.read ();
podaci [3] = Wire.read ();
}
// Pretvorimo podatke
tlak plovka = ((podaci [0] & 0xFF) * 256 + (podaci [1] & 0xFF));
float temp = ((podaci [2] & 0xFF) * 256 + (podaci [3] & 0xFF));
tlak = ((tlak - 3277,0) / ((26214,0) / 10,0)) - 5,0;
float cTemp = ((temp - 3277,0) / ((26214,0) / 110,0)) - 25,0;
float fTemp = (cTemp * 1.8) + 32;
// Izlaženje podataka na serijski monitor
Serial.print ("Tlak:");
Serijski.tisak (pritisak);
Serial.println ("PSI");
Serial.print ("Temperatura u Celzijusima:");
Serijski.ispis (cTemp);
Serial.println ("C");
Serial.print ("Temperatura u Fahrenheitu:");
Serijski.ispis (fTemp);
Serial.println ("F");
kašnjenje (500);
}
Korak 4: Aplikacije:
AMS5812 je pojačani senzor tlaka i može se koristiti u sustavima u kojima se trebaju provoditi statičko i dinamičko mjerenje tlaka i mjerenje barometrijskog tlaka. Ima ključnu ulogu u nadzoru vakuuma, praćenju protoka plina, mjerenju razine tekućine, kao i medicinskim instrumentima.