一、以下是一些常用的西門子PLC命令的介紹:
1. I/O命令:
- I:輸入點(輸入信號),用于讀取外部輸入信號的狀態(tài)。
- Q:輸出點(輸出信號),用于控制外部輸出設(shè)備的狀態(tài)。
- M:輔助繼電器,用于存儲中間狀態(tài)或?qū)崿F(xiàn)邏輯運算。
2. 邏輯命令:
- AND:邏輯與,用于判斷多個輸入信號是否同時為真。
- OR:邏輯或,用于判斷多個輸入信號中是否有一個為真。
- NOT:邏輯非,用于取反輸入信號的狀態(tài)。
- XOR:邏輯異或,用于判斷多個輸入信號中是否有奇數(shù)個為真。
3. 比較命令:
- EQ:等于,用于判斷兩個數(shù)字是否相等。
- NE:不等于,用于判斷兩個數(shù)字是否不相等。
- GT:大于,用于判斷一個數(shù)字是否大于另一個數(shù)字。
- GE:大于等于,用于判斷一個數(shù)字是否大于或等于另一個數(shù)字。
- LT:小于,用于判斷一個數(shù)字是否小于另一個數(shù)字。
- LE:小于等于,用于判斷一個數(shù)字是否小于或等于另一個數(shù)字。
4. 算術(shù)命令:
- ADD:加法,用于兩個數(shù)字相加。
- SUB:減法,用于兩個數(shù)字相減。
- MUL:乘法,用于兩個數(shù)字相乘。
- DIV:除法,用于兩個數(shù)字相除。
- MOD:取模,用于計算兩個數(shù)字相除的余數(shù)。
5. 計時器命令:
- TON:定時器(單脈沖),用于在設(shè)定的時間內(nèi)生成一個脈沖信號。
- TOF:定時器(脈沖后延遲),用于在設(shè)定的時間后生成一個脈沖信號。
- TP:定時器(脈沖前延遲),用于在設(shè)定的時間前生成一個脈沖信號。
6. 計數(shù)器命令:
- CTU:上計數(shù)器,用于計數(shù)器值的增加。
- CTD:下計數(shù)器,用于計數(shù)器值的減少。
- CTUD:上下計數(shù)器,用于計數(shù)器值的增加和減少。
7. 移位命令:
- S:正向移位,用于將位的狀態(tài)從低位向高位移動。
- R:反向移位,用于將位的狀態(tài)從高位向低位移動。
8. 跳轉(zhuǎn)命令:
- JMP:無條件跳轉(zhuǎn),用于跳轉(zhuǎn)到指定的程序段。
- LBL:標簽,用于定義跳轉(zhuǎn)的目標位置。
9. 調(diào)用命令:
- CALL:調(diào)用子程序,用于調(diào)用其他程序段的執(zhí)行。
- RET:返回主程序,用于從子程序返回到主程序。
10. 數(shù)據(jù)處理命令:
- MOV:數(shù)據(jù)移動,用于將數(shù)據(jù)從一個位置復(fù)制到另一個位置。
- COP:數(shù)據(jù)拷貝,用于將數(shù)據(jù)從一個位置復(fù)制到另一個位置,并進行一些處理。
- STR:字符串處理,用于對字符串進行處理,如拼接、截取等。
- BCD:BCD碼處理,用于將二進制數(shù)據(jù)轉(zhuǎn)換為BCD碼或?qū)CD碼轉(zhuǎn)換為二進制數(shù)據(jù)。
二、根據(jù)編程元件的功能分類:
這些是常用的西門子PLC命令的介紹,可以根據(jù)具體的應(yīng)用需求選擇適合的命令進行程序編寫和控制邏輯實現(xiàn)。請注意,不同的PLC型號和編程軟件版本可能會有一些差異,因此在實際編程中,建議參考相關(guān)的西門子PLC文檔和手冊以了解詳細的命令說明和使用方法。
在西門子plc梯形圖中,將其觸點和線圈等稱為程序中的編程元件。編程元件也稱為軟元件,是指在plc編程時使用的輸入/輸出端子所對應(yīng)的存儲區(qū)以及內(nèi)部的存儲單元、寄存器等。
根據(jù)編程元件的功能,西門子plc梯形圖中的常用的編程元件主要有輸入繼電器(I)、輸出繼電器(Q)、輔助繼電器(M、SM)、定時器(T)、計數(shù)器(C)和一些其他較常見的編程元件等。
1、輸入繼電器(I)的標注
西門子PLC梯形圖中的輸入繼電器用“字母I+數(shù)字”進行標識,每個輸入繼電器均與PLC的一個輸入端子對應(yīng),用于接收外部開關(guān)信號。
輸入繼電器由PLC端子連接的開關(guān)部件的通斷狀態(tài)(開關(guān)信號)進行驅(qū)動,當開關(guān)信號閉合時,輸入繼電器得電,其對應(yīng)的常開觸點閉合,常閉觸點斷開,如圖1所示。
【干貨】西門子PLC常用指令舉例
2、輸出繼電器(Q)的標注
西門子PLC梯形圖中的輸出繼電器用“字母Q+數(shù)字”進行標識,每一個輸出繼電器均與PLC的一個輸出端子對應(yīng),用于控制PLC外接的負載。
輸出繼電器可以由PLC內(nèi)部輸入繼電器的觸點、其他內(nèi)部繼電器的觸點或輸出繼電器自己的觸點來驅(qū)動,如圖2所示。
3、輔助繼電器(M、SM)的標注
在西門子PLC梯形圖中,輔助繼電器有兩種,一種為通用輔助繼電器,一種為特殊標志位輔助繼電器。
(1)通用輔助繼電器的標注。通用輔助繼電器,又稱為內(nèi)部標志位存儲器,如同傳統(tǒng)繼電器控制系統(tǒng)中的中間繼電器,用于存放中間操作狀態(tài),或存儲其他相關(guān)數(shù)字,用“字母M+數(shù)字”進行標識,如圖3所示。
由圖3可以看到,通用輔助繼電器M0.0既不直接接受外部輸入信號,也不直接驅(qū)動外接負載,它只是作為程序處理的中間環(huán)節(jié),起到橋梁的作用。
(2)特殊標志位輔助繼電器的標注。特殊標志位輔助繼電器,用“字母SM+數(shù)字”標識,如圖4所示,通常簡稱為特殊標志位繼電器,它是為保存PLC自身工作狀態(tài)數(shù)據(jù)而建立的一種繼電器,用于為用戶提供一些特殊的控制功能及系統(tǒng)信息,如用于讀取程序中設(shè)備的狀態(tài)和運算結(jié)果,根據(jù)讀取信息實現(xiàn)控制需求等。一般用戶對操作的一些特殊要求也可通過特殊標志位輔助繼電器通知CPU系統(tǒng)。
4、定時器(T)的標注
在西門子PLC梯形圖中,定時器是一個非常重要的編程元件,用“字母T+數(shù)字”進行標識,數(shù)字從0~255,共256個。不同型號的PLC,其定時器的類型和具體功能也不相同。在西門子S7-200系列PLC中,定時器分為3種類型,即接通延時定時器(TON)、保留性接通延時定時器(TONR)、斷開延時定時器(TOF),三種定時器定時時間的計算公式相同,即
T=PT×S
(T為定時時間,PT為預(yù)設(shè)值,S為分辨率等級)
其中,PT預(yù)設(shè)值根據(jù)編程需要輸入設(shè)定值數(shù)值,分辨率等級一般有1ms、10ms、100ms三種,由定時器類型和編號決定,見表3所示。
(1)接通延時定時器(TON)的標注。接通延時定時器是指定時器得電后,延時一段時間(由設(shè)定值決定)后其對應(yīng)的常開或常閉觸點才執(zhí)行閉合或斷開動作;當定時器失電后,觸點立即復(fù)位。
接通延時定時器(TON)在PLC梯形圖中的表示方法如圖5所示,其中,方框上方的“???”為定時器的編號輸入位置;方框內(nèi)的TON代表該定時器類型(接通延時);IN為起動輸入端;PT為時間預(yù)設(shè)值端(PT外部的“???”為預(yù)設(shè)值的數(shù)值);S為定時器分辨率,與定時器的編號有關(guān)
例如,某段PLC梯形圖程序中所用定時器編號為T37,預(yù)設(shè)值PT為300,定時分辨率為100ms,如圖6所示。
可以計算出,該定時器的定時時間為300×100ms=30000ms=30s;則在該程序中,當輸入繼電器I0.3閉合后,定時器T37得電,延時30s后控制輸出繼電器Q0.0的延時閉合的常開觸點T37閉合,使輸出繼電器Q0.0線圈得電。
(2)保留性接通延時定時器(TONR)的標注。保留性接通延時定時器(TONR)與上述的接通延時定時器(TON)原理基本相同,不同之處在于在計時時間段內(nèi),未達到預(yù)設(shè)值前,定時器斷電后,可保持當前計時值,當定時器得電后,從保留值的基礎(chǔ)上再進行計時,可多間隔累加計時,當?shù)竭_預(yù)設(shè)值時,其觸點相應(yīng)動作(常開觸點閉合,常閉觸點斷開)。
保留性接通延時定時器(TONR)在PLC梯形圖中的表示方法如圖7所示,其中,方框上方的“???”為定時器的編號輸入位置;方框內(nèi)的TONR代表該定時器類型(接通延時);IN為起動輸入端;PT為時間預(yù)設(shè)值端(PT外部的“???”為預(yù)設(shè)值的數(shù)值);S為定時器分辨率,與定時器的編號有關(guān),可參照表。
(3)斷開延時定時器(TOF)的標注。斷開延時定時器(TOF)是指定時器得電后,其相應(yīng)常開或常閉觸點立即執(zhí)行閉合或斷開動作;當定時器失電后,需延時一段時間(由設(shè)定值決定),其對應(yīng)的常開或常閉觸點才執(zhí)行復(fù)位動作。
斷開延時定時器(TOF)在PLC梯形圖中的表示方法與上述兩種定時器基本相同,如圖8所示為斷開延時定時器(TOF)的典型應(yīng)用。
8 斷開延時定時器(TOF)的應(yīng)用
可以看到,該程序中所用定時器編號為T33,預(yù)設(shè)值PT為60,定時分辨率為10ms。
可以計算出,該定時器的定時時間為60×10ms=600ms=0.6s;則該程序中,當輸入繼電器I0.3閉合后,定時器T38得電,控制輸出繼電器Q0.0的延時斷開的常開觸點T38立即閉合,使輸出繼電器Q0.0線圈得電;當輸入繼電器I0.3斷開后,定時器T38失電,控制輸出繼電器Q0.0的延時斷開的常開觸點T38延時0.6 s后才斷開,輸出繼電器Q0.0線圈失電。
5、計數(shù)器(C)的標注
在西門子PLC梯形圖中,計數(shù)器的結(jié)構(gòu)和使用與定時器基本相似,也是應(yīng)用廣泛的一種編程元件,用來累計輸入脈沖的次數(shù),經(jīng)常用來對產(chǎn)品進行計數(shù)。用“字母C+數(shù)字”進行標識,數(shù)字從0~255,共256個。
不同型號的PLC,其定時器的類型和具體功能也不相同。在西門子S7-200系列PLC中,計數(shù)器分為3種類型,即增計數(shù)器(CTU)、減計數(shù)器(CTD)、增減計數(shù)器(CTUD),一般情況下,計數(shù)器與定時器配合使用。
(1)增計數(shù)器(CTU)的標注。增計數(shù)器(CTU)是指在計數(shù)過程中,當計數(shù)端輸入一個脈沖式時,當前值加1,當脈沖數(shù)累加到等于或大于計數(shù)器的預(yù)設(shè)值時,計數(shù)器相應(yīng)觸點動作(常開觸點閉合,常閉觸點斷開)。
在西門子S7-200系列PLC梯形圖中,增計數(shù)器的圖形符號及文字標識含義如圖9所示,其中方框上方的“???”為增計數(shù)器編號輸入位置,CU為計數(shù)脈沖輸入端,R為復(fù)位信號輸入端(復(fù)位信號為0時,計數(shù)器工作),PV為脈沖設(shè)定值輸入端。
例如,某段PLC梯形圖程序中計數(shù)器類型為CTU,增計數(shù)器,編號為C1,預(yù)設(shè)值PV為80,復(fù)位端由輸出繼電器Q0.0的常閉觸點控制,如圖12所示。
可以看到,該程序中,初始狀態(tài)下,輸出繼電器Q0.0的常閉觸點閉合,即計數(shù)器復(fù)位端為1,計數(shù)器不工作;當PLC外部輸入開關(guān)信號使輸入繼電器I0.0閉合后,輸出繼電器Q0.0線圈得電,其常閉觸點Q0.0斷開,計數(shù)器復(fù)位端信號為0,計數(shù)器開始工作;同時輸出繼電器Q0.0的常開觸點閉合,定時器T37得電。
12 增計數(shù)器(CTU)的應(yīng)用
在定時器T37控制下,其常開觸點T37每6min閉合一次,即每6min向計數(shù)器C1脈沖輸入端輸入一個脈沖信號,計數(shù)器當前值加1,當計數(shù)器當前值等于80時(歷時時間為8h),計數(shù)器觸點動作,即控制輸出繼電器Q0.0的常閉觸點在接通8h后自動斷開
(2)減計數(shù)器(CTD)的標注。減計數(shù)器(CTD)是指在計數(shù)過程中,將預(yù)設(shè)值裝入計數(shù)器當前值寄存器,當計數(shù)端輸入一個脈沖式時,當前值減1,當計數(shù)器的當前值等于0時,計數(shù)器相應(yīng)觸點動作(常開觸點閉合、常閉觸點斷開),并停止計數(shù)。
在西門子S7-200系列PLC梯形圖中,減計數(shù)器的圖形符號及文字標識含義如圖13所示,其中方框上方的“???”為減計數(shù)器編號輸入位置,CD為計數(shù)脈沖輸入端,LD為裝載信號輸入端,PV為脈沖設(shè)定值輸入端。
當裝載信號輸入端LD信號為1時,其計數(shù)器的設(shè)定值PV被裝入計數(shù)器的當前值寄存器,此時當前值為PV。只有裝載信號輸入端LD信號為0時,計數(shù)器才可以工作。
例如,某段PLC梯形圖程序中計數(shù)器類型為CTD,減計數(shù)器,編號為C1,預(yù)設(shè)值PV為3,如圖14所示。
由圖14可以看到,該程序中,由輸入繼電器常開觸點I0.1控制計數(shù)器C1的裝載信號輸入端;輸入繼電器常開觸點I0.0控制計數(shù)器C1的脈沖信號,I0.1閉合,將計數(shù)器的預(yù)設(shè)值3裝載到當前值寄存器中,此時計數(shù)器當前值為3,當I0.0閉合一次,計數(shù)器脈沖信號輸入端輸入一個脈沖,計數(shù)器當前值減1,當計數(shù)器當前值減為0時,計數(shù)器常開觸點C1閉合,控制輸出繼電器Q0.0線圈得電。
(3)增減計數(shù)器(CTUD)的標注。增減計數(shù)器(CTUD)有兩個脈沖信號輸入端,其在計數(shù)過程中,可進行計數(shù)加1,也可進行計數(shù)減1。
在西門子S7-200系列PLC梯形圖中,增減計數(shù)器的圖形符號及文字標識含義如圖15所示,其中方框上方的“???”為增減計數(shù)器編號輸入位置,CU為增計數(shù)脈沖輸入端,CD為減計數(shù)脈沖輸入端,R為復(fù)位信號輸入端,PV為脈沖設(shè)定值輸入端。
當CU端輸入一個計數(shù)脈沖時,計數(shù)器當前值加1,當計數(shù)器當前值等于或大于預(yù)設(shè)值時,計數(shù)器由OFF轉(zhuǎn)換為ON,其相應(yīng)觸點動作;當CD端輸入一個計數(shù)脈沖時,計數(shù)器當前值減1,當計數(shù)器當前值小于預(yù)設(shè)值時,計數(shù)器由OFF轉(zhuǎn)換為ON,其相應(yīng)觸點動作。
例如,某段PLC梯形圖程序中計數(shù)器類型為CTUD,增減計數(shù)器,編號為C48,預(yù)設(shè)值PV為4,如圖16所示。
由圖16可以看到,當輸入繼電器常開觸點I0.0閉合一次,為計數(shù)器CU輸入一個脈沖,計數(shù)器當前值加1,當累加至4時,計數(shù)器C48動作,其常開觸點C48閉合,輸出繼電器Q0.0線圈得電;當輸入繼電器常開觸點I0.1閉合一次,為計數(shù)器CD輸入一個脈沖,計數(shù)器當前值減1,當減至4時,計數(shù)器C48動作,其常開觸點C48閉合,輸出繼電器Q0.0線圈得電。
6、其他編程元件(V、L、S、AI、AQ、HC、AC)的標注
西門子PLC梯形圖中,除上述5種常用編程元件外,還包含一些其他基本編程元件。
(1)變量存儲器(V)的標注。變量存儲器用字母V標識,用來存儲全局變量,可用于存放程序執(zhí)行過程中控制邏輯操作的中間結(jié)果等。同一個存儲器可以在任意程序分區(qū)被訪問。
(2)局部變量存儲器(L)的標注。局部變量存儲器用字母L標識,用來存儲局部變量,同一個存儲器只和特定的程序相關(guān)聯(lián)。
(3)順序控制繼電器(S)的標注。順序控制繼電器用字母S標識,用于在順序控制和步進控制中,是一種特殊的繼電器。
(4)模擬量輸入、輸出映像寄存器(AI、AQ)的標注。模擬量輸入映像寄存器(AI)用于存儲模擬量輸入信號,并實現(xiàn)模擬量的A/D轉(zhuǎn)換;模擬量輸出映像寄存器(AQ)為模擬量輸出信號的存儲區(qū),用于實現(xiàn)模擬量的D/A轉(zhuǎn)換。
(5)高速計數(shù)器(HC)的標注。高速計數(shù)器(HC)與普通計數(shù)器基本相同,其用于累計高速脈沖信號。高速計數(shù)器比較少,在西門子S7-200系列PLC中,CPU226中高速計數(shù)器為HC(0~5),共6個。
(6)累加器(AC)的標注。累加器(AC)是一種暫存數(shù)據(jù)的寄存器,可用來存放運算數(shù)據(jù)、中間數(shù)據(jù)或結(jié)果數(shù)據(jù),也可用于向子程序傳遞或返回參數(shù)等.西門子S7-200系列PLC中累加器為AC(0~3),共4個。