本發(fā)明涉及通訊系統(tǒng)技術(shù)領(lǐng)域,尤其涉及一種裝置功能模塊自我描述系統(tǒng)。
背景技術(shù):
在電力系統(tǒng),自動(dòng)控制系統(tǒng)中,針對(duì)不同的一次設(shè)備需要設(shè)計(jì)開發(fā)不同的二次設(shè)備或?qū)?yīng)的監(jiān)控保護(hù)設(shè)備對(duì)其進(jìn)監(jiān)測(cè),保護(hù),控制等等;目前方法是針對(duì)不同的一次設(shè)備進(jìn)行針對(duì)性的開發(fā)對(duì)應(yīng)裝置,開發(fā)的裝置會(huì)根據(jù)不同的輸入輸出量進(jìn)行開發(fā)不同的插件,然后把插件轉(zhuǎn)換后的模擬信號(hào)再通過背板引入CPU板或?qū)?yīng)控制板,CPU板或控制板完成對(duì)應(yīng)的運(yùn)算,而后進(jìn)行模擬量輸出控制;其中裝置中的插件只能適用于這個(gè)特點(diǎn)的裝置;隨著裝置產(chǎn)品開發(fā)的增加,插件的種類和數(shù)量會(huì)越來越多,而且各個(gè)插件的通用性很差,不僅使得開發(fā)成本增加,同時(shí)生產(chǎn)維護(hù)成本也增加很多。
技術(shù)實(shí)現(xiàn)要素:
基于背景技術(shù)存在的技術(shù)問題,本發(fā)明提出了一種裝置功能模塊自我描述系統(tǒng)用于統(tǒng)一插件種類,減少插件種類數(shù)量,統(tǒng)一對(duì)內(nèi)接口,增強(qiáng)插件的通用性。
本發(fā)明提出的一種裝置功能模塊自我描述系統(tǒng),包括用于完成整個(gè)系統(tǒng)的程序運(yùn)作,對(duì)外采集開關(guān)量輸入、開關(guān)量輸出、模擬量輸入和模擬量輸出信號(hào),對(duì)內(nèi)完成統(tǒng)一接口的數(shù)據(jù)交換的ARM模塊、用于完成對(duì)內(nèi)通訊處理的FPGA模塊、用于把TTL數(shù)據(jù)電平轉(zhuǎn)成低壓差分信號(hào),且用于完成內(nèi)部通訊的MLVDS模塊,所述ARM模塊連接有IO總線和模擬通道,且IO總線和模擬通道均連接對(duì)外接口,所述ARM模塊通過IO總線連接對(duì)外接口用于完成開關(guān)量信號(hào)的采集,且ARM模塊通過模擬通道連接對(duì)外接口用于完成模擬量信號(hào)的采集,所述ARM模塊連接復(fù)用總線,且ARM模塊和FPGA模塊通過復(fù)用總線進(jìn)行數(shù)據(jù)交換,F(xiàn)PGA模塊連接MLVDS模塊進(jìn)行數(shù)據(jù)收發(fā),所述MLVDS模塊連接MLVDS接口,且MLVDS模塊通過MLVDS接口連接主控板,所述FPGA模塊包括高速串行通訊電路、用于完成拼幀解析工作的FIFO單元和用于進(jìn)行實(shí)時(shí)數(shù)據(jù)交換的實(shí)時(shí)寄存器,所述高速串行通訊電路分別與FIFO單元和實(shí)時(shí)寄存器連接,且高速串行通訊電路包括用于完成對(duì)實(shí)時(shí)要求高的信號(hào)傳輸?shù)膶?shí)時(shí)交換區(qū)和用于完成對(duì)實(shí)時(shí)要求低的信號(hào)傳輸?shù)姆菍?shí)時(shí)交換區(qū)。
優(yōu)選地,所述ARM模塊選用STM32F407VET6處理器或STM32F103VET6處理器。
優(yōu)選地,所述FPGA模塊選用10M02DCV36I7G處理器。
優(yōu)選地,所述MLVDS模塊選用ADN4695E芯片。
優(yōu)選地,所述實(shí)時(shí)交換區(qū)與實(shí)時(shí)寄存器進(jìn)行實(shí)時(shí)數(shù)據(jù)交換,F(xiàn)PGA模塊的實(shí)時(shí)寄存器與主控板的實(shí)時(shí)寄存器通過MLVDS模塊進(jìn)行實(shí)時(shí)數(shù)據(jù)交換,從而實(shí)現(xiàn)對(duì)內(nèi)的數(shù)據(jù)輸入輸出,非實(shí)時(shí)交換區(qū)通過MLVDS模塊傳輸實(shí)時(shí)數(shù)據(jù)的間隙完成數(shù)據(jù)傳輸,非實(shí)時(shí)交換區(qū)的非實(shí)時(shí)數(shù)據(jù)傳輸至主控板和FIFO單元,主控板和FIFO單元完成拼幀解析工作。
本發(fā)明中,所述一種裝置功能模塊自我描述系統(tǒng)通過ARM模塊能夠完成整個(gè)系統(tǒng)的程序運(yùn)作,對(duì)外采集開關(guān)量輸入、開關(guān)量輸出、模擬量輸入和模擬量輸出信號(hào),對(duì)內(nèi)完成統(tǒng)一接口的數(shù)據(jù)交換,通過FPGA模塊能夠完成對(duì)內(nèi)通訊處理,通過MLVDS模塊能夠把TTL數(shù)據(jù)電平轉(zhuǎn)成低壓差分信號(hào),且能夠完成內(nèi)部通訊的MLVDS模塊,本發(fā)明運(yùn)行自我描述功能程序,達(dá)到了統(tǒng)一插件種類、減少插件種類數(shù)量、增強(qiáng)插件通用性的目的,且降低了開發(fā)成本,降低了生產(chǎn)維護(hù)成本。
附圖說明
圖1為本發(fā)明提出的一種裝置功能模塊自我描述系統(tǒng)的工作原理圖。
具體實(shí)施方式
下面結(jié)合具體實(shí)施例對(duì)本發(fā)明作進(jìn)一步解說。
實(shí)施例
參照?qǐng)D1,本實(shí)施例提出了一種裝置功能模塊自我描述系統(tǒng),包括用于完成整個(gè)系統(tǒng)的程序運(yùn)作,對(duì)外采集開關(guān)量輸入、開關(guān)量輸出、模擬量輸入和模擬量輸出信號(hào),對(duì)內(nèi)完成統(tǒng)一接口的數(shù)據(jù)交換的ARM模塊、用于完成對(duì)內(nèi)通訊處理的FPGA模塊、用于把TTL數(shù)據(jù)電平轉(zhuǎn)成低壓差分信號(hào),且用于完成內(nèi)部通訊的MLVDS模塊,ARM模塊連接有IO總線和模擬通道,且IO總線和模擬通道均連接對(duì)外接口,ARM模塊通過IO總線連接對(duì)外接口用于完成開關(guān)量信號(hào)的采集,且ARM模塊通過模擬通道連接對(duì)外接口用于完成模擬量信號(hào)的采集,ARM模塊連接復(fù)用總線,且ARM模塊和FPGA模塊通過復(fù)用總線進(jìn)行數(shù)據(jù)交換,F(xiàn)PGA模塊連接MLVDS模塊進(jìn)行數(shù)據(jù)收發(fā),MLVDS模塊連接MLVDS接口,且MLVDS模塊通過MLVDS接口連接主控板,F(xiàn)PGA模塊包括高速串行通訊電路、用于完成拼幀解析工作的FIFO單元和用于進(jìn)行實(shí)時(shí)數(shù)據(jù)交換的實(shí)時(shí)寄存器,高速串行通訊電路分別與FIFO單元和實(shí)時(shí)寄存器連接,且高速串行通訊電路包括用于完成對(duì)實(shí)時(shí)要求高的信號(hào)傳輸?shù)膶?shí)時(shí)交換區(qū)和用于完成對(duì)實(shí)時(shí)要求低的信號(hào)傳輸?shù)姆菍?shí)時(shí)交換區(qū),一種裝置功能模塊自我描述系統(tǒng)通過ARM模塊能夠完成整個(gè)系統(tǒng)的程序運(yùn)作,對(duì)外采集開關(guān)量輸入、開關(guān)量輸出、模擬量輸入和模擬量輸出信號(hào),對(duì)內(nèi)完成統(tǒng)一接口的數(shù)據(jù)交換,通過FPGA模塊能夠完成對(duì)內(nèi)通訊處理,通過MLVDS模塊能夠把TTL數(shù)據(jù)電平轉(zhuǎn)成低壓差分信號(hào),且能夠完成內(nèi)部通訊的MLVDS模塊,本發(fā)明運(yùn)行自我描述功能程序,達(dá)到了統(tǒng)一插件種類、減少插件種類數(shù)量、增強(qiáng)插件通用性的目的,且降低了開發(fā)成本,降低了生產(chǎn)維護(hù)成本。
本實(shí)施例中,ARM模塊選用STM32F407VET6處理器或STM32F103VET6處理器,F(xiàn)PGA模塊選用10M02DCV36I7G處理器,MLVDS模塊選用ADN4695E芯片,實(shí)時(shí)交換區(qū)與實(shí)時(shí)寄存器進(jìn)行實(shí)時(shí)數(shù)據(jù)交換,F(xiàn)PGA模塊的實(shí)時(shí)寄存器與主控板的實(shí)時(shí)寄存器通過MLVDS模塊進(jìn)行實(shí)時(shí)數(shù)據(jù)交換,從而實(shí)現(xiàn)對(duì)內(nèi)的數(shù)據(jù)輸入輸出,非實(shí)時(shí)交換區(qū)通過MLVDS模塊傳輸實(shí)時(shí)數(shù)據(jù)的間隙完成數(shù)據(jù)傳輸,非實(shí)時(shí)交換區(qū)的非實(shí)時(shí)數(shù)據(jù)傳輸至主控板和FIFO單元,主控板和FIFO單元完成拼幀解析工作,一種裝置功能模塊自我描述系統(tǒng)通過ARM模塊能夠完成整個(gè)系統(tǒng)的程序運(yùn)作,對(duì)外采集開關(guān)量輸入、開關(guān)量輸出、模擬量輸入和模擬量輸出信號(hào),對(duì)內(nèi)完成統(tǒng)一接口的數(shù)據(jù)交換,通過FPGA模塊能夠完成對(duì)內(nèi)通訊處理,通過MLVDS模塊能夠把TTL數(shù)據(jù)電平轉(zhuǎn)成低壓差分信號(hào),且能夠完成內(nèi)部通訊的MLVDS模塊,本發(fā)明運(yùn)行自我描述功能程序,達(dá)到了統(tǒng)一插件種類、減少插件種類數(shù)量、增強(qiáng)插件通用性的目的,且降低了開發(fā)成本,降低了生產(chǎn)維護(hù)成本。
本實(shí)施例中,針對(duì)電力系統(tǒng),自動(dòng)控制系統(tǒng)中的輸入輸出特點(diǎn),進(jìn)行分析、歸納、抽象為四種輸入輸出形式:開關(guān)量輸入、開關(guān)量輸出、模擬量輸入和模擬量輸出,上述的所有插件功能作用都可以歸納抽象為這四種形式的功能;使用統(tǒng)一的功能模塊實(shí)現(xiàn)對(duì)上述的四種形式的量進(jìn)行輸入和輸出,這種功能模塊對(duì)內(nèi)形成統(tǒng)一的對(duì)內(nèi)接口,且功能模塊實(shí)現(xiàn)自我描述的功能,所謂自我描述是對(duì)自身包含的信息進(jìn)行描述,模塊以外的設(shè)備或板件可以通過統(tǒng)一的接口進(jìn)行讀取這些描述,從而讓外部設(shè)備或板件知道此模塊功能和資源,外部設(shè)備或板件根據(jù)模塊自我描述的資源進(jìn)行配置或進(jìn)行相應(yīng)處理,處理完成后外部設(shè)備通過統(tǒng)一的接口進(jìn)行數(shù)據(jù)交換,形成相應(yīng)的輸出行為;根據(jù)不同輸入輸出量設(shè)計(jì)不同的插件,這些插件使用統(tǒng)一的功能模塊,對(duì)內(nèi)統(tǒng)一接口,功能模塊中實(shí)現(xiàn)自我們描述功能。
示例:一個(gè)模塊輸入量都是開關(guān)量輸入,開關(guān)量輸入的數(shù)量為21個(gè),則自我描述的值可以定義成:
//定義模塊資源
info.ver=DEVVERSION;
info.id=Gdevpcb.dev_id;
info.type=DEVTPYE_DI;
info.dinum=21;info.donum=0;
info.analoginnum=0;info.analogoutnum=0;
自我描述中的數(shù)據(jù)數(shù)據(jù)分為實(shí)時(shí)去和非實(shí)時(shí)區(qū)
struct dev_rtdat
{
uint8_t rtout[8];uint8_t rtin[8];};//設(shè)備的非實(shí)時(shí)數(shù)據(jù)區(qū)
struct dev_nrtdat
{
uint8_t outbuf[256];uint8_t inbuf[256];};
//設(shè)備數(shù)據(jù)定義區(qū)
struct dev_datadef
{
struct dev_rtdat devrtdat;struct dev_nrtdat devnrtdat;};自我描述整個(gè)結(jié)構(gòu)體定義為:
//設(shè)備描述控制塊
struct dev_pcb
{
struct dev_pcb*next;
uint8_t dev_id;//設(shè)備id
uint8_t dev_state;//設(shè)備狀態(tài),0表示模塊不可用,1表示模塊可用
struct dev_desdat devinfo;union
{
struct dev_phydef devphydata; struct dev_datadef devdatadef; };
uint8_t dev_rbuf[256];//設(shè)備帶緩沖區(qū),由于設(shè)備通訊部分的緩沖,拼幀等處理
uint16_t dev_rcnt;//rbuf計(jì)數(shù)
}。
以上所述,僅為本發(fā)明較佳的具體實(shí)施方式,但本發(fā)明的保護(hù)范圍并不局限于此,任何熟悉本技術(shù)領(lǐng)域的技術(shù)人員在本發(fā)明揭露的技術(shù)范圍內(nèi),根據(jù)本發(fā)明的技術(shù)方案及其發(fā)明構(gòu)思加以等同替換或改變,都應(yīng)涵蓋在本發(fā)明的保護(hù)范圍之內(nèi)。