View Full Version : Results of speed it up

05-11-2014, 09:13 AM
This is the results of the recent thread ( Looking to speed up (http://forums.trossenrobotics.com/showthread.php?6902-Looking-to-speed-up) )
about leaving a rb-100 board and moving on to something more modern.


Coming along nicely :)

05-11-2014, 12:40 PM
Nice work up. And it looks like you've already got most of the central parts. I really look forward to seeing this as it comes along.

For a laser rangefinder, I picked up the rangefinder from a Neato for about $70 from EBay. I'm thinking about mounting it near the bottom-front of Groucho with a tilt platform so that I can get a good 3d image of the room. It won't be perfect, but it should be better than the Kinect which will now go on a different bot.

However, I'm looking forward to seeing what you come up with in the way of a LIDAR. I'm sure we all have wish lists for the "perfect" LIDAR. Mine includes:

1. Dog/People safe.
2. Usable both indoors and outdoors.
3. At least a 5m range.
4. Inexpensive.
5. Accurate to within a cm.

I wish that I knew more about FPGAs; they might be fast enough to handle a LIDAR.

I'm sure that you have a list of your own. And I'm not sure that my list is even possible, though hopefully #1 is. I know that the IR from our TV remote seemed to bother one of our dogs.

05-11-2014, 01:32 PM
There are microcontrollers that are fast enough for a LIDAR sensor. The main problem is getting a good 1D sensor and reasonable optics, and getting it all to spin and stay reasonably calibrated.

Seems like a company named RoboPeak has built a new hobbyist-friendly similar to the Neato LIDAR. More expensive than what you can find on eBay, but actually currently made and supported: http://www.robopeak.com/blog/?p=278

05-11-2014, 01:38 PM
The neato was definitely the inspiration. I was wondering why no one has anything but hacked up versions. It is good to see someone finally does. If theirs works, I don't need to (attempt to) re-invent the wheel. I'll keep an eye on it.


It looks like it is already for sale, $400 - that is pretty reasonable to me.

05-11-2014, 02:34 PM
I was working on a triangulating lidar based on the neato revolds prototype paper, but brain and money issues repeatedly stalled it over the last couple years. Two of the biggest issues for triangulating range finders are the sensor itself and ensuring proper alignment of the laser and sensor. The Neato LDS uses a Panavision DLIS-2K Quad Line Scan Sensor with each row having 2080 pixels and one of the four rows offset by half a pixel width for an effective 4160 pixels in a 8322x48um sensing area. The few linear sensors readily available on digikey are like the TSL1401 that have only 128 pixels in a similarly sized sensing area. The lower pixel count limits the ability to precisely locate the laser dot, which increases error at all sensing distances. The short height also requires very good alignment of the laser, optics, and sensor, which is why the opening in the optic mount of the Neato LDS is actually slightly smaller than the sensor so there will be a very snug fit to provide rigid alignment of optics and sensor.

There are plenty of fully-fledged image sensors like the VGA camera used in the parallax lidar, but acquiring the datasheets and reference manuals for those sensors can be a serious pain. One gigantic benefit of the camera sensor over linear sensors is that alignment is not quite as important since the sensing area is much taller. This means you can easily adjust the firmware during calibration to use a different area-of-interest on the sensor, which decreases the number of pixels that must be read out from the sensor, increases the possible image refresh rate, and decreases the number of pixels used to calculate the centroid of the laser spot.

If still want to DIY one...
The prototype design process for the Neato LDS was released at IEEE ICRA 2008 as "A Low-Cost Laser Distance Sensor" by Konolige, et al. if you want to go looking for it online. SICK and Hokuyo LIDAR modules, and Kinectv2 and SoftKinetic depth cameras, use either pulsed-light time-of-flight or continuous-wave, amplitude-modulated, phase-shift time-of-flight, and are usually built around custom high-speed CMOS sensors or avalanche photodiodes. Pulsed-light TOF requires high-speed sensors and electronics to measure the time between sending the packet of light and receiving its reflection. AM-TOF can use much slower sensors and electronics since it drives the laser/LED at a much lower frequency (60Hz~100MHz) than the light emitted by the laser/LED (red ~400 THz). The interference of the transmitted and received light gives a phase-shift, and from that you can calculate distance within a certain range (all values outside the range are wrapped back into the valid range, and range is a function of the modulation wavelength). There are ways to correct for the wrap-around, but they are mostly for images since they utilize neighboring pixels to make inferences about the number of phase-wraps that occurred ("Multi-frequency Phase Unwrapping for Time-of-Flight Cameras" from Droeschel, et al. at IROS2010 is a nice explanation for AM-TOF cameras).

05-23-2014, 06:49 AM
I followed the laser range finding experiments a few years ago. If I DYI it, it would use a parallax board that already does the math. I would only deal with the slip ring / spin / encoder part of it. But I think as soon as I see some indication that seeed LIDAR is real (eg some discussion about it on their forums) I will order one. In the meantime, a $50 kinect should provide plenty of learning.

I'm almost ready to get my first cutting made, and back to more software design and coding while waiting. 98% of the parts are here.



How much are the drive motors going to mess with the IMU? Worse case for now I will not have the LIDAR initially and I can move the IMU up a level. Will the batteries around the IMU be a problem? At the moment, it is a 9DOF stick from spark, but I included mounting holes for a razor as well.

Is the Ultrasound angle on the front reasonable? It will be based it on 30 degree cones.

I also have a couple of 1/2" holes to add for cable routing and a power switch, then off to a laser somewhere.

05-23-2014, 12:11 PM
How much are the drive motors going to mess with the IMU?

In general, vibration may mess with the gyro and accelerometer parts, but the magnets of the motors will be the real problem. They will probably entirely invalidate your compass readings while they are running.
I put my compass on a 2 foot aluminum pole above the motors...

05-23-2014, 06:52 PM
I'm afraid you are probably right. What bugs the heck out of me, is I fly a FPV quad every week with a 9DOF IMU sitting in between 4 brushless motors, and the whole thing is 400mm from motor center to center diagonal. No shielding or anything. I sometimes see the GPS moved up a little (6" or so) on quads that have one, but sometimes not. How and the heck do these work? Maybe the fact that there are 4 motors balancing out?

05-23-2014, 08:06 PM
The GPS antenna is moved mostly to decrease any effects of motor EMI and improve its view of the sky (gets away from rotors and motors that can attenuate RF signal from satellites). Quality of tracking varies rather widely in GPS modules/chipsets due to various effects like antenna quality, module sensitivity, number of satellites that can be tracked, and other augmentations. Really high accuracy GPS (differential GPS; WAAS) is achieved using additional signals from ground based radio beacons at fixed locations receiving GPS signals to correct for natural variations in a receiver's calculated location over time (atmospheric effects, not yet corrected drift in satellite's atomic clock and orbit, etc.).

Regarding the compass, brushless dc motors dump out a lot less EMI than brushed motors. It is mostly the sparking from the brushes, but rotor/stator design and magnet number/placement also play a role.

For the gyro and accelerometer, the sensor itself is usually a MEMS mass either freely suspended by silicon springs or forced to rotate/oscillate at a fixed frequency, so poor isolation from the vibration of motors and terrain can cause issues.

05-23-2014, 08:59 PM
How much do the quadcopters rely on the compass?

The GPS will give you heading, especially when you are moving. You may not need the compass part of the IMU, perhaps?

06-01-2014, 10:19 AM
I was just mentioning GPS as something very susceptible to noise that gets along fine on something very noisy. This robot is indoor - no GPS. GPS will only give you heading made when moving, never stationary.

Magnetometers are critical for accurate INS to correct for gyro drift (indoor, outdoor, underwater, whatever).

For sport quad flying, not so important but for autonomous operations (such as return to landing) very critical, both as plain magnetometers and as a compass. Compare some AHRS demo's on youtube with and without magnetometers to see gyro drift.

I'm not sure what I'm going to do about vibration - I suppose that's part of the learning process. A mechanical mount has a limit that it can not be easily changed. I never understood why you could not accomplish the same thing with a software filter and be a lot more flexible - I guess I'll understand soon :P

07-13-2014, 05:56 AM
First draft mechanical went ok. Now if it would just wire and program itself :|


FYI; I've been playing with AHRS on the netduino while waiting for cutting; https://www.youtube.com/watch?v=Knvwz4UdPcg