基于LabVIEW和MPScope的多轴伺服电机控制系统开发与应用

2018-06-24 09:39刘智豪庞兆亮
制造业自动化 2018年6期
关键词:下位寄存器伺服电机

王 辉,昝 涛,刘智豪,庞兆亮

(北京工业大学 先进制造技术北京市重点实验室,北京 100124)

0 引言

随着社会发展的需要,各制造企业对机器装备自动化、智能化水平的要求不断提高,做为核心技术的运动控制系统,其作用更为突出[1]。目前控制技术的发展日新月异,运动控制系统向着小型化、网络化和智能化的方向发展,要求控制器具有优异的系统性能、易于模块化移植和较高的可靠性[2]。为满足这些要求,控制系统多采用分布式控制方式,即由上位机实现不同的轨迹规划和控制算法,由下位机实现插补细分和控制优化,上位机和下位机通过通讯总线相互协调工作。这种控制系统有多种实现方式,文献[3]利用工业控制计算机作为上位机和可编程控制器(PLC)为下位机建立两级分布式旋压机控制系统;文献[4]采用ARM处理器和LM629运动控制芯片作为上、下位机开发出直流伺服电机控制系统;文献[5]提出将AT89C52单片机作为下位机,利用PC机作为上位机设计多轴电机控制系统。为使控制系统能够实现多轴联动,以及控制方式的简单化,本文提出了一种以工控机为上位机和多轴运动控制器为下位机的多轴电机系统控制方案,这种系统结构简单,性能稳定,控制精度高,适用于各种多轴伺服电机控制系统,具有很高的移植性和扩展性。

1 系统总体结构

在工业控制领域,多电机综合控制系统应用越来越广泛,同时对控制系统提出更高的要求。一方面,控制系统不仅要实现对电机的单个控制,而且可以完成多电机的联动操作。另一方面,整个控制系统既要有位移精确,速度稳定,运行可靠的性能,又要具有灵活性好,危险性低,响应时间短的优点。

为实现这些功能,设计了工控机+运动控制器+驱动器的系统结构。多轴运动控制器通过驱动器实现对各个电机的控制管理。利用工控机作为上位机,通过上位机软件采用TCP/IP协议与控制器实时通信,实现对系统信息的采集及对控制指令的发送[7]。多轴运动控制器作为下位机负责对主机的命令的响应及对数据信息的传送。下位机通过专用接口与伺服单元相连,可进行位置、速度、转矩、相位控制,并可实现高精度的同步控制。伺服电机通过将安装在轴上的编码器反馈的实时位置信息传递给伺服单元,完成闭环控制[8]。系统结构如图1所示。

图1 系统结构

2 硬件组成

根据负载、电机惯量比、转矩、短时间特性(加减速转矩)、连续特性(连续实效负载转矩)、编码器分辨率等方面选择合适的伺服电机,本系统选用安川SGM7G型电机以及与其配套的SGD7S型伺服驱动器,多轴控制器选用MP2300S运动控制器。

安川MP2300S运动控制器是一款集电源功能、CPU功能、I/O功能以及通信功能于一体的、采用多功能结构设计的小型机器控制器。该控制器通过运动网络MECHATROLINK-Ⅱ可控制最多达16轴的伺服驱动器,并能实现高精度的同步控制,以及轨迹运动中所需要的直线插补、圆弧插补、螺旋插补等功能。I/O模块选用LIO-04模块,完成外部数据的输入输出功能。系统的硬件构成如图2所示。MP2300S与控制计算机之间的数据交换通过MPScope软件实现。

图2 系统硬件构成

3 MPScope通讯

MPScope是安川公司研发的用于运动控制器Window应用程序开发的软件,可通过与控制器通讯实现对寄存器数据的读、写操作。由于其不依赖通讯介质、开发过程简单的优点,MPScope广泛应用于各种电机控制系统。

在上位机+下位机的控制系统中,上位机与下位机数据交互采用系统预留的寄存器,上位机通过MPScope软件向下位机发送寄存器变量读/写请求,下位机接收到请求后向上位机返回响应信息。所有寄存器读/写请求在下位机(运动控制器)上处理,并在空余扫描时间里被执行。如图3所示,在一个扫描周期内,MPScope请求处理发生在高速扫描处理、低速扫描处理、中断处理以外的时间段。这种在下位机处理请求信息的方式一定程度上减轻了上位机的并行处理负担,提高上位机的处理效率和系统的稳定性。

图3 寄存器读/写请求执行时间

MPScope支持VB、C++、C#等汇编语言进行控制系统开发。以ReadRegisterBlock为例,用户只需在程序中定义ezRegister和nSize的值,即可返回寄存器数据nData()。

表1 ReadRegisterBlock参数

通过MPScope软件,上位机可以读出分散在各处的运动控制器的线圈状态和寄存器内容,并可对其内容进行设置更改,从而实现对工业现场多个电机轴的集中监视和控制。

4 软件设计

4.1 下位机软件设计

多轴运动控制器MP2300S作为下位机需要对各伺服轴进行参数设置及编程。先设定控制器模块构成,之后设定其参数,最后再进行运动控制设计。按照控制要求,可采用PLC梯形图方法编写程序。编写程序使用总图、子图、孙图和IF命令,使控制梯形图层次化[2]。

进行速度、转矩、位置控制的步骤为:开始设定前确认“伺服使能ON”,给出运动控制条件,再分别设定表示各个控制的“运动命令”。其基本动作流程如图4所示。

图4 基本动作流程图

4.1.1 手动控制模式

根据多轴联动的需求,控制系统分为手动和自动两种控制模式。手动模式下,通过对单个或多个电机的控制实现对电机初始位置的调整;自动模式下,利用预先编写的程序能够一键完成多电机的联动操作。

手动控制模式下,需要对各轴进行参数配置和逻辑编程。以轴1为例,根据流程图设计梯形控制图如图5所示。上位机只需改变相应寄存器变量的值即可控制轴1的正反转和速度。

4.1.2 自动控制模式

在手动模式的梯形控制图中加入动作文本程序即可实现多电机的联动操作。以某一多轴电机联动为例,图6给出该联动动作的文本程序。上位机只需将相应动作的寄存器变量值置为1,即可按照文本程序里面的速度、加速度、位置设定完成相应的动作。

图5 梯形控制图

图6 文本程序

4.2 上位机软件设计

上位机通过Ethernet接口与运控控制器MP2300S相连。主控制软件采用LabVIEW编程,并利用MPScope软件通讯。根据LabVIEW ActiveX调用原理进行上位机程序编程。MPScope具体调用步骤如下:

1)安装MPScope软件包,启动通讯工具软件,并设置IP地址,生成一个用于工控机与MP2300S通信用的文件(文件扩展名为“.ini”);

2)在LabVIEW程序框图中放置“打开自动化”控件,右键图标点击“选择ActiveX类”,在弹出的对话框中设置类型库为“YASKAWA MPScope Control Version 1.0”,点击确定按钮完成自动化引用句柄与MPScope应用的连接;

3)将通讯文件(文件扩展名为“.ini”)的路径连接至“ConnectFilePath”接线端完成通信路径设置;

4)选取调用方法,将寄存器的名称连接至“szRegisterList”接线端、数据连接至“nData()”接线端,即可实现MPScope的调用。

以1号电机的速度设置为例,图7显示了其调用过程。

图7 MPscope调用示例

选择LabVIEW作为多轴伺服控制系统的开发软件,主要采用while循环作为整体框架,通过调用事件结构来进行整个系统的控制,主要包括电机使能、正反转及转速的设置,该软件的流程图如图9所示。

图8 软件流程图

图8显示出主控制系统的功能有:

1)状态判断和显示程序。在电机运动之前,需对电机的状态进行判断,确定无报警、无过高扭矩状态出现。将当前的状态信息和报警信息内容实时显示在操作面板上。

2)保护程序。在主程序运行中,应注意电机的实时位置,在限位位置应及时将电机停下来,对系统进行限位保护。同时,设置逻辑保护,禁止手动模式与自动模式同时操作。

3)进行电机控制与显示操作。控制各个轴电机的使能、速度、正反转设定,并能实时显示各个轴电机的状态参数。

通过需求分析、功能分解、软件编码完成最终的专用控制程序,使之满足多电机联动要求。如图9所示,控制系统通过对电机的实时控制,完成机构的各种动作。主控制程序界面如图10所示。

图9 多轴联动示意图

图10 主控制程序界面

实际运行结果显示,控制系统在并行处理、数据交换、运动控制及时性方面均有很好的表现;同时系统的稳定性好,避免了因系统故障而出现的各种问题。

5 结束语

1)采用工业控制计算机作为上位机,安川MP2300S控制器作为下位机,基于LabVIEW与ActiveX组建的控制系统,能够实现控制多台伺服电机使能、正反转及速度设定的功能。

2)将LabVIEW作为控制系统开发软件,充分利用了LabVIEW强大的并行运算能力,弥补了传统编程方

【】【】式语法要求严格、开发者职业化程度高、不易维护的缺点,将系统开发难度大大降低;同时系统性能稳定、操作方便,具有良好的扩展性和移植性,有利于工业自动化的广泛应用。

[1]王晔.浅谈运动控制系统核心——运动控制器[J].自动化博览,2015,(z1):106-108.

[2]姬琪,王红园.基于MEMOBUS协议的多轴电机控制系统设计[J].电子测量技术,2013,36(10):1-4.

[3]杨旭东,张飞库,谢昆,王洪生,苏媛媛.采用上下位机的旋压机控制系统研究[J].现代制造工程,2010,(04):46-49.

[4]侯益坤,徐慧娟,童庆辉.采用ARM和LM629的直流电动机伺服控制系统研究[J].现代制造工程,2010,(08):124-127.

[5]庄焕伟,苏宏英.基于单片机的多步进电动机控制系统[J].现代制造工程,2008,(11):121-123.

[6]S. Iang,M. H. Smith,J. Kitchen. Automatic tuning of two-degreeof-freedom PID control for engine electronic throttle system[J].Lancet, 2010,2(7716):135-140.

[7]庄丽.机器人系统中交流伺服电机控制研究[J].制造业自动化,2015,37(07):61-62,83.

[8]Roberto H,Juan A Tapia,Thomas M. Jahns.Saliency analysis of PMmachines with flux weakening capability[A].International Conference on Electrical Machines[C].2008.

[9]胡志强,王润孝,李曙光.舞蹈机器人动作设计与实现研究[J].制造业自动化,2006,(11):36-39.

[10]江小玲,舒志兵.基于CAN总线多轴伺服电机的同步控制[J].机床与液压,2012,40(08):140-142.

[11]黄娟娟,李晓明,张莲梅,王任军.基于Web的多异构电力信息集成系统的开发与应用[J].电力科学与工程,2003,(04):58-61.

[12]沈琦.基于LabVIEW的机器人控制软件系统设计[J].电子技术与软件工程,2013,(15):73.

猜你喜欢
下位寄存器伺服电机
专利名称:一种适应压铸环境的伺服电机
Lite寄存器模型的设计与实现
二进制翻译中动静结合的寄存器分配优化方法
提高火力发电厂自动电压控制系统投入率的措施
发射机房监控系统之下位机
生产线中的伺服电机定位控制
伺服电机控制技术的应用及发展趋向分析
移位寄存器及算术运算应用
伺服电机控制在电阻焊机的应用研究
围观党“下位”,吐槽帝“登基”