Kodin automaatioratkaisut

Keskustelu osiossa 'Kodin suunnittelunurkka' , aloittajana säätäjä, 21.01.2010.

  1. Don MC

    Don MC Käyttäjä

    Liittynyt:
    19.05.2005
    Viestejä:
    1 188
    Saadut tykkäykset:
    39
    Raspin logi vai NetHomen logi? NetHome kirjoittaa lämpökäyrälogia vain 15min välein.
     
  2. Nasty76

    Nasty76 Guest Guest

    Liittynyt:
    17.10.2013
    Viestejä:
    194
    Saadut tykkäykset:
    0
    käytätkö bj onewiere antureita? vaiko one wire file system mokkulaa?
    saatkos pekästään tuolla cat /mnt/1wire/10.BE6A01020800/temperature
    consolissa jotain lukemaa?.
    Jahas eipäs oo tullu nethomeen päivitystä haettua vähään aikaan :D se lupasi tota pitkä lyhyt painallusta kehittää.
    ja juu nethomen logger kirjoittaa login vain vartin välein.
     
  3. bj40

    bj40 Uusi jäsen

    Liittynyt:
    06.10.2008
    Viestejä:
    111
    Saadut tykkäykset:
    2
    Nethomen logi..
    Lämpötilamittaus on siis debian serverissä (pc) jossa on uab liitäntäinen ds9490 lukija ja one wire file systemin kautta luku (owfs)) ja tuo antaa lukeman sebian serverin päässä. Luen sen minuutin välein mysql kantaan.
     
  4. Nasty76

    Nasty76 Guest Guest

    Liittynyt:
    17.10.2013
    Viestejä:
    194
    Saadut tykkäykset:
    0
    aaah taas kerran on puurot ja vellit kai sekasin. Siis saattaa olla jos nethomeen saat jarkevia lampotila lukemia niin tuo nethome tai mun scripti pyoristaa noi lukemat johonkin suuntaan.
    joo siis itse katoin nethomen logia ja mielenkiinnosta huomasin etta sielahan vaan on
    tallasia riveja
    2014.03.04 18:45:01;1.9
    2014.03.04 19:00:01;1.9
    2014.03.04 19:15:01;1.9
    2014.03.04 19:30:01;1.9
    2014.03.04 19:45:01;1.8
    2014.03.04 20:00:01;1.7
    2014.03.04 20:15:01;1.8
    2014.03.04 20:30:01;1.7
    2014.03.04 20:45:01;1.6
    2014.03.04 21:00:01;1.6
    2014.03.04 21:15:01;1.7
    2014.03.04 21:30:01;1.7
    2014.03.04 21:45:01;1.7
    2014.03.04 22:00:01;1.7
    2014.03.04 22:15:01;1.7
    2014.03.04 22:30:01;1.6

    eli kylla mulla menee 0.1 asteen tarkuudella muttei kylla tarkemmin :(
    voin kylla Katella tuon scriptan tarkemmaksi mutta muistaakseni ongelma tuli etta nethome droppas kylmasti nollat pois jolloin lukemat oli mita sattuu ja tein siihen jonkun patentin joka tuntu toimivan jotenkin :D
     
  5. bj40

    bj40 Uusi jäsen

    Liittynyt:
    06.10.2008
    Viestejä:
    111
    Saadut tykkäykset:
    2
    ok, sitten on varmaan lähetyksessä jotain pielessä, nytkin on 0.5 astetta joten pitäisi tuolta jotain tulla muuta kuin nollaa.
    eilenkin kävi +2 asteessa.
    kokeilin ja otin sen printin siitä alusta käyttöön ja antoi ihan oikean lukeman
    Read: 0.4375


    se lähetys skripti on siis näin kokonaisuudessaan:
    Koodi:
    #!/usr/bin/perl
    use strict;
    use warnings;
    use IO::Socket;
    
    
    # ulko LT
    my $sensordata = `cat /mnt/1wire/10.BE6A01020800/temperature 2>&1`;
    # print "Read: $sensordata";
    
    #fix for negative temps from http://habrahabr.ru/post/163575/
    $sensordata =~ /t=(\D*\d+)/i;
    #$sensor_temp =~ /t=(\d+)/i;
    $sensordata = $sensordata / 1000 ;
    my $ret = $sensordata*1000;
    #sent tcp packet nethome
    my $sock = IO::Socket::INET->new(
    Proto => 'udp',
    PeerPort => 8005,
    PeerAddr => '192.168.1.40',
    ) or die "Could not create socket: $!\n";
    $ret = sprintf("%.0f", $ret);
    print $sock "event,UPM_Message,Direction,In,UPM.DeviceCode,11,UPM.HouseCode,1,UPM.Primary,$ret,UPM.Secondary,122,UPM.SequenceNumber,0\n" or die "Sent failed : $!";
    
    
     
    Viimeksi muokattu: 05.03.2014
  6. Nasty76

    Nasty76 Guest Guest

    Liittynyt:
    17.10.2013
    Viestejä:
    194
    Saadut tykkäykset:
    0
    tota onko sulla siis toi mun plugari paketista asennettu ds1820 temp plugin asennettu
    siinä mulla on k 0.0625
    ja m 1000 ja noilla mulla toimii ihan ok
     
  7. bj40

    bj40 Uusi jäsen

    Liittynyt:
    06.10.2008
    Viestejä:
    111
    Saadut tykkäykset:
    2
    jep juuri se ds1820 temp. pitää tarkistaa iltasella nuo k ja m lukemat, oletuksin ne jätin kuitenkin.
     
  8. Nasty76

    Nasty76 Guest Guest

    Liittynyt:
    17.10.2013
    Viestejä:
    194
    Saadut tykkäykset:
    0
    ota varmuuden vuoksi taa paketti jos sulla ei oo viel tata. https://www.dropbox.com/l/Ktv0DnyVXnBcXDSO14p8ma?
    jos puttyn tai muun telnet ohjelman kaytto on hallussa niin tee nethomeen tcp command port ja yhdista puttylla nethomenip ja portti jonka maaritit tcp command porttiin.
    pitas aukee musta tyhja boxi
    komenna subscribe ja enter
    jos laatikkoon ei tule ok tekstia kokeile uusiks
    sitten katsot mita data se scripti lahettaa tasta nakee kaikki sisaan tulevat ja lahtevat nethomen tyot
    jos siella on lampo arvo vastaava kun sciptan print lausekkeessa jotenkin plugari kusee.
     
  9. bj40

    bj40 Uusi jäsen

    Liittynyt:
    06.10.2008
    Viestejä:
    111
    Saadut tykkäykset:
    2
    kyllä ne nethomen ds1820 anturin K on 0.0625 ja M 1000
    telnettaus tcp command porttiin tuottaa tulokseksi:
    event,UPM_Message,Direction,In,UPM.DeviceCode,11,UPM.HouseCode,1,UPM.Primary,0,UPM.Secondary,122,UPM.SequenceNumber,0,Value,
    event,MinuteEvent
    vahdoin toisen anturinkin kokeeksi tuohon missä on varmasti plus asteita sitten kyllä muuttui
    event,UPM_Message,Direction,In,UPM.DeviceCode,11,UPM.HouseCode,1,UPM.Primary,22,UPM.Secondary,122,UPM.SequenceNumber,0,Value,
    eli nämä lähes nollakelit (alle +1 ja yli -1) vaan on nollaa :)

    edit: toisen anturin lisäys lopetti logituksen kokonaan :(
    house code on sama ja device code eri, luku tosin tapahtuu samaan aikaan
    edit2: kyllä se ulkoanturi alkoi logittamaan vaihdoin eri ajoille, mutta tuo toinen anturi ei sitten enää logitakkaan, kai ne voi samaa porttia käyttää ?
    edit3: nonyt se logittaa molemmista, mutta alkuperäiseen ongelmaan palataan. logeihin tulee 0.0 lukemiksi molemmista kun taas telnetissä näkyy lukemana 22 kuten tuossa yllä.
    logeihin laitoin täydet oikeudet kaikille.
     
    Viimeksi muokattu: 05.03.2014
  10. Nasty76

    Nasty76 Guest Guest

    Liittynyt:
    17.10.2013
    Viestejä:
    194
    Saadut tykkäykset:
    0
    tutkin kohta tuota ongelmaa ilmeisesti nethomessa tai scriptissa on nyt toi vaara jakaja saatkos mulle anturi rivin joka on vaikka huoneen lammossa.
    ilmeisesti myos nethomen lampomittari nayttaa nollaaa?
    kauhee flunssa päällä eikä oikeen pää toimi mutta itellä lähetys näyttää näin ulkolampona
    event,UPM_Message,Direction,In,UPM.DeviceCode,2,UPM.HouseCode,1,UPM.Primary,375,UPM.Secondary,122,UPM.SequenceNumber,0,Value,
    event,MinuteEvent
    ja nethomessa näkyy.
    Temperature: 0.4
    tossa sun esimerkissä näkyy kyllä joku kummalisuus
    rivillä : event,UPM_Message,Direction,In,UPM.DeviceCode,11,U PM.Housecode on välilyönti?
    onko tama copy paste virhe vai onko tohon lähetys scriptaan livahtanu multa virhe :(
    jos ei virhe niin kokeile laittaa vaikka device code 1 ja house code 1 jos silla tulis okein
    en ole varma voisko toi bugittaa jos liian iso house code tai jotain.
    vois vielä kokeilla että tekee ds1820 sensorin vaikka asetuksilla device code 3 ja house code 3 ja telnet ikkunaan copypastee tän.
    event,UPM_Message,Direction,In,UPM.DeviceCode,3,UPM.HouseCode,3,UPM.Primary,375,UPM.Secondary,122,UPM.SequenceNumber,0,
    tällä rivi omassa testissä saan 0.4 astetta ds1820 temppiin kanavilla 3 ja 3 näkyviin homman
    mulla muuten ihan sh scripti raspissa näin.

    #!/bin/bash
    /nethome/onewiretemp/makkaritempu.pl
    sleep 2
    /nethome/onewiretemp/olkkaritempu.pl
    sleep 2
    /nethome/onewiretemp/ulkotempu.pl
    sleep 2
    /nethome/onewiretemp/pi.pl
    jota ajan crontab -e ssä näin

    */10 * * * * /nethome/onewiretemp/temp.sh

    tää ajaa joka kymmenes minuutti ton temp.sh scriptan joka siis on toi ylempi rimpsu
    jos sinne nethomeen tulee päällekkäin data en ole yhtaan varma mita tapahtuu.
     
    Viimeksi muokattu: 05.03.2014
  11. bj40

    bj40 Uusi jäsen

    Liittynyt:
    06.10.2008
    Viestejä:
    111
    Saadut tykkäykset:
    2
    sisälämpötila anturi
    my $sensordata = `cat /mnt/1wire/10.E86701020800/temperature 2>&1`;

    jep nethome näyttää 0.0 samoin logi tiedostot jotka on poluissa:
    /home/pi/nethomeserver/log/inlt.log ja /home/pi/nethomeserver/log/outlt.log
     
  12. Nasty76

    Nasty76 Guest Guest

    Liittynyt:
    17.10.2013
    Viestejä:
    194
    Saadut tykkäykset:
    0
    voiks kokeilla tätä.
    vois vielä kokeilla että tekee ds1820 sensorin vaikka asetuksilla device code 3 ja house code 3 ja telnet ikkunaan copypastee tän.
    event,UPM_Message,Direction,In,UPM.DeviceCode,3,UP M.HouseCode,3,UPM.Primary,375,UPM.Secondary,122,UP M.SequenceNumber,0,
    tällä rivi omassa testissä saan 0.4 astetta ds1820 temppiin kanavilla 3 ja 3 näkyviin homman
    mulla muuten ihan sh scripti raspissa näin.
     
  13. bj40

    bj40 Uusi jäsen

    Liittynyt:
    06.10.2008
    Viestejä:
    111
    Saadut tykkäykset:
    2
    nuo välilyönnit tulee kun pastee tänne tuon litanian, pitäisi muistaa laittaa noihin code tägeihin.

    no niin siis tuohan toimi ja selvensi sen että sinne pitää tulla lukemat 1000 kerrottuna, nythän tai sisätilan lukemat näyttää tältä telnetissä
    Koodi:
    event,UPM_Message,Direction,In,UPM.DeviceCode,22,UPM.HouseCode,1,UPM.Primary,21,UPM.Secondary,122,UPM.SequenceNumber,0,Value,
    
    vaihdoin nethomeserveristä sieltä anturin asetuksista sen kohdan M luvun 1000.0 -> 1.0 niin nyt sisätilan anturi näyttää oikeita lukemia nethomeserverissäkin. raspin logissa tosin edelleen 0.0..

    lepää ihmeessä ei nää niin tärkeitä juttuja ole :)

    edit: kyllä se logittaakin oikein, vaatii näköjään yhden 15minuutin kierroksen kunnes ilmestyy sinne anturin logiin...

    mites toi logitus onko siihen jotain kiertoa tai saako sen niin että esim viikkoa vanhemmat nollataan vai tehdäänkö vain skripti joka esim siivoaa login tyhjäksi, muutenhan nuo paisuvat hervottomaksi aikaa myöten.
     
    Viimeksi muokattu: 05.03.2014
  14. Don MC

    Don MC Käyttäjä

    Liittynyt:
    19.05.2005
    Viestejä:
    1 188
    Saadut tykkäykset:
    39
    "Raspin lokissa"? Eli puhutaanhan siis yhä edelleen NetHomen lokista?
    Oletko koittanut korjata NetHomen lokitiedostojen oikeudet? Itse olen vaihtanut koko NetHome-kansiolle (ja alikansioille) oikeudet "777". Ihan varmuuden vuoksi.
    Kyllä sen lokin pitäisi näyttää ihan samaa kuin NetHomen lämpömittari kulloinkin näyttää ruudulla. Ellei näytä, niin lokin kirjoittamisessa lienee joku ongelma.
     
  15. Nasty76

    Nasty76 Guest Guest

    Liittynyt:
    17.10.2013
    Viestejä:
    194
    Saadut tykkäykset:
    0
    yees mut kai muistat etta logi kirjottuu 15min valein :D
    jos lampomittari nethomessa nayttaa oikein pitas logikin tulla oikein.
    jos ei niin tuonhan vois kertoa viela siella scriptissa jollain luvulla niin sais oikein lopullisesti eli scirptassa joka lahettaa on rivi
    $sensordata = $sensordata / 1000 ; tama jakaa tuhannella koska /1000
    my $ret = $sensordata*1000; tama kertoo tuhannella koska *1000
    tuossa vois muuten olla bugi rivin pitas kai olla
    my $ret = $sensordata *1000;
    eli data sanan jalkeen valilyonti ja tuo *1000
     
  16. bj40

    bj40 Uusi jäsen

    Liittynyt:
    06.10.2008
    Viestejä:
    111
    Saadut tykkäykset:
    2
    nii onhan se raspin logia tai ds1820 anturin logia raspissa :) niille on 777 oikeudet kyllä. se tosiaan tuli viiveellä ja näyttää nyt oikeita, myös anturin logissa raspissa nethomeserver/log tiedostoissa..
    tuota koodia ihmettelin miksi se pitää ensin jakaa ja sitten kertoa 1000. se välilyönti tosiaan puuttui ja lisäsin sen ei vaikutusta mihinkään.

    lisäsin saunan lämpötilankin nyt nethomeserveriin ja siihen M arvoksi sama 1.0 ni näyttää oikeita lukemia, pyöristää tosin yhden asteen tarkkuudella mutta riittää.
     
  17. Nasty76

    Nasty76 Guest Guest

    Liittynyt:
    17.10.2013
    Viestejä:
    194
    Saadut tykkäykset:
    0
    siinäpä oli kai jujuna se että joskus tuo tuo droppas nollat pois toi onewire lähetys purkki muistaakseni. silloin meni asiat pieleen
    kai kun esim sieltä tuli 2,321 astetta ja jos lämpö olikin 2.300 niin output oli 2.3 joten nethome meni sekasin.
    En ole valitettavasti niin kooderi kuru että muuta ratkasua keksin :(
    tosin saattaa olla etta onewire filesystemissa riittais kertominen siina sciptassa ja se nethomen jakaja hoitaa lopun. hankala testata kun itella ei ole onewire filesystem palikkaa vaan raspissa suoraan kiinni gpio pinneissa anturit.
     
    Viimeksi muokattu: 05.03.2014
  18. Don MC

    Don MC Käyttäjä

    Liittynyt:
    19.05.2005
    Viestejä:
    1 188
    Saadut tykkäykset:
    39
    Joo :) Mua vaan hämää, koska miellän "Raspin" Linux-järjestelmäksi (pieni tietokone + sen käyttis), joka kirjoittelee omia systeemilokejaan. Siinä pyörii sitten erikseen NetHomeServer, joka taas kirjoittaa ihan omia lokejaan. Ehkä se vaikuttaa, että olen täällä pyöritellyt NetHomea sekä Windows-koneella, että Raspberrylla. NetHome on oma erillinen palikkansa, jolla ei (mielikuvissani) ole paljoakaan tekemistä isäntäkoneidensa kanssa.

    Mutta perin outoja nuo lämpötilojen pyöristysongelmat. Ainoa NetHomen lämpömittari joka minulla ei ole langaton, on R-Pi:n CPU-sensori. Se on toteutettu juuri tuolla ds1820:lla. Se näyttää yhden desimaalin tarkkuudella. R-Pi siis lähettää NetHomeen oman CPU:nsa lämpötilan ja NetHomehan tietty myös pyörii R-Pi:ssä.
    Kaikki muut lämpömittarit ovat UPMThermometer. Nekin näyttävät yhden desimaalin tarkkuudella. Langaton vastaanotto tapahtuu TellStickillä (kytketty R-Pi:hin USB:llä).
     
  19. bj40

    bj40 Uusi jäsen

    Liittynyt:
    06.10.2008
    Viestejä:
    111
    Saadut tykkäykset:
    2
    Ni pisteellä erotettuna tulee lämpötilat owfs:stäkin eikä se vaadi erillistä skriptiä van ihan catlla voi lukea vaikka sekunnin välein.
    Oletin koko ajan että ne udpn kautta lähetetyt menee ensin siihen nethomen anturin logiin josta se käy noukkimassa ne jälkeenpäin. Siksi tuo sekoilu logeista.
    Tuohonhan olisi kierto tie jos ei udp pelaa, tallennan mittausdatandebian serveristä NFSn yli raspin levylle josta voi raspin ajastaa lukemaan tai itseasiassa toisinpäin mounttaan raspiin serverini NFS jaon ni ei turhaan kirjoittele raspin SD kortille.
    Taidankin vielä sitä testata huomenna..
     
  20. Nasty76

    Nasty76 Guest Guest

    Liittynyt:
    17.10.2013
    Viestejä:
    194
    Saadut tykkäykset:
    0
    juu no Linux on aika vapaa mulla joskus pyori logit freenas levylla joka oli mountattu raspiin mahdollisuuksia on monia.
    siis pisteella tulee owfs sa juu mutta jos lampo esim.
    2.333 astetta niin owfs antaa arvoksi 2.333 jos taas lampo on 2.300 niin owfs antaa lammoksi 2.3 eika desimaaleja
    nain ainakin siina owfs mihin toi alunperin vaannetttiin.
    ja juu siis tiehan on niin etta nethomeen sisaan lampo joko langattomasti upm lampomittarista tai sitten tollasella perl scriptalla se nayttaa sen siina lampomittarista ja 15min valein siita kirjotetaan varmaan keskiarvo logiin.
    jos ymmarsin oikein ton sun kiertotien niin jos logi jossa lampotilat on siella toisella koneella nethome ei niita nayta jossei sille oo tullu siita lampomittarista dataa eli joka langatomalta upm mittarilta tai tolla perl sciptalla.
    Kylla kai me se udp saadaan toimimaan kun jo se parilla hepulla toimii :D
     
    Viimeksi muokattu: 06.03.2014