A poor Midterm grade and an engineer's desire for a "smart" thermostat lead to the creation of The IoTStat. This overly sized thermostat runs on code from the Arduino 1.6.8 software on an Arduino Mega 2560. It not only has a WiFi 101 shield and a temperature sensor but it also has plenty of potential.
My MEGR 3171 professor at UNCC gave us the opportunity to monitor and/or control a sensor through the internet of things. I took this opportunity to contact a friend of mine who is an engineer at IBM for his assistance in creating a thermostat that can be monitored from the internet. His guidance and assistance were greatly appreciated as I am new to projects such as this one.
As previously stated, the IoTStat runs on an Arduino Mega with a wifi shield connected on top of it. On top of the wifi shield is the prototype shield. The prototype shield has the temperature sensor, rotary encoder, and the ports for the wall connected to it. The purpose of this shield is to provide a board that connects the Arduino Mega to the previously stated components.
Temperature readings are taken from the sensor and relayed to the Arduino. This temperature is compared to the desired temperature and a decision is made to turn on the A/C, the heat, or neither in order to reach or maintain the desired temperature. One added parameter is a defined "season" to prevent either the A/C or heat to come on depending on the season. The two seasons are the "Heating" and "Cooling" seasons. During the heating season the A/C will never turn on no matter the current and desired temperatures and vice versa for cooling season. This is useful as we do not want the A/C to come on when the heater accidentally raises the current temperature slightly above the desired temperature. A demonstration of the IoTStat in action can be seen below:
Although the rotary encoder is functioning properly there is no way to tell what season it is or what the current/desired temperatures are by simply looking at the IoTStat. That is why a display will soon be connected to show current/desired temperatures and also the current season of the system. Although we cannot see these settings on the IoTStat itself we can see the current and desired temperatures of the system through ThingSpeak.com. Thanks to the internet of things we can monitor our thermostat from the comfort of our bed, workplace, or even bathroom. The link to the IoTStat channel can be seen below:
The IoTStat is a functioning thermostat and it can be monitored online but it is not finished. A physical display similar to one on a regular thermostat is still needed to reduce the burden of the ThingSpeak channel. A twin sister is soon to be born as well for the downstairs unit. These sisters will be in contact with eachother through ThingSpeak to optimize temperature control throughout the household. Any changes and additions to the IoTStat and its twin sister will be uploaded here!
This project was done as an extra credit assignment for MEGR 3171 at UNCC.