技術(shù)文章
西門子S7-200PLC特殊繼電器用法
閱讀:1757 發(fā)布時(shí)間:2015-12-4西門子S7-200PLC特殊繼電器用法
西門子PLC特殊標(biāo)志繼電器(SM)
有些輔助繼電器具有特殊功能或存儲(chǔ)系統(tǒng)的狀態(tài)變量、有關(guān)的控制參數(shù)和信息,我們稱為特殊標(biāo)志繼電器。用戶可以通過特殊標(biāo)志來溝通PLC與被控對(duì)象之間的信 息,如可以讀取程序運(yùn)行過程中的設(shè)備狀態(tài)和運(yùn)算結(jié)果信息,利用這些信息用程序?qū)崿F(xiàn)一定的控制動(dòng)作。用戶也可通過直接設(shè)置某些特殊標(biāo)志繼電器位來使設(shè)備實(shí)現(xiàn)某種功能。
特殊標(biāo)志繼電器用“SM”表示,特殊標(biāo)志繼電器區(qū)根據(jù)功能和性質(zhì)不同具有位、字節(jié)、字和雙字操作方式。其中SMB0、SMB1為系統(tǒng)狀態(tài)字,只能讀取其中的狀態(tài)數(shù)據(jù),不能改寫,可以位尋址。系統(tǒng)狀態(tài)字中部分常用的標(biāo)志位說明如下:
SM0.0:始終接通;
SM0.1:掃描為1,以后為0,常用來對(duì)程序進(jìn)行初始化;
SM0.2:當(dāng)機(jī)器執(zhí)行數(shù)學(xué)運(yùn)算的結(jié)果為負(fù)時(shí),該位被置1;
SM0.3:開機(jī)后進(jìn)入RUN方式,該位被置1一個(gè)掃描周期;
SM0.4:該位提供一個(gè)周期為1分鐘的時(shí)鐘脈沖,30秒為1,30秒為0;
SM0.5:該位提供一個(gè)周期為1秒鐘的時(shí)鐘脈沖,0.5秒為1,0.5秒為0;
SM0.6:該位為掃描時(shí)鐘脈沖,本次掃描為1,下次掃描為0;
SM1.0:當(dāng)執(zhí)行某些指令,其結(jié)果為0時(shí),將改位置1;
SM1.1:當(dāng)執(zhí)行某些指令,其結(jié)果溢出或?yàn)榉欠〝?shù)值時(shí),將改位置1;
SM1.2:當(dāng)執(zhí)行數(shù)學(xué)運(yùn)算指令,其結(jié)果為負(fù)數(shù)時(shí),將改位置1;
SM1.3:試圖除以0時(shí),將改位置1;
S7-200中SM0.0的用法:
1、SM0.0在程序運(yùn)行時(shí)始終為ON。
2、SM0.0是一個(gè)無條件的常閉觸點(diǎn),用來啟動(dòng)無條件運(yùn)行的指令。
只要上電,SM0.0必然是“1”。因此程序中那些不受任何條件限制,必須要執(zhí)行的指令就用它作為觸發(fā)觸點(diǎn)。
3、問:程序有時(shí)要在指令前加SM0.0,為什么不直接連在母線上,不是一樣嗎?
*答案:
因?yàn)椋琒7-200的指令是不能直接連在“母線”上的,這不符合語法要求。
SM0.0是不可控的觸點(diǎn),適用于無條件觸發(fā)的場(chǎng)合,并非每個(gè)指令都需要SM0.0。在其它場(chǎng)合,要用可控制的觸點(diǎn)來觸發(fā)指令,如I0.0、M0.0或各種比較指令等等。如果沒有可控觸點(diǎn)可用,就只能用SM0.0。
其他答案:
a、S7200編程中有規(guī)定,在輸出類指令前必須有觸點(diǎn)指令,有的時(shí)候輸出指令不需要條件直接輸出為1,但為了滿足這樣的編程約定就串連常為1的sm0.0在前面。
b、不同PLC廠家都有自己語法規(guī)定,SIEMENS S7-200梯形圖就這樣要求的,不能母線直接連輸出指令(或子程序調(diào)用)。
c、一個(gè)程序用不用SM0.0在于多方面的需要,如果你不需要也能完成控制要求那不用當(dāng)然好了。不過對(duì)于一些指令你還是非用它不可呢!另外在調(diào)試程序時(shí)它還是你的好幫手呢!
基本指令
一 關(guān)于狀態(tài)字(SM)
01 SMB0包括8個(gè)狀態(tài)位(SM0.0/SM0.1/SM0.2/SM0.3/SM0.4/SM0.5/SM0.6/SM0.7)
02 SMB1 包含了各種潛在的錯(cuò)誤提示,可在執(zhí)行某些指令或執(zhí)行出錯(cuò)時(shí)由系統(tǒng)自動(dòng)對(duì)相應(yīng)進(jìn)行置位或復(fù)位.
03 SMB2 在自由接口通信時(shí),自由接口接收字符的緩沖區(qū).
04 SMB3 在自由接口通信時(shí),發(fā)現(xiàn)接收到的字符中有奇偶效驗(yàn)錯(cuò)誤時(shí),可將SM3.0置位.
05 SMB4 標(biāo)志中斷隊(duì)列是否溢出或通信接口使用狀態(tài).
06 SMB5 標(biāo)志I/O系統(tǒng)錯(cuò)誤.
07 SMB6 CPU模塊識(shí)別(ID)寄存器.
08 SMB7 系統(tǒng)保留
09 SMB8-SMB21 I/O模塊識(shí)別和錯(cuò)誤寄存器,按字節(jié)對(duì)形式(相鄰兩個(gè)字節(jié))存儲(chǔ)擴(kuò)展模塊0-6的模塊類型、I/O類型、I/O點(diǎn)數(shù)和測(cè)得的各模塊I/O錯(cuò)誤.
10 SMB22-SMB26 記錄系統(tǒng)掃描時(shí)間.
11 SMB28-SMB29 存儲(chǔ)CPU模塊自帶的模擬電位器所對(duì)應(yīng)的數(shù)字量.
12 SMB30-SMB130 SMB30為自由接口通信時(shí),自由接口0的通信方式控制字節(jié);SMB130為自由接口通信時(shí),自由接口1的通信方式控制字節(jié);兩字節(jié)可讀可寫。
13 SMB31-SMB32 *存儲(chǔ)器(EEPROM)寫控制.
14 SMB34-SMB35 用于存儲(chǔ)定時(shí)中斷的時(shí)間間隔.
15 SMB36-SMB65 高速計(jì)數(shù)器HSC0、HSC1、HSC2的監(jiān)視及控制寄存器.
16 SMB66-SMB85 高速脈沖輸出(PTO/PWM)的監(jiān)視及控制寄存器.
17 SMB86-SMB94 自由接口通信時(shí),接口0或接口1接收信息狀態(tài)寄存器.
18 SMB186-SMB194 自由接口通信時(shí),接口0或接口1接收信息狀態(tài)寄存器.
19 SMB98-SMB99 標(biāo)志擴(kuò)展模塊總線錯(cuò)誤號(hào).
20 SMB131-SMB165 高速計(jì)數(shù)器HSC3、HSC4、HSC5的監(jiān)視及控制寄存器.
21 SMB166-SMB194 高速脈沖輸出(PTO)包絡(luò)定義表.
22 SMB200-SMB299 預(yù)留給智能擴(kuò)展模塊,保存其狀態(tài)信息.