biemond / solaredge.modbus

Homey Solaredge modbus app
GNU General Public License v3.0
8 stars 9 forks source link

App werkt niet op een oude homey. #94

Open Bigboedha opened 3 months ago

Bigboedha commented 3 months ago

Hoi, Ondanks dat er staat dat de app ook werkt op een early Homey van 2016 werkt dit niet. Nu wil ik eventueel wel een nieuwe homey kopen. Ik heb alleen wel een paar vragen over de app.

Ik heb een Solaredge Storedge met een 13,8 kw accupack. De inlinemeter van Solaredge, die draadloos is aangesloten. Gaat het dan werken? Of moet de inlinemeter via modbus en dan bekabeld?

Verder is het mogelijk om met de app de ontlaad snelheid van de accu's aan te passen? Nu wordt er steeds ontladen met 5 kw per uur.

gr Alex

biemond commented 3 months ago

hey,

kun je mij een report sturen? eens kijken wat het is. krijg je nog wel homey updates binnen en op welke versie draai je nu.

draadloos is lastig met timeouts , modbus en een kabel op de meter werkt beter. het is niet al te moelijk.

ja met remote control kan je van alles regelen zoals charge / discharge van je batterij. export / import restricties , laden vanuit grid.

Screenshot 2024-09-01 at 12 25 48
Bigboedha commented 3 months ago

Homey Versie 0.0.0-update.inc zeg de App. App versie is 8.4.0.1538 Node.js-versie v12.22.11

Als ik probeer de Soloredge app te installeren geeft de Homey app alleen op Homey Pro.

Wat voor een report zou je willen hebben? Ik zie alleen een code van een diagnostisch rapport B30664CF.

Heb de homey weer uit de motteballen gehaald. Deze heeft al een tijdje niks gedaan. Eigenlijk alleen omdat ik je app zag voor de solaredge.

biemond commented 3 months ago

ok , ja het is geen pro. weet niet waar je woont maar je kan mijn homey pro 2019 overnemen voor 50 euro. Je kan ook Home assistance ergens installeren en met hun flows (ietjes moeilijker , maar wel gratis)

ook wel handig als je advanced flows bij koopt, die oude manier van flows is lastig.

Bigboedha commented 3 months ago

Bedankt voor het aanbod. Maar ik voor een nieuwe. Wordt een project voor de winter.

Op zo 1 sep 2024 16:59 schreef Edwin Biemond @.***>:

ok , ja het is geen pro. weet niet waar je woont maar je kan mijn homey pro 2019 overnemen voor 50 euro. Je kan ook Home assistance ergens installeren en met hun flows (ietjes moeilijker , maar wel gratis)

ook wel handig als je advanced flows bij koopt, die oude manier van flows is lastig.

— Reply to this email directly, view it on GitHub https://github.com/biemond/solaredge.modbus/issues/94#issuecomment-2323379943, or unsubscribe https://github.com/notifications/unsubscribe-auth/BK5XI2RMP7ZHMEF4B3NOX3TZUMTUDAVCNFSM6AAAAABNOH66L6VHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDGMRTGM3TSOJUGM . You are receiving this because you authored the thread.Message ID: @.***>

biemond commented 2 months ago

ja met een nieuwe krijg je advanced flows en doe 3 draadjes van een ethernet kabel voor de meters naar inverter aansluiting.

Bigboedha commented 2 weeks ago

Hoi, Het project is gestart, de Homey is binnnen en de 3 draadjes zijn van de Solaredge Inline Meter naar de omvormer getrokken.

Alleen ik begrijp de flows niet helemaal. Ik zit bij Tibber als mijn stroomleverancier. Dit heeft ook een app in de Homey omgeving. Nu wil ik graag dat mijn accu's gaan laden als de stroom bij Tibber goedkoop is en ontladen als de stroom duur is of als er vraag is in huis.

Heb je misschien een voorbeeld van een flow structuur hoe ik dit moet opzetten?+

Moet je de flow's trouwens apart starten of gaat dit automatisch?

Alvast bedankt,

mvg Alex Ankersmit

Op wo 4 sep 2024 om 12:06 schreef Edwin Biemond @.***>:

ja met een nieuwe krijg je advanced flows en doe 3 draadjes van een ethernet kabel voor de meters naar inverter aansluiting.

— Reply to this email directly, view it on GitHub https://github.com/biemond/solaredge.modbus/issues/94#issuecomment-2328444310, or unsubscribe https://github.com/notifications/unsubscribe-auth/BK5XI2RL477BMADY3AP77DDZU3LTRAVCNFSM6AAAAABNOH66L6VHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDGMRYGQ2DIMZRGA . You are receiving this because you authored the thread.Message ID: @.***>

biemond commented 2 weeks ago

sorry everyone is doing this differently.

some do hour by the power for the prices and after that do some flow actions.
if you do anything automatically like checking some power etc and then do something, make sure you use average values. else maybe you trigger too many actions on your inverter.

basically solaredge has 2 actions , general 1 like disable , max self consumption or remote if you want to control charging , you need to put it in remote and than select charge from grid. besides this you can also the charging or discharging . Every action is max for 6 hours and then it goes back to the default.

so with advanced flows try some actions to see how it works .

biemond commented 2 weeks ago

let me find the modbus doc with instructions

biemond commented 2 weeks ago
      if (type == 'storagecontrolmode') {
        // 0 – Disabled
        // 1 – Maximize Self Consumption – requires a SolarEdge Electricity meter on the grid or load connection point
        // 2 – Time of Use (Profile programming) – requires a SolarEdge Electricity meter on the grid or load connection point 3 – Backup Only (applicable only for systems support backup functionality)
        // 4 – Remote Control – the battery charge/discharge state is controlled by an external controller
        const storagecontrolmodeRes = await client.writeSingleRegister(0xe004, Number(value));
        console.log('controlmodewrite', storagecontrolmodeRes)
      }

      if ( type== 'storageacchargepolicy') {
        // 0 – Disable
        // 1 – Always allowed – needed for AC coupling operation. Allows unlimited charging from the AC. When used with Maximize self-consumption, only excess power is used for charging (charging from the grid is not allowed).
        // 2 – Fixed Energy Limit – allows AC charging with a fixed yearly (Jan 1 to Dec 31) limit (needed for meeting ITC regulation in the US)
        // 3 – Percent of Production - allows AC charging with a % of system production year to date limit (needed for meeting ITC regulation in the US)
        const storageacchargepolicyRes = await client.writeSingleRegister(0xe005, Number(value));
        console.log('storageacchargepolicy', storageacchargepolicyRes)
      }

      if (type == 'storagedefaultmode') {
        const storagedefaultmodeRes = await client.writeSingleRegister(0xe004, Number(4));
        console.log('controlmodewrite', storagedefaultmodeRes)

        // set timeout to 6 hours, done in seconds
        const remoteTimeout = await client.writeMultipleRegisters(0xe00b, [ Number(21600), 0 ]);
        console.log('remote_control_command_timeout', remoteTimeout);
        // 0 – Off
        // 1 – Charge excess PV power only.
        // Only PV excess power not going to AC is used for charging the battery. Inverter NominalActivePowerLimit (or the inverter rated power whichever is lower) sets how much power the inverter is producing to the AC. In this mode, the battery cannot be discharged. If the PV power is lower than NominalActivePowerLimit the AC production will be equal to the PV power.
        // 2 – Charge from PV first, before producing power to the AC.
        // The Battery charge has higher priority than AC production. First charge the battery then produce AC.
        // If StorageRemoteCtrl_ChargeLimit is lower than PV excess power goes to AC according to NominalActivePowerLimit. If NominalActivePowerLimit is reached and battery StorageRemoteCtrl_ChargeLimit is reached, PV power is curtailed.
        // 3 – Charge from PV+AC according to the max battery power.
        // Charge from both PV and AC with priority on PV power.
        // If PV production is lower than StorageRemoteCtrl_ChargeLimit, the battery will be charged from AC up to NominalActivePow-erLimit. In this case AC power = StorageRemoteCtrl_ChargeLimit- PVpower.
        // If PV power is larger than StorageRemoteCtrl_ChargeLimit the excess PV power will be directed to the AC up to the Nominal-ActivePowerLimit beyond which the PV is curtailed.
        // 4 – Maximize export – discharge battery to meet max inverter AC limit.
        // AC power is maintained to NominalActivePowerLimit, using PV power and/or battery power. If the PV power is not sufficient, battery power is used to complement AC power up to StorageRemoteCtrl_DishargeLimit. In this mode, charging excess power will occur if there is more PV than the AC limit.
        // 5 – Discharge to meet loads consumption. Discharging to the grid is not allowed. 
        // 7 – Maximize self-consumption
        const remotecontrolwrite = await client.writeSingleRegister(0xe00d, Number(value));
        console.log('remotecontrolwrite', remotecontrolwrite);
      }
Bigboedha commented 2 weeks ago

Nu ben ik echt een leek op dit gebied. Ik heb de bovenstaande tekst gecopieerd en in de Homey gezet als script. Zoals ik het zie, moet ik waar value staat een getal in vullen wat vermeld staat erboven achter de //.

Op ma 18 nov 2024 om 14:16 schreef Edwin Biemond @.***>:

  if (type == 'storagecontrolmode') {
    // 0 – Disabled
    // 1 – Maximize Self Consumption – requires a SolarEdge Electricity meter on the grid or load connection point
    // 2 – Time of Use (Profile programming) – requires a SolarEdge Electricity meter on the grid or load connection point 3 – Backup Only (applicable only for systems support backup functionality)
    // 4 – Remote Control – the battery charge/discharge state is controlled by an external controller
    const storagecontrolmodeRes = await client.writeSingleRegister(0xe004, Number(value));
    console.log('controlmodewrite', storagecontrolmodeRes)
  }

  if ( type== 'storageacchargepolicy') {
    // 0 – Disable
    // 1 – Always allowed – needed for AC coupling operation. Allows unlimited charging from the AC. When used with Maximize self-consumption, only excess power is used for charging (charging from the grid is not allowed).
    // 2 – Fixed Energy Limit – allows AC charging with a fixed yearly (Jan 1 to Dec 31) limit (needed for meeting ITC regulation in the US)
    // 3 – Percent of Production - allows AC charging with a % of system production year to date limit (needed for meeting ITC regulation in the US)
    const storageacchargepolicyRes = await client.writeSingleRegister(0xe005, Number(value));
    console.log('storageacchargepolicy', storageacchargepolicyRes)
  }

  if (type == 'storagedefaultmode') {
    const storagedefaultmodeRes = await client.writeSingleRegister(0xe004, Number(4));
    console.log('controlmodewrite', storagedefaultmodeRes)

    // set timeout to 6 hours, done in seconds
    const remoteTimeout = await client.writeMultipleRegisters(0xe00b, [ Number(21600), 0 ]);
    console.log('remote_control_command_timeout', remoteTimeout);
    // 0 – Off
    // 1 – Charge excess PV power only.
    // Only PV excess power not going to AC is used for charging the battery. Inverter NominalActivePowerLimit (or the inverter rated power whichever is lower) sets how much power the inverter is producing to the AC. In this mode, the battery cannot be discharged. If the PV power is lower than NominalActivePowerLimit the AC production will be equal to the PV power.
    // 2 – Charge from PV first, before producing power to the AC.
    // The Battery charge has higher priority than AC production. First charge the battery then produce AC.
    // If StorageRemoteCtrl_ChargeLimit is lower than PV excess power goes to AC according to NominalActivePowerLimit. If NominalActivePowerLimit is reached and battery StorageRemoteCtrl_ChargeLimit is reached, PV power is curtailed.
    // 3 – Charge from PV+AC according to the max battery power.
    // Charge from both PV and AC with priority on PV power.
    // If PV production is lower than StorageRemoteCtrl_ChargeLimit, the battery will be charged from AC up to NominalActivePow-erLimit. In this case AC power = StorageRemoteCtrl_ChargeLimit- PVpower.
    // If PV power is larger than StorageRemoteCtrl_ChargeLimit the excess PV power will be directed to the AC up to the Nominal-ActivePowerLimit beyond which the PV is curtailed.
    // 4 – Maximize export – discharge battery to meet max inverter AC limit.
    // AC power is maintained to NominalActivePowerLimit, using PV power and/or battery power. If the PV power is not sufficient, battery power is used to complement AC power up to StorageRemoteCtrl_DishargeLimit. In this mode, charging excess power will occur if there is more PV than the AC limit.
    // 5 – Discharge to meet loads consumption. Discharging to the grid is not allowed.
    // 7 – Maximize self-consumption
    const remotecontrolwrite = await client.writeSingleRegister(0xe00d, Number(value));
    console.log('remotecontrolwrite', remotecontrolwrite);
  }

— Reply to this email directly, view it on GitHub https://github.com/biemond/solaredge.modbus/issues/94#issuecomment-2483016507, or unsubscribe https://github.com/notifications/unsubscribe-auth/BK5XI2VUZHQ7R4HKHTQML6L2BHSBDAVCNFSM6AAAAABNOH66L6VHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDIOBTGAYTMNJQG4 . You are receiving this because you authored the thread.Message ID: @.***>

biemond commented 2 weeks ago

nee , gebruik als flow actions on je solaredge device

Screenshot 2024-11-18 at 19 09 51