Bostadslarm med tryckgivare

Planering och tankar kring eventuella framtida projekt.
Användarvisningsbild
AndLi
Inlägg: 17046
Blev medlem: 11 februari 2004, 18:17:59
Ort: Knivsta
Kontakt:

Re: Bostadslarm med tryckgivare

Inlägg av AndLi »

Men tryckdiffen brukar väl alltid vara negativ?

Alltid lite mer frånluft än tilluft om man har fläktar på bägge, på en ren frånluftare är det ju svårt att få ett övertryck inomhus...
danei
EF Sponsor
Inlägg: 26335
Blev medlem: 2 juni 2003, 14:21:34
Ort: Östergötland
Kontakt:

Re: Bostadslarm med tryckgivare

Inlägg av danei »

Ja definitivt.
Användarvisningsbild
grym
EF Sponsor
Inlägg: 16719
Blev medlem: 16 november 2003, 12:22:57
Ort: i det mörka småland

Re: Bostadslarm med tryckgivare

Inlägg av grym »

normalt sett så har man liite undertryck, men eftersom man brukar ha lite olika tryck uppe och ner i ett vanligt rum så kan man ha både och beroende på var man mäter

men , det är många variabler, och man får kolla på rubbet innan men tror sig veta och sedan mäter :wink:

en del gillar ju att sova med öppet fönster o.s.v , som larm i en normal bostad så ser jag inte riktigt att det funkar bra
essgh
Inlägg: 7
Blev medlem: 17 augusti 2017, 21:21:09

Re: Bostadslarm med tryckgivare

Inlägg av essgh »

Jag har beställt en BMP280 och återkommer när jag har kopplat den till något.
Användarvisningsbild
rvl
Inlägg: 5720
Blev medlem: 5 april 2016, 14:58:53
Ort: Helsingfors

Re: Bostadslarm med tryckgivare

Inlägg av rvl »

DPS310 för ca $2 ser ut att kunna vara nåt kul att leka med.
Pressure sensor precision: ± 0.005 hPa (or ±0.05 m) (high precision mode).
Pen
Inlägg: 207
Blev medlem: 16 september 2006, 09:15:51
Ort: Stockholm

Re: Bostadslarm med tryckgivare

Inlägg av Pen »

Jag kunde inte låta bli att prova med en vanlig högtalare som tryckgivare. Tog en som matchade en ventil i väggen i storlek. Skruvade loss locket på ventilen och tejpade dit högtalaren hysfat tätt med Silvertejp. Det är ju en differentiell mätning, fast poängen är snarare att universum får agera högtalarlåda så att det blir minimalt motstånd.

Resultat:

Snabb öppning av dörren: Puls (ganska sinusaktig och en period) ca 15mV, 200ms.
Normal öppning av dörren: ca 2mV.

Använt filter: 1kohm, 1nF för att få bort HF på den ganska långa kabeln jag använde.

Som jämförelse ger prat i normal samtalsläge 1m från högtalaren också ca 2mV. Dock knappast med 5Hz (200ms).

En nackdel med detta jämfört med absolut mätning är väl att en vindpust kan ge en kort tryckökning med liknande utseende som dörröppning om huset är måttligt ventilerat. Omvänt kan det väl i ett välventilerat (modernt) hus bli samma ändring inomhus och då skulle den differentiella mätningen vara bättre.

Ska bli kul att följa upp hur du lyckas. Jag hade en sådan här ide för längesedan men den blev aldrig av - jag är lite skeptisk att man kan skilja mellan öppning och andra förändringar.

En annan ide jag hade var att istället göra en aktiv mätning där man trycker ihop luften med en puls och mäter responsen. Är huset fullständigt öppet borde tryckökningen snabbt utjämnas. Är det fullständigt slutet så består tryckökningen lika länge som pulsen. Inga av dessa två extremer uppnås i praktiken.

Detta borde också kunna åstadkommas med en högtalare. Man lägger på en konstant ström (konstant kraft på membranet). Är huset öppet, är det endast membranets fjädring som bromsar och det åker snabbt ut motsvarande långt. Är rummet slutet så bromsar även tryckskillnaden och membranet åker ut motsvarande kortare tills trycket utjämnats. Membranets rörelser (hastighet och tid - inte dess läge) kan mätas som spänning över högtalaren.

Ett aktivt system skulle inte bara kunna vara mer immunt mot störningar utan det skulle också kunna avgöra husets tillstånd (inte bara förändringar). Det ger i sig att man kan mäta flera gånger innan man konstaterar att en ändring har skett vilket i sin tur ger ännu högre immunitet. Det skulle även oberoende av hur snabbt man öppnar en dörr (eller slår ut ett fönster).
essgh
Inlägg: 7
Blev medlem: 17 augusti 2017, 21:21:09

Re: Bostadslarm med tryckgivare

Inlägg av essgh »

Intressant Pen!

Nu har jag kopplat en BMP280 till en Raspberry Pi och kan läsa ut absolut tryck och temperatur.

nifelheim: vad använder du för mjukvara för att samla in och plotta data?

BMP280: http://www.ebay.com/itm/BMP280-3-3V-Pre ... 2749.l2649
"Labbsladd": https://www.electrokit.com/labsladd-1pi ... pack.54915
BMP280 kod: https://github.com/ControlEverythingCom ... C/BMP280.c

Koppling:
VCC - RPi pin #1
GND - RPi pin #6
SCL - RPi pin #5
SDA - RPi pin #3
CSB - RPI pin #17
SDO - ej kopplad, bör förmodligen anslutas till jord eller 3,3V, anger adress

Kommando:
sudo apt-get install -y i2c-tools
sudo i2cdetect -y 1
gcc BMP280.c
sudo ./a.out
Pen
Inlägg: 207
Blev medlem: 16 september 2006, 09:15:51
Ort: Stockholm

Re: Bostadslarm med tryckgivare

Inlägg av Pen »

Ser ut som att han använder rrdtool. Jag kör själv collectd på min RPi som i sin tur använder rrdtool. På min större server kör jag Cacti som också använder rrdtool - men det är en betydligt tyngre installation.
nifelheim
Den första
Inlägg: 2318
Blev medlem: 27 mars 2008, 22:31:16
Ort: stockholm

Re: Bostadslarm med tryckgivare

Inlägg av nifelheim »

japp

rrdtool och webserver på samma hallonpaj som sensorerna

ett skript för att läsa sensor till databas och ett
skript som genererar grafen.

detta var mest en lab-koppling för att bekanta mig med sensorerna.
Tänker mig en "framtid" där data skickas till en sql server från olika sensorer/platser
kanske hänga en eller fler sensorer på några om programmerade SONOFF :-)
essgh
Inlägg: 7
Blev medlem: 17 augusti 2017, 21:21:09

Re: Bostadslarm med tryckgivare

Inlägg av essgh »

Tack för info Pen och nifelheim.

Har du lust att dela med dig av din skript?
nifelheim
Den första
Inlägg: 2318
Blev medlem: 27 mars 2008, 22:31:16
Ort: stockholm

Re: Bostadslarm med tryckgivare

Inlägg av nifelheim »

läsa till databasen:

Kod: Markera allt

#!/bin/bash
#get_tryck.sh


RRDDataDirectory="/home/pi/rrddata/"
RRDDataFile="tryckdb.rrd"

ppm=`python /home/pi/bmp/tryck280.py|awk '{printf "%.2f", $1}'`

rrdtool update $RRDDataDirectory$RRDDataFile N:$ppm

echo $ppm



genererar graf senaste 1000 minuter:

Kod: Markera allt

#!/usr/bin/perl
#graph_tryck.pl
use RRDs;

my $cur_time = time();
my $start_time = $cur_time -60000 ; # 1000 min

RRDs::graph "/var/www/html/graph_tryck.png",
                        "-A",
                        "--start= $start_time",
                        "--end= $cur_time",
                        "--title= Tryck, senaste 1000 minuter, BMP280.",
                        "--height= 600",
                        "--width= 1000",
                        "--vertical-label= hpa",
                        "--alt-y-grid",
                        "DEF:ppm=/home/pi/rrddata/tryckdb.rrd:ppm:AVERAGE",
                        "COMMENT:\t\t\t\t\t\t\t\tNu    Medel    Max    Min\\n",
                        "HRULE:0#0000FF",
                        "LINE2:ppm#0000FF:Vid skrivbordet\t\t\t\t\t",
                        "GPRINT:ppm:LAST:%6.1lf",
                        "GPRINT:ppm:AVERAGE:%6.1lf",
                        "GPRINT:ppm:MAX:%6.1lf",
                        "GPRINT:ppm:MIN:%6.1lf\\n";
my $err=RRDs::error;
if ($err) {print "problem generating the graph: $err\n";}


crontab:

Kod: Markera allt

*/1 * * * *  /home/pi/co2/get_ppm.sh
*/1 * * * *  /home/pi/bmp/get_tryck.sh
*/1 * * * *  /home/pi/bmp/get_temp.sh
*/1 * * * *  /home/pi/dht/get_dht.sh
*/1 * * * *  export LANG=sv_SE.utf8 && /home/pi/co2/graph_ppm.pl
*/1 * * * *  export LANG=sv_SE.utf8 && /home/pi/co2/graph_ppm100.pl
*/1 * * * *  export LANG=sv_SE.utf8 && /home/pi/co2/graph_ppm2.pl
*/1 * * * *  export LANG=sv_SE.utf8 && /home/pi/bmp/graph_tryck.pl
*/1 * * * *  export LANG=sv_SE.utf8 && /home/pi/bmp/graph_tryck300.pl
*/1 * * * *  export LANG=sv_SE.utf8 && /home/pi/bmp/graph_temp.pl
*/1 * * * *  export LANG=sv_SE.utf8 && /home/pi/dht/graph_dht.pl
*/1 * * * *  export LANG=sv_SE.utf8 && /home/pi/dht/graph_h.pl
*/1 * * * *  export LANG=sv_SE.utf8 && /home/pi/dht/graph_t.pl

test.html för presentationen:

Kod: Markera allt

<br>
<br>
<img src="graph_ppm100.png">
<br>
<br>
<img src="graph_ppm.png">
<br>
<br>
<img src="graph_ppm2.png">
<br>
<img src="graph_tryck.png">
<br>
<br>
<br>
<img src="graph_tryck300.png">
<br>
<br>
<br>
<img src="graph_dht.png">
<br>
<br>
<br>
<img src="graph_t.png">
<br>
<br>
<br>
<br>
<img src="graph_temp280.png">
<br>
<br>
<br>
<br>
<br>
<img src="graph_h.png">



Med reservation för diverse "osnyggheter" :-)
kör några andra sensorer pss som du ser i crontab.

noll kommentarer , för det var bara lite labbande,
(därför heter variabeln ppm, det är bara en kopia på skriptet till CO2 sensorn.)
men fråga gärna om något är oklart,
jag skall göra mitt bästa för att svara :-)
Pen
Inlägg: 207
Blev medlem: 16 september 2006, 09:15:51
Ort: Stockholm

Re: Bostadslarm med tryckgivare

Inlägg av Pen »

Collectd verkar ha en färdig plugin för barometrar. Ser ut som den stödjer en i2c givare med beteckningen BMP085 (från Bosch). Kan det vara en föregångare till din givare?

https://collectd.org/documentation/manp ... _barometer

Nu ska jag inte göra reklam för collectd. Jag var tvungen att göra en egen plugin (för 1wire) och det åstadkoms endast genom en hel del arkeologi trots att jag utgick från en skriven sådan. Är osäker på om det kanske hade varit snabbare att scripta direkt mot rrdtool i mitt fall, såsom nifelheim har gjort. Men hittar man en färdig eller nästan färdig plugin kan det ju eventuellt gå bättre.

Pen
essgh
Inlägg: 7
Blev medlem: 17 augusti 2017, 21:21:09

Re: Bostadslarm med tryckgivare

Inlägg av essgh »

Tack! Har tyvärr inte haft tid för detta projekt på ett tag nu. Återkommer..
Skriv svar