您好,欢迎访问三七文档
当前位置:首页 > 商业/管理/HR > 信息化管理 > 1单片机控制直流电机调速解析
组长:王佳组员:陈祥---信工11202班目录一,任务与要求说明二,硬、软件电路设计说明三,程序设计四,项目总结一,任务与要求在实际的生活当中我们所运用到很多的直流电机来驱动一些负载,而在有的时候当我们人为需要直流电动机的转速高或低时,我们可以调节相应的按键来实现电动机调速,并要显示出当前电动机的实时转数,满足人们的需求。使得电器达到更加的人性化、智能化、科学化。能够使用单片机学习板上的按键调整电动机转速。设计并焊接出可行的驱动电路与单片机联合应用。了解调速(PWM)的原理及直流电动机的原理及应用。了解单片机的编程流程和程序编写。了解电子线路设计的一些规律性和重要性。二,硬、软件电路设计此设计以STC89c52单片机为核心控制单元器件,运用构成达林顿电路来驱动负载(电动机).直接利用单片机上的按键来控制电动机的转速上升或下降。该电路有设计简单,思路明确,价格便宜,牵涉的知识面广,应用广泛但电路的灵敏度不高、误差大、调速不稳定、调速范围小等缺点,只适用于要求不高的场合。1,硬件设计电路说明(1)STC89c52单片机。(2)分立元件构成达林顿管电路(3)硬件电路图工作原理。2,软件设计说明(1)程序流程方框图。(2)项目程序。(3)程序调试。STC89c52单片机简介STC89C52是一个低功耗,高性能CMOS8位单片机,片内含8kBytesISP(In-systemprogrammable)的可反复擦写1000次的Flash只读程序存储器,器件采用ATMEL公司的高密度、非易失性存储技术制造,兼容标准MCS-51指令系统及STC89C52引脚结构,芯片内集成了通用8位中央处理器和ISPFlash存储单元,功能强大的微型计算机的STC89C52可为许多嵌入式控制应用系统提供高性价比的解决方案。引脚功能引脚号复用功能P3.0RXD(串行输入口)P3.1TXD(串行输出口)P3.2(外部中断0)P3.3(外部中断1)P3.4T0(定时器0的外部输入)P3.5T1(定时器1的外部输入)P3.6(外部数据存储器写选通)P3.7(外部数据存储器读选通)分立元件电路本设计方案采用分立元件设计四个达林顿电路组成陈列,分别与步进电机连接,以驱动步进电机硬件电路图及要作原理•分立元件电路采用正12V供电,可提供电流驱动为500mA.工作原理•按键部分:•R1,R2,R3的作用:限流电阻,保护开关以免电流过大而损坏。•K1作用:为正反转控制按键•K2作用:为加速按钮•K3作用:为减速按钮•其电路结构是为可调速步进电机电路。•电动机驱动电路:•分立元件电路采用正12V供电,可提供电流驱动为500mA.•其中output1接C1,output2接C2,output3接C3,,output4接C4;•四个达林顿电路的COM端相接组成一个公共端,在与电机相连接。操作控制本电路经调试符合题目要求,各项技术指标均达到设计的目的。具体操作控制方法如下:1、当电机启停按钮时,步进电机根据制定默认状态开始转动;2、当电机再启停按钮时,步进电机停止转动;3、当电机换挡按钮时,步进电机速度快速转动;4、当电机再换挡按钮时,步进电机速度缓慢转动;5、当电机正反按钮时,步进电机反转;6、当电机再正反按钮时,步进电机正转三,程序设计和安装调试程序流程图:使用keilc51软件对源程序进行编译,生成.hex文件,然后通过STC程序下载软件将.hex文件下载到STC89c52单片机中,即可运行。#includereg52.h#defineucharunsignedchar#defineuintunsignedintucharcodezheng[]={0xf3,0xf6,0xfc,0xf9};ucharcodefan[]={0xf9,0xfc,0xf6,0xf3};//uchart;bitflag=0;uintshijian;uchartemp;voiddelay(uintz){uinti,j;for(i=0;iz;i++)程序设计for(j=0;j80;j++);}/*voidtimer_init(){TMOD=0X01;//定时器0,方式1TH0=(65536-50000)/256;TL0=(65536-50000)%256;ET0=1;EA=1;TR0=1;}*/voidmotor_z(){uchari;for(i=0;i4;i++){P1=zheng[i];delay(shijian);}}voidmotor_f(){uchari;for(i=0;i4;i++){P1=fan[i];delay(shijian);}}voidkeyscan(){P3=0XFF;delay(1);if(P3!=0xff){temp=P3;switch(temp){case0xfe:{flag=~flag;break;}case0xfd:{if(shijian=60){shijian=50;}else{shijian=shijian-100;}break;}case0xfb:{if(shijian=600){shijian=650;}else{shijian=shijian+100;}break;}default:break;}while(temp==P3);}}voidmain(){shijian=350;//timer_init();while(1){keyscan();if(flag==0){motor_z();}else{motor_f();}}}/*voidtimer()interrupt1{TH0=(65536-50000)/256;TL0=(65536-50000)%256;if(t=200){t=0;flag=~flag;}t++;}*/四,项目总结项目在大家的努力下终于如期完成了。看到自己的成果我想我们一定都有些许感慨和激动。单片机的课程告一段落了,可是我们明白学习和人生的路才刚刚开始。我们像是等待继续成长的苗。未来你好。谢谢老师和同学。
本文标题:1单片机控制直流电机调速解析
链接地址:https://www.777doc.com/doc-6192149 .html