Siemens
Siemens

Digital Industries, Motion Control, Machine Tool Systems

Anwenderzyklus

Beitrag 03.05.2021, 05:07 Uhr
OGefr_Asbach
OGefr_Asbach
Level 1 = Community-Lehrling
*
Gruppe: Mitglied
Mitglied seit: 03.05.2021
Beiträge: 2
Moin in die Runde.

Ich verzweifel hier gerade. Ich habe schon in den Handbüchern, hier im Forum und das halbe Internet durchwühlt.

Ich habe mir einen Zyklus geschrieben und diesen im Ordner Anwenderzyklen abgelegt.
Der Programmkopf sieht wie folgt aus:

%_N_TASTBOWE_SPF
;$PATH=/_N_CUS_DIR

PROC TASTBOWE(REAL AA, REAL AB, INT AC) SAVE DISPLOF
...
...
M17

In der COV.COM und in der UC_GR.COM Habe ich auch alles eingetragen.
Das Rückübersetzen und auch die Eingabe Maske der Eingabehilfe funktionieren auch tadellos.


Aber beim Aufruf aus einem Hauptprogramm will er es einfach nicht machen.
Es kommt immer : "12550 Kanal 1 Satz TASTBOWE nicht definiert o. Option nicht vorhanden"

Steuerung ist eine S840D von 1998 mit DIN ISO oberfläche( eigentlich mit SHOPMILL aber das benutzt hier leider keiner und es funktioniert auch nicht mehr )

Grüße Daniel.
   
Beitrag 03.05.2021, 11:40 Uhr
CaptainFu
CaptainFu
Level 1 = Community-Lehrling
*
Gruppe: Mitglied
Mitglied seit: 09.09.2019
Beiträge: 49
Hi,
zwei Sachen könnten da vielleicht weiter helfen.

Erstens, hast Du schon eine NCK-Reset ausgeführt, bzw. die Maschine einmal durchgestartet, nachdem der Zyklus angelegt wurde? Der Hintergrund hierbei ist, die Schnittstelle (die Übergabeparameter) zu Deinem neuen Zyklus wird wohl erst mit dem Hochlauf der Steuerung angelegt, vorher sind diese der NC nicht bekannt.
War das schon der Fall, könnte eine Extern Deklaration in Deinem Hauptprogramm weiter helfen, also so:
EXTERN TASTBOWE(Real,Real,Int)
diese musst Du bei den Definitionen mit anlegen. Das Programm würde ich dann mit einem "PCall" aufrufen, also in etwas so:
PCALL /_N_CUS_DIR/TASTBOWE(Para1,Para2,Para3)

Hoffe das hilft.
   
Beitrag 05.05.2021, 05:17 Uhr
OGefr_Asbach
OGefr_Asbach
Level 1 = Community-Lehrling
*
Gruppe: Mitglied
Mitglied seit: 03.05.2021
Beiträge: 2
QUOTE (CaptainFu @ 03.05.2021, 10:40 Uhr) *
Hi,
zwei Sachen könnten da vielleicht weiter helfen.

Erstens, hast Du schon eine NCK-Reset ausgeführt, bzw. die Maschine einmal durchgestartet, nachdem der Zyklus angelegt wurde? Der Hintergrund hierbei ist, die Schnittstelle (die Übergabeparameter) zu Deinem neuen Zyklus wird wohl erst mit dem Hochlauf der Steuerung angelegt, vorher sind diese der NC nicht bekannt.
War das schon der Fall, könnte eine Extern Deklaration in Deinem Hauptprogramm weiter helfen, also so:
EXTERN TASTBOWE(Real,Real,Int)
diese musst Du bei den Definitionen mit anlegen. Das Programm würde ich dann mit einem "PCall" aufrufen, also in etwas so:
PCALL /_N_CUS_DIR/TASTBOWE(Para1,Para2,Para3)

Hoffe das hilft.


Moin.

Jup Neustart der Maschine hab ich gemacht. Hat nichts gebracht.
Mit Extern deklaration im Hauptprogramm funktioniert es. Fehlt diese funktioniert es nicht mehr.

Des Weiteren nimmt die Steuerung den ersten Satz im Zyklus nicht an "%_N_TASTBOWE_SPF" da steigt er mit Syntax Error aus.

Der Plan ist das Programm wie einen normalen Zyklus mit einer Parameterübergabe aufzurufen. Alles andere macht kein Sinn.

Grüße Daniel.

Der Beitrag wurde von OGefr_Asbach bearbeitet: 05.05.2021, 05:17 Uhr
   
Beitrag 05.05.2021, 07:58 Uhr
CaptainFu
CaptainFu
Level 1 = Community-Lehrling
*
Gruppe: Mitglied
Mitglied seit: 09.09.2019
Beiträge: 49
QUOTE (OGefr_Asbach @ 05.05.2021, 07:17 Uhr) *
Moin.

Jup Neustart der Maschine hab ich gemacht. Hat nichts gebracht.
Mit Extern deklaration im Hauptprogramm funktioniert es. Fehlt diese funktioniert es nicht mehr.

Des Weiteren nimmt die Steuerung den ersten Satz im Zyklus nicht an "%_N_TASTBOWE_SPF" da steigt er mit Syntax Error aus.

Der Plan ist das Programm wie einen normalen Zyklus mit einer Parameterübergabe aufzurufen. Alles andere macht kein Sinn.

Grüße Daniel.


Ok, alles klar.

%_N_TASTBOWE_SPF
;$PATH=/_N_CUS_DIR

Diese erste Zeile bzw. die ersten beiden Zeilen, stehen die so wirklich in Deinem Zyklus?
Sie haben in dem Programm an sich nichts zu suchen, sie entstehen erst wenn man ein Archiv erstellt. Das ist dann für die Steuerung die Information wenn ein Archiv eingelesen wird, wo ein Programm zu liegen hat. Wie kommen die beiden Zeilen denn in das Programm? Das kann man an der Maschine löschen oder auskommentieren, sie entstehen neu wenn man wieder ein Archiv ertstellt. D.h. die erste Zeile sollte die PROC Zeile sein. Nach der Änderung, wird es nach einem NCK Reset, wahrscheinlich auch ohne Extern Deklaration funktionieren.
   
1 Besucher lesen dieses Thema (Gäste: 1)
0 Mitglieder: