当前位置:首页 > 基于单片机的步进电机控制(毕业设计论文)
毕业论文
法可有两种:
1. 软件延时法:改变延时的时间长度就可以改变输出脉冲的频率,但这种方法CPU长时间等待,占用大量的机时,因此没有实践价值。
2. 定时器中断法:在中断服务子程序中进行脉冲输出操作,调整定时器的定时常数就可以实现调速,这种方法占有的CPU时间较少,在各种单片机中都能实现,是一种比较实用理想的调速方法。
定时器法利用定时器进行工作,为了产生步进脉冲,要根据给定的脉冲频率和单片机的机器周期来计算定时常数,这个定时器决定了定时时间,当定时时间到而使定时器产生溢出时发生中断,在中断子程序中进行改变P1.0的电平状态的操作,这样就可以得到一个给定频率的方波输出,改变定时常数,就可以改变方波的频率,从而实现调速。
5.2 步进电机的位置控制
步进电机的位置控制,指的是控制步进电机带动执行机构从一个位置精确地运行到另一个位置,步进电机的位置控制是步进电机的一大优点,它可以不用借助位置传感器而只需要简单的开环控制就能达到足够的位置精度,因此应用很广。步进电机的位置控制需要两个参数:
1. 第一个参数:步进电机控制执行机构当前的位置参数(我们称为绝对位置),绝对位置时有极限的,其极限时执行机构运动的范围,超越了这个极限就应报警。
2. 第二个参数:从当前位置移动到目标位置的距离 我们可以用折算的方式将这个距离折算成步进电机的步数,这个参数是外界通过键盘或可调电位器旋钮输入的,所以折算的工作应该在键盘程序或A/D转换程序中完成。
对步进电机位置控制的一般作法是:步进电机每走一步,步数减1,如果没有失步存在,当执行机构到达目标位置时,步数正好减到0,因此,用步数等于0来判断是否移动到目标位,作为步进电机停止运行的信号。
5.3 步进电机的加减速控制
步距角和转速大小不受电压波动和负载变化的影响,也不受各种环境条件诸如温度、压力、振动、冲击等影响,而仅仅与脉冲频率成正比,通过改变脉冲频率的高低可以大范围地调节电机的转速,并能实现快速起动、制动、正反转、加减速,而且有自锁的能力,不需要机械制动装置,不经减速器也可获得低速运行。它每转过一周的步数是固定的,只要不丢步,角位移误差不存在长期积累的情况,主要用于数字控制系统中,精度高,运行可靠。如采用位置检测和速度反馈,亦可实现闭环控制。
14
毕业论文
步进电机驱动执行机构从A点到B点移动的时,要经历升速,恒速,减速过程,如果启动时一次将速度升到给定速度,由于启动频率超过极限启动频率,步进电机就有失步现象,因此会造成不能正常启动,如果到终点时突然停下来,由于惯性作用 ,步进电机会发生过冲现象,会造成位置精度降低。如果升速非常缓慢的升降速,步进电机虽然不会发生失步和过冲现象,但影响执行机构的工作效率,所以,对步进电机的加减速要有严格的要求,那就是保证在不失步和过冲的前提下,用最快的速度(或最短的时间)移动到有可能指定位置。为满足加减速要求,步进电动机运行通常按照加减速曲线进行。图5.1是加减速运行曲线。加减速运行曲线没有 一个固定的模式,一般根据经验和实验得到的。最简单的是匀加速和匀减速曲线,如下图所示:
图5.1 加减速曲线图
其加减速曲线都是直线,因此容易编程实现。按直线加速时,加速度是不变的,因此要求转矩也应该是不变的。但是,由于步进电动机的电磁转矩玉转速时非曲线关系,因而加速度玉频率也应该是非曲线关系。因此,实际上当转速增加时,转矩下降,所以,按直线加速时,有可能造成因转矩不足而产生失步的现象。
采用指数加、减速曲线或S形(分段指数曲线)加、减速曲线是最好的选择。步进电机的运行可以根据距离的长短分如下3种情况处理:
1. 短距离
由于距离较短,来不及升到最高速,因此,在这种情况下,步进电机以洁净启动频率运行,运行过程没有加、减速。
2. 中、短距离
在这样的距离里,步进电机只有加、减速过程,而没有恒速过程。 3. 中、长距离
在这样的距离里,步进电机不经有加、减速过程,而且还有恒速过程。
由于距离较长,要尽量缩短用时,保证快速反应性。因此,在加速时,尽量用接近启动频率启动,在恒速时,尽量工作在最高速。单片机在用定时器法调速时,用改变定时常数的方法来改变输入步进脉冲频率,达到改变转速的目的,对于MCS-51系列单片机,其定时器属于加1定时器。因此,在步进电机
15
毕业论文
加速时,定时常数应增加;减速时,定时常数应减小。如果采用非线性加、减速曲线,要用离散法将加减速曲线离散化,将离散所得的转速序列所对应的定时常数序列,做成表格存储在程序存储器重。在程序运行中,使用查表得方式重装定时常数,这样做比用计算机节省时间,提高系统的响应速
第六章 步进电机的程序设计
6.3 程序框图
根据设计任务,可画出控制步进电机正反转,加减速控制,工作方式为双时钟,程序框图如下:
16
毕业论文
改变P0.0状态 是 P0.0=0? 否 正转 反转 加速步数减1 极步数减1 否 级步数=0? 是 加速1级计算级步数 加速步数=0? 指针指向恒速 减速步数减1 级步数减1 否 级步数=0? 是 减速一级计算级步数 减速步数=0? 复位 图6.4 基于单片机的步进电机控制程序框图
17
共分享92篇相关文档