第7章 計算機控制系統(tǒng)軟件設(shè)計.ppt_第1頁
第7章 計算機控制系統(tǒng)軟件設(shè)計.ppt_第2頁
第7章 計算機控制系統(tǒng)軟件設(shè)計.ppt_第3頁
第7章 計算機控制系統(tǒng)軟件設(shè)計.ppt_第4頁
第7章 計算機控制系統(tǒng)軟件設(shè)計.ppt_第5頁
已閱讀5頁,還剩77頁未讀 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、第七章 計算機控制系統(tǒng)軟件設(shè)計,7.1 程序設(shè)計技術(shù) 7.2 人機接口(HMI/SCADA)技術(shù) 7.3 測量數(shù)據(jù)預處理技術(shù) 7.4 數(shù)字控制器的工程實現(xiàn) 7.5 系統(tǒng)的有限字長數(shù)值問題 7.6 軟件抗干擾技術(shù),軟件是工業(yè)控制機的程序系統(tǒng),它可分為系統(tǒng)軟件和應用軟件。 所謂應用軟件就是面向控制系統(tǒng)本身的程序,它是根據(jù)系統(tǒng)的具體要求,由用戶自己設(shè)計的。,7.1 程序設(shè)計技術(shù),7.1.1 模塊化與結(jié)構(gòu)化程序設(shè)計 7.1.2 面向過程與面向?qū)ο蟮某绦蛟O(shè)計 7.1.3 高級語言I/O控制臺編程,7.1.1 模塊化與結(jié)構(gòu)化程序設(shè)計,1.模塊化程序設(shè)計 2.結(jié)構(gòu)化程序設(shè)計,一個完整的程序設(shè)計過程可以用左圖

2、來說明。 首先要分析用戶的要求,這大約占整個程序設(shè)計工作量的10%; 然后編寫程序的說明,這大約也占10%; 接著進行程序的設(shè)計與編碼,這大約占30%左右,其中設(shè)計與編碼幾乎各占15%; 最后進行測試和調(diào)試,這要花費整個程序設(shè)計工作量的40%以上。,1.模塊化程序設(shè)計,(1)自底向上模塊化設(shè)計 首先對最低層模塊進行編碼、測試和調(diào)試。這些模塊正常工作后,就可以用它們來開發(fā)較高層的模塊。這種方法是匯編語言設(shè)計常用的方法。 (2)自頂向下模塊化設(shè)計 首先對最高層進行編碼、測試和調(diào)試。為了測試這些最高層模塊,可以用“結(jié)點”來代替還未編碼的較低層模塊,這些“結(jié)點”的輸入和輸出滿足程序的說明部分要求,但功

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

4、.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ù)。 又如: outportw(0 x230,0 x3435) outportb(0 x240,0 x26) 第一條指令表示將二字節(jié)數(shù)3435H輸出到端口230H中,第二條指令表示將單字節(jié)數(shù)26H輸出到端口240H中。,7.2 人機接口(HMI/SCADA)技術(shù),7.2.1 HMI/SCADA的含義 7.2.2 基于工

5、業(yè)控制組態(tài)軟件設(shè)計人機交互界面 7.2.3 基于VB/VC+語言設(shè)計人機交互界面,7.2.1 HMI/SCADA的含義,HMI(Human Machine Interface)廣義的解釋就是“使用者與機器間溝通、傳達及接收信息的一個接口”。一般而言,HMI系統(tǒng)必須有幾項基本的能力: 實時資料趨勢顯示 歷史資料趨勢顯示 自動記錄資料 警報的產(chǎn)生與記錄 報表的產(chǎn)生與打印 圖形接口控制,凡是具有系統(tǒng)監(jiān)控和數(shù)據(jù)采集功能的軟件,都可稱為 SCADA (Supervisor Control And Data Acqusition) 軟件。SCADA軟件和硬件設(shè)備的連接方式主要可歸納為三種: (1) 標準通

6、訊協(xié)議。 (2) 標準的資料交換接口。 (3) 綁定驅(qū)動(Native driver)。,7.2.2 基于工業(yè)控制組態(tài)軟件設(shè)計人機交互界面,1控制組態(tài) 2圖形生成系統(tǒng) 3顯示組態(tài),計算機控制系統(tǒng)的組態(tài)功能可分為兩個主要方面,即硬件組態(tài)和軟件組態(tài)。 硬件組態(tài)常以總線式(PC總線或STD總線)工業(yè)控制機為主進行選擇和配置。 工業(yè)控制組態(tài)軟件是標準化、規(guī)?;?、商品化的通用過程控制軟件 。 組態(tài)工作是在組態(tài)軟件支持下進行的,組態(tài)軟件主要包括:控制組態(tài)、圖形生成系統(tǒng)、顯示組態(tài)、IO通道登記、單位名稱登記、趨勢曲線登記、報警系統(tǒng)登記、報表生成系統(tǒng)共8個方面的內(nèi)容。,1.控制組態(tài),控制算法的組態(tài)生成在軟件上

7、可以分為兩種實現(xiàn)方式: 一種方式是采用模塊宏的方式,即一個控制規(guī)律模塊(如PID運算)對應一個宏命令(子程序),在組態(tài)生成時,每用到一個控制模塊,則組態(tài)生成控制算法,產(chǎn)生的執(zhí)行文件中就將該宏所對應的算法換入執(zhí)行文件。 另一種常用的方式是將各控制算法編成各個獨立的可以反復調(diào)用的功能模塊,對應每一模塊有一個數(shù)據(jù)結(jié)構(gòu),該數(shù)據(jù)結(jié)構(gòu)定義了該控制算法所需要的各個參數(shù)。因此,只要這些參數(shù)定義了,控制規(guī)律就定了。有了這些算法模塊,就可以生成絕大多數(shù)的控制功能。,2.圖形生成系統(tǒng),計算機控制系統(tǒng)的人機界面越來越多地采用圖形顯示技術(shù)。圖形畫面主要是用來監(jiān)視生產(chǎn)過程的狀況,并可通過對畫面上對象的操作,實現(xiàn)對生產(chǎn)過程

8、的控制。 圖形畫面一般有兩種即靜態(tài)畫面(或背景畫面)和動態(tài)畫面。 靜態(tài)畫面一般用來反映監(jiān)視對象的環(huán)境和相互關(guān)系,它的顯示是不隨時間的變化的。 動態(tài)畫面一般用以反映被監(jiān)視對象和被控對象的狀態(tài)和數(shù)值等,它在顯示過程中是隨現(xiàn)場被監(jiān)控對象的變化而變化的。在生成圖形畫面時,不但要有靜態(tài)畫面,而且還要有“活”的部分即動態(tài)畫面。,3.顯示組態(tài),(1)選擇模擬顯示表 (2)定義模擬顯示表 (3)顯示登記法 (4)IO通道登記 (5)單位名稱登記 (6)趨勢曲線登記 (7)報警系統(tǒng)登記 (8)報表生成系統(tǒng),計算機控制系統(tǒng)的畫面顯示一般分為三級即總貌畫面、組貌畫面、回路畫面。若想構(gòu)成這些畫面,就要進行顯示組態(tài)操作

9、。 顯示組態(tài)操作包括選擇模擬顯示表、定義顯示表及顯示登記方法等操作。,(1)選擇模擬顯示表 由于計算機控制系統(tǒng)顯示畫面常采用各種模擬顯示表來顯示測量值、設(shè)定值和輸出值,因此,顯示組態(tài)一般可用6種模擬顯示表,即調(diào)節(jié)控制表、報警顯示表、閥位操作表、監(jiān)視操作表、比率設(shè)定表、流量累計表。,返回,返回,(2)選擇了回路的模擬顯示表后,尚須對顯示表的每一個參數(shù)進行確定,并在畫面上設(shè)定相應的值。,(3)顯示登記法 顯示登記法是進入系統(tǒng)顯示登記畫面。選擇過程控制站站號及工作方式;登記控制組號、組名,該組員的回路號,進行分組登記操作;顯示表登記(登記每一個控制回路所用的模擬顯示表);將顯示登記文件存入后備文件或

10、打印。,(4)IO通道登記 計算機控制系統(tǒng)能支持多種類型的信號輸入和輸出。從生產(chǎn)過程來看,每一輸入輸出都有不同的名稱和意義,因此需將輸入輸出定義成特定的含義,這就是IO通道登記。IO通道主要是模擬量IO和開關(guān)量IO等通道。,(5)單位名稱登記 對系統(tǒng)各種畫面中需要顯示的工程單位名稱采用登記的方法,可使用中英文一切符號,登記生成自己特有的單位名稱,主要登記編號和單位名。,系統(tǒng)的硬盤中保存有三種趨勢曲線數(shù)據(jù),即當天的、昨天的和歷史的數(shù)據(jù)。 當天的趨勢曲線數(shù)據(jù),系統(tǒng)以一定的周期將數(shù)據(jù)保存起來。到第二天就 將當天的數(shù)據(jù)覆蓋昨天的數(shù)據(jù)。歷史數(shù)據(jù)是當你需要某天的數(shù)據(jù)時,從硬盤拷貝到軟盤保存起來。 趨勢曲線

11、的規(guī)格主要有:趨勢曲線幅數(shù)、趨勢曲線每幅條數(shù)、每條時間、顯示精度。趨勢曲線登記表的內(nèi)容主要有:幅號、幅名、編號、顏色、曲線名稱、來源、工程量上限和下限。,(6)趨勢曲線登記,返回,報警顯示畫面分成三級即報警概況畫面、報警信息畫面、報警畫面。 報警概況畫面是第一級,它顯示系統(tǒng)中所有報警點的名稱和報警次數(shù); 報警信息畫面是第二級,它是第一級畫面的展開與細化,可調(diào)出相應報警信息畫面,即可觀察到報警時間,消警時間,報警點名稱和報警原因等; 報警畫面是第三級,可調(diào)出與報警點相應的各顯示畫面,包括總貌畫面、組畫面、回路畫面、趨勢曲線畫面等。 為了完成報警登記,還要填寫登記表。內(nèi)容包括:編號、名稱、原因類型

12、、原因參數(shù)、畫面類型、畫面參數(shù)。,(7)報警系統(tǒng)登記,返回,(8)報表生成系統(tǒng) 報表生成系統(tǒng)用于系統(tǒng)的報表及打印輸出。因而報表系統(tǒng)主要功能是定義各種報表的數(shù)據(jù)來源、運算方式以及報表打印格式和時間特性。,返回,7.2.3 基于VB/VC+語言設(shè)計人機交互界面,1.Visual Basic 2.VC+,如何為單片機選擇合適的人機界面,1、單片微型計算機簡稱單片機,是典型的嵌入式微控制器(Microcontroller Unit),常用英文字母的縮寫MCU表示單片機,目前單片機滲透到我們生活的各個領(lǐng)域,幾乎很難找到哪個領(lǐng)域沒有單片機的蹤跡。導彈的導航裝置,飛機上各種儀表的控制,計算機的網(wǎng)絡(luò)通訊與數(shù)據(jù)

13、傳輸,工業(yè)自動化過程的實時控制和數(shù)據(jù)處理,廣泛使用的各種智能IC卡,民用豪華轎車的安全保障系統(tǒng),錄像機、攝像機、全自動洗衣機的控制,以及程控玩具、電子寵物等等,這些都離不開單片機。更不用說自動控制領(lǐng)域的機器人、智能儀表、醫(yī)療器械了。因此,單片機的學習、開發(fā)與應用將造就一批計算機應用與智能化控制的科學家、工程師。,2、單片機開發(fā)出來的產(chǎn)品,能否得到用戶的青睞,除了基本的功能以外,還需要一個友好的人機交互過程(簡稱人機界面)。單片機與人交流的發(fā)展過程,從發(fā)光二極管的亮滅-筆段數(shù)碼管-點陣數(shù)碼管-黑白點陣液晶屏。高端的MCU擺脫了黑白屏,輕松駕馭絢麗的彩色人機界面。單片機驅(qū)動不了彩色屏,但是開發(fā)產(chǎn)品

14、技巧能彌補單片機的天生缺陷,使得單片機開發(fā)出的產(chǎn)品也可以是友好的彩色界面。 如何為自己的單片機選擇合適的人機界面呢? 市面上縱多的產(chǎn)品中,可以歸結(jié)為三種比較成熟的產(chǎn)品:智能彩色顯示終端(有些帶VGA的)、組態(tài)人機界面和單板電腦。三種產(chǎn)品都可以使單片機開發(fā)出一個非常友好的界面產(chǎn)品,但各有優(yōu)勢和缺點。,一智能彩色顯示終端: 產(chǎn)品開發(fā)難度:3 單片機技術(shù)要求:5 開發(fā)周期:4 效果: 先把需要顯示的圖片存放到顯示終端,單片機通過串口發(fā)送簡單的指令,控制顯示終端顯示指定的圖片、裁剪圖片顯示、畫出各種圖形、文字以及實時數(shù)據(jù),這些復雜的圖像處理只需要單片機靈活發(fā)出機靈即可。簡單說,單片機主動發(fā)出指令,顯示

15、終端按指令執(zhí)行顯示。帶觸摸屏,可以替代了機械按鈕,按鈕可以通過用戶上傳小塊圖片標示。有些智能顯示終端還帶VGA輸出,單片機直接驅(qū)動VGA顯示器,真瀟灑。把工程做成多個頁面跳轉(zhuǎn)更換配合觸摸屏按鈕,效果可以媲美銀行的ATM終端。,二組態(tài)人機界面: 產(chǎn)品開發(fā)難度:2 單片機技術(shù)要求:3 開發(fā)周期:2 效果:4有相當一部分搞單片機開發(fā)人員沒有聽說過組態(tài)人機界面,那是因為組態(tài)人機觸摸屏一般搭配PLC一起使用在工控自動化行業(yè),極大地簡化了工程流程和縮短了工程開發(fā)時間。既然組態(tài)人機有這個優(yōu)勢,我們搞單片機開發(fā)產(chǎn)品也可以利用起來。開發(fā)過程,現(xiàn)在電腦安裝組態(tài)軟件,拖動需要顯示的控件組合起來,如需要顯示的數(shù)據(jù)變量

16、和漸變的曲線、模擬儀表、密碼登陸權(quán)限、報警模塊、模擬生產(chǎn)流程等等。工程可以做成多個頁面跳轉(zhuǎn),編譯后下載到觸摸屏上就可以使用。,單片機如何使用觸摸屏實現(xiàn)呢?其實單片機能不能主動發(fā)只能去控制觸摸屏的,這個是與顯示終端最大的差異。工作原理,組態(tài)觸摸屏不停的發(fā)指令,單片機僅作回復,并且按照雙方協(xié)定執(zhí)行動作,而觸摸屏則會按照單片機狀態(tài)顯示。單片機需要加入通訊協(xié)議,這個協(xié)議是工業(yè)標準的modbus-RTU,移植到單片機也很簡單,當然自己按照通訊標準寫也可以。萬事具備了,東風也有了,單片機的人機換面完美,但是能很好配合單片機使用的組態(tài)人機界面的產(chǎn)品不多,我印象中,廣州市微嵌計算機科技有限公司開發(fā)的組態(tài)觸摸屏

17、合適單片機,提供移植好的標準通訊協(xié)議的源代碼,稍微改動就能滿足自己的工程,效果還不錯。,三單板電腦: 產(chǎn)品開發(fā)難度:5 單片機技術(shù)要求:3 開發(fā)周期:5 效果:5 市場上單板電腦帶的系統(tǒng)一般有WINCE和LINUX。從單片機如何顯示完美人機界面的角度出發(fā),WINCE單板電腦占很大優(yōu)勢,使用WINCE的習慣跟平時的WINDOWS一樣。 用戶可以選擇自己精通的開發(fā)語言進行應用程序界面的開發(fā),就現(xiàn)在而言,wince單板電腦支持的開發(fā)語言還是比較豐富的,包括VC+,C#,VB,EVC和.NET等語言。使用單板電腦開發(fā)界面會比上面兩種產(chǎn)品難度高,但是可以有很好的效果,畫面任意變化,集成了網(wǎng)絡(luò)功能,可以做

18、數(shù)據(jù)后臺處理,復雜的處理系統(tǒng)。,7.3 測量數(shù)據(jù)預處理技術(shù),7.3.1 誤差自動校準 7.3.2 線性化處理和非線性補償 7.3.3 標度變換方法 7.3.4 越限報警處理,傳感器把生產(chǎn)過程的信號轉(zhuǎn)換成電信號,然后用AD轉(zhuǎn)換器把模擬信號變成數(shù)字信號,讀入計算機中。 對于這樣得到的數(shù)據(jù),一般要進行一些預處理,其中最基本的處理有線性化處理、標度變換和誤差自動校準。,7.3.1 誤差自動校準,定義:系統(tǒng)誤差是指在相同條件下,經(jīng)過多次測量,誤差的數(shù)值(包括大小符號)保持恒定,或按某種已知的規(guī)律變化的誤差。 特點:在一定的測量條件下,其變化規(guī)律是可以掌握的,產(chǎn)生誤差的原因一般也是知道的。 方法:偏移校準

19、在實際中應用最多,并且常采用程序來實現(xiàn),稱為數(shù)字調(diào)零。 調(diào)零電路的實現(xiàn):在測量時,先把多路輸入接到所需測量的一組輸入電壓上進行測量,測出這時的輸入值為x1,然后把多路開關(guān)的輸入接地,測出零輸入時AD轉(zhuǎn)換器的輸出為x0,用x1減去x0即為實際輸入電壓x。 除了數(shù)字調(diào)零外,還可以采用偏移和增益誤差的自動校準。,1.全自動校準,采用這種方法測得的V與放大器的漂移和增益變化無關(guān),與V和R的精度也無關(guān)。這樣可大大提高測量精度,降低對電路器件的要求。,2.人工自動校準,人工自動校準的原理是由人工在需要時接入標準的參數(shù)進行校準測量,把測得的數(shù)據(jù)存貯起來,供后使用。一般人工自動校準只測一個標準輸入信號yR,零

20、信號的補償由數(shù)字調(diào)零來完成。設(shè)數(shù)字調(diào)零后測出的數(shù)據(jù)分別為xR(接校準輸入yR時)和x(接被測輸入y時),則可按下式來計算y。,如果在校準時,計算并存放yRxR的值,則測量校準時,只需行一次乘法即可。 人工自動校準特別適于傳感器特性隨時間會發(fā)生變化的場合。如常用的濕敏電容等濕度傳感器。,7.3.2 線性化處理和非線性補償,1鉑熱電阻的阻值與溫度的關(guān)系 2熱電偶的熱電勢與溫度的關(guān)系 3孔板差壓與流量的關(guān)系 4氣體體積流量的非線性補償,7.3.3 標度變換方法,計算機控制系統(tǒng)在讀入被測模擬信號并轉(zhuǎn)換成數(shù)字量后,往往要轉(zhuǎn)換成操作人員所熟悉的工程值。這是因為被測量對象的各種數(shù)據(jù)的量綱與AD轉(zhuǎn)換的輸入值是

21、不一樣的。例如,壓力的單位為Pa,流量的單位為m3h,溫度的單位為等。這些參數(shù)經(jīng)傳感器和AD轉(zhuǎn)換后得到一系列的數(shù)碼,這些數(shù)碼值并不一定等于原來帶有量綱的參數(shù)值,它僅僅對應于參數(shù)值的大小,故必須把它轉(zhuǎn)換成帶有量綱的數(shù)值后才能運算、顯示或打印輸出,這種轉(zhuǎn)換就是標度變換。 標度變換有各種類型,它取決于被測參數(shù)的傳感器的類型,應根據(jù)實際要求來選用適當?shù)臉硕茸儞Q方法。 1線性變換公式 2公式轉(zhuǎn)換法 3其它標度變換法,1.線性變換公式 Y=(Ymax-Ymin)(X-Nmin)(Nmax-Nmin)+Ymin Y表示參數(shù)測量值,Ymax表示參數(shù)量程最大值,Ymin表示參數(shù)量程最小值,Nmax表示 Ymax

22、對應的AD轉(zhuǎn)換后的輸入值,Nmin表示量程起點Ymin對應的AD轉(zhuǎn)換后的輸入值,X表示測量值Y對應的AD轉(zhuǎn)換值。 2.公式轉(zhuǎn)換法 有些傳感器測出的數(shù)據(jù)與實際的參數(shù)不是線性關(guān)系,它們有著由傳感器和測量方法決定的函數(shù)關(guān)系,并且這些函數(shù)關(guān)系可用解析式來表示,這時我們可采用直接按解析式來計算。 3.其它標度變換法 許多非線性傳感器并不象上面講的流量傳感器那樣,可以寫出一個簡單的公式,或者雖然能夠?qū)懗觯嬎阆喈斃щy。這時可采用多項式插值法,也可以用線性插值法或查表進行標度變換。,7.3.4 越限報警處理,越限報警是工業(yè)控制過程常見而又實用的一種報警形式,它分為上限報警、下限報警及上下限報警。如果需要判

23、斷的報警參數(shù)是xn,該參數(shù)的上下限約束值分別是xmax和xmin,則上下限報警的物理意義如下: (1)上限報警 若xnxmax,則上限報警,否則繼續(xù)執(zhí)行原定操作。 (2)下限報警 若xnxmin,則下限報警,否則繼續(xù)執(zhí)行原定操作。 (3)上下限報警 若xnxmax,則上限報警,否則對下式做判別; xnxmin否?若是則下限報警,否則繼續(xù)原定操作。 根據(jù)上述規(guī)定,程序可以實現(xiàn)對被控參數(shù)y、偏差e以及控制量u進行上下限檢查。,7.4 數(shù)字控制器的工程實現(xiàn),7.4.1 給定值和被控量處理 7.4.2 偏差處理 7.4.3 控制算法的實現(xiàn) 7.4.4 控制量處理 7.4.5 自動/手動切換技術(shù),數(shù)字控

24、制器算法的工程實現(xiàn)中,應注意的問題,由以下五部分給出 :,7.4.1 給定值和被控量處理,1.給定值處理 給定值處理包括選擇給定值SV和給定值變化率限制SR兩部分。 通過選擇軟開關(guān)CLCR,可以構(gòu)成內(nèi)給定狀態(tài)或外給定狀態(tài);通過選擇軟開關(guān)CASSCC,可以構(gòu)成串級控制或SCC控制。 (1)內(nèi)給定狀態(tài) 當軟開關(guān)CLCR切向CL位置時,選擇操作員設(shè)置的給定值SVL。這時系統(tǒng)處于單回路控制的內(nèi)給定狀態(tài),利用給定值鍵可以改變給定值。,(2)外給定狀態(tài) 當軟開關(guān)CLCR切向CR位置時,給定值來自上位計算機、主回路或運算模塊。這時系統(tǒng)處于外給定狀態(tài)。在此狀態(tài)下,可以實現(xiàn)以下兩種控制方式。 SCC控制:當軟開

25、關(guān)CASSCC切向SCC位置時,接收來自上位計算機的給定值SVS,以便實現(xiàn)二級計算機控制。 串級控制:當軟開關(guān)CASSCC切向CAS位置時,給定值SVS來自主調(diào)節(jié)模塊,實現(xiàn)串級控制。 (3)給定值變化率限制 為了減少給定值突變對控制系統(tǒng)的擾動,防止比例、積分飽和,以實現(xiàn)平穩(wěn)控制,需要對給定值的變化率SR加以限制。變化率的選取要適中,過小會使響應變慢,過大則達不到限制的目的。 綜上所述,在給定值處理中,共具有三個輸入量(SVL,SVC,SVS),兩個輸出量(SV,CSV),兩個開關(guān)量(CLCR,CASSCC),一個變化率(SR)。為了便于PID控制程序調(diào)用這些量,需要給每個PID控制模塊提供一段

26、內(nèi)存數(shù)據(jù)區(qū),來存儲以上變量。,2.被控量處理,為了安全運行,需要對被控量PV進行上下限報警處理,即: 當PVPH(上限值)時,則上限報警狀態(tài)(PHA)為“1”; 當PVPL(下限值)時,則下限報警狀態(tài)(PLA)為“1”。 當出現(xiàn)上、下限報警狀態(tài)(PHA,PLA)時,它們通過驅(qū)動電路發(fā)出聲或光,以便提醒操作員注意。為了不使PHAPLA的狀態(tài)頻繁改變,可以設(shè)置一定的報警死區(qū)(HY)。 為了實現(xiàn)平穩(wěn)控制,需要對參與控制的被控量的變化率PR加以限制。變化率的選取要適中,過小會使響應變慢,過大則達不到限制的目的。 被控量處理數(shù)據(jù)區(qū)存放一個輸入量PV,三個輸出量PHA、PLA和CPV,四個參數(shù)PH、PL、

27、HY和PR。,7.4.2 偏差處理,偏差處理分為計算偏差、偏差報警、非線性特性和輸入補償四部分,如下圖所示。 1計算偏差:根據(jù)正反作用方式(DR)計算偏差DV, 當DR=0,代表正作用,此時偏差DV=CPV-CSV; 當DR=1,代表反作用,此時偏差DV=CSV-CPV; 2偏差報警 : 對于控制要求較高的對象,不僅要設(shè)置被控制量PV的上、下限報警,而且要設(shè)置偏差報警。 當偏差絕對值|DV|DL時,則偏差報警狀態(tài)DLA為“1”。,3輸入補償 根據(jù)輸入補償方式ICM狀態(tài),決定偏差DVC與輸入補償量ICV之間的關(guān)系,即 當ICM=0,代表無補償,此時CDV=DVC; 當ICM=1,代表加補償,此時

28、CDV=DVC+ICV; 當ICM=2,代表減補償,此時CDV=DVC-ICV; 當ICM=3,代表置換補償,此時CDV=ICV。 利用加、減輸入補償,可以分別實現(xiàn)前饋控制和純滯后補償(Smith)控制。 4非線性特性 為了實現(xiàn)非線性PID控制或帶死區(qū)的PID控制,設(shè)置了非線性區(qū)-A至+A和非線性增益K,非線性特性如圖所示。即 當K=0時,則為帶死區(qū)的PID控制; 當0K1時,則為非線性PID控制; 當K=1時,則為正常的PID控制。 偏差處理數(shù)據(jù)區(qū)共存放一個輸入補償量 ICV,兩個輸出量DLA和CDV,兩個狀態(tài)量DR 和ICM,以及四個參數(shù)DL、-A、+A和K。,7.4.3 控制算法的實現(xiàn),

29、在自動狀態(tài)下,需要進行控制計算,即按照各種控制算法的差分方程,計算控制量U,并進行上、下限限幅處理。 以PID控制算法為例,當軟開關(guān)DVPV切向DV位置時,則選用偏差微分方式;當軟開關(guān)DVPV切向PV位置時,則選用測量(即被控量)微分方式。 在PID計算數(shù)據(jù)區(qū),不僅要存放PID參數(shù)(KP或,TI,TD)和采控制周期T,還要存放微分方式DVPV、積分分離值,控制量上限限值MH和下限限值ML,以及控制量UK。為了進行遞推運算,還應保存歷史數(shù)據(jù),如e(k-1)、e(k-2)和u(k-1)。,7.4.4 控制量處理,在輸出控制量UK以前,還應經(jīng)過各項處理和判斷,以便擴展控制功能,實現(xiàn)安全平穩(wěn)操作。 1

30、輸出補償:根據(jù)輸出補償方式OCM的狀態(tài),決定控制量UK與輸出補償量OCV之間的關(guān)系,即: 當OCM=0,代表無補償,此時Uc=Uk; 當OCM=1,代表加補償,此時Uc=Uk+OCV; 當OCM=2,代表減補償,此時Uc=Uk-OCV; 當OVM=3,代表置換補償,此時Uc=OCV. 利用輸出和輸入補償,可以擴大實際應用范圍,靈活組成復雜的數(shù)字控制器,以便組成復雜的自動控制系統(tǒng)。,2變化率限制:為了實現(xiàn)平穩(wěn)操作,需要對控制量的變化率MR加以限制。變化率的選取要適中,過小會使操作緩慢,過大則達不到限制的目的。 3輸出保持:當軟開關(guān)FHNH切向NH位置時,現(xiàn)時刻的控制量u(k)等于前一時刻的控制量

31、u(k-1),也就是說,輸出控制量保持不變。當軟開關(guān)FHNH切向FH位置時,又恢復正常輸出方式。軟開關(guān)FHNH狀態(tài)一般來自系統(tǒng)安全報警開關(guān)。 4安全輸出:當軟開關(guān)FSNS切向NS位置時,現(xiàn)時刻的控制量等于預置的安全輸出量MS。當軟開關(guān)FSNS切向FS位置時,又恢復正常輸出方式。軟開關(guān)FSNS狀態(tài)一般來自系統(tǒng)安全報警開關(guān)。 控制量處理數(shù)據(jù)區(qū)需要存放輸出補償量OCV和補償方式OCM,變化率限制值MR,軟開關(guān)FHNH和FSNS,安全輸出量MS,以及控制量CMV。,7.4.5 自動手動切換技術(shù),在正常運行時,系統(tǒng)處于自動狀態(tài);而在調(diào)試階段或出現(xiàn)故障時,系統(tǒng)處于手動狀態(tài)。下圖為自動/手動切換處理框圖。

32、1.軟自動軟手動 當軟開關(guān)SASM切向SA位置時,系統(tǒng)處于正常的自動狀態(tài),稱為軟自動(SA);反之,切向SM位置時,控制量來自操作鍵盤或上位計算機,此時系統(tǒng)處于計算機手動狀態(tài),稱為軟手動(SM)。一般在調(diào)試階段,采用軟手動(SM)方式。,圖 自動/手動切換處理框圖,2.控制量限幅 為了保證執(zhí)行機構(gòu)工作在有效范圍內(nèi),需要對控制量Us進行上、下限限幅處理,使得MLMVMH,再經(jīng)DA轉(zhuǎn)換器輸出010mADC或420mADC。 3.自動手動 對于一般的計算機控制系統(tǒng),可采用手動操作器作為計算機的后備操作。當切換開關(guān)處于HA位置時,控制量MV通過DA輸出,此時系統(tǒng)處于正常的計算機控制方式,稱為自動狀態(tài)(

33、HA狀態(tài));反之,若切向HM位置,則計算機不再承擔控制任務,由運行人員通過手動操作器輸出010mADC或420mADC信號,對執(zhí)行機構(gòu)進行遠方操作,這稱為手動狀態(tài)(HM狀態(tài))。,4.無平衡無擾動切換 所謂無平衡無擾動切換,是指在進行手動到自動或自動到手動的切換之前,無須由人工進行手動輸出控制信號與自動輸出控制信號之間的對位平衡操作,就可以保證切換時不會對執(zhí)行機構(gòu)的現(xiàn)有位置產(chǎn)生擾動。 為了實現(xiàn)從手動到自動的無平衡操作無擾動切換,在手動(SM或HM)狀態(tài)下,盡管并不進行PID計算,但應使給定值(CSV)跟蹤被控量(CPV),同時也要把歷史數(shù)據(jù),如e(k-1)和e(k-2)清零,還要使u(k-1)跟

34、蹤手動控制量(MV或VM)。這樣,一旦切向自動而u(k-1)又等于切換瞬間的手動控制量,這就保證了PID控制量的連續(xù)性。當然,這一切需要有相應的硬件電路配合。 當從自動(SA與HA)切向軟手動(SM)時,只要計算機應用程序工作正常,就能自動保證無擾動切換。當從自動(SA與HA)切向硬手動(HM)時,通過手動操作器電路,也能保證無擾動切換。 從輸出保持狀態(tài)或安全輸出狀態(tài)切向正常的自動工作狀態(tài)時,同樣需要進行無擾動切換,為此可采取類似的措施,不再贅述。 自動手動切換數(shù)據(jù)區(qū)需要存放軟手動控制量SMV,軟開關(guān)SASM狀態(tài),控制量上限限值(MH)和下限限值(ML),控制量MV,切換開關(guān)HAHM狀態(tài),以及

35、手動操作器輸出VM。,以上討論了PID控制程序的各部分功能及相應的數(shù)據(jù)區(qū)。完整的PID控制模塊數(shù)據(jù)區(qū)除了上述各部分外,還有被控量量程上限RH和量程下限RL,工程單位代碼、采樣(控制)周期等。該數(shù)據(jù)區(qū)是PID控制模塊存在的標志,可把它看作是數(shù)字PID控制器的實體。只有正確地填寫PID數(shù)據(jù)區(qū)后,才能實現(xiàn)PID控制系統(tǒng)。 采用上述數(shù)字控制器,不僅可以組成單回路控制系統(tǒng),而且可以組成串級、前饋、純滯后補償(Smith)等復雜控制系統(tǒng),對于后面兩種系統(tǒng)還應增加補償器運算模塊。利用該控制模塊和各種功能運算模塊的組合,可以組成各種控制系統(tǒng)來滿足生產(chǎn)過程控制的要求。,7.5 系統(tǒng)的有限字長數(shù)值問題,7.5.1

36、 量化誤差來源 7.5.2 A/D、D/A及運算字長的選擇,7.5.1 量化誤差來源,1.量化誤差 量化單位q,也就是機內(nèi)數(shù)的最小單位。 舉例,8位和12位的A/D轉(zhuǎn)換器,在05V時的q通過AD轉(zhuǎn)換可計算出模擬電壓x相當于多少個整量化單位,即:x=Lq+,式中L為整數(shù),對于余數(shù)(q)可以用截尾或舍入來處理 。 所謂截尾就是舍掉數(shù)值中小于q的余數(shù)(q),其截尾誤差t為:t=xt-x,式中x為實際數(shù)值,xt為截尾后的數(shù)值。顯然-qt0。 所謂舍入是指,當被舍掉的余數(shù)大于或等于量化單位的一半時,則最小有效位加1;而當余數(shù)小于量化單位的一半時,則舍掉。這時舍入誤差為r=xr-x,式中x為實際數(shù)值,xr

37、舍入后的數(shù)值。顯然,-q/2rq/2。,2.量化誤差來源,從下圖可以看出,產(chǎn)生量化誤差的原因主要有以下幾個方面: (1)A/D轉(zhuǎn)換的量化效應 (2)控制規(guī)律計算中的量化效應。 (3)控制參數(shù)的量化效應 (4)D/A轉(zhuǎn)換的量化效應,7.5.2 A/D、D/A及運算字長的選擇,1.A/D轉(zhuǎn)換器的字長選擇 2.D/A轉(zhuǎn)換器的字長選擇 3.運算的字長選擇,1.A/D轉(zhuǎn)換器的字長選擇,為把量化誤差限制在所允許的范圍內(nèi),應使A/D轉(zhuǎn)換器有足夠的字長。確定字長要考慮的因素是:輸入信號x的動態(tài)范圍和分辨率。 (1)輸入信號的動態(tài)范圍 為轉(zhuǎn)換當量 (2)分辨率,2.D/A轉(zhuǎn)換器的字長選擇,執(zhí)行機構(gòu)的最大輸入值為

38、umax 最小輸入值為umin 靈敏度為,3.運算的字長選擇,由8位或12位A/D變換器采集數(shù)據(jù)之后,為了保證運算精度,在CPU內(nèi)幾乎毫無例外的至少采用16位字長運算。運算精度不僅取決于字長,而且還取決于采用定點數(shù)或浮點數(shù)。如果采用浮點數(shù),運算精度可以大大提高。 不管采用定點還是浮點數(shù),輸入標準數(shù)0至1對應A/D轉(zhuǎn)換結(jié)果的全0至全1;輸出標準數(shù)0至1對應D/A轉(zhuǎn)換器數(shù)字位狀態(tài)的全0至全1。,7.6 軟件抗干擾技術(shù),1.測控系統(tǒng)軟件的基本要求,(1)易理解、易維護,指軟件系統(tǒng)容易閱讀和理解,容易發(fā)現(xiàn)和糾正錯誤,容易修改和補充。,(2)實時性,要求系統(tǒng)及時響應外部事件的發(fā)生,并及時給出處理結(jié)果。,

39、(3)可測試性,兩方面含義:其一是比較容易制定出測試準則,并根據(jù)這些準則對軟件進行測試;其二軟件設(shè)計完成后,首先在模擬環(huán)境下運行,經(jīng)過靜態(tài)分析和動態(tài)仿真運行,證明正確無誤后才可投入實際運行。,(4)準確性,算法選擇、位數(shù)選擇等要符合要求。,(5)可靠性,最重要的指標之一,兩方面含義:第一是運行參數(shù)環(huán)境發(fā)生變化時,軟件能可靠運行并給出準確結(jié)果,即軟件應具有自適應性;第二是工業(yè)環(huán)境極其惡劣,干擾嚴重,軟件必須保證在嚴重干擾條件下也能可靠運行。,2.軟件抗干擾研究的主要內(nèi)容,(1)采用軟件的方法抑制疊加在輸入輸出信號上噪聲影響,如模擬輸入信號的數(shù)字濾波技術(shù);,(2)由于干擾而使程序發(fā)生混亂,導致程序

40、亂飛或陷入死循環(huán),采取使程序納入正規(guī)的措施,如指令冗余、軟件陷阱、“看門狗”技術(shù)等;,(3)發(fā)現(xiàn)程序失控后,解決系統(tǒng)恢復正常運行的方法,如重要信息的恢復,系統(tǒng)重入的條件等;,(3)數(shù)字濾波器可以根據(jù)信號的不同,采用不同的濾波方法或濾波參數(shù),具有靈活、方便、功能強的特點。,7.6.1 數(shù)字濾波技術(shù),所謂數(shù)字濾波,就是通過一定的計算或判斷程序減少干擾在有用信號中的比重。故實質(zhì)上它是一種程序濾波。,與模擬濾波器相比,有以下幾個優(yōu)點:,(1)數(shù)字濾波是用程序?qū)崿F(xiàn)的,不需要增加硬設(shè)備,所以可靠性高,穩(wěn)定性好。,(2)數(shù)字濾波可以對頻率很低(如0.01HZ)的信號實現(xiàn)濾波,克服了模擬濾波器的缺陷。,主要數(shù)

41、字濾波算法:算術(shù)平均值法、中位值濾波法、限幅濾波法、慣性濾波法,1.算術(shù)平均值法,第術(shù)平均值法是對輸入的N個采樣數(shù)據(jù)xi(i=1N),尋找這樣一個y,使y與各采樣值間的偏差的平方和為最小,使,由一元函數(shù)求極值原理可得:,例:某壓力儀表采樣數(shù)據(jù)如下:,序 號 采樣值,采樣數(shù)據(jù)明顯存在被干擾現(xiàn)象(彩色數(shù)據(jù))。,采用算術(shù)平均值濾波后,其采樣值為:,Y=(24+25+20+27+24+60+24+25+ 26+23)/10=28,干擾被平均到采樣值中去了,3)、平均值濾波法一般適用于具有周期性干擾噪聲的信號,但對偶然出現(xiàn)的脈沖干擾信號,濾波效果尚不理想。,特點:,1)、N值決定了信號平滑度和靈敏度。隨

42、著N的增大,平滑度提高,靈敏度降低。應該視具體情況選擇N,以便得到滿意的濾波效果。,2)、對每次采樣值給出相同的加權(quán)系數(shù),即1/N。在不同采樣時刻采集數(shù)據(jù)受到同樣重視。實際上某些場合需要增加新采樣值在平均值中的比重,可采用加權(quán)平均值濾波法。濾波公式為:Y=R0Y0+ R1Y1+ R2Y2+ RmYm。,算術(shù)平均濾波法的程序流程圖如圖7-3所示。 如圖7-4所示,輸入的真實信號是階躍信號,當受到如圖(b)所示的有規(guī)律的干擾時,算術(shù)平均濾波法能很好的濾除這種干擾,但是當受到如圖(c)所示的脈沖性干擾時,這種方法就不能取得良好的濾波效果了。從分析結(jié)果可以看出,算術(shù)平均濾波法對周期性干擾有良好的抑制效

43、果,對脈沖性干擾的濾波效果并不理想,存在測量誤差。,圖7-3 算術(shù)平均濾波法程序流程圖 圖7-4 算術(shù)平均濾波法效果示意圖,為了新近的采樣值具有重要的影響,而較早的采樣值的影響較小,這樣每次采樣值會根據(jù)其作用不同分配不同的權(quán),它們在濾波輸出結(jié)果中會占不同的比例。把各次采樣值乘以權(quán),再求和,此方法就是加權(quán)算術(shù)平均濾波,即 (7-5) 式中,x(i)是第i個采樣值,N是采樣次數(shù),是N個采樣值的加權(quán)算術(shù)平均值;r0,r1,r2,rN -1為加權(quán)系數(shù),一般 式(7-5)稱為加權(quán)算術(shù)平均值濾波算法。 加權(quán)平均濾波法程序流程如圖6-5所示。,圖7-5 加權(quán)平均濾波法程序流程圖,2.中位值濾波法,中位值濾波

44、法的原理是對被測參數(shù)連續(xù)采樣m次(m3)且是奇數(shù),并按大小順序排列;再取中間值作為本次采樣的有效數(shù)據(jù)。,特點:中位值濾波法對脈沖干擾信號等偶然因素引發(fā)的干擾有良好的濾波效果。如對溫度、液位等變化緩慢的被測參數(shù)采用此法會收到良好的濾波效果;對流量、速度等快速變化的參數(shù)一般不宜采用中位值濾波法,中位值濾波法和平均值濾波法結(jié)合起來使用,濾波效果會更好。即在每個采樣周期,先用中位值濾波法得到m個濾波值,再對這m個濾波值進行算術(shù)平均,得到可用的被測參數(shù)。也稱為去脈沖干擾平均值濾波法.,例:某壓力儀表采樣數(shù)據(jù)如下:,序 號 采樣值,采樣數(shù)據(jù)明顯存在被干擾現(xiàn)象(彩色數(shù)據(jù))。,采用去脈沖干擾平均值濾波后,其采樣值為:25,對1、2、3次采樣中位值濾波后值:24 對4、5、6次采樣中位值濾波后值:27 對7、8、9次采樣中位值濾波后值:25,3.限幅濾波法,由于大的隨機干擾或采樣器的不穩(wěn)定,使得采樣數(shù)據(jù)偏離實際值太遠,為此采用上、下限限幅,即 當y(n)yH時,則取y(n)=yH(上限值); 當y(n)yL時,則取y(n)=yL(下限值); 當yLy(n)yH時,則取y(n)。 而且采用限速(亦稱限制變化率),即 當|y(n)-y(n-1)|y0時,則取y(n); 當|y(n)-y(n-1)|y0時,

溫馨提示

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

最新文檔

評論

0/150

提交評論