Innehållsförteckning:
Video: Arduino AMS5812_0050-D-B Tryck- och temperatursensor Handledning: 4 steg
2025 Författare: John Day | [email protected]. Senast ändrad: 2025-01-13 06:58
AMS5812 förstärkt trycksensor med analoga och digitala utgångar är en högprecisionssensor med en analog spänningsutgång och digitalt I2C -gränssnitt. Den kombinerar ett piezoresistivt avkänningselement med ett signalkonditioneringselement för dess drift. Här är dess demonstration med arduino nano.
Steg 1: Vad du behöver.. !
1. Arduino Nano
2. AMS5812_0050-D-B
3. I²C -kabel
4. I2C -skärm för Arduino Nano
Steg 2: Anslutningar:
Ta en I2C -sköld för Arduino Nano och skjut den försiktigt över stiften på Nano.
Anslut sedan den ena änden av I2C-kabeln till AMS5812_0050-D-B-sensorn och den andra änden till I2C-skärmen.
Anslutningar visas på bilden ovan.
Steg 3: Kod:
Arduino-koden för AMS5812_0050-D-B kan laddas ner från vår GitHub repository-Dcube Store.
Här är länken till samma:
github.com/DcubeTechVentures/AMS5812-0050-D-B
Vi inkluderar bibliotek Wire.h för att underlätta I2c -kommunikationen mellan sensorn och Arduino -kortet.
Du kan också kopiera koden härifrån, den ges enligt följande:
// Distribueras med en fri vilja licens.
// Använd den hur du vill, vinst eller gratis, förutsatt att den passar i licensen för dess associerade verk.
// AMS5812
// Denna kod är utformad för att fungera med AMS5812_I2CS_0050-D-B I2C Mini-modulen som finns i Dcube Store.
#omfatta
// AMS5812 I2C -adressen är 0x78 (120)
#define Addr 0x78
void setup ()
{
// Initiera I2C -kommunikation som MASTER
Wire.begin ();
// Initiera seriell kommunikation, ange överföringshastighet = 9600
Serial.begin (9600);
fördröjning (300);
}
void loop ()
{
osignerade int -data [4];
fördröjning (500);
// Begär 4 byte med data
Wire.requestFrom (Addr, 4);
// Läs 4 byte med data
// tryck msb, tryck lsb, temp msb, temp lsb
om (Wire.available () == 4)
{
data [0] = Wire.read ();
data [1] = Wire.read ();
data [2] = Wire.read ();
data [3] = Wire.read ();
}
// Konvertera data
flyttryck = ((data [0] & 0xFF) * 256 + (data [1] & 0xFF));
float temp = ((data [2] & 0xFF) * 256 + (data [3] & 0xFF));
tryck = ((tryck - 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;
// Utdata till seriell bildskärm
Serial.print ("Tryck:");
Seriellt tryck (tryck);
Serial.println ("PSI");
Serial.print ("Temperatur i Celsius:");
Serial.print (cTemp);
Serial.println ("C");
Serial.print ("Temperatur i Fahrenheit:");
Serial.print (fTemp);
Serial.println ("F");
fördröjning (500);
}
Steg 4: Ansökningar:
AMS5812 är en förstärkt trycksensor och den kan användas i system där statisk och dynamisk tryckmätning och barometrisk tryckmätning ska utföras. Det spelar en avgörande roll i vakuumövervakning, gasflödesövervakning, vätskenivåmätning samt medicinsk instrumentering.