34272999
級別: 略有小成
|
無意中發(fā)現(xiàn),s7-200 傳送指令MOV_W 傳送數(shù)據(jù)的時候,不能把數(shù)據(jù)傳送到連續(xù)的字里面(例如VW1,VW2)以下是我的測試程序 LD SM0.0 MOVW 1, VW1 MOVW 1, VW2 LDW= VW1, 1 = Q0.0 LDW= VW2 1 = Q0.2 這個程序我在CPU226上測試過,結(jié)果Q0.2動作,但是Q0.1不動作,但是換成不連續(xù)的字的時候,例如(VW0和VW2或者VW1和VW3)結(jié)果兩個輸出都能動作! 一直想不通這是為什么?求教!!謝謝!! |
---|---|
|
cvlsam
富士低壓,POD(觸摸屏),PLC專賣
級別: VIP會員
|
從理論上來說,VW1包括,VB1和VB2,而VW2包括VB2,VB3,因此,當(dāng)你使用LDW的時候,造成了地址重疊。 請注意,僅僅是理論上來講,實(shí)際在常規(guī)應(yīng)用中,一般字的存儲空間地址符號以偶數(shù)開始,如VW0,VW2,VW4。 因此,如果你使用VW0和VW2,是沒有問題的,因?yàn)榈刂窙]有重疊。 Regards |
---|---|
|
wwcwwc
級別: VIP會員
|
樓上說的是.就是前段時間我在站上發(fā)的程序,S7_200和TP177A例子,寫的時侯沒有發(fā)現(xiàn)地址重疊了,在現(xiàn)場調(diào)試時才發(fā)現(xiàn)的.不但要多看相關(guān)書籍,現(xiàn)場還要有一定的經(jīng)驗(yàn)累積. |
---|---|
|
flin124
級別: 略有小成
|
改為這樣就可以了 LD SM0.0 MOVW 1, VW1 MOVW 1, VW2 LDW= VB2, 1 = Q0.0 LDW= VB3 1 = Q0.2 |
---|---|
|
醉湮邃虞
醉湮邃虞話老黑
級別: 略有小成
|
沒錯,地址重疊: PLC中的地址排列不論MB,還是IB,QB,VB,其地址增量是1 MW,IW,VW其地址增量是2 VD,MD等增量是4 也就是PLC中,只有字節(jié)是連續(xù)的地址空間,同樣的空間還用來存放字或雙字,比如 比如程序中使用了VD100, 也就包含使用了:vb100--vb103四個字節(jié) 或者VW100和VW102 VW100 包含 VB100 和VB101. 如果使用連續(xù)的VD地址空間,應(yīng)該是 VD100,VD104 VD108,VD112..............增量是4 |
|
---|---|---|
|