晏永紅
摘 ?要: 數(shù)控技術(shù)進(jìn)行零部件加工不僅效率與加工精度高且質(zhì)量好,因此其是制造業(yè)從傳統(tǒng)的勞力密集型模式向自動(dòng)化生產(chǎn)模式轉(zhuǎn)變的核心技術(shù)。為了解決市場(chǎng)上由于不同的數(shù)控運(yùn)動(dòng)控制方案之間不兼容,使得數(shù)控機(jī)械PLC運(yùn)動(dòng)控制較為復(fù)雜的問題,文中基于IEC 61131?3標(biāo)準(zhǔn)開發(fā)了數(shù)控機(jī)械PLC運(yùn)動(dòng)控制庫。分別針對(duì)單軸運(yùn)動(dòng)和多軸運(yùn)動(dòng)進(jìn)行功能模塊開發(fā)并封裝成標(biāo)準(zhǔn)函數(shù)庫,并使用Beremiz 軟件平臺(tái)進(jìn)行控制程序的編寫,再編譯下載至實(shí)驗(yàn)平臺(tái)以及剪板機(jī)進(jìn)行運(yùn)動(dòng)控制試驗(yàn)。測(cè)試結(jié)果驗(yàn)證了運(yùn)動(dòng)控制庫的可行性。
關(guān)鍵詞: 數(shù)控機(jī)械PLC; 運(yùn)動(dòng)控制; 自動(dòng)化生產(chǎn); IEC 61131?3標(biāo)準(zhǔn); 運(yùn)動(dòng)控制庫; Beremiz軟件平臺(tái)
中圖分類號(hào): TN830.1?34; TP393 ? ? ? ? ? ? ? ? 文獻(xiàn)標(biāo)識(shí)碼: A ? ? ? ? ? ? ? ? ?文章編號(hào): 1004?373X(2018)10?0024?04
Abstract: Using the CNC technology for parts processing is not only of high efficiency and precision, but also of good quality. Therefore, it becomes the core technology for the manufacturing industry to shift from the traditional labor?intensive mode to the automated production mode. To resolve the problem that the CNC machine PLC motion control is complicated due to the incompatibility between different CNC motion control schemes in the market, a CNC machine PLC motion control library based on IEC 61131?3 standard is developed in this paper. Aiming at single?axis movement and multi?axis movement, the function module is developed and packaged into a standard function library. The Beremiz software platform is used to write the control program which is compiled and download to the experimental platform and cutting machine for motion control test. The test results verified the feasibility of motion control library.
Keywords: CNC machine PLC; motion control; automated production; IEC 61131?3 standard; motion control library; ?Beremiz software platform
所謂數(shù)控技術(shù),即是通過計(jì)算機(jī)編程來控制生產(chǎn)機(jī)器按照工作人員既定的程序進(jìn)行零部件的加工。與傳統(tǒng)人工加工方式相比,通過數(shù)控技術(shù)進(jìn)行零部件加工不僅效率與加工精度高,且質(zhì)量好。因此,數(shù)控技術(shù)是制造業(yè)從傳統(tǒng)的勞力密集型模式向自動(dòng)化生產(chǎn)模式轉(zhuǎn)變的核心技術(shù)。大力推廣數(shù)控技術(shù)以推動(dòng)國家制造業(yè)技術(shù)革新,進(jìn)一步提高產(chǎn)品質(zhì)量及生產(chǎn)率,已成為各國加快經(jīng)濟(jì)發(fā)展,提高綜合國力的重要途徑[1?5]。
數(shù)控系統(tǒng)的核心技術(shù)是運(yùn)動(dòng)控制,其對(duì)零部件的加工極為重要。而市場(chǎng)上出現(xiàn)了諸多不同的數(shù)控運(yùn)動(dòng)控制方案,但各個(gè)方案之間并不兼容,使得運(yùn)動(dòng)控制較為復(fù)雜。為此,本文基于IEC 61131?3標(biāo)準(zhǔn)開發(fā)了數(shù)控機(jī)械PLC運(yùn)動(dòng)控制庫,并搭建控制測(cè)試平臺(tái)來對(duì)其進(jìn)行測(cè)試。測(cè)試結(jié)果驗(yàn)證了運(yùn)動(dòng)控制庫的可行性。
1.1 ?IEC 61131?3標(biāo)準(zhǔn)
IEC 61131?3標(biāo)準(zhǔn)[6?7]是1993年國際電工委發(fā)布的面向PLC的標(biāo)準(zhǔn)編程語言。傳統(tǒng)的PLC編程采用指令表、梯形圖等編程方法,其數(shù)據(jù)封裝性、程序可移植性與可重復(fù)性較差。而IEC 61131?3標(biāo)準(zhǔn)規(guī)定的編程標(biāo)準(zhǔn)不依賴硬件,且支持自上而下或自下而上的編程模式,同時(shí)也擁有標(biāo)準(zhǔn)化的通信組件。該標(biāo)準(zhǔn)統(tǒng)一了各廠家的編程標(biāo)準(zhǔn),為工控軟件編程規(guī)范及統(tǒng)一發(fā)揮了重要作用。
1.2 ?數(shù)控機(jī)械PLC運(yùn)動(dòng)規(guī)范
為了解決不同廠家之間數(shù)控機(jī)械PLC控制不兼容的問題,本文采用PLCopen提出的運(yùn)動(dòng)控制編程標(biāo)準(zhǔn)化規(guī)范。其通過規(guī)范編程語言和運(yùn)動(dòng)控制接口,從而實(shí)現(xiàn)運(yùn)動(dòng)控制方案的標(biāo)準(zhǔn)化。數(shù)控機(jī)械PLC運(yùn)動(dòng)規(guī)范主要有單軸,軸組狀態(tài)轉(zhuǎn)移圖的定義以及運(yùn)動(dòng)控制接口的定義。PLCopen運(yùn)動(dòng)控制規(guī)范中單軸運(yùn)動(dòng)總共定義了8個(gè)狀態(tài),分別為同步運(yùn)動(dòng)狀態(tài)、離散運(yùn)動(dòng)狀態(tài)、連續(xù)運(yùn)動(dòng)狀態(tài)、停止?fàn)顟B(tài)、回零點(diǎn)狀態(tài)、靜止?fàn)顟B(tài)、錯(cuò)誤狀態(tài)和無效狀態(tài),而每一個(gè)狀態(tài)代表當(dāng)前軸所處的運(yùn)動(dòng)狀態(tài)。單軸狀態(tài)跳轉(zhuǎn)圖如圖1所示。軸組運(yùn)動(dòng)總共定義6個(gè)狀態(tài),分別為軸組運(yùn)動(dòng)狀態(tài)、軸組停止?fàn)顟B(tài)、軸組錯(cuò)誤狀態(tài)、軸組待機(jī)狀態(tài)、軸組無效狀態(tài)以及軸組回零點(diǎn)狀態(tài)。其軸組狀態(tài)跳轉(zhuǎn)圖如圖2所示。圖1和圖2中,箭頭代表不同狀態(tài)之間彼此可以互相跳轉(zhuǎn),實(shí)線表示可能發(fā)生由相關(guān)指令所引起的狀態(tài)轉(zhuǎn)換,而虛線代表當(dāng)前相關(guān)狀態(tài)跳轉(zhuǎn)失敗所導(dǎo)致的狀態(tài)轉(zhuǎn)換。
2.1 ?數(shù)控機(jī)械PLC運(yùn)動(dòng)控制平臺(tái)
本文所采用的數(shù)控機(jī)械PLC運(yùn)動(dòng)控制平臺(tái)主要由PLCopen控制器、人機(jī)交互界面(HMI)、伺服驅(qū)動(dòng)器、電機(jī)以及PC控制端等組成[8?9]。PLCopen控制器是整個(gè)控制平臺(tái)的核心部分,其通過CAN總線向伺服驅(qū)動(dòng)器傳輸指令和數(shù)據(jù),進(jìn)而控制電機(jī)的轉(zhuǎn)動(dòng)。使用PC控制端通過USB協(xié)議與控制器進(jìn)行通信,也可由人機(jī)交互界面通過Modbus協(xié)議與控制器來進(jìn)行通信。數(shù)控機(jī)械PLC運(yùn)動(dòng)控制平臺(tái)如圖3所示。
2.2 ?數(shù)控機(jī)械PLC運(yùn)動(dòng)控制軟件模型
本文采用IEC 61131?3標(biāo)準(zhǔn)編程語言來開發(fā)運(yùn)動(dòng)控制庫,首先對(duì)單軸和多軸運(yùn)動(dòng)控制程序進(jìn)行編寫,然后打包封裝成標(biāo)準(zhǔn)函數(shù)庫。用戶在開發(fā)應(yīng)用程序時(shí),通過調(diào)用標(biāo)準(zhǔn)函數(shù)完成功能開發(fā),然后編譯下載到PLCopen控制器中。再由程序中的指令驅(qū)動(dòng)單軸和多軸進(jìn)行相關(guān)運(yùn)動(dòng),從而完成運(yùn)動(dòng)控制目的[10]。
為了完成標(biāo)準(zhǔn)函數(shù)庫的編寫,本文先對(duì)運(yùn)動(dòng)控制的軟件模型進(jìn)行定義,如圖4所示,由輸入/輸出變量以及運(yùn)動(dòng)控制算法組成。
單軸運(yùn)動(dòng)中只涉及到一維方向上的移動(dòng),因而單軸運(yùn)動(dòng)控制在于控制軸機(jī)在一維方向上按照既定的速度、加速度到達(dá)指定地點(diǎn)。以位移控制模塊為例,該模塊一共有11個(gè)輸入和輸出端口,如圖5所示。其中,[AxisID],[Execute],[Position],[Velocity],[Acceleration],[Direction],[BufferMode]為輸入端口。[AxisID]表示伺服驅(qū)動(dòng)器的軸號(hào);[Execute]表示執(zhí)行條件;[Position]為所要移動(dòng)的目標(biāo)位置;[Velocity]表示伺服驅(qū)動(dòng)器運(yùn)行最大速度;[Acceleration]表示伺服驅(qū)動(dòng)器運(yùn)行最大加減速度;[Direction]表示移動(dòng)方向;[BufferMode]則表示緩沖區(qū)模式。
對(duì)于多軸運(yùn)動(dòng)的運(yùn)動(dòng)控制,其主要通過多齒輪的協(xié)同傳動(dòng)實(shí)現(xiàn)多軸運(yùn)動(dòng)。以齒輪耦合功能模塊為例,其主要協(xié)同主齒輪與從齒輪之間的同步運(yùn)動(dòng),該模塊模型如圖6所示。模塊有6個(gè)輸入端口,4個(gè)輸出端口,共計(jì)10個(gè)端口。[RatioNumerator],[Master],[Acceleration],[RatioDenominator],[Execute],[Slave]為輸入端口;[CommandAborted],[InGear],[Error],[ErrorID]為輸出端口。[RatioNumerator]為主從軸的電子齒輪分子;[RatioDenominator]為主從軸的電子齒輪分母;[Master]為主軸軸號(hào);[Slave]為從軸軸號(hào);[Execute]為模塊執(zhí)行信號(hào),上升沿表示執(zhí)行模塊;[Acceleration]為伺服驅(qū)動(dòng)器最大加減速度;[CommandAborted]為指令中斷置位;[InGear]為指令完成置位;[Error]為異常置位;[ErrorID]為錯(cuò)誤代碼。
本文采用三變量組合[(ExecuteFlag,DoneFlag],[CommandType)]來表示單軸不同狀態(tài)之間的跳轉(zhuǎn),[ExecuteFlag]為0,表示當(dāng)前功能模塊沒有執(zhí)行或者執(zhí)行結(jié)束;為1時(shí),表示功能模塊正在執(zhí)行;[DoneFlag]為0時(shí),表示當(dāng)前功能模塊尚未執(zhí)行完畢;為1時(shí),則表示當(dāng)前功能模塊已執(zhí)行完畢。[CommandType]為指令類型,其取值為1,2,···,n,不同的數(shù)字代表不同的指令。設(shè)定1指令為位移控制指令,則(1,0,1)代表位移控制指令正在執(zhí)行;(0,1,1)代表位移控制模塊已執(zhí)行完畢。軸狀態(tài)跳轉(zhuǎn)流程如圖7所示。
本文搭建了運(yùn)動(dòng)控制實(shí)驗(yàn)平臺(tái)來驗(yàn)證運(yùn)動(dòng)控制庫的有效性,實(shí)驗(yàn)平臺(tái)如圖8所示。采用Beremiz 軟件平臺(tái)進(jìn)行控制程序的編寫,并編譯下載至實(shí)驗(yàn)平臺(tái)的控制器上進(jìn)行運(yùn)動(dòng)控制試驗(yàn)。圖9所示為單軸位移控制模塊測(cè)試圖。首先讓軸的移動(dòng)速度從0開始勻加速至最大速度3 cm/s,并保持勻速一段時(shí)間。然后,勻減速至2 cm/s并保持一段時(shí)間。最后,再勻減速至0。圖9a)為速度曲線,圖9b)為位移曲線。
對(duì)多軸運(yùn)動(dòng)齒輪運(yùn)動(dòng)控制模塊進(jìn)行測(cè)試,齒輪分子為2,分母為1,測(cè)試結(jié)果如圖10所示。由圖可知,從動(dòng)軸的速度隨著主動(dòng)軸速度的改變而發(fā)生變化,且兩者速度關(guān)系滿足主齒輪和從齒輪的齒輪比關(guān)系。
此外,本文將運(yùn)動(dòng)控制庫應(yīng)用于剪板機(jī)的運(yùn)動(dòng)控制上,測(cè)試結(jié)果如圖11所示。由圖11b)可看出,該運(yùn)動(dòng)控制庫是有效且可靠的。
通過數(shù)控技術(shù)進(jìn)行零部件加工不僅效率與加工精度高,且質(zhì)量好,因此,成為了自動(dòng)化生產(chǎn)中不可缺少的核心技術(shù)。而數(shù)控系統(tǒng)的核心技術(shù)是運(yùn)動(dòng)控制,其對(duì)零部件的加工極為重要。而目前市場(chǎng)上出現(xiàn)了諸多不同的數(shù)控運(yùn)動(dòng)控制方案,但各個(gè)方案之間并不兼容,從而使得運(yùn)動(dòng)控制較為復(fù)雜。為此,本文基于IEC 61131?3標(biāo)準(zhǔn)開發(fā)了數(shù)控機(jī)械PLC運(yùn)動(dòng)控制庫,并搭建控制測(cè)試平臺(tái)來對(duì)其進(jìn)行測(cè)試。其測(cè)試結(jié)果驗(yàn)證了運(yùn)動(dòng)控制庫的可行性。
[1] 胡亞波,吳玉文.我國數(shù)控機(jī)床的狀況與發(fā)展[J].機(jī)床與液壓,2004(7):4?6.
HU Yabo, WU Yuwen. The development and current situation of NC machine in China [J]. Machine tool & hydraulics, 2004(7): 4?6.
[2] 呼文豹,郭銳鋒,王志成,等.高性能交流伺服系統(tǒng)中的控制方法[J].組合機(jī)床與自動(dòng)化加工技術(shù),2013(1):7?11.
HU Wenbao, GUO Ruifeng, WANG Zhicheng, et al. Control method in the high performance servo control system [J]. Modular machine tool & automatic manufacturing technique, 2013(1): 7?11.
[3] 郭慶鼎,張志鋒.基于ZPETC和混合靈敏度復(fù)合控制的交流伺服系統(tǒng)[J].沈陽工業(yè)大學(xué)學(xué)報(bào),2006,28(6):619?622.
GUO Qingding, ZHANG Zhifeng. AC servo system based on ZPETC and hybrid sensitivity control [J]. Journal of Shenyang University of Technology, 2006, 28(6): 619?622.
[4] 趙明峰.基于PLCopen的運(yùn)動(dòng)功能模塊的建模與實(shí)現(xiàn)[D].武漢:華中科技大學(xué),2013.
ZHAO Mingfeng. Modeling and implementation of PLCopen based sports function module [D]. Wuhan: Huazhong University of Science and Technology, 2013.
[5] 喬?hào)|凱.PLC在數(shù)控機(jī)床開發(fā)中的應(yīng)用[J].機(jī)械與電子,2015(1):37?39.
QIAO Dongkai. Application of programmable controller to CNC machine tool development [J]. Machinery & electronics, 2015(1): 37?39.
[6] 金麗娟,嚴(yán)義,劉罡.基于IEC 61131?3的運(yùn)動(dòng)控制模塊設(shè)計(jì)[J].機(jī)電工程,2013,30(6):759?763.
JIN Lijuan, YAN Yi, LIU Gang. Design of motion control module based on IEC 61131?3 [J]. Journal of mechanical & electrical engineering, 2013, 30(6): 759?763.
[7] LI Shiyong, LI Xianglong, Wang Y T. Research and development of PLCopen function blocks for motion control [J]. Modular machine tool & automatic manufacturing technique, 2014, 13(10): 1519?1534.
[8] 潘迪夫,習(xí)可.以PLC為通信主站的Modbus控制網(wǎng)絡(luò)的設(shè)計(jì)與實(shí)現(xiàn)[J].現(xiàn)代電子技術(shù),2010,33(5):142?144.
PAN Difu, XI Ke. Design and implementation of Modbus control system based on PLC as master station [J]. Modern electronics technique, 2010, 33(5): 142?144.
[9] 鄧國超.基于PLC的生產(chǎn)自動(dòng)化控制系統(tǒng)的開發(fā)與設(shè)計(jì)[J].自動(dòng)化與儀器儀表,2016(8):37?38.
DENG Guochao. Development and design of automatic production control system based on PLC [J]. Automation & instrumentation, 2016(8): 37?38.
[10] 張宏飛,包睿,李超.工業(yè)自動(dòng)化監(jiān)控系統(tǒng)中PLC技術(shù)的應(yīng)用研究[J].現(xiàn)代電子技術(shù),2015,38(11):150?151.
ZHANG Hongfei, BAO Rui, LI Chao. Application of PLC technology in industry automation monitoring system [J]. Modern electronics technique, 2015, 38(11): 150?151.