測控系統(tǒng)原理與設計6-監(jiān)控程序設計_第1頁
測控系統(tǒng)原理與設計6-監(jiān)控程序設計_第2頁
測控系統(tǒng)原理與設計6-監(jiān)控程序設計_第3頁
測控系統(tǒng)原理與設計6-監(jiān)控程序設計_第4頁
測控系統(tǒng)原理與設計6-監(jiān)控程序設計_第5頁
已閱讀5頁,還剩56頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

1、監(jiān)控程序設計本章主要內容: 監(jiān)控程序的功能和組成監(jiān)控程序的功能和組成 監(jiān)控主程序和初始化管理監(jiān)控主程序和初始化管理 鍵盤管理鍵盤管理 顯示、中斷與時鐘管理顯示、中斷與時鐘管理 硬件故障的自檢硬件故障的自檢6.1 監(jiān)控程序的功能和組成監(jiān)控程序的功能和組成 監(jiān)控程序設計是指以空白的微處理器監(jiān)控程序設計是指以空白的微處理器/控制器為基礎,完成全部的軟件設計,控制器為基礎,完成全部的軟件設計, 沒有將系統(tǒng)軟件和應用軟件分開處理,沒有將系統(tǒng)軟件和應用軟件分開處理,其實時性和可靠性與設計人員的水平其實時性和可靠性與設計人員的水平密切相關,密切相關, 適用于功能較為簡單的中小型應用系適用于功能較為簡單的中小

2、型應用系統(tǒng)。統(tǒng)。測控系統(tǒng)(儀器)中軟件的主要功能測控系統(tǒng)(儀器)中軟件的主要功能 采集信息采集信息 與外界對話(鍵盤和顯示管理與外界對話(鍵盤和顯示管理 ) 記憶信息記憶信息 處理信息處理信息 控制功能控制功能 自我測試自我測試 自補償自適應自補償自適應/自校正自學習自校正自學習圖圖611 監(jiān)控程序的基本組成監(jiān)控程序的基本組成 監(jiān)控主程序調用各模塊,并將它們聯(lián)系起來,監(jiān)控主程序調用各模塊,并將它們聯(lián)系起來,形成一個有機整體,從而實現對系統(tǒng)的全部管形成一個有機整體,從而實現對系統(tǒng)的全部管理功能。理功能。 測控算法程序主要實現測量與控制功能,它由測控算法程序主要實現測量與控制功能,它由描述一種或幾

3、種測控算法描述一種或幾種測控算法(如數字濾波,如數字濾波,PID算算法等法等)的功能模塊構成,通常為實時中斷程序的功能模塊構成,通常為實時中斷程序或監(jiān)控程序所調用?;虮O(jiān)控程序所調用。 各功能模塊又由各種下層模塊各功能模塊又由各種下層模塊(子程序子程序)所支持。所支持。6.2 監(jiān)控主程序和初始化管理監(jiān)控主程序和初始化管理 6.2.1 監(jiān)控主程序監(jiān)控主程序 監(jiān)控主程序通常包括可編程器件、輸入、輸出端口和參數的初始化,自診斷管理模塊,鍵盤顯示管理模塊,以及實時中斷管理和處理模塊等 。 除了初始化和自診斷外,監(jiān)控主程序一般除了初始化和自診斷外,監(jiān)控主程序一般總是把其余部分聯(lián)接起來,構成一個無限總是把其

4、余部分聯(lián)接起來,構成一個無限循環(huán),測控系統(tǒng)的所有功能都在這一循環(huán)循環(huán),測控系統(tǒng)的所有功能都在這一循環(huán)中周而復始地、或有選擇地執(zhí)行,除非掉中周而復始地、或有選擇地執(zhí)行,除非掉電或按復位電或按復位(RESET)鍵,測控系統(tǒng)不會跳鍵,測控系統(tǒng)不會跳出這一循環(huán)。出這一循環(huán)。 由于各微機化測控系統(tǒng)的功能不同,硬件由于各微機化測控系統(tǒng)的功能不同,硬件結構不同,程序編制方法不同,因而監(jiān)控結構不同,程序編制方法不同,因而監(jiān)控主程序沒有統(tǒng)一的模式。主程序沒有統(tǒng)一的模式。 圖圖621 監(jiān)控主程序流程示例監(jiān)控主程序流程示例 6.2.2 初始化管理初始化管理 一、可編程器件初始化一、可編程器件初始化對可編程硬件對可編

5、程硬件接口電路的工作模式的初始化接口電路的工作模式的初始化 微機化測控系統(tǒng)中常用的可編程器件有:微機化測控系統(tǒng)中常用的可編程器件有: 鍵盤顯示管理接口鍵盤顯示管理接口8279、 I/O和和RAM擴展接口擴展接口8155, 并行輸入輸出接口并行輸入輸出接口8255、 定時計數器接口定時計數器接口8253等。等。 二、堆棧初始化二、堆棧初始化 復位后首先在用戶復位后首先在用戶RAM中確定一個堆中確定一個堆棧區(qū)域,由堆棧指示器棧區(qū)域,由堆棧指示器SP來管理來管理 三、參數初始化三、參數初始化 指對測控系統(tǒng)的指對測控系統(tǒng)的整定參數整定參數(如如PID算法的算法的Kp、Ti、Td三個參數的初值三個參數的

6、初值)、報警值報警值以及以及過程過程輸入通道的數據輸入通道的數據與與過程輸出通道的數據過程輸出通道的數據初初始化。始化。6.3 鍵盤管理鍵盤管理 6.3.1一鍵一義的鍵盤管理一鍵一義的鍵盤管理 一鍵一義,即一個按鍵代表一個確切的命令或一個數字,編程時只要根據當前按鍵的編碼把程序直接分支到相應的處理模塊的入口,而無需知道在此以前的按鍵情況。鍵盤信號的獲得有三種方法: 一、單純查詢法圖圖631 查詢法程序流程(了解)查詢法程序流程(了解)功能:按下不同的按鍵會使功能:按下不同的按鍵會使SOUNDER 發(fā)出不同頻率的聲音發(fā)出不同頻率的聲音#include#define uchar unsigned

7、char#define uint unsigned intsbit BEEP=P37;sbit K1=P14;sbit K2=P15;sbit K3=P16;sbit K4=P17;.void Play(uchar t) .void main()P1=0 xff;BEEP=0;while(1)if(K1=0) Play(1);if(K2=0) Play(2);if(K3=0) Play(3);if(K4=0) Play(4);二、鍵盤中斷法 按下鍵盤任何鍵都引起一個中斷請求,鍵碼分析過程放在中斷子程序中,這種方法需獨自占用一個外部中斷源,其監(jiān)控程序結構如圖6-3-2(a)所示。 圖圖632 中

8、斷法和定時法程序框圖中斷法和定時法程序框圖三、定時查詢法 每隔一定時間查詢一次鍵盤,由于時間間隔通常很短,對于操作者來說鍵盤的響應是實時的,鍵盤的查詢過程安排在定時中斷程序中完成,其監(jiān)控程序的結構框圖如圖6-3-2(b)所示。 6.3.2 一鍵多義的按鍵管理一鍵多義的按鍵管理 一、一鍵多義一、一鍵多義: 一個按鍵有多種功能,既可作多種命令鍵,又可作數字鍵。 在一鍵多義的情況下,一個命令不是由一次按鍵,而是由一個按鍵序列所組成而是由一個按鍵序列所組成。 換句話說,對一個按鍵含義的解釋,除了取決于本次按鍵外,還取決于以前按了些什么鍵。 因此對于一鍵多義的監(jiān)控程序,首先要判斷一個按鍵序列(而不是一次

9、按鍵)是否已構成一個合法命令。 若已構成合法命令,則執(zhí)行命令,否則等待新按鍵輸入。 二、一鍵多義的監(jiān)控程序 一鍵多義的監(jiān)控程序:要用多張轉移表,組成一個命令的前幾個按鍵起著引導的作用,把控制引向某張合適的轉移表,根據最后一個按鍵編碼查閱該轉移表,就找到要求的子程序入口。 按鍵的管理,可以用查詢法也可以用中斷法。 三、一鍵多義鍵服務程序流程實例 8回路微機溫控儀鍵盤有6個按鍵: C鍵(回路號18,第8回路為環(huán)境溫度補償,其余為控溫點) P鍵(參數號,有設定值,實測值,共8個參數) 鍵(加1) 鍵(減1)只用于設定值的修改 R鍵(運行) S鍵(停止運行) 第8回路(環(huán)境溫度補償回路)只有溫度實測值

10、一個參數,沒有其它參數 第17個回路有設定值(P、I、D參數,上、下限報警值)、溫度實測值8個參數 1、程序流程圖633 2、程序清單:參見教材。 設鍵編碼R:00H;S:01H;:02H; :03H;C:04H和P:05H。內存RAM 20H中高4位為通道(回路)號標記,低4位為參數號標記。假設8279命令口地址為7FFFH,數據口地址為7FFEH。 7個回路(17),每個回路8個參數,共有56個轉移入口,分別由56個鍵服務功能模塊所支持。第8回路無參數,由其獨立子程序C8單獨處理。圖圖633 一鍵多義鍵服務程序流程一鍵多義鍵服務程序流程6.3.3自動自動/手動切換手動切換 一、微機化控制系

11、統(tǒng)的兩種工作方式一、微機化控制系統(tǒng)的兩種工作方式 自動方式自動方式微機化控制系統(tǒng)的基本工作微機化控制系統(tǒng)的基本工作方式。方式。 手動方式手動方式在系統(tǒng)調試、測試時,用來在系統(tǒng)調試、測試時,用來調整輸出控制值。調整輸出控制值。二、自動二、自動/手動切換控制的基本功能是:手動切換控制的基本功能是:在手動方式時,能通過一定的手動操作來在手動方式時,能通過一定的手動操作來方便、準確地調整輸出值;方便、準確地調整輸出值;能實現手動能實現手動-自動的無擾動切換。自動的無擾動切換。三、實現手動操作的方法三、實現手動操作的方法 實現手動操作,有實現手動操作,有硬件方法硬件方法和和軟件方法軟件方法兩兩種。目前大

12、多數微機化系統(tǒng)采用軟件方法,種。目前大多數微機化系統(tǒng)采用軟件方法,由操作面板上的幾個按鍵來實現。由操作面板上的幾個按鍵來實現。 監(jiān)控程序通過判斷手動監(jiān)控程序通過判斷手動-自動切換鍵的狀態(tài)自動切換鍵的狀態(tài)來判斷是否進入手操方式。在手操方式時,來判斷是否進入手操方式。在手操方式時,系統(tǒng)的自動控制功能暫停,改由面板上的系統(tǒng)的自動控制功能暫停,改由面板上的輸出加、減兩鍵來調整輸出值。輸出加、減兩鍵來調整輸出值。 四、無擾動切換的實現四、無擾動切換的實現 在用戶在用戶RAM區(qū)中開辟一個輸出控制值單元,區(qū)中開辟一個輸出控制值單元,作為當前輸出控制量的映象,無論是手操作為當前輸出控制量的映象,無論是手操還是

13、自動控制,都是對這一輸出值的映象還是自動控制,都是對這一輸出值的映象單元進行加或減,在輸出模塊程序作用下,單元進行加或減,在輸出模塊程序作用下,輸出通道把此值送到執(zhí)行機構上去。輸出通道把此值送到執(zhí)行機構上去。 6.4顯示、中斷與時鐘管理顯示、中斷與時鐘管理 6.4.1顯示管理顯示管理一、微機化系統(tǒng)的主要顯示方式一、微機化系統(tǒng)的主要顯示方式 模擬指示模擬指示用模擬表頭作為顯示手段,用模擬表頭作為顯示手段,無需軟件管理。無需軟件管理。 數字顯示數字顯示硬件方案的不同,軟件顯示硬件方案的不同,軟件顯示管理方法也不同管理方法也不同二、顯示管理軟件的基本任務二、顯示管理軟件的基本任務1、顯示更新的數據、

14、顯示更新的數據 2、多參數的巡測和定點顯示管理、多參數的巡測和定點顯示管理 巡回顯示方式巡回顯示方式每隔一定時間每隔一定時間)改換改換一個新的顯示參數一個新的顯示參數 定點顯示方式定點顯示方式只跟蹤顯示某一參數,只跟蹤顯示某一參數,不改換通道或參數不改換通道或參數3、指示燈顯示管理、指示燈顯示管理通??捎膳c某一指示燈有關的功能模塊直通常可由與某一指示燈有關的功能模塊直接管理。接管理。P0=DSY_CODEDSY_Buffer0;P1=DSY_CODEDSY_Buffer1;P2=DSY_CODEDSY_Buffer2;DSY_Buffer2=Count/100; DSY_Buffer1=Cou

15、nt%100/10;DSY_Buffer0=Count%10;void main()LED=1;EA=1;EX0=1;IT0=1;while(1);/INT0 中斷函數void EX_INT0() interrupt 0LED=LED; /控制LED 亮滅#include#define uchar unsigned char#define uint unsigned intsbit LED=P00;/主程序 測控系統(tǒng)的中斷源:u過程通道u實時時鐘u面板按鍵u通信接口u系統(tǒng)故障6.4.2中斷管理中斷管理一、一個中斷源的中斷過程一、一個中斷源的中斷過程 :暫時保護程序計數器的內容。暫時保護程序計數

16、器的內容。將中斷服務程序的入口地址送入程序計數將中斷服務程序的入口地址送入程序計數器。器。在服務程序開始時,必須將服務程序需要在服務程序開始時,必須將服務程序需要使用的使用的CPU寄存器寄存器(例如累加器、進位位、例如累加器、進位位、專用的暫存寄存器等專用的暫存寄存器等)的內容暫時地保護起的內容暫時地保護起來,并在服務程序結束時再恢復其內容。來,并在服務程序結束時再恢復其內容。 對于引起中斷而將對于引起中斷而將INT變?yōu)榈碗娖降脑O備,變?yōu)榈碗娖降脑O備,系統(tǒng)必須進行適當的操作使系統(tǒng)必須進行適當的操作使INT再次變?yōu)楦咴俅巫優(yōu)楦唠娖健k娖?。如果允許發(fā)生中斷,則必須將允許中斷觸如果允許發(fā)生中斷,則必

17、須將允許中斷觸發(fā)器再次置位。發(fā)器再次置位。最后,恢復程序計數器原先被保存的內容,最后,恢復程序計數器原先被保存的內容,以便返回到被中斷的程序。以便返回到被中斷的程序。二、多個中斷源的處理 確定多個中斷源的優(yōu)先級,在軟件上作出確定多個中斷源的優(yōu)先級,在軟件上作出相應處理。相應處理。 當當CPU在處理中斷時,還要能響應更高級在處理中斷時,還要能響應更高級的中斷請求,而屏蔽掉同級或較低級的中的中斷請求,而屏蔽掉同級或較低級的中斷請求。斷請求。 三、中斷程序模塊三、中斷程序模塊 中斷模塊分中斷管理模塊和中斷服務模塊中斷模塊分中斷管理模塊和中斷服務模塊兩部分。兩部分。 1、中斷服務模塊、中斷服務模塊具體

18、服務內容,由各具體服務內容,由各測控系統(tǒng)的功能所決定。測控系統(tǒng)的功能所決定。 2、中斷管理模塊、中斷管理模塊 中斷管理軟件模塊,通常應包括以下功能:中斷管理軟件模塊,通常應包括以下功能:斷點現場保護;識別中斷源;判斷優(yōu)先級;斷點現場保護;識別中斷源;判斷優(yōu)先級;如果允許中斷嵌套,則再次開放中斷如果允許中斷嵌套,則再次開放中斷(單片單片機除外機除外);中斷服務結束后恢復現場,如圖;中斷服務結束后恢復現場,如圖6-4-1所示。所示。 圖圖641 中斷流程中斷流程四、多中斷源識別 通常,系統(tǒng)掉電總是作為最高級中斷源。其它通常,系統(tǒng)掉電總是作為最高級中斷源。其它中斷源的優(yōu)先級,則由設計人員根據系統(tǒng)的功

19、中斷源的優(yōu)先級,則由設計人員根據系統(tǒng)的功能特點來確定。當有兩個以上中斷源時,可以能特點來確定。當有兩個以上中斷源時,可以采用如下兩種方法:采用如下兩種方法:利用定時器利用定時器/計數器的外部事件計數輸入端計數器的外部事件計數輸入端(T0或或T1),作為邊沿觸發(fā)的外部中斷輸入端,這時,作為邊沿觸發(fā)的外部中斷輸入端,這時定時器定時器/計數器應工作于計數器方式,計數寄存計數器應工作于計數器方式,計數寄存器應預置滿度數。器應預置滿度數。每個中斷源都接在同一個外部中斷輸入端每個中斷源都接在同一個外部中斷輸入端(INT0或或INT1)上,同時利用輸入口來識別某裝置的中上,同時利用輸入口來識別某裝置的中斷請

20、求。斷請求。 圖圖642 多中斷源識別電路多中斷源識別電路6.4.3時鐘管理時鐘管理 一、時鐘作為定時器的用途一、時鐘作為定時器的用途過程輸入通道的數據采樣周期定時;過程輸入通道的數據采樣周期定時;過程輸出通道控制周期的定時;過程輸出通道控制周期的定時;參數修改按鍵數字增減速度的定時;參數修改按鍵數字增減速度的定時;多參數巡回顯示時的顯示周期定時;多參數巡回顯示時的顯示周期定時;動態(tài)保持方式輸出過程通道的動態(tài)刷新周期定動態(tài)保持方式輸出過程通道的動態(tài)刷新周期定時;時;電壓電壓-頻率型頻率型A/D轉換器定時電路;轉換器定時電路;故障監(jiān)視電路故障監(jiān)視電路(Watch dog)的定時信號。的定時信號。

21、二、實現定時的方法二、實現定時的方法1、硬件方法、硬件方法 采用可編程定時采用可編程定時/計數器接口電路計數器接口電路(如如CTC 8253)以及單片機內的定時電路。這種定時以及單片機內的定時電路。這種定時方法的定時間隔不可能做得太長。方法的定時間隔不可能做得太長。 采用實時時鐘芯片。采用實時時鐘芯片。 2、軟件方法。、軟件方法。 采用軟件延時方案,無需硬件成本,但要采用軟件延時方案,無需硬件成本,但要占用大量占用大量CPU時間,且實時性差,定時精時間,且實時性差,定時精度低。度低。 3、軟件與硬件相結合定時的方法、軟件與硬件相結合定時的方法 這種方案幾乎不影響測控系統(tǒng)的實時響應,這種方案幾乎

22、不影響測控系統(tǒng)的實時響應,而且能實現多種時間間隔的定時。而且能實現多種時間間隔的定時。 首先由定時電路產生一個基本的脈沖。硬首先由定時電路產生一個基本的脈沖。硬件定時時間到,產生一中斷。監(jiān)控主程序件定時時間到,產生一中斷。監(jiān)控主程序隨即轉入時鐘中斷管理模塊。隨即轉入時鐘中斷管理模塊。 在設計軟件結構時,可串行地或并行地設在設計軟件結構時,可串行地或并行地設置幾個軟件定時器置幾個軟件定時器(在用戶在用戶RAM區(qū)區(qū))。當硬。當硬件定時中斷一到,這些軟件時鐘分別用累件定時中斷一到,這些軟件時鐘分別用累加或遞減方法計時,并由軟件來判斷是否加或遞減方法計時,并由軟件來判斷是否定時時間到。定時時間到。 6

23、.5 硬件故障的自檢硬件故障的自檢 6.5.1自檢方式自檢方式一、自檢的基本原理一、自檢的基本原理 自檢就是利用事先編制的程序對測控系統(tǒng)的主自檢就是利用事先編制的程序對測控系統(tǒng)的主要部件進行自動檢測,以確定是否有故障以及要部件進行自動檢測,以確定是否有故障以及故障的內容和位置。故障的內容和位置。 故障診斷的基本原理是對被測部件輸入一串數故障診斷的基本原理是對被測部件輸入一串數據據試驗數據,然后觀察相應的輸出數據,試驗數據,然后觀察相應的輸出數據,并對觀察結果進行分析,確定故障的內容和位并對觀察結果進行分析,確定故障的內容和位置。試驗數據、觀察到的結果數據和故障的對置。試驗數據、觀察到的結果數據

24、和故障的對應關系應在故障診斷前準備好。應關系應在故障診斷前準備好。 二、自檢方式的三種類型:一、開機自檢在電源接通或系統(tǒng)復位之后進行。自檢中如果沒發(fā)現問題,就進入測量程序,如果發(fā)現問題,則及時報警。 2、周期性自檢、周期性自檢 在測控系統(tǒng)運行過程中,間斷插入的自檢在測控系統(tǒng)運行過程中,間斷插入的自檢操作,這種操作可以保證測控系統(tǒng)在使用操作,這種操作可以保證測控系統(tǒng)在使用過程中一直處于正常狀態(tài)。周期性自檢不過程中一直處于正常狀態(tài)。周期性自檢不影響測控系統(tǒng)的正常工作,因而只有當出影響測控系統(tǒng)的正常工作,因而只有當出現故障給予報警時,用戶才會覺察?,F故障給予報警時,用戶才會覺察。 鍵盤自檢具有鍵盤自

25、檢功能的測控系統(tǒng)面板上應設有“自檢”按鍵,當用戶對系統(tǒng)的可信度發(fā)出懷疑時,便通過該鍵來啟動一次自檢過程。 三、自檢結果的提示“出錯代碼” 自檢過程中,微機化測控系統(tǒng)一般都借用本身的顯示器,以文字或數字的形式顯示“出錯代碼”,出錯代碼通常以“Error X”字樣表示,其中“X”為故障代號,操作人員根據“出錯代碼”,查閱操作手冊便可確定故障內容。除了給出故障代號之外,往往還給出指示燈的閃爍或者音響報警信號,以提醒操作人員注意。 6.5.2自檢算法自檢算法一、一、ROM或或EPROM的檢測的檢測 ROM故障的檢測常用故障的檢測常用“校驗和校驗和”方法,具體作方法,具體作法是:在將程序機器碼寫入法是:

26、在將程序機器碼寫入ROM的時候,保留的時候,保留一個單元一個單元(一般是最后一個單元一般是最后一個單元),此單元不寫,此單元不寫程序機器碼而是寫程序機器碼而是寫“校驗字校驗字”,“校驗字校驗字”應應能滿足能滿足ROM中所有單元的每一列都具有奇數個中所有單元的每一列都具有奇數個1。自檢程序的內容是:對每一列數進行異或運。自檢程序的內容是:對每一列數進行異或運算,如果算,如果ROM無故障,各列的運算結果應都為無故障,各列的運算結果應都為“1”,即校驗和等于,即校驗和等于FFH。 二、RAM的檢測 常用的方法是“異或法”,即把RAM單元的內容求反并與原碼進行“異或”運算,如果結果為FFH,則表明該RAM單元讀寫功能正常,否則,說明該單元有故障。最后再恢復原單元內容。RAM的自檢流程如圖651所示。 圖圖651 RAM自檢流程圖自檢流程圖三、總線的自檢 總線的自檢是指對經過緩沖器的總線進行檢測。總線的

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論