Hacker News new | ask | show | jobs
by yudlejoza 1970 days ago
General question regarding robotics/motors:

Is there a classification of a system in terms of 'highly precise pre-defined/pre-programmed' movement vs 'feedback based movement'?

As an outsider, mainly watching youtube demos/videos, I've noticed the old kind of robotics, from ABB, Fanuc, and what not, with massive robotic arms planted to a firm-foundation, is based on precision pre-programmed movement. (I believe) there is no feedback though sensors or cameras or anything.

But the new trend is based on feedback, whether traditional control-theory feedback, or neural network based reinforcement-learning feedback, which I guess eases the rigors of pre-program design and makes the system more flexible in new situations. But of course it's an open research topic, and involves every-increasing sophistication of sensors, high-def cameras, lidars, and what not.

Wondering how the choice of stepper/servo, or some other mechanisms like hydraulics/pneumatics relates to the above categorization.

Thanks in advance.

4 comments

Classic industrial robotics and CNCs have and have always had sensors - encoders for position, plus the servo amplifiers give feedback for the amount of current the motor is using, which is proportional to torque. You can definitely use feedback from those control systems. This has been true since the earliest systems in the 70s, and is only starting to become optional with recent hobbyist 3D printers and stepper-based robotic arms and such.

They can also use machine vision in a limited sense. For example, I worked with one last week that drove screws. There are known numbers and locations where screw pilot holes are expected to be, but they have a variability greater than the radius of the screw. So, the arm moves the camera into position so the field of view is a bit larger than the tolerance on the pilot hole, takes a photo, locates the circular feature of appropriate size, then moves the screw to that location.

However, you're right, these robotic systems are doing fundamentally different things than Boston Dynamics and self-driving cars. They're solving a different problem. The difference is less about stepper/servomotor/hydraulics or other control systems, and more about the degree of control that the users can and want to exert over the robot work environment. If it's easy to mandate that there will never be an obstruction in front of the screw you're trying to install, and the machine must power down the servos if a human is inside the fence, and you can demand of the drill machine a certain tolerance on the hole location, you can have a more reliable, simpler to debug, quicker to build robotic cell. If keeping humans out of the equation and the environment obstacle-free is impossible (as on a battlefield or parking lot), then you have to reach for less reliable, more complex control algorithms.

From what I have seen, what some of the research gets wrong is focusing too much on actuators and less on the frame rigidity/dynamics. Even if it's possible to arrive at somewhat okay-ish position performance using vision based feedback, the control system can't really cope with dynamic issues (imagine an end effector on a thin, long piece of wood: even if you can move it around to a certain position based on vision feedback, once you change the load on it, the piece of wood bends, once you decrease the load it snaps back etc).
In theory you can compensate for this by detecting the movement/vibration and moving the cutter to compensate. You "only" need 100khz sensors, fast processing and super quick actuators. You can lower this a bit with lower depth of cut and slower feed rates.

Like I said in theory. In practice we don't really have the ability to sense that well. While drivers that are that quick exist, they are exotic, or have limited range of motion.

Oh yes, this is one of my pet peeves.

I do think taking into account the feedback from the load as well as the weight of each section of the arm itself, needs to be done. In addition, some aspects of vibration control also need to be incorporated. (I guess the right word is proprioception, as mentioned in another commentor).

Yeah, it definitely needs to be done- if not for other reasons then just to find out exact machine limits and have more data for the next design iteration.
open loop/closed loop. (though industrial arms will have proprioception too). Note a good fast moving robot arm needs position feedback in the 100kHz range, which a lot of sensors are nowhere near.
The feedback is done with optical sensors called 'encoders' on the servo axle.