楊家榮 徐志明 王昌富
(上海電氣集團(tuán)股份有限公司中央研究院,上海 200070)
基于OPC技術(shù)的數(shù)控機(jī)床遠(yuǎn)程監(jiān)控技術(shù)研究*
楊家榮 徐志明 王昌富
(上海電氣集團(tuán)股份有限公司中央研究院,上海 200070)
介紹了目前比較熱門的OPC技術(shù),研究探討了OPC技術(shù)的工作機(jī)理,設(shè)計(jì)了一種基于OPC技術(shù)的數(shù)控機(jī)床遠(yuǎn)程監(jiān)控系統(tǒng),實(shí)現(xiàn)了與西門子SINUMERIK 840D數(shù)控系統(tǒng)的通訊,能實(shí)時(shí)讀取和控制來(lái)自機(jī)床數(shù)控系統(tǒng)的各種信息,還實(shí)現(xiàn)了對(duì)多臺(tái)數(shù)控機(jī)床的集中管理和實(shí)時(shí)監(jiān)控,解決了傳統(tǒng)控制無(wú)法實(shí)現(xiàn)集中監(jiān)控的問(wèn)題。
OPC 遠(yuǎn)程監(jiān)控 數(shù)控
隨著我國(guó)工業(yè)化進(jìn)程的加速,數(shù)控機(jī)床正以其精度高、效率高、操作方便等優(yōu)點(diǎn)在現(xiàn)代企業(yè)中得到了廣泛應(yīng)用。與此同時(shí),數(shù)控機(jī)床價(jià)格昂貴,其本身的復(fù)雜性增加了維修的技術(shù)難度和維修費(fèi)用。目前,對(duì)于數(shù)控機(jī)床的管理還停留在一個(gè)較低的水平,多是采用發(fā)現(xiàn)故障后上報(bào)等形式通過(guò)人工控制。在這種模式下,出現(xiàn)故障不能及時(shí)發(fā)現(xiàn),存在隱患不能及時(shí)排除,將導(dǎo)致機(jī)床運(yùn)行效率低下。雖然隨著技術(shù)的發(fā)展,部分企業(yè)開始嘗試?yán)眠h(yuǎn)程監(jiān)控技術(shù)來(lái)統(tǒng)一集中管理所有的數(shù)控機(jī)床,但這些監(jiān)控裝置多需要添加額外的數(shù)據(jù)采集裝置,在增加了額外費(fèi)用的同時(shí),還無(wú)法與現(xiàn)有數(shù)控系統(tǒng)實(shí)現(xiàn)整合。且一般企業(yè)都有來(lái)自不同廠家品牌的機(jī)床,所使用的數(shù)控系統(tǒng)也各不相同,這也對(duì)監(jiān)控裝置的開發(fā)帶來(lái)了一定的難度。
針對(duì)這一現(xiàn)狀,本文利用目前比較熱門的OPC技術(shù),探討設(shè)計(jì)了一種基于OPC技術(shù)的數(shù)控機(jī)床遠(yuǎn)程監(jiān)控系統(tǒng),實(shí)現(xiàn)了與多臺(tái)西門子SINUMERIK 840D數(shù)控系統(tǒng)的通訊,能實(shí)時(shí)讀取和控制來(lái)自數(shù)控系統(tǒng)的坐標(biāo)位置信息、參數(shù)、PLC狀態(tài)變量,報(bào)警內(nèi)容等信息,解決了傳統(tǒng)控制無(wú)法實(shí)現(xiàn)集中管理和實(shí)時(shí)監(jiān)控的問(wèn)題,且無(wú)需增加額外的數(shù)據(jù)采集裝置,將運(yùn)行維護(hù)人員從大量繁瑣的工作中解放出來(lái),增強(qiáng)監(jiān)控管理的靈活性和可控性,大大減少了因故障帶來(lái)的各種不良影響。
SINUMERIK 840D是西門子公司20世紀(jì)90年代推出的高性能數(shù)控系統(tǒng),系統(tǒng)基于PC平臺(tái),擁有各類豐富的接口,以及比一般數(shù)控系統(tǒng)更好的人機(jī)交互能力和上層應(yīng)用系統(tǒng)集成能力,便于用戶對(duì)系統(tǒng)功能進(jìn)行定制和參數(shù)調(diào)節(jié),其硬件框架如圖1所示[1]。
目前為止,對(duì)采用西門子840D數(shù)控系統(tǒng)的機(jī)床所進(jìn)行的遠(yuǎn)程監(jiān)控,主要是采用安裝SINCOM軟件或者ReachOut遠(yuǎn)程診斷軟件,再通過(guò)以太網(wǎng)進(jìn)行通訊[2-3]。這些軟件都需要額外向西門子購(gòu)買,且安裝不便,安裝完成后需要進(jìn)行大量配置,如SINCOM軟件還需要修改PLC,編制相應(yīng)的PLC程序來(lái)配合實(shí)現(xiàn)監(jiān)控,監(jiān)控功能也有限,最重要的是,不能實(shí)現(xiàn)按照客戶的需求進(jìn)行監(jiān)控,且無(wú)法與其它機(jī)床的監(jiān)控程序整合,形成集中監(jiān)控。
實(shí)際上,西門子另外可提供專門用于二次開發(fā)的OEM軟件,其中包含了用于OPC技術(shù)的自動(dòng)化接口,使用戶通過(guò)OPC接口進(jìn)行存取NCK中的各個(gè)變量和數(shù)據(jù)。既可在OEM-MMC系統(tǒng)中集成自己的操作界面實(shí)現(xiàn)機(jī)床的管理和監(jiān)控,也可以利用OPC接口通過(guò)以太網(wǎng)網(wǎng)絡(luò),讓自己的程序和NC/PLC之間進(jìn)行通訊,實(shí)現(xiàn)機(jī)床的遠(yuǎn)程管理和監(jiān)控。這種通訊方式具有統(tǒng)一的接口規(guī)范,可將車間內(nèi)其它采用相同OPC接口規(guī)范的設(shè)備全部納入監(jiān)控的范疇。
OPC全稱是OLE for Process Control,它是由一些世界著名的自動(dòng)化系統(tǒng)、硬件、軟件公司和Microsoft(微軟)緊密合作而建立的。以前,為了存取現(xiàn)場(chǎng)設(shè)備的數(shù)據(jù)信息,每個(gè)應(yīng)用軟件開發(fā)商都需要編寫專用的接口函數(shù)。由于現(xiàn)場(chǎng)設(shè)備的種類繁多,給用戶和軟件開發(fā)商帶來(lái)了巨大的工作負(fù)擔(dān)。系統(tǒng)開發(fā)商急需一種具有高效性、可靠性、開放性、可互操作性的即插即用的設(shè)備驅(qū)動(dòng)程序。OPC技術(shù)的出現(xiàn)有效地解決了這一問(wèn)題,它將底層硬件驅(qū)動(dòng)程序和上層應(yīng)用程序的開發(fā)有效地分隔開,使用統(tǒng)一的數(shù)據(jù)接口實(shí)現(xiàn)了不同設(shè)備協(xié)議間的數(shù)據(jù)互訪[4]。借助Microsoft的DCOM(分散式組件對(duì)象模型)技術(shù),OPC可支持在局域網(wǎng)、廣域網(wǎng)甚至INTERNET上不同計(jì)算機(jī)上的對(duì)象之間的通訊,實(shí)現(xiàn)了高性能的遠(yuǎn)程數(shù)據(jù)訪問(wèn)能力。圖2所示為OPC技術(shù)基礎(chǔ)構(gòu)成圖,圖3為本地監(jiān)控計(jì)算機(jī)和遠(yuǎn)程數(shù)控系統(tǒng)之間的客戶端和服務(wù)器基于COM的連接。
OPC技術(shù)自問(wèn)世以來(lái),在工業(yè)過(guò)程控制方面得到了廣泛的應(yīng)用。目前,OPC標(biāo)準(zhǔn)已經(jīng)成為了實(shí)際的工業(yè)標(biāo)準(zhǔn),其應(yīng)用場(chǎng)合如與PLC的監(jiān)控,組態(tài)軟件的通訊,在DCS和SCADA系統(tǒng)中的應(yīng)用,各類監(jiān)控系統(tǒng)如水電站監(jiān)控、智能樓宇監(jiān)控等,但在數(shù)控機(jī)床遠(yuǎn)程監(jiān)控方面的應(yīng)用,目前為止還不多見。
本監(jiān)控系統(tǒng)主要由OPC服務(wù)器和OPC客戶端應(yīng)用程序兩部分構(gòu)成,西門子SINUMERIK 840D數(shù)控系統(tǒng)上運(yùn)行的OPC服務(wù)器由數(shù)控系統(tǒng)本身提供,完成的工作就是收集數(shù)控系統(tǒng)的數(shù)據(jù)信息,并接收來(lái)自客戶端程序的指令數(shù)據(jù),然后通過(guò)標(biāo)準(zhǔn)的OPC接口傳送給OPC客戶端應(yīng)用程序,即本文所開發(fā)的遠(yuǎn)程監(jiān)控系統(tǒng),如圖4所示。該系統(tǒng)可實(shí)現(xiàn)如下功能:
(1)數(shù)控系統(tǒng)NCU中各種變量的訪問(wèn),如刀具信息、刀偏、零偏、軸坐標(biāo)位置值等。
(2)R參數(shù)的訪問(wèn)。
(3)PLC中各種變量的訪問(wèn),如I/O接口,標(biāo)志區(qū)M、數(shù)據(jù)塊DB等,通過(guò)訪問(wèn)這些變量,控制人員可遠(yuǎn)程判斷機(jī)床故障點(diǎn),有利于故障的快速排除和集中管理。
(4)利用VB設(shè)計(jì)應(yīng)用界面,如顯示數(shù)據(jù)、圖形、輸入數(shù)據(jù)等。
(5)當(dāng)機(jī)床出現(xiàn)報(bào)警時(shí),可遠(yuǎn)程實(shí)時(shí)顯示報(bào)警內(nèi)容,便于維修人員迅速掌握?qǐng)?bào)警內(nèi)容,實(shí)現(xiàn)集中控制和管理。
OPC服務(wù)器規(guī)范主要包括3種[5]:
(1)數(shù)據(jù)訪問(wèn)(DA,Data Access)規(guī)范,也叫實(shí)時(shí)數(shù)據(jù)存取規(guī)范。
(2)報(bào)警與事件(AE,Alarms and Events)規(guī)范。
(3)歷史數(shù)據(jù)存?。℉DA,Historical Data Access)規(guī)范。
另外,還有批量過(guò)程規(guī)范、安全性規(guī)范、復(fù)雜數(shù)據(jù)和公共I/O規(guī)范等。
以數(shù)據(jù)訪問(wèn)規(guī)范為例,它主要定義的是OPC DA Server(數(shù)據(jù)存取服務(wù)器)。OPC DA Server主要包含服務(wù)器對(duì)象、組對(duì)象和項(xiàng)對(duì)象。服務(wù)器對(duì)象負(fù)責(zé)維護(hù)著服務(wù)器的信息,同時(shí)也是組對(duì)象的包容器,如可以完成添加刪除組等功能。組對(duì)象維護(hù)著組的信息并提供包容項(xiàng)的機(jī)制,同時(shí)管理項(xiàng)對(duì)象。項(xiàng)對(duì)象代表了與服務(wù)器里數(shù)據(jù)源的連接,在西門子840D數(shù)控系統(tǒng)中即為定義的可以讓OPC客戶程序訪問(wèn)的ITEM,如:″/bag/state/opmode″的不同的返回值分別表示數(shù)控系統(tǒng)的當(dāng)前操作模式是處于手動(dòng),MDI,還是自動(dòng)。服務(wù)器、組、項(xiàng)三者之間的關(guān)系如圖5所示[6]。
OPC報(bào)警與事件規(guī)范定義了OPC服務(wù)器發(fā)生異常時(shí)或OPC服務(wù)器設(shè)定事件到來(lái)時(shí)向OPC客戶程序發(fā)送通知的一種機(jī)制。OPC歷史數(shù)據(jù)存取規(guī)范的實(shí)現(xiàn),可以使OPC客戶端能夠存取OPC服務(wù)器中歷史數(shù)據(jù)等。
OPC客戶端通過(guò)標(biāo)準(zhǔn)的OPC接口接收數(shù)據(jù)信息。如開發(fā)工具使用Visual Basic6.0,首先需要安裝OPC自動(dòng)化接口服務(wù)。自動(dòng)化接口封裝了COM底層的許多實(shí)現(xiàn),使用戶能比較輕松地進(jìn)行數(shù)據(jù)訪問(wèn)。西門子提供了用于二次開發(fā)的OEM軟件包,安裝后,會(huì)在計(jì)算機(jī)目錄下產(chǎn)生 SOPCDAAuto.dll以及 SOPCAEAUTO.dll兩個(gè)文件,分別對(duì)應(yīng)于數(shù)據(jù)訪問(wèn)規(guī)范和報(bào)警與事件規(guī)范自動(dòng)化接口,供用戶調(diào)用。以數(shù)據(jù)訪問(wèn)規(guī)范自動(dòng)化接口的使用為例,OPC服務(wù)器端與客戶端數(shù)據(jù)傳輸?shù)倪^(guò)程實(shí)際上是一個(gè)交互過(guò)程,其過(guò)程如圖6所示。程序部分示例如下:
(1)啟動(dòng)VB,新建一工程OPCClient,在VB主菜單的“工程”項(xiàng)中選擇“引用”,在彈出窗口可用的引用選項(xiàng)中選擇“SIEMENS OPC DAAutomation 2.0”,就可以使用數(shù)據(jù)訪問(wèn)規(guī)范自動(dòng)化接口。(報(bào)警與事件引用的是“SIEMENS OPC ALARMEVENT AUTOMATION 1.0”,方法類似。)
(2)聲明使用的對(duì)象及變量
(3)連接OPC服務(wù)器、建立OPC組和添加OPC項(xiàng)
其中,SET ITEM語(yǔ)句中可根據(jù)需要填入監(jiān)控的內(nèi)容,按實(shí)際需求創(chuàng)建。如″/Channel/GeometricAxis/actToolBasePos[u1,1]″可得到第一個(gè)通道的第一根軸的坐標(biāo)值,通常為X軸坐標(biāo)值,而″/PLC/Input/Byte[32]″則可得到PLC輸入第32字節(jié)的狀態(tài)。詳細(xì)內(nèi)容可參閱西門子相關(guān)技術(shù)手冊(cè)。
(4)實(shí)現(xiàn)同步讀寫
(5)斷開OPC服務(wù)器,釋放對(duì)象
所設(shè)計(jì)的測(cè)試程序界面及測(cè)試現(xiàn)場(chǎng)如圖7、圖8所示。在監(jiān)控程序運(yùn)行時(shí),客戶端能順利實(shí)現(xiàn)按照指定的采集頻率對(duì)數(shù)據(jù)進(jìn)行采集,并實(shí)時(shí)在界面上顯示相關(guān)信息的內(nèi)容,或者對(duì)數(shù)控系統(tǒng)發(fā)送相應(yīng)的指令或數(shù)據(jù),控制機(jī)床運(yùn)動(dòng)或修改相關(guān)參數(shù)。
OPC服務(wù)器和客戶端之間的通信基于COM/DCOM技術(shù)。COM是一種通用的與語(yǔ)言無(wú)關(guān)的二進(jìn)制標(biāo)準(zhǔn),它提供組件之間通信的標(biāo)準(zhǔn)接口,是一種跨平臺(tái)的開放結(jié)構(gòu),用于開發(fā)基于面向?qū)ο蠹夹g(shù)的客戶端/服務(wù)器應(yīng)用程序。作為COM技術(shù)擴(kuò)展的DCOM技術(shù),更可以使COM組件分布在不同的計(jì)算機(jī)上,通過(guò)網(wǎng)絡(luò)互連并互相交換數(shù)據(jù)。所以在實(shí)際監(jiān)控系統(tǒng)運(yùn)行前,還需要分別對(duì)服務(wù)器和客戶端計(jì)算機(jī)進(jìn)行相應(yīng)DCOM配置。
基于OPC技術(shù)的數(shù)控機(jī)床遠(yuǎn)程監(jiān)控技術(shù)以O(shè)LE/DCOM為技術(shù)基礎(chǔ),可充分利用以太網(wǎng)的數(shù)據(jù)傳輸優(yōu)勢(shì),具有數(shù)據(jù)傳輸實(shí)時(shí)性強(qiáng)、可靠性高的特點(diǎn),非常適合于在組成了車間級(jí)網(wǎng)絡(luò)的大型企業(yè)中使用。OPC規(guī)范了接口函數(shù),不管現(xiàn)場(chǎng)今后的數(shù)控機(jī)床采用的是西門子、FANUC或其他品牌的數(shù)控系統(tǒng),只要它支持OPC技術(shù),并提供相應(yīng)的服務(wù)器接口,客戶端都可以用統(tǒng)一的方式去訪問(wèn),并將它納入本監(jiān)控系統(tǒng)的監(jiān)控范圍內(nèi),無(wú)需增加額外的數(shù)據(jù)采集設(shè)備,從而實(shí)現(xiàn)系統(tǒng)的開放性。本系統(tǒng)開發(fā)后經(jīng)測(cè)試,系統(tǒng)運(yùn)行穩(wěn)定可靠,達(dá)到了預(yù)期的效果和設(shè)計(jì)要求,可實(shí)現(xiàn)數(shù)控機(jī)床的監(jiān)控和集中管理,大大提高數(shù)控機(jī)床的管理效率,具有良好的應(yīng)用前景。
[1]王煥春,俞濤,畢俊喜.基于西門子840D的軋輥磨削工藝參數(shù)智能決策研究[J].機(jī)械設(shè)計(jì)與制造,2008(7):158 -160.
[2]樊留群,張為民,等.840D數(shù)控系統(tǒng)的聯(lián)網(wǎng)應(yīng)用[J].機(jī)械與電子,2002(5):6 -8.
[3]韓雅林,劉志兵,黃云戰(zhàn).西門子840D數(shù)控機(jī)床遠(yuǎn)程診斷功能實(shí)現(xiàn)[J].機(jī)床電器,2006(1):13 -14.
[4]王嘉,蘇紅旗,劉清志,等.OPC技術(shù)在油田生產(chǎn)組態(tài)管理系統(tǒng)中應(yīng)用的研究[J].計(jì)算機(jī)技術(shù)與發(fā)展,2007,5(17):49 -51.
[5]蔡翔云,鄭小虎,姜麟.OPC規(guī)范及開發(fā)應(yīng)用[J].昆明理工大學(xué)學(xué)報(bào),2002(3):1 -3.
[6]馬亮,張志鴻.OPC DA服務(wù)器的設(shè)計(jì)與實(shí)現(xiàn).電子技術(shù)論壇,http://bbs.elecfans.com
[7]鄒云濤,吳重光.OPC DA客戶端的三種實(shí)現(xiàn)方式[J].自動(dòng)化博覽,2004(1):4 -5.
[8]SIEMENS,SINUMERIK 840D/840Di HMI Programing Package Part1,2003.
[9]劉旭昌,石林鎖.基于OPC技術(shù)的系統(tǒng)集成設(shè)計(jì)與實(shí)現(xiàn)[J].現(xiàn)代電子技術(shù),2009,32(8).
如果您想發(fā)表對(duì)本文的看法,請(qǐng)將文章編號(hào)填入讀者意見調(diào)查表中的相應(yīng)位置。
The Research on Machine Tool Remote Control and Supervisory Technology Based on OPC Technology
YANG Jiarong,XU Zhiming,WANG Changfu
(Shanghai Electric Group Co.,Ltd.,Shanghai 200070,CHN)
This paper introduced the OPC technology,discussed it’s working principle and developed a machine tool remote control and supervisory system based on OPC technology.It can exchange data between Siemens Sinumerik 840D CNC controller and the remote computer.By reading data and sending commands to the CNC controller,it realized to manage and supervise multi machine tools in real time and centralization.
OPC;Remote Control and Supervisory;CNC
* 國(guó)家科技重大專項(xiàng)《高檔數(shù)控機(jī)床與基礎(chǔ)制造裝備》(編號(hào):2009ZX04014-103)
楊家榮,男,1981年生,工程師,主要研究方向:開放式數(shù)控技術(shù),數(shù)控系統(tǒng)的二次開發(fā)等。
(編輯 譚弘穎) (
2010-02-25)
10719