Arduino to constant current source

Hi

I want to drive a laser using an Arduino. Currently, I am driving the laser using a constant current source of 21 mA. The constant current source has been implemented with an opamp.
How can I integrate this circuit to the Arduino?
How can I basically control the laser using the Arduino?

What do you mean by "control"? Simply switching on and off? Dimming using PWM or variable current/voltage? Data transmission?

Please post links to the specs of the LASER and a schematic for your op-amp circuit.

1 Like

21 mA can be done with one well chosen resistor...

Little reason to make this more complex...

Unless you have a battery and want your laser to run as long as possible..

The constant current circuit is attached.
image

Laser: https://www.thorlabs.com/thorproduct.cfm?partnumber=L650P007

I need to switch on and off plus control the intensity.
This is a part of a big sensor circuit, where I am driving the laser using the constant current circuit. Also I am newbie to Arduino. So I wonder whether i can connect the circuit to Arduino UNO board

You would never be able to set the current to 21mA with circuit.
You should use the PD as a feedback to control power
Have you actually built and tested it?

Hi Jim,

This circuit is giving me a constant current of 21 mA. The circuit has been stable for a long time.

I can't see how that is possible.
The current through R4 is the same as the current through the diode.
Then the voltage drop across R4 would be 21mA X 1K = 21V.
Quite impossible with a 12V supply

If you reduce R1 to 5.1K, does the current increase?

2 Likes

Hi Jim,


This is the voltage drop across each resistor.

Makes more sense.
Which opamp are you using?

I am using LM 358

You just need to replace R1 with a digital pot 10K and reduce R2 to maybe 5.1K

1 Like

Drive pin 3 with an external DAC (need to get above 5V) and you can control it that way.
Here's a very simple high voltage DAC: A high(er) voltage DAC using PWM | Cedar Lake Instruments

I don't remember how good the performance is but if it's not good enough then an external DAC will be fine.

It would be fun to avoid the opamp and do the CC current completely with arduino and a transistor, but I have too many projects right now :slight_smile:

1 Like

What you are trying to do may not be possible.

Laser diodes have a threshold current below which they do not lase.

For your laser diode the threshold current is very close to the present operating current,
see this extract from the datasheet for details:
image

You might find the laser suddenly stops working as you reduce the current.

Hi John,

I would like to keep the current at 21mA because I want to keep the laser in Class 1 condition. Is there any way I can connect the opamp circuit to the Arduino?

Is there any way to connect the opamp circuit to the Arduino kit? if so, how can i do that?

Yes, but only to turn on and off the laser, if the current is otherwise constant.

Explain what you really want to do.

You need to buy one of these and use it in place of R1
It's a digitally controlled pot so that you can adjust the current from the Arduino

Also buy the cable

If I would like to switch on and off the laser, how can I connect this circuit to an Arduino?
For small change in intensity, I could go with a digital pot controlled by Arduino.

You can do both with the digital pot DS3502

1 Like