力控機器人常采用柔順控制算法與人/環(huán)境/機器人之間進行直接或間接的物理交互,那么,柔順控制能夠操縱被控系統的柔性特性和動態(tài)行為,實現方式可以分為被動柔順和主動柔順,具體分類如下圖所示:

力控機器人交互控制框架是用于實現機器人與外部環(huán)境或操作者之間的力互動的控制系統。
在力控機器人交互控制中,主要涉及直接力控制、阻抗控制和導納控制三種主要方法。下面是這些控制方法的框架及其性能分析:
1. 直接力控制框架:
力/力矩傳感器:用于測量機器人與環(huán)境之間的力和力矩。
力/力矩控制器:根據傳感器測量值和期望的力/力矩指令,生成控制指令以實現期望的力互動。
運動控制器:用于控制機器人的關節(jié)或末端執(zhí)行器,以實現所需的運動軌跡。
環(huán)境建模與識別:用于對環(huán)境進行感知和識別,以幫助機器人適應環(huán)境變化。

性能分析:
?力跟蹤性能:評估力控制器的能力,以實現期望的力跟蹤。
?運動軌跡跟蹤性能:評估運動控制器的能力,以實現期望的運動軌跡跟蹤。
?動態(tài)響應性能:評估系統對外部力變化的響應速度和穩(wěn)定性。
?力/位置誤差分析:分析力控制和位置控制之間的誤差,以評估系統的精度和穩(wěn)定性。
?穩(wěn)定性分析:通過線性穩(wěn)定性分析或Lyapunov穩(wěn)定性分析等方法,評估力控制系統的穩(wěn)定性。
2. 阻抗控制框架:
力/力矩傳感器:用于測量機器人與環(huán)境之間的力和力矩。
阻抗控制器:根據傳感器測量值和期望的力/力矩指令,生成控制指令以實現期望的阻抗互動。
運動控制器:用于控制機器人的關節(jié)或末端執(zhí)行器,以實現所需的運動軌跡。
環(huán)境建模與識別:用于對環(huán)境進行感知和識別,以幫助機器人適應環(huán)境變化。

性能分析:
?阻抗響應性能:評估阻抗控制器對外部力變化的響應速度和穩(wěn)定性。
?阻抗參數分析:分析阻抗控制器中的參數對系統性能的影響,如阻尼、剛度和質量等參數。
?阻抗穩(wěn)定性分析:評估阻抗控制系統的穩(wěn)定性,包括阻抗穩(wěn)定性邊界和阻抗參數的穩(wěn)定性范圍。
?動態(tài)性能分析:分析阻抗控制器對不同頻率的外部力變化的動態(tài)響應性能。
?阻抗控制精度分析:評估阻抗控制器在實現期望的阻抗響應時的精度和穩(wěn)定性。
以下為阻抗控制簡單實現的MATLAB程序:
% 定義阻抗控制參數
M = 5;
B = 10;
K = 20;
% 定義初始位置和速度
x = 0;
xdot = 0;
% 定義時間步長和仿真時間
dt = 0.01;
T = 5;
% 初始化位置和速度數組
x_arr = zeros(1, T/dt);
xdot_arr = zeros(1, T/dt);
% 進行阻抗控制仿真
for i = 1:T/dt
% 計算外部力
F_ext = 10 * sin(i*dt);
% 計算加速度
xddot = (F_ext - B*xdot - K*x) / M;
% 更新位置和速度
xdot = xdot + xddot*dt;
x = x + xdot*dt;
% 存儲位置和速度
x_arr(i) = x;
xdot_arr(i) = xdot;
end
% 繪制位置和速度圖像
t = 0:dt:T-dt;
subplot(2,1,1)
plot(t, x_arr)
title('Position')
subplot(2,1,2)
plot(t, xdot_arr)
title('Velocity')
仿真結果如下:

對于二連桿機械臂的阻抗控制,需要考慮機械臂的動力學模型。需要更多的信息來確定機械臂的參數和控制目標:
% 定義阻抗控制參數
Md = diag([5, 5]);
Bd = diag([10, 10]);
Kd = diag([20, 20]);
% 定義機械臂質量和初始位置
m1 = 1;
m2 = 1;
l1 = 1;
l2 = 1;
q = [0; 0];
qdot = [0; 0];
% 定義時間步長和仿真時間
dt = 0.01;
T = 5;
% 初始化位置數組
q_arr = zeros(2, T/dt);
% 進行阻抗控制仿真
for i = 1:T/dt
% 計算外部力矩
tau_ext = [10 * sin(i*dt); 5 * cos(i*dt)];
% 計算關節(jié)慣量矩陣
M = [(m1+m2)*l1^2 + m2*l2^2 + 2*m2*l1*l2*cos(q(2)), m2*l2^2 + m2*l1*l2*cos(q(2));
m2*l2^2 + m2*l1*l2*cos(q(2)), m2*l2^2];
% 計算離心力與科氏力矩陣
C = [-m2*l1*l2*sin(q(2))*qdot(2), -m2*l1*l2*sin(q(2))*(qdot(1)+qdot(2));
m2*l1*l2*sin(q(2))*qdot(1), 0];
% 計算重力矩陣
G = [(m1+m2)*l1*9.8*cos(q(1)) + m2*l2*9.8*cos(q(1)+q(2));
m2*l2*9.8*cos(q(1)+q(2))];
% 計算期望加速度
qddot_d = Md (tau_ext - Bd*qdot - Kd*q);
% 計算控制力矩
tau = M*qddot_d + C*qdot + G - Bd*qdot - Kd*q;
% 更新位置和速度
qddot = M (tau + tau_ext - C*qdot - G);
qdot = qdot + qddot * dt;
q = q + qdot * dt;
% 存儲位置
q_arr(:,i) = q;
end
% 繪制位置圖像
t = 0:dt:T-dt;
subplot(211)
plot(t, q_arr(1,:))
title('Joint 1 Position')
subplot(212)
plot(t, q_arr(2,:))
title('Joint 2 Position')
-
傳感器
+關注
關注
2576文章
55035瀏覽量
791269 -
機器人
+關注
關注
213文章
31076瀏覽量
222201 -
測量
+關注
關注
10文章
5634瀏覽量
116723 -
力控
+關注
關注
0文章
22瀏覽量
8103
發(fā)布評論請先 登錄
工業(yè)機器人的基本結構
【機器人在線】工業(yè)噴涂機器人誤差修正方法發(fā)展趨勢
先進機器人控制
機器人、協作機器人和移動機器人,你分的清楚嗎
機器人基礎書籍
如何設計智能滅火機器人控制器?
競賽機器人制作技術(電路設計、編程方法、算法解析)
差速移動機器人軌跡跟蹤控制方法
機器人是什么?
通過多軸工業(yè)機器人來聊聊機器人控制系統以及控制器的實現
盤點工業(yè)機器人四種控制方法
力控機器人的控制框架和性能評估
力控機器人導納控制框架
力控機器人控制方法的框架及其性能分析
評論