PN-RT中的一些基础概念

news/2024/11/19 13:52:20/文章来源:https://www.cnblogs.com/xiacuncun/p/18554656

以太网帧和时间直接的关系

  • 我们通常的描述的1Gbps/100Mbps/1000Mbps是什么意思:bps就是bit per second的意思,表示每秒支持多少个bit的传输速率。1Gbps就是某一个网卡最大支持用1G bit每秒的速率发送/接收bit流。

    • 1Gbps = 1 x 10^9 bit per second
    • 1Mbps = 1 x 10^6 bit per second
    • 10Mbps = 1 x 10^7 bit per second
    • 100Mbps = 1 x 10^8 bit per second
  • 以太网帧(Frame)之间的发送时间和发送间隔

    • 以太网帧在传输的过程中它是否知道它什么时候传的是当前帧,什么时候传的是下一帧呢?它不知道!
    • 因为计算机分辨不出来帧与帧之间的差别,所以人们引入和定义了一个新的概念:帧间距(IFG,Interframe Frame Gap),规定两次数据之间传输的时间必须大于IFG,它才能被定义为不同帧。
    • 以太网规定IFG最小值是理论上传输12个bytes所用的时间,为什么不直接规定时间长度?因为在不同的网络带宽中,传输12个bytes所用的时间肯定是不一样的。
      • 当我们在100Mbps下:1 s = 1 x 10^9 uS -> 传一个bit 需要 [1/(1 x 10^7)] * (1 x 10^9) = 100 纳秒;传一个字节就是8 * 100 = 800 纳秒;那么最小的IFG就是(12*800)个纳秒。
      • 当我们能计算当前网络带宽中一个bit传输所用的时间,其实我们不止能算出IFG的时间,还能算传输一帧所用的时间。
      • 按照100Mbps是每秒最多传送1x10^8 bit的数量来反推,1毫秒大概基本可以传输的最小帧。

交换机的泛洪和丢弃行为

  • 交换机的有学习的过程(记录MAC表),然后才能决定转发。
  • 以太网帧(802.1Q)中的VLAN字段,定义了该帧在交换机中被转发的优先级。
  • 当一个目标MAC地址在交换机的端口中都找不到,它就会去每一个(除了当前接收的端口)端口问一遍,如果一直发找不到端口的目标MAC,交换机的负载就会被极大的挤占,这种就是泛洪。
  • 泛洪的形成是通过以太网帧实现的,以太网帧本身是单播帧,这种行为属于单播帧的广播行为,而不是广播帧,它们有很大的区别。
  • 交换机的丢弃行为:
    • 接收到的以太网帧CRC校验不通过的会直接被交换机丢弃。
    • 交换机内部的缓存buffer决定了一些来不及进入buffer的数据会被丢弃,进入buffer的数据按照先进先出。而交换机为了保证实时性,缓存一般不会太大。

设备名,LLDP及拓扑视图

  • 设备名,IP和MAC地址的关系
    • 设备名是PN中应用层中的地址
    • IP是网络层中的地址
    • MAC是数据链路层中的地址
  • 参数之间的关系:
    • 当PN的控制器已经在建立连接的时候被分配了参数配置之后,PN控制器就会使用下载进去的设备名去寻找在线的设备名,如果找到了就会继续查看下载进去的设备对应的IP在在线是否存在(此功能通过ARP地址解析来完成),若ARP有响应,则表示离线和在线的IP一致,也就实现了IP地址和MAC地址的映射关系。
    • 若是ARP没有响应,说明离线配置的IP和在线的IP不一致,此时,会通过DCP协议把在线的IP更正为离线组态的IP地址,然后再次通过ARP解析IP地址和MAC地址的关系,PN的通信即可正常建立。
    • 总结:建立PN连接的关键参数是设备名一致,只要设备名一致,,后续的IP和MAC都可以让其实现离线和在线一致。修改在线IP为离线配置的IP之后(DCP),可以利用IP获取MAC地址
  • 通常,我们在更换新的同型号设备之后,往往还需要为其手动分配离线配置好的设备名。但是在拓扑视图中,却不需要这么做:
    • 在拓扑视图中,端口相邻设备的离线设备名已经被控制器记住。所以更换同型号的设备不用在重新手动分配设备名,这使用了LLDP协议,LLDP协议可以发现一个端口相邻的设备的设备名。
    • 在拓扑视图中,因为端口连接的设备已经被提前告知了,所以被组态了拓扑的端口不能再随意插入其他设备。

PN网络中的RT是如何实现的

  • 更新时间
    • IOD模块具有更新时间,可以为同一PN系统上的不同IOD设置不同的更新时间。
    • IOD的更新时间一定是PLC Clock的倍数。
    • Update time其实就是IOD每次给控制器发数据的时间。

  • 时钟
    • 最小时钟由PLC的性能决定,PLC的性能越好,能做到的最小时钟越小。
    • IOD模块上的更新时间 = 因数 * PLC时钟

  • 因素
    • 在博图上不太能看得到因数,但是在step7上可以看到因数和更新时间以及时钟之间的关系。它们始终是倍数关系。

  • 看门狗
    • 看门狗时间是由可接受的丢失帧数决定的,比如此处可以接受丢弃3帧,每帧的更新时间是2ms,那么看门狗时间就是6ms。

  • 循环数据PN-PN
    • 我们通常把IO数据叫做周期性数据,这么叫的原因其实就是因为PN-IO本身就是按照更新时间循环不断的刷新的
    • IOD给IOC发消息是按照更新时间来的,那么IOC给IOD发消息呢?答案是也是按照刷新时间来的,只是不同的IOD和IOC之间的设置参数决定了它们的更新时间可能是不一样的
    • 如果IOC下面有几十个IOD设备,那么IOD给IOC发的时候都是连续发的,这个好理解。那么IOC给各个IOD回数据呢?IOC会把更新在同一更新周期的IOD先发,再发后面的,设计上一定是保证了IOC到某一个IOD之间两次发送间隔是基本等于设定的更新时间的。
    • RT的意思就是说IOC和IOD之间约定更新时间,那么IOC给IOD发消息的时间一定是在更新时间内的,多出来的一点点时间来自于帧在交换机内部排队的时间。
    • 可以做一个实验,IOC连50个IOD,其中30个设置为1ms刷新,20个设置为2ms刷新。那么我们会看到的IOC发数据先把1ms的30个IOD数据发送了(在1ms内,而不是刚好卡在1ms那一刻,也许在500us的时候就发完了,和负载设置有关)。剩下的20个设备是2ms更新周期,IOC可能会在前1ms发一部分,后1ms发一部分,只要保证2ms内发完(和负载有关)
    • RT和IRT的其中一个不同就是RT约定的更新时间是个范围,只要在范围内完成就行,而IRT约定的是个时刻,必须某一个特定的时刻一起发。

Ctrl + T把时间戳变成REF,就可以观察出来某一个设备的发送周期全是2ms,这和我们的更新周期是一致的。
如图已连续丢掉了3(最小是3,也可以设置为其他)个帧,那么就会出现掉站错误(看门狗导致的)
筛选MAC地址:eth.dst == [mac地址]

  • 网络负载
    • 在PN的网络里,有红色段(IRT),黄色段(RT),绿色段(其他协议)。负载的一个点就是把网络给分类,优先发红色和黄色的,当负载100%的时候,交换机丢弃也不能先丢红色和黄色的帧。
    • 在V802.1Q里,有VLAN,也是通过优先级来判定负载大的时候先丢弃哪一个帧。
    • 在很多IOD和一个IOC连接的时候,组态软件首先就会根据设置的负载计算组态里面的最大负载量(依据组态的IOD的数据量算出来),若超过了,组态时就会报警。
    • 在很多IOD和一个IOC连接的时候,不同的IOD在同一个更新时间内什么时候发送或者接收帧,负载也是判断的一部分。
    • 一个简单的转换,如果设置负载为50%(博图不允许负载设置超过50%),对于1ms更新时间的IOD而言,它大概就是要求所有的1ms刷新的帧一起发的总时间不能超过500us(可以前500us发一点,后500us发一点,来均衡负载,这个靠IOC自己控制),超过了组态时就报错了,组态工具本身就限制了最大负载量。

为什么ethercat比profinet实时性好的一点探讨

  • 在profinet中,除了IRT,其他都还是遵守标准以太网帧的,它是可以兼容以太网的。但是ethercat不兼容以太网。
  • 在pn中,IOD和IOC之间数据收发一帧一帧都是基于V802.1Q的,但是ethercat一次性把所有数据合进了一个报文帧,再由IOD自己拆分和筛选属于自己的一部分,这样一来实时性自然就快了很多。
  • 所以ethercat虽然快,但是它最大的坏处就是不兼容以太网,而且它得一个一个线性连接,就像火车车厢一样,给一个一个的站送车厢里的包。它的网络里面要是有不支持ethercat的设备,它的通信就断了;类似的,IRT也差不多,IRT也要求系统里不能有其他非IRT的设备。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/836791.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

校园防欺凌预警系统 学生打架智能识别系统

校园防欺凌预警系统 学生打架智能识别系统在校园的卫生间、宿舍等容易发生欺凌行为的场所,安装AI语音防欺凌报警系统是十分必要的。校园防欺凌预警系统 学生打架智能识别系统能够实时监听周围的声音,一旦检测到异常求救关键词,系统会立即启动报警程序。系统会立刻将警情传送…

NSSM封装Windows服务工具的使用与介绍

NSSM 是一个服务封装程序,它可以将普通 exe 程序 或 Java程序 或 Nodejs 项目封装成服务,像 windows 服务一样运行。同类型的工具还有微软自己的 srvany,不过 NSSM 更加简单易用,并且功能强大。它的特点如下: 支持普通 exe 程序(控制台程序或者带界面的 Windows 程序都可…

AI 实战篇:Spring-AI再更新!细细讲下Advisors

在2024年10月8日,Spring AI再次进行了更新,尽管当前版本仍为非稳定版本(1.0.0-M3),但博主将持续关注这些动态,并从流行的智能体视角深入解析其技术底层。目前,Spring AI仍处于小众状态,尚未经过开源社区多年的维护和稳定化过程,这与已经较为成熟的Spring框架形成鲜明对…

充电桩车位长时间占用识别系统

充电桩车位长时间占用识别系统利用充电站现场装好的监控摄像头, 充电桩车位长时间占用识别系统24小时对监控区域内的车位进行实时监测。当检测到燃油车占用充电桩车位,并且停车时长超过指定时间时将产生报警,并自动识别车牌号。一旦系统产生报警,它将识别车牌号,并将报警信…

接口控制器层(Controller层)设计(网文)

在实际工作中,我们需要经常跟第三方平台打交道,可能会对接第三方平台Controller接口,或者提供Controller接口给第三方平台调用。 那么问题来了,如果设计一个优雅的Controller接口,能够满足:安全性、可重复调用、稳定性、好定位问题等多方面需求? 今天跟大家一起聊聊设计…

橙啦视频课件课程下载工具,如何在电脑端下载橙啦视频课程课件资料PDF,PPT到本地?

一. 安装橙啦课程下载器 1.获取学无止下载器 https://www.xuewuzhi.cn/orangevip_downloader 2.下载安装后,然后点击桌面快捷方式运行即可。 注意:杀毒软件可能会阻止外部exe文件运行,并将其当做成病毒,直接添加信任即可,本软件绝对没有木马病毒。 二. 使用说明 1.学无止下…

.NET +Vue 开发的高级报表工具

前言 本文介绍一款基于 .NET 6 开发的高级报表工具。该工具支持多种数据源(如数据库、Excel 文件、API 服务等),并具备强大的数据处理和可视化功能。通过内置的集合函数和类 Excel 界面,用户可以轻松设计和生成复杂的报表,满足各类业务需求。 项目介绍 CellReport 是一款专…

Docker安装配置Seata-Server

1 部署 官方文档指引1.1 client 每个业务数据库都要新建 undo_log 表。 对 springboot 应用,执行 client - MySQL - AT,切tag=1.5.2: https://github.com/seata/seata/blob/v1.5.2/script/client/at/db/mysql.sql1.2 server 新建 seata-for-hire 数据库,执行 server - MySQ…

HHDB数据库介绍

背景 随着互联网的崛起,海量数据的存储、计算、分析需求越来越普遍。在各种计算机应用场景中,传统集中式数据库面临着理论升级和技术升级两大难题。21世纪以来,随着以 Hadoop及其衍生技术为代表的大规模数据处理技术的崛起,数据库技术开始由集中式走向分布式计算与存储的模…

【日记】每次修机器都有些头疼(721 字)

正文这一连几天都下雨,冷死了。基本上玩了一天。没怎么干活儿。下午打算写完至少一篇文章,结果难产了。晚上接到了搬去 5 楼的命令,这次没得商量。头疼。时间在明天晚上。晚上终于还是忍不住稍微动了一下,结果感觉膝盖的伤要复发了……又回到了书荒的状态。得找新书看了。M…

Flink 实战之 Real-Time DateHistogram

DateHistogram 用于根据日期或时间数据进行分桶聚合统计。它允许你将时间序列数据按照指定的时间间隔进行分组,从而生成统计信息,例如每小时、每天、每周或每月的数据分布情况。Elasticsearch 就支持 DateHistogram 聚合,在关系型数据库中,可以使用 GROUP BY 配合日期函数…

软路由 + NAS 实现日常生活办公

组网拓扑设备监控指标设备主要用途或部署服务 1. OpenWrtWireGuard VPN 组网从而实现内网穿透便于访问家庭局域网络; 懂得都懂; 运行一些 docker 小玩意。2. QNAP NASQuObjects 对象存储服务器:Typora 图床功能、Joplin 笔记远程同步; Plex Media Server:搭建个人的影音库…