張昊蘇,陳成軍
(青島理工大學(xué)機械工程學(xué)院,山東青島 266520)
控制系統(tǒng)作為制造業(yè)的靈魂,在工業(yè)生產(chǎn)中不可或缺。隨著《中國制造2025》的逐步落實,信息化、智能化、柔性化已經(jīng)成為工業(yè)控制系統(tǒng)的發(fā)展趨勢[1-2]。控制系統(tǒng)涵蓋的范圍日益擴大,所要完成的控制內(nèi)容逐步增加,控制內(nèi)容不再局限于簡單的運動控制,多控制任務(wù)融合成為控制系統(tǒng)的未來方向[3]。
現(xiàn)場總線技術(shù)作為溝通上位機與下位機的橋梁,其性能的優(yōu)劣決定著整個控制系統(tǒng)的性能[4-5]。工業(yè)以太網(wǎng)控制總線技術(shù)的興起極大地推動了控制系統(tǒng)的信息化和智能化發(fā)展[6-8]。EtherCAT作為一種開放的工業(yè)以太網(wǎng)技術(shù),具有實時性高、通信速率快、標(biāo)準(zhǔn)統(tǒng)一、拓撲靈活等特點[9-11]?,F(xiàn)已被廣泛應(yīng)用于工業(yè)控制前沿。
機器視覺系統(tǒng)是利用工業(yè)攝像頭及控制器實現(xiàn)識別、檢測的控制系統(tǒng)[12]。機器視覺系統(tǒng)要求識別處理具有實時性,但能夠適應(yīng)惡劣、長時間的工作環(huán)境[13]。隨著勞動力成本的增加,工業(yè)加工產(chǎn)品精度需求的提高,以及智能化的制造發(fā)展方向,機器視覺檢測已然成為工業(yè)生產(chǎn)的必備功能。
本文作者在以上研究基礎(chǔ)上,采用KRTS的軟件框架設(shè)計構(gòu)建一套基于EtherCAT總線的集成視覺控制系統(tǒng)。將機器視覺和EtherCAT總線技術(shù)融于一體,達到高速圖像采集、實時圖像處理、實時運動控制的目的。
該控制系統(tǒng)由視覺檢測和運動控制兩部分組成。視覺檢測部分的圖像數(shù)據(jù)采集由工業(yè)相機完成,工業(yè)相機采用GigE接口形式。圖像處理任務(wù)由控制器完成。運動控制部分主要是EtherCAT主站和從站的搭建,控制命令由主站發(fā)出經(jīng)從站傳遞給驅(qū)動器,完成對三自由度工作臺的運動控制。為節(jié)省資源提高控制系統(tǒng)的可操作性,控制器采用普通PC+EtherCAT從站的形式。圖像處理單元和EtherCAT主站的數(shù)據(jù)共享由KRTS軟件框架完成??刂葡到y(tǒng)總體設(shè)計方案如圖1所示。
圖1 控制系統(tǒng)總體設(shè)計方案框圖
控制器采用安裝Windows系統(tǒng)的PC或者IPC,要求具有雙網(wǎng)卡,分別用于EtherCAT通信和相機通信。
視覺檢測的硬件部分主要是工業(yè)相機、鏡頭及光源等。視覺檢測硬件框圖如圖2所示,光源給相機采集圖像提供必要的亮度以避免環(huán)境干擾;光電傳感器用于檢測工件,當(dāng)工件到達指定工位后,光電傳感器工作,觸發(fā)工業(yè)相機,進行信息的采集;工業(yè)相機選用具有千兆以太網(wǎng)GigE接口的工業(yè)相機,具有傳輸速率快、性能穩(wěn)定的特點。
圖2 視覺檢測硬件框圖
EtherCAT從站使用本課題組設(shè)計的測控從站。該從站由從站控制器倍福ET1100和微處理器STM32共同搭建,包括通信板和測控板兩部分。通信板經(jīng)網(wǎng)口實現(xiàn)與系統(tǒng)主站的EtherCAT通信功能,接收系統(tǒng)主站發(fā)送的EtherCAT下行數(shù)據(jù)幀并進行解析,獲取主站發(fā)送的控制信息并將控制信息通過SPI接口轉(zhuǎn)發(fā)給測控板微處理器STM32,同時將測控板采集的數(shù)據(jù)信息經(jīng)SPI接口插入到EtherCAT數(shù)據(jù)幀中返回給主站。測控板為測控系統(tǒng)測量及控制功能的實現(xiàn)單元,包括8路開關(guān)量輸入、4路脈沖量輸入、8路模擬量輸入以及8路開關(guān)量輸出、4路脈沖量輸出、4路模擬量輸出等功能[14]。測控從站實物圖如圖3所示。
圖3 EtherCAT從站實物圖
該系統(tǒng)主要使用其中的4路脈沖量輸出功能,該部分硬件框架如圖4所示。EtherCAT從站采用SM同步模式,收到主站下發(fā)的EtherCAT數(shù)據(jù)幀后,從站響應(yīng)PDI(Process Data Interface)中斷,執(zhí)行PWM脈沖輸出任務(wù)。由STM32定時器完成PWM輸出至驅(qū)動器。
圖4 EtherCAT從站脈沖輸出部分硬件框架圖
運動執(zhí)行機構(gòu)使用三自由度工作臺,由步進電機驅(qū)動,裝有限位開關(guān)。工作臺實物圖如5所示。
圖5 工作臺實物圖
由于EtherCAT總線采用主從模式,通信由主站發(fā)起,必須在極短的通信周期內(nèi)完成通信任務(wù)。因此,主站平臺必須具有穩(wěn)定的實時性能。機器視覺部分在要求圖像傳輸速率快速穩(wěn)定外,必須能夠?qū)崟r完成圖像處理并與EtherCAT主站共享通信數(shù)據(jù)??刂破鞑捎密浖脚_采用德國Kithara公司開發(fā)的基于Windows的實時套件KRTS(Kithara RealTime Suite)。
KRTS是Kithara構(gòu)建的基于Windows的實時子系統(tǒng)下的功能模塊,以提供相關(guān)API的方式,將具有實時性要求的功能通過動態(tài)鏈接庫DLL的形式加載到內(nèi)核層執(zhí)行,為應(yīng)用程序提供特定的功能或服務(wù)。其實時套件包括Ether-CAT主站模塊、以太網(wǎng)通信模塊、實時視覺模塊等。其實時性能能夠達到微妙級抖動,滿足控制系統(tǒng)要求。能夠?qū)⒉煌娜蝿?wù)分配到指定的CPU中執(zhí)行,提高實時處理性能。此外,KRTS通過不同虛擬地址映射同一物理地址的方式提供特殊的共享內(nèi)存機制,不僅能夠?qū)崿F(xiàn)應(yīng)用層之間的數(shù)據(jù)共享,也能夠?qū)崿F(xiàn)內(nèi)核層與應(yīng)用層之間的數(shù)據(jù)共享。EtherCAT主站和圖像處理的通與共享內(nèi)存相關(guān)的API來實現(xiàn)[15-16]。軟件的具體開發(fā)在VS2010開發(fā)環(huán)境下完成。
控制系統(tǒng)軟件流程圖如圖6所示。程序開始運行后,首先加載Kithara驅(qū)動并初始化KRTS,完成實時內(nèi)核的加載和共享內(nèi)存的創(chuàng)建。實時內(nèi)核用于處理EtherCAT主站的控制命令、主從站之間的實時周期通信、圖像數(shù)據(jù)的接收以及圖像數(shù)據(jù)的實時處理。運動控制部分完成EtherCAT主從站的初始化及其之間的周期通信,根據(jù)圖像檢測處理后由共享內(nèi)存?zhèn)鱽淼膶崟r數(shù)據(jù)執(zhí)行相應(yīng)的控制命令。
圖6 控制系統(tǒng)軟件流程圖
運動控制部分主要是EtherCAT主站及主從站之間通信的建立。EtherCAT主站建立流程圖如圖7所示。首先,打開用于EtherCAT主從站之間通信的網(wǎng)卡。然后,創(chuàng)建數(shù)據(jù)集和定時器及其回調(diào)函數(shù),數(shù)據(jù)集主要用于存放EtherCAT通信相關(guān)的數(shù)據(jù),在主站接收到從站的數(shù)據(jù)幀后進入數(shù)據(jù)集回調(diào)函數(shù)進行EtherCAT數(shù)據(jù)的處理,定時器用于周期性發(fā)送EtherCAT數(shù)據(jù)幀。數(shù)據(jù)集回調(diào)函數(shù)及定時器回調(diào)函數(shù)都在內(nèi)核層執(zhí)行,保證EtherCAT通信的實時性。其次,掃描并建立EtherCAT從站,根據(jù)從站設(shè)備描述文件獲取實時傳遞的數(shù)據(jù)接口信息[9]。最后,開啟定時器建立EtherCAT主、從站之間的數(shù)據(jù)通信。
圖7 EtherCAT主站建立流程圖
視覺檢測部分初始化包括工業(yè)相機的初始化配置,圖像處理算法的加載配置。圖像處理算法采用開源計算機視覺庫OpenCV,OpenCV算法在內(nèi)核層中執(zhí)行保證圖像處理的實時性。具體執(zhí)行過程如圖8所示。接收到圖像信息后首先判斷圖像格式,進而轉(zhuǎn)換為OpenCV圖像格式。在程序中OpenCV圖像處理任務(wù)與圖像接收任務(wù)分配在不同的CPU中執(zhí)行,因此在確定圖像格式可處理后即可釋放圖像接收緩存用于下一幀圖像的接收,提高系統(tǒng)效率。圖像處理完成后將處理結(jié)果及對應(yīng)控制信息寫入共享內(nèi)存,用于界面顯示和運動控制。
控制系統(tǒng)人機界面完成采集圖像的顯示及對硬件系統(tǒng)的控制,需要設(shè)定EtherCAT主站及視覺檢測使用的網(wǎng)卡及EtherCAT的通信周期。控制界面如圖9所示。
將控制系統(tǒng)安裝到普通計算機,以檢測圓形工件——三自由度工作臺循環(huán)移動為例,測試控制系統(tǒng)。實驗平臺實物圖如圖10所示。部分實驗平臺硬件信息如表1所示。當(dāng)工業(yè)相機檢測到圓形工件后,工作臺作出相應(yīng)運動,達到圖像實時處理、運動實時控制的目的。
圖8 圖像處理流程
表1 試驗臺硬件信息
圖9 控制系統(tǒng)界面
圖10 實驗平臺實物圖
控制系統(tǒng)的實時性決定了系統(tǒng)作出穩(wěn)定相應(yīng)的性能??刂葡到y(tǒng)能夠穩(wěn)定地提供低抖動的定時器是衡量系統(tǒng)實時性的主要指標(biāo)。本文作者通過測量裝有Kithara內(nèi)核的普通PC對1 ms定時器的抖動值來衡量其實時性。測量結(jié)果如圖11所示,該結(jié)果表明控制系統(tǒng)的1 ms定時抖動基本穩(wěn)定在10 s左右,抖動小,系統(tǒng)實時性能可靠,響應(yīng)快速。
圖11 系統(tǒng)的1ms定時器抖動
本文作者基于德國Kithara公司KRTS設(shè)計出一套集成視覺檢測和EtherCAT總線的運動控制系統(tǒng)。視覺檢測的圖像處理與運動控制都在實時內(nèi)核中完成,在相機采集速度滿足的條件下基于GigE接口的穩(wěn)定快速圖像傳輸以及EtherCAT總線的高效運動控制數(shù)據(jù)傳輸使得本控制系統(tǒng)能夠完成實時性要求較高的檢測及運動控制。同時,將視覺檢測處理控制部分與運動控制部分結(jié)合在同一臺PC中完成,降低控制成本。圓形工件檢測——三自由度工作臺循環(huán)移動的實驗表明,控制系統(tǒng)達到實時圖像檢測處理與實時運動控制融合的目的。因此,在多控制任務(wù)融合的控制系統(tǒng)發(fā)展趨勢下該系統(tǒng)將會廣泛應(yīng)用于工業(yè)發(fā)展。