Standard-Funktionen
sind in der DIN IEC 61131-3 im Abschnitt 2.5.1.5 beschrieben. SPAS verwendet davon die Typumwandlungen sowohl durch automatisches Einsetzen als auch durch manuelles. Typwandlungen, die eindeutig durchführbar sind, z.B. INTEGER nach REAL, werden automatisch in das Compilat geschrieben. Eine Typwandlung von INTEGER nach SHORTINTEGER oder WORD muß zwingend der Projektant verantworten und von Hand einsetzen.
Numerische Funktionen wie ABS, SQRT, LN oder alle trigonometrischen Funktionen sind vorbereitet. Da dies auch sprachabhängig ist, ob diese Funktionen verfügbar sind, ist der Precompiler noch nicht damit ausgestattet.
Arithmetische Funktionen sind außer MOD und EXPT verfügbar.
Bitschiebe-Funktionen sind alle verfügbar.
Bitweise boolesche Funktionen sind außer NOT verfügbar.
Auswahlfunktionen sowie Zeichenfolgefunktionen sind nicht verfügbar.
Vergleichsfunktionen sind vollständig verfügbar.
Funktionen für Datentypen der Zeit sind NUR für TIME verwendbar, alle anderen NICHT.
Standard-Funktionsbausteine
Bistabile Bausteine wie RS-Flip-Flop werden grundsätzlich nicht benötigt und sind daher nicht verfügbar.
Flankenerkennung ist vollständig einsatzbereit.
Zählerbausteine werden alle mit dem Typen CTUD projektiert. Der Precompiler erkennt anhand der Zähl-Variablen CU bzw. CD, welcher Zähler benötigt wird.
Zeitbausteine werden grundsätzlich mit dem Typen TON projektiert. Falls die Ausschaltverzögerung benötigt wird, ist dies im PRAP zu beachten.
Weitere Themen:
Allgemeine Funktionen, insbesondere selbst definierte (Funktionen[1]) und (Einfügen einer Funktion in die Ressource) oder (der Funktions-Aufruf)
[1] Eine Funktion ist gemäß IEC 1131-3 als eine Programm-Organisationseinheit definiert, die genau ein Datenelement liefert bzw. hervorbringt. Datenelemente können neben elementaren Typen auch Strukturen sein. Zur Deklaration sind nur Input und Local zugelassen.
SPAS verwendet in der Version 1.4 die Funktion mit freiem Ergebnis bzw. offener Rückgabe (Function xxxx : VOID), also sind Variablendeklarationen Input und Output zugelassen und natürlich Local.