數據塊寄存器使用錯誤
西門子 S7-300/400 系列 CPU 擁有兩個數據塊寄存器,它們保存著當前打開的數據塊編號: DB 寄存器保存著打開的共享數據塊編號
DI 寄存器保存著打開的背景數據塊編號
特別提示:DI 寄存器主要用于 FB 引用背景數據塊,但也常用于程序中同時打開兩個數據塊的操作。如下圖的程序即完成了將 DB1.DBW0(16#2222)傳送到 DB4.DBW0 中的工作。用戶請注意程序中的格式(如 T DIW0),詳細信息請參考 STEP7 編程手冊中的尋址方式部分。
上述例子也可以使用如下語句直接完成:
那么上述兩者有何區別呢?從兩圖中的對比可以看出:
也就是說,對于數據塊中地址的完整引用,將影響到DB 寄存器的內容。那么對于下面的程序,我們將很容易發現其中的錯誤。
程序原目的:將 3333 傳送至DB1.DBW0 將 4444 傳送至 DB1.DBW2
故障分析:
由于程序的 Network5 中使用了對于 DB4.DBW0 的比較指令,此指令改變了 DB 寄存器的內容,因而我們將得到如下的錯誤結果,DB1.DBW2 并沒有得到正確數值,正確數值 4444 被錯誤地送到了DB4.DBW2中:
審核編輯:郭婷
-
寄存器
+關注
關注
31文章
5433瀏覽量
124331 -
西門子
+關注
關注
98文章
3169瀏覽量
118194
原文標題:西門子Step7 數據塊寄存器使用錯誤
文章出處:【微信號:gh_a8b121171b08,微信公眾號:機器人及PLC自動化應用】歡迎添加關注!文章轉載請注明出處。
發布評論請先 登錄
基于西門子S7-200PLC以太網模塊的STEP7通訊配置實例

西門子S7-200PLC借助于以太網模塊與STEP7上位機通訊應用配置案例

西門子S7-200 PLC:數據采集與遠程調試上下載解決方案
工業智能網關可以采集西門子PLC嗎
在西門子TIA Portal中使用CFC語言實現電機控制的全流程

【答疑】網關返回錯誤?Modbus地址與寄存器地址別混淆!

西門子TIA Portal中函數FC和函數塊FB的相互轉換

西門子PLC S7-1500系列介紹

Profinet 轉 EtherNet/IP 網關怎樣化解西門子 S7 - 1500 PLC 與 AB PLC 之間的通訊難題

西門子300PLC ProfibusDP轉MODBUS TCP與巴魯夫傳感器數據通訊解決方案

西門子數控機床數據采集方案

評論