`
本帖最后由 张飞电子学院赵云 于 2021-3-11 15:41 编辑
一、项目名称:《直流电机驱动器设计》
二、项目需求分析
我们想设计一款直流有刷电机驱动器,那么在设计驱动器之前,我们需要明确驱动器的控制对象,知道控制对象的参数,这样才能设计出一款适合控制对象、稳定、鲁棒性强的驱动器。所以,下面我们需要先来介绍下项目的控制对象。
控制对象信息:
电机型号:140有刷电机
电压范围:1.5V-6V
电流:500mA
转速:14000转/分,有正负5%的误差
电机重量:16g
电机内阻(实测):1.2欧姆
如下图一为电机实物展示图。
图一:140直流有刷电机
明确了控制对象的参数之后,接下来就需要根据这些参数来设计属于这款电机的驱动器了。那么,我们可以根据电机的电压参数,确定出Vbus电压,因为电压的范围是1.5V至6V,而一般5V比较常用,所以我们决定选5V作为Vbus电压。
电压确定好之后,我们需要根据要实现的控制功能来选择相应的控制方案。或者说,我们要使用单片机控制的话,需要根据功能来对单片机选型。 所以,接下来先对我们要实现的控制功能进行说明(注意:如果项目是别人或者别的公司的话,控制功能需要由项目提供者给出)。这里我们就自己定一个需要实现的功能来实现驱动器的设计了。
下面将控制功能罗列如下:
1.实现电机正反转调速控制。
2.LED灯状态显示。
3.电压采集。
4.电压保护。
那么,要实现电机正反转调速控制的话,正反转的实现,就需要用到H桥了,调速的话,就要使用到PWM波了。那么,也就是说,至少需要选型的这款单片机至少能够输出2路PWM信号,其它两路的话可以使用电平控制。这样的话,我们可以选择H桥的上桥用电平来控制,只需要两个普通的IO口即可实现。H桥的下桥用PWM控制来实现电机调速的功能,所以下桥的驱动信号使用PWM即可。
然后LED显示的话,使用一个普通的IO口就可以实现。
要实现电压保护的话,需要用到ADC模块了,需要一个模拟IO口。PWM占空比的调节可以通过一个电位器来实现,电位器的电压采集也需要ADC模块,同样需要一个模拟IO口。
然后需要考虑程序的下载,我们可以找一款SWD协议的单片机,这样只需要两个专用的下载引脚加上电源VDD和地VSS即可实现程序的下载。 那么,单片机要供电的话,至少需要2个引脚,一个VDD和一个VSS。电源电压可以选择3.3V供电。
外部复位,需要一个专用的复位引脚。
综上分析,我们可以选用一款20pin引脚的单片机,那么这里我们可以选用一款ST的单片机,如STM32030F4P6这个型号。这款单片机的引脚封装如下图二所示: 图二:STM32F030F4P6封装和引脚示意图
这款单片机的功能描述如下图三所示:
从图中红色方框描述,我们需要实现的功能都可以实现。
图三:STM32F030F4P6单片机功能描述
电机正反转控制实现方案:
我们前面分析了,要实现电机的正反转控制的话,需要使用H桥,那么就需要考虑到H桥的元器件选择了。H桥的元器件选择需要根据负载电机的参数进行选取,前面我们介绍电机的参数的时候,知道了电机给定的额定电流是500mA,但是经过我们实际上电测试,电机带载时,最大可达到1A以上的电流。所以H桥选型需要考虑过电流能力。
所以,基于以上分析,我们可以选择H桥使用上管P型三极管,下管N型三极管的方式,那么考虑到过电流能力,所以这里的P管可以选择B772,封装可以选用DPARK封装的,N管可以选择P管的对应型号,D882,封装同样也可以选用DPARK的。这样就选定了H桥的功率器件了。
电压保护功能实现:
通过前面的分析,要实现电压采样的话,需要设计一个电压采样电路。将采集到的电压作为一个模拟信号送到单片机的引脚,单片机就根据AD转换完成的结果判断是否出现过压和欠压信号,当出现过压或欠压时,可以控制PWM不输出,实现电机的停止转动,达到系统保护的目的。 过压保护的电压,可以根据Vbus电压来确定,我们前面确定了Vbus电压为5V,那么过压的电压可以选择6V,欠压的值,需要考虑LDO最小的压差,单片机的供电电压是3.3V,欠压电压的确定需要确保单片机能正常检测电压信号,LDO我们可以选用AMS1117-3.3这个型号,它的最小压差是1.2V-1.4V,那么欠压值最小需要定为5-1.2(1.4) = 4.8V(4.6V)。这样就可以把欠压的值确定下来了。
综上就是《直流电机驱动器设计》这个项目的需求分析了。接下来就需要根据这个需求来设计方案的原理图和PCB。 关于原理图和PCB的设计,在下面的文章中再给大家介绍。
最后,先给大家展示下项目最终的实物图:
本篇文章就给大家分享到这里,我们下次再见,谢谢大家!
`