直流电机控制设计(单片机)_第1页
直流电机控制设计(单片机)_第2页
直流电机控制设计(单片机)_第3页
直流电机控制设计(单片机)_第4页
直流电机控制设计(单片机)_第5页
已阅读5页,还剩20页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、编号: 单片机综合设计实训论文说明书题 目: 直流电机控制器 院 (系): 信息与通信学院 专 业: 电子信息工程 学生姓名: 班夏敏 学 号: 1101120113 指导教师: 符 强 2014年 12月31日桂林电子科技大学实训说明书用纸摘 要本文是对直流电机PWM调速器设计的研究,主要实现对电机的控制。本课程设计主要是实现PWM调速器的正转、反转、加速、减速、停止、启动等操作。并实现电路的仿真。为实现系统的微机控制,在设计中,采用了STC89C52单片机作为整个控制系统的控制电路的核心部分,配以4位共阴数码管显示模块,实现对电动机转速参数的显示;由命令输入模块及L9110H驱动模块组成。

2、采用带中断的独立式键盘作为命令的输入,单片机在程序控制下,不断给控制电路发送PWM波形,由驱动电路功率放大来完成电机正反转控制。在设计中,采用PWM调速方式,通过改变PWM的占空比从而改变电动机的电枢电压,进而实现对电动机的调速。设计的整个控制系统,在硬件结构上采用了集成电路模块,大大简化了硬件电路,提高了系统的稳定性和可靠性,使整个系统的性能得到提高。关键词:STC89C52单片机;PWM调速;正反转控制。AbstractThis article is a DC motor PWM speed control design study, the main achievement of mot

3、or control. This course is primarily designed to achieve PWM speed controller for forward and reverse, acceleration, deceleration, and stop such an operation. And to achieve the circuit simulation. To achieve system, microcomputer control, in the design, using STC89C52 microcontroller control system

4、 as a whole, the core of the control circuit, accompanied by a variety of shows, drive module enables the motor speed parameter display and measurement; from the command input module, Optical isolation module and H-drive module. With the stand-alone keyboard with a break as a command input, single-c

5、hip in the process control, continuing to the optical isolation circuit to send PWM waveform, H-type motor driving circuit to complete positive inversion control. In the design, using PWM speed mode, by changing the PWM duty cycle to change the motor armature voltage, so as to realize the speed of t

6、he motor. Design of the control system hardware structure with a large number of integrated circuit modules, greatly simplifying the hardware circuitry to improve stability and reliability of the system so that the whole system performance is improved. Key Words: STC89C52microcontroller; PWM speed;

7、positive inversion control.目 录1 绪论11.1 直流电机及其发展11.2 直流电机的分类11.3 课题研究的目的和意义12 系统总体方案12.1 系统总体规划12.2 器件介绍22.2.1单片机STC89C5222.2.2 4位共阴数码管32.2.3 L9110H驱动芯片43 硬件设计53.1 控制电路53.2最小系统53.3 4位共阴数码管显示电路63.4总体电路74 系统软件设计84.1 系统主程序84.2 正反转部分84.3 加速部分94.4 减速部分95 系统的仿真与调试105.1硬件调试106 心得体会10谢 辞12参考文献13PCB图143桂林电子科技

8、大学实训说明书用纸1 绪论1.1 直流电机及其发展定义输出或输入为直流电能的旋转电机,称为直流电机,它是能实现直流电能和机械能互相转换的电机。当它作电动机运行时是直流电动机,将电能转换为机械能;作发电机运行时是直流发电机,将机械能转换为电能。随着经济的发展,电子应用技术的提高,各类直流电机的应用得到了迅速的推广,制成了许多具有实用价值的装置和产品,单片机控制的直流电机广泛地应用于钢管输送机、电磁锤、运煤机、起重机、空压机、冲压机、拉伸机、各种电动门、电动窗、电动纺织机等等。特别可喜的是利用直线电机驱动的磁悬浮列车,其速度已超500km/h,接近了航空的飞行速度,且试验行程累计已达数十万千米。1

9、.2 直流电机的分类直流电机可按其结构、工作原理和用途等进行分类,其中根据直流电机的用途可分为以下几种:直流发电机(将机械能转化为直流电能)、直流电动机(将直流电能转化为机械能)、直流测速发电机(将机械信号转换为电信号)、直流伺服电动机(将控制信号转换为机械信号)。下面以直流电动机作为研究对象。1.3 课题研究的目的和意义在现代工业中,电动机作为电能转换的传动装置被广泛应用于机械、冶金、石油化学、国防等工业部门中,随着对生产工艺、产品质量的要求不断提高和产量的增长,越来越多的生产机械要求能实现可调速机器。基于STC89C52单片机实现控制直流电机的转速单闭环调速系统,利用PWM信号改变直流电动

10、机的电枢电压,实现电动机加速、减速及正反转等功能。长期以来,自动调速电动机一直占据着调速控制的统治地位。由于它具有良好的线性调速特性,简单的控制性能,高效率,优异的动态特性,现在仍是大多数调速控制电动机的最优选择。因此研究直流电机的速度控制,有着非常重要的意义。2 系统总体方案2.1 系统总体规划本次实训主系统确定设计要求如下:在速度模式下控制电机的加速、减速、正转、反转、启动及停止控制。电机速度可调并可显示转速的等级(本文设置的速度等级为099)。操作简单。总体设计流程如下图1所示。确定设计方案使用PROTEL设计电路图根据电路图编写程序流程图使用KEIL编写程序调试 试运行生成.HEX文件

11、购买元件焊制硬件实物完成设计不成功成功不成功成功 图1 总体设计流程图2.2 器件介绍2.2.1单片机STC89C52主要性能· 标准STC89C52内核和指令系统· 片内8kROM(可扩充64kB外部存储器)· 32个双向I/O口· 256x8bit内部RAM(可扩充64kB外部存储器)· 3个16位可编程定时/计数器· 时钟频率3.5-12/24/33MHz· 向上或向下定时计数器· 改进型快速编程脉冲算法· 6个中断源· 5.0V工作电压· 全双工串行通信口· 布尔处理

12、器帧错误侦测· 4层优先级中断结构自动地址识别· 兼容TTL和CMOS逻辑电平· 空闲和掉电节省模式· PDIP(40)和PLCC(44)封装形式图2 STC89C52性能图图3 STC89C52引脚图2.2.2 4位共阴数码管图4 数码管引脚及内部逻辑图2.2.3 L9110H驱动芯片L9110是为控制和驱动电机设计的两通道推挽式功率放大专用集成电路器件,将分立电路集成在单片IC 之中,使外围器件成本降低,整机可靠性提高。该芯片有两个TTL/CMOS兼容电平的输入,具有良好的抗干扰性;两个输出端能直接驱动电机的正反向运动,它具有较大的电流驱动能力,每通

13、道能通过750800mA的持续电流,峰值电流能力可达1.52.0A;同时它具有较低的输出饱和压降;内置的钳位二极管能释放感性负载的反向冲击电流,使它在驱动继电器、直流电机或开关功率管的使用上安全可靠。L9110被广泛应用于电机驱动和开关功率管等电路上。 图5 L9110H引脚图3 硬件设计本设计的硬件电路只要包括控制电路、最小系统、驱动电路、显示电路四大部分。最小系统只要是为了使单片机正常工作。控制电路主要由开关和按键组成,由操作者根据相应的工作需要进行操作。显示电路主要是为了显示电机的工作状态和转速。驱动电路主要是对单片机输出的脉冲进行功率放大,从而驱动电机转动。3.1 控制电路根据系统的控

14、制要求,控制输入部分设置了启动控制,换向控制,加速控制和减速控制按钮,控制电路如图6所示。当按键的状态变化时,内部程序检测P1口的状态来调用相应的启动和换向程序,发现系统的电机的启动和正反转控制。根据直流电机的工作原理可以知道,直流电机转速的控制主要是通过控制通入电机的脉冲宽度,从而控制电机的转速。对于单片机而言,主要的方法有:软件延时和定时中断在此电路中电机的转速控制主要是通过定时器的中断来实现的,该电路控制电机加速度主要是通过按键控制外部中断根据按键次数,改变速度值存储区中的数据,这样就改变了直流电机的输出脉冲宽度,从而改变了电机的转速。3.2最小系统单片机最小系统或称为最小应用系统,就是

15、用最少的元件组成的单片机可以工作的系统。对51系列单片机来说,最小系统一般应该包括:单片机、复位电路、晶振电路。复位电路:使用了独立式键盘,单片机的P1口键盘的接口。该设计要求只需6个键对直流电机的状态进行控制。复位电路采用手动复位,所谓手动复位,是指通过接通一按钮开关,使单片机进入复位状态。晶振电路用30PF的电容和一个12M晶体振荡器组成为整个电路提供时钟频率。如图7所示。晶振电路:8051单片机的时钟信号通常用两种电路形式电路得到:内部震荡方式和外部中断方式。在引脚XTAL1和XTAL2外部接晶振电路器(简称晶振)或陶瓷晶振器,就构成了内部晶振方式。由于单片机内部有一个高增益反相放大器,

16、当外接晶振后,就构成了自激振荡器并产生振荡时钟脉冲。内部振荡方式的外部电路如图7示。其电容值一般在530pf,晶振频率的典型值为12MHz。采用6MHz的情况也比较多。内部振荡方式所得的时钟信号比较稳定,实用电路实用较多。 图6 控制电路原理图 图7 复位及时钟振荡电路3.3 4位共阴数码管显示电路在该直流电机的控制器中,电机可以正反转,可以加速,可以启动、停止。采用4位数码管作显示,电机转速的等级设计可从099整数等级显示。其中,显示数字越大,速度越快;显示数字越小,速度越慢;显示为0时,电机不转动。启动时,系统默认速度等级为70。为了减少成本,该系统显示电路用数码管,而没有使用成本较高的显

17、示器件。之所以这里只能显示电机的运行状态和电机的转速的等级。在显示电路中,主要是利用了单片机的P0口和P2口。显示电路如图8所示。图8 数码管显示电路3.4总体电路 把各个部分的电路图组合成总电路图,如图9所示。图9 总体原理电路图4 系统软件设计4.1 系统主程序系统分为电机正反转、电机加速与电机减速状态显示几部分组成,其主程序框图如图10所示。P1 STC89C52(贴片) P0及P2L9110H驱动芯片直流电机反转启动停止加速减速正转显示部分图1 0 主程序框图4.2 正反转部分 调按键子程序正反转是通过判断P1.4和P1.5来控制OA、OB两个管脚电平的高低来对电机进行正反转的控制。按

18、键有效,电机转动方向改变,再次按下按钮,电机方向改变。如图11所示。 P1.4、P1.5 电机转向 图11正反转部分流程图4.3 加速部分当电机正转或反转的时候,按下加速键,调用加速子程序,使电机每转动一步的延时时间变短,从而实现电机的加速,设初始速度为K1.流程图如图12所示。 开始 P1.3为1 Y (PWM)+1)PWM N 正反转子程序图12 加速部分流程图4.4 减速部分电机正转或反转的时候,按下减速键,通过改变电机每转动一步的延时时间,使时间变长,从而实现电机减速,设初始速度为K1.流程图13所示。 开始 P1.2为1 Y(PWM)1)PWM N 正反转子程序图13 减速部分流程图

19、 5 系统的仿真与调试本设计采用单片机STC89C52做为控制器,通过编译软件KEIL C51对源程序进行编译以生成HEX,让单片机程序控制协调各个功能模块工作。5.1硬件调试仿真完全实现其所需的功能以后,并在接入电源之前,用万用表对整个电路进行检查,查看是否在联线过程中是否出现问题。检查硬件电路内容入下所示:检查线路的焊接问题。检查电路是否有没接的线路。各种外围器件是否接错。在接上电源以后看芯片是否都是在正常工作电压下工作,其它器件是否正常工作等。6 心得体会 通过本次课程设计,我对STC89C52单片机的原理更深一步的掌握,基本了解了简单的直流电机控制系统的组成原理,并初步掌握了直流电机设

20、计及测试方法。提高了动手能力和排除故障的能力。同时通过本次设计与调试,巩固了已学的理论知识,之前一直都是局限于理论表面的知识,这次实训通过自己网上查找资料及在同学的指导下编写程序,第一次使用Protell99软件学画电路图,并做出电路板。调试的整个过程,将软件跟硬件结合起来,组成一个完整的具有一定功能的系统,将单片机的理论和实践相结合,了解到直流电机各单元电路之间的关系及影响,从而能正确设计、计算定时计数的各个单元电路。设计初始,本打算用1602LCD显示模块来做电路的显示部分,但考虑到经济的问题,所以采用4位数码管来做显示部分,电路也比较简单。由于但数码管可显示的信息太少,不能同时显示电机的

21、运行转态,转向等信息,这可能就是小系统的缺点吧。使用L9110H做电机驱动电路,是考虑到电机性能及芯片的驱动能力,L9110H峰值电流可达2000mA,功耗小,但工作较稳定。看到题目的发挥部分,实现电机的细分,可用可调占空比PWM的脉冲信号来实现,可用专门的电机细分芯片来实现。进一步的初步掌握直流电机控制系统的设计及测试方法,提高了动手能力和排除故障的能力。 本次设计能够实现直流电机的启停、正反转以及速度的调节,通过本次课程设计加强了我对软件编程和硬件设计的掌握,直流电机在控制系统中具有广泛的应用。本设计实现了占用CPU时间少,效率高,易于控制直流电机的转向转速等。再有,本设计过程考虑还比较到

22、位,可以方便灵活地控制直流电机的运行,以满足不同的要求,因此常把单片机直流电机控制电路称之为可编程直流电机控制驱动器。直流电机控制(包括控制脉冲的产生和分配)使用软件方法,即用单片机实现,这样既简化了电路,也减低了成本。这次设计使我学到了更多以前在书本知识中不怎么了解的知识,更加明白了电子信息技术快速发展的今天,电子技能知识有着非常重要的意义,丰富了我们对实际工艺技术、电子技术和设备技术等方面的认识,掌握了分析问题、处理问题的方法以及调试、计算等基本技能,使实际工作能力得到了有效提高。谢 辞 通过这两周的匆匆茫茫的实训过程,深深感到理论知识与实践的相结合的重要性。时间过得很快,忙忙碌

23、碌的日子历历在目,这一次的实训让我深深的明白:抓紧时间,多学知识。要感激在平时学习中给我提供帮助的老师、学长和同学,特别要感谢的是舍友们给与我一点一滴的帮助。在这么忙碌的期末,我很感激他们在占用自己宝贵的时间来帮我指点迷津。因为是第一次使用Protel99画电路图和第一次做板,很多东西都不知道怎么去做,很感谢科协学长的耐心指导。此外,感谢我们学院为我们提供这次实训的机会,唐我们学到了很多课外的知识。感谢我的同学在实训与调试过程中给予的帮助,有了他们的帮助,我少走了很多的弯路。同时也要感谢实验室,感谢它们在我们实训过程中为我们提供的动手的场地与器材,是它们让我们有了更多的条件去学习,让我们有了更

24、多锻炼自己的机会,让我们学到了很多很多。学校开展实训这样的课题,使我受益匪浅,从中使我在很短的时间里学到了很多很书本上没有的知识,而且让我对以前学过的知识有了更深刻的印象,同时也发现了自己知识的一些缺陷,因而我还要感谢学校,感谢学校安排实训这个课程,感谢学校为了让每个同学在实训中能够学有所成学有所得而做出的努力。参考文献 1杨永辉现代电子技术J 智能小车的多传感器数据融合.2005, (6) :3-6.2方建军何广平智能机器人M北京:化学工业出版社2004 :5-93张立电子世界J电动小车的循迹 2004,(6):454滕志军今日电子J基于超声波检测的倒车雷达设计2006,(9):15-17

25、5徐科军传感器与检测技术M北京:电子工业出版社,2007:110-113,160-161 6潘新民王燕芳微型计算机控制技术实用教程M北京:电子工业出版社,2007:75-76,118-119 7何立民单片机与嵌入式系统应用J 基于HCS12的小车智能控制系统设计2007,(3) :51-53,57 8任小青,王晓娟.基于AT89C51单片机的频率计设计方法的研究J2009.PCB图附 录一程序:#include<reg52.h>#include<stdio.h>#define uchar unsigned char#define uint unsigned intsbi

26、t SMG1=P24;sbit SMG2=P25;sbit SMG3=P26;sbit SMG4=P27; /数码管位选sbit KEY1=P12; /启动sbit KEY2=P13; /停止sbit KEY3=P14; /正转sbit KEY4=P15; /反转sbit KEY5=P16; /加速sbit KEY6=P17; /减速uchar start=0;/启动停止标志位 启动start=1 停止start=0uchar direction=1;/正转反转标志位 正转direction=1,反转direction=0sbit MOTOR1=P11;sbit MOTOR2=P10;/电机驱

27、动端口sbit SPD=P33; /信号采集端口uchar ZKB; /占空比初值设定uchar N=0;uchar num=0;uchar Tab=0xC0,0xF9,0xA4,0xB0,0x99,0x92,0x82,0xF8,0x80,0x90;uint SPEED=0;/转数值uint temp=0;/*函数名称:延时函数函数功能:延时*/void delay_ms(uint t) uint i,j; for(i=0;i<t;i+) for(j=0;j<120;j+); /*函数名称函数功能:按键扫描*/void KEY_CHECK() if(KEY1=0) /当“启动”按键

28、按下时 delay_ms(20); if(KEY1=0) start=1;/“启动”标志位变为一 if(KEY2=0) /当“停止”按键按下时 delay_ms(20); if(KEY2=0) start=0;/“启动”标志位变为0 if(KEY3=0) /当“正转”按键按下时 delay_ms(20); if(KEY3=0) direction=1;/“方向”标志位变为一 if(KEY4=0) /当“反转”按键按下时 delay_ms(20); if(KEY4=0) direction=0;/“方向”标志位变为0 if(KEY5=0) /当“加速”按键按下时 delay_ms(20); if

29、(KEY5=0) if(ZKB>0) ZKB-;/占空比减一delay_ms(100);/while(!KEY5); if(KEY6=0) /当“减速”按键按下时 delay_ms(20); if(KEY6=0) if(ZKB<=99) ZKB+;/占空比加一delay_ms(100); /while(!KEY6); /*函数名称函数功能:显示函数*/void Dispaly(uint ss) uchar i,j,k,l; i=ss%10;/取出速度的个位 j=(ss/10)%10;/取出速度的十位 k=(ss/100)%10;/取出速度的百位 l=(ss/1000);/取出速度的千位 P0=Tabl; SMG1=1; delay_ms(2); SMG1=0; /显示千位 P0=Tabk; SMG2=1; delay_ms(2); SMG2=0; /显示

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论