西門(mén)子S7-1200PLC模塊湖南代理價(jià)格

西門(mén)子S7-300/400 PLC的觸發(fā)器
實(shí)際上觸發(fā)器就是用功能框表示的置位/復(fù)位指令。這種功能框有兩個(gè)輸入端(S和R)和一個(gè)輸出端Q。觸發(fā)器有兩種類型:復(fù)位優(yōu)先型(RS觸發(fā)器)和置位優(yōu)先型(SR觸發(fā)器)。
兩種觸發(fā)器均有3個(gè)引腳,其中S和R為輸入引腳,當(dāng)S位為高電位“1”,R位為低電位“0”時(shí),兩種觸發(fā)器均置位;當(dāng)S位為低電位“0”,R位為高電位“1”時(shí),兩種觸發(fā)器均復(fù)位。所謂復(fù)位優(yōu)先和置位優(yōu)先,關(guān)鍵在于當(dāng)S和R位均為高電位“1”時(shí)觸發(fā)器的執(zhí)行順序——復(fù)位優(yōu)先型觸發(fā)器先執(zhí)行復(fù)位操作,再執(zhí)行置位操作;置位優(yōu)先型觸發(fā)器先執(zhí)行置位操作,再執(zhí)行復(fù)位操作。
運(yùn)用置位優(yōu)先型SR觸發(fā)器編寫(xiě)程序如圖4-5所示。

圖4-5 置位優(yōu)先型觸發(fā)器編程
如果輸入端I0.0的信號(hào)狀態(tài)為“1”,I0.1的信號(hào)狀態(tài)為“0”,則置位存儲(chǔ)器位M1.0,輸出Q3.0將為高電位“1”;否則,如果輸入端I0.0的信號(hào)狀態(tài)為“0”,I0.1的信號(hào)狀態(tài)為“1”,則復(fù)位存儲(chǔ)器位M1.0,輸出Q4.0將是低電位“0”。如果兩個(gè)信號(hào)狀態(tài)均為“0”,則不會(huì)發(fā)生任何變化。如果兩個(gè)信號(hào)狀態(tài)均為“1”,將因順序關(guān)系先執(zhí)行置位指令,再執(zhí)行復(fù)位指令,終的結(jié)果為復(fù)位M0.0,Q4.0將為低電位“0”。
置位/復(fù)位指令根據(jù)RLO的值來(lái)決定地址位的狀態(tài)是否需要改變。當(dāng)RLO為1時(shí),置位指令使地址位為高電位“1”,復(fù)位指令使地址位為低電位“0”;RLO為0時(shí),地址位狀態(tài)保持不變。在語(yǔ)句表中,置位指令用“S<操作數(shù)>”表示,復(fù)位指令用“R<操作數(shù)>”表示。
置位/復(fù)位指令可用于結(jié)束一個(gè)邏輯串,也可用于復(fù)位定時(shí)器和計(jì)數(shù)器。
如圖4-4 (a)所示是用置位/復(fù)位指令編寫(xiě)的一段簡(jiǎn)單程序,其中通過(guò)置位/復(fù)位指令改變輸入節(jié)點(diǎn)Q3.0的狀態(tài)。如圖4-4 (b)所示為該程序段對(duì)應(yīng)的時(shí)序圖,只要I0.0出現(xiàn)高電位“1”,則Q3.0被置位高電位“1”,接著不管I0.0的狀態(tài)如何變化,Q3.0始終保持置位狀態(tài);當(dāng)I0.1出現(xiàn)高電位“1”,則程序段2接通,Q3.0被復(fù)位。
輸出指令分為兩種:邏輯串輸出指令和中間輸出指令。
◇ 邏輯串輸出指令又稱為賦值操作指令,用于將ROL的值(1或0)賦予的位地址。在語(yǔ)句表中,邏輯串輸出指令用“= <操作數(shù)>”來(lái)表示??梢园?/span>RLO的值賦予I、Q、M等存儲(chǔ)區(qū)的位。
◇ 中間輸出指令是存儲(chǔ)RLO的中間賦值元素,該元素存儲(chǔ)的結(jié)果是后打開(kāi)的邏輯 操作結(jié)果。在語(yǔ)句表中,中間輸出指令用“= <.操作數(shù)>”表示。

【例4-8】用“與”、“或”、“輸出”指令編寫(xiě)電動(dòng)機(jī)啟、保、??刂瞥绦颉?/span>
編程元件地址分配:
◇ 啟動(dòng)按鈕SB1(動(dòng)合觸點(diǎn)),I0.0。
◇ 停止按鈕SB2(動(dòng)合觸點(diǎn)),I0.1。
◇ 接觸線圈KM,Q3.0。
用梯形圖和語(yǔ)句表編寫(xiě)的控制程序如圖4-3 (a)、圖4-3 (b)所示。

圖4-3 觸點(diǎn)、輸出指令編程
標(biāo)準(zhǔn)觸點(diǎn)指令包括:“與”、“或”、“與非”、“或非”、“異或”和“異或非”指令。
標(biāo)準(zhǔn)觸點(diǎn)指令的使用也很簡(jiǎn)單,在語(yǔ)句表中,“與”指令用“A <操作數(shù)>”表示;“或”指令用“O <操作數(shù)>”來(lái)表示;“與非”指令用“AN <操作數(shù)>”表示;“或非”指令用“ON <操作數(shù)>”表示;“異或”指令用“X <操作數(shù)>”表示;“異或非”指令即為“同或”指令,用“XN <操作數(shù)>”表示。
在PLC中,存儲(chǔ)單元的狀態(tài)就是相應(yīng)觸點(diǎn)的狀態(tài),當(dāng)掃描到常開(kāi)觸點(diǎn)時(shí),就取存儲(chǔ)單元的原狀態(tài);當(dāng)掃描到常閉觸點(diǎn)時(shí),就取存儲(chǔ)單元的反狀態(tài)。指令將信號(hào)狀態(tài)的結(jié)果放在RLO,當(dāng)信號(hào)狀態(tài)是0時(shí),表示觸點(diǎn)斷開(kāi)。
指令由操作碼和操作數(shù)組成,操作碼表明要進(jìn)行什么操作,操作數(shù)用于給出操作涉及的數(shù)據(jù)。在S7系列中,可以直接給出運(yùn)算涉及的數(shù)據(jù),也可以間接給出運(yùn)算涉及的數(shù)據(jù);所謂尋址方式,就是指令中給出操作數(shù)的方式。在S7系列PLC中有3種尋址方式:立即尋址、直接尋址和間接尋址。
1.立即尋址
立即尋址是在指令中直接給出操作數(shù)的尋址方式。前面介紹的所有類型的數(shù)據(jù)均可以在指令中直接給出,只是需要注意給出的數(shù)據(jù)要與相應(yīng)的存儲(chǔ)區(qū)類型*。
【例4-4】
L 2#0001 1001 1000 0001 //將二進(jìn)制數(shù)0001 1001 1000 0001裝入累加器1中
2.直接尋址
直接尋址是一種直接給出數(shù)據(jù)的存儲(chǔ)地址或者要操作的數(shù)據(jù)存儲(chǔ)區(qū)的尋址方式。如I0.2、MB8等就屬于直接尋址,它們直接給出數(shù)據(jù)的存儲(chǔ)區(qū),I0.2表示輸入映像存儲(chǔ)區(qū)的第0個(gè)字節(jié)的第3位,MB8表示位存儲(chǔ)區(qū)的第9個(gè)字節(jié)。直接尋址可用于所有的編程元件(I、0、M、SM、V、L、AC等)。

【例4-5】
I0.3 //對(duì)輸入位I0.3進(jìn)行或邏輯運(yùn)算
RQ5.0 //將輸出位Q5.0置“0”
=M1.1 //使M1.1的內(nèi)容等于RLO的內(nèi)容
LC4 //將C4中的計(jì)數(shù)值裝入累加器1
TMW5 //將累加器1中的內(nèi)容傳送給MW5
3.間接尋址
間接尋址是在指令中不直接給出數(shù)據(jù)存儲(chǔ)位置的一種尋址方式。與直接尋址相對(duì)應(yīng),間接尋址就是用其他的方式間接地指示出操作數(shù)的存儲(chǔ)位置。根據(jù)用來(lái)指示操作數(shù)存儲(chǔ)位置的物理對(duì)象不同,間接尋址又分為兩種,即存儲(chǔ)器間接尋址和寄存器間接尋址。
(1)存儲(chǔ)器間接尋址
S7-300/400PLC的存儲(chǔ)器間接尋址就是在指令中用存儲(chǔ)器來(lái)表示操作數(shù)的存儲(chǔ)位置,即存儲(chǔ)器作為地址指針??梢杂米鞯刂分羔樀拇鎯?chǔ)器有T、C、DB、M等。為了與直接尋址相區(qū)分,存儲(chǔ)器間接尋址需要給用作地址指針的存儲(chǔ)器加上[]。
對(duì)于地址范圍小于65535的存儲(chǔ)區(qū)來(lái)說(shuō),地址指針可以是字類型,因?yàn)?/span>16b(位)字類型的指針已經(jīng)能夠*表示出這些地址;而對(duì)于地址范圍大于65535的存儲(chǔ)區(qū)來(lái)說(shuō),地址指針必須是32b(位)雙字類型的。
根據(jù)以卜的敘述,地址指針可以指向不同類型的存儲(chǔ)區(qū),并且一個(gè)存儲(chǔ)區(qū)內(nèi)又有很多的字節(jié)和位,為了準(zhǔn)確地指向操作數(shù),地址指針必須反映出這些信息。
字類型指針的格式如圖4-1所示。字類型的指針共16b(位),其中低3位(即0~2位)表示存儲(chǔ)區(qū)中的位,3~15位表示存儲(chǔ)區(qū)的字節(jié)。

圖4-1 存儲(chǔ)器間接尋址的字類型指針格式
【例4-6】通過(guò)局部變量LD10將輸入整數(shù)+8讀入,然后與I0.1進(jìn)行“與”運(yùn)算,將結(jié)果輸出到Q0.2中。

L +8 //將整數(shù)8裝入累加器1
T LD10 //將整數(shù)8傳送到局部變量LD10中
A I[LD10] //讀入由LD10確定的輸入點(diǎn)
A I0.1 //與I0.1進(jìn)行“與”運(yùn)算
=Q0.2 //將結(jié)果輸出到Q0.2
(2)寄存器間接尋址
寄存器間接尋址:通過(guò)地址寄存器和偏移地址共同得出操作數(shù)的存儲(chǔ)地址。在S7-300 PLC中有AR1和AR2兩個(gè)地址寄存器,在指令中書(shū)寫(xiě)時(shí),地址寄存器和偏移地址必須都寫(xiě)在[]內(nèi),格式為[AR1,m]或[AR2,m],所指向的存儲(chǔ)器的地址為地址寄存器AR1或AR2的內(nèi)容與m之和。
寄存器間接尋址方式中的地址指針為雙字類型,具體格式如圖4-2所示。

圖4-2 寄存器間接尋址的指針格式
其中:
◇ 位0~2為被尋址字節(jié)的位編號(hào),范圍為0~7。
◇ 位3~18為被尋址字節(jié)的字節(jié)編號(hào),尋址范圍為0~65535。
◇ 位24、25、26為區(qū)域標(biāo)志,通過(guò)這3位數(shù)據(jù)的組合表示不同的數(shù)據(jù)區(qū)。
◇ 位31用于確定是區(qū)域內(nèi)尋址還是區(qū)域間尋址:位31=0為區(qū)域內(nèi)寄存器間接尋址。
◇ 位31=1為區(qū)域間寄存器間接尋址。
【例4-7】通過(guò)地址寄存器偏移二進(jìn)制位數(shù)據(jù)I0.8后,將I31.9讀入,與I0.1進(jìn)行“與”運(yùn)算,結(jié)果輸出到Q0.2。程序如下:
L P#I0.8 //將二進(jìn)制位數(shù)據(jù)10.8讀入累加器
LAR1 //將累加器的內(nèi)容寫(xiě)入地址寄存器AR1
A I [AR1,P#21.1] //將二進(jìn)制位數(shù)據(jù)21.1與地址寄存器AR1內(nèi)容相加,進(jìn)行間接尋址
A I0.1 //與I0.1進(jìn)行“與”運(yùn)算
= Q0.2 //將結(jié)果輸出到Q0.2
以上指令等效于指令:
A I31.9
A I(
=Q0.2

西門(mén)子S7-1200PLC模塊湖南代理價(jià)格