基于Matlab及PLC的實時控制系統(tǒng)_第1頁
基于Matlab及PLC的實時控制系統(tǒng)_第2頁
基于Matlab及PLC的實時控制系統(tǒng)_第3頁
基于Matlab及PLC的實時控制系統(tǒng)_第4頁
全文預覽已結束

下載本文檔

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

文檔簡介

1、-. z.基于Matlab與PLC的實時控制系統(tǒng)基于Matlab的S7-200 PLC溫度實時控制系統(tǒng),結合Matlab強大的計算能力和靈活的編程方法,解決了PLC控制系統(tǒng)的局限性。該系統(tǒng)在上位機Matlab的Simulink中實現(xiàn)單神經(jīng)元自適應PID控制算法,下位機S7-200 PLC則負責進展實時數(shù)據(jù)采樣和輸出,上下位機間數(shù)據(jù)通信通過OPC技術實現(xiàn),并利用Matlab GUI進展監(jiān)控;研究了系統(tǒng)的實現(xiàn)機制與過程,并對該控制系統(tǒng)進展了測試,取得了良好的控制效果。Maflab Simulink在控制系統(tǒng)領域得到了廣泛的應用。Matlab語言工程計算力強大,程序設計流程靈活,可實現(xiàn)復雜的控制算法

2、。但不能與現(xiàn)場工控設備直接進展數(shù)據(jù)通信,致使很多先進控制算法仍然只是停留在純數(shù)字仿真階段。而常見的可編程序邏輯控制器(programmable logic controller,PLC)在控制過程中往往不能運行復雜的先進控制算法,或是勉強運行導致控制器反響實時性降低,制約了先進控制算法在PLC上的應用。為了解決此問題,本文以基于Matlab與s7200的溫度實時控制系統(tǒng)為例,將Matlab Simulink直接應用于實時控制現(xiàn)場系統(tǒng)。該系統(tǒng)的PLC進展實時數(shù)據(jù)采樣和輸出,在Matlab上實現(xiàn)控制算法,通過OPC技術實現(xiàn)Matlab與PLC間的數(shù)據(jù)傳送,并利用Matlab內(nèi)置的GUI實現(xiàn)上位機監(jiān)

3、控界面。該系統(tǒng)經(jīng)實際測試,取得了較好的控制效果。本文研究為有效提高控制系統(tǒng)的效率與控制水平開辟一條新路。1 OPC接口技術 opt(OLE for Process Control)規(guī)*是在微軟倡導下由OPC基金會所建立的硬件和軟件接口標準,它基于微軟現(xiàn)有的OLE、組件對象模和分布式組件對象模D技術。OPC規(guī)*的引入,提供了一種在數(shù)據(jù)源與客戶端之間進展實時數(shù)據(jù)傳輸?shù)耐ㄐ艡C制。OPC標準中的軟件體系構造為客戶視效勞器模式,每個支持OPC接口標準的硬件廠商為其設備開發(fā)一個OPC效勞器,提供必要的OPC數(shù)據(jù)訪問標準子接口,主要負責從硬件設備得到數(shù)據(jù)并存人數(shù)據(jù)緩沖區(qū);支持OPC接口的應用軟件作為OPC客

4、戶,通過OPC標準接口實現(xiàn)與OPC效勞器的數(shù)據(jù)交互,從而讀寫硬件設備的信息。 OPC效勞器由3類對象組成,包括效勞器、組和數(shù)據(jù)項。OPC的應用架構及層次對象的關系如圖1所示。0PC效勞器對象擁有效勞器的所有信息,同時也是組對象的容器。組對象OPC項擁有本組的所有信息,同時包含并在邏輯上組織了OPC數(shù)據(jù)項。而OPC數(shù)據(jù)項是效勞器定義的對象,包括值、品質(zhì)、時間戳3個根本屬性。OPC客戶對設備存放器的操作都是通過數(shù)據(jù)項來完成,但OPC數(shù)據(jù)項并不提供對外接口,客戶不能直接對其進展操作,所有的操作都是通過組對象來進展的。圖1 OPC的應用架構及根本構造圖2 基于Matlab與S7200溫度實時控制系統(tǒng)的

5、實現(xiàn)21 溫度實時控制系統(tǒng)的構造本系統(tǒng)的設計綜合了Matlab語言強大的計算能力和PLC高抗干擾性能等優(yōu)點,并通過Matlab內(nèi)置的圖形用戶界面GUI實現(xiàn)系統(tǒng)的監(jiān)控。這樣控制算法可以在Matlab的Simulink中進展仿真調(diào)試,進而連接被控制對象實現(xiàn)溫度的實時控制,從而極大簡化了控制系統(tǒng)的設計流程、提高了設計效率。該控制系統(tǒng)由上位機、S7200 PLC以及溫度控制對象三局部組成,系統(tǒng)構造圖如圖2所示。上位機主要完成基于Matlab的溫度控制算法和控制系統(tǒng)監(jiān)控界面,S7200 PLC配置EM235實現(xiàn)溫度實時信號的輸入與控制信號的輸出,溫度控制對象包括脈寬調(diào)制電路、由ADS90組成的溫度檢測電

6、路、加熱器等。上位機Matlab Simulink仿真模型中的實時信號通過OPC通信技術與S7200 PLC中采樣、控制信號進展通信。Matlab GUI則通過編制M文件的形式實現(xiàn)與Matlab Simulink仿真模型中控制參數(shù)的,從而在監(jiān)控界面上控制及監(jiān)測PLC s7200的狀態(tài),采集對應的溫度響應曲線。圖2 溫度實時控制系統(tǒng)構造圖22基于OPC技術的Matlab與S7-200數(shù)據(jù)通信實現(xiàn)221通信原理 Matlab70集成了OPC Toolbo*,它是一個OPC客戶端數(shù)據(jù)訪問軟件,通過OPC Toolbo*可以連接任何一個OPC數(shù)據(jù)效勞器,實現(xiàn)對連接效勞器數(shù)據(jù)的讀或?qū)??;贠PC技術的M

7、atlab與PLC S7200通信原理圖如圖3所示:參照Matlab中的OPCToolbo*對象模型,以s7200 OPC Server為OPC效勞器,Matlab為客戶端,建立OPC通信的流程,實現(xiàn)Matlab在實際工業(yè)控制系統(tǒng)中的應用。222 PC Access與s7200的連接 PC Access是西門子S7200的專用OPC效勞器,支持OPC Data Access(DA)30規(guī)*,可以與任何標準的OPC客戶端通信,其效勞器ID為S7200OPCServer。在PC Access中可以為監(jiān)控的PLC定義屬性、通信協(xié)議,創(chuàng)立客戶端訪問的數(shù)據(jù)項(Item)及數(shù)據(jù)地址等。本系統(tǒng)中需要通過OP

8、C通信的數(shù)據(jù)項有2個,即werldu(溫度過程值)、kongzhi(控制量)。圖3 OPC通信原理223建立Matlab與PC Access的連接運行PC Access中的相關工程后,在Matlab命令窗口編寫運行如下M文件程序?qū)崿F(xiàn)Matlab與PCAccess的通信o clc clear all; hostlnfo=opcserverinfo(localhost); allServers=hostInfoServerID;確定該主機上可用的ID da=opcda(localhost,S7200OPCServer);s7200 OPC Sever為PC Access的OPC效勞器ID conn

9、ect(da);連接OPC效勞器 grp=addgroup(da,groupl)增加組 wendu=additem(grp,MicroWinNewPLcwendu);增加數(shù)據(jù)項與PC Access中溫度設定關聯(lián)。 kongzhi=additem(grp,MicroWinNewPLckongzhi);23基于Simulink的單神經(jīng)元自適應PID算法的實現(xiàn)231單神經(jīng)元自適應PID算法常規(guī)PID控制器對運行工況適應性差,參數(shù)的整定往往難以保證系統(tǒng)優(yōu)良的控制性能,然而具有自學習和自適應能力的單神經(jīng)元算法所構成的單神經(jīng)元自適應PID控制器,不但構造簡單,而且能適應環(huán)境的變化,具備較強的魯棒性。單神經(jīng)

10、元自適應控制器是通過加權系數(shù)的調(diào)整來實現(xiàn)自適應,自組織功能的,可以通過不同的學習規(guī)則調(diào)整權系數(shù),從而構成不同的控制算法。本系統(tǒng)按有監(jiān)視的Hebb學習規(guī)則來實現(xiàn)權系數(shù)的調(diào)整。對于增量型神經(jīng)元PID控制系統(tǒng):232基于Simulink的溫度實時控制系統(tǒng)的實現(xiàn)圖4中OPC Read模塊、OPC write模塊分別與PC Access中的數(shù)據(jù)項wendu(溫度過程值)、kongzhi(控制量),負責現(xiàn)場溫度過程信號的讀入和控制量的輸出。由于神經(jīng)元自適應PID控制器不能直接用傳遞函數(shù)加以描述,假設簡單地應用Simulink將無法對其進展仿真,此時應引入S函數(shù)。根據(jù)式(1)一式(3),基于Delta學習規(guī)

11、則的神經(jīng)元自適應PID控制器的S函數(shù)模塊dsjypid程序編寫如下:functionsys,*O=nu(t,*,u,flag,np,ni,nd,K,wl,w2,w3)if flag=2sys(1)=*(1)+ni水u(1)木u(1);sys(2)=*(2)+np球U(2)木U(1);sys(3)=*(3)+nd水U(3)水U(1);elseif flag 2=3sys=K*(*(1)*u(1)+*(2)*u(2)+*(3)*U(3)(abs(*(1)+abs(*(2)+abs(*(3);elseifflag=0sys=0,3,l,3,1,1;*O=w1,w2,w3;elsesys=;end圖4

12、 單神經(jīng)元PID的Simulink系統(tǒng)模型24 系統(tǒng)監(jiān)控界面的設計 Matlab GUI是由各種圖形構建的用戶界面,它既能嵌入己有的仿真程序,又能把仿真后的圖形化結果以人機交互的動態(tài)方式直觀呈現(xiàn),對于熟悉Maflab而不想編寫大量VC代碼的科研人員來講,Maflab GUI無疑是一個最正確選擇。Matlab GUI監(jiān)控界面的實現(xiàn)包括監(jiān)控界面的組態(tài)和對應組件M文件程序的編寫。本系統(tǒng)上位機采用Matlab-GUI設計監(jiān)控界面,實現(xiàn)在Manab GUI界面上控制及監(jiān)測PLC s7200的狀態(tài),采集對應的溫度響應曲線。系統(tǒng)監(jiān)控設計界面如圖5所示。在監(jiān)控界面中我們設置了假設干個控制按鈕實現(xiàn)控制系統(tǒng)的啟動

13、、暫停繼續(xù)、停頓、曲線繪制以及控制參數(shù)輸入確定等;設置了溫度曲線顯示功能區(qū)和控制參數(shù)區(qū)以方便用戶的控制與監(jiān)視。監(jiān)控界面中控制參數(shù)輸入采用文本控件,輸入確認后回調(diào)函數(shù)程序首先將輸人參數(shù)文本框中的字符串進展轉換并賦值給各對應中問變量,然后將中間變量與S-function模塊中的相關變量進展,以實現(xiàn)參數(shù)的輸入;繪制曲線的回調(diào)函數(shù)程序編寫則包涵加載數(shù)據(jù)、繪制曲線及溫度過程值的測定與顯示。圖5 控制系統(tǒng)監(jiān)控界面設計圖圖5中SV、PV分別為溫度的設定值和實時過程值,wi(i=1,2,3)為系統(tǒng)初始權系數(shù);np,ni,nd,K分別為神經(jīng)元的比例學習速率、積分學習速率、微分學習速率和神經(jīng)元比例系數(shù)。25溫度實

14、時控制系統(tǒng)的測試我們以單神經(jīng)元自適應PID算法為例對上述溫度實時控制系統(tǒng)進展TN試。圖6中兩曲線分別為s7200白帶的PID控制、單神經(jīng)元自適應PID控制的溫度動態(tài)過程曲線。在S7200端是用WINCC監(jiān)控顯示。測試結果說明:采用PID控制算法,系統(tǒng)P=42I=42 rain,D=01min時,溫度設定值從30階躍到44,系統(tǒng)溫度峰值為445,系統(tǒng)溫度穩(wěn)定值為43 98,超調(diào)量f=42,tp=208 s;采用基于Matlab與S7200的單神經(jīng)元自適應PID控制系統(tǒng),該控制器中神經(jīng)元權值(i=1,2,3)初始值分別設定為42,01,02。選取np=l 500,ni005,nd=05,K=60,

15、測試結果可知溫度設定值從30階躍到44,系統(tǒng)溫度峰值為446,系統(tǒng)溫度穩(wěn)定值為4397,超調(diào)量f=5,tp=57 8;圖7為基于Matlab與S7200的單神經(jīng)元自適應PID算法,Matlab GUI客戶端監(jiān)控測試的曲線。由上述圖可得如下結論。從圖6中2種控制算法實現(xiàn)的溫度控制動態(tài)過程可知,采用單神經(jīng)元PID算法有很好的響應快速性,系統(tǒng)控制效果良好,本測試以單神經(jīng)元PID算法為例,由于算法在Pc上比擬容易實現(xiàn),所以本方案的控制可以進一步擴展更為復雜控制算法。從圖6與圖7中可以看出:采用單神經(jīng)元PID控制時,S7200端測試的溫度曲線與GUI監(jiān)控界面溫度曲線完全一樣,檢測的溫度實時值一致,說明MaIlab GUI、PC Access、S7200 PLC 3者間的通信良好,表達了控制系統(tǒng)通過OPC技術實現(xiàn)了實時控制。圖6 S7200端測試的溫度動態(tài)過程曲線圖7 GUI客戶端測試的溫度動態(tài)過程曲線3 結論 Matlab和Simulink具有強大的計算能力和靈活的編程設計,但不能與現(xiàn)場工控設備直接數(shù)據(jù)通信;而常用的小型

溫馨提示

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

評論

0/150

提交評論