While there are important some conceptual differences between the two, for the most part they are close enough to be treated as one in the realm of robotic hobbiest or researcher.
PCs in this case, or at least computer system boards provide the standard features currently comprising "PC infrastructure," are all about using COTS (Consumer Off The Shelf) technology.
Why? They are powerful computing platforms with an abundance of cheap I/O components.
Are you kidding? They are a great base. Lots of standardized interfacing, USB, Printer port, RS-232 port, PCI or even ISA (some still have them).
I actually have a super low cost solution for this, but short of that, there are many peripherals for this.
Again, lots of peripherals are available.
That is an interesting question, one which can't be answered without solid knowledge of the speed of the processor, I/O system which reads the encoder input, the speed of the I/O system that controls the PWM controller, and the response time of the motor.
Suffice to say, if designed right, as accurate as anyone would need.
Parallel port maybe?
No, the PC is the base system. The peripheral packages are added to it.
That's the idea of using an OS. All the interfacing is standardized.
There is no argument that a micro or pic is good for controling specific peripherals. Hell, your keyboard has a processor in it. A robot, on the other hand, is more than the sum of its parts.
The 20MHZ 386sx is, in a lot of ways, very similar to a 2.8 ghz P4. Granted they've virtualized the internal processing engine, and added more instructions, but the 386sz still supports 32bit virtual memory, the process protection mechanisms are the same, as is interrupt and signals.
Again, robots are more than the simple digital control, and that's the point that this debate misses.
[snip]
This is a point of view that I find curious, and IMHO, fairly sad on the frontier of robotics. Roomba is hardly an advancement or achievement. The "Micro-mouse" contests of the 1980s (20 years ago) were far more advanced with less processing power. Like I said, roomba is a bigtrack with a brush. You may think its useful, and you may think of it as a robot, but I am dubious of the former, and skeptical of the latter.
The platforms I see out there are not what I would call "robots" or "robotic platforms." There is both a conceptual and phylosophical difference between mere digital control of a device and artificial intelligence.
The roomba is a device with some very simple behaviors. It doesn't solve problems. It doesn't really "know" where it is. It is easy to line up a number of obsticals that will put it in a loop out of which it can not escape. A "real" robot would be able to detect and correct these issues or at least attempt to, and issue a warning or something.
If you want to build a roomba, have at it, an old Z80, 1802ELF, or even a PIC or Basic stamp will do fine.