Alfen laadpaal aansturen zonder Home Assistant o.id.

Pagina: 1
Acties:

Onderwerpen

Vraag


Acties:
  • 0 Henk 'm!

  • harmstra
  • Registratie: Januari 2023
  • Laatst online: 29-12-2024
Ik heb momenteel een Raspberry 3 draaien met Home Assistant er op. Ik heb de OCPP integratie hier bij geinstalleerd en gekoppeld met mijn laadpaal, om zo op de goedkoopste uren van de nacht mijn elektrische auto op te laden i.c.m. een dynamische energiecontract. Over deze setup is ondertussen al veel geschreven en met de hulp van o.a. dit forum is het gelukt.

Maar..... die hele Home Assistant vindt ik enorme overkill voor wat ik wil. Ik wil namelijk a) dagelijks de dynamische energieprijzen inladen, b) de goedkoopste uren bepalen en c) op het juiste moment de laadpaal aan of uit zetten.
a) en b) zijn geen probleem, c) wel. Ik lees over Modbus over TCP. Heb geen ervaring met Modbus en kom er na lezen ook niet uit.

De vraag is: hoe kan ik op afstand, bijv. van de Raspberry waar alleen Raspian OS op draait, de laadpaal meer/minder laten laden of aan/uit zetten? Bash? Python? Iets anders?
PS: Load balancing is geactiveerd op mijn Alfen.

Alle reacties


Acties:
  • 0 Henk 'm!

  • _WouterB
  • Registratie: November 2012
  • Laatst online: 03-06 22:47
Ik gebruik zelf Node Red. Hier kan je meer info vinden over mijn setup (vooral gemaakt voor load balancing, eigen gebruik van zonne energie verhogen en limiteren van het gebruik van het net) : https://gathering.tweakers.net/forum/list_message/71413504#71413504

Acties:
  • 0 Henk 'm!

  • harmstra
  • Registratie: Januari 2023
  • Laatst online: 29-12-2024
Bedankt voor je antwoord, maar ik zoek echt iets zonder een systeem als Home Assistant of Node Red. Wil gewoon zelf een scriptje maken, maar weet niet hoe Modbus werkt. Hoe kan ik de laadpaal uitlezen en aansturen?

Acties:
  • 0 Henk 'm!

  • olir
  • Registratie: Mei 2023
  • Laatst online: 24-03-2024
Er zijn meerdere opties, maar geen van allen super eenvoudig. Of Home Assistant hier nou overkill voor is of niet, je kan je setup altijd uitbreiden naar andere smart home devices, toch?

1. Beste manier voor jouw situatie lijkt lokaal via REST API. Hiermee kan je current limieten zetten, kant-en-klare scriptjes staan hier: https://github.com/egnerf...fen_wallbox/alfen.py#L103

2. Via OCPP een ChargingProfile insturen (niet makkelijk te automatiseren)

3. De laadpaal instellen op active loadbalancing via Modbus TCP/IP (Energy Management System) en vervolgens naar de juiste registers schrijven (Google "Alfen Modbus Slave TCP/IP").
Er zijn Modbus TCP/IP clients voor Python, maar je moet wel iets weten van Modbus om hiermee overweg te kunnen. Deze interface is daadwerkelijk bedoeld voor wat je probeert te bereiken. Echter als je dit thuis wil gebruiken raad ik toch echt HomeAssistant aan, volgens mij is er al een integratie voor (of in ieder geval een forum post waarin het te vinden is).

4. Lokaal via REST API met een krachtigere API. Zorg wel dat je een recente firmwareversie op de laadpaal hebt staan.

POST /api/chargingprofiles/add

Body:

JSON: stop-met-laden
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
{
    "connectorId": 1,
    "csChargingProfiles": {
        "stackLevel": 1,
        "chargingProfilePurpose": "ChargingStationExternalConstraints",
        "chargingProfileKind": "Absolute",
        "chargingProfileId": 1,
        "chargingSchedule": {
            "duration": 600,
            "chargingRateUnit": "A",
            "startSchedule": "2022-09-19T14:18:51Z",
            "chargingSchedulePeriod": {
                "startPeriod": 0,
                "limit": 0.0
            }
        }
    }
}


Bovenstaand is een simpel laadprofiel om vanaf 19 september 2022 gedurende 600 seconden de laadstroom te beperken tot 0 A (niet laden). Daarna vervalt het laadprofiel automatisch. Ik ben niet in de gelegenheid dit laadprofiel te testen. Je zult zelf in Python o.i.d. dan een script moeten maken om de startSchedule en andere velden dynamisch in te vullen.
Definities van de velden staan in OCPP 1.6 specificaties. Het kan een leercurve zijn, maar je kan er veel mee. Je kan bijvoorbeeld toevoegen van wanneer tot wanneer dit laadprofiel geldig is, meerdere periodes toevoegen etc.

[ Voor 7% gewijzigd door olir op 03-06-2023 02:13 . Reden: Betere info ]


Acties:
  • 0 Henk 'm!

  • devastator83
  • Registratie: Januari 2012
  • Laatst online: 05-06 06:53
olir schreef op zaterdag 3 juni 2023 @ 00:53:
4. Lokaal via REST API met een krachtigere API. Zorg wel dat je een recente firmwareversie op de laadpaal hebt staan.

POST /api/chargingprofiles/add

Body:

JSON: stop-met-laden
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
{
    "connectorId": 1,
    "csChargingProfiles": {
        "stackLevel": 1,
        "chargingProfilePurpose": "ChargingStationExternalConstraints",
        "chargingProfileKind": "Absolute",
        "chargingProfileId": 1,
        "chargingSchedule": {
            "duration": 600,
            "chargingRateUnit": "A",
            "startSchedule": "2022-09-19T14:18:51Z",
            "chargingSchedulePeriod": {
                "startPeriod": 0,
                "limit": 0.0
            }
        }
    }
}
Waar heb je dit vandaan gehaald ? Kan je me naar de API doc wijzen ?