Modbus RTU 和 Modbus TCP 通信概
Modbus 功能代碼
● CPU 作為 Modbus RTU 主站(或 Modbus TCP 客戶端)運(yùn)行時(shí),可在遠(yuǎn)程 Modbus RTU 從站(或 Modbus TCP 服務(wù)器)中讀/寫數(shù)據(jù)和 I/O 狀態(tài)。可在程序邏輯中讀取并處理遠(yuǎn)程數(shù)據(jù)。
● CPU 作為 Modbus RTU 從站(或 Modbus TCP 服務(wù)器)運(yùn)行時(shí),監(jiān)控設(shè)備可在 CPU 存儲(chǔ)器中讀/寫數(shù)據(jù)和 I/O 狀態(tài)。RTU 主站(或 Modbus TCP 客戶端)可以將新值寫入從站/服務(wù)器 CPU 存儲(chǔ)器,以供用戶程序邏輯使用。
RTU 站 :標(biāo)準(zhǔn)站地址 1 到 247擴(kuò)展站地址 1 到 65535
TCP 站 :站地址 IP 地址和端口號(hào)
實(shí)際可用的 Modbus 存儲(chǔ)區(qū)地址數(shù)取決于 CPU 型號(hào)、存在多少工作存儲(chǔ)器以及其他程序數(shù)據(jù)占用多少 CPU 存儲(chǔ)區(qū)。下表給出地址范圍的額定值。
Modbus RTU 通信
Modbus RTU(遠(yuǎn)程終端單元)是一個(gè)標(biāo)準(zhǔn)的網(wǎng)絡(luò)通信協(xié)議,它使用 RS232 或 RS485 電氣連接在 Modbus 網(wǎng)絡(luò)設(shè)備之間傳輸串行數(shù)據(jù)??稍趲в幸粋€(gè) RS232 或 RS485 CM 或一個(gè) RS485 CB 的 CPU 上添加 PtP(點(diǎn)對(duì)點(diǎn))網(wǎng)絡(luò)端口。Modbus RTU 使用主/從網(wǎng)絡(luò),單個(gè)主設(shè)備啟動(dòng)所有通信,而從設(shè)備只能響應(yīng)主設(shè)備的請(qǐng)求。主設(shè)備向從一個(gè)從設(shè)備地址發(fā)送請(qǐng)求,然后該從設(shè)備地址對(duì)命令做出響應(yīng)。
Modbus TCP 通信
Modbus TCP(傳輸控制協(xié)議)是一個(gè)標(biāo)準(zhǔn)的網(wǎng)絡(luò)通信協(xié)議,它使用 CPU 上的 PROFINET 連接器進(jìn)行 TCP/IP 通信。不需要額外的通信硬件模塊。
我們主要以Modbus TCP為主介紹:
在指令任務(wù)卡中,在“通信”(Communication) 組中的“其它”(Others) 下顯示 MODBUS TCP 指令。
要更改 Modbus TCP 指令的版本,請(qǐng)從下拉列表中選擇相應(yīng)版本??梢赃x擇一組指令或分別選擇各個(gè)指令。
使用指令樹將 Modbus TCP 指令放入程序時(shí),將在項(xiàng)目樹中創(chuàng)建新的 FB 實(shí)例。在項(xiàng)目樹的“PLC_x > 程序塊 > 系統(tǒng)塊 > 程序資源”(PLC_x > Program blocks > System blocks > Program resources) 下可看到新的 FB 實(shí)例。
要確認(rèn)程序中 Modbus TCP 指令的版本,必須檢查項(xiàng)目樹的屬性而不是程序編輯器中顯示的框的屬性。選擇項(xiàng)目樹的 Modbus TCP FB 實(shí)例,單擊右鍵,選擇“屬性”(Properties),然后選擇“信息”(Information) 頁查看 Modbus TCP 指令的版本號(hào)。
Modbus TCP 指令
MB_CLIENT(作為 Modbus TCP 客戶端使用 PROFINET 進(jìn)行通信)指令
"MB_CLIENT_DB"(
REQ:=_bool_in_,
DISCONNECT:=_bool_in_,
MB_MODE:=_usint_in_,
MB_DATA_ADDR:=_udint_in_,
MB_DATA_LEN:=_uint_in_,
DONE=>_bool_out_,
BUSY=>_bool_out_,
ERROR=>_bool_out_,
STATUS=>_word_out_,
MB_DATA_PTR:=_variant_inout_,
CONNECT:=_variant_inout_);
MB_CLIENT 作為 Modbus TCP 客戶端,通過 S7-1200 CPU 上的 PROFINET 端口進(jìn)行通信。不需要額外的通信硬件模塊。MB_CLIENT 可進(jìn)行客戶端-服務(wù)器連接、發(fā)送 Modbus 功能請(qǐng)求、接收響應(yīng),以及控制 Modbus TCP 服務(wù)器的斷開。
REQ In Bool
FALSE = 無 Modbus 通信請(qǐng)求TRUE = 請(qǐng)求與 Modbus TCP 服務(wù)器通信
DISCONNECT IN Bool
DISCONNECT 參數(shù)允許程序控制與 Modbus 服務(wù)器設(shè)備的連接和斷開。如果 DISCONNECT = 0 且不存在連接,則 MB_CLIENT 嘗試連接到分配的 IP 地址和端口號(hào)。如果 DISCONNECT = 1 且存在連接,則嘗試斷開連接操作。每當(dāng)啟用此輸入時(shí),無法嘗試其它操作。
MB_MODE IN USInt
模式選擇:分配請(qǐng)求類型(讀、寫或診斷)。
MB_DATA_ADDR IN UDInt
Modbus 起始地址:分配 MB_CLIENT 訪問的數(shù)據(jù)的起始地址。有效地址的相關(guān)信息,請(qǐng)參見下面的 Modbus 功能表。
MB_DATA_LEN IN UInt
Modbus 數(shù)據(jù)長度:分配此請(qǐng)求中要訪問的位數(shù)或字?jǐn)?shù)。有效長度的相關(guān)信息,請(qǐng)參見下面的 Modbus 功能表。
MB_DATA_PTR IN_OUT Variant
指向 Modbus 數(shù)據(jù)寄存器的指針:寄存器緩沖進(jìn)出 Modbus 服務(wù)器的數(shù)據(jù)。指針必須分配一個(gè)未進(jìn)行優(yōu)化的全局 DB 或 M 存儲(chǔ)器地址。
CONNECT IN_OUT Variant
引用包含系統(tǒng)數(shù)據(jù)類型為“TCON_IP_v4”的連接參數(shù)的數(shù)據(jù)塊結(jié)構(gòu)。
DONE OUT Bool
上一請(qǐng)求已完成且沒有出錯(cuò)后,DONE 位將保持為 TRUE 一個(gè)掃描周期時(shí)間。
BUSY OUT Bool
● 0 - 無 MB_CLIENT 操作正在進(jìn)行
● 1 - MB_CLIENT 操作正在進(jìn)行
ERROR OUT Bool
MB_CLIENT 執(zhí)行因錯(cuò)誤而結(jié)束后,ERROR 位將在一個(gè)掃描周期時(shí)間內(nèi)保持為 TRUE。STATUS 參數(shù)中的錯(cuò)誤代碼僅在 ERROR = TRUE 的一個(gè)循環(huán)周期內(nèi)有效。
STATUS OUT Word
編輯:jq
-
MODBUS
+關(guān)注
關(guān)注
28文章
2521瀏覽量
83787 -
TCP
+關(guān)注
關(guān)注
8文章
1433瀏覽量
83777 -
RTU
+關(guān)注
關(guān)注
0文章
452瀏覽量
30690
原文標(biāo)題:S 7-1200-Modbus RTU 和 Modbus TCP 通信概
文章出處:【微信號(hào):gh_a8b121171b08,微信公眾號(hào):機(jī)器人及PLC自動(dòng)化應(yīng)用】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。
發(fā)布評(píng)論請(qǐng)先 登錄
在TIA Portal V21中基于S7-1200 G2使用SCL語言設(shè)計(jì)Modbus RTU輪詢程序
使用PLCSIM Advanced V8仿真測(cè)試S7-1200 G2的Modbus TCP通信
Profinet 與 Modbus RTU/485 輕松建立通信
西門子200 SMART與臺(tái)達(dá)DVP PLC通訊:工業(yè)自動(dòng)化Modbus RTU 轉(zhuǎn)Modbus TCP 方案
智能物流立體倉庫通訊困境:基于協(xié)議轉(zhuǎn)換的Modbus TCP 轉(zhuǎn) Modbus RTU解決方案
光伏逆變器上料-測(cè)試協(xié)同依托數(shù)據(jù)采集的Modbus TCP 轉(zhuǎn) Modbus RTU協(xié)議應(yīng)用案例
DLT698轉(zhuǎn)Modbus RTU-TCP網(wǎng)關(guān)
Modbus RTU轉(zhuǎn)Profinet總線協(xié)議網(wǎng)關(guān)
工業(yè)場(chǎng)景下塔訊 Modbus RTU 轉(zhuǎn) Modbus TCP 網(wǎng)關(guān)實(shí)現(xiàn)橫河流量計(jì)與 WinCC 數(shù)據(jù)交互案例
塔訊 Modbus RTU 轉(zhuǎn) Modbus TCP 在污水處理廠 PLC 數(shù)據(jù)采集中的配置案例
請(qǐng)問西門子S7-1200 如何實(shí)現(xiàn)Modbus TCP 通訊?
工業(yè)自動(dòng)化通信難題破解:Modbus RTU轉(zhuǎn)Profinet網(wǎng)關(guān)在渦街流量計(jì)與西門子S7-1200 PLC系統(tǒng)集成中的應(yīng)用
Modbus TCP 轉(zhuǎn) Modbus RTU電腦端 TCP 與西門子 V20 變頻器的通信案例
Modbus RTU轉(zhuǎn)Profinet網(wǎng)關(guān)接渦街液體流量計(jì)到西門子1200 PLC系統(tǒng)
什么是Modbus TCP協(xié)議
簡述S7-1200-Modbus RTU 和 Modbus TCP 通信概
評(píng)論