實時控制程式

實時控制程式

實時數字控制的目的是要按預定的控制策略(算法),實時地對一個或多個對象進行控制,以期達到給定的指標。

基本介紹

  • 中文名:實時控制程式
  • 外文名:real-time control routine
  • 定義:實時對一個或多個對象進行控制
  • 特點:實時性、可控性、可靠性
  • 系統:計算機
  • 套用學科:計算機原理
實時控制程式特點,實時性,可控性,可靠性,功能模組,設計步驟,

實時控制程式特點

實時性

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

可控性

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

可靠性

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

功能模組

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

設計步驟

實時控制程式的設計可以分為以下八個步驟:
1、分析任務(包括對象的輸入、輸出量、控制指標、運行環境等),確定合理的控制方案。
2、進行數字或混合仿真,對方案進行論證。若不滿意時轉l。
3、選擇主機,設計接口。儘量選用通用接口器件,要考慮性能/價格比。
4、選擇程式設計語言,分別設計各個控制模組程式。
5、分級調試,分別調試各個模組。如不滿意時轉4。
6、在線上調試,測試系統指標,並對系統進行考核。
7、程式固化,裝入系統運行。
8、日常維護。

相關詞條

熱門詞條

聯絡我們