技術頻道

      西門子PLC Modbus地址問題原因分析

        Modbus地址實際上分為兩種情況即PLC作Modbus主站,Modbus地址和PLC手冊里的地址一與PLC作從站,PLC不用管什么Modbus地址。

        Modbus地址實際上分為兩種情況。下面以西門子S7-200/S7-200SMART/和S7-1200為例來說明:

        第一種情況:PLC作Modbus主站,Modbus地址和PLC手冊里的地址一致,例如作主站的S7-200的MBUS_MSG指令用于向Modbus從站發送請求消息,和處理從站返回的響應消息。要讀取從站(另一臺S7-200)的I0.0開始的地址區時,它的輸入參數Addr(Modbus地址)為10001。S7-200從站保持寄存器的V區起始地址為VB200時,要讀取從站VW200開始的V存儲區時,保持寄存器的地址是40001。

        第二種情況:PLC作從站,PLC不用管什么Modbus地址,等著主站來讀寫它的地址區就是了。

        主站的計算機軟件(例如DCS或組態軟件)的編程人員需要編寫實現Modbus通信的程序,首先需要確定ModbusRTU的報文結構。他們一般不熟悉PLC,因此PLC的編程人員往往需要和上位機軟件的編程人員一起來討論Modbus的報文結構。

        最容易出問題的就是報文里Modbus地址與PLC存儲區地址的對應關系。曾經有工作人員做過的一個系統的上位機是專用的組態軟件,通過分析GEPLC手冊給出的CRC的循環異或計算實例每一步的中間數據,編寫出了CRC計算的C語言程序。通過實驗驗證了Modbus報文結構和CRC的計算的可行性。

        S7PLC手冊給出的Modbus地址與Modicon公司和GE公司PLC使用的地址相同,是基于1的地址,即同類元件的首地址為1。而西門子PLC采用的是基于0的地址,即同類元件的首地址為0。Modbus報文中西門子PLC的Modbus地址也采用基于0的地址。

        PLC系統手冊中的Modbus地址的最高位用來表示地址區的類型,例如I0.0的Modbus地址為10001。因為地址區類型的信息已經包含在報文的功能碼中了,報文中S7-200的I0.0的Modbus地址不是10001,而是0。報文中其他地址區的Modbus地址也應按相同的原則處理。例如當S7-200從站保持寄存器的V區起始地址為VB200時,VW200對應的保持寄存器在報文中的Modbus地址為0,而不是40001

      文章版權歸西部工控xbgk所有,未經許可不得轉載。

      PLC
      主站蜘蛛池模板: 亚洲日本中文字幕一区二区三区| 伊人久久一区二区三区无码 | 日韩精品一区二区三区不卡| 日韩精品一区二区三区大桥未久 | 波多野结衣一区在线| 精品一区二区三区在线视频| 日亚毛片免费乱码不卡一区 | 国产福利电影一区二区三区久久老子无码午夜伦不| 国产在线aaa片一区二区99| 精品国产AV无码一区二区三区| 麻豆文化传媒精品一区二区 | 精品一区二区三区视频| 黑巨人与欧美精品一区| 一区二区不卡在线| 美女毛片一区二区三区四区| 色偷偷久久一区二区三区| 亚洲乱色熟女一区二区三区丝袜| 亚洲一区二区视频在线观看 | 天海翼一区二区三区高清视频| 亚洲国产一区在线观看| 精品一区二区三区免费毛片爱| 日本午夜精品一区二区三区电影| 日韩欧国产精品一区综合无码| 久久久一区二区三区| 91精品国产一区二区三区左线| 无码精品人妻一区二区三区中| 消息称老熟妇乱视频一区二区| 国产精品毛片一区二区三区| 精品国产一区二区三区久久| 亚洲bt加勒比一区二区| 精品三级AV无码一区| 97精品一区二区视频在线观看| 国内自拍视频一区二区三区| 亚洲AV无码一区二区三区性色| 亚洲一区二区三区国产精品无码 | 日韩一区二区免费视频| 国产一区二区三区国产精品| 人妻体内射精一区二区| 中文字幕无码免费久久9一区9| 国产免费无码一区二区| 精品国产aⅴ无码一区二区|