當(dāng)前位置: 首頁 > 工業(yè)控制產(chǎn)品 > 自動(dòng)化控制 > PLC可編程控制器
發(fā)布日期:2022-04-26 點(diǎn)擊率:64 品牌:歐姆龍_Omron
基本邏輯指令(簡稱基本指令)主要用于實(shí)現(xiàn)順序邏輯控制。無論哪個(gè)公司生產(chǎn)的可編程控制器均有基本邏輯編輯指令,但是所使用的指令條數(shù)及指令的表示符號一般不完全相同,但是其內(nèi)容及功能卻十分相似。日本OMRON公司生產(chǎn)的C系列P型機(jī)有12條基本指令,這12條基本指令在其簡易編程器上均有相應(yīng)的按鍵,可以直觀、方便地將基本邏輯指令通過編程器傳送到主機(jī)。
1、LD指令和LD NOT指令
LD指令是邏輯條件類指令,其作用是把由操作數(shù)指定的觸點(diǎn)狀態(tài)(ON或OFF)送到存儲(chǔ)器的一個(gè)工作單元(此單元為一位的寄存器,稱為結(jié)果寄存器)中。
指令格式:LD XXXX
操作數(shù)XXXX為繼電器號。
LD NOT指令也是邏輯條件類指令,其作用是把由操作數(shù)指定的觸點(diǎn)狀態(tài)(ON或OFF)取反后送到結(jié)果寄存器。
指令格式:LD NOT XXXX
圖1 LD和LD NOT指令在梯形圖中的符號
由此可見,LD指令的功能是將動(dòng)合(常開)觸點(diǎn)接到邏輯母線上,LD NOT指令的功能是將動(dòng)斷(常閉)觸點(diǎn)接到邏輯母線上。
LD指令及其他基本邏輯指令可使用的繼電器見表1。
表1 基本邏輯指令可使用的繼電器
2、AND指令和AND NOT指令
AND指令也是邏輯條件類指令。其作用是把由操作數(shù)指定的觸點(diǎn)狀態(tài)與結(jié)果寄存器的狀態(tài)進(jìn)行邏輯與,其結(jié)果再送結(jié)果寄存器。
指令格式:AND XXXX
操作數(shù)XXXX為繼電器號。
AND NOT指令也是邏輯條件類指令。它的作用是把由操作數(shù)指定的觸點(diǎn)狀態(tài)取反后與結(jié)果寄存器的狀態(tài)進(jìn)行邏輯與,其結(jié)果再送結(jié)果寄存器。
指令格式:AND NOT XXXX
AND和AND NOT指令在梯形圖中的符號如圖2所示。
圖2 AND和AND NOT指令在梯形圖中的符號
由此可見,AND指令的功能是串聯(lián)一個(gè)動(dòng)合觸點(diǎn),AND NOT指令的功能是串聯(lián)一個(gè)動(dòng)斷觸點(diǎn)。
3、OR指令和OR NOT指令
OR指令也是邏輯條件類指令。其作用是把由操作數(shù)指定的觸點(diǎn)狀態(tài)與結(jié)果寄存器的狀態(tài)進(jìn)行邏輯或,其結(jié)果再送結(jié)果寄存器。
指令格式:OR XXXX
操作數(shù)XXXX為繼電器號。
OR NOT指令也是邏輯條件類指令。其作用是把由操作數(shù)指定的觸點(diǎn)狀態(tài)取反后與結(jié)果寄存器的狀態(tài)進(jìn)行邏輯或,其結(jié)果再送入結(jié)果寄存器。
指令格式:OR NOT XXXX
OR和OR NOT指令在梯形圖中的符號如圖3所示。
圖3 OR和OR NOT指令在梯形圖中的符號
由此可見,OR指令的功能是并聯(lián)一個(gè)動(dòng)合觸點(diǎn),OR NOT指令的功能是并聯(lián)一個(gè)動(dòng)斷觸點(diǎn)。
4、OUT指令
OUT指令是輸出指令,其作用是把結(jié)果寄存器的內(nèi)容寫到由操作數(shù)指定的繼電器中。
指令格式:OUT XXXX
操作數(shù)XXXX為繼電器號。
OUT指令在梯形圖中的符號如圖4所示。
圖4 OUT指令在梯形圖中的符號
由此可見,OUT指令的功能就是接一個(gè)繼電器的線圈。
一般OUT指令出現(xiàn)在每個(gè)梯級的最右端,該指令將結(jié)果寄存器中的內(nèi)容寫到指定的繼電器。如輸出給輸出繼電器,則可驅(qū)動(dòng)相應(yīng)的外部負(fù)載。OUT指令后的繼電器號,一般不能重復(fù)使用,否則可能引起邏輯上的混亂。
編程舉例:
當(dāng)輸入0002和0003同時(shí)為ON時(shí)或輸入0004為ON,且0001為OFF時(shí),輸出0500為ON。完成該功能的梯形圖程序及指令語句表程序如圖5所示。
圖5 LD、AND、OR、OUT指令
5、AND LD指令和OR LD指令
AND LD指令是邏輯條件類指令,無操作數(shù),其作用是把結(jié)果寄存器中的內(nèi)容與堆棧的內(nèi)容進(jìn)行邏輯與,其結(jié)果再送結(jié)果寄存器。
OR LD指令也是邏輯條件類指令,無操作數(shù),其作用是把結(jié)果寄存器中的內(nèi)容與堆棧的內(nèi)容進(jìn)行邏輯或,其結(jié)果再送結(jié)果寄存器。
簡單地說,AND LD指令是將兩觸點(diǎn)塊串聯(lián)起來,OR LD指令是將兩觸點(diǎn)塊并聯(lián)起來。
AND LD指令和OR LD指令的示例分別見圖6和圖7。
圖6 AND LD指令
圖7 OR LD指令
在圖6中,在動(dòng)斷觸點(diǎn)0003后又形成了一條新的邏輯母線,而動(dòng)合觸點(diǎn)0004是接在該邏輯母線上的,故應(yīng)用LD指令。
例 試編寫圖8(a)所示梯形圖程序所對應(yīng)的指令語句表程序。其指令語句表見圖8(b)。
圖8 邏輯指令的綜合應(yīng)用
6、TIM定時(shí)器指令和TIMH高速定時(shí)器指令
TIM定時(shí)器指令用于對時(shí)間的控制。所完成的操作功能:滿足執(zhí)行條件時(shí),控制plc內(nèi)部的一個(gè)時(shí)鐘脈沖,根據(jù)程序中所設(shè)定的時(shí)間常數(shù),定時(shí)器的當(dāng)前值每隔0.1 s減1,減到0000時(shí),完成延時(shí)時(shí)間的控制,此時(shí)定時(shí)器的觸點(diǎn)產(chǎn)生相應(yīng)的動(dòng)作(動(dòng)合閉合、 動(dòng)斷斷開),實(shí)現(xiàn)延時(shí)控制作用。如果定時(shí)器的當(dāng)前值尚未減至0000,由于某種原因不滿足工作條件時(shí),則定時(shí)器復(fù)位,當(dāng)前值變?yōu)樵O(shè)定值。
TIMH指令和TIM指令所完成的操作功能是一樣的,它們的不同點(diǎn)是時(shí)間的度量單位不同,TIM指令的度量單位是0.1 s,計(jì)時(shí)范圍為0~999.9 s。TIMH指令的度量單位是0.01 s(即當(dāng)前值每隔0.01 s減1),計(jì)時(shí)范圍為0~99.99 s,因此,如果掃描周期超過10 ms,則TIMH指令不能執(zhí)行,定時(shí)操作可能不準(zhǔn)確。另外,TIMH是功能指令(FUN 15),在編程器上沒有與其對應(yīng)的專用鍵,輸入TIMH指令時(shí),要先按FUN鍵,然后輸入功能代碼。但在輸入觸點(diǎn)時(shí)仍按TIM鍵。
TIM指令的格式:TIM、XX
#XXXX
TIMH指令的格式與此類似。
定時(shí)器指令要求兩個(gè)操作數(shù):第一個(gè)操作數(shù)XX為定時(shí)器號,范圍為00~47。第二個(gè)操作數(shù)是#后XXXX,為定時(shí)器的設(shè)定值,其范圍為0000~9999(十進(jìn)制,單位為0.1 s(TIM指令)或0.01 s(TIMH指令))。第二個(gè)操作數(shù)除常數(shù)外,還可以是通道號,以通道內(nèi)容(4位BCD碼)為設(shè)定值。
TIM和TIMH指令在梯形圖中的符號如圖9所示。
圖9 TIM和TIMH指令在梯形圖中的符號
由此可見,定時(shí)器指令就是接一個(gè)時(shí)間繼電器的線圈。
圖10中,輸入繼電器0002得電10s后,輸出繼電器0500得電。注意:在此期間0002不能失電,否則定時(shí)器復(fù)位,0500將不能得電。
圖10 TIM指令
圖11說明了TIMH的工作情況:0002得電1 s后,0500得電;0002失電,0500同時(shí)失電。圖11中部的圖形稱為波形圖(或時(shí)序圖)。
圖11 TIMH指令
C系列P型機(jī)中,定時(shí)器與計(jì)數(shù)器總共有48個(gè)(00~47),一旦用TIM指令指定某一個(gè)作為定時(shí)器,就不能再將其作為計(jì)數(shù)器使用;同樣,如果用CNT指令指定某一個(gè)作為計(jì)數(shù)器,就不能再將其作為定時(shí)器使用。另外,定時(shí)器不能直接對外輸出,需要時(shí)可借助輸出繼電器。
7、CNT計(jì)數(shù)器指令和CNTR可逆計(jì)數(shù)器指令
CNT指令格式:CNT XX
#XXXX
CNTR的指令格式與此類似。
CNT和CNTR指令在梯形圖中的符號如圖11所示。
圖11 CNT和CNTR指令在梯形圖中的符號
CNT指令和CNTR指令都要求兩個(gè)操作數(shù):第一個(gè)操作數(shù)XX為定時(shí)器號,范圍為00~47(不能與已使用的定時(shí)器或計(jì)數(shù)器號相同),第二個(gè)操作數(shù)是#后XXXX,為計(jì)數(shù)設(shè)定值,設(shè)定值為0~9999,計(jì)數(shù)范圍為0~9999次。
由此可見,CNT指令和CNTR指令都是接入一個(gè)計(jì)數(shù)器的線圈。
在CNT計(jì)數(shù)器中,CP端為計(jì)數(shù)輸入端。CP端每次由OFF到ON時(shí),該計(jì)數(shù)器的當(dāng)前值減1,當(dāng)計(jì)數(shù)器的當(dāng)前值減到0000時(shí),計(jì)數(shù)器動(dòng)作。R端為復(fù)位輸入端,當(dāng)R端由OFF到ON時(shí),計(jì)數(shù)器的當(dāng)前值復(fù)位為設(shè)定值。若CP與R信號同時(shí)出現(xiàn),復(fù)位優(yōu)先。計(jì)數(shù)器動(dòng)作后如果沒有復(fù)位信號,則其觸點(diǎn)狀態(tài)不變。
圖12中0002由OFF到ON 10次后,CNT01的觸點(diǎn)動(dòng)作,使0500得電。在任何時(shí)刻如0003由OFF到ON,CNT01的計(jì)數(shù)值由當(dāng)前值復(fù)位為設(shè)定值10。
圖12 CNT指令
CNTR是環(huán)形可逆計(jì)數(shù)器指令,ACP是加1計(jì)數(shù)輸入端,SCP是減1計(jì)數(shù)輸入端,R為復(fù)位輸入端(置“0”輸入)。其編程順序是:ACP、SCP、R、CNTR、計(jì)數(shù)器號、設(shè)定值。ACP端每次由OFF到ON時(shí),CNTR的當(dāng)前值加1;SCP端每次由OFF到ON時(shí),CNTR的當(dāng)前值減1;若ACP和SCP信號同時(shí)到來時(shí),當(dāng)前計(jì)數(shù)值不變。當(dāng)復(fù)位輸入信號R為ON時(shí),CNTR的當(dāng)前計(jì)數(shù)值被復(fù)位到0000,此時(shí)ACP和SCP信號均不起作用。
CNTR采用環(huán)形計(jì)數(shù)方式,在計(jì)數(shù)器的當(dāng)前值達(dá)到設(shè)定值時(shí),若加1計(jì)數(shù)ACP再來一個(gè)信號,則計(jì)數(shù)器的當(dāng)前值變?yōu)?000,產(chǎn)生進(jìn)位,使計(jì)數(shù)器產(chǎn)生輸出(ON),繼續(xù)計(jì)入新數(shù),當(dāng)前值增加,而計(jì)數(shù)器的輸出又為OFF。在計(jì)數(shù)器的當(dāng)前值為0000時(shí),若減1計(jì)數(shù)SCP再來一個(gè)信號,則計(jì)數(shù)器的當(dāng)前值變?yōu)樵O(shè)定值,產(chǎn)生借位,使計(jì)數(shù)器產(chǎn)生輸出,繼續(xù)計(jì)入新數(shù),計(jì)數(shù)器的當(dāng)前值減少,而計(jì)數(shù)器的輸出又為OFF。在程序輸入時(shí),對CNTR的觸點(diǎn)的輸入,仍按CNT鍵。
圖13 CNTR指令
圖13 中0002/0003波形上方的數(shù)字式計(jì)數(shù)器當(dāng)前值。
CNTR和CNT的設(shè)定值也可由某個(gè)通道的內(nèi)容或外部部件(用戶通過4位BCD碼撥碼開關(guān),按照從低位到高位的順序分別接到主機(jī)的16個(gè)輸入端子上,這種做法對于在現(xiàn)場需要經(jīng)常改變計(jì)數(shù)器的設(shè)定值時(shí)很方便)來提供。(版權(quán)所有)如用某個(gè)通道的內(nèi)容作為計(jì)數(shù)器的設(shè)定值,可使用的通道為00~17通道、 HR0~HR9通道,通道的內(nèi)容均以4位BCD碼作為計(jì)數(shù)器的設(shè)定值。在圖7中如欲用10通道的內(nèi)容作為CNTR 02的設(shè)定值,將其梯形圖和指令語句表中的“# 0006”改為“10”即可(注意:不是改為“# 10”)。
定時(shí)器和計(jì)數(shù)器所使用的繼電器號都是00~47,可任意使用,但不能重復(fù)使用。定時(shí)器在電源掉電后被復(fù)位,計(jì)數(shù)器當(dāng)電源掉電時(shí)能保持當(dāng)前數(shù)值不變,電源恢復(fù)時(shí)可繼續(xù)計(jì)數(shù)。
8、TR暫存繼電器指令
暫存繼電器只能作LD、LD NOT、 OUT指令的操作數(shù),用于處理梯形圖中的分支程序。
指令格式:OUT TR X
LD TR X
OUT的作用是暫存,LD的作用是取出。
在分支程序較多時(shí),可使用暫存繼電器,在同一程序段中最多可用8個(gè)暫存繼電器TR0TR7,在不同的程序段中可再次使用。
圖14中第0002句是將觸點(diǎn)0002和觸點(diǎn)0007并聯(lián)的結(jié)果送到暫存繼電器TR0存儲(chǔ)起來,第0012句是將TR0里的值取出來,相當(dāng)于執(zhí)行0000~0001語句。
圖14 TR指令
上面分別介紹了OMRON公司的C系列P型機(jī)的一些基本邏輯指令的功能以及這些基本邏輯指令在梯形圖程序和指令語句表中的表達(dá)式。把梯形圖程序轉(zhuǎn)換成指令語句表,這是為了適應(yīng)用簡易程序器輸入用戶程序的需要。一般在設(shè)計(jì)用戶程序時(shí),總是先采用梯形圖的方式去設(shè)計(jì),使程序直觀、易讀。在程序編好后,如果有圖形編程器,則可直接輸入梯形圖語言;如果只有簡易編程器,這時(shí)就需要將梯形圖程序轉(zhuǎn)換成指令語句表,一條一條的輸入。另外,在分析、編輯及調(diào)試程序時(shí),需要將已輸入或存儲(chǔ)在存儲(chǔ)器中的程序一條一條的讀出,再轉(zhuǎn)換成梯形圖。所以,將梯形圖轉(zhuǎn)換成指令語句表,或?qū)⒅噶钫Z句表轉(zhuǎn)換成梯形圖,是用簡易編程器寫程序、讀程序時(shí)應(yīng)具備的基本能力。
下一篇: PLC、DCS、FCS三大控
上一篇: MATLAB和Simulink在航