xuweid123
級別: 探索解密
![]() |
如題,公司的程序很大,見圖,左側(cè)有很多塊程序,這樣的程序如何掃描,是上面的程序掃描完再往下掃描下面的,一排一排的, 還是所有程序一起從頭往下掃描?掃描速度應(yīng)該是很快的吧?? 另外就是一個(gè)變址Z的問題,我知道配合軟元件的使用方法,但就是給Z賦值指令問題,一段程序中就可能數(shù)次賦值,而且是 SM400常通的繼電器后面直接輸出為inc z0,然后下面過很多排還有SM400做輸入,直接輸出rst z0,z0很是搞不懂,而且像圖上 別的塊的程序中也分別給z0賦值,也有好幾處指令賦值和復(fù)位。這樣很多地方都給Z0賦值,到底哪一個(gè)有效呢??還是每一塊的只在 那一塊程序中起作用,按我的理解應(yīng)該也不是,因?yàn)镸、x、y等指令所有塊的程序中都會自己變化,但沒有這樣的賦值及復(fù)位條件, 實(shí)在想不通這個(gè)變址賦值問題啊? |
---|---|
|
john42tw
級別: 網(wǎng)絡(luò)英雄
![]() |
每一個(gè)設(shè)計(jì)師都有自己的風(fēng)格。 但PLC 基本運(yùn)行及規(guī)則不會改變。 1.程序如何掃描---->上面的程序掃描完再往下掃描下面的,一排一排的。 2.Z賦值指令問題--->因?yàn)閆的數(shù)量是有限制的,所以在節(jié)約使用。 推測:在這程式一段使用完後,將所需的取走; 下一段程式歸零後再使用。 |
---|---|
本帖最近評分記錄: |
290164396
級別: 探索解密
![]() |
每個(gè)工程師的編程方法不一樣,但是你要多深度研究定會發(fā)現(xiàn)一些奧妙出來的 |
---|---|
|
xuweid123
級別: 探索解密
![]() |
關(guān)鍵左邊看有很多塊的程序,有的每一塊程序都有復(fù)位和賦值指令,就專用這一個(gè)Z0,程序開頭先復(fù)位,后面過一段為sm400輸出inc z0,然后下面過幾一些程序又是sm400,輸出rst z0,再過一陣又是sm400 inc z0,關(guān)鍵是z0用了很多次,每塊程序都用很多次。不說z1,z2等等了。 |
---|---|
|
楓落云端
施主,腳抬一下
級別: 略有小成
![]() ![]() |
每段程序你可以看一下引用Z0時(shí),應(yīng)該都是先把Z0的值MOV到一個(gè)臨時(shí)寄存器中,比如MOV Z0 D0,之后再把Z0清零或者賦一個(gè)初始值,等到這段程序或者這段功能完成后,馬上又把Z0之前的值賦值回去,如MOV D0 Z0。其實(shí)就是醬油瓶原理,A瓶有醬油,B瓶有醋,怎么把醬油放到B瓶,把醋放到A瓶;那就再拿多一個(gè)空瓶,先把醬油倒入空瓶,再把醋倒入A瓶,最后把把醬油倒入B瓶。最后的結(jié)果空瓶還是空瓶,但是A瓶和B瓶已經(jīng)交換了材料。仔細(xì)想想這個(gè)原理是不是和Z0多次賦值使用類似 |
---|---|
|