王 輝,昝 濤,劉智豪,龐兆亮
(北京工業(yè)大學(xué) 先進制造技術(shù)北京市重點實驗室,北京 100124)
隨著社會發(fā)展的需要,各制造企業(yè)對機器裝備自動化、智能化水平的要求不斷提高,做為核心技術(shù)的運動控制系統(tǒng),其作用更為突出[1]。目前控制技術(shù)的發(fā)展日新月異,運動控制系統(tǒng)向著小型化、網(wǎng)絡(luò)化和智能化的方向發(fā)展,要求控制器具有優(yōu)異的系統(tǒng)性能、易于模塊化移植和較高的可靠性[2]。為滿足這些要求,控制系統(tǒng)多采用分布式控制方式,即由上位機實現(xiàn)不同的軌跡規(guī)劃和控制算法,由下位機實現(xiàn)插補細分和控制優(yōu)化,上位機和下位機通過通訊總線相互協(xié)調(diào)工作。這種控制系統(tǒng)有多種實現(xiàn)方式,文獻[3]利用工業(yè)控制計算機作為上位機和可編程控制器(PLC)為下位機建立兩級分布式旋壓機控制系統(tǒng);文獻[4]采用ARM處理器和LM629運動控制芯片作為上、下位機開發(fā)出直流伺服電機控制系統(tǒng);文獻[5]提出將AT89C52單片機作為下位機,利用PC機作為上位機設(shè)計多軸電機控制系統(tǒng)。為使控制系統(tǒng)能夠?qū)崿F(xiàn)多軸聯(lián)動,以及控制方式的簡單化,本文提出了一種以工控機為上位機和多軸運動控制器為下位機的多軸電機系統(tǒng)控制方案,這種系統(tǒng)結(jié)構(gòu)簡單,性能穩(wěn)定,控制精度高,適用于各種多軸伺服電機控制系統(tǒng),具有很高的移植性和擴展性。
在工業(yè)控制領(lǐng)域,多電機綜合控制系統(tǒng)應(yīng)用越來越廣泛,同時對控制系統(tǒng)提出更高的要求。一方面,控制系統(tǒng)不僅要實現(xiàn)對電機的單個控制,而且可以完成多電機的聯(lián)動操作。另一方面,整個控制系統(tǒng)既要有位移精確,速度穩(wěn)定,運行可靠的性能,又要具有靈活性好,危險性低,響應(yīng)時間短的優(yōu)點。
為實現(xiàn)這些功能,設(shè)計了工控機+運動控制器+驅(qū)動器的系統(tǒng)結(jié)構(gòu)。多軸運動控制器通過驅(qū)動器實現(xiàn)對各個電機的控制管理。利用工控機作為上位機,通過上位機軟件采用TCP/IP協(xié)議與控制器實時通信,實現(xiàn)對系統(tǒng)信息的采集及對控制指令的發(fā)送[7]。多軸運動控制器作為下位機負責(zé)對主機的命令的響應(yīng)及對數(shù)據(jù)信息的傳送。下位機通過專用接口與伺服單元相連,可進行位置、速度、轉(zhuǎn)矩、相位控制,并可實現(xiàn)高精度的同步控制。伺服電機通過將安裝在軸上的編碼器反饋的實時位置信息傳遞給伺服單元,完成閉環(huán)控制[8]。系統(tǒng)結(jié)構(gòu)如圖1所示。

圖1 系統(tǒng)結(jié)構(gòu)
根據(jù)負載、電機慣量比、轉(zhuǎn)矩、短時間特性(加減速轉(zhuǎn)矩)、連續(xù)特性(連續(xù)實效負載轉(zhuǎn)矩)、編碼器分辨率等方面選擇合適的伺服電機,本系統(tǒng)選用安川SGM7G型電機以及與其配套的SGD7S型伺服驅(qū)動器,多軸控制器選用MP2300S運動控制器。
安川MP2300S運動控制器是一款集電源功能、CPU功能、I/O功能以及通信功能于一體的、采用多功能結(jié)構(gòu)設(shè)計的小型機器控制器。該控制器通過運動網(wǎng)絡(luò)MECHATROLINK-Ⅱ可控制最多達16軸的伺服驅(qū)動器,并能實現(xiàn)高精度的同步控制,以及軌跡運動中所需要的直線插補、圓弧插補、螺旋插補等功能。I/O模塊選用LIO-04模塊,完成外部數(shù)據(jù)的輸入輸出功能。系統(tǒng)的硬件構(gòu)成如圖2所示。MP2300S與控制計算機之間的數(shù)據(jù)交換通過MPScope軟件實現(xiàn)。

圖2 系統(tǒng)硬件構(gòu)成
MPScope是安川公司研發(fā)的用于運動控制器Window應(yīng)用程序開發(fā)的軟件,可通過與控制器通訊實現(xiàn)對寄存器數(shù)據(jù)的讀、寫操作。由于其不依賴通訊介質(zhì)、開發(fā)過程簡單的優(yōu)點,MPScope廣泛應(yīng)用于各種電機控制系統(tǒng)。
在上位機+下位機的控制系統(tǒng)中,上位機與下位機數(shù)據(jù)交互采用系統(tǒng)預(yù)留的寄存器,上位機通過MPScope軟件向下位機發(fā)送寄存器變量讀/寫請求,下位機接收到請求后向上位機返回響應(yīng)信息。所有寄存器讀/寫請求在下位機(運動控制器)上處理,并在空余掃描時間里被執(zhí)行。如圖3所示,在一個掃描周期內(nèi),MPScope請求處理發(fā)生在高速掃描處理、低速掃描處理、中斷處理以外的時間段。這種在下位機處理請求信息的方式一定程度上減輕了上位機的并行處理負擔(dān),提高上位機的處理效率和系統(tǒng)的穩(wěn)定性。

圖3 寄存器讀/寫請求執(zhí)行時間
MPScope支持VB、C++、C#等匯編語言進行控制系統(tǒng)開發(fā)。以ReadRegisterBlock為例,用戶只需在程序中定義ezRegister和nSize的值,即可返回寄存器數(shù)據(jù)nData()。

表1 ReadRegisterBlock參數(shù)
通過MPScope軟件,上位機可以讀出分散在各處的運動控制器的線圈狀態(tài)和寄存器內(nèi)容,并可對其內(nèi)容進行設(shè)置更改,從而實現(xiàn)對工業(yè)現(xiàn)場多個電機軸的集中監(jiān)視和控制。
多軸運動控制器MP2300S作為下位機需要對各伺服軸進行參數(shù)設(shè)置及編程。先設(shè)定控制器模塊構(gòu)成,之后設(shè)定其參數(shù),最后再進行運動控制設(shè)計。按照控制要求,可采用PLC梯形圖方法編寫程序。編寫程序使用總圖、子圖、孫圖和IF命令,使控制梯形圖層次化[2]。
進行速度、轉(zhuǎn)矩、位置控制的步驟為:開始設(shè)定前確認“伺服使能ON”,給出運動控制條件,再分別設(shè)定表示各個控制的“運動命令”。其基本動作流程如圖4所示。

圖4 基本動作流程圖
4.1.1 手動控制模式
根據(jù)多軸聯(lián)動的需求,控制系統(tǒng)分為手動和自動兩種控制模式。手動模式下,通過對單個或多個電機的控制實現(xiàn)對電機初始位置的調(diào)整;自動模式下,利用預(yù)先編寫的程序能夠一鍵完成多電機的聯(lián)動操作。
手動控制模式下,需要對各軸進行參數(shù)配置和邏輯編程。以軸1為例,根據(jù)流程圖設(shè)計梯形控制圖如圖5所示。上位機只需改變相應(yīng)寄存器變量的值即可控制軸1的正反轉(zhuǎn)和速度。
4.1.2 自動控制模式
在手動模式的梯形控制圖中加入動作文本程序即可實現(xiàn)多電機的聯(lián)動操作。以某一多軸電機聯(lián)動為例,圖6給出該聯(lián)動動作的文本程序。上位機只需將相應(yīng)動作的寄存器變量值置為1,即可按照文本程序里面的速度、加速度、位置設(shè)定完成相應(yīng)的動作。

圖5 梯形控制圖

圖6 文本程序
上位機通過Ethernet接口與運控控制器MP2300S相連。主控制軟件采用LabVIEW編程,并利用MPScope軟件通訊。根據(jù)LabVIEW ActiveX調(diào)用原理進行上位機程序編程。MPScope具體調(diào)用步驟如下:
1)安裝MPScope軟件包,啟動通訊工具軟件,并設(shè)置IP地址,生成一個用于工控機與MP2300S通信用的文件(文件擴展名為“.ini”);
2)在LabVIEW程序框圖中放置“打開自動化”控件,右鍵圖標點擊“選擇ActiveX類”,在彈出的對話框中設(shè)置類型庫為“YASKAWA MPScope Control Version 1.0”,點擊確定按鈕完成自動化引用句柄與MPScope應(yīng)用的連接;
3)將通訊文件(文件擴展名為“.ini”)的路徑連接至“ConnectFilePath”接線端完成通信路徑設(shè)置;
4)選取調(diào)用方法,將寄存器的名稱連接至“szRegisterList”接線端、數(shù)據(jù)連接至“nData()”接線端,即可實現(xiàn)MPScope的調(diào)用。
以1號電機的速度設(shè)置為例,圖7顯示了其調(diào)用過程。

圖7 MPscope調(diào)用示例
選擇LabVIEW作為多軸伺服控制系統(tǒng)的開發(fā)軟件,主要采用while循環(huán)作為整體框架,通過調(diào)用事件結(jié)構(gòu)來進行整個系統(tǒng)的控制,主要包括電機使能、正反轉(zhuǎn)及轉(zhuǎn)速的設(shè)置,該軟件的流程圖如圖9所示。

圖8 軟件流程圖
圖8顯示出主控制系統(tǒng)的功能有:
1)狀態(tài)判斷和顯示程序。在電機運動之前,需對電機的狀態(tài)進行判斷,確定無報警、無過高扭矩狀態(tài)出現(xiàn)。將當(dāng)前的狀態(tài)信息和報警信息內(nèi)容實時顯示在操作面板上。
2)保護程序。在主程序運行中,應(yīng)注意電機的實時位置,在限位位置應(yīng)及時將電機停下來,對系統(tǒng)進行限位保護。同時,設(shè)置邏輯保護,禁止手動模式與自動模式同時操作。
3)進行電機控制與顯示操作。控制各個軸電機的使能、速度、正反轉(zhuǎn)設(shè)定,并能實時顯示各個軸電機的狀態(tài)參數(shù)。
通過需求分析、功能分解、軟件編碼完成最終的專用控制程序,使之滿足多電機聯(lián)動要求。如圖9所示,控制系統(tǒng)通過對電機的實時控制,完成機構(gòu)的各種動作。主控制程序界面如圖10所示。

圖9 多軸聯(lián)動示意圖

圖10 主控制程序界面
實際運行結(jié)果顯示,控制系統(tǒng)在并行處理、數(shù)據(jù)交換、運動控制及時性方面均有很好的表現(xiàn);同時系統(tǒng)的穩(wěn)定性好,避免了因系統(tǒng)故障而出現(xiàn)的各種問題。
1)采用工業(yè)控制計算機作為上位機,安川MP2300S控制器作為下位機,基于LabVIEW與ActiveX組建的控制系統(tǒng),能夠?qū)崿F(xiàn)控制多臺伺服電機使能、正反轉(zhuǎn)及速度設(shè)定的功能。
2)將LabVIEW作為控制系統(tǒng)開發(fā)軟件,充分利用了LabVIEW強大的并行運算能力,彌補了傳統(tǒng)編程方
【】【】式語法要求嚴格、開發(fā)者職業(yè)化程度高、不易維護的缺點,將系統(tǒng)開發(fā)難度大大降低;同時系統(tǒng)性能穩(wěn)定、操作方便,具有良好的擴展性和移植性,有利于工業(yè)自動化的廣泛應(yīng)用。
[1]王曄.淺談運動控制系統(tǒng)核心——運動控制器[J].自動化博覽,2015,(z1):106-108.
[2]姬琪,王紅園.基于MEMOBUS協(xié)議的多軸電機控制系統(tǒng)設(shè)計[J].電子測量技術(shù),2013,36(10):1-4.
[3]楊旭東,張飛庫,謝昆,王洪生,蘇媛媛.采用上下位機的旋壓機控制系統(tǒng)研究[J].現(xiàn)代制造工程,2010,(04):46-49.
[4]侯益坤,徐慧娟,童慶輝.采用ARM和LM629的直流電動機伺服控制系統(tǒng)研究[J].現(xiàn)代制造工程,2010,(08):124-127.
[5]莊煥偉,蘇宏英.基于單片機的多步進電動機控制系統(tǒng)[J].現(xiàn)代制造工程,2008,(11):121-123.
[6]S. Iang,M. H. Smith,J. Kitchen. Automatic tuning of two-degreeof-freedom PID control for engine electronic throttle system[J].Lancet, 2010,2(7716):135-140.
[7]莊麗.機器人系統(tǒng)中交流伺服電機控制研究[J].制造業(yè)自動化,2015,37(07):61-62,83.
[8]Roberto H,Juan A Tapia,Thomas M. Jahns.Saliency analysis of PMmachines with flux weakening capability[A].International Conference on Electrical Machines[C].2008.
[9]胡志強,王潤孝,李曙光.舞蹈機器人動作設(shè)計與實現(xiàn)研究[J].制造業(yè)自動化,2006,(11):36-39.
[10]江小玲,舒志兵.基于CAN總線多軸伺服電機的同步控制[J].機床與液壓,2012,40(08):140-142.
[11]黃娟娟,李曉明,張蓮梅,王任軍.基于Web的多異構(gòu)電力信息集成系統(tǒng)的開發(fā)與應(yīng)用[J].電力科學(xué)與工程,2003,(04):58-61.
[12]沈琦.基于LabVIEW的機器人控制軟件系統(tǒng)設(shè)計[J].電子技術(shù)與軟件工程,2013,(15):73.