Messen von Gasmengen mit einfachen Mitteln
Version: 1.1
Datum: 22.12.2014
Autor: Dave Hoffmann
Inhaltsverzeichnis:
1.0 Motivation ............................................................................................................. 3
2.0 Durchfhrung von Referenzmessungen ............................................................... 3
3.0 Auswertung mit Durchstrmungssensor FLW-122 ............................................... 3
3.1 Vor- und Nachteile im berblick........................................................................ 3
3.2 Mechanischer Aufbau ....................................................................................... 4
3.2 Aufbau der Schaltung........................................................................................ 5
3.4 Das Ausgabeinstrument.................................................................................... 6
4.0 Alternative Durchflusssensor ................................................................................ 7
4.1 Vor- und Nachteile im berblick........................................................................ 7
4.2 Aufbau............................................................................................................... 7
4.3 Messwerte mit getesteten Flowsensoren .......................................................... 8
4.4 Software zur Ausgabe der Daten ...................................................................... 9
4.5 Anpassen der Messwerte................................................................................ 10
5.0 Anhang ............................................................................................................... 11
5.1 optionaler Komparator..................................................................................... 11
5.2 Lochraster Platine der FLW-122 Schaltung .................................................... 11
5.3 Arduino Sketch fr Messkurven mit den FLW-122.......................................... 13
5.4 Ardunio Sketch fr Messkurven mit einem Durchflusssensor ......................... 14
5.5 Ardunio Sketch fr die LPM-Ausgabe mit einem Durchflusssensor ................ 15
Messen von Gasmengen mit einfachen Mitteln
1.0 Motivation
Dieses Dokument soll aufzeigen welche einfachen Methoden existieren ein
durchstrmendes Gas messtechnisch zu erfassen.
2.0 Durchfhrung von Referenzmessungen
Um einen Sensor zu kalibrieren ist es erforderlich, unterschiedliche
Strmungsgeschwindigkeiten einzustellen. Hierzu kann ein Kompressor genutzt
werden, dieser lsst eine leere Plastikflasche um eine bestimmt Hhe in einen
wasserbefllten Zylinder steigen. Abhngig von der bentigten Zeit kann man auf die
jeweilige Strmungsgeschwindigkeit im LPM (Liter pro Minute) zurck rechnen.
Weitere Informationen finden Sie unter
http://www.minotech.de/forschung/hho-technologie/gas-messmethoden/
Diese Methode kann fr das Verhalten von Luft herangezogen werden, andere Gase
knnen in den Strmungseigenschaften abweichen.
Im Anhang sind Programme fr das Mikrokontrollersystem Arduino Uno vorhanden,
welche den Messvorgang vereinfachen. Nheres zum Arduino findet sich im Kapitel
4.
3.0 Auswertung mit Durchstrmungssensor FLW-122
3.1 Vor- und Nachteile im berblick
+ relativ einfacher Aufbau
+ geruschlos
- vorgeschlagener Transistor schlecht verfgbar
- Nullpunkt kann nicht stabil
- Turbulente Strmung am Sensor muss verhindert werden
Messen von Gasmengen mit einfachen Mitteln
3.2 Mechanischer Aufbau
Der Strmungssensor FLW-122 besteht aus einem
beheizten Sensorplttchen. Abhngig von dem
umstrmten
Medium
liegen
unterschiedliche
Spannungen an, welche als Messgre ausgegeben
werden. Zu diesem Zweck wird der Sensor in ein
umgebendes Gehuse verbaut und darf nicht mit diesem
in Berhrung kommen, was das Ergebnis beeinflussen wrde.
Die seitliche Abbildung zeigt eine einfache Umsetzung mit
einem Schlauch-T-Stck. Zunchst werden die 3
Sensorabgnge mit Litzen verltet und mit Schrumpfschlauch
gegeneinander isoliert. Vor
dem Verbau wird das
Bild 3.1: Schnitt des
Sensorblttchen lngs der
Messrohrs
Durchstrmungsachse
ausgerichtet
und
muss
vorsichtig umgebogen werden. Das Blttchen muss
frei von Luft umgeben sein. Der Sensor wird in
Betrieb leicht beheizt, die Wrme
Nachdem der Sensor samt Anschluss-Stcken im
T-Stck positioniert wurde, kann dieser mit einer
Klebepistole von Unten fixiert und abgedichtet
werden. Die zugefhrten Schluche mssen jeweils
Bild 3,2: Foto vom Messrohr
ber ca. 10 cm gerade gefhrt werden. Dies ist
notwendig, um turbulenten Strmung im Messrohr zu verhindern. Dies wrde dazu
fhren, dass trotz hoher Durchstrmung deutlich kleiner Werte angezeigt werden.
Um eine gerade Schlauchfhrung zu erreichen, kann der Schlauch mit Isolierband an
einen geraden Halter umwickelt werden oder alternativ ein Rohr verwendet werden.
Im Bild 3.2 ist eine mgliche Befestigung des T-Stckes mit Kabelbindern dargestellt.
Gut zu erkennen, ist wie das untere Ende abgedichtet wurde.
Bild 3.3: Pinbelegung des Sensors mit Widerstandswerten
Messen von Gasmengen mit einfachen Mitteln
3.2 Aufbau der Schaltung
Der Sensorherdsteller B+B hat in seinen Datenblatt eine Beschaltung an einen
Operationsverstrker (LM2902) vorgeschlagen. Dieser gibt Spannungen von 2,7 bis
6 Volt aus. ber das Potentiometer R2 kann der Nullpunkt nachgestellt werden. Die
Praxis zeigte, dass sich die Anfangsspannung von 2,7 Volt um 0,2 Volt nach oben
und unten ndern kann. Dies knnte sich eventuell mit den sich ndernden
Wrmeleiteigenschaften der Luft begrnden.
Der vorgeschlagene Transistor MPSA05 wird nicht mehr hergestellt und ist nur sehr
schwer zu bekommen. Es wurde verschiedene alternative NPN-Transistoren
verglichen. Es knnen eventuell leicht abweichende Ausgangsspannungen auftreten.
Als Alternative kann z.B. der MPSA42 verwendet werden. Diese hat das gleiche
Gehuse und die gleiche Pinbelegung. Das Diagramm 3.5 zeigt hnliche
Ausgabewerte bei einer eigenen Referenzmessung.
Die Schaltung vom Sensorhersteller kann ber Drehspulinstrumente oder eine
Mikrokontrollerschaltung
ausgewertet
werden.
Allerdings
darf
die
Ausgangsspannung nicht zu stark belastet werden, was zu einer Beschdigung des
Transistors fhren kann.
Im Folgenden wurde die Schaltung in weiteren Punkten optimiert: Um die
Ausgabespannung in einen gnstigen Bereich zu verschieben, kann ber das
Potentiometer R7 eine Abzugsspannung eingestellt werden. Bei Bedarf kann die
endgltige Ausgangspannung durch das Verhltnis von den Widerstnden R12
durch R11 eingestellt werden. Ebenso wurden einige Widerstnde durch gngige
Werte ersetzt.
Diese zustzliche Beschaltung kann mit den vorhanden freien Anschlssen des
Operationsverstrkers umgesetzt werden. Zudem bleibt eine freie Verstrkerstufe
brig, welche fr eine Kooperatorschaltung genutzt werden kann (s. Anhang 5.1).
Somit kann eine Sollspannung ber eine LED angezeigt werden. Des Weiteren
befindet sich dort die Schaltung vom unteren Bild auf einer Lochrasterplatine
umgesetzt.
Bild 3.4: Schaltung fr FLW-122 an Drehspulinstrument
Messen von Gasmengen mit einfachen Mitteln
3.4 Das Ausgabeinstrument
Die Auswertung soll ber ein Drehspulinstrument erfolgen. Dazu wird die
Instrumentenskala nachtrglich mit einem Stift beschrieben. Zunchst muss die
Ausgabespannung abhngig von Durchfluss ermittelt werden. Es gilt zu beachten,
dass die Werte vom Durchmesser des Messrohres und die Einstellung am
Potentiometer R2 abhngig sind. Das Beispieldiagramm wurde bei einem
Innendurchmesser von 6mm gemessen.
Bild 3.5: Messreihe mit Beschaltung des
Herstellers, Rohrdurchmesser 8 mm
4,5
4,25
Ausgabespannung (V)
4
3,75
3,5
3,25
MPSA42
3
MPSA05
2,75
2,5
0
10
12
Durchfluss (l/m in)
Es kann entweder ein Voltmeter oder ein Amperemeter in kleinen Messbereich
verwendet werden. Das Amperemeter hat den Vorteil, dass der Anzeigebereich
durch Vorwiderstnde feiner eine gestellt werden kann. Eine Auslegung des
Vorwiderstandes kann wie folgt berechnet
werden:
U = R I = ( Rinnen + Rvor ) I
Rvor =
U max
4,5V
Rinnen =
2,4k = 42,6k
I max
100 A
Dieser
Wert
ist
natrlich
nicht
als
Festwiderstand verfgbar. Deshalb ist der
nchst grere Wert zu whlen.
Messen von Gasmengen mit einfachen Mitteln
Bild3.6: das Drehspulinstrument mit Vorwiderstand
4.0 Alternative Durchflusssensor
4.1 Vor- und Nachteile im berblick
+ genau
+ geringer Umfang der Schaltung
- beschrnkter Messbereich, vor allem bei kleinen Gasmengen unter 1l/min
- Aufwendige Auswertung durch Digitalelektronik
- Geruschentwicklung bei hohen Durchfluss
Durchflusssensoren bestehen in der Regel aus einer
kleinen Turbine, die
drehzahlabhngig Impulse
ausgibt. Um diese Impulsrate auszuwerten bietet sich
eine Mikrokontrollerschaltung mit LCD-Display an.
Hierfr wurde ein Arduino Uno verwendet, welcher
sich
durch
eine
besonders
hohe
Einsteigerfreundlichkeit auszeichnet. Dieser kann
wahlweise
an
USB
oder
bis
zu
12Volt
Gleichspannung betrieben werden.
Zustzlich
knnen Werte ber USB am PC ausgewertet werden.
Bild4.1: zerlegter und zusammengebauter
Durchflusssensor
4.2 Aufbau
Der Aufbau ist recht simpel: die Durchflusssensoren haben in der Regel 3
Anschlsse: 5 Volt, Masse und Signal, Diese sind bereits auf der Arduino verfgbar.
Die Signalleitung muss auf Pin 2 eingehen, Sollte der Typ Arduino Leonardo
verwendet werden, muss Pin 3 benutzt werden.
Das Display wird ber mehrere Leitungen angeschlossen. Entweder man verwendet
die Beschaltung im Bild 4.2 oder man verwendet ein LCD Keypadshield, Dadurch
reduziert sich der Aufwand auf ein Minimum.
Messen von Gasmengen mit einfachen Mitteln
Zum Sensor
Achtung LCD-Beschaltung
kann abweichen!
Bild4.2: die Beschaltung des Arduino
Bild4.3: das LCD Keypad Shield
4.3 Messwerte mit getesteten Flowsensoren
Es wurden zunchst zwei Flowsensoren mit dem Arduino getestet. Generell tritt das
gleiche Problem auf: bei zu geringen Strmungsgeschwindigkeiten knnen keine
Messwerte erfasst werden, da auf Grund von Reibung die Turbine nicht in Bewegung
gesetzt wird. Einer der getesteten Sensoren, drohte bei hohen Durchflusswerten
zerstrt zu werden.
Messen von Gasmengen mit einfachen Mitteln
4.4 Software zur Ausgabe der Daten
Das Programm fr den Arduino befindet sich
im Anhang des Dokuments. Um die so
genannte Sketch auf den Arduino zu
bekommen muss nur das gleichnamige
Programm auf den Rechner installiert
werden. Nachdem dies durchgefhrt wurde
muss unter den Menupunkt Tools nun das
Board Arduino Uno und der passende
Seriellport eingestellt werden.
Als letzter Schritt wird nun der Sketch aus
dem Anhang herber kopiert und auf den
Arduino hochgeladen,
Das Programm selber gibt den Durchfluss im
Liter pro Minute an. Auerdem werden der
Durchschnitt und die Zeit mit angeben. Diese
Angaben knnen mit der Select-Taste auf
dem Shield oder einen Massekurzschluss an
Pin A0 zurckgesetzt werden.
Bild4.3: die PC Software Arduino
Im oberen Teil der Sketch werden die Variablen deklariert hier mssen die jeweiligen
Variablen Offset und Steigung an den jeweiligen Sensor angepasst werden.
Das Programm des Arduinos wurde so geschrieben, dass es nur ein lineares
Verhltnis von Durchfluss und Impulsrate auswertet.
Messen von Gasmengen mit einfachen Mitteln
4.5 Anpassen der Messwerte
Das folgende Beispiel zeigt einen preiswerten Chinasenor von Ebay. Die gemessen
Werte zeigen eine Streuung und einen Versatz (Offset) nach oben. Mit Excel knnen
verschiedene Werte fr die Variablen Offset und Steigung ausprobiert werden.
Bild4.4: Diagram zu Ausgabewerten des
Chinaflowsensors
400
350
Im puls rate (Hz )
300
250
200
150
real
gemes s en
interpoliert
100
50
0
0
Durc hfluss (l/m in)
Messen von Gasmengen mit einfachen Mitteln
10
5.0 Anhang
5.1 optionaler Komparator
5.2 Lochraster Platine der FLW-122 Schaltung
12V
GND GND Instrument
Messpunkt
Messen von Gasmengen mit einfachen Mitteln
GND
RH
RS
11
Messen von Gasmengen mit einfachen Mitteln
12
5.3 Arduino Sketch fr Messkurven mit den FLW-122
#include <LiquidCrystal.h>
LiquidCrystal lcd(8, 9, 4, 5, 6, 7); // Pinbelgung LC-Display
int adc_key_in = 0; // Abfrage der Tasten des Keyshields
int sensorValue = 0; // Variable fr aktuelle Messpannung 1023=5V
int time=0; int summe=0; int durchschnitt=0; //Variablen fr Durchschnitt
void setup()
{ lcd.begin(16, 2);
// LCD starten
Serial.begin(9600); // Start serial port
}
void loop ()
{ adc_key_in = analogRead(0); // Spannung an A0 messen,Schieldtasten lesen
if (adc_key_in < 700) // Reset bei Taste Select oder GND an A0
{time=0; summe=0; durchschnitt=0; }
sensorValue = analogRead(1); // Spannung an A1 messen
Serial.print("Spannung an A1: ");
// Serielle Schnittstelle gibt aktuelle Spannung
aus
Serial.println (sensorValue);
lcd.clear();
// LCD Ausgabe
lcd.setCursor(0,0);
lcd.print("Zeit(s): ");
lcd.print( time);
lcd.setCursor(0,1);
lcd.print(sensorValue);
lcd.setCursor(9,1);
lcd.print(durchschnitt);
time++; //Berechung des Durchschnitts
summe=summe+sensorValue;
durchschnitt=summe/time;
delay(1000); // Zeitintervall in ms
}
Messen von Gasmengen mit einfachen Mitteln
13
5.4 Ardunio Sketch fr Messkurven mit einem Durchflusssensor
LiquidCrystal lcd(8, 9, 4, 5, 6, 7); // Pinbelegung LC-Display
int flowPin = 2;
// 2 bei uno und Mega2560, 3 bei Leonardo
int adc_key_in = 0;
// Abfrage der Tasten des Keyshields
int pulsesCounter; // Pulszaehler
int time=0; int summe=0; int durchschnitt=0; //Variablen fr Durchschnitt
void rpm () // Unterprogramm Impulszaehler
{
pulsesCounter++;
}
void setup()
{ lcd.begin(16, 2);
// LCD starten
Serial.begin(9600); // Start serial port
pinMode(flowPin, INPUT);
// Initialize the digital pin as an input
attachInterrupt(0, rpm, RISING); // Interrupt fr Zahler an Pin 2
sei();
}
void loop ()
{
adc_key_in = analogRead(0); // Spannung an A0 messen,Schieldtasten lesen
if (adc_key_in < 700) // Reset bei Taste Select oder GND an A0
{time=0; summe=0; durchschnitt=0; }
Serial.print("Imulse pro Sekunde:");
Serial.println (pulsesCounter);
// Serielle Schnittstelle
lcd.clear();
// LCD Ausgabe
lcd.setCursor(0,0);
lcd.print("Zeit(s): ");
lcd.print( time);
lcd.setCursor(0,1);
lcd.print(pulsesCounter);
lcd.setCursor(9,1);
lcd.print(durchschnitt);
time++; //Berechung des Durchschnitts
summe=summe+pulsesCounter ;
durchschnitt=summe/time;
cli(); // Zhlerintrupt zurcksetzen
pulsesCounter = 0;
sei();
// Zhlerintrupt neustarten
delay(1000); // Zeitintervall in ms
}
Messen von Gasmengen mit einfachen Mitteln
14
5.5 Ardunio Sketch fr die LPM-Ausgabe mit einem
Durchflusssensor
#include <LiquidCrystal.h>
LiquidCrystal lcd(8, 9, 4, 5, 6, 7);
int flowPin = 2;
// 2 bei uno und Mega2560, 3 bei Leonardo
int CALFAK=38; // Faktor zum Nachkalibrien
// Declare variables
int pulsesCounter; // Main pulses counter
float LPMval; // Durchflussrate
void rpm ()
{
pulsesCounter++; // Every RISING pulse causes pulsesCounter to increase by one.
}
void setup()
{ lcd.begin(16, 2);
pinMode(flowPin, INPUT);
// Initialize the digital pin as an input
Serial.begin(9600);
// Start serial port
attachInterrupt(0, rpm, RISING); // Interrupt is attached to rpm function
sei();
// Enable interrupt 0 on Pin 2 for a RISING signal.
}
void loop ()
{
LPMval=pulsesCounter
* CALFAK *0.001;// Umrechnung von Counter zu
Messwert
Serial.print("Durchfluss LPM:");
Serial.println (LPMval);
// Serielle Schnittstelle
lcd.clear();
// LCD Ausgabe#
lcd.setCursor(0,0);
lcd.print("Durchfluss LPM:");
lcd.setCursor(0,1);
lcd.print(LPMval);
cli();
// Disable interrupts
pulsesCounter = 0; // Reset main counter
sei();
// Enable interrupts
delay(500); // Zeitintervall in ms
}
Messen von Gasmengen mit einfachen Mitteln
15