Here is my entire sketch.....
The formulas I'm using are from the Arduino trainer......
Thanks.
// Yellow, Green, Red LED's
const int yellowPin = 4;
const int grnPin = 3;
const int redPin = 2;
// RGB Pins
const int gPin = 9;
const int bPin = 10;
const int rPin = 8;
// Light Sensor, Temp Sensor
const int lightPin = 0;
const int tempPin = 3;
int lightLevel;
float voltageLevel, degreesC, degreesF;
void setup()
{
pinMode(yellowPin, OUTPUT);
pinMode(grnPin, OUTPUT);
pinMode(redPin, OUTPUT);
pinMode(gPin, OUTPUT);
pinMode(bPin, OUTPUT);
pinMode(rPin, OUTPUT);
Serial.begin(9600);
}
void loop()
{
lightLevel = analogRead(lightPin);
//Serial.println(lightLevel);
//Serial.println("lightLevel raw data ");
delay(1000);
//voltageLevel = analogRead(tempPin);
//Serial.print("tempLevel raw data ");
//Serial.println(voltageLevel);
delay(1000);
lightMonitor();
tempMonitor();
}
void lightMonitor()
{
if ((lightLevel <= 880) && (lightLevel >= 800))
{
Serial.print("Light Level OK ");
Serial.println(lightLevel);
digitalWrite(grnPin, HIGH);
digitalWrite(yellowPin, LOW);
digitalWrite(redPin, LOW);
delay(1000);
}
else if (((lightLevel <= 799) && (lightLevel >= 600)) || ((lightLevel <= 881) && (lightLevel >=900)))
{
Serial.print("Light Level Warning ");
Serial.println(lightLevel);
digitalWrite(yellowPin, HIGH);
digitalWrite(grnPin, LOW);
digitalWrite(redPin, LOW);
delay(1000);
}
else
{
Serial.print("Light Level Out Of Spec ");
Serial.println(lightLevel);
digitalWrite(redPin, HIGH);
digitalWrite(yellowPin, LOW);
digitalWrite(grnPin, LOW);
delay(1000);
}
}
void tempMonitor()
{
voltageLevel = analogRead(tempPin);
voltageLevel =(degreesC * 0.004882814);
degreesC = (voltageLevel - 0.5) * 100.0;
Serial.println(degreesC);
degreesF = ((degreesC * (9.0/5.0)) + 32.0);
if ((degreesF <= 72) && (degreesF >= 68))
{
Serial.print("Temp Level OK ");
Serial.println(degreesF);
digitalWrite(gPin, HIGH);
digitalWrite(bPin, LOW);
digitalWrite(rPin, LOW);
delay(1000);
}
else if (((degreesF <= 65) && (degreesF >= 62)) || ((degreesF <= 78) && (degreesF <= 75)))
{
Serial.print("Temp Level Warning ");
Serial.println(degreesF);
digitalWrite(gPin, HIGH);
digitalWrite(bPin, HIGH);
digitalWrite(rPin, LOW);
delay(1000);
}
else
{
//Serial.print("Temp Level Out Of Spec ");
//Serial.println(degreesF);
digitalWrite(gPin, LOW);
digitalWrite(bPin, LOW);
digitalWrite(rPin, HIGH);
delay(1000);
}
}