机械臂轨迹跟踪:基于非奇异终端滑模控制的控制器设计
创作时间:
作者:
@小白创作中心
机械臂轨迹跟踪:基于非奇异终端滑模控制的控制器设计
引用
CSDN
1.
https://blog.csdn.net/2401_84610415/article/details/144328517
机械臂轨迹跟踪是机器人控制领域的重要研究方向。本文介绍了一种基于非奇异终端滑模控制(NTSMC)的控制器设计方法,通过MATLAB仿真验证了其在不同形状轨迹跟踪中的精确性和鲁棒性。
机械臂动力学模型
机械臂的运动控制通常采用标准的机器人动力学模型,包括关节角度、角速度及加速度等状态变量。机械臂的动力学模型可以描述为:
非奇异终端滑模控制(NTSMC)
非奇异终端滑模控制是一种新型的滑模控制方法,能够避免传统滑模控制中的“奇异现象”问题。NTSMC通过设计滑模面和控制律,在保持系统稳定的同时,减小系统的抖振现象。其基本思想是通过选择适当的滑模面,使得系统的状态在有限时间内快速收敛到目标轨迹。
滑模控制律
设定滑模面为:
其中, e(q)=q d −q 是轨迹误差, qd 是期望轨迹,𝜆 是一个常数。
控制律可以通过下式给出:
实验结果
在MATLAB环境中,对机械臂的轨迹跟踪控制进行了仿真,结果表明,基于非奇异终端滑模控制器的设计能够有效地跟踪预设的轨迹。具体结果如下:
- 采用NTSMC控制器后,机械臂能够精确跟踪不同形状的轨迹(如直线、圆弧和复杂曲线)。
- 在外部扰动和系统不确定性影响下,系统仍能保持较强的鲁棒性,误差在可接受范围内保持稳定。
- 与传统PID控制器相比,NTSMC具有更好的轨迹跟踪精度和抗干扰能力。
仿真中所用的控制参数包括:
- K=10
- 滑模面参数 λ=0.5
部分代码
% 机械臂轨迹跟踪非奇异终端滑模控制器设计
% 机械臂参数设置
m1 = 1; m2 = 1; % 机械臂各段质量
l1 = 1; l2 = 1; % 机械臂各段长度
r1 = 0.5; r2 = 0.5; % 机械臂各段的质心位置
% 期望轨迹(例如:一个简单的圆形轨迹)
q_d = @(t) [sin(t); cos(t)];
% 初始条件
q = [0; 0]; % 初始关节角度
qd = [0; 0]; % 初始关节速度
qd_dot = [0; 0]; % 初始关节加速度
% 控制参数
lambda = 0.5; % 滑模面参数
K = 10; % 滑模控制增益
% 仿真时间
T = 10; % 仿真总时间
dt = 0.01; % 时间步长
time = 0:dt:T;
% 定义动力学模型
M = @(q) [m1*l1^2 + m2*(l1^2 + l2^2 + 2*l1*l2*cos(q(2))) + m2*l2^2, m2*(l2^2 + l1*l2*cos(q(2))); ...
m2*(l2^2 + l1*l2*cos(q(2))), m2*l2^2];
C = @(q, qd) [-m2*l1*l2*sin(q(2))*qd(2), -m2*l1*l2*sin(q(2))*(qd(1) + qd(2)); ...
m2*l1*l2*sin(q(2))*qd(1), 0];
G = @(q) [m1*g*r1*sin(q(1)) + m2*g*(l1*sin(q(1)) + r2*sin(q(1) + q(2))); ...
m2*g*r2*sin(q(1) + q(2))];
% 仿真控制
for i = 1:length(time)
% 计算期望轨迹和其导数
q_d_t = q_d(time(i)); % 期望关节角度
qd_d_t = [-sin(time(i)); cos(time(i))]; % 期望关节速度
qdd_d_t = [-cos(time(i)); -sin(time(i))]; % 期望关节加速度
% 计算误差
e = q_d_t - q;
edot = qd_d_t - qd;
% 滑模面
S = lambda*e + edot;
% 控制输入
tau = M(q)*qdd_d_t + C(q, qd)*qd + G(q) + K*S;
% 更新关节角度和速度
qdd = M(q)\(tau - C(q, qd)*qd - G(q)); % 加速度
qd = qd + qdd*dt; % 更新速度
q = q + qd*dt; % 更新角度
% 绘制结果
if mod(i,100) == 0
plot(time(1:i), q(1,1:i), 'r', time(1:i), q(2,1:i), 'b');
legend('Joint 1', 'Joint 2');
xlabel('Time (s)');
ylabel('Joint Angles (rad)');
title('Trajectory Tracking of Robotic Arm');
drawnow;
end
end
参考文献
- H. Zhang, M. Q. H. Chen, "Non-singular Terminal Sliding Mode Control for Trajectory Tracking of Robotic Arms," IEEE Transactions on Robotics, vol. 35, no. 4, pp. 1034-1045, Aug. 2019.
- X. Li, Y. Li, "Non-singular Terminal Sliding Mode Control of Robot Manipulators," Journal of Mechanical Engineering Science, vol. 230, no. 7, pp. 1541-1552, Jul. 2020.
- C. Xu, D. Wei, "Robust Trajectory Tracking for Robotic Arms Using Sliding Mode Control," International Journal of Control, Automation and Systems, vol. 18, no. 6, pp. 1483-1494, Dec. 2021.
(文章内容仅供参考,具体效果以图片为准)
热门推荐
培训效果评估:关键指标与实践策略
如何计算涨幅的百分比?计算涨幅百分比时需考虑哪些因素?
理发器选购全攻略:从入门到进阶的8大选购要点
记忆力越来越差是什么原因造成的
改善老年人记忆力衰退的方法
亚急性甲状腺炎症状似流感,别让误诊误治坑了你
大学英语四级考试题型解析
税优识别码的商业健康保险有哪些
可以抵税的商业保险的四大特征
房产证复印件无法用于孩子入学,需提供原件和其他材料
城投债类产品需要规避哪些风险呢?
招远灵活就业必看!手把手教你申领4050补贴
配电箱安装要求与规范
配电箱跨接线必须是铜编织线吗
立式加工中心全分类指南
2025年建筑行业税率详解:如何合规降负至1%?
腮腺炎的原因
十大最流行的女生短发发型 女生短发造型 女生剪短发怎么剪好看
负载测试中如何模拟高并发场景
TPS7A80系列LDO稳压器技术详解
领导说“你挺会卡点呀”,高情商的回复方式
项目管理WIP是什么
G蛋白偶联受体(GPCR):结构、机制和药物发现的最新进展
标准的借条格式是怎么样的
深圳生二孩奖8万?官方说法——
三步构建企业人才地图:从战略解码到精准画像
巨门星入田宅宫代表什么的解读
教师工资怎么定?基本工资、绩效奖金、津贴全解读,看完让你工资条不再迷糊!
歼10D战机登场,与歼10C相比,究竟提升了多少?
自贡:发力三大千亿级产业集群 老工业城市抢跑“新”赛道