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

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

3天内不再提示

PROFINET接口实现开放的ISOonTCp通信

机器人及PLC自动化应用 来源:机器人及PLC自动化应用 作者:机器人及PLC自动化 2022-06-21 10:42 次阅读

西门子S7PCPU包含一个集成的PROFINET接口,该接口除了具有PROFINETI/O功能外还具有ISOonTCP通讯功能。通过该集成以太网接口组态ISOonTCP通讯时,只能使用开放式通讯专用的功能块。依据RFC1006的ISOonTCP协议,使用STEP7“通讯块”的“标准库”中提供了下列FB,用于通过用户程序与符合以太网标准的通讯伙伴进行数据交换:

1.用于分配连接参数的UDT65“TCON_PAR”

2.用于建立连接的FB65“TCON”

3.用于终止连接的FB66 “TDISCON”

4.用于发送数据的FB63 “TSEND”

5.用于接收数据FB64 “TRCV”

要通过S7-PN CPU的集成PROFINET接口实现开放的ISOonTCp通信,不能再硬件组态中完成,必须在一个数据块中指定每个连接的参数。使用“Open Communication Wizard”工具可以简单明了地指定连接参数,接着该工具可将一个包含所有参数的UDT导出到您的STEP项目。使用该UDT可以建立含有连接描述的数据块。随后,需要使用通信功能块FB65,FB66,FB63,FB64完成程序编写。

UDT65:标准结构

64093354-f0a4-11ec-ba43-dac502259ad0.png

block_length: WORD W#16#40 UDT 65的长度:64字节(固定)

ID: WORD W#16#0001 对连接的引用,您必须在各个带有标识号的块中指定参数的值。

connection_type :BYTE B#16#11 协议类型:B#16#11:TCP

active_est: BOOL FALSE 建立连接的方式的标识号:FALSE:被动建立

local_device_id: BYTE B#16#02

1).B#16#02:通过集成IE接口与CPU 315-2 PN/DP和317-2 PN/DP进行通信.

2). B#16#03:通过集成IE接口与CPU 315T-3 PN/DP、317T-3 PN/DP和319-3 PN/DP进行通信.

local_tsap_id_len: BYTE B#16#02 所使用的参数local_tsap_id的长度.

rem_subnet_id_len: BYTE B#16#00 该参数当前未使用。必须将B#16#00分配给它.

rem_staddr_len: BYTE B#16#00 远程连接终端的地址长度:0: 未指定,即参数rem_staddr不相关.4: 参数rem_staddr中有效的IP地址.

rem_tsap_id_len: BYTE B#16#00 所使用的rem_tsap_id参数的长度;

next_staddr_len: BYTE B#16#00 使用了参数next_staddr的长度

local_tsap_id: BYTE的ARRAY [1..16] 本地端口号 B#16#7 /B#16#D0 ( 2000=7D0)

rem_subnet_id: BYTE的ARRAY [1..6] B#16#00 ... 该参数当前未使用。

rem_staddr: BYTE的ARRAY [1..6] B#16#00 ... 远程连接端点的IP地址,192.168.002.003:

rem_tsap_id: BYTE的ARRAY [1..16] B#16#00 ... 本地端口号可能的数

next_staddr: BYTE的ARRAY [1..6] B#16#00 ... 相应(本地) CP的机架和插槽

spare: WORD W#16#0000 保留:分配0给该参数。

数据连接:FB65

两个通信伙伴都调用FB 65 "TCON"来设置和建立通信连接。在这些参数中,您要指定哪个伙伴是主动通信传输点、哪个伙伴是被动通信传输点。

设置并建立连接后,CPU会自动对连接进行维护和监视。

如果连接中断,如由于线路中断或远程通信伙伴而造成的中断,主动伙伴会尝试重新建立已组态的连接。在这种情况下,不必再次调用FB 65 "TCON"。

当调用FB 66 "TDISCON"或CPU进入STOP模式时,现有连接将被终止并删除已组态的连接。要重新设置并再次建立该连接,必须再次调用FB 65 "TCON"

642215e0-f0a4-11ec-ba43-dac502259ad0.png

REQ 上升沿触发建立通信连接
ID 连接的ID在UDT里设置
CONNECT 与变量类型为UDT65的变量相连
DONE 为1时,连接正确建立
BUSY 为1时,正在建立连接
ERROR 为1时,有故障发生
STATUS 故障代码

64340e44-f0a4-11ec-ba43-dac502259ad0.png

UDT65的整体结构:

64502796-f0a4-11ec-ba43-dac502259ad0.png

发送数据:FB63 "TSEND"通过现有的通信连接发送数据

FB 63 "TSEND"异步工作;换句话说,它的处理需要多个FB调用。要启动发送数据,请使用REQ = 1调用FB 63。

646cdd50-f0a4-11ec-ba43-dac502259ad0.png

LEN:接收数据的长度

DATA:数据发送的区域

648506f0-f0a4-11ec-ba43-dac502259ad0.png

64a2e292-f0a4-11ec-ba43-dac502259ad0.png

接收数据: FB 64 "TRCV"通过现有通信连接接收数据。

它指的是功能块输入所接收数据的区域。

接收区由下列两个变量指定:

1.指向区域起始地址的指针

2.区域长度

区域长度由LEN参数使用的协议类型指定(如果LEN <> 0)或DATA参数长度信息指定(如果LEN = 0)。

64caad40-f0a4-11ec-ba43-dac502259ad0.png

LEN:接收数据的长度

DATA:数据接收的区域

64df2568-f0a4-11ec-ba43-dac502259ad0.png

64f8b69a-f0a4-11ec-ba43-dac502259ad0.png

断开网络连接FB66

FB 66 "TDISCON"是一种以异步方式工作的FB,这意味着它的作业处理要覆盖若干个FB调用。为了开始终止连接作业,用REQ = 1调用FB 66。

在成功调用FB 66 "TDISCON"之后,为FB 65"TCON"指定的ID不再有效,从而不能将其用于发送或接收。

6517f4f6-f0a4-11ec-ba43-dac502259ad0.png

6537470c-f0a4-11ec-ba43-dac502259ad0.png

------------------------END-------------------

审核编辑 :李倩

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

    关注

    4974

    文章

    12244

    浏览量

    454832
  • 接口
    +关注

    关注

    33

    文章

    7629

    浏览量

    148445
  • Profinet
    +关注

    关注

    5

    文章

    788

    浏览量

    22997

原文标题:Siemens PLC TCP连接控制

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

收藏 人收藏

    评论

    相关推荐

    TC1728没有LIN接口,只有UART接口,可以用UART接口实现LIN接口吗?

    TC1728没有LIN接口,只有UART接口。可以用UART接口实现LIN接口吗?
    发表于 02-06 06:51

    PROFINET协议栈通信技术介绍

    PROFINET协议栈是PROFINET通信协议的实现基础,它由多个层次组成,每个层次都有特定的功能和作用。
    的头像 发表于 02-03 16:22 943次阅读

    RS485Modbus转Profinet网关在工业现场的应用优势

    RS485Modbus设备能够接入到Profinet网络中,实现高速、远距离、抗干扰的通信。这大大提高了设备的通讯性能,满足了现代工业自动化的需求。
    发表于 01-24 18:44

    通过Profinet转EtherCAT网关将伺服驱动与Profinet通讯

    EtherCAT网关实现了设备间的完美通信。这一案例彰显了Profinet转EtherCAT网关在自动化领域的地位。 首先,我们需要在博图中进行组态管理。这是一个复杂而细致的过程,通过博图软件,我们可以对各种
    发表于 01-16 16:54

    profinet转modbustcp网关

    的基于TCP/IP的开放通信协议。由于不同厂商在工业自动化设备中使用不同的通信协议,因此如何实现Profinet和Modbus TCP之间
    的头像 发表于 01-11 18:02 335次阅读

    Profinet协议转换为CanOpen协议来连接CanOpen伺服驱动器的应用

    局域网(CAN)网络的通信协议,被广泛应用于汽车和其他嵌入式系统中。对于将Profinet协议转换为CanOpen协议以链接台达B3系列伺服驱动器的应用,以下是一些运用的基本步骤:系列伺服驱动器的通信
    发表于 01-10 10:29

    Modbus转Profinet网关实现Modbus设备与Profinet设备的无缝连接

    具备网口和串口两种通信接口,并能够进行Modbus和Profinet数据的解析和转换。而软件方面,网关需要加载相应的GSD文件,简单配置几项参数便可实现Modbus设备与
    的头像 发表于 12-27 18:17 433次阅读
    Modbus转<b class='flag-5'>Profinet</b>网关<b class='flag-5'>实现</b>Modbus设备与<b class='flag-5'>Profinet</b>设备的无缝连接

    can转profinet网关实现汽车生产的革新

    需求。为了解决这一问题,某汽车生产商决定进行现场自动化升级。升级过程中选择了结合can转profinet网关进行项目的升级改造。这是因为can转profinet网关可以实现CAN总线网络到
    发表于 12-25 10:29

    Profinet到CCLink:工业通信协议的转换实践

    转换,以实现设备之间的通信。本文将介绍从Profinet协议转换到CCLink协议的实践过程。 在某些情况下,我们需要将Profinet协议转换为CCLink协议,或者反之。这可能是由
    发表于 12-15 14:26

    如何使用AT32F407以太网通信接口实现在应用中编程(IAP)

    如何使用AT32F407以太网通信接口实现在应用中编程(IAP)
    的头像 发表于 11-07 17:20 585次阅读
    如何使用AT32F407以太网<b class='flag-5'>通信</b><b class='flag-5'>接口实现</b>在应用中编程(IAP)

    基于XML语言描述的接口实现方法

    电子发烧友网站提供《基于XML语言描述的接口实现方法.pdf》资料免费下载
    发表于 11-06 10:39 0次下载
    基于XML语言描述的<b class='flag-5'>接口实现</b>方法

    如何使用AT32F437以太网通信接口实现在应用中编程(IAP)的解决方案

    本应用笔记专为使用AT32F437微控制器的开发人员编写。它提供了如何使用AT32F437以太网通信接口实现在应用中编程(IAP)的解决方案。有两种基于LwIP TCP/IP协议栈的解决方案: 使用TFTP(简单文件传输协议)的IAP 使用HTTP(超文本传输协议)的
    发表于 10-25 07:41

    如何使用AT32F407以太网通信接口实现在应用中编程(IAP)的解决方案

    AT32F407 IAP using the EMAC提供了如何使用AT32F407以太网通信接口实现在应用中编程(IAP)的解决方案。
    发表于 10-24 07:35

    什么是ProfiNET/IO协议接口

    什么是ProfiNET/IO协议接口ProfiNET/IO协议接口是一种基于以太网技术的实时通信协议,它可以将数据传输速度提高到100M
    的头像 发表于 08-23 10:33 2264次阅读
    什么是<b class='flag-5'>ProfiNET</b>/IO协议<b class='flag-5'>接口</b>?

    Profinet IRT通信接口特性与应用

    Profinet IRT通信接口特性与应用,Profinet是一种工业以太网协议,可以用于实现自动化控制系统中的数据
    的头像 发表于 08-22 14:49 865次阅读
    <b class='flag-5'>Profinet</b> IRT<b class='flag-5'>通信</b><b class='flag-5'>接口</b>特性与应用