Inhaltsverzeichnis:

Arduino AMS5812_0050-D-B Druck- und Temperatursensor Tutorial - Gunook
Arduino AMS5812_0050-D-B Druck- und Temperatursensor Tutorial - Gunook

Video: Arduino AMS5812_0050-D-B Druck- und Temperatursensor Tutorial - Gunook

Video: Arduino AMS5812_0050-D-B Druck- und Temperatursensor Tutorial - Gunook
Video: How to use DHT11 DHT22 with NodeMCU ESP8266 to read temperature over WiFi - IoT 2024, November
Anonim
Image
Image

Der verstärkte Drucksensor AMS5812 mit analogen und digitalen Ausgängen ist ein hochpräziser Sensor mit analogem Spannungsausgang und digitaler I2C-Schnittstelle. Es kombiniert ein piezoresistives Sensorelement mit einem Signalaufbereitungselement für seinen Betrieb. Hier ist seine Demonstration mit Arduino Nano.

Schritt 1: Was Sie brauchen.

Was du brauchst..!!
Was du brauchst..!!

1. Arduino Nano

2. AMS5812_0050-D-B

3. I²C-Kabel

4. I2C-Schild für Arduino Nano

Schritt 2: Anschlüsse:

Anschlüsse
Anschlüsse
Anschlüsse
Anschlüsse
Anschlüsse
Anschlüsse
Anschlüsse
Anschlüsse

Nehmen Sie ein I2C-Shield für Arduino Nano und schieben Sie es vorsichtig über die Pins von Nano.

Verbinden Sie dann das eine Ende des I2C-Kabels mit dem AMS5812_0050-D-B-Sensor und das andere Ende mit der I2C-Abschirmung.

Die Anschlüsse sind im Bild oben dargestellt.

Schritt 3: Code:

Code
Code

Der Arduino-Code für AMS5812_0050-D-B kann von unserem GitHub-Repository-Dcube Store heruntergeladen werden.

Hier der Link dazu:

github.com/DcubeTechVentures/AMS5812-0050-D-B

Wir binden die Bibliothek Wire.h ein, um die I2c-Kommunikation des Sensors mit dem Arduino-Board zu erleichtern.

Sie können den Code auch von hier kopieren, er wird wie folgt angegeben:

// Wird mit einer frei wählbaren Lizenz vertrieben.

// Verwenden Sie es, wie Sie wollen, gewinnbringend oder kostenlos, sofern es in die Lizenzen der zugehörigen Werke passt.

// AMS5812

// Dieser Code wurde entwickelt, um mit dem AMS5812_I2CS_0050-D-B I2C Mini-Modul zu arbeiten, das im Dcube Store erhältlich ist.

#enthalten

// AMS5812 I2C-Adresse ist 0x78(120)

#define Addr 0x78

Void-Setup ()

{

// I2C-Kommunikation als MASTER initialisieren

Wire.begin();

// Serielle Kommunikation initialisieren, Baudrate = 9600. einstellen

Serial.begin (9600);

Verzögerung (300);

}

Leere Schleife ()

{

unsignierte int-Daten[4];

Verzögerung (500);

// 4 Byte Daten anfordern

Wire.requestFrom(Addr, 4);

// 4 Byte Daten lesen

// Druck msb, Druck lsb, temp msb, temp lsb

if (Draht.verfügbar() == 4)

{

data[0] = Wire.read();

data[1] = Wire.read();

data[2] = Wire.read();

Daten[3] = Wire.read();

}

// Konvertieren Sie die Daten

Schwimmerdruck = ((data[0] & 0xFF) * 256 + (data[1] & 0xFF));

Float-Temp = ((Daten[2] & 0xFF) * 256 + (Daten[3] & 0xFF));

Druck = ((Druck - 3277,0) / ((26214.0) / 10,0)) - 5,0;

Schwimmer cTemp = ((temp - 3277,0) / ((26214.0) / 110,0)) - 25,0;

Schwimmer fTemp = (cTemp * 1,8) + 32;

// Daten an seriellen Monitor ausgeben

Serial.print ("Druck:");

Serial.print (Druck);

Serial.println ("PSI");

Serial.print ("Temperatur in Celsius: ");

Serial.print (cTemp);

Serial.println("C");

Serial.print ("Temperatur in Fahrenheit: ");

Serial.print (fTemp);

Serial.println("F");

Verzögerung (500);

}

Schritt 4: Anwendungen:

Der AMS5812 ist ein verstärkter Drucksensor und kann in Systemen eingesetzt werden, in denen statische und dynamische Druckmessungen sowie barometrische Druckmessungen durchgeführt werden sollen. Es spielt eine zentrale Rolle bei der Vakuumüberwachung, der Gasflussüberwachung, der Füllstandsmessung sowie der medizinischen Instrumentierung.

Empfohlen: