- Een Arduino CNC-machine bouwen:
- Wat je nodig hebt:
- De basis voor CNC-plottermachine:
- Montage van de X-, Y- en Z-as:
- Tekenplatform voor CNC-machine:
- Bedrading en circuit van CNC-machine:
- Arduino CNC-machinecode en testen:
- Uw eigen G-code genereren:
- De GRBL-controller:
CNC-machines zijn geautomatiseerde numerieke besturingsmachines die worden gebruikt om iets te tekenen of een mechanisch onderdeel te ontwerpen volgens het ontwerpprogramma dat in hun controllereenheid wordt ingevoerd. De controllereenheid kan een computer of een microcontroller zijn. CNC-machines hebben stappen- en servomotoren om het ontwerp te tekenen volgens het gevoede programma.
Na onderzoek te hebben gedaan naar CNC-machines, besloot ik om mijn eigen CNC-machine te bouwen met lokaal beschikbare materialen. Er zijn zoveel CNC-machines in de wereld, waarvan sommige technisch en complex zijn om ze goed te maken of zelfs te bedienen. Om deze reden heb ik besloten om een eenvoudige CNC-plottermachine te maken op basis van Arduino, die verreweg de eenvoudigste is om te maken. Je kunt dit ook gebruiken als een Arduino CNC-tekenmachine met kleine aanpassingen.
Deze DIY Arduino CNC-machine kan de meeste basisvormen, teksten en zelfs cartoons tekenen. De werking is vergelijkbaar met de manier waarop een menselijke hand schrijft. Het is sneller en nauwkeuriger in vergelijking met de manier waarop een mens kan schrijven of tekenen. Bekijk de demonstratievideo aan het einde van deze tutorial.
Een Arduino CNC-machine bouwen:
Om een CNC-plotmachine te laten werken, zijn 3 assen vereist (x-as, y-as en z-as. De x-as en y-as werken samen om een 2D-afbeelding op gewoon papier te maken. Deze x en y assen worden 90 graden ten opzichte van elkaar geplaatst zodat elk punt op het gewone oppervlak wordt bepaald door een gegeven waarde van x en y. De z-as wordt gebruikt om de pen op het gewone papier te heffen en te laten zakken.
Afhankelijk van de te tekenen afbeelding genereert de computer de juiste coördinaten en stuurt deze via de USB-poort naar de microcontroller. De microcontroller interpreteert deze coördinaten en bestuurt vervolgens de posities van de motoren om het beeld te creëren. Hier hebben we Arduino als Microcontroller gebruikt om deze CNC-machine te bouwen. De drie-assige bewegingen worden verzorgd door stappenmotoren, die worden aangestuurd door het Arduino-bord. U kunt nagaan hoe u de stappenmotor met Arduino moet verbinden als u hier nog niet bekend mee bent.
Laten we dus stap voor stap beginnen met het bouwen van ons Arduino CNC- apparaat.
Wat je nodig hebt:
Let op: Mijn ontwerp is qua hardware nogal verschillend qua grootte en de gebruikte materialen. Ik kon geen oude dvd-stations vinden, dus koos ik voor printeronderdelen. Wat je ook gebruikt, zorg ervoor dat het een stappenmotor heeft.
Hardwarevereiste:
- Aluminium plaat (710 mm x 710 mm)
- Oude HP / Epson-printer. U kunt oude computer-dvd-stations gebruiken
- Bouten en moeren
- Perspex glas
- Arduino UNO
- L293D motor driver shield of een Arduino CNC shield
- Mini servomotor
- Een pen
Het is een feit dat u zich geen zorgen hoeft te maken.
Hulpmiddelen:
- Schroevendraaier
- Boren
- Snijgereedschap (ijzerzaag)
- Lijm
- Bench apparaat
Software:
Voor een efficiënte werking van deze machine worden de volgende software gebruikt. Ga naar de verschillende websites en download ze.
- Arduino IDE versie 1.6.6 of latere versies vanaf hier
- Verwerking van IDE-versie 3.1.1 of latere versie vanaf hier
- Inkscape versie 0.48.5. Download het hier.
- Grbl controller (optioneel)
De basis voor CNC-plottermachine:
Het hoofdgedeelte van dit apparaat is de basis die alle belangrijke onderdelen van de machine samen ondersteunt, zodat de machine stevig en ook draagbaar is. In dit ontwerp zullen we aluminium gebruiken om de basis te construeren, aangezien het licht is, eenvoudig te buigen en te snijden is en ook een goed glanzend uiterlijk geeft omdat het niet roest.
Het ontwerp en de afmetingen van mijn basis is hieronder weergegeven:
Let op: Alle afmetingen zijn in millimeters.
Na al het buigen en snijden was ik in staat om een zeer stevige basis te produceren zoals hieronder weergegeven:
Montage van de X-, Y- en Z-as:
Om x- en y-assen te maken, worden twee printerhouders gebruikt. Elk van deze onderdelen bevat een stappenmotor en een riemaandrijfmechanisme dat gewoonlijk wordt gebruikt om de cartridge heen en weer te bewegen.
Voor de z-as wordt een mini-servomotor met lijm op de y-as bevestigd. Deze servomotor wordt gebruikt om de pen op en neer te bewegen. Er moet een goed ondersteuningsmechanisme worden geconstrueerd dat de vrije op- en neerwaartse beweging van de pen mogelijk maakt.
Tekenplatform voor CNC-machine:
Door het enorme formaat van deze machine kan het apparaat tekenen op A5-formaat papier. Daarom snijden we een platform van A5 (148 mm x 210 mm) formaat uit het perspex glas en plakken we dit met lijm op het bewegende deel van de x-as.
Bedrading en circuit van CNC-machine:
Plaats het L293D-motordriver-schild op het Arduino UNO-bord. Dit schild kan twee stappenmotoren en twee servomotoren tegelijk aandrijven. Sluit de twee stappenmotoren aan zoals hieronder weergegeven. De massa-aansluiting mag niet worden aangesloten, aangezien de motoren van het bipoplar-type zijn. Dit zal fungeren als onze Arduino CNC-controller voor onze plottermachine.
Bevestig ook de mini-servomotor aan servo1. Sluit een voeding van 7,5 V - 9 V aan op de voedingspoort van het schild van de motoraandrijving. De machine is nu klaar om te testen.
Arduino CNC-machinecode en testen:
Eerst moeten we de stappenmotoren testen en kijken of ze correct zijn aangesloten.
Omdat we het L293D-motorbesturingsscherm gebruiken, moeten we de AFmotor-bibliotheek vanaf hier downloaden. Voeg het vervolgens toe aan uw Arduino IDE-bibliotheekmap. Zorg ervoor dat u het hernoemt naar AFMotor . Als de Arduino IDE open was, sluit deze dan en open deze opnieuw en klik op bestand -> voorbeelden -> Adafruit Motor Shield Library -> stepper . Zorg ervoor dat je de juiste poort en kaart kiest in tools en upload de code vervolgens naar het Arduino-bord. Sommige bewegingen moeten worden waargenomen op de stappenmotor één.
Om motor twee te testen, wijzigt u de motorpoort van 2 in 1 op de volgende regel en uploadt u de code opnieuw.
#include // Sluit een stappenmotor aan met 48 stappen per omwenteling (7,5 graden) // op motorpoort # 2 (M3 en M4) AF_Stepper motor (48, 2);
Arduino-code voor CNC-machine:
Zodra de stappenmotoren correct reageren, kopieert u de Arduino-code voor de CNC-machine uit de sectie Code hieronder en uploadt u deze naar het Arduino-bord. U kunt de code downloaden via de onderstaande link.
Arduino CNC-code downloaden
G-code voor CNC-machine:
G - CODE is de taal waarin we computergestuurde machines (CNC) vertellen iets te doen. Het is eigenlijk een bestand dat X-, Y- en Z-coördinaten bevat.
Bijvoorbeeld:
G17 G20 G90 G94 G54 G0 Z0.25X-0.5 Y0. Z0.1 G01 Z0. F5. G02 X0. Y0,5 I0,5 J0. F2.5 X0.5 Y0. I0. J-0,5 X0. Y-0,5 I-0,5 J0. X-0,5 Y0. I0. J0.5 G01 Z0.1 F5. G00 X0. Y0. Z0,25
Het schrijven van een G-code voor slechts een eenvoudig vierkant kan een hele uitdaging zijn, maar gelukkig hebben we software die ons kan helpen een G-code te genereren. Deze software heet " Inkscape ", download deze hier.
U kunt uw eigen G-code genereren met Inkscape, die we in de volgende sectie hebben uitgelegd, of u kunt direct beschikbare G-codes op internet gebruiken.
Voordat ik je laat zien hoe je G-codes genereert met Inkscape, laten we bespreken hoe je die G-codes naar de Arduino kunt sturen. De software waarmee we G-codes naar de Arduino kunnen sturen, wordt Processing genoemd.
IDE verwerken om de G-code te uploaden:
Dit platform helpt ons de G-codes naar het Arduino-bord te sturen. Om dit te doen, moet u het GCTRL.PDE-bestand downloaden.
Download het GCTRL.pde-bestand vanaf hier en open het met Processing IDE
Als je het eenmaal hebt geopend in de Processing IDE, klik je op Uitvoeren. Er verschijnt een venster met alle instructies. Druk op p op het toetsenbord. Het systeem zal u vragen om een poort te kiezen. Selecteer dus de poort waarop je Arduino-bord is aangesloten. In mijn geval is het poort 6.
Druk nu op g en blader naar de map waar u uw G-CODE heeft opgeslagen. Selecteer de juiste G-CODE en druk op enter. Als alles goed was aangesloten, zou u moeten zien dat uw apparaat op het papier begint te plotten.
Als u het proces wilt beëindigen, drukt u gewoon op x en het apparaat stopt met wat het aan het doen was.
Uw eigen G-code genereren:
We hebben gezegd dat Inkscape de software is die we zullen gebruiken om onze G-CODES te genereren. In dit voorbeeld maken we een eenvoudige tekst (HELLO WORLD) zoals hieronder weergegeven.
Opmerking : Inkscape heeft geen ingebouwde manier om bestanden op te slaan als G-CODE . Daarom moet u een add-on installeren waarmee u afbeeldingen naar G-CODE-bestanden kunt exporteren. Download deze MakerBot Unicorn-plug-in vanaf hier met installatie-instructies.
Als de installatie is gelukt, Open Inkscape, ga naar het menu Bestand en klik op "Documenteigenschappen". Verander eerst de afmetingen van px naar mm. Verklein ook de breedte en hoogte tot 90 mm. Sluit nu dit venster. Een vierkant verschijnt als het tekengebied. Dit is het gebied dat we zullen gebruiken om onze tekst te schrijven.
Klik nu in de linkerzijbalk op het tabblad Tekstobject maken en bewerken. Typ de tekst " HELLO WORLD " en plaats deze in de rechterbovenhoek van het vierkant zoals hieronder weergegeven.
Klik op tekst en kies het type lettertype dat u verkiest. Klik op toepassen en het sluiten.
Klik nu op pad en selecteer " object naar pad "
Uw tekst is nu klaar om te worden opgeslagen als G-CODE. Klik op bestand -> opslaan als en typ vervolgens de bestandsnaam als "hallo wereld"
Verander het bestandstype in "MakerBot Unicon G-Code" zoals getoond in onderstaande foto. Dit wordt alleen weergegeven als de installatie van de add-on is gelukt. Klik ten slotte op opslaan en klik op ok in het pop-upvenster.
U heeft een G-code gegenereerd en deze kan worden geplot met behulp van de voorgaande procedures.
De GRBL-controller:
Als het je eenmaal is gelukt om een G-code te genereren met Inkscape, kan het nodig zijn om de G-code te bekijken om er zeker van te zijn dat deze binnen de tekenlimieten valt.
De tekenlimieten zijn ingesteld in de Arduino CNC CODE in de onderstaande regels:
De afbeelding zoals hierboven weergegeven in de GRBL-controller mag niet verder gaan dan die limiet zoals weergegeven in de CNC Arduino-code hierboven. Als het die limiet overschrijdt, bijvoorbeeld naar de negatieve kant van de x-as, wordt dat deel aan de negatieve kant niet geplot.
In dit voorbeeld variëren de x- en y-waarden van 0 mm tot 40 mm.
Omdat ik printeronderdelen gebruik die op een groter gebied kunnen plotten, verander ik de maximale waarden van 40 mm naar 60 mm.
Telkens wanneer u een G-code genereert met Inkscape, kunt u die G-code eerst openen in het GRBL-programma om te zien of deze binnen die limieten valt. Als dit niet het geval is, moet u het formaat van uw afbeelding in de Inkscape wijzigen totdat deze binnen uw limieten valt.
Dit is dus de goedkope en eenvoudigste methode om thuis een CNC-plottermachine te bouwen met arduino uno. Probeer het uit en laat het ons weten in reacties, bekijk ook de video hieronder.