So iv been trying to learn enough to complete my current project but unfortunately its starting to seem a little out of my reach, at least for the timeline I'm looking for. I suppose my best bet is to simply explain what I'm trying to accomplish and why, so here it goes. I have a hot tub that is heated with a propane heater, the propane burner has three electronic components as follows. A motorized ball valve for shutting gas on/off, an electronic ignitor and a thermocouple. I wish to automate this burner. The hot tub itself has three ds18b20 temperature sensors. When the hot tub reaches a certain temp i would like the burner to shut gas off and shortly after that, shut the pump off. Once the tub has cooled to a certain point i would like the ignite sequence to turn things back on. I would like one LCD to display the temperatures of each of the three ds18b20's and i would like the second LCD to display the temperature of the thermocouple along with the desired hot tub temperature. The desired hot tub temperature should be able to be adjusted via two push buttons. Lastly, i would like to incorporate some safety features into this project. If the burner is in the ON position but the thermocouple fails to see a temperature above a certain point, the burner would revert to the OFF position and ideally it would play a tune through a speaker.
All of these components that i intend to run are arduino friendly. Other items such as pumps, valves and ignitors simply require a digitalWrite "HIGH" to run/open/ignite and will be handled through relays.
The thermocouple is:
SainSmart MAX31855 Module + K Type Thermocouple Sensor Module For Arduino
The LCD is:
Frentaly® IIC/I2C/TWI 2004 Serial Blue Backlight LCD Module for Arduino UNO R3 MEGA2560 20 X 4, 2004
The temperature sensors:
DS18B20
The arduino board is:
SunFounder Mega 2560 R3 ATmega2560-16AU Board (compatible with Arduino)
The speaker i wish to play a melody through is a standard car speaker, I don't expect a ton of volume.
Heres an example of the desired IGNITE sequence:
digitalWrite (Pump, HIGH);
delay (30000);
digitalWrite (Spark, HIGH);
delay(1000);
digitalWrite (GasValve, HIGH);
delay(10000);
digitalWrite (Spark, LOW);
Heres an example of the desired OFF sequence:
digitalWrite (GasValve, LOW);
delay (40000);
digitalWrite (Pump, LOW);
Hopefully this is legible and posted in the desired format, Still new to the board.
kindly, jason