Wallbox samodomo

Uživatelský avatar
marsal
Příspěvky: 615
Registrován: pát dub 09, 2021 11:10 am

Re: Wallbox samodomo

Příspěvek od marsal »

Přístupná norma ("uzamčené" pdf, verze 2011): http://pp.bukovci.si/61851/SIST+EN+61851-1+2011.pdf
Uživatelský avatar
marsal
Příspěvky: 615
Registrován: pát dub 09, 2021 11:10 am

Re: Wallbox samodomo

Příspěvek od marsal »

Ahoj, willcz, jsem Ti sice vděčný za veškerá naťuknutí, ale tím Tvým kódem jsi mě pěkně doblbnul...
Až budeš chtít naprogramovat bezproblémový TECO wallbox (samozřejmě bez té jejich knihovny), podívej se do kódu níže 8-)
Nic ve zlém prosím Tě :P, třeba tam stále nevidím nějaké zákoutí. Popravdě řečeno, byl jsem pěkný idiot, že jsem si neprostudoval tu normu dříve.

Externě (v jiném funkčním bloku) nastavuji dvě proměnné:
wb_charge_current - vždy mezi MIN a MAX hodnotou (tj. nikdy 0)
wb_logic_charge_allow - zda mohu nebo nemohu zrovna nabíjet. To zahrnuje například i pauzu mezi přepínáním DS a FVE.

Pro samotné ovládání (stykač na DO2) pak stačí:

Kód: Vybrat vše

PROGRAM Wallbox_execute
  // variables handled outside the POU:
  //// wb_logic_charge_allow  - if True, EVSE logic allows charging
  //// wb_charge_current - current within MIN - MAX (never 0)
  //
  //
  // evaluate "force stop" logic coming from web (wb_stop) or button (at EV_In.DI.DI2)
  wb_stop_tof(IN := wb_stop or EV_In.DI.DI2, PT := T#30s);
  wb_stop := 0;
  //
  // verify the connection and charge request status
  wb_request_charge := EV_In.STAT.CHARGE;
  wb_cable_connected := EV_In.STAT.CCONN;
  //
  // handle output current
  IF wb_cable_connected and wb_logic_charge_allow and not wb_stop_tof.Q THEN
    Ev_Out.CURR := wb_charge_current;
  ELSE
    Ev_Out.CURR := 0;
  END_IF;
  //
  // control the contactor
  Ev_Out.DOs.DO2 := wb_request_charge;
  //
END_PROGRAM
Uživatelský avatar
marsal
Příspěvky: 615
Registrován: pát dub 09, 2021 11:10 am

Re: Wallbox samodomo

Příspěvek od marsal »

Děkuji ještě všem, kteří mi na cestě ze soucitu nabízeli hotové wallboxy ;-). Kdybych tušil, jaká to bude anabáze, sáhnul bych po takovém Sampro nebo Open EVSE bez zaváhání. Teď už konečně začínám být spokojený a pěkně jsem se vyučil, takže nabídek nevyužiji...

Teco 0302 kit má ovšem stále jednu zásadní nevýhodu, se kterou je třeba počítat, pokud nějaký vlastník Teco Foxtrot ho chce použít: odpojení stykače po "návratu" napětí CP z 6V na 9V (C->B) ze strany auta se řídí softwarově a při zabloudění Foxtrotu při nějakém extrémně dlouhém výpočetním cylu se to nedá systémově dobře řešit (jedině interrupty, které se v Tecu se dělají mírně blbě). Umístil jsem tedy na krabici wallboxu tlačítko STOP a když jdu kolem něj k autu s cílem ukončit nabíjení a uvolnit kabel, před uvolněním kabelu stisknu toto STOP a mám nastavených 30s, do kterých je ještě třeba uvolnit kabel stiskem tlačítka v autě a kabel vyndat. Pokud se to do 30s nestane, nic se neděje, auto zamkne kabel a začne znovu nabíjet (pokud má povoleno v logice) a postup je pak třeba opakovat. Tento postup "Když s autem přijedeš, jen zastrč kabel a o nic se nestarej, vše zařídí automatika nabíjení. Když odjíždíš, stiskni STOP + do 30s uvolni a vyndej kabel" se jeví dostatečně jednoduchý i pro členy rodiny ;-). Ukončování nabíjení z aplikace bych nechtěl ani po sobě...

Chápu, že plechová krabice, do které jsem wallbox (spolu s přepínačem sítí, elektroměrem atd.) dal, se nemusí líbit každému, ale kromě "kodlovské" bezpečnosti tím, že je plechová, se u ní projevila jedna nečekaná výhoda: velmi dobře tlumí zvuky stykačů.
Přílohy
Wallb.jpg
Wallb.jpg (137.48 KiB) Zobrazeno 7141 x
20220620_200338.jpg
20220620_200338.jpg (347.93 KiB) Zobrazeno 7151 x
Noparasito
Příspěvky: 712
Registrován: pon bře 29, 2021 11:51 pm

Re: Wallbox samodomo

Příspěvek od Noparasito »

marsal píše: úte čer 21, 2022 8:08 am Děkuji ještě všem, kteří mi na cestě ze soucitu nabízeli hotové wallboxy ;-). Kdybych tušil, jaká to bude anabáze, sáhnul bych po takovém Sampro nebo Open EVSE bez zaváhání. Teď už konečně začínám být spokojený a pěkně jsem se vyučil, takže nabídek nevyužiji...

Teco 0302 kit má ovšem stále jednu zásadní nevýhodu, se kterou je třeba počítat, pokud nějaký vlastník Teco Foxtrot ho chce použít: odpojení stykače po "návratu" napětí CP z 6V na 9V (C->B) ze strany auta se řídí softwarově a při zabloudění Foxtrotu při nějakém extrémně dlouhém výpočetním cylu se to nedá systémově dobře řešit (jedině interrupty, které se v Tecu se dělají mírně blbě). Umístil jsem tedy na krabici wallboxu tlačítko STOP a když jdu kolem něj k autu s cílem ukončit nabíjení a uvolnit kabel, před uvolněním kabelu stisknu toto STOP a mám nastavených 30s, do kterých je ještě třeba uvolnit kabel stiskem tlačítka v autě a kabel vyndat. Pokud se to do 30s nestane, nic se neděje, auto zamkne kabel a začne znovu nabíjet (pokud má povoleno v logice) a postup je pak třeba opakovat. Tento postup "Když s autem přijedeš, jen zastrč kabel a o nic se nestarej, vše zařídí automatika nabíjení. Když odjíždíš, stiskni STOP + do 30s uvolni a vyndej kabel" se jeví dostatečně jednoduchý i pro členy rodiny ;-). Ukončování nabíjení z aplikace bych nechtěl ani po sobě...

Chápu, že plechová krabice, do které jsem wallbox (spolu s přepínačem sítí, elektroměrem atd.) dal, se nemusí líbit každému, ale kromě "kodlovské" bezpečnosti tím, že je plechová, se u ní projevila jedna nečekaná výhoda: velmi dobře tlumí zvuky stykačů.
Děkujeme za prošlapání cestičky.
A těm co si koupili hotový wallbox, přeji velké solární pole a mnoho baterek.(je to pro lenochy 🤭😂, nebo ti co nemají čas)
Pak nemusí řešit nic a za cca.3 hod od rozbalení krabice nabíjejí. Sice nikoli dynamicky, ale bez obstrukcí.
Ano potom je potřeba poučit osádku.
Uživatelský avatar
marsal
Příspěvky: 615
Registrován: pát dub 09, 2021 11:10 am

Re: Wallbox samodomo

Příspěvek od marsal »

Noparasito píše: úte čer 21, 2022 10:46 pm A těm co si koupili hotový wallbox, přeji velké solární pole a mnoho baterek.(je to pro lenochy 🤭😂, nebo ti co nemají čas)
Pak nemusí řešit nic a za cca.3 hod od rozbalení krabice nabíjejí. Sice nikoli dynamicky, ale bez obstrukcí.
Inu, věda a výzkum vyžadují oběti.
Přepínání DS/FVE, které zmírní cyklování baterek, lze jistě udělat i ručně. Automatika je pro mne dobrá, zmirňuje kromě zmíněného cyklování i ostrovnickou obsesi "nenechávat na střeše", obzvláště pro ty, kteří zatím nevytěžovali, protože neměli kam.
Ještě trochu ladím UI, ale to už je takové hraní, nebudu zase spamovat, aby mne dumi nevybanoval ;-) (viewtopic.php?p=1319#p1319)

EDIT:
Jasněže jsou další možnosti: Renault ZOE by se měl dát ovládat i přes API (t.j. např. vyčítat si SOC a nenabíjet nad 90%, pokud nemusím), tak je stále kam směřovat :-).
Noparasito
Příspěvky: 712
Registrován: pon bře 29, 2021 11:51 pm

Re: Wallbox samodomo

Příspěvek od Noparasito »

Prej doporuceni je se pohybovat 40-80% SOC.
Ale zalezi kterej vyrobce.
Jinak kdyz vis ze pojedes 100km a vice tak na SOC 100% na tu chvilu zas tak neskodi 👍.
willcz
Příspěvky: 296
Registrován: pát dub 09, 2021 8:48 am
Bydliště: Rosice

Re: Wallbox samodomo

Příspěvek od willcz »

Ahoj,

musím se na ten tvůj zdroják podívat, jsem rád že to někdo udělal pořádně, já jen vycházel z diagramů od Phoenix wallboxu a pár článků z netu.
Psal jsem hned na začátku, funguje to s autem co mám.

Ohledně ukončování, tak to dělám různě.
- tlačítkem na wallboxu, které nastaví proud na 0
- appkou k autu
- nejčastěji tak že přijdu k autu, sáhnu na kliku a vytáhnu kabel :-)

K tomu jaký má enyaq nahouby sw, tak toto má vymyšleno primitivně. odemčení vozu auto cca minutu nenabíjí a odemkne kabel.
tzn stačí přijít k autu, sáhnout na zadní kliku, cvakne zámek kabelu a vytáhnu, dám do držáku, sedám a jedu.
9,8 kWp Poly + Tigo, 3x XTM4000, 2x VT65, 1x VT80, 8x Pylon US3000B + paralelne k tomu 15S LiFe 360Ah s Batrium BMS
Uživatelský avatar
marsal
Příspěvky: 615
Registrován: pát dub 09, 2021 11:10 am

Re: Wallbox samodomo

Příspěvek od marsal »

willcz píše: čtv čer 23, 2022 4:47 pm musím se na ten tvůj zdroják podívat, jsem rád že to někdo udělal pořádně
No, bez Tebe bych neudělal nic a "pořádně" je poněkud přepjatý výraz, řekl bych ;-).

Stále mi zůstává (neobtěžující) nedokonalost, že pokud já stisknu "kliku" na ZOE (tedy v případě ZOE je to tlačítko "uvolni kabel"), tak občas ZOE vyhodí chybu "zkontrolovat nabíjecí stanici". Toto se nikdy nestane, pokud nabíjení nejdřív ukončím tlačítkem na wallboxu nebo v aplikaci (které obojí nastavují proud na nulu). Přičítám to za současného stavu znalostí tomu, že v případě, kdy ZOE ukončuje vlastním tlačítkem, hlídá odpad stykače nějak rychleji než v případě, že zjistí, že CP je na 100% a že tedy požadavek na ukončení nabíjení přišel zvenčí.
Ve stávajím mém programu to tak není, ale zkoušel jsem i nastavení proudu na nulu při detekci ukončení stavu EV_In.STAT.CHARGE, ale nepomohlo to. Buď tedy stále něco nevidím nebo je to to, co už jsem psal: Teco 0302 prodlevu mezi detekcí konce EV_In.STAT.CHARGE a odpadem relé realizuje softwarově a to holt někdy časově nestačí a ZOE je na toto příliš citlivé.
Pan Urban z Teco, který se snažil a komunikoval dobře, mi tuto softwarovou záležitost potvrdil a to je prostě slabina tohoto řešení Teco.
Takže, jak už jsem tedy zase psal, ukončování dělám tlačítkem, nevadí mi to a funguje zcela spolehlivě.

Pokud bys chtěl studovat kód, přikládám ;-). Ta optimalizace je tam ještě k doladění, dělám sice pomalé klouzavé průměry, ale stejně tam přidám hysterezi, aby na hraně výkonu panelů nebo na hraně SOC nechodil tam a zpět příliš rychle (v řádech minut, což se teď děje).
Díky

Kód: Vybrat vše


PROGRAM Wallbox_execute
  // variables handled outside the POU:
  //// wb_logic_charge_allow  - if True, EVSE logic allows charging
  //// wb_charge_current - current within MIN - MAX (never 0)
  //
  //
  // evaluate "force stop" logic coming from web or button
  wb_stop_tof(IN := wb_stop or EV_In.DI.DI2, PT := T#30s);
  wb_stop := 0;
  //
  // verify the connection
  wb_cable_connected := EV_In.STAT.CCONN;
  //
  // handle output current
  IF wb_cable_connected and wb_logic_charge_allow and not wb_stop_tof.Q THEN
    Ev_Out.CURR := wb_charge_current;
  ELSE
    Ev_Out.CURR := 0;
  END_IF;
  //
  // verify request charge status and control the contactor
  wb_request_charge := EV_In.STAT.CHARGE;
  Ev_Out.DOs.DO2 := wb_request_charge;
  //
  // copy contactor state to LED
  Ev_Out.DOs.DO1 := Ev_Out.DOs.DO2;
  //
  //
  //
  // for messaging purpose only: process the contractor on/off triggers
  IF not wb_contactor_previous and Ev_Out.DOs.DO1 THEN
    wb_contactor_on_tp(IN := True); // event - wb contactor on
  ELSIF wb_contactor_previous and not Ev_Out.DOs.DO1 THEN
    wb_contactor_off_tp(IN := True); // event - wb contactor off
  ELSE
    wb_contactor_on_tp(IN := False); // event - wb contactor on
    wb_contactor_off_tp(IN := False); // event - wb contactor on
  END_IF;
  wb_contactor_previous := Ev_Out.DOs.DO1;
  wb_contactor_on := bool_to_real(wb_contactor_on_tp.Q);
  wb_contactor_off := bool_to_real(wb_contactor_off_tp.Q);
END_PROGRAM



PROGRAM Wallbox
  VAR
    TP_FVE_pulse : TP; // time pulse for FVE relay of network switch
    TP_DS_pulse : TP; // time pulse for DS relay of network switch
    TP_FVE_delay : TP; // time pulse for FVE relay of network switch protect
    TP_DS_delay : TP; // time pulse for DS relay of network switch protect
    TP_ERRSTATE : TP; // time pulse for try to switch on network switch
    //
    //
    NETSWITCHPULSE : TIME; // pulse lenght to network switch contactors
    NETSWITCHPROTECT : TIME; // pulse lenght to network switch contactors
    NETSWITCHDELAY : TIME; // pulse lenght to network switch contactors
    //FIXSWITCHCURRENT_FVE : REAL; // current set after the switch to FVE
    //FIXSWITCHCURRENT_DS : REAL; // current set after the switch to DS
    //
    ADAPTINTERVAL_fbTick : fbTICK;
    //
    AVGCURRENTINTERVAL_SLOW : TIME;
    alpha_slow : REAL;
    AVGCURRENTINTERVAL_FAST : TIME;
    alpha_fast : REAL;
    //
    alpha_soc : REAL;
    //
    average_current_tp_slow : TP; // interval for averagizing of battery current
    average_current_tp_fast : TP; // interval for averagizing of battery current
    //
    wb_prevcurrent : REAL;
    //
    wb_a : REAL;
  END_VAR

  //
  //
  IF ProgramIsChanged() THEN
    // allow wallbox charging both from FVE and DS
    wb_allowed_ds := False; // allowed charging from ds?
    wb_allowed_fve := True; // allowed charging from fve?
    wb_adaptivecurr := True; // should be the wb charging current adaptively changed (otherwise fixed)
    //
    WB_MIN_CURRENT := 8; // cannot go below this current when charging
    WB_MAX_CURRENT := 16; // cannot go above this current when charging
    //FIXSWITCHCURRENT_FVE := 10; // go to this current when switching to FVE (should limit "slow charging not alowed")
    //FIXSWITCHCURRENT_DS := 10; // go to this current when switching to DS (should limit "slow charging not alowed")
    //
    NETSWITCHPULSE := T#500ms; // pulse lenght to network switch contactors
    NETSWITCHPROTECT := T#8s; // lenght of the protection interval when switching network switch
    NETSWITCHDELAY := T#4s; // lenght between protection interval start and impulse to switch contractor
    //
    wb_charge_current := WB_MIN_CURRENT; // initial charging current
    wb_maxpower_fve := 7000; // maximum power from FVE total (if above, starts panic regulation)
    wb_maxpower_ds := 9000; // maximum power from DS total  (if above, starts panic regulation)
    WB_MAXPOWER_FVE_HARDLIMIT := 8000; // hard limit for FVE set
    WB_MAXPOWER_DS_HARDLIMIT := 10000; // hard limit for DS set
    //
    wb_soc_mincharge := 90; // min soc value for which chargin from FVE is enabled
    //
    wb_targetcurrent_bat_min := 40; // target regulation battery charging current during adaptive wb regulation in case when battery soc is minimum (equal to wb_soc_mincharge)
    wb_targetcurrent_bat_100 := 0; // target regulation battery charging current during adaptive wb regulation in case when battery soc is 100%
    wb_switchoffcurrent_bat := - 50; // if the regulation of the wb is not hold desired wb_targetcurrent_bat current and longer time goes beyond this value, FVE wb charging is disabled (slow averagizing)
    MINPANELSWATTAGE := 100; // minimum averagized value beyond which the charging from FVE is disabled (slow averagizing)
    //
    // switch network switch to FVE
    netswitch_state := 'n/a'; // unclear state
    //
    AVGCURRENTINTERVAL_SLOW := T#60s; // interval for slow smoothing average variables
    alpha_slow := 0.2; // alpha for slow exponential smoothing
    AVGCURRENTINTERVAL_FAST := T#5s; // interval for fast smoothing average variables
    alpha_fast := 0.5; // alpha for "fast" exponential smoothing
    alpha_soc := 0.03; // alpha for SOC very slow smoothing
    ADAPTINTERVAL_fbTick(IN := TRUE, PT := T#10s); // launch adaptive interval for current adaptation
    //
    // message inticators for contactor on/of init
    wb_contactor_on_tp(IN := False, PT := T#2s);
    wb_contactor_off_tp(IN := False, PT := T#2s);
  END_IF;
  //
  //
  // update battery target current
  wb_a :=(wb_targetcurrent_bat_100 - wb_targetcurrent_bat_min) /(100 - wb_soc_mincharge);
  wb_targetcurrent_bat := wb_targetcurrent_bat_min +(gs_bsp_soc - wb_soc_mincharge) * wb_a;
  IF gs_bsp_soc < wb_soc_mincharge THEN
    wb_targetcurrent_bat := wb_targetcurrent_bat_min;
  END_IF;
  //
  wb_run :=(wb_allowed_fve OR wb_allowed_ds) AND not is_init.Q and not EM340_evse_errstate.q and not TP_FVE_protect.Q and not TP_DS_protect.Q and not wb_stop_tof.Q;
  //
  // charging allowed logic
  IF wb_run and wb_allowed_fve and wb_adaptivecurr and wb_soc_mincharge <= wb_avg_soc and wb_avg_batt_current_slow >= wb_switchoffcurrent_bat and wb_avg_pannels_wattage >= MINPANELSWATTAGE THEN
    wb_logic_charge_allow := TRUE;
    FVE_button := True;
  ELSIF wb_run and wb_allowed_fve and not wb_adaptivecurr and wb_soc_mincharge <= wb_avg_soc and wb_avg_pannels_wattage >= MINPANELSWATTAGE THEN
    wb_logic_charge_allow := TRUE;
    FVE_button := True;
  ELSIF wb_run and wb_allowed_ds THEN
    wb_logic_charge_allow := TRUE;
    DS_button := True;
    // not charging currently? Set min. current
  ELSE
    wb_logic_charge_allow := FALSE;
    wb_charge_current := WB_MIN_CURRENT;
  END_IF;
  //
  //
  // network switch processing
  IF EM340_evse_errstate.q THEN // was error reading from wallbox EM340 ?
    em340d_evse.L1W := 0;
    em340d_evse.L2W := 0;
    em340d_evse.L3W := 0;
    em340d_evse.L1V := 0;
    em340d_evse.L2V := 0;
    em340d_evse.L3V := 0;
    em340d_evse.kWsys := 0;
    netswitch_state := 'n/a';
    // try to recover but not too often (may by permanently switched off)
    IF not TP_ERRSTATE.Q THEN
      IF wb_allowed_ds and not wb_allowed_fve THEN
        DS_button := True;
      ELSE
        FVE_button := True;
      END_IF;
      TP_ERRSTATE(in := True, PT := T#60s);
    END_IF;
  ELSE
    // no error, "standard" network switch logic with FVE as priority
    TP_ERRSTATE(in := False);
  END_IF;
  //
  //
  // networks switch logic "watchdog" - both buttons cannot be triggered, FVE as priority
  IF FVE_button THEN
    DS_button := False;
  END_IF;
  //
  // launch protect and delay intervals, if appropriate
  TP_FVE_protect(IN := FVE_button and netswitch_state <> 'FVE', PT := NETSWITCHPROTECT);
  TP_DS_protect(IN := DS_button and netswitch_state <> 'DS', PT := NETSWITCHPROTECT);
  TP_FVE_delay(IN := TP_FVE_protect.Q, PT := NETSWITCHDELAY);
  TP_DS_delay(IN := TP_DS_protect.Q, PT := NETSWITCHDELAY);
  TP_FVE_pulse(IN := TP_FVE_protect.Q and not TP_FVE_delay.Q, PT := NETSWITCHPULSE, Q => EvseFVE); // pulse to to realay
  TP_DS_pulse(IN := TP_DS_protect.Q and not TP_DS_delay.Q, PT := NETSWITCHPULSE, Q => EvseDS); // pulse to to realay
  //
  // switch network switch state and fix current
  IF TP_FVE_pulse.Q THEN
    netswitch_state := 'FVE';
  ELSIF TP_DS_pulse.Q THEN
    netswitch_state := 'DS';
  END_IF;
  // clear buttons/triggers variables for network switch
  FVE_button := FALSE;
  DS_button := FALSE;
  //
  //
  // slow averaging
  average_current_tp_slow(In := False);
  IF is_init.Q THEN
    wb_avg_soc := gs_bsp_soc;
    wb_avg_pannels_wattage := gs_vt_pw;
    wb_avg_batt_current_slow := CurrentBatSum;
  ELSE
    IF not average_current_tp_slow.Q THEN
      wb_avg_batt_current_slow := alpha_slow * CurrentBatSum +(1 - alpha_slow) * wb_avg_batt_current_slow;
      wb_avg_pannels_wattage := alpha_slow * gs_vt_pw +(1 - alpha_slow) * wb_avg_pannels_wattage;
      wb_avg_soc := alpha_fast * gs_bsp_soc +(1 - alpha_fast) * wb_avg_soc;
      //
      average_current_tp_slow(In := True, PT := AVGCURRENTINTERVAL_SLOW); // launch next current averagizing interval - slow
    END_IF;
  END_IF;
  //
  // fast averaging
  average_current_tp_fast(In := False);
  IF is_init.Q THEN
    wb_avg_batt_current_fast := CurrentBatSum;
  ELSE
    IF not average_current_tp_fast.Q THEN
      wb_avg_batt_current_fast := alpha_fast * CurrentBatSum +(1 - alpha_fast) * wb_avg_batt_current_fast;
      average_current_tp_fast(In := True, PT := AVGCURRENTINTERVAL_FAST); // launch next current averagizing interval - fast
    END_IF;
  END_IF;
  //
  //
  //// adaptive regulation
  //
  //
  //
  // instant "panic" adaptation when charging over hardlimits?
  IF em340d_evse.kwSys > 0 THEN
    // panic FVE?
    IF netswitch_state = 'FVE' and em340d_out.kwSys > WB_MAXPOWER_FVE_HARDLIMIT THEN
      wb_charge_current := WB_MIN_CURRENT;
    END_IF;
    // panic DS?
    IF netswitch_state = 'DS' and em340d.kwSys > WB_MAXPOWER_DS_HARDLIMIT THEN
      wb_charge_current := WB_MIN_CURRENT;
    END_IF;
  END_IF;
  //
  //
  // adapt
  ADAPTINTERVAL_fbTick(IN := TRUE);
  IF wb_adaptivecurr and wb_logic_charge_allow and not TP_FVE_protect.Q and not TP_DS_protect.Q and ADAPTINTERVAL_fbTick.Q THEN
    IF netswitch_state = 'DS' THEN
      IF em340d.kwSys > wb_maxpower_ds THEN
        wb_charge_current := wb_charge_current - 0.5;
      END_IF;
      IF em340d.kwSys < wb_maxpower_ds THEN
        wb_charge_current := wb_charge_current + 0.5;
      END_IF;
    ELSIF netswitch_state = 'FVE' THEN
      IF em340d_out.kwSys > wb_maxpower_fve or wb_avg_batt_current_fast < wb_targetcurrent_bat THEN
        wb_charge_current := wb_charge_current - 0.5;
      END_IF;
      IF em340d_out.kwSys < wb_maxpower_fve and wb_avg_batt_current_fast > wb_targetcurrent_bat THEN
        wb_charge_current := wb_charge_current + 0.5;
      END_IF;
    END_IF;
  END_IF;
  //
  //
  // calculate wb consumption snapshots
  wb_today_kwh := em340d_evse.TotKWhPlus - wb_snapshot_kwh;
  IF cur_day <> old_day THEN
    // midnight
    old_day := cur_day;
    wb_yesterday_kwh := wb_today_kwh;
    wb_snapshot_kwh := em340d_evse.TotKWhPlus;
  END_IF;
  //
  //
  // verify limits of charge current
  IF wb_charge_current < WB_MIN_CURRENT THEN
    wb_charge_current := WB_MIN_CURRENT;
  ELSIF wb_charge_current > WB_MAX_CURRENT THEN
    wb_charge_current := WB_MAX_CURRENT;
  END_IF;
  //
  //
  // mark + or - charge marker?
  wb_show_adaptminus(IN :=(wb_charge_current < wb_prevcurrent) and wb_adaptivecurr and em340d_evse.kwSys > 0, PT := T#2000ms);
  wb_show_adaptplus(IN :=(wb_charge_current > wb_prevcurrent) and wb_adaptivecurr and em340d_evse.kwSys > 0, PT := T#2000ms);
  wb_prevcurrent := wb_charge_current;
  //
  //
END_PROGRAM

Uživatelský avatar
bozma
Příspěvky: 3
Registrován: pon čer 20, 2022 7:51 pm

Re: Wallbox samodomo

Příspěvek od bozma »

marsal píše: čtv čer 02, 2022 8:22 am Stále s tím zápasím. evracing jsem přestal důvěřovat a pořídil jsem na radu willcz nabíjení od TECO
Co přesně si pořídil prosím?
Uživatelský avatar
marsal
Příspěvky: 615
Registrován: pát dub 09, 2021 11:10 am

Re: Wallbox samodomo

Příspěvek od marsal »

bozma píše: stř srp 17, 2022 2:04 pm Co přesně si pořídil prosím?
Tohle: https://wiki.tecomat.cz/clanek/14129-c-ev-0302m

Chodí mi to spolehlivě, ale slabina popsaná v mém předchozím příspěvku zůstává.

Kód jsem mezitím vylepšil ;-).
Uživatelský avatar
bozma
Příspěvky: 3
Registrován: pon čer 20, 2022 7:51 pm

Re: Wallbox samodomo

Příspěvek od bozma »

A dělá se něco podobného i na 3 fáze?
willcz
Příspěvky: 296
Registrován: pát dub 09, 2021 8:48 am
Bydliště: Rosice

Re: Wallbox samodomo

Příspěvek od willcz »

Pocet fazi urcuje pocet polu na stykaci. A pocet zapojenych fazi v zasuvce/zastrcce.
9,8 kWp Poly + Tigo, 3x XTM4000, 2x VT65, 1x VT80, 8x Pylon US3000B + paralelne k tomu 15S LiFe 360Ah s Batrium BMS
MareC3k
Příspěvky: 16
Registrován: úte dub 06, 2021 7:00 pm

Re: Wallbox samodomo

Příspěvek od MareC3k »

Premyslal som ako postavit wallbox, ktory by dokazal dynamicky menit nabijaci prud podla stavu aku. Chcel som nieco jednoduche, co zvladne postavit aj nie-programator.
Modul EVSE wallbox z http://evracing.cz doplneny o wifi modul s esp8266 s nahratym simple evse https://github.com/CurtRod/SimpleEVSE-WiFi
Simple evse wifi modul ma moznost cez API nastavovat nabijaci prud, takze som si spravil v Home assistantovi automatizaciu aby podla napatia na baterii nastavoval nabijaci prud EV, zacina na 6A pri 53V na baterii az po 32A pri napati nad 55V.
Je to zatial iba demo v testovani, uvidime ci sa to osvedci z dlhodobeho hladiska.
Priebeh nabijania:
Screenshot_20220829-113258_Samsung Internet.jpg
Screenshot_20220829-113258_Samsung Internet.jpg (52.85 KiB) Zobrazeno 6287 x
Po skonceni nabijania:
Screenshot_20220827-114544_Samsung Internet.jpg
Screenshot_20220827-114544_Samsung Internet.jpg (53.07 KiB) Zobrazeno 6287 x
+- 24kWp panelov, 55kWh lithia, 2x 5kW Axpert, 3x XTM-4000 a stale je to malo :)
Hyp
Příspěvky: 6
Registrován: ned zář 19, 2021 7:13 pm

Re: Wallbox samodomo

Příspěvek od Hyp »

nextclick píše: úte led 11, 2022 10:58 amAle zpět k tématu mám dotaz: Jak je to s legislativou pokud bych chtěl nabídnout dobíjení hostům, kteří se ke mne přišli ubytovat? Předpokládám že na wallbox musím mít revizi. Ale jak je to s daněma? Není tam nějaká skrytá povinnost, která se nyní jen nevymáhá přesto je tam už teď? Předpokládám že když elektřinu prodám dráž, tak jí jen zahrnu do účta jako položku na faktuře. MOhu vůbec elektřinu prodat?
Také je možnost přefakturace hostovi ve stejné ceně za kilowatthodinu, za kterou “nakupuješ”, za kterou ti dodává tvůj dodavatel.

Takže čistě teoreticky, pokud by jsi měl ubytování jakožto nepodnikatel, třeba pronájem, pouze deník příjmu a výdajů, tak to ani nemusíš zahrnovat do příjmů, jde to mimo.

Ad licence: Kdysi jsem se na to ptal na ERU, mi odepsali myslím, že nikdo nebude zkoumat jestli kilowatt stojí 4,50 nebo 4,65 takže prostě když to zhruba odpovídá nákupní ceně, nejedná se o licencovaný prodeji ale o pouhou přefakturaci a že je to nezajímá. Ale to nebylo v souvislosti s EV ani v souvislosti s FVE, Čistě jen mě zajímalo, jak mohu vykazovat papírově spotřebovanou elektřinu zákazníkem (nájemcem - §9, nebo hostem - §7).
Erzo
Příspěvky: 11
Registrován: pon pro 20, 2021 12:55 pm

Re: Wallbox samodomo

Příspěvek od Erzo »

marsal píše: stř kvě 18, 2022 9:11 pm To jsem ale popleta. Schneider LC2DT25P7 pomocné kontakty NO i NC, takže jsem mohl realizovat klasický "kodlův" stykačomat se západkou bez nějakých pomocných relé.

Díky, kodl!

Je to tak 8x dražší než čínský přepínač, ale už bych neměnil.
Tiez som kupil taky stykac. Nemas nahodou nakreslene opacne FVE ma ist na prvy stykač L1,L2,L3,N aj DS na druhy stykač L1,L2,L3,N potom T1,T2,T3,N ide do domu? Ked som meral tak obidve stykace su prepojene T1-T1, T2-T2, T3-T3, N-N.
Uživatelský avatar
marsal
Příspěvky: 615
Registrován: pát dub 09, 2021 11:10 am

Re: Wallbox samodomo

Příspěvek od marsal »

Já to mám takto:
Přílohy
EVSE.jpg
EVSE.jpg (265.67 KiB) Zobrazeno 5241 x
Erzo
Příspěvky: 11
Registrován: pon pro 20, 2021 12:55 pm

Re: Wallbox samodomo

Příspěvek od Erzo »

marsal píše: pon říj 31, 2022 6:01 pm Já to mám takto:
Zatial nemam nic zapojene ked meram T1-T1 su spojene a L1-L1 odpojene tak T1 by mal byt vystup a L1 vstup.
Uživatelský avatar
marsal
Příspěvky: 615
Registrován: pát dub 09, 2021 11:10 am

Re: Wallbox samodomo

Příspěvek od marsal »

Erzo píše: úte lis 01, 2022 6:38 am Zatial nemam nic zapojene ked meram T1-T1 su spojene a L1-L1 odpojene tak T1 by mal byt vystup a L1 vstup.
To může být, že to má být opačně než ně schématu (nebo je to jedno), nestíhám to teď ověřit, pardon.
el_salvadore
Příspěvky: 87
Registrován: ned črc 11, 2021 9:38 am
Výkon panelů v FVE [Wp]: 6000
Kapacita baterie [kWh]: 14

Re: Wallbox samodomo

Příspěvek od el_salvadore »

Chlapi, poradíte do čoho ísť?
Zadanie - WB pre PHEV (Mitsubishi Outlander): 3,7kW, 1f, Type 1, 0-10(5)V.
Reguláciu výkonu bude mať na starosti GBO (PWM->0.10V). Ideálne čo najjednoduchšia voľba bez potreby extenzivneho programovania, minimálna kludova spotreba, info display o stave nabíjania (výkon, počítadlo kWh, chybové hlásenie apod.)

Najbližšie k tomuto zadaniu ma 7,4kW Sampro
https://wifi.sampro.cz/wall-box-32a-t1- ... oregzamdlm, výhodou je že už obsahuje vhodny RCD. Nevýhoda, mozno zbytočný výkon 7,4kW ktorý má (asi) aj vplyv na výslednú cenu(?). Neviem, každopádne by som rád vyberal z viacerých možností. Vopred vďaka!
Ostrov. 6kWp/14,4kWh/2x4000kVA (12xCanadian Solar CS3Y490MS, 4xPylontech US3000C, 2xXTM-4000-48, VS-120, RCC-03)
Odpovědět

Zpět na „Elektromobilita obecně“