FOC电流环速度环调试记录

news/发布时间2024/5/15 13:45:24

FOC电流环速度环调试记录

电流环:

首先foc控制中都采用PI控制,没有引入微分,因为电流的采样率非常高不需要加入微分项;微分项的加入,会使电流采样中的高频小信号误差起到放大的作用,把小的误差放大,带到系统中来,这个时候Kd的加入容易导致震荡不但不减小反而扩大。

从数学公式上就很容易看出,比如说sin100x,微分一下不就是100cos100x了吗。

这里通过先调试 D轴,将 Q轴的 PI控制器设置为零,这样可以排除 Q轴的影响,在单轴达到比较好的响应效果之后,将 D轴的 PI控制器参数拷贝一份送给Q轴的PI控制器即可。

D轴调试时,先只加入比例环节,可以将 的系数逐渐增大,会发现反馈值逐渐靠近 给定值,再加入积分环节发现系统虽然存在超调,但是最终反馈可以稳定在给定值。加入积分环节时有个问题要注意,就是要对积分项进行限幅,否则,过大的积分会让电流环严重超调,而过小电机发挥不出力量。

参数确定:

1、

计算法
在这里插入图片描述

由自控原理关于电机PI控制器的传函可以推出(推导可以看TI的文章),这里看结论就行。
这里在图中可以看出,电机在dq坐标系下的电路模型中纯在dq轴的耦合项,这里可以在pi控制器后加入前馈控制器来消除耦合。

不过这里就不用前馈了,相当于在pi控制器中,直接将这误差代入pi控制器去控制了,等于用pi控制器就消去了耦合误差。
2、

经验法

调电流环目标都为0,P加大到有电流尖叫再减小一半,I=P/2。这里噪声来源于电流的反馈,所以PI参数大了就会把噪声放大通过电机震动表现出来。我手头这里有个电机经验法算出的pi和计算的几乎没差,不同电机不同而议把。

3、还有其他一些方法,可以网上再去查查。

验证:上电后,电机机械角度和电角度对准,之后进入电流闭环,再上位机给定iq目标值,电机立即加速到全速,此时用手堵住电机,观察Iq和Id的大小。

速度环

这里不难,首先是获取电机速度,我这用的绝对式编码器TLE5012所以比较简单,直接按照速度环的控制周期的时间去计算电机的角度差,即dtheta/dt。

这里不除以周期了,就用dtheta角度差,其实没差,就是本来的单位是角度/每秒,现在就是速度单位改变了。我觉得本来dtheta就有误差了除这么小一个周期,也就是相乘,那么就还把误差放大了,不知道我这里的理解对不对。不过反正都能用。

下面给出我的速度计算代码:

#define SPEED_KP 0.1f
struct Speed
{	float angle;float last_angle;float speed;float speed_last;
};float SpeedCalculate(struct Speed* Speed) // 计算速度
{float value;//dthetaSpeed->speed = (Speed->angle - Speed->last_angle);//解决速度正负if(Speed->speed < -180 ){Speed->speed = Speed->speed  + 360;}else if(Speed->speed > 180 ) {Speed->speed = Speed->speed  - 360;}Speed->last_angle = Speed->angle ;//Speed->speed = Speed->speed/0.0002f;  //Ts = 200us//LPFvalue = SPEED_KP * Speed->speed + (1-SPEED_KP) * Speed->speed_last;Speed->speed_last = value;return value;
}

这里,速度环PI参数调试就很简单了,直接看上位机图像调参就行,不再赘述。

速度环的输入是编码器角度经过差分和滤波后的值。速度环的输出是Iq的目标值,也就是速度环pid输出到电流和的pid输入。

现象:当你用手去捏电机的时候,电机会加大电流,尽力维持目标速度,当电流加大到速度环限幅也就是电流环的最大目标值的时候,电流就不会再增大了

这里对速度环的限制,同时决定了你的力矩大小。比如说我想让他转动的时候“硬”一点,也就是扭矩大一点,可以把限幅值给大一点。

速度环套一个电流环可以控制最大转矩,保证你输出的电流不至过大导致堵转烧毁。

位置环:

待续,需要的评论

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

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

相关文章

C语言与C++:探索两种强大的编程语言

在编程的世界里&#xff0c;C语言和C无疑是两座重要的里程碑。它们不仅各自拥有独特的特点和优势&#xff0c;而且还在不同的领域和场景中发挥着关键作用。本文将深入探讨C语言和C的相似之处与差异&#xff0c;帮助读者更好地理解和应用这两种编程语言。 一、C语言&#xff1a…

【Linux】---Linux下基本指令(2)

目录 一、指令详细介绍1.1 cat 指令1.2 echo 指令1.3 more 指令1.4 less 指令1.5 head 指令1.6 tail 指令1.7 date 指令1.8 cal 指令1.9 find 指令1.10 grep 指令1.11 zip/unzip 指令1.12 tar 指令1.13 uname –r 指令&#xff1a; 一、指令详细介绍 1.1 cat 指令 语法&#…

论文阅读-PIM-tree:一种面向内存处理的抗偏移索引

论文名称&#xff1a;PIM-tree: A Skew-resistant Index for Processing-in-Memory 摘要 当今的内存索引性能受到内存延迟/带宽瓶颈的限制。Processing-in-memory (PIM) 是一种新兴的方法&#xff0c;可能通过实现低延迟内存访问&#xff0c;其聚合内存带宽随 PIM 节点数量扩…

IMX6ULL移植U-Boot 2022.04

目录 目录 1.编译环境以及uboot版本 2.默认编译测试 3.uboot中新增自己的开发板 3.编译测试 4.烧录测试 5.patch文件 1.编译环境以及uboot版本 宿主机Debian12u-boot版本lf_v2022.04 ; git 连接GitHub - nxp-imx/uboot-imx: i.MX U-Boot交叉编译工具gcc-arm-10.3-2021.0…

为什么从没有负值的数据中绘制的小提琴图(Violin Plot)会出现负值部分?

&#x1f349; CSDN 叶庭云&#xff1a;https://yetingyun.blog.csdn.net/ 小提琴图&#xff08;Violin Plot&#xff09; 是一种用于展示和比较数据分布的可视化工具。它结合了箱形图&#xff08;Box Plot&#xff09;和密度图&#xff08;Kernel Density Plot&#xff09;的特…

centos7 arm服务器编译安装onnxruntime-gpu

前言 ONNX Runtime是适用于Linux,Windows和Mac上ONNX格式的机器学习模型的高性能推理引擎,但在arm服务器上,onnxruntime只有CPU版的,GPU版的没有,因此需要自行去编译GPU版本的才可以。 环境准备 1、python3.8 2、cmake:2.26.0版本以上,可以直接下载aarch64版本的进行…

【JavaEE】_多线程Thread类及其常用方法

目录 1. Thread类常用构造方法 2. Thread类的几个常见属性 3. 启动一个线程 4. 中断一个线程 4.1 方法1&#xff1a;手动设置标志位 4.2 方法2&#xff1a;使用Thread内置的标志位 5. 等待一个线程 6. 获取当前线程引用 7. 休眠当前线程 1. Thread类常用构造方法 方法…

MATLAB | 情人节画个花瓣venn图?

之前七夕节情人节各种花&#xff0c;相册&#xff0c;爱心啥的都快画够了&#xff0c;今年画个花瓣韦恩图&#xff1f; 花瓣上的数字是仅属于该类的样本数&#xff0c;而中心的数字是属于每一类的样本数 教程部分 0 数据准备 % 给组起名t1 t2 t3...t15 setName compose(t%d,…

视频接入协议之MIPI

MIPI&#xff08;Mobile Industry Processor Interface&#xff09;是一种用于移动设备的串行接口标准&#xff0c;旨在提供高速、低功耗、低成本的接口解决方案。MIPI联盟是一个全球性的组织&#xff0c;致力于开发、推广和管理MIPI标准。 MIPI接口包括了多种协议和规范&…

qwen1.5 chat vllm推理使用案例

参考:https://github.com/QwenLM/Qwen1.5 下载:https://huggingface.co/collections/Qwen/qwen15-65c0a2f577b1ecb76d786524 下载可以参考huggingface-cli 命令下载使用:https://blog.csdn.net/weixin_42357472/article/details/1326636931、vllm运行 显卡驱动:NVIDIA-S…

MySQL 基础知识(十)之 MySQL 架构

目录 1 MySQL 架构说明 2 连接层 3 核心业务层 3.1 查询缓存 3.2 解析器 3.3 优化器 3.4 执行器 4 存储引擎层 5 参考文档 1 MySQL 架构说明 下图是 MySQL 5.7 及其之前版本的逻辑架构示意图 MySQL 架构大致可分为以下三层&#xff1a; 连接层&#xff1a;负责跟客户…

【开源】在线办公系统 JAVA+Vue.js+SpringBoot+MySQL

目录 1 功能模块1.1 员工管理模块1.2 邮件管理模块1.3 人事档案模块1.4 公告管理模块 2 系统展示3 核心代码3.1 查询用户3.2 导入用户3.3 新增公告 4 免责声明 本文项目编号&#xff1a; T 001 。 \color{red}{本文项目编号&#xff1a;T001。} 本文项目编号&#xff1a;T001。…

HAL STM32通过multi_button库处理按键事件

HAL STM32通过multi_button库处理按键事件 &#x1f4cd;作者&#xff1a;0x1abin的multi_button库:https://github.com/0x1abin/MultiButton &#x1f4d8;MultiButton简介 MultiButton 是一个小巧简单易用的事件驱动型按键驱动模块&#xff0c;可无限量扩展按键&#xff0c;…

SQL-Labs靶场“1-5”关通关教程

君衍. 一、准备工作二、第一关 基于GET单引号字符型注入1、源码分析2、联合查询注入过程 三、第二关 基于GET整型注入1、源码分析2、联合查询注入过程 四、第三关 基于GET单引号变形注入1、源码分析2、联合查询注入过程 五、第四关 基于GET双引号字符型注入1、源码分析2、联合查…

【RHCE】shell条件测试练习

目录 1、判断当前磁盘剩余空间是否有20G&#xff0c;如果小于20G&#xff0c;则将报警邮件发送给管理员&#xff0c;每天检查次磁盘剩余空间。 2、判断web服务是否运行 3、使用curl命令访问第二题的web服务&#xff0c;看能否正常访问&#xff0c;如果能正常访问&#xff0c;…

【Android】使用Android Studio运行Hello World项目

文章目录 1. JDK的安装与配置2. Android Studio的安装3. 运行Hello World项目3.1 新建项目3.2 修改项目配置3.2.1 修改UI界面3.2.2 配置 Android SDK 3.3 添加并运行虚拟设备3.4 运行项目 1. JDK的安装与配置 想要使用Android Studio&#xff0c;必须先配置Java环境&#xff0…

关于内存相关的梳理

1 关键字 总结 &#xff08;lowmemory&#xff0c;anr in&#xff09; 2 知识储备 虚拟机原理 垃圾回收算法 又包含标记 和清除两种算法 标记&#xff1a;程序计数器-已过时&#xff0c;可达性分析 具体可见 http://help.eclipse.org/luna/index.jsp?topic%2Forg.ec…

【AI视野·今日NLP 自然语言处理论文速览 第七十八期】Wed, 17 Jan 2024

AI视野今日CS.NLP 自然语言处理论文速览 Wed, 17 Jan 2024 (showing first 100 of 163 entries) Totally 100 papers &#x1f449;上期速览✈更多精彩请移步主页 Daily Computation and Language Papers Deductive Closure Training of Language Models for Coherence, Accur…

服务器硬件、部署LNMP动态网站、部署wordpress、配置web与数据库服务分离、配置额外的web服务器

目录 day01 项目实战目标 单机安装基于LNMP结构的WordPress网站 基本环境准备 配置nginx 配置数据库服务 部署wordpress web与数据库服务分离 准备数据库服务器 迁移数据库 配置额外的web服务器 day01 项目实战目标 主机名IP地址client01192.168.88.10/24web1192.1…

GPT-4带来的思想火花

GPT-4能够以其强大的生成能力和广泛的知识储备激发出众多思想火花。它能够在不同的情境下生成新颖的观点、独特的见解和富有创意的解决方案&#xff0c;这不仅有助于用户突破思维定势&#xff0c;还能促进知识与信息在不同领域的交叉融合。 1.GPT-4出色的创新思考和知识整合能…
推荐文章