/*=============================================
= Funktion: fnTask2()
= Für zeitkritische Programmteile, die asynchron
= zu Task 1 laufen können
=
===============================================*/
fnTask2()
{
// Umrichterzustand auslesen
_GetSys( lDriveState,GS_SYSSTATE );
// Fehlernummer auslesen
_GetSys( lErrorCode,GS_ERROR );
// PA Daten einlesen
_GetSys( tPA.BusType ,GS_PODATA );
// Sprungverteiler bilden/ Betriebsart wählen
// virtuelle Feldbus-Klemmen nur nutzbar, wenn keine DIO oder DIP gesteckt
// in diesem Fall "lPA_ControlWordHigh
// sonst "lPA_ControlWordHigh
lPA_ControlWordHigh
lOpMode = (lPA_ControlWordHigh & MY_OP_MODE )> >
// Zustandsuebergaenge bilden
switch ( lGlobalStateMachine )
{
// keine Betriebsart angewaehlt oder moeglich
case DISABLE:
if (lDriveState> =0xA)
{
}
break;
// Betriebsart "Tippen"
case JOGGING:
if (lDriveState> =0xA)
{
}
else
break;
Handbuch – IPOSplus®
= tPA.PI1 > >
= InputLevel > >
= tPA.PO1 > >
8; //Bit8 auf Bit 0 schieben
if (lOpMode==JOGGING)
lGlobalStateMachine = JOGGING;
if (lOpMode==HOMING)
lGlobalStateMachine = HOMING;
if (lOpMode==POSITIONING)
lGlobalStateMachine = POSITIONING;
if (lOpMode==DISABLE)
lGlobalStateMachine = DISABLE;
if (lOpMode==HOMING)
lGlobalStateMachine = HOMING;
if (lOpMode==POSITIONING)
lGlobalStateMachine = POSITIONING;
lGlobalStateMachine = DISABLE;
Compiler – Beispiele
Compiler Programmgerüst
8;" verwenden
9;" //Bit0 auf Bit 0 schieben
3; //Bit 3,4 = Betriebsart
n
n
kVA
kVA
18
f
f
i
i
P
Hz
Hz
P
273