ability to control the pulsation and power of a laser

Hello everyone
I currently have an Arduino Uno and I would like with him to be able to adjust the power in W and the pulsations in ns of a laser. in order to do various experiments ...

Do you know if technically it is possible?

I plan to buy this type of laser:

as well as a cnc v4 shield.

can you tell me if this type of material allows me to do what I want?

Personally, I thought to pulse my laser with the PWM and adjust its power with a potentiometer.
but I do not know if this idea is wise I await your answers.

Thank you all

Where did the ns specification come from? Do you mean milliseconds?

There are lots of Arduino laser engraver projects on the web.

sorry ns means nanosecond.

In all the projects I have seen so far, people are using PWM to drive the laser to reduce its power depending on the materials to be etched.

and me what I would like is to be able to adjust the pulsation in nanoseconds of the laser and to be able to adjust its power by directly varying its intensity, but I do not know if it is possible?

I don't see any detailed specs, but it says "TTL PWM" which would be compatible with the Arduino's 5V PWM.

and the pulsations in ns of a laser.

The default Arduino PWM frequency is about 500Hz but that's probably OK. (It can be increased.)

Note that the PWM capability has to be built-into the power supply. You can't PWM a "normal laser" because there is a feedback circuit that keeps the light-level constant and if it's not designed for PWM the feedback will "fight" to keep the laser output constant and it won't work properly.

Be careful! A 2W laser is dangerous!

OK, so you think the arduino is able to pulse the laser without any problem in nanoseconds, so if I want to pulse between 25 and 50 ns, I would not have a problem?

the laser module that I chose is normally compatible with the PWM, so it should normally work directly on the output PWM of the Arduino no?

after that, it only remains to vary its power because I do not want it all the time to 2 W. I wish I could put a potentiometer between the Arduino and the driver of the laser to change its intensity. I do not know if Delas would work?

after the security level, there is normally no problem
the laser will only work in a closed and opaque area to prevent rays from entering our eyes (obviously, I would have more glasses)

No, the Arduino cannot do accurate timing down to nanoseconds. With a 16MHz clock, its smallest unit of time is 62ns.

But perhaps there is a chip which can do this and can be controlled by an Arduino.

ok in this case I should rather use a raspberry? but is the laser physically able to really pulsate in the ns?

I didn't read your link. Maybe. It seems to be an unusual timing required.

I've never done laser engraving but I'm pretty sure you don't need such short pulses... i.e. Probably nothing is going to happen in 1mS from a 2W laser.

The nanosecond spec might be the fastest it can respond.

8-bit PWM goes from 0-255 so a PWM value of 1 gives you average power of less than 10mW, regardless of the frequency.

my goal is not to engrave. I wish I could break down one glued material into another without breaking down the second ...
for this reason, it is advisable to have the shortest pulse possible of the order of one nanosecond (between 30 and 80 nanoseconds).
For the programming of the Arduino PWM, we just have the possibility to choose a value between 0 and 255?

I wonder if the laser is physically able to pulse at this rate and if the Arduino can couple a raspberry to get the heartbeat that I want.

So get a less-powerful laser. A 2mW laser pulsed in microseconds will do the same job.

Yes it is possible that the necessary power is much lower, that's why I would like to place a potentiometer between the output pwm of the arduino and the laser to be able to regulate its intensity and thus its power. But I do not know if it's possible in practice?

Yes it is possible that the necessary power is much lower, that's why I would like to place a potentiometer between the output pwm of the arduino and the laser to be able to regulate its intensity and thus its power. But I do not know if it's possible in practice?

You can't regulate the "intensity" of a laser. It is either on or off. You can only regulate the time on and the time off, which is what you initially asked about.


PWM + potentiometer = bad idea.

If you actually kow how much power you need then maybe there are some good ideas waiting to help you.

ha ok thanks. it means that we can not ask a laser that makes 2 W to make 1 W (except thanks to the PWM pulse)
then in this case, the only possibility is to buy several lasers of different powers to compare them?

at this link:
http://chezcyril.over-blog.com/2018/07/ajouter-un-variateur-pwm/ttl-manuel-pour-tete-laser-a-une-carte-de-pilotage-eleks-ou-logiciel- benbox.html

I found a person who changed the power of his laser with a PWM manual potentiometer what exactly? What is the difference with the integrated PWM on the Arduino board?

Think of the light from your laser as a voltage from, say, a 9 volt battery. Measure the voltage, 9 volts. Now chop the connections to the battery up into tiny time segments. How much voltage of each segment? Still 9 volts.

How much work, power, will the 9 volt battery produce? Chop the 9 volts up and how much work or power will it produce. The amount relates to the time the 9 volts is connected.

The same principal relates to the light produced by your laser. The light intensity, or voltage, remains the same, no matter how many times you chop it up. The resulting "power" is changed.

Your 2 watt laser is CW or continuous wave or continuously on power. You ALSO need to be able to dissipate the heat produced in the laser by that 2 watts.

The opposite also applies. Laser diodes are temperature sensitive. Today and tomorrow I am placing 5 watt wirewound resistors on small circuit boards that are used to heat laser diodes used in snow plows.


ok ok thanks. I thought that the laser diode worked a little like conventional diodes and that it was enough to decrease or increase their intensity to have more power. obviously it is not true. The only way to reduce the power and use the Arduino PWM that turns off and turns on the laser at full power. so there is no other solution if I understood correctly?

There is an extra space in your link. Help us to help you by making the link clickable with URL tags.

Unfortunately that blog writer didn't give a link to the exact product he bought. It seemed to link to a category search and the first one I clicked on didn't have a specification for frequency.

However, making a guess, I am pretty confident that the blog writer is using PWM pulses in the milliseconds range. ONE MILLION TIMES what you asked for.

It is entirely practical to run a 2W laser at 1W and entirely stupid to try to get nano-watts out if it.