Millisekunden abschneiden

delacasa

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

ich habe eine Variable "a" in einem S5#Time Format. Möchte aber in der Visu die Millisekunden nicht angezeigt bekommen. Wie kann ich nun die Millisekunden von Variable "a" abschneiden und in diese dann in die Variable "b", ebenfalls ein S5#Time Format, schreiben? Mit meiner Visu ist das leider nicht möglich.

Danke für Eure Hilfe!
delacasa
 
Hallo,
Variante 1: für Anzeige in VISU Time Format wählen
S5#Time Format mit FC 33 (S5TI_TIM) [Bibliotheken > IEC_Function_Blocks] in Time wandeln und durch 1000 dividieren.


Varinate2: man beachte den Aufbau S5Time Zeitbasis_hunderter_zehner_einer,
z.B.: Zeitwert 78,9 Sekunden 16#0789 --> 4 stellen nach links schieben und die Millisekunden sind weg….

 
darum benutze ich meistens Variante 1: oder benutze gleich IEC-Timer, welche mit Datentyp Time arbeiten...;)
 
Hallo zusammen,

ich habe eine Variable "a" in einem S5#Time Format. Möchte aber in der Visu die Millisekunden nicht angezeigt bekommen. Wie kann ich nun die Millisekunden von Variable "a" abschneiden und in diese dann in die Variable "b", ebenfalls ein S5#Time Format, schreiben? Mit meiner Visu ist das leider nicht möglich.

Danke für Eure Hilfe!
delacasa

Guten Morgen

Nachsehen was in denn letzten 4 bits steht

0 = 10 ms
1 = 100 ms
2 = 1 s
3 = 10 s

wenn eine 0 drinnen steht kannst du es nicht umwandeln da kleiner 1 s
wenn eine 1 drinnen steht das ganze 4 mal nach links dann ganze 12 mal nach rechts schieben
und noch in die letzten 4 bits eine 2 schreiben und du hast keine ms mehr
wenn eine 2 drinnen steht kannst du es ja lassen dann gibts keine ms
wenn eine 3 drinnen steht must du es wohl auch lassen


zur info beim schieben nach links ( 4 x ) löscht du denn faktor beim schieben nach rechts ( 12 x ) löscht du die ms
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Stop! Erstmal Danke für Eure Antworten, doch leider ist mir ein kleiner Fehler unterlaufen. Die Variable ist nicht vom Typ S5'Time, sondern vom Typ time. Wie kann ich hier die Millisekunden abschneiden?

Danke!
delacasa
 
Millisekunden

Hi,
Format "Time" sind reine Millisekunden! Also die Variable durch 1000 und in eine andere Transferieren: da hast Sekunden.

Gruss: Vladi
 
Nutze die Funktion "lineare Umrechnung" der HMI. Bei ProTool kann man beispielsweise in den Variablen-Eigenschaften im Kartereiter "Umrechnung" eine lineare Umrechnung aktivieren.

Wertebereich Bediengerät: 0 - 1
Wertebereich Steuerung: 0 - 1000

Gibst Du nun im Bediengerät den Wert "2" ein, wird "2000" zur SPS geschrieben.



Wenn Du Zeiten mit z.B. 1 Nachkommastelle eingeben willst, dann läuft die lineare Umrechnung 0-1 --> 0-100

Funktioniert bei TIME und S5TIME


mfg
Maxl
 
Zuletzt bearbeitet:
Zurück
Oben