You can use whatever sensor you want. “Edge” detection is simply looking for a big change in distance readings or if a reading is further than a given threashold. The nice thing is that whatever the robot is driving around on is going to be pretty close to the chassis of the robot (unless you are using huge wheels) so the sensor you use can be one that works at close range. A simple IR led/ IR transistor (which usually only has a range of a few CM) would work fine as the “ground” is always going to be close and also a given distance away.
XicoMBD, would your set up be affected by driving from say carpet to vinyl flooring?
I would assume vinyl flooring to be more reflective than carpet. Also how long does an LDR take to adjust? is it almost instant, or a matter of 5, or so seconds?
I recommend the QRD1114 as it is easy to use, includes both IR LED and IR detector, and cheap. I picked up 20 of these from arrow.com for $0.58 each (found using findchips.com). You can use them in a simple circuit to provide a digital input to your bot, so you aren’t limited by the number of ADCs available and its easier to code.
Here is an LMR tip on it showing dark detection, but it also works with the type of edge detection you are interested in: