版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、成绩 目录1、 设计任务和要求.12、 设计思路.13、 系统硬件设计.23.1单片机电路原理介绍. .33.2电机和驱动器电路原理介绍.43.3显示锁存电路原理介绍.53.4数码管原理.6四、系统软件设计.7五、调试过程与结果.8六、总结与体会.9七、参考资料.10八、附录.10附录一、总电路图.11附录二、电路源程序.12附录三、元件清单.17附录四、实物图.18一、 设计任务和要求电机控制课程设计是考察学生利用所学过的电机控制专业知识,进行综合的电机控制系统设计并最终完成实际系统连接,能够使学生对电气与自动化的专业知识进行综合应用,培养学生的创新能力和团队协作能力,提高学生的动手实践能力
2、。最终形成一篇符合规范的设计说明书,并参加综合实践答辩,为后期的毕业设计做好准备。本次设计考核的能力主要有:1) 专业知识应用能力,包括电路分析、电子技术、单片机、检测技术、电气控制、电机与拖动、微特电机及其驱动、计算机高级语言、计算机辅助设计、计算机办公软件等课程,还包括本专业的拓展性课程如变频器、组态技术、现场总线技术、伺服电机等课程。2) 项目设计与运作能力,团队协作能力,技术文档撰写能力,PPT汇报与口头表达能力。3) 电气与自动化系统的设计与实际应用能力。要求完成的工作量包括:1) 制作实际成品,并现场演示效果。2) 学生结合课题进行PPT演讲与答辩。3) 学生上交课题要求的各类设计
3、技术文档。二、 设计思路电源模块数码管显示模块MCUULN2003驱动模块四相步进电机串口控制模块本次设计是以单片机为核心,通过控制模块发出信号,经单片机处理后,向步进电机的驱动器和状态显示模块发出触发信号,使得步进电机接收到驱动器的触发信号,就开始动作;状态显示模块显示当前步进电机的转速。电源为各个模块提供电能,让每个模块都能正常工作的基础;步进电机不能识别单片机发出的信号,应有驱动模块将单片机发出的信号进行转换、放大;才可以让步进电机做出相应的动作;驱动器在这里起到桥梁作用,为单片机与步进电机的连接而采用的;步进电机有单、双拍及单双混合式工作方式,课程设计采用四相五线式步进电机(双四拍工作
4、方式),驱动模块应具备四根相线,才能满足步进电机的要求,驱动模块选取ULN2003芯片,ULN2003特点是低电压,低功率控制元件,符合课程设计要求;现在是智能化的时代,通过PC机发出要求,硬件做出相应的反馈动作,课程设计的控制模块就涉及到PC机,通过单片机串口通信,就可以与PC机连接、通信,这样就可以远距离,可监视、控制步进电机的运转速度;显示模块通过一对四联式的数码管构成,能够时时刻刻反映电机的状态,PC机与数码管都可以显示电机的运转速度,二者的区别在于数码管是固定在某个地方,给人指示的作用,而PC机是作为控制而显示的;各个模块都是独立的个体,软件程序是将整个模块合理的统一调度起来,完成课
5、程设计任务。三、 系统硬件设计可分单元电路进行原理介绍。1、单片机电路原理介绍:单片机图3.1.1 89C51单片机简介 其管脚图如图3-2所示。其各引脚功能如下: VCC:供电电压。 GND:接地。 P0P3口:4个8位I/O端口,每个端口既可以用作输入,也可用作输出。P3口也可作为AT89C51的一些特殊功能口。 P3.0 RXD(串行输入口); P3.1 TXD(串行输出口); P3.2 /INT0(外部中断0); P3.3 /INT1(外部中断1) ; P3.4 T0(计时器0外部输入); P3.5 T1(计时器1外部输入); P3.6 /WR(外部数据存储器写选通); P3.7 /R
6、D(外部数据存储器读选通)。 RST:复位输入。当振荡器复位器件时,要保持RST脚两个机器周期的高电平时间。 图3-2 89C51芯片引脚图ALE:当访问外部存储器时,地址锁存允许的输出电平用于锁存地址的低位字节。/PSEN:外部程序存储器的选通信号。在由外部程序存储器取指期间,每个机器周期两次/PSEN有效。但在访问外部数据存储器时,这两次有效的/PSEN信号将不出现。 /EA/VPP:当/EA保持低电平时,CPU只访问片外ROM程并执行外部存储器中的指令;当/EA端保持高电平时,CPU只访问片内Flash ROM并执行内部存储器中的指令。 XTAL1:反向振荡放大器的输入及内部时钟工作电路
7、的输入。 XTAL2:来自反向振荡器的输出。2、电机和驱动器电路原理介绍图2电机和驱动器图2.1 ULN2003工作原理:ULN2003 的每一对达林顿都串联一个2.7K 的基极电阻,在5V 的工作电压下它能与TTL 和CMOS 电路直接相连,可以直接处理原先需要标准逻辑缓冲器来处理的数据。ULN2003 工作电压高,工作电流大,灌电流可达500mA,并且能够在关态时承受50V 的电压,输出还 可以在高负载电流并行运行。 ULN2003 采用DIP16 或SOP16 塑料封装。 ULN2003内部还集成了一个消线圈反电动势的二极管,可用来驱动继电器。它是双列16脚封装,NPN晶体管矩阵,最大驱
8、动电压=50V,电流=500mA,输入电压=5V,适用于TTL COMS,由达林顿管组成驱动电路。 ULN是集成达林顿管IC,内部还集成了一个消线圈反电 图2.1 芯片ULN2003动势的二极管,它的输出端允许通过电流为200mA,饱和压降VCE 约1V左右,耐压BVCEO 约为36V。用户输出口的外接负载可根据以上参数估算。采用集电极开路输出,输出电流大,故可直接驱动继电器或固体继电器,也可直接驱动低压灯泡。通常单片机驱动ULN2003时,上拉2K的电阻较为合适,同时,COM引脚应该悬空或接电源。 ULN2003是一个非门电路,包含7个单元,单独每个单元驱动电流最大可达350mA,9脚可以悬
9、空。在本系统中采用了四相五线型步进电机,采用单极性直流电源供电。只要对步进电机的各相绕组按合适的时序通电,就能使步进电机转动。当某一相绕组通电时,对应的磁极产生磁场,并与转子形成磁路,这时,如果定子和转子的小齿没有对齐,在磁场的作用下,由于磁通具有力图走磁阻最小路径的特点,则转子将转动一定的角度,使转子与定子的齿相互对齐,由此可见,错齿是促使电机旋转的原因。2.2 驱动模块的工作原理图2.1中IN1IN4引脚经四个与非门接单片机引脚RD0RD3,引脚OUT1OUT4连接到步进电动机的4个引脚。这样单片机发出的信号经过ULN2003放大后从OUT1-OUT4口分别输出到电机的A、B、C、D相线,
10、即可驱动步进电机转动了。3、显示锁存电路原理介绍图3锁存电路图该电路工作原理:74hc573是8位三态D触发器(如图3-10所示)。 1脚是输出控制端,1脚=L,使能输出;1脚=H,高阻。11脚是时钟,下降沿触发.。在数码管显示方面,要维持一个数据的显示,往往要持续的快速的刷新。尤其是在四段八位数码管等这些要选通的显示设备上。在人类能够接受的刷新频率之内,大概每三十毫秒就要刷新一次。这就大大占用了处理器的处理时间,消耗了处理器的处理能力,还浪费了处理器的功耗。锁存器的使用可以大大的缓解处理器在这方面的压力。当处理器把数据传输到锁存器并将其锁存后,锁存器的输出引脚便会一直保持数据状态直到下一次锁
11、存新的数据为止。 图3-10 74HC573引脚结构图4、数码管原理图4数码管电路图此模块由一个四位一体的共阴极数码管和排阻组成。四位一体数显数码管用于步进电机转速的显示,转速数据通过单片机的P2.0P2.7口输出先经由74HC574锁存器锁存再传送给数码管进行显示。 4位一体共阴极数码管,其内部段已连接好,引脚如图3-12所示。a、b、c、d、e、f、g、dP为段引脚,A1、A2、A3、A4分别表示四个数码管的位。5、串口电路原理51单片机有一个全双工的串行通讯口,所以单片机和计算机之间可以方便地进行串口通讯。进行串行通讯时要满足一定的条件,比如计算机的串口是RS232电平的,而单片机的串口
12、是TTL电平的,两者之间必须有一图5 串口模块个电平转换电路,我们采用了专用芯片MAX232进行转换,虽然也可以用几个三极管进行模拟转换,但是还是用专用芯片更简单可靠。我们采用了三线制连接串口,也就是说和计算机的9针串口只连接其中的3根线:第5脚的GND、第2脚的RXD、第3脚的TXD。这是最简单的连接方法,但是对我们来说已经足够使用了,电路如下图所示,MAX232的第10脚和单片机的11脚连接,第9脚和单片机的10脚连接, 串口电路图第15脚和单片机的20脚连接。四、 系统软件设计开始定时器0,1,2初始化电机初始化While(1)Y串口数据处理子程序99999999999999999999
13、9999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999 判断条件满足吗Y电机动作数码管显示子程序结束图4.1主程序流程图开始开始对串口初始化段选初始化位选初始化接收中断发送的数据I4 数据转换成数码管显示的值i+处理后的值返回上位机结束图4.2数码管显示流程图4.3数据处理流程图软件程序中分主程序部分(设置外部中断0、数码管显示、数据锁存、按键延时消抖)、步进电机正反转参数设置部分、数码管显示延时部分。其中主程序的主要功能是系统初始参数的
14、设置及按钮的检测,若按钮SW1按下则系统开始工作,反之系统停止工作;外部中断0部分控制脉冲频率,它决定了步进电机转速的快慢;数据锁存部分将单片机P2口输出信号进行锁存,并调用数码管显示延时程序对数码管按位输送数据;数码管显示部分则设定了所要显示的电机转速;步进电动机正反转参数设置由表4-1所示进行设定。表4-1正转励磁顺序 ABBCCDDAABSTEPABCD11100201103001141001五、 调试过程与结果(1)将各元器件在线路板上进行排版;(2)按原理图接线;(3)先测试4位一体数码管的极性调试过程还是比较成功的,电机能够正常的运转,数码管能够成功的显示电机当前的转速。六、 总结
15、与体会“实践出真知”!这次课程设计的确使我受益匪浅。通过本次电机控制课程设计,我们对微特电机及其驱动课程的知识有了进一步的理解和掌握。尤其是在单片机、步进电动机的还有C语言编程的学习上都有了很大的收获。在设计电路时,我们充分应用我们所学的知识,在不断的思考和改进中,将它们设计结合在一起去实现我们想要的结果。这培养了我们对专业知识的综合运用能力和在处理问题时的逻辑思维能力。同时通过这次课程设计也复习了Proteus仿真和Protel绘制原理图的一些基本操作。在本次课程设计中最能锻炼人的编程环节,因为在这一个环节中,出现的问题是最多,也是最麻烦的。在此过程中,我们发现了修改完善程序的重要性,则我们
16、在编程中要仔细检查自己的程序,考虑到各种可能发生的情况。虽然改写的过程是很需要耐心考验的,但却一步步增强自己的能力,相信通过这次课程设计它对我们以后的学习及工作都会产生重要的影响。本次课程设计中,我们小组分工合作,从确立课题到绘制原理图、编程再到最后的实物制作与答辩都能有条不紊的进行着,想要有好的学习效率,团队协作非常重要,也是通过这次课程设计,培养了我们的团队精神,这在以后的无论是在生活、学习还是工作中,都是大有帮助的。总而言之,这次的课程设计让我们体验到了先苦后甜的感觉,让我们收获满满,带着这份甜,带着这份收获,以后的我们会更加的努力,不断前进。七、 参考资料参考资料不低于5篇,参考书目要
17、求与本设计课题相关。格式参考:1 侯文霞. 变频调速技术在中央空调控制中的应用J.机床电器.2002第二期.2 韩常. PLC编程及应用M. 北京:机械工业出版社,2005.3 彭虎,周佩玲,傅忠谦.微机原理与接口技术Z.北京:电子工业出版社,2008 4 张齐,朱宁西.单片机应用系统设计技术基于C51的Proteus仿真Z.北京:电子工业出版社,20095周荷琴,吴秀清.微型计算机原理与节后技术Z.合肥:中国科技大学出版社。2009八、 附录附录一:总电路图附录二:电路源程序#include #include #include timer0.h#include display.h#inclu
18、de uart.h /Motorsbit CoilA = P10;sbit CoilB = P11;sbit CoilC = P12;sbit CoilD = P13;#define uint unsigned int#define uchar unsigned char#define STEPNUM 48 /步进电机一圈的步数 /步进电机驱动 unsigned char StepNumber=0;bit StepGapFlag,StrRecvOkFlag;uchar str1Print=Timer0s value is:; /测试用 uchar i,UartSendArray8=0, 0,
19、0, 0, 0, r,n,0; /测试用:r,n为换行符,0为结束符 uchar str2Print=UartRecvArray value is:; /测试用 uchar UartPrintArray6=0, 0, 0, r,n,0;/测试用 uchar UartRecv,UartRecvArray5=0; /定义串行口接收数据变量 uint time0value,speedvalueRPM;uchar disData=11,11,11,11,11,0,0,0;void InitMotor() CoilA = 0; CoilB = 0; CoilC = 0; CoilD = 0; void
20、SetMotor() switch(StepNumber) case 0: if(StepGapFlag) if(disData0=10)P0 = 0x03; /0000 0011 elseP0 = 0x0c;_nop_(); StepNumber = 1;StepGapFlag=0; break;case 1:if(StepGapFlag) P0 = 0x09; /0b0000 1001;_nop_(); StepNumber = 2;StepGapFlag=0; break; case 2:if(StepGapFlag)if(disData0=10) P0 = 0x0c; /0b0000
21、1100;elseP0 = 0x03; _nop_(); StepNumber = 3;StepGapFlag=0; break; case 3:if(StepGapFlag) P0= 0x06; /0b0000 0110;_nop_(); StepNumber = 0;StepGapFlag=0; break; void main() InitTimer0();/初始化定时器 InitMotor(); /电机停止Init_SerialCom(); while(1)if(speedvalueRPM != 0)SetMotor();if(StrRecvOkFlag)StrRecvOkFlag =
22、 0;if(UartRecvArray0-0x30)5)disData0 = 10;elsedisData0 = 15;disData1 = UartRecvArray1-0x30;disData2 = UartRecvArray2-0x30;disData3 = UartRecvArray3-0x30;speedvalueRPM = disData1*100+disData2*10+disData3;/speedvalueRPM/60得到1s转的圈数 /speedvalueRPM/60*STEPNUM 得到步进电机转1圈需加的脉冲数 /1000000/(speedvalueRPM/60*STEPNUM) 得到每个脉冲的时间间隔 time0value = 1000000/(speedvalueRPM*STEPNUM/60);/单位us/=以下为测试用,串口输出定时器0的定时时间us=UartSendArray0 = time0value/10000+0x30;UartSendArray1 = time0value/1000%10+0x30;UartSendArray2 = time0value/100%10
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 采购文件日常管理制度
- 采购材料到齐奖励制度
- 采购法律审核制度汇编
- 采购渠道管理制度
- 采购物资分类管理制度
- 采购申请制度及流程
- 采购签核制度
- 采购管理岗位轮岗制度
- 采购红黄线制度
- 采购考核制度
- DB5301∕T 58-2021 机械式停车场(库)建设管理技术规范
- 场景造型基础知识培训课件
- 数控加工程序管理办法
- 2025年6月浙江省高考选考信息技术试卷真题(含答案详解)
- CJ/T 295-2015餐饮废水隔油器
- TCWEA6-2019水利水电工程施工期度汛方案编制导则
- 胫骨平台骨折 课件
- 对口升学考试全真模拟试卷计算机专业(第2版)答案解析
- 中石化安全管理手册
- 应急物资储备方案76803
- GB/T 21666-2025失禁用尿便吸收辅助器具评价的一般指南
评论
0/150
提交评论