計算機控制技術(shù)課件:6-1 應(yīng)用程序設(shè)計與實現(xiàn)技術(shù)(一)_第1頁
計算機控制技術(shù)課件:6-1 應(yīng)用程序設(shè)計與實現(xiàn)技術(shù)(一)_第2頁
計算機控制技術(shù)課件:6-1 應(yīng)用程序設(shè)計與實現(xiàn)技術(shù)(一)_第3頁
計算機控制技術(shù)課件:6-1 應(yīng)用程序設(shè)計與實現(xiàn)技術(shù)(一)_第4頁
計算機控制技術(shù)課件:6-1 應(yīng)用程序設(shè)計與實現(xiàn)技術(shù)(一)_第5頁
已閱讀5頁,還剩23頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、第24講第6章 應(yīng)用程序設(shè)計與實現(xiàn)技術(shù)(一) 軟件是工業(yè)控制機的程序系統(tǒng),它可分為系統(tǒng)軟件和應(yīng)用軟件。 所謂應(yīng)用軟件就是面向控制系統(tǒng)本身的程序,它是根據(jù)系統(tǒng)的具體要求,由用戶自己設(shè)計的。 軟件設(shè)計的方法:利用計算機語言自己編制特定功能的應(yīng)用程序;也可以利用組態(tài)軟件工具開發(fā)應(yīng)用程序。 6.1 程序設(shè)計技術(shù) 6.2 測量數(shù)據(jù)預(yù)處理技術(shù) 第6章 應(yīng)用程序設(shè)計與實現(xiàn)技術(shù)(一)6.1.1 模塊化與結(jié)構(gòu)化程序設(shè)計一個完整的程序設(shè)計過程可以用左圖來說明。 首先要分析用戶的要求,這大約占整個程序設(shè)計工作量的10%;然后編寫程序的說明文件,這大約也占10%;接著進行程序的設(shè)計與編碼,這大約占30%左右,其中設(shè)計

2、與編碼幾乎各占15%;最后進行測試和調(diào)試,這要花費整個程序設(shè)計工作量的40%以上。 6.1 程序設(shè)計技術(shù)1.模塊化程序設(shè)計 (1)自底向上模塊化設(shè)計 首先對最低層模塊進行編碼、測試和調(diào)試。這些模塊正常工作后,就可以用它們來開發(fā)較高層的模塊。 這種方法是匯編語言設(shè)計常用的方法。 (2)自頂向下模塊化設(shè)計 首先對最高層進行編碼、測試和調(diào)試。為了測試這些最高層模塊,可以用“結(jié)點”來代替還未編碼的較低層模塊,這些“結(jié)點”的輸入和輸出滿足程序的說明部分要求,但功能少得多。 該方法一般適合用高級語言來設(shè)計程序。 6.1 程序設(shè)計技術(shù)2.結(jié)構(gòu)化程序設(shè)計 1966年,C.Bohm 和G.Jacopini證明了

3、只用三種基本的控制結(jié)構(gòu)就能實現(xiàn)任何單入口單出口的程序。這三種基本的控制結(jié)構(gòu)是“順序”、“選擇”、“循環(huán)”。如圖所示。6.1 程序設(shè)計技術(shù)2.結(jié)構(gòu)化程序設(shè)計6.1 程序設(shè)計技術(shù)2.結(jié)構(gòu)化程序設(shè)計6.1 程序設(shè)計技術(shù)6.1.2 面向過程與面向?qū)ο蟮某绦蛟O(shè)計 1.面向過程的程序設(shè)計及其局限性 2.面向?qū)ο蟮某绦蛟O(shè)計 在概念上異同: (1)模塊與對象 (2)過程調(diào)用和消息傳遞 (3)類型和類 (4)靜態(tài)鏈接和動態(tài)鏈接6.1 程序設(shè)計技術(shù)6.1.3 高級語言I/O控制臺編程 對于PC總線工業(yè)控制機,我們以Turbo C為例來說明其訪問I/O端口的編程。 Turbo C通常有庫函數(shù),允許直接訪問I/O端口

4、,頭文件conio.h中定義了I/O端口例程。 例如: a=inportw(0 x210) b=inportb(0 x220) 第一條指令表示將端口210H的16位二進制數(shù)(一個字)輸入給變量a,第二條指令表示將端口220H的8位二進制數(shù)(一個字節(jié))輸入給變量b。在C語言中,0 x起頭的是16進制數(shù)。-6.1 程序設(shè)計技術(shù)6.1.3 高級語言I/O控制臺編程 又如: outportw(0 x230,0 x3435) outportb(0 x240,0 x26) 第一條指令表示將二字節(jié)數(shù)3435H輸出到端口230H中 第二條指令表示將單字節(jié)數(shù)26H輸出到端口240H中。 6.1 程序設(shè)計技術(shù)返回

5、6.2 測量數(shù)據(jù)預(yù)處理技術(shù) 傳感器把生產(chǎn)過程的信號轉(zhuǎn)換成電信號,然后用AD轉(zhuǎn)換器把模擬信號變成數(shù)字信號,讀入計算機中。 對于這樣得到的數(shù)據(jù),一般要進行一些預(yù)處理,其中最基本的處理有:誤差自動校準(zhǔn) 線性化處理 標(biāo)度變換 6.2.1 誤差自動校準(zhǔn) 定義:系統(tǒng)誤差是指在相同條件下,經(jīng)過多次測量,誤差的數(shù)值(包括大小符號)保持恒定,或按某種已知的規(guī)律變化的誤差。 特點:在一定的測量條件下,其變化規(guī)律是可以掌握的,產(chǎn)生誤差的原因一般也是知道的。 校準(zhǔn)方法:偏移校準(zhǔn)在實際中應(yīng)用最多,并且常采用程序來實現(xiàn),稱為數(shù)字調(diào)零。6.2 測量數(shù)據(jù)預(yù)處理技術(shù) 數(shù)字調(diào)零: 在測量時,先把多路輸入接到所需測量的一組輸入電壓

6、上進行測量,測出這時的輸入值為x1,然后把多路開關(guān)的輸入接地,測出零輸入時AD轉(zhuǎn)換器的輸出為x0,用x1減去x0即為實際輸入電壓x。 除了數(shù)字調(diào)零外,還可以采用偏移和增益誤差的自動校準(zhǔn)。6.2 測量數(shù)據(jù)預(yù)處理技術(shù)1.全自動校準(zhǔn) 先把開關(guān)接地,測出這時的輸入值x0,然后把開關(guān)接VR,測出輸入值x1,并存放x1、x0,在正式測量時,如測出的輸入值為x,則這時的V可用下式計算 6.2 測量數(shù)據(jù)預(yù)處理技術(shù)1.全自動校準(zhǔn) 采用這種方法測得的V與放大器的漂移和增益變化無關(guān),與V和R的精度也無關(guān)。這樣可大大提高測量精度,降低對電路器件的要求。 6.2 測量數(shù)據(jù)預(yù)處理技術(shù)2.人工自動校準(zhǔn) 人工自動校準(zhǔn)只測一個

7、標(biāo)準(zhǔn)輸入信號yR,零信號的補償由數(shù)字調(diào)零來完成。 設(shè)數(shù)字調(diào)零后測出的數(shù)據(jù)分別為xR(接校準(zhǔn)輸入yR時)和x(接被測輸入y時),則可按下式來計算y。 如果在校準(zhǔn)時,計算并存放yRxR的值,則測量校準(zhǔn)時,只需行一次乘法即可。 人工自動校準(zhǔn)特別適于傳感器特性隨時間會發(fā)生變化的場合。如常用的濕敏電容等濕度傳感器。 6.2 測量數(shù)據(jù)預(yù)處理技術(shù)6.2.2 線性化處理和非線性補償1.鉑熱電阻的阻值與溫度的關(guān)系 2.熱電偶的熱電勢與溫度的關(guān)系 3.孔板差壓與流量的關(guān)系4.氣體體積流量的非線性補償 6.2 測量數(shù)據(jù)預(yù)處理技術(shù)6.2.3 標(biāo)度變換方法 在工業(yè)測控系統(tǒng)中,如,壓力的單位為Pa,流量的單位為m3h,溫

8、度的單位為等,這些參數(shù)經(jīng)傳感器和AD轉(zhuǎn)換后得到一系列的數(shù)碼,這些數(shù)碼值并不一定等于原來帶有量綱的參數(shù)值,它僅僅對應(yīng)于參數(shù)值的大小,故必須把它轉(zhuǎn)換成帶有量綱的工程值后才能運算、顯示或打印輸出,這種轉(zhuǎn)換就是標(biāo)度變換。 標(biāo)度變換有各種類型,它取決于被測參數(shù)的傳感器的類型,應(yīng)根據(jù)實際要求來選用適當(dāng)?shù)臉?biāo)度變換方法。 6.2 測量數(shù)據(jù)預(yù)處理技術(shù) 1.線性變換公式 Y=(Ymax-Ymin)(X-Nmin)(Nmax-Nmin)+Ymin Y表示參數(shù)測量值,Ymax表示參數(shù)量程最大值,Ymin表示參數(shù)量程最小值,Nmax表示 Ymax對應(yīng)的AD轉(zhuǎn)換后的輸入值,Nmin表示量程起點Ymin對應(yīng)的AD轉(zhuǎn)換后的輸

9、入值,X表示測量值Y對應(yīng)的AD轉(zhuǎn)換值。 2.公式轉(zhuǎn)換法 可采用直接按解析式來計算。 3.其它標(biāo)度變換法 可采用多項式插值法,也可以用線性插值法或查表進行標(biāo)度變換。 6.2 測量數(shù)據(jù)預(yù)處理技術(shù)6.2.4 越限報警處理 越限報警是工業(yè)控制過程常見而又實用的一種報警形式,它分為上限報警、下限報警及上下限報警。如果需要判斷的報警參數(shù)是xn,該參數(shù)的上下限約束值分別是xmax和xmin,則上下限報警的物理意義如下: (1)上限報警 若xnxmax,則上限報警,否則繼續(xù)執(zhí)行原定操作。 (2)下限報警 若xnxmin,則下限報警,否則繼續(xù)執(zhí)行原定操作。 (3)上下限報警 若xnxmax,則上限報警,否則對下

10、式做判別; xnxmin否?若是則下限報警,否則繼續(xù)原定操作。 根據(jù)上述規(guī)定,程序可以實現(xiàn)對被控參數(shù)y、偏差e以及控制量u進行上下限檢查。 6.2 測量數(shù)據(jù)預(yù)處理技術(shù)6.2.5 量化誤差來源 1.量化誤差 量化單位q,也就是機內(nèi)數(shù)的最小單位。 舉例,8位和12位的A/D轉(zhuǎn)換器,在0-5V時的q通過AD轉(zhuǎn)換可計算出模擬電壓x相當(dāng)于多少個整量化單位,即:x=Lq+,式中L為整數(shù),對于余數(shù)(q)可以用截尾或舍入來處理 。 6.2 測量數(shù)據(jù)預(yù)處理技術(shù)6.2.5 量化誤差來源 1.量化誤差 所謂截尾就是舍掉數(shù)值中小于q的余數(shù)(q),其截尾誤差t為:t=xt-x,式中x為實際數(shù)值,xt為截尾后的數(shù)值。顯然

11、-qt0。 所謂舍入是指,當(dāng)被舍掉的余數(shù)大于或等于量化單位的一半時,則最小有效位加1;而當(dāng)余數(shù)小于量化單位的一半時,則舍掉。這時舍入誤差為r=xr-x,式中x為實際數(shù)值,xr舍入后的數(shù)值。顯然,-q/2rq/2。6.2 測量數(shù)據(jù)預(yù)處理技術(shù)2.量化誤差來源 從下圖可以看出,產(chǎn)生量化誤差的原因主要有以下幾個方面: (1)A/D轉(zhuǎn)換的量化效應(yīng) (2)控制規(guī)律計算中的量化效應(yīng)。 (3)控制參數(shù)的量化效應(yīng) (4)D/A轉(zhuǎn)換的量化效應(yīng)6.2 測量數(shù)據(jù)預(yù)處理技術(shù)1.A/D轉(zhuǎn)換器的字長選擇 為把量化誤差限制在所允許的范圍內(nèi),應(yīng)使A/D轉(zhuǎn)換器有足夠的字長。確定字長要考慮的因素是:輸入信號x的動態(tài)范圍和分辨率。 (1)輸入信號的動態(tài)范圍 為轉(zhuǎn)換當(dāng)量 (2)分辨率D06.2.6 A/D、D/A及運算字長的選擇 6.2 測量數(shù)據(jù)預(yù)處理技術(shù)2.D/A轉(zhuǎn)換器的字長選擇執(zhí)行機構(gòu)的最大輸入值為umax最小輸入值為umin靈敏度為 6.2 測量數(shù)據(jù)預(yù)處理技術(shù)3.運算的字長選擇 由8位或12位A

溫馨提示

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

評論

0/150

提交評論