Moin,
Vielen Dank für eure Gedult mit mir ![]()
ich habe jetzt erstmal alles soweit gekürzt bis nurnoch alles ausgelesen wird.
Eine frage wie kann ich jetzt diese Variable auslesen bzw nutzen?
Ich hoffe ich stelle mich nicht zu doof an ![]()
/* Sketch by Doc_Arduino from german Arduino Forum
This is a modified "DallasTemperature" Library examples "WaitforConversion" without hard delay,
for a best of speed.
Arduino IDE vn 1.0.6
*/
#include <OneWire.h>
#include <DallasTemperature.h>
// DS1820 an PIN 8
#define ONE_WIRE_BUS 8
OneWire oneWire(ONE_WIRE_BUS);
DallasTemperature sensors(&oneWire);
#define Mischer_AUF 9
#define Mischer_ZU 10
#define Zonenventil_PIN 11
/********************************************************************************/
// Solltemperatur
//int tempsoll = 55;
//DeviceAdressen der einzelnen ds1820 Temperatursensoren angeben. (loop anpassen)
DeviceAddress sensor0 = { 0x28, 0xF8, 0x1F, 0xD0, 0x5, 0x0, 0x0, 0xEA };
DeviceAddress sensor1 = { 0x28, 0x6B, 0x8E, 0xCF, 0x5, 0x0, 0x0, 0xDA };
DeviceAddress sensor2 = { 0x28, 0xEF, 0xC4, 0xCF, 0x5, 0x0, 0x0, 0xB8 };
DeviceAddress sensor3 = { 0x28, 0xD3, 0xC8, 0xE4, 0x5, 0x0, 0x0, 0xED };
DeviceAddress sensor4 = { 0x28, 0xEE, 0xC7, 0xE4, 0x5, 0x0, 0x0, 0x25 };
int resolution = 12; // DS18S20 only 9bit, other 9...12
unsigned long lastTempRequest = 800; // start delay for first measurement
unsigned int ConversionDelay = 800; // default 750ms, okay for all DS1820 types
float temperature = 0.0;
boolean AllowDallasTempRequest = true;
float TempSensor0 = 0.0; // Zwischenspeicher zum auslesen
float TempSensor1 = 0.0; // Zwischenspeicher zum auslesen
float TempSensor2 = 0.0; // Zwischenspeicher zum auslesen
float TempSensor3 = 0.0; // Zwischenspeicher zum auslesen
float TempSensor4 = 0.0; // Zwischenspeicher zum auslesen
//char sensor0 = PufferOben
//char sensor1 = PufferMitte
//char sensor2 = PufferUnten
//char sensor3 = GeimeinsamerRucklauf
//char sensor4 = Rucklaufanhebung
// Hysterese
int hyst = 2;
int varianceTemperature;
unsigned long MischenA;
unsigned long WartenA,WartenB;
/********************************************************************************/
void setup() {
// pinMode(Mischer_AUF, OUTPUT);
// pinMode(Mischer_ZU, OUTPUT);
// pinMode(Zonenventil_PIN, OUTPUT);
// digitalWrite(Mischer_AUF, LOW);
// digitalWrite(Mischer_ZU, LOW);
Serial.begin(9600);
sensors.begin();
sensors.setResolution(sensor0, resolution);
sensors.setResolution(sensor1, resolution);
sensors.setResolution(sensor2, resolution);
sensors.setResolution(sensor3, resolution);
sensors.setResolution(sensor4, resolution);
sensors.setWaitForConversion(false);
// varianceTemperature = 0;
}
/********************************************************************************/
void loop() {
// readout the Dallas sensors
if ( millis() - lastTempRequest >= ConversionDelay ) // waited long enough?
Serial.print(F("Sensor0: ")); Serial.println(sensors.getTempC(sensor0));
Serial.print(F("Sensor1: ")); Serial.println(sensors.getTempC(sensor1));
Serial.print(F("Sensor2: ")); Serial.println(sensors.getTempC(sensor2));
Serial.print(F("Sensor3: ")); Serial.println(sensors.getTempC(sensor3));
Serial.print(F("Sensor4: ")); Serial.println(sensors.getTempC(sensor4));
AllowDallasTempRequest = true;
}
[Code]
Grüße Felix