Predictions with error
Chosen hours to charge 1
Chosen hour to charge 2
App - Button: Switch on and off the plug
App - Scheduled: Program when it switches on and off
App - Eco mode: Tell him how much it takes to charge and when you want it to be charged. It calculates the optimum schedule.
There are several reasons:
A friend that studies about renewable energies told us that there is a problem with the difference in loads in the network because there are peaks in demand and this is not good. Connecting devices to the network when anybody is using it would help with this issue in order to flatten the demand throughout the day.
The rise of the price of electricity in the last months made us realize that it would be a very good idea if you could charge your devices when the price of the kilowatt/hour is low.
What it does
The project has three components:
The server (AWS) performs several tasks: it calculates daily the prediction of the time series using R with data downloaded from a public database. It also manages the connection of the module and the app. It processes the data coming from the app and sends commands to the module to switch the plug on or off. It uses an algorithm that minimizes the expenses to charge the device based on the predicted cost of the kilowatt/hour.
The intelligent plug has a wifi module that connects to the server and receives commands to switch on/off the plug.
An app that allow the user to control de plug and also program the charging schedule* of the device connected to the plug.
How we built it
We welded all the components in a board and programmed the module (ESP8266) with C. It runs a simple tcp client that is always connected to the cloud (server).
The main script in the server (Python) will manage the connections and also execute a shell script and an r script that will download the data from the past days and calculate using seasonal ARIMA time series models.
The application is programmed in Android Studio.
Challenges we ran into
Testing the system in a different time scale so we could check that everything works.
Generate a working prediction algorithm in a language and be force to rewrite it using another language (the server couldn't run it).
Lear how to use amazon web services (we had problems with opening the connection to TCP traffic).
Learning to program android interface.
Problems with the welding of the components.
Accomplishments that we're proud of
Finishing everything in time, we managed to finish everything we wanted to do.
Being able to connect to the AWS server and also run there the predicting algorithms (we knew how to do it in Matlab but not in R).
What we learned
Amazon web services
Use relays (electronics)
What's next for Smart Charger
- Improve the algorithms in the cloud, the interface of the application and the protocol between app and server.