AASun solar diverter

AASun : Multi-channel solar diverter

Here is how I made my multi-channel solar diverter which I named AASun.

This project is on Github.

Why a solar diverter?

A solar installation can be used in “Self-Consumption”, meaning that the electricity produced is used locally by the producer rather than being sold. Without specialized equipment, consumption is uncertain:

  • Part of the production is used for the daily consumption of the home: refrigerator, VMC, central heating circulator, etc.
  • At certain times, several pieces of equipment can begin to consume at the same time and the total of their consumption exceeds the photovoltaic production.
  • At other times there are few consumers and the surplus photovoltaic production is injected into the public network (without payment).

To best manage the photovoltaic electricity produced, we can use an energy diverter. This diverter will direct the available energy to several devices based on measurements of consumed and produced energy , the environment (temperature sensors, thermostat contact, etc.), and rules defined by the user.

After installing a few solar panels, I decided to make my solar diverter based on an STM32G071CB. The genesis of this router, its configuration and its use are explained in the document Doc/AASun.pdf

Main characteristics :

  • Designed to be placed on a DIN rail support
  • STM32G071CB microcontroller and W25Q64 external flash
  • 1.3” OLED display and 2 buttons to navigate the pages (Can also use a 0.96 OLED display)
  • Wired network interface and WIFI, HTTP server for monitoring, configuration of the diverter and routing/forcing rules, display of logs.
  • 2 to 4 current sensors (CT).
  • 2 PWM routing outputs for solid state relay (SSR).
  • 1 230V 3A relay on the card.
  • 1 auxiliary digital output that can control another relay.
  • 2 logic inputs (thermostat, push button, peak/off-peak hours, etc.).
  • 2 pulse counting inputs (up to 30V). If these inputs are not used for counting they can be used as logic inputs.
  • 0 to 4 DS18B20 temperature sensors.
  • 2 routing rules.
  • 8 forcing, each with a start rule and a stop rule.
  • Priority management of routings and forcing.
  • Several forcing modes: PWM, standard, burst.
  • Daily energy history over 31 days. History of powers averaged per ¼ hour over 31 days. The 9 values taken into account are: CT1 to CT4 (CT1 separates import and injection), estimated routing 1 and 2, pulse counters 1 and 2.
  • Anti-legionella management.
  • Linky meter interface.
  • Console interface via UART or Telnet (network).

The diverter currently comes in the form of a prototype with removable parts to facilitate development and evaluations:

The view above shows the prototype that implements all of the planned functionality.

The next step is the design of a new smaller printed circuit, bringing together all the components and implementing all the modifications made during development.

The project is available on Github with source code, schematics and documentation.

On Github the project is documented in French because it was designed according to the characteristics of the Linky meter which is specifically French. The diverter can, however, be used directly on any 50Hz electrical network.
The source code is commented in English.

Leave a Comment

Your email address will not be published. Required fields are marked *

Solve : *
20 × 14 =