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

?

TMSR-SF0控制系統(tǒng)與保護系統(tǒng)通訊方案的設計與實現(xiàn)

2021-03-06 13:39:16朱晨晨韓立欣
核技術 2021年2期
關鍵詞:驅動程序串口數(shù)據(jù)包

朱晨晨 韓立欣 后 接

(中國科學院上海應用物理研究所上海201800)

釷基熔鹽核能系統(tǒng)因其突出的經(jīng)濟性、安全性、可持續(xù)性和防止核擴散的能力,在第四代裂變反應堆的6個候選堆型中具有明顯的競爭力[1-2]。作為釷基熔鹽堆(Thorium Molten Salt Reactor,TMSR)的2 MW液態(tài)燃料釷基熔鹽實驗堆的非核模擬實驗堆,釷基熔鹽仿真堆(Thorium Molten Salt Reactor-Solid Fuel,TMSR-SF0)的運行控制和安全保護功能分別由基于實驗物理與工業(yè)控制系統(tǒng)(Experimental Physics and Industrial Control System,EPICS)的分布式控制系統(tǒng)和基于現(xiàn)場可編程邏輯門陣列(Field Programmable Gate Array,F(xiàn)PGA)的保護系統(tǒng)獨立實現(xiàn)。

為了實現(xiàn)TMSR-SF0的控制系統(tǒng)和保護系統(tǒng)的信息集成,并能夠滿足核電人因工程關于控制系統(tǒng)一體化和標準化以及最終能夠高度可靠、及時、清晰地綜合顯示安全參數(shù)的要求,TMSR-SF0控制系統(tǒng)需要實現(xiàn)與基于FPGA的保護系統(tǒng)以自定義的通訊協(xié)議通信的方式進行通訊,使其能夠讀取并處理保護系統(tǒng)的數(shù)據(jù),最終在其人機界面上統(tǒng)一顯示。

核電上使用的控制系統(tǒng)與保護系統(tǒng)之間的通信方式有采用隔離的硬接線信號直接通信,有通過隔離網(wǎng)關實現(xiàn)通信。本文給出了一種能夠實現(xiàn)控制系統(tǒng)與保護系統(tǒng)之間通訊的實施方案;文中設計的實施方案能夠滿足TMSR-SF0控制系統(tǒng)所要求的所有技術指標,且具有可靠性、實時性和穩(wěn)定性;文中的保護系統(tǒng)是以自定義的通訊協(xié)議與控制系統(tǒng)進行通信,且具有校驗功能,能夠保證通訊內容的完整性和準確性;文中設計的控制系統(tǒng)與保護系統(tǒng)之間的通訊方案是基于EPICS平臺上的S7plc驅動程序,是其他的核電控制系統(tǒng)所沒有的,可以為將來控制系統(tǒng)與子系統(tǒng)的通訊設計及儀控行業(yè)中類似的通訊設計提供一種參考和借鑒。

本文重點研究了保護系統(tǒng)串口設備與控制系統(tǒng)之間通信的方案設計和技術實現(xiàn)。

1 設計

EPICS是用于大型科學裝置控制系統(tǒng)軟件開發(fā)和運行的軟件工具集?;谄渌_發(fā)的分布式控制系統(tǒng)的穩(wěn)定性、可移植性、可互操作性、可裁減性及可重用性等特點,EPICS廣泛應用在工業(yè)和實驗項目中[3-5]?;诖耍琓MSR采用EPICS開發(fā)了TMSR試驗回路控制系統(tǒng)以及剛剛成功運行的TMSR-SF0控制系統(tǒng),其穩(wěn)定可靠的特點保障了TMSR項目的順利進行[6-7]。

TMSR-SF0保護系統(tǒng)通過MOXA NPort 5150串口聯(lián)網(wǎng)服務器將RS-485串口設備與以太網(wǎng)連接,以傳輸控制協(xié)議/網(wǎng)際協(xié)議(Transmission Control Protocol/Internet Protocol,TCP/IP)數(shù)據(jù)包的形式每1 s周期性地單向發(fā)送數(shù)據(jù)到TMSR-SF0控制系統(tǒng),其通訊結構見圖1(TMSR-SF0保護系統(tǒng)的初步設計是內外網(wǎng)隔離——禁止外網(wǎng)直接訪問保護系統(tǒng)的數(shù)據(jù);將來實際應用中保護系統(tǒng)串口設備將采用隔離網(wǎng)關的方式設計實現(xiàn)網(wǎng)絡的隔離)。TMSR-SF0保護系統(tǒng)通信協(xié)議中定義的幀尾信息有數(shù)據(jù)校驗功能——保護系統(tǒng)發(fā)送數(shù)據(jù)時在FPGA實現(xiàn)中計算出校驗碼,發(fā)送給接收端;接收端計算校驗碼后以校驗碼是否匹配來判斷接收數(shù)據(jù)的真實性。由于業(yè)務需要,文中實現(xiàn)的是單向通信,在此沒有重發(fā)機制——如果接收端沒有接收到數(shù)據(jù)包或者接收端經(jīng)過計算得到的校驗碼與發(fā)過來的不一致(即出現(xiàn)數(shù)據(jù)傳輸誤碼),則直接丟棄,不會重發(fā)。因此需要EPICS相應的驅動程序,實現(xiàn)TMSR-SF0保護系統(tǒng)與控制系統(tǒng)之間的通訊。

作為EPICS的TCP/IP通訊驅動包,S7plc驅動程序具有接收并解析串口設備發(fā)來的TCP/IP數(shù)據(jù)包的功能,并且已在TMSR試驗回路長期穩(wěn)定應用。故S7plc驅動程序可以作為TMSR-SF0控制系統(tǒng)和保護系統(tǒng)通訊的工具。

圖1 TMSR-SF0保護系統(tǒng)串口設備通過FPGA與MOXA通訊的結構圖Fig.1 Structure diagram of TMSR-SF0 protection system serial device communicating with moxa through FPGA

S7plc作為EPICS驅動支持層(Device support)接收并解析串口設備服務器發(fā)送的TCP/IP數(shù)據(jù)包,進而建立輸入輸出控制器(Input/Output Controller,IOC),并開發(fā)用以處理保護系統(tǒng)實時通訊數(shù)據(jù)的數(shù)據(jù)庫文件,最終使得保護系統(tǒng)數(shù)據(jù)在控制系統(tǒng)的人機界面上統(tǒng)一顯示。其數(shù)據(jù)流程圖見圖2。

圖2 TMSR-SF0控制系統(tǒng)與保護系統(tǒng)串口設備之間的數(shù)據(jù)流程圖Fig.2 Data flow chart between TMSR-SF0 control system and protection system serial device

2 實現(xiàn)

TMSR-SF0保護系統(tǒng)中需被控制系統(tǒng)讀取并處理的信號量,由保護系統(tǒng)自定義的通訊數(shù)據(jù)幀所傳遞,數(shù)據(jù)幀格式中數(shù)據(jù)分類見表1。

表1 TMSR-SF0保護系統(tǒng)自定義的通信協(xié)議數(shù)據(jù)幀格式Table 1 Data frame of communication protocol for TMSR-SF0 protection system

表1 中通信協(xié)議是針對釷基熔鹽仿真堆而設計,能夠滿足仿真堆的設計要求,且設計的通信協(xié)議幀尾信息具有校驗字段,即使把該協(xié)議使用在復雜的核電現(xiàn)場使用環(huán)境下,也能夠保證通訊內容的完整性和準確性。為了實現(xiàn)TMSR-SF0控制系統(tǒng)對保護系統(tǒng)數(shù)據(jù)的讀取與處理,需要完成接口軟件開發(fā)和系統(tǒng)測試。

2.1 接口軟件開發(fā)

接口軟件開發(fā)任務主要是實現(xiàn)Linux平臺下EPICS系統(tǒng)的驅動程序與保護系統(tǒng)軟件之間的通訊配置,包括IOC搭建、S7plc驅動配置、IOC實時數(shù)據(jù)庫設計和人機界面開發(fā)。

2.1.1 IOC搭建

基于EPICS的TMSR-SF0保護系統(tǒng)與控制系統(tǒng)之間的通訊方案,是在Linux系統(tǒng)Centos 6.4 32位操作系統(tǒng)平臺下用EPICS base-3.14.12版本(安裝目錄為$base)進行IOC搭建,并用S7plc-1.17版本進行驅動配置[8-9]。

創(chuàng)建IOC實例,首先通過makeBaseApp.pl生成一個IOC實例的應用目錄和一個IOC啟動目錄。一個IOC實例包含應用目錄s7plcApp、配置目錄configure、啟動目錄iocBoot和Makefile等。IOC實例中最重要的是s7plcApp,其包含了源文件目錄src和數(shù)據(jù)庫目錄db。S7plc驅動包中的設備支持/設備驅動程序(drvS7plc.h、devS7plc.c和drvS7plc.c)和記錄 支 持程 序(s7plcBase.dbd、s7plcCalcout.dbd和s7plcReg.dbd)被使用在s7plcApp的src下以編譯支持庫和IOC應用,src下的Makefile配置見圖3。configure下RELEASE文件中 的EPICS_BASE需 配置為$base。在IOC實例目錄下,編譯成功后,生成db、dbd、include、lib、bin,搭建IOC完成。

2.1.2 S7plc驅動配置

為了實現(xiàn)TMSR-SF0保護系統(tǒng)串口設備與控制系統(tǒng)EPICS IOC的通信,在IOC的啟動腳本iocBoot/iocs7plc/st.cmd中,配置S7plc的串口通信參數(shù)。

圖3 IOC實例下s7plcApp的src中Makefile配置流程圖Fig.3 Configuration flow of Makefile in src directory under s7plcApp for the IOC

S7plc串口通信配置函數(shù)為s7plcConfigure PLCname,IPaddr,port,inSize,outSize,bigEndian,recvTimeout,sendInterval。函數(shù)中定義的PLCname將在輸入記錄INP鏈接中被引用;IPaddr引用的是服務器端地址;port引用的是服務器端設置的TCP端口;inSize定義從服務器端PLC讀取的以字節(jié)為單位的數(shù)據(jù)塊大??;outSize定義接收的以字節(jié)為單位的數(shù)據(jù)塊大??;bigEndian定義傳輸?shù)淖止?jié)順序,本文設計的方案是小端傳輸,值設置為0;recvTimeout定義接收的超時時間;sendInterval定義發(fā)送時間間隔。

2.1.3 IOC實時數(shù)據(jù)庫設計

EPICS IOC實時數(shù)據(jù)庫能夠實時接收和存儲TMSR-SF0保護系統(tǒng)發(fā)送的數(shù)據(jù)。TMSR-SF0控制系統(tǒng)需要監(jiān)測的保護系統(tǒng)中的模擬量包括源量程/中間量程/功率量程高壓值、脈沖計數(shù)值、功率值、校準系數(shù),出口溫度值,一回路/二回路流量原始電流值、流量值、流量校準系數(shù),三回路負載原始值、負載值、負載校準系數(shù),事故后監(jiān)測溫度值;開關量包括源量程/中間量程/功率量程工作狀態(tài),出口溫度邏輯狀態(tài),一回路/二回路流量邏輯狀態(tài),三回路負載邏輯狀態(tài),廠外失電邏輯狀態(tài)、斷路器驅動狀態(tài)、安全專設驅動狀態(tài)。

在設計的TMSR-SF0保護系統(tǒng)數(shù)據(jù)庫文件中,對表1保護系統(tǒng)自定義的通信數(shù)據(jù)開發(fā)對應的數(shù)據(jù)庫記錄,包括AI和BI。其數(shù)據(jù)庫記錄的實例如下:

使用S7plc驅動,數(shù)據(jù)庫記錄中的設備類型DTYP則設置為“S7plc”;AI記錄的INP域設置為“@PLCname/N T=FLOAT”,其PLCname是在驅動配置中自定義的plc name,N表示從第N(由保護系統(tǒng)通訊協(xié)議定義的字節(jié)偏移量定)個字節(jié)開始讀取,T=FLOAT定義數(shù)據(jù)類型;PREC域定義字段值的保留有效字段長度;SCAN域設置為“I/O Intr”,表示驅動程序一旦接收到數(shù)據(jù),就將此過程變量從數(shù)據(jù)塊中復制到輸入記錄;BI記錄的INP域設置為“PLCname/M B=T”,表示從第M個字節(jié)開始讀取兩個字節(jié)中的第T位(由保護系統(tǒng)通訊協(xié)議定義的字節(jié)偏移量定M,由定義的位數(shù)定T)。

依據(jù)數(shù)據(jù)庫記錄的定義,解析在某一時刻控制系統(tǒng)端接收到的數(shù)據(jù)包中的監(jiān)測量AI和BI,并對比AI和BI同一時刻在保護系統(tǒng)界面上的原始值、控制系統(tǒng)端接收到的數(shù)據(jù)包解析值以及在EPICS IOC端的AI和BI的PV值,如果三值一致則能夠確定IOC實時數(shù)據(jù)庫能實時接收和存儲TMSR-SF0保護系統(tǒng)傳送的數(shù)據(jù)。

2.1.4 人機界面開發(fā)

控制系統(tǒng)人機界面開發(fā)能夠使得監(jiān)控人員更好地監(jiān)測保護系統(tǒng)的實時數(shù)據(jù)?;赥MSR-SF0控制系統(tǒng)顯示畫面的開發(fā)工具Control System Studio(CSS版本為3.2.16)平臺[10],建立保護系統(tǒng)的顯示畫面,進行畫面組態(tài)。根據(jù)SF0控制系統(tǒng)監(jiān)控的實際需求,設計的通訊方案實現(xiàn)了保護系統(tǒng)數(shù)據(jù)的實時顯示,其B序列部分數(shù)據(jù)顯示畫面見圖4。

2.2 系統(tǒng)測試

圖4 TMSR-SF0控制系統(tǒng)讀取保護系統(tǒng)B序列的部分數(shù)據(jù)顯示畫面Fig.4 Display screen of protection system partial data read by TMSR-SF0 control system

在TMSR-SF0保護系統(tǒng)的MOXA NPort 5150串口聯(lián)網(wǎng)服務器操作模式配置成TCP Server模式并啟動成功的條件下,運行ioc文件iocBoot/iocs7plc/st.cmd。

2.2.1 功能測試

TMSR-SF0保護系統(tǒng)中有出口溫度、一回路流量、二回路流量、三回路負載低/高以及它們的狀態(tài)(旁通/閉鎖/故障/預警/停堆)等。圖5是TMSR-SF0控制系統(tǒng)顯示畫面接收到的保護系統(tǒng)B序列的部分數(shù)據(jù)。圖中第一行是出口溫度值及其旁通和故障狀態(tài),是保護系統(tǒng)中最重要的參數(shù)指標。在控制系統(tǒng)顯示終端可實時監(jiān)控出口溫度值的變化,以便于操作員整體掌握保護系統(tǒng)的狀況。

經(jīng)過功能測試,基于EPICS平臺的S7plc驅動程序實現(xiàn)的控制系統(tǒng)可以實現(xiàn)對保護系統(tǒng)進行實時監(jiān)測,滿足系統(tǒng)設計要求。

圖5 TMSR-SF0控制系統(tǒng)顯示畫面接收到的部分信息Fig.5 Display screen of partial information received by TMSR-SF0 control system

2.2.2 性能測試

通過長期觀察TMSR-SF0控制系統(tǒng)與保護系統(tǒng)通訊軟件的運行,測試軟件的實時性、穩(wěn)定性和可靠性。如果在正常工況下,TMSR-SF0控制系統(tǒng)接收的數(shù)據(jù)與保護系統(tǒng)原始數(shù)據(jù)是一致的,每次通訊的平均響應時間小于等于系統(tǒng)要求的響應時間100 ms(在設計之初,對于TMSR-SF0仿真堆沒有提出具體的技術指標,此處以實時性要求較高的平均響應時間100 ms為參考基準),并且長時間表現(xiàn)出穩(wěn)定的趨勢(丟包率小于等于1%),就可以證明基于EPICS實現(xiàn)的TMSR-SF0控制系統(tǒng)與保護系統(tǒng)的通訊軟件是可靠、實時、穩(wěn)定的。

1)可靠性:TMSR-SF0保護系統(tǒng)通訊協(xié)議中定義了27個模擬量和287個開關量,圖6和圖7分別給出了模擬量出口溫度和一回路流量在長期觀察過程中隨機抽取的連續(xù)14 d關于TMSR-SF0保護系統(tǒng)端原始值和控制系統(tǒng)顯示畫面終端監(jiān)測值的樣本數(shù)據(jù)對比圖(在系統(tǒng)測試時,連續(xù)監(jiān)測了一段時間,數(shù)據(jù)量很大,在圖中很難畫出所有數(shù)據(jù),為了簡化對比圖,針對每個變量隨機抽取每天的一個樣本數(shù)據(jù)在圖中顯示出來,此處隨機抽取連續(xù)14 d的數(shù)據(jù))。

圖6 TMSR-SF0保護系統(tǒng)和控制系統(tǒng)出口溫度對比Fig.6 Comparison of outlet temperature between TMSR-SF0 protection system and control system

圖7 TMSR-SF0保護系統(tǒng)和控制系統(tǒng)一回路流量對比Fig.7 Comparison of primary flow rate between TMSR-SF0 protection system and control system

TMSR-SF0保護系統(tǒng)端原始值和控制系統(tǒng)顯示畫面終端監(jiān)測值是完全一致的,故基于EPICS實現(xiàn)的TMSR-SF0控制系統(tǒng)與保護系統(tǒng)的通訊軟件是可靠的。

2)實時性:在TMSR-SF0控制系統(tǒng)與保護系統(tǒng)通訊軟件終端,采用ping保護系統(tǒng)IP的方式測試一段時間,記下每天開始發(fā)數(shù)據(jù)包的時間和最后一個數(shù)據(jù)包得到響應的時間。設發(fā)數(shù)據(jù)包的總時長為time,發(fā)數(shù)據(jù)包總數(shù)為total,則平均響應時間t=time/total。圖8給出了在長期觀察過程中隨機抽取14 d的關于TMSR-SF0控制系統(tǒng)與保護系統(tǒng)通訊的平均響應時間的變化趨勢。

從圖8中可見,TMSR-SF0控制系統(tǒng)與保護系統(tǒng)通訊的最小平均響應時間是1.54 ms,最大平均響應時間是4.2 ms,計算出的平均響應時間是2.248 ms。由于平均響應時間2.248 ms小于系統(tǒng)要求的響應時間100 ms,故基于EPICS實現(xiàn)的TMSR-SF0控制系統(tǒng)與保護系統(tǒng)的通訊軟件是實時的。

圖8 TMSR-SF0控制系統(tǒng)與保護系統(tǒng)通信的平均響應時間變化趨勢Fig.8 Trend of average response time of communication between TMSR-SF0 control system and protection system

3)穩(wěn)定性:在TMSR-SF0控制系統(tǒng)與保護系統(tǒng)通訊軟件終端,采用ping保護系統(tǒng)IP的方式連續(xù)測試一段時間,記下每天發(fā)送數(shù)據(jù)包總數(shù)和接收數(shù)據(jù)包總數(shù),可得丟數(shù)據(jù)包總數(shù)。設發(fā)送數(shù)據(jù)包總數(shù)為N,接收數(shù)據(jù)包總數(shù)為M,則丟數(shù)據(jù)包總數(shù)為K=NM,丟包率=K/N。根據(jù)丟包率的計算方法,隨機抽取了14 d的數(shù)據(jù),計算出的丟包率是0%,故基于EPICS實現(xiàn)的TMSR-SF0控制系統(tǒng)與保護系統(tǒng)的通訊軟件是穩(wěn)定的。

本文系統(tǒng)測試是在Intel(R)Core(TM)i7-6500U CPU@2.50 GHz、16.0 G RAM、Centos 6.4 32位、EPICS base-3.14.12、S7plc-1.17、50~100 M寬帶、保護系統(tǒng)串口設備以每1 s周期性發(fā)送數(shù)據(jù)包的環(huán)境下進行測試,經(jīng)過長期觀察TMSR-SF0控制系統(tǒng)與保護系統(tǒng)通訊軟件的運行,對比保護系統(tǒng)端的原始值和控制系統(tǒng)顯示畫面端監(jiān)測值,計算連續(xù)一段時間通信的平均響應時間及丟包率,證明了基于EPICS實現(xiàn)的TMSR-SF0控制系統(tǒng)與保護系統(tǒng)的通訊軟件的可靠性、實時性和穩(wěn)定性。

3 結語

本文設計并實現(xiàn)的TMSR-SF0控制系統(tǒng)與保護系統(tǒng)的通訊軟件具有一定的可靠性、實時性和穩(wěn)定性,能夠滿足SF0控制系統(tǒng)所要求的所有技術指標,能夠為工程應用和儀控行業(yè)類似的通訊軟件提供使用和借鑒價值,同時,為TMSR控制系統(tǒng)后續(xù)的功能開發(fā),提供可靠的技術支持。但是由于TCP/IP本質上是雙向通信,此處單向通信是通過軟件實現(xiàn),為長遠考慮,并為TMSR后續(xù)項目(如實驗堆、試驗堆、示范堆等)大型軟件的安全可靠性等性能指標以及其他使用串口通信的功能開發(fā)和正常運行提供關鍵支撐技術研發(fā)能力和保障,下一步將繼續(xù)在其軟件安全可靠性方面努力,做進一步研究和改進,以保證單向通信的可靠實現(xiàn)。未來將從以下方面進行改進:1)控制系統(tǒng)軟件賬戶登錄和訪問權限控制;2)從目前單個IOC配置到多個IOC冗余配置的研究;3)IOC數(shù)據(jù)庫安全訪問;4)CA安全訪問。

猜你喜歡
驅動程序串口數(shù)據(jù)包
淺談AB PLC串口跟RFID傳感器的通訊應用
SmartSniff
USB接口的多串口數(shù)據(jù)并行接收方法探索
基于藍牙串口適配器的GPS接收機與AutoCAD的實時無線通信
地礦測繪(2015年3期)2015-12-22 06:27:26
基于Libpcap的網(wǎng)絡數(shù)據(jù)包捕獲器的設計與實現(xiàn)
基于并行控制的FPGA多串口拓展實現(xiàn)
視覺注意的數(shù)據(jù)包優(yōu)先級排序策略研究
移動IPV6在改進數(shù)據(jù)包發(fā)送路徑模型下性能分析
驅動程序更新與推薦
驅動程序更新與推薦
宁强县| 汽车| 太和县| 盐边县| 梁山县| 崇明县| 馆陶县| 松滋市| 西吉县| 钟祥市| 满城县| 三门县| 梅州市| 安达市| 天等县| 仁布县| 吕梁市| 池州市| 濮阳县| 漯河市| 洪湖市| 沐川县| 荃湾区| 湖南省| 即墨市| 罗源县| 哈巴河县| 潞城市| 吴忠市| 恩施市| 榆树市| 贵定县| 沂水县| 景洪市| 泰来县| 清丰县| 崇文区| 靖宇县| 丰镇市| 文安县| 新泰市|