本發(fā)明屬于嵌入式系統(tǒng)應(yīng)用技術(shù)領(lǐng)域,特別涉及一種嵌入式繼電保護(hù)設(shè)備的仿真方法及系統(tǒng)。
背景技術(shù):
隨著電網(wǎng)規(guī)模的不斷擴(kuò)大,系統(tǒng)的結(jié)構(gòu)越來越復(fù)雜,對(duì)系統(tǒng)的保護(hù)也隨之大量增加和越來越重要,同時(shí),局部電網(wǎng)發(fā)生故障的概率大大增加,電網(wǎng)故障的波及面也越來越大。另一方面隨著電網(wǎng)間聯(lián)系日益加強(qiáng),在電網(wǎng)發(fā)生故障時(shí)會(huì)有大量的信息要傳輸,這就要求專業(yè)保護(hù)人員的關(guān)注和要處理的信息會(huì)成倍增加,增大電網(wǎng)調(diào)度運(yùn)行人員在判斷事故性質(zhì)和處理事故并恢復(fù)系統(tǒng)運(yùn)行的難度,這將在客觀上加大電網(wǎng)運(yùn)行人員的管理難度。
隨著微電子技術(shù)、信息技術(shù)、網(wǎng)絡(luò)通信技術(shù)的發(fā)展,我國智能電網(wǎng)已進(jìn)入全面建設(shè)時(shí)期,智能變電站系統(tǒng)所占的市場(chǎng)份額快速增長(zhǎng),嵌入式繼電保護(hù)設(shè)備的數(shù)據(jù)存儲(chǔ)、網(wǎng)絡(luò)通信、數(shù)據(jù)的處理能力使對(duì)電網(wǎng)事故、保護(hù)裝置動(dòng)作進(jìn)行及時(shí)有效的分析成為可能。繼電保護(hù)設(shè)備所有信息,包括設(shè)備的運(yùn)行信息、保護(hù)動(dòng)作信息、保護(hù)定值信息、網(wǎng)絡(luò)通信信息等,這些信息時(shí)電網(wǎng)事故分析和處理的基礎(chǔ)信息,已完成對(duì)電網(wǎng)故障分析及保護(hù)動(dòng)作行為的判斷,為智能化調(diào)度的建設(shè)與實(shí)現(xiàn)提供重要的技術(shù)支撐平臺(tái),繼電保護(hù)故障信息處理信息系統(tǒng)的建設(shè)時(shí)技術(shù)和應(yīng)用發(fā)展的必然選擇。
但是在對(duì)繼電保護(hù)設(shè)備進(jìn)行調(diào)試及測(cè)試時(shí),需要大量的硬件參與進(jìn)去,在調(diào)試時(shí)不易控制,不能夠擺脫硬件的限制,定位問題時(shí)不夠直觀及準(zhǔn)確,而且對(duì)調(diào)試環(huán)境的需求也相應(yīng)增加,新產(chǎn)品開發(fā)前期因硬件的功能、性能及其穩(wěn)定性還沒有得到驗(yàn)證,不能投入太高的成本進(jìn)行生產(chǎn)。
因此,需要軟件平臺(tái)對(duì)嵌入式繼電保護(hù)設(shè)備進(jìn)行仿真,更直觀的進(jìn)行調(diào)試及測(cè)試。
技術(shù)實(shí)現(xiàn)要素:
本發(fā)明的目的在于提供一種嵌入式繼電保護(hù)設(shè)備的仿真方法及系統(tǒng),用于解決對(duì)繼電保護(hù)設(shè)備進(jìn)行調(diào)試及測(cè)試時(shí)由于大量硬件參與進(jìn)去造成調(diào)試及測(cè)試結(jié)果不準(zhǔn)確的問題。
為實(shí)現(xiàn)上述目的,本發(fā)明的技術(shù)方案是:
一種嵌入式繼電保護(hù)設(shè)備的仿真方法,包括以下步驟:
根據(jù)繼電保護(hù)設(shè)備所用嵌入式操作系統(tǒng)函數(shù)與pc仿真裝置所用函數(shù)的映射關(guān)系,建立仿真時(shí)的操作系統(tǒng)函數(shù)對(duì)應(yīng)表,主模塊和分模塊共用所述操作系統(tǒng)函數(shù)對(duì)應(yīng)表;
主模塊創(chuàng)建模塊管理句柄,完成對(duì)所述分模塊的加載操作;
通過定時(shí)器模擬采樣中斷,檢測(cè)緩沖區(qū)的數(shù)據(jù),實(shí)現(xiàn)硬采樣功能;
將設(shè)置好的開入量存放到內(nèi)存中,實(shí)現(xiàn)硬開入功能;
將繼電保護(hù)設(shè)備的地址映射到pc內(nèi)存上,通過解析嵌入式繼電保護(hù)設(shè)備配置界面菜單生成的菜單文件信息獲取pc仿真裝置菜單,實(shí)現(xiàn)pc仿真裝置的界面可視化;
在pc仿真裝置中建立一個(gè)文件,作為pc仿真裝置的虛擬磁盤使用,實(shí)現(xiàn)文件系統(tǒng)功能;
根據(jù)繼電保護(hù)設(shè)備進(jìn)行邏輯仿真時(shí)所需的變量地址與pc仿真裝置所有變量地址的映射關(guān)系,建立邏輯仿真時(shí)的變量地址對(duì)應(yīng)表,實(shí)現(xiàn)邏輯仿真功能。
進(jìn)一步地,還在pc仿真裝置中創(chuàng)建虛擬網(wǎng)卡,與pc機(jī)的網(wǎng)卡綁定,以實(shí)現(xiàn)與外部設(shè)備進(jìn)行網(wǎng)絡(luò)數(shù)據(jù)的交互。
進(jìn)一步地,所述模塊管理句柄包括配置文件名稱、模塊特征字、模塊文件名稱及模塊入口信息。
進(jìn)一步地,利用定時(shí)器模擬采樣中斷時(shí),將周波采樣點(diǎn)數(shù)與采樣周期毫秒數(shù)的最大公約數(shù)記為y,當(dāng)中斷次數(shù)為采樣周期與y的商的整數(shù)倍時(shí),產(chǎn)生的數(shù)據(jù)個(gè)數(shù)為每周波采樣點(diǎn)數(shù)與y的商減去采樣周期與y的商加1。
進(jìn)一步地,利用定時(shí)器實(shí)時(shí)采樣數(shù)據(jù),若采樣中斷發(fā)生時(shí),判斷數(shù)據(jù)更新計(jì)數(shù)器是否發(fā)生變化,若發(fā)生變化,對(duì)數(shù)據(jù)進(jìn)行更新。
本發(fā)明還提供了一種嵌入式繼電保護(hù)設(shè)備的pc仿真系統(tǒng),在pc機(jī)中:根據(jù)繼電保護(hù)設(shè)備所用嵌入式操作系統(tǒng)函數(shù)與pc仿真裝置所用函數(shù)的映射關(guān)系,建立仿真時(shí)的操作系統(tǒng)函數(shù)對(duì)應(yīng)表,主模塊和分模塊共用所述操作系統(tǒng)函數(shù)對(duì)應(yīng)表;
主模塊創(chuàng)建模塊管理句柄,完成對(duì)所述分模塊的加載操作;
通過定時(shí)器模擬采樣中斷,檢測(cè)緩沖區(qū)的數(shù)據(jù),實(shí)現(xiàn)硬采樣功能;
將設(shè)置好的開入量存放到內(nèi)存中,實(shí)現(xiàn)硬開入功能;
將繼電保護(hù)設(shè)備的地址映射到pc內(nèi)存上,通過解析嵌入式繼電保護(hù)設(shè)備配置界面菜單生成的菜單文件信息獲取pc仿真裝置菜單,實(shí)現(xiàn)pc仿真裝置的界面可視化;
在pc仿真裝置中建立一個(gè)文件,作為pc仿真裝置的虛擬磁盤使用,實(shí)現(xiàn)文件系統(tǒng)功能;
根據(jù)繼電保護(hù)設(shè)備進(jìn)行邏輯仿真時(shí)所需的變量地址與pc仿真裝置所有變量地址的映射關(guān)系,建立邏輯仿真時(shí)的變量地址對(duì)應(yīng)表,實(shí)現(xiàn)邏輯仿真功能。
進(jìn)一步地,還在pc仿真裝置中創(chuàng)建虛擬網(wǎng)卡,與pc機(jī)的網(wǎng)卡綁定,以實(shí)現(xiàn)與外部設(shè)備進(jìn)行網(wǎng)絡(luò)數(shù)據(jù)的交互。
進(jìn)一步地,所述模塊管理句柄包括配置文件名稱、模塊特征字、模塊文件名稱及模塊入口信息。
進(jìn)一步地,利用定時(shí)器模擬采樣中斷時(shí),將周波采樣點(diǎn)數(shù)與采樣周期毫秒數(shù)的最大公約數(shù)記為y,當(dāng)中斷次數(shù)為采樣周期與y的商的整數(shù)倍時(shí),產(chǎn)生的數(shù)據(jù)個(gè)數(shù)為每周波采樣點(diǎn)數(shù)與y的商減去采樣周期與y的商加1。
進(jìn)一步地,利用定時(shí)器實(shí)時(shí)采樣數(shù)據(jù),若采樣中斷發(fā)生時(shí),判斷數(shù)據(jù)更新計(jì)數(shù)器是否發(fā)生變化,若發(fā)生變化,對(duì)數(shù)據(jù)進(jìn)行更新。
本發(fā)明的有益效果是:
本發(fā)明首先建立仿真時(shí)的操作系統(tǒng)函數(shù)對(duì)應(yīng)表;主模塊創(chuàng)建模塊管理句柄,完成對(duì)分模塊的加載操作;通過定時(shí)器模擬采樣中斷,檢測(cè)緩沖區(qū)的數(shù)據(jù),實(shí)現(xiàn)硬采樣功能;將設(shè)置好的開入量存放到內(nèi)存中,實(shí)現(xiàn)硬開入功能;將繼電保護(hù)設(shè)備的地址映射到pc內(nèi)存上,實(shí)現(xiàn)pc仿真裝置的界面可視化;在pc仿真裝置中建立一個(gè)文件,作為pc仿真裝置的虛擬磁盤使用,實(shí)現(xiàn)文件系統(tǒng)功能;根據(jù)繼電保護(hù)設(shè)備進(jìn)行邏輯仿真時(shí)所需的變量地址與pc仿真裝置所有變量地址的映射關(guān)系,建立邏輯仿真時(shí)的變量地址對(duì)應(yīng)表,實(shí)現(xiàn)邏輯仿真功能。本發(fā)明在對(duì)繼電保護(hù)設(shè)備進(jìn)行調(diào)試及測(cè)試與硬件及性能無關(guān)的功能時(shí),可以脫離硬件,不受硬件的限制,同時(shí)定位問題更加直觀及準(zhǔn)確。
附圖說明
圖1為主模塊加載其他分模塊的流程圖;
圖2為pc仿真裝置界面效果圖;
圖3為pc仿真裝置主流程圖;
圖4為邏輯仿真監(jiān)視全局狀態(tài)界面效果圖。
具體實(shí)施方式
下面結(jié)合附圖對(duì)本發(fā)明的具體實(shí)施方式作進(jìn)一步的說明:
本發(fā)明的一種嵌入式繼電保護(hù)設(shè)備的仿真方法的實(shí)施例:
一種嵌入式繼電保護(hù)設(shè)備的仿真方法,如圖3所示,包括如下步驟:
1、建立操作系統(tǒng)函數(shù)鏈表:將繼電保護(hù)設(shè)備所用嵌入式操作系統(tǒng)函數(shù)在pc上實(shí)現(xiàn),將嵌入式繼電保護(hù)設(shè)備所用的嵌入式操作系統(tǒng)函數(shù)找到與pc系統(tǒng)中函數(shù)的對(duì)應(yīng)關(guān)系,在pc系統(tǒng)中將嵌入式操作系統(tǒng)函數(shù)重新實(shí)現(xiàn),建立操作系統(tǒng)函數(shù)鏈表;然后選定一主模塊,添加操作系統(tǒng)函數(shù)表源碼,主模塊按名稱注冊(cè)操作系統(tǒng)函數(shù)鏈表,其它分模塊均通過函數(shù)表名稱獲取操作系統(tǒng)函數(shù),整個(gè)pc仿真系統(tǒng)共用一套操作系統(tǒng)函數(shù)表。
2、文件系統(tǒng)初始化:在pc仿真系統(tǒng)中建立一個(gè)特定名稱的文件,作為pc仿真系統(tǒng)的虛擬磁盤使用;嵌入式繼電保護(hù)設(shè)備文件系統(tǒng)中對(duì)實(shí)際物理存儲(chǔ)介質(zhì)的操作,在pc仿真系統(tǒng)中是對(duì)此虛擬磁盤進(jìn)行操作。
3、對(duì)分模塊加載操作,如圖1所示:主模塊中通過解析指定配置文件,配置文件包括主節(jié)點(diǎn)和分節(jié)點(diǎn),其中主節(jié)點(diǎn)為內(nèi)部定義的模塊名稱,分節(jié)點(diǎn)為模塊文件名稱,獲取其它分模塊的信息,創(chuàng)建模塊管理句柄,添加到模塊管理句柄鏈表中。模塊管理句柄包括:模塊名稱、模塊文件名稱及模塊入口函數(shù)信息;模塊入口函數(shù)包含:兩個(gè)特征字,大小端模式及三個(gè)模塊初始化函數(shù);三個(gè)函數(shù)分別為:模塊鏈接函數(shù)、模塊初始化函數(shù)及模塊引導(dǎo)后處理函數(shù)。
4、創(chuàng)建模塊管理句柄成功后,調(diào)用模塊鏈接函數(shù),主要進(jìn)行模塊間函數(shù)表的傳遞;鏈接完成后調(diào)用模塊初始化函數(shù),主要進(jìn)行模塊中所要進(jìn)行的操作系統(tǒng)信息的創(chuàng)建如定時(shí)器、任務(wù)等;在所有的模塊均初始化完成后,進(jìn)入到任務(wù)運(yùn)行前調(diào)用模塊引導(dǎo)后處理函數(shù),主要進(jìn)行模塊間有依賴關(guān)系又不能在運(yùn)行期進(jìn)行的操作處理;所有模塊在執(zhí)行完模塊引導(dǎo)后處理函數(shù)后,開放所有任務(wù),操作系統(tǒng)根據(jù)任務(wù)的優(yōu)先級(jí)和時(shí)間片進(jìn)行循環(huán)調(diào)度。
5、實(shí)現(xiàn)硬采樣功能,在pc仿真系統(tǒng)中創(chuàng)建一個(gè)毫秒定時(shí)器來模擬硬采樣中斷,每毫秒產(chǎn)生一個(gè)采樣中斷信號(hào);此中斷中根據(jù)不同的通道類型,產(chǎn)生不同形式的數(shù)據(jù),若為交流通道通過有效值產(chǎn)生正弦波數(shù)據(jù),若為直流通道直接為有效值。一般情況下一次中斷每通道產(chǎn)生一個(gè)數(shù)據(jù),為使數(shù)據(jù)均勻(將周波采樣點(diǎn)數(shù)與采樣周期毫秒數(shù)的最大公約數(shù)記為y),當(dāng)中斷次數(shù)為采樣周期毫秒數(shù)與y的商的整數(shù)倍時(shí),產(chǎn)生的數(shù)據(jù)個(gè)數(shù)為每周波采樣點(diǎn)數(shù)與y的商減去采樣周期毫秒數(shù)與y的商加一。
數(shù)據(jù)有效值通過專用界面設(shè)置給pc仿真系統(tǒng),為增強(qiáng)數(shù)據(jù)的實(shí)時(shí)性,界面與pc仿真裝置間直接通過函數(shù)調(diào)用的方式,當(dāng)在界面上啟動(dòng)設(shè)置量值后,調(diào)用pc仿真裝置提供的設(shè)置函數(shù),將數(shù)據(jù)設(shè)置到緩沖區(qū)中,調(diào)整數(shù)據(jù)更新計(jì)數(shù)器,采樣中斷發(fā)生時(shí),判斷數(shù)據(jù)更新計(jì)數(shù)器是否發(fā)生變化,若發(fā)生變化,將所有通道數(shù)據(jù)的有效值進(jìn)行更新,否則按上次的有效值去產(chǎn)生采樣數(shù)據(jù)。
6、開入量通過專用界面設(shè)置給pc仿真裝置,為增強(qiáng)數(shù)據(jù)的實(shí)時(shí)性,界面與pc仿真裝置間直接通過函數(shù)調(diào)用的方式,當(dāng)在界面上啟動(dòng)設(shè)置量值后,調(diào)用pc仿真裝置提供的設(shè)置函數(shù),將數(shù)據(jù)先設(shè)置到臨時(shí)緩沖區(qū)中,所有開入量數(shù)據(jù)設(shè)置完成后,將臨時(shí)緩沖區(qū)中的數(shù)據(jù)拷貝到映射的端口內(nèi)存中。
7、裝置界面可視化,在pc仿真所用的系統(tǒng)中將裝置中所用gui庫與具體硬件相關(guān)的代碼在pc仿真系統(tǒng)中重新實(shí)現(xiàn)。主要工作為:界面顯示地址映射到pc內(nèi)存上;按鍵映射到pc鍵盤上。按鍵映射要做到與嵌入式繼電保護(hù)設(shè)備操作的一致性,如加、減及方向鍵對(duì)應(yīng)鍵盤上的加、減及方向鍵等,對(duì)鍵盤上沒有的復(fù)歸鍵映射到鍵盤的ctrl鍵上。
pc仿真系統(tǒng)菜單,通過解析嵌入式繼電保護(hù)設(shè)備配置界面菜單生成的菜單信息文件獲??;將從文件中解析出的菜單函數(shù)信息添加到特定管理句柄中,管理句柄包含函數(shù)名稱、不定參數(shù)函數(shù)指針、函數(shù)參數(shù)個(gè)數(shù)及函數(shù)參數(shù)類型。嵌入式繼電保護(hù)設(shè)備界面配置工具支持的函數(shù),通過函數(shù)名稱字符串與管理句柄中的函數(shù)名稱進(jìn)行全匹配查找,添加到管理句柄不定參數(shù)指針的位置,管理句柄中的參數(shù)個(gè)數(shù)及參數(shù)類型通過匹配后的函數(shù)信息進(jìn)行設(shè)置。函數(shù)參數(shù)中有些使用的是宏定義,為獲取此種參數(shù)的實(shí)際量值,將宏定義的參數(shù)創(chuàng)建成包含宏定義字符串名稱和量值的管理句柄,函數(shù)參數(shù)先在此管理句柄鏈表中進(jìn)行查找,如果在此管理鏈表中可以查找到,直接獲取量值,如果沒有找到,根據(jù)參數(shù)類型將字符串進(jìn)行指定類型的轉(zhuǎn)換獲取參數(shù)值。
8、網(wǎng)絡(luò)系統(tǒng)初始化,在pc仿真系統(tǒng)中創(chuàng)建三個(gè)虛擬網(wǎng)卡,此三個(gè)網(wǎng)卡分別綁定到pc仿真系統(tǒng)的網(wǎng)絡(luò)連接上,虛擬網(wǎng)卡與pc機(jī)網(wǎng)絡(luò)連接的綁定關(guān)系存儲(chǔ)到指定格式的文件中;pc仿真系統(tǒng)在主模塊初始化中解析此文件,每一虛擬網(wǎng)卡生成特定格式的管理句柄,此句柄包含虛擬網(wǎng)卡名稱及綁定網(wǎng)卡名稱信息,pc仿真系統(tǒng)通過此管理句柄完成虛擬網(wǎng)卡與pc機(jī)網(wǎng)卡的映射關(guān)系,從而完成與外部設(shè)備進(jìn)行網(wǎng)絡(luò)數(shù)據(jù)的交互。
9、解析嵌入式繼電保護(hù)設(shè)備map目標(biāo)文件中邏輯仿真所需變量的地址,建立與pc仿真裝置中同一變量地址的對(duì)應(yīng)表,當(dāng)邏輯仿真軟件獲取變量數(shù)據(jù)時(shí),將地址映射到pc仿真裝置的地址上獲取數(shù)據(jù)反饋給邏輯仿真軟件,從而實(shí)現(xiàn)邏輯仿真功能,得到如圖4所示的界面效果圖。
本發(fā)明還提供了一種嵌入式繼電保護(hù)設(shè)備的仿真系統(tǒng),其核心在于提供嵌入式繼電保護(hù)設(shè)備的pc仿真方法,由于仿真方法的具體實(shí)施方式已經(jīng)在上述實(shí)施例中給進(jìn)行了詳細(xì)的說明,因此,不再對(duì)嵌入式繼電保護(hù)設(shè)備的pc仿真系統(tǒng)的具體實(shí)施方式進(jìn)行詳細(xì)的說明。
以上給出了具體的實(shí)施方式,但本發(fā)明不局限于以上所描述的實(shí)施方式。本發(fā)明的基本思路在于上述基本方案,對(duì)本領(lǐng)域普通技術(shù)人員而言,根據(jù)本發(fā)明的教導(dǎo),設(shè)計(jì)出各種變形的模型、公式、參數(shù)并不需要花費(fèi)創(chuàng)造性勞動(dòng)。在不脫離本發(fā)明的原理和精神的情況下對(duì)實(shí)施方式進(jìn)行的變化、修改、替換和變型仍落入本發(fā)明的保護(hù)范圍內(nèi)。