直流电机调速技术是工业自动化领域中非常重要的技术之一,具有广泛的应用前景和市场需求。本项目我们用到的微控制器是AT89C51型号单片机,并利用PWM脉冲宽度调制的方法设计出来的一个直流电机调速系统。AT89C51单片机作为系统的核心芯片,电机驱动电路则是用到L298N来进行控制的,通过与单片机各引脚的相互连接,实现了一个用PWM来控制的直流电机调速系统。使用proteus 8对系统进行电路的设计与仿真,并利用Keil5来进行程序的编写,最后通过proteus 8与Keil 5的联合仿真与测试从而实现电机调速系统的功能。 DC motor speed regulation technology is one of the most important technologies in the field of industrial automation, with broad application prospects and market demand. The microcontroller used in this project is an AT89C51 microcontroller, and a DC motor speed control system is designed using PWM pulse width modulation method. The AT89C51 microcontroller is the core chip of the system, and the motor drive circuit uses L298N for control. By connecting with each pin of the microcontroller, a DC motor speed control system controlled by PWM is achieved. Use proteus 8 to design and simulate the circuit of the system, and use Keil 5 to write the program. Finally, through the joint simulation and testing of proteus 8 and Keil 5, the function of the motor speed control system is achieved.
直流电机调速技术是工业自动化领域中非常重要的技术之一,具有广泛的应用前景和市场需求。本项目我们用到的微控制器是AT89C51型号单片机,并利用PWM脉冲宽度调制的方法设计出来的一个直流电机调速系统。AT89C51单片机作为系统的核心芯片,电机驱动电路则是用到L298N来进行控制的,通过与单片机各引脚的相互连接,实现了一个用PWM来控制的直流电机调速系统。使用proteus 8对系统进行电路的设计与仿真,并利用Keil5来进行程序的编写,最后通过proteus 8与Keil 5的联合仿真与测试从而实现电机调速系统的功能。
AT89C51,PWM,直流电机,调速系统
Xinyuan Chang, Jihui Gao*, Qianmeng Liu, Hao Cheng, Chenpeng Xue, Zhe Sun
College of Engineering and Technology, Tianjin Agricultural College, Tianjin
Received: Jan. 22nd, 2024; accepted: Mar. 19th, 2024; published: Mar. 29th, 2024
DC motor speed regulation technology is one of the most important technologies in the field of industrial automation, with broad application prospects and market demand. The microcontroller used in this project is an AT89C51 microcontroller, and a DC motor speed control system is designed using PWM pulse width modulation method. The AT89C51 microcontroller is the core chip of the system, and the motor drive circuit uses L298N for control. By connecting with each pin of the microcontroller, a DC motor speed control system controlled by PWM is achieved. Use proteus 8 to design and simulate the circuit of the system, and use Keil 5 to write the program. Finally, through the joint simulation and testing of proteus 8 and Keil 5, the function of the motor speed control system is achieved.
Keywords:AT89C51, PWM, DC Motor, Speed Control System
Copyright © 2024 by author(s) and beplay安卓登录
This work is licensed under the Creative Commons Attribution International License (CC BY 4.0).
http://creativecommons.org/licenses/by/4.0/
现今人们的生活水平不断提高,对一些产品的需求也不断提高,这就需要我们提高生产的速度与精度,手段很多,其中直流电机调速就可以满足生产需求,直流电机具有功率密度高、速度调节范围宽、电机工作效率高、动态响应快、扭矩波动小等特点 [
本文旨在设计出一款响应快,稳定性好,抗干扰能力强的直流电机调速系统。本系统采用的是PWM (全称:Pulse Width Modulation)调速方式,就是脉冲宽度调制技术的意思,这种调速方式有着高速、精确的优点。
综合考虑,本课题采用AT89C51,利用AT89C51芯片进行直流电机调速系统的设计,有着低成本,系统结构简单、系统性能更强、并且可以实现多种场合的使用需求等优点。此调速系统的功能有对直流电机的正反转、加减速以及停止与启动控制等。
AT89C51系列单片机还拥有两种不同的节电工作方式可供选择,这种模式非常适于低功耗场合 [
本系统采用H桥驱动芯片L298N芯片,它能够控制电机的转向和速度,并提供与微控制器或PWM信号源的接口。L298N芯片是把H桥集成到芯片内部的,并且可以驱动两台电机 [
本设计使用AT89C51单片机的方式进行PWM信号的产生。通过改变定时器的初始值,使得AT89C51的信号输出口(P3口)输出的脉冲波形的占空比是不同的,从而达到控制电机速度的目的 [
此按键模块包括五个独立的按键,它们有着不同的功能:控制直流电机速度的加速、减速,以及控制直流电机转动方向的正转、反转,最后一个是停止按钮。电机状态的设定要点是按键的去抖动处理。按键去抖动处理的方法有硬件消抖和软件消抖两种。本设计用到的是软件消抖中的定时器中断法,将按键IO口初始化为中断方式,按键按下后进入中断处理函数,延时消抖后再调用按键处理函数。
此部分速度显示模块采用的是数码管来显示电机转动的实际速度与设置速度,而数码管有共阴和公阳,不同的数码管对于单片机的驱动方式以及程序的编译有所不同,本项目采用共阴极的7SEG-MPX4-CC,它是一个四位一体数码管,之所以选择7SEG-MPX4-CC,是因为四位一体数码管7SEG-MPX4-CC具有体积小、成本低、便于控制、显示清晰、可靠性高等优点,它广泛适用于多种需要同时显示多个数字的情况。
整个系统的硬件设计部分如上所述,这部分有着较强的适用性,体现在很多方面,下面我将简单列举几个方面,首先微控制器选择的是AT89C51单片机,它有着成本低,结构简单等优点,并且功耗很低,可以适应需要长时间运行或使用电池供电的场景,它还适用于一些嵌入式系统,例如测量设备、数据采集系统等;其次电机驱动芯片选择的是L298N,这款芯片功能强大,使用方便,除此之外在智能家居设备中,L298N也发挥着不可或缺的作用,例如智能窗帘、智能门锁等。还有就是用到的调速方式是PWM调速方式,PWM直流调速具备高效、精确的特点,而且提供了可调的PWM频率,以适应不同电机驱动器的需求。由于PWM技术的灵活性和适应性,它在各种领域都得到了广泛的应用,如在LED照明系统中,PWM被用于调整灯光的亮度。通过调整PWM信号的占空比,可以实现灯光的调光效果;在飞行器和卫星中,PWM被用于控制各种执行器,例如舵机、马达等。
本系统以AT89C51为微控制器核心芯片,由PWM信号产生程序来产生PWM控制信号传递到驱动芯片L298N上,通过电机驱动电路来控制电机的运动状态与转动速度 [
主程序主要负责进行参数的初始定义、中断的初始化、PWM程序的初始化、子程序的初始化及调用和数据处理等任务。在系统中,偏差值经过算法处理后,得到控制量,然后将控制量输入PWM模块,控制PWM模块输出相应占空比的PWM波形。此波形可以给到单片机从而控制电机改变速度,进而在数码管上刷新速度值。下图1为直流电机调速系统的主程序流程图。其中PWM信号产生程序为主要步骤,PWM信号的产生过程中用到的是单片机的中断功能,定时器起作用后开启中断,随后即可在单片机的相应引脚(P1.0)上产生PWM信号,继而将标志位清零,定时器初始化,通过定频调宽法来调节PWM的占空比从而改变电机两端电压。主程序中的数据处理部分包括电机的运行状态与运行速度等,具体可见中断子程序,即图2。
软件设计中使用的控制算法和PWM产生可以适用于其他嵌入式系统,例如STMicroelectronics的STM8、STM32系列,以及一些基于FPGA(Field-Programmable Gate Array)的系统;还可以作为一个原型设计,用于测试和验证电机控制的基本功能。在一些小型自动化和机器人项目中,需要直流电机的调速功能时,这个软件设计可以提供一个起点,用于构建更复杂的系统。
图1. 主程序
图2. 中断子程序
经过前面的硬件设计和软件程序的编写,现在利用Proteus仿真软件对系统电路进行仿真调试。详细过程如下:找到所需要的全部元器件后进行布局连线,检查没问题后再联合Keil软件进行仿真调试,找到前面利用Keil软件生成的.hex文件导入AT89C51单片机即可进行联合仿真。
仿真结果见图3~5,图3为按照程序中所设置的转速(300 RPM)时按下正转按钮后的执行效果图,由图中数码管显示可见实际转速与设置转速相同,均为300 RPM,图4为通过加速按钮使得设置转速增加到400 RPM,经过短暂时间后,实际转速也达到并稳定在400 RPM,可见此系统能够实现对电机转速的精准控制。在设置不同转速的情况下都能很快地达到设定值并保持稳定,此系统具有很强的抗干扰能力。图5为按下停止按钮后电机停止转动的执行效果图。单片机在按下停止按钮后经过PWM输出控制程序进行的脉冲宽度调制迅速作出反应,将信号传送到电机控制模块之后,L298N则控制电机停止转动。
通过对下图3~5仿真结果的分析可知,设置不同转速后,电机都会迅速响应并达到设置转速后稳定,而且改变转速设定值后电机也会迅速作出反应调整到新的设定值;另外电机的启动与停止都可以平滑的进行,不会出现异常震荡等现象;并且系统采用闭环反馈控制,从而提高了系统的抗干扰性;除此之外,还通过选择合适的控制算法:比例积分微分(PID)控制算法,来平衡系统的稳定性和动态性。
通过仿真分析可以发现系统的不足,可以优化系统,从而提高性能和稳定性。具体措施如下:系统的响应时间过长时,可以考虑优化控制算法,调节pid参数,减小积分和微分时间,或者选择更快的控制策略,从而提高系统的性能。
图3. 仿真结果图(转速为300 RPM)
图4. 仿真结果图(加速到400 RPM)
图5. 仿真结果图(停止转动时)
在本文中,我们设计并实现了一种基于AT89C51单片机的直流电机PWM调速系统。该系统通过调节单片机产生的PWM输出信号的占空比,从而实现对直流电机转动速度的精准控制。在硬件设计方面,微控制器使用的是AT89C51单片机,并配置了时钟、IO端口、中断等参数,电机控制电路用到的是L298N芯片,它的功能十分强大,而且使用也很简便。在软件设计方面,我们完成了参数的定义、子程序初始化、控制算法处理等功能。通过给定信号(设置转速)和反馈信号(实际转速)的比较,计算出二者的差值,即偏差值,再由设定的pid控制算法进行运算后得到控制量,继而利用PWM信号产生电路输出与之相对应占空比的PWM波。实验结果表明,该系统能够实现对电机转速的精确控制,具有精度高、响应快、稳定性好等优点。
常心远,高继辉,刘千萌,成 浩,薛晨澎,孙 哲. 一种基于AT89C51的直流电机PWM调速系统A PWM DC Motor Speed Control System Based on AT89C51[J]. 电气工程, 2024, 12(01): 12-18. https://doi.org/10.12677/jee.2024.121002
https://doi.org/10.1016/j.ijleo.2022.169879