基于51单片机的闭环反馈直流电机PWM控制转速测量( proteus仿真+程序+设计报告+原理图+讲解视频)
仿真图proteus7.8及以上
程序编译器:keil 4/keil 5
编程语言:C语言
设计编号:S0086
1. 主要功能:
基于51单片机的闭环直流电机PWM控制系统设计
1、系统选用2个四位的共阴数码管,一个显示速度设定值,一个显示速度测量值,单位r/min;
2、51单片机控制产生PWM用于驱动L298控制直流电机;
3、使用外部中断采集直流电机的脉冲推算电机速度;
4、采用四个按键控制直流电机转速。
5、能利用产生占空比可调的PWM控制速度到达设定值,由此形成闭环PWM调速直流电机。
需注意仿真中51单片机芯片是兼容的,AT89C51,AT89C52是51单片机的具体型号,内核是一样的。相同的原理图里,无论stc还是at都一样,引脚功能都是一样的,程序是兼容的,芯片可以替换为STC89C52/STC89C51/AT89C52/AT89C51等51单片机芯片。
2. 讲解视频:
讲解视频包含仿真运行讲解和代码讲解
基于51单片机直流电机测速PWM闭环反馈控制proteus仿真+程序+报告+原理图+讲解视频
3. 仿真
打开仿真工程,双击proteus中的单片机,选择hex文件路径,然后开始仿真。开始仿真后数码管显示当前转速10转/分钟,默认设置的转速是10转/分钟。51单片机控制产生PWM用于驱动L298控制直流电机;
按键控制转速,修改转速后需要延时一会等待输出转速调整到预设值,产生占空比可调的PWM控制速度到达设定值,由此形成闭环PWM调速直流电机。
4. 程序代码
使用keil4或者keil5编译,代码有注释,可以结合视频理解代码含义。
//============================================================
/*******************************************************************************
* 函 数 名 : main
* 函数功能 : 主函数
* 输 入 : 无
* 输 出 : 无
*******************************************************************************/
void main()
{
//设置INT0
IT0=1;//跳变沿出发方式(下降沿)
EX0=1;//打开INT0的中断允许。
EA=1;//打开总中断
TMOD|=0X01;//选择为定时器0模式,工作方式1,仅用TR0打开启动。
TH0=(65536-50000)/256; //给定时器赋初值
TL0=(65536-50000)%256;
ET0=1;//打开定时器0中断允许
EA=1;//打开总中断
TR0=1;//打开定时器
delay(50000);
while(1)
{
display();//显示
if((det_sudu<sudu)&&(sudu-det_sudu>2)&&(pwm_time<1500))
{
pwm_time++;
}
if((det_sudu>sudu)&&(det_sudu-sudu>2)&&(pwm_time>1))
pwm_time--;
/* PWM控制介绍
det_sudu小于目标速度sudu,目标速度与当前速度之差大于10,
PWM计时器(pwm_time)小于1000,则增加pwm_time的值,
意味着PWM信号的高电平时间变长,导致电机转速提升或设备工作速度加快,
以试图接近预设的目标速度。
当满足以下条件时:
det_sudu大于目标速度sudu,当前速度与目标速度之差大于10,PWM计时器(pwm_time)大于1,
则减小pwm_time的值,
意味着PWM信号的高电平时间缩短,导致电机转速降低或设备工作速度下降,
以试图让实际速度回归到预设的目标速度。
*/
if(!key1) //按键检测
{
if(sudu<70)
sudu+=10;
while(!key1);
}
if(!key2)
{
if(sudu<70)
sudu++;
while(!key2);
}
if(!key3)
{
if(sudu>1)
sudu-=10;
while(!key3);
}
if(!key4)
{
if(sudu>1)
sudu--;
while(!key4);
}
}
}
5. 设计报告
5559字设计报告,内容包括硬件设计、软件设计、软硬件框图、调试、结论等
随着科技的飞速发展和工业自动化的日益深化,电机控制技术作为其中的关键环节,已经引起了广大工程师和研究者的广泛关注。在众多电机类型中,直流电机以其出色的调速性能和高效的工作效能,在众多领域如工业生产线、交通运输工具以及家用电器中均得到了广泛应用。然而,传统的直流电机控制方法主要依赖于模拟电路,虽然在一定程度上能够实现电机的控制,但在稳定性、精确度和灵活性方面却存在一定的局限性。随着微电子技术的不断发展,数字控制系统逐渐展现出其独特的优势。
51单片机作为一种经典的微控制器,凭借其高集成度、可编程性以及易于扩展等特点,在现代控制系统中扮演着越来越重要的角色。与传统的模拟电路相比,基于51单片机的数字控制系统能够实现更为精确和稳定的控制效果。此外,51单片机的广泛应用和丰富的资源也为其在电机控制领域的应用提供了便利。
6. 原理图
原理图使用AD绘制,可供实物参考,仿真不同于实物,经验不足不要轻易搞实物。
Proteus仿真和实物作品的区别:
1.运行环境:Proteus仿真是在计算机上运行的,而实物则是在硬件电路板上运行。
2.调试方式:在Proteus仿真中,可以方便地进行单步调试和观察变量值的变化,而在实物中则需要通过调试器或者串口输出等方式进行调试。
电路连接方式:在Proteus仿真中,可以通过软件设置进行电路连接的修改,而在实物中则需要通过硬件电路板和连接线进行修改。
3.运行速度:Proteus仿真通常比实物运行速度快,因为仿真是基于计算机运行的,而实物则需要考虑电路板上的物理限制和器件的响应时间等因素。
4.功能实现:在Proteus仿真中,可以通过软件设置实现不同的功能,而在实物中则需要根据电路设计和器件的性能进行实现。
7. 设计资料内容清单&&下载链接
资料设计资料包括仿真,程序代码、讲解视频、功能要求、设计报告、软硬件设计框图等。
0、常见使用问题及解决方法–必读!!!!
1、程序
2、proteus仿真
3、功能要求
4、软硬件流程图
5、开题报告
6、设计报告
7、原理图
8、讲解视频
Altium Designer 安装破解
KEIL+proteus 单片机仿真设计教程
KEIL安装破解
Proteus元器件查找
Proteus安装
Proteus简易使用教程
单片机学习资料
相关数据手册
答辩技巧
设计报告常用描述
鼠标双击打开查找嘉盛单片机51 STM32单片机课程毕业设计.url
资料下载链接:
https://docs.qq.com/doc/DS3V4TktMWG1lbUJn