<big id="ferl7"></big>

        <label id="ferl7"><sub id="ferl7"><rt id="ferl7"></rt></sub></label>

          西門(mén)子PLC 通訊之Modbus地址問(wèn)題分析

          Modbus地址實(shí)際上分為兩種情況即:

          PLCModbus主站,Modbus地址和PLC手冊里的地址一致與PLC作從站,PLC不用管什么Modbus地址。
            Modbus地址實(shí)際上分為兩種情況。下面以西門(mén)子S7-200/S7-200SMART/S7-1200為例來(lái)說(shuō)明:
            第一種情況:PLCModbus主站,Modbus地址和PLC手冊里的地址一致。例如作主站的S7-200MBUS_MSG指令用于向Modbus從站發(fā)送請求消息,和處理從站返回的響應消息。要讀取從站(另一臺S7-200)的I0.0開(kāi)始的地址區時(shí),它的輸入參數AddrModbus地址)為10001。S7-200從站保持寄存器的V區起始地址為VB200時(shí),要讀取從站VW200開(kāi)始的V存儲區時(shí),保持寄存器的地址是40001。
            第二種情況:PLC作從站,PLC不用管什么Modbus地址,等著(zhù)主站來(lái)讀寫(xiě)它的地址區就是了。
            主站的計算機軟件(例如
          DCS組態(tài)軟件)的編程人員需要編寫(xiě)實(shí)現Modbus通信的程序,首先需要確定ModbusRTU的報文結構。他們一般不熟悉PLC,因此PLC的編程人員往往需要和上位機軟件的編程人員一起來(lái)討論Modbus的報文結構。
            最容易出問(wèn)題的就是報文里Modbus地址與PLC存儲區地址的對應關(guān)系。曾經(jīng)有工作人員做過(guò)的一個(gè)系統的上位機是專(zhuān)用的組態(tài)軟件,通過(guò)分析GEPLC手冊給出的CRC的循環(huán)異或計算實(shí)例每一步的中間數據,編寫(xiě)出了CRC計算的C語(yǔ)言程序。通過(guò)實(shí)驗驗證了Modbus報文結構和CRC的計算的可行性。
            S7PLC手冊給出的Modbus地址與Modicon公司和GE公司PLC使用的地址相同,是基于1的地址,即同類(lèi)元件的首地址為1。而
          西門(mén)子PLC采用的是基于0的地址,即同類(lèi)元件的首地址為0。Modbus報文中西門(mén)子PLCModbus地址也采用基于0的地址。
            PLC系統手冊中的Modbus地址的最高位用來(lái)表示地址區的類(lèi)型,例如I0.0Modbus地址為10001。因為地址區類(lèi)型的信息已經(jīng)包含在報文的功能碼中了,報文中S7-200I0.0Modbus地址不是10001,而是0。報文中其他地址區的Modbus地址也應按相同的原則處理。例如當S7-200從站保持寄存器的V區起始地址為VB200時(shí),VW200對應的保持寄存器在報文中的Modbus地址為0,而不是40001。

          国产AV无码专区亚洲AV|欧美色中文字幕在线|欧美a级毛欧美|亚洲国产激情一区二区|亚洲gv天堂gv无码男同
          <big id="ferl7"></big>

              <label id="ferl7"><sub id="ferl7"><rt id="ferl7"></rt></sub></label>