微机原理课程设计_步电机
微机原理课程设计 步进电机的正反转及调速控制分解
课程设计报告题目步进电机正反转及调速控制系统的设计课程名称微机原理及应用院部名称机电工程学院专业电气工程及其自动化班级10电气1班学生姓名管志成学号1004103027课程设计地点C304课程设计学时20指导教师李国利金陵科技学院教务处制步进电机是将电脉冲信号转变为角位移或线位移的开环控制元件,具有快速启动能力,定位精度高,能够直接接受数字量,因此被广泛地应用于数字控制系统中,如数模转换装置、精确定位、计算机外围设备等,在现代控制领域起着非常重要的作用。
本设计基于Proteus 7.8设计环境,运用了8086 CPU芯片以及74273芯片、74244芯片和步进电机以及7位小功率驱动芯片ULN2003A、按钮、指示灯等辅助硬件电路,设计了步进电机正反转及调速系统。
绘制软件流程图,进行了软件设计并编写了源程序,最后对软硬件系统进行联合调试。
该步进电机的正反转及调速系统具有控制步进电机正反转的功能,还可以对步进电机进行调速,不同的按钮对应不同的速度,并且在没有速度按钮按下的时候,步进电机自动切换到停止状态。
关键词:步进电机;正反转;调速控制;ULN2003A芯片;8086微机系统一、概述1.1 课程设计的目的 (4)1.2课程设计的要求 (4)二、总体设计方案及说明2.1 系统总体设计方案 (5)2.2系统工作框图 (5)三、系统硬件电路设计3.1 Intel 8086 微处理器的简介 (6)3.2 步进电机的原理 (7)3.3 ULN2003A的简介 (8)3.4 74154芯片简介 (9)3.5 74LS273芯片简介 (10)3.6 8086最小系统的设计 (11)3.7 步进电机及其驱动电路的设计 (12)3.8 电机状态显示电路的设计 (12)3.9 输入采样电路的设计 (13)3.10系统总电路图 (14)四、系统软件部分设计4.1 系统流程图 (15)4.2 系统软件源程序 (16)4.2.1电机绕组通电顺序设定 (16)4.2.2 延时子程序设计 (16)4.2.3 汇编源程序及说明 (16)五、总结5.1 系统软硬件的联合调试 (21)5.2 问题分析和解决方案 (23)5.3 心得与体会 (23)六、参考文献 (23)附录:总电路图 (25)一、概述1.1 课程设计的目的通过本课程设计,使学生掌握控制系统设计的一般步骤,掌握系统总体控制方案的设计方法。
微机课程设计——电机的控制 课程设计
微机课程设计——电机的控制一、项目设计内容与要求1.设计内容利用电机平台上的步进电机和直流电机,实现步进电机的转角控制和直流电机速度的控制。
2.设计要求(1)步进电机的转角控制可以通过调整电机的转过的步数来实现。
一次转过的步数和方向可用按键设定。
还可以用按键控制步进电机一步一步的转动,要分正反转。
转过的步数要显示在发光二极管上。
(2)直流电机的转速是根据用数模转换电路的输入数据变化,要求用发光二极管显示转速数据值。
(3)可以用按键或开关输入相应的转速控制数据。
二、电路连接图三、各模块的设计1.键盘模块本程序的键盘功能的设计采用扫描法实现,各个键的键值由扫描法得到。
各个键的键值如下表所示:程序流程图:2.直流电机的转速控制模块设计思路:直流电机的转速是根据用数模转换电路的输入数据变化,可以把键盘按下的数字键的键值送入数模转换电路(DAC0832的208H),按下不同的按键就实现转速的控制。
要求用发光二极管显示转速数据值,可以直接把按键的键值送B口显示,本程序把旧键值左移四位送CH,新键值BH加上CH存BH并送发光二极管显示,再送数字进208口处理.此模块实现的功能也即数字键要处理的功能,作为键盘模块的子程序使用。
程序流程图:3. 步进电机控制模块设计思路:本设计采用的是四相步进电机,步进电机用直流+12V电压,每项电流为0.20A,电机线圈由A、B、C、D四相组成。
驱动方式为四相单四拍方式,按A→B→C→D→A次序通电为正转;按A→D→C →B→A次序通电为反转。
正向单步转可用一个寄存器来标志给哪相通电,如CL=0,A通电;CL=1,B通电;CL=2,C通电;CL=3,D通电。
反转单步走则类似。
这个模块作为键盘主程序的子程序使用,使用键盘的第三行为功能键,操作步进电机的正反转,数字键送入NUM的值则控制电机的步数。
功能键说明:“+”控制步进电机正向转NUM步“-“控制步进电机反向转NUM步“,”控制步进电机正向单步走“.”控制步进电机反向单步走正向走NUM步的程序流程图:(反向走NUM步的省略)正向单步走程序流程图:(反向单步的省略)四、源程序代码:CODE SEGMENTASSUME CS:CODE,DS:CODESTART: MOV CH,00h ;键值左移4位存CH用,先初始化MOV CL,00h ;控制步进电机单步走用作标志MOV DX,203H ;置8255A控制口地址MOV AL,90H ;A口输入,C口输出OUT DX,ALLOOP1: MOV DX,202H ;8255A的C口MOV AH,00000110BMOV AL,00000110B ;键盘第一行OUT DX,ALMOV DX,200h ;8255A的A口IN AL,DX ;获取列码CMP AL,0FFHJNE LOOP2 ;有键按下MOV DX,202H ;列码全1无键按下扫描第二行MOV AH,00000101BMOV AL,00000101BOUT DX,ALMOV DX,200hIN AL,DXCMP AL,0FFHJNE LOOP2MOV DX,202H ;第三行MOV AH,00000011BMOV AL,00000011BOUT DX,ALMOV DX,200hIN AL,DXCMP AL,0FFHJNE LOOP2JMP LOOP1LOOP2: CALL Delay ;消除抖动IN AL,DXCMP AL,0FFHJE LOOP1MOV BL,0FEH ;确定有键按下则求列值MOV BH,0 ;BH存键值LOOP3: CMP AL,BL ;扫描列值JE ONECMP BH,7 ;所有列码都扫描完JE LOOP1 ;重新检测按键INC BHROL BL,1 ;列码循环左移一位JMP LOOP3ONE:CMP AH,00000110B ;第一行按键JE ONE2CMP AH,00000101B ;第二行按键JE TWO2CMP AH,00000011B ;第三行功能键JE THREE2CALL JUMPJMP wait1ONE2:CALL First ;调用第一行处理程序JMP wait1TWO2: CALL Second ;调用第二行处理程序JMP wait1THREE2:CALL Third ;调用第三行处理程序wait1: MOV DX,200hwait2: IN AL,DXCMP AL,0FFhJNE wait2 ;等待按键JMP LOOP1ORG 200HNUM DB ? ;存步进电机步数First PROC NEARMOV DX,203H ; 开控制口MOV AL,90h ;A口输入,C口输出OUT DX,ALCMP CH,0 ;第一次执行按键JZ CH0 ;ADD BH,CH ;显示八位,CH0: MOV DX,201H ;B口MOV AL,BH ;键值送ALOUT DX,AL ;在二极管上显示BH即输入的键值MOV DX,208H ;打开D/AOUT DX,AL ;控制直流电机转速MOV NUM,AL ;步进电机转的步数MOV CL,4SAL BH,CL; BH值左移四位MOV CH,BH ;BH值送CHMOV CL,0 ;CL清零,不影响步进电机单步走RETFirst ENDPSecond PROC NEARADD BH,8h ;扫描第二行MOV DX,203HMOV AL,90hOUT DX,ALCMP CH,0 ;JZ CH1ADD BH,CHCH1: MOV DX,201H ;8255A的B口输出MOV AL,BHOUT DX,AL ;输出键盘的值MOV DX,208HOUT DX,ALMOV NUM,AL ;步进电机步数MOV CL,4SAL BH,CL ;左移4位MOV CH,BHMOV CL,0RETSecond ENDPThird PROC NEARADD BH,10H ;扫描第三行MOV DX,203H ;设置方式控制字MOV AL,90HOUT DX,ALMOV DX,201H ;二极管显示为全0;B口MOV AL,00h ;OUT DX,ALCMP BH,13H ;比较键值13H为”+”JZ DONE2;正转CMP BH,12H ;12H为”-”JZ DONE3;反转CMP BH,11H ;11H为”,”JZ DONE4;正向一步一步转CMP BH,10H ;10H 为”.”JZ DONE5 ;反向一步一步转RETThird ENDPDONE2: CALL PROGRAM1DONE3:CALL PROGRAM2DONE4:CALL PROGRAM3DONE5:CALL PROGRAM4Delay PROC NEAR ; 键盘延时子程序PUSH CXMOV CX,1800HNEXT: DEC CXJNE NEXTPOP CXRETDelay ENDPDelay2 PROC NEAR ;电机延时子程序PUSH CXMOV CX,5000HNEXT2: DEC CXJNE NEXT2POP CXRETDelay2 ENDPJUMP PROC NEARRETJUMP ENDPPROGRAM1 PROC NEAR ;正向连续转PUSH CXMOV DX,203HMOV AL,90HOUT DX,ALMOV DX,202H; C口MOV CL,NUM ;电机步数ZHENG: MOV AL,10H ;正向OUT DX,AL ;给A相通电CALL Delay2DEC CL ;计算已进步数JZ DONE1 ;步数已完成,返回MOV AL,20H ;输出第二拍模型OUT DX,AL ;给B相通电CALL Delay2 ;延迟;DEC CLJZ DONE1MOV AL,40H ;输出第三拍模型OUT DX,AL ;给C相通电CALL Delay2DEC CLJZ DONE1MOV AL,80H ;输出第四拍OUT DX,AL ;给D相通电CALL Delay2DEC CLJZ DONE1MOV AL,10H ;回到原点OUT DX,ALCALL Delay2DEC CLJNZ ZHENG ;ABCDA循环通电JMP LOOP1POP CXRETPROGRAM1 ENDPDONE1:JMP LOOP1PROGRAM2 PROC NEAR ;反向连续转PUSH CXMOV DX,203HMOV AL,90HOUT DX,ALMOV DX,202H ;C口MOV CL,NUM ;设置转的步数FAN: MOV AL,10H ;反向转动OUT DX,AL ;给A通电CALL Delay2DEC CLJZ DONE1MOV AL,80H ;给D通电OUT DX,ALCALL Delay2DEC CLJZ DONE1MOV AL,40H ;给C通电OUT DX,ALCALL Delay2DEC CLJZ DONE1MOV AL,20H ;给B通电OUT DX,ALCALL Delay2DEC CLJZ DONE1MOV AL,10H ;给A通电OUT DX,ALCALL Delay2DEC CLJNZ FAN ;ADCBA通电JMP LOOP1POP CXRETPROGRAM2 ENDPPROGRAM3 PROC NEAR ;正向单步走MOV DX,203HMOV AL,90HOUT DX,ALMOV DX,202H ;C口CMP CL,00H ;第一次按,给A通电转一步JZ AA1;CMP CL,01H ;CL=1,B通电JZ BB1CMP CL,02H ;CL=2,C通电JZ CC1CMP CL,03H ;CL=3,D通电JZ DD1JMP LOOP1 ;检测键盘AA1: MOV AL,10HOUT DX,ALCALL Delay2INC CL ;自动加一,CL为01HJNZ DONEBB1: MOV AL,20HOUT DX,ALCALL Delay2INC CLJNZ DONECC1: MOV AL,40HOUT DX,ALCALL Delay2INC CLJNZ DONEDD1: MOV AL,80HOUT DX,ALCALL Delay2MOV CL,00H;JZ DONEJMP LOOP1 PROGRAM3 ENDPPROGRAM4 PROC NEAR ;反向单步走MOV DX,203HMOV AL,90HOUT DX,ALMOV DX,202H;MOV CL,0CMP CL,00H ;CL=0,A通电JZ AA2CMP CL,01H ;CL=1,D通电JZ DD2CMP CL,02H ;CL=2,C 通电JZ CC2CMP CL,03H ;CL=3,B 通电JZ BB2JMP LOOP1 ;检测键盘AA2: MOV AL,10HOUT DX,ALCALL Delay2INC CLJNZ DONEDD2: MOV AL,80HOUT DX,ALCALL Delay2INC CLJNZ DONECC2: MOV AL,40HOUT DX,ALCALL Delay2INC CLJNZ DONEBB2: MOV AL,20HOUT DX,ALCALL Delay2MOV CL,00H ;CL重新置0;JZ DONEJMP LOOP1PROGRAM4 ENDPDONE: JMP LOOP1 ;扫描键盘CODE ENDSEND START五、设计的问题及难点刚开始在实现键盘扫描功能时遇到比较多的问题,如怎么根据行码和列码来判断到底是哪个键被按下,以及键值该如何处理,数字键和功能键又怎么区分等等,在询问同学和老师的过程中了解到了实现的一些方法。
步进电机__微机课程设计_广工
课程设计课程名称计算机控制系统题目名称步进电机角度控制(2)学生学院自动化学院专业班级自动化10(4)班学号学生姓名指导教师2013 年6 月28 日一、系统设计说明1. 硬件设计本次设计要求通过键盘按键实现对步进电机的转动次数和每次转动的角度的控制,并通过数码管显示出来。
本方案中通过按键对步进电机的转动角度进行设定,给各个按键设置不同的键值。
按下按键时,给8255A一个信号设定步进电机下一步的动作。
2. 软件设计显示模块设计说明:为使显示程序具有通用性和灵活性,在8086内设置一个显示缓冲区,显示缓冲区的每个单元与LED的各位一一对应。
当主程序需要显示,只需将要显示的字符送入显示缓冲区,然后调用显示子程序。
显示子程序的任务则是逐一取出显示缓冲区中的字符、查字形表转换成相应字型码,然后通过字段口输出显示。
显示模块是用四位七段数码管来显示转动次数和每次转动的角度。
给八个按键设置不同的子程序,当按下按键时,根据事先设定好的各个按键对应的转动角度的值输出到数码管进行显示。
步进电机模块设计说明:在此设计中,采用的是八拍步进电机。
步进电机控制程序就是完成环形分配器的任务,从而控制电动机的转动,以达到控制转动角度和位移的目的。
控制模型可以以立即数的形式一一给出。
对于步进电机模块的程序设计采用循环程序设计方法。
先把转动的次数和角度的控制模型存放在内存单元中,然后再逐一从单元中取出控制模块并输出。
首先启动,按下按键选择步进电机的角度,然后读入转动的控制模型驱动步进电机转动。
二、实验要求及解决题目一:连接键盘和显示电路,编程实现如下键盘,并能左移显示。
(程序代码见附件一)题目二:依题完成任务1.定义键盘按键:5个数字键;3个功能键:设置SET、清零CLR、开始START;2.显示器上第一位显示次数,后三位显示每次行走的角度;3.通过键盘的按键,设置步进电机各次的角度值;按动SET键后,开始设置:第一位设置次数,后三位设置角度值,再按动SET置入,可连续置入不同的角度;4.按START键启动步进电机开始转动,到位后停止;按CLR键清零步进电机回原位。
微机原理步进电机课程设计
微机原理步进电机课程设计一、课程目标知识目标:1. 让学生掌握微机原理在步进电机控制中的应用,理解步进电机的结构、原理及其特点。
2. 使学生了解步进电机与微控制器之间的接口技术,掌握步进电机的驱动程序编写方法。
3. 让学生掌握步进电机速度和位置控制的基本算法,并运用到实际项目中。
技能目标:1. 培养学生运用微机原理解决实际问题的能力,学会编写和调试步进电机控制程序。
2. 培养学生的动手实践能力,能独立完成步进电机的组装、调试和故障排查。
3. 培养学生团队协作能力,通过分组合作完成课程设计任务。
情感态度价值观目标:1. 激发学生对微机原理和步进电机控制技术的兴趣,培养其探索精神和创新意识。
2. 培养学生严谨、认真的学习态度,养成良好的实验操作习惯。
3. 增强学生的环保意识,关注步进电机在节能环保领域的应用。
本课程针对高年级学生,课程性质为理论与实践相结合。
在分析课程性质、学生特点和教学要求的基础上,将课程目标分解为具体的学习成果。
教学过程中,注重培养学生的实际操作能力和团队协作精神,使学生在完成课程设计任务的过程中,达到知识、技能和情感态度价值观的全面提升。
二、教学内容根据课程目标,教学内容主要包括以下几部分:1. 微机原理基础:回顾微控制器的基本原理,重点讲解微控制器与步进电机的接口技术,涉及课本第3章相关内容。
2. 步进电机原理与结构:介绍步进电机的种类、结构、原理及特点,对应课本第5章内容。
3. 步进电机驱动技术:讲解步进电机的驱动电路设计,包括驱动芯片的选型、接口电路设计等,参考课本第6章相关内容。
4. 步进电机控制算法:学习步进电机的速度和位置控制算法,如PID控制、闭环控制等,结合课本第7章内容。
5. 实践操作:分组进行步进电机的组装、调试及控制程序编写,巩固理论知识,培养实际操作能力。
教学大纲安排如下:第1周:微机原理基础回顾,了解步进电机接口技术;第2周:学习步进电机原理与结构,选型及参数了解;第3周:步进电机驱动技术学习,驱动电路设计;第4周:步进电机控制算法学习,编写控制程序;第5周:实践操作,步进电机组装、调试及故障排查;第6周:课程设计总结,成果展示及评价。
微机原理课程设计-步进电机的正反转及调速控制
课程设计报告题目步进电机正反转及调速控制系统的设计课程名称微机原理及应用院部名称机电工程学院专业电气工程及其自动化班级10电气1班学生姓名管志成学号**********课程设计地点C304课程设计学时20指导教师李国利金陵科技学院教务处制成绩步进电机是将电脉冲信号转变为角位移或线位移的开环控制元件,具有快速启动能力,定位精度高,能够直接接受数字量,因此被广泛地应用于数字控制系统中,如数模转换装置、精确定位、计算机外围设备等,在现代控制领域起着非常重要的作用。
本设计基于Proteus 7.8设计环境,运用了8086 CPU芯片以及74273芯片、74244芯片和步进电机以及7位小功率驱动芯片ULN2003A、按钮、指示灯等辅助硬件电路,设计了步进电机正反转及调速系统。
绘制软件流程图,进行了软件设计并编写了源程序,最后对软硬件系统进行联合调试。
该步进电机的正反转及调速系统具有控制步进电机正反转的功能,还可以对步进电机进行调速,不同的按钮对应不同的速度,并且在没有速度按钮按下的时候,步进电机自动切换到停止状态。
关键词:步进电机;正反转;调速控制;ULN2003A芯片;8086微机系统一、概述1.1 课程设计的目的 (4)1.2课程设计的要求 (4)二、总体设计方案及说明2.1 系统总体设计方案 (5)2.2系统工作框图 (5)三、系统硬件电路设计3.1 Intel 8086 微处理器的简介 (6)3.2 步进电机的原理 (7)3.3 ULN2003A的简介 (8)3.4 74154芯片简介 (9)3.5 74LS273芯片简介 (10)3.6 8086最小系统的设计 (11)3.7 步进电机及其驱动电路的设计 (12)3.8 电机状态显示电路的设计 (12)3.9 输入采样电路的设计 (13)3.10系统总电路图 (14)四、系统软件部分设计4.1 系统流程图 (15)4.2 系统软件源程序 (16)4.2.1电机绕组通电顺序设定 (16)4.2.2 延时子程序设计 (16)4.2.3 汇编源程序及说明 (16)五、总结5.1 系统软硬件的联合调试 (21)5.2 问题分析和解决方案 (23)5.3 心得与体会 (23)六、参考文献 (23)附录:总电路图 (25)一、概述1.1 课程设计的目的通过本课程设计,使学生掌握控制系统设计的一般步骤,掌握系统总体控制方案的设计方法。
微机原理及接口技术课程设计(步进电机)
微机原理及接口技术课程设报告题目步进电机转速实时控制学院电子信息工程学院专业学生姓名学号年级级指导教师职称二O一四年六月目录一、课程设计目的 (3)二、方案设计 (3)三、硬件系统的基本原理 (3)1、系统硬件子系统构成 (3)2、步进电机控制原理接线图 (4)3、工作原理 (5)四、软件框图及设计思想 (6)1、设计思想 (6)2、程序框图 (7)五、软件清单 (8)六、心得体会 (11)七、主要参考资料 (13)题目:步进电机转速实时控制一、课程设计目的:1、掌握四相步进电机接口电路的原理;2、理解步进电机正、反转工作原理和转速控制原理。
二、方案设计:本设计采用的步进电机为35BYJ46型四相八拍电机,电压为DC12V,电机的励磁线圈顺序已经在实验指导书中给定。
以8255A 作为并行输出接口,通过查询步进电机的励磁线圈顺序表以及计算出步进电机的相序表,编写出适当的程序来调节步进电机的正反转以及转速问题。
同时利用程序对步进电机事实与数码管同步的相应运转状态,从而使得整个步进电机控制系统得以准确实现。
三、硬件系统的基本原理:1、系统硬件子系统的构成:本设计采用的步进电机为35BYJ46型四相八拍电机,电压为DC12V,其励磁线圈及其励磁顺序如下图及下表所示:2、步进电机控制原理:4 - -3 - - -2 - - -1 - - -3、工作原理:4相步进电机示意图见下左图,转子由一个永久磁铁构成,定子分别由4组绕组构成电气连接示意图电机定子和转子示意图当S1连通电源后,定子磁场将产生一个靠近转子为N极,远离转子为S极才磁场,这样的定子磁场和转子的固有磁场发生作用,转子就会转动,正确地S1、S4的送电次序,就能控制转子旋转的方向。
例如:若送电的顺序为S1闭合断开S2闭合断开S3闭合断开S4闭合断开,周而复始的循环,在定子和转子共同作用下,电机就瞬时针旋转:若送电的顺序为S4闭合断开S3闭合断开S2闭合断开S1闭合断开,周而复始的循环,则电机就逆时针旋转,原理同理。
微机原理课程设计---步进电机设计
目录摘要 (1)Abstract (2)1 课程设计任务及要求 (3)1.1 设计任务 (3)1.2 设计要求 (3)2 方案设计 (3)2.1 方案一 (3)2.2 方案二 (6)2.3 方案比较 (12)3 硬件分析 (13)3.1 电路设计图 (13)3.2 各部件分析 (14)4 软件分析 (21)5调试运行 (22)5.1 方案一程序调试运行及仿真 (22)5.2方案二调试运行及仿真 (23)6心得体会 (25)参考文献 (26)附录一方案一源程序 (27)附录二方案二源程序 (30)课程设计任务书学生姓名:专业班级:自动化0902指导教师:徐小强工作单位:自动化题目:步进电机设计初始条件:用汇编语言设计一个步进电机的控制,在Proteus仿真环境下完成,功能上实现步进电机的基本功能。
要求完成的主要任务:(包括课程设计工作量及其技术要求,以及说明书撰写等具体要求)1. 通过键盘控制步进电机的启动和停止,正转和反转;2. 编制完整的程序并调试;3.撰写符合学校要求的课程设计说明书,内容包括:摘要、目录、正文、参考文献、附录(程序清单)。
正文部分包括:设计任务及要求、方案比较及论证、软件设计说明(软件思想,流程,源程序设计及说明等)、程序调试说明和结果分析、课程设计收获及心得体会。
时间安排:1. 1月4日----1月5日查阅资料及方案设计2.1月6日----1月8日编程3.1月9日----1月10日调试程序4.1月11日 ----1月12日撰写课程设计报告5.1月13日上午准备答辩,下午正式答辩指导教师签名:年月日系主任(或责任教师)签名:年月日摘要步进电机是工业生产过程控制及仪表中的主要控制元件之一。
例如,在机械结构中,可以用丝杠把角度变成直线位移,也可以用它带动螺旋电位器,调节电压和电流,从而实现对执行机构的控制。
在数字控制系统中,由于它可以直接接受计算机输出的数字信号,而不需要进行数/模/转换,可以用起来非常方便。
微型计算机原理步进电机实验
微型计算机原理步进电机实验一、实验目的掌握步进电机的基本工作原理和控制方法,理解步进电机与微型计算机的接口原理。
二、实验器材1.电脑2.步进电机3.驱动器电路板4.接口电缆5.实验面包板6.杜邦线7.电源三、实验步骤1.搭建电路连接:将步进电机与驱动器电路板连接,然后将驱动器电路板与微型计算机的接口电缆连接。
2.编写控制程序:使用任何一种编程语言,编写通过微型计算机控制步进电机的程序。
3.载入程序:将编写好的控制程序载入微型计算机。
4.运行程序:执行控制程序,观察步进电机的运动情况。
四、实验内容1.观察步进电机是否正常运转。
2.改变控制程序中的参数,例如步进角度和转速,观察步进电机的运动情况。
3.尝试通过控制程序改变步进电机的运动方向。
4.尝试同时控制多个步进电机。
五、实验原理步进电机是一种能够按照指令进行旋转的电机。
它可以精确控制转动角度和转速,适用于需要精确定位的应用场景。
步进电机的控制通常使用驱动器来实现。
驱动器接受来自微型计算机的指令,然后根据指令来控制步进电机的转动。
步进电机的控制方法有多种,常见的有脉冲信号控制方法和磁场控制方法。
脉冲信号控制方法是通过给步进电机的控制端口发送不同的脉冲信号来实现转动控制;磁场控制方法是通过改变电磁铁的磁场来使步进电机转动。
在本实验中,我们使用脉冲信号控制方法来控制步进电机。
步进电机的转动是按照一定的角度来进行的,这个角度叫做步角。
步进电机通常有两种类型:单圈步进电机和多圈步进电机,它们的步角不同。
每接收到一个脉冲信号,步进电机就会转动一定的步角。
驱动器电路板通常有多个控制端口,用来接收控制信号。
控制信号可以是高电平或低电平的脉冲信号,通过给这些控制端口发送不同的脉冲信号,就可以控制步进电机的转动方向和转动步数。
六、实验问题与解答1.为什么要使用驱动器来控制步进电机?答:步进电机的控制需要精确的脉冲信号来实现转动控制,而微型计算机无法直接提供这种精确的信号。
课程设计步进电机
课程设计步进电机一、教学目标本课程的学习目标主要包括知识目标、技能目标和情感态度价值观目标。
知识目标要求学生掌握步进电机的基本原理、结构特点及其在实际应用中的基本方法。
技能目标要求学生能够运用步进电机进行简单的物理实验,并能够分析实验结果。
情感态度价值观目标要求学生在学习过程中培养对科学的热爱和探索精神,提高学生的实践能力和创新意识。
二、教学内容教学内容主要包括步进电机的基本原理、结构特点、工作原理及其在实际应用中的基本方法。
具体包括以下几个方面:1.步进电机的基本原理:介绍步进电机的工作原理,让学生了解步进电机是如何通过电磁感应产生转矩的。
2.步进电机的结构特点:介绍步进电机的结构特点,包括定子和转子两部分,以及它们之间的相互关系。
3.步进电机的工作原理:讲解步进电机的工作原理,让学生了解步进电机在不同工作状态下的运行情况。
4.步进电机在实际应用中的基本方法:介绍步进电机在实际应用中的基本方法,包括步进电机的选型、安装、调试和维护等方面。
三、教学方法为了提高教学效果,我们将采用多种教学方法进行授课,包括讲授法、讨论法、案例分析法和实验法等。
1.讲授法:通过讲解步进电机的基本原理、结构特点和工作原理,使学生能够系统地掌握步进电机的相关知识。
2.讨论法:学生进行课堂讨论,引导学生主动思考和探究步进电机的相关问题,提高学生的思维能力和解决问题的能力。
3.案例分析法:通过分析实际应用中的步进电机案例,使学生能够更好地理解和掌握步进电机的工作原理和应用方法。
4.实验法:安排学生进行步进电机的实验操作,让学生亲身体验步进电机的工作过程,提高学生的实践能力和创新意识。
四、教学资源为了支持教学内容和教学方法的实施,我们将选择和准备适当的教学资源,包括教材、参考书、多媒体资料和实验设备等。
1.教材:选择一本与步进电机相关的教材,作为学生学习的主要参考资料。
2.参考书:推荐一些与步进电机相关的参考书籍,供学生进一步深入学习和研究。
微机原理及接口技术课程设计(步进电机)
三、硬件系统的基本原理:
1、系统硬件子系统的构成:
本设计采用的步进电机为35BYJ46型四相八拍电机,电压为DC12V,其励磁线圈及其励磁顺序如下图及下表所示:
1
2
3
4
5
6
7
8
5
+
+
+
+
+
+
+
+
4
-
-
3
-
-
-
2
-
-
-
1
-
-
-பைடு நூலகம்
2、步进电机控制原理:
接线图:
B4区8255的PC0、PC1、PC2、PC3分别接E1区步进电机的A、B、C、D;
DEC BX
DECDX
JZ M1
LOOPA5
JMPM2
M2:MOV BX,OFFSET TAB
MOVAX,0007H
微机课程设计报告 小型步进电机控制系统设计(附程序清单)
微机应用系统设计与综合实验设计报告设计题目小型步进电机控制系统设计指导老师设计者专业班级学号设计日期目录摘要 (3)一. 课程设计目的 (4)二. 设计题目名称及要求 (4)三. 实验设备 (4)四. 设计的思想和实施方案 (5)五. 硬件原理图 (11)六. 典型程序模块及典型编程技巧 (13)七. 课程设计中遇到的问题及解决方法 (16)八. 程序流程图 (19)九. 汇编程序清单及程序注释 (23)十. C语言程序清单及注释 (30)十一. 收获体会 (37)十二. 参考文献 (38)摘要在现代电子产品中,步进电机广泛应用于ATM机、喷绘机、刻字机、写真机、喷涂设备、医疗仪器及设备、计算机外设及海量存储设备、精密仪器、工业控制系统、办公自动化、机器人等领域。
所以步进电机的控制是一门很实用的技术。
本实验主要是基于唐都——PIT试验箱的步进电机控制的设计。
主要使用到了并行接口电路8255、LED 七段数码管电路、8086cpu、步进电机等元件。
主要是通过按键的不同来设置直流电机的转速、运行状态和方向。
软件部分采用了汇编语言编写程序代码和C语言编写的步进电机控制程序,通过判断、跳转、循环、延时等基本技术实现。
此系统可以通过键盘输入相关数据, 并根据需要, 实时对步进电机工作方式进行设置, 具有实时性和交互性的特点。
该设计可应用于步进电机控制的大多数场合关键词: 步进电动机调速方向控制并行接口七段数码管小型步进电机控制系统一、课程设计目的课程设计是本科教学全过程中的重要环节。
《微机应用系统设计与综合实验(实践)》课程设计主要培养我们自动化专业学生,运用所学知识解决计算机应用领域内实际问题能力,进一步提高学生运用计算机编程语言综合编程能力、程序调试技能和微机系统接口综合应用及电路设计能力。
1、学习在PC系统中扩展简单的I/O接口的方法。
2、熟练掌握和运用汇编和C语言编写程序控制8255各口的输入输出,并正确带动数码管及步进电机;能熟练运用汇编和C语言实现8254的定时功能,以确保8255输出的脉冲频率稳定。
微机原理步进电机控制课程设计报告
河北科技大学课程设计报告学生姓名:学号:专业班级:课程名称:学年学期: 2 0 —2 0 学年第学期指导教师:2 0 年月课程设计成绩评定表目录一、设计题目……………………………………………………………….二、设计目的……………………………………………………………….三、设计原理及方案……………………………………………………….四、实现方法……………………………………………………………….五、实施结果……………………………………………………………….六、改进意见及建议……………………………………………………….七、设计体会……………………………………………………………….、一、设计题目编程实现步进电机的控制二、设计目的1.了解步进电机控制的基本原理2.掌握控制步进电机转动的编程方法3.了解8086控制外部设备的常用电路4.掌握8255的使用方法三、设计原理及方案设计原理步进电机驱动原理是通过对每相线圈中的电流的顺序切换实验中的步进电机有四相线圈,每次有二相线圈有电流,有电流的相顺序变化,来使电机作步进式旋转;驱动电路由脉冲信号来控制,所以调节脉冲信号的频率便可改变步进电机的转速;利用 8255对四相步进电机进行控制;当对步进电机施加一系列连续不断的控制脉冲时,它可以连续不断地转动;每一个脉冲信号对应步进电机的某一相或两相绕组的通电状态改变一次,也就对应转子转过一定的角度一个步距角;当通电状态的改变完成一个循环时,转子转过一个齿距;四相步进电机可以在不同的通电方式下运行,常见的通电方式有单单相绕组通电四拍A-B-C-D-A…,双双相绕组通电四拍AB-BC-CD-DA-AB…,八拍A-AB-B-BC-C-CD-D-DA-A…等;通过编程对8255的输出进行控制,使输出按照相序表给驱动电路供电,则步进电机的输入也和相序表一致,这样步进电机就可以正向转动或反向转动;硬件连接图四.实现方法.步进电机控制程序流图.程序代码ASTEPEQU01H BSTEPEQU02H CSTEPEQU04H DSTEPEQU08H CODESEGMENT ASSUMECS:CODESTART:MOVDX,8003H;8255控制口地址MOVAL,82H;PA口输出,B口输入OUTDX,AL;写控制字K0:MOVDX,8000H;PA口地址MOVAL,0;输出低电平OUTDX,AL;电机停止转动MOVDX,8001H;PB口地址INAL,DX;读开关状态TESTAL,01H;PB0位K0=0吗JNZK1;不是零转K1JMPSTEP8;是零转单/双八拍工作方式K1:INAL,DX;读开关状态TESTAL,02H;PB1位K1=0吗JNZK2;不是零转K2JMPSTEP4;是零转双四拍工作方式K2:INAL,DX;读开关状态TESTAL,04H;PB2位K2=0吗JZSTEP41;是零转单四拍反转工作方式JMPK0;循环;单/双八拍工作方式:A→AB→B→BC→C→CD→D→DA→A STEP8:MOVBX,9000H;设置初始延时时间MOVDX,8000H;PA口地址MOVAL,ASTEPOUTDX,ALCALLDELAYMOVAL,ASTEP+BSTEPOUTDX,ALCALLDELAYMOVAL,BSTEPOUTDX,ALCALLDELAYMOVAL,BSTEP+CSTEPOUTDX,ALCALLDELAYMOVAL,CSTEPOUTDX,ALCALLDELAYMOVAL,CSTEP+DSTEPOUTDX,ALCALLDELAYMOVAL,DSTEPOUTDX,ALCALLDELAYMOVAL,DSTEP+ASTEPOUTDX,ALCALLDELAYJMPK0;双四拍工作方式:AB→BC→CD→DA→AB STEP4:MOVBX,5000H;设置延时时间MOVDX,8000H;PA口地址MOVAL,ASTEP+BSTEP;PA0PA1AB相输出高电平OUTDX,ALCALLDELAY;调延时MOVAL,BSTEP+CSTEP;BC输出高电平OUTDX,ALCALLDELAY;调延时MOVAL,CSTEP+DSTEP;CD输出高电平OUTDX,ALCALLDELAY;调延时MOVAL,DSTEP+ASTEP;DA输出高电平OUTDX,ALCALLDELAY;调延时JMPK0;单四拍反转工作方式:D→C→B→A→D STEP41:MOVBX,1000H;设置延时时间MOVDX,8000H;PA口地址MOVAL,DSTEP;D输出高电平OUTDX,ALCALLDELAY;调延时MOVAL,CSTEP;C输出高电平OUTDX,ALCALLDELAY;调延时MOVAL,BSTEP;B;输出高电平OUTDX,ALCALLDELAY;调延时MOVAL,ASTEP;A输出高电平OUTDX,ALCALLDELAY;调延时JMPK0DELAYPROCNEAR;延时子程序PUSHCXMOVCX,BXDD1:NOPLOOPDD1POPCXRETDELAYENDP;延时子程序结束CODEENDS;代码段结束ENDSTART五.实施结果.操作步骤1、硬件测试WINXP步进电机2、在硬件测试通过后,要注意三个相一致1PNP地址和数据段中的端口地址;2控制字和接线;3代码段中的端口地址和接线;3、把程序代码烧进写实验箱中.运行结果1K0扳下表示启动,步进电机转动;K0扳下表示停止,步进电机停止;2K1扳下表示顺时针转,速度慢;3K2扳下表示逆时针,即倒转,速度快;六.改进意见及建议程序设计没有实现加速和减速,在步进电机的转动函数里,每次循环都改变延时的大小即可实现变速;延时时间依次变长则步进电机减速,延时时间依次变短则步进电机加速;再配合开关即可实现加速减速的任意控制;七.设计体会这次做的实验是一个比较综合的实验,实验中主要是微机原理的编程,但还涉及到步进电机的有关知识以及一些专业基础课的知识,所以要做好这次实验我们需要做的有很多;首先,在查找资料的过程中,我更加理解了8255在微型计算机中的重要作用,理解了8255的基本的编程结构和基本控制字的设计方法,也锻炼了自己的动手能力和创新意识;其次,在编写汇编程序过程中,由于早先对汇编语言学习的不扎实,我们遇到了很大的困难,但是随着对问题理解的逐渐深入,这些问题最终都一一化解了;通过这次步进电机控制代码的编写,让我有了一个更深刻的认识:要想写好汇编语言的程序,必须认真对待代码的每一个细节,还必须熟练的掌握debug命令,这对程序的调试是非常重要的;在这个过程中,不仅提高了实际动手操作能力,培养了治学严谨的态度,激发了我学习此专业课程的兴趣,而且让我们深刻的体验到理论知识与实践经验的密切联系,要成为一个高技术人才,必须理论与实践两手都要硬;在设计时,对不同方案的构思、分析、比较到最后的方案确定,这些工作,可以增强了我们分析、解决问题的能力,培养了我们的创新意识;。
步进电机控制的课程设计
步进电机控制的课程设计一、课程目标知识目标:1. 学生能理解步进电机的原理、结构和分类,掌握其工作方式及相关参数。
2. 学生能掌握步进电机控制的基础知识,包括驱动电路的原理和编程控制方法。
3. 学生能了解步进电机在不同应用场景中的选型和使用要点。
技能目标:1. 学生能运用所学知识,设计简单的步进电机控制电路,并进行调试。
2. 学生能编写简单的步进电机控制程序,实现电机的精确运动控制。
3. 学生能通过团队合作,解决实际工程问题,提高实践操作能力。
情感态度价值观目标:1. 学生对步进电机控制产生兴趣,激发学习动力,培养自主学习能力。
2. 学生通过课程学习,认识到科技进步对生活的改变,增强社会责任感和创新意识。
3. 学生在团队合作中,学会相互尊重、沟通协作,培养良好的团队精神和职业素养。
本课程针对高年级学生,结合课程性质、学生特点和教学要求,将目标分解为具体的学习成果。
课程以实用性为导向,注重理论与实践相结合,旨在提高学生的动手能力、创新意识和团队合作精神。
通过本课程的学习,为学生后续相关课程和实际工作打下坚实基础。
二、教学内容1. 步进电机原理及分类:介绍步进电机的结构、工作原理、特点及分类,对应教材第3章。
- 磁阻式步进电机- 永磁式步进电机- 混合式步进电机2. 步进电机驱动电路:讲解步进电机驱动电路的原理、分类及设计方法,对应教材第4章。
- 驱动电路的原理- 驱动电路的分类- 驱动电路的设计方法3. 步进电机编程控制:介绍步进电机的编程控制方法,包括脉冲信号生成、运动控制算法等,对应教材第5章。
- 脉冲信号生成- 运动控制算法- 编程实践案例4. 步进电机应用与选型:分析不同场景下步进电机的应用和选型要点,对应教材第6章。
- 常见应用场景- 步进电机选型要点- 实际应用案例5. 实践环节:安排步进电机控制电路设计、编程控制及调试,对应教材第7章。
- 控制电路设计- 编程与调试- 团队合作实践教学内容按照以上大纲进行安排和进度规划,确保学生能够系统、全面地掌握步进电机控制相关知识,为实际应用奠定基础。
微机原理步进电机控制
微机原理步进电机控制微机原理步进电机控制实验报告实验步进电机控制⼀、实验内容l、⽤8255的PA0,PA3输出脉冲信号,驱动步进电机转动,通过键盘设定来控制步进电机正转、反转、停⽌。
2、实验预备知识,步进电机驱动原理是通过对它每相线圈中的电流的顺序切换来使电机作步进式旋转。
驱动电路由脉冲信号来控制,所以调节脉冲信号的频率便可改变步进电机的转速,⽤微电脑控制步进电机最适合。
⼆、实验步骤1、在系统处于命令提⽰符“P.”态下,按SCAL键。
2、按图6,9连好实验线路图,8255的PA0,PA3依次连到HA-HD插孔。
3、运⾏实验程序。
在系统处于命令提⽰符“P.”态下,输⼊1630,按EXEC键,显⽰BJ?,按“1”键正转;按“2”键反转;按“3”停⽌。
4、观察步进电机转动情况。
三、实验原理图, 实验接线图:四(实验程序清单CODE SEGMENT ;BJ.ASM ASSUME CS: CODE IOCONPT EQU 0FF2BH IOBPT EQU 0FF29H IOAPT EQU 0FF28HPA EQU 0FF20H ;字位⼝PB EQU 0FF21H ;字形⼝PC EQU 0FF22H ;键⼊⼝ORG 1630HSTART: JMP START0 BUF DB ?,?,?,?,?,? KZ DB ?ltime db ?lkey db ?data1:db0c0h,0f9h,0a4h,0b0h,99h,92h,82h,0f8h,80h,90h,88h,83h,0c6h,0a1h db86h,8eh,0ffh,0ch,89h,0deh,0c7h,8ch,0f3h,0bfh,8FH,0F1HSTART0: CALL BUF1 ;写显⽰缓冲区初值MOV AL,88H ;MOV DX,IOCONPTOUT DX,AL ;写命令字redikey: call dispkey ;调⽤显⽰键扫cmp KZ,01h ;是1键正转JZ ZZcmp KZ,02h ;是2键反转JZ STXJMP REDIKEY ;继续读键JMP ST ;转停⽌ STX:ZZ: CALL BUFZ ;显⽰正转值ZZ1: MOV DX,IOAPT ;PA⼝MOV AL,03H ;MOV DX,IOAPTOUT DX,AL ;驱动步进电机,A.B两相CALL DELPZ ;延时,读键MOV AL,06HMOV DX,IOAPTOUT DX,AL ;驱动步进电机,A.d两相CALL DELPZ MOV AL,0CHMOV DX,IOAPTOUT DX,AL ;驱动步进电机,C.D两相CALL DELPZ MOV AL,09H ;驱动步进电机,B.C两相MOV DX,IOAPT OUT DX,ALCALL DELPZMOV AL,03HMOV DX,IOAPTOUT DX,ALCALL DELPZMOV AL,06HMOV DX,IOAPTOUT DX,ALCALL DELPZMOV AL,0CHMOV DX,IOAPTOUT DX,ALCALL DELPZMOV AL,09HMOV DX,IOAPTOUT DX,AL;------------------------- FZ: CALL BUFF ;反转⼊⼝FZ1: MOV DX,IOAPTMOV AL,0CHOUT DX,ALCALL DELPFMOV AL,06HMOV DX,IOAPTOUT DX,ALCALL DELPFMOV DX,IOAPTMOV AL,03HOUT DX,ALCALL DELPFMOV AL,09HMOV DX,IOAPTOUT DX,ALCALL DELPFMOV AL,0CHMOV DX,IOAPTOUT DX,ALCALL DELPFMOV AL,06HMOV DX,IOAPTOUT DX,ALCALL DELPFMOV AL,03HMOV DX,IOAPTOUT DX,ALCALL DELPFMOV AL,09HMOV DX,IOAPTOUT DX,ALCALL DELPFMOV AL,00HOUT DX,ALST1: call dispkey cmp KZ,01hJZ ZZMONcmp KZ,02hJZ FZMONJMP ST1delpZ: mov cx,02h con1: push cx CALL dispkey pop cxcmp KZ,02hJZ FZMONcmp KZ,03hJZ STMONloop con1RETdelpF: mov cx,02h con2: push cx CALL dispkey pop cxcmp KZ,01hJZ ZZMONcmp KZ,03hJZ STMONloop con2RETZZMON: POP CXJMP ZZFZMON: POP CXJMP FZSTMON: POP CXJMP ST;-------------------------dispkey: call disp ;键盘显⽰⼦程序,见前注释call key mov ah,al ;newkeymov bl,ltime ;ltimemov dx,PA ;0ff21hout dx,alcmp ah,bhmov bh,ah ;bh=new keymov ah,bl ;al=timejz disk4mov bl,88hmov ah,88hdisk4: dec ahcmp ah,82hjz disk6cmp ah,0ehjz disk6cmp ah,00hjz disk5mov ah,20hdec bljmp disk7disk5: mov ah,0fhdisk6: mov bl,ahmov ah,bhdisk7: mov ltime,blmov lkey,bhmov KZ,bhmov al,ahretkey: mov al,0ffh ;键扫⼦程序mov dx,PB out dx,almov bl,00hmov ah,0fehmov cx,08hkey1: mov al,ahmov dx,PAmov ah,alnopnopnopnopnopnopmov dx,PCin al,dxnot alnopnopand al,0fhjnz key2inc blloop key1jmp nkeykey2: test al,01h je key3 mov al,00hjmp key6key3: test al,02h je key4 mov al,08hjmp key6key4: test al,04h je key5 mov al,10hjmp key6key5: test al,08hje nkeymov al,18hkey6: add al,blcmp al,10hjnc fkeymov bl,almov al,[bx+si]retnkey: mov al,20h fkey: retdata2: db 07h,04h,08h,05h,09h,06h,0ah,0bh DB 01h,00h,02h,0fh,03h,0eh,0ch,0dh DISP: MOV AL,0FFH ;显⽰⼦程序 ,5ms MOV DX,PAOUT DX,ALMOV CL,0DFH ;20HMOV BX,OFFSET BUF DIS1: MOV AL,[BX]MOV AH,00HPUSH BXMOV BX,OFFSET DATA1ADD BX,AXMOV AL,[BX]POP BXMOV DX,PBOUT DX,ALMOV AL,CLMOV DX,PAOUT DX,ALPUSH CXDIS2: MOV CX,0a0HLOOP $POP CXCMP CL,0FEHJZ LX1INC BXROR CL,1JMP DIS1LX1: MOV AL,0FFHMOV DX,PBOUT DX,ALRETBUF1: MOV BUF,0BH ;写”BJ----” MOV BUF+1,019HMOV BUF+4,17HMOV BUF+5,17HRETBUFZ: MOV BUF,0BH ;写”BJ---F” MOV BUF+1,19HMOV BUF+2,17HMOV BUF+3,17HMOV BUF+4,17HMOV BUF+5,0FHRETBUFF: MOV BUF,0BH ;写”BJ---r” MOV BUF+1,19HMOV BUF+2,17HMOV BUF+3,17HMOV BUF+4,17HMOV BUF+5,18HRETBUFS: MOV BUF,0BH ;写”BJ---S” MOV BUF+1,19HMOV BUF+2,17HMOV BUF+3,17HMOV BUF+4,17HMOV BUF+5,05HRETCODE ENDSEND START五、实验总结1、通过实验进⼀步了解8086的使⽤,学习汇编语⾔编程⽅法及调试技巧。
课程设计-- 微机步进电机控制系统设计
课程设计报告课程名称:微机原理与接口技术课程设计设计题目:微机步进电机控制系统设计系别XXXXXXXX专业: XXXXXXXX班级: XXX学生姓名XXX学号: XXXXXXXXXXX起止日期: XXXXXXX指导教师: XXXXXXX目录第一章绪论 (2)第二章分析 (2)2.1 课程设计题目 (2)2.2 课程设计任务及要求 (2)2.2.1 任务 (2)2.2.2 课程设计的要求 (3)2.3 运行环境及开发工具 (3)2.3.1 运行环境 (3)2.3.2 开发工具 (3)第三章设计 (3)3.1 基本原理 (3)3.2 设计方法 (4)3.2.1 硬件设计方法 (5)3.2.2 软件设计方法 (7)3.3 程序流程图 (14)第四章调试与操作说明 (25)4.1 综合调试步骤 (25)4.2 操作说明 (25)第五章课程设计心得与体会 (26)参考文献 (27)附录步进电机控制程序 (29)第一章绪论课程设计是培养和锻炼在校学生综合应用所学理论知识解决实际问题能力、进行工程实训的重要教学环节,它具有动手、动脑,理论联系实际的特点,是培养在校工科大学生理论联系实际、敢于动手、善于动手和独立自主解决设计实践中遇到的各种问题能力的一种较好方法。
微机原理及接口技术应用是一门实践性较强的课程,让学生在学完该课程之后,进行一次课程设计,使学生将课堂所学的知识和实践有机结合起来,初步掌握计算机应用系统设计的步骤和接口设计的方法,提高分析和解决实际问题的能力。
通过设计实践,培养学生查阅专业资料、工具书或参考书,了解有关工业标准,掌握现代设计手段和软件工具,并能以图纸和说明书表达设计思想和结果的能力。
通过设计,不但要培养和提高学生解决工程具体问题、动脑动手的技术工作能力,而且还要逐步建立科学正确的设计和科研思想,培养良好的设计习惯,牢固树立实事求是和严肃认真的工作态度。
第二章分析2.1 课程设计题目微机步进电机启动与停止控制微机步进电机的速度控制微机步进电机的方向控制2.2 课程设计任务及要求2.2.1 任务1)微机步进电机起动与停止控制;实现方法:设置硬开关或软开关。
步进电机课程设计
步进电机 课程设计一、课程目标知识目标:1. 学生能理解步进电机的原理、结构及其工作方式;2. 学生能掌握步进电机与控制器之间的通信协议和编程控制方法;3. 学生能运用步进电机进行简单机械运动的控制。
技能目标:1. 学生能通过实际操作,熟练进行步进电机的接线与调试;2. 学生能运用编程软件,编写简单的控制程序,实现对步进电机的精确控制;3. 学生能通过小组合作,解决步进电机控制过程中遇到的问题。
情感态度价值观目标:1. 学生对步进电机及其控制产生浓厚的兴趣,培养探究精神和创新意识;2. 学生在小组合作中,培养团队协作能力,增强集体荣誉感;3. 学生通过学习步进电机知识,认识到科技对生活的改变,增强社会责任感。
本课程针对高年级学生,结合电子技术、自动控制原理等学科知识,旨在培养学生的实际操作能力、编程思维和团队合作精神。
课程要求学生在理解理论知识的基础上,注重实践操作,将所学知识应用于实际问题的解决,达到学以致用的教学目标。
通过本课程的学习,为学生进一步探索自动化领域奠定基础。
二、教学内容1. 步进电机原理与结构- 介绍步进电机的种类、工作原理及结构特点;- 分析步进电机与普通电机的区别及优势。
2. 步进电机控制基础- 讲解步进电机与控制器之间的通信协议;- 介绍步进电机的控制参数及其调整方法。
3. 步进电机编程控制- 学习编程软件的使用,编写简单的控制程序;- 掌握步进电机的运动控制指令及其应用。
4. 步进电机实践操作- 实际操作步进电机的接线与调试;- 通过编程控制步进电机实现直线运动、圆周运动等。
5. 步进电机应用案例- 分析步进电机在自动化设备中的应用案例;- 探讨步进电机在生活中的应用及发展趋势。
教学内容按照教材章节安排,结合课程目标,分为理论知识与实践操作两部分。
在教学过程中,注重引导学生从基础理论入手,逐步过渡到实际操作,培养学生动手能力。
同时,通过分析案例,拓展学生视野,提高他们对步进电机应用的认识。
微机控制技术(计算机控制技术)课程设计——步进电机控制系统设计
单片机课程设计报告步进电机控制系统设计姓名:班级: B10221 指导老师:齐建玲日期: 2013.6.08~2011.6.13 北华航天工业学院一、设计前述步进电机是将电脉冲信号转变为角位移或线位移的开环控制元件。
在非超载的情况下,电机的转速、停止的位置只取决于脉冲信号的频率和脉冲数,而不受负载变化的影响,即给电机加一个脉冲信号,电机则转过一个步距角。
这一线性关系的存在,加上步进电机只有周期性的误差而无累积误差等特点。
使得在速度、位置等控制领域用步进电机来控制变的非常的简单。
步进电机的调速一般是改变输入步进电机的脉冲的频率来实现步进电机的调速,因为步进电机每给一个脉冲就转动一个固定的角度,这样就可以通过控制步进电机的一个脉冲到下一个脉冲的时间间隔来改变脉冲的频率,延时的长短来具体控制步进角来改变电机的转速,从而实现步进电机的调速。
本设计还通过按键控制电机正转与反转。
二、设计任务和要求设计步进电机单片机控制系统,其功能如下:1.具有对步进电机的启停、正反转、加减速控制;2.控制按钮分别为正转、反转、加速、减速、以及停止键;3.能够通过三位LED数码管(或液晶显示器)显示当前的转动速度,并且由两只不同颜色的发光二极管分别指示正转和反转,因此可以清楚的显示当前转动方向和转速;4.要求每组选择的步进电机控制字不同;5.用单片机做控制微机;三、设计原理分析1、步进工作电机原理1.1步进电机的特点:(1)一般步进电机的精度为步进角的3-5%,且不累积。
(2)步进电机的力矩会随转速的升高而下降。
当步进电机转动时,电机各相绕组的电感将形成一个反向电动势;频率越高,反向电动势越大。
在它的作用下,电机随频率(或速度)的增大而相电流减小,从而导致力矩下降。
(3)步进电机低速时可以正常运转,但若高于一定速度就无法启动,并伴有啸叫声。
步进电机有一个技术参数:空载启动频率,即步进电机在空载情况下能够正常启动的脉冲频率,如果脉冲频率高于该值,电机不能正常启动,可能发生丢步或堵转。
微机原理课程设计说明书---步进电机控制
微机接口技术课程设计说明书课题名称:步进电机控制目录1.课程设计任务书…………………………………………………2.说明书正文…………………………………………………………2.1 前言………………………………………2.2 现状…………………………………………………2.3 任务分析与方案设计…………………………………………2.4 系统电路原理图……………………………………………2.5元器件参数选择及清单……………………………………2.6 电路的调试………………………………………………3. 心得体会……………………………………………4. 参考文献………………5. 附录…………………………………1.课程设计任务书一、任务要求在Dais实验台基础上设计并调试一个外接口电路,能够显示所对应的电机状态。
且具有一定的控制功能,编程并调试完成整个开发系统。
二、主要技术要求实现步进电机转速和正反转控制。
控制四相步进电机是采用编程方法实现四相八拍环形分配运行方式,改变激励脉冲频率的大小来实现调制。
变换步进电机的其中两相相序,就能实现步进电机的正反转。
扩展一:用三个发光二极管亮灭表示三个速度开关的状态。
再用一个发光二极管亮灭表示正反转状态。
扩展二:用数码管显示速度状态。
三、主要完成任务1、查找相关资料,确定课程设计方案;2、微机接口电路硬件的焊接、装配、逐步排除故障及调试:3、用Protel2004绘制微机最小系统配置原理图;4、用Protel2004绘制相关项目的接口原理图;5、编写相关项目的程序,并进行调试;6、按照相关项目内容要求,上级进行调试;7、编写课程设计报告。
四、提交成果1)课程设计说明书一本(电子文档和打印稿各一份)要求:内容完整,图表完备,条理清晰,分析有据。
所附电路图布局合理,清晰完备,图形和符号要规范。
2)所用元器件清单3)电路实体一套。
要求:该电路实体必须是经过自己安装调试通过并达到性能指标要求的电路实体。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
汇编及接口技术课程设计
题目:步进电机控制系统
成绩:
目录一.设计目的
二.设计内容
三.设计方案
四.软件设计
五.硬件线路设计
六.源代码
七.总结
步进电机控制系统
一、设计目的
1.了解步进电机控制的基本原理。
2.掌握控制步进电机转动的编程方法。
3.进一步熟练8255的使用。
二、设计内容
编程控制步进电机,使其能够正常运转,要求:
1.开关K8控制电机的启动与停止。
当K8向上拨时,电机启动,向下拨时电机停止。
2.开关K7控制电机的正反转。
当K7向上拨时,电机正反转;向下拨时,电机反转。
3.开关K1~K6控制电机的转速:K1向上拨时,得到最低转速,…… K6向上拨时,
得到最高转速。
4.在数码管上显示速度编号。
三.设计方案
四.软件设计
运用分支程序来调节开关的选择,再通过改变sx的大小和延时子程序来调节步电机的转动速度。
设计:k0-k5控制转速,k6控制正反,k7控制开始停止
五、硬件线路设计
1. 实验连线
8255模块的RD、WR 连到ISA总线接口模块的IOR#、IOW#,8255选通信号CS 连到ISA总线接口模块的IOY0。
8255模块的数据线D7~D0、连到ISA总线接口模块的XD7~XD0。
地址线A1~A0连到XA1~XA0。
步进电机的A—PB0,B—PB1,C—PB2,D—PB3。
1)8255的PA口(PA0---PA7)和开关K1-K8相连。
2)8255的PB口(PB0---PB3)和步进电机的A、B、C、D相连。
3) 8255的PC口(PC0---PC7)连接到LED的(a---h)。
六.源代码
DATA SEGMENT
P8255A DW 0600H
P8255B DW 0602H
P8255C DW 0604H
P8255M DW 0606H
TABDT DB 01H,03H,02H,06H,04H,0CH,08H,09H ;顺时针旋转
TABDT1 DB 09H,08H,0CH,04H,06H,02H,03H,01H ;逆时针旋转
TIMEP DW 100H ;时间参数
DCODE DB ? ;显示代码
DATA ENDS
CODE SEGMENT
ASSUME CS:CODE, DS:DATA
START: MOV AX, DATA
MOV DS,AX
;-------------------------------------------------------------------------------------------------------- FIRST: MOV DI,100H
MOV DX,P8255M
MOV AL,90H ;;;;;;;;;;;;;;;; ;
OUT DX,AL
A1: MOV DX, P8255A
IN AL,DX
TEST AL,40H ;K6=PA6
JZ A2
MOV BX,OFFSET TABDT1
jmp A3
A2: MOV BX,OFFSET TABDT
A3: MOV CX,0008H ;;;;;;;;;;;;;;;;;
NEW: MOV DX, P8255A
IN AL,DX
TEST AL,80H ;K8=PA7
JNZ THIRD
;-----------------------------------------------------------------------------------------------
SECOND: MOV DX, P8255B
MOV AL,0FFH ;停止步进电机
OUT DX,AL
JMP NEW
;---------------------------------------------------------
------------------------------------
THIRD: MOV DX,P8255B
MOV CX, 0008H
A4: MOV AL,[BX]
MOV DX, P8255B; 写B口
OUT DX, AL
CALL SWITCH
CALL DELAY ; 控制步进电机的转速
;CALL DISPLY
INC BX
LOOP A4
JMP A1
;-----------------------------------------------------------------------------------------------
FORTH: INC BX
LOOP NEW
DONE: JMP A1
EXIT1: MOV AX,4C00H
INT 21H
;---------------------------------------------------------
---------------------------------------- DELAY PROC NEAR ;延时程序PUSH CX
PUSH SI
DELO: MOV SI,DI
DL1: NOP
MOV CX, 0FFH ;;;;;;
DL2: LOOP DL2
DEC SI
JNZ DL1
POP SI
POP CX
RET
DELAY ENDP
DISPLY PROC NEAR ;显示程序NOP
RET
DISPLY ENDP
;-----------------------------------------------------------------------------------------
SWITCH PROC NEAR ;速度子程序
PUSH AX
PUSH BX
PUSH DX
MOV DX,P8255A
IN AL,DX
TEST AL,01H
JNZ K0
TEST AL,02H
JNZ K1
TEST AL,04H
JNZ K2
TEST AL,08H
JNZ K3
TEST AL,10H
JNZ K4
TEST AL,20H
JNZ K5
JMP STH1
K0: MOV DI, 1000H
jmp K6
K1: MOV DI, 200H
jmp K6
K2: MOV DI, 100H
jmp K6
K3: MOV DI, 50H
JMP K6
K4: MOV DI, 40H
JMP K6
K5: MOV DI, 10H
JMP K6
STH1: MOV AX,300H
K6: MOV TIMEP,AX
POP DX
POP BX
POP AX
RET
SWITCH ENDP
CODE ENDS
END START
七.总结
初学《微机原理》时,感觉摸不着头绪。
面对着众多的术语、概念及原理性的问题不知道该如何下手。
在了解课程的特点后,我发现,应该以实践为突破口,可以通过学习一个具体实践过程,了解和熟悉计算机的结构、特点和工作过程。
这次步电机设计历时一天多,在其中我有许多的不会,开始的设计什么的都不太会,在老师的帮助下学着一步步做8255片,步电机,开关部分是否硬件无损的测试,然后又学习怎么实现步电机的基本功能,虽然最后仍没弄太懂步电机的设计,设计也有一些缺陷,但是大体上还是完成了这次的实验,从中我学到了微机原理的实现,也学到了微机原理的重要性,实践的关键性。
11。