S7-200的接口模塊
S7-200的接口模塊主要有數(shù)字量I/O模塊、模擬量I/O模塊和通信模塊。下面分別介紹這些模塊。
(一)數(shù)字量I/O模塊
數(shù)字量I/O模塊是為了解決本機(jī)集成的數(shù)字量輸入/輸出點(diǎn)不能滿足需要而使用的擴(kuò)展模塊。S7-200PLC目前總共可以提供3大類,共9種數(shù)字量I/O模塊。
1.EM221數(shù)字量輸入擴(kuò)展模塊
8DI,DC24V(直流輸入)
2.EM222數(shù)字量輸出擴(kuò)展模塊
8DO,DC24V(直流輸出)
8DO,Relay(DC24V/ AC24~230V)(繼電器輸出)
3.EM223數(shù)字量混合模塊
4DI(DC24V),4DO(DC24V/2A)
4DI(DC24V),4DO(Relay 2A)
8DI(DC24V),8DO(DC24V/2A)
8DI(DC24V),8DO(Relay 2A)
16DI(DC24V),16DO(Relay 2A)
16DI(DC24V),16DO(DC24V/2A)
(二)模擬量I/O模塊
模擬量I/O模塊提供了模擬量輸入和模擬量輸出的擴(kuò)展功能。S7-200的模擬量擴(kuò)展模塊具有較大的適應(yīng)性、可以直接與傳感器相連,并有很大的靈活性,且安裝方便。
1.EM231模擬量輸入模塊
4AI(電壓或電流)輸入信號(hào)的范圍由SW1、SW2和SW3設(shè)定。
2.EM232模擬量輸出模塊
2AO(電壓或電流)
3.EM235模擬量混合模塊
4AI(電壓或電流),量程由SW1~SW6設(shè)定
1AO(電壓或電流)
(三)通信模塊
S7-200系列PLC除了CPU226本機(jī)集成了兩個(gè)通信口以外,其他均在其內(nèi)部集成了一個(gè)通信口,通信口采用了RS-485總線。此外,各PLC還可以接入通信模塊,以擴(kuò)大其接口的數(shù)量和聯(lián)網(wǎng)能力。
1.EM277模塊
EM277模塊是PROFIBUS-DP從站模塊,同時(shí)也支持MPI從站通訊;
2.EM241:調(diào)制解調(diào)器(Modem)通訊模塊
3.CP243-1:工業(yè)以太網(wǎng)通訊模塊;
4.CP243-1 IT:工業(yè)以太網(wǎng)通訊模塊,同時(shí)提供Web/E-mail等IT應(yīng)用;
5.CP243-2:AS-Ⅰ主站模塊,可連接最多62個(gè)AS-Ⅰ從站。
S7-200PLC的配置就是由S7-200CPU和這些擴(kuò)展模塊構(gòu)成的。
利用S7-200 PLC定時(shí)中斷功能編制一個(gè)程序
利用定時(shí)中斷功能編制一個(gè)程序,實(shí)現(xiàn)如下功能:當(dāng)I0.0由OFF→ON,Q0.0亮1s,滅1s,如此循環(huán)反復(fù)直至I0.0由ON→OFF,Q0.0變?yōu)?/span>OFF。
程序如圖1所示。
主程序
LD I0.0
EU
ATCH INT_0, 21
ENI
LDN M0.0
A I0.0
TON T32, +1000
LD T32
= M0.0
LD I0.0
ED
DTCH 21
DISI
INT0
LDN Q0.0
= Q0.0
PLC加法指令使用說(shuō)明及指令要素
該指令的助記符、指令代碼、操作數(shù)、程序步如表 1 所示。表 1 加法指令的要素
指令名稱 |
助記符 |
指令代碼位數(shù) |
操作數(shù)范圍 |
程序步 |
||
S1(.) |
S2(.) |
D(.) |
||||
加法 |
ADD ADD(P) |
FNC20 (16/32) |
K 、 H KnX 、 KnY 、 KnM 、KnS T 、 C 、 D 、 V 、 Z |
KnY 、 KnM、 KnS T 、 C 、 D、 V 、 Z |
ADD 、 ADDP…7步 DADD 、DADDP…13 步 |
ADD 加法指令是將指定的源元件中的二進(jìn)制數(shù)相加,結(jié)果送到指定的目標(biāo)元件中去。 ADD 加法指令的說(shuō)明如圖 1 表示。
圖圖1 加法指令使用說(shuō)明
當(dāng)執(zhí)行條件 X0 由 OFF → ON 時(shí), [D10]+[D12] → [D14] 。運(yùn)算是代數(shù)運(yùn)算,如 5+ ( -8 ) =-3 。
ADD 加法指令有 3 個(gè)常用標(biāo)志。 M8020 為零標(biāo)志, M8021 為借位標(biāo)志, M8022 為進(jìn)位標(biāo)志。
如果運(yùn)算結(jié)果為 0 ,則零標(biāo)志 M8020 置 1 ;如果運(yùn)算結(jié)果超過(guò) 32767 ( 16 位)或 2147483647 ( 32 位),則進(jìn)位標(biāo)志 M8022 置 1 ;如果運(yùn)算結(jié)果小于 -32767 ( 16 位)或 -2147483647 ( 32 位),則借位標(biāo)志 M8021 置 1 。
在 32 為運(yùn)算中,被指定的字元件是低 16 位元件,而下一個(gè)元件為高 16 位元件。
源和目標(biāo)可以用相同的元件號(hào)。若源和目標(biāo)元件號(hào)相同而采用連續(xù)執(zhí)行的 ADD 、( D ) ADD 指令時(shí),加法的結(jié)果在每個(gè)掃描周期都會(huì)改變。
西門子PLC高速計(jì)數(shù)器的控制字和狀態(tài)字介紹
1. 控制字節(jié)
定義了計(jì)數(shù)器和工作模式之后,還要設(shè)置高速計(jì)數(shù)器的有關(guān)控制字節(jié)。每個(gè)高速計(jì)數(shù)器均有一個(gè)控制字節(jié),它決定了計(jì)數(shù)器的計(jì)數(shù)允許或禁用,方向控制(僅限模式0、1和2)或?qū)λ衅渌J降某跏蓟?jì)數(shù)方向,裝入當(dāng)前值和預(yù)置值??刂谱止?jié)每個(gè)控制位的說(shuō)明如表7所示。
每個(gè)高速計(jì)數(shù)器都有一個(gè)狀態(tài)字節(jié),狀態(tài)位表示當(dāng)前計(jì)數(shù)方向以及當(dāng)前值是否大于或等于預(yù)置值。每個(gè)高速計(jì)數(shù)器狀態(tài)字節(jié)的狀態(tài)位如表8所示。狀態(tài)字節(jié)的0-4位不用。監(jiān)控高速計(jì)數(shù)器狀態(tài)的目的是使外部事件產(chǎn)生中斷,以完成重要的操作。
表7 HSC的控制字節(jié)
HSC0
HSC1
HSC2
HSC3
HSC4
HSC5
說(shuō)明
SM37.0
SM47.0
SM57.0
SM147.0
復(fù)位有效電平控制:
0=復(fù)位信號(hào)高電平有效;1=低電平有效
SM47.1
SM57.1
起動(dòng)有效電平控制:
0=起動(dòng)信號(hào)高電平有效;1=低電平有效
SM37.2.
SM47.2
SM57.2
SM147.2
正交計(jì)數(shù)器計(jì)數(shù)速率選擇:
0=4×計(jì)數(shù)速率;1=1×計(jì)數(shù)速率
SM37.3
SM47.3
SM57.3
SM137.3
SM147.3
SM157.3
計(jì)數(shù)方向控制位:
0 = 減計(jì)數(shù)1 = 加計(jì)數(shù)
SM37.4
SM47.4
SM57.4
SM137.4
SM147.4
SM157.4
向HSC寫入計(jì)數(shù)方向:
0 = 無(wú)更新1 = 更新計(jì)數(shù)方向
SM37.5
SM47.5
SM57.5
SM137.5
SM147.5
SM157.5
向HSC寫入新預(yù)置值:
0 = 無(wú)更新1 = 更新預(yù)置值
SM37.6
SM47.6
SM57.6
SM137.6
SM147.6
SM157.6
向HSC寫入新當(dāng)前值:
0 = 無(wú)更新1 = 更新當(dāng)前值
SM37.7
SM47.7
SM57.7
SM137.7
SM147.7
SM157.7
HSC允許:
0 = 禁用HSC 1 = 啟用HSC
表8 高速計(jì)數(shù)器狀態(tài)字節(jié)的狀態(tài)位
HSC0
HSC1
HSC2
HSC3
HSC4
HSC5
說(shuō)明
SM36.5
SM46.5
SM56.5
SM136.5
SM146.5
SM156.5
當(dāng)前計(jì)數(shù)方向狀態(tài)位:
0 = 減計(jì)數(shù);1 = 加計(jì)數(shù)
SM36.6
SM46.6
SM56.6
SM136.6
SM146.6
SM156.6
當(dāng)前值等于預(yù)設(shè)值狀態(tài)位:
0 = 不相等;1 = 等于
SM36.7
SM46.7
SM56.7
SM136.7
SM146.7
SM156.7
當(dāng)前值大于預(yù)設(shè)值狀態(tài)位:
0 = 小于或等于;1 = 大于
2. 狀態(tài)字節(jié)
S7-200系列PLC編程器的使用示例
Siemens編程器S7-200系列用在中小型設(shè)備上的自動(dòng)系統(tǒng)的控制單元,適用于各行各業(yè),各種場(chǎng)合中的檢測(cè),監(jiān)測(cè)及控制。
在這里,和大家一起來(lái)討論S7-200幾個(gè)使用方面的情況。
1.步進(jìn),伺服脈沖定位控制。
在設(shè)備的控制系統(tǒng)中,有關(guān)運(yùn)動(dòng)控制是很重要的,下面我們來(lái)看一看西門子S7-200系列PLC怎樣來(lái)實(shí)現(xiàn)這 個(gè)功能。
首先,確定使用哪個(gè)端口來(lái)發(fā)脈沖,如采用Q0.0發(fā)脈沖,則它的控制字為SMB67,脈沖同期為SMW68,脈 沖個(gè)數(shù)存放在SMD72中,
下面是控制字節(jié)的說(shuō)明:
Q0.0 Q0.1 控制字節(jié)說(shuō)明
SM67.0 SM77.0 PTO/PWM更新周期值 0=不更新,1=更新周期值
SM67.1 SM77.1 PWM更新脈沖寬度值 0=不更新,1=脈沖寬度值
SM67.2 SM77.2 PTO更新脈沖數(shù) 0=不更新,1=更新脈沖數(shù)
SM67.3 SM77.3 PTO/PWM時(shí)間基準(zhǔn)選擇 0=1微秒值,1=1毫秒值
SM67.4 SM77.4 PWM更新方法 0=異步更新,1=同步更新
SM67.5 SM77.5 PTO操作 0=單段操作,1=多段操作
SM67.6 SM77.6 PTO/PWM模式選擇 0=選擇PTO,1=選擇PWM
SM67.7 SM77.7 PTO/PWM允許 0=禁止PTO/PWM,1=允許
這樣根據(jù)以上表格,我們得出Q0.0控制字:SMB67為:10000101
采用PTO輸出,微妙級(jí)周期,發(fā)脈沖的周期(也就是頻率)與脈沖個(gè)數(shù)都要重新輸入。10000101轉(zhuǎn)化為 16進(jìn)制 為85,有了控制字以后,我們來(lái)寫這一段程序:
根據(jù)上面這段程序,我們知道了控制字的使用,同時(shí)也知道步進(jìn)電機(jī)的脈沖周期與沖個(gè)數(shù)的存放位置(對(duì) Q0.0來(lái)說(shuō)是SMW68與SMD72)。當(dāng)然,VW100與VD102內(nèi)的數(shù)據(jù)不同的話,步進(jìn)電機(jī)的轉(zhuǎn)速和轉(zhuǎn)動(dòng)圈數(shù)就不一樣。
還有一點(diǎn)需要說(shuō)明得是:M0.0導(dǎo)通---PLC捕捉到上升沿發(fā)動(dòng)脈沖輸出后,想停止的話,只須改變端口脈沖的 控制字,再啟動(dòng)PLS即可,程序如下:
2.高速計(jì)數(shù)功能。
西門子S7-200系列PLC具有高速計(jì)數(shù)的功能;舉一例子來(lái)談?wù)劯咚儆?jì)數(shù)的用途,我們采用普通電機(jī)來(lái)帶動(dòng)絲桿轉(zhuǎn)動(dòng),我們想控制轉(zhuǎn)動(dòng)距離,怎么來(lái)解決這個(gè)問(wèn)題?那么我們可在電機(jī)另一頭與一編碼器聯(lián)接,電機(jī)轉(zhuǎn)一圈,編碼器也隨之轉(zhuǎn)一圈,同時(shí)根據(jù)規(guī)格發(fā)出不同的脈沖數(shù)。當(dāng)然,這些脈沖數(shù)的頻率比較高,PLC不能用普通的上升沿計(jì)數(shù)來(lái)取得這些脈沖,只能通過(guò)高速計(jì)數(shù)功能了。
啟動(dòng)高速計(jì)數(shù)功能,也要具有控制字
HSCO HSC1 描述
SM37.0 SM47.0 復(fù)位有效電平控制位 0=高電平有效, 1=低電平有效
SM37.1 SM47.1 啟動(dòng)有效電平控制位于 0=高電平有效, 1=低電平有效
SM37.2 SM47.2 正交計(jì)數(shù)器速率選擇 0=4X計(jì)數(shù)率, 1=1X計(jì)數(shù)率
SM37.3 SM47.3 計(jì)數(shù)方向控制位 0=減計(jì)數(shù), 1=正計(jì)數(shù)
SM37.4 SM47.4 向HSC中寫入計(jì)數(shù)方向 0=不更新, 1=更新計(jì)數(shù)方向
SM37.5 SM47.5 向HSC中寫入預(yù)置值 0=不更新, 1=更新預(yù)置值
SM37.6 SM47.6 向HSC中寫入當(dāng)前值 0=不更新, 1=更新當(dāng)前值
SM37.7 SM47.7 HSC允許 0=禁止HSC, 1=允許HSC
參照上面的表格,我們選擇HSC1高速計(jì)數(shù)器,控制字為SMB47,現(xiàn)在我們啟動(dòng)高速計(jì)數(shù)器HSC1,選擇為增計(jì)數(shù),更新計(jì)數(shù)方向,重新設(shè)置值,更新當(dāng)前值:這樣的話,HSC1的啟動(dòng)控制高為:11111000轉(zhuǎn)化為16進(jìn)制為 F8,將啟動(dòng)計(jì)數(shù)器時(shí)當(dāng)前值存放在SMD48中,將預(yù)存置放在SMD52中,具體的程序 如下:
同樣的,如果計(jì)數(shù)器在工作狀態(tài)下想停止計(jì)數(shù)器,也必須改變它的控制字后,啟動(dòng)HSC具體程序 如下:
3. PID回路控制功能。
西門子S7-200系列PLC的PID控制相當(dāng)?shù)暮?jiǎn)單,可以通過(guò)micro/win軟件的一個(gè)向?qū)С绦?,按照提?span>,一步一步執(zhí)行您所要求PID控制的屬性即可,在這里談一談PID這三個(gè)參數(shù)的具體意義:P為增益項(xiàng),P越大,響應(yīng)起就快,在調(diào)節(jié)流量閥時(shí):設(shè)定流量為50%,當(dāng)目前流量接近50%,剛超過(guò),如果P值很大的話,那么流量閥會(huì)馬上會(huì)關(guān)閉,而不會(huì)控制在某一區(qū)域。這就是增益項(xiàng)太大引起。在調(diào)節(jié)的過(guò)程中應(yīng)該先將P值調(diào)節(jié)比較適當(dāng)了,再去調(diào)節(jié)I值,它為積分項(xiàng),是在控制器回路中控制對(duì)當(dāng)前值與設(shè)定值相等的偏差范圍。D為微分項(xiàng),主要作用是避免給定值的微分作用而引起的跳變。
在現(xiàn)場(chǎng)的PID參數(shù)的調(diào)整過(guò)程中,針對(duì)西門子S7-200型PLC我的建議是在不同的控制階段,采用不同的PID參數(shù)組,具體而言就是當(dāng)目前距離設(shè)定值差距較大時(shí),采用P值較大的一套PID參數(shù),如果當(dāng)前值快接近設(shè)定值范圍時(shí),采用P值較小的一套PID參數(shù)。
西門子S7系列PLC包括的機(jī)型
S7系列PLC分為S7-200小型機(jī)、 S7-300中型機(jī)、S7-400大型機(jī)。S7-200系列PLC是西門子公司20世紀(jì)90年代推出的整體式小型機(jī),其結(jié)構(gòu)緊湊、功能強(qiáng),具有很高的性能價(jià)格比,在中小規(guī)??刂葡到y(tǒng)中應(yīng)用廣泛。
S7-200系列PLC的外形圖
6ES7 368-3BC51-0AA0
S7-200 PLC的置位優(yōu)先SR觸發(fā)器與復(fù)位優(yōu)先RS觸發(fā)器簡(jiǎn)介
RS觸發(fā)器指令 RS觸發(fā)器指令的基本功能與置位指令S和復(fù)位指令R的功能相同。
置位優(yōu)先(SR)觸發(fā)器的置位信號(hào)SI和復(fù)位信號(hào)R同時(shí)為1時(shí),輸出OUT信號(hào)為1。
復(fù)位優(yōu)先(RS)觸發(fā)器的置位信號(hào)S和復(fù)位信號(hào)RI同時(shí)為1時(shí),輸出OUT信號(hào)為0。