0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫(xiě)文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

基于集成PN接口的Modbus TCP通訊概述

機(jī)器人及PLC自動(dòng)化應(yīng)用 ? 來(lái)源:機(jī)器人及PLC自動(dòng)化應(yīng)用 ? 作者:機(jī)器人及PLC自動(dòng)化 ? 2022-03-09 17:55 ? 次閱讀

Modbus TCP通訊概述

MODBUS TCP是簡(jiǎn)單的、中立廠商的用于管理和控制自動(dòng)化設(shè)備的MODBUS系列通訊協(xié)議的派生產(chǎn)品,顯而易見(jiàn),它覆蓋了使用TCP/IP協(xié)議的“Intranet”和“Internet”環(huán)境中MODBUS報(bào)文的用途。協(xié)議的最通用用途是為諸如PLC以及連接其它簡(jiǎn)單域總線或I/O 模塊的網(wǎng)關(guān)服務(wù)的。

MODBUS TCP 使MODBUS_RTU協(xié)議運(yùn)行于以太網(wǎng),MODBUS TCP使用TCP/IP和以太網(wǎng)在站點(diǎn)間傳送MODBUS報(bào)文,MODBUS TCP結(jié)合了以太網(wǎng)物理網(wǎng)絡(luò)和網(wǎng)絡(luò)標(biāo)準(zhǔn)TCP/IP以及以MODBUS作為應(yīng)用協(xié)議標(biāo)準(zhǔn)的數(shù)據(jù)表示方法。MODBUS TCP通信報(bào)文被封裝于以太網(wǎng)TCP/IP數(shù)據(jù)包中。與傳統(tǒng)的串口方式,MODBUS TCP插入一個(gè)標(biāo)準(zhǔn)的MODBUS報(bào)文到TCP報(bào)文中,不再帶有數(shù)據(jù)校驗(yàn)和地址。

通訊所使用的以太網(wǎng)參考模型

Modbus TCP傳輸過(guò)程中使用了TCP/IP以太網(wǎng)參考模型的5層:

第一層:物理層,提供設(shè)備物理接口,與市售介質(zhì)/網(wǎng)絡(luò)適配器相兼容。

第二層:數(shù)據(jù)鏈路層,格式化信號(hào)到源/目硬件址數(shù)據(jù)幀。

第三層:網(wǎng)絡(luò)層,實(shí)現(xiàn)帶有32位IP 地址報(bào)文包。

第四層:傳輸層,實(shí)現(xiàn)可靠性連接、傳輸、查錯(cuò)、重發(fā)、端口服務(wù)、傳輸調(diào)度。

第五層:應(yīng)用層,Modbus協(xié)議報(bào)文。

Modbus TCP數(shù)據(jù)幀

Modbus數(shù)據(jù)在TCP/IP以太網(wǎng)上傳輸,支持Ethernet II和802.3兩種幀格式,Modbus TCP數(shù)據(jù)幀包含報(bào)文頭、功能代碼和數(shù)據(jù)3部分,MBAP報(bào)文頭(Modbus Application Protocol)分4個(gè)域,共7個(gè)字.

fb54dd8e-98e9-11ec-952b-dac502259ad0.png

fb64e6a2-98e9-11ec-952b-dac502259ad0.png

Modbus TCP使用的端口號(hào)

(1) PLC作為Modbus服務(wù)器時(shí),按缺省協(xié)議使用Port 502 通信端口,在Modus客戶(hù)端程序中設(shè)置任意通信端口,

(2) PLC作為Modbus客戶(hù)端時(shí),無(wú)須設(shè)置本機(jī)端口號(hào);如要指定客戶(hù)端端口號(hào),為避免與其他通訊協(xié)議的沖突一般建議2000開(kāi)始可以使用。

S7-300/400集成PN口Modbus TCP通訊概述

本文適用于帶有集成 PN 接口的 SIMATIC S7-300、S7-400 CPU 和 IM 151-8 PN/DP CPU 的軟件產(chǎn)品。相關(guān)指令允許在帶有集成 PN 接口的 SIMATIC CPU 和支持 Modbus TCP 協(xié)議的設(shè)備之間進(jìn)行通信。

根據(jù)客戶(hù)端——服務(wù)器原理進(jìn)行數(shù)據(jù)傳輸。傳輸過(guò)程中,可以將 SIMATIC S7 用作客戶(hù)端,也可以用作服務(wù)器。

TIA Portal V14 SP1開(kāi)始軟件中增加了Modbus TCP V2.0版本的指令,可用于SIMATIC S7-300、S7-400 CPU 和 IM 151-8 PN/DP CPU與支持ModbusTCP的通信伙伴進(jìn)行通信.

fb797aae-98e9-11ec-952b-dac502259ad0.png

配置 PN CPU作為Modbus TCP Server與通信伙

伴建立通訊

下面以S7-300單站系統(tǒng)及Modscan32軟件為例,詳細(xì)介紹如何將S7-300單站系統(tǒng)通過(guò)CPU集成PN口配置為Modbus TCP Server,Modscan32為Client進(jìn)行Modbus TCP通訊。

創(chuàng)建一個(gè)新項(xiàng)目:

fba646f6-98e9-11ec-952b-dac502259ad0.png

然后選擇“添加新設(shè)備”——>“控制器”,選擇正確的CPU型號(hào)

fbdb240c-98e9-11ec-952b-dac502259ad0.png

在“設(shè)備視圖”中,選擇CPU以太網(wǎng)口,設(shè)置IP 地址.

fbf055d4-98e9-11ec-952b-dac502259ad0.png

編程

(1)OB1調(diào)用Modbus TCP指令

在項(xiàng)目的OB1組織塊中調(diào)用Modbus TCP指令

fc097438-98e9-11ec-952b-dac502259ad0.png

部分管腳說(shuō)明:

id:連接ID 必須與參數(shù)DB中相關(guān)的id 參數(shù)相同。

db_param:參數(shù)DB的編號(hào),包含此modbus塊實(shí)例的連接參數(shù)和modbus數(shù)據(jù)參數(shù)。CPU決定該參數(shù)的取值范圍。DB 編號(hào) 0 為系統(tǒng)保留,不允許使用。

以純文本格式輸入DB編號(hào)“DBxy”。

REG_KEY_DB:具有可用于授權(quán)的注冊(cè)表項(xiàng)的數(shù)據(jù)塊。

RECV_TIMEOUT:對(duì)從耦合伙伴接收數(shù)據(jù)進(jìn)行監(jiān)視。超出監(jiān)視時(shí)間后,將發(fā)出錯(cuò)誤信號(hào)并終止連接。最小值為 20 ms。

在“S7 為服務(wù)器”模式下將 RECV_TIMEOUT 設(shè)置為 < 20 ms,則使用默認(rèn)值 1.2 s。RECV_TIMEOUT 監(jiān)視 TCP 流的運(yùn)行系統(tǒng)。不考慮各個(gè)客戶(hù)端請(qǐng)求之間的中斷。

CONN_TIMEOUT:監(jiān)視調(diào)用建立或終止所用的時(shí)間。如果在組態(tài)的監(jiān)視時(shí)間內(nèi)無(wú)法成功建立或終止連接,則會(huì)在輸出 STATUS 中顯示相應(yīng)的錯(cuò)誤消息。最小值為 100 ms。

在“S7 為服務(wù)器”操作模式下,如果將 CONN_TIMEOUT 設(shè)置為 < 100 ms,則會(huì)使用默認(rèn)值 5 s。

創(chuàng)建參數(shù)數(shù)據(jù)塊:

fc44e68a-98e9-11ec-952b-dac502259ad0.png

以下為部分參數(shù)說(shuō)明(其它參數(shù)信息請(qǐng)查看在線幫助):

id:每個(gè)PN CPU與通信伙伴之間的連接都需要一個(gè)連接ID。如果有多個(gè)通信伙伴,則每個(gè)邏輯連接會(huì)使用不同的連接ID。該連接ID 在參數(shù)數(shù)據(jù)塊中包含的“連接參數(shù)塊”中組態(tài)。連接ID 唯一地描述CPU與鏈接伙伴之間的連接,取值范圍為1到4095。必須在此處輸入?yún)?shù)塊中的連接ID;該ID 在整個(gè)CPU中必須唯一。

connection_type:建立連接的連接類(lèi)型通過(guò) TCON 指令定義。CPU 決定必須要設(shè)置的值。

TCP(兼容模式):B#16#01,針對(duì) CPU 315 或 317 <= FW V2.3 。

TCP:B#16#11,針對(duì) CPU 315 或 317 >= FW V2.4、IM 151-8 PN/DP CPU、CPU314C、CPU319、CPU412、CPU414 和 CPU416。該信息可能因固件不同而有所不同。

active_est:該參數(shù)表示連接建立類(lèi)型,主動(dòng)或被動(dòng)。Modbus 客戶(hù)端負(fù)責(zé)建立主動(dòng)連接而 Modbus 服務(wù)器負(fù)責(zé)建立被動(dòng)連接。

主動(dòng)連接的建立:TRUE

被動(dòng)連接的建立:FALSE

local_device_id:定義所用 PN CPU 的 IE 接口。根據(jù)不同的 PN CPU 類(lèi)型,需要不同的設(shè)置。

fc7e8002-98e9-11ec-952b-dac502259ad0.png

rem_ staddr_len:指定 rem_staddr 參數(shù)的長(zhǎng)度,該參數(shù)為通信伙伴的 IP 地址。如果要通過(guò)未指定的連接進(jìn)行通信,則不為伙伴指定 IP 地址。

未指定的連接:B#16#0

指定的連接:B#16#4

rem_tsap_id_len:參數(shù) rem_tsap_id 的長(zhǎng)度和遠(yuǎn)程通信伙伴的端口號(hào)。

主動(dòng)連接的建立:2

被動(dòng)連接建立:0

rem_ staddr:在此字節(jié)數(shù)組中輸入遠(yuǎn)程通信伙伴的 IP 地址。使用未指定的連接時(shí),不輸入 IP 地址。表示類(lèi)型取決于 connection_type 參數(shù)。示例:IP 地址 192.168.0.1:

rem_tsap_id:使用該參數(shù)設(shè)置remote端口號(hào)。表示類(lèi)型會(huì)因 connection_type 參數(shù)不同而有所不同。CPU 決定值范圍。

fc964a8e-98e9-11ec-952b-dac502259ad0.png

server_client:S7 是服務(wù)器=TRUE;S7 是客戶(hù)端=FALSE。

data_areas:S7 存儲(chǔ)器中有八個(gè)可以用于映射 MODBUS 地址的數(shù)據(jù)區(qū)。必須至少定義第一個(gè)數(shù)據(jù)區(qū),其余七個(gè)數(shù)據(jù)區(qū)可選擇性定義。根據(jù)作業(yè)類(lèi)型,將從數(shù)據(jù)區(qū)讀取數(shù)據(jù)或向其中寫(xiě)入數(shù)據(jù)。

任何作業(yè)都只能從一個(gè) DB 讀取數(shù)據(jù)或向一個(gè) DB 寫(xiě)入數(shù)據(jù)。訪問(wèn)寄存器或位于多個(gè) DB 中的位值時(shí),即使編號(hào)連續(xù)無(wú)間隔,也將分為兩個(gè)作業(yè)。組態(tài)時(shí)請(qǐng)務(wù)必注意。

一個(gè)數(shù)據(jù)塊中可以映射的 Modbus 區(qū)(寄存器或位值)數(shù)目比一個(gè)消息幀可以處理的數(shù)目多。

data_type:指定該數(shù)據(jù)塊中映射的 MODBUS 數(shù)據(jù)類(lèi)型。如果在 data_type 中輸入值 16#0,則不使用相應(yīng)的區(qū)域。

db:指定映射 MODBUS 寄存器或下面定義的位值的數(shù)據(jù)塊。DB 編號(hào) 0 為系統(tǒng)保留,不允許使用。

DB 編號(hào):1 到 65535(W#16#0001 到 W#16#FFFF)。start / end:start 指定 DB 的數(shù)據(jù)字 0 中映射的第一個(gè) Modbus 地址。end 參數(shù)定義最后一個(gè) MODBUS 地址。

對(duì)于寄存器訪問(wèn),帶有最后一個(gè) Modbus 地址輸入的 S7 DB 中的數(shù)據(jù)字編號(hào)如下計(jì)算:DBW 編號(hào) = (end – start) * 2 .

對(duì)于位訪問(wèn),帶有最后一個(gè) Modbus 地址輸入的 S7 DB 中的數(shù)據(jù)字節(jié)編號(hào)如下計(jì)算:DBB 編號(hào) = (end – start + 7) / 8

定義的數(shù)據(jù)區(qū)不得重疊。end 參數(shù)不得小于 start。如果發(fā)生錯(cuò)誤,指令啟動(dòng)將中止并提示錯(cuò)誤。如果兩個(gè)值相同,則將分配一個(gè) Modbus 地址(1 個(gè)寄存器或 1 個(gè)位值)。

審核編輯:郭婷

聲明:本文內(nèi)容及配圖由入駐作者撰寫(xiě)或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問(wèn)題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • 以太網(wǎng)
    +關(guān)注

    關(guān)注

    40

    文章

    5423

    瀏覽量

    171682
  • 服務(wù)器
    +關(guān)注

    關(guān)注

    12

    文章

    9149

    瀏覽量

    85402

原文標(biāo)題:基于S7-300400 CPU集成PN接口的Modbus TCP-W

文章出處:【微信號(hào):gh_a8b121171b08,微信公眾號(hào):機(jī)器人及PLC自動(dòng)化應(yīng)用】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。

收藏 人收藏

    評(píng)論

    相關(guān)推薦

    LabVIEW Modbus TCP通訊

    labview與施耐德PLCM258進(jìn)行通訊,通訊協(xié)議為Modbus TCP,我在網(wǎng)上下載了一個(gè)MODBUS庫(kù)nimodbus121,啟動(dòng)l
    發(fā)表于 11-21 15:25

    Modbus/TCP通訊配置

    MODBUSTCP 是簡(jiǎn)單的、中立廠商的用于管理和控制自動(dòng)化設(shè)備的MODBUS 系列通訊協(xié)議的派生產(chǎn)品,它覆蓋了使用TCP/IP 協(xié)議的Intranet和Internet環(huán)境中MODBUS
    發(fā)表于 09-30 09:13 ?38次下載
    <b class='flag-5'>Modbus</b>/<b class='flag-5'>TCP</b><b class='flag-5'>通訊</b>配置

    基于S7-300400 CPU集成PN接口Modbus TCP在TIA Portal的使用入門(mén)教程

    基于S7-300400 CPU集成PN接口Modbus TCP在TIA Portal的使用入門(mén). Mo
    的頭像 發(fā)表于 12-03 16:42 ?4297次閱讀

    Modbus TCP通訊協(xié)議概述

    1? Modbus TCP通訊概述 MODBUS/TCP是簡(jiǎn)單的、中立廠商的用于管理和控制自動(dòng)化
    的頭像 發(fā)表于 01-04 17:51 ?3w次閱讀
    <b class='flag-5'>Modbus</b> <b class='flag-5'>TCP</b><b class='flag-5'>通訊</b>協(xié)議<b class='flag-5'>概述</b>

    如何將S7-400單站系統(tǒng)通過(guò)CPU集成PN口配置

    配置S7-400單站系統(tǒng)通過(guò)CPU集成PN口作為Server進(jìn)行Modbus TCP通訊
    的頭像 發(fā)表于 07-11 11:27 ?1929次閱讀

    MODBUS TCP通信功能的使用概述

    Modbus TCP是標(biāo)準(zhǔn)的網(wǎng)絡(luò)通信協(xié)議,通過(guò)CPU上PN接口進(jìn)行TCP/IP通信,不需要額外的通信硬件模塊,
    的頭像 發(fā)表于 08-03 11:16 ?6606次閱讀

    S7-300/400集成PNMODBUS TCP通訊(TIA)

    下面以S7-300單站系統(tǒng)及Modbus Slave軟件為例,詳細(xì)介紹如何將S7-300單站系統(tǒng)CPU的集成PN口配置為Client,Modbus Slave作為Server進(jìn)行
    的頭像 發(fā)表于 03-08 11:24 ?7307次閱讀

    Modbus TCP通訊概述

    MODBUS/TCP是簡(jiǎn)單的、中立廠商的用于管理和控制自動(dòng)化設(shè)備的MODBUS系列訊協(xié)議的派生產(chǎn)品,顯而易見(jiàn),它覆蓋了使用TCP/IP協(xié)議的“Intranet”和“Internet”環(huán)
    的頭像 發(fā)表于 04-20 09:46 ?2788次閱讀

    S7-300/400集成PNMODBUS TCP通訊(STEP7)

    該功能塊庫(kù)可以用于S7-300/400單站系統(tǒng)或ET200S帶CPU的接口模塊通過(guò)CPU的集成PN口進(jìn)行ModbusTCP通訊。
    的頭像 發(fā)表于 05-29 14:23 ?5638次閱讀
    S7-300/400<b class='flag-5'>集成</b><b class='flag-5'>PN</b>口<b class='flag-5'>MODBUS</b> <b class='flag-5'>TCP</b><b class='flag-5'>通訊</b>(STEP7)

    淺談S7-300 CPU集成PN口配置的Modbus TCP通訊技術(shù)

    以S7-300單站系統(tǒng)及Modbus Slave軟件為例,詳細(xì)介紹如何將S7-300單站系統(tǒng)CPU的集成PN口配置為Client,Modbus Slave作為Server進(jìn)行
    發(fā)表于 10-17 15:36 ?3135次閱讀
    淺談S7-300 CPU<b class='flag-5'>集成</b><b class='flag-5'>PN</b>口配置的<b class='flag-5'>Modbus</b> <b class='flag-5'>TCP</b><b class='flag-5'>通訊</b>技術(shù)

    S7-1200集成PN接口MODBUS TCP通信概述

    軟件 STEP7 V11 SP1版本開(kāi)始,S7-1200CPU 從Firmware V1.0.2開(kāi)始,不再需要安裝Modbus TCP的庫(kù)文件,可以直接調(diào)用Modbus TCP的庫(kù)指令
    的頭像 發(fā)表于 10-29 17:24 ?6642次閱讀
    S7-1200<b class='flag-5'>集成</b><b class='flag-5'>PN</b><b class='flag-5'>接口</b><b class='flag-5'>MODBUS</b> <b class='flag-5'>TCP</b>通信<b class='flag-5'>概述</b>

    Modbus(TCP)轉(zhuǎn)Profinet從總線協(xié)議轉(zhuǎn)換網(wǎng)關(guān)(JM-TCP-PN

    如何實(shí)現(xiàn)Profinet網(wǎng)絡(luò)與Modbus TCP網(wǎng)絡(luò)的連接互通,這是很多朋友都感到困惑的問(wèn)題。接下來(lái),將為大家集中進(jìn)行解答。實(shí)際上,捷米特JM-TCP-PN這一設(shè)備能夠出色地解決這個(gè)難題。下面,為
    的頭像 發(fā)表于 08-16 10:14 ?356次閱讀
    <b class='flag-5'>Modbus</b>(<b class='flag-5'>TCP</b>)轉(zhuǎn)Profinet從總線協(xié)議轉(zhuǎn)換網(wǎng)關(guān)(JM-<b class='flag-5'>TCP-PN</b>)

    Modbus(TCP)轉(zhuǎn)Profinet從站協(xié)議網(wǎng)關(guān)(JM-TCP-PN

    一,產(chǎn)品主要功能 1、 捷米特JM-TCP-PN 該網(wǎng)關(guān)的核心功能是將Profinet協(xié)議轉(zhuǎn)換為Modbus TCP協(xié)議,使得Profinet設(shè)備能夠與Modbus
    的頭像 發(fā)表于 08-20 11:41 ?402次閱讀
    <b class='flag-5'>Modbus</b>(<b class='flag-5'>TCP</b>)轉(zhuǎn)Profinet從站協(xié)議網(wǎng)關(guān)(JM-<b class='flag-5'>TCP-PN</b>)

    Modbus-TCP轉(zhuǎn)Profinet協(xié)議轉(zhuǎn)換網(wǎng)關(guān)(JM-TCP-PN

    一,產(chǎn)品主要功能 1、捷米特JM-TCP-PN該網(wǎng)關(guān)的核心功能是將Profinet協(xié)議轉(zhuǎn)換為Modbus TCP協(xié)議,使得Profinet設(shè)備能夠與Modbus
    的頭像 發(fā)表于 08-28 14:46 ?248次閱讀
    <b class='flag-5'>Modbus-TCP</b>轉(zhuǎn)Profinet協(xié)議轉(zhuǎn)換網(wǎng)關(guān)(JM-<b class='flag-5'>TCP-PN</b>)

    MODBUS TCP 轉(zhuǎn) CANOpen

    產(chǎn)品概述 SG-TCP-COE-210 網(wǎng)關(guān)可以實(shí)現(xiàn)將 CANOpen 接口設(shè)備連接到 MODBUS TCP 網(wǎng)絡(luò)中。用戶(hù)不需要了解具體的
    的頭像 發(fā)表于 09-24 13:59 ?273次閱讀
    <b class='flag-5'>MODBUS</b> <b class='flag-5'>TCP</b> 轉(zhuǎn) CANOpen