PDA

View Full Version : Neato LIDAR Laser Pulse Measurements



hash79
11-20-2011, 11:41 PM
Below is a picture of my test setup to simulate the pulse train that is created when the LIDAR module is rotating. Normally an LED/photodiode mounted on the bottom of the LDS HORIZ BOARD as Neato calls it is interrupted by some plastic standoffs inside the LIDAR module. Since the module will not operate unless it is spinning it is difficult to see how the Neato firmware works with an oscilloscope! I did this so I could begin to take measurements from the Piccolo Board while it is taking distance measurements stationary on my bench.

I used a msp430f1232 microcontroller to generate the simulated pulses only because I had an existing design using it and have the development environment fully setup on my computer already. My existing design also provides the needed 3.3V to run the Piccolo Board. Normally the LIDAR Module is run from 5V but the LDS HORIZ BOARD that mounts under the Piccolo Board includes a 3.3V regulator so keep that in mind if experimenting like I am. There are also 470 ohm resistors in series with the TX/RX lines before they get to the Piccolo Board. With everything connected I proceeded to write a delay routine which simulates the pulses. Take a look at the pictures from my notebook for what the pulse train looks like.

Max measurement speed of the module appears to be about 478 RPM. The module will keep reporting higher rotation speeds up to around 600 RPM but above 478 RPM it does not turn on the laser so it is not actually taking any distance measurements. The minimum rotation speed for the laser to take readings is 180 RPM. If it drops below 180 RPM at all it starts to shut the laser off. The laser is always pulsed on for 200 micro seconds regardless of the rotation speed. Off time is determined by rotation speed and the reading at 478 RPM seems incorrect. I have not looked into this further though. Perhaps above 300 RPM it does something different with the readings.

It also appears Neato holds the laser diode ground connection at 1.8V and then drops it to 1.5V to turn the laser on. Diode positive wire is held at +3.3V so the laser receives +1.5V when off, and +1.8V when turned on. My guess is this improves the turn-on time of the laser diode. Thoughts anyone?

-Hash

3614
36153616