Sida 1 av 2

Mäta tempraturer mm själv

Postat: tis 16 dec 2008, 07:30
av Sundhult
För er som tycker att det vore skoj att få koll på temperaturer, fukt mm kan jag tipsa om mjukvaran MSure.

Den bygger på ett 1-wirenätverk. Sensorer som är lätt att själv koppla in. MSure kan sedan användas för att samla in data och presentera de i snygga grafer.

Titta in på http://www.msure.se.


Man kan dra det där med övervakning ganska långt...
http://bwired.nl

//.D

Re: Mäta tempraturer mm själv

Postat: tor 18 dec 2008, 23:24
av kisaved
själv andvänder jag owfs med 1wire och apache/php5 mysql och jpgraph

Re: Mäta tempraturer mm själv

Postat: mån 29 dec 2008, 22:51
av sågmek
Nu fick jag ett fruktansvärt HA begär ... pryl-galning som man är :lol: Jag har kikat lite på en halv avancerad vindmätare Har ni väderproffs några tips?? Den ska sitta ca 20 m upp på en mast... Bör vara trådlös ....Bör gå att koppla till datorn så man kan logga

Re: Mäta tempraturer mm själv

Postat: tis 30 dec 2008, 00:48
av kisaved
så här ser min ut...

jag har byggt min själv, nu snart ska jag få igång elmätaren med...

Re: Mäta tempraturer mm själv

Postat: tis 30 dec 2008, 00:56
av Slurfi
Den där grafen såg mkt intressant ut, beskriv närmare och visa gärna bilder på grejerna?

Re: Mäta tempraturer mm själv

Postat: tis 30 dec 2008, 01:00
av kisaved
just "grafen" är byggd med mysql i botten och ovan på de är de php, med jpgraphs "Verktygslåda" (http://www.aditus.nu/jpgraph/)
De hela är en enkel dator med linux på , sen 1wire interface, med dallas givare DS18S20.

I fall nån är intresserad skulle jag kunna lägga upp koden och lite konfig filer... fast jag är ingen programmerare så de är lite egna lösningar här och där...

grafen visar temperaturen i och runt mitt hus, där slavtank och tekniktank är två olika acc.tankar med temp i botten och topp, datorrummet ligger på övervåningen och tempen inne är neder våningen, i källaren är pannrummets temp..

edit: läste lite noggrannare nu , lite länkar..

http://en.wikipedia.org/wiki/1-Wire
bild på en dator och lite sladd härvor är inte så mycke och ha...
http://www.hobby-boards.com/catalog/pro ... ts_id=1503
här får man gratis sensorer http://www.maxim-ic.com/quick_view2.cfm/qv_pk/2815

Re: Mäta tempraturer mm själv

Postat: tis 30 dec 2008, 08:04
av Röjkvist
Här är en temperatursida som jag använder
http://www.temperatur.nu/

Re: Mäta tempraturer mm själv

Postat: fre 02 jan 2009, 01:21
av kisaved
Röjkvist skrev:Här är en temperatursida som jag använder
http://www.temperatur.nu/

jo de är en temp, sida de med.. där kan man lära sig en del i fall man vill, han har "färdiga" packet men jag tycker dock att han är dyr.. men de är ju min personliga åsikt.. :)

Re: Mäta tempraturer mm själv

Postat: fre 02 jan 2009, 10:12
av Sundhult
Jag kör som sagt var MSure på en Windows-burk.

Ett exempel på graf:
Bild


Mer om min konfig finns här:
http://www.msure.se/index.php/topic,143.0.html

Jag har valt att dela upp data i fler olika grafer, där exemplet visar temperatur inne-ute. Har en för kulvet, och en för ackumulatortankarna också. I min graf har jag lagt in en refernslinje (grön) på 19°C för att lättare kunna se hur temperaturena ligger i förhållande till den.

Har även en liten mobilsida:
Bild


Men visst är det kanske billigare att använda Linux, men det är smidigt när man får delta i utvecklingsarbetet av mjukvaran som vi MSure användare gör. Kan koncentrera sig på att använda onewire-nätet och inte att hålla igång systemet. Men givetvis kan man skapa precis samma resultat från båda programmen. Bara att välja och vraka och komma med i onewire-familjen. :)

Sen kan man dra det där med att logga ganska långt, eller?
http://bwired.nl/

Min egna sida hittar man här:
http://www.sundhult.com/index.php?sida=logger

//.D

Re: Mäta tempraturer mm själv

Postat: fre 02 jan 2009, 17:53
av kisaved
snygg sida, fast jag tycker inte om att köra osäkra operativsystem mot internet... :) layout osv är snygg, kanske man kan stjäla den.. :)

att linux skulle vara svårare än ditt program håller jag inte med om, men de kan man tvista om tills man dör.. bara man är nöjd med sitt system.. ;)

Re: Mäta tempraturer mm själv

Postat: fre 02 jan 2009, 18:29
av Sundhult
Håller med om att Linux inte behöver vara så komplicerat.

PHP-Ajax scripten finns upplagda på MSure's forum.

//.D

Re: Mäta tempraturer mm själv

Postat: fre 02 jan 2009, 19:47
av Slurfi
Lite OT men kort fråga bara: Vilken Linuxvariant gäller nuförtiden?
Funderar på en installation i en ny desktop, och senare ev i en mkt gammal laptop.

Re: Mäta tempraturer mm själv

Postat: fre 02 jan 2009, 23:13
av Sundhult
Ubuntu är väl en trevlig distribution att köra.

//.D

Re: Mäta tempraturer mm själv

Postat: lör 03 jan 2009, 20:28
av kisaved
håller med alla distar som bygger på debian eller dess grund har blivit omåttligt populära.. :)

Re: Mäta tempraturer mm själv

Postat: tis 20 jan 2009, 19:17
av granqvist
Hej på er alla. Mitt första inlägg på skogsforum!
Kör också med owfs, har gjort det sedan vintern -05 - -06. Har en pc i närnätet här hemma. Hårdvaran är en Pentium 166Mhz med 32 MB ram. Kör med Debian Linux utan fönstersystem. Har en 'dubbelpanna' med skilda rök-kanaler för ved och oljebrännare.

Mäter även tempen på rökgaserna av veden. Behövs ett termoelement till det och en 1-wire givare av 30. familjen. De övriga är givare typ DS1820, eller nåt ditåt. Var faktiskt den förste att på riktigt köra ett termoelement i en 1-wire bus med owfs. Paul Alfille som driver sajten http://www.owfs.org och som är mannen bakom owfs hade bara programmerat utgående från specifikationerna och lade ut koden på nätet. Blev lite konstiga mätresultat till en början, men efter lite fixningar fick vi allt att stämma.

Avläser varje givare 1 gång i minuten och dumpar resultatet i en textfil. Tar alltid en ssh session till pc:n i källarn och kör 'tail' programmet på filen medan jag eldar och råkar sitta vid arbetsdatorn. Naturligtvis har vi också en skärm nere. Såhär ser filen ut:

29.1 272.9 74.5 47.9 46.8 00.0 2009-01-20 18:50:00
29.1 273.1 74.4 48.0 45.9 00.0 2009-01-20 18:51:00
29.1 276.7 74.4 47.9 45.3 00.0 2009-01-20 18:52:00
29.1 272.7 74.4 48.0 45.1 00.0 2009-01-20 18:53:00
29.1 272.5 74.4 48.0 45.1 00.0 2009-01-20 18:54:00

Från vänster är talena:
'cold junction' för termoelementet, rökgaser, accumulatorn uppe, accumulatorn nere, röret från pannan till accun, röret från accun till pannan (är kass för tillfället), datum och klockslag.

Kör upp owserver, owfs och logger programmet i 'initscripts' så de borde starta upp när pc:n gör det. Till sist ännu loggerprogrammet, ett litet shellskript gjort av undertecknad och ska köras i bash. Ojoj vad tekniskt detta blev, nu är man väl stämplad som datanörd ;-)

Ha det bra.

Antti


#!/bin/sh
# continuously monitor temperatures in a heating
# system
# 30.7CEC42100000 = thermocouple for smokegases
# 10.0DA6AA000800 = water tank upper
# 10.BBA4AA000800 = water tank lower
# 10.9061AA000800 = pipe from furnace to water tank
# 10.6D99AA000800 = pipe from water tank to furnace


# param 1 number to normalize
# param 2 desired length of integer part
normalize () {
# get parameter name
name=\$"$1"

# get value for parameter name
temp=`eval "expr \"$name\" "`
# temp=.2

# round reading to one decimal
temp=$(printf "%.1f" $temp)
len=`expr length $temp`
case "$len" in
"3" )
case "$2" in
"2" )
temp=`echo "0"$temp`
;;
"3" )
temp=`echo "00"$temp`
;;
esac
;;
"4" )
case "$2" in
"3" )
temp=`echo "0"$temp`
;;
esac
;;
esac

# assign value to parameter
eval "$1=$temp"
}

# run only at seconds 00
# find out when next time to run is
curr=$(printf "%s.%.2s\n" $(date +%S) $(date +%N))
FILE="/root/temps.txt"
# echo "curr $curr"
sleep $(echo 60-$curr|bc)
while [ true ]
do
# initialize variables
d=$(date +%F' '%X)
read tc </mnt/1-wire/uncached/30.7CEC42100000/typeK/temperature
read tc_coldj </mnt/1-wire/30.7CEC42100000/temperature
read tank_up </mnt/1-wire/uncached/10.0DA6AA000800/temperature
read tank_down </mnt/1-wire/uncached/10.BBA4AA000800/temperature
read pipe_f2t </mnt/1-wire/uncached/10.9061AA000800/temperature
read pipe_t2f </mnt/1-wire/uncached/10.6D99AA000800/temperature

# apply formatting
normalize tc 3
normalize tc_coldj 2
normalize tank_up 2
normalize tank_down 2
normalize pipe_f2t 2
normalize pipe_t2f 2

# output
echo "$tc_coldj $tc $tank_up $tank_down $pipe_f2t $pipe_t2f $d" >> $FILE
curr=$(printf "%s.%.2s\n" $(date +%S) $(date +%N))
sleep $(echo 60-$curr|bc)
done

exit 0