Home > Blog > Scanning Laser Microscope With Arduino

Scanning Laser Microscope With Arduino

Summary of Scanning Laser Microscope With Arduino


This article details a DIY scanning laser microscope built using a repurposed CD-ROM drive, speakers for precise X/Y movement, and an Arduino for control. The project leverages the drive's internal laser and lens while replacing the original photodiode with a BPW34. Focusing is achieved by modulating coil current to find maximum photodiode output, and data visualization is handled via Processing software or a TFT display.

Parts used in the Scanning Laser Microscope:

  • Commercial CD-ROM drive
  • BPW34 Photodiode
  • LM317 Voltage Regulator
  • Resistors
  • Small Speakers (24 Ohm)
  • Metallic bar
  • Copper foil (0.5 mm thick)
  • MCP4922 DAC
  • Transistor
  • Potentiometer
  • Arduino
  • LM358 Op-Amp
  • TFT Display (480x320)
  • UTFT Library
  • Wooden plate
  • Multimeter
  • Power supply (9V, 0.6A) or 7.4V LiPo with DC-DC step-up module

I’d like to share my latest project, a scanning laser microscope with you.

Some words concerning the principle: The pinciple is quite simple. The laser beam is focused on the object and the reflective light is being measured with a photodiode (in my case a BPW34). To focus right the current through the focusing coil is varied. The position of the object is changed by two Speakers, which are driven with different voltages. The speaker-membrane is moving and therefore the object-table, which is connected with the membrane is moving too. With this way of moving head you can reach movements down to µm.

Step 1: The Cd-drive

A Commercial cd-rom-drive is ideal for our purpose. It combines everything we need, a laser-Diode, a lens with variable Focus and a photodiode. In my case I’ve changed the build in photo Diode with a lot of Pins against a single BPW34 with just two Output-Pins. Older cd-drives are suitable for the laser microscope because they aren’t so miniaturized like modern drives. I use a cd-rom-drive instead of a DVD- or bluray-drive, because in the early days of this technology the pins have been larger and more separated than in modern drives…

You’ll have to find out the two Pins for the vertical coil and the laserdiode. If you replace the built-in photodiode against a larger model you’ll have no problems with soldering.

The laser-Diode needs a constant current, about 80mA. This can be easily realized with a LM317 and some resistors.

Step 2: The Speakers for the X/y-movement

You’ll have to look for suitable speakers with little movement. I took some small ones with a resistance of 24 Ohm. A metall bar is glued to the membrane. At the end of the bar a small piece of copper-foil (0.5 mm thick) is soldered with the bars.

To drive the Speakers I use a MCP4922-DAC. It offers two voltages between 0 and 5V. With some resistors and a Transistor I’m able to vary the current through the Speakers up to 250mA. With a potentiometer the magnification of the microscope can be changed. The larger the value of the potentiometer, the higher the magnification.

Step 3: How to Focus

Focusing right is a difficult work because we are speaking about µm.

Usually cd-drives use photo-diodes with more than 4 areas (ABCD in the Picture). With those signals you’re able to find out the Focus quite easily. It’s in the focus, when the Signal (B + C) – (A + D) gets zero.

Using a single photodiode we just get one signal. But don’t worry, there’s another way to find the right Position of the coil. Changing the current through the focuing-coil you’ll see, that the Output-voltage of the photodiode first increases, going through a Maximum and then decreases. Exactly in that maximum the laserbeam is focused right. To make this easier, you should use a 10-turn-potentiometer (in my case a 100Ohm-type parallel to a fixed 100Ohm-resistor to get 0-50 Ohm).

If no object is on the moving-table, I get voltages in the range of 0.2V. If something is lieing on the table, the voltage slightly increases. The arduino is able to read voltages between 0 and 5V. Therefore we first have to eliminate the Offset (0.2V) and second we have to amplify the signal up to 100 times. For this purpose I use a LM358. Before scanning I turn the gain-potentiometer to get voltages as high as possible.

Step 4: The Visualization of the Data

You’ll have two ways of visualization, with the Software processing or with a TFT-display. I recommend a 480×320 Display (no touch), which you can get on ebay for less than 10 USD.

If you prefer processing you’ll have to send the data in the following way:

Serial.print(xPos);

Serial.print(“,”);

Serial.print(yPos);

Serial.print(“,”);

Serial.println(value);

Using the TFT-Display you’ll need the UTFT-library. Just search for “rinky-dink electronics” (http://www.rinkydinkelectronics.com/library.php). There you download the UTFT-library for arduino.

Step 5: The Complete Setup & Code

Finally everything is mounted on a wooden plate and all the outputs and potentiometers are mounted too. The only additional parts you’ll need are a multimeter for controlling the photodiode-voltage and a power supply (9V, 0.6A). If you want you can take a 7.4V lipo and a DC DC step up module to work everywhere you want without the need of a Computer or power supply.

Read more: Scanning Laser Microscope With Arduino

Quick Solutions to Questions related to Scanning Laser Microscope:

  • Why choose an older CD-ROM drive over modern DVD or Blu-ray drives?
    Older drives are less miniaturized, making the pins larger and more separated for easier modification.
  • How is the laser diode powered in this project?
    The laser diode requires a constant current of about 80mA, which is realized using an LM317 and some resistors.
  • What components are used to achieve X/Y movement?
    Two small speakers with a resistance of 24 Ohm are used, driven by an MCP4922 DAC to move the object table down to micrometers.
  • How does the single photodiode determine the correct focus position?
    The system varies the focusing coil current until the photodiode output voltage reaches a maximum value.
  • What signal processing is required before the Arduino reads the photodiode data?
    The offset of 0.2V must be eliminated and the signal amplified up to 100 times using an LM358.
  • What is the recommended method for visualizing the scan data?
    You can visualize data using the Processing software or a 480x320 TFT display with the UTFT library.
  • Can this microscope operate without a computer or external power supply?
    Yes, by using a 7.4V LiPo battery and a DC-DC step-up module.

About The Author

Ibrar Ayyub

I am an experienced technical writer holding a Master's degree in computer science from BZU Multan, Pakistan University. With a background spanning various industries, particularly in home automation and engineering, I have honed my skills in crafting clear and concise content. Proficient in leveraging infographics and diagrams, I strive to simplify complex concepts for readers. My strength lies in thorough research and presenting information in a structured and logical format.

Follow Us:
LinkedinTwitter
Scroll to Top