GD32F103RCT6/GD32F303RCT6-实战项目-无刷电机驱动(1)

   本文章基于兆易创新GD32 MCU所提供的2.2.4版本库函数开发

向上代码兼容GD32F450ZGT6中使用

后续项目主要在下面该专栏中发布:

https://blog.csdn.net/qq_62316532/category_12608431.html?spm=1001.2014.3001.5482

感兴趣的点个关注收藏一下吧!

电机驱动开发可以跳转:

GD32F103RCT6/GD32F303RCT6-实战项目-无刷电机驱动(1)_gd32f103rct6例程-CSDN博客

BMS电源系统开发可以跳转:

暂未放链接

DCDC-双向BUCK-BOOST实战链接:

GD32实战篇-双向数控BUCK-BOOST-BUCK降压理论基础-CSDN博客

GD32实战篇-双向数控BUCK-BOOST-BOOST升压理论基础-CSDN博客

理论

电机介绍

       首先我们设计本项目的电机为

8478227da2aa4a22a0371a61f0a16962.jpeg

       主要以无刷无感六步驱动为主

       工作电压:20V

       最大电流:20A

       持续工作电流:10A

主功率回路

       设计驱动方案为三相半桥驱动

a35a3c8434fd4329a72394e7d85c43b1.png

       采用该方案驱动三项无刷电机的U、V、W

       图中的二极管加快二极管开断:

4bccc28cbf904ee3a1f4822614f8c8bc.png

       在MOS管用作于高速开关进行反复开启关断时,该电路路结合MOS管内部寄生电容Cgs,能够快速对电容进行放电,加快Mos开关速度;并且在MOS管工作于高频的场合时,G极的输入阻抗在该环境下会降低,从而产生开关震荡等问题,引起MOS管的异常发热情况,一般G极的串联电阻取值会在10-100之间较为合适,太大的电阻会导致驱动电流过小,较小的电阻又不能很好的满足频率要求,所以需要针对不同的设计频率进行分析,本项目无刷驱动一般的PWM开关频率在15khz到20khz之间,所以该取值采用20欧测试所得较为合适。

电流采样

667b7a2cd873470887f9b3738ff7ec28.png

       该电路另外一个需要注意的就是采样电阻的设置问题!

       该系统中采样方式分为高端采样和低端采样两种方式,图中采用的是低端采样的办法,高端采样则是在UVW三相线输入到电机处进行采样!例如图中我放置的短路标记处:

345eb1d050c947579f24a423588a6f85.png

两则的区别:

       低端采样相较于高端采样,电路设计简单,成本低,对运放本身的要求不高;而高端采样的检测电路就相较于低端更加复杂,并且成本也更加昂贵,例如常见的ina282等一颗芯片买出两位数的价格,相比于运放的几毛钱或者1块钱左右的差距还是显而易见的。

       其次,低端采样一端接到地回路中,对于整体系统来讲,负载经过采样电阻以后再回到地完成一次回流,自热而然就会对地回路造成一定扰动,在布局时要加入适当屏蔽。而高端采样则相较于低端采样在该点会有不同的检测方案,不需要入地回路相连。

       至于这么获取电流数据,高端电流检测与低端类似,放大倍数确定的情况下,选取合适的采样电阻,采用欧姆定律就可以求得该电流作用在采样电阻上引起的电压变化,经过电路放大以后输入到单片机的ADC采集口中,这里需要去平衡放大倍数和噪音之间的关系。

采样电阻

       说起采样,采样电阻则是其中至关重要的一部分了,请尽量选取0.1%的高精度电阻,并且满足低温飘,有助于减小误差,提高ADC采样的精度。

       为什么选取精度高的电阻?因为根据欧姆定律,我们对电流的监控是通过电压的转换去实现的,电阻的精准度决定了计算出来电流的精准度。

       其次,温度则会对电阻阻值产生较大影响,说到这里,选取采样电阻的时候,还需要考虑到封装和功率的问题!常见的0402,0603,0805这些封装的功率有着不同的区别,更别说我们的采样电阻了,例如,我们采用0.03欧的采样电阻,该电阻已知功率为4W,那么在10A电流的时候,其所承受的功率就已经达到了3W!如果超过4W的最大功率,那么恭喜你电阻就报废了;其次,采样电阻过大,造成的发热问题也很严重,上述例子中的3W,在工作中是长时间转换成热量散失的,能量损耗和发热是一回事,另外一回事则是会加速附件元器件包括本身的老化,轻则减少寿命,重则影响工作!

母线电压采集

2252a3a2cac14e94823a0997f69e000c.png

反电动势采集

05c17ea07fc946bbb1821b1a1fc71edf.png

MOS驱动电路

       本方案的MOS驱动电路采用的是EG2133

       在本方案中,我采用的是5V进行供电,方便电路设计!

      有人可能会疑问,为什么会在输入信号添加下拉电阻,内部不是有240K的下拉电阻吗?

      那是因为在实际测试的过程中,发生过PWM信号串联问题,为了杜绝这种情况发生,建议各位添加下拉电阻以增强电路可靠性!

ca024e38f9134fb2a02cf4ff7555dbdc.png

d77d3195eeda44949dc51499f8e34629.png

5d45d8fe9d0949828f23a4ac0f83e5dc.png

       该电路由几部分组成:

       主控制回路,内部芯片集成了对信号的阻抗匹配、滤波、静电保护、死区和闭锁控制等电路。

fde9b13050f342fa9bc623bd94476ff8.png

       自举电路:网上关于自举电路的原理已经很多了,具体可以去搜索一下,这里的22uf采用的是手册提供的典型值。

85acffd03fe74497a73e04ce94f9d88f.png

电源方案

       本系统的电源方案采样的是比较传统的7805提供5V稳压和7812提供的12V电压

       其中5V用于MOS驱动芯片供电,并且通过RT9013-33GB降压到3.3V提供运放参考电压

      12V则用于给主控板提供供电!

80cda20273e04a9887b6f8af85b73cc0.png

       在实际测试中发现,7805作为5V供电的设计并不合理,因为发热和损耗都较为严重!

fddadac6aa214a2887ca7492fdefea82.jpeg

      正常工作下达到惊人的64度,不行不行,最后还是选择更换成DCDC了!

实战

       OK,那么理论完成,让我们实战吧!

       首先嘉立创白嫖来个板!

543814023952471eac6fca1397145d10.jpeg

       做了开窗处理方便散热

       焊接!

       上图

668dcbd083cd46468ef5a2d74b0f94d7.jpeg

63586ca9778f4cae9ad950122afdf61c.jpeg

       然后测试一下各项波形和温度!

0f5ad5ed3c09415d90e569cb69fd11a6.jpeg

748b7b434efc4f02a19640aa10897e43.jpeg

bf968794fe85416ba4f593b73fd42cf7.jpeg

       完美!

       组装一下吧!

3fb3768abec64398ae0206b47a00a438.jpeg

       然后小小写个GD32调试代码看看?

       调试视频已经附录了!

       GD32无刷驱动测试视频

                测试视频

       自此结束,目前
       GD32F103RCT6 基础型 目前已经完成了教程文档开发、源码编写、UCOSIII移植、函数重写,正在进行电机驱动开发
       GD32F107RCT6 互联型 目前正在制作多路CAN、485、以太网通讯,输入输出隔离的开发以及源码编写和UCOSIII移植
       GD32F407ZET6 目前尚未开始


       我会在后续时机合适的时候发表,关注我!第一时间了解!

群号:621154399

有问题欢迎大家加入我们一起交流,这个群是开源性技术交流群。

  • 33
    点赞
  • 27
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

不及你的温柔

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值