The L293D is powerful enough to source DC motors, and maintains one edge over many competitors, namely that it is essentially two motor drivers in one package, perfect for my two motor robot. Visible light bounces off of matter and consequently allows us to see. This holds true for the spectrum of light invisible to us, namely in the infrared spectrum. For proof of this, try bouncing your remote control's signal off of walls or even your forehead. Thus by projecting infrared light around itself, and sensing whether a measurable amount of that light bounces back, a robot can, with reasonable accuracy, detect whether there is a wall or some other obstacle within a certain range of itself and act accordingly.
Cheap sensors exist which have a measurable output when infrared light is present.
Unfortunately, white light is full of all frequencies all the time, including infrared. Thus simply using an infrared sensor paired with an infrared emitter would only be a reliable sensor in complete darkness. Thus to use the sensing properties of infrared light without interference from outside sources, the light must be modulated. This was largely because it is mentioned in hobbyists' web pages as reliable easy to interface sensing unit, as well as the fact that data sheets for it are available online. The GP1U58Y responds to infrared light pulsing at approzimately 40,000 Hz, modulated again into 600 microsecond bursts and releases.