方 旭,顧 毅,楊志軍
(無錫雪浪數(shù)制科技有限公司,浙江 無錫 214121)
航空工業(yè)是體現(xiàn)國家綜合國力和國防水平的戰(zhàn)略性高科技產(chǎn)業(yè),具有技術(shù)密集、高度綜合的特點(diǎn),航空工業(yè)的發(fā)展對國家的基礎(chǔ)工業(yè)體系和科學(xué)技術(shù)發(fā)展具有巨大的產(chǎn)業(yè)輻射效應(yīng)[1]。航空企業(yè)生產(chǎn)類型為典型的離散制造過程,需要對生產(chǎn)線按照工藝對象進(jìn)行專業(yè)化布置,使物流管理成為連接產(chǎn)品研制供應(yīng)鏈和生產(chǎn)制造各部門的關(guān)鍵環(huán)節(jié)。據(jù)統(tǒng)計(jì),產(chǎn)品制造過程中,90%左右的時(shí)間用在存儲、等待加工和運(yùn)輸?shù)却任锪鲿r(shí)間,物流費(fèi)用占總本的50%[2]。因此,建立科學(xué)的物流管理體系成為降低生產(chǎn)成本、縮短研制周期、實(shí)現(xiàn)航空工業(yè)快速發(fā)展的關(guān)鍵問題。
國內(nèi)航空制造企業(yè)物流信息化還處于初級階段,企業(yè)內(nèi)部不同設(shè)備、不同工位、不同車間存在數(shù)據(jù)孤島的現(xiàn)象。信息化水平低會(huì)導(dǎo)致信息無法及時(shí)傳遞,信息與物流不對等,造成物料等待、倉庫積壓等問題,嚴(yán)重制約物流效率的提升。由于業(yè)務(wù)流程未完全實(shí)現(xiàn)信息化貫通,不利于各系統(tǒng)各部門之間的數(shù)據(jù)傳遞和交換,從而無法保證數(shù)據(jù)傳輸?shù)耐暾?、?zhǔn)確性和及時(shí)性[3]。通過 SAP、ERP、PDM、OA、CAPP 等眾多系統(tǒng)的集成,飛機(jī)的研發(fā)、制造、工藝、物流、質(zhì)量等方面信息化技術(shù)得到了長足發(fā)展,但各種信息化軟件的輸入輸出數(shù)據(jù)格式屬性不一致,軟件之間的鏈路尚未打通,信息孤島尚未被消除,對質(zhì)量信息化建設(shè)極為不利[4]。
目前對智能化的物流系統(tǒng)研究更多關(guān)注體系的建立[5]及系統(tǒng)性問題[6];在具體的軟件實(shí)施層面,較多是基于現(xiàn)有國外商業(yè)軟件的應(yīng)用性研究[7-8]。然而在航空發(fā)動(dòng)機(jī)的研發(fā)設(shè)計(jì)、加工制造工藝等領(lǐng)域已進(jìn)行了大量的數(shù)據(jù)系統(tǒng)開發(fā)[9]、數(shù)據(jù)可視化[10]、數(shù)據(jù)管理[11]等相關(guān)研究,為飛機(jī)制造的國產(chǎn)化提供了極大的支持。為了實(shí)現(xiàn)全流程的信息化與智能化,飛機(jī)本體復(fù)雜系統(tǒng)的數(shù)字化制造變得越來越緊迫。
面對民用航空制造的復(fù)雜物流系統(tǒng),應(yīng)考慮大飛機(jī)制造系統(tǒng)多智能體、多物料、多物流設(shè)備等場景需求,提出結(jié)合多源和多類型數(shù)據(jù)接入、數(shù)據(jù)開發(fā)、數(shù)據(jù)治理和數(shù)據(jù)應(yīng)用的航空制造物流系統(tǒng)數(shù)據(jù)資產(chǎn)管理平臺(以下簡稱管控平臺)。通過對民用航空制造物流系統(tǒng)人、機(jī)、料數(shù)據(jù)的全面采集、清洗、處理、存儲、打通,為民用航空制造物流場景提供大數(shù)據(jù)與人工智能技術(shù)支持,為民用飛機(jī)制造系統(tǒng)的復(fù)雜物流智能綜合協(xié)同管控提供技術(shù)支撐,為軟件的國產(chǎn)化及自主可控提供借鑒。
民機(jī)制造系統(tǒng)的數(shù)據(jù)主要分為實(shí)時(shí)數(shù)據(jù)和離線數(shù)據(jù)。管控平臺的一大特色在于可實(shí)現(xiàn)多源異構(gòu)數(shù)據(jù)的接入。在實(shí)際的飛機(jī)制造過程中,存在實(shí)時(shí)加工過程數(shù)據(jù)、非實(shí)時(shí)結(jié)構(gòu)化數(shù)據(jù)、過程歷史數(shù)據(jù)等[12]。為滿足高實(shí)時(shí)性的需求,實(shí)時(shí)加工數(shù)據(jù)一般須通過實(shí)時(shí)內(nèi)存數(shù)據(jù)庫進(jìn)行管理,結(jié)構(gòu)化數(shù)據(jù)可采用關(guān)系型數(shù)據(jù)庫進(jìn)行存儲管理。過程歷史數(shù)據(jù)具有數(shù)據(jù)量大、數(shù)據(jù)項(xiàng)不確定的特點(diǎn),不適合用關(guān)系數(shù)據(jù)庫處理。因此,多源異構(gòu)數(shù)據(jù)在實(shí)時(shí)性、數(shù)據(jù)量、存取速度和數(shù)據(jù)利用時(shí)效性等方面都存在差異。對多源異構(gòu)數(shù)據(jù)的處理需結(jié)合多種數(shù)據(jù)存儲與管理方法,滿足多元化數(shù)據(jù)管理需求。
2.1.1 離線非實(shí)時(shí)數(shù)據(jù)的采集
為了實(shí)現(xiàn)離線數(shù)據(jù)的接入,管控平臺集成的離線同步方案使用開源框架DataX,并采用定時(shí)同步機(jī)制獲取數(shù)據(jù)。DataX框架支持包括 MySQL、Oracle、SqlServer、Postgre、HDFS、Hive、ADS、HBase、TableStore(OTS)、MaxCompute(ODPS)、DRDS、SAPHANA等各種異構(gòu)數(shù)據(jù)源之間高效數(shù)據(jù)同步。如圖1所示,DataX將復(fù)雜的網(wǎng)狀結(jié)構(gòu)同步鏈路轉(zhuǎn)化為星型數(shù)據(jù)鏈路,DataX作為中間傳輸載體負(fù)責(zé)各種數(shù)據(jù)源的連接。當(dāng)需要接入新的數(shù)據(jù)源時(shí),只需要將此數(shù)據(jù)源對接到DataX,便能實(shí)現(xiàn)與已有的數(shù)據(jù)源的無縫同步。
圖1 數(shù)據(jù)同步鏈路方法的對比
具體而言,DataX采用Framework+plugin架構(gòu)構(gòu)建。如圖2所示,DataX在實(shí)現(xiàn)數(shù)據(jù)同步的過程中,將數(shù)據(jù)源的讀取和寫入接口抽象為Reader/Writer模塊。其中Reader為數(shù)據(jù)采集模塊,負(fù)責(zé)采集來自于數(shù)據(jù)源的數(shù)據(jù),并將數(shù)據(jù)發(fā)送給Framework。Writer為數(shù)據(jù)寫入模塊,負(fù)責(zé)不斷向Framework提取數(shù)據(jù),并將數(shù)據(jù)寫入到目的端。Framework連接Reader和Writer模塊,形成兩者之間的數(shù)據(jù)傳輸通道,用于處理數(shù)據(jù)的緩沖、流控、并發(fā)及轉(zhuǎn)換等核心技術(shù)問題。
通過基于DataX框架的離線數(shù)據(jù)采集方案包括并發(fā)、記錄流、字節(jié)流三種流控模式,可任意控制作業(yè)的速度,通過一定的控制算法可達(dá)到最佳的同步速度。該方案還具有較強(qiáng)的同步性能。具體而言,每一種讀插件都有一種或多種切分策略,從而將作業(yè)合理切分成多個(gè)Task并行執(zhí)行,單機(jī)多線程執(zhí)行模型可以讓DataX框架的執(zhí)行速度隨并發(fā)成線性增長。除此之外,基于DataX框架還具有如下優(yōu)點(diǎn):①可靠的數(shù)據(jù)質(zhì)量監(jiān)控,能夠?qū)崿F(xiàn)讓數(shù)據(jù)完整無損的由輸入端傳輸?shù)侥康亩?。②豐富的數(shù)據(jù)轉(zhuǎn)換功能。③精準(zhǔn)的速度控制。④健壯的容錯(cuò)機(jī)制,可以很方便地實(shí)現(xiàn)多層次、局部或者全局的測試及重試。
2.1.2 實(shí)時(shí)數(shù)據(jù)的采集
實(shí)時(shí)數(shù)據(jù)可以通過特殊設(shè)計(jì)的API實(shí)時(shí)獲取。如圖2所示,少量實(shí)時(shí)數(shù)據(jù)可直接通過Websocket同步獲取。對于現(xiàn)場已部署的第三方支持實(shí)時(shí)數(shù)據(jù)交換的應(yīng)用程序,如果數(shù)據(jù)量適當(dāng)且對響應(yīng)性要求較高,推薦采用Websocket方案。Websocket方案尤其適用于噴碼系統(tǒng)、AGV實(shí)時(shí)定位、圖片或視頻傳輸?shù)葢?yīng)用場合。
圖2 基于消息隊(duì)列的數(shù)據(jù)湖同步
Websocket連接建立后,后續(xù)數(shù)據(jù)會(huì)以幀序列的形式雙向傳輸。在客戶端斷開Webscket連接或Server端中斷連接前,不需要客戶端和服務(wù)端重新發(fā)起連接請求。在較多設(shè)備進(jìn)行并發(fā)交互、負(fù)載流量大的情況下,采用WebSocket連接可極大地節(jié)省網(wǎng)絡(luò)帶寬資源消耗??蛻舳税l(fā)送和接受消息是在同一個(gè)持久連接上發(fā)起,實(shí)時(shí)性優(yōu)勢明顯。各種語言都有成熟且配套的針對WebSocket連接的解決方案,利于低代碼化的實(shí)現(xiàn)。
對于大批量的實(shí)時(shí)數(shù)據(jù),可通過消息隊(duì)列同步實(shí)現(xiàn)。數(shù)據(jù)湖中的實(shí)時(shí)數(shù)據(jù)和智能物流管控通過一個(gè)消息服務(wù)器進(jìn)行數(shù)據(jù)交換。數(shù)據(jù)湖發(fā)送消息到消息服務(wù)器,如果智能物流管控訂閱數(shù)據(jù)湖中發(fā)送過來的消息,消息服務(wù)器會(huì)將消息推送給智能物流管控,雙方約定消息格式即可。
基于消息隊(duì)列的實(shí)時(shí)數(shù)據(jù)對接方法,不論用什么語言系統(tǒng)開發(fā),均采用統(tǒng)一的消息格式,可更方便地進(jìn)行解耦。消息隊(duì)列也會(huì)根據(jù)不同的需要將數(shù)據(jù)進(jìn)行持久化,保證數(shù)據(jù)在投遞的過程中不會(huì)丟失,具有更高的可靠性。來自一個(gè)子模塊的數(shù)據(jù)可以準(zhǔn)確地送達(dá)到另一個(gè)模塊,等確定被使用或消費(fèi)時(shí),另一子模塊會(huì)進(jìn)行回復(fù),通過這樣的“握手”及應(yīng)答操作,極大提高了系統(tǒng)的可靠性。在數(shù)據(jù)的傳輸中,由于JMS定義了規(guī)范,有很多成熟的開源消息控件可供選擇?;谙㈥?duì)列的實(shí)時(shí)數(shù)據(jù)對接的交互方案,標(biāo)準(zhǔn)及接口均較為通用,來自其他軟件的相應(yīng)接口也可以非常方便的接入。本論文的研究中運(yùn)用廣泛使用的Kafka協(xié)議及接口,除此之外還可使用RabbitMQ、RocketMQ等接口組件。消息隊(duì)列的部署方式比較靈活,可以采取同步、異步等方式進(jìn)行處理,極大地提高了平臺的適用范圍和應(yīng)用場景。
多源異構(gòu)數(shù)據(jù)的采集與集成接口模塊通過建立實(shí)時(shí)和非實(shí)時(shí)的數(shù)據(jù)接入,實(shí)現(xiàn)信息化貫通,利于各系統(tǒng)、各部門之間的數(shù)據(jù)傳遞和交換,保證了數(shù)據(jù)傳輸?shù)耐暾?、?zhǔn)確性和及時(shí)性。
民機(jī)制造系統(tǒng)物流場景數(shù)據(jù)的數(shù)據(jù)開發(fā)子系統(tǒng)運(yùn)用ETL算法,可實(shí)現(xiàn)全刪全插、追加、更新、歷史拉鏈等數(shù)據(jù)操作。
全刪全插算法的數(shù)據(jù)處理只保存當(dāng)前最新的全量數(shù)據(jù),不保留過往歷史信息,要求源表為全量數(shù)據(jù)表,具體通過清空目標(biāo)表和源表全量插入2個(gè)步驟實(shí)現(xiàn)。
追加算法將事件類流水?dāng)?shù)據(jù)寫入目標(biāo)表,如員工打卡記錄,要求源表為增量數(shù)據(jù)表,具體可通過源表直接插入目標(biāo)表實(shí)現(xiàn)。
更新算法適用于對歷史信息變化無需進(jìn)行跟蹤保留的情況,只保留其最新狀態(tài)且數(shù)據(jù)量有一定規(guī)模。具體通過3個(gè)步驟實(shí)現(xiàn):①PK主鍵對比。②目標(biāo)表和源表PK一致時(shí)更新PK屬性。③源表存在但目標(biāo)表不存在的PK,記錄直接插入。
歷史拉鏈算法用于記錄數(shù)據(jù)的歷史變化信息。在目標(biāo)表設(shè)計(jì)輔助字段來標(biāo)識數(shù)據(jù)信息生效的起止時(shí)間,該算法相比其余算法對數(shù)據(jù)的處理最精細(xì),代價(jià)也最大。具體通過3個(gè)步驟實(shí)現(xiàn):①PK主鍵對比。②目標(biāo)表中當(dāng)前有效記錄與源數(shù)據(jù)全字段比對,有差異的數(shù)據(jù)集做閉鏈操作。③取源數(shù)據(jù)與目標(biāo)表當(dāng)前有效記錄有差異的數(shù)據(jù)集以及源數(shù)據(jù)在目標(biāo)表不存在的記錄作為當(dāng)前有效記錄插入目標(biāo)表。
數(shù)據(jù)開發(fā)子系統(tǒng)對原始數(shù)據(jù)進(jìn)行進(jìn)一步處理,為智能運(yùn)維及管理系統(tǒng)提供準(zhǔn)確的源數(shù)據(jù)。同時(shí),數(shù)據(jù)開發(fā)子系統(tǒng)對數(shù)據(jù)格式及屬性進(jìn)行統(tǒng)一,打通不同專業(yè)應(yīng)用軟件之間的數(shù)據(jù)孤島。
民機(jī)制造系統(tǒng)物流場景數(shù)據(jù)的智能運(yùn)維與管理子系統(tǒng)主要分為數(shù)據(jù)質(zhì)量監(jiān)控模塊、結(jié)果查看瀏覽器兩個(gè)組成部分。
2.3.1 數(shù)據(jù)質(zhì)量監(jiān)控模塊
數(shù)據(jù)質(zhì)量監(jiān)控模塊支持多種異構(gòu)數(shù)據(jù)源的質(zhì)量校驗(yàn)、通知及管理服務(wù)。數(shù)據(jù)質(zhì)量監(jiān)控可全程監(jiān)控加工流水線的數(shù)據(jù),如表1所示的質(zhì)量規(guī)則,及時(shí)發(fā)現(xiàn)問題,通過強(qiáng)弱報(bào)警通知數(shù)據(jù)開發(fā)人員及時(shí)處理問題。數(shù)據(jù)質(zhì)量以數(shù)據(jù)集為監(jiān)控對象,當(dāng)離線數(shù)據(jù)發(fā)生變化時(shí),數(shù)據(jù)質(zhì)量監(jiān)控模塊會(huì)對數(shù)據(jù)進(jìn)行校驗(yàn),并阻塞生產(chǎn)鏈路,以避免問題數(shù)據(jù)污染擴(kuò)散。數(shù)據(jù)質(zhì)量監(jiān)控提供了歷史校驗(yàn)結(jié)果的管理,以便對數(shù)據(jù)質(zhì)量進(jìn)行分析和定級。
表1 規(guī)則管理表
2.3.2 結(jié)果查看瀏覽器
結(jié)果查看瀏覽器支持查看數(shù)據(jù)質(zhì)量監(jiān)控任務(wù)的運(yùn)行記錄及結(jié)果詳情。結(jié)果表中的每行記錄對應(yīng)一個(gè)數(shù)據(jù)質(zhì)量監(jiān)控任務(wù),由表名稱、表描述、任務(wù)頻率、任務(wù)狀態(tài)、任務(wù)修改時(shí)間、規(guī)則數(shù)、間隔數(shù)及操作等幾個(gè)屬性描述。其中操作屬性可對任務(wù)規(guī)則進(jìn)行配置,并對任務(wù)詳情及任務(wù)結(jié)果進(jìn)行進(jìn)一步查看。通過結(jié)果查看瀏覽器對數(shù)據(jù)質(zhì)量監(jiān)控設(shè)置規(guī)則,并實(shí)現(xiàn)了結(jié)果的可視化。
數(shù)據(jù)的智能運(yùn)維與管理子系統(tǒng)作為管控平臺的功能輸出模塊,提供了便捷、可操作性強(qiáng)的人機(jī)接口。通過人機(jī)交互和實(shí)時(shí)數(shù)據(jù)采集,從海量的生產(chǎn)數(shù)據(jù)中,在數(shù)據(jù)開發(fā)子系統(tǒng)的支持下獲取并確定唯一性強(qiáng)、血緣關(guān)系清晰、數(shù)據(jù)模型規(guī)范的數(shù)據(jù);基于此,對飛機(jī)制造物流過程的業(yè)務(wù)流數(shù)據(jù)、物料流數(shù)據(jù)和決策信息實(shí)現(xiàn)統(tǒng)一的管控和調(diào)度,從而促進(jìn)企業(yè)的精細(xì)化管理,最大限度降低管理成本、提高產(chǎn)品質(zhì)量、提高生產(chǎn)效率。
本文針對民用航空制造物流系統(tǒng)信息化程度低的問題,提出了初步的數(shù)字化管理與協(xié)同平臺。通過多源異構(gòu)數(shù)據(jù)的采集與集成子系統(tǒng)實(shí)現(xiàn)生產(chǎn)過程的實(shí)時(shí)數(shù)據(jù)及非實(shí)時(shí)數(shù)據(jù)(包括加工制造數(shù)據(jù)及流程管理數(shù)據(jù))的準(zhǔn)確采集;原始數(shù)據(jù)通過數(shù)據(jù)開發(fā)子系統(tǒng)的處理實(shí)現(xiàn)數(shù)據(jù)清洗、處理及存儲,數(shù)據(jù)格式得到統(tǒng)一,從而進(jìn)一步打通不同流程及系統(tǒng)間的數(shù)據(jù)孤島。經(jīng)過處理的高質(zhì)量數(shù)據(jù)一部分進(jìn)入到數(shù)據(jù)的智能運(yùn)維與管理子系統(tǒng),實(shí)現(xiàn)了基于數(shù)據(jù)的質(zhì)量管理及結(jié)果展示。本文的研究成果可對航空制造企業(yè)的數(shù)字化及信息化提供技術(shù)支持,為制造流程物流管理的自動(dòng)化及智能化提供支撐。