日韩欧美视频第二区,秋霞成人午夜鲁丝一区二区三区,美女日批视频在线观看,av在线不卡免费

電子開發(fā)網(wǎng)

電子開發(fā)網(wǎng)電子設(shè)計 | 電子開發(fā)網(wǎng)Rss 2.0 會員中心 會員注冊
搜索: 您現(xiàn)在的位置: 電子開發(fā)網(wǎng) >> 電子開發(fā) >> PLC基礎(chǔ)入門教程 >> 正文

MODBUS協(xié)議用03功能碼為什么既能讀又能寫寄存器地址?

作者:佚名    文章來源:本站原創(chuàng)    點擊數(shù):    更新時間:2022/9/7

03 讀保持寄存器

40001-49999

字操作

單個或多個

不應(yīng)該是只能讀的嗎?

在使用Modbus協(xié)議的時候,經(jīng)常會遇到諸如40001、30001,10001之類的地址,這些數(shù)字代表什么含義呢?這其實是Modbus協(xié)議的數(shù)據(jù)模型和地址模型。

Modbus協(xié)議的數(shù)據(jù)模型

數(shù)據(jù)模型是對從站設(shè)備可訪問的數(shù)據(jù)進行抽象,Modbus協(xié)議的數(shù)據(jù)模型定義了四種可訪問的數(shù)據(jù):

數(shù)據(jù)區(qū)塊 數(shù)據(jù)類型 訪問類型
線圈(Coils) 布爾 讀/寫
離散量輸入(Discrete Input) 布爾 只讀
輸入寄存器(Input registers) 無符號2字節(jié)整型 只讀
保持寄存器(Holding registers) 無符號2字節(jié)整型 讀/寫

其中,離散量輸入和線圈數(shù)據(jù)類型是布爾量,因此只支持以位(bit)的方式進行訪問,輸入寄存器和保持寄存器數(shù)據(jù)類型是無符號2字節(jié)整型,因此支持以字的方式進行訪問。當(dāng)主設(shè)備訪問從設(shè)備的這些數(shù)據(jù)模型時,離散量輸入和輸入寄存器只支持以只讀的方式進行訪問,而線圈和保持寄存器既可以讀也可以寫。

地址前綴編號 編號范圍
(1~65536)
編號范圍
(1~9999)
數(shù)據(jù)區(qū)塊 數(shù)據(jù)類型 訪問類型
0 000001~065536 00001~09999 線圈(Coils) 布爾 讀/寫
1 100001~165536 10001~19999 離散量輸入
(Discrete Input)
布爾 只讀
3 300001~365536 30001~39999 輸入寄存器(Input registers) 無符號2字節(jié)整型 只讀
4 400001~465536 40001~49999 保持寄存器(Holding registers) 無符號2字節(jié)整型 讀/寫

數(shù)據(jù)模型中的每一種數(shù)據(jù)區(qū)塊都最多允許有65536(2^16)個元素,Modbus定義了每個數(shù)據(jù)元素的地址,范圍從0到65,535。但是每個數(shù)據(jù)元素的編號從1開始,范圍從1到65,536。

需要說明的是:65536只是協(xié)議允許的最大元素范圍,并不要求全部實現(xiàn)。Modbus協(xié)議允許設(shè)備根據(jù)自己的實際情況實現(xiàn)部分元素,甚至不要求實現(xiàn)模型中全部四種數(shù)據(jù)模型。譬如設(shè)備可能會選擇不執(zhí)行線圈、離散輸入或輸入寄存器,而只使用保持寄存器150至175和200至225。這是完全可以接受的,并且通過異常來處理無效的訪問。


Modbus協(xié)議的地址模型

雖然規(guī)范將不同的數(shù)據(jù)類型定義為存在不同的區(qū)塊中,并為每種類型分配一個本地地址范圍,但這并不一定會轉(zhuǎn)化為用于記錄或理解給定設(shè)備的Modbus可訪問內(nèi)存的直觀編址方案。

為了簡化數(shù)據(jù)模型與設(shè)備存儲區(qū)的對應(yīng)關(guān)系,又引入了地址模型的概念,通過編號的方式對不同類型數(shù)據(jù)進行區(qū)分,也就是通過特定的編號作為前綴加到所討論的數(shù)據(jù)地址中。如表中所示,通過0,1,3,4分別表示線圈,離散量輸入,輸入寄存器,和保持寄存器。

因此理論上,

線圈地址范圍:000001~065536
離散量輸入地址范圍:100001~165536
輸入寄存器地址范圍:300001~365536
保持寄存器地址范圍:400001~465536

由于65536是比較大的數(shù)值,實際應(yīng)用一般不需要這么大的存儲區(qū),因此設(shè)備廠家普遍采用的是10000以內(nèi)的地址范圍,即:
線圈地址范圍:00001~09999
離散量輸入地址范圍:10001~19999
輸入寄存器地址范圍:30001~39999
保持寄存器地址范圍:40001~49999

有了該地址模型,我們就可以從Modbus寄存器的地址判斷要訪問的區(qū)塊的類型。譬如常見到的寄存器地址40001/400001,最前面的4表明它是一個保持寄存器,后面的0001或者00001都是指第一個保持存儲器,并且它的地址是0。寄存器30004表明它是輸入寄存器,地址是3。寄存器10008表明它是離散量輸入,地址是7。

要注意的是,保持寄存器和輸入寄存器中的數(shù)值是2個字節(jié),而線圈和離散量輸入中數(shù)值大小僅為1bit (位)。

Tags:MODBUS,功能碼  
責(zé)任編輯:admin
相關(guān)文章列表
S7-200和組態(tài)王的連接,cpu226 PLC 與組態(tài)王如何連接
基于S7-200SMART實現(xiàn)Modbus TCP通信_200smart modbus tcp
三菱plc FX3U與三菱E800變頻器專用指令通信應(yīng)用,IVDR指令和 IVCK
三菱PLC的modbus-rtu通訊實例_三菱小型PLC FX3U系列Modbus 通訊教
西門子200SMART與眾辰變頻器的MODBUS通信實例40001和十六進制的轉(zhuǎn)
西門子S7-200 smart通過modbus rtu 協(xié)議采集K37A數(shù)據(jù)項目案例
昆侖通態(tài)MCGS觸摸屏和西門子V20變頻器之間的MODBUS通訊
Modbus通信協(xié)議介紹以及Modbus Poll、Slave軟件使用介紹_modbus 
【工具教程】Modbus Slave使用教程
干貨 | Modscan32  Modsim32 Modbus協(xié)議調(diào)試分享_modbus調(diào)試
Modscan32軟件的使用 Modsim32
西門子plc控制英威騰變頻器實例,西門子200SMART的MODBUS通訊!
施耐德PM500電量表通過MODBUS協(xié)議與組態(tài)王通訊
組態(tài)軟件的無線485通訊實例,組態(tài)王modbus通訊實例
組態(tài)王和三菱plc 基于數(shù)傳電臺的組態(tài)王控制實現(xiàn)遠程采集控制器PL
KingView組態(tài)王與信捷PLC通訊解決方案 MODBUS通訊設(shè)置
KingView組態(tài)王通過modbus與第三方設(shè)備通訊,如何實現(xiàn)字節(jié)或字的
組態(tài)王modbus通信用法教程modbus-rtu、modbus-tcp莫迪康通信配置
KingView組態(tài)王如何獲取modbus TCP數(shù)據(jù)?_組態(tài)王數(shù)據(jù)轉(zhuǎn)發(fā)modbust
組態(tài)王連接ModbusTCP設(shè)備,利用Modbus Slave模擬從站設(shè)備
請文明參與討論,禁止漫罵攻擊,不要惡意評論、違禁詞語。 昵稱:
1分 2分 3分 4分 5分

還可以輸入 200 個字
[ 查看全部 ] 網(wǎng)友評論
推薦文章
最新推薦
關(guān)于我們 - 聯(lián)系我們 - 廣告服務(wù) - 友情鏈接 - 網(wǎng)站地圖 - 版權(quán)聲明 - 在線幫助 - 文章列表
返回頂部
刷新頁面
下到頁底
晶體管查詢
主站蜘蛛池模板: 阳高县| 麻城市| 马鞍山市| 德化县| 昌吉市| 安宁市| 讷河市| 兴安盟| 临武县| 汉川市| 阳原县| 克东县| 化隆| 石阡县| 全州县| 洪雅县| 潼南县| 襄垣县| 桃江县| 芦山县| 长垣县| 信宜市| 观塘区| 闻喜县| 谢通门县| 南皮县| 南岸区| 紫云| 神农架林区| 垫江县| 宣化县| 伊川县| 永德县| 攀枝花市| 正镶白旗| 瑞昌市| 黄平县| 霍林郭勒市| 法库县| 平阴县| 寻甸|