TCS34725 to detect laser pointer

Breakout boards, sensors, other Adafruit kits, etc.

Moderators: adafruit_support_bill, adafruit

Please be positive and constructive with your questions and comments.
Locked
User avatar
davebarribeau
 
Posts: 6
Joined: Wed Dec 28, 2016 11:55 am

TCS34725 to detect laser pointer

Post by davebarribeau »

I have a TCS34725 on order.
I want to be able to detect if a user points a standard 'toy' laser pointer at the TCS34725 so I can then trigger an output from the connected Arduino to another device. I also want to discriminate so that I only trigger if the sensor's readings indicate that the laser's light characteristics fall within a range window. I will test so I know the parameters to allow for a certain laser wavelength.

If this works, I may want to only support a blue laser for example, and I am hoping to discriminate so a red, green laser or sunlight reflection won't 'pass' in my software to be able to false trigger. I can handle the software and interfacing, but am just wondering if the sensor will work well for this, versus just using a light intensity chip or CDS cell.

Secondly, if I want two sensors, is there a way to daisy chain the I2C so I only need one CPU or will both modules have the same slave address?
In the data sheet, I didn't see a command to assign a slave address and there isn't an 'enable' pin so I could use a separate wire from the CPU.

Any thoughts?

User avatar
adafruit_support_bill
 
Posts: 88092
Joined: Sat Feb 07, 2009 10:11 am

Re: TCS34725 to detect laser pointer

Post by adafruit_support_bill »

A TCS34725 should be able to do that. Although a simple phototransistor with a filter would likely be just as effective.

The TCS34725 only supports one i2c address. To connect 2 of them, you would either need to use a processor with more than one i2c bus, or use an i2c multiplexer: https://www.adafruit.com/product/2717

User avatar
sj_remington
 
Posts: 997
Joined: Mon Jul 27, 2020 4:51 pm

Re: TCS34725 to detect laser pointer

Post by sj_remington »

A blue LED is a photodiode that responds only to blue light, within a pretty narrow wavelength range. That may work, as long as the detection wavelength corresponds approximately to the blue laser emission wavelength, and would be much faster and easier than using the TCS34725.

Note: the optimal detection wavelength for an LED is typically about 50 nm shorter than the wavelength for maximum LED emission. See https://makezine.com/projects/how-to-us ... ect-light/

User avatar
davebarribeau
 
Posts: 6
Joined: Wed Dec 28, 2016 11:55 am

Re: TCS34725 to detect laser pointer

Post by davebarribeau »

Thanks for the replies. I suspect that there are going to be multiple laser sources in the plant with different wavelengths. Fork lift drivers use handheld CCD bar code scanners with a laser aiming dot from different manufacturers, for example. They also want me to make an adapter for a ProGlove (used in Europe a lot) so the drivers can keep their hands mostly on the wheel (or levers).
So I will likely have to accommodate sets of color ranges for different wavelengths. I was thinking that updating a table in my code would be easier than changing filters or adding photodetectors. It would also give me more options - "a red laser means A and a green laser means B".

For the multiple sensors, the expander looks like a good option. If I use a cat 5/6 cable I can daisy chain 3 sensors if I use 2 conductors for the SDA/SCL for each, then have them all share 5VDC and Ground. It would be a short run (<10 feet total)? As the specs on the color sensors only use 330 microamps when active, it seems like I would be fine with 24 AWG solid in the cat 5 cables as each conductor should be able to handle .5 amps. Does this sound right?

If I use a 3.3V Arduino instead of a 5V, would the sensor run cooler as the voltage converter doesn't have much to do?

Plant electricians like commonality so using short network patch cables to connect everything would be easy for them (until they used a crossover patch cable somewhere).

Thanks again.

User avatar
adafruit_support_bill
 
Posts: 88092
Joined: Sat Feb 07, 2009 10:11 am

Re: TCS34725 to detect laser pointer

Post by adafruit_support_bill »

I was thinking that updating a table in my code would be easier than changing filters or adding photodetectors. It would also give me more options - "a red laser means A and a green laser means B".
The TCS34725 consists of 4 closely spaced photosensors, 3 of which are covered with filters. These are fairly wide bandpass filters covering the red, green and blue parts of the spectrum. And while different wavelength lasers will excite these 4 channels at different levels, it is not as simple as just looking them up in a table. The actual levels and the balance between them will vary depending on things such as distance and background illumination within the FOV. This part of the guide discusses some of the considerations involved in reliably identifying colors: https://learn.adafruit.com/adafruit-col ... ing-colors
it seems like I would be fine with 24 AWG solid in the cat 5 cables
Yes. That should be fine for a 10' run.
If I use a 3.3V Arduino instead of a 5V, would the sensor run cooler as the voltage converter doesn't have much to do?
Yes. If your 3.3v is regulated, you could bypass the regulator entirely and power it via the "3V3" pin.
Plant electricians like commonality so using short network patch cables to connect everything would be easy for them (until they used a crossover patch cable somewhere).
Yes, I've had plenty of experience working with plant electricians. Since you only need 4 wires for the sensor, you can choose pins that will put power and ground on wires that don't connect to anything at the other end of a crossover cable.

Locked
Please be positive and constructive with your questions and comments.

Return to “Other Products from Adafruit”