Siemens
Digital Industries, Motion Control, Machine Tool Systems
Funktion programmieren, Geht das mit 802d Steuerung?
02.05.2012, 13:47 Uhr
Hallo,
ich möchte zwischen zwei Punkten keine Gerade (=kürzeste Verbindung) haben, sondern den Weg zwischen den beiden Punkten entsprechend einer Funktion abfahren, z.B.
z = z0+ 0,1 * ( x^2 / x0^2 )
Geht das mit einer Siemens 802d Steuerung?
Und wenn ja, wie (CNC Code?)?
Vielen Dank für alle hilfreichen Antworten!
ich möchte zwischen zwei Punkten keine Gerade (=kürzeste Verbindung) haben, sondern den Weg zwischen den beiden Punkten entsprechend einer Funktion abfahren, z.B.
z = z0+ 0,1 * ( x^2 / x0^2 )
Geht das mit einer Siemens 802d Steuerung?
Und wenn ja, wie (CNC Code?)?
Vielen Dank für alle hilfreichen Antworten!
02.05.2012, 14:42 Uhr
Guest_guest_*
Themenstarter
Gast
Du kannst die Achswerte eines Punktes mit Funktionen berechnen lassen.
Mit G1 G2 oder G3 kannst du diesen Punkt auch anfahren. Aber eine Funktions-Kurve in einem Satz, das geht nicht.
Mit G1 G2 oder G3 kannst du diesen Punkt auch anfahren. Aber eine Funktions-Kurve in einem Satz, das geht nicht.
04.05.2012, 06:57 Uhr
Danke guest!
Wenn ich dich richtig verstehe meinst du dass man den nächsten anzufahrenden Punkt berechnen und anfahren kann.
Dann könnte man mit einer Schleife ja prinzipiell eine Funktion programmieren.
Allerdings weiß ich auch nicht wie eine Schleife funktioniert...
Könntest du ein kurzes Code Beispiel machen (mit oder ohne Schleife) wie das funktioniert, was du gemeint hast...?
Wenn ich dich richtig verstehe meinst du dass man den nächsten anzufahrenden Punkt berechnen und anfahren kann.
Dann könnte man mit einer Schleife ja prinzipiell eine Funktion programmieren.
Allerdings weiß ich auch nicht wie eine Schleife funktioniert...
Könntest du ein kurzes Code Beispiel machen (mit oder ohne Schleife) wie das funktioniert, was du gemeint hast...?
04.05.2012, 09:35 Uhr
Guest_guest_*
Themenstarter
Gast
Wie und womit man eine Schleife konstruiert, ist wohl Geschmacksache.
Ich persönlich nehme gerne die IF-Abfrage.
Dazu benötigt man mehr oder weniger Variablen. Die einfachsten sind die R-Parameter:
G0 X0 Y0 Z1 G64
....
R0=0 ;Zähler
R1=20 ;Startpunkt X
R2=50 ;Startpunkt Y
R3=0 ;Startpunkt Z
G1 X=R1 Y=R2 Z=R3 F500
ANFANG: ;Sprungmarke
R0=R0+1
R1= R1*SIN(R0)
R2= R2*COS(R0)
R3= R3-0.1
G1 X=R1 Y=R2 Z=R3 ;Verfahrbewegung
IF R0<60 GOTOB ANFANG
G0 Z50
....
Ich persönlich nehme gerne die IF-Abfrage.
Dazu benötigt man mehr oder weniger Variablen. Die einfachsten sind die R-Parameter:
G0 X0 Y0 Z1 G64
....
R0=0 ;Zähler
R1=20 ;Startpunkt X
R2=50 ;Startpunkt Y
R3=0 ;Startpunkt Z
G1 X=R1 Y=R2 Z=R3 F500
ANFANG: ;Sprungmarke
R0=R0+1
R1= R1*SIN(R0)
R2= R2*COS(R0)
R3= R3-0.1
G1 X=R1 Y=R2 Z=R3 ;Verfahrbewegung
IF R0<60 GOTOB ANFANG
G0 Z50
....
06.05.2012, 07:46 Uhr
06.05.2012, 11:29 Uhr
Guest_guest_*
Themenstarter
Gast
Das stimmt so nicht ganz. Polynome, so wie usr3 sie braucht, kann man mit POLY prgrammieren (G-Code in der ersten G-Code-Gruppe).
Wie das geht, steht in der Programmieranleitung.
Wie das geht, steht in der Programmieranleitung.
Dann gib doch mal ein Beispiel.
Ich hab da nix von Funktionskurven gelesen, die mit einem Satz programmiert werden können.
06.05.2012, 11:56 Uhr
z.B.
X0 Y0
POLY X10 Y=PO(20, 10)
Dabei gilt: 20 == Endpunkt in Y, 10 = Koeffizient des quadratischen Anteils der Y Komponente , der Koeffizient des Linearanteils ergibt sich aus diesen beiden Angaben
Die X-Achse interpoliert hier linear.
Das sollte folgende Polynom ergeben (im Intervall x=0 .... x=10):
Y = X + 0.1* X * X
Ich konnte das jezt nicht verifizieren (kann ich evtl. morgen tun), hoffe aber tortzdem, dass es stimmt.
X0 Y0
POLY X10 Y=PO(20, 10)
Dabei gilt: 20 == Endpunkt in Y, 10 = Koeffizient des quadratischen Anteils der Y Komponente , der Koeffizient des Linearanteils ergibt sich aus diesen beiden Angaben
Die X-Achse interpoliert hier linear.
Das sollte folgende Polynom ergeben (im Intervall x=0 .... x=10):
Y = X + 0.1* X * X
Ich konnte das jezt nicht verifizieren (kann ich evtl. morgen tun), hoffe aber tortzdem, dass es stimmt.
06.05.2012, 17:09 Uhr
Guest_guest_*
Themenstarter
Gast
@CNCler
Ich habe gerade noch mal in den Handbüchern zur 802Dsl gesucht, denn um die geht es ja hier.
POLY habe ich da leider nicht gefunden.
Bei der 810D/840D gibts das. Nützt nur wenig, wenn man die 802Dsl hat.
Ich habe gerade noch mal in den Handbüchern zur 802Dsl gesucht, denn um die geht es ja hier.
POLY habe ich da leider nicht gefunden.
Bei der 810D/840D gibts das. Nützt nur wenig, wenn man die 802Dsl hat.
06.05.2012, 18:20 Uhr
nixalsverdruss
Level 7 = Community-Professor
Gruppe: Mitglied
Mitglied seit: 16.11.2003
Beiträge: 1.511
Mitglied seit: 16.11.2003
Beiträge: 1.511
@CNCler
Ich habe gerade noch mal in den Handbüchern zur 802Dsl gesucht, denn um die geht es ja hier.
POLY habe ich da leider nicht gefunden.
Bei der 810D/840D gibts das. Nützt nur wenig, wenn man die 802Dsl hat.
Ich habe gerade noch mal in den Handbüchern zur 802Dsl gesucht, denn um die geht es ja hier.
POLY habe ich da leider nicht gefunden.
Bei der 810D/840D gibts das. Nützt nur wenig, wenn man die 802Dsl hat.
Diagnose Handbuch 802Dsl
14780 [Kanal %1: ] Satz %2 nicht freigegebene Option wurde verwendet
(Kennung %3)
Parameter: %1 = Kanalnummer
%2 = Satznummer, Label
%3 = Feinkennung
Erläuterung: Im Satz wird eine nicht freigegebene Option verwendet
Kennung Kurzbeschreibung
1 Option LaserCtrl
2 Option ClearCtrl
3 Option FeedAdapt
4 Option AaTOff
5 Option Tang
6 Option LeadCtab
7 Option ELG
8 Option Trafo5
9 Option Traoem
10 Option Transmit
11 Option Tracon
12 Option Tracyl
13 Option Traang
14 Option Oscill
15 Option SynSpi
16 Option Repos
17 Option Spline
18 Option Involute
19 Option Poly
20 Option Compress
23 Option Masl
24 Option ExtLang o. ExtLanguage nicht aktiviert
25 Option TechCycle
26 Option Liftfast
27 Option ProgAccel
33 Option AllAsupSynact
34 Option CmdAxSpind
35 Option Mea2
36 Option ProgAnaOut
37 Option OptAaTOff
2 Besucher lesen dieses Thema (Gäste: 2)
0 Mitglieder: