WX05微型計(jì)算機(jī)控制技術(shù)第五章課件_第1頁
WX05微型計(jì)算機(jī)控制技術(shù)第五章課件_第2頁
WX05微型計(jì)算機(jī)控制技術(shù)第五章課件_第3頁
WX05微型計(jì)算機(jī)控制技術(shù)第五章課件_第4頁
WX05微型計(jì)算機(jī)控制技術(shù)第五章課件_第5頁
已閱讀5頁,還剩43頁未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

第5章常用應(yīng)用程序設(shè)計(jì)本章以51單片機(jī)為基礎(chǔ),主要介紹結(jié)構(gòu)化匯編語言的監(jiān)控程序設(shè)計(jì)思想和實(shí)時(shí)測(cè)控系統(tǒng)中最常用的數(shù)字濾波技術(shù)、標(biāo)度變換、插值算法以及報(bào)警程序設(shè)計(jì)等。程序與程序設(shè)計(jì)的概念使用計(jì)算機(jī)求解某些問題或完成某一特定功能,就要先對(duì)問題或特定功能進(jìn)行分析,確定形成的算法和步驟,然后選擇相應(yīng)的指令,按一定順序排列起來,這樣就構(gòu)成了求解某一問題或?qū)崿F(xiàn)特定功能的程序。通常把這一編制程序的工作稱為程序設(shè)計(jì)。常用程序設(shè)計(jì)語言有匯編語言、C語言等。程序設(shè)計(jì)的基本步驟:

(1)分析問題。弄清問題要求,對(duì)問題有正確理解。

(2)算法設(shè)計(jì)。針對(duì)問題設(shè)計(jì)一個(gè)能完成相應(yīng)功能的算法,盡可能速度快,占有計(jì)算機(jī)存儲(chǔ)量小。

(3)程序結(jié)構(gòu)設(shè)計(jì)。模塊化方法、自頂向下逐步求精的方法進(jìn)行設(shè)計(jì)。

(4)編寫源程序。

(5)建立可運(yùn)行的目標(biāo)程序。

(6)程序的調(diào)試與修改。

(7)編制程序的說明文件。5.2數(shù)字濾波技術(shù)數(shù)字濾波就是通過一定的計(jì)算程序,對(duì)測(cè)量信號(hào)(采樣數(shù)據(jù))進(jìn)行平滑加工,提高其有用信號(hào),消除或減少各種干擾和噪音,以保證計(jì)算機(jī)控制系統(tǒng)的可靠性。

數(shù)字濾波器與模擬濾波器相比優(yōu)點(diǎn)如下:(1)無需增加任何硬件設(shè)備,在程序進(jìn)入數(shù)據(jù)處理和控制算法之前,附加一段數(shù)字濾波程序即可。(2)由于數(shù)字濾波器不需要增加硬件設(shè)備,各回路間不存在阻抗匹配問題,所以系統(tǒng)可靠性高。(3)數(shù)字濾波器可多通道共享,從而降低了成本,而對(duì)于模擬濾波器,通常是各通道專用的。(4)可以對(duì)頻率很低的信號(hào)進(jìn)行濾波,而模擬濾波器由于受電容容量的限制,頻率不可能太低。(5)可根據(jù)需要選擇不同的濾波方法或改變?yōu)V波器的參數(shù),使用靈活、方便。

常用數(shù)字濾波器5.2.1中值濾波5.2.2程序判斷濾波5.2.3平均值濾波5.2.4一階滯后濾波5.2.1中值濾波中值濾波的設(shè)計(jì)思想

對(duì)某一參數(shù)連續(xù)采樣N次(一般N取奇數(shù),多數(shù)情況下N=3),然后把N次采樣值從小到大(或從大到小)排隊(duì),取中間值作為本次采樣值。中值濾波的特點(diǎn)這種方法對(duì)于去掉偶然因素引起的波動(dòng)或采樣器不穩(wěn)定而造成的誤差所引起的脈沖干擾比較有效。若變量變化比較緩慢,則采用中值濾波效果比較好,但對(duì)快速變化的參數(shù),則不宜采用。5.2.2程序判斷濾波程序判斷濾波的設(shè)計(jì)思想根據(jù)生產(chǎn)經(jīng)驗(yàn),確定出相鄰兩次采樣信號(hào)之間可能出現(xiàn)的最大偏差Δy。若信號(hào)采樣值與上次采樣值的偏差超過此偏差值,則表明該輸入信號(hào)是干擾信號(hào),應(yīng)該去掉;若小于此偏差值,則可將該信號(hào)作為本次采樣值。程序判斷濾波的分類程序判斷濾波根據(jù)濾波方法的不同,可分為限幅濾波和限速濾波兩種。

限幅濾波的用途和使用注意事項(xiàng):

限幅濾波主要用于變化比較緩慢的參數(shù),如溫度。使用時(shí),關(guān)鍵問題是最大允許誤差Δy的選取,Δy太大,各種干擾信號(hào)將“乘機(jī)而入”,使系統(tǒng)誤差增大;Δy太小,又會(huì)使某些有用信號(hào)被“拒之門外”,使計(jì)算機(jī)采樣效率變低。因此,門限值Δy的選取是非常重要的。限速濾波

方法是:當(dāng)|y(2)–y(1)|>Δy時(shí),不像限幅濾波那樣,用y(1)作為本次采樣值,而是再采樣一次,取得y(3),然后根據(jù)|y(3)–y(2)|與Δy的大小關(guān)系來決定本次采樣值。其具體判別式如下:

設(shè)順序采集的參數(shù)分別是y(1),y(2),y(3),那么當(dāng)|y(2)–y(1)|≤Δy時(shí),則取y(2);當(dāng)|y(2)–y(1)|>Δy時(shí),則不采用y(2),繼續(xù)采樣取得y(3);當(dāng)|y(3)–y(2)|≤Δy時(shí),則取y(3);當(dāng)|y(3)–y(2)|>Δy時(shí),則取|y(3)+y(2)|/2。限速濾波的用途和使用注意事項(xiàng):

限速濾波是一種折衷的方法,既照顧了采樣的實(shí)時(shí)性,又顧及了采樣值變化的連續(xù)性。但這種方法也有明顯的缺點(diǎn):第一,Δy的確定不夠靈活,必須根據(jù)現(xiàn)場(chǎng)的情況不斷更換新值;第二,不能反映采樣點(diǎn)數(shù)N>3時(shí)各采樣數(shù)值受干擾的情況。因此,它的應(yīng)用受到一定的限制。

在實(shí)際使用中,可用[|y(1)–y(2)|+|y(2)–y(3)|]/2取代Δy,這樣也基本保持限速濾波的特性,雖增加運(yùn)算,但靈活性有所提高。5.2.3平均值濾波1.算術(shù)平均值濾波尋找一個(gè)Y它與各采樣值Xk之間誤差的平方和E為最小。根據(jù)極值原理得:××××××××××××××××××××××××算術(shù)平均值法濾波對(duì)干擾的抑制×-各采樣時(shí)刻得到的采樣值;虛線-濾波器輸出值(a)無干擾情況;(b)有規(guī)則干擾情況;(c)帶脈沖干擾情況連續(xù)取N個(gè)采樣值進(jìn)行算術(shù)平均運(yùn)算。N值較大時(shí):信號(hào)平滑度較高,但靈敏度較低;N值較小時(shí):信號(hào)平滑度較低,但靈敏度較高;N值的選?。阂话懔髁?,N=12;壓力:N=4。算術(shù)平均值濾波主要適用于對(duì)壓力、流量等周期脈動(dòng)的采樣值進(jìn)行平滑加工,但對(duì)于脈沖性干擾信號(hào)的平滑效果欠佳。

一般采樣值次數(shù)愈靠后,取的比例愈大,這樣可增加新的采樣值在平均值中所占的比例。這種濾波方法可以根據(jù)需要突出信號(hào)的某一部分來抑制信號(hào)的另一部分,適用于系統(tǒng)純滯后時(shí)間較大而采樣周期較短的過程。

3.滑動(dòng)平均值濾波特點(diǎn):每計(jì)算一次有效采樣值必須連續(xù)進(jìn)行N次采樣?;瑒?dòng)平均濾波是在每個(gè)采樣周期只采樣一次,將這一次采樣值和過去的若干次采樣值一起求平均,所得結(jié)果即為當(dāng)前有效采樣值。具體作法:可用循環(huán)隊(duì)列結(jié)構(gòu)方式來實(shí)現(xiàn)數(shù)據(jù)的存放。比如取N個(gè)采樣值求滑動(dòng)平均,只要在RAM中開辟N個(gè)數(shù)據(jù)暫存區(qū),每次新采集一個(gè)數(shù)據(jù)便存入暫存區(qū)的隊(duì)尾,同時(shí)沖掉隊(duì)首的一個(gè)數(shù)據(jù),這樣在存儲(chǔ)器隊(duì)列中始終保持有N個(gè)最新的數(shù)據(jù)。再求包括新數(shù)據(jù)在內(nèi)的N個(gè)數(shù)據(jù)的算術(shù)平均值或加權(quán)平均值。5.2.4一階滯后濾波X(s)Y(s)CR由于大的時(shí)間常數(shù)及高精度的RC電路不易制作,所以硬件RC濾波器不可能對(duì)極低頻率的信號(hào)進(jìn)行濾波。一階滯后濾波是模擬RC濾波器的數(shù)字形式:

A、優(yōu)點(diǎn):

對(duì)周期性干擾具有良好的抑制作用

適用于波動(dòng)頻率較高的場(chǎng)合

B、缺點(diǎn):

相位滯后,靈敏度低

滯后程度取決于a值大小

5.2.5復(fù)合濾波防脈沖干擾的算術(shù)平均值濾波算法(去掉Xmax和Xmin):而算術(shù)平均值濾波:優(yōu)點(diǎn):兼有了中值濾波和算術(shù)平均值濾波的優(yōu)點(diǎn)。缺點(diǎn):執(zhí)行時(shí)間較長(zhǎng)。5.2.6各種數(shù)字濾波性能的比較2.濾波時(shí)間在考慮濾波效果的前提下,應(yīng)盡量采用執(zhí)行時(shí)間比較短的程序,若計(jì)算機(jī)計(jì)算時(shí)間允許,可采用效果更好的復(fù)合濾波程序。注意事項(xiàng):在實(shí)際應(yīng)用中,究竟采用哪一種數(shù)字濾波,都應(yīng)視具體情況而定。如果同時(shí)采用幾種濾波方法,一般先用中位值濾波或限幅濾波,然后再用平均值濾波法。數(shù)字濾波應(yīng)用得不恰當(dāng),非但達(dá)不到濾波效果還會(huì)降低控制品質(zhì)。5.3標(biāo)度變換5.3.1線性參數(shù)的標(biāo)度變換為了運(yùn)算、顯示或打印輸出,必須把數(shù)字量轉(zhuǎn)換成操作人員所熟悉的工程量,即轉(zhuǎn)換為帶有原工程量綱的數(shù)值。這種轉(zhuǎn)換稱為工程量轉(zhuǎn)換,也稱為標(biāo)度變換

5.3標(biāo)度變換設(shè)被測(cè)參數(shù)與A/D轉(zhuǎn)換后的數(shù)字量之間呈線性關(guān)系,則標(biāo)度變換公式為:如果被測(cè)參數(shù)的起點(diǎn)A0所對(duì)應(yīng)的A/D轉(zhuǎn)換值為0,即N0=0,則上述標(biāo)度變換公式可簡(jiǎn)化為:非線性標(biāo)度變換應(yīng)根據(jù)具體情況具體分析,一般采用查表法。例:某加熱爐溫度測(cè)量元件的量程為100~500℃,系統(tǒng)的A/D轉(zhuǎn)換器為8位。若某一時(shí)刻溫度測(cè)量元件送出的信號(hào)經(jīng)A/D轉(zhuǎn)換器轉(zhuǎn)換后的數(shù)字量為80H,求此時(shí)的溫度值(設(shè)溫度測(cè)量元件的量程是線性的)。解:根據(jù)式(5-7),=100,=500,=00H,=FFH=255,=80H=128所以,此時(shí)的溫度為5.4插值算法5.4.1線性插值算法在進(jìn)行控制系統(tǒng)設(shè)計(jì)時(shí),總希望輸出和輸入呈簡(jiǎn)單的線性關(guān)系。在實(shí)際工程中,測(cè)量信號(hào)和被測(cè)物理量之間經(jīng)常存在非線性關(guān)系。如溫度測(cè)量中熱電偶的輸出和溫度的關(guān)系即為非線性。在計(jì)算機(jī)控制系統(tǒng)中,需要通過數(shù)據(jù)處理程序?qū)⒎蔷€性關(guān)系變化為線性關(guān)系。對(duì)于可以用解析式明確表達(dá)的非線性函數(shù)關(guān)系,可借助高級(jí)語言程序完成線性化處理?;蛴酶呒?jí)語言完成離線計(jì)算,將結(jié)果存在數(shù)據(jù)表中,通過查表的方式完成線性化處理。本節(jié)主要講線性插值原理進(jìn)行線性化處理。線性插值原理某傳感器的輸入輸出特性如下圖:將該非線性關(guān)系的曲線按一定要求分成若干段,然后把相鄰分段點(diǎn)用直線連接起來。用直線代替相應(yīng)曲線。由此可求出輸入x對(duì)于的輸出y設(shè)x在[xi,xi+1]區(qū)間內(nèi),則對(duì)應(yīng)的逼近式為:5.4.2二次拋物線插值算法二次拋物線插值法xx2x1x0yCBA二次拋物線插值法的原理是,通過曲線上的三個(gè)已知點(diǎn)作一條拋物線,用此拋物線代替該段的曲線。如圖所示,有一函數(shù)y=f(x),用拋物線來逼近它.5.4.2二次拋物線插值算法二次拋物線插值法xx2x1x0yCBA其一般形式為:

y=k0+k1x+k2x2

式中,k0、k1、k2為待定系數(shù),由曲線y=f(x)的三個(gè)點(diǎn)A、B、C聯(lián)立方程組求得。已知點(diǎn)A(x0,y0)、B(x1,y1)、C(x2,y2)的數(shù)值,求出k0、k1、k2,然后根據(jù)測(cè)量值x用公式求出相應(yīng)的y值。5.5查表順序查表法順序查表法是針對(duì)無序排列表格的一種方法。因?yàn)闊o序表格中所有各項(xiàng)的排列均無一定的規(guī)律。所以,只能按照順序從第一項(xiàng)開始逐項(xiàng)尋找,直到找到所要查找的關(guān)鍵字為止。在程序設(shè)計(jì)時(shí),已知條件應(yīng)該是表格的長(zhǎng)度及表的起始地址,在查找過程中應(yīng)該不斷的進(jìn)行地址修改和計(jì)數(shù),直到找到關(guān)鍵字。若表中無此關(guān)鍵字,需要給出提示。在控制系統(tǒng)中,如果已經(jīng)建立了表格,其地址是按一定規(guī)律排列的,而且要查找的內(nèi)容與表格有一定關(guān)系時(shí),則可通過簡(jiǎn)單的計(jì)算,找出所需的地址,然后從相應(yīng)的內(nèi)存單元中取出結(jié)果,這種方法就是計(jì)算查表法。計(jì)算查表法對(duì)分查表法當(dāng)需要查找表中的數(shù)據(jù)元素有序(假設(shè)遞增有序),則在查找時(shí)可不必逐個(gè)比較,而采用跳躍式的方式,即先與“中間”位置的數(shù)據(jù)元素比較,若相等,則查找成功;若給定值大于“中間位置”的數(shù)據(jù)元素,則在查找表的后半部分繼續(xù)進(jìn)行二分查找,否則在前半部分進(jìn)行二分查找。5.6電機(jī)控制程序設(shè)計(jì)5.6.1步進(jìn)電機(jī)控制程序設(shè)計(jì)5.6.2直流電機(jī)控制程序設(shè)計(jì)5.7報(bào)警程序設(shè)計(jì)報(bào)警處理程序一般都需要根據(jù)系統(tǒng)的要求編寫,如有的報(bào)警系統(tǒng)要求能夠發(fā)出聲光報(bào)警信號(hào)、記錄報(bào)警時(shí)間和報(bào)警參數(shù)或進(jìn)行自動(dòng)處理等。雖然不同系統(tǒng)的報(bào)警處理程序是不一樣的,但報(bào)警程序的設(shè)計(jì)基本思想是相同的。報(bào)警程序主要有以下幾個(gè)步驟組成:

(1)采樣被測(cè)參數(shù);(2)比較采樣值和給定值的上下限;(3)根據(jù)比較結(jié)果執(zhí)行相應(yīng)的處理程序。在控制系統(tǒng)中,報(bào)警參數(shù)可以是被控參數(shù)、被測(cè)參數(shù)、輸入偏差或控制量等,設(shè)需要判斷的報(bào)警參數(shù)為XK,XK為當(dāng)前數(shù)據(jù),該參數(shù)的上、下限約束值分別為XH和XL,則越限報(bào)警有如下幾種形式:上限報(bào)警若XK>XH,則發(fā)出上限報(bào)警,否則繼續(xù)執(zhí)行原定操作。上、下限報(bào)警若XK>XH,則上限報(bào)警;否則,判斷XK<XL嗎?若是,則下限報(bào)警;否則,繼續(xù)執(zhí)行原定操作。

具體設(shè)計(jì)報(bào)警程序時(shí),為了避免測(cè)量值在極限值一點(diǎn)處來回?cái)[動(dòng)造成頻繁報(bào)警,一般應(yīng)在極限值附近設(shè)置一個(gè)回差帶,如圖5-17所示。被測(cè)值上限值下限值越上限報(bào)警復(fù)限復(fù)限越下限報(bào)警ABCDHL圖5-17越限報(bào)警示意圖目的:防止不必要的報(bào)警動(dòng)作。本章小結(jié)本章主要講述了微機(jī)控制系統(tǒng)中軟件設(shè)計(jì)的概念和基本設(shè)計(jì)思想、常用的數(shù)字濾波算法、標(biāo)度變換和插值算法、查表算法

溫馨提示

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

評(píng)論

0/150

提交評(píng)論