Zuviel Werbung? - > Hier kostenlos beim SPS-Forum registrieren

Seite 1 von 2 12 LetzteLetzte
Ergebnis 1 bis 10 von 13

Thema: Codesys - Pumpen Zuschaltung über Betriebszeit

  1. #1
    Registriert seit
    11.06.2010
    Beiträge
    3
    Danke
    0
    Erhielt 0 Danke für 0 Beiträge

    Unglücklich


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Hallo zusammen,

    ich suche eine Codesys Lösung für eine Zuschaltung von 4 Pumpen, die über 4 Schaltschwellen (Durchfluss) zugeschaltet werden.
    Das hat man ja gleich über eine Case Anweisung gelöst.
    z.B.
    VAR
    Durchfluss : int;
    END_VAR

    CASE Durchfluss OF
    0 : (* Zuschaltung Pumpe 1 *)

    160 : (* Zuschaltung Pumpe 2 *)

    320 : (* Zuschaltung Pumpe 3 *)

    480 : (* Zuschaltung Pumpe 4 *)
    END_CASE


    Mein Problem liegt aber jetzt darin, denn ich muss diese 4 Pumpen je nach Betriebszeit d.h. Betriebsstundenzähler (habe ich schon gelöst) über einen Vergleich welche Pumpe die niedrigste Zeit in Betrieb war nacheinander über die Schaltschwellen vom Durchfluss zuzuschalten und wer die höchste Betriebsstunden hat nach dem Druchfluss wieder abzuschalten.

    Hätte hier jemand eine Lösung Parat, und im Strukturierten Text (ST) wenn es geht!
    Geändert von IndraMagic (15.09.2010 um 16:35 Uhr)
    Zitieren Zitieren Codesys - Pumpen Zuschaltung über Betriebszeit  

  2. #2
    Registriert seit
    11.10.2006
    Ort
    Verden (Aller)
    Beiträge
    532
    Danke
    31
    Erhielt 58 Danke für 49 Beiträge

    Standard

    Zitat Zitat von IndraMagic Beitrag anzeigen
    Hätte hier jemand eine Lösung Parat, und im Strukturierten Text (ST) wenn es geht!
    Nope, aber noch eine Anmerkung:

    Was machst Du, wenn Dein Wert den Schaltschwellenwert der CASE-Anweisung gar nicht erreicht?
    Also Durchfluss zum Bleistift die Wertefolge 158,159,161 annimmt?
    "Ein lahmer Drecksplanet ist das, ich habe nicht das geringste Mitleid" (Prostetnik Vogon Jeltz)

  3. #3
    IndraMagic ist offline Neuer Benutzer
    Themenstarter
    Registriert seit
    11.06.2010
    Beiträge
    3
    Danke
    0
    Erhielt 0 Danke für 0 Beiträge

    Standard

    nichts!

    1 Pumpe ist zwischen 0-160 aktiv
    2 Pumpe ist zwischen 161-320 aktiv
    3 Pumpe ist zwischen 321-480 aktiv
    4 Pumpe ist zwischen 480-unendlich aktiv


    Es geht rein um die Zuschaltung und Abschaltung über die Betriebszeit über einen Vergleich. Alle vier Pumpen werden wiederum an einen Regler übergeben der auf einen gewissen Druck regelt. Das tut aber noch nichts zur Sache ich brauche die Lösung erst auf meine Frage.

  4. #4
    Registriert seit
    11.10.2006
    Ort
    Verden (Aller)
    Beiträge
    532
    Danke
    31
    Erhielt 58 Danke für 49 Beiträge

    Standard

    Nun, Du hast aber, meiner Ansicht nach, mit der CASE-Anweisung noch nicht mal die Lösung für die Schwellwert-Umschaltung.
    Oder ICH habe die CASE-Anweisung nicht begriffen, auch möglich.....
    "Ein lahmer Drecksplanet ist das, ich habe nicht das geringste Mitleid" (Prostetnik Vogon Jeltz)

  5. #5
    Registriert seit
    19.06.2005
    Ort
    in Bayern ganz oben
    Beiträge
    1.360
    Danke
    188
    Erhielt 372 Danke für 290 Beiträge

    Standard

    Hi,

    Zitat Zitat von derwestermann Beitrag anzeigen
    Nun, Du hast aber, meiner Ansicht nach, mit der CASE-Anweisung noch nicht mal die Lösung für die Schwellwert-Umschaltung.
    Oder ICH habe die CASE-Anweisung nicht begriffen, auch möglich.....
    da hast Du vollkommen recht. Das geht so nicht.

    Richtig wäre:
    Code:
    CASE Durchfluss OF
      0..159 :  (* Zuschaltung Pumpe 1 *)
    
    160..319 :  (* Zuschaltung Pumpe 2 *)
    
    320..479 :  (* Zuschaltung Pumpe 3 *)
    
    480..600 :  (* Zuschaltung Pumpe 4 *)
    END_CASE
    Gruss Daniel
    Erfahrung ist eine nützliche Sache. Leider macht man sie immer erst kurz nachdem man sie brauchte...

    OSCAT.lib Step 7

    Open Source Community for Automation Technolgy

    SPS-Forum Chat (Mibbit) | SPS-Forum Chat (MIRC)

  6. #6
    IndraMagic ist offline Neuer Benutzer
    Themenstarter
    Registriert seit
    11.06.2010
    Beiträge
    3
    Danke
    0
    Erhielt 0 Danke für 0 Beiträge

    Idee

    Ja stimmt, bei meiner Lösung würde man erst in den Schritt z.B. 160 erst hereinkommen wenn die 160 durchlaufen wird.



    Habe ich dann beim ausprobieren auch gemerkt.

  7. #7
    Registriert seit
    10.08.2008
    Ort
    Hamburg
    Beiträge
    45
    Danke
    10
    Erhielt 4 Danke für 4 Beiträge

    Standard

    Hallo!

    Vielleicht folgender Denkanstoß:
    Nenne die Schwellen nicht Pumpe 1, Pumpe 2 usw., sondern Zuschaltung 1. Pumpe, Zuschaltung 2. Pumpe, ....usw.
    Welche von deinen vier Pumpen nun die 1.,2.,3. und 4. ist, erledigst Du über Vergleicher mit den Betriebsstunden untereinander. Das heißt für jede Pumpe gibt es vier boolsche Variablen (Pumpe 1=1.Pumpe, Pumpe1=2.Pumpe,....) Der Vergleich über die Betriebsstunden sollte evtl. nur bei Anforderung einer weiteren Pumpe durchgeführt werden. Da es sonst zu Umschaltungen der Pumpen während des Betriebes kommen kann.

    [Klugscheissmodus ON]
    In ST könnte ich sowas übrigens auch nicht programmieren. In FUP relativ einfach und für jeden nachvollziehbar.
    [Klugscheissmodus OFF]

    Viel Spaß!
    Geändert von Pietpinguin (21.09.2010 um 19:21 Uhr)
    if (ahnung == 0) {read Manuel; use SEARCH; use GOOGLE; } else { use brain; make post; }

  8. #8
    Registriert seit
    20.06.2010
    Beiträge
    169
    Danke
    14
    Erhielt 18 Danke für 12 Beiträge

    Standard

    Hallo

    Sowas nennt man Aggregate Umschaltung und in Prozessleitsystemen gibt es fertige Bausteine dafür. Allerdings ist man mittlerweile auf den Trichter gekommen dass der gleichmäßige Verschleiß von Aggregaten unvorteilhaft ist da beim Ausfall eines Aggregats das Reserveaggregat sich in einem genauso bescheidenen Zustand befindet. Also überlege Dir das mit den Betriebsstunden ganz genau.
    Gruß

  9. #9
    Registriert seit
    12.05.2010
    Ort
    Dortmund
    Beiträge
    889
    Danke
    57
    Erhielt 121 Danke für 89 Beiträge

    Standard

    hallo indramagic,
    würde es auch nicht mit "case" usw. machen.
    Zum ansteuern der Pumpen einfach den Baustein "Hysteresis" oder "Limitalarm" nehmen.
    Für die Umschaltung der Pumpen zunächst einmal einen Betriebsstundenzähler bauen .
    Wie schon geschrieben , sehe ich das auch so, dass gleichmäßige Pumpenbetriebsstunden in einer Anlage unvorteilhaft sind.
    Vielleicht hauptsächlich nur eine Pumpe benutzen, alle anderen nur hin und wieder anlaufen lassen (sitzen sonst fest - Wasserstein).
    Hoffe ich konnte dir helfen.

  10. #10
    Registriert seit
    27.08.2004
    Ort
    Bei Bremen
    Beiträge
    648
    Danke
    11
    Erhielt 12 Danke für 10 Beiträge

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Hallo,
    ich würde folgendes machen:

    Die Sollwerte müssen eine gewisse Zeit zum Starten überschritten sein.
    Beim Ausschalten müssen die Sollwerte eine Zeit unterschritten sein. Das ganze mit Hysterese.

    Aus Ausbaustufe je nach Schaltspiele, eine feste Pumpenfolge, die sich im Zeitraster ändert oder die Pumpen werden Laufzeitabhängig ein oder ausgeschaltet werden.
    Gruß
    Heinz

Ähnliche Themen

  1. Anbindung EtherCat Teilnehmer an PC über Codesys?
    Von bernd81 im Forum CODESYS und IEC61131
    Antworten: 6
    Letzter Beitrag: 16.05.2011, 10:26
  2. PID-Regler in codesys über vb.net
    Von Canler im Forum Hochsprachen - OPC
    Antworten: 0
    Letzter Beitrag: 15.04.2010, 17:02
  3. Codesys Visualisierung über Webbrowser
    Von bqstony im Forum HMI
    Antworten: 3
    Letzter Beitrag: 20.08.2009, 19:33
  4. betriebszeit anzeigen
    Von Kralle im Forum PC- und Netzwerktechnik
    Antworten: 11
    Letzter Beitrag: 09.11.2008, 15:47
  5. CoDeSys-OPC-Server über Excel
    Von akira255 im Forum Hochsprachen - OPC
    Antworten: 3
    Letzter Beitrag: 14.03.2007, 13:14

Stichworte

Lesezeichen

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •