力控机器人物理交互中阻抗控制的势与流(effort and flow)

        力控机器人是一种能够感知和控制外部力或力矩作用的机器人系统。它具有实时感知和响应外部力的能力,通过传感器和控制算法实现对力的测量和控制,以实现与环境或人类用户的交互和协作。

力控机器人的内涵主要包括以下几个方面:

  1. 力感知:力控机器人通过装备力传感器或力/力矩传感器来感知外部施加在其末端执行器或传动装置上的力或力矩。这些传感器可以测量作用力的大小、方向和施加点位置等信息。
  2. 力控制:力控机器人能够根据外部力的变化实时调整执行器的控制指令,以实现力的控制。它可以根据预设的控制策略和算法对外部力进行反馈控制,使机器人能够适应环境变化或与人类用户进行协作。
  3. 力反馈:力控机器人能够将感知到的外部力信息反馈给操作者或控制系统,以实现与操作者的力交互或实时力反馈控制。通过力反馈,机器人可以更好地与环境进行交互,实现更精确的力操作或协作任务。

与协作机器人相比,力控机器人注重感知和控制外部力的能力,以实现更加精细的力操作和协作任务。它的主要特点是能够主动感知和响应外部力,实现与环境或人类用户的高度互动和协作。力控机器人在与人类合作、灵活操作和精确力控制等方面具有优势。

协作机器人则更加注重与人类的协作能力,强调机器人与人类用户之间的交互和合作。协作机器人通常具有更高的自主性和智能性,能够理解和响应人类的指令、意图和姿态,实现人机协同工作。协作机器人的任务可能包括与人类共享工作空间、协同完成任务、提供辅助服务等。

因此,力控机器人和协作机器人在内涵和重点上有所不同,但两者也存在交叉和重叠的部分。力控机器人可以作为协作机器人的一种实现手段,通过力感知和力控制实现与人类的高效协作。在某些应用场景下,力控机器人和协作机器人可以结合起来,发挥各自的优势,实现更复杂和高级的任务和交互。

常见的UR机器人是一种协作机器人,其e系列就是在末端增加一个六维力传感器,如下图所示:

机器人末端力控:

Common Uses of Force Control in a Robotic Cell - Technical Articles

בוגר בית ספר חזה מקרי נהר פארנה תאגיד גנאלוגיה robot force control -  tastekitchennyc.com   

力、电压等物理量叫做势(effort),速度、加速度、电流等物理量叫流(flow)

在力控机器人的物理交互中,阻抗控制涉及到两个关键概念:势(effort)和流(flow)。

Everything Modelling and Simulation: Bond Graph Modelling, A Quick  Learning: Part 3

势(effort)表示施加在物体上的力或力矩,也可以理解为输出力或输出力矩。在阻抗控制中,势通常是通过传感器测量得到的机器人端执行器的输出力或力矩。

流(flow)表示物体的变化速率,也可以理解为输入力或输入力矩。在阻抗控制中,流通常是由外部环境施加在机器人上的力或力矩。

阻抗控制的目标是根据期望的力或力矩与实际的力或力矩之间的误差来调整机器人的势,以实现所需的物理交互行为。通过调整势,可以控制机器人对外部力或力矩的响应,并实现不同的阻抗特性。

在阻抗控制中,势和流之间的关系可以用以下公式表示:

势 = 阻抗 × 流

其中,阻抗是一个参数,用于调节势和流之间的关系。不同的阻抗参数可以实现不同的物理交互行为,例如刚性、柔软或粘性。

通过实时测量机器人端的输出力或力矩,与期望的力或力矩进行比较,并根据阻抗参数调整机器人的势,可以实现对外部力或力矩的控制和调节,从而实现物理交互的目标。

需要注意的是,在阻抗控制中,势和流的单位需要一致,例如力与力、力矩与力矩。在实际应用中,通常使用力/力矩传感器来测量势,而外部力或力矩可以通过外部力传感器或其他测量设备进行测量。

总之,阻抗控制通过调节机器人的势和外部力或力矩之间的关系,实现对物理交互的控制和调节。通过适当选择阻抗参数,可以实现不同的物理交互行为,从刚性到柔软甚至粘性。

         Hogan提出了阻抗控制的理论框架,该框架将机器人与外部环境的交互建模为质量、阻尼和弹簧组成的阻抗元素。阻抗控制器通过调节这些阻抗元素的参数,实现对机器人末端执行器与质点之间交互力的控制。

以下为单自由度被控对象与人进行物理交互过程中的阻抗控制实现示意图:

Impedance controller connected to a mass representing a simple 1-DOF:

Impedance controller connected to a mass representing a simple 1-DOF... |  Download Scientific Diagram

Simple impedance controller:

Simple impedance controller. | Download Scientific Diagram

Single-DOF model for improved impedance-controlled industrial robot:

Single-DOF model for improved impedance-controlled industrial robot. |  Download Scientific Diagram

在运动中,位移、速度和加速度与阻抗(惯性、阻尼、刚度)之间存在一定的关系。阻抗控制是一种控制方法,旨在通过调节阻抗参数来实现所需的运动特性。下面是位移、速度和加速度与阻抗参数之间的关系:

  1. 位移与刚度(Stiffness)的关系:刚度描述了物体对位移变化的抵抗能力。较大的刚度值会使得物体对位移变化更为刚性,即物体更难产生位移。

  2. 速度与阻尼(Damping)的关系:阻尼描述了物体对速度变化的抵抗能力。较大的阻尼值会使得物体对速度变化更为阻尼,即物体的速度响应趋于平稳。

  3. 加速度与惯性(Inertia)的关系:惯性描述了物体对加速度变化的抵抗能力。较大的惯性值会使得物体对加速度变化更为惯性,即物体的加速度响应趋于平缓。

一些阻抗控制实现框图以及参考文献如下:

Example for an impedance control architecture used to make the rehabilitation robot behave compliant

Example for an impedance control architecture used to make the rehabilitation robot behave compliant.

Towards real-time whole-body human dynamics estimation through probabilistic sensor fusion algorithms:

Towards real-time whole-body human dynamics estimation through  probabilistic sensor fusion algorithms | SpringerLink

以下为简单的单自由度机器人阻抗控制MATLAB程序示例:

% Set simulation time
T = 1000;
dt = 0.001;

% Set desired trajectory
xd = sin(linspace(0, 10, T));
dxd = cos(linspace(0, 10, T));
ddxd = -sin(linspace(0, 10, T));

% Set impedance parameters
Md = 1;
Bd = 10;
Kd = 400;

% Set initial conditions
x0 = 0;
dx0 = 0;

% Initialize variables
x = zeros(1, T);
dx = zeros(1, T);
f = zeros(1, T);
x(1) = x0;
dx(1) = dx0;

% Simulate impedance control
for i=1:T-1
    % Compute desired end-effector acceleration
    ddx_d = Md \ (f(i) - Bd*(dx(i) - dxd(i)) - Kd*(x(i) - xd(i)));
    
    % Update end-effector velocity and position
    dx(i+1) = dx(i) + ddx_d * dt;
    x(i+1) = x(i) + dx(i+1) * dt;
end

% Plot results
tiledlayout(2,1);
nexttile;
plot(x);
hold on;
plot(xd);
title('Position');
nexttile;
plot(dx);
hold on;
plot(dxd);
title('Velocity');

仿真结果如下:

程序设置了仿真时间、期望轨迹和阻抗参数。然后,使用阻抗控制算法来计算末端执行器加速度,并更新末端执行器速度和位置。

从力与运动的角度,阻抗控制实现规律可以总结如下:

  1. 力与位移关系:阻抗控制通过建立力与位移之间的关系来实现控制。这种关系可以使用弹簧-阻尼系统来描述,其中弹簧表示机器人的刚度,阻尼表示机器人的阻尼特性。根据该关系,当外部施加力对机器人产生作用时,机器人的位移会相应改变。

  2. 阻抗参数调节:阻抗控制通过调节阻抗参数来控制机器人对外部力的响应。阻抗参数包括刚度、阻尼和质量等,通过调节这些参数的值,可以实现对外部力的不同响应特性。例如,增加刚度可以使机器人对外部力更加刚性地响应,而增加阻尼可以使机器人对外部力的消散更快。

  3. 力控制模式:阻抗控制可以实现力控制模式。在力控制模式下,机器人会根据外部施加的力来调整自身的位移,以实现对外部力的精确控制。这种控制模式广泛应用于力导引、物体抓握和与人类操作者的协作等任务中。

  4. 运动控制模式:除了力控制模式,阻抗控制还可以实现运动控制模式。在运动控制模式下,机器人会根据期望的位移来调整自身的力响应,以实现对运动的控制。这种控制模式在需要控制机器人的运动轨迹或位置时非常有用。

  5. 力与位移反馈:阻抗控制通常使用力与位移的反馈信息来实现控制。通过实时测量外部施加的力和机器人的位移,控制系统可以根据设定的阻抗参数和控制策略来计算出合适的控制指令,以调整机器人的力响应和位移。

总体而言,阻抗控制通过建立力与位移之间的关系,调节阻抗参数以及使用力与位移反馈来实现对外部力和运动的控制。这种控制方法在机器人操作中具有广泛的应用,能够实现精准的力控制和与环境的交互,为实现柔性、精准和协作性的机器人操作提供了重要的手段。

参考文献:

【1】https://www.semanticscholar.org/paper/An-Exact-Impedance-Control-of-DC-Motors-Using-Sakai/b5aee90331fcce006040f092a498c65aedd324cd

【2】Hogan, N. (1984, June). Impedance control: An approach to manipulation. In 1984 American control conference (pp. 304-313). IEEE.

【3】Anderson, R. J., & Spong, M. W. (1988). Hybrid impedance control of robotic manipulators. IEEE Journal on Robotics and Automation4(5), 549-556.

【4】Ikeura, R., & Inooka, H. (1995, May). Variable impedance control of a robot for cooperation with a human. In Proceedings of 1995 IEEE International Conference on Robotics and Automation (Vol. 3, pp. 3097-3102). IEEE.