RES: [diy_3d_printing_and_fabrication] Driving XY galvos from Gcode
I’ve spoken to 4 friends of mine (3 programmers and 1 engineer) about the ideas we have discussed here. They all said that writing a software to convert XY coordinates from gcode path into 12-bit range values is not something hard to do.
About the Arduino Due, the engineer friend told me it is pretty capable of doing the job at the required galvos speed.
I’ll start planning the software features, like scale factor (which can be done in the gcode), distortion adjustment, default routines, etc…
Let’s see what we get…
Tells you everything you need for your home galvos.
On Fri, Feb 22, 2013 at 12:07 PM, Murilo Torres <murilo@...> wrote:
I just bought a galvo kit on eBay... It may take up to 2 week for it to arrive in Brazil…
Let’s begin the experiment!
On Fri, Feb 22, 2013 at 7:50 PM, Murilo Torres <murilo@...> wrote:
I’ll meet a friend of mine, which is a programmer and electronic engineer, and discuss about the Due specs with him. Then, I’ll update the group about its performance.
Just be sure to consider what it is you are expecting it to do, you need a spec of some sort. Its OK to find out it is fast but really you need to know if it is fast enough etc.
- You can trace images easily enough it just adds some more coding to do and use exactly the same compensation when converting pixel position to angle as you would in converting coordinates to angle, there is just a scaling factor between the two things.Graham
On 27 Feb 2013, at 10:20, Murilo Lana <murilo@...> wrote:Yes, that's exactly what Form1 does:The only way I know it is done is by Gcode.Using white pixels to turn on the laser the way you said would make it difficult to compensate for the beam radius. Somehow you would need to shrink the image a little bit to compensate for this.Enviado via iPhone
Em 26/02/2013, às 23:25, Graham <grezmos@...> escreveu:It's usual for the flavour systems to trace the outlines as well as raster so that MIGHT make things more complex, I don't know if it is absolutely necessary though.Graham
On 27 Feb 2013, at 01:16, Chris Marion <chrismarion@...> wrote:If creating a plugin for my software, it might be even easier - no Gcode to decipher. My slicing software already produces black&white slice images, and by setting the resolution of these slices you could match it to the angular resolution you have on your galvos. Then just scan through each line of pixels in the slice as you scan the galvo in the same pattern, turning the laser on/off rapidly as needed to produce the image. Encountering a white pixel turns the laser on, otherwise it's off. Z axis, tilt mechanism, sensors, etc are also all taken care of already if it is built as an extension of 3DLP.
On 2/26/2013 7:54 PM, Murilo Lana wrote:Great to hear that!I think this might become a kind of universal 3D printing software =-)Like mach3 has its modules: machMill, machTurn, machPlasma, your software could have FDM, DLP, laser modules.The idea I have about this software is:Read the Gcode from the slices, map the X Y coordinates (zero in the center), translate the coordinates to 0 - 4096 values for each axis so the board can map this values to -+5V.There are some other things like z axis, tilt mechanism and sensors, but this are simpler to deal with.Enviado via iPhone
Em 25/02/2013, às 22:53, Chris Marion <chrismarion@...> escreveu:
Hi all, it's been a while since I've actively contributed to a discussion, but this is a really interesting one. I may be able to help out in the software department - right now all my efforts are focused upon finishing the newly re-written version of my 3DLP Host software. But considering that much of the supporting code for this has already been written by me, I may be able to write a module for my 3DLP software to support galvo-based printer hardware. This probably couldn't be for a couple months realistically with how much still needs to be done on the 3D slicer and host software, but I'm throwing the idea out there. I'm pretty interested in working on a galvo-based prototype myself, so the timing might be pretty good.
On 2/22/2013 2:33 PM, Murilo Torres wrote:
I just read, this Due board has two built-in 12-bit DACs. The sampling rate of this board is around 1000 ksps.
Yes,a gcode interpreter that would get the readout coordinates from X Y and convert them to readable values for arduino or a proper DAC card, as you suggested.
The g-code does not contain the intermediate co-ordinates those need to be generated by the software.
Buttalking about DAC card, we get back to that question: what kind of signal does it need?
It would be plugged in to the computer and controlled by the software.
Whywould it make more sense to use a proper DAC card instead of the arduino board? Resolution?
Why talk to another very small computer when you have a big computer that can do the work and faster.
Ifso, is there a way to build an arduino board with 12bit or even 16bit resolution? I’m asking this because there are other things to be controlled else then the galvos, like z axis, vat tilt, lcd, resin level sensors… I don’t know if a DAC card would handle all.
You can interface an arduino with a DAC chip. There is the advantage that the arduino can do the other functions but these are all really slow things, the galvo control should hopefully be much faster so the printing does not take the rest of eternity.
I found a company which sells a system to drive galvos from gcode, but I don’t think it is cheap. As far as I know they have their own driver to use with their software, which kind of kills the DIY thing.
it sounds like you want something that just plugs together anyway if you are not going to do the programming etc.