CCD D8861CY need to use as filament diameter measurement Tool

I could able managed a linear ccd D881CY from old photocopier. now I need to use it as filament diameter reader. Does anybody help on this topic? i need know the coding and connection with Arduino UNO. thanks.

Please give a link to the D8861CY data sheet.

Which filament diameter range do you want to cover?
Add a lens or microscope to magnify the filament width to the sensor length?

hellow Diettrich,
thanks for your response. please find the link/ pdf attachment below
linear ccd UPD8861CY.pdf (165.6 KB)

  • the filament diameter is from 1.0mm to 3.0mm.
  • i don't need lens cuz the sensor is big. it length is 10mm. By the way i have lens can be used if needed.

dear I have tired by reading this link from this group but the result is frustrating. i need to see the diameter as value.

See the Application Circuit Example for the minimum required hardware.

As a first try you implement the signal generator according to Timing Chart 1, with timing as fast as possible.

Add code to measure the RGB signals during the Valid Photocell block. For your application it may be sufficient to measure a single color only and to use a comparator to distinguish bright and dark cells instead of a more precise analogRead().

Finally check whether your timing is within the limits of the Timing Charts and you get valid signal values. A scope will be very helpful.

Did you consider how light from your light source will cause a partial shadow at the filament borders, depending on the width of your light source and the distances from the sensor?

dear, i have attached the wiring with arduino as per shown image.
now can you please tell me that is it ok?

-to implement the signal can we write any code into arduino uno board to avoid the shown circuit. what code may be provide the required signal wave.
-now what to write to measure the dark block. I am targeting the blue array as output.

  • I don't have any Oscilloscope. i have one arduino mega. can i use it.
  • how do i finally see the output is showing filament diameter in e.g. "1.7 mm", "2.1mm". what is the code to get the result.

You have to write it. This forum is for helping people with their code, not writing it for them.
If you want to pay someone to write your code for you, check out the Jobs and Paid Consultancy Forum.

You omitted the mentioned hardware at your own risk. Without a scope it will be very hard to control the signals.

Now write the code for the required clock sequences.

if this forum can help on people on their code, then it can guide people from where they can learn systematically. if i had money to pay for consultancy then i would never have to go for DIY project.
i would have buy it from market. However i am doing a diy project for which i need to learn about linear ccd and the arduino code to measure filament diameter using this sensor.
hope you get it.

Dear Diettrich,
can you suggest me some free books or YouTube tutorial that may guide me to finish the work.

I don't know about helpful literature about clock sequence generation. You use digitalWrite() to set the outputs high or low, and for loops for repeated sequences. A scope or (cheaper) a logic analyzer would help in writing the code.

1 Like