




版權(quán)說(shuō)明:本文檔由用戶(hù)提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、第第9 9章章 計(jì)算機(jī)控制系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)計(jì)算機(jī)控制系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)設(shè)計(jì)原則:設(shè)計(jì)原則: 操作性好操作性好 實(shí)施性強(qiáng)實(shí)施性強(qiáng) 可靠性高可靠性高一般設(shè)計(jì)步驟:一般設(shè)計(jì)步驟: 系統(tǒng)總體控制方案設(shè)計(jì)系統(tǒng)總體控制方案設(shè)計(jì) 微型計(jì)算機(jī)選擇微型計(jì)算機(jī)選擇 控制算法設(shè)計(jì)控制算法設(shè)計(jì) 硬件設(shè)計(jì)硬件設(shè)計(jì) 軟件設(shè)計(jì)軟件設(shè)計(jì) 系統(tǒng)聯(lián)調(diào)系統(tǒng)聯(lián)調(diào) 通用性好通用性好 經(jīng)濟(jì)效益高經(jīng)濟(jì)效益高一、確定系統(tǒng)總體控制方案一、確定系統(tǒng)總體控制方案 構(gòu)思系統(tǒng)的整體方案,應(yīng)從以下幾方面入手構(gòu)思系統(tǒng)的整體方案,應(yīng)從以下幾方面入手 : 考慮系統(tǒng)結(jié)構(gòu)考慮系統(tǒng)結(jié)構(gòu) 執(zhí)行機(jī)構(gòu)采用什么方案執(zhí)行機(jī)構(gòu)采用什么方案 有否特殊控制要求?特殊要求應(yīng)采取那些措
2、施。有否特殊控制要求?特殊要求應(yīng)采取那些措施。 確定計(jì)算機(jī)在整個(gè)控制系統(tǒng)中所起的作用確定計(jì)算機(jī)在整個(gè)控制系統(tǒng)中所起的作用 三、控制算法設(shè)計(jì)三、控制算法設(shè)計(jì)二、選擇計(jì)算機(jī)二、選擇計(jì)算機(jī)所選計(jì)算機(jī)應(yīng)滿(mǎn)足以下要求:所選計(jì)算機(jī)應(yīng)滿(mǎn)足以下要求: 完善的中斷系統(tǒng)完善的中斷系統(tǒng) 足夠的存儲(chǔ)容量足夠的存儲(chǔ)容量 完備的完備的I/O通道和實(shí)時(shí)時(shí)鐘通道和實(shí)時(shí)時(shí)鐘9.3 計(jì)算機(jī)控制系統(tǒng)的硬件設(shè)計(jì)計(jì)算機(jī)控制系統(tǒng)的硬件設(shè)計(jì) 任務(wù):任務(wù):根據(jù)系統(tǒng)總體框圖,設(shè)計(jì)出系統(tǒng)的電氣原理圖,再按根據(jù)系統(tǒng)總體框圖,設(shè)計(jì)出系統(tǒng)的電氣原理圖,再按照電氣原理圖選購(gòu)元件和進(jìn)行施工設(shè)計(jì)。照電氣原理圖選購(gòu)元件和進(jìn)行施工設(shè)計(jì)。包括:包括: 接口電路和
3、接口電路和I/O通道的擴(kuò)充通道的擴(kuò)充 組合邏輯或時(shí)序邏輯電路組合邏輯或時(shí)序邏輯電路 供電電源供電電源 光電隔離光電隔離 電平轉(zhuǎn)換電平轉(zhuǎn)換 驅(qū)動(dòng)放大電路等驅(qū)動(dòng)放大電路等 接口設(shè)計(jì)接口設(shè)計(jì) 接口設(shè)計(jì)內(nèi)容:接口設(shè)計(jì)內(nèi)容: 擴(kuò)充接口擴(kuò)充接口 安排接口電路的安排接口電路的I/O信號(hào)及交換方式。信號(hào)及交換方式。常用的擴(kuò)充方法:常用的擴(kuò)充方法: 選用專(zhuān)門(mén)的功能接口板選用專(zhuān)門(mén)的功能接口板 選用通用接口電路選用通用接口電路 用集成電路自行設(shè)計(jì)接口電路用集成電路自行設(shè)計(jì)接口電路 接口電路接口電路I/O信號(hào)的交換方式:信號(hào)的交換方式: 中斷控制讀取中斷控制讀取IO方式方式 直接存儲(chǔ)器存取方式直接存儲(chǔ)器存取方式 通道
4、設(shè)計(jì)通道設(shè)計(jì)系統(tǒng)系統(tǒng)I/O通道:通道: 數(shù)字量數(shù)字量I/O通道通道 開(kāi)關(guān)量開(kāi)關(guān)量I/O通道通道 模擬量模擬量I/O通道通道 脈沖量脈沖量I/O通道通道 在總體設(shè)計(jì)中,應(yīng)確定本系統(tǒng)應(yīng)設(shè)置什么樣的通道、每個(gè)通道在總體設(shè)計(jì)中,應(yīng)確定本系統(tǒng)應(yīng)設(shè)置什么樣的通道、每個(gè)通道由幾部分組成,各部分選用什么器件等。由幾部分組成,各部分選用什么器件等。 操作員控制臺(tái)設(shè)計(jì)操作員控制臺(tái)設(shè)計(jì) 包括:各種轉(zhuǎn)換開(kāi)關(guān)、按鈕、鍵盤(pán)、數(shù)字顯示器、狀態(tài)故障指包括:各種轉(zhuǎn)換開(kāi)關(guān)、按鈕、鍵盤(pán)、數(shù)字顯示器、狀態(tài)故障指示燈等。示燈等。 可靠性設(shè)計(jì)可靠性設(shè)計(jì) 9.4 計(jì)算機(jī)控制系統(tǒng)的軟件設(shè)計(jì)計(jì)算機(jī)控制系統(tǒng)的軟件設(shè)計(jì) 軟件軟件 系統(tǒng)軟件系統(tǒng)軟件
5、應(yīng)用軟件應(yīng)用軟件組織應(yīng)用軟件的內(nèi)容及步驟:組織應(yīng)用軟件的內(nèi)容及步驟: 確定具體要求確定具體要求 軟件規(guī)劃軟件規(guī)劃 程序編制程序編制 軟件調(diào)試軟件調(diào)試 善后工作善后工作 確定具體要求確定具體要求 管理要求管理要求 輸入輸出要求輸入輸出要求 語(yǔ)言加工要求語(yǔ)言加工要求 功能處理要求功能處理要求 軟件規(guī)劃軟件規(guī)劃 模式選擇模式選擇 語(yǔ)言選擇語(yǔ)言選擇 匯編語(yǔ)言匯編語(yǔ)言 高級(jí)語(yǔ)言高級(jí)語(yǔ)言 確定數(shù)據(jù)結(jié)構(gòu)確定數(shù)據(jù)結(jié)構(gòu) 劃分程序塊劃分程序塊 確定程序編制順序確定程序編制順序 內(nèi)存安排內(nèi)存安排 用符號(hào)來(lái)代替某部分程序的首址。用符號(hào)來(lái)代替某部分程序的首址。 粗略估算各部分容量粗略估算各部分容量 根據(jù)具體情況對(duì)內(nèi)存作
6、精確安排根據(jù)具體情況對(duì)內(nèi)存作精確安排 程序編排和分配程序編排和分配 軟件裝配和總調(diào)軟件裝配和總調(diào) 軟件設(shè)計(jì)的善后工作軟件設(shè)計(jì)的善后工作 系統(tǒng)聯(lián)調(diào)系統(tǒng)聯(lián)調(diào) 硬件軟件功能分配與協(xié)調(diào)硬件軟件功能分配與協(xié)調(diào)大量使用硬件會(huì)增加成本,影響系統(tǒng)可靠性;增加軟件,系大量使用硬件會(huì)增加成本,影響系統(tǒng)可靠性;增加軟件,系統(tǒng)速度相應(yīng)降低統(tǒng)速度相應(yīng)降低 。 一、一、軟件的分類(lèi)軟件的分類(lèi)軟件軟件 系統(tǒng)軟件系統(tǒng)軟件應(yīng)用軟件應(yīng)用軟件 操作系統(tǒng)操作系統(tǒng)語(yǔ)言加工系統(tǒng)語(yǔ)言加工系統(tǒng)診斷系統(tǒng)診斷系統(tǒng) 控制程序控制程序數(shù)據(jù)采集及處理程序數(shù)據(jù)采集及處理程序巡回檢測(cè)程序巡回檢測(cè)程序數(shù)據(jù)管理程序數(shù)據(jù)管理程序編輯程序編輯程序編譯程序編譯程序連
7、接、裝配程序連接、裝配程序調(diào)試程序調(diào)試程序子程序庫(kù)子程序庫(kù) 數(shù)據(jù)可靠性檢查程序數(shù)據(jù)可靠性檢查程序AD轉(zhuǎn)換及采樣程序轉(zhuǎn)換及采樣程序 數(shù)字濾波程序數(shù)字濾波程序 線(xiàn)性化處理程序線(xiàn)性化處理程序 數(shù)據(jù)采集程序數(shù)據(jù)采集程序 越限報(bào)警程序越限報(bào)警程序 事故預(yù)告程序事故預(yù)告程序 畫(huà)面顯示程序畫(huà)面顯示程序 二、應(yīng)用程序的語(yǔ)言選擇及設(shè)計(jì)步驟二、應(yīng)用程序的語(yǔ)言選擇及設(shè)計(jì)步驟 1、語(yǔ)言選擇、語(yǔ)言選擇 機(jī)器語(yǔ)言機(jī)器語(yǔ)言 匯編語(yǔ)言匯編語(yǔ)言 高級(jí)語(yǔ)言高級(jí)語(yǔ)言 2、應(yīng)用程序的設(shè)計(jì)步驟和方法應(yīng)用程序的設(shè)計(jì)步驟和方法 應(yīng)用程序設(shè)計(jì)應(yīng)用程序設(shè)計(jì)的的五個(gè)步驟:五個(gè)步驟: 問(wèn)題定義問(wèn)題定義 程序設(shè)計(jì)程序設(shè)計(jì) 編碼編碼 調(diào)試調(diào)試 改進(jìn)和
8、再設(shè)計(jì)改進(jìn)和再設(shè)計(jì)程序設(shè)計(jì)通常采用模塊程序設(shè)計(jì)法和結(jié)構(gòu)程序設(shè)計(jì)法程序設(shè)計(jì)通常采用模塊程序設(shè)計(jì)法和結(jié)構(gòu)程序設(shè)計(jì)法結(jié)構(gòu)化程序設(shè)計(jì)基本思想的三種基本結(jié)構(gòu)表示:結(jié)構(gòu)化程序設(shè)計(jì)基本思想的三種基本結(jié)構(gòu)表示: 順序結(jié)構(gòu)順序結(jié)構(gòu) 選擇結(jié)構(gòu)選擇結(jié)構(gòu) 循環(huán)結(jié)構(gòu)循環(huán)結(jié)構(gòu)三、高級(jí)語(yǔ)言和匯編語(yǔ)言的混合編程三、高級(jí)語(yǔ)言和匯編語(yǔ)言的混合編程1、 混合語(yǔ)言編程的基本概念混合語(yǔ)言編程的基本概念 1)程序接口)程序接口在一種語(yǔ)言程序中調(diào)用由其他語(yǔ)言編寫(xiě)的程序模塊。在一種語(yǔ)言程序中調(diào)用由其他語(yǔ)言編寫(xiě)的程序模塊。 2)命名約定)命名約定為了解決不同語(yǔ)言對(duì)名稱(chēng)標(biāo)識(shí)符的不同處理,對(duì)目標(biāo)文件名長(zhǎng)為了解決不同語(yǔ)言對(duì)名稱(chēng)標(biāo)識(shí)符的不同處理,對(duì)目
9、標(biāo)文件名長(zhǎng)度的不同限制的約定。度的不同限制的約定。 3)調(diào)用約定)調(diào)用約定在兩種程序語(yǔ)言中為實(shí)現(xiàn)彼此調(diào)用而建立的一種協(xié)定,它具體在兩種程序語(yǔ)言中為實(shí)現(xiàn)彼此調(diào)用而建立的一種協(xié)定,它具體對(duì)應(yīng)了一個(gè)函數(shù)、一個(gè)過(guò)程或者是一個(gè)子程序的調(diào)用過(guò)程。對(duì)應(yīng)了一個(gè)函數(shù)、一個(gè)過(guò)程或者是一個(gè)子程序的調(diào)用過(guò)程。 4)參數(shù)傳遞約定)參數(shù)傳遞約定在定義或說(shuō)明時(shí)用形式參數(shù),調(diào)用時(shí)則替換成實(shí)際參數(shù)在定義或說(shuō)明時(shí)用形式參數(shù),調(diào)用時(shí)則替換成實(shí)際參數(shù).參數(shù)傳遞方式:參數(shù)傳遞方式: 傳值傳值 傳址傳址 傳名傳名 傳結(jié)果傳結(jié)果 2、 C語(yǔ)言程序?qū)R編語(yǔ)言程序的調(diào)用語(yǔ)言程序?qū)R編語(yǔ)言程序的調(diào)用 1)C語(yǔ)言程序中的接口處理語(yǔ)言程序中的接口處
10、理 命名約定命名約定 調(diào)用約定調(diào)用約定 參數(shù)傳遞約定參數(shù)傳遞約定 2) 匯編語(yǔ)言中的接口處理匯編語(yǔ)言中的接口處理 在定義和編寫(xiě)匯編語(yǔ)言程序的被調(diào)用過(guò)程時(shí),應(yīng)以下劃在定義和編寫(xiě)匯編語(yǔ)言程序的被調(diào)用過(guò)程時(shí),應(yīng)以下劃線(xiàn)開(kāi)頭,并用線(xiàn)開(kāi)頭,并用PUBLIC說(shuō)明說(shuō)明. 如果如果C語(yǔ)言程序以巨型、大型、存儲(chǔ)模式編譯,被語(yǔ)言程序以巨型、大型、存儲(chǔ)模式編譯,被C語(yǔ)語(yǔ)言調(diào)用的匯編過(guò)程應(yīng)說(shuō)明成言調(diào)用的匯編過(guò)程應(yīng)說(shuō)明成fa;小型、緊湊型存儲(chǔ)模式編譯,;小型、緊湊型存儲(chǔ)模式編譯,被調(diào)用的匯編過(guò)程應(yīng)說(shuō)明成被調(diào)用的匯編過(guò)程應(yīng)說(shuō)明成NEAR。 考慮調(diào)用約定考慮調(diào)用約定 在被在被C語(yǔ)言調(diào)用的匯編過(guò)程中用指令語(yǔ)言調(diào)用的匯編過(guò)程中
11、用指令RET返回,而在返回,而在BASIC等其他語(yǔ)言中要求用指令等其他語(yǔ)言中要求用指令RETn返回。返回。 根據(jù)缺省默認(rèn),根據(jù)缺省默認(rèn),C語(yǔ)言的參數(shù)傳遞方式是傳值,但數(shù)組總語(yǔ)言的參數(shù)傳遞方式是傳值,但數(shù)組總是采用傳址方式。是采用傳址方式。3、匯編語(yǔ)言程序?qū)?、匯編語(yǔ)言程序?qū)語(yǔ)言程序的調(diào)用語(yǔ)言程序的調(diào)用 1)命名約定)命名約定 2)調(diào)用約定)調(diào)用約定 3)參數(shù)傳遞的方式)參數(shù)傳遞的方式4、微型計(jì)算機(jī)控制系統(tǒng)的研制工具、微型計(jì)算機(jī)控制系統(tǒng)的研制工具利用聯(lián)機(jī)仿真器可以實(shí)現(xiàn)以下開(kāi)發(fā)手段:利用聯(lián)機(jī)仿真器可以實(shí)現(xiàn)以下開(kāi)發(fā)手段: 1)系統(tǒng)實(shí)時(shí)仿真)系統(tǒng)實(shí)時(shí)仿真 2)資源借調(diào))資源借調(diào) 3)控制系統(tǒng)綜合設(shè)計(jì)和
12、調(diào)試)控制系統(tǒng)綜合設(shè)計(jì)和調(diào)試9.4.3 信號(hào)的數(shù)字濾波技術(shù)信號(hào)的數(shù)字濾波技術(shù)1、 數(shù)字濾波器數(shù)字濾波器 算術(shù)平均值濾波算術(shù)平均值濾波NkkXNY11算術(shù)平均值濾波程序流程圖算術(shù)平均值濾波程序流程圖 中值濾波中值濾波中值濾波程序流程圖中值濾波程序流程圖 一階滯后濾波一階滯后濾波1)1 (kkkayxay一階滯后濾波程序流程圖一階滯后濾波程序流程圖 程序判斷濾波程序判斷濾波 限幅濾波限幅濾波限幅濾波程序流程圖限幅濾波程序流程圖 限速濾波限速濾波限速濾波程序流程圖限速濾波程序流程圖2、 線(xiàn)性化處理線(xiàn)性化處理 分段線(xiàn)性插值分段線(xiàn)性插值)(11iiiiiixxxxyyyy 3、數(shù)碼顯示、數(shù)碼顯示兩位十進(jìn)
13、制數(shù)顯示兩位十進(jìn)制數(shù)顯示程序流程圖程序流程圖4、越限報(bào)警處理程序、越限報(bào)警處理程序5、PID控制算法程序控制算法程序9.7 可靠性與抗干擾技術(shù)概述可靠性與抗干擾技術(shù)概述9.7.1 干擾竄入計(jì)算機(jī)控制系統(tǒng)的主要途徑干擾竄入計(jì)算機(jī)控制系統(tǒng)的主要途徑干擾竄入計(jì)算機(jī)控制系統(tǒng)的主要途徑如圖9-1所示。 (1)空間感應(yīng);(2)過(guò)程通道竄入的干擾;(3)電源系統(tǒng)竄入的干擾(4)地電位波動(dòng)竄入的干擾;(5)反射波干擾。圖9-1 干擾竄入單片機(jī)系統(tǒng)主要途徑示意圖1空間感應(yīng)的干擾 空間感應(yīng)的干擾主要來(lái)源于電磁場(chǎng)在空間的傳播。例如,輸電線(xiàn)和電氣設(shè)備發(fā)出的電磁場(chǎng),空中雷電等放電現(xiàn)象。2過(guò)程通道的干擾 過(guò)程通道的干擾常
14、常沿著過(guò)程通道進(jìn)入計(jì)算機(jī),主要原因是過(guò)程通道與主機(jī)之間存在公共地線(xiàn),要設(shè)法削弱和斬?cái)噙@些來(lái)自公共地線(xiàn)的干擾,以提高過(guò)程通道的抗干擾能力。過(guò)程通道的干擾按照其作用方式,一般分為串模干擾和共模干擾。(1)串模干擾是指串聯(lián)于信號(hào)回路之中的干擾。其表現(xiàn)形式如圖9-2所示。 圖9-2 串模干擾示意圖 其中Vs為信號(hào)源,Vn為疊加在Vs上的串聯(lián)干擾信號(hào)。干擾可能來(lái)自信號(hào)源內(nèi)部如圖7-2(a)所示,也可能來(lái)自鄰近的導(dǎo)線(xiàn)(干擾線(xiàn))如圖7-2(b)所示,如果鄰近的導(dǎo)線(xiàn)(干擾線(xiàn))中有交變電流Ia流過(guò),那么由Ia產(chǎn)生的電磁干擾信號(hào)就會(huì)通過(guò)分布電容C1和C2的耦合,引入A/D轉(zhuǎn)換器的輸入端。 (2)計(jì)算機(jī)控制系統(tǒng)中,
15、被控對(duì)象往往比較分散,一般都有很長(zhǎng)的引線(xiàn)將現(xiàn)場(chǎng)信號(hào)源、信號(hào)放大器、主機(jī)等連接起來(lái)。引線(xiàn)長(zhǎng)在幾十米以至幾百米,兩地之間往往存在著一個(gè)電位差Vc,如圖9-3所示。這個(gè)Vc對(duì)放大器產(chǎn)生的干擾,稱(chēng)為共模干擾。圖9-3 共模干擾示意圖 其中Vs為信號(hào)源,Vc為共模電壓。這種干擾可以是直流電壓,也可以是交流電壓,其幅值可達(dá)幾伏甚至更高,取決于現(xiàn)場(chǎng)產(chǎn)生干擾的環(huán)境條件和計(jì)算機(jī)等設(shè)備的接地情況。3電源系統(tǒng)的干擾 控制用計(jì)算機(jī)一般由交流電網(wǎng)供電(220V AC,50Hz),電壓不穩(wěn)、頻率波動(dòng)、突然掉電事故難免發(fā)生,這些都會(huì)直接影響計(jì)算機(jī)系統(tǒng)的可靠性與穩(wěn)定性。4地電位波動(dòng)的干擾 計(jì)算機(jī)控制系統(tǒng)分散的很廣,地線(xiàn)與地線(xiàn)
16、之間存在一定的電位差。計(jì)算機(jī)交流供電電源的地電位很不穩(wěn)定。在交流地上任意兩點(diǎn)之間,往往很容易就有幾伏至十幾伏的電位差存在。5反射波的干擾 電信號(hào)(電流、電壓)在沿導(dǎo)線(xiàn)傳輸過(guò)程中,由于分布電容、電感和電阻的存在,導(dǎo)線(xiàn)上各點(diǎn)的電信號(hào)并不能馬上建立,而是有一定的滯后,離起點(diǎn)越遠(yuǎn),電壓波和電流波到達(dá)的時(shí)間越晚。這樣,電波在線(xiàn)路上以一定的速度傳播開(kāi)來(lái),從而形成行波。如果傳輸線(xiàn)的終端阻抗與傳輸線(xiàn)的波阻抗不匹配,那么當(dāng)入射波到達(dá)終端時(shí),便會(huì)引起反射。同樣,反射波到達(dá)傳輸線(xiàn)始端時(shí),如果始端阻抗也不匹配,也會(huì)引起新的反射。這種信號(hào)的多次反射現(xiàn)象,使信號(hào)波形嚴(yán)重地畸變,并且引起干擾脈沖。9.1.2 干擾的耦合方式
17、干擾的耦合方式 耦合是指電路與電路之間的電的聯(lián)系,即一個(gè)電路的電壓或電流通過(guò)耦合,使得另一個(gè)電路產(chǎn)生相應(yīng)的電壓或電流。耦合起著電磁能量從一個(gè)電路傳輸?shù)搅硪粋€(gè)電路的作用。 干擾的耦合方式主要有以下幾種形式。 1直接耦合方式 直接耦合又稱(chēng)為傳導(dǎo)耦合,是干擾信號(hào)經(jīng)過(guò)導(dǎo)線(xiàn)直接傳導(dǎo)到被干擾電路中而造成對(duì)電路的干擾。它是干擾源與敏感設(shè)備之間的主要干擾耦合途徑之一。2公共阻抗耦合方式 公共阻抗耦合是當(dāng)電路的電流流經(jīng)一個(gè)公共阻抗時(shí),一個(gè)電路的電流在該公共阻抗上形成的電壓就會(huì)對(duì)另一個(gè)電路產(chǎn)生影響。公共阻抗耦合是噪聲源和信號(hào)源具有公共阻抗時(shí)的傳導(dǎo)耦合。3電容耦合方式 電容耦合又稱(chēng)靜電耦合或電場(chǎng)耦合,是指電位變化在
18、干擾源與干擾對(duì)象之間引起的靜電感應(yīng)。計(jì)算機(jī)控制系統(tǒng)電路的元件之間、導(dǎo)線(xiàn)之間、導(dǎo)線(xiàn)與元件之間都存在著分布電容,如果一個(gè)導(dǎo)體上的信號(hào)電壓(或噪聲電壓)通過(guò)分布電容使其他導(dǎo)體上的電位受到影響,這樣的現(xiàn)象就稱(chēng)為電容性耦合。4電磁感應(yīng)耦合方式 電磁感應(yīng)耦合又稱(chēng)磁場(chǎng)耦合。在任何載流導(dǎo)體周?chē)臻g中都會(huì)產(chǎn)生磁場(chǎng)。若磁場(chǎng)是交變的,則對(duì)其周?chē)]合電路產(chǎn)生感應(yīng)電勢(shì)。5輻射耦合方式 當(dāng)高頻電流流過(guò)導(dǎo)體時(shí),在該導(dǎo)體周?chē)惝a(chǎn)生電力線(xiàn)和磁力線(xiàn),并發(fā)生高頻變化,從而形成一種在空間傳播的電磁波。處于電磁波中的導(dǎo)體便會(huì)感應(yīng)出相應(yīng)頻率的電動(dòng)勢(shì)。電磁場(chǎng)輻射干擾是一種無(wú)規(guī)則的干擾,這種干擾很容易通過(guò)電源線(xiàn)傳到系統(tǒng)中去。當(dāng)信號(hào)傳輸線(xiàn)(輸
19、入線(xiàn)、輸出線(xiàn)、控制線(xiàn))較長(zhǎng)時(shí),它們能輻射干擾波和接受干擾波,稱(chēng)為天線(xiàn)效應(yīng)。6漏電耦合方式 漏電耦合是電阻性耦合方式。當(dāng)相鄰的元件或?qū)Ь€(xiàn)間的絕緣電阻降低時(shí),有些電信號(hào)便通過(guò)這個(gè)降低了的絕緣電阻耦合到邏輯元件的輸入端而形成干擾。 9.7.1 提高可靠性的措施提高可靠性的措施一、一、 硬件方面的措施硬件方面的措施1光電隔離 光電隔離是由光電耦合器來(lái)完成的。光電耦合器的結(jié)構(gòu)如圖9-4所示。 圖9-4 光電耦合器結(jié)構(gòu) 采用光電耦合器可以切斷主機(jī)與過(guò)程通道以及其他主機(jī)部分電路的電聯(lián)系,能有效地防止干擾從過(guò)程通道串入主機(jī),如圖9-5所示。 圖9-5 光電隔離基本配置 光電耦合器能夠抑制干擾信號(hào),主要是因?yàn)樗?/p>
20、具有以下幾個(gè)特點(diǎn): 以光為媒介傳輸信號(hào)的,其輸入和輸出在電氣上是隔離的。 光電耦合部分是在一個(gè)密封的管殼內(nèi)進(jìn)行的,因而不會(huì)受到外界光的干擾。 光電耦合器的輸入阻抗很低,而干擾源內(nèi)阻一般都很大, 傳送到光電耦合器輸入端的干擾電壓就變得很小了。 一般干擾噪聲源的內(nèi)阻很大,可供出的能量很小,只能形成很微弱的電流。由于沒(méi)有足夠的能量,也不能使二極管發(fā)光,顯然,干擾就被抑制掉了。 輸入回路與輸出回路之間分布電容極小,而且絕緣電阻很大,因此,在回路中,一端的干擾很難通過(guò)光電耦合器饋送到另一端去。 在傳輸線(xiàn)較長(zhǎng)、現(xiàn)場(chǎng)干擾十分強(qiáng)烈時(shí),通過(guò)光電耦合器將長(zhǎng)線(xiàn)完全“浮置”起來(lái),如圖9-6所示。 圖9-6 長(zhǎng)線(xiàn)傳輸光
21、電耦合浮置處理2繼電器隔離 繼電器的線(xiàn)圈和觸點(diǎn)之間沒(méi)有電氣上的聯(lián)系,因此,可利用繼電器的線(xiàn)圈接受電氣信號(hào),從而避免強(qiáng)電和弱電信號(hào)之間的直接接觸,實(shí)現(xiàn)了抗干擾隔離,常用于開(kāi)關(guān)量輸出,以驅(qū)動(dòng)執(zhí)行機(jī)構(gòu),如圖9-7所示。圖9-7 繼電器隔離3變壓器隔離 脈沖變壓器可實(shí)現(xiàn)數(shù)字信號(hào)的隔離。圖9-8所示電路外部的輸入信號(hào)經(jīng)RC濾波電路和雙向穩(wěn)壓管抑制常模噪聲干擾,然后輸入脈沖變壓器的一次側(cè)。為了防止過(guò)高的對(duì)稱(chēng)信號(hào)擊穿電路元件,脈沖變壓器的二次側(cè)輸出電壓被穩(wěn)壓管限幅后進(jìn)入計(jì)算機(jī)控制系統(tǒng)內(nèi)部。 對(duì)于一般的交流信號(hào),可以用普通變壓器實(shí)現(xiàn)隔離。圖9-9表明了一個(gè)由CMOS集成電路完成的電平檢測(cè)電路。4采用雙絞線(xiàn)作信
22、號(hào)線(xiàn) 使雙絞線(xiàn)中一根用作屏蔽線(xiàn),另一根用作信號(hào)傳輸線(xiàn),這樣可以抑制電磁感應(yīng)干擾。在使用過(guò)程中,把信號(hào)輸出線(xiàn)和返回線(xiàn)兩根導(dǎo)線(xiàn)擰和,其扭絞節(jié)距與該導(dǎo)線(xiàn)的線(xiàn)徑有關(guān)。線(xiàn)徑越細(xì),節(jié)距越短,抑制感應(yīng)噪聲的效果越明顯。實(shí)際上,節(jié)距越短,所用的導(dǎo)線(xiàn)長(zhǎng)度就越長(zhǎng),從而增加了導(dǎo)線(xiàn)的成本。一般節(jié)距以5cm左右為宜。表9-1列出了雙絞線(xiàn)節(jié)距與噪聲衰減率的關(guān)系。表9-1 雙絞線(xiàn)的節(jié)距與噪聲衰減率導(dǎo)線(xiàn)節(jié)距/cm噪聲衰減率抑制噪聲效果/dB空氣中平行導(dǎo)線(xiàn)1:10雙絞線(xiàn)1014:123雙絞線(xiàn)7.571:137雙絞線(xiàn)5112:141雙絞線(xiàn)2.5141:143鋼管中平行導(dǎo)線(xiàn)22:127 在數(shù)字信號(hào)的長(zhǎng)線(xiàn)傳輸中,除了對(duì)雙絞線(xiàn)的接地與
23、節(jié)距有一定要求外,根據(jù)傳送的距離不同,雙絞線(xiàn)使用方法也不同。圖9-10所示為傳送的距離不同時(shí),雙絞線(xiàn)的不同使用方法。 為了增強(qiáng)其抗干擾能力,可以將雙絞線(xiàn)與光電耦合器聯(lián)合使用,如圖9-11所示。 反射波干擾的抑制反射波干擾的抑制 影響反射波干擾的因素有兩個(gè):其一是信號(hào)頻率,傳輸信號(hào)頻率越高,越容易產(chǎn)生反射波干擾,因此在滿(mǎn)足系統(tǒng)功能的前提下,盡量降低傳輸信號(hào)的頻率;其二是傳輸線(xiàn)的阻抗,合理配置傳輸線(xiàn)的阻抗,可以抑制反射波干擾或大大削弱反射次數(shù)。1傳輸線(xiàn)的特性阻抗Rp的測(cè)定 根據(jù)反射理論,當(dāng)傳輸線(xiàn)的特性阻抗Rp與負(fù)載電阻R相等(匹配)時(shí),將不發(fā)生反射。特性阻抗的測(cè)定方法如圖9-12所示。調(diào)節(jié)可變電阻
24、R,當(dāng)R=Rp時(shí),A門(mén)的輸出波形畸變最小,反射波幾乎消失,這時(shí)的R值可以認(rèn)為該傳輸線(xiàn)的特性阻抗Rp。2阻抗匹配的方法 阻抗匹配的方法一般分為4種,即始端串聯(lián)阻抗匹配、終端并聯(lián)阻抗匹配、終端并聯(lián)隔直阻抗匹配和終端鉗位二極管匹配。(1)始端串聯(lián)阻抗匹配 如圖9-13(a)所示。如果傳輸線(xiàn)的波阻抗是Rp,則當(dāng)R=Rp時(shí),便實(shí)現(xiàn)了始端串聯(lián)阻抗匹配,基本上消除了波反射??紤]到門(mén)A輸出低電平時(shí)的輸出阻抗Rsc,一般選擇始端匹配電阻R為R=Rp-Rsc。 這種匹配方法會(huì)使終端的低電平抬高,相當(dāng)于增加了輸出阻抗,降低了低電平的抗干擾能力。(2)終端并聯(lián)阻抗匹配 如圖9-13(b)所示。按式(9-1)選取等效電
25、阻R (9-1) 適當(dāng)調(diào)整R1和R2的阻值,可使R=Rp。為了同時(shí)兼顧高電平和低電平兩種情況,可選取R1=R2=2Rp。 這種匹配方法由于終端阻值低,相當(dāng)于加重負(fù)載,使高電平有所下降,故高電平的抗干擾能力有所下降。2121RRRRR(3)終端并聯(lián)隔直阻抗匹配 如圖9-13(c)所示。把電容C串入匹配電路中,當(dāng)C較大時(shí),其阻抗接近于零,只起隔直流作用,不會(huì)影響阻抗匹配,只要使R=Rp就可以了。它不會(huì)引起輸出高電平的降低,故增加了高電平的抗干擾能力。(4)終端鉗位二極管匹配 如圖9-13(d)所示。利用二極管D把B門(mén)輸入端低電平鉗位在0.3V以下,可以減少波的反射和振蕩,提高動(dòng)態(tài)抗干擾能力。圖9-
26、13 傳輸線(xiàn)的阻抗匹配法3輸入/輸出驅(qū)動(dòng)法 如圖9-14所示,當(dāng)A點(diǎn)為低電平時(shí),電壓波從B向A傳輸。由于此時(shí)驅(qū)動(dòng)器SN7406的輸出呈現(xiàn)近于零的低阻抗,反射信號(hào)一到達(dá)該門(mén)的輸出端就有相當(dāng)部分被吸收掉,只剩下很少部分繼續(xù)反射。這就是說(shuō),由于反射信號(hào)遇到的是低阻抗,它的衰減速度很快,反射能力大大地減弱了。當(dāng)A點(diǎn)為高電平時(shí),發(fā)送器T1的輸出端對(duì)地阻抗很大,可視為開(kāi)路。為了降低接收器T2的輸入阻抗,接入一個(gè)負(fù)載電阻R1k,這樣大大削弱了反射波的干擾。圖9-14 應(yīng)用雙驅(qū)動(dòng)器的反射波抑制方法4降低輸入阻抗法 如圖9-15所示,當(dāng)驅(qū)動(dòng)器輸出低電平時(shí),A點(diǎn)對(duì)地阻抗很低;當(dāng)驅(qū)動(dòng)器輸出高電平時(shí),B點(diǎn)對(duì)地阻抗也很
27、低。由此可見(jiàn),無(wú)論是輸出高電平還是低電平,反射波都將很快衰減。圖9-15 降低輸入電阻的反射波抑制方法 5光電耦合器 如圖9-16所示,該方法除了有效抑制反射波干擾外,還有效地實(shí)現(xiàn)了信號(hào)的隔離。圖9-16 光電耦合器的反射波抑制方法空間干擾的抑制空間干擾的抑制 抗空間干擾的主要措施就是采取屏蔽措施。 屏蔽是指用屏蔽體把通過(guò)空間進(jìn)行電場(chǎng)、磁場(chǎng)或電磁場(chǎng)耦合的部分隔離開(kāi)來(lái),隔斷其空間場(chǎng)的耦合通道。良好的屏蔽是和接地緊密相連的,因而可以大大降低噪聲耦合,取得較好的抗干擾效果。圖9-17所示為一種浮空保護(hù)屏蔽層機(jī)殼接地方案。 圖9-17 浮空保護(hù)屏蔽層機(jī)殼接地方案 這種方案的特點(diǎn)是將電子部件外圍附加保護(hù)
28、屏蔽層,且與機(jī)殼浮空;信號(hào)采用三線(xiàn)傳輸方式,即屏蔽電纜中的兩根芯線(xiàn)和電纜屏蔽外皮線(xiàn);機(jī)殼接地。圖中信號(hào)線(xiàn)的屏蔽外皮A點(diǎn)接附加保護(hù)屏蔽層的G點(diǎn),但不接機(jī)殼B。假設(shè)系統(tǒng)采用差動(dòng)測(cè)量放大器,信號(hào)源信號(hào)采用雙芯信號(hào)屏蔽線(xiàn)傳送,r3為電纜屏蔽外皮的電阻,Z3為附加保護(hù)屏蔽層相對(duì)機(jī)殼的絕緣電阻,Z1、Z2為二信號(hào)線(xiàn)對(duì)保護(hù)層的阻抗,則有cminUZrZrZrZrZrU)(2211122133 (9-2) RAM數(shù)據(jù)掉電保護(hù)數(shù)據(jù)掉電保護(hù) 由于+5V電源掉電后,電壓下降有個(gè)過(guò)程,CPU在此過(guò)程中會(huì)失控,誤發(fā)出寫(xiě)信號(hào)而沖失RAM中數(shù)據(jù)。因此,僅有電池是不可能有效完成數(shù)據(jù)保護(hù)的,還需對(duì)片選信號(hào)加以控制,當(dāng)電源電壓下
29、降到一定程度時(shí),使 端信號(hào)無(wú)效。 CS如圖9-18所示為利用4060開(kāi)關(guān)實(shí)現(xiàn)的RAM掉電保護(hù)電路。 圖9-18中,仔細(xì)調(diào)節(jié)圖中R1、R2兩個(gè)電阻的值,使電壓小于等于4.5V時(shí)就使開(kāi)關(guān)斷開(kāi), 線(xiàn)上拉至“1”,這樣,RAM中的數(shù)據(jù)就不會(huì)沖失;當(dāng)電壓大于4.5V時(shí),4060開(kāi)關(guān)應(yīng)接通,使RAM能正常進(jìn)行讀寫(xiě)。CS圖9-19所示電路為另一種RAM掉電保護(hù)電路。 系統(tǒng)在正常工作時(shí),+5V電源除了給6264提供電源以外,同時(shí)也給電池BAT供電;當(dāng)系統(tǒng)電源掉電時(shí)將由電池BAT給SRAM供電。只要在上電和斷電期間保證使CE2立即變?yōu)榈碗娖剑?立即變?yōu)楦唠娖骄涂梢允筍RAM中的數(shù)據(jù)保持不變。在圖中上電時(shí),系統(tǒng)
30、電源對(duì)C1進(jìn)行充電,在此期間,CE2的輸入要經(jīng)過(guò)一定的延時(shí)后才能變?yōu)楦唠娖剑瑫r(shí),由于6264的電源端VCC的電位也是由系統(tǒng)電源對(duì)C2充電來(lái)建立的,這就保證了在上電時(shí)SRAM處于寫(xiě)禁止?fàn)顟B(tài)。在系統(tǒng)電源掉電瞬間,U1的輸入立刻變低,而端為高電平,從而禁止對(duì)SRAM進(jìn)行寫(xiě)入。同時(shí)C1也通過(guò)VD2和R2放電從而使CE2的電平變低。因此,在掉電瞬間和掉電后,SRAM也處于禁止?fàn)顟B(tài)。WE一個(gè)完善的保護(hù)電路,必須具備以下功能: 掉電時(shí)在CPU的失效電壓到達(dá)以前,存儲(chǔ)器的寫(xiě)信號(hào)線(xiàn)應(yīng)被封鎖。CPU失效電壓約在4.54.65V之間。 在存儲(chǔ)器失效電壓到達(dá)以前,備用電池應(yīng)立即接替供電。 在掉電保護(hù)期間,電池電壓不
31、得低于存儲(chǔ)器電壓。 上電時(shí),電壓升到存儲(chǔ)器有效工作電壓以上時(shí)才允許電源接替電池供電。 電源電壓升到CPU有效工作電壓以上,且CPU已處在穩(wěn)定狀態(tài)時(shí),才允許將存儲(chǔ)器的寫(xiě)信號(hào)線(xiàn)開(kāi)鎖。地線(xiàn)配置的抗干擾措施地線(xiàn)配置的抗干擾措施 接地的目的有兩個(gè),一是保護(hù)計(jì)算機(jī)、電器設(shè)備和操作人員的安全。二是為了抑制干擾,使計(jì)算機(jī)工作穩(wěn)定。 1接地的種類(lèi) 通常接地可分為工作接地和保護(hù)接地兩大類(lèi)。 保護(hù)接地主要是為了避免操作人員因設(shè)備的絕緣損壞或下降時(shí)遭受觸電危險(xiǎn)和保證設(shè)備的安全。 工作接地則主要是為了保證計(jì)算機(jī)控制系統(tǒng)穩(wěn)定可靠地運(yùn)行,防止地環(huán)路引起的干擾。 在計(jì)算機(jī)控制系統(tǒng)中,大致有交流地、系統(tǒng)地、安全地、數(shù)字地(邏輯
32、地)和模擬地等幾種。(1)交流地 交流地是計(jì)算機(jī)交流供電電源地,即動(dòng)力線(xiàn)地。它的地電位很不穩(wěn)定。(2)系統(tǒng)地 為了給各部分電路提供穩(wěn)定的基準(zhǔn)電位而設(shè)計(jì)的,是指信號(hào)回路的基準(zhǔn)導(dǎo)體(如控制電源的零電位)。這時(shí)的所謂接地是指將各單元,裝置內(nèi)部各部分電路信號(hào)返回線(xiàn)與基準(zhǔn)導(dǎo)體之間的連接。對(duì)這種接地的要求是盡量減小接地回路中的公共阻抗壓降,以減小系統(tǒng)中干擾信號(hào)公共阻抗耦合。(3)安全地 其目的是使設(shè)備機(jī)殼與大地等電位,以避免機(jī)殼帶電而影響人身及設(shè)備安全。通常安全地又稱(chēng)為保護(hù)地或機(jī)殼地,機(jī)殼包括機(jī)架、外殼、屏蔽罩等。 (4)數(shù)字地 作為計(jì)算機(jī)控制系統(tǒng)中各種數(shù)字電路的零電位,應(yīng)該與模擬地分開(kāi),避免模擬信號(hào)受數(shù)
33、字脈沖的干擾。(5)模擬地 作為傳感器、變送器、放大器、A/D轉(zhuǎn)換器和D/A轉(zhuǎn)換器中模擬地的零電位,模擬信號(hào)有精度要求,有時(shí)信號(hào)比較小,而且與生產(chǎn)現(xiàn)場(chǎng)連接。因此,必須認(rèn)真地對(duì)待模擬地。2輸入系統(tǒng)的接地(1)數(shù)字地與模擬地要分開(kāi)。 (2)單點(diǎn)接地與多點(diǎn)接地的選擇。 在低頻電路中,信號(hào)的工作頻率小于1MHz時(shí),它的布線(xiàn)和元器件間的電感影響小,屏蔽線(xiàn)采用一點(diǎn)接地;但信號(hào)工作頻率大于10MHz時(shí),地線(xiàn)阻抗變得很大,此時(shí),應(yīng)采用就近多點(diǎn)接地法。(3)傳感器、變送器和放大器等通常采用屏蔽罩,而信號(hào)的傳送往往使用屏蔽線(xiàn)。對(duì)于這些屏蔽層的接地應(yīng)該遵循單點(diǎn)接地原則。(4)接地線(xiàn)要盡量加粗。應(yīng)將接地線(xiàn)加粗,使它能
34、通過(guò)三倍于印刷電路板上的允許電流,如有可能,接地用線(xiàn)在23mm以上為宜。(5)交流地絕對(duì)不允許與其他幾種地相連,而且交流電源變壓器的絕緣性能要好,絕對(duì)避免漏電現(xiàn)象。3主機(jī)系統(tǒng)的接地(1)全機(jī)單點(diǎn)接地 主機(jī)地與外部設(shè)備地連接后,采用單點(diǎn)接地,如圖9-20所示。 (2)主機(jī)外殼接地、機(jī)芯浮空 將主機(jī)外殼作為屏蔽罩接地,把機(jī)內(nèi)器件架與外殼絕緣,絕緣電阻大于50M,即機(jī)內(nèi)信號(hào)地浮空,如圖9-21所示。 (3)多機(jī)系統(tǒng)的接地 在計(jì)算機(jī)網(wǎng)絡(luò)系統(tǒng)中,多臺(tái)計(jì)算機(jī)之間相互通信,資源共享。近距離的幾臺(tái)計(jì)算機(jī)安裝在同一機(jī)房?jī)?nèi),可采用類(lèi)似圖9-20那樣的多機(jī)單點(diǎn)接地方法。對(duì)于遠(yuǎn)距離的多臺(tái)計(jì)算機(jī)之間的數(shù)據(jù)通信,通過(guò)隔離
35、的辦法把地分開(kāi)。如變壓器隔離技術(shù)、光電隔離技術(shù)和無(wú)線(xiàn)電通信技術(shù)。電源系統(tǒng)的抗干擾措施電源系統(tǒng)的抗干擾措施1計(jì)算機(jī)控制系統(tǒng)的一般保護(hù)措施(1)采用交流穩(wěn)壓器 當(dāng)電網(wǎng)電壓波動(dòng)范圍較大時(shí),應(yīng)使用交流穩(wěn)壓器。這也是目前最普遍采用的抑制電網(wǎng)電壓波動(dòng)的方案,保證220V AC供電。(2)采用電源濾波器 交流電源引線(xiàn)上的濾波器可以抑制輸入端的瞬態(tài)干擾。直流電源的輸出也接入電容濾波器,以使輸出電壓的紋波限制在一定范圍內(nèi),并能抑制數(shù)字信號(hào)產(chǎn)生的脈沖干擾。 (3)電源變壓器采取屏蔽措施 利用幾毫米厚的高導(dǎo)磁材料將變壓器嚴(yán)密的屏蔽起來(lái),以減小漏磁通的影響。(4)采用分布式獨(dú)立供電 整個(gè)系統(tǒng)不是統(tǒng)一變壓、濾波、穩(wěn)壓后
36、供各單元電路使用,而是變壓后直接送給各單元電路的整流、濾波、穩(wěn)壓。這樣可以有效地消除各單元電路間的電源線(xiàn)、地線(xiàn)間的耦合干擾,又提高了供電質(zhì)量,增大了散熱面積。(5)分類(lèi)供電方式 把空調(diào)、照明、動(dòng)力設(shè)備分為一類(lèi)供電方式,把計(jì)算機(jī)及其外設(shè)分為一類(lèi)供電方式,以避免強(qiáng)電設(shè)備工作時(shí)對(duì)計(jì)算機(jī)系統(tǒng)的干擾。 2電源異常的保護(hù)措施(1)采用靜止式備用交流電源 當(dāng)交流電網(wǎng)出現(xiàn)故障時(shí),利用備用交流電源能夠及時(shí)供電,保證系統(tǒng)安全可靠地運(yùn)行。(2)采用不間斷電源UPS 不間斷電源UPS的基本結(jié)構(gòu)分為兩大類(lèi):一部分是將交流市電變?yōu)橹绷麟姷恼?充電裝置,另一部分是把直流電再度轉(zhuǎn)變?yōu)榻涣麟姷腜WM逆變器。 UPS電源按其操
37、作方式可分為后備式和在線(xiàn)式的UPS電源。 后備式UPS電源的原理圖如圖9-22所示。 圖9-22 后備式UPS電源方框圖 在線(xiàn)式UPS電源的原理圖如圖9-23所示。 圖9-23 在線(xiàn)式UPS電源框圖計(jì)算機(jī)控制系統(tǒng)的軟件抗干擾技術(shù)計(jì)算機(jī)控制系統(tǒng)的軟件抗干擾技術(shù)1 指令冗余技術(shù)指令冗余技術(shù) 所謂指令冗余技術(shù)是指在程序的關(guān)鍵地方人為地加入一些單字節(jié)指令NOP,或?qū)⒂行巫止?jié)指令重寫(xiě),當(dāng)程序“跑飛”到某條單字節(jié)指令上,就不會(huì)發(fā)生將操作數(shù)當(dāng)作指令來(lái)執(zhí)行的錯(cuò)誤,使程序迅速納入正軌。 常用的指令冗余技術(shù)有兩種:NOP指令的使用和重要指令冗余。1NOP指令的使用 通常是在雙字節(jié)指令和3字節(jié)指令之后插入兩個(gè)單字
38、節(jié)NOP指令。這樣,即使因?yàn)椤芭茱w”使程序落到操作數(shù)上,由于兩個(gè)空操作指令NOP的存在,不會(huì)將其后的指令當(dāng)操作數(shù)執(zhí)行,從而使程序納入正軌。 通常,一些對(duì)程序流向起重要作用的指令(如RET、RETI、ACALL、LCALL、LJMP、SJMP、JZ、JNZ、JC、JNC、JB、JBC、DJNZ等)和某些對(duì)系統(tǒng)工作狀態(tài)起重要作用的指令(如SETB等)的前面插入兩條NOP指令,以保證跑飛的程序迅速納入軌道,確保這些指令的正確執(zhí)行。2重要指令冗余 通常在那些對(duì)于程序流向起決定作用或?qū)ο到y(tǒng)工作狀態(tài)有重要作用的指令的后邊(如前文所列舉的一些指令),可重復(fù)寫(xiě)上這些指令,以確保這些指令的正確執(zhí)行。 值得注意的
39、是:雖然加入冗余指令,能提高軟件系統(tǒng)的可靠性,但卻降低了程序的執(zhí)行效率,所以在一個(gè)程序中,“指令冗余”不能過(guò)多,否則會(huì)降低程序的執(zhí)行效率。 軟件陷阱技術(shù)軟件陷阱技術(shù) 若“跑飛”的程序進(jìn)入非程序區(qū)(如EPROM未使用的空間或某些數(shù)據(jù)表格區(qū)),則采用指令冗余技術(shù)就不能使“跑飛”的程序恢復(fù)正常,這時(shí)可以設(shè)定軟件陷阱。1軟件陷阱 所謂軟件陷阱,就是當(dāng)PC失控,造成程序“亂飛”而進(jìn)入非程序區(qū)時(shí),在非程序區(qū)設(shè)置一些攔截程序,將失控的程序引至復(fù)位入口地址0000H或處理錯(cuò)誤程序的入口地址ERR,在此處將程序轉(zhuǎn)向?qū)iT(mén)對(duì)程序出錯(cuò)進(jìn)行處理的程序,使程序納入正軌。 軟件陷阱可以采用3種形式如表9-2所示。程序形式軟
40、件陷阱形式對(duì)應(yīng)入口形式形式之一NOPNOPLJMP 0000H0000H:LJMP MAIN;運(yùn)行程序形式之二LJMP 0202HLJMP 0000H0000H:LJMP MAIN;運(yùn)行主程序0202H:LJMP 0000H形式之三LJMP ERRERR:;錯(cuò)誤處理程序2軟件陷阱的安排(1)未使用的中斷向量區(qū) 80C51單片機(jī)的中斷向量區(qū)為0003H002FH,當(dāng)未使用的中斷因干擾而開(kāi)放時(shí),在對(duì)應(yīng)的中斷服務(wù)程序中設(shè)置軟件陷阱,就能及時(shí)截獲錯(cuò)誤的中斷。在中斷服務(wù)程序中返回指令用RETI也可以用LJMP。 比如:某系統(tǒng)未使用兩個(gè)外部中斷 和 ,它們的中斷服務(wù)子程序入口地址分別為SINT0和SINT
41、1。在系統(tǒng)未使用的中斷由于干擾而誤開(kāi)中斷時(shí),則可以在對(duì)應(yīng)的中斷服務(wù)程序中,首先彈出錯(cuò)誤的斷點(diǎn),然后使程序無(wú)條件跳轉(zhuǎn)到主程序的入口0000H處重新開(kāi)始執(zhí)行,而不是用RETI指令返回到錯(cuò)誤的斷點(diǎn)處。其軟件陷阱程序如下: 0INT1INTORG 0000H0000H START: LJMP MAIN;引向主程序入口ORG 0003HLJMP SINT0;中斷服務(wù)程序入口ORG 0013HLJMP SINT1;中斷服務(wù)程序入口ORG 0080H0080H MAIN:;主程序SINT0: NOPNOPPOP direct1;將斷點(diǎn)彈出堆棧區(qū)POP direct2LJMP 0000H;轉(zhuǎn)到0000H處SI
42、NT1: NOPNOPPOP direct1;將原先的斷點(diǎn)彈出POP direct2PUSH 00H;斷點(diǎn)地址改為0000HPUSH 00HRETI注:中斷服務(wù)程序中的direct1和direct2為主程序中非使用單元。(2)未使用的EPROM空間 對(duì)于未使用完的EPROM空間,即其內(nèi)容為0FFH,0FFH對(duì)于80C51單片機(jī)來(lái)說(shuō)是一條單字節(jié)指令“MOV R7, A”。如果程序“跑飛”到這一區(qū)域,則將順利向下執(zhí)行,不再跳躍(除非又受到新的干擾),因此在非程序區(qū)內(nèi)用0000020000或020202020000數(shù)據(jù)填滿(mǎn)。注意,最后一條填入數(shù)據(jù)必須為020000。當(dāng)“亂飛”程序進(jìn)入此區(qū)后,讀到的數(shù)
43、據(jù)為0202H,這是一條轉(zhuǎn)移指令,使PC轉(zhuǎn)入0202H入口,在主程序0202H設(shè)有出錯(cuò)處理程序,或轉(zhuǎn)到程序的入口地址0000H執(zhí)行程序。(3)表格 單片機(jī)程序設(shè)計(jì)中一般會(huì)遇到兩種表格:一類(lèi)是數(shù)據(jù)表格,供“MOV A, APC”指令或“MOVC A, ADPTR”指令使用;另一類(lèi)是散轉(zhuǎn)表格,供“JMP ADPTR”指令使用。 由于表格的內(nèi)容與檢索值是一一對(duì)應(yīng)的關(guān)系,在表格中安排陷阱會(huì)破壞表格的連續(xù)性和對(duì)應(yīng)關(guān)系,因此只能在表格的最后安排陷阱。如果表格區(qū)較長(zhǎng),則安排的陷阱不能保證一定能夠捕捉到“跑飛”的程序,這時(shí)只能借助于別的軟件陷阱或冗余指令來(lái)使程序恢復(fù)正常。(4)運(yùn)行程序區(qū) 在進(jìn)行單片機(jī)系統(tǒng)程序
44、設(shè)計(jì)時(shí)常采用模塊化設(shè)計(jì),單片機(jī)按照程序的要求一個(gè)模塊、一個(gè)模塊地執(zhí)行。所以可以將陷阱指令組分散放置在用戶(hù)程序各模塊之間空余的單元里。在正常程序中不執(zhí)行這些陷阱指令,保證用戶(hù)程序正常運(yùn)行。但當(dāng)程序“亂飛”一旦落入這些陷阱區(qū),馬上將“亂飛”的程序拉到正確軌道。這個(gè)方法很有效,陷阱的多少一般依據(jù)用戶(hù)程序大小而定,一般每1K字節(jié)有幾個(gè)陷阱就夠了。(5)RAM數(shù)據(jù)保護(hù)的條件陷阱 單片機(jī)受到嚴(yán)重的干擾時(shí),可能不能正確地讀寫(xiě)外部的RAM區(qū)。為解決這個(gè)問(wèn)題,可以在進(jìn)行RAM的數(shù)據(jù)讀寫(xiě)之前,測(cè)試RAM讀寫(xiě)通道的暢通性,這可以通過(guò)編寫(xiě)陷阱實(shí)現(xiàn),當(dāng)讀寫(xiě)正常時(shí),不會(huì)進(jìn)入陷阱,若不正常,則會(huì)進(jìn)入陷阱,且形成死循環(huán)。實(shí)現(xiàn)
45、程序?yàn)椋篗OV A, #NNH;NN是任意的MOV DPTR, #XXXXHMOV 6EH, #55HMOV 6FH, #0AAHNOPNOPCJNE 6EH, #55H, XJ;6EH中不為55H則落入死循環(huán)CJNE 6FH, #0AAH, XJ ;6FH中不為AAH則落入死循環(huán)MOVX DPTR, A;A中數(shù)據(jù)寫(xiě)入RAM的XXXXH單元中NOPNOPMOV 6EH, #00HMOV 6FH, #00HRETXJ:NOP;死循環(huán)NOPSJMP XJ 故障自動(dòng)恢復(fù)處理程序故障自動(dòng)恢復(fù)處理程序1辨別上電方式 所謂辨別上電方式,就是根據(jù)某些信息來(lái)確定是以何種方式進(jìn)入0000H單元的,是上電復(fù)位還是
46、故障復(fù)位。通常以軟件設(shè)置上電標(biāo)志的方式來(lái)判定。 軟件設(shè)置上電標(biāo)志是以單片機(jī)上電復(fù)位后某些寄存器的值、RAM中預(yù)先設(shè)定的標(biāo)志位或程序計(jì)數(shù)器PC的值作為上電標(biāo)志。在程序開(kāi)始處檢測(cè)這些標(biāo)志位,若改變了,即可認(rèn)為是上電復(fù)位;若未改變,則認(rèn)為是故障復(fù)位。 可以利用PSW、SP和RAM中特定的單元設(shè)置軟件上電標(biāo)志。SP的上電復(fù)位值是07H,可以將SP設(shè)置為其他大于07H的值作為上電標(biāo)志;PSW中的第5位PSW.5可以由用戶(hù)自行設(shè)定,若系統(tǒng)是上電復(fù)位,則PSW的內(nèi)容為00H,程序開(kāi)始后,通過(guò)將PSW.5置1來(lái)作為上電標(biāo)志; 下面是用PSW.5作為上電標(biāo)志的程序清單:ORG0000HAJMPSTARTSTAR
47、T: MOVC, PSW.5;判別標(biāo)志位PSW.5 JCLOOP;PSW.51轉(zhuǎn)向出錯(cuò)程序處理SETBPSW.5;置PSW.51LJMPSTART0;轉(zhuǎn)向系統(tǒng)初始化入口LOOP: LJMPERR;轉(zhuǎn)向出錯(cuò)程序處理2系統(tǒng)的復(fù)位處理 用軟件抗干擾措施來(lái)使失控的系統(tǒng)恢復(fù)到正常狀態(tài),重新進(jìn)行徹底的初始化使系統(tǒng)的狀態(tài)進(jìn)行修復(fù)或有選擇地進(jìn)行部分初始化,這種操作也被稱(chēng)之為“熱啟動(dòng)”。熱啟動(dòng)首先要對(duì)系統(tǒng)進(jìn)行復(fù)位,也就是使各種專(zhuān)用寄存器達(dá)到與硬件復(fù)位時(shí)同樣的狀態(tài),但是需要注意的是清除中斷激活標(biāo)志是非常重要的。 下面給出了一段系統(tǒng)復(fù)位處理的程序。 ORG0080HERR:CLREA;關(guān)中斷MOVDPTR, #ERR1 ;準(zhǔn)備返回地址PUSHDPLPUSHDPHRETI;清除高優(yōu)先級(jí)中斷激活標(biāo)志ERR1: MOV50H, #0AAH;重置上電復(fù)位標(biāo)志MOV51H, #55HMOVDPT
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶(hù)所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶(hù)上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶(hù)上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶(hù)因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 咋樣寫(xiě)供貨合同范本
- 發(fā)改ppp合同范本
- 買(mǎi)賣(mài)銅幣合同范本
- 可再生能源項(xiàng)目合同范本
- 品牌股權(quán)合同范本
- 啟東農(nóng)田流轉(zhuǎn)合同范本
- 廠(chǎng)房帶門(mén)面裝修合同范本
- 寫(xiě)抖音合同范例
- 買(mǎi)房簽意向合同范例
- 動(dòng)物實(shí)驗(yàn)合同范本
- 2024中考物理真題匯編:電與磁(含解析)
- 2024年小客車(chē)指標(biāo)借用協(xié)議3篇
- 中建10t龍門(mén)吊安拆安全專(zhuān)項(xiàng)施工方案
- 國(guó)內(nèi)外測(cè)井技術(shù)現(xiàn)狀與展望文檔
- 骨科術(shù)后譫妄患者的護(hù)理
- 大模型專(zhuān)題:2024大模型技術(shù)及其在金融行業(yè)的應(yīng)用探索報(bào)告
- 《肺動(dòng)靜脈瘺》課件
- 約定工資結(jié)清協(xié)議書(shū)(2篇)
- 天津地區(qū)高考語(yǔ)文五年高考真題匯編-語(yǔ)言文字應(yīng)用
- 鶴壁海格龍升3萬(wàn)噸溴系列新材料產(chǎn)品環(huán)評(píng)資料環(huán)境影響
- 電梯日管控、周排查、月調(diào)度內(nèi)容表格
評(píng)論
0/150
提交評(píng)論