机械臂单关节模型与控制

  • 电机模型
  • 传动比与有效惯量
  • 结构柔性
    • 估计共振频率
  • 单关节控制

本文为机器人学导论 1一书的学习笔记,具体内容请详阅书籍内容

电机模型

一般来说,电机电枢电流与输出转矩的关系可表示为:
τm=kmia\tau_{m}=k_{m} i_{a}τm​=km​ia​
当电机转动时,则成为一个发电机,在电枢上产生一个电压。反电势常数,即给定转速是产生的电压为:
v=keθ˙mv=k_{e} \dot{\theta}_{m}v=ke​θ˙m​
换向器实际上是一个开关,使电流通过变化的线圈绕组产生转矩,并产生一定的转矩波动。但这种影响可忽略不计(模型建立困难,误差补偿也很困难)

图1 直流力矩电机的电枢电路

图1为电枢电路。主要构成部分为电源电压vav_{a}va​,电枢绕组感抗lal_{a}la​,电枢绕组电阻rar_{a}ra​及产生的反电势vvv。电路可用如下一阶微分方程描述:
lai˙a+raia=va−keθ˙ml_{a} \dot i_{a}+r_{a} i_{a}=v_{a}-k_{e} \dot{\theta}_{m}la​i˙a​+ra​ia​=va​−ke​θ˙m​
一般用电机驱动器控制电机的转矩(而不是速度)。驱动电路通过检测电枢电流不断调节电源电压以使通过电枢的电流为期望电流iai_{a}ia​。在电流驱动系统中,由电机感抗lal_{a}la​和电源电压的上限vav_{a}va​控制电枢电流变化的速率。实际上相当于在工作电流和输出转矩之间存在一个低通滤波器。
为简化起见,假设电机的感抗可以忽略。这个假设合理的前提是闭环控制系统的固有频率远低于由于感抗引起的电流驱动器中隐含的低通滤波器的截止频率。这表明电机转矩可以直接控制。

传动比与有效惯量

图2 通过齿轮减速器与惯性负载相连的直流力矩电机的力学模型

图2所示为通过齿轮减速器与惯性负载相连的直流力矩电机转子的力学模型。传动比(η)可提高驱动负载的力矩,降低负载的转速,由下式表示:
τ=ητm\tau=\eta \tau_{m}τ=ητm​
θ˙=(1/η)θ˙m\dot{\theta}=(1 / \eta) \dot{\theta}_{m}θ˙=(1/η)θ˙m​
按照转子力矩写出系统的力矩平衡方程如下:
τm=Imθ¨m+bmθ˙m+(1/η)(Iθ¨+bθ˙)\tau_{m}=I_{m} \ddot{\theta}_{m}+b_{m} \dot{\theta}_{m}+(1 / \eta)(I \ddot{\theta}+b \dot{\theta})τm​=Im​θ¨m​+bm​θ˙m​+(1/η)(Iθ¨+bθ˙)
ImI_{m}Im​和III分别为电机转子惯量和负载惯量。bmb_{m}bm​和bbb分别为电机转子轴承和负载轴承的粘滞摩擦系数。
将其根据负载变量写为:
τ=(I+η2Im)θ¨+(b+η2bm)θ˙\tau=\left(I+\eta^{2} I_{m}\right) \ddot{\theta}+\left(b+\eta^{2} b_{m}\right) \dot{\theta}τ=(I+η2Im​)θ¨+(b+η2bm​)θ˙
I+η2ImI+\eta^{2} I_{m}I+η2Im​被称为减速器输出端(连杆侧)的有效惯量。b+η2bb+\eta^{2} bb+η2b称为有效阻尼
可见,在大传动比(η远大于1)情况下,电机转子惯量是有效组合惯量中的主要部分。此时可设有效惯量为一个常数。实际上,机构关节的惯量III是随着机构位形和负载变化的。然而在大传动比机器人中,这种变化的比例小于直接驱动操作臂。为确保机器人连杆的运动永远不为欠阻尼,有效惯量应为取值范围内的最大值,即ImaxI_{max}Imax​。

结构柔性

建模过程中的另一个主要假设是减速器、轴、轴承以及被驱动连杆是绝对刚体。实际上这些元件刚度都是有限的,其柔性将增加系统的阶次。忽略柔性影响的理由是这些系统刚度极度,未建模共振的固有频率非常高,与已建模的二阶主极点的影响相比可忽略不计。
在建模时未考虑系统的结构柔性,必须注意不能激发起这些共振模态。方法为如果最低结构共振频率为ωres \omega_{\text { res }}ω res ​,则限定闭环固有频率为:
ωn&lt;12ωres\omega_{n}&lt;\frac{1}{2} \omega_{\mathrm{res}}ωn​<21​ωres​
典型工业机器人的结构共振频率为5Hz到25Hz。

估计共振频率

在结构柔性能够识别的情况下,如果能够给出柔性结构件有效质量或有效惯量的描述,就可以进行振动的近似分析。简单质量—弹簧系统近似得出系统的固有频率为:
ωn=k/m\omega_{n}=\sqrt{k / m}ωn​=k/m​
k为柔性结构件的刚度,m为振动系统的等效质量。
为粗略估计梁和轴的最低共振频率,可采用集中质量模型。梁和轴的末端刚度公式是已知的。集中质量模型提供了估算共振频率所需的有效质量或有效惯量。

图3 用于估算横向共振和扭转共振的梁的集中质量模型

如图3所示,这个分析建议用一个位于梁末端的质量为0.23m0.23m0.23m的质点代替质量为m的梁,由轴末端的集中惯量0.33I0.33I0.33I代替分布惯量III。

单关节控制

概括来说,对于单关节建模与控制做了一下三个主要假设:

  1. 电机的感抗lal_{a}la​可以忽略。
  2. 大传动比情况下,有效惯量视为一个常数,即Imax+η2ImI_{\mathrm{max}}+\eta^{2} I_{m}Imax​+η2Im​。
  3. 结构柔性可以忽略。最低结构共振频率ωres\omega_{res}ωres​用于设定伺服增益的情况除外。

应用这些假设,可用下面方法给出的分解运动对一个单关节操作臂进行控制。

图4 采用控制律分解方法的闭环轨迹跟踪控制系统

图4 为采用控制律分解方法的闭环轨迹跟踪控制系统。把控制器分为基于模型的控制部分和伺服控制部分。系统的参数仅出现在基于模型的控制部分,而与伺服控制部分完全独立。通过基于模型的控制部分将系统简化为一个单位质量(即没有摩擦和刚度)。控制律的第二部分利用反馈来改变系统的特性。
基于模型的控制部分表达式为:
f=αf′+βf=\alpha f^{\prime}+\betaf=αf′+β
式中α和β是函数或常数。将f′f^{\prime}f′作为新的系统输入,通过选择α和β将系统简化为单位质量。根据上述直流力矩电机转子的力学模型τ=(I+η2Im)θ¨+(b+η2bm)θ˙\tau=\left(I+\eta^{2} I_{m}\right) \ddot{\theta}+\left(b+\eta^{2} b_{m}\right) \dot{\theta}τ=(I+η2Im​)θ¨+(b+η2bm​)θ˙,可选定:
α=Imax⁡+η2Im\alpha=I_{\max }+\eta^{2} I_{m}α=Imax​+η2Im​
β=(b+η2bm)θ˙\beta=\left(b+\eta^{2} b_{m}\right) \dot{\theta}β=(b+η2bm​)θ˙
此时τ′=f′=θ¨d+kve˙+kpe\tau^{\prime}=f^{\prime}=\ddot{\theta}_{d}+k_{v} \dot{e}+k_{p} eτ′=f′=θ¨d​+kv​e˙+kp​e。系统的闭环动力学方程为:
e¨+kve˙+kpe=τdist\ddot{e}+k_{v} \dot{e}+k_{p} e=\tau_{\mathrm{dist}}e¨+kv​e˙+kp​e=τdist​
τdist\tau_{\mathrm{dist}}τdist​为连杆有效惯量对关节电机施加的恒定干扰。
在这种方法中,控制增益的设定非常简单,而且与系统参数独立。设定系统处于临界阻尼状态的增益为:
kp=ωn2=14ωres2k_{p}=\omega_{n}^{2}=\frac{1}{4} \omega_{\mathrm{res}}^{2}kp​=ωn2​=41​ωres2​
kv=2kp=ωresk_{v}=2 \sqrt{k_{p}}=\omega_{\mathrm{res}}kv​=2kp​​=ωres​
为消除稳态误差,有时可附加一个积分项。对于这种控制律,系统变成了一个三阶系统。通常kik_{i}ki​非常小,使得这个三阶系统没有积分项而“近似于”一个二阶系统。


  1. John J. Craig. Introduction to Robotics: Mechanics and Control[M]// Introduction to robotics :: Mechanics and control. 1955. ↩︎

机械臂单关节模型与控制相关推荐

  1. “winform+opengl+freeglut“实现导入两关节机械臂的obj模型,并进行旋转、平移等操作

    开发环境:vs2019 开发工具:C++.OpenGL 工具库:freeglut 窗口:winform 主要实现:将OpenGL绘图窗口嵌入Winform窗口,在OpenGL窗口中导入事先准备好的ob ...

  2. Threejs实现机械臂运动,机械臂dae格式模型,模型下载

    1,介绍 该示例使用的是 r95版本Three.js库. 主要实现功能:引入机械臂dae格式模型,模拟机械臂运动.效果图如下: 2,动画主要说明 1,引入机械臂模型,附模型下载地址如下 2,使用Twe ...

  3. Mycobot机械臂各关节的运动(三)

    这一节我们开始第一个程序,就是机械臂各关节的运动.让我们首先打开Mycobot,然后登入一个终端,我们输入"python"进入python环境. 我们采用一边实验一边介绍MyCob ...

  4. ros melodic控制真实机械臂之urdf模型生成

    目录 一.solidworks及sw_urdf_repoter插件安装 二.在solidworks中为机械臂模型加入坐标系 三.用插件导出urdf模型 四.在ros中验证导出的模型是否成功 如果需要控 ...

  5. SolidWorks导出机械臂的URDF模型各个关节坐标系设置

    郑重提示:为了记录自己在学习过程中遇到的问题,所以记录了这篇博客..在后面学习的过程中发现之前这篇博客记录的导出URDF模型坐标系设置方法存在一些问题,不好写DH参数表,,更更要命的是,好些朋友都收藏 ...

  6. 柔性机械臂的振动测量和控制研究进展综述

    摘要: 柔性机械臂通常具有柔性关节和/或连杆.在过去的40多年里,柔性机械臂的研究取得了长足的进展.本文综述了柔性机械臂在动力学建模方法.振动的传感器测量系统和控制算法研究方面的发展现状.研究热点和前 ...

  7. 六自由度机械臂的solidworks模型图及分享

    之前曾经在一个机械臂制造商的网站上浏览过一款机械臂 603桌面级六自由度机械臂. 于是便想使用该款机械臂来学习ros. 于是我便使用了solidworks将这款机械臂按照一比一的比例画了出来,但是长度 ...

  8. ROS下dobot(magician)机械臂的URDF模型 有兴趣的可以下载来玩

    大家好,看到很多人想玩ROS来控制Dobot,我这里有一个URDF模型分享给大家.下载链接https://download.csdn.net/download/qq_42145185/10818360 ...

  9. 三关节机械臂控制命令修改

    ▌01 机械控制臂 1.简介 在 调试机械臂一体化控制电路:STM32F103控制器初步调试 对于 三轴机械臂的 的控制,最初版本采用了 简易调试命令组合. 这个命令是为了付方便最初的调试与测试机械臂 ...

最新文章

  1. OpenCASCADE:MFC示例
  2. iOS App图标和启动画面尺寸
  3. C++多线程编程 (1)
  4. Linux平台下裸设备的绑定:
  5. C# 基于 adb 控制安卓
  6. [转帖][攻防测试工具]系统监控必备工具procexp和procmon
  7. buuctf misc部分wp
  8. 第二章 VB语言基础
  9. 远程访问计算机硬盘,60秒远程访问路由器硬盘!瞬间变NAS!
  10. 回顾丨2021年声纹识别研究与应用学术研讨会
  11. Android使用LAME Mp3编码
  12. 矩阵论极简笔记(1):如何降维度打击
  13. Android编程简介
  14. 计算机毕业论文怎样写系统的意义,毕业论文写作的目的意义及步骤-计算机论文...
  15. 世界杯“引爆”东南亚电商狂潮,电商人如何选品和营销?
  16. C练题笔记之:Leetcode-307. 区域和检索 - 数组可修改
  17. JAVA通信(二)——实现客户机和服务器通信
  18. 信号完整性分析---串扰和反射
  19. 用了这些ppt,我们也能成为文艺小清新
  20. 新版本WordPress快速收录推送插件(Fanly Submit)

热门文章

  1. 输出以下图案菱形7行_西兰卡普的图案艺术特征
  2. PNG图像文件格式结构分析
  3. 做为黑客,没有超强算法能力是不行的!
  4. 数据库系列之F5负载均衡配置
  5. 计算机英语背单词技巧,学习经验交流高手背英语单词妙招 -电脑资料
  6. otsu java_如何提高otsu阈值输出
  7. RxJava常用的操作
  8. #UI教程#PS打造质感咖啡杯效果
  9. FFmpeg 学习:FFmpeg 学习整理总结
  10. BUUCTF PWN rip1 WP