Pörssäri - Shelly-releen ja helpon web-asetusliittymän yhdistelmä pörssisähköohjaukseen

tk-

Aktiivinen jäsen
Itse hain aurinkovoimalan tuottoennusteen aina auringon noustessa. Ajatuksena oli, että saisin kohtuullisen ajankohtaisen ennusteen siitä eteenpäin, kun aurinkoa olisi saatavilla. Käyttämäni palvelu päivittää ennustetta vartin välein sen mukaan miten sateliitit antavat tietoa pilvien liikkeistä ja kai tuossa joku mallinnus vielä on taustalla. Maksuttomalla tilillä oli kuitenkin REST api:n pyyntöjen määrä rajattu, joten en voinut pienellä syklillä hakea koko ajan muutoksia mukailevaa uutta ennustetta. Ohjelmassani ennusteeseen perustuva ohjaus käsiteltiin pörssisähköohjauksesta kokonaan erillään ja kytkin ohjaimen ohjausreleet rinnan ohjaamaan lämminvesivaraajaa. Ajatuksena oli, että mikäli päivällä varaaja lämmitetään aurinkoenergialla sopivaan lämpötilaan ei termostaatti anna kytkeä varaajaa kuitenkaan enää myöhemmin pörssisähköohjattuna turhaan päälle. Tämä tekee toteutuksesta yksinkertaisen ja pitää huolen, että varaaja lämpenee aina.
En minä keksi käyttäjälle yksinkertaisempaa ratkaisua kuin Pörssäri, missä riittää kun varaajan edessä on Shelly ja asetuksissa määrität omat sähkön hinnat sekä vuorokaudessa halutun tuntimäärän? Vesi lämpenee aina sen halutun tuntimäärän kuitenkin.

Sitäpaitsi oman tuotannon käyttö ei aina ole edullisin vaihtoehto jos sähköstä saisikin paremman hinnan päivällä kun mitä siitä yöllä siirtoineen maksaa.
 

jalih

Jäsen
En minä keksi käyttäjälle yksinkertaisempaa ratkaisua kuin Pörssäri, missä riittää kun varaajan edessä on Shelly ja asetuksissa määrität omat sähkön hinnat sekä vuorokaudessa halutun tuntimäärän? Vesi lämpenee aina sen halutun tuntimäärän kuitenkin.

Sitäpaitsi oman tuotannon käyttö ei aina ole edullisin vaihtoehto jos sähköstä saisikin paremman hinnan päivällä kun mitä siitä yöllä siirtoineen maksaa.
Ei minun tapani estä tuotettua sähköä myydä mikäli se on taloudellisempi vaihtoehto. Kaikki ohjaukset menevät minulla omissa säikeissään toimivien "manager" ja "control" task:in kautta kuitenkin. Halusin tuon aurinkovoimalan hyödyntämisen laittaa itsenäisenä ohjauksena pörssisähköohjauksesta koska mikäli invertteri tarjoaa jonkun rajapinnan tietojen hakemiseen niin tuotantoennusteen sijasta käytettäisiin invertteriltä saatua reaaliaikaista tietoa. Enkä tarkoittanut, että toteutukseni olisi sen yksinkertaisempi loppukäyttäjälle vaan ohjelmallisesti, kun pörssisähköohjaus ja aurinkovoimalan tuottoon perustuva ohjaus käsitellään itsenäisinä ohjauksina.
 

tk-

Aktiivinen jäsen
Ei minun tapani estä tuotettua sähköä myydä mikäli se on taloudellisempi vaihtoehto. Kaikki ohjaukset menevät minulla omissa säikeissään toimivien "manager" ja "control" task:in kautta kuitenkin. Halusin tuon aurinkovoimalan hyödyntämisen laittaa itsenäisenä ohjauksena pörssisähköohjauksesta koska mikäli invertteri tarjoaa jonkun rajapinnan tietojen hakemiseen niin tuotantoennusteen sijasta käytettäisiin invertteriltä saatua reaaliaikaista tietoa. Enkä tarkoittanut, että toteutukseni olisi sen yksinkertaisempi loppukäyttäjälle vaan ohjelmallisesti, kun pörssisähköohjaus ja aurinkovoimalan tuottoon perustuva ohjaus käsitellään itsenäisinä ohjauksina.
Tuo reaaliaikainen ennustemallin korjaaminen toki itseäkin kiinnostaa seuraavana osana systeemin kehitystä. Eli miten tuossa sinun systeemissä huomioidaan sähkön hinta arvioidessa sitä, että kannattaako paneelien tuottaessa kytkeä varaajaan virrat vai antaa kaiken tuoton mennä myyntiin?

Pörssäri tekee tuon laskennan tunti kerrallaan koko vuorokaudeksi nyt, ja periaatteessa yksittäisen tunnin muuttaminen jälkeenpäin muuttaa tuota koko kuvioa mihin osin ei voi enää vaikuttaa, vaan pitää ottaa toteuma siihen mennessä aina huomioon. Toki tällaista reaaliaikaista korjausta kohti pitää jatkossa pyrkiä.
 
Viimeksi muokattu:

jalih

Jäsen
Säie mikä hakee invertteriltä tietoja lähettää "manager" task:in jonoon viestin, että aurinkopaneeleilta tulee riittävästi tuottoa ja haluaisi kytkeä kuorman päälle. Tämän jälkeen informoi vielä "manager" task:ia, että jonossa on käsiteltävää. Nyt herätessään "manager" task käsittelee viestin ja tarkastaa kannattaako kuorma oikeasti laittaa päälle vai kannattaako energia sittenkin myydä verkkoon. Mikäli kuorma laitetaan päälle, niin lähettää vastaavalla tavalla viestin jossa on tiedot ohjauksesta "control" task:ille käsiteltäväksi.
 

tk-

Aktiivinen jäsen
Säie mikä hakee invertteriltä tietoja lähettää "manager" task:in jonoon viestin, että aurinkopaneeleilta tulee riittävästi tuottoa ja haluaisi kytkeä kuorman päälle. Tämän jälkeen informoi vielä "manager" task:ia, että jonossa on käsiteltävää. Nyt herätessään "manager" task käsittelee viestin ja tarkastaa kannattaako kuorma oikeasti laittaa päälle vai kannattaako energia sittenkin myydä verkkoon. Mikäli kuorma laitetaan päälle, niin lähettää vastaavalla tavalla viestin jossa on tiedot ohjauksesta "control" task:ille käsiteltäväksi.
Ok, ja miten tuo control päättelee kannattaako kytkeä? Fiksun kuuloinen systeemi kyllä!
 

jalih

Jäsen
Ok, ja miten tuo control päättelee kannattaako kytkeä? Fiksun kuuloinen systeemi kyllä!
"control" task ei ohjelmassani päättele, suorittaa vain ohjausviestit. Tällä hetkellä "manager" task yksinkertaisesti vertaa hintaa kuorman laskettuihin pörssisähköohjauksiin ja tekee päätöksen siltä pohjalta pistääkö ohjaustapahtuman "control" task:in jonoon käsiteltäväksi vai ei.
 
  • Tykkää
Reactions: tk-

tk-

Aktiivinen jäsen
"control" task ei ohjelmassani päättele, suorittaa vain ohjausviestit. Tällä hetkellä "manager" task yksinkertaisesti vertaa hintaa kuorman laskettuihin pörssisähköohjauksiin ja tekee päätöksen siltä pohjalta pistääkö ohjaustapahtuman "control" task:in jonoon käsiteltäväksi vai ei.
Olis kyllä hauska päästä vertaamaan, että kuinka paljon erilaiseen lopputulemaan tällainen ennusteesta arvaaminen vs tiedon reaaliaikainen päivittäminen johtaa!

Periaatteessa voin vaikka luoda tuonne testilaitteen sinun sähkönhinnoilla ja paneeleilla, ja vaikka homeassistantissa logittaa.
 

heebo1974

Jäsen
Minulla ainakin shelly3em tutkii kokoajan mihin suuntaan sähkö liikkuu ja kuinka paljon. Tällä tiedolla on sitten helppo tehdä mitä kulloinkin haluaa. Itselläni se "lataa" virtuaalista varttinetotus pankkia, ja sitten käynnistelee LVV:tä sopivien raja-arvojen mukaan.
 

tk-

Aktiivinen jäsen
Vähän välillä lisäksi koodausorientoituneempaa viestintää. Kun tuossa on tuotu esiin, että ei tämä pelkästään Shellyjä varten ole, vaan käytännössä Pörssäriä voisi käyttää lähes millä laitteella tahansa missä rajapinnan tarjoamaa json-ohjausdataa voidaan parsia.

Eli erona tuollaiseen pelkän hintatiedon tarjoavaan rajapintaan on se, että palvelimelta tulee senhetkinen ohjaustila + ajastukset milloin ohjaus seuraavan kerran muuttuu. Periaatteessa jos haluaisi käyttää jotain minimaalisella muistikapasiteetilla varustettua ohjauslaitetta eikä tarvitse puskuria nettikatkoille, niin tuo schedule voidaan jättää url-parametrilla kokonaan pois ja saada pelkkä senhetkinen tila.

Jos tavoitteena on tehdä kaikki logiikka itse, niin sitten tämä ei tietenkään ole hyvä vaihtoehto. Mutta jos haluaa jättää logiikkapuolen teon muille ja huolehtia itse vaan ohjauksista, niin seuraavanlainen json-muoto julkistetaan tuonne rajapintaan parin viikon sisällä. Itse toki päivitetään nykyiset Shelly-skriptit sekä PicoW-micropython ja HA-yaml tukemaan uutta muotoa.

Jatkossa ns. virallinen HA-lisäosa sekä pip-paketti esim Raspberry-pohjaisia laitteita varten olisi kyllä tavoiteltava lähtökohta, yritän löytää niille itsekin aikaa kun samalla Pythonilla nekin loppuviimeksi aika pitkälle menisi. Tuolta Githubista saa halutessaan hyvän pohjan Python-koodista sen Pico W -koodin pohjalta jos joku haluaa projektiin sitä kautta myös osallistua.

Teen dokumentointia tuonne uuteen gitbookiin myös kehittäjien näkökulmasta lisää, ja jonkinlainen tahtotila olisi saada aikaan myös swagger-sivusto missä vielä tarkemmat rajapintakuvaukset on helpommin saavutettavissa ja jopa testattavissa. Dev-kantaan saa tarvittaessa käyttöoikeuden laittamalla minulle vaikka yksityisviestiä tai sitten sivuston palautelomakkeella yhteydenottoa!

JSON:
{
    "metadata": {
        "mac": "XXXXXXXXXXXXX",
        "channels": "8",
        "fetchUrl": "https://dev.porssari.fi/getcontrols.php",
        "timestamp": "1693389534",
        "timestampOffset": "10800",
        "validUntil": "1693425600"
    },
    "controls": [
        {
            "id": "1",
            "name": "Channel friendly name",
            "state": "0",
            "schedules": [
                {
                    "timestamp": "1693422000",
                    "state": "1"
                },
                {
                    "timestamp": "1693425600",
                    "state": "0"
                }
            ]
        },
        {
            "id": "2",
            "name": "Channel friendly name",
            "state": "-1",
            "schedules": []
        },
        {
            "id": "3",
            "name": "Channel friendly name",
            "state": "-1",
            "schedules": []
        },
        {
            "id": "4",
            "name": "Channel friendly name",
            "state": "-1",
            "schedules": []
        },
        {
            "id": "5",
            "name": "Channel friendly name",
            "state": "-1",
            "schedules": []
        },
        {
            "id": "6",
            "name": "Channel friendly name",
            "state": "-1",
            "schedules": []
        },
        {
            "id": "7",
            "name": "Channel friendly name",
            "state": "-1",
            "schedules": []
        },
        {
            "id": "8",
            "name": "Channel friendly name",
            "state": "-1",
            "schedules": []
        }
    ]
}
 
Viimeksi muokattu:

tk-

Aktiivinen jäsen
Miten aurinkosähköjärjestelmän kallistuskulmaa voi muuttaa ?
Haluaisitko laittaa siihen jonkun tarkan asteluvun? Nuo on nyt laitettu 15-45-75 kun huomattiin ettei se olennaisesti muuta ennustetta noissa väleissä, mutta periaatteessa tuo tallentuu kantaan pelkkänä numerona, niin sinällään se ottaisi vastaan minkä tahansa luvun välillä 0-90
 

heebo1974

Jäsen
Haluaisitko laittaa siihen jonkun tarkan asteluvun? Nuo on nyt laitettu 15-45-75 kun huomattiin ettei se olennaisesti muuta ennustetta noissa väleissä, mutta periaatteessa tuo tallentuu kantaan pelkkänä numerona, niin sinällään se ottaisi vastaan minkä tahansa luvun välillä 0-90
Jaa, no nuo oletukset varmaankin on ihan ok. Itsellä kattokulma on 35 astetta, mutta tuskin se arvailuissa niin merkittävä on. :)
 

heebo1974

Jäsen
Täytyy kyllä sanoa, että on todella vaikea ymmätää miten tämä systeemi toimii.
Jos haluaa esim. LVV käyttöä ohjailla pörssillä ja aurinkosähköllä, niin pitääkö tehdä kaksi eri ohjaustapaa ?
Lisäksi kaipaisin todella paljon sitä, että visuaalisesti tai edes kellonajoilla kerrottaisiin että milloin ko. kytkennät tullaan tekemään.
Nyt ei ole mitään tietoa että koska mitäkin tehdään. Tai sitten en vain osaa katsoa.
Kyse siis pörssäristä home assistantin kaverina.
 

tk-

Aktiivinen jäsen
Täytyy kyllä sanoa, että on todella vaikea ymmätää miten tämä systeemi toimii.
Jos haluaa esim. LVV käyttöä ohjailla pörssillä ja aurinkosähköllä, niin pitääkö tehdä kaksi eri ohjaustapaa ?
Lisäksi kaipaisin todella paljon sitä, että visuaalisesti tai edes kellonajoilla kerrottaisiin että milloin ko. kytkennät tullaan tekemään.
Nyt ei ole mitään tietoa että koska mitäkin tehdään. Tai sitten en vain osaa katsoa.
Kyse siis pörssäristä home assistantin kaverina.
Tunnistan tämän ongelma. Siellä ohjesivustolla (https://docs.porssari.fi/sivuston-ohjeet/aurinkosaehkoen-kaeyttoe) on lyhyt kuvaus siitä aurinkosähkön käytöstä, mutta aika- ja hintaohjaus vielä puuttuu. Tosin se hinta- ja aikaohjaus ehkä on intuitiivisen selkeämpi.

Siinä Ohjaus-sivulla oli jo aikaisemmin aikajana mikä näytti mitkä tunnit tänään ja hintatietojen saavuttua myös huomenna kytketään. Tuon päivityksen myötä se jana meni rikki, mutta alettiin myös tallentaa kantaan ohjausdataa vikatilanteiden selvittämiseksi. Kunhan ehdin, niin teen takaisin sinne ne graafit, ja mahdollisesti myös sivun missä pystyy selaamaan ohjauksia taaksepäin. Tarkoitus on myös tuoda palkkigraafi minkälaista paistetta forecast.solarista ennustetaan.

Itsellä pyörii HomeAssistantissa myös ”Laadunvalvonta”, siitä näkee hyvin historiasta mitä ohjauksia on annettu. Nuo neljä ensimmäistä on hintarajojen vahdintaa, 5 etsii 4 halvinta tuntia väliltä 00-08 ja 6 oli hintaohjauksen vianmääritystä.

Atte käyttää tuota aurinkosähkön käyttöä, niin liitteenä myös kuva päivästä kun tuottoa ennustettiin päivälle, mutta se oli ennusteen mukaan kannattavampaa myydä.

Mutta yritän parannella dokumentaatioa. Tiedostan isoksi ongelmaksi sen, että nykyisellään Pörssäriin pitäisi vaan osata sokeasti luottaa. Toki priorisoin tuota lämmityksen ohjauslogiikkaa ensin kun sille alkaa olla jo oma tarve.
 

Liitteet

  • IMG_5343.jpeg
    IMG_5343.jpeg
    240,4 KB · Katsottu: 48
  • IMG_5344.jpeg
    IMG_5344.jpeg
    205,2 KB · Katsottu: 47
Viimeksi muokattu:

tassu

Jäsen
Ei taida olla mahdollista poistaa vanhoja laitteita?

Kävi semmonen homma että 3kk käytössä ollut ja alusta asti nikotellut shelly vihdoin antautui. Onneksi oli uusi hyllyssä.

Onko muilla samanlaisia kokemuksia shellyistä?
1693748895584.png
 

tk-

Aktiivinen jäsen
Ei taida olla mahdollista poistaa vanhoja laitteita?

Kävi semmonen homma että 3kk käytössä ollut ja alusta asti nikotellut shelly vihdoin antautui. Onneksi oli uusi hyllyssä.

Onko muilla samanlaisia kokemuksia shellyistä?
katso liitettä 88249
Sieltä laitteen asetuksista saa poistettua. Vielä puuttuu ominaisuus siirtää asetukset semmoisenaan uuteen, mutta ei se ehkä vielä kaksikanavaisen laitteen kanssa onneksi ole iso työ. Toki asetukset voi olla moninaisia.

Jos haluat semmoisenaan vaihtaa nuo toiseen laitteeseen pörssärissä, niin lisää se uusi sinne sivuille, ja laita minulle uuden ja vanhan asetukset, niin synkronoin ne tuolla asetuskannassa.
 
Viimeksi muokattu:

markok

Aktiivinen jäsen
Ei taida olla mahdollista poistaa vanhoja laitteita?

Kävi semmonen homma että 3kk käytössä ollut ja alusta asti nikotellut shelly vihdoin antautui. Onneksi oli uusi hyllyssä.

Onko muilla samanlaisia kokemuksia shellyistä?
Millaista kuormaa tämän Shellyn perässä oli?
 

heebo1974

Jäsen
Miten pörssärissä on ajateltu tuon lattialämmityksen ohjaus ? Ohjaustieto on vain on/off ?
Itselläni siis HA:ssa ohjaus on pörssisähkön rankkien/hinnan perusteella. Eli mitä pienempi rank + hintaraja, sitä lämpimämmälle termostaatti asetellaan. Ja päinvastoin, jos rank on iso ja varsinkin jos on kallista sähköä, niin lämpöjä pudotellaan reippaasti. Toki järkevissä rajoissa.
Esim. Kylppärissä termostaatti on 20-27 asteinen ja huoneistossa taas 18-25. Toki ääripäät ovat tosi harvinaisia.

EDIT: Ja kesällä vielä huoneistossa vielä alemmat lämmöt, eli käytännössä ei lämmitetä ollenkaan.
 

tk-

Aktiivinen jäsen
Miten pörssärissä on ajateltu tuon lattialämmityksen ohjaus ? Ohjaustieto on vain on/off ?
Itselläni siis HA:ssa ohjaus on pörssisähkön rankkien/hinnan perusteella. Eli mitä pienempi rank + hintaraja, sitä lämpimämmälle termostaatti asetellaan. Ja päinvastoin, jos rank on iso ja varsinkin jos on kallista sähköä, niin lämpöjä pudotellaan reippaasti. Toki järkevissä rajoissa.
Esim. Kylppärissä termostaatti on 20-27 asteinen ja huoneistossa taas 18-25. Toki ääripäät ovat tosi harvinaisia.

EDIT: Ja kesällä vielä huoneistossa vielä alemmat lämmöt, eli käytännössä ei lämmitetä ollenkaan.
Ollaan vasta tekemässä sitä lämmityksen ohjausta.

Nykyisellään ehkä voi tuon tyyppisessä hyödyntää niitä keskihinta +- SD-ohjauksia. Tuollaista lineaarista säätöä rankien perusteella ei ole tarjolla.
 

-Teme-

Aktiivinen jäsen
En tunnista tuota ruskeaa Shellyä. Mutta oikea Shelly olisi Pro 1 tuohon käyttöön. Ja kontaktori olisi hyvä olla häiriösuojattu tai erilline. RC Snubberi liitettynä.
Kuva taitaa vähän vääristää värejä mutta sanoisin että kyseessä ruskeaan taittuva harmaa Pro 2. Pro 2PM on väriltään musta.
Vaikuttaa että tullut kipinöintiä takapotkuista. Suosittelen vaihtamaan uuden häiriösuojatun kontaktorin ja/tai asentamaan snubberin
 

jalih

Jäsen
Vaikuttaa että tullut kipinöintiä takapotkuista. Suosittelen vaihtamaan uuden häiriösuojatun kontaktorin ja/tai asentamaan snubberin
Huonoksi on kyllä laitteiden laatu mennyt mikäli LVV-kontaktori kuormana rikkoo melkein uuden laitteen. Oli LVV-kontaktori sitten häiriösuojattu tai ei, niin pitäisi kyllä kestää mikäli ei ole ollut löysiä liitoksia.
 

-Teme-

Aktiivinen jäsen
Huonoksi on kyllä laitteiden laatu mennyt mikäli LVV-kontaktori kuormana rikkoo melkein uuden laitteen. Oli LVV-kontaktori sitten häiriösuojattu tai ei, niin pitäisi kyllä kestää mikäli ei ole ollut löysiä liitoksia.
Induktiivinen kuorma on hankala pienille releille. Tässä myös itsellä on vain yleinen olettamus, kun ei ole mitään tietoa mitä oikeasti on tapahtunut. Piti ottaa auki yksi pro 2 ja katsoa mitä laitteen sisällä on kyseisessä kohdassa.
Siinä näyttää olevan swi inputit ja alla L j N liitännät. Releet ovat toisella puolella jossa myös GPIO pinnit ovat.
releiden kipinöintiin en jaksa enää uskoa, mutta kurkkaaminen sisälle voi paljastaa ongelman. Syy on joko tuosta power in puolelta konkka poksahtanut tai kahdesta eri vaiheesta tullut ylijännite.
@tassu Onko releeseen kytketty ulkoista ohjausta kytkimen kautta? Jos on niin se luultavasti on eri vaiheesta kuin Shellyn oma poweri niissä alemmissa ruuviliittimissä.
Pro2.jpg

Alla olevassa kuvassa on Pro 1PM jossa swi ja laitteen L oli eri vaiheista jolloin sisäinen kytkentä 400v
Samasta kohdasta näyttää toimintasavut tulleen ulos
PRO1PM.jpg
 
Viimeksi muokattu:

tassu

Jäsen
Saman vaiheen perässä ovat olleet kytkin ja itse laitteen syöttö kuten mukana toimitetussa kytkentäkaaviossa esitetään. Eihän laitetta ole speksattukaan 400V vaan 230V.

Homma on ok, Dustinilta lähetettiin uusi tilalle ilmaiseksi ja käskettiin laittaa vanha kierrätykseen.
 

-Teme-

Aktiivinen jäsen
Saman vaiheen perässä ovat olleet kytkin ja itse laitteen syöttö kuten mukana toimitetussa kytkentäkaaviossa esitetään. Eihän laitetta ole speksattukaan 400V vaan 230V.

Homma on ok, Dustinilta lähetettiin uusi tilalle ilmaiseksi ja käskettiin laittaa vanha kierrätykseen.
Hieno homma että asennus kunnossa ja sait uuden laitteen.
Noissa on jonkin verran ollut asennusvirheitä että ohjaus otettu toisesta vaiheesta ja sitten pääsee toimintasavut ulos
 

Joksa

Aktiivinen jäsen
Shellyt ainakin nuo rasiaan menevät käy kuumana muutenkin, mikäli noihin numeroihin on uskomista. Lämpimältä tuntuu myös päältäpäin. Käyttöjännite on 12V ja rele ohjaa lämpöpumpun sisälämpötilaanturin huijausta, rele ei ollut vetäneenä.
 

Liitteet

  • shelly.PNG
    shelly.PNG
    26,6 KB · Katsottu: 40

tk-

Aktiivinen jäsen
Saatiinpa vihdoin tuo ohjausgraafi palautettua (pienen disclaimerin kera). Eli nyt pääsee taas näkemään tulevaisuuteen mitä Pörssäri haluaisi tehdä.

Ajatuksena on vielä jalostaa tuo yhtä huonolla ulkoasulla käytettävämpään muotoon, eli sen saisi sitten pelkällä käyttäjätunnuksella näkyviin ilman sivustolle kirjautumista.

Samalla sen saisi myös homeassistantiin, joskin toinen vaihtoehto on tehdä sinne apexchartilla graafi koko ohjaustiedon ajalle. Täytyy katsoa tulisiko se apex-graafi helpolla kun saadaan uusi aikaleima-json valmiiksi ja ha päivitettyä myös siihen.
efe16ab6-71b4-434f-ac68-3861a8318d52.jpeg
 

tk-

Aktiivinen jäsen
@tk-
Pakko kysyä: miksi AM/PM?
MIksi amerikan formaatilla päivämäärä?
Koska se jostain syystä sen tuohon noin antaa. Liittyy jotenkin tuohon Joomlan ja Google Chartin epäyhteensopivuuteen, tuohon graafille ei saa mitään parametreja läpi ja siksi se näyttää tuolle.

Sen takia se disclaimer siinä onkin. Tuo ohjaustiedon visualisointi ei sinällään ole merkityksellinen ohjausten toiminnan kannalta, niin ei olla siihen ehditty vielä priorisoimaan. Toki se auttaa käyttäjää hahmottamaan paremmin mitä ehdot on tekemässä.
 
Viimeksi muokattu:

joukok

Tulokas
Herrat Pörssärin kehittäjät: KIITOS! Ilmojen viiletessä innostuin vihdoin virittämään ohjausta noin 30:lle kotiin ja mökille asennetulle Shellylle. Näissä on takana kaikenlaista lattialämmöistä vesivaraajiin, myös VILP kuvioissa mukana. VILP oli kesän yli aikaohjattuna Shellyllä ja varaajissakaan ei ollut sen kummempaa logiikkaa. Kotona on Froniuksen 10 kWp aurinkopaneelit ja 10 kWh BYD-kotiakku. Niiltäkin puuttui fiksumpi logiikka - viime kesän akun ohjaus oli ihan mallia "tollo". Froniuksella sai jo fiksusti ohjattua varaajat päälle silloin, kun ylituotantoa paneeleista tuli riittävästi.

Nyt kahden illan pienimuotoisen virittelyn jälkeen Pörssäri ohjaa kaikkia kriittisiä Shellyjä. Teidän toteutuksen logiikka on tosi "yhteensopiva" oman ajattelun kanssa. Kaikki asennukset ja asetukset meni mielestäni täysin loogisesti. Ja on hieno konsepti, että Shellyt hakevat ohjaustietonsa vain ajoittain ja pystyvät toimimaa häiriötilanteessa pitkät pätkät itsenäisesti. Noin se pitää tehdä!

Nuo varaaja- ja VILP-ohjaukset oli ihan peruskauraa, ne lähti pelaamaan heti ekana iltana. Mutta tämän toisen illan vaati, että sain Fronius+BYD-akku-ohjaukseen järkeä. Mulla on ollut pidempää suunnitelmissa HomeAssistantin viritys, mutta ei vieläkään into riittänyt. Tein ehkä "epäelegantin" mutta varsin toimivan ohjauksen kotiakulle. Oikeastaan siihen ei tarvita kuin kolme toimintatilaa: 1) halpaa sähköä: lataa akut verkosta, 2) kallista sähköä: aja omavaraisesti akuilla niin pitkään kuin henkeä riittää ja 3) keskihintaista sähköä. optimoi oman tuotannon käyttö mutta älä pura akkua vaan käytä sähköä verkosta kun aurinkotuotanto ei riitä. Nämä kolme moodia sai helposti määrittämällä Pörssäriin kaksikanavaisen Shelly Pro2:n. Se ei täällä kotona ohjaa releillä yhtään mitään, vaan käytän Shellyn ominaisuutta nykäistä "webhookkia" aina kun rele vetää. Pörssäri siis signaloi Shellylle kalliin ja halvan ajanjakson. Tuo "webhook" nykäisee kotipalvelimellani webserverin komentotiedostoa joka puolestaan ajaa modbus master -emulaattorilla Froniuksen Sunspec-rajapintaan käskyt akun toimintatilaksi. Täähän toimii todella yksinkertaisesti ja ajaa täysin asiansa!

En olis uskonut että parin illan virittelyllä ollaan jo näin pitkällä! Toki tuo aurinkotuotto-ennuste on vielä täysin kokeilematta. Se saattaapi jäädä kevääksi ihmeteltäväksi. Se on kyllä tosi olennainen tässä kun 10 kWp paneelit tuottaa aika reilusti yli oman hetkellisen tarpeen...

Mulla on vielä kaksi latausasemaa, jotka on OCPP-mallisia ja kiinni latausoperaattorin pilvessä. Siellä on viritteillä kanssa spot-hintaohjausta joten ne jatkaa toistaiseksi siellä. Integraatio muuhun systeemiin ei tunnu kovin tarpeelliselta sillä käytännössä autot kannattaa ladata yöaikaan: paneelien ylituotto on keskimäärin fiksumpaa myydä verkkoon ja ei ne autot tuossa pihassa päivällä seiso.

Mutta: kiitos vielä, hieno ja lupaava systeemi joka pääsi täällä Espoossa kovaan käyttöön!
 

tk-

Aktiivinen jäsen
Herrat Pörssärin kehittäjät: KIITOS! Ilmojen viiletessä innostuin vihdoin virittämään ohjausta noin 30:lle kotiin ja mökille asennetulle Shellylle. Näissä on takana kaikenlaista lattialämmöistä vesivaraajiin, myös VILP kuvioissa mukana. VILP oli kesän yli aikaohjattuna Shellyllä ja varaajissakaan ei ollut sen kummempaa logiikkaa. Kotona on Froniuksen 10 kWp aurinkopaneelit ja 10 kWh BYD-kotiakku. Niiltäkin puuttui fiksumpi logiikka - viime kesän akun ohjaus oli ihan mallia "tollo". Froniuksella sai jo fiksusti ohjattua varaajat päälle silloin, kun ylituotantoa paneeleista tuli riittävästi.

Nyt kahden illan pienimuotoisen virittelyn jälkeen Pörssäri ohjaa kaikkia kriittisiä Shellyjä. Teidän toteutuksen logiikka on tosi "yhteensopiva" oman ajattelun kanssa. Kaikki asennukset ja asetukset meni mielestäni täysin loogisesti. Ja on hieno konsepti, että Shellyt hakevat ohjaustietonsa vain ajoittain ja pystyvät toimimaa häiriötilanteessa pitkät pätkät itsenäisesti. Noin se pitää tehdä!

Nuo varaaja- ja VILP-ohjaukset oli ihan peruskauraa, ne lähti pelaamaan heti ekana iltana. Mutta tämän toisen illan vaati, että sain Fronius+BYD-akku-ohjaukseen järkeä. Mulla on ollut pidempää suunnitelmissa HomeAssistantin viritys, mutta ei vieläkään into riittänyt. Tein ehkä "epäelegantin" mutta varsin toimivan ohjauksen kotiakulle. Oikeastaan siihen ei tarvita kuin kolme toimintatilaa: 1) halpaa sähköä: lataa akut verkosta, 2) kallista sähköä: aja omavaraisesti akuilla niin pitkään kuin henkeä riittää ja 3) keskihintaista sähköä. optimoi oman tuotannon käyttö mutta älä pura akkua vaan käytä sähköä verkosta kun aurinkotuotanto ei riitä. Nämä kolme moodia sai helposti määrittämällä Pörssäriin kaksikanavaisen Shelly Pro2:n. Se ei täällä kotona ohjaa releillä yhtään mitään, vaan käytän Shellyn ominaisuutta nykäistä "webhookkia" aina kun rele vetää. Pörssäri siis signaloi Shellylle kalliin ja halvan ajanjakson. Tuo "webhook" nykäisee kotipalvelimellani webserverin komentotiedostoa joka puolestaan ajaa modbus master -emulaattorilla Froniuksen Sunspec-rajapintaan käskyt akun toimintatilaksi. Täähän toimii todella yksinkertaisesti ja ajaa täysin asiansa!

En olis uskonut että parin illan virittelyllä ollaan jo näin pitkällä! Toki tuo aurinkotuotto-ennuste on vielä täysin kokeilematta. Se saattaapi jäädä kevääksi ihmeteltäväksi. Se on kyllä tosi olennainen tässä kun 10 kWp paneelit tuottaa aika reilusti yli oman hetkellisen tarpeen...

Mulla on vielä kaksi latausasemaa, jotka on OCPP-mallisia ja kiinni latausoperaattorin pilvessä. Siellä on viritteillä kanssa spot-hintaohjausta joten ne jatkaa toistaiseksi siellä. Integraatio muuhun systeemiin ei tunnu kovin tarpeelliselta sillä käytännössä autot kannattaa ladata yöaikaan: paneelien ylituotto on keskimäärin fiksumpaa myydä verkkoon ja ei ne autot tuossa pihassa päivällä seiso.

Mutta: kiitos vielä, hieno ja lupaava systeemi joka pääsi täällä Espoossa kovaan käyttöön!
Aivan mahtavaa lukea tällaista palautetta vaikkei se suomalaiseen mielenmaisemaan tahdo sopia ollenkaan, turha tästä numeroa on tehdä... Mutta kiitos erittäin paljon! Ja erittäin hienoa myös nähdä juuri tällaisia esimerkkejä, missä tämä omasta mielestä vielä hyvinkin keskeneräinen systeemi pystyy näin paljon helpottamaan juuri tuollaista useamman eri järjestelmän yhteensovittamista. Ja jos vaan herää ideoita ja ajatuksia mitä kaipaisit tältä lisää, niin ehdottomasti otetaan kehitysideoita vastaan. Meillä on Trello sitä varten, että saadaan sinne kerättyä toiveita ja vietyä sitten työlistallekin aina.

Parannellaan lähiaikoina infrastruktuuria siirtämällä tämä koko systeemi pilveen. Nyt se pyörii tuollaisessa jossain määrin rajoitetussa webhotellissa missä alkaisi tässä varmasti jo lähikuukausina tulla rajat vastaan niin ettei uusia käyttäjiä voitaisi enää ottaa. Päädytään todennäköisesti Oraclen Free Tieriin, mikä riittää sitten kapasiteetin puolesta tarvittaessa tuhansille laitteille palvelinkustannusten jäädessä nollaan. Mikä sopii tällaiseen harrastepalveluun erinomaisen hyvin.
 

tk-

Aktiivinen jäsen
Oracle Always Free -pilvi on onnistuneesti otettu käyttöön, ja näyttäisi olevan erittäin hyvä tähän tarkoitukseen ensivaikutelman perusteella. Nykyisellä vielä piehköllä laitekuormalla resurssikäyttö on jossain alle 5%, joten kasvunvaraa tuolla riittää enemmän kuin tarpeeksi.

Seuraava projekti on valmistella tuo uusi Shelly-skripti mikä mahdollistaa paikallisen ohjauksen helpommin, eli Pörssäri ei jatkuvasti tappele vastaan jos halutaan ohjata esimerkiksi LVV tai lämmitys päälle/pois aikaisemmin kun ohjaus sen tekisi.

Samassa yhteydessä tuodaan tuo uusi rajapinta myös laajemmin käyttöön, eli jos on kiinnostusta omia ohjauksia kysellä suoraan Pörssäristä, niin varmasti voidaan helposti luoda tuollaisia "custom-laitteita" halutulla määrällä ohjausvaihtoehtoja. Myös nykyinen HA-laite on siihen tarkoitukseen toki myös hyödynnettävissä. Aloittelin jo eilen tuon Swaggerin opiskelua, niin avautuu ehkä sitä kautta selkeiten miten tuota rajapintaa voisi helpoiten hyödyntää.

Teoriassa Pörssärin rajapintaa olisi mahdollista käyttää POST-requesteilla siten, että esim json-muodossa lähetettäisiin halutut asetukset rajapintaan ja sieltä saisi ohjaustiedon vastineeksi. Toistaiseksi ei tällaista olla suunnittelemassa, mutta mikäli kiinnostusta tällaiseen olisi niin toivon yhteydenottoja, ja pohditaan saataisiinko yhteisöllisesti myös tämäntyyppistä rajapintaa tuonne serverille mukaan. Tulevaisuuden HomeAssistant -lisäosa voisi olla tämäntyyppinen ratkaisu missä asetukset sitten olisi tallessa siellä omassa HA:ssa.
 

tk-

Aktiivinen jäsen
Uusi skripti alkaa olla valmis ja tulee kirjastoon ensi viikolla. Julkaisuversiot tulee aina kirjaston kautta ja testiversioita ei koskaan lisätä kirjastoon.

Tässä uudessa versiossa on nyt mukana ohjaus siten, että ohjataan kerran jakson alussa ja tämän jälkeen Shelly ei tappele paikallista ohjausta vastaan. Konkreettisesti niin, että jos Pörssäri haluaa laitteen olevan päällä 8-9 ja 10-11, ja käyttäjä sammuttaa laitteen 8.30, tulee seuraava muutos Pörssärin tekemänä klo 10 kun laite seuraavan kerran kytketään päälle. Toki myös tuo klo 9 pois-käsky ohjataan, mutta se ei laitteen jo ollessa pois tee mitään. Poikkeuksena toki tilanne missä käyttäjä muuttaa asetuksia sivustolla, silloin Pörssäri ohjaa heti seuraavalla ohjaustiedon haulla laitteen oikeaan tilaan.

Jos on kiinnostusta betatestaukseen, niin uusi skripti (2.0_rc2) on jo kopioitavissa githubista osoitteesta https://github.com/Porssari/Shelly-client/tree/main/daily. Rivillä 7 urliin pitää dev tilalle vaihtaa api jotta toimii tuotantorajapinnan laitteilla.
 
Viimeksi muokattu:

tk-

Aktiivinen jäsen
Uusi ohjausskripti on nyt julkaistu kirjastoon. Ohjeet päivittämiseen tehdään vielä tässä muutaman päivän sisään, mutta eipä se vaikea operaatio ole jos/kun omaa osaamista Shellyn kanssa:

1. Poista vanha ohjausskripti sekä vahtiskripti.
2. Päivitä Shellyn firmware uusimpaan 1.0.3 -versioon, jos on jo päivitetty aikaisemmin niin uudelleenkäynnistä Shelly.
3. Lataa uudesta ohjelmakirjastosta (linkki muuttunut uuteen firmwareen, https://raw.githubusercontent.com/Porssari/Shelly-client/main/release/porssari-manifest.json) ohjausskripti sekä vahtiskripti yksi kerrallaan tallentaen.
4. Laita uudet skriptit päälle ja aktivoi ne

Uusi skripti tosiaan mahdollistaa nyt paikallisen ohjauksen, ja Pörssäri ei tappele sitä vastaan. Jos laitteessa on ollut ongelmia pilven kanssa tai muuta pätkimistä, niin suosittelen vahvasti palauttamaan laitteen tehdasasetuksille tässä päivityksen yhteydessä.

Asetukset säilyvät sivustolla päivityksen ajan normaalisti, ja Shelly jatkaa ohjauksia aiempien asetusten mukaan heti päivityksen jälkeen.
 

tk-

Aktiivinen jäsen
Tässä alkaa nyt kertyä käyttökokemusta uudesta skriptistä. Vaikuttaa siltä, että edes ne epävakaaksi väitetyt pro4pm -mallit eivät sitä tuolla uudella skriptillä enää ole, vaan boottailut/skriptin uudelleenkäynnistykset on loppuneet kuin seinään päivityksen jälkeen.

Eli semmoinen fiilis tässä alkaa olemaan, että kyllä iso osa noista ”räpsyistä” on ollut myös ihan näihin skripteihin ja etenkin siihen vanhaan umpisurkeaan skriptimoottoriin liittyviä.

Pörssärin uusi skripti pyörii 1.0.3 -firmiksessä erittäin huonon wifin (-70dB) päässä eco-moodissa täysin ongelmitta ja yli 10 astetta normaalitilaa viileämpänä (30 vs 42 astetta). Huomioitavaa on se, että plugin perässä ei ole mitään kuormaa, mutta siitä huolimatta lämmöt on yli 40 normaalitilassa.

Vaikuttaa erittäin lupaavalle, ja luotettavuus alkaa vastaamaan sitä tasoa mitä näiden pitäisi olla.
 

tk-

Aktiivinen jäsen
Scriptit taitavat olla suurin epävakauden syy, koska itse pro4pm on pyörinyt pomminvarmasti Home Assistantilla ohjattuna.
Näin minustakin näyttää. Tuo vanha skriptimoottori ei tarjonnut mitään muuta mahdollisuutta saada kelloa tietoon paitsi toistuvat Shellyn rpc-kyselyt. Nämä sitten kokoajan varasi sekä muistia että meni asynkronoidusti siellä muun koodin ohessa, ja kyselyt palautti vastauksia miten sattuu.

Nyt tuossa uusimmassa skriptiversiossa saadaan aika tietoon niinkuin javascriptissä yleensä saadaan, ja pystytään lukemaan jsonia niinkuin javascriptissä yleensä pystyy. Siitä tuli toiminnaltaan huomattavasti yksinkertaisempi, yksi timer pyörittää koko hommaa ja silloin kun tehdään serverikyselyä, niin silloin ei ohjata releitä.

Eli nuo kaikki päällekkäiset shellyn rpc-kutsut on jääneet historiaan. Kunnia kuuluu tuolle päivitetylle skriptimoottorille. Yksikään päivitetty laite ei serverin login mukaan enää kaatuile satunnaisesti uudella firmiksellä ja skriptiversiolla.

Serveripuoli meillä on ollut vajaa jo keväästä lähtien, nyttemmin siellä Oraclen Free Tier -pilvessä. Ja nyt kun saatiin tuo skripti kuntoon uuden firmiksen myötä, niin eiköhän tämä ala olemaan vakaudeltaan sitä tasoa kun kotiautomaatiolta vaaditaan!

Tosin se todettakoon, että suuri osa uudelleenkäynnistyvän skriptin ”uhreista” ei ole siitä huolimatta huomannut itse mitään puutteita, koska skripti ehtii ohjaamaan aina välissä tarpeeksi…
 

tk-

Aktiivinen jäsen
Ketäpä ei tilastodata kiinnostaisi. Tässä nyt vähän osviittaa jo päivitettyjen laitteiden osalta minkälaisella jakaumalla näitä ohjauksiin käytetään. Yleistettävyys on vähintäänkin vahvinta näytön astetta, eli MUTU. Tuo PM-laitteiden osuus on kyllä iso kaikenkaikkiaan.

1696178555142.png
 
Back
Ylös Bottom