I have multiple commercial (as in toy) robots, as well as multiple robots I built myself (a couple from kits). Add my son's commercial toy robots, and his own homemade robots, and we have around 20 robots in our house at any given time.
Most of the homemade ones are simply variations of the differential-drive, IR or ultrasonic object detector, arduino-driven basic robot. My current project is a tank tread chassis with a BeagleBone Black and a camera. No more relying on IR and ultrasound to avoid obstacles, I can now put a full computer vision system in a mobile toy-like robot for about fifty bucks.
To me the difference between a robot and, for example, the dishwasher is that the robot can actively do something to attempt to change its environment. Most of the time it's really basic, like "move to a brighter area" (because it was programmed to "like" brightness) or "locate and move to a less cluttered environment". Other times, like with the Roomba or my old Rovio, it is able to seek out its charging station and "feed".
As far as the "three laws" thing goes, forget Asimov's laws. That doesn't turn out so well. Check out Tilden's three laws: 1) Protect thine ass. 2) Feed thine ass. 3) Move thine ass to better real estate. The aforementioned beagleboneblack project will be my first that adheres to all three of Tilden's laws.