




版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、分布式能源箱變測(cè)控裝置規(guī)約轉(zhuǎn)換模塊項(xiàng)目軟件(/概要)設(shè)計(jì)說(shuō)明書(shū)項(xiàng)目令號(hào):承擔(dān)部門:微網(wǎng)所編制:劉宣E-mail/Tel:審核:會(huì)審:批準(zhǔn):國(guó)電南京I動(dòng)化股份有限公司軟件系統(tǒng)/概要設(shè)計(jì)文檔修改記錄日期版本作者修改內(nèi)容2015.03.231.0劉亮初始版本。描述PCM嵌入式軟件的系統(tǒng)概要設(shè)計(jì)。注1:每次更改歸檔文件 (指納入配置重注2:文件第一次歸檔時(shí),“更改理由”E線的文件)時(shí),需填寫此表。、“主要更改內(nèi)容”欄寫“無(wú)”。摘要本文對(duì)分布式能源箱變測(cè)控裝置規(guī)約轉(zhuǎn)換模塊(簡(jiǎn)稱規(guī)約轉(zhuǎn)換模塊,PCM的嵌入式軟件的總體架構(gòu)設(shè)計(jì)進(jìn)行描述。PCM配套的配置工具主要牽涉到數(shù)據(jù)庫(kù)設(shè)計(jì)和界面設(shè)計(jì),不包含在本文檔的敘述
2、范圍內(nèi)。PCM以數(shù)據(jù)采集、轉(zhuǎn)發(fā)為核心功能,嵌入式軟件在架構(gòu)設(shè)計(jì)上采用了數(shù)據(jù)中心模式。為保證數(shù)據(jù)轉(zhuǎn)發(fā)效率,采用共享內(nèi)存方式的實(shí)時(shí)數(shù)據(jù)庫(kù)設(shè)計(jì)。為減小系統(tǒng)模塊的耦合, 給系統(tǒng)擴(kuò)展留有足夠空間, 系統(tǒng)采用多進(jìn)程方式獨(dú)立實(shí)現(xiàn)各子功能。各子功能模塊通過(guò)進(jìn)程訪問(wèn)接口(PAI)進(jìn)行通信,通信方式包括信號(hào)量和共享內(nèi)存兩種。為提高軟件的兼容性,系統(tǒng)設(shè)計(jì)了硬件抽象層(HAL)模塊和數(shù)據(jù)庫(kù)訪問(wèn)接口(DAI)模塊,將硬件平臺(tái)和數(shù)據(jù)庫(kù)的操作進(jìn)行了統(tǒng)一封裝。為提高系統(tǒng)的穩(wěn)定性,設(shè)計(jì)了守護(hù)進(jìn)程模塊。守護(hù)進(jìn)程通過(guò)信號(hào)量握手來(lái)監(jiān)控實(shí)時(shí)數(shù)據(jù)庫(kù)進(jìn)程、通信規(guī)約進(jìn)程等其他進(jìn)程的運(yùn)行狀況,可以在被監(jiān)視的進(jìn)程發(fā)生異常時(shí)對(duì)其及時(shí)修復(fù)。目錄第
3、1 篇概述 31.1 范圍 31.2 設(shè)計(jì)依據(jù) 31.3 術(shù)語(yǔ)、定義和縮略語(yǔ) 31.3.1術(shù)語(yǔ)、定義31.3.2縮略語(yǔ)4第 2 篇系統(tǒng)總體設(shè)計(jì) 41體系結(jié)概述 41系統(tǒng)體系結(jié)構(gòu) 51標(biāo)準(zhǔn)化設(shè)計(jì) 61.7模塊標(biāo)準(zhǔn)化設(shè)計(jì)61.7接口標(biāo)準(zhǔn)化設(shè)計(jì)61.7界面格式61.7編碼約定71.7注釋約定71系統(tǒng)版本規(guī)劃 81系統(tǒng)處理流程 91子系統(tǒng)說(shuō)明 101.10實(shí)時(shí)數(shù)據(jù)庫(kù)RDB101.10歷史數(shù)據(jù)庫(kù)HDB101.10通信規(guī)模塊111.10輔助模塊111.10守護(hù)進(jìn)程模塊111.10網(wǎng)關(guān)模塊121系統(tǒng)數(shù)據(jù)結(jié)構(gòu)設(shè)計(jì) 121.11邏輯結(jié)構(gòu)設(shè)計(jì)要點(diǎn)121.11物理結(jié)構(gòu)設(shè)計(jì)要點(diǎn)121.11數(shù)據(jù)與子系統(tǒng)關(guān)系121開(kāi)發(fā)和
4、運(yùn)行環(huán)境 121.12硬件環(huán)境121.12軟件環(huán)境131.12外購(gòu)件分析131可靠性設(shè)計(jì) 131可測(cè)試 T生設(shè)計(jì) 131安全性設(shè)計(jì) 141出錯(cuò)處理設(shè)計(jì) 141設(shè)計(jì)依據(jù)與需求跟蹤 14第 3 篇系統(tǒng)運(yùn)行說(shuō)明 161配置說(shuō)明 161系統(tǒng)應(yīng)用方式 161代碼目錄說(shuō)明錯(cuò)誤!未定義書(shū)簽。第 4 篇技術(shù)方案總結(jié) 171關(guān)鍵技術(shù)問(wèn)題說(shuō)明 171技術(shù)復(fù)用說(shuō)明 17第 5 篇總體進(jìn)度計(jì)劃 182)項(xiàng)目分解 182)完成時(shí)間 18第 6 篇參考文獻(xiàn) 196.1 參考文獻(xiàn) 19第 1 1 篇概述范圍本文件規(guī)定了分布式能源箱變測(cè)控裝置規(guī)約轉(zhuǎn)換模塊 (簡(jiǎn)稱PCM的軟件總體設(shè)計(jì)及使用的關(guān)鍵技術(shù)等,主要圍繞PCM的嵌入式軟
5、件進(jìn)行闡述。PCM的配置工具并不在本文檔中進(jìn)行說(shuō)明。設(shè)計(jì)依據(jù)GB/T13729-2002遠(yuǎn)動(dòng)終端通用技術(shù)條件交流采樣遠(yuǎn)動(dòng)終端技術(shù)條件地區(qū)電網(wǎng)調(diào)度自動(dòng)化設(shè)計(jì)技術(shù)規(guī)程電力系統(tǒng)調(diào)度自動(dòng)化設(shè)計(jì)技術(shù)規(guī)程220kV-500kV電網(wǎng)繼電保護(hù)裝置運(yùn)行整定規(guī)程35kV-110kV無(wú)人值班變電所設(shè)計(jì)規(guī)程220-500kV變電所計(jì)算機(jī)監(jiān)控系統(tǒng)設(shè)計(jì)技術(shù)規(guī)程電保護(hù)設(shè)備信息接口配套標(biāo)準(zhǔn)DL/T634.5101-2002遠(yuǎn)動(dòng)設(shè)備及系統(tǒng)動(dòng)任務(wù)配套標(biāo)準(zhǔn)DL/T634.5104-2002遠(yuǎn)動(dòng)設(shè)備及系統(tǒng)標(biāo)準(zhǔn)傳輸協(xié)議子集的IEC60870-5-101網(wǎng)絡(luò)訪問(wèn)術(shù)語(yǔ)、定義和縮略語(yǔ)術(shù)語(yǔ)、定義本文件應(yīng)用了以下術(shù)語(yǔ)和定義:配置數(shù)據(jù)庫(kù)存儲(chǔ)工程配
6、置的數(shù)據(jù)庫(kù),文件形式,由配置工具產(chǎn)生歷史數(shù)據(jù)庫(kù)存儲(chǔ)歷史事件的數(shù)據(jù)庫(kù),文件形式,非易失存儲(chǔ)實(shí)時(shí)數(shù)據(jù)庫(kù)存儲(chǔ)實(shí)時(shí)數(shù)據(jù)的數(shù)據(jù)庫(kù),處于內(nèi)存中,掉電消失DL/T630-1997DL5002-2005DL5003-2005DL/T559-2007DL/T5103-1999DL/T5149-2001DL/T872-2004小接地電流系統(tǒng)單相接地保護(hù)裝置DL/T860.3-2004變電站通信網(wǎng)絡(luò)和系統(tǒng)第3部分總體要求DL/T667-1999遠(yuǎn)動(dòng)設(shè)備及系統(tǒng)第5部分-傳輸規(guī)約第103篇-繼第5-101部分:傳輸規(guī)約基本遠(yuǎn)第5-104部分:傳輸規(guī)約采用進(jìn)程OS進(jìn)行資源分配和調(diào)度的基本單位,可理解為動(dòng)態(tài)的程序共享內(nèi)存可
7、被多個(gè)進(jìn)程共享的物理內(nèi)存,進(jìn)程間共享數(shù)據(jù)最快的方法前端規(guī)約進(jìn)程PCM和前端裝置之間的通信規(guī)約進(jìn)程后端規(guī)約進(jìn)程PCM和后臺(tái)綜自系統(tǒng)之間的通信規(guī)約進(jìn)程守護(hù)進(jìn)程PCM中啟動(dòng)、監(jiān)視、控制其他進(jìn)程的進(jìn)程配置工具主機(jī)端運(yùn)行的App,負(fù)責(zé)配置數(shù)據(jù)庫(kù)相關(guān)的操作網(wǎng)關(guān)進(jìn)程PCM上運(yùn)行的網(wǎng)關(guān)進(jìn)程,負(fù)責(zé)調(diào)試功能相關(guān)的用戶交互硬件抽象層對(duì)PCM底層硬件操作進(jìn)行封裝的庫(kù),方便跨平臺(tái)移植.2 縮略語(yǔ)本文件應(yīng)用了以下縮略語(yǔ):.PCMProtocolConvertModule規(guī)約轉(zhuǎn)換模塊HDBHistoryDataBase歷史數(shù)據(jù)庫(kù)CDBConfigurationDataBase配置數(shù)據(jù)庫(kù)RDBReal-tim
8、eDataBase實(shí)時(shí)數(shù)據(jù)庫(kù)HALHardwareAbstractLayer硬件抽象層PAIProcessAccessInterface進(jìn)程訪問(wèn)接口DAIDatabaseAccessInterface數(shù)據(jù)庫(kù)訪問(wèn)接口第 2 2 篇系統(tǒng)總體設(shè)計(jì)2.12.1 體系結(jié)構(gòu)概述PCM的主要功能是數(shù)據(jù)采集轉(zhuǎn)發(fā)。在嵌入式軟件的系統(tǒng)設(shè)計(jì)中,主要采用數(shù)據(jù)中心架構(gòu),輔助以適配器方式的接口模塊。PCM中,數(shù)據(jù)中心角色由RDB扮演,監(jiān)視方向和控制方向的信息都需要經(jīng)過(guò)RDB的中轉(zhuǎn),實(shí)現(xiàn)通信規(guī)約的轉(zhuǎn)換,繼而實(shí)現(xiàn)系統(tǒng)內(nèi)部的通信。HAL、PAI和DAI是PCM功能模塊中的公用模塊,他們的具體接口見(jiàn)相應(yīng)的設(shè)計(jì)文檔。他們實(shí)際上扮演
9、了針對(duì)系統(tǒng)硬件平臺(tái)、數(shù)據(jù)庫(kù)操作、進(jìn)程間通信的適配器角色。通過(guò)這3個(gè)模塊,可以將系統(tǒng)的其他功能模塊實(shí)現(xiàn)功能解耦,提高了系統(tǒng)的可維護(hù)性。具體的體系結(jié)構(gòu)參見(jiàn)圖1.圖 1 1PCMPCM 嵌入式軟件系統(tǒng)結(jié)構(gòu)示意圖系統(tǒng)具有三個(gè)數(shù)據(jù)庫(kù):RDB、HDB和CDB。CDB由配置工具離線產(chǎn)生,以文件形式提供了工程項(xiàng)目中的各相關(guān)配置;RDB是內(nèi)存形式的數(shù)據(jù)庫(kù),存放的是微網(wǎng)系統(tǒng)中的實(shí)時(shí)SCADA信息;HDB是文件形式的數(shù)據(jù)庫(kù),存放的是符合特定條件的SCADA歷史信息。HAL封裝了PCM底層硬件的驅(qū)動(dòng)操作,為調(diào)用者提供了統(tǒng)一、便捷的硬件訪問(wèn)接口,使得其他功能模塊與具體的硬件隔離,提高了軟件的可移植性。DAI封裝了數(shù)據(jù)庫(kù)
10、的驅(qū)動(dòng)操作, 使得調(diào)用者無(wú)需關(guān)注具體的SQL、 數(shù)據(jù)庫(kù)連接等操作,將數(shù)據(jù)庫(kù)的表結(jié)構(gòu)與具體應(yīng)用隔離開(kāi)來(lái),為開(kāi)發(fā)后期可能出現(xiàn)的數(shù)據(jù)庫(kù)移植、表結(jié)構(gòu)更改留下余地PAI封裝了進(jìn)程間通信接口,它一方面將復(fù)雜的進(jìn)程間通信封裝成易調(diào)用的庫(kù)函數(shù),另一方面也提供了類似于面向?qū)ο笤O(shè)計(jì)中接口適配器的功能,方便應(yīng)用的開(kāi)發(fā)和調(diào)整。前端通信規(guī)約模塊通過(guò)HAL與微網(wǎng)系統(tǒng)中其他裝置進(jìn)行通信,獲取系統(tǒng)的2.22.2 系統(tǒng)體系結(jié)構(gòu)配置數(shù)據(jù)庫(kù)CDB通用網(wǎng)關(guān)接口SCADA信息,并通過(guò)PAI接口將其傳入RDB保存。后端通信規(guī)約模塊通過(guò)PAI訪問(wèn)RDB,將系統(tǒng)的SCADA信息以特定規(guī)約的數(shù)據(jù)單元格式進(jìn)行封裝,通過(guò)HAL轉(zhuǎn)發(fā)至微網(wǎng)系統(tǒng)的后臺(tái)
11、綜自系統(tǒng)。通用網(wǎng)關(guān)接口模塊由Web服務(wù)器調(diào)用,為用戶提供數(shù)據(jù)查詢、數(shù)據(jù)修改、裝置控制等PCM相關(guān)的調(diào)試功能。守護(hù)進(jìn)程模塊負(fù)責(zé)監(jiān)控其他進(jìn)程的運(yùn)行狀態(tài),在出現(xiàn)異常情況時(shí)進(jìn)行恢復(fù)處理,保證PCM系統(tǒng)的正常穩(wěn)定運(yùn)行。2.32.3 標(biāo)準(zhǔn)化設(shè)計(jì)模塊標(biāo)準(zhǔn)化設(shè)計(jì)由于RDB、HAL、DAI、PAI牽涉到具體的數(shù)據(jù)庫(kù)表設(shè)計(jì)和平臺(tái)底層硬件操作封裝,CGI模塊與具體的網(wǎng)頁(yè)請(qǐng)求綁定,因此上述模塊無(wú)法進(jìn)行模塊標(biāo)準(zhǔn)化。但是通信規(guī)約模塊的數(shù)據(jù)處理部分可以進(jìn)行標(biāo)準(zhǔn)化,供其他產(chǎn)品項(xiàng)目使用。接口標(biāo)準(zhǔn)化設(shè)計(jì)本系統(tǒng)將對(duì)HAL、DAI、PAI的接口進(jìn)行標(biāo)準(zhǔn)化,為項(xiàng)目后期的平臺(tái)移植、數(shù)據(jù)庫(kù)調(diào)整、功能擴(kuò)展等情況預(yù)留兼容性操作空間,以提高同系
12、列產(chǎn)品的研發(fā)質(zhì)量和效率。界面格式PCM的界面主要有兩部分:配置工具和Web頁(yè)面。配置工具負(fù)責(zé)產(chǎn)生配置數(shù)據(jù)庫(kù),其界面設(shè)計(jì)需結(jié)合配置數(shù)據(jù)庫(kù)的設(shè)計(jì)進(jìn)行設(shè)定,不在本文檔說(shuō)明范圍內(nèi)。Web頁(yè)面主要向用戶提供PCM的在線調(diào)試功能,其主要頁(yè)面及各頁(yè)面涉及的功能見(jiàn)下圖。網(wǎng)關(guān)功能概述1)權(quán)限檢查功能:檢查用戶身份及訪問(wèn)權(quán)限;2)數(shù)據(jù)查詢功能:根據(jù) URI 參數(shù),獲取相關(guān)信息推送至客戶端顯示3)數(shù)據(jù)修改功能:根據(jù) URI 參數(shù),修改實(shí)時(shí)數(shù)據(jù)庫(kù)、配置數(shù)據(jù)庫(kù)內(nèi)容4)文件傳輸功能:數(shù)據(jù)包抓取以文件形式推送至客戶端。5)底層操作功能;重啟、信號(hào)燈控制等6)Web 服務(wù)重啟功能圖 2 2WebWeb 系統(tǒng)頁(yè)面功能設(shè)計(jì)編碼約
13、定建議在編程開(kāi)發(fā)時(shí)采用應(yīng)用型匈牙利命名法注釋約定無(wú)。設(shè)備運(yùn)行狀況概述登錄頁(yè)面1)用戶名和口令方式的登錄;2)驗(yàn)證若通過(guò)A)驗(yàn)證信息存入會(huì)話變量;B)跳轉(zhuǎn)至主頁(yè)。3)驗(yàn)證未通過(guò)A)提示錯(cuò)誤信息;B)停留在本頁(yè)面1)運(yùn)行狀態(tài)A)各通信端口的參數(shù)、狀態(tài);B)當(dāng)前的應(yīng)用軟件版本;C)當(dāng)前運(yùn)行的進(jìn)程名稱、PID2)設(shè)備控制(需權(quán)限)A)硬件功能測(cè)試?yán)缧盘?hào)燈B)設(shè)備重啟C)Web 服務(wù)重啟主頁(yè)功能概述1)檢查用戶訪問(wèn)權(quán)限。2)提供各子頁(yè)面的導(dǎo)航。A)設(shè)備運(yùn)行狀況B)項(xiàng)目狀況C)在線調(diào)試項(xiàng)目狀況概述客戶端服務(wù)器項(xiàng)目名稱按信道分類的設(shè)備列表顯示;系統(tǒng)轉(zhuǎn)發(fā)表實(shí)時(shí)信息顯示; 各設(shè)備中點(diǎn)的實(shí)時(shí)信息顯示;歷史數(shù)據(jù)庫(kù)
14、信息顯示在線調(diào)試概述1)數(shù)據(jù)包抓取、顯示;A)過(guò)濾器設(shè)置2)人工置數(shù);3)信息點(diǎn)配置信息修改;系統(tǒng)版本規(guī)劃各子模塊的版本應(yīng)采用x.yy形式。x表示大版本號(hào),在設(shè)計(jì)未做大的調(diào)整的情況下應(yīng)保持x不變,僅在模塊的設(shè)計(jì)發(fā)生大的變化、接口進(jìn)行調(diào)整、研發(fā)階段改變(a階段、B階段)時(shí)修改,且以步長(zhǎng)為1遞增;y表示小版本號(hào),在開(kāi)發(fā)者進(jìn)行bug修正、算法調(diào)整等不影響與其他模塊接口的情況下,以步長(zhǎng)為1遞增。x初步定為13,1表明研發(fā)階段,2表明系統(tǒng)測(cè)試階段,3表示發(fā)布階段。系統(tǒng)處理流程實(shí)時(shí)數(shù)據(jù)庫(kù)管理進(jìn)程1)通過(guò) DAI 讀取配置數(shù)據(jù)庫(kù)中的系統(tǒng)點(diǎn)表2)為點(diǎn)表信息分配共享內(nèi)存作為實(shí)時(shí)庫(kù)3)定時(shí)任務(wù):A)通過(guò) PAI
15、與守護(hù)進(jìn)程握手B)掃描接收緩沖,若存在數(shù)據(jù),將之保存;C)掃描實(shí)時(shí)庫(kù)a)若存在新信息,將之更新至發(fā)送緩沖;b)判斷是否更新歷史庫(kù)。若需更新,過(guò) DAI 將信息推送至歷史庫(kù)接收緩沖守護(hù)進(jìn)程1)進(jìn)行平臺(tái)初始化A)通過(guò) DAI 讀取配置數(shù)據(jù)庫(kù)B)通過(guò) HALI 配置硬件參數(shù)2)創(chuàng)建并注冊(cè)實(shí)時(shí)數(shù)據(jù)庫(kù)管理進(jìn)程3)創(chuàng)建并注冊(cè)歷史數(shù)據(jù)庫(kù)管理進(jìn)程4)創(chuàng)建并注冊(cè)前端通信規(guī)約進(jìn)程5)創(chuàng)建并注冊(cè)后端通信規(guī)約進(jìn)程6)創(chuàng)建并注冊(cè)其它進(jìn)程7)定時(shí)任務(wù):A)與主程序進(jìn)程握手;B)與創(chuàng)建的(子)進(jìn)程握手C)若對(duì)應(yīng)(子)進(jìn)程握手失敗,殺死進(jìn)程。根據(jù)配置庫(kù),重新創(chuàng)建并注冊(cè)新的進(jìn)程。1)定時(shí)任務(wù):A)通過(guò) PAI 與守護(hù)進(jìn)程握手B
16、)掃描歷史庫(kù)的接收緩沖區(qū),若存在新信息a)判斷點(diǎn)的類型b)通過(guò) DAI 將點(diǎn)的信息添加至歷史庫(kù)前端通信規(guī)約進(jìn)程1)通過(guò) DAI 讀取配置數(shù)據(jù)庫(kù)中信息2)配置規(guī)約各項(xiàng)參數(shù),綁定通信端口3)進(jìn)入循環(huán)工作模式A)定時(shí)通過(guò) PAI 與守護(hù)進(jìn)程握手B)按照規(guī)約設(shè)定獲取監(jiān)視方向信息C)通過(guò) PAI 更新實(shí)時(shí)庫(kù)D)通過(guò) PAI 獲取控制方向信息E)將控制信息發(fā)送至前端裝置后端通信規(guī)約進(jìn)程1)通過(guò) DAI 讀取配置數(shù)據(jù)庫(kù)中信息2)配置規(guī)約各項(xiàng)參數(shù),綁定通信端口3)進(jìn)入循環(huán)工作模式A)定時(shí)通過(guò) PAI 與守護(hù)進(jìn)程握手B)通過(guò) PAI 獲取監(jiān)視方向信息C)將監(jiān)視信息發(fā)送至后臺(tái)D)獲取控制方向信息E)將控制信息通過(guò)
17、 PAI 更新實(shí)時(shí)庫(kù)HALI 相關(guān)的規(guī)定:1)串口 ID:COM1COM6;2)網(wǎng)口 ID:ETH1ETH6;3)盡量采用 Bean 方式數(shù)據(jù)讀寫HALI硬件抽象層接口。作用描述:封裝底層所有的硬件相關(guān)的操作,向調(diào)用者提供硬件平臺(tái)無(wú)關(guān)的統(tǒng)一接口。接口包括:D 進(jìn)行端口參數(shù)設(shè)置;2)進(jìn)行端口數(shù)據(jù)接收;3)進(jìn)行端口數(shù)據(jù)發(fā)送;4),DAI數(shù)據(jù)庫(kù)訪問(wèn)接口。作用描述:封裝與數(shù)據(jù)庫(kù)表結(jié)構(gòu)、數(shù)據(jù)結(jié)構(gòu)等相關(guān)的 SQL 操作,封裝特定數(shù)據(jù)庫(kù)的驅(qū)動(dòng)函數(shù),向調(diào)用者提供數(shù)據(jù)庫(kù)無(wú)關(guān)的統(tǒng)一接口。接口包括:1)信息獲取;2)信息更新;3),PAI進(jìn)程訪問(wèn)接口。作用描述:封裝與操作系統(tǒng)相關(guān)的進(jìn)程通信操作,包括信號(hào)量通信和共享
18、內(nèi)存通信等,向用戶提供與實(shí)現(xiàn)方式無(wú)關(guān)的進(jìn)程間數(shù)據(jù)訪問(wèn)。接口包括:D 信號(hào)量的操作;2)共享內(nèi)存相關(guān)的操作;3)點(diǎn)信息的獲?。?)點(diǎn)信息的修改;5),圖3系統(tǒng)處理流程PCM 底層軟件概述1)底層 OS 運(yùn)行2)啟動(dòng)腳本編制3)QT 庫(kù)、MySql、Apache 服務(wù)器等軟件的移植安裝;啟動(dòng)腳本內(nèi)容應(yīng)包括:A)啟動(dòng) Web 服務(wù)B)啟動(dòng) SSH、FTP 服務(wù)C)加載應(yīng)用程序主程序1)啟動(dòng)守護(hù)進(jìn)程2)定時(shí)任務(wù):A)與守護(hù)進(jìn)程握手B)若握手失敗,重啟設(shè)備通用性接口模塊:1)硬件訪問(wèn)要通過(guò)硬件抽象層接口(HALI)進(jìn)行,目前涵蓋串口和網(wǎng)口;2)配置和歷史數(shù)據(jù)庫(kù)訪問(wèn)要通過(guò)數(shù)據(jù)庫(kù)訪問(wèn)接口(DAI)進(jìn)行;3)
19、進(jìn)程間數(shù)據(jù)通信要通過(guò)進(jìn)程訪問(wèn)接口(PAI)進(jìn)行,目前涵蓋守護(hù)進(jìn)程和實(shí)時(shí)庫(kù)進(jìn)程;歷史數(shù)據(jù)庫(kù)管理進(jìn)程IIPAI 相關(guān)的規(guī)定:1)盡量采用 Bean 方式數(shù)據(jù)讀寫DAI 相關(guān)的規(guī)定:1)歷史庫(kù)名;HIS_DB;2)配置庫(kù)名:CONF_DB;3)盡量采用 Bean 方出數(shù)據(jù)讀寫圖3描述了PCM從上電到運(yùn)行的大致過(guò)程,基本涵蓋了圖1中的所有功能模塊。由于CGI模塊由Web服務(wù)器調(diào)用,且主要以函數(shù)庫(kù)的形式向Web服務(wù)器提供接口,故而未在圖中進(jìn)行描述。CGI模塊具體包含的接口不在本文檔的說(shuō)明范圍內(nèi),請(qǐng)參見(jiàn)其設(shè)計(jì)文檔。子系統(tǒng)說(shuō)明實(shí)時(shí)數(shù)據(jù)庫(kù) RDBRDBRDB是PCM中存儲(chǔ)實(shí)時(shí)SCADA信息的功能模塊。在監(jiān)視方
20、向上,前端通信規(guī)約進(jìn)程將采集的SCADA信息存入RDB,由后端通信規(guī)約進(jìn)程取出后,以另一種規(guī)約格式進(jìn)行封裝后轉(zhuǎn)發(fā)至綜自后臺(tái);在控制方向上,則進(jìn)行上述操作的逆操作。由于PCM前端裝置和PCM后臺(tái)系統(tǒng)之間通常采用不同速率的物理通信方式,RDB實(shí)際上還起到同步異步時(shí)鐘域的作用。RDB要同時(shí)處理多個(gè)通信規(guī)約進(jìn)程的訪問(wèn),它的關(guān)鍵質(zhì)量屬性是性能,特別是數(shù)據(jù)存取速度。系統(tǒng)設(shè)計(jì)方案考慮了以下兩點(diǎn)來(lái)保證RDB的性能屬性:.PCM系統(tǒng)采用多進(jìn)程方式的設(shè)計(jì),且RDB牽涉大量數(shù)據(jù)的交互,因此在設(shè)計(jì)方案中采用進(jìn)程間通信技術(shù)中速度最快、適合大規(guī)模數(shù)據(jù)交互的共享內(nèi)存技術(shù)來(lái)作為RDB的實(shí)現(xiàn)技術(shù)。.RDB主要保存系統(tǒng)的點(diǎn)表信息
21、,點(diǎn)表信息在確定后基本不會(huì)改變,那么在數(shù)據(jù)存儲(chǔ)的組織上,方案建議RDB采用數(shù)組方式而不是鏈表方式來(lái)組織信息的存放。這樣雖然犧牲了動(dòng)態(tài)增添點(diǎn)表的能力,但是保證了信息存取的速度一一對(duì)RDB中點(diǎn)信息的訪問(wèn),只要通過(guò)特定的算法計(jì)算出數(shù)組下標(biāo)即可一步定位到所需數(shù)據(jù)。歷史數(shù)據(jù)庫(kù) HDBHDBHDB記錄PCM在運(yùn)行過(guò)程中接收到的特定SCADA信息,例如SOE事件、遙控操作等,這些特殊SCADA信息來(lái)自于RDB。HDB的關(guān)鍵質(zhì)量屬性是安全性,還要考慮對(duì)RDB性能的影響。HDB的安全性主要是指它的內(nèi)容只能由RDB寫入,且一旦寫入就不可修改刪除。HDB在實(shí)現(xiàn)上是以文件形式存在,由HDB管理進(jìn)程管理。HDB管理進(jìn)程
22、應(yīng)僅在需要寫入信息時(shí)將HDB文件的屬性設(shè)為可寫,其余時(shí)間都設(shè)為只讀。由于HDB以文件形式存在,寫操作相對(duì)寫內(nèi)存來(lái)說(shuō)是低速的。為避免對(duì)RDB的性能影響,方案設(shè)計(jì)建議HDB管理進(jìn)程配備寫緩沖。在寫入歷史信息時(shí),RDB將信息推送至寫緩沖,由HDB管理進(jìn)程負(fù)責(zé)將信息寫入文件。配備寫緩沖還可以防止突發(fā)歷史信息的丟失。通信規(guī)約模塊通信規(guī)約模塊負(fù)責(zé)采集、轉(zhuǎn)發(fā)系統(tǒng)SCADA信息,分為前端通信規(guī)約模塊和后端通信規(guī)約模塊。換句話說(shuō), 每個(gè)通信規(guī)約都有client和server兩種工作模式。 通信規(guī)約模塊負(fù)責(zé)PCM上一個(gè)特定物理通信端口的數(shù)據(jù)通信。在PCM系統(tǒng)設(shè)計(jì)中,通信規(guī)約模塊應(yīng)負(fù)責(zé)各種ASDU數(shù)據(jù)的分析,并實(shí)現(xiàn)
23、為保證通信質(zhì)量所規(guī)定的一系列通信保障措施。工程應(yīng)用的多樣性決定了通信規(guī)約模塊的關(guān)鍵質(zhì)量屬性是可擴(kuò)展性。通信規(guī)約模塊的可擴(kuò)展性體現(xiàn)在規(guī)約參數(shù)的可定制方面。由于每個(gè)規(guī)約實(shí)例對(duì)應(yīng)的參數(shù)都不一樣,且規(guī)約參數(shù)是通過(guò)配置工具在CDB中定制的,那么它不包含在本文說(shuō)明范圍內(nèi)。具體請(qǐng)參見(jiàn)CDB設(shè)計(jì)文檔和配置工具設(shè)計(jì)文檔。輔助模塊輔助模塊主要指硬件抽象層HAL、數(shù)據(jù)庫(kù)訪問(wèn)接口DAI和進(jìn)程訪問(wèn)接口PAI。輔助模塊的引入主要是為了降低PCM軟件與平臺(tái)硬件、操作系統(tǒng)、數(shù)據(jù)庫(kù)系統(tǒng)的耦合,為系統(tǒng)擴(kuò)展、平臺(tái)移植預(yù)留空間。輔助模塊的關(guān)鍵質(zhì)量屬性是可擴(kuò)展性和可移植性。在可擴(kuò)展性方面,方案建議輔助模塊采用C+的多態(tài)技術(shù)實(shí)現(xiàn),這樣可
24、以方便地?cái)U(kuò)展已有接口,不影響前期使用已有接口的模塊;另外,與具體硬件操作、操作系統(tǒng)函數(shù)調(diào)用、具體數(shù)據(jù)庫(kù)表結(jié)構(gòu)的訪問(wèn)也應(yīng)封裝在輔助模塊中,使得輔助模塊具有接口適配器的作用,這樣在更換底層軟件、跨平臺(tái)移植、修改表結(jié)構(gòu)、功能模塊并行開(kāi)發(fā)的時(shí)候,只需修改相應(yīng)的輔助模塊即可,不會(huì)對(duì)其他模塊產(chǎn)生影響。守護(hù)進(jìn)程模塊守護(hù)進(jìn)程模塊負(fù)責(zé)監(jiān)視PCM運(yùn)行中的通信規(guī)約進(jìn)程、RDB管理進(jìn)程、HDB管理進(jìn)程等多個(gè)進(jìn)程的運(yùn)行狀態(tài),在異常情況發(fā)生時(shí),通過(guò)特定處理來(lái)保證系統(tǒng)繼續(xù)正常運(yùn)行。守護(hù)進(jìn)程模塊是系統(tǒng)可靠性的根基,它的關(guān)鍵質(zhì)量屬性是可靠性。方案設(shè)計(jì)中,為保證守護(hù)進(jìn)程的可靠性做了兩方面的工作。一方面,守護(hù)進(jìn)程的功能被壓縮到最低
25、,它只負(fù)責(zé)其他進(jìn)程的加載、注冊(cè)和監(jiān)視,并對(duì)異常進(jìn)程進(jìn)行統(tǒng)一的killrestart操作,這就使得代碼的實(shí)現(xiàn)復(fù)雜度大為降低,減少了出錯(cuò)的可能;另一方面,方案設(shè)計(jì)守護(hù)進(jìn)程由主進(jìn)程進(jìn)行監(jiān)視,一旦發(fā)生異常,將采用比killrestart更高級(jí)別的系統(tǒng)重啟方式來(lái)徹底消除隱患。通用網(wǎng)關(guān)接口模塊 CGICGICGI模塊主要負(fù)責(zé)處理PCM的在線調(diào)試功能,它和系統(tǒng)中的其它模塊相對(duì)獨(dú)立,由PCM中的Web服務(wù)器調(diào)用。從使用角度來(lái)看,CGI模塊是給Web服務(wù)提供特定功能的函數(shù)庫(kù)。由于PCM的在線調(diào)試功能可以修改RDB和CDB中的部分信息,因此CGI模塊的關(guān)鍵質(zhì)量屬性是安全性。為保證CGI模塊的安全性,方案設(shè)計(jì)采用基
26、于角色的訪問(wèn)控制機(jī)制。任何用戶在使用網(wǎng)頁(yè)登錄PCM進(jìn)行相關(guān)操作前,都需要驗(yàn)證其身份。此外,用戶的身份信息在CDB中應(yīng)以密文形式保存。系統(tǒng)數(shù)據(jù)結(jié)構(gòu)設(shè)計(jì)邏輯結(jié)構(gòu)設(shè)計(jì)要點(diǎn)數(shù)據(jù)結(jié)構(gòu)的設(shè)計(jì)與數(shù)據(jù)庫(kù)表結(jié)構(gòu)有關(guān)。具體請(qǐng)參見(jiàn)項(xiàng)目相關(guān)的數(shù)據(jù)庫(kù)表設(shè)計(jì)文檔及相關(guān)功能模塊的設(shè)計(jì)文檔。物理結(jié)構(gòu)設(shè)計(jì)要點(diǎn)參見(jiàn)項(xiàng)目相關(guān)的數(shù)據(jù)庫(kù)表設(shè)計(jì)文檔和功能模塊設(shè)計(jì)文檔。數(shù)據(jù)與子系統(tǒng)關(guān)系具體請(qǐng)參見(jiàn)相關(guān)功能模塊的設(shè)計(jì)文檔。開(kāi)發(fā)和運(yùn)行環(huán)境硬件環(huán)境開(kāi)發(fā)本軟件系統(tǒng)所需的硬件環(huán)境為:Inteli3處理器、2GRAM、80G硬盤。本軟件系統(tǒng)對(duì)實(shí)際運(yùn)行環(huán)境的最低要求為:ARM9處理器400MHz、64MROM、64MRAM或同級(jí)別工控機(jī)。軟件環(huán)境操作系統(tǒng)
27、:Linux內(nèi)核;數(shù)據(jù)庫(kù)系統(tǒng):MySql5.0;開(kāi)發(fā)工具:Qt4.8.2、PHP5.5JavaScriptECMA5;編譯器:gcc/g+4.3.3、arm-linux-gcc4.4.3;虛擬機(jī):VMWareWorkstation8.0;Web服務(wù)器:Apache2.4軟件可運(yùn)行于虛擬機(jī)系統(tǒng)上,經(jīng)過(guò)PC機(jī)的交叉編譯后,運(yùn)行于ARM9平臺(tái)c外購(gòu)件分析暫無(wú)??煽啃栽O(shè)計(jì)軟件設(shè)計(jì)在兩方面對(duì)可靠性進(jìn)行了保障。首先,軟件系統(tǒng)被劃分為多個(gè)功能模塊,每個(gè)功能模塊以單獨(dú)進(jìn)程方式運(yùn)行,通過(guò)進(jìn)程間通信技術(shù)進(jìn)行信息交互。某個(gè)進(jìn)程在發(fā)生異常時(shí),不會(huì)影響到其他進(jìn)程,使得問(wèn)題能被有效控制隔離。其次,系統(tǒng)設(shè)計(jì)
28、了守護(hù)進(jìn)程模塊,能夠?qū)Ω鱾€(gè)運(yùn)行的進(jìn)程進(jìn)行主動(dòng)監(jiān)測(cè)。一且異常發(fā)生,守護(hù)進(jìn)程會(huì)采取終止異常進(jìn)程、重新加載功能模塊的方式進(jìn)行錯(cuò)誤恢復(fù)。守護(hù)進(jìn)程本身也被監(jiān)視,一旦發(fā)生異常會(huì)采用設(shè)備重啟的方式來(lái)恢復(fù)整個(gè)PCM系統(tǒng)??蓽y(cè)試性設(shè)計(jì)在測(cè)試方面建議采用自底向上的方法,這樣能夠盡可能多地發(fā)現(xiàn)設(shè)計(jì)和實(shí)現(xiàn)上的錯(cuò)誤。首先,每個(gè)功能模塊(類/庫(kù)函數(shù))都需要進(jìn)行單元測(cè)試。單元測(cè)試包括庫(kù)函數(shù)使用的子函數(shù)、類包含的成員函數(shù),主要關(guān)注函數(shù)的輸入輸出、異常處理是否在落在設(shè)計(jì)范圍之內(nèi)。在子函數(shù)、成員函數(shù)測(cè)試通過(guò)的基礎(chǔ)上,完成對(duì)整個(gè)功能模塊(類/庫(kù)函數(shù))功能的測(cè)試。其次,在單元測(cè)試的基礎(chǔ)上,對(duì)多個(gè)功能模塊進(jìn)行合成測(cè)試。合成測(cè)試主要測(cè)試
29、模塊之間接口的正確性和完備性。再次,在合成測(cè)試的基礎(chǔ)上,對(duì)所有功能模塊進(jìn)行整合,進(jìn)行系統(tǒng)測(cè)試。系統(tǒng)測(cè)試主要測(cè)試軟件的功能是否完備, 是否滿足軟件需求的可追蹤性。 系統(tǒng)測(cè)試需要在真實(shí)的物理平臺(tái)上運(yùn)行軟件系統(tǒng)。安全性設(shè)計(jì)PCM運(yùn)行于相對(duì)封閉的電力系統(tǒng)網(wǎng)絡(luò)環(huán)境中,具安全性主要體現(xiàn)在加密、安全審計(jì)和訪問(wèn)控制上。加密方面, 用戶信息在CDB中不是以明文形式存放, 而是用戶信息的密文形式。 在需要的時(shí)候,用戶輸入口令,由PCM進(jìn)程進(jìn)行驗(yàn)算核對(duì)。在訪問(wèn)控制方面,PCM軟件采用基于角色的訪問(wèn)控制策略,用戶使用瀏覽器訪問(wèn)PCM時(shí),需要提供身份信息,并且在通過(guò)Web頁(yè)面進(jìn)行特定操作,例如重啟設(shè)備、人工置數(shù)、修改點(diǎn)
30、表信息時(shí),都會(huì)被網(wǎng)關(guān)進(jìn)程進(jìn)行權(quán)限驗(yàn)證。安全審計(jì)方面,PCM的HDB模塊會(huì)有一些關(guān)鍵操作的記錄,例如遙控操作、人工置數(shù)、設(shè)備重啟等,且這些記錄對(duì)用戶是只讀的,能夠在需要的時(shí)候提供審計(jì)證據(jù)。出錯(cuò)處理設(shè)計(jì)模塊的調(diào)試信息輸出應(yīng)受到統(tǒng)一控制。在系統(tǒng)軟件運(yùn)行于調(diào)試版本時(shí),對(duì)于一般的邏輯錯(cuò)誤,模塊將出錯(cuò)信息輸出至PCM系統(tǒng)控制臺(tái)(Linux的console),用戶通過(guò)SSH工具、Telnet工具可以訪問(wèn)這些調(diào)試信息。對(duì)于嚴(yán)重的進(jìn)程異常,由守護(hù)進(jìn)程實(shí)行killrestart操作完成錯(cuò)誤恢復(fù)。設(shè)計(jì)依據(jù)與需求跟蹤需求說(shuō)明書(shū)中的4.1.9和4.1.10是配置工具相關(guān),不屬于本文檔說(shuō)明范圍需求說(shuō)明書(shū)對(duì)應(yīng)章節(jié)帚求編 p
31、 及名稱總體設(shè)計(jì)對(duì)應(yīng)章節(jié)4.1.1SR-PCMES-F-0010PCMES的上電初始化SR-PCMES-F-0020SCADA信息采集轉(zhuǎn)發(fā)2.1、2.5、.3SR-PCMES-F-0030日志記錄及查有2.1、2.3.3、.4SR-PCMES-F-0040PCM出廠測(cè)試.5SR-PCMES-F-0050基于角色的訪問(wèn)控制機(jī)制2.3.3、2.6.6、SR-PCMES-F-0060災(zāi)難自恢復(fù)2.2、2.5、2.6.5、2.9、SR-PCMES-F-0070實(shí)時(shí)數(shù)據(jù)庫(kù)訪問(wèn)管理2.2、2.5、2.6.1
32、、.8SR-PCMES-F-0080在線調(diào)試功能2.2、2.3.3、2.6.6第 3 3 篇系統(tǒng)運(yùn)行說(shuō)明配置說(shuō)明PCM的配置定制具有高度靈活性,與具體的工程應(yīng)用有關(guān)。PCM在運(yùn)行前,首先應(yīng)當(dāng)由配置工具生成CDB,描述采用的通信規(guī)約、系統(tǒng)設(shè)備、通道參數(shù)等,并由配置工具將CDB及相關(guān)的規(guī)約庫(kù)模塊下載至PCMo配置工具相關(guān)描述不在本文檔范圍內(nèi),請(qǐng)參見(jiàn)相關(guān)設(shè)計(jì)文檔。PCM運(yùn)行后,由守護(hù)進(jìn)程加載各通信規(guī)約進(jìn)程,并按照CDB中的描述進(jìn)行通信端口初始化、通信規(guī)約定制等操作。系統(tǒng)應(yīng)用方式PCM可應(yīng)用到需要進(jìn)行Modbus、IEC61850-5-103等電力系統(tǒng)通信規(guī)約轉(zhuǎn)換的工程應(yīng)用項(xiàng)目中。配置
33、工程師需要通過(guò)配置工具提供PCM所需的CDB,CDB中應(yīng)包含系統(tǒng)的裝置、通道、點(diǎn)表等工程相關(guān)信息。第 4 4 篇技術(shù)方案總結(jié)4.14.1 關(guān)鍵技術(shù)問(wèn)題說(shuō)明系統(tǒng)設(shè)計(jì)和開(kāi)發(fā)過(guò)程中,需要掌握如下關(guān)鍵技術(shù):1)Linux進(jìn)程間通信技術(shù),包括信號(hào)量、Socket和共享內(nèi)存;2)網(wǎng)絡(luò)通信,Socket編程,Linux下的串口、網(wǎng)口驅(qū)動(dòng);3)關(guān)系數(shù)據(jù)庫(kù)設(shè)計(jì)及訪問(wèn)、XML技術(shù);Web服務(wù)器相關(guān)配置,JavaScriptPHP;C+、Qt編程;嵌入式Linux的移植、定制。關(guān)系數(shù)據(jù)庫(kù)的設(shè)計(jì)是項(xiàng)目的關(guān)鍵所在,需要關(guān)注表結(jié)構(gòu)的設(shè)計(jì)是否涵蓋所有系統(tǒng)需求。若開(kāi)發(fā)至后期進(jìn)行表結(jié)構(gòu)調(diào)整,將會(huì)對(duì)項(xiàng)目質(zhì)量產(chǎn)生較大影響。在系統(tǒng)設(shè)計(jì)上,盡管使用DAI模塊封裝具體的表結(jié)構(gòu)訪問(wèn)操作,可以減小這種風(fēng)險(xiǎn)發(fā)生時(shí)的影響,還是需要在設(shè)計(jì)階段對(duì)數(shù)據(jù)庫(kù)進(jìn)行較多關(guān)注。Linux進(jìn)程間通信技術(shù)是各功能模塊配合運(yùn)行的關(guān)鍵。RDB模塊主要采用共享內(nèi)存技術(shù),守護(hù)進(jìn)程模塊
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 環(huán)境工程制圖課件
- 手抄報(bào)清明節(jié)插畫設(shè)計(jì)
- 藤編材料供應(yīng)鏈管理考核試卷
- 教育熱點(diǎn)閱讀課件
- 湖南高速安全運(yùn)維部
- 2019-2025年施工員之設(shè)備安裝施工基礎(chǔ)知識(shí)通關(guān)提分題庫(kù)及完整答案
- 畢業(yè)生設(shè)計(jì)書(shū)吧方案規(guī)劃
- 文明德育建設(shè)實(shí)施路徑與創(chuàng)新實(shí)踐
- 制藥工程課程設(shè)計(jì)
- 小學(xué)生暑期交通安全教育
- 統(tǒng)編版2024-2025第二學(xué)期小學(xué)六年級(jí)期末語(yǔ)文測(cè)試卷(有答案)
- 《測(cè)繪生產(chǎn)成本費(fèi)用定額》(2025版)
- 大部分分校:地域文化形考任務(wù)四-國(guó)開(kāi)(CQ)-國(guó)開(kāi)期末復(fù)習(xí)資料
- 《新能源汽車》課件 課題四 純電動(dòng)汽車
- 《建筑工程設(shè)計(jì)文件編制深度規(guī)定》(2022年版)
- 2024年共青團(tuán)入團(tuán)積極分子考試題庫(kù)(附答案)
- 硬筆書(shū)法練習(xí)用紙A4打印模板
- 中國(guó)民用航空通信導(dǎo)航監(jiān)視系統(tǒng)運(yùn)行、維護(hù)規(guī)程
- 5000噸干貨船設(shè)計(jì)總體方案及第三部分
- fx-991cnx計(jì)算器說(shuō)明書(shū)
- 魔法奇緣英文腳本臺(tái)詞
評(píng)論
0/150
提交評(píng)論