一种基于单片机的步进电机控制器的研制
- 格式:pdf
- 大小:133.67 KB
- 文档页数:3
摘要本文应用单片机AT89C51和脉冲分配器PMM8713,步进电机驱动器,光电隔离器4N25等,构建了步进电机控制器和驱动器为一体的步进电机控制系统。
通过AT89C51和脉冲分配器PMM8713完成步进电机的各种运行控制方式,实现步进电机在3相6拍的工作方式下的正反转控制和加减速控制。
并通过步进电机丝杠连动,带动XY工作台的直线运动,实现从起点A点到预定点B点的位移控制。
整个系统采用模块化设计,结构简单,可靠,通过人机交互换接口可实现各功能设置,操作简单,易于掌握。
该系统可应用于步进电机在机电一体化控制等大多数场合。
关键词:步进电机单片机控制目录绪论 (1)1、步进电机及其发展 (1)1.1步进电机在我国的发展应用及前景 (2)1.2本文研究内容 (2)2、步进电机的分类、结构、工作原理及特性 (2)2.1步进电机的概念 (2)2.2步进电机的特点 (3)2.3步进电机的结构及工作原理 (3)2.4步进电机的常用术语 (4)3、步进电机的单片机控制 (5)3.1步进电机控制系统组成 (5)3.2步进电机控制系统原理 (6)3.3脉冲分配 (6)3.4步进电机与微型机的接口电路 (8)4、步进电机的运行控制 (9)4.1步进电机的速度控制 (9)4.2步进电机的位置控制 (9)4.3步进电机的加减速控制 (10)5、步进电机的程序设计 (11)5.1程序框图 (11)结论 (13)致谢辞 (13)参考文献 (13)绪论步进电机是将电脉冲信号转变为角位移或线位移的开环控制元步进电机件。
在非超载的情况下,电机的转速、停止的位置只取决于脉冲信号的频率和脉冲数,而不受负载变化的影响,当步进驱动器接收到一个脉冲信号,它就驱动步进电机按设定的方向转动一个固定的角度,称为“步距角”,它的旋转是以固定的角度一步一步运行的。
可以通过控制脉冲个数来控制角位移量,从而达到准确定位的目的;同时可以通过控制脉冲频率来控制电机转动的速度和加速度,从而达到调速的目的。
D10-基于单片机旳步进电机控制系统一、理解什么是步进电机以及其工作原理步进电机是数字控制电机,步进电机旳运转是由电脉冲信号控制旳,其角位移量或线位移量与脉冲数成正比,每个一种脉冲,步进电机就转动一种角度(不距角)或前进、倒退一步。
步进电机旋转旳角度由输入旳电脉冲数确定,因此,也有人称步进电机为数字/角度转换器。
步进电机旳各相绕组按合适旳时序通电,就能使步进电机转动。
当某一相绕组通电时,对应旳磁极产生磁场,并与转子形成磁路,这时,假如定子和转子旳小齿没有对齐,在磁场旳作用下,由于磁通具有力图走磁阻最小途径旳特点,则转子将转动一定旳角度,使转子与定子旳齿互相对齐,由此可见,错齿是促使电机旋转旳原因。
二、步进电机旳特点(1)步进电机旳角位移与输入脉冲数严格成正比,因此当它转一转后,没有合计误差,具有良好旳跟随性。
(2)由步进电机与驱动电路构成旳开环数控系统,既非常以便、廉价,也非常可靠。
同步,它也可以有角度反馈环节构成高性能旳闭环数控系统。
(3)步进电机旳动态响应快,易于启停、正反转及变速。
(4)速度可在相称宽旳范围内平滑调整,低速下仍能保证获得很大旳转矩,因此一般可以不用减速器而直接驱动负载。
(5)步进电机只能通过脉冲电源供电才能运行,它不能直接用交流电源或直流电源。
(6)步进电机自身旳噪声和振动比较大,带惯性负载旳能力强。
三、步进电机旳控制步进电机旳控制重要包括换相次序旳控制、速度控制、速度控制、加减速控制等,控制系统就是运用单片机旳功能实现以上控制旳系统,即本次设计旳目旳。
四、示意图五、硬件设计计划本设计旳硬件电路只要包括控制电路、最小系统、驱动电路、显示电路四大部分。
最小系统只要是为了使单片机正常工作。
控制电路只要由开关和按键构成,由操作者根据对应旳工作需要进行操作。
显示电路重要是为了显示电机旳工作状态和转速。
驱动电路重要是对单片机输出旳脉冲进行功率放大,从而驱动电机转动。
(1)控制电路根据步进电机旳工作原理可以懂得,步进电机转速旳控制重要是通过控制通入电机旳脉冲频率,从而控制电机旳转速。
基于单片机的步进电机控制电路设计
步进电机是一种应用广泛的电机,它的控制方式是通过逐步改变电流来驱动电机转动。
基于单片机的步进电机控制电路设计可以使步进电机的控制更加精确、方便和自动化。
下面将介绍一下如何设计一台基于单片机的步进电机控制电路。
首先,我们需要选择合适的单片机。
对于步进电机控制,需要一个I/O口数目足够的单片机,并且要求计算速度快、性能稳定。
常用的单片机有AT89C51、AVR、PIC、STM32等,其
中STM32拥有强大的计算能力和外设支持,非常适合用于步
进电机控制电路的设计。
接下来,我们需要考虑步进电机的驱动方式。
步进电机可以采用全步进或半步进两种方式驱动。
全步进控制方式会让电机一步步转动,步距为180度,转速慢但精确度高,而半步进控制方式可以让电机先半步,再进入全步进控制,提高了转速同时又保持了较高的精度。
最后,我们需要设计电路连接和代码编写。
在电路连接方面,需要将单片机输出引脚和驱动芯片的控制引脚相连,同时将驱动芯片输出端和电机的相应引脚相连。
在代码编写方面,需要根据所选单片机的指令集来编写步进电机控制引脚输出的程序,实现步进电机转速和方向的控制。
综上所述,基于单片机的步进电机控制电路设计需要选取合适的单片机,选择合适的步进电机驱动方式,并根据电路连接和
代码编写来实现电机的精确控制。
这样设计出的步进电机控制电路可以应用于各种机械设备控制,使之更加智能化和自动化。
基于51单片机的步进电机控制系统设计步进电机是一种特殊的直流电动机,具有定角度、定位置、高精度等特点,在许多领域得到广泛应用,如机械装置、仪器设备、医疗设备等。
本文将基于51单片机设计一个步进电机控制系统,主要包括硬件设计和软件设计两部分。
一、硬件设计步进电机控制系统的硬件设计主要包括51单片机、外部电源、步进电机驱动模块、以及其他辅助电路。
1.51单片机选择由于步进电机控制需要执行复杂的算法和时序控制,所以需要一个性能较高的单片机。
本设计选择51单片机作为主控芯片,因为51单片机具有丰富的外设接口、强大的计算能力和丰富的资源。
2.外部电源步进电机需要较高的电流供给,因此外部电源选择稳定的直流电源,能够提供足够的电流供电。
电源电压和电流的大小需要根据具体的步进电机来确定。
3.步进电机驱动模块步进电机驱动模块是连接步进电机和51单片机的关键部分,它负责将51单片机输出的脉冲信号转化为对步进电机的驱动信号,控制步进电机准确转动。
常用的步进电机驱动芯片有L297、ULN2003等。
4.其他辅助电路为了保证步进电机控制系统的稳定运行,还需要一些辅助电路,如限流电路、电源滤波电路、保护电路等。
这些电路的设计需要根据具体的应用来确定。
二、软件设计1.系统初始化系统初始化主要包括对51单片机进行外部中断、定时器、串口和IO 口等初始化设置。
根据实际需求还可以进行其他模块的初始化设置。
2.步进电机驱动程序步进电机的驱动程序主要通过脉冲信号来控制电机的转动。
脉冲信号的频率和脉冲宽度决定了电机的转速和运行方向。
脉冲信号可以通过定时器产生,也可以通过外部中断产生。
3.运动控制算法步进电机的运动控制可以采用开环控制或闭环控制。
开环控制简单,但无法保证运动的准确性和稳定性;闭环控制通过对电机转动的反馈信号进行处理来调整脉冲信号的生成,从而实现精确的运动控制。
4.其他功能设计根据具体的应用需求,可以加入其他功能设计,如速度控制、位置控制、加速度控制等。
基于单片机AT89C52的步进电机的控制器设计步进电机是一种非常常见的电机类型,由于其具有精准定位、适应高速运动以及控制简单等特点,被广泛应用于各种自动化设备中。
本文将从步进电机的工作原理、控制方式以及基于单片机AT89C52的步进电机控制器设计等方面展开阐述。
首先,我们来了解步进电机的工作原理。
步进电机是一种特殊的同步电动机,它具有内置的磁化轭,在没有外部励磁的情况下也能自动旋转。
步进电机的旋转是由控制电流方向和大小来实现的。
通常情况下,步进电机每转动一定角度,称为“步距角”,它可以是1.8度、0.9度、0.45度等,不同的步距角决定了电机的分辨率。
步进电机的控制方式主要有全步进和半步进两种。
全步进是指每次控制信号脉冲后,电机转动一个步距角。
而半步进则是在全步进基础上,在脉冲信号中引入一半步距角的微调。
控制信号脉冲可以是脉冲序列或者方波信号。
基于单片机AT89C52的步进电机控制器设计主要包括控制信号发生器的设计和步进电机驱动电路的设计。
控制信号发生器负责产生相应的控制信号脉冲,而步进电机驱动电路将这些脉冲信号转化为电流信号驱动步进电机。
控制信号发生器的设计可以采用定时器/计数器模块来实现。
AT89C52芯片具有可编程的定时器/计数器,可以用来产生控制信号的脉冲。
通过设置定时器的工作方式和计数值,可以实现不同频率、占空比的控制脉冲。
步进电机驱动电路的设计主要包括功率级驱动电路和电流控制电路。
功率级驱动电路负责将控制信号转化为足够大的电流驱动步进电机,通常采用功率放大器来实现。
电流控制电路则用来控制驱动电流的大小,使步进电机能够顺畅工作。
电流控制电路通常采用可调电阻、电流检测电阻和比较器等元件组成。
在步进电机控制器设计中,还需要考虑到步进电机的特性和应用需求。
例如,步进电机的电源电压、额定电流、阻抗、扭矩等参数需要与驱动电路匹配。
此外,还需要考虑到步进电机的机械结构、位置传感器、防重叠措施等因素。
基于单片机的步进电机控制系统设计引言:步进电机是一种常用的电机类型,具有精准的位置控制、高效的能量转换等特点。
在许多自动化设备中广泛应用,如数控机床、3D打印机、机器人等。
本文将以基于单片机的步进电机控制系统设计为主题,介绍系统的硬件设计、软件设计以及实验验证。
一、硬件设计1.步进电机选型:根据实际应用需求,选择适当的步进电机。
包括步距角、转速范围、扭矩要求等等。
2.电源设计:步进电机需要驱动电压和电流,根据步进电机的额定电压和电流选用适当的电源。
3.驱动电路设计:步进电机通常需要驱动电路来控制电流和脉冲序列。
常见的驱动电路有全桥驱动器、半桥驱动器等。
4.信号发生器设计:步进电机通过脉冲信号来控制转动角度和速度,因此需要信号发生器来产生合适的脉冲序列。
常见的信号发生器有定时器、计数器等。
5.单片机接口设计:单片机作为步进电机控制系统的核心,需要与其他硬件进行通信。
因此需要设计合适的接口电路,将单片机的输出信号转换为驱动电路和信号发生器所需的电压和电流。
二、软件设计1.单片机程序框架设计:根据具体的单片机型号和开发环境,设计合适的程序框架。
包括初始化设置、主循环、中断处理等。
2.脉冲生成程序设计:根据步进电机的控制方式(如全步进、半步进、微步进等),设计脉冲生成程序。
通过适当的延时和输出信号控制,产生合适的脉冲序列。
3.运动控制程序设计:设计运动控制程序,实现步进电机的前进、后退、加速、减速等功能。
根据具体需求,可以设计不同的运动控制算法,如速度环控制、位置环控制等。
4.保护机制设计:为了保护步进电机和控制系统,设计合适的保护机制。
如过流保护、过压保护、过载保护等。
三、实验验证1.硬件连接:将步进电机、驱动电路和单片机按照设计进行连接。
2.软件调试:通过单片机编程,调试程序代码。
确保脉冲生成、运动控制等功能正常工作。
3.功能测试:对步进电机控制系统进行功能测试,包括正转、反转、加速、减速等功能。
通过观察步进电机的运动状态和测量相关参数来验证系统设计的正确性和性能。
《基于单片机的步进电机控制系统研究》篇一一、引言随着科技的发展,步进电机因其高精度、低噪音、易于控制等优点,在各个领域得到了广泛的应用。
然而,传统的步进电机控制方式存在控制精度低、响应速度慢等问题。
因此,基于单片机的步进电机控制系统应运而生,其具有体积小、控制精度高、响应速度快等优点。
本文旨在研究基于单片机的步进电机控制系统的设计原理、实现方法以及应用前景。
二、步进电机控制系统的基本原理步进电机是一种将电信号转换为机械运动的设备,其运动过程是通过一系列的步进动作实现的。
步进电机的控制原理主要是通过改变电机的电流和电压,使电机按照设定的方向和速度进行旋转。
三、基于单片机的步进电机控制系统设计基于单片机的步进电机控制系统主要由单片机、步进电机驱动器、步进电机等部分组成。
其中,单片机是控制系统的核心,负责接收上位机的指令,并输出相应的控制信号给步进电机驱动器。
步进电机驱动器则负责将单片机的控制信号转换为适合步进电机工作的电流和电压。
在硬件设计方面,我们选择了一款性能稳定、价格适中的单片机作为主控制器,同时设计了相应的电路和接口,以实现与上位机和步进电机驱动器的通信。
在软件设计方面,我们采用了模块化设计思想,将系统分为初始化模块、控制模块、通信模块等部分,以便于后续的维护和升级。
四、基于单片机的步进电机控制系统的实现在实现过程中,我们首先对单片机进行了初始化设置,包括时钟设置、I/O口配置等。
然后,通过编程实现了对步进电机的控制,包括步进电机的启动、停止、正反转以及速度调节等功能。
此外,我们还实现了与上位机的通信功能,以便于实现对步进电机的远程控制和监控。
五、实验结果与分析我们通过实验验证了基于单片机的步进电机控制系统的性能。
实验结果表明,该系统具有较高的控制精度和响应速度,能够实现对步进电机的精确控制。
同时,该系统还具有较好的稳定性和可靠性,能够在各种复杂环境下正常工作。
此外,我们还对系统的抗干扰能力进行了测试,结果表明该系统具有较强的抗干扰能力。
文章编号:10044736(2000)03006203一种基于单片机的步进电机控制器的研制张丹红1,文小玲2,程昌银1(11武汉汽车工业大学自动化系,湖北武汉430070;21武汉化工学院自动化系,湖北武汉430073)摘 要:介绍了一种自行研制的基于89C 52单片机的步进电机控制器.该控制器具有简单、可靠、人机接口方便和性能 价格比高等特点,已在多套系统中获得了成功应用.关键词:步进电机;驱动器;控制器;单片机;C 语言中图分类号:T P 273 文献标识码:A收稿日期:20000324作者简介:张丹红(1968),女,湖北汉川人,武汉汽车工业大学自动化系讲师,硕士. 步进电机控制器一般给驱动器提供使能信号和步进脉冲.对于运动规律较复杂的系统,控制器常由微型计算机和相应的控制卡板完成.但对于有些简单应用,如剪板机和包装机械等,运动规律非常简单,控制器完全可以由单片机完成.我们自行开发了一种使用51系列单片机89C 52的步进电机控制器(以下简称单片机控制器),现从功能及特点、控制器中的基本计算、硬件结构和软件框架几个方面对该控制器进行分析和介绍.1 功能及特点该单片机控制器最初是为一剪板机而设计.它为步进驱动器提供使能信号和步进脉冲,使步进电机按图1所示的速度图运行.事实上,这种情况在步进电机的实际应用中十分常见,它反应了步进电机在大多数工作中的运行状态[1].在图中,纵坐标是频率f ,单位为脉冲 秒或步 秒,本质上是速度.横坐标是时间,单位为秒.步进电机以f 0频率启动后,以加速度a 加速,至t 1时刻达到正常运行频率f h .然后匀速运行,至t 2时刻以-a 加速度减速,在t e 时刻电机停转,总的步进步数为P .在停留t s 秒后,开始重复N 次前面的过程.在系统进入运行状态之前,通过人机接口送入的参数共6个:f 0、f h 、t 1、P 、t s 和N .该系统的特点可简单概括为:a .串行E 2PROM 保存运行参数;b .简单、独立的键盘 显示器板;c .结构简单、图1 步进电机运行速度图运行可靠;d .具备简单的自检功能;e .软件使用51系列单片机的C 语言开发,维护和修改容易.2 控制器中的基本计算如图1所示,步进电机启动后,经过加速、匀速和减速3个阶段,共运转P 步,然后暂停.在所有计算中,最关键的是计算每一步的步进周期.首先计算加速段的步进周期.加速段为线性加速,因而加速度为a =(f h -f 0) t 1设步进电机运行X 步所用的时间为t x ,第X 步结束时电机的运行频率为f x ,则有fx=f 0+at xX =f o t x +(at 2x 2)(1)由式(1)可得t x =(f2+2(X -1)a -f 0) a同理可得,步进电机运行X -1步所用时间t x -1为t x -1=(f20+2(X -1)a -f 0) a因此,第X 步的步进周期为T x =t x -t x -1=f2+2X a -f2+2(X -1)aa 上式即为在加速阶段每一步的步进周期.减速段曲线与加速段曲线对称,因此在减速段,每一步的步进周期可由加速段的步进周期得到.关于匀速段,每一步的步进周期均相同,其计算公式为T h =1 f h3 硬件构成单片机控制器硬件主要由主控芯片、复位与看门狗电路、外部数据存贮器电路、人机接口和开关量输出等几个部分组成.第22卷第3期 武 汉 化 工 学 院 学 报 V o l .22 N o .32000年9月 J. W uhan In st . Che m. T ech . Sep. 20003.1 主控芯片主控芯片为低功耗、高性能的COM S型89C52单片机.它的硬件内核和指令系统与工业标准的80C32完全兼容,且内含8K的闪速ROM,其存贮空间足以容纳本系统程序,不用再扩展外部程序存贮器电路.晶振频率选用12M H z.3.2 复位与看门狗电路该部分电路的主要芯片为多功能的X25043.该芯片把三种常用的功能:看门狗定时器、电压监控和E2PROM组合在单个封装之内.看门狗定时器对微控制器提供了独立的保护系统.当系统出现故障时,经过一个定时周期(可通过程序选择其值),X25043使R ES端为低电平.同样,当V cc降到某一个临界值时,电压监控电路也使得R ES端为低电平,并且直到V cc恢复正常并保持稳定,才回到高电平.在这里,我们将R ES信号与手动复位信号经与非逻辑门的处理,作为89C52的复位信号.对X25043的操作通过单片机P1口的4根口线P1.0~P1.3实现.3.3 外部数据存贮器系统扩展了一片32K字节的RAM作为数据存贮器,用以存贮每一步的步进周期.每次上电复位或修改参数后,单片机就计算出每一步的步进周期,形成一张表格,并将该表格存于数据存贮器中.实时控制时,每执行一次步进,单片机就从RAM中取出两字节的步进周期,并根据此次数据初始化定时器T0.3.4 人机接口参数输入部分为5个按键所组成的小键盘,数据显示采用了6位的L ED显示器.对于键盘显示器的控制采用了专用的8279键盘显示控制芯片,这样一方面可简化编程,另一方面可避免实时控制时L ED的闪烁.因而,人机接口由按键、L ED、8279及必要的驱动和逻辑电路组成.L ED在作参数输入时用于显示输入参数,而在电机步进运行时,用于显示步进步数,在系统出现故障时,还能显示简单的故障代码.5个按键分别为:“M OD E”、“SET”、“Θ”、“Τ”、和“α”.同时“α”键还可转义为运行启动键.3.5 开关量输出系统的3路开关量输出分别为步进电机提供使能信号、脉冲信号和方向信号,还有1路以备用作其它扩展.开关量信号由89C52的P1口中4根口线控制.P1.4~P1.7这4个信号经过驱动与光隔电路,然后输出.光隔电路采用高速光耦6N137.4 软件框架单片机控制器的软件设计采用了F rank lin公司专为51系列单片机开发的C语言C51[2].整个软件主要包括以下几个部分:主程序,自检与初始化,键盘管理,显示,读写X25043,算步进周期和中断服务程序(T0,T1,I N T1).定时器T0用来控制步进周期,T1用以控制脉冲宽度.下面对其中的几个主要模块,作一介绍.4.1 主程序主程序控制着整个程序的流程,其程序框图如图2所示.标志flag1在自检与初始化子程序和参数输入子程序中清0,而在计算步进周期子程序图2 主程序框图36第3期张丹红等:一种基于单片机的步进电机控制器的研制中置1;标志flag2在T0中断服务程序中置1.P x和N x为循环变量,P x控制着步进步数,而N x控制着每次加工的重复次数.4.2 计算步进周期关于步进周期的计算使用了第3节所给出的计算公式,其计算顺序是先加速段,再减速段,最后计算匀速段.在计算加速段的步进周期时,采用时间t1作为条件判断加速段是否结束.在计算完加速段和减速段后,可得到加速段和减速段的步进步数之和,该值与总步数之差即为匀速段的步进步数.采用这种计算方法,可保证总的步进步数正好为P,而不受计算误差的影响.4.3 自检与初始化初始化包括8279各寄存器、8279的显示RAM、89C52的中断系统和内部RAM等.自检指在上电时对控制器的部分器件进行检测,看其工作是否正常.该单片机控制器在上电时主要对各种存贮器进行自检,包括89C52的内部RAM、外部RAM、E2PROM、8279的显示RAM.对RAM的自检,所采取的方法是往RAM各单元写入某一数,然后再读出,看读出的数是否正确.若读出的数据均正确,则认为RAM工作正常,否则,在L ED上显示错误代码.若发现显示RAM工作不正常,则将显示RAM全部清零,以便L ED的所有各段均亮.然后程序进入死循环. X25043的E2PROM单元所存放的是通过人机接口送入的关于步进电机运行速度图的参数.在数据写入X25043的同时,对数据进行各种运算,取得其特征信息,并将特征信息写入X25043.在从X25043读出参数时,也将特征信息读出,若读出的特征信息能表征所读出参数的特征,则认为数据没有被破坏,否则,认为数据已被破坏.414 中断服务程序在89C52的各中断中,使用了I N T1,T0和T1这三个中断.其中,I N T1为高优先级.在运行状态下,“Τ”键转义为停止键,若按该键,则I N T1中断服务程序将T0关闭,从而使步进电机停止.T0控制每一步的步进周期,该服务程序基本上只作重置定时器和置标志位的操作,而其它操作均在主程序中完成.5 结 语本文较全面地介绍了自行研制的一种基于89C52单片机的步进电机控制器,该控制器为步进电机驱动器提供使能、脉冲和方向信号,以使步进电机按一定的速度图运行.若改变步进周期的计算方法,还可实现更加复杂的速度图.该控制器已在多套系统中获得成功应用,具有一定的推广价值.参考文献:[1] 余永权,李小青,陈林康编著.单片机应用系统的功率接口技术[M].北京:北京航空航天大学出版社,1992.[2] 马忠梅等编著.单片机的C语言应用程序设计[M].北京:北京航空航天大学出版社,1997.The develop m en t of a stepper m otor con troller usi n gthe si n gle ch i p m i croco m puterZHAN G D an hong1,W EN X iao ling2,CH EN G Chang y in1(11D epartm en t of A utom ati on,W uhan A utomo tive Po lytechn ic U n iversity,W uhan430070,Ch ina21D epartm en t of A utom ati on,W uhan In stitute of Che m ical T echno l ogy,W uhan430073,Ch ina)Abstract:A stepper mo to r con tro ller w as devel oped by using the89C52single ch i p m icrocomputer.T h is con tro ller ow n s the fo ll ow ing features:si m p licity,reliable design,conven ien t pers on to m ach ine in ter2 face and h igh perfo r m ance to co st rate.It has been successfully used in several syste m s.Key words:stepper mo to r;driver;con tro ller;single ch i p m icrocomputer;C p rogra mm ing language本文编辑:陈小平 46武汉化工学院学报第22卷。