文獻(xiàn)標(biāo)識(shí)碼: A
DOI:10.16157/j.issn.0258-7998.175143
中文引用格式: 韓在峰,,趙麗敏. 一種安全RTU的設(shè)計(jì)與實(shí)現(xiàn)[J].電子技術(shù)應(yīng)用,,2018,44(7):72-75,,85.
英文引用格式: Han Zaifeng,,Zhao Limin. A kind of design and implementation about safety RTU[J]. Application of Electronic Technique,2018,,44(7):72-75,,85.
0 引言
隨著工業(yè)自動(dòng)化,、信息、網(wǎng)絡(luò),、物聯(lián)網(wǎng)技術(shù)的發(fā)展,,在電力、交通,、石油化工,、核工業(yè)等國(guó)家重要行業(yè)中,工控安全和網(wǎng)絡(luò)安全等信息安全威脅也越來(lái)越受到用戶的關(guān)注,。本文針對(duì)電力自動(dòng)化行業(yè)的實(shí)際情況,,給出了一種基于SM2加密標(biāo)準(zhǔn)的安全RTU(Remote Terminal Unit)設(shè)計(jì)方案,不僅實(shí)現(xiàn)了現(xiàn)場(chǎng)數(shù)據(jù)的信息采集,、數(shù)據(jù)處理,、設(shè)備控制等功能,還對(duì)數(shù)據(jù)傳輸進(jìn)行了加/解密,,拒絕未授權(quán)用戶的訪問(wèn),,提高了工控系統(tǒng)就地控制層的安全穩(wěn)定性,,提高了系統(tǒng)采集端的數(shù)據(jù)安全防護(hù)能力,提高了數(shù)據(jù)的可信性和操作的可靠性,。該產(chǎn)品已經(jīng)通過(guò)國(guó)家相關(guān)安全監(jiān)測(cè)機(jī)構(gòu)的安全性,、可靠性、性能等測(cè)試,,在多個(gè)實(shí)際項(xiàng)目中的成功應(yīng)用也證明了該RTU的設(shè)計(jì)方案是可行的,、性能是可靠的,能夠有效杜絕信息泄露和非法入侵等安全風(fēng)險(xiǎn),。
1 安全RTU硬件設(shè)計(jì)
安全RTU硬件部分主要包括DSP核心處理芯片,、遙測(cè)模塊、遙信模塊,、加解密模塊,、通信模塊等幾個(gè)核心模塊,這些模塊共同完成RTU的各種數(shù)據(jù)處理,、數(shù)據(jù)通信和控制功能,。
1.1 基本結(jié)構(gòu)
本文設(shè)計(jì)方案提出的安全RTU采集監(jiān)控單元,采用TI公司的高性能32位浮點(diǎn)型DSP芯片TMS320F28335作為控制核心,,與電能計(jì)量芯片ADE7880構(gòu)成模擬量采集單元,,具有準(zhǔn)確度高、損耗低等優(yōu)點(diǎn),,而且可以通過(guò)裝置本身的液晶顯示屏查看各種裝置配置參數(shù),、遙測(cè)運(yùn)行數(shù)據(jù)、遙信信號(hào)狀態(tài),、遙控輸出,、信號(hào)變位、過(guò)壓,、過(guò)流報(bào)警等各種信息,。通過(guò)內(nèi)置RS-485總線、SecModbus-RTU規(guī)約,、工業(yè)通信網(wǎng)絡(luò),,可以與SCADA、DCS等上位機(jī)監(jiān)控軟件組成各種監(jiān)控系統(tǒng),。基本結(jié)構(gòu)如圖1所示,。
1.2 遙測(cè)模塊
遙測(cè)模塊主要由DSP芯片TMS320F28335和電能計(jì)量芯片ADE7880構(gòu)成,,把TMS320F28335數(shù)字處理芯片和ADE7880采集芯片結(jié)合起來(lái),發(fā)揮各自的優(yōu)勢(shì),,避開(kāi)復(fù)雜的采樣電路,,完成對(duì)各種線路、開(kāi)關(guān)、斷路器以及用電設(shè)備的運(yùn)行信息進(jìn)行測(cè)量,,如電壓,、電流、功率等,,其硬件組成如圖2所示,。
ADE7880芯片是ADI公司生產(chǎn)的一款高精度測(cè)量芯片,是一款支持三相集成電能計(jì)量的集成電路,。它支持串行接口和中斷輸出兩種方式進(jìn)行數(shù)據(jù)交換,,還能夠提供三路靈活的脈沖輸出方法。該芯片內(nèi)置多個(gè)二階Σ-Δ模數(shù)轉(zhuǎn)換器,、數(shù)字積分器,、基準(zhǔn)電壓源電路等。同時(shí)該芯片還內(nèi)置一個(gè)DSP芯片實(shí)現(xiàn)三相電壓,、電流有效值和有效功率,、視在功率、功率因數(shù)的測(cè)量,,同時(shí)監(jiān)視電壓,、電流的總波形畸變率及諧波含有率。同時(shí)ASE7880還具有波形采樣輸出功能,,判斷是否有暫升,、暫降、中斷等瞬態(tài)事件,,實(shí)現(xiàn)對(duì)瞬態(tài)事件的捕捉和記錄,。
RTU監(jiān)控的設(shè)備都是強(qiáng)電設(shè)備,為了使RTU能夠采集和測(cè)量相應(yīng)的信息,,一般需要進(jìn)行電流和電壓的一次變換,,把高電壓、大電流變?yōu)榈碗妷汉腿蹼娏餍盘?hào),,把信號(hào)變成RTU允許輸入的信號(hào),比如進(jìn)行10 kV/100 V,、100 A/5 A的變換。本RTU的遙測(cè)模塊采用的電流互感器的規(guī)格為5 A/25 mA,,精度為0.05級(jí),,配置的阻抗為40 Ω。電壓互感器選用的是2 mA/2 mA電流型電壓互感器,,精度為0.05級(jí),,在其前端通過(guò)增加110 kΩ功率電阻把100 V電壓信號(hào)變換為2 mA電流信號(hào),所配置的負(fù)載電阻為250 Ω,。采用這種設(shè)計(jì)方案,,在輸入額定電流,、額定電壓時(shí),電流,、電壓差動(dòng)輸入的有效值分別小于0.05 V和0.25 V,,完全滿足工程項(xiàng)目要求。
1.3 遙信模塊
遙信的信息來(lái)自于各種斷路器,、刀閘,、保護(hù)信號(hào)和各種狀態(tài)信息,并通過(guò)光電隔離進(jìn)行采集,。外部遙信輸入信息通過(guò)光電耦合器將開(kāi)關(guān)狀態(tài)轉(zhuǎn)換為“0”或者“1”電平(0 V或則5 V)送入單片機(jī)的輸入端,,CPU通過(guò)遙信輸入板采集遙信狀態(tài),將采集到的遙信狀態(tài)去抖穩(wěn)定后進(jìn)行狀態(tài)比較,,如果發(fā)生遙信信號(hào)變位,,則進(jìn)行相應(yīng)的處理,上送遙信變位信息和SOE(事件順序記錄),。
1.4 加密/解密模塊
為了實(shí)現(xiàn)RTU和上位機(jī)監(jiān)控系統(tǒng)之間的安全交換信息功能,,本方案增加了加密/解密模塊。該模塊采用的核心芯片為南瑞股份有限公司采用國(guó)產(chǎn)32位CPU自主設(shè)計(jì)開(kāi)發(fā)的一款高速,、高性能的信息安全芯片,,該芯片集成了高速的安全加密算法和通信接口,具備獨(dú)有的加密處理機(jī)制,,能夠?qū)崿F(xiàn)高速數(shù)據(jù)流同步加解密功能,。該安全芯片集成度高、安全性強(qiáng),、接口豐富,、加解密速度快、功耗低,、具有極高的性價(jià)比,,可用于金融、電子政務(wù),、電子商務(wù),、智能電網(wǎng)、安全加密存儲(chǔ),、版權(quán)保護(hù)等領(lǐng)域,。該模塊的主要功能是實(shí)現(xiàn)SM2公鑰密碼對(duì)的產(chǎn)生、SM2數(shù)據(jù)簽名功能,、SM2數(shù)據(jù)驗(yàn)證功能,、SM2數(shù)據(jù)加密功能、SM2數(shù)據(jù)解密功能,、SM2密鑰交換功能和SM2雜湊功能等,。RTU的CPU通過(guò)SPI接口訪問(wèn)NRSEC3000芯片,為系統(tǒng)應(yīng)用提供SM2算法,,SM2算法效率高,,破解難度很大。NRSEC3000芯片接口設(shè)計(jì)圖如圖3所示,。
圖2中NRSEC3000與DSP微處理器的接口為SPI總線,,通信主端采用SPI模式3,時(shí)鐘頻率33 MHz,,中斷模式處理數(shù)據(jù)收發(fā),。
1.5 通信模塊
為了實(shí)現(xiàn)與SCADA、DCS等上位機(jī)監(jiān)控系統(tǒng)的通信,,實(shí)現(xiàn)遙信,、遙測(cè)、報(bào)警數(shù)據(jù)和控制指令的交互,,本方案的RTU設(shè)計(jì)了單獨(dú)的通信模塊,,本方案的通信模塊硬件電路圖如圖4所示。
CPU主板與上位機(jī)監(jiān)控系統(tǒng)的數(shù)據(jù)傳輸經(jīng)過(guò)RS-485收發(fā)器MAX3485,,由CPU的USART1進(jìn)行數(shù)據(jù)的發(fā)送和接收,,采用半雙工通信方式,由CPU的P3.5口控制數(shù)據(jù)的發(fā)送和接收,。為了提高數(shù)據(jù)傳輸?shù)目煽啃?,提高通信抗干擾能力,采用單獨(dú)5 V電源供電方式,,采用高速光耦6N137與其他的電源完全隔離,,同時(shí)傳輸線并聯(lián)瞬變電壓抑制器TVSC和串聯(lián)熔斷器,確保系統(tǒng)的安全性和抗干擾性,。
2 安全RTU軟件設(shè)計(jì)
2.1 加密/解密設(shè)計(jì)
在上位機(jī)端,,待傳輸?shù)臄?shù)據(jù)由加密芯片加密成密文后,上位機(jī)將加密后的數(shù)據(jù)傳給RTU,,RTU通過(guò)加密/解密芯片將數(shù)據(jù)解密后供RTU使用,。
在RTU端,將待傳輸?shù)臄?shù)據(jù)由加密芯片加密成密文后,,RTU通過(guò)通信模塊將加密后的數(shù)據(jù)傳輸給上位機(jī),,供上位機(jī)使用,加密/解密流程如圖5所示,。
軟件算法主要包括簽名,、驗(yàn)證、加密/解密,、獲取hash值等,,編寫(xiě)的接口函數(shù)主要有HR_SM2_HsEccSign,、HR_SM2_HsEccSignVerify、HR_SM2_HsEccEncrypt,、HR_SM2_HsEccDecrypt,、HR_SM2_HsEccUpdate、HR_SM2_HsEccFinalize,。通過(guò)這些函數(shù),,RTU采集單元實(shí)現(xiàn)身份認(rèn)證、數(shù)據(jù)加密/解密等功能,,實(shí)現(xiàn)了數(shù)據(jù)的安全交互功能,。
2.2 SecModbus-RTU安全規(guī)約設(shè)計(jì)
本方案中的RTU單元的通信方案采用基于RS-485總線通信方式的類Modbus-RTU加密規(guī)約,簡(jiǎn)稱SecModbus-RTU,。RTU通過(guò)這種帶加密信息的通信規(guī)約和上位機(jī)監(jiān)控系統(tǒng)進(jìn)行各種信息的交換,,包括遙信信息、遙測(cè)信息,、報(bào)警信息,、遙控操作等內(nèi)容。
采用SecModbus-RTU模式傳輸數(shù)據(jù)時(shí),,傳輸信息采用異步方式,,以字節(jié)為單位,RTU和上位機(jī)主站之間采用11位的通信方式,,如表1所示,。
數(shù)據(jù)包格式如表2所示。
每個(gè)SecModbus 數(shù)據(jù)包由地址碼區(qū),、數(shù)據(jù)類型,、數(shù)據(jù)長(zhǎng)度區(qū)、功能碼區(qū),、數(shù)據(jù)區(qū),、校驗(yàn)碼區(qū)共6部分組成。
(1)地址碼區(qū)
地址碼為1個(gè)字節(jié),,在同一個(gè)鏈路中唯一,,有效地址范圍為1~255,當(dāng)RTU收到符合SecModbus協(xié)議的標(biāo)準(zhǔn)數(shù)據(jù)包時(shí),,檢查子站地址是否與自己的一致,,如果一致,則處理后返回結(jié)果,,否則不響應(yīng)該數(shù)據(jù)包,。
(2)數(shù)據(jù)類型
數(shù)據(jù)類型分為認(rèn)證數(shù)據(jù)、密鑰交換數(shù)據(jù)和加密數(shù)據(jù)3種。
(3)數(shù)據(jù)長(zhǎng)度
數(shù)據(jù)長(zhǎng)度用來(lái)存儲(chǔ)本次傳輸?shù)臄?shù)據(jù)包中功能碼區(qū)和數(shù)據(jù)區(qū)中的數(shù)據(jù)的長(zhǎng)度,。
(4)功能碼區(qū)
Modbus通信規(guī)約可定義的功能碼為1~127,,用于表示從設(shè)備要完成的功能。比如01表示讀取輸出狀態(tài),,02表示讀取輸入狀態(tài),,03代表度寄存器數(shù)據(jù),,06代表設(shè)置單個(gè)寄存器等,。
(5)數(shù)據(jù)區(qū)
數(shù)據(jù)區(qū)表示本數(shù)據(jù)域中的字節(jié)數(shù)量、寄存器地址或者具體的數(shù)據(jù),。根據(jù)不同的功能碼,,數(shù)據(jù)域的數(shù)據(jù)存儲(chǔ)結(jié)構(gòu)也有所不同。正常響應(yīng)時(shí),,數(shù)據(jù)域包含上位機(jī)請(qǐng)求的數(shù)據(jù)或者下發(fā)的控制數(shù)據(jù),。當(dāng)是異常響應(yīng)時(shí),數(shù)據(jù)區(qū)包含了錯(cuò)誤碼,,上位機(jī)設(shè)備可以根據(jù)錯(cuò)誤碼做響應(yīng)的錯(cuò)誤信息處理,。
(6)校驗(yàn)碼區(qū)
SecModbus通信規(guī)約在RTU模式下采用CRC循環(huán)冗余校驗(yàn)方式,該校驗(yàn)域存儲(chǔ)結(jié)果的兩個(gè)字節(jié)的數(shù)據(jù),。
其中,,功能碼區(qū)和數(shù)據(jù)區(qū)在數(shù)據(jù)傳輸過(guò)程中為加密數(shù)據(jù),SecMODBUS主要功能是碼定義,、寄存器地址分配,,如表3所示。
2.3 SecModbus的數(shù)據(jù)處理過(guò)程
基于加密SecModbus規(guī)約的通信過(guò)程主要包括上位機(jī)數(shù)據(jù)的接收,、上位機(jī)的認(rèn)證,、密鑰交換、上位機(jī)控制指令的解密和處理,、對(duì)上位機(jī)指令數(shù)據(jù)的組織和加密,、上位機(jī)數(shù)據(jù)的加密和發(fā)送等多個(gè)過(guò)程,SecModbus和上位機(jī)進(jìn)行數(shù)據(jù)交換的流程如圖6所示,。
3 結(jié)論
本文介紹的安全RTU的設(shè)計(jì)方案采用了TMS320F28335 DSP數(shù)字處理芯片,、ADE7880測(cè)量芯片、NRSEC3000數(shù)據(jù)加解密芯片,,充分利用了各芯片的豐富外圍和內(nèi)置功能,,簡(jiǎn)化了軟件和硬件設(shè)計(jì),降低了開(kāi)發(fā)成本,,縮短軟件開(kāi)發(fā)周期,,提高了產(chǎn)品的可靠性,并能夠充分保證數(shù)據(jù)傳輸中的安全性,為生產(chǎn)設(shè)備的安全監(jiān)控提供可靠保證,。本文中提到的RTU的軟硬件已通過(guò)了相關(guān)部門(mén)的檢測(cè),,并且在實(shí)際工程項(xiàng)目中得到了大量應(yīng)用,經(jīng)過(guò)長(zhǎng)期的使用,,該產(chǎn)品工作正常,,性能穩(wěn)定,取得了良好的應(yīng)用效果,。本產(chǎn)品不僅適用于普通的環(huán)境,、樓宇、建筑等普通民用信息的監(jiān)控,,而且更適用于電力,、高鐵、石油等對(duì)數(shù)據(jù)安全有嚴(yán)格要求的行業(yè),,具有良好的應(yīng)用前景,。
參考文獻(xiàn)
[1] 蘇善偉.一種具有四遙功能RTU的設(shè)計(jì)與實(shí)現(xiàn)[J].儀表技術(shù),2007(9):3-5,,8.
[2] 倪云峰,,董張卓,張曉莉,,等.高性能RTU交流采樣單元的設(shè)計(jì)與實(shí)現(xiàn)[J].高電壓技術(shù),,2005,31(1):70-88.
[3] 車(chē)立志,,徐文尚,,劉倩倩,等.數(shù)字化直流調(diào)速實(shí)驗(yàn)系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)[J].實(shí)驗(yàn)室研究與探索,,2009,,28(2):57-60.
[4] 劉小端,曾國(guó)宏.基于MSP430F149的低成本智能型電力檢測(cè)儀[J].電子技術(shù),,2002,,29(4):5-8.
[5] 楊艷民,王學(xué)俊,,楊林,,等.基于Modbus協(xié)議的CAN總線轉(zhuǎn)換器設(shè)計(jì)[J].電測(cè)與儀表,2006,,43(10):49-53.
作者信息:
韓在峰1,,趙麗敏2
(1.北京國(guó)際系統(tǒng)控制有限公司,北京100083,;2.德州學(xué)院 信息管理學(xué)院,,山東 德州253300)