基于IEC611313的開放式數(shù)控系統(tǒng)開發(fā)
點(diǎn)擊:1490
A+ A-
所屬頻道:新聞中心
0 引言
從近年來的市場情況來看,尤其是歐洲市場,由于IEC61131標(biāo)準(zhǔn)推廣應(yīng)用,基于IEC61131-3的開放式數(shù)控系統(tǒng)已逐漸成為開放式數(shù)控系統(tǒng)的主流,有看成為未來開放式數(shù)控系統(tǒng)的標(biāo)準(zhǔn):硬件系統(tǒng)按美國OMAC Packaging Workgroup(OMAC包裝工作組,簡稱OPW)概念分為三種,通過在軟件或硬件PLC上運(yùn)行IEC61131-3語言編制的用戶軟件來實(shí)現(xiàn)運(yùn)動控制、插補(bǔ)運(yùn)算、G代碼控制等CNC標(biāo)準(zhǔn)功能,同時(shí)實(shí)現(xiàn)PLC邏輯控制功能。鑒于這種開放式數(shù)控系統(tǒng)在技術(shù)上的突破主要體現(xiàn)在采用IEC61131-3語言編程實(shí)現(xiàn)CNC功能,故稱為基于IEC61131-3的開放式數(shù)控系統(tǒng)。
1 硬件系統(tǒng)
OPW為美國OMAC Users Group(OMAC用戶組)下設(shè)的一個(gè)工作組,致力于在包裝機(jī)械行業(yè)推廣運(yùn)動控制解決方案,在其《包裝機(jī)械自動化導(dǎo)則》中確立了一整套數(shù)字化運(yùn)動控制系統(tǒng)的概念。在綜合、擴(kuò)展現(xiàn)有硬件系統(tǒng)結(jié)構(gòu)的基礎(chǔ)上,OPW確立了三種硬件系統(tǒng)結(jié)構(gòu)的概念,分別是控制器平臺系統(tǒng)結(jié)構(gòu)(Controller-Based System Architecture)、PC平臺系統(tǒng)結(jié)構(gòu)(PC-Based System Architecture)、驅(qū)動器平臺系統(tǒng)結(jié)構(gòu)(Drive-Based System Architecture)。
OMAC固然設(shè)在美國,但是受到歐洲控制系統(tǒng)供給商的廣泛支持,西門子、施耐德等多家歐洲廠商是該組織的成員,其中西門子公司嚴(yán)格按照OPW概念推出了Simotion系列運(yùn)動控制產(chǎn)品,共有Simotion C、Simotion P、Simotion D三種,分別對應(yīng)上述OPW三種平臺。
1.1 控制器平臺系統(tǒng)
圖1:控制器平臺系統(tǒng)結(jié)構(gòu)邏輯連接圖
按照OPW概念,圖1中所示控制器(Controller)作為控制系統(tǒng)的核心,是一獨(dú)立硬件實(shí)體,可實(shí)現(xiàn)邏輯控制與運(yùn)動控制等功能;HMI是可選件,即使是PC做為HMI的硬件,也只能實(shí)現(xiàn)HMI軟件功能;分布式I/O及帶有數(shù)字設(shè)定接口的驅(qū)動器通過現(xiàn)場總線與控制器相連。
固然OPW沒有明確指出控制器是何種控制器,但這里的控制器實(shí)際上是擴(kuò)展了運(yùn)動控制功能的PLC,主要由于:采用了與PLC相一致的硬件時(shí)鐘實(shí)現(xiàn)掃描周期與中斷等;其邏輯控制與運(yùn)動控制功能均采用PLC標(biāo)準(zhǔn)編程語言IEC61131-3語言實(shí)現(xiàn)。西門子公司固然未把Simotion C運(yùn)動控制系統(tǒng)稱為PLC,但該產(chǎn)品實(shí)際上是在SIMATIC S7系列PLC基礎(chǔ)上擴(kuò)展了運(yùn)動控制功能,可以直接使用 SIMATIC S7系列 PLC的 I/O 模板及功能模板。從施耐德公司產(chǎn)品上,可以更加明顯地了解到這一點(diǎn),其最初的運(yùn)動控制產(chǎn)品就是在Modicon Premium系列PLC底板上插接運(yùn)動控制功能模塊,直接在標(biāo)準(zhǔn)PLC上擴(kuò)展了運(yùn)動控制功能。
在實(shí)際應(yīng)用中,PLC硬件有兩種結(jié)構(gòu)形式,一種是傳統(tǒng)結(jié)構(gòu)的PLC硬件系統(tǒng),其組件全部安裝在獨(dú)立的機(jī)架上,另外一種是插進(jìn)到PC主板中的插槽式PLC硬件系統(tǒng)。西門子Simotion C屬于前者,而施耐德Modicon Premium系列PLC有一款A(yù)trium插槽式PLC,PLC的CPU及總線模塊集成在一塊PC板卡上,插進(jìn)到PC的PCI總線插槽中,然后通過總線與外置機(jī)架上的運(yùn)動控制功能模塊、I/O模塊等進(jìn)行通訊。Atrium插槽式PLC 完全獨(dú)立于PC運(yùn)行:標(biāo)準(zhǔn)PC機(jī)的“重起”命令對插槽式PLC的操縱模式不起作用;將PC機(jī)封閉后再打開,會導(dǎo)致槽式PLC治理的程序熱啟動,但是重啟動不會丟失應(yīng)用程序內(nèi)容;可插接在PC插槽中的 24 V電源答應(yīng)插槽式PLC獨(dú)立于PC電源工作。
OPW共推薦了兩種現(xiàn)場總線,用于連接控制器與分布式I/O模塊及帶有數(shù)字設(shè)定接口驅(qū)動器:SERCOS與PROFIBUS總線。實(shí)際應(yīng)用中很多產(chǎn)品中采用了其他方式:可以采用其他現(xiàn)場總線,比如施耐德采用了CANopen總線;對于傳統(tǒng)的PLC系統(tǒng),也可不采用分布式I/O及采用傳統(tǒng)的±10V模擬信號與帶有模擬設(shè)定接口的驅(qū)動器相連接。
由于IEC61131-3語言編程工具的發(fā)展,控制軟件具有硬件無關(guān)性、可移植性等開放性特性,給了后起的控制系統(tǒng)供給商甚至機(jī)床制造廠家打破傳統(tǒng)控制系統(tǒng)供給商市場壟斷的機(jī)遇。在歐洲市場上,后起的控制系統(tǒng)供給商甚至機(jī)床制造廠家就像PC組裝廠家一樣,購買芯片等硬件元件,獨(dú)立配置控制器系統(tǒng),購買專業(yè)軟件公司的IEC61131-3語言編程工具與軟件模塊,也可自行編制軟件模塊,從而打破了西門子公司等傳統(tǒng)控制系統(tǒng)供給商的壟斷。
1.2 PC平臺系統(tǒng)
圖2:PC平臺系統(tǒng)結(jié)構(gòu)邏輯連接圖
按照OPW概念,圖2中所示PC作為控制系統(tǒng)的核心,通過運(yùn)行HMI(可選)、邏輯控制、運(yùn)動控制等功能軟件,可實(shí)現(xiàn)HMI、邏輯控制與運(yùn)動控制等功能;HMI硬件是可選件,一般為PC顯示器;分布式I/O模塊及帶有數(shù)字設(shè)定接口的驅(qū)動器通過現(xiàn)場總線與PC相連;PC機(jī)與機(jī)床上的分布式I/O及帶有數(shù)字設(shè)定接口的驅(qū)動器通過插進(jìn)到PC機(jī)插槽上的總線卡通訊聯(lián)系。
在PC平臺上實(shí)現(xiàn)I/O等控制功能,首先要通過IEC61131-3語言編程工具,在PC中模擬PLC硬件,也就是以軟PLC的方式實(shí)現(xiàn)各種控制功能。
PC平臺系統(tǒng)結(jié)構(gòu)是最具開放性的硬件平臺,這是由于應(yīng)用軟件運(yùn)行在擴(kuò)展了實(shí)時(shí)性能的MS Windows系列操縱系統(tǒng)及通用產(chǎn)業(yè)PC機(jī)之上,控制系統(tǒng)提供商只需潛心于開發(fā)工具與軟件模塊等控制軟件即可。PC平臺系統(tǒng)產(chǎn)品的競爭力,主要來自于軟件,這給了后起的小型專業(yè)軟件公司打破傳統(tǒng)控制系統(tǒng)供給商市場壟斷的機(jī)遇,這也是開放式控制系統(tǒng)的優(yōu)越性所在。
1.3 驅(qū)動器平臺系統(tǒng)
按照OPW概念,圖3中所示集成了邏輯控制、運(yùn)動控制軟硬件功能的多組驅(qū)動器為控制系統(tǒng)的核心,除了驅(qū)動器自身的軸控制功能,可實(shí)現(xiàn)邏輯控制與運(yùn)動控制等功能;HMI軟硬件及獨(dú)立的PLC是可選件;分布式I/O模塊通過現(xiàn)場總線與驅(qū)動器相連。
圖3:驅(qū)動器平臺系統(tǒng)結(jié)構(gòu)邏輯連接圖
這是一種分布式運(yùn)動控制系統(tǒng),驅(qū)動器實(shí)際上是集成了緊湊型控制器的智能驅(qū)動器,能獨(dú)立完成邏輯控制與運(yùn)動控制功能。從目前把握的資料來看,市場上只有西門子Simotion D一種驅(qū)動器平臺運(yùn)動控制產(chǎn)品。
2 軟件系統(tǒng)
基于IEC61131-3的開放式數(shù)控系統(tǒng)的開放性主要體現(xiàn)在軟件方面。軟件系統(tǒng)可分為系統(tǒng)軟件、應(yīng)用軟件。系統(tǒng)軟件包括實(shí)時(shí)操縱系統(tǒng)、通訊系統(tǒng)、設(shè)備驅(qū)動程序等。應(yīng)用軟件包括開發(fā)工具、用戶程序等。
2.1 系統(tǒng)軟件
操縱系統(tǒng)的實(shí)時(shí)性這一題目對于PC平臺系統(tǒng)比較突出,這是由于PC上運(yùn)行的MS Windows系列通用操縱系統(tǒng)原本面向貿(mào)易應(yīng)用,并非面向產(chǎn)業(yè)實(shí)時(shí)控制。西門子公司等控制系統(tǒng)供給商曾對Windows的實(shí)時(shí)特性進(jìn)行了測試,證實(shí)其存在“死機(jī)”、中斷延遲等題目,并不具備硬實(shí)時(shí)特性。控制器平臺及驅(qū)動器平臺系統(tǒng)則不需要PC必須的操縱系統(tǒng),而是嚴(yán)格按硬件時(shí)鐘循環(huán)調(diào)用指令,也就不存在操縱系統(tǒng)的實(shí)時(shí)性這一題目。
解決操縱系統(tǒng)的實(shí)時(shí)性題目,目前應(yīng)用最廣的辦法是為Windows擴(kuò)展實(shí)時(shí)特性。美國Ardence(原VenturCom)公司RTX(Real-time Extension for Windows),是內(nèi)置于Windows的實(shí)時(shí)操縱系統(tǒng)。RTX線程運(yùn)行時(shí),Windows的中斷被屏蔽,但Windows不能屏蔽RTX治理的中斷,Windows成為一個(gè)受RTX治理的任務(wù),其優(yōu)先級最低。RTX可以保證任意線程的最差響應(yīng)時(shí)間為50us。德國3S(Smart Software Solution)公司CoDeSys SP RTE(Real Time Extension),同樣是內(nèi)置于Windows的實(shí)時(shí)操縱系統(tǒng),由PC主板上的硬件時(shí)鐘周期性調(diào)用,然后由RTE每毫秒產(chǎn)生兩個(gè)硬件中斷,一個(gè)用于執(zhí)行CoDeSys任務(wù),另一個(gè)用于執(zhí)行Windows任務(wù)。1毫秒為默認(rèn)時(shí)鐘周期,可以更改,最短為50us,用于兩個(gè)中斷的時(shí)間比例也是可以設(shè)置的。也就是說,RTE把一個(gè)時(shí)鐘周期分時(shí)用于CoDeSys任務(wù)與Windows任務(wù),二者互不干擾。
目前通用數(shù)控系統(tǒng)的插補(bǔ)周期一般為1ms或1ms以下,以上兩種Windows的實(shí)時(shí)擴(kuò)展,均保證了Windows應(yīng)用于數(shù)控系統(tǒng)的實(shí)時(shí)特性。
2.2 應(yīng)用軟件
應(yīng)用軟件包括開發(fā)工具與用戶程序。PC平臺系統(tǒng)中的PC既可以運(yùn)行開發(fā)工具,也可以運(yùn)行用戶程序,而控制器平臺與驅(qū)動器平臺系統(tǒng)自身可以運(yùn)行用戶程序,可以另接PC運(yùn)行開發(fā)工具。
2.2.1 開發(fā)工具
隨著IEC61131標(biāo)準(zhǔn)的推廣,涌現(xiàn)出很多符合這一標(biāo)準(zhǔn)的開發(fā)工具,如3S公司的CoDeSyS,Infoteam公司的OpenPCS等。IEC61131是國際電工委員會頒布的PLC國際標(biāo)準(zhǔn),規(guī)定了二大類編程語言:文本化編程語言和圖形化編程語言。前者包括指令清單語言(IL)和結(jié)構(gòu)化文本語言(ST),后者包括梯形圖語言(LD)、功能塊圖語言(FBD)和順序功能圖(SFC)。這些語言,最初是用于編制PLC邏輯控制程序的,但是由于PLCopen國際組織及專業(yè)化軟件公司的努力,也可以用來編制運(yùn)動控制與插補(bǔ)運(yùn)算程序。
IEC61131編程語言是工控編程語言,與C語言等高級編程語言相比,在數(shù)據(jù)結(jié)構(gòu)、程序結(jié)構(gòu)、指令等方面相似(主要指的是ST語言),但是大幅簡化,更易于自動化工程師把握,使得用戶能夠自行編制運(yùn)動控制與插補(bǔ)運(yùn)算程序,自行定義數(shù)控代碼,這樣具有了高度的開放性。
由于采用了適應(yīng)自動控制要求的國際標(biāo)準(zhǔn)語言IEC61131-3語言,基于IEC61131-3的開放式數(shù)控系統(tǒng)有著高度的開放性與強(qiáng)大的生命力。
2.2.2 用戶程序
用戶程序指的是由IEC61131-3語言編制的實(shí)現(xiàn)邏輯控制、運(yùn)動控制、插補(bǔ)運(yùn)算功能的PLC程序,可以解讀并執(zhí)行G代碼編制的數(shù)控加工程序。對于結(jié)構(gòu)化的用戶程序,最重要的是軟件模塊。由于基于IEC61131-3控制系統(tǒng)的開放性,軟件模塊可以由控制系統(tǒng)供給商編制,也可由用戶編制,其使用對用戶開放。對于開放式系統(tǒng)所要求的互換性、可移植性、硬件無關(guān)性等來說,主要體現(xiàn)在軟件模塊的互換性、可移植性、硬件無關(guān)性,這就產(chǎn)生了軟件模塊標(biāo)準(zhǔn)化的需求。
PLCopen國際組織致力于推廣IEC61131-3語言的應(yīng)用,其成員包括了世界主流控制系統(tǒng)供給商,上文中提到的西門子、施耐德、3S、Infoteam等公司均是其成員。作為一個(gè)國際組織,PLCopen與其成員西門子、施耐德等公司又同是美國OMAC組織的成員,在制定《包裝機(jī)械自動化導(dǎo)則》工作中發(fā)揮了重要作用。實(shí)際上,由于PLCopen專注于IEC61131-3語言的推廣,主要側(cè)重于軟件方面,它在硬件平臺、機(jī)械結(jié)構(gòu)等方面的設(shè)想體現(xiàn)在OPW的《包裝機(jī)械自動化導(dǎo)則》中。
PLCopen國際組織在其技術(shù)規(guī)范《運(yùn)動控制功能塊》中制定了一整套標(biāo)準(zhǔn)的運(yùn)動控制功能塊。為了實(shí)現(xiàn)標(biāo)準(zhǔn)化,PLCopen分析定義了7種機(jī)床狀態(tài),機(jī)床的運(yùn)動軸總是處于所定義的一種狀態(tài)之下,運(yùn)動命令使軸在這些狀態(tài)之間相互轉(zhuǎn)換,一根軸的運(yùn)動命令總是順序執(zhí)行的。具體的狀態(tài)、狀態(tài)間的轉(zhuǎn)換及功能塊定義見圖4。
PLCopen定義的7種狀態(tài)為:1)Stand still保持靜止;2)Homing回原點(diǎn);3)Discrete motion斷續(xù)運(yùn)動;4)Continous motion連續(xù)運(yùn)動;5)Synchronized同步運(yùn)動,這就涉及了多軸運(yùn)動;6)Stopping停止;7)Error stop故障停止。其中,3)、4)、5)為運(yùn)動狀態(tài)。
圖4:功能塊狀態(tài)行為注:此圖為PLCopen在技術(shù)規(guī)范《運(yùn)動控制功能塊》Version1.0中的定義。
狀態(tài)之間的轉(zhuǎn)換定義了功能塊功能,共有單軸運(yùn)動控制功能塊MC_MoveAbsolute等10種,多軸運(yùn)動控制功能塊CamIn等5種,另有信息傳遞功能塊MC_ReadStatus等10種,調(diào)用這有限的25種功能模塊進(jìn)行編程,就可實(shí)現(xiàn)機(jī)床的運(yùn)動控制。
機(jī)床設(shè)備生產(chǎn)廠家可向3S、Infoteam等專業(yè)軟件公司購買開發(fā)工具與運(yùn)動控制功能塊,選擇一種控制系統(tǒng)硬件平臺,根據(jù)設(shè)備的工作原理編制PLC程序,自行定義G代碼、編制代碼程序,以多重選擇語句CASEOF調(diào)用代碼程序的方式實(shí)現(xiàn)CNC控制,這在歐洲機(jī)床行業(yè)較為普遍。
PLCopen在技術(shù)規(guī)范《運(yùn)動控制功能塊》中為插補(bǔ)運(yùn)算專設(shè)一部分,但是這一部分仍在建設(shè)中,至今沒有公布任何標(biāo)準(zhǔn)性文件。另外,PLCopen并未在其技術(shù)規(guī)范中引進(jìn)G代碼,如需G代碼控制,仍需用戶自行定義編制。但是,PLCopen的某些成員,比如德國3S公司、Beckhoff公司,已經(jīng)在用IEC61131-3語言實(shí)現(xiàn)插補(bǔ)運(yùn)算與標(biāo)準(zhǔn)G代碼控制方面取得了進(jìn)展,推出了相應(yīng)的產(chǎn)品。
現(xiàn)以德國3S(Smart Software Solution)公司CoDeSys Version2.3.7.2為例扼要先容。CoDeSys中有一個(gè)可選組件Softmotion用于實(shí)現(xiàn)標(biāo)準(zhǔn)G代碼控制。除了總線、驅(qū)動器等硬件的驅(qū)動程序,所有組件均用IEC61131-3語言編制,適用于PC平臺系統(tǒng)結(jié)構(gòu)。目前能實(shí)現(xiàn)包括主軸在內(nèi)的9軸控制,其中兩軸用于非線性插補(bǔ),其他軸為線性插補(bǔ)。在CNC程序編輯器中能同時(shí)以圖形與文本的形式編制G代碼程序,編程語言遵循DIN66025標(biāo)準(zhǔn)。
為了實(shí)現(xiàn)標(biāo)準(zhǔn)CNC代碼控制需應(yīng)用多種功能模塊,其中插補(bǔ)模塊、轉(zhuǎn)換模塊、直接設(shè)置點(diǎn)輸進(jìn)模塊這三種模塊對理解CNC代碼控制的實(shí)現(xiàn)過程較為關(guān)鍵。插補(bǔ)模塊對G代碼程序進(jìn)行處理,把G代碼所描述的連續(xù)軌跡轉(zhuǎn)變成離散的路徑位置點(diǎn),然后由轉(zhuǎn)換模塊把這些位置點(diǎn)分解為每一個(gè)軸上的座標(biāo)點(diǎn),再由直接設(shè)置點(diǎn)輸進(jìn)模塊分別控制每一個(gè)軸的驅(qū)動器,實(shí)現(xiàn)目標(biāo)軌跡。插補(bǔ)模塊有兩個(gè),SMC_Interpolator和SMC_Interpolator2D,除了后者能實(shí)現(xiàn)正、反兩方向的插補(bǔ)運(yùn)算,二者功能相同。目前轉(zhuǎn)換模塊有六種,根據(jù)機(jī)床運(yùn)動學(xué)原理進(jìn)行分類,分為龍門系統(tǒng)(Portal Systems)、帶有刀具偏置的龍門系統(tǒng)(Portal Systems with Tool Offset)、帶有靜態(tài)驅(qū)動器的H型龍門系統(tǒng)(H- Portal Systems with Stationary drives)、2關(guān)節(jié)平面關(guān)節(jié)機(jī)器人系統(tǒng)(2-Jointed Scara-Systems)、3關(guān)節(jié)平面關(guān)節(jié)機(jī)器人系統(tǒng)(3-Jointed Scara-Systems)、并聯(lián)運(yùn)動系統(tǒng)(Parallel Kinematics),每種又分正、反方向轉(zhuǎn)換的模塊。直接設(shè)置點(diǎn)輸進(jìn)模塊通過驅(qū)動器制造商提供的驅(qū)動器驅(qū)動程序通訊,實(shí)現(xiàn)對驅(qū)動器的控制,根據(jù)控制原理的不同,可以分為按位置控制、按速度控制、按力矩控制三種。
3 結(jié)論
綜上所述,由于基于IEC61131-3的開放式數(shù)控系統(tǒng)采用了PLC標(biāo)準(zhǔn)編程語言IEC61131-3語言,具有了高度的開放性,尤其在硬件系統(tǒng)及運(yùn)動控制功能塊方面形成了標(biāo)準(zhǔn),使得其推廣應(yīng)用遠(yuǎn)景光明。但是在插補(bǔ)運(yùn)算方面,尚未形成標(biāo)準(zhǔn),這將是未來發(fā)展所需解決的題目。
我國數(shù)控行業(yè)可以鑒戒國外同行業(yè)開發(fā)新產(chǎn)品的經(jīng)驗(yàn)。開放式數(shù)控系統(tǒng)的發(fā)展方向在軟件。目前,可從控制器平臺著手,購置芯片等硬件配置控制器,使用專業(yè)化軟件公司提供的開發(fā)工具;然后再以這些開發(fā)工具為基礎(chǔ)進(jìn)行二次開發(fā),終極研發(fā)出自己的基于IEC61131-3的開放式數(shù)控系統(tǒng)開發(fā)工具。實(shí)際上,國外某些著名控制系統(tǒng)供給商都在這樣做,比如施耐德公司2007年推出的最新運(yùn)動控制產(chǎn)品Lexium PAC,硬件結(jié)構(gòu)屬于控制器平臺,開發(fā)工具即采用了3S公司的CoDeSys;西門子公司Simotion系列運(yùn)動產(chǎn)品采用的開發(fā)工具Scout即是在Infoteam公司的OpenPCS基礎(chǔ)上二次開發(fā)而來。
(審核編輯: 智匯張瑜)
分享