久久成人国产精品一区二区,在线观看成人网站,精品久久久久久成人AV,国产成人无码免费网站

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

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

深入理解Modbus協(xié)議的數(shù)據(jù)模型和地址模型,西門子plc的通訊

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

在使用Modbus協(xié)議編程的時候,會遇到諸如40001、10001之類的地址,比如前面的文章《實例:S7-200 SMART通過Modbus-RTU讀取溫濕度傳感器數(shù)據(jù)》,讀取溫濕度傳感器的寄存器地址用的是40001,這究竟是代表什么意思呢?今天這篇文章,我們來談?wù)凪odbus協(xié)議的數(shù)據(jù)模型和地址模型,這樣大家就能理解這個問題。

深入理解Modbus協(xié)議的數(shù)據(jù)模型和地址模型,西門子plc的通訊
1、Modbus協(xié)議的數(shù)據(jù)模型

數(shù)據(jù)模型是對可訪問數(shù)據(jù)的一種抽象,Modbus協(xié)議的數(shù)據(jù)模型定義了四種可訪問的數(shù)據(jù),分別是:

離散量輸入(Discrete Input);
線圈(Coils);
輸入寄存器(Input registers);
保持寄存器(Holding registers);
其中,離散量輸入和線圈只支持以位(bit)的方式進(jìn)行訪問,輸入寄存器和保持寄存器只支持以字(WORD)的方式進(jìn)行訪問;離散量輸入和輸入寄存器只支持以只讀的方式進(jìn)行訪問,而線圈和保持寄存器既可以讀也可以寫;

數(shù)據(jù)模型中成員的特點如下面的表格所示:

 
既然數(shù)據(jù)模型是一種抽象,在實際使用時必須將其映射到真實的物理存儲區(qū)才能被訪問。

Modbus協(xié)議允許設(shè)備將四種數(shù)據(jù)分別映射到不同的存儲區(qū)塊中,各個區(qū)塊之間相互獨立,使用不同的功能碼可讀取到不同的數(shù)值,如下圖所示:

Modbus數(shù)據(jù)模型映射到不同的存儲區(qū)塊 
圖1:Modbus數(shù)據(jù)模型映射到不同的存儲區(qū)塊

Modbus協(xié)議也允許設(shè)備將四種數(shù)據(jù)映射到同一存儲區(qū)塊中,這樣通過不同的功能碼讀取數(shù)據(jù)可能會得到相同的數(shù)據(jù)(比如:輸入寄存器和保持寄存器為同一物理區(qū)塊),如下圖所示:

Modbus數(shù)據(jù)模型映射到同一區(qū)塊 
圖2:Modbus數(shù)據(jù)模型映射到同一區(qū)塊

數(shù)據(jù)模型中的每一種數(shù)據(jù)都最多允許有65536個元素(編號1~65536),元素的地址編號從0開始,因此地址的范圍為:0~65535;

需要說明的是:65536只是協(xié)議允許的最大元素范圍,但并不要求全部實現(xiàn)。Modbus協(xié)議允許設(shè)備根據(jù)自己的實際情況實現(xiàn)部分元素,甚至不要求實現(xiàn)模型中全部四種數(shù)據(jù);

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

為了簡化數(shù)據(jù)模型與設(shè)備存儲區(qū)的對應(yīng)關(guān)系,引入了一種地址模型。該模型通過編號的方式對不同類型數(shù)據(jù)進(jìn)行區(qū)分,各數(shù)據(jù)的地址編號請看下面的表格:

modbus地址模型 
Modbus地址模型的編號從1開始。

由于每一種數(shù)據(jù)都最大支持65536個元素,因此理論上,

對于線圈型數(shù)據(jù)來說,其地址范圍為:000001~065536;

類似的,

離散量輸入,其地址范圍為:100001~165536;

輸入寄存器,其地址范圍為:300001~365536;

保持寄存器,其地址范圍為:400001~465536;

由于65536是比較大的數(shù)值,實際應(yīng)用一般不需要這么大的存儲區(qū),因此PLC廠家普遍采用的是10000以內(nèi)的地址范圍,即:

線圈地址范圍:00001~09999;

離散量輸入地址范圍:10001~19999;

輸入寄存器地址范圍:30001~39999;

保持寄存器地址范圍:40001~49999;

有了該地址模型,我們就可以從Modbus寄存器的地址判斷要訪問的區(qū)塊的類型。比如本文開頭提到到地址40001就是保持存儲器的第一個值的地址,而10001就是離散量輸入的第一個值的地址;要注意的是,保持寄存器和輸入寄存器的每個值的大小為16bits(字),而線圈和離散量輸入每個值的大小為1bit(位);

各PLC廠家根據(jù)PLC的實際情況,將Modbus的地址模型映射到實際的存儲區(qū)。一般來說,線圈對應(yīng)過程輸出映像區(qū)(Q);離散量輸入對應(yīng)過程輸入映像區(qū)(I);輸入寄存器對應(yīng)模擬量輸入(AI);保持寄存器對應(yīng)數(shù)據(jù)塊或V存儲區(qū)或M存儲區(qū)。以西門子S7-200 SMART為例,其Modbus地址與存儲器地址的對應(yīng)關(guān)系如下表所示:

modbus地址對應(yīng)的s7-200存儲區(qū) 
Modbus地址模型對于Modbus-RTU/ASCII和Modbus-TCP協(xié)議都是適用的。

Tags:Modbus協(xié)議  
責(zé)任編輯:admin
請文明參與討論,禁止漫罵攻擊,不要惡意評論、違禁詞語。 昵稱:
1分 2分 3分 4分 5分

還可以輸入 200 個字
[ 查看全部 ] 網(wǎng)友評論
推薦文章
最新推薦
關(guān)于我們 - 聯(lián)系我們 - 廣告服務(wù) - 友情鏈接 - 網(wǎng)站地圖 - 版權(quán)聲明 - 在線幫助 - 文章列表
返回頂部
刷新頁面
下到頁底
晶體管查詢
久久成人国产精品一区二区,在线观看成人网站,精品久久久久久成人AV,国产成人无码免费网站
    <li id="8g3ty"><tbody id="8g3ty"><th id="8g3ty"></th></tbody></li>
    <label id="8g3ty"><samp id="8g3ty"></samp></label>
  • <span id="8g3ty"></span>

    1. <center id="8g3ty"><optgroup id="8g3ty"></optgroup></center>
    2. <bdo id="8g3ty"><meter id="8g3ty"><bdo id="8g3ty"></bdo></meter></bdo><center id="8g3ty"><optgroup id="8g3ty"></optgroup></center>
      <label id="8g3ty"><samp id="8g3ty"></samp></label>

    3. 主站蜘蛛池模板: 在线观看亚洲| 久久一综合视频| 亚洲永久免费av| 亚洲在线视频| 一区二区日韩免费看| 亚洲美女黄网| 亚洲午夜一区| 亚洲欧美99| 久久精品国产久精国产一老狼| 久久精品人人做人人爽电影蜜月| 欧美在线国产| 美女久久一区| 欧美激情一区二区三区在线视频观看 | 欧美体内she精视频在线观看| 欧美日韩在线三级| 国产精品伦理| 国产亚洲欧美aaaa| 一区二区自拍| 亚洲精品视频中文字幕| 在线视频欧美一区| 欧美一区二视频| 狼人社综合社区| 欧美日韩久久不卡| 国产精品一区=区| 一区二区亚洲| 99在线精品观看| 欧美一区三区三区高中清蜜桃| 久久先锋资源| 欧美日韩亚洲一区二区三区四区 | 欧美国产1区2区| 国产精品国产三级欧美二区| 国产亚洲精品久久久久动| 亚洲国产精品久久精品怡红院 | 国产日韩欧美在线一区| 亚洲国产成人在线播放| 一本一本久久a久久精品综合麻豆| 午夜精品99久久免费| 老司机久久99久久精品播放免费| 欧美日韩一区二| 国内精品久久国产| 99国产麻豆精品|