LabVIEW的步进电机控制系统设计

2017-04-27 15:32谭伟超
电子技术与软件工程 2016年15期
关键词:步进电机控制系统

摘 要 在步进电机控制系统中,最常见的方法是用PLC或单片机实现步进电机控制,都是非常成熟的技术,但是电路复杂不稳定,而且编程比较复杂。本文步进电机控制系统采用LabVIEW作为开发环境,LabVIEW是一款图形化编程语言软件,编写步进电机控制程序则更加简单,提供了丰富的数据采集和库函数,调试方便等诸多优点,相对比传统的VB或者VC语言更具有优势。本文将虚拟仪器应用于步进电机的速度控制和转动方向控制,对步进电机的应用控制领域具有重大的意义。

【关键词】LabVIEW 步进电机 控制系统

1 硬件系统设计以及工作原理

步进电机是将电脉冲信号转换为角位移的机电设备,通过改变脉冲频率来实现能够快速启动、反转和制动的执行元件,因此一般步进电机控制系统是指PLC或者单片机产生来脉冲电路,然后产生与转速相对应的步进脉冲,分配给步进电机的各相绕组,以实现步进电机的控制。一般来讲,脉冲一般由微机或者一些辅助电路来产生步进电机的启动信号。

所以,本文的设计方案是使用LabVIEW完成产生频率可调的脉冲信号和布尔信号的程序,经过硬件连接,通过DAQ板卡将脉冲信号输送至驱动器,分别连接至步进电机的各个输入端,即可实现对步进电机的控制,如图1所示。

故本次设计选用的板卡为PXI-7833R,PXI-7833R多功能RIO模块提供的可编程FPGA芯片,用户根据 LabVIEW中的FPGA模块实现模拟和数字功能信号的输入、输出和PWM信号的输出。接口部分采用PXI-7833加上相应的软件对输入的脉冲信号进行写操作,将信号加到步进电机驱动器上,实现对步进电机的控制。

2 系统软件设计

LabVIEW的编程环境分为前面板和程序框图。前面板,是图形化的人机界面,通过操作前面板可以控制调试程序。图2是后面板,表示前面板各个控件之间的逻辑关系。

2.1 “连续运行”VI的编程

根据步进电机工作原理,该控制系统应该实现连续运转运行和角度运转,所以程序用case结构用来选择不同的运行状态。这两个运行状态利用LabVIEW的FPGA模块来完成,,在“FPGA Target”目录下创建“连续运行”VI和“指定角度运行”VI,如图2所示。

如图3所示,利用FPGA模块中自带的方波发生函数产生一个脉冲,这一个脉冲信号首先从FPGA板卡的模拟输出通道1输出出来,然后送到步进电机驱动器。

由于指定的转速单位是r/s,而方波发生函数的控制量是频率,步进电机的转速可以用频率来控制,因此,需要将转速转化为频率计算,根据公式步进电机转速=频率*60/((360/固有步进角)*细分倍数),计算出步进电机的控制频率,则可以实现直接控制脉冲频率来控制步进电机的转速。另外,图3中将方波信号加一个5V的偏移量,以为了确保低电平是0。波形图表用来显示方波发生函数发生的脉冲信号。另外,还需要编写另外一个VI来控制步进电机转动方向。

2.2 “指定角度”VI的编程

步进电机的转动角度是由输入的脉冲数决定的,所以该VI的编程可以实现指定角度运转。因此,无非就是计算输入脉冲个数,一般采取计时法和计数法,对比这两种方案,本次设计采用了对脉冲计数的方法,因为步进电机启动或者停止时有一段加速和减速的过程,使用计时方法就有可能出现误差的现象。解决方案如下:首先,计算步进电机转动到特定的角度需要的脉冲个数。其次,所需要的脉冲个数等于计数器计算出来脉冲个数,程序必须停止运行。所以,根据编程思路,如图4所示,应将计数的布尔值与“停止”按钮的布尔值进行“或”运算,只要逻辑运算结果出现1,电机应该停止运行,最后将结果连接至While循环的“循环条件”端。

2.3 主程序的编程

在“连续运转”状态下,电机启动时只需要调整脉冲信号就可以,可以忽略计时或计数,主程序的功能是控制步进电机分别在两种不同的状态下运转,使用case结构来实现运动状态的选择,本文的设计思路采用六段直线式遞增,运行过程当中,每隔1秒,转速增加六分之一,六秒后达到额定转速。程序如图5所示。

步进电机的角度转动设计思路是通过对脉冲进行计数的方式来实现,当脉冲周期数达到指定个数时,程序停止。因此电机启动和停止阶段,不能失步或者过冲,为了要保证实现这个功能,在启动阶段要设计一个加速运行,同理在停止阶段也要设计一个减速运行。所以在本次设计中要引入“顺序局部变量”和“局部变量”。当一按启动按钮时,电机马上进入加速状态,从加速到平稳,当达到指定角度的五分之四时,进入减速阶段直到停止运行。加速过程程序图见图6,这里只附出加速过程第一帧,其他减速和稳定阶段的程序图类此。

3 前面板的设计

前面板操作流程的设计思路如图7所示,首先设计运动状态和转动方向,然后输入转速。前面板应当具备转速控制、转动方式、转动方法等按钮,并且良好的人机操作界面,易于操控。

4 系统运行结果

本设计的主要功能是产生脉冲信号和布尔量,所以按照图1所示的硬件连线方式进行连线。系统运行实验结果表明,该系统不仅可准确实现转速测量和调速控制,而且运行效果良好,通过LabVIEW产生频率可调的脉冲信号和布尔信号的程序,经编译后下载到PXI-7833R板卡,实现了步进电机控制脉冲及方向信号的生成。

5 结论

从系统运行结果分析,本系统采用基于labview步进电机测控系统,完成了该系统的软件设计部分,包括前面板设计、连续运行和角度运转程序的编写,实现了可以通过FPGA模块中设置计算驱动脉冲频率,产生频率可调的脉冲信号和布尔信号的程序,经编译下载到PXI-7833R板卡,对步进电机进行连续运行和指定角度运转,该系统将数据采集和控制处理紧密结合在一起,将结果在labview前面板显示出来,速度快和精度高,与传统的PLC或单片机步进电机控制系统相比,其成本和可维护性、操作性更强更简单,该系统已经在实际测量系统中得到了应用。

参考文献

[1]刘君华.基于LabVIEW的虚拟仪器设计[M].北京:电子工业出版社,2003.

[2]杨乐平,李海涛,杨磊.LabVIEW程序设计与应用[M].北京:电子工业出版社,2005.

[3]杨林,方宇栋.LabVIEW控制步进电机[J],微计算机信息,2004(02):7-8.

[4] 王来运.步进电机一体化控制系统的设计[J],科技风,2008(21):69-70.

作者简介

谭伟超(1986-),硕士研究生学历。任职于江门职业技术学院。研究方向为机电一体化。

作者单位

江门职业技术学院 广东省江门市 529000

猜你喜欢
步进电机控制系统
基于PLC的自动切蛋糕机的控制方案