Video: Výukový program snímače tlaku a teploty Arduino AMS5812_0050-D-B: 4 kroky
2025 Autor: John Day | [email protected]. Naposledy změněno: 2025-01-13 06:57
Zesílený tlakový senzor AMS5812 s analogovými a digitálními výstupy je vysoce přesný snímač s analogovým výstupem napětí a digitálním rozhraním I2C. Pro svoji činnost kombinuje piezorezistivní snímací prvek s prvkem pro úpravu signálu. Zde je jeho ukázka s arduino nano.
Krok 1: Co potřebujete..
1. Arduino Nano
2. AMS5812_0050-D-B
3. I²C kabel
4. I2C štít pro Arduino Nano
Krok 2: Připojení:
Vezměte štít I2C pro Arduino Nano a jemně jej zatlačte přes kolíky Nano.
Poté připojte jeden konec kabelu I2C k senzoru AMS5812_0050-D-B a druhý konec ke stínění I2C.
Připojení jsou znázorněna na obrázku výše.
Krok 3: Kód:
Kód Arduino pro AMS5812_0050-D-B lze stáhnout z našeho úložiště GitHub-Dcube Store.
Zde je odkaz na totéž:
github.com/DcubeTechVentures/AMS5812-0050-D-B
Zahrnujeme knihovnu Wire.h pro usnadnění I2c komunikace senzoru s deskou Arduino.
Odtud můžete také zkopírovat kód, který je uveden následovně:
// Distribuováno s licencí svobodné vůle.
// Používejte jej jakýmkoli způsobem, ať už ziskem nebo zdarma, za předpokladu, že se vejde do licencí souvisejících děl.
// AMS5812
// Tento kód je navržen tak, aby fungoval s mini modulem AMS5812_I2CS_0050-D-B I2C dostupným v Dcube Store.
#zahrnout
// Adresa AMS5812 I2C je 0x78 (120)
#define Addr 0x78
neplatné nastavení ()
{
// Inicializujte komunikaci I2C jako MASTER
Wire.begin ();
// Inicializace sériové komunikace, nastavení přenosové rychlosti = 9600
Serial.begin (9600);
zpoždění (300);
}
prázdná smyčka ()
{
nepodepsaná int data [4];
zpoždění (500);
// Vyžádejte si 4 bajty dat
Wire.requestFrom (Addr, 4);
// Přečíst 4 bajty dat
// tlak msb, tlak lsb, temp msb, temp lsb
pokud (Wire.available () == 4)
{
data [0] = Wire.read ();
data [1] = Wire.read ();
data [2] = Wire.read ();
data [3] = Wire.read ();
}
// Převod dat
plovoucí tlak = ((data [0] & 0xFF) * 256 + (data [1] & 0xFF));
float temp = ((data [2] & 0xFF) * 256 + (data [3] & 0xFF));
tlak = ((tlak - 3277,0) / ((26214,0) / 10,0)) - 5,0;
float cTemp = ((teplota - 3277,0) / ((26214,0) / 110,0)) - 25,0;
float fTemp = (cTemp * 1,8) + 32;
// Výstup dat na sériový monitor
Serial.print ("Tlak:");
Sériový tisk (tlak);
Serial.println ("PSI");
Serial.print ("Teplota ve stupních Celsia:");
Serial.print (cTemp);
Serial.println ("C");
Serial.print ("Teplota ve stupních Fahrenheita:");
Serial.print (fTemp);
Serial.println ("F");
zpoždění (500);
}
Krok 4: Aplikace:
AMS5812 je zesílený snímač tlaku a lze jej použít v systémech, kde se má provádět statické a dynamické měření tlaku a měření barometrického tlaku. Hraje klíčovou roli při monitorování vakua, monitorování průtoku plynu, měření hladiny kapalin a lékařské instrumentaci.