
双路FOC电机驱动控制PCB板
简介
基于Simple FOC的双路电机驱动控制一体板,硬件以ATmega328pb为主控。可以同时连接2个AS5600磁编码器(I2C接口)。
简介:基于Simple FOC的双路电机驱动控制一体板,硬件以ATmega328pb为主控。可以同时连接2个AS5600磁编码器(I2C接口)。开源协议
:GPL 3.0
描述
看到MIT开源了无刷大狗,于是乎就想自己搞条无刷小泰迪。无奈狗脑子太复杂,那就从狗腿子开始做吧。
这个是基于Simple FOC的双路电机驱动控制一体板,硬件以ATmega328pb为主控。支持两路I2C输入,可以同时连接两路支持I2C的编码器(对没错就是最便宜的AS5600,被5600的单I2C地址给逼的)。电机驱动采用的L6234,单路峰值电流5A,实际使用建议不要超过3A/路。板子支持8~24VDC输入电压。
板子上设计了FT232 USB转UART,使用时直接用Arduino 的IDE编译和下载。但328pb要使用的话需要配置下环境,具体教程写好后会分享出来。
板子上的电流环设计采用的INA240,以兼容simple foc的官方示例。但实际使用时受限于mega328pb的运行速度和动态内存,同时运行两个FOC电机控制时内存已到80%左右,再添加电流环可能就跑不起来了(自己做代码优化的话可能刚好够)。
具体使用教程可以关注我的B站:控制器使用教程
白嫖没关系,点个赞就行~
另外板子大多数元件都是贴片的,阻容都是0603封装,自己家里用烤箱也可以轻松回流焊。嘉立创贴片要500多。。。
下面是一些调试的照片:
-------------------------------------------------------------------------------------------
2021.7.3 更新:
由于ATMEGA328pb的动态内存过小(可怜的2k),跑两路电压/速度/位置环勉强OK,但跑电流环顶多跑一路,两路同时跑的话内存溢出,而且此时ROM空间也几乎用光。所以此方案现已放弃。但这不代表这个板子不能用来继续打样学习simple foc,Atmel的单片机用arduino有天然优势,这对于入门学习arduino和simple foc还是很重要的。
有兴趣的同学可以转到我的另一个基于ESP32 的simpleFOC驱动控制器项目,不用担心内存和rom问题:
设计图
BOM
ID | Name | Designator | Footprint | Quantity |
---|---|---|---|---|
1 | ATMEGA328PB-AN | U3 | TQFP-32_L7.0-W7.0-P0.80-LS9.0-TL | 1 |
2 | 4.7uF | C5,C7 | C0603 | 2 |
3 | 0.1u | C6,C13,C3,C12,C11,C20,C21,C14,C15,C16,C2,C4,C26,C27,C1,C28,C31 | C0603 | 17 |
4 | TS-1187A-B-A-B | RESET | SW-SMD_4P-L5.1-W5.1-P3.70-LS6.4 | 1 |
5 | 4.7k | R2,R1,R4 | R0603 | 3 |

评论