力矩反馈
近期做了几个无刷电机项目,在开发过程中对无刷控制有了一些新的认识,看到“稚晖君”的像素级控制,我也萌生了自己做个一个双电机力矩反馈的系统的念头。 说干就干,构思,设计电路,画板,打样,调试,项目干完实际效果还错,看视频效果
设计说明:
主芯片采用STM32F722,做控制算法驱动两路无刷电机。为了适应大部分网友,采用arduino编程,方便易用,一个硬件工程师也可也轻松搞定。
硬件驱动部分采用高边驱动芯片DRV8300DR+6Nmos的方式,电流采样使用CC6903SO的霍尔电流传感器在高边做inline电流采样。
软件说明软件上最需要注意的就是磁编码器的SPI时钟频率,尽量用到10Mbps以上
产品到手确认完硬件OK后进行如下步骤的软件编写和调试:
1:屏幕驱动程序,用于一些调试信息显示
2:串口驱动程序,打印调试信息,系统工作输入等功能
3:磁编码器芯片驱动程序,确认磁编码器AS5048A的SPI数据输出正常
4:无刷driver部分的程序,通过电压环输出,可以得到三相上输出电压为程序设定值
5:电流传感器的校准和读取程序,确定电流采样正常
6:完成上述模块的开发和调试后就可以开始编写open loop电机控制程序的编写和调试
7:最终编写闭环的转矩和角度控制的程序,实现双电机的力矩反馈控制
设计注意事项
1:打板回来硬件调试发现电源芯片的使能脚悬空了,一直没电。项目资料已更新
2:AS5048A这个磁编码器的SPI时钟速度尽量用到10Mbps以上,用1M,2M会有单个电机抖动问题
3:板子上的mos管千万要贴片加工,不要手工,不要手工,不要手工!!!
其他演示视频:一个是开环驱动电机的视频,高低转速都很丝滑;另一个是闭环工作实现双电机力矩反馈的控制。指哪打哪哈
工程附件有:Gerber,原理图,BOM,hex,有想要开源资料的可以扫码浏览我的开源项目
高低速测试
|