《计算机控制技术课程设计说明书三相步进电机控制系统的设计》由会员分享,可在线阅读,更多相关《计算机控制技术课程设计说明书三相步进电机控制系统的设计(18页珍藏版)》请在金锄头文库上搜索。
1、目录1 设计任务及要求12 方案比较及选择12.1 电机驱动选择方案12.2 LED显示选择方案12.3 按键状态的读取23 系统实现的原理23.1 步进电机控制工作原理23.1.1 步进电机的启停控制23.1.2 步进电机的转向控制23.2 系统设计思路23.3 系统的整体框图34 系统的硬件设计44.1 总体设计44.2 步进电机控制电路54.2.1启/停控制、正/反转控制、工作模式控制电路分析54.2.2步进电机控制电路54.3显示电路64.3.1发光二极管显示电路64.3.2八段数码管显示电路75系统软件设计85.1 总体设计85.1.1步进电机的工作方式85.1.2 系统总体流程图9
2、5.2 关键模块设计115.2.1. 三相步进电机模块设计115.2.2显示模块设计126 小结及体会13附录:14参考文献16三相步进电机控制系统的设计1 设计任务及要求 设计一个三相步进电机控制系统,要求系统具有如下功能:用K0-K2做为通电方式选择键,K0为三相单三拍,K1为三相双三拍,K2为三相六拍;K3为启动/停止控制、K4方向控制;用4位LED数码管显示工作步数。用3个发光二极管显示状态:正转时红灯亮,反转时黄灯亮,不转时绿灯亮。2 方案比较及选择2.1 电机驱动选择方案方案1:使用功率三极管等电子器件搭建成功率驱动电路来驱动电机的运行。优点是电路简单,但信号不够稳定,器件较大而不
3、便电路的集成。方案2:使用专门的电机驱动芯片ULN2004A来驱动电机运行。其优点是便于电路的集成,且驱动简单,驱动信号稳定,不受外部干扰。通过对方案的比较,我选择使用电机驱动芯片来作为驱动。2.2 LED显示选择方案方案1:把所要显示的数据通过专用的七段显示芯片的转换输出给LED显示屏。其优点是输出简单,可以简化程序,但增加了芯片的费用。方案2:通过软件把所要的数据转化为七段显示的数据,直接通过单片机接口来显示,其优点是简化了电路,但增加了软件编写的负担。通过对方案的比较,我选择通过软件编写来输出显示信号。2.3 按键状态的读取 方案1:把按键接到单片机的中断口,若有按键按下,单片机接收到中
4、断信号,再通过软件编写的中断程序来执行中断,优点是接线简单,简化了电路,但软件编写较为复杂,不易掌握。 方案2:不使用中断,直接把开关分别接在单片机的接口上,通过查询端口信号来动作。其优点是程序得到简化,可读性加强。 通过对方案的比较,我选择通过查询方式来读取端口信号。3 系统实现的原理3.1 步进电机控制工作原理3.1.1 步进电机的启停控制步进电机由于其电气特性,运转时会有步进感 ,即振动感。为了使电机转动平滑 ,减小振动 ,可在步进电机控制脉冲的上升沿和下降沿采用细分的梯形波 ,可以减小步进电机的步进角 ,提高电机运行的平稳性。在步进电机停转时 ,为了防止因惯性而使电机轴产生顺滑 ,则需
5、采用合适的锁定波形 ,产生锁定磁力矩 ,锁定步进电机的转轴 ,使步进电机的转轴不能自由转动。3.1.2 步进电机的转向控制如果给定工作方式正序换相通电 ,步进电机正转。若步进电机的励磁方式为三相六拍 ,即 A-AB-B-BC-C-CA。如果按反序通电换相 ,即则电机就反转。其他方式情况类似。3.2 系统设计思路 此次我们所设计的是一个步进电机控制系统,主要由单片机80C51,3相步进电机,7段数码管,及一些其他相关元件设计而成。可以通过开关来控制系统的启/停工作,当系统运转时,用开关来控制方向,并使相应的指示灯亮起,同样由开关来选择工作模式。运转时,用4位7段数码管来输出步数。最后根据思路所设
6、计出来的硬件图设计相适应的软件。3.3 系统的整体框图80c51单片机整体控制LED显示模块开关选择电机工作模式LED显示灯显示电机工作状态三相步进电机模块图1 系统的整体框图4 系统的硬件设计4.1 总体设计设计一个单片机三相步进电机控制系统要求系统具有如下功能:(1) 用K0-K2做为通电方式选择键,K0为单三拍,K1为双三拍,K2为三相六拍;(2) K3、K4分别为启动和方向控制;(3) 正转时红色指示灯亮,反转时黄色指示灯亮,不转时绿色指示灯亮;(4) 用4位LED显示工作步数。根据设计要求用PROTEUS所做的硬件连线图如下图1:图2 总体硬件连线4.2 步进电机控制电路4.2.1启
7、/停控制、正/反转控制、工作模式控制电路分析原理图如下:图3 按键控制图(1)K3为启/停控制开关,控制整个系统的开启和关闭。(2)K4为正/反转控制开关,控制步进电机的转向。(3)K0-K3为工作模式控制开关,KO接电时,为步进电机单三拍工作模式;K1接电时,为步进电机双三拍工作模式;K2接电时,步进电机工作模式为三相六拍。4.2.2步进电机控制电路将80c51的P1.0-P1.3作为步进电机的输出控制口。原理图如下:图4 步进电机的输出控制口4.3显示电路4.3.1发光二极管显示电路用3个不同颜色的发光二极管来作为指示灯显示,将P3.5接红灯,P3.6接黄灯,P3.7接绿灯,正转时红色指示
8、灯亮,反转时黄色指示灯亮,不转时绿色指示灯亮,并加上3个保护电阻。原理图如下: 图5 指示灯接线图4.3.2八段数码管显示电路由80c51的P0口取出显示码,从80c51的P2.0-P2.3输出位选码,设计中我们主要用到4位显示步数既可。原理图如下: 图6 LED接线图5系统软件设计5.1 总体设计5.1.1步进电机的工作方式(1)三相单三拍工作方式 在这种工作方式下,A、B、C三相轮流通电,电流切换三次,磁场旋转一周,转子向前转过一个齿距角。因此这种通电方式叫做三相单三拍工作方式。这时步距角b (度)为 b = 360 /mz (公式1)式中:m定子相数; z 转子齿数单三拍的数学模型: 步
9、序 控制位工作状态控制模型P1.7P1.6P1.5P1.4P1.3P1.2C相P1.1B相P1.0A相100000001A01H 200000010B02H300000100C04H表1(2)三相六拍工作方式 在这种工作方式下,绕组以AABBBCCCAA时序(或反时序)转换6次,磁场旋转一周,转子前进一个齿距,每次切换均使转子转动1. 5,故这种通电方式称为三相六柏工作方式。其步距角b 为:b = 360 /2mz = 180 /mz (公式2)六拍的数学模型: 步序 控制位工作状态控制模型P1.7P1.6P1.5P1.4P1.3P1.2C相P1.1B相P1.0A相100000001A01H
10、200000011AB03H300000010B02H400000110BC06H500000100C04H600000101CA05H 表2 (3)双三拍工作方式 这种工作方式每次都是有两相导通,两相绕组处在相同电压之下,以ABBCCAAB (或反之)方式通电,故称为双三拍工作方式。以这种方式通电,转子齿所处的位置相当于六拍控制方式中去掉单三拍后的三个位置。它的步距角计算公式与单三拍时的公式相同。极分度角/齿距角= R + k1/m进一步化简得齿数z:z = q (mR + k) (公式3)式中:m相数; q每相的极数; k (m - 1)的正整数;R正整数,为0、1、2、3。双三拍的数学模
11、型:步序 控制位工作状态控制模型P1.7P1.6P1.5P1.4P1.3P1.2C相P1.1B相P1.0A相100000011AB03H 200000110BC06H300000101CA05H表35.1.2 系统总体流程图 设计说明:首先复位单片机,然后从P3口读出开关状态,判断是否启动,没启动绿灯亮重新确认启动。启动后再次读取P3口数据,判断工作方式并将对应的用来存储步进电机工作方式字的数组首地址值给q。由P3.4口的双向开关来控制步进电机的正反转,如果是正转则红灯亮,反转则绿灯亮。在电机每走一步后,步数记数加1,然后通过LED显示把工作步数显示出来。再从P3口把状态信息读出来,与之前的P
12、3口的状态信息进行比较。如果状态信息没有改变,电机继续运行。如果状态信息改变了,就需要重新返回程序的开端,对电机的运行状态进行判断,让电机重新以新的状态运行。由此,开关的状态在电机每走一步都会查询一遍,做到实时地反映。NNYY单片机80c51 给步进电机复位启动?绿灯亮N判断工作方式q存储方式字地址指针b 正向控制模型指针P3.4=1?正转反转红灯亮黄灯亮延时,且模型地址加1总步数加1显示总步数P3口状态是否改变b 反向控制模型地址P1口输出控制模型Y重新启动P3.0=1?P3.1=1?P3.2=1?NNNY图7 总体流程图5.2 关键模块设计5.2.1. 三相步进电机模块设计设计说明:在此设
13、计中,采用的是三相步进电机,对于步进电机模块的程序设计采用循环程序设计方法。先把正反转向的控制模型存放在内存单元中,然后再逐一从单元中取出控制模块并输出。首先启动,选择步进电机的拍数,输入步数,然后读入正反转的控制模型驱动步进电机转动。 三相步进电机的流程框图:三相步进电机控制程序是正转吗?b反向控制模型地址N取控制模型输出控制模型延时,模型地址+1NYNYb正向控制模型指针控制模型=00H?吗初始化 图8 三相步进电机的流程框图5.2.2显示模块设计设计说明:显示模块是用4位八段数码管来显示工作步数。先将显示码存入数组中,指向最左边一位,然后取出要显示的数据,指向换码表首地址,取出显示码,从P0口输出