国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

面向生產(chǎn)過程管控的數(shù)據(jù)建模、集成與存儲(chǔ)技術(shù)

2022-02-22 02:53:00江海凡丁國富
中國機(jī)械工程 2022年3期
關(guān)鍵詞:產(chǎn)線車間管控

孫 云 江海凡 丁國富

西南交通大學(xué)先進(jìn)設(shè)計(jì)與制造技術(shù)研究所,成都,610031

0 引言

車間生產(chǎn)管控系統(tǒng)通過對數(shù)據(jù)采集和監(jiān)控系統(tǒng)(supervisory control and data acquisition,SCADA)、制造執(zhí)行系統(tǒng)(manufacturing execution system,MES)、產(chǎn)品數(shù)據(jù)管理(product data management,PDM)等系統(tǒng)的業(yè)務(wù)數(shù)據(jù)進(jìn)行集成和分析,實(shí)現(xiàn)生產(chǎn)多層次信息的集中化展示,達(dá)到了輔助管理者決策的目的。生產(chǎn)過程數(shù)據(jù)是管控系統(tǒng)的核心業(yè)務(wù)對象,故從技術(shù)上打通過程數(shù)據(jù)的模型構(gòu)建、采集傳輸、存儲(chǔ)分析等環(huán)節(jié)是實(shí)現(xiàn)生產(chǎn)過程智能管控的關(guān)鍵。然而,隨著車間數(shù)字化、智能化的加速發(fā)展,車間生產(chǎn)設(shè)備和測控元件愈發(fā)多樣,隨著更多車間信息系統(tǒng)的開發(fā)和部署,生產(chǎn)管控系統(tǒng)在數(shù)據(jù)建模、數(shù)據(jù)集成、數(shù)據(jù)存儲(chǔ)的實(shí)施過程中面臨著缺乏通用數(shù)據(jù)模型、多通信接口維護(hù)管理難、傳統(tǒng)存儲(chǔ)架構(gòu)性能低下的問題[1-3]。

針對上述問題,學(xué)者們展開了廣泛研究。在數(shù)據(jù)建模方面,周亞勤等[4]借助統(tǒng)一建模語言(unified modeling language,UML)建立了針織生產(chǎn)智能管控的通用數(shù)據(jù)模型,并梳理出設(shè)備監(jiān)控/制造執(zhí)行/生產(chǎn)計(jì)劃中的數(shù)據(jù)流,為針織生產(chǎn)智能管控提供了技術(shù)指導(dǎo);王亞輝等[5]基于標(biāo)準(zhǔn)語義模型搭建了云架構(gòu)下的制造車間數(shù)據(jù)采集和融合系統(tǒng),實(shí)現(xiàn)了生產(chǎn)設(shè)備的泛在感知。在數(shù)據(jù)集成方面,張培等[6]借助面向?qū)ο蠓椒ê虴TL技術(shù)提出了數(shù)字化車間多源異構(gòu)數(shù)據(jù)的集成方案;李文俊等[7]構(gòu)建了數(shù)據(jù)中臺(tái)對裝備基礎(chǔ)數(shù)據(jù)、器材數(shù)據(jù)、維修數(shù)據(jù)進(jìn)行集成,通過統(tǒng)一數(shù)據(jù)視圖來提供數(shù)據(jù)集中管理服務(wù),實(shí)現(xiàn)了裝備保障數(shù)據(jù)的集成共享。在數(shù)據(jù)存儲(chǔ)方面,YE等[8]用Hadoop生態(tài)圈框架搭建了工業(yè)大數(shù)據(jù)存儲(chǔ)平臺(tái),實(shí)現(xiàn)了海量生產(chǎn)過程數(shù)據(jù)的存儲(chǔ);潘明陽等[9]使用非關(guān)系數(shù)據(jù)庫MongoDB構(gòu)建了船舶歷史數(shù)據(jù)庫,實(shí)現(xiàn)了基于船舶大數(shù)據(jù)的船舶監(jiān)控、航道管理及海事管理等地理位置服務(wù);趙炯等[10]基于Redis設(shè)計(jì)了盾構(gòu)遠(yuǎn)程監(jiān)控系統(tǒng),實(shí)現(xiàn)了盾構(gòu)數(shù)據(jù)的高速緩存、高容災(zāi)和高可用。上述研究主要聚焦于特定車間生產(chǎn)過程中設(shè)備數(shù)據(jù)的集成和存儲(chǔ)技術(shù),較少從多維度對生產(chǎn)過程數(shù)據(jù)進(jìn)行全面描述;同時(shí)數(shù)據(jù)感知/集成方式主要面向SCADA/MES等系統(tǒng)制定,難以適應(yīng)管控系統(tǒng)對車間多信息系統(tǒng)集成適配的需求;在數(shù)據(jù)存儲(chǔ)方面,當(dāng)前研究著眼于采用一種存儲(chǔ)工具來實(shí)現(xiàn)海量數(shù)據(jù)的高速讀寫,較少從多存儲(chǔ)工具協(xié)同運(yùn)行的角度進(jìn)行架構(gòu)設(shè)計(jì)。

綜上所述,本文以生產(chǎn)過程管控系統(tǒng)為載體,面向車間多源數(shù)據(jù),對系統(tǒng)實(shí)施中的數(shù)據(jù)建模、數(shù)據(jù)集成、數(shù)據(jù)存儲(chǔ)技術(shù)進(jìn)行深入研究。

1 車間數(shù)據(jù)特性分析與數(shù)據(jù)建模

生產(chǎn)車間不同網(wǎng)絡(luò)層次設(shè)備及數(shù)字化系統(tǒng)的監(jiān)控?cái)?shù)據(jù)由于描述語義、結(jié)構(gòu)層次各不相同,使得生產(chǎn)過程管控系統(tǒng)從中集成到的數(shù)據(jù)不能基于統(tǒng)一數(shù)據(jù)模型一致地解析及存儲(chǔ)。通過構(gòu)建生產(chǎn)過程數(shù)據(jù)模型,對生產(chǎn)過程監(jiān)控?cái)?shù)據(jù)進(jìn)行梳理和組織,并定義統(tǒng)一結(jié)構(gòu)層次的可視化描述標(biāo)準(zhǔn),是解決上述問題的關(guān)鍵。然而,當(dāng)前對生產(chǎn)車間數(shù)據(jù)建模的研究多針對生產(chǎn)設(shè)備展開,處于設(shè)備控制階段,主要用于解決設(shè)備間互聯(lián)互通的問題,沒有針對車間計(jì)劃下達(dá)—產(chǎn)線作業(yè)調(diào)度—設(shè)備生產(chǎn)執(zhí)行的生產(chǎn)管理流程來系統(tǒng)、全面地描述監(jiān)控對象;同時(shí),當(dāng)前生產(chǎn)數(shù)據(jù)建模往往針對特定制造領(lǐng)域展開,模型可重用性差,管控業(yè)務(wù)面向不同制造領(lǐng)域展開將會(huì)增加額外的數(shù)據(jù)建模工作。

針對上述情況,本文將車間生產(chǎn)過程劃分為多個(gè)子過程,并對各子過程的數(shù)據(jù)特性進(jìn)行分析,以明確生產(chǎn)過程數(shù)據(jù)建模的問題域;在此基礎(chǔ)上,借助圖形化數(shù)據(jù)描述工具EXPRESS-G構(gòu)建生產(chǎn)過程數(shù)據(jù)模型,定義了共性的生產(chǎn)過程監(jiān)控對象及其內(nèi)涵、屬性、結(jié)構(gòu)層次,將生產(chǎn)過程多維數(shù)據(jù)以統(tǒng)一的層次結(jié)構(gòu)映射到生產(chǎn)過程管控系統(tǒng)中,為集成數(shù)據(jù)的統(tǒng)一解析和傳輸提供模型依據(jù)。

1.1 車間數(shù)據(jù)特性分析

本文將車間生產(chǎn)過程劃分為設(shè)備生產(chǎn)、產(chǎn)線執(zhí)行、車間管理3個(gè)子過程。其中,設(shè)備生產(chǎn)過程主要包含開工條件核查、作業(yè)任務(wù)執(zhí)行、生產(chǎn)情況反饋等業(yè)務(wù)內(nèi)容。產(chǎn)線執(zhí)行過程主要包含作業(yè)排程及調(diào)度、質(zhì)量檢測、物料配送、資產(chǎn)維護(hù)等活動(dòng)。車間管理過程主要包含生產(chǎn)計(jì)劃/設(shè)計(jì)文件的下達(dá)及工藝路線制定等業(yè)務(wù)。生產(chǎn)過程管控系統(tǒng)即面向設(shè)備生產(chǎn)、產(chǎn)線執(zhí)行、車間管理3個(gè)子過程中設(shè)備級數(shù)據(jù)、產(chǎn)線級數(shù)據(jù)、車間級數(shù)據(jù)展開數(shù)據(jù)建模、數(shù)據(jù)集成及數(shù)據(jù)存儲(chǔ)。表1對各維度數(shù)據(jù)的監(jiān)控對象、數(shù)據(jù)來源、采集方式、采集特性、數(shù)據(jù)格式、存儲(chǔ)方法進(jìn)行了分析,分析結(jié)果顯示了車間生產(chǎn)過程數(shù)據(jù)的海量、多源、異構(gòu)的特點(diǎn)。

表1 車間生產(chǎn)過程數(shù)據(jù)特性分析

1.2 車間數(shù)據(jù)建模

本文基于車間管理—產(chǎn)線執(zhí)行—設(shè)備生產(chǎn)的生產(chǎn)執(zhí)行過程,自上而下將車間數(shù)據(jù)模型進(jìn)行分解,建立與之對應(yīng)的3個(gè)子模型。在此基礎(chǔ)上依據(jù)過程監(jiān)控需求對各子模型中涉及的關(guān)鍵數(shù)據(jù)信息進(jìn)行抽象,建立相應(yīng)的抽象實(shí)體,并明確各抽象實(shí)體包含的屬性及其關(guān)系。抽象實(shí)體對生產(chǎn)過程包含的監(jiān)控對象進(jìn)行共性表達(dá),并可通過屬性拓展實(shí)例化為具體監(jiān)控對象,進(jìn)而對生產(chǎn)過程進(jìn)行全面描述。

EXPRESS-G是一種圖形化數(shù)據(jù)描述工具,較多地應(yīng)用于系統(tǒng)開發(fā)前的數(shù)據(jù)需求描述。下面將通過標(biāo)準(zhǔn)化圖形建模語言EXPRESS-G對各子模型中的抽象實(shí)體、實(shí)體屬性等要素進(jìn)行定義,該過程需要保證各子模型沒有業(yè)務(wù)重疊,且對各抽象實(shí)體設(shè)置拓展屬性以應(yīng)對監(jiān)控需求變化。

1.2.1設(shè)備級數(shù)據(jù)模型

設(shè)備級數(shù)據(jù)模型從設(shè)備設(shè)計(jì)、運(yùn)行、維護(hù)3個(gè)維度對設(shè)備生產(chǎn)過程中的服役狀態(tài)進(jìn)行描述,為設(shè)備監(jiān)控看板的實(shí)時(shí)及歷史狀態(tài)監(jiān)視提供模型支撐。建立設(shè)備靜態(tài)信息、設(shè)備運(yùn)行信息、設(shè)備組成信息、設(shè)備維護(hù)信息4個(gè)抽象實(shí)體,并對其屬性和對應(yīng)關(guān)系進(jìn)行定義,如圖1所示。圖中[1∶1]表示一對一關(guān)系,[1∶n]表示一對多關(guān)系。

圖1 設(shè)備數(shù)據(jù)建模

設(shè)備靜態(tài)信息包含設(shè)備名稱、類型、出廠日期、設(shè)備型號等設(shè)備出廠固有(或生產(chǎn)系統(tǒng)建立時(shí)已配置好)且長期保持不變的屬性;設(shè)備運(yùn)行信息包含閑忙狀態(tài)、加工時(shí)間、動(dòng)作指令、實(shí)時(shí)能耗等隨生產(chǎn)實(shí)時(shí)變動(dòng)的屬性,能反映設(shè)備在生產(chǎn)中的加工狀態(tài)、工藝參數(shù)、能耗情況等,是設(shè)備監(jiān)控的重要部分;設(shè)備組成信息包含組成設(shè)備的機(jī)構(gòu)及其測控系統(tǒng)的基本信息、狀態(tài)信息、拓?fù)浣Y(jié)構(gòu)、模型信息等;設(shè)備維護(hù)信息包含故障時(shí)間、故障代碼、維修人員、維修時(shí)間等設(shè)備服役后的故障及維護(hù)信息。

1.2.2產(chǎn)線級/車間級數(shù)據(jù)模型

產(chǎn)線級數(shù)據(jù)模型依據(jù)產(chǎn)品質(zhì)量管控要素人、機(jī)、料、法、環(huán)、測來構(gòu)建,為產(chǎn)線執(zhí)行過程中影響產(chǎn)品質(zhì)量主要因素的明確提供模型支撐,包含人員信息、設(shè)備統(tǒng)計(jì)信息、物料信息、生產(chǎn)作業(yè)信息、環(huán)境信息、質(zhì)檢信息6個(gè)抽象實(shí)體,各抽象實(shí)體包含的對象屬性及關(guān)系如圖2所示。人員信息定義了工作人員的基本信息和工作狀態(tài);設(shè)備統(tǒng)計(jì)信息不同于1.2.1節(jié)中設(shè)備級數(shù)據(jù)模型的描述內(nèi)容,通過對設(shè)備狀態(tài)信息進(jìn)行分析處理,提取出設(shè)備綜合效率(OEE)、設(shè)備故障率等參數(shù)用于設(shè)備生產(chǎn)效能的評估;物料信息對在制物料的靜態(tài)信息、加工狀態(tài)進(jìn)行定義;生產(chǎn)作業(yè)信息描述了產(chǎn)線內(nèi)生產(chǎn)作業(yè)的具體內(nèi)容、執(zhí)行要素、執(zhí)行情況及異常信息;環(huán)境信息包含溫度、濕度等影響產(chǎn)品加工質(zhì)量的參數(shù);質(zhì)檢信息對產(chǎn)線內(nèi)質(zhì)檢活動(dòng)的檢測內(nèi)容、物料對象和檢測結(jié)果進(jìn)行描述。

車間級數(shù)據(jù)模型依據(jù)訂單下達(dá)—任務(wù)調(diào)度—工藝規(guī)劃的車間管理流程展開,包含訂單管理信息、生產(chǎn)任務(wù)信息、工藝設(shè)計(jì)信息、倉儲(chǔ)信息4個(gè)抽象實(shí)體,各抽象實(shí)體包含的對象屬性及關(guān)系見圖2。訂單管理信息主要包含產(chǎn)品訂單的客戶信息、產(chǎn)品數(shù)量、成交額、完成進(jìn)度等基本信息;生產(chǎn)任務(wù)信息對車間內(nèi)生產(chǎn)任務(wù)的具體內(nèi)容、執(zhí)行要素、完成情況進(jìn)行描述;工藝設(shè)計(jì)信息包含車間工藝流程的設(shè)計(jì)文檔、加工對象和執(zhí)行要素等;倉儲(chǔ)信息涵蓋車間內(nèi)倉儲(chǔ)的基本信息、在倉物料和物料進(jìn)出情況等。

圖2 產(chǎn)線/車間數(shù)據(jù)建模

2 基于通信適配的生產(chǎn)數(shù)據(jù)集成

生產(chǎn)過程管控系統(tǒng)面向車間物理設(shè)備、數(shù)字化管理系統(tǒng)等數(shù)據(jù)源,從設(shè)備、產(chǎn)線、車間多個(gè)維度進(jìn)行數(shù)據(jù)集成,以保證監(jiān)控?cái)?shù)據(jù)的全面性。然而不同車間數(shù)字化建設(shè)情況各異,各數(shù)據(jù)源所提供的數(shù)據(jù)通信接口各不相同,通信方式主要包含面向物理設(shè)備采集(通過串口通信、TCP/IP、RFID等)和面向信息系統(tǒng)集成(通過數(shù)據(jù)庫、消息中間件、文件系統(tǒng)、ETL工具等)兩種,多數(shù)據(jù)接口適配是生產(chǎn)數(shù)據(jù)集成必須解決的技術(shù)問題。另外,當(dāng)前開發(fā)模式直接調(diào)用數(shù)據(jù)源所提供通信接口,各通信接口的調(diào)用流程、輸入/輸出參數(shù)均不相同,系統(tǒng)需單獨(dú)開發(fā)與之對應(yīng)的通信調(diào)用層以實(shí)現(xiàn)數(shù)據(jù)接口適配,這將使生產(chǎn)管控系統(tǒng)通信層與數(shù)據(jù)層高度耦合,新數(shù)據(jù)層的引入將會(huì)改動(dòng)通信層程序源碼,大大增加了系統(tǒng)開發(fā)工作量。同時(shí),數(shù)據(jù)層源碼及其所依賴的資源文件內(nèi)嵌在通信層源文件內(nèi)部,這將影響程序的編譯/執(zhí)行效率,也使通信現(xiàn)場部署及測試變得困難。

因此本文將數(shù)據(jù)通信過程中的共性業(yè)務(wù)邏輯抽象為通信適配層,將系統(tǒng)對多個(gè)通信調(diào)用層的開發(fā)維護(hù)工作變?yōu)閮H對通信適配層展開,從而實(shí)現(xiàn)系統(tǒng)通信層和數(shù)據(jù)層的分離,后續(xù)新的數(shù)據(jù)層的接入不需修改上層應(yīng)用程序源碼。同時(shí),將常見通信協(xié)議封裝為動(dòng)態(tài)庫可實(shí)現(xiàn)代碼的重用,現(xiàn)場通信僅需將動(dòng)態(tài)庫加載到指定環(huán)境目錄中即可實(shí)現(xiàn)便捷的通信部署及測試。由此可見,通信適配層具備可重用、易拓展和易維護(hù)的特點(diǎn),實(shí)現(xiàn)原理如圖3所示。

圖3 通信適配層實(shí)現(xiàn)原理

2.1 通信適配層設(shè)計(jì)

通信適配層的本質(zhì)是基于面向?qū)ο笤O(shè)計(jì)(oriented object design,OOD)中依賴倒置、開放封閉、單一職責(zé)的原則,根據(jù)數(shù)據(jù)接口類別對其共性業(yè)務(wù)流程進(jìn)行抽象,建立數(shù)據(jù)通信基類,定義其基本通信功能,如環(huán)境初始化、數(shù)據(jù)讀取、通信日志、斷開連接等。而具體的數(shù)據(jù)通信協(xié)議類則繼承自該基類,基于不同通信協(xié)議提供的通信開發(fā)包對具體方法進(jìn)行實(shí)現(xiàn),派生出不同通信協(xié)議的適配器,如MTConnect適配器、OPC適配器等。上層應(yīng)用調(diào)用基類的抽象接口,基于多態(tài)原理實(shí)現(xiàn)子類方法的自動(dòng)調(diào)用,從而實(shí)現(xiàn)上層應(yīng)用與底層數(shù)據(jù)的分離。采用通信適配層既可對通用標(biāo)準(zhǔn)協(xié)議OPC-UA、MTConnect等進(jìn)行適配,實(shí)現(xiàn)設(shè)備數(shù)據(jù)的互聯(lián)互通和同構(gòu)采集,還可對車間信息系統(tǒng)的數(shù)據(jù)接口進(jìn)行適配。通過對多數(shù)據(jù)接口的通信和管理,實(shí)現(xiàn)對設(shè)備/產(chǎn)線/車間多層次異構(gòu)數(shù)據(jù)的集成,保證監(jiān)控?cái)?shù)據(jù)源的豐富性,并降低數(shù)據(jù)接口的開發(fā)和維護(hù)成本。

基于上述方法對通信適配層進(jìn)行設(shè)計(jì)。通信適配層包含接口管理器、抽象接口、適配器、適配接口4個(gè)部分,基于UML建立其組成模型,如圖4所示。

圖4 通信適配層UML圖

適配接口是由車間通信組件開發(fā)商提供或自行封裝的通信客戶端類,如武漢華中數(shù)控股份有限公司提供的HNC-8、OPC基金會(huì)提供的OPCDAAuto.dll等,調(diào)用其API對車間信息系統(tǒng)的數(shù)據(jù)服務(wù)器進(jìn)行連接訪問,實(shí)現(xiàn)業(yè)務(wù)數(shù)據(jù)的通信采集。

適配器是實(shí)現(xiàn)抽象接口集成適配接口的中間環(huán)節(jié)。通過繼承并實(shí)現(xiàn)抽象接口中的標(biāo)準(zhǔn)通信接口以生成OPCAdapter、TCP/UDPAdapter等適配器類。各適配器實(shí)例對應(yīng)一種具體的適配接口,將適配接口中的通信API封裝到其標(biāo)準(zhǔn)通信接口中,實(shí)現(xiàn)配置屬性、初始化、讀取數(shù)據(jù)等操作,并根據(jù)配置信息將集成數(shù)據(jù)轉(zhuǎn)化成統(tǒng)一數(shù)據(jù)格式。

抽象接口是接口管理器所依賴的抽象集成類,根據(jù)車間主流數(shù)據(jù)源建立通信協(xié)議、數(shù)據(jù)庫、消息中間件和文件系統(tǒng)4個(gè)抽象類,各抽象類根據(jù)業(yè)務(wù)特性封裝有不同的標(biāo)準(zhǔn)通信接口,并保留未定義功能的方法,以便于該類抽象接口的功能拓展。

接口管理器通過人機(jī)交互界面?zhèn)€性化選擇要適配的通信接口,對現(xiàn)有通信接口進(jìn)行匹配、測試和通信,并通過抽象類指針多態(tài)地調(diào)用同類適配器類中的通信方法,實(shí)現(xiàn)多源數(shù)據(jù)的適配和管理。

2.2 數(shù)據(jù)集成流程

基于通信適配層的多源生產(chǎn)過程數(shù)據(jù)集成框架如下:生產(chǎn)設(shè)備及測控元件如機(jī)器人、數(shù)控機(jī)床、AGV、PLC、RFID等生產(chǎn)的底層數(shù)據(jù)可由OPC-UA協(xié)議統(tǒng)一采集和管理,或者通過SCADA、DCS等工控系統(tǒng)對底層數(shù)據(jù)進(jìn)行間接集成。產(chǎn)線執(zhí)行、車間管理等業(yè)務(wù)數(shù)據(jù)則通過適配MES、ERP、PDM等信息系統(tǒng)提供的數(shù)據(jù)接口來獲取。集成得到多層次生產(chǎn)過程數(shù)據(jù)由適配器依據(jù)車間信息模型統(tǒng)一轉(zhuǎn)化為JSON格式存入管控系統(tǒng)存儲(chǔ)模塊,也可將數(shù)據(jù)上傳至生產(chǎn)大數(shù)據(jù)平臺(tái)中,為大數(shù)據(jù)分析、挖掘提供數(shù)據(jù)支持。技術(shù)框架如圖 5所示。

圖5 多源數(shù)據(jù)集成架構(gòu)

進(jìn)一步地,以O(shè)PC-UA、HBase兩種常見通信接口為例,對數(shù)據(jù)源適配過程進(jìn)行闡述。

2.2.1OPC-UA協(xié)議適配

OPC-UA因具備統(tǒng)一對象模型、命名空間、層次管理等機(jī)制,被作為工控標(biāo)準(zhǔn)通信協(xié)議廣泛應(yīng)用于設(shè)備層數(shù)據(jù)的統(tǒng)一管理和傳輸。管控系統(tǒng)通過通信適配層對OPC-UA協(xié)議進(jìn)行適配,可遠(yuǎn)程對車間工控系統(tǒng)的OPC服務(wù)器進(jìn)行數(shù)據(jù)訪問。適配過程如下:①適配接口類動(dòng)態(tài)加載OPCDAAuto.dll,建立OPCServer對象并連接到OPC遠(yuǎn)程服務(wù)器,依據(jù)OPCGroup對OPCServer命名空間中已定義的具體車間設(shè)備進(jìn)行訪問,調(diào)用讀取事件獲取相應(yīng)OPCGroup中的OPCItem值;②繼承通信協(xié)議類抽象類生成OPC-UA適配器類并將①中通信過程封裝到其標(biāo)準(zhǔn)通信接口中,包含創(chuàng)建客戶端實(shí)例、初始化通信環(huán)境、配置通信參數(shù)、接收增量數(shù)據(jù)、發(fā)送數(shù)據(jù)、數(shù)據(jù)格式轉(zhuǎn)換等,將封裝結(jié)果生成為動(dòng)態(tài)庫;③將返回車間數(shù)據(jù)項(xiàng)與設(shè)備實(shí)例化對象的映射關(guān)系寫入配置文件,同時(shí),調(diào)用OPC-UA適配器動(dòng)態(tài)庫,根據(jù)配置信息將數(shù)據(jù)統(tǒng)一以JSON格式返回,完成數(shù)據(jù)格式轉(zhuǎn)換。

2.2.2HBase數(shù)據(jù)庫適配

以HBase為代表的NoSQL數(shù)據(jù)庫為車間信息系統(tǒng)提供了海量業(yè)務(wù)數(shù)據(jù)存儲(chǔ)與查詢服務(wù),正在生產(chǎn)車間中得到普及,對其進(jìn)行適配可使管控系統(tǒng)對車間各信息系統(tǒng)進(jìn)行業(yè)務(wù)數(shù)據(jù)訪問和集成。具體適配過程如下:①適配接口類在加載Thrift數(shù)據(jù)庫驅(qū)動(dòng)后,創(chuàng)建HBase客戶端對象并連接到數(shù)據(jù)庫服務(wù)器,通過客戶端所提供的Scan、Get等方法獲取返回參數(shù)以實(shí)現(xiàn)過程數(shù)據(jù)讀取;②繼承數(shù)據(jù)庫類抽象接口生成HBase適配器類并將①中通信過程封裝到其標(biāo)準(zhǔn)通信接口中,包含創(chuàng)建實(shí)例、連接服務(wù)器、映射關(guān)系配置、訂閱增量數(shù)據(jù)、寫入數(shù)據(jù)、數(shù)據(jù)格式轉(zhuǎn)換等,將封裝結(jié)果生成為動(dòng)態(tài)庫;③建立服務(wù)器元數(shù)據(jù)結(jié)構(gòu)和實(shí)例化對象的字段映射關(guān)系,以csv文件的格式保存,調(diào)用HBase適配器動(dòng)態(tài)庫,加載csv文件信息將集成數(shù)據(jù)統(tǒng)一轉(zhuǎn)換為JSON格式,實(shí)現(xiàn)車間異構(gòu)數(shù)據(jù)的同構(gòu)集成。

3 基于Redis-MongoDB-HDFS架構(gòu)的生產(chǎn)數(shù)據(jù)存儲(chǔ)

當(dāng)前生產(chǎn)數(shù)據(jù)存儲(chǔ)框架主要采用傳統(tǒng)關(guān)系型數(shù)據(jù)庫MySQL、Oracle等。關(guān)系型數(shù)據(jù)庫適用于查詢過程復(fù)雜、數(shù)據(jù)量不大的結(jié)構(gòu)化數(shù)據(jù)管理,難以應(yīng)對非結(jié)構(gòu)化數(shù)據(jù)(如圖片、視頻等)和大規(guī)模數(shù)據(jù)的存儲(chǔ)。由1.2節(jié)車間數(shù)據(jù)特性分析可知,生產(chǎn)過程管控系統(tǒng)集成的生產(chǎn)數(shù)據(jù)包含結(jié)構(gòu)化數(shù)據(jù)、半結(jié)構(gòu)化數(shù)據(jù)、非結(jié)構(gòu)化數(shù)據(jù),若僅采用傳統(tǒng)關(guān)系型數(shù)據(jù)則難以實(shí)現(xiàn)異構(gòu)數(shù)據(jù)的高效存儲(chǔ)。同時(shí),設(shè)備工藝狀態(tài)等數(shù)據(jù)刷新頻率快,讀寫頻繁,要求數(shù)據(jù)庫具備高速讀寫能力,而車間運(yùn)行過程產(chǎn)生的歷史數(shù)據(jù)則要求數(shù)據(jù)庫具有大規(guī)模數(shù)據(jù)存儲(chǔ)與分析能力,當(dāng)前研究多采用一種數(shù)據(jù)存儲(chǔ)工具,難以較好地滿足上述需求。

針對當(dāng)前問題,本文將NoSQL數(shù)據(jù)庫及分布式文件系統(tǒng)引入生產(chǎn)數(shù)據(jù)存儲(chǔ)中。其中,NoSQL數(shù)據(jù)庫采用Key-Value、面向Document等存儲(chǔ)結(jié)構(gòu),具備較好的拓展性,能應(yīng)對TB/PB級結(jié)構(gòu)化/半結(jié)構(gòu)化數(shù)據(jù)的高效存儲(chǔ)。分布式文件系統(tǒng)將數(shù)據(jù)文件分布于多個(gè)存儲(chǔ)節(jié)點(diǎn),主要用于海量非結(jié)構(gòu)化數(shù)據(jù)的存儲(chǔ)和管理。本文設(shè)計(jì)了基于Redis-MongoDB-HDFS的生產(chǎn)數(shù)據(jù)存儲(chǔ)架構(gòu),根據(jù)生產(chǎn)實(shí)時(shí)數(shù)據(jù)、生產(chǎn)歷史數(shù)據(jù)及生產(chǎn)文件各自的特點(diǎn)選擇合適的數(shù)據(jù)庫,并定義了各數(shù)據(jù)庫間的交互及協(xié)同關(guān)系,以實(shí)現(xiàn)異構(gòu)數(shù)據(jù)的高效實(shí)時(shí)讀寫及歷史數(shù)據(jù)冗余。

生產(chǎn)數(shù)據(jù)存儲(chǔ)架構(gòu)將通信適配層集成得到的海量數(shù)據(jù)按照一定組織進(jìn)行分類存儲(chǔ),為生產(chǎn)管控系統(tǒng)的生產(chǎn)實(shí)時(shí)監(jiān)控、歷史數(shù)據(jù)分析、現(xiàn)場視頻回顧等業(yè)務(wù)模塊提供數(shù)據(jù)支持。該架構(gòu)包含集群環(huán)境、實(shí)時(shí)數(shù)據(jù)存儲(chǔ)、歷史數(shù)據(jù)存儲(chǔ)、文件存儲(chǔ)4個(gè)模塊,通過Redis-MongoDB-HDFS架構(gòu)協(xié)同實(shí)現(xiàn)對海量生產(chǎn)數(shù)據(jù)的實(shí)時(shí)存儲(chǔ)和高速讀取,總體框架見圖6。

圖6 基于Redis-MongoDB-HDFS的生產(chǎn)數(shù)據(jù)存儲(chǔ)框架

集群環(huán)境模塊為整個(gè)存儲(chǔ)框架提供了硬件運(yùn)行環(huán)境,基于交換機(jī)、虛擬路由等網(wǎng)絡(luò)硬件將多臺(tái)服務(wù)器或虛擬終端的網(wǎng)絡(luò)地址設(shè)置到同網(wǎng)域,實(shí)現(xiàn)網(wǎng)絡(luò)互通;將指定版本Redis、MongoDB、Hadoop的數(shù)據(jù)存儲(chǔ)服務(wù)、集群管理服務(wù)部署到各服務(wù)節(jié)點(diǎn)上,在單一節(jié)點(diǎn)內(nèi)通過配置文件的形式設(shè)置主從角色、讀寫權(quán)限等參數(shù),實(shí)現(xiàn)集群的數(shù)據(jù)備份,保證生產(chǎn)數(shù)據(jù)的安全存儲(chǔ),并將讀寫操作定向到同一節(jié)點(diǎn)的不同數(shù)據(jù)存儲(chǔ)服務(wù)上,提高集群的讀寫速度。同時(shí),集群通過線性增加服務(wù)節(jié)點(diǎn),實(shí)現(xiàn)存儲(chǔ)容量和讀寫吞吐量的水平拓展。

實(shí)時(shí)數(shù)據(jù)存儲(chǔ)模塊為生產(chǎn)實(shí)時(shí)數(shù)據(jù)提供緩存和高速讀取服務(wù),通過Redis實(shí)時(shí)數(shù)據(jù)庫來實(shí)現(xiàn)[10]。在存儲(chǔ)結(jié)構(gòu)上選擇String結(jié)構(gòu),以Key-Value對進(jìn)行存儲(chǔ)。將監(jiān)控實(shí)例對象ID作為Key,Value部分對應(yīng)通信適配層的數(shù)據(jù)輸出格式,是包含內(nèi)嵌結(jié)構(gòu)的JSON串,有Timestamp和Entity等多個(gè)Map對象,其中Timestamp為當(dāng)前時(shí)間戳,Entity為監(jiān)控對象包含的實(shí)體名,其值為實(shí)體包含的所有屬性集合,屬性集合的層次結(jié)構(gòu)由實(shí)例對象模型決定,定義存儲(chǔ)格式如表2所示。

表2 實(shí)時(shí)數(shù)據(jù)存儲(chǔ)格式

管控系統(tǒng)調(diào)用通信適配層中的方法將原始數(shù)據(jù)轉(zhuǎn)換成上述JSON格式并寫入Redis服務(wù)器完成過程數(shù)據(jù)的實(shí)時(shí)存入。為保證生產(chǎn)過程信息的實(shí)時(shí)展示,Redis集成的最新實(shí)例對象數(shù)據(jù)會(huì)覆蓋歷史數(shù)據(jù),使內(nèi)存中始終保存各監(jiān)控實(shí)例對象最新的屬性信息,從而保證服務(wù)器的讀取性能。

歷史存儲(chǔ)模塊負(fù)責(zé)構(gòu)造生產(chǎn)歷史數(shù)據(jù)集并提供查詢分析服務(wù),借助MongoDB數(shù)據(jù)庫實(shí)現(xiàn)[9]。首先對歷史數(shù)據(jù)的存儲(chǔ)結(jié)構(gòu)進(jìn)行定義,基于車間、產(chǎn)線、設(shè)備3個(gè)監(jiān)控層次建立Workshop、Production-line、Equipment 3個(gè)Database。然后根據(jù)監(jiān)控實(shí)例模型的結(jié)構(gòu)在Database中創(chuàng)建相應(yīng)Collection,并按照一定頻率讀取并解析Redis中實(shí)例對象的Timestamp和Data,全量地插入到對應(yīng)的Collection中,完成歷史數(shù)據(jù)寫入。

文件存儲(chǔ)模塊為視頻、圖片、文件等非結(jié)構(gòu)化數(shù)據(jù)提供存儲(chǔ)和讀取服務(wù),借助HDFS實(shí)現(xiàn)[8]。首先按照監(jiān)控主題、監(jiān)控日期、監(jiān)控內(nèi)容的層次生成生產(chǎn)文件管理樹,然后在HDFS根目錄中以車間、產(chǎn)線、設(shè)備為主題建立文件目錄,各主題目錄中每天以當(dāng)前日期為文件名添加日期文件目錄。在日期文件目錄中創(chuàng)建生產(chǎn)文本資料、生產(chǎn)監(jiān)控視頻、文件圖片副本等內(nèi)容篩選目錄,各篩選目錄可根據(jù)實(shí)際情況繼續(xù)嵌套。集成得到的生產(chǎn)文件以“監(jiān)控主體_監(jiān)控日期_文件內(nèi)容”的格式重命名并存放到相應(yīng)的文件目錄中。通過獲得該文件的索引,將索引、文件名、文件路徑信息作為一條Document插入MongoDB中,方便根據(jù)文件名快速查找文件。

4 實(shí)例驗(yàn)證

實(shí)例車間主要生產(chǎn)任務(wù)為亞克力雕刻件和合金結(jié)構(gòu)件的粗精加工,并分設(shè)雕刻件產(chǎn)線和結(jié)構(gòu)件產(chǎn)線。以雕刻件產(chǎn)線為例,該產(chǎn)線包含了雕刻機(jī)、AGV、機(jī)械手、五軸加工中心等生產(chǎn)設(shè)備及傳感器、RFID、控制電機(jī)等測控設(shè)備。車間生產(chǎn)信息系統(tǒng)包括SCADA、MES、ERP。SCADA配置有Kafka隊(duì)列作為數(shù)據(jù)傳輸接口,MES、ERP則為管控系統(tǒng)提供MySQL的讀取權(quán)限。若采用OPC-UA協(xié)議對設(shè)備數(shù)據(jù)進(jìn)行直接采集,則只能完成對設(shè)備級數(shù)據(jù)的監(jiān)控,而采用常規(guī)設(shè)計(jì)模式對每種數(shù)據(jù)接口編寫耦合的數(shù)據(jù)通信層又將使數(shù)據(jù)接口的拓展和維護(hù)變得復(fù)雜。同時(shí),車間單班制運(yùn)作,部署有數(shù)據(jù)監(jiān)控點(diǎn)100多個(gè),每日產(chǎn)生實(shí)時(shí)數(shù)據(jù)1.2 GB,約300萬條,視頻、圖片等文件數(shù)據(jù)3 GB。若采用傳統(tǒng)關(guān)系型數(shù)據(jù)庫對車間數(shù)據(jù)進(jìn)行存儲(chǔ),則由于其橫向拓展性差、數(shù)據(jù)模型約束復(fù)雜,不能較好地應(yīng)對生產(chǎn)管控中變動(dòng)的監(jiān)控需求,且對視頻等大型非結(jié)構(gòu)化數(shù)據(jù)文件的讀寫性能較差。同時(shí),當(dāng)存儲(chǔ)數(shù)據(jù)量達(dá)到TB、PB級后,關(guān)系型數(shù)據(jù)庫的吞吐性能將顯著下降?;谠撥囬g遇到的問題,將本文提出的海量異構(gòu)生產(chǎn)數(shù)據(jù)的建模、集成和存儲(chǔ)方法應(yīng)用到車間管控中,并對管控系統(tǒng)的存儲(chǔ)/集成模塊進(jìn)行實(shí)現(xiàn)。

4.1 車間數(shù)據(jù)建模實(shí)現(xiàn)

基于車間信息模型,依據(jù)實(shí)際監(jiān)控對象,對監(jiān)控對象各抽象實(shí)體進(jìn)行實(shí)例化。以華數(shù)機(jī)器人為例,建立機(jī)器人實(shí)例模型,如圖7所示。

圖7 機(jī)器人數(shù)據(jù)建模實(shí)例

在此基礎(chǔ)上,以實(shí)例車間雕刻件產(chǎn)線為例,對產(chǎn)線級數(shù)據(jù)模型進(jìn)行拓展和重用,建立雕刻件生產(chǎn)線實(shí)例模型,如圖8所示。

圖8 雕刻件產(chǎn)線數(shù)據(jù)模型

4.2 車間數(shù)據(jù)接口及通信

基于通信適配層技術(shù),對Kafka、MySQL兩種客戶端接口進(jìn)行適配,將librdkafka.lib及Msado15.dll中的通信API按照其通信邏輯封裝到通信適配層的標(biāo)準(zhǔn)通信接口中,并生成KafkaAdapter.dll及MySQLAdapter.dll兩個(gè)動(dòng)態(tài)庫,將動(dòng)態(tài)庫放置到生產(chǎn)過程系統(tǒng)指定的文件目錄下。

系統(tǒng)通過增量數(shù)據(jù)訂閱的形式調(diào)用通信適配層中相應(yīng)的動(dòng)態(tài)庫,對生產(chǎn)線上已部署的SCADA、MES、ERP系統(tǒng)進(jìn)行數(shù)據(jù)集成,而SCADA系統(tǒng)則采用OPC-UA統(tǒng)一對車間底層設(shè)備進(jìn)行數(shù)據(jù)采集。集成數(shù)據(jù)格式依據(jù)實(shí)例化模型統(tǒng)一轉(zhuǎn)換為JSON格式后寫入Redis中進(jìn)行實(shí)時(shí)緩存。Redis以每秒一次的頻率將全量數(shù)據(jù)寫入MongoDB中形成生產(chǎn)歷史數(shù)據(jù)。視頻、生產(chǎn)文件等數(shù)字則按天批量導(dǎo)入HDFS中,構(gòu)建車間通信網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu),如圖 9所示。

圖9 車間通信網(wǎng)絡(luò)拓?fù)鋱D

4.3 數(shù)據(jù)存儲(chǔ)平臺(tái)部署及測試

存儲(chǔ)模塊利用虛擬化組件VMware在工控服務(wù)器上搭建,配置了3臺(tái)虛擬節(jié)點(diǎn),并依據(jù)負(fù)載均衡、主從備份、讀寫分離的原則,將Redis、MongoDB、HDFS相應(yīng)的存儲(chǔ)、管理服務(wù)進(jìn)程部署到虛擬節(jié)點(diǎn)上,完成存儲(chǔ)框架的搭建。配置情況如表3所示。

表3 集群性能配置

基于上述配置,使用性能測試工具Redis-Benchmark、YCSB、Sysbench模擬50個(gè)線程并發(fā),對Redis、MongoDB、MySQL服務(wù)器進(jìn)行查詢操作,以測試存儲(chǔ)架構(gòu)的讀取性能。首先在各服務(wù)器中導(dǎo)入有300萬條信息的生產(chǎn)過程數(shù)據(jù)表,單條記錄大小為1 kB,并將查詢總次數(shù)分別設(shè)置為10萬、100萬、1000萬,分3組測試服務(wù)器每秒查詢率(queries-per-second,QPS),最終測試結(jié)果如表4所示。由測試結(jié)果可知,在相同硬件配置環(huán)境下,Redis和MongoDB在應(yīng)對GB級數(shù)據(jù)查詢的性能遠(yuǎn)優(yōu)于關(guān)系型數(shù)據(jù)庫MySQL,且尚未出現(xiàn)性能瓶頸。

表4 集群吞吐量測試結(jié)果

4.4 車間生產(chǎn)管控系統(tǒng)實(shí)現(xiàn)

基于通信、存儲(chǔ)環(huán)境部署,對生產(chǎn)數(shù)據(jù)集成、存儲(chǔ)模塊進(jìn)行實(shí)現(xiàn)。首先,基于MFC框架開發(fā)了通信適配集成模塊的管理界面。通過人機(jī)交互可增加、修改、刪除接口實(shí)現(xiàn)動(dòng)態(tài)管理;同時(shí),對已定義的接口添加配置文件實(shí)現(xiàn)字段映射、結(jié)構(gòu)轉(zhuǎn)換等功能,并在此基礎(chǔ)上進(jìn)行連接測試和數(shù)據(jù)通信。存儲(chǔ)模塊通過部署在工控服務(wù)器上的存儲(chǔ)服務(wù)進(jìn)程實(shí)現(xiàn)對通信適配層和管控系統(tǒng)業(yè)務(wù)層的讀寫響應(yīng);采用RedisDesktopManager、Studio 3T和WebHDFS分別對Redis、MongoDB、HDFS進(jìn)行可視化管理,實(shí)現(xiàn)各存儲(chǔ)框架的元信息構(gòu)建、數(shù)據(jù)操作和權(quán)限授予等功能。最后,將上述模塊作為數(shù)據(jù)服務(wù)端為生產(chǎn)管控系統(tǒng)應(yīng)用層提供數(shù)據(jù)讀取、分析等服務(wù),進(jìn)而實(shí)現(xiàn)生產(chǎn)過程數(shù)據(jù)集中化展示、生產(chǎn)狀況實(shí)時(shí)監(jiān)控、歷史數(shù)據(jù)關(guān)聯(lián)分析等應(yīng)用功能,實(shí)施效果如圖 10所示。

圖10 數(shù)據(jù)集成、存儲(chǔ)模塊設(shè)計(jì)與實(shí)現(xiàn)

5 結(jié)論

本文從生產(chǎn)過程管控的實(shí)際問題出發(fā),使用EXPRESS-G建立了車間信息模型,從設(shè)備生產(chǎn)、產(chǎn)線執(zhí)行、車間管理3個(gè)層次對生產(chǎn)過程進(jìn)行了抽象描述,結(jié)合柔性制造車間對所有監(jiān)控對象進(jìn)行實(shí)例化,較為全面地反映了生產(chǎn)過程監(jiān)控所需的關(guān)鍵信息;借助通信適配層對柔性制造車間的Kafka、MySQL接口進(jìn)行適配,對車間SCADA、MES、ERP數(shù)據(jù)進(jìn)行結(jié)構(gòu)轉(zhuǎn)化和統(tǒng)一集成,保證了生產(chǎn)過程監(jiān)控?cái)?shù)據(jù)的豐富性和同構(gòu)性;提出Redis-MongoDB-HDFS架構(gòu),將通信適配層集成的JSON數(shù)據(jù)按照統(tǒng)一的邏輯結(jié)構(gòu)寫入數(shù)據(jù)庫中,應(yīng)用案例表明,該存儲(chǔ)架構(gòu)能滿足車間每天4 GB增量數(shù)據(jù)的實(shí)時(shí)寫入,并可實(shí)現(xiàn)實(shí)時(shí)/歷史數(shù)據(jù)的微秒級查詢,保障了大規(guī)模生產(chǎn)數(shù)據(jù)的高性能存儲(chǔ)與讀寫。

在生產(chǎn)數(shù)據(jù)建模、采集、集成和存儲(chǔ)的基礎(chǔ)上,深度融合制造技術(shù)、工業(yè)大數(shù)據(jù)與新一代人工智能是實(shí)現(xiàn)車間智能管控的關(guān)鍵和趨勢,也是下一步研究方向。

猜你喜歡
產(chǎn)線車間管控
昆玉棒材軋制產(chǎn)線提速增效工藝改進(jìn)措施
山東冶金(2022年4期)2022-09-14 08:58:06
EyeCGas OGI在泄漏管控工作中的應(yīng)用
多端聯(lián)動(dòng)、全時(shí)管控的高速路產(chǎn)保通管控平臺(tái)
100MW光伏車間自動(dòng)化改造方案設(shè)計(jì)
智能制造(2021年4期)2021-11-04 08:54:28
梅鋼1780產(chǎn)線高速鋼軋輥使用維護(hù)
多品種小批量智能制造產(chǎn)線關(guān)鍵技術(shù)及應(yīng)用探討
電子制作(2019年20期)2019-12-04 03:52:00
管控老年高血壓要多管齊下
寬厚板鋼軋一體化智能制造示范產(chǎn)線推進(jìn)實(shí)踐
山東冶金(2019年3期)2019-07-10 00:54:04
招工啦
“扶貧車間”拔窮根
昌黎县| 武宣县| 邮箱| 汪清县| 兰坪| 正阳县| 大冶市| 大兴区| 宁化县| 锦屏县| 新乐市| 高安市| 礼泉县| 青浦区| 台山市| 都江堰市| 镇沅| 白水县| 武定县| 贵州省| 江口县| 沙坪坝区| 岐山县| 西乡县| 江安县| 富裕县| 宜兰县| 尼木县| 阳朔县| 淮北市| 中宁县| 太湖县| 乌鲁木齐市| 深水埗区| 盐边县| 华亭县| 涟水县| 舞阳县| 蓝山县| 蒙自县| 巴里|