




版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
7.3.1S7-300PLC的系統組成S7-300PLC的硬件構成: CPU模塊 接口模塊(IM)
I/O模塊(SM) 功能模塊(FM) 電源模塊(PS) 導軌(RACK)等總線連接器電源模塊CPU模塊通信模塊I/O模塊DIN導軌模塊DIN導軌7.3.1.1CPU單元SIMATICS7-300有多種性能級別的CPU:⒈各種CPU均封裝在一個緊湊的塑料殼體內⒉CPU上集成有MPI多點接口,MPI接口可以使PLC與其它PLC站點、操作站(OS)、編程器(PG)、操作員面板(OP)等建立通信聯系,用MPI接口可以建立由多個站點組成的簡單網絡。⒊CPU31x–2還集成了PROFIBUS-DP接口,適用于大范圍分布式自動化結構。⒋PLC的執行速率、存儲器容量、可擴展的I/O點數等都隨著CPU序號的遞增而增加。
CPU單元—1CPUCPU312IFMCPU313CPU314CPU315-2DP工作存儲器6KB12KB24KB64KB內部裝載存儲器20KBRAM20KBEEPROM20KBRAM40KBRAM96KBRAM擴展裝載存儲器——4MFEPROM4MFEPROM4MFEPROMDI(最大)256+10(集成)25610241024(8192)DO(最大)256+6(集成)25610241024(8192)AI(最大)6464256256(512)AO(最大)3232128128(512)最大機架數(模塊數)1(8)1(8)4(32)4(32)CPU集成DP接口——————1CPU集成MPI接口√√√√7.3.1.2模擬量輸入模塊(SM331)模擬量值的表示方法
SM331的輸入測量范圍很寬,可直接輸入電壓、電流、電阻、mV等信號單極性電壓、電流輸入的數字化表示:
量程1~5V4~20mA150Ω十進制結果范圍5……120……4150……027648……0標稱范圍模擬量值的表示方法LPIW400 //從端口地址400讀入十進制轉換結果T#Dec_in //存入臨時變量Dec_inCALL"SCALE" //直接調用系統提供的轉換函數,以下是輸入輸出參數
IN:=#Dec_in //入口參數:十進制轉換結果
HI_LIM:=2.000000e+002 //入口參數:工程量上限200,單位kPaLO_LIM:=0.000000e+000 //入口參數:工程量下限0BIPOLAR:=FALSE //入口參數:TRUE為雙極性,FALSE為單極性
RET_VAL:=#ret //出口參數:返回值
OUT:=#In_result //出口參數:工程量轉換結果4~20mA1~5VDC0~10mA0~20mA……數字量0~27648-27648~27648AI模塊轉換程序工程量,如:0~200kPaOUT=[(IN-K1)/(K2-K1)*(HI_LIM-LO_HIM)]+LO_LIM上式中當BIPOLAR=TRUE時,K1=-27648,K=27648;BIPOLAR=FALSE時,K1=0,K=27648。
SM331模塊的硬件設置目前有2種規格型號:8通道×12位SM331模塊、2通道×12位SM331模塊。※
模擬量模塊裝有量程塊,調整量程塊的方位可改變模塊內部的硬件結構※SM331每兩個相鄰輸入通道共用一個量程塊,構成一個通道組。※
量程塊是一個正方體的短接塊,在上方有“A”,“B”,“C”,“D”四個標記※
不同的量程塊位置,適用于不同的測量方法和測量范圍。ch0、1ch2、3量程塊上的標記模塊上的標記SM331模塊的硬件設置SM331量程塊設置對應關系:設置標記對應的測量方式及范圍缺省設置A電壓:
1000mV電阻:150Ω、300Ω、600Ω、Pt100、Ni100熱電偶:N、E、J、K等各型熱電偶電壓:
1000mVB電壓:
10V電壓:
10VC電流:
20mA(4線制變送器輸出)電流:4~20mA(4線制)D電流:4~20mA(2線制變送器輸出)電流:4~20mA(2線制)SM331模塊的軟件設置通道組診斷斷線檢查信號類型信號范圍積分時間設置上下限設置診斷中斷允許限幅中斷允許通道組SM331模塊的信號連接電壓信號電流信號二線制電流四線制電流毫伏信號電阻信號輸入信號類型:電壓信號連接L+MM-M+M+M-ADC光隔MANA背板總線電流信號連接L+MM-M+M+M-ADC光隔MANA背板總線4線制變送器4線制變送器L+ML+M圖7-22四線制電流信號輸入的連接L+MM-M+M+M-ADC光隔MANA背板總線2線制變送器2線制變送器圖7-23二線制電流信號輸入的連接區別??毫伏信號連接一般什么儀表輸出mV信號?該儀表在使用時需要注意什么?熱電偶冷端溫度補償L+MM-M+M+M-ADC光隔背板總線補償盒COMP+COMP-/MANAL+M補償導線參考點圖7-24外部補償熱電偶信號輸入的連接接L+MM-M+M+M-ADC光隔背板總線COMP+COMP-/MANA補償導線圖7-25內部補償熱電偶信號輸入的連接電阻信號連接一般什么儀表輸出Ω信號?該儀表在使用時需要注意什么?熱電阻如何克服引線電阻L+MM-M+IC+IC-ADC光隔背板總線MANAIrefRt+-Vi圖7-26電阻信號輸入的連接7.3.1.3模擬量輸出模塊(SM332)模擬量值的表示方法
單極性輸出雙極性輸出輸出信號標稱范圍十進制結果輸出信號標稱范圍十進制結果0~20mA4~20mA0~10V1~5V±10V±20mA20.000……020.000……4.00010.000……05.0000……1.000027648……010.0000……-10.000020.000……-20.00027648……-27648SM332模塊可以輸出電壓和電流兩種類型的信號,從表7.8中可以看出,一個模擬量信號的輸出,需要把浮點數轉換成0~27648或者-27648~27648范圍的十進制結果,然后再根據端口地址把十進制結果送到輸出緩沖區。
模擬量值的表示方法CALL"UNSCALE" //直接調用系統提供的轉換函數,以下是輸入輸出參數
IN:=#Out_val //入口參數:閥位值0~100%浮點數
HI_LIM:=1.000000e+002 //入口參數:閥位上限100LO_LIM:=0.000000e+000 //入口參數:閥位下限0BIPOLAR:=FALSE //入口參數:TRUE為雙極性輸出,FALSE單極性輸出
RET_VAL:=#ret //出口參數:返回值
OUT:=#Out_result //出口參數:十進制轉換結果存入臨時變量
L#Out_resultTPQW416 //十進制轉換結果輸出到過程輸出緩沖區AO模塊4~20mA0~10VDC0~20mA……單:0~27648雙:-27648~27648轉換程序閥位如:0~100%OUT=[(IN-LI_MIL)/(HI_LIM-LO_MIL)*(K2-K1)]+K1其中,當BIPOLAR=TRUE時,K1=-27648、K=27648BIPOLAR=FALSE時,K1=0、K=27648SM332模塊的軟件設置SM332有2×12位、4×12位二種AO模塊,其特性、參數、工作原理等完全相同。通道診斷信號類型I、V信號范圍0~20mA4~20mACPU停止時輸出保持診斷中斷允許CPU停止時輸出為0電壓輸出范圍SM332模塊的信號連接電壓信號電流信號輸出信號類型:信號輸出的連接示意圖光耦隔離DACQI0MANAQV0MANAS0+S0-電流電壓電流信號的輸出負載I0DAC光隔電壓信號的輸出負載-V0+DAC光隔負載-V0+DAC光隔區別??7.3.1.4開關量輸入模塊(SM321)開關量輸入模塊SM321主要有直流信號輸入和交流信號輸入二大類SM321開關量輸入模塊16×24VDC32×24VDC16×120VAC8×120/230VAC輸入點數1632168輸入電壓“1”15~30VDC15~30VDC79~132VAC79~264VAC“0”-3~5VDC-3~5VDC0~20VAC0~40VAC與背板總線的隔離光耦光耦光耦光耦“1”信號典型輸入電流7mA7.5mA6mA6.5mA/11mA典型輸入延遲時間1.2~4.8ms1.2~4.8ms25ms25ms診斷中斷某些型號具備——————絕緣耐壓測試500VDC500VDC1500VAC1500VAC7.3.1.5開關量輸出模塊(SM322)SM322模塊有晶體管、可控硅和繼電器3種輸出類型SM322開關量輸出模塊晶體管輸出可控硅輸出繼電器輸出輸出點數81632816816額定電壓24VDC120/230VAC120VAC230VAC/24VDC“1”信號最大輸出電流2A0.5A0.5A1A0.5A——“0”信號最大輸出電流0.5mA2mA1mA——與背板總線的隔離光耦光耦光耦觸點容量————2A阻性負載100Hz10Hz2Hz觸點開關頻率感性負載0.5Hz0.5Hz0.5Hz燈負載100Hz1Hz2Hz診斷——LED指示——絕緣耐壓測試500VDC1500VAC1500VAC7.3.2系統配置※S7系列PLC采用的是模塊化的結構形式,根據系統規模用戶可選擇不同型號和不同數量的模塊,并把這些模塊安裝在一個或多個機架上。※除了CPU模塊、電源模塊、通信接口模塊之外,它規定每一個機架最多可以安裝8個I/O信號模塊。※一個PLC系統的最大配置能力(包括I/O點數、機架數等)與CPU的型號直接相關總線連接器電源模塊CPU模塊通信模塊I/O模塊DIN導軌模塊DIN導軌7.3.2系統配置某系統需要輸入48路4~20mA4路PT100信號需要輸出32路1~5V要求配置S7PLC的I/O模塊并選擇合適的CPU單元每路4~20mA占用1個A/D通道→需48個A/D通道每路電阻輸入信號占2個A/D通道→需8個A/D通道需7塊8通道SM331每路1~5V占用1個D/A通道→需32個D/A通道需8塊4通道SM332該系統需要15個SM模塊,必須安裝到2的機架,根據表7.1中的性能參數,該系統可以選用CPU315或CPU315以上的型號。7.3.2.1硬件結構配置
※PLC模塊的安裝是有順序要求的,每個機架從左到右劃分為11個邏輯槽號※電源模塊安裝在最左邊的1#槽,2#槽安裝CPU模塊,3#槽安裝通信接口模塊,4~11#槽可自由分配I/O信號模塊、功能模塊或擴展通信模塊。※需要注意的是,槽號是相對的,機架上并不存在物理上的槽位限制。電源模塊CPU模塊通信模塊I/O模塊1234567891011邏輯槽號機架的連接(一)如果:機架數量≤4and各機架安裝在控制室
and機架之間的距離≤10米方式一:信號、功能模塊信號、功能模塊1345678910111345678910112擴展機架(ER)中央機架(CR)接口模塊:IM360(IM365)CPU槽位號接口模塊:IM361(IM365)機架的連接(二)如果:機架數量>4or有機架要安裝在現場
or機架之間的距離>10米要求:CPU上集成DP口或在CR上擴展DP口(Profibus-DP)方式二:信號、功能模塊1345678910112CR:安裝在控制室接口模塊:IM153信號、功能模塊134567891011ER:可以安裝在現場Profibus總線(最大擴展能力與CPU的型號有關)……連接到DP口7.3.2.2硬件地址配置
系統的I/O模塊分為:模擬量和數字量二種類型,每個模塊包含若干個通道。模塊上任何通道均配置獨立的地址,應用程序則根據地址實現對他們的操作。每個通道的地址占用一位(bit),數字量模塊最大為32通道,模塊地址占4字節§數字量I/O模塊每個模擬量地址為一個字地址(2byte),模擬量模塊最大為8通道,模擬地址占16byte§模擬量I/O模塊I/O地址的生成I/O地址的生成在硬件配置時,系統提供缺省地址(推薦使用)手動更改(部分CPU提供這種功能)DI/DO模塊缺省地址配置IM3600.0~3.74.0~7.78.0~11.712.0~15.716.0~19.720.0~23.724.0~27.728.0~31.7CRIM36132.0~35.736.0~39.7…………60.0~63.7IM36164.0~67.7…………92.0~95.7IM36196.0~99.7…………124.0~127.7ER3ER2EI/AO模塊缺省地址配置
IM360256~271272~287288~303304~319320~335336~351352~367368~383CRIM361384~399400~415…………496~511IM361512~527…………624~639IM361640~655…………752~767ER3ER2E省地址配置示例IM360SM32132CHSM3318CHCRIM361SM32216CHSM3324CHER1SM321缺省地址:SM331缺省地址:SM322缺省地址:SM332缺省地址:0.0~3.7272~28732.0~33.7(34.0~35.7空)400~407(408~415空)PLC系統開發的基本流程根據工藝要求,確定I/O參數數量依據工藝流程圖硬件選型:CPU、IO、通信接口、電源……確定硬件結構1.進入Step72-1.硬件配置2-2.地址配置:網絡地址
IO端口地址3.軟件編程(針對工藝要求)控制柜設計(機架分配、布置)硬件安裝PLC系統及端子的布置與接線(成套)現場儀表的連接(現場實施的開始)OfflineOffline模擬測試聯機調試、投運STEP7示例7.3.2.3內部寄存器
S7CPU的寄存器有(7個):累加器32位累加器1(A1)主累加器2(A2)輔2個32位累加器***地址寄存器32位地址寄存器1(AR1)地址寄存器2(AR2)2個32位地址寄存器**數據塊地址寄存器32位共享數據塊背景數據塊2個32位數據塊地址寄存器狀態字寄存器16位狀態位1個16位狀態字寄存器*
7.3.2.4存儲區
S7-300CPU有三個基本存儲區:外設I/O存儲區P輸出(映像區)Q輸入(映像區)I位存儲區M定時器T計數器C系統存儲區――存放操作數據(I/O、位存儲、定時器等)物理上是CPU的部分RAM,存儲區的大小因CPU型號而異。臨時本地數據存儲區(L堆棧)可執行用戶程序:·邏輯塊(OB、FB、FC)·數據塊(DB)工作存儲區――①存放CPU運行時,所執行的用戶程序單元邏輯塊(OB、FB、FC)、數據塊(DB)的復制件;②存放臨時本地數據,這部分存儲區稱L堆棧(主要是存放用戶程序的臨時變量)物理上是CPU模塊的部分RAM可選裝載存儲區:存放用戶程序動態裝載存儲區:存放用戶程序裝載存儲區――存放用戶程序物理上是CPU的部分RAM、EEPROM、外置FEPROM等★★★★★存儲區
CPU能訪問的存儲區:P、Q、I、M、T、C、DB塊、L堆棧
名稱存儲區存儲區功能輸入(I)過程輸入映像表每個掃描周期開始,讀取過程輸入值,記錄輸入映像表過程輸入映像表是外設輸入存儲區的前128字節映像訪問方式:位、字節、字、雙字輸出(O)過程輸出映像表掃描周期結束(或新掃描周期開始)表內容
輸出端口輸出映像表是外設輸出存儲區的前128字節映像訪問方式:位、字節、字、雙字外設輸入(PI)外設輸出(PO)外設輸入/輸出外設存儲區允許直接訪問現場設備訪問方式:字節、字、雙字(不能訪問位)位存儲區(M)存放程序運行的中間結果,訪問方式:位、字節、字、雙字定時器(T)定時器計時時鐘訪問該存儲區中的計時單元定時器指令可以訪問該存儲區和計時單元計數器(C)計數器計數器指令可以訪問該存儲區臨時本地數據存儲區(L)L堆棧在FB、FC、OB塊運行時,在塊變量聲明表中暫時變量存放在該存儲區。數據塊(DB)數據塊DB塊存放數據信息,可被所有邏輯塊訪問(共享數據塊)或被FB塊特定占用(背景數據塊)外設I/O與存儲區的映像
外設I/O與存儲區有二種映射關系:①外設輸入輸出存儲區(PI、PQ)
②輸入輸出映像表(I、Q)外設輸入輸出存儲區:包括外設輸入(PI)和外設輸出(PQ)其最大尋址范圍為64KB
訪問方式有:PIB、PQB、PIW、PQW、PID等。
CPU利用外設(P)存儲區直接讀寫總線上的數據輸入輸出映像表:包括輸入過程映像表(I)和輸出過程映像表(Q)◎輸入映像表為128Byte,是對PI首128Byte的映像,在循環掃描中讀取輸入狀態時將外設輸入存儲區(PI)首128Byte裝入◎輸出映像表為128Byte,是對PQ的首128Byte的映像在CPU循環掃描更新輸出狀態時,將輸出映像表的值傳送到物理輸出,在寫輸出時可以將數據直接通過PQ輸出,也可以將數據傳送到Q口輸出,輸入映像
結合缺省地址配置示例物理模塊配置地址外設輸入存儲區輸入映像區用戶程序32CHDICR0SOLT40I0I0裝載輸入映像區0字節IB0I0.51I1I12I、3I……28CHAICR0SLOT50272I127I……273I……1274I272I127裝載外設輸入存儲區0字節PIB0275I273I2276I274I277I275I3278I276I279I277I裝載外設輸入存儲區PIW2724280I278I281I279I5282I280I283I281I6284I282I裝載外設輸入存儲區PIB280PIB281285I283I7286I……287I64K輸出映像結合缺省地址配置示例物理模塊配置地址外設輸出存儲區輸出映像區用戶程序16CHDOER1SOLT432Q…………裝載輸出映像區32byteQB32Q32.233Q32Q32……334CHAOER1SLOT50400Q127Q……401Q…………1402Q400Q127裝載外設輸出存儲區32字節PQB32403Q401Q2404Q402Q405Q403Q3406Q404Q407Q405Q裝載外設輸出存儲區PQW400406Q407Q…………………………64K7.3.3指令系統簡介SIMATICS7系列PLC用戶程序的開發軟件包:STEP7S7系列PLC的編程語言:LAD(梯形圖)、STL(語句表)*、
SCL(標準控制語言)、GRAPH(順序控制)、
HiGraPh(狀態圖)、CFC(連續功能圖)、
CforS7(C語言)等,用戶可以選擇一種語言編程,也可混合使用幾種語言編程。常用的編程語言:LAD(梯形圖)、STL(語句表)*適用于模擬量的解算7.3.3.1
STL指令及其結構語句指令:操作碼操作數AI0.1//對輸入繼電器I0.1
進行與操作LMW10//將字MW10裝入累加器1定義要執行的功能執行該操作所需要的信息
有些語句指令不帶操作數,它們操作的對象是唯一的。
NOT//對邏輯操作結果(RLO)取反。(1)語句指令的組成操作數操作數:標識符
標識參數AI0.1
LMW10表示操作數在該存儲區域內的具體位置主標識符:表示操作數所在的存儲區主要有:I(輸入映像區),Q(輸出映像區),M(位存儲區),PI(外部輸入),PQ(外部輸出),T(定時器),C(計數器),DB(數據塊),L(本地數據)等輔助標識符進一步說明操作數的位數長度包括有:X(位),B(字節),
W(字——2字節),
D(雙字——4字節)
表示操作數存放區域及操作數位數(位、字節、字等)7654321010.710.610.510.410.310.210.110.0MB10MB11MB12MB13MB14M10.3MW10MD10位存儲區的操作數表示方式
存儲區及其操作數表示方法存儲區域位字節字雙字輸入映像區(I)√I√IB√IW√ID輸出映像區(Q)√Q√QB√QW√QD位存儲區(M)√M√MB√MW√MD外部輸入存儲區(PI)√PIB√PIW√PID外部輸出存儲區(PQ)√PQB√PQW√PQD數據塊(用“OPNDB”打開)√DBX√DBB√DBW√DBD數據塊(用“OPNDI”打開)√DIX√DIB√DIW√DID臨時堆棧(L)√L√LB√LW√LD存儲區最大尋址范圍存儲區域位字節字雙字輸入/輸出映像區65535.7655356553465532位存儲區(M)255.7255254252外部輸入/輸出存儲區655356553465532數據塊(DB、DI)65535.7655356553465532臨時堆棧65535.7655356553465532定時器(T)255計數器(C)2557.3.3.2尋址方式操作數——指令的操作或運算對象尋址方式——指令得到操作數的方式。表示方式┳━━絕對尋址┗━━符號尋址(用一個符號指定一個特定的絕對地址)尋址方式┳━━立即尋址┣━━存儲器直接尋址┣━━存儲器間接尋址┗━━寄存器間接尋址
立即尋址
SET //把RLO(ResultofLogicOperation)置“1”L27 //把整數27裝人累加器1LC#0100 //把BCD碼常數0100裝入累加器1立即尋址:對常數或常量的尋址方式,操作數本身包含在指令中
直接尋址AI0.0 //對輸入位I0.0進行“與”邏輯操作
SL20.0 //把本地數據位L20.0置1=M115.4 //將RLO的內容傳給位存儲區中的位M115.4LDB1.DBD12 //把數據塊DB1雙字DBD12中的內容傳送給累加器1 //雙字表示32位,如浮點數為32為雙字直接尋址:在指令中直接給出操作數的存儲單元地址
存儲器間接尋址存儲器間接尋址:標識參數由一個存儲器給出,存儲器的內容對應該標識參數的值(該值又稱為地址指針)
這種尋址方式能動態改變操作數存儲器的地址,常用于程序循環過程中的尋址。
AI[MD2] //對由MD2指出的輸入位進行“與”邏輯操作,如:MD2值為
//2#00000000000000000000000001010110表示I10.6LIB[DID4] //將由雙字DID4指出的輸入字節裝入累加器1,如:DID4值為
//2#00000000000000000000000001010000表示對IB10操作OPNDB[MW2]//打開由字MW2指出的數據塊,如MW2為3,則打開DB3地址表述——標識參數:1.2——標識參數:3——標識參數:12AI1.2LMB3LMD12直接尋址——DB1.DBD0=1.2——MD16=3——MW20=12字地址指針的描述:MW2015870XXXXXXXXXXXXXXXX表示0~65535存儲器間接尋址AI[DB1.DBD0]LMB[MD16]LMD[MW20]地址表述雙字地址指針的描述:MD16、DB1.DBD03124231615870XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX0000000000000bbbbbbbbbbbbbbbbxxx
字節編號位編號00000000000000000000000000001010—1.20000000000000000000000000000101000000000000000000000000001100000—1200000000000000000000000001100000可描述范圍:0.0~65535.7用雙字格式訪問字節、字、雙字存儲器,必須保證位編號為0。實例L+5 //將整數+5裝入累加器1TMW0 //將累加器1的內容傳送給存儲字MW0,此時MW0內容為5OPNDB[MW0] //打開由MW0指出的數據塊,即打開數據塊5(DB5)LP#8.7 //將地址指針2#00000000000000000000000001000111裝入A1TMD2 //將累加器1的內容P#8.7傳送給位存儲區中的MD2LP#4.0 //將2#00000000000000000000000000100000裝入A1
累加器1原內容P#8.7被裝入累加器2+I //將累加器1和累加器2內容整數相加,在累加器1中得到的“和”為
2#00000000000000000000000001100111(P#12.7)TMD6 //將累加器1的當前內容傳送MD6(12.7)A I[MD2] //對輸入位I8.7進行“與”邏輯操作,結果存放在RLO中= Q[MD6] //將RLO賦值給輸出位Q12.7
寄存器間接尋址寄存器間接尋址:在S7中有兩個地址寄存器(AR1和AR2) 地址寄存器的內容+偏移量=地址指針L P#8.6 //將P#8.6裝入A1LAR1 //將累加器1的內容傳送至地址寄存器1L P#10.0 //將P#10.0裝入A1LAR2 //將累加器1的內容傳送至地址寄存器2A I[AR1,P#1.0] //AR1+偏移量(9.6)= Q[AR2,P#4.1] //AR2+偏移量(14.1)這是區域內寄存器間接尋址——指令中給出存儲區域標識L P#I8.6 //將指向I8.6的地址指針裝入A1LAR1 //將累加器1的內容傳送至地址寄存器1L P#Q10.0 //將指向Q8.6的地址指針裝入A1LAR2 //將累加器1的內容傳送至地址寄存器2A [AR1,P#1.0] //AR1+偏移量(9.6)= [AR1,P#4.1] //AR1+偏移量(14.1)這是區域間寄存器間接尋址——指令中部需要給出存儲區域標識存儲區域的信息包含在地址指針中存儲器地址指針的描述3124231615870XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXz0000rrr00000bbbbbbbbbbbbbbbbxxx
字節編號位編號0:區域內寄存器間接尋址1:區域間寄存器間接尋址存儲區域標識符P.255存儲器地址指針的描述3124231615870XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXz0000rrr00000bbbbbbbbbbbbbbbbxxx
字節編號位編號00000000000000000000000001000110—P#8.610000001000000000000000001000110—P#I8.610000010000000000000000001000110—P#Q8.6實例1 L P#0.0 LAR1 L P#10.0 LAR2 L 64n1: T#loopjsq OPNDB1 CLR AI[AR1,P#0.0] =DBX[AR2,P#0.0] LP#0.1 +AR1 +AR2 L#loopjsq LOOPn1作用:把地址為0.0開始的64個開關量輸入信號采用循環方式逐個轉存到DB1,存放位置由DB1.DBX10.0開始的64個位。實例2 L P#256.0 LAR1 L P#200.0 LAR2 L 32n1: T#loopjsq OPNDB2 CLR LPIW[AR1,P#0.0] T#Tmp_In CALL"SCALE" IN:=#Dec_in HI_LIM:=2.000000e+002 LO_LIM:=0.000000e+000 BIPOLAR:=FALSE RET_VAL:=#ret OUT:=#In_result L #In_result T DBD[AR2,P#0.0] L P#2.0 +AR1 L P#4.0 +AR2 L#loopjsq LOOPn1作用:把地址為256.0開始的32個模擬量輸入信號采用循環方式逐個轉存到DB2,存放位置由DB2.DBD200開始的32個浮點數。7.3.3.3狀態·····BRCC1CC0OSOVORSTARLOFC首次檢測位
*邏輯操作結果*
狀態位
或位
溢出位
溢出狀態保持位
條件碼0
條件碼1
二進制結果位狀態字表示CPU執行指令時所具有的狀態,用戶程序可以訪問和檢測狀態字,并可以根據狀態字中的某些位決定程序的走向和進程。
首次檢測位(FC)位置:狀態字位“0”作用:首次檢測位FC決定了對其接點信號的存放位置。
在邏輯串指令執行過程中:若FC=0,表明一個梯形邏輯網絡的開始(或為首條邏輯串指令),CPU對操作數的檢測結果(首次檢測結果)直接保存在狀態字的RLO位中,FC位置1;若FC=1,檢測結果與RLO相運算,并把運算結果存于RLO清除:執行輸出指令(S、R、=)或與邏輯運算有關的轉移指令時FC被清0(表示邏輯串結束)
邏輯操作結果(RLO)
ResultofLogicOperation,
RLO位置:狀態字位“1”作用:存儲位邏輯指令或算術比較指令的結果。FC/RLO的變化示例語句表實際狀態檢測結果RLOFC說明0FC=0:下一條指令開始新邏輯串AI0.01111首次檢測結果存放RLO,FC置1ANI0.10111檢測結果與RLO運算,結果存RLO=Q1.010RLO賦值給Q1.0,FC清0RLO、FC的變化示例
I0.0I0.1Q1.07.3.3.4位邏輯運算指令PLC中的觸點包括常開觸點(動合觸點)和常閉觸點(動斷觸點)兩種形式。按照PLC的規定:
※常開觸點(動合觸點)用操作數“1”表示觸點“動作”,即認為觸點“閉合”,操作數“0”表示觸點“不動作”,即觸點斷開;
※常閉觸點(動斷觸點)的表示方式則相反。位邏輯運算指令主要包括“與”-A、“與非”-AN、“或”-O、“或非”-ON、“異或”-XOR、賦值-=、置位-S、復位-R指令及其它們的組合,用來描述觸點的狀態、決定觸點的動作或根據邏輯運算結果控制程序的進程。
⑴串聯邏輯·在PLC梯形圖中的串聯邏輯是用邏輯“與”和“與非”表示·常開觸點(動合觸點):若操作數是“1”,則常開觸點“動作”,即認為觸點“閉合”,若操作數是“0”,則常開觸點“不動作”,即觸點仍打開;·常閉觸點(動斷觸點):若操作數是“1”,則常閉觸點“動作”,即觸點“斷開”;若操作數是“0”,則常閉觸點“不動作”,即觸點保持閉合。·如果串聯回路里的所有觸點皆閉合,該回路就通“電”了圖中如果所有觸點閉合,即I0.0、I1.0為“1”,M2.1為“0”,則輸出Q4.0信號狀態就為“l”(繼電器觸點接通)
()I0.0I1.0M2.1Q4.0“1”“1”“0”“1”A、AN指令語句表實際狀態檢測結果RLOFC說明0下一條指令表示一新邏輯串的開始AI0.01111首次檢測結果
RLO,FC置1AI1.01111檢測結果與RLO“與”運算
RLOANM2.10111檢測結果與RLO“與”運算
RLO=Q4.010RLO
Q4.0,FC清0·對信號狀態進行“1”掃描,并做“與”運算,用助記符“A”來標識,當操作數的信號狀態是“1”時,其掃描結果是“l”。·對信號狀態進行“0”掃描,并做“與”運算,用助記符“AN”來標識取反的“與”邏輯操作當操作數的信號狀態是“0”時,其掃描結果是“1”。()I0.0I1.0M2.1Q4.0“1”“1”“0”“1”⑵并聯邏輯·在PLC梯形圖中的并聯觸點是用邏輯“或”和“或非”表示·在觸點并聯的情況下,若有一個或一個以上的觸點閉合,則該回路就“通電”。·圖中如果有一個觸點閉合(I0.0為“1”或Q1.0為“1”或M2.1為“0”)則Q1.2為“l”;·如果有三個觸點全部是打開的,則輸出Q1.2為“0”(繼電器觸點打開)。()I0.0Q4.0I1.0M2.1O、ON指令語句表實際狀態檢測結果RLOFC說明0以下是新邏輯串的開始OI0.00001首次檢測結果存放RLO,FC置1OI1.01111檢測結果與RLO運算,結果存RLOONM2.11011檢測結果與RLO運算,結果存RLO=Q4.010RLO賦值給Q4.0,FC清0·對進行“l”掃描,并做“或”運算,用助記符“O”來標識·對進行“0”掃描,并做“或”運算,用助記符“ON”來標識取反的“或”邏輯操作(或非)()I0.0Q4.0I1.0M2.1⑶串并聯的復合達式和先“與”后“或”
當邏輯串是串并聯的復合組合時,CPU的掃描順序是先“與”后“或”。
A( AI0.0 AI0.1 O ANI0.0 ANI0.1 )AI0.2=Q1.2()I0.0Q1.2I0.1I0.1I0.0I0.2
A( OI0.0 ONI0.0 )A( OI0.1 ONI0.1 )AI0.2=Q1.2()I0.0Q1.2I0.1I0.1I0.0I0.2⑷輸出指令(=)·該操作把狀態字中RLO的值賦給指定的操作數(位地址)·把首次檢測位(FC位)置0,來結束一個邏輯串·一個RLO可以驅動多個輸出元件·若RLO為“l”,則操作數被置位,否則操作數被復位。
AI0.0=Q1.2=Q1.3()I0.0Q1.2()Q1.3⑸置位/復位指令·置位/復位指令根據RLO的值,來決定被尋址位的信號狀態是否需要改變。·若RLO的值為1,被尋址位的信號狀態被置l或清0;·若RLO是0,則被尋址位的信號保持原狀態不變,·這一特性又被稱為靜態的置位/復位賦值輸出(=)被稱為動態賦值輸出。
指令格式指令示例說明S<位地址>SQ0.2RLO為1,則被尋址信號狀態置1,即使RLO又變為0,輸出仍保持為1;FC清0。R<位地址>RM1.2RLO為1,則被尋址信號狀態置0,即使RLO又變為0,輸出仍保持為0;FC清0。實例1SETR"fb6_db_09p50".startR"fb6_db_21p50".startR"fb6_db_21p01".startS"fb6_db_42p50".startS"fb6_db_43p50".startS"fb6_db_44p50".startA"SZ_DATA".precoat_overJCNn1 //RLO=0跳轉
R"SZ_DATA".fil_precoating1R"SZ_DATA".fil_precoating2S"SZ_DATA".fil_precoating3S"SZ_DATA".fil_precoating4……n1:……7.3.3.5數字操作運算指令⑴裝入和傳送指令⑵比較指令
⑶算術運算指令
⑷字邏輯運算指令
⑸移位和循環移位指令⑹其它操作指令
數字指令:按字節、字、雙字對存儲區訪問并對其進行運算的指令7.3.4程序結構
STEP7有二種編程方法:線性編程、結構化編程
線性編程——將整個用戶程序指令逐條編寫在一個連續的指令塊中, CPU線性地掃描每條指令(適用于簡單的控制任務)AI0.0AM1.0……BEU結構化編程**——適合編制并組織復雜的控制程序。
主程序函數(過程)1函數(過程)n……
結構化編程的“塊”STEP7C語言main()中斷函數OB1塊其它OB塊組織塊OB程序代碼功能塊DB塊全局變量數據數據塊SFB、SFC庫函數系統函數FC塊用戶定義函數FB塊類似于子程序/過程7.3.4.1數據塊
PLC可定義的數據類型:bool、byte、int、dint、real、date、time等基本數據類型,還可定義數組、結構等復式數據類型數據塊定義的原則:
·
先定義后訪問
·S7CPU允許在存儲器中建立不同大小的多個數據塊
·
不同的CPU對允許定義的數據塊數量及數據總量有限制 例如:CPU314允許定義用作數據塊的存儲器最多8KByte, 用戶定義的數據總量不能超過8K,否則將造成系統錯誤。
⑴數據塊定義
①用STEP7開發軟件包定義,使用前作為用戶程序的一部分下載到CPU②允許用戶程序運行過程中動態定義數據塊(調用系統函數)注意:如果定義的數據塊數量或數據總量超過限制,則動態定義過程失敗,可能導致系統崩潰,應慎重使用動態定義數據塊。有2種定義方式:
⑵數據塊訪問
·直接訪問,指令中寫明數據塊號、類型、位置
LDB1.DBD2//塊號——1,雙字,數據塊中2~5字節
ADB2.DBX0.2//塊號——2,位,0字節第2位
L“Temp”·T0//符號地址·
“先打開后訪問”
OPNDB1LDBD2//訪問DB1.DBD2OPNDI2TDBD4//訪問DI2.DBD4注:數據塊沒有專門的關閉指令,在打開一個塊時,先前打開的塊自動關閉因CPU只有DB和DI兩個數據塊地址寄存器,所以最多可同時打開兩個塊⑶背景數據塊和共享數據塊
·
數據塊可以是附屬與某個FB塊的背景數據塊,也可以是通用的共享數據塊·
背景數據塊是FB運行時的工作存儲區,調用FB時必須指定一個相關的背景數據塊,被調用的背景數據塊必須與FB所要求的格式相符,作為規則,只有FB塊才能訪問存放在背景數據塊中的數據。·
共享數據塊中的數據可以被任何FB,FC或OB塊進行讀寫訪問·
數據塊在CPU的存儲器中是沒有區別的,只是由于打開方式不同,才在打開時有背景數據塊和共享數據塊之分。原則上,數據塊都可以當作共享數據塊或背景數據塊使用。7.3.4.2邏輯功能塊
S7PLC程序在采用結構化編程中,一個程序由許多邏輯功能塊(子程序)組成,這些邏輯功能塊允許相互調用。調用塊可以是任何邏輯塊(OB、FB、FC),被調用塊只能是功能塊(除OB外的邏輯塊FB、FC、SFB、SFC)。
用戶調用指令程序調用塊(OB、FB、FC)FBFCSFBSFC被調用塊OB塊不可以被調用⑴變量聲明表(局部數據)
功能塊由兩個主要部分組成:一是變量聲明表;二是指令程序FC功能塊_FB功能塊_FB塊的變量聲明表FC塊的變量聲明表臨時變量僅在邏輯塊運行時有效,邏輯塊結束時存儲臨時變量的內存被操作系統另行分配。變量聲明表中的變量類型inoutin_out實現調用塊和被調用塊間的數據傳遞。實參在調用功能塊時給出,實參的數據類型必須與形參一致。stat靜態變量定義在背景數據塊中,當被調用塊運行時,能讀出或修改靜態變量;被調用塊運行結束后,靜態變量保留在背景數據塊中。temp_FB功能塊有一個數據塊附屬于該功能塊,并隨功能塊的調用而打開,功能塊的結束而關閉,該數據塊稱背景數據塊(InstanceDataBlock)1.背景數據塊的數據結構與FB塊的變量聲明表(除臨時變量)完全相同2.為變量聲明表中聲明的in、out、in_out和stat4種類型局部數據分配的存儲空間是背景數據塊,當FB結束時背景塊中的數據繼續保存“記憶”3.為臨時變量分配存儲空間的是L堆棧。CALLFB4,DB33a1:=a2:=b1:=c1:=FB塊的調用:FB塊與背景塊的關系_FC功能塊沒有背景數據塊,因此不能使用靜態變量,在變量聲明表中可以聲明包括in、out、in_out和temp4種類型局部數據CALLFC1a1:=a2:=b1:=c1:=FC塊的調用:1.操作系統在L堆棧中給FC的臨時變量分配存儲空間2.FC塊的參數表中的各參數在塊操作結束前應被使用(或存放到特定位置),否則它們將不會被自動保存。⑵功能塊調用的內存分配
當發生塊調用或更高優先級的中斷時,CPU提供塊堆棧(B堆棧)來保存被中斷塊的有關信息:塊號,塊類型,優先級,被中斷塊的返回地址……
★S7CPU中可使用的B堆棧大小是有限制的,對于S7300CPU可在B堆棧中存儲8個塊的信息,因此在控制程序中最多可同時激活8個塊。7.3.4.3組織塊及中斷優先級
S7提供了各種不同的組織塊(OB),這些組織塊允許用戶創建在特定時間或對特定事件響應的程序,這些OB可分為四種:主循環塊OB1(任何時候都需要)硬件中斷塊(響應一個來自I/O模塊的信號)同步響應塊(響應一個來自程序中指令的錯誤)異步響應塊(響應CPU操作或模塊狀態異常)1.CPU中的這些組織塊分有優先級2.OB1是主循環塊,任何S7PLC系統都需要OB1,所以OB1被分配為最低優先級
—
OB塊說明優先級OB1主循環r★★
基本組織塊,循環掃描1(最低)OB10時間中斷根據設置的日期、時間定時啟動2OB20延時中斷受SFC22控制啟動后延時特定時間允許3OB35循環中斷★★
根據特定的時間間隔允許12OB40硬件中斷檢測到外部模塊的中斷請求時允許16OB80~0B87異步錯誤中斷★
檢測到模塊診斷錯誤或超時錯誤時啟動26OB100啟動★
當CPU從STOP狀態到RUN狀態時啟動27部分OB塊的優先級:⑴中斷過程
CPU只有有限的L堆找空間供程序使用,如:CPU314的L堆棧為1536Byte,供程序中的所有優先級劃分使用。對于CPU314,允許每個優先級使用256Byte,所以在嵌套調用中所有激活塊的臨時變量所占空間總數不能超過256Byte。由于操作系統已為每個OB聲明了20Byte的L堆棧,該優先級下其它被調用塊的所有臨時變量必須小于236Byte。當調用一個新塊,新塊的臨時變量在L堆棧中生成,在多層嵌套調用時,若臨時變量定義不當,L堆棧會溢出,導致CPU有RUN模式變為STOP模式。OB35使用20字節L堆棧功能塊或系統功能塊L堆棧≤256字節L堆棧≤256字節總共1536字節OB1使用20字節L堆棧背景數據塊優先級26功能塊或系統功能塊功能塊或系統功能塊背景數據塊⑵兩個常用組織塊(a)主循環塊(OB1)※OB1是最重要的組織塊,當PLC從STOP狀態切換到RUN狀態后,CPU首先調用OB100一次,OB100調用結束后,操作系統開始周而復始地調用OB1,這稱為掃描循環。※調用OB1的時間間隔稱為掃描周期,掃描周期的長短,主要由OBI中的程序執行所需時間決定。※為防止程序陷入死循環,S7設有看門狗定時器(WDT),WDT的定時間隔(可以設置)確定了主循環的最長時間。正常情況下,掃描周期小于該時間,如果掃描周期大于設定主程序最大允許循環行時間,操作系統調用OB80(循環時間超時),若OB80中未編寫程序,CPU將轉入停止(STOP)狀態。OB100OB1OB80STOP_S7-300PLC允許設計一個以固定間隔運行的定時中斷組織塊OB35,定時時間間隔可以在lms~lmin的范圍內設置,當允許循環中斷時,OB35以固定的間隔循環運行,但要求確保設置的定時時間間隔大于OB35的執行時間,否則將造成系統異常,操作系統將調用異步錯誤OB80。(b)循環中斷(OB35)
7.3.4.4邏輯塊的調用關系
操作系統
OB1FB、SFB共享DB背景DBFC、SFC共享DB共享DBFC、SFCOB35、OB10、OB20……7.3.5S7PLC的網絡通信
現代計算機控制系統已不再是自動化的“孤島”,而是集過程控制、生產管理、網絡通信、IT技術等為一體的綜合自動化系統,系統最主要的結構特征表現為一個多層次的網絡體系。S7PLC的網絡功能很強,它可以適應不同控制需要的網絡體系,也為各個網絡層次提供互聯模塊或接口裝置,通過通信子網把PLC、PG、PC、OP及其它控制設備互聯起來。S7PLC可以提供:MPI——MultipointInterface PROFIBUS-DP IndustrialEthernet這3種通信方式都有各自的技術特點和不同的適應面。對象1RIOURIOU對象nRIOURIOUPLCCRProfibus-DP總線
通信子網特征
MPIPROFIBUSIndustrialEthernet工業以太網
標準
SIEMENSEN50170Vol.2IEEE802.3介質訪問技術
令牌環令令牌環+主從式
CSMA/CD傳輸速率
187.5Kbps9.6Kbps~12Mbps10Mbps/100Mbps常用傳輸介質
屏蔽2芯電纜塑料光纖玻璃光纖
屏蔽2芯電纜塑料光纖玻璃光纖
屏蔽雙絞線屏蔽同軸電纜玻璃光纖最大站點數
32127>1000拓撲結構
總線型、樹型、星型、環型通信服務
S7函數、GDS7函數、DP、FDL等
S7函數、TCP/IP等
適用范圍
現場設備層、控制單元層
控制層、管理層
PLC與上位機(操作站)之間的通信MPI通信※MPI子網的物理層符合RS485標準,它具有多點通信的性質,是一種低成本的網絡系統,用于連接多個不同的CPU或設備。※多數SIMATIC產品都集成有MPI接口,它們可以直接組網,實現網上各PLC間的數據共享。
※采用專用的通信處理器模塊或通信接口板可以把S5PLC、PC以及其它沒有MPI接口的外設連接到MPI網上。
圖7.45MPI子網示意圖OS*S7300S7400PGOPMPIMPI通信接入到MPI網的設備稱為一個站點或節點,一個MPI網最多允許連接32個網絡站點,它的傳輸速率是187.5Kbps,因此,MPI子網主要適用于站點數不多、數據傳輸量不大的應用場合。
對于MPI網絡,節點間的連接距離是有限制的,從第一個節點到最后一個節點最長距離僅為50m。對于
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 滑板公園行業跨境出海項目商業計劃書
- 電子競技俱樂部企業制定與實施新質生產力項目商業計劃書
- 官方合作伙伴招募行業深度調研及發展項目商業計劃書
- 沙漠生態旅游環保設施行業跨境出海項目商業計劃書
- 智能溫控冷鏈物流泡沫箱企業制定與實施新質生產力項目商業計劃書
- 高速公路項目可行性研究報告
- 城區集中供熱項目可行性研究報告
- 膀胱結石考試試題及答案
- 中學班主任工作室計劃-心理健康輔導
- 幼兒園中班秋季自然探索活動計劃
- 2025年基金與投資管理考試試卷及答案
- 書畫培訓合作合同范本
- 2025年河北省中考乾坤押題卷物理試卷B及答案
- Starlink低軌衛星通信星座深度分析
- 江蘇省無錫市2023年中考物理試題(含答案)
- 2023年廣東初中學業水平考試生物試卷真題(含答案)
- GB/T 7759.2-2014硫化橡膠或熱塑性橡膠壓縮永久變形的測定第2部分:在低溫條件下
- 2023年中原農業保險股份有限公司招聘筆試題庫及答案解析
- GB/T 24782-2009持久性、生物累積性和毒性物質及高持久性和高生物累積性物質的判定方法
- 微創冠狀動脈搭橋手術方法及圍術期處理原則微創冠脈搭橋進展課件
- 住院患者出院后的隨訪與指導流程圖
評論
0/150
提交評論