Moin,
Vielen Dank für deine Hilfestellung 
Jetzt kann ich den Code schonmal compilieren aallerdings bleiben die Temperatur werte konstant so…
Zu Dem Code ist noch ein funktionierender hinzu gekommen welcher alleridngs alleine Ohne Probleme lief .
Hier der Code
/* 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
*/
/* Erster Versuch Mischersteuerung 20101025 mb[ALT-Q]komputer.de
Die delays durch millis ersetzt von Berry07*/
#include <OneWire.h>
#include <DallasTemperature.h>
// DS1820 an PIN 2
#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 //Pin des Relais
/********************************************************************************/
// 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 sensor0Name[] = "PufferOben: ";
//char sensor1Name[] = "PufferMitte: ";
//char sensor2Name[] = "PufferUnten: ";
//char sensor3Name[] = "GeimeinsamerRucklauf: ";
//char sensor4Name[] = "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() {
{
// Request a temperature conversion
if ( AllowDallasTempRequest == true )
{
sensors.requestTemperatures();
AllowDallasTempRequest = false;
lastTempRequest = millis();
}
// 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;
}
(sensors.getTempC(sensor0));
int tempist = sensors.getTempC(sensor0);
Serial.print("Ist Temp: ");
Serial.println(tempist);
//------> MISCHEN Anfang
WartenA = millis(); //alles 10 Sekunden die Temperaturen vergleichen
if (WartenA - WartenB > 10000){
if (tempist > (tempsoll + hyst)) { // Mischer zu - Temperatur runter
MischenA = millis();
while (millis() - MischenA < ((tempist - tempsoll) * 500)) {
//z.B.tempist=27(Grad) und tempsoll= 22(Grad) dann geht der Mischer 5*500ms also 2,5sec lang zu
digitalWrite(Mischer_ZU, HIGH);
Serial.print("Mischzeit ist ");
Serial.println(((tempist - tempsoll) * 500));
Serial.println("Mischer faehrt ZU");
}
digitalWrite(Mischer_ZU, LOW);
}
if (tempist < (tempsoll - hyst)) { // Mischer auf - Temperatur erhoehen
MischenA = millis();
while (millis() - MischenA < ((tempsoll - tempist) * 500)) {
digitalWrite(Mischer_AUF, HIGH);
Serial.print("Mischzeit ist ");
Serial.println(((tempsoll - tempist) * 500));
Serial.println("Mischer faehrt AUF");
}
digitalWrite(Mischer_AUF, LOW);
}
WartenB = millis();
} //--------MISCHEN Ende-----------------
//Falls die Temperatur des Pufferspeichers 3° größer als die des Rücklaufs wird das Relais geschlossen,
//wenn es nur noch 1° größer ist wieder geöffnet
//wenn der Pufferspeicher wärmer als 60° wird, wird das Relais geschlossen
if((sensor0 - sensor3 + varianceTemperature) >= 3 )
{
if(digitalRead(Zonenventil_PIN) != HIGH)
{
digitalWrite(Zonenventil_PIN, HIGH);
varianceTemperature = 2;
Serial.println("Schalte Relais an!");
}
}
else
{
if(digitalRead(Zonenventil_PIN) != LOW)
{
digitalWrite(Zonenventil_PIN, LOW);
varianceTemperature = 0;
Serial.println("Schalte Relais aus!");
}
}
}
Grüße Felix derjetztschonmaletwasmehrversteht 