




已阅读5页,还剩7页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
微机原理综合性实验报告题 目:步进电机控制实验 学 院: 班 级: 学 号: 姓 名: 指导教师: 日 期 :2008 年 5 月 2 6 日 步进电机控制系统设计一、实验设计的目的与要求通过步进电机控制系统实验设计,用 8255 扩展端口控制步进电机,编写程序输出脉冲序列到8255 的 PA 口,控制步进电机正传,反转,加速,减速。进一步掌握微机原理与接口的理论和实际方法。培养和锻炼开发控制系统的能力。为今后单片机的学习与应用开发打下良好的基础。要求了解步进电机控制的基本原理,掌握控制步进电机的转动的编程方法,进一步了解单片机控制外部设备的常用电路。二、步进电机原理1.步进电机的工作原理该步进电机为一四相步进电机,采用单极性直流电源供电。只要对步进电机的各相绕组按合适的时序通电,就能使步进电机步进转动。图 1 是该四相反应式步进电机工作原理示意图。图 1 四相步进电机步进示意图微机原理与接口综合实验实验设计 1开始时,开关 SB 接通电源,SA、SC、SD 断开,B 相磁极和转子 0、3 号齿对齐,同时,转子的1、4 号齿就和 C、D 相 绕组磁极产生错齿,2、5 号齿就和 D、A 相绕组磁极产生错齿。当开关 SC 接通电源,SB、SA、SD 断开时,由于 C 相绕组的磁力线和 1、4 号齿之间磁力线的作用,使转子转动,1、4 号齿和 C 相绕组的磁极对齐。而 0、3 号齿和 A、B 相绕组产生错齿,2、5 号齿就和 A、D 相绕组磁极产生错齿。依次类推,A、B、C、D 四相绕组轮流供电,则转子会沿着 A、B、C、D 方向转动。四相步进电机按照通电顺序的不同,可分为单四拍、双四拍、八拍三种工作方式。单四拍与双四拍的步距角相等,但单四拍的转动力矩小。八拍工作方式的步距角是单四拍与双四拍的一半,因此,八拍工作方式既可以保持较高的转动力矩又可以提高控制精度。 单四拍、双四拍与八拍工作方式的电源通电时序与波形分别如图 2.a、b、c 所示:a. 单四拍 b. 双四拍 c 八拍2.步进电机的驱动原理步进电动机是一种数字元件,易于数字电路接口,但一般数字电路的信号的能量远远不足以驱动步进电动机。因此,必须有一个与之匹配的驱动电路来驱动步进电动机。对步进电动机驱动一般有如下要求:(1) 能够提供较快的电流上升和下降速度,使电流波形尽量接近矩形。(2) 具有供截止期间释放电流流通的回路,以降低绕组两端的反电动势,加快电流衰减。(3) 具有较高的功率及效率。步进电动机的驱动方式很多,如单极性驱动、双极性驱动、高低压驱动、斩波驱动、细分驱动、集成电路驱动等。三、步进电机的控制1. ULN2003由于集成电路集驱动和保护于一体,作为小功率步进电动机的专用驱动芯片, ULN2003 是高耐压、大电流达林顿陈列,由七个硅NPN 达林顿管组成。 该电路的特点如下: ULN2003 的每一对达林顿都串联一个2.7K 的基极电阻, I44I55I66GNDGNDI33Q1 AQ3 BQ5 12Q7 10I11I22I77VCC 9Q4 DQ2 CQ6 11ULN2003. .图 2.步进电机工作时序波形图微机原理与接口综合实验实验设计 2在5V 的工作电压下它能与TTL CMOS 电路 直接相连,可以直接处理原先需要标准逻辑缓冲器来处理的数据。 ULN2003 工作电压高,工作电流大,灌电流可达500mA ,并且能够在关态时承受50V 的电压,输出还 可以在高负载电流并行运行。ULN2003A 在各种控制电路中常用它作为驱动继电器的芯片,其芯片内部做了一个消线圈反电动势的二极管。ULN2003 的输出端允许通过 IC 电流 200mA,饱和压降 VCE 约 1V 左右,耐压 BVCEO 约为 36V。输出电流大,故可以用来直接驱动步进电机。项目 符 号 数值 单位最大输入 电 压 Vi(max) 30 V集电极 -发射极电压 Vo(max) 50 V最大基极输 入 电流 IB(MAX) 25 mA输出电流 Io 500 mA贮存温度 Ts -65 150 结温 Tj 175 引线耐焊接 温 度 TD 300 2、脉冲的形成实现对步进电机的控制,微机应能输出有一定周期的控制脉冲。步骤是:先输出一个高电平,延时一段时间后,再输入一个低电平,然后再延时。改变延时时间的长微机原理与接口综合实验实验设计 3短,即可改变脉冲的周期,脉冲的周期由步进电机的工作频率确定。用软件形成环形脉冲的程序流程图 3、正反转控制步进电机的旋转方向和内部绕组的通电顺序及通电方式有密切关系。通过改变各相脉冲的先后顺序,就可以改变电机的旋转方向.4、转速控制控制步进电机的运行速度,实际上是控制系统发出时钟脉冲的频率或换相的周期,即在升速过程中,使脉冲的输出频率逐渐增加;在减速过程中,使脉冲的输出频率逐渐减少。脉冲信号的频率可以用软件延时和硬件中断两种方法来确定。采用软件延时,一般是根据所需的时间常数来设计一个子程序,该程序包含一定的指令,设计者要对这些指令的执行时间进行严密的计算或者精确的测试,以便确定延时时间是否符合要求。每当延时子程序结束后,可以执行下面的操作,也可用输出指令输出一个信号作为定时输出。采用软件定时, CPU 一直被占用,因此 CPU 利用率低。可编程的硬件定时器直接对系统时钟脉冲或某一固定频率的时钟脉冲进行计数,计数值则由编程决定。当计数到预定的脉冲数时, 产生中断信号, 得到所需的延时时间或定时间隔。由于计数的初始值由编程决定,因而在不改动硬件的情况下 ,只通过程序变化即可满足不同的定时和计数要求 ,因此使用很方便。微机原理与接口综合实验实验设计 4五、硬件连接图微机原理与接口综合实验实验设计 6六、 程序设计1、程序流程图 开始8255 初始化设初始延时值输出一拍脉冲(A)延时输出下一个脉冲(B)延时输出下个脉冲(C)输出下一个脉冲(D)延时延时值减小是否提速是否最快否是微机原理与接口综合实验实验设计 72、程序代码:;*;本程序能实现步进电机的正反转与加速,具体过程如下: ;正转加速一段时间,然后停止 5 秒,然后反向加速一段时间,然后再正转,如此循环往复.;能实现正-停- 反 ,也能实现正 -反-停.;*MODE EQU 080H ;8255 方式控制字CTL EQU 8000H ;8255 端口 A 地址CONTRL EQU 8003H ;8255 控制寄存器地址A EQU 01HB EQU 02HC EQU 04HD EQU 08HQS EQU 300 ;步进电机转过的圈数DATA SEGMENTDLY_C DW 0 ;DLY_C 用以控制延时的长短以实现步进电机的加速SOURCE DB A,A+B,B,B+C,C,C+D,D,D+A ;步序表,使电机的工作方式为单/双 8 拍DATA ENDSCODE SEGMENTASSUME CS:CODE,DS:DATASTART:MOV AX,DATA ;初始化数据段MOV DS,AX;* ;初始化 8255,使 8255 的 A 口输出.;*MOV DX,CONTRL ;8255 的控制寄存器地址送 DXMOV AL,MODE ;8255 的 A 口输出,故初始化控制字为 80HOUT DX,AL ;将控制字从 8255 输出以配置 8255 的工作方式MOV DX,CTL ;将 A 口地址送 DXMOV AL,0 ;将 0 送 ALOUT DX,AL ;8255 的端口写 0 以实现初始化MOV DLY_C,300H ;延时初始值MOV CX,QS ;将步进电机的圈数 300 送 CX微机原理与接口综合实验实验设计 8;*;以下程序段实现的功能是让电机正向加速,速度达到最大值后匀速转动.;*ZZ:MOV BX,0 ;将 0 送 BX,让电机的初始步为 ANEXT1:MOV DX,CTL ;将 8255 的 A 口地址送 DXMOV AL,SOURCEBX ;将电机的步序送 ALOUT DX,AL ;将步序表中的第一个步序通过 A 口输出CALL DELAY ;调用延时子程序,用来控制电机转速INC BX ;BX 加 1,为取下一个步序做准备CMP BX,7JBE NEXT1 ;判断电机是否已经走完 8 拍PUSH CX ;保存 CX 的值,因为下面还要用到 CXMOV CX,DLY_C ;将 DLY_C 的值送 CXDEC CX ;CX(即 DLY_C)减 1 以实现加速CMP CX,100H ;CX 与 100H 比较,判断电机转速是否已经达到最大值JNE NN1 ;若电机转速尚未达到最大值 ,则转向 NN1INC CX ;若电机转速已经达到最大值,则 CX 加 1 以实现电机匀速转动NN1:MOV DLY_C,CX ;将 CX 的值送 DLY_C 以实现在一个循环POP CX ;恢复 CXLOOP ZZ ;CX 减 1,让电机转下一圈;*;以下代码段调用 5 次延时子程序以实现延时 5 秒.正式调试时时间稍大于 5 秒,;可见用软件延时不能实现精确延时.;*TZ:MOV DX,CTL ;将 8255 的 A 口地址送 DXMOV AL,0 ;将 0 送 ALOUT DX,AL ;将 0 从 A 口输出,使电机静止不转CALL DELAY1S ;调用 5 次延时 1 秒子程序,总共延时 5 秒CALL DELAY1SCALL DELAY1SCALL DELAY1SCALL DELAY1S;*;反转加速一段时间,过程与正向加速类似,速度达到最大值后匀速转动.;*MOV DLY_C,300H ;延时初始值MOV CX,QS ;将步进电机的圈数送 CX,使电机反转 300 圈FZ:MOV BX,7 ;将 7 送 BX 使电机反转的初始相序为 D+ANEXT2: MOV DX,CTL ;将 8255 的 A 口地址送 DXMOV AL,SOURCEBX ;将电机的步序送 ALOUT DX,AL ;将步序表中的第八个步序通过 A 口输出,以控制电机反转微机原理与接口综合实验实验设计 9CALL DELAY ;调用延时子程序,用来控制电机转速DEC BX ;BX 减 1,为取下一个步序做准备CMP BX,0JGE NEXT2 ;判断电机是否已经反向走完 8 拍PUSH CX ;保存 CX 的值,因为下面还要用到 CXMOV CX,DLY_C ;将 DLY_C 的值送 CXDEC CX ;CX(即 DLY_C)减 1 以实现加速CMP CX,100H ;CX 与 100H 比较,判断电机转速是否已经达到最大值JNE NN2 ;若电机转速尚未达到最大值 ,则转向 NN1INC CX ;若电机转速已经达到最大值,则 CX 加 1 以实现电机匀速转动NN2: MOV DLY_C,CX ;将 CX 的值送 DLY_C 以实现在一个循环POP CX ;恢复 CXLOOP FZ ;CX 减 1,让电机转下一圈JMP START ;无条件转到 START 处以实现下一个循环;*;该延时子程序用于控制电机转速若 DLY_C 减少,则延时时间将减少,则电机转速增加,;反之亦然.;*DELAY PROC NEARPUSH CX ;保存 CX,因为下面还要用到 CXMOV CX,DLY_C ;将 DLY_C 的值送 CX 以控制延时的长短DD1:NOP ;空操作,用于延时,可以用 NOP 指令的数目控制延时的长短NOPNOPNOPNOPNOPNOPLOOP DD1 ;CX 减 1,若不为 0 则转向 DD1,否则跳出循环POP CX ;恢复 CXRET ;子程序返回DELAY ENDP;*;8086 延时 1S 子程序,用执行 PUSHF 和 POPF 指令来延时;之所以选择这两条指令,主要是由于这两条指令执行时间比较长;*DELAY1S PROC NEARPUSHF ;把标志寄存器的内容保存到堆栈中去PUSH BX ;保存 BXPUSH CX ;保存 CX微机原理与接口综合实验实验设计 10MOV BX,3E8H ;将 3E8H 送 BX,用于控制外循环次数LP2: MOV CX,0BAH ;将 0BAH 送 CX,用于控制内循环次数LP1: PUSHF ;把标志寄存器的内容保存到堆栈中去POPF ;将保护的 FLAG 内容恢复,这两条指令主要是用于延时LOOP LP1 ;CX 减 1,不为 0 则转至 LP1 处执行DEC BX ;BX 减 1JNZ LP2 ;不为 0 则转至 LP2 处执行POP CX ;恢复 CXPOP BX ;恢复 BXPOPF ;将保护的 FLAG 内容恢复RET ;子程序返回DELAY1S ENDPCODE ENDSEND START3、 实验的实现1、连接计算机与实验箱,按电路图将实验箱内部各个芯片和接口连接。2、然后打开计算机,执行 WAVE 集成调试软件,设置 8086 硬件仿真器。3、新建文件,编写程序,并以.ASM 扩展名保存。4、对程序进行汇编,汇编无误后,单击全速执行,然后查看运行结果。5、若步进电机运行不正常,则需检查程序的功能是否有误,直至达到期望结果为止。七、实验设计总结这是一个综合性实验,也是我做得比较成功的一个微机接口实验之一。通过做该实验,使我受益匪浅,特别是对用 8086 CPU 去控制步进电机有了进一步的认识,对步进电机的原理也有了比较深的了解。主要表现在以下几个方面:1、对控制步进电机(比如正转 ,反转,停止,加速,减速) 有了初步的认识。步进电机并不像普通的直流电机,交流电机那样在常规下使用, 步进电机的转速、停止的位置只取决于脉冲信号的频率和脉冲数,而不受负载变化的影响。因此,用 8086 控制步进电机不能像控制其它电机一样。以前在杂志上看到,电脑的软驱就是用步进电机带动软盘转动的,我也亲手拆下过里面的步进电机,但是对步进电机的工作原理,以及计算机是怎么控制步进电机的并不了解。通过做这个综合性实验,我对这些有了一个初步的认识。2、实验大部分的源代码都是我自己写的,花了大概一个晚上的时间。在做实验之前多已经把源代码输入计算机并在 WAVE 上通过软件仿真的形式调试通过。这样,在正式做实验时我拥有了充足的时间去调试和改进,并在实
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 河北省任丘市2025年上半年公开招聘村务工作者试题含答案分析
- 河北省清苑县2025年上半年公开招聘村务工作者试题含答案分析
- 2025版企业员工薪酬福利管理合同
- 2025年度房地产项目代办手续专项服务与支持合同
- 2025年度豪华车队雇用与品牌推广服务合同范本
- 2025版配电箱进出口贸易合同范本解析
- 2025年度砂石资源开采与运输安全合作协议
- 2025年度土方资源开发与保护合作合同范本
- 2025标准商铺租赁合同附带商业数据分析与市场调研服务
- 2025版劳动法培训与劳动法规解读合同
- 抗菌药物合理使用培训测试题(答案)
- 青藏铁路公司普速铁路维修管理办法
- 初等数论简介课件
- 《卷烟原料配方设计》配套教学课件
- 消防技术装备培训课件
- 《新能源汽车驱动电机系统检测与维修习题册》 习题参考答案(劳动)
- 粉末压制成形原理课件
- 介入诊疗质量安全计划与指标
- 99S203 消防水泵接合器安装图集
- 苗圃规章制度范本
- 响水县粮食购销总公司大有粮库粮食烘干设备招标采购
评论
0/150
提交评论