Follow along with the video below to see how to install our site as a web app on your home screen.
Huomio: This feature may not be available in some browsers.
Ei varmaan ole vielä kerrottavaa, niille riittää kun Fingrid aloittaa tuon vyöryn...Kuluttajien osalta ei taida yksikään firma kertonut miten käy.
Ja onko mittarit kaikilla varttimittaukseen kykeneviä?
Jos saat asennetun ympäristöösi jq komennon, sillä voi parsia jsonia shellissä.Milläs noita helpoiten käsittelee shell scripteissä tai vaikkapa awk:lla? Pitäis ensin saada taulukoksi.
Niin katselin ja kai sen saa. En ole vielä kokeillut.Jos saat asennetun ympäristöösi jq komennon, sillä voi parsia jsonia shellissä.
Kyllä se lienee aika standardi jos halutaan hakea tietoa. Mutta tosiaan tuollaiset pelköt "päätökset" voi tehdä pelkällä http statuksella mikä on helpoin parsia aina.Mikäs muuten tekee JSONista hyvän tällaiseen? Mulle ainakin olisi helpompi vaikkapa päivämäärä ja sitten 24 hintaa vaikkapa pilkuilla erotettuna.
Milläs noita helpoiten käsittelee shell scripteissä tai vaikkapa awk:lla? Pitäis ensin saada taulukoksi.
Jos antaa ulos paikallisaikaleimoja, niin sitten mukana pitää olla myös UTC-offset (meillä siis +02:00 tai +03:00). Nyt näyttää API antavan oikeaoppisesti ISO 8601-aikaleimat, hyvä hyvä.Vielä perään tuo aikavyöhyketieto, niin kesäaikakin hoituu oikein. Toki sitten API ei enää ole ihan niin läpisimppeli kuin nyt.
Eilen kävi asentaja laittamassa wifi-releen sähkökeskukseen. Samalla teki pieniä ylläpitotöitä ja purki vanhoja energiavaraajan ohjauksia ja muuta vanhaksi jäänyttä uuden alta pois. Aina hyvä, kun siistitään, järkeistetään ja jätetään "työpaikka" selkeämmäksi ja ylläpidettävämmäksi kuin mitä se oli aloitettaessa. Koskee näemmä yhtälailla sähkö- kuin koodaustöitä, varmaan monia muitakin hommia.Viikonloppuna rele on toivottavasti jo paikoillaan ohjaamassa varaajaa.
On se jossakin maailmassa de facto interface-standardi, mutta kyllä xml on ihan samalla lailla standardi (ja todellisuudessa aika helppo jäsennellä ja tulkita sekin, jopa ilman tähän tarkoitettua kirjastoa sopivalla merkkijono-orientoituneella välineellä). Mutta json on ihan OK mielestäni myös.Kyllä se lienee aika standardi jos halutaan hakea tietoa. Mutta tosiaan tuollaiset pelköt "päätökset" voi tehdä pelkällä http statuksella mikä on helpoin parsia aina.
Koitan laittaa hetkeksi logitusta päälle ja varmistan, etten turhaan kysele APIsta liian usein.Juu ei mitään 5 minuuttia. Minuutti on hyvä tahti. Eikä per 30 sekuntiakaan ollenkaan paha.
Tuo taisi tosiaan aikanaan olla noin kuin väitin, mutta Entso-E:n kaudella kaikki on hiottu tarkemmin, ikään kuin "saksalaistettu". Tosiaan, kannattaa prosessoida kaikki UTC-pohjaisena, niin pääsee paljosta sotkusta. Tuon olisi suonut Microsoftinkin aikoinaan ymmärtäneen, kun Windowsin aikaraamiston väsäsi (liekö suunnittelutkin, ainakin hieman?).Ainakin Entso-E:n hintahistoria kertoo, että viime syksynä 31.10 oli hintadatassa 25 tuntia, ja klo 3 alkavilla kahdella peräkkäisellä tunnilla oli hieman eri hinta: 60,06 € ja 60,03 €.
Siis kyse pörssisähköjen hinnan kyselystä?
Tarviiko sitä kysellä kuin kerran vuorokaudessa ja aina kun laite/softa käynnistyy?
Vai vaatiiko tuo paikallisesti ylimääräistä, vaikeasti toteutettavaa koodia?
Tässä taitaa olla meneillään koe siitä kuinka API-suunnittelulla voidaan pitää se asiakaspää aivan minimaalisena.Siis kyse pörssisähköjen hinnan kyselystä?
Tarviiko sitä kysellä kuin kerran vuorokaudessa ja aina kun laite/softa käynnistyy?
Vai vaatiiko tuo paikallisesti ylimääräistä, vaikeasti toteutettavaa koodia?
Ja saada ohjaustieto kolmelle halvimmalle tunnille vuorokaudessa. Se on aika kevyt operaatio, kun käyttää HEAD eikä GET metodia, niin palvelimen ei tarvitse edes muodostaa tai lähettää vastauksen bodya kun pelkät vastauksen headerit riittää
Toi menee jo melkein nörttihuumorin puolelle, mutta kuvitellaan, että näitä pollaajia on muutama miljoona. Vielä on vähän matkaa siihen, mutta API:n osalta on minimalisointi tehty tuota silmällä pitäen.
Tuossa minun esimerkissä kutsun JustNowRank-APIa kerran tunnissa, silloin kun se on voinut muuttua. Laitoin tarkoituksella minuutin yli, jotta status olisi varmasti päivittynyt.Mulle nuo API hommelit ei ole niin tuttuja.
Riittääkö justnow funktioille kutsu kerran tunnissa? Esim minuutin tai sekunnin yli tasan? Responsehan voi muuttua vain tasalta. Kannattaako tuota tiheämpään pollata?
No, nämä mun kysymykset ei varsinaisesti liity APIin vaan käyttäjään.
Koska rajapinnat on avoimet, niin tuolla on rajoitus päällä että kuinka paljon suorituksia vuorokaudessa saa mennä läpi. Se on nyt asetettu aika tiukalle luokkaan 3 requestia per sekunti.
"Denial of Wallet" on jonkinlainen riski aina kun koodataan pilveen softaa. Azuressa on onneksi "jarru", mikä lyö pelin poikki jos tulee hillitön kuorma.
Kyllä tuossa on paljon mahdollisuuksia asiakaspään järkevöittämiselle. Naivi ensimmäinen toteutus onnistuu helposti, mutta sen jälkeen on syytä miettiä, että käyttääkö ilmaista resurssia enemmän kuin olisi kohtuullista.Mulle nuo API hommelit ei ole niin tuttuja.
Riittääkö justnow funktioille kutsu kerran tunnissa? Esim minuutin tai sekunnin yli tasan? Responsehan voi muuttua vain tasalta. Kannattaako tuota tiheämpään pollata?
No, nämä mun kysymykset ei varsinaisesti liity APIin vaan käyttäjään.
downloader:
download_dir: downloads
alias: Fetch spot prices into a local file
description: ""
trigger:
- platform: time_pattern
hours: "*"
minutes: "0"
seconds: "05"
condition: []
action:
- service: downloader.download_file
data:
url: https://www.spot-hinta.fi/TodayAndDayForward
filename: spot-prices.json
overwrite: true
mode: single
- platform: command_line
name: "Spot price"
command: jq --arg timestamp "{{ as_timestamp(now() + timedelta(hours=0)) | timestamp_custom('%Y-%m-%dT%H') }}" '.[] | select(.DateTime | contains($timestamp))' downloads/spot-prices.json
json_attributes:
- DateTime
- PriceWithTax
- PriceNoTax
- Rank
- platform: command_line
name: "Spot price +1h"
command: jq --arg timestamp "{{ as_timestamp(now() + timedelta(hours=1)) | timestamp_custom('%Y-%m-%dT%H') }}" '.[] | select(.DateTime | contains($timestamp))' downloads/spot-prices.json
json_attributes:
- DateTime
- PriceWithTax
- PriceNoTax
- Rank
Kyllä saa. Ihan perusmikrokontrollerilla (8-bit AVR/PIC tms, 2 € kpl pienissä erissä) olisi helppo toteuttaa koko lämpöpumpun ohjaus. Graafinen käyttöliittymä ja nettiliitäntä vaatii jo vähän enemmän.mutta mikrokontrolleriin ei hurjaa älyä saa koodattua
Oho... Onko näin. Tiedän kyllä että aika taikoja noilla tehdään.Kyllä saa. Ihan perusmikrokontrollerilla (8-bit AVR/PIC tms, 2 € kpl pienissä erissä) olisi helppo toteuttaa koko lämpöpumpun ohjaus. Graafinen käyttöliittymä ja nettiliitäntä vaatii jo vähän enemmän.
Mites tämä ESPeasy vertautuu esimerkiksi ESPHomeen? Vähän menee jo offtopicESPeasyssä sai halutun toiminnallisuuden vain määrittämällä pari simppleliä sääntöä.
Joo kyllä noilla voi tehdä todella paljon ja nopeasti. On vain totuttu siihen, että "pitää olla" vähintää Raspi tai PC, jolla saa jo ihan tolkuttomia lasketatehoja ja voi sitten käyttää kaikkea epätehokasta, kuten Excel-laskentaa, JavaScriptiä jne. Ei sellaisia tarvita perusjuttuihin.Oho... Onko näin. Tiedän kyllä että aika taikoja noilla tehdään.
Ei tuohon ole mitään yleispätevää algoritmia. Riippuu mitä tuossa säädetään. Vaikkapa käyttövedelle asia riippuu säiliön koosta sekä vedenkäytöstä että ajoituksesta. Jos iltasin mennään suihkuun, voi olla huono juttu päättää iltapäivällä, että mennään vielä loppuilta lämmittämättä, kun yöllä onkin halvempaa.Mikä olisi järkevä algoritmi tuon mahdollisuuden käyttämiseen ilman että tulee mitään ikäviä sivuvaikutuksia?
Öö... Eikai kun ne on samat riippumatta muuttuvasta hinnasta. Eihän tässä mitään itsepetosta yritetä vaan löytää tapoja ajaa keskihintaa alemmas käytetylle sähkölle.Pitäishän algoritmin huomioida myös siirto ja sähkövero, jotta ei luule halvan olevan aivan niin halpaa.
Koko saatavilla oleva tuntihinnasto kannattaa ottaa käsiteltäväksi. Dataahan on saatavilla luokkaa 22 tuntia ... 46 tuntia eteen päin, juuri puolen päivän jälkeen vähiten, alkuiltapäivästä tyypillisesti pisimpään.Mikä olisi järkevä algoritmi tuon mahdollisuuden käyttämiseen ilman että tulee mitään ikäviä sivuvaikutuksia?
Mulla yösiirto on halvempi. Lisäksi varaaminen kuumaksi lyhyellä ajalla vie enemmän sähköä kuin tasaisen lämmön ylläpito. Lämpöpumpulla COP heikkenee ja lämpöhäviöt lisääntyvät, jos laatta tai varaaja on normaalia kuumempi.Öö... Eikai kun ne on samat riippumatta muuttuvasta hinnasta. Eihän tässä mitään itsepetosta yritetä vaan löytää tapoja ajaa keskihintaa alemmas käytetylle sähkölle.
Uudet hinnat tulee joskus 14:00 jälkeen. Siis 14:00 on vain 10 tuntia ja sitten kohta on lähes 34 tuntia tulevaisuuteen. Noiden 10 tuntien kohtalo on jo kertaalleen päätetty, mutta kannattaahan ne päivittää, kun tulee seuraava vrk.Dataahan on saatavilla luokkaa 22 tuntia ... 46 tuntia eteen päin
Ei tuo mitään PC:tä tarvitse, jos et ala FEMillä laskemaan lämpötilakenttiä. Yksinkertainen malli, jossa on rakennuksen ja lämmitysjärjestelmän lämpökapasiteetit, lämmitysteho ja häviöt ulos pyörii dynaamisen mallina vaikka siinä 8 bit mikrokontrollerissa liukulukulaskentana.Jos laskentaan on varaa satsata sen verran, mitä tehokkaalla PC:llä tms. pystyy, voisi ehkä toteuttaa dynaamisen ohjelmoinnin algoritmin, eli lähdetään vaan kokeilemaan tunteja jakson alusta eteenpäin (jättämällä myös tunteja välistä pois) laskien samalla vastaavaa kustannusta ja käytettyä sähköä niin, että varaston varastointimäärä pysyy asetettujen rajojen sisällä.