第一句子网 - 唯美句子、句子迷、好句子大全
第一句子网 > 【控制control】机器人运动控制器----基于模型的控制方法(关节控制--阻抗控制)

【控制control】机器人运动控制器----基于模型的控制方法(关节控制--阻抗控制)

时间:2022-12-05 16:00:25

相关推荐

【控制control】机器人运动控制器----基于模型的控制方法(关节控制--阻抗控制)

系列文章目录

提示:这里可以添加系列文章的所有文章的目录,目录需要自己手动添加

TODO:写完再整理

文章目录

系列文章目录前言一、设计基于模型泛型控制器的步骤二、机械臂控制科普1.工业机械臂性能指标(1)静态精度指标(1)位姿准确度(2)位姿重复性(2)动态(或者过程)精度指标(1)轨迹准确度(2)轨迹重复性2.工业机械臂的系统组成3.工业机械臂类型三、基于模型的机器臂控制器1.【基于运动学模型】轨迹规划控制方法(1)原理(2)针对的问题(要解决的问题类型)(1)正运动学问题--从关节角到末端位置(2)逆运动学问题--从末端位置到关节角(3)速度运动学问题--关节速度与末端速度之间的关系(4)路径规划与轨迹生成问题(3)轨迹规划控制应用类型【重点】(1)路径规划(2)轨迹规划(3)轨迹平滑过渡FLYBY(4)基于运动学模型轨迹规划控制方法的优缺点2.【基于动力学模型】独立关节控制方法(1)原理(2)针对的问题(要解决的问题类型)(1)正动力学问题--依据输出决定系统状态变化(2)逆动力学问题--依据任务求解关节输入(3)独立关节控制与多变量控制问题(3)独立关节控制方法应用【重点】(0)控制原理(1)嵌套闭环反馈控制(相当于无模型的闭环系统)(2)直接用模型解算力矩控制(相当于一个开环系统)(3)力控制【经典且重点】1、阻抗控制【重点】(1)阻抗控制各种名称(2)阻抗控制的目的(3)阻抗控制背景(4)机械上理解阻抗控制(5)控制算法上理解阻抗控制(阻抗控制是闭环控制)(6)用自动控制原理来理解阻抗控制算法(7)阻抗控制注意点(8)阻抗控制的优点(9)阻抗控制和导纳控制的推导过程对比参考文献2、混合位置力控制方式(4)柔顺控制【SEA方案】(1)主动柔顺性概念(2)被动柔顺性概念(3)前馈力矩+柔顺控制框图(4)控制率(5)效果(4)基于动力学模型独立关节控制方法的优缺点3.视觉伺服控制方法4.约束系统控制方法5.自适应控制方法

前言

认知有限,望大家多多包涵,有什么问题也希望能够与大家多交流,共同成长!

(1)基于无模型的控制方法

如:PID反馈控制器、前馈控制器、前馈+反馈控制器等等

(2)基于模型的控制方法

如:机械臂模型(几何解算)控制器、小车底盘运动学模型(几何解算)的控制器、四足机器人模型(预测迭代)的控制器等等

(3)基于先进控制方法

如:微分平坦(无人机的轨迹跟随)等等

(4)基于模型预测控制MPC(MPCC)控制方法

如:MPC优化控制算法

(5)基于线性二次调节器(LQR)控制方法

如:线性二次调节器(LQR)是基于模型的控制器,使用车辆状态来使误差最小化,Apollo使用LQR进行横向控制。

横向控制包含四个组件:横向误差、横向误差的变化率、朝向误差和朝向的变化率。

除状态外,还有是三个控制输入:转向、加速和制动

本文先对**机器人运动控制器----基于模型的控制方法(机械臂关节控制)**做个简单的介绍,具体内容后续再更,其他模块可以参考去我其他文章


提示:以下是本篇文章正文内容

一、设计基于模型泛型控制器的步骤

(1)根据驱动器的控制方式和机器人的性能需求建立适合的模型,即选择运动学模型或者动力学模型

(2)给机器人建立合适坐标系进行描述,【防盗标记–盒子君hzj】在该坐标系上找到控制量的关系,根据该关系推导出运动学模型或者动力学模型,再把模型的表达式整理成矩阵的形式,方便计算机进行计算

(3)根据机器人上的传感器观测数据类型和模型的关系+机器人控制器要实现什么功能,为每个控制量建立一个闭环控制器,控制器框图表达出来,控制器能独立也能相互嵌套,实现相应的控制

(4)对观测传感器数据进行优化滤波,【防盗标记–盒子君hzj】使输入的数据更理想

(5)对控制器的参数进行整定,使控制器性能更好

.

.

二、机械臂控制科普

1.工业机械臂性能指标

难点是机器人的柔顺性、速度和精度

(1)静态精度指标

(1)位姿准确度

指令位姿从同一方向接近该指令位姿时的实到位姿平均值之间的偏差

1)位置准确度:【防盗标记–盒子君hzj】指令位姿的位置与实到位置集群中心之差

2)姿态准确度:指令位姿的姿态与实到姿态平均值之差

(2)位姿重复性

机器人对同一指令位姿从同一方向重复响应n次后实到位姿的一致程度

1)位置准确度:位置重复性为位置集群中心为球心的球半径RP1之值

2)姿态准确度:姿态重复性为围绕平均值的角度散布

.

(2)动态(或者过程)精度指标

(1)轨迹准确度

表示机器人在同一方向上沿指令轨迹 n 次移动其机械接口的能力

轨迹准确度由下述两个因素决定:

—、 指令轨迹的位置与各实到轨迹位置集群的中心线之间的偏差(即 位置轨迹准确度)

二、指令姿态与实到姿态平均值之间的偏差(即姿态轨迹准确度)

(2)轨迹重复性

表示机器人对同一指令轨迹重复 n 次时实到轨迹的一致程度。【防盗标记–盒子君hzj】对某一给定轨迹跟踪

n 次轨迹重复性可表示为

在不同计算点处围绕平均值的最大角度散布。

等于计算的在正交平面内且圆心在集群中心线上圆的半径的最大值。

在不同计算点处围绕平均值的最大角度散布。

等于计算的在正交平面内且圆心在集群中心线上圆的半径的最大值。

.

.

2.工业机械臂的系统组成

(1)机械本体

精密减速机、伺服电机【防盗标记–盒子君hzj】、伺服驱动器、控制系统(核心零部件)

(2)控制柜

(3)示教盒【示教遥控器】

.

.

3.工业机械臂类型

(1)关节型机械臂:串联垂直多关节6轴机器人

(2)SCARA机械臂

(3)笛卡尔机械臂

(4)Delta并联机械臂【防盗标记–盒子君hzj】

(5)双平行四边形机械臂(码垛机器人)

(6)其他类型机械臂:圆柱形、球坐标

.

.

三、基于模型的机器臂控制器

1.【基于运动学模型】轨迹规划控制方法

(1)原理

按照实际轨迹与期望轨迹的偏差进行负反馈控制

.

(2)针对的问题(要解决的问题类型)

(1)正运动学问题–从关节角到末端位置

通过编码器获取关节角度【防盗标记–盒子君hzj】,已知关节角度​ 求末端位置​

.

(2)逆运动学问题–从末端位置到关节角

作业任务对机器人末端位置提出要求,已知末端位置​ 求关节角

.

(3)速度运动学问题–关节速度与末端速度之间的关系

希望机器人以指定的速度沿着曲面轮廓运动,研究机器人关节速度​与末端位姿速度的X之间的关系

.

(4)路径规划与轨迹生成问题

1、路径规划:path planning(不考虑时间)

任务空间或者构型空间选取一条路径使机器人运动到目标位置,不考虑沿轨迹运动的速度和加速度

2、轨迹生成:Trajectory generation(考虑时间)

确定机器人沿给定路径从起始到最终构型运动的时间 序列,【防盗标记–盒子君hzj】通常在关节空间以时间多项式的形式给出

(3)轨迹规划控制应用类型【重点】

(1)路径规划

1、目的:在任务空间或者构型空间选取一条路径使机器人运动到目标位置

2、路径规划方法:基于图搜索的算法、【防盗标记–盒子君hzj】基于采样的算法、基于动力学的算法…

具体思想原理和我决策规划专栏如出一辙,请转战以下哪个专栏的规划前端部分

.

(2)轨迹规划

1、目的

如何实现机器人从起点到终点运动时要经过若干中间点,描述每个自由度的位置、速度、加速度的时间历程

确定机器人沿给定路径从起始到最终构型运动的时间序列,通常在关节空间以时间多项式的形式给出

2、轨迹生成方法

直线与圆弧轨迹规划、五次多项式轨迹等等

具体思想原理和我决策规划专栏如出一辙,【防盗标记–盒子君hzj】请转战以下哪个专栏的规划后端部分

.

(3)轨迹平滑过渡FLYBY

1、目的

机器人从前一条轨迹运动到后一条轨迹之间不停止,如:

① 直线过渡到直线

② 直线过渡到圆弧

③ 圆弧过渡到圆弧

④ 圆弧过渡到直线

2、轨迹平滑过渡的方法

一般使用曲线拟合的方法、贝塞尔曲线、B样条曲线、三五次样条曲线等等

具体思想原理和我决策规划专栏如出一辙,请转战以下哪个专栏的规划曲线拟合部分~

.

.

(4)基于运动学模型轨迹规划控制方法的优缺点

1)优点

控制规律简单、易于实现

2)缺点

难以保证良好的动态品质,需要较大的控制能量

.

.

2.【基于动力学模型】独立关节控制方法

(1)原理

根据动力学模型设计非线性控制律

(2)针对的问题(要解决的问题类型)

(1)正动力学问题–依据输出决定系统状态变化

已知某时刻关节状态​ 和转矩 ​ ,求关节加速度 ​

.

(2)逆动力学问题–依据任务求解关节输入

已知期望的器人的运动轨迹,求解关节驱动力矩【防盗标记–盒子君hzj】

.

(3)独立关节控制与多变量控制问题

.


(3)独立关节控制方法应用【重点】

(0)控制原理

将每一个关节看作一个独立的控制系统,让每个关节精确低跟随各个关节角度轨迹【防盗标记–盒子君hzj】,控制必须考虑关节上的各种干扰力矩,如重力、摩檫力等等

(1)嵌套闭环反馈控制(相当于无模型的闭环系统)

(1)控制原理

嵌套控制回路是一种常见的控制结构,外环使用P控制或者PI控制产生一个期望的速度,负责保持关节位置,并确定使位置误差最小的关节速度;内环使用P控制或者PI控制或加一个前馈力矩产生一个和力矩,负责保持外环所需要的关节速度。

在实际应用中,控制系统一般同时采用前馈和反馈控制,通过使用积分控制项,提高跟踪的精度,通过使用前馈,预测干扰力矩

注意这种控制当时类似于双闭环控制

.

(2)速度内环控制

方法:纯P控制、PI控制、PI控制+前馈力矩控制

具体设计控制流图和控制率,参考我那片PID控制器设计的博客,请转战一下~

.

(3)位置外环控制

方法:纯P控制、PI控制、PI控制+前馈力矩控制【防盗标记–盒子君hzj】

具体设计控制流图和控制率,参考我那片PID控制器设计的博客,请转战一下~


(2)直接用模型解算力矩控制(相当于一个开环系统)

控制流程图和控制率得根据具体模型进行推导,使用动力学模型直接解算出关节力矩输出

这只是一种思想,核心是建立机器人得运动方程并进行实时解算!

ROS得moveit的运动学与动力学ID/IK插件就是用这种方法,解算器的源码也是开源的,可深入研究~


(3)力控制【经典且重点】

1、阻抗控制【重点】
(1)阻抗控制各种名称

Impedance control(阻抗控制)、stiffness control(刚度控制)、admittance control(导纳控制)、compliance control(合成控制)

.

(2)阻抗控制的目的

让机器人表现出Mass-Spring-Damper(质量弹簧减振器)二阶系统相同的性质

机器人腿部的运动轨迹跟踪就是位置控制,机器人最传统、最常用的控制方式就是位置控制了。完全开环力控柔顺性好了,但是位置极不精确,失去了力控的意义,【防盗标记–盒子君hzj】我们对机器人的足端轨迹既要追求位置尽可能精确,又要符合一定有柔顺性,这里可以通过调节参数达到两者的一个平衡点,阻抗控制是柔顺运动的一种方法,柔顺控制(阻抗控制或者导纳控制)时,机械臂正在移动,如果突然来了一个外力,机器人将顺着这个外力运动,外力撤销之后,再回复到之前的状态。就像一个人突然被推了一下,人会产生一个惯性运动。

PID控制器的一个功能是消除扰动,外力加上来想要改变机器人原本运动的位置,【防盗标记–盒子君hzj】可PID控制器获得反馈信号之后,输出的效果是让抵消外力的干扰,这两者之间是一个对抗的关系,这就不柔顺了!

把位置数据和速度数据输出为力矩数据

.

(3)阻抗控制背景

阻抗控制在工业界用的越来越多了,包括协同控制机器人,医疗机器人,服务机器人等,只要是涉及到与人和环境交互的机器人,大多都会考虑阻抗控制,阻抗出现在机器人与环境交互的关系描述上,一般用来描述力和运动之间的关系

PID位置控制框图(对比)

PID控制器的一个功能是消除扰动,外力加上来想要改变机器人原本运动的位置,可PID控制器获得反馈信号之后,输出的效果是让抵消外力的干扰,这两者之间是一个对抗的关系,这就不柔顺了!

.

(4)机械上理解阻抗控制

吧四足机器人的腿和躯干两部分的连接想像成由弹簧、阻尼、质量块系统构成.通过调节弹簧胡可系数K(相当于比例系数)和阻尼的摩擦系数D,【防盗标记–盒子君hzj】可以达到一个平衡的满足系统控制要求的效果

当机器人运动的时候,弹簧不是刚性的,运动效果会延迟,使得机器人运动具有柔顺性【调节K参数】;阻尼会产生摩擦力从而消耗能量,从而避免弹簧的无限振荡【调节D参数】;【防盗标记–盒子君hzj】不同质量块的质量不同,质量是系统的固有参数,一般无法调节或者说该参数对系统影响不大【调节M参数】

.

(5)控制算法上理解阻抗控制(阻抗控制是闭环控制)

1)阻抗控制算法的必要性

机器人不能总是有弹簧相助,而且机械弹簧的刚度(stiffness)不能按需调节,也很难做到各向异性(在不同方向上有不同的刚度)。所以希望能用控制算法让机器臂表现出想要的柔性。【防盗标记–盒子君hzj】通过控制,让机器人由等价的表现

.

2)阻抗控制和导纳控制的核心思想公式描述

公式:

(F是控制模型的力,一般可以不考虑先,当真正系统又驱动力才建立这个动力学模型,Fest是外部接触力(反作用力)x是一个偏差【x是期望位置和当前位置的差】)

(1)F是控制模型的力,一般可以不考虑先,【防盗标记–盒子君hzj】当真正系统存在驱动力才建立这个动力学模型

(2)Fest是外部接触力(反作用力)

(3)x是一个偏差【x是期望位置和当前位置的差】

(4)k(弹簧):对任务的影响很大,因此绝大多数柔顺控制的算法都可以调节k,而且一般可为不同的方向设定不同的k值;阻抗参数K是反映机械手刚度变化的量,它的调整直接反映了机械手在与环境接触时是呈现刚的特性还是呈现柔的特性。一般来说, 减小刚度参数K会使机械手与环境的接触力变小,增大刚度参数会使机械臂与环境的接触力变大

(5)M(惯性):M在奇异点以外的地方一般不会太大,【防盗标记–盒子君hzj】因此大部分实现中M是不能调节的,在其他参数不变的情况下调整惯性参数M可以使接触力变大或减小, 当M增大时获得接触力的稳定值也越大,当M减小时获得接触力的稳定值也越小

(6)D(摩擦): 由于它是阻尼参数, 它的增大或减小一般不会使接触力的稳定值变化, 它的增大或减小只会使机械臂与环境接触时的过程发生变化。【防盗标记–盒子君hzj】一般来说, 增大阻尼参数D(阻尼), 会使力响应的超调减小, 力峰值显著下降;但过大的阻尼参数会使力响应达到稳定的时间变慢

.

3)目标阻抗通常会选用一个线性二阶系统。常见的有三种形式其对应的物理模型

第一个公式的意义表示参考位置不变

第二个公式的意义表示参考位置一直在匀速运动

第三个公式的意义表示参考位置一直在匀加速速运动

.

.

(6)用自动控制原理来理解阻抗控制算法

1)阻抗控制:基于位置控制的外环与力控制的内环。需要对系统的动力学进行建模。

2)导纳控制:基于位置控制的内环与力控制的外环。【防盗标记–盒子君hzj】需要用PD控制模拟位置的输出

3)基本思想:检测系统与外界的接触力F,通过一个二阶导纳模型(Md,Bd,Kd>0),生成一个附加的位置,此附加外置再去修改预先设定的位置轨迹,最终送去位置控制内环,完成最终的位置控制。

.

.

(7)阻抗控制注意点

1)只要公式不写错,阻抗控制理解可以有很多种

2)对于阻抗模型的简化可以把阻尼器的力看成一个恒力,这样就不用测量速度了

3)对于力控制,最困难的还是如何获取机器人与外界的交互力。【防盗标记–盒子君hzj】现有的工业机器人以及类似UR这种的,通过电流环获取交互力的精度较差;而在这些机器人上增加各种力检测设备,却会很大程度上增加成本,一个好点的六轴力传感器可能比机械臂本体还贵

.

.

(8)阻抗控制的优点

1)仅仅是二阶系统,不是高阶系统计算还是很简单的,分析也是很简单的

2)无论阻抗控制还是导纳控制输入都是位置的偏差,【防盗标记–盒子君hzj】输出的是力矩,都要检测接触力和当前位置(用IMU,逆运动学及其求导(微分))

3)无论是阻抗控制还是导纳控制,控制效果是差不多的,因为阻抗控制和导纳控制都是基于质量-弹簧-阻尼模型的,具有相同的原理,仅仅是控制率的表达式不一样而已

.

.

(9)阻抗控制和导纳控制的推导过程对比

1、步骤一:分析确定机器人对象能不能建立动力学模型,【防盗标记–盒子君hzj】若能最好用阻抗控制,反之用导纳控制。(这里假设机器人对象符合常用的刚体模型,其受力分析(动力学模型)为:

2、步骤二:明确阻抗\导纳控制核心表达式(考虑驱动器产生的力矩,不考虑接触力

3、步骤三:确定使用阻抗\导纳控制

【阻抗控制推导及分析】

结合公式(1)和公式(2),计算出阻抗控制率:

阻抗控制根据期望位置 [公式] ​,实际位置x和外力 [公式] 算出输出力F,输出力F作用在对象模型上,可以看到阻抗控制的内部回路是一个力环,外部是一个位置环,工程上当前位置和接触力是要通过测量得到的【防盗标记–盒子君hzj】(位置传感器得到x及微分得到速度加速度,或者使用IMU进行微积分),阻抗控制器用到动力学模型(公式一)

【导纳控制推导及分析】

导纳控制的位置控制器用一个PD控制器来实现【PD位置环】

结合公式(1)和公式(4)得到:

公式(2)展开得到:

结合公式(6)(4)(1)【公式(5)只是过渡公式】得到

参考文献

(1)Unified Impedance and Admittance Control

(2)Control Algorithms for Haptic Interaction and Modifying the Dynamical Behavior of the Interface

.

.

.

2、混合位置力控制方式

除了阻抗\导纳控制模型外,【防盗标记–盒子君hzj】该有相对落后一点的既有力控又有位控的力位混合控制模型(比较依赖相位和状态机

这种方法设计控制器切换–使用了状态机。我另外开一个博客写~

.

.


(4)柔顺控制【SEA方案】

(1)主动柔顺性概念

机器人利用力反馈信息采用一定的控制 方法 去主动控制作用力,称为主动柔顺性

典型应用:

HYQ 机器人,通过实时改变电机 PID 控制器的 PD 参数,【防盗标记–盒子君hzj】相当于实时调整机器人腿部的刚度和阻尼,将电机模拟成被动柔顺元件,控制回路分为内环和外环,外环利用关节角位置作为反馈,输出扭矩信号。该扭矩信号作为内环扭矩控制回路的参考,基于低阶模型设计了高性能转矩控制器,在不需要实际弹簧的情况下成功实现可调阻抗

(2)被动柔顺性概念

机器人凭借柔顺机构(如弹簧),使其在与环境接触时能够对外部作用力产生自然顺从,称为被动柔顺性

典型应用:

被动柔顺 控制的 典 型应用是 串 联弹性驱动器(SeriesElasticActuator,SEA),【防盗标记–盒子君hzj】通过在传统的刚性致动器和 连 杆 之 间 放 置 被 动 柔 顺 元 件 而 设 计。StarlETH 机器人应用 SEA,可以精确地控制关节扭矩和存储大量的能量,弹簧将变速箱与连杆分离,使得机器人与地面接触时具有鲁棒性。这种设计有效地减少了 StarlETH 的能量损耗,总功率小于230W

.

(3)前馈力矩+柔顺控制框图

我找找笔记整理一下在放上来~

.

(4)控制率

我找找笔记整理一下在放上来~

.

(5)效果

前馈力矩控制和柔顺控 制可以同时应 用于四足机器人控制,使得四足机器人同时具有柔顺阻抗特性和快速的动态响应,这种柔性的动力学效果相当于在电机和负载之间增加了一个小阻尼弹簧,【防盗标记–盒子君hzj】有效降低了机器人与人发证碰撞的危险性

.

.

.

(4)基于动力学模型独立关节控制方法的优缺点

(1)优点

可实现良好的动态品质

(2)缺点

需要实时进行动力学计算、给实时控制带来困难


3.视觉伺服控制方法

加入了视觉感知模块的反馈信息输入,而不仅仅使用机械臂机载位置和力传感器实现

具体又一个GitHub,我找找~忘了

.

.

4.约束系统控制方法

这里设计一部分是优化理论,待补充~

.

.

5.自适应控制方法

待补充~

.

.

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。