Vakantie en reorganisatie hobbyruimte

Halve dagen werken en lekker genieten van het mooie weer met de kajak op de sloterplas. Ik had last van uitgeputheid en viel tussen 14h en 16h gewoon in slaap.
Vakantie: zo veel mogelijk buiten en op het water
Mooie tocht op de Zaan

CNC revisited / Portaalfrees

Het afgelopen jaar heb ik veel geleerd omtrent CNC frezen. 

Ik heb het CAD pprogramma DraftSight beter leren bedienen om daarmee CAD tekeningen te maken.

Ik heb CamBam leren bedienen.

Ook heb ik mij verder verdiept in de mogelijkheden van MACH3.

Ik heb leren programmeren met G-codes en M-codes.
Nu ben ik bezig met Visual Basic voor de scripts.

Ik heb de frees vorig jaar provisorisch opgebouwd. Ik ben nu bezig e.e.a. in een definitieve vorm te gieten.

Ik heb nu een USB wireless afstandsbediening geïnstalleerd. Toch net even makkelijker dan met een muis bij de computer.

Verder komt er aan de onderkant LED-verlichting zodat ik tijdens het frezen het verloop beter kan zien, want de plek waar de frees bezig was op het werkstuk lag altijd een beetje in de schaduw omdat het licht van boven kwam.

Er worden verder nieuwe hulpstukken aangesloten op de portaalfrees zoals een cyclone dustcollectror, een 'floating head' graveerhulpstuk en een lucht koel/blaasinstallatie.

Ook heb ik in Visual Basic een script geschreven om de 0-stelling op de Z-, X- en Y-as automatisch te laten verlopen. Het 0-stellen met een papiertje werkt overigens prima, maar dit gaat net even sneller en makkelijker.

Ik heb daartoe een messing hulpstukje gemaakt, een zogenaamde 'touchplate', waarvan de dikte nauwkeurig is gemeten. Dit hulpstukje is verbonden met +5 volt van de stuurkaart en met een krokodillenklemmetje verbind ik de frees aan 0 volt.

Wanneer het script geactiveerd wordt, gaat het snijgereedschap (boor of frees) langzaam naar het hulpstukje toe en zodra het wordt geraakt stopt het snijgereedschap, zet de betreffende as op 0 en gaat weer terug.
Deze procedure wordt uitgevoerd voor alle 3 de assen. MACH3 weet dan precies waar het nulpunt op de Z-,X- en Y-as is, dus de positie van het werkstuk.
Dit is van belang bij nauwkeurig werken en als je het werkstuk aan verschillende zijden wilt bewerken.

Ik heb een vrije input van het stuurbord gebruikt en MACH3 geprogrammeerd. De beschrijving en screenprints van dit proces volgen binnenkort.

Onderaan is de Visual Basic code van het script te zien en een ieder die daar belangstelling voor heeft is wat mij betreft vrij om dit over te nemen.
De code compileert bij mij zonder fouten, ik heb vooralsnog alleen nog de Z-as getest, die feilloos werkt. De rest volgt zodra alles weer is gemonteerd.

Ik hoop de hobbyruimte begin september weer in gebruik te kunnen nemen.

Een USB handwiel voor de bediening van de portaalfrees.
De oude MDF ombouw wordt gesloopt en er komt een verbeterde multiplex ombouw omheen. De CNC portaalfrees wordt opnieuw opgebouwd. Verder wordt de afzuiginstallatie verbeterd met een cyclone dust collector.
Electronica wordt opnieuw aangelegd.

Cyclone Dust Collector

Bij het frezen van werkstukken ontstaan spaanders en stof.

Vooral hout en met name MDF veroorzaken een enorme bende van stuivende fijne stofdeeltjes.

De stofdeeltjes zijn zo fijn dat ze aanvoelen als poeder.

Dit poeder is ongezond en veroorzaakt irritaties aan de luchtwegen en bedekt alle in de hobbyruimte aanwezige voorwerpen.

Een gewone stofzuiger kan dit niet aan en de stofzak zit binnen de kortste keren vol.

Door er een cycloon stofafscheider tussen te zetten, worden de fijne poederdeeltjes afgevangen, in een aparte bak opgevangen en de stofzuiger blijft schoon, net als de hobbyruimte.

zie ook: https://www.damencnc.com/nl/tools/dust-extraction-and-accessories/dust-extraction/1228

Cyclone dust extractor: door centrifugale werking worden de stofdeeltjes weggeslingerd en opgevangen in een emmer. Dit spaart de stofzuiger en de stofzak die nu alleen nog de lucht ontvangt.
Ook de electronica gaat op de schop: kabels en leidingen worden opnieuw getrokken en verbeterd en er worden meer relais gebruikt. Ook wordt de koeling uitgebreid. De 'zero probing' wordt nu ook geactiveerd, zodat de nulstelling van het werkstuk op 3 assen automatisch verloopt. Daartoe heb ik een VB script gemaakt.
Hier de onderkant van de portaalfrees. Ik ga LED-verlichting aanbrengen, zodat ik tijdens het frezen het werkstuk beter kan zien. Verder komt er een 'floating head' graveerhulpstuk.

'Floating head' graveer hulpstuk

Graveren betekent: het infrezen van een materiaal, waarbij de freesdiepte kleiner is dan de dikte van het materiaal.

Dus: bij doorfrezen (freesdiepte is groter dan dikte werkstuk) is dat van geen belang, maar bij graveren (freesdiepte is kleiner dan dikte werkstuk) is het essentiëel omdat de graveerdiepte gelijk moet blijven ten opzichte van de bovenkant van het werkstuk.

De grondstoffen van een werkstuk zoals hout en kunststof, maar ook messing, zijn niet 100% nauwkeurig vlak, waardoor je bij graveren een lelijk verloop in diepte kunt krijgen.

Dit hulpstuk zorgt ervoor dat de freesdiepte gelijkblijft, ook al is het werkstuk niet 100% vlak. 
De graveerdiepte kan nauwkeurig worden ingesteld middels een schroefdraad.

De frees volgt tijdens bewegingen in de X-as en de Y-as richting, nauwkeurig de oppervlakte van het werkstuk in de Z-as richting.

Aan het eind van de motor, om de spantang heen, zit een rond hulpstuk wat over het werkstuk glijdt tijdens het frezen. 

Dit ronde hulpstuk wordt door het gewicht van de freesmotor, dus de zwaartekracht, op het werkstuk gedrukt.

De druk mag niet te groot worden want anders beschadigt de oppervlakte van het werkstuk en daarom is de aandrukkracht instelbaar.

Het hulpstuk is uitsluitend van invloed op de Z-as en op de X-en Y-as heeft dit geen invloed.

Heel vaak wordt met een v-groef gegraveerd, vooral bij tekst, of PCB board, maar het is ook noodzakelijk bij het exact op schaal graveren van de voegen tussen bakstenen in een buitenmuur van bijvoorbeeld een woning of een station.

Je kan het ook met een auto-levelling programma doen, de oppervlakte wordt dan eerst helemaal afgestast en in een komma separated file (.csv) weggeschreven. Bij het frezen wordt dan de hoogte gecorrigeerd tijdens het frezen. Die techniek duurt uiteraard aanzielijk langer.

Floating head graveer hulpstuk. zie ook: https://www.damencnc.com/nl/tools/kress/kress-frees-motoren/719

Compressor voor luchtkoeling

Tenslotte komt er een compressor voor een blazertje dat de frees koelt en de spaanders wegblaast. Koelen met vloeistof is geen optie omdat de ombouw van hout is.

De luchtcompressor wordt gebruikt om de spanen weg te blazen en de frees of boor te koelen. Vloeistof zoals snijolie veroorzaakte te veel rommel en kliedertroep.

VB script voor nulstelling van het werkstuk

Sub Main()


Dim DoXY As String
Dim DoZ As String
Dim XaxisDRO As Integer
Dim YaxisDRO As Integer
Dim ZaxisDRO As Integer
Dim ToolDia As Double
Dim TouchPlateThickness As Double
Dim msg As String
Dim Style As String
Dim Title As String
Dim Answer As Long

XaxisDRO=0
YaxisDRO=1
ZaxisDRO=2

 


MsgBox "Hou de maten van de touchplatedikte en de diameter van het snijgereedschap (boor of frees) bij de hand. Deze waarden moet U dadelijk invullen!",0,"LET OP"
 


1:

Answer = MsgBox ("Wilt U uitleg over de nulstelling (zeroing procedure) van het werkstuk?",4,"UITLEG?")

If Answer = 6 Then

 GoTo 2
End If 
 
If Answer = 7 Then

 GoTo 3 
End If
 

2:

MsgBox "Om de nulstelling te verrichten gebruiken we een 'raakplaat' (touchplate) met een bepaalde dikte die aan + 5 Volt ligt",0,"UITLEG"

MsgBox "Het snijgereedschap (boor of frees) met een bepaalde diameter in de spantang leggen we aan 0 Volt",0,"UITLEG"

MsgBox "Het snijgereedschap in de spantang wordt voorzichtig naar de touchplate toegebracht tot ze elkaar raken",0,"UITLEG"

MsgBox "De respectieve coördinaten worden bij aanraking op 0 gezet en de tool trekt zich terug. ",0,"UITLEG"

MsgBox "Voor de Z-as wordt de dikte van de touchplate afgetrokken. Deze waarde wordt dadelijk gevraagd",0,"UITLEG"

MsgBox "Voor de X-as en Y-as wordt de halve diameter van het snijgereedschap afgetrokken. Deze waarde wordt dadelijk gevraagd",0,"UITLEG"

MsgBox "We doen eerst de Z-as. De Z-as moet altijd gedaan worden",0,"UITLEG"

MsgBox "Daarna kunt U kiezen of de X en Y as ook moeten, maar dat hoeft niet",0,"UITLEG"

 GoTo 3
  


3:

TouchPlateThickness = AskTextQuestion("Dikte van de touchplate invoeren. Waarde in millimeters, het decimale scheidingsteken is een punt")

ToolDia   = AskTextQuestion("Diameter van het snijgereedschap in de spantang invoeren. Dit hoeft niet als U X en Y niet doet")

 GoTo 4


4:
Answer = MsgBox ("Is de touchplate met + 5 V verbonden?",4,"CONTROLE")

If Answer = 6 Then
 
        GoTo 5
End If

If Answer = 7 Then
 
        GoTo 11
End If


5:

Answer = MsgBox ("Is de frees of de boor in de spantang met 0 volt verbonden?",4,"CONTROLE")

If Answer = 6 Then
 
        GoTo 6
End If

If Answer = 7 Then
 
        GoTo 11
End If


6:

'Answer = MsgBox ("Wilt U de bovenkant van het werkstuk bepalen (= Z-as )?",4,"BOVENKANT VAN HET WERKSTUK")

'If Answer = 6 Then

MsgBox "We gaan nu de Z-as doen. Zorg dat de touchplate op het werkstuk ligt",0,"Z-as"
'
        GoTo 7
'End If

'If Answer = 7 Then
 
'        GoTo 11
'End If

 

7:


MsgBox  "Z as wordt nu gedaan",0,"Z-as"

SetDRO(ZaxisDRO, 0.0000)
Sleep 100

If IsSuchSignal (22) Then
code "G31 Z-2 F10"

While IsMoving()
Sleep 100

Wend

SetDRO(ZaxisDRO, TouchPlateThickness)

Sleep 100

code "G1 Z1"

End If

MsgBox "Z-as is gedaan",0,"Z-as"

 

Answer = MsgBox ("X- en Y-as op nul zetten?",4,"ZIJKANTEN VAN HET WERKSTUK")


If Answer = 6 Then

MsgBox "Zorg dat de touchplate aan de zijkant van de X-as van het werkstuk ligt",0,"X-as"

        GoTo 8
End If

If Answer = 7 Then
 
       
        GoTo 11
End If


8:


 

MsgBox  "X-as wordt nu gedaan",0,"X-as"

SetDRO(XaxisDRO, 0.0000)
Sleep 100
If IsSuchSignal (22) Then
code "G31 X-2 F10"
While IsMoving()
Sleep 100 
Wend
SetDRO(XaxisDRO, ToolDia/2)
Sleep 100
code "G1 X.5"
End If

MsgBox "X-as is gedaan",0,"X-as"


MsgBox "Zorg dat de touchplate aan de zijkant van de Y-as van het werkstuk ligt",0,"Y-as"


MsgBox  "Y-as wordt nu gedaan",0,"Y-as"
SetDRO(YaxisDRO, 0.0000)
Sleep 100
If IsSuchSignal (22) Then
code "G31 Y-1 F10"
While IsMoving()
Sleep 100
Wend
SetDRO(YaxisDRO, ToolDia/2)
Sleep 100
code "G1 Y.5"
End If

MsgBox "Y-as is gedaan",0,"Y-as"


9:

 

10:

MsgBox "U kunt nu gaan bewerken",0,"KLAAR"

11:

MsgBox "Tot ziens",0,"EINDE"


End Sub

                                                                                           
 

  

      

de laatste fase is aangebroken: in principe werkt het nu nog alles fijnafstellen en testen en dan de bedrading netjes fixeren.
Het blaaspijpje is gemonteerd, het is de bedoeling dat het de spaanders wegblaast en het freesje wat koelt. Ben benieuwd of het werkt.

Nieuwe reacties

29.03 | 10:44

eh sorry, je hebt gelijk, ik las het niet goed. Het is inmiddels gecorrigeerd.

29.03 | 09:18

Hoi Rolf, de dikte wordt door Jan bepaald, ik voer alleen het tekenwerk uit

18.03 | 09:22

Dag Jaap
Mooi om te zien dat er weer modelbouw vorderingen zijn te melden
Opm. balkons van 4mm lijken me wat dik waarschijnlijk moet dit 0.4mm zijn
Grt Rolf

28.02 | 16:11

Met Solid Edge 3D heb ik geen ervaring.
Mvg, Frank Jonkers