四、計數(shù)器和高速計數(shù)器[C]
計數(shù)器可以分為16位計數(shù)器和32位計數(shù)器。兩種計數(shù)器都有一般用和停電保持用兩種類型。計數(shù)器編號不用于計數(shù)器功能時可以當(dāng)做數(shù)據(jù)寄存器用來保存數(shù)據(jù)。
16位計數(shù)器只能增計數(shù),設(shè)定值范圍為1~32767;32位計數(shù)器可以切換為增計數(shù)或減計數(shù),設(shè)定值范圍為-214783648~214783647。
計數(shù)器對PLC的內(nèi)部信號X、Y、M、S、C等觸點(diǎn)的動作進(jìn)行循環(huán)掃描并計數(shù),其響應(yīng)速度根據(jù)PLC的掃描時間可推算通常在10Hz以下。但很多情況下輸入信號的頻率都會大于這個數(shù)值,這時就要用到高速計數(shù)器,高速計數(shù)器的計數(shù)采用中斷處理,與PLC掃描時間無關(guān),可以達(dá)到數(shù)KHz的計數(shù)。
高速計數(shù)器必須與外部端子X0~X7配合使用,并且根據(jù)高速計數(shù)器編號占用輸入點(diǎn)的情況,一旦X點(diǎn)被占用后該點(diǎn)不能再用于其它用途。高速計數(shù)器編號與輸入點(diǎn)的對應(yīng)情況如下表:
五、數(shù)據(jù)寄存器[D]
數(shù)據(jù)寄存器是存儲數(shù)值數(shù)據(jù)的軟元件,這些寄存器都是16位的,最高位為符號位,其余15位代表數(shù)值大小。兩個連續(xù)的數(shù)據(jù)寄存器組合后可存儲32位數(shù)據(jù),在32位指令中只需指定低16位的數(shù)據(jù)寄存器,其緊接著的數(shù)據(jù)寄存器就會被自動占為高16位。在編程時需注意這點(diǎn),以免重復(fù)使用數(shù)據(jù)寄存器造成邏輯混亂。
16位數(shù)據(jù)寄存器可以處理的數(shù)據(jù)范圍為-32768~+32767,32位數(shù)據(jù)寄存器可以處理的數(shù)據(jù)范圍為-2147483648~+2147483647。
數(shù)據(jù)寄存器也可以分為一般用、停電保持用和特殊用三種類型。
1. 一般用數(shù)據(jù)寄存器
數(shù)據(jù)寄存器中寫入數(shù)據(jù)后,只要不再寫入其他數(shù)據(jù)或被復(fù)位指令復(fù)位就不會發(fā)生變化,但在PLC從RUN狀態(tài)撥到STOP狀態(tài)或是PLC停電后所有數(shù)據(jù)都會被清零。但如果驅(qū)動了特殊輔助繼電器M8033,則PLC由RUN變?yōu)镾TOP時數(shù)據(jù)也不會變化。
2. 停電保持?jǐn)?shù)據(jù)寄存器
停電保持型的數(shù)據(jù)寄存器可以在PLC由RUN變?yōu)镾TOP時以及PLC斷電時保持其存儲內(nèi)容,該類數(shù)據(jù)寄存器必須通過重新寫入數(shù)據(jù)或使用復(fù)位指令改變其內(nèi)容。
3. 特殊用數(shù)據(jù)寄存器
特殊用數(shù)據(jù)寄存器和特殊輔助繼電器一樣,其代表的功能都已在PLC中設(shè)定好,通過修改其數(shù)值可以實(shí)現(xiàn)特定的功能。
以下為一些常用的特殊數(shù)據(jù)寄存器:
D8000 監(jiān)視定時器
D8010 PLC掃描時間
D8014 PLC實(shí)時時鐘-分
D8015 PLC實(shí)時時鐘-時
D8016 PLC實(shí)時時鐘-日
D8030 模擬電位器VR1數(shù)值
D8031 模擬電位器VR2數(shù)值
D8039 恒定掃描時間
D8120 通訊格式設(shè)定
六、變址寄存器[V][Z]
變址寄存器V和Z同普通的數(shù)據(jù)寄存器一樣,是進(jìn)行數(shù)據(jù)數(shù)值儲存的16位寄存器,其編號為V0~V7和Z0~Z7共有16個。這種寄存器除了和普通的數(shù)據(jù)寄存器有相同的使用方法外,在應(yīng)用指令的操作數(shù)中還可以同其他的軟元件編號或數(shù)值組合使用,從而在程序中更改軟元件的編號和數(shù)值的內(nèi)容。
對于FX1S、FX1N、FX2N系列PLC,LD、AND、OUT等基本順空指令或步進(jìn)梯形圖指令的軟元件編號不能同變址寄存器組合使用,而在FX3U和FX3G系列PLC中則允許組合使用。
當(dāng)變址寄存器與32位的應(yīng)用指令中的軟元件配合使用時,直接指定Z的編號即可,PLC會自動將同一編號的V、Z組合成32位編制寄存器,V作為高位、Z作為低位使用。
七、指針[P][I]
P為分支用指針,它用來作為分支的標(biāo)識,與跳轉(zhuǎn)指令CJ或子程序調(diào)用指令CALL組合使用,使程序掃描到這些指令時會轉(zhuǎn)移到該標(biāo)識處繼續(xù)執(zhí)行。P63是一個特殊的分支用指針,它表示使用CJ指令時直接跳到END,所以該指針不能用于標(biāo)識。
I為中斷用指針,它用來作為中斷程序的標(biāo)識,與各種中斷配合使用驅(qū)動中斷程序。FX系列的中斷主要有輸入中斷、定時器中斷和計數(shù)器中斷三種類型。只有X0~X5這六個輸入點(diǎn)具備輸入中斷功能,同時這些輸入點(diǎn)還被指定為高速計數(shù)器和SPD等指令時的專用輸入點(diǎn),故使用這三種指令時需注意其編號占用不能相互沖突。
八、數(shù)值處理-常數(shù)
FX系列PLC的數(shù)值類型主要包括以下幾種:
1. 十進(jìn)制數(shù)(DEC: Decimal)
主要用于定時器和計數(shù)器的設(shè)定值(數(shù)字前加K),輔助繼電器M、定時器T、計數(shù)器C、狀態(tài)S等的編號,執(zhí)行應(yīng)用指令操作數(shù)中的數(shù)值與指令動作(數(shù)字前加K)。
2. 十六進(jìn)制數(shù)(HEX:Hexadecimal)
用途與十進(jìn)制數(shù)一樣,用于指定應(yīng)用指令中的操作數(shù)與指定動作(數(shù)字前加H)。
3. 二進(jìn)制數(shù)(BIN:Binary)
在PLC內(nèi)部所有數(shù)值都以二進(jìn)制的形式進(jìn)行處理。對于負(fù)數(shù)而言,PLC內(nèi)部以補(bǔ)碼來表現(xiàn)。
4. 八進(jìn)制數(shù)(OCT:Octal)
PLC的輸入、輸出繼電器軟元件編號以八進(jìn)制數(shù)值進(jìn)行分配。
5. BCD碼(BCD:Binary Code Decimal)
BCD碼就是將構(gòu)成十進(jìn)制數(shù)每位上0~9的數(shù)值以四位二進(jìn)制表示的形式。
6. 實(shí)數(shù)(浮點(diǎn)數(shù))
通過浮點(diǎn)數(shù)運(yùn)算可以提高運(yùn)算結(jié)果的精度。PLC內(nèi)部以二進(jìn)制浮點(diǎn)數(shù)進(jìn)行浮點(diǎn)運(yùn)算,但可以采用10進(jìn)制浮點(diǎn)數(shù)進(jìn)行監(jiān)控。
二進(jìn)制浮點(diǎn)數(shù)使用編號連續(xù)的一堆數(shù)據(jù)寄存器進(jìn)行存儲,占用32位,最高位為符號位。
對于用戶而言,這種二進(jìn)制浮點(diǎn)數(shù)的表示形式不易理解,所以可以將其轉(zhuǎn)換成十進(jìn)制浮點(diǎn)數(shù),十進(jìn)制浮點(diǎn)數(shù)也占用編號連續(xù)的一堆數(shù)據(jù)寄存器,但它分為尾數(shù)和指數(shù)兩部分,例如對于十進(jìn)制浮點(diǎn)數(shù)(D1,D0)而言: