Makro Xilog Plus

Dieses Thema im Forum "Profi fragt Profi" wurde erstellt von chrissi300, 11. November 2008.

  1. chrissi300

    chrissi300 ww-kastanie

    Beiträge:
    41
    Ort:
    Wolfenbüttel
    Moin Moin,

    ich bin auf der Suche nah einem Makro für eine Lochplatte. Allerdings nicht mit einer
    Runden Lochung, sondern mit einer Quadartlochung. Also als Paramenter sollten Start x,y, ende x,y der Lochabstand, sowie die größe des Loches angeben werden können. Vielleicht müsste auch nur ein vorhandenes Makro Umgeschrieben werden ???

    Weiß einer Rat ??

    Gruß Chrissi
     
  2. Jono

    Jono ww-esche

    Beiträge:
    406
    Ort:
    Bodensee
    Hallo,

    so ein Makro ist nicht weiter schwierig zu schreiben, allerdings fehlen Dir noch einige Parameter wie etwa Sprungweite von Loch zu loch, welche allerdings auch in Abhängigkeit der Lochgeröße errechnet werden kann. Am besten Du machst mal ne Skizze wie die Platte genau aussehen soll.
    Sollen normale Löcher quadratisch angeordnet gebohrt/gefräst werden (vollflächig oder nur Umriß) oder sind die löcher an sich Quadratisch?
     
  3. chrissi300

    chrissi300 ww-kastanie

    Beiträge:
    41
    Ort:
    Wolfenbüttel
    Moin Jono,

    im Anhang die Datei wie es aussehen sollte. Da ich mit dieser Art von Programmierung noch total unbefleckt bin, und es auch leider keine Dokumentation hierfür gibt, wäre es schön wenn Du mir hier vielleicht ein wenig helfen kannst.

    Parameter für die Abfrage stelle ich mir wie folgt vor.

    Start in x von links
    Start in y von oben
    Bohrtiefe
    Haubenposition
    Vorschub
    Drehzahl
    Werkzeugnummer
    Raster in x
    Raster in y
    Lochgröße in x
    Lochgröße in y
    Ende in x von rechts
    Ende in y von unten

    Wenn diese Vorgaben alle gemacht sind, dann müsste solch eine Lochplatte bei raus kommen. Gut, die Quadartlochung ist in den Ecken mit einem Radius versehen, damit kann man aber Leben, je nachdem welchen Fräser man hier einsetzt.

    In der Hoffnung auf Hilfe..

    Chrissi
     
  4. Jono

    Jono ww-esche

    Beiträge:
    406
    Ort:
    Bodensee
    Sind Raster und Loch immer Quadratisch oder manchmal auch rechteckig?
    wie wird der Sonderfall behandelt, wenn das programmierte Raster nicht zu der programmierten Gesamtgröße passt?
    soll als Bezug die Ecke der ersten und letzten Fräsung genommen werden oder der Mittelpunkt?

    weiß noch nicht, wie ich am WE Zeit habe, aber als variables Unterprogramm kriegen wir das sicherlich hin. ob ich die Ausarbeitung zum Makro zeitlich noch hinkriege kann ich nicht versprechen. Für das Makro sollten auch noch Standardwerte definiert werden, die verwendet werden wenn die entsprechenden Felder leer bleiben.

    Als Einstiegslektüre sieh dir mal die Hilfedatei an 'Erweiterte Programmierung - Makros' und den Anhang B , da geht es allgemein über Systemvariablen und die zur Verfügung stehenden mathematischen Funktionen. Vor allem in zweiterer schlage ich auch noch öfters nach.
     
  5. chrissi300

    chrissi300 ww-kastanie

    Beiträge:
    41
    Ort:
    Wolfenbüttel
    Raster und Loch können auch Quadratisch sein. Wenn das Raster nicht auf die Programmierte größe passt, dann muss das Raster Automatisch angepasst werden können, bzw. der Hinweis Raster passt nicht. Somit habt man dann die Wahl, entweder Raster oder angepasst.
    Als Bezug soll der Mittelpunkt der Ersten und letzen Ecke genommen werden. Als Standardwerte können z.b. Anfang und Ende 50,50, Werkzeug 102, Raster 50,50, Lochgröße 10,10 sein.

    In der Hilfedatei werde ich mal morgen Blättern. Bei uns Kracht es im Moment aus allen Nähten...

    Gruß Chrissi
     
  6. Chris70

    Chris70 ww-kirsche

    Beiträge:
    156
    Anhand deiner Parametervorgaben sind die Anschläge deiner Maschine hinten und links ???

    D.h. die Bohrtiefe wird postiv angegeben ???


    Ich habe das ganze mal als Schleifenprogramierung realisiert.

    Das Loch an sich ist als Unterprogramm vorhanden. Anhand der Außenmaße BX u BY und einem Randparameter ( RAND = 50 ) errechnet man die Abstände in x un y.

    Die Schleifenprogramierung fräst so lange ein Loch neben den anderen bis das Plattenende erreicht ist. Dann fängt eine neue Zeile an usw.

    ( Ist oftmals leichter zu Programmieren als ein MAKRO, zudem kann man das Unterprogramm für das Loch leicht austauschen Rechteck, Kreis, Sechseck usw.)

    Gruß Chris
     
  7. chrissi300

    chrissi300 ww-kastanie

    Beiträge:
    41
    Ort:
    Wolfenbüttel
    Moin Chris,

    ob die Anschläge hinten links, oder vorne links sind ist doch glaube ich egal, oder ?
    Auf jeden Fall links, das ist schon richtig.

    Kannst Du das Schleifenprogramm einstellen ?

    Gruß Chrissi
     
  8. Chris70

    Chris70 ww-kirsche

    Beiträge:
    156
    Ich versuch morgen mal solch ein Schleifenprogramm mal vom CNC-Rechner zu ziehen und hier zu posten. :emoji_slight_smile:

    Wo die Anschläge sind ist nicht ganz unwichtig!. Zumindest bei SCM. Wenn die Anschläge hinten sind ist das ganze Koordinatensystem um die Y-Achse gespiegelt und somit wird aus Z=-20 -> Z=20. Sonst bleibt aber alles gleich.

    Wir hatte schon das Problem mit einem Programm von einer Record 125 ( Anschläge vorne ) das wir auf einer Tech90 ( Anschläge hinten ) laufen lassen wollten. :emoji_frowning2:

    Gruß Chris
     
  9. Jono

    Jono ww-esche

    Beiträge:
    406
    Ort:
    Bodensee
    Hallo,

    den folgenden Text unter den Programmkopf kopiern sollte funktionieren :emoji_slight_smile:
    Die Parameter benutzen Kürzel, die Makrotauglich sind. Allerdings müsste noch der Programmkopf angeglichen werden und für jeden Parameter wo es wichtig ist ein IF Anweisung eingebaut werden wo der Standard hinterlegt wird wenn der Parameter unbelegt bleibt damit daraus auch ein lauffähiges Makro wird.
    Der Parameter pT wird noch nicht verwendet (da vom SCM-eigenen Makro RAU1 nicht akzeptiert daher habe ich das Werkzeug der Einfachheit halber direkt eingetragen. Abhilfe schafft hier nur RAU1 korregieren dass es das laufende Werkzeug verwendet und über XT programmiert oder die Rechteckkontur direkt in die Schleife programmieren.
    PS hab 104 verwendet, da mein 102 20mm Durchmesser hat und daher nicht in Deinen Ausschnitt passt :emoji_grin:

    Bei Fragen gerne nochmal nachfragen :emoji_slight_smile:

    PAR pX =50 "Start X"
    PAR pY =50 "Start Y"
    PAR pZ =10 "Tiefe"
    PAR pI =50 "Ende X v.Rechts"
    PAR pJ =50 "Ende Y von vorn"
    PAR px =50 "Sprungweite"
    PAR py =10 "Ausschnittgröße"
    PAR pT =104 "Werkzeug"
    PAR ps =0 "Raster 0=fest 1=nach X quadratisch vermittelt 2=nach Y quadratisch vermittelt 3=rechteckig vermittelt"
    PAR pE =1 "Haube"
    ;
    ;Lochplatte erstellt H. Wols
    ;
    :emoji_stuck_out_tongue_winking_eye:rogrammierte Sprungwerte übernehmen
    L spx=px
    L spy=px
    ;
    IF ps=1 THEN ;Wenn ps=1 Sprungwerte nochmal vermitteln
    L zwx =RD((DX-pX-pI)/px+0.5) ;Anzahl Zwischenräume gerundet (Dezimalbrüche >0,5 werden aufgerundet)
    L spx =(DX-pX-pI)/zwx
    L spy =spx
    FI
    IF ps=2 THEN ;Wenn ps=2 Sprungwerte nochmal vermitteln
    L zwy =RD((DY-pY-pJ)/px+0.5) ;Anzahl Zwischenräume gerundet (Dezimalbrüche >0,5 werden aufgerundet)
    L spy =(DY-pY-pJ)/zwy
    L spx=spy
    FI
    IF ps=3 THEN ;Wenn ps=3 Sprungwerte nochmal vermitteln
    L zwx =RD((DX-pX-pI)/px+0.5) ;Anzahl Zwischenräume gerundet (Dezimalbrüche >0,5 werden aufgerundet)
    L spx =(DX-pX-pI)/zwx
    L zwy =RD((DY-pY-pJ)/px+0.5) ;Anzahl Zwischenräume gerundet (Dezimalbrüche >0,5 werden aufgerundet)
    L spy =(DY-pY-pJ)/zwy
    FI
    ;
    ;Kontrollwerte abspeichern
    TRACE "Sprungmaß in X ?f" spx
    TRACE "Sprungmaß in Y ?f" spy
    ;
    ;Anfangswerte festlegen
    L ax =pX
    L ay =pY
    ;
    ;Beginn äußere Schleife
    DO
    ;Beginn innere Schleife
    DO
    ;Bearbeitung
    RAU1 X=ax Y=ay Z=pZ E=pE B=py L=py T=104 ;Werkzeug noch fest programmiert, da das SCM-Makro keine laufenden Werkzeuge akzeptiert und pT in einem normalen Programm keinen Sonderstatus hat
    ;
    L ax=ax+spx
    ;
    IF ax>DX-pI EXIT
    OD
    L ax=pX ;Startwert X wieder auf Anfang
    L ay =ay+spy
    IF ay>DY-pJ EXIT
    OD
     
  10. Chris70

    Chris70 ww-kirsche

    Beiträge:
    156
    Hi

    Klasse Makro ! :emoji_slight_smile:

    Besonders gut gefällt mir die Möglichkeit die Rasterung in X bzw Y an die Plattengröße anzupassen. Da kann ich (vorerst :emoji_wink:)mit meiner "Grundlagenprogrammierung nicht mithalten.

    Die Berechnungen der benötigten Maße und die Schleifen an sich programmiere ich auch in dieser Art nur ist die Berechnung bei mir meist in mehrere kleinere Schritte unterteilt und dadurch etwas umständlicher gehalten.

    Wenn ich das richtig sehe könnte man ja auch anstatt der RAU1 ein Unterprogramm einbinden und somit auch ev. Sechsecke oder ähnliches als Loch fräsen lassen.


    Gruß Chris
     
  11. Jono

    Jono ww-esche

    Beiträge:
    406
    Ort:
    Bodensee
    Hallo,

    siehst Du genau richtig. An der Stelle kannst Du einbinden was immer Du willst, Wenn es zum Makro weiterentwickelt wird würde ich aber kein Unterprogramm aufrufen, besser aus diesem Unterprogramm dann auch ein Makro basteln. Ich selber benutze diesen RAU1 gar nicht, da ich da meine eigenen Makros habe, die besser auf meine Bedürfnisse abgestimmt sind.

    Dies ist aber noch kein durchentwickeltes Makro dazu fehlen noch ein paar Kleinigkeiten. Aber auch in normalen Unterprogrammen ist der PAR-Befehl hilfreich, da diese beim Unterprogrammaufruf überschrieben werden können.
     
  12. chrissi300

    chrissi300 ww-kastanie

    Beiträge:
    41
    Ort:
    Wolfenbüttel
    Moin Jono,

    ich habe mal versucht Deine Daten zu einem Makro zu verarbeiten. Vielleicht bin ich noch nicht soweit, das mir das gelingen mag.... Wäre es zu unverschämt, wenn ich Dich bitten würde das Makro zu vervollständigen :emoji_open_mouth::emoji_open_mouth: ??

    Gruß Chrissi
     
  13. Jono

    Jono ww-esche

    Beiträge:
    406
    Ort:
    Bodensee
    Mal sehen, was die nächsten Tage so bringen :emoji_slight_smile:

    Bezüglich Makro - Du weißt schon, dass Du in Xilog die Makroliste aktualisieren musst um das Teil zu benutzen. Panelmac will sogar ausgemacht und neu aufgerufen werden, da hier der Befehl zum Makroliste aktualisieren fehlt. Änderungen im Makro müssen nicht neu aktualisiert werden, mit Ausnahme wenn die Anzahl der Parameter verändert wird.
    Grundsätzlich wrde das Programm als Makro laufen, wenn die Einstellungen im Kopf stimmen. Mehr dazu aber morgen *gähn*
     
  14. chrissi300

    chrissi300 ww-kastanie

    Beiträge:
    41
    Ort:
    Wolfenbüttel
    Moin Jono,

    das die Makroliste Aktualisiert werden muss ist schon soweit klar. Mit der Kopfzeile Hapert es dann schon wieder.

    Wenn Du das schaffen würdest, dann wäre das echt Super...

    Gruß Chrissi

    P.S. Vielleicht finden sich ja auch hier mal ein paar leute mit denen man zusammen einen Makrokurs bei SCM belegen könnte...
     
  15. Jono

    Jono ww-esche

    Beiträge:
    406
    Ort:
    Bodensee
    Hab mich heut Abend nochmal hingesetzt. So sollte das ganze als Makro funktionieren.
    die Kopfzeile kann nur im Freien Editor über die alte kopiert werden. Kopieren oder Einfügen der Kopfzeile direkt ist nicht erlaubt. Ich hoffe, mir ist jetzt nicht noch ein Fehler unterlaufen, aber zumindest die Vorschau sieht vielversprechend aus.


    H DX=0 DY=0 DZ=0 *MM /"7e,XYZIJxyTsE,0,Lochplatte vari"
    PAR pX "Start X '50"
    PAR pY "Start Y '50"
    PAR pZ "Tiefe 'DZ+1"
    PAR pI "Ende X v.Rechts '50"
    PAR pJ "Ende Y von vorn '50"
    PAR px "Sprungweite '50"
    PAR py =10 "Ausschnittgröße '10"
    PAR ps "Raster 0=fest 1=nach X quadratisch vermittelt 2=nach Y quadratisch vermittelt 3=rechteckig vermittelt"
    PAR pE "Haube"
    ;
    ;Lochplatte erstellt H. Wols
    ;
    :emoji_stuck_out_tongue_winking_eye:rüfen der Variablen und schreiben der Standardwerte
    IF NDEF pX THEN
    L pX=50
    FI
    IF NDEF pY THEN
    L pY =50
    FI
    IF NDEF pI THEN
    L pI =50
    FI
    IF NDEF pJ THEN
    L pJ =50
    FI
    IF NDEF pZ THEN
    L pZ =DZ+1
    FI
    IF NDEF px THEN
    L px =50
    FI
    IF NDEF py THEN
    L py =10
    FI
    IF NDEF ps THEN
    L ps =0
    FI
    ;
    :emoji_stuck_out_tongue_winking_eye:rogrammierte Sprungwerte übernehmen
    L spx=px
    L spy=px
    ;
    IF ps=1 THEN ;Wenn ps=1 Sprungwerte nochmal vermitteln
    L zwx =RD((DX-pX-pI)/px+0.5) ;Anzahl Zwischenräume gerundet (Dezimalbrüche >0,5 werden aufgerundet)
    L spx =(DX-pX-pI)/zwx
    L spy =spx
    FI
    IF ps=2 THEN ;Wenn ps=2 Sprungwerte nochmal vermitteln
    L zwy =RD((DY-pY-pJ)/px+0.5) ;Anzahl Zwischenräume gerundet (Dezimalbrüche >0,5 werden aufgerundet)
    L spy =(DY-pY-pJ)/zwy
    L spx=spy
    FI
    IF ps=3 THEN ;Wenn ps=3 Sprungwerte nochmal vermitteln
    L zwx =RD((DX-pX-pI)/px+0.5) ;Anzahl Zwischenräume gerundet (Dezimalbrüche >0,5 werden aufgerundet)
    L spx =(DX-pX-pI)/zwx
    L zwy =RD((DY-pY-pJ)/px+0.5) ;Anzahl Zwischenräume gerundet (Dezimalbrüche >0,5 werden aufgerundet)
    L spy =(DY-pY-pJ)/zwy
    FI
    ;
    ;Kontrollwerte abspeichern
    TRACE "Sprungmaß in X ?f" spx
    TRACE "Sprungmaß in Y ?f" spy
    ;
    ;Anfangswerte festlegen
    L ax =pX
    L ay =pY
    ;
    ;Beginn äußere Schleife
    DO
    ;Beginn innere Schleife
    DO
    ;Bearbeitung
    RAU1 X=ax Y=ay Z=pZ E=pE B=py L=py T=pT ;im Makro kann pT verwendet werden (Sondervariable)
    ;
    L ax=ax+spx
    ;
    IF ax>DX-pI EXIT
    OD
    L ax=pX ;Startwert X wieder auf Anfang
    L ay =ay+spy
    IF ay>DY-pJ EXIT
    OD
     
  16. chrissi300

    chrissi300 ww-kastanie

    Beiträge:
    41
    Ort:
    Wolfenbüttel
    Moin Moin,


    Super, vielen Dank. Welchen freien Editor verwendest Du ? Habe es mit einem Hex-Editor versucht, allerdings ging das nicht so doll.

    Gruß Chrissi
     
  17. Jono

    Jono ww-esche

    Beiträge:
    406
    Ort:
    Bodensee
    Wenn in Xilog den Texteditor wählst kannst du umschalten zwischen freier Editor STRG-F order geführter Editor STRG-G
    im freien Editor hast Du anstatt der Parameterfelder nur eine Textzeile im Fußbereich, mit der Du die Programmzeilen direkt verändern kannst.
     
  18. chrissi300

    chrissi300 ww-kastanie

    Beiträge:
    41
    Ort:
    Wolfenbüttel
    Moin Jono,

    es gibt doch immer wieder Sachen, die einen "Anwender" immer wieder zum erstaunen bringen.
    Habe das ganze jetzt mall als pgm vorliegen. Als Makro wird es auch erkannt, aller dings ohne Bild. Mit Winxiso sollte man das ding irgendwie einem Bild zuordnen, aber das brauche ich nicht unbedingt.

    Bei der jetzigen Aufstellung steht die 102 als Werkzeugnummer alleine ohne einen Text davor(also Werkzeug), und wenn ich die Werte dann alle eingebe bekomme ich viele viele Ausschnitte die überdimensional groß sind übereinander gelegt. ??

    Schau Dir das doch bitte mal an, habe ich noch etwas falsch gemacht? Im Anhang hier die pgm.

    Gruß Chrissi
     

    Anhänge:

  19. Jono

    Jono ww-esche

    Beiträge:
    406
    Ort:
    Bodensee
    ich gucks mir heute Abend mal an - kann aber spät werden :emoji_slight_smile:
     
  20. Jono

    Jono ww-esche

    Beiträge:
    406
    Ort:
    Bodensee
    Habs jetzt mal schnell auf Arbeit in der Mittagspause angesehen, bei mir stimmt alles. wie sieht es aus, wenn Du keine Parameter ausser dem Werkzeug angibst?
     
  21. chrissi300

    chrissi300 ww-kastanie

    Beiträge:
    41
    Ort:
    Wolfenbüttel
    Moin Jono,

    dann ist es das gleiche. Wie gesagt bei der Abfrage wird im linken Feld bei dem Werkzeug (102) nicht das Werkzeug abgefragt, als das linke Feld ist leer.

    Das Ergebnis habe ich Dir als Bild angehängt.

    Gruß Chrissi
     

    Anhänge:

  22. Jono

    Jono ww-esche

    Beiträge:
    406
    Ort:
    Bodensee
    Komisch, wenn ich Dein Programm zu den Makros pack und die Liste aktualisiere kann ich es ganz normal benutzen und auch das Ergebnis sieht ganz brauchbar aus.
    benutzt Du das Makro rau1 auch so zum programmieren von Ausschnitten? Kann es sein, dass da drin mal was umgeschrieben wurde?
     
  23. chrissi300

    chrissi300 ww-kastanie

    Beiträge:
    41
    Ort:
    Wolfenbüttel
    Moin Jono,

    eigentlich nutze ich für solche Lochplatten das RT(Rechtecktaschen) Makro, aber eigentlich ist es ja egal welches man nimmt. Die Tasche ist aber eigentlich besser, weil man die Löcher ja nicht immer durchfräsen muss. Wenn es dann eine Lochplatte werden soll, gebe ich halt die Tiefe anders ein.

    Mal ein Paar Bilder von der Abfrage im Anhang. Wie gesagt das Werkzeug fragt er nicht, und was mir noch aufgefallen ist, das Makro legt zwei zusätzliche Dateien im Ordner an. LOCHPL2_EBOScrap.opt und eine LOCHPL2_EGRep.grp. Vielleicht funktioniert aber auch etwas mit der Werkzeugabfrage nicht ?

    Was die beiden Dateien zu sagen haben, keine Ahnung. Bei einem Makro was ich direkt von SCM bekommen habe ist das nicht der Fall.

    Ach ja, das Makro Rau1 habe ich nicht verändert, und es ist immer noch alles so wie wir die Maschine bekommen haben.

    ?????? Sehr komisch, wenn bei Dir alles läuft.


    Gruß Chrissi
     

    Anhänge:

  24. Jono

    Jono ww-esche

    Beiträge:
    406
    Ort:
    Bodensee
    Die beiden Dateien sind wahrscheinlich temporäre Dateien, die auch beim öffnen von normalen Programmen erstellt werden. nach dem Schließen des Programmes/Makro sollten diese verschwinden.
    Dann versuchen wir doch RT
    TRACE "Position X=?f Position Y=?f Göße=?f" ax ay py
    RT X=py Y=py Z=pZ E=pE I=ax J=ay T=pT ;im Makro kann pT verwendet werden (Sondervariable)
    statt des RAU1- aufrufes
    der zusätzliche TRACE-Befehl ist nur, um noch eine Weitere Kontrollmöglichkeit zu kriegen wenns wieder nicht läuft.

    Hier mal ein Screenshot von mir, allerdings schon mit RT, aber mit RAU1 sieht es fast identisch aus.
    Bildschirmphoto1.png
     
  25. Jono

    Jono ww-esche

    Beiträge:
    406
    Ort:
    Bodensee
    Hallo,
    wie sieht es aus? Funktioniert das Makro inzwischen?
     
Die Seite wird geladen...
Similar Threads - Makro Xilog Plus
  1. deti
    Antworten:
    7
    Aufrufe:
    4.142
  2. eberstef
    Antworten:
    4
    Aufrufe:
    2.274
  3. toddy
    Antworten:
    8
    Aufrufe:
    3.307
  4. toddy
    Antworten:
    1
    Aufrufe:
    1.232
  5. Florida
    Antworten:
    1
    Aufrufe:
    1.494
  1. Diese Seite verwendet Cookies, um Inhalte zu personalisieren, diese deiner Erfahrung anzupassen und dich nach der Registrierung angemeldet zu halten.
    Wenn du dich weiterhin auf dieser Seite aufhältst, akzeptierst du unseren Einsatz von Cookies.
    Information ausblenden
  1. Diese Seite verwendet Cookies, um Inhalte zu personalisieren, diese deiner Erfahrung anzupassen und dich nach der Registrierung angemeldet zu halten.
    Wenn du dich weiterhin auf dieser Seite aufhältst, akzeptierst du unseren Einsatz von Cookies.
    Information ausblenden