machine botst met werkstuk na start programma

Nederlandse CNC controller op basis van de usb poort of Ethernet.

Moderator: Moderators

Plaats reactie
Gebruikersavatar
andrefc101
Donateur
Berichten: 3725
Lid geworden op: 26 dec 2007 08:39
Locatie: Bergen op Zoom
Contacteer:

Re: machine botst met werkstuk na start programma

Bericht door andrefc101 »

Arie Kabaalstra schreef: 27 feb 2021 19:31 Voor zover ik kan zien doet EdingCNC helemaal niets met "T xx zonder M6..

Over het algemeen geeft een "Standaard Generieke Postprocessor" een hoop onzin uit.. geschikt voor Domme besturingen zoals oude Fanuc's

als je een ATC met Wisselarm hebt, waarbij het oude tool wordt weggezet op de plaats waar ie het nieuwe vandaan gehaald heeft.. dan moet je dat ook opslaan.. voor als je dat tool weer op wilt roepen.
Da's je Pocket-index tabel, dat KAN in EdingCNC, maar dan moet je het zelf schrijven.. een T xx na een M6 Txx regel maakt bij machines die zo'n wisselaar hebben dat ie het volgende tool alvast "voor-zet".. zodat de wissel sneller gaat..
EdingCNC ondersteunt dat (nog)NIET, en als je een dergelijke wisselaar kan bouwen, dan mag ik er gevoeglijk vanuit gaan dat je ook wel in staat mag worden geacht tot het schrijven van de bijbehorende Macro.. 't is niet complex.. maar 't is wel even opletten..ook belangrijk dat je de juiste variabelen pakt voor je Index-tabel.. die zul je zelf moeten schrijven.. en daar heb je wel een Array voor nodig..
Dat doet die domme Fanuc nu weer wel.... dus zo slim is dat Eding nu ook weer niet. En zonder al die mooie en slimme macro's van jou zo het zelfs een nog dommer system zijn...
Gebruikersavatar
P1-Engineering
Donateur
Berichten: 435
Lid geworden op: 27 aug 2019 23:28
Locatie: Haarlem

Re: machine botst met werkstuk na start programma

Bericht door P1-Engineering »

Caesar schreef: 27 feb 2021 12:42 Ik wil het topic niet kapen, maar mijn vraag is denk ik hetzelfde als die van de TS en ik dnek dat het handig is om de informatie in hetzelfde topic te houden.

Ik heb afgelopen week een vaste toolsetter/hoogte meter op de machine gebouwd en op basis van de Sorotec macro worden de Tooloffset weg geschreven naar het tabel in EdingCNC; zie bijvoorbeeld tool 2, 7 & 8:

Afbeelding

Dat automatisch inmeten werkt en klopt. Ik heb daarnaast ook de macro gebruikt om een tool te wisselen (i.p.v. de standaard macro van Eding gebruik ik die van sorotec, met 'optie 1' geselecteerd:

Code: Selecteer alles

0 = Wechsel ignorieren	; n.v.t. ik wil graat gdat de freeskop naar bepaalde X/Y coordinaat komt om makkelijk te kunnen wisselen
1 = Nur WPos Anfahren	; geselecteerd
2= WPos anfahren  + Vermessen 	; ik wil niet na iedere tool wissel de lengte inmeten. Ik gebruik de standaard ATC ISO 30 tool holders dus eenmaal ingemeten en in het tabel staan deze waardes vast.
Ik heb Auto toolchange aangevinkt in Eding en bij aanroep van Txx M06 komt de kop naar ingestelde X/Y en kan ik de tool wisselen (handmatig, carrousel nog niet ingeprogrammeerd). Vervolgens op OK klikken in het Sorotec popup menu en de frees gaat verder.

ECHTER; er gaat iets fout met de G43/offset en ik doe ongetwijfeld iets fout, maar ik kan maar niet uitkomen wat ik fout doe. Heel vaak gaat de frees met G00 het werkstuk in, ondanks dat ik met ingeladen tool (bijvoorbeeld T08) nul. Ik doe iets in de verkeerde volgorde, dubbelop of ik vergeet iets, maar ik kan op basis van dit topic en het andere draadje waar veel input van Arie me helpt, toch niet vindne waarom hij soms de frees recht het werktstuk inram.

Volgorde van werken:

-Stel Tool 08 is geladen in de spindel en EdingCNC weet dat ook machine status (G43 staat dus al aan tijdens nullen werkstuk):

Code: Selecteer alles

G17 G40 G21 G90 G54 G43 G99 G664 G97 G69 G50 T2
-m.b.v. de jogger draai ik de Z naar beneden totdat de frees het materiaal rustig aanraakt. Ik nul de Z op werkstuk coordinaten.
-ik draai de Z omhoog
-ik laad bijvoorbeeld het volgende programma in (paar gaten boren: T02 = center boortje, T80 is 3mm boortje, ook ingemeten met ingeladen offset)

Code: Selecteer alles

%
N0010 G21 G90 G40 G17 G01
N0020 Z80.00 F500
N0030 T02 M06
N0040 T80
N0050 G01 X28. Y15. S8002 M03
N0060 G43 Z20. H02
N0070 G81 X28. Y15. Z-.5 R3. F400.
N0080 Y0.0
N0090 X0.0 Y15.
N0100 Y0.0
N0110 X14. Y110.
N0120 Y10.
N0130 X24. Y-32.476
N0140 X4. Y-32.422
N0150 G80
N0160 T80 M06
N0170 T02
N0180 G00 X28. Y15. S8000 M03
N0190 G43 Z20. H80
N0200 G81 X28. Y15. Z-13.491 R3. F250.
N0210 Y0.0
N0220 X0.0 Y15.
N0230 Y0.0
N0240 X14. Y10.
N0250 Y110.
N0260 X24. Y-32.476
N0270 X4. Y-32.422
N0280 G80
N0290 M02
%
Bij starten programma word ik gevraagd T02 in te laden want T08 is op dit moment ingeladen. Ik laad T02 in, ram op start en vervolgens ramt de machine de centreer boor met G00 volgas het werkstuk in.

Overigens gebeurt dit ook met een programma waarbij ik Z nul met de tool die ook daadwerkelijk als eerste ga gebruiken. Bijvoorbeeld nullen met T08, en vervolgens een programma aanroepen en starten met T08. Zelfs dan ramt hij hem er soms zelfs doorheen.

Soms werkt het wel; d.w.z. als de eerste frees beweging qua hoogte klopt, kloppen alle andere hoogtes ook (van ingeladen tool wissels). Er gaat dus iets fout bij het initiële nullen. Ik denk dat ik op de verkeerde manier/volgorde/modus nul, maar ik kan er niet uit komen hoe ik nul op basis van het gereedschap wat op dat moment in de spindel zit.

Kleine tussen analyse gedaan met toolwissel zonder G-code in te laden en machine-coordinaat vergeleken met werkstuk-coordinaat:

-ik heb T08 ingeladen
-ik nul een fictieve hoogte met T08 (G43 staat aan) in de spindel
-ik roep gereedschapswissel aan en ik laad T07 aan
-ik ga terug naar Z 0 (werkstuk coordinaat), G43 staat nog steeds aan
-frees steekt te laag: onderzijde frees komt niet overeen met fictieve Z = 0.

Wat doe ik fout?

-Moet ik nullen in G49 met bijvoorbeeld T08?
-Dan programma inladen die vervolgens zelf G43 aanroept (zie bovenstaande code)
-ik weet dat ik een G43 Hxx aanroep in de code omdat ik in mijn post processor perse een Hcode moet genereren. Daarom heb ik de H-code overeen laten komen met het Toolnummer.
Caeser, maak je gebruik van toolhouders, opnames?. Dus machine met ATC spindle?.
Standaard is de Sorotec Macro namelijk ingericht op een directe meting, waarbij je dus na elke wissel je gereedschap moet inmeten.
Daarbij is de volgorde: Je plaatst je eerste gereedschap en meet die in. Vervolgens pak je de toolsetter en zit die op je werkstuk. Dan start je de desbtreffende macro en nul je de Z met de net daarvoor ingemeten tool.

Als je toolhouders gebruikt en dus niet elke keer opnieuw inmeet, moet je in de Sorotec macro een wijziging doen, staat ook in de macro bij welk stuk je ; moet weghalen en waar je ; voor moet zetten. Pas dan schrijft de macro de gemeten lengte ook daadwerkelijk naar je tooltable. Helaas staat dit niet goed omschreven in de handleiding. Er komt een nieuwe, Engelse, handleiding met bijbehorende Engelse macro. Ik moet alleen even tijd vinden om alle feedback af te ronden en naar Sorotec toe te sturen.

Zie hieronder hoe het moet staan op de waardes naar de tooltable te schrijven (macro versie 2.1D)

Code: Selecteer alles

G00 g53 z#4506					; Z Sicherheitsh�he anfahren [Maschinenkoordinate]

		;***********Bei Direktvermessung Tabelle auf 0 schreiben
		;#[5400 + #5016] = 0 ;[#5053 - #4509]			;Berechnete Werkzeugl�nge in Tabelle speichern
		;#[5500 + #5016] = 0 ;#5018				;Werkzeugdurchmesser in Tabelle speichern
		;***********Bei Direktvermessung Tabelle auf 0 schreiben Ende

		#5021 = [#5053 - #4509]				; Berechnung Werkzeugl�nge = Tastpunkt  - chuck height
		msg "Werkzeugl�nge = " #5021

		IF [#3501 == 1] 				; Wurde Werkzeug bereits Vermessen? 1=JA
		    #4502 = [#4501]				; Alte Werkzeugl�nge speichern
		    #4501 = [#5021]				; Aktuelle Werkzeugl�nge speichern = Ermittelte Werkzeugl�nge
		    #3502 = [#4501 - #4502]			; Werkzeugl�ngenunterschied ausrechnen

		    G92 Z[#5003 - #3502]		 	; Z-Nullpunkt verschieben

		    ;Werkzeuglaenge und Werkzeugdurchmesser in Tabelle speichern
		    #[5400 + #5016] = [#5053 - #4509]			;Berechnete Werkzeugl�nge in Tabelle speichern
		    #[5500 + #5016] = #5018				;Werkzeugdurchmesser in Tabelle speichern
		    msg "Gemessene Werkzeuglaenge="#[5400 + #5016]" gespeichert in Werkzeugnr. "#5016
		ELSE
		    #4501 = [#5021]				; Aktuelle Werkzeugl�nge eintragen
Gebruikersavatar
andrefc101
Donateur
Berichten: 3725
Lid geworden op: 26 dec 2007 08:39
Locatie: Bergen op Zoom
Contacteer:

Re: machine botst met werkstuk na start programma

Bericht door andrefc101 »

Klein verzoek: het forum wordt er niet leesbaarder op wanneer men ellenlange lappen tekst reply-ed. Misschien iets meer werk voor de reageerder, maar de lezer en de forum beheerder (die ook betaald voor al deze data!) zullen u dankbaar zijn!
Caesar
Berichten: 382
Lid geworden op: 30 sep 2014 13:26

Re: machine botst met werkstuk na start programma

Bericht door Caesar »

Vele reacties, sommige nog wat vuriger dan andere ;), maar ik probeer even onder een rijtje te zetten wat ik zelf al uitgesloten heb en om antwoord te geven op jullie opmerkingen vragen, want naar mijn mening is G43, i.i.g. onder sommige geburikers (o.a. ikzelf) op dit forum een heethangerijzer. Ik vind de documentatie van EdingCNC ook een beetje te kort schieten, maar dat kan ook komen om datik nog niet écht bekend ben met G43.

Ik zet hieronder uiteen op volgorde van reageren:

Arie's input:

k ken al die verschillende macro's niet.. en ik snap ook niet dat ze bij Sorotec zonodig het wiel opnieuw uit moeten vinden.. er IS een werkende Toolmeet macro.. hoe ik dat weet?.. 'k heb em zelf geschreven..kan ie verbeterd worden?..mogelijk..als ik er tijd voor heb.. ga ik dat wel eens bekijken.. tot die tijd, gebruik ik gewoon de macro uit EdingCNC, want die werkt gewoon..
inmeet macro werkt zoals geschreven. Verschillende toollengtes worden weggeschreven naar tabel in EdingCNC, zie bijgevoegd screenshot. Zelf met digitale schuifmaat nagemeten, komt overeen met wat ik meet. Daar zit dus géén probleem.
k ken al die verschillende macro's niet.. en ik snap ook niet dat ze bij Sorotec zonodig het wiel opnieuw uit moeten vinden.. er IS een werkende Toolmeet macro.. hoe ik dat weet?.. 'k heb em zelf geschreven..kan ie verbeterd worden?..mogelijk..als ik er tijd voor heb.. ga ik dat wel eens bekijken.. tot die tijd, gebruik ik gewoon de macro uit EdingCNC, want die werkt gewoon..
ik werk zelf met een redelijk geavanceerd CAD/CAM programma en heeft Edingcnc niet als standaard Postprocessor in zijn library staan. Ik heb mijn eigen postprocessor geschreven/gewijzigd op basis van ik meen een Heidenhahn of Fanuc (destijds eentje gekozen waar Edingcnc het meeste op leek, op basis van reacties van o.a. dit forum).

Voor alle G-codes die ik al gebruikt in het verleden heb ik gaandeweg de syntax kunnen aanpassen dat EdingCNC ook doet wat ik ervan verwacht.

G43 is iets nieuws wat ik gebruik, ik heb al e.e.a. moeten omprogrammeren. Zoals ik schreef heb ik al de standaard output van G43 H00 moeten om zetten naar G43Hxx (waar XX staat voor toolnummer). Het liefste haal ik Hxx ook weg, maar dan krijg ik compilatie/post processor fouten, vandaar dat ik er Hxx van gemaakt heb.

om te beginnen N10.. G21 is Default.. dus niet nodig, G90 is Default, dus niet nodig, G40 is Default, dus niet nodig, G17 is default, dus niet nodig, G01?.. die zet je pas aan het begin van de eerste regel waarin je daadwerkelijk gaat verplaatsen.. dus ook niet nodig.. Kortom.. heel de eerste regel kan eruit.. zoiets zet je er pas in als je bijvoorbeeld G18 of G19 gaat gebruiken.. , G21?.. wie werkt er ooit in andere Units dan Millimeters?.. G90?.. wie werkt er ooit incrementeel?.. Hou toch op..
Ik geloof je meteen, dit zijn nog overblijfselen van de standaard syntax/woord-opbouw/programma start van de Heidenhahn postprocessor van mijn CAD. Het werkte altijd dus geen tijd ingestopt eventuele 'overdadige' data die weg kan weg te schrijven. Goed moment om dit te herschrijven dat dit niet opnieuw gegenereerd wordt, hoewel het volgens mij ook geen kwaad kan.
Dan.. Waarom ga je eerst naar Z80?.. om gereedschap te wisselen?.. dat zet je in je gereedschapswisselMacro, niet in je programma
N40.. WTF is T80?.. of heb je een ATC meteen wisselarm?.. Ook een leuke.. dat gaat met de standaard code voor een wisselaar niet werken.. je weet niet waar je tools blijven.. daar moet een Index array bij..
ja ik heb zoals ik schreef een ISO 30 atc en voordat ik G43 en mijn ATC ga gebruiken, gebruikt ik Z80 om ruimte creëren indien ik toch tool moest wisselen (met de hand). Eensch dat dit in de Sub Change_tool kan/heurt, maar dit is nog een relic van de tijd dat ik net begon met frezen op de BF20 en ik al blij was dat er een circel gefreesd werd.

Ik heb geen ATC met wisselarm, maar wel een carrousel die ik van plan ben te gaan gebruiken.
T02 M06 T80 heeft in verleden altijd gewerkt. Dat T80 'teveel' is wil ik best geloven. Again, een overblijfsel van de oorspronkelijke post processor die ik omgebouwd heb.
Voorpositioneren dan.. met G01?.. Waarom?.. G01 is om Contouren te frezen.. de rest doe je met G00
N60 G43?.. Hou toch op.. die hoort by default al actief te zijn. Toolindex hoef je niet in te vullen tenzij je een andere offset wilt gebruiken (alleen nuttig als je lengte overmaat wilt gebruiken voor vóórfrezen, of als je een "lollipop" tool hebt, waarmee je door je werkstuk aan de onderkant kan bewerken..
zie hierboven. Als het er echt uit moet dan schrijf ik dat eruit, maar dan moet ik er nog een paar middagen aan gaan zitten, want ik krijg allemaal 'fitties' tijdens compilen als ik de hele 'Hxx'/'H00' eruit gooi. Zal vast wel op te lossen zijn, maar als het niet hoeft, dan niet. Maar wat moet, dat moet.

Normaal gesproken is dat G00, maar ik heb daar met de hand een G01 van gemaakt omdat ik nu 3 maal heb gehad dat de machine met G00 (in mijn geval met 15m/min) het bed in gaat omdat ik dus problemen heb met het juist nullen en/of Z-offset inladen! Met G01 heb ik de kans om de feed omlaag te draaien om te trouble shooten. Ik weet wel een klein beetje waar ik mee bezig ben ;) (langzaam maar zeker :shock: ).
dan in N160.. T80 M6?.. heb je zoveel tools dan?..
ik heb voor mezelf een library gemaakt, waarbij T80-T90 meest gebruikte boortjes zijn. T1 t/mT20 frezen en voorbewerkers (zoals center drills) die ik standaard gebruik. M.a.w. die gaan de toolholders niet uit en komen dus vast in de library te staan zodat ik ze ten alle tijden kan aanroepen en gebruiken zonder in te meten. Dat ik voor T80 kies is denk ik mijn probleem. Ik heb voor mezelf een systeem/library ontwikkeld die ik persoonlijk fijn vind werken. T80 wil niet zeggen dat ik 80 ISO 30 toolholders heb nee.
nee.. dat doet ie niet.. want er staat geen enkele G00 in je code..
klopt, maar lees voor de G01 even de G00. Ik had er even erbij moeten vermelden dat dat normaal gesproken G00 is, zoals hierboven ook beschreven waarom (fault finding met controleerbare snelheid op basis van feedrate aanpassen met jogwheel). Jouw ontgaat ook niets ;-)
Als de Code van de Toolsetter gewoon klopt, het ding gewoon goed gekalibreerd is, de lengte ook klopt met wat je meet als je er een rolmaatje bij houdt, en je een gekalibreerd gereedschap gebruikt om je werk te nullen.. (en G43 ook gewoon actief is daar waar het nodig is, maar dat zit in de code) dan KAN het gewoon niet fout gaan..

Ik ben de eerste gebruiker van EdingCNC die een Toolsetter had, en ook een 3D taster werkend had.. ik ontdekte in 2008 dat er een Bug in G43 zat.. die heeft Bert er meteen uitgehaald.. ik ben daar voor naar Eindhoven gereden, en met een nieuwe Release EdingCNC op USB Stick weer naar huis gereden om het te testen.. pas daarna heeft Bert em op de website gezet..

Ik heb onder normale omstandigheden nog NOOIT een Toolsetter gemold, nog nooit een tool in mijn werk gecrashed, nog nooit een taster gecrashed..
(wel een taster stylus gebroken bij het testen van een speciale 3D Scanroutine (jullie hebben em allemaal wel eens gezien met die Oranje sportwagen op mijn Beagle)

Kortom.. gebruik de code die werkt, kalibreer alles goed, volg het RTFM-Protocol
Ik doe iets fout, dat is helder, dat begrijp ik, maar ik schreef ook het volgende:

Kleine tussen analyse gedaan met toolwissel zonder G-code in te laden en machine-coordinaat vergeleken met werkstuk-coordinaat:

-ik heb T08 ingeladen
-ik nul een fictieve hoogte met T08 (G43 staat aan) in de spindel
-ik roep gereedschapswissel aan en ik laad T07 aan
-ik ga terug naar Z 0 (werkstuk coordinaat), G43 staat nog steeds aan
-frees steekt te laag: onderzijde frees komt niet overeen met fictieve Z = 0.
Uit bovenstaande, is dit wat ik zou moeten doen? Mis ik ergens een offset? Ik nul met de onderkant van ingeladen frees (in bovenstaand voorbeeld dus T08) op het materiaal, ik nul Z op werkstuk coordinaat). Mis ik ergens een constante offset ofzo? Ik heb vziw nergens in de macro's vermeld dat ik nul met een toolsetter of een ander stukje gereedschap van bepaalde dikte. Ik gebruik alleen de vaste toolsetter om gereedschap in te meten, niet om te werkstukken te nullen en ik heb dit ook niet zodanig vermeld.

Andrefc101:
Wat doet hij H02 in regel 60, die begrijp ik niet. En ik ben ook wel geïnteresseerd in die T80 die een paar keer voor komt, wat is dat?
Ja ik weet dus ook niet zeker waar die 'tweede' Txx goed voor is, ik kan het wel wegschrijven, maar ik dacht dat het misschien belangrijk voor eding is om oude data ergens weg te schrijven. Als dit nergens goed voor is, schrijf ik dit commando wel weg uit EdingCNC. Zoals hierboven beschreven, nog een overblijfsel uit de oorspronkelijke post processor die ik in loop der tijd aangepast heb.

Kjelt:
Dat zou best eens de fout kunnen wezen.
Dat betekent Tool 80 terwijl in zijn verhaal hij het inmeten met Tool 08 doet.
Maar daar zou TS eens even moeten kijken wat daar nu gebeurt, wat foet Eding met die regel ?
Op basis verschillende opmerkingen van jullie m.b.t. de 'tweede' Txx zal ik hem wegschrijven. Kijken hoe dat gaat.
Door Eding worden geinterpreteerd als
T02 // ignore ongeldig zonder M6 vooraf
M6 T80 // toolchange tool 80
In verleden heeft het wel altijd gewerkt; altijd juiste gereedschap ingeladen. Nu werkt dat ook: bij T02 M6 wordt gevraagd om T02 in de spindel te duwen. VOordat ik Sorotec macro gebruikt, drukte ik daarna gewoon weer op start en ging het programma verder. Nu ik Sorotec macro gebruikt komt de spindel naar bepaalde X - Y, ik krijg een popup om te wisselen, ik wissel fysiek de toolholder, en druk op OK. Frees-programma gaat verder en in de Machine status zie ik ook dat T02 ingeladen is (en T80 genegeerd wordt).

Maar goed, ik begrijp dat het meer verwarring dan duidelijk veroorzaakt, ik haal het uit de post processor.

P1-Engineering
Caeser, maak je gebruik van toolhouders, opnames?. Dus machine met ATC spindle?.
Standaard is de Sorotec Macro namelijk ingericht op een directe meting, waarbij je dus na elke wissel je gereedschap moet inmeten.
Daarbij is de volgorde: Je plaatst je eerste gereedschap en meet die in. Vervolgens pak je de toolsetter en zit die op je werkstuk. Dan start je de desbtreffende macro en nul je de Z met de net daarvoor ingemeten tool.
Ja klopt, ik heb een ISO 30 spindel met ATC dus. Ik heb de macro al zodanig ingesteld op optie '1' (zie mijn oorspronkelijke vraag/post) zodat hij wel naar voorgedefinieerd X/Y komt om er makkelijk bij te kunnen en vervolgens komt popup om tool te wisselen, maar NIET gaat inmeten (dat is optie 2 in de macro).

Inmeten doe ik met gebruikers-macro F3. Dat wil ik bewust gescheiden houden omdat het meest gebruikte gereedschap in zijn toolholders blijft zitten. Dus zolang ik daar niet aan zit, hoeven ze niet bij elk programma/toolwissel ingemeten te worden.

Dat gedeelte werkt ook allemaal netjes. Bij tool inmeten worden de waardes ook correct weggeschreven naar EdingCNC tool-tabel (zie screenshot oorspronkelijke post voorbijvoorbeeld T02, T07 & T08).

Ik ga deze ochtend eens stap voor stap kijken wat #5013 doet. De fout zit hem in het nullen zelf, niet in de toolwissel. Zoals ik schreef, als de eerste frees wél de juiste hoogte freest, volgen alle andere ingemeten gereedschappen ook op de juiste hoogte. Ik doe duidelijk iets fout met nullen;in de verkeerde machine coördinaten of tools o.i.d. Ik ga eens verder puzzelen

Bedankt voor al jullie input uiteraard
Gebruikersavatar
hugo stoutjesdijk
Donateur
Berichten: 12045
Lid geworden op: 02 mar 2011 17:04
Locatie: elst (u)
Contacteer:

Re: machine botst met werkstuk na start programma

Bericht door hugo stoutjesdijk »

Caesar schreef: 28 feb 2021 10:12 Normaal gesproken is dat G00, maar ik heb daar met de hand een G01 van gemaakt omdat ik nu 3 maal heb gehad dat de machine met G00 (in mijn geval met 15m/min) het bed in gaat omdat ik dus problemen heb met het juist nullen en/of Z-offset inladen! Met G01 heb ik de kans om de feed omlaag te draaien om te trouble shooten. Ik weet wel een klein beetje waar ik mee bezig ben ;) (langzaam maar zeker ).
Dat is dus precies waarom ik altijd promoot om separaat voor G00 een %knop te hebben. Het komt bij mij net zo vaak voor dat ik even voorzichtig met een ijlgang wil doen dan met een voeding. Voordeel van ijlgang op 0% zetten, wanneer die klaar is met een freesbewerking, blijft de machine staan totdat ik de ijlgang weer verhoog en even mee kan kijken of er geen gekke dingen gebeuren. ( maar daar hebben jullie geen last van, dat is alleen als je alles aan de machine programmeert, als je PP goed is en de macro's doen wat je verwacht :mrgreen: )

Ik heb natuurlijk nul ervaring met Eding, maar wil toch wel een paar opmerkingen plaatsen.

M6 hoort helemaal niets te doen met lengte correctie. Die wordt actief na G43 ( H##), eventueel automatisch na het lezen van het toolnummer.
De M is van oudsher een machine functie (dus een relais wat aan en uit gezet wordt, in de simpelste vorm, maar kan ook een trigger naar een PLC zijn). De M6 activeert dus een gereedschap wissel, in welke vorm dan ook. Bij een M6 vind dus een gereedschap wissel macro plaats en die kan per machine verschillend opgebouwd zijn.
Als je er voor kiest om binnen die macro ook de lengte correctie middels een G43 uit te voeren is dat natuurlijk prima, maar dat is niet 'standaard' binnen CNC systemen. En dat lengte correctie niet zonder M6 kan is helemaal nonsens.

Ik zou die hele lengte meting eerst achterwege laten en een paar testjes doen met verschillende tools en de waarde in de tabel aanpassen, totdat ik precies door heb hoe die lengte correctie nu eigenlijk werkt.
De truc daarbij is natuurlijk, zoveel mogelijk instructie weglaten, en ze stuk voor stuk uittesten.
Dus eerst met alleen T1, en later ook met G43 H##, en dan eventueel zonder T en alleen G43 H##.

En vervolgens gaan kijken wat er precies weggeschreven wordt bij zo'n lengte meting.
Er wordt bij het leren van CNC besturingen veel te veel gehouwehoerd en aannames gedaan, tik gewoon een regel in en kijk wat de effecten zijn. Bedenk of dat klopt met wat je verwacht had, zoek de grenzen op van wat je denkt hoe het zou moeten werken.
Maar ja, dan heb je even niets aan je CAD/CAM systeem. Dat klopt, maar als je het anders wilt, koop een turn key oplosssing en hoop dat het werkt.
Ik ben voor meer techniek op school, maar dan wel vanaf groep 1 basischool.
Gebruikersavatar
serum
Berichten: 5404
Lid geworden op: 08 mar 2008 20:37
Locatie: Zwolle

Re: machine botst met werkstuk na start programma

Bericht door serum »

Ceasar;

Ik had soms ook onvoorspelbare eigenaardigheden met de Z as in eding. Er is een setting (G10L20Zeroing) die out-of-the-box zo ingesteld staat dat eding zijn offsets middels het vooroorlogse, uitgerangeerde, prehistorische in incourante G92 interpreteert.

viewtopic.php?f=39&t=13981

Sinds ik de Sorotec macro gebruik heb ik die onvoorspelbare Z eigenschappen niet meer gehad.

G43 Hx doet niets meer dan een offset van de betreffende tool op de huidige Z offset op je huidige Z0 te zetten. (in g54,55,56 etc)
Laatst gewijzigd door serum op 28 feb 2021 13:40, 1 keer totaal gewijzigd.
Caesar
Berichten: 382
Lid geworden op: 30 sep 2014 13:26

Re: machine botst met werkstuk na start programma

Bericht door Caesar »

serum schreef: 28 feb 2021 11:53 Ceasar;

Ik had soms ook onvoorspelbare eigenaardigheden met de Z as in eding. Er is een setting (G10L20Zeroing) die out-of-the-box zo ingesteld staat dat eding zijn offsets middels het vooroorlogse, uitgerangeerde, prehistorische in incourante G92 interpreteert.

viewtopic.php?f=39&t=13981

Sinds ik de Sorotec macro gebruik heb ik die onvoorspelbare Z eigenschappen niet meer gehad.

G43 Tx doet niets meer dan een offset van de betreffende tool op de huidige Z offset op je huidige Z0 te zetten. (in g54,55,56 etc)
Ik heb dat uitgevinkt staan bij settings, is dat wat het hoort te zijn? Ik lees dadelijk je draadje door.

Update: opgelost, zie volgende post!

UPDATE tekst na cursieve tekst:

net getest, fout zit waarschijnlijk in de Hxx. Ondanks dat ik bij iedere toolwissel een overeenkomstige Hxx aanroep (dus T02 H02 of T08 H08) blijft eding in de eerste ingeladen tool Hxx hangen. M.a.w. rest van programma leest G43 (via #5010) een verkeerde offset in.

Ik snap niet zo goed hoe dát kan, omdat ik steeds een overeenkomstige Hxx aanroep bij iedere toolwissel, maar goed, ik ga nu mijn tijd besteden om de post processor aan te passen en kijken of het dan wel betrouwbaar werkt. Ik sloop meteen de tweede Txx eruit (dus 'oude' T-verwijzing).


Kleine uupdate, ik heb een klein vermoedne waar het probleem zit;

na verse herstart en homen van eding, leest edingCNC bij tool wissel netjes de tooloffset in, tijdens analyse blijkt dat:

#5013: actual G43 Z-offset en #5010 Actual Tool Z offset gelijk zijn als G43 aan staat. Dat is ook logisch en zoals verwacht.

Echter als ik mijn G-code inlaadt, dan merk ik in #5010 wel netjes de bijbehorende offset van ingeladen gereedschap ingelezen wordt, maar deze wordt niet correct ingeladen door #5013. De blijft op de oude staan en veranderd niet meer. Die zal nooit meer veranderen/andere waarden overnemen totdat ik EdingCNC weer opnieuw opgestart heb. M.a.w. ergens zit er een fout/bug in de macro die ik activeer met mijn G-code.

Zelfs als ik nu handmatig een toolwissel vraag (aanroepen change_tool) neemt #5010 de waarde in #5013 niet meer over. Ik moet dus de code induiken waarom hij dit niet doet. Daar kom ik hopelijk vandaag op terug als ik de fout kan vinden.

Ik vermoed inderdaad dat dit door het gebruik van Hxx komt. Daardoor wordt toolwissel wel overgenomen, maar blijft de offset op die van Hxx staan die ingeladen is. Ik ga die eerst eens eruit proberen te programmeren.
Laatst gewijzigd door Caesar op 28 feb 2021 13:37, 1 keer totaal gewijzigd.
Caesar
Berichten: 382
Lid geworden op: 30 sep 2014 13:26

Re: machine botst met werkstuk na start programma

Bericht door Caesar »

Even losse reactie op mijn laatste hierboven:

het is opgelost. Fout zat hem inderdaad in eht aanroepen van de H-code na toolwissel en na opnieuw inladen van G43.

aanroepen van G43 zal in mijn code blijven omdat ik anders in al mijn operatieen in CAD/CAM adjust moet uitzetten en dat is veel werk, plus dat dan telkens G49 wordt aangeroepen en G43 moet natuurlijk aanblijven. Verschil: ik wil dat Eding de G43 offsets bijhoudt en niet mijn CAD/CAM offsets.

Maar ik heb eruit geschreveven dat hij daarbij een H-code erin pompt. M.a.w. nu wordt alleen een G43 code aangemaakt na iedere toolwissel, maar dat zou niets uit moeten maken. Ik heb ook de dubbele T-code eruit geschreven. M.a.w. de oude tool wordt niet nogmaals op de volgende regel gezet :).

Hier een voorbeeldje hoe het eruit ziet (en ja voor de oplettende kijker, er missen wat regels in het midden omdat ik een aantal boorgaten eruit gehaald heb zodat het niet onnodig lang is; dit is voorbeeldje met voorboren en boren op 2 coordinaten (X28,Y15 & X28,Y0).

Code: Selecteer alles

%
%
N0010 G21 G90 G40 G17 G43 G01
N0020 G53 G00 Z198.00
N0030 T02 M06
N0040 G00 X28. Y15. S8002 M03
N0050 G43 Z20.
N0060 G81 X28. Y15. Z-.5 R3. F400.
N0070 Y0.0
N0140 G80
N0150 T80 M06
N0160 G00 X28. Y15. S8000 M03
N0170 G43 Z20.
N0180 G81 X28. Y15. Z-13.491 R3. F250.
N0190 Y0.0
N0260 G80
N0270 M02
%
FYI, paar verbetering doorgevoerd:

N20: Bij start programma gaat machine eerst maximaal omhoog. Reden: als tool al ingeladen is en ik heb na nullen de frees nog op '0' staan en ik hoef geen gereedschapswissel te doen, kan het zijn dat machine volgas op nul hoogte naar start programma gaat. Kan zijn dat hij dan een kikker of klem onderweg tegenkomt, dus eerst helemaal omhoog om vervolgens wel/geen toolwissel te activeren en dan naar startpunt van frezen gaan. Dit was G1 Z80 F500. Nu op basis van machine hoogte op G00 snelheid dus.
N30: Geen oude Toolnummer meer vermeld na T02 M06 (voorheen volgende regel stond T08: overbodig en weggeprogrammeerd)
N50/N170: na ieder toolchange wordt nog steeds tool_adjust (G43) aangeroepen. Dit is moeilijk eruit te halen omdat ik in CAD/CAM al mijn profielen dan moet veranderen. Geen zin in, maar wel dus de Hxx weg-gehaald. Dit is blijkbaar een no-go en heeft mijn probleem opgelost. G43 te vaak aanroepen kan geen kwaad. Onnodig G49 aanroepen wel.

Ik hoop zodoende ook anderen een beetje geholpen te hebben!

Overigens, en dat vind ik wel onduidelijk beschreven in de handleiding van Edingcnc; wat is nou écht het verschil tussen:

Code: Selecteer alles

T08 M6
G43
en

Code: Selecteer alles

T08 M6
G43 [b]H08[/b]
in beide gevallen wordt toch d.mv. G43 tool adjust/offset geactiveerd en in beide gevallen de offset van Tool 08 ingeladen? Ik kan dat niet goed uit de documentatie halen? Die H08, welke kolom/tabel kan ik die terug vinden?
Laatst gewijzigd door Caesar op 28 feb 2021 13:41, 1 keer totaal gewijzigd.
Gebruikersavatar
serum
Berichten: 5404
Lid geworden op: 08 mar 2008 20:37
Locatie: Zwolle

Re: machine botst met werkstuk na start programma

Bericht door serum »

H08 is the Height van T8
Gebruikersavatar
andrefc101
Donateur
Berichten: 3725
Lid geworden op: 26 dec 2007 08:39
Locatie: Bergen op Zoom
Contacteer:

Re: machine botst met werkstuk na start programma

Bericht door andrefc101 »

Ik meen me te herrinneren uit een ver verleden dat Eding niets net de Hxx doet bij G43. Stond toen ook niets over in de manual. Is dat nog steeds zo, of is dat nu wel zo?
Gebruikersavatar
serum
Berichten: 5404
Lid geworden op: 08 mar 2008 20:37
Locatie: Zwolle

Re: machine botst met werkstuk na start programma

Bericht door serum »

Je kan, als ik de manual bekijk, ALLEEN g43 gebruiken. Dan wordt de offset van de actieve tool gebruikt (lijkt mij prima) Met de H definieer je welke tool uit de tabel je pakt;

3.6.12 Tool Length Offsets - G43, G43 H, G43.1, and G49
A. To use the tool offset of the tool in the spindle use G43.
This assures that always the tool length of the tool in spindle is compensated.
B. To use a tool length offset from the tool table, program G43 H…, where the
H number is the desired index in the tool table. ( H = 1 - 99)
C. To use dynamic tool compensation (not from the tool-table), use G43.1 I.. K..
where I.. gives the tool X offset (turning) and K.. gives the tool Z offset (for
turning and milling)
Caesar
Berichten: 382
Lid geworden op: 30 sep 2014 13:26

Re: machine botst met werkstuk na start programma

Bericht door Caesar »

serum schreef: 28 feb 2021 13:47 Je kan, als ik de manual bekijk, ALLEEN g43 gebruiken. Dan wordt de offset van de actieve tool gebruikt (lijkt mij prima) Met de H definieer je welke tool uit de tabel je pakt;

etc...
ja dat begreep ik ook uit de manual, daarom ook dat ik mijn post processor telkens dezelfde Hxx genereerde overeenkomstig met de ingeladen tool, bijv:

T08 M6
G43 H08

of:

T02 M6
G43H02

maar ondanks dat mijn tabellen gevuld zijn in Eding, blijft de software toch hangen op de oude waardes. Althans bij mij bleef na aanroepen van T02 nadat T08 in de spindel zat:

Code: Selecteer alles

T02 M6
G43 H08
#5010 word waarde van H08, maar #5013 wordt niet de waarde van H08, maar blijft die van T02. M.a.w. de H02 waarde blijft dus in de #5013 om een of andere reden en wordt niet overschreven met H08. Misschien dat er eerste een G49 aangeroepen moet worden ofzo, of een H00, maar i.i.g dit werkte niet.

Ik vind daarom de handleiding die jij quote niet duidelijk. Zoals ik het lees: als ik een overeenkomstige Hxx bij een bepaalde Txx aanroep zou hij bijbehorende offset moeten laden; dat doet hij dus niet.
Gebruikersavatar
andrefc101
Donateur
Berichten: 3725
Lid geworden op: 26 dec 2007 08:39
Locatie: Bergen op Zoom
Contacteer:

Re: machine botst met werkstuk na start programma

Bericht door andrefc101 »

Probeer nu een alleen G43 aan, zonder Hxx, en kijk dan eens in de waarde van die parameter..... die mogelijk heb ik nog steeds niet gezien! Heb lamme jatten van het typen, maar het komt niet zo goed over ben ik bang.....
Gebruikersavatar
Arie Kabaalstra
Donateur
Berichten: 13496
Lid geworden op: 07 feb 2007 18:37
Locatie: Bakhuuz'n
Contacteer:

Re: machine botst met werkstuk na start programma

Bericht door Arie Kabaalstra »

Kort en Goed.. G43 hoort in je Toolchange macro te staan, en niet in je programma.

Wat #5010 en #5013 betreft.. daar ga ik zelf ook even naar kijken..

Mijn macro dateert nog uit de tijd dat dat nog niet aan de orde was..

Wat het gebruik van G92 tegenover G10 betreft.. in de praktijk maakt dat geen bal uit.. 't G10 Zeroing maakt alleen wel dat je makkelijker en sneller een werkstukcoordinatensysteem instelt

Wat ik zo aan code voorbij zie komen.. leuk dat je een macro schrijft die van alles kan.. maar documenteer het ook goed.. dat blijkt een zwak punt te zijn van meerdere ontwikkelaars van Macro's .. Ik maak me daar zelf ook wel schuldig aan, Mea Culpa.
Een macro met meerdere opties.. geweldig.. maar documenteer het alsjeblieft.. zeker als die macro voor derden is bedoeld, en door derden zelf in gebruik dient te worden genomen.
Plaats reactie