SCL Scalebaustein

magmaa

Level-1
Beiträge
349
Reaktionspunkte
27
Zuviel Werbung?
-> Hier kostenlos registrieren
Hallo ich will mir einen Scalebaustein mit SCl selber schreiben.

In AWL wandel ich ja mit ITD (Ganzzahl 16 Bit, in Ganzzahl 32 Bit) und mit DTR (Ganzzahl 32 Bit, in Gleitpunktzahl 32 Bit) um.

Wie bekomme ich die Umwandlung in SCl hin bzw. wie ist die Syntax dafür?
 
... fast genauso :

Integer in Real : Real_Var := INT_TO_REAL (Int_Var) ;

Und dann gibt es da natürlich noch zich weitere Umwandler ... für alle Eventualitäten ...

Gruß
LL
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Ah ok danke für die schnelle Antwort also könnte mein Scalebaustein in SCl so aussehen oder?

Code:
FUNCTION_BLOCK FB5

VAR_INPUT

 IN : INT;     
 HI_LIM : REAl;      
 LO_LIM : REAL;      

END_VAR
 
VAR_OUTPUT
     
OUT : REAL;
  
END_VAR

VAR

Kon: REAL := 27648.0;

END_VAR

VAR_TEMP

REAL_IN : REAL;

END_VAR

BEGIN
 
REAL_IN := INT_TO_REAL (IN);
 
OUT := (REAL_IN / Kon) * (HI_LIM - LO_LIM)  + LO_LIM;

END_FUNCTION_BLOCK
 
warum nicht ...
Wenn du beim Übersetzen keine "Mecker" bekommst ist meißt schon viel gewonnen ...:p

In deinem Fall müßte es aber gar nicht unbedingt ein FB sein ... ein FC ginge genauso (und braucht keinen DB) ...

Gruß
LL
 
Ja meckert nicht rum beim Übersetzten.

Und wie sieht das bei Unscale dann aus?

INT_OUT := REAL_TO_INT (REAL_OUT);
 
Alles klar danke.

Kann man die SCL Syntax irgendwo nachlesen, die Hilfe bei S7 ist ja nicht so aufschlussreich?
 
... die Frage habe ich irgendwann auch schon mal gestellt ...

Leider Fehl-Anzeige ...:-?

Du kannst leider nur auf das bißchen SCL-Hilfe :cry: und das SPS-Forum :p zurückgreifen. Anders habe ich es auch nicht gemacht. Irgendwann hast du es dann ...

Gruß
LL
 
Zurück
Oben