home distillation project

Ok guys, this project is coming along quite nicely. I'm starting to understand how c++ works, but not entirely. I have come to a point where I am a bit stumped and I guess now is the time to seek help. The code i have, has no problems compiling or uploading, but the trouble with it is such that the servo's just keep cycling back & forth. The job servo2 has is basically like a soliniod valve but I have a hobby servo attached to the top of a 90 degree ball valve type tap to control coolant flow according to temperature. It seems like a fairly basic concept which I tried diong with a series of if & else statements. This is the hardware I want to use because of the way i have the cooling system set up. I have already made a coolant resivior with a pump, radiator,fans and said servo tap. I have planned this project for a long time now, so some of my hardware may seem out-dated. I'm using the Alpha 0022 IDE as my libraries were adapted to that. There is nothing wrong with my circuit as it was all tested with small sketches such as servo_sweep e.t.c. The two K-type thermocouples are both working fine,as is the temp readings on the shifted out 16x2 LCD. I'm not sure if the "temperature1" & "temperature2" are getting data from "thermocouple1" & "thermocouple2", which I'm guessing they should be attached with an 'int' or a statement in the void setup. The big series of 'if' & 'else statements to control the servo-valve/tap might look a bit messy but all this is very hard for me to understand as I'm new to this. The only info I could find on temp-controlled servo's would only perform a full open or full shut type procedure, which is no good for this project. If you've taken the time to read this far, please take the time to read my code & help fix it. You'll notice I hav'nt added any comments in there. The reason for this is, I thought that if someone has no idea of how electronics, coding & distillation work, then they probabaly shouldn't be messing with it. Therefore they would have trouble understanding my code.

code:-
#include <Servo.h>
#include <max6675.h>
#include <ShiftLCD.h>

int thermoDO = 7;
int thermoCS = 6;
int thermoCLK = 4;
int thermoDO2 = 8;
int thermoCS2 = 9;
int thermoCLK2 = 10;
int units = 1;
int relay1 = 1;
int relay2 = 2;
int button = A0;
int pos = 0;
float temperature1 = 0.0;
float temperature2 = 0.0;
Servo servo1;
Servo servo2;

MAX6675 thermocouple1(thermoCLK, thermoCS, thermoDO);
MAX6675 thermocouple2(thermoCLK2, thermoCS2, thermoDO2);

ShiftLCD lcd(11, 13, 12);

uint8_t degree[8] = {140,146,146,140,128,128,128,128};

void setup() {
Serial.begin(9600);

lcd.begin(16, 2);
lcd.createChar(0, degree);
servo1.attach(3);
servo2.attach(5);
pinMode(button, INPUT);
pinMode(relay1, OUTPUT);
pinMode(relay2, OUTPUT);
delay(1000);
}

void loop() {
lcd.clear();
lcd.setCursor(0, 0);
lcd.print("TEMP.1");
lcd.print(" ");
lcd.print(thermocouple1.readCelsius());
lcd.print(0, BYTE);
lcd.print("C ");
lcd.setCursor(0, 1);
lcd.print("TEMP.2");
lcd.print(" ");
lcd.print(thermocouple2.readCelsius());
lcd.print(0, BYTE);
lcd.print("C ");

delay(1000);

if (temperature1 >93)
{
relay1 = (LOW);
}
else
{
relay1 = (HIGH);
}
delay(1000);
if (temperature1 >65)
{
relay2 = (HIGH);
}
else
{
relay2 = (LOW);
}
delay(1000);

if (digitalRead(button) == HIGH)
{
pos = 90;
servo1.write(90);
}
else
{
pos = 120;
servo1.write(120);
}
delay(1000);
if (temperature1 >90)
{
pos = 30;
servo1.write(30);
}
else
{
pos = 90;
servo1.write(90);
}
delay(1000);
//valve starts here
if (temperature2 >15)
{
pos = 180;
servo2.write(180);
}
else
{
pos = 175;
servo2.write(175);
}
delay(1000);
if (temperature2 >18)
{
pos = 175;
servo2.write(175);
}
else
{
pos = 170;
servo2.write(170);
}
delay(1000);
if (temperature2 >21)
{
pos = 170;
servo2.write(170);
}
else
{
pos = 165;
servo2.write(165);
}
delay(1000);
if (temperature2 >24)
{
pos = 165;
servo2.write(165);
}
else
{
pos = 160;
servo2.write(160);
}
delay(1000);
if (temperature2 >27)
{
pos = 160;
servo2.write(160);
}
else
{
pos = 155;
servo2.write(155);
}
delay(1000);
if (temperature2 >30)
{
pos = 155;
servo2.write(155);
}
else
{
pos = 150;
servo2.write(150);
}
delay(1000);
if (temperature2 >33)
{
pos = 150;
servo2.write(150);
}
else
{
pos = 145;
servo2.write(145);
}
delay(1000);
if (temperature2 >36)
{
pos = 145;
servo2.write(145);
}
else
{
pos = 140;
servo2.write(140);
}
delay(1000);
if (temperature2 >39)
{
pos = 140;
servo2.write(140);
}
else
{
pos = 135;
servo2.write(135);
}
delay(1000);
if (temperature2 >42)
{
pos = 135;
servo2.write(135);
}
else
{
pos = 130;
servo2.write(130);
}
delay(1000);
if (temperature2 >45)
{
pos = 130;
servo2.write(130);
}
else
{
pos = 125;
servo2.write(125);
}
delay(1000);
if (temperature2 >48)
{
pos = 125;
servo2.write(125);
}
else
{
pos = 120;
servo2.write(120);
}
delay(1000);
if (temperature2 >51)
{
pos = 120;
servo2.write(120);
}
else
{
pos = 115;
servo2.write(115);
}
delay(1000);
if (temperature2 >54)
{
pos = 115;
servo2.write(115);
}
else
{
pos = 110;
servo2.write(110);
}
delay(1000);
if (temperature2 >57)
{
pos = 110;
servo2.write(110);
}
else
{
pos = 105;
servo2.write(105);
}
delay(1000);
if (temperature2 >60)
{
pos = 105;
servo2.write(105);
}
else
{
pos = 100;
servo2.write(100);
}
delay(1000);
if (temperature2 >63)
{
pos = 100;
servo2.write(100);
}
else
{
pos = 95;
servo2.write(95);
}
delay(1000);
if (temperature2 >66)
{
pos = 95;
servo2.write(95);
}
else
{
pos = 90;
servo2.write(90);
}
delay(1000);

}