江蘇西門子S7-1200PLC模塊代理經(jīng)銷商
西門子PLC梯形圖的載入、載入非、與、與非、和或非指令

a.載入(LD)。如圖1-37所示。

圖1-37 載入(LD)指令與B位范圍
b.載入非(LD NOT)。如圖1-38所示。

圖1-38 載入非(LD NOT)指令與B位范圍
c.與(AND)。圖1-39所示。

圖1-39 與(AND)指令與B位范圍
d.與非(AND NOT)。見圖1-40。

圖1-40 與非(AND NOT)指令與B位范圍
e.或(OR)。見圖1-41。

圖1-41 或(OR)指令與B位范圍
f.或非(OR NOT)。見圖1-42。

圖1-42 或非(OR NOT)指令與B位范圍
只要PC的存儲(chǔ)容量允許,沒有這些指令的數(shù)量及使用順序的限制。
這六個(gè)基本指令相對(duì)應(yīng)于梯形圖中的條件。正如梯形圖編程所描述的,分配到每一指令位的狀態(tài)決定所有其他指令的執(zhí)行條件。這些指令及其對(duì)應(yīng)的位地址可以根據(jù)需要多次使用。根據(jù)需要可以使用許多這樣的指令。
分配到LD或LD NOT位操作數(shù)(B)的狀態(tài)決定*個(gè)執(zhí)行條件。與在執(zhí)行條件和其本身操作數(shù)位的狀態(tài)之間做邏輯與運(yùn)算;與非在執(zhí)行條件和其本身操作碼位的狀態(tài)非之間做邏輯與運(yùn)算;或在執(zhí)行條件和其本身操作碼位的狀態(tài)之間做邏輯或運(yùn)算;或非在執(zhí)行條件和其本身操作碼位的狀非態(tài)之間做邏輯或運(yùn)算,這些指令不影響標(biāo)志位。
在編制程序時(shí),組合條件直接產(chǎn)生一個(gè)執(zhí)行條件是十分困難的。但是,這些困難能通過使用某些位來間接觸發(fā)指令而輕易解決,這些程序通過使用工作位來實(shí)現(xiàn)。有時(shí)整個(gè)字節(jié)都被用來實(shí)現(xiàn)這些目的。這些字就是工作字。
工作位不能從PLC傳送或傳送到PC。程序員選擇這些位來幫助實(shí)現(xiàn)組合條件直接產(chǎn)生一個(gè)執(zhí)行條件的編程。I/O位和其他位不能用作工作位,在IR區(qū)不作為I/O位分配的所有位和在AR區(qū)某些未用過的位能夠用作工作位。應(yīng)認(rèn)真做一個(gè)精確的記錄,包括在哪里使用了工作位及如何使用的。這能有助于程序的構(gòu)思和書寫,并且在調(diào)試操作數(shù)中也是非常有幫助的。
①工作位應(yīng)用。圖1-34所示出了說明使用工作位的較常用的方法。這些可以對(duì)幾乎無限制數(shù)目的使用工作位的方法起到指導(dǎo)的作用。無論在編制一個(gè)控制動(dòng)作中產(chǎn)生什么困難,都應(yīng)該考慮工作位和怎樣使用它們來簡(jiǎn)化程序。
工作位常和OUT、OUT NOT、DIFU、DIFD和KEEP指令一起使用。這些工作位首先用作其中一個(gè)指令的操作數(shù),接著它能用作決定其他指令怎樣執(zhí)行的一個(gè)條件。工作位也能和其他指令一起使用,例如,和移位寄存器指令SFT (10)。
雖然它們不總是具體涉及到工作位,但在編程中的許多位都使用了工作位。理解這些位的用法對(duì)有效編程是非常關(guān)鍵的。

②減少復(fù)雜條件。當(dāng)一定條件的組合重復(fù)應(yīng)用在其他條件組合中時(shí),可使用工作位簡(jiǎn)化編程。在如圖1-35所示的例子中,IR00000、IR00001、IR0002和IR00003組合在一個(gè)邏輯塊中,這個(gè)邏輯塊能將產(chǎn)生的執(zhí)行條件作為IR21600的狀態(tài)保存起來。IR21600接著結(jié)合了其他不同的條件來決定IR20000、IR20001和IR20002的輸出條件,也就是說,將的這些位輸出置“ON”或“OFF”。
③微分條件。如果執(zhí)行一條指令所需要的某些條件必須要作微分處理,就可使用工作位,但并非所有條件情況都是如此。在如圖1-36所示例子中,只要IR00001為“ON”且IR00002和IR00003都為“OFF”,或者只要IR00004為“ON”且IR00005為“OFF”時(shí),IR20000必須持續(xù)置“ON”。它必須在每次IR00000置“ON”時(shí)僅在一個(gè)周期內(nèi)置“ON”(除非前一個(gè)條件連續(xù)保持“ON”的狀態(tài))。

圖1-36 微分條件應(yīng)用例子
當(dāng)工作位作為上升沿微分指令DIFU (13)的操作數(shù)時(shí),這個(gè)動(dòng)作可簡(jiǎn)單采用IR22500編程。當(dāng)IR00000置“ON”時(shí),IR22500將在一周期內(nèi)變?yōu)?ldquo;ON”,接著在下一周期內(nèi)就通過DIFU (13)置為“OFF”。假定控制IR20000的其他條件沒有使它保持“ON”,則工作位IR22500僅在一個(gè)周期內(nèi)使IR20000置“ON”。
盡管保持功能可用來產(chǎn)生自保持位,有時(shí)必須用另外的方式產(chǎn)生一個(gè)自保持位,在一個(gè)程序的互鎖部分里,它們就能變?yōu)?ldquo;OFF”。
為了產(chǎn)生一個(gè)自保持位,一個(gè)輸出指令的操作數(shù)位用作同一輸出指令的一個(gè)或運(yùn)算條件,這樣輸出指令的操作數(shù)位將繼續(xù)為“ON”或“OFF”,直到其他位發(fā)生變化。至少一個(gè)其他條件用在輸出指令之前起到復(fù)位功能。如果沒有這個(gè)復(fù)位,則無法控制輸出指令的操作數(shù)位。
如圖1-33所示的保持指令的梯形圖可以寫成如圖1-34所示的樣子。當(dāng)互鎖指令的執(zhí)行條件為“ON”的時(shí),這兩個(gè)梯形圖的不同之處在于它們的互鎖程序部分的操作數(shù)。圖1-33與圖1-34一樣,使用了兩個(gè)復(fù)位,也就是說,當(dāng)IR00004和IR00005中任何一個(gè)為“ON”時(shí),HR0000將被置“OFF”。
圖1-33 保持指令應(yīng)用

圖1-34 梯形圖

①置位和復(fù)位。當(dāng)執(zhí)行條件變?yōu)?ldquo;ON”時(shí),置位將在操作位上置“ON”,但不像輸出指令( OUT),當(dāng)執(zhí)行條件變?yōu)?ldquo;OFF”時(shí),置位將不會(huì)在操作位上置“OFF”。當(dāng)執(zhí)行條件變?yōu)?ldquo;ON”時(shí),復(fù)位在操作位上置“OFF”,但不像輸出非指令(OUT NOT),當(dāng)執(zhí)行條件變?yōu)?ldquo;OFF”時(shí),復(fù)位將不在操作位上置“ON”。在接下來的例子里,不管IR00100的狀態(tài)如何,當(dāng)IR00100置“ON”時(shí)IR20000將置“ON”,并且能保持“ON”直至IR00101置“ON”。當(dāng)IR00101置“ON”時(shí),復(fù)位將使IR20000置“OFF”。置位和復(fù)位如圖1-31所示。
圖1-31 置位和復(fù)位
置位和復(fù)位沒有功能碼。從手持式編程器輸入它們時(shí)按FUN和SET鍵或FUN和RSET鍵,后面輸入位地址。
②上升沿微分和下降沿微分。所謂上升沿微分和下降沿微分是指輸入信號(hào)脈沖的前沿和后沿的操作。上升沿微分和下降沿微分指令用來讓操作位在一個(gè)周期時(shí)間內(nèi)置“ON”。在執(zhí)行條件“OFF”變?yōu)?ldquo;ON”之后,上升沿微分指令使一個(gè)周期的操作位置“ON”;在執(zhí)行條件“ON”變?yōu)?ldquo;OFF”之后,下降沿微分指令使一個(gè)周期的操作位置“ON”。這兩種指令都只需要有一行助記符。上升沿微分和下降沿微分如圖1-32所示。
這里,在IR00000變?yōu)?ldquo;ON”后,IR20001在一個(gè)周期內(nèi)將置“ON”。接下來再執(zhí)行DIFU (13) 20001,不管IR00000的狀態(tài)如何,IR20001將為“OFF”。用下降沿微分指令,在IR00001變?yōu)?ldquo;OFF”后(IR20002保持“OFF”直至此時(shí)),IR20002將在一個(gè)周期內(nèi)置“ON”,并且將在下一次執(zhí)行DIFD (14) 20002后置“OFF”。

圖1-32 上升沿微分和下降沿微分
③保持。使用保持指令來保持基于兩個(gè)執(zhí)行條件的操作位的狀態(tài)。這樣做,將保持指令連接到兩條指令線上。當(dāng)*個(gè)指令行末端的執(zhí)行條件為“ON”時(shí),保持指令的操作位置“ON”。當(dāng)?shù)诙€(gè)指令行末端的執(zhí)行條件為“ON”時(shí),保持指令的操作位置“OFF”。即使位于在程序的內(nèi)部聯(lián)鎖部分,保持指令的操作位將保存它的“ON”或“OFF”狀態(tài)。

在如圖1-33所示的例子中,當(dāng)IR00002為“ON”且IR00003為“OFF”時(shí),HR0000將會(huì)置“ON”。HR0000一直保持“ON”直到另外的IR00004或者IR00005置“ON”為止。保持指令和其他一樣,也需要不止一條指令行,這些指令行在它們控制的指令之前要先編碼。

圖1-33 保持指令應(yīng)用
江蘇西門子S7-1200PLC模塊代理經(jīng)銷商