Pulsausgabe-Steuercode schreiben

Auf das Sonderdatenregister, das den Steuercode für den schnellen Zähler und die Pulsausgabe speichert, kann mit der Systemvariable sys_wHscOrPulseControlCode zugegriffen werden. (Die Systemvariable sys_wHscOrPulseControlCode entspricht dem Sonderdatenregister DT90052.)

Funktionen, die vom Pulsausgabe-Steuercode ausgeführt werden:

Die Einstellungen des Steuercodes können mit den Systemvariablen sys_wHscChannelxControlCode oder sys_wPulseChannelxControlCode (wobei x=Kanalnummer) für jeden einzelnen Kanal abgefragt werden. Die Einstellungen dieser Systemvariable bleiben erhalten, bis sie neu definiert werden.
Anmerkung
  • Wenn ein Stopp erzwungen wird, kann dies zu einer unterschiedlichen Zählung am Ausgang der SPS und am Eingang des Motors führen. Sie sollten deshalb eine Referenzpunktfahrt ausführen, nachdem die Pulsausgabe angehalten wurde.
  • Der Referenzpunkt-Sucheingang kann nicht eingestellt werden, wenn das Zählen verhindert oder der Istwert zurückgesetzt werden soll.

Referenzpunkt-Sucheingang setzen/zurücksetzen

Zum Abbremsen im Referenzpunktbereich geben Sie einen Referenzpunkteingang an und setzen Bit 4 des Sonderdatenregisters, in dem der Steuercode für die Pulsausgabe gespeichert wird (sys_wHscOrPulseControlCode), auf TRUE und zurück auf FALSE. Das Referenzpunkt-Bit bleibt gesetzt. Setzen Sie dieses Bit auf FALSE und direkt anschließend auf TRUE, um den Referenzpunkteingang während einer Referenzpunktfahrt ein zweites Mal setzen zu können.

  1.  (1) Anfangs- und Restgeschwindigkeit
  2.  (2) Sollgeschwindigkeit
  3.  (3) Referenzpunkt-Sucheingang: TRUE
  4.  (4) Referenzpunkteingang: TRUE
  5.  (5) Referenzpunkteingang jederzeit aktivierbar

Pulsausgabe fortsetzen/stoppen (erzwungener Stopp)

Wenn Sie Bit 3 des Datenregisters, in dem der Steuercode für die Pulsausgabe gespeichert ist (sys_wHscOrPulseControlCode), auf TRUE setzen, wird die Pulsausgabe abgebrochen. In jedem Programm, das Pulsausgabebefehle verwendet, sollte die Möglichkeit eines erzwungenen Halts vorgesehen werden. Wenn Sie Bit 3 auf FALSE zurücksetzen, wird die Pulsausgabe fortgesetzt.

Zählen aktivieren/deaktivieren

Y*

Pulsausgang

(1)

Istwert:

(2)

1

Wenn Bit 1 des Steuercodes auf TRUE gesetzt ist, wird das Zählen unterbunden und der Istwert behält den aktuellen Wert bei. Das Zählen wird fortgesetzt, wenn Bit 1 auf FALSE zurückgesetzt wird.

Istwert des schnellen Zählers zurücksetzen (Software-Reset)

Y*

Pulsausgang

(1)

Istwert:

(2)

Bit 0 des Steuercodes der Pulsausgabe (Istwert zurücksetzen)

Wenn Bit 0 des Steuercodes auf TRUE gesetzt ist, wird der Istwert auf 0 zurückgesetzt. Der Istwert behält den Wert 0 bei bis Bit 0 wieder auf FALSE zurückgesetzt wird.

Schnelle Zähler- und Positionierbefehle abbrechen (nur FP0R)

Um die Ausführung eines Befehls abzubrechen, setzen Sie Bit 2 des Datenregisters, in dem der Pulsausgabesteuercode (sys_wHscOrPulseControlCode) gespeichert wird, auf TRUE. Der Kontrollmerker "Pulsausgabe" wird auf FALSE gesetzt. Um die Ausführung des Befehls wieder zu aktivieren, setzen Sie Bit 2 auf FALSE zurück.

Beschreibung für FP-Sigma

Die Bits 0–15 des Steuercodes sind in Vierergruppen angeordnet. Die Biteinstellung in jeder Gruppe wird durch eine Hexadezimalzahl dargestellt (z.B. 00020000 0000 1001 = 16#2009).

Gruppe IV

(1)

Kanalnummer (Kanal n: 16#n)

Gruppe III

0 (fest)

Gruppe II

(2)

Referenzpunkt-Sucheingang (Bit 4)

0: FALSE

1: TRUE

Gruppe I

(3)

Pulsausgang (bit 3)

0: Fortsetzen

1: Stopp

(4)

0 (Bit 2, fest)

(5)

Zählen (Bit 1)

0: Erlauben

1: Verhindern

(6)

Istwert auf 0 zurücksetzen (Bit 0)

0: Nein

1: Ja

Beispiel: 16#2009

Gruppe

Wert

Beschreibung

IV

2

Kanalnummer: 2

III

0

(fest)

II

0

Referenzpunkt-Sucheingang: FALSE

I

9

Hex 9 entspricht der Binärzahl 1001

Pulsausgang: Stopp (Bit 3)

1

(Bit 2, fest)

0

Zählen: Aktiviert (Bit 1)

0

Istwert auf 0 zurücksetzen: Ja (Bit 0)

1

Beschreibung für FP-X

Gruppe IV

(1)

Kanalnummer (Kanal n: 16#n)

Gruppe III

(2)

1 (fest)

Gruppe II

(3)

Referenzpunkt-Sucheingang (Bit 4) (siehe Anmerkung)

0: FALSE

1: TRUE

Gruppe I

(4)

Pulsausgang (bit 3)

0: Fortsetzen

1: Stopp

(5)

Zählen (bit 1)

0: Erlauben

1: Verhindern

(6)

Istwert auf 0 zurücksetzen (bit 0)

0: Nein

1: Ja

Beispiel: 16#2109

Gruppe

Wert

Beschreibung

IV

2

Kanalnummer: 2

III

1

(fest)

II

0

Referenzpunkt-Sucheingang: FALSE

I

9

Hex 9 entspricht der Binärzahl 1001

Pulsausgang: Stopp (Bit 3)

1

(Bit 2, fest)

0

Zählen: Aktiviert (Bit 1)

0

Istwert auf 0 zurücksetzen: Ja (Bit 0)

1

Description pour FP0R

Die Bits 0–15 des Steuercodes sind in Vierergruppen angeordnet. Die Biteinstellung in jeder Gruppe wird durch eine Hexadezimalzahl dargestellt (z.B. 00020001 0000 1001 = 16#2109).

Gruppe IV

(1)

Kanalnummer (Kanal n: 16#n)

Gruppe III

1 (fest)

Gruppe II

(2)

Startsignal für Positionierung

0: Deaktiviert

1: Aktiviert

(3)

Signal für gebremsten Halt

0: Deaktiviert

1: Aktiviert

(4)

Referenzpunkt-Sucheingang (bit 4) (siehe Anmerkung)

0: FALSE

1: TRUE

Gruppe I

(5)

Pulsausgang (bit 3)

0: Fortsetzen

1: Stopp

(6)

Positionierbefehl abbrechen (Bit 2)

0: Fortsetzen

1: Stopp

(7)

Zählen (bit 1)

0: Erlauben

1: Verhindern

(8)

Istwert auf 0 zurücksetzen (bit 0)

0: Nein

1: Ja

Beispiel: 16#2109

Gruppe

Wert

Beschreibung

IV

2

Kanalnummer: 2

III

1

(fest)

II

0

Startsignal für Positionierung: deaktiviert

Anforderung für gebremsten Halt: deaktiviert

Referenzpunkt-Sucheingang: FALSE

I

9

Hex 9 entspricht der Binärzahl 1001

Pulsausgang: Stopp (Bit 3)

1

Positionierbefehl abbrechen (Bit 2)

0

Zählen: Aktiviert (Bit 1)

0

Istwert auf 0 zurücksetzen: Ja (Bit 0)

1

Beschreibung für FP0, FP-e

Die Bits 0–15 des Steuercodes sind in Vierergruppen angeordnet, wobei jede Gruppe die Einstellungen für einen Kanal enthält.Die Bits 0–15 des Steuercodes sind in Vierergruppen angeordnet, wobei jede Gruppe die Einstellungen für einen Kanal enthält. Die Biteinstellung in jeder Gruppe wird durch eine Hexadezimalzahl dargestellt (z.B. 0000 0000 1001 0000 = 16#90).

Gruppe

II

I

Kanal

1

0

  1.  (1) Pulsausgang (bit 3)

    0: Fortsetzen

    1: Stopp

  2.  (2) Referenzpunkt-Sucheingang (bit 2) (siehe Anmerkung)

    0: FALSE

    1: TRUE

  3.  (3) Zählen (bit 1)

    0: Erlauben

    1: Verhindern

  4.  (4) Istwert auf 0 zurücksetzen (bit 0)

    0: Nein

    1: Ja

Beispiel: 16#90

Gruppe

Wert

Beschreibung

II

9

Kanalnummer: 1

Hex 9 entspricht der Binärzahl 1001

Pulsausgang: Stopp (Bit 3)

1

Referenzpunkt-Sucheingang: FALSE (bit 2)

0

Zählen: Aktiviert (Bit 1)

0

Istwert auf 0 zurücksetzen: Ja (Bit 0)

1

I

0

Beispiel: Referenzpunkt-Sucheingang für Kanal 2 (FP-SIGMA) aktivieren

POE-Kopf

Im POE-Kopf werden alle Ein- und Ausgangsvariablen deklariert, die für die Programmierung dieser Funktion verwendet werden. Für alle Programmiersprachen wird der gleiche POE-Kopf verwendet.

	VAR
	 bEnableNearHome: BOOL:=FALSE;
	END_VAR
	VAR CONSTANT
		PLS_CH2_ENABLE_NEAR_HOME: WORD:=16#2010;
			(*Enables near home input for channel 2*)
		PLS_CH2_CONTINUE: WORD:=16#2000;
			(*Disables near home input for channel 2
and starts deceleration*)
	END_VAR

KOP-Rumpf

Bei Referenzpunktfahrten ist der Referenzpunkt-Sucheingang für Kanal 2 aktiviert.

BODY
    WORKSPACE
        NETWORK_LIST_TYPE := NWTYPELD ;
        ACTIVE_NETWORK := 0 ;
    END_WORKSPACE
    NET_WORK
        NETWORK_TYPE := NWTYPELD ;
        NETWORK_LABEL :=  ;
        NETWORK_TITLE :=  ;
        NETWORK_HEIGHT := 8 ;
        NETWORK_BODY
B(B_VARIN,,PLS_CH2_ENABLE_NEAR_HOME,20,2,22,4,);
B(B_VARIN,,PLS_CH2_CONTINUE,20,6,22,8,);
B(B_F,E_MOVE!,Instance,22,0,28,4,,?DEN?D?AENO?C);
B(B_VAROUT,,sys_wHscOrPulseControlCode,28,2,30,4,);
B(B_F,E_MOVE!,Instance,22,4,28,8,,?DEN?D?AENO?C);
B(B_VAROUT,,sys_wHscOrPulseControlCode,28,6,30,8,);
B(B_CONTACT,,bEnableNearHome,4,1,6,3,R);
L(7,2,7,6);
L(1,2,4,2);
L(6,2,22,2);
L(7,6,22,6);
L(1,0,1,8);
        END_NETWORK_BODY
    END_NET_WORK
END_BODY

ST-Rumpf

if DF(bEnableNearHome) then
    PLS_CH2_ENABLE_NEAR_HOME:=sys_wHscOrPulseControlCode;
    PLS_CH2_CONTINUE:=sys_wHscOrPulseControlCode;
end_if;

Beispiel: Zwangsstopp für Kanal 0 ausführen (FP0, FP-e, FP-SIGMA)

POE-Kopf

Im POE-Kopf werden alle Ein- und Ausgangsvariablen deklariert, die für die Programmierung dieser Funktion verwendet werden.Für alle Programmiersprachen wird der gleiche POE-Kopf verwendet.

KOP-Rumpf

Für Kanal 0 wird ein erzwungener Stopp ausgeführt.

ST-Rumpf

if DF(bStopPulseOutput) then
    PLS_CH2_STOP_PULSE_OUTPUT:=sys_wHscOrPulseControlCode;
    PLS_CH2_CONTINUE:=sys_wHscOrPulseControlCode;
end_if;
Anmerkung

Wenn ein Stopp erzwungen wird, kann dies zu einer unterschiedlichen Zählung am Ausgang der SPS und am Eingang des Motors führen. Sie sollten deshalb eine Referenzpunktfahrt ausführen, nachdem die Pulsausgabe angehalten wurde.

Letzte Änderung am: 2021-07-28Feedback zu dieser SeitePanasonic Hotline