LOGO Siemens LOGO! Analogwerte Digital speichern, vergleichen u. abrufen ?????

LogoFan

Level-1
Beiträge
1
Reaktionspunkte
0
Zuviel Werbung?
-> Hier kostenlos registrieren
Hallo,

ich bin neu hier im Forum und habe ein Problem mit einer Lösung für eine Steuerung für eine Flaschenabfüllanlage.

Ich habe schon einige Gerätschaften gebaut und mit einer Siemens LOGO! gelöst bisher rein digitale Lösungen auch mit PT100 und möchte auch hier wieder gerne eine Logo! einsetzen.
Ich denke auch das es mit einer Logo! machbar ist. Jedoch stoße ich hier an meine Grenzen dieses Problem zu lösen.

Die Problematik ist folgende:

Gegeben Füllseite :
4 Flaschen gefüllt mit je 300 Bar
4 Ventile (je Flasche 1St)
4 Drucksensoren 0-2V =0-300Bar (je Flasche 1St)
1 Taster für den Start der Abfüllung

(zusätzlich noch die Sicherheitsrelevanten Komponenten die für eine Druckbefüllung vorhanden sein müßen, dieses sind aber rein mechanischer Natur und haben Steuerungtechnisch keine relevanz.)

Gegeben auf der zu befüllende Seite:

1 Druckminderer auf 200bar eingestellt (mechanisch)
1 Flasche (leer) zu befüllen
1 Ventil
1 Drucksensor 0-2V = 0-300bar

Nun zur eigendlichen Aufgabe:

Es soll immer die Flasche (Füllseite) mit dem niedrigsten Druck
(4Stck jede dieser Flaschen kann den niedrigsten Druck enthalten )

die Flasche auf der zu befüllenden Seite mit Ihrem Druck vorfüllen, bzw. bis zu Ihrem Enddruck von 200bar fertig füllen.

Jeder der Füllflaschen (Füllseite) kann somit mal die 300 bar, die 175bar, die 100bar, die 80bar usw. sein, daß heißt die Drücke in den Flaschen rolliert.


Ich habe nun 5 Analoge Eingänge AI1-AI5 mit den Sensoren belegt. (natürlich die Analogeingänge) hinzu gefügt am 22.07.07
Auch natürlich die 5 Ventile auf die 5 Ausgänge Q1-Q5 gelegt.

Dann vergleiche ich alle 4 Werte (Füllseite) miteinander, mit dem "Analogkomperator" insgesamt 12 AK´s.
1mit2, 2mit1, 1mit3, 3mit1, 1mit4, 4mit1, 2mit3, 3mit2, 2mit4, 4mit2, 3mit4, 4mit2.

Die Kombinationen der möglichen Füllreihenfolge insgesamt 24 wo hingegen 12 Pärchen bleiben

1 1 1 1 1 1 2 2 2 2 2 2 3 3 3 3 3 3 4 4 4 4 4 4
2 2 3 3 4 4 1 1 3 3 4 4 1 1 2 2 4 4 1 1 2 2 3 3
3 4 2 4 3 2 3 4 1 4 1 3 2 4 1 4 1 2 2 3 1 3 1 2
4 3 4 2 2 3 4 3 4 1 3 1 4 2 4 1 2 1 3 2 3 1 2 1

(Sollte eine Tabelle werden)


Dabei bin ich schon über das erste Problem gestolpert.

Den Sonderfall wenn alle Flaschen voll sind 300bar.

Wenn alle Flaschen mit 300bar gefüllt sind und diese dann mit der leeren Flasche verglichen werden wollen alle 4 Ventile öffnen und die Flasche befüllen bzw. wenn man obere und untere Öffnungsparameter setzt will gar kein Ventil öffnen.

Jetzt mein Gedankengang alle Werte zu vergleichen und Digital abspeichern. Dann für diese Werte eine Prioritätenliste 1. 2. 3. 4. zuerstellen und dann nur noch die diese Prioritätenliste abarbeiten und nur noch den Druck der zufüllenden Flasche bei einer kleinen Druckdifferez und einer Zeit auf die nächste Füllflasche umzuschalten bis der Druck von 200bar erreicht ist.

Vielleicht ist es ja ein falscher Denkansatz

Wie kann ich dieses Problem lösen. Ich denke hier ist ein professioneller Rat gefragt.

Ich hoffe das sich jemand findet der mir weiter helfen kann.


Habe mal meinen PG Versuch V1.0 mal als zip angehängt.

mfg

LogoFan:confused:
 

Anhänge

  • Speichersteuerung.zip
    18,5 KB · Aufrufe: 32
Zuletzt bearbeitet:
Guten Tag allerseits,

dein Beitrag ist zwar nun schon eine Weile her, habe Ihn aber erst vor kurzem zufällig gefunden und dachte es sei mal eine interessante Aufgabenstellung.
Des Weiteren bist du sicherlich nicht der einzige, der Analogwerte zu vergleichen hat, somit könnte die Lösung heute auch noch jemand anders helfen, der ein ähnliches Problem hat.

Der Ansatz die Analogwerte gegeneinander zu vergleichen ist schon mal ganz gut, auch wenn ich ihn anders weitergedacht habe:
Ich vergleiche der Reihe nach (vom Ersten bis zum Vierten) alle Werte nach dem Ausschlussprinzip und habe somit immer nach 3 Vergleichen den kleinsten Wert.

Beispiel:
AI1 = 1; AI2 = 2; AI3 = 3; AI4 = 4.
1. Vergleich: AI1 > AI2? Nein, somit scheidet AI2 aus, weil AI1 kleiner ist, kann AI2 nicht am kleinsten sein.
2. Vergleich: AI1 > AI3? Nein, somit scheidet AI3 aus, weil AI1 kleiner ist, kann AI3 nicht am kleinsten sein.
3. Vergleich: AI1 > AI4? Nein, somit scheidet AI4 aus, weil AI1 kleiner ist, kann AI4 nicht am kleinsten sein.
-> Es bleibt somit nuch AI1, der auch am kleinsten ist.

Somit kommt man nach folgendem Prinzip möglicherweise auf dem kürzesten Weg zum kleinsten AI:
Druckflaschen.png-> Klicken zum vergrößern

Soweit mal dazu, daraus habe ich auch gleich deine Anlage nach folgenden Anforderungen programmiert:
  • Das Programm sucht sich die Quellflasche mit kleinstem Druck aus und beginnt mit dieser die zu füllende Flasche zu füllen
  • Für die Befüllung muss das Ventil der jeweiligen Quellflasche, sowie das der zu befüllenden Flasche geöffnet werden
  • Das Programm füllt, bis der Druck von 200 bar erreicht ist
  • Genügt die Flasche mit kleinstem Druck nicht die zu füllende Flasche zu füllen, wird mit der Quellflasche mit höchstem Druck weitergefüllt
  • Bisher keine Not Aus oder Stopp Funktion
  • AI1 = Quellflasche 1, AI2 = Quellflasche 2, AI3 = Quellflasche 3, AI4 = Quellflasche 4, AI5 = Zu füllende Flasche, I1 = Taster Start
  • Q1 = Ventil Quellflasche 1, Q2 = Ventil Quellflasche 2, Q3 = Ventil Quellflasche 3, Q4 = Ventil Quellflasche 4, Q5 = Ventil zu füllender Flasche
  • An jedem AI ist ein Drucksensor: 0V = 0 bar, 2V = 300 bar
  • Sonderfall von gleichen Drücken der Quellflaschen, Auswahl egal
  • Informative Meldetexte
Damit habe ich folgende Lösung entwickelt:
DruckflaschenFUP.jpg-> Klicken zum vergrößern, (lsc Programm in zip im Anhang)

Die Vergleiche werden jeweils mit Analogkomparatoren realisiert (Schaltschwelle = 0), somit kann man eine größer / kleiner Prüfung einfach aufbauen.
Die 3 Vergleiche hintereinander werden einfach durch UND Gatter nach den Komparatoren realisiert.
Um die Flasche mit größtem Druck zu finden, bin ich nach dem gleichen Prinzip vorgegangen (es sind einfach nur andere 3 Vergleiche hintereinander).

Sollten zwei, oder mehr Flaschen den gleichen Druck haben, wird der Weg gegangen, der einem Nein bei dem Vergleich entspricht (Bsp.: AI1 = AI2, AI1 > AI2? -> Nein und normal weiter).

Learning by doing, ich bin nicht sicher, ob man es mit dem Bild einfach verstehen kann, daher auch die lsc im Anhang, viel Spaß beim simulieren.

Ich denke nicht, dass du diese Lösung noch benötigst, sollte aber jemand anders ein ähnliches Problem haben, kann er sich hier gerne melden.

Mit freundlichen Grüßen

Michael
 

Anhänge

  • Druckflaschen.zip
    37,1 KB · Aufrufe: 50
Zurück
Oben