翟振坤ZHAI Zhen-kun;文梓斌WEN Zi-bin
(廣東交通職業(yè)技術(shù)學(xué)院,廣州 510815)
開放式智能化數(shù)控系統(tǒng)是實現(xiàn)智能制造裝備、柔性制造單元、智能生產(chǎn)線、智能車間、智能工廠的基礎(chǔ)支撐和保障[1]。智能制造時代,快速多變的市場環(huán)境與短周期、定制化的生產(chǎn)制造需求,對數(shù)控系統(tǒng)的開放性、可重構(gòu)能力以及智能化水平都提出了更高的要求。傳統(tǒng)面向代碼的開發(fā)方法難以滿足高性能數(shù)控系統(tǒng)的研發(fā)需求。從系統(tǒng)層級構(gòu)建先進(jìn)的設(shè)計方法與策略是實現(xiàn)數(shù)控系統(tǒng)高效敏捷開發(fā)、全面提升系統(tǒng)綜合性能的有效途徑。
自上世紀(jì)數(shù)控系統(tǒng)誕生以來,其體系結(jié)構(gòu)經(jīng)歷了NC階段的共享總線型體系結(jié)構(gòu)、CNC階段的PC+運動控制卡型體系結(jié)構(gòu)、全軟件型體系結(jié)構(gòu)、集中式體系結(jié)構(gòu)、分布式體系結(jié)構(gòu)等演化過程。智能制造階段,數(shù)控系統(tǒng)需要融合開放自動化系統(tǒng)技術(shù)[2]、新一代信息技術(shù),在體系結(jié)構(gòu)方面進(jìn)一步實現(xiàn)開放化、數(shù)字化、網(wǎng)絡(luò)化與智能化。有關(guān)開放式智能化數(shù)控系統(tǒng)體系結(jié)構(gòu)的研究,近年來已成為數(shù)控領(lǐng)域的研究熱點。Cong G.等利用多智能體系統(tǒng)(MAS)來設(shè)計智能化數(shù)控系統(tǒng)體系結(jié)構(gòu),所提方法采用層次化設(shè)計策略,可有效滿足智能化系統(tǒng)需求[3]。李鎖等提出基于總線技術(shù)的可重構(gòu)智能化數(shù)控系統(tǒng)體系結(jié)構(gòu)模型,實現(xiàn)了數(shù)控系統(tǒng)遠(yuǎn)程智能化多模式實時顯示及控制[4]。Syst R等提出一種數(shù)控系統(tǒng)軟硬件模塊解耦的體系結(jié)構(gòu),通過構(gòu)造數(shù)控功能矩陣,可根據(jù)控制需求定制化構(gòu)建數(shù)控系統(tǒng)[5]。工業(yè)4.0時代,控制即服務(wù)的理念使得研究人員開始將SOA方法融入數(shù)控系統(tǒng)體系結(jié)構(gòu)設(shè)計中,劉建康等提出將微服務(wù)架構(gòu)融入到開放式數(shù)控系統(tǒng)體系結(jié)構(gòu)中,并利用形式化方法驗證架構(gòu)可行性[6]。金新娟等結(jié)合網(wǎng)絡(luò)數(shù)字制造新需求,提出面向服務(wù)的網(wǎng)絡(luò)化數(shù)控系統(tǒng)體系結(jié)構(gòu)[7]。
針對開放式智能化數(shù)控領(lǐng)域新的發(fā)展需求,本文基于面向服務(wù)思想提出一種多維集成開放式數(shù)控系統(tǒng)設(shè)計方法,所提方法從系統(tǒng)層級角度,在設(shè)計階段將領(lǐng)域建模技術(shù)、形式化驗證技術(shù)與多目標(biāo)優(yōu)化技術(shù)融入數(shù)控系統(tǒng)的建模、驗證與迭代優(yōu)化過程中,在實現(xiàn)階段通過構(gòu)建支撐工具集,建立標(biāo)準(zhǔn)化的開發(fā)流程,便于設(shè)計開發(fā)人員高效靈活定制面向特定需求的數(shù)控系統(tǒng)。
遵循服務(wù)建模、服務(wù)組合與服務(wù)優(yōu)化的設(shè)計流程,如圖1所示,所提開放式數(shù)控系統(tǒng)設(shè)計框架包含服務(wù)化領(lǐng)域建模、形式化組合語義驗證與參數(shù)多目標(biāo)優(yōu)化三大組成部分,其中在建模階段依據(jù)數(shù)控功能的服務(wù)化封裝策略,建立領(lǐng)域建模語言,以數(shù)控服務(wù)為基本單元搭建數(shù)控系統(tǒng)組合模型;在模型功能與性能正確性驗證階段,利用形式化方法將系統(tǒng)行為語義轉(zhuǎn)化為可驗證系統(tǒng)規(guī)約,借助模型檢測工具實現(xiàn)系統(tǒng)規(guī)約的自動化驗證;同時,為在設(shè)計空間中選擇最優(yōu)的模型參數(shù)組合,結(jié)合多目標(biāo)優(yōu)化技術(shù)通過建立優(yōu)化模型實現(xiàn)模型參數(shù)的求解。在設(shè)計流程的各階段,分別利用元建模與領(lǐng)域建模平臺、模型自動檢測工具與優(yōu)化測試環(huán)境等開發(fā)工具,輔助設(shè)計開發(fā)人員實現(xiàn)服務(wù)化數(shù)控系統(tǒng)的系統(tǒng)級建模,系統(tǒng)模型行為語義與執(zhí)行邏輯的自動化驗證以及系統(tǒng)參數(shù)的優(yōu)化求解與高效部署。
在面向服務(wù)的多維集成開放式數(shù)控系統(tǒng)設(shè)計過程中,基于面向服務(wù)思想實現(xiàn)數(shù)控系統(tǒng)建模需要將面向服務(wù)架構(gòu)(Service-Oriented Architecture,SOA)與領(lǐng)域建模技術(shù)相結(jié)合。如圖2所示,在建模的需求分析階段,首先需要從功能、執(zhí)行、平臺等多個視角對數(shù)控領(lǐng)域特征進(jìn)行全面分析與總結(jié);結(jié)合模塊化設(shè)計策略與數(shù)控領(lǐng)域特征,將數(shù)控系統(tǒng)所包含的各軟硬件單元解耦,不同層次的單元模塊劃分為不同粒度的功能塊(Function Block,F(xiàn)B);在將數(shù)控系統(tǒng)映射到一系列功能模塊之后,依據(jù)SOA完成數(shù)控功能的服務(wù)化封裝,進(jìn)而結(jié)合元建模技術(shù)即可實現(xiàn)面向服務(wù)的數(shù)控領(lǐng)域元模型設(shè)計。
基于前述數(shù)控領(lǐng)域元模型可實現(xiàn)不同數(shù)控功能(如邏輯控制、運動控制、人機(jī)交互等)的服務(wù)化封裝,數(shù)控系統(tǒng)設(shè)計轉(zhuǎn)化為不同數(shù)控服務(wù)的組合與編排。如圖3所示,考慮到各類數(shù)控服務(wù)對實時性、并發(fā)性的要求不同,在組合、編排過程中為精確描述各服務(wù)組件間的執(zhí)行邏輯與交互時序,采用計算模型(Models of Computation,MOC)來對服務(wù)組合語義進(jìn)行形式化描述,通過構(gòu)建層次化異構(gòu)的服務(wù)組合模型,可精確定義組合服務(wù)內(nèi)部的動態(tài)特性。在數(shù)控服務(wù)組合模型的驗證階段,從定性和定量兩個角度出發(fā),基于混合計算書邏輯(Mixed Compute Tree Logic,MCTL)來構(gòu)造安全性、活性、可調(diào)度性等需驗證的系統(tǒng)規(guī)約,利用NuSMV模型檢測工具可對各類系統(tǒng)規(guī)約進(jìn)行自動化測試,進(jìn)而驗證數(shù)控服務(wù)組合模型的正確性。
在數(shù)控系統(tǒng)設(shè)計過程中,通過模型正確性驗證的數(shù)控服務(wù)組合方案可能不止一個,如圖4所示,為了確定既滿足目標(biāo)用戶的功能與性能需求又具備最優(yōu)服務(wù)質(zhì)量的服務(wù)組合參數(shù)配置方案,需要將不同質(zhì)量屬性(如數(shù)控服務(wù)的執(zhí)行周期、優(yōu)先級等)及約束條件(如軌跡誤差、加工時間、CPU利用率等)最為決策與目標(biāo)向量構(gòu)建數(shù)控服務(wù)組合多目標(biāo)優(yōu)化模型,進(jìn)而將最優(yōu)數(shù)控服務(wù)組合參數(shù)配置方案的選擇問題轉(zhuǎn)化為在設(shè)計空間中最優(yōu)解的搜索問題。在實現(xiàn)過程中,對于多目標(biāo)優(yōu)化模型的求解應(yīng)用了NSGA-II算法,在求解過程中通過總結(jié)歸納不同Pareto最優(yōu)解對應(yīng)不同參數(shù)組合方案,可根據(jù)現(xiàn)實的應(yīng)用需求確定數(shù)控服務(wù)組合參數(shù)最佳的配置方案。
從工程實踐角度出發(fā),前述面向服務(wù)的開放式數(shù)控系統(tǒng)設(shè)計流程的實現(xiàn)需要借助各類軟件工具。本文所提方法主要用到軟件工具包括用于數(shù)控應(yīng)用需求表達(dá)的需求描述工具StarUML軟件,用于設(shè)計模型開發(fā)的建模工具GME軟件,用于支持實現(xiàn)服務(wù)組合模型正確性驗證的形式化驗證工具NuSMV軟件以及用于實現(xiàn)多目標(biāo)協(xié)同優(yōu)化的Matlab軟件。
本文以一個數(shù)控鉆頭開槽機(jī)控制系統(tǒng)設(shè)計為例,來驗證所提方法的有效性。數(shù)控鉆頭開槽機(jī)是一類面向PCB行業(yè)微型鉆頭生產(chǎn)制造的自動化專機(jī),根據(jù)本文所提的設(shè)計方法,在數(shù)控系統(tǒng)設(shè)計過程中首先根據(jù)微鉆開槽的工藝要求,利用StarUML工具完成控制需求描述,例如在譯碼模塊根據(jù)需求可由初始化子模塊、編譯器子模塊、G/M代碼解釋器子模塊以及機(jī)床數(shù)據(jù)庫子模塊組成。在數(shù)控服務(wù)建模階段,前述子模塊在GME環(huán)境中被封裝成4個組件服務(wù),根據(jù)DE(離散事件)計算模型,組合成為譯碼(指令解析)服務(wù)。為了驗證譯碼服務(wù)執(zhí)行過程的邏輯正確性,利用NuSMV軟件可對組件服務(wù)的執(zhí)行序列的可調(diào)度行進(jìn)行驗證。在參數(shù)優(yōu)化階段,利用Matlab平臺搭建多目標(biāo)優(yōu)化模型,求解前述各個組件服務(wù)的執(zhí)行周期與優(yōu)先級等參數(shù)的最優(yōu)解。經(jīng)過驗證與優(yōu)化的控制系統(tǒng)設(shè)計方案可基于代碼生成技術(shù)轉(zhuǎn)化為上下位控制程序,最后將控制程序部署到數(shù)控鉆頭開槽機(jī)物理實體中即可完成控制系統(tǒng)的設(shè)計與開發(fā)。
針對開放式智能化數(shù)控系統(tǒng)的設(shè)計需求,本文基于“控制功能即服務(wù)”的理念,提出一種面向服務(wù)的多維集成開放式數(shù)控系統(tǒng)設(shè)計方法。所提方法以服務(wù)建模、服務(wù)組合、服務(wù)驗證與優(yōu)化為設(shè)計主線,通過集成領(lǐng)域建模、形式化驗證與多目標(biāo)優(yōu)化等多個維度的實施策略,借助跨平臺的支撐工具集,建立面向服務(wù)的設(shè)計開發(fā)流程,便于針對個性化定制的市場需求快速設(shè)計開發(fā)具有良好開放性與柔性的數(shù)控系統(tǒng),有效提升數(shù)控系統(tǒng)的設(shè)計效率。