王松鋒,陸賢輝,許可會(huì)
(上汽通用五菱汽車(chē)股份有限公司青島分公司,山東青島 266555)
LANDIS CNC6400數(shù)控系統(tǒng)剖析
王松鋒,陸賢輝,許可會(huì)
(上汽通用五菱汽車(chē)股份有限公司青島分公司,山東青島 266555)
主要介紹了LANDIS CNC6400數(shù)控系統(tǒng)的硬件、架構(gòu)、軟件組成以及系統(tǒng)工作時(shí)的運(yùn)行方式,并通過(guò)實(shí)例對(duì)其系統(tǒng)源代碼、零件程序內(nèi)容進(jìn)行了代碼分析。
CNC6400數(shù)控系統(tǒng);架構(gòu)
現(xiàn)代化的加工廠離不開(kāi)數(shù)控機(jī)床,數(shù)控系統(tǒng)作為數(shù)控機(jī)床的大腦,用于控制整個(gè)機(jī)床的機(jī)、電、氣、液裝置,起著極其重要的作用。LANDIS是一家歷史悠久的機(jī)床公司,主要生產(chǎn)汽車(chē)行業(yè)磨削設(shè)備,其機(jī)床產(chǎn)品廣泛應(yīng)用于汽車(chē)發(fā)動(dòng)機(jī)曲軸、凸輪軸加工場(chǎng)合。LANDIS公司從20世紀(jì)70年代就開(kāi)始開(kāi)發(fā)CNC控制系統(tǒng),并發(fā)展衍生為當(dāng)前的 CNC6400系統(tǒng)。CNC6400系統(tǒng)是一種符合OMAC(Open Modular Architecture Controller,即開(kāi)放式、模塊化體系結(jié)構(gòu)控制器,它容許把流行的硬件和軟件集成為控制器的基礎(chǔ)結(jié)構(gòu),是由美國(guó)三大汽車(chē)公司通用、福特、克萊斯勒于1994年提出的。OMAC用戶(hù)組于1997年成立,官方網(wǎng)站 http://www.omac.org/)規(guī)范的數(shù)控系統(tǒng),它擁有如下特征:
(1)運(yùn)行于Windows系統(tǒng)+VenturCom RTX(Real Time Extensions,即實(shí)時(shí)擴(kuò)展,廣泛應(yīng)用于工業(yè)自動(dòng)化、電信、測(cè)量、醫(yī)藥、軍事等領(lǐng)域,使基于Windows的應(yīng)用程序擁有確定性硬實(shí)時(shí)特征。Ventur-Com現(xiàn)已更名為IntervalZero)的PC硬件平臺(tái);
(2)采用工業(yè)標(biāo)準(zhǔn)SERCOS(SErial Real-time COmmunication System,即串行實(shí)時(shí)通信系統(tǒng),是一種用于數(shù)字伺服和傳動(dòng)系統(tǒng)的現(xiàn)場(chǎng)總線(xiàn)接口和數(shù)據(jù)交換協(xié)議,符合IEC 1491國(guó)際標(biāo)準(zhǔn),主要應(yīng)用于各種數(shù)控機(jī)械設(shè)備)通信協(xié)議進(jìn)行驅(qū)動(dòng)控制;
(3)Profibus-DP或Interbus I/O;
(4)直線(xiàn)或旋轉(zhuǎn)軸可任意組合配置;
(5)多軸插補(bǔ)功能;
(6)多達(dá)31個(gè)同步軸;
(7)高級(jí)DSP控制選項(xiàng);
(8)支持觸摸屏的GUI(圖形用戶(hù)界面);
(9)直線(xiàn)、圓形和多項(xiàng)式型輪廓控制;
(10)支持RS274 G&M標(biāo)準(zhǔn)代碼的插補(bǔ)器;
(11)高級(jí)、機(jī)構(gòu)型編程;
(12)提供報(bào)警、事件的OPC數(shù)據(jù)存取功能。
Windows操作系統(tǒng)平臺(tái)市場(chǎng)占有率大、普及率高,其極佳的性?xún)r(jià)比,豐富的開(kāi)發(fā)工具、應(yīng)用程序和Win32應(yīng)用程序接口使開(kāi)發(fā)廠商傾向于在此平臺(tái)上開(kāi)發(fā)自己的軟件,但其實(shí)時(shí)應(yīng)用方面的不足,如線(xiàn)程優(yōu)先級(jí)太少、不確定的線(xiàn)程調(diào)度機(jī)制、定時(shí)器分辨率較低等,無(wú)法滿(mǎn)足數(shù)控系統(tǒng)實(shí)時(shí)控制的要求,為此,LANDIS開(kāi)發(fā)了兩種系統(tǒng)硬件結(jié)構(gòu),即早期的雙計(jì)算機(jī)CNC6400系統(tǒng) (一臺(tái)運(yùn)行Windows NT,一臺(tái)運(yùn)行VXWorks)和后來(lái)的單計(jì)算機(jī)CNC6400系統(tǒng) (Windows XP+VenturCom RTX)。應(yīng)用于現(xiàn)場(chǎng)的單計(jì)算機(jī)CNC6400數(shù)控系統(tǒng)的硬件結(jié)構(gòu)如圖1所示。
圖1 CNC6400系統(tǒng)硬件
UPS電源用于給CNC6400系統(tǒng)計(jì)算機(jī)和SERCOS驅(qū)動(dòng)器 (控制回路)供電;工控機(jī)采用了SIEMENS PC877,其PCI插槽中安裝了SERCOS通信卡和Profibus(或Interbus)通信卡;以光纖為介質(zhì)的SERCOS環(huán)構(gòu)成CNC6400與驅(qū)動(dòng)器之間的通信環(huán)路,計(jì)算機(jī)以1 ms的周期向環(huán)路中的所有SERCOS驅(qū)動(dòng)軸發(fā)送位置控制指令,驅(qū)動(dòng)軸實(shí)際位置偏差、速度、電流、驅(qū)動(dòng)器狀態(tài)等信息也同樣通過(guò)光纖環(huán)路傳回控制系統(tǒng);Bosch Rexroth Indradrive系列驅(qū)動(dòng)器用于控制各伺服/主軸電機(jī),其參數(shù)可通過(guò)配套軟件DriveTop進(jìn)行配置;Heidenhain光柵尺各伺服軸的位置反饋,組成閉環(huán)控制系統(tǒng);Marposs接觸式測(cè)頭用于零件在線(xiàn)測(cè)量/確認(rèn);離散I/O設(shè)備如限位開(kāi)關(guān)、電磁閥等通過(guò)現(xiàn)場(chǎng)總線(xiàn)如Profibus或Interbus連接到CNC6400系統(tǒng),現(xiàn)場(chǎng)總線(xiàn)也可用于如手輪、帶相關(guān)接口的電機(jī)等設(shè)備的控制;標(biāo)準(zhǔn)的觸摸顯示面板,顯示機(jī)床當(dāng)前狀態(tài)、報(bào)警信息等內(nèi)容,用戶(hù)可通過(guò)面板來(lái)更改零件程序、監(jiān)控PLC狀態(tài)、打開(kāi)其他用于程序等;通過(guò)可選的以太網(wǎng)接口,CNC6400可以與工廠網(wǎng)絡(luò)或其他控制器進(jìn)行通信。
單計(jì)算機(jī)的CNC6400系統(tǒng)架構(gòu)如圖2所示。
圖2 CNC6400系統(tǒng)架構(gòu)
CNC6400系統(tǒng)的硬盤(pán)劃分為2個(gè)分區(qū)C和E,C盤(pán)用于存放Windows XP系統(tǒng)文件和翻譯成處理器內(nèi)存文件的CNC6400系統(tǒng)文件;E盤(pán)用于存儲(chǔ)數(shù)據(jù),通常由C盤(pán)中的程序產(chǎn)生 (CNC6400系統(tǒng)日志、零件加工信息等),用戶(hù)可根據(jù)自己的需要確認(rèn)是否清除E盤(pán)中的文件。如圖3所示。
圖3 CNC6400系統(tǒng)根目錄
C盤(pán)內(nèi)的Windows文件夾下除了Windows XP系統(tǒng)文件外,還包含了一個(gè)重要的文件Wincnc32.ini,這個(gè)文件包含了使Windows支持CNC6400的配置信息。C盤(pán)內(nèi)的CNC6400文件夾存放了除Windows系統(tǒng)文件外的所有用于運(yùn)行設(shè)備的軟件,此文件夾內(nèi)放了3個(gè)子文件夾:其中Exec存放CNC6400系統(tǒng)文件,此文件夾中的內(nèi)容對(duì)于所有采用此數(shù)控系統(tǒng)的機(jī)床是通用的,僅當(dāng)CNC6400系統(tǒng)做變更或升級(jí)時(shí)才會(huì)發(fā)生變動(dòng);Project文件夾存放LANDIS編寫(xiě)的針對(duì)客戶(hù)項(xiàng)目或設(shè)備的軟件程序;Support文件夾存放用于運(yùn)行/支持CNC6400系統(tǒng)的第三方軟件的安裝包。
CNC6400的執(zhí)行軟件都包含在CNC6400文件夾內(nèi)的Exec子文件夾內(nèi),由處理器運(yùn)行的核心程序保存在bin子文件夾內(nèi)。工控機(jī)上電后,Windows系統(tǒng)啟動(dòng)CNC6400服務(wù)NCSRV.EXE,NCSRV.EXE將使RTX系統(tǒng)運(yùn)行,然后NCWIN.EXE運(yùn)行,NCWIN將請(qǐng) 求 NCSRV 啟 動(dòng) CNC6400的 RTX 組 件NCRTX.RTSS。Windows還 同 時(shí) 運(yùn) 行 了 APPSTA32.EXE,其會(huì)開(kāi)啟 CNC6400的用戶(hù)顯示組件WINCNC32.EXE,與NCWIN的通信將被建立并開(kāi)始配置過(guò)程,配置過(guò)程由NCWIN完成。NCWIN將加載SoftSercansEXE.dll,并請(qǐng)求 NCSRV 加載 SoftSercRTX.dll。當(dāng)上述配置完成后,NCWIN將加載并運(yùn)行CNC6400系統(tǒng)程序和PLC程序。
工程軟件 (Project)是為CNC6400系統(tǒng)編寫(xiě)的針對(duì)特定機(jī)床的軟件部分,它存放在CNC6400文件夾內(nèi)的Project子文件夾內(nèi)。在此文件夾內(nèi)存放了命名為BITMAPS、CFG、SERCOS、MSG、PLD、PLC、SYS、PPE、PARAMS、HELP、PARTS、MARPOSS、 LOG的子文件夾,其內(nèi)分別存放用于中文 (或其他語(yǔ)言)報(bào)警/狀態(tài)信息顯示的位圖文件、初始化文件、SERCOS環(huán)各驅(qū)動(dòng)器的參數(shù)配置文件、多語(yǔ)言的報(bào)警/狀態(tài)信息文件、系統(tǒng)程序文件 (源代碼和可執(zhí)行文件)、PLC程序源代碼、CNC6400系統(tǒng)緩存文件、零件程序編輯軟件、參數(shù)文件、幫助文件、零件程序文件、Marposs量?jī)x參數(shù)文件、日志文件。
PLC用于處理電磁閥、接近開(kāi)關(guān)、限位開(kāi)關(guān)、冷卻液、液壓等信號(hào),是數(shù)控系統(tǒng)不可或缺的一部分。CNC6400集成了ISaGRAF Wokbench,這是一款符合IEC 1131-3國(guó)際標(biāo)準(zhǔn)的、功能強(qiáng)大的產(chǎn)品,CNC6400通過(guò)OPC server與PLC交換狀態(tài)信息。通過(guò)PLC編輯軟件,可對(duì)PLC程序進(jìn)行狀態(tài)監(jiān)控、編輯、更改硬件配置 (如Profibus I/O點(diǎn)編輯)、強(qiáng)制狀態(tài)等。
機(jī)床的工作循環(huán)通過(guò)系統(tǒng)程序來(lái)控制,CNC6400系統(tǒng)的系統(tǒng)程序主要存放在Project文件夾下的PLD子文件夾內(nèi),分別以SP(System Program,系統(tǒng)程序)和H(Header,頭文件)作為后綴名,源代碼通過(guò)在DOS窗口下執(zhí)行文件夾內(nèi)的Dmake32來(lái)進(jìn)行編譯,編譯生成機(jī)器可運(yùn)行文件sysprog.pld。如下摘取dresser.sp中的一段系統(tǒng)程序源代碼:
以上代碼為CNC6400從PLC讀取狀態(tài)信號(hào)判斷是否要進(jìn)行砂輪修整,如果需要修整則打開(kāi)修整器處的冷卻液等待修整開(kāi)始。其中的PlcRead()和Plc-Write()分別為PLC信號(hào)讀、寫(xiě)函數(shù)。
實(shí)際分析代碼及代碼中的注解,可以認(rèn)定程序代碼是用C語(yǔ)言編輯的,而非其提供給用戶(hù)的手冊(cè)中說(shuō)明的“類(lèi)似于”C語(yǔ)言 (見(jiàn)參考文獻(xiàn) [1]第71頁(yè))。
CNC6400的零件程序采用類(lèi)似編程語(yǔ)言的方式,結(jié)構(gòu)簡(jiǎn)潔、清晰,并且在零件程序中可直接讀寫(xiě)PLC變量,給程序編寫(xiě)帶來(lái)很大方便。如下為一段示例:
以上代碼中,ReadBoolean(),WriteBoolean()為PLC讀、寫(xiě)函數(shù),Do…Until…功能與編程語(yǔ)言中的Do循環(huán)控制指令相似,MoveAxis()為伺服軸運(yùn)動(dòng)指令。函數(shù)中的參數(shù)可直接使用數(shù)值,也可指定參數(shù)集,參數(shù)集在圖形化的界面內(nèi)進(jìn)行查看和更改,非常人性化。
數(shù)控技術(shù)為現(xiàn)代加工技術(shù)帶來(lái)了革命性的變化,并隨著電子、材料等技術(shù)的進(jìn)步不斷更新;隨著計(jì)算機(jī)技術(shù)、各種接口標(biāo)準(zhǔn)的融合與發(fā)展,類(lèi)似CNC6400系統(tǒng)這樣的開(kāi)放結(jié)構(gòu)式的數(shù)控系統(tǒng)將逐漸成為發(fā)展主流。學(xué)習(xí)和掌握這些新技術(shù),將使人們?cè)趯?shí)際生產(chǎn)過(guò)程中能夠更加高效地解決現(xiàn)場(chǎng)問(wèn)題,并有效提高生產(chǎn)力。
【1】Cinetic Landis Grinding.CNC6400 Applications Manual V8.06[M].
【2】CNC6400 control system introduction[EB/OL].[2013-01-10].http://www.cranfieldprecision.com/pdf/cnccontrol-system.pdf.
【3】IntervalZero.RTX幫助文檔[EB/OL].[2013-01-10].http://www.intervalzero.com/library/RTX/WebHelp/ RTX_Help.htm.
【4】WILLIAM Stallings.操作系統(tǒng):精髓與設(shè)計(jì)原理[M].6版.北京:機(jī)械工業(yè)出版社,2010.
【5】李斌,李曦.數(shù)控技術(shù)[M].武漢:華中科技大學(xué)出版社,2010.
【6】譚浩強(qiáng).C程序設(shè)計(jì)[M].3版.北京:清華大學(xué)出版社,2005.
Analysis of LANDIS CNC6400 System
WANG Songfeng,LU Xianhui,XU Kehui
(Qingdao Branch,SAIC GM Wuling Automobile Co.,Ltd.,Qingdao Shandong 266555,China)
The hardware,architecture,software components,extension functions,part programs and running method of LANDIS CNC6400 system were introduced.The source code samples of the system program,PLC program,part programs were analyzed.
CNC6400 CNC system;Architecture
TP29
B
1001-3881(2014)8-120-3
10.3969/j.issn.1001-3881.2014.08.038
2013-03-13
王松鋒 (1984—),男,本科學(xué)歷,長(zhǎng)期從事汽車(chē)行業(yè)數(shù)控機(jī)床的維護(hù)與管理工作。E-mail:songfeng.wang@ 163.com。