APP下载

西门子数控系统人机界面二次开发方法研究

2011-10-20化春雷刘春时

制造技术与机床 2011年10期
关键词:人机界面二次开发控件

邴 旭 化春雷 李 焱 刘春时

(沈阳机床(集团)有限责任公司,辽宁沈阳 110142)

人机界面(Human Machine Interface,HMI)是用户与机床互相传递信息的媒介,用来实现信息的输入与输出。数控系统已经具备比较通用的人机界面功能,用来实现操作、监控、编程、设置和诊断功能。

随着我国工业化进程的日益推进,机械零部件加工工艺的不断翻新,对高性能、高精度机床的需求也越来越大。因此,国家拨出了专项资金,进行多款新型机床的研制。然而,随着新型机床的不断涌现,通用的HMI界面已经不能很好地满足用户的需要,为使人机界面向着更加人性化、更加高科技化的方向发展,机床企业非常有必要投入人力物力对人机界面的二次开发进行系统的研究。通过对通用HMI界面的二次开发,机床制造商可以针对不同机床和不同应用场合,开发出独具特色的人机交互界面。

1 人机界面开发的需求

从机床的发展趋势来看,人机界面的需求主要集中在以下几个方面:

(1)专用机床上的应用

专用机床如专用磨床、激光切割机床等,需要有自己的专用界面,这样才方便对设备进行操作和管理,也使专用机床的效益得到充分的发挥。因此随着专用机床所占市场份额的增加,人机界面二次开发的需求量也相应增加。

(2)特殊结构上的应用

在机床的应用中,往往许多机床都有其自身特有的部分,用户为了操作需要,经常会提出定制相关操作界面的需求。

(3)简化操作的需要

如果能够把机床的一些常用参数和常用的功能归纳到若干个画面中,并且可以直接修改,用户操作起来就会更加方便和灵活。以提高工作效率等为目的的人机界面开发需求无疑是所占界面开发需求比重最大的。其需求大致可以分为以下几方面:

①参数设定 用来设置运行时间、系统参数以及改变测量系统等的界面;

②系统诊断 用来处理I/O信息及报警处理等的界面;

③功能扩展 对标准的系统功能进行深度扩展。

2 西门子系统HMI开发方法综述

目前,国内外常用的西门子数控系统有802D sl、810D、840D pl。其中802D sl由于面向低端经济型数控机床,其人机界面能够满足绝大多数用户的需要,因此不需要进行界面的二次开发,而实际上西门子公司也没有提供802D sl系统人机界面的开发方法。

810D和840D pl系统都是开放式的数控系统,其配套的人机界面HMI Embeded或HMI-Advanced建立在Windows System-embed之上。针对HMI的二次开发,西门子提供了3种开发方法,分别是系统预留的扩展用户接口、HMI编程包(HMI programming package)以及西门子公司开发的专业组态软件 WinCC Flexible。它们各自的特点如表1所示。

表1 3种界面开发方法的特点比较

最近,西门子公司新推出了两款数控系统,分别是用于中档机床的828D和用于高端机床的840D sl,它们相应的HMI软件是基于Linux操作系统的operator。针对operator的二次开发,西门子提供了两种开发方法,一种是扩展用户接口,一种是针对operator的开发包。这两种开发方法与针对HMI Embedded或HMIAdvanced的扩展用户接口和HMI开发包非常相似,只是语法和软件上稍有不同。

综上所说,我们可以看出,针对西门子系统的HMI界面二次开发方法,可以分为扩展用户接口、HMI编程包、西门子专业组态软件WinCC Flexible三类。下面以开发常用的HMI-Advanced界面为例,说明一下3种开发方法的应用。

3 扩展用户接口简介

扩展用户接口适用于 MMC、HMI Embedded和HMI Advanced,通过它配置的画面可实现下列功能:

(1)定义画面中的软键、变量、表格、文本和图片等。

(2)对打开画面,输入数值,按压软键以及退出画面等动作做出响应;动态改变画面,如改变画面中软键、文字和图片等。

(3)定义操作等级,在不同的系统保护等级下显示不同的内容。

(4)执行功能,读写NC/PLC变量,并可做算术和逻辑运算;可通过软键或PLC的信号调用画面,进行多个画面间的数据交换。

它利用并定义标准界面上的空白软键激活存放于标准循环(或制造商循环,或用户循环)目录下的画面配置文件(com文件)。画面配置文件是文本格式的按照一定语法规则编写的文件,具体语法和格式可以参考Doc on CD中的SINUMERIK 840D/840Di/810D HMI Installation and Start-Up Guide文档。

使用此种方法,可编写出与 SINUMERIK810D/840D/840Di加工循环帮助画面相似的画面,并且在SINUMERIK 840D/810D使用的工具盒(Toolbox)中提供了若干实例,帮助初学的用户理解和掌握此方法。该方法是系统标准功能,画面配置语句多,能够完成一些常用画面的编制,但是鉴于语法中的参数过于复杂,只适合开发一些非常简单的界面,不建议应用该方法开发较复杂的界面。

4 HMI编程包应用

HMI编程包(HMI Programming Package)不是系统标配的,需要额外订购。应用HMI编程包,允许用户将使用VB或VC++编写的应用程序加入HMI Advanced,并可通过提供的接口实现诸多功能。例如,访问NC/PLC变量、多画面的调用、NC数据管理、复杂的计算、输出加工数据等功能。

由于PCU上预装的都是英文的XP系统,因此建议最好在英文Windows系统下安装HMI编程包并进行界面二次开发,以防止英文开发软件和中文操作系统兼容性不好而造成若干问题。

开发时需要将HMI开发包提供的模块、窗体加入到创建的工程中。由于相关的模块和窗体较多,建议用户可在HMI编程包自带的Sample的基础上开发自己的oem程序。

我们开发的界面程序以及相关配置文件,需放置在oem,hmi_adv,mmc2中才可正常运行,如果这几个目录中的同名文件的配置不同,则oem中的文件配置生效,因此,我们要将界面相关的文件放置在oem或其子文件夹中。下面以应用VB为例说明界面程序的开发和嵌入过程:

(1)打开例子HMI编程包自带的程序oembsp1.vbp,根据需要设计自己的界面,最后生成可执行文件oembsp1.exe。这与开发普通VB程序的过程几乎没什么区别,只是HMI提供的控件与VB或VC标准控件的外观和属性会稍有不同。

(2)修改配置文件:

①修改oem目录中的RE_UK.ini,配置软键6(可以根据需要设定调用开发界面的入口软键)的文本,将6号软键的标签修改为“test”:

②修改oem目录中的Regie.ini,为6号软键配置我们开发的界面程序oembsp1.exe:

(3)根据需要修改在oemoembsp1目录中的2个文件:

①修改.mdi 定义了所有程序内部子窗口及其类型。

②修改.zus 定义了oem程序的状态及动作。例如如下文件中的矩阵定义了State 0时,水平与垂直软键扩展数为0,包含有OEM1与OEM2两个子窗口,按下软键0将触发状态1。

[0] 0 0 “OEM1””OEM2” ”0”1

(4)根据需要修改在oem目录下的oembsp1.ini文件中的CONTROL字段,指定上面2个文件的位置。例如:

(5)在 oemlanguageo1_UK.dll中,定义了界面程序中软键的文本,可用VC++以“资源”方式查看并修改。

最后可以把所需的文件统一制作成一个安装包。这样可以实现一键式安装界面,操作十分简便,只要懂一点基础的电脑知识,即使不是专业设计人员也可以安装该界面。此外,当不需要该界面时,可以在PCU今后windows后,很方便地卸载。

笔者应用HMI开发包开发了几个界面,如为某型号卧式加工中心开发了一套方便电气设计员调试的调试界面(图1);为某型号机床开发了一套托盘交换操作界面(图2),应用此界面能够省掉一套按钮操作面板,而且也方便了设计人员。

5 WinCC Flexible应用

WinCC Flexible是西门子公司开发的专业组态软件,若要应用于数控机床人机界面的开发,还要安装一个SINUMERIK配置包。WinCC Flexible适用于西门子的各种操作面板,可组态基于Windows CE的SIMATIC HMI设备、西门子的 C7、乃至 PC机。支持TIA,可以与西门子的STEP7、iMap和Scout等软件集成在一起。WinCC Flexible易于上手,功能强大,图库和操作对象丰富,提供智能化的向导工具,支持VB脚本和C脚本功能。

应用WinCC Flexible组态了HMI界面后,要把生成的运行文件复制到MMC或PCU上。这种方法生成的画面可以嵌入HMI Advanced,也可单独运行(多用于生产线或机床的辅助面板等)。下面以设计一个如图3所示的界面为例,来说明应用WinCC Flexible开发界面的过程。

(1)设计界面外观

在WinCC Flexible的设计窗口中绘制界面的外观。根据需要在设计窗口中添加控件,常用的控件有如各种形状、IO域、按钮、文本框等。界面空间的布局应简洁明了,设计人员应根据对现实操作物的理解设计出能给用户带来方便的界面。

(2)配置与NCU的通讯连接

首先在WinCC Flexible的连接配置窗口中添加连接,如果是访问PLC变量需要添加SINUMERIK PLC连接,如果还要访问NC变量,则还需要添加SINUMERIK NC连接。添加了连接之后,还要在变量配置窗口中添加所需要访问的PLC变量、NC变量以及WinCC Flexible界面程序的内部变量。

(3)为控件关联变量、定义事件

为了让界面中的控件能够实时显示机床的状态并控制机床的动作,我们需要为控件配置PLC变量和NC变量、定义事件。例如,在IO域的general选项中,设置tag属性为所要显示的变量,即可在界面运行时实时显示该变量。又如在按钮控件的事件选项中,可为各种鼠标和键盘等事件配置所要触发的系统函数,如果想要触发一系列动作,可以先编写动作脚本,然后再调用。脚本语言可以根据设计人员的实际情况采用VB脚本语言或者是C脚本语言。

(4)设置报警

在WinCC Flexible的报警管理器中可以设置模拟量和数字量的报警。设置了触发报警的条件后,界面运行时,一旦满足报警条件就能够即时发出报警。例如,设置当主轴温度传感器的测量值超过某一设置值时发出主轴温度高报警。这样调试人员就可以根据报警立刻知道问题所在,及时解决故障。

(5)生成界面运行文件

界面编制好之后,通过编译或者运行都会生成一个.fwx文件,这个文件就是界面程序的运行文件。把该文件复制到要运行的电脑上(如PCU或笔记本电脑),并在该电脑上装好WinCC Flexible安装程序的Runtime部分后,即可运行界面程序的运行文件。

6 第三方应用程序的嵌入

EPS、ARTIS等软件是独立于SIEMENS系统的具有远程诊断功能和刀具监测功能的专业软件。我们需要将其嵌入在系统HMI内部,通过软键来调用,实现某些专业的功能。例如图4为通过按页面下的“ARTIS”软键,调出图5所示的ARTIS软件操作界面。

按照如下的方法修改配置文件后,即可在HMI Advanced中调出ARTIS程序。

(1)修改RE_UK.ini,配置入口软键文本:

(2)修改Regie.ini,为6号软键配置应用程序ARTIS.exe:

下面例举2个实用的第三方程序嵌入HMI Advanced的例子。

例1:在HMI Advanced嵌入WinCC Flexible运行文件。

修改RE_UK.ini,配置接口软键7(可根据需要设置软键)文本HSK 7=“WinCC",并按如下格式修改Regie.ini。

例2:在HMI中嵌入Step7软件,这样在PCU上就可以修改NCU中的PLC程序而不用其他调试用的设备。

修改RE_UK.ini,配置接口软键7(可根据需要设置软键)文本HSK 7=“Step7",并按如下格式修改Regie.ini。

7 结语

今后,随着我们对数控系统结构和硬件的深入研究,自适应控制、模糊控制、神经网络控制和前馈控制等先进控制技术在数控机床领域的应用,无疑将进一步提高我国数控机床的性能与质量。在这种情况下,机床制造企业需要通过对HMI界面的二次开发来实现为数控机床添加可靠性更高、专业性更强的功能,开发出操作更加灵活方便、功能更加全面的人机界面,进而增加产品的附加值,提升产品的竞争力。

[1]高峰.西门子OEM软键在数控凸轮轴磨床上的开发与应用[J].制造技术与机床,2006(10):122-125.

猜你喜欢

人机界面二次开发控件
浅谈基于Revit平台的二次开发
浅谈Mastercam后处理器的二次开发
关于.net控件数组的探讨
西门子Easy Screen对倒棱机床界面二次开发
CBTC系统车载人机界面的设计与实现
基于PLC与人机界面的经编机电子横移控制系统研究
CTCS-3级列控车载人机界面的系统设计与实现
达人机界面DOP-B10VS511
基于Pro/E二次开发的推土铲参数化模块开发
就这样玩会VBA中常见的自定义控件