Skip to content

Commit

Permalink
Adapt images to work with docfx logic.
Browse files Browse the repository at this point in the history
  • Loading branch information
benborra committed Oct 13, 2023
1 parent 845a481 commit 381b424
Show file tree
Hide file tree
Showing 17 changed files with 18 additions and 18 deletions.
36 changes: 18 additions & 18 deletions docfx_project/blogs/solar-boiler/index.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,8 +2,7 @@

*tl;dr we're automatically charging our boiler with excess solar power. See how, go to [the setup](#the-setup)*

![House with solar panels on it's roof](<images/iStock-182819508 solar roof.jpg>)
![House with solar panels on it's roof](<images/Stroke.png>)
![House with solar panels on it's roof](<~/../../../images/blogs/solar-boiler/iStock-182819508 solar roof.jpg>)

## Why

Expand Down Expand Up @@ -37,23 +36,23 @@ For this, we basically need 3 things:
### Real time power meter

For a real time power meter there are a lot of options. Fortunately for us, the digital power meter comes with a [P1 port](https://nl.wikipedia.org/wiki/P1-poort) which is basically a communication standard to turn your digital meter into a smart meter. For this I'm using the [Home Wizard P1 wifi meter](https://www.homewizard.com/shop/wi-fi-p1-meter/) for €30. It's one of the cheaper options, doesn't require a subscription, you can access the data locally, and it's easy to integrate with other systems. There's also an app that allows you to see your consumption in real time any where in the world, and see your historical data.
![P1 meter with app](<images/P1_meter_app.png>)
![P1 meter with app](<~/../../../images/blogs/solar-boiler/P1_meter_app.png>)

### Switching the boiler

For this I'm using a [Shelly 1PM](https://www.shelly.com/en-be/products/shop/shelly-plus-1-pm-2-pack/shelly-plus-1-pm) which costs around €20. Special note here, thought you could use again close to any shelly that you may have lying around. Not all of them have the switching capacity for the power that a boiler utilizes. Be sure to check how large the power draw of your 'battery' is, and how many phases that you need to be able to switch.
Boilers are usually controlled by a programmable clock. If you want to add the shelly, just wire the switch of the Shelly to be in parallel with switch of the clock. This way you're night time charging will always remain working as a fall back.
If this all means nothing to you, maybe best to contact an electrician to help you out.
If you want to completely manage the night time charging by the shelly, this can also be integrated into the system. Go to the section [night time charging](#night-time-charging) for more information.
![Alt text](images/Shelly_Plus1PM_x1.png)
![Alt text](~/../../../images/blogs/solar-boiler/Shelly_Plus1PM_x1.png)

### Controller

Finally, where everything comes together, the brains of the operation. For this I'm using [Home Assistant](https://www.home-assistant.io/) which is basically a free open source smart home system. It's fairly easy to setup, and can run on an large number of different devices. In my case I'm using a raspberry Pi 3 that I had laying around. Thought it's at the time of writing quite pricy, they used to cost around €35 back when I purchased mine. The prices have gone down already a bit, and I'm sure they'll continue to do so. You can also run it on a virtual machine, or even in a docker container. There are a lot of options here.

**The most important part is that the switch and power meter can be [integrated with home assistant](https://www.home-assistant.io/integrations).**

![Homeassistant](images/hero_screenshot.png)
![Homeassistant](~/../../../images/blogs/solar-boiler/hero_screenshot.png)

## The Configuration

Expand All @@ -80,19 +79,19 @@ We also don't want to put unnecessary strain on the boiler with cycling it on an
Feel free to tweak these values to your liking.
The P1 meter has 2 power meters for peak and off peak hours, so we'll need to add 2 triggers, one for each power meter.
Your trigger should look something like this:
![on trigger for boiler](<images/on_trigger.png>)
![on trigger for boiler](<../../../images/on_trigger.png>)

Finally, add the action to enable the boiler, select the device and set the state to 'on'.
Add an action for a Device, select your boiler and pick the 'Turn on' action.
Your action should look something like this:
![Action to turn on boiler](images/on_action.png)
![Action to turn on boiler](~/../../../images/blogs/solar-boiler/on_action.png)

#### Auto off

Next, we do the same thing again for the off trigger.
Here we can set the power draw to 0, or a bit below if you want some margin for spikes, or even a bit over zero in case you're OK with some power in peak hours for the benefit of using more, cheaper, solar power. In my configuration, I've opted for 50 watts below zero. In addition to a 45 second duration to once again prevent the boiler from toggling on and off too much.
And again, we'll need to add 2 triggers, one for each power meter.
![Off trigger of the boiler](images/off_trigger.png)
![Off trigger of the boiler](~/../../../images/blogs/solar-boiler/off_trigger.png)

And that's it! You should be good to go, now only to wait for some sun and you're charging your boiler.

Expand All @@ -101,10 +100,10 @@ And that's it! You should be good to go, now only to wait for some sun and you'r
### Night time charging

Usually these boilers are set to charge at night when the energy prices are low. If you followed the guid along you should have wired the shelly in parallel with the clock. This means that the clock will still be able to charge the boiler at night. But if you want to manage this yourself, you can also add a trigger for this. For this you'll need to add a trigger for the time, and set it to the time that you want to start charging. In my case I've set it to 2:00am. And then add an action to turn on the boiler. This should look something like this:
![night time charging enabled](images/night_time_charge_trigger.png)
![night time charging enabled](~/../../../images/blogs/solar-boiler/night_time_charge_trigger.png)

As an action, add a device, select your boiler and set the state to 'on'. After this, delay for the time your boiler to charge at night, and a final action to turn off the boiler. This should look something like this:
![Action to trigger off boiler](images/turn_off_boiler_trigger.png)
![Action to trigger off boiler](~/../../../images/blogs/solar-boiler/turn_off_boiler_trigger.png)

Personally, I let this setup up until now run for a couple of days to be sure that everything was working as expected. I didn't want to risk burning expensive electricity because I made a mistake, or not having any hot water in the morning because my automation didn't work.

Expand All @@ -118,7 +117,7 @@ So I've added a check to see if the boiler was charged completely during the day

For the solar charging completed check, I first added a helper. This is basically a variable that you can set in home assistant. For this I've added a helper of the type 'input boolean'. This is basically a true/false variable that you can set in home assistant. I've called mine 'Solar Charging boiler Bathroom Completed Today'. You can add a helper by going to the 'settings' page, 'Devices & Services' and opening the 'helpers' page. Here you can create a new helper by clicking the 'Create helper' in the bottom right corner.
And create a new 'Toggle'
![Toggle for solar completed charging](images/Solar_complete_toggle.png)
![Toggle for solar completed charging](~/../../../images/blogs/solar-boiler/Solar_complete_toggle.png)

Next we'll need to create an automation to enable the toggle to indicate that solar charging was done for that day. We can do this with the power changes for the the shelly, this indicates the power flowing through your switch, or not. If the switch is closed, but no power is flowing, indicates to use that the heat of the boiler has reached it's target.

Expand All @@ -128,25 +127,26 @@ Require that the power consumption needs to be below 10, or at least a lot lower
I also added a duration to ensure that the boiler was definitely fully charged. I wanted to prevent the switch from closing, it taking a couple of seconds for the power monitoring to kick in, and immediately trigger the action toggle the helper.

The resulting trigger looks like this:
![Trigger for solar charge completed detection.](images/solar_completed.png)

![Trigger for solar charge completed detection.](~/../../../images/blogs/solar-boiler/solar_completed.png)

As an action, I turn off the boiler, and enable the toggle to track Charge competed.

![Turn off boiler and enable toggle](images/charge_completed_flag.png)
![Turn off boiler and enable toggle](~/../../../images/blogs/solar-boiler/charge_completed_flag.png)

Before adding this as a condition, we want to make sure that the toggle is being reset daily. As we don't want to charge our boiler at night if the day before it was completely charged by the solar power, we can add this as a final step to our night time automation.

In the automation created in the [night time charging](#night-time-charging), add an addition action at the end to disable the helper toggle again.

![Disable completed charge toggle](images/disable_toggle_helper.png)
![Disable completed charge toggle](~/../../../images/blogs/solar-boiler/disable_toggle_helper.png)

If you're not using it, or if you want to ensure that you're boiler heats up again at night, add a new timed automation at the time of your liking.

Finally, we have a true/false property that toggles if the solar panels completely charged the boiler. We can start adding this into our 'On' triggered automations.
First, let's add it to the nightime charging now that we already have this opened.

In the Conditions section, add a new check to require the Completed toggle to be 'Off'. Again, this will only be enable if you've already got a completely charge boiler from the solar charging the day before.
![Solar Charged condition](images/Solar_charge_completed_condition.png)
![Solar Charged condition](~/../../../images/blogs/solar-boiler/Solar_charge_completed_condition.png)

And add the same check to the 'On' trigger automation for your solar panel boiler charging.

Expand Down Expand Up @@ -175,8 +175,8 @@ This because the shower/bath is being fed by that boiler and the only real spike

So for this, we again create a new automation, set the humidity sensor as a trigger. For this I need my bathroom to have a humidity of above 75% for 30 seconds. This than turns off the Solar charge Completed check, resetting the entire system and allowing the night time charger, or solar charging to work again.

![Solar charge completed reset trigger with humidity](images/solar_charge_reset_humidity.png)

![Solar charge completed reset trigger with humidity](~/../../../images/blogs/solar-boiler/solar_charge_reset_humidity.png)

The action to turn off the toggle:
![Turn off solar charging completed toggle](images/turn_off_solar_charge_completed_toggle.png)

![Turn off solar charging completed toggle](~/../../../images/blogs/solar-boiler/turn_off_solar_charge_completed_toggle.png)

0 comments on commit 381b424

Please sign in to comment.