Siemens
Digital Industries, Motion Control, Machine Tool Systems
8844
Follower:innenunterprogramm, unterprogramm erstellen in shop turn e45
28.08.2009, 16:15 Uhr
hallo,
haben eine shop turn e45 und muß mich auf der maschine einarbeiten.Das drehen ist für mich noch ziemlich neu.
muß eine rohr 150 mm lang,70 im durchmesser außen u.60 i.durchm.innen, 15 stück a´8,6mm abstechen.diese scheiben haben eine kontur außen u.eine kontur innen mit fase und radien.
habe das programm schon geschrieben,und es funktioniert.
das problem ist ich habe das programm 15xhintereinander geschrieben,also eine endlos lange wurst,und der speicher ist voll.
möchte gerne das programm nur einmal schreiben u.15xwiederholen lassen.bzw.als unterprogramm 15x aufrufen.
komme einfach nicht zurecht diesem teil.
unter diverses/unterprogramm bzw.wiederholen sollte es gehen.
nur wie?
kann mir jemand exakt sagen die schritte wie es funktioniert?
dank im voraus
haben eine shop turn e45 und muß mich auf der maschine einarbeiten.Das drehen ist für mich noch ziemlich neu.
muß eine rohr 150 mm lang,70 im durchmesser außen u.60 i.durchm.innen, 15 stück a´8,6mm abstechen.diese scheiben haben eine kontur außen u.eine kontur innen mit fase und radien.
habe das programm schon geschrieben,und es funktioniert.
das problem ist ich habe das programm 15xhintereinander geschrieben,also eine endlos lange wurst,und der speicher ist voll.
möchte gerne das programm nur einmal schreiben u.15xwiederholen lassen.bzw.als unterprogramm 15x aufrufen.
komme einfach nicht zurecht diesem teil.
unter diverses/unterprogramm bzw.wiederholen sollte es gehen.
nur wie?
kann mir jemand exakt sagen die schritte wie es funktioniert?
dank im voraus
28.08.2009, 16:38 Uhr
Na, anfahren mit Nullpunktverschiebung. Abstechen mit Unterprogramm. Dann neu anfahren mit neuer Nullpunktverschiebung. Gleiches Unterprogramm aufrufen. Fertig. Die Nullpunktverschiebungen müssen halt nach jedem Abstechen neu berechnet und geschrieben werden. Den Betrag kennst du ja. Dann kannst noch ne Abfrage reinmachen. Wenn die Nullpunktverschiebung grösser als X ist, dann ist fertig mit Sprung auf M30. Ende.
--------------------
Gruß,
Drehpapst
Willen braucht man. Und Zigaretten.
Wer Visionen hat, sollte zum Arzt gehen.
Helmut Schmidt
Drehpapst
Willen braucht man. Und Zigaretten.
Wer Visionen hat, sollte zum Arzt gehen.
Helmut Schmidt
28.08.2009, 17:03 Uhr
danke für die schnelle antwort.
verstehe aber nur bahnhof.bin ein anfänger.
ich habe ja nur nullpunkte G54,G55,G56,G57,G58 soviel ich weiß.ich würde ja 15 nullpkt.brauchen laut deinem komentar.
wahrscheinlich verstehe ich etwas nicht ganz.
habe es probiert mit softkey diverses/unterprogramm.
auch mit diesen marken,start ende.Es kommt dann die meldung der pfad stimmt nicht.
ich habe das unterprogramm in dem selben verzeichniss wie das hauptprogramm.
bitte schritt für schritt welche tasten muß ich drücken.
sorry I`m a beginner
l.g.senor
verstehe aber nur bahnhof.bin ein anfänger.
ich habe ja nur nullpunkte G54,G55,G56,G57,G58 soviel ich weiß.ich würde ja 15 nullpkt.brauchen laut deinem komentar.
wahrscheinlich verstehe ich etwas nicht ganz.
habe es probiert mit softkey diverses/unterprogramm.
auch mit diesen marken,start ende.Es kommt dann die meldung der pfad stimmt nicht.
ich habe das unterprogramm in dem selben verzeichniss wie das hauptprogramm.
bitte schritt für schritt welche tasten muß ich drücken.
sorry I`m a beginner
l.g.senor
28.08.2009, 17:10 Uhr
Na, mit Tasten drücken alleine wird das wohl nicht gehen. Es reicht im Prinzip eine NPV. Und diese beschreibst du immer wieder neu. Du könntest es auch mit einer additiven NPV machen. ATRANS ist dann der entsprechende Befehl...
Du musst schon das Programm editieren und von Hand ein paar Sätze einfügen werden müssen.
Wie sieht den dein Prg bis jetzt aus? Kannst das mal hier reinstellen?
Der Beitrag wurde von Drehpapst bearbeitet: 28.08.2009, 17:13 Uhr
Du musst schon das Programm editieren und von Hand ein paar Sätze einfügen werden müssen.
Wie sieht den dein Prg bis jetzt aus? Kannst das mal hier reinstellen?
Der Beitrag wurde von Drehpapst bearbeitet: 28.08.2009, 17:13 Uhr
--------------------
Gruß,
Drehpapst
Willen braucht man. Und Zigaretten.
Wer Visionen hat, sollte zum Arzt gehen.
Helmut Schmidt
Drehpapst
Willen braucht man. Und Zigaretten.
Wer Visionen hat, sollte zum Arzt gehen.
Helmut Schmidt
28.08.2009, 17:20 Uhr
Hallo senor
Wenn dein Spindeldurchlass es zu lässt, dann kannst du auch mit Werkstückgreifer arbeiten.
Dann brauchst du nur ein Programm.
Wenn dein Spindeldurchlass es zu lässt, dann kannst du auch mit Werkstückgreifer arbeiten.
Dann brauchst du nur ein Programm.
--------------------
Eine Schraube ohne Gewinde ist ein Nagel
Grüsse aus dem Harz - InTex
Grüsse aus dem Harz - InTex
28.08.2009, 18:01 Uhr
@Senor,
stell doch mal deine Programm, so weit du sie hast, hier rein. Dann können wir dir besser helfen.
Weitere Infos zu Siemens findest du auch hier:
https://support.automation.siemens.com/WW/l...amp;treeLang=de
Dort findest du so ziemlich alle Anleitungen für die Siemens. Was hast du denn für eine Steuerung? 840D oder was?
Wie du ein Programm auslesen kannst von der Steuerung weisst du?
stell doch mal deine Programm, so weit du sie hast, hier rein. Dann können wir dir besser helfen.
Weitere Infos zu Siemens findest du auch hier:
https://support.automation.siemens.com/WW/l...amp;treeLang=de
Dort findest du so ziemlich alle Anleitungen für die Siemens. Was hast du denn für eine Steuerung? 840D oder was?
Wie du ein Programm auslesen kannst von der Steuerung weisst du?
--------------------
Gruß,
Drehpapst
Willen braucht man. Und Zigaretten.
Wer Visionen hat, sollte zum Arzt gehen.
Helmut Schmidt
Drehpapst
Willen braucht man. Und Zigaretten.
Wer Visionen hat, sollte zum Arzt gehen.
Helmut Schmidt
29.08.2009, 14:08 Uhr
ja,es ist eine 840d emco turn e45.
das mit dem programm reinstellen geht nicht so leicht,bin nur angestellter in der Fa. und kann mich nicht so rumspielen u.experimentieren,stehe unter druck teile zu produzieren und kenn mich mit der maschine leider noch nicht so gut aus.Das Programm selber ist nicht das Problem,es ist fix und fertig,nur schaffe ich es nicht damit
15Stücke von diesen Ringen von dem Rohr abzustechen ohne das programm 15x zu hintereinander zu schreiben.
Es geht doch über den Diverses Botum/Unterprogrammedann kommt ein Fenster-Pfad angeben welchen Pfad?wie geht es dann weiter?
danke
bis dann
das mit dem programm reinstellen geht nicht so leicht,bin nur angestellter in der Fa. und kann mich nicht so rumspielen u.experimentieren,stehe unter druck teile zu produzieren und kenn mich mit der maschine leider noch nicht so gut aus.Das Programm selber ist nicht das Problem,es ist fix und fertig,nur schaffe ich es nicht damit
15Stücke von diesen Ringen von dem Rohr abzustechen ohne das programm 15x zu hintereinander zu schreiben.
Es geht doch über den Diverses Botum/Unterprogrammedann kommt ein Fenster-Pfad angeben welchen Pfad?wie geht es dann weiter?
danke
bis dann
29.08.2009, 14:33 Uhr
Hauptprogramm:
R1=0
T1 M6 ;Werkzeugaufruf
D1
:ANFANG
IF R1>=14 GOTOF ENDE ;Hier wird jeder Durchlauf erfasst und gewertet. 14 deshalb, weil der erste Durchlauf mit Wert "0" erfolgt
N10 G0 G54 X100 Z0 ;Anfahren zur Startposition stechen
----------------------------------------------------------------------------------
Abstechen Unterprogrammaufruf+wieder freifahren so dass das Anfahren in N10 möglich ist
----------------------------------------------------------------------------------
R1=R1+1 ;Hier wird der Durchlaufzähler hochgezählt in jedem Durchlauf. Wenn R1 besetzt dann nimm einen anderen.
ATRANS Z-50 (Hier der Wert für die additive Verschiebung von einem Teil zum nächsten. Hier angenommen 50mm nach Z-minus)
STOPRE ; Satzvorlaufsperre. Nicht unbedingt nötig.
GOTOB ANFANG ;Rücksprung zum Label :ANFANG
:ENDE ;Sprung von der IF Abfrage wenn Wert für R1>=14
R1=0 ;Rücksetzen des Parameters
ATRANS ;Rücksetzen der additiven Verschiebung auf "0"
M30
So könnte eine einfache Lösung für deine Frage sein. Du musst halt die Sätze von hand einfügen. Ich weiss nicht ob die Shopturn Oberfläche solche Funktionen beinhaltet. Die DIN Befehle funktionieren jedenfalls.
Alles hinter einem ";" dient zur Info => Kommentar. Nicht nötig zum abarbeiten.#
P.S.
Hier ein link für die Bedien- und Programmieranleitung für Shopturn:
https://support.automation.siemens.com/WW/l...amp;x=0&y=0
Der Beitrag wurde von Drehpapst bearbeitet: 29.08.2009, 14:40 Uhr
R1=0
T1 M6 ;Werkzeugaufruf
D1
:ANFANG
IF R1>=14 GOTOF ENDE ;Hier wird jeder Durchlauf erfasst und gewertet. 14 deshalb, weil der erste Durchlauf mit Wert "0" erfolgt
N10 G0 G54 X100 Z0 ;Anfahren zur Startposition stechen
----------------------------------------------------------------------------------
Abstechen Unterprogrammaufruf+wieder freifahren so dass das Anfahren in N10 möglich ist
----------------------------------------------------------------------------------
R1=R1+1 ;Hier wird der Durchlaufzähler hochgezählt in jedem Durchlauf. Wenn R1 besetzt dann nimm einen anderen.
ATRANS Z-50 (Hier der Wert für die additive Verschiebung von einem Teil zum nächsten. Hier angenommen 50mm nach Z-minus)
STOPRE ; Satzvorlaufsperre. Nicht unbedingt nötig.
GOTOB ANFANG ;Rücksprung zum Label :ANFANG
:ENDE ;Sprung von der IF Abfrage wenn Wert für R1>=14
R1=0 ;Rücksetzen des Parameters
ATRANS ;Rücksetzen der additiven Verschiebung auf "0"
M30
So könnte eine einfache Lösung für deine Frage sein. Du musst halt die Sätze von hand einfügen. Ich weiss nicht ob die Shopturn Oberfläche solche Funktionen beinhaltet. Die DIN Befehle funktionieren jedenfalls.
Alles hinter einem ";" dient zur Info => Kommentar. Nicht nötig zum abarbeiten.#
P.S.
Hier ein link für die Bedien- und Programmieranleitung für Shopturn:
https://support.automation.siemens.com/WW/l...amp;x=0&y=0
Der Beitrag wurde von Drehpapst bearbeitet: 29.08.2009, 14:40 Uhr
--------------------
Gruß,
Drehpapst
Willen braucht man. Und Zigaretten.
Wer Visionen hat, sollte zum Arzt gehen.
Helmut Schmidt
Drehpapst
Willen braucht man. Und Zigaretten.
Wer Visionen hat, sollte zum Arzt gehen.
Helmut Schmidt
29.08.2009, 14:47 Uhr
Wieso machst du dir denn so nen Stress??? Ich würde dass Programm für 1. Teil schreiben mit Abstich! Und nach jedem fertig abgestochenen Teil den Nullpunkt in Z unter "Offsetz" -> "Nullpunktverschiebungen" neu eingeben!!! Ich würde sagen dass ist bei 15 Teilen kein problem!!
Oder hab ich da jetz was falsch verstanden???
Oder hab ich da jetz was falsch verstanden???
--------------------
Gruß
Markus
Markus
29.08.2009, 14:48 Uhr
Na ja, für den einen ist es Stress 15x den Nullpunkt neu einzugeben, für den anderen ist es Stress die paar Zeilen einzufügen....
Für den dritten ist beides Stress...
Für den dritten ist beides Stress...
--------------------
Gruß,
Drehpapst
Willen braucht man. Und Zigaretten.
Wer Visionen hat, sollte zum Arzt gehen.
Helmut Schmidt
Drehpapst
Willen braucht man. Und Zigaretten.
Wer Visionen hat, sollte zum Arzt gehen.
Helmut Schmidt
29.08.2009, 14:57 Uhr
@markus777
@Drehpapst
Er kommt ins schleudern, weil so seine Angabe "ich habe ja nur nullpunkte G54,G55,G56,G57,G58 soviel ich weiß"
Also auf gut deutsch " Ich kann nur 5mal meinen Nullpunkt verschieben"
und daran hält er fest.
@Drehpapst
Er kommt ins schleudern, weil so seine Angabe "ich habe ja nur nullpunkte G54,G55,G56,G57,G58 soviel ich weiß"
Also auf gut deutsch " Ich kann nur 5mal meinen Nullpunkt verschieben"
und daran hält er fest.
--------------------
Eine Schraube ohne Gewinde ist ein Nagel
Grüsse aus dem Harz - InTex
Grüsse aus dem Harz - InTex
29.08.2009, 15:08 Uhr
Deshalb hab ich ihm die links für die Anleitungen mitgegeben. Aber zu den G54, G55, geht übrigens bis G599 (Einstellungen via MD`s) gibt es noch andere, die auf dem Gxxx aufsetzen. Wie TRANS, ATRANS.
Er könnte auch die akuelle Verschiebung aus G54 z.B. auslesen, verrechnen, und wieder neu beschreiben ($P_UIFR). Aber das wäre wieder etwas komplizierter, daher mein Vorschlag mit ATRANS und R-Parameter. Sonst könnte er es noch mit einer selbst definierten Variable machen, was das ganze aber wieder etwas verkompliziert.
So gehts jedenfalls. Wie er es nun macht, ob er 15x die NPV neu eingibt, mit ATRANS oder TRANS oder ganz anders, ist egal. Das Ergebnis sollte stimmen.
Er könnte sich natürlich für solche Zwecke auch eine eigene Eingabemaske erstellen, dann kann er Knöpfe drücken und in der Maske die Werte für die Verschiebung und die Anzahl der Abstiche eingeben. Das wäre aber wieder etwas komplizierter....
Er könnte auch die akuelle Verschiebung aus G54 z.B. auslesen, verrechnen, und wieder neu beschreiben ($P_UIFR). Aber das wäre wieder etwas komplizierter, daher mein Vorschlag mit ATRANS und R-Parameter. Sonst könnte er es noch mit einer selbst definierten Variable machen, was das ganze aber wieder etwas verkompliziert.
So gehts jedenfalls. Wie er es nun macht, ob er 15x die NPV neu eingibt, mit ATRANS oder TRANS oder ganz anders, ist egal. Das Ergebnis sollte stimmen.
Er könnte sich natürlich für solche Zwecke auch eine eigene Eingabemaske erstellen, dann kann er Knöpfe drücken und in der Maske die Werte für die Verschiebung und die Anzahl der Abstiche eingeben. Das wäre aber wieder etwas komplizierter....
--------------------
Gruß,
Drehpapst
Willen braucht man. Und Zigaretten.
Wer Visionen hat, sollte zum Arzt gehen.
Helmut Schmidt
Drehpapst
Willen braucht man. Und Zigaretten.
Wer Visionen hat, sollte zum Arzt gehen.
Helmut Schmidt
29.08.2009, 15:22 Uhr
Deshalb hab ich ihm die links für die Anleitungen mitgegeben. Aber zu den G54, G55, geht übrigens bis G599 (Einstellungen via MD`s) gibt es noch andere, die auf dem Gxxx aufsetzen. Wie TRANS, ATRANS.
Er könnte auch die akuelle Verschiebung aus G54 z.B. auslesen, verrechnen, und wieder neu beschreiben ($P_UIFR). Aber das wäre wieder etwas komplizierter, daher mein Vorschlag mit ATRANS und R-Parameter. Sonst könnte er es noch mit einer selbst definierten Variable machen, was das ganze aber wieder etwas verkompliziert.
So gehts jedenfalls. Wie er es nun macht, ob er 15x die NPV neu eingibt, mit ATRANS oder TRANS oder ganz anders, ist egal. Das Ergebnis sollte stimmen.
Er könnte sich natürlich für solche Zwecke auch eine eigene Eingabemaske erstellen, dann kann er Knöpfe drücken und in der Maske die Werte für die Verschiebung und die Anzahl der Abstiche eingeben. Das wäre aber wieder etwas komplizierter....
Er könnte auch die akuelle Verschiebung aus G54 z.B. auslesen, verrechnen, und wieder neu beschreiben ($P_UIFR). Aber das wäre wieder etwas komplizierter, daher mein Vorschlag mit ATRANS und R-Parameter. Sonst könnte er es noch mit einer selbst definierten Variable machen, was das ganze aber wieder etwas verkompliziert.
So gehts jedenfalls. Wie er es nun macht, ob er 15x die NPV neu eingibt, mit ATRANS oder TRANS oder ganz anders, ist egal. Das Ergebnis sollte stimmen.
Er könnte sich natürlich für solche Zwecke auch eine eigene Eingabemaske erstellen, dann kann er Knöpfe drücken und in der Maske die Werte für die Verschiebung und die Anzahl der Abstiche eingeben. Das wäre aber wieder etwas komplizierter....
@Drehpapst
Wenn er unbedingt an seine 5 NPV`s festhalten will, dann soll er 3 Hauptprogramme schreiben mit jeweils 5 NPV - die nacheinander aufrufen lassen und fertig. Es gibt mehre Möglichkeiten die dahin führen sollen.
--------------------
Eine Schraube ohne Gewinde ist ein Nagel
Grüsse aus dem Harz - InTex
Grüsse aus dem Harz - InTex
29.08.2009, 15:35 Uhr
Wie ers macht muss er selbst entscheiden. Funktionieren solls halt, meiner Meinung nach. Und die einfachste, am leichtesten verständliche Lösung, habe ich ihm mitgeteilt. Mehr geht nicht.
--------------------
Gruß,
Drehpapst
Willen braucht man. Und Zigaretten.
Wer Visionen hat, sollte zum Arzt gehen.
Helmut Schmidt
Drehpapst
Willen braucht man. Und Zigaretten.
Wer Visionen hat, sollte zum Arzt gehen.
Helmut Schmidt
29.08.2009, 15:36 Uhr
ich denke nicht dass er an seinen 5 NPVs festhalten will!!! Er war halt als neuling auf der suche nach einer geeigneten Lösung für sein problem!!! Die Lösung von Drehpapst find ich ganz interessant da ich noch nie mit R.Parametern gearbeitet habe!! Werd ich mir auf jeden Fall merken für die Zukunft!! Wie schon erwähnt: Viele Wege führen nach Rom!
--------------------
Gruß
Markus
Markus
29.08.2009, 15:54 Uhr
Wenn er G59 benutzt (programmierbare Nullpunktverschiebung) und nicht die einstellbaren wie G54 , G55 u.s.w. , dann kann er seine 15 Teile abstechen.
%_N_1_0_MPF
;$PATH=/_N_WKS_DIR/_N_54005000_WPD
N5 L100
N10 GXZ73
N15 GY73
N20 SETMS(4)
N25 G92=4500
N30 G59 X=XMW_1 Z=ZMW_1
N35 START_:
N40 WAITM (1,1,2 )
N45 WAITM (10,1,2)
N50 L21
N55 G59 X=XMW_1 Z=ZMW_2
N60 L21
N65 G59 X=XMW_1 Z=ZMW_3
N70 L21
N75 G59 X=XMW_1 Z=ZMW_4
N80 L21
N85 G59 X=XMW_1 Z=ZMW_5
N90 L21
N95 WAITM(20,1,2)
N100 I_M392
N105 IF I_START GOTOB START_
N110 M30
%_N_1_0_MPF
;$PATH=/_N_WKS_DIR/_N_54005000_WPD
N5 L100
N10 GXZ73
N15 GY73
N20 SETMS(4)
N25 G92=4500
N30 G59 X=XMW_1 Z=ZMW_1
N35 START_:
N40 WAITM (1,1,2 )
N45 WAITM (10,1,2)
N50 L21
N55 G59 X=XMW_1 Z=ZMW_2
N60 L21
N65 G59 X=XMW_1 Z=ZMW_3
N70 L21
N75 G59 X=XMW_1 Z=ZMW_4
N80 L21
N85 G59 X=XMW_1 Z=ZMW_5
N90 L21
N95 WAITM(20,1,2)
N100 I_M392
N105 IF I_START GOTOB START_
N110 M30
--------------------
Eine Schraube ohne Gewinde ist ein Nagel
Grüsse aus dem Harz - InTex
Grüsse aus dem Harz - InTex
29.08.2009, 16:01 Uhr
Will jetzt keine Panik verbreiten, aber mit R-Parametern muss man darauf achten dass sie nicht bereits verwendet werden von einem anderen Prozess. Normalerweise ja nicht, Siemens benutzt jedenfalls schon lange keine R-Parameter mehr. Früher schon. Es könnte aber sein, dass ein R-Parameter von einer anderen Anwendung oder vom Anwender bereits genutzt wird. Darauf sollte man achten. Auch wenn es normalerweise keine Rolle spielt, da jeder vernünftige Mensch bevor er einen R-Parameter benutzt, er diesen erst mit dem Wert belegt von dem er ausgeht dass genau dieser Wert drin steht bevor er ihn benutzt. Ich persönlich arbeite niemals mit R-Parametern. Warum? Weil ich früher damit mal schlechte Erfahrungen gemacht habe und kein Anwender in dem Sinne bin. Ich benutze ausschliesslich selbst definierte Variablen. (DEF REAL ZAEHLER z.B.) Selbst definierte Variablen, Programmvariablen, die nur innerhalb des Programmes gültig sind, muss man aber in der allerersten Zeile des Programmes definieren. Nicht in der 2. oder 3. ........... Und nach der Definition DEF REAL ZAEHLER hat die Variable noch gar keinen Inhalt, nicht mal "0". Deshalb so:
DEF REAL ZAEHLER
ZAEHLER=0
Programmanfang
......................
;Kommentare dürfen auch vor einer DEF Anweisung stehen! Müssen aber nicht.......
oder
DEF REAL ZAEHLER=0
Wenn nur ganze, also integerer Zahlen als Inhalt für die definierte Variable in Frage kommen, dann muss man keine REAL (reelle Zahlen) definieren, sondern es reicht eine INT (integere, natürliche ganze Zahlen) zu definieren. Einfache Mathematik. Hintergrund ist, dass eine INT weniger Speicherplatz braucht als eine REAL. Wie man sieht ist das etwas komplexer als einfach einen R-Parameter zu benutzen. Aber im Prinzip ist es dasselbe. Auch ein R-Parameter ist letztlich nur eine Variable. So, was ist dann der R-Parameter für ein Typ? REAL oder INT? Ganz einfach, es handelt sich bei R-Parameter um Variablen des Typs REAL.....
Es gibt natürlich noch weitere Variablentypen wie BOOL, STRING, ......
Es kann halt in eine Variable die als INT definiert wurde keine Zahl vom Typ REAL gespeichert werden. REAL=reelle Zahl=Brüche, Kommazahlen z.B.3.1416254....INT=integer=-1,-0,+1....
Globale oder Kanalvariablen werden im dafür vorgesehenen GUD definiert. Als Endanwender ist das das UGUD.
DEF CHAN INT ZAEHLER => Kanalvariable, gültig in dem Kanal in dem sie definiert wurde
DEF NCK INT ZAEHLER => Global gültige Variable, über Kanalgrenzen hinweg in allen Kanälen verfügbar
Etc. ......................................
Das CHAN oder NCK ist nur in den GUD`s zu schreiben. Nicht im Programm!
DEF REAL ZAEHLER
ZAEHLER=0
Programmanfang
......................
;Kommentare dürfen auch vor einer DEF Anweisung stehen! Müssen aber nicht.......
oder
DEF REAL ZAEHLER=0
Wenn nur ganze, also integerer Zahlen als Inhalt für die definierte Variable in Frage kommen, dann muss man keine REAL (reelle Zahlen) definieren, sondern es reicht eine INT (integere, natürliche ganze Zahlen) zu definieren. Einfache Mathematik. Hintergrund ist, dass eine INT weniger Speicherplatz braucht als eine REAL. Wie man sieht ist das etwas komplexer als einfach einen R-Parameter zu benutzen. Aber im Prinzip ist es dasselbe. Auch ein R-Parameter ist letztlich nur eine Variable. So, was ist dann der R-Parameter für ein Typ? REAL oder INT? Ganz einfach, es handelt sich bei R-Parameter um Variablen des Typs REAL.....
Es gibt natürlich noch weitere Variablentypen wie BOOL, STRING, ......
Es kann halt in eine Variable die als INT definiert wurde keine Zahl vom Typ REAL gespeichert werden. REAL=reelle Zahl=Brüche, Kommazahlen z.B.3.1416254....INT=integer=-1,-0,+1....
Globale oder Kanalvariablen werden im dafür vorgesehenen GUD definiert. Als Endanwender ist das das UGUD.
DEF CHAN INT ZAEHLER => Kanalvariable, gültig in dem Kanal in dem sie definiert wurde
DEF NCK INT ZAEHLER => Global gültige Variable, über Kanalgrenzen hinweg in allen Kanälen verfügbar
Etc. ......................................
Das CHAN oder NCK ist nur in den GUD`s zu schreiben. Nicht im Programm!
--------------------
Gruß,
Drehpapst
Willen braucht man. Und Zigaretten.
Wer Visionen hat, sollte zum Arzt gehen.
Helmut Schmidt
Drehpapst
Willen braucht man. Und Zigaretten.
Wer Visionen hat, sollte zum Arzt gehen.
Helmut Schmidt
29.08.2009, 16:08 Uhr
Wenn er G59 benutzt (programmierbare Nullpunktverschiebung) und nicht die einstellbaren wie G54 , G55 u.s.w. , dann kann er seine 15 Teile abstechen.
%_N_1_0_MPF
;$PATH=/_N_WKS_DIR/_N_54005000_WPD
N5 L100
N10 GXZ73
N15 GY73
N20 SETMS(4)
N25 G92=4500
N30 G59 X=XMW_1 Z=ZMW_1
N35 START_:
N40 WAITM (1,1,2 )
N45 WAITM (10,1,2)
N50 L21
N55 G59 X=XMW_1 Z=ZMW_2
N60 L21
N65 G59 X=XMW_1 Z=ZMW_3
N70 L21
N75 G59 X=XMW_1 Z=ZMW_4
N80 L21
N85 G59 X=XMW_1 Z=ZMW_5
N90 L21
N95 WAITM(20,1,2)
N100 I_M392
N105 IF I_START GOTOB START_
N110 M30
%_N_1_0_MPF
;$PATH=/_N_WKS_DIR/_N_54005000_WPD
N5 L100
N10 GXZ73
N15 GY73
N20 SETMS(4)
N25 G92=4500
N30 G59 X=XMW_1 Z=ZMW_1
N35 START_:
N40 WAITM (1,1,2 )
N45 WAITM (10,1,2)
N50 L21
N55 G59 X=XMW_1 Z=ZMW_2
N60 L21
N65 G59 X=XMW_1 Z=ZMW_3
N70 L21
N75 G59 X=XMW_1 Z=ZMW_4
N80 L21
N85 G59 X=XMW_1 Z=ZMW_5
N90 L21
N95 WAITM(20,1,2)
N100 I_M392
N105 IF I_START GOTOB START_
N110 M30
Soso, du gehörst also auch zu den Leuten die zu faul sind die "0" zu schreiben
N10 GXZ73
N15 GY73
--------------------
Gruß,
Drehpapst
Willen braucht man. Und Zigaretten.
Wer Visionen hat, sollte zum Arzt gehen.
Helmut Schmidt
Drehpapst
Willen braucht man. Und Zigaretten.
Wer Visionen hat, sollte zum Arzt gehen.
Helmut Schmidt
30.08.2009, 10:28 Uhr
So sollte es auch gehen: (habe mich etwas am Beispiel von Drehpapst bedient)
Shopturn-Programmkopf (Falls Shopturn-Programm)
g54 (Nullpunkt aufrufen)
ANFANG:
...
... (Hier steht Dein Programm für ein Teil)
...
ATRANS z-50 (Hier der Wert für die additive Verschiebung von einem Teil zum nächsten)
ENDE:
repeat ANFANG ENDE p14 (wird 14mal wiederholt)
ATRANS
M30
@ Drehpapst: Gehören nicht die Doppelpunkte hinters Label?
Gruß Uwe
Der Beitrag wurde von uwespm bearbeitet: 30.08.2009, 10:29 Uhr
Shopturn-Programmkopf (Falls Shopturn-Programm)
g54 (Nullpunkt aufrufen)
ANFANG:
...
... (Hier steht Dein Programm für ein Teil)
...
ATRANS z-50 (Hier der Wert für die additive Verschiebung von einem Teil zum nächsten)
ENDE:
repeat ANFANG ENDE p14 (wird 14mal wiederholt)
ATRANS
M30
@ Drehpapst: Gehören nicht die Doppelpunkte hinters Label?
Gruß Uwe
Der Beitrag wurde von uwespm bearbeitet: 30.08.2009, 10:29 Uhr
30.08.2009, 12:26 Uhr
So sollte es auch gehen: (habe mich etwas am Beispiel von Drehpapst bedient)
Shopturn-Programmkopf (Falls Shopturn-Programm)
g54 (Nullpunkt aufrufen)
ANFANG:
...
... (Hier steht Dein Programm für ein Teil)
...
ATRANS z-50 (Hier der Wert für die additive Verschiebung von einem Teil zum nächsten)
ENDE:
repeat ANFANG ENDE p14 (wird 14mal wiederholt)
ATRANS
M30
@ Drehpapst: Gehören nicht die Doppelpunkte hinters Label?
Gruß Uwe
Shopturn-Programmkopf (Falls Shopturn-Programm)
g54 (Nullpunkt aufrufen)
ANFANG:
...
... (Hier steht Dein Programm für ein Teil)
...
ATRANS z-50 (Hier der Wert für die additive Verschiebung von einem Teil zum nächsten)
ENDE:
repeat ANFANG ENDE p14 (wird 14mal wiederholt)
ATRANS
M30
@ Drehpapst: Gehören nicht die Doppelpunkte hinters Label?
Gruß Uwe
Der Eine lässt die Nullen weg, der andere die Doppelpunkte
--------------------
Eine Schraube ohne Gewinde ist ein Nagel
Grüsse aus dem Harz - InTex
Grüsse aus dem Harz - InTex
30.08.2009, 12:37 Uhr
@uwespm
richtig, die gehören hinter das label...
Wie konnte denn das passieren???
Der Beitrag wurde von Drehpapst bearbeitet: 30.08.2009, 12:39 Uhr
richtig, die gehören hinter das label...
Wie konnte denn das passieren???
Der Beitrag wurde von Drehpapst bearbeitet: 30.08.2009, 12:39 Uhr
--------------------
Gruß,
Drehpapst
Willen braucht man. Und Zigaretten.
Wer Visionen hat, sollte zum Arzt gehen.
Helmut Schmidt
Drehpapst
Willen braucht man. Und Zigaretten.
Wer Visionen hat, sollte zum Arzt gehen.
Helmut Schmidt
30.08.2009, 18:45 Uhr
hallo zusammen,
vielen dank für eure bemühungen.
irgendwie wirds schon funktionieren,muß am Montag ja wieder in die Arbeit und werde das eine od. andere ausprobieren.
Ich habe in Shop Turn eine kleine Einschulung gehabt,aber da wahr nie die Rede von G-Befehlen,R-Parametern usw.
Sie haben mir gesagt shop turn ist die neueste Version und man braucht keine G-Befehle usw.mehr.
Es ist eine Art Klarttext Programmierung wie bei der Haidenhein-Steuerung.
Also viel einfacher ohne diese umständlichen Befehle.
Es erscheinen einfach Fenster die man mit den entsprechenden Wert auszufüllen hatt und dann hatt sichs.
danke L.G.senor
vielen dank für eure bemühungen.
irgendwie wirds schon funktionieren,muß am Montag ja wieder in die Arbeit und werde das eine od. andere ausprobieren.
Ich habe in Shop Turn eine kleine Einschulung gehabt,aber da wahr nie die Rede von G-Befehlen,R-Parametern usw.
Sie haben mir gesagt shop turn ist die neueste Version und man braucht keine G-Befehle usw.mehr.
Es ist eine Art Klarttext Programmierung wie bei der Haidenhein-Steuerung.
Also viel einfacher ohne diese umständlichen Befehle.
Es erscheinen einfach Fenster die man mit den entsprechenden Wert auszufüllen hatt und dann hatt sichs.
danke L.G.senor
30.08.2009, 21:04 Uhr
Hallo Senor,
ja man braucht das ganze Geraffel um R-Parameter und G-Codes und Hochsprachen nicht mehr unbedingt; aber es ist gut wenn man sie zumindest in Grundzügen intus hat. Diese "umständlichen" Befehle führen manchmal schneller zum Erfolg als wie sich in den Menüs totzusuchen.
Nochmal Programmbeispiel:
Shopturn-Programmkopf
ANFANG:
... (Hier steht Dein Programm für ein Teil)
ATRANS z-50
ENDE:
repeat ANFANG ENDE p14
ATRANS
Programmende
Also, vier kurze Zeilen einzufügen ist bestimmt schneller erledigt als wie vierzehn mal auf "Kopieren" und "Einfügen" zu tippen und dann noch die Maße anzupassen. Wenn Du dich mal irgendwann etwas tiefer in die Materie einarbeitest, wirst Du feststellen, daß die Maschine mehr kann als wie mit der Shopturn-Oberfläche möglich ist.
Gruß Uwe
ja man braucht das ganze Geraffel um R-Parameter und G-Codes und Hochsprachen nicht mehr unbedingt; aber es ist gut wenn man sie zumindest in Grundzügen intus hat. Diese "umständlichen" Befehle führen manchmal schneller zum Erfolg als wie sich in den Menüs totzusuchen.
Nochmal Programmbeispiel:
Shopturn-Programmkopf
ANFANG:
... (Hier steht Dein Programm für ein Teil)
ATRANS z-50
ENDE:
repeat ANFANG ENDE p14
ATRANS
Programmende
Also, vier kurze Zeilen einzufügen ist bestimmt schneller erledigt als wie vierzehn mal auf "Kopieren" und "Einfügen" zu tippen und dann noch die Maße anzupassen. Wenn Du dich mal irgendwann etwas tiefer in die Materie einarbeitest, wirst Du feststellen, daß die Maschine mehr kann als wie mit der Shopturn-Oberfläche möglich ist.
Gruß Uwe
31.08.2009, 19:48 Uhr
hallo uwespam,
du hast sicher recht,werde einmal so probieren wie du es vorschlägst.
gruß senor
du hast sicher recht,werde einmal so probieren wie du es vorschlägst.
gruß senor
1 Besucher lesen dieses Thema (Gäste: 1)
0 Mitglieder: