E++, Custom EdingCNC Editor

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

Moderator: Moderators

Plaats reactie
Gebruikersavatar
Arie Kabaalstra
Donateur
Berichten: 13527
Lid geworden op: 07 feb 2007 18:37
Locatie: Bakhuuz'n
Contacteer:

Re: E++, Custom EdingCNC Editor

Bericht door Arie Kabaalstra »

VDFman schreef: 20 mei 2023 22:23 Lijkt wel op Style CNC .
Nee, totaal niet. .. Bij Style teken je het werkstuk, je geeft de bewerlangs op, en dan genereer je de code.
Het gaat nog wel even duren voor ik dat ook kan. .
hfjbuis schreef: 20 mei 2023 22:26 Deze berekening is helemaal correct
En ik was nooit een kei in wiskunde. . :mrgreen: maar dat wat ik weet, en snap, dat snap ik ook heel goed. .met name sterepetitie, en dat is dan ook het enige wat ik vroeger op school een 10 voor gehaald heb
Gebruikersavatar
hugo stoutjesdijk
Donateur
Berichten: 12053
Lid geworden op: 02 mar 2011 17:04
Locatie: elst (u)
Contacteer:

Re: E++, Custom EdingCNC Editor

Bericht door hugo stoutjesdijk »

Arie Kabaalstra schreef: 20 mei 2023 18:39 Het wordt met afrondingen pas een probleem als de Radius NIET Tangentiaal is aan ofwel de diameter, danwel het kopvlak..
Het wordt ook een uitdaging als diameter X1 niet een cilinder is, maar een taps toelopend deel.
En als vlak Z2 niet vlak is, maar onder een hoek verder loopt.

Jouw maat X2 vind ik in het plaatje een beetje merkwaardig, voor het uitrekenen van die afronding heb je hem niet nodig, maar je hebt nog wel een eindpunt van je contour nodig, grootste diameter dus.
Maat Z1 kun je ook wel weglaten, dat is per definitie Z2-R.
Keuze concaaf/convex zie ik hier ook niet zo, een afronding wordt meestal geleid door de 2 lijnstukken waar die tussen licht.

Als je een echte uitdaging zoekt. :mrgreen:
2023-05-21 07_36_47-SOLIDWORKS 2020 SP1.0 - [draaideel-arie.SLDPRT _].jpg
Je hebt niet voldoende permissies om de bijlagen van dit bericht te bekijken.
Ik ben voor meer techniek op school, maar dan wel vanaf groep 1 basischool.
hfjbuis
Donateur
Berichten: 3091
Lid geworden op: 13 feb 2017 00:26
Locatie: Hoensbroek

Re: E++, Custom EdingCNC Editor

Bericht door hfjbuis »

hugo stoutjesdijk schreef: 21 mei 2023 07:42 Keuze concaaf/convex zie ik hier ook niet zo, een afronding wordt meestal geleid door de 2 lijnstukken waar die tussen licht.
Hugo, hoe weet je dan of het concaaf/convex moet worden?

Ik ga dit zelf aangeven met een "negatieve" radius voor concaaf (hol).
There are only 2 limits, the sky and your imagination
Gebruikersavatar
hugo stoutjesdijk
Donateur
Berichten: 12053
Lid geworden op: 02 mar 2011 17:04
Locatie: elst (u)
Contacteer:

Re: E++, Custom EdingCNC Editor

Bericht door hugo stoutjesdijk »

Maak maar even een tekeningetje voor jezelf. de lijnstukken hebben in principe een richting, wanneer je van 1 lijnstuk overgaat in het volgende heb je 2 keuzes, je kan linksaf of rechtsaf (relatief natuurlijk), en staat het dus vast of het een G2 of G3 wordt.
2023-05-21 17_28_37-SOLIDWORKS 2020 SP1.0 - [draaideel-arie.SLDPRT _].jpg
Als we van X0 Z0 , X20, Z-10 gaan wordt het een G3 (+)
als je van X20 Z0, Z-10, X20 doen wordt het een G2 (-)

Je hoeft bij besturingen die dat al voor je kunnen doen, ook niet op te geven welke richting die afronding op is.
Wanneer de besturing freesradius compensatie kan, zal die een cirkel om een scherp punt lopen, de richting daarvan is ook bepaald. De afrond functie en freesradius compensatie hebben wiskundig heel veel overeenkomsten.
Ik was ooit met een stukje code bezig die G41/42 voor me uitvoerde, heb toen in 1 moeite door automatisch afronden van scherpe hoeken er aan toegevoegd.
Je hebt niet voldoende permissies om de bijlagen van dit bericht te bekijken.
Ik ben voor meer techniek op school, maar dan wel vanaf groep 1 basischool.
hfjbuis
Donateur
Berichten: 3091
Lid geworden op: 13 feb 2017 00:26
Locatie: Hoensbroek

Re: E++, Custom EdingCNC Editor

Bericht door hfjbuis »

hugo stoutjesdijk schreef: 21 mei 2023 17:34 Maak maar even een tekeningetje voor jezelf. de lijnstukken hebben in principe een richting, wanneer je van 1 lijnstuk overgaat in het volgende heb je 2 keuzes, je kan linksaf of rechtsaf (relatief natuurlijk), en staat het dus vast of het een G2 of G3 wordt.
Als het gaat om afronden/afschuinen van hoeken, dat kun je uit de punten bepalen.
Ik bedoel de situatie, daarbij ik een profiel wil draaien. Dan kan ik kiezen voor een bolle of holle radius:
ConcaafConvex.jpg
Je hebt niet voldoende permissies om de bijlagen van dit bericht te bekijken.
There are only 2 limits, the sky and your imagination
Gebruikersavatar
hugo stoutjesdijk
Donateur
Berichten: 12053
Lid geworden op: 02 mar 2011 17:04
Locatie: elst (u)
Contacteer:

Re: E++, Custom EdingCNC Editor

Bericht door hugo stoutjesdijk »

Er is een verschil tussen afrondingen en cirkelsegmenten, een cirkelsegment is een vast gegeven, afrondingen kunnen zonder veel problemen groter of kleiner gemaakt worden. Dat moet gewoon op tekening staan met de noodzakelijke maatvoering. Dat hoeft ook geen tangente aansluitingen te hebben.
Als je dat in een dialoog wilt doen, ben je wel met een ingewikkelde omweg gewoon een G-code aan het invullen.
Kun je toch veel handiger 2 functie toetsen maken, met een symbooltje linksom en 1 rechtsom. En dan? Welke varianten wil je kunnen verwerken. Weet je het eindpunt, weet je het middelpunt, of weet je alleen de radius en de ingesloten hoek.
Ik ben voor meer techniek op school, maar dan wel vanaf groep 1 basischool.
Gebruikersavatar
Arie Kabaalstra
Donateur
Berichten: 13527
Lid geworden op: 07 feb 2007 18:37
Locatie: Bakhuuz'n
Contacteer:

Re: E++, Custom EdingCNC Editor

Bericht door Arie Kabaalstra »

hugo stoutjesdijk schreef: 21 mei 2023 07:42 Het wordt ook een uitdaging als diameter X1 niet een cilinder is, maar een taps toelopend deel.
En als vlak Z2 niet vlak is, maar onder een hoek verder loopt.
Ja... Maar.. op zich kan ik dat in 3 Cycli opsplitsen, haartje overmaat erop, en dan een Contourtje Napoetsen..
hugo stoutjesdijk schreef: 21 mei 2023 07:42 Jouw maat X2 vind ik in het plaatje een beetje merkwaardig, voor het uitrekenen van die afronding heb je hem niet nodig, maar je hebt nog wel een eindpunt van je contour nodig, grootste diameter dus.
Maat Z1 kun je ook wel weglaten, dat is per definitie Z2-R.
Keuze concaaf/convex zie ik hier ook niet zo, een afronding wordt meestal geleid door de 2 lijnstukken waar die tussen licht.
Afbeelding

Eindpunt van de Contour?.. dat is Qua diameter het Startpunt van de Beitel.. ik beweeg mijn beitel naar een bepaald punt, en daar roep ik mijn Cyclus aan.. de X en Z Coordinaat waar de beitel dan staat worden gekopiëerd door de Cyclus, als zijnde Start Coordinaten..
Vroeger.. Dat wil zeggen, met de Huidige Macro.. werd alles uitgevoerd vanuit het gereedschapwisselpunt, en moest je dus ook je StartCoordinaten van je Cyclus ingeven.. dat maakte dat je heel veel velden in moest vullen.. Nu, met E++ is de Macro heel anders qua opzet.. Bij de EMCOtronic TM02 besturing van mijn EMCOturn 120 is het ook zo dat de positie van je beitel het startpunt van een geprogrammeerde Cyclus is... en eigenlijk... bevalt me die zienswijze wel.. Immers.. als ik wat wil vlakken.. laten we zeggen een stukje van ø60, dat een beetje scheef gezaagd is.. dan loop ik naar X61 Z2.. en daar Knoop ik op de Compact 5 dan een M99 achter.. of op de 120.. programmeer ik daar een G84 regel met een X, een Z, een Snedediepte en een voeding... meer dan dat is mijn nieuwe Macro ook niet.. behalve dan dat .. ik er nog een bewerkingsrichting in moet zetten.. 1 voor vlakken, 2 voor langsdraaien.. Hoe gaat dat bij de EMCO120?.. Nou.. heel eenvoudig.. G84 Z0 X0 F50 D2=250 gaat vlakdraaien, en G84 X0 Z0 F50 D2=250 gaat Langsdraaien... gewoon de X en Z omdraaien.. eerst Z is vlakken, eerst X is langsdraaien.. Ik vind helemaal leuk..
hfjbuis schreef: 21 mei 2023 16:53 Hugo, hoe weet je dan of het concaaf/convex moet worden?
Hoe Hugo dat weet?.. Geen idee.. maar je kunt als je een contour maakt met puur afrondingen prima uitvogelen hoe je Radii moeten lopen.. stel Je X1 is 40, maar je startpunt is X60.. dan zou je simpelweg een cyclus kunnen maken, net als mijn Chamfer Cyclus, maar inplaats van een schuine kant in te voegen, een Radius erin kunnen gooien.. en dan aan de hand van de opgegeven punten bepalen of een Radius Convex of Concaaf moet zijn..
het lastige is dan wel dat je meer coordinaten moet opgeven dan wat er nu in de Cyclus zit..
Als je daarentegen een Hoekpunt opgeeft, en aangeeft of je daar een Concaaf of Convex Radius wilt, (met een hoek van 90°) dan kun je em wel uitvogelen..
Ik zit momenteel te broeden op Startpunt, Eindpunt van de Radius, de Radius zelf, en Concaaf / Convex.. en dat kan wel eens makkelijker wordend dan ik gedacht had.. door gewoon G02 of G03 X2, Z2 R op te geven.., hoe ik het dan met voorbewerken doe?.. eigenlijk ook zonder al te veel rekenwerk.. Ik moet dat nog even testen, maar als je bij een BuitendraaiCyclus op een Kleinere Diameter dan X2 uitkomt.. dan ga je gewoon met een radius Naar X2 Z2, dan wordt de snedediepte nooit groter dan je opgegeven hebt.. en als je X1 bereikt.. dan loopt ie de contour af die je al wilde hebben.. Ik ga even een testprogje maken.. en als dat werkt, dan mik ik em in de Macro.. (Wat ik ook kan doen.. is als ik X2-X1 bereikt heb.. met een radius gaan lopen.. dan zijn de gegenereerde afrondingen min of meer parallel, dus blijft er altijd wat te snijden over.. en zolang Eind X > X2.. dan kan dat.. , zou ie dan buiten mijn Start X komen.. dan maak ik em recht.. dat kan ik ook wel verzinnen.. of ik doe het volgens methode 1...

Nogmaals.. ik moet dat even testen.. of ik dat vandaag nog ga doen?.. weet ik nu nog niet.. want ik heb een best wel vermoeiende dag achter de Vreetstenen.. Ducati Clubraces bezocht.. Sinds Maart loop ik weer zonder stok, maar tot dusver waren dat allemaal stukjes van 500 meter max..terwijl ik vandaag een Kilometer of 5 heb afgelegd.. Ik denk dat als ik dat dinsdag aan mijn Fysiotherapeut vertel.. dat ie stijl achterover slaat..
hfjbuis
Donateur
Berichten: 3091
Lid geworden op: 13 feb 2017 00:26
Locatie: Hoensbroek

Re: E++, Custom EdingCNC Editor

Bericht door hfjbuis »

Dat hoeft ook geen tangente aansluitingen te hebben.
Als je dat in een dialoog wilt doen, ben je wel met een ingewikkelde omweg gewoon een G-code aan het invullen
Onderstaand model (knop) is met 7 posities en 2 radiussen in te voeren onder de voorwaarde dat de radius niet meer dan 180° is. Dat invoeren is relatief eenvoudig om te doen. Tool path programmeren is meer werk en ook wel en uitdaging, met name daar waar een radius en een lijn samenkomen, zeker als je ook nog rekening moet houden met de vorm van de beitel en tool nose radius.
Knop.jpg
Je hebt niet voldoende permissies om de bijlagen van dit bericht te bekijken.
There are only 2 limits, the sky and your imagination
Gebruikersavatar
Arie Kabaalstra
Donateur
Berichten: 13527
Lid geworden op: 07 feb 2007 18:37
Locatie: Bakhuuz'n
Contacteer:

Re: E++, Custom EdingCNC Editor

Bericht door Arie Kabaalstra »

Het grootste probleem waar we overigens mee te kampen hebben, zolang we de Dialogen in EdingCNC gebruiken is.. dat Variabelen altijd een waarde hebben.. nou kan ik natuurlijk zeggen : we geven de Optionele Parameters de waarde -1e10 geven, immers.. dat doe ik nu ook al nadat een Cyclus is afgelopen.. ( noem het Garbage Collection) omdat ik in de diverse Cycli steeds teruggrijp naar de Subroutines met de uitvoer van vlakken of langsdraaien.. en omdat ik de parameters X1 en X2 daarin gebruik.. dat kan problemen geven, dus zet ik ze naderhand allemaal op -1e10... zodat ik met verse parameters aan een nieuwe Cyclus uitvoer begin..

op de Fagor 8055 besturing waar ik veel mee gewerkt heb, en die ook de basis was van mijn huidige (oude) macro, kon je bij contour programmeren gewoon datgene opgeven wat je wist.. en dan tekende de besturing wat ie dacht van wat jij geprogrammeerd had. een heel mooi systeem, maar die werkte dus met parameters die (zoals te doen gebruikelijk in vele programmeertalen, zoals VB.Net, C#, en C++) GEEN waarde hadden.. ze waarde 0 geven is geen optie.. omdat 0 heel goed een X of Z coordinaat zou kunnen zijn.. controleren of ik ze gewijzigd heeft dan geen zin.. met -1e10 heeft dat wel zin.. want die waarde is niet waarschijnlijk dat je em ooit ingeeft.. omdat we nooit verder gaan dan 3, hooguit 4 decimalen.. Dus ook daar moet ik nog even naar koekeloeren..
Gebruikersavatar
Arie Kabaalstra
Donateur
Berichten: 13527
Lid geworden op: 07 feb 2007 18:37
Locatie: Bakhuuz'n
Contacteer:

Re: E++, Custom EdingCNC Editor

Bericht door Arie Kabaalstra »

hfjbuis schreef: 21 mei 2023 22:25 Onderstaand model (knop) is met 7 posities en 2 radiussen in te voeren onder de voorwaarde dat de radius niet meer dan 180° is. Dat invoeren is relatief eenvoudig om te doen. Tool path programmeren is meer werk en ook wel en uitdaging, met name daar waar een radius en een lijn samenkomen, zeker als je ook nog rekening moet houden met de vorm van de beitel en tool nose radius.
Dat zou je nog "vrij eenvoudig" kunnen oplossen door alle X-Coordinaten op te schuiven naar X+, en de Z-coordinaten naar Z+, de oude Fagor 800 deed het niet anders.. nadeel is wel dat je veel lucht staat te snijden.. maar als je op die manier in een Array je Coordinaten kan gooien.. dan kan het nog wel eens eenvoudig geschreven worden.. onder voorbehoud.. :mrgreen:
hfjbuis
Donateur
Berichten: 3091
Lid geworden op: 13 feb 2017 00:26
Locatie: Hoensbroek

Re: E++, Custom EdingCNC Editor

Bericht door hfjbuis »

Arie Kabaalstra schreef: 21 mei 2023 22:34 als je op die manier in een Array je Coordinaten kan gooien.. dan kan het nog wel eens eenvoudig geschreven worden.. onder voorbehoud.
Ik heb al voorzichtig geschat dat het een maand code kloppen wordt en meestal zijn mijn schattingen veel te optimistisch.
There are only 2 limits, the sky and your imagination
Gebruikersavatar
Arie Kabaalstra
Donateur
Berichten: 13527
Lid geworden op: 07 feb 2007 18:37
Locatie: Bakhuuz'n
Contacteer:

Re: E++, Custom EdingCNC Editor

Bericht door Arie Kabaalstra »

Ik begin er meer en meer aan te denken om ook gewoon het middelpunt van de Cirkelboog in te moeten geven.. dat scheelt me een enorme puist rekenwerk.. aan de andere kant.. er moet toch ook een manier zijn om het middelpunt te vinden.. Immers.. in de Broncode van onze software moet toch ook een dergelijke routine zitten?

aan de andere kant.. eind X kan ik ook berekenen als ik eind Z weet. en de radius.. Ik begin meer en meer respect te krijgen voor de programmeurs die dit soort grappen voor Fagor of Heidenhain FK geschreven hebben..

't is en blijft lastig dat de Dialogen in Eding nogal "Star" zijn.. dus moet ik een methode zien te vinden om met zo min mogelijk parameters de juiste vorm te definiëren...
hfjbuis
Donateur
Berichten: 3091
Lid geworden op: 13 feb 2017 00:26
Locatie: Hoensbroek

Re: E++, Custom EdingCNC Editor

Bericht door hfjbuis »

hfjbuis schreef: 20 mei 2023 22:26
Arie Kabaalstra schreef: 20 mei 2023 18:39 Maar.. één manier om het Middelpunt van de Cirkel uit te vlooien is een lijnstuk construeren van het beginpunt (X1, Z1 naar X2, Z2), want.. het is bekend dat een Loodlijn op het midden van dat lijnstukje ook door het middelpunt gaat!
Dientengevolge rekenen we dan met de helft van de lengte van het zojuist gevonden lijnstukje, en wel hierom.. met die lijn wordt een rechthoekige driehoek gevormd, waarvan de basis (halve lengte van het lijnstukje) en de schuine zijde (gelijk aan Radius) bekend zijn.
Deze berekening is helemaal correct!
Dat gaat toch met de door jou gegeven methode :?:
Jij hebt mij overtuigd om de radius gebruiken omdat dat minder invoervelden zijn en de c# code toch het juiste arc center kan berekenen. De enige controle op de waarde van de radius is of deze groter/gelijk is aan de afstand tussen begin en eind punt.
There are only 2 limits, the sky and your imagination
Gebruikersavatar
Arie Kabaalstra
Donateur
Berichten: 13527
Lid geworden op: 07 feb 2007 18:37
Locatie: Bakhuuz'n
Contacteer:

Re: E++, Custom EdingCNC Editor

Bericht door Arie Kabaalstra »

hfjbuis schreef: 22 mei 2023 13:37 Dat gaat toch met de door jou gegeven methode
Jij hebt mij overtuigd om de radius gebruiken omdat dat minder invoervelden zijn en de c# code toch het juiste arc center kan berekenen. De enige controle op de waarde van de radius is of deze groter/gelijk is aan de afstand tussen begin en eind punt.
Ja.. maar dat is het em nou juist.. ik ga dat niet in de C# code berekenen.. de "intelligentie" van E++ zit em niet in E++, maar in EdingCNC.
niet dat dat heel veel verschil maakt.. want wiskunde is wiskunde..

Ik heb even wat Wiskunde gerelateerde websites bekeken.. en daar staat onder andere de functie van een Cirkel: (X²+Y²)= R².. eh.. Ja.. DUHHHH.. R is dus de wortel uit (X²+Y²).. Komt die je al bekend voor?. zo niet.. dan zal ik je helpen.. de Stelling van Pythagoras!.. maar daar was ik al een anderhalve eeuwigheid achter.. toen ik mijn eerste macro voor een afronding schreef bij DamenCNC.. Immers, en wel hierom, Ik zeg altijd: een Cirkel(segment) is een infiniete verzameling rechthoekige driehoeken waarvoor geldt dat de schuine zijde een constante is, gelijk aan de radius van de Cirkel, ergo, je kunt alle punten op die cirkel berekenen middels de stelling van Pythagoras.. hetgeen door deze functieomschrijving daadwerkelijk mede aangetoond geworden gemogen.. Vragen?.. geen Vragen....

Verder.. heb ik in het verleden ook ondervonden dat het middelpunt van een Cirkel samenvalt met het snijpunt van de middelloodlijnen van een ingeschreven (al dan niet regelmatige) polygoon..

Ik lijk wel een Wiskunde leraar.. maar ik ben geen wiskunde leraar, ik ben zelfs helemaal niet goed in Wiskunde.. en daar ben ik voor behandeld..

Momenteel ben ik een "reserve Kabouter" aan het upgraden van Win XP naar Win 7.. eens kijken of E++ daarop wil draaien, zo niet.. dan moet ik nog even upgraden naar Win 10.. dat moet die kabouter wel trekken..
Straks ook maar even een Pokeys kaartje bestellen.. en dan even zien of we van het Heidenhain TE400 klavier de 20 Toetsen, gemarkeerd in de Rode Rechthoek:

Afbeelding

Parallel aan kan sluiten op de UIO-10, Immers.. het zijn 20 toetsen.. en er zijn standaard 20 UserSubs.. , kwestie van een stukje Kunststof offeren, en dan zien of ik ze kan laten laserfrituren, of dat ik ze zelf moet graveren..
Plaats reactie