Impulse in Liter umrechnen mit Logo soft

Peter50

Level-1
Beiträge
11
Reaktionspunkte
0
Zuviel Werbung?
-> Hier kostenlos registrieren
Hallo,
Es geht darum eingehende Impulse einer Messzelle in Liter umzurechnen.
Beispiel: 3000 Imp ≙ 10 Liter
Bei Step7 würde ich einen Scalierbaustein verwenden.
Mit der Logo das zu machen, da stehe ich gerade auf dem Schlauch.
Hat jemand eine Idee?

Gruß
Peter
 
Moin,
Ich würde als ersten Ansatz eine Berechnung vorschlagen. Hoch zählen der Impulse Mal den Faktor 10/3000.
Ich würde dann die Wertigkeit eines Impulses anpassen, damit der Zähler nicht in Overflow kommt.
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Es geht darum eingehende Impulse einer Messzelle in Liter umzurechnen.
Beispiel: 3000 Imp ≙ 10 Liter
Bei Step7 würde ich einen Scalierbaustein verwenden.
Impulse zählen mit SF "Vor-/RückwärtsZähler" und rechnen mit SF "Arithmetische Anweisung".
Zum Skalieren kann man SF "AnalogVerstärker" benutzen.
Wenn Dein Beispiel 3000 Imp = 10 l passt, erhältst Du das Volumen in cl, wenn Du die Anzahl Impulse durch 3 teilst.
Die LOGO kennt nur Ganzzahlen (ohne NachkommaStellen!), kann aber in der Anzeige ein Komma dazuzaubern, so dass Du z.B. den Wert 1000 in der Form 10,00 angezeigt bekommst.
Du musst Dir aber gut überlegen, ob Du z.B. eine Division durch 3000 "verkraften" kannst - dadurch geht Dir wahrscheinlich mehr an Genauigkeit verloren, als Du tolerieren möchtest.
 
Dividieren? Kann man die Impulse nicht einfach bis 3, bis 30 oder bis 300 zählen, und bei Überlauf einfach eine Zählervariable incrementieren?
 
Dividieren? Kann man die Impulse nicht einfach bis 3, bis 30 oder bis 300 zählen, und bei Überlauf einfach eine Zählervariable incrementieren?
Kann man. Das ist letztlich auch eine Form der Division ("FrequenzTeiler"). Das "arithmetische" Dividieren mit der LOGO hat auch seine Tücken bzw. Vorteile: es wird zwar mit Ganzzahlen gerechnet, aber die LOGO kann sich trotzdem nicht das Runden verkneifen. Das kann je nach Anwendung hilfreich oder störend sein. "Komfort", den niemand braucht. Dafür fehlen dann die simplen Funktionen, aus denen man alles zusammenbauen könnte, was man braucht.
Da wir nicht wissen, wie der AnwendungsFall des TE aussieht, können wir schlecht Tipps geben. Es ist nicht auszuschliessen, dass er vielleicht sowieso Zähler kaskadieren muss, wenn er z.B. die Impulse bzw. das Volumen über Jahre aufsummieren will, so wie es eine "normale" WasserUhr auch kann.
Mit einem schnellen Eingang, direkt auf den Vorwärts-/RückwärtsZähler verschaltet, soll die LOGO mit bis zu 5 kHz klar kommen, also im Beispiel dieses Thread immerhin bis zu 16,7 l/s bzw. 1 m³/min zählen können.
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Hallo,
Also ich habe jetzt viel herumdoktert. Jetzt habe ich aufgegeben. Mein Gehirn ist wohl doch schon zu knöchern dafür.
Bis ich die Arithmetische Funktion halbwegs kapiert hab mag ich gar nicht sagen.

Das Projekt will ich aber nun doch noch genauer vorstellen:
Abhängig von drei Digitalen Eingängen sollen 3 Liter, 5 Liter und 10 Liter abgefüllt werden. Die Meßzelle liefert pro Liter 288 Impulse. Korrekturwerte werden auch noch benötigt.

vllt mag sich jemand damit auseinandersetzen.

Gruß
Peter
 
Abhängig von drei Digitalen Eingängen sollen 3 Liter, 5 Liter und 10 Liter abgefüllt werden. Die Meßzelle liefert pro Liter 288 Impulse. Korrekturwerte werden auch noch benötigt.
Also eine "überschaubare" Anzahl vom Impulsen (864, 1440 oder 2880 bei 3 l, 5 l oder 10 l) mitzählen und dann möglichst unverzüglich ein Ventil abschalten. Dann Zähler wieder auf 0 und das gleiche noch mal ...
Das eigentliche Problem liegt im "möglichst unverzüglichen" Abschalten. Die LOGO kann zwar recht schnell Impulse an bestimmten DigitalEingängen zählen, aber die ReaktionsZeit beim Erreichen bzw. Überschreiten eines vorgegebenen Wertes ist "zufallsabhängig", so dass die "Korrekturwerte", die Du schon eingeplant hast, zwar den guten Willen bekunden, aber keine gute Reproduzierbarkeit der Mengen garantieren können.
In der LOGO-Hilfe ist die Rede von typisch 4 Hz für das Zählen von Impulsen an langsamen Eingängen. Das ist zwar nicht unser Thema, aber ich schliesse daraus einfach mal auf eine ZyklusZeit in der GrössenOrdnung von 100 ms. Das wäre dann der MassStab dafür, wie lange es schlimmstenfalls dauert, um auf einen erreichten ZählerStand zu reagieren.
Wenn das Abfüllen von 10 Litern 12 Minuten(!) dauern darf, ist das kein Problem, aber ich denke, deutlich schneller wäre schon wünschenswert.
Wie ist Deine Vorstellung bzw. Vorgabe?

Im Moment sehe ich gar nicht so sehr ein Problem in der Skalierung (das kriegen wir schon hin), sondern in der erreichbaren Genauigkeit der Abfüllmengen aus dem oben genannten Grund.
Aber ich habe keine praktische Erfahrung mit LOGOs und meine Meinung ist alles andere als massgeblich.

Anbei zwei ScreenShots aus der LOGO-Hilfe zum Vor-/RückwärtsZähler, auf die sich meine Bedenken stützen.

VorRückZähl-1.jpg VorRückZähl-2.jpg
 
Zuletzt bearbeitet:
Abhängig von drei Digitalen Eingängen sollen 3 Liter, 5 Liter und 10 Liter abgefüllt werden. Die Meßzelle liefert pro Liter 288 Impulse. Korrekturwerte werden auch noch benötigt.
Hier mal eine einfache Versuchsschaltung dazu:

attachment.php
 

Anhänge

  • Dosierung.jpg
    Dosierung.jpg
    105,1 KB · Aufrufe: 120
  • Dosierung.zip
    13,9 KB · Aufrufe: 15
Zuviel Werbung?
-> Hier kostenlos registrieren
Danke hucki,
Ich bin ganz ähnlich unterwegs. Hab dafür drei Tage investiert.
Wie das ändern der Werte am Display funktioniert muss ich noch herausfinden.
Ein paar für mich brauchbare Sachen hab ich bei dir schon gesehen.

Impulse in Liter.jpg
 
Zuletzt bearbeitet:
Also eine "überschaubare" Anzahl vom Impulsen (864, 1440 oder 2880 bei 3 l, 5 l oder 10 l) mitzählen und dann möglichst unverzüglich ein Ventil abschalten. Dann Zähler wieder auf 0 und das gleiche noch mal ...
Das eigentliche Problem liegt im "möglichst unverzüglichen" Abschalten. Die LOGO kann zwar recht schnell Impulse an bestimmten DigitalEingängen zählen, aber die ReaktionsZeit beim Erreichen bzw. Überschreiten eines vorgegebenen Wertes ist "zufallsabhängig", so dass die "Korrekturwerte", die Du schon eingeplant hast, zwar den guten Willen bekunden, aber keine gute Reproduzierbarkeit der Mengen garantieren können.
In der LOGO-Hilfe ist die Rede von typisch 4 Hz für das Zählen von Impulsen an langsamen Eingängen. Das ist zwar nicht unser Thema, aber ich schliesse daraus einfach mal auf eine ZyklusZeit in der GrössenOrdnung von 100 ms. Das wäre dann der MassStab dafür, wie lange es schlimmstenfalls dauert, um auf einen erreichten ZählerStand zu reagieren.
Wenn das Abfüllen von 10 Litern 12 Minuten(!) dauern darf, ist das kein Problem, aber ich denke, deutlich schneller wäre schon wünschenswert.
Wie ist Deine Vorstellung bzw. Vorgabe?

Im Moment sehe ich gar nicht so sehr ein Problem in der Skalierung (das kriegen wir schon hin), sondern in der erreichbaren Genauigkeit der Abfüllmengen aus dem oben genannten Grund.
Aber ich habe keine praktische Erfahrung mit LOGOs und meine Meinung ist alles andere als massgeblich.

Anbei zwei ScreenShots aus der LOGO-Hilfe zum Vor-/RückwärtsZähler, auf die sich meine Bedenken stützen.

Anhang anzeigen 50787 Anhang anzeigen 50788
Deine Überlegungen und Berechnungen sind sehr interessant.
Bei mir wird ein Füllvorgang ca 15 Sekunden dauern. Mit der Genauigkeit kann bzw muss ich leben.
 
Wie das ändern der Werte am Display funktioniert muss ich noch herausfinden.
Mit den Cursortasten zur gewünschten Stelle gehen und dann die ESC-Taste gedrückt halten bis der Cursor blinkt. Dann kannst Du den Wert mit den Cursortasten ändern. (In der Simu einfach anklicken)

Weder der Baustein mit dem einzustellenden Parameter noch der anzeigende Meldetext dürfen geschützt sein.
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Alle Bausteinausgänge benötigen einen Abschluss durch einen anderen Baustein, einen Ausgang oder einen Merker. Digitalausgänge können auch mit einer offenen Klemme abgeschlossen werden.
Ohne diesen Abschluss kannst Du zwar simulieren aber das Programm nicht auf die LOGO! laden.

Den High-Baustein kann man sich heutzutage auch sparen. Einfach den betreffenden Eingang durch Doppelklick (oder über'n Kontext) negieren.
 
Zurück
Oben