專利名稱:一種優(yōu)化組態(tài)系統(tǒng)的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及一種優(yōu)化組態(tài)系統(tǒng),應(yīng)用于工業(yè)生產(chǎn)中應(yīng)用和能源管控優(yōu)化計(jì)算和組態(tài)中,用于解決平衡、預(yù)測、性能計(jì)算、數(shù)據(jù)挖掘、優(yōu)化調(diào)度和故障診斷等內(nèi)容。
背景技術(shù):
目前,工業(yè)中應(yīng)用的優(yōu)化軟件很多,各種優(yōu)化軟件在計(jì)算中存在很多通用的功能,如求平均值、濾波、水蒸氣焓熵查詢、鍋爐性能計(jì)算、最小二乘法、多元線性回歸分析、多元非線性回歸分析、神經(jīng)網(wǎng)絡(luò)、動態(tài)規(guī)劃和遺傳算法等功能;同時(shí)每個算法都需要與實(shí)時(shí)庫和配置庫接口,有的還需要與歷史庫接口,需要組態(tài)和運(yùn)行,都需要輸入日志文件以備調(diào)試。優(yōu)化軟件通??煞炙牟糠炙惴ú糠?、運(yùn)行部分、組態(tài)部分、和外圍部分。算法部分首先,為了實(shí)現(xiàn)各種優(yōu)化計(jì)算,功能分解后,一方面,各優(yōu)化軟件也有差異,有的側(cè)重性能計(jì)算,有的側(cè)重故障診斷,各自成體系,不同開發(fā)人員接口不同,導(dǎo)致各算法相互調(diào)用比較困難。另外一方面,也存在相同的需求,一般性能計(jì)算都要對輸入進(jìn)行濾波處理以提高算法的穩(wěn)定性,所以開發(fā)了一個輸入和一個輸出的濾波功能塊。性能計(jì)算的很多輸入位號常有的2 3個相同的傳感器與之對應(yīng),如主蒸汽溫度測點(diǎn)有兩個測點(diǎn),則可能需要這些傳感器取平均值,所有開發(fā)了平均值功能塊。數(shù)據(jù)挖掘算法經(jīng)常需要定期觸發(fā)一次,如每個月的I號執(zhí)行一次,那么開發(fā)了時(shí)間觸發(fā)功能塊,用戶只需要配置觸發(fā)周期和具體的觸發(fā)時(shí)間,則可完成觸發(fā)功能,數(shù)據(jù)挖掘收到觸發(fā)信號后,就可進(jìn)行數(shù)據(jù)分析和處理。大部分優(yōu)化分配算法都基于成本特性曲線,這些曲線一般存儲在關(guān)系庫的表中,所以開發(fā)關(guān)系數(shù)據(jù)庫讀取功能塊,根據(jù)用戶配置的用戶名、密碼、數(shù)據(jù)庫名稱和表名稱等,就可獲取成本特性數(shù)據(jù)。運(yùn)行部分的相同要求如要求熱備用/溫備用;分布式計(jì)算;各功能模塊可相互調(diào)用;參數(shù)/輸入/輸出可配置;獲取實(shí)時(shí)數(shù)據(jù),把計(jì)算結(jié)果寫入實(shí)時(shí)庫組態(tài)在線下載;在線調(diào)試等。組態(tài)部分各優(yōu)化計(jì)算為了增加其通用性,都要求從配置數(shù)據(jù)庫獲取配置信息進(jìn)行展示和組態(tài),如輸入位號的組態(tài),參數(shù)的配置,結(jié)果輸出對象的配置,由于屬于不同人開發(fā),組態(tài)界面風(fēng)格各不相同,需要編寫各種組態(tài)說明書,給用戶維護(hù)造成了一定的難度。外圍部分未做統(tǒng)一設(shè)計(jì)的話,配置數(shù)據(jù)庫、配置文件、實(shí)時(shí)庫的表格和日志文件在格式上可能差異比較大,以配置文件為例子,“備用模式=1”在有的設(shè)計(jì)思路中I代表熱備用,而有的設(shè)計(jì)思路中I代表溫備用,不利于工程實(shí)施和維護(hù);綜上所述,算法部分、運(yùn)行部分、組態(tài)部分和外圍部分存在重復(fù)開發(fā)和設(shè)計(jì),各功能塊接口因人而異,相互調(diào)用困難。且組態(tài)界面風(fēng)格各不相同,也存在開發(fā)重復(fù)性工作、維護(hù)工作量大。本發(fā)明借鑒工業(yè)控制中基于IEC61131-3標(biāo)準(zhǔn)中的功能塊組態(tài)技術(shù),把該技術(shù)思路從控制領(lǐng)域移植到優(yōu)化領(lǐng)域,使用戶通過組態(tài)的方式實(shí)現(xiàn)優(yōu)化功能。目前基于功能塊組態(tài)技術(shù)還未見運(yùn)用于通用優(yōu)化計(jì)算的文獻(xiàn),本發(fā)明并針對優(yōu)化領(lǐng)域的特點(diǎn)做了針對性開發(fā),使得該技術(shù)更順利地運(yùn)用在優(yōu)化領(lǐng)域,目前已經(jīng)運(yùn)用于中天鋼鐵能源管控系統(tǒng)中,實(shí)現(xiàn)了儀表故障診斷、能源介質(zhì)平衡、能源介質(zhì)預(yù)測、性能計(jì)算、成本特性相關(guān)的數(shù)據(jù)挖掘、制氧機(jī)組負(fù)荷優(yōu)化分配和空壓機(jī)組負(fù)荷優(yōu)化分配等功能。
發(fā)明內(nèi)容
本發(fā)明目的是提供一種優(yōu)化組態(tài)系統(tǒng),以組態(tài)計(jì)算的方式,使得研發(fā)技術(shù)人員在開發(fā)各優(yōu)化功能塊不需要處理通用的問題,只專注于優(yōu)化算法,并提供統(tǒng)一的組態(tài)界面,使工程人員和用戶通過組態(tài)的方式,就可解決優(yōu)化問題,組態(tài)模塊和運(yùn)行模塊分離,各功能塊和運(yùn)行模塊分離,提高了軟件的穩(wěn)定性、可維護(hù)性和擴(kuò)展性,也大大提高了開發(fā)效率、工程實(shí)施效率和維護(hù)效率。本發(fā)明的技術(shù)方案是一種優(yōu)化組態(tài)系統(tǒng),包含以下五部分a)功能塊基類所有功能塊都派生于該基類,實(shí)現(xiàn)了各功能塊的數(shù)據(jù)名稱和統(tǒng)一的程序接口;b)功能塊所有功能塊都繼承功能塊基類,包含各種通用算法;c)組態(tài)模塊主要實(shí)現(xiàn)功能塊的組態(tài)配置;d)運(yùn)行模塊主要實(shí)現(xiàn)功能塊的初始化和運(yùn)行等;e)外圍部分為組態(tài)模塊和運(yùn)行模塊提供相關(guān)載體和支撐。其中a)功能塊基類包括含單元測試虛函數(shù),含顯示計(jì)算輸入/參數(shù)/輸出等接口,含歷史數(shù)據(jù)獲取虛函數(shù),含通用檢查接口,含專用檢查、初始化、輸入、計(jì)算和復(fù)位虛函數(shù)。其中b)功能塊包含類別為1/0類、模擬量計(jì)算類、邏輯計(jì)算類、性能計(jì)算/考核類、數(shù)據(jù)挖掘類、能源和介質(zhì)平衡類、能源和介質(zhì)預(yù)測類、尋優(yōu)/調(diào)度類、故障診斷和優(yōu)化控制類。其中c)組態(tài)模塊包含通過從配置數(shù)據(jù)庫Oracle獲取各組態(tài)配置表及其組態(tài)內(nèi)容;通過聯(lián)絡(luò)信號與運(yùn)行模塊進(jìn)行通訊來實(shí)現(xiàn)組態(tài)在線下載,即若組態(tài)修改,則組態(tài)模塊把聯(lián)絡(luò)信號設(shè)置為I;運(yùn)行模塊每個運(yùn)行周期獲取聯(lián)絡(luò)信號的值,如果聯(lián)絡(luò)信號值為1,則重新初始化,并重新讀取組態(tài)等,如果聯(lián)絡(luò)信號為0,則不需要重新初始化,繼續(xù)進(jìn)行算法運(yùn)算等步驟;通過獲取由運(yùn)行模塊寫入組態(tài)配置表的調(diào)試結(jié)果字段內(nèi)容實(shí)現(xiàn)在線調(diào)試。其中d)運(yùn)行模塊中包括運(yùn)行軟件模塊通過參數(shù)配置就可自動獲取歷史數(shù)據(jù)并傳遞給功能塊;實(shí)現(xiàn)了根據(jù)功能塊的版本號、輸入個數(shù)/描述、參數(shù)個數(shù)/描述和輸出個數(shù)/描述等信息自動同步到功能塊結(jié)構(gòu)信息表中;自動獲取點(diǎn)的描述并更新到功能塊配置信息表中。另外d)運(yùn)行模塊還包含基于現(xiàn)有的分布式實(shí)時(shí)數(shù)據(jù)庫,實(shí)現(xiàn)功能塊組態(tài)和實(shí)時(shí)庫組態(tài)的自動同步;實(shí)現(xiàn)了根據(jù)功能塊的版本號、輸入個數(shù)/描述、參數(shù)個數(shù)/描述和輸出個數(shù)/描述等信息自動同步到功能塊結(jié)構(gòu)信息表中;考慮到大部分功能塊的輸出的名字相同,工程組態(tài)采用默認(rèn)值。其中d)運(yùn)行模塊通過文件接口讀取配置文件Config.1ni內(nèi)容,從而獲取到功能塊配置信息表的名稱,再根據(jù)Oracle配置數(shù)據(jù)庫接口從功能塊配置信息表獲取數(shù)據(jù),進(jìn)而實(shí)例化各功能塊;負(fù)責(zé)調(diào)用實(shí)時(shí)庫接口把功能塊需要的實(shí)時(shí)數(shù)據(jù)傳遞給功能塊的輸入,把功能塊的結(jié)果輸出到優(yōu)化實(shí)時(shí)庫,以便畫面展示等;按照功能塊間的組態(tài)連接關(guān)系依次調(diào)用功能塊運(yùn)行;實(shí)現(xiàn)了溫備用/熱備用;組態(tài)在線調(diào)試,在線下載;按輸出日志信息的詳細(xì)程序可配置為四個級別。其中e)外圍部分包括:(I) Oracle配置庫:含公共部分表格,功能塊配置信息表1,…,功能塊配置信息表n,功能塊配置信息表示各功能塊的配置信息存儲的位置,以便組態(tài)模塊進(jìn)行組態(tài),運(yùn)行模塊根據(jù)組態(tài)內(nèi)容實(shí)例化各功能塊進(jìn)行計(jì)算;(2)配置文件Config.1n1:配置運(yùn)行模塊的功能塊配置信息表,各種運(yùn)行模式等內(nèi)容;(3)實(shí)時(shí)庫:包含存放優(yōu)化結(jié)果的優(yōu)化實(shí)時(shí)庫和存放從各PLC/DCS系統(tǒng)采集數(shù)據(jù)的監(jiān)控系統(tǒng)實(shí)時(shí)庫;(4)日志文件:由運(yùn)行模塊生成;(5)畫面、曲線、報(bào)警、歷史存儲等:實(shí)現(xiàn)優(yōu)化計(jì)算結(jié)果的展示等。本發(fā)明有益效果是:以組態(tài)計(jì)算的方式,使得研發(fā)人員在開發(fā)各優(yōu)化功能塊時(shí)不必再處理通用的問題,只需專注于優(yōu)化算法,且提供統(tǒng)一的組態(tài)界面,使工程人員和用戶通過組態(tài)的方式,就可解決各工業(yè)過程優(yōu)化問題。另外,組態(tài)模塊和運(yùn)行模塊分離,各功能塊和運(yùn)行模塊分離,提高了軟件的穩(wěn)定性、可維護(hù)性和擴(kuò)展性,也大大提高了開發(fā)效率、工程實(shí)施效率和維護(hù)效率。
圖1為具體實(shí)施步驟示意圖。圖2為軟件包整體示意圖。圖3為軟件包運(yùn)行模塊類間關(guān)系示意圖。圖4為軟件包運(yùn)行模塊啟動過程流程圖和周期性循環(huán)流程圖。圖5功能塊組態(tài)實(shí)現(xiàn)汽輪機(jī)性能計(jì)算示意圖。圖6為功能塊基類結(jié)構(gòu)示意圖。圖7gkopt和gkScada的實(shí)時(shí)庫示意圖。
具體實(shí)施例方式具體實(shí)施步驟如圖1,(I)針對優(yōu)化目標(biāo)進(jìn)行需求分析和設(shè)計(jì),把目標(biāo)分解為一個或者多個功能塊;(2)將分解后的各功能塊畫成功能圖;(3)是否有功能塊需要開發(fā)?如需要開發(fā)則進(jìn)行第4步驟,否則直接跳轉(zhuǎn)到第8步驟;(4)繪制功能塊流程圖;(5)進(jìn)行功能塊屬性和算法設(shè)計(jì);(6)把新開發(fā)的功能塊加入運(yùn)行模塊;(7)功能塊編碼,并進(jìn)行單元測試;(8)通過組態(tài)模塊進(jìn)行功能圖配置;(9)聯(lián)合調(diào)試直到滿足設(shè)計(jì)目標(biāo)。如圖2所示軟件包的各個組成部分,各功能塊的組態(tài)內(nèi)容存放于優(yōu)化計(jì)算的配置數(shù)據(jù)庫(Oracle),公共區(qū)域存放每個功能塊信息、優(yōu)化配置表名稱與描述等;不同的優(yōu)化目標(biāo)存放于不同的區(qū)域。實(shí)時(shí)數(shù)據(jù)主要來源于監(jiān)控系統(tǒng)實(shí)時(shí)庫gkScada,少量來源于優(yōu)化實(shí)時(shí)庫gkOpt,優(yōu)化后結(jié)果都存放于優(yōu)化實(shí)時(shí)庫gkOpt中;每個優(yōu)化程序?qū)?yīng)一個Config.1ni配置文件,里面可配置功能塊配置表、實(shí)時(shí)庫自動同步對應(yīng)的分支、運(yùn)行周期、備用方式、各種運(yùn)行選項(xiàng)和運(yùn)行周期等;每個優(yōu)化程序通過Config.1ni配置文件讀取配置數(shù)據(jù)庫的Oracle表,里面每一行代表一個功能塊,功能塊的名稱、描述、頁號、是否通過驗(yàn)證、各參數(shù)和各輸入都在該行中。本發(fā)明軟件包運(yùn)行模塊各類關(guān)系示意圖如圖2,圓圈范圍內(nèi)就是組態(tài)軟件的范圍,其余為外圍部分,大概關(guān)系如下(I)讀取程序配置文件類把配置文件Config.1ni的配置信息讀取后,傳遞給關(guān)系庫類、實(shí)時(shí)數(shù)據(jù)庫類和歷史數(shù)據(jù)庫類,這樣軟件包級別的配置信息就獲取完畢,然后軟件包利用讀取數(shù)據(jù)庫配置類讀取Oracle表,根據(jù)每一行信息(功能塊名稱、參數(shù)內(nèi)容、需要?dú)v史數(shù)據(jù)的時(shí)間長度和輸入內(nèi)容等)實(shí)例化為一個功能塊,(2)把歷史數(shù)據(jù)和實(shí)時(shí)數(shù)據(jù)傳遞給各功能塊;軟件包運(yùn)行部分啟動過程和周期性循環(huán)的流程圖如圖4 其中,圖4中的有關(guān)步驟步驟“I根據(jù)配置數(shù)據(jù)庫內(nèi)容實(shí)例化各計(jì)算類”實(shí)現(xiàn)方法如下
if(qfilds[fb—field—index]==*PB—Sophie—Read—by—Name,
{
cFB[I]=new FB—Soph ic—Read—by—Xame;
}cFB[i]即為第i個功能塊;考慮到大部分功能塊的輸出的名字相同,如果位號不含功能塊輸出的名字,那么采用默認(rèn)值以便工程組態(tài),這樣組態(tài)內(nèi)容更加簡潔?!?,5根據(jù)功能塊的結(jié)果位號名稱獲取其在實(shí)時(shí)庫的相關(guān)信息表名稱,0ID,(fieldid, field長度)和描述;如結(jié)果位號在數(shù)據(jù)庫中不存在的自動加點(diǎn)”:由于約定功能塊結(jié)果都存放在gkopt數(shù)據(jù)庫,如果該數(shù)據(jù)庫中不存在和結(jié)果名稱相同的點(diǎn),那么根據(jù)功能塊默認(rèn)的存放表的名稱,名稱和描述,調(diào)用實(shí)時(shí)庫的接口,自動添加點(diǎn)。然后再獲取該點(diǎn)在實(shí)時(shí)庫的相關(guān)信息,以便運(yùn)行模塊獲取實(shí)時(shí)庫的實(shí)時(shí)值。同時(shí),該步驟還獲取了輸入點(diǎn)的描述并更新到功能塊描述信息表,便于用戶打開組態(tài)模塊后了解輸入的含義。“6確定計(jì)算深度”實(shí)現(xiàn)過程開始時(shí)候各功能塊的計(jì)算深度都為I ;如功能塊A的輸入是否功能塊B的輸出,則功能塊B的計(jì)算深度=功能塊A計(jì)算深度+1,表明應(yīng)該先運(yùn)算功能塊A,然后再運(yùn)行功能塊B ;如此循環(huán)幾次后,如果最大計(jì)算深度不變,則完成該過程?!?獲取歷史數(shù)據(jù)”:根據(jù)功能塊配置信息表的“IN_HIS_C0UNT”字段內(nèi)容,就可知道該功能塊需要?dú)v史數(shù)據(jù)的時(shí)間跨度,這樣調(diào)用歷史接口獲取歷史數(shù)據(jù),把歷史數(shù)據(jù)拼接為一個字符串,賦值給功能塊的歷史值字符串,從而完成歷史數(shù)據(jù)的獲取過程?!?功能塊初始化,檢查”:調(diào)用各功能塊的初始化過程和檢查過程來實(shí)現(xiàn),具體代碼由各功能塊自己實(shí)現(xiàn);“9插入/更新功能塊結(jié)構(gòu)信息表”:在各功能塊的構(gòu)造函數(shù)中把所有功能塊FB [i]的輸入個數(shù)、各輸入的描述、參數(shù)個數(shù)、各參數(shù)描述、結(jié)果個數(shù)和各結(jié)果描述等信息賦值完畢,然后在該過程自動把這些信息插入/更新到功能塊描述表中,以便組態(tài)界面結(jié)合功能塊配置信息表(不含功能塊的描述信息)展示功能塊相關(guān)配置。功能塊的輸入過程由運(yùn)行模塊獲取通過功能塊輸入的0ID、FieldID和Field長度讀取其在實(shí)時(shí)數(shù)據(jù)庫的值,并把數(shù)據(jù)賦值給功能塊的輸入;功能塊根據(jù)業(yè)務(wù)邏輯完成計(jì)算過程,由運(yùn)行模塊完成功能塊結(jié)果更新到sophic實(shí)時(shí)庫;復(fù)位過程也是通過調(diào)用功能塊的復(fù)位過程來實(shí)現(xiàn),應(yīng)該如何計(jì)算由各功能塊自己實(shí)現(xiàn)。
圖5功能塊組態(tài)實(shí)現(xiàn)汽輪機(jī)性能計(jì)算示意圖,以電廠汽輪機(jī)性能計(jì)算為例說明各優(yōu)化算法組態(tài)的方式,一般性能計(jì)算都要對輸入進(jìn)行濾波處理以提高算法的穩(wěn)定性,所以開發(fā)了一個輸入和一個輸出的濾波功能塊;性能計(jì)算的很多輸入位號常有的2 3個相同的傳感器與之對應(yīng),如主蒸汽溫度測點(diǎn)有兩個測點(diǎn),則可能需要這些傳感器取平均值,所有開發(fā)了平均值功能塊。配置的時(shí)候,如有多測點(diǎn)的,通過組態(tài)平均值功能塊實(shí)現(xiàn),再把平均值功能塊后組態(tài)濾波功能塊,最后把濾波功能塊的輸出和汽輪機(jī)性能計(jì)算功能塊的輸入建立連線。總之,需要對優(yōu)化目標(biāo)進(jìn)行分解,把不同的功能解耦為不同的功能塊來實(shí)現(xiàn),再通過組態(tài)模塊進(jìn)行組態(tài)配置,最后運(yùn)行模塊讀取組態(tài)內(nèi)容,實(shí)例化各功能塊進(jìn)行優(yōu)化運(yùn)算。圖6功能塊基類結(jié)構(gòu)示意圖中,功能塊基類包括:含單元測試接口,開發(fā)人員可通過黑盒測試方法編寫各測試用例,然后判斷計(jì)算的結(jié)果是否等于理論結(jié)果,如果所有測試用例均通過,則測試結(jié)果返回真,代表單元測試成功,此設(shè)計(jì)方便代碼管理和維護(hù)。功能塊基類含顯示計(jì)算輸入/參數(shù)/輸出等接口,如果調(diào)試模式大于等于1,那么輸出功能塊的輸入的描述與值、參數(shù)的描述與值、結(jié)果值與結(jié)果的描述和其他信息到屏幕;如果調(diào)試模式大于等于2,則既把這些信息顯示到屏幕,也把這些信息寫入日志文件,方便開發(fā)和調(diào)試。圖7為實(shí)時(shí)庫的結(jié)構(gòu)示意圖,每個優(yōu)化分區(qū)下都有5張表,其中Value,Valuel 50和DValuel 50為計(jì)算結(jié)果存放的字段。I功能塊配置信息表:存放各個功能塊的輸入、輸出的含義等,以便軟件包的運(yùn)行模塊根據(jù)此表對各種功能塊進(jìn)行實(shí)例化,同時(shí)軟件包的組態(tài)模塊通過讀取該表知道每個優(yōu)化目標(biāo)配置了多少功能塊和功能塊的具體內(nèi)容。命名規(guī)則:“EMS_”開頭,每個優(yōu)化目標(biāo)對應(yīng)一個表格。
權(quán)利要求
1.一種優(yōu)化組態(tài)系統(tǒng),其特征是:包含以下部分,a)功能塊基類:所有功能塊都派生于該基類,實(shí)現(xiàn)了各功能塊的數(shù)據(jù)名稱和統(tǒng)一的程序接口 ;b)功能塊:所有功能塊都繼承功能塊基類,包含各種通用算法;c)組態(tài)模塊:主要實(shí)現(xiàn)功能塊的組態(tài)配置;d)運(yùn)行模塊:主要實(shí)現(xiàn)功能塊的初始化和運(yùn)行等;e)外圍部分:為組態(tài)模塊和運(yùn)行模塊提供相關(guān)載體和支撐。
2.如權(quán)利要求1所述的一種優(yōu)化組態(tài)系統(tǒng),其特征是:實(shí)施步驟為,(I)針對優(yōu)化目標(biāo)進(jìn)行需求分析和設(shè)計(jì),把目標(biāo)分解為一個或多個功能塊;(2)將分解后的各功能塊畫成功能圖;(3)是否有功能塊需要開發(fā),如需要開發(fā)則進(jìn)行第4步驟,否則直接跳轉(zhuǎn)到第8步驟;(4)繪制功能塊流程圖;(5)進(jìn)行功能塊屬性和算法設(shè)計(jì);(6)把新開發(fā)的功能塊加入運(yùn)行模塊;(7 )功能塊編碼,并進(jìn)行單元測試;(8 )通過組態(tài)模塊進(jìn)行功能圖配置;(9 )聯(lián)合調(diào)試直到滿足設(shè)計(jì)目標(biāo)。
3.如權(quán)利要求1所述的一種優(yōu)化組態(tài)系統(tǒng),其特征是:其中a)包括:單元測試虛函數(shù),顯示計(jì)算輸入/參數(shù)/輸出等接口,歷史數(shù)據(jù)獲取虛函數(shù),通用檢查接口,專用檢查虛函數(shù)、初始化虛函數(shù)、輸入虛函數(shù)、計(jì)算虛函數(shù)和復(fù)位虛函數(shù)。
4.如權(quán)利要求1所述的一種優(yōu)化組態(tài)系統(tǒng),其特征是:其中b)功能塊類別包括:1/0類、模擬量計(jì)算類、邏輯計(jì)算類、性能計(jì)算/考核類、數(shù)據(jù)挖掘類、能源和介質(zhì)平衡類、能源和介質(zhì)預(yù)測類、尋優(yōu)/調(diào)度類、故障診斷和優(yōu)化控制類。
5.如權(quán)利要求1所述的一種優(yōu)化組態(tài)系統(tǒng),其特征是:其中c)包括:組態(tài)模塊通過從配置數(shù)據(jù)庫Oracle獲取各組態(tài)配置表及其組態(tài)內(nèi)容;通過聯(lián)絡(luò)信號與運(yùn)行模塊進(jìn)行通訊來實(shí)現(xiàn)組態(tài)在線下載,即若組態(tài)修改,則組態(tài)模塊把聯(lián)絡(luò)信號設(shè)置為I ;運(yùn)行模塊每個運(yùn)行周期獲取聯(lián)絡(luò)信號的值,如果聯(lián)絡(luò)信號值為I,則重新進(jìn)行初始化,并重新讀取組態(tài)等,如果聯(lián)絡(luò)信號為0,則不需要重新初始化,繼續(xù)進(jìn)行算法運(yùn)算等步驟;通過獲取由運(yùn)行模塊寫入組態(tài)配置表的調(diào)試結(jié)果字段內(nèi)容實(shí)現(xiàn)在線調(diào)試。
6.如權(quán)利要求1所述的一種優(yōu)化組態(tài)系統(tǒng),其特征是:其中d)包括:運(yùn)行模塊通過參數(shù)配置就可自動獲取歷史數(shù)據(jù)并傳遞給功能塊;自動獲取點(diǎn)的描述并更新到功能塊配置信息表中。
7.如權(quán)利要求1所述的一種優(yōu)化組態(tài)系統(tǒng),其特征是:其中d)包括:基于現(xiàn)有的分布式實(shí)時(shí)數(shù)據(jù)庫,實(shí)現(xiàn)功能塊組態(tài)和實(shí)時(shí)庫組態(tài)的自動同步;實(shí)現(xiàn)了根據(jù)功能塊的版本號、輸入個數(shù)/描述、參數(shù)個數(shù)/描述和輸出個數(shù)/描述等信息自動同步到功能塊結(jié)構(gòu)信息表中;考慮到大部分功能塊的輸出名字相同,工程組態(tài)采用默認(rèn)值。
8.如權(quán)利要求1所述的一種優(yōu)化組態(tài)系統(tǒng),其特征是:其中d)包括:運(yùn)行模塊通過文件接口讀取配置文件Config.1ni內(nèi)容,從而獲取到功能塊配置信息表的名稱,再根據(jù)Oracle配置數(shù)據(jù)庫接口從功能塊配置信息表獲取數(shù)據(jù),進(jìn)而實(shí)例化各功能塊;負(fù)責(zé)調(diào)用實(shí)時(shí)庫接口把功能塊需要的實(shí)時(shí)數(shù)據(jù)傳遞給功能塊的輸入,把功能塊的結(jié)果輸出到優(yōu)化實(shí)時(shí)庫,以便畫面展示等;按照功能塊間的組態(tài)連接關(guān)系依次調(diào)用功能塊運(yùn)行;實(shí)現(xiàn)了溫備用/熱備用;組態(tài)在線調(diào)試,在線下載;按輸出日志信息的詳細(xì)程序可配置為四個級別。
9.如權(quán)利要求1所述的一種優(yōu)化組態(tài)系統(tǒng),其特征是:其中e)外圍部分包括:(1)Oracle配置庫:含公共部分表格,功能塊配置信息表I,…,功能塊配置信息表η,功能塊配置信息表示各功能塊的配置信息存儲的位置,以便組態(tài)模塊進(jìn)行組態(tài),運(yùn)行模塊根據(jù)組態(tài)內(nèi)容實(shí)例化各功能塊進(jìn)行計(jì)算;(2)配置文件Config.1n1:配置運(yùn)行模塊的功能塊配置信息表,各種運(yùn)行模式等內(nèi)容;(3)實(shí)時(shí)庫:包含存放優(yōu)化結(jié)果的優(yōu)化實(shí)時(shí)庫和存放從各PLC/DCS系統(tǒng)采集數(shù)據(jù)的監(jiān)控系統(tǒng)實(shí)時(shí)庫;(4)日志文件:由運(yùn)行模塊生成;(5)畫面、曲線、報(bào)警、歷史存儲等:實(shí)現(xiàn)優(yōu)化計(jì)算結(jié)果的展示等。
10.如權(quán)利要求1或2所述的一種能源管控優(yōu)化組態(tài)系統(tǒng)模塊,其特征是:各功能塊的組態(tài)內(nèi)容存放于能源管控優(yōu)化計(jì)算的配置數(shù)據(jù)庫(Oracle),公共區(qū)域存放每個功能塊信息、能源管控優(yōu)化配置表名稱與描述;不同的能源管控優(yōu)化目標(biāo)存放于不同的區(qū)域;實(shí)時(shí)數(shù)據(jù)來源于監(jiān)控系統(tǒng)實(shí)時(shí)庫gkScada和少量來源于能源管控優(yōu)化實(shí)時(shí)庫gkOpt,能源管控優(yōu)化后結(jié)果都存放于能源管控優(yōu)化實(shí)時(shí)庫gkOpt中;每個能源管控優(yōu)化程序?qū)?yīng)一個Config.1ni配置文件,其中配置功能塊配置表、實(shí)時(shí)庫自動同步對應(yīng)的分支、運(yùn)行周期、備用方式、各種運(yùn)行選項(xiàng)和運(yùn)行周期;功能塊中的每個能源管控優(yōu)化程序通過Config.1ni配置文件讀取配置數(shù)據(jù)庫的Oracle表,里面每一行代表一個功能塊,功能塊的名稱、描述、頁號、是否通過驗(yàn)證、各參數(shù)和各`輸入都在該行中。
全文摘要
一種優(yōu)化組態(tài)系統(tǒng),包含以下五部分a)功能塊基類所有功能塊都派生于該基類,實(shí)現(xiàn)了各功能塊的數(shù)據(jù)名稱和統(tǒng)一的程序接口;b)功能塊所有功能塊都繼承功能塊基類,包含各種通用算法;c)組態(tài)模塊主要實(shí)現(xiàn)功能塊的組態(tài)配置;d)運(yùn)行模塊主要實(shí)現(xiàn)功能塊的初始化和運(yùn)行等;e)外圍部分為組態(tài)模塊和運(yùn)行模塊提供相關(guān)載體和支撐。本發(fā)明以組態(tài)計(jì)算的方式,使得研發(fā)人員在開發(fā)各優(yōu)化功能塊時(shí)不必再處理通用的問題,只需專注于優(yōu)化算法。另外,組態(tài)模塊和運(yùn)行模塊分離,各功能塊和運(yùn)行軟件分離,提高了軟件的穩(wěn)定性、可維護(hù)性和擴(kuò)展性,也大大提高了開發(fā)效率、工程實(shí)施效率和維護(hù)效率。
文檔編號G06F9/44GK103077033SQ201310007628
公開日2013年5月1日 申請日期2013年1月9日 優(yōu)先權(quán)日2012年8月20日
發(fā)明者郝勇生, 彭興, 孟憲宇, 梁少華, 林語, 孫立國, 劉利, 耿欣 申請人:南京南瑞繼保電氣有限公司, 南京南瑞繼保工程技術(shù)有限公司