0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

力控机器人控制方法的框架及其性能分析

麦辣鸡腿堡 来源:古月居 作者:古月居 2023-11-09 15:59 次阅读

力控机器人常采用柔顺控制算法与人/环境/机器人之间进行直接或间接的物理交互,那么,柔顺控制能够操纵被控系统的柔性特性和动态行为,实现方式可以分为被动柔顺和主动柔顺,具体分类如下图所示:

图片

力控机器人交互控制框架是用于实现机器人与外部环境或操作者之间的力互动的控制系统

在力控机器人交互控制中,主要涉及直接力控制、阻抗控制和导纳控制三种主要方法。下面是这些控制方法的框架及其性能分析:

1. 直接力控制框架:

力/力矩传感器:用于测量机器人与环境之间的力和力矩。

力/力矩控制器:根据传感器测量值和期望的力/力矩指令,生成控制指令以实现期望的力互动。

运动控制器:用于控制机器人的关节或末端执行器,以实现所需的运动轨迹。

环境建模与识别:用于对环境进行感知和识别,以帮助机器人适应环境变化。

图片

性能分析:

•力跟踪性能:评估力控制器的能力,以实现期望的力跟踪。

•运动轨迹跟踪性能:评估运动控制器的能力,以实现期望的运动轨迹跟踪。

•动态响应性能:评估系统对外部力变化的响应速度和稳定性。

•力/位置误差分析:分析力控制和位置控制之间的误差,以评估系统的精度和稳定性。

•稳定性分析:通过线性稳定性分析或Lyapunov稳定性分析等方法,评估力控制系统的稳定性。

2. 阻抗控制框架:

力/力矩传感器:用于测量机器人与环境之间的力和力矩。

阻抗控制器:根据传感器测量值和期望的力/力矩指令,生成控制指令以实现期望的阻抗互动。

运动控制器:用于控制机器人的关节或末端执行器,以实现所需的运动轨迹。

环境建模与识别:用于对环境进行感知和识别,以帮助机器人适应环境变化。

图片

性能分析:

•阻抗响应性能:评估阻抗控制器对外部力变化的响应速度和稳定性。

•阻抗参数分析:分析阻抗控制器中的参数对系统性能的影响,如阻尼、刚度和质量等参数。

•阻抗稳定性分析:评估阻抗控制系统的稳定性,包括阻抗稳定性边界和阻抗参数的稳定性范围。

•动态性能分析:分析阻抗控制器对不同频率的外部力变化的动态响应性能。

•阻抗控制精度分析:评估阻抗控制器在实现期望的阻抗响应时的精度和稳定性。

以下为阻抗控制简单实现的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)];
    
    % 计算关节惯量矩阵
    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')
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 传感器
    +关注

    关注

    2526

    文章

    48110

    浏览量

    740108
  • 机器人
    +关注

    关注

    206

    文章

    27043

    浏览量

    201418
  • 测量
    +关注

    关注

    10

    文章

    4223

    浏览量

    109740
  • 力控
    +关注

    关注

    0

    文章

    21

    浏览量

    7808
收藏 人收藏

    评论

    相关推荐

    工业机器人的基本结构

    工具(如焊枪、喷嘴、机加工刀具、夹爪)与主构架的连接机构,它具有3个自由度。 驱动系统为机器人各运动部件提供、力矩、速度、加速度。 测量系统用于机器人运动部件的位移、速度和加速度的测量。
    发表于 01-19 10:36

    什么是工业机器人

    机器人按程序输入方式区分有编程输入型和示教输入型两类。编程输入型是将计算机上已编好的作业程序文件,通过RS232串口或者以太网等通信方式传送到机器人控制柜。示教输入型的示教方法有两种:
    发表于 01-19 10:58

    如何轻松解决机器人线束问题?

    的问题,运行起来必然高效自如。大家还知道其他关于机器人线束连接可靠的方法么?或者说确保机器人质量性能的有效方法和制造模式等等。有兴趣的都可以
    发表于 04-25 16:34

    辰汉-如何实现服务机器人的运算与控制

    的能力。红外模块可以实现对一些外部电器的操控,电池和电池管理模块给整个机器人的运转提供能量。辰汉-硬件结构是实现服务机器人运算和控制的基础,在高性能嵌入式处理器上运行的操作系统,进行着
    发表于 06-09 17:18

    机器人在线】工业喷涂机器人误差修正方法发展趋势

    一些问题进行仿真分析,也能够一定程度上解决一些问题,但如果可以在样机上加装一些实验仪器进行实验分析的话效果更佳,同时,机器人控制问题、优化问题也是提高
    发表于 07-13 16:03

    先进机器人控制

    ,运动学部分从坐标变换人手,介绍了正向运动学方程的建立、逆向运动学的求解以及机器人的微分运动等内容。控制结构篇着重介绍机器人的传感技术、位置控制
    发表于 09-19 15:30

    机器人、协作机器人和移动机器人,你分的清楚吗

    ),除非风险评估另有要求。 适当的风险评估可以根据ISO 13849:2006的附录A进行,但自2016年起,R15.306已成为机器人专用的风险评估方法。进行风险评估时,应假设用户没有佩戴任何个人
    发表于 10-30 11:33

    机器人基础书籍

    列举部分学习过程中接触的部分书籍,部分有中文版,部分有更新版本。1.机器人基础书籍适合入门的书籍:机器人机器人建模规划与控制机器人学、
    发表于 05-22 06:53

    如何设计智能灭火机器人控制器?

    与可靠的机械控制性能的同时保证,才能在短时间内准确寻找到火源并灭火回家。在此以ARM9处理器为核心,对基于嵌入式系统的智能灭火机器人进行了设计。本文将从硬件和软件方面讲述智能灭火机器人控制
    发表于 07-31 06:23

    竞赛机器人制作技术(电路设计、编程方法、算法解析)

    《竞赛机器人制作技术》通过实验操作的方法向读者传授竞赛机器人的制作技术,在介绍多种竞赛机器人的功能及其国内外赛事和竞赛
    发表于 12-25 07:00

    桁架机器人的概念与特点都有哪些?

    ,各机器人行走轴由重载铝型材、滚轮直线导轨和伺服电机等组成。作为运动框架和载体的重载铝型材其截面形状通过有限元分析法来优化设计,生产中的精益求精确保其强度和直线度。工业应用中,能够实现自动控制
    发表于 11-30 09:44

    差速移动机器人轨迹跟踪控制方法

    差速移动机器人轨迹跟踪控制方法一、引言二·、基础准备1.去除GPS数据中的坏点2.经纬度与平面坐标系转换3.差速移动机器人数学建模三、基于PID的差分移动
    发表于 09-01 08:41

    刚柔软机器人设计与仿真分析实例解析

    分析实例七、软体手柔性抓取控制与实验Matlab与机器人的通讯方法设计机器人逆运动学求解视觉处理方法
    发表于 09-02 11:17

    机器人是什么?

    机器。一些书呆子式的语言可能会把它描述成“一个可重新编程的多功能机械手,旨在通过各种编程的动作移动材料、部件、工具或专门设备,以完成各种任务”。这个定义非常具有表现。那么制造机器人的要素是什么呢
    发表于 03-31 10:31

    通过多轴工业机器人来聊聊机器人控制系统以及控制器的实现

    机器人控制系统当中。那么今天,我们就通过多轴工业机器人来聊聊机器人控制系统以及控制器的实现。 
    发表于 02-24 17:05