加入收藏 在線留言 聯系我們
關注微信
手機掃一掃 立刻聯系商家
全國服務熱線18717946324
公司新聞
西門子PLC模塊控制器山東代理商
發布時間: 2022-11-04 12:59 更新時間: 2024-11-21 08:00

西門子PLC模塊控制器山東代理商

上海潯之漫智控技術公司在經營活動中精益求精,具備如下業務優勢:

SIEMENS可編程控制器

長期低價銷售西門子PLC,200,300,400,1200,西門子PLC附件,西門子電機,西門子人機界面,西門子變頻器,西門子數控伺服,西門子總線電纜現貨供應,歡迎來電咨詢系列產品,折扣低,貨期準時,并且備有大量庫存.長期有效   

歡迎您前來詢價.100分的服務.100分的質量.100分的售后.100分的發貨速度    

您的選擇您的支持是我的動力! ————致我親愛的客戶!

價格波動,請來電咨詢 

.6 Modbus RTU 從站常見問題

Modbus 從站的網絡地址與 S7-200 的 CPU 網絡地址有什么關系?

 

沒有關系。支持網絡通信的通信協議必須有其自己的網絡尋址規定。 Modbus 從站的地址只是它在 Modbus 網絡上的地址,而通常所說的 S7-200 CPU 地址是 CPU 在西門子的 PPI 網絡上的站地址。S7-200 CPU 的大部分通信功能都通過 PPI 網絡完成,例如編程、網絡讀寫通信等。

 

 如何理解 Modbus 地址與功能碼的區別?

 

Modbus 地址與 Modbus 的功能碼是兩個層次的概念。

 

根據 Modbus 通信協議,Modbus 數據的地址使用 00xxx、10xxx、30xxx 和 40xxx 的形式,分別表示數字量輸出、數字量輸入、模擬量輸入等數據地址。在使用 S7-200 的指令庫時,Modbus 數據地址與 S7-200 的 I/O 和數據存儲區地址間有特定的對應關系。

 

有些設備表明它支持 Modbus RTU 通信協議,但也詳細提供了讀寫數據的詳細通信幀格式,其中包括如何 Modbus 站的地址,需要讀寫數據類型、長度等等。數據幀有特定字節指出此指令讀寫的數據類型和地址,此字節的數據內容即所謂"功能碼",如功能 1 讀取單個/多個數字量輸出點的值。

 

支持 Modbus 協議的設備或軟件,使用時用戶直接設置或看到的應當是 Modbus 數據地址。Modbus 地址所訪問的數據,是通過各種"功能"讀寫而來。功能碼是 Modbus 地址的底層。如果 Modbus 通信的一方提供的所謂 Modbus 協議只有功能碼,則需要注意了解此功能號與 Modbus 地址間的對應關系。

Modbus 指令庫啟動后,如何通過同一個通信端口進行 CPU 監控?

 

Modbus 指令庫使用的是 CPU 的自由口通信功能,工作在自由口模式下的通訊口不能使用 Micro/WIN 的 PPI 編程通信監控。如果通信口都已經被占用,可以考慮:

 

  • 加一個通信模塊(如 EM 277、CP 243-1、EM 241 等)擴展出一個編程通信口

  • 中止自由口模式,可以將 CPU 上的模式開關從 RUN 撥到 STOP;或者保持處于 RUN 狀態,用程序停止指令庫的 Modbus 模式(參見指令庫應用)

  • 為何有些 HMI 軟件使用 Modbus RTU 讀取S7-200中的實數會出現錯誤?

     

    有些HMI軟件使用Modbus RTU通信協議時,處理存儲在數據保持寄存器中的實數(浮點數)的方式與西門子的實數保存格式不同。西門子的PLC遵循"高字節低地址、低字節高地址"的規律。

     

    Modbus RTU的保持寄存器總是以"字(雙字節)"為單位,而一個實數需要4個字節(雙字)表示。HMI軟件在處理時可能會把保持寄存器的兩個"字"互換位置,造成不能識別以西門子格式表示的實數。如果HMI軟件一方無法處理這種實數,則可在S7-200 CPU中編程將存入數據緩沖區(保持寄存器區)的實數的高字和低字互換。

    為何有的HMI軟件用Modbus RTU可以讀取作為從站的S7-200的內容,但不能寫入?

     

    可能此軟件使用了Modbus功能15(寫多個離散量)或類似功能(功能 16)。S7-200從站協議遵守"以整字節地址邊界(如Q0.0、Q2.0)開始、以8的整數倍為位個數"的規約。如果HMI軟件未嚴格執行此規律就可能發生寫入錯誤的情況。

     

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

     

    S7-200可以支持上述模式,但是沒有現成的指令庫,需要用戶自己編程。

     

    項目編譯后為何出現很多錯誤?

     

    使用指令庫時,若編譯后出現很多錯誤,一般是因為未庫指令數據存儲區。請參考相關條目。

     

    S7-200 CPU的Port1是否可以支持Modbus RTU協議?

     

    可以。用戶可以自己編程實現。

     

    在S7-200的"Tips and Tricks"幫助文檔中,Tip041是Modbus RTU從站程序,用戶可以參考。

     

    S7-200是否可以組成Modbus RTU通信網絡?如何組網?

     

    S7-200可以組成RS-485基礎上的Modbus RTU網絡。如果通信對象是不同標準的通信口,可能還需要轉換。
    參見:RS-485網絡組成

     

    3STEP 7-Micro/WIN 的標準指令庫

    STEP 7-Micro/WIN V4.0 以上版內部已經帶有新的指令庫,但在未安裝西門子 Instruction Library 軟件包的情況下,不能顯示出來使用。

     

    要使用西門子的標準指令庫,必須先安裝西門子的指令庫軟件包 Instruction Library。安裝了 Instruction Library 之后,只要安裝的 STEP 7-Micro/WIN 版本是的,就能獲得相應版本的新指令庫。安裝 Micro/WIN 的升級包(Service Pack)也會更新指令庫的版本。

     

    用戶可以直接從下面獲得西門子 Instruction Library 軟件安裝包:

    Instruction Library

    的 STEP 7-Micro/WIN V4.0 SP5 版本支持以下幾種西門子標準指令庫:

  • USS通信協議庫:
    可使CPU通信口 Port0 和 Port 1 支持與Micro-Master 3(MM3系列)和Micro-Master 4(MM4系列,如MM420、MM430、MM440等)、SINAMICS G110系列的USS通信控制,通過一些預先編好的子程序和中斷程序,以方便地控制變頻器的運行和讀寫其參數。
    Micro/WIN V4.0的USS指令庫現在已經針對西門子的Master Drive做了優化。

  • Modbus RTU Slave(從站)通信協議庫:
    可使CPU通信口 Port0 支持Modbus RTU從站通信功能。

  • Modbus RTU Master (主站)通信協議庫: 
    可使 CPU 通信口 Port 0 和 Port 1 支持 Modbus RTU 主站通信功能。

  • 以上通信協議庫都是使用了S7-200 CPU的自由口通信功能。

     

     

    圖1. 西門子標準庫以淺藍色圖標表示(Micro/WIN V4.0 SP5)

    從以下兩種途徑可以獲得STEP 7-Micro/WIN指令庫:

     

  • 安裝STEP 7-Micro/WIN32 附加軟件包Instruction Library V1.1,訂貨號6ES7830-2BC00-0YX0。

  • 已安裝STEP 7-Micro/WIN32 V3.1和Toolbox V1.0(包括為TP070配置的TP Designer和老的指令庫,訂貨號6ES7810-2TC00-0YX0),再安裝正式的STEP 7-Micro/WIN32 V3.2(或V4.0)版,也可自動獲得新的指令庫。新舊版本的軟件及其指令庫可以在一臺計算機上共存(V4.0 的各升級包不能共存)。

  •  

    注意:

  • 所有舊的CPU21x不能使用新的指令庫

  • 舊版本的指令庫不能與新的指令庫在同一個項目文件中共存

  • 安裝了新版本的指令庫后,舊版本的指令庫不再能夠看到

  • 用戶自定義的指令庫不能與西門子的庫重名

  • 有時因為系統和軟件安裝有問題,可能在安裝完西門子標準指令庫后仍然不能看到西門子標準庫。這時可以嘗試添加標準庫。標準庫的文件存在Micro/WIN安裝目錄下的Standard Libs目錄下。

    3.1 分配庫指令數據區

    調用STEP 7 - Mciro/WIN32 V3.2 Instruction Library(指令庫)需要分配庫指令數據區(Library Memory)。庫指令數據區是相應庫的子程序和中斷程序所要用到的變量存儲空間。

     

    如果在編程時不分配庫指令數據區,編譯時會產生許多相同的錯誤(錯誤18)。

     

    操作步驟(以Modbus RTU庫指令為例):

     

    在指令樹的Project(項目)中,以鼠標右鍵單擊Program Block(程序塊),在彈出的快捷菜單中選擇Library Memory。如圖2所示:

    圖2

    在彈出的選項卡中設置庫指令數據區,如圖2所示:

    圖3.缺省情況下是從VB0開始,但因為與Modbus的保持寄存區沖突,所以手動改為VB2000。按"Suggest Address"按鈕也可以自動分配。

    可以使用Suggest Address(*地址)設置數據區,但要注意編程軟件設置的數據區地址,只考慮到了其他一般尋址,而未考慮到諸如Modbus數據保持寄存器區等的設置。應當確保不與其他任何已使用的數據區重疊、沖突。不應重復按Suggest Address按鈕,否則也會造成混亂。

    在STEP 7-Micro/WIN32 V3.1中,有分配庫指令數據區時有不同的操作方法,需要在Symbol Table(符號表)中設置一個首地址。我們強烈建議使用當時的編程版本。

    西門子PLC模塊控制器山東代理商

    聯系方式

    • 電  話:18717946324
    • 聯系人:占雪芬
    • 手  機:18717946324
    • 微  信:18717946324