Siemens
Siemens

Digital Industries, Motion Control, Machine Tool Systems

Spindelstopp bei Unterprogrammaufruf

Beitrag 12.08.2017, 20:44 Uhr
nonius47
nonius47
Level 1 = Community-Lehrling
*
Gruppe: Mitglied
Mitglied seit: 29.04.2017
Beiträge: 2
Hallo miteinander,

wir produzieren an einer DMC1450V Werkstücke mit 6 Bearbeitungsschritten. In dem Hauptprogramm
lade ich die Werkzeugdaten und Nullpunktverschiebungen und springe dann jeweils in ein Unterprogramm.
In dem Unterprogramm schalte ich die Spindel mit M6 an. Da ich bei allen 6 Bearbeitungen mit einem Schruppfräser
vorschruppe, wird auch 6 mal M6 gelesen was dazu führt, dass sich die Spindel und das Wasser kurz
abschaltet.
Am Programm an sich möchte ich nichts ändern, weil ich durch die Programmstruktur sehr flexibel in der
Teileanzahl bin ohne eine schraubstockreihe umsonst bzw. leer zu fahren.

Wäre toll wenn ich von euch ein paar Anregungen bekomme
Angehängte Datei(en)
Angehängte Datei  UPGM.txt ( 1.08KB ) Anzahl der Downloads: 15
Angehängte Datei  UPGM.txt ( 1.08KB ) Anzahl der Downloads: 8
 
   
Beitrag 12.08.2017, 21:03 Uhr
nonius47
nonius47
Level 1 = Community-Lehrling
*
Gruppe: Mitglied
Mitglied seit: 29.04.2017
Beiträge: 2
Hier ein Unterprogramm das ich für alle 6 Werkstücke aufrufe
Angehängte Datei(en)
Angehängte Datei  UPGM.txt ( 1.08KB ) Anzahl der Downloads: 18
 
   
Beitrag 13.08.2017, 06:38 Uhr
CNCFr
CNCFr
Level 7 = Community-Professor
*******
Gruppe: Mitglied
Mitglied seit: 15.09.2002
Beiträge: 1.922
QUOTE (nonius47 @ 12.08.2017, 20:44 Uhr) *
Am Programm an sich möchte ich nichts ändern

Was hast Du für Vorstellungen, wie Dein Problem gelöst werden könnte, wenn Du nichts ändern willst?
   
Beitrag 13.08.2017, 09:39 Uhr
Guest_guest_*
Themenstarter
Gast


QUOTE (nonius47 @ 12.08.2017, 21:44 Uhr) *
Hallo miteinander,

wir produzieren an einer DMC1450V Werkstücke mit 6 Bearbeitungsschritten. In dem Hauptprogramm
lade ich die Werkzeugdaten und Nullpunktverschiebungen und springe dann jeweils in ein Unterprogramm.
In dem Unterprogramm schalte ich die Spindel mit M6 an. Da ich bei allen 6 Bearbeitungen mit einem Schruppfräser
vorschruppe, wird auch 6 mal M6 gelesen was dazu führt, dass sich die Spindel und das Wasser kurz
abschaltet.
Am Programm an sich möchte ich nichts ändern, weil ich durch die Programmstruktur sehr flexibel in der
Teileanzahl bin ohne eine schraubstockreihe umsonst bzw. leer zu fahren.

Wäre toll wenn ich von euch ein paar Anregungen bekomme


Zunächst mal wird der Werkzeugwechsel mit M6 ausgeführt. Die Spindel wird später mit M3 gestartet.
Je nach dem,wie dieses M6 (L6) programmiert ist, wird strikt die Spindel gestoppt, oder (wenn das programmierte Werkzeug schon in der Spindel geladen ist) der Wechsel ignoriert, ohne die Spindel zu stoppen. Das ist vom Hersteller nach dessen Gusto festgelegt.

Um diesen Spindelstop zu umgehen, kannst du den Werkzeugwechsel im Hauptprogramm programmieren, die Position mit entsprechender NPV anfahren und dann das UP ohne Werkzeugwechsel aufrufen.
Beispiel:
CODE
def int i_npv
def int anz_wks

anz_wks=5;Anzahl der aufgespannten Werkstücke
...
;*** Werkzeugwechsel ***
T="ELB_10" D1; Einlippenbohrer D10
M6
S=100 M3
i_npv=1
Bohren_D10:
i_npv=i_npv+1; nächste NPV
G[8]=i_npv; Nullpunktverschiebung aufrufen (2=G54)
D10_BOHRER; UP zum Bohren
if i_npv<anz_wks+1 gotob Bohren_D10

;*** Werkzeugwechsel ***
T="SSF_10" D1; Schaft-Schlicht-Fräser D10
M6
S=6400 M3

i_npv=1
Fraesen_D10:
i_npv=i_npv+1; nächste NPV
G[8]=i_npv; Nullpunktverschiebung aufrufen (2=G54)
FRAESEN_D10; UP zum Fräsen
if i_npv<anz_wks+1 gotob Fraesen_D10
...

CODE
;UP
def real _sa=2; Sicherheitsabstand
def real l_einf=20; Einführtiefe
def real f_einf=1000; Einführvorschub
def real l_bohr=120; Bohrtiefe
def real f_bohr=0.1; Bohrvorschub
def real f_ausf=5000; Ausfahrvorschub

Bearbeitung:
G0 X... Y... Z=_sa+50
G0 Z=_sa M7 M8
G1 Z=-l_einf F=f_einf G94
G1 Z=-l_bohr F=f_bohr G95
G1 Z=_sa F=f_ausf G94
G0 Z=_sa+50 M9
M17


Der Beitrag wurde von guest bearbeitet: 13.08.2017, 09:43 Uhr
   
Beitrag 13.08.2017, 09:42 Uhr
fräsmurml
fräsmurml
Level 2 = Community-Facharbeiter
**
Gruppe: Mitglied
Mitglied seit: 14.03.2006
Beiträge: 123
QUOTE (nonius47 @ 12.08.2017, 22:03 Uhr) *
Hier ein Unterprogramm das ich für alle 6 Werkstücke aufrufe


Hallo,

1. Ich denke nicht das durch das M6 die Spindel und das Wasser kurz abgeschaltet wird. Ich denke daran ist M5 schuld.

Ich würde abfragen ob das Werkzeug bereits in der Spindel ist, wenn ja dann den Werkzeugwechsel (M6) nicht ausführen. Auch ist in diesem Fall der Spindelstop (M5) der auch das abschalten der Kühlung zu Folge hat nicht nötig.

;**********************************************************************
Bearbeitung_5:
N300 IF $TC_TP2[$P_TOOLNO] <> R181
N301 ; nur ausfuehren wenn Werkzeug noch nicht in Spindel
N302 M5 M9
N303 T=R181
N304 M6
N305 D1
N306 L_39(0.1,0)
N307 M5
N308 ELSE
N309 ; ausfuehren wenn Wekzeug bereits in der Spindel
N310 ENDIF

M11 ;Tischklemmung AUF

;********* D10 EINLIPPENBOHRER Reihe 1 von unten bearbeiten
Bearbeitung_Reihe_1:

muss halt noch getestet werden. Hab gerade keine Möglichkeit dazu.

Alternativ könntest du auch das M5 mal weglassen --> Denke das wenn ein Werkzeugwechsel nötig ist, wird die Spindel vom Werkzeugwechselprogramm selber ausgegeben. Kann sein, das dadurch auch schon die Kühlung und Drehzahl ein bleibt.

MFG

Fräsmurml
   
Beitrag 13.08.2017, 09:54 Uhr
CNCFr
CNCFr
Level 7 = Community-Professor
*******
Gruppe: Mitglied
Mitglied seit: 15.09.2002
Beiträge: 1.922
QUOTE (fräsmurml @ 13.08.2017, 09:42 Uhr) *
Ich würde abfragen ob das Werkzeug bereits in der Spindel ist, wenn ja dann den Werkzeugwechsel (M6) nicht ausführen.

Wenn das Werkzeug für alle Unterprogramme gleich ist, gehört die Werkzeuganwahl ins Hauptprgramm. Dann kann man sich die Abfragerei sparen.
Dem (wie auch Deinem Vorschlag) steht allerdings entgegen, dass nonius47 sein Programm unverändert lassen möchte.

Deshalb nochmals meine Frage an den TE: Wie soll die Maschine etwas anderes tun als bisher, wenn Du Dein Programm unverändert lassen willst?
   
1 Besucher lesen dieses Thema (Gäste: 1)
0 Mitglieder: