嵌入式开发--无刷电机学习2--克拉克变换

这篇具有很好参考价值的文章主要介绍了嵌入式开发--无刷电机学习2--克拉克变换。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

克拉克变换

首先说明,有很多方法,在数学上是等价的,比如3+3+3+3=3*4=12。下面说的事情也是。

为了更简明的控制,克拉克女士提出电机控制简化的方法,即建立一个坐标系,横轴是α 纵轴是β,并将三相电流在这个坐标轴上投影,用两个正交分布的投影代替。并描述二者之间的关系,从而得出任意时刻的iα和iβ。

其物理意义是用两个正交分布的线圈(分别放在α轴和β轴上),去模拟三相电机120度分布的三个线圈。这二者在数学上是等价的。如此可以简化控制流程。
在实际驱动电机的时候,只需要求一个逆解即可驱动电机。
嵌入式开发--无刷电机学习2--克拉克变换
投影方式如下,将A相的磁场方向与 iα重合,并画出B相和C相的电流矢量如下图:
嵌入式开发--无刷电机学习2--克拉克变换

绿色线段是ib和ic在iα轴上的投影,蓝色线段是ib和ic在iβ轴上的投影。
对于Iα轴来说,最终的值就是Iα = ia - bα - cα
对于Iβ轴来说,最终的值就是Iβ = bβ - cβ (aβ没有,是因为此时ia在iβ轴上的投影是0)

当不考虑方向,只考虑长度时,
bα = ib * sin30 = 0.5 * ib
cα = ic * sin30 = 0.5 * ic
bβ = ib * sin60 = (√3)/2 * ib
cβ = ic * sin60 = (√3)/2 * ic

代入到前式,得克拉克变换公式
Iα = ia - 0.5ib - 0.5ic
Iβ = (√3)/2 * ib - (√3)/2 * ic

写成矩阵就是
嵌入式开发--无刷电机学习2--克拉克变换

基尔霍夫定律

	假设进入某节点的电流为正值,离开这节点的电流为负值,则所有涉及这节点的电流的代数和等于零
	换个说法,即任意时刻,流入的电流等于流出的电流,这两个值大小相等,方向相反。

设A相电流为电流流入ia=1A,则根据基尔霍夫定律,B相和C相流电流为 ib = -0.5 和 ic = -0.5 ,代入公式,得
Iα = 1 - 0.5*(-0.5)- 0.5*(-0.5) = 1.5 = 1.5
Iβ = 0
显然Iα与ia不是相等的,为了后续计算更加方便,我们将Iα与ia对应起来,即给ia乘以一个系数: 2/3, 这样这两个值就相等了。
Iα = ia
Iβ = ((√3)/2 * ib - (√3)/2 * ic) * 2 / 3 = (ib - ic) / √3

写成矩阵就是
嵌入式开发--无刷电机学习2--克拉克变换
这个也叫克拉克变换的等幅形式。
由于Iα和Iβ,与Uα和Uβ是一回事,也就是说Uα = 2/3 * U,这个在后面的SVPWM中要用到。

上面的公式还可以进一步化简,由于ia + ib + ic = 0,则ic = - ia - ib,将其代入Iβ = (ib - ic) / √3
整理得
Iα = ia
Iβ = (2*ib + ia) / √3

如此可以消去C相的电流,只用AB两相的电流即可控制电机,对于电路设计来说,不需要对C相进行电流采样,也就意味着降低了成本。

克拉克等幅值逆变换

将公式中的第一行代入第2行,并解出ib,ic,即是克拉克逆变换
ib = (√3Iβ - Iα) / 2
由于ia + ib + ic = 0,则
ic = (- Iα - √3
Iβ) / 2

最后合并列出
ia = Iα
ib = (√3 * Iβ - Iα) / 2
ic = (- Iα - √3 * Iβ) / 2

ia,ib,ic即是我们最后控制电机时所驱动的电流,那么我们只需要知道Iα和Iβ即可控制电机。这两个量描述的其实就是定子产生的磁场的矢量,因为磁场等于电流乘以电感,而电机的相电感又是可以预先知道的值,所以控制了相电流,也就是控制了定子产生的磁场。

嵌入式开发--无刷电机学习2--克拉克变换文章来源地址https://www.toymoban.com/news/detail-432354.html

到了这里,关于嵌入式开发--无刷电机学习2--克拉克变换的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 华清远见嵌入式学习——驱动开发——作业1

    通过字符设备驱动分步注册过程实现LED驱动的编写,编写应用程序测试,发布到CSDN

    2024年02月20日
    浏览(58)
  • STM32开发环境搭建&工程创建(嵌入式学习)

    简介 STM32CubeMX是STMicroelectronics公司提供的一款集成开发环境(IDE)工具,用于快速配置和初始化STM32微控制器系列的软件工程。它提供了图形化界面和交互式工具,使开发者能够轻松地生成STM32微控制器的初始化代码和配置文件。 STM32CubeMX具有以下主要功能和特点: 微控制器

    2024年02月11日
    浏览(74)
  • 【嵌入式开发学习】__分享一些高效率的“学习软件”

    目录 前言 软件分享 VSCode 代码编辑器 ChatGPT 语言模型 Notion 笔记记录  Microsoft To Do 日程记录 zlibrary 图书下载 结束语 (* ̄︶ ̄)创作不易!期待你们的 点赞、收藏和评论喔。 在工作学习中,我们会使用到很多的工具,好的工具可以起到事半功倍的效果。我对工具的要求一般是

    2024年02月06日
    浏览(55)
  • 【嵌入式AI】CanMVk230开发板学习笔记(一)

    嵌入式AI学习:CanMVk230开发板学习笔记 官方链接: k230快速入门 github固件下载地址: https://github.com/kendryte/k230_canmv/releases K230的相关软硬件资料,请参考 https://developer.canaan-creative.com/k230/dev/index.html https://gitee.com/kendryte/k230_docs https://space.bilibili.com/677429436 https://gitee.com/kendryte/k2

    2024年01月20日
    浏览(52)
  • 嵌入式实时操作系统的设计与开发(信号量学习)

    除了临界点机制、互斥量机制可实现临界资源的互斥访问外,信号量(Semaphore)是另一选择。 信号量与互斥量的区别 对于互斥量来说,主要应用于临界资源的互斥访问,并且能够有效地避免优先级反转问题。 对于信号量而言,它虽然也能用于临界资源的互斥访问,但是不能

    2024年02月08日
    浏览(59)
  • 瑞芯微RK3568开发板保姆级护航入门学习嵌入式

    专为3568编写|迅为原创|拒绝网络拼凑 20+个手册2800+页手册进行结构分层适用于学习与开发 为了方便大家清晰快速的学习,迅为iTOP-3568开发板手册资料全面升级,对手册内容进行了结构分层,共计20+个文档,超2800+页的资料专为iTOP-3568开发板编写。适用于各种层面的学习者学习

    2024年02月14日
    浏览(55)
  • 【嵌入式必读】【一文彻底理解】步进电机驱动算法——梯形加减速运动算法原理

    关于梯形加速度,我打算写2篇文章来描述整个实现流程。本章我们从原理的角度详细分析一下,梯形加速度是怎么实现的,下一篇文章我们一步步看看代码如何实现。 我们先来看看最终效果。 步进电机梯形加速度 关于代码实现,请大家看我这篇文章,所有代码均经过验证,

    2024年02月12日
    浏览(50)
  • 【嵌入式开发学习】__扒一扒单片机串口IAP原理

    目录 一、什么是IAP? 二、串口IAP实验 1. 实验说明 2. 工程说明 IAP工程: LED工程: 3. IAP源码说明  (1)主函数: (2)主菜单函数Main_Menu (3)下载程序功能函数SerialDownload  4、下载验证 (1)下载IAP程序  (2)通过IAP程序引导下载LED程序 (* ̄︶ ̄)创作不易!期待你们的 点

    2024年02月20日
    浏览(53)
  • 嵌入式开发的学习与未来展望:借助STM32 HAL库开创创新之路

      引言: 嵌入式开发作为计算机科学领域的重要分支,为我们的日常生活和产业发展提供了无限的可能。STMicroelectronics的STM32系列芯片以其出色的性能和广泛的应用领域而备受关注。而STM32 HAL库作为嵌入式开发的高级库,为学习者提供了更高效、更简单的开发方式。本文将结

    2024年02月12日
    浏览(50)
  • C/C++语言学习路线: 嵌入式开发、底层软件、操作系统方向(持续更新)

    1.1 视频教程点到为止 1.2 炫技视频看看就行 1.3 编程游戏不玩也罢 有些游戏的主题任务就是编程,游戏和实际应用环境有一定差异(工具、操作流程),在初级阶段主要是熟悉实际场景,而且多数是通过前端语言进行游戏,对底层软件学习的帮助不大。 Coding Games: PHP、C、

    2024年04月28日
    浏览(80)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包