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

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

3天内不再提示

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

机器人及PLC自动化应用 来源:机器人及PLC自动化应用 作者:机器人及PLC自动化 2021-01-18 09:55 次阅读

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

下面以S7-400单站系统及Modscan32软件为例,详细介绍如何将S7-400单站系统通过CPU集成PN口配置为Server,Modscan32为Client进行Modbus TCP通讯,下图11为服务器功能块库的程序结构及各功能块完成的功能:

fd7ce400-5711-11eb-8b86-12bb97331649.png

S7-400系统及Modscan32软件组态

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

fde72446-5711-11eb-8b86-12bb97331649.png

图12:新建S7-400 Station

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

fe476770-5711-11eb-8b86-12bb97331649.png

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

由于需要在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“来完成初始化,其中各参数的含义如下图14、15所示:

fe7484f8-5711-11eb-8b86-12bb97331649.png

feb000d2-5711-11eb-8b86-12bb97331649.png

3.3 通讯测试

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

fed90f90-5711-11eb-8b86-12bb97331649.png

由于服务器主功能块FB102“MODBUSPN”的参数需要初始化,因此分别在OB100及OB1中调用FB102,在OB100中调用FB102完成相关参数的初始化,FB102的管脚分布如下图16所示:

ff12bb82-5711-11eb-8b86-12bb97331649.png

打开Modscan32软件,在“Connection--->connect”中打开连接属性对话框,连接接口选择“Remote TCP/IP Server”,IP Address分别填入CPU的IP 地址192.168.70.2,Service为远程服务器的端口502,在协议的选择对话框中可以定义传输模式、通讯超时响应时间,报文发送间隔及允许写多个保持寄存器等,这里分别保持缺省设置即可,如下图17所示:

027806a6-5712-11eb-8b86-12bb97331649.png

下载硬件组态及程序到CPU中,将DB2“MODBUS_PARAM”的参数“server_client”使能为1,在 Modscan32 的“Set up->Data Definition”中设置数据扫᧿周期、寄存器连接类型、起始地址、长度等,如下图18所示:

05c7feb0-5712-11eb-8b86-12bb97331649.png

由于Modbus的内部地址编排时基于数据链路层和应用层有一定的映射关系,因此Modbus的地址与SIMATIC中的DB块的地址时按照一定的地址映射关系来相对应,这样造成了DB块中有一定的地址偏移量,在本例中假设数据区的定义如下图19所示,其DB偏移量、Modbus物理编址、应用层编址如下图20所示:

08fa3f4e-5712-11eb-8b86-12bb97331649.png

0c1ebc68-5712-11eb-8b86-12bb97331649.png

在Step7的项目程序中新建一个变量监控表,插入需要监控的参数和数据区变量,可以看到Modscan32软件与CPU414-3PN/DP的数据通讯已经建立起来了,双方可以进行正常的保持寄存器数据读写操作,如下图21所示:

0fcf1632-5712-11eb-8b86-12bb97331649.png

责任编辑:lq

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

    关注

    68

    文章

    10416

    浏览量

    206475
  • TCP
    TCP
    +关注

    关注

    8

    文章

    1265

    浏览量

    78259
  • S7-400
    +关注

    关注

    1

    文章

    63

    浏览量

    14544

原文标题:Modbus TCP 作为Server(主)实例

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

收藏 人收藏

    评论

    相关推荐

    CPU如何将数据传到GTM模块的?

    ATOM不通过ARU也可以直接写寄存器,从而配置占空比和周期。我的问题是中间发生了什么,CPU如何将数据传到GTM模块的?
    发表于 01-22 08:09

    IDA server集成以及App控制启动、停止和配置端口介绍

    ida server集成到手机系统
    的头像 发表于 11-15 09:13 352次阅读
    IDA <b class='flag-5'>server</b><b class='flag-5'>集成</b>以及App控制启动、停止和<b class='flag-5'>配置</b>端口介绍

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

    以S7-300单站系统及Modbus Slave软件为例,详细介绍如何将S7-300单站系统CPU集成
    发表于 10-17 15:36 981次阅读
    浅谈S7-300 <b class='flag-5'>CPU</b><b class='flag-5'>集成</b><b class='flag-5'>PN</b>口<b class='flag-5'>配置</b>的Modbus TCP通讯技术

    西门子单站S7-400 CPU如何与S7-300建立以太网通讯

    S7-400 CPU的AS所在的单项目中点击工具栏上的按钮图片,打开网络组态NetPro。在CPU上右键菜单中选择“Insert New Connection”创建新的连接。
    的头像 发表于 08-03 16:37 721次阅读

    天拓分享:西门子plc S7-300/400系列的PLC通讯

    。具体配置方式分2大步来实现。 1. 硬件配置 1)如图配置好西门子plc S7-400主站,设置好CP443-1(如果是S7-400之间通
    的头像 发表于 08-03 16:35 2263次阅读
    天拓分享:西门子plc S7-300/<b class='flag-5'>400</b>系列的PLC通讯

    请问NUC029如何将烧录配置成普通IO使用?

    请问NUC029如何将烧录配置成普通IO使用, GPIO_SetMode(P4, BIT6, GPIO_PMD_OUTPUT); GPIO_SetMode(P4, BIT
    发表于 06-19 10:33

    请问NUC029如何将烧录配置成普通IO使用?

    请问NUC029如何将烧录配置成普通IO使用, GPIO_SetMode(P4, BIT6, GPIO_PMD_OUTPUT); GPIO_SetMode(P4, BIT
    发表于 06-15 08:17

    CPU 1514SP T-2PNCPU 1514TP TF-2PN对比

    CPU 1514SP T-2 PNCPU 1514TP TF-2 PN,它们不仅具有扩展的运动控制功能,而且,以SIMATIC S7-1500控制器的创新固件版本V3.0为基础。
    发表于 06-07 15:48 406次阅读
    <b class='flag-5'>CPU</b> 1514SP T-2<b class='flag-5'>PN</b>和<b class='flag-5'>CPU</b> 1514TP TF-2<b class='flag-5'>PN</b>对比

    如何将配置文件放入S32DS进行构建、调试……项目?

    如何将配置文件放入 S32DS 进行构建、调试……项目 所得税的概念涉及个人、公司、合伙企业和其他实体获得帮助而赚取的
    发表于 06-05 07:04

    如何将LS1028上的开关配置普通开关?

    如何将LS1028上的开关配置普通开关,即自学习型?我现在已经设置了 eno2 的 IP 地址并将网线插入 swp0。无法ping通eno2的IP。 这个配置在运行时真的有效,还是必
    发表于 05-31 08:27

    S7-300/400集成PN口MODBUS TCP通讯(STEP7)

    该功能块库可以用于S7-300/400单站系统或ET200S带CPU的接口模块通过CPU集成
    的头像 发表于 05-29 14:23 3647次阅读
    S7-300/<b class='flag-5'>400</b><b class='flag-5'>集成</b><b class='flag-5'>PN</b>口MODBUS TCP通讯(STEP7)

    应用案例丨伺服驱动器连接Ethercat转profinet网关

    本案例西门子1200PLC通过EtherCAT转Profinet网关连接派克compax3伺服驱动器,在正常工作时要支持EtherCAT协议,作为EtherCAT从,监控系统西门子
    发表于 05-18 09:31

    如何将LS1046a PCIE主机配置gen1?

    如何将LS1046a PCIE主机配置gen1
    发表于 05-18 08:44

    如何将S32k144 CRC模块的C实现驱动程序API集成到simulink模型中?

    大家好, 如何将 S32k144 CRC 模块的 C 实现驱动程序 API 集成到 simulink 模型中?
    发表于 04-28 06:51

    如何将Pin PTD4配置VLPS模式的低电平唤醒源?

    我想知道如何将 Pin PTD4 配置 VLPS 模式的低电平唤醒源。我在 EB tresos 的 icu 模块中找不到任何选择低级源的选项。请告诉我应该怎么做。
    发表于 04-23 12:13