An open API service indexing awesome lists of open source software.

https://github.com/jollyjinx/solarcharger

Charge your car when the sun shines enough and the house it not using too much.
https://github.com/jollyjinx/solarcharger

Last synced: 2 months ago
JSON representation

Charge your car when the sun shines enough and the house it not using too much.

Awesome Lists containing this project

README

        

# SolarCharger
Smart charge your ev-car to a percentage when the sun shines enough and the house it not using too much.

## Features
- low system requriements - runs on a router
- self contained, no need to install additional software/modules
- website for overview, changing settings and manual starting a charge
- charge your car only to a specific percentage (not full)
- when over 70% limit charge car until 90% to not waste solar energy
- continous adoption to current pv generation

## Overview
The script reads the live values from the pv-system, current house consumption, battery state of the car and charges the car according to the settings done on the website it generates. The generated website looks like this:

A typical day (with charging in the afternoon) looks like:

## Supported Systems

The system uses classes for accessing the various hardware devices. Currently the following classes are included:

- generic Modbus over Ethernet access class
- SMAReader a class for specifying which modbus values represent solar inverter and household state
- PhoenixCharger a modbus extension to specify which values are which on the phoenix charger
- BMWConnector reads in json file from website to know if the car is at home and percentage of the battery if not used it will charge to 100%

The system generates a website (default is http://localhost:5145 ) which lets you set the default settings.

I do have a BMW and if that's hat home it only gets charged when it's below a set state e.g. 80%. I do have a 70% feed in rule so I charge the car regardless of it's charging state if the solar system would be cut down to 70% otherwise. It will charge then with 6A and only until 90%.

## Configuration

My scripts support --help as commandlineoption as well as configuration via config file. To try out if it's seeing the solar inverter correctly try out the following:

perl solarlogger.perl --SMAAddress=192.168.10.10

The solarcharger script is named solarcharger.perl and requires at least two things SMAAddress and PhoneixAddress so the simples of calls would be

perl solarcharger.perl --SMAAddress=192.168.10.10 --PhoenixAddress=192.168.10.11

Change the config.ini file to use the ipaddresses/names for your setup. Start the script for testing with perl startcharger.perl --debug to see what's happening when you have problems.