Real nach String / String nach Time

HansJürgen

Level-1
Beiträge
15
Reaktionspunkte
1
Zuviel Werbung?
-> Hier kostenlos registrieren
Hallo@all

Ich versuche gerade einen Realwert nach String umzuwandeln um diesen dann weiter nach Time umzuwandeln. Leider habe ich das Problem, das ich nicht weis, wie das Format dafür ist.
Der SPS Typ ist eine Phoenix Contact ILC 150ETH

Ich habe schon etliche versucht. Beim kompelieren und Projekt neu erzeugen gab es keine Fehler.

Sobald ich aber das Projekt auf die SPS schiebe kommt der Fehler :
Code Fehler: String-Fehler! Fehler in Format-String

Hier mal die von mir benutzten Bausteine.

string.PNG

Der Realwert wird zur Zeit so ausgegeben: 0.00006741

Es wäre nett, wenn mir da mal jemand behilflich sein könnte.

Gruß

HansJürgen

 
Bevor man sich jetzt die Mühe macht: Warum der Zwischenschritt mit String?
Dürfte ja einfacher sein, direkt zu wandeln.
 
Hallo,
das ist recht einfach wenn man wüßte, was die 0.00006741 darstellen sollen.
TIME ist im Grunde ein DINT, dass in Millisekunden auflösst. Du müßtest also ggf. nur passend multiplizieren, dann daraus einen DINT machen und den dann direkt in TIME umwandeln.

Gruß
Larry
 
Das Code Fehler: String-Fehler! Fehler in Format-String kommt ist ja kein Wunder. Bei FORMAT fehlt auch auch der Format-String. Aber bei String-Fehlern läuft die ILC weiter.

Aber ich würde auch den Weg nehmen, REAL -> Multiplizieren mit Faktor -> REAL_TO_DINT -> DINT_TO_TIME.
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Hallo Larry und Mobi

Sorry hätte ich gleich gestern Abend noch schreiben sollen.
Nach den ganzen Versuchen, habe ich es gestern genau so gemacht gemacht und den Realwert so Multipliziert,das ich Sekunden bekomme.

Danke euch aber trotzdem.

Schönen Sonntag euch beiden ( natürlich auch den anderen )

Gruß
HansJürgen
 
FB REAL_TO_BUF und BUF_TO_TIME

Hallo HansJürgen,

Ich möchte Ihnen folgende Lösung empfehlen (siehe Screenshot unten). Dabei wird der REAL-Wert mittels FB REAL_TO_BUF und BUF_TO_TIME in Time-Wert umgewandelt. Als Kontrolle ist der Time-Wert wieder in REAL-Wert umgewandelt. Bei dieser Lösung erreichen Sie eine höhere Genauigkeit und der Überlauf bei Multiplikation wird vermieden. Für weitere Fragen stehe ich Ihnen gerne zur Verfügung.

Grifik.JPG

Gruß Eduard
 
Zuletzt bearbeitet:
Zurück
Oben