top of page

External Automation Device for Dorm Thermostat

A 3D printed box that sits on top of the thermostat in my dorm with a servo motor on the side to adjust the temperature dial on the thermostat. The servos are programmed to make the temperature lower during the day and warmer at night. 

The goal of this project was to create a device to automatically adjust the thermostat. I used an Arduino Uno to program a servo motor to adjust the temperature knob. 

Mechanical: 3D Modeling

First, I sketched the thermostat and its dimensions. Then, I sketched a design for the 3D printed box, with consideration of the 2D surfaces and extrudes. Using this sketch, I designed a 3D CAD model for the Arduino and breadboard to sit in using Fusion360. It was difficult to design the sidebar of the device’s box, because I wanted to design it so the servo would fit perfectly in place to adjust the thermostat knob, but because of the way the thermostat knob was designed to be inset in the thermostat box, this was difficult. Ultimately, I taped an extra servo attachment to the thermostat knob so that it could be easily rotated by the servo motor.

image.png

Electrical: Circuit Design

First, I researched the best output pin to use to connect the servo to the Arduino. Then, I designed a simple circuit to test the servo motor. The output voltage from the Arduino falls within the tolerance range of the servo motor, so I did not use any resistors. When I tried to use a 220 ohm resistor, the servo motor began vibrating instead of rotating. I considered using an NPN transistor, but I decided to just stick with the simple circuit that worked.

Computer Science: Programming

The servo rotates the knob to the warmer temperature, then is delayed by 8 hours for “sleeping,” then rotates to the cooler temperature, then is delayed by 16 hours for during the daytime. I attempted to import a library to program the circuit with instantaneous time instead of duration of delays; however, I did not understand how to use the library.

image.png

REFLECTION

I chose this project because I wanted to take an idea and fully execute it from start to finish, without following a tutorial, and I think this was successful. This project reaffirmed my preference of hardware over software and I also really enjoyed using CAD and figuring out how to make 2D sketches that could be extruded into the 3D model. I am still deciding between robotics and autonomous systems or circuit technology for my second thread (other than bioengineering), but I am confident that I do not want to pursue a computer engineering thread. One challenge I faced in this project was the microcontroller. I initially intended to use the TI Launchpad Microcontroller for this project; however, I couldn’t install the software on my laptop, so I switched to using the Arduino Uno. Additionally, I have used Arduinos in the past, so I was more comfortable with using the Arduino than the TI Launchpad. Overall, this project reaffirmed my decision to major in electrical engineering and I look forward to taking my ECE classes.

bottom of page