Sida 1 av 1
Förvirring angående USB eller seriell adapter.
Postat: 09 jan 2009, 20:13
av vedeldaren
Jag står i bergrepp att beställa en 25 st DS18s20 och en adadaper plus div. andra prylar.
Jag har följande förutsättningar: Skall mäta 20 till 30 temperaturer där vissa är över 85 grader och räknar med att behöva utnyttja över 150 m kabel för att nå alla mätpunkter. Dessutom vill jag ha möjlighet att komplettera nätet med div. extra grejor som finns att tillgå ( vindmätare, fuktighetsmätare mm).
Mina frågor: Vilken adapter skall jag välj och om jag väljer seriell behöver jag då extra spänningsmatnig ? Begränsar jag mig till 70 meter om jag väljer USB varianten? Kan man bygga in en LCD display som man placerar ute i nätet på valfri plats för att se temperaturer on-line, och hur gör man då och vilka prylar behöver man ?
Re: Förvirring angående USB eller seriell adapter.
Postat: 09 jan 2009, 22:34
av larky
Du skulle kunna ha en seriell adapter och en spänningsinjektor, eller USB. Om strömmen inte räcker kan man ansluta fler spänningsinjektorer, men det är nog en bra bit kvar innan dess.
150 meter är rätt långt, men borde funka. Jag hade valt USB, då får du allt i ett.
För skillnad i prestanda titta på
http://owfs.org/index.php?page=performance
USB är klart snabbast.
LCD kan anslutas som vilken tempsensor som helst, någonstans på nätet. Du behöver en lcdkontroller, en lcd, och en låda att stoppa allt i. För att skriva till LCD:n behövs OWFS och något antagligen hemmagjort script, men det är enkelt, jag har något enligt nedan.
Kod: Markera allt
echo " Válkommen! ">/dev/1wire/FF.9C0300000100/line20.0
echo $datum $tid " ">/dev/1wire/FF.9C0300000100/line20.1
echo "Ute:$ute Inne:$inne ">/dev/1wire/FF.9C0300000100/line20.2
echo " Nu ár det jul! ">/dev/1wire/FF.9C0300000100/line20.3
(datum, tid, ute och inne defineras tidigare i scriptet)
Re: Förvirring angående USB eller seriell adapter.
Postat: 09 jan 2009, 23:10
av PerM
Du kan också använda en 1-Wire hub för att grena upp ditt nät vilken kan minska max längden till dina sensorer.
Re: Förvirring angående USB eller seriell adapter.
Postat: 09 jan 2009, 23:40
av elf98
Har du möjlighet skall du välja USB-varianten!
Den högre kostnaden ger dig spänningsmatning, högre datahastighet och något bättre signal.
Hade du sagt att du skulle ha en nät med 10 temperatursensorer som var 40 meter långt hade serielladaptern varit ett bra val.
Re: Förvirring angående USB eller seriell adapter.
Postat: 10 jan 2009, 00:25
av HUSKii
larky skrev:
*en massa text före*
...
echo " Válkommen! ">/dev/1wire/FF.9C0300000100/line20.0
echo $datum $tid " ">/dev/1wire/FF.9C0300000100/line20.1
echo "Ute:$ute Inne:$inne ">/dev/1wire/FF.9C0300000100/line20.2
echo " Nu ár det jul! ">/dev/1wire/FF.9C0300000100/line20.3
...
(datum, tid, ute och inne defineras tidigare i scriptet)
Skulle du möjligtvis kunna dela med dig hur du gör för att binda värdena "$ute", "$inne", "$datum" och "$tid" med en temp sensor?
Re: Förvirring angående USB eller seriell adapter.
Postat: 10 jan 2009, 09:22
av larky
Utesensorn körs på ett seriellt interface,
http://quozl.netrek.org/ts/, men jag har dragit kabel och kör dubbelt ett tag nu innan jag byter.
Början på scriptet som körs varje minut.
Kod: Markera allt
#!/bin/bash
ute=`tail -1 /home/public/log/32009.log|awk '{print $2}'| cut -b 1-5`
inne1=`grep "10263B390108000D" /var/log/thermd/current|awk '{print $1}' | cut -b 1-4`
inne2=`grep "10BFB6230108002E" /var/log/thermd/current|awk '{print $1}' | cut -b 1-4`
tid=`date -R| date -R | awk '{print $5}'|cut -b 1-5 `
datum=`date -R | awk '{print $1" " $2" " $3" "}'`
....
Lite energiberäkningar, koll att systemet går och sånt, sen;
sleep 14
echo " Válkommen! ">/dev/1wire/FF.9C0300000100/line20.0
echo $datum $tid " ">/dev/1wire/FF.9C0300000100/line20.1
echo "Ute:$ute Inne:$inne ">/dev/1wire/FF.9C0300000100/line20.2
echo " Nu ár det jul! ">/dev/1wire/FF.9C0300000100/line20.3
#Värmedata
echo " Uppvármning ">/dev/1wire/FF.9C0300000100/line20.0
echo "Nu:$medelpower3""W Max:$maxpower1""W ">/dev/1wire/FF.9C0300000100/line20.1
echo "Effekt/dygn:$medelpower2 W ">/dev/1wire/FF.9C0300000100/line20.2
echo "Energi/24h:$energi1 kWh ">/dev/1wire/FF.9C0300000100/line20.3
#Eldata
sleep 14
echo " Electricitet ">/dev/1wire/FF.9C0300000100/line20.0
echo "Nu:$medelpower1""W Max:$maxpower2""W ">/dev/1wire/FF.9C0300000100/line20.1
echo "Effekt/dygn:$medelpower4 W ">/dev/1wire/FF.9C0300000100/line20.2
echo "Energi/24h:$energi2 kWh ">/dev/1wire/FF.9C0300000100/line20.3
Re: Förvirring angående USB eller seriell adapter.
Postat: 10 jan 2009, 14:59
av vedeldaren
Ok, nu har jag beställt en hel del prylar som jag får hoppas att jag får ihop.
1 x 25xDS18S20 (39kr/st) 975,00Kr
1 x 1-Wire LCD Kontroller 329,00Kr
1 x HD44780 20X4 Character LCD Display - Blå bakgrundsbelysning
- Stiftlist: Fastlödd stiftlist 16x1 189,00Kr
1 x Förlängningskabel
- L1: 0,5m 14,50Kr
2 x Förgreningskontakt modell A (rj12)
- Förlängningskabel: 0,05m 76,00Kr
1 x Kabel EKKX 2x2x0.5 50m 229,00Kr
10 x Kontakt rj12 40,00Kr
1 x Temperaturnät 2 sensorer
- Adaptertyp: DS9490R (USB) -55 till +125C
- A: 5m
- Inkapsling S1: Vattentät
- Inkapsling S2: Standard
- L1: 5m
- L2: 1m 778,00Kr
Re: Förvirring angående USB eller seriell adapter.
Postat: 10 jan 2009, 15:53
av Plutonium
Larky, hur har du gjort för att få ut din Eldata?
Hur har du satt dina varibalar? , $energi1 etc?
Re: Förvirring angående USB eller seriell adapter.
Postat: 11 jan 2009, 10:27
av larky
Komplett, förutom ett annat script, medelut.prl, som anropas lite här och var och beräknar medelvärdet på alla siffror som skickas till det.
Kod: Markera allt
#!/bin/bash
ute=`tail -1 /home/public/log/32009.log|awk '{print $2}'| cut -b 1-5`
inne1=`grep "10263B390108000D" /var/log/thermd/current|awk '{print $1}' | cut -b 1-4`
inne2=`grep "10BFB6230108002E" /var/log/thermd/current|awk '{print $1}' | cut -b 1-4`
tid=`date -R| date -R | awk '{print $5}'|cut -b 1-5 `
datum=`date -R | awk '{print $1" " $2" " $3" "}'`
#Effeker varme: dygn och 5 minutersmedel
medelpower2=`cat /var/log/thermd/Original/1D6BE90700000057|tail -288 |awk '{print $2}'| /usr/local/bin/medelut.prl| cut -b 1-4`
medelpower3=`cat /var/log/thermd/Original/1D6BE90700000057|tail -1 |awk '{print $2}'| cut -b 1-4`
maxpower1=`cat /var/log/thermd/Original/1D6BE90700000057|tail -288 |awk '{print $2}'|sort -n|tail -1|cut -b 1-4`
#Effekter El: dygn och 5 minuter
medelpower1=`cat /var/log/thermd/Original/1DB3F9090000005B|tail -1 |awk '{print $2}'| cut -b 1-4`
medelpower4=`cat /var/log/thermd/Original/1DB3F9090000005B|tail -288 |awk '{print $2}'| /usr/local/bin/medelut.prl| cut -b 1-4`
maxpower2=`cat /var/log/thermd/Original/1DB3F9090000005B|tail -288 |awk '{print $2}'|sort -n|tail -1|cut -b 1-4`
NOW=`date +%s`
Filetime=`stat -c %Z /var/log/thermd/current`
((age=$NOW - $Filetime))
if [ "$age" -lt "600" ];then
agech="";
else
agech="X";
fi
energi1=`expr $medelpower2 \* 24`
energi1=`expr $energi1 / 1000`
energi2=`expr $medelpower4 \* 24`
energi2=`expr $energi2 / 1000`
#Standard;
#first output row
echo " Válkommen! ">/dev/1wire/FF.9C0300000100/line20.0
echo $datum $tid $agech" ">/dev/1wire/FF.9C0300000100/line20.1
echo "Ute:$ute Inne:$inne ">/dev/1wire/FF.9C0300000100/line20.2
echo " Nu ár det jul! ">/dev/1wire/FF.9C0300000100/line20.3
sleep 44
#Värmedata
echo " Uppvármning $agech ">/dev/1wire/FF.9C0300000100/line20.0
echo "Nu:$medelpower3""W Max:$maxpower1""W ">/dev/1wire/FF.9C0300000100/line20.1
echo "Effekt/dygn:$medelpower2 W ">/dev/1wire/FF.9C0300000100/line20.2
echo "Energi/24h:$energi1 kWh ">/dev/1wire/FF.9C0300000100/line20.3
#Eldata
sleep 7
echo " Electricitet $agech ">/dev/1wire/FF.9C0300000100/line20.0
echo "Nu:$medelpower1""W Max:$maxpower2""W ">/dev/1wire/FF.9C0300000100/line20.1
echo "Effekt/dygn:$medelpower4 W ">/dev/1wire/FF.9C0300000100/line20.2
echo "Energi/24h:$energi2 kWh ">/dev/1wire/FF.9C0300000100/line20.3