一種實時的自動化控制裝置的仿真平臺設計方法
【技術領域】
[0001 ] 本發(fā)明針對電力系統(tǒng)中的各種模型的控制算法的實現(xiàn)和校驗設計了一種實時的自動化控制裝置的仿真平臺,為電力系統(tǒng)中的裝置模型的控制算法的實現(xiàn)和校驗提供了有力的保障。
【背景技術】
[0002]現(xiàn)如今,對于電力系統(tǒng)中的不同模型裝置的控制算法的實現(xiàn)和校驗都需要設計相應的硬件開發(fā)板或者是使用大型裝置作為被控對象,來提供相應的被控信號源。其中對于不同的模型就需要開發(fā)設計不同的開發(fā)板,比如在研究電力系統(tǒng)的諧波抑制算法時,對于不同模型產生的諧波可能需要不同的開發(fā)板來提供被控信號,來對控制算法進行校驗的和實現(xiàn),這耗費了大量的財力和物力,很不經(jīng)濟。而且有的被控對象的造價極高,現(xiàn)場調試風險極大。針對于上述問題,設計一種實時的仿真平臺,來實現(xiàn)電力系統(tǒng)中各種電路模型的仿真,并且能夠準確的模仿電力系統(tǒng)模型的各種運作狀態(tài),直接關系到控制器算法的開發(fā)周期和研究成本。現(xiàn)有的半實物的仿真平臺都是在主控計算機上利用simulink生成實時代碼,然后將其下載到具有實時內核的目標機上進行實時仿真,這存在的缺點是很難精確的模擬電力系統(tǒng)中開關量的動作時間,而且開發(fā)成本比較大。
【發(fā)明內容】
[0003]為了解決現(xiàn)有技術中存在的缺陷,本發(fā)明采用如下技術方案:
[0004]—種實時的自動化控制裝置的仿真平臺設計方法,包含以下幾點:
[0005]Simulink仿真模型的搭建和仿真:利用matlab高效的模型搭建和數(shù)據(jù)處理能力這一優(yōu)點,搭建電力系統(tǒng)中的各種電路模型。
[0006]實時的操作系統(tǒng):采用RTLinux實時操作系統(tǒng),達到lOOus高精度的時鐘定時和高時鐘精度的任務切換。
[0007]以太網(wǎng)接口:利用simulink中的S函數(shù)創(chuàng)建自定義的以太網(wǎng)通訊接口,將受控信號發(fā)送給下位機上的控制器。
[0008]強時鐘節(jié)拍的設置:利用RTLinux操作系統(tǒng)的強實時性,設置時鐘節(jié)拍為lOOus。
[0009]具體方法為:直接在RTLinux實時操作系統(tǒng)中,搭建好Simulink模型進行實時仿真處理。并將模型中輸出的被控信號,以非常準確的時鐘節(jié)拍lOOus,通過以太網(wǎng)接口發(fā)送給控制器??刂破鹘邮盏奖粶y信號后,經(jīng)過一系列的控制算法處理后,將控制量通過以太網(wǎng)接口發(fā)送給上位機的仿真模型,仿真模型根據(jù)控制量的內容,將現(xiàn)有的模型切換到所對應的模型中來。Matlab繼續(xù)計算處理當前的模型數(shù)據(jù),并將被控量以強時鐘節(jié)拍通過以太網(wǎng)接口發(fā)送出去,如此循環(huán)下去。
[0010]需要強調的一點是,為了保證仿真模型輸出符合實際電力系統(tǒng)中模型的輸出,必須使仿真模型以非常嚴格的時鐘節(jié)拍輸出數(shù)據(jù)。強時鐘節(jié)拍的輸出控制是為了模仿實際電路中的米樣時間。
[0011]同時,為了達到強時鐘節(jié)拍的模型數(shù)據(jù)的輸出和模型輸出數(shù)據(jù)的準確性,Matlab采用等待機制來處理數(shù)據(jù),即當處理完一個模型數(shù)據(jù)后,不是立即處理下一個模型數(shù)據(jù),而是等待定時lOOus時鐘中斷的到來后再處理和計算下一個模型。
[0012]本發(fā)明創(chuàng)造的有益效果:
[0013]拋開了傳統(tǒng)的半實物仿真平臺,不再是利用simulink生成實時代碼然后將其下載到實時仿真目標機上,而是將simulink直接放到RTLinux實時的操作系統(tǒng)上進行實時仿真和處理,達到強時鐘節(jié)拍的模型輸出和快速的模型切換,符合實際電力系統(tǒng)模型的輸出。本發(fā)明能夠很好地模擬實際電力系統(tǒng)中的電路模型的輸出和動作響應,能夠快速準確的校驗和實現(xiàn)控制器上的算法,大大的減少了控制器算法的開發(fā)成本,縮短了其開發(fā)周期。
【附圖說明】
[0014]圖1是本發(fā)明的系統(tǒng)整體框圖。
[0015]圖2是本發(fā)明的硬件結構圖。
[0016]圖3是本發(fā)明的軟件實現(xiàn)流程圖。
【具體實施方式】
[0017]以下結合附圖和具體實施例對本發(fā)明創(chuàng)造的技術方案做進一步的說明。
[0018]本發(fā)明包含三個部分,首先是在RTLinux實時操作系統(tǒng)上利用matlab中的simulink進行電力系統(tǒng)各模型的搭建,然后在simulink上基于S函數(shù)設計自定義的以太網(wǎng)通訊接口。研究發(fā)現(xiàn),當模型中有自定義的S函數(shù)出現(xiàn)時必須要為其編寫相應的TLC文件才可以進行實時仿真,由此需要編寫相應的TLC文件。為了使模型輸出按照十分嚴格的時鐘節(jié)拍lOOus發(fā)送出去,在自定義的S函數(shù)中還需要編寫一個定時中斷函數(shù),通過觸發(fā)定時中斷來實現(xiàn)定時lOOus發(fā)送模型輸出數(shù)據(jù)的目的。該定時中斷采用RTLinux操作系統(tǒng)中的硬實時中斷來實現(xiàn)??刂破鹘邮盏奖豢匦盘柡?,經(jīng)過一系列的控制算法將其控制的開關量發(fā)送給仿真模型,仿真模型接收到控制信號后,根據(jù)控制信號的內容將模型切換到相應的電路模型中。由于在Matlab上計算和處理模型數(shù)據(jù)時,對于不同的模型數(shù)據(jù),Matlab的處理速度不同,可能存在的問題是Matlab處理完當前的數(shù)據(jù),但是還沒有到達發(fā)送的時間,就將這部分數(shù)據(jù)丟棄了,而繼續(xù)處理下一個模型數(shù)據(jù),這會直接影響到控制器的算法處理,所以為了達到模型輸出的強實時性和準確性,Matlab處理模型數(shù)據(jù)采用延時等待的機制,即matlab處理完模型數(shù)據(jù)后不是立即處理下一個模型的數(shù)據(jù),而是等待定時時鐘中斷的到來后才進行下一次的處理計算。該定時時鐘中斷也是采用RTLinux操作系統(tǒng)中的硬中斷來實現(xiàn)。這樣就可以保證仿真模型以非常嚴格的時鐘節(jié)拍發(fā)送數(shù)據(jù),并迅速的響應控制器發(fā)送來的控制量,達到模擬實際電力系統(tǒng)中電路模型的數(shù)據(jù)輸出和對開關量動作的響應,進而達到準確快速的驗證控制器算法的目的。
[0019]如圖1、圖2、圖3所示,圖1為本發(fā)明的系統(tǒng)整體框圖;圖2是本發(fā)明的硬件結構圖;圖3為本發(fā)明的軟件實現(xiàn)流程圖。
[0020]根據(jù)圖1系統(tǒng)的整體框圖可知,本發(fā)明設計的仿真平臺實現(xiàn)了一個閉環(huán)的控制系統(tǒng)。被控對象是在simulink上搭建的仿真電路模型,電路模型的輸出為被控信號,其與用戶給定的期望輸出進行比對,然后經(jīng)過控制器中相應的算法處理,輸出控制信號給被控對象,達到控制模型輸出為期望輸出,進而達到對控制器算法的實現(xiàn)和驗證的目的。其中控制信號為開關量。
[0021]根據(jù)圖2硬件結構圖可知,本發(fā)明設計的仿真平臺只包含兩個硬件部分,一部分是帶有實時內核的PC機,另一部分是控制器。其中PC機上安裝有RTLinux實時操作系統(tǒng)和matlab軟件,控制器上有下載好的待測的控制算法。PC機與控制器之間通過以太網(wǎng)接口實現(xiàn)雙向通訊。
[0022]根據(jù)圖3軟件實現(xiàn)流程圖可知,本發(fā)明設計的仿真平臺的具體實現(xiàn)方法如下:
[0023]首先需要初始化電路模型,設置電路模型中的參數(shù)和輸入輸出變量的類型和個數(shù),設置仿真模型的采樣時間為lus。
[0024]其次電路模型啟動,初始化以太網(wǎng)通訊接口,設置發(fā)送端口號,接收方的端口號和IP地址,并打開網(wǎng)絡端口。
[0025]然后進行定時lOOus中斷響應的檢測。如果中斷到來,則響應中斷,模型輸出,以太網(wǎng)發(fā)送數(shù)據(jù),否則繼續(xù)等待中斷的到來。
[0026]監(jiān)聽網(wǎng)絡端口。當網(wǎng)絡端口監(jiān)聽到控制器發(fā)送來的數(shù)據(jù)時,對接收到的數(shù)據(jù)進行判斷,否則網(wǎng)絡端口繼續(xù)監(jiān)聽。如果接收到的數(shù)據(jù)為開關量,則操作系統(tǒng)根據(jù)開關量的內容將simulink中的電路模型切換至相對應的電路模型中,并等待定時lOOus時鐘中斷的到來,否則電路模型結束運行,以太網(wǎng)端口關閉,程序結束。
[0027]當lOOus定時時鐘中斷到來時,重新初始化電路模型,開始下一次的模型處理,如此循環(huán)。
[0028]需要說明的一點是,本發(fā)明的軟件實現(xiàn)部分都是在simulink中自定義的S函數(shù)中實現(xiàn)的。為了使simulink實現(xiàn)實時仿真,還需要為S函數(shù)編寫相應的TLC文件。當編寫好相應的TLC文件后,simulink就可以實現(xiàn)實時仿真。
[0029]上述程序基本實現(xiàn)了仿真電路模型定時lOOus強時鐘節(jié)拍的輸出,并能夠快速在這些仿真模型之間進行切換,能夠很好地模擬實際電力系統(tǒng)中的各種電路模型的數(shù)據(jù)輸出和動作響應,達到準確快速的驗證控制器算法的目的。
[0030]雖然本發(fā)明創(chuàng)造已較好地實施并公開如上,但它們并不是用來限定本發(fā)明創(chuàng)造,任何熟習此技藝者,在不脫離本發(fā)明創(chuàng)造之精神和范圍內,自當可作各種變化或潤飾,因此本發(fā)明創(chuàng)造的保護范圍應當以本申請的權利要求保護范圍所界定的為準。
【主權項】
1.一種實時的自動化控制裝置的仿真平臺設計方法,其特征在于: 強時鐘節(jié)拍的設置:利用RTLinux實時操作系統(tǒng)的強實時性,設置時鐘節(jié)拍為100US ; 直接在RTLinux實時操作系統(tǒng)中,搭建好simulink模型并進行實時仿真處理;然后將模型中輸出的被控信號通過以太網(wǎng)接口以非常準確的時鐘節(jié)拍lOOus發(fā)送給控制器,其中以太網(wǎng)發(fā)送數(shù)據(jù)是通過觸發(fā)定時時鐘中斷來實現(xiàn)的;控制器接收到被測信號后,經(jīng)過一系列的控制算法處理后,將控制信號通過以太網(wǎng)接口發(fā)送給上位機的仿真模型,操作系統(tǒng)根據(jù)控制量的內容,將現(xiàn)有的模型切換到所對應的模型中來;Matlab采用等待機制來計算處理當前的模型數(shù)據(jù),并將被控量以強時鐘節(jié)拍通過以太網(wǎng)接口發(fā)送出去,如此循環(huán)下去。2.根據(jù)權利要求1所述的實時的自動化控制裝置的仿真平臺設計方法,其特征在于:Matlab采用等待機制來處理模型數(shù)據(jù),即當處理完一個模型數(shù)據(jù)后,不是立即處理下一個模型數(shù)據(jù),而是等待定時lOOus時鐘中斷的到來后再處理和計算下一個模型數(shù)據(jù)。3.根據(jù)權利要求1所述的實時的自動化控制裝置的仿真平臺設計方法,其特征在于:以太網(wǎng)接口是利用simulink模型中的S函數(shù)自定義創(chuàng)建的。4.根據(jù)權利要求1所述的實時的自動化控制裝置的仿真平臺設計方法,其特征在于:定時時鐘中斷是利用RTLinux實時操作系統(tǒng)中的硬中斷來實現(xiàn)的,定時時鐘設置為lOOus。5.根據(jù)權利要求1所述的實時的自動化控制裝置的仿真平臺設計方法,其特征在于:仿真模型通過強時鐘節(jié)拍控制模型輸出,來模擬實際電力系統(tǒng)中的電路模型輸出的采樣時間,進而達到準確模擬實際電力系統(tǒng)中的模型輸出的目的。6.根據(jù)權利要求1所述的實時的自動化控制裝置的仿真平臺設計方法,其特征在于:simulink模型是直接在RTLinux實時操作系統(tǒng)中進行搭建和實時仿真的;通過給自定義的S函數(shù)編寫相應的TLC文件來實現(xiàn)simulink模型的實時仿真。
【專利摘要】本發(fā)明公開了一種實時的自動化控制裝置的仿真平臺設計方法,首先在RTLinux實時操作系統(tǒng)下的simulink環(huán)境中進行各種電路模型的搭建。然后通過S函數(shù)創(chuàng)建的以太網(wǎng)通訊接口,將仿真模型的輸出以非常嚴格的時鐘節(jié)拍發(fā)送給控制器??刂破鹘邮盏綌?shù)據(jù)后經(jīng)過一定的算法處理,將控制的開關量發(fā)送給仿真模型。操作系統(tǒng)根據(jù)開關量的內容將當前的仿真模型切換至相應的仿真模型中。本發(fā)明將simulink直接放到RTLinux實時的操作上進行實時仿真處理,實現(xiàn)了強時鐘節(jié)拍的模型輸出和快速的模型切換。這大大的減少了控制器算法的開發(fā)成本,縮短了其開發(fā)周期。
【IPC分類】G05B19/04
【公開號】CN105388799
【申請?zhí)枴緾N201511016914
【發(fā)明人】張杭, 白轉燕
【申請人】南京因泰萊電器股份有限公司
【公開日】2016年3月9日
【申請日】2015年12月29日