Herunterladen Diese Seite drucken

Danfoss VLT MCO 305 Projektierungshandbuch Seite 173

Vorschau ausblenden Andere Handbücher für VLT MCO 305:

Werbung

MCO 305 Projektierungshandbuch
Pragmas
Derzeit gibt es zwei Pragma Direktiven:
#pragma NOIMPLICIT
#pragma IMPLICIT
NOIMPLICIT teilt dem Compiler mit, dass implizite Variablen-Deklarationen nicht mehr erlaubt sind. Das
heißt, dass jede Variable deklariert werden muss, bevor sie benutzt wird. IMPLICIT teilt dem Compiler mit,
dass implizite Variablen-Deklarationen wieder erlaubt sind. Deklarations-Anweisungen sehen wie folgt aus:
long a,b,c,d
double u,v,y,z
// x ist nicht erlaubt, weil x für Achsenkennung benutzt wird x(n)
Es wird empfohlen NOIMPLICIT zu benutzen, da dies die Bildung von ungewünschten Definitionen von
neuen LONG-Variablen durch Fehler vermeidet (z.B. ein falsch geschriebener Variablenname).
ACHTUNG!:
Pragmas werden ab MCO 5.00 unterstützt.
Variablen Typen
Variablen Typen stehen ab MCO 5.00 zur Verfügung.
APOSS unterstützt die Variablen des Typs LONG und DOUBLE. LONG Variablen können implizit definiert
werden, einfach durch das Benutzen derselben (außer wenn das NOIMPLICIT Pragma benutzt ist). DOUBLE
Variablen müssen vor ihrem Einsatz deklariert werden.
Die Deklaration solcher Variablen sieht so aus:
long a,b,c,d
double u,v,y,z
// x ist nicht erlaubt, weil für die Achsenkennung benutzt x(n)
Die Implementierung von DOUBLE Variablen ist abhängig von der Hardware und Firmware. MCO 305
(Firmware > 5.00) nutzt 64 Bit Genauigkeit (einige Double Funktionen wie sqrt, sin, cos .. jedoch nur 32 Bit
Genauigkeit).
Zusätzlich werden die folgenden DOUBLE Funktionen unterstützt:
sqrt, sin, cos, tan, acos, asin, atan, grad, rad, ln, exp sowie die Konstante PI. Diese Funktionen besitzen für
einige Hardware nur 32-Bit Genauigkeit (MCO 305). Sie können wie folgt benutzt werden:
y = sqrt(x) // gibt die Quadratwurzel von x zurück
y = sin(x)
// gibt den Sinus von x zurück (entsprechend für cos, tan, acos, asin, atan)
y = grad(x) // konvertiert x (Bogenmaß) in Grad (0..360)
y = rad(x)
// konvertiert Grade in Bogenmaß (0.. 2 *pi)
x = pi * 0.5 // Pi ist 3.1415....
y = ln (x)
// gibt den natürlichen Logarithmus von x zurück
y = x exp u // gibt x hoch u (x
Weitere Double Funktionen:
FABS gibt den absoluten Gleitkommawert eines Gleitkomma-Arguments zurück:
double dx, dy
dy = -100.00 % 15.0 // wird -6.6666..
dx = fabs(dx) // gibt 6.6666.. zurück
ROUND rundet das Gleitkomma-Argument auf den nächstmöglichen Integerwert auf oder ab. Diese Funktion
gibt noch ein Double zurück:
dx = round(dy) // wird -7.0000
__ Programmieren mit APOSS __
u
) zurück
®
MG.33.L5.03 – VLT
ist ein eingetragenes Warenzeichen von Danfoss.
173

Werbung

loading