beam dynamics, PPI, vector engraving

415 views
Skip to first unread message

Stefan Hechenberger

unread,
Feb 21, 2013, 8:23:45 AM2/21/13
to lase...@googlegroups.com

So I was dreaming about PPI all night and got up today, hacked a few
lines of code in LasaurGrbl and I got pretty much perfect results. I was
very surprised myself.

I can vector engrave paper down to S5. It's beautiful!
http://www.flickr.com/photos/stfnix/8495138526/in/photostream/

Wood looks great too!
http://www.flickr.com/photos/stfnix/8494039543/in/photostream/

Another cool side effect. I seem to get more power out at 100% as well
*woot!!*.
http://www.flickr.com/photos/stfnix/8495139284/in/photostream/
Before I had to cut this kind of wood at about F1800 (now F2400).

Here is the code, or get it streight from the master branch in github:
https://github.com/stefanix/LasaurApp/archive/v13.02e.zip
https://github.com/stefanix/LasaurApp

So why and how ...
------------------

The main problem was the PWM frequency which would peter-out at lower
S-values. The intensity gets adjusted by LasaurGrbl by this formula (at
about 500 times per second):

adjusted_intensity = nominal_intensity * (actual_rate/nominal_rate)

This didn't work in previous tests because if the S-value would go below
a certain threshold the laser would stop firing. With the PWM frequency
set to 488Hz instead of (31KHz) this does not happen and the laser
intensity scales all the way down to S1.

Interestingly at 488Hz the PWM cycle is about 2ms which is similar to
what's used in the PPI article. It seems to be about the timing at which
the laser responds well. And furthermore this is way longer than what
the datasheet suggested (not surprising anymore).

I am also pretty happy that we don't need to introduce a PPI setting in
the interface, at least so it seems. Simpler is better.


--
Stefan Hechenberger
studio: Nortd Labs - labs.nortd.com
resident: F.A.T. Lab - fffff.at
project: Lasersaur - labs.nortd.com/lasersaur

Ira Burton

unread,
Feb 21, 2013, 9:10:05 AM2/21/13
to lase...@googlegroups.com, lase...@googlegroups.com
Great result! I can't wait to try it!

Sent from my mobile
> --
> You received this message because you are subscribed to the Google Groups "lasersaur" group.
> To unsubscribe from this group and stop receiving emails from it, send an email to lasersaur+...@googlegroups.com.
> For more options, visit https://groups.google.com/groups/opt_out.
>
>

Justin Krull

unread,
Feb 21, 2013, 10:38:05 AM2/21/13
to lase...@googlegroups.com
Low PPI ~300-500 settings are better for wood , where there is charring. If you want glass edges on acrylic, you need a high PPI ~3000-5000 setting. It would definitely be a good idea to introduce the PPI into the interface.

Steve Baker

unread,
Feb 21, 2013, 10:52:18 AM2/21/13
to lase...@googlegroups.com

The key to keeping the interface simple yet provide the ability to tweak
the settings in this much detail is to have a bunch of presets - and to
reserve the ability to make new presets for the experts.

I'd love to see a way to set the power/speed/PPI settings for each RGB
color in a preset file - and to ship the system with presets for wood,
paper, acrylic, etc.

I'd be OK with having to hand-edit an XML file to add new presets and to
limit the ability to change stuff in the GUI.

For production work, I got so sick of typing 1800/100%, 1800/100% and
4000/50% and clicking the buttons for green, red and blue that I ended up
hacking the JavaScript to default them that way!

I wish there were more hours in the day - I'd go implement it myself.

-- Steve
-- Steve

Justin Krull

unread,
Feb 21, 2013, 10:53:37 AM2/21/13
to lase...@googlegroups.com
Here's a calculation to illustrate my point. Your lasersaur wood cutout at 2400 mm/min was at about 300 PPI, which is great for wood. If you cut out of acrylic, the results would be poor because the PPI desired (3000) is about 10 times as much. We absolutely need PPI in the user interface to adjust the PWM frequency. Try changing the speed in the attached spreadsheet to see for yourself.

Inline image 1

We would have to cut at 250mm/min to get the desired PPI for acrylic. I just don't think this is acceptable.

Inline image 2
image.png
image.png
PPI without Variable PWM Freq (21-FEB-2013).xlsx

Justin Krull

unread,
Feb 21, 2013, 10:55:16 AM2/21/13
to lase...@googlegroups.com
"Calculated" isn't the correct label for the blue cells, it should be "fixed".
image.png
image.png

Justin Krull

unread,
Feb 21, 2013, 11:42:53 AM2/21/13
to lase...@googlegroups.com
It looks like we have to change the TOP value to adjust the frequency finely.

Inline image 1


I'm using the new spreadsheet I attached to take a stab at the maximum and minimum PWM frequencies we need. Assuming the lowest PPI (10) is the same as Epilog and the lowest speed we would want to cut at is 100 mm/min, here are the results for the low side:

Inline image 1

Assuming the highest PPI (5000) is the same as Epilog and the highest speed we would want to cut at is 10000 mm/min, here are the results for the high side:

Inline image 2
image.png
image.png
image.png
image.png
image.png
PPI with Variable PWM Freq (21-FEB-2013).xlsx

Justin Krull

unread,
Feb 21, 2013, 11:47:22 AM2/21/13
to lase...@googlegroups.com
Whoops, I definitely meant to show 10000 mm/min on the high side. Here's the corrected image:
Inline image 1
image.png
image.png
image.png
image.png
image.png
image.png

Kevin

unread,
Feb 21, 2013, 12:18:42 PM2/21/13
to lase...@googlegroups.com
Totally agree with Justin.

We just did some quick tests here. 
We've been cutting two batches of 100x100mm 90 deg. triangles. Changing the power and keeping the speed fixed, and vice versa.

Results:
- The beam is obviously pulsing. 
- Keeping the power steady, you see the "toothing" going down the lower we go on speed. As the laser keeps pulsing at the same rate, slowing the head down will get the pulses closer together.
- Keeping the speed steady, the higher you go with power, the better the resuts. More power, higher frequency of pulses, constant speed, ... .

3 options:
- Cut all acrylic at S255, but for that to be an option the system should be stable at high speeds.
- Cut acrylic at a ridiculously low speed.
- Make a PPI system to control the "pulse resolution".

I wish I could be of any use on the latter.

Regarding Steve's comment, I have been thinkering with a materials database implemented in the front end. 
It's nowhere near finished, but I'll share it somewhere when it's in a somewhat working state. It might even be an idea to have a shared database, maybe linked to the materials list.

Justin Krull

unread,
Feb 21, 2013, 12:39:33 PM2/21/13
to lase...@googlegroups.com
I'm guessing one of the speeds Kevin tried was 1000 mm/min. With a standard non-PPI firmware, this would give 47625 PPI, which I guarantee cannot be met by the laser tube/power supply (I don't know what the failure mode is for a pulse rate that's too high, but attempting to pulse the laser at a higher rate than it's capable of could be the reason for the toothing). We definitely need to lower the PWM frequency.

Inline image 2

I am a very strong advocate of variable PWM to allow user-controlled PPI. : )
image.png

Kevin

unread,
Feb 21, 2013, 2:24:15 PM2/21/13
to lase...@googlegroups.com
Woop, right, testinfo:

- fixed speed, variable power: F1000 S110-150-190-230
- variable speed, fixed power: F1500-1000-600-300 S140

Justin Krull

unread,
Feb 21, 2013, 2:39:10 PM2/21/13
to lase...@googlegroups.com
If you wanted something really, really, really rough, you could change the prescaler to make the PWM frequency correspond to the below settings. It looks like a prescaler of 8 would work best for plastic and 64 for wood. I don't guarantee these and it will definitely change the "normal" settings you would use for any given material or thickness using a prescaler of 1.

Again, for a final solution, we need to change the operation of the code to vary the PWM frequency to guarantee a constant PPI with varying speed.

Inline image 1

image.png
Laser PWM Freq Prescaler (21-FEB-2013).xlsx

Justin Krull

unread,
Feb 21, 2013, 3:13:43 PM2/21/13
to lase...@googlegroups.com
Stefan,

Can you post the latest LasaurGrbl code for the LasaurShield? I don't see it here


Justin


--
You received this message because you are subscribed to the Google Groups "lasersaur" group.
To unsubscribe from this group and stop receiving emails from it, send an email to lasersaur+unsubscribe@googlegroups.com.

Stefan Hechenberger

unread,
Feb 21, 2013, 7:35:16 PM2/21/13
to lase...@googlegroups.com

I think adding a gcode command to configure the PWM freq is reasonable.
I'll add this to the TODO list. Unfortunately I will be busy next week
but should have some time for this soon. If you want to give it a try
that would be great.

When I tried a prescaler of 8 I wasn't able to get a laser output for <
S30. So a freq much higher than 4KHz is probably not suitable for
low-power cutting.

--
Stefan Hechenberger
studio: Nortd Labs - labs.nortd.com
resident: F.A.T. Lab - fffff.at
project: Lasersaur - labs.nortd.com/lasersaur

On 02/21/2013 08:39 PM, Justin Krull wrote:
> If you wanted something really, really, really rough, you could change
> the prescaler to make the PWM frequency correspond to the below
> settings. It looks like a prescaler of 8 would work best for plastic and
> 64 for wood. I don't guarantee these and it will definitely change the
> "normal" settings you would use for any given material or thickness
> using a prescaler of 1.
>
> Again, for a final solution, we need to change the operation of the code
> to vary the PWM frequency to guarantee a constant PPI with varying speed.
>
> Inline image 1
>
>
>
> On Thu, Feb 21, 2013 at 11:24 AM, Kevin <ke...@buskruit.be
> <mailto:ke...@buskruit.be>> wrote:
>
> Woop, right, testinfo:
>
> - fixed speed, variable power: F1000 S110-150-190-230
> - variable speed, fixed power: F1500-1000-600-300 S140
>
>
> On Thursday, February 21, 2013 6:39:33 PM UTC+1, Justin Krull wrote:
>
> I'm guessing one of the speeds Kevin tried was 1000 mm/min. With
> a standard non-PPI firmware, this would give 47625 PPI, which I
> guarantee cannot be met by the laser tube/power supply (I don't
> know what the failure mode is for a pulse rate that's too high,
> but attempting to pulse the laser at a higher rate than it's
> capable of could be the reason for the toothing). We definitely
> need to lower the PWM frequency.
>
> Inline image 1
>
> We would have to cut at 250mm/min to get the desired PPI
> for acrylic. I just don't think this is acceptable.
>
> Inline image 2
>
>
> On Thu, Feb 21, 2013 at 7:38 AM, Justin Krull
> <JTbi...@gmail.com> wrote:
>
> Low PPI ~300-500 settings are better for wood ,
> where there is charring. If you want glass edges on
> acrylic, you need a high PPI ~3000-5000 setting. It
> would definitely be a good idea to introduce the PPI
> into the interface.
>
>
> On Thu, Feb 21, 2013 at 6:10 AM, Ira Burton
> <ira.b...@gmail.com> wrote:
>
> Great result! I can't wait to try it!
>
> Sent from my mobile
>
> On Feb 21, 2013, at 6:23 AM, Stefan Hechenberger
> <ste...@nortd.com> wrote:
>
> >
> > So I was dreaming about PPI all night and got
> up today, hacked a few lines of code in
> LasaurGrbl and I got pretty much perfect
> results. I was very surprised myself.
> >
> > I can vector engrave paper down to S5. It's
> beautiful!
> >
> http://www.flickr.com/photos/__s__tfnix/8495138526/in/__photostrea__m/
> http://www.flickr.com/photos/__s__tfnix/8494039543/in/__photostrea__m/
> <http://www.flickr.com/photos/stfnix/8494039543/in/photostream/>
> >
> > Another cool side effect. I seem to get more
> power out at 100% as well *woot!!*.
> >
> http://www.flickr.com/photos/__s__tfnix/8495139284/in/__photostrea__m/
> <http://www.flickr.com/photos/stfnix/8495139284/in/photostream/>
> > Before I had to cut this kind of wood at
> about F1800 (now F2400).
> >
> > Here is the code, or get it streight from the
> master branch in github:
> >
> https://github.com/stefanix/__La__saurApp/archive/v13.02e.zip
> <https://github.com/stefanix/LasaurApp/archive/v13.02e.zip>
> > https://github.com/stefanix/__La__saurApp
> <http://labs.nortd.com>
> > resident: F.A.T. Lab - fffff.at <http://fffff.at>
> > project: Lasersaur - labs.nortd.com/lasersaur
> <http://labs.nortd.com/lasersaur>
> >
> > --
> > You received this message because you are
> subscribed to the Google Groups "lasersaur" group.
> > To unsubscribe from this group and stop
> receiving emails from it, send an email to
> lasersaur+...@__googlegroups.com__.
>
> > For more options, visit
> https://groups.google.com/__grou__ps/opt_out
> <https://groups.google.com/groups/opt_out>.
> >
> >
>
> --
> You received this message because you are
> subscribed to the Google Groups "lasersaur" group.
> To unsubscribe from this group and stop
> receiving emails from it, send an email to
> lasersaur+...@__googlegroups.com__.
>
> For more options, visit
> https://groups.google.com/__grou__ps/opt_out
> <https://groups.google.com/groups/opt_out>.
>
>
>
>
> --
> You received this message because you are subscribed to the
> Google Groups "lasersaur" group.
> To unsubscribe from this group and stop receiving emails
> from it, send an email to lasersaur+...@__googlegroups.com.
> For more options, visit
> https://groups.google.com/__groups/opt_out
> <https://groups.google.com/groups/opt_out>.
>
>
>
> --
> You received this message because you are subscribed to the Google
> Groups "lasersaur" group.
> To unsubscribe from this group and stop receiving emails from it,
> send an email to lasersaur+...@googlegroups.com
> <mailto:lasersaur%2Bunsu...@googlegroups.com>.

Stefan Hechenberger

unread,
Feb 21, 2013, 7:51:17 PM2/21/13
to lase...@googlegroups.com

Just merged it into the master branch (all the new stuff was in the
driveboard branch).

If you want to compile the new code for the LasaurShield you have to
comment out the "#define DRIVEBOARD" line.

FYI: LasaurApp has the latest LasaurShield firmware bundled (Admin/Flash
LasaurShield Firmware). It's not tested but the DRIVEBOARD #-define is
carefully crafted. Let me know how it goes.

--
Stefan Hechenberger
studio: Nortd Labs - labs.nortd.com
resident: F.A.T. Lab - fffff.at
project: Lasersaur - labs.nortd.com/lasersaur

On 02/21/2013 09:13 PM, Justin Krull wrote:
> Stefan,
>
> Can you post the latest LasaurGrbl code for the LasaurShield? I don't
> see it here
>
> https://github.com/stefanix/LasaurGrbl
>
> Justin
>
>
> On Thu, Feb 21, 2013 at 5:23 AM, Stefan Hechenberger <ste...@nortd.com
> <mailto:ste...@nortd.com>> wrote:
>
>
> So I was dreaming about PPI all night and got up today, hacked a few
> lines of code in LasaurGrbl and I got pretty much perfect results. I
> was very surprised myself.
>
> I can vector engrave paper down to S5. It's beautiful!
> http://www.flickr.com/photos/__stfnix/8495138526/in/__photostream/
> http://www.flickr.com/photos/__stfnix/8494039543/in/__photostream/
> <http://www.flickr.com/photos/stfnix/8494039543/in/photostream/>
>
> Another cool side effect. I seem to get more power out at 100% as
> well *woot!!*.
> http://www.flickr.com/photos/__stfnix/8495139284/in/__photostream/
> <http://www.flickr.com/photos/stfnix/8495139284/in/photostream/>
> Before I had to cut this kind of wood at about F1800 (now F2400).
>
> Here is the code, or get it streight from the master branch in github:
> https://github.com/stefanix/__LasaurApp/archive/v13.02e.zip
> <https://github.com/stefanix/LasaurApp/archive/v13.02e.zip>
> https://github.com/stefanix/__LasaurApp
> <https://github.com/stefanix/LasaurApp>
>
> So why and how ...
> ------------------
>
> The main problem was the PWM frequency which would peter-out at
> lower S-values. The intensity gets adjusted by LasaurGrbl by this
> formula (at about 500 times per second):
>
> adjusted_intensity = nominal_intensity * (actual_rate/nominal_rate)
>
> This didn't work in previous tests because if the S-value would go
> below a certain threshold the laser would stop firing. With the PWM
> frequency set to 488Hz instead of (31KHz) this does not happen and
> the laser intensity scales all the way down to S1.
>
> Interestingly at 488Hz the PWM cycle is about 2ms which is similar
> to what's used in the PPI article. It seems to be about the timing
> at which the laser responds well. And furthermore this is way longer
> than what the datasheet suggested (not surprising anymore).
>
> I am also pretty happy that we don't need to introduce a PPI setting
> in the interface, at least so it seems. Simpler is better.
>
>
> --
> Stefan Hechenberger
> studio: Nortd Labs - labs.nortd.com <http://labs.nortd.com>
> resident: F.A.T. Lab - fffff.at <http://fffff.at>
> project: Lasersaur - labs.nortd.com/lasersaur
> <http://labs.nortd.com/lasersaur>
>
> --
> You received this message because you are subscribed to the Google
> Groups "lasersaur" group.
> To unsubscribe from this group and stop receiving emails from it,
> send an email to lasersaur+unsubscribe@__googlegroups.com
> <mailto:lasersaur%2Bunsu...@googlegroups.com>.
> For more options, visit https://groups.google.com/__groups/opt_out
> <https://groups.google.com/groups/opt_out>.
>
>
>
> --
> You received this message because you are subscribed to the Google
> Groups "lasersaur" group.
> To unsubscribe from this group and stop receiving emails from it, send
> an email to lasersaur+...@googlegroups.com.

Kevin

unread,
Feb 22, 2013, 5:24:28 PM2/22/13
to lase...@googlegroups.com
Stefan, are you using the TH pin on the laser PSU to control it? 
We were able to go down from 30 to 20 with the new adjustments, but below that it won't fire. I'm guessing it might be related to the fact that we're using the analog IN.

Stefan Hechenberger

unread,
Feb 23, 2013, 5:54:34 AM2/23/13
to lase...@googlegroups.com

Right, we are using the TH pin. We also tie the IN pin to the PSU's 5V
pin but this depends how you have trimmed the output. We noticed the
factory trim typically requires this. If IN is left disconnected the
laser does not fire at full power.

--
Stefan Hechenberger
studio: Nortd Labs - labs.nortd.com
resident: F.A.T. Lab - fffff.at
project: Lasersaur - labs.nortd.com/lasersaur

On 02/22/2013 11:24 PM, Kevin wrote:
> Stefan, are you using the TH pin on the laser PSU to control it?
> We were able to go down from 30 to 20 with the new adjustments, but
> below that it won't fire. I'm guessing it might be related to the fact
> that we're using the analog IN.
>
> On Thursday, February 21, 2013 2:23:45 PM UTC+1, stefanix wrote:
>
>
> So I was dreaming about PPI all night and got up today, hacked a few
> lines of code in LasaurGrbl and I got pretty much perfect results. I
> was
> very surprised myself.
>
> I can vector engrave paper down to S5. It's beautiful!
> http://www.flickr.com/photos/stfnix/8495138526/in/photostream/
> <http://www.flickr.com/photos/stfnix/8495138526/in/photostream/>
>
> Wood looks great too!
> http://www.flickr.com/photos/stfnix/8494039543/in/photostream/
> <http://www.flickr.com/photos/stfnix/8494039543/in/photostream/>
>
> Another cool side effect. I seem to get more power out at 100% as well
> *woot!!*.
> http://www.flickr.com/photos/stfnix/8495139284/in/photostream/
> <http://www.flickr.com/photos/stfnix/8495139284/in/photostream/>
> Before I had to cut this kind of wood at about F1800 (now F2400).
>
> Here is the code, or get it streight from the master branch in github:
> https://github.com/stefanix/LasaurApp/archive/v13.02e.zip
> <https://github.com/stefanix/LasaurApp/archive/v13.02e.zip>
> https://github.com/stefanix/LasaurApp
> <https://github.com/stefanix/LasaurApp>
>
> So why and how ...
> ------------------
>
> The main problem was the PWM frequency which would peter-out at lower
> S-values. The intensity gets adjusted by LasaurGrbl by this formula (at
> about 500 times per second):
>
> adjusted_intensity = nominal_intensity * (actual_rate/nominal_rate)
>
> This didn't work in previous tests because if the S-value would go
> below
> a certain threshold the laser would stop firing. With the PWM frequency
> set to 488Hz instead of (31KHz) this does not happen and the laser
> intensity scales all the way down to S1.
>
> Interestingly at 488Hz the PWM cycle is about 2ms which is similar to
> what's used in the PPI article. It seems to be about the timing at
> which
> the laser responds well. And furthermore this is way longer than what
> the datasheet suggested (not surprising anymore).
>
> I am also pretty happy that we don't need to introduce a PPI setting in
> the interface, at least so it seems. Simpler is better.
>
>
> --
> Stefan Hechenberger
> studio: Nortd Labs - labs.nortd.com <http://labs.nortd.com>
> resident: F.A.T. Lab - fffff.at <http://fffff.at>
> project: Lasersaur - labs.nortd.com/lasersaur
> <http://labs.nortd.com/lasersaur>
>
> --
> You received this message because you are subscribed to the Google
> Groups "lasersaur" group.
> To unsubscribe from this group and stop receiving emails from it, send

Kevin

unread,
Feb 24, 2013, 1:24:12 PM2/24/13
to lase...@googlegroups.com
Switched to the TH mode now, working as expected. There's one difference though, now we're hearing some noise coming from the PSU while we didn't have any using the analog IN.
With our first tries, using the previous version of LasaurApp (the 31Khz version without beam dynamics), we had the high pitched screeching noise that we had when we first powered up our lasersaur a couple of weeks ago. See/hear it here: http://www.flickr.com/photos/beyond_io/8503460779/in/photostream It's pretty loud, definitely not ear-friendly.
When we switched to the latest version of LasaurApp, running at lower frequency, the noise changed to a much lower pitch, reasonable to the ear, more like a microwave.

Questions:
- Is the noise normal? Or is there something wrong with our PSU?
- Because of the noise we also noticed the TH is actually also being pulsed while the head is moving without actually being fired. So if I understand correctly, whenever the head moves, the PWM is active but the laser doesn't fire because the ground is disconnected. It seems weird that the PWM gets activated when it doesn't have to fire anyway. Any reason for that/couldn't it be potentially "bad" for the PSU?

Stefan Hechenberger

unread,
Feb 24, 2013, 2:55:25 PM2/24/13
to lase...@googlegroups.com

good the hear it's quieter. It was fairly loud before. Although I don't
know if it's with in the normal range. Our PSU is certainly much quiter
even when PWM'd at 31KHz.

The PWM signal should be off during G0 seek motions. Although it's true
that the firmware does not swithe off the PWM when the door is opened or
the chiller is switched off. In these cases the laser is switched off
via the WP interlock and starts firing again as soon the the WP pin is
pulled low.

--
Stefan Hechenberger
studio: Nortd Labs - labs.nortd.com
resident: F.A.T. Lab - fffff.at
project: Lasersaur - labs.nortd.com/lasersaur

> studio: Nortd Labs - labs.nortd.com <http://labs.nortd.com>
> resident: F.A.T. Lab - fffff.at <http://fffff.at>
> project: Lasersaur - labs.nortd.com/lasersaur
> <http://labs.nortd.com/lasersaur>
>
> > <http://labs.nortd.com/lasersaur
> <http://labs.nortd.com/lasersaur>>
> >
> > --
> > You received this message because you are subscribed to the Google
> > Groups "lasersaur" group.
> > To unsubscribe from this group and stop receiving emails from it,
> send
> > an email to lasersaur+...@googlegroups.com <javascript:>.
> > For more options, visit https://groups.google.com/groups/opt_out
> <https://groups.google.com/groups/opt_out>.

Kevin

unread,
Feb 25, 2013, 4:50:39 AM2/25/13
to lase...@googlegroups.com
Regarding the PPI idea, is it correct to assume that if we want to have high PPI at low power, that we'll also have to modulate the voltage on the IN port?
Or am I misunderstanding how the PWM works? As I understand it, depending on the power we set, the PWM is lower/higher and the laser pulses at a lower/higher rate.
So if we would want to pulse at high rate but low power e.g. engraving acrylic, we'd have to PWM at high frequency but lower the IN voltage to get a lower power output from the laser.

Stefan Hechenberger

unread,
Feb 25, 2013, 9:08:03 AM2/25/13
to lase...@googlegroups.com

Yes we might have to control the IN input as well (we do have second pwm
line available, "aux2") instead of wiring it to 5V.

It depends if get inconsistencies in output as we mess around with the
PWM frequency. Preferably I would like to stick with controlling PWM
frequency and duty cycle on TH.

We will know once we test all the edge cases. With the 0.5KHz setting
this intensity has been very consistent so far but it's also too slow
for higher speeds. For example when running half intensity at over
2000mm/min the pulses start to show up.

BTW: I was able to get smooth edges on acrylic with the new LasaurApp.
http://www.flickr.com/photos/stfnix/8503600689/in/photostream


--
Stefan Hechenberger
studio: Nortd Labs - labs.nortd.com
resident: F.A.T. Lab - fffff.at
project: Lasersaur - labs.nortd.com/lasersaur

On 02/25/2013 10:50 AM, Kevin wrote:
> Regarding the PPI idea, is it correct to assume that if we want to have
> high PPI at low power, that we'll also have to modulate the voltage on
> the IN port?
> Or am I misunderstanding how the PWM works? As I understand it,
> depending on the power we set, the PWM is lower/higher and the laser
> pulses at a lower/higher rate.
> So if we would want to pulse at high rate but low power e.g. engraving
> acrylic, we'd have to PWM at high frequency but lower the IN voltage to
> get a lower power output from the laser.
>
> On Sunday, February 24, 2013 8:55:25 PM UTC+1, stefanix wrote:
>
>
> good the hear it's quieter. It was fairly loud before. Although I don't
> know if it's with in the normal range. Our PSU is certainly much quiter
> even when PWM'd at 31KHz.
>
> The PWM signal should be off during G0 seek motions. Although it's true
> that the firmware does not swithe off the PWM when the door is
> opened or
> the chiller is switched off. In these cases the laser is switched off
> via the WP interlock and starts firing again as soon the the WP pin is
> pulled low.
>
> --
> Stefan Hechenberger
> studio: Nortd Labs - labs.nortd.com <http://labs.nortd.com>
> resident: F.A.T. Lab - fffff.at <http://fffff.at>
> project: Lasersaur - labs.nortd.com/lasersaur
> <http://labs.nortd.com/lasersaur>
>

Kevin

unread,
Feb 25, 2013, 9:18:34 AM2/25/13
to lase...@googlegroups.com
Righty.

I've mailed Coletech regarding the noise issue too, their engineer was going to have a look at it.
We also managed to get good results with acrylic at low speeds/high power. The issue still remains that when you're cutting thinner acrylic, 2-3mm, you shouldn't have to go that slow or use that amount of power. When you do, you get some serious flashback. So if you adjust your power/speed to a lower amount for thin acrylic, the "toothing" appears again.

Kevin

unread,
Feb 26, 2013, 4:35:02 PM2/26/13
to lase...@googlegroups.com
To be able to cut 2mm acrylic with a good, smooth edges we ran a small test, with "great success" :)
Using the "latest" laser PSU wiring (TH en 5V on IN) we basically just put a 10kOhm pot meter between the 5V and the IN. This allowed us to manually regulate the laser power, setting it lower, while still being able to use high frequency pulsing (S255) to get nice, glassy edges on thin acrylic.

As I understand it, S values seem to also define the frequency at which the laser is pulsing combined with defining the actual output power. (First I thought it was just the frequency which defined the power, less power, less pulses, but that seems a bit awkward) S255 obviously pulses at a higher rate compared to lower values which show serious "dotting" (I would say about double the frequency). So what we basically did now, is manually adjust the max output power S255 can reach, while still keeping the same high pulse frequency.

Which brings us to a question. Is this solvable with just code by changing how we're controlling the PSU atm? Do we control the fact that S255 is actually pulsing at a higher rate (is the laser actually pulsing at the same rate as the PWM that enters the TH?) or is that just "happening"? Obviously our solution isn't a long term one but it works as a temporary solution for now.

Curious to hear peoples thoughts on this!


On Thursday, February 21, 2013 2:23:45 PM UTC+1, stefanix wrote:

Stefan Hechenberger

unread,
Feb 27, 2013, 5:34:57 AM2/27/13
to lase...@googlegroups.com


Kevin, the freq is currently constant (0.5kHz). We were just planing on
making it adjustable. The S-value controls the nominal PWM duty cycle.

If you set S255 and regulate IN down you basically get a continuous beam
whenever running at nominal velocity.

The only difference is that the new firmware now adjusts the duty cycle
whenever the laser head runs slower than the nominal feedrate. So in a
corner the S-value and therefor the duty cycle is reduced.


--
Stefan Hechenberger
studio: Nortd Labs - labs.nortd.com
resident: F.A.T. Lab - fffff.at
project: Lasersaur - labs.nortd.com/lasersaur

> <https://github.com/stefanix/LasaurApp/archive/v13.02e.zip>
> https://github.com/stefanix/LasaurApp
> <https://github.com/stefanix/LasaurApp>
>
> So why and how ...
> ------------------
>
> The main problem was the PWM frequency which would peter-out at lower
> S-values. The intensity gets adjusted by LasaurGrbl by this formula (at
> about 500 times per second):
>
> adjusted_intensity = nominal_intensity * (actual_rate/nominal_rate)
>
> This didn't work in previous tests because if the S-value would go
> below
> a certain threshold the laser would stop firing. With the PWM frequency
> set to 488Hz instead of (31KHz) this does not happen and the laser
> intensity scales all the way down to S1.
>
> Interestingly at 488Hz the PWM cycle is about 2ms which is similar to
> what's used in the PPI article. It seems to be about the timing at
> which
> the laser responds well. And furthermore this is way longer than what
> the datasheet suggested (not surprising anymore).
>
> I am also pretty happy that we don't need to introduce a PPI setting in
> the interface, at least so it seems. Simpler is better.
>
>
> --
> Stefan Hechenberger
> studio: Nortd Labs - labs.nortd.com <http://labs.nortd.com>
> resident: F.A.T. Lab - fffff.at <http://fffff.at>
> project: Lasersaur - labs.nortd.com/lasersaur
> <http://labs.nortd.com/lasersaur>
>

Kevin

unread,
Feb 27, 2013, 9:27:25 AM2/27/13
to lase...@googlegroups.com
So are you saying the laser beam is always continuous, regardless the S-value? Because like we see it in acrylic, the lower the S-value, the more the beam pulsing gets visible in the material.  That's why I'm asking if we know where this is actually coming from.

Stefan Hechenberger

unread,
Feb 27, 2013, 10:10:41 AM2/27/13
to lase...@googlegroups.com

Not quite ... when the head moves at nominal feedrate (F-value) then the
laser fires at nominal intensity (S-value). If the head moves slower
than nominal speed (which it often does in accel/decel phases) it fires
at lower intensities.

The intensity is modulated by the duty cycle of the PWM. This is the
percentage of time it is on for every PWM cycle.

The laser is only continuous when you set the intensity to 100%
(S-val:255) and then only when the head is moving a nominal feedrate.

I think the reason you see more of the pulsing in the cut at lower
S-values is because the laser beam and focus has an energy gradient,
strongest in the center. The longer the beam fires the bigger the hole
gets, the closer the individual perforation holes.

--
Stefan Hechenberger
studio: Nortd Labs - labs.nortd.com
resident: F.A.T. Lab - fffff.at
project: Lasersaur - labs.nortd.com/lasersaur

On 02/27/2013 03:27 PM, Kevin wrote:
> So are you saying the laser beam is always continuous, regardless the
> S-value? Because like we see it in acrylic, the lower the S-value, the
> more the beam pulsing gets visible in the material. That's why I'm
> asking if we know where this is actually coming from.
>
> On Wednesday, February 27, 2013 11:34:57 AM UTC+1, stefanix wrote:
>
>
>
> Kevin, the freq is currently constant (0.5kHz). We were just planing on
> making it adjustable. The S-value controls the nominal PWM duty cycle.
>
> If you set S255 and regulate IN down you basically get a continuous
> beam
> whenever running at nominal velocity.
>
> The only difference is that the new firmware now adjusts the duty cycle
> whenever the laser head runs slower than the nominal feedrate. So in a
> corner the S-value and therefor the duty cycle is reduced.
>
>
> --
> Stefan Hechenberger
> studio: Nortd Labs - labs.nortd.com <http://labs.nortd.com>
> resident: F.A.T. Lab - fffff.at <http://fffff.at>
> project: Lasersaur - labs.nortd.com/lasersaur
> <http://labs.nortd.com/lasersaur>
>
> > <http://labs.nortd.com/lasersaur
> <http://labs.nortd.com/lasersaur>>
> >
> > --
> > You received this message because you are subscribed to the Google
> > Groups "lasersaur" group.
> > To unsubscribe from this group and stop receiving emails from it,
> send
> > an email to lasersaur+...@googlegroups.com <javascript:>.
> > For more options, visit https://groups.google.com/groups/opt_out
> <https://groups.google.com/groups/opt_out>.

Kevin

unread,
Mar 3, 2013, 6:22:35 AM3/3/13
to lase...@googlegroups.com
The laser is only continuous when you set the intensity to 100% 
(S-val:255) and then only when the head is moving a nominal feedrate. 

So the laser is continuously pulsing below S255 then?
How would we control the PPI setting through the laser PSU?
Sorry for all the questions, I'm just trying to wrap my head around it.

Stefan Hechenberger

unread,
Mar 3, 2013, 8:37:34 AM3/3/13
to lase...@googlegroups.com

You can control the PPI by adjusting the PWM frequency to the head
speed, strictly speaking.

We currently adjust the PWM duty cycle to the head speed. This has the
same effect assuming the laser emission is constant throughout each
pulse. For many PWM frequencies this is a fairly safe assumption,
practically speaking. For some PWM frequencies this can be distorting
because the laser has an attack in the beginning which means a pulse
that is twice as long does not necessarily deposit twice as much energy
into the material.

makes sense?

--
Stefan Hechenberger
studio: Nortd Labs - labs.nortd.com
work: Institut f�r Experimentelle Architektur, UIBK
resident: F.A.T. Lab - fffff.at
project: Lasersaur - labs.nortd.com/lasersaur

On 03/03/2013 12:22 PM, Kevin wrote:
> The laser is only continuous when you set the intensity to 100%
> (S-val:255) and then only when the head is moving a nominal feedrate.
>
>
> So the laser is continuously pulsing below S255 then?
> How would we control the PPI setting through the laser PSU?
> Sorry for all the questions, I'm just trying to wrap my head around it.
>
>
> On Wednesday, February 27, 2013 4:10:41 PM UTC+1, stefanix wrote:
>
>
> Not quite ... when the head moves at nominal feedrate (F-value) then
> the
> laser fires at nominal intensity (S-value). If the head moves slower
> than nominal speed (which it often does in accel/decel phases) it fires
> at lower intensities.
>
> The intensity is modulated by the duty cycle of the PWM. This is the
> percentage of time it is on for every PWM cycle.
>
> The laser is only continuous when you set the intensity to 100%
> (S-val:255) and then only when the head is moving a nominal feedrate.
>
> I think the reason you see more of the pulsing in the cut at lower
> S-values is because the laser beam and focus has an energy gradient,
> strongest in the center. The longer the beam fires the bigger the hole
> gets, the closer the individual perforation holes.
>
> --
> Stefan Hechenberger

Kevin

unread,
Apr 1, 2013, 12:31:12 PM4/1/13
to lase...@googlegroups.com
Getting back to this subject. 
Regarding the entire PPI thing, our engineer friend believes we're actually not controlling the laser correctly. He thinks the "proper" use would be to control through IN instead of TH.
I have no clue wether this is correct or not but controlling through IN does have it's advantages:
- Controlling through the IN gives you a constant beam (always on) with variable strength, so you never get the "dotting" when your running too fast (e.g. engraving at F4000 S25 generates interesting looking dashes but isn't very useful).
- PPI becomes redundant.

In it's current state, we can control the laser power down to S10, which is more than reasonable, but there are obvious safety issues which makes it "unusable" in it's current state.

Questions:
- Are there any obvious disadvantages/reasons not to switch to IN versus the advantages (always on, no need for PPI)?
- Are the safety issues fixable with just software, or do we need to tweak the hardware for that?

On Thursday, February 21, 2013 2:23:45 PM UTC+1, stefanix wrote:

So I was dreaming about PPI all night and got up today, hacked a few
lines of code in LasaurGrbl and I got pretty much perfect results. I was
very surprised myself.

I can vector engrave paper down to S5. It's beautiful!
http://www.flickr.com/photos/stfnix/8495138526/in/photostream/

Another cool side effect. I seem to get more power out at 100% as well
*woot!!*.
http://www.flickr.com/photos/stfnix/8495139284/in/photostream/
Before I had to cut this kind of wood at about F1800 (now F2400).

Here is the code, or get it streight from the master branch in github:
https://github.com/stefanix/LasaurApp/archive/v13.02e.zip
https://github.com/stefanix/LasaurApp

So why and how ...
------------------

The main problem was the PWM frequency which would peter-out at lower
S-values. The intensity gets adjusted by LasaurGrbl by this formula (at
about 500 times per second):

adjusted_intensity = nominal_intensity * (actual_rate/nominal_rate)

This didn't work in previous tests because if the S-value would go below
a certain threshold the laser would stop firing. With the PWM frequency
set to 488Hz instead of (31KHz) this does not happen and the laser
intensity scales all the way down to S1.

Interestingly at 488Hz the PWM cycle is about 2ms which is similar to
what's used in the PPI article. It seems to be about the timing at which
the laser responds well. And furthermore this is way longer than what
the datasheet suggested (not surprising anymore).

I am also pretty happy that we don't need to introduce a PPI setting in
the interface, at least so it seems. Simpler is better.


--
Stefan Hechenberger
studio: Nortd Labs - labs.nortd.com

Kevin

unread,
Apr 1, 2013, 12:38:47 PM4/1/13
to lase...@googlegroups.com
To back up the way of controlling through the IN:

Looking at the latest wiring I got from Coletech, it does seem like the actual power control should happen through a PWM on the IN and the (T)H and (T)L are only used to switch the laser ON/OFF.
Doesn't seem illogical.

Steve Baker

unread,
Apr 1, 2013, 12:52:26 PM4/1/13
to lase...@googlegroups.com

It would be really nice to have a schematic of the power supply so we can
*REALLY* understand the darned thing without having to parse
chinese-english manuals.

Does anyone have one that they could pull apart and trace the circuits?

-- Steve
> --
> You received this message because you are subscribed to the Google Groups
> "lasersaur" group.
> To unsubscribe from this group and stop receiving emails from it, send an
> email to lasersaur+...@googlegroups.com.
> For more options, visit https://groups.google.com/groups/opt_out.
>
>
>


-- Steve

Stefan Hechenberger

unread,
Apr 1, 2013, 2:54:40 PM4/1/13
to lase...@googlegroups.com

The thing is, yes, we absolutely need to be able to lase in the S0-10
range. If the laser drops out in the lows it will be close to impossible
to engrave intricate detail or even normal corners perfectly, afaik.

Just as an example, a recent bug was causing black dots in the corners
because the firmware would use S1 instead of S0:
http://www.flickr.com/photos/stfnix/8609845233/in/photostream

The only way I can get the Reci lasers super low is by pulsing it at
122Hz (or lower). This frequency works to about F1000 without being
pretty visible. In the latest firmware (on github) I have added some
code which will switch to higher frequencies whenever it can, to
side-step this limitation. It works surprisingly well but still more
control would be nice (e.g. some materials cut better at high PPIs, some
at lower ones).

I think the only way to get full control over these china lasers is by
controlling both TH and IN. This way we could run PWM freqs that
correspond to 100-5000 PPI while still controlling power all the way
down with help of IN.

For calculations:
PPI*(feedrate/25.4/60) = PWMfreq
PWMfreq = 16000/(2*TOP*prescaler)




--
Stefan Hechenberger
studio: Nortd Labs - labs.nortd.com
work: Institut f�r Experimentelle Architektur, UIBK
resident: F.A.T. Lab - fffff.at
project: Lasersaur - labs.nortd.com/lasersaur

> <https://github.com/stefanix/LasaurApp/archive/v13.02e.zip>
> https://github.com/stefanix/LasaurApp
> <https://github.com/stefanix/LasaurApp>
>
> So why and how ...
> ------------------
>
> The main problem was the PWM frequency which would peter-out at lower
> S-values. The intensity gets adjusted by LasaurGrbl by this formula (at
> about 500 times per second):
>
> adjusted_intensity = nominal_intensity * (actual_rate/nominal_rate)
>
> This didn't work in previous tests because if the S-value would go
> below
> a certain threshold the laser would stop firing. With the PWM frequency
> set to 488Hz instead of (31KHz) this does not happen and the laser
> intensity scales all the way down to S1.
>
> Interestingly at 488Hz the PWM cycle is about 2ms which is similar to
> what's used in the PPI article. It seems to be about the timing at
> which
> the laser responds well. And furthermore this is way longer than what
> the datasheet suggested (not surprising anymore).
>
> I am also pretty happy that we don't need to introduce a PPI setting in
> the interface, at least so it seems. Simpler is better.
>
>
> --
> Stefan Hechenberger
> studio: Nortd Labs - labs.nortd.com <http://labs.nortd.com>
> resident: F.A.T. Lab - fffff.at <http://fffff.at>
> project: Lasersaur - labs.nortd.com/lasersaur
> <http://labs.nortd.com/lasersaur>
>

Steve Baker

unread,
Apr 1, 2013, 3:05:00 PM4/1/13
to lase...@googlegroups.com
I agree - doing both PPM and analog should give us more control at the
lower end of the power curve...and since we're generally moving the head
very slowly when the power is set that low, the pulsing should have a very
high spatial frequency and be essentially invisible. Transitioning over
to full analog control at higher head speeds (and, likely, at higher power
too) should eliminate the stitching effect.

It's starting to get worryingly complicated though...doubly so if it's all
independently controllable!

However, that degree of complexity is fixable if we have a widely
accessible and downloadable materials library that provides good defaults
for various operations on those materials.

Does "doing both" also solve the safety issues that you were seeing with
the analog controls?

-- Steve


Stefan Hechenberger wrote:
>
> The thing is, yes, we absolutely need to be able to lase in the S0-10
> range. If the laser drops out in the lows it will be close to impossible
> to engrave intricate detail or even normal corners perfectly, afaik.
>
> Just as an example, a recent bug was causing black dots in the corners
> because the firmware would use S1 instead of S0:
> http://www.flickr.com/photos/stfnix/8609845233/in/photostream
>
> The only way I can get the Reci lasers super low is by pulsing it at
> 122Hz (or lower). This frequency works to about F1000 without being
> pretty visible. In the latest firmware (on github) I have added some
> code which will switch to higher frequencies whenever it can, to
> side-step this limitation. It works surprisingly well but still more
> control would be nice (e.g. some materials cut better at high PPIs, some
> at lower ones).
>
> I think the only way to get full control over these china lasers is by
> controlling both TH and IN. This way we could run PWM freqs that
> correspond to 100-5000 PPI while still controlling power all the way
> down with help of IN.
>
> For calculations:
> PPI*(feedrate/25.4/60) = PWMfreq
> PWMfreq = 16000/(2*TOP*prescaler)
>
>
>
>
> --
> Stefan Hechenberger
> studio: Nortd Labs - labs.nortd.com
> work: Institut für Experimentelle Architektur, UIBK
-- Steve

Stefan Hechenberger

unread,
Apr 1, 2013, 3:33:25 PM4/1/13
to lase...@googlegroups.com

> Does "doing both" also solve the safety issues
yes

Regarding the safety issue see:
https://groups.google.com/d/msg/lasersaur/1deDOtyOovE/vx30EazeDNsJ

It's because of this oddity of the Laser PSU to interpret a disconnected
IN as equivalent to 2V.


--
Stefan Hechenberger
studio: Nortd Labs - labs.nortd.com
work: Institut f�r Experimentelle Architektur, UIBK
resident: F.A.T. Lab - fffff.at
project: Lasersaur - labs.nortd.com/lasersaur

>> work: Institut f�r Experimentelle Architektur, UIBK

alanford354

unread,
Sep 3, 2013, 10:54:32 PM9/3/13
to lase...@googlegroups.com
I was wondering, did a ppi capability make it into the lasersaur software?  I couldn't tell from this thread whether the ppi capability had been added or whether it's still a work in progress.  I'm not a programmer by trade, so reading through the source code has been slow going thus far.

Thanks,
Alan


On Monday, April 1, 2013 3:33:25 PM UTC-4, stefanix wrote:

 > Does "doing both" also solve the safety issues
yes

Regarding the safety issue see:
https://groups.google.com/d/msg/lasersaur/1deDOtyOovE/vx30EazeDNsJ

It's because of this oddity of the Laser PSU to interpret a disconnected
IN as equivalent to 2V.


--
Stefan Hechenberger
studio: Nortd Labs - labs.nortd.com
work: Institut f�r Experimentelle Architektur, UIBK
>> work: Institut f�r Experimentelle Architektur, UIBK

Stefan Hechenberger

unread,
Sep 4, 2013, 7:06:04 AM9/4/13
to lase...@googlegroups.com

The firmware adjusts pwm and pulse frequency according to speed. We get
very constant output already. We can vector engrave paper with very even
browning (!).

http://www.flickr.com/photos/stfnix/8494039175/
http://www.flickr.com/photos/stfnix/8609847859/

In some situations the main limitation is is that we can't pulse the
laser faster than a certain freq. PPI wouldn't change anything to this.
So I think the conclusion in the thread was that it would be great to
also control the analog in on the laser PSU.

--
Stefan Hechenberger
studio: Nortd Labs - labs.nortd.com
work: Institut f�r Experimentelle Architektur, UIBK
resident: F.A.T. Lab - fffff.at
project: Lasersaur - labs.nortd.com/lasersaur

On 09/04/2013 04:54 AM, alanford354 wrote:
> I was wondering, did a ppi capability make it into the lasersaur
> software? I couldn't tell from this thread whether the ppi capability
> had been added or whether it's still a work in progress. I'm not a
> programmer by trade, so reading through the source code has been slow
> going thus far.
>
> Thanks,
> Alan
>
> On Monday, April 1, 2013 3:33:25 PM UTC-4, stefanix wrote:
>
>
> > Does "doing both" also solve the safety issues
> yes
>
> Regarding the safety issue see:
> https://groups.google.com/d/msg/lasersaur/1deDOtyOovE/vx30EazeDNsJ
> <https://groups.google.com/d/msg/lasersaur/1deDOtyOovE/vx30EazeDNsJ>
>
> It's because of this oddity of the Laser PSU to interpret a
> disconnected
> IN as equivalent to 2V.
>
>
> --
> Stefan Hechenberger
> studio: Nortd Labs - labs.nortd.com <http://labs.nortd.com>
> work: Institut f�r Experimentelle Architektur, UIBK
> resident: F.A.T. Lab - fffff.at <http://fffff.at>
> project: Lasersaur - labs.nortd.com/lasersaur
> <http://labs.nortd.com/lasersaur>
>
> >> studio: Nortd Labs - labs.nortd.com <http://labs.nortd.com>
> >> work: Institut f�r Experimentelle Architektur, UIBK
> >> resident: F.A.T. Lab - fffff.at <http://fffff.at>
> >> project: Lasersaur - labs.nortd.com/lasersaur
> <http://labs.nortd.com/lasersaur>
> >>
> <http://labs.nortd.com> <http://labs.nortd.com>
> >>> resident: F.A.T. Lab - fffff.at <http://fffff.at>
> <http://fffff.at>
> >>> project: Lasersaur - labs.nortd.com/lasersaur
> <http://labs.nortd.com/lasersaur>
> >>> <http://labs.nortd.com/lasersaur
> <http://labs.nortd.com/lasersaur>>
> >>>
> >>> --
> >>> You received this message because you are subscribed to the Google
> >>> Groups "lasersaur" group.
> >>> To unsubscribe from this group and stop receiving emails from
> it, send
> >>> an email to lasersaur+...@googlegroups.com.
> >>> For more options, visit
> https://groups.google.com/groups/opt_out
> <https://groups.google.com/groups/opt_out>.
> >>>
> >>>
> >>
> >> --
> >> You received this message because you are subscribed to the
> Google Groups
> >> "lasersaur" group.
> >> To unsubscribe from this group and stop receiving emails from
> it, send an
> >> email to lasersaur+...@googlegroups.com.
> >> For more options, visit https://groups.google.com/groups/opt_out
> <https://groups.google.com/groups/opt_out>.
> >>
> >>
> >>
> >
> >
> > -- Steve
Reply all
Reply to author
Forward
0 new messages