李方健,李廣鵬,魏毅,溫宜明
(1. 機械工業(yè)儀器儀表綜合技術經(jīng)濟研究所,北京 100055;2. 華為數(shù)字技術有限公司,北京 100095;3. 寰球工程有限公司 北京分公司,北京 100012;4. 康吉森自動化科技有限公司,浙江 杭州 310012)
從20世紀80年代開始,在國內(nèi)外自動化領域,特別是在流程工業(yè)領域基于數(shù)字化技術和現(xiàn)場總線的儀器儀表逐漸開始普及。相比傳統(tǒng)儀表,基于數(shù)字化技術和現(xiàn)場總線技術的儀表具有更強大的信息交互能力,在通信、診斷、管理等功能方面比模擬儀表有較大的提升。目前使用較為廣泛的技術為基金會現(xiàn)場總線(FF)、Profibus PA、HART等[1]。用于流程工業(yè)的這幾種現(xiàn)場總線技術的通信速率較低,主要完成周期性測量控制功能和有限管理功能。隨著智能工廠的發(fā)展,總線型儀表也逐漸顯現(xiàn)出通信速率慢、可靠性不強和安裝維護復雜的缺點。隨著單對線以太網(wǎng)(SPE)通信技術的發(fā)展,技術上逐漸具備了將已經(jīng)在信息技術領域廣泛應用的IP技術引入儀表的前提條件。儀表的以太IP化將大幅提高儀表數(shù)據(jù)傳輸速率和可靠性,完成運營技術(OT)與IT的信息融通,實現(xiàn)“IP一網(wǎng)到底”。
本文面向流程工業(yè),特別是以石化行業(yè)為背景,以儀器儀表面臨的問題和智能工廠新需求為導向,提出一種以太IP化儀表的體系架構。本文研究了以太IP化儀表架構、資源受限條件下儀表通信卡的硬件設計方案和軟件框架,并搭建了測試驗證系統(tǒng)。該系統(tǒng)驗證了以太IP化儀表的可行性與先進性,推動傳統(tǒng)儀表向網(wǎng)絡化、智能化的方向發(fā)展,將滿足流程工業(yè)智能工廠的使用需求。
該架構主要具有單對線以太網(wǎng)、物聯(lián)IP協(xié)議棧、Modbus TCP/OPC UA等通信功能。壓力變送器樣機基于傳統(tǒng)壓力變送器,通過增加具有單對線以太網(wǎng)接口和IP協(xié)議棧的通信卡,實現(xiàn)傳統(tǒng)壓力變送器的以太IP化數(shù)據(jù)傳輸能力。以太IP化壓力變送器樣機通信卡主要功能見表1所列,硬件架構如圖1所示。
圖1 以太IP化壓力變送器樣機硬件架構示意
表1 以太IP化壓力變送器樣機通信卡功能設計
圖1中,傳感器模塊由電容式傳感器和電容信號處理模組構成,實現(xiàn)壓力的測量并通過模擬量輸出。AD轉換及處理卡負責本地傳感器測量信號轉換,以及與IP化通信卡的數(shù)據(jù)交換。AD轉換模塊所采集到的壓力信號,在MCU內(nèi)部進行進一步的處理,同時該卡還實現(xiàn)了本地的LCD液晶顯示,按鍵修改組態(tài)等功能。IP化通信卡負責實現(xiàn)SPE接口、物聯(lián)IP協(xié)議棧、Modbus TCP從站、OPC UA服務器等功能,并將信息傳輸?shù)骄W(wǎng)絡接口。上位機監(jiān)控系統(tǒng)可以通過網(wǎng)絡遠程獲取壓力變送器的過程數(shù)據(jù)和管理配置參數(shù)。
本文研究內(nèi)容聚焦在IP化通信卡的架構設計、實現(xiàn)與驗證,通信卡架構主要由4層構成,分別是硬件層、操作系統(tǒng)層、網(wǎng)絡層和應用層。IP化通信卡架構如圖2所示。
圖2 IP化通信卡架構示意
IP通信卡硬件層主要由MCU和單對線以太網(wǎng)PHY芯片構成,資源可以滿足OPC UA和Modbus TCP協(xié)議通信的需求。其中,PHY芯片符合IEEE std 802.3cg: 2019,該標準用于10 Mibit/s的通信以及通過一對平衡導體進行的功率傳輸。該標準規(guī)定,單對對絞銅線線芯電纜可同時支持數(shù)據(jù)通信和供電,因此硬件設計采用該標準可節(jié)省大量成本。
該硬件設計方案是為流程工業(yè)現(xiàn)場儀表傳輸場景而量身定制的,為流程工業(yè)儀器儀表IP化提供了必要的基礎。SPE是工業(yè)數(shù)據(jù)傳輸?shù)拇筅厔葜?它的目的不僅是定義新的更高的傳輸速率或更長的距離,也是為了形成標準化框架,以減少布線工作量。
SPE相關標準大致分為三類[4]: IEEE std 802.3 cg: 2019, IEEE std 802.3 bw: 2015 IEEEStandardforEthernetamendment1:physicallayerspecificationsandmanagementparametersfor100 Mb/soperationoverasinglebalancedtwisedpaircable(100 BASE-T1)[5], IEEE std 802.3 bp: 2016 IEEEStandardforEthernetamendment4:physicallayerspecificationsandmanagementparametersfor1 Gb/soperationoverasingletwisted-paircoppercable[6]。
在上述SPE標準基礎上,在流程工業(yè)用戶的推動下,工業(yè)自動化相關標準化組織和大型公司聯(lián)合研發(fā)和推出了以太網(wǎng)APL技術。APL是加固的、二線制、回路供電的以太網(wǎng)物理層,采用IEEE std 802.3cg協(xié)議10BASE-T1L[7]。運用APL技術,現(xiàn)場儀表設備可以直接與以太網(wǎng)相連。APL技術的出現(xiàn),為流程工業(yè)數(shù)字化轉型提供了新動力。
IP化通信卡處理器采用的STM32F429芯片配有以太網(wǎng)MAC接口,連接外部PHY芯片即可進行網(wǎng)絡通信。PHY芯片功耗低、體積小、速度快,支持RMII接口與MAC接口連接。MCU通過RMII接口與外部PHY芯片連接[8]。
該樣機所使用的PHY芯片未提供對應的輕量級操作系統(tǒng)的驅動程序,因此需要將Linux版本的驅動程序移植到目標操作系統(tǒng)中。輕量級操作系統(tǒng)中driver目錄下主要的驅動程序源碼為driver.c和driver.h。它們本身不提供具體硬件的驅動方法,只是一種通過標準的函數(shù)指針接口來調用具體硬件驅動函數(shù)的軟件框架,是驅動管理者,不是驅動本身,不管理具體硬件。與大多數(shù)驅動管理方式類似,driver框架通過定義一個包含管理、注冊、尋找等元素的結構體los_driv_op_t,實現(xiàn)對硬件驅動的管理。driver管理驅動映射關系如圖3所示。
圖3 driver管理驅動映射關系示意
硬件PHY芯片驅動的實現(xiàn)程序主要包括的函數(shù)有: 驅動啟動函數(shù)、芯片打開函數(shù)、芯片關閉函數(shù)、讀數(shù)據(jù)函數(shù)、寫數(shù)據(jù)函數(shù)等,通過以上函數(shù)可實現(xiàn)對目標SPE芯片的寄存器操作,通過寄存器操作可實現(xiàn)與目標芯片的數(shù)據(jù)交換。
IP化通信卡的操作系統(tǒng)層采用輕量級實時操作系統(tǒng),實現(xiàn)上層應用與硬件的解耦,不僅能大幅降低設備布置及維護成本,還能縮短開發(fā)周期。該操作系統(tǒng)包括內(nèi)核和開發(fā)工具包兩部分。其中,內(nèi)核是操作系統(tǒng)基礎核心部件,包括任務管理、內(nèi)存管理、時間管理、通信機制、中斷管理、隊列管理、事件管理和定時器等基礎組件,內(nèi)核可以單獨運行。內(nèi)核容量非常小,基礎內(nèi)核容量可以裁剪至不到10 KiB,具有高實時性、高穩(wěn)定性、低功耗等特點,并且支持靜態(tài)裁剪功能。而開發(fā)工具包包括端云互通組件、FOTA、JS引擎、傳感器框架等內(nèi)容[9]。
IP化通信卡軟件包括主程序和中斷程序。主程序符合OPC UA及Modbus TCP規(guī)范,負責與客戶端通信實現(xiàn)數(shù)據(jù)交互,用戶可監(jiān)控和配置儀表。主程序主要由任務分配引擎、硬件驅動程序、Modbus TCP Slave程序、OPC UA Server程序等組成。任務分配引擎以10 ms的定時器中斷為時間基準,進行任務的執(zhí)行分配,然后將對應數(shù)據(jù)綜合處理后,將數(shù)據(jù)映射到工業(yè)通信協(xié)議中。通過實現(xiàn)物聯(lián)IP協(xié)議棧及相關網(wǎng)絡驅動,實現(xiàn)網(wǎng)絡通信功能,通過OPC UA協(xié)議棧實現(xiàn)OPC UA服務器功能,支持安全機制、服務發(fā)現(xiàn)、數(shù)據(jù)屬性讀寫、數(shù)據(jù)監(jiān)視、瀏覽等功能,同時依據(jù)相關建模理論,建立適用于流程工業(yè)的壓力變送器信息模型并映射到地址空間。中斷程序實現(xiàn)與模數(shù)轉換卡的通信。軟件運行流程如圖4所示[10]。
圖4 軟件運行流程示意
客戶機與服務器間的完整Modbus通信過程[11]如圖5所示??蛻魴C首先與服務器建立連接,之后向服務器發(fā)送3個Modbus讀數(shù)據(jù)請求,各請求可以并發(fā)發(fā)出而不需要等待響應后順序執(zhí)行。在收到所有的響應后,客戶機可以正常地關閉連接,也可以維持長連接,等待若干時間后直接開始下一周期的Modbus數(shù)據(jù)請求??紤]到IP化儀表數(shù)據(jù)更新的實時性,服務器在收到數(shù)據(jù)后在毫秒級內(nèi)應答客戶端數(shù)據(jù)請求。
測試驗證環(huán)節(jié)主要是實現(xiàn)對新型IP化壓力變送器樣機的功能驗證,在工業(yè)生產(chǎn)環(huán)境中,儀器儀表不能獨立成系統(tǒng),需要與工業(yè)控制器配合才能實現(xiàn)完整的功能。測試裝置參考了文獻[12]提出的SPE IP儀表控制系統(tǒng)架構,集成測試驗證系統(tǒng)以DCS作為核心控制器,采用儀表管理軟件對工業(yè)儀表管理功能進行集成測試驗證,通過以太網(wǎng)交換機連接各儀表。系統(tǒng)集成測試驗證原理如圖6所示。
圖6 系統(tǒng)集成測試驗證原理示意
驗證目的是將符合OPC UA協(xié)議的壓力變送器接入一個典型控制系統(tǒng),實現(xiàn)互聯(lián)互通,解決符合Modbus TCP和OPC UA協(xié)議的儀表集成到控制系統(tǒng)的問題。通過構建驗證環(huán)境,實現(xiàn)了DCS與壓力變送器的控制和通信,DCS的控制指令和儀表過程數(shù)據(jù)通過Modbus協(xié)議傳輸保證實時性,設備管理系統(tǒng)或資產(chǎn)管理軟件可通過OPC UA協(xié)議與儀表建立連接,獲取設備模型信息,達到語義交互的目的。主要驗證內(nèi)容包括:
1)OPC UA儀表的數(shù)據(jù)模型文件(XML)在控制系統(tǒng)內(nèi)的導入。DCS硬件組態(tài)軟件中可導入XML格式文件,形成儀表庫,并可在DCS的以太網(wǎng)通信模塊下,添加儀表庫中的OPC UA儀表,配置當前需要讀取或輸出的儀表數(shù)據(jù)。這些數(shù)據(jù)進一步被關聯(lián)到DCS中的通信位號,參與到控制器控制邏輯運算中。
2)控制器獲取OPC UA過程數(shù)據(jù)。DCS的以太網(wǎng)通信模塊在接收到OPC UA儀表的組態(tài)后,根據(jù)不同儀表的通信周期配置周期性地調用組態(tài)OPC UA儀表的數(shù)據(jù)訪問/輸出方法,從而獲取儀表的當前輸出,或將DCS數(shù)據(jù)寫入儀表。以太網(wǎng)通信模塊獲得數(shù)據(jù)后,將數(shù)據(jù)轉發(fā)至DCS控制器。同時,DCS以太網(wǎng)通信模塊與DCS控制器保持周期性數(shù)據(jù)交互,從而建立OPC UA儀表到DCS控制器的數(shù)據(jù)交互通道。
3)設備管理軟件獲取OPC UA 配置數(shù)據(jù)。設備管理軟件作為OPC UA客戶端,通過APL交換機接入OPC UA儀表后,通過服務發(fā)現(xiàn)或手動添加OPC UA Server,自動獲取或導入OPC UA儀表的OPC配置數(shù)據(jù)。添加OPC UA儀表的非周期管理數(shù)據(jù)通信配置后,根據(jù)預設的輪詢周期查詢管理數(shù)據(jù)。
4)Modbus TCP過程數(shù)據(jù)的配置和傳輸。以太IP化壓力變送器的實時數(shù)據(jù)存放在保持寄存器表中,可對DCS等Modbus TCP客戶端提供數(shù)據(jù)。壓力數(shù)據(jù)采用4字節(jié)單精度浮點數(shù),單位為Pa。DCS硬件組態(tài)軟件提供Modbus TCP儀表的接入配置功能,可在DCS的以太網(wǎng)通信模塊中直接添加儀表,選擇Modbus TCP通信協(xié)議,并指定儀表通信周期、待讀數(shù)據(jù)的寄存器地址,從而實現(xiàn)壓力數(shù)據(jù)的獲取。
5)物聯(lián)IP和控制系統(tǒng)之間的數(shù)據(jù)交互。物聯(lián)IP與DCS均以儀表位號作為工業(yè)儀表的唯一標識符,DCS根據(jù)組態(tài)信息維護儀表網(wǎng)絡接入請求,負責響應物聯(lián)IP提交的特定儀表的接入請求。請求通過后,DCS可根據(jù)請求報文的源通信地址配置儀表的IP地址。
DCS可以向特定物聯(lián)IP服務地址查詢特定儀表的上線狀態(tài)及IP通信地址,查詢成功后,可以利用傳統(tǒng)TCP/IP協(xié)議和儀表進行通信。對于支持物聯(lián)IP協(xié)議棧的DCS,可以直接通過儀表通信位號發(fā)起通信請求。
通過新型IP化儀表的設計與驗證,本文初步證明了基于SPE IP協(xié)議及工業(yè)測控系統(tǒng)的技術可行性。但針對實際應用,依然需要對軟硬件適配度、應用軟件生態(tài)、系統(tǒng)性能等方面開展廣泛而嚴謹?shù)脑O計、開發(fā)與測試。期望該工作可以為新型儀器儀表的研制、老舊儀器儀表的升級改造提供參考,推動流程工業(yè)儀器儀表的網(wǎng)絡化、智能化解決方案的成功。
本文初步實現(xiàn)了以太IP化壓力儀表和控制器、上位機之間的數(shù)據(jù)交換。下一步將按照流程工業(yè)現(xiàn)場儀表設備類型,構建標準數(shù)據(jù)語義模型以及相關設備數(shù)據(jù)描述文件,實現(xiàn)設備在控制系統(tǒng)的組態(tài)導入和即插即用。在數(shù)據(jù)傳輸層,將進一步優(yōu)化物聯(lián)IP傳輸協(xié)議,實現(xiàn)過程數(shù)據(jù)的確定性時延可靠傳輸以及管理配置數(shù)據(jù)的高效傳輸,同時實現(xiàn)數(shù)據(jù)傳輸層的解耦,兼容更多應用數(shù)據(jù)。以太IP化儀表為流程儀表的遠程訪問提供了實現(xiàn)可能性,下一步將探索在保證數(shù)據(jù)安全條件下的外部訪問性能。