基于单片机电机运动控制系统设计
- 格式:doc
- 大小:25.00 KB
- 文档页数:6
2020.19设计研发基于51单片机的步进电机正反转可控设计与仿真李建中(江苏省海门中等专业学校,江苏南通,226100)摘要:步进电机是伺服控制中的关键部件,对步进电机进行精确高效地控制,是实现精密运动、制造等的重要手段。
釆用51单片机作为电机的控制核心-ULN2003A作为电机的驱动芯片,选用额定电压为5V的小型步进电机,设置正转、反转、停止、加速、减速5个按钮,其中正转、反转和停止均有对应的LED指示灯。
通过Keil进行控制程序的编写,在Proteus 中进行仿真电路的连接,结果表明:电路设计正确;步进电机能够根据按钮指令进行运转,达到了设计预期;系统可应用于某些需要高精度控制的场合。
关键词:步进电机;51单片机;ULN2003A;Keil;ProteusDesign and Simulation of Positive and Negative Rotation ofStepping Motor Based on51Single Chip MicrocomputerLi Jianzhong(Jiangsu Province Haimen Secondary Vocational School,Narrtong Jiangsu,226100)Abst r act;St epper motor is the key compone n t in servo cont r ol.It is an import a n t means to realize precise motion and manufacture to control stepping motor accurately and efficiently.51single chip microcomputer is used as the cont r ol core of the mot o r,uln2003a is used as the driving chip of the motor,the small st e pping motor with:r ated volt a ge of5V is selec t ed,and five buttons of forward rotation,reverse rotation,stop,acceleration and deceleration are set,and the corresponding LED indicator lights are used for forward rotation,reverse rotation and stop.The resuIts show that:the circuit design is correct;the stepper motor can operate according to the button command,which meets the design expectation;the system can be applied to some occasions requiring high-precision control.Keywords:stepper motor;51single chip microcomputer;ULN2003A;Keil;Proteus0引言步进电机在工业制造、数控机床、各种伺服系统中均有应用。
基于STM32和FPGA的多通道步进电机控制系统设计共3篇基于STM32和FPGA的多通道步进电机控制系统设计1本文介绍了基于STM32和FPGA的多通道步进电机控制系统设计。
一、设计目标本次设计的目标是:设计一个可控制多路步进电机的系统,具备高效、可靠的控制方式,实现步进电机多通道运动控制的目标。
二、硬件选型1、主控芯片STM32本设计采用STM32作为主控芯片,STM32系列微控制器具有高性能、低功耗、高集成度、易于开发等优点,非常适合此类控制系统。
2、FPGA本设计采用FPGA作为数据处理和控制模块,FPGA具有可编程性和高速、低功耗的特点,在电机控制系统中有广泛的应用。
3、步进电机步进电机具有速度可调、定位精度高等特点,很适合一些高精度的位置控制系统。
4、电源模块电源模块负责为整个系统提供稳定的电源。
5、驱动模块驱动模块负责驱动步进电机,其控制原理为将电机的输入电流拆分为若干个短脉冲信号,每一个短脉冲信号控制一个步距运动。
三、系统设计1、STM32控制器设计STM32控制器是本系统的核心,其功能是读取FPGA发送的控制信号和控制步进电机的运动。
STM32控制器处理的信号主要包括方向信号、脉冲信号、微步子段等控制参数,将这些参数按照驱动模块的需求分发到各个驱动模块中,从而控制步进电机的运动。
2、FPGA模块设计FPGA模块是本系统的数据处理模块,其主要功能是接收STM32发送的指令,进行解码并且转化为步进电机的控制信号,以驱动步进电机的运动,同时FPGA模块还负责将电机的运动数据反馈回STM32,以保证整个系统的稳定运行。
3、驱动模块设计驱动模块是本系统的控制模块,其主要功能是将电机的输入电流拆分成若干个短脉冲信号,每一个短脉冲信号控制一个步距运动,从而实现对步进电机的控制。
四、系统流程1、系统初始化整个系统初始化主要包括STM32控制器的初始化、FPGA模块的初始化、各个驱动模块的初始化、电源模块的初始化,当系统初始化完成后,所有硬件设备均已经准备完成,可以开始正常的运行。
单片机与mpc运动控制模块组成的三轴运动控制系统摘要:采用单片机stc89C2051和mpc微型运动控制模块作为控制系统的核心,控制三路步进电机做运动实验。
单片机发送指令给mpc微型运动控制模块,模块信号输出给步进驱动器作高速度运动。
可以定点运动,直线插补和圆弧插补。
1.引言运动控制的应用在国内已有十几年的历史,技术也相当成熟。
通常运动控制都需要用到运动控制卡,运动控制器等产品,但这些产品价格高昂,使用复杂,也不适合由单片机构成的控制系统。
而如果直接采用单片机来做运动控制,由于运动控制对系统性能要求非常高,单片机速度资源有限,难以设计出性能优良的运动控制模型。
因此,本文采用单片机和专业的mpc微型运动控制模块构成运动控制系统。
MPC微型运动控制模块采用新型FPGA设计,集成实用运动控制功能,可与普通单片机通过串口通讯对步进电机和伺服电机控制。
具有如下特点:◆串口通讯,仅需使用几条指令,简单可靠。
◆单模块最高六轴输出,多个模块组网工作可达120轴。
◆最大脉冲输出频率为2MHz,脉冲输出使用脉冲+方向方式。
◆最高六轴独立运动控制,任意两轴直线插补,任意两轴圆弧插补。
◆每轴一路硬件回原点。
◆模块带1000级指令缓存深度,指令先进先出。
◆模块体积小巧,仅3.5*2.5*1.5cm,双排直插30脚。
2,系统硬件设计硬件系统由四部分构成:(1)单片机部分单片机与模块只需三根线连接,用作串口通讯的RXD和TXD,用作模块缓存满输出的BUSY信号。
P3.7引出一按键作为测试使用。
(2)mpc微型运动控制模块部分mpc微型运动控制模块采用5V电源供电,RXD,TXD,BUSY与单片机连接。
X0,X1,X2可作为三路电机的原点信号,P1,D1为1轴的脉冲和方向信号。
P2,D2为2轴的脉冲和方向信号。
P3,D3为3轴的脉冲和方向信号。
(3)原点信号输入部分原点采用光藕隔离输入,输入端可接NPN型光电开关来作为原点信号。
基于51单片机的步进电机控制系统设计步进电机是一种特殊的直流电动机,具有定角度、定位置、高精度等特点,在许多领域得到广泛应用,如机械装置、仪器设备、医疗设备等。
本文将基于51单片机设计一个步进电机控制系统,主要包括硬件设计和软件设计两部分。
一、硬件设计步进电机控制系统的硬件设计主要包括51单片机、外部电源、步进电机驱动模块、以及其他辅助电路。
1.51单片机选择由于步进电机控制需要执行复杂的算法和时序控制,所以需要一个性能较高的单片机。
本设计选择51单片机作为主控芯片,因为51单片机具有丰富的外设接口、强大的计算能力和丰富的资源。
2.外部电源步进电机需要较高的电流供给,因此外部电源选择稳定的直流电源,能够提供足够的电流供电。
电源电压和电流的大小需要根据具体的步进电机来确定。
3.步进电机驱动模块步进电机驱动模块是连接步进电机和51单片机的关键部分,它负责将51单片机输出的脉冲信号转化为对步进电机的驱动信号,控制步进电机准确转动。
常用的步进电机驱动芯片有L297、ULN2003等。
4.其他辅助电路为了保证步进电机控制系统的稳定运行,还需要一些辅助电路,如限流电路、电源滤波电路、保护电路等。
这些电路的设计需要根据具体的应用来确定。
二、软件设计1.系统初始化系统初始化主要包括对51单片机进行外部中断、定时器、串口和IO 口等初始化设置。
根据实际需求还可以进行其他模块的初始化设置。
2.步进电机驱动程序步进电机的驱动程序主要通过脉冲信号来控制电机的转动。
脉冲信号的频率和脉冲宽度决定了电机的转速和运行方向。
脉冲信号可以通过定时器产生,也可以通过外部中断产生。
3.运动控制算法步进电机的运动控制可以采用开环控制或闭环控制。
开环控制简单,但无法保证运动的准确性和稳定性;闭环控制通过对电机转动的反馈信号进行处理来调整脉冲信号的生成,从而实现精确的运动控制。
4.其他功能设计根据具体的应用需求,可以加入其他功能设计,如速度控制、位置控制、加速度控制等。
基于stm32103的步进电机控制系统设计步进电机是一类常用的电机,广泛应用于控制系统中。
本文旨在介绍步进电机及其在控制系统中的应用,并概述本文的研究目的和重要性。
步进电机是一种将电脉冲信号转换为旋转运动的电机。
构成和工作方式步进电机由定子、转子和驱动电路组成。
定子是电磁铁,可以根据输入的电流控制电磁铁产生磁场。
转子是由磁性材料制成的旋转部分,定子的磁场会使得转子受到磁力的作用而旋转。
步进电机的工作方式是通过不断输入脉冲信号来控制电机的运动。
每一次输入一个脉冲信号,步进电机就会转动一定的步进角度。
步进角度取决于步进电机的类型和驱动电路的设置,常见的步进角度有1.8度和0.9度。
输入脉冲信号旋转的步进角度输入脉冲信号的频率和方向决定了步进电机的转动速度和方向。
每一个脉冲信号的到来,步进电机会按照预定的步进角度旋转。
例如,若步进电机的步进角度为1.8度,那么每接收一个脉冲信号,步进电机就会旋转1.8度的角度。
综上所述,步进电机通过输入脉冲信号实现了精确而可控的旋转运动。
本文将阐述基于STM单片机的步进电机控制系统设计。
该设计包括硬件电路设计和软件程序设计。
本文将介绍如何通过STM与步进电机进行通信和控制,以实现预定的步进运动。
步进电机控制系统的硬件电路设计主要包括以下部分:步进电机驱动电路:通过STM的GPIO口控制步进电机驱动电路,实现电机的正转、反转和停止等操作。
电源电路:为步进电机提供稳定的电源供电,保证系统正常工作。
外设接口:设计相应的接口电路,实现STM与外部设备的连接。
步进电机控制系统的软件程序设计主要涉及以下方面:初始化设置:在程序开始运行时,对STM进行初始化设置,包括引脚配置、时钟设置等。
步进电机驱动程序:编写相应的程序代码,通过GPIO口控制步进电机的驱动电路,实现电机的正转、反转和停止等操作。
运动控制程序:编写相应的程序代码,通过控制步进电机的驱动电路,实现预定的步进运动,包括移动一定的步数、以特定的速度旋转等。
基于单片机AT89C52的步进电机的控制器设计步进电机是一种非常常见的电机类型,由于其具有精准定位、适应高速运动以及控制简单等特点,被广泛应用于各种自动化设备中。
本文将从步进电机的工作原理、控制方式以及基于单片机AT89C52的步进电机控制器设计等方面展开阐述。
首先,我们来了解步进电机的工作原理。
步进电机是一种特殊的同步电动机,它具有内置的磁化轭,在没有外部励磁的情况下也能自动旋转。
步进电机的旋转是由控制电流方向和大小来实现的。
通常情况下,步进电机每转动一定角度,称为“步距角”,它可以是1.8度、0.9度、0.45度等,不同的步距角决定了电机的分辨率。
步进电机的控制方式主要有全步进和半步进两种。
全步进是指每次控制信号脉冲后,电机转动一个步距角。
而半步进则是在全步进基础上,在脉冲信号中引入一半步距角的微调。
控制信号脉冲可以是脉冲序列或者方波信号。
基于单片机AT89C52的步进电机控制器设计主要包括控制信号发生器的设计和步进电机驱动电路的设计。
控制信号发生器负责产生相应的控制信号脉冲,而步进电机驱动电路将这些脉冲信号转化为电流信号驱动步进电机。
控制信号发生器的设计可以采用定时器/计数器模块来实现。
AT89C52芯片具有可编程的定时器/计数器,可以用来产生控制信号的脉冲。
通过设置定时器的工作方式和计数值,可以实现不同频率、占空比的控制脉冲。
步进电机驱动电路的设计主要包括功率级驱动电路和电流控制电路。
功率级驱动电路负责将控制信号转化为足够大的电流驱动步进电机,通常采用功率放大器来实现。
电流控制电路则用来控制驱动电流的大小,使步进电机能够顺畅工作。
电流控制电路通常采用可调电阻、电流检测电阻和比较器等元件组成。
在步进电机控制器设计中,还需要考虑到步进电机的特性和应用需求。
例如,步进电机的电源电压、额定电流、阻抗、扭矩等参数需要与驱动电路匹配。
此外,还需要考虑到步进电机的机械结构、位置传感器、防重叠措施等因素。
基于单片机的步进电机控制系统设计引言:步进电机是一种常用的电机类型,具有精准的位置控制、高效的能量转换等特点。
在许多自动化设备中广泛应用,如数控机床、3D打印机、机器人等。
本文将以基于单片机的步进电机控制系统设计为主题,介绍系统的硬件设计、软件设计以及实验验证。
一、硬件设计1.步进电机选型:根据实际应用需求,选择适当的步进电机。
包括步距角、转速范围、扭矩要求等等。
2.电源设计:步进电机需要驱动电压和电流,根据步进电机的额定电压和电流选用适当的电源。
3.驱动电路设计:步进电机通常需要驱动电路来控制电流和脉冲序列。
常见的驱动电路有全桥驱动器、半桥驱动器等。
4.信号发生器设计:步进电机通过脉冲信号来控制转动角度和速度,因此需要信号发生器来产生合适的脉冲序列。
常见的信号发生器有定时器、计数器等。
5.单片机接口设计:单片机作为步进电机控制系统的核心,需要与其他硬件进行通信。
因此需要设计合适的接口电路,将单片机的输出信号转换为驱动电路和信号发生器所需的电压和电流。
二、软件设计1.单片机程序框架设计:根据具体的单片机型号和开发环境,设计合适的程序框架。
包括初始化设置、主循环、中断处理等。
2.脉冲生成程序设计:根据步进电机的控制方式(如全步进、半步进、微步进等),设计脉冲生成程序。
通过适当的延时和输出信号控制,产生合适的脉冲序列。
3.运动控制程序设计:设计运动控制程序,实现步进电机的前进、后退、加速、减速等功能。
根据具体需求,可以设计不同的运动控制算法,如速度环控制、位置环控制等。
4.保护机制设计:为了保护步进电机和控制系统,设计合适的保护机制。
如过流保护、过压保护、过载保护等。
三、实验验证1.硬件连接:将步进电机、驱动电路和单片机按照设计进行连接。
2.软件调试:通过单片机编程,调试程序代码。
确保脉冲生成、运动控制等功能正常工作。
3.功能测试:对步进电机控制系统进行功能测试,包括正转、反转、加速、减速等功能。
通过观察步进电机的运动状态和测量相关参数来验证系统设计的正确性和性能。
基于单片机的电机运动控制系统设计
摘要:为了使电动机能有更高的工作效率,简化电动机的操作,文章通过对步进电机的实时控制方式及工作原理进行研究,用
at89c51单片机做控制系统核心,结合步进电机的工作方法制定出电机运动控制系统的设计方案。
此方案可通过修改电机驱动电路及相应单片机程序来应用到所有的电机控制系统当中。
方案设计合理,有不错的实际应用价值。
关键词:at89c51;步进电机;运动控制系统
中图分类号:tm383.6文献标识码:a文章编号:1007-9599 (2013) 06-0000-02
由于现代工业化的需求,当前工业生产当中一般都使用步进电机来替代普通电机,以满足生产当中的准确度和可控性,传统电机一般只应用于手控操作,在这里不进行过多研究。
步进电机是一种将电脉冲信号转变为转子转动角度的开环控制电机,一般情况下,步进电机的转速和转矩都是可控的。
本文就以应用步进电机为前提来设计电机运动控制系统。
1步进电机是如何工作的以及如何对其进行控制
1.1步进电机的具体概念。
根据不同的转子结构和材料,步进电机统共分为混合式、永磁式以及反应式三个类别。
步进电机是一种将电脉冲信号转变为转子转动角度的开环控制电机,在一般情况下,电机只根据电脉冲信号的频率、强弱和对不同相位定子绕组的信号输入顺序来改变电机运转的速度和方向,而不会由于其负载较
大而影响它的运动状态。
它的转动幅度有一个最小的单位,每当接收到一个脉冲信号,电机就会转动这样一个最小单位,因此可以通过脉冲信号的输出方式来对步进电机的工作量进行精确控制,并且可以通过一系列算法来实时监控步进电机的运转状态。
1.2步进电机时如何进行工作的。
步进电机的工作主要是靠对电流的感应,所以,依靠供电电路的支持,将普通的直流电转变为按照一定频率,一段一段地对电机供电,而且仅有在这种一段一段的特殊直流电下,步进电机才能够正常工作。
这种特殊的直流电供电方式叫做分时供电,而提供分时供电的设备就是驱动器。
电机内部结构分为转子和定子。
步进电机的转子是一个永磁体,绕阻固定在定子上。
当定子绕阻上有直流电流经过时,根据电磁感应原理,在电机的定子上也就相应的产生一个方向固定的电磁场,这个电磁场就会带动永磁体转子开始旋转,直至永磁体转子的磁场和定子的磁场方向相同。
此时,电流再通过另外一个方向的定子绕组,定子磁场方向就会随之改变,而转子也会做出相同角度的转动,如此往复,每当有一个脉冲电流通过定子绕组,转子就进行一个角度的转动,周而复始,电机就会开始不停的转动,而且如果将绕组通电的顺序做相反的变动,那样电机就会反转。
所以,步进电机可以根据对脉冲电流的频率的改变和对定子绕组的各个相位的电流通电顺序的
改变来控制电机的转速和转动方向。
2步进电机运动控制系统的原理
以at89c51单片机为例,所组成的电机运动控制系统原理图如下:
通过单片机at89c51以及晶振、复位组成了控制系统的最小应用系统,将其接入电机驱动电路再与电机相连接就组成了整个系统的物理架构,接入时钟电路来获取相应的脉冲信号,通过从控制面板对单片机进行编程和下达指令来实现整个系统的控制。
3控制系统实现对步进电机运动控制的方法
由电机的实际工作方式可得出,此系统需要达成以下功能:下达正转指令,电机匀速正转,直到下一个指令的传达;下达反转指令,电机匀速反转,直到下一个指令的传达;下达停止指令,电机停止转动,直到下一个指令的传达;下达加速指令,电机在当前运动状态下匀加速运转,直到下一指令的传达;下达减速指令,电机在当前运动状态下匀减速运转,直到下一指令的传达。
为达成以上目的,我们需要分析单片机及最小应用系统在其中起到的具体作用。
当电机工作时,控制系统需要相对于电机的每一种工作状态给电机控制电路施加相应工作信号。
当电机匀速转动时,工作信号应该是一个稳定的脉冲信号,当电机匀变速转动时,应该对其施加一个均匀变化的脉冲信号,当电机静止时,控制系统应该不对其施加任何脉冲信号。
所以,控制系统的每一个部分都要承担其相应的任务。
3.1复位电路。
电机在工作前都处于一个初始的状态,一般都是静止状态。
相应的,在cpu内也有一个使电机静止的初始状态。
复位电路的作用就是通过对cpu的设定,使其恢复到初始状态,来完成对电机静止的操作,当控制系统运行出错时,也需要对其进行复
位操作来使控制系统回归正常的工作状态。
3.3时钟电路。
步进电机的工作原理是将电脉冲信号转变成永磁体转子的旋转角度,而时钟电路的作用就是提供一个稳定的或者匀速变化的脉冲信号。
当脉冲信号稳定时,步进电机就会做出匀速转动的工作状态。
当脉冲信号匀速变化时,步进电机就会根据脉冲信号的频率变化做出相应的匀加速或者匀减速工作状态。
3.3按键控制电路。
在正常生产工作时,步进电机需要通过外界控制来改变各种各样的工作状态,而按键控制电路就是向步进电机下达工作状态改变指令的输入端,通过对按键控制电路上相应的按键的操作,人们可以对控制系统下达相应的指令,使电机的工作状态发生改变。
3.4驱动电路。
驱动电路是直接与步进电机相关联的,由驱动电路的输出电量来完成电机的启动、制动等操作。
控制系统的各部分功能已经清楚了,那么如何通过控制系统使电机完成各种工作状态,则是下面需要考虑的问题。
以三相异步电动机为例,若使电机正向旋转,则需要在电动机的三相绕阻上依次施加电脉冲信号,若三相绕阻代号分别为x、y、z,则控制电机正转的脉冲信号次序为:x—xy—y—yz—z—zx—x,若控制电机反转,则相应的次序为x—xz—z—zy—y—yx—x。
由此可得出,只要控制脉冲信号输出的顺序就可以对电机进行正、反转动的操作。
所以,我们得出了对单片机进行编程的思路,即若控制电机匀速正传,则按下按键1,此时对cpu下达的指令是按照既定的正转脉
冲次序输出脉冲信号;若控制电机匀速反转,则按下按键2,此时cpu下达的指令是按照既定的反转脉冲次序输出脉冲信号;若控制电机加速运转,则按下按键3,此时cpu令时钟电路缩短延时,来加大脉冲频率;若控制电机减速运转,则按下按键4,此时cpu令时钟电路加大延时,来减小脉冲频率;若控制电机静止,则按下按键5,此时单片机复位或者关闭p0端口。
如此就完成了整个电机控制系统的基本设计。
当然,我们可以根据生产加工当中的实际需要,来给电机控制系统增加特定功能。
例如,可以在p1端口加入数码管电路,通过对单片机当中的定时器的编程来实现显示工作时长的需求,也可以在p2端口加入lcd显示器,通过对电动机物理模型的研究建立数字信号与电动机转速的函数关系,通过对单片机中的计数器进行函数编程来实现显示当前电动机转速,以方便对工作进程和工作状态的实时监测。
此系统是通过at89c51单片机来实现对步进电机进行工作状态的控制,由于单片机的特性,此系统可实现速度快、操作简便、准确度高、经济高效的电机控制方案。
并且,在对此系统稍加改动就可以应用到所有型号的电机上,应用范围广,能够承担起大多数生产工作的重任。
参考文献:
[1]徐进强.基于stc单片机的经济型步进电机控制系统[j].现代电子技术,2009,14:197-199.
[2]余锡存,曹国华.单片机原理及接口技术[m].西安:西安电子科技大学出版社,2000.。