导图社区 FOC驱动器
ODrive是一个基于STM32的高性能FOC伺服驱动器,其可以同时驱动两个无刷电机,早期被大量使用与3D打印机或自制CNC车床电气系统的设计中,知名极客James Bruton使用其作为大部分自己制作...
社区模板帮助中心,点此进入>>
互联网9大思维
组织架构-单商户商城webAPP 思维导图。
域控上线
python思维导图
css
CSS
计算机操作系统思维导图
计算机组成原理
IMX6UL(A7)
考试学情分析系统
无刷电机
直接驱动
通过MOS管控制无刷电机三个集性按照正弦波旋转
航模电调ESC
FOC驱动器
控制原理
通过电流检测的方式实现速度和角度等电机参数的闭环控制
矢量控制
既有大小又有方向的量。一般来说,在物理学中称作矢量,在数学中称作向量。在计算机中,矢量图可以无限放大永不变形。
Park变换
派克变换(也译作帕克变换,英语:Park's Transformation),是分析同步电动机运行最常用的一种坐标变换,由美国工程师派克(R.H.Park)在1929年提出。派克变换将定子的a,b,c三相电流投影到随着转子旋转的直轴(d轴),交轴(q轴)与垂直于dq平面的零轴(0轴)上去,从而实现了对定子电感矩阵的对角化,对同步电动机的运行分析起到了简化作用。即abc坐标系变换到dq坐标系
保留原来的向量,将新的坐标系基于原来的向量做变换,形成新的坐标向量
SVPWM
SVPWM算法原理及详解
子主题
SVPWM(Space Vector Pulse Width Modulation,空间矢量脉宽调制)
SPWM
SPWM基本原理详解
频率相同,改变脉宽,使用自然采样法将单位脉宽对应到正弦波的宽度对应的长度上,形成PWM正弦波
占空比越大,电压越大;占空比越小,电压越小。让占空比呈正弦变化,电压值自然也就呈正弦变化了。
Id是励磁电流,Iq是转矩电流,都是直流分量,都是相对于转子的。
如何获得转子角度
0.编码器
1.通过安装编码器来计算出当前角度。
霍尔传感器
2.通过安装霍尔元件计算当前角度。
磁传感器
3.通过检测电流来计算当前角度
控制方式
力矩控制模式
电机在运行过程的电流,始终等于给定的值。
比如使用电机来拉伸弹簧,设定电流值越大,弹簧被拉伸的长度越长。设定电流越小,弹簧被拉伸的长度越短。设定电流为零,弹簧不被拉伸。
在SimpleFOC项目中,受限于Arduino UNO的运行速度,大部分例程没有使用电流采样,所以设定电压值代替设定电流值。
速度控制模式
让电机始终按照设定的速度运转,不因负载的变化而变化。
速度控制一般会采用内环电流环,外环速度环的方式,所以可以限制转动过程中的电流不超过设定值。
比如传送带传送物品,给定的速度不会因为传送带上是空载或者带载发生变化,但是当负载过大,电流超过设定值的时候会报警或自动停止。
位置控制模式
精确控制电机转动到指定角度
位置控制一般会采用内环电流环,外环速度环,最外环位置环的方式,所以可以限制转动过程中的最大速度,和最大电流。
比如机械臂从A点运动到B点,并限制挥舞过程中的最大速度和最大力矩。
开源方案
Simple foc
老外搞的一个开源无刷电机FOC控制项目,旨在用最简单的方式和较低的成本实现无刷电机的FOC控制。
国内官方文档:http://simplefoc.cn/#/
simplefoc代码,若是没有电流环,只是通过svpwm+加上磁编码器的theta,以及需要设定的Ud、Uq、电压、定时器周期这些信息是可以完成正弦驱动的。当然速度环输出可以换成Ud,这样也是闭环。缺少电流环,少了信息解耦,不太完整。力矩模式通过设定固定的Uq应该是能达到的,当然电压和元器件性能在没有变化的前提下。作者:任天欺链接:https://www.zhihu.com/question/429826103/answer/2387616325来源:知乎著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。
三种力矩控制闭环
力矩控制环是所有其他运动控制环的基础。
电压——力矩控制模式 - voltage
voltage control mode是最简单的接近电机力矩控制的方法。它基本在任何电机+驱动器+mcu的组合中运行
基于电压 - 最简单。
直流电流——力矩控制模式 - dc_current
DC current mode 是voltage control mode的更进一步,它比voltage control mode更精确,但需要电流传感和更强大的mcu
基于直流电流 - PID控制器x1 + 低通滤波器x1
FOC电流——力矩控制模式 - foc_current
FOC current mode 是真正的电机力矩控制方法,不同于前两者的“近似”,因此也需要电流传感器,也比DC current mode对MCU的处理能力有更高的要求。
基于FOC电流 - PID控制器x2 + 低通滤波器x2
速度闭环控制
速度控制环闭环于力矩控制环外围,无论该力矩控制是哪一种。如果力矩控制是电压模式且没有设置相电阻,那么速度控制会利用Uq来设定力矩命令。
位置闭环控制
ODrive
志辉君同款
VESC
早期的电动滑板的方案
ST FOC
驱动电路
使用串口查看波形图
Visual Scope
大功率MOS
ODriveodrive和simplefoc二者差不多。ODrive是一个基于STM32的高性能FOC伺服驱动器,其可以同时驱动两个无刷电机,早期被大量使用与3D打印机或自制CNC车床电气系统的设计中,知名极客JamesBruton使用其作为大部分自己制作机器人伺服驱动的核心单元。simplefoc是一个开源的低成本无刷直流(BLDC)电机驱动板,主要用于低功耗的FOC应用,电流高达5A。该板与ArduinoUNO和所有带有标准Arduino头的板完全兼容。SimpleFOCShield结合SimpleFOClibrary提供了一种用户友好的方法来控制无刷直流电机的硬件和软件。
电机
步进电机
伺服电机
以直流有刷电机为核心加上驱动和反馈电路
以直流无刷电机为核心加上驱动和反馈电路
舵机