qiaoshougang
級別: 略有小成
精華主題: 0
發(fā)帖數(shù)量: 266 個(gè)
工控威望: 398 點(diǎn)
下載積分: 5180 分
在線時(shí)間: 324(小時(shí))
注冊時(shí)間: 2007-05-18
最后登錄: 2024-10-22
查看qiaoshougang的 主題 / 回貼
樓主  發(fā)表于: 2012-12-20 15:16
如題,已知 MW118 中的內(nèi)容就是數(shù)據(jù)塊DB1中的地址,F(xiàn)在要將這個(gè)地址中的數(shù)據(jù)取出放到MD120中,該怎樣操作?【數(shù)據(jù)塊DB1中的數(shù)據(jù)都是浮點(diǎn)型的】

   OPN   DB     1
      L DBD[MW118    
      T     MD   120
以上編程不能通過,但是用
    OPN   DB     1
      L DBD[MD118]
      T     MD   120
可以通過,但是仿真時(shí)CPU是STOP狀態(tài),本人剛接觸S7-300PLC,小白一個(gè),望各位大佬賜教,謝謝!

夜游神
cvlsam
富士低壓,POD(觸摸屏),PLC專賣
級別: VIP會員

精華主題: 3 篇
發(fā)帖數(shù)量: 6766 個(gè)
工控威望: 38367 點(diǎn)
下載積分: 2599 分
在線時(shí)間: 9497(小時(shí))
注冊時(shí)間: 2006-09-13
最后登錄: 2024-11-06
查看cvlsam的 主題 / 回貼
1樓  發(fā)表于: 2012-12-20 15:33
MD118與MD120發(fā)生了地址重疊
MD118由MW118,MW120組成,MD120由MW120與MW122組成。
造成CPU進(jìn)入STOP狀態(tài)可能是地址重疊后,導(dǎo)致間接尋址越界,你可以診斷模塊看看是不是OB121塊沒有導(dǎo)致進(jìn)入STOP狀態(tài)的。
例:訪問DB1.DBD100中的數(shù)據(jù)
L L#100
SLD 3              //左移3位,形成指針格式,用于間接尋址。
T  MD116
OPN DB1
L DBD[MD116]
T  MD120

Good  Luck~
本帖最近評分記錄:
  • 下載積分:+5(guochunyi) 熱心助人!
    cvlsam
    富士低壓,POD(觸摸屏),PLC專賣
    級別: VIP會員

    精華主題: 3 篇
    發(fā)帖數(shù)量: 6766 個(gè)
    工控威望: 38367 點(diǎn)
    下載積分: 2599 分
    在線時(shí)間: 9497(小時(shí))
    注冊時(shí)間: 2006-09-13
    最后登錄: 2024-11-06
    查看cvlsam的 主題 / 回貼
    2樓  發(fā)表于: 2012-12-20 15:53
    MD116中的數(shù)據(jù)必須是X.X格式,也就是左移3位或者乘以8后的數(shù)據(jù),只能是這樣~
    cvlsam
    富士低壓,POD(觸摸屏),PLC專賣
    級別: VIP會員

    精華主題: 3 篇
    發(fā)帖數(shù)量: 6766 個(gè)
    工控威望: 38367 點(diǎn)
    下載積分: 2599 分
    在線時(shí)間: 9497(小時(shí))
    注冊時(shí)間: 2006-09-13
    最后登錄: 2024-11-06
    查看cvlsam的 主題 / 回貼
    3樓  發(fā)表于: 2012-12-20 15:54
    引用
    引用第3樓qiaoshougang于2012-12-20 15:52發(fā)表的  :
    還要編寫OB121程序嗎?


    如果僅僅是為了防止PLC進(jìn)入停機(jī)狀態(tài),那么一個(gè)空的OB121足以……
    cvlsam
    富士低壓,POD(觸摸屏),PLC專賣
    級別: VIP會員

    精華主題: 3 篇
    發(fā)帖數(shù)量: 6766 個(gè)
    工控威望: 38367 點(diǎn)
    下載積分: 2599 分
    在線時(shí)間: 9497(小時(shí))
    注冊時(shí)間: 2006-09-13
    最后登錄: 2024-11-06
    查看cvlsam的 主題 / 回貼
    4樓  發(fā)表于: 2012-12-20 16:20
    引用
    引用第6樓qiaoshougang于2012-12-20 16:08發(fā)表的  :
    謝謝指教,現(xiàn)在能正常讀取數(shù)據(jù)了,但是CPU上SF燈還是亮著,對程序運(yùn)行有影響嗎?謝謝!


    仍然請進(jìn)行模塊診斷并貼出診斷信息。

    Good Luck~
    cvlsam
    富士低壓,POD(觸摸屏),PLC專賣
    級別: VIP會員

    精華主題: 3 篇
    發(fā)帖數(shù)量: 6766 個(gè)
    工控威望: 38367 點(diǎn)
    下載積分: 2599 分
    在線時(shí)間: 9497(小時(shí))
    注冊時(shí)間: 2006-09-13
    最后登錄: 2024-11-06
    查看cvlsam的 主題 / 回貼
    5樓  發(fā)表于: 2012-12-21 23:21
    引用
    引用第8樓qiaoshougang于2012-12-20 16:30發(fā)表的  :
    [attachment=98566]


    很明顯,地址越界……
    cvlsam
    富士低壓,POD(觸摸屏),PLC專賣
    級別: VIP會員

    精華主題: 3 篇
    發(fā)帖數(shù)量: 6766 個(gè)
    工控威望: 38367 點(diǎn)
    下載積分: 2599 分
    在線時(shí)間: 9497(小時(shí))
    注冊時(shí)間: 2006-09-13
    最后登錄: 2024-11-06
    查看cvlsam的 主題 / 回貼
    6樓  發(fā)表于: 2012-12-22 13:30
    引用
    引用第13樓qiaoshougang于2012-12-22 12:27發(fā)表的  :


    謝謝回答,就是這個(gè)錯(cuò)誤,可是怎么弄才能解決這個(gè)問題呢?我弄了好長時(shí)間了,望賜教,謝謝!


    解決你的程序,那是你的編程錯(cuò)誤,增加對數(shù)據(jù)塊長度的檢測,然后通過比較指令將你的尋址范圍控制在可控范圍內(nèi)……

    Regards
    cvlsam
    富士低壓,POD(觸摸屏),PLC專賣
    級別: VIP會員

    精華主題: 3 篇
    發(fā)帖數(shù)量: 6766 個(gè)
    工控威望: 38367 點(diǎn)
    下載積分: 2599 分
    在線時(shí)間: 9497(小時(shí))
    注冊時(shí)間: 2006-09-13
    最后登錄: 2024-11-06
    查看cvlsam的 主題 / 回貼
    7樓  發(fā)表于: 2012-12-22 14:11
    唉~~~~~

    數(shù)據(jù)塊長度檢測并不是通過頁面設(shè)定,而是通過編程來決定的。

    通過裝入DBLG來得到數(shù)據(jù)塊的長度,因?yàn)殚L度的反饋值為字節(jié),因此,如果你的數(shù)據(jù)塊的數(shù)據(jù)為4個(gè)字節(jié)的Real類型的話,你就要除以4,那就是一個(gè)塊中的最大尋址,然后用比較去控制你的尋址指針。

    正如你表示的,不超過255,可是,你顯示的數(shù)據(jù)塊中數(shù)據(jù)才51條,你尋址尋址52就越界,Ok?

    對于這個(gè)問題已經(jīng)討論的足夠深度了,你或許的編程水平還沒有達(dá)到這個(gè)水平,你需要花足夠的時(shí)間參閱StL手冊。

    Regards