Appropriate control scheme for gripper end-effector

I want to use a gripper end-effector (3 fingers, single actuator tendon-driven with force sensors in fingers) to grip and hold fragile objects such as an egg. I can not seem to figure out which control scheme would be most appropriate for the situation. Would using an impedance control with negligible dynamic interaction be effective or a hybrid control with force/position control?

My idea was to simply tense the tendon (slowly) encompassing the object until the force sensor gives a feedback that contact has been made (+ a little grip force), what category of control scheme would that fall into?

If you have a simple controller (e.g. force control or position control) the factor which decides what kind of controller is it is the reference signal which has to correspond to the feedback signal.

My idea was to simply tense the tendon (slowly) encompassing the object until the force sensor gives a feedback that contact has been made (+ a little grip force), what category of control scheme would that fall into ?

If tensing the tendon is through a force signal then this is force control. If you do it by position or velocity (since you mentioned slowly) then it is position control. This idea will most probably be simple to implement and will work (but this is an opinion based remark). You will find many examples for using impedance control for gripping in the scientific literature. It is generally a good idea to start with something simple (incrementing tension until a threshold) and develop that further to impedance control if ti doesn't perform good enough.

Hybrid control has probably many different definitions, the one if which is commonly used in robotics, which is position control in on dimension, force control in a different dimension. (i.e. writing on a white board with the robot controlling the marker, keep force contact perpendicular to the position controlled heading direction).

I believe the term you're looking for is compliant control. In a compliant control system, there is a position reference and a force reference, and essentially each is allowed to actuate the joint until either achieves the reference.

So, if you had a position reference of 10 and a force reference of 1, then both the force and position controllers would want to move in the "+" direction. If an obstacle is encountered in the environment, then the position controller is essentially "paused" because the force output of the actuator achieved its goal of 1. As soon as the obstacle clears, the force output drops (because nothing is resisting any more) and the motion resumes until either force or position goals are achieved.

There are a variety of ways compliance is achieved - series elastic actuators, torque/force limits (clamping), parallel control loops, etc., but everything that utilizes the concept of a force-limited position control system is called "compliant".

• Is compliatn control different from cascaded postion-velocity-torqe (standard for most industrial drives) control with a saturation on the torque controller?
– 50k4
Nov 1 '16 at 15:16
• I meant difference to your explanation in the post, not the article you referenced.
– 50k4
Nov 1 '16 at 15:23
• @50k4 - I'm not familiar with that style of control, but I think it would qualify as compliant as long as it avoids windup of the position and speed regulators when drive torque saturates. I believe "compliance" is used more frequently when robots are operating in the vicinity of humans, or for trajectory planning in unknown or complex environments (grippers, etc.) but, generally speaking, the force-limiting aspect of compliance is used to prevent/minimize an overreaction in the presence of a snag or other failure to achieve a target position, so it would also be useful at industrial scale. Nov 1 '16 at 15:34

Impedance control is some kind of analog control. It can be implemented on memory based circuits from the 1950s. That was state-of-the-art before the NASA was on the moon. Some authors has extended this control schema with reinforcement learning. A better possibility for controlling a robohand is to use digitalcomputer only. That means, no mathematical formulas or analog circuits are the way to go, but algorithms, software-engineering and programmable computers. A good starting point is to implement a randomized algorithm (perhaps in matlab) which uses a behavior tree to "reach", "pregrasp" and "grasp" an object. The parameters which are difficult to calculate like the grasppoint or the direction of the gripper can be leave out as random. The algorithm works because after 10 or more repetitions the gripper uses the right parameters via luck.