当前位置:首页 > 嵌入式 > 嵌入式硬件

0引言

数控技术是以数字量编程实现控制机械或其他设备自动工作的技术,数控机床就是采用了数控技术的机床,或者说装备了数控系统的机床。机床数控系统主要由几个部分组成:零件加工程序的输入、数据处理、插补计算和运动机构的控制。本文主要介绍最后一个部分运动机构的控制,即如何控制电机的动作。可选的电机有很多种,在这里我们选择步进电机。

步进电机是数字控制电机,是一种将电脉冲转换成角位移的精密执行元件。它的旋转是以固定的角度一步一步运行的,每给步进电机发一个脉冲电机就旋转一个固定的角度,只要脉冲数发的正确,电机就能走到位,无累积误差,所以对步进电机的控制可以采用开环控制方法。如何精确且经济的控制步进电机成为广大研究人员探讨的课题。本文将采用CPLD来实现对步进电机的控制。并最终通过实验仿真结果。

1步进电机驱动原理

步进电机的驱动是靠给步进电机的各相励磁绕组通电,实现步进电机内部磁场方向的变化来使步进电机转动的。设我们所用的步进电机是四相的,这四相分别为A,B,C,D,对应于四对磁极。每个磁极的内表面都分布着大小,齿间距相同的多个小齿(不同的步进电机,小齿的个数不同),假设Ⅳ为转子中小齿的个数。当这4相按A—B—C—D的顺序通电时,步进电机的内部磁场变化一周(360°),此种通电方式为单相四拍通电方式,此时步进电机的步距角:
θ=90°/N
若N=50,则θ=1.8°
如果选择的通电顺序为A—AB—B—BC—C—CD—D—AD,此种通电方式为双相八拍通电方式,此时步进电机的步距角为:
θ=45°/N
若N=50,则θ=0.9°
步距角是步进电机一次能转过的最小角度,电机的步距角越小,说明电机走的越精确,所以本文选择驱动电机通电的方式为双相八拍通电方式。

2设计方案

一个完整的,控制精度高的步进电机控制系统框图如图1所示。CPLD和步进电机的驱动器相连,驱动器把CPLD输出的信号放大后送入步进电机,由于数控机床的各个轴是靠电机的转动来带动的,所以电机的转动带动相应轴的动作。

各组成模块功能描述如下:

2.1CPLD模块

使用CPLD来控制步进电机实现电机的启动、停止以及正反转。传统的方式是用单片机来控制步进电机,但是在一个数控系统中单片机要做的工作很多,比如单片机既要控制步进电机还要接受上位机的数据做相应的运算,还要控制显示模块,以及报警处理等,如果改用CPLD来驱动步进电机则可以减轻单片机的负担。用大规模可编程逻辑器件作为控制器,可以反映出CPLD在控制方面起到较高的作用,而不是仅仅作为逻辑器件来使用。并且CPLD具有较为经济的价格。

另外CPLD的外围接口也较多,比如以ALTERA公司生产的EPM7032为例,它的I/O口有36个,内部的逻辑门有600多个,除了驱动步进电机所用的资源外,其余剩余的资源还可在系统中做其他用途。

在实际电路板设计阶段,如果用传统的设计方法设计电路必须首先决定使用的器件类别和规格,然后从绘制硅片版图开始,逐级向上,直至整个系统的设计。在这个过程中如果有哪一级发生问题必须返工重来,整个电路板将报废。但是如果使用CPLD,设计方法是自顶向下的设计方法,就是在整个设计流程中各设计环节逐步求精的过程。比如在我们设计的一开始就可以先把CPLD和驱动器相连,再通过软件的设置来利用到我们已经连好的引脚,如果程序出现错误,可以同过ISP(在系统可编程的方法)把新的程序装载到CPLD中,而不用更换电路板。

2.2驱动器模块

步进电机的运行要有一电子装置进行驱动,这种装置就是步进电机驱动器,由于CPLD输出的信号还不足以驱动电机使电机转动,所以在CPLD和步进电机之间要连接驱动器,放大CPLD输出的信号。CPLD每发一个脉冲信号,通过驱动器就使步进电机旋转一步距角。因而控制送入步进电机脉冲频率,可以对电机进行调速。脉冲发的快电机运行的快,脉冲发的慢电机运行的慢。对于电机转速的控制可以间接通过调整对送入CPLD中CLK脉冲的频率来实现;控制步进脉冲的个数,可以对电机进行精确定位。

3软件实现

本文通过对CPLD进行编程来实现对步进电机的控制,使用的语言是VHDL语言,使用的编程环境是MAX+PLUSII。控制程序由两大部分构成,一是实体部分,二是结构体部分,实体的作用是描述端口的信息,结构体的作用是描述电路的功能。

3.1实体部分

在实体中定义了6个端口。
CLK:时钟信号
reset:复位信号
DIR:正转信号
START:启动信号
STOP:停止信号
phase:输出信号

3.2结构体部分

在软件设计中,重点是先正确写出双相八拍通电方式下的状态转换表。

表1中‘1’表示通电,‘0’表示断电,S0~S7分别表示按A—AB—B—BC—C—CD—D—AD通电方式下的8个状态。在此种状态顺序下电机正转,反之电机反转。表中的S0~S7都是以二进制数来表示,如果转换为十六进制数则分别为1,3,2,6,4,C,8,9。

程序的结构体部分由3部分组成:说明部分,主控时序进程,主控组合进程。在说明部分中定义相关的信号及常数;在主控时序进程中负责把计算好的次态的信息送入初态,并负责最后的输出;在主控组合进程中负责相关的计算,比如判断启动和停止,正转和反转,以及在正反转状态下如何取下一个状态。下面这段程序就是结构体里主控组合进程中,如何判断电机正反转和下一步电机将如何动作的程序段。


3.3系统仿真结果

整个控制程序的软件波形仿真如下:

从图2中可以看到,在模拟步进电机启动、停止、正反转时电机的状态。比如在复位后当START=‘1’时,如果这时DIR=‘1’表示电机是正转,则电机的通电状态是A—AB—B—BC—C—CD—D—AD,对应的CPLD的输出状态就为S0~S7。当DIR=‘0’时表示电机是反转,就图2的截图来说在CLK的上升沿时,输出是状态S2,因为它的前一个状态从图上我们可以看出是S1。

4结束语

在数控系统中我们希望达到准确、高效、经济的控制,在运动机构的控制这一环节,通过CPLD可以起到很好的效果,首先可以简化硬件电路,提高电路的可靠性,其次可以通过对器件进行编程来改变器件的结构,达到我们预期的功能,并且通过ISP在系统可编程的方法把程序加载到器件上。

通过CPLD可控制步进电机的启动、停止、以及正反转,本文通过软件仿真,验证了方案的正确性。本文所列举的电机是四相的,如果是三相或是五相电机,都可按本文的方法实现,如果对电机采用的单相通电的方法,也可按本文的方法实现,同样只须稍微修改参数即可。

本站声明: 本文章由作者或相关机构授权发布,目的在于传递更多信息,并不代表本站赞同其观点,本站亦不保证或承诺内容真实性等。需要转载请联系该专栏作者,如若文章内容侵犯您的权益,请及时联系本站删除。
换一批
延伸阅读

一直以来,步进电机都是大家的关注焦点之一。因此针对大家的兴趣点所在,小编将为大家带来步进电机的相关介绍,详细内容请看下文。

关键字: 电机 步进电机

伺服电机是一种能够精确控制位置、速度和加速度的电动机。它通过内置的反馈系统,能够根据控制信号实时调整输出力矩和转速,从而实现精确的运动控制。伺服电机广泛应用于机械制造、自动化设备、机器人等领域。

关键字: 伺服电机 步进电机

反应式步进电机将是下述内容的主要介绍对象,通过这篇文章,小编希望大家可以对反应式步进电机的相关情况以及信息有所认识和了解,详细内容如下。

关键字: 电机 步进电机 反应式步进电机

一直以来,电机都是大家的关注焦点之一。因此针对大家的兴趣点所在,小编将为大家带来电机的相关介绍,详细内容请看下文。

关键字: 电机 感应电机 步进电机

伺服电机和步进电机在控制精度、低频特性、矩频特性、过载能力、编码器类型等方面存在显著差异。

关键字: 伺服电机 步进电机 编码器

直流减速电机是一种常见的电机类型,它由直流电机和减速器组成。这种电机通常具有较大的启动转矩和较低的转速,适用于需要大扭矩和低转速的场合。直流减速电机的结构包括电机本体、减速器、输出轴和外壳。其中,电机本体是驱动力源,通过...

关键字: 直流减速电机 步进电机

步进电机控制器是一种用于控制步进电机运行状态的设备。步进电机是一种将电脉冲信号转换为角位移的电机,每个脉冲信号都会使电机转动一个固定的角度。步进电机控制器通过控制电机的转速和转向,实现对电机运行状态的精确控制。

关键字: 步进电机 电机控制

控制器是指按照预定顺序改变主电路或控制电路的接线和改变电路中电阻值来控制电动机的启动、调速、制动和反向的主令装置。它由程序计数器、指令寄存器、指令译码器、时序产生器和操作控制器组成,是发布命令的“决策机构”,即协调和指挥...

关键字: 控制器 步进电机

电动机是一种将电能转换为机械能的设备,它利用通电线圈(也就是定子绕组)产生旋转磁场并作用于转子(如鼠笼式闭合铝框)形成磁电动力旋转扭矩。电动机主要由定子与转子组成,通电导线在磁场中受力运动的方向跟电流方向和磁感线(磁场方...

关键字: 步进电机 普通电机

步进电机是一种将电脉冲转化为角位移的执行机构。通俗来说,当步进驱动器接收到一个脉冲信号,它就驱动步进电机按设定的方向转动一个固定的角度(及步进角)。可以通过控制脉冲个数来控制角位移量,从而达到准确定位的目的;同时可以通过...

关键字: 步进电机 控制脉冲
关闭
关闭