Änderungen
Aus Linkerkit.de
[[Datei:5_5V_G_SCL_SDA_3V.png|none|500x292px]]
==Software-Beispiel====Codebeispiel Arduino==Die Arduino-Boards besitzen von Haus Dieser Sensor gibt sein Messergebnis nicht als Signal auf einen Ausgangspin aus einen 10 Bit-ADC mit 6 Kanälen. Benötigt man jedoch mehr Kanäle oder eine höhere Genauigkeit, dann kann man den Arduino mittels des KY-053 Analog Digital Converter Moduls um 4 ADC Kanäle mit 12-Bit Genauigkeit erweitern, welches sondern kommuniziert diesen per I2C an den Arduino angeschlossen wird-Bus. Über diesen lässt sich der Sensor ansteuern und die jeweiligen Messungen zum Druck und der Temperatur starten und auswerten.
Zur Ansteuerung dieses Moduls Sensormoduls gibt es mehrere Möglichkeiten - als besonders zugänglich haben hat sich die ADS1X15 Libraries Adafruit_BMP085 Library erwiesen, die die Firma Adafruit unter [dem folgenden [https://github.com/adafruit/Adafruit_ADS1X15 https://github.com/adafruit/Adafruit_ADS1X15]Adafruit_BMP085_Unified Link] unter der [OpenSource [https://opensource.org/licenses/BSD-3-Clause BSD-Lizenz]BSD-Lizenz] veröffentlicht hat.
Das unten stehende Beispiel verwendet diese besagte Library - hierzu empfehlen wir diese von Github herunterzuladen, zu entpacken und im Arduino-Library-Ordner, welcher sich standardmäßig unter (C:\Benutzer\[Benutzername]\Dokumente\Arduino\libraries) befindet, zu kopieren, damit diese für dieses Codebeispiel und folgende Projekte zur Verfügung steht. <pre class="brush:cpp">#include #include // ADS1115 Modul wird initialisiert - alle folgenden Operationen mit dem ADC// können mit Hilfe des Objektes "ads" ausgeführt werdenAlternativ ist diese auch im unten stehenden Download Paket ebenfalls enthalten.Adafruit_ADS1115 ads;
<pre class="brush:cpp">// Benoetigte Libraries werden eingefügt und konfiguriert
#include <Wire.h>
#include <Adafruit_Sensor.h>
#include <Adafruit_BMP085_U.h>
Adafruit_BMP085_Unified BMPSensor = Adafruit_BMP085_Unified(10085);
void setup(void)
{
Serial.begin(9600);
Serial.println("Werte der analogen Eingaenge des ADS1115 (A0..A3) werden ausgelesen und ausgegeben"); Serial.println("ADC Range: +/KY- 6.144V (1 bit = 0.1875mV)052 SensorTest:");
// Dieses Modul besitzt an seinen analogen Eingängen SignalverstärkerFalls der Sensor nicht erkannt wurde, deren // Verstärkung per Software in den unten stehenden Bereichen konfiguriert werden // können. // Dieses ist in dem Fall gewünscht, wenn ein bestimmter Spannungsbereich // als messergebnis erwartet wird und man so hier eine höhere Auflösung des SignalsFehlermeldung gezeigt // erhältif(!BMPSensor. // Als Standardverstärkung ist Gain=[2/3] gewählt und kann durch Auskommentieren // auf eine andere Verstärkung umgestellt werden. // ADS1115 // ------- ads.setGainbegin(GAIN_TWOTHIRDS); // 2/3x gain +/- 6.144V 1 bit = 0.1875mV ) // ads{ Serial.setGainprintln(GAIN_ONE); // 1x gain +/"KY- 4.096V 1 bit = 0.125mV // ads.setGain(GAIN_TWO053-Sensor nicht erkannt!"); // 2x gain +/- 2.048V 1 bit = 0.0625mV // ads Serial.setGainprint(GAIN_FOUR"Bitte ueberpruefen Sie die Verbindung"); // 4x gain +/- 1.024V 1 bit = 0.03125mV // ads.setGain while(GAIN_EIGHT); // 8x gain +/- 0.512V 1 bit = 0.015625mV // ads.setGain(GAIN_SIXTEEN); // 16x gain +/- 0.256V 1 bit = 0.0078125mV ads.begin();}
}
void loop(void)
{
delay(1000);
}
</pre>
'''Beispielprogramm Download:'''
[[Medium:KY-053052-AnalogDigitalConverterDruckSensor_TemperaturSensor.zip|KY-053052-AnalogDigitalConverterDruckSensor_TemperaturSensor.zip]]
'''Anschlussbelegung Arduino:'''
{| style="height: 58px; padding-left: 30px;" width="228"
|-
||VDDVCC
||=
||[Pin 5V]
||[Pin SDA]
|-
||ADDR3,3
||=
||[N.C.]
|}