Humans can complete almost any object manipulation task you ask them to do — folding a piece of clothing, opening a gallon of milk, wiping up a spill with a cloth — even if it's an object and/or task they’ve never encountered before. With robots, on the other hand, while it’s usually possible to automate any
specific task (given the right hardware, enough time, and a narrow enough task definition), building a robot that can flexibly perform a variety of actions in a novel or highly variable environment is much harder. Robotic flexibility has improved over time (it’s much easier today to program a welding robot to follow a new path, for instance), but this flexibility still exists within a very narrow range of acceptable variation. The delta robot system above can grab randomly positioned objects, but would almost certainly require reprogramming if the size and shape of the objects changed, and I wouldn’t be surprised if even varying the color of the objects was enough to disrupt the existing automation.
This is an instance of what’s known as
Moravec’s Paradox: the idea that tasks that seem to require a lot of intelligence are often relatively easy to get a machine to do, while tasks that are simple for humans are often incredibly difficult to automate. It’s trivial to get a computer to do calculus, but building a robot that can unwrap a bandaid and put it on — something a two-year-old can do — is massively more difficult.