Dezimalzahl über Stringkonvertierung ansprechen

onikos

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

manchmal funktionieren die einfachsten Sachen nicht.

Code:
VAR
plant_nr : string;

END_VAR

plant_nr := '000';
plant_nr := INT_TO_STRING(WORD_TO_INT(db211.dbw94));


Ich möchte die Zahl 213 so verarbeiten, dass ich sagen kann. Es ist die 3. Maschine im 21. Raum. Und ich bekomme nur eine Dezimal Zahl.

Aber die Konvertierung gibt immer null, nur die Länge wird mir in den ersten beiden Bytes, wie normal, angezeigt.


Danke für eure Hilfen.
 
Hallo,
woran erkennst du, dass es nicht funktioniert ?
Strings werden im Status (auch nicht bei SCL) nicht angezeigt ...

Gruß
Larry
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Weil in der Variablentabelle nichts angezeigt wird. egal in welchem Format.

Gibt es eine Möglichkeit dieses beschriebene Problem anders zu bewältigen?

Also eine 3-stellige Zahl so verarbeiten, dass ich die ersten beiden Zahlen nehme und die letzte alleine betrachte?
 
Warum nicht gleich über die Dezimalzahl, in String wandeln kann man dann bei Bedarf immer noch.

Code:
L DB211.DBW94  //213
L 10
/I 
T MW 202  //21

L DB211.DBW94  //213
L 10
MOD 
T MW 204  //3
 
Zuletzt bearbeitet:
Zuviel Werbung?
-> Hier kostenlos registrieren
warum in scl? einfacher gehts doch fast gar nicht.

oder bist du auch schon fetischist der meint alles was in scl geht muss man auch in scl machen?
wenn ja lies dir mal bei siemens durch wofür scl geschaffen wurde.
 
... das wäre in SCL dann aber auch nicht anders - den MOD-Befehl geibt es dort auch und er wird dort auch wie eine Rechen-Operation eingesetzt.
Also jetzt mal ins Unreine :
Code:
ZielVar1 := QuellVar mod 10 ;
ZielVar2 := QuellVar / 10 ;
Gruß
Larry
 
Yep Larry,

in meinem Oberstübchen, wird irgendwie immer zuerst die AWL-Lösung generiert, egal was ich als Vorlage gezeigt bekomme. Aber in SCL sieht es ja fast genauso aus. ;)
 
Zurück
Oben