單價: | 2200.00元/臺 |
發(fā)貨期限: | 自買家付款之日起 天內(nèi)發(fā)貨 |
所在地: | 直轄市 上海 上海松江 |
有效期至: | 長期有效 |
發(fā)布時間: | 2023-11-25 01:41 |
最后更新: | 2023-11-25 01:41 |
瀏覽次數(shù): | 71 |
采購咨詢: |
請賣家聯(lián)系我
|
S7-200CN模塊 西門子6ES7214-2AS23-0XB8西門子觸摸屏代理商
6ES7214-1BG40-0XB0 | CPU 1214C AC/DC/Rly,14輸入/10輸出,集成2AI |
6ES7214-1AG40-0XB0 | CPU 1214C DC/DC/DC,14輸入/10輸出,集成2AI |
6ES7214-1HG40-0XB0 | CPU 1214C DC/DC/Rly,14輸入/10輸出,集成2AI |
6ES7215-1BG40-0XB0 | CPU 1215C AC/DC/Rly,14輸入/10輸出,集成2AI/2AO |
6ES7215-1AG40-0XB0 | CPU 1215C DC/DC/DC,14輸入/10輸出,集成2AI/2AO |
一、傳送指令是什么
區(qū)別于信息傳遞中的數(shù)據(jù)通信,我們今天講的PLC中的數(shù)據(jù)傳送指令是針對PLC內(nèi)部軟元件之間的數(shù)據(jù)傳送。基于之前所學(xué)的各種軟元件,確切地說,傳送指令是應(yīng)用于各種字元件之間的數(shù)據(jù)傳送。
每個字元件都存有自己的數(shù)據(jù),有的字元件非常霸道,想把自己的數(shù)據(jù)霸占別的字元件,在別的字元件上也存上自己的數(shù)據(jù),這個霸占的過程就是通過傳送指令實(shí)現(xiàn)的。
在三菱FX 2N中,傳送指令有 MOV、SMOV、CML、BMOV、FMOV五種,它們傳送數(shù)據(jù)的形式各不相同。那到底有哪些不同呢?我們接著往下看。
二、MOV傳送指令
從編程手冊中可以看到,MOV指令的操作數(shù)源址(S·)可以適用于所有的字元件,即S可以是任何的字元件,包括各種組合位元件、常數(shù)K、H等,而操作數(shù)終址(D·)除了不能是KnX、K、H外,可適用于其他字元件。且源址和終址都可進(jìn)行變址尋址。
當(dāng)驅(qū)動條件X0成立時,PLC將源址S中的數(shù)據(jù)傳送到終址D中,此時S的內(nèi)容不變,而D的內(nèi)容變得和S一樣。這就像我上文提到了,霸道S將自己的數(shù)據(jù)硬塞給D,并把D原來的數(shù)據(jù)給擠掉了,簡直是欺元件太甚!
MOV指令比較簡單,它是功能指令中應(yīng)用多的基本功能指令。MOV指令可以通過組合位元件的形式對各種位元件進(jìn)行清零和置位,或者對各種字元件進(jìn)行讀寫操作。
如下圖所示,執(zhí)行MOV K15 K2Y0后,將K15用二進(jìn)制數(shù)表示,并控制Y0~Y7的狀態(tài)。此時Y0~Y3的狀態(tài)變?yōu)?(ON),Y4~Y7的狀態(tài)變?yōu)?(OFF)。
再如MOV D10 D20,將D10的內(nèi)容傳送到D20中,若D10的內(nèi)容為(H98),則執(zhí)行該指令后D20的內(nèi)容也變?yōu)?H98)。
依次類推,MOV C0 D10 、MOV T0 D20、DMOV D0 D5等指令的理解相信難不倒大家,例如MOV T0 D20:將定時器T0的當(dāng)前值傳送到D20中……
MOV指令更多的應(yīng)用,還是要結(jié)合實(shí)際的案例分析才能深刻體會,本身該該指令的理解也不難,在這里我不再過多闡述。
三、SMOV數(shù)位傳送指令
所謂數(shù)位(digit),就是以4個二進(jìn)制數(shù)組成的數(shù)據(jù)量,類似于字節(jié)由8位二進(jìn)制數(shù)組成,字由16為二進(jìn)制數(shù)組成。顯然,一個字節(jié)可以由兩個數(shù)位組成,一個字可以由4個數(shù)位組成。
基于對數(shù)位的理解,SMOV數(shù)位傳送指令就是將數(shù)據(jù)按數(shù)位為單位進(jìn)行傳送。從編程手冊中可以看到,SMOV指令的動作為SMOV S· m1 m2 D· n,其中S、D是數(shù)據(jù)傳送的源址和終址,這個和MOV指令類似。
上文提到,一個字可以由4個數(shù)位組成,依此將這4個數(shù)位從右到左排列,編號分別為K1、K2、K3、K4,如上圖所示。
這樣我們就可以很快地解讀SMOV指令。如SMOV D0 K4 K2 D10 K2 : 將D0寄存器按數(shù)位劃分,從K4開始的連續(xù)2個數(shù)位的內(nèi)容傳送到D10的K2、K1兩個數(shù)位中,如下圖所示。在傳送數(shù)據(jù)的時候,連續(xù)數(shù)位是按從左到右排的,當(dāng)m1=K4時,多可以傳送4個連續(xù)數(shù)位K4、K3、K2、K1的內(nèi)容;當(dāng)m1=K3時,多可以傳送3個連續(xù)數(shù)位K3、K2、K1的內(nèi)容,依次類推。
顯然,m1、m2、n之間有著一定的約束關(guān)系,即只有當(dāng)m1≥m2,n≥m2,SMOV指令才有意義。例如SMOV S· m1 m2 D· n 中,若m1=K2,對S而言,只有K2、K1的內(nèi)容可以傳送,K4、K3的內(nèi)容無法傳送。
SMOV指令執(zhí)行有兩種模式:BCD碼執(zhí)行模式和十六進(jìn)制數(shù)執(zhí)行模式。當(dāng)特殊繼電器M8168=OFF時,SMOV指令執(zhí)行BCD碼模式;當(dāng)特殊繼電器M8168=ON時,SMOV指令執(zhí)十六進(jìn)制數(shù)模式。
所謂BCD碼其實(shí)就是十進(jìn)制數(shù),如上圖所示,當(dāng)M8168=OFF時,將D0的內(nèi)容(K9864)中的“986”傳送到D10中。顯然,此時D0的內(nèi)容只能為K0000~K9999。只有當(dāng)SMOV指令執(zhí)行十六進(jìn)制數(shù)執(zhí)行模式時,D0中的內(nèi)容可以為H0000~HFFFF。
SMOV數(shù)位傳送指令的理解也不難,在應(yīng)用的過程中注意m1、m2、n的大小就行了。
四、CML取反傳送指令
CML取反傳送指令,顧名思義,就是將數(shù)據(jù)取反后再傳送。所謂取反,就是將“1”變?yōu)椤?”,將“0”變?yōu)椤?”,如下圖所示,執(zhí)行指令CML D0 D10,若D0的內(nèi)容為(K13),將K13轉(zhuǎn)換為二進(jìn)制數(shù)后取反,再傳送到D10中。
CML
反傳送指令更為簡單,在這里我也不再過多講解。
五、BMOV成批傳送指令
BMOV成批傳送指令,和上文的幾種傳送指令有比較大的區(qū)別,因?yàn)樗鶄魉偷臄?shù)據(jù)比較多,是用于多個字元件之間數(shù)據(jù)傳送。簡單理解就是將首地址為S的n個字元件的數(shù)據(jù)傳送到以D為首地址的字元件中,其中n是傳送字元件的個數(shù),n≤512。
例如BMOV D0 D10 K10:將D9~D0的數(shù)據(jù)分別傳送到D19~D10中。
在應(yīng)用BMOV指令時要注意的兩點(diǎn),一是字元件的編號重復(fù)問題。如下圖所示,執(zhí)行指令BMOV D10 D11 K5,若按編號小的元件開始傳送,先是D10的內(nèi)容傳送到D11中,D11的內(nèi)容傳送到D12中,D12的內(nèi)容傳送到D13中……顯然,傳送完畢后D15~D10的內(nèi)容相同,均為D10的內(nèi)容。
根據(jù)以上字元件編號重復(fù)的問題,在三菱FX 2N中,作出以下規(guī)定:
(1)當(dāng)源址編號大于終址編號時,其傳送順序從編號小的到編號大的;
(2)當(dāng)源址編號小于終址編號時,其傳送順序從編號大的到編號小的;
上圖的指令BMOV D10 D11 K5中,源址D10小于終址D11,其傳送順序從編號大的開始,也就是先把D14的內(nèi)容傳送到D15中,把D13的內(nèi)容傳送到D14中……這樣就不會造成D11~D14的內(nèi)容無法傳送的問題。
在應(yīng)用BMOV指令時要注意的一點(diǎn)是數(shù)據(jù)傳送方向的問題。BMOV指令不僅可以將源址的數(shù)據(jù)傳送給終址,也可以調(diào)轉(zhuǎn)方向,將終址的數(shù)據(jù)傳送給源址,也就是說BMOV指令可以雙向傳送數(shù)據(jù)。
BMOV指令的數(shù)據(jù)傳送方向是由特殊繼電器M8024的狀態(tài)決定的,當(dāng)M8024=OFF時,傳送方向是從源址傳向終址;當(dāng)M8024=ON時,傳送方向是從終址傳向源址。
六、FMOV多點(diǎn)傳送指令
知道了BMOV成批傳送指令后,再來看FMOV多點(diǎn)傳送指令會簡單很多,如果說MOV指令是一對一、BMOV指令是多對多,那么FMOV指令就是一對多。
如上圖的編程手冊所示,當(dāng)驅(qū)動條件X0成立時,將字元件S的內(nèi)容傳送到起始地址為D的n個字元件中。像上文所說的,數(shù)據(jù)的傳送就像是字元件之間的相互霸占,而各種指令就是數(shù)據(jù)傳送的武器。MOV指令就像是手槍,霸道S通過MOV指令只能將自己的數(shù)據(jù)傳送給一個D,把D原來的數(shù)據(jù)給擠掉;FMOV指令就像是M416步槍,霸道S通過FMOV指令將自己的數(shù)據(jù)傳送給一批D,把n個D原來的數(shù)據(jù)都給擠掉??梢奆MOV指令的威力有多大。
S7-200CN模塊 西門子6ES7214-2AS23-0XB8西門子觸摸屏代理商西門子電源模塊代理商西門子PLC模塊代理商西門子CPU模塊代理商西門子交換機(jī)代理商西門子低壓繼電器代理商