微机原理课程设计:步进电机
- 格式:doc
- 大小:418.63 KB
- 文档页数:6
课程设计报告题目步进电机正反转及调速控制系统的设计课程名称微机原理及应用院部名称机电工程学院专业电气工程及其自动化班级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 课程设计的目的通过本课程设计,使学生掌握控制系统设计的一般步骤,掌握系统总体控制方案的设计方法。
课程设计课程名称计算机控制系统题目名称步进电机角度控制(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周:课程设计总结,成果展示及评价。
微机原理及接口技术课程设报告题目步进电机转速实时控制学院电子信息工程学院专业学生姓名学号年级级指导教师职称二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闭合断开,周而复始的循环,则电机就逆时针旋转,原理同理。
(封面)XXXXXXX学院微机原理课程设计实验报告题目:院(系):专业班级:学生姓名:指导老师:时间:年月日课题名:步进电机控制一、课题内容和提示:编程提示:(1)步进电机驱动原理是通过对每相线圈中的电流的顺序切换来使电机做步进式旋转。
调节输入脉冲的频率可改变步进电机的转速。
(2)编写程序使步进电机按正转10圈,反转5圈,再正转10圈,再反转5圈的规律旋转。
(3)调整延时参数,使步进电机的转动速度为每秒5转。
二、报告要求:每秒5转对应的延时参数是多少?,这个数字与微机的速度有什么关系?为什么?三、设计思路:(1)前言:步进电机具有控制简便、定位准确等特点。
随着科学技术的发展,在许多领域将得到广泛的应用。
鉴于传统的脉冲系统移植性不好,本文提出微机控制系统代替脉冲发生器和脉冲分配器,用软件的方法产生控制脉冲,通过软件编程可以任意设定步进电机的转速、旋转角度、转动次数和控制步进电机的运行状态。
以简化控制电路,降低生产成本,提高系统的运行效率和灵活性。
在此基础上提出了双三拍步进电机程序控制的硬件接口电路、程序流程图和汇编程序。
步进电机是自动控制系统中常用的执行部件。
步进电机的输入信号为脉冲电流,它能将输入的脉冲信号转换为阶跃型的角位移或直线位移,因而步进电机可看作是一个串行的数/模转换器。
由于步进电机能够直接接受数字信号,而不需数/模转换,所以使用微机控制步进电机显得非常方便。
(2)步进电机有以下优点:(1)通常不需要反馈就能对位置和速度进行控制;(2)位置误差不会积累;(3)与数组设备兼容,能够直接接收数字信号;(4)可以快速启停。
(3)步进电机的工作原理:步进电机是将电脉冲信号转变为角位移或线位移的开环控制元件。
在非超载的情况下,电机的转速、停止的位置只取决于脉冲信号的频率和脉冲数,而不受负载变化的影响,即给电机加一个脉冲信号,电机则转过一个步距角。
这一线性关系的存在,加上步进电机只有周期性的误差而无累积误差等特点。
目录摘要 (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.参考书:推荐一些与步进电机相关的参考书籍,供学生进一步深入学习和研究。
河北科技大学课程设计报告学生姓名:学号:专业班级:课程名称:学年学期: 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、设计目的
培养和锻炼学生在学习完本门课后综合应用所学理论知识,解决实际工程设计和应用问题的能力的重要教学环节。
要求学生熟悉和掌握微机系统的软件、硬件设计的方法、设计步骤,使学生得到微机开发应用方面的初步训练。
让学生独立或集体讨论设计题目的总体设计方案、编程、软件硬件调试、编写设计报告等问题,真正做到理论联系实际,提高动手能力和分析问题、解决问题的能力,实现由学习知识到应用知识的初步过渡。
通过本次课程设计使学生熟练掌握微机系统与接口扩展电路的设计方法,熟练应用8086汇编语言编写应用程序和实际设计中的硬软件调试方法和步骤,熟悉微机系统的硬软件开发工具的使用方法。
培养学生在实际的工程设计中查阅资料,撰写设计报告表达设计思想和结果的能力。
2、设计内容
编程实现步进电机的控制,能够实现开关控制步进电机的正反转功能。
3、设计要求
实现步进电机的正、反转功能
4、设计原理与硬件电路
按下图连接线路,利用8255输出(通过PA0~PA3)的脉冲序列, K(通过PC7)控制步进电机转向。
8255的选片信号CS接0200H~0206H。
PA0~PA3接步进电机。
跳转到zhuan1
A 口送信号03H 送A 口信号06H 送信号0CH 送信号03H 送信号09H 延时 送信号0CH 延时 延时 延时 送信号09H 送信号06H 跳转到zhuan2 延时 延时 延时 延时 开始
8255初始化,A 输出C 输入 A 口置零
读取开关状态 K=0?
a_port equ 0200h
b_port equ 0202h
c_port equ 0204h
ctrl_port equ 0206h code segment
assume cs:code
start: mov al,10001001b mov dx,ctrl_port out dx,al
mov al,0h
mov dx,a_port
out dx,al
k1: mov dx,c_port
in al,dx
test al,80h
jz k2
call zhuan2
jmp k1
k2: call zhuan1
jmp k1
zhuan1 proc
mov al,06h
mov dx ,a_port out dx,al
call delay
mov al,0ch
out dx,al
call delay
out dx,al
call delay
mov al,03h
out dx,al
call delay
ret
zhuan1 endp
zhuan2 proc
mov al,03h
mov dx,a_port
out dx,al
call delay
mov al,09h
out dx,al
call delay
mov al,0ch
out dx,al
call delay
mov al,06h
out dx,al
call delay
ret
zhuan2 endp
delay proc
mov cx,0ff00h
l1:loop l1
ret
delay endp
mov ah,4ch
int 21h
code ends
end start
7 程序及硬件系统调试情况
该部分记录测试数据、调试结果及调试过程中遇到的主要问题和解决办法。
首先我们是对步进电机的工作原理进行了一些资料的查询,结果虽然是了解了步进电机的工作原理,但是在仿真系统中找到步进电机花费了一定的时间。
一开始,根据理解找到的电机是,因此初步设计是是电机实现正反转动。
进行编
程之后发现的问题是,控制口的开关能够实现电机的正反向转动,但是却不能实现电机的一直转动。
而后经过查阅相关书籍,发现步进电机应该有接高电平的两端,因此上面选择的电机是不合
适的。
然后在仿真软件中找了,经过验证给4个新号端送以不同的新号可以实现电机不同的旋转角度。
经过组合、循环与延时,我们完全可以实现用开关控制步进电机的转向,以及保持电机的一直转动。
8 设计总结与体会
微机原理这门课程学完后我有很大的收获,对汇编语言有了初步的了解。
并且通过本实验让我对汇编语言产生很大的兴趣,让我掌握了汇编编程的总体思路,本实验利用微机控制步进电机的转向,在实验过程中遇到的问题告诉我们理论的编程要结合实际的电动机技术指标调试延迟时间。
从这次实验中并让我进一步的学习到了8255的应用和掌握了8255 的初始化和其编程。
对我们以后的工作和学习起到的积极的作用。
对于本次课程设计的题目,刚开始的时候我们大部分人都在网上进行了查询,结果查出来的结果基本上都是用单片机实现的功能。
因此我们可以了解到,微机原理这门课程也为我们学习单片机打下了基础。
天气很冷,但是大家都能在计划安排的内完成课程设计。
我们应该感谢老师对我们的辛勤教诲,让我们在平时学好课本知识。