mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik Durchlfussmesser


Autor: Jochen (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ich möchte den Druchflussmesser

Low Flow Flowmeter
Serie: FCH-m-POM-LC
Art.-Nr. 150392

(Conrad Art.-Nr.150392-62)hier befindet sich auch ein Datenblatt in Form 
einer PDF Datei

an meinen mikrocontroller anschließen. Das Ausgangssinganal an Pin 1 
soll 5V betragen. Dazu habe ich folgende Schaltung gefunden. 
(Dateienanhang)

Ist bei den im Schaltplan angegebenen Bauteilen nun eine Spannung von 5 
oder 24V an die Pins 2 und 3 anzulegen?

Autor: Steven () (ovular) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Den Schaltplan musst du nochmal hochladen!

MfG ovular

Autor: Jochen (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert

Autor: STK500-Besitzer (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
>Dazu habe ich folgende Schaltung gefunden. (Dateienanhang)

Vergessen? Vorschau angeklickt?

>Das Ausgangssinganal an Pin 1 soll 5V betragen.

Das glaube ich nicht. Laut Datenblatt handelt es sich um einen 
Open-Collector-Ausgang - der schaltet nur gegen Masse.
Den kannst du direkt an den Controllereingang mit einen 
Pull-Up-Widerstand lagen. AVR und diverse andere Controller haben 
Pull-Ups schon eingebaut.

>Ist bei den im Schaltplan angegebenen Bauteilen nun eine Spannung von 5
>oder 24V an die Pins 2 und 3 anzulegen?

Der Sensor verträgt Spannungenn zwischen 5V und 24V. Wenn du also deine 
Schaltung auf 5V auslegst, kannst du den Sensor auch damit betreiben.

Autor: Jochen (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
d.h. also, dass ich die zusätzliche Schaltung nicht benötige?
und ich kann den Controller auch nicht zerstören, indem ich die Spannung 
des Durchflussmessers auf 24V einstelle?


Als ich an den pins 2 und 3     6V, 9V , 12V anlegte Zählte der 
Controller die Singnale des Durchflussmessers nicht. Erst bei 24V 
erkannte der Controller die Singnale.

Autor: Jochen (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
daher war meine vermutung, dass die Spannung am Durchflussmesserausgang 
steigt mit der Erhöhung der Spannung an des Pins 2 und 3

Autor: Kobaltchlorid (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
> daher war meine vermutung, dass die Spannung am Durchflussmesserausgang
> steigt mit der Erhöhung der Spannung an des Pins 2 und 3

Wie bereits gesagt und wie auch im Datenblatt vermerkt:

Das ist ein OpenCollector-Ausgang! DER LIEFERT KEINE SPANNUNG!

Das ist lediglich ein Schalter, der entweder gegen Masse schaltet oder 
hochohmig ist. Um die Spannung musst du dich selber mit einem 
Pull-Up-Widerstand kümmern!

Autor: Jochen (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
danke,jetzt hab ichs endlich verstanden was ein OpenCollector-Ausgang 
ist.
d.h. wenn man im controller keinen "Pull-Up-Widerstand" zur verfügung 
hat, so müsste man nach dem schaltplan bauen um 5V als ausgangssingnal 
zu erreichen.

auf seite 2 befindet sich in der Mitte der schaltplan:

http://www.produktinfo.conrad.com/datenblaetter/17...

das 5V signal wird dann an den Controllereingang angelegt.

Autor: Bernd S. (kurtel)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo Jochen,

hab gerade deinen Beitrag gelesen. Ich hab das gleiche Teil von Conrad 
und hab d.Schaltung "in der Mitte Datenblatt" genommen. Das scheint zu 
gehen.
Was hast du denn mit dem Mengenmesser geplant? Ich will den Ölverbrauch 
meiner Heizung messen. Nur hab ich keinen Plan wie das Programm dazu 
aussehen muß. Der Messer bringt ja 2500 Impulse pro Liter bei einer 3 mm 
Düse. Die müssten dann ja gezählt  und auf LCD angezeigt werden.
Hast du schon einen Plan, wie das Programm aussehen könnte?

Gruß kurtel

Autor: STK500-Besitzer (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
>Der Messer bringt ja 2500 Impulse pro Liter bei einer 3 mm
>Düse. Die müssten dann ja gezählt  und auf LCD angezeigt werden.

Zähle nicht die Impluse, sondern nur die Flanken (Entweder die 
steigenden oder die fallenden).

Für jede (fallende) Flanke erhöht man eine Veriable um eins.

2500 Impulse pro Liter bedeutet doch, dass pro Impuls 0,0004 l 
durchgeflossen sind, was 0,4 ml entspricht.

Also teilt man entweder die gezählten Impulse durch 2500 
(float-Berechnung), oder addiert immer 4 zu der Zählvariablen hinzu und 
zeigt auf dem Display die Variable mit einem um eine Stelle verschobenen 
Komma an (Fixpoint-Arithmetik).
Ich würde die zweite Variante bevorzugen.

Autor: Bernd S. (kurtel)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Das klingt alles so einfach, daß blöde ist nur, ich hab nicht viel 
Ahnung von solchen Sachen. Hast du vielleicht so ein Programm auf Lager?

Autor: Jochen (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Code at 0
include reg_8252.pdf
extern code 
initLCD,loeschen,loeschzeile1,loeschzeile2,textzeile1,textzeile2,cursorp 
os,cursoran,cursoraus, 
textaus,zifferaus,hexaus,dezaus,dualaus,dualaus1,dualaus2,charaus



  sjmp init
   org 0013h        ;IE1 (Interrupt 1)
  ljmp interrupt   ;Sprung zur Interrupt-Service-Routine

init: setb EAL   ;Freigabe für alle Interrupts
     setb EX1   ;Freigabe externes Interrupt 1
     setb IT1  ;Selektionsbit für interrupt 1 (auslösen bei fallender 
Flanke)



  mov P2,#1
  lcall initLCD
  lcall loeschen


  mov R1,#0      ;tausender Register(R1)
  mov R0,#0      ;hunderter Register(R0)
  lcall TEXTAUS_tausend
  lcall TEXTAUS_hundert


s1:  jnb P3.7,s1
s2:  jb P3.7,s2

    inc R0


    cjne R0,#100,s1

    inc R1

    mov R0,#0

  sjmp s1





TEXTAUS_hundert:  mov A,#45h
            lcall cursorpos
            mov A,R0
            lcall dezaus
            ret

TEXTAUS_tausend:  mov A,#40h
            lcall cursorpos
            mov A,R1
            lcall dezaus
            ret






interrupt: lcall TEXTAUS_hundert
        lcall TEXTAUS_tausend
        mov A,P2
        RL A
        mov P2,A
        reti







end

Autor: Jochen (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hierbei handelt es sich um einen Assemblercode,
wird P3.3(taster) aktiviert, wird die Anzahl empfangener Impulse auf dem 
LCD-Display ausgegeben.(schick mal einen Liter durch und schau nach ob 
du auf 2500Impulse kommst, ansonsten stimmt was mit dem Code nicht^^)

Aus dem Datenblatt:
mit Düse Nozzle size D= 1,0 mm ca. 10.000 Imp. / L
Pulse output D= 3,0 mm ca. 2.500 Imp. / L


ohne Düse: ein Impuls entspricht 0,0004 L
mit Düse:   "     "       "      0,0001 L

Im Quellcode müsste man also die Impulsanzahl mit 0,0004 L bzw.0,0001 L 
multiplizieren und dann auf dem LCD-D. ausgeben.

Autor: Jochen (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
ach ja, der Impulsgeber hängt an P3.7. Und die Schaltung nicht 
vergessen, welche 5V gibt.

Autor: Bernd S. (kurtel)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo Jochen,

danke erstmal mal für d. Code. Werd mich mal dahinterklemmen.

kurtel

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
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
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 bestätigst du, die Nutzungsbedingungen anzuerkennen.