Cerberus CU Boulder Evan Lamson Faisal Albirdisi Aleksey Treskov Wyatt Mohrman Tegan Argo Sarita Gautam Project Overview • Capture heat energy generated by the internal resisters of computer component efficiently. • Transfer that heat energy into electrical energy in an optimal level. • Increase the processing power of the computer without causing to computer components fail. • Monitor the system functionality using an Android device and Graphical User Interface(GUI). • Control system temperatures and maintain optimal operating conditions Goals • Primary: - Construct an effective Case - Develop a control system to maintain the best possible temperature difference • Secondary: - A display which will monitor system temperatures, clock rates, and power generation • Final: - Fully automated control of clock speed, flow rates, and power generation. Preliminary Design System Block Diagram Power Desktop PC Computer TEG Power Reclamation DC Power Control System User Display Data Visualization Control System • Level 2 Functional Decomposition Thermal Sensors Pump Control Flow Rate Sensor Computer Control Clock Speeds User data µController Bluetooth module Current Status • Prototype Case • Final selection of Computer System • Testing • TEGS • Power Conversion • Microcontroller selected • Control system schematic designed • Functional decomposition down to level 3 • System context diagram • Class diagram Heat Transfer Analysis • Heat Loss(or gain) through the walls of an insulated container • EQ: Q=A((TO-TI)/(L/K + 1/h)) Where: • -Q is the heat lost or gained in watts • -L is the thickness of insulation in meters (m) • -K is the Thermal Conductivity of the insulation material in watts/meter C • -A is the outside surface area of the container in meters squared (m2). • -h is the Heat Transfer Coefficient of the surface material in watts/meter2 C • -TO is the Outside temperature in C (21 ° C for air, 15 ° C for water) • -TI is the Inside temperature in C Heat Transfer Analysis VS Heat Transfer Analysis • Using old Design: Heat Loss Total : Q = -188 W (with 70 ° C oil temperature) Through TEG wall acrylic : Q = -159 W • Using new Design: Heat Loss Total : Q = -45 W (difference of 143 W) Through TEG wall acrylic : Q = -0.18 W (difference of 158.82 W) New Case Design • SolidWorks design allows us to laser cut each piece to the exact dimensions needed. • If any changes need to be made later, they can be tested first in software to ensure mistakes aren’t made. New Case Design • Area of TEG wall reduced to minimize the area of the acrylic between hot and cold side. • Power Supply is also submerged in the oil. • Hard Drive / CD Drive not submerged. Hardware • CPU and Motherboard • Intel I5-2500K Processor • Quad Core Sandy Bridge 3.3GHz (3.7 GHz Turbo Boost) Processor • Intel HD Graphics • Fully unlocked and overclocking-enabled • Biostar TZ77A Motherboard • Designed for overclocking • Unlocked BIOS • Components chosen for robustness and long-life Hardware • Sensors • DS18B20 Programmable Resolution 1-Wire Digital Thermometer • Operating range: -55° to +125° C • Accuracy: +/- 0.5° C • Communicates over a 1-Wire bus Hardware • Pumps • EWP-DC30A Mini DC Brushless Submersible Pump • 3.6 L/min or 57 GPH • Long life: > 20,000hrs • Size: 2.0"x1.7"x1.36" Hardware • Thermo-electric Generators • 1261G-7L31-04CL Power Generation Module • Max temperature of 300° C • Pre-applied graphite thermal interface material • Size: 1.18"x1.18“x0.15" Quick Recap • How does a TEG work? • Employ the Seebeck effect principle. • V= S* ΔT, S : Seebeck coefficient, ΔT: Temperature differential • Heat is carried by holes in P type, electrons in N type. • Across each junction a small voltage is produced. • Place many of these in series/ parallel to get useful voltage. • Heat -> DC Volts ΔT°C ο TEG ο DC Voltage! • Can you really generate that much electricity from waste heat? • Yes we can! Test/Results • Setup: • 2 series connected TEGs where placed as part of a wall separating the hot and cold compartments. • Heat sinks where attached to either sides to increase thermal transfer from fluid to TEG wall. • PICTURE OF SETUP Open Circuit Voltage • Perfectly linear behavior ! • Able to log ~700mV @ 35°C ΔT • Final design : • 2 parallel strings of 6 series connected TEGs • Voc = 2.4 V Short circuit current • Again Linearity. • ~57mA @ 35°C ΔT • Final desigd: • 2 parallel strings of 6 series connected TEGs • Isc = 120 mA TEG resistance varies with temperature • Typically between 1.8 to 3.3 ohms per TEG module. • Problem with using semiconductors is the internal resistance. Load matching • In order to get the most power from the TEGs we must match the load resistance to the TEG internal resistance. • Max P equal to • ~13mW @ 40 Delta • ~7.5mW @ 30 Delta For Spring • MPPT Tracking. • Load matching. • Boosting output. • Development of a back-up battery charging system. For Spring • MPPT Tracking. • Load matching. • Boosting output. • Development of a back up battery charging system. Class Diagram version 2 Layer 1: Data Acquisition • Boss • Display • Main class • Data manager between two user interfaces • Updates temperature data using a Timer Boss - timer Timer - int newField + public void run() + public void getOilTemp() + public void getWaterTemp() + public void getPowerReading() + public void analyzeCurrent() Timer Display - bool checkFlag - double Data + public void tempTimer() + public void Mpp() + public void displayUpdate() + public void UpdateAndroid() + public void UpdateGUI() + public void displayGraphs() + public void displayMessage() Layer 2: Data Management • LOG • Alarm • Collects data for all the sensor readings • Analyzes data • Sends warning to the Boss LOG - double hotTemp - double clockSpeed - double voltage - double internalTemps - double coldTemp + public void logData() Alarm - bool checkFlag + public void setFlag() + public void notifyBoss() + public void analyzeHistorical() Layer 3: Hardware Interface(Sensors) • Temperature • Fluid • CPU • Motherboard • Clock speed • Voltage MotherBoardSensorInterface - int ambientTemp - int CPUTemp - int CPI - Int Clock +public void getTemp() +public void getClockSpeed() PowerInterface - double Power + public void getPower() WaterTempInterface - double WaterTemp + public void getTemp() OilTempInterface - double oilTemp + public void getTemp() Layer 3: Hardware Interface • Control Signals • Pump • Motherboard MotherBoard - double voltage - int Multiplier - Int Idle + public void adjustVoltage() + public void adjustMultiplier() + public void adjustClock() OilPump -bool OnOff + public void PumpON(PumpNo) + public void PumpOFF(PumpNo) Layer 4: User Interface • Gives user visualization on Temperature and Power Usage Statistics • GUI has full control of the system Android - double voltage - double power - double oilTemp - double waterTemp + public void displayData() + public void ClockSpeed() + public void Temperature() GUI - double voltage - double power - double oilTemp - int modeSelector - double waterTemp + public void displayData() MSP-430G2231 • Ultra Low Power • standby power of 0.4μA • Low Cost • Dip package • Enhanced libraries • 1 wire library 1 wire protocol • Dallas Semiconductors • Speed: • Standard: 15.4 kbps • Overdrive: 125 kbps -1.00E-01 1 60 119 178 237 296 355 414 473 532 591 650 709 768 827 886 945 1004 1063 1122 1181 1240 1299 1358 1417 1476 1535 1594 1653 1712 1771 1830 1889 1948 1 wire continued 6.00E-01 5.00E-01 4.00E-01 3.00E-01 2.00E-01 1.00E-01 0.00E+00 Circuit Schematic Input Power Control with CPU Throttling (In Windows) This program adjusts the registers on the CPU, either to enter idle, or to adjust core multiplier. In Linux MSR can set these directly… Here I access the 0x198 register on all 4 cores, this register reports max and current core frequency, when I try to access 5th core (does not exist) I get error wrmsr 0x198 <value> would adjust the values set to current core frequency, but we need to find the correct <value> to set. Luckily there is an open source tool. CPU Tuner is a Linux open source tool for controlling Intel CPUs with MSR All of this allows us to control the amount of heat going into the system. If we fit experimental data with known power input, P_CPU = 56 W We get: Very basic General Model π = 1 π = 7564.3 temp(t) = π ∗ 1 − −π‘ πΈπ The model agrees nicely with data, predicts max temp, and time constant to get there. π is related to input power (assuming linear proportionality) temp t = π ∗ 1 − −π‘∗πππ πΈ πc πc = Pin ∗ π = 423601 This allows us a real-time way to adjust the heat power going into the system. Pumps to control the amount of heat power leaving the system. With this we can use make a complete feedback control system to maintain a nominal temperature for safe CPU operation and TEG power generation independently of user process load activity. RED = Pin-> 46W GREEN= Pin->17W BLUE=Pin->8W • User would just use the computer like normal. • At startup no pumps are running, and a good differential temperature is built up. • Once the TEGs have a good enough temperature differential (with still safe CPU), we turn on/off the pumps to maintain that constant differential. • Our system would automatically scale back the clock speeds if our case cannot keep up with the heat dissipation. • Otherwise it would allow full, even overclocked clock speeds, as long as the pumps and TEGs continue to dissipate the same amount of heat as the CPU cores generate. Potential Marketability • Potential Marketability • Close in size to regular desktop computers • Save money on electricity • Impact on Society • Higher computer performance • Reduces waste heat • Safety • Overheating • Adjust clock speed • Increase flow rate of cold oil • Risk of ground fault • Plug the equipment into a GFCI (Ground fault circuit interrupter) protected outlet Parts Procured Schedule Spring Semester Division of Labor Component Primary Secondary Heat Reclamation System Pump Control Wyatt Aleksey Fluid Transport Aleksey Evan TEG array design Wyatt Faisal Case design Evan Aleksey Interface /Sensor Microcontroller Wyatt Sarita On screen display Sarita Tegan Software Aleksey Evan PCB Design Evan Faisal Safety Electronics Tegan Evan Power Electronics PCB Design Faisal Sarita Circuit Design Faisal Evan DC-DC Boost Faisal Aleksey TEG MPP Tracking Tegan Wyatt Project Management Budget Wyatt Tegan Documentation Sarita Tegan System Construction TEG Array Sarita Faisal CASE Evan Sarita -