0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

S7-400集成PN口如何进行Modbus TCP通讯呢?

机器人及PLC自动化应用 来源:机器人及PLC自动化应用 2023-04-03 09:49 次阅读

配置S7-400单站系统通过CPU集成PN口作为Client进行Modbus TCP通讯

下面以S7-400单站系统及ModSim32软件为例,详细介绍如何将S7-400单站系统CPU的集成PN口配置为Client,ModSim32为Server进行Modbus TCP通讯,由于客户端和服务器模式均使用相同的功能块.

4.2 S7-400单站系统与ModSim32软件组态

打开Step7软件,新建一个工程项目文件,命名为“M_TCP_CPU_V26(Client)”, 在项目下插入一个S7-400站,如下图所示:

35f0df94-d14f-11ed-bfe3-dac502259ad0.png

双击插入的SIMATIC 400 Station的“Hardware”,打开硬件组态,在硬件组态界面下分别插入机架,电源PS407、CPU414-3PN/DP,本例中将CPU的PN口IP 地址设为192.168.70.2

3666ec7a-d14f-11ed-bfe3-dac502259ad0.png

由于需要在SIMATIC站与其他通讯伙伴之间建立TCP连接用于Modbus通讯,而对于CPU的集成PN口来说须通过Open IE(开放式以太网通讯)的方式来建立TCP连接,通过S7-CPU的 PROFINET接口进行 Modbus TCP 通信时,需要使用通信块 FB65 "TCON"、FB66 "TDISCON"、FB63 "TSEND"和 FB64 "TRCV",要进行 Modbus TCP 通信,必须在数据块中为每个连接指定相应的参数,相应得参数在程序中主要由 .

DB2“MODBUS_PARAM”来完成初始化.

369c476c-d14f-11ed-bfe3-dac502259ad0.png

连接类型要设置为Client主动

36c46904-d14f-11ed-bfe3-dac502259ad0.png

硬件组态完成后,编译保存,并将例程站点“SIMATIC 400(Client)”中的程序(Systemdata不需要拷贝)拷贝到该项目中。

打开DB2“MODBUS_PARAM”并切换到数据视图,修改需要访问的Modbus TCP server的IP 地址和端口号,本例中作为服务器的电脑IP 为192.168.70.245,端口号为502.

rem_staddr: 通信伙伴的IP地址,与参数connection_type有关,以192.168.0.1为例:

2)connection_type= B#16#11时

rem_staddr[1]= B#16#C0(192)

rem_staddr[2]= B#16#A8(168)

rem_staddr[3]= B#16#00(0)

rem_staddr[4]= B#16#01(1)

rem_staddr[5-6]=B#16#00(为IPV6预留)

rem_tsap_id远程连接TSAP号,与参数connection_type有关

1)connection_type= B#16#01时

local_tsap_id[1] 本地连接端口号的低字节[16进制]

local_tsap_id[2] 本地连接端口号的高字节[16进制]

local_tsap_id[3-16] B#16#00

2)connection_type=B#16#11时

local_tsap_id[1] 本地连接端口号的高字节[16进制]

local_tsap_id[2] 本地连接端口号的低字节[16进制]

local_tsap_id[3-16] B#16#00

36e22e44-d14f-11ed-bfe3-dac502259ad0.png

通讯测试

由于“ModbusTCP PN-CPU V2.6”选项包支持功能码FC1,2,3,4,5,6,15,16,不同的功能码测试过程中类似,因此下面同样以FC03(读写保持寄存器)为例来说明通讯测试的整个过程,对于其他功能码的测试将不再重复述。

需要说明的是由于客户端功能块需要定义具体的功能码,而主功能块FB102“MODBUSPN”并没有直接的管脚来定义功能码,而是由DB2“MODBUS_PARAM”中的两个参数“DATA_TYPE”和 “single-write”共同决定.

37012aec-d14f-11ed-bfe3-dac502259ad0.png

由于客户端和服务器均使用相同的功能块FB102“MODBUSPN”的参数需要初始化,因

此分别在OB100及OB1中调用FB102,在OB100中调用FB102完成相关参数的初始化。

打开ModSim32软件,在“Connection--->connect”中打开连接属性对话框,连接接口选择“Modbus/TCP svr”,TCP/IP Server Port为本地服务器的端口502.

371b828e-d14f-11ed-bfe3-dac502259ad0.png

下载硬件组态及程序到CPU中,将DB2“MODBUS_PARAM”的参数“server_client”使能为0,给参数ENQ_ENR发送脉冲信号;在打开的ModSim32软件窗口设置寄存器连接类型、起始地址、长度等.

374075f8-d14f-11ed-bfe3-dac502259ad0.png

在Step7的项目程序中新建一个变量监控表,插入需要监控的参数和数据区变量,可以看到ModSim32软件与CPU414-3PN/DP的数据通讯已经建立起来了,双方可以进行正常的保持寄存器数据读写操作(读写权限由参数"WRITE_ READ"决定)

3766bdda-d14f-11ed-bfe3-dac502259ad0.png







审核编辑:刘清

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • ModBus协议
    +关注

    关注

    3

    文章

    148

    浏览量

    33196
  • 脉冲信号
    +关注

    关注

    6

    文章

    333

    浏览量

    36434
  • S7-400
    +关注

    关注

    1

    文章

    63

    浏览量

    14547
  • TCP通信
    +关注

    关注

    0

    文章

    144

    浏览量

    4138

原文标题:西门子CPU集成PN口作为Client进行Modbus TCP

文章出处:【微信号:gh_a8b121171b08,微信公众号:机器人及PLC自动化应用】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    Labview与SIMATIC S7-315-2 PN/DP PLC TCP/IP通讯

    求助:在项目里用到S7-315-2 PN/DP ,需要用Labview做与315的TCP/IP通讯,请教方法;我手上有个libnodave.dll不知道怎么用,会的话请指教。
    发表于 11-07 14:41

    LabVIEW Modbus TCP通讯

    labview与施耐德PLCM258进行通讯通讯协议为Modbus TCP,我在网上下载了一个MODB
    发表于 11-21 15:25

    【求助】S7-1200能用485modbus通讯吗?

    没有RS485S7-1200怎么才能做无线modbus通讯?有例程或者教程参考吗?
    发表于 11-01 17:36

    江门回收西门子s7-400系列通讯模块

    `***同步微信。江门回收西门子s7-400系列通讯模块,大量收购全新二手s7-400系列CPU模块以及通信模块S7 -400
    发表于 04-28 15:42

    modbus tcp通讯

    各位大神,最近在学习利用MODBUS TCP进行LABVIEW与M700驱动器通讯,有没有相关例子
    发表于 11-01 15:37

    请问S7-1200能用485modbus通讯吗?

    S7-1200能用485modbus通讯吗?
    发表于 10-18 07:11

    Modbus/TCP通讯配置

    MODBUSTCP 是简单的、中立厂商的用于管理和控制自动化设备的MODBUS 系列通讯协议的派生产品,它覆盖了使用TCP/IP 协议的Intranet和Internet环境中MODBUS
    发表于 09-30 09:13 37次下载
    <b class='flag-5'>Modbus</b>/<b class='flag-5'>TCP</b><b class='flag-5'>通讯</b>配置

    西门子s7-300和s7-400集成PN口的s7通信

    本文对S7-300和s7-400集成PN口的s7通信作了基本介绍,对其配置步骤以及编程方法作了完整的描述。
    发表于 10-11 16:35 14次下载
    西门子s7-300和<b class='flag-5'>s7-400</b><b class='flag-5'>集成</b><b class='flag-5'>PN</b>口的s7通信

    基于S7-300400 CPU集成PN接口的Modbus TCP在TIA Portal的使用入门教程

    基于S7-300400 CPU集成PN接口的Modbus TCP在TIA Portal的使用入门. Modbus
    的头像 发表于 12-03 16:42 3819次阅读

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

    Modbus数据在TCP/IP以太网上传输,支持Ethernet II和802.3两种帧格式,Modbus TCP数据帧包含报文头、功能代码和数据3部分,MBAP报文头(
    的头像 发表于 03-09 17:55 4694次阅读

    如何将S7-400单站系统通过CPU集成PN口配置

    配置S7-400单站系统通过CPU集成PN口作为Server进行Modbus TCP
    的头像 发表于 07-11 11:27 1483次阅读

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

    下面以S7-300单站系统及Modbus Slave软件为例,详细介绍如何将S7-300单站系统CPU的集成PN口配置为Client,Modbus Slave作为Server
    的头像 发表于 03-08 11:24 5483次阅读

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

    该功能块库可以用于S7-300/400单站系统或ET200S带CPU的接口模块通过CPU的集成PN进行ModbusTCP通讯
    的头像 发表于 05-29 14:23 3733次阅读
    S7-300/<b class='flag-5'>400</b><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/400的CPx43-1 MODBUS TCP通讯案例

    该功能块库可以用于S7-300单站通过CP343-1或S7-400单站通过CP443-1进行ModbusTCP通讯
    的头像 发表于 05-31 11:12 2795次阅读
    S7-300/<b class='flag-5'>400</b>的CPx43-1 <b class='flag-5'>MODBUS</b> <b class='flag-5'>TCP</b><b class='flag-5'>通讯</b>案例

    浅谈S7-300 CPU集成PN口配置的Modbus TCP通讯技术

    以S7-300单站系统及Modbus Slave软件为例,详细介绍如何将S7-300单站系统CPU的集成PN口配置为Client,Modbus Slave作为Server
    发表于 10-17 15:36 1041次阅读
    浅谈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>技术