Sant 8 bit foto gravyr på kinesiska laserskärare - kanske en världar först?
Uppdatering 11/04/2016: ny firmware är redo :)
Du kan hämta den HEX filen här.
För att ladda upp den till din Mega2560 Använd XLoader.
Programmet ganska mycket förklarar sig: Välj hex-fil, ställa in styrelsen och com port, slå upp och njuta av.
Alla vitala värden lagras i EEPROM för lätt tweaking som acceleration, jerk, max hastigheter...
Detta är ett uppdaterat tillägg till min tidigare Instructable om att ersätta Moshi handkontrollen.
Så om din K40 klon är fortfarande oskuld då vänligen chef över till den ovanstående kompatibel först för hårdvara konvertering.
Historien hittills...
Det började med att bli av med den ursprungliga styrenheten för att kunna göra rätt vektor nedskärningar och raster gravyrer.
Allt detta förklaras i den ovanstående kompatibel om du missade det.
Men snart märkte jag att dessa låg effekt Diodlasrar kan göra riktigt bra snygga foto-gravyrer.
OK, vad kan vara enklare än att göra detta på en ordentlig CO2 laser???
Det är hur resan till den heliga Graalen av CO2-Laser gravyr började...
För att förstå problemet måste jag gå lite in på detaljer här, så förlåt mig för torr förklaringar.
Till skillnad från en diodlaser är våra CO2-system många, många gånger mer kraftfull.
Och där en diodlaser med TTL pulser kan täcka alla PWM de 0-255 en CO2 kan inte göra det alls.
De flesta system kräver en minsta makt över 6% för laser eld alls.
Och att vara på spara sidan på livstid och problem den max effekt bör hållas under 60% hela tiden.
Så i stället för 256 nyanser av grå- eller här effektnivåer har vi bara lite över 50.
OK, inte så illa för enkla saker...
Fel...
Åtminstone med min maskin 6% innebär kraft smärre brännskador på trä, 15% redan mycket djupa brännskador om hastigheten inte är tillräckligt hög.
Försöker att gravera ett foto med bara 9 nivåer mellan bara synlig och bränt igenom är inte trevligt.
Efter att ha testat en hel del verktyg, hittade tillägg och sådant jag bara ett verktyg för att kunna generera korrekt G-kod för foto gravyr i 8 bitar.
Det är Image2Gcode men inte outdate versionen du snabbt hitta genom en websearch.
Bryan och Leo69 över på Viscious1 har skapa en mer kraftfull version av verktyget och fortfarande uppdatera för att göra det ännu bättre!
Vänligen kontrollera länken ovan för den senaste versionen av programmet och att lämna dina synpunkter.
Endast med korrekt feedback kommer sådana stora verktyg se fortlöpande stöd och förbättringar!
Att ha en sådan kraftfull och helt gratis verktyg till hands var en bra start men för att göra verklig användning av det jag var tvungen att hitta ett sätt att kontrollera kraften av odjuret i mer definierat sätt.
Nyckelfärdiga tyranni gjorde ett bra jobb med sin firmware i form av dokumentera, som tillät mig (efter lite inspiration från våra stora killarna i forumet) för att ändra koden.
Kodning och problem...
En sak jag märkte i Marlin koden var att PWM signalen för Laser inte kontrolleras i de vanliga 255 trappar vi alla nu från 3D-skrivare och spindeln fart kommandon.
I stället nyckelfärdiga tyranni valt den ursprungliga 0-100% inställningar.
Vilket innebär noll för effektnivån är noll och 100 är redan den max effekt kan röret ge!
Detta förklarar några saker när det gäller att gå upp en effektnivå innebär istället för ingenting på papperet laser bränner rätt igenom pappret...
Här är en bild av det bästa jag kunde göra med begränsad makt inställningar:
Som ni kan se finns det endast ett fåtal "nyanser av grå" på grund av att makt var begränsad mellan 6 och 11 och eftersom Marlin inte gillar decimaler.
Efter några tester med en extra Arduino och några LED är jag började experimentera med koden för PWM-signalen.
Om någon vill veta alla detaljer Låt mig veta i kommentarerna och jag ska förklara mer.
Några första test såg riktigt god ut så jag bestämde mig att försöka nya kod på maskinen.
Noll innebär fortfarande Laser är i princip avstängd men max S är inte längre bara 100 eller 255, det höjs nu till 10000 - ja en med fem nollor.
Som ett resultat är PWM resolutionen nu 100 gånger mer detaljerad :)
Några exempel beräkningar från den ursprungliga firmware till denna:
Om innan lasern började att markera trä eller papper på S7 det nu börjar någonstans runt 700.
Jag säger "somewhere" som nu kan du verkligen hitta sweet spot mellan ingenting och en knappt synlig laser mark.
Och naturligtvis där innan på S20 du gjorde du sticklingar genom lek du nu behöver S2000 för samma resultat.
För vårt syfte med gravyr:
Låt oss säga på S7 du fått tillräckligt med kraft för att lämna ett synligt märke i trä.
Vid S10 klipp du redan genom det första lagret plywood.
För en gravyr som du inte kommer inte för att gå igenom det första lagret, om du behöver djup engravings du använder massivt trä istället.
Innan vi hade endast 3 effektnivåer att spela med, kan nu vi sprida detta över 300 nivåer - tillräckligt väl för att passa 256 nyanser av grått i det ;)
OK, bra! Vi kan göra rätt gravyr nu - men hur?
Tja först av alltid hålla i minnet att allt här är baserad på den nyckelfärdiga tyranni firmware och Inkscape plugg.
Detta innebär att maskinen fortfarande inte följer normal CNC normer som det skulle när du kör på GRBL till exempel.
För mig är perfekt som det är lätt att använda med freeware ensam att jag förstår för att använda.
Visst finns det andra verktyg tillgängliga som påstår sig göra 8 bit gravyrer, Picengrave bara för att nämna en comercial produkt.
Men i regionen freeware det finns inte mycket som kan jämföras med Image2Gcode som länkade ovan.
Men eftersom det inte är optimerad för våra maskiner finns det några manuell redigering krävs om du vill placera gravyr på en viss plats.
Vår säng ursprung är uppe till vänster, medan CNC-maskin har det i det nedre vänstern.
Detta innebär att våra rörelser är inverterad i Y-riktningen.
Det första steget i programmet är att vända bilden upp och ner - detta sätt blir orienterad korrekt.
Utan kod ändringar kommer att gravyr äga rum i det övre vänstra hörnet som uppsättning av gränslägesbrytarna.
Det här exemplet lämnar jag det där utan kod mods.
Ladda ditt foto in i Image2Gcode och som nämnda flip det.
Uppmärksamma de storlek och upplösning inställningarna och justera därefter!
För små gravyrer jag använder en upplösning på 0.1, större saker på 0,2 eller 0,25 - detta är avståndet mellan raderna genererade laser och för ett perfekt resultat måste matcha diametern på din kontaktpunkt.
Läget är naturligtvis gråskala 8 bitar.
På fliken Laser profil kan du ange de parametrar du funnit bäst efter några testburns.
På grund av nuvarande begränsningar hastigheten inte kommer gå så högt som du är van vid - så börja med lägre effekt nivåer som för nu har jag hittat ett sätt att öka bearbetningshastigheten för alla rörelse kommandon (åtminstone ingenting lätt) nr.
För den bilden nedan jag använde ett värde av 500 och 755 för låg- och effektinställningar.
Hastigheten var inställd på 3600mm/min att testa men jag antar att den verkliga hastigheten är någonstans runt 600-800mm/min - som sagt fortfarande måste hitta ett sätt att förbättra hastigheten här.
Att avmarkera kryssrutan för decimalvärden var något vi försökt att få mer kontroll över PWM men Marlin stöder inte det.
Optimerad raster minskar rörelser och gravyrer till områden med laser verksamhet - särskilt bilder med stora, unengraved områden kommer att gynnas av den tid som sparas här.
Profilerna är os ingen användning för oss just nu, så bara använda "Max" och dubbelkolla din makt värden är fortfarande samma.
Under fliken Gcode anger vi önskad matningshastighet användning parametern "S" för energiinställningar och M5 kommandot för att stänga av lasern.
Du kan spela med gravyr mönster om du vill.
När du klickat på "Generera fil" du öppna den resulterande Gcode i Proterface att skicka den till maskin - gravyr kommer att hända i det övre vänstra hörnet!
Här är några bilder av den första (framgångsrika) gravyren:
Original i gråskala
Gravyr innan rensningen, alla brända askan fortfarande in där
Gravyr saneras
Som ni kan se finns det fortfarande utrymme för förbättringar så spelar med effektnivåer att hitta den perfekta matchningen och gör några tester är det nuvarande sättet att gå.
Om jag kan ändra firmware igen och kontrollera om full 16PWM kodning är möjligt att skulle detta ge ännu mer än 10000 steg för PWM-signalen.
Just nu är det ett bra alternativ till att få en diode laser om du vill göra mer än bara gravyrer eller arbeta med ganska tunna material.
En anständig diode laser modul med effektkontroll (inklusive TTL och PWM) kommer att kosta nästan samma som en av dessa K40 kloner.
Så du får avgassystem kammaren och några mer eller mindre god arbetsmiljö gratis.
Med mer kontrollerad makt spröda material som glas, keramik eller några stenar ska få bättre resultat nu också.
Helt enkelt slå ner kraften tills amout för delning av reducerats till ett minimum.
Med kommandot M649 i Gcode ange puls mode operation hjälper också mycket här.
Bara göra några tester med olika puls genom Inkscape plugin ställa en laser punkt bredvid den andra utan att skapa ett komplett sortiment.