【电控笔记z29】扰动估测器DOB估测惯量J-摩擦系数B

基本原理

扰动估测器的核心思想是通过向电机系统施加特定的扰动信号,观察系统响应的变化,然后利用系统的动态模型和控制理论来估计未知参数,如惯量和摩擦系数 。一般基于电机的运动方程建立数学模型,结合观测到的电机实际运行数据(如转速、转矩等),通过一定的算法来计算未知参数。

具体方法

基于自适应控制的方法
  • 模型参考自适应控制(MRAC)

    • 原理:设计一个参考模型,该模型具有已知的理想动态特性(包含假设的惯量和摩擦系数等参数)。将电机实际系统的输出与参考模型的输出进行比较,得到误差信号。然后设计自适应律,根据误差信号实时调整电机控制系统中的参数估计值,使得实际系统输出逐渐逼近参考模型输出。
    • 步骤
      1. 建立电机的动力学模型,例如对于永磁同步电机,其数学模型包含电磁转矩方程、机械运动方程等,其中惯量和摩擦系数是待估参数。
      2. 设计参考模型,通常是一个具有期望性能指标(如期望的转速响应曲线)的系统模型。
      3. 构建自适应律,常见的有基于梯度下降法或最小均方误差(LMS)算法的自适应律。例如,对于参数估计值 θ ^ \hat{\theta} θ^(包含惯量和摩擦系数),自适应律可以表示为 θ ^ ˙ = − γ e ϕ \dot{\hat{\theta}} = -\gamma e \phi θ^˙=γeϕ,其中 γ \gamma γ 是自适应增益, e e e 是跟踪误差(参考模型输出与实际系统输出的差值), ϕ \phi ϕ 是与系统状态相关的回归向量。
      4. 在实际系统中实时运行自适应算法,不断更新参数估计值,直到收敛到稳定状态,此时的估计值即为电机惯量和摩擦系数的估计结果。
  • 模型无关自适应控制(MIAC)

    • 原理:不依赖于精确的电机数学模型结构,直接从输入输出数据中提取系统的动态特性信息来估计参数。通过设计特殊的输入信号(如伪随机二进制序列 PRBS 等),使系统产生丰富的动态响应,然后利用在线辨识算法对输入输出数据进行处理,从而估计出惯量和摩擦系数。
    • 步骤
      1. 向电机施加特定的扰动输入信号,采集电机的转速、转矩等输出数据。
      2. 利用递推最小二乘法(RLS)、卡尔曼滤波等算法对采集的数据进行处理和分析。以 RLS 算法为例,它通过不断更新参数估计值,使得估计模型输出的预测误差平方和最小。具体迭代公式为 θ ^ ( k ) = θ ^ ( k − 1 ) + K ( k ) [ y ( k ) − ϕ T ( k ) θ ^ ( k − 1 ) ] \hat{\theta}(k)=\hat{\theta}(k - 1)+K(k)[y(k)-\phi^T(k)\hat{\theta}(k - 1)] θ^(k)=θ^(k1)+K(k)[y(k)ϕT(k)θ^(k1)],其中 y ( k ) y(k) y(k) 是第 k k k 时刻的输出测量值, ϕ ( k ) \phi(k) ϕ(k) 是第 k k k 时刻的回归向量, K ( k ) K(k) K(k) 是增益矩阵。
      3. 经过足够长时间的在线辨识后,得到电机惯量和摩擦系数的估计值。
基于滑模观测器的方法
  • 原理:滑模观测器是一种非线性观测器,通过设计合适的滑模面和控制律,使观测误差在滑模面上滑动,从而实现对系统状态的准确估计。对于电机系统,可以将惯量和摩擦系数相关的参数融入到状态变量中,然后利用滑模观测器对这些参数进行估计。
  • 步骤
    1. 建立电机的滑模观测器模型,通常包括对电机状态的预测方程和滑模面设计。例如,对于电机的转速和位置状态,设计滑模面函数 s = x ˙ − x ^ s = \dot{x} - \hat{x} s=x˙x^,其中 x x x 是实际状态, x ^ \hat{x} x^ 是观测器估计的状态。
    2. 设计滑模控制律,使得观测误差 s s s 趋近于零。常见的滑模控制律包含符号函数项,以保证系统能够快速到达滑模面并在滑模面上保持滑动。
    3. 在实际运行中,通过观测电机的输入输出信号(如电压、电流、转速等),利用滑模观测器进行实时计算,最终得到电机惯量和摩擦系数的估计值。由于滑模观测器存在抖振现象(由于符号函数的使用),通常需要采用边界层法等方法对其进行改进,以提高估计的精度和稳定性 。

注意事项

  • 扰动信号的设计:扰动信号的类型、幅值和频率等参数对估测结果有重要影响。合适的扰动信号应能使系统产生明显且易于分析的响应变化,同时避免对电机正常运行造成过大干扰。
  • 噪声和干扰处理:实际系统中存在各种噪声和干扰,如测量噪声、电磁干扰等,这些会影响估测的准确性。可以采用滤波技术(如低通滤波器、卡尔曼滤波等)对采集的数据进行预处理,以提高数据质量。
  • 系统建模误差:电机的实际模型往往较为复杂,在建立数学模型时会存在一定的简化,导致建模误差。需要对模型的准确性进行评估,并在估测算法中考虑如何减小建模误差的影响 。

正文

大体思路
dob本质就是基于电机机械模型进行估测TL,类似隆博戈二阶观测器
DOB扰动估测器
z54在线惯量观测:
二阶隆博戈观测器,观测负载转矩TL,然后利用TL去修正B的值,然后再修正J的值

在这里插入图片描述

在这里插入图片描述

在线观测器设计

在这里插入图片描述
在这里插入图片描述
iq 和 iL 可以比作Tq和TL ,本文的Kt融入了pi控制器中
在这里插入图片描述
二阶巴特沃斯设计极点带宽
在这里插入图片描述
定转速且无载,TL = 0,第6式 可以转化为 第9式
在这里插入图片描述
在这里插入图片描述
先估测B再估测J
在这里插入图片描述
在这里插入图片描述

实验:

抑制粘滞摩擦
静摩擦 动摩擦 库伦摩擦
在这里插入图片描述

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

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

相关文章

要查看 SQLite 数据库中的所有表,可以通过查询 SQLite 的系统表 sqlite_master

要查看 SQLite 数据库中的所有表,可以查询 SQLite 的系统表 sqlite_master。 每个 SQLite 数据库都包含一个名为 sqlite_master 的系统表。该表定义了数据库的模式,存储了数据库中所有表、索引、视图和触发器等对象的信息。 通过查询 sqlite_master&am…

如何在Spring Boot中读取JAR包内resources目录下文件

精心整理了最新的面试资料和简历模板,有需要的可以自行获取 点击前往百度网盘获取 点击前往夸克网盘获取 以下是如何在Spring Boot中读取JAR包内resources目录下文件的教程,分为多种方法及详细说明: 方法1:使用 ClassPathResour…

清华大学DeepSeek赋能家庭教育【附下载链接】

核心要点: DeepSeek通过基础模型(V3)、深度思考模型(R1)及联网模型,为家庭教育提供分层支持:V3用于作业辅导,R1培养批判性思维,联网模型助力探究性学习。家长需遵循目标导…

C语言番外篇(5)-------------->作用域与生命周期

作用域与生命周期是非常重要的编程知识。本篇文章使用C语言讲述作用域与生命周期。 一、作用域 在程序设计中,变量并非总是有效的,可以使用的区域就是作用域。 1.1局部变量的作用域 在{}中的都是局部变量,只是作用大小不一样而已。我们可…

若依前后端分离版使用Electron打包前端Vue为Exe文件

1.前言 本文详细介绍如何使用electron将若依框架前后端分离版的前端Vue页面打包为Exe文件,并且包括如何实现应用更新。使用若依基础代码体现不出打包功能,因此我使用开发的文件管理系统,介绍上述过程,具体可以查看我的文章《若依…

Linux——Docker容器内MySQL密码忘记了如何查看

目录 查看正在运行的MySQL的容器ID 方法一:查看MySQL容器的日志里的密码 方法二:通过环境变量密码登录 方法三:修改密码 查看正在运行的MySQL的容器ID docker ps 方法一:查看MySQL容器的日志里的密码 docker logs [MySQL的容器…

康谋分享 | 3DGS:革新自动驾驶仿真场景重建的关键技术

随着自动驾驶技术的迅猛发展,构建高保真、动态的仿真场景成为了行业的迫切需求。传统的三维重建方法在处理复杂场景时常常面临效率和精度的挑战。在此背景下,3D高斯点阵渲染(3DGS)技术应运而生,成为自动驾驶仿真场景重…

大模型架构记录2

一 应用场景 1.1 prompt 示例 1.2 自己搭建一个UI界面,调用接口 可以选用不同的模型,需要对应的API KEY 二 Agent 使用 2.1 构建GPT

【C++】二叉树相关算法题

一、根据二叉树创建字符串 题目描述: 给你二叉树的根节点 root ,请你采用前序遍历的方式,将二叉树转化为一个由括号和整数组成的字符串,返回构造出的字符串。 空节点使用一对空括号对 “()” 表示,转化后需要省略所有…

【机械视觉】C#+visionPro联合编程———【一、C# + VisionPro 联合编程详解以及如何将visionPro工具加载到winform】

机械视觉与 C# VisionPro 联合编程详解 目录 机械视觉与 C# VisionPro 联合编程详解 概念 应用场景 1. 工业检测与质量控制缺陷检测 2. 定位与机器人引导 3. 识别与分类 4. 复杂流程控制 将visionPro工具加载到winform 环境准备 一、创建winform项目 二、打开窗体…

修改hosts文件,修改安全属性,建立自己的DNS

初级代码游戏的专栏介绍与文章目录-CSDN博客 我的github:codetoys,所有代码都将会位于ctfc库中。已经放入库中我会指出在库中的位置。 这些代码大部分以Linux为目标但部分代码是纯C的,可以在任何平台上使用。 源码指引:github源…

对NXP提供的BSP里边所使用的u-boot的环境变量`bootcmd`的解析

为什么我们要解析环境变量bootcmd? 承接博文 https://blog.csdn.net/wenhao_ir/article/details/145902134 继续解析u-boot的环境变量bootcmd。 为什么要解析u-boot的这个环境变量bootcmd?因为如果u-boot在倒计时完后,首先执行的是就是下面这条命令&am…

NSSCTF [SWPUCTF 2024 秋季新生赛]金丝雀

5948.[SWPUCTF 2024 秋季新生赛]金丝雀 canary绕过和64位的ret2libc(格式化字符串泄露) (1) motalymotaly-VMware-Virtual-Platform:~/桌面$ file xn xn: ELF 64-bit LSB executable, x86-64, version 1 (SYSV), dynamically linked, interpreter /lib64/ld-linux-x86-64.so.…

神经网络中梯度计算求和公式求导问题

以下是公式一推导出公式二的过程。 表达式一 ∂ E ∂ w j k − 2 ( t k − o k ) ⋅ sigmoid ( ∑ j w j k ⋅ o j ) ⋅ ( 1 − sigmoid ( ∑ j w j k ⋅ o j ) ) ⋅ ∂ ∂ w j k ( ∑ j w j k ⋅ o j ) \frac{\partial E}{\partial w_{jk}} -2(t_k - o_k) \cdot \text{sigm…

koa-session设置Cookie后获取不到

在谷歌浏览器中请求获取不到cookie问题之一(谷歌安全策略) 场景 前端使用 axios 请求,项目地址:http://192.168.8.1:5173 import axios from axiosconst request axios.create({baseURL: http://127.0.0.1:3001/,timeout: 60000,…

单元测试与仿真程序之间的选择

为什么写这篇文章 现在的工作需求,让我有必要总结和整理一下。 凡事都有适用的场景。首先这里我需要提示一下,这里的信息,可能并不普适。 但是可以肯定一点的是,有些人,不论做事还是写书,上下文还没有交待…

如何在Android中实现图片加载和缓存

在Android中实现图片加载和缓存是提升应用性能和用户体验的关键环节。高效的图片加载和缓存策略能够减少内存占用、避免应用卡顿,并快速响应用户的图片查看需求。以下是在Android中实现图片加载和缓存的几种常见方法: 一、使用第三方图片加载库 1. Gli…

FusionInsight MRS云原生数据湖

FusionInsight MRS云原生数据湖 1、FusionInsight MRS概述2、FusionInsight MRS解决方案3、FusionInsight MRS优势4、FusionInsight MRS功能 1、FusionInsight MRS概述 1.1、数据湖概述 数据湖是一个集中式存储库,允许以任意规模存储所有结构化和非结构化数据。可以…

推荐几款优秀的PDF转电子画册的软件

当然可以!以下是几款优秀的PDF转电子画册的软件推荐,内容简洁易懂,这些软件都具有易用性和互动性,适合不同需求的用户使用。​ ❶ FLBOOK|在线创作平台 支持PDF直接导入生成仿真翻页电子书。提供15主题模板与字体库&a…

【GoTeams】-2:项目基础搭建(下)

本文目录 1. 回顾2. Zap日志3. 配置4. 引入gprc梳理gRPC思路优雅关闭gRPC 1. 回顾 上篇文章我们进行了路由搭建,引入了redis,现在来看看对应的效果。 首先先把前端跑起来,然后点击注册获取验证码。 再看看控制台输出和redis是否已经有记录&…