永磁同步电机末端振动抑制(输入整形)

文章目录

  • 1、前言
  • 2、双惯量系统
  • 3、输入整形
    • 3.1 ZV整形器
    • 3.2 ZVD整形器
    • 3.3 EI整形器
  • 4、伺服系统位置环控制模型
  • 5、仿真
    • 5.1 快速性分析
    • 5.2 鲁棒性分析
  • 参考

1、前言

什么是振动抑制?对于一个需要精确定位的系统,比如机械臂、塔吊、码头集装箱等,一般由于模型中存在着振荡模态,所以当其到达期望的位置时,并不能立刻停下来,而是会进行一段时间逐渐衰减的摆动,也就是我们所说的残留振动
抑制振动的方法有很多,有通过增大零部件刚度、阻尼等通过改变系统模型而达到减小振动的被动控制的方法;有通过引入传感器形成闭环的反馈控制的方法;有开环控制方法,输入整形的方法便是开环控制的一种。
输入整形优点:只需要对输入指令进行整形就可以消除减少震动,不需要反馈传感器,避免了增加阻尼、提高刚度而引起的结构质量增加,成本低、结构简单、容易实现。
输入整形缺点:引入时间延时,产生滞后。
在引入振动抑制方法前,我们首先了解一下电机-负载双惯量系统模型,分析定位末端抖动的本质原因。

2、双惯量系统

在这里插入图片描述
在这里插入图片描述

3、输入整形

在这里插入图片描述
在这里插入图片描述
输入整形器的实现
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

3.1 ZV整形器

在这里插入图片描述

3.2 ZVD整形器

在这里插入图片描述
在这里插入图片描述

3.3 EI整形器

在这里插入图片描述

4、伺服系统位置环控制模型

在这里插入图片描述
在这里插入图片描述

5、仿真

在这里插入图片描述
模型:
在这里插入图片描述
模型下载地址: 永磁同步电机末端振动抑制(输入整形)simulink仿真模型,包含ZV,ZVD,EI整形

wn=2*pi*36;%35.66
xi=0.0171;%0.4471
J1=1.1e-5;
J2=20.8e-5;
Kt=1;
K=20;
V=0.1;
Curr_Kp=3.7699;
Curr_Ki=1615.7;
spd_kp=0.0579;
spd_ki=15.633;
Pos_kp=100;%3827.1524

1) w n = 36 H z , ξ = 0.4471 w_n=36Hz,\xi=0.4471 wn=36Hz,ξ=0.4471
在这里插入图片描述
2) w n = 36 H z , ξ = 0.6471 w_n=36Hz,\xi=0.6471 wn=36Hz,ξ=0.6471
在这里插入图片描述
3) w n = 36 H z , ξ = 0.2471 w_n=36Hz,\xi=0.2471 wn=36Hz,ξ=0.2471
在这里插入图片描述
5) w n = 36 H z , ξ = 0.0471 w_n=36Hz,\xi=0.0471 wn=36Hz,ξ=0.0471
在这里插入图片描述
6) w n = 36 H z , ξ = 0.0171 w_n=36Hz,\xi=0.0171 wn=36Hz,ξ=0.0171
在这里插入图片描述
从整形结果来看,可得看到振荡变小,达到消除一定的残留振动的目的。但阻尼比小于系统阻尼比的效果好很多,这里可能有点问题,留作遗留项。欢迎纠错。

5.1 快速性分析

在这里插入图片描述

5.2 鲁棒性分析

在这里插入图片描述

% ****************************************
% 输入整形器分析:时域分析和残余振动分析 
% ****************************************clc;
clear;
close all;
%% 系统传递函数参数
W = 36;      % 系统固有频率
Z = 0.4417;    % 系统阻尼比
%% 输入整形器时域分析
InputShper_W = 36;
InputShper_Z = 0.4417;%% 输入整形器参数配置
format long
pi      = pi;
df      = sqrt(1 - InputShper_Z*InputShper_Z);
K       = exp(-(InputShper_Z*pi) / df);
T       = 2*pi / (InputShper_W*df);
V_tol   = 0.05;
%% ZV整形器参数
D = 1 + K;
ZV_A1 = 1 / D;
ZV_A2 = K / D;ZV_T2 = 1/2 * T;IS_ZV = [[ZV_A1, ZV_A2];[0,     ZV_T2]];
%% ZVD整形器参数
D = 1 + 2*K + K^2;
ZVD_A1 = 1 / D;
ZVD_A2 = 2*K / D;
ZVD_A3 = K^2 / D;ZVD_T2 = 1/2 * T;
ZVD_T3 = T;IS_ZVD = [[ZVD_A1, ZVD_A2, ZVD_A3];[0,      ZVD_T2, ZVD_T3]];%% EI整形器参数
EI_A1 = (1 + V_tol) / 4;
EI_A2 = (1 - V_tol) / 2;
EI_A3 = (1 + V_tol) / 4;EI_T2 = 1/2 * T;
EI_T3 = T;IS_EI = [[EI_A1, EI_A2, EI_A3];[0,     EI_T2, EI_T3]];%% 残余振动画图
% 基于频率的灵敏度曲线图
% RV_W = 0:1:100;
% RV_Z = InputShper_Z;
% 基于阻尼比的灵敏度曲线图
RV_W = InputShper_W;
RV_Z = 0:0.001:0.8;RV_ZV             = CalResidualVibration(IS_ZV,             2, RV_W, RV_Z);    
RV_ZVD            = CalResidualVibration(IS_ZVD,            3, RV_W, RV_Z);      
RV_EI             = CalResidualVibration(IS_EI,             3, RV_W, RV_Z);    figure(1);
% plot( RV_W, RV_ZV, RV_W, RV_ZVD, RV_W, RV_EI);
% legend('ZV','ZVD','EI');
% ylabel('残余振动');
% xlabel('频率');
% title('基于频率的输入整形器灵敏度分析')plot( RV_Z, RV_ZV, RV_Z, RV_ZVD, RV_Z, RV_EI);
legend('ZV','ZVD','EI');
ylabel('残余振动');
xlabel('阻尼比');
title('基于阻尼比的输入整形器灵敏度分析')%% 计算整形器残余振动,输入参数:输入整形器矩阵ARR,整形器脉冲数N,频率W,阻尼比Z
function RV = CalResidualVibration( ARR, N, W, Z)C = 0;S = 0;df = sqrt(1 - Z.*Z);Tn = ARR(2,N);for i = 1:NAi = ARR(1,i);Ti = ARR(2,i);C_TEMP = Ai .* exp(Z.*W.*Ti) .* cos(W.*df.*Ti);S_TEMP = Ai .* exp(Z.*W.*Ti) .* sin(W.*df.*Ti);C = C + C_TEMP;S = S + S_TEMP;endRV = exp(-Z.*W.*Tn).*sqrt(C.*C+S.*S);
end

假设频率变化范围在 [ 0 , 100 ] [0,100] [0100]内,将频率 w n w_n wn 作为横坐标,将残留振动 V V V作为纵坐标,根据残留振动表达式(3-9)可以画出基于频率的灵敏度曲线。
在这里插入图片描述
假设阻尼比变化范围在 [ 0 , 1 ] [0,1] [01]内,将频率 ξ \xi ξ 作为横坐标,将残留振动 V V V作为纵坐标,根据残留振动表达式(3-9)可以画出基于阻尼比的灵敏度曲线。
在这里插入图片描述
总体来说 E I EI EI鲁棒性最好。

参考

【1】陈天航.永磁同步伺服驱动系统高响应控制及振动抑制策略研究[D].华中科技大学,2021.DOI:10.27157/d.cnki.ghzku.2021.006514.
【2】孙永平.伺服系统高品质位置控制关键技术研究[D].哈尔滨工业大学,2022.DOI:10.27061/d.cnki.ghgdu.2022.005091.
【3】[1]郭小强.电动汽车用开关磁阻电机振动产生机理及抑制策略研究[D].东南大学,2019.DOI:10.27014/d.cnki.gdnau.2019.003817.
【4】杨明,曹佳,徐殿国.基于输入整形技术的交流伺服系统抖动抑制[J].电工技术学报,2018,33(21):4979-4986.DOI:10.19595/j.cnki.1000-6753.tces.L80595.
【5】邓辉.基于输入整形技术的机器人柔性机械臂振动抑制研究[D].深圳大学,2016.
【6】输入整形(Input Shaping):https://zhuanlan.zhihu.com/p/402291172
【7】振动抑制——输入整形(Input Shaping):https://blog.csdn.net/weixin_41276397/article/details/138393849
【8】 拉普拉斯变换 https://cdn.bridge619.com/pdf/%E6%8B%89%E6%99%AE%E6%8B%89%E6%96%AF%E5%8F%98%E6%8D%A2.pdf

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/478501.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

jQuery-Word-Export 使用记录及完整修正文件下载 jquery.wordexport.js

参考资料: jQuery-Word-Export导出word_jquery.wordexport.js下载-CSDN博客 近期又需要自己做个 Html2Doc 的解决方案,因为客户又不想要 Html2pdf 的下载了,当初还给我费尽心思解决Html转pdf时中文输出的问题(html转pdf文件下载之…

【Redis_Day6】Hash类型

【Redis_Day6】Hash类型 Hash类型操作hash的命令hset:设置hash中指定的字段(field)的值(value)hsetnx:想hash中添加字段并设置值hget:获取hash中指定字段的值hexists:判断hash中是否…

【CSP CCF记录】201809-2第14次认证 买菜

题目 样例输入 4 1 3 5 6 9 13 14 15 2 4 5 7 10 11 13 14 样例输出 3 思路 易错点:仅考虑所给样例,会误以为H和W两人的装车时间是一一对应的,那么提交结果的运行错误就会让你瞬间清醒。 本题关键是认识到H和W的装车时间不一定一一对应&…

Unity清除所有的PlayerPrefs

方法1: 直接在你的代码中加入这句 PlayerPrefs.DeleteAll(); 方法2: 点击编辑窗口的这里

非交换几何与黎曼ζ函数:数学中的一场革命性对话

非交换几何与黎曼ζ函数:数学中的一场革命性对话 非交换几何(Noncommutative Geometry, NCG)是数学的一个分支领域,它将经典的几何概念扩展到非交换代数的框架中。非交换代数是一种结合代数,其中乘积不是交换性的&…

微信小程序下拉刷新与上拉触底的全面教程

微信小程序下拉刷新与上拉触底的全面教程 引言 在微信小程序的开发中,用户体验至关重要。下拉刷新和上拉触底是提高用户交互体验的重要功能,能够让用户轻松获取最新数据和内容。本文将详细介绍这两个功能的实现方式,结合实际案例、代码示例和图片展示,帮助开发者轻松掌握…

数据库的联合查询

数据库的联合查询 简介为什么要使⽤联合查询多表联合查询时MYSQL内部是如何进⾏计算的构造练习案例数据案例:⼀个完整的联合查询的过程 内连接语法⽰例 外连接语法 ⽰例⾃连接应⽤场景示例表连接练习 ⼦查询语法单⾏⼦查询多⾏⼦查询多列⼦查询在from⼦句中使⽤⼦查…

论文阅读:A fast, scalable and versatile tool for analysis of single-cell omics data

Zhang, K., Zemke, N.R., Armand, E.J. et al. A fast, scalable and versatile tool for analysis of single-cell omics data. Nat Methods 21, 217–227 (2024). 论文地址:https://doi.org/10.1038/s41592-023-02139-9 代码地址:https://github.com…

Hive离线数仓结构分析

Hive离线数仓结构 首先,在数据源部分,包括源业务库、用户日志、爬虫数据和系统日志,这些都是数据的源头。这些数据通过Sqoop、DataX或 Flume 工具进行提取和导入操作。这些工具负责将不同来源的数据传输到基于 Hive 的离线数据仓库中。 在离线…

设计模式之 模板方法模式

模板方法模式是行为型设计模式的一种。它定义了一个算法的骨架,并将某些步骤的实现延迟到子类中。模板方法模式允许子类在不改变算法结构的情况下重新定义算法的某些特定步骤。 模板方法模式的核心在于: 封装算法的骨架:通过父类中的模板方…

【分治】--- 快速选择算法

Welcome to 9ilks Code World (๑•́ ₃ •̀๑) 个人主页: 9ilk (๑•́ ₃ •̀๑) 文章专栏: 算法Journey 🏠 颜色划分 📌 题目解析 颜色分类 本题要求我们原地对元数组划分0,1,2三个区域,也就是不能使用辅助数组&#xf…

万物皆可Docker,在NAS上一键部署最新苹果MacOS 15系统

万物皆可Docker,在NAS上一键部署最新苹果MacOS 15系统 哈喽小伙伴们还,我是Stark-C~ 最近苹果Mac mini 2024款在政府补贴的加持下,仅需3500块钱左右就能到手确实挺香的。我看很多评论区的小伙伴跃跃欲试,但是也有不少之前从未体…

C++设计模式行为模式———状态模式

文章目录 一、引言二、状态模式三、总结三、总结 一、引言 状态模式是一种行为设计模式, 让你能在一个对象的内部状态变化时改变其行为, 使其看上去就像改变了自身所属的类一样。其实现可完成类似有限状态机的功能。换句话说,一个对象可以处…

vscode自动打印日志插件

自动日志工具(Auto Logger Log) 概述 自动日志工具(Auto Logger Log) 是一款 VS Code 扩展,用于简化生成调试日志的过程。它可以为选中的变量自动生成打印语句,帮助开发者快速记录和调试代码。该扩展支持多…

优雅的不等式——Hard

上一文《Easy》末尾出现了又要我们证明的例子,Hard难度就是继续答题答下去 其实一样可以用那篇文章https://zhuanlan.zhihu.com/p/669285539中的式子继续算下去,但是有三个系数,实在是太费时间和人力了 翻到下面的第十九种类型,可…

虚拟局域网PPTP配置与验证(二)

虚拟局域网PPTP配置与验证(二) windows VPN客户端linux 客户端openwrt客户端性能验证虚拟局域网PPTP配置与验证(一)虚拟局域网PPTP配置与验证(二) : 本文介绍几种客户端连接PPTP服务端的方法,同时对linux/windows/openwrt 操作系统及x86、arm硬件平台下PPTP包转发性能进…

Move 合约部署踩坑笔记:如何解决 Sui 客户端发布错误Committing lock file

Move 共学活动:快速上手 Move 开发 为了帮助更多开发者快速了解和掌握 Move 编程语言,Move 共学活动由 HOH 社区、HackQuest、OpenBuild、KeyMap 联合发起。该活动旨在为新手小白提供一个良好的学习平台,带领大家一步步熟悉 Move 语言&#…

介绍一下strupr(arr);(c基础)

hi , I am 36 适合对象c语言初学者 strupr(arr)&#xff1b;函数是把arr数组变为大写字母 格式 #include<string.h> strupr(arr); 返回值为arr 链接分享一下arr的意义(c基础)(必看)(牢记)-CSDN博客 #define _CRT_SECURE_NO_WARNINGS #include<stdio.h> #incl…

进程间通信5:信号

引入 我们之前学习了信号量&#xff0c;信号量和信号可不是一个东西&#xff0c;不能混淆。 信号是什么以及一些基础概念 信号是一种让进程给其他进程发送异步消息的方式 信号是随时产生的&#xff0c;无法预测信号可以临时保存下来&#xff0c;之后再处理信号是异步发送的…

浅谈网络 | 传输层之套接字Socket

目录 基于 TCP 协议的 Socket 程序调用过程基于 UDP 协议的 Socket 程序函数调用过程服务器如何接入更多的项目构建高并发服务端&#xff1a;从多进程到 IO 多路复用 在前面&#xff0c;我们已经介绍了 TCP 和 UDP 协议&#xff0c;但还没有实践过。接下来这一节&#xff0c;我…