簡(jiǎn)介位邏輯指令處理的對(duì)象為二進(jìn)制位信號(hào)。位邏輯指令掃描信號(hào)狀態(tài)“1”和“0”位,并根據(jù)布爾邏輯對(duì)它們進(jìn)行組合,所產(chǎn)生的結(jié)果(“1”或“0”)稱為邏輯運(yùn)算結(jié)果,存儲(chǔ)在狀態(tài)字的“RLO”中。 觸電與線圈 在LAD(梯形圖)程序中,通常使用類似繼電器控制電路中的觸點(diǎn)符號(hào)及線圈符號(hào)來(lái)表示PLC的位元件,被掃描的操作數(shù)(用絕對(duì)地址或符號(hào)地址表示)則標(biāo)注在觸點(diǎn)符號(hào)的上方,如圖所示。 常開(kāi)觸點(diǎn) 對(duì)于常開(kāi)觸點(diǎn)(動(dòng)合觸點(diǎn)),則對(duì)“1”掃描相應(yīng)操作數(shù)。在PLC中規(guī)定:若操作數(shù)是“1”則常開(kāi)觸點(diǎn)“動(dòng)作”,即認(rèn)為是“閉合”的;若操作數(shù)是“0”,則常開(kāi)觸點(diǎn)“復(fù)位”,即觸點(diǎn)仍處于打開(kāi)的狀態(tài)。常開(kāi)觸點(diǎn)所使用的操作數(shù)是:I、Q、M、L、D、T、C。 常閉觸點(diǎn) 常閉觸點(diǎn)(動(dòng)斷觸點(diǎn))則對(duì)“0”掃描相應(yīng)操作數(shù)。在PLC中規(guī)定:若操作數(shù)是“1”則常閉觸點(diǎn)“動(dòng)作”,即觸點(diǎn)“斷開(kāi)”;若操作數(shù)是“0”,則常閉觸點(diǎn)“復(fù)位”,即觸點(diǎn)仍保持閉合。常閉觸點(diǎn)所使用的操作數(shù)是:I、Q、M、L、D、T、C。 輸出線圈 輸出線圈與繼電器控制電路中的線圈一樣,如果有電流(信號(hào)流)流過(guò)線圈(RLO=“1”),則被驅(qū)動(dòng)的操作數(shù)置“1”;如果沒(méi)有電流流過(guò)線圈(RLO=“0”),則被驅(qū)動(dòng)的操作數(shù)復(fù)位(置“0”)。輸出線圈只能出現(xiàn)在梯形圖邏輯串的最右邊。輸出線圈等同于STL程序中的賦值指令(用等于號(hào)“=”表示),所使用的操作數(shù)可以是:Q、M、L、D。 基本邏輯關(guān)系基本邏輯指令包括: u“與”指令 u“與非”指令 u“或”指令 u“或非”指令 u“異或”指令 u“異或非”指令 u 信號(hào)流取反指令 邏輯“與”指令 邏輯“與” 指令使用的操作數(shù)可以是:I、Q、M、L、D、T、C。有2種指令形式(STL和FBD),用LAD也可以實(shí)現(xiàn)邏輯“與” 運(yùn)算。 、 邏輯“與非”指令 邏輯 “與非”指令使用的操作數(shù)可以是:I、Q、M、L、D、T、C。有2種指令形式(STL和FBD),用LAD也可以實(shí)現(xiàn)邏輯 “與非”運(yùn)算。 邏輯“或”指令 邏輯 “或”指令使用的操作數(shù)可以是:I、Q、M、L、D、T、C。有2種指令形式(STL和FBD),用LAD也可以實(shí)現(xiàn)邏輯 “或”運(yùn)算。 邏輯“或非”指令 邏輯 “或非”指令使用的操作數(shù)可以是:I、Q、M、L、D、T、C。有2種指令形式(STL和FBD),用LAD也可以實(shí)現(xiàn)邏輯 “或非”運(yùn)算。 邏輯“異或”指令 邏輯“異或非”指令 信號(hào)流取反指令 信號(hào)流取反指令的作用就是對(duì)邏輯串的RLO值進(jìn)行取反。指令格式及示例見(jiàn)下表。當(dāng)輸入位I0.0和I0.1同時(shí)動(dòng)作時(shí),Q4.0信號(hào)狀態(tài)為“0”;否則,Q4.0信號(hào)狀態(tài)為“1”。 置為和復(fù)位指令 使用置位指令時(shí),如果RLO=1,則指定的地址被置為1,而且一直保持,直到被復(fù)位為0。使用復(fù)位指令時(shí),如果RLO=1,則指定的地址被復(fù)位為0,而且一直保持,直到被置位為1,如圖所示。 置位:Set,保持“位”為“1”(ON) 復(fù)位:Reset,保持“位”為“0”(OFF) 置位和復(fù)位指令 置位 復(fù)位 注意:置位和復(fù)位指令并不意味著永遠(yuǎn)具有保持性,如果后面有其他賦值指令是會(huì)改變其狀態(tài)。 RS和SR觸發(fā)器 RS觸發(fā)器為“置位優(yōu)先”型觸發(fā)器(當(dāng)R和S驅(qū)動(dòng)信號(hào)同時(shí)為“1”時(shí),觸發(fā)器最終為置位狀態(tài)); SR觸發(fā)器為“復(fù)位優(yōu)先”型觸發(fā)器(當(dāng)R和S驅(qū)動(dòng)信號(hào)同時(shí)為“1”時(shí),觸發(fā)器最終為復(fù)位狀態(tài))。 RS觸發(fā)器和SR觸發(fā)器的“位地址”、置位(S)、復(fù)(S)及輸出 (Q)所使用的操作數(shù)可以是:I、Q、M、L、D。 RS觸發(fā)器和SR觸發(fā)器的工作時(shí)序 注意: SR觸發(fā)器為復(fù)位優(yōu)先, RS觸發(fā)器為置位優(yōu)先。 跳變沿檢測(cè)命令 STEP 7中有2類跳變沿檢測(cè)指令,一種是對(duì)RLO的跳變沿檢測(cè)的指令,另一種是對(duì)觸點(diǎn)的跳變沿直接檢測(cè)的梯形圖方塊指令。RLO跳變沿檢測(cè)指令;觸點(diǎn)信號(hào)跳變沿檢測(cè)指令 RLO邊沿檢測(cè)命令 1)RLO邊沿信號(hào)識(shí)別指令當(dāng)信號(hào)狀態(tài)變化時(shí)就產(chǎn)生跳變沿,當(dāng)從0變到1時(shí),產(chǎn)生一個(gè)上升沿(或稱正跳沿);若從1變到0,則產(chǎn)生一個(gè)下降沿(或稱負(fù)跳沿),如下圖所示。 2)跳變沿檢測(cè)的原理是:在每個(gè)掃描周期中把信號(hào)狀態(tài)和它在前一個(gè)掃描周期的狀態(tài)進(jìn)行比較,若不同 則表明有一個(gè)跳變沿。因此,前一個(gè)周期里的信號(hào)狀態(tài)必須被存儲(chǔ),以便能和新的信號(hào)狀態(tài)相比較。 a,上升沿信號(hào)指令 b,下降沿信號(hào)指令 ---(P) ---(N) 2.RLO邊沿檢測(cè)指令的工作時(shí)序 示例程序 工作時(shí)序 觸點(diǎn)信號(hào)邊沿檢測(cè)指令 在OB1的掃描周期中,CPU對(duì)<位地址1>的狀態(tài)與其上一個(gè)掃描周期的狀態(tài)<位地址2>進(jìn)行比較(上一個(gè)掃描周期的狀態(tài)保存在<位地址2>中)。 1)POS指令 若該<位地址1>狀態(tài)是1且存放在<位地址2>中的上次狀態(tài)是0,這說(shuō)明POS指令檢測(cè)到<位地址1>的正跳沿,那么POS指令把RLO位置1。如果<位地址1>在相鄰的兩個(gè)掃描周期中狀態(tài)相同(全為1或0),那么POS指令把RLO位清0。 2)NEG指令 若該<位地址1>狀態(tài)是0且存放在<位地址2>中的上次狀態(tài)是1,這說(shuō)明NEG指令檢測(cè)到<位地址1>的負(fù)跳沿,那么NEG指令把RLO位置1。如果<位地址1>在相鄰的兩個(gè)掃描周期中狀態(tài)相同(全為1或0),那么NEG指令把RLO位清0。 觸點(diǎn)信號(hào)邊沿檢測(cè)指令的工作時(shí)序 示例程序 工作時(shí)序 位地址1>位地址1>位地址2>位地址1>位地址1>位地址1>位地址2>位地址1>位地址2>位地址2>位地址1> |
|