徐東,楊俊,柳龍
(工業(yè)互聯(lián)網(wǎng)創(chuàng)新中心(上海)有限公司,上海 200232)
當前化工企業(yè)信息系統(tǒng)復(fù)雜,信息化建設(shè)水平參差不齊,數(shù)據(jù)標準不一致,作為典型的制造業(yè),石油工業(yè)面臨著價格波動大、供氣壓力大、新能源不斷涌現(xiàn)等新問題。與此同時,國際市場競爭日趨激烈,環(huán)境管制面臨嚴峻挑戰(zhàn)。化工企業(yè)的車間生產(chǎn)數(shù)據(jù)采集系統(tǒng),由于手工采集的數(shù)據(jù)質(zhì)量差、動態(tài)數(shù)據(jù)難以采集,導(dǎo)致數(shù)據(jù)通信和共享成為制約其發(fā)展的瓶頸。
當前使用的基于標準語義模型和復(fù)雜事件處理的采集系統(tǒng),主要包括設(shè)備端和云服務(wù)端兩部分,其中設(shè)備端為分布式結(jié)構(gòu),通過OPC 的統(tǒng)一架構(gòu)完成數(shù)據(jù)采集[1];使用以ARM+FPGA+ENC28J60 為核心的遠程監(jiān)控數(shù)據(jù)采集系統(tǒng)體系結(jié)構(gòu),完成數(shù)據(jù)通信,通過移植和改進LWIP 協(xié)議棧,實現(xiàn)服務(wù)器對設(shè)備信息的實時采集[2]。然而,當服務(wù)器關(guān)機或電源故障導(dǎo)致數(shù)據(jù)庫不能連接時,數(shù)據(jù)就會丟失,不能保證數(shù)據(jù)的完整性。
針對上述方法存在的問題,提出基于工業(yè)互聯(lián)網(wǎng)的車間生產(chǎn)數(shù)據(jù)采集系統(tǒng)設(shè)計方案。
利用工業(yè)互聯(lián)網(wǎng)平臺,集中管理不同行業(yè)的同一生產(chǎn)設(shè)備,以數(shù)據(jù)驅(qū)動方式保證各類設(shè)備安全、穩(wěn)定、優(yōu)化運行。以產(chǎn)業(yè)互聯(lián)網(wǎng)平臺提升跨板塊的業(yè)務(wù)協(xié)同,構(gòu)建石化化工產(chǎn)業(yè)鏈生態(tài)體系[3]。設(shè)備使用在數(shù)據(jù)基礎(chǔ)上的閉環(huán)反饋,促進了關(guān)鍵設(shè)備的自主創(chuàng)新,加速了信息收集[4]。
系統(tǒng)硬件結(jié)構(gòu)框圖如圖1 所示。
圖1 系統(tǒng)硬件結(jié)構(gòu)框圖
由圖1 可知,數(shù)據(jù)采集子系統(tǒng)由OPC 客戶端和OPC 服務(wù)端兩部分組成,每個模塊包括三個子模塊[5]。數(shù)據(jù)訪問和訪問操作通過OPCDA 規(guī)范定義的接口實現(xiàn);OPC 客戶端自定義接口對象模塊是最重要的模塊,其功能是將服務(wù)器上獲取的數(shù)據(jù)傳送給實時數(shù)據(jù)庫,完成.NET 平臺提供的數(shù)據(jù)庫操作類[6];OPC服務(wù)端的對象模塊是通過連接現(xiàn)場設(shè)備模塊實現(xiàn)的,根據(jù)不同設(shè)備的驅(qū)動程度,通過OPCDA 規(guī)范對接口進行定制開發(fā)[7]。
工業(yè)互聯(lián)網(wǎng)是實現(xiàn)智能制造的重要基礎(chǔ)設(shè)施,為各產(chǎn)業(yè)要素的互聯(lián)互通提供了有力支撐。石油化工工業(yè)互聯(lián)網(wǎng)平臺體系架構(gòu)如圖2 所示。
由圖2 可知,石油化工工業(yè)互聯(lián)網(wǎng)平臺的服務(wù)體系結(jié)構(gòu)采用分布式體系結(jié)構(gòu),保證了體系的可靠性及安全性。與此同時,云計算平臺是開放的服務(wù)平臺,能夠容納大量外部信息[8]。在基礎(chǔ)框架中,使用各種引擎裝置,能夠支持多種整合技術(shù),實現(xiàn)數(shù)據(jù)歸一。平臺體系采用模塊化設(shè)計模式,能夠保證平臺體系架構(gòu)具有一定的可擴展性。
圖2 石油化工工業(yè)互聯(lián)網(wǎng)平臺體系架構(gòu)
利用STM32 嵌入式16 通道高精度AD 模擬量轉(zhuǎn)換器實現(xiàn)模數(shù)轉(zhuǎn)換,該通道所涉及的信號調(diào)理經(jīng)過放大、濾波處理后,能夠保證信號的線性度和靈敏度[9]。該系統(tǒng)主要由CAN 通信電路組成,測井儀采集的數(shù)據(jù)通過單芯電纜上傳至井內(nèi),IIC 通信用于數(shù)據(jù)存儲[10]。
使用STM32F103ZET6 型號單片機作為系統(tǒng)核心模塊,負責(zé)采集并傳輸數(shù)據(jù),其結(jié)構(gòu)如圖3 所示。
圖3 STM32F103ZET6單片機結(jié)構(gòu)示意圖
由圖3 可知,該單片機內(nèi)置RC 振蕩器,最大工作頻率是70 MHz。單片機內(nèi)包含了兩個計時器,用于統(tǒng)計多通道編碼器的編號信號[11]??偩€處存在一個同步串行的外圍接口,可使單片機與各種外設(shè)進行串行通信,以實現(xiàn)信息的高速共享[12]。
掉電采集模塊選用24C02 芯片,數(shù)據(jù)傳輸采用IIC 通信方式,聯(lián)機信號方式:數(shù)據(jù)啟動信號、數(shù)據(jù)停止信號和響應(yīng)信號。掉電采集的高低順序決定著線路上的信號模式。
掉電采集示意圖如圖4 所示。
圖4 掉電采集示意圖
由圖4 可知,在SCL 信號為高信號的情況下,SDA 電平從高到低,此時傳輸?shù)氖菙?shù)據(jù)啟動信號。在SCL 信號為高信號的情況下,SDA 電平從低到高,表明數(shù)據(jù)已停止傳輸[13]。采集數(shù)據(jù)的芯片發(fā)出低脈沖響應(yīng),表示已經(jīng)接收到數(shù)據(jù),反之,可以檢查數(shù)據(jù)是否輸入到存儲區(qū)域。
若程序不使用任何實時操作系統(tǒng),則程序按順序執(zhí)行任務(wù)。在采集任務(wù)時,要計算100 份數(shù)據(jù)的平均值,雖然保證了數(shù)據(jù)的真實性,但是每一次采集都會有一定延遲[14]。因此,在數(shù)據(jù)采集過程中,需要管理任務(wù)線程和任務(wù)優(yōu)先級[15]。
USOS III 操作系統(tǒng)通過人為設(shè)置所有采集任務(wù)和通信任務(wù)的優(yōu)先級,使任務(wù)處于未完成狀態(tài)。在采集數(shù)據(jù)期間,系統(tǒng)處于延遲狀態(tài),CPU 的權(quán)限從下一個任務(wù)開始計時。采用分片式任務(wù)調(diào)度方法,使采集程序和通信程序的任務(wù)在同一優(yōu)先級上運行。把采集周期中的時間分為采集時間和等待時間,在等待時間釋放CPU,負責(zé)其他采集或通信任務(wù)[16]。
在一個采集周期結(jié)束時,任務(wù)將暫停。在三種就緒任務(wù)中,任務(wù)調(diào)度算法示意圖如圖5 所示。
圖5 任務(wù)調(diào)度算法示意圖
由圖5 可知,Taskl、Task2、Task3 是三個調(diào)度任務(wù),如果第一個任務(wù)的執(zhí)行處于延遲狀態(tài),則啟動第二個任務(wù)。當?shù)诙€任務(wù)進入延遲狀態(tài)并且第一個任務(wù)的工作狀態(tài)標志沒有響應(yīng)時,執(zhí)行第三個任務(wù)。在完成第三個任務(wù)后,第一個任務(wù)的工作狀態(tài)會響應(yīng)并且開始第一個任務(wù)。通過這種任務(wù)調(diào)度算法,可以在一個周期內(nèi)執(zhí)行,從而提高了任務(wù)的調(diào)度效率。
在6 個任務(wù)中,存在5 個采集任務(wù)和一個通信任務(wù),每個采集任務(wù)所耗費的時間為t1,采集任務(wù)周期為T,通信時間為t2,未加入任何操作任務(wù)時,采集時間計算公式為:
式中,表示平均采集時間。
為了保證數(shù)據(jù)采集的準確性,在系統(tǒng)中加入操作任務(wù)后,會將其他任務(wù)在延遲等待時間內(nèi)執(zhí)行。因此,延時時間計算公式為:
利用時間互補的方法,在第一個任務(wù)期間,不需要做其他的工作,在任務(wù)1 的延遲時間內(nèi),所有的任務(wù)都被執(zhí)行。所以,當使用系統(tǒng)執(zhí)行采集任務(wù)時,當最后一次采集任務(wù)完成后,將會和第一次采集的延遲時間一致,然后進入第二次采集周期。在加入操作任務(wù)后,采集速度明顯加快,整個采集任務(wù)執(zhí)行一遍所需的時間與通信時間一致,從而提高了采集效率。
調(diào)試平臺結(jié)構(gòu)如圖6 所示。
圖6 調(diào)試平臺結(jié)構(gòu)
由圖6 可知,生產(chǎn)數(shù)據(jù)來自車間,以關(guān)鍵數(shù)據(jù)為依據(jù)進行數(shù)據(jù)整定,使調(diào)試過程中關(guān)鍵數(shù)據(jù)的數(shù)值能夠保持最大程度的可信度。
系統(tǒng)調(diào)試數(shù)據(jù)指的是基礎(chǔ)數(shù)據(jù),包括石油堆存量、堆存費用、出庫量、出庫費用、入庫量及入庫費用,系統(tǒng)調(diào)試數(shù)據(jù)展示情況如表1 所示。
以表1 所示的系統(tǒng)調(diào)試數(shù)據(jù)為依據(jù),進行調(diào)試結(jié)果分析。
表1 系統(tǒng)調(diào)試數(shù)據(jù)展示
分別使用基于標準語義模型和復(fù)雜事件處理的采集系統(tǒng)、基于ARM 的遠程監(jiān)控數(shù)據(jù)采集系統(tǒng)和基于工業(yè)互聯(lián)網(wǎng)的車間生產(chǎn)數(shù)據(jù)采集系統(tǒng),對比分析調(diào)試數(shù)據(jù)采集結(jié)果,如表2-4 所示。
表2 三種系統(tǒng)1月份調(diào)試數(shù)據(jù)采集結(jié)果對比
由表2 可知,對于1 月份調(diào)試數(shù)據(jù),使用前兩種方法采集到的數(shù)據(jù)與實際數(shù)據(jù)存在較大誤差,而使用最后一種方法采集的數(shù)據(jù)與實際數(shù)據(jù)僅存在1 元或1 噸的誤差;由表3 可知,對于2 月份調(diào)試數(shù)據(jù),使用前兩種方法與實際數(shù)據(jù)最大誤差分別為142 噸和445 元,而使用最后一種方法采集的數(shù)據(jù)與實際數(shù)據(jù)存在92 元的最大誤差;由表4 可知,對于3 月份的調(diào)試數(shù)據(jù),使用前兩種方法與實際數(shù)據(jù)最大誤差分別為244 噸和132 元,而使用最后一種方法采集的數(shù)據(jù)與實際數(shù)據(jù)存在45 元的最大誤差。
表3 三種系統(tǒng)2月份調(diào)試數(shù)據(jù)采集結(jié)果對比
表4 三種系統(tǒng)3月份調(diào)試數(shù)據(jù)采集結(jié)果對比
為了進一步分析數(shù)據(jù)采集周期調(diào)試結(jié)果,對三種系統(tǒng)的采集周期進行了比較和分析,比較結(jié)果如圖7 所示。
圖7 三種系統(tǒng)采集周期調(diào)試結(jié)果對比
由圖7 可知,使用基于工業(yè)互聯(lián)網(wǎng)的車間生產(chǎn)數(shù)據(jù)采集系統(tǒng)采集周期調(diào)節(jié)結(jié)果明顯比另外兩種時間短,最短采集周期為9 ms,說明使用該系統(tǒng)可在短時間內(nèi)完整采集石油車間生產(chǎn)數(shù)據(jù)。
該文設(shè)計面向工業(yè)互聯(lián)網(wǎng)的車間生產(chǎn)數(shù)據(jù)采集系統(tǒng),構(gòu)建石油石化行業(yè)大數(shù)據(jù)存儲、集成、分析與管理的開發(fā)環(huán)境。以工業(yè)互聯(lián)網(wǎng)為平臺,為中小型化工企業(yè)構(gòu)建用于工藝優(yōu)化、設(shè)備優(yōu)化,致力于化工制造的網(wǎng)絡(luò)平臺,為中小型化工企業(yè)提供多種應(yīng)用。系統(tǒng)調(diào)試結(jié)果表明,該系統(tǒng)的采集周期最短為9 ms,能夠改善傳統(tǒng)系統(tǒng)采集數(shù)據(jù)不完整的情況。