1、四相单四拍步进电机控制系统设计计算机控制综合实验课程设 计 说 明 书学生姓名:学 号:学 院:信息与通信工程学院专 业:自动化题 目:四相单四拍步进电机控制系统设计 指导老师职称 2011 年12 月26 日课程设计任务书11/12学年第 一 学期学 院:信息与通信工程学院专 业:自动化学 生 姓 名:学 号:课程设计题目:四相单四拍步进电机控制系统设计 起 迄 日 期:2011年12 月26日2012年1 月6日课程设计地点:指 导 教 师:系主任:下达任务书日期: 2011 年 12 月 26日课 程 设 计 任 务 书1设计目的:设计一个计算机步进电机程序控制系统,可以对步进电机的转速
2、、转向以及位置进行控制。通过设计,掌握步进电机的工作原理、掌握步进电机控制系统的设计原理、设计步骤,进一步提高综合运用知识的能力。2设计内容和要求(包括原始数据、技术参数、条件、设计要求等):(1) 选择步进电机,设计接口电路和驱动电路,对步进电机进行控制。(2) 选择控制算法,编写控制程序,实现四相步进电机在单四拍工作方式下先正转90度,然后再反转60度,要求其速度可调,转向可控。(3) 写出设计说明书。3. 设计工作任务及工作量的要求(包括课程设计计算说明书、图纸、实物样品等):(1)查阅资料,确定设计方案(2)选择器件,设计硬件电路,并画出原理图和PCB图(3)画出流程图,编写控制程序(
3、4)撰写课程设计说明书课 程 设 计任 务 书4主要参考文献:1 张艳兵,王忠庆。计算机控制技术。国防工业出版社2 顾德英,张健,马淑华.计算机控制技术【M】. 北京:北京邮电大学出版社,2006.3 华张家生. 电机原理与拖动基础【M】. 北京:北京邮电大学出版社,2006.成英, 4张家生. 电机原理与拖动基础【M】. 北京:北京邮电大学出版社,2006.5.设计成果形式及要求:课程设计说明书1份原理图和PCB图各1份程序清单1份6工作计划及进度:起 迄 日 期工 作 内 容11年12月26日 12月27 日 12月 28日 12月31日12年1月2日 1月3 日1 月 3日 1月4 日1
4、 月 5日 1月6 日查阅资料,确定设计方案设计硬件电路画出流程图,编写控制程序撰写课程设计说明书课程设计答辩系主任审查意见: 签字: 年 月 日 系统概述步进电动机是一种将电脉冲信号转换相应的角位移的特种电动机。是工业过程控制及仪表中的主要控制元件之一。步进电动机具有快速起动能力,而且精度高,在数字控制系统中可以直接接受来自计算机的数字信号,不需要进行数/模转换,所以步进电动机在定位场合得到了广泛应用。本次课程设计通过键盘控制四相电动机的起动,单四拍、双四拍、四相八拍三种工作方式及正反转的选择。并通过七段数码管显示剩余工作步数。从而达到手动控制与直观显示的结合。本系统应用芯片8255,LED
5、显示单元,键盘模拟控制键,四相步进电动机及其驱动电路,接线较为简单。软件编程采用的是汇编语言,程序中包括主程序,显示子程序,延时子程序。系统硬件设计1.1 系统硬件原理图系统总线图1 系统硬件原理图1.2 各硬件单元功能说明及I/O口、功能键分配(1) 8255芯片:8255作为整个系统的主控单元,与系统总线连接,接受外部控制信息,并通过设定的I/O口将控制信息输出到数码管显示单元,LED显示单元及驱动电路。系统设置8255工作方式0,A、B、C口均为输出,PA0PA7与数码管相连显示剩余工作步数,PB0PB3连接电动机的A、B、C、D四相控制电动机的运转,PC0,PC1分别与LED0、LED
6、1连接,PB4PB7及PC3PC7不用。(2) 键盘模拟功能键:“0” 键控制起动,“1”键控制选择单四拍正转工作方式,“2”健控制选择单四拍反转工作方式,“3”键控制选择双四拍正转工作方式,“4”键控制选择双四拍反转工作方式,“5”键控制四相八拍正转工作方式,“6”键控制选择四相八拍反转工作方式,“7”键控制选择停止退出程序。(3) 驱动电路:驱动步进电机。I/O及功能键分配表如表1所示表1 I/O及功能键分配表I/O口及功能键PA0PA7PB0PB3PC0PC10键1键2键分配数码管控制接口步进电机驱动接口反转指示正转指示起动单四拍正转单四拍反转I/O口及功能键3键4键5键6键7键-分配双
7、四拍正转双四拍反转四相八拍正转四相八拍反转退出-1.3 硬件连接图系统软件设计1.4 工作方式下的控制模型单四拍正转、单四拍反转、双四拍正转、双四拍反转、四相八拍正转及四相八拍反转六种工作方式下的控制模型分别如表2、3、4、5、6、7所示。表2 单四拍正转控制数字模型步序D相C相B相A相字模PB3PB2PB1PB01000101H2001002H3010004H4100008H表3 单四拍反转控制数字模型步序D相C相B相A相字模PB3PB2PB1PB01100008H2010004H3001002H4000101H表4 双四拍正转控制模型步序D相C相B相A相字模PB3PB2PB1PB01001
8、103H2011006H311000CH4100109H表5 双四拍反转控制模型步序D相C相B相A相字模PB3PB2PB1PB01100109H211000CH3011006H4001103H1.5 流程图图 3 程序流程图结束语计算机控制技术的课程设计是一个综合运用知识的过程,它不仅需要计算机控制理论、程序设计方面的基础知识,而且还需要具备一定的生产工艺知识。设计包括确定控制任务、系统总体方案设计、硬件系统设计、控制软件的设计等,以便使学生掌握计算机控制系统设计的总体思路和方法。此次课程设计选作的是步进电机控制系统设计,设计要求1. 通电方式选择键三个,分别为单四拍、双四拍和四相八拍;2.
9、启动键和方向控制键;3. 正反转指示灯;4. 剩余工作步数LED显示。此次课程设计经过前期查找资料,设计硬件电路,自编初步程序,设计期间在实验室调试程序,最终实现了以上基本功能,并且还实现了在不同工作方式之间的切换,屏幕显示剩余拍数两项功能,对步进电机的控制有了初步了解,同时也对芯片8255,数码管显示部分加强了运用。通过此次设计,将所学的专业理论知识与实际开发实际结合起来,理论联系实际,提高了专业技能。在设计过程中得到了同学的帮助,老师的指导,在此一并感谢!;源程序如下:;*根据CHECK配置信息修改下列符号值*IOY0 EQU 9800H ;片选IOY0对应的端口始地址;*MY8255_A
10、 EQU IOY0+00H*4 ;8255的A口地址MY8255_B EQU IOY0+01H*4 ;8255的B口地址MY8255_C EQU IOY0+02H*4 ;8255的C口地址MY8255_MODE EQU IOY0+03H*4 ;8255的控制寄存器地址STACK1 SEGMENT STACK DW 256 DUP(?)STACK1 ENDSDATA SEGMENT K EQU 09H ;工作步数TABSHZ DB 03H,06H,0CH,09H ;双四拍正转模型TABSHF DB 09H,0CH,06H,03H ;双四拍反转模型TABLE1 DB 3FH,06H,5BH,4FH
11、,66H,6DH,7DH,07H,7FH,6FH ;七段数码管字模DATA ENDSCODE SEGMENT ASSUME CS:CODE,DS:DATA,SS:STACK1 START:MOV AX,DATA MOV DS,AX MOV AL,80H ;初始化8255,工作方式0,A,、B、C口均为输出 MOV DX,MY8255_MODE OUT DX,ALWAIT1:MOV AH,08H ;等待启动键“0”按下 INT 21H CMP AL,30H JE MAIN JMP WAIT1 MAIN: MOV AH,08H ;判断工作方式控制键是否按下 INT 21H ;若键按下转到相应的程序
12、,否则循环等待. CMP AL,33HJE SHUANGSI ;转双四拍正转CMP AL,34H JE SHUANGSI1;转双四拍反转CMP AL,35HJE QUIT1JMP MAIN;单四拍正转ZHENGSI: MOV AL,02H ;点亮正转指示灯 MOV DX,MY8255_C OUT DX,ALMOV CL,KZHENGSI0:LEA BX,TABLE1 ;数码管显示剩余步数MOV AL,CLXLAT MOV DX,MY8255_AOUT DX,ALZHENGSI1: MOV BL,04H ;驱动电机MOV DX,MY8255_BLEA DI,TABSZZHENGSI2: MOV
13、AH,0BH ;判断是否有按键切换工作方式INT 21H ;有按键跳回判断按键对应程序,否则继续执行程序INC ALJZ MAIN CALL XIAN ;调用显示子程序,显示工作剩余拍数MOV AL,DI OUT DX,ALCALL DLY ;调用延时子程序INC DIDEC BL ;判断是否工作完所有拍数,有则退出等待重选工作方式,否则继续循环JNZ ZHENGSI2DEC CLJNZ ZHENGSI0JMP WAIT1;中间跳转SHUANGSI:JMP SHSIZHSHUANGSI1:JMP SHSIF ;双四拍正转SHSIZH: MOV AL,02H MOV DX,MY8255_C OU
14、T DX,ALMOV CL,KSHSIZH0:LEA BX,TABLE1MOV AL,CLXLAT MOV DX,MY8255_AOUT DX,ALSHSIZH1: MOV BL,08HMOV DX,MY8255_BLEA DI,TABSHZSHSIZH2: MOV AH,0BHINT 21HINC ALJZ MAIN1 CALL XIANMOV AL,DI OUT DX,ALCALL DLYINC DIDEC BLJNZ SHSIZH2DEC CLJNZ SIBAZH0JMP WAIT1 ;中间跳转程序WAIT00:JMP WAIT1 ;双四拍反转SHSIF:MOV AL,01H MOV D
15、X,MY8255_C OUT DX,AL MOV CL,KSHSIF0:LEA BX,TABLE1MOV AL,CLXLAT MOV DX,MY8255_AOUT DX,ALSHSIF1:MOV BL,4MOV DX,MY8255_BLEA DI,TABSHFSHSIF2: MOV AH,0BHINT 21HINC ALJZ MAIN1CALL XIANMOV AL,DI OUT DX,ALCALL DLYINC DIDEC BLJNZ SHSIF2DEC CLJNZ SHSIF0JMP WAIT00 MAIN11:JMP MAIN1 ;四相八拍正转SIBAZH: MOV AL,02H MOV
16、 DX,MY8255_C OUT DX,ALMOV CL,KSIBAZH0:LEA BX,TABLE1MOV AL,CLXLAT MOV DX,MY8255_AOUT DX,ALSIBAZH1: MOV BL,08HMOV DX,MY8255_BLEA DI,TABBZSIBAZH2: MOV AH,0BHINT 21HINC ALJZ MAIN11CALL XIAN MOV AL,DI OUT DX,ALCALL DLYINC DIDEC BLJNZ SIBAZH2DEC CLJNZ SIBAZH0JMP WAIT00 QUIT:MOV DX,MY8255_A ;结束退出程序 MOV AL,00H OUT DX,AL MOV AX,4C00H INT 21H ;软件延时子程序DLY PROC NEAR PUSH CX PUSH AX MOV CX,0FFFFH D1:MOV AX,5FFFH D2:DEC AX JNZ D2 LOOP D1 POP AX POP CX RET DLY ENDPXIAN PROC NEAR ;剩余拍数显示子程序PUSH DXMOV DL,BLADD DL,30HMOV AH,02HINT 21HMOV DL,20HMOV AH,02HINT 21HPOP DXRETXIAN ENDPCODE ENDS END START
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1