版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
可編程控制器PID高數(shù)計數(shù)器課件第1頁,共94頁,2023年,2月20日,星期一4.6S7-200PID指令
4.6.1PID算法理解PID算法PID控制器調節(jié)輸出,保證偏差(e)為零,使系統(tǒng)達到穩(wěn)定狀態(tài),偏差(e)是給定值(SP)和過程變量(PV)的差。PID控制的原理基于下面的算式;輸出M(t)是比例項、積分項和微分項的函數(shù)。輸出=比例項+積分項+微分項其中:M(t)是PID回路的輸出,是時間的函數(shù)KC--PID回路的增益e--PID回路的偏差(給定值與過程變量之差)Minitial--PID回路輸出的初始值第2頁,共94頁,2023年,2月20日,星期一為了能讓數(shù)字計算機處理這個控制算式,連續(xù)算式必須離散化為周期采樣偏差算式,才能用來計算輸出值。數(shù)字計算機處理的算式如下:其中:Mn--在第n個采樣時刻,PID回路輸出的計算值KC--PID回路比例增益en--第n個采樣時刻的回路偏差值en-1--上一個采樣時刻杜回路偏差ei--第i個采樣時刻的回路偏差值KI--積分項的比例常數(shù)Minitial--回路輸出的初始值KD--微分項的比例常數(shù)從這個公式可以看出,積分項是從第1個采樣周期到當前采樣周期所有誤差項的函數(shù),微分項是當前采樣和前一次采樣的函數(shù),比例項僅是當前采樣的函數(shù)。在數(shù)字計算機中,不保存所有的誤差項,實際上也不必要。只需將上一次的誤差值和上一次積分項的數(shù)值保存即可。第3頁,共94頁,2023年,2月20日,星期一由于計算機從第一次采樣開始,每有一個偏差采樣值必須計算一次輸出值,只需要保存偏差前值和積分項前值。作為數(shù)字計算機解決的重復性的結果,可以得到在任何采樣時刻必須計算的方程的一個簡化算式。簡化算式是:Mn=Kc*en+KI*en+MX+KD*(en-en-1)其中:Mn--在第n個采樣時刻,PID回路輸出的計算值KC--PID回路比例增益en--第n個采樣時刻的回路偏差值en-1--上一個采樣時刻杜回路偏差KI--積分項的比例常數(shù)MX--積分項前值KD--微分項的比例常數(shù)第4頁,共94頁,2023年,2月20日,星期一CPU實際使用以上簡化算式的改進形式計算PID輸出。這個改進型算式是:Mn=MPn+MIn+MDn輸出=比例項+積分項+微分項其中:Mn--第n采樣時刻的計算值MPn--第n采樣時刻的比例項值MIn--第n采樣時刻的積分項值MDn--第n采樣時刻的微分項值第5頁,共94頁,2023年,2月20日,星期一(1)理解PID方程的比例項比例項MPn是增益(KC)和偏差(e)的乘積。其中KC決定輸出對偏差的靈敏度,偏差(e)是給定值(SP)與過程變量值(PV)之差。S7--200解決的求比例項的算式是:MPn=KC*(SPn–PVn)MPn--第n個采樣時刻比例項的值KC--回路增益SPn--第n采樣時刻的給定值PVn--第n采樣時刻的過程變量值第6頁,共94頁,2023年,2月20日,星期一(2)理解PID方程的積分項積分項(MI)是正比于每次采樣的誤差的積累值。S7--200解決的求積分項的算式是:MIn=KC*TS/TI*(SPn--PVn)+MX其中:MIn--第n個采樣時刻的積分項值KC--回路增益TS--采樣周期TI--積分時間常數(shù)SPn--第n采樣時刻的給定值PVn--第n采樣時刻的過程變量值MX--第n-1采樣時刻的積分項(積分項前值)(也稱積分和或偏置)第7頁,共94頁,2023年,2月20日,星期一(3)理解PID方程的微分項微分項(MD)正比于誤差的變化。S7--200使用下列算式來求解微分項:MDn=KC*TD/TS*((SPn–PVn)-(SPn-1-PVn-1))為了避免給定值變化的微分作用而引起的跳變,假定給定值不變(SPn=SPn-1)。這樣,可以用過程變量的變化替代偏差的變化,計算算式可改進為:MDn=KC*TD/TS*(PVn-1-PVn)其中:MDn--第n個采樣時刻的微分項值KC--回路增益TS--采樣周期TD--微分時間常數(shù)SPn--第n采樣時刻的給定值SPn-1--第n-1采樣時刻的給定值PVn--第n采樣時刻的過程變量值PVn-1--第n-1采樣時刻的過程變量值為了下一次計算微分項值,必須保存過程變量,而不是偏差。在第一采樣時刻,初始化為PVn-1=PVn第8頁,共94頁,2023年,2月20日,星期一4.6.5PID指令PID指令以回路表中的輸入和組態(tài)信息進行PID運算。要執(zhí)行該指令,必須使邏輯棧頂值置為1。指令中的TBL是PID控制回路的起始地址。LOOP為控制回路號(為常數(shù),在0-7之間)使ENO=0的錯誤條件:SM1.1(溢出)H0006(間接尋址)受影響特殊存儲器位HSM1.1(溢出)第9頁,共94頁,2023年,2月20日,星期一在程序中最多可以用8條PID指令。如果兩個或兩個以上的PID指令用了同一個回路號,那么即使這些指令的回路表不同,這些PID運算之間也會相互干涉,產生不可預料的結果?;芈繁戆?個參數(shù),用來控制和監(jiān)視PID運算。這些參數(shù)分別是過程變量當前值(PVn),過程變量前值(PVn--1),給定值(SPn),輸出值(Mn),增益(Kc),采樣時間(Ts),積分時間(TI),微分時間(TD)和積分項前值(MX)。為了讓PID運算以預想的采樣頻率工作,PID指令必須用在定時發(fā)生的中斷程序中,或者用在主程序中被定時器所控制以一定頻率執(zhí)行。采樣時間必須通過回路表輸入到PID運算中。第10頁,共94頁,2023年,2月20日,星期一回路表第11頁,共94頁,2023年,2月20日,星期一回路控制類型的選擇通過設置常量參數(shù),可以選擇需要的回路控制類型。如果不想要積分動作(PID計算中沒有“I”),可以把積分時間(復位)置為無窮大“INF”。即使沒有積分作用,積分項還是不為零,因為有初值MX。如果不想要微分回路,可以把微分時間置為零。如果不想要比例回路,但需要積分或積分微分回路,可把增益設為0.0,系統(tǒng)會在計算積分項和微分項時,把增益當作1.0看待。正作用回路和反作用回路如果增益為正,那么該回路為正作用回路。如果增益為負,那么是反作用回路。對于增益值為0.0的I或ID控制,如果指定積分時間、微分時間為正,就是正作用回路;如果指定為負值,就是反作用回路第12頁,共94頁,2023年,2月20日,星期一控制方式S7--200的PID回路沒有設置控制方式,只要PID塊有效,就可以執(zhí)行PID運算。即PID運算存在一種“自動“運行方式。當PID運算不被執(zhí)行時,我們稱之為“手動”模式。PID指令使能位檢測到信號的正跳變(從0到1),PID指令執(zhí)行一系列動作,使PID指令從手動方式無擾動地切換到自動方式。為了達到無擾動切換,在轉變到自動控制前,必須用手動方式把當前輸出值填入回路表中的Mn欄。PID指令對回路表中的值進行下列動作,以保證當使能位正跳變出現(xiàn)時,從手動方式無擾動切換到自動方式:置給定值(SPn)=過程變量(PVn)置過程變量前值(PVn-1)=過程變量現(xiàn)值(PVn)置積分項前值(MX)=輸出值(Mn)PID使能位的默認值是1,在CPU啟動或從STOP方式轉到RUN方式時建立。CPU進入RUN方式后首次使PID塊有效,沒有檢測到使能位的正跳變,那么就沒有無擾動切換的動作。第13頁,共94頁,2023年,2月20日,星期一回路輸入的轉換及歸一化處理每個PID回路具有兩個輸入量,給定值(SP)和過程變量(PV)。給定值通常是一個固定的值。過程變量是與PID回路輸出有關,可以衡量輸出對控制系統(tǒng)作用的大小。給定值和過程變量都可能是工程實際的值,它們的大小、范圍和工程單位都可能不一樣。在PID指令對這些工程實際的值進行運算之前,必須把它們轉換成標準的浮點型表達形式。第14頁,共94頁,2023年,2月20日,星期一轉換的第一步是把16位整數(shù)值轉成浮點型實數(shù)值。如:ITDAIW0,AC0//將輸入值轉換為雙整數(shù)。DTRAC0,AC0//將32位雙整數(shù)轉換為實數(shù)。下一步是將工程實際的值的實數(shù)值表達形式轉換成0.0~1.0之間的標準化值。下面的算式可以用于標準化給定值或過程變量值:Rnorm=(Rraw/Span)+Offset其中:Rnorm--工程實際值的歸一化值Rraw--工程實際值的實數(shù)值或原值,未歸一化處理Span--最大允許值減去最小允許值,通常取32000(對于單極性)和64000(對于雙極性)Offset--單極性為0.0,雙極性為0.5第15頁,共94頁,2023年,2月20日,星期一下面的指令把雙極性實數(shù)標準化為0.0~1.0之間的實數(shù)。通常用在第一步轉換之后:/R64000.0,AC0//累加器中的標準化值+R0.5,AC0//加上偏置,使其在0.0~1.0之間MOVRAC0,VD100//標準化的值存入回路表第16頁,共94頁,2023年,2月20日,星期一回路輸出值轉換成整數(shù)值回路輸出值一般是控制變量,比如,在汽車速度控制中,可以是油閥開度的設置?;芈份敵鍪?.0和1.0之間的一個標準化了的實數(shù)值。在回路輸出可以用于驅動模擬輸出之前,回路輸出必須轉換成一個16位的標定整數(shù)值。這一過程,是給定值或過程變量的標準化轉換的逆過程。第一步是使用下面給出的公式,將回路輸出轉換成一個標定的實數(shù)值:第17頁,共94頁,2023年,2月20日,星期一Rscal=(Mn-Offset)*Span其中:RScal--回路輸出的刻度實數(shù)值Mn--回路輸出的標準化實數(shù)值Offset--單極性為0.0,雙極性為0.5Span--值域大小,可能的最大值減去可能的最小值單極性為32,000(典型值)雙極性為64,000(典型值)這一過程可以用下面的指令序列完成:MOVRVD108,AC0//把回路輸出值移入累加器-R0.5,AC0//僅雙極性有此句*R64000.0,AC0//在累加器中得到刻度值下一步是把回路輸出的刻度轉換成16位整數(shù):ROUNDAC0,AC0//把實數(shù)轉換為32位整數(shù)DTIAC0,LW0//把32位整數(shù)轉換為16位整數(shù)MOVWLW0,AQW0//把16位整數(shù)寫入模擬輸出寄存器第18頁,共94頁,2023年,2月20日,星期一出錯條件如果指令指定的回路表起始地址或PID回路號操作數(shù)超出范圍,那么在編譯期間,CPU將產生編譯錯誤(范圍錯誤),從而編譯失敗。PID指令不檢查回路表中的值是否在范圍之內,所以必須小心操作以保證過程變量和設定值不超界。PID指令不檢查回路表中的值是否超界,您必須保證過程變量和設定值(以及偏置和前一次過程變量)必須在0.0到1.0之間。如果PID計算的算術運算發(fā)生錯誤,那么特殊存儲器標志位SM1.1(溢出或非法值)會被置1,并且中止PID指令的執(zhí)行。(要想消除這種錯誤,單靠改變回路表中的輸出值是不夠的,正確的方法是在下一次執(zhí)行PID運算之前,改變引起算術運算錯誤的輸入值,而不是更新輸出值)第19頁,共94頁,2023年,2月20日,星期一PID指令編程舉例在本例中,有一水箱需要維持一定的水位,該水箱里的水以變化的速度流出。這就需要有一個水泵以不同的速度給水箱供水,以維持水位不變,這樣才能使水箱不斷水。本系統(tǒng)的給定值是水箱滿水位的75%時的水位,過程變量由漂浮在水面的水位測量儀給出。輸出值是水泵的速度,可以從允許最大值的0%變到100%。給定值可以預先設定后直接輸入到回路表中,過程變量值是來自水位表的單極性模擬量,回路輸出值也是一個單極性模擬量,用來控制進水泵的速度。這兩個模擬量的范圍是0.0到1.0,分辨率為1/32000(標準化)。在本系統(tǒng)中,只使用比例和積分控制,其回路增益和時間常數(shù)可以通過工程計算初步確定。但還需要進一步調整以達到最優(yōu)控制效果。初步確定的增益和時間常數(shù)為:Kc是0.25,Ts是0.1秒,Tl是30分鐘第20頁,共94頁,2023年,2月20日,星期一
系統(tǒng)啟動時,關閉出水口,用手動控制進水泵的速度,使水位達到滿水位的75%,然后打開出水口,同時水泵控制從手動方式切換到自動方式。這種切換由一個輸入的數(shù)字量控制,描述如下:I0.0位控制手動到自動的切換,0代表手動,1代表自動。當工作在手動控制方式下,可以把水泵速度(0.0~1.0之間的實數(shù))寫道VD108(VD108是回路表中保存輸出的寄存器)第21頁,共94頁,2023年,2月20日,星期一第22頁,共94頁,2023年,2月20日,星期一第23頁,共94頁,2023年,2月20日,星期一第24頁,共94頁,2023年,2月20日,星期一4.7S7-200其他操作指令4.7.1高速計數(shù)器操作指令4.7.2表功能指令4.7.3通信指令4.7.4中斷指令第25頁,共94頁,2023年,2月20日,星期一4.7.1高速計數(shù)器操作指令高速計數(shù)器用于對PLC掃描速率來不及處理的高速事件進行計數(shù)。S7-200PLC根據(jù)CPU不同型號有4-6個高速計數(shù)器。高速計數(shù)器的最高頻率也隨CPU型號不同而異。第26頁,共94頁,2023年,2月20日,星期一1、高速計數(shù)指令高速計數(shù)指令包括定義高速計數(shù)器HDEF指令和高速計數(shù)器HSC指令。HDEF,定義高速計數(shù)器指令。使能輸入有效時,為指定的高速計數(shù)器分配一種工作模式,即用來建立高速計數(shù)器與工作模式之間的聯(lián)系。梯形圖指令盒中有兩個數(shù)據(jù)輸入端:HSC,高速計數(shù)器編號,為0~5的常數(shù),字節(jié)型;MODE,工作模式,為0~11的常數(shù),字節(jié)型。HSC指令是根據(jù)高速計數(shù)器特殊存儲器位的狀態(tài),并按照HDEF指令指定的工作模式設置高速計數(shù)器并開展其工作。第27頁,共94頁,2023年,2月20日,星期一定義高速計數(shù)器指令(HDEF)為指定的高速計數(shù)器(HSCx)選擇操作模式。高速計數(shù)器指令(HSC)在HSC特殊存儲器位狀態(tài)的基礎上,配置和控制高速計數(shù)器。參數(shù)N指定高速計數(shù)器的標號。對于每一個高速計數(shù)器只能用一條定義高速計數(shù)器指令。每一個計數(shù)器都有時鐘、方向控制、復位、啟動的特定輸入。對于雙相計數(shù)器,兩個時鐘都可以運行在最高頻率。在正交模式下,您可以選擇一倍速(1x)或者四倍速(4x)計數(shù)速率。第28頁,共94頁,2023年,2月20日,星期一在使用高速計數(shù)器之前,應該用HDEF(高速計數(shù)器定義)指令為計數(shù)器選擇一種計數(shù)模式。使用初次掃描存儲器位SM0.1(該位僅在第一次掃描周期接通,之后斷開)來調用一個包含HDEF指令的子程序第29頁,共94頁,2023年,2月20日,星期一2、工作模式4種工作模式內部方向控制的單脈沖增/減計數(shù)模式外部方向控制的單脈沖增/減計數(shù)模式增/減計數(shù)時鐘輸入的雙脈沖計數(shù)模式A/B脈沖正交計數(shù)模式不論高速計數(shù)器以何種模式工作,他們的控制信號功能是相同的當復位輸入I1.0有效時,高速計數(shù)器的當前值被清零并保持到復位無效。當啟動信號I1.1有效時,允許計數(shù)器開始計數(shù);當啟動信號無效時,計數(shù)值被保持,但不能對計數(shù)脈沖信號計數(shù)。當啟動信號無效而復位信號有效時,復位信號不起作用,計數(shù)當前值不變。當復位保持有效則啟動信號變?yōu)橛行?,當旗幟被清除。?0頁,共94頁,2023年,2月20日,星期一輸入控制S7-200PLC高速計數(shù)器HSC0-HSC5工作時需要輸入端點的信號控制,下表給出了高速計數(shù)器HSC0-HSC5計數(shù)輸入脈沖、方向控制復位輸入和啟動輸入所使用的物理輸入端點。由表可知,高速計數(shù)器用的物理輸入端點存在一些重疊。同一個物理輸入端點不能用于兩個不同的功能,也不能同時被兩個不同的高速計數(shù)器使用,但不使用的端點可用做其他用途。第31頁,共94頁,2023年,2月20日,星期一第32頁,共94頁,2023年,2月20日,星期一每個高速計數(shù)器都有固定的特殊功能存儲器與之相配合,完成高速計數(shù)功能。具體對應關系如表所示。第33頁,共94頁,2023年,2月20日,星期一狀態(tài)位及1X/4X模式選擇有三個控制位用于配置復位和啟動有效狀態(tài)以及選擇一倍速或者4倍計數(shù)模式(僅用于正交計數(shù)器)。這些位在各個計數(shù)器的控制字節(jié)中,只有在HDEF指令執(zhí)行時才有效。在執(zhí)行HDEF指令前,必須把這些控制位設定到希望的狀態(tài)。否則,計數(shù)器對計數(shù)模式的選擇取缺省設置。一旦HDEF指令被執(zhí)行,您就不能再更改計數(shù)器的設置,除非先進入STOP模式。第34頁,共94頁,2023年,2月20日,星期一狀態(tài)字節(jié)每個高速計數(shù)器都有一個狀態(tài)字節(jié),程序運行時根據(jù)運行狀況自動使某些位置位,可以通過程序來讀相關位的狀態(tài),用以作為判斷條件實現(xiàn)相應的操作。狀態(tài)字節(jié)中各狀態(tài)位的功能如表所示。第35頁,共94頁,2023年,2月20日,星期一控制字節(jié)高速計數(shù)器中有一個控制字節(jié),其功能是允許或禁止計數(shù)器工作、計數(shù)方向控制或初始化計數(shù)方向、控制當前值和預置值裝入等。執(zhí)行HSC指令時,CPU檢查控制字節(jié)和有關當前值和預置值。第36頁,共94頁,2023年,2月20日,星期一當前值雙字和預置值雙字每個高速計數(shù)器有一個32位的初始值和一個32位的預置值。初始值和預置值都是符號整數(shù)。為了向高速計數(shù)器裝入新的初始值和預置值,必須先設置控制字節(jié),并且把初始值和預置值存入特殊存儲器中,然后執(zhí)行HSC指令,從而將新的值傳送到高速計數(shù)器。第37頁,共94頁,2023年,2月20日,星期一HSC中斷高速計數(shù)器有3種中斷:當前值等于預置值中斷外部復位有效中斷計數(shù)方向改變中斷除模式0、1、2外,所有的計數(shù)器模式支持計數(shù)方向改變的中斷,每個中斷條件可分別地被允許或禁止。高速計數(shù)器的初始化步驟以HSC1為例,對初始化和操作的步驟進行描述。在初始化描述中,假定S7-200已經置成RUN模式。因此,首次掃描標志位為真。如果不是這種情況,請記住在進入RUN模式之后,對每一個高速計數(shù)器的HDEF指令只能執(zhí)行一次。對一個高速計數(shù)器第二次執(zhí)行HDEF指令會引起運行錯誤,而且不能改變第一次執(zhí)行HDEF指令時對計數(shù)器的設置。第38頁,共94頁,2023年,2月20日,星期一初始化模式0、1或2HSC1為內部方向控制的單相增/減計數(shù)器(模式0、1或2),初始化步驟如下:1.用初次掃描存儲器位(SM0.1=1)調用執(zhí)行初始化操作子程序。2.初始化子程序中,根據(jù)所希望的控制操作對SMB47置數(shù)。例如:SMB47=16#F8產生如下的結果:允許計數(shù)寫入新的初始值寫入新的預置值置計數(shù)方向為增置啟動和復位輸入為高電平有效第39頁,共94頁,2023年,2月20日,星期一3.執(zhí)行HDEF指令時,HSC輸入置1,MODE輸入置0(無外部復位或啟動)或置1(有外部復位和無啟動)或置2(有外部復位和啟動)。4.向SMD48(雙字)寫入所希望的初始值(若寫入0,則清除)。5.向SMD52(雙字)寫入所希望的預置值。6.為了捕獲當前值(CV)等于預置值(PV)中斷事件,編寫中斷子程序,并指定CV=PV中斷事件(事件號13)調用該中斷子程序。7.為了捕獲外部復位事件,編寫中斷子程序,并指定外部復位中斷事件(事件號15)調用該中斷子程序。8.執(zhí)行全局中斷允許指令(ENI)來允許HSC1中斷。9.執(zhí)行HSC指令,使S7--200對HSC1編程。10.退出子程序。第40頁,共94頁,2023年,2月20日,星期一第41頁,共94頁,2023年,2月20日,星期一第42頁,共94頁,2023年,2月20日,星期一第43頁,共94頁,2023年,2月20日,星期一所謂表是定義一組存儲變量單元用于存儲一組數(shù)據(jù)。表只對字型數(shù)據(jù)存儲,有表存數(shù)、表取數(shù)、表查找指令。一個空表要定義其長度TL和實際能夠填寫的單元數(shù)EC。有FIFO、LIFO、ATT、FND、FILL指令。4.7.2表功能指令第44頁,共94頁,2023年,2月20日,星期一1、FIFO,先進先出指令當使能輸入有效時,從TBL指明的表中移出第一個字型數(shù)據(jù)并將其輸出到DATA所指定的字單元。取數(shù)時,移出的數(shù)據(jù)總是最先進入表中的數(shù)據(jù)。每次從表中移出一個數(shù)據(jù),剩余數(shù)據(jù)依次上移一個字單元位置,同時實際填表數(shù)EC會自動減1。指令格式:FIFOTBL,DATA例:FIFO VW100,AC0使ENO=0的錯誤條件是:SM1.5(表空)SM4.3(運行時間)0006(間接尋址)0091(操作數(shù)超界)該指令影響特殊標志位:如果試圖從空表中移走數(shù)據(jù),那么SM1.5被置1。第45頁,共94頁,2023年,2月20日,星期一第46頁,共94頁,2023年,2月20日,星期一2、LIFO,后進先出指令當使能輸入有效時,從TBL指明的表中移出最后一個字型數(shù)據(jù)并將其輸出到DATA所指定的字單元。LIFO表取數(shù)特點:取數(shù)時,移出的數(shù)據(jù)總是最后進入表中的數(shù)據(jù)。每次從表中取出一個數(shù)據(jù),剩余數(shù)據(jù)位置保持不變,實際填表數(shù)EC會自動減1。指令格式:LIFOTBL,DATA例:LIFOVW100,AC0使ENO=0的錯誤條件是:SM1.5(表空)SM4.3(運行時間)0006(間接尋址)0091(操作數(shù)超界)該指令影響特殊標志位:如果試圖從空表中移走數(shù)據(jù),那么SM1.5被置1。第47頁,共94頁,2023年,2月20日,星期一第48頁,共94頁,2023年,2月20日,星期一3、填表指令:ATT功能:向表(TBL)中增加一個數(shù)值(DATA)。表中第一個數(shù)是最大填表數(shù)(TL),第二個數(shù)是實際填表數(shù)(EC)。新的數(shù)據(jù)填加在表中上最后一個數(shù)據(jù)的后面。每向表中填加一個新的數(shù)據(jù),EC會自動加1。ATT指令定義的表的最大長度為100(不含TL和EC這兩個單元)指令格式:ATTDATA,TBL如果向一個滿表中再添加數(shù)據(jù),或實際要填入的數(shù)據(jù)個數(shù)大于表格本身所定義的長度,則表的溢出標志位SM1.4會置1第49頁,共94頁,2023年,2月20日,星期一第50頁,共94頁,2023年,2月20日,星期一4、查表指令FND?,表查找指令。通過表查找指令可以從字型數(shù)表中找出符合條件的數(shù)據(jù)所在的表中數(shù)據(jù)編號,編號范圍為0~99。TBL表格的首地址,用以指明被訪問的表格;PTN是用來描述查表條件時進行比較的數(shù)據(jù);CMD是比較運算符“?”的編碼,它是一個1~4的數(shù)值,分別代表=、<>、<和>運算符;INDX用來指定表中符合查找條件的數(shù)據(jù)的地址。為了查找下一個符合條件的數(shù)據(jù),在激活查表指令前,必須先對INDX加1。如果沒有發(fā)現(xiàn)符合條件的數(shù)據(jù),那么INDX等于EC。第51頁,共94頁,2023年,2月20日,星期一用FND指令查找由指令ATT、LIFO和FIFO生成的表時,實際填表數(shù)(EC)和輸入數(shù)據(jù)個數(shù)相符,且一一對應。FND指令的操作數(shù)SRC是一個字地址(指向EC),比相應的ATT、LIFO或FIFO指令的操作數(shù)TABLE要高2個字節(jié)。表能存入數(shù)據(jù)的個數(shù)最大為100,不包括TL和EC兩個單元。如執(zhí)行程序出錯,則ENO=0。(SM4.3=1、間接尋址出錯、操作數(shù)超出定義范圍)第52頁,共94頁,2023年,2月20日,星期一第53頁,共94頁,2023年,2月20日,星期一第54頁,共94頁,2023年,2月20日,星期一第55頁,共94頁,2023年,2月20日,星期一5、存儲器填充指令存儲器填充指令(FILL)將輸入值為IN的N個字的內容連續(xù)填充到從輸出OUT開始的N個字的內容。N可取1-255之間的整數(shù)。指令格式:FILLIN,OUT,N第56頁,共94頁,2023年,2月20日,星期一
用來完成系統(tǒng)信息和數(shù)據(jù)的傳遞。包括網絡讀(NETR)與寫(NETW)指令、發(fā)送(XMT)與接受(RCV)指令、獲取口地置(GPA)與設定口地址(SPA)指令。4.7.3通信指令第57頁,共94頁,2023年,2月20日,星期一1、網絡讀、寫指令功能:NETR先對通信操作進行初始化,再通過PORT指定的端口從遠程設備上讀取數(shù)據(jù)并形成TBL。NETW從指定端口向遠處設備寫入數(shù)據(jù)??梢淮涡宰x或寫16個字節(jié)的信息。指令格式:NETRTBL,PORTNETWTBL,PORT操作數(shù)如下:TBL:VB、MB、*AC、*VD、*LDPORT:常數(shù)(1或0)同一時間內NETR和NETW指令的總條數(shù)不能超過8條,多余則無效。第58頁,共94頁,2023年,2月20日,星期一2、發(fā)送、接收命令PLC工作于自由端口模式時通過通信端口發(fā)送和接收數(shù)據(jù),一次可處理256個字節(jié)的信息。功能:XMT激活保存在發(fā)送數(shù)據(jù)緩沖區(qū)的數(shù)據(jù)并將其發(fā)送。RCV激活自由端口的初始化程序以接受數(shù)據(jù)。TBL中的第一個數(shù)據(jù)指明了要發(fā)送或接收的字節(jié)個數(shù),PORT指明了發(fā)送或接收數(shù)據(jù)的端口。指令格式:XMTTBL,PORTRCVTBL,PORT操作數(shù)TBL:VB、MB、QB、IB、SB、SMB、*AC、*VD、*LDPORT:常數(shù)(CPU221、222、224為0,CPU226為0或1)第59頁,共94頁,2023年,2月20日,星期一3、獲取口地址、設定口地址指令功能:GPA讀取PORT指定的CPU端口的站地址,并將其放入ADDR指定的地址單元。SPA將CPU端口的站地址PORT設置為ADDR指定的數(shù)值。指令格式:GPAADDR,PORTSPAADDR,PORT操作數(shù):ADDR:VB、MB、QB、IB、SB、SMB、LB、*AC、*VD、*LDPORT:常數(shù)第60頁,共94頁,2023年,2月20日,星期一幾個概念1、自由端口模式由用戶程序自行控制,SMB30(端口0)和SMB130(端口1)用于選擇波特率和奇偶校驗。CPU需處于RUN狀態(tài)。進入自由端口模式通過SM0.7設置,為0對應于TERM位置,為1對應于RUN位置。2、數(shù)據(jù)接收用接收指令(RCV)在接收到最后一個字符時產生中斷,由SMB86或SMB186控制,為0表示接收,為1表不啟動或接收結束。接收到的字符存在SMB2,奇偶狀態(tài)存在SMB3,校驗出錯時SMB3.0置位。3、數(shù)據(jù)發(fā)送可在發(fā)送完最后一個字符時產生中斷,或監(jiān)控SM4.5和SM4.6。把字符設置為0再執(zhí)行XMT,則在線上產生一16位的BREAK條件,當其完成后產生一個XMT中斷。第61頁,共94頁,2023年,2月20日,星期一4.7.4中斷指令1、中斷的概念S7-200PLC執(zhí)行程序時,由于CPU內部事件或外部事件發(fā)出請求信號,引起CPU中斷正在執(zhí)行的程序,轉而去執(zhí)行由中斷源指定的中斷服務子程序,執(zhí)行完中斷子程序之后,再返回被終止的主程序繼續(xù)執(zhí)行,這一過程被稱為中斷響應。中斷服務子程序入口由中斷服務子程序標號來區(qū)別。中斷服務子程序是由位于中斷服務子程序標號和無條件中斷返回指令之間的所有指令組成的一段程序。退出中斷服務子程序,要用無條件中斷返回指令RETI或條件中斷返回指令CRETI來實現(xiàn)。第62頁,共94頁,2023年,2月20日,星期一2、中斷源(1)中斷源及種類中斷事件發(fā)出中斷請求的來源。S7-200具有最多可達34個中斷源,每個中斷源都分配一個編號用以識別,稱為中斷事件號。分為三大類:通信口中斷、輸入輸出中斷和定時中斷。(2)中斷優(yōu)先級由高到低依次是:通信口中斷、輸入輸出中斷和定時中斷。每種中斷中的不同中斷事件又有不同的優(yōu)先權。通訊口中斷:PLC工作于自由端口模式。用戶可用程序定義波特率、每個字符位數(shù)、奇偶校驗和通訊協(xié)議。利用接收和發(fā)送中斷可簡化程序對通訊的控制。第63頁,共94頁,2023年,2月20日,星期一I/O中斷:對I/O點狀態(tài)的各種變化產生中斷事件。這些事件可以對高速計數(shù)器、脈沖輸出或輸入的上升或下降狀態(tài)做出響應。包含了上升沿或下降沿中斷、高速計數(shù)器中斷和脈沖串輸出(PTO)中斷。S7200CPU可用輸入I0.0至I0.3的上升沿或下降沿產生中斷。定時中斷:包括定時中斷0、定時中斷1和定時器T32/T96中斷。定時中斷0和定時中斷1以1ms為增量單位,周期時間可從1ms到255ms。對定時中斷0,必須把周期時間寫入SMB34;對定時中斷1,必須把周期時間寫入SMB35。每當定時器溢出時,定時中斷事件把控制權交給相應的中斷程序。通??捎枚〞r中斷以固定的時間間隔去控制模擬量輸入的采樣或者執(zhí)行一個PID回路。第64頁,共94頁,2023年,2月20日,星期一定時器T32/T96中斷允許及時地響應一個給定的時間間隔。這些中斷只支持1ms分辨率的延時接通定時器(TON)和延時斷開定時器(TOF)T32和T96。T32和T96定時器在其它方面工作正常。一旦中斷允許,當有效定時器的當前值等于預置值時,在CPU的正常1ms定時刷新中,執(zhí)行被連接的中斷程序。首先把一個中斷程序連接到T32/T96中斷事件上,然后允許該中斷。第65頁,共94頁,2023年,2月20日,星期一第66頁,共94頁,2023年,2月20日,星期一3、中斷優(yōu)先級和中斷隊列在指定的優(yōu)先級之內,CPU按先來先服務的原則處理中斷。任何時間點上,只有一個用戶中斷程序正在執(zhí)行。一旦中斷程序開始執(zhí)行,它要一直執(zhí)行到結束。而且不會被別的中斷程序,甚至是更高優(yōu)先級的中斷程序所打斷。當另一個中斷正在處理中,新出現(xiàn)的中斷需要排隊,等待處理。第67頁,共94頁,2023年,2月20日,星期一有時,可能由多于所能保存數(shù)目的中斷出現(xiàn),因而,由系統(tǒng)維護的隊列溢出存儲器位表明丟失的中斷事件的類型。中斷隊列溢出位如表所示。您應當只在中斷程序中使用這些位,因為在隊列變空或控制返回到主程序時,這些位會被復位。第68頁,共94頁,2023年,2月20日,星期一4、中斷指令
ATCH是中斷連接指令,將中斷事件EVNT與中斷服務程序號INT連接起來,即把中斷源和為其服務的中斷子程序對應起來,并允許這個中斷事件開放。中斷服務程序號INT是一個中斷服務子程序的標識,說明它是哪一個中斷服務子程序。中斷事件編號EVNT是CPU規(guī)定的中斷事件的編號,指出中斷源是哪個。第69頁,共94頁,2023年,2月20日,星期一DTCH中斷分離指令,斷開一個中斷事件EVNT與一個中斷服務子程序INT的連接。即使中斷源沒有相應的中斷服務子程序與其對應。該指令同時使這個中斷事件禁止。第70頁,共94頁,2023年,2月20日,星期一對中斷連接和分離指令的理解在激活一個中斷程序前,必須在中斷事件和該事件發(fā)生時希望執(zhí)行的那段程序間建立一種聯(lián)系。中斷連接指令(ATCH)指定某中斷事件(由中斷事件號指定)所要調用的程序段(由中斷程序號指定)。多個中斷事件可調用同一個中斷程序,但一個中斷事件不能同時指定調用多個中斷程序。當把中斷事件和中斷程序連接時,自動允許中斷。如果采用禁止全局中斷指令不響應所有中斷,每個中斷事件進行排隊,直到采用允許全局中斷指令重新允許中斷??梢杂弥袛喾蛛x指令(DTCH)截斷中斷事件和中斷程序之間的聯(lián)系,以單獨禁止中斷事件。中斷分離指令(DTCH)使中斷回到不激活或無效狀態(tài)。第71頁,共94頁,2023年,2月20日,星期一ENI開中斷指令,當CPU進入RUN狀態(tài)時,系統(tǒng)是禁止中斷的,但可以通過執(zhí)行ENI指令全局開放中斷,允許CPU響應中斷請求,執(zhí)行中斷服務程序。DISI關中斷指令,全局地禁止處理所有中斷事件。當CPU執(zhí)行關中斷指令DISI后,中斷排隊仍然會產生,但CPU不會響應中斷請求,不去執(zhí)行中斷服務程序。CRETI條件中斷返回指令,根據(jù)該指令前面的邏輯操作的條件,決定是否終止當前中斷程序的執(zhí)行,若滿足條件,則終止中斷服務子程序的執(zhí)行而返回主程序原處。RETI無條件中斷返回指令,在編程中沒有中斷服務子程序無條件返回指令,但它在執(zhí)行中斷服務程序時會自動將無條件返回指令加到每一個中斷服務子程序的結尾。第72頁,共94頁,2023年,2月20日,星期一限制:在中斷程序中不能使用DISI、ENI、HDEF、LSCR、END指令。累加器值不能在主程序和中斷服務子程序之間自由傳遞參數(shù)。系統(tǒng)對中斷的支持:由于中斷指令影響接點、線圈和累加器邏輯,所以系統(tǒng)保存和恢復邏輯堆棧,累加器以及指示累加器和指令操作狀態(tài)的特殊存儲器標志位SM。這避免了由中斷程序返回后對用戶主程序執(zhí)行現(xiàn)場所造成的破壞。在中斷程序中調用子程序:從中斷程序中可以調用一個嵌套子程序。累加器和邏輯堆棧在中斷程序和被調用的子程序中是公用的。第73頁,共94頁,2023年,2月20日,星期一第74頁,共94頁,2023年,2月20日,星期一第75頁,共94頁,2023年,2月20日,星期一第76頁,共94頁,2023年,2月20日,星期一4.7.5USS協(xié)議指令
通過USS協(xié)議指令能使S7-200控制MicroMaster變頻器和讀/寫變頻器參數(shù)。包括USS_INIT、READ_PM、WRITE_PM和CTRL四種指令。第77頁,共94頁,2023年,2月20日,星期一DiagramAddyourtextAddyourtextAddyourtextAddyourtextAddyourtextYourSloganhere第78頁,共94頁,2023年,2月20日,星期一DiagramThemeGallery
isaDesignDigitalContent&ContentsmalldevelopedbyGuildDesignInc.TitleAddyourtextThemeGallery
isaDesignDigitalContent&ContentsmalldevelopedbyGuildDesignInc.第79頁,共94頁,2023年,2月20日,星期一特點系統(tǒng)組合靈活功能強大抗干擾能力強現(xiàn)場信號簡單維護方便編程簡單基本、擴展、輔助第80頁,共94頁,2023年,2月20日,星期一DiagramConceptAddYourTextTextTextTextTextTextText第81頁,共94頁,2023年,2月20日,星期一DiagramAddYourTextAddYourTextAddYourTextAddYourTextAddYourTextAddYourTextAddYourTextAddYourText第82頁,共94頁,2023年,2月20日,星期一DiagramAddYourTextAddYou
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年中職工業(yè)機器人技術應用(機器人維護基礎)試題及答案
- 2026年廚房電器銷售(需求分析)試題及答案
- 2025年高職高聚物生產技術(高聚物生產應用)試題及答案
- 2025年中職煙草栽培與加工(煙草分級技術)試題及答案
- 近七年北京中考物理試題及答案2025
- 養(yǎng)老院老人康復設施維修人員晉升制度
- 養(yǎng)老院工作人員保密制度
- 信息技術合同與項目管理制度
- 工行合規(guī)培訓課件
- 2026年醫(yī)師內科學速記題庫含答案
- 天津市八校聯(lián)考2025屆高三上學期1月期末考試英語試卷(含答案無聽力原文及音頻)
- 2026屆遼寧省遼南協(xié)作校高一數(shù)學第一學期期末監(jiān)測試題含解析
- 2026瑞眾保險全國校園招聘參考筆試題庫及答案解析
- 2025年山東省棗莊市檢察院書記員考試題(附答案)
- 寒假安全教育課件模板
- 短視頻內容版權協(xié)議2025年執(zhí)行版
- 社區(qū)康養(yǎng)服務活動方案
- 2025年數(shù)字印刷可行性報告
- 畜禽屠宰加工工國家職業(yè)標準(征求意見稿)
- 電力通信安全培訓資料課件
- 上海國安面試題庫及答案
評論
0/150
提交評論