Video: Arduino AMS5812_0050-D-B Tutorijal senzora pritiska i temperature: 4 koraka
2025 Autor: John Day | [email protected]. Zadnja izmjena: 2025-01-13 06:57
AMS5812 Senzor pojačanog pritiska sa analognim i digitalnim izlazima je senzor visoke preciznosti sa analognim izlaznim naponom i digitalnim I2C interfejsom. Za svoj rad kombinira piezootporni osjetljivi element s elementom za kondicioniranje signala. Evo njegove demonstracije s arduino nano.
Korak 1: Šta 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 igala Nano -a.
Zatim spojite jedan kraj I2C kabela na senzor AMS5812_0050-D-B, a drugi kraj na I2C štit.
Veze su prikazane na gornjoj slici.
Korak 3: Kod:
Arduino kôd za AMS5812_0050-D-B može se preuzeti sa 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.
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.
// AMS5812
// Ovaj kod je dizajniran za rad s AMS5812_I2CS_0050-D-B I2C mini modulom dostupnim u Dcube Storeu.
#include
// AMS5812 I2C adresa je 0x78 (120)
#define Addr 0x78
void setup ()
{
// Inicializirajte I2C komunikaciju kao MASTER
Wire.begin ();
// Pokrećemo serijsku komunikaciju, 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
// pritisak msb, pritisak 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
plovni pritisak = ((podaci [0] & 0xFF) * 256 + (podaci [1] & 0xFF));
float temp = ((podaci [2] & 0xFF) * 256 + (podaci [3] & 0xFF));
pritisak = ((pritisak - 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;
// Izlaz podataka na serijski monitor
Serial.print ("Pritisak:");
Serijski.tisak (pritisak);
Serial.println ("PSI");
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:
AMS5812 je pojačani senzor pritiska i može se koristiti u sistemima u kojima se vrši mjerenje statičkog i dinamičkog pritiska i mjerenje barometrijskog pritiska. On igra ključnu ulogu u nadzoru vakuuma, praćenju protoka gasa, mjerenju nivoa tečnosti, kao i medicinskim instrumentima.