Hi guys,
The program works perfectly fine though i am not getting the right temperature value. it keeps giving me 127. which is not correct.
i can't seem to understand the problem with the program. Any Help is highly appreciated !!!
Thanks in advance !!!
#include <DallasTemperature.h> #define ONE_WIRE_BUS 24 // Setup a oneWire instance to communicate with any OneWire devices OneWire oneWire(ONE_WIRE_BUS); // Pass our oneWire reference to Dallas Temperature. DallasTemperature sensors(&oneWire); int temp; int temp2; void setup(){ Serial.begin(9600); } void loop(){ sensors.begin(); cValve.write(90); delay(10000); //getting the average value temp = averageTemperature (); cValve.write(0); delay(3000); //3 seconds hValve.write(90); delay(10000); //giving 10 second, in order to get a precise temperature temp2 = averageTemperature (); hValve.write(0); delay(3000); //3 seconds } int TemperatureRead(){ sensors.begin(); temp = sensors.getTempCByIndex(0); //reads the temperature and stores it in temp return temp; } //Function for getting average Temperature Values int averageTemperature() { TemperatureRead(); // discard first sample (never hurts to be safe) int averageTemperature; //For holding the running average for (int i = 1; i < 10; i++) averageTemperature += ((TemperatureRead() - averageTemperature)/(int)i); . return averageTemperature; // return the Average Temperature