Int in S5Time Wandeln - FUP

chefren_new

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

hab im Forum schon mehr über die Umwandlung von Int in S5Time gelesen, aber kann mir jemand ein Beispiel in FUP geben?
Möchte in Wincc Flex die ein E/A Feld erstellen in dem ich den Wert in Sek. eingeben kann und in der Steuerung in S5Time umrechnen.

Danke für die Hilfe.

Gruß
 
Warum so kompliziert? Bilde mir immer einen Sekundenimpuls und addiere/subtrahiere mir einfach von dem Int Wert. Dahinter nen normalen Vergleicher und alles funzt.
 
Hallo

hab im Forum schon mehr über die Umwandlung von Int in S5Time gelesen, aber kann mir jemand ein Beispiel in FUP geben?
.....

Folgender AWL- Sechszeiler wandelt einen Integerwert in der Größenordnung von 0-9990 Sekunden in das Format S5time:
Code:
      L     #INT_sek                    //Sekundenwert im Format Integer
      L     10
      /I    
      ITB   
      OW    W#16#3000
      T     #s5time_sek                 //Zeitwert im Format S5time
Aber sowas in der Form hast Du ja, wie Du schreibst, schon mehrfach im Forum gelesen.
Wo ist nun Dein Problem, in der Übersetzung dieses AWL-Codes nach FUP ? :confused:
Die Tatsache, dass sich dieses simple Progrämmchen in FUP über ganze 3 Netzwerke erstreckt und dazu noch 2 temporäre Variablen benötigt sollte eigentlich jedem noch so eingefleischten KOP/FUP- Programmierer zu denken geben, sich an gegebener Stelle doch etwas mit AWL auseinanderzusetzen.
In der PDF im Anhang findest Du den hier geposteten AWL-Code als FUP.:rolleyes:
 

Anhänge

  • IntToS5time_FUP.pdf
    16,4 KB · Aufrufe: 539
Hallo

Danke

bin leider ein Neuling in schen SPS, FUP ist für mich einfacher zum lesen. nur das ist der Grund warum FUP

aber nochmals Danke für die Hilfe

Gruß
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Hallo
Möchte in Wincc Flex die ein E/A Feld erstellen in dem ich den Wert in Sek. eingeben kann und in der Steuerung in S5Time umrechnen.

Eine Umrechnung ist doch gar nicht nötig ???

erstelle einen DB mit Datentypen S5Time.

In WinnCC Flex erstellst Du ein E/A Feld mit Feldlänge 8 und 3
Nachkommastellen. Das Feld verknüpfst Du mit einer Variable aus
dem DB.

In das EA Feld kannst Du nun die Zeit in Sekunden eingeben.
Halbe Sekunde = 0,5 eingeben und im DB wird S5T#500ms eingetragen.
Eine Stunde = 3600 eingeben und im DB steht S5T#1h usw. usw.

Das hat aber schon zu Pro Tool Zeiten so funktioniert....

Gruß.

ToBo
 
Eine Umrechnung ist doch gar nicht nötig ???
.....
Naja, es gibt ja auch noch andere Visualisierungssysteme als WinCC flex oder Protool (z.B. InTouch, hier wird das so nicht unterstützt).

Wenn man in seinen SPS- Programmen noch S5-Timer verwendet und Diese über die Visu parametrieren will, so sollte man das IMHO tunlichst mit Übergabe von Integerwerten realisieren.
 
Mag ja sein, dass ich wegen vor Minuten gelesener Beiträge grantig bin aber:
"bin leider ein Neuling in sachen SPS, FUP ist für mich einfacher zum lesen. nur das ist der Grund warum FUP"

Dann programmier halt nur Sachen die Du kannst und lass die anderen.
Einfachstes AWL ist ja nicht gerade eine separate Wissenschaft. Meist ist das Problem, dass keiner Bit, Byte, Word auseinanderhalten kann und bei OW (oder Wort) aussteigt. Tja, dann gibt es Kurse, Bücher oder andere Berufe.

lG
Karl
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Wenn man in seinen SPS- Programmen noch S5-Timer verwendet und Diese über die Visu parametrieren will, so sollte man das IMHO tunlichst mit Übergabe von Integerwerten realisieren.

Was sollte man dann statt s5timer hernehmen? Also ich benutze immer l s5t#xy . Was sollte man stattdessen benutzen?
 
Zuletzt bearbeitet:
Hallo,

ich hätte mal ne Frage bezüglich den AWL Code. Nach dem wandeln des Integerwertes in BCD kommt der Befehl Oder Word

OW W#16#3000

// aber warum? Steh da grad bisal aufm Schlauch....

Danke für die Antwort
 
Also ich benutze immer l s5t#xy . Was sollte man stattdessen benutzen?
Es geht hier nicht um konstante Zeiten im Programm, sondern um variable Zeiten von der Visu. Die müssen von der Visu in die Variablen und von den Variablen an die Timer gebracht werden; möglichst Hersteller-neutral. Daher -> Übergabe als INT.

Harald
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Hallo,

ich hätte mal ne Frage bezüglich den AWL Code. Nach dem wandeln des Integerwertes in BCD kommt der Befehl Oder Word

OW W#16#3000

// aber warum? Steh da grad bisal aufm Schlauch....

Danke für die Antwort

Das hängt mit dem s5#Time -Format zusammen. Dazu bitte hier lesen, dann sollte das klar sein.

http://www.sps-forum.de/showthread.php/2942-Wie-kann-ich-Zeitwerte-f%FCr-Timer-variabel-eingeben
 
Danke für die Antworten,

soweit ich das nachvollziehen konnte steht W#16#3000 für die Zeitbasis von 10s bei W#16#2000 wäre es dann die Basis von 1s, bei W#16#1000 die Basis 100ms und bei den Wert von W#16#0000 handelt es sich dann um die Basis von 10ms. Sehr vielen Dank, somit sind meine AWL Kenntnisse wieder einen Skill gestiegen. ;)


Gruss
Daniel
 
Zurück
Oben