Es handelt sich um einen universellen Atmosphärendrucksensor mit einem DIP-Gehäuse, der häufig zur Messung des Luftdrucks verwendet werden kann, z.B.:
Das Manometer ist praktisch eine Wheatstone-Brücke, die ein 0-25 mV-Signal aussendet. Dies kann nicht direkt für den Arduino ausgewertet werden, daher muss ein Operationsverstärker für die Signalumwandlung installiert werden.
512/5000
Sensordatenblatt: https://softroboticstoolkit.com/files/sorotoolkit/files/mps20n0040d-s_datasheet.pdf
Diese Schaltung stammt von Alexander Lang, der das Manometer-Signal über einen Operationsverstärker LM358 an den Analogeingang von Arduno weiterleitete. Laut einem Kommentar (siehe Seite) ist der HX711 auch perfekt für die Signalumwandlung geeignet. In diesem Fall sollte die Verstärkung auf 32 eingestellt werden.
Ich habe den obigen Link von hier nach kopiert: http://langster1980.blogspot.de/2014/11/how-to-use-pressure-sensor-with.html
Der BME20 ist ein hochauflösender Atmosphärendrucksensor. Versionen, die in viele Module unterteilt sind, sind im Internet verfügbar. Das gemeinsame Merkmal ist, dass sie den Namen 280 tragen. Dies ist kein Zufall, da für die Messung der BME280-Sensor von Bosch (https://www.bosch-sensortec.com/bst/products/all_products/bme280) (oder, schlimmer noch, ein Aftermarket-Klon) verwendet wird.
Neben dem Drucksensor BME280 enthält dieses CJMCU-Modul auch Feuchtigkeits- und Temperaturmessungen. Die technischen Merkmale entsprechen denen des Moduls CJMCU-280E.
Port | Beschreibung |
---|---|
Vcc | Stromversorgung |
GND | Grund |
SDI | I²C SDA (Daten) Port |
SCK | I²C SCL (Clock) Port |
CSB | Im Falle einer I²C Kommunikation muss es an Vcc angeschlossen werden. Für SPI zu GND. |
SDO | Auswahl der I²C Slave-Adresse: An GND gebunden ist 0x76, an Vcc gebunden ist 0x77. Das SDO muss gebunden sein, sonst ist die Moduladresse unsicher. |
So verwenden Sie das Modul mit ESP8266: https://myesp8266.blogspot.de/2016/12/bmp280-and-esp8266.html
library: https://github.com/sparkfun/SparkFun_BME280_Arduino_Library
#include <stdint.h> #include "SparkFunBME280.h" #include "Wire.h" #include "SPI.h" //Global sensor object BME280 mySensor; void setup() { Serial.begin(57600); //SPI mySensor.settings.commInterface = SPI_MODE; mySensor.settings.chipSelectPin = 10; //Operation settings mySensor.settings.runMode = 3; //Normal mode mySensor.settings.tStandby = 0; mySensor.settings.filter = 0; mySensor.settings.tempOverSample = 1; mySensor.settings.pressOverSample = 1; mySensor.settings.humidOverSample = 1; Serial.print("Starting BME280... result of .begin(): 0x"); delay(10); //BME280 requires 2ms to start up. Serial.println(mySensor.begin(), HEX); } void loop() { //Each loop, take a reading. Serial.print("Temperature: "); Serial.print(mySensor.readTempC(), 2); Serial.println(" degrees C"); Serial.print("Temperature: "); Serial.print(mySensor.readTempF(), 2); Serial.println(" degrees F"); Serial.print("Pressure: "); Serial.print(mySensor.readFloatPressure(), 2); Serial.println(" Pa"); Serial.print("Altitude: "); Serial.print(mySensor.readFloatAltitudeMeters(), 2); Serial.println("m"); Serial.print("Altitude: "); Serial.print(mySensor.readFloatAltitudeFeet(), 2); Serial.println("ft"); Serial.print("%RH: "); Serial.print(mySensor.readFloatHumidity(), 2); Serial.println(" %"); Serial.println(); delay(1000); } Quelle: http://arduinolearning.com/code/bme280-sensor-example.php
Der GY-65 ist eine Modulversion des Luftdruck- und Temperatursensors BMP085 von Bosch mit I²C-Kommunikation.
Der BMP085 verfügt über 4 Modi (OSS) (ultra low power, standard, high resolution, ultra high resolution). Diese können einerseits über die Kommunikation parametriert werden und hängen andererseits von der Häufigkeit der Messungen ab.
Eine Zusammenfassung des Arduino I²C finden Sie hier: Arduino I²C.
Achtung, die meisten dieser Module haben keinen 5-V-Spannungsregler, daher sollten die Beschreibungen nicht ignoriert werden und die Stromversorgung sollte auch mit 3,3 V gelöst werden.
Es kann immer nur ein solches Modul auf einer I²C-Leitung vorhanden sein, da es eine feste Adresse hat.
I²C-Drähte müssen mit Pull-up-Widerständen an 5 V DC angeschlossen werden (im folgenden Verdrahtungsbeispiel nicht gezeigt).
BMP085 pin | Funktion |
---|---|
VCC | Stromversorgung (1.8V .. 3.6V) |
GND | Grund |
EOC | Ausgabe Ende der Konvertierung: aktiv, wenn die Messung abgeschlossen ist (optional) |
XCLR | master reset (low-active): Durch Zurücksetzen auf GND wird BMP085 auf die Anfangswerte zurückgesetzt (optional). |
SCL | I²C SCL (Clock) Port |
SDA | I²C SDA (Daten) Port |
Bibliothek auf Github: https://github.com/hackabletype/37-Sensors-Code/tree/master/arduino/gy_65
Github / Adafruit-Bibliothek: https://github.com/adafruit/Adafruit-BMP085-Library
Oder von Sparkfun: https://dlnmh9ip6v2uc.cloudfront.net/assets/b/9/5/3/f/512d1197ce395fcc3f000001.zip