複製鏈接
請複製以下鏈接發送給好友

實時控制程序

鎖定
實時數字控制的目的是要按預定的控制策略(算法),實時地對一個或多個對象進行控制,以期達到給定的指標。 [1] 
中文名
實時控制程序
外文名
real-time control routine
定    義
實時對一個或多個對象進行控制
特    點
實時性、可控性、可靠性
系    統
計算機
應用學科
計算機原理

實時控制程序實時控制程序特點

實時控制程序實時性

控制過程中,所有的數據採集、控制命令的發出都嚴格按實時時鐘的節拍控制。
1.實時時鐘管理。任何.一個實時控制系統都至少有一一個實時時鐘。它不同於計算機內部的時鐘,而是用來控制外部通道的動作。要通過程序對一個或多個時鐘進行管理,這包括時鐘狀態的設置、時間常數的裝入及中斷狀態的設定等。對於多個時鐘源,尤其要注意各個時鐘間的關係及中斷響應的優先級。
2.中斷管理。數字控制的實時性無一例外地都是通過中斷來實現的。產生中斷請求的中斷源除了實時時鐘外,還有一些通道器件或外部設備,以實現對某些狀態(如轉換結束、越限報警等)的及時處理。除了要設計高質量的中斷服務程序外,在實時控制程序中,必不可少地要包含對中斷的管理程序。如中斷方式、中斷矢量、中斷控制狀態的沒置及中斷優先級的管理等。
3.程序運行速度要求苛刻。為了保證控制的實時性,必須要求程序在指定的時間內執行完畢。尤其是當利用一台微計算機對多個通道進行控制時,由於一般是採用分時控制方式,所以,分配給每一通道的數據採集、變換、控制算法計算及控制量輸出等的時間是有限的。因此,在這有限的時間內要求上述程序都必須運行完畢。為此,除了對CPU等硬件速度有要求外,對程序設計採用的語言及編程質量都有比較高的要求,以獲得較高的運算和處理速度。有些控制方案可能在理論上能達到很高的控制精度,但由於算法過於複雜,無法實時運行,所以,對實際的控制系統也沒有什麼實際意義。

實時控制程序可控性

既然是實時控制程序,就要求操作者能設置程序的狀態,並隨機干預程序的運行或檢測程序的運行情況。
1.應具有較強的人機對話功能。初始參數的裝定、程序運行狀態的監視及運行過程的人工干預都是通過人機對話的形式實現的。人機的交互接口主要是鍵盤及顯示器。屏幕上顯示的信息應儘量簡潔、清晰、醒目。此外,還可藉助聲(語言、音樂、聲響)、光(指示燈)等方式實現人機聯繫。通過程序控制、管理實現很強的人機聯繫,這也是計算機控制系統一大優點。
2.通道管理功能。計算機控制系統的輸入、輸出通道包含了很多部件。這些部件的啓動、選通及狀態的改變、數據的採集及控制量的輸出等大都是由程序實現控制的。為了設計這部分程序,必須對通道接口地址以及各種控制信號的產生方法有十分清晰的瞭解。

實時控制程序可靠性

控制的對象往往是實際的生產過程,為了保證產品的質量及生產的安全,要求控制軟件必須是十分可靠的。除了要採取必要的容錯及冗餘措施外,一個完整的實時控制軟件還應包括自檢、診斷及報警功能。
在系統啓動或維護時,能借助於診斷軟件檢查全部內存及接口的好壞。若有故障,還要能診斷出產生故障的大致位置。在程序運行過程中,當出現越限、掉電等異常時,能自動產生報警信號,提醒操作人員及時處理。從而提高了程序的可靠性。
用軟件提高系統的可靠性及可維護性已發展成了一種專門的技術。軟件可靠性技術一般包括兩部分內容:利用軟件提高系統的可靠性及提高軟件本身的可靠性。
數字控制和傳統的模擬控制的一大區別是系統由硬件、軟件兩部分組成。恰當地使用軟件可靠性技術可以提高系統整體的可靠性,在一定程度上彌補了硬件的不足,這也是數字系統的優點之一。利用軟件提高系絞對靠性的措施大致有以下幾方面:
1.增加系統信息管理軟件,與硬件配合,對信息進行保護。
2.在信息傳送過程中,利用軟件冗餘校驗技術防止出現誤碼。
3.設計診斷程序,能及時發現故障,並指示故障的部位,縮短維修時間, 增加系統可維護性。
4.用軟件進行系統調度。
至於提高軟件本身的可靠性,一般可採用以下幾個措施:
1.採用程序分段和層次結構,將程序分成若干具有獨立功能的子程序塊,各程序塊可單獨,也可和其它程序塊一起使用。各程序塊之問通過固定單元進行通訊。這樣,使各個程序塊能獨立地調整和修改,而不影響其它程序塊。
2.提高可測性的設計。純屬軟件的故障一般在設計或運行的初期產生,需在各種可能條件下,重複運行,反覆測試才能發現。為便於測試程序的狀態,在程序設計時就要把測試手段作為程序開發的一部分統籌考慮。
3.對軟件進行測試。測試的基本方法是:給軟件一個典型的輸入,觀測輸出是否符合要求。如果正確,能給出相應提示,如果有錯,儘可能給出錯誤範圍,便於修改。在對軟件進行測試時,一般是按程序單元到整個系紙,由局部到整體的順序進的。
可靠性永遠是系統設計中最重要的問題,這就需要熟知系統運行的真實的環境條件。 [1] 

實時控制程序功能模塊

在實時控制程序的設計中,包含了在一般科學計算或仿真程序中所沒有的許多功能。這些功能一般是通過一個個相對獨立的功能程序模塊實現的。一個比較完整的控制程序一般應包括以下一些功能模塊。
1.初始化模塊。其中包括中斷方式、中斷矢量設置、時間常數的裝定等。 對於一些可編程接口器件,在使用前必須經初始化確定其狀態,方式後才能正常工作。
2.參數設定模塊。控制算法中的參數一般都是通過人機對話的方式設定的,這些參數包括設定值、採樣週期、控制器參數、越限報警的閥值等。
3.控制算法模塊。這部分是數字控制器的具體體現。一般算法程宇都是通過中斷服務的形式出現的。根據所採集到的數據,按既定策略計算出相應的控制量,及其它所需信息。因此,該模塊應包含數據採集及通道管理程亭。
4.自檢和診斷模塊。應包括主機及接口的開機自檢及故障診斷,並能通過人機對話方式,給出自檢和診斷結果。
5.故障報警模塊。當硬件或軟件出現故障時,能及時作出處理,並給出相應的報警和指示信息。這是保證系統安全運行的必不可少的部分。
6.控制枱管理模塊。控制枱是人和系統的接口,隨着系統的不同,控制枱的規模及包含的內容相差很大。但一般都包括顯示器(CRT、數碼管、指示燈等)、通用或專用鍵盤、報警指示等。因此,控制程序中應含對這些設備的管理程序。如自定義鍵盤的掃描和譯碼程序、指示儀表的控制程序及系統實時時鐘顯示等。 [1] 

實時控制程序設計步驟

實時控制程序的設計可以分為以下八個步驟:
1、分析任務(包括對象的輸入、輸出量、控制指標、運行環境等),確定合理的控制方案。
2、進行數字或混合仿真,對方案進行論證。若不滿意時轉l。
3、選擇主機,設計接口。儘量選用通用接口器件,要考慮性能/價格比。
4、選擇程序設計語言,分別設計各個控制模塊程序。
5、分級調試,分別調試各個模塊。如不滿意時轉4。
6、聯機調試,測試系統指標,並對系統進行考核。
7、程序固化,裝入系統運行。
8、日常維護。 [1] 
參考資料
  • 1.    李文秀 趙乃真編,數字控制系統,哈爾濱船舶工程學院出版社,1991年12月第1版,235-238