基于51单片机的步进电机控制系统设计与实现 (基于51单片机的毕业设计)

基于51单片机的步进电机控制系统设计与实现

概述

步进电机是一种将电脉冲信号转换为角位移或线位移的机电一体化装置。由于其具有结构简单、控制精度高、响应速度快等优点,广泛应用于数控机床、打印机、机器人等领域。本文将介绍基于51单片机的步进电机控制系统的设计与实现。

步进电机的工作原理

步进电机的工作原理是基于磁极的相互作用。步进电机由定子和转子两部分组成。定子由多个电磁线圈绕制而成,转子由带有永磁体的齿轮组成。当电磁线圈通电时,会在定子上产生磁极,这些磁极与转子上的永磁体相互作用,产生力矩,使转子转动一个步距角。 基于51单片机的毕业设计

单片机步进电机控制系统设计

基于51单片机的步进电机控制系统主要包括以下几个部分:单片机:负责控制系统的工作。它接收来自外部的控制指令,通过计算产生相应的步进脉冲信号,并输出到步进电机驱动器。步进电机驱动器:负责放大单片机输出的步进脉冲信号,并将其传递给步进电机。步进电机:将电脉冲信号转换为角位移或线位移。

单片机选型

51单片机是一种广泛使用的8位微控制器。它具有体积小、功耗低、价格便宜等优点。对于步进电机控制系统,通常采用AT89C51或AT89S51单片机。

单片机编程

单片机编程采用C语言进行。程序的主要任务是接收来自外部的控制指令,根据指令计算出步进电机所需的步距数和步进方向,然后通过并行口输出步进脉冲信号给步进电机驱动

基于单片机的步进电机控制,有高手懂吗?本人的毕业论文.学哥学姐.懂的都说几句..谢谢啦..

基于单片机的步进电机控制系统摘要:本文论述了以单片机AT89C51为控制器的步进电机的控制系统,内容主要包括该系统的硬件组成,步进电机运行过程的详细分析,PC机与AT89C51单片机之间的串行通信以及AT89C51单片机对步进电机的控制程序流程图等。 关键字:单片机; 通信; 步进电动机1引言平为TTL电平,为了取得一致的传输信号,因此需要采用电平转换在电气时代的今天,电动机一直在现代化的生产和生活中起芯片MAX485。 根据实际需求选用AT89C51单片机,但由于其数着十分重要的作用。 无论是在工农业生产还是在日常生活中的家据存储区只有256个单元,需要扩展片外数据存储器6264。 此外用电器,都大量地使用着各种各样的电动机。 因此对电动机的控采用脉冲分配器CH250实现单片机对步进电动机的通电换向即脉制变得越来越重要了。 电动机的控制技术的发展得力于微电子技冲分配,通过光电耦合器4N25实现步进电动机与单片机的电气隔术、电力电子技术、传感器技术、永磁材料技术、自动控制技术、离,由于单片机本身的驱动能力有限,因此需要采用专门的驱动电微机应用技术的最新发展成就。 正是这些技术的进步使电动机控路单电压驱动来实现功率放大,从而为电动机提供足够大的电流。 制技术在近二十多年内发生了翻天覆地的变化。 其中电动机的控总体的硬件方框图如图1所示:制部分已由模拟控制逐渐让位于以单片机为主的微处理器控制。 本文采用硬件和软件相结合的办法实现单片机对步进电动机的运动控制。 2硬件部分[2]PC机与AT89C51单片机 之间的串行通信在硬件上是由转换器ATC-106和电平转换芯片MAX485来完成的。 由于PC机图1总体的硬件框图采用的是RS-232C接口标准,根据项目要求与生产中的实际情况,需要采用传输距离较远的RS-485,因此需要采用RS-232C3软件部分收稿日期:2007-05-18通过软件实现PC机与单片机间的异步串行通信。 PC机采用查询的方式发送和接收数据,单片机采用中断的方式接收PC机T ——步进电动机运行第 +1 步时所用的时间N1+N11传送的信息,从而确定步进电动机的旋转方向,走的总的脉冲数; 即匀速运行每一步所需要的时间采用软件延时法控制脉冲的分配,从而控制步进电动机的整个运 由于采用软件延时的方法来控制单片机发出脉冲的时间间行过程。 隔即通过改变脉冲的频率来改变步进电动机的运行速度。 在步进电动机匀加速运行阶段,只需按电动机每走一步所需要的时间3.1步进电动机运行的分析[4]来调用延时子程序即可。 根据步进电动机 的加减速要有严格的控制要求,那就是保证在-VV1-ii不失步和过冲的前提下,用最快的速度和最短的时间移动到指定=a (6) +TT1-ii位置。 本设计要求步进电动机的速度按图2所示运行。 —— 步进电动机匀加速运行阶段走第i步时的速度Vi —— 步进电动机匀加速运行阶段走第i步时所用的时间Ti由于步进电动机在匀加速运行阶段走最后一步时的速度与匀速运行时的速度V相同VN1LL=V= 又因为 = 将其代入=且 V VVVN1+N111-iiTTi1-i(2-6)TLTL-1-ii整理得到a=+TT-1ii22++(7)TaT0=LTTaTL( )-1-iii1-ii图2步进电动机的运行过程 通过软件调用一个开平方函数就可以求得首先令i=N1由图可知匀加速阶段与匀减速阶段的加速度和减速度大小等直到 、T ,这样就可以求出步进电动机匀、、T1TTT21-N3-N2-N111相同,方向相反,加减速的时间相同,因此只需算出加速段走的步加速运行阶段从静止开始每走一步所用的时间。 电动机在升速数就可以知道减速时所走的步数,二者是一样的。 计算过程如下:过程中所走的总的步数即脉冲数为 ,从静止开始步进电动机N1首先,恒速运行时的速度V是由用户设置的,因此是一个已在匀加速阶段每走一步,升速阶段的总步数就减1,通过软件延时知量。 加速度a,一个脉冲走过的距离L,整个运行过程所走的步的方法来控制走每一步所用的时间,加速阶段的延时时间是逐渐数即总的脉冲数P也都是给定值。 运行方向是根据用户的要求,这样进行下、直到 、 、变短的,依次为 、TTTTTT13-N22-N1N1-N111由软件确定的。 去,直到 =0,加速过程结束,进入恒速运行阶段。 步进电动机N1接着计算步进电动机运行时间N在恒速过程中走的总步数为 ,从恒速运行开始,电动机每走一3—— 为步进电动机匀加速运行时所用根据 tatV =1 1步,恒速总步数就减1,因为恒速运行时走每一步用的时间都是相的时间同的,因此软件延时的时间均为 ,直到恒速总步数减为0,恒TV1+N1可以求出t = (1)1a速过程结束,进入减速运行阶段。 由于匀减速运行的过程是加速由于匀加速阶段与匀减速阶段的加速度大小相同,因此匀过程的逆过程,在匀加速运行阶段,步进电动机走的总的步数为t加速运行阶段所用的时间t 与匀减速运行时所用的时间 是相21,且 =N ,减速阶段电动机每走一步,减速总步数就减1,NNat。 因为是匀加速运行,所以S=同的,即t =,由a和tt软件延时的时间是逐渐变常的,依次为 、、 、 直TTT TN1-N2-N 3-N111 1求出步进电动机匀加速运行阶段走过的总的距离,通过2到 、 ,减速总步数减为0,减速过程结束,电动机停止运行。 TSTatN=(2)=1LL 3.2通信软件的设计可以求出匀加速运行阶段步进电动机走的总步数即脉冲[5]PC机与AT89C51的串行通信程序 由两部分组成:一部分数。 由于步进电动机匀减速运行阶段是匀加速运行阶段的逆过是PC机的通信程序,另一部分是AT89C51的通信程序。 PC机程,因此匀减速运行阶段所走的步数与匀加速运行阶段所走N2发送时,AT89C51单片机一定接收;PC机接收时,AT89C51单片的步数 是相同的,即 = ,由P、 和 可以求出步进电N N NN N1121 2机肯定发送。 而且对应发送和接收的字符要相同,否则不能达到动机匀速运行阶段走的总步数即脉冲数为 ,即N3正常通信的目的。 此次设计PC机采用8086/8088汇编语言编N=P- - =P-2 (3)NNN 13 12写,AT89C51单片机端采用MCS-51语言编写。 为了保证数据步进电动机匀速运行时走每一步即每一个脉冲所需要的时通信的可靠性,制定通信协议如下:间是相同的,根据① PC机与AT89C51单片机都可以发送和接收L(4)V=② PC机与AT89C51单片机的通信波特率为9600bps,采T1+N1L(5)因此 T=用的晶振频率为24MHZ,定时器T1工作在模式2,SMOD设置

本文原创来源:电气TV网,欢迎收藏本网址,收藏不迷路哦!

相关阅读

添加新评论