全软型开放式三轴数控系统的开发应用

2017-09-16 08:20王舒玮
关键词:数控系统开放式界面

王舒玮

(山西大同大学机电工程学院,山西大同037003)

全软型开放式三轴数控系统的开发应用

王舒玮

(山西大同大学机电工程学院,山西大同037003)

针对现有的基于Servo Works的全软型开放式多轴数控系统,在研究分析Servo Works技术的基础上进行实时扩展。首先对系统引擎进行了初始化设定,再利用Servo Works CNC提供的应用程序编程接口,对软件功能、数据结构进行定义,并使用VB作为开发工具,在二次开发包基础上对系统界面进行设计和参数的设定。软PLC部分是在系统提供的Ladder Works PLC基础上,通过重新设置临时地址点和命令状态,进行相应配套PLC部分的扩展,保证三轴数控系统的软硬件能够合理的衔接,弥补了传统数控系统平台开放性不足的缺点,可以开发出满足个人需求的各种加工平台。

Servo Works数控系统;SDK;PLC

开放式数控系统是指将在数控系统放置在统一的运行平台上,并对其开发。其核心是利用数控功能来重新定义、增加或删除结构对象,研发出各个档次的开放式系列化数控系统[1]。

随着开放式数控系统的发展,可编程逻辑控制器已由以前各PLC产品互不兼容的传统硬PLC逐步向基于PC丰富的软、硬件资源,用软件实现传统PLC功能的软PLC发展[2]。

1 现有的系统硬件结构

美国Soft Servo System公司以全软型开放式的运动控制内核为基础,研究并开发出Servo Works CNC系统,其核心技术是Servo Works技术[3],他可以利用电脑内存完成计算和运行,并将数据存放在指定位置,并通过显示器显示操作界面。

本研究选用的操作系统平台为Windows XP系统,不过随着Windows 7的普及,Servo Works CNC同样能正常工作。Servo Works CNC的突出点在于其核心是利用RTX软件对其进行了升级,从Windows硬件抽象层转变成RTX硬件抽象层,也就是说原本的大量进程任务的实际工作形式并没有发生变化[4]。这样产生的RTSS(Real Time Scientific System,即实时科学系统)为用户提供标准DLL(Dynamic Link Library,即动态链接库),便于调用Win32中的应用程序。RTX扩展之后的Windows系统结构,见图1。

图1 RTX扩展方案

2 利用Servo Works CNC软件技术进行二次软件开发

Servo Works CNC软件部分由四部分组成:Servo Works引擎内核、各种Servo Works通讯平台驱动、Servo Works DLL和SDK(Servo Works Develop Kit,即Servo Works二次开发软件包)。

其中SDK是Servo Works CNC中实现二次开发的重要工具,他为开发者提供了API函数库和源函数程序,利用VB对具体操作指令进行编程设计,开发出基于S-140M的开放式三轴数控系统。另外,API函数库和源函数程序包括控制功能和管理功能。控制功能主要是实现局部变量、全局变量、变量引用、变量赋值的功能,而实现这些内容主要是通过调用API中最核心的4个子函数(即sss GetLocal Macro Var、sss Get Global Macro Var、sss Get Permanent Macro Var、sss Set Permanent Macro Var)完成[5]。管理功能通过调用Servo Works实时DLL或Windows API执行。

本研究的系统在软件设计方面,具体内容为:背景平台是在Windows操作系统下进行;首先通过RTX对原有Windows进行扩展,然后利用Servo Works提供的API,使用Visual Basic作为开发工具,进行软件的设计与实现[6]。

2.1 利用SWAPI进行功能定义

S-140M提供了丰富的API(SWAPI),其功能涉及了传统数控系统包含的所有功能模块[7],在进行新型系统的设计开发之前,需要对所需的功能进行定义。具体内容如下(部分):

(1)设备控制指令

sss Open/Close Device:Servo Works设备的打开/关闭。

(2)系统初始化指令

sss Install Drivers:安装操作系统所需要的模块。

sss Open Drivers:与原有实时模块建立通信连接。

(3)数控系统控制指令

sss Set EMG Stop On/Reset:在急停条件下停止/恢复所有操作。

sss Set Nc Mode:定义NC工作模式。

2.2 定义数据结构

用户定义基本数据框架,分别有以下内容(部分):

(1)SERVO_CONTROL_PARAM:用来存储本系统的伺服控制主要参数。

2.3 界面设计部分

在S-140M界面框架的基础上,通过使用SDK开发包,在保证系统正常工作的状态下,设计和开发了三轴数控系统。启动窗口,见图2。

图2 数控系统启动窗口

当打开三轴数控系统软件时,会自动进行初始化状态设置。设计出的开放式三轴数控系统,主要是在软件替代硬件的基础上,具有硬件布局简单、开放性高、满足多样化数控场合的优点。系统主界面,见图3。

人机界面初始化的部分程序如下:

图3 系统主界面图

2.4 系统参数的设定

对于基于S-140M开发出的开放式数控系统中,只需在注册表中进行编写,就可以直接在界面上实现相应的设置。如此一来,便要对注册表编写进行设定,通常由以下函数实现(部分):

通过这些函数,三轴数控系统就可以通过注册表实现设置。

2.5 部分操作模式的函数调用

在主界面点击菜单下方增量点动功能按键,生成SUB_BTN_2的点击事件,调用Set Jor Incr Mode函数进入增量点动模式,见图4。图5是显示增量点动模式的运行状态。

图4 通过点击按钮进入增量点动模式

图5 增量点动模式运行显示

3 配套PLC的开发

Ladder Works是基于Servo Works技术的一种软件式内置软PLC系统。Ladder Works PLC系统包括Servo Works PLC引擎内核、swPLC_Link(Servo Works PLC Link,即Servo Works PLC链接)系统服务和 Ladder Works控制台组成。其中,sw-PLC_Link,即运行于Windows的主要内容,实现应用程序与系统程序的链接,是其主要任务,见图6。

图6 swPLC_Link服务功能示意图

本课题在开发软PLC程序方面,按照以下步骤实施[8]:

(1)做整体规划。需要考虑功能和模块扩展、内部和外部地址点的分布。

(2)设置临时通讯地址点。在模块的执行条件满足之前,检查各功能能否执行状态地址,并设定实时更新。

(3)注意命令和状态之间的区别。该系统有人机界面上的软件操作面板和传统的硬件操作面板。要注意两者对ONC运行状态的综合效应[9]。

此外,鉴于PLC程序的通用性,处理输入地址不依赖于硬件,只需进行简单设置便可使PLC满足各类型的输入和输出。相关软PLC的控制界面,见图7,屏幕显示工具便是通过该界面完成的,作用是用来实现软PLC程序的编辑与编译。在该系统中,为了后续操作方便,特地为此设定了快捷键,即点击Ctrl+Alt+1。

另外,点击Ctrl+Alt+2可显示绘制出梯形图,见图8;点击Ctrl+Alt+3可显示开发出的系统位值显示框,见图9;并拓展出软PLC系统时序表工具,通过点击Ctrl+Alt+4出现图10的形式显示任意信号地址指定位信号的历史记录,来帮助调试软PLC程序。

图7 配套PLC控制面板

图8 配套PLC梯形图

图9 配套PLC位值

图10 配套PLC波形图

4 软件测试

通过程序来对系统进行测试。程序代码为:

其中G91为增量定位模式,G90为绝对定位模式[10]。数控系统工作界面,见图11。

图11 测试结果

5 结束语

本课题基于全软型开放式数控系统具有通用性、可靠性和实时性的特点,在拥有传统数控系统所具有的基本操作功能的基础上[11],利用全软型开放式数控系统,坚持将开放式与传统式相结合的特点,在Windows XP的系统平台上,实现全软型开放式数控系统在三轴数控系统中的开发,并制定了配套的软PLC程序,并取得阶段性成果。

利用Servo Works技术和相关硬件技术的三轴数控系统是一种有效的尝试,为今后开放式数控系统的进一步开发提供了经验。同时由于二次开发软件SDK操作简单,研发方便,缩短开发周期,降低开发费用,具有显著的经济效益。

[1]张侠.开放式数控系统数据通讯管理与状态监测技术研究[D].天津:天津大学,2008.

[2]王舒玮.全软型开放式数控系统关键技术及应用研究[D].呼和浩特:内蒙古工业大学,2016.

[3]白晓灿,陈永明.纯软件开放式数控系统在桥切机数控化改造中的运用[J].机电工程技术,2010,39(6):113-114,164.

[4]Soft Servo Systems Inc.Servo Works with VersioBus Setup and Integration Manual[Z].2008.

[5]章明众,李寅,陈华,等.开放式数控系统宏程序替代功能的开发与应用[J].机床与液压,2011,39(4):43-44.

[6]陈清德.纯软件开放式CNC技术的研究及应用开发[D].厦门:厦门大学,2007.

[7]Soft Servo Systems Inc.Ladder Works PLC Reference Manual[Z].2008.

[8]李寅.纯软件开放式数控系统的研究及其在加工中心上的运用[D].厦门:厦门大学,2009.

[9]白艳艳.开放式数控系统中的软件PLC的研究开发[D].北京:北京工业大学,2003.

[10]李悦韡.具有点位控制功能的伺服驱动系统的实现[D].哈尔滨:哈尔滨工业大学,2013.

[11]张小兵.数控技术发展趋势探讨[J].机电技术,2008(2):88-90.

Development and Application of All Soft ONC Three-axis Numerical Control System

WANG Shu-wei

(Mechanical and Electrical Engineering Shanxi Datong University,Datong Shanxi,037003)

For the existing system based on Servo Works of all soft open multi-axis CNC system,based on the analysis of Servo Work we did real-time expansion.First,the system engine is initialized,and then we use the application programming interface provided by Servo Works CNC to define the software function and data structure.And we use VB as a development tool to design the system interface and set parameters in the secondary development package.Soft PLC part is provided on the basis of Ladder Works PLC,by resetted the temporary address point and command status and expansion of supporting PLC,we ensure that the three-axis CNC system hardware and software to convergence,and make up for the traditional NC system platform open lack of shortcomings,which can be developed to meet the individual needs of a variety of processing platforms.

Servo Works CNC system;SDK;PLC

TH164

A

〔责任编辑 王东〕

1674-0874(2017)04-0058-04

2017-05-20

王舒玮(1990-),女,河北定州人,硕士,助教,研究方向:机械制造。

猜你喜欢
数控系统开放式界面
开放式数字座舱软件平台IndiGO
国企党委前置研究的“四个界面”
小学作文开放式教学的思考
开放式计算机实验教学自主学习平台
基于FANUC PICTURE的虚拟轴坐标显示界面开发方法研究
基于FANUC 32i A数控系统的外部测量设计
西门子840D sl数控系统在SC125大型车铣镗床技术改造中的应用
基于FANUC Oi mate TD数控系统的手动功能开发
数控系统中GUI软件平台设计和实现
开放式弹簧机数控系统开发