国内精品一区二区三区四区视频-国产成人激情视频在线免费看-av中文字幕一区人妻-精精国产XXXX视频第一次

談談MODBUS協議數據模型和地址模型

2020/7/27 1:32:08 人評論 次瀏覽 分類:電子技術  文章地址:http://yigongchang99.com/tech/3258.html

在使用MODBUS協議編程的時候,會遇到諸如40001、10001之類的地址,這究竟是代表什么意思呢?昌暉儀表來談談MODBUS協議的數據模型和地址模型,這樣大家就能理解這個問題。

1、MODBUS協議的數據模型

數據模型是對可訪問數據的一種抽象,MODBUS協議的數據模型定義了四種可訪問的數據,分別是:
◆離散量輸入(Discrete Input);
◆線圈(Coils);
◆輸入寄存器(Input registers);
◆保持寄存器(Holding registers);
其中,離散量輸入和線圈只支持以位(bit)的方式進行訪問,輸入寄存器和保持寄存器只支持以字(WORD)的方式進行訪問;離散量輸入和輸入寄存器只支持以只讀的方式進行訪問,而線圈和保持寄存器既可以讀也可以寫。


數據模型中成員的特點如下面的表格所示:

MODBUS協議定義的數據模型


區塊               訪問長度      訪問方式    說明
離散量輸入     位(bit)         只讀            數據由IO系統提供
線圈               位(bit)         讀/寫           可通過應用程序改寫
輸入寄存器     字(word)     只讀            數據由IO系統提供
保持寄存器     字(word)     讀/寫           可通過應用程序改寫
既然數據模型是一種抽象,在實際使用時必須將其映射到真實的物理存儲區才能被訪問。

MODBUS協議允許設備將四種數據分別映射到不同的存儲區塊中,各個區塊之間相互獨立,使用不同的功能碼可讀取到不同的數值,如下圖所示:
MODBUS數據模型映射到不同的存儲區塊
圖1 MODBUS數據模型映射到不同的存儲區塊

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


數據模型中的每一種數據都最多允許有65536個元素(編號1-65536),元素的地址編號從0開始,因此地址的范圍為:0-65535。需要說明的是:65536只是協議允許的最大元素范圍,但并不要求全部實現。MODBUS協議允許設備根據自己的實際情況實現部分元素,甚至不要求實現模型中全部四種數據;


2、MODBUS協議的地址模型

為了簡化數據模型與設備存儲區的對應關系,引入了一種地址模型。該模型通過編號的方式對不同類型數據進行區分,各數據的地址編號請看下面的表格:
MODBUS地址模型

MODBUS數據模型/數據區     MODBUS地址編號
線圈                                       0
離散量輸入                             1
輸入寄存器                             3
保持寄存器                             4
MODBUS地址模型的編號從1開始。

由于每一種數據都最大支持65536個元素,因此理論上,對于線圈型數據來說,其地址范圍為000001-065536;類似的,離散量輸入,其地址范圍為100001-165536;輸入寄存器,其地址范圍為300001-365536;保持寄存器,其地址范圍為400001-465536。


由于65536是比較大的數值,實際應用一般不需要這么大的存儲區,因此PLC廠家普遍采用的是10000以內的地址范圍,即:線圈地址范圍為00001-09999;離散量輸入地址范圍為10001-19999;輸入寄存器地址范圍為30001-39999;保持寄存器地址范圍為40001-49999。


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


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


MODBUS地址         S7-200 SMART存儲區
00001-00256          Q0.0-Q31.7
10001-10256          I0.0-I31.7
30001-30056          AIW0-AIW110
40001-4××××        V-V+2*(××××-1)

MODBUS地址模型對于MODBUS-RTU/ASCII和MODBUS-TCP協議都是適用的。

好了,關于MODBUS的地址模型與數據模型昌暉儀表就先介紹到這里。

相關閱讀

RS485和MODBUS的區別與聯系
走進工業以太網協議Modbus TCP
電力系統串口通訊DL/T645,Modbus,DISA,101,103,104規約

共有訪客發表了評論 網友評論

  客戶姓名:
郵箱或QQ:
驗證碼: 看不清楚?
主站蜘蛛池模板: 午夜麻豆一区二区在线观看| 激情五月婷婷天天夜夜| 美女午夜福利在线视频| 日韩精品丝袜美熟女中出| 一区二区三区日韩欧美在线.| 一区二区三区欧美日韩亚洲| 国产高清在线观看激情片| 人妻熟妇乱又乱精品视频| 男人天堂网av在线播放| 中文在线三级中文字幕| 中文字幕av一区中文字幕天堂| 一区二区不卡精彩视频| 欧美日韩成人免费一区二区| 国产精品欧美激情免费的| 国产成人精品欧美一区二区| 18禁美女无遮挡久久久网站| 丰满老熟妇人妻双飞视频| 欧美日韩在线精品一区二区三区| 日韩三级在线一区二区 | 日韩亚洲欧美中文字幕在线观看| 日韩欧美成人性视频| 性感丝袜av在线精品| 日本丰满熟妇55乱偷| 中日韩欧美一区二区三区| 亚洲精选黄色在线观看| 国产成熟av一区二区三区| 福利丝袜av一区二区| 人妻精品在线观看视频| 亚洲欧美在线一区中文字幕| 人人妻人人澡人人爽精品欧美| 亚洲乱码一区二区在线| 在线观看日本一区午夜福利| 美女午夜福利在线视频| 精品亚洲少妇一区二区| 日韩久久蜜臀系列一区二区三区| 97国产福利在线观看| 国产精品日韩av一区| 国产在线啪一区二区三区| 欧美一区二区三区久久久精品| 午夜在线免费观看av| 一区二区三区日韩中文字幕|