鄭 良 苑明海 裴鳳雀 顧文斌
(河海大學機電工程學院,江蘇常州 213022)
新時代背景下,信息技術與制造的緊密融合是制造業邁向智能化的重要標志[1]。智能制造的實現需要制造資源轉向智能化、信息化[2],而實現轉變的重要基礎就是車間現場多種類、多協議、多來源生產數據的互聯互通[3]。目前,產品設計日益復雜,涉及工藝環節繁多,多設備多車間協同加工,車間數據來源復雜且結構不同,導致各加工過程數據難以及時獲取,加上數據采集方法的滯后以及車間設備數據共享困難,使得車間在實現智能化、信息化的過程中面臨窘境,企業難以快速高效完成生產需求。因此,有必要建立一套完整的數據采集和預處理框架,攻克車間制造過程中數據采集難、采集到的數據復雜等問題,實現制造車間生產數據標準化、智能化,提高智能制造企業的核心競爭力。
隨著車間不斷向智能化發展,傳統制造車間中依靠人工采集數據的方式已經難以滿足智能制造車間中對數據的要求[4]。OPC統一框架(OPC unified architecture, OPCUA),是一種機器對機器網絡傳輸協議,被廣泛用于監控系統[5]、制造執行系統[6-7]等領域中,促進各種類型網絡之間的信息交換[8]。同時,射頻識別技術(radio frequency identification,RFID)憑借其識別速度快、存儲信息量大等特點常被應用于數據的采集[9]。數字孿生車間因其設備種類多、設備之間通信協議不統一,通過感知設備采集的數據往往不能直接用于分析計算,需要對其及進行處理。Lee J等使用Node-RED對智能工廠注塑過程中的數據進行采集、存儲、監測和預處理[10]。Cho E等針對智能制造中數據缺失和不平衡等問題,采用生成式對抗網絡(generative adversarial network,GAN),對數據進行預處理[11],但受限于數據集,并沒有得到令人滿意的結果。目前,國內對智能制造車間數據預處理的研究尚不成熟,沒有形成完整統一的數據與處理方案。
綜上所述,智能制造車間數據采集及預處理是實現車間智能化、信息化的前提,在制造過程中起著關鍵性作用。然而,目前對于智能制造車間數據采集、預處理方法研究較少,對于車間數據多源異構問題還沒有成熟的解決方案。基于此,本文從車間數據采集出發,提出了智能制造車間設備數據采集框架和數據預處理方法。
傳統制造車間數據采集方案大多采取以半人工半自動的方法,采集到的數據大多不具備實時性和共享性,難以互聯互通。智能制造車間中的設備層及物料層存在大量智能感知設備,自動化智能化程度高,針對這兩個層次提出了設備資源數據及物料資源數據的具體采集方案。
智能制造車間中存在大量工業機器人、數控加工中心及智能檢測設備,設備種類繁多,設備間數據私有協議多樣繁復。目前主流的工業設備通信協議有數控設備互聯通訊協議(MTConnect)及OPCUA工控互聯協議[12]。
本文基于OPCUA工控互聯協議提出了一種智能工業設備數據采集方案,如圖1所示。TCP/IP協議作為最基本的互聯網協議[13],包含有多個用于物聯網通信架構的基礎協議簇。首先利用TCP/IP協議將設備層與協議轉換模塊相連接,給每個數控加工中心及工業機器人均配備獨立的協議轉換模塊。接著,將采集來的私有協議數據輸入進各自的協議轉換模塊中,建立數學模型并統一語義規范,然后連接到OPCUA服務器,在OPCUA服務器對應的緩存位置進行數據存儲以備后續HTTP服務器的調用。最后,基于HTTP協議與客戶層面進行交互,客戶在交互界面下達指令給HTTP服務器,HTTP服務器尋址到對應的OPCUA服務器,調用相應緩存位置的數據呈現出來供客戶參考使用。由此全過程實現基于OPCUA的智能工業設備數據采集,為后續數據預處理提供了強有力的基礎。

圖1 基于OPCUA的智能工業設備數據采集方案
除了智能工業設備,智能檢測設備在智能制造車間中也占據了重要地位。如圖2,針對智能檢測設備提出了一種基于QIF 3.0的智能檢測設備數據采集方案,根據檢測設備的特點采用TCP/IP協議或USB端口將數據傳輸到檢測數據采集端,隨后通過格式轉換模塊將其轉換為統一的QIF格式數據,使其能被XML同一框架處理,以備后續HTTP服務器對其進行調用。最后,基于HTTP協議與客戶進行交互,在接口上與智能工業設備數據采集方案達成統一。

圖2 基于QIF 3.0的智能檢測設備數據采集方案
結合上述智能工業設備及智能檢測設備的數據采集方案,提出了一種智能制造車間設備數據采集框架,如圖3所示。采取設備-服務器-交換機-客戶端的模式,利用OPCUA服務器與QIF服務器中的協議轉換模塊,將設備多種多樣的私有協議數據統一規范化,完成智能制造車間數據的采集、封裝、存儲。客戶端通過交換機對數據進行調用,實現了車間中各類設備數據的實時高效采集。

圖3 智能制造車間設備數據采集框架
在新信息技術的發展過程中,射頻識別技術因具有良好的性能逐漸應用到車間數據采集中[14-15]。依據車間物料的流動特征及RFID技術的工作原理,搭建了智能制造車間物料資源數據采集架構,如圖4所示。該系統分為設備層、感知層、通信層和服務層。

圖4 智能制造車間物料資源數據采集架構
(1)設備層為各門類物料資源相關設備,例如:智能倉儲貨架、AGV小車、各門類物料、三維桁架、自動堆垛機以及RFID標簽(與物料及工裝工具等綁定,跟隨其移動)。
(2)感知層主要包括RFID讀寫器、條碼掃描儀等智能感知設備,用來識別設備層的物料資源,傳輸射頻識別數據到通信端,同時可將上層發送的指令數據寫入到RFID卡內。該層通過RS232接口與通信層相連。
(3)通信層主要采用ZigBee通信主副模塊。主副模塊分別負責數據的讀與寫的操作,采用單步、防碰撞、單標簽等方式對RFID進行識別。該層通過RS232接口或USB接口與服務層相連。
(4)服務層由數據庫服務器、RFID中間件服務器、企業物料管理系統、交換機組成,共同構成車間局域網。讀寫RFID識別卡數據的具體功能封裝于RFID中間件服務器內。
設備資源數據和物料資源數據采集完成之后,因車間智能感知設備采集的數據各自維度、種類不同,并且包含大量冗余及空值,因此,亟需提出一種數據預處理方法來保證采集數據的準確可用。如圖5所示,提出了一種數據預處理方法。首先,通過預處理模塊調用采集的數據;然后,通過改進散列表對車間異常以及重復進行清洗;接著,利用主成分分析法對清洗完成的數據進行降維,最后將數據存儲在數據庫中以備之后對其進行調用。

圖5 數據預處理方法主要流程
采用智能制造車間傳感器在采集方案對數據采集時,如果物料滯留,讀寫器頻繁閱讀此物料所帶RFID標簽,就會產生大量冗余數據;而當射頻信號受到干擾或ZigBee主副模塊的通訊不穩定時,就會產生漏讀錯讀現象,最終得到的數據會產生大量空值。因此感知設備直接采集到的數據往往不能直接用于分析計算,需要對其處理將其中的“臟數據”去除,得到干凈、可用的車間數據。如圖6所示,散列表是基于鍵值對的數據表結構,類似指針映射通過散列函數來快速訪問數據[16],很適合用于對車間數據進行初步處理。

圖6 散列表結構原理圖
本文研究了散列表結構提出了一種改進散列表的數據清洗算法。其具體操作流程如圖7所示,包含有如下幾個步驟:

圖7 改進散列表數據清洗算法流程圖
步驟1:利用鏈表作為底層存儲結構,設計散列表的基本組成元素鍵值對Entry,Entry={TID,RID,C,P},TID為 數據標簽的ID號,RID為數據采集器的ID號,C為數據采集器的時間戳,P為指針,P指向下一個Entry節點。
步驟2:設置散列表Table的長度Table.length,根據TID構建合適的散列函數。
步驟3:對初次傳入的原始數據的數值進行散列運算,求解出數據標簽Ex的TID對 應的散列值hash,利用“與運算”求出散列值hash對應散列表Table的位置下標index。
步驟4:對散列表Table的位置下標為index的鏈表進行檢測,如果散列表Table的位置下標為index的鏈表為空,則表示散列表Table的位置下標index對應的TID數 據標簽為新TID數據標簽,將原始數據的這個數值直接傳出并更新鏈表信息,即將原始數據的這個數值存入下標為index的鏈表;如果散列表Table的位置下標為index的鏈表不為空,則對散列表Table的位置下標為index的鏈表進行遍歷操作:
(1)將原始數據作為一個數據標簽,將原始數據依次輸入鏈表進行數據清洗操作,構建一個輔助對象用于記錄鏈表的尾節點,鍵值對Entry(k,v)e=Null。
(2)將散列表Table下標為index的鏈表錄入下標為s的鍵值對。
(3)判斷數據標簽是否為新數據標簽,若數據標簽是新數據標簽則將數據標簽發出至原始數據。
(4)若數據標簽不是新數據標簽則判斷此數據標簽的TID與 當前TID是否相等,若此數據標簽的TID與 當前TID不相等則轉至(2)。
(5)若數據標簽的TID與 當前TID相等則判斷數據標簽的TID與 當前TID的時間差是否大于閾值,若數據標簽的TID與 當前TID的時間差不大于閾值則舍棄該數據標簽并轉至(2),閾值為常數。
(6)若數據標簽的與當前TID的 時間差大于閾值則將數據標簽發出至執行數據清洗操作的原始數據并更新標簽事件的時間戳與更新原始數據。
步驟5:散列表的非空位占比達到75%,則散列表Table進行一次擴容操作,擴容操作長度為前一次散列表Table擴容操作長度的2倍,將前一次散列表Table中的原始數據傳入擴容操作后的散列表 Table中,繼續數據流的判定。
車間產生的數據經過清洗之后,去除了數據中的空值等情況,但此時的數據維度過高,各類數據的屬性特征可能存在關聯,從而影響最終的分析結果。因此,必須對數據進行處理,降低數據維度的同時保證低維數據與原數據特征的最大相似。采用主成分分析法對數據進行降維,具體步驟如下:
步驟0:首先將清洗后的實時車間數據建立原始數據矩陣X={x1,···,xn},X∈Rd×n,xi是一個列向量,矩陣的每一行代表車間資源的一個屬性字段。


步驟4:計算原始數據的每個數值在新的r維主成分子空間中的坐標,得到降維后的數據矩陣A∈Rr×n,公式中, Rr×n代表r×n維 的實數矩陣,R為實數集合,A∈Rr×n是 降維后的數據矩陣是r×n維的實數矩陣。
經過以上步驟,就可以完成對數據樣本庫的清洗、降維,得到能夠直接用于分析計算的數據,下面對提出的數據清洗和數據降維算法進行驗證。
為了實現對本文數據預處理方法的應用,以某企業制造車間的關聯數據挖掘過程為前提[17],通過是否在關聯數據挖掘前運行本文預處理方法為變量進行3次試驗。
圖8為測試效率結果比較圖,以規模增長度為變量,執行時間為評估指標,方案1為未進行預處理的關聯規則數據挖掘,方案2為僅進行數據降維預處理后的關聯規則數據挖掘,方案3為采用本文數據預處理方法的關聯規則數據挖掘。從圖8可以看出,在設定相同的最小支持度時,采用本文提出的預處理方法的數據挖掘方案的折線圖始終位于其他兩種方案的折線下方,從而說明采用本文提出預處理方法的數據挖掘方案運行速度快、挖掘能力強,驗證了本文預處理方法的可行性。

圖8 測試效率結果的比較圖
在生成車間生產方案前,需要預先輸入每臺加工中心完成每道工序所需的加工時長。具體加工時長的預輸入通常由工藝工程師依據經驗預估,或少批量試制及仿真軟件計算得出。
本文依托于某企業智能制造車間試驗本文數據采集及預處理方法,連續采集該車間1個月內的工序預輸入加工時長數據與實際加工時長數據(由采集到的各工序的開工時刻完工時刻計算差值得出)。鑒于樣本數據的普適性,選定最大規模的樣本段t∈[5,35] min,共獲得3 012組對照數據,利用上述數據預處理手段對該樣本庫進行清洗去重。然后將樣本庫按t∈[5,15]、t∈[15,25]、t∈[25,35]進行簡單分段,求取每個分段內預輸入加工時長與實際加工時長各自的平均值,得到結果[11.2,20.8,29.6]與 [11.6,21.4,30.5],兩者差值為[0.4,0.6,0.9]。
下面進行工序加工時長差值的擬合,方便后續車間資源調度時的預輸入加工時長的補差調整。分別利用線性擬合及二次擬合進行對比,如圖9所示。發現二次擬合的殘差模更小,擬合效果更好,因此設置經補差調整后的預輸入加工時長如下。


圖9 加工時長差值擬合圖
本文從智能制造車間數據采集方案出發,分別基于OPCUA和QIF提出了智能工業設備數據采集和智能檢測設備采集方案,實現對智能制造車間智能多源感知設備數據的語義規范,完成了車間數據的采集、封裝和存儲,方便后續對數據的進一步加工。接著,本文采用散列表和主成分分析法完成對車間數據的清洗及降維,簡化了后續數據分析的難度。最后,將提出的數據采集和預處理方法在智能制造車間中進行驗證。試驗結果表明,與傳統數據降維和預處理方式相比,本文提出的數據處理方法運行速度更快、挖掘能力更強,具有可行性和優越性。