Datankeräyspurkki

  • Viestiketjun aloittaja Viestiketjun aloittaja JKAVS
  • Aloituspäivämäärä Aloituspäivämäärä
Nyt uudesta säädöstä on kertynyt muutama päivä kokemusta ja se tuntuu toimivan erinomaisesti. Se on tarkka, ei säätele venttiiliä turhaan ja reagoi nopeasti. Kuvassa näkyy miten asiat etenivät kun kattilaan tehtiin tulet vähän aikaa sen jälkeen kun suntti oli jo täysin auennut.
Näyttökuva 2022-02-10 161325.webp

Alla vielä säätimen koodi kiinnostuneiden ihmeteltäväksi:
Koodi:
const meno = msg.payload.meno;
const paluu = msg.payload.paluu;
const kuuma = msg.payload.kuuma;
const asetus = msg.payload.setpoint

//Säädöt
const ei_saatoa_raja = 0.5;
const karkea_raja = 5;
const karkea_saato = 0.02;
const hieno_saato = 0.005;

//Haetaan vanha korjaustermi ja asento
var korjaus = flow.get("korjaus");
var vanha_asento = flow.get("asento");

//Lasketaan perusasento lämpötilojen suhteena
var asento = (asetus-paluu)/(kuuma-paluu);

//Lasketaan eroarvo
const ero = asetus - meno;

//Säädetään korjaustermiä, kunhan venttiilin asento ei ole 0 tai 1 eikä virhe ole hyvin pieni
if (vanha_asento != 1 && vanha_asento != 0 && Math.abs(ero) > ei_saatoa_raja) {
    //Jos asetus on paljon menoa suurempi, säädetään karkeasti
    if (ero > karkea_raja){
        korjaus = korjaus + karkea_saato;
    }
    //Jos asetus on hieman menoa suurempi, säädetään hienosti
    else if (ero <= karkea_raja && asetus > meno){
        korjaus = korjaus + hieno_saato;
    }
    //Jos asetus on hieman menoa pienempi, säädetään hienosti
    else if (Math.abs(ero) <= karkea_raja && asetus < meno){
        korjaus = korjaus - hieno_saato;
    }
    //Jos asetus on paljon menoa suurempi, säädetään karkeasti
    else if (Math.abs(ero) > karkea_raja && asetus < meno){
        korjaus = korjaus - karkea_saato;
    }
}

//Summataan perusasento ja korjaustermi
asento = asento + korjaus;

//Rajoitetaan asento välille 0-1
if (asento < 0){
    asento = 0;
}
if (asento > 1){
    asento = 1;
}

//Tallennetaan nykyinen korjaustermi ja asento
flow.set("korjaus", korjaus);
flow.set("asento", asento);

//Lähetetään asento eteenpäin
var newMsg = { payload: asento, topic: "teho" };
return newMsg;
 
Aikomuskitkaa ollut runsaasti, mutta hiukan lämmityssysteemin loggailua parannettu.

Aiemmin vaihdoin RPi3 kakkosen tilalle ja käyttislevy/massamuistiksi tuli USB SSD.

Eilen ehtoolla turattu Influxdb Rapsberryyn ja ohjelmaan muutos että lykkää kantaan. Aamulla Grafana asennettu. Käppyrää tulee. Liuta lämpötiloja saatava vielä anturoitua
 
Muuten kaikki toimii, mutta ulkolämpötilan mittauksessa on jotain häikkää. Keskiviikkona anturin mielestä ulkolämpötila oli lähes 10 astetta, vaikka oltiin hädin tuskin nollan yläpuolella. Muinakin päivinä on tullut epätavallisen korkeita lukemia.

Eiköhän tuo vielä tämän lämmityskauden mene, mutta kesän aikana täytyy tehdä jotain. Aion myös asentaa savukaasun lämpömittauksen.
 
Muuten kaikki toimii, mutta ulkolämpötilan mittauksessa on jotain häikkää. Keskiviikkona anturin mielestä ulkolämpötila oli lähes 10 astetta, vaikka oltiin hädin tuskin nollan yläpuolella. Muinakin päivinä on tullut epätavallisen korkeita lukemia.

Eiköhän tuo vielä tämän lämmityskauden mene, mutta kesän aikana täytyy tehdä jotain. Aion myös asentaa savukaasun lämpömittauksen.
Missä tuo ulkoanturi on? Ei kai aurinko pääse lämmittämään?
 
Ei pääse. Pohjoisen puoleisella seinällä on. Parilla kaapelin naulakiinnikkeellä puisessa ovenkarmissa.

Ja tosiaan ennen ei ole ollut selvästi vääriä lukemia.

Se just. Tällainen johdon päässä oleva.
2_760906-481x384.jpg
Noista on eri palstoilla ollut keskusteluja, että ovat edullisia, mutta joskus lyhytikäisiä. En ole koskaan enempää selvittänyt asiaa - jäänyt vaan mieleen tuo.
Noista on myynnissä myös väärennöksiä. Tuossa jotain tarinaa https://electronics.stackexchange.c...-of-these-ds18b20-temperature-sensors-is-fake
 
Mulla on noita ds18s20 tai ds18b20 kymmenkunta jatkuvassa käytössä, eikä niiden kanssa ole ongelmia ollut, jos topologia on kunnossa.
 
Viimeksi muokattu:
Ja kun nuo vielä ovat digitaalisia, niin oudolta kuulostaa, että antais vääriä lukemia. Vaikka nuo ovat halpoja, niin yllättävän hyvin näyttävät samaa lämpötilaa vierekkäiset anturit.
 
No ostaa komponenttina ja suojaa säältä itse niin ei ole vinkuintian kopiosta vaaraa, etenkin kun DS18B20 ostaa hyvämaineiselta komponenttimyyjältä. Toki noita piuhamalleja saa halvalla.
 
Kyhäsin lämpötilansäädölle pienen ohjauspaneelin. Siitä saa säädettyä säätökäyrän arvot päivälle ja yölle ja säädettyä milloin yöpudotus alkaa ja loppuu. Sivun alareunassa näytetään sekä päivän että yön säätökökäyrät graafisesti. Lisäksi säädölle on valittavana kolme toimintatapaa: automaatti, menoveden lämpötilan ohitus ja venttiilin asennon ohitus. Ensimmäisessä menoveden lämpötila säädetään tavalliseen tapaan ulkolämpötilan perusteella säätökäyrän mukaisesti. Toisessa säätötavassa voidaan asettaa menoveden lämpötila käsin ja säädin pyrkii pitämään sen. Kolmannessa tavassa venttiilin asento säädetään suoraan käsin.

Ohjauspaneelissa on yksinkertainen PHP-skripti joka tallentaa säädetyt arvot tekstitiedostoon palvelimelle. Lämpötilansäädin lukee tiedoston viiden minuutin välein ja ottaa uudet arvot käyttöön.

Ohjauspaneeli.webp
 
Päivityksiä tähän. Purkki oli jotenkin tiltannut kesän aikana. Huomasin kun piti alkaa lämmittämään ensimmäistä kertaa tänä syksynä, eikä Grafanassa ollut nähtävissä mitään lukemia. SSH:lla ei myöskään saanut yhteyttä Orange Pi:hin, ping ei tuottanut tulosta eikä uudelleenkäynnistyskään auttanut.

Koneeseen saa kuitenkin yhteyden myös UART:in kautta käyttäen UART-USB -muunninta ja tietokoneella esimerkiksi Puttyä päätteenä. Se toimi, mutta mitään syytä WIFI-yhteysongelmille ei löytynyt. Vaihdoin koneen muistikortin uuteen, kun en muutakaan keksinyt. Sen jälkeen kone on toiminut.

Näissä pienissä koneissahan on vaarana että muistikortti kuluu jatkuvasta käytöstä ja lakkaa lopulta toimimasta. Siksi kone onkin ollut vain luku -tilassa, jolloin se ei tallenna muistikortille mitään eikä kulumista pitäisi tapahtua. Muistikortin vaihdolla vika kuitenkin tuntui korjaantuvan. Muistikortti ei tosin ollut uusi kun laitoin sen Orange Pi:hin, joten kulumaa siinä oli varmaan jo valmiiksi.

Edelliskeväänä oli keskustelua ulkolämpöanturin virhelukemista. Sen jälkeen niitä ei ole ilmennyt, ja koko viime talvi mentiin onnistuneesti vanhalla anturilla. Täksi talveksi tein kuitenkin muutoksen. Tähän asti anturi on ollut kahdella kaapelin naulakiinnikkeellä kiinni puisessa ovenkarmissa. Asennus on ollut hyvä ja siistin näköinen, mutta hidastanut reagointia ulkolämpötilan muutoksiin. Nyt ruuvasin karmiin pitkän puuruuvin pystyyn ja kiinnitin anturin sen kylkeen letkunkiristimellä. Näyttää tyhmältä, mutta oletettavasti reagoi nopeammin, eikä sitä siellä juuri kukaan ole katselemassa.

Savukaasun lämpöanturikin on nyt toista toista lämmityskautta käytössä. Se on 100 mm pitkä termoparitikku Ebaysta, jonka pitäisi toimia 700 asteeseen asti. Se on kytketty muiden lämpöantureiden kanssa samaan 1-wire -väylään tällaisen muuntimen kanssa. Täysin oikeita lukemia se ei tosin anna, ennen tämän syksyn ensimmäsitä lämmitystä pannuhuoneen ollessa 10-asteinen, näytti savukaasun lämpö 50 astetta. En tosin käytä savukaasun lämpötila-arvoa muuhun kuin nähdäkseni onko pesä palanut tyhjäksi, ja siihen tarkkuus kyllä riittää. Pitäisi varmaan kokeilla vaihtaa anturin johdot keskenään, jos olen vaikka kytkenyt ne väärin.
 
Töissä on muutama kymmenen Raspberryä 24:7 loggaamassa. Joitakin muistikortteja on korruptoitunut. On kyllä suosiolla laitettu uusi kortti sellaiseen. Kingstonin tavallisia kortteja olleet. Yksi asia ollut myös Raspberryn powerointi joka useimmissa paikoissa 5VDC syötettynä GPIO pinniriviin. RPi kolmoset ovat krantumpia ja sikäli sitten siirrytty 5.1VDC syöttämiseen vaikka kakkoset pelasi viidellä hyvin. Itse olen kuvitellut että alempi käyttöjännite edesauttaa kortin korruptiota. Joka tapauksessa suuri osa pelannut vuosia joten ei merkittävä ongelma, mutta korjauksen osuessa kohdalle muutetaan powerointikin asianmukaiseksi.

Nyttemmin uudet systeemit on asennettu "high endurance" maininnalla oleviin kortteihin. Sellaisia ei ole vielä yhtään hajonnut joskin ei ole vielä juuri yli vuoden käyttökokemusta. Yhtä kaikki RPi on kyllä luotettava ja edullinen työjuhta vaikka omasta hinnat "menneet pilviin" aiempaan verraten
 
...

Savukaasun lämpöanturikin on nyt toista toista lämmityskautta käytössä. Se on 100 mm pitkä termoparitikku Ebaysta, jonka pitäisi toimia 700 asteeseen asti. Se on kytketty muiden lämpöantureiden kanssa samaan 1-wire -väylään tällaisen muuntimen kanssa. Täysin oikeita lukemia se ei tosin anna, ennen tämän syksyn ensimmäsitä lämmitystä pannuhuoneen ollessa 10-asteinen, näytti savukaasun lämpö 50 astetta. En tosin käytä savukaasun lämpötila-arvoa muuhun kuin nähdäkseni onko pesä palanut tyhjäksi, ja siihen tarkkuus kyllä riittää. Pitäisi varmaan kokeilla vaihtaa anturin johdot keskenään, jos olen vaikka kytkenyt ne väärin.

Jotain häiväräkkää siinä täytyy olla.

Just kattelin kun tein yhden lämpötilakontrolleerauksen RPi kytketyllä MAX31855 piirillä joka SPI liitännällä niin näyttää nyt ulkolämpötilassa pari astetta kun vertaa likellä oleviin pt-100 antureihin, tosin nuo pt100:t on kunnon säteilysuojissa joten tuo termoparin mittaama saattaa saada aurinkoa nyt.

Että kyllä sen pitäisi parin kolmen asteen sisällä näyttää, labratessa tekemääni oli kyllä tarkempi. toki kun mietitään termoparimittausta niin pitää siihen "kylmän pään" kompensointiin kiinnittää huomiota eli sille on rajansa esim. kuinka alhaisessa lämpötilassa sen liitäntäpiirin kompensointi toimii kunnolla ja sitten vielä se että piirin pitää olla samassa lämpötilassa kuin se kylmän pään liitos eli liitin jossa termopari muuttuu "muuksi metalliksi"
 
Jotain häiväräkkää siinä täytyy olla.

Just kattelin kun tein yhden lämpötilakontrolleerauksen RPi kytketyllä MAX31855 piirillä joka SPI liitännällä niin näyttää nyt ulkolämpötilassa pari astetta kun vertaa likellä oleviin pt-100 antureihin, tosin nuo pt100:t on kunnon säteilysuojissa joten tuo termoparin mittaama saattaa saada aurinkoa nyt.

Että kyllä sen pitäisi parin kolmen asteen sisällä näyttää, labratessa tekemääni oli kyllä tarkempi. toki kun mietitään termoparimittausta niin pitää siihen "kylmän pään" kompensointiin kiinnittää huomiota eli sille on rajansa esim. kuinka alhaisessa lämpötilassa sen liitäntäpiirin kompensointi toimii kunnolla ja sitten vielä se että piirin pitää olla samassa lämpötilassa kuin se kylmän pään liitos eli liitin jossa termopari muuttuu "muuksi metalliksi"
Alkoi tulla järkevämpiä lukemia, kun johdot vaihtoi toisin päin.
 
Ei saisi nuolaista ennen kuin tipahtaa. Kun vaihdoin anturin johdot, oli savukaasun lämpötila vielä laskemassa lämmityksen jäljiltä. Johtoja vaihtaessa lämpötila tipahti 90 asteesta 40 asteeseen. Koska lukemat ovat olleet liian suuria, niin oletin heti, että vika tuli korjattua. Sen jälkeen pannun entisestään jäähtyessä anturin näyttämä lämpötila kuitenkin nousi 50 asteeseen. Tuo 50 astetta on juuri se lämpötila, jota savukaasuanturi on tähänkin asti näyttänyt pannun ollessa kylmänä.

Nyt kun tein uudet tulet, niin lämpötilalukema meni pakkaselle -100 ja -200 asteen väliin.

Alkuperäinen napaisuus siis oli oikein ja vika näyttäisi olevan kompensoinnissa. Datalehden mukaan kylmän pään lämpötila saisi olla -55 - +125 astetta. Muunnin on kotelossa pannuhuoneen seinällä, joten lämpötilan pitäisi olla sopivalla tasolla.
 
Varmaan sitten vaihtoedot vähissä, muunnin kakkana. Saatkos kaivettua että antaako jotakin vikatietoa muuntimen kautta... ja eihän anturi ole maasulussa tai synny jokun maasilmukka anturipiuhan kautta joka sotkisi lukemia? Pannu ja savutorvi kuitenkin maissa savukaasuropelin pumppujen tai putkistomaan kautta??
 
Muunnin osaa kertoa onko anturi oikosulussa jännitteeseen, maahan tai piiri auki. Olen melko varma, ettei mikään niistä ollut päällä kun viimeksi katsoin. Nyt kuitenkin oli tieto oikosulusta maahan. Se säilyi vaikka otin anturin irti savukanavasta ja katsoin ettei se tai metallipunoskaapeli kosketa mihinkään metalliseen.

Sitten mittasin muunninta, ja siinä termopariliittimen plussa on oikosulussa maahan. Kytkentäkaavion mukaan niin ei pitäisi olla, eli jokin taitaa olla rikki.
schematic_1.jpg
 

Luo tili tai kirjaudu sisään kommentoidaksesi

Sinun täytyy olla jäsen voidaksesi jättää kommentin.

Luo käyttäjätili

Liity Konekansalaiseksi. Se on helppoa ja ilmaista! Rekisteröityneenä et näe mainoksia, voit käyttää hakua, näet alueita, joita nyt ovat piilossa...jne.

Kirjaudu sisään

Oletko jo Konekansan jäsen? Kirjaudu sisään tästä.

Takaisin
Ylös