基于51单片机的步进电机控制课程设计
MCS51单片机课程设计基于单片机的步进电机控制系统
MCS51单片机课程设计基于单片机的步进电机控制系统.txt我不奢望什么,只希望你以后的女人一个不如一个。
真怀念小时候啊,天热的时候我也可以像男人一样光膀子!本文由灰太狼科技贡献doc文档可能在WAP端浏览体验不佳。
建议您优先选择TXT,或下载源文件到本机查看。
数理与信息工程学院《单片机原理与应用》期末学期课程设计数理与信息工程学院《单片机原理及应用》期末学期课程设计单片机原理及应用》期末学期课程设计题目:基于单片机的步进电机控制系统专业:电子信息工程班级:电信 041 班姓名:学号:指导老师:指导老师:成绩:(2007.1)1数理与信息工程学院《单片机原理与应用》期末学期课程设计目第1章 1.1录............................................................................3 引言............................................................................3 步进电机控制系统概述. (3)1.2 本设计任务和主要内容............................................................4 第2章 2.1 2.2 系统主要硬件电路设计.......................................................... 系统主要硬件电路设计..........................................................5 硬件电路设计单片机控制系统原理.............................................................5 单片机主机系统电路 (5)2.2.1 时钟电路……………………………………………………………6 2.2.2 复位电路……………………………………………………………6 2.3 步进电机驱动电路…………………………………………………………7 2.4 第3章3.1 3.2 LED 显示电路…………………………………………………………….8 系统的软件设计…………………………………………………………10 系统的软件设计…………………………………………………………10 ..................................................................步进电机的位置控制............................................................10 显示子程序 (13)结束语……………………………………………………………………………………………………………………………………17 第四章结束语…………………………………………………………………17 参考文献…………………………………………………………………18 第 5 章参考文献…………………………………………………………………18 …………………………………………………………………2数理与信息工程学院《单片机原理与应用》期末学期课程设计基于单片机的步进电机控制系统第1章引言在当今社会的各个领域步进电机无处不在,应用领域涉及机器人、工业电子自动化设备、医疗器件、广告器材、舞台灯光设备、印刷设备、计算机外部应用设备等等。
微控综合系统设计课程设计-基于51单片机的步进电机微控系统设计
微控综合系统设计课程设计评语:考勤(10)守纪(10)过程(40)设计报告(30)答辩(10)总成绩(100)专业:电气工程及其自动化班级:电气1301班姓名:学号:指导教师:兰州交通大学自动化与电气工程学院2016 年 1 月 9 日1 摘要随着微电子和计算机技术的发展,步进电机的需求量与日俱增,它广泛用于打印机、电动玩具等消费类产品以及数控机床、工业机器人、医疗器械等机电产品中,其在各个国民经济领域都有应用。
研究步进电机的控制系统,对提高控制精度和响应速度、节约能源等都具有重要意义。
步进电机是一种能将电脉冲信号转换成角位移或线位移的机电元件,步进电机控制系统主要由步进控制器,功率放大器及步进电机等组成。
采用单片机控制,用软件代替上述步进控制器,使得线路简单,成本低,可靠性大大增加。
软件编程可灵活产生不同类型步进电机励磁序列来控制各种步进电机的运行方式。
本设计是采用STC89C52单片机对步进电机的控制,通过IO口输出的时序方波作为步进电机的控制信号,信号经过芯片ULN2003驱动步进电机;同时,用4个按键来对电机的状态进行控制,并用4个LED发光二极管显示电机的转速。
系统由硬件设计和软件设计两部分组成。
其中,硬件设计包括STC89C52单片机的最小系统、电源模块、键盘控制模块、步进电机驱动(集成达林顿ULN2003)模块、LED指示灯模块。
软件采用在Keil软件环境下编辑。
2 引言用单片机设计的步进电机控制系统应具有以下功能:1. 步进电机的按键启停控制2.步进电机的按键正反转控制3. 步进电机的按键加速控制4. 步进电机的按键减速控制5. 步进电机的LED灯速度显示3 设计方案及原理本设计的目的是以单片机为核心设计出一个单片机控制步进电机的控制系统。
本系统采用AT89C51作为控制单元,通过键盘实现对步进电机转动方向及转动速度的控制,通过led显示速度等级。
下面图1是系统的组成的结构图,大致规划系统的组成,以及控制的原理。
基于51单片机的步进电机控制
电)四拍(A-B-C-D-A。。。),双(双相绕组通电)四拍(AB-BC- CD-DA-AB-。。。), 八拍(A-AB-B-BC-C-CD-D-DA-A。。。) 3、系统电路图
(1)接电源:VCC(PIN40)、GND(PIN20)。加接退耦电容 0.1uF (2)接晶体:X1(PIN18)、X2(PIN19)。注意标出晶体频率(选用 12MHz), 还有辅助电容 20pF (3)接复位:RES(PIN9)。接上电复位电路,以及手动复位电路,分析 复位工作原理 4、 接配置:EA(PIN31) (1)四个 8 位通用 I/O 端口,对应引脚 P0、P1、P2 和 P3; (2)两个 16 位定时计数器;(TMOD,TCON,TL0,TH0,TL1,TH1) (3)一个串行通信接口;(SCON,SBUF) (4)一个中断控制器;(IE,IP) 根据以上的方案比较与论证确定总体方案,确定硬件原理图。原理图如下:
1.3 步进电机的特点
1.精度高 一般的步进电机的精度为步进角的 3-5%,且不累积。可在宽 广的频率范围内通过改变脉冲频率来实现调速,快速起停、正反 转控制及制动 等,这是步进电动机最突出的优点
2.过载性好——其转速不受负载大小的影响,不像普通电机,当负载加大 时就会出现速度下降的情况,所以步进电机使用在对速度和位置都有严格要求的 场合;
一、步进电机与驱动电路
1.1 什么是步进电机
步进电机是一种将电脉冲转化为角位移的执行机构。通俗一点讲:当步进驱 动器接收到一个脉冲信号,它就驱动步进电机按设定的方向转动一个固定的角度 (及步进角)。可以通过控制脉冲个数来控制角位移量,从而达到准确定位的目 的;同时也可以通过控制脉冲频率来控制电机转动的速度和加速度,从而达到调 速的目的。
基于51单片机的步进电机控制
目录第1章总体设计方案 (1)1.1设计原理 (1)1.2设计思路 (1)1.3实验环境 (2)第2章详细设计方案 (3)2.1硬件电路设计 (3)2.2主程序设计 (4)2.3功能模块的设计与实现 (5)第3章结果测试及分析 (8)3.1结果测试 (8)3.2结果分析 (8)参考文献 (9)附录A (10)附录B(电路原理图) (15)附录C (元件列表) (16)第1章总体设计方案1.1 设计原理根据课程设计任务书的内容与要求,要实现步进电机的工作过程,步进电机是一种将电脉冲转换成相应角位移或线位移的电磁机械装置,也是一种能把输出位移增量和输入数字脉冲对应的驱动器件。
首先要给步进电机送入脉冲信号来启动,然后在已经设定好的步进电机的正反转及三种节拍工作方式中切换,步进电机的三种节拍工作方式分别为单四拍、双四拍、单双八拍。
步进电机的驱动需要时钟脉冲信号,改变单片机输出脉冲信号来实现的。
改变各脉冲的先后顺序,可以改变电机的旋转方向和工作方式。
步进电机工作方式的转换则通过键盘控制,可以进行启动、停止、正转、反转及三种节拍工作方式的选择。
键盘的控制是在程序中已经给给每个键设置相应的功能,扫描键盘判断是否有键按下,若有,则执行与之对应的功能;若没有键按下,则保持正在运行的状态不变。
1.2 设计思路采用C语言程序设计的方法结合硬件电路设计方法,利用Lab6000实验箱上已有芯片来实现步进电机的工作(包括正转、反转、单四拍、双四拍、单双八拍的节拍工作方式)。
1)提出方案首先,实现步进电机的启动与停止;其次,实现步进电机的正反转;再次,实现在正转时可选择三种节拍工作方式;最后,实现在反转时可选择三种节拍工作方式。
2)方案论证P1口接步进电机的A~D口,键盘接通片选信号,扫描键盘,由于本程序设定固定按键为功能键,所以扫描键盘时,将使用到的按键的相应列扫描码设置为低电平,如果有键按下,74LS374输出的低电平经过按键被接到74LS245的端口上,这样从74LS245读回的数据就会有低位,根据74LS374输出的列信号和74LS245读回的行信号,就可以判断哪个键被按下。
基于51单片机的步进电机控制系统设计
基于51单片机的步进电机控制系统设计步进电机是一种特殊的直流电动机,具有定角度、定位置、高精度等特点,在许多领域得到广泛应用,如机械装置、仪器设备、医疗设备等。
本文将基于51单片机设计一个步进电机控制系统,主要包括硬件设计和软件设计两部分。
一、硬件设计步进电机控制系统的硬件设计主要包括51单片机、外部电源、步进电机驱动模块、以及其他辅助电路。
1.51单片机选择由于步进电机控制需要执行复杂的算法和时序控制,所以需要一个性能较高的单片机。
本设计选择51单片机作为主控芯片,因为51单片机具有丰富的外设接口、强大的计算能力和丰富的资源。
2.外部电源步进电机需要较高的电流供给,因此外部电源选择稳定的直流电源,能够提供足够的电流供电。
电源电压和电流的大小需要根据具体的步进电机来确定。
3.步进电机驱动模块步进电机驱动模块是连接步进电机和51单片机的关键部分,它负责将51单片机输出的脉冲信号转化为对步进电机的驱动信号,控制步进电机准确转动。
常用的步进电机驱动芯片有L297、ULN2003等。
4.其他辅助电路为了保证步进电机控制系统的稳定运行,还需要一些辅助电路,如限流电路、电源滤波电路、保护电路等。
这些电路的设计需要根据具体的应用来确定。
二、软件设计1.系统初始化系统初始化主要包括对51单片机进行外部中断、定时器、串口和IO 口等初始化设置。
根据实际需求还可以进行其他模块的初始化设置。
2.步进电机驱动程序步进电机的驱动程序主要通过脉冲信号来控制电机的转动。
脉冲信号的频率和脉冲宽度决定了电机的转速和运行方向。
脉冲信号可以通过定时器产生,也可以通过外部中断产生。
3.运动控制算法步进电机的运动控制可以采用开环控制或闭环控制。
开环控制简单,但无法保证运动的准确性和稳定性;闭环控制通过对电机转动的反馈信号进行处理来调整脉冲信号的生成,从而实现精确的运动控制。
4.其他功能设计根据具体的应用需求,可以加入其他功能设计,如速度控制、位置控制、加速度控制等。
基于51单片机实现的步进机控制系统设计
摘要步进电机是一种进行精确步进运动的机电执行元件,它广泛地用于工业机械的数字控制。
为使系统的可靠性,通用性,可维护性以及性价比最优,根据控制系统功能要求及步进电动机应用环境,确定了设计系统硬件和软件的功能划分,从而实现了基于8051单片机的四相步进电动机的开环控制系统。
控制系统通过单片机存储器、I/O口、中断、键盘、LED显示器的扩展,步进电动机的环形分配器、驱动及保护电路、人机接口电路、中断系统及复位电路、单电压驱动电路等的设计。
实现了四相步进电动机的正反转、急停等功能。
为实现单片机控制步进电动机系统在数控机床上的特殊应用,系统设计了两个外部中断,以实现步进电动机在某段时间内的反复正反转功能,也即数控机床的刀架自动进给运动。
关键词:8051单片机;四相步进电动机;控制Realizes based on single chip microcomputer 51 the stepping motor the control systemABSTRACTThe stepping motor is a precision electromechanical incremental actuator.It widely uses the digital approach for control of industrial machines.For dependable,in general use that make system,can support sex an sex price ratio superior,divide the line according to control system funcion request and a function for entering electricmotor applying environment,making sure designing system hardware with softwares, from but realizes to base on single chip microcomputer 8051 of four mutually the step enters the dynamoelectric opening the wreath the control the system.The control system passes the single saving maching,I/O in a machine, break off,the keyboard, the display of LED expands, a wreah for entering elecreic motor form assigns the machine,drive and the design of its protection electric circuit, man-machine connection electric circuit,interrupt system and reset circuit, single-voltage driver circuit and so on,realizes four mutually the step enters the electric motor positive and negative to turn, nasty stop to wait the function.For realizing single chip microcomputer control a special application for entering electric motor system in severalth contorling machine bed, the system designed two exteriors breaks off,toing realize a the step enters electric motor is in a certain time of again and again positive and negative turn the function, also count namely the knife that control the machine bed is automatic to enter to the sport.KEYWORD:single chip microcomputer 8051;four-phase stepper motor ;control第一章绪论1.1 课题背景当今社会,电动机在工农业生产、人们日常生活中起着十分重要的作用。
基于51单片机的步进电机控制系统设计与实现
步进电机工作原理
步进电机是一种基于磁场的控制系统,工作原理是当电流通过定子绕组时,会 产生一个磁场,该磁场会吸引转子铁芯到相应的位置,从而产生一定的角位移。 步进电机的角位移量与输入的脉冲数量成正比,因此,通过控制输入的脉冲数 量和频率,可以实现精确的角位移和速度控制。同时,步进电机具有较高的分 辨率和灵敏度,可以满足各种高精度应用场景的需求。
二、系统设计
1、硬件设计
本系统主要包括51单片机、步进电机、驱动器、按键和LED显示等部分。其中, 51单片机负责接收按键输入并控制步进电机的运动;步进电机用于驱动负载运 动;驱动器负责将51单片机的输出信号放大,以驱动步进电机。LED显示用于 显示当前步进电机的状态。
2、软件设计
软件部分主要包括按键处理、步进电机控制和LED显示等模块。按键处理模块 负责接收用户输入,并根据输入控制步进电机的运动;步进电机控制模块根据 按键输入和当前步进电机的状态,计算出步进电机下一步的运动状态;LED显 示模块则负责实时更新LED显示。
三、系统实现
1、按键输入的实现
为了实现按键输入,我们需要在主程序中定义按键处理函数。当按键被按下时, 函数将读取按键的值,并将其存储在全局变量中。这样,主程序可以根据按键 的值来控制步进电机的转动。
2、显示输出的实现
为了实现显示输出,我们需要使用单片机的输出口来控制显示模块的输入。在 中断服务程序中,我们根据设定的值来更新显示模块的输出,以反映步进电机 的实时转动状态。
基于单片机的步进电机控制系统需要硬件部分主要包括单片机、步进电机、驱 动器、按键和显示模块等。其中,单片机作为系统的核心,负责处理按键输入、 控制步进电机转动以及显示输出等功能。步进电机选用四相八拍步进电机,驱 动器选择适合该电机的驱动器,按键用于输入设定值,显示模块用于显示当前 步进电机的转动状态。
基于51单片机 步进电机课程设计.
信息与电气工程学院课程设计说明书(2012/2013学年第二学期)课程名称:单片机课程设计题目:步进电机控制实验专业班级:自动化1002班学生姓名:***学号:*******指导教师:苗敬利,王巍设计周数:2周设计成绩:13年6 月17 日目录第1章设计目的............................... 错误!未定义书签。
第2章设计任务与要求.. (3)第3章设计思路与方案 (4)3.1 控制电机正/反向转 (4)3.2 控制电机运转速度 (5)第4章硬件电路设计 (5)4.1 主控模块 (5)4.2 驱动控制模块 (6)4.3 按键控制模块 (7)4.4 显示模块 (8)第5章系统软件设计 (9)5.1 主程序 (9)5.2 子程序 (10)第6章系统仿真 (10)6.1 KEIL调试控制程序 (10)6.2 Proteus仿真 (11)第7章收获与体会 (12)附录1 总电路图 (15)附录2 源程序清单 (16)步进电机简易控制系统设计第一章设计目的步进电机是现代数字控制技术中最早出现的执行部件,步进电机是将电脉冲信号转变为角位移或线位移的开环控制元步进电机件。
在非超载的情况下,电机的转速、停止的位置只取决于脉冲信号的频率和脉冲数,而不受负载变化的影响,当步进驱动器接收到一个脉冲信号,它就驱动步进电机按设定的方向转动一个固定的角度,称为“步距角”,它的旋转是以固定的角度一步一步运行的。
可以通过控制脉冲个数来控制角位移量,从而达到准确定位的目的;同时可以通过控制脉冲频率来控制电机转动的速度和加速度,从而达到调速的目的。
需要单片机产生脉冲序列和方向控制控制信号。
步进电机的特点是可以将数字脉冲控制信号直接转换为一定数值的机械角位移.并且能够自动产生定位转矩使转轴锁定。
对控制系统的研制中最基本的要求就是性能可靠和结构简单。
利用AT89S52单片机来设计和开发步进电机的控制系统,可以很好地满足这一要求。
基于51单片机的步进电机控制系统-单片机课程设计报告
9.牵入转矩:≥34.3mN.m(120Hz) 10.自定位转矩:≥34.3mN.m 11.绝缘电阻:>10MΩ (500V) 12.绝缘介电强度:600VAC/1mA/1S 13.绝缘等级:A 14.温升:<50K(120Hz) 15.噪音:<40dB(120Hz) 16.重量:大约 40g 17.未注公差按:GB1804-m 18.转向:CCW
2.2.2 步进电机 24BYJ48 的相关电气参数
1.额定电压:12VDC(另有电压:5V、6V、24V) 2.相数:4 3.减速比:1/64(另有减速比:1/16、1/32) 4.步距角:5.625°/64 5.驱动方式:4 相 8 拍 6.直流电阻:200Ω ±7%(25℃)(按客户要求而定:80、130 欧姆) 7.空载牵入频率:≥600Hz 8.空载牵出频率:≥1000Hz
三、 ULN2003 达林顿陈列芯片
步进电机的驱动采用 ULN2003 芯片。 ULN2003 是高耐压、大电流达林顿陈列,由七个硅 NPN 达林顿管组成。 ULN2003 的每一对达林顿都串联一个 2.7K 的基极电阻, 在 5V 的工作电压下 它能与 TTL 和 CMOS 电路直接相连,可以直接处理原先需要标准逻辑缓冲器 来处理的数据。ULN2003 工作电压高,工作电流大,灌电流可达 500mA ,并 且能够在关态时承受 50V 的电压,输出还可以在高负载电流并行运行。 其引脚及内部原理图如下:
口作输入口使用时, 因为有内部上拉电阻,那些被外部拉低的引脚会输出一个电 流(������������L ) 。 P2 端口(P2.0~P2.7,21~28 引脚) :P2 口是一个带内部上拉电阻的 8 位双 向 I/O 端口。 P2 的输出缓冲器可以驱动(吸收或输出电流方式)4 个 TTL 输入。 对端口写入 1 时,通过内部的上拉电阻把端口拉到高电平,这时可用作输入口。 P2 作为输入口使用时,因为有内部的上拉电阻,那些被外部信号拉低的引脚会 输出一个电流(������������L ) 。 在访问外部程序存储器和 16 位地址的外部数据存储器(如执行“MOVX @DPTR” 指令) 时, P2 送出高 8 位地址。 在访问 8 位地址的外部数据存储器 (如 执行“MOVX @R1”指令)时,P2 口引脚上的内容(就是专用寄存器(SFR) 区中的 P2 寄存器的内容) ,在整个访问期间不会改变。 在对 Flash ROM 编程和程序校验期间, P2 也接收高位地址和一些控制信号。 P3 端口(P3.0~P3.7,10~17 引脚) :P3 是一个带内部上拉电阻的 8 位双向 I/O 端口。P3 的输出缓冲器可驱动(吸收或输出电流方式)4 个 TTL 输入。对端 口写入 1 时,通过内部的上拉电阻把端口拉到高电位,这时可用作输入口。P3 做输入口使用时, 因为有内部的上拉电阻,那些被外部信号拉低的引脚会输入一 个电流(������������L ) 。 在对 Flash ROM 编程或程序校验时,P3 还接收一些控制信号。 P3 口除作为一般 I/O 口外,还有其他一些复用功能,如下表所示: 表 XX 引脚号 P3.0 P3.1 P3.2 P3.3 P3.4 P3.5 P3.6 P3 口引脚复用功能 复用功能 RXD(串行输入口) TXD(串行输出口) ������NT0(外部中断 0) ������NT1(外部中断 1) T0(定时器 0 的外部输入) T1(定时器 1 的外部输入) ������R(外部数据存读选通) RST(9 引脚) :复位输入。当输入连续两个机器周期以上高电平时为有效,
基于单片机的步进电机的控制课程设计报告
单片机课程设计报告步进电机控制学院:电气学院班级:电气0904:王浩学号:3090501097一.设计任务了解步进电机的原理,设计一套以51单片机为核心的步进电机控制器,步进电机采用四相四拍或四相八拍工作方式,键盘和显示器采用实验室试验箱。
了解十六只键组成的键盘(用于输入)及六只LED构成的显示器(用于显示)的原理,分别设计他们的程序,在电脑上进行仿真。
具体要求1、从键盘上输入正、反转命令,转速参数(16级)和转动步数显示在LED显示器上。
2、显示器上显示:第一位为0表示正转,为1表示反转;第二位0~F为转速等级,第三到第六位设定步数。
3、单片机依显示器上显示的正、反转命令,转速级数和转动步数进行相应动作,转动步数减为零时停止转动。
二.工作原理1、步进电机基本原理如图,当有一相绕组被通电激励时,磁通从正相齿,经过软铁芯的转子,并以最短路径流向负相齿,为使磁通路径最短,在磁场力的作用下,转子被迫移动,使最近的一对齿与被激励的一相对准。
那么,通过对它每相线圈中电流的顺序切换可使电机作步进式旋转。
相数:产生不同对极N、S磁场的激磁线圈对数。
拍数:指电机转过一个齿距角所需脉冲数,以四相电机为例,有四相四拍运行方式即AB-BC-CD-DA-AB或A-B-C-D-A,四相八拍运行方式即A-AB-B-BC-C-CD-D-DA-A.步距角:对应一个脉冲信号电机转子转过的角位移. 步距角=360/(转子齿数*拍数)2、LED显示器原理LED显示器由七条发光二极管组成显示字段,有的还带有一个小数点。
将七段发光二极管阴极连在一起,称为共阴极接法,当某个字段的阳极为高电平时,对应的字段就点亮。
共阳极接法是将LED的所有阳极并联后接到+5v上,当某一字段的阴极为0时,对应的字段就点亮。
3、键盘接口原理键盘实际上是又排列成矩阵形式的一系列按键开关组成,用户通过键盘可以向CPU输入数据、地址和命令。
本设计采用8155接口芯片构成的4*8键盘的接口电路,其中A口为输出,作为列线;C口为输入,作为行线。
51步进电机课程设计
51步进电机课程设计一、课程目标知识目标:1. 学生能理解步进电机的原理与结构,掌握其工作方式和分类。
2. 学生能掌握51单片机对步进电机的控制方法,包括脉冲信号的产生与分配。
3. 学生能解释步进电机在自动化设备中的应用,了解其在不同行业中的功能。
技能目标:1. 学生能够独立完成51单片机与步进电机的连接,进行基本的编程控制。
2. 学生通过实践,学会调试步进电机参数,优化电机运行效果。
3. 学生能够设计并实现简单的步进电机控制系统,解决实际问题。
情感态度价值观目标:1. 学生通过课程学习,培养对工程技术的兴趣,增强创新实践的意识。
2. 学生在团队协作中,学会相互尊重、沟通与配合,培养集体荣誉感。
3. 学生认识到科技对社会发展的作用,理解技术在实际应用中的价值,形成正确的技术观。
课程性质:本课程为实践性强的工程技术课程,结合理论教学与动手操作,旨在提高学生的实际应用能力。
学生特点:考虑到学生年级特点,课程设计需兼顾理论知识的深度和操作实践的难度,确保学生能够理解和掌握。
教学要求:教学内容与实际应用紧密结合,注重培养学生的动手能力和问题解决能力,通过任务驱动的方式,激发学生的学习兴趣和探究精神。
目标分解为具体可衡量的学习成果,以便于教学设计和评估。
二、教学内容1. 步进电机原理及分类:介绍步进电机的组成结构、工作原理,对比不同类型的步进电机特点及应用场景。
- 教材章节:第三章“步进电机原理及特性”2. 51单片机控制基础:回顾51单片机的结构、编程基础,学习如何利用51单片机产生脉冲信号,实现对步进电机的控制。
- 教材章节:第二章“51单片机原理与应用”3. 步进电机驱动电路设计:讲解步进电机驱动电路的原理,学习如何搭建驱动电路,连接51单片机与步进电机。
- 教材章节:第四章“步进电机驱动电路设计”4. 步进电机控制程序编写:学习编写控制程序,实现对步进电机的启停、转向、速度调节等基本功能。
- 教材章节:第五章“步进电机控制程序设计”5. 步进电机控制系统实践:分组进行项目实践,设计并实现一个简单的步进电机控制系统,如自动化窗帘、智能小车等。
基于51单片机的步进电机课程设计报告
目录绪论 (2)一、选题背景 (3)1.1课题背景 (3)1.2研究的目的和意义 (3)1.3课题研究的内容 (4)二、方案的论证 (4)2.1单片机简介 (4)2.2步进电机简介 (5)2.3仿真软件的介绍 (6)2.4驱动电路的选择 (6)三、设计或实验过程的论述 (7)3.1硬件电路的设计 (8)3.2软件部分 (9)四、基于AT89S52步进电机控制系统的实现 (15)4.1系统的故障及调试 (15)4.2设计结果 (16)五、总结与展望 (16)5.1总结 (16)5.2展望 (16)5.3 心得 (16)六、致谢 (17)附录一:参考文献 (18)附录二:电路原理总图 (19)附录三:元器件清单 (20)附录四:产品实物图 (21)步进电机的控制设计绪论单片机具有体积小、功耗小、控制功能强、扩展灵活、微型化和使用方便等优点,广泛应用与仪表仪器中,结合不同类型的传感器,可以实现诸如电压、功率、频率、温度、湿度、流量、速度、厚度、长度、硬度、元素、压力等物理量的测量。
采用单片机控制使得仪器仪表数字化、智能化、微型化,且功能比起采用电子或数字电路更强大。
例如精密的测量设备(功率表,示波器,各种分析仪)。
同时用单片机还可以构成形式多样的控制系统、数据采集系统。
例如工厂流水线的智能管理,电梯智能化控制、各种报警系统,与计算机联网构成二级控制系统等。
现在的单片机普遍具备通信接口,可以很方便的与计算机进行数据通信,为在计算机网络和通信设备间的应用提供了极好的物质条件,现在的通信设备基本都实现了单片机智能控制,从手机,电话机,小型程控交换机、楼宇自动通信呼叫系统、列车无线通信、再到日常工作中随处可见的移动电话,集群移动通信,无线电对讲机等。
此外,单片机在工商,金融,科研,教育,国防航空航天等领域都有着十分广泛的用途。
目前,单片机正朝着高性能和多品种方向发展趋势将是进一步向着CMOS化、低功耗、大容量、低价格和外围电路内装化等几个方面发展。
毕业设计-基于C51单片机的步进电机控制系统设计
摘要本设计中首先介绍了步进电机的工作原理、控制特点和运行状态,然后给出了步进电机的单片机控制系统的总体设计方案。
在这个控制系统中,单片机选用AT89C51,其作为控制核心,担负着产生脉冲,发送、接受控制命令等任务;脉冲分配采用硬件方法,由8713接收到单片机的控制信号后产生相应的控制脉冲,避免了软件法在不停地产生脉冲时占用的时间;采用单电压驱动的方法驱动电机带动负载运行;利用键盘、显示专用芯片8279能够以较简单的硬件电路和较少的软件开销实现微型机与键盘和LED显示器接口。
本设计最后详细介绍了硬件部分和软件部分的实现方法。
关键词:单片机;步进电机;速度控制;ZLG7290;显示器AbstractThe design introduces the working principle of stepper motor, control features and operations, and then gives the stepper motor microcontroller control system design programs. In this control system, the SCM selecting AT89C51, the control center of the shoulder produces pulses, sending, receiving control commands and other tasks; pulse distribution method using hardware from the 8713 chip control signals received resulting from the corresponding control pulse, to avoid software method to generate pulses in constant time occupied; adopt a single voltage-driven approach drive motor to drive the load operation; use of keyboard, display 8279 can be dedicated to simple hardware and less software overhead to achieve keyboard and LED display interface. Finally introduce the hardware and software implementation methods in detail.Key words: SCM; stepper motor; speed control;ZLG7290;display;目录摘要 (I)Abstract .................................................... I I 第一章绪论. (1)1.1步进电机概述 (1)1.2课题研究的主要内容 (2)1.2.1研究内容 (2)1.2.2论文安排 (2)第二章步进电机控制系统设计方案 (3)2.1步进电机的系统 (3)2.2步进电机的失步现象 (5)2.3步进电机控制系统的组成 (6)2.4系统的控制过程 (7)第三章步进电机控制系统硬件部分 (9)3.1硬件电路图 (9)3.2采用51系列单片机AT89C51作为控制器 (10)3.2.1 AT89C51的主要性能 (10)3.2.2 AT89C51引脚功能说明 (10)3.3步进电机的驱动电路 (15)3.4 LED显示电路 (16)3.4.1 LED显示器的结构原理 (16)3.4.2 LED显示接口 (18)3.5可编程键盘/显示控制器ZLG7290电路工作原理 (19)3.5.1 ZLG7290概述 (19)3.5.2管脚、引线与功能 (21)3.5.3 ZLG7290键盘、显示接口电路设计 (24)3.6脉冲分配 (26)第四章步进电机控制系统软件部分 (30)4.1定时器中断服务 (30)4.1.1定时器初值 (30)4.1.2定时器中断服务子程序 (31)4.2 速度控制 (31)第五章总结 (35)致谢 (36)参考文献 (37)附录 (38)第一章绪论本章将简要介绍步进电机的发展过程、步进电机在日常生活中的广泛应用、步进电机作为数字控制电动机的主要特点以及本次研究的主要内容和论文安排。
基于51单片机控制步进电机
单片机原理及系统课程设计1 引言步进电机又称为脉冲电动机或阶跃电动机,它是基于最基本的电磁感应作用,将电脉冲信号转变为角位移或线位移的开环控制元件。
单片机控制的步进电机广泛地应用于工业自动控制、数控机床、组合机床、机器人、计算机外围设备、照相机,大型望远镜,卫星天线定位系统等等。
随着经济的发展,技术的进步和电子技术的发展,步进电机的应用领域更加广阔,同时也对步进电机的运行性能提出了更高的要求。
步进电机的原始模型起源于1830年至1860年,1870年前后开始以控制为目的的尝试,应用于氩弧灯的电极输送机构中,这被认为最早的步进电机。
1950年后期晶体管的发明也逐渐应用在步进电机上,对于数字化的控制变得更为容易。
到20世纪60年代后期,在步进电机本体方面随着永磁材料的发展,各种实用性步进电机应运而生。
步进电机往后经过不断改良,使得今日步进电机已广泛运用在需要高定位精度、高分解能、高响应性、信赖性等灵活控制性高的机械系统中。
在生产过程中要求自动化、省人力、效率高的机器中,我们很容易发现步进电机的踪迹,尤其以重视速度、位置控制、需要精确操作各项指令动作的灵活控制性场合步进电机用得最多。
2 设计方案与原理4.1 设计方案设计一个51单片机四相步进电机控制系统要求系统具有如下功能:(1)由I/O口产生的时序方波作为电机控制信号;(2)信号经过驱动芯片驱动电机的运转;(3)电机的状态通过键盘控制,包括正转,反转,加速,减速,停止和单步运行。
4.2 设计原理步进电机实际上是一个数字\角度转换器,也是一个串行的数\模转换器。
步进电机的基本控制包括启停控制、转向控制、速度控制、换向控制4个方面。
从结构上看,步进电机分为三相、四相、五相等类型,本次设计的是四相电机。
四相步进电机的工作方式有单四拍、双四拍和单双八拍三种。
在本次设计中,我们使用的是四相单八拍的工作方式。
通过P1口给A,B,C,D四相依次输出高电平即可实现步进电机的旋转,通过控制两次输出的间隔,即可实现对步进电机的速度控制。
基于51单片机的步进电机控制系统单片机课程设计报告
微机原理与接口技术课程设计报告基于51单片机的步进电机控制系统毕业设计(论文)原创性声明和使用授权说明原创性声明本人郑重承诺:所呈交的毕业设计(论文),是我个人在指导教师的指导下进行的研究工作及取得的成果。
尽我所知,除文中特别加以标注和致谢的地方外,不包含其他人或组织已经发表或公布过的研究成果,也不包含我为获得及其它教育机构的学位或学历而使用过的材料。
对本研究提供过帮助和做出过贡献的个人或集体,均已在文中作了明确的说明并表示了谢意。
作者签名:日期:指导教师签名:日期:使用授权说明本人完全了解大学关于收集、保存、使用毕业设计(论文)的规定,即:按照学校要求提交毕业设计(论文)的印刷本和电子版本;学校有权保存毕业设计(论文)的印刷本和电子版,并提供目录检索与阅览服务;学校可以采用影印、缩印、数字化或其它复制手段保存论文;在不以赢利为目的前提下,学校可以公布论文的部分或全部内容。
作者签名:日期:学位论文原创性声明本人郑重声明:所呈交的论文是本人在导师的指导下独立进行研究所取得的研究成果。
除了文中特别加以标注引用的内容外,本论文不包含任何其他个人或集体已经发表或撰写的成果作品。
对本文的研究做出重要贡献的个人和集体,均已在文中以明确方式标明。
本人完全意识到本声明的法律后果由本人承担。
作者签名:日期:年月日学位论文版权使用授权书本学位论文作者完全了解学校有关保留、使用学位论文的规定,同意学校保留并向国家有关部门或机构送交论文的复印件和电子版,允许论文被查阅和借阅。
本人授权大学可以将本学位论文的全部或部分内容编入有关数据库进行检索,可以采用影印、缩印或扫描等复制手段保存和汇编本学位论文。
涉密论文按学校规定处理。
作者签名:日期:年月日导师签名:日期:年月日注意事项1.设计(论文)的内容包括:1)封面(按教务处制定的标准封面格式制作)2)原创性声明3)中文摘要(300字左右)、关键词4)外文摘要、关键词5)目次页(附件不统一编入)6)论文主体部分:引言(或绪论)、正文、结论7)参考文献8)致谢9)附录(对论文支持必要时)2.论文字数要求:理工类设计(论文)正文字数不少于1万字(不包括图纸、程序清单等),文科类论文正文字数不少于1.2万字。
基于51单片机的步进电机控制系统设计
基于51单片机的步进电机控制系统设计中文摘要步进电机是一种受脉冲信号控制,并且能将脉冲信号转化为相应的角位移或者线位移的数字电动机。
由于步进电机具有步距误差不积累、运行可靠、结构简单、惯性小、成本低等优点,因此,被广泛使用于计算机外围电路、自动化控制装置以及其他的数字控制装置中,如打印机、钟表、数模转换设备等装置中。
随着科学技术的快速发展,相应的控制系统也产生了很多种类,步进电机的身影在众多领域中可以看到。
其中采用单片机作为控制核心的控制系统,由于其电路简单、成本低、可靠性强等优点,满足众多领域的需求,得到了大量的运用。
因此,研究基于单片机的步进电机控制系统,具有重要的现实意义。
本设计研究的是基于51单片机对步进电机的控制系统。
通过单片机的I/O端口输出时序方波作为控制信号,信号经过芯片ULN2003驱动芯片驱动步进电机进行不同的指令进行工作。
根据不同的需要,通过按键电路来控制步进电机的启停、正反转和加减速等功能,并在数码管上实时显示步进电机的工作状态。
本文给出了电路各个模块的电路图,并用Proteus的ISIS软件对控制系统的各个功能进行了仿真,并给出了相应的仿真结果图像。
关键词:单片机;步进电机;电机驱动;控制系统AbstractStepper motor controlled by a pulse signal, and a pulse signal can be converted to the corresponding angular displacement or linear displacement of the digital motor. As the stepper motor has a step error does not accumulate, reliable, simple structure, small inertia, low cost, and therefore, are widely used in computer peripheral circuits, automatic control devices and other digital control devices, such as printers, watches and clocks , digital to analog conversion equipment, and other devices. With the rapid development of science and technology, the corresponding control system also produced many types of stepper motor figure can be seen in many areas. Which uses microcontroller as the control of the control system, because of its simple circuit, lowcost, high reliability, etc., to meet the needs of many fields, we get a lot of use. Therefore, based on single-chip stepper motor control system has important practical significance.The design study is 51 single-chip stepper motor control system. As a control signal, the signal through the chip ULN2003 stepper motor drive to work through the microcontroller I / O port output timing square wave. Depending on the need, through the key circuit to control the start and stop, reversing and ramp functions such as stepper motors, stepper motors in real-time display and digital working condition. In this paper, the circuit diagram of each module, and with the ISIS Proteus software for each function control system simulation, and the simulation results are given corresponding image.Key words: microcontroller; stepper motor; motor drive; control system目录中文摘要 (I)Abstract (II)1 绪论 (1)1.1 步进电机及其发展过程 (1)1.2 步进电机在我国的应用及前景 (2)1.3 本设计的研究内容 (3)1.4 步进电机的性能指标及工作原理 (3)1.4.1 步进电机的特点 (3)1.4.2 步进电机的种类 (4)1.4.3 步进电机的主要性能指标 (5)1.4.4 步进电机的工作原理 (6)1.5 步进电机控制系统的原理 (8)2 总体方案设计 (10)2.1 设计思路的选择 (10)2.2 单片机芯片的选择 (12)2.3 驱动电机芯片的选择 (12)2.4 显示电路的选择 (13)2.5 步进电机的选择 (13)3 控制系统的硬件电路设计 (15)3.1 键盘控制电路 (15)3.2 单片机最小系统电路 (16)3.3 数码管显示电路 (18)3.4 步进电机的驱动电路 (20)3.5 步进电机的其他电路 (21)4 控制系统的软件设计 (23)4.1 主程序流程图 (23)4.2 读按键子程序流程图 (24)4.3 按键处理子程序流程图 (25)4.4 电机控制中断程序流程图 (26)5 仿真与测试 (28)5.1 仿真软件介绍 (28)5.2仿真的操作步骤 (28)5.3 电路板的焊接 (29)5.4 电路板的测试 (30)6 结论与展望 (32)致谢 (34)参考文献 (35)附录:系统总体电路图 (36)系统仿真原理图 (37)PCB打印图 (38)原件清单 (39)程序 (40)1 绪论1.1 步进电机及其发展过程步进电机是一种受脉冲信号控制,并且能将脉冲信号转化为相应的角位移或者线位移的数字电动机。
基于51单片机的步进电机的控制设计
勘电槽洗电借专理单片机应用系统设计报告设计题目:步进电机控制器设计专业班级: _____________________________ 学生姓名:____________________________________ 指导教师:____________________________________ 设计时间:2016^ 12 月设计要求及方案可以实现步进电机正转和反转控制及速度的控制,同时实现步进电机步数的控制。
2、设计方案本次设讣采用AT89C51单片机控制一个四相步进电机。
单片机输出脉冲序列, 驱动步进电机转动;并设置开关、按键电路,来控制步进电机的2挡转速,即加速、减速;以及步数的变化,即四拍驱动方式、八拍驱动方式,同时控制步进电机的转动方向,即正转、反转。
设讣方案总体框图:单片机最小系统开关、按键电路二、步进电机简介K步进电机工作原理步进电机是一种将电脉冲转化为角位移的执行机构。
当步进驱动器接收到一个脉冲信号,它就驱动步进电机按设定的方向转动一个固定的角度(称为“步距角”),它的旋转是以固定的角度一步一步运行的。
可以通过控制脉冲个数来控制角位移量,从而达到准确定位的LI的:同时可以通过控制脉冲频率来控制电机转动的速度和加速度,从而达到调速的LI的。
步进电机可以作为一种控制用的特种电机,利用其没有积累误差(精度为100%)的特点,广泛应用于各种开环控制。
步进电机是一种感应电机,它的工作原理是利用电子电路,将直流电变成分时供电的,多相时序控制电流,用这种电流为步进电机供电,步进电机才能正常丄作,驱动器就是为步进电机分时供电的多相时序控制器。
虽然步进电机已被广泛地应用,但步进电机并不能象普通的直流电机,交流电机在常规下使用。
它必须山双环形脉冲信号、功率驱动电路等组成控制系统方可使用。
因此用好步进电机却非易事,它涉及到机械、电机、电子及计算机等许多专业知识。
步进电机作为执行元件,是机电一体化的关键产品之一,广泛应用在各种自动化控制系统中。
基于51单片机的步进电机的课程设计
单片机课程设计题目:步进电机控制系统的设计编号:0802A组06学生姓名:同组者:指导教师:***2010年11月18日目录摘要 (4)第一章绪论 (5)1.1 关于步进电机 (5)1.2 选题的目的和意义 (6)第二章元器件的介绍 (8)2.1 步进电机 (8)2.2 89C51 (9)第三章步进电机控制系统硬件电路设计 (11)3.1 控制电路 (10)3.2 最小系统 (12)3.3 驱动电路 (13)3.4 显示电路 (14)3.5 总体电路 (14)第四章软件的设计 (16)4.1 方案论证 (16)4.2 主程序设计 (17)4.3 定时中断设计 (18)4.4 外部中断设计 (19)第五章仿真与调试 (25)5.1 Proteus软件介绍 (25)5.2 keil软件介绍 (25)5.3 仿真过程 (25)心得体会 (27)附录PCB板图及其三视图 (28)摘要能够实现步进电机控制的方式有多种,可以采用前期的模拟电路、数字电路或模拟与数字电路相结合的方式。
近年来随着科技的飞速发展,单片机的应用正在不断深入,同时带动传统控制检测日新月异更新。
本文介绍一种用A T89C51作为核心部件进行逻辑控制及信号产生的单片机技术和汇编语言编程设计的步进电机控制系统,步进电机背景与现状、硬件设计、软件设计及其仿真都做了详细的介绍,使我们不仅对步进电机的原理有了深入的了解,也对单片机的设计研发过程有了更加深刻的体会。
本控制系统采用单片机控制,通过人为按动开关实现步进电机的开关,复位。
该系统还增加了步进电机的加速及减速功能。
具有灵活方便、适用范围广的特点,基本能够满足实践需求。
关键字:步进电机单片机AbstractStepper motor control can be achieved in different ways, can be used early analog circuits, digital circuits or a combination of analog and digital circuit means. With the rapid development of science and technology in recent years, the application of SCM is a growing, while traditional control test drive rapid updates. This paper describes a core component of the AT89C51, as the signal generated by logic control and microcontroller technology and assembly language programming designed stepper motor control system, stepping motor background and present, hardware design, software design and simulation have made a detailed introduction, so we not only have a stepper motor-depth understanding of the principles, but also the design of microcontroller development process have a more profound experience.The control system uses SCM control, pressing the switch through the realization of human stepper motor switch, reset. The system also increased the stepper motor acceleration and deceleration. Has the flexibility for a wide range of features, the basic practice to meet the demand.Keywords: stepper motor microcontroller第一章绪论1.1 关于步进电机步进电机是将电脉冲信号转变为角位移或线位移的开环控制元步进电机件。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
课程设计报告课程设计名称:单片机系统综合课程设计课程设计题目:基于51单片机的步进电机控制院(系):计算机学院专业:计算机科学与技术(嵌入式)目录第1章总体设计方案 (1)1.1课程设计的内容和要求 (1)1.2课程设计原理 (1)1.3课程设计思路 (2)1.4实验环境 (3)第2章详细设计方案 (4)2.1实现方法 (4)2.2模块设计 (5)2.2.1 步进电机的驱动 (5)2.2.2 按键电路设计 (5)2.2.3 时钟产生及复位电路 (6)2.3主程序流程图图 (7)第3章调试及结果分析 (8)3.1调试步骤及方法 (8)3.2实验结果及分析 (8)参考文献 (9)附录1(源程序) (10)附录2(系统原理图) (14)附录3(器件清单) (15)第1章总体设计方案1.1 课程设计的内容和要求一、课程设计内容:步进电机是一种将电脉冲转换成角位移或线位移的电磁机械装置,也是一种能把输出解析为唯一增量和输入数字脉冲对应的驱动器件。
步进电机具有快速启动、停止的能力,精度高、控制方便,因此,在工业上得到了广泛应用。
利用单片机控制一个步进电机,而且要满足如下技术指标:(1)开始通电时,步进电机停止转动。
(2)单片机分别接按键开关K1、K2和K3,用来控制步进电机的转向,要求如下:当按下K1时,步进电机正转。
当按下K2时,步进电机反转。
当按下K3时,步进电机停止转动。
步进电机的工作方式有单四拍、双四拍、单双八拍。
二、课程设计要求:1. 独立完成课程设计任务;2. 通过老师当场验收;3. 交出完整的课程设计报告。
1.2课程设计原理步进电机是一种将电脉冲转化为角位移的执行机构。
通俗一点讲:当步进驱动器接收到一个脉冲信号,它就驱动步进电机按设定的方向转动一个固定的角度(及步进角)。
可以通过控制脉冲个来控制角位移量,从而达到准确定位的目的;同时可以通过控制脉冲频率来控制电机转动的速度和加速度,从而达到调整节拍的目的。
本次设计是采用步进电机28BYJ48型四相八拍电机,电压为DC5V—DC12V。
当对步进电机施加一系列连续不断的控制脉冲时,它可以连续不断地转动。
每一个脉冲信号对应步进电机的某一相或两相绕组的通电状态改变一次,也就对应转子转过一定的角度(一个步距角)。
当通电状态的改变完成一个循环时,转子转过一个齿距。
四相步进电机可以在不同的通电方式下运行,常见的通电方式有单(单相绕组通电)四拍(A-B-C-D-A),双(双相绕组通电)四拍(AB-BC-CD-DA-AB),八拍(A-AB-B-BC-C-CD-D-DA-A)。
单四拍、双四拍与八拍工作方式的电源通电时序与波形分别如图 1.1 (a)、(b)、(c)所示。
a. 单四拍b. 双四拍 c八拍图1.1步进电机工作时序波形图1.3课程设计思路(1) 提出方案电机的运转一般由脉冲和方向信号来控制的,脉冲的频率控制电机的转速,脉冲的个数控制电机的转角;方向信号的高、低电平控制着电机的正、反转。
用单片机控制步进电机,可以用一个输出口发送脉冲:高电平->延时->低电平->延时……延时的长短控制脉冲的频率,电平的转换次数就是脉冲个数。
因为步进电机的控制是通过脉冲信号来控制的,将电脉冲信号转变为角位移或线位移的开环控制元件。
所以怎样产生这个脉冲信号和产生怎样的信号是电机控制的关键。
(2) 方案论证用单片机来产生这个脉冲信号,通过单片机的P1口输出脉冲信号,因为所选电机是四相的,所以只需要P1口的低四位P1.0~P1.3分别接到电机的四根电线上。
定时器定时来调整电机的转速,通过键盘的按钮,就可以对步进电机启动和停止以及转动方向节拍的控制,单片机上P3.0~P3.1连的是按键,这里键盘上的D 键为启动与A键停止键,B键为反转键,C键为正转键,K0、K1键为节拍控制键。
用8051单片机作为控制芯片。
设计方案的确定对步进电机的控制和驱动方案:方案一:使用多个功率放大器件驱动电机,通过使用不同的放大电路和不同参数的器件,可以达到不同的放大要求,放大后能够得到较大的功率。
但是由于使用的是四相的步进电机,就需要对四路信号分别放大,由于放大电路很难做到完全一致,当电机的功率较大时运行起来会不稳定,而且电路的制作也比较复杂。
方案二:使用ULN2003芯片驱动步进电机,可以直接用单片机的Y/O口提供信号;而且电路简单,使用比较方便。
因此选择方案二作为本设计的驱动电路。
1.4 实验环境·硬件环境:lab6000实验箱,PC机。
·软件环境:WA VE应用软件第2章详细设计方案2.1 实现方法步进电机和普通电动机不同之处是步进电机接受脉冲信号的控制。
即步进电机是将电脉冲信号转换为机械角位移的执行元件。
步进电机的控制可以用硬件,也可以用软件通过单片机实现。
硬件方法是采用脉冲分配器芯片进行通用换相控制;而软件方法是用单片机产生控制脉冲来控制步进电机的运行状态,这种方法可简化电路,降低成本。
在用软件控制时,主要设计要点如下:●判断旋转方向;●按相序确定控制字;●按顺序输入控制字;●确定控制步数和每一步的延时时间。
由于单片机的驱动电流一般都比较小,不能直接驱动电机工作,所以单片机的I/O口输出必须接驱动电路,即功率驱动,才得以控制电机正常工作。
控制框图如下图所示:开始启动时点击处于停止转动状态,当按下启动按键时,点击开始转动并以单四拍作为默认启动方式,用两个开关按键用于节拍控制,用键盘按键控制停止、启动、正转、反转。
用8051作为总控制芯片。
ULN2003用于步进电机的驱动控制。
其中在键盘控制时用键盘扫描程序。
如图2.1总方案图。
图2.1 总方案图2.2模块设计2.2.1步进电机的驱动步进电机的驱动采用ULN2003,接到单片机的P1.0~P1.3,如图2.1步进电机驱动和单片机连线图。
图2.1 步进电机驱动和单片机连线图2.2.2按键电路设计键盘接口按不同标准有不同分类方法,按键盘排布,可以分为独立方式(一组相互独立的键盘)和矩阵(一行列组成矩阵)方式。
此次设计只用到了六个按键,故可采用独立按键,P3.0~P3.5分别接到K1~K6。
其原理图如图2.2 按键连线图。
图2.2 按键连线图2.2.3时钟产生及复位电路时钟电路部分晶振为6MHz,其原理图如图2.3 时钟产生及复位连线图。
图2.3 时钟产生及复位连线图2.3主程序流程图图进入主程序,首先是对键盘扫描,调用步进电机相关数据控制电机转动,若检测到有键按下,则进行相应的处理。
流程图如下图2.4主程序流程图。
图2.4 主程序流程图沈阳航空航天大学课程设计报告第3章调试及结果分析第3章调试及结果分析3.1 调试步骤及方法本电路经调试符合题目要求,各项技术指标均达到设计的目的。
具体操作控制方法如下:1、当电机启动按钮时,步进电机根据制定默认状态开始转动;2、当电机停止按钮时,步进电机停止转动;3、当电机正转按钮时,步进电机正转;4、当电机反转按钮时,步进电机反转;5、当电机按钮K1K0为00时,步进电机单四拍工作;6、当电机按钮K1K0为01时,步进电机双四拍工作;7、当电机按钮K1K0为11时,步进电机单双八拍工作。
3.2 实验结果及分析故障一:首先在设计总体方案时,思路上出现了一些问题,我首先是想在中断里完成许多应在中断之外完成的事,经过老师的指点,后来想清楚了。
只需在主函数调用就行了,并设定了一个参数对电机的转动节拍进行调控。
故障二:由于编写程序的经验不多,在计算电机节拍,并将其控制电机时,遇到了一些问题,节拍转换公式是找出来了,但怎样将其节拍表示出来,困惑了好久,最后还查阅资料才解决。
故障三:在键盘扫描时不太懂怎么进行扫描,总是不懂地址的扫描和读数据,我以为是程序方面出了问题,后来又仔细看了关于键盘扫描这些知识才弄明白了,最后扫描正。
参考文献[1]王迎旭.《单片机原理及及应用》.北京:机械工业出版社[2]张迎新.《单片微型计算机原理、应用及接口技术》.北京:国防工业出版社[3]郭天祥.《新概念51单片机C语言教程》.北京:电子工业出版社[4]蔡明文冯先成编著.《单片机课程设计》.北京:华中科技大学出版社[5]王晓明.《电动机的单片机控制》.北京航空航天大学出版社[6]张毅刚.刘杰.MCS-51单片机原理及应用[M].哈尔滨:哈尔冰工业大学出版社,2008附录1(源程序)#include <reg51.h> //头文件#include <stdio.h>#include <stdlib.h>#define uint unsigned int //宏定义整形#define uchar unsigned char //宏定义字符型void delay(uint xms); //延时函数,调整转速,数越小转的越快void keyw0(); //电机工作函数void keyw1(); //反转函数void keyz1(); //正转函数void keyover(); //停止函数unsigned int i;unsigned char xdata *q1=0x8002; //列地址unsigned char xdata *q2=0x8001; //行地址sbit key1=P3^0; // 节拍选择控制,00为单四拍;01为双四拍;11为单双八拍sbit key2=P3^1;// 单双八拍工作方式://A-AB-B-BC-C-CD-D-DAuchar code FFZ[]={0x08,0x0c,0x04,0x06,0x02,0x03,0x01,0x09}; //正转uchar code FFW[]={0x09,0x01,0x03,0x02,0x06,0x04,0x0c,0x08}; //反转//双四拍工作方式://AB-BC-CD-DAuchar code shuangz[]={0x0c,0x06,0x03,0x09};uchar code shuangw[]={0x09,0x03,0x06,0x0c};//单四拍工作方式://A-B-C-Duchar code danz[]={0x08,0x04,0x02,0x01};uchar code danw[]={0x01,0x02,0x04,0x08};void main{while(1){if((*q2&0x0f)==0x0f) //行扫描键盘{*q1=0xfb; //键盘第三列扫描给低电平if((*q2&0x0f)==0x0e) //按D启动电机{keyw0(); //调用电机工作函数}}}}void keyw0(){while(1){if((*q2&0x0f)==0x0d) keyz1(); //按C键正转;调用正转函数if((*q2&0x0f)==0x0b) keyw1(); //按B键反转;调用反转函数if((*q2&0x0f)==0x07) keyover(); //按A键停止;调用停止函数for(i=0;i<4;i++){ //默认以单四拍正转工作P1=danz[i];delay(30);}}}void keyz1() //正转函数{while(1){if((*q2&0x0f)==0x0e) keyw0();if((*q2&0x0f)==0x0b) keyw1();if((*q2&0x0f)==0x07) keyover();if(key1==1&&key2==0) //双四拍{for(i=0;i<4;i++){P1=shuangz[i];delay(30);}if(key1==1&&key2==1) //单双八拍{for(i=0;i<8;i++){P1=FFZ[i];delay(30);}}if(key1==0&&key2==0) //单四拍{for(i=0;i<4;i++){P1=danz[i];delay(30);}}}}void keyw1() //反转函数{while(1){if((*q2&0x0f)==0x0e) keyw0();if((*q2&0x0f)==0x0d) keyz1();if((*q2&0x0f)==0x07) keyover();if(key1==1&&key2==0) //双四拍{for(i=0;i<4;i++){P1=shuangw[i];delay(30);}}if(key1==1&&key2==1) //单双八拍{for(i=0;i<8;i++){P1=FFW[i];delay(30);}}if(key1==0&&key2==0) //单四拍for(i=0;i<4;i++){P1=danw[i];delay(30);}}}}void keyover() //停止函数{while(1){if((*q2&0x0f)==0x0e) keyw0(); //是否按了D启动P1=0xf0; // 停止}}void delay(uint xms) //延时函数{uint i,j;for(i=110;i>0;i--)for(j=xms;j>0;j--);}附录2(系统原理图)附录3(器件清单)Bill of Material for DJ.BomUsed Part Type Designator Footprint==== ====================== ========== ==========5 4.7K R1 R2 R3 DIP-16R4 R51 6MHZ X1 L51 10u C3 RB.2/.42 30p C1 C2 RAD-0.21 8051 U1 DIP-401 A K3 S/11 B K4 S/11 C K5 S/11 D K6 S/11 K0 S0 L101 K1 S1 L101 K2 S2 L101 MOTOR STEPPER M1 V.20/.101 ULN2003A U2 DIP-20。