586.076 aktive Mitglieder*
3.768 Besucher online*
Kostenfrei registrieren
Anmelden Registrieren
FANUC Forum

Programm mit Zeitabfrage

Beitrag 28.06.2010, 18:13 Uhr
Biestli82
Biestli82
Level 1 = Community-Lehrling
*
Gruppe: Mitglied
Mitglied seit: 26.06.2010
Beiträge: 5

Servus Zusammen, bin grad an unserer Star SV-32 Mit Fanuc-Steuerung am Programmieren und komme irgendwie nicht weiter.
Problem ist das wir eine mindest Temparatur von ca 30°C haben müssen die Maschine über Nacht aber Teilweise bis auf 22°C runterkühlt.

Aus diesem Grund wollte ich ein Programm schreiben welches wir Abends starten und das erst ab einer bestimmten Uhrzeit startet und ab einer Bestimmten Uhrzeit nicht mehr.

Soweit ich aus den Unterlagen rausgelesen habe ist die Systemvariable #3012 zum auslesen der Systemzeit die in eine Dezimalzahl umgewandelt wird.
Also 15:38Uhr und 53 sekunden ist dann 153853

Bekomme aber immer einen Fehler das mit der IF Goto Schleife die ich geschrieben habe etwas nicht stimmt.

Mein Programm sieht bis dahin so aus:

#1=043000
#2=053000

M5
M10
M150
M26 (Auschaltung sämltlicher Kühlwasserkreisläufe, Pneumatik Führungszange spannen usw.)
M126
M159
M161

N10

IF [#3012 GE #1] Goto N20

N15 Goto N10

N20

IF [#3012 GE #2] Goto N10 (GE= Größer, Gleich als)

S500 M3
.
.
.

Weiß einer von euch wo der Fehler liegt?
TOP    
Beitrag 28.06.2010, 18:45 Uhr
eduscho
eduscho
Level 2 = Community-Facharbeiter
**
Gruppe: Mitglied
Mitglied seit: 12.09.2004
Beiträge: 125

Hallo,

GOTO muss auf jeden Fall groß geschrieben werden, sonst sieht es eigentlich richtig aus. Ist die Option Custom Makro B vorhanden?
TOP    
Beitrag 28.06.2010, 19:14 Uhr
edm-dsc
edm-dsc
Level 4 = Community-Meister
****
Gruppe: Mitglied
Mitglied seit: 07.09.2009
Beiträge: 462

Hallo, würde vielleicht zwischen den vergleichen ne Verweilzeit von ner Minute eintragen, damit sie sich nicht Überrechnet, um recoursen zu schonen und einem Absturz vor zu beugen.


Auch wenn die Fanuc das so gut meistern kann.

MfG
TOP    
Beitrag 28.06.2010, 20:37 Uhr
Igel80
Igel80
Level 3 = Community-Techniker
***
Gruppe: Mitglied
Mitglied seit: 21.08.2005
Beiträge: 262

Hallo,

richtig wäre:

IF [#3012 GE #1] GOTO20

Das "N" der Satznummer entfällt.


Gruß

Igel80


--------------------
Der Wanderer mit leeren Taschen lacht dem Räuber ins Gesicht.
TOP    
Beitrag 28.06.2010, 21:28 Uhr
Biestli82
Biestli82
Level 1 = Community-Lehrling
*
Gruppe: Mitglied
Mitglied seit: 26.06.2010
Beiträge: 5

Das GOTO ist definitiv groß geschrieben hab es direkt an der Steuerung Programiert. Woran seh ich ob diese funktion aktiviert ist bzw wie kann man sie aktivieren wenn sie es nicht sein sollte?

Ich habe beim Goto beide varianten probiert da es ja auch mit GOTO 20 im Handbuch steht. Aber der Tip mit der Verweilzeit klingt gut werde ich mal mit einbauen so ne minute sollte ja wohl reichen sprich: G4 X60

Der Beitrag wurde von Biestli82 bearbeitet: 28.06.2010, 21:32 Uhr
TOP    
Beitrag 29.06.2010, 18:45 Uhr
edm-dsc
edm-dsc
Level 4 = Community-Meister
****
Gruppe: Mitglied
Mitglied seit: 07.09.2009
Beiträge: 462

Hallo,

welcher Fehler kommt den?

Hast du schon mal geprüft, ob #3012 richtig ist?

Also einfach mal #101=#3012 Programiert, und dann #101 angesehen, ob das hin kommt?
TOP    
Beitrag 29.06.2010, 20:53 Uhr
Biestli82
Biestli82
Level 1 = Community-Lehrling
*
Gruppe: Mitglied
Mitglied seit: 26.06.2010
Beiträge: 5

Naja laut Programmierhandbuch ist es die Systemvariable dafür. kann ich mir die Variable #101 direkt anzeigen lassen?

Heute hab ich es zum starten gebracht ohne das ein Fehler kam allerdings bliebt das Programm auf dem Satz vor dem IF befehl stehen und hat nix mehr gemacht.
Nur die Lampe für Head1 hat geblinkt als Zeichen das das Programm am arbeiten ist.
TOP    
Beitrag 29.06.2010, 21:10 Uhr
Igel80
Igel80
Level 3 = Community-Techniker
***
Gruppe: Mitglied
Mitglied seit: 21.08.2005
Beiträge: 262

QUOTE (Biestli82 @ 29.06.2010, 20:53 Uhr) *
kann ich mir die Variable #101 direkt anzeigen lassen?


Blättere mal im Bild der Nullpunktverschiebungen mit der rechten Pfeil-Taste weiter, bis da was mit Macro steht. Da kannst du dann alle Variablen sehen.

Poste doch mal dein ganzes Programm. Vielleicht kann man da was erkennen, was fehlerhaft wäre.


Gruß

Igel80

Der Beitrag wurde von Igel80 bearbeitet: 29.06.2010, 21:11 Uhr


--------------------
Der Wanderer mit leeren Taschen lacht dem Räuber ins Gesicht.
TOP    
Beitrag 29.06.2010, 21:19 Uhr
Biestli82
Biestli82
Level 1 = Community-Lehrling
*
Gruppe: Mitglied
Mitglied seit: 26.06.2010
Beiträge: 5

das steht schon sogut wie komplett oben das einzige was dann noch kommt sind nen paar verfahrbewegungen mit dem linearschlitten und das die drehzahl stufenweise angehoben wird. wenn ich die IF abfragen rauslasse läuft das Programm ganz lormal durch
TOP    
Beitrag 29.06.2010, 21:25 Uhr
Boern
Boern
Level 7 = Community-Professor
*******
Gruppe: Mitglied
Mitglied seit: 27.11.2004
Beiträge: 2.484

Hallo,

vielleicht springt dein Programm so schnell auf den Satz N10 bzw. N20 das es nur so aussieht als würde sich nichts tun. Schreib doch mal bei deinen N Sätzen eine Verweilzeit mit z.B. 5sec ==> G4 X5

Was passiert dann?

Gruß Boern


--------------------

Das dringendste Problem der Technologie von heute ist nicht mehr die Befriedigung von Grundbedürfnissen und uralten Wünschen der Menschen, sondern die Beseitigung von Übeln und Schäden, welche uns die Technologie von gestern hinterlassen hat.


Dennis Gabor (1900-79), ungar.-brit. Physiker, Entwickler der Holographie, 1971 Nobelpr.
TOP    
Beitrag 01.07.2010, 23:57 Uhr
Werner Haase
Werner Haase
Level 2 = Community-Facharbeiter
**
Gruppe: Mitglied
Mitglied seit: 14.09.2007
Beiträge: 72

N10

IF [#3012 GE #1] Goto N20

N15 Goto N10

N20

IF [#3012 GE #2] Goto N10 (GE= Größer, Gleich als)

S500 M3
.
.
.
.
Hallo Biestli,
Überprüf doch mal genau ob du mit deinen Bedingungen überhaupt aus den Sätzen 10 und 20 rausspringen kannst !!
Wenn die Bedingung in Satz 10 erfüllt ist, springst du in Satz 20, sonst zurück zu 10 ---- soweit so gut
Wenn du die Bedingungen in Satz 20 erfüllt hast, springst du wieder in Satz 10 ... wie soll´s denn da weiter gehen ???
Irgendwann solltest du auch eine Nummer 30 vergeben und auch aufrufen damit es weiter geht oder denke ich da falsch ??
Ich habe mal ein Macro für eine Zeitschaltung eines Bearbeitungszentrums geschrieben, das stelle ich dir morgen rein, ist zwar etwas grösser,
aber die eigentlichen Bestandteile sind auch enthalten -- mit Erklärung !

bis dann

Werner
TOP    
Beitrag 02.07.2010, 17:53 Uhr
edm-dsc
edm-dsc
Level 4 = Community-Meister
****
Gruppe: Mitglied
Mitglied seit: 07.09.2009
Beiträge: 462

Hallo,

ich würde es so Probieren

QUOTE
N10 #101=600000 (SETZEN DER EINSCHALTZEIT)
N20 G04 X10
N30 IF [#3012 LT #101] Goto 10

S500 M3


Ich arbeite ungern mit den Var. unter 100 da die bei einigen Umständen z.b. Reset oder so Zurück gesetzt werden.

Kann sein, das man das als Option bekommen könnte, kenne ne Maschine mit ner 31i Steuerung, da gibt man einfach die Uhrzeit für den Programmstart ein und bestätigt das.

Der Beitrag wurde von edm-dsc bearbeitet: 02.07.2010, 17:55 Uhr
TOP    
Beitrag 03.07.2010, 11:22 Uhr
Armageddon
Armageddon
Level 5 = Community-Ingenieur
*****
Gruppe: Mitglied
Mitglied seit: 09.01.2004
Beiträge: 762

QUOTE (edm-dsc @ 02.07.2010, 18:53 Uhr) *
Hallo,

ich würde es so Probieren



Ich arbeite ungern mit den Var. unter 100 da die bei einigen Umständen z.b. Reset oder so Zurück gesetzt werden.

Kann sein, das man das als Option bekommen könnte, kenne ne Maschine mit ner 31i Steuerung, da gibt man einfach die Uhrzeit für den Programmstart ein und bestätigt das.


Die Variablen unter 100 also die 1 bis 33 sind für so einen Fall aber perfekt. Somit ist ein ungewolltes Überschreiben einer schon verwendeten 100er oder noch schlimmer einer 500er Variable ausgeschlossen! Ist auf jedenfall sicherer als wie wenn man 100er oder 500er aufwärts verwendet. smile.gif Werden die Varibalen 1 bis 33 oder die ab 100 bei Reset zurückgesetzt ist das jeweilige Bit (CLV - CCV) unter Systemparameter 6001 Bit-6 oder Bit-7 auf 0 gesetzt. thumbs-up.gif Stehen die auf "1" wird nichts zurückgesetzt durch Reset. Sondern nur beim Ausschalten.

Der Beitrag wurde von Armageddon bearbeitet: 03.07.2010, 11:24 Uhr
TOP    
Beitrag 03.07.2010, 22:16 Uhr
Werner Haase
Werner Haase
Level 2 = Community-Facharbeiter
**
Gruppe: Mitglied
Mitglied seit: 14.09.2007
Beiträge: 72

Hallo zusammen,
ich hatte ja gesagt, ich stell mal mein Warmlaufmacro hier rein. Ich habe leider die Variablen über 500 benutzt, aber das könnt ihr ja ändern.

N10 IF[#500 EQ 1] GOTO 80 ( #500 = Warmlauf - automatisch gesetzt)
N20 IF[#510 EQ 1] GOTO 170 ( #510 = Warmlauf - manuell gesetzt )
N30 IF[#3011 EQ #508] GOTO 50 (#508 = Datum für Warteschleife Start )
N40 GOTO 210 ( = Programmende )
N50 IF[#3012 GE #509] GOTO 60 (#509 = Uhrzeit für Warteschleife Start )
N55 GOTO 210 ( = Programmende )
N60 IF[#3012 GE #509] THEN #500=1 ( Zeit erreicht, # 500 auf 1 setzen )
N70 GOTO 170 ( Spindel leeren für Wartezeit, um einen Werkzeugklemmer zu vermeiden )
N80 G04 X900 ( Wartezeit, hier z. B.: 15 Minuten )
N90 IF[#3011 EQ #511] GOTO 110 ( #511 = Datum für Warmlaufstart )
N100 GOTO 80 ( Wartezeit - erneute abfrage Datum)
N110 IF[#3012 GE #512] GOTO 130 ( #512 = Uhrzeit für Warmlaufstart )
N120 GOTO 80 ( Wartezeit -- erneute Abfrage " Uhrzeit " )
N130 M98 Pxxxx ( Aufruf des Warmlauf - Programms)
N140 IF[#500 EQ 1] GOTO 130 ( Bedingungsabfrage Warmlauf - automatisch )
N150 IF[#510 EQ 1] GOTO 130 ( Bedingungsabfrage Warmlauf - manuell )
N160 GOTO 200 ( Spindelstop )
N170 T00 ( Werkzeugvorwahl zum Spindel leeren )
N180 T00 M6 ( Spindelwerkzeug ablegen im Magazin )
N190 GOTO 80 ( Rücksprung zur Warteschleife )
N200 M19 ( Spindel Stop )
N210 M99 ( Programm Ende )

Die Programmnummer muß natürlich irgendwo am Programmende eines aktuellen Bearbeitungsprogramms aufgerufen werden ( als Unterprogramm )

Bei uns wurde nach einer Geisterschicht das Warteprogramm mit Spindel leeren eröffnet und dann die Wartezyklen durchlaufen bis der in den # 508 und #509
vorgegebene Zeitpunkt mit Datum und Uhrzeit erreicht war. Danach wurde die Maschine mit dem Programm " O xxxx " mit Spindeldrehzahlen und Verfahrwegen mit Kühlmitteldusche und allem was man sonst noch reinschreiben möchte in Bewegung und Temperatur gehalten. Funktioniert auch über mehrere Tage hinweg, da das Datum mit eingebunden ist. Was euch nicht gefällt, könnt ihr weglassen, oder ändern. Mir hat es lange Zeit gute Dienste geleistet. Viel Spass damit
wünscht euch
Werner
TOP    



1 Besucher lesen dieses Thema (Gäste: 1)
0 Mitglieder: