變步長算法的實時動畫在火電廠翻車機監控系統的應用
一、引 言
在現代電力系統中,對現場設備和相關自動化設備的實時監控以及故障診斷,是一個必不可少的環節;隨著自動化程度的提高,及時而又準確地預測和排除故障已經成為業內人士的常見話題。然而,在實時動畫模擬仿真系統中,動畫動作與實際的被模擬運動對象不同步的問題十分突出,直接影響了實時監視的效果。本文中提出了一種基于變步長算法的實時動畫生成方法,該方法根據記錄上一次運行的數據自動地調整下一次運行的參數,應用于動畫運行狀態。同時,由于采用了多線程等技術,模擬動畫能基本上與現場設備的運行狀態同步。
二、自適應變步長算法的設計原理
1.翻車機監控系統運行流程
火電廠翻車機卸煤系統是電廠的重要設備,由牽重、翻車和遷空三個子系統組成,主要操作設備有重調機、翻車機、遷車臺、空調機。大致的運行過程為:重調機把一節一節的煤車牽到翻車機內,同時把翻完的上一節空車推向遷車臺;接著翻車機通過壓、靠等把煤車固定,正翻165度,把煤卸下;遷車臺把空車遷往空車線,到達空車線后再由空調機把空車推走。
由于運行過程中各設備需要進行協調操作且聯鎖要求高,同時幾個子系統分布于不同視線區域,在實際運行時,即使借助工業電視也不能全面、及時、準確地了解整個卸煤系統的運行情況,因此容易造成設備損壞。為了解決以上問題,現在大部分的翻車機系統都設計了實時監控系統,把主要的運行設備集中在一個畫面上,模擬現場,這樣就對設備的運行情況一目了然。
根據設備位置和動作的不同,我們把各個設備的運動過程分為一些相關的運動狀態,如表1所示。
2.自適應變步長算法
所謂自適應變步長,就是在現場設備隨環境等因素影響而使運動的速度參數發生改變的時候,模擬動畫系統就能夠記錄下變化的參數,下一個循環周期就及時地調整動畫模型、改變移動步距,實時跟上現場的變化。動畫的過程,實質上就是根據相關數據每隔一定時間改變移動對象位置。控制對象的運動,需要改變對象的運動速度。改變運動的速度有兩種方法,一種是改變運動的步距,另一種是改變每一步所花的時間。一般情況下,采用這兩種方法的結合來調整速度。在翻車機實時監控系統中采用的自適應變步長算法,是根據實時需要改變步距,連續地調整速度。變步長算法的實時監控流程如圖1所示。
該變步長算法把對象移動的方向作為一個變量,與步長因子一起作為步長調整的參數。對于重調機、空調機、遷車臺而言,運動都是直線式;翻車機是旋轉的對象,其角度的變化就相當于要改變的步長。各對象的每一種狀態都在一定的位置范圍內,都有一個確定的初始位置,在這個初始位置的基礎之上,利用不斷累加的步數與方向和步長因子一起相乘得到的數值,即可確定相應對象的大致位置。由于對象的位置只能是象素整數,所以對得到的位置進行取整即得到相應對象的下一步位置。由于步長因子是根據我們的需要隨時變化而且連續可調的,這樣就實現了速度的連續可調。
下面以重調機接車為例來說明算法的實現。
設△V為調整以后的步長因子,本次接車的過程所花的時間為t, △Pi為第i步的步長,n為調整后的步數,f為調整后的步頻(每秒鐘所走的步數),S為接車段的總長度,方向為D(重調機和空調機向左移、遷車臺下移、翻車機正翻取+1,相反方向取-1),round為取整函數。
則有:
ni表示從起始位置開始所走的步數。
顯然有:
調整f和△V就可以實現△Pi的連續不同取值,這樣就保證了步長的整數要求,又使速度可以連續調整。
三、實時動畫的同步性分析
在翻車機實時監控系統中,為了做到動畫與現場、通信、故障診斷等的同步,除了在算法上采用了變步長實時檢測動畫的步距,同時也利用了多線程等編程技術,使得動畫、通信、故障診斷等各自擁有獨立的線程。CPU分時處理各線程的事務,從而保證了動畫的同步性。
1.通信對動畫同步性的影響
實時動畫是模擬現場的運行狀況,所以就必須要從現場得到相關的數據。在黃石電廠翻車機實時監控系統中,是通過PLC(在黃石電廠翻車機實時監控系統中采用的是美國A-B即Allen & Bradley公司的SLC5O0)把現場的傳感、操作、信號燈等信號傳過來的。為了節省上位機處理通信的時間,我們采用了武漢大學開發的USB多協議智能采集卡從PLC采集數據。該采集卡把PLC傳過來的數據進行打包存放在自己的存儲器中,上位機通過USB接口把數據成批的取過來,再通過程序把數據轉換為動畫控制可以直接應用的信號。由于采用了上下位機同時工作的機制,整個通信的時間很短,從PLC發出去的控制信號基本上同步地傳到上位機。這樣,就保證了現場采集的數據與我們用于動畫控制的數據同步。
2.動畫與故障診斷的同步
故障診斷部分隨時監測現場設備的運行,利用采集過來的實時信號與正常情況比較,判斷設備是否運行正常或判斷發生了什么故障,提出故障處理建議。模擬仿真動畫是為了監視設備的運行而設計的,它其實就是故障診斷的一部分。它為故障診斷提供直觀的感性數據,通過對模擬動畫的觀察,可以很快地確定故障的大致位置。配合故障診斷的建議,操作員就可以很快地知道故障所在地及故障類型,及時地排除故障。
3.動畫與現場運行對象的同步
實時監控系統模擬動畫是現場的反映,要求能把現場的運行情況實時而準確地反映出來。對于翻車機系統來說,雖然各個對象的狀態和過程是確定的,但是從長時間來看各個運動狀態的參數還是會有相應改變的。譬如,重調機的抬臂接車階段,在夏天由于其油泵的油溫高,油流暢通,液壓效果好,重調機抬落臂的時間短一些,接車整個階段的時間相對來說就短一些;而在冬季,由于油泵油溫低,易凝固,需要加熱,液壓效果差,所以抬落臂的時間就長一些,接車整個階段的時間相對來說就長一些。如果將這種變化抑制在允許的范圍內,通過一些狀態改變點的強制性同步,模擬動畫基本上能與現場保持一致。但是在實際運行對象速度變化較大的情況下,同步就比較困難。這時采用自適應變步長算法后,動畫模擬程序就會記錄下相關的數據,改變運動的步長,更新速度參數,下一次啟動的時候,模擬動畫就完全可以與現場保持同步。雖然是在每次重新啟動程序以后才更新數據,但是由于現場狀態參數的變化是很緩慢的,每一次的速度改變也不是很大,在每次操作員登錄的時候系統就會運行一次步長檢查程序,對步長進行調整,其同步性是能夠滿足要求的。
四、結 論
自適應變步長同步算法已應用于黃石電廠翻車機實時監控系統。該系統實時動畫采用可視化Delphi語言編程,界面直觀,在圖片處理方面占有很大優勢,同步性較好,動畫響應速度快,應用效果良好。
文中提出的自適應變步長算法,在系統運動對象速度不高、且速度已受環境等四環素條件改變的情況下較為適用,其同步性效果較好。
文章版權歸西部工控xbgk所有,未經許可不得轉載。