SLS 3D printer
-
Hi guys and sorry for my google translate english.
I am working on a SLS 3D printer and am about to connect the galvo motor to a duet 3 6hc.
My plan is to connect them with a DAC converter to the PWM I/O pin to get an analog output.
As I understand it, you change the position of the galvo motors by changing the voltage that come from the duet board's PWM frequency.
My question is that normally the frequency determines the speed of the motor and not the position but here it determines the position so does the reprap firmware allow that and can I control the speed?
I haven't tested anything yet as I don't have a DAC converter.
i appreciate all ideas.
-
@SLS-3D we don't currently have any hardware that can generate a variable voltage for a galvo drive.
The simplest option may be to use a SammyC21 to drive a DAC that generates the galvo voltage. What voltage range does the galvo need, and what resolution do you require?
-
-
-
Thanks for your reply.
It is + - 5v to control the galvo and I would like a resolution of 0.1mm and that corresponds to 0.005V.
-
@SLS-3D so you need a resolution of 1 part in 2000. That means you need a digital to analog converter with at least 11 bit resolution.
The other important aspect is speed. What is the maximum voltage change per second that you need? For example, if you want to cover the entire range from -5V to +5V in 10 seconds then you need a slew rate of 1 volt per second, ignoring acceleration and deceleration considerations.
-
I've looked into this further. To generate a voltage in the range -5 to +5V I suggest a MCP4921 digital to analog converter, a voltage reference chip to provide a reference of about 2V or 2.5V, and an op amp to boost and level shift the signal to the required range (-5V to +5V), and a TC1044 or similar charge pump chip to generate the negative supply rail for the op amp.
The MCP4921 uses a SPI interface. It could be connected to the SPI daughter board connector, if you are not using that SPI bus for anything else (temperature daughter board, 12864 display or external SD card).
If you need to drive more than one galvo motor then the AD5724 quad DAC might be simpler to use. It can produce -5V to +5V output directly, so the op amp would not be needed.
-
@dc42 said in SLS 3D printer:
If you need to drive more than one galvo motor
I thought the same: there's only need for one fast galvo and the other mirror can be stepper controlled.
The way I understand it, it's not necessary to be able to move the laser dot to specific coordinates, it's more like a reciprocrating scan process which could be done analog-only.
In 'my days' we'd built a wave-generator from Op amps only (see-saw or triangle shape). -
@o_lampe if you just need to scan the galvo then you could indeed use a different mechanism; for example an op amp configured as an integrator (using a metal film capacitor for linearity, not ceramic) along with some small mosfets controlled from digital pins on the Duet to scan fowards or reverse or hold position.
-
Thank you very much for so many constructive inputs.
I also decided to set the galvo system up as with the scanning principle, but it will cost a lot of unnecessary movements, but it is probably the easiest.
Could you not make a giude in the duet 3D documentacion, I think it has many people's interests.
-
@SLS-3D
Just wondering if you could use a standard 0-10V PWM to analog converter? You'd have to setup a "virtual GND" for the galvo driver to see +/- 5V.
Could be as simple as adding a resistor-voltage-divider to the converter output.
I'm not sure if that's possible? These PWM converters can't deliver the power required to feed the galvo. It's just a signal level solution.
But you would then have digital control over the whole galvo scan process. -
@o_lampe I doubt that a standard PWM-to-voltage converter would be fast enought for this application, because they work by smoothing the PWM.
-
@dc42
The circuit I had in mind can convert upto 3kHz PWM.
That's 3000 galvo positions per second. Given a dot size of 0.1mm, that's 300mm per second. (max)
A square layer of 300x300 would take 50 seconds. Because it's digitally controlled @SLS-3D could scan a smaller area.
Not too bad IMHO, considering the converter is ready for sale.
Any other PCB doesn't exist yet. Neither the analog-only nor the MCP4921 version. -
Hi guys, I've tried with a stepper motor in a galvo set-up.
I think that could easily work with the right leverage and it would require less hardware complexity and I would be able to control the speed.
As I see it, the biggest problem is setting up the axis geometry.
Has anyone done something similar or do I need to set up a new kinematic? -
@SLS-3D This guy {external link} has done it and also links to his sources about error correction.
He's using a 600Mhz teensy4.0 for it, fed with gcode by an RPi? So the bottleneck doesn't seem to be the stepper speed??My impression is, that the stepper might be fast enough, but lacks true resolution. Microstepping isn't as accurate as we wish.
That's OK for a laser-show, but your SLS printed parts might show some imperfections. -
Thanks I will try it out.
-