Few time ago I decided to put some efforts for building my small solar power plant. The main purposes were to learn little bit more about solar technologies and as a result to get a setup which can handle following use-cases:
- To power outdoor lighting from batteries during the night and charge battery from solar during daytime;
- To use an outdoor power outlet to charge my Ryobi One+ tools;
- Backup power in case of rare outages.
The calculation was rather simple because outdoor lighting was build using LED lights with total required power of 110W. The average lighting time is 8 hours, so I need 0, 9 kWh storage system. My Ryobi One+ battery charger is 55W and if I would like to connect two of them, I need around 110W during daytime + reserve to charge the batteries.Before I started to choose equipment, I needed to take into account following points:
- The system should be compact as I wanted to use outdoor enclosure rather than put it inside my house;
- There is a period during the year when there is not enough sun. Therefore I need batteries which can be charged from the grid as an option;
- The equipment should stay fine when it’s below 0°C temperatures.
The first challenge was to find the right place to put my solar pannels on. The trial was done on the ground with 60° angle as recommended for my region but it was not conviniet, so i've decided to go with mounting pannels on the fence around my land - luckily we have side which looking directly to the south.
PV pannels setup looks like this:
The next step was to mount inverter and batteries. It was also rather long story with a lot of cabling and boring visits to the shops :)
I decided to go with hybrid inverter which combines solar charge controller, battery inverter and grid inverter. So in general it is like UPS with additonal solar input. The advantage is compact size and possiblity to select energy source for battery charge and output to the load.
You can find many of such inverters on the market under different names. What is unites all of them is similar communication protocol with PC which is called "Watchpower".
Here is final result:
Very helpful resource for this inverters is forum https://forums.aeva.asn.au/viewtopic.php?f=64&t=4332.
As you may see this system works fine but the biggest problem is Watchpower software which is outdated, It has lack of functionality for keeping data and working with it. Moreover it requires a separate computer to be run which was not possible in my case due to the lack of the space. Also, I wanted to monitor the inverter with the mobile app and not to use an LCD of inverter or a connected computer during weekends to tune my system.
Inverter comes with RS232 serial interface so I starter to look for different solutions in the internet and found open source script from Enapter here: https://marketplace.enapter.com/blueprints/solar_inverters/mpp_solar
It is recommend to buy Enapter ENP-RS232 module to run the script but at the same time it is available free and open source solution from them which is called Enapter UCM KIT: https://developers.enapter.com/docs/tutorial/ucm-kit/introduction and it is based on well known ESP32 Wi-Fi and Bluetooth chipset.
All schematics are free and open source and available at GitHub: https://github.com/Enapter/ucm-kit-open-hardware
So i've decided to go with free solution to monitor the inverter from Enapter.
I've ordered several Enapter KIT-232-485-CAN boards from JLCPCB using this guide: https://developers.enapter.com/docs/tutorial/ucm-kit/ordering
I run into the problem that CAN chipset was not available at the moment of order and I just selected option not mount it as only RS232 interface was needed for this project.
I recieved the PCB in few weeks and luckily I had spare ESP32 developer kit board, so my finall assembly looks like this:
To run the "Blueprint" (Lua script) Enapter firmware is required. It is must be installed using Enapter Flasher application. I downloaded it on my Mac with homebrew:
brew install enapter/tap/flasher
there are Linux version available as a snap and AppImage as well as Windows application.
More instructions can be found here: https://developers.enapter.com/docs/tutorial/ucm-kit/flasher#select-device
The most important part is last step of the flashing procedure as it shows up a QR code which is required for pairing your communication module with Enapter's Cloud.
After installing the app from Google Play on my android phone, account creation, adding of new Site and scanning the QR code above I was able to add device to the cloud with simple steps.
I was asked to put my Wi-Fi settings for ESP32. Here I made a mistake as my phone was connected to 5 GHz network and I automatically added it's settings. At the same time you need to use 2.4 GHz network as ESP32 doesn't support 5 GHz.
On the last step I was advised to choose the correct "Blueprint" for my Inverter. Blueprint is acutually open-source Lua script and YAML declaration file package available at GitHub. It define how communication module recieves data from inverter, which values to collect in the cloud and how to show them in mobile application. It is possible to make changes in those files to adopt to your needs but for my case everything was enough for monitoring and changing parameters of charging and output sources.
The next and probably the most complicated step was to make connection cable from inverter to communication module. The key knowledge here is that in RS232 connection TX from one side must be connected to RX of the other side.
I found document in the internet which explains MPP Solar connection cable scheme:
MPP RJ45 pin 1 (RX) -> ENP KIT TX
MPP RJ45 pin 2 (TX) -> ENP KIT RX
MPP RJ45 pin 8 -> ENP KIT GND
After making a cable and connecting everything, finally I was able to monitor my inverter with Enapter App.
As a result I am happy with this solution as well as I find it great that it is possible to modify the view of the Dashboard according to my needs and integrate other devices at my home using scripts from Enapter Marketplace.
Comments