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

Ergebnis 1 bis 8 von 8

Thema: Umwandeln von Zeiten - Step 7 - WinCC

  1. #1
    Registriert seit
    07.12.2011
    Beiträge
    15
    Danke
    8
    Erhielt 0 Danke für 0 Beiträge

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Guten Tag zusammen,

    ich möchte die Zeiten die von einem Panel (TP177A) kommen so umwandeln, dass diese nicht in ms sondern in sek. oder min. umgewandelnt werden.


    Wenn ich mich recht erinnere, ist der Wert aus dem TP ein Int, dieser muss in REAL gewandelt werden, damit ich diesen Wert bearbeiten kann (Berechnung) anschließend wird dieser wieder in Int umgewandelt und kann weiter verwendet werden. (z.B. Timer). Ist das so richtig ?

    Gibt es eine Übersicht wie diese Werte umgewandelt werden ?
    AWL oder FUB

    DANKE !
    Zitieren Zitieren Umwandeln von Zeiten - Step 7 - WinCC  

  2. #2
    Registriert seit
    24.10.2007
    Ort
    Niederlande
    Beiträge
    673
    Danke
    22
    Erhielt 143 Danke für 135 Beiträge

    Standard

    Zieten in mintuten auf das TP
    S5TIME Max zeit = 9990 sec bei 166 minuten gibt das 9960 Sec und > 166 min 9990sec.
    Code:
         L     #PT_S5_Zeitwert1            //INT
          L     6
          *I    
          L     999                         // Max zeitwert
          >I    
          SPB   max                         // wenn    #PT_S5_Zeitwert1 * 6 > 999 , 999 omsetzen nach BCD
          TAK                               // Tauche akku 1 und 2
    max:  ITB                               // Int To Bcd
          L     W#16#3000                   // S5Time * 10 sec
          OW    
          T     #S5_Zeitwert
    Wenn Sie die Zeit in Sec auf TP darfstelt:
    Code:
              L     #PT_S5_Zeitwert1            //INT
          L     999                         // Max zeitwert  fur sec
          >I    
          SPB   Z3                          // wenn    #PT_S5_Zeitwert1 * 6 > 999 , 999 omsetzen nach BCD
          TAK                               // Tauche akku 1 und 2
          ITB   
          L     W#16#2000                   // S5Time * 1 sec
          OW    
          SPA   Zeit
    Z3:   L     #PT_S5_Zeitwert1
          L     9990
          >I    
          SPB   ok
          TAK   
    ok:   L     10
          /I    
          T     #H_DW                       // DWord   HW=rest/LW = Quotient
          SRD   16                          // Bleib Rest
          L     5                           // Wenn rest <5 sprung , anders Quotient + 1 
          <I    
          SPB   dw
          L     #H_DW
          +     1
          T     #H_DW
    dw:   L     #H_DW
          ITB                               // Int To Bcd
          L     W#16#3000                   // S5Time * 10 sec
          OW    
    Zeit: T     #S5_Zeitwert
    Wenn Zeitwert <999 wert zeitwert ungesetz in ein S5Time *1s , wenn Zeitwert >999 sec wurde Zeitwert in ein S5Time * 10 sec umgesetz.

  3. Folgender Benutzer sagt Danke zu JoopB für den nützlichen Beitrag:

    Btk (29.04.2014)

  4. #3
    Registriert seit
    03.12.2008
    Beiträge
    654
    Danke
    160
    Erhielt 185 Danke für 113 Beiträge

    Standard

    @JoopB
    Respekt, da hast Du ja richtig tief in der Trickkiste gegraben.
    Ich zweifle nicht daran, dass ein Code funktioniert, aber umständlicher und komplizierter geht es glaub ich nicht.


    Mein Vorschlag an den TE
    Mit dem CPU Taktmerkerbyte sekundenweise ein Datenwort hochzählen, wenn nötig auch 1/10 Sekunden.
    Wenn 60 Sekunden voll --> Minuten (Datenwort) um 1 erhöhen, Sekunden auf Null.
    Da kannst Du Stundenlang Zeit erfassen.
    Noch ein paar Vergleicher zur Auswertung --> fertig.
    Zum Neustart alles wieder auf Null setzen.

  5. Folgender Benutzer sagt Danke zu Paul für den nützlichen Beitrag:

    Btk (29.04.2014)

  6. #4
    Registriert seit
    03.12.2008
    Beiträge
    654
    Danke
    160
    Erhielt 185 Danke für 113 Beiträge

    Standard

    Zitat Zitat von Btk Beitrag anzeigen
    Wenn ich mich recht erinnere, ist der Wert aus dem TP ein Int, dieser muss in REAL gewandelt werden, damit ich diesen Wert bearbeiten kann (Berechnung) anschließend wird dieser wieder in Int umgewandelt und kann weiter verwendet werden. (z.B. Timer). Ist das so richtig ?

    Da bist Du, glaube ich, ein bisschen falsch informiert.
    Bei S5 Zeiten ist die Zeitbasis BCD codiert, bei IEC Timern ist die Zeitbasis Millisekunden als DINT

  7. #5
    Registriert seit
    23.07.2009
    Ort
    Österreich
    Beiträge
    2.335
    Danke
    448
    Erhielt 688 Danke für 513 Beiträge

    Standard

    So, jetzt mal gaaaaanz langsam
    Zitat Zitat von Btk Beitrag anzeigen
    ich möchte die Zeiten die von einem Panel (TP177A) kommen so umwandeln, dass diese nicht in ms sondern in sek. oder min. umgewandelt werden.

    Wenn ich mich recht erinnere, ist der Wert aus dem TP ein Int
    OK, in welchem Datenformat bekommst du nun deinen Zeit-wert vom Panel. Als Integer in Millisekunden? Dann wäre nach 32s Schluss.
    Ganz verstehe ich nicht was du meinst, ich nehme es aber mal so an.

    Zitat Zitat von Btk Beitrag anzeigen
    Wenn ich mich recht erinnere, ist der Wert aus dem TP ein Int, dieser muss in REAL gewandelt werden, damit ich diesen Wert bearbeiten kann (Berechnung) anschließend wird dieser wieder in Int umgewandelt und kann weiter verwendet werden. (z.B. Timer).
    Was möchtest du denn berechnen? Wenn du nur mit diesem Millisekunden-Vorgabewert auf einen Timer willst, dann kannst du dir die Arbeit ersparen.
    1.) Du kopierst den INT-Wert auf eine TIME-Variable und arbeitest mit SFB4/5 TON/TOF.
    2.) Wenn du S5-Timer bevorzugst, führst du Schritt 1 trotzdem aus und verwendest dann die FCs aus der Siemens-Standard-Biblieothek zum wandeln des TIME-Formats nach S5-Time. Damit kannst du dann auch direkt auf einen S5-Timer gehen

    Nichts gegen dich JoopB, aber wenn ich Leute manuell Werte ins S5-Format konvertieren sehe bekomme ich Brechreiz.
    Da kann so viel daneben gehen, bzw. da ist in der Welt auch schon so viel daneben gegangen, also bitte nicht die jungen Leute daraufhin anstacheln.
    Das geht mit den fertigen FCs, einfacher und sicherer.

    -------------------------------------------------------------------------------------------------------------------------------------
    Weiters stelle ich jetzt mal ne Vermutung in den Raum. Ist ne weitere Interpretation deiner Fragestellung.
    Das TP177 wird, nehme ich mal an, von dir projektiert. Du hast in der SPS einen S5-Timer-Wert den du gerne am Panel verstellen möchtest.
    Wenn du den Wert aber in einem E/A-Feld projektierst, ist er immer in Millisekunden. Deswegen möchtest du am Panel in Sekunden/Minuten eingeben und dann in der SPS umrechnen.

    Wenn ich mit dieser Vermutung recht habe, dann kannst du dir die Arbeit sparen. Das Zauberwort heißt "lineare Skalierung" und ist unter WinCC-Flexible bei den Variablen-Eigenschaften zu finden. Dort kann man das Verhältnis wie ein Wert von SPS zu Panel angezeigt werden soll, einstellen. Also z.B. 1000:1 für Millisekunden auf Sekunden.


    Sollten dies dich noch nicht zum Ziel führen, können wir noch gerne darüber reden wie du Zeiten/Daten hin und her konvertiert, bis du das gewünschte erreicht hast.
    Geändert von RONIN (28.04.2014 um 21:03 Uhr)
    If at first you don't succeed, you're not Van Damme!
    ... or maybe using TIA!

  8. Folgender Benutzer sagt Danke zu RONIN für den nützlichen Beitrag:

    Btk (29.04.2014)

  9. #6
    Registriert seit
    05.09.2011
    Beiträge
    176
    Danke
    43
    Erhielt 28 Danke für 20 Beiträge

    Standard

    Und ich denke, er meint einfach, wenn er eine "1" am Panel eingibt, in der Steuerung eine Sekunde/Minute/... dabei rauskommen soll. Normalerweise ergibt eine "1" nämlich eine ms. Und da gibt es entweder im Winccflexible die lineare Skalierung oder in der Steuerung einfach den eingegebenen Wert mal 1000 und das Ergebnis in die Timevariable damit hättest du deinen eingegebenen Wert zumindest schon mal in Sekunden! Vielleicht sollte er sich aber mal genau äußern von welchen Timern er spricht..

  10. #7
    Btk ist offline Neuer Benutzer
    Themenstarter
    Registriert seit
    07.12.2011
    Beiträge
    15
    Danke
    8
    Erhielt 0 Danke für 0 Beiträge

    Standard

    Guten Morgen,

    danke für die vielen Antworten!

    Ich habe gestern noch einen "fertigen" Baustein gefunden.
    Ich wollte nur eine andere Zeitbasis aus dem Panel TP177A auf einen Zeitbaustein haben.
    Wenn dieser direkt mit S5Time adressiert wird (WinCC - Step7) , sind die Einstellungen nur in ms möglich.
    nun habe ich einen Baustein gefunden (nicht Original Siemens ) der mir die Zeit automatisch in ms / s umrechnet.

    Leider konnte dieser nur in Sekunden und nicht in Minuten umrechen, somit erreiche ich maximal 16minuten an meiner Einschaltverzögerung, dies werde ich die Tage aber auch noch geregelt bekommen

    Danke und Gruß
    Chris

  11. #8
    Registriert seit
    24.10.2007
    Ort
    Niederlande
    Beiträge
    673
    Danke
    22
    Erhielt 143 Danke für 135 Beiträge

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Sie brauchen mit WinCC_Flex keine bouwsteen um die ziet um zu rechnen, Sie konte dass in WinCC machen mit Scale, In beilage ein beispiel mit ein S5Zeit in 3 darfstellungen (3x ein variabele in Flex, 1 x schaliert von 600000 in steuerung und 10 auf TP (= stunde) obengrenze= 166 untergrense = 0, 1x schaliert von 10000 auf 10 (= sec) obengrenze 9990 untergrenze 0 und 1x unscaliert mit 3 siefern hinter die komma obengrenze 9990000 unter grenze 0).
    Bei die stunde konte sie max 166 stunde eingeben was bij die sec auf 9960 sec auskomt, gibt mann ei die sec oder direkt 9990 sec ein gibt dass auch 166 Stunde.
    WinCC_S5time.JPGWinCCScale.JPGS5Time-Scalung.JPG

    Gruss,

    Joop
    Angehängte Grafiken Angehängte Grafiken
    Geändert von JoopB (29.04.2014 um 12:49 Uhr)

  12. Folgender Benutzer sagt Danke zu JoopB für den nützlichen Beitrag:

    Btk (29.04.2014)

Ähnliche Themen

  1. textlliste von wincc an step 7
    Von dedl im Forum Simatic
    Antworten: 6
    Letzter Beitrag: 27.09.2011, 20:29
  2. WinCC und Zeiten
    Von ahaemmerle im Forum HMI
    Antworten: 4
    Letzter Beitrag: 05.08.2007, 20:09
  3. Step 7 - Problem mit Zeiten
    Von Nix_Wissen im Forum Simatic
    Antworten: 7
    Letzter Beitrag: 23.01.2007, 20:47
  4. Antworten: 2
    Letzter Beitrag: 28.02.2006, 17:03
  5. Synchronisierung von Zeiten
    Von margral2 im Forum HMI
    Antworten: 5
    Letzter Beitrag: 28.10.2004, 09:23

Lesezeichen

Berechtigungen

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