Siemens
Siemens

Digital Industries, Motion Control, Machine Tool Systems

Drehzahländerung während des verfahrens

Beitrag 10.06.2008, 20:39 Uhr
Dorothea
Dorothea
Level 1 = Community-Lehrling
*
Gruppe: Mitglied
Mitglied seit: 16.06.2007
Beiträge: 33
Hallo CNC ler!

Ist es an der 840 D Steuerung möglich während ich von Punkt A nach Punkt B im Vorschub fahre die Drehzahl hoch und runter zu fahren?

Mein Ansatz wäre die Strecke die ich verfahre in Teilstrecken einzuteilen und nach einer bestimmten Zeit (z.B. 1 sek.) die drehzahl neu zu definieren!

Wer hat etwas ähnliches schon gemacht?

Vielen Dank im vorraus

Dorothea
   
Beitrag 10.06.2008, 20:41 Uhr
Themenstarter
Gruppe:
Mitglied seit: --
Beiträge: 0
Hallo,

der Ansatz ist sehr gut, da innerhalb eines Geradensatze keine Änderung möglich ist.
   
Beitrag 10.06.2008, 22:29 Uhr
CNCFr
CNCFr
Level 7 = Community-Professor
*******
Gruppe: Mitglied
Mitglied seit: 15.09.2002
Beiträge: 1.928
Mit Synchronaktionen ist das gut zu machen. Einfach abhängig vom Weg oder der Zeit das Vorschubpoti beschreiben.
   
Beitrag 11.06.2008, 00:12 Uhr
born_to_mill
born_to_mill
Level 1 = Community-Lehrling
*
Gruppe: Mitglied
Mitglied seit: 24.04.2008
Beiträge: 17
Ich hätte ein fertiges Programm bei dem 4(oder auch mehr) verschiedene Drehzahländerungen über Sychronaktionen immer duchgeschaltet werden, wobei man Beschleunigung und Verweilzeit auf jeder jeweiligen Drehzahl auch noch programmieren kann.
Ich kanns aber leider erst nächsten Diestag posten, hab gerade Urlaub.

Der Beitrag wurde von born_to_mill bearbeitet: 11.06.2008, 00:12 Uhr
   
Beitrag 11.06.2008, 07:55 Uhr
Sit22
Sit22
Level 5 = Community-Ingenieur
*****
Gruppe: Mitglied
Mitglied seit: 21.10.2005
Beiträge: 675
Kann mir das garnicht Vorstellen will soll die Kontur dann aus sehen ? Wenn ständig die Drehzahl geändert wird. Es brauch ja eine gewisse Reaktionzeit der Spindel bis sie die neue Drehzahl anpasst.


--------------------
Mit freundlichen Grüßen

*Lieber zu Kopf als zu Fuß*
   
Beitrag 13.06.2008, 22:53 Uhr
Pitscho
Pitscho
Level 1 = Community-Lehrling
*
Gruppe: Mitglied
Mitglied seit: 13.06.2008
Beiträge: 3
hi, genau das thema dieser diskusion hat meinen chef und mich heute ewig beschäftigt

wir kamen auch auf die synchronfunktionen, jedoch kamen wir mit diesen nicht zurecht. die doku, welche wir hatten, gab einfach zu wenig erläuterungen und beispiele, als das wir dahinter steigen konnten, wie man das macht.


kann vielleicht jemand mal ein einfaches beispiel geben, einfach nur, dass die drehzahl kontinuierlich steigt, währender die spindel von a nach b fährt.

vielen dank
   
Beitrag 14.06.2008, 01:17 Uhr
fabianic
fabianic
Level 1 = Community-Lehrling
*
Gruppe: Mitglied
Mitglied seit: 16.10.2005
Beiträge: 40
Hallo,
könnte mal jemand mehr über Synchronfunktionen erklären, da es mich auch brennend interessieren würde, wie sowas funktioniert und in meinen
Unterlagen nichts zu finden ist.
Ist dies bei einer Fanucsteuerung auch möglich ?

MfG
   
Beitrag 14.06.2008, 08:25 Uhr
Sit22
Sit22
Level 5 = Community-Ingenieur
*****
Gruppe: Mitglied
Mitglied seit: 21.10.2005
Beiträge: 675
In diesem Beispiel wird in den X-Bereichen 16...18, 9...12 und 6...7 mit 1,8% des programiierten Vorschubs gefahren, in den übrigen Bereichen mit 100%.

WHENEVER ($AA_IW[X] < 18) AND ($AA_IW[X] >=16) DO $AC_OVR=0.018
WHENEVER ($AA_IW[X] < 12) AND ($AA_IW[X] >= 9) DO $AC_OVR=0.018
WHENEVER ($AA_IW[X] < 7) AND ($AA_IW[X] >= 6) DO $AC_OVR=0.018

Also zunächst mal zur ersten Variante (das ist in DocOnWeb ebenfalls alles beschrieben):

Das ganze bezeichnet man als Synchronaktionen. In dem Beispielssatz

WHENEVER ($AA_IW[X] < 18) AND ($AA_IW[X] >=16) DO $AC_OVR=0.018

wird abgefragt ob der Istwert der X-Achse zwischen 16 und 18 liegt. Das ist der Teil ($AA_IW[X] < 18) AND ($AA_IW[X] >=16).
Diese Bedingung wird im nächsten auführbaren Satz (z.B. einem Verfahrsatz) ständig (WHENEVER) abgefragt, und wenn sie erfüllt ist, wird die Anweisung hinter dem DO ausgeführt; in unserem Beispiel wird hier der Vorschuboverwrite-Schalter auf 1.8% gesetzt. Wenn die Bedingung nicht mehr erfüllt ist, geht der Vorschub wieder auf 100% (oder auf den am Vorschubschalter tatsächlich eingestellten Wert).
Solche Synchronaktionen kann man aufsammeln, wie in meinem Beispiel oben dargestellt, d.h in dem Beispiel oben werden 3 Synchronaktionen aufgesammelt, die alle gleichzeitig im nachfolgenden Verfahrsatz wirksam werden. Stattdessen hätte man einfach auch die ganzen Bedingungen in eine einzige Abfrage packen können.

Ich hoffe das hilft weiter
mfg Sit22

Der Beitrag wurde von Sit22 bearbeitet: 14.06.2008, 08:26 Uhr


--------------------
Mit freundlichen Grüßen

*Lieber zu Kopf als zu Fuß*
   
Beitrag 14.06.2008, 08:46 Uhr
Pitscho
Pitscho
Level 1 = Community-Lehrling
*
Gruppe: Mitglied
Mitglied seit: 13.06.2008
Beiträge: 3
ok, vielen dank schon mal

ich hab noch ein par allgemeine fragen dazu.

sehe ich folgendes richtig ?
WHEN wird nur einmal vor ausführung des nächsten satzes abgefragt ?
WHENEVER die ganze zeit während des nächsten satzes
EVERY bei jeden satz ? ständig oder nur am anfang ?


nach dem DO kann man ja wie in dem beispiel den Vorschub steuern, wenn ich nun die spindeldrehzahl steuern will, kann ich dort S#### schreiben oder muss ich das wieder mit einer $A.... variable regeln ?
   
Beitrag 14.06.2008, 09:07 Uhr
Pitscho
Pitscho
Level 1 = Community-Lehrling
*
Gruppe: Mitglied
Mitglied seit: 13.06.2008
Beiträge: 3
gibts hier kein EDIT ?

najo dann halt so


hab eben mal nach variablen gesucht, welche etwas mit der drehzahl zu tun haben. die einzige, welche man auch schreiben kann, ist die maximale drehzahl eines werkzeuges, alle anderen kann man nur lesen.
--------------------------

hä, jetzt hab ich den edit knopf, sehr seltsam

Der Beitrag wurde von Pitscho bearbeitet: 14.06.2008, 09:08 Uhr
   
Beitrag 17.06.2008, 16:00 Uhr
born_to_mill
born_to_mill
Level 1 = Community-Lehrling
*
Gruppe: Mitglied
Mitglied seit: 24.04.2008
Beiträge: 17
Hatte heute leider keine Zeit um das Programm zu kopieren daumdown.gif

Aber zu euren Fragen:

@Sit22: Kontur ist kein Problem. Zumindest auf Drehmaschinen. Wir verwenden das Programm um Schwingungen bei schlecht gespannten oder dünnwandigen Werkstücken zu vermeiden.

@Pitscho

Damit die Drehzahl kontinuierlich steigt gibt es mehrere Varianten
z.B. könnte es so funkitionieren:
CODE
G0 X0
DO $R1=$P_S[1];Dem R-Parameter für Sychronaktionen die aktuelle programmierte Spindeldrehzahl zuweisen
DO S=$R1+$AA_IW[X]*2;Spindeldreehzahl berechnet sich aus der programmierten Drehzahl $R1 und der aktuellen postion  im Werkstückkoordinatensystem $AA_IW[X] und einem Korrekturfaktor
G1 X100


In dem Beispiel sollte die Drehzahl jeden mm um 2 U/min steigen.
Es gibt natülich auch noch viele andere Möglichkeiten sowas umzusetzen je nach dem was du genau vor hast.


Es gibt 3 Arten Sychronaktionen zu programmieren

z.B mit
CODE
DO ... oder
EVERY .... DO .....
wird die Synchronaktion nur im nächsten programmierten Verfahrsatz ausgeführt

Wenn du der SA noch eine ID z.B.
CODE
ID=1 DO ... oder
ID=2 EVERY ..... DO .......
gibst bleibt sie das ganze Programm gültig bis du sie mit
CODE
CANCEL(1) bzw. CANCEL(2)
wieder aufhebst

Bei der dritten Variante bleibt die SA in allen Betriebsarten aktiv z.B.
CODE
IDS=1 DO ....


WHEN bedeutet das die Bedingung abgefragt wird bis sie erfüllt ist, dann wird die Aktion genau einmal ausgeführt
WHENEVER bedeutet das die Bedingung kontinuierlich abgefragt wird und die Aktion auch immer wieder ausgeführt wird solange die Bedigung erfüllt ist.
EVERY bedeutet das jedesmal wenn die Bedingung erfüllt ist die Aktion einmal ausgeführt wird

Die Drehzahl kannst du entweder direkt mit DO S=100 oder indirekt mit DO $AC_OVR[S1]=110 ändern


@fabianic Ich habe leider noch nie auf einer Fanuc gearbeitet aber ich werde mich mal schlau machen ob das möglich ist
   
1 Besucher lesen dieses Thema (Gäste: 1)
0 Mitglieder: