I'm sitting here browsing through the message boards thinking about the questions and answers (and unanswered questions) when it flashes on me (doh! ) that there is a major difference in the design philosophy of cnc robots (which I am learning) and mobile robots (which I know a little bit about).
A typical (hobby) cnc machine might weigh 25-100 pounds and be intended to operate more or less continuously for up to hours at a time. In a mobile robot size and weight are of major concern because they are typically battery driven. The first Honda humanoid robot weighs over 500 lbs and has an operating time of less than 15 minutes (on a full charge ). The first mobile robot I built weighs less than 300 grams and will run for several hours on 4 AA cells.
Another difference that really stands out to me is the software design. CNC software often spews out commands and just assumes that everything is happening as ordered. Mobile robot software relies heavily on sensor input to determine which command to issue and on feedback sensors to assure that the issued command was carried out successfully (and more software to address the cases when commands don't work).
In cnc robots (c'bots) the feedback (when there is any) seems to be mostly linear position (as in x/y/z offset from a reference point) or end of travel, and the sensors are encoders and (limit) switches. Encoders are used on wheeled m'bots for odometry (measuring distance travelled) and to measure joint angle in arms and legs. Potentiometers and switches are used too, but there are many other sensors that are rare or non-existant in c'bots. The more common m'bot sensors include contact, proximity, range, and simple vision systems.
The reason for this disparity in software and sensors is the operating environment. C'bots operate in very controlled conditions where there are (relatively) few unknowns. The start of every operation is setting the reference points. Motion procedes from there in carefully measured increments to completion. No foreign objects (hands, pets ) are allowed to be in the operating volume. The operating environment of the m'bot is often unknown. Even relatively well-known surrounds like a living room floor change in unknowable ways (furniture, toys, pets). This dynamic environment demands a richer sensor set so the m'bot can operate robustly and reliably.
So what? say you. Well, this is to help me get my head around cnc design and implementation . Thank you for your patience.
Sit on a hot stove for a minute, it'll seem like an hour. Sit on a porch swing with a pretty girl for hour, it'll seem like a minute. That's relativity.
- - A. Einstein