1. <pre id="srmtd"></pre>
      
      
    2. <menuitem id="srmtd"></menuitem>

    3. S7-200 SMART Modbus 通訊常見(jiàn)問(wèn)題

      常見(jiàn)問(wèn)題

       

      S7-200 SMART是否支持Modbus ASCII通信模式?

      STEP 7-Micro/WIN SMART軟件未提供Modbus ASCII通信模式指令庫(kù)。S7-200 SMART CPU若用于Modbus ASCII通信時(shí),則需要用戶使用自由口通信模式進(jìn)行編程。

       

      S7-200 SMART CPU集成的RS485 端口(端口 0 )以及SB CM01信號(hào)板(端口 1)兩個(gè)通信端口能否同時(shí)作為Modbus RTU主站或者同時(shí)作為Modbus RTU從站?

      S7-200 SMART v2.2版本支持兩個(gè)通信端口同時(shí)做MODBUS RTU主站,不支持同時(shí)做MODBUS RTU從站。

       

       

      S7-200 SMART CPU作為 Modbus RTU 主站如何訪問(wèn) Modbus 地址范圍大于49999 的保持寄存器?

      通常Modbus協(xié)議的保持寄存器范圍在4000149999之間,這個(gè)范圍對(duì)于多數(shù)應(yīng)用來(lái)說(shuō)已經(jīng)足夠了,但有些Modbus從站保持寄存器區(qū)的地址會(huì)超出該范圍。Modbus RTU主站協(xié)議庫(kù)支持保持寄存器地址范圍為(4000149999)或者(400001465536)。如果Modbus 從站地址范圍為400001到465536,只需在調(diào)用 MBUS_MSG 子程序時(shí)給Addr參數(shù)賦相應(yīng)的值即可,如416768

       

      S7-200 SMART CPU作為Modbus RTU主站,多次調(diào)用MBUS_MSG指令時(shí),為什么該指令會(huì)出現(xiàn)6#錯(cuò)誤代碼?

      1.同一時(shí)間只能有一條MBUS_MSG指令處于激活狀態(tài),如果激活多條MBUS_MSG指令,將執(zhí)行第一條MBUS_MSG指令,所有后續(xù)MBUS_MSG指令將中止執(zhí)行并出現(xiàn)6#錯(cuò)誤代碼。多條MBUS_MSG指令的執(zhí)行需要采用輪詢方式。

      2. Modbus庫(kù)存儲(chǔ)區(qū)中分配的建議地址區(qū)與編程中已使用的V存儲(chǔ)區(qū)有重疊。

       

      S7-200 SMART CPU作為Modbus RTU主站,從站故障或者通信線路斷開(kāi)時(shí),主站會(huì)嘗試發(fā)送多次請(qǐng)求報(bào)文,從而導(dǎo)致通信時(shí)間過(guò)長(zhǎng)。如何減少主站的重發(fā)次數(shù),以提高通信效率?

      MBUS_MSG指令被激活時(shí)將發(fā)送Modbus請(qǐng)求報(bào)文幀,如果在Timeout參數(shù)定義的時(shí)間間隔內(nèi)主站未接收到從站應(yīng)答,Modbus RTU主站協(xié)議庫(kù)默認(rèn)的情況下還會(huì)再發(fā)送2Modbus請(qǐng)求報(bào)文幀;在最后一次請(qǐng)求報(bào)文幀發(fā)送后,經(jīng)過(guò)Timeout 參數(shù)定義的時(shí)間間隔后還未收到應(yīng)答時(shí),MBUS_MSG指令的Done完成位才被設(shè)置為1。將mModbusRetries變量的數(shù)值由2改為0,即可取消Modbus請(qǐng)求報(bào)文幀的重試次數(shù)。mModbusRetries變量的絕對(duì)地址可通過(guò)查詢Modbus RTU主站協(xié)議庫(kù)的符號(hào)表獲取。

       

      為什么有的HMI軟件使用Modbus RTU協(xié)議可以讀取作為Modbus RTU從站S7-200 SMART CPU的數(shù)據(jù),但是不能寫入數(shù)據(jù)?

      可能此軟件使用Modbus功能15寫多個(gè)開(kāi)關(guān)量輸出功能到S7-200 SMART CPU時(shí),沒(méi)有遵守從站協(xié)議中以整字節(jié)地址邊界(如Q0.0、Q2.0)開(kāi)始、以8的整數(shù)倍為位個(gè)數(shù)的規(guī)約。定義HMI 軟件嚴(yán)格執(zhí)行此規(guī)律可以避免發(fā)生寫入錯(cuò)誤的情況。

       

      為什么有的 HMI 軟件使用 Modbus RTU 協(xié)議讀取作為 Modbus RTU 從站 S7-200 SMART CPU 的浮點(diǎn)型數(shù)據(jù)時(shí)會(huì)出現(xiàn)錯(cuò)誤?

      可能此HMI軟件使用Modbus RTU通信協(xié)議時(shí),處理保持寄存器中浮點(diǎn)數(shù)的存儲(chǔ)格式與西門子的浮點(diǎn)數(shù)存儲(chǔ)格式不同。西門子的PLC遵循高字節(jié)低地址、低字節(jié)高地址的規(guī)約。 
      Modbus RTU
      的保持寄存器以為單位,1個(gè)浮點(diǎn)型數(shù)據(jù)則由2個(gè)構(gòu)成。HMI軟件在處理時(shí)可能會(huì)將保持寄存器的兩個(gè)互換位置,造成不能識(shí)別以西門子格式表示的浮點(diǎn)數(shù)。如果HMI軟件一方無(wú)法處理這種浮點(diǎn)數(shù),則可在S7-200 SMART CPU中編程將存入保持寄存器區(qū)的浮點(diǎn)數(shù)的高和低互換。

       

      S7-200 SMART緊湊型CPU作為Modbus RTU從站時(shí),已經(jīng)將MBUS_INIT指令的Mode 輸入?yún)?shù)設(shè)置為1了,但是MBUS_SLAVE指令還是會(huì)出現(xiàn)10#錯(cuò)誤(從站功能未啟用)?

      S7-200 SMART緊湊型CPU不能擴(kuò)展信號(hào)模塊,不具有模擬量輸入通道,如果MBUS_INIT指令的MaxAI輸入?yún)?shù)設(shè)置不為0,則MBUS_SLAVE指令會(huì)出現(xiàn)10#錯(cuò)誤。

       

      S7-200 SMART CPU作為Modbus RTU從站時(shí),是否支持Modbus RTU主站發(fā)送的廣播命令?

      S7-200 SMART CPU作為Modbus RTU從站時(shí),不支持廣播命令。

      日韩无码a片精彩视频,精品国产一区二区三区免费看,U久久精品国产99国产精品亚洲,亚洲色欧美色国产精品

        1. <pre id="srmtd"></pre>
          
          
        2. <menuitem id="srmtd"></menuitem>