Every day in the U.S., millions of kilowatt-hours of electricity are produced and wasted. This glut is primarily due to an inability for power companies to quickly scale with demand surges that occur throughout the day. Purchasing electricity during these high-demand periods – in the late afternoon and early evening – is more expensive for the consumer, while prices are lower during low-demand periods of the day. Our project is aimed at harnessing the demand lull to run home appliances. This allows the consumer to run appliances at lower cost and allows the power company to produce less energy during peak demand; this reduction helps minimize overproduction of energy, and in turn save money and reduce carbon emissions. Furthermore, it can ease the burden on non-constant renewable energies, such as wind and solar.
What it does
Power Saved, Dollar Earned is a Microsoft bot hosted on the Azure cloud that provides a platform for a user to schedule a multitude of smart home Internet of Things (IoT) devices. The bot gathers pricing data from the power company and uses these predictions to develop a least-cost schedule for the required appliances. Once the appliances are scheduled, the bot turns them on and off as required. This ensures that the appliances run in the required amount of time for the least cost; this aids in reducing overproduction.
How we built it
We built this project in four distinct parts that were gradually integrated. These parts are (1) the power plant pricing server, (2) the bot scheduling logic, (3) the bot user interface, (4) the home hardware demonstration. The power plant pricing server is run on an Apache server written in Java. It returns an array of predicted price values in 15-minute increments; these prices vary over the course of the day. The bot scheduling logic was developed independently in C#, and then migrated to the Azure cloud once testing was complete. The scheduling logic uses a greedy algorithm to run appliances during the cheapest times throughout the day and load balance. The bot user interface was developed live on the web with an Azure Forms template. This allowed for rapid integration with Skype as an easily accessible chat application. Meanwhile, to match the dishwasher, cell phone charger, washing machine, and dryer that were being scheduled in the bot, we constructed a set of connected “appliances” that are driven by a Raspberry Pi. These fans and lights mimic real-world smart devices being powered on and off by Internet connections.
Challenges we ran into
With more than just a couple of moving parts (networks, back-end development, front-end user interface, hardware, etc.), we were challenged to develop a clean, working product by managing the integration from one technological medium to another.
Accomplishments that we're proud of
By far the thing that we are most proud of is the integration of the Azure bot as a central communication and control figure. The bot is able to communicate both with the electric company’s server and our home IoT devices. This communication is vital, and required precise adherence to protocols that are team developed. We are proud to have created a project that shows real promise in bettering how people use electricity in their lives.
What we learned
Many new skills! Each member of the team was able to apply our own unique knowledge-bases and backgrounds to various problems and challenges that we have never seen before. Integration. Understanding how the different parts of an entire project work in synergy was a truly valuable learning point for our team. Oftentimes, it is relatively easy to get separate individual components working; however, combining those individualized parts into one well-oiled machine is a difficult feat that we gained a better understanding of throughout this hackathon. One major learning opportunity with this was interfacing servers within and outside of our LAN. Task distribution. Managing the workload efficiently while considering the strengths and weaknesses of each team member was more difficult than initial thought. We learned that taking the time to thoughtfully assign each member to the best task for them at the beginning of the development process would set us up for success.
What's next for Power Saved Dollar Earned
For Power Saved, Dollar Earned there is a lot in the future! From the hardware side, we could integrate real smart devices instead of our model ones. The backend would benefit from more advanced scheduling algorithms that adapt to unexpected price fluctuations. Meanwhile, the frontend could become smoother and learn the user’s habits so that device scheduling is less manual. While homes are increasingly becoming more connected, businesses and cities are becoming connected as well. Our technology could be integrated in the commercial and civil sector for significant energy and monetary savings. As the country continues to shift more towards green energy, evening the power burden on supply will become even more relevant.