一种基于FPGA的直流电机控制系统及方法技术方案

技术编号:36112108 阅读:24 留言:0更新日期:2022-12-28 14:14
本发明专利技术公开了一种基于FPGA的直流电机控制系统及方法,包括:控制模块,用于控制电机的状态,连接电机;信号模块,用于计数时钟脉冲并输出电平信号,连接控制模块和电机;计数器模块,用于统计电机的转圈数量,连接电机;显示模块,用于显示电机状态和转圈数量,连接电机和计数器模块;分析模块,用于计算电机转速差值并传输至控制模块,连接电机和控制模块。S1:启动电机,基于信号模块得到信号;S2:分析模块基于信号计算电机转速,基于电机转速和标准转速计算转速差值;S3:控制模块基于转速差值调整信号的占空比。本发明专利技术的有益效果是:能够调整电机的转速、显示电机的转圈数。显示电机的转圈数。显示电机的转圈数。

【技术实现步骤摘要】
一种基于FPGA的直流电机控制系统及方法


[0001]本专利技术涉及电机控制
,特别涉及一种基于FPGA的直流电机控制系统及方法。

技术介绍

[0002]直流电机具有结构简单、无接触、噪声低和精度高等特点。目前,直流电机在社会生活各个领域得到广泛的应用。使用现场可编程逻辑门阵列(Field Programmable Gate Array,FPGA)产生脉冲宽度调制(Pulse width modulation,PWM)波形可以简化外围电路,不需要数模转换电路等,解决了定制电路的不足,克服了原有可编程器件门电路数有限的缺点。
[0003]现有技术中,直流电机通常通过按键改变其转速,不能够自动调整转速,并且不显示直流电机的工作状态。
[0004]例如,一种在中国专利文献上公开的“一种基于FPGA的多路无刷电机驱动电路”,其公告号:CN210380699U,其申请日:2019年10月11日,该专利技术可同时驱动多台电机,FPGA芯片作为主控,硬件方式实现,响应速度快,并可实现并行处理数据,提高多台电机,但是存在不能够调整电机的转速、显示电机的转圈数的问题。

技术实现思路

[0005]针对现有技术不能够调整电机的转速、显示电机的转圈数的不足,本专利技术提出了一种基于FPGA的直流电机控制系统及方法,能够调整电机的转速、显示电机的转圈数。
[0006]以下是本专利技术的技术方案,一种基于FPGA的直流电机控制系统,包括:
[0007]控制模块,用于控制电机的状态,连接电机;
[0008]信号模块,用于计数时钟脉冲并输出电平信号,连接控制模块和电机;
[0009]计数器模块,用于统计电机的转圈数量,连接电机;
[0010]显示模块,用于显示电机状态和转圈数量,连接电机和计数器模块;
[0011]分析模块,用于计算电机转速差值并传输至控制模块,连接电机和控制模块。
[0012]本方案中,信号模块获取电机的信号,分析模块根据信号得到电机转速,基于电机转速和标准转速计算转速差值,控制模块启动对应的加速按键或减速按键提高或降低信号的占空比,从而增加转速或降低转速,并将转圈数、控制模块的状态显示于显示模块,计数器模块能进行二进制和十进制的转化,提高系统适用性。
[0013]作为优选,控制模块设有按键输入模块,按键输入模块包括:
[0014]启停按键,用于控制电机的启动或停止;
[0015]正反按键,用于实现电机的正反转控制;
[0016]加速按键,用于控制电机增加转速;
[0017]减速按键,用于控制电机降低转速。
[0018]本方案中,按键输入模块共四个按键,分别是启停按键、正反按键、加速按键和减
速按键。启停按键用于控制电机的启动或停止,若当前电机已启动,则按下启停按键,电机停止,若当前电机已停止,则按下启停按键,电机启动;控制模块设有正反信号,正反信号的默认状态为0,按下正反按键时对正反信号进行取反,正反信号会和其他信号整合,并将整合后的信号作为最终信号通过第一输出模块输入到电机的电路中,从而实现电机的正反转控制,并且提高其稳定性和精确性;通过加速按键和减少按键对电机进行速度控制,其原理是改变信号的占空比,信号的占空比可以通过改变信号模块中的比较值去改变。按下加速按键或减少按键时输出值将发生相应的加变化或减变化,加速按键用于控制电机增加转速,减速按键用于控制电机降低转速。能够控制电机的启动、停止、加速和减速,提高装置的稳定性和适用性。
[0019]作为优选,按键扫描的周期为20毫秒。
[0020]本方案中,周期性进行按键扫描,根据对应的按键调整电机状态,按键扫描的周期为20毫秒。能及时扫描到按键输入模块的按键状态进行对应的响应,提高装置的稳定性和适用性。
[0021]作为优选,信号模块设有:计数模块,用于对时钟脉冲进行计数;
[0022]比较模块,用于比较时钟脉冲计数数值和设定数值,输出信号;
[0023]状态模块,用于标记信号模块的状态决定输出信号。
[0024]本方案中,计数模块在时钟脉冲输入后被触发,对时钟脉冲进行计数。比较模块将计数数值和设定数值进行比较,从而输出信号。状态模块用于标记信号模块的状态,状态模块不同的状态对应信号模块不同的输出,实现在信号模块对电机进行控制,提高精确性。信号模块的输出通过第二输出模块将输入到控制模块,并影响电机运行状态。第二输出模块根据比较结果,以10毫秒周期分别输出0和1。
[0025]作为优选,计数器模块包括:
[0026]第一计数器,用于统计低电平脉冲数,连接电机;
[0027]第二计数器,用于根据第一计数器的低电平脉冲数统计电机工作的个位圈数,连接第一计数器;
[0028]第三计数器,用于根据第二计数器统计统计电机工作的十位圈数,连接第二计数器。
[0029]本方案中,使用该计数方法,第二计数器表示电机所转圈数的个位,第三计数器表示电机所转圈数的十位。便于电机转圈数量的统计,并将统计结果显示于显示模块。根据单位时间内电机所转圈数可计算电机的转速。
[0030]作为优选,显示模块包括:
[0031]第一数码管,用于显示电机转圈数量的个位圈数,连接第二计数器;
[0032]第二数码管,用于显示电机转圈数量的十位圈数,连接第三计数器;
[0033]第一指示灯,用于显示启停按键的状态;
[0034]第二指示灯,用于显示正反按键的状态;
[0035]第三指示灯,用于显示加速按键的状态;
[0036]第四指示灯,用于显示减速按键的状态。
[0037]本方案中,数码管用于显示计数器模块的电机转圈数值,第一数码管用于显示电机转圈数量的个位,第二数码管用于显示电机转圈数量的十位,显示模块连接第一数码管
和第二数码管的显示电路,根据控制信号实现对数码管显示电路的控制。指示灯用于显示按键输入模块的按键状态,具体的,第一指示灯对应启停按键的状态,电机启动时,第一指示灯维持常亮状态,电机停止时,第一指示灯关闭;第二指示灯对应正反按键的状态,正反信号为0时,第二指示灯维持常亮状态,正反信号不为0时,第二指示灯关闭;第三指示灯对应加速按键的状态,第四指示灯对应减速按键的状态,按下加速或减速按键,电机增加转速或降低转速后进行完成反馈,若电机执行了加速或减速命令,对应的第三指示灯或第四指示灯进行闪烁,闪烁周期为0.8秒。
[0038]一种基于FPGA的直流电机控制方法,包括以下步骤:
[0039]S1:启动电机,基于信号模块得到信号;
[0040]S2:分析模块基于信号计算电机转速,基于电机转速和标准转速计算转速差值;
[0041]S3:控制模块基于转速差值调整信号的占空比。
[0042]本方案中,信号模块中计数模块获取电机的信号,分析模块根据信号的数量得到每秒的电机转速,基于电机转速和标准转速计算转速差值,若转速差值为负值本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种基于FPGA的直流电机控制系统,其特征在于,包括:控制模块,用于控制电机的状态,连接电机;信号模块,用于计数时钟脉冲并输出电平信号,连接控制模块和电机;计数器模块,用于统计电机的转圈数量,连接电机;显示模块,用于显示电机状态和转圈数量,连接电机和计数器模块;分析模块,用于计算电机转速差值并传输至控制模块,连接电机和控制模块。2.根据权利要求1所述的一种基于FPGA的直流电机控制系统,其特征在于,控制模块设有按键输入模块,按键输入模块包括:启停按键,用于控制电机的启动或停止;正反按键,用于实现电机的正反转控制;加速按键,用于控制电机增加转速;减速按键,用于控制电机降低转速。3.根据权利要求1或2所述的一种基于FPGA的直流电机控制系统,其特征在于,按键扫描的周期为20毫秒。4.根据权利要求1所述的一种基于FPGA的直流电机控制系统,其特征在于,信号模块设有:计数模块,用于对时钟脉冲进行计数;比较模块,用于比较时钟脉冲计数数值和设定数值,输出信号;状态模块,用于标记信号模块的状态决定输出信号。5.根据权利要求1所述的一种基于FPGA的直流电机控制系统,其特征在于,计数器模块包括:第一计数器,用于统计低电平脉冲数,连接电机;第二计数器,用于根据第一计数器的低电平脉冲数统计电机工作的个位圈数,连接第一计数器;第三计数器,用于根据第二计数器统计统计电机工作的十位圈数,连接第二计数器。6.根据权利要求5所述的一种基于FPGA的直流电机控制系统,其特征在于,显示模块包...

【专利技术属性】
技术研发人员:左宜计佰强
申请(专利权)人:宁波普尔机电制造有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1