www.mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik Volumenstrom messen mit PIC16F819


Important announcement: there is an English version of this forum on EmbDev.net. Posts you create there will be displayed on Mikrocontroller.net and EmbDev.net.
Autor: Yann S. (triniat)
Datum:
Angehängte Dateien:

Diesen Beitrag bewerten:
lesenswert
nicht lesenswert
Hallo Zusammen,

Ich muss für eine Projekt eine Mikrokontroller Steuerung entwickeln und 
Programmieren.
Ich benutze dazu einen PIC16F819 und Programmiere das ganze in C.
Nun zu meinem anliegen:

Ich möchte einen Volumenstromsensor auslesen welcher über eine Turbine 
TTL Impulse zurückgibt.
Meine Überlegung ist, dass ich den Timer0 als Counter konfiguriere, die 
Impulse über eine gewisse Zeit hochzähle, den Timer0 (Counter) dann 
auslese, die Impulse durch die verstrichene Zeit teile um so die 
momentane Frequenz der Turbine zu erhalte. Danach setze ich den Timer0 
wieder auf null. Die zähl Zeit will ich über den Timer1 definieren.

Meine Frage ist:

Sind dies Überlegungen so realisierbar?
Kann ich den TTL Impuls wie auf dem Schema gezeichnet mit dem pull up 
Wiederstand, an den Timer0 Eingang des PICs anhängen?
Brauche ich einen externen Quarz um die Zeit genau genug hinzubekommen 
oder reicht der internen Oszillator?

Ich Messe den Volumenstrom von Wasser. Die Spannweite liegt bei 0 – 2 
l/min.

Mein Ziel ist es möglichst wenig Rechenleistung für diesen Vorgang in 
Anspruch zu nehmen so dass das System möglichst schnelle auf externe 
Ereignisse reagieren kann und nicht durch das Auslesen vom Sensor 
blockiert wird.
Da ich noch nicht so lange mit Mikrokontrollern arbeite, weiß ich nicht 
was die optimalste Lösung für solche Messungen ist.

Wenn ihr einen anderen, besseren Weg kennt, freu ich mich auf die 
Anregungen.

TRINAT

Autor: Stephan Meter (multimeter90)
Datum:

Diesen Beitrag bewerten:
lesenswert
nicht lesenswert
Hallo,

also erst einmal ein paar Fragen. Dein Volumenstrom beträgt maximal 
2l/min, wie hoch wäre dann die Frequenz der Turbine, also wie groß ist 
die zeit zwischen den TTL Impulsen?

Deine Möglichkeit geht natürlich, du solltest dabei den Timer so 
konfigurieren, dass er auch bei maximaler Drehzahl der Turbine noch eine 
gewünschte Auflösung bringt. Wie genau soll die Auswertung sein?


Mein Vorschlag:
Timer1 (16bit) nehmen und als counter definieren. Der zählt dir dann die 
Impulse an RC0 oder RC1.
Timer0 als Timer, mit Interrupt, sodass aller, sagen wir als Beispiel 
500ms, ein Überlauf-> Interrupt ausgelöst wird. Dann den Timer1 auslesen 
und schon hast du deine Frequenz. Die ganze Sache benötigt sehr wenig 
Rechenleistung, da der Counter in der Hardware arbeitet und somit keine 
Rechenleistung verbaucht.

Wegen der Genauigkeit: Quarz ist definitiv genauer, aber das kommt auf 
deine Anforderungen an.

Autor: Lutz (Gast)
Datum:

Diesen Beitrag bewerten:
lesenswert
nicht lesenswert
Besonders spannend ist die Frage, wie konstant der Durchfluß ist. Bei 
stärkeren Schwankungen (womöglich auch noch in kurzer Zeit ...) wird das 
ziemlich ungenau.D ann muß man doch schon mehr Rechenaufwand betreiben, 
z.B. auch die Impulse und Zeit absolut zählen. Wenn neben 
Geschwindigkeit auch noch das Volumen gefordert wird, muß das sowieso so 
gemacht werden.

Autor: Erich (Gast)
Datum:

Diesen Beitrag bewerten:
lesenswert
nicht lesenswert
Ein ganz wichtiges Zitat siehe hier:
http://de.wikipedia.org/wiki/Durchflussmesser#Unte...

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel




Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder GIF-Format hochladen.
Siehe Bildformate
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken erkennst du die Nutzungsbedingungen an.

webmaster@mikrocontroller.netImpressumNutzungsbedingungenWerbung auf Mikrocontroller.net