rrdtool 1 wire 2 tempgivare

Hur gör man för att ... ? Hur fungerar ... ? Steg för steg-guider och förklarande artiklar finns i detta forum.

Moderator: elf98

rrdtool 1 wire 2 tempgivare

Inläggav pepspersson » 08 aug 2017, 18:25

Skulle vilja ha 2 st tempgivare åt olika väderstreck och att den visar lägsta temperatur på en graph .
Går det ?
pepspersson
Wannabe
 
Inlägg: 13
Blev medlem: 05 dec 2013, 01:21
Ort: västerbotten

Re: rrdtool 1 wire 2 tempgivare

Inläggav Plutonium » 10 aug 2017, 22:48

Absolut går det. Det enklaste sättet är att behandla datan innan rrdtool tar vid.

Så här har jag gjort. Jag har en php fil som körs av cron varje minut. (Nu framgick det inte om du använder dig av linux mots. Men jag antar detta.

Kod: Markera allt
<?php

$north = exec("wget -O - -q http://10.0.20.11/utenorr.txt");
$east = exec("wget -O - -q http://10.0.20.11/uteost.txt");

if ($north < $east){
        $lowest = "North";
        $temp = $north;
}
else{
        $lowest = "East";
        $temp = $east;
}

echo "$lowest har lgst temp: $temp grader";

exec("echo " . $temp . " > /home/essunga/public_html/wwwroot/temperature_lowest.txt");
?>


Sedan låter jag rrdtool läsa av filen temperature_lowest.txt så ritar den en graf av det. Är du i behov av ett kodexempel för rrdtool också?
http://essunga.org
Moderator - Temperatur.nu
Användarvisningsbild
Plutonium
Moderator
 
Inlägg: 1064
Blev medlem: 04 jan 2008, 02:34
Ort: Nossebro

Re: rrdtool 1 wire 2 tempgivare

Inläggav pepspersson » 24 aug 2017, 11:26

Gärna det.
pepspersson
Wannabe
 
Inlägg: 13
Blev medlem: 05 dec 2013, 01:21
Ort: västerbotten

Re: rrdtool 1 wire 2 tempgivare

Inläggav Plutonium » 24 aug 2017, 20:02

Så här har jag gjort med flera rrd-databaser. Ganska enkel kod så jag tror du luskar ut i strukturen nedan.

Kod: Markera allt
#!/usr/bin/perl

use RRDs;

my $cur_time = time();
my $start_time = $cur_time - 86400;     # set end time to 24 hours ago
use HTTP::Date;
my ($date, $time) = split(" ", HTTP::Date::time2iso());
my ($hour, $min) = split(":", $time);

RRDs::graph "/home/essunga/public_html/wwwroot/onewire/dualindoor_temp_dag.png",
         "--start= $start_time",
         "--end= $cur_time",
         "--title=Inside the house",
         "--lazy",
         "-h", "160", "-w", "550",
         "-a", "PNG",
         "-v Celsius",
         "--slope-mode",
         "--watermark=  http://essunga.org | Graph generated\: $date kl\: $hour\:$min",
         "DEF:livingroom=/home/plutonium/scripts/RRD_DB/owfs-livingroom_temperature.rrd:temp:AVERAGE",
         "DEF:bedroom=/home/plutonium/scripts/RRD_DB/masterbedroom_temp.rrd:temp:AVERAGE",
         "DEF:agust=/home/plutonium/scripts/RRD_DB/agust_temp.rrd:temp:AVERAGE",
         "DEF:jonathan=/home/plutonium/scripts/RRD_DB/jonathan_temp.rrd:temp:AVERAGE",
         "AREA:livingroom#ccffcc",
         "LINE2:livingroom#009900:Living room     ",
         "GPRINT:livingroom:MIN: Min\\:%6.1lf",
         "GPRINT:livingroom:MAX: Max\\:%6.1lf",
         "GPRINT:livingroom:AVERAGE:Avg\\:%6.1lf",
         "GPRINT:livingroom:LAST:Now\\:%6.1lf degrees C\\n",
         "LINE2:bedroom#46E4F9:Master bedroom  ",
         "GPRINT:bedroom:MIN: Min\\:%6.1lf",
         "GPRINT:bedroom:MAX: Max\\:%6.1lf",
         "GPRINT:bedroom:AVERAGE:Avg\\:%6.1lf",
         "GPRINT:bedroom:LAST:Now\\:%6.1lf degrees C\\n",
         "LINE2:agust#191970:Agust bedroom  ",
         "GPRINT:agust:MIN:  Min\\:%6.1lf",
         "GPRINT:agust:MAX: Max\\:%6.1lf",
         "GPRINT:agust:AVERAGE:Avg\\:%6.1lf",
         "GPRINT:agust:LAST:Now\\:%6.1lf degrees C\\n",
         "LINE2:jonathan#CD5C5C:Jonathans bedroom",
         "GPRINT:jonathan:MIN:Min\\:%6.1lf",
         "GPRINT:jonathan:MAX: Max\\:%6.1lf",
         "GPRINT:jonathan:AVERAGE:Avg\\:%6.1lf",
         "GPRINT:jonathan:LAST:Now\\:%6.1lf degrees C\\n";


my $err=RRDs::error;
if ($err) {print "problem generating the graph: $err\n";}

print "Done!\n"

http://essunga.org
Moderator - Temperatur.nu
Användarvisningsbild
Plutonium
Moderator
 
Inlägg: 1064
Blev medlem: 04 jan 2008, 02:34
Ort: Nossebro

Re: rrdtool 1 wire 2 tempgivare

Inläggav pepspersson » 25 aug 2017, 22:04

Tack så mycket ,nu ska jag testa :D
pepspersson
Wannabe
 
Inlägg: 13
Blev medlem: 05 dec 2013, 01:21
Ort: västerbotten


Återgå till Guider/Artiklar/How to

Vilka är online

Användare som besöker denna kategori: Inga registrerade användare och 3 gäster