drafts:dynamic_ess
Differences
This shows you the differences between two versions of the page.
Both sides previous revisionPrevious revisionNext revision | Previous revision | ||
drafts:dynamic_ess [2024-03-05 16:47] – [Can I use it? | Eligibility Criteria] mvader | drafts:dynamic_ess [2024-09-16 13:59] (current) – dfaber | ||
---|---|---|---|
Line 7: | Line 7: | ||
* While taking grid limitations, | * While taking grid limitations, | ||
* When it can, it also considers the consumption and solar yield forecasts when scheduling. | * When it can, it also considers the consumption and solar yield forecasts when scheduling. | ||
- | |||
- | __NOTE: **Right now Dynamic ESS is still in beta and only available via the beta VRM.**__ | ||
Also check these community posts for remarks and further troubleshooting: | Also check these community posts for remarks and further troubleshooting: | ||
- | - [[https://community.victronenergy.com/ | + | - [[https://communityarchive.victronenergy.com/ |
- | - [[https://community.victronenergy.com/ | + | - [[https://communityarchive.victronenergy.com/ |
- | - [[https://community.victronenergy.com/ | + | - [[https://communityarchive.victronenergy.com/ |
- | - [[https://community.victronenergy.com/ | + | - [[https://communityarchive.victronenergy.com/ |
+ | - [[https:// | ||
==== Can I use it? | Eligibility Criteria ==== | ==== Can I use it? | Eligibility Criteria ==== | ||
Line 21: | Line 20: | ||
* Be an ESS; | * Be an ESS; | ||
* Not use Generator connection outside of power outages; | * Not use Generator connection outside of power outages; | ||
- | * Have a variable or dynamic energy contract | + | |
+ | |||
+ | For best results: | ||
+ | | ||
+ | * Use a supported energy meter (especially if your system setup has heavy loads (EV charger, heat pumps) in front of the Victron system). See [[drafts: | ||
Note: | Note: | ||
- | * //Only the dynamic energy contracts of the following countries are supported for day ahead prices: Austria, Belgium, Bulgaria, Croatia, Czech Republic, Denmark, Estonia, Finland, France, Germany, Greece, Hungary, Italy, Latvia, Lithuania, Luxembourg, Montenegro, Netherlands, | + | * Only the dynamic energy contracts of the following countries are supported for day ahead prices: |
* If you have fixed prices (which may differ weekends/ | * If you have fixed prices (which may differ weekends/ | ||
- | * **In case your system setup has heavy loads (EV charger, heat pumps) in front of the Victron system, there is a chance that the total load of the system exceeds what your main fuse can handle, causing it to break. See [[drafts: | ||
Line 43: | Line 45: | ||
Note that this is part is setting the capabilities, | Note that this is part is setting the capabilities, | ||
+ | |||
+ | Then you need to set the operating mode: | ||
+ | |||
+ | * Green mode: | ||
+ | * Only sell surplus solar back to the grid after consumption and battery charging | ||
+ | * Energy in battery is reserved for consumption | ||
+ | * Charge battery when prices are low | ||
+ | * Trade mode: | ||
+ | * Always sells surplus solar back to the grid | ||
+ | * Energy in battery is used to trade | ||
+ | * Charge battery when it is beneficial for trading | ||
+ | |||
+ | You can always adjust this mode at a later stage, so pick the one that best suits your needs. | ||
==== Step 2: Battery ==== | ==== Step 2: Battery ==== | ||
Line 55: | Line 70: | ||
In order to make the calculation for you, you can also fill out the invoiced battery cost and the estimated amount of cycles the battery can do. Together with the filled out battery capacity this will calculate the price for you. | In order to make the calculation for you, you can also fill out the invoiced battery cost and the estimated amount of cycles the battery can do. Together with the filled out battery capacity this will calculate the price for you. | ||
- | * //Configure Dynamic ESS SoC// - The Minimum Dynamic ESS SOC determines when Dynamic ESS will stop selling to the grid to leave enough energy for self-consumption. By not setting the Minimum Dynamic ESS SOC separately, Dynamic ESS will use the Minimum SOC instead. | ||
- | If you set the min soc using the slider, then save the form, it will not have been logged | + | To optimise battery life, it is recommended |
+ | |||
+ | If you enable | ||
==== Step 3 and 4: Buy and sell prices ==== | ==== Step 3 and 4: Buy and sell prices ==== | ||
For buying and selling you can either have dynamic (day ahead) prices or fixed prices (which can differ at different times / weekend vs weekdays). So first you need to fill out if you have fixed or dynamic pricing. | For buying and selling you can either have dynamic (day ahead) prices or fixed prices (which can differ at different times / weekend vs weekdays). So first you need to fill out if you have fixed or dynamic pricing. | ||
+ | |||
+ | UK Octopus users should fill out the dynamic prices (allowing them to fill out the account number and API key). Check [[drafts: | ||
=== Dynamic prices === | === Dynamic prices === | ||
- | Each country and provider uses their own formula for pricing. As the system grows, we will have more and more pre-filled out formula' | + | Each country and provider uses their own formula for pricing. As the system grows, we will have more and more pre-filled out formula' |
- | The buy price formula | + | Unfortunately getting the buy and sell formulas right isn't always straightforward. As all calculations, |
+ | We can give you some general rules and show you what other users have filled out as their formula. With these instructions, | ||
+ | |||
+ | Generalised over countries and providers a formula | ||
* p - the dynamic price / kWh | * p - the dynamic price / kWh | ||
* € 0.02 - energy provider profit share | * € 0.02 - energy provider profit share | ||
- | * € 0.13 - DSO working price + contributions/ | + | * € 0.13 - DSO working price + contributions/ |
* 21% - tax | * 21% - tax | ||
The sell price formula looks often identical and in common cases looks something like (// | The sell price formula looks often identical and in common cases looks something like (// | ||
- | With different providers, the formula | + | If the provider takes a 15 % percentage of the day ahead buy price and the taxes are 6%, the formula |
+ | This is a bit weird, because in case of negative buy prices, the provider is going to pay you extra for all of the energy. Knowing providers, | ||
+ | //(p + abs(p * 0.15)) * 1.06//, which makes sure that the provider takes its share, even when the prices are negative. | ||
+ | Also note that, if you don't use euro' | ||
+ | |||
+ | You can also get some ideas from [[https:// | ||
=== Fixed prices === | === Fixed prices === | ||
Line 85: | Line 111: | ||
==== Step 5: Confirmation ==== | ==== Step 5: Confirmation ==== | ||
- | In the final step you see the filled out values summarised. If you need adjustments, | + | In the final step you see the filled out values summarised. If you need to make adjustments, |
- | You can now go to the Installation’s Dashboard and click the button shown below to open the Controls menu. Under the ESS section, you will find Dynamic ESS controls. | + | Now navigate |
{{: | {{: | ||
==== What's next? | After configuration ==== | ==== What's next? | After configuration ==== | ||
- | As the configuration flow points out, you need to go to the // | + | As the configuration flow points out, you can navigate |
- | {{ :drafts:dynamic-ess-controls.png?nolink&200 |}} | + | {{ :drafts:dess-control.png?direct&200 |}} |
- | The //Auto// mode is the usual mode in which Dynamic ESS should operate. | + | The // |
- | If you want to disable Dynamic ESS, set the mode to //Off//. | + | |
- | Note that there will be shown an extra mode called | + | The state of Dynamic ESS will also show on the dashboard, just after the title. As a side note: If you run [[https://github.com/victronenergy/dynamic-ess|the Node-RED implementation of Dynamic ESS]], here it will show " |
====== Operational ====== | ====== Operational ====== | ||
==== Data Visualisations ==== | ==== Data Visualisations ==== | ||
- | |||
- | Note that there are still some issues with having the graphs show the data correctly. | ||
Once operational, | Once operational, | ||
Line 114: | Line 137: | ||
Below you first find a summary on the totals for the day and then there are three tabs which visualise: | Below you first find a summary on the totals for the day and then there are three tabs which visualise: | ||
- | * Earnings | + | * Costs and earnings |
* Schedule of battery and grid usage; | * Schedule of battery and grid usage; | ||
- | * All factors which are taken into account when scheduling | + | * All energy |
=== Costs and earnings === | === Costs and earnings === | ||
This tab begins with a summary that compares the system using Dynamic ESS with the system using regular ESS. | This tab begins with a summary that compares the system using Dynamic ESS with the system using regular ESS. | ||
- | |||
=== Schedule === | === Schedule === | ||
- | {{ :drafts:energy-prices.png? | + | |
+ | {{ :drafts:dess-buy-sell-prices.png? | ||
The prices graph is available on both this tab and the //Energy// tab. It shows the buy and sell prices per hour. | The prices graph is available on both this tab and the //Energy// tab. It shows the buy and sell prices per hour. | ||
Line 136: | Line 159: | ||
The prices and graph is the same one as on the // | The prices and graph is the same one as on the // | ||
- | {{ : | + | {{ : |
Then there is the energy graph, which summaries everything the system has done and is planning for. | Then there is the energy graph, which summaries everything the system has done and is planning for. | ||
Line 147: | Line 170: | ||
* If the suboptimal scheduling is in the future plan, it is probably due to the configurations set by the user. For instance, battery costs being high leads to limited usage of the battery. | * If the suboptimal scheduling is in the future plan, it is probably due to the configurations set by the user. For instance, battery costs being high leads to limited usage of the battery. | ||
* If the suboptimal scheduling is in the past, then it is mostly due to the inaccuracies that come from consumption or solar yield forecasts. It is important to note forecasting will always come with its inaccuracies and even with these inaccuracies at distinct hours, Dynamic ESS minimizes costs compared to Default ESS mode in the longer run. | * If the suboptimal scheduling is in the past, then it is mostly due to the inaccuracies that come from consumption or solar yield forecasts. It is important to note forecasting will always come with its inaccuracies and even with these inaccuracies at distinct hours, Dynamic ESS minimizes costs compared to Default ESS mode in the longer run. | ||
+ | * Make sure you have the formula' | ||
You might also want to read the chapter on [[# | You might also want to read the chapter on [[# | ||
- | If you feel like the behavior that you are observing is not explained by above points and you cannot find the answer in the [[# | + | If you feel like the behavior that you are observing is not explained by above points and you cannot find the answer in the [[# |
====== Implementation ====== | ====== Implementation ====== | ||
Line 201: | Line 225: | ||
==== Portugal ==== | ==== Portugal ==== | ||
- | At least one provider in Portugal only allows feeding in solar to the grid during daytime. This looks a lot like the German regulation. | + | At least one provider in Portugal only allows feeding in solar to the grid during daytime. This looks a lot like the German regulation. |
+ | |||
+ | In order to set this up, you can select charge or discharge restrictions | ||
==== UK ==== | ==== UK ==== | ||
- | We are aware that the provider Octopus offers day ahead pricing, but as these are not offered via the ENTSO-E API, we are unable to process those. Eventually we will probably support these prices, but will take some time. | + | In the UK, (fixed) prices |
+ | |||
+ | For dynamic prices in the UK, we are supporting users with Octopus contracts. Setting up Dynamic ESS in the UK is simple. All you need is your Octopus API key, which you can easily obtain by following the steps in [[https:// | ||
- | Also in the UK, (fixed) prices are known to change at the half hour instead of the whole hour (where our system works with). The work-a-round is to add the average price of in the overlapping hour. So if the price changes from 40 cents to 20 cents at 16.30, fill out a price of 30 cents from 16.00 - 17.00. | + | In addition to your API key, VRM will need your account number and information about your payment method |
- | Adding better support for this will eventually be done, but as this also affects graphs and the scheduling, it might take a while. | + | At the moment (4-9-2024) |
+ | If you’re living in the UK but don’t have a dynamic energy contract, you can still use Dynamic ESS with fixed prices. | ||
====== FAQ ====== | ====== FAQ ====== | ||
- | Missing a question? Please ask them in [[https://community.victronenergy.com/articles/232720/dynamic-ess-on-beta-vrm.html|the community forum]] with a remark that it should be added to the documentation and/or FAQ. | + | Missing a question? Please ask them in [[https://victron.discourse.group/c/products/dess/21|the community forum]] with a remark that it should be added to the documentation and/or FAQ. |
==== Q: Why can't I find dynamic ESS on VRM? ==== | ==== Q: Why can't I find dynamic ESS on VRM? ==== | ||
- | Right now (early | + | Right now (early |
For those of you who aren’t familiar with beta VRM, you can log in through [[http:// | For those of you who aren’t familiar with beta VRM, you can log in through [[http:// | ||
Line 287: | Line 316: | ||
==== Q: My country is not using the Euro, how do I switch currency? ==== | ==== Q: My country is not using the Euro, how do I switch currency? ==== | ||
- | At the moment that is not possible yet, but we are working on adding it to the general settings per site. | + | Under the //Settings -> General// part of your site, you can set your currency. |
==== Q: My providers changes price at the half hour instead of the full hour ==== | ==== Q: My providers changes price at the half hour instead of the full hour ==== | ||
Line 312: | Line 340: | ||
At the moment this is not possible. If we decide to add it, it will first be added to the [[https:// | At the moment this is not possible. If we decide to add it, it will first be added to the [[https:// | ||
- | ==== Q: Can you give an example with calculations? | ||
- | {{: | ||
- | Given a system at 15% SOC that has set the battery costs to 0.06 €/kWh, energy prices right now (11.00) set at € 0.29 and becoming € 0.40 this evening. Why would it feed into the grid already and not wait until the prices are higher? | ||
- | |||
- | The battery cost is € 0.06 per kWh. This means that for a cycle of battery usage to be useful (financially beneficial) the price difference should be at least € 0.12 cents per kWh (€ 0.06 for charging, and € 0.06 for discharging). € 0.40 - € 0.29 is € 0.11 which is below that, hence Dynamic ESS does not want to use the battery for this task, instead it is offloading the excess to the grid. | ||
==== Q: I am getting the alarm " | ==== Q: I am getting the alarm " | ||
+ | The cases this alarm can be triggered are: | ||
+ | * the system does not have a valid schedule for the current time frame | ||
+ | * the system clock is off | ||
+ | |||
In most cases your systems clock has drifted such that it cannot find a matching schedule. Usually the GX device will synchronize the time with a NTP server, but your network setup might refrain the GX device from reaching a time server. Please check your time setting / manually set it to the correct time. | In most cases your systems clock has drifted such that it cannot find a matching schedule. Usually the GX device will synchronize the time with a NTP server, but your network setup might refrain the GX device from reaching a time server. Please check your time setting / manually set it to the correct time. | ||
+ | Users running Dynamic ESS on a Raspberry Pi will see this error more frequently because the Raspberry Pi does not have a realtime clock. Which means that it usually takes a while for these to get back on track with the correct time after a boot. The alarm should disappear once the time is correct again. | ||
This alarm can also occur when DESS automatically switches to ESS because the SOC is below the min SOC level. | This alarm can also occur when DESS automatically switches to ESS because the SOC is below the min SOC level. | ||
- | |||
==== Q: I am getting the alarm " | ==== Q: I am getting the alarm " | ||
This probably means that you once activated Dynamic ESS and are no longer using it. In order to fully disable it, you need to set the `com.victronenergy.settings`, | This probably means that you once activated Dynamic ESS and are no longer using it. In order to fully disable it, you need to set the `com.victronenergy.settings`, | ||
Line 340: | Line 367: | ||
Decreasing the minimum SOC does not affect the performance of DESS negatively. However, when the minimum SOC is increased (above the current SOC), it might require the battery to be charged manually since Dynamic ESS is not designed to operate when current SOC is below the minimum. | Decreasing the minimum SOC does not affect the performance of DESS negatively. However, when the minimum SOC is increased (above the current SOC), it might require the battery to be charged manually since Dynamic ESS is not designed to operate when current SOC is below the minimum. | ||
+ | |||
+ | ==== Q: The energy graph is showing incorrect data ==== | ||
+ | |||
+ | Sometimes the graph shows that energy was taken from the grid. When looking at the installation data graphs, it shows that the energy actually came from PV yield. This is caused by a known misleading assumption with the Energy graph: It assumes if there is more production than consumption, | ||
+ | |||
+ | This is quite an assumption but this is how DESS considers it internally, so that’s why the visuals reflect it that way. If we do not have that assumption, the energy graph would be even more complicated. If you want to know the exact source of the energy, you should look at the installation data graphs (grid, solar and consumption). | ||
+ | |||
+ | ==== Q: I can't find the controls button on the dashboard ==== | ||
+ | |||
+ | You probably have //Realtime updates// switched off. You can switch it on via //Settings -> General -> Realtime updates//. | ||
+ | |||
+ | Note that the dashboard should show: //Last updated:// **Realtime** | ||
+ | |||
+ | ==== Q: I get the error message " | ||
+ | |||
+ | This error can happen when the Dynamic ESS system starts before we were able to communicate the battery capacity from VRM to the GX device. It will go away as soon as you restart Dynamic ESS or the GX device. |
drafts/dynamic_ess.1709653669.txt.gz · Last modified: 2024-03-05 16:47 by mvader