《步进电机实时转速控制课程设计报告书.doc》由会员分享,可在线阅读,更多相关《步进电机实时转速控制课程设计报告书.doc(15页珍藏版)》请在课桌文档上搜索。
1、步进电机转速实时控制摘要:步进电机是一种感应电机.它的工作原理是利用电子电路.将直流电变成分时供电的.多相时序控制电流.用这种电流为步进电机供电.步进电机才能正常工作.驱动器就是为步进电机分时供电的.多相时序控制器。本设计采用电压为DC12V的四相八拍步进电机35BYJ46型电机.用ULN2003作为步进电动机驱动电路主芯片.以8255A作为8086并行输出接口.8086对步进电机的控制信号则通过8255A送到ULN2003.关于转向与转速.通过查表的方式实现.以逐次递增方向查表.依次输出表中数据.则步进电机正转;以逐次递减方向查表.则步进电机反转.即通过一个表实现步进电机的正转与反转。转速则
2、通过调用延时子程序.当调用延时较长的子程序时.则步进电机转速慢.当调用延时较短的子程序时.步进电机转速加快。关键词:步进电机;ULN2003;8259A;转向;转速.目 录第1章 绪论.11.1 研究背景.11.2 选题的目的和意义.21.3 本课程设计的主要内容.2第2章 步进电机转速实时控制.32.1 设计方案.32.2 硬件系统基本原理.3 2.2.1 步进电机35BYJ46.3 1励磁线圈及其励磁顺序.3 2四相步进电机工作原理示意图.4 3步进电机与8255A接口关系.5 4步进电动机的速度控制. .52.2.2 8255A可编程并行接口芯片.6 18255简介.6 28255的编码
3、与工作方式选择.72.3 软件框图.82.4软件清单.10第3章 结束语.13参考文献.15附录.1612 / 15第1章 绪论1.1 研究背景步进电机是一种进行精确步进运动的机电执行元件.它广泛用于工业机械的数字控制。步进电机易于实现与计算机或其他数字元件接口,适用于数字控制系统. 步进电机只需采用最简单的开环控制就可取得非常高的控制精度.且这种系统不需要反馈信号.系统硬件实施比较简单。为了使系统的可靠性、通用性、可维护性以及性价比最优.根据控制系统功能要求及步进电机环境.确定了设计系统硬件和软件的功能划分.从而实现了基于8255芯片的四相步进电机的控制系统。根据步进电机的励磁顺序列写控制步
4、进电机顺序转动的输出的数据表.接着初始化8255A的工作方式根据要求调入函数输入数据完成正转、反转、开始、停止等功能。步进电机是电机家族的婴儿.20 世纪 60 年代早期才开始流行。步进电机最早是在1920年代由英国人所开发。1950年代后期晶体管的发明也逐渐应用在步进电机上.对于数字化的控制变得更为容易。往后经过不断改良.使得今日步进电机已广泛运用在需要高定位精度、高分解能、高响应性、信赖性等灵活控制性高的机械系统中。在生产过程中要求自动化、省人力、效率高的机器中.我们很容易发现步进电机的踪迹.尤其以重视速度、位置控制、需要精确操作各项指令动作的灵活控制性场合步进电机用得最多。步进电机的最初
5、构想是作为昂贵的位置控制应用中伺服电机的低成本替代产品.而新兴的计算机工业迅速将其采用到外设应用当中。步进电机的主要优势在于能提供开环位置控制.而成本只是需要反馈的伺服系统的几分之一。在过去.步进电机有时被误称为数字电机.因为它们常用正交方波驱动。自六十年代初期以来.步进电机的应用得到很大的提高.人们用它来驱动时钟和其他采用指针的仪器.打印机、绘图仪、磁盘光盘驱动器、各种自动控制阀、各种工具.还有机器人等机械装置。此外作为执行元件.步进电机是机电一体化的关键产品之一.被广泛应用在各种自动化控制系统中.随着微电子和计算机技术的发展.它的需要量与日俱增.在各个国民经济领域都有应用。步进电机是机电数
6、字控制系统中常用执行元件.由于其精度高、体积小、控制方便灵活.因此在智能仪表和位置控制中得到了广泛的应用。Intel 8086/8088 系列的可编程外设接口电路Programmable Peripheral Interface简称 PPI.型号为8255改进型为8255A及8255A-5.具有24条输入/输出引脚、可编程的通用并行输入/输出接口电路。它是一片使用单一+5V电源的40脚双列直插式大规模集成电路。8255A的通用性强.使用灵活.通过它CPU可直接与外设相连接。与一般的电机控制过程类似.在对本设计方案实施运转之前.首先需要研究系统的特性,过归纳和抽象建立系统的数字模型。由步进电机定
7、子和转子示意图见工作原理可见调节脉冲信号的频率便可以改变步进机的转速.改变各相输入脉冲先后顺序.可以改变电机的旋转方向。 对于转速控制:调节脉冲信号的频率便可以达到目的。1.2 选题的目的和意义步进电机转速实时控制实现了电机运转的程序微机控制化.步进电动机主要应用在数控机床制造领域.由于步进电动机不需要A/D转换.能够直接将数字脉冲信号转化成为角位移.所以一直被认为是最理想的数控机床执行元件。除了在数控机床上的应用.步进电机也可以用在其他的机械上.比如作为自动送料机中的马达.作为通用的软盘驱动器的马达.也可以应用在打印机和绘图仪中.微机控制系统的快速计算.灵活多样的逻辑判断和高效的信息加工能力
8、使自动控制进入了更高一级的领域.提高了生产过程的自动化程度.减少了人工干预.并不断地完善和满足工农业生产和国防科技日益增长的需要。微机控制系统由于具有成本低.体积小.功耗少.可靠性高和使用灵活等特点.因而广泛地应用于工农业生产.交通运输.国防建设和空间技术等各个领域。其控制对象已从单一的工厂流程扩展到企业生产过程的管理与控制。微机和单片机的推广使用实现信息自动化与过程控制相结合的分级分布式计算机控制.计算机技术的水平发展到一个崭新的阶段。 正是由于数字通信系统由于具有许多优点而成为当今通信的发展方向.实现模拟系统数字化极大地促进了通信领域的发展.使人类的生产生活进入了数字化时代。本设计为掌握利
9、用计算机来加深对所学知识的理解和掌握.通过步进电机转速实时控制平台.运用所学的理论和方法进行实践、解决问题。同时培养我们理论联系实际的设计思想.训练综合运用所学的理论知识分析和解决实际应用问题的能力.从而使基础理论知识得到巩固、加深和系统化。熟悉和掌握运用设计资料的能力。1.3 本课程设计的主要内容1 对步进电机转速实时控制的主要环节.包括硬件系统基本原理、软件框图及设计思想进行了详细的阐述。 掌握步进电机与8255的接口电路原理。 能编制出步进电机正、反转运行程序以3种不同速度。 独立编写好程序.并能在机器上调试通过.并要求将速度值在液晶显示器上显示。第2章步进电机转速实时控制2.1 设计方
10、案本设计采用电压为DC12V的四相八拍步进电机35BYJ46型电机.步进电动机驱动电路主芯片是ULN2003.以8255A作为8086并行输出接口.8086对步进电机的控制信号则通过8255A送到ULN2003。其中步进电机的励磁线圈及其励磁顺序已经确定。关于转向与转速.通过查表的方式实现.以逐次递增方向查表.依次输出表中数据.则步进电机正转;以逐次递减方向查表.则步进电机反转.即通过一个表实现步进电机的正转与反转。其中表中内容为程序的TABLEDB中的内容。转速则通过调用延时子程序.当调用延时较长的子程序时.则步进电机转速慢.当调用延时较短的子程序时.步进电机转速加快。2.2 硬件系统基本原
11、理2.2.1 步进电机35BYJ461励磁线圈及其励磁顺序.其励磁线圈如图2-1所示.励磁顺序如表2-1-1所示:图2-1 励磁线圈表2-1-1 励磁顺序12345678543212四相步进电机工作原理示意图见图2-2.转子由一个永久磁铁构成.定子分别由4组绕组构成。图2-3为电路连接图图2-2 电机定子和转子示意图图2-3 电气连接示意图当S1连通电源后.定子磁场将产生一个靠近转子为N极.远离转子为S极才磁场.这样的定子磁场和转子的固有磁场发生作用.转子就会转动.正确地S1、S4的送电次序.就能控制转子旋转的方向。例如:若送电的顺序为S1闭合 断开 S2闭合 断开 S3闭合 断开 S4闭合
12、断开.周而复始的循环.在定子和转子共同作用下.电机就瞬时针旋转:图2-4电机顺时针旋转示意图 若送电的顺序为S4闭合断开 S3闭合 断开 S2闭合 断开S1闭合 断开.周而复始的循环.则电机就逆时针旋转.原理同理。8255A向步进电机发出控制脉冲如图2-5:图2-5 8255A向步进电机发出的控制脉冲3步进电机与8255A接口关系如图2-6:PB0PB1PB2PB38255 AABCDABCD驱动电路1234535BYJ46型步进电机+12V图2-6 实验线图4 步进电动机的速度控制 步进电机速度的控制是通过控制单片机发出的步进脉冲的频率来实现。 对于软件脉冲分配方式采用调整两个控制字之间的时
13、间间隔来实现调速;对于硬件脉冲分配方式则采用定时中断方式来调整脉冲频率从而实现调速。根据以上所述.控制步进电机速度的方法有两种。软件延时法:通过调用标准的延时子程序.改变两控制字之间延时时间来实现。采用软件延时方法实现速度调节的优点是程序简单.思路清晰. 不占用硬件资源.缺点是 CPU 的等待时间过长.占用大量机时.因此没有实用价值。这次试验采用的便是软件延时。 定时器中断法。以 805l 单片机为例.在中断服务子程序中进行脉冲输出操作.调整定时器的定时常数就可实现脉冲频率的调整.从而实现调速。 这种方法占用 CPU 时间较少.容易实现.是一种比较实用的调速方法。2.2.2 8255A可编程并
14、行接口芯片1 8255简介Intel 8086/8088 系列的可编程外设接口电路Programmable Peripheral Interface简称 PPI.型号为8255改进型为8255A及8255A-5.具有24条输入/输出引脚、可编程的通用并行输入/输出接口电路。它是一片使用单一+5V电源的40脚双列直插式大规模集成电路。8255A的通用性强.使用灵活.通过它CPU可直接与外设相连接。 8255A在使用前要写入一个方式控制字.选择A、B、C三个端口各自的工作方式.共有三种; 方式0 :基本的输入输出方式.即无须联络就可以直接进行的 I/O方式。其中A、B、C口的高四位或低四位可分别设
15、置成输入或输出。 方式1 :选通I/O,此时接口和外围设备需联络信号进行协调.只有A口和B口可以工作在方式1.此时C口的某些线被规定为A口或B口与外围设备的联络信号.余下的线只有基本的I/O功能.即只工作在方式0. 方式2: 双向I/O方式.只有A口可以工作在这种方式.该I/O线即可输入又可输出.此时C口有5条线被规定为A口和外围设备的双向联络线.C口剩下的三条线可作为B口方式1的联络线.也可以和B口一起方式0的I/O线。8255A是一个并行输入、输出器件.具有24个可编程设置的I/O口.包括3组8位的I/O为PA口、PB口、PC口.又可分为2组12位的I/O口:A组包括A口及C口高4位.B组
16、包括B口及C组的低4位。2 8255的编码与工作方式选择1 8255A的工作方式控制字图2-7 8255A工作方式控制字2 8255A的端口地址编码它的A口、B口、C口和控制口的编码如表2-2表2-2A7A6A5A4A3A2A1A0地址A口0111000060HB口0111001061HC口0111010062H控制口0111011063H2.3软件框图见下页及设计思想根据步进电机的励磁顺序列写控制步进电机顺序转动的输出的数据表 初始化8255A的工作方式 设定需要步进电机转过的步数 顺序依次逐个延时调用延时函数1:延时较长.实现慢转输出表中数据 设定需要步进电机快速转过的步数顺序依次逐个延时
17、调用延时函数2:延时较短.实现快转输出表中数据 设定需要反向转过的步数逆序依次逐个延时调用延时函数1.慢速输出表中数据设定需要步进电机快速反向转过的步数逆序依次逐个延时调用延时函数2.快速输出表中数据。以此循环.则可实现让步进电机先低速正转到高速正转.再从高速正转到低速反转.再高速反转.周而复始。开 始8255初始化查表TABLEDX=04HCX=08H取BX首址CALL DALLY调用延时BX=BX+1NNYCX=0? DX为负? Y查表TABLEDX=04HCX=08H取BX首址CALL DALLY调用延时NBX=BX+1NY CX=0? DX为负?Y结束2.4软件清单DATA SEGME
18、NTTABLE DB 01H,03H,02H,06H,04H,0CH,08H,09HDATA ENDSSTACK SEGMENT STACK DW 256 DUP STACK ENDSCODE SEGMENT ASSUME CS:CODE,DS:DATASTART: MOV AX,DATA MOV DS,AXMAIN: MOV AL,80H OUT 63H,AL MOV DX,0FFHA1: MOV BX,OFFSET TABLE MOV CX,08HA2: MOV AL,BX OUT 61H,AL CALL DALAY0 INC BX DEC DX JZ D1 LOOP A2 JMP A1D
19、1: DEC CX;CX=0 MOV DX,0FFHA3: MOV AL,BX OUT 61H,AL CALL DALAY1 INC BX DEC DX JZ D2 LOOP A3 JMP M3D2: DEC BX; MOV DX,0FFHA4: MOV AL,BX OUT 61H,AL CALL DALAY0 DEC BX DEC DX JZ D3 LOOP A4 JMP M1D3: DEC CX MOV DX,0FFHA5: MOV AL,BX OUT 61H,AL CALL DALAY1 DEC BX DEC DX JZ D4 LOOP A5 JMP M2D4: JMP MAINM1:
20、MOV BX,OFFSET TABLE MOV AX,0007H ADD BX,AX MOV CX,08H JMP A4M2: MOV BX,OFFSET TABLE MOV AX,07H ADD BX,AX MOV CX,0008H JMP A5M3: MOV BX,OFFSET TABLE MOV CX,0008H JMP A3DALAY0: PUSH CX MOV CX,5000HA9: PUSH AX POP AX LOOP A9 POP CX RETDALAY1: PUSH CX MOV CX,0F000HA10: PUSH AX POP AX LOOP A10 POP CX RET
21、CODE ENDS END START第3章 结束语这是我第一次进行的课程设计.在此过程中我学到了很多课本上学不到的知识。通过这次课程设计.我了解了步进电动机的工作原理及接口电路原理.学会了用编程实现步进 电动机正反转及加速的方法。通过汇编实现让 8086 控制步进电动机正转、反转、变速.巩固了对步 进电动机的编程控制的理论基础.并从中获得了初步的应用经验。在编程的过程中.我巩固了用汇 编语言处理数据的能力.特别是对数表数据的灵活运用能力。在调试及试运行的过程中也遇到不少问题.最后都通过查阅课本及网络一一解决了。 这次我们的程序编写出来后在实验室先调试一下汇编程序是否会成功使电动机转动.以及转
22、动 的正确方向等.在调试及运行的过程中我的程序也遇到不少问题.比如说调试的时候我人为的输入 错误.这是我不仔细的原因.经过仔细检查才发现是程序输入错误了.后面又出现编写的程序不能够实现电动机的反转.只能够实现正转.然后我又重新检查程序的正确性.实在是不懂了就问徐老师,在老师的帮助下我修改了程序.最后终于调试成功.并能实现正确的正反转。在课程答辩过程中.我学到了很多知识.这些知识有效的解决了我对课程实际中许多困惑.使我对这门学科有了更深入的了解.也知道了学以致用的重要意义。在此次课程设计报告的书写中.我也学会了书写正规的课程设计报告的格式.书写正确的课程 设计报告需要注意哪些重要的地方.正确的课
23、程设计报告包括绪论.主体.心得体会.参考文献等. 这为以后的毕业论文打下了基础。 。 在通过一系列故障的分析与排除.在这个过程中.让我既提升了对实际步进电动机编程应用的 能力.又巩固了 8086 的接口扩展技术编程技术.正确书写课程设计报告等。这次使我的知识层面不 仅仅停留在书面的基础上.同时更进一步提高实践动手能力。觉得课程设计反映的是一个从理论到实际应用的过程.但是更远一点可以联系到以后毕业之后从学校转到踏上社会的一个过程。 经过这次设计.我懂得了学习的重要性.了解到理论知识与实践相结合的重要意义.学会了坚持、耐心和努力.这将为自己今后的学习和工作做出了最好的榜样。我觉得作为一名电气工程及
24、其自动化专业的学生.计算机控制技术的课程设计是很有意义的。更重要的是如何把自己平时所学的东西应用到实际中。虽然自己对于这门课程懂的并不多.很多基础的东西都还没有很好的掌握.觉得很难.也没有 很有效的办法通过自身去理解.在同学的帮助和讲解下.渐渐对这门课程逐渐产生了些许的兴趣.自 己开始主动学习并逐步从基础慢慢开始弄懂它。我认为这个收获应该说是相当大的。同时通过这门课程的学习我们对生活中的好多简单的电子产品的工作原理有了进一步的了解.微型计算机技术是学习微电子技术不可或缺的课程。 在此次课程设计中.通过对所学知识的综合运用来实现步进电机的控制原理.主要用到了汇编语言的寻址方式和指令系统.通汇编语
25、言来编写程序源代码来实现步进电机的加速。用到的硬件主要是可编程的并行通信接口 8255.通过 8255 的控制字及工作方式里实现输入输出.熟悉并掌握了所学知识.将所学的知识系统化并且学会了这些知识在实践中的应用。 通过此次设计我感触颇深.我们只有将所学的理论知识具体的应用在实践中.才可以更好的理解并掌握。参考文献1 版本正文.步进电机应用技术.科学出版社.2010.2 杨帮华.马世伟.王建.微机原理与接口技术.北京:清华大学出版社.2008.3 王自强步进电机应用技术.科学出版社,2001.4 肖洪兵.微机原理及接口技术.北京:北京大学出版社,2010.5 微机技术与应用实验指导书.XX大学.2011.附录步进电机四相八拍相序表如下表2-3步进电机四相八拍相序步 序相 序通电相对应PB口的输出值状态字PB3PB2PB1PB0 10001A01H20011AB03H30010B02H40110BC06H50100C04H61100CD0CH71000D08H810 01DA09H